summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--static/js/build.js4
-rw-r--r--static/js/build.js.map2
-rw-r--r--webpack.config.js3
3 files changed, 5 insertions, 4 deletions
diff --git a/static/js/build.js b/static/js/build.js
index 1a58eec..e6ae630 100644
--- a/static/js/build.js
+++ b/static/js/build.js
@@ -1,7 +1,7 @@
-!function(t){function e(i){if(r[i])return r[i].exports;var n=r[i]={i:i,l:!1,exports:{}};return t[i].call(n.exports,n,n.exports,e),n.l=!0,n.exports}var r={};e.m=t,e.c=r,e.d=function(t,r,i){e.o(t,r)||Object.defineProperty(t,r,{configurable:!1,enumerable:!0,get:i})},e.n=function(t){var r=t&&t.__esModule?function(){return t.default}:function(){return t};return e.d(r,"a",r),r},e.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},e.p="/static/js/",e(e.s=2)}([function(t,e){var r;r=function(){return this}();try{r=r||Function("return this")()||(0,eval)("this")}catch(t){"object"==typeof window&&(r=window)}t.exports=r},function(t,e,r){(function(e){var r,r;!function(e){t.exports=e()}(function(){var t;return function t(e,i,n){function o(s,l){if(!i[s]){if(!e[s]){var u="function"==typeof r&&r;if(!l&&u)return r(s,!0);if(a)return a(s,!0);var c=new Error("Cannot find module '"+s+"'");throw c.code="MODULE_NOT_FOUND",c}var p=i[s]={exports:{}};e[s][0].call(p.exports,function(t){var r=e[s][1][t];return o(r||t)},p,p.exports,t,e,i,n)}return i[s].exports}for(var a="function"==typeof r&&r,s=0;s<n.length;s++)o(n[s]);return o}({1:[function(e,r,i){!function(e,n){"object"==typeof i&&void 0!==r?r.exports=n():"function"==typeof t&&t.amd?t(n):e.glMatrix=n()}(this,function(){"use strict";function t(t,e,r){var i=e[0],n=e[1],o=e[2];return t[0]=i*r[0]+n*r[3]+o*r[6],t[1]=i*r[1]+n*r[4]+o*r[7],t[2]=i*r[2]+n*r[5]+o*r[8],t}function e(t,e,r){var i=e[0],n=e[1],o=e[2],a=e[3];return t[0]=r[0]*i+r[4]*n+r[8]*o+r[12]*a,t[1]=r[1]*i+r[5]*n+r[9]*o+r[13]*a,t[2]=r[2]*i+r[6]*n+r[10]*o+r[14]*a,t[3]=r[3]*i+r[7]*n+r[11]*o+r[15]*a,t}function r(){var t=new Float32Array(4);return t[0]=1,t[1]=0,t[2]=0,t[3]=1,t}function i(t,e,r){var i=e[0],n=e[1],o=e[2],a=e[3],s=Math.sin(r),l=Math.cos(r);return t[0]=i*l+o*s,t[1]=n*l+a*s,t[2]=i*-s+o*l,t[3]=n*-s+a*l,t}function n(t,e,r){var i=e[0],n=e[1],o=e[2],a=e[3],s=r[0],l=r[1];return t[0]=i*s,t[1]=n*s,t[2]=o*l,t[3]=a*l,t}function o(){var t=new Float32Array(9);return t[0]=1,t[1]=0,t[2]=0,t[3]=0,t[4]=1,t[5]=0,t[6]=0,t[7]=0,t[8]=1,t}function a(t,e){var r=Math.sin(e),i=Math.cos(e);return t[0]=i,t[1]=r,t[2]=0,t[3]=-r,t[4]=i,t[5]=0,t[6]=0,t[7]=0,t[8]=1,t}function s(){var t=new Float32Array(16);return t[0]=1,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=1,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[10]=1,t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,t}function l(t){return t[0]=1,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=1,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[10]=1,t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,t}function u(t,e){var r=e[0],i=e[1],n=e[2],o=e[3],a=e[4],s=e[5],l=e[6],u=e[7],c=e[8],p=e[9],h=e[10],f=e[11],d=e[12],m=e[13],v=e[14],y=e[15],g=r*s-i*a,_=r*l-n*a,x=r*u-o*a,b=i*l-n*s,w=i*u-o*s,T=n*u-o*l,S=c*m-p*d,z=c*v-h*d,A=c*y-f*d,C=p*v-h*m,E=p*y-f*m,k=h*y-f*v,M=g*k-_*E+x*C+b*A-w*z+T*S;return M?(M=1/M,t[0]=(s*k-l*E+u*C)*M,t[1]=(n*E-i*k-o*C)*M,t[2]=(m*T-v*w+y*b)*M,t[3]=(h*w-p*T-f*b)*M,t[4]=(l*A-a*k-u*z)*M,t[5]=(r*k-n*A+o*z)*M,t[6]=(v*x-d*T-y*_)*M,t[7]=(c*T-h*x+f*_)*M,t[8]=(a*E-s*A+u*S)*M,t[9]=(i*A-r*E-o*S)*M,t[10]=(d*w-m*x+y*g)*M,t[11]=(p*x-c*w-f*g)*M,t[12]=(s*z-a*C-l*S)*M,t[13]=(r*C-i*z+n*S)*M,t[14]=(m*_-d*b-v*g)*M,t[15]=(c*b-p*_+h*g)*M,t):null}function c(t,e,r){var i=e[0],n=e[1],o=e[2],a=e[3],s=e[4],l=e[5],u=e[6],c=e[7],p=e[8],h=e[9],f=e[10],d=e[11],m=e[12],v=e[13],y=e[14],g=e[15],_=r[0],x=r[1],b=r[2],w=r[3];return t[0]=_*i+x*s+b*p+w*m,t[1]=_*n+x*l+b*h+w*v,t[2]=_*o+x*u+b*f+w*y,t[3]=_*a+x*c+b*d+w*g,_=r[4],x=r[5],b=r[6],w=r[7],t[4]=_*i+x*s+b*p+w*m,t[5]=_*n+x*l+b*h+w*v,t[6]=_*o+x*u+b*f+w*y,t[7]=_*a+x*c+b*d+w*g,_=r[8],x=r[9],b=r[10],w=r[11],t[8]=_*i+x*s+b*p+w*m,t[9]=_*n+x*l+b*h+w*v,t[10]=_*o+x*u+b*f+w*y,t[11]=_*a+x*c+b*d+w*g,_=r[12],x=r[13],b=r[14],w=r[15],t[12]=_*i+x*s+b*p+w*m,t[13]=_*n+x*l+b*h+w*v,t[14]=_*o+x*u+b*f+w*y,t[15]=_*a+x*c+b*d+w*g,t}function p(t,e,r){var i,n,o,a,s,l,u,c,p,h,f,d,m=r[0],v=r[1],y=r[2];return e===t?(t[12]=e[0]*m+e[4]*v+e[8]*y+e[12],t[13]=e[1]*m+e[5]*v+e[9]*y+e[13],t[14]=e[2]*m+e[6]*v+e[10]*y+e[14],t[15]=e[3]*m+e[7]*v+e[11]*y+e[15]):(i=e[0],n=e[1],o=e[2],a=e[3],s=e[4],l=e[5],u=e[6],c=e[7],p=e[8],h=e[9],f=e[10],d=e[11],t[0]=i,t[1]=n,t[2]=o,t[3]=a,t[4]=s,t[5]=l,t[6]=u,t[7]=c,t[8]=p,t[9]=h,t[10]=f,t[11]=d,t[12]=i*m+s*v+p*y+e[12],t[13]=n*m+l*v+h*y+e[13],t[14]=o*m+u*v+f*y+e[14],t[15]=a*m+c*v+d*y+e[15]),t}function h(t,e,r){var i=r[0],n=r[1],o=r[2];return t[0]=e[0]*i,t[1]=e[1]*i,t[2]=e[2]*i,t[3]=e[3]*i,t[4]=e[4]*n,t[5]=e[5]*n,t[6]=e[6]*n,t[7]=e[7]*n,t[8]=e[8]*o,t[9]=e[9]*o,t[10]=e[10]*o,t[11]=e[11]*o,t[12]=e[12],t[13]=e[13],t[14]=e[14],t[15]=e[15],t}function f(t,e,r){var i=Math.sin(r),n=Math.cos(r),o=e[4],a=e[5],s=e[6],l=e[7],u=e[8],c=e[9],p=e[10],h=e[11];return e!==t&&(t[0]=e[0],t[1]=e[1],t[2]=e[2],t[3]=e[3],t[12]=e[12],t[13]=e[13],t[14]=e[14],t[15]=e[15]),t[4]=o*n+u*i,t[5]=a*n+c*i,t[6]=s*n+p*i,t[7]=l*n+h*i,t[8]=u*n-o*i,t[9]=c*n-a*i,t[10]=p*n-s*i,t[11]=h*n-l*i,t}function d(t,e,r){var i=Math.sin(r),n=Math.cos(r),o=e[0],a=e[1],s=e[2],l=e[3],u=e[4],c=e[5],p=e[6],h=e[7];return e!==t&&(t[8]=e[8],t[9]=e[9],t[10]=e[10],t[11]=e[11],t[12]=e[12],t[13]=e[13],t[14]=e[14],t[15]=e[15]),t[0]=o*n+u*i,t[1]=a*n+c*i,t[2]=s*n+p*i,t[3]=l*n+h*i,t[4]=u*n-o*i,t[5]=c*n-a*i,t[6]=p*n-s*i,t[7]=h*n-l*i,t}function m(t,e,r,i,n){var o=1/Math.tan(e/2),a=1/(i-n);return t[0]=o/r,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=o,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[10]=(n+i)*a,t[11]=-1,t[12]=0,t[13]=0,t[14]=2*n*i*a,t[15]=0,t}function v(t,e,r,i,n,o,a){var s=1/(e-r),l=1/(i-n),u=1/(o-a);return t[0]=-2*s,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=-2*l,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[10]=2*u,t[11]=0,t[12]=(e+r)*s,t[13]=(n+i)*l,t[14]=(a+o)*u,t[15]=1,t}return function(){var t=new Float32Array(3);t[0]=0,t[1]=0,t[2]=0}(),function(){var t=new Float32Array(4);t[0]=0,t[1]=0,t[2]=0,t[3]=0}(),{vec3:{transformMat3:t},vec4:{transformMat4:e},mat2:{create:r,rotate:i,scale:n},mat3:{create:o,fromRotation:a},mat4:{create:s,identity:l,translate:p,scale:h,multiply:c,perspective:m,rotateX:f,rotateZ:d,invert:u,ortho:v}}})},{}],2:[function(t,e,r){"use strict";function i(t,e){this.x=t,this.y=e}e.exports=i,i.prototype={clone:function(){return new i(this.x,this.y)},add:function(t){return this.clone()._add(t)},sub:function(t){return this.clone()._sub(t)},multByPoint:function(t){return this.clone()._multByPoint(t)},divByPoint:function(t){return this.clone()._divByPoint(t)},mult:function(t){return this.clone()._mult(t)},div:function(t){return this.clone()._div(t)},rotate:function(t){return this.clone()._rotate(t)},rotateAround:function(t,e){return this.clone()._rotateAround(t,e)},matMult:function(t){return this.clone()._matMult(t)},unit:function(){return this.clone()._unit()},perp:function(){return this.clone()._perp()},round:function(){return this.clone()._round()},mag:function(){return Math.sqrt(this.x*this.x+this.y*this.y)},equals:function(t){return this.x===t.x&&this.y===t.y},dist:function(t){return Math.sqrt(this.distSqr(t))},distSqr:function(t){var e=t.x-this.x,r=t.y-this.y;return e*e+r*r},angle:function(){return Math.atan2(this.y,this.x)},angleTo:function(t){return Math.atan2(this.y-t.y,this.x-t.x)},angleWith:function(t){return this.angleWithSep(t.x,t.y)},angleWithSep:function(t,e){return Math.atan2(this.x*e-this.y*t,this.x*t+this.y*e)},_matMult:function(t){var e=t[0]*this.x+t[1]*this.y,r=t[2]*this.x+t[3]*this.y;return this.x=e,this.y=r,this},_add:function(t){return this.x+=t.x,this.y+=t.y,this},_sub:function(t){return this.x-=t.x,this.y-=t.y,this},_mult:function(t){return this.x*=t,this.y*=t,this},_div:function(t){return this.x/=t,this.y/=t,this},_multByPoint:function(t){return this.x*=t.x,this.y*=t.y,this},_divByPoint:function(t){return this.x/=t.x,this.y/=t.y,this},_unit:function(){return this._div(this.mag()),this},_perp:function(){var t=this.y;return this.y=this.x,this.x=-t,this},_rotate:function(t){var e=Math.cos(t),r=Math.sin(t),i=e*this.x-r*this.y,n=r*this.x+e*this.y;return this.x=i,this.y=n,this},_rotateAround:function(t,e){var r=Math.cos(t),i=Math.sin(t),n=e.x+r*(this.x-e.x)-i*(this.y-e.y),o=e.y+i*(this.x-e.x)+r*(this.y-e.y);return this.x=n,this.y=o,this},_round:function(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this}},i.convert=function(t){return t instanceof i?t:Array.isArray(t)?new i(t[0],t[1]):t}},{}],3:[function(e,r,i){!function(e,n){"object"==typeof i&&void 0!==r?r.exports=n():"function"==typeof t&&t.amd?t(n):e.ShelfPack=n()}(this,function(){function t(t,e,r){r=r||{},this.w=t||64,this.h=e||64,this.autoResize=!!r.autoResize,this.shelves=[],this.freebins=[],this.stats={},this.bins={},this.maxId=0}function e(t,e,r){this.x=0,this.y=t,this.w=this.free=e,this.h=r}function r(t,e,r,i,n,o,a){this.id=t,this.x=e,this.y=r,this.w=i,this.h=n,this.maxw=o||i,this.maxh=a||n,this.refcount=0}return t.prototype.pack=function(t,e){t=[].concat(t),e=e||{};for(var r,i,n,o,a=[],s=0;s<t.length;s++)if(r=t[s].w||t[s].width,i=t[s].h||t[s].height,n=t[s].id,r&&i){if(!(o=this.packOne(r,i,n)))continue;e.inPlace&&(t[s].x=o.x,t[s].y=o.y,t[s].id=o.id),a.push(o)}return this.shrink(),a},t.prototype.packOne=function(t,r,i){var n,o,a,s,l={freebin:-1,shelf:-1,waste:1/0},u=0;if("string"==typeof i||"number"==typeof i){if(n=this.getBin(i))return this.ref(n),n;"number"==typeof i&&(this.maxId=Math.max(i,this.maxId))}else i=++this.maxId;for(s=0;s<this.freebins.length;s++){if(n=this.freebins[s],r===n.maxh&&t===n.maxw)return this.allocFreebin(s,t,r,i);r>n.maxh||t>n.maxw||r<=n.maxh&&t<=n.maxw&&(a=n.maxw*n.maxh-t*r)<l.waste&&(l.waste=a,l.freebin=s)}for(s=0;s<this.shelves.length;s++)if(o=this.shelves[s],u+=o.h,!(t>o.free)){if(r===o.h)return this.allocShelf(s,t,r,i);r>o.h||r<o.h&&(a=(o.h-r)*t)<l.waste&&(l.freebin=-1,l.waste=a,l.shelf=s)}if(-1!==l.freebin)return this.allocFreebin(l.freebin,t,r,i);if(-1!==l.shelf)return this.allocShelf(l.shelf,t,r,i);if(r<=this.h-u&&t<=this.w)return o=new e(u,this.w,r),this.allocShelf(this.shelves.push(o)-1,t,r,i);if(this.autoResize){var c,p,h,f;return c=p=this.h,h=f=this.w,(h<=c||t>h)&&(f=2*Math.max(t,h)),(c<h||r>c)&&(p=2*Math.max(r,c)),this.resize(f,p),this.packOne(t,r,i)}return null},t.prototype.allocFreebin=function(t,e,r,i){var n=this.freebins.splice(t,1)[0];return n.id=i,n.w=e,n.h=r,n.refcount=0,this.bins[i]=n,this.ref(n),n},t.prototype.allocShelf=function(t,e,r,i){var n=this.shelves[t],o=n.alloc(e,r,i);return this.bins[i]=o,this.ref(o),o},t.prototype.shrink=function(){if(this.shelves.length>0){for(var t=0,e=0,r=0;r<this.shelves.length;r++){var i=this.shelves[r];e+=i.h,t=Math.max(i.w-i.free,t)}this.resize(t,e)}},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 r=0;r<this.shelves.length;r++)this.shelves[r].resize(t);return!0},e.prototype.alloc=function(t,e,i){if(t>this.free||e>this.h)return null;var n=this.x;return this.x+=t,this.free-=t,new r(i,n,this.y,t,e,t,this.h)},e.prototype.resize=function(t){return this.free+=t-this.w,this.w=t,!0},t})},{}],4:[function(t,e,r){"use strict";function i(t,e,r,i,n,o){this.fontSize=t||24,this.buffer=void 0===e?3:e,this.cutoff=i||.25,this.fontFamily=n||"sans-serif",this.fontWeight=o||"normal",this.radius=r||8;var a=this.size=this.fontSize+2*this.buffer;this.canvas=document.createElement("canvas"),this.canvas.width=this.canvas.height=a,this.ctx=this.canvas.getContext("2d"),this.ctx.font=this.fontWeight+" "+this.fontSize+"px "+this.fontFamily,this.ctx.textBaseline="middle",this.ctx.fillStyle="black",this.gridOuter=new Float64Array(a*a),this.gridInner=new Float64Array(a*a),this.f=new Float64Array(a),this.d=new Float64Array(a),this.z=new Float64Array(a+1),this.v=new Int16Array(a),this.middle=Math.round(a/2*(navigator.userAgent.indexOf("Gecko/")>=0?1.2:1))}function n(t,e,r,i,n,a,s){for(var l=0;l<e;l++){for(var u=0;u<r;u++)i[u]=t[u*e+l];for(o(i,n,a,s,r),u=0;u<r;u++)t[u*e+l]=n[u]}for(u=0;u<r;u++){for(l=0;l<e;l++)i[l]=t[u*e+l];for(o(i,n,a,s,e),l=0;l<e;l++)t[u*e+l]=Math.sqrt(n[l])}}function o(t,e,r,i,n){r[0]=0,i[0]=-a,i[1]=+a;for(var o=1,s=0;o<n;o++){for(var l=(t[o]+o*o-(t[r[s]]+r[s]*r[s]))/(2*o-2*r[s]);l<=i[s];)s--,l=(t[o]+o*o-(t[r[s]]+r[s]*r[s]))/(2*o-2*r[s]);s++,r[s]=o,i[s]=l,i[s+1]=+a}for(o=0,s=0;o<n;o++){for(;i[s+1]<o;)s++;e[o]=(o-r[s])*(o-r[s])+t[r[s]]}}e.exports=i;var a=1e20;i.prototype.draw=function(t){this.ctx.clearRect(0,0,this.size,this.size),this.ctx.fillText(t,this.buffer,this.middle);for(var e=this.ctx.getImageData(0,0,this.size,this.size),r=new Uint8ClampedArray(this.size*this.size),i=0;i<this.size*this.size;i++){var o=e.data[4*i+3]/255;this.gridOuter[i]=1===o?0:0===o?a:Math.pow(Math.max(0,.5-o),2),this.gridInner[i]=1===o?a:0===o?0:Math.pow(Math.max(0,o-.5),2)}for(n(this.gridOuter,this.size,this.size,this.f,this.d,this.v,this.z),n(this.gridInner,this.size,this.size,this.f,this.d,this.v,this.z),i=0;i<this.size*this.size;i++){var s=this.gridOuter[i]-this.gridInner[i];r[i]=Math.max(0,Math.min(255,Math.round(255-255*(s/this.radius+this.cutoff))))}return r}},{}],5:[function(t,e,r){function i(t,e,r,i){this.cx=3*t,this.bx=3*(r-t)-this.cx,this.ax=1-this.cx-this.bx,this.cy=3*e,this.by=3*(i-e)-this.cy,this.ay=1-this.cy-this.by,this.p1x=t,this.p1y=i,this.p2x=r,this.p2y=i}e.exports=i,i.prototype.sampleCurveX=function(t){return((this.ax*t+this.bx)*t+this.cx)*t},i.prototype.sampleCurveY=function(t){return((this.ay*t+this.by)*t+this.cy)*t},i.prototype.sampleCurveDerivativeX=function(t){return(3*this.ax*t+2*this.bx)*t+this.cx},i.prototype.solveCurveX=function(t,e){void 0===e&&(e=1e-6);var r,i,n,o,a;for(n=t,a=0;a<8;a++){if(o=this.sampleCurveX(n)-t,Math.abs(o)<e)return n;var s=this.sampleCurveDerivativeX(n);if(Math.abs(s)<1e-6)break;n-=o/s}if(r=0,i=1,(n=t)<r)return r;if(n>i)return i;for(;r<i;){if(o=this.sampleCurveX(n),Math.abs(o-t)<e)return n;t>o?r=n:i=n,n=.5*(i-r)+r}return n},i.prototype.solve=function(t,e){return this.sampleCurveY(this.solveCurveX(t,e))}},{}],6:[function(t,e,r){e.exports.VectorTile=t("./lib/vectortile.js"),e.exports.VectorTileFeature=t("./lib/vectortilefeature.js"),e.exports.VectorTileLayer=t("./lib/vectortilelayer.js")},{"./lib/vectortile.js":7,"./lib/vectortilefeature.js":8,"./lib/vectortilelayer.js":9}],7:[function(t,e,r){"use strict";function i(t,e){this.layers=t.readFields(n,{},e)}function n(t,e,r){if(3===t){var i=new o(r,r.readVarint()+r.pos);i.length&&(e[i.name]=i)}}var o=t("./vectortilelayer");e.exports=i},{"./vectortilelayer":9}],8:[function(t,e,r){"use strict";function i(t,e,r,i,o){this.properties={},this.extent=r,this.type=0,this._pbf=t,this._geometry=-1,this._keys=i,this._values=o,t.readFields(n,this,e)}function n(t,e,r){1==t?e.id=r.readVarint():2==t?o(r,e):3==t?e.type=r.readVarint():4==t&&(e._geometry=r.pos)}function o(t,e){for(var r=t.readVarint()+t.pos;t.pos<r;){var i=e._keys[t.readVarint()],n=e._values[t.readVarint()];e.properties[i]=n}}function a(t){var e=t.length;if(e<=1)return[t];for(var r,i,n=[],o=0;o<e;o++){var a=s(t[o]);0!==a&&(void 0===i&&(i=a<0),i===a<0?(r&&n.push(r),r=[t[o]]):r.push(t[o]))}return r&&n.push(r),n}function s(t){for(var e,r,i=0,n=0,o=t.length,a=o-1;n<o;a=n++)e=t[n],r=t[a],i+=(r.x-e.x)*(e.y+r.y);return i}var l=t("@mapbox/point-geometry");e.exports=i,i.types=["Unknown","Point","LineString","Polygon"],i.prototype.loadGeometry=function(){var t=this._pbf;t.pos=this._geometry;for(var e,r=t.readVarint()+t.pos,i=1,n=0,o=0,a=0,s=[];t.pos<r;){if(!n){var u=t.readVarint();i=7&u,n=u>>3}if(n--,1===i||2===i)o+=t.readSVarint(),a+=t.readSVarint(),1===i&&(e&&s.push(e),e=[]),e.push(new l(o,a));else{if(7!==i)throw new Error("unknown command "+i);e&&e.push(e[0].clone())}}return e&&s.push(e),s},i.prototype.bbox=function(){var t=this._pbf;t.pos=this._geometry;for(var e=t.readVarint()+t.pos,r=1,i=0,n=0,o=0,a=1/0,s=-1/0,l=1/0,u=-1/0;t.pos<e;){if(!i){var c=t.readVarint();r=7&c,i=c>>3}if(i--,1===r||2===r)n+=t.readSVarint(),o+=t.readSVarint(),n<a&&(a=n),n>s&&(s=n),o<l&&(l=o),o>u&&(u=o);else if(7!==r)throw new Error("unknown command "+r)}return[a,l,s,u]},i.prototype.toGeoJSON=function(t,e,r){function n(t){for(var e=0;e<t.length;e++){var r=t[e],i=180-360*(r.y+c)/l;t[e]=[360*(r.x+u)/l-180,360/Math.PI*Math.atan(Math.exp(i*Math.PI/180))-90]}}var o,s,l=this.extent*Math.pow(2,r),u=this.extent*t,c=this.extent*e,p=this.loadGeometry(),h=i.types[this.type];switch(this.type){case 1:var f=[];for(o=0;o<p.length;o++)f[o]=p[o][0];p=f,n(p);break;case 2:for(o=0;o<p.length;o++)n(p[o]);break;case 3:for(p=a(p),o=0;o<p.length;o++)for(s=0;s<p[o].length;s++)n(p[o][s])}1===p.length?p=p[0]:h="Multi"+h;var d={type:"Feature",geometry:{type:h,coordinates:p},properties:this.properties};return"id"in this&&(d.id=this.id),d}},{"@mapbox/point-geometry":2}],9:[function(t,e,r){"use strict";function i(t,e){this.version=1,this.name=null,this.extent=4096,this.length=0,this._pbf=t,this._keys=[],this._values=[],this._features=[],t.readFields(n,this,e),this.length=this._features.length}function n(t,e,r){15===t?e.version=r.readVarint():1===t?e.name=r.readString():5===t?e.extent=r.readVarint():2===t?e._features.push(r.pos):3===t?e._keys.push(r.readString()):4===t&&e._values.push(o(r))}function o(t){for(var e=null,r=t.readVarint()+t.pos;t.pos<r;){var i=t.readVarint()>>3;e=1===i?t.readString():2===i?t.readFloat():3===i?t.readDouble():4===i?t.readVarint64():5===i?t.readVarint():6===i?t.readSVarint():7===i?t.readBoolean():null}return e}var a=t("./vectortilefeature.js");e.exports=i,i.prototype.feature=function(t){if(t<0||t>=this._features.length)throw new Error("feature index out of bounds");this._pbf.pos=this._features[t];var e=this._pbf.readVarint()+this._pbf.pos;return new a(this._pbf,e,this.extent,this._keys,this._values)}},{"./vectortilefeature.js":8}],10:[function(e,r,i){!function(e,n){"object"==typeof i&&void 0!==r?n(i):"function"==typeof t&&t.amd?t(["exports"],n):n(e.WhooTS=e.WhooTS||{})}(this,function(t){function e(t,e,i,n,o,a){return a=a||{},t+"?"+["bbox="+r(i,n,o),"format="+(a.format||"image/png"),"service="+(a.service||"WMS"),"version="+(a.version||"1.1.1"),"request="+(a.request||"GetMap"),"srs="+(a.srs||"EPSG:3857"),"width="+(a.width||256),"height="+(a.height||256),"layers="+e].join("&")}function r(t,e,r){e=Math.pow(2,r)-e-1;var n=i(256*t,256*e,r),o=i(256*(t+1),256*(e+1),r);return n[0]+","+n[1]+","+o[0]+","+o[1]}function i(t,e,r){var i=2*Math.PI*6378137/256/Math.pow(2,r);return[t*i-2*Math.PI*6378137/2,e*i-2*Math.PI*6378137/2]}t.getURL=e,t.getTileBBox=r,t.getMercCoords=i,Object.defineProperty(t,"__esModule",{value:!0})})},{}],11:[function(t,e,r){"use strict";function i(t,e,r){r=r||2;var i=e&&e.length,o=i?e[0]*r:t.length,s=n(t,0,o,r,!0),l=[];if(!s)return l;var u,c,h,f,d,m,v;if(i&&(s=p(t,e,s,r)),t.length>80*r){u=h=t[0],c=f=t[1];for(var y=r;y<o;y+=r)d=t[y],m=t[y+1],d<u&&(u=d),m<c&&(c=m),d>h&&(h=d),m>f&&(f=m);v=Math.max(h-u,f-c)}return a(s,l,r,u,c,v),l}function n(t,e,r,i,n){var o,a;if(n===L(t,e,r,i)>0)for(o=e;o<r;o+=i)a=E(o,t[o],t[o+1],a);else for(o=r-i;o>=e;o-=i)a=E(o,t[o],t[o+1],a);return a&&w(a,a.next)&&(k(a),a=a.next),a}function o(t,e){if(!t)return t;e||(e=t);var r,i=t;do{if(r=!1,i.steiner||!w(i,i.next)&&0!==b(i.prev,i,i.next))i=i.next;else{if(k(i),(i=e=i.prev)===i.next)return null;r=!0}}while(r||i!==e);return e}function a(t,e,r,i,n,p,h){if(t){!h&&p&&m(t,i,n,p);for(var f,d,v=t;t.prev!==t.next;)if(f=t.prev,d=t.next,p?l(t,i,n,p):s(t))e.push(f.i/r),e.push(t.i/r),e.push(d.i/r),k(t),t=d.next,v=d.next;else if((t=d)===v){h?1===h?(t=u(t,e,r),a(t,e,r,i,n,p,2)):2===h&&c(t,e,r,i,n,p):a(o(t),e,r,i,n,p,1);break}}}function s(t){var e=t.prev,r=t,i=t.next;if(b(e,r,i)>=0)return!1;for(var n=t.next.next;n!==t.prev;){if(_(e.x,e.y,r.x,r.y,i.x,i.y,n.x,n.y)&&b(n.prev,n,n.next)>=0)return!1;n=n.next}return!0}function l(t,e,r,i){var n=t.prev,o=t,a=t.next;if(b(n,o,a)>=0)return!1;for(var s=n.x<o.x?n.x<a.x?n.x:a.x:o.x<a.x?o.x:a.x,l=n.y<o.y?n.y<a.y?n.y:a.y:o.y<a.y?o.y:a.y,u=n.x>o.x?n.x>a.x?n.x:a.x:o.x>a.x?o.x:a.x,c=n.y>o.y?n.y>a.y?n.y:a.y:o.y>a.y?o.y:a.y,p=y(s,l,e,r,i),h=y(u,c,e,r,i),f=t.nextZ;f&&f.z<=h;){if(f!==t.prev&&f!==t.next&&_(n.x,n.y,o.x,o.y,a.x,a.y,f.x,f.y)&&b(f.prev,f,f.next)>=0)return!1;f=f.nextZ}for(f=t.prevZ;f&&f.z>=p;){if(f!==t.prev&&f!==t.next&&_(n.x,n.y,o.x,o.y,a.x,a.y,f.x,f.y)&&b(f.prev,f,f.next)>=0)return!1;f=f.prevZ}return!0}function u(t,e,r){var i=t;do{var n=i.prev,o=i.next.next;!w(n,o)&&T(n,i,i.next,o)&&z(n,o)&&z(o,n)&&(e.push(n.i/r),e.push(i.i/r),e.push(o.i/r),k(i),k(i.next),i=t=o),i=i.next}while(i!==t);return i}function c(t,e,r,i,n,s){var l=t;do{for(var u=l.next.next;u!==l.prev;){if(l.i!==u.i&&x(l,u)){var c=C(l,u);return l=o(l,l.next),c=o(c,c.next),a(l,e,r,i,n,s),void a(c,e,r,i,n,s)}u=u.next}l=l.next}while(l!==t)}function p(t,e,r,i){var a,s,l,u,c,p=[];for(a=0,s=e.length;a<s;a++)l=e[a]*i,u=a<s-1?e[a+1]*i:t.length,c=n(t,l,u,i,!1),c===c.next&&(c.steiner=!0),p.push(g(c));for(p.sort(h),a=0;a<p.length;a++)f(p[a],r),r=o(r,r.next);return r}function h(t,e){return t.x-e.x}function f(t,e){if(e=d(t,e)){var r=C(e,t);o(r,r.next)}}function d(t,e){var r,i=e,n=t.x,o=t.y,a=-1/0;do{if(o<=i.y&&o>=i.next.y){var s=i.x+(o-i.y)*(i.next.x-i.x)/(i.next.y-i.y);if(s<=n&&s>a){if(a=s,s===n){if(o===i.y)return i;if(o===i.next.y)return i.next}r=i.x<i.next.x?i:i.next}}i=i.next}while(i!==e);if(!r)return null;if(n===a)return r.prev;var l,u=r,c=r.x,p=r.y,h=1/0;for(i=r.next;i!==u;)n>=i.x&&i.x>=c&&_(o<p?n:a,o,c,p,o<p?a:n,o,i.x,i.y)&&((l=Math.abs(o-i.y)/(n-i.x))<h||l===h&&i.x>r.x)&&z(i,t)&&(r=i,h=l),i=i.next;return r}function m(t,e,r,i){var n=t;do{null===n.z&&(n.z=y(n.x,n.y,e,r,i)),n.prevZ=n.prev,n.nextZ=n.next,n=n.next}while(n!==t);n.prevZ.nextZ=null,n.prevZ=null,v(n)}function v(t){var e,r,i,n,o,a,s,l,u=1;do{for(r=t,t=null,o=null,a=0;r;){for(a++,i=r,s=0,e=0;e<u&&(s++,i=i.nextZ);e++);for(l=u;s>0||l>0&&i;)0===s?(n=i,i=i.nextZ,l--):0!==l&&i?r.z<=i.z?(n=r,r=r.nextZ,s--):(n=i,i=i.nextZ,l--):(n=r,r=r.nextZ,s--),o?o.nextZ=n:t=n,n.prevZ=o,o=n;r=i}o.nextZ=null,u*=2}while(a>1);return t}function y(t,e,r,i,n){return t=32767*(t-r)/n,e=32767*(e-i)/n,t=16711935&(t|t<<8),t=252645135&(t|t<<4),t=858993459&(t|t<<2),t=1431655765&(t|t<<1),e=16711935&(e|e<<8),e=252645135&(e|e<<4),e=858993459&(e|e<<2),e=1431655765&(e|e<<1),t|e<<1}function g(t){var e=t,r=t;do{e.x<r.x&&(r=e),e=e.next}while(e!==t);return r}function _(t,e,r,i,n,o,a,s){return(n-a)*(e-s)-(t-a)*(o-s)>=0&&(t-a)*(i-s)-(r-a)*(e-s)>=0&&(r-a)*(o-s)-(n-a)*(i-s)>=0}function x(t,e){return t.next.i!==e.i&&t.prev.i!==e.i&&!S(t,e)&&z(t,e)&&z(e,t)&&A(t,e)}function b(t,e,r){return(e.y-t.y)*(r.x-e.x)-(e.x-t.x)*(r.y-e.y)}function w(t,e){return t.x===e.x&&t.y===e.y}function T(t,e,r,i){return!!(w(t,e)&&w(r,i)||w(t,i)&&w(r,e))||b(t,e,r)>0!=b(t,e,i)>0&&b(r,i,t)>0!=b(r,i,e)>0}function S(t,e){var r=t;do{if(r.i!==t.i&&r.next.i!==t.i&&r.i!==e.i&&r.next.i!==e.i&&T(r,r.next,t,e))return!0;r=r.next}while(r!==t);return!1}function z(t,e){return b(t.prev,t,t.next)<0?b(t,e,t.next)>=0&&b(t,t.prev,e)>=0:b(t,e,t.prev)<0||b(t,t.next,e)<0}function A(t,e){var r=t,i=!1,n=(t.x+e.x)/2,o=(t.y+e.y)/2;do{r.y>o!=r.next.y>o&&n<(r.next.x-r.x)*(o-r.y)/(r.next.y-r.y)+r.x&&(i=!i),r=r.next}while(r!==t);return i}function C(t,e){var r=new M(t.i,t.x,t.y),i=new M(e.i,e.x,e.y),n=t.next,o=e.prev;return t.next=e,e.prev=t,r.next=n,n.prev=r,i.next=r,r.prev=i,o.next=i,i.prev=o,i}function E(t,e,r,i){var n=new M(t,e,r);return i?(n.next=i.next,n.prev=i,i.next.prev=n,i.next=n):(n.prev=n,n.next=n),n}function k(t){t.next.prev=t.prev,t.prev.next=t.next,t.prevZ&&(t.prevZ.nextZ=t.nextZ),t.nextZ&&(t.nextZ.prevZ=t.prevZ)}function M(t,e,r){this.i=t,this.x=e,this.y=r,this.prev=null,this.next=null,this.z=null,this.prevZ=null,this.nextZ=null,this.steiner=!1}function L(t,e,r,i){for(var n=0,o=e,a=r-i;o<r;o+=i)n+=(t[a]-t[o])*(t[o+1]+t[a+1]),a=o;return n}e.exports=i,i.deviation=function(t,e,r,i){var n=e&&e.length,o=n?e[0]*r:t.length,a=Math.abs(L(t,0,o,r));if(n)for(var s=0,l=e.length;s<l;s++){var u=e[s]*r,c=s<l-1?e[s+1]*r:t.length;a-=Math.abs(L(t,u,c,r))}var p=0;for(s=0;s<i.length;s+=3){var h=i[s]*r,f=i[s+1]*r,d=i[s+2]*r;p+=Math.abs((t[h]-t[d])*(t[f+1]-t[h+1])-(t[h]-t[f])*(t[d+1]-t[h+1]))}return 0===a&&0===p?0:Math.abs((p-a)/a)},i.flatten=function(t){for(var e=t[0][0].length,r={vertices:[],holes:[],dimensions:e},i=0,n=0;n<t.length;n++){for(var o=0;o<t[n].length;o++)for(var a=0;a<e;a++)r.vertices.push(t[n][o][a]);n>0&&(i+=t[n-1].length,r.holes.push(i))}return r}},{}],12:[function(t,e,r){function i(t){if("Polygon"===t.type)return n(t.coordinates);if("MultiPolygon"===t.type){for(var e=0,r=0;r<t.coordinates.length;r++)e+=n(t.coordinates[r]);return e}return null}function n(t){var e=0;if(t&&t.length>0){e+=Math.abs(o(t[0]));for(var r=1;r<t.length;r++)e-=Math.abs(o(t[r]))}return e}function o(t){var e=0;if(t.length>2){for(var r,i,n=0;n<t.length-1;n++)r=t[n],i=t[n+1],e+=a(i[0]-r[0])*(2+Math.sin(a(r[1]))+Math.sin(a(i[1])));e=e*s.RADIUS*s.RADIUS/2}return e}function a(t){return t*Math.PI/180}var s=t("wgs84");e.exports.geometry=i,e.exports.ring=o},{wgs84:40}],13:[function(t,e,r){function i(t,e){switch(t&&t.type||null){case"FeatureCollection":return t.features=t.features.map(n(i,e)),t;case"Feature":return t.geometry=i(t.geometry,e),t;case"Polygon":case"MultiPolygon":return o(t,e);default:return t}}function n(t,e){return function(r){return t(r,e)}}function o(t,e){return"Polygon"===t.type?t.coordinates=a(t.coordinates,e):"MultiPolygon"===t.type&&(t.coordinates=t.coordinates.map(n(a,e))),t}function a(t,e){e=!!e,t[0]=s(t[0],e);for(var r=1;r<t.length;r++)t[r]=s(t[r],!e);return t}function s(t,e){return l(t)===e?t:t.reverse()}function l(t){return u.ring(t)>=0}var u=t("geojson-area");e.exports=i},{"geojson-area":12}],14:[function(t,e,r){"use strict";function i(t,e,r,i,a,l,u,c){if(r/=e,i/=e,u>=r&&c<=i)return t;if(u>i||c<r)return null;for(var p=[],h=0;h<t.length;h++){var f,d,m=t[h],v=m.geometry,y=m.type;if(f=m.min[a],d=m.max[a],f>=r&&d<=i)p.push(m);else if(!(f>i||d<r)){var g=1===y?n(v,r,i,a):o(v,r,i,a,l,3===y);g.length&&p.push(s(m.tags,y,g,m.id))}}return p.length?p:null}function n(t,e,r,i){for(var n=[],o=0;o<t.length;o++){var a=t[o],s=a[i];s>=e&&s<=r&&n.push(a)}return n}function o(t,e,r,i,n,o){for(var s=[],l=0;l<t.length;l++){var u,c,p,h=0,f=0,d=null,m=t[l],v=m.area,y=m.dist,g=m.outer,_=m.length,x=[];for(c=0;c<_-1;c++)u=d||m[c],d=m[c+1],h=f||u[i],f=d[i],h<e?f>r?(x.push(n(u,d,e),n(u,d,r)),o||(x=a(s,x,v,y,g))):f>=e&&x.push(n(u,d,e)):h>r?f<e?(x.push(n(u,d,r),n(u,d,e)),o||(x=a(s,x,v,y,g))):f<=r&&x.push(n(u,d,r)):(x.push(u),f<e?(x.push(n(u,d,e)),o||(x=a(s,x,v,y,g))):f>r&&(x.push(n(u,d,r)),o||(x=a(s,x,v,y,g))));u=m[_-1],h=u[i],h>=e&&h<=r&&x.push(u),p=x[x.length-1],o&&p&&(x[0][0]!==p[0]||x[0][1]!==p[1])&&x.push(x[0]),a(s,x,v,y,g)}return s}function a(t,e,r,i,n){return e.length&&(e.area=r,e.dist=i,void 0!==n&&(e.outer=n),t.push(e)),[]}e.exports=i;var s=t("./feature")},{"./feature":16}],15:[function(t,e,r){"use strict";function i(t,e){var r=[];if("FeatureCollection"===t.type)for(var i=0;i<t.features.length;i++)n(r,t.features[i],e);else"Feature"===t.type?n(r,t,e):n(r,{geometry:t},e);return r}function n(t,e,r){if(null!==e.geometry){var i,s,l,c,p=e.geometry,h=p.type,f=p.coordinates,d=e.properties,m=e.id;if("Point"===h)t.push(u(d,1,[a(f)],m));else if("MultiPoint"===h)t.push(u(d,1,o(f),m));else if("LineString"===h)t.push(u(d,2,[o(f,r)],m));else if("MultiLineString"===h||"Polygon"===h){for(l=[],i=0;i<f.length;i++)c=o(f[i],r),"Polygon"===h&&(c.outer=0===i),l.push(c);t.push(u(d,"Polygon"===h?3:2,l,m))}else if("MultiPolygon"===h){for(l=[],i=0;i<f.length;i++)for(s=0;s<f[i].length;s++)c=o(f[i][s],r),c.outer=0===s,l.push(c);t.push(u(d,3,l,m))}else{if("GeometryCollection"!==h)throw new Error("Input data is not a valid GeoJSON object.");for(i=0;i<p.geometries.length;i++)n(t,{geometry:p.geometries[i],properties:d},r)}}}function o(t,e){for(var r=[],i=0;i<t.length;i++)r.push(a(t[i]));return e&&(l(r,e),s(r)),r}function a(t){var e=Math.sin(t[1]*Math.PI/180),r=t[0]/360+.5,i=.5-.25*Math.log((1+e)/(1-e))/Math.PI;return i=i<0?0:i>1?1:i,[r,i,0]}function s(t){for(var e,r,i=0,n=0,o=0;o<t.length-1;o++)e=r||t[o],r=t[o+1],i+=e[0]*r[1]-r[0]*e[1],n+=Math.abs(r[0]-e[0])+Math.abs(r[1]-e[1]);t.area=Math.abs(i/2),t.dist=n}e.exports=i;var l=t("./simplify"),u=t("./feature")},{"./feature":16,"./simplify":18}],16:[function(t,e,r){"use strict";function i(t,e,r,i){var o={id:i||null,type:e,geometry:r,tags:t||null,min:[1/0,1/0],max:[-1/0,-1/0]};return n(o),o}function n(t){var e=t.geometry,r=t.min,i=t.max;if(1===t.type)o(r,i,e);else for(var n=0;n<e.length;n++)o(r,i,e[n]);return t}function o(t,e,r){for(var i,n=0;n<r.length;n++)i=r[n],t[0]=Math.min(i[0],t[0]),e[0]=Math.max(i[0],e[0]),t[1]=Math.min(i[1],t[1]),e[1]=Math.max(i[1],e[1])}e.exports=i},{}],17:[function(t,e,r){"use strict";function i(t,e){return new n(t,e)}function n(t,e){e=this.options=l(Object.create(this.options),e);var r=e.debug;r&&console.time("preprocess data");var i=1<<e.maxZoom,n=c(t,e.tolerance/(i*e.extent));this.tiles={},this.tileCoords=[],r&&(console.timeEnd("preprocess data"),console.log("index: maxZoom: %d, maxPoints: %d",e.indexMaxZoom,e.indexMaxPoints),console.time("generate tiles"),this.stats={},this.total=0),n=f(n,e.buffer/e.extent,a),n.length&&this.splitTile(n,0,0,0),r&&(n.length&&console.log("features: %d, points: %d",this.tiles[0].numFeatures,this.tiles[0].numPoints),console.timeEnd("generate tiles"),console.log("tiles generated:",this.total,JSON.stringify(this.stats)))}function o(t,e,r){return 32*((1<<t)*r+e)+t}function a(t,e,r){return[r,(r-t[0])*(e[1]-t[1])/(e[0]-t[0])+t[1],1]}function s(t,e,r){return[(r-t[1])*(e[0]-t[0])/(e[1]-t[1])+t[0],r,1]}function l(t,e){for(var r in e)t[r]=e[r];return t}function u(t,e,r){var i=t.source;if(1!==i.length)return!1;var n=i[0];if(3!==n.type||n.geometry.length>1)return!1;var o=n.geometry[0].length;if(5!==o)return!1;for(var a=0;a<o;a++){var s=p.point(n.geometry[0][a],e,t.z2,t.x,t.y);if(s[0]!==-r&&s[0]!==e+r||s[1]!==-r&&s[1]!==e+r)return!1}return!0}e.exports=i;var c=t("./convert"),p=t("./transform"),h=t("./clip"),f=t("./wrap"),d=t("./tile");n.prototype.options={maxZoom:14,indexMaxZoom:5,indexMaxPoints:1e5,solidChildren:!1,tolerance:3,extent:4096,buffer:64,debug:0},n.prototype.splitTile=function(t,e,r,i,n,l,c){for(var p=[t,e,r,i],f=this.options,m=f.debug,v=null;p.length;){i=p.pop(),r=p.pop(),e=p.pop(),t=p.pop();var y=1<<e,g=o(e,r,i),_=this.tiles[g],x=e===f.maxZoom?0:f.tolerance/(y*f.extent);if(!_&&(m>1&&console.time("creation"),_=this.tiles[g]=d(t,y,r,i,x,e===f.maxZoom),this.tileCoords.push({z:e,x:r,y:i}),m)){m>1&&(console.log("tile z%d-%d-%d (features: %d, points: %d, simplified: %d)",e,r,i,_.numFeatures,_.numPoints,_.numSimplified),console.timeEnd("creation"));var b="z"+e;this.stats[b]=(this.stats[b]||0)+1,this.total++}if(_.source=t,n){if(e===f.maxZoom||e===n)continue;var w=1<<n-e;if(r!==Math.floor(l/w)||i!==Math.floor(c/w))continue}else if(e===f.indexMaxZoom||_.numPoints<=f.indexMaxPoints)continue;if(f.solidChildren||!u(_,f.extent,f.buffer)){_.source=null,m>1&&console.time("clipping");var T,S,z,A,C,E,k=.5*f.buffer/f.extent,M=.5-k,L=.5+k,I=1+k;T=S=z=A=null,C=h(t,y,r-k,r+L,0,a,_.min[0],_.max[0]),E=h(t,y,r+M,r+I,0,a,_.min[0],_.max[0]),C&&(T=h(C,y,i-k,i+L,1,s,_.min[1],_.max[1]),S=h(C,y,i+M,i+I,1,s,_.min[1],_.max[1])),E&&(z=h(E,y,i-k,i+L,1,s,_.min[1],_.max[1]),A=h(E,y,i+M,i+I,1,s,_.min[1],_.max[1])),m>1&&console.timeEnd("clipping"),t.length&&(p.push(T||[],e+1,2*r,2*i),p.push(S||[],e+1,2*r,2*i+1),p.push(z||[],e+1,2*r+1,2*i),p.push(A||[],e+1,2*r+1,2*i+1))}else n&&(v=e)}return v},n.prototype.getTile=function(t,e,r){var i=this.options,n=i.extent,a=i.debug,s=1<<t;e=(e%s+s)%s;var l=o(t,e,r);if(this.tiles[l])return p.tile(this.tiles[l],n);a>1&&console.log("drilling down to z%d-%d-%d",t,e,r);for(var c,h=t,f=e,d=r;!c&&h>0;)h--,f=Math.floor(f/2),d=Math.floor(d/2),c=this.tiles[o(h,f,d)];if(!c||!c.source)return null;if(a>1&&console.log("found parent tile z%d-%d-%d",h,f,d),u(c,n,i.buffer))return p.tile(c,n);a>1&&console.time("drilling down");var m=this.splitTile(c.source,h,f,d,t,e,r);if(a>1&&console.timeEnd("drilling down"),null!==m){var v=1<<t-m;l=o(m,Math.floor(e/v),Math.floor(r/v))}return this.tiles[l]?p.tile(this.tiles[l],n):null}},{"./clip":14,"./convert":15,"./tile":19,"./transform":20,"./wrap":21}],18:[function(t,e,r){"use strict";function i(t,e){var r,i,o,a,s=e*e,l=t.length,u=0,c=l-1,p=[];for(t[u][2]=1,t[c][2]=1;c;){for(i=0,r=u+1;r<c;r++)(o=n(t[r],t[u],t[c]))>i&&(a=r,i=o);i>s?(t[a][2]=i,p.push(u),p.push(a),u=a):(c=p.pop(),u=p.pop())}}function n(t,e,r){var i=e[0],n=e[1],o=r[0],a=r[1],s=t[0],l=t[1],u=o-i,c=a-n;if(0!==u||0!==c){var p=((s-i)*u+(l-n)*c)/(u*u+c*c);p>1?(i=o,n=a):p>0&&(i+=u*p,n+=c*p)}return u=s-i,c=l-n,u*u+c*c}e.exports=i},{}],19:[function(t,e,r){"use strict";function i(t,e,r,i,o,a){for(var s={features:[],numPoints:0,numSimplified:0,numFeatures:0,source:null,x:r,y:i,z2:e,transformed:!1,min:[2,1],max:[-1,0]},l=0;l<t.length;l++){s.numFeatures++,n(s,t[l],o,a);var u=t[l].min,c=t[l].max;u[0]<s.min[0]&&(s.min[0]=u[0]),u[1]<s.min[1]&&(s.min[1]=u[1]),c[0]>s.max[0]&&(s.max[0]=c[0]),c[1]>s.max[1]&&(s.max[1]=c[1])}return s}function n(t,e,r,i){var n,a,s,l,u=e.geometry,c=e.type,p=[],h=r*r;if(1===c)for(n=0;n<u.length;n++)p.push(u[n]),t.numPoints++,t.numSimplified++;else for(n=0;n<u.length;n++)if(s=u[n],i||!(2===c&&s.dist<r||3===c&&s.area<h)){var f=[];for(a=0;a<s.length;a++)l=s[a],(i||l[2]>h)&&(f.push(l),t.numSimplified++),t.numPoints++;3===c&&o(f,s.outer),p.push(f)}else t.numPoints+=s.length;if(p.length){var d={geometry:p,type:c,tags:e.tags||null};null!==e.id&&(d.id=e.id),t.features.push(d)}}function o(t,e){a(t)<0===e&&t.reverse()}function a(t){for(var e,r,i=0,n=0,o=t.length,a=o-1;n<o;a=n++)e=t[n],r=t[a],i+=(r[0]-e[0])*(e[1]+r[1]);return i}e.exports=i},{}],20:[function(t,e,r){"use strict";function i(t,e){if(t.transformed)return t;var r,i,o,a=t.z2,s=t.x,l=t.y;for(r=0;r<t.features.length;r++){var u=t.features[r],c=u.geometry;if(1===u.type)for(i=0;i<c.length;i++)c[i]=n(c[i],e,a,s,l);else for(i=0;i<c.length;i++){var p=c[i];for(o=0;o<p.length;o++)p[o]=n(p[o],e,a,s,l)}}return t.transformed=!0,t}function n(t,e,r,i,n){return[Math.round(e*(t[0]*r-i)),Math.round(e*(t[1]*r-n))]}r.tile=i,r.point=n},{}],21:[function(t,e,r){"use strict";function i(t,e,r){var i=t,o=a(t,1,-1-e,e,0,r,-1,2),s=a(t,1,1-e,2+e,0,r,-1,2);return(o||s)&&(i=a(t,1,-e,1+e,0,r,-1,2)||[],o&&(i=n(o,1).concat(i)),s&&(i=i.concat(n(s,-1)))),i}function n(t,e){for(var r=[],i=0;i<t.length;i++){var n,a=t[i],l=a.type;if(1===l)n=o(a.geometry,e);else{n=[];for(var u=0;u<a.geometry.length;u++)n.push(o(a.geometry[u],e))}r.push(s(a.tags,l,n,a.id))}return r}function o(t,e){var r=[];r.area=t.area,r.dist=t.dist;for(var i=0;i<t.length;i++)r.push([t[i][0]+e,t[i][1],t[i][2]]);return r}var a=t("./clip"),s=t("./feature");e.exports=i},{"./clip":14,"./feature":16}],22:[function(t,e,r){"use strict";function i(t,e,r){var i=this.cells=[];if(t instanceof ArrayBuffer){this.arrayBuffer=t;var o=new Int32Array(this.arrayBuffer);t=o[0],e=o[1],r=o[2],this.d=e+2*r;for(var a=0;a<this.d*this.d;a++){var s=o[n+a],l=o[n+a+1];i.push(s===l?null:o.subarray(s,l))}var u=o[n+i.length],c=o[n+i.length+1];this.keys=o.subarray(u,c),this.bboxes=o.subarray(c),this.insert=this._insertReadonly}else{this.d=e+2*r;for(var p=0;p<this.d*this.d;p++)i.push([]);this.keys=[],this.bboxes=[]}this.n=e,this.extent=t,this.padding=r,this.scale=e/t,this.uid=0;var h=r/e*t;this.min=-h,this.max=t+h}e.exports=i;var n=3;i.prototype.insert=function(t,e,r,i,n){this._forEachCell(e,r,i,n,this._insertCell,this.uid++),this.keys.push(t),this.bboxes.push(e),this.bboxes.push(r),this.bboxes.push(i),this.bboxes.push(n)},i.prototype._insertReadonly=function(){throw"Cannot insert into a GridIndex created from an ArrayBuffer."},i.prototype._insertCell=function(t,e,r,i,n,o){this.cells[n].push(o)},i.prototype.query=function(t,e,r,i){var n=this.min,o=this.max;if(t<=n&&e<=n&&o<=r&&o<=i)return Array.prototype.slice.call(this.keys);var a=[],s={};return this._forEachCell(t,e,r,i,this._queryCell,a,s),a},i.prototype._queryCell=function(t,e,r,i,n,o,a){var s=this.cells[n];if(null!==s)for(var l=this.keys,u=this.bboxes,c=0;c<s.length;c++){var p=s[c];if(void 0===a[p]){var h=4*p;t<=u[h+2]&&e<=u[h+3]&&r>=u[h+0]&&i>=u[h+1]?(a[p]=!0,o.push(l[p])):a[p]=!1}}},i.prototype._forEachCell=function(t,e,r,i,n,o,a){for(var s=this._convertToCellCoord(t),l=this._convertToCellCoord(e),u=this._convertToCellCoord(r),c=this._convertToCellCoord(i),p=s;p<=u;p++)for(var h=l;h<=c;h++){var f=this.d*h+p;if(n.call(this,t,e,r,i,f,o,a))return}},i.prototype._convertToCellCoord=function(t){return Math.max(0,Math.min(this.d-1,Math.floor(t*this.scale)+this.padding))},i.prototype.toArrayBuffer=function(){if(this.arrayBuffer)return this.arrayBuffer;for(var t=this.cells,e=n+this.cells.length+1+1,r=0,i=0;i<this.cells.length;i++)r+=this.cells[i].length;var o=new Int32Array(e+r+this.keys.length+this.bboxes.length);o[0]=this.extent,o[1]=this.n,o[2]=this.padding;for(var a=e,s=0;s<t.length;s++){var l=t[s];o[n+s]=a,o.set(l,a),a+=l.length}return o[n+t.length]=a,o.set(this.keys,a),a+=this.keys.length,o[n+t.length+1]=a,o.set(this.bboxes,a),a+=this.bboxes.length,o.buffer}},{}],23:[function(t,e,r){r.read=function(t,e,r,i,n){var o,a,s=8*n-i-1,l=(1<<s)-1,u=l>>1,c=-7,p=r?n-1:0,h=r?-1:1,f=t[e+p];for(p+=h,o=f&(1<<-c)-1,f>>=-c,c+=s;c>0;o=256*o+t[e+p],p+=h,c-=8);for(a=o&(1<<-c)-1,o>>=-c,c+=i;c>0;a=256*a+t[e+p],p+=h,c-=8);if(0===o)o=1-u;else{if(o===l)return a?NaN:1/0*(f?-1:1);a+=Math.pow(2,i),o-=u}return(f?-1:1)*a*Math.pow(2,o-i)},r.write=function(t,e,r,i,n,o){var a,s,l,u=8*o-n-1,c=(1<<u)-1,p=c>>1,h=23===n?Math.pow(2,-24)-Math.pow(2,-77):0,f=i?0:o-1,d=i?1:-1,m=e<0||0===e&&1/e<0?1:0;for(e=Math.abs(e),isNaN(e)||e===1/0?(s=isNaN(e)?1:0,a=c):(a=Math.floor(Math.log(e)/Math.LN2),e*(l=Math.pow(2,-a))<1&&(a--,l*=2),e+=a+p>=1?h/l:h*Math.pow(2,1-p),e*l>=2&&(a++,l/=2),a+p>=c?(s=0,a=c):a+p>=1?(s=(e*l-1)*Math.pow(2,n),a+=p):(s=e*Math.pow(2,p-1)*Math.pow(2,n),a=0));n>=8;t[r+f]=255&s,f+=d,s/=256,n-=8);for(a=a<<n|s,u+=n;u>0;t[r+f]=255&a,f+=d,a/=256,u-=8);t[r+f-d]|=128*m}},{}],24:[function(t,e,r){"use strict";function i(t,e,r,i,o){return new n(t,e,r,i,o)}function n(t,e,r,i,n){e=e||o,r=r||a,n=n||Array,this.nodeSize=i||64,this.points=t,this.ids=new n(t.length),this.coords=new n(2*t.length);for(var l=0;l<t.length;l++)this.ids[l]=l,this.coords[2*l]=e(t[l]),this.coords[2*l+1]=r(t[l]);s(this.ids,this.coords,this.nodeSize,0,this.ids.length-1,0)}function o(t){return t[0]}function a(t){return t[1]}var s=t("./sort"),l=t("./range"),u=t("./within");e.exports=i,n.prototype={range:function(t,e,r,i){return l(this.ids,this.coords,t,e,r,i,this.nodeSize)},within:function(t,e,r){return u(this.ids,this.coords,t,e,r,this.nodeSize)}}},{"./range":25,"./sort":26,"./within":27}],25:[function(t,e,r){"use strict";function i(t,e,r,i,n,o,a){for(var s,l,u=[0,t.length-1,0],c=[];u.length;){var p=u.pop(),h=u.pop(),f=u.pop();if(h-f<=a)for(var d=f;d<=h;d++)s=e[2*d],l=e[2*d+1],s>=r&&s<=n&&l>=i&&l<=o&&c.push(t[d]);else{var m=Math.floor((f+h)/2);s=e[2*m],l=e[2*m+1],s>=r&&s<=n&&l>=i&&l<=o&&c.push(t[m]);var v=(p+1)%2;(0===p?r<=s:i<=l)&&(u.push(f),u.push(m-1),u.push(v)),(0===p?n>=s:o>=l)&&(u.push(m+1),u.push(h),u.push(v))}}return c}e.exports=i},{}],26:[function(t,e,r){"use strict";function i(t,e,r,o,a,s){if(!(a-o<=r)){var l=Math.floor((o+a)/2);n(t,e,l,o,a,s%2),i(t,e,r,o,l-1,s+1),i(t,e,r,l+1,a,s+1)}}function n(t,e,r,i,a,s){for(;a>i;){if(a-i>600){var l=a-i+1,u=r-i+1,c=Math.log(l),p=.5*Math.exp(2*c/3),h=.5*Math.sqrt(c*p*(l-p)/l)*(u-l/2<0?-1:1);n(t,e,r,Math.max(i,Math.floor(r-u*p/l+h)),Math.min(a,Math.floor(r+(l-u)*p/l+h)),s)}var f=e[2*r+s],d=i,m=a;for(o(t,e,i,r),e[2*a+s]>f&&o(t,e,i,a);d<m;){for(o(t,e,d,m),d++,m--;e[2*d+s]<f;)d++;for(;e[2*m+s]>f;)m--}e[2*i+s]===f?o(t,e,i,m):(m++,o(t,e,m,a)),m<=r&&(i=m+1),r<=m&&(a=m-1)}}function o(t,e,r,i){a(t,r,i),a(e,2*r,2*i),a(e,2*r+1,2*i+1)}function a(t,e,r){var i=t[e];t[e]=t[r],t[r]=i}e.exports=i},{}],27:[function(t,e,r){"use strict";function i(t,e,r,i,o,a){for(var s=[0,t.length-1,0],l=[],u=o*o;s.length;){var c=s.pop(),p=s.pop(),h=s.pop();if(p-h<=a)for(var f=h;f<=p;f++)n(e[2*f],e[2*f+1],r,i)<=u&&l.push(t[f]);else{var d=Math.floor((h+p)/2),m=e[2*d],v=e[2*d+1];n(m,v,r,i)<=u&&l.push(t[d]);var y=(c+1)%2;(0===c?r-o<=m:i-o<=v)&&(s.push(h),s.push(d-1),s.push(y)),(0===c?r+o>=m:i+o>=v)&&(s.push(d+1),s.push(p),s.push(y))}}return l}function n(t,e,r,i){var n=t-r,o=e-i;return n*n+o*o}e.exports=i},{}],28:[function(t,e,r){"use strict";function i(t){return!!(n()&&o()&&a()&&s()&&l()&&u()&&c()&&p(t&&t.failIfMajorPerformanceCaveat))}function n(){return"undefined"!=typeof window&&"undefined"!=typeof document}function o(){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 a(){return Function.prototype&&Function.prototype.bind}function s(){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 l(){return"JSON"in window&&"parse"in JSON&&"stringify"in JSON}function u(){return"Worker"in window}function c(){return"Uint8ClampedArray"in window}function p(t){return void 0===f[t]&&(f[t]=h(t)),f[t]}function h(t){var e=document.createElement("canvas"),r=Object.create(i.webGLContextAttributes);return r.failIfMajorPerformanceCaveat=t,e.probablySupportsContext?e.probablySupportsContext("webgl",r)||e.probablySupportsContext("experimental-webgl",r):e.supportsContext?e.supportsContext("webgl",r)||e.supportsContext("experimental-webgl",r):e.getContext("webgl",r)||e.getContext("experimental-webgl",r)}void 0!==e&&e.exports?e.exports=i:window&&(window.mapboxgl=window.mapboxgl||{},window.mapboxgl.supported=i);var f={};i.webGLContextAttributes={antialias:!1,alpha:!0,stencil:!0,depth:!0}},{}],29:[function(t,e,r){"use strict";function i(t){this.buf=ArrayBuffer.isView&&ArrayBuffer.isView(t)?t:new Uint8Array(t||0),this.pos=0,this.type=0,this.length=this.buf.length}function n(t,e,r){var i,n,o=r.buf;if(n=o[r.pos++],i=(112&n)>>4,n<128)return a(t,i,e);if(n=o[r.pos++],i|=(127&n)<<3,n<128)return a(t,i,e);if(n=o[r.pos++],i|=(127&n)<<10,n<128)return a(t,i,e);if(n=o[r.pos++],i|=(127&n)<<17,n<128)return a(t,i,e);if(n=o[r.pos++],i|=(127&n)<<24,n<128)return a(t,i,e);if(n=o[r.pos++],i|=(1&n)<<31,n<128)return a(t,i,e);throw new Error("Expected varint not more than 10 bytes")}function o(t){return t.type===i.Bytes?t.readVarint()+t.pos:t.pos+1}function a(t,e,r){return r?4294967296*e+(t>>>0):4294967296*(e>>>0)+(t>>>0)}function s(t,e){var r,i;if(t>=0?(r=t%4294967296|0,i=t/4294967296|0):(r=~(-t%4294967296),i=~(-t/4294967296),4294967295^r?r=r+1|0:(r=0,i=i+1|0)),t>=0x10000000000000000||t<-0x10000000000000000)throw new Error("Given varint doesn't fit into 10 bytes");e.realloc(10),l(r,i,e),u(i,e)}function l(t,e,r){r.buf[r.pos++]=127&t|128,t>>>=7,r.buf[r.pos++]=127&t|128,t>>>=7,r.buf[r.pos++]=127&t|128,t>>>=7,r.buf[r.pos++]=127&t|128,t>>>=7,r.buf[r.pos]=127&t}function u(t,e){var r=(7&t)<<4;e.buf[e.pos++]|=r|((t>>>=3)?128:0),t&&(e.buf[e.pos++]=127&t|((t>>>=7)?128:0),t&&(e.buf[e.pos++]=127&t|((t>>>=7)?128:0),t&&(e.buf[e.pos++]=127&t|((t>>>=7)?128:0),t&&(e.buf[e.pos++]=127&t|((t>>>=7)?128:0),t&&(e.buf[e.pos++]=127&t)))))}function c(t,e,r){var i=e<=16383?1:e<=2097151?2:e<=268435455?3:Math.ceil(Math.log(e)/(7*Math.LN2));r.realloc(i);for(var n=r.pos-1;n>=t;n--)r.buf[n+i]=r.buf[n]}function p(t,e){for(var r=0;r<t.length;r++)e.writeVarint(t[r])}function h(t,e){for(var r=0;r<t.length;r++)e.writeSVarint(t[r])}function f(t,e){for(var r=0;r<t.length;r++)e.writeFloat(t[r])}function d(t,e){for(var r=0;r<t.length;r++)e.writeDouble(t[r])}function m(t,e){for(var r=0;r<t.length;r++)e.writeBoolean(t[r])}function v(t,e){for(var r=0;r<t.length;r++)e.writeFixed32(t[r])}function y(t,e){for(var r=0;r<t.length;r++)e.writeSFixed32(t[r])}function g(t,e){for(var r=0;r<t.length;r++)e.writeFixed64(t[r])}function _(t,e){for(var r=0;r<t.length;r++)e.writeSFixed64(t[r])}function x(t,e){return(t[e]|t[e+1]<<8|t[e+2]<<16)+16777216*t[e+3]}function b(t,e,r){t[r]=e,t[r+1]=e>>>8,t[r+2]=e>>>16,t[r+3]=e>>>24}function w(t,e){return(t[e]|t[e+1]<<8|t[e+2]<<16)+(t[e+3]<<24)}function T(t,e,r){for(var i="",n=e;n<r;){var o=t[n],a=null,s=o>239?4:o>223?3:o>191?2:1;if(n+s>r)break;var l,u,c;1===s?o<128&&(a=o):2===s?128==(192&(l=t[n+1]))&&(a=(31&o)<<6|63&l)<=127&&(a=null):3===s?(l=t[n+1],u=t[n+2],128==(192&l)&&128==(192&u)&&((a=(15&o)<<12|(63&l)<<6|63&u)<=2047||a>=55296&&a<=57343)&&(a=null)):4===s&&(l=t[n+1],u=t[n+2],c=t[n+3],128==(192&l)&&128==(192&u)&&128==(192&c)&&((a=(15&o)<<18|(63&l)<<12|(63&u)<<6|63&c)<=65535||a>=1114112)&&(a=null)),null===a?(a=65533,s=1):a>65535&&(a-=65536,i+=String.fromCharCode(a>>>10&1023|55296),a=56320|1023&a),i+=String.fromCharCode(a),n+=s}return i}function S(t,e,r){for(var i,n,o=0;o<e.length;o++){if((i=e.charCodeAt(o))>55295&&i<57344){if(!n){i>56319||o+1===e.length?(t[r++]=239,t[r++]=191,t[r++]=189):n=i;continue}if(i<56320){t[r++]=239,t[r++]=191,t[r++]=189,n=i;continue}i=n-55296<<10|i-56320|65536,n=null}else n&&(t[r++]=239,t[r++]=191,t[r++]=189,n=null);i<128?t[r++]=i:(i<2048?t[r++]=i>>6|192:(i<65536?t[r++]=i>>12|224:(t[r++]=i>>18|240,t[r++]=i>>12&63|128),t[r++]=i>>6&63|128),t[r++]=63&i|128)}return r}e.exports=i;var z=t("ieee754");i.Varint=0,i.Fixed64=1,i.Bytes=2,i.Fixed32=5;i.prototype={destroy:function(){this.buf=null},readFields:function(t,e,r){for(r=r||this.length;this.pos<r;){var i=this.readVarint(),n=i>>3,o=this.pos;this.type=7&i,t(n,e,this),this.pos===o&&this.skip(i)}return e},readMessage:function(t,e){return this.readFields(t,e,this.readVarint()+this.pos)},readFixed32:function(){var t=x(this.buf,this.pos);return this.pos+=4,t},readSFixed32:function(){var t=w(this.buf,this.pos);return this.pos+=4,t},readFixed64:function(){var t=x(this.buf,this.pos)+4294967296*x(this.buf,this.pos+4);return this.pos+=8,t},readSFixed64:function(){var t=x(this.buf,this.pos)+4294967296*w(this.buf,this.pos+4);return this.pos+=8,t},readFloat:function(){var t=z.read(this.buf,this.pos,!0,23,4);return this.pos+=4,t},readDouble:function(){var t=z.read(this.buf,this.pos,!0,52,8);return this.pos+=8,t},readVarint:function(t){var e,r,i=this.buf;return r=i[this.pos++],e=127&r,r<128?e:(r=i[this.pos++],e|=(127&r)<<7,r<128?e:(r=i[this.pos++],e|=(127&r)<<14,r<128?e:(r=i[this.pos++],e|=(127&r)<<21,r<128?e:(r=i[this.pos],e|=(15&r)<<28,n(e,t,this)))))},readVarint64:function(){return this.readVarint(!0)},readSVarint:function(){var t=this.readVarint();return t%2==1?(t+1)/-2:t/2},readBoolean:function(){return Boolean(this.readVarint())},readString:function(){var t=this.readVarint()+this.pos,e=T(this.buf,this.pos,t);return this.pos=t,e},readBytes:function(){var t=this.readVarint()+this.pos,e=this.buf.subarray(this.pos,t);return this.pos=t,e},readPackedVarint:function(t,e){var r=o(this);for(t=t||[];this.pos<r;)t.push(this.readVarint(e));return t},readPackedSVarint:function(t){var e=o(this);for(t=t||[];this.pos<e;)t.push(this.readSVarint());return t},readPackedBoolean:function(t){var e=o(this);for(t=t||[];this.pos<e;)t.push(this.readBoolean());return t},readPackedFloat:function(t){var e=o(this);for(t=t||[];this.pos<e;)t.push(this.readFloat());return t},readPackedDouble:function(t){var e=o(this);for(t=t||[];this.pos<e;)t.push(this.readDouble());return t},readPackedFixed32:function(t){var e=o(this);for(t=t||[];this.pos<e;)t.push(this.readFixed32());return t},readPackedSFixed32:function(t){var e=o(this);for(t=t||[];this.pos<e;)t.push(this.readSFixed32());return t},readPackedFixed64:function(t){var e=o(this);for(t=t||[];this.pos<e;)t.push(this.readFixed64());return t},readPackedSFixed64:function(t){var e=o(this);for(t=t||[];this.pos<e;)t.push(this.readSFixed64());return t},skip:function(t){var e=7&t;if(e===i.Varint)for(;this.buf[this.pos++]>127;);else if(e===i.Bytes)this.pos=this.readVarint()+this.pos;else if(e===i.Fixed32)this.pos+=4;else{if(e!==i.Fixed64)throw new Error("Unimplemented type: "+e);this.pos+=8}},writeTag:function(t,e){this.writeVarint(t<<3|e)},realloc:function(t){for(var e=this.length||16;e<this.pos+t;)e*=2;if(e!==this.length){var r=new Uint8Array(e);r.set(this.buf),this.buf=r,this.length=e}},finish:function(){return this.length=this.pos,this.pos=0,this.buf.subarray(0,this.length)},writeFixed32:function(t){this.realloc(4),b(this.buf,t,this.pos),this.pos+=4},writeSFixed32:function(t){this.realloc(4),b(this.buf,t,this.pos),this.pos+=4},writeFixed64:function(t){this.realloc(8),b(this.buf,-1&t,this.pos),b(this.buf,Math.floor(t*(1/4294967296)),this.pos+4),this.pos+=8},writeSFixed64:function(t){this.realloc(8),b(this.buf,-1&t,this.pos),b(this.buf,Math.floor(t*(1/4294967296)),this.pos+4),this.pos+=8},writeVarint:function(t){if((t=+t||0)>268435455||t<0)return void s(t,this);this.realloc(4),this.buf[this.pos++]=127&t|(t>127?128:0),t<=127||(this.buf[this.pos++]=127&(t>>>=7)|(t>127?128:0),t<=127||(this.buf[this.pos++]=127&(t>>>=7)|(t>127?128:0),t<=127||(this.buf[this.pos++]=t>>>7&127)))},writeSVarint:function(t){this.writeVarint(t<0?2*-t-1:2*t)},writeBoolean:function(t){this.writeVarint(Boolean(t))},writeString:function(t){t=String(t),this.realloc(4*t.length),this.pos++;var e=this.pos;this.pos=S(this.buf,t,this.pos);var r=this.pos-e;r>=128&&c(e,r,this),this.pos=e-1,this.writeVarint(r),this.pos+=r},writeFloat:function(t){this.realloc(4),z.write(this.buf,t,this.pos,!0,23,4),this.pos+=4},writeDouble:function(t){this.realloc(8),z.write(this.buf,t,this.pos,!0,52,8),this.pos+=8},writeBytes:function(t){var e=t.length;this.writeVarint(e),this.realloc(e);for(var r=0;r<e;r++)this.buf[this.pos++]=t[r]},writeRawMessage:function(t,e){this.pos++;var r=this.pos;t(e,this);var i=this.pos-r;i>=128&&c(r,i,this),this.pos=r-1,this.writeVarint(i),this.pos+=i},writeMessage:function(t,e,r){this.writeTag(t,i.Bytes),this.writeRawMessage(e,r)},writePackedVarint:function(t,e){this.writeMessage(t,p,e)},writePackedSVarint:function(t,e){this.writeMessage(t,h,e)},writePackedBoolean:function(t,e){this.writeMessage(t,m,e)},writePackedFloat:function(t,e){this.writeMessage(t,f,e)},writePackedDouble:function(t,e){this.writeMessage(t,d,e)},writePackedFixed32:function(t,e){this.writeMessage(t,v,e)},writePackedSFixed32:function(t,e){this.writeMessage(t,y,e)},writePackedFixed64:function(t,e){this.writeMessage(t,g,e)},writePackedSFixed64:function(t,e){this.writeMessage(t,_,e)},writeBytesField:function(t,e){this.writeTag(t,i.Bytes),this.writeBytes(e)},writeFixed32Field:function(t,e){this.writeTag(t,i.Fixed32),this.writeFixed32(e)},writeSFixed32Field:function(t,e){this.writeTag(t,i.Fixed32),this.writeSFixed32(e)},writeFixed64Field:function(t,e){this.writeTag(t,i.Fixed64),this.writeFixed64(e)},writeSFixed64Field:function(t,e){this.writeTag(t,i.Fixed64),this.writeSFixed64(e)},writeVarintField:function(t,e){this.writeTag(t,i.Varint),this.writeVarint(e)},writeSVarintField:function(t,e){this.writeTag(t,i.Varint),this.writeSVarint(e)},writeStringField:function(t,e){this.writeTag(t,i.Bytes),this.writeString(e)},writeFloatField:function(t,e){this.writeTag(t,i.Fixed32),this.writeFloat(e)},writeDoubleField:function(t,e){this.writeTag(t,i.Fixed64),this.writeDouble(e)},writeBooleanField:function(t,e){this.writeVarintField(t,Boolean(e))}}},{ieee754:23}],30:[function(t,e,r){function i(){throw new Error("setTimeout has not been defined")}function n(){throw new Error("clearTimeout has not been defined")}function o(t){if(p===setTimeout)return setTimeout(t,0);if((p===i||!p)&&setTimeout)return p=setTimeout,setTimeout(t,0);try{return p(t,0)}catch(e){try{return p.call(null,t,0)}catch(e){return p.call(this,t,0)}}}function a(t){if(h===clearTimeout)return clearTimeout(t);if((h===n||!h)&&clearTimeout)return h=clearTimeout,clearTimeout(t);try{return h(t)}catch(e){try{return h.call(null,t)}catch(e){return h.call(this,t)}}}function s(){v&&d&&(v=!1,d.length?m=d.concat(m):y=-1,m.length&&l())}function l(){if(!v){var t=o(s);v=!0;for(var e=m.length;e;){for(d=m,m=[];++y<e;)d&&d[y].run();y=-1,e=m.length}d=null,v=!1,a(t)}}function u(t,e){this.fun=t,this.array=e}function c(){}var p,h,f=e.exports={};!function(){try{p="function"==typeof setTimeout?setTimeout:i}catch(t){p=i}try{h="function"==typeof clearTimeout?clearTimeout:n}catch(t){h=n}}();var d,m=[],v=!1,y=-1;f.nextTick=function(t){var e=new Array(arguments.length-1);if(arguments.length>1)for(var r=1;r<arguments.length;r++)e[r-1]=arguments[r];m.push(new u(t,e)),1!==m.length||v||o(l)},u.prototype.run=function(){this.fun.apply(null,this.array)},f.title="browser",f.browser=!0,f.env={},f.argv=[],f.version="",f.versions={},f.on=c,f.addListener=c,f.once=c,f.off=c,f.removeListener=c,f.removeAllListeners=c,f.emit=c,f.prependListener=c,f.prependOnceListener=c,f.listeners=function(t){return[]},f.binding=function(t){throw new Error("process.binding is not supported")},f.cwd=function(){return"/"},f.chdir=function(t){throw new Error("process.chdir is not supported")},f.umask=function(){return 0}},{}],31:[function(t,e,r){"use strict";function i(t,e,r,a,s){for(r=r||0,a=a||t.length-1,s=s||o;a>r;){if(a-r>600){var l=a-r+1,u=e-r+1,c=Math.log(l),p=.5*Math.exp(2*c/3),h=.5*Math.sqrt(c*p*(l-p)/l)*(u-l/2<0?-1:1);i(t,e,Math.max(r,Math.floor(e-u*p/l+h)),Math.min(a,Math.floor(e+(l-u)*p/l+h)),s)}var f=t[e],d=r,m=a;for(n(t,r,e),s(t[a],f)>0&&n(t,r,a);d<m;){for(n(t,d,m),d++,m--;s(t[d],f)<0;)d++;for(;s(t[m],f)>0;)m--}0===s(t[r],f)?n(t,r,m):(m++,n(t,m,a)),m<=e&&(r=m+1),e<=m&&(a=m-1)}}function n(t,e,r){var i=t[e];t[e]=t[r],t[r]=i}function o(t,e){return t<e?-1:t>e?1:0}e.exports=i},{}],32:[function(t,e,r){"use strict";function i(t){return new n(t)}function n(t){this.options=f(Object.create(this.options),t),this.trees=new Array(this.options.maxZoom+1)}function o(t,e,r,i,n){return{x:t,y:e,zoom:1/0,id:i,properties:n,parentId:-1,numPoints:r}}function a(t,e){var r=t.geometry.coordinates;return{x:u(r[0]),y:c(r[1]),zoom:1/0,id:e,parentId:-1}}function s(t){return{type:"Feature",properties:l(t),geometry:{type:"Point",coordinates:[p(t.x),h(t.y)]}}}function l(t){var e=t.numPoints,r=e>=1e4?Math.round(e/1e3)+"k":e>=1e3?Math.round(e/100)/10+"k":e;return f(f({},t.properties),{cluster:!0,cluster_id:t.id,point_count:e,point_count_abbreviated:r})}function u(t){return t/360+.5}function c(t){var e=Math.sin(t*Math.PI/180),r=.5-.25*Math.log((1+e)/(1-e))/Math.PI;return r<0?0:r>1?1:r}function p(t){return 360*(t-.5)}function h(t){var e=(180-360*t)*Math.PI/180;return 360*Math.atan(Math.exp(e))/Math.PI-90}function f(t,e){for(var r in e)t[r]=e[r];return t}function d(t){return t.x}function m(t){return t.y}var v=t("kdbush");e.exports=i,n.prototype={options:{minZoom:0,maxZoom:16,radius:40,extent:512,nodeSize:64,log:!1,reduce:null,initial:function(){return{}},map:function(t){return t}},load:function(t){var e=this.options.log;e&&console.time("total time");var r="prepare "+t.length+" points";e&&console.time(r),this.points=t;var i=t.map(a);e&&console.timeEnd(r);for(var n=this.options.maxZoom;n>=this.options.minZoom;n--){var o=+Date.now();this.trees[n+1]=v(i,d,m,this.options.nodeSize,Float32Array),i=this._cluster(i,n),e&&console.log("z%d: %d clusters in %dms",n,i.length,+Date.now()-o)}return this.trees[this.options.minZoom]=v(i,d,m,this.options.nodeSize,Float32Array),e&&console.timeEnd("total time"),this},getClusters:function(t,e){for(var r=this.trees[this._limitZoom(e)],i=r.range(u(t[0]),c(t[3]),u(t[2]),c(t[1])),n=[],o=0;o<i.length;o++){var a=r.points[i[o]];n.push(a.numPoints?s(a):this.points[a.id])}return n},getChildren:function(t,e){for(var r=this.trees[e+1].points[t],i=this.options.radius/(this.options.extent*Math.pow(2,e)),n=this.trees[e+1].within(r.x,r.y,i),o=[],a=0;a<n.length;a++){var l=this.trees[e+1].points[n[a]];l.parentId===t&&o.push(l.numPoints?s(l):this.points[l.id])}return o},getLeaves:function(t,e,r,i){r=r||10,i=i||0;var n=[];return this._appendLeaves(n,t,e,r,i,0),n},getTile:function(t,e,r){var i=this.trees[this._limitZoom(t)],n=Math.pow(2,t),o=this.options.extent,a=this.options.radius,s=a/o,l=(r-s)/n,u=(r+1+s)/n,c={features:[]};return this._addTileFeatures(i.range((e-s)/n,l,(e+1+s)/n,u),i.points,e,r,n,c),0===e&&this._addTileFeatures(i.range(1-s/n,l,1,u),i.points,n,r,n,c),e===n-1&&this._addTileFeatures(i.range(0,l,s/n,u),i.points,-1,r,n,c),c.features.length?c:null},getClusterExpansionZoom:function(t,e){for(;e<this.options.maxZoom;){var r=this.getChildren(t,e);if(e++,1!==r.length)break;t=r[0].properties.cluster_id}return e},_appendLeaves:function(t,e,r,i,n,o){for(var a=this.getChildren(e,r),s=0;s<a.length;s++){var l=a[s].properties;if(l.cluster?o+l.point_count<=n?o+=l.point_count:o=this._appendLeaves(t,l.cluster_id,r+1,i,n,o):o<n?o++:t.push(a[s]),t.length===i)break}return o},_addTileFeatures:function(t,e,r,i,n,o){for(var a=0;a<t.length;a++){var s=e[t[a]];o.features.push({type:1,geometry:[[Math.round(this.options.extent*(s.x*n-r)),Math.round(this.options.extent*(s.y*n-i))]],tags:s.numPoints?l(s):this.points[s.id].properties})}},_limitZoom:function(t){return Math.max(this.options.minZoom,Math.min(t,this.options.maxZoom+1))},_cluster:function(t,e){for(var r=[],i=this.options.radius/(this.options.extent*Math.pow(2,e)),n=0;n<t.length;n++){var a=t[n];if(!(a.zoom<=e)){a.zoom=e;var s=this.trees[e+1],l=s.within(a.x,a.y,i),u=a.numPoints||1,c=a.x*u,p=a.y*u,h=null;this.options.reduce&&(h=this.options.initial(),this._accumulate(h,a));for(var f=0;f<l.length;f++){var d=s.points[l[f]];if(e<d.zoom){var m=d.numPoints||1;d.zoom=e,c+=d.x*m,p+=d.y*m,u+=m,d.parentId=n,this.options.reduce&&this._accumulate(h,d)}}1===u?r.push(a):(a.parentId=n,r.push(o(c/u,p/u,u,n,h)))}}return r},_accumulate:function(t,e){var r=e.numPoints?e.properties:this.options.map(this.points[e.id].properties);this.options.reduce(t,r)}}},{kdbush:24}],33:[function(t,e,r){"use strict";function i(t,e){if(!(this instanceof i))return new i(t,e);if(this.data=t||[],this.length=this.data.length,this.compare=e||n,this.length>0)for(var r=this.length>>1;r>=0;r--)this._down(r)}function n(t,e){return t<e?-1:t>e?1:0}e.exports=i,i.prototype={push:function(t){this.data.push(t),this.length++,this._up(this.length-1)},pop:function(){if(0!==this.length){var t=this.data[0];return this.length--,this.length>0&&(this.data[0]=this.data[this.length],this._down(0)),this.data.pop(),t}},peek:function(){return this.data[0]},_up:function(t){for(var e=this.data,r=this.compare,i=e[t];t>0;){var n=t-1>>1,o=e[n];if(r(i,o)>=0)break;e[t]=o,t=n}e[t]=i},_down:function(t){for(var e=this.data,r=this.compare,i=this.length,n=i>>1,o=e[t];t<n;){var a=1+(t<<1),s=a+1,l=e[a];if(s<i&&r(e[s],l)<0&&(a=s,l=e[s]),r(l,o)>=0)break;e[t]=l,t=a}e[t]=o}}},{}],34:[function(t,e,r){"function"==typeof Object.create?e.exports=function(t,e){t.super_=e,t.prototype=Object.create(e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}})}:e.exports=function(t,e){t.super_=e;var r=function(){};r.prototype=e.prototype,t.prototype=new r,t.prototype.constructor=t}},{}],35:[function(t,e,r){e.exports=function(t){return t&&"object"==typeof t&&"function"==typeof t.copy&&"function"==typeof t.fill&&"function"==typeof t.readUInt8}},{}],36:[function(t,r,i){(function(e,r){function n(t,e){var r={seen:[],stylize:a};return arguments.length>=3&&(r.depth=arguments[2]),arguments.length>=4&&(r.colors=arguments[3]),m(e)?r.showHidden=e:e&&i._extend(r,e),b(r.showHidden)&&(r.showHidden=!1),b(r.depth)&&(r.depth=2),b(r.colors)&&(r.colors=!1),b(r.customInspect)&&(r.customInspect=!0),r.colors&&(r.stylize=o),l(r,t,r.depth)}function o(t,e){var r=n.styles[e];return r?"["+n.colors[r][0]+"m"+t+"["+n.colors[r][1]+"m":t}function a(t,e){return t}function s(t){var e={};return t.forEach(function(t,r){e[t]=!0}),e}function l(t,e,r){if(t.customInspect&&e&&A(e.inspect)&&e.inspect!==i.inspect&&(!e.constructor||e.constructor.prototype!==e)){var n=e.inspect(r,t);return _(n)||(n=l(t,n,r)),n}var o=u(t,e);if(o)return o;var a=Object.keys(e),m=s(a);if(t.showHidden&&(a=Object.getOwnPropertyNames(e)),z(e)&&(a.indexOf("message")>=0||a.indexOf("description")>=0))return c(e);if(0===a.length){if(A(e)){var v=e.name?": "+e.name:"";return t.stylize("[Function"+v+"]","special")}if(w(e))return t.stylize(RegExp.prototype.toString.call(e),"regexp");if(S(e))return t.stylize(Date.prototype.toString.call(e),"date");if(z(e))return c(e)}var y="",g=!1,x=["{","}"];if(d(e)&&(g=!0,x=["[","]"]),A(e)&&(y=" [Function"+(e.name?": "+e.name:"")+"]"),w(e)&&(y=" "+RegExp.prototype.toString.call(e)),S(e)&&(y=" "+Date.prototype.toUTCString.call(e)),z(e)&&(y=" "+c(e)),0===a.length&&(!g||0==e.length))return x[0]+y+x[1];if(r<0)return w(e)?t.stylize(RegExp.prototype.toString.call(e),"regexp"):t.stylize("[Object]","special");t.seen.push(e);var b;return b=g?p(t,e,r,m,a):a.map(function(i){return h(t,e,r,m,i,g)}),t.seen.pop(),f(b,y,x)}function u(t,e){if(b(e))return t.stylize("undefined","undefined");if(_(e)){var r="'"+JSON.stringify(e).replace(/^"|"$/g,"").replace(/'/g,"\\'").replace(/\\"/g,'"')+"'";return t.stylize(r,"string")}return g(e)?t.stylize(""+e,"number"):m(e)?t.stylize(""+e,"boolean"):v(e)?t.stylize("null","null"):void 0}function c(t){return"["+Error.prototype.toString.call(t)+"]"}function p(t,e,r,i,n){for(var o=[],a=0,s=e.length;a<s;++a)L(e,String(a))?o.push(h(t,e,r,i,String(a),!0)):o.push("");return n.forEach(function(n){n.match(/^\d+$/)||o.push(h(t,e,r,i,n,!0))}),o}function h(t,e,r,i,n,o){var a,s,u;if(u=Object.getOwnPropertyDescriptor(e,n)||{value:e[n]},u.get?s=u.set?t.stylize("[Getter/Setter]","special"):t.stylize("[Getter]","special"):u.set&&(s=t.stylize("[Setter]","special")),L(i,n)||(a="["+n+"]"),s||(t.seen.indexOf(u.value)<0?(s=v(r)?l(t,u.value,null):l(t,u.value,r-1),s.indexOf("\n")>-1&&(s=o?s.split("\n").map(function(t){return" "+t}).join("\n").substr(2):"\n"+s.split("\n").map(function(t){return" "+t}).join("\n"))):s=t.stylize("[Circular]","special")),b(a)){if(o&&n.match(/^\d+$/))return s;a=JSON.stringify(""+n),a.match(/^"([a-zA-Z_][a-zA-Z_0-9]*)"$/)?(a=a.substr(1,a.length-2),a=t.stylize(a,"name")):(a=a.replace(/'/g,"\\'").replace(/\\"/g,'"').replace(/(^"|"$)/g,"'"),a=t.stylize(a,"string"))}return a+": "+s}function f(t,e,r){var i=0;return t.reduce(function(t,e){return i++,e.indexOf("\n")>=0&&i++,t+e.replace(/\u001b\[\d\d?m/g,"").length+1},0)>60?r[0]+(""===e?"":e+"\n ")+" "+t.join(",\n ")+" "+r[1]:r[0]+e+" "+t.join(", ")+" "+r[1]}function d(t){return Array.isArray(t)}function m(t){return"boolean"==typeof t}function v(t){return null===t}function y(t){return null==t}function g(t){return"number"==typeof t}function _(t){return"string"==typeof t}function x(t){return"symbol"==typeof t}function b(t){return void 0===t}function w(t){return T(t)&&"[object RegExp]"===E(t)}function T(t){return"object"==typeof t&&null!==t}function S(t){return T(t)&&"[object Date]"===E(t)}function z(t){return T(t)&&("[object Error]"===E(t)||t instanceof Error)}function A(t){return"function"==typeof t}function C(t){return null===t||"boolean"==typeof t||"number"==typeof t||"string"==typeof t||"symbol"==typeof t||void 0===t}function E(t){return Object.prototype.toString.call(t)}function k(t){return t<10?"0"+t.toString(10):t.toString(10)}function M(){var t=new Date,e=[k(t.getHours()),k(t.getMinutes()),k(t.getSeconds())].join(":");return[t.getDate(),D[t.getMonth()],e].join(" ")}function L(t,e){return Object.prototype.hasOwnProperty.call(t,e)}var I=/%[sdj%]/g;i.format=function(t){if(!_(t)){for(var e=[],r=0;r<arguments.length;r++)e.push(n(arguments[r]));return e.join(" ")}for(var r=1,i=arguments,o=i.length,a=String(t).replace(I,function(t){if("%%"===t)return"%";if(r>=o)return t;switch(t){case"%s":return String(i[r++]);case"%d":return Number(i[r++]);case"%j":try{return JSON.stringify(i[r++])}catch(t){return"[Circular]"}default:return t}}),s=i[r];r<o;s=i[++r])v(s)||!T(s)?a+=" "+s:a+=" "+n(s);return a},i.deprecate=function(t,n){function o(){if(!a){if(e.throwDeprecation)throw new Error(n);e.traceDeprecation?console.trace(n):console.error(n),a=!0}return t.apply(this,arguments)}if(b(r.process))return function(){return i.deprecate(t,n).apply(this,arguments)};if(!0===e.noDeprecation)return t;var a=!1;return o};var P,R={};i.debuglog=function(t){if(b(P)&&(P=e.env.NODE_DEBUG||""),t=t.toUpperCase(),!R[t])if(new RegExp("\\b"+t+"\\b","i").test(P)){var r=e.pid;R[t]=function(){var e=i.format.apply(i,arguments);console.error("%s %d: %s",t,r,e)}}else R[t]=function(){};return R[t]},i.inspect=n,n.colors={bold:[1,22],italic:[3,23],underline:[4,24],inverse:[7,27],white:[37,39],grey:[90,39],black:[30,39],blue:[34,39],cyan:[36,39],green:[32,39],magenta:[35,39],red:[31,39],yellow:[33,39]},n.styles={special:"cyan",number:"yellow",boolean:"yellow",undefined:"grey",null:"bold",string:"green",date:"magenta",regexp:"red"},i.isArray=d,i.isBoolean=m,i.isNull=v,i.isNullOrUndefined=y,i.isNumber=g,i.isString=_,i.isSymbol=x,i.isUndefined=b,i.isRegExp=w,i.isObject=T,i.isDate=S,i.isError=z,i.isFunction=A,i.isPrimitive=C,i.isBuffer=t("./support/isBuffer");var D=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];i.log=function(){console.log("%s - %s",M(),i.format.apply(i,arguments))},i.inherits=t("inherits"),i._extend=function(t,e){if(!e||!T(e))return t;for(var r=Object.keys(e),i=r.length;i--;)t[r[i]]=e[r[i]];return t}}).call(this,t("_process"),void 0!==e?e:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"./support/isBuffer":35,_process:30,inherits:34}],37:[function(t,e,r){function i(t){var e=new f;return o(t,e),e.finish()}function n(t){var e={};for(var r in t)e[r]=new d(t[r].features),e[r].name=r;return i({layers:e})}function o(t,e){for(var r in t.layers)e.writeMessage(3,a,t.layers[r])}function a(t,e){e.writeVarintField(15,t.version||1),e.writeStringField(1,t.name||""),e.writeVarintField(5,t.extent||4096);var r,i={keys:[],values:[],keycache:{},valuecache:{}};for(r=0;r<t.length;r++)i.feature=t.feature(r),e.writeMessage(2,s,i);var n=i.keys;for(r=0;r<n.length;r++)e.writeStringField(3,n[r]);var o=i.values;for(r=0;r<o.length;r++)e.writeMessage(4,h,o[r])}function s(t,e){var r=t.feature;void 0!==r.id&&e.writeVarintField(1,r.id),e.writeMessage(2,l,t),e.writeVarintField(3,r.type),e.writeMessage(4,p,r)}function l(t,e){var r=t.feature,i=t.keys,n=t.values,o=t.keycache,a=t.valuecache;for(var s in r.properties){var l=o[s];void 0===l&&(i.push(s),l=i.length-1,o[s]=l),e.writeVarint(l);var u=r.properties[s],c=typeof u;"string"!==c&&"boolean"!==c&&"number"!==c&&(u=JSON.stringify(u));var p=c+":"+u,h=a[p];void 0===h&&(n.push(u),h=n.length-1,a[p]=h),e.writeVarint(h)}}function u(t,e){return(e<<3)+(7&t)}function c(t){return t<<1^t>>31}function p(t,e){for(var r=t.loadGeometry(),i=t.type,n=0,o=0,a=r.length,s=0;s<a;s++){var l=r[s],p=1;1===i&&(p=l.length),e.writeVarint(u(1,p));for(var h=0;h<l.length;h++){1===h&&1!==i&&e.writeVarint(u(2,l.length-1));var f=l[h].x-n,d=l[h].y-o;e.writeVarint(c(f)),e.writeVarint(c(d)),n+=f,o+=d}}}function h(t,e){var r=typeof t;"string"===r?e.writeStringField(1,t):"boolean"===r?e.writeBooleanField(7,t):"number"===r&&(t%1!=0?e.writeDoubleField(3,t):t<0?e.writeSVarintField(6,t):e.writeVarintField(5,t))}var f=t("pbf"),d=t("./lib/geojson_wrapper");e.exports=i,e.exports.fromVectorTileJs=i,e.exports.fromGeojsonVt=n,e.exports.GeoJSONWrapper=d},{"./lib/geojson_wrapper":38,pbf:29}],38:[function(t,e,r){"use strict";function i(t){this.features=t,this.length=t.length}function n(t){this.id="number"==typeof t.id?t.id:void 0,this.type=t.type,this.rawGeometry=1===t.type?[t.geometry]:t.geometry,this.properties=t.tags,this.extent=4096}var o=t("@mapbox/point-geometry"),a=t("@mapbox/vector-tile").VectorTileFeature;e.exports=i,i.prototype.feature=function(t){return new n(this.features[t])},n.prototype.loadGeometry=function(){var t=this.rawGeometry;this.geometry=[];for(var e=0;e<t.length;e++){for(var r=t[e],i=[],n=0;n<r.length;n++)i.push(new o(r[n][0],r[n][1]));this.geometry.push(i)}return this.geometry},n.prototype.bbox=function(){this.geometry||this.loadGeometry();for(var t=this.geometry,e=1/0,r=-1/0,i=1/0,n=-1/0,o=0;o<t.length;o++)for(var a=t[o],s=0;s<a.length;s++){var l=a[s];e=Math.min(e,l.x),r=Math.max(r,l.x),i=Math.min(i,l.y),n=Math.max(n,l.y)}return[e,i,r,n]},n.prototype.toGeoJSON=a.prototype.toGeoJSON},{"@mapbox/point-geometry":2,"@mapbox/vector-tile":6}],39:[function(t,e,r){var i=arguments[3],n=arguments[4],o=arguments[5],a=JSON.stringify;e.exports=function(t,e){function r(t){v[t]=!0;for(var e in n[t][1]){var i=n[t][1][e];v[i]||r(i)}}for(var s,l=Object.keys(o),u=0,c=l.length;u<c;u++){var p=l[u],h=o[p].exports;if(h===t||h&&h.default===t){s=p;break}}if(!s){s=Math.floor(Math.pow(16,8)*Math.random()).toString(16);for(var f={},u=0,c=l.length;u<c;u++){var p=l[u];f[p]=p}n[s]=[Function(["require","module","exports"],"("+t+")(self)"),f]}var d=Math.floor(Math.pow(16,8)*Math.random()).toString(16),m={};m[s]=s,n[d]=[Function(["require"],"var f = require("+a(s)+");(f.default ? f.default : f)(self);"),m];var v={};r(d);var y="("+i+")({"+Object.keys(v).map(function(t){return a(t)+":["+n[t][0]+","+a(n[t][1])+"]"}).join(",")+"},{},["+a(d)+"])",g=window.URL||window.webkitURL||window.mozURL||window.msURL,_=new Blob([y],{type:"text/javascript"});if(e&&e.bare)return _;var x=g.createObjectURL(_),b=new Worker(x);return b.objectURL=x,b}},{}],40:[function(t,e,r){e.exports.RADIUS=6378137,e.exports.FLATTENING=1/298.257223563,e.exports.POLAR_RADIUS=6356752.3142},{}],41:[function(t,e,r){e.exports={version:"0.40.1"}},{}],42:[function(t,e,r){"use strict";var i=t("../util/util");e.exports={deserialize:function(t,e){var r={};if(!e)return r;for(var n=0,o=t;n<o.length;n+=1){var a=o[n],s=a.layerIds.map(function(t){return e.getLayer(t)}).filter(Boolean);if(0!==s.length)for(var l=s[0].createBucket(i.extend({layers:s},a)),u=0,c=s;u<c.length;u+=1){var p=c[u];r[p.id]=l}}return r}}},{"../util/util":223}],43:[function(t,e,r){"use strict";function i(t,e,r,i,n){t.emplaceBack(2*e+(i+1)/2,2*r+(n+1)/2)}var n=t("../segment"),o=n.SegmentVector,a=t("../../gl/vertex_buffer"),s=t("../../gl/index_buffer"),l=t("../program_configuration"),u=l.ProgramConfigurationSet,c=t("../vertex_array_type"),p=t("../index_array_type"),h=p.TriangleIndexArray,f=t("../load_geometry"),d=t("../extent"),m={layoutAttributes:[{name:"a_pos",components:2,type:"Int16"}],indexArrayType:h,paintAttributes:[{property:"circle-color"},{property:"circle-radius"},{property:"circle-blur"},{property:"circle-opacity"},{property:"circle-stroke-color"},{property:"circle-stroke-width"},{property:"circle-stroke-opacity"}]},v=c(m.layoutAttributes),y=function(t){this.zoom=t.zoom,this.overscaling=t.overscaling,this.layers=t.layers,this.index=t.index,this.layoutVertexArray=new v(t.layoutVertexArray),this.indexArray=new h(t.indexArray),this.programConfigurations=new u(m,t.layers,t.zoom,t.programConfigurations),this.segments=new o(t.segments)};y.prototype.populate=function(t,e){for(var r=this,i=0,n=t;i<n.length;i+=1){var o=n[i],a=o.feature,s=o.index,l=o.sourceLayerIndex;if(r.layers[0].filter(a)){var u=f(a);r.addFeature(a,u),e.featureIndex.insert(a,u,s,l,r.index)}}},y.prototype.isEmpty=function(){return 0===this.layoutVertexArray.length},y.prototype.serialize=function(t){return{zoom:this.zoom,layerIds:this.layers.map(function(t){return t.id}),layoutVertexArray:this.layoutVertexArray.serialize(t),indexArray:this.indexArray.serialize(t),programConfigurations:this.programConfigurations.serialize(t),segments:this.segments.get()}},y.prototype.upload=function(t){this.layoutVertexBuffer=new a(t,this.layoutVertexArray),this.indexBuffer=new s(t,this.indexArray),this.programConfigurations.upload(t)},y.prototype.destroy=function(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.programConfigurations.destroy(),this.segments.destroy())},y.prototype.addFeature=function(t,e){for(var r=this,n=0,o=e;n<o.length;n+=1)for(var a=o[n],s=0,l=a;s<l.length;s+=1){var u=l[s],c=u.x,p=u.y;if(!(c<0||c>=d||p<0||p>=d)){var h=r.segments.prepareSegment(4,r.layoutVertexArray,r.indexArray),f=h.vertexLength;i(r.layoutVertexArray,c,p,-1,-1),i(r.layoutVertexArray,c,p,1,-1),i(r.layoutVertexArray,c,p,1,1),i(r.layoutVertexArray,c,p,-1,1),r.indexArray.emplaceBack(f,f+1,f+2),r.indexArray.emplaceBack(f,f+3,f+2),h.vertexLength+=4,h.primitiveLength+=2}}this.programConfigurations.populatePaintArrays(this.layoutVertexArray.length,t.properties)},y.programInterface=m,e.exports=y},{"../../gl/index_buffer":61,"../../gl/vertex_buffer":62,"../extent":48,"../index_array_type":50,"../load_geometry":51,"../program_configuration":53,"../segment":55,"../vertex_array_type":56}],44:[function(t,e,r){"use strict";var i=t("../segment"),n=i.SegmentVector,o=t("../../gl/vertex_buffer"),a=t("../../gl/index_buffer"),s=t("../program_configuration"),l=s.ProgramConfigurationSet,u=t("../vertex_array_type"),c=t("../index_array_type"),p=c.LineIndexArray,h=c.TriangleIndexArray,f=t("../load_geometry"),d=t("earcut"),m=t("../../util/classify_rings"),v={layoutAttributes:[{name:"a_pos",components:2,type:"Int16"}],indexArrayType:h,indexArrayType2:p,paintAttributes:[{property:"fill-color"},{property:"fill-outline-color"},{property:"fill-opacity"}]},y=u(v.layoutAttributes),g=function(t){this.zoom=t.zoom,this.overscaling=t.overscaling,this.layers=t.layers,this.index=t.index,this.layoutVertexArray=new y(t.layoutVertexArray),this.indexArray=new h(t.indexArray),this.indexArray2=new p(t.indexArray2),this.programConfigurations=new l(v,t.layers,t.zoom,t.programConfigurations),this.segments=new n(t.segments),this.segments2=new n(t.segments2)};g.prototype.populate=function(t,e){for(var r=this,i=0,n=t;i<n.length;i+=1){var o=n[i],a=o.feature,s=o.index,l=o.sourceLayerIndex;if(r.layers[0].filter(a)){var u=f(a);r.addFeature(a,u),e.featureIndex.insert(a,u,s,l,r.index)}}},g.prototype.isEmpty=function(){return 0===this.layoutVertexArray.length},g.prototype.serialize=function(t){return{zoom:this.zoom,layerIds:this.layers.map(function(t){return t.id}),layoutVertexArray:this.layoutVertexArray.serialize(t),indexArray:this.indexArray.serialize(t),indexArray2:this.indexArray2.serialize(t),programConfigurations:this.programConfigurations.serialize(t),segments:this.segments.get(),segments2:this.segments2.get()}},g.prototype.upload=function(t){this.layoutVertexBuffer=new o(t,this.layoutVertexArray),this.indexBuffer=new a(t,this.indexArray),this.indexBuffer2=new a(t,this.indexArray2),this.programConfigurations.upload(t)},g.prototype.destroy=function(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.indexBuffer2.destroy(),this.programConfigurations.destroy(),this.segments.destroy(),this.segments2.destroy())},g.prototype.addFeature=function(t,e){for(var r=this,i=0,n=m(e,500);i<n.length;i+=1){for(var o=n[i],a=0,s=0,l=o;s<l.length;s+=1)a+=l[s].length;for(var u=r.segments.prepareSegment(a,r.layoutVertexArray,r.indexArray),c=u.vertexLength,p=[],h=[],f=0,v=o;f<v.length;f+=1){var y=v[f];if(0!==y.length){y!==o[0]&&h.push(p.length/2);var g=r.segments2.prepareSegment(y.length,r.layoutVertexArray,r.indexArray2),_=g.vertexLength;r.layoutVertexArray.emplaceBack(y[0].x,y[0].y),r.indexArray2.emplaceBack(_+y.length-1,_),p.push(y[0].x),p.push(y[0].y);for(var x=1;x<y.length;x++)r.layoutVertexArray.emplaceBack(y[x].x,y[x].y),r.indexArray2.emplaceBack(_+x-1,_+x),p.push(y[x].x),p.push(y[x].y);g.vertexLength+=y.length,g.primitiveLength+=y.length}}for(var b=d(p,h),w=0;w<b.length;w+=3)r.indexArray.emplaceBack(c+b[w],c+b[w+1],c+b[w+2]);u.vertexLength+=a,u.primitiveLength+=b.length/3}this.programConfigurations.populatePaintArrays(this.layoutVertexArray.length,t.properties)},g.programInterface=v,e.exports=g},{"../../gl/index_buffer":61,"../../gl/vertex_buffer":62,"../../util/classify_rings":205,"../index_array_type":50,"../load_geometry":51,"../program_configuration":53,"../segment":55,"../vertex_array_type":56,earcut:11}],45:[function(t,e,r){"use strict";function i(t,e,r,i,n,o,a,s){t.emplaceBack(e,r,2*Math.floor(i*x)+a,n*x*2,o*x*2,Math.round(s))}function n(t,e){return t.x===e.x&&(t.x<0||t.x>v)||t.y===e.y&&(t.y<0||t.y>v)}var o=t("../segment"),a=o.SegmentVector,s=o.MAX_VERTEX_ARRAY_LENGTH,l=t("../../gl/vertex_buffer"),u=t("../../gl/index_buffer"),c=t("../program_configuration"),p=c.ProgramConfigurationSet,h=t("../vertex_array_type"),f=t("../index_array_type"),d=f.TriangleIndexArray,m=t("../load_geometry"),v=t("../extent"),y=t("earcut"),g=t("../../util/classify_rings"),_={layoutAttributes:[{name:"a_pos",components:2,type:"Int16"},{name:"a_normal",components:3,type:"Int16"},{name:"a_edgedistance",components:1,type:"Int16"}],indexArrayType:d,paintAttributes:[{property:"fill-extrusion-base"},{property:"fill-extrusion-height"},{property:"fill-extrusion-color"}]},x=Math.pow(2,13),b=h(_.layoutAttributes),w=function(t){this.zoom=t.zoom,this.overscaling=t.overscaling,this.layers=t.layers,this.index=t.index,this.layoutVertexArray=new b(t.layoutVertexArray),this.indexArray=new d(t.indexArray),this.programConfigurations=new p(_,t.layers,t.zoom,t.programConfigurations),this.segments=new a(t.segments)};w.prototype.populate=function(t,e){for(var r=this,i=0,n=t;i<n.length;i+=1){var o=n[i],a=o.feature,s=o.index,l=o.sourceLayerIndex;if(r.layers[0].filter(a)){var u=m(a);r.addFeature(a,u),e.featureIndex.insert(a,u,s,l,r.index)}}},w.prototype.isEmpty=function(){return 0===this.layoutVertexArray.length},w.prototype.serialize=function(t){return{zoom:this.zoom,layerIds:this.layers.map(function(t){return t.id}),layoutVertexArray:this.layoutVertexArray.serialize(t),indexArray:this.indexArray.serialize(t),programConfigurations:this.programConfigurations.serialize(t),segments:this.segments.get()}},w.prototype.upload=function(t){this.layoutVertexBuffer=new l(t,this.layoutVertexArray),this.indexBuffer=new u(t,this.indexArray),this.programConfigurations.upload(t)},w.prototype.destroy=function(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.programConfigurations.destroy(),this.segments.destroy())},w.prototype.addFeature=function(t,e){for(var r=this,o=0,a=g(e,500);o<a.length;o+=1){for(var l=a[o],u=0,c=0,p=l;c<p.length;c+=1)u+=p[c].length;for(var h=r.segments.prepareSegment(4,r.layoutVertexArray,r.indexArray),f=0,d=l;f<d.length;f+=1){var m=d[f];if(0!==m.length)for(var v=0,_=0;_<m.length;_++){var x=m[_];if(_>=1){var b=m[_-1];if(!n(x,b)){h.vertexLength+4>s&&(h=r.segments.prepareSegment(4,r.layoutVertexArray,r.indexArray));var w=x.sub(b)._perp()._unit();i(r.layoutVertexArray,x.x,x.y,w.x,w.y,0,0,v),i(r.layoutVertexArray,x.x,x.y,w.x,w.y,0,1,v),v+=b.dist(x),i(r.layoutVertexArray,b.x,b.y,w.x,w.y,0,0,v),i(r.layoutVertexArray,b.x,b.y,w.x,w.y,0,1,v);var T=h.vertexLength;r.indexArray.emplaceBack(T,T+1,T+2),r.indexArray.emplaceBack(T+1,T+2,T+3),h.vertexLength+=4,h.primitiveLength+=2}}}}h.vertexLength+u>s&&(h=r.segments.prepareSegment(u,r.layoutVertexArray,r.indexArray));for(var S=[],z=[],A=h.vertexLength,C=0,E=l;C<E.length;C+=1){var k=E[C];if(0!==k.length){k!==l[0]&&z.push(S.length/2);for(var M=0;M<k.length;M++){var L=k[M];i(r.layoutVertexArray,L.x,L.y,0,0,1,1,0),S.push(L.x),S.push(L.y)}}}for(var I=y(S,z),P=0;P<I.length;P+=3)r.indexArray.emplaceBack(A+I[P],A+I[P+1],A+I[P+2]);h.primitiveLength+=I.length/3,h.vertexLength+=u}this.programConfigurations.populatePaintArrays(this.layoutVertexArray.length,t.properties)},w.programInterface=_,e.exports=w},{"../../gl/index_buffer":61,"../../gl/vertex_buffer":62,"../../util/classify_rings":205,"../extent":48,"../index_array_type":50,"../load_geometry":51,"../program_configuration":53,"../segment":55,"../vertex_array_type":56,earcut:11}],46:[function(t,e,r){"use strict";function i(t,e,r,i,n,o,a){t.emplaceBack(e.x,e.y,i?1:0,n?1:-1,Math.round(v*r.x)+128,Math.round(v*r.y)+128,1+(0===o?0:o<0?-1:1)|(a*g&63)<<2,a*g>>6)}var n=t("../segment"),o=n.SegmentVector,a=t("../../gl/vertex_buffer"),s=t("../../gl/index_buffer"),l=t("../program_configuration"),u=l.ProgramConfigurationSet,c=t("../vertex_array_type"),p=t("../index_array_type"),h=p.TriangleIndexArray,f=t("../load_geometry"),d=t("../extent"),m=t("@mapbox/vector-tile").VectorTileFeature.types,v=63,y=Math.cos(Math.PI/180*37.5),g=.5,_=Math.pow(2,14)/g,x={layoutAttributes:[{name:"a_pos_normal",components:4,type:"Int16"},{name:"a_data",components:4,type:"Uint8"}],paintAttributes:[{property:"line-color"},{property:"line-blur"},{property:"line-opacity"},{property:"line-gap-width",name:"gapwidth"},{property:"line-offset"},{property:"line-width"},{property:"line-width",name:"floorwidth",useIntegerZoom:!0}],indexArrayType:h},b=c(x.layoutAttributes),w=function(t){this.zoom=t.zoom,this.overscaling=t.overscaling,this.layers=t.layers,this.index=t.index,this.layoutVertexArray=new b(t.layoutVertexArray),this.indexArray=new h(t.indexArray),this.programConfigurations=new u(x,t.layers,t.zoom,t.programConfigurations),this.segments=new o(t.segments)};w.prototype.populate=function(t,e){for(var r=this,i=0,n=t;i<n.length;i+=1){var o=n[i],a=o.feature,s=o.index,l=o.sourceLayerIndex;if(r.layers[0].filter(a)){var u=f(a);r.addFeature(a,u),e.featureIndex.insert(a,u,s,l,r.index)}}},w.prototype.isEmpty=function(){return 0===this.layoutVertexArray.length},w.prototype.serialize=function(t){return{zoom:this.zoom,layerIds:this.layers.map(function(t){return t.id}),layoutVertexArray:this.layoutVertexArray.serialize(t),indexArray:this.indexArray.serialize(t),programConfigurations:this.programConfigurations.serialize(t),segments:this.segments.get()}},w.prototype.upload=function(t){this.layoutVertexBuffer=new a(t,this.layoutVertexArray),this.indexBuffer=new s(t,this.indexArray),this.programConfigurations.upload(t)},w.prototype.destroy=function(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.programConfigurations.destroy(),this.segments.destroy())},w.prototype.addFeature=function(t,e){for(var r=this,i=this.layers[0].layout,n=this.layers[0].getLayoutValue("line-join",{zoom:this.zoom},t.properties),o=i["line-cap"],a=i["line-miter-limit"],s=i["line-round-limit"],l=0,u=e;l<u.length;l+=1){var c=u[l];r.addLine(c,t,n,o,a,s)}},w.prototype.addLine=function(t,e,r,i,n,o){for(var a=this,s=e.properties,l="Polygon"===m[e.type],u=t.length;u>=2&&t[u-1].equals(t[u-2]);)u--;for(var c=0;c<u-1&&t[c].equals(t[c+1]);)c++;if(!(u<(l?3:2))){"bevel"===r&&(n=1.05);var p=d/(512*this.overscaling)*15,h=t[c],f=this.segments.prepareSegment(10*u,this.layoutVertexArray,this.indexArray);this.distance=0;var v,g,_,x=i,b=l?"butt":i,w=!0,T=void 0,S=void 0,z=void 0,A=void 0;this.e1=this.e2=this.e3=-1,l&&(v=t[u-2],A=h.sub(v)._unit()._perp());for(var C=c;C<u;C++)if(!(S=l&&C===u-1?t[c+1]:t[C+1])||!t[C].equals(S)){A&&(z=A),v&&(T=v),v=t[C],A=S?S.sub(v)._unit()._perp():z,z=z||A;var E=z.add(A);0===E.x&&0===E.y||E._unit();var k=E.x*A.x+E.y*A.y,M=0!==k?1/k:1/0,L=k<y&&T&&S;if(L&&C>c){var I=v.dist(T);if(I>2*p){var P=v.sub(v.sub(T)._mult(p/I)._round());a.distance+=P.dist(T),a.addCurrentVertex(P,a.distance,z.mult(1),0,0,!1,f),T=P}}var R=T&&S,D=R?r:S?x:b;if(R&&"round"===D&&(M<o?D="miter":M<=2&&(D="fakeround")),"miter"===D&&M>n&&(D="bevel"),"bevel"===D&&(M>2&&(D="flipbevel"),M<n&&(D="miter")),T&&(a.distance+=v.dist(T)),"miter"===D)E._mult(M),a.addCurrentVertex(v,a.distance,E,0,0,!1,f);else if("flipbevel"===D){if(M>100)E=A.clone().mult(-1);else{var O=z.x*A.y-z.y*A.x>0?-1:1,B=M*z.add(A).mag()/z.sub(A).mag();E._perp()._mult(B*O)}a.addCurrentVertex(v,a.distance,E,0,0,!1,f),a.addCurrentVertex(v,a.distance,E.mult(-1),0,0,!1,f)}else if("bevel"===D||"fakeround"===D){var F=z.x*A.y-z.y*A.x>0,j=-Math.sqrt(M*M-1);if(F?(_=0,g=j):(g=0,_=j),w||a.addCurrentVertex(v,a.distance,z,g,_,!1,f),"fakeround"===D){for(var V=Math.floor(8*(.5-(k-.5))),N=void 0,U=0;U<V;U++)N=A.mult((U+1)/(V+1))._add(z)._unit(),a.addPieSliceVertex(v,a.distance,N,F,f);a.addPieSliceVertex(v,a.distance,E,F,f);for(var $=V-1;$>=0;$--)N=z.mult(($+1)/(V+1))._add(A)._unit(),a.addPieSliceVertex(v,a.distance,N,F,f)}S&&a.addCurrentVertex(v,a.distance,A,-g,-_,!1,f)}else"butt"===D?(w||a.addCurrentVertex(v,a.distance,z,0,0,!1,f),S&&a.addCurrentVertex(v,a.distance,A,0,0,!1,f)):"square"===D?(w||(a.addCurrentVertex(v,a.distance,z,1,1,!1,f),a.e1=a.e2=-1),S&&a.addCurrentVertex(v,a.distance,A,-1,-1,!1,f)):"round"===D&&(w||(a.addCurrentVertex(v,a.distance,z,0,0,!1,f),a.addCurrentVertex(v,a.distance,z,1,1,!0,f),a.e1=a.e2=-1),S&&(a.addCurrentVertex(v,a.distance,A,-1,-1,!0,f),a.addCurrentVertex(v,a.distance,A,0,0,!1,f)));if(L&&C<u-1){var q=v.dist(S);if(q>2*p){var Z=v.add(S.sub(v)._mult(p/q)._round());a.distance+=Z.dist(v),a.addCurrentVertex(Z,a.distance,A.mult(1),0,0,!1,f),v=Z}}w=!1}this.programConfigurations.populatePaintArrays(this.layoutVertexArray.length,s)}},w.prototype.addCurrentVertex=function(t,e,r,n,o,a,s){var l,u=this.layoutVertexArray,c=this.indexArray;l=r.clone(),n&&l._sub(r.perp()._mult(n)),i(u,t,l,a,!1,n,e),this.e3=s.vertexLength++,this.e1>=0&&this.e2>=0&&(c.emplaceBack(this.e1,this.e2,this.e3),s.primitiveLength++),this.e1=this.e2,this.e2=this.e3,l=r.mult(-1),o&&l._sub(r.perp()._mult(o)),i(u,t,l,a,!0,-o,e),this.e3=s.vertexLength++,this.e1>=0&&this.e2>=0&&(c.emplaceBack(this.e1,this.e2,this.e3),s.primitiveLength++),this.e1=this.e2,this.e2=this.e3,e>_/2&&(this.distance=0,this.addCurrentVertex(t,this.distance,r,n,o,a,s))},w.prototype.addPieSliceVertex=function(t,e,r,n,o){r=r.mult(n?-1:1);var a=this.layoutVertexArray,s=this.indexArray;i(a,t,r,!1,n,0,e),this.e3=o.vertexLength++,this.e1>=0&&this.e2>=0&&(s.emplaceBack(this.e1,this.e2,this.e3),o.primitiveLength++),n?this.e2=this.e3:this.e1=this.e3},w.programInterface=x,e.exports=w},{"../../gl/index_buffer":61,"../../gl/vertex_buffer":62,"../extent":48,"../index_array_type":50,"../load_geometry":51,"../program_configuration":53,"../segment":55,"../vertex_array_type":56,"@mapbox/vector-tile":6}],47:[function(t,e,r){"use strict";function i(t,e,r,i,n,o,a,s){t.emplaceBack(e,r,Math.round(64*i),Math.round(64*n),o,a,s?s[0]:void 0,s?s[1]:void 0)}function n(t,e,r,i){var n=2*Math.PI,o=b((r+n)%n/n*255,10*i);t.emplaceBack(e.x,e.y,o),t.emplaceBack(e.x,e.y,o),t.emplaceBack(e.x,e.y,o),t.emplaceBack(e.x,e.y,o)}function o(t,e,r,i,n,o){return t.emplaceBack(e.x,e.y,r.x,r.y,Math.round(i.x),Math.round(i.y),10*n,10*o)}function a(t,e,r){var i={};if(i.isFeatureConstant=e.isLayoutValueFeatureConstant(r),i.isZoomConstant=e.isLayoutValueZoomConstant(r),i.isFeatureConstant&&(i.layoutSize=e.getLayoutValue(r,{zoom:t+1})),!i.isZoomConstant){for(var n=e.getLayoutValueStopZoomLevels(r),o=0;o<n.length&&n[o]<=t;)o++;o=Math.max(0,o-1);for(var a=o;a<n.length&&n[a]<t+1;)a++;a=Math.min(n.length-1,a),i.coveringZoomRange=[n[o],n[a]],e.isLayoutValueFeatureConstant(r)&&(i.coveringStopValues=[e.getLayoutValue(r,{zoom:n[o]}),e.getLayoutValue(r,{zoom:n[a]})]),i.functionBase=e.getLayoutProperty(r).base,void 0===i.functionBase&&(i.functionBase=1),i.functionType=e.getLayoutProperty(r).type||"exponential"}return i}function s(t,e,r,i,n){return t.isLayoutValueZoomConstant(i)&&!t.isLayoutValueFeatureConstant(i)?[10*t.getLayoutValue(i,{},n)]:t.isLayoutValueZoomConstant(i)||t.isLayoutValueFeatureConstant(i)?null:[10*t.getLayoutValue(i,{zoom:r[0]},n),10*t.getLayoutValue(i,{zoom:r[1]},n)]}var l=t("@mapbox/point-geometry"),u=t("../segment"),c=u.SegmentVector,p=t("../../gl/vertex_buffer"),h=t("../../gl/index_buffer"),f=t("../program_configuration"),d=f.ProgramConfigurationSet,m=t("../vertex_array_type"),v=t("../index_array_type"),y=v.TriangleIndexArray,g=v.LineIndexArray,_=t("../extent"),x=t("../../shaders/encode_attribute"),b=x.packUint8ToFloat,w=t("../../symbol/anchor"),T=t("../../symbol/get_anchors"),S=t("../../util/token"),z=t("../../symbol/quads"),A=z.getGlyphQuads,C=z.getIconQuads,E=t("../../symbol/shaping"),k=E.shapeText,M=E.shapeIcon,L=E.WritingMode,I=t("../../symbol/transform_text"),P=t("../../symbol/mergelines"),R=t("../../symbol/clip_line"),D=t("../../util/util"),O=t("../../util/script_detection"),B=t("../load_geometry"),F=t("../../symbol/collision_feature"),j=t("../../util/find_pole_of_inaccessibility"),V=t("../../util/classify_rings"),N=t("@mapbox/vector-tile").VectorTileFeature.types,U=t("../../util/struct_array"),$=t("../../util/verticalize_punctuation"),q=U({members:[{type:"Int16",name:"anchorX"},{type:"Int16",name:"anchorY"},{type:"Uint16",name:"glyphStartIndex"},{type:"Uint16",name:"numGlyphs"},{type:"Uint32",name:"lineStartIndex"},{type:"Uint32",name:"lineLength"},{type:"Uint16",name:"segment"},{type:"Uint16",name:"lowerSize"},{type:"Uint16",name:"upperSize"},{type:"Float32",name:"lineOffsetX"},{type:"Float32",name:"lineOffsetY"},{type:"Float32",name:"placementZoom"},{type:"Uint8",name:"vertical"}]}),Z=U({members:[{type:"Float32",name:"offsetX"}]}),G=U({members:[{type:"Int16",name:"x"},{type:"Int16",name:"y"}]}),W=[{name:"a_pos_offset",components:4,type:"Int16"},{name:"a_data",components:4,type:"Uint16"}],H=[{name:"a_projected_pos",components:3,type:"Float32"}],X={text:{layoutAttributes:W,dynamicLayoutAttributes:H,indexArrayType:y,paintAttributes:[{property:"text-color",name:"fill_color"},{property:"text-halo-color",name:"halo_color"},{property:"text-halo-width",name:"halo_width"},{property:"text-halo-blur",name:"halo_blur"},{property:"text-opacity",name:"opacity"}]},icon:{layoutAttributes:W,dynamicLayoutAttributes:H,indexArrayType:y,paintAttributes:[{property:"icon-color",name:"fill_color"},{property:"icon-halo-color",name:"halo_color"},{property:"icon-halo-width",name:"halo_width"},{property:"icon-halo-blur",name:"halo_blur"},{property:"icon-opacity",name:"opacity"}]},collisionBox:{layoutAttributes:[{name:"a_pos",components:2,type:"Int16"},{name:"a_anchor_pos",components:2,type:"Int16"},{name:"a_extrude",components:2,type:"Int16"},{name:"a_data",components:2,type:"Uint8"}],indexArrayType:g}},K=function(t,e,r,i){this.programInterface=t;var n=m(t.layoutAttributes),o=t.indexArrayType;if(this.layoutVertexArray=new n(i&&i.layoutVertexArray),this.indexArray=new o(i&&i.indexArray),this.programConfigurations=new d(t,e,r,i&&i.programConfigurations),this.segments=new c(i&&i.segments),t.dynamicLayoutAttributes){var a=m(t.dynamicLayoutAttributes);this.dynamicLayoutVertexArray=new a(i&&i.dynamicLayoutVertexArray)}};K.prototype.serialize=function(t){return{layoutVertexArray:this.layoutVertexArray.serialize(t),indexArray:this.indexArray.serialize(t),programConfigurations:this.programConfigurations.serialize(t),segments:this.segments.get(),dynamicLayoutVertexArray:this.dynamicLayoutVertexArray&&this.dynamicLayoutVertexArray.serialize(t)}},K.prototype.upload=function(t){this.layoutVertexBuffer=new p(t,this.layoutVertexArray),this.indexBuffer=new h(t,this.indexArray),this.programConfigurations.upload(t),this.programInterface.dynamicLayoutAttributes&&(this.dynamicLayoutVertexBuffer=new p(t,this.dynamicLayoutVertexArray,!0))},K.prototype.destroy=function(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.programConfigurations.destroy(),this.segments.destroy(),this.dynamicLayoutVertexBuffer&&this.dynamicLayoutVertexBuffer.destroy())};var J=function(t){if(this.collisionBoxArray=t.collisionBoxArray,this.zoom=t.zoom,this.overscaling=t.overscaling,this.layers=t.layers,this.index=t.index,this.sdfIcons=t.sdfIcons,this.iconsNeedLinear=t.iconsNeedLinear,this.pixelRatio=t.pixelRatio,t.text)this.text=new K(X.text,t.layers,t.zoom,t.text),this.icon=new K(X.icon,t.layers,t.zoom,t.icon),this.collisionBox=new K(X.collisionBox,t.layers,t.zoom,t.collisionBox),this.textSizeData=t.textSizeData,this.iconSizeData=t.iconSizeData,this.placedGlyphArray=new q(t.placedGlyphArray),this.placedIconArray=new q(t.placedIconArray),this.glyphOffsetArray=new Z(t.glyphOffsetArray),this.lineVertexArray=new G(t.lineVertexArray);else{var e=this.layers[0];this.textSizeData=a(this.zoom,e,"text-size"),this.iconSizeData=a(this.zoom,e,"icon-size")}};J.prototype.populate=function(t,e){var r=this,i=this.layers[0],n=i.layout,o=n["text-font"],a=(!i.isLayoutValueFeatureConstant("text-field")||n["text-field"])&&o,s=!i.isLayoutValueFeatureConstant("icon-image")||n["icon-image"];if(this.features=[],a||s){for(var l=e.iconDependencies,u=e.glyphDependencies,c=u[o]=u[o]||{},p={zoom:this.zoom},h=0,f=t;h<f.length;h+=1){var d=f[h],m=d.feature,v=d.index,y=d.sourceLayerIndex;if(i.filter(m)){var g=void 0;a&&(g=i.getLayoutValue("text-field",p,m.properties),i.isLayoutValueFeatureConstant("text-field")&&(g=S(m.properties,g)),g=I(g,i,p,m.properties));var _=void 0;if(s&&(_=i.getLayoutValue("icon-image",p,m.properties),i.isLayoutValueFeatureConstant("icon-image")&&(_=S(m.properties,_))),(g||_)&&(r.features.push({text:g,icon:_,index:v,sourceLayerIndex:y,geometry:B(m),properties:m.properties,type:N[m.type]}),_&&(l[_]=!0),g))for(var x="map"===n["text-rotation-alignment"]&&"line"===n["symbol-placement"],b=O.allowsVerticalWritingMode(g),w=0;w<g.length;w++)if(c[g.charCodeAt(w)]=!0,x&&b){var T=$.lookup[g.charAt(w)];T&&(c[T.charCodeAt(0)]=!0)}}}"line"===n["symbol-placement"]&&(this.features=P(this.features))}},J.prototype.isEmpty=function(){return 0===this.icon.layoutVertexArray.length&&0===this.text.layoutVertexArray.length&&0===this.collisionBox.layoutVertexArray.length},J.prototype.serialize=function(t){return{zoom:this.zoom,layerIds:this.layers.map(function(t){return t.id}),sdfIcons:this.sdfIcons,iconsNeedLinear:this.iconsNeedLinear,textSizeData:this.textSizeData,iconSizeData:this.iconSizeData,placedGlyphArray:this.placedGlyphArray.serialize(t),placedIconArray:this.placedIconArray.serialize(t),glyphOffsetArray:this.glyphOffsetArray.serialize(t),lineVertexArray:this.lineVertexArray.serialize(t),text:this.text.serialize(t),icon:this.icon.serialize(t),collisionBox:this.collisionBox.serialize(t)}},J.prototype.upload=function(t){this.text.upload(t),this.icon.upload(t),this.collisionBox.upload(t)},J.prototype.destroy=function(){this.text.destroy(),this.icon.destroy(),this.collisionBox.destroy()},J.prototype.prepare=function(t,e,r,i){var n=this;this.symbolInstances=[];var o=512*this.overscaling;this.tilePixelRatio=_/o,this.compareText={},this.iconsNeedLinear=!1;for(var a=this.layers[0].layout,s=24*a["text-line-height"],l=a["text-font"].join(","),u="map"===a["text-rotation-alignment"]&&"line"===a["symbol-placement"],c=t[l]||{},p=e[l]||{},h=0,f=n.features;h<f.length;h+=1){var d=f[h],m={},v=d.text;if(v){var y=n.layers[0].getLayoutValue("text-offset",{zoom:n.zoom},d.properties).map(function(t){return 24*t}),g=24*n.layers[0].getLayoutValue("text-letter-spacing",{zoom:n.zoom},d.properties),x=O.allowsLetterSpacing(v)?g:0,b=n.layers[0].getLayoutValue("text-anchor",{zoom:n.zoom},d.properties),w=n.layers[0].getLayoutValue("text-justify",{zoom:n.zoom},d.properties),T="line"!==a["symbol-placement"]?24*n.layers[0].getLayoutValue("text-max-width",{zoom:n.zoom},d.properties):0,S=function(t,e){return k(t,c,T,s,b,w,x,y,24,e)};m[L.horizontal]=S(v,L.horizontal),O.allowsVerticalWritingMode(v)&&u&&(m[L.vertical]=S(v,L.vertical))}var z=void 0;if(d.icon){var A=r[d.icon];A&&(z=M(i[d.icon],n.layers[0].getLayoutValue("icon-offset",{zoom:n.zoom},d.properties),n.layers[0].getLayoutValue("icon-anchor",{zoom:n.zoom},d.properties)),void 0===n.sdfIcons?n.sdfIcons=A.sdf:n.sdfIcons!==A.sdf&&D.warnOnce("Style sheet warning: Cannot mix SDF and non-SDF icons in one buffer"),A.pixelRatio!==n.pixelRatio?n.iconsNeedLinear=!0:0===a["icon-rotate"]&&n.layers[0].isLayoutValueFeatureConstant("icon-rotate")||(n.iconsNeedLinear=!0))}(m[L.horizontal]||z)&&n.addFeature(d,m,z,p)}},J.prototype.addFeature=function(t,e,r,i){var n=this,o=this.layers[0].getLayoutValue("text-size",{zoom:this.zoom+1},t.properties),a=this.layers[0].getLayoutValue("icon-size",{zoom:this.zoom+1},t.properties),s=this.layers[0].getLayoutValue("text-offset",{zoom:this.zoom},t.properties),l=this.layers[0].getLayoutValue("icon-offset",{zoom:this.zoom},t.properties),u=this.layers[0].getLayoutValue("text-size",{zoom:18},t.properties);void 0===u&&(u=o);var c=this.layers[0].layout,p=o/24,h=this.tilePixelRatio*p,f=this.tilePixelRatio*u/24,d=this.tilePixelRatio*a,m=this.tilePixelRatio*c["symbol-spacing"],v=c["symbol-avoid-edges"],y=c["text-padding"]*this.tilePixelRatio,g=c["icon-padding"]*this.tilePixelRatio,x=c["text-max-angle"]/180*Math.PI,b="map"===c["text-rotation-alignment"]&&"line"===c["symbol-placement"],S="map"===c["icon-rotation-alignment"]&&"line"===c["symbol-placement"],z=c["text-allow-overlap"]||c["icon-allow-overlap"]||c["text-ignore-placement"]||c["icon-ignore-placement"],A=c["symbol-placement"],C=m/2,E=function(o,a){var u=!(a.x<0||a.x>_||a.y<0||a.y>_);if(!v||u){var c=u||z;n.addSymbolInstance(a,o,e,r,n.layers[0],c,n.collisionBoxArray,t.index,t.sourceLayerIndex,n.index,h,y,b,s,d,g,S,l,{zoom:n.zoom},t.properties,i)}};if("line"===A)for(var k=0,M=R(t.geometry,0,0,_,_);k<M.length;k+=1)for(var I=M[k],P=T(I,m,x,e[L.vertical]||e[L.horizontal],r,24,f,n.overscaling,_),D=0,O=P;D<O.length;D+=1){var B=O[D],F=e[L.horizontal];F&&n.anchorIsTooClose(F.text,C,B)||E(I,B)}else if("Polygon"===t.type)for(var N=0,U=V(t.geometry,0);N<U.length;N+=1){var $=U[N],q=j($,16);E($[0],new w(q.x,q.y,0))}else if("LineString"===t.type)for(var Z=0,G=t.geometry;Z<G.length;Z+=1){var W=G[Z];E(W,new w(W[0].x,W[0].y,0))}else if("Point"===t.type)for(var H=0,X=t.geometry;H<X.length;H+=1)for(var K=X[H],J=0,Y=K;J<Y.length;J+=1){var Q=Y[J];E([Q],new w(Q.x,Q.y,0))}},J.prototype.anchorIsTooClose=function(t,e,r){var i=this.compareText;if(t in i){for(var n=i[t],o=n.length-1;o>=0;o--)if(r.dist(n[o])<e)return!0}else i[t]=[];return i[t].push(r),!1},J.prototype.place=function(t,e){var r=this;this.text=new K(X.text,this.layers,this.zoom),this.icon=new K(X.icon,this.layers,this.zoom),this.collisionBox=new K(X.collisionBox,this.layers,this.zoom),this.placedGlyphArray=new q,this.placedIconArray=new q,this.glyphOffsetArray=new Z,this.lineVertexArray=new G;var i=this.layers[0],n=i.layout,o=t.maxScale,a="map"===n["text-rotation-alignment"]&&"line"===n["symbol-placement"],l="map"===n["icon-rotation-alignment"]&&"line"===n["symbol-placement"];if(n["text-allow-overlap"]||n["icon-allow-overlap"]||n["text-ignore-placement"]||n["icon-ignore-placement"]){var u=t.angle,c=Math.sin(u),p=Math.cos(u);this.symbolInstances.sort(function(t,e){return(c*t.anchor.x+p*t.anchor.y|0)-(c*e.anchor.x+p*e.anchor.y|0)||e.featureIndex-t.featureIndex})}for(var h=0,f=r.symbolInstances;h<f.length;h+=1){var d=f[h],m={boxStartIndex:d.textBoxStartIndex,boxEndIndex:d.textBoxEndIndex},v={boxStartIndex:d.iconBoxStartIndex,boxEndIndex:d.iconBoxEndIndex},y=!(d.textBoxStartIndex===d.textBoxEndIndex),g=!(d.iconBoxStartIndex===d.iconBoxEndIndex),_=n["text-optional"]||!y,x=n["icon-optional"]||!g,b=y?t.placeCollisionFeature(m,n["text-allow-overlap"],n["symbol-avoid-edges"]):t.minScale,w=g?t.placeCollisionFeature(v,n["icon-allow-overlap"],n["symbol-avoid-edges"]):t.minScale;if(_||x?!x&&b?b=Math.max(w,b):!_&&w&&(w=Math.max(w,b)):w=b=Math.max(w,b),y||g){for(var T=d.line,S=r.lineVertexArray.length,z=0;z<T.length;z++)r.lineVertexArray.emplaceBack(T[z].x,T[z].y);var A=r.lineVertexArray.length-S;if(y&&(t.insertCollisionFeature(m,b,n["text-ignore-placement"]),b<=o)){var C=s(i,r.zoom,r.textSizeData.coveringZoomRange,"text-size",d.featureProperties);r.addSymbols(r.text,d.glyphQuads,b,C,n["text-keep-upright"],d.textOffset,a,t.angle,d.featureProperties,d.writingModes,d.anchor,S,A,r.placedGlyphArray)}if(g&&(t.insertCollisionFeature(v,w,n["icon-ignore-placement"]),w<=o)){var E=s(i,r.zoom,r.iconSizeData.coveringZoomRange,"icon-size",d.featureProperties);r.addSymbols(r.icon,d.iconQuads,w,E,n["icon-keep-upright"],d.iconOffset,l,t.angle,d.featureProperties,0,d.anchor,S,A,r.placedIconArray)}}}e&&this.addToDebugBuffers(t)},J.prototype.addSymbols=function(t,e,r,o,a,s,l,u,c,p,h,f,d,m){for(var v=this,y=t.indexArray,g=t.layoutVertexArray,_=t.dynamicLayoutVertexArray,x=this.zoom,b=Math.max(Math.log(r)/Math.LN2+x,0),w=this.glyphOffsetArray.length,T=(h.angle+u+2*Math.PI)%(2*Math.PI),S=T>1*Math.PI/4&&T<=3*Math.PI/4||T>5*Math.PI/4&&T<=7*Math.PI/4,z=Boolean(p&L.vertical)&&S,A=0,C=e;A<C.length;A+=1){var E=C[A];if(!l||!a||E.writingMode===L.vertical===z){var k=E.tl,M=E.tr,I=E.bl,P=E.br,R=E.tex,D=t.segments.prepareSegment(4,t.layoutVertexArray,t.indexArray),O=D.vertexLength,B=E.glyphOffset[1];i(g,h.x,h.y,k.x,B+k.y,R.x,R.y,o),i(g,h.x,h.y,M.x,B+M.y,R.x+R.w,R.y,o),i(g,h.x,h.y,I.x,B+I.y,R.x,R.y+R.h,o),i(g,h.x,h.y,P.x,B+P.y,R.x+R.w,R.y+R.h,o),n(_,h,0,b),y.emplaceBack(O,O+1,O+2),y.emplaceBack(O+1,O+2,O+3),D.vertexLength+=4,D.primitiveLength+=2,v.glyphOffsetArray.emplaceBack(E.glyphOffset[0])}}m.emplaceBack(h.x,h.y,w,this.glyphOffsetArray.length-w,f,d,h.segment,o?o[0]:0,o?o[1]:0,s[0],s[1],b,z),t.programConfigurations.populatePaintArrays(t.layoutVertexArray.length,c)},J.prototype.addToDebugBuffers=function(t){for(var e=this,r=this.collisionBox,i=r.layoutVertexArray,n=r.indexArray,a=-t.angle,s=t.yStretch,u=0,c=e.symbolInstances;u<c.length;u+=1){var p=c[u];p.textCollisionFeature={boxStartIndex:p.textBoxStartIndex,boxEndIndex:p.textBoxEndIndex},p.iconCollisionFeature={boxStartIndex:p.iconBoxStartIndex,boxEndIndex:p.iconBoxEndIndex};for(var h=0;h<2;h++){var f=p[0===h?"textCollisionFeature":"iconCollisionFeature"];if(f)for(var d=f.boxStartIndex;d<f.boxEndIndex;d++){var m=e.collisionBoxArray.get(d);if(!(1===t.perspectiveRatio&&m.maxScale<1)){var v=m.anchorPoint,y=new l(m.x1,m.y1*s)._rotate(a),g=new l(m.x2,m.y1*s)._rotate(a),_=new l(m.x1,m.y2*s)._rotate(a),x=new l(m.x2,m.y2*s)._rotate(a),b=Math.max(0,Math.min(25,e.zoom+Math.log(m.maxScale)/Math.LN2)),w=Math.max(0,Math.min(25,e.zoom+Math.log(m.placementScale)/Math.LN2)),T=r.segments.prepareSegment(4,r.layoutVertexArray,r.indexArray),S=T.vertexLength;o(i,v,p.anchor,y,b,w),o(i,v,p.anchor,g,b,w),o(i,v,p.anchor,x,b,w),o(i,v,p.anchor,_,b,w),n.emplaceBack(S,S+1),n.emplaceBack(S+1,S+2),n.emplaceBack(S+2,S+3),n.emplaceBack(S+3,S),T.vertexLength+=4,T.primitiveLength+=4}}}}},J.prototype.addSymbolInstance=function(t,e,r,i,n,o,a,s,l,u,c,p,h,f,d,m,v,y,g,_,x){var b,w,T=[],S=[];for(var z in r){var E=parseInt(z,10);r[E]&&(S=S.concat(o?A(t,r[E],n,h,g,_,x):[]),b=new F(a,e,t,s,l,u,r[E],c,p,h,!1))}var k=b?b.boxStartIndex:this.collisionBoxArray.length,M=b?b.boxEndIndex:this.collisionBoxArray.length;i&&(T=o?C(t,i,n,v,r[L.horizontal],g,_):[],w=new F(a,e,t,s,l,u,i,d,m,v,!0));var I=w?w.boxStartIndex:this.collisionBoxArray.length,P=w?w.boxEndIndex:this.collisionBoxArray.length;M>J.MAX_INSTANCES&&D.warnOnce("Too many symbols being rendered in a tile. See https://github.com/mapbox/mapbox-gl-js/issues/2907"),P>J.MAX_INSTANCES&&D.warnOnce("Too many glyphs being rendered in a tile. See https://github.com/mapbox/mapbox-gl-js/issues/2907");var R=(r[L.vertical]?L.vertical:0)|(r[L.horizontal]?L.horizontal:0);this.symbolInstances.push({textBoxStartIndex:k,textBoxEndIndex:M,iconBoxStartIndex:I,iconBoxEndIndex:P,glyphQuads:S,iconQuads:T,textOffset:f,iconOffset:y,anchor:t,line:e,featureIndex:s,featureProperties:_,writingModes:R})},J.programInterfaces=X,J.MAX_INSTANCES=65535,J.addDynamicAttributes=n,e.exports=J},{"../../gl/index_buffer":61,"../../gl/vertex_buffer":62,"../../shaders/encode_attribute":85,"../../symbol/anchor":167,"../../symbol/clip_line":169,"../../symbol/collision_feature":171,"../../symbol/get_anchors":173,"../../symbol/mergelines":174,"../../symbol/quads":176,"../../symbol/shaping":177,"../../symbol/transform_text":179,"../../util/classify_rings":205,"../../util/find_pole_of_inaccessibility":211,"../../util/script_detection":218,"../../util/struct_array":220,"../../util/token":222,"../../util/util":223,"../../util/verticalize_punctuation":225,"../extent":48,"../index_array_type":50,"../load_geometry":51,"../program_configuration":53,"../segment":55,"../vertex_array_type":56,"@mapbox/point-geometry":2,"@mapbox/vector-tile":6}],48:[function(t,e,r){"use strict";e.exports=8192},{}],49:[function(t,e,r){"use strict";function i(t,e){return e-t}var n=(t("@mapbox/point-geometry"),t("./load_geometry")),o=t("./extent"),a=t("../style-spec/feature_filter"),s=t("../util/struct_array"),l=t("grid-index"),u=t("../util/dictionary_coder"),c=t("@mapbox/vector-tile"),p=t("pbf"),h=t("../util/vectortile_to_geojson"),f=t("../util/util").arraysIntersect,d=s({members:[{type:"Uint32",name:"featureIndex"},{type:"Uint16",name:"sourceLayerIndex"},{type:"Uint16",name:"bucketIndex"}]}),m=function(t,e,r,i){this.coord=t,this.overscaling=e,this.x=t.x,this.y=t.y,this.z=t.z-Math.log(e)/Math.LN2,this.grid=r||new l(o,16,0),this.featureIndexArray=i||new d};m.deserialize=function(t,e,r){var i=new m(t.coord,t.overscaling,new l(t.grid),new d(t.featureIndexArray));return i.rawTileData=e,i.bucketLayerIDs=t.bucketLayerIDs,i.setCollisionTile(r),i},m.prototype.insert=function(t,e,r,i,n){var o=this,a=this.featureIndexArray.length;this.featureIndexArray.emplaceBack(r,i,n);for(var s=0;s<e.length;s++){for(var l=e[s],u=[1/0,1/0,-1/0,-1/0],c=0;c<l.length;c++){var p=l[c];u[0]=Math.min(u[0],p.x),u[1]=Math.min(u[1],p.y),u[2]=Math.max(u[2],p.x),u[3]=Math.max(u[3],p.y)}o.grid.insert(a,u[0],u[1],u[2],u[3])}},m.prototype.setCollisionTile=function(t){this.collisionTile=t},m.prototype.serialize=function(t){var e=this.grid.toArrayBuffer();return t&&t.push(e),{coord:this.coord,overscaling:this.overscaling,grid:e,featureIndexArray:this.featureIndexArray.serialize(t),bucketLayerIDs:this.bucketLayerIDs}},m.prototype.query=function(t,e){this.vtLayers||(this.vtLayers=new c.VectorTile(new p(this.rawTileData)).layers,this.sourceLayerCoder=new u(this.vtLayers?Object.keys(this.vtLayers).sort():["_geojsonTileLayer"]));for(var r={},n=t.params||{},s=o/t.tileSize/t.scale,l=a(n.filter),h=t.queryGeometry,f=t.additionalRadius*s,d=1/0,m=1/0,v=-1/0,y=-1/0,g=0;g<h.length;g++)for(var _=h[g],x=0;x<_.length;x++){var b=_[x];d=Math.min(d,b.x),m=Math.min(m,b.y),v=Math.max(v,b.x),y=Math.max(y,b.y)}var w=this.grid.query(d-f,m-f,v+f,y+f);w.sort(i),this.filterMatching(r,w,this.featureIndexArray,h,l,n.layers,e,t.bearing,s);var T=this.collisionTile.queryRenderedSymbols(h,t.scale);return T.sort(),this.filterMatching(r,T,this.collisionTile.collisionBoxArray,h,l,n.layers,e,t.bearing,s),r},m.prototype.filterMatching=function(t,e,r,i,o,a,s,l,u){for(var c,p=this,d=0;d<e.length;d++){var m=e[d];if(m!==c){c=m;var v=r.get(m),y=p.bucketLayerIDs[v.bucketIndex];if(!a||f(a,y)){var g=p.sourceLayerCoder.decode(v.sourceLayerIndex),_=p.vtLayers[g],x=_.feature(v.featureIndex);if(o(x))for(var b=null,w=0;w<y.length;w++){var T=y[w];if(!(a&&a.indexOf(T)<0)){var S=s[T];if(S&&("symbol"===S.type||(b||(b=n(x)),S.queryIntersectsFeature(i,x,b,p.z,l,u)))){var z=new h(x,p.z,p.x,p.y);z.layer=S.serialize();var A=t[T];void 0===A&&(A=t[T]=[]),A.push({featureIndex:m,feature:z})}}}}}}},m.prototype.hasLayer=function(t){for(var e=this,r=0,i=e.bucketLayerIDs;r<i.length;r+=1)for(var n=i[r],o=0,a=n;o<a.length;o+=1){var s=a[o];if(t===s)return!0}return!1},e.exports=m},{"../style-spec/feature_filter":110,"../util/dictionary_coder":207,"../util/struct_array":220,"../util/util":223,"../util/vectortile_to_geojson":224,"./extent":48,"./load_geometry":51,"@mapbox/point-geometry":2,"@mapbox/vector-tile":6,"grid-index":22,pbf:29}],50:[function(t,e,r){"use strict";function i(t){return n({members:[{type:"Uint16",name:"vertices",components:t}]})}var n=t("../util/struct_array");e.exports={LineIndexArray:i(2),TriangleIndexArray:i(3)}},{"../util/struct_array":220}],51:[function(t,e,r){"use strict";var i=t("../util/util"),n=t("./extent"),o=function(t){return{min:-1*Math.pow(2,t-1),max:Math.pow(2,t-1)-1}}(16);e.exports=function(t){for(var e=n/t.extent,r=t.loadGeometry(),a=0;a<r.length;a++)for(var s=r[a],l=0;l<s.length;l++){var u=s[l];u.x=Math.round(u.x*e),u.y=Math.round(u.y*e),(u.x<o.min||u.x>o.max||u.y<o.min||u.y>o.max)&&i.warnOnce("Geometry exceeds allowed extent, reduce your vector tile buffer size")}return r}},{"../util/util":223,"./extent":48}],52:[function(t,e,r){"use strict";var i=t("../util/struct_array"),n=i({members:[{name:"a_pos",type:"Int16",components:2}]});e.exports=n},{"../util/struct_array":220}],53:[function(t,e,r){"use strict";function i(t){return[a(255*t[0],255*t[1]),a(255*t[2],255*t[3])]}var n=t("./vertex_array_type"),o=t("../style-spec/function").interpolationFactor,a=t("../shaders/encode_attribute").packUint8ToFloat,s=t("../gl/vertex_buffer"),l=function(t,e,r,i){this.name=t,this.type=e,this.property=r,this.useIntegerZoom=i};l.prototype.defines=function(){return["#define HAS_UNIFORM_u_"+this.name]},l.prototype.populatePaintArray=function(){},l.prototype.setUniforms=function(t,e,r,i){var n=i.zoom,o=r.getPaintValue(this.property,{zoom:this.useIntegerZoom?Math.floor(n):n});"color"===this.type?t.uniform4fv(e.uniforms["u_"+this.name],o):t.uniform1f(e.uniforms["u_"+this.name],o)};var u=function(t,e,r){this.name=t,this.type=e,this.property=r};u.prototype.defines=function(){return[]},u.prototype.populatePaintArray=function(t,e,r,n,o,a){var s=this,l=t.getPaintValue(this.property,void 0,a);if("color"===this.type)for(var u=i(l),c=n;c<o;c++){var p=e.get(c);p["a_"+s.name+"0"]=u[0],p["a_"+s.name+"1"]=u[1]}else{for(var h=n;h<o;h++)e.get(h)["a_"+s.name]=l;var f=r[this.property];f.max=Math.max(f.max,l)}},u.prototype.setUniforms=function(t,e){t.uniform1f(e.uniforms["a_"+this.name+"_t"],0)};var c=function(t,e,r,i,n){this.name=t,this.type=e,this.property=r,this.useIntegerZoom=i,this.zoom=n};c.prototype.defines=function(){return[]},c.prototype.populatePaintArray=function(t,e,r,n,o,a){var s=this,l=t.getPaintValue(this.property,{zoom:this.zoom},a),u=t.getPaintValue(this.property,{zoom:this.zoom+1},a);if("color"===this.type)for(var c=i(l),p=i(u),h=n;h<o;h++){var f=e.get(h);f["a_"+s.name+"0"]=c[0],f["a_"+s.name+"1"]=c[1],f["a_"+s.name+"2"]=p[0],f["a_"+s.name+"3"]=p[1]}else{for(var d=n;d<o;d++){var m=e.get(d);m["a_"+s.name+"0"]=l,m["a_"+s.name+"1"]=u}var v=r[this.property];v.max=Math.max(v.max,l,u)}},c.prototype.setUniforms=function(t,e,r,i){var n=i.zoom,a=o(this.useIntegerZoom?Math.floor(n):n,1,this.zoom,this.zoom+1);t.uniform1f(e.uniforms["a_"+this.name+"_t"],a)};var p=function(){this.binders={},this.cacheKey=""};p.createDynamic=function(t,e,r){for(var i=new p,o=[],a=0,s=t.paintAttributes||[];a<s.length;a+=1){var h=s[a],f=h.property,d=h.useIntegerZoom||!1,m=h.name||f.replace(e.type+"-","").replace(/-/g,"_"),v=e._paintSpecifications[f].type;e.isPaintValueFeatureConstant(f)?(i.binders[m]=new l(m,v,f,d),i.cacheKey+="/u_"+m):e.isPaintValueZoomConstant(f)?(i.binders[m]=new u(m,v,f),i.cacheKey+="/a_"+m,o.push({name:"a_"+m,type:"Float32",components:"color"===v?2:1})):(i.binders[m]=new c(m,v,f,d,r),i.cacheKey+="/z_"+m,o.push({name:"a_"+m,type:"Float32",components:"color"===v?4:2}))}return i.PaintVertexArray=n(o),i.interface=t,i.layer=e,i},p.createBasicFill=function(){var t=new p;return t.binders.color=new l("color","color","fill-color",!1),t.cacheKey+="/u_color",t.binders.opacity=new l("opacity","number","fill-opacity",!1),t.cacheKey+="/u_opacity",t},p.prototype.createPaintPropertyStatistics=function(){var t=this,e={};for(var r in t.binders)e[t.binders[r].property]={max:-1/0};return e},p.prototype.populatePaintArray=function(t,e){var r=this,i=this.paintVertexArray;if(0!==i.bytesPerElement){var n=i.length;i.resize(t);for(var o in r.binders)r.binders[o].populatePaintArray(r.layer,i,r.paintPropertyStatistics,n,t,e)}},p.prototype.defines=function(){var t=this,e=[];for(var r in t.binders)e.push.apply(e,t.binders[r].defines());return e},p.prototype.setUniforms=function(t,e,r,i){var n=this;for(var o in n.binders)n.binders[o].setUniforms(t,e,r,i)},p.prototype.serialize=function(t){return 0===this.paintVertexArray.length?null:{array:this.paintVertexArray.serialize(t),type:this.paintVertexArray.constructor.serialize(),statistics:this.paintPropertyStatistics}},p.deserialize=function(t,e,r,i){var o=p.createDynamic(t,e,r);return i&&(o.PaintVertexArray=n(i.type.members),o.paintVertexArray=new o.PaintVertexArray(i.array),o.paintPropertyStatistics=i.statistics),o},p.prototype.upload=function(t){this.paintVertexArray&&(this.paintVertexBuffer=new s(t,this.paintVertexArray))},p.prototype.destroy=function(){this.paintVertexBuffer&&this.paintVertexBuffer.destroy()};var h=function(t,e,r,i){var n=this;if(this.programConfigurations={},i)for(var o=0,a=e;o<a.length;o+=1){var s=a[o];n.programConfigurations[s.id]=p.deserialize(t,s,r,i[s.id])}else for(var l=0,u=e;l<u.length;l+=1){var c=u[l],h=p.createDynamic(t,c,r);h.paintVertexArray=new h.PaintVertexArray,h.paintPropertyStatistics=h.createPaintPropertyStatistics(),n.programConfigurations[c.id]=h}};h.prototype.populatePaintArrays=function(t,e){var r=this;for(var i in r.programConfigurations)r.programConfigurations[i].populatePaintArray(t,e)},h.prototype.serialize=function(t){var e=this,r={};for(var i in e.programConfigurations){var n=e.programConfigurations[i].serialize(t);n&&(r[i]=n)}return r},h.prototype.get=function(t){return this.programConfigurations[t]},h.prototype.upload=function(t){var e=this;for(var r in e.programConfigurations)e.programConfigurations[r].upload(t)},h.prototype.destroy=function(){var t=this;for(var e in t.programConfigurations)t.programConfigurations[e].destroy()},e.exports={ProgramConfiguration:p,ProgramConfigurationSet:h}},{"../gl/vertex_buffer":62,"../shaders/encode_attribute":85,"../style-spec/function":112,"./vertex_array_type":56}],54:[function(t,e,r){"use strict";var i=t("../util/struct_array"),n=i({members:[{name:"a_pos",type:"Int16",components:2},{name:"a_texture_pos",type:"Int16",components:2}]});e.exports=n},{"../util/struct_array":220}],55:[function(t,e,r){"use strict";var i=t("../util/util"),n=i.warnOnce,o=Math.pow(2,16)-1,a=function(t){void 0===t&&(t=[]),this.segments=t};a.prototype.prepareSegment=function(t,r,i){var a=this.segments[this.segments.length-1];return t>o&&n("Max vertices per segment is "+o+": bucket requested "+t),(!a||a.vertexLength+t>e.exports.MAX_VERTEX_ARRAY_LENGTH)&&(a={vertexOffset:r.length,primitiveOffset:i.length,vertexLength:0,primitiveLength:0},this.segments.push(a)),a},a.prototype.get=function(){return this.segments},a.prototype.destroy=function(){for(var t=this,e=0,r=t.segments;e<r.length;e+=1){var i=r[e];for(var n in i.vaos)i.vaos[n].destroy()}},e.exports={SegmentVector:a,MAX_VERTEX_ARRAY_LENGTH:o}},{"../util/util":223}],56:[function(t,e,r){"use strict";function i(t){return n({members:t,alignment:4})}var n=t("../util/struct_array");e.exports=i},{"../util/struct_array":220}],57:[function(t,e,r){"use strict";var i=function(t,e,r){this.column=t,this.row=e,this.zoom=r};i.prototype.clone=function(){return new i(this.column,this.row,this.zoom)},i.prototype.zoomTo=function(t){return this.clone()._zoomTo(t)},i.prototype.sub=function(t){return this.clone()._sub(t)},i.prototype._zoomTo=function(t){var e=Math.pow(2,t-this.zoom);return this.column*=e,this.row*=e,this.zoom=t,this},i.prototype._sub=function(t){return t=t.zoomTo(this.zoom),this.column-=t.column,this.row-=t.row,this},e.exports=i},{}],58:[function(t,e,r){"use strict";var i=t("../util/util").wrap,n=function(t,e){if(isNaN(t)||isNaN(e))throw new Error("Invalid LngLat object: ("+t+", "+e+")");if(this.lng=+t,this.lat=+e,this.lat>90||this.lat<-90)throw new Error("Invalid LngLat latitude value: must be between -90 and 90")};n.prototype.wrap=function(){return new n(i(this.lng,-180,180),this.lat)},n.prototype.toArray=function(){return[this.lng,this.lat]},n.prototype.toString=function(){return"LngLat("+this.lng+", "+this.lat+")"},n.prototype.toBounds=function(e){var r=360*e/40075017,i=r/Math.cos(Math.PI/180*this.lat);return new(t("./lng_lat_bounds"))(new n(this.lng-i,this.lat-r),new n(this.lng+i,this.lat+r))},n.convert=function(t){if(t instanceof n)return t;if(Array.isArray(t)&&2===t.length)return new n(Number(t[0]),Number(t[1]));if(!Array.isArray(t)&&"object"==typeof t&&null!==t)return new n(Number(t.lng),Number(t.lat));throw new Error("`LngLatLike` argument must be specified as a LngLat instance, an object {lng: <lng>, lat: <lat>}, or an array of [<lng>, <lat>]")},e.exports=n},{"../util/util":223,"./lng_lat_bounds":59}],59:[function(t,e,r){"use strict";var i=t("./lng_lat"),n=function(t,e){t&&(e?this.setSouthWest(t).setNorthEast(e):4===t.length?this.setSouthWest([t[0],t[1]]).setNorthEast([t[2],t[3]]):this.setSouthWest(t[0]).setNorthEast(t[1]))};n.prototype.setNorthEast=function(t){return this._ne=t instanceof i?new i(t.lng,t.lat):i.convert(t),this},n.prototype.setSouthWest=function(t){return this._sw=t instanceof i?new i(t.lng,t.lat):i.convert(t),this},n.prototype.extend=function(t){var e,r,o=this._sw,a=this._ne;if(t instanceof i)e=t,r=t;else{if(!(t instanceof n))return Array.isArray(t)?t.every(Array.isArray)?this.extend(n.convert(t)):this.extend(i.convert(t)):this;if(e=t._sw,r=t._ne,!e||!r)return this}return o||a?(o.lng=Math.min(e.lng,o.lng),o.lat=Math.min(e.lat,o.lat),a.lng=Math.max(r.lng,a.lng),a.lat=Math.max(r.lat,a.lat)):(this._sw=new i(e.lng,e.lat),this._ne=new i(r.lng,r.lat)),this},n.prototype.getCenter=function(){return new i((this._sw.lng+this._ne.lng)/2,(this._sw.lat+this._ne.lat)/2)},n.prototype.getSouthWest=function(){return this._sw},n.prototype.getNorthEast=function(){return this._ne},n.prototype.getNorthWest=function(){return new i(this.getWest(),this.getNorth())},n.prototype.getSouthEast=function(){return new i(this.getEast(),this.getSouth())},n.prototype.getWest=function(){return this._sw.lng},n.prototype.getSouth=function(){return this._sw.lat},n.prototype.getEast=function(){return this._ne.lng},n.prototype.getNorth=function(){return this._ne.lat},n.prototype.toArray=function(){return[this._sw.toArray(),this._ne.toArray()]},n.prototype.toString=function(){return"LngLatBounds("+this._sw.toString()+", "+this._ne.toString()+")"},n.convert=function(t){return!t||t instanceof n?t:new n(t)},e.exports=n},{"./lng_lat":58}],60:[function(t,e,r){"use strict";var i=t("./lng_lat"),n=t("@mapbox/point-geometry"),o=t("./coordinate"),a=t("../util/util"),s=t("../style-spec/util/interpolate"),l=t("../source/tile_coord"),u=t("../data/extent"),c=t("@mapbox/gl-matrix"),p=c.vec4,h=c.mat4,f=c.mat2,d=function(t,e,r){this.tileSize=512,this._renderWorldCopies=void 0===r||r,this._minZoom=t||0,this._maxZoom=e||22,this.latRange=[-85.05113,85.05113],this.width=0,this.height=0,this._center=new i(0,0),this.zoom=0,this.angle=0,this._fov=.6435011087932844,this._pitch=0,this._unmodified=!0},m={minZoom:{},maxZoom:{},renderWorldCopies:{},worldSize:{},centerPoint:{},size:{},bearing:{},pitch:{},fov:{},zoom:{},center:{},unmodified:{},x:{},y:{},point:{}};m.minZoom.get=function(){return this._minZoom},m.minZoom.set=function(t){this._minZoom!==t&&(this._minZoom=t,this.zoom=Math.max(this.zoom,t))},m.maxZoom.get=function(){return this._maxZoom},m.maxZoom.set=function(t){this._maxZoom!==t&&(this._maxZoom=t,this.zoom=Math.min(this.zoom,t))},m.renderWorldCopies.get=function(){return this._renderWorldCopies},m.worldSize.get=function(){return this.tileSize*this.scale},m.centerPoint.get=function(){return this.size._div(2)},m.size.get=function(){return new n(this.width,this.height)},m.bearing.get=function(){return-this.angle/Math.PI*180},m.bearing.set=function(t){var e=-a.wrap(t,-180,180)*Math.PI/180;this.angle!==e&&(this._unmodified=!1,this.angle=e,this._calcMatrices(),this.rotationMatrix=f.create(),f.rotate(this.rotationMatrix,this.rotationMatrix,this.angle))},m.pitch.get=function(){return this._pitch/Math.PI*180},m.pitch.set=function(t){var e=a.clamp(t,0,60)/180*Math.PI;this._pitch!==e&&(this._unmodified=!1,this._pitch=e,this._calcMatrices())},m.fov.get=function(){return this._fov/Math.PI*180},m.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())},m.zoom.get=function(){return this._zoom},m.zoom.set=function(t){var e=Math.min(Math.max(t,this.minZoom),this.maxZoom);this._zoom!==e&&(this._unmodified=!1,this._zoom=e,this.scale=this.zoomScale(e),this.tileZoom=Math.floor(e),this.zoomFraction=e-this.tileZoom,this._constrain(),this._calcMatrices())},m.center.get=function(){return this._center},m.center.set=function(t){t.lat===this._center.lat&&t.lng===this._center.lng||(this._unmodified=!1,this._center=t,this._constrain(),this._calcMatrices())},d.prototype.coveringZoomLevel=function(t){return(t.roundZoom?Math.round:Math.floor)(this.zoom+this.scaleZoom(this.tileSize/t.tileSize))},d.prototype.getVisibleWrappedCoordinates=function(t){for(var e=this.pointCoordinate(new n(0,0),0),r=this.pointCoordinate(new n(this.width,0),0),i=Math.floor(e.column),o=Math.floor(r.column),a=[t],s=i;s<=o;s++)0!==s&&a.push(new l(t.z,t.x,t.y,s));return a},d.prototype.coveringTiles=function(t){var e=this.coveringZoomLevel(t),r=e;if(void 0!==t.minzoom&&e<t.minzoom)return[];void 0!==t.maxzoom&&e>t.maxzoom&&(e=t.maxzoom);var i=this.pointCoordinate(this.centerPoint,e),o=new n(i.column-.5,i.row-.5),a=[this.pointCoordinate(new n(0,0),e),this.pointCoordinate(new n(this.width,0),e),this.pointCoordinate(new n(this.width,this.height),e),this.pointCoordinate(new n(0,this.height),e)];return l.cover(e,a,t.reparseOverscaled?r:e,this._renderWorldCopies).sort(function(t,e){return o.dist(t)-o.dist(e)})},d.prototype.resize=function(t,e){this.width=t,this.height=e,this.pixelsToGLUnits=[2/t,-2/e],this._constrain(),this._calcMatrices()},m.unmodified.get=function(){return this._unmodified},d.prototype.zoomScale=function(t){return Math.pow(2,t)},d.prototype.scaleZoom=function(t){return Math.log(t)/Math.LN2},d.prototype.project=function(t){return new n(this.lngX(t.lng),this.latY(t.lat))},d.prototype.unproject=function(t){return new i(this.xLng(t.x),this.yLat(t.y))},m.x.get=function(){return this.lngX(this.center.lng)},m.y.get=function(){return this.latY(this.center.lat)},m.point.get=function(){return new n(this.x,this.y)},d.prototype.lngX=function(t){return(180+t)*this.worldSize/360},d.prototype.latY=function(t){return(180-180/Math.PI*Math.log(Math.tan(Math.PI/4+t*Math.PI/360)))*this.worldSize/360},d.prototype.xLng=function(t){return 360*t/this.worldSize-180},d.prototype.yLat=function(t){var e=180-360*t/this.worldSize;return 360/Math.PI*Math.atan(Math.exp(e*Math.PI/180))-90},d.prototype.setLocationAtPoint=function(t,e){var r=this.pointCoordinate(e)._sub(this.pointCoordinate(this.centerPoint));this.center=this.coordinateLocation(this.locationCoordinate(t)._sub(r)),this._renderWorldCopies&&(this.center=this.center.wrap())},d.prototype.locationPoint=function(t){return this.coordinatePoint(this.locationCoordinate(t))},d.prototype.pointLocation=function(t){return this.coordinateLocation(this.pointCoordinate(t))},d.prototype.locationCoordinate=function(t){return new o(this.lngX(t.lng)/this.tileSize,this.latY(t.lat)/this.tileSize,this.zoom).zoomTo(this.tileZoom)},d.prototype.coordinateLocation=function(t){var e=t.zoomTo(this.zoom);return new i(this.xLng(e.column*this.tileSize),this.yLat(e.row*this.tileSize))},d.prototype.pointCoordinate=function(t,e){void 0===e&&(e=this.tileZoom);var r=[t.x,t.y,0,1],i=[t.x,t.y,1,1];p.transformMat4(r,r,this.pixelMatrixInverse),p.transformMat4(i,i,this.pixelMatrixInverse);var n=r[3],a=i[3],l=r[0]/n,u=i[0]/a,c=r[1]/n,h=i[1]/a,f=r[2]/n,d=i[2]/a,m=f===d?0:(0-f)/(d-f);return new o(s(l,u,m)/this.tileSize,s(c,h,m)/this.tileSize,this.zoom)._zoomTo(e)},d.prototype.coordinatePoint=function(t){var e=t.zoomTo(this.zoom),r=[e.column*this.tileSize,e.row*this.tileSize,0,1];return p.transformMat4(r,r,this.pixelMatrix),new n(r[0]/r[3],r[1]/r[3])},d.prototype.calculatePosMatrix=function(t,e){var r=t.toCoordinate(e),i=this.worldSize/this.zoomScale(r.zoom),n=h.identity(new Float64Array(16));return h.translate(n,n,[r.column*i,r.row*i,0]),h.scale(n,n,[i/u,i/u,1]),h.multiply(n,this.projMatrix,n),new Float32Array(n)},d.prototype.cameraToTileDistance=function(t){var e=this.calculatePosMatrix(t.coord,t.sourceMaxZoom),r=[t.tileSize/2,t.tileSize/2,0,1];return p.transformMat4(r,r,e),r[3]},d.prototype._constrain=function(){if(this.center&&this.width&&this.height&&!this._constraining){this._constraining=!0;var t,e,r,i,o=-90,a=90,s=-180,l=180,u=this.size,c=this._unmodified;if(this.latRange){var p=this.latRange;o=this.latY(p[1]),a=this.latY(p[0]),t=a-o<u.y?u.y/(a-o):0}if(this.lngRange){var h=this.lngRange;s=this.lngX(h[0]),l=this.lngX(h[1]),e=l-s<u.x?u.x/(l-s):0}var f=Math.max(e||0,t||0);if(f)return this.center=this.unproject(new n(e?(l+s)/2:this.x,t?(a+o)/2:this.y)),this.zoom+=this.scaleZoom(f),this._unmodified=c,void(this._constraining=!1);if(this.latRange){var d=this.y,m=u.y/2;d-m<o&&(i=o+m),d+m>a&&(i=a-m)}if(this.lngRange){var v=this.x,y=u.x/2;v-y<s&&(r=s+y),v+y>l&&(r=l-y)}void 0===r&&void 0===i||(this.center=this.unproject(new n(void 0!==r?r:this.x,void 0!==i?i:this.y))),this._unmodified=c,this._constraining=!1}},d.prototype._calcMatrices=function(){if(this.height){this.cameraToCenterDistance=.5/Math.tan(this._fov/2)*this.height;var t=this._fov/2,e=Math.PI/2+this._pitch,r=Math.sin(t)*this.cameraToCenterDistance/Math.sin(Math.PI-e-t),i=Math.cos(Math.PI/2-this._pitch)*r+this.cameraToCenterDistance,n=1.01*i,o=new Float64Array(16);h.perspective(o,this._fov,this.width/this.height,1,n),h.scale(o,o,[1,-1,1]),h.translate(o,o,[0,0,-this.cameraToCenterDistance]),h.rotateX(o,o,this._pitch),h.rotateZ(o,o,this.angle),h.translate(o,o,[-this.x,-this.y,0]);var a=this.worldSize/(2*Math.PI*6378137*Math.abs(Math.cos(this.center.lat*(Math.PI/180))));if(h.scale(o,o,[1,1,a,1]),this.projMatrix=o,o=h.create(),h.scale(o,o,[this.width/2,-this.height/2,1]),h.translate(o,o,[1,-1,0]),this.pixelMatrix=h.multiply(new Float64Array(16),o,this.projMatrix),!(o=h.invert(new Float64Array(16),this.pixelMatrix)))throw new Error("failed to invert matrix");this.pixelMatrixInverse=o}},Object.defineProperties(d.prototype,m),e.exports=d},{"../data/extent":48,"../source/tile_coord":101,"../style-spec/util/interpolate":127,"../util/util":223,"./coordinate":57,"./lng_lat":58,"@mapbox/gl-matrix":1,"@mapbox/point-geometry":2}],61:[function(t,e,r){"use strict";var i=function(t,e){this.gl=t,this.buffer=t.createBuffer(),void 0===t.extVertexArrayObject&&(t.extVertexArrayObject=t.getExtension("OES_vertex_array_object")),t.extVertexArrayObject&&t.extVertexArrayObject.bindVertexArrayOES(null),t.bindBuffer(t.ELEMENT_ARRAY_BUFFER,this.buffer),t.bufferData(t.ELEMENT_ARRAY_BUFFER,e.arrayBuffer,t.STATIC_DRAW),delete e.arrayBuffer};i.prototype.bind=function(){this.gl.bindBuffer(this.gl.ELEMENT_ARRAY_BUFFER,this.buffer)},i.prototype.destroy=function(){this.buffer&&(this.gl.deleteBuffer(this.buffer),delete this.buffer)},e.exports=i},{}],62:[function(t,e,r){"use strict";var i={Int8:"BYTE",Uint8:"UNSIGNED_BYTE",Int16:"SHORT",Uint16:"UNSIGNED_SHORT",Int32:"INT",Uint32:"UNSIGNED_INT",Float32:"FLOAT"},n=function(t,e,r){this.length=e.length,this.attributes=e.members,this.itemSize=e.bytesPerElement,this.dynamicDraw=r,this.gl=t,this.buffer=t.createBuffer(),this.gl.bindBuffer(t.ARRAY_BUFFER,this.buffer),this.gl.bufferData(t.ARRAY_BUFFER,e.arrayBuffer,this.dynamicDraw?t.DYNAMIC_DRAW:t.STATIC_DRAW),this.dynamicDraw||delete e.arrayBuffer};n.prototype.bind=function(){this.gl.bindBuffer(this.gl.ARRAY_BUFFER,this.buffer)},n.prototype.updateData=function(t){this.bind(),this.gl.bufferSubData(this.gl.ARRAY_BUFFER,0,t.arrayBuffer)},n.prototype.enableAttributes=function(t,e){for(var r=this,i=0;i<this.attributes.length;i++){var n=r.attributes[i],o=e.attributes[n.name];void 0!==o&&t.enableVertexAttribArray(o)}},n.prototype.setVertexAttribPointers=function(t,e,r){for(var n=this,o=0;o<this.attributes.length;o++){var a=n.attributes[o],s=e.attributes[a.name];void 0!==s&&t.vertexAttribPointer(s,a.components,t[i[a.type]],!1,n.itemSize,a.offset+n.itemSize*(r||0))}},n.prototype.destroy=function(){this.buffer&&(this.gl.deleteBuffer(this.buffer),delete this.buffer)},e.exports=n},{}],63:[function(t,e,r){"use strict";var i=t("mapbox-gl-supported"),n=t("./util/browser"),o=t("../package.json").version,a=t("./ui/map"),s=t("./ui/control/navigation_control"),l=t("./ui/control/geolocate_control"),u=t("./ui/control/attribution_control"),c=t("./ui/control/scale_control"),p=t("./ui/control/fullscreen_control"),h=t("./ui/popup"),f=t("./ui/marker"),d=t("./style/style"),m=t("./geo/lng_lat"),v=t("./geo/lng_lat_bounds"),y=t("@mapbox/point-geometry"),g=t("./util/evented"),_=t("./util/config"),x=t("./source/rtl_text_plugin");e.exports={version:o,supported:i,workerCount:Math.max(Math.floor(n.hardwareConcurrency/2),1),setRTLTextPlugin:x.setRTLTextPlugin,Map:a,NavigationControl:s,GeolocateControl:l,AttributionControl:u,ScaleControl:c,FullscreenControl:p,Popup:h,Marker:f,Style:d,LngLat:m,LngLatBounds:v,Point:y,Evented:g,config:_,get accessToken(){return _.ACCESS_TOKEN},set accessToken(t){_.ACCESS_TOKEN=t}}},{"../package.json":41,"./geo/lng_lat":58,"./geo/lng_lat_bounds":59,"./source/rtl_text_plugin":96,"./style/style":156,"./ui/control/attribution_control":182,"./ui/control/fullscreen_control":183,"./ui/control/geolocate_control":184,"./ui/control/navigation_control":186,"./ui/control/scale_control":187,"./ui/map":197,"./ui/marker":198,"./ui/popup":199,"./util/browser":202,"./util/config":206,"./util/evented":210,"@mapbox/point-geometry":2,"mapbox-gl-supported":28}],64:[function(t,e,r){"use strict";function i(t,e,r){var i=t.gl,o=t.transform,a=o.tileSize,s=r.paint["background-color"],l=r.paint["background-pattern"],u=r.paint["background-opacity"],c=l||1!==s[3]||1!==u?"translucent":"opaque";if(t.renderPass===c){i.disable(i.STENCIL_TEST),t.setDepthSublayer(0);var p;if(l){if(n.isPatternMissing(l,t))return;p=t.useProgram("fillPattern",t.basicFillProgramConfiguration),n.prepare(l,t,p),t.tileExtentPatternVAO.bind(i,p,t.tileExtentBuffer)}else p=t.useProgram("fill",t.basicFillProgramConfiguration),i.uniform4fv(p.uniforms.u_color,s),t.tileExtentVAO.bind(i,p,t.tileExtentBuffer);i.uniform1f(p.uniforms.u_opacity,u);for(var h=o.coveringTiles({tileSize:a}),f=0,d=h;f<d.length;f+=1){var m=d[f];l&&n.setTile({coord:m,tileSize:a},t,p),i.uniformMatrix4fv(p.uniforms.u_matrix,!1,t.transform.calculatePosMatrix(m)),i.drawArrays(i.TRIANGLE_STRIP,0,t.tileExtentBuffer.length)}}}var n=t("./pattern");e.exports=i},{"./pattern":80}],65:[function(t,e,r){"use strict";function i(t,e,r,i){if("translucent"===t.renderPass){var a=t.gl;t.setDepthSublayer(0),t.depthMask(!1),a.disable(a.STENCIL_TEST);for(var s=0;s<i.length;s++){var l=i[s],u=e.getTile(l),c=u.getBucket(r);if(c){var p=c.programConfigurations.get(r.id),h=t.useProgram("circle",p);if(p.setUniforms(a,h,r,{zoom:t.transform.zoom}),a.uniform1f(h.uniforms.u_camera_to_center_distance,t.transform.cameraToCenterDistance),a.uniform1i(h.uniforms.u_scale_with_map,"map"===r.paint["circle-pitch-scale"]?1:0),"map"===r.paint["circle-pitch-alignment"]){a.uniform1i(h.uniforms.u_pitch_with_map,1);var f=o(u,1,t.transform.zoom);a.uniform2f(h.uniforms.u_extrude_scale,f,f)}else a.uniform1i(h.uniforms.u_pitch_with_map,0),a.uniform2fv(h.uniforms.u_extrude_scale,t.transform.pixelsToGLUnits);a.uniform1f(h.uniforms.u_devicepixelratio,n.devicePixelRatio),a.uniformMatrix4fv(h.uniforms.u_matrix,!1,t.translatePosMatrix(l.posMatrix,u,r.paint["circle-translate"],r.paint["circle-translate-anchor"])),h.draw(a,a.TRIANGLES,r.id,c.layoutVertexBuffer,c.indexBuffer,c.segments,p)}}}}var n=t("../util/browser"),o=t("../source/pixels_to_tile_units");e.exports=i},{"../source/pixels_to_tile_units":93,"../util/browser":202}],66:[function(t,e,r){"use strict";function i(t,e,r,i){var n=t.gl;n.enable(n.STENCIL_TEST);var o=t.useProgram("collisionBox");n.activeTexture(n.TEXTURE1),t.frameHistory.bind(n),n.uniform1i(o.uniforms.u_fadetexture,1);for(var a=0;a<i.length;a++){var s=i[a],l=e.getTile(s),u=l.getBucket(r);if(u){n.uniformMatrix4fv(o.uniforms.u_matrix,!1,s.posMatrix),t.enableTileClippingMask(s),t.lineWidth(1),n.uniform1f(o.uniforms.u_scale,Math.pow(2,t.transform.zoom-l.coord.z)),n.uniform1f(o.uniforms.u_zoom,10*t.transform.zoom);var c=Math.max(0,Math.min(25,l.coord.z+Math.log(l.collisionTile.maxScale)/Math.LN2));n.uniform1f(o.uniforms.u_maxzoom,10*c),n.uniform1f(o.uniforms.u_collision_y_stretch,l.collisionTile.yStretch),n.uniform1f(o.uniforms.u_pitch,t.transform.pitch/360*2*Math.PI),n.uniform1f(o.uniforms.u_camera_to_center_distance,t.transform.cameraToCenterDistance),o.draw(n,n.LINES,r.id,u.collisionBox.layoutVertexBuffer,u.collisionBox.indexBuffer,u.collisionBox.segments)}}}e.exports=i},{}],67:[function(t,e,r){"use strict";function i(t,e,r){for(var i=0;i<r.length;i++)n(t,e,r[i])}function n(t,e,r){var i=t.gl;i.disable(i.STENCIL_TEST),t.lineWidth(1*a.devicePixelRatio);var n=r.posMatrix,h=t.useProgram("debug");i.uniformMatrix4fv(h.uniforms.u_matrix,!1,n),i.uniform4f(h.uniforms.u_color,1,0,0,1),t.debugVAO.bind(i,h,t.debugBuffer),i.drawArrays(i.LINE_STRIP,0,t.debugBuffer.length);for(var f=o(r.toString(),50,200,5),d=new p,m=0;m<f.length;m+=2)d.emplaceBack(f[m],f[m+1]);var v=new u(i,d);(new c).bind(i,h,v),i.uniform4f(h.uniforms.u_color,1,1,1,1);for(var y=e.getTile(r).tileSize,g=l/(Math.pow(2,t.transform.zoom-r.z)*y),_=[[-1,-1],[-1,1],[1,-1],[1,1]],x=0;x<_.length;x++){var b=_[x];i.uniformMatrix4fv(h.uniforms.u_matrix,!1,s.translate([],n,[g*b[0],g*b[1],0])),i.drawArrays(i.LINES,0,v.length)}i.uniform4f(h.uniforms.u_color,0,0,0,1),i.uniformMatrix4fv(h.uniforms.u_matrix,!1,n),i.drawArrays(i.LINES,0,v.length)}function o(t,e,r,i){i=i||1;var n,o,a,s,l,u,c,p,f=[];for(n=0,o=t.length;n<o;n++)if(l=h[t[n]]){for(p=null,a=0,s=l[1].length;a<s;a+=2)-1===l[1][a]&&-1===l[1][a+1]?p=null:(u=e+l[1][a]*i,c=r-l[1][a+1]*i,p&&f.push(p.x,p.y,u,c),p={x:u,y:c});e+=l[0]*i}return f}var a=t("../util/browser"),s=t("@mapbox/gl-matrix").mat4,l=t("../data/extent"),u=t("../gl/vertex_buffer"),c=t("./vertex_array_object"),p=t("../data/pos_array");e.exports=i;var h={" ":[16,[]],"!":[10,[5,21,5,7,-1,-1,5,2,4,1,5,0,6,1,5,2]],'"':[16,[4,21,4,14,-1,-1,12,21,12,14]],"#":[21,[11,25,4,-7,-1,-1,17,25,10,-7,-1,-1,4,12,18,12,-1,-1,3,6,17,6]],$:[20,[8,25,8,-4,-1,-1,12,25,12,-4,-1,-1,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]],"%":[24,[21,21,3,0,-1,-1,8,21,10,19,10,17,9,15,7,14,5,14,3,16,3,18,4,20,6,21,8,21,10,20,13,19,16,19,19,20,21,21,-1,-1,17,7,15,6,14,4,14,2,16,0,18,0,20,1,21,3,21,5,19,7,17,7]],"&":[26,[23,12,23,13,22,14,21,14,20,13,19,11,17,6,15,3,13,1,11,0,7,0,5,1,4,2,3,4,3,6,4,8,5,9,12,13,13,14,14,16,14,18,13,20,11,21,9,20,8,18,8,16,9,13,11,10,16,3,18,1,20,0,22,0,23,1,23,2]],"'":[10,[5,19,4,20,5,21,6,20,6,18,5,16,4,15]],"(":[14,[11,25,9,23,7,20,5,16,4,11,4,7,5,2,7,-2,9,-5,11,-7]],")":[14,[3,25,5,23,7,20,9,16,10,11,10,7,9,2,7,-2,5,-5,3,-7]],"*":[16,[8,21,8,9,-1,-1,3,18,13,12,-1,-1,13,18,3,12]],"+":[26,[13,18,13,0,-1,-1,4,9,22,9]],",":[10,[6,1,5,0,4,1,5,2,6,1,6,-1,5,-3,4,-4]],"-":[26,[4,9,22,9]],".":[10,[5,2,4,1,5,0,6,1,5,2]],"/":[22,[20,25,2,-7]],0:[20,[9,21,6,20,4,17,3,12,3,9,4,4,6,1,9,0,11,0,14,1,16,4,17,9,17,12,16,17,14,20,11,21,9,21]],1:[20,[6,17,8,18,11,21,11,0]],2:[20,[4,16,4,17,5,19,6,20,8,21,12,21,14,20,15,19,16,17,16,15,15,13,13,10,3,0,17,0]],3:[20,[5,21,16,21,10,13,13,13,15,12,16,11,17,8,17,6,16,3,14,1,11,0,8,0,5,1,4,2,3,4]],4:[20,[13,21,3,7,18,7,-1,-1,13,21,13,0]],5:[20,[15,21,5,21,4,12,5,13,8,14,11,14,14,13,16,11,17,8,17,6,16,3,14,1,11,0,8,0,5,1,4,2,3,4]],6:[20,[16,18,15,20,12,21,10,21,7,20,5,17,4,12,4,7,5,3,7,1,10,0,11,0,14,1,16,3,17,6,17,7,16,10,14,12,11,13,10,13,7,12,5,10,4,7]],7:[20,[17,21,7,0,-1,-1,3,21,17,21]],8:[20,[8,21,5,20,4,18,4,16,5,14,7,13,11,12,14,11,16,9,17,7,17,4,16,2,15,1,12,0,8,0,5,1,4,2,3,4,3,7,4,9,6,11,9,12,13,13,15,14,16,16,16,18,15,20,12,21,8,21]],9:[20,[16,14,15,11,13,9,10,8,9,8,6,9,4,11,3,14,3,15,4,18,6,20,9,21,10,21,13,20,15,18,16,14,16,9,15,4,13,1,10,0,8,0,5,1,4,3]],":":[10,[5,14,4,13,5,12,6,13,5,14,-1,-1,5,2,4,1,5,0,6,1,5,2]],";":[10,[5,14,4,13,5,12,6,13,5,14,-1,-1,6,1,5,0,4,1,5,2,6,1,6,-1,5,-3,4,-4]],"<":[24,[20,18,4,9,20,0]],"=":[26,[4,12,22,12,-1,-1,4,6,22,6]],">":[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/extent":48,"../data/pos_array":52,"../gl/vertex_buffer":62,"../util/browser":202,"./vertex_array_object":84,"@mapbox/gl-matrix":1}],68:[function(t,e,r){"use strict";function i(t,e,r,i){var s=t.gl;s.enable(s.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"]?"opaque":"translucent";t.renderPass===l&&(t.setDepthSublayer(1),t.depthMask("opaque"===t.renderPass),n(t,e,r,i,o)),"translucent"===t.renderPass&&r.paint["fill-antialias"]&&(t.lineWidth(2),t.depthMask(!1),t.setDepthSublayer(r.getPaintProperty("fill-outline-color")?2:0),n(t,e,r,i,a))}function n(t,e,r,i,n){if(!l.isPatternMissing(r.paint["fill-pattern"],t))for(var o=!0,a=0,s=i;a<s.length;a+=1){var u=s[a],c=e.getTile(u),p=c.getBucket(r);p&&(t.enableTileClippingMask(u),n(t,e,r,c,u,p,o),o=!1)}}function o(t,e,r,i,n,o,a){var l=t.gl,u=o.programConfigurations.get(r.id);s("fill",r.paint["fill-pattern"],t,u,r,i,n,a).draw(l,l.TRIANGLES,r.id,o.layoutVertexBuffer,o.indexBuffer,o.segments,u)}function a(t,e,r,i,n,o,a){var l=t.gl,u=o.programConfigurations.get(r.id),c=r.paint["fill-pattern"]&&!r.getPaintProperty("fill-outline-color"),p=s("fillOutline",c,t,u,r,i,n,a);l.uniform2f(p.uniforms.u_world,l.drawingBufferWidth,l.drawingBufferHeight),p.draw(l,l.LINES,r.id,o.layoutVertexBuffer,o.indexBuffer2,o.segments2,u)}function s(t,e,r,i,n,o,a,s){var u,c=r.currentProgram;return e?(u=r.useProgram(t+"Pattern",i),(s||u!==c)&&(i.setUniforms(r.gl,u,n,{zoom:r.transform.zoom}),l.prepare(n.paint["fill-pattern"],r,u)),l.setTile(o,r,u)):(u=r.useProgram(t,i),(s||u!==c)&&i.setUniforms(r.gl,u,n,{zoom:r.transform.zoom})),r.gl.uniformMatrix4fv(u.uniforms.u_matrix,!1,r.translatePosMatrix(a.posMatrix,o,n.paint["fill-translate"],n.paint["fill-translate-anchor"])),u}var l=t("./pattern");e.exports=i},{"./pattern":80}],69:[function(t,e,r){"use strict";function i(t,e,r,i){if("3d"===t.renderPass){var a=t.gl;a.disable(a.STENCIL_TEST),a.enable(a.DEPTH_TEST),t.clearColor(),t.depthMask(!0);for(var s=0;s<i.length;s++)o(t,e,r,i[s])}else"translucent"===t.renderPass&&n(t,r)}function n(t,e){var r=t.prerenderedFrames[e.id];if(r){var i=t.gl,n=t.useProgram("extrusionTexture");i.disable(i.STENCIL_TEST),i.disable(i.DEPTH_TEST),i.activeTexture(i.TEXTURE0),i.bindTexture(i.TEXTURE_2D,r.texture),i.uniform1f(n.uniforms.u_opacity,e.paint["fill-extrusion-opacity"]),i.uniform1i(n.uniforms.u_image,0);var o=c.create();c.ortho(o,0,t.width,t.height,0,0,1),i.uniformMatrix4fv(n.uniforms.u_matrix,!1,o),i.uniform2f(n.uniforms.u_world,i.drawingBufferWidth,i.drawingBufferHeight),r.vao.bind(i,n,r.buffer),i.drawArrays(i.TRIANGLE_STRIP,0,4),t.viewportFrames.push(r),delete t.prerenderedFrames[e.id]}}function o(t,e,r,i){var n=e.getTile(i),o=n.getBucket(r);if(o){var s=t.gl,u=r.paint["fill-extrusion-pattern"],c=o.programConfigurations.get(r.id),p=t.useProgram(u?"fillExtrusionPattern":"fillExtrusion",c);if(c.setUniforms(s,p,r,{zoom:t.transform.zoom}),u){if(l.isPatternMissing(u,t))return;l.prepare(u,t,p),l.setTile(n,t,p),s.uniform1f(p.uniforms.u_height_factor,-Math.pow(2,i.z)/n.tileSize/8)}t.gl.uniformMatrix4fv(p.uniforms.u_matrix,!1,t.translatePosMatrix(i.posMatrix,n,r.paint["fill-extrusion-translate"],r.paint["fill-extrusion-translate-anchor"])),a(p,t),p.draw(s,s.TRIANGLES,r.id,o.layoutVertexBuffer,o.indexBuffer,o.segments,c)}}function a(t,e){var r=e.gl,i=e.style.light,n=i.calculated.position,o=[n.x,n.y,n.z],a=u.create();"viewport"===i.calculated.anchor&&u.fromRotation(a,-e.transform.angle),p.transformMat3(o,o,a),r.uniform3fv(t.uniforms.u_lightpos,o),r.uniform1f(t.uniforms.u_lightintensity,i.calculated.intensity),r.uniform3fv(t.uniforms.u_lightcolor,i.calculated.color.slice(0,3))}var s=t("@mapbox/gl-matrix"),l=t("./pattern"),u=s.mat3,c=s.mat4,p=s.vec3;e.exports=i},{"./pattern":80,"@mapbox/gl-matrix":1}],70:[function(t,e,r){"use strict";function i(t,e,r,i,a,s,l,u,c){var p,h,f,d,m=e.gl,v=a.paint["line-dasharray"],y=a.paint["line-pattern"];if(u||c){var g=1/o(r,1,e.transform.tileZoom);if(v){p=e.lineAtlas.getDash(v.from,"round"===a.layout["line-cap"]),h=e.lineAtlas.getDash(v.to,"round"===a.layout["line-cap"]);var _=p.width*v.fromScale,x=h.width*v.toScale;m.uniform2f(t.uniforms.u_patternscale_a,g/_,-p.height/2),m.uniform2f(t.uniforms.u_patternscale_b,g/x,-h.height/2),m.uniform1f(t.uniforms.u_sdfgamma,e.lineAtlas.width/(256*Math.min(_,x)*n.devicePixelRatio)/2)}else if(y){if(f=e.imageManager.getPattern(y.from),d=e.imageManager.getPattern(y.to),!f||!d)return;m.uniform2f(t.uniforms.u_pattern_size_a,f.displaySize[0]*y.fromScale/g,d.displaySize[1]),m.uniform2f(t.uniforms.u_pattern_size_b,d.displaySize[0]*y.toScale/g,d.displaySize[1]);var b=e.imageManager.getPixelSize(),w=b.width,T=b.height;m.uniform2fv(t.uniforms.u_texsize,[w,T])}m.uniform2f(t.uniforms.u_gl_units_to_pixels,1/e.transform.pixelsToGLUnits[0],1/e.transform.pixelsToGLUnits[1])}u&&(v?(m.uniform1i(t.uniforms.u_image,0),m.activeTexture(m.TEXTURE0),e.lineAtlas.bind(m),m.uniform1f(t.uniforms.u_tex_y_a,p.y),m.uniform1f(t.uniforms.u_tex_y_b,h.y),m.uniform1f(t.uniforms.u_mix,v.t)):y&&(m.uniform1i(t.uniforms.u_image,0),m.activeTexture(m.TEXTURE0),e.imageManager.bind(m),m.uniform2fv(t.uniforms.u_pattern_tl_a,f.tl),m.uniform2fv(t.uniforms.u_pattern_br_a,f.br),m.uniform2fv(t.uniforms.u_pattern_tl_b,d.tl),m.uniform2fv(t.uniforms.u_pattern_br_b,d.br),m.uniform1f(t.uniforms.u_fade,y.t))),e.enableTileClippingMask(s);var S=e.translatePosMatrix(s.posMatrix,r,a.paint["line-translate"],a.paint["line-translate-anchor"]);m.uniformMatrix4fv(t.uniforms.u_matrix,!1,S),m.uniform1f(t.uniforms.u_ratio,1/o(r,1,e.transform.zoom)),t.draw(m,m.TRIANGLES,a.id,i.layoutVertexBuffer,i.indexBuffer,i.segments,l)}var n=t("../util/browser"),o=t("../source/pixels_to_tile_units");e.exports=function(t,e,r,n){if("translucent"===t.renderPass){t.setDepthSublayer(0),t.depthMask(!1);var o=t.gl;if(o.enable(o.STENCIL_TEST),!(r.paint["line-width"]<=0))for(var a,s=r.paint["line-dasharray"]?"lineSDF":r.paint["line-pattern"]?"linePattern":"line",l=!0,u=0,c=n;u<c.length;u+=1){var p=c[u],h=e.getTile(p),f=h.getBucket(r);if(f){var d=f.programConfigurations.get(r.id),m=t.currentProgram,v=t.useProgram(s,d),y=l||v!==m,g=a!==h.coord.z;y&&d.setUniforms(t.gl,v,r,{zoom:t.transform.zoom}),i(v,t,h,f,r,p,d,y,g),a=h.coord.z,l=!1}}}}},{"../source/pixels_to_tile_units":93,"../util/browser":202}],71:[function(t,e,r){"use strict";function i(t,e,r,i){if("translucent"===t.renderPass){var l=t.gl,c=e.getSource(),p=t.useProgram("raster");l.enable(l.DEPTH_TEST),t.depthMask(!0),l.depthFunc(l.LESS),l.disable(l.STENCIL_TEST),l.uniform1f(p.uniforms.u_brightness_low,r.paint["raster-brightness-min"]),l.uniform1f(p.uniforms.u_brightness_high,r.paint["raster-brightness-max"]),l.uniform1f(p.uniforms.u_saturation_factor,a(r.paint["raster-saturation"])),l.uniform1f(p.uniforms.u_contrast_factor,o(r.paint["raster-contrast"])),l.uniform3fv(p.uniforms.u_spin_weights,n(r.paint["raster-hue-rotate"])),l.uniform1f(p.uniforms.u_buffer_scale,1),l.uniform1i(p.uniforms.u_image0,0),l.uniform1i(p.uniforms.u_image1,1);for(var h=i.length&&i[0].z,f=0,d=i;f<d.length;f+=1){var m=d[f];t.setDepthSublayer(m.z-h);var v=e.getTile(m),y=t.transform.calculatePosMatrix(m,e.getSource().maxzoom);v.registerFadeDuration(t.style.animationLoop,r.paint["raster-fade-duration"]),l.uniformMatrix4fv(p.uniforms.u_matrix,!1,y);var g=e.findLoadedParent(m,0,{}),_=s(v,g,e,r,t.transform),x=void 0,b=void 0;if(l.activeTexture(l.TEXTURE0),l.bindTexture(l.TEXTURE_2D,v.texture),l.activeTexture(l.TEXTURE1),g?(l.bindTexture(l.TEXTURE_2D,g.texture),x=Math.pow(2,g.coord.z-v.coord.z),b=[v.coord.x*x%1,v.coord.y*x%1]):l.bindTexture(l.TEXTURE_2D,v.texture),l.uniform2fv(p.uniforms.u_tl_parent,b||[0,0]),l.uniform1f(p.uniforms.u_scale_parent,x||1),l.uniform1f(p.uniforms.u_fade_t,_.mix),l.uniform1f(p.uniforms.u_opacity,_.opacity*r.paint["raster-opacity"]),c instanceof u){var w=c.boundsBuffer;c.boundsVAO.bind(l,p,w),l.drawArrays(l.TRIANGLE_STRIP,0,w.length)}else{var T=t.rasterBoundsBuffer;t.rasterBoundsVAO.bind(l,p,T),l.drawArrays(l.TRIANGLE_STRIP,0,T.length)}}l.depthFunc(l.LEQUAL)}}function n(t){t*=Math.PI/180;var e=Math.sin(t),r=Math.cos(t);return[(2*r+1)/3,(-Math.sqrt(3)*e-r+1)/3,(Math.sqrt(3)*e-r+1)/3]}function o(t){return t>0?1/(1-t):1+t}function a(t){return t>0?1-1/(1.001-t):-t}function s(t,e,r,i,n){var o=i.paint["raster-fade-duration"];if(o>0){var a=Date.now(),s=(a-t.timeAdded)/o,u=e?(a-e.timeAdded)/o:-1,c=r.getSource(),p=n.coveringZoomLevel({tileSize:c.tileSize,roundZoom:c.roundZoom}),h=!e||Math.abs(e.coord.z-p)>Math.abs(t.coord.z-p),f=h&&t.refreshedUponExpiration?1:l.clamp(h?s:1-u,0,1);return t.refreshedUponExpiration&&s>=1&&(t.refreshedUponExpiration=!1),e?{opacity:1,mix:1-f}:{opacity:f,mix:0}}return{opacity:1,mix:0}}var l=t("../util/util"),u=t("../source/image_source");e.exports=i},{"../source/image_source":91,"../util/util":223}],72:[function(t,e,r){"use strict";function i(t,e,r,i){if("translucent"===t.renderPass){var o=!(r.layout["text-allow-overlap"]||r.layout["icon-allow-overlap"]||r.layout["text-ignore-placement"]||r.layout["icon-ignore-placement"]),a=t.gl;o?a.disable(a.STENCIL_TEST):a.enable(a.STENCIL_TEST),t.setDepthSublayer(0),t.depthMask(!1),n(t,e,r,i,!1,r.paint["icon-translate"],r.paint["icon-translate-anchor"],r.layout["icon-rotation-alignment"],r.layout["icon-pitch-alignment"],r.layout["icon-keep-upright"]),n(t,e,r,i,!0,r.paint["text-translate"],r.paint["text-translate-anchor"],r.layout["text-rotation-alignment"],r.layout["text-pitch-alignment"],r.layout["text-keep-upright"]),e.map.showCollisionBoxes&&l(t,e,r,i)}}function n(t,e,r,i,n,s,l,p,h,d){var m=t.gl,v=t.transform,y="map"===p,g="map"===h,_=y&&"line"===r.layout["symbol-placement"],x=y&&!g&&!_,b=g;b?m.enable(m.DEPTH_TEST):m.disable(m.DEPTH_TEST);for(var w,T=0,S=i;T<S.length;T+=1){var z=S[T],A=e.getTile(z),C=A.getBucket(r);if(C){var E=n?C.text:C.icon;if(E&&E.segments.get().length){var k=E.programConfigurations.get(r.id),M=n||C.sdfIcons,L=n?C.textSizeData:C.iconSizeData;if(w||(w=t.useProgram(M?"symbolSDF":"symbolIcon",k),k.setUniforms(m,w,r,{zoom:t.transform.zoom}),o(w,t,r,n,x,g,L)),m.activeTexture(m.TEXTURE0),m.uniform1i(w.uniforms.u_texture,0),n)A.glyphAtlasTexture.bind(m.LINEAR,m.CLAMP_TO_EDGE),m.uniform2fv(w.uniforms.u_texsize,A.glyphAtlasTexture.size);else{var I=!r.isLayoutValueFeatureConstant("icon-size")||!r.isLayoutValueZoomConstant("icon-size")||1!==r.getLayoutValue("icon-size",{zoom:v.zoom})||C.iconsNeedLinear,P=g||0!==v.pitch;A.iconAtlasTexture.bind(M||t.options.rotating||t.options.zooming||I||P?m.LINEAR:m.NEAREST,m.CLAMP_TO_EDGE),m.uniform2fv(w.uniforms.u_texsize,A.iconAtlasTexture.size)}t.enableTileClippingMask(z),m.uniformMatrix4fv(w.uniforms.u_matrix,!1,t.translatePosMatrix(z.posMatrix,A,s,l));var R=u(A,1,t.transform.zoom),D=c.getLabelPlaneMatrix(z.posMatrix,g,y,t.transform,R),O=c.getGlCoordMatrix(z.posMatrix,g,y,t.transform,R);m.uniformMatrix4fv(w.uniforms.u_gl_coord_matrix,!1,t.translatePosMatrix(O,A,s,l,!0)),_?(m.uniformMatrix4fv(w.uniforms.u_label_plane_matrix,!1,f),c.updateLineLabels(C,z.posMatrix,t,n,D,O,g,d,R,r)):m.uniformMatrix4fv(w.uniforms.u_label_plane_matrix,!1,D),m.uniform1f(w.uniforms.u_collision_y_stretch,A.collisionTile.yStretch),a(w,k,t,r,A,E,n,M,g)}}}b||m.enable(m.DEPTH_TEST)}function o(t,e,r,i,n,o,a){var s=e.gl,l=e.transform;s.uniform1i(t.uniforms.u_pitch_with_map,o?1:0),s.uniform1f(t.uniforms.u_is_text,i?1:0),s.activeTexture(s.TEXTURE1),e.frameHistory.bind(s),s.uniform1i(t.uniforms.u_fadetexture,1),s.uniform1f(t.uniforms.u_pitch,l.pitch/360*2*Math.PI),s.uniform1i(t.uniforms.u_is_size_zoom_constant,a.isZoomConstant?1:0),s.uniform1i(t.uniforms.u_is_size_feature_constant,a.isFeatureConstant?1:0),s.uniform1f(t.uniforms.u_camera_to_center_distance,l.cameraToCenterDistance);var u=p.evaluateSizeForZoom(a,l,r,i);void 0!==u.uSizeT&&s.uniform1f(t.uniforms.u_size_t,u.uSizeT),void 0!==u.uSize&&s.uniform1f(t.uniforms.u_size,u.uSize),s.uniform1f(t.uniforms.u_aspect_ratio,l.width/l.height),s.uniform1i(t.uniforms.u_rotate_symbol,n?1:0)}function a(t,e,r,i,n,o,a,l,u){var c=r.gl,p=r.transform;if(l){var h=(a?"text":"icon")+"-halo-width",f=!i.isPaintValueFeatureConstant(h)||i.paint[h],d=u?Math.cos(p._pitch)*p.cameraToCenterDistance:1;c.uniform1f(t.uniforms.u_gamma_scale,d),f&&(c.uniform1f(t.uniforms.u_is_halo,1),s(o,i,c,t)),c.uniform1f(t.uniforms.u_is_halo,0)}s(o,i,c,t)}function s(t,e,r,i){i.draw(r,r.TRIANGLES,e.id,t.layoutVertexBuffer,t.indexBuffer,t.segments,t.programConfigurations.get(e.id),t.dynamicLayoutVertexBuffer)}var l=t("./draw_collision_debug"),u=t("../source/pixels_to_tile_units"),c=t("../symbol/projection"),p=t("../symbol/symbol_size"),h=t("@mapbox/gl-matrix").mat4,f=h.identity(new Float32Array(16));e.exports=i},{"../source/pixels_to_tile_units":93,"../symbol/projection":175,"../symbol/symbol_size":178,"./draw_collision_debug":66,"@mapbox/gl-matrix":1}],73:[function(t,e,r){"use strict";var i=function(){this.changeTimes=new Float64Array(256),this.changeOpacities=new Uint8Array(256),this.opacities=new Uint8ClampedArray(256),this.array=new Uint8Array(this.opacities.buffer),this.previousZoom=0,this.firstFrame=!0};i.prototype.record=function(t,e,r){var i=this;this.firstFrame&&(t=0,this.firstFrame=!1),e=Math.floor(10*e);var n;if(e<this.previousZoom)for(n=e+1;n<=this.previousZoom;n++)i.changeTimes[n]=t,i.changeOpacities[n]=i.opacities[n];else for(n=e;n>this.previousZoom;n--)i.changeTimes[n]=t,i.changeOpacities[n]=i.opacities[n];for(n=0;n<256;n++){var o=t-i.changeTimes[n],a=255*(r?o/r:1);i.opacities[n]=n<=e?i.changeOpacities[n]+a:i.changeOpacities[n]-a}this.changed=!0,this.previousZoom=e},i.prototype.isVisible=function(t){return 0!==this.opacities[Math.floor(10*t)]},i.prototype.bind=function(t){this.texture?(t.bindTexture(t.TEXTURE_2D,this.texture),this.changed&&(t.texSubImage2D(t.TEXTURE_2D,0,0,0,256,1,t.ALPHA,t.UNSIGNED_BYTE,this.array),this.changed=!1)):(this.texture=t.createTexture(),t.bindTexture(t.TEXTURE_2D,this.texture),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_WRAP_S,t.CLAMP_TO_EDGE),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_WRAP_T,t.CLAMP_TO_EDGE),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_MIN_FILTER,t.NEAREST),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_MAG_FILTER,t.NEAREST),t.texImage2D(t.TEXTURE_2D,0,t.ALPHA,256,1,0,t.ALPHA,t.UNSIGNED_BYTE,this.array))},e.exports=i},{}],74:[function(t,e,r){"use strict";function i(t){var e=a.create({width:0,height:0}),r={},i=new n(0,0,{autoResize:!0});for(var o in t){var l=t[o],u=r[o]={};for(var c in l){var p=l[+c];if(p&&0!==p.bitmap.width&&0!==p.bitmap.height){var h=i.packOne(p.bitmap.width+2*s,p.bitmap.height+2*s);a.resize(e,{width:i.w,height:i.h}),a.copy(p.bitmap,e,{x:0,y:0},{x:h.x+s,y:h.y+s},p.bitmap),u[c]={rect:h,metrics:p.metrics}}}}return i.shrink(),a.resize(e,{width:i.w,height:i.h}),{image:e,positions:r}}var n=t("@mapbox/shelf-pack"),o=t("../util/image"),a=o.AlphaImage,s=1;e.exports={makeGlyphAtlas:i}},{"../util/image":213,"@mapbox/shelf-pack":3}],75:[function(t,e,r){"use strict";var i=t("../style/load_glyph_range"),n=t("@mapbox/tiny-sdf"),o=t("../util/is_char_in_unicode_block"),a=t("../util/util"),s=a.asyncAll,l=t("../util/image"),u=l.AlphaImage,c=function(t,e){this.requestTransform=t,this.localIdeographFontFamily=e,this.entries={}};c.prototype.setURL=function(t){this.url=t},c.prototype.getGlyphs=function(t,e){var r=this,n=[];for(var o in t)for(var a=0,l=t[o];a<l.length;a+=1){var u=l[a];n.push({stack:o,id:u})}s(n,function(t,e){var n=t.stack,o=t.id,a=r.entries[n];a||(a=r.entries[n]={glyphs:{},requests:{}});var s=a.glyphs[o];if(void 0!==s)return void e(null,{stack:n,id:o,glyph:s});if(s=r._tinySDF(a,n,o))return void e(null,{stack:n,id:o,glyph:s});var l=Math.floor(o/256);if(256*l>65535)return void e(new Error("glyphs > 65535 not supported"));var u=a.requests[l];u||(u=a.requests[l]=[],i(n,l,r.url,r.requestTransform,function(t,e){if(e)for(var r in e)a.glyphs[+r]=e[+r];for(var i=0,n=u;i<n.length;i+=1)(0,n[i])(t,e);delete a.requests[l]})),u.push(function(t,r){t?e(t):r&&e(null,{stack:n,id:o,glyph:r[o]||null})})},function(t,r){if(t)e(t);else if(r){for(var i={},n=0,o=r;n<o.length;n+=1){var a=o[n],s=a.stack,l=a.id,u=a.glyph;(i[s]||(i[s]={}))[l]=u}e(null,i)}})},c.prototype._tinySDF=function(t,e,r){var i=this.localIdeographFontFamily;if(i&&(o["CJK Unified Ideographs"](r)||o["Hangul Syllables"](r))){var a=t.tinySDF;if(!a){var s="400";/bold/i.test(e)?s="900":/medium/i.test(e)?s="500":/light/i.test(e)&&(s="200"),a=t.tinySDF=new n(24,3,8,.25,i,s)}return{id:r,bitmap:u.create({width:30,height:30},a.draw(String.fromCharCode(r))),metrics:{width:24,height:24,left:0,top:-8,advance:24}}}},e.exports=c},{"../style/load_glyph_range":152,"../util/image":213,"../util/is_char_in_unicode_block":215,"../util/util":223,"@mapbox/tiny-sdf":4}],76:[function(t,e,r){"use strict";function i(t,e){var r=e.pixelRatio,i={x:t.x+l,y:t.y+l,w:t.w-2*l,h:t.h-2*l};return{pixelRatio:r,textureRect:i,tl:[i.x,i.y],br:[i.x+i.w,i.y+i.h],displaySize:[i.w/r,i.h/r]}}function n(t){var e=s.create({width:0,height:0}),r={},n=new o(0,0,{autoResize:!0});for(var a in t){var u=t[a],c=n.packOne(u.data.width+2*l,u.data.height+2*l);s.resize(e,{width:n.w,height:n.h}),s.copy(u.data,e,{x:0,y:0},{x:c.x+l,y:c.y+l},u.data),r[a]=i(c,u)}return n.shrink(),s.resize(e,{width:n.w,height:n.h}),{image:e,positions:r}}var o=t("@mapbox/shelf-pack"),a=t("../util/image"),s=a.RGBAImage,l=1;e.exports={imagePosition:i,makeImageAtlas:n}},{"../util/image":213,"@mapbox/shelf-pack":3}],77:[function(t,e,r){"use strict";var i=t("@mapbox/shelf-pack"),n=t("../util/image"),o=n.RGBAImage,a=t("./image_atlas"),s=a.imagePosition,l=t("./texture"),u=function(){this.images={},this.loaded=!1,this.requestors=[],this.shelfPack=new i(64,64,{autoResize:!0}),this.patterns={},this.atlasImage=o.create({width:64,height:64}),this.dirty=!0};u.prototype.isLoaded=function(){return this.loaded},u.prototype.setLoaded=function(t){var e=this;if(this.loaded!==t&&(this.loaded=t,t)){for(var r=0,i=e.requestors;r<i.length;r+=1){var n=i[r],o=n.ids,a=n.callback;e._notify(o,a)}this.requestors=[]}},u.prototype.getImage=function(t){return this.images[t]},u.prototype.addImage=function(t,e){this.images[t]=e},u.prototype.removeImage=function(t){delete this.images[t];var e=this.patterns[t];e&&(this.shelfPack.unref(e.bin),delete this.patterns[t])},u.prototype.getImages=function(t,e){var r=this,i=!0;if(!this.isLoaded())for(var n=0,o=t;n<o.length;n+=1){var a=o[n];r.images[a]||(i=!1)}this.isLoaded()||i?this._notify(t,e):this.requestors.push({ids:t,callback:e})},u.prototype._notify=function(t,e){for(var r=this,i={},n=0,o=t;n<o.length;n+=1){var a=o[n],s=r.images[a];s&&(i[a]=s)}e(null,i)},u.prototype.getPixelSize=function(){return{width:this.shelfPack.w,height:this.shelfPack.h}},u.prototype.getPattern=function(t){var e=this.patterns[t];if(e)return e.position;var r=this.getImage(t);if(!r)return null;var i=r.data.width+2,n=r.data.height+2,a=this.shelfPack.packOne(i,n);if(!a)return null;o.resize(this.atlasImage,this.getPixelSize());var l=r.data,u=this.atlasImage,c=a.x+1,p=a.y+1,h=l.width,f=l.height;o.copy(l,u,{x:0,y:0},{x:c,y:p},{width:h,height:f}),o.copy(l,u,{x:0,y:f-1},{x:c,y:p-1},{width:h,height:1}),o.copy(l,u,{x:0,y:0},{x:c,y:p+f},{width:h,height:1}),o.copy(l,u,{x:h-1,y:0},{x:c-1,y:p},{width:1,height:f}),o.copy(l,u,{x:0,y:0},{x:c+h,y:p},{width:1,height:f}),this.dirty=!0;var d=s(a,r);return this.patterns[t]={bin:a,position:d},d},u.prototype.bind=function(t){this.atlasTexture?this.dirty&&(this.atlasTexture.update(this.atlasImage),this.dirty=!1):this.atlasTexture=new l(t,this.atlasImage,t.RGBA),this.atlasTexture.bind(t.LINEAR,t.CLAMP_TO_EDGE)},e.exports=u},{"../util/image":213,"./image_atlas":76,"./texture":83,"@mapbox/shelf-pack":3}],78:[function(t,e,r){"use strict";var i=t("../util/util"),n=function(t,e){this.width=t,this.height=e,this.nextRow=0,this.bytes=4,this.data=new Uint8Array(this.width*this.height*this.bytes),this.positions={}};n.prototype.getDash=function(t,e){var r=t.join(",")+String(e);return this.positions[r]||(this.positions[r]=this.addDash(t,e)),this.positions[r]},n.prototype.addDash=function(t,e){var r=this,n=e?7:0,o=2*n+1;if(this.nextRow+o>this.height)return i.warnOnce("LineAtlas out of space"),null;for(var a=0,s=0;s<t.length;s++)a+=t[s];for(var l=this.width/a,u=l/2,c=t.length%2==1,p=-n;p<=n;p++)for(var h=r.nextRow+n+p,f=r.width*h,d=c?-t[t.length-1]:0,m=t[0],v=1,y=0;y<this.width;y++){for(;m<y/l;)d=m,m+=t[v],c&&v===t.length-1&&(m+=t[0]),v++;var g=Math.abs(y-d*l),_=Math.abs(y-m*l),x=Math.min(g,_),b=v%2==1,w=void 0;if(e){var T=n?p/n*(u+1):0;if(b){var S=u-Math.abs(T);w=Math.sqrt(x*x+S*S)}else w=u-Math.sqrt(x*x+T*T)}else w=(b?1:-1)*x;r.data[3+4*(f+y)]=Math.max(0,Math.min(255,w+128))}var z={y:(this.nextRow+n+.5)/this.height,height:2*n/this.height,width:a};return this.nextRow+=o,this.dirty=!0,z},n.prototype.bind=function(t){this.texture?(t.bindTexture(t.TEXTURE_2D,this.texture),this.dirty&&(this.dirty=!1,t.texSubImage2D(t.TEXTURE_2D,0,0,0,this.width,this.height,t.RGBA,t.UNSIGNED_BYTE,this.data))):(this.texture=t.createTexture(),t.bindTexture(t.TEXTURE_2D,this.texture),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_WRAP_S,t.REPEAT),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_WRAP_T,t.REPEAT),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_MIN_FILTER,t.LINEAR),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_MAG_FILTER,t.LINEAR),t.texImage2D(t.TEXTURE_2D,0,t.RGBA,this.width,this.height,0,t.RGBA,t.UNSIGNED_BYTE,this.data))},e.exports=n},{"../util/util":223}],79:[function(t,e,r){"use strict";var i=t("../util/browser"),n=t("@mapbox/gl-matrix").mat4,o=t("./frame_history"),a=t("../source/source_cache"),s=t("../data/extent"),l=t("../source/pixels_to_tile_units"),u=t("../util/util"),c=t("../gl/vertex_buffer"),p=t("./vertex_array_object"),h=t("../data/raster_bounds_array"),f=t("../data/pos_array"),d=t("../data/program_configuration"),m=d.ProgramConfiguration,v=t("../shaders"),y=t("./program"),g=t("./render_texture"),_={symbol:t("./draw_symbol"),circle:t("./draw_circle"),line:t("./draw_line"),fill:t("./draw_fill"),"fill-extrusion":t("./draw_fill_extrusion"),raster:t("./draw_raster"),background:t("./draw_background"),debug:t("./draw_debug")},x=function(t,e){this.gl=t,this.transform=e,this._tileTextures={},this.prerenderedFrames={},this.viewportFrames=[],this.frameHistory=new o,this.setup(),this.numSublayers=a.maxUnderzooming+a.maxOverzooming+1,this.depthEpsilon=1/Math.pow(2,16),this.lineWidthRange=t.getParameter(t.ALIASED_LINE_WIDTH_RANGE),this.basicFillProgramConfiguration=m.createBasicFill(),this.emptyProgramConfiguration=new m};x.prototype.resize=function(t,e){var r=this,n=this.gl;this.width=t*i.devicePixelRatio,this.height=e*i.devicePixelRatio,n.viewport(0,0,this.width,this.height);for(var o=0,a=r.viewportFrames;o<a.length;o+=1){var s=a[o];r.gl.deleteTexture(s.texture),r.gl.deleteFramebuffer(s.fbo)}this.viewportFrames=[],this.depthRbo&&(this.gl.deleteRenderbuffer(this.depthRbo),this.depthRbo=null)},x.prototype.setup=function(){var t=this.gl;t.enable(t.BLEND),t.blendFunc(t.ONE,t.ONE_MINUS_SRC_ALPHA),t.enable(t.STENCIL_TEST),t.enable(t.DEPTH_TEST),t.depthFunc(t.LEQUAL),this._depthMask=!1,t.depthMask(!1);var e=new f;e.emplaceBack(0,0),e.emplaceBack(s,0),e.emplaceBack(0,s),e.emplaceBack(s,s),this.tileExtentBuffer=new c(t,e),this.tileExtentVAO=new p,this.tileExtentPatternVAO=new p;var r=new f;r.emplaceBack(0,0),r.emplaceBack(s,0),r.emplaceBack(s,s),r.emplaceBack(0,s),r.emplaceBack(0,0),this.debugBuffer=new c(t,r),this.debugVAO=new p;var i=new h;i.emplaceBack(0,0,0,0),i.emplaceBack(s,0,s,0),i.emplaceBack(0,s,0,s),i.emplaceBack(s,s,s,s),this.rasterBoundsBuffer=new c(t,i),this.rasterBoundsVAO=new p,this.extTextureFilterAnisotropic=t.getExtension("EXT_texture_filter_anisotropic")||t.getExtension("MOZ_EXT_texture_filter_anisotropic")||t.getExtension("WEBKIT_EXT_texture_filter_anisotropic"),this.extTextureFilterAnisotropic&&(this.extTextureFilterAnisotropicMax=t.getParameter(this.extTextureFilterAnisotropic.MAX_TEXTURE_MAX_ANISOTROPY_EXT))},x.prototype.clearColor=function(){var t=this.gl;t.clearColor(0,0,0,0),t.clear(t.COLOR_BUFFER_BIT)},x.prototype.clearStencil=function(){var t=this.gl;t.clearStencil(0),t.stencilMask(255),t.clear(t.STENCIL_BUFFER_BIT)},x.prototype.clearDepth=function(){var t=this.gl;t.clearDepth(1),this.depthMask(!0),t.clear(t.DEPTH_BUFFER_BIT)},x.prototype._renderTileClippingMasks=function(t){var e=this,r=this.gl;r.colorMask(!1,!1,!1,!1),this.depthMask(!1),r.disable(r.DEPTH_TEST),r.enable(r.STENCIL_TEST),r.stencilMask(255),r.stencilOp(r.KEEP,r.KEEP,r.REPLACE);var i=1;this._tileClippingMaskIDs={};for(var n=0,o=t;n<o.length;n+=1){var a=o[n],s=e._tileClippingMaskIDs[a.id]=i++;r.stencilFunc(r.ALWAYS,s,255);var l=e.useProgram("fill",e.basicFillProgramConfiguration);r.uniformMatrix4fv(l.uniforms.u_matrix,!1,a.posMatrix),e.tileExtentVAO.bind(r,l,e.tileExtentBuffer),r.drawArrays(r.TRIANGLE_STRIP,0,e.tileExtentBuffer.length)}r.stencilMask(0),r.colorMask(!0,!0,!0,!0),this.depthMask(!0),r.enable(r.DEPTH_TEST)},x.prototype.enableTileClippingMask=function(t){var e=this.gl;e.stencilFunc(e.EQUAL,this._tileClippingMaskIDs[t.id],255)},x.prototype.render=function(t,e){var r=this;this.style=t,this.options=e,this.lineAtlas=t.lineAtlas,this.imageManager=t.imageManager,this.glyphManager=t.glyphManager,this.frameHistory.record(Date.now(),this.transform.zoom,t.getTransition().duration);for(var i in r.style.sourceCaches){var n=r.style.sourceCaches[i];n.used&&n.prepare(r.gl)}var o=this.style._order;this.renderPass="3d";for(var a,s=!0,l=[],u=0;u<o.length;u++){var c=r.style._layers[o[u]];if(c.has3DPass()&&!c.isHidden(r.transform.zoom)&&(c.source!==(a&&a.id)&&(a=r.style.sourceCaches[c.source],l=[],a&&(r.clearStencil(),l=a.getVisibleCoordinates()),l.reverse()),l.length)){r._setup3DRenderbuffer();var p=r.viewportFrames.pop()||new g(r);p.bindWithDepth(r.depthRbo),s&&(r.clearDepth(),s=!1),r.renderLayer(r,a,c,l),p.unbind(),r.prerenderedFrames[c.id]=p}}this.clearColor(),this.clearDepth(),this.showOverdrawInspector(e.showOverdrawInspector),this.depthRange=(t._order.length+2)*this.numSublayers*this.depthEpsilon,this.renderPass="opaque";var h,f=[];for(this.currentLayer=o.length-1,this._showOverdrawInspector||this.gl.disable(this.gl.BLEND),this.currentLayer;this.currentLayer>=0;this.currentLayer--){var d=r.style._layers[o[r.currentLayer]];d.source!==(h&&h.id)&&(h=r.style.sourceCaches[d.source],f=[],h&&(r.clearStencil(),f=h.getVisibleCoordinates(),h.getSource().isTileClipped&&r._renderTileClippingMasks(f))),r.renderLayer(r,h,d,f)}this.renderPass="translucent";var m,v=[];for(this.gl.enable(this.gl.BLEND),this.currentLayer=0,this.currentLayer;this.currentLayer<o.length;this.currentLayer++){var y=r.style._layers[o[r.currentLayer]];y.source!==(m&&m.id)&&(m=r.style.sourceCaches[y.source],v=[],m&&(r.clearStencil(),v=m.getVisibleCoordinates(),m.getSource().isTileClipped&&r._renderTileClippingMasks(v)),v.reverse()),r.renderLayer(r,m,y,v)}if(this.options.showTileBoundaries){var x=this.style.sourceCaches[Object.keys(this.style.sourceCaches)[0]];x&&_.debug(this,x,x.getVisibleCoordinates())}},x.prototype._setup3DRenderbuffer=function(){if(!this.depthRbo){var t=this.gl;this.depthRbo=t.createRenderbuffer(),t.bindRenderbuffer(t.RENDERBUFFER,this.depthRbo),t.renderbufferStorage(t.RENDERBUFFER,t.DEPTH_COMPONENT16,this.width,this.height),t.bindRenderbuffer(t.RENDERBUFFER,null)}this.depthRboAttached=!0},x.prototype.depthMask=function(t){t!==this._depthMask&&(this._depthMask=t,this.gl.depthMask(t))},x.prototype.renderLayer=function(t,e,r,i){r.isHidden(this.transform.zoom)||("background"===r.type||i.length)&&(this.id=r.id,_[r.type](t,e,r,i))},x.prototype.setDepthSublayer=function(t){var e=1-((1+this.currentLayer)*this.numSublayers+t)*this.depthEpsilon,r=e-1+this.depthRange;this.gl.depthRange(r,e)},x.prototype.translatePosMatrix=function(t,e,r,i,o){if(!r[0]&&!r[1])return t;var a=o?"map"===i?this.transform.angle:0:"viewport"===i?-this.transform.angle:0;if(a){var s=Math.sin(a),u=Math.cos(a);r=[r[0]*u-r[1]*s,r[0]*s+r[1]*u]}var c=[o?r[0]:l(e,r[0],this.transform.zoom),o?r[1]:l(e,r[1],this.transform.zoom),0],p=new Float32Array(16);return n.translate(p,t,c),p},x.prototype.saveTileTexture=function(t){var e=this._tileTextures[t.size];e?e.push(t):this._tileTextures[t.size]=[t]},x.prototype.getTileTexture=function(t){var e=this._tileTextures[t];return e&&e.length>0?e.pop():null},x.prototype.lineWidth=function(t){this.gl.lineWidth(u.clamp(t,this.lineWidthRange[0],this.lineWidthRange[1]))},x.prototype.showOverdrawInspector=function(t){if(t||this._showOverdrawInspector){this._showOverdrawInspector=t;var e=this.gl;t?(e.blendFunc(e.CONSTANT_COLOR,e.ONE),e.blendColor(1/8,1/8,1/8,0),e.clearColor(0,0,0,1),e.clear(e.COLOR_BUFFER_BIT)):e.blendFunc(e.ONE,e.ONE_MINUS_SRC_ALPHA)}},x.prototype._createProgramCached=function(t,e){this.cache=this.cache||{};var r=""+t+(e.cacheKey||"")+(this._showOverdrawInspector?"/overdraw":"");return this.cache[r]||(this.cache[r]=new y(this.gl,v[t],e,this._showOverdrawInspector)),this.cache[r]},x.prototype.useProgram=function(t,e){var r=this.gl,i=this._createProgramCached(t,e||this.emptyProgramConfiguration);return this.currentProgram!==i&&(r.useProgram(i.program),this.currentProgram=i),i},e.exports=x},{"../data/extent":48,"../data/pos_array":52,"../data/program_configuration":53,"../data/raster_bounds_array":54,"../gl/vertex_buffer":62,"../shaders":86,"../source/pixels_to_tile_units":93,"../source/source_cache":98,"../util/browser":202,"../util/util":223,"./draw_background":64,"./draw_circle":65,"./draw_debug":67,"./draw_fill":68,"./draw_fill_extrusion":69,"./draw_line":70,"./draw_raster":71,"./draw_symbol":72,"./frame_history":73,"./program":81,"./render_texture":82,"./vertex_array_object":84,"@mapbox/gl-matrix":1}],80:[function(t,e,r){"use strict";var i=t("../source/pixels_to_tile_units");r.isPatternMissing=function(t,e){if(!t)return!1;var r=e.imageManager.getPattern(t.from),i=e.imageManager.getPattern(t.to);return!r||!i},r.prepare=function(t,e,r){var i=e.gl,n=e.imageManager.getPattern(t.from),o=e.imageManager.getPattern(t.to);i.uniform1i(r.uniforms.u_image,0),i.uniform2fv(r.uniforms.u_pattern_tl_a,n.tl),i.uniform2fv(r.uniforms.u_pattern_br_a,n.br),i.uniform2fv(r.uniforms.u_pattern_tl_b,o.tl),i.uniform2fv(r.uniforms.u_pattern_br_b,o.br);var a=e.imageManager.getPixelSize(),s=a.width,l=a.height;i.uniform2fv(r.uniforms.u_texsize,[s,l]),i.uniform1f(r.uniforms.u_mix,t.t),i.uniform2fv(r.uniforms.u_pattern_size_a,n.displaySize),i.uniform2fv(r.uniforms.u_pattern_size_b,o.displaySize),i.uniform1f(r.uniforms.u_scale_a,t.fromScale),i.uniform1f(r.uniforms.u_scale_b,t.toScale),i.activeTexture(i.TEXTURE0),e.imageManager.bind(i)},r.setTile=function(t,e,r){var n=e.gl;n.uniform1f(r.uniforms.u_tile_units_to_pixels,1/i(t,1,e.transform.tileZoom));var o=Math.pow(2,t.coord.z),a=t.tileSize*Math.pow(2,e.transform.tileZoom)/o,s=a*(t.coord.x+t.coord.w*o),l=a*t.coord.y;n.uniform2f(r.uniforms.u_pixel_coord_upper,s>>16,l>>16),n.uniform2f(r.uniforms.u_pixel_coord_lower,65535&s,65535&l)}},{"../source/pixels_to_tile_units":93}],81:[function(t,e,r){"use strict";var i=t("../util/browser"),n=t("../shaders"),o=t("../data/program_configuration"),a=(o.ProgramConfiguration,t("./vertex_array_object")),s=function(t,e,r,o){var a=this;this.gl=t,this.program=t.createProgram();var s=r.defines().concat("#define DEVICE_PIXEL_RATIO "+i.devicePixelRatio.toFixed(1));o&&s.push("#define OVERDRAW_INSPECTOR;");var l=s.concat(n.prelude.fragmentSource,e.fragmentSource).join("\n"),u=s.concat(n.prelude.vertexSource,e.vertexSource).join("\n"),c=t.createShader(t.FRAGMENT_SHADER);t.shaderSource(c,l),t.compileShader(c),t.attachShader(this.program,c);var p=t.createShader(t.VERTEX_SHADER);t.shaderSource(p,u),t.compileShader(p),t.attachShader(this.program,p);for(var h=r.interface?r.interface.layoutAttributes:[],f=0;f<h.length;f++)t.bindAttribLocation(a.program,f,h[f].name);t.linkProgram(this.program),this.numAttributes=t.getProgramParameter(this.program,t.ACTIVE_ATTRIBUTES),this.attributes={},this.uniforms={};for(var d=0;d<this.numAttributes;d++){var m=t.getActiveAttrib(a.program,d);m&&(a.attributes[m.name]=t.getAttribLocation(a.program,m.name))}for(var v=t.getProgramParameter(this.program,t.ACTIVE_UNIFORMS),y=0;y<v;y++){var g=t.getActiveUniform(a.program,y);g&&(a.uniforms[g.name]=t.getUniformLocation(a.program,g.name))}};s.prototype.draw=function(t,e,r,i,n,o,s,l){for(var u,c=this,p=(u={},u[t.LINES]=2,u[t.TRIANGLES]=3,u)[e],h=0,f=o.get();h<f.length;h+=1){var d=f[h],m=d.vaos||(d.vaos={});(m[r]||(m[r]=new a)).bind(t,c,i,n,s&&s.paintVertexBuffer,d.vertexOffset,l),t.drawElements(e,d.primitiveLength*p,t.UNSIGNED_SHORT,d.primitiveOffset*p*2)}},e.exports=s},{"../data/program_configuration":53,"../shaders":86,"../util/browser":202,"./vertex_array_object":84}],82:[function(t,e,r){"use strict";var i=t("../gl/vertex_buffer"),n=t("./vertex_array_object"),o=t("../data/pos_array"),a=function(t){var e=this.gl=t.gl,r=this.texture=e.createTexture();e.bindTexture(e.TEXTURE_2D,r),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.LINEAR),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MAG_FILTER,e.LINEAR),e.texImage2D(e.TEXTURE_2D,0,e.RGBA,t.width,t.height,0,e.RGBA,e.UNSIGNED_BYTE,null),e.bindTexture(e.TEXTURE_2D,null);var a=this.fbo=e.createFramebuffer();e.bindFramebuffer(e.FRAMEBUFFER,a),e.framebufferTexture2D(e.FRAMEBUFFER,e.COLOR_ATTACHMENT0,e.TEXTURE_2D,r,0);var s=new o;s.emplaceBack(0,0),s.emplaceBack(1,0),s.emplaceBack(0,1),s.emplaceBack(1,1),this.buffer=new i(e,s),this.vao=new n};a.prototype.bindWithDepth=function(t){var e=this.gl;e.bindFramebuffer(e.FRAMEBUFFER,this.fbo),this.attachedRbo!==t&&(e.framebufferRenderbuffer(e.FRAMEBUFFER,e.DEPTH_ATTACHMENT,e.RENDERBUFFER,t),this.attachedRbo=t)},a.prototype.unbind=function(){var t=this.gl;t.bindFramebuffer(t.FRAMEBUFFER,null)},e.exports=a},{"../data/pos_array":52,"../gl/vertex_buffer":62,"./vertex_array_object":84}],83:[function(t,e,r){"use strict";var i=function(t,e,r){this.gl=t;var i=e.width,n=e.height;this.size=[i,n],this.format=r,this.texture=t.createTexture(),this.update(e)};i.prototype.update=function(t){var e=t.width,r=t.height,i=t.data;this.size=[e,r];var n=this,o=n.gl;o.bindTexture(o.TEXTURE_2D,this.texture),o.pixelStorei(o.UNPACK_ALIGNMENT,1),this.format===o.RGBA&&o.pixelStorei(o.UNPACK_PREMULTIPLY_ALPHA_WEBGL,!0),o.texImage2D(o.TEXTURE_2D,0,this.format,e,r,0,this.format,o.UNSIGNED_BYTE,i)},i.prototype.bind=function(t,e){var r=this,i=r.gl;i.bindTexture(i.TEXTURE_2D,this.texture),t!==this.filter&&(i.texParameteri(i.TEXTURE_2D,i.TEXTURE_MAG_FILTER,t),i.texParameteri(i.TEXTURE_2D,i.TEXTURE_MIN_FILTER,t),this.filter=t),e!==this.wrap&&(i.texParameteri(i.TEXTURE_2D,i.TEXTURE_WRAP_S,e),i.texParameteri(i.TEXTURE_2D,i.TEXTURE_WRAP_T,e),this.wrap=e)},i.prototype.destroy=function(){this.gl.deleteTexture(this.texture),this.texture=null},e.exports=i},{}],84:[function(t,e,r){"use strict";var i=function(){this.boundProgram=null,this.boundVertexBuffer=null,this.boundVertexBuffer2=null,this.boundIndexBuffer=null,this.boundVertexOffset=null,this.boundDynamicVertexBuffer=null,this.vao=null};i.prototype.bind=function(t,e,r,i,n,o,a){void 0===t.extVertexArrayObject&&(t.extVertexArrayObject=t.getExtension("OES_vertex_array_object"));var s=!this.vao||this.boundProgram!==e||this.boundVertexBuffer!==r||this.boundVertexBuffer2!==n||this.boundIndexBuffer!==i||this.boundVertexOffset!==o||this.boundDynamicVertexBuffer!==a;!t.extVertexArrayObject||s?(this.freshBind(t,e,r,i,n,o,a),this.gl=t):(t.extVertexArrayObject.bindVertexArrayOES(this.vao),a&&a.bind())},i.prototype.freshBind=function(t,e,r,i,n,o,a){var s,l=e.numAttributes;if(t.extVertexArrayObject)this.vao&&this.destroy(),this.vao=t.extVertexArrayObject.createVertexArrayOES(),t.extVertexArrayObject.bindVertexArrayOES(this.vao),s=0,this.boundProgram=e,this.boundVertexBuffer=r,this.boundVertexBuffer2=n,this.boundIndexBuffer=i,this.boundVertexOffset=o,this.boundDynamicVertexBuffer=a;else{s=t.currentNumAttributes||0;for(var u=l;u<s;u++)t.disableVertexAttribArray(u)}r.enableAttributes(t,e),n&&n.enableAttributes(t,e),a&&a.enableAttributes(t,e),r.bind(),r.setVertexAttribPointers(t,e,o),n&&(n.bind(),n.setVertexAttribPointers(t,e,o)),a&&(a.bind(),a.setVertexAttribPointers(t,e,o)),i&&i.bind(),t.currentNumAttributes=l},i.prototype.destroy=function(){this.vao&&(this.gl.extVertexArrayObject.deleteVertexArrayOES(this.vao),this.vao=null)},e.exports=i},{}],85:[function(t,e,r){"use strict";var i=t("../util/util");r.packUint8ToFloat=function(t,e){return t=i.clamp(Math.floor(t),0,255),e=i.clamp(Math.floor(e),0,255),256*t+e}},{"../util/util":223}],86:[function(t,e,r){"use strict";var i={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\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, we encode a 4-component\n// 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 vec3 v_data;\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 vec2 extrude = v_data.xy;\n float extrude_length = length(extrude);\n\n lowp float antialiasblur = v_data.z;\n float antialiased_blur = -max(blur, 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 bool u_pitch_with_map;\nuniform vec2 u_extrude_scale;\nuniform highp float u_camera_to_center_distance;\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 vec3 v_data;\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 vec2 extrude = vec2(mod(a_pos, 2.0) * 2.0 - 1.0);\n\n // multiply a_pos by 0.5, since we had it * 2 in order to sneak\n // in extrusion data\n vec2 circle_center = floor(a_pos * 0.5);\n if (u_pitch_with_map) {\n vec2 corner_position = circle_center;\n if (u_scale_with_map) {\n corner_position += extrude * (radius + stroke_width) * u_extrude_scale;\n } else {\n // Pitching the circle with the map effectively scales it with the map\n // To counteract the effect for pitch-scale: viewport, we rescale the\n // whole circle based on the pitch scaling effect at its central point\n vec4 projected_center = u_matrix * vec4(circle_center, 0, 1);\n corner_position += extrude * (radius + stroke_width) * u_extrude_scale * (projected_center.w / u_camera_to_center_distance);\n }\n\n gl_Position = u_matrix * vec4(corner_position, 0, 1);\n } else {\n gl_Position = u_matrix * vec4(circle_center, 0, 1);\n\n if (u_scale_with_map) {\n gl_Position.xy += extrude * (radius + stroke_width) * u_extrude_scale * u_camera_to_center_distance;\n } else {\n gl_Position.xy += extrude * (radius + stroke_width) * u_extrude_scale * gl_Position.w;\n }\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 lowp float antialiasblur = 1.0 / DEVICE_PIXEL_RATIO / (radius + stroke_width);\n\n v_data = vec3(extrude.x, extrude.y, antialiasblur);\n}\n"},collisionBox:{fragmentSource:"uniform float u_zoom;\n// u_maxzoom is derived from the maximum scale considered by the CollisionTile\n// Labels with placement zoom greater than this value will not be placed,\n// regardless of perspective effects.\nuniform float u_maxzoom;\nuniform sampler2D u_fadetexture;\n\n// v_max_zoom is a collision-box-specific value that controls when line-following\n// collision boxes are used.\nvarying float v_max_zoom;\nvarying float v_placement_zoom;\nvarying float v_perspective_zoom_adjust;\nvarying vec2 v_fade_tex;\n\nvoid main() {\n\n float alpha = 0.5;\n\n // Green = no collisions, label is showing\n gl_FragColor = vec4(0.0, 1.0, 0.0, 1.0) * alpha;\n\n // Red = collision, label hidden\n if (texture2D(u_fadetexture, v_fade_tex).a < 1.0) {\n gl_FragColor = vec4(1.0, 0.0, 0.0, 1.0) * alpha;\n }\n\n // Faded black = this collision box is not used at this zoom (for curved labels)\n if (u_zoom >= v_max_zoom + v_perspective_zoom_adjust) {\n gl_FragColor = vec4(0.0, 0.0, 0.0, 1.0) * alpha * 0.25;\n }\n\n // Faded blue = the placement scale for this label is beyond the CollisionTile\n // max scale, so it's impossible for this label to show without collision detection\n // being run again (the label's glyphs haven't even been added to the symbol bucket)\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_anchor_pos;\nattribute vec2 a_extrude;\nattribute vec2 a_data;\n\nuniform mat4 u_matrix;\nuniform float u_scale;\nuniform float u_pitch;\nuniform float u_collision_y_stretch;\nuniform float u_camera_to_center_distance;\n\nvarying float v_max_zoom;\nvarying float v_placement_zoom;\nvarying float v_perspective_zoom_adjust;\nvarying vec2 v_fade_tex;\n\nvoid main() {\n vec4 projectedPoint = u_matrix * vec4(a_anchor_pos, 0, 1);\n highp float camera_to_anchor_distance = projectedPoint.w;\n highp float collision_perspective_ratio = 1.0 + 0.5 * ((camera_to_anchor_distance / u_camera_to_center_distance) - 1.0);\n\n highp float incidence_stretch = camera_to_anchor_distance / (u_camera_to_center_distance * cos(u_pitch));\n highp float collision_adjustment = max(1.0, incidence_stretch / u_collision_y_stretch);\n\n gl_Position = u_matrix * vec4(a_pos + a_extrude * collision_perspective_ratio * collision_adjustment / u_scale, 0.0, 1.0);\n\n v_max_zoom = a_data.x;\n v_placement_zoom = a_data.y;\n\n v_perspective_zoom_adjust = floor(log2(collision_perspective_ratio * collision_adjustment) * 10.0);\n v_fade_tex = vec2((v_placement_zoom + v_perspective_zoom_adjust) / 255.0, 0.0);\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 // We are using Int16 for texture position coordinates to give us enough precision for\n // fractional coordinates. We use 8192 to scale the texture coordinates in the buffer\n // as an arbitrarily high number to preserve adequate precision when rendering.\n // This is also the same value as the EXTENT we are using for our tile buffer pos coordinates,\n // so math for modifying either is consistent.\n gl_Position = u_matrix * vec4(a_pos, step(8192.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 vec2 u_texsize;\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_texsize, u_pattern_br_a / u_texsize, 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_texsize, u_pattern_br_b / u_texsize, 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 vec2 u_texsize;\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_texsize, u_pattern_br_a / u_texsize, 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_texsize, u_pattern_br_b / u_texsize, 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 vec2 u_texsize;\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_texsize, u_pattern_br_a / u_texsize, 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_texsize, u_pattern_br_b / u_texsize, 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 vec4 a_pos_normal;\nattribute vec4 a_data;\n\nuniform mat4 u_matrix;\nuniform mediump float u_ratio;\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#pragma mapbox: define mediump float width\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 #pragma mapbox: initialize mediump float width\n\n vec2 a_extrude = a_data.xy - 128.0;\n float a_direction = mod(a_data.z, 4.0) - 1.0;\n\n vec2 pos = a_pos_normal.xy;\n\n // x is 1 if it's a round cap, 0 otherwise\n // y is 1 if the normal points up, and -1 if it points down\n mediump vec2 normal = a_pos_normal.zw;\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 halfwidth = width / 2.0;\n offset = -1.0 * offset;\n\n float inset = gapwidth + (gapwidth > 0.0 ? ANTIALIASING : 0.0);\n float outset = gapwidth + halfwidth * (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 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 vec2 u_texsize;\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_texsize, u_pattern_br_a / u_texsize, vec2(x_a, y_a));\n vec2 pos_b = mix(u_pattern_tl_b / u_texsize, u_pattern_br_b / u_texsize, 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 vec4 a_pos_normal;\nattribute vec4 a_data;\n\nuniform mat4 u_matrix;\nuniform mediump float u_ratio;\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#pragma mapbox: define mediump float width\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 #pragma mapbox: initialize mediump float width\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 vec2 pos = a_pos_normal.xy;\n\n // x is 1 if it's a round cap, 0 otherwise\n // y is 1 if the normal points up, and -1 if it points down\n mediump vec2 normal = a_pos_normal.zw;\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 halfwidth = width / 2.0;\n offset = -1.0 * offset;\n\n float inset = gapwidth + (gapwidth > 0.0 ? ANTIALIASING : 0.0);\n float outset = gapwidth + halfwidth * (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 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#pragma mapbox: define mediump float width\n#pragma mapbox: define lowp float floorwidth\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 width\n #pragma mapbox: initialize lowp float floorwidth\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 / floorwidth, 0.5 + u_sdfgamma / floorwidth, 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 vec4 a_pos_normal;\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;\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#pragma mapbox: define mediump float width\n#pragma mapbox: define lowp float floorwidth\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 #pragma mapbox: initialize mediump float width\n #pragma mapbox: initialize lowp float floorwidth\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 vec2 pos = a_pos_normal.xy;\n\n // x is 1 if it's a round cap, 0 otherwise\n // y is 1 if the normal points up, and -1 if it points down\n mediump vec2 normal = a_pos_normal.zw;\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 halfwidth = width / 2.0;\n offset = -1.0 * offset;\n\n float inset = gapwidth + (gapwidth > 0.0 ? ANTIALIASING : 0.0);\n float outset = gapwidth + halfwidth * (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 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 / floorwidth, normal.y * u_patternscale_a.y + u_tex_y_a);\n v_tex_b = vec2(a_linesofar * u_patternscale_b.x / floorwidth, 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 if (color0.a > 0.0) {\n color0.rgb = color0.rgb / color0.a;\n }\n if (color1.a > 0.0) {\n color1.rgb = color1.rgb / color1.a;\n }\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 // We are using Int16 for texture position coordinates to give us enough precision for\n // fractional coordinates. We use 8192 to scale the texture coordinates in the buffer\n // as an arbitrarily high number to preserve adequate precision when rendering.\n // This is also the same value as the EXTENT we are using for our tile buffer pos coordinates,\n // so math for modifying either is consistent.\n v_pos0 = (((a_texture_pos / 8192.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:"const float PI = 3.141592653589793;\n\nattribute vec4 a_pos_offset;\nattribute vec4 a_data;\nattribute vec3 a_projected_pos;\n\nuniform bool u_is_size_zoom_constant;\nuniform bool u_is_size_feature_constant;\nuniform highp float u_size_t; // used to interpolate between zoom stops when size is a composite function\nuniform highp float u_size; // used when size is both zoom and feature constant\nuniform highp float u_camera_to_center_distance;\nuniform highp float u_pitch;\nuniform bool u_rotate_symbol;\nuniform highp float u_aspect_ratio;\nuniform highp float u_collision_y_stretch;\n\n#pragma mapbox: define lowp float opacity\n\nuniform mat4 u_matrix;\nuniform mat4 u_label_plane_matrix;\nuniform mat4 u_gl_coord_matrix;\n\nuniform bool u_is_text;\nuniform bool u_pitch_with_map;\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 vec2 a_size = a_data.zw;\n\n highp vec2 angle_labelminzoom = unpack_float(a_projected_pos[2]);\n highp float segment_angle = -angle_labelminzoom[0] / 255.0 * 2.0 * PI;\n mediump float a_labelminzoom = angle_labelminzoom[1];\n\n float size;\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 } else if (u_is_size_zoom_constant && !u_is_size_feature_constant) {\n size = a_size[0] / 10.0;\n } else if (!u_is_size_zoom_constant && u_is_size_feature_constant) {\n size = u_size;\n } else {\n size = u_size;\n }\n\n vec4 projectedPoint = u_matrix * vec4(a_pos, 0, 1);\n highp float camera_to_anchor_distance = projectedPoint.w;\n // See comments in symbol_sdf.vertex\n highp float distance_ratio = u_pitch_with_map ?\n camera_to_anchor_distance / u_camera_to_center_distance :\n u_camera_to_center_distance / camera_to_anchor_distance;\n highp float perspective_ratio = 0.5 + 0.5 * distance_ratio;\n\n size *= perspective_ratio;\n\n float fontScale = u_is_text ? size / 24.0 : size;\n\n highp float symbol_rotation = 0.0;\n if (u_rotate_symbol) {\n // See comments in symbol_sdf.vertex\n vec4 offsetProjectedPoint = u_matrix * vec4(a_pos + vec2(1, 0), 0, 1);\n\n vec2 a = projectedPoint.xy / projectedPoint.w;\n vec2 b = offsetProjectedPoint.xy / offsetProjectedPoint.w;\n\n symbol_rotation = atan((b.y - a.y) / u_aspect_ratio, b.x - a.x);\n }\n\n highp float angle_sin = sin(segment_angle + symbol_rotation);\n highp float angle_cos = cos(segment_angle + symbol_rotation);\n mat2 rotation_matrix = mat2(angle_cos, -1.0 * angle_sin, angle_sin, angle_cos);\n\n vec4 projected_pos = u_label_plane_matrix * vec4(a_projected_pos.xy, 0.0, 1.0);\n gl_Position = u_gl_coord_matrix * vec4(projected_pos.xy / projected_pos.w + rotation_matrix * (a_offset / 64.0 * fontScale), 0.0, 1.0);\n\n v_tex = a_tex / u_texsize;\n // See comments in symbol_sdf.vertex\n highp float incidence_stretch = camera_to_anchor_distance / (u_camera_to_center_distance * cos(u_pitch));\n highp float collision_adjustment = max(1.0, incidence_stretch / u_collision_y_stretch);\n\n highp float collision_perspective_ratio = 1.0 + 0.5*((camera_to_anchor_distance / u_camera_to_center_distance) - 1.0);\n highp float perspective_zoom_adjust = floor(log2(collision_perspective_ratio * collision_adjustment) * 10.0);\n v_fade_tex = vec2((a_labelminzoom + perspective_zoom_adjust) / 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 vec4 v_data0;\nvarying vec2 v_data1;\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 tex = v_data0.xy;\n vec2 fade_tex = v_data0.zw;\n float gamma_scale = v_data1.x;\n float size = v_data1.y;\n\n float fontScale = u_is_text ? size / 24.0 : 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, tex).a;\n lowp float fade_alpha = texture2D(u_fadetexture, fade_tex).a;\n highp float gamma_scaled = gamma * 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;\nattribute vec3 a_projected_pos;\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) ]\nuniform bool u_is_size_zoom_constant;\nuniform bool u_is_size_feature_constant;\nuniform highp float u_size_t; // used to interpolate between zoom stops when size is a composite function\nuniform highp float u_size; // used when size is both zoom and 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\nuniform mat4 u_matrix;\nuniform mat4 u_label_plane_matrix;\nuniform mat4 u_gl_coord_matrix;\n\nuniform bool u_is_text;\nuniform bool u_pitch_with_map;\nuniform highp float u_pitch;\nuniform bool u_rotate_symbol;\nuniform highp float u_aspect_ratio;\nuniform highp float u_camera_to_center_distance;\nuniform highp float u_collision_y_stretch;\n\nuniform vec2 u_texsize;\n\nvarying vec4 v_data0;\nvarying vec2 v_data1;\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 vec2 a_size = a_data.zw;\n\n highp vec2 angle_labelminzoom = unpack_float(a_projected_pos[2]);\n highp float segment_angle = -angle_labelminzoom[0] / 255.0 * 2.0 * PI;\n mediump float a_labelminzoom = angle_labelminzoom[1];\n float size;\n\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 } else if (u_is_size_zoom_constant && !u_is_size_feature_constant) {\n size = a_size[0] / 10.0;\n } else if (!u_is_size_zoom_constant && u_is_size_feature_constant) {\n size = u_size;\n } else {\n size = u_size;\n }\n\n vec4 projectedPoint = u_matrix * vec4(a_pos, 0, 1);\n highp float camera_to_anchor_distance = projectedPoint.w;\n // If the label is pitched with the map, layout is done in pitched space,\n // which makes labels in the distance smaller relative to viewport space.\n // We counteract part of that effect by multiplying by the perspective ratio.\n // If the label isn't pitched with the map, we do layout in viewport space,\n // which makes labels in the distance larger relative to the features around\n // them. We counteract part of that effect by dividing by the perspective ratio.\n highp float distance_ratio = u_pitch_with_map ?\n camera_to_anchor_distance / u_camera_to_center_distance :\n u_camera_to_center_distance / camera_to_anchor_distance;\n highp float perspective_ratio = 0.5 + 0.5 * distance_ratio;\n\n size *= perspective_ratio;\n\n float fontScale = u_is_text ? size / 24.0 : size;\n\n highp float symbol_rotation = 0.0;\n if (u_rotate_symbol) {\n // Point labels with 'rotation-alignment: map' are horizontal with respect to tile units\n // To figure out that angle in projected space, we draw a short horizontal line in tile\n // space, project it, and measure its angle in projected space.\n vec4 offsetProjectedPoint = u_matrix * vec4(a_pos + vec2(1, 0), 0, 1);\n\n vec2 a = projectedPoint.xy / projectedPoint.w;\n vec2 b = offsetProjectedPoint.xy / offsetProjectedPoint.w;\n\n symbol_rotation = atan((b.y - a.y) / u_aspect_ratio, b.x - a.x);\n }\n\n highp float angle_sin = sin(segment_angle + symbol_rotation);\n highp float angle_cos = cos(segment_angle + symbol_rotation);\n mat2 rotation_matrix = mat2(angle_cos, -1.0 * angle_sin, angle_sin, angle_cos);\n\n vec4 projected_pos = u_label_plane_matrix * vec4(a_projected_pos.xy, 0.0, 1.0);\n gl_Position = u_gl_coord_matrix * vec4(projected_pos.xy / projected_pos.w + rotation_matrix * (a_offset / 64.0 * fontScale), 0.0, 1.0);\n float gamma_scale = gl_Position.w;\n\n vec2 tex = a_tex / u_texsize;\n // incidence_stretch is the ratio of how much y space a label takes up on a tile while drawn perpendicular to the viewport vs\n // how much space it would take up if it were drawn flat on the tile\n // Using law of sines, camera_to_anchor/sin(ground_angle) = camera_to_center/sin(incidence_angle)\n // sin(incidence_angle) = 1/incidence_stretch\n // Incidence angle 90 -> head on, sin(incidence_angle) = 1, no incidence stretch\n // Incidence angle 1 -> very oblique, sin(incidence_angle) =~ 0, lots of incidence stretch\n // ground_angle = u_pitch + PI/2 -> sin(ground_angle) = cos(u_pitch)\n // This 2D calculation is only exactly correct when gl_Position.x is in the center of the viewport,\n // but it's a close enough approximation for our purposes\n highp float incidence_stretch = camera_to_anchor_distance / (u_camera_to_center_distance * cos(u_pitch));\n // incidence_stretch only applies to the y-axis, but without re-calculating the collision tile, we can't\n // adjust the size of only one axis. So, we do a crude approximation at placement time to get the aspect ratio\n // about right, and then do the rest of the adjustment here: there will be some extra padding on the x-axis,\n // but hopefully not too much.\n // Never make the adjustment less than 1.0: instead of allowing collisions on the x-axis, be conservative on\n // the y-axis.\n highp float collision_adjustment = max(1.0, incidence_stretch / u_collision_y_stretch);\n\n // Floor to 1/10th zoom to dodge precision issues that can cause partially hidden labels\n highp float collision_perspective_ratio = 1.0 + 0.5*((camera_to_anchor_distance / u_camera_to_center_distance) - 1.0);\n highp float perspective_zoom_adjust = floor(log2(collision_perspective_ratio * collision_adjustment) * 10.0);\n vec2 fade_tex = vec2((a_labelminzoom + perspective_zoom_adjust) / 255.0, 0.0);\n\n v_data0 = vec4(tex.x, tex.y, fade_tex.x, fade_tex.y);\n v_data1 = vec2(gamma_scale, size);\n}\n"}},n=/#pragma mapbox: ([\w]+) ([\w]+) ([\w]+) ([\w]+)/g;for(var o in i)!function(t){var e=i[t],r={};e.fragmentSource=e.fragmentSource.replace(n,function(t,e,i,n,o){return r[o]=!0,"define"===e?"\n#ifndef HAS_UNIFORM_u_"+o+"\nvarying "+i+" "+n+" "+o+";\n#else\nuniform "+i+" "+n+" u_"+o+";\n#endif\n":"\n#ifdef HAS_UNIFORM_u_"+o+"\n "+i+" "+n+" "+o+" = u_"+o+";\n#endif\n"}),e.vertexSource=e.vertexSource.replace(n,function(t,e,i,n,o){var a="float"===n?"vec2":"vec4";return r[o]?"define"===e?"\n#ifndef HAS_UNIFORM_u_"+o+"\nuniform lowp float a_"+o+"_t;\nattribute "+i+" "+a+" a_"+o+";\nvarying "+i+" "+n+" "+o+";\n#else\nuniform "+i+" "+n+" u_"+o+";\n#endif\n":"\n#ifndef HAS_UNIFORM_u_"+o+"\n "+o+" = unpack_mix_"+a+"(a_"+o+", a_"+o+"_t);\n#else\n "+i+" "+n+" "+o+" = u_"+o+";\n#endif\n":"define"===e?"\n#ifndef HAS_UNIFORM_u_"+o+"\nuniform lowp float a_"+o+"_t;\nattribute "+i+" "+a+" a_"+o+";\n#else\nuniform "+i+" "+n+" u_"+o+";\n#endif\n":"\n#ifndef HAS_UNIFORM_u_"+o+"\n "+i+" "+n+" "+o+" = unpack_mix_"+a+"(a_"+o+", a_"+o+"_t);\n#else\n "+i+" "+n+" "+o+" = u_"+o+";\n#endif\n"})}(o);e.exports=i},{}],87:[function(t,e,r){"use strict";var i=t("./image_source"),n=t("../util/window"),o=function(t){function e(e,r,i,n){t.call(this,e,r,i,n),this.options=r,this.animate=void 0===r.animate||r.animate}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.load=function(){this.canvas=this.canvas||n.document.getElementById(this.options.canvas);var t=this.canvas.getContext(this.options.contextType);if(!t)return this.fire("error",new Error("Canvas context not found."));if(this.context=t,this.width=this.canvas.width,this.height=this.canvas.height,this._hasInvalidDimensions())return this.fire("error",new Error("Canvas dimensions cannot be less than or equal to zero."));var e;this.play=function(){void 0===e&&(e=this.map.style.animationLoop.set(1/0),this.map._rerender())},this.pause=function(){void 0!==e&&(e=this.map.style.animationLoop.cancel(e))},this._finishLoading()},e.prototype.getCanvas=function(){return this.canvas},e.prototype.onAdd=function(t){this.map=t,this.load(),this.canvas&&this.animate&&this.play()},e.prototype.onRemove=function(){this.pause()},e.prototype.readCanvas=function(t){var e=this;if(this.context instanceof CanvasRenderingContext2D)this.canvasData=this.context.getImageData(0,0,this.width,this.height);else if(this.context instanceof WebGLRenderingContext){var r=this.context,i=new Uint8Array(this.width*this.height*4);r.readPixels(0,0,this.width,this.height,r.RGBA,r.UNSIGNED_BYTE,i),this.secondaryContext||(this.secondaryContext=n.document.createElement("canvas").getContext("2d")),this.canvasData&&!t||(this.canvasData=this.secondaryContext.createImageData(this.width,this.height));for(var o=this.height-1,a=0;o>=0;o--,a++)e.canvasData.data.set(i.subarray(o*e.width*4,(o+1)*e.width*4),a*e.width*4)}},e.prototype.prepare=function(){var t=!1;if(this.canvas.width!==this.width&&(this.width=this.canvas.width,t=!0),this.canvas.height!==this.height&&(this.height=this.canvas.height,t=!0),!this._hasInvalidDimensions()&&0!==Object.keys(this.tiles).length){if((this.animate||!this.canvasData||t)&&this.readCanvas(t),!this.canvasData)return void this.fire("error",new Error("Could not read canvas data."));this._prepareImage(this.map.painter.gl,this.canvasData,t)}},e.prototype.serialize=function(){return{type:"canvas",canvas:this.canvas,coordinates:this.coordinates}},e.prototype._hasInvalidDimensions=function(){for(var t=this,e=0,r=[t.canvas.width,t.canvas.height];e<r.length;e+=1){var i=r[e];if(isNaN(i)||i<=0)return!0}return!1},e}(i);e.exports=o},{"../util/window":204,"./image_source":91}],88:[function(t,e,r){"use strict";function i(t){var e=a.document.createElement("a");return e.href=t,e.href}var n=t("../util/evented"),o=t("../util/util"),a=t("../util/window"),s=t("../data/extent"),l=t("../util/ajax").ResourceType,u=t("../util/browser"),c=function(t){function e(e,r,i,n){t.call(this),this.id=e,this.type="geojson",this.minzoom=0,this.maxzoom=18,this.tileSize=512,this.isTileClipped=!0,this.reparseOverscaled=!0,this.dispatcher=i,this.setEventedParent(n),this._data=r.data,this._options=o.extend({},r),void 0!==r.maxzoom&&(this.maxzoom=r.maxzoom),r.type&&(this.type=r.type);var a=s/this.tileSize;this.workerOptions=o.extend({source:this.id,cluster:r.cluster||!1,geojsonVtOptions:{buffer:(void 0!==r.buffer?r.buffer:128)*a,tolerance:(void 0!==r.tolerance?r.tolerance:.375)*a,extent:s,maxZoom:this.maxzoom},superclusterOptions:{maxZoom:void 0!==r.clusterMaxZoom?Math.min(r.clusterMaxZoom,this.maxzoom-1):this.maxzoom-1,extent:s,radius:(r.clusterRadius||50)*a,log:!1}},r.workerOptions)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.load=function(){var t=this;this.fire("dataloading",{dataType:"source"}),this._updateWorkerData(function(e){if(e)return void t.fire("error",{error:e});t.fire("data",{dataType:"source",sourceDataType:"metadata"})})},e.prototype.onAdd=function(t){this.map=t,this.load()},e.prototype.setData=function(t){var e=this;return this._data=t,this.fire("dataloading",{dataType:"source"}),this._updateWorkerData(function(t){if(t)return e.fire("error",{error:t});e.fire("data",{dataType:"source",sourceDataType:"content"})}),this},e.prototype._updateWorkerData=function(t){var e=this,r=o.extend({},this.workerOptions),n=this._data;"string"==typeof n?r.request=this.map._transformRequest(i(n),l.Source):r.data=JSON.stringify(n),this.workerID=this.dispatcher.send(this.type+".loadData",r,function(r){e._loaded=!0,t(r)},this.workerID)},e.prototype.loadTile=function(t,e){var r=this,i=t.workerID&&"expired"!==t.state?"reloadTile":"loadTile",n={type:this.type,uid:t.uid,coord:t.coord,zoom:t.coord.z,maxZoom:this.maxzoom,tileSize:this.tileSize,source:this.id,pixelRatio:u.devicePixelRatio,overscaling:t.coord.z>this.maxzoom?Math.pow(2,t.coord.z-this.maxzoom):1,angle:this.map.transform.angle,pitch:this.map.transform.pitch,cameraToCenterDistance:this.map.transform.cameraToCenterDistance,cameraToTileDistance:this.map.transform.cameraToTileDistance(t),showCollisionBoxes:this.map.showCollisionBoxes};t.workerID=this.dispatcher.send(i,n,function(i,n){if(t.unloadVectorData(),!t.aborted)return i?e(i):(t.loadVectorData(n,r.map.painter),t.redoWhenDone&&(t.redoWhenDone=!1,t.redoPlacement(r)),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 o.extend({},this._options,{type:this.type,data:this._data})},e}(n);e.exports=c},{"../data/extent":48,"../util/ajax":201,"../util/browser":202,"../util/evented":210,"../util/util":223,"../util/window":204}],89:[function(t,e,r){"use strict";function i(t,e){var r=t.source,i=t.coord;if(!this._geoJSONIndexes[r])return e(null,null);var n=this._geoJSONIndexes[r].getTile(Math.min(i.z,t.maxZoom),i.x,i.y);if(!n)return e(null,null);var o=new a(n.features),l=s(o);0===l.byteOffset&&l.byteLength===l.buffer.byteLength||(l=new Uint8Array(l)),e(null,{vectorTile:o,rawData:l.buffer})}var n=t("../util/ajax"),o=t("geojson-rewind"),a=t("./geojson_wrapper"),s=t("vt-pbf"),l=t("supercluster"),u=t("geojson-vt"),c=t("./vector_tile_worker_source"),p=function(t){function e(e,r,n){t.call(this,e,r,i),n&&(this.loadGeoJSON=n),this._geoJSONIndexes={}}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.loadData=function(t,e){var r=this;this.loadGeoJSON(t,function(i,n){if(i||!n)return e(i);if("object"!=typeof n)return e(new Error("Input data is not a valid GeoJSON object."));o(n,!0);try{r._geoJSONIndexes[t.source]=t.cluster?l(t.superclusterOptions).load(n.features):u(n,t.geojsonVtOptions)}catch(i){return e(i)}r.loaded[t.source]={},e(null)})},e.prototype.reloadTile=function(e,r){var i=this.loaded[e.source],n=e.uid;return i&&i[n]?t.prototype.reloadTile.call(this,e,r):this.loadTile(e,r)},e.prototype.loadGeoJSON=function(t,e){if(t.request)n.getJSON(t.request,e);else{if("string"!=typeof t.data)return e(new Error("Input data is not a valid GeoJSON object."));try{return e(null,JSON.parse(t.data))}catch(t){return e(new Error("Input data is not a valid GeoJSON object."))}}},e.prototype.removeSource=function(t){this._geoJSONIndexes[t.source]&&delete this._geoJSONIndexes[t.source]},e}(c);e.exports=p},{"../util/ajax":201,"./geojson_wrapper":90,"./vector_tile_worker_source":103,"geojson-rewind":13,"geojson-vt":17,supercluster:32,"vt-pbf":37}],90:[function(t,e,r){"use strict";var i=t("@mapbox/point-geometry"),n=t("@mapbox/vector-tile").VectorTileFeature.prototype.toGeoJSON,o=t("../data/extent"),a=function(t){this._feature=t,this.extent=o,this.type=t.type,this.properties=t.tags,"id"in t&&!isNaN(t.id)&&(this.id=parseInt(t.id,10))};a.prototype.loadGeometry=function(){var t=this;if(1===this._feature.type){for(var e=[],r=0,n=t._feature.geometry;r<n.length;r+=1){var o=n[r];e.push([new i(o[0],o[1])])}return e}for(var a=[],s=0,l=t._feature.geometry;s<l.length;s+=1){for(var u=l[s],c=[],p=0,h=u;p<h.length;p+=1){var f=h[p];c.push(new i(f[0],f[1]))}a.push(c)}return a},a.prototype.toGeoJSON=function(t,e,r){return n.call(this,t,e,r)};var s=function(t){this.layers={_geojsonTileLayer:this},this.name="_geojsonTileLayer",this.extent=o,this.length=t.length,this._features=t};s.prototype.feature=function(t){return new a(this._features[t])},e.exports=s},{"../data/extent":48,"@mapbox/point-geometry":2,"@mapbox/vector-tile":6}],91:[function(t,e,r){"use strict";var i=t("../util/util"),n=t("../util/window"),o=t("./tile_coord"),a=t("../geo/lng_lat"),s=t("@mapbox/point-geometry"),l=t("../util/evented"),u=t("../util/ajax"),c=t("../util/browser"),p=t("../data/extent"),h=t("../data/raster_bounds_array"),f=t("../gl/vertex_buffer"),d=t("../render/vertex_array_object"),m=function(t){function e(e,r,i,n){t.call(this),this.id=e,this.dispatcher=i,this.coordinates=r.coordinates,this.type="image",this.minzoom=0,this.maxzoom=22,this.tileSize=512,this.tiles={},this.setEventedParent(n),this.options=r,this.textureLoaded=!1}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.load=function(){var t=this;this.fire("dataloading",{dataType:"source"}),this.url=this.options.url,u.getImage(this.map._transformRequest(this.url,u.ResourceType.Image),function(e,r){e?t.fire("error",{error:e}):r&&(t.image=c.getImageData(r),t._finishLoading())})},e.prototype._finishLoading=function(){this.map&&(this.setCoordinates(this.coordinates),this.fire("data",{dataType:"source",sourceDataType:"metadata"}))},e.prototype.onAdd=function(t){this.map=t,this.load()},e.prototype.setCoordinates=function(t){this.coordinates=t;var e=this.map,r=t.map(function(t){return e.transform.locationCoordinate(a.convert(t)).zoomTo(0)}),n=this.centerCoord=i.getCoordinatesCenter(r);n.column=Math.floor(n.column),n.row=Math.floor(n.row),this.coord=new o(n.zoom,n.column,n.row),this.minzoom=this.maxzoom=n.zoom;var l=r.map(function(t){var e=t.zoomTo(n.zoom);return new s(Math.round((e.column-n.column)*p),Math.round((e.row-n.row)*p))});return this._boundsArray=new h,this._boundsArray.emplaceBack(l[0].x,l[0].y,0,0),this._boundsArray.emplaceBack(l[1].x,l[1].y,p,0),this._boundsArray.emplaceBack(l[3].x,l[3].y,0,p),this._boundsArray.emplaceBack(l[2].x,l[2].y,p,p),this.boundsBuffer&&(this.boundsBuffer.destroy(),delete this.boundsBuffer),this.fire("data",{dataType:"source",sourceDataType:"content"}),this},e.prototype.prepare=function(){0!==Object.keys(this.tiles).length&&this.image&&this._prepareImage(this.map.painter.gl,this.image)},e.prototype._prepareImage=function(t,e,r){var i=this;this.boundsBuffer||(this.boundsBuffer=new f(t,this._boundsArray)),this.boundsVAO||(this.boundsVAO=new d),this.textureLoaded?r?t.texImage2D(t.TEXTURE_2D,0,t.RGBA,t.RGBA,t.UNSIGNED_BYTE,e):(e instanceof n.HTMLVideoElement||e instanceof n.ImageData)&&(t.bindTexture(t.TEXTURE_2D,this.texture),t.texSubImage2D(t.TEXTURE_2D,0,0,0,t.RGBA,t.UNSIGNED_BYTE,e)):(this.textureLoaded=!0,this.texture=t.createTexture(),t.bindTexture(t.TEXTURE_2D,this.texture),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_WRAP_S,t.CLAMP_TO_EDGE),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_WRAP_T,t.CLAMP_TO_EDGE),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_MIN_FILTER,t.LINEAR),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_MAG_FILTER,t.LINEAR),t.texImage2D(t.TEXTURE_2D,0,t.RGBA,t.RGBA,t.UNSIGNED_BYTE,e));for(var o in i.tiles){var a=i.tiles[o];"loaded"!==a.state&&(a.state="loaded",a.texture=i.texture)}},e.prototype.loadTile=function(t,e){this.coord&&this.coord.toString()===t.coord.toString()?(this.tiles[String(t.coord.w)]=t,t.buckets={},e(null)):(t.state="errored",e(null))},e.prototype.serialize=function(){return{type:"image",url:this.options.url,coordinates:this.coordinates}},e}(l);e.exports=m},{"../data/extent":48,"../data/raster_bounds_array":54,"../geo/lng_lat":58,"../gl/vertex_buffer":62,"../render/vertex_array_object":84,"../util/ajax":201,"../util/browser":202,"../util/evented":210,"../util/util":223,"../util/window":204,"./tile_coord":101,"@mapbox/point-geometry":2}],92:[function(t,e,r){"use strict";var i=t("../util/util"),n=t("../util/ajax"),o=t("../util/browser"),a=t("../util/mapbox").normalizeSourceURL;e.exports=function(t,e,r){var s=function(t,e){if(t)return r(t);if(e){var n=i.pick(e,["tiles","minzoom","maxzoom","attribution","mapbox_logo","bounds"]);e.vector_layers&&(n.vectorLayers=e.vector_layers,n.vectorLayerIds=n.vectorLayers.map(function(t){return t.id})),r(null,n)}};t.url?n.getJSON(e(a(t.url),n.ResourceType.Source),s):o.frame(function(){return s(null,t)})}},{"../util/ajax":201,"../util/browser":202,"../util/mapbox":217,"../util/util":223}],93:[function(t,e,r){"use strict";var i=t("../data/extent");e.exports=function(t,e,r){return e*(i/(t.tileSize*Math.pow(2,r-t.coord.z)))}},{"../data/extent":48}],94:[function(t,e,r){"use strict";function i(t,e){var r=t.coord,i=e.coord;return r.z-i.z||r.y-i.y||r.w-i.w||r.x-i.x}function n(t){for(var e={},r={},i=0,n=t;i<n.length;i+=1){var o=n[i],a=o.queryResults,s=o.wrappedTileID,l=r[s]=r[s]||{};for(var u in a)for(var c=a[u],p=l[u]=l[u]||{},h=e[u]=e[u]||[],f=0,d=c;f<d.length;f+=1){var m=d[f];p[m.featureIndex]||(p[m.featureIndex]=!0,h.push(m.feature))}}return e}var o=t("./tile_coord");r.rendered=function(t,e,r,o,a,s){var l=t.tilesIn(r);l.sort(i);for(var u=[],c=0,p=l;c<p.length;c+=1){var h=p[c];u.push({wrappedTileID:h.coord.wrapped().id,queryResults:h.tile.queryRenderedFeatures(e,h.queryGeometry,h.scale,o,s)})}return n(u)},r.source=function(t,e){for(var r=t.getRenderableIds().map(function(e){return t.getTileByID(e)}),i=[],n={},a=0;a<r.length;a++){var s=r[a],l=new o(Math.min(s.sourceMaxZoom,s.coord.z),s.coord.x,s.coord.y,0).id;n[l]||(n[l]=!0,s.querySourceFeatures(i,e))}return i}},{"./tile_coord":101}],95:[function(t,e,r){"use strict";var i=t("../util/util"),n=t("../util/ajax"),o=t("../util/evented"),a=t("./load_tilejson"),s=t("../util/mapbox").normalizeTileURL,l=t("./tile_bounds"),u=function(t){function e(e,r,n,o){t.call(this),this.id=e,this.dispatcher=n,this.setEventedParent(o),this.type="raster",this.minzoom=0,this.maxzoom=22,this.roundZoom=!0,this.scheme="xyz",this.tileSize=512,this._loaded=!1,this._options=i.extend({},r),i.extend(this,i.pick(r,["url","scheme","tileSize"]))}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.load=function(){var t=this;this.fire("dataloading",{dataType:"source"}),a(this._options,this.map._transformRequest,function(e,r){e?t.fire("error",e):r&&(i.extend(t,r),r.bounds&&(t.tileBounds=new l(r.bounds,t.minzoom,t.maxzoom)),t.fire("data",{dataType:"source",sourceDataType:"metadata"}),t.fire("data",{dataType:"source",sourceDataType:"content"}))})},e.prototype.onAdd=function(t){this.map=t,this.load()},e.prototype.serialize=function(){return i.extend({},this._options)},e.prototype.hasTile=function(t){return!this.tileBounds||this.tileBounds.contains(t,this.maxzoom)},e.prototype.loadTile=function(t,e){var r=this,i=s(t.coord.url(this.tiles,null,this.scheme),this.url,this.tileSize);t.request=n.getImage(this.map._transformRequest(i,n.ResourceType.Tile),function(i,n){if(delete t.request,t.aborted)r.state="unloaded",e(null);else if(i)r.state="errored",e(i);else if(n){r.map._refreshExpiredTiles&&t.setExpiryData(n),delete n.cacheControl,delete n.expires;var o=r.map.painter.gl;t.texture=r.map.painter.getTileTexture(n.width),t.texture?(o.bindTexture(o.TEXTURE_2D,t.texture),o.texSubImage2D(o.TEXTURE_2D,0,0,0,o.RGBA,o.UNSIGNED_BYTE,n)):(t.texture=o.createTexture(),o.bindTexture(o.TEXTURE_2D,t.texture),o.texParameteri(o.TEXTURE_2D,o.TEXTURE_MIN_FILTER,o.LINEAR_MIPMAP_NEAREST),o.texParameteri(o.TEXTURE_2D,o.TEXTURE_MAG_FILTER,o.LINEAR),o.texParameteri(o.TEXTURE_2D,o.TEXTURE_WRAP_S,o.CLAMP_TO_EDGE),o.texParameteri(o.TEXTURE_2D,o.TEXTURE_WRAP_T,o.CLAMP_TO_EDGE),o.pixelStorei(o.UNPACK_PREMULTIPLY_ALPHA_WEBGL,!0),r.map.painter.extTextureFilterAnisotropic&&o.texParameterf(o.TEXTURE_2D,r.map.painter.extTextureFilterAnisotropic.TEXTURE_MAX_ANISOTROPY_EXT,r.map.painter.extTextureFilterAnisotropicMax),o.texImage2D(o.TEXTURE_2D,0,o.RGBA,o.RGBA,o.UNSIGNED_BYTE,n),t.texture.size=n.width),o.generateMipmap(o.TEXTURE_2D),t.state="loaded",e(null)}})},e.prototype.abortTile=function(t){t.request&&(t.request.abort(),delete t.request)},e.prototype.unloadTile=function(t){t.texture&&this.map.painter.saveTileTexture(t.texture)},e}(o);e.exports=u},{"../util/ajax":201,"../util/evented":210,"../util/mapbox":217,"../util/util":223,"./load_tilejson":92,"./tile_bounds":100}],96:[function(t,e,r){"use strict";var i=t("../util/ajax"),n=t("../util/evented"),o=t("../util/window"),a=!1,s=null;e.exports.evented=new n,e.exports.registerForPluginAvailability=function(t){return s?t({pluginBlobURL:s,errorCallback:e.exports.errorCallback}):e.exports.evented.once("pluginAvailable",t),t},e.exports.createBlobURL=function(t){return o.URL.createObjectURL(new o.Blob([t.data],{type:"text/javascript"}))},e.exports.clearRTLTextPlugin=function(){a=!1,s=null},e.exports.setRTLTextPlugin=function(t,r){if(a)throw new Error("setRTLTextPlugin cannot be called multiple times.");a=!0,e.exports.errorCallback=r,i.getArrayBuffer({url:t},function(t,i){t?r(t):i&&(s=e.exports.createBlobURL(i),e.exports.evented.fire("pluginAvailable",{pluginBlobURL:s,errorCallback:r}))})},e.exports.applyArabicShaping=null,e.exports.processBidirectionalText=null},{"../util/ajax":201,"../util/evented":210,"../util/window":204}],97:[function(t,e,r){"use strict";var i=t("../util/util"),n={vector:t("../source/vector_tile_source"),raster:t("../source/raster_tile_source"),geojson:t("../source/geojson_source"),video:t("../source/video_source"),image:t("../source/image_source"),canvas:t("../source/canvas_source")};r.create=function(t,e,r,o){var a=new n[e.type](t,e,r,o);if(a.id!==t)throw new Error("Expected Source id to be "+t+" instead of "+a.id);return i.bindAll(["load","abort","unload","serialize","prepare"],a),a},r.getType=function(t){return n[t]},r.setType=function(t,e){n[t]=e}},{"../source/canvas_source":87,"../source/geojson_source":88,"../source/image_source":91,"../source/raster_tile_source":95,"../source/vector_tile_source":102,"../source/video_source":104,"../util/util":223}],98:[function(t,e,r){"use strict";function i(t,e,r){var i=r.zoomTo(Math.min(t.z,e));return new d((i.column-(t.x+t.w*Math.pow(2,t.z)))*f,(i.row-t.y)*f)}function n(t,e){return t%32-e%32}function o(t){return"raster"===t||"image"===t||"video"===t}var a=t("./source").create,s=t("./tile"),l=t("../util/evented"),u=t("./tile_coord"),c=t("../util/lru_cache"),p=t("../geo/coordinate"),h=t("../util/util"),f=t("../data/extent"),d=t("@mapbox/point-geometry"),m=function(t){function e(e,r,i){var n=this;t.call(this),this.id=e,this.dispatcher=i,this.on("data",function(t){"source"===t.dataType&&"metadata"===t.sourceDataType&&(n._sourceLoaded=!0),n._sourceLoaded&&!n._paused&&"source"===t.dataType&&"content"===t.sourceDataType&&(n.reload(),n.transform&&n.update(n.transform))}),this.on("error",function(){n._sourceErrored=!0}),this._source=a(e,r,i,this),this._tiles={},this._cache=new c(0,this._unloadTile.bind(this)),this._timers={},this._cacheTimers={},this._maxTileCacheSize=null,this._isIdRenderable=this._isIdRenderable.bind(this)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.onAdd=function(t){this.map=t,this._maxTileCacheSize=t?t._maxTileCacheSize:null,this._source&&this._source.onAdd&&this._source.onAdd(t)},e.prototype.onRemove=function(t){this._source&&this._source.onRemove&&this._source.onRemove(t)},e.prototype.loaded=function(){var t=this;if(this._sourceErrored)return!0;if(!this._sourceLoaded)return!1;for(var e in t._tiles){var r=t._tiles[e];if("loaded"!==r.state&&"errored"!==r.state)return!1}return!0},e.prototype.getSource=function(){return this._source},e.prototype.pause=function(){this._paused=!0},e.prototype.resume=function(){if(this._paused){var t=this._shouldReloadOnResume;this._paused=!1,this._shouldReloadOnResume=!1,t&&this.reload(),this.transform&&this.update(this.transform)}},e.prototype._loadTile=function(t,e){return this._source.loadTile(t,e)},e.prototype._unloadTile=function(t){if(this._source.unloadTile)return this._source.unloadTile(t)},e.prototype._abortTile=function(t){if(this._source.abortTile)return this._source.abortTile(t)},e.prototype.serialize=function(){return this._source.serialize()},e.prototype.prepare=function(t){var e=this;this._source.prepare&&this._source.prepare();for(var r in e._tiles)e._tiles[r].upload(t)},e.prototype.getIds=function(){return Object.keys(this._tiles).map(Number).sort(n)},e.prototype.getRenderableIds=function(){return this.getIds().filter(this._isIdRenderable)},e.prototype._isIdRenderable=function(t){return this._tiles[t].hasData()&&!this._coveredTiles[t]},e.prototype.reload=function(){var t=this;if(this._paused)return void(this._shouldReloadOnResume=!0);this._cache.reset();for(var e in t._tiles)t._reloadTile(e,"reloading")},e.prototype._reloadTile=function(t,e){var r=this._tiles[t];r&&("loading"!==r.state&&(r.state=e),this._loadTile(r,this._tileLoaded.bind(this,r,t,e)))},e.prototype._tileLoaded=function(t,e,r,i){if(i)return t.state="errored",void(404!==i.status?this._source.fire("error",{tile:t,error:i}):this.update(this.transform));t.timeAdded=(new Date).getTime(),"expired"===r&&(t.refreshedUponExpiration=!0),this._setTileReloadTimer(e,t),this._source.fire("data",{dataType:"source",tile:t,coord:t.coord}),this.map&&(this.map.painter.tileExtentVAO.vao=null)},e.prototype.getTile=function(t){return this.getTileByID(t.id)},e.prototype.getTileByID=function(t){return this._tiles[t]},e.prototype.getZoom=function(t){return t.zoom+t.scaleZoom(t.tileSize/this._source.tileSize)},e.prototype._findLoadedChildren=function(t,e,r){var i=this,n=!1;for(var o in i._tiles){var a=i._tiles[o];if(!(r[o]||!a.hasData()||a.coord.z<=t.z||a.coord.z>e)){var s=Math.pow(2,Math.min(a.coord.z,i._source.maxzoom)-Math.min(t.z,i._source.maxzoom));if(Math.floor(a.coord.x/s)===t.x&&Math.floor(a.coord.y/s)===t.y)for(r[o]=!0,n=!0;a&&a.coord.z-1>t.z;){var l=a.coord.parent(i._source.maxzoom);if(!l)break;(a=i._tiles[l.id])&&a.hasData()&&(delete r[o],r[l.id]=!0)}}}return n},e.prototype.findLoadedParent=function(t,e,r){for(var i=this,n=t.z-1;n>=e;n--){var o=t.parent(i._source.maxzoom);if(!o)return;t=o;var a=String(t.id),s=i._tiles[a];if(s&&s.hasData())return r[a]=!0,s;if(i._cache.has(a))return r[a]=!0,i._cache.getWithoutRemoving(a)}},e.prototype.updateCacheSize=function(t){var e=Math.ceil(t.width/t.tileSize)+1,r=Math.ceil(t.height/t.tileSize)+1,i=e*r,n=Math.floor(5*i),o="number"==typeof this._maxTileCacheSize?Math.min(this._maxTileCacheSize,n):n;this._cache.setMaxSize(o)},e.prototype.update=function(t){var r=this;if(this.transform=t,this._sourceLoaded&&!this._paused){this.updateCacheSize(t),this._coveredTiles={};var i;this.used?this._source.coord?i=t.getVisibleWrappedCoordinates(this._source.coord):(i=t.coveringTiles({tileSize:this._source.tileSize,minzoom:this._source.minzoom,maxzoom:this._source.maxzoom,roundZoom:this._source.roundZoom,reparseOverscaled:this._source.reparseOverscaled}),this._source.hasTile&&(i=i.filter(function(t){return r._source.hasTile(t)}))):i=[];var n=(this._source.roundZoom?Math.round:Math.floor)(this.getZoom(t)),a=Math.max(n-e.maxOverzooming,this._source.minzoom),s=Math.max(n+e.maxUnderzooming,this._source.minzoom),l=this._updateRetainedTiles(i,n),c={};if(o(this._source.type))for(var p=Object.keys(l),f=0;f<p.length;f++){var d=p[f],m=u.fromID(+d),v=r._tiles[d];if(v&&(void 0===v.fadeEndTime||v.fadeEndTime>=Date.now())){r._findLoadedChildren(m,s,l)&&(l[d]=!0);var y=r.findLoadedParent(m,a,c);y&&r._addTile(y.coord)}}var g;for(g in c)l[g]||(r._coveredTiles[g]=!0);for(g in c)l[g]=!0;for(var _=h.keysDifference(this._tiles,l),x=0;x<_.length;x++)r._removeTile(_[x])}},e.prototype._updateRetainedTiles=function(t,r){var i,n,o,a,s=this,l={},u={},c=Math.max(r-e.maxOverzooming,this._source.minzoom);for(i=0;i<t.length;i++){n=t[i],o=s._addTile(n);var p=!1;if(o.hasData())l[n.id]=!0;else{if(p=o.wasRequested(),l[n.id]=!0,a=!0,r+1>s._source.maxzoom){var h=n.children(s._source.maxzoom)[0],f=s.getTile(h);f&&f.hasData()?l[h.id]=!0:a=!1}else for(var d=n.children(s._source.maxzoom),m=0;m<d.length;m++){var v=d[m],y=v?s.getTile(v):null;y&&y.hasData()?l[v.id]=!0:a=!1}if(!a)for(var g=r-1;g>=c;--g){var _=n.scaledTo(g,s._source.maxzoom);if(u[_.id])break;if(u[_.id]=!0,o=s.getTile(_),!o&&p&&(o=s._addTile(_)),o&&(l[_.id]=!0,p=o.wasRequested(),o.hasData()))break}}}return l},e.prototype._addTile=function(t){var e=this._tiles[t.id];if(e)return e;(e=this._cache.get(t.id))&&(e.redoPlacement(this._source),this._cacheTimers[t.id]&&(clearTimeout(this._cacheTimers[t.id]),delete this._cacheTimers[t.id],this._setTileReloadTimer(t.id,e)));var r=Boolean(e);if(!r){var i=t.z,n=i>this._source.maxzoom?Math.pow(2,i-this._source.maxzoom):1;e=new s(t,this._source.tileSize*n,this._source.maxzoom),this._loadTile(e,this._tileLoaded.bind(this,e,t.id,e.state))}return e?(e.uses++,this._tiles[t.id]=e,r||this._source.fire("dataloading",{tile:e,coord:e.coord,dataType:"source"}),e):null},e.prototype._setTileReloadTimer=function(t,e){var r=this,i=e.getExpiryTimeout();i&&(this._timers[t]=setTimeout(function(){r._reloadTile(t,"expired"),delete r._timers[t]},i))},e.prototype._setCacheInvalidationTimer=function(t,e){var r=this,i=e.getExpiryTimeout();i&&(this._cacheTimers[t]=setTimeout(function(){r._cache.remove(t),delete r._cacheTimers[t]},i))},e.prototype._removeTile=function(t){var e=this._tiles[t];if(e&&(e.uses--,delete this._tiles[t],this._timers[t]&&(clearTimeout(this._timers[t]),delete this._timers[t]),!(e.uses>0)))if(e.stopPlacementThrottler(),e.hasData()){var r=e.coord.wrapped().id;this._cache.add(r,e),this._setCacheInvalidationTimer(r,e)}else e.aborted=!0,this._abortTile(e),this._unloadTile(e)},e.prototype.clearTiles=function(){var t=this;this._shouldReloadOnResume=!1,this._paused=!1;for(var e in t._tiles)t._removeTile(e);this._cache.reset()},e.prototype.tilesIn=function(t){for(var e=this,r=[],n=this.getIds(),o=1/0,a=1/0,s=-1/0,l=-1/0,c=t[0].zoom,h=0;h<t.length;h++){var d=t[h];o=Math.min(o,d.column),a=Math.min(a,d.row),s=Math.max(s,d.column),l=Math.max(l,d.row)}for(var m=0;m<n.length;m++){var v=e._tiles[n[m]],y=u.fromID(n[m]),g=[i(y,v.sourceMaxZoom,new p(o,a,c)),i(y,v.sourceMaxZoom,new p(s,l,c))];if(g[0].x<f&&g[0].y<f&&g[1].x>=0&&g[1].y>=0){for(var _=[],x=0;x<t.length;x++)_.push(i(y,v.sourceMaxZoom,t[x]));r.push({tile:v,coord:y,queryGeometry:[_],scale:Math.pow(2,e.transform.zoom-v.coord.z)})}}return r},e.prototype.redoPlacement=function(){for(var t=this,e=this.getIds(),r=0;r<e.length;r++)t.getTileByID(e[r]).redoPlacement(t._source)},e.prototype.getVisibleCoordinates=function(){for(var t=this,e=this.getRenderableIds().map(u.fromID),r=0,i=e;r<i.length;r+=1){var n=i[r];n.posMatrix=t.transform.calculatePosMatrix(n,t._source.maxzoom)}return e},e}(l);m.maxOverzooming=10,m.maxUnderzooming=3,e.exports=m},{"../data/extent":48,"../geo/coordinate":57,"../util/evented":210,"../util/lru_cache":216,"../util/util":223,"./source":97,"./tile":99,"./tile_coord":101,"@mapbox/point-geometry":2}],99:[function(t,e,r){"use strict";var i=t("../util/util"),n=t("../data/bucket").deserialize,o=t("../data/bucket/symbol_bucket"),a=t("../data/feature_index"),s=t("@mapbox/vector-tile"),l=t("pbf"),u=t("../util/vectortile_to_geojson"),c=t("../style-spec/feature_filter"),p=t("../symbol/collision_tile"),h=t("../symbol/collision_box"),f=t("../util/throttler"),d=t("../render/texture"),m=function(t,e,r){this.coord=t,this.uid=i.uniqueId(),this.uses=0,this.tileSize=e,this.sourceMaxZoom=r,this.buckets={},this.expirationTime=null,this.expiredRequestCount=0,this.state="loading",this.placementThrottler=new f(300,this._immediateRedoPlacement.bind(this))};m.prototype.registerFadeDuration=function(t,e){var r=e+this.timeAdded;r<Date.now()||this.fadeEndTime&&r<this.fadeEndTime||(this.fadeEndTime=r,t.set(this.fadeEndTime-Date.now()))},m.prototype.wasRequested=function(){return"errored"===this.state||"loaded"===this.state||"reloading"===this.state},m.prototype.loadVectorData=function(t,e){this.hasData()&&this.unloadVectorData(),this.state="loaded",t&&(t.rawTileData&&(this.rawTileData=t.rawTileData),this.collisionBoxArray=new h(t.collisionBoxArray),this.collisionTile=p.deserialize(t.collisionTile,this.collisionBoxArray),this.featureIndex=a.deserialize(t.featureIndex,this.rawTileData,this.collisionTile),this.buckets=n(t.buckets,e.style),t.iconAtlasImage&&(this.iconAtlasImage=t.iconAtlasImage),t.glyphAtlasImage&&(this.glyphAtlasImage=t.glyphAtlasImage))},m.prototype.reloadSymbolData=function(t,e){var r=this;if("unloaded"!==this.state){this.collisionTile=p.deserialize(t.collisionTile,this.collisionBoxArray),this.featureIndex&&this.featureIndex.setCollisionTile(this.collisionTile);for(var a in r.buckets){var s=r.buckets[a];s instanceof o&&(s.destroy(),delete r.buckets[a])}i.extend(this.buckets,n(t.buckets,e)),t.iconAtlasImage&&(this.iconAtlasImage=t.iconAtlasImage),t.glyphAtlasImage&&(this.glyphAtlasImage=t.glyphAtlasImage)}},m.prototype.unloadVectorData=function(){var t=this;for(var e in t.buckets)t.buckets[e].destroy();this.buckets={},this.iconAtlasTexture&&this.iconAtlasTexture.destroy(),this.glyphAtlasTexture&&this.glyphAtlasTexture.destroy(),this.collisionBoxArray=null,this.collisionTile=null,this.featureIndex=null,this.state="unloaded"},m.prototype.redoPlacement=function(t){if("vector"===t.type||"geojson"===t.type){if("loaded"!==this.state)return void(this.redoWhenDone=!0);if(this.collisionTile){var e=t.map.transform.cameraToTileDistance(this);if(this.angle===t.map.transform.angle&&this.pitch===t.map.transform.pitch&&this.showCollisionBoxes===t.map.showCollisionBoxes){if(this.cameraToTileDistance===e&&this.cameraToCenterDistance===t.map.transform.cameraToCenterDistance)return;if(this.pitch<25)return this.cameraToTileDistance=e,void(this.cameraToCenterDistance=t.map.transform.cameraToCenterDistance)}this.angle=t.map.transform.angle,this.pitch=t.map.transform.pitch,this.cameraToCenterDistance=t.map.transform.cameraToCenterDistance,this.cameraToTileDistance=e,this.showCollisionBoxes=t.map.showCollisionBoxes,this.placementSource=t,this.state="reloading",this.placementThrottler.invoke()}}},m.prototype._immediateRedoPlacement=function(){var t=this;this.placementSource.dispatcher.send("redoPlacement",{type:this.placementSource.type,uid:this.uid,source:this.placementSource.id,angle:this.angle,pitch:this.pitch,cameraToCenterDistance:this.cameraToCenterDistance,cameraToTileDistance:this.cameraToTileDistance,showCollisionBoxes:this.showCollisionBoxes},function(e,r){"reloading"===t.state&&(t.state="loaded",t.reloadSymbolData(r,t.placementSource.map.style),t.placementSource.fire("data",{tile:t,coord:t.coord,dataType:"source"}),t.placementSource.map&&(t.placementSource.map.painter.tileExtentVAO.vao=null),t.redoWhenDone&&(t.state="reloading",t.redoWhenDone=!1,t._immediateRedoPlacement()))},this.workerID)},m.prototype.getBucket=function(t){return this.buckets[t.id]},m.prototype.upload=function(t){var e=this;for(var r in e.buckets){var i=e.buckets[r];i.uploaded||(i.upload(t),i.uploaded=!0)}this.iconAtlasImage&&(this.iconAtlasTexture=new d(t,this.iconAtlasImage,t.RGBA),this.iconAtlasImage=null),this.glyphAtlasImage&&(this.glyphAtlasTexture=new d(t,this.glyphAtlasImage,t.ALPHA),this.glyphAtlasImage=null)},m.prototype.queryRenderedFeatures=function(t,e,r,i,n){var o=this;if(!this.featureIndex)return{};var a=0;for(var s in t){var l=o.getBucket(t[s]);l&&(a=Math.max(a,t[s].queryRadius(l)))}return this.featureIndex.query({queryGeometry:e,bearing:n,params:i,scale:r,additionalRadius:a,tileSize:this.tileSize},t)},m.prototype.querySourceFeatures=function(t,e){var r=this;if(this.rawTileData){this.vtLayers||(this.vtLayers=new s.VectorTile(new l(this.rawTileData)).layers);var i=e?e.sourceLayer:"",n=this.vtLayers._geojsonTileLayer||this.vtLayers[i];if(n)for(var o=c(e&&e.filter),a={z:this.coord.z,x:this.coord.x,y:this.coord.y},p=0;p<n.length;p++){var h=n.feature(p);if(o(h)){var f=new u(h,r.coord.z,r.coord.x,r.coord.y);f.tile=a,t.push(f)}}}},m.prototype.hasData=function(){return"loaded"===this.state||"reloading"===this.state||"expired"===this.state},m.prototype.setExpiryData=function(t){var e=this.expirationTime;if(t.cacheControl){var r=i.parseCacheControl(t.cacheControl);r["max-age"]&&(this.expirationTime=Date.now()+1e3*r["max-age"])}else t.expires&&(this.expirationTime=new Date(t.expires).getTime());if(this.expirationTime){var n=Date.now(),o=!1;if(this.expirationTime>n)o=!1;else if(e)if(this.expirationTime<e)o=!0;else{var a=this.expirationTime-e;a?this.expirationTime=n+Math.max(a,3e4):o=!0}else o=!0;o?(this.expiredRequestCount++,this.state="expired"):this.expiredRequestCount=0}},m.prototype.getExpiryTimeout=function(){if(this.expirationTime)return this.expiredRequestCount?1e3*(1<<Math.min(this.expiredRequestCount-1,31)):Math.min(this.expirationTime-(new Date).getTime(),Math.pow(2,31)-1)},m.prototype.stopPlacementThrottler=function(){this.placementThrottler.stop(),"reloading"===this.state&&(this.state="loaded")},e.exports=m},{"../data/bucket":42,"../data/bucket/symbol_bucket":47,"../data/feature_index":49,"../render/texture":83,"../style-spec/feature_filter":110,"../symbol/collision_box":170,"../symbol/collision_tile":172,"../util/throttler":221,"../util/util":223,"../util/vectortile_to_geojson":224,"@mapbox/vector-tile":6,pbf:29}],100:[function(t,e,r){"use strict";var i=t("../geo/lng_lat_bounds"),n=t("../util/util").clamp,o=function(t,e,r){this.bounds=i.convert(this.validateBounds(t)),this.minzoom=e||0,this.maxzoom=r||24};o.prototype.validateBounds=function(t){return Array.isArray(t)&&4===t.length?[Math.max(-180,t[0]),Math.max(-90,t[1]),Math.min(180,t[2]),Math.min(90,t[3])]:[-180,-90,180,90]},o.prototype.contains=function(t,e){var r=e?Math.min(t.z,e):t.z,i={minX:Math.floor(this.lngX(this.bounds.getWest(),r)),minY:Math.floor(this.latY(this.bounds.getNorth(),r)),maxX:Math.ceil(this.lngX(this.bounds.getEast(),r)),maxY:Math.ceil(this.latY(this.bounds.getSouth(),r))};return t.x>=i.minX&&t.x<i.maxX&&t.y>=i.minY&&t.y<i.maxY},o.prototype.lngX=function(t,e){return(t+180)*(Math.pow(2,e)/360)},o.prototype.latY=function(t,e){var r=n(Math.sin(Math.PI/180*t),-.9999,.9999),i=Math.pow(2,e)/(2*Math.PI);return Math.pow(2,e-1)+.5*Math.log((1+r)/(1-r))*-i},e.exports=o},{"../geo/lng_lat_bounds":59,"../util/util":223}],101:[function(t,e,r){"use strict";function i(t,e){if(t.row>e.row){var r=t;t=e,e=r}return{x0:t.column,y0:t.row,x1:e.column,y1:e.row,dx:e.column-t.column,dy:e.row-t.row}}function n(t,e,r,i,n){var o=Math.max(r,Math.floor(e.y0)),a=Math.min(i,Math.ceil(e.y1));if(t.x0===e.x0&&t.y0===e.y0?t.x0+e.dy/t.dy*t.dx<e.x1:t.x1-e.dy/t.dy*t.dx<e.x0){var s=t;t=e,e=s}for(var l=t.dx/t.dy,u=e.dx/e.dy,c=t.dx>0,p=e.dx<0,h=o;h<a;h++){var f=l*Math.max(0,Math.min(t.dy,h+c-t.y0))+t.x0,d=u*Math.max(0,Math.min(e.dy,h+p-e.y0))+e.x0;n(Math.floor(d),Math.ceil(f),h)}}function o(t,e,r,o,a,s){var l,u=i(t,e),c=i(e,r),p=i(r,t);u.dy>c.dy&&(l=u,u=c,c=l),u.dy>p.dy&&(l=u,u=p,p=l),c.dy>p.dy&&(l=c,c=p,p=l),u.dy&&n(p,u,o,a,s),c.dy&&n(p,c,o,a,s)}function a(t,e,r){for(var i,n="",o=t;o>0;o--)i=1<<o-1,n+=(e&i?1:0)+(r&i?2:0);return n}var s=t("@mapbox/whoots-js"),l=t("../geo/coordinate"),u=function(t,e,r,i){(void 0===i||isNaN(i))&&(i=0),this.z=+t,this.x=+e,this.y=+r,this.w=+i,(i*=2)<0&&(i=-1*i-1);var n=1<<this.z;this.id=32*(n*n*i+n*this.y+this.x)+this.z,this.posMatrix=null};u.prototype.toString=function(){return this.z+"/"+this.x+"/"+this.y},u.prototype.toCoordinate=function(t){var e=Math.min(this.z,void 0===t?this.z:t),r=Math.pow(2,e),i=this.y,n=this.x+r*this.w;return new l(n,i,e)},u.prototype.url=function(t,e,r){var i=s.getTileBBox(this.x,this.y,this.z),n=a(this.z,this.x,this.y);return t[(this.x+this.y)%t.length].replace("{prefix}",(this.x%16).toString(16)+(this.y%16).toString(16)).replace("{z}",String(Math.min(this.z,e||this.z))).replace("{x}",String(this.x)).replace("{y}",String("tms"===r?Math.pow(2,this.z)-this.y-1:this.y)).replace("{quadkey}",n).replace("{bbox-epsg-3857}",i)},u.prototype.parent=function(t){return 0===this.z?null:this.z>t?new u(this.z-1,this.x,this.y,this.w):new u(this.z-1,Math.floor(this.x/2),Math.floor(this.y/2),this.w)},u.prototype.wrapped=function(){return new u(this.z,this.x,this.y,0)},u.prototype.children=function(t){if(this.z>=t)return[new u(this.z+1,this.x,this.y,this.w)];var e=this.z+1,r=2*this.x,i=2*this.y;return[new u(e,r,i,this.w),new u(e,r+1,i,this.w),new u(e,r,i+1,this.w),new u(e,r+1,i+1,this.w)]},u.prototype.scaledTo=function(t,e){return this.z>e?new u(t,this.x,this.y,this.w):t<=this.z?new u(t,this.x>>this.z-t,this.y>>this.z-t,this.w):new u(t,this.x<<t-this.z,this.y<<t-this.z,this.w)},u.cover=function(t,e,r,i){function n(t,e,n){var o,l,c,p;if(n>=0&&n<=a)for(o=t;o<e;o++)l=Math.floor(o/a),c=(o%a+a)%a,0!==l&&!0!==i||(p=new u(r,c,n,l),s[p.id]=p)}void 0===i&&(i=!0);var a=1<<t,s={};return o(e[0],e[1],e[2],0,a,n),o(e[2],e[3],e[0],0,a,n),Object.keys(s).map(function(t){return s[t]})},u.fromID=function(t){var e=t%32,r=1<<e,i=(t-e)/32,n=i%r,o=(i-n)/r%r,a=Math.floor(i/(r*r));return a%2!=0&&(a=-1*a-1),a/=2,new u(e,n,o,a)},e.exports=u},{"../geo/coordinate":57,"@mapbox/whoots-js":10}],102:[function(t,e,r){"use strict";var i=t("../util/evented"),n=t("../util/util"),o=t("./load_tilejson"),a=t("../util/mapbox").normalizeTileURL,s=t("./tile_bounds"),l=t("../util/ajax").ResourceType,u=t("../util/browser"),c=function(t){function e(e,r,i,o){if(t.call(this),this.id=e,this.dispatcher=i,this.type="vector",this.minzoom=0,this.maxzoom=22,this.scheme="xyz",this.tileSize=512,this.reparseOverscaled=!0,this.isTileClipped=!0,n.extend(this,n.pick(r,["url","scheme","tileSize"])),this._options=n.extend({type:"vector"},r),512!==this.tileSize)throw new Error("vector tile sources must have a tileSize of 512");this.setEventedParent(o)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.load=function(){var t=this;this.fire("dataloading",{dataType:"source"}),o(this._options,this.map._transformRequest,function(e,r){e?t.fire("error",e):r&&(n.extend(t,r),r.bounds&&(t.tileBounds=new s(r.bounds,t.minzoom,t.maxzoom)),t.fire("data",{dataType:"source",sourceDataType:"metadata"}),t.fire("data",{dataType:"source",sourceDataType:"content"}))})},e.prototype.hasTile=function(t){return!this.tileBounds||this.tileBounds.contains(t,this.maxzoom)},e.prototype.onAdd=function(t){this.map=t,this.load()},e.prototype.serialize=function(){return n.extend({},this._options)},e.prototype.loadTile=function(t,e){function r(r,i){if(!t.aborted){if(r)return e(r);this.map._refreshExpiredTiles&&t.setExpiryData(i),t.loadVectorData(i,this.map.painter),t.redoWhenDone&&(t.redoWhenDone=!1,t.redoPlacement(this)),e(null),t.reloadCallback&&(this.loadTile(t,t.reloadCallback),t.reloadCallback=null)}}var i=t.coord.z>this.maxzoom?Math.pow(2,t.coord.z-this.maxzoom):1,n=a(t.coord.url(this.tiles,this.maxzoom,this.scheme),this.url),o={request:this.map._transformRequest(n,l.Tile),uid:t.uid,coord:t.coord,zoom:t.coord.z,tileSize:this.tileSize*i,type:this.type,source:this.id,pixelRatio:u.devicePixelRatio,overscaling:i,angle:this.map.transform.angle,pitch:this.map.transform.pitch,cameraToCenterDistance:this.map.transform.cameraToCenterDistance,cameraToTileDistance:this.map.transform.cameraToTileDistance(t),showCollisionBoxes:this.map.showCollisionBoxes};t.workerID&&"expired"!==t.state?"loading"===t.state?t.reloadCallback=e:this.dispatcher.send("reloadTile",o,r.bind(this),t.workerID):t.workerID=this.dispatcher.send("loadTile",o,r.bind(this))},e.prototype.abortTile=function(t){this.dispatcher.send("abortTile",{uid:t.uid,type:this.type,source:this.id},void 0,t.workerID)},e.prototype.unloadTile=function(t){t.unloadVectorData(),this.dispatcher.send("removeTile",{uid:t.uid,type:this.type,source:this.id},void 0,t.workerID)},e}(i);e.exports=c},{"../util/ajax":201,"../util/browser":202,"../util/evented":210,"../util/mapbox":217,"../util/util":223,"./load_tilejson":92,"./tile_bounds":100}],103:[function(t,e,r){"use strict";function i(t,e){var r=n.getArrayBuffer(t.request,function(t,r){t?e(t):r&&e(null,{vectorTile:new o.VectorTile(new a(r.data)),rawData:r.data,cacheControl:r.cacheControl,expires:r.expires})});return function(){r.abort()}}var n=t("../util/ajax"),o=t("@mapbox/vector-tile"),a=t("pbf"),s=t("./worker_tile"),l=t("../util/util"),u=function(t,e,r){this.actor=t,this.layerIndex=e,this.loadVectorData=r||i,this.loading={},this.loaded={}};u.prototype.loadTile=function(t,e){var r=this,i=t.source,n=t.uid;this.loading[i]||(this.loading[i]={});var o=this.loading[i][n]=new s(t);o.abort=this.loadVectorData(t,function(t,a){if(delete r.loading[i][n],t||!a)return e(t);var s=a.rawData,u={};a.expires&&(u.expires=a.expires),a.cacheControl&&(u.cacheControl=a.cacheControl),o.vectorTile=a.vectorTile,o.parse(a.vectorTile,r.layerIndex,r.actor,function(t,r,i){if(t||!r)return e(t);e(null,l.extend({rawTileData:s},r,u),i)}),r.loaded[i]=r.loaded[i]||{},r.loaded[i][n]=o})},u.prototype.reloadTile=function(t,e){function r(t,r){if(this.reloadCallback){var i=this.reloadCallback;delete this.reloadCallback,this.parse(this.vectorTile,o.layerIndex,o.actor,i)}e(t,r)}var i=this.loaded[t.source],n=t.uid,o=this;if(i&&i[n]){var a=i[n];"parsing"===a.status?a.reloadCallback=e:"done"===a.status&&a.parse(a.vectorTile,this.layerIndex,this.actor,r.bind(a))}},u.prototype.abortTile=function(t){var e=this.loading[t.source],r=t.uid;e&&e[r]&&e[r].abort&&(e[r].abort(),delete e[r])},u.prototype.removeTile=function(t){var e=this.loaded[t.source],r=t.uid;e&&e[r]&&delete e[r]},u.prototype.redoPlacement=function(t,e){var r=this.loaded[t.source],i=this.loading[t.source],n=t.uid;if(r&&r[n]){var o=r[n],a=o.redoPlacement(t.angle,t.pitch,t.cameraToCenterDistance,t.cameraToTileDistance,t.showCollisionBoxes);a.result&&e(null,a.result,a.transferables)}else i&&i[n]&&(i[n].angle=t.angle)},e.exports=u},{"../util/ajax":201,"../util/util":223,"./worker_tile":106,"@mapbox/vector-tile":6,pbf:29}],104:[function(t,e,r){"use strict";var i=t("../util/ajax"),n=t("./image_source"),o=function(t){function e(e,r,i,n){t.call(this,e,r,i,n),this.roundZoom=!0,this.type="video",this.options=r}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,i.getVideo(e.urls,function(e,r){if(e)t.fire("error",{error:e});else if(r){t.video=r,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.map=t,this.load(),this.video&&(this.video.play(),this.setCoordinates(this.coordinates)))},e.prototype.prepare=function(){0===Object.keys(this.tiles).length||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}(n);e.exports=o},{"../util/ajax":201,"./image_source":91}],105:[function(t,e,r){"use strict";var i=t("../util/actor"),n=t("../style/style_layer_index"),o=t("./vector_tile_worker_source"),a=t("./geojson_worker_source"),s=t("./rtl_text_plugin"),l=function(t){var e=this;this.self=t,this.actor=new i(t,this),this.layerIndexes={},this.workerSourceTypes={vector:o,geojson:a},this.workerSources={},this.self.registerWorkerSource=function(t,r){if(e.workerSourceTypes[t])throw new Error('Worker source with name "'+t+'" already registered.');e.workerSourceTypes[t]=r},this.self.registerRTLTextPlugin=function(t){if(s.applyArabicShaping||s.processBidirectionalText)throw new Error("RTL text plugin already registered.");s.applyArabicShaping=t.applyArabicShaping,s.processBidirectionalText=t.processBidirectionalText}};l.prototype.setLayers=function(t,e){this.getLayerIndex(t).replace(e)},l.prototype.updateLayers=function(t,e){this.getLayerIndex(t).update(e.layers,e.removedIds,e.symbolOrder)},l.prototype.loadTile=function(t,e,r){this.getWorkerSource(t,e.type).loadTile(e,r)},l.prototype.reloadTile=function(t,e,r){this.getWorkerSource(t,e.type).reloadTile(e,r)},l.prototype.abortTile=function(t,e){this.getWorkerSource(t,e.type).abortTile(e)},l.prototype.removeTile=function(t,e){this.getWorkerSource(t,e.type).removeTile(e)},l.prototype.removeSource=function(t,e){var r=this.getWorkerSource(t,e.type);void 0!==r.removeSource&&r.removeSource(e)},l.prototype.redoPlacement=function(t,e,r){this.getWorkerSource(t,e.type).redoPlacement(e,r)},l.prototype.loadWorkerSource=function(t,e,r){try{this.self.importScripts(e.url),r()}catch(t){r(t)}},l.prototype.loadRTLTextPlugin=function(t,e,r){try{s.applyArabicShaping||s.processBidirectionalText||(this.self.importScripts(e),s.applyArabicShaping&&s.processBidirectionalText||r(new Error("RTL Text Plugin failed to import scripts from "+e)))}catch(t){r(t)}},l.prototype.getLayerIndex=function(t){var e=this.layerIndexes[t];return e||(e=this.layerIndexes[t]=new n),e},l.prototype.getWorkerSource=function(t,e){var r=this;if(this.workerSources[t]||(this.workerSources[t]={}),!this.workerSources[t][e]){var i={send:function(e,i,n,o){r.actor.send(e,i,n,o,t)}};this.workerSources[t][e]=new this.workerSourceTypes[e](i,this.getLayerIndex(t))}return this.workerSources[t][e]},e.exports=function(t){return new l(t)}},{"../style/style_layer_index":164,"../util/actor":200,"./geojson_worker_source":89,"./rtl_text_plugin":96,"./vector_tile_worker_source":103}],106:[function(t,e,r){"use strict";function i(t,e){for(var r=0,i=t.layers;r<i.length;r+=1)i[r].recalculate(e)}function n(t,e){return t.filter(function(t){return!t.isEmpty()}).map(function(t){return t.serialize(e)})}var o=t("../data/feature_index"),a=t("../symbol/collision_tile"),s=t("../symbol/collision_box"),l=t("../util/dictionary_coder"),u=(t("../data/bucket/symbol_bucket"),t("../util/util")),c=t("../render/image_atlas"),p=c.makeImageAtlas,h=t("../render/glyph_atlas"),f=h.makeGlyphAtlas,d=function(t){this.coord=t.coord,this.uid=t.uid,this.zoom=t.zoom,this.pixelRatio=t.pixelRatio,this.tileSize=t.tileSize,this.source=t.source,this.overscaling=t.overscaling,this.angle=t.angle,this.pitch=t.pitch,this.cameraToCenterDistance=t.cameraToCenterDistance,this.cameraToTileDistance=t.cameraToTileDistance,this.showCollisionBoxes=t.showCollisionBoxes};d.prototype.parse=function(t,e,r,c){function h(){var t=this;if(R)return c(R);if(D&&O){for(var e=new a(this.angle,this.pitch,this.cameraToCenterDistance,this.cameraToTileDistance,this.collisionBoxArray),r=f(D),o=p(O),s=0,l=t.symbolBuckets;s<l.length;s+=1){var h=l[s];i(h,t.zoom),h.prepare(D,r.positions,O,o.positions),h.place(e,t.showCollisionBoxes)}this.status="done";var d=[r.image.data.buffer,o.image.data.buffer];c(null,{buckets:n(u.values(y),d),featureIndex:v.serialize(d),collisionTile:e.serialize(d),collisionBoxArray:this.collisionBoxArray.serialize(),glyphAtlasImage:r.image,iconAtlasImage:o.image},d)}}var d=this;this.status="parsing",this.data=t,this.collisionBoxArray=new s;var m=new l(Object.keys(t.layers).sort()),v=new o(this.coord,this.overscaling);v.bucketLayerIDs=[];var y={},g={featureIndex:v,iconDependencies:{},glyphDependencies:{}},_=e.familiesBySource[this.source];for(var x in _){var b=t.layers[x];if(b){1===b.version&&u.warnOnce('Vector tile source "'+d.source+'" layer "'+x+'" does not use vector tile spec v2 and therefore may have some rendering errors.');for(var w=m.encode(x),T=[],S=0;S<b.length;S++){var z=b.feature(S);T.push({feature:z,index:S,sourceLayerIndex:w})}for(var A=0,C=_[x];A<C.length;A+=1){var E=C[A],k=E[0];if(!(k.minzoom&&d.zoom<Math.floor(k.minzoom)||k.maxzoom&&d.zoom>=k.maxzoom||k.layout&&"none"===k.layout.visibility)){for(var M=0,L=E;M<L.length;M+=1)L[M].recalculate(d.zoom);(y[k.id]=k.createBucket({index:v.bucketLayerIDs.length,layers:E,zoom:d.zoom,pixelRatio:d.pixelRatio,overscaling:d.overscaling,collisionBoxArray:d.collisionBoxArray})).populate(T,g),v.bucketLayerIDs.push(E.map(function(t){return t.id}))}}}}this.symbolBuckets=[];for(var I=e.symbolOrder.length-1;I>=0;I--){var P=y[e.symbolOrder[I]];P&&d.symbolBuckets.push(P)}var R,D,O,B=u.mapObject(g.glyphDependencies,function(t){return Object.keys(t).map(Number)});Object.keys(B).length?r.send("getGlyphs",{uid:this.uid,stacks:B},function(t,e){R||(R=t,D=e,h.call(d))}):D={};var F=Object.keys(g.iconDependencies);F.length?r.send("getImages",{icons:F},function(t,e){R||(R=t,O=e,h.call(d))}):O={},h.call(this)},d.prototype.redoPlacement=function(t,e,r,o,s){var l=this;if(this.angle=t,this.pitch=e,this.cameraToCenterDistance=r,this.cameraToTileDistance=o,"done"!==this.status)return{};for(var u=new a(this.angle,this.pitch,this.cameraToCenterDistance,this.cameraToTileDistance,this.collisionBoxArray),c=0,p=l.symbolBuckets;c<p.length;c+=1){var h=p[c];i(h,l.zoom),h.place(u,s)}var f=[];return{result:{buckets:n(this.symbolBuckets,f),collisionTile:u.serialize(f)},transferables:f}},e.exports=d},{"../data/bucket/symbol_bucket":47,"../data/feature_index":49,"../render/glyph_atlas":74,"../render/image_atlas":76,"../symbol/collision_box":170,"../symbol/collision_tile":172,"../util/dictionary_coder":207,"../util/util":223}],107:[function(t,e,r){"use strict";function i(t,e){var r={};for(var i in t)"ref"!==i&&(r[i]=t[i]);return o.forEach(function(t){t in e&&(r[t]=e[t])}),r}function n(t){t=t.slice();for(var e=Object.create(null),r=0;r<t.length;r++)e[t[r].id]=t[r];for(var n=0;n<t.length;n++)"ref"in t[n]&&(t[n]=i(t[n],e[t[n].ref]));return t}var o=t("./util/ref_properties");e.exports=n},{"./util/ref_properties":129}],108:[function(t,e,r){"use strict";function i(t,e,r,i){t=t||{},e=e||{};var n;for(n in t)t.hasOwnProperty(n)&&(e.hasOwnProperty(n)||(r.push({command:c.removeSource,args:[n]}),i[n]=!0));for(n in e)e.hasOwnProperty(n)&&(t.hasOwnProperty(n)?u(t[n],e[n])||(r.push({command:c.removeSource,args:[n]}),r.push({command:c.addSource,args:[n,e[n]]}),i[n]=!0):r.push({command:c.addSource,args:[n,e[n]]}))}function n(t,e,r,i,n,o){t=t||{},e=e||{};var a;for(a in t)t.hasOwnProperty(a)&&(u(t[a],e[a])||r.push({command:o,args:[i,a,e[a],n]}));for(a in e)e.hasOwnProperty(a)&&!t.hasOwnProperty(a)&&(u(t[a],e[a])||r.push({command:o,args:[i,a,e[a],n]}))}function o(t){return t.id}function a(t,e){return t[e.id]=e,t}function s(t,e,r){t=t||[],e=e||[];var i,s,l,p,h,f,d,m=t.map(o),v=e.map(o),y=t.reduce(a,{}),g=e.reduce(a,{}),_=m.slice(),x=Object.create(null);for(i=0,s=0;i<m.length;i++)l=m[i],g.hasOwnProperty(l)?s++:(r.push({command:c.removeLayer,args:[l]}),_.splice(_.indexOf(l,s),1));for(i=0,s=0;i<v.length;i++)l=v[v.length-1-i],_[_.length-1-i]!==l&&(y.hasOwnProperty(l)?(r.push({command:c.removeLayer,args:[l]}),_.splice(_.lastIndexOf(l,_.length-s),1)):s++,f=_[_.length-i],r.push({command:c.addLayer,args:[g[l],f]}),_.splice(_.length-i,0,l),x[l]=!0);for(i=0;i<v.length;i++)if(l=v[i],p=y[l],h=g[l],!x[l]&&!u(p,h))if(u(p.source,h.source)&&u(p["source-layer"],h["source-layer"])&&u(p.type,h.type)){n(p.layout,h.layout,r,l,null,c.setLayoutProperty),n(p.paint,h.paint,r,l,null,c.setPaintProperty),u(p.filter,h.filter)||r.push({command:c.setFilter,args:[l,h.filter]}),u(p.minzoom,h.minzoom)&&u(p.maxzoom,h.maxzoom)||r.push({command:c.setLayerZoomRange,args:[l,h.minzoom,h.maxzoom]});for(d in p)p.hasOwnProperty(d)&&"layout"!==d&&"paint"!==d&&"filter"!==d&&"metadata"!==d&&"minzoom"!==d&&"maxzoom"!==d&&(0===d.indexOf("paint.")?n(p[d],h[d],r,l,d.slice(6),c.setPaintProperty):u(p[d],h[d])||r.push({command:c.setLayerProperty,args:[l,d,h[d]]}));for(d in h)h.hasOwnProperty(d)&&!p.hasOwnProperty(d)&&"layout"!==d&&"paint"!==d&&"filter"!==d&&"metadata"!==d&&"minzoom"!==d&&"maxzoom"!==d&&(0===d.indexOf("paint.")?n(p[d],h[d],r,l,d.slice(6),c.setPaintProperty):u(p[d],h[d])||r.push({command:c.setLayerProperty,args:[l,d,h[d]]}))}else r.push({command:c.removeLayer,args:[l]}),f=_[_.lastIndexOf(l)+1],r.push({command:c.addLayer,args:[h,f]})}function l(t,e){if(!t)return[{command:c.setStyle,args:[e]}];var r=[];try{if(!u(t.version,e.version))return[{command:c.setStyle,args:[e]}];u(t.center,e.center)||r.push({command:c.setCenter,args:[e.center]}),u(t.zoom,e.zoom)||r.push({command:c.setZoom,args:[e.zoom]}),u(t.bearing,e.bearing)||r.push({command:c.setBearing,args:[e.bearing]}),u(t.pitch,e.pitch)||r.push({command:c.setPitch,args:[e.pitch]}),u(t.sprite,e.sprite)||r.push({command:c.setSprite,args:[e.sprite]}),u(t.glyphs,e.glyphs)||r.push({command:c.setGlyphs,args:[e.glyphs]}),u(t.transition,e.transition)||r.push({command:c.setTransition,args:[e.transition]}),u(t.light,e.light)||r.push({command:c.setLight,args:[e.light]});var n={},o=[];i(t.sources,e.sources,o,n);var a=[];t.layers&&t.layers.forEach(function(t){n[t.source]?r.push({command:c.removeLayer,args:[t.id]}):a.push(t)}),r=r.concat(o),s(a,e.layers,r)}catch(t){console.warn("Unable to compute style diff:",t),r=[{command:c.setStyle,args:[e]}]}return r}var u=t("lodash.isequal"),c={setStyle:"setStyle",addLayer:"addLayer",removeLayer:"removeLayer",setPaintProperty:"setPaintProperty",setLayoutProperty:"setLayoutProperty",setFilter:"setFilter",addSource:"addSource",removeSource:"removeSource",setLayerZoomRange:"setLayerZoomRange",setLayerProperty:"setLayerProperty",setCenter:"setCenter",setZoom:"setZoom",setBearing:"setBearing",setPitch:"setPitch",setSprite:"setSprite",setGlyphs:"setGlyphs",setTransition:"setTransition",setLight:"setLight"};e.exports=l,e.exports.operations=c},{"lodash.isequal":120}],109:[function(t,e,r){"use strict";function i(t,e){for(var r=[],i=arguments.length-2;i-- >0;)r[i]=arguments[i+2];this.message=(t?t+": ":"")+n.apply(n,r),null!==e&&void 0!==e&&e.__line__&&(this.line=e.__line__)}var n=t("util").format;e.exports=i},{util:36}],110:[function(t,e,r){"use strict";function i(t){return new Function("f","var p = (f && f.properties || {}); return "+n(t))}function n(t){if(!t)return"true";var e=t[0];return t.length<=1?"any"===e?"false":"true":"("+("=="===e?a(t[1],t[2],"===",!1):"!="===e?a(t[1],t[2],"!==",!1):"<"===e||">"===e||"<="===e||">="===e?a(t[1],t[2],e,!0):"any"===e?s(t.slice(1),"||"):"all"===e?s(t.slice(1),"&&"):"none"===e?c(s(t.slice(1),"||")):"in"===e?l(t[1],t.slice(2)):"!in"===e?c(l(t[1],t.slice(2))):"has"===e?u(t[1]):"!has"===e?c(u(t[1])):"true")+")"}function o(t){return"$type"===t?"f.type":"$id"===t?"f.id":"p["+JSON.stringify(t)+"]"}function a(t,e,r,i){var n=o(t),a="$type"===t?h.indexOf(e):JSON.stringify(e);return(i?"typeof "+n+"=== typeof "+a+"&&":"")+n+r+a}function s(t,e){return t.map(n).join(e)}function l(t,e){"$type"===t&&(e=e.map(function(t){return h.indexOf(t)}));var r=JSON.stringify(e.sort(p)),i=o(t);return e.length<=200?r+".indexOf("+i+") !== -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; }("+i+", "+r+",0,"+(e.length-1)+")"}function u(t){return"$id"===t?'"id" in f':JSON.stringify(t)+" in p"}function c(t){return"!("+t+")"}function p(t,e){return t<e?-1:t>e?1:0}e.exports=i;var h=["Unknown","Point","LineString","Polygon"]},{}],111:[function(t,e,r){"use strict";function i(t){return t>y?Math.pow(t,1/3):t/v+d}function n(t){return t>m?t*t*t:v*(t-d)}function o(t){return 255*(t<=.0031308?12.92*t:1.055*Math.pow(t,1/2.4)-.055)}function a(t){return t/=255,t<=.04045?t/12.92:Math.pow((t+.055)/1.055,2.4)}function s(t){var e=a(t[0]),r=a(t[1]),n=a(t[2]),o=i((.4124564*e+.3575761*r+.1804375*n)/p),s=i((.2126729*e+.7151522*r+.072175*n)/h);return[116*s-16,500*(o-s),200*(s-i((.0193339*e+.119192*r+.9503041*n)/f)),t[3]]}function l(t){var e=(t[0]+16)/116,r=isNaN(t[1])?e:e+t[1]/500,i=isNaN(t[2])?e:e-t[2]/200;return e=h*n(e),r=p*n(r),i=f*n(i),[o(3.2404542*r-1.5371385*e-.4985314*i),o(-.969266*r+1.8760108*e+.041556*i),o(.0556434*r-.2040259*e+1.0572252*i),t[3]]}function u(t){var e=s(t),r=e[0],i=e[1],n=e[2],o=Math.atan2(n,i)*_;return[o<0?o+360:o,Math.sqrt(i*i+n*n),r,t[3]]}function c(t){var e=t[0]*g,r=t[1];return l([t[2],Math.cos(e)*r,Math.sin(e)*r,t[3]])}var p=.95047,h=1,f=1.08883,d=4/29,m=6/29,v=3*m*m,y=m*m*m,g=Math.PI/180,_=180/Math.PI;e.exports={lab:{forward:s,reverse:l},hcl:{forward:u,reverse:c}}},{}],112:[function(t,e,r){"use strict";function i(t){return t}function n(t,e){var r,c="color"===e.type;if(p(t)){var h=t.stops&&"object"==typeof t.stops[0][0],v=h||void 0!==t.property,y=h||!v,g=t.type||("interpolated"===e.function?"exponential":"interval");c&&(t=m({},t),t.stops&&(t.stops=t.stops.map(function(t){return[t[0],d(t[1])]})),t.default?t.default=d(t.default):t.default=d(e.default));var _,x,b;if("exponential"===g)_=l;else if("interval"===g)_=s;else if("categorical"===g){_=a,x=Object.create(null);for(var w=0,T=t.stops;w<T.length;w+=1){var S=T[w];x[S[0]]=S[1]}b=typeof t.stops[0][0]}else{if("identity"!==g)throw new Error('Unknown function type "'+g+'"');_=u}var z;if(t.colorSpace&&"rgb"!==t.colorSpace){if(!f[t.colorSpace])throw new Error("Unknown color space: "+t.colorSpace);var A=f[t.colorSpace];t=JSON.parse(JSON.stringify(t));for(var C=0;C<t.stops.length;C++)t.stops[C]=[t.stops[C][0],A.forward(t.stops[C][1])];z=A.reverse}else z=i;if(h){for(var E={},k=[],M=0;M<t.stops.length;M++){var L=t.stops[M],I=L[0].zoom;void 0===E[I]&&(E[I]={zoom:I,type:t.type,property:t.property,default:t.default,stops:[]},k.push(I)),E[I].stops.push([L[0].value,L[1]])}for(var P=[],R=0,D=k;R<D.length;R+=1){var O=D[R];P.push([E[O].zoom,n(E[O],e)])}r=function(r,i){return z(l({stops:P,base:t.base},e,r)(r,i))},r.isFeatureConstant=!1,r.isZoomConstant=!1}else y?(r=function(r){return z(_(t,e,r,x,b))},r.isFeatureConstant=!0,r.isZoomConstant=!1):(r=function(r,i){var n=i[t.property];return void 0===n?o(t.default,e.default):z(_(t,e,n,x,b))},r.isFeatureConstant=!1,r.isZoomConstant=!0)}else c&&t&&(t=d(t)),r=function(){return t},r.isFeatureConstant=!0,r.isZoomConstant=!0;return r}function o(t,e,r){return void 0!==t?t:void 0!==e?e:void 0!==r?r:void 0}function a(t,e,r,i,n){return o(typeof r===n?i[r]:void 0,t.default,e.default)}function s(t,e,r){if("number"!==v(r))return o(t.default,e.default);var i=t.stops.length;if(1===i)return t.stops[0][1];if(r<=t.stops[0][0])return t.stops[0][1];if(r>=t.stops[i-1][0])return t.stops[i-1][1];var n=c(t.stops,r);return t.stops[n][1]}function l(t,e,r){var n=void 0!==t.base?t.base:1;if("number"!==v(r))return o(t.default,e.default);var a=t.stops.length;if(1===a)return t.stops[0][1];if(r<=t.stops[0][0])return t.stops[0][1];if(r>=t.stops[a-1][0])return t.stops[a-1][1];var s=c(t.stops,r),l=h(r,n,t.stops[s][0],t.stops[s+1][0]),u=t.stops[s][1],p=t.stops[s+1][1],f=y[e.type]||i;return"function"==typeof u?function(){for(var t=[],e=arguments.length;e--;)t[e]=arguments[e];var r=u.apply(void 0,t),i=p.apply(void 0,t);if(void 0!==r&&void 0!==i)return f(r,i,l)}:f(u,p,l)}function u(t,e,r){return"color"===e.type?r=d(r):v(r)===e.type||"enum"===e.type&&e.values[r]||(r=void 0),o(r,t.default,e.default)}function c(t,e){for(var r,i,n=t.length,o=0,a=n-1,s=0;o<=a;){if(s=Math.floor((o+a)/2),r=t[s][0],i=t[s+1][0],e===r||e>r&&e<i)return s;r<e?o=s+1:r>e&&(a=s-1)}return Math.max(s-1,0)}function p(t){return"object"==typeof t&&(t.stops||"identity"===t.type)}function h(t,e,r,i){var n=i-r,o=t-r;return 0===n?0:1===e?o/n:(Math.pow(e,o)-1)/(Math.pow(e,n)-1)}var f=t("./color_spaces"),d=t("../util/parse_color"),m=t("../util/extend"),v=t("../util/get_type"),y=t("../util/interpolate");e.exports=n,e.exports.isFunctionDefinition=p,e.exports.interpolationFactor=h,e.exports.findStopLessThanOrEqualTo=c},{"../util/extend":125,"../util/get_type":126,"../util/interpolate":127,"../util/parse_color":128,"./color_spaces":111}],113:[function(t,e,r){"use strict";function i(t){var e=typeof t;if("number"===e||"boolean"===e||"string"===e||void 0===t||null===t)return JSON.stringify(t);if(Array.isArray(t)){for(var r="[",n=0,o=t;n<o.length;n+=1)r+=i(o[n])+",";return r+"]"}for(var a=Object.keys(t).sort(),s="{",l=0;l<a.length;l++)s+=JSON.stringify(a[l])+":"+i(t[a[l]])+",";return s+"}"}function n(t){for(var e="",r=0,n=a;r<n.length;r+=1)e+="/"+i(t[n[r]]);return e}function o(t){for(var e={},r=0;r<t.length;r++){var i=n(t[r]),o=e[i];o||(o=e[i]=[]),o.push(t[r])}var a=[];for(var s in e)a.push(e[s]);return a}var a=t("./util/ref_properties");e.exports=o},{"./util/ref_properties":129}],114:[function(t,e,r){function i(t){return t=Math.round(t),t<0?0:t>255?255:t}function n(t){return t<0?0:t>1?1:t}function o(t){return i("%"===t[t.length-1]?parseFloat(t)/100*255:parseInt(t))}function a(t){return n("%"===t[t.length-1]?parseFloat(t)/100:parseFloat(t))}function s(t,e,r){return r<0?r+=1:r>1&&(r-=1),6*r<1?t+(e-t)*r*6:2*r<1?e:3*r<2?t+(e-t)*(2/3-r)*6:t}function l(t){var e=t.replace(/ /g,"").toLowerCase();if(e in u)return u[e].slice();if("#"===e[0]){if(4===e.length){var r=parseInt(e.substr(1),16);return r>=0&&r<=4095?[(3840&r)>>4|(3840&r)>>8,240&r|(240&r)>>4,15&r|(15&r)<<4,1]:null}if(7===e.length){var r=parseInt(e.substr(1),16);return r>=0&&r<=16777215?[(16711680&r)>>16,(65280&r)>>8,255&r,1]:null}return null}var n=e.indexOf("("),l=e.indexOf(")");if(-1!==n&&l+1===e.length){var c=e.substr(0,n),p=e.substr(n+1,l-(n+1)).split(","),h=1;switch(c){case"rgba":if(4!==p.length)return null;h=a(p.pop());case"rgb":return 3!==p.length?null:[o(p[0]),o(p[1]),o(p[2]),h];case"hsla":if(4!==p.length)return null;h=a(p.pop());case"hsl":if(3!==p.length)return null;var f=(parseFloat(p[0])%360+360)%360/360,d=a(p[1]),m=a(p[2]),v=m<=.5?m*(d+1):m+d-m*d,y=2*m-v;return[i(255*s(y,v,f+1/3)),i(255*s(y,v,f)),i(255*s(y,v,f-1/3)),h];default:return null}}return null}var u={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{r.parseCSSColor=l}catch(t){}},{}],115:[function(t,e,r){function i(t){return!!t&&"object"==typeof t}function n(t,e){for(var r=-1,i=t.length;++r<i;)if(e(t[r],r,t))return!0;return!1}function o(t,e,r,n,s,l){return t===e||(null==t||null==e||!c(t)&&!i(e)?t!==t&&e!==e:a(t,e,o,r,n,s,l))}function a(t,e,r,i,n,o,a){var c=p(t),f=p(e),v=m,y=m;c||(v=z.call(t),v==d?v=x:v!=x&&(c=h(t))),f||(y=z.call(e),y==d?y=x:y!=x&&(f=h(e)));var g=v==x,_=y==x,b=v==y;if(b&&!c&&!g)return l(t,e,v);if(!n){var w=g&&S.call(t,"__wrapped__"),T=_&&S.call(e,"__wrapped__");if(w||T)return r(w?t.value():t,T?e.value():e,i,n,o,a)}if(!b)return!1;o||(o=[]),a||(a=[]);for(var A=o.length;A--;)if(o[A]==t)return a[A]==e;o.push(t),a.push(e);var C=(c?s:u)(t,e,r,i,n,o,a);return o.pop(),a.pop(),C}function s(t,e,r,i,o,a,s){var l=-1,u=t.length,c=e.length;if(u!=c&&!(o&&c>u))return!1;for(;++l<u;){var p=t[l],h=e[l],f=i?i(o?h:p,o?p:h,l):void 0;if(void 0!==f){if(f)continue;return!1}if(o){if(!n(e,function(t){return p===t||r(p,t,i,o,a,s)}))return!1}else if(p!==h&&!r(p,h,i,o,a,s))return!1}return!0}function l(t,e,r){switch(r){case v:case y:return+t==+e;case g:return t.name==e.name&&t.message==e.message;case _:return t!=+t?e!=+e:t==+e;case b:case w:return t==e+""}return!1}function u(t,e,r,i,n,o,a){var s=f(t),l=s.length;if(l!=f(e).length&&!n)return!1;for(var u=l;u--;){var c=s[u];if(!(n?c in e:S.call(e,c)))return!1}for(var p=n;++u<l;){c=s[u];var h=t[c],d=e[c],m=i?i(n?d:h,n?h:d,c):void 0;if(!(void 0===m?r(h,d,i,n,o,a):m))return!1;p||(p="constructor"==c)}if(!p){var v=t.constructor,y=e.constructor;if(v!=y&&"constructor"in t&&"constructor"in e&&!("function"==typeof v&&v instanceof v&&"function"==typeof y&&y instanceof y))return!1}return!0}function c(t){var e=typeof t;return!!t&&("object"==e||"function"==e)}var p=t("lodash.isarray"),h=t("lodash.istypedarray"),f=t("lodash.keys"),d="[object Arguments]",m="[object Array]",v="[object Boolean]",y="[object Date]",g="[object Error]",_="[object Number]",x="[object Object]",b="[object RegExp]",w="[object String]",T=Object.prototype,S=T.hasOwnProperty,z=T.toString;e.exports=o},{"lodash.isarray":119,"lodash.istypedarray":121,"lodash.keys":122}],116:[function(t,e,r){function i(t,e,r){if("function"!=typeof t)return n;if(void 0===e)return t;switch(r){case 1:return function(r){return t.call(e,r)};case 3:return function(r,i,n){return t.call(e,r,i,n)};case 4:return function(r,i,n,o){return t.call(e,r,i,n,o)};case 5:return function(r,i,n,o,a){return t.call(e,r,i,n,o,a)}}return function(){return t.apply(e,arguments)}}function n(t){return t}e.exports=i},{}],117:[function(t,e,r){function i(t){return!!t&&"object"==typeof t}function n(t,e){var r=null==t?void 0:t[e];return s(r)?r:void 0}function o(t){return a(t)&&f.call(t)==l}function a(t){var e=typeof t;return!!t&&("object"==e||"function"==e)}function s(t){return null!=t&&(o(t)?d.test(p.call(t)):i(t)&&u.test(t))}var l="[object Function]",u=/^\[object .+?Constructor\]$/,c=Object.prototype,p=Function.prototype.toString,h=c.hasOwnProperty,f=c.toString,d=RegExp("^"+p.call(h).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");e.exports=n},{}],118:[function(t,e,r){function i(t){return o(t)&&m.call(t,"callee")&&(!y.call(t,"callee")||v.call(t)==p)}function n(t){return null!=t&&s(t.length)&&!a(t)}function o(t){return u(t)&&n(t)}function a(t){var e=l(t)?v.call(t):"";return e==h||e==f}function s(t){return"number"==typeof t&&t>-1&&t%1==0&&t<=c}function l(t){var e=typeof t;return!!t&&("object"==e||"function"==e)}function u(t){return!!t&&"object"==typeof t}var c=9007199254740991,p="[object Arguments]",h="[object Function]",f="[object GeneratorFunction]",d=Object.prototype,m=d.hasOwnProperty,v=d.toString,y=d.propertyIsEnumerable;e.exports=i},{}],119:[function(t,e,r){function i(t){return!!t&&"object"==typeof t}function n(t){return"number"==typeof t&&t>-1&&t%1==0&&t<=v}function o(t){return a(t)&&f.call(t)==l}function a(t){var e=typeof t;return!!t&&("object"==e||"function"==e)}function s(t){return null!=t&&(o(t)?d.test(p.call(t)):i(t)&&u.test(t))}var l="[object Function]",u=/^\[object .+?Constructor\]$/,c=Object.prototype,p=Function.prototype.toString,h=c.hasOwnProperty,f=c.toString,d=RegExp("^"+p.call(h).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),m=function(t,e){var r=null==t?void 0:t[e];return s(r)?r:void 0}(Array,"isArray"),v=9007199254740991,y=m||function(t){return i(t)&&n(t.length)&&"[object Array]"==f.call(t)};e.exports=y},{}],120:[function(t,e,r){function i(t,e,r,i){r="function"==typeof r?o(r,i,3):void 0;var a=r?r(t,e):void 0;return void 0===a?n(t,e,r):!!a}var n=t("lodash._baseisequal"),o=t("lodash._bindcallback");e.exports=i},{"lodash._baseisequal":115,"lodash._bindcallback":116}],121:[function(t,e,r){function i(t){return"number"==typeof t&&t>-1&&t%1==0&&t<=a}function n(t){return!!t&&"object"==typeof t}function o(t){return n(t)&&i(t.length)&&!!s[u.call(t)]}var a=9007199254740991,s={};s["[object Float32Array]"]=s["[object Float64Array]"]=s["[object Int8Array]"]=s["[object Int16Array]"]=s["[object Int32Array]"]=s["[object Uint8Array]"]=s["[object Uint8ClampedArray]"]=s["[object Uint16Array]"]=s["[object Uint32Array]"]=!0,s["[object Arguments]"]=s["[object Array]"]=s["[object ArrayBuffer]"]=s["[object Boolean]"]=s["[object DataView]"]=s["[object Date]"]=s["[object Error]"]=s["[object Function]"]=s["[object Map]"]=s["[object Number]"]=s["[object Object]"]=s["[object RegExp]"]=s["[object Set]"]=s["[object String]"]=s["[object WeakMap]"]=!1;var l=Object.prototype,u=l.toString;e.exports=o},{}],122:[function(t,e,r){function i(t){return null!=t&&o(y(t))}function n(t,e){return t="number"==typeof t||h.test(t)?+t:-1,e=null==e?v:e,t>-1&&t%1==0&&t<e}function o(t){return"number"==typeof t&&t>-1&&t%1==0&&t<=v}function a(t){for(var e=l(t),r=e.length,i=r&&t.length,a=!!i&&o(i)&&(p(t)||c(t)),s=-1,u=[];++s<r;){var h=e[s];(a&&n(h,i)||d.call(t,h))&&u.push(h)}return u}function s(t){var e=typeof t;return!!t&&("object"==e||"function"==e)}function l(t){if(null==t)return[];s(t)||(t=Object(t));var e=t.length;e=e&&o(e)&&(p(t)||c(t))&&e||0;for(var r=t.constructor,i=-1,a="function"==typeof r&&r.prototype===t,l=Array(e),u=e>0;++i<e;)l[i]=i+"";for(var h in t)u&&n(h,e)||"constructor"==h&&(a||!d.call(t,h))||l.push(h);return l}var u=t("lodash._getnative"),c=t("lodash.isarguments"),p=t("lodash.isarray"),h=/^\d+$/,f=Object.prototype,d=f.hasOwnProperty,m=u(Object,"keys"),v=9007199254740991,y=function(t){return function(e){return null==e?void 0:e[t]}}("length"),g=m?function(t){var e=null==t?void 0:t.constructor;return"function"==typeof e&&e.prototype===t||"function"!=typeof t&&i(t)?a(t):s(t)?m(t):[]}:a;e.exports=g},{"lodash._getnative":117,"lodash.isarguments":118,"lodash.isarray":119}],123:[function(t,e,r){"use strict";e.exports=t("./v8.json")},{"./v8.json":124}],124:[function(t,e,r){e.exports={$version:8,$root:{version:{required:!0,type:"enum",values:[8]},name:{type:"string"},metadata:{type:"*"},center:{type:"array",value:"number"},zoom:{type:"number"},bearing:{type:"number",default:0,period:360,units:"degrees"},pitch:{type:"number",default:0,units:"degrees"},light:{type:"light"},sources:{required:!0,type:"sources"},sprite:{type:"string"},glyphs:{type:"string"},transition:{type:"transition"},layers:{required:!0,type:"array",value:"layer"}},sources:{"*":{type:"source"}},source:["source_tile","source_geojson","source_video","source_image","source_canvas"],source_tile:{type:{required:!0,type:"enum",values:{vector:{},raster:{}}},url:{type:"string"},tiles:{type:"array",value:"string"},bounds:{type:"array",value:"number",length:4,default:[-180,-85.0511,180,85.0511]},minzoom:{type:"number",default:0},maxzoom:{type:"number",default:22},tileSize:{type:"number",default:512,units:"pixels"},"*":{type:"*"}},source_geojson:{type:{required:!0,type:"enum",values:{geojson:{}}},data:{type:"*"},maxzoom:{type:"number",default:18},buffer:{type:"number",default:128,maximum:512,minimum:0},tolerance:{type:"number",default:.375},cluster:{type:"boolean",default:!1},clusterRadius:{type:"number",default:50,minimum:0},clusterMaxZoom:{type:"number"}},source_video:{type:{required:!0,type:"enum",values:{video:{}}},urls:{required:!0,type:"array",value:"string"},coordinates:{required:!0,type:"array",length:4,value:{type:"array",length:2,value:"number"}}},source_image:{type:{required:!0,type:"enum",values:{image:{}}},url:{required:!0,type:"string"},coordinates:{required:!0,type:"array",length:4,value:{type:"array",length:2,value:"number"}}},source_canvas:{type:{required:!0,type:"enum",values:{canvas:{}}},coordinates:{required:!0,type:"array",length:4,value:{type:"array",length:2,value:"number"}},animate:{type:"boolean",default:"true"},canvas:{type:"string",required:!0},contextType:{required:!0,type:"enum",values:{"2d":{},webgl:{},"experimental-webgl":{},webgl2:{}}}},layer:{id:{type:"string",required:!0},type:{type:"enum",values:{fill:{},line:{},symbol:{},circle:{},"fill-extrusion":{},raster:{},background:{}}},metadata:{type:"*"},ref:{type:"string"},source:{type:"string"},"source-layer":{type:"string"},minzoom:{type:"number",minimum:0,maximum:24},maxzoom:{type:"number",minimum:0,maximum:24},filter:{type:"filter"},layout:{type:"layout"},paint:{type:"paint"},"paint.*":{type:"paint"}},layout:["layout_fill","layout_line","layout_circle","layout_fill-extrusion","layout_symbol","layout_raster","layout_background"],layout_background:{visibility:{type:"enum",values:{visible:{},none:{}},default:"visible"}},layout_fill:{visibility:{type:"enum",values:{visible:{},none:{}},default:"visible"}},layout_circle:{visibility:{type:"enum",values:{visible:{},none:{}},default:"visible"}},"layout_fill-extrusion":{visibility:{type:"enum",values:{visible:{},none:{}},default:"visible"}},layout_line:{"line-cap":{type:"enum",function:"piecewise-constant","zoom-function":!0,values:{butt:{},round:{},square:{}},default:"butt"},"line-join":{type:"enum",function:"piecewise-constant","zoom-function":!0,"property-function":!0,values:{bevel:{},round:{},miter:{}},default:"miter"},"line-miter-limit":{type:"number",default:2,function:"interpolated","zoom-function":!0,requires:[{"line-join":"miter"}]},"line-round-limit":{type:"number",default:1.05,function:"interpolated","zoom-function":!0,requires:[{"line-join":"round"}]},visibility:{type:"enum",values:{visible:{},none:{}},default:"visible"}},layout_symbol:{"symbol-placement":{type:"enum",function:"piecewise-constant","zoom-function":!0,values:{point:{},line:{}},default:"point"},"symbol-spacing":{type:"number",default:250,minimum:1,function:"interpolated","zoom-function":!0,units:"pixels",requires:[{"symbol-placement":"line"}]},"symbol-avoid-edges":{type:"boolean",function:"piecewise-constant","zoom-function":!0,default:!1},"icon-allow-overlap":{type:"boolean",function:"piecewise-constant","zoom-function":!0,default:!1,requires:["icon-image"]},"icon-ignore-placement":{type:"boolean",function:"piecewise-constant","zoom-function":!0,default:!1,requires:["icon-image"]},"icon-optional":{type:"boolean",function:"piecewise-constant","zoom-function":!0,default:!1,requires:["icon-image","text-field"]},"icon-rotation-alignment":{type:"enum",function:"piecewise-constant","zoom-function":!0,values:{map:{},viewport:{},auto:{}},default:"auto",requires:["icon-image"]},"icon-size":{type:"number",default:1,minimum:0,function:"interpolated","zoom-function":!0,"property-function":!0,units:"factor of the original icon size",requires:["icon-image"]},"icon-text-fit":{type:"enum",function:"piecewise-constant","zoom-function":!0,values:{none:{},width:{},height:{},both:{}},default:"none",requires:["icon-image","text-field"]},"icon-text-fit-padding":{type:"array",value:"number",length:4,default:[0,0,0,0],units:"pixels",function:"interpolated","zoom-function":!0,requires:["icon-image","text-field",{"icon-text-fit":["both","width","height"]}]},"icon-image":{type:"string",function:"piecewise-constant","zoom-function":!0,"property-function":!0,tokens:!0},"icon-rotate":{type:"number",default:0,period:360,function:"interpolated","zoom-function":!0,"property-function":!0,units:"degrees",requires:["icon-image"]},"icon-padding":{type:"number",default:2,minimum:0,function:"interpolated","zoom-function":!0,units:"pixels",requires:["icon-image"]},"icon-keep-upright":{type:"boolean",function:"piecewise-constant","zoom-function":!0,default:!1,requires:["icon-image",{"icon-rotation-alignment":"map"},{"symbol-placement":"line"}]},"icon-offset":{type:"array",value:"number",length:2,default:[0,0],function:"interpolated","zoom-function":!0,"property-function":!0,requires:["icon-image"]},"icon-anchor":{type:"enum",function:"piecewise-constant","zoom-function":!0,"property-function":!0,values:{center:{},left:{},right:{},top:{},bottom:{},"top-left":{},"top-right":{},"bottom-left":{},"bottom-right":{}},default:"center",requires:["icon-image"]},"icon-pitch-alignment":{type:"enum",function:"piecewise-constant","zoom-function":!0,values:{map:{},viewport:{},auto:{}},default:"auto",requires:["icon-image"]},"text-pitch-alignment":{type:"enum",function:"piecewise-constant","zoom-function":!0,values:{map:{},viewport:{},auto:{}},default:"auto",requires:["text-field"]},"text-rotation-alignment":{type:"enum",function:"piecewise-constant","zoom-function":!0,values:{map:{},viewport:{},auto:{}},default:"auto",requires:["text-field"]},"text-field":{type:"string",function:"piecewise-constant","zoom-function":!0,"property-function":!0,default:"",tokens:!0},"text-font":{type:"array",value:"string",function:"piecewise-constant","zoom-function":!0,default:["Open Sans Regular","Arial Unicode MS Regular"],requires:["text-field"]},"text-size":{type:"number",default:16,minimum:0,units:"pixels",function:"interpolated","zoom-function":!0,"property-function":!0,requires:["text-field"]},"text-max-width":{type:"number",default:10,minimum:0,units:"ems",function:"interpolated","zoom-function":!0,"property-function":!0,requires:["text-field"]},"text-line-height":{type:"number",default:1.2,units:"ems",function:"interpolated","zoom-function":!0,requires:["text-field"]},"text-letter-spacing":{type:"number",default:0,units:"ems",function:"interpolated","zoom-function":!0,"property-function":!0,requires:["text-field"]},"text-justify":{type:"enum",function:"piecewise-constant","zoom-function":!0,"property-function":!0,values:{left:{},center:{},right:{}},default:"center",requires:["text-field"]},"text-anchor":{type:"enum",function:"piecewise-constant","zoom-function":!0,"property-function":!0,values:{center:{},left:{},right:{},top:{},bottom:{},"top-left":{},"top-right":{},"bottom-left":{},"bottom-right":{}},default:"center",requires:["text-field"]},"text-max-angle":{type:"number",default:45,units:"degrees",function:"interpolated","zoom-function":!0,requires:["text-field",{"symbol-placement":"line"}]},"text-rotate":{type:"number",default:0,period:360,units:"degrees",function:"interpolated","zoom-function":!0,"property-function":!0,requires:["text-field"]},"text-padding":{type:"number",default:2,minimum:0,units:"pixels",function:"interpolated","zoom-function":!0,requires:["text-field"]},"text-keep-upright":{type:"boolean",function:"piecewise-constant","zoom-function":!0,default:!0,requires:["text-field",{"text-rotation-alignment":"map"},{"symbol-placement":"line"}]},"text-transform":{type:"enum",function:"piecewise-constant","zoom-function":!0,"property-function":!0,values:{none:{},uppercase:{},lowercase:{}},default:"none",requires:["text-field"]},"text-offset":{type:"array",value:"number",units:"ems",function:"interpolated","zoom-function":!0,"property-function":!0,length:2,default:[0,0],requires:["text-field"]},"text-allow-overlap":{type:"boolean",function:"piecewise-constant","zoom-function":!0,default:!1,requires:["text-field"]},"text-ignore-placement":{type:"boolean",function:"piecewise-constant","zoom-function":!0,default:!1,requires:["text-field"]},"text-optional":{type:"boolean",function:"piecewise-constant","zoom-function":!0,default:!1,requires:["text-field","icon-image"]},visibility:{type:"enum",values:{visible:{},none:{}},default:"visible"}},layout_raster:{visibility:{type:"enum",values:{visible:{},none:{}},default:"visible"}},filter:{type:"array",value:"*"},filter_operator:{type:"enum",values:{"==":{},"!=":{},">":{},">=":{},"<":{},"<=":{},in:{},"!in":{},all:{},any:{},none:{},has:{},"!has":{}}},geometry_type:{type:"enum",values:{Point:{},LineString:{},Polygon:{}}},function:{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,"zoom-function":!0,"property-function":!1,function:"piecewise-constant"},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,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,"property-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-pitch-alignment":{type:"enum",function:"piecewise-constant","zoom-function":!0,values:{map:{},viewport:{}},default:"viewport"},"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"}}}},{}],125:[function(t,e,r){"use strict";e.exports=function(t){for(var e=[],r=arguments.length-1;r-- >0;)e[r]=arguments[r+1];for(var i=0,n=e;i<n.length;i+=1){var o=n[i];for(var a in o)t[a]=o[a]}return t}},{}],126:[function(t,e,r){"use strict";e.exports=function(t){return t instanceof Number?"number":t instanceof String?"string":t instanceof Boolean?"boolean":Array.isArray(t)?"array":null===t?"null":typeof t}},{}],127:[function(t,e,r){"use strict";function i(t,e,r){return t*(1-r)+e*r}e.exports=i,i.number=i,i.vec2=function(t,e,r){return[i(t[0],e[0],r),i(t[1],e[1],r)]},i.color=function(t,e,r){return[i(t[0],e[0],r),i(t[1],e[1],r),i(t[2],e[2],r),i(t[3],e[3],r)]},i.array=function(t,e,r){return t.map(function(t,n){return i(t,e[n],r)})}},{}],128:[function(t,e,r){"use strict";var i=t("csscolorparser").parseCSSColor;e.exports=function(t){if("string"==typeof t){var e=i(t);if(!e)return;return[e[0]/255*e[3],e[1]/255*e[3],e[2]/255*e[3],e[3]]}return Array.isArray(t)?t:void 0}},{csscolorparser:114}],129:[function(t,e,r){"use strict";e.exports=["type","source","source-layer","minzoom","maxzoom","filter","layout"]},{}],130:[function(t,e,r){"use strict";e.exports=function(t){return t instanceof Number||t instanceof String||t instanceof Boolean?t.valueOf():t}},{}],131:[function(t,e,r){"use strict";var i=t("../error/validation_error"),n=t("../util/get_type"),o=t("../util/extend");e.exports=function(e){var r=t("./validate_function"),a=t("./validate_object"),s={"*":function(){return[]},array:t("./validate_array"),boolean:t("./validate_boolean"),number:t("./validate_number"),color:t("./validate_color"),constants:t("./validate_constants"),enum:t("./validate_enum"),filter:t("./validate_filter"),function:t("./validate_function"),layer:t("./validate_layer"),object:t("./validate_object"),source:t("./validate_source"),light:t("./validate_light"),string:t("./validate_string")},l=e.value,u=e.valueSpec,c=e.key,p=e.styleSpec,h=e.style;if("string"===n(l)&&"@"===l[0]){if(p.$version>7)return[new i(c,l,"constants have been deprecated as of v8")];if(!(l in h.constants))return[new i(c,l,'constant "%s" not found',l)];e=o({},e,{value:h.constants[l]})}return u.function&&"object"===n(l)?r(e):u.type&&s[u.type]?s[u.type](e):a(o({},e,{valueSpec:u.type?p[u.type]:u}))}},{"../error/validation_error":109,"../util/extend":125,"../util/get_type":126,"./validate_array":132,"./validate_boolean":133,"./validate_color":134,"./validate_constants":135,"./validate_enum":136,"./validate_filter":137,"./validate_function":138,"./validate_layer":140,"./validate_light":142,"./validate_number":143,"./validate_object":144,"./validate_source":147,"./validate_string":148}],132:[function(t,e,r){"use strict";var i=t("../util/get_type"),n=t("./validate"),o=t("../error/validation_error");e.exports=function(t){var e=t.value,r=t.valueSpec,a=t.style,s=t.styleSpec,l=t.key,u=t.arrayElementValidator||n;if("array"!==i(e))return[new o(l,e,"array expected, %s found",i(e))];if(r.length&&e.length!==r.length)return[new o(l,e,"array length %d expected, length %d found",r.length,e.length)];if(r["min-length"]&&e.length<r["min-length"])return[new o(l,e,"array length at least %d expected, length %d found",r["min-length"],e.length)];var c={type:r.value};s.$version<7&&(c.function=r.function),"object"===i(r.value)&&(c=r.value);for(var p=[],h=0;h<e.length;h++)p=p.concat(u({array:e,arrayIndex:h,value:e[h],valueSpec:c,style:a,styleSpec:s,key:l+"["+h+"]"}));return p}},{"../error/validation_error":109,"../util/get_type":126,"./validate":131}],133:[function(t,e,r){"use strict";var i=t("../util/get_type"),n=t("../error/validation_error");e.exports=function(t){var e=t.value,r=t.key,o=i(e);return"boolean"!==o?[new n(r,e,"boolean expected, %s found",o)]:[]}},{"../error/validation_error":109,"../util/get_type":126}],134:[function(t,e,r){"use strict";var i=t("../error/validation_error"),n=t("../util/get_type"),o=t("csscolorparser").parseCSSColor;e.exports=function(t){var e=t.key,r=t.value,a=n(r);return"string"!==a?[new i(e,r,"color expected, %s found",a)]:null===o(r)?[new i(e,r,'color expected, "%s" found',r)]:[]}},{"../error/validation_error":109,"../util/get_type":126,csscolorparser:114}],135:[function(t,e,r){"use strict";var i=t("../error/validation_error"),n=t("../util/get_type");e.exports=function(t){var e=t.key,r=t.value;if(t.styleSpec.$version>7)return r?[new i(e,r,"constants have been deprecated as of v8")]:[];var o=n(r);if("object"!==o)return[new i(e,r,"object expected, %s found",o)];var a=[];for(var s in r)"@"!==s[0]&&a.push(new i(e+"."+s,r[s],'constants must start with "@"'));return a}},{"../error/validation_error":109,"../util/get_type":126}],136:[function(t,e,r){"use strict";var i=t("../error/validation_error"),n=t("../util/unbundle_jsonlint");e.exports=function(t){var e=t.key,r=t.value,o=t.valueSpec,a=[];return Array.isArray(o.values)?-1===o.values.indexOf(n(r))&&a.push(new i(e,r,"expected one of [%s], %s found",o.values.join(", "),r)):-1===Object.keys(o.values).indexOf(n(r))&&a.push(new i(e,r,"expected one of [%s], %s found",Object.keys(o.values).join(", "),r)),a}},{"../error/validation_error":109,"../util/unbundle_jsonlint":130}],137:[function(t,e,r){"use strict";var i=t("../error/validation_error"),n=t("./validate_enum"),o=t("../util/get_type"),a=t("../util/unbundle_jsonlint");e.exports=function t(e){var r,s=e.value,l=e.key,u=e.styleSpec,c=[];if("array"!==o(s))return[new i(l,s,"array expected, %s found",o(s))];if(s.length<1)return[new i(l,s,"filter array must have at least 1 element")];switch(c=c.concat(n({key:l+"[0]",value:s[0],valueSpec:u.filter_operator,style:e.style,styleSpec:e.styleSpec})),a(s[0])){case"<":case"<=":case">":case">=":s.length>=2&&"$type"===a(s[1])&&c.push(new i(l,s,'"$type" cannot be use with operator "%s"',s[0]));case"==":case"!=":3!==s.length&&c.push(new i(l,s,'filter array for operator "%s" must have 3 elements',s[0]));case"in":case"!in":s.length>=2&&"string"!==(r=o(s[1]))&&c.push(new i(l+"[1]",s[1],"string expected, %s found",r));for(var p=2;p<s.length;p++)r=o(s[p]),"$type"===a(s[1])?c=c.concat(n({key:l+"["+p+"]",value:s[p],valueSpec:u.geometry_type,style:e.style,styleSpec:e.styleSpec})):"string"!==r&&"number"!==r&&"boolean"!==r&&c.push(new i(l+"["+p+"]",s[p],"string, number, or boolean expected, %s found",r));break;case"any":case"all":case"none":for(var h=1;h<s.length;h++)c=c.concat(t({key:l+"["+h+"]",value:s[h],style:e.style,styleSpec:e.styleSpec}));break;case"has":case"!has":r=o(s[1]),2!==s.length?c.push(new i(l,s,'filter array for "%s" operator must have 2 elements',s[0])):"string"!==r&&c.push(new i(l+"[1]",s[1],"string expected, %s found",r))}return c}},{"../error/validation_error":109,"../util/get_type":126,"../util/unbundle_jsonlint":130,"./validate_enum":136}],138:[function(t,e,r){"use strict";var i=t("../error/validation_error"),n=t("../util/get_type"),o=t("./validate"),a=t("./validate_object"),s=t("./validate_array"),l=t("./validate_number"),u=t("../util/unbundle_jsonlint");e.exports=function(t){function e(t){if("identity"===v)return[new i(t.key,t.value,'identity function may not have a "stops" property')];var e=[],o=t.value;return e=e.concat(s({key:t.key,value:o,valueSpec:t.valueSpec,style:t.style,styleSpec:t.styleSpec,arrayElementValidator:r})),"array"===n(o)&&0===o.length&&e.push(new i(t.key,o,"array must have at least one stop")),e}function r(t){var e=[],r=t.value,s=t.key;if("array"!==n(r))return[new i(s,r,"array expected, %s found",n(r))];if(2!==r.length)return[new i(s,r,"array length %d expected, length %d found",2,r.length)];if(x){if("object"!==n(r[0]))return[new i(s,r,"object expected, %s found",n(r[0]))];if(void 0===r[0].zoom)return[new i(s,r,"object stop key must have zoom")];if(void 0===r[0].value)return[new i(s,r,"object stop key must have value")];if(d&&d>u(r[0].zoom))return[new i(s,r[0].zoom,"stop zoom values must appear in ascending order")];u(r[0].zoom)!==d&&(d=u(r[0].zoom),f=void 0,y={}),e=e.concat(a({key:s+"[0]",value:r[0],valueSpec:{zoom:{}},style:t.style,styleSpec:t.styleSpec,objectElementValidators:{zoom:l,value:c}}))}else e=e.concat(c({key:s+"[0]",value:r[0],valueSpec:{},style:t.style,styleSpec:t.styleSpec}));return e.concat(o({key:s+"[1]",value:r[1],valueSpec:m,style:t.style,styleSpec:t.styleSpec}))}function c(t){var e=n(t.value),r=u(t.value);if(h){if(e!==h)return[new i(t.key,t.value,"%s stop domain type must match previous stop domain type %s",e,h)]}else h=e;if("number"!==e&&"string"!==e&&"boolean"!==e)return[new i(t.key,t.value,"stop domain value must be a number, string, or boolean")];if("number"!==e&&"categorical"!==v){var o="number expected, %s found";return m["property-function"]&&void 0===v&&(o+='\nIf you intended to use a categorical function, specify `"type": "categorical"`.'),[new i(t.key,t.value,o,e)]}return"categorical"!==v||"number"!==e||isFinite(r)&&Math.floor(r)===r?"categorical"!==v&&"number"===e&&void 0!==f&&r<f?[new i(t.key,t.value,"stop domain values must appear in ascending order")]:(f=r,"categorical"===v&&r in y?[new i(t.key,t.value,"stop domain values must be unique")]:(y[r]=!0,[])):[new i(t.key,t.value,"integer expected, found %s",r)]}function p(t){return o({key:t.key,value:t.value,valueSpec:m,style:t.style,styleSpec:t.styleSpec})}var h,f,d,m=t.valueSpec,v=u(t.value.type),y={},g="categorical"!==v&&void 0===t.value.property,_=!g,x="array"===n(t.value.stops)&&"array"===n(t.value.stops[0])&&"object"===n(t.value.stops[0][0]),b=a({key:t.key,value:t.value,valueSpec:t.styleSpec.function,style:t.style,styleSpec:t.styleSpec,objectElementValidators:{stops:e,default:p}});return"identity"===v&&g&&b.push(new i(t.key,t.value,'missing required property "property"')),"identity"===v||t.value.stops||b.push(new i(t.key,t.value,'missing required property "stops"')),"exponential"===v&&"piecewise-constant"===t.valueSpec.function&&b.push(new i(t.key,t.value,"exponential functions not supported")),t.styleSpec.$version>=8&&(_&&!t.valueSpec["property-function"]?b.push(new i(t.key,t.value,"property functions not supported")):g&&!t.valueSpec["zoom-function"]&&b.push(new i(t.key,t.value,"zoom functions not supported"))),"categorical"!==v&&!x||void 0!==t.value.property||b.push(new i(t.key,t.value,'"property" property is required')),b}},{"../error/validation_error":109,"../util/get_type":126,"../util/unbundle_jsonlint":130,"./validate":131,"./validate_array":132,"./validate_number":143,"./validate_object":144}],139:[function(t,e,r){"use strict";var i=t("../error/validation_error"),n=t("./validate_string");e.exports=function(t){var e=t.value,r=t.key,o=n(t);return o.length?o:(-1===e.indexOf("{fontstack}")&&o.push(new i(r,e,'"glyphs" url must include a "{fontstack}" token')),-1===e.indexOf("{range}")&&o.push(new i(r,e,'"glyphs" url must include a "{range}" token')),o)}},{"../error/validation_error":109,"./validate_string":148}],140:[function(t,e,r){"use strict";var i=t("../error/validation_error"),n=t("../util/unbundle_jsonlint"),o=t("./validate_object"),a=t("./validate_filter"),s=t("./validate_paint_property"),l=t("./validate_layout_property"),u=t("../util/extend");e.exports=function(t){var e=[],r=t.value,c=t.key,p=t.style,h=t.styleSpec;r.type||r.ref||e.push(new i(c,r,'either "type" or "ref" is required'));var f=n(r.type),d=n(r.ref);if(r.id)for(var m=n(r.id),v=0;v<t.arrayIndex;v++){var y=p.layers[v];n(y.id)===m&&e.push(new i(c,r.id,'duplicate layer id "%s", previously used at line %d',r.id,y.id.__line__))}if("ref"in r){["type","source","source-layer","filter","layout"].forEach(function(t){t in r&&e.push(new i(c,r[t],'"%s" is prohibited for ref layers',t))});var g;p.layers.forEach(function(t){n(t.id)===d&&(g=t)}),g?g.ref?e.push(new i(c,r.ref,"ref cannot reference another ref layer")):f=n(g.type):e.push(new i(c,r.ref,'ref layer "%s" not found',d))}else if("background"!==f)if(r.source){var _=p.sources&&p.sources[r.source],x=_&&n(_.type);_?"vector"===x&&"raster"===f?e.push(new i(c,r.source,'layer "%s" requires a raster source',r.id)):"raster"===x&&"raster"!==f?e.push(new i(c,r.source,'layer "%s" requires a vector source',r.id)):"vector"!==x||r["source-layer"]||e.push(new i(c,r,'layer "%s" must specify a "source-layer"',r.id)):e.push(new i(c,r.source,'source "%s" not found',r.source))}else e.push(new i(c,r,'missing required property "source"'));return e=e.concat(o({key:c,value:r,valueSpec:h.layer,style:t.style,styleSpec:t.styleSpec,objectElementValidators:{"*":function(){return[]},filter:a,layout:function(t){return o({layer:r,key:t.key,value:t.value,style:t.style,styleSpec:t.styleSpec,objectElementValidators:{"*":function(t){return l(u({layerType:f},t))}}})},paint:function(t){return o({layer:r,key:t.key,value:t.value,style:t.style,styleSpec:t.styleSpec,objectElementValidators:{"*":function(t){return s(u({layerType:f},t))}}})}}}))}},{"../error/validation_error":109,"../util/extend":125,"../util/unbundle_jsonlint":130,"./validate_filter":137,"./validate_layout_property":141,"./validate_object":144,"./validate_paint_property":145}],141:[function(t,e,r){"use strict";var i=t("./validate_property");e.exports=function(t){return i(t,"layout")}},{"./validate_property":146}],142:[function(t,e,r){"use strict";var i=t("../error/validation_error"),n=t("../util/get_type"),o=t("./validate");e.exports=function(t){var e=t.value,r=t.styleSpec,a=r.light,s=t.style,l=[],u=n(e);if(void 0===e)return l;if("object"!==u)return l=l.concat([new i("light",e,"object expected, %s found",u)]);for(var c in e){var p=c.match(/^(.*)-transition$/);l=p&&a[p[1]]&&a[p[1]].transition?l.concat(o({key:c,value:e[c],valueSpec:r.transition,style:s,styleSpec:r})):a[c]?l.concat(o({key:c,value:e[c],valueSpec:a[c],style:s,styleSpec:r})):l.concat([new i(c,e[c],'unknown property "%s"',c)])}return l}},{"../error/validation_error":109,"../util/get_type":126,"./validate":131}],143:[function(t,e,r){"use strict";var i=t("../util/get_type"),n=t("../error/validation_error");e.exports=function(t){var e=t.key,r=t.value,o=t.valueSpec,a=i(r);return"number"!==a?[new n(e,r,"number expected, %s found",a)]:"minimum"in o&&r<o.minimum?[new n(e,r,"%s is less than the minimum value %s",r,o.minimum)]:"maximum"in o&&r>o.maximum?[new n(e,r,"%s is greater than the maximum value %s",r,o.maximum)]:[]}},{"../error/validation_error":109,"../util/get_type":126}],144:[function(t,e,r){"use strict";var i=t("../error/validation_error"),n=t("../util/get_type"),o=t("./validate");e.exports=function(t){var e=t.key,r=t.value,a=t.valueSpec||{},s=t.objectElementValidators||{},l=t.style,u=t.styleSpec,c=[],p=n(r);if("object"!==p)return[new i(e,r,"object expected, %s found",p)];for(var h in r){var f=h.split(".")[0],d=a[f]||a["*"],m=void 0;if(s[f])m=s[f];else if(a[f])m=o;else if(s["*"])m=s["*"];else{if(!a["*"]){c.push(new i(e,r[h],'unknown property "%s"',h));continue}m=o}c=c.concat(m({key:(e?e+".":e)+h,value:r[h],valueSpec:d,style:l,styleSpec:u,object:r,objectKey:h}))}for(var v in a)a[v].required&&void 0===a[v].default&&void 0===r[v]&&c.push(new i(e,r,'missing required property "%s"',v));return c}},{"../error/validation_error":109,"../util/get_type":126,"./validate":131}],145:[function(t,e,r){"use strict";var i=t("./validate_property");e.exports=function(t){return i(t,"paint")}},{"./validate_property":146}],146:[function(t,e,r){"use strict";var i=t("./validate"),n=t("../error/validation_error"),o=t("../util/get_type");e.exports=function(t,e){var r=t.key,a=t.style,s=t.styleSpec,l=t.value,u=t.objectKey,c=s[e+"_"+t.layerType];if(!c)return[];var p=u.match(/^(.*)-transition$/);if("paint"===e&&p&&c[p[1]]&&c[p[1]].transition)return i({key:r,value:l,valueSpec:s.transition,style:a,styleSpec:s});var h=t.valueSpec||c[u];if(!h)return[new n(r,l,'unknown property "%s"',u)];var f;if("string"===o(l)&&h["property-function"]&&!h.tokens&&(f=/^{([^}]+)}$/.exec(l)))return[new n(r,l,'"%s" does not support interpolation syntax\nUse an identity property function instead: `{ "type": "identity", "property": %s` }`.',u,JSON.stringify(f[1]))];var d=[];return"symbol"===t.layerType&&"text-field"===u&&a&&!a.glyphs&&d.push(new n(r,l,'use of "text-field" requires a style "glyphs" property')),d.concat(i({key:t.key,value:l,valueSpec:h,style:a,styleSpec:s}))}},{"../error/validation_error":109,"../util/get_type":126,"./validate":131}],147:[function(t,e,r){"use strict";var i=t("../error/validation_error"),n=t("../util/unbundle_jsonlint"),o=t("./validate_object"),a=t("./validate_enum");e.exports=function(t){var e=t.value,r=t.key,s=t.styleSpec,l=t.style;if(!e.type)return[new i(r,e,'"type" is required')];var u=n(e.type),c=[];switch(u){case"vector":case"raster":if(c=c.concat(o({key:r,value:e,valueSpec:s.source_tile,style:t.style,styleSpec:s})),"url"in e)for(var p in e)["type","url","tileSize"].indexOf(p)<0&&c.push(new i(r+"."+p,e[p],'a source with a "url" property may not include a "%s" property',p));return c;case"geojson":return o({key:r,value:e,valueSpec:s.source_geojson,style:l,styleSpec:s});case"video":return o({key:r,value:e,valueSpec:s.source_video,style:l,styleSpec:s});case"image":return o({key:r,value:e,valueSpec:s.source_image,style:l,styleSpec:s});case"canvas":return o({key:r,value:e,valueSpec:s.source_canvas,style:l,styleSpec:s});default:return a({key:r+".type",value:e.type,valueSpec:{values:["vector","raster","geojson","video","image","canvas"]},style:l,styleSpec:s})}}},{"../error/validation_error":109,"../util/unbundle_jsonlint":130,"./validate_enum":136,"./validate_object":144}],148:[function(t,e,r){"use strict";var i=t("../util/get_type"),n=t("../error/validation_error");e.exports=function(t){var e=t.value,r=t.key,o=i(e);return"string"!==o?[new n(r,e,"string expected, %s found",o)]:[]}},{"../error/validation_error":109,"../util/get_type":126}],149:[function(t,e,r){"use strict";function i(t,e){e=e||l;var r=[];return r=r.concat(s({key:"",value:t,valueSpec:e.$root,styleSpec:e,style:t,objectElementValidators:{glyphs:u,"*":function(){return[]}}})),e.$version>7&&t.constants&&(r=r.concat(a({key:"constants",value:t.constants,style:t,styleSpec:e}))),n(r)}function n(t){return[].concat(t).sort(function(t,e){return t.line-e.line})}function o(t){return function(){return n(t.apply(this,arguments))}}var a=t("./validate/validate_constants"),s=t("./validate/validate"),l=t("./reference/latest"),u=t("./validate/validate_glyphs_url");i.source=o(t("./validate/validate_source")),i.light=o(t("./validate/validate_light")),i.layer=o(t("./validate/validate_layer")),i.filter=o(t("./validate/validate_filter")),i.paintProperty=o(t("./validate/validate_paint_property")),i.layoutProperty=o(t("./validate/validate_layout_property")),e.exports=i},{"./reference/latest":123,"./validate/validate":131,"./validate/validate_constants":135,"./validate/validate_filter":137,"./validate/validate_glyphs_url":139,"./validate/validate_layer":140,"./validate/validate_layout_property":141,"./validate/validate_light":142,"./validate/validate_paint_property":145,"./validate/validate_source":147}],150:[function(t,e,r){"use strict";var i=function(){this.n=0,this.times=[]};i.prototype.stopped=function(){return this.times=this.times.filter(function(t){return t.time>=(new Date).getTime()}),!this.times.length},i.prototype.set=function(t){return this.times.push({id:this.n,time:t+(new Date).getTime()}),this.n++},i.prototype.cancel=function(t){this.times=this.times.filter(function(e){return e.id!==t})},e.exports=i},{}],151:[function(t,e,r){"use strict";var i=t("../style-spec/reference/latest"),n=t("../util/util"),o=t("../util/evented"),a=t("./validate_style"),s=t("./style_declaration"),l=t("./style_transition"),u=["anchor","color","position","intensity"],c=i.light,p=function(t){function e(e){t.call(this),this.set(e)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.set=function(t){var e=this;if(!this._validate(a.light,t)){this._declarations={},this._transitions={},this._transitionOptions={},this.calculated={},t=n.extend({anchor:c.anchor.default,color:c.color.default,position:c.position.default,intensity:c.intensity.default},t);for(var r=0,i=u;r<i.length;r+=1){var o=i[r];e._declarations[o]=new s(c[o],t[o])}return this}},e.prototype.getLight=function(){return{anchor:this.getLightProperty("anchor"),color:this.getLightProperty("color"),position:this.getLightProperty("position"),intensity:this.getLightProperty("intensity")}},e.prototype.getLightProperty=function(t){return n.endsWith(t,"-transition")?this._transitionOptions[t]:this._declarations[t]&&this._declarations[t].value},e.prototype.getLightValue=function(t,e){if("position"===t){var r=this._transitions[t].calculate(e),i=n.sphericalToCartesian(r);return{x:i[0],y:i[1],z:i[2]}}return this._transitions[t].calculate(e)},e.prototype.setLight=function(t){var e=this;if(!this._validate(a.light,t))for(var r in t){var i=t[r];n.endsWith(r,"-transition")?e._transitionOptions[r]=i:null===i||void 0===i?delete e._declarations[r]:e._declarations[r]=new s(c[r],i)}},e.prototype.recalculate=function(t){var e=this;for(var r in e._declarations)e.calculated[r]=e.getLightValue(r,{zoom:t})},e.prototype._applyLightDeclaration=function(t,e,r,i,o){var a=r.transition?this._transitions[t]:void 0,u=c[t];if(null!==e&&void 0!==e||(e=new s(u,u.default)),!a||a.declaration.json!==e.json){var p=n.extend({duration:300,delay:0},i,this.getLightProperty(t+"-transition")),h=this._transitions[t]=new l(u,e,a,p);h.instant()||(h.loopID=o.set(h.endTime-Date.now())),a&&o.cancel(a.loopID)}},e.prototype.updateLightTransitions=function(t,e,r){var i,n=this;for(i in n._declarations)n._applyLightDeclaration(i,n._declarations[i],t,e,r)},e.prototype._validate=function(t,e){return a.emitErrors(this,t.call(a,n.extend({value:e,style:{glyphs:!0,sprite:!0},styleSpec:i})))},e}(o);e.exports=p},{"../style-spec/reference/latest":123,"../util/evented":210,"../util/util":223,"./style_declaration":157,"./style_transition":165,"./validate_style":166}],152:[function(t,e,r){"use strict";var i=t("../util/mapbox"),n=i.normalizeGlyphsURL,o=t("../util/ajax"),a=t("./parse_glyph_pbf");e.exports=function(t,e,r,i,s){var l=256*e,u=l+255,c=i(n(r).replace("{fontstack}",t).replace("{range}",l+"-"+u),o.ResourceType.Glyphs);o.getArrayBuffer(c,function(t,e){if(t)s(t);else if(e){for(var r={},i=0,n=a(e.data);i<n.length;i+=1){var o=n[i];r[o.id]=o}s(null,r)}})}},{"../util/ajax":201,"../util/mapbox":217,"./parse_glyph_pbf":154}],153:[function(t,e,r){"use strict";var i=t("../util/ajax"),n=t("../util/browser"),o=t("../util/mapbox"),a=o.normalizeSpriteURL,s=t("../util/image"),l=s.RGBAImage;e.exports=function(t,e,r){function o(){if(c)r(c);else if(s&&u){var t=n.getImageData(u),e={};for(var i in s){var o=s[i],a=o.width,p=o.height,h=o.x,f=o.y,d=o.sdf,m=o.pixelRatio,v=l.create({width:a,height:p});l.copy(t,v,{x:h,y:f},{x:0,y:0},{width:a,height:p}),e[i]={data:v,pixelRatio:m,sdf:d}}r(null,e)}}if(!t)return void r(null,{});var s,u,c,p=n.devicePixelRatio>1?"@2x":"";i.getJSON(e(a(t,p,".json"),i.ResourceType.SpriteJSON),function(t,e){c||(c=t,s=e,o())}),i.getImage(e(a(t,p,".png"),i.ResourceType.SpriteImage),function(t,e){c||(c=t,u=e,o())})}},{"../util/ajax":201,"../util/browser":202,"../util/image":213,"../util/mapbox":217}],154:[function(t,e,r){"use strict";function i(t,e,r){1===t&&r.readMessage(n,e)}function n(t,e,r){if(3===t){var i=r.readMessage(o,{}),n=i.id,a=i.bitmap,l=i.width,c=i.height,p=i.left,h=i.top,f=i.advance;e.push({id:n,bitmap:s.create({width:l+2*u,height:c+2*u},a),metrics:{width:l,height:c,left:p,top:h,advance:f}})}}function o(t,e,r){1===t?e.id=r.readVarint():2===t?e.bitmap=r.readBytes():3===t?e.width=r.readVarint():4===t?e.height=r.readVarint():5===t?e.left=r.readSVarint():6===t?e.top=r.readSVarint():7===t&&(e.advance=r.readVarint())}var a=t("../util/image"),s=a.AlphaImage,l=t("pbf"),u=3;e.exports=function(t){return new l(t).readFields(i,[])},e.exports.GLYPH_PBF_BORDER=u},{"../util/image":213,pbf:29}],155:[function(t,e,r){"use strict";function i(t,e,r){return e.isPaintValueFeatureConstant(t)?e.paint[t]:r.programConfigurations.get(e.id).paintPropertyStatistics[t].max}function n(t){return Math.sqrt(t[0]*t[0]+t[1]*t[1])}function o(t,e,r,i,n){if(!e[0]&&!e[1])return t;var o=a.convert(e);"viewport"===r&&o._rotate(-i);for(var s=[],l=0;l<t.length;l++){for(var u=t[l],c=[],p=0;p<u.length;p++)c.push(u[p].sub(o._mult(n)));s.push(c)}return s}var a=t("@mapbox/point-geometry");e.exports={getMaximumPaintValue:i,translateDistance:n,translate:o}},{"@mapbox/point-geometry":2}],156:[function(t,e,r){"use strict";var i=t("../util/evented"),n=t("./style_layer"),o=t("./load_sprite"),a=t("../render/image_manager"),s=t("../render/glyph_manager"),l=t("./light"),u=t("../render/line_atlas"),c=t("../util/util"),p=t("../util/ajax"),h=t("../util/mapbox"),f=t("../util/browser"),d=t("../util/dispatcher"),m=t("./animation_loop"),v=t("./validate_style"),y=t("../source/source").getType,g=t("../source/source").setType,_=t("../source/query_features"),x=t("../source/source_cache"),b=t("../style-spec/reference/latest"),w=t("../style-spec/function"),T=t("../util/global_worker_pool"),S=t("../style-spec/deref"),z=t("../style-spec/diff"),A=t("../source/rtl_text_plugin"),C=c.pick(z.operations,["addLayer","removeLayer","setPaintProperty","setLayoutProperty","setFilter","addSource","removeSource","setLayerZoomRange","setLight","setTransition"]),E=c.pick(z.operations,["setCenter","setZoom","setBearing","setPitch"]),k=function(t){function e(e,r,i){var n=this;t.call(this),i=c.extend({validate:"string"!=typeof e||!h.isMapboxURL(e)},i);var l=function(t,e){return n.map?n.map._transformRequest(t,e):{url:t}};this.map=r,this.animationLoop=r&&r.animationLoop||new m,this.dispatcher=new d(T(),this),this.imageManager=new a,this.glyphManager=new s(l,i.localIdeographFontFamily),this.lineAtlas=new u(256,512),this._layers={},this._order=[],this.sourceCaches={},this.zoomHistory={},this._loaded=!1,c.bindAll(["_redoPlacement"],this),this._resetUpdates(),this.setEventedParent(r),this.fire("dataloading",{dataType:"style"});var y=this;this._rtlTextPluginCallback=A.registerForPluginAvailability(function(t){y.dispatcher.broadcast("loadRTLTextPlugin",t.pluginBlobURL,t.errorCallback);for(var e in y.sourceCaches)y.sourceCaches[e].reload()});var g=function(t,e){if(t)n.fire("error",{error:t});else if(e){if(i.validate&&v.emitErrors(n,v(e)))return;n._loaded=!0,n.stylesheet=e,n.updateClasses();for(var r in e.sources)n.addSource(r,e.sources[r],i);o(e.sprite,l,function(t,e){if(t)n.fire("error",t);else if(e)for(var r in e)n.imageManager.addImage(r,e[r]);n.imageManager.setLoaded(!0)}),n.glyphManager.setURL(e.glyphs),n._resolve(),n.fire("data",{dataType:"style"}),n.fire("style.load")}};"string"==typeof e?p.getJSON(l(h.normalizeStyleURL(e),p.ResourceType.Style),g):f.frame(function(){return g(null,e)}),this.on("data",function(t){if("source"===t.dataType&&"metadata"===t.sourceDataType){var e=n.sourceCaches[t.sourceId];if(e){var r=e.getSource();if(r&&r.vectorLayerIds)for(var i in n._layers){var o=n._layers[i];o.source===r.id&&n._validateLayer(o)}}}})}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype._validateLayer=function(t){var e=this.sourceCaches[t.source];if(e){var r=t.sourceLayer;if(r){var i=e.getSource();("geojson"===i.type||i.vectorLayerIds&&-1===i.vectorLayerIds.indexOf(r))&&this.fire("error",{error:new Error('Source layer "'+r+'" does not exist on source "'+i.id+'" as specified by style layer "'+t.id+'"')})}}},e.prototype.loaded=function(){var t=this;if(!this._loaded)return!1;if(Object.keys(this._updatedSources).length)return!1;for(var e in t.sourceCaches)if(!t.sourceCaches[e].loaded())return!1;return!!this.imageManager.isLoaded()},e.prototype._resolve=function(){var t=this,e=S(this.stylesheet.layers);this._order=e.map(function(t){return t.id}),this._layers={};for(var r=0,i=e;r<i.length;r+=1){var o=i[r];o=n.create(o),o.setEventedParent(t,{layer:{id:o.id}}),t._layers[o.id]=o}this.dispatcher.broadcast("setLayers",this._serializeLayers(this._order)),this.light=new l(this.stylesheet.light)},e.prototype._serializeLayers=function(t){var e=this;return t.map(function(t){return e._layers[t].serialize()})},e.prototype._applyClasses=function(t,e){var r=this;if(this._loaded){t=t||[],e=e||{transition:!0};var i=this.stylesheet.transition||{},n=this._updatedAllPaintProps?this._layers:this._updatedPaintProps;for(var o in n){var a=r._layers[o],s=r._updatedPaintProps[o];if(r._updatedAllPaintProps||s.all)a.updatePaintTransitions(t,e,i,r.animationLoop,r.zoomHistory);else for(var l in s)r._layers[o].updatePaintTransition(l,t,e,i,r.animationLoop,r.zoomHistory)}this.light.updateLightTransitions(e,i,this.animationLoop)}},e.prototype._recalculate=function(t){var e=this;if(this._loaded){for(var r in e.sourceCaches)e.sourceCaches[r].used=!1;this._updateZoomHistory(t);for(var i=0,n=e._order;i<n.length;i+=1){var o=n[i],a=e._layers[o];a.recalculate(t),!a.isHidden(t)&&a.source&&(e.sourceCaches[a.source].used=!0)}this.light.recalculate(t),Math.floor(this.z)!==Math.floor(t)&&this.animationLoop.set(300),this.z=t}},e.prototype._updateZoomHistory=function(t){var e=this.zoomHistory;void 0===e.lastIntegerZoom&&(e.lastIntegerZoom=Math.floor(t),e.lastIntegerZoomTime=0,e.lastZoom=t),Math.floor(e.lastZoom)<Math.floor(t)?(e.lastIntegerZoom=Math.floor(t),e.lastIntegerZoomTime=Date.now()):Math.floor(e.lastZoom)>Math.floor(t)&&(e.lastIntegerZoom=Math.floor(t+1),e.lastIntegerZoomTime=Date.now()),e.lastZoom=t},e.prototype._checkLoaded=function(){if(!this._loaded)throw new Error("Style is not done loading")},e.prototype.update=function(t,e){var r=this;if(this._changed){var i=Object.keys(this._updatedLayers),n=Object.keys(this._removedLayers);(i.length||n.length||this._updatedSymbolOrder)&&this._updateWorkerLayers(i,n);for(var o in r._updatedSources){var a=r._updatedSources[o];"reload"===a?r._reloadSource(o):"clear"===a&&r._clearSource(o)}this._applyClasses(t,e),this._resetUpdates(),this.fire("data",{dataType:"style"})}},e.prototype._updateWorkerLayers=function(t,e){var r=this,i=this._updatedSymbolOrder?this._order.filter(function(t){return"symbol"===r._layers[t].type}):null;this.dispatcher.broadcast("updateLayers",{layers:this._serializeLayers(t),removedIds:e,symbolOrder:i})},e.prototype._resetUpdates=function(){this._changed=!1,this._updatedLayers={},this._removedLayers={},this._updatedSymbolOrder=!1,this._updatedSources={},this._updatedPaintProps={},this._updatedAllPaintProps=!1},e.prototype.setState=function(t){var e=this;if(this._checkLoaded(),v.emitErrors(this,v(t)))return!1;t=c.clone(t),t.layers=S(t.layers);var r=z(this.serialize(),t).filter(function(t){return!(t.command in E)});if(0===r.length)return!1;var i=r.filter(function(t){return!(t.command in C)});if(i.length>0)throw new Error("Unimplemented: "+i.map(function(t){return t.command}).join(", ")+".");return r.forEach(function(t){"setTransition"!==t.command&&e[t.command].apply(e,t.args)}),this.stylesheet=t,!0},e.prototype.addImage=function(t,e){if(this.imageManager.getImage(t))return this.fire("error",{error:new Error("An image with this name already exists.")});this.imageManager.addImage(t,e),this.fire("data",{dataType:"style"})},e.prototype.removeImage=function(t){if(!this.imageManager.getImage(t))return this.fire("error",{error:new Error("No image with this name exists.")});this.imageManager.removeImage(t),this.fire("data",{dataType:"style"})},e.prototype.addSource=function(t,e,r){var i=this;if(this._checkLoaded(),void 0!==this.sourceCaches[t])throw new Error("There is already a source with this ID");if(!e.type)throw new Error("The type property must be defined, but the only the following properties were given: "+Object.keys(e).join(", ")+".");if(!(["vector","raster","geojson","video","image","canvas"].indexOf(e.type)>=0&&this._validate(v.source,"sources."+t,e,null,r))){var n=this.sourceCaches[t]=new x(t,e,this.dispatcher);n.style=this,n.setEventedParent(this,function(){return{isSourceLoaded:i.loaded(),source:n.serialize(),sourceId:t}}),n.onAdd(this.map),this._changed=!0}},e.prototype.removeSource=function(t){if(this._checkLoaded(),void 0===this.sourceCaches[t])throw new Error("There is no source with this ID");var e=this.sourceCaches[t];delete this.sourceCaches[t],delete this._updatedSources[t],e.fire("data",{sourceDataType:"metadata",dataType:"source",sourceId:t}),e.setEventedParent(null),e.clearTiles(),e.onRemove&&e.onRemove(this.map),this._changed=!0},e.prototype.getSource=function(t){return this.sourceCaches[t]&&this.sourceCaches[t].getSource()},e.prototype.addLayer=function(t,e,r){this._checkLoaded();var i=t.id;if("object"==typeof t.source&&(this.addSource(i,t.source),t=c.clone(t),t=c.extend(t,{source:i})),!this._validate(v.layer,"layers."+i,t,{arrayIndex:-1},r)){var o=n.create(t);this._validateLayer(o),o.setEventedParent(this,{layer:{id:i}});var a=e?this._order.indexOf(e):this._order.length;if(this._order.splice(a,0,i),this._layers[i]=o,this._removedLayers[i]&&o.source){var s=this._removedLayers[i];delete this._removedLayers[i],s.type!==o.type?this._updatedSources[o.source]="clear":(this._updatedSources[o.source]="reload",this.sourceCaches[o.source].pause())}this._updateLayer(o),"symbol"===o.type&&(this._updatedSymbolOrder=!0),this.updateClasses(i)}},e.prototype.moveLayer=function(t,e){this._checkLoaded(),this._changed=!0;var r=this._layers[t];if(!r)return void this.fire("error",{error:new Error("The layer '"+t+"' does not exist in the map's style and cannot be moved.")});var i=this._order.indexOf(t);this._order.splice(i,1);var n=e?this._order.indexOf(e):this._order.length;this._order.splice(n,0,t),"symbol"===r.type&&(this._updatedSymbolOrder=!0,r.source&&!this._updatedSources[r.source]&&(this._updatedSources[r.source]="reload",this.sourceCaches[r.source].pause()))},e.prototype.removeLayer=function(t){this._checkLoaded();var e=this._layers[t];if(!e)return void this.fire("error",{error:new Error("The layer '"+t+"' does not exist in the map's style and cannot be removed.")});e.setEventedParent(null);var r=this._order.indexOf(t);this._order.splice(r,1),"symbol"===e.type&&(this._updatedSymbolOrder=!0),this._changed=!0,this._removedLayers[t]=e,delete this._layers[t],delete this._updatedLayers[t],delete this._updatedPaintProps[t]},e.prototype.getLayer=function(t){return this._layers[t]},e.prototype.setLayerZoomRange=function(t,e,r){this._checkLoaded();var i=this.getLayer(t);if(!i)return void this.fire("error",{error:new Error("The layer '"+t+"' does not exist in the map's style and cannot have zoom extent.")});i.minzoom===e&&i.maxzoom===r||(null!=e&&(i.minzoom=e),null!=r&&(i.maxzoom=r),this._updateLayer(i))},e.prototype.setFilter=function(t,e){this._checkLoaded();var r=this.getLayer(t);if(!r)return void this.fire("error",{error:new Error("The layer '"+t+"' does not exist in the map's style and cannot be filtered.")});null!==e&&void 0!==e&&this._validate(v.filter,"layers."+r.id+".filter",e)||c.deepEqual(r.filter,e)||(r.filter=c.clone(e),this._updateLayer(r))},e.prototype.getFilter=function(t){return c.clone(this.getLayer(t).filter)},e.prototype.setLayoutProperty=function(t,e,r){this._checkLoaded();var i=this.getLayer(t);if(!i)return void this.fire("error",{error:new Error("The layer '"+t+"' does not exist in the map's style and cannot be styled.")});c.deepEqual(i.getLayoutProperty(e),r)||(i.setLayoutProperty(e,r),this._updateLayer(i))},e.prototype.getLayoutProperty=function(t,e){return this.getLayer(t).getLayoutProperty(e)},e.prototype.setPaintProperty=function(t,e,r,i){this._checkLoaded();var n=this.getLayer(t);if(!n)return void this.fire("error",{error:new Error("The layer '"+t+"' does not exist in the map's style and cannot be styled.")});if(!c.deepEqual(n.getPaintProperty(e,i),r)){var o=n.isPaintValueFeatureConstant(e);n.setPaintProperty(e,r,i),!(r&&w.isFunctionDefinition(r)&&"$zoom"!==r.property&&void 0!==r.property)&&o||this._updateLayer(n),this.updateClasses(t,e)}},e.prototype.getPaintProperty=function(t,e,r){return this.getLayer(t).getPaintProperty(e,r)},e.prototype.getTransition=function(){return c.extend({duration:300,delay:0},this.stylesheet&&this.stylesheet.transition)},e.prototype.updateClasses=function(t,e){if(this._changed=!0,t){var r=this._updatedPaintProps;r[t]||(r[t]={}),r[t][e||"all"]=!0}else this._updatedAllPaintProps=!0},e.prototype.serialize=function(){var t=this;return c.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:c.mapObject(this.sourceCaches,function(t){return t.serialize()}),layers:this._order.map(function(e){return t._layers[e].serialize()})},function(t){return void 0!==t})},e.prototype._updateLayer=function(t){this._updatedLayers[t.id]=!0,t.source&&!this._updatedSources[t.source]&&(this._updatedSources[t.source]="reload",this.sourceCaches[t.source].pause()),this._changed=!0},e.prototype._flattenRenderedFeatures=function(t){for(var e=this,r=[],i=this._order.length-1;i>=0;i--)for(var n=e._order[i],o=0,a=t;o<a.length;o+=1){var s=a[o],l=s[n];if(l)for(var u=0,c=l;u<c.length;u+=1){var p=c[u];r.push(p)}}return r},e.prototype.queryRenderedFeatures=function(t,e,r,i){var n=this;e&&e.filter&&this._validate(v.filter,"queryRenderedFeatures.filter",e.filter);var o={};if(e&&e.layers){if(!Array.isArray(e.layers))return this.fire("error",{error:"parameters.layers must be an Array."}),[];for(var a=0,s=e.layers;a<s.length;a+=1){var l=s[a],u=n._layers[l];if(!u)return n.fire("error",{error:"The layer '"+l+"' does not exist in the map's style and cannot be queried for features."}),[];o[u.source]=!0}}var c=[];for(var p in n.sourceCaches)if(!e.layers||o[p]){var h=_.rendered(n.sourceCaches[p],n._layers,t,e,r,i);c.push(h)}return this._flattenRenderedFeatures(c)},e.prototype.querySourceFeatures=function(t,e){e&&e.filter&&this._validate(v.filter,"querySourceFeatures.filter",e.filter);var r=this.sourceCaches[t];return r?_.source(r,e):[]},e.prototype.addSourceType=function(t,e,r){return y(t)?r(new Error('A source type called "'+t+'" already exists.')):(g(t,e),e.workerSourceURL?void this.dispatcher.broadcast("loadWorkerSource",{name:t,url:e.workerSourceURL},r):r(null,null))},e.prototype.getLight=function(){return this.light.getLight()},e.prototype.setLight=function(t,e){this._checkLoaded();var r=this.light.getLight(),i=!1;for(var n in t)if(!c.deepEqual(t[n],r[n])){i=!0;break}if(i){var o=this.stylesheet.transition||{};this.light.setLight(t),this.light.updateLightTransitions(e||{transition:!0},o,this.animationLoop)}},e.prototype._validate=function(t,e,r,i,n){return(!n||!1!==n.validate)&&v.emitErrors(this,t.call(v,c.extend({key:e,style:this.serialize(),value:r,styleSpec:b},i)))},e.prototype._remove=function(){var t=this;A.evented.off("pluginAvailable",this._rtlTextPluginCallback);for(var e in t.sourceCaches)t.sourceCaches[e].clearTiles();this.dispatcher.remove()},e.prototype._clearSource=function(t){this.sourceCaches[t].clearTiles()},e.prototype._reloadSource=function(t){this.sourceCaches[t].resume(),this.sourceCaches[t].reload()},e.prototype._updateSources=function(t){var e=this;for(var r in e.sourceCaches)e.sourceCaches[r].update(t)},e.prototype._redoPlacement=function(){var t=this;for(var e in t.sourceCaches)t.sourceCaches[e].redoPlacement()},e.prototype.getImages=function(t,e,r){this.imageManager.getImages(e.icons,r)},e.prototype.getGlyphs=function(t,e,r){this.glyphManager.getGlyphs(e.stacks,r)},e}(i);e.exports=k},{"../render/glyph_manager":75,"../render/image_manager":77,"../render/line_atlas":78,"../source/query_features":94,"../source/rtl_text_plugin":96,"../source/source":97,"../source/source_cache":98,"../style-spec/deref":107,"../style-spec/diff":108,"../style-spec/function":112,"../style-spec/reference/latest":123,"../util/ajax":201,"../util/browser":202,"../util/dispatcher":208,"../util/evented":210,"../util/global_worker_pool":212,"../util/mapbox":217,"../util/util":223,"./animation_loop":150,"./light":151,"./load_sprite":153,"./style_layer":158,"./validate_style":166}],157:[function(t,e,r){"use strict";var i=t("../style-spec/function"),n=t("../util/util"),o=function(t,e){var r=this;if(this.value=n.clone(e),this.isFunction=i.isFunctionDefinition(e),this.json=JSON.stringify(this.value),this.minimum=t.minimum,this.function=i(this.value,t),this.isFeatureConstant=this.function.isFeatureConstant,this.isZoomConstant=this.function.isZoomConstant,this.isFeatureConstant||this.isZoomConstant){if(!this.isZoomConstant){this.stopZoomLevels=[];for(var o=0,a=r.value.stops;o<a.length;o+=1){var s=a[o];r.stopZoomLevels.indexOf(s[0])<0&&r.stopZoomLevels.push(s[0])}}}else{this.stopZoomLevels=[];for(var l=[],u=0,c=r.value.stops;u<c.length;u+=1){var p=c[u],h=p[0].zoom;r.stopZoomLevels.indexOf(h)<0&&(r.stopZoomLevels.push(h),l.push([h,l.length]))}this._functionInterpolationT=i({type:"exponential",stops:l,base:e.base},{type:"number"})}};o.prototype.calculate=function(t,e){var r=this.function(t&&t.zoom,e||{});return void 0!==this.minimum&&r<this.minimum?this.minimum:r},o.prototype.calculateInterpolationT=function(t){return this.isFeatureConstant||this.isZoomConstant?0:this._functionInterpolationT(t&&t.zoom,{})},e.exports=o},{"../style-spec/function":112,"../util/util":223}],158:[function(t,e,r){"use strict";function i(t){return t.value}var n=t("../util/util"),o=t("./style_transition"),a=t("./style_declaration"),s=t("../style-spec/reference/latest"),l=t("./validate_style"),u=t("./../style-spec/util/parse_color"),c=t("../util/evented"),p=function(t){function e(e){var r=this;t.call(this),this.id=e.id,this.metadata=e.metadata,this.type=e.type,this.minzoom=e.minzoom,this.maxzoom=e.maxzoom,"background"!==e.type&&(this.source=e.source,this.sourceLayer=e["source-layer"],this.filter=e.filter),this.paint={},this.layout={},this._paintSpecifications=s["paint_"+this.type],this._layoutSpecifications=s["layout_"+this.type],this._paintTransitions={},this._paintTransitionOptions={},this._paintDeclarations={},this._layoutDeclarations={},this._layoutFunctions={};var i,n,o={validate:!1};for(var a in e){var l=a.match(/^paint(?:\.(.*))?$/);if(l){var u=l[1]||"";for(i in e[a])r.setPaintProperty(i,e[a][i],u,o)}}for(n in e.layout)r.setLayoutProperty(n,e.layout[n],o);for(i in r._paintSpecifications)r.paint[i]=r.getPaintValue(i);for(n in r._layoutSpecifications)r._updateLayoutValue(n)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.setLayoutProperty=function(t,e,r){if(null==e)delete this._layoutDeclarations[t];else{var i="layers."+this.id+".layout."+t;if(this._validate(l.layoutProperty,i,t,e,r))return;this._layoutDeclarations[t]=new a(this._layoutSpecifications[t],e)}this._updateLayoutValue(t)},e.prototype.getLayoutProperty=function(t){return this._layoutDeclarations[t]&&this._layoutDeclarations[t].value},e.prototype.getLayoutValue=function(t,e,r){var i=this._layoutSpecifications[t],n=this._layoutDeclarations[t];return n?n.calculate(e,r):i.default},e.prototype.setPaintProperty=function(t,e,r,i){var o="layers."+this.id+(r?'["paint.'+r+'"].':".paint.")+t;if(n.endsWith(t,"-transition"))if(this._paintTransitionOptions[r||""]||(this._paintTransitionOptions[r||""]={}),null===e||void 0===e)delete this._paintTransitionOptions[r||""][t];else{if(this._validate(l.paintProperty,o,t,e,i))return;this._paintTransitionOptions[r||""][t]=e}else if(this._paintDeclarations[r||""]||(this._paintDeclarations[r||""]={}),null===e||void 0===e)delete this._paintDeclarations[r||""][t];else{if(this._validate(l.paintProperty,o,t,e,i))return;this._paintDeclarations[r||""][t]=new a(this._paintSpecifications[t],e)}},e.prototype.getPaintProperty=function(t,e){return e=e||"",n.endsWith(t,"-transition")?this._paintTransitionOptions[e]&&this._paintTransitionOptions[e][t]:this._paintDeclarations[e]&&this._paintDeclarations[e][t]&&this._paintDeclarations[e][t].value},e.prototype.getPaintValue=function(t,e,r){var i=this._paintSpecifications[t],n=this._paintTransitions[t];return n?n.calculate(e,r):"color"===i.type&&i.default?u(i.default):i.default},e.prototype.getPaintValueStopZoomLevels=function(t){var e=this._paintTransitions[t];return e?e.declaration.stopZoomLevels:[]},e.prototype.getLayoutValueStopZoomLevels=function(t){var e=this._layoutDeclarations[t];return e?e.stopZoomLevels:[]},e.prototype.getPaintInterpolationT=function(t,e){return this._paintTransitions[t].declaration.calculateInterpolationT(e)},e.prototype.getLayoutInterpolationT=function(t,e){return this._layoutDeclarations[t].calculateInterpolationT(e)},e.prototype.isPaintValueFeatureConstant=function(t){var e=this._paintTransitions[t];return!e||e.declaration.isFeatureConstant},e.prototype.isLayoutValueFeatureConstant=function(t){var e=this._layoutDeclarations[t];return!e||e.isFeatureConstant},e.prototype.isPaintValueZoomConstant=function(t){var e=this._paintTransitions[t];return!e||e.declaration.isZoomConstant},e.prototype.isLayoutValueZoomConstant=function(t){var e=this._layoutDeclarations[t];return!e||e.isZoomConstant},e.prototype.isHidden=function(t){return!!(this.minzoom&&t<this.minzoom)||!!(this.maxzoom&&t>=this.maxzoom)||"none"===this.layout.visibility},e.prototype.updatePaintTransitions=function(t,e,r,i,o){for(var a=this,s=n.extend({},this._paintDeclarations[""]),l=0;l<t.length;l++)n.extend(s,a._paintDeclarations[t[l]]);var u;for(u in s)a._applyPaintDeclaration(u,s[u],e,r,i,o);for(u in a._paintTransitions)u in s||a._applyPaintDeclaration(u,null,e,r,i,o)},e.prototype.updatePaintTransition=function(t,e,r,i,n,o){for(var a=this,s=this._paintDeclarations[""][t],l=0;l<e.length;l++){var u=a._paintDeclarations[e[l]];u&&u[t]&&(s=u[t])}this._applyPaintDeclaration(t,s,r,i,n,o)},e.prototype.recalculate=function(t){var e=this;for(var r in e._paintTransitions)e.paint[r]=e.getPaintValue(r,{zoom:t});for(var i in e._layoutFunctions)e.layout[i]=e.getLayoutValue(i,{zoom:t})},e.prototype.serialize=function(){var t=this,e={id:this.id,type:this.type,source:this.source,"source-layer":this.sourceLayer,metadata:this.metadata,minzoom:this.minzoom,maxzoom:this.maxzoom,filter:this.filter,layout:n.mapObject(this._layoutDeclarations,i)};for(var r in t._paintDeclarations)e[""===r?"paint":"paint."+r]=n.mapObject(t._paintDeclarations[r],i);return n.filterObject(e,function(t,e){return void 0!==t&&!("layout"===e&&!Object.keys(t).length)})},e.prototype._applyPaintDeclaration=function(t,e,r,i,s,l){var u=r.transition?this._paintTransitions[t]:void 0,c=this._paintSpecifications[t];if(null!==e&&void 0!==e||(e=new a(c,c.default)),!u||u.declaration.json!==e.json){var p=n.extend({duration:300,delay:0},i,this.getPaintProperty(t+"-transition")),h=this._paintTransitions[t]=new o(c,e,u,p,l);h.instant()||(h.loopID=s.set(h.endTime-Date.now())),u&&s.cancel(u.loopID)}},e.prototype._updateLayoutValue=function(t){var e=this._layoutDeclarations[t];e&&e.isFunction?this._layoutFunctions[t]=!0:(delete this._layoutFunctions[t],this.layout[t]=this.getLayoutValue(t))},e.prototype._validate=function(t,e,r,i,n){return(!n||!1!==n.validate)&&l.emitErrors(this,t.call(l,{key:e,layerType:this.type,objectKey:r,value:i,styleSpec:s,style:{glyphs:!0,sprite:!0}}))},e.prototype.has3DPass=function(){return!1},e}(c);e.exports=p;var h={circle:t("./style_layer/circle_style_layer"),fill:t("./style_layer/fill_style_layer"),"fill-extrusion":t("./style_layer/fill_extrusion_style_layer"),line:t("./style_layer/line_style_layer"),symbol:t("./style_layer/symbol_style_layer"),background:p,raster:p};p.create=function(t){return new h[t.type](t)}},{"../style-spec/reference/latest":123,"../util/evented":210,"../util/util":223,"./../style-spec/util/parse_color":128,"./style_declaration":157,"./style_layer/circle_style_layer":159,"./style_layer/fill_extrusion_style_layer":160,"./style_layer/fill_style_layer":161,"./style_layer/line_style_layer":162,"./style_layer/symbol_style_layer":163,"./style_transition":165,"./validate_style":166}],159:[function(t,e,r){"use strict";var i=t("../style_layer"),n=t("../../data/bucket/circle_bucket"),o=t("../../util/intersection_tests"),a=o.multiPolygonIntersectsBufferedMultiPoint,s=t("../query_utils"),l=s.getMaximumPaintValue,u=s.translateDistance,c=s.translate,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.prototype.createBucket=function(t){return new n(t)},e.prototype.queryRadius=function(t){return l("circle-radius",this,t)+u(this.paint["circle-translate"])},e.prototype.queryIntersectsFeature=function(t,e,r,i,n,o){var s=c(t,this.getPaintValue("circle-translate",{zoom:i},e.properties),this.getPaintValue("circle-translate-anchor",{zoom:i},e.properties),n,o),l=this.getPaintValue("circle-radius",{zoom:i},e.properties)*o;return a(s,r,l)},e}(i);e.exports=p},{"../../data/bucket/circle_bucket":43,"../../util/intersection_tests":214,"../query_utils":155,"../style_layer":158}],160:[function(t,e,r){"use strict";var i=t("../style_layer"),n=t("../../data/bucket/fill_extrusion_bucket"),o=t("../../util/intersection_tests"),a=o.multiPolygonIntersectsMultiPolygon,s=t("../query_utils"),l=s.translateDistance,u=s.translate,c=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.prototype.getPaintValue=function(e,r,i){var n=t.prototype.getPaintValue.call(this,e,r,i);return"fill-extrusion-color"===e&&n&&(n[3]=1),n},e.prototype.createBucket=function(t){return new n(t)},e.prototype.queryRadius=function(){return l(this.paint["fill-extrusion-translate"])},e.prototype.queryIntersectsFeature=function(t,e,r,i,n,o){var s=u(t,this.getPaintValue("fill-extrusion-translate",{zoom:i},e.properties),this.getPaintValue("fill-extrusion-translate-anchor",{zoom:i},e.properties),n,o);return a(s,r)},e.prototype.has3DPass=function(){return 0!==this.paint["fill-extrusion-opacity"]&&"none"!==this.layout.visibility},e}(i);e.exports=c},{"../../data/bucket/fill_extrusion_bucket":45,"../../util/intersection_tests":214,"../query_utils":155,"../style_layer":158}],161:[function(t,e,r){"use strict";var i=t("../style_layer"),n=t("../../data/bucket/fill_bucket"),o=t("../../util/intersection_tests"),a=o.multiPolygonIntersectsMultiPolygon,s=t("../query_utils"),l=s.translateDistance,u=s.translate,c=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.prototype.getPaintValue=function(e,r,i){var n=this;if("fill-outline-color"===e){if(void 0===this.getPaintProperty("fill-outline-color"))return t.prototype.getPaintValue.call(this,"fill-color",r,i);for(var o=this._paintTransitions["fill-outline-color"];o;){if(!(o&&o.declaration&&o.declaration.value))return t.prototype.getPaintValue.call(n,"fill-color",r,i);o=o.oldTransition}}return t.prototype.getPaintValue.call(this,e,r,i)},e.prototype.getPaintValueStopZoomLevels=function(e){return"fill-outline-color"===e&&void 0===this.getPaintProperty("fill-outline-color")?t.prototype.getPaintValueStopZoomLevels.call(this,"fill-color"):t.prototype.getPaintValueStopZoomLevels.call(this,e)},e.prototype.getPaintInterpolationT=function(e,r){return"fill-outline-color"===e&&void 0===this.getPaintProperty("fill-outline-color")?t.prototype.getPaintInterpolationT.call(this,"fill-color",r):t.prototype.getPaintInterpolationT.call(this,e,r)},e.prototype.isPaintValueFeatureConstant=function(e){return"fill-outline-color"===e&&void 0===this.getPaintProperty("fill-outline-color")?t.prototype.isPaintValueFeatureConstant.call(this,"fill-color"):t.prototype.isPaintValueFeatureConstant.call(this,e)},e.prototype.isPaintValueZoomConstant=function(e){return"fill-outline-color"===e&&void 0===this.getPaintProperty("fill-outline-color")?t.prototype.isPaintValueZoomConstant.call(this,"fill-color"):t.prototype.isPaintValueZoomConstant.call(this,e)},e.prototype.createBucket=function(t){return new n(t)},e.prototype.queryRadius=function(){return l(this.paint["fill-translate"])},e.prototype.queryIntersectsFeature=function(t,e,r,i,n,o){var s=u(t,this.getPaintValue("fill-translate",{zoom:i},e.properties),this.getPaintValue("fill-translate-anchor",{zoom:i},e.properties),n,o);return a(s,r)},e}(i);e.exports=c},{"../../data/bucket/fill_bucket":44,"../../util/intersection_tests":214,"../query_utils":155,"../style_layer":158}],162:[function(t,e,r){"use strict";function i(t,e){return e>0?e+2*t:t}function n(t,e){for(var r=[],i=new o(0,0),n=0;n<t.length;n++){for(var a=t[n],s=[],l=0;l<a.length;l++){var u=a[l-1],c=a[l],p=a[l+1],h=0===l?i:c.sub(u)._unit()._perp(),f=l===a.length-1?i:p.sub(c)._unit()._perp(),d=h._add(f)._unit(),m=d.x*f.x+d.y*f.y;d._mult(1/m),s.push(d._mult(e)._add(c))}r.push(s)}return r}var o=t("@mapbox/point-geometry"),a=t("../style_layer"),s=t("../../data/bucket/line_bucket"),l=t("../../util/intersection_tests"),u=l.multiPolygonIntersectsBufferedMultiLine,c=t("../query_utils"),p=c.getMaximumPaintValue,h=c.translateDistance,f=c.translate,d=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.prototype.createBucket=function(t){return new s(t)},e.prototype.queryRadius=function(t){var e=t,r=i(p("line-width",this,e),p("line-gap-width",this,e)),n=p("line-offset",this,e);return r/2+Math.abs(n)+h(this.paint["line-translate"])},e.prototype.queryIntersectsFeature=function(t,e,r,o,a,s){var l=f(t,this.getPaintValue("line-translate",{zoom:o},e.properties),this.getPaintValue("line-translate-anchor",{zoom:o},e.properties),a,s),c=s/2*i(this.getPaintValue("line-width",{zoom:o},e.properties),this.getPaintValue("line-gap-width",{zoom:o},e.properties)),p=this.getPaintValue("line-offset",{zoom:o},e.properties);return p&&(r=n(r,p*s)),u(l,r,c)},e}(a);e.exports=d},{"../../data/bucket/line_bucket":46,"../../util/intersection_tests":214,"../query_utils":155,"../style_layer":158,"@mapbox/point-geometry":2}],163:[function(t,e,r){"use strict";var i=t("../style_layer"),n=t("../../data/bucket/symbol_bucket"),o=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.prototype.getLayoutValue=function(e,r,i){var n=t.prototype.getLayoutValue.call(this,e,r,i);if("auto"!==n)return n;switch(e){case"text-rotation-alignment":case"icon-rotation-alignment":return"line"===this.getLayoutValue("symbol-placement",r,i)?"map":"viewport";case"text-pitch-alignment":return this.getLayoutValue("text-rotation-alignment",r,i);case"icon-pitch-alignment":return this.getLayoutValue("icon-rotation-alignment",r,i);default:return n}},e.prototype.createBucket=function(t){return new n(t)},e.prototype.queryRadius=function(){return 0},e.prototype.queryIntersectsFeature=function(){return!1},e}(i);e.exports=o},{"../../data/bucket/symbol_bucket":47,"../style_layer":158}],164:[function(t,e,r){"use strict";var i=t("./style_layer"),n=t("../util/util"),o=t("../style-spec/feature_filter"),a=t("../style-spec/group_by_layout"),s=function(t){t&&this.replace(t)};s.prototype.replace=function(t){var e=this;this.symbolOrder=[];for(var r=0,i=t;r<i.length;r+=1){var n=i[r];"symbol"===n.type&&e.symbolOrder.push(n.id)}this._layerConfigs={},this._layers={},this.update(t,[])},s.prototype.update=function(t,e,r){for(var s=this,l=0,u=t;l<u.length;l+=1){var c=u[l];s._layerConfigs[c.id]=c;var p=s._layers[c.id]=i.create(c);p.updatePaintTransitions({},{transition:!1}),p.filter=o(p.filter)}for(var h=0,f=e;h<f.length;h+=1){var d=f[h];delete s._layerConfigs[d],delete s._layers[d]}r&&(this.symbolOrder=r),this.familiesBySource={};for(var m=a(n.values(this._layerConfigs)),v=0,y=m;v<y.length;v+=1){var g=y[v],_=g.map(function(t){return s._layers[t.id]}),x=_[0];if(!x.layout||"none"!==x.layout.visibility){var b=x.source||"",w=s.familiesBySource[b];w||(w=s.familiesBySource[b]={});var T=x.sourceLayer||"_geojsonTileLayer",S=w[T];S||(S=w[T]=[]),S.push(_)}}},e.exports=s},{"../style-spec/feature_filter":110,"../style-spec/group_by_layout":113,"../util/util":223,"./style_layer":158}],165:[function(t,e,r){"use strict";function i(t,e,r){if(void 0!==t&&void 0!==e)return{from:t.to,fromScale:t.toScale,to:e.to,toScale:e.toScale,t:r}}var n=t("../util/util"),o=t("../style-spec/util/interpolate"),a={lastIntegerZoom:0,lastIntegerZoomTime:0,lastZoom:0},s=function(t,e,r,n,s){this.declaration=e,this.startTime=this.endTime=(new Date).getTime(),this.oldTransition=r,this.duration=n.duration||0,this.delay=n.delay||0,this.zoomTransitioned="piecewise-constant"===t.function&&t.transition,this.interp=this.zoomTransitioned?i:o[t.type],this.zoomHistory=s||a,this.instant()||(this.endTime=this.startTime+this.duration+this.delay),r&&r.endTime<=this.startTime&&delete r.oldTransition};s.prototype.instant=function(){return!this.oldTransition||!this.interp||0===this.duration&&0===this.delay},s.prototype.calculate=function(t,e,r){var i=this._calculateTargetValue(t,e);if(this.instant())return i;if((r=r||Date.now())>=this.endTime)return i;var o=this.oldTransition.calculate(t,e,this.startTime),a=n.easeCubicInOut((r-this.startTime-this.delay)/this.duration);return this.interp(o,i,a)},s.prototype._calculateTargetValue=function(t,e){if(!this.zoomTransitioned)return this.declaration.calculate(t,e);var r=t.zoom,i=this.zoomHistory.lastIntegerZoom,n=r>i?2:.5,a=this.declaration.calculate({zoom:r>i?r-1:r+1},e),s=this.declaration.calculate({zoom:r},e),l=Math.min((Date.now()-this.zoomHistory.lastIntegerZoomTime)/this.duration,1),u=Math.abs(r-i),c=o(l,1,u);return void 0!==a&&void 0!==s?{from:a,fromScale:n,to:s,toScale:1,t:c}:void 0},e.exports=s},{"../style-spec/util/interpolate":127,"../util/util":223}],166:[function(t,e,r){"use strict";e.exports=t("../style-spec/validate_style.min"),e.exports.emitErrors=function(t,e){if(e&&e.length){for(var r=0,i=e;r<i.length;r+=1){var n=i[r],o=n.message;t.fire("error",{error:new Error(o)})}return!0}return!1}},{"../style-spec/validate_style.min":149}],167:[function(t,e,r){"use strict";var i=t("@mapbox/point-geometry"),n=function(t){function e(e,r,i,n){t.call(this,e,r),this.angle=i,void 0!==n&&(this.segment=n)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.clone=function(){return new e(this.x,this.y,this.angle,this.segment)},e}(i);e.exports=n},{"@mapbox/point-geometry":2}],168:[function(t,e,r){"use strict";function i(t,e,r,i,n){if(void 0===e.segment)return!0;for(var o=e,a=e.segment+1,s=0;s>-r/2;){if(--a<0)return!1;s-=t[a].dist(o),o=t[a]}s+=t[a].dist(t[a+1]),a++;for(var l=[],u=0;s<r/2;){var c=t[a-1],p=t[a],h=t[a+1];if(!h)return!1;var f=c.angleTo(p)-p.angleTo(h);for(f=Math.abs((f+3*Math.PI)%(2*Math.PI)-Math.PI),l.push({distance:s,angleDelta:f}),u+=f;s-l[0].distance>i;)u-=l.shift().angleDelta;if(u>n)return!1;a++,s+=p.dist(h)}return!0}e.exports=i},{}],169:[function(t,e,r){"use strict";function i(t,e,r,i,o){for(var a=[],s=0;s<t.length;s++)for(var l=t[s],u=void 0,c=0;c<l.length-1;c++){var p=l[c],h=l[c+1];p.x<e&&h.x<e||(p.x<e?p=new n(e,p.y+(h.y-p.y)*((e-p.x)/(h.x-p.x)))._round():h.x<e&&(h=new n(e,p.y+(h.y-p.y)*((e-p.x)/(h.x-p.x)))._round()),p.y<r&&h.y<r||(p.y<r?p=new n(p.x+(h.x-p.x)*((r-p.y)/(h.y-p.y)),r)._round():h.y<r&&(h=new n(p.x+(h.x-p.x)*((r-p.y)/(h.y-p.y)),r)._round()),p.x>=i&&h.x>=i||(p.x>=i?p=new n(i,p.y+(h.y-p.y)*((i-p.x)/(h.x-p.x)))._round():h.x>=i&&(h=new n(i,p.y+(h.y-p.y)*((i-p.x)/(h.x-p.x)))._round()),p.y>=o&&h.y>=o||(p.y>=o?p=new n(p.x+(h.x-p.x)*((o-p.y)/(h.y-p.y)),o)._round():h.y>=o&&(h=new n(p.x+(h.x-p.x)*((o-p.y)/(h.y-p.y)),o)._round()),u&&p.equals(u[u.length-1])||(u=[p],a.push(u)),u.push(h)))))}return a}var n=t("@mapbox/point-geometry");e.exports=i},{"@mapbox/point-geometry":2}],170:[function(t,e,r){"use strict";var i=t("../util/struct_array"),n=t("@mapbox/point-geometry"),o=i({members:[{type:"Int16",name:"anchorPointX"},{type:"Int16",name:"anchorPointY"},{type:"Int16",name:"offsetX"},{type:"Int16",name:"offsetY"},{type:"Int16",name:"x1"},{type:"Int16",name:"y1"},{type:"Int16",name:"x2"},{type:"Int16",name:"y2"},{type:"Float32",name:"unadjustedMaxScale"},{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(o.prototype.StructType.prototype,"anchorPoint",{get:function(){return new n(this.anchorPointX,this.anchorPointY)}}),e.exports=o},{"../util/struct_array":220,"@mapbox/point-geometry":2}],171:[function(t,e,r){"use strict";var i=function(t,e,r,i,n,o,a,s,l,u,c){var p=a.top*s-l,h=a.bottom*s+l,f=a.left*s-l,d=a.right*s+l;if(this.boxStartIndex=t.length,u){var m=h-p,v=d-f;if(m>0)if(m=Math.max(10*s,m),c){var y=e[r.segment+1].sub(e[r.segment])._unit()._mult(v),g=[r.sub(y),r.add(y)];this._addLineCollisionBoxes(t,g,r,0,v,m,i,n,o)}else this._addLineCollisionBoxes(t,e,r,r.segment,v,m,i,n,o)}else t.emplaceBack(r.x,r.y,0,0,f,p,d,h,1/0,1/0,i,n,o,0,0,0,0,0);this.boxEndIndex=t.length};i.prototype._addLineCollisionBoxes=function(t,e,r,i,n,o,a,s,l){var u=o/2,c=Math.floor(n/u),p=Math.floor(c/2),h=-o/2,f=r,d=i+1,m=h,v=-n/2,y=v-n/8;do{if(--d<0){if(m>v)return;d=0;break}m-=e[d].dist(f),f=e[d]}while(m>y);for(var g=e[d].dist(e[d+1]),_=-p;_<c+p;_++){var x=_*u,b=v+x;if(x<0&&(b+=x),x>n&&(b+=x-n),!(b<m)){for(;m+g<b;){if(m+=g,++d+1>=e.length)return;g=e[d].dist(e[d+1])}var w=b-m,T=e[d],S=e[d+1],z=S.sub(T)._unit()._mult(w)._add(T)._round(),A=Math.max(Math.abs(b-h)-u/2,0),C=n/2/A;(_<0||_>=c)&&(C=Math.min(C,.99)),t.emplaceBack(z.x,z.y,z.x-r.x,z.y-r.y,-o/2,-o/2,o/2,o/2,C,C,a,s,l,0,0,0,0,0)}}},e.exports=i},{}],172:[function(t,e,r){"use strict";var i=t("@mapbox/point-geometry"),n=t("../data/extent"),o=t("grid-index"),a=t("../util/intersection_tests"),s=function(t,e,r,i,a,s,l){void 0===s&&(s=new o(n,12,6)),void 0===l&&(l=new o(n,12,0)),this.angle=t,this.pitch=e,this.cameraToCenterDistance=r,this.cameraToTileDistance=i,this.grid=s,this.ignoredGrid=l,this.perspectiveRatio=1+.5*(i/r-1),this.minScale=.5/this.perspectiveRatio,this.maxScale=2/this.perspectiveRatio;var u=Math.sin(this.angle),c=Math.cos(this.angle);this.rotationMatrix=[c,-u,u,c],this.reverseRotationMatrix=[c,u,-u,c],this.yStretch=Math.max(1,i/(r*Math.cos(e/180*Math.PI))),this.collisionBoxArray=a,0===a.length&&(a.emplaceBack(),a.emplaceBack(0,0,0,0,0,-n,0,n,1/0,1/0,0,0,0,0,0,0,0,0,0),a.emplaceBack(n,0,0,0,0,-n,0,n,1/0,1/0,0,0,0,0,0,0,0,0,0),a.emplaceBack(0,0,0,0,-n,0,n,0,1/0,1/0,0,0,0,0,0,0,0,0,0),a.emplaceBack(0,n,0,0,-n,0,n,0,1/0,1/0,0,0,0,0,0,0,0,0,0)),this.tempCollisionBox=a.get(0),this.edges=[a.get(1),a.get(2),a.get(3),a.get(4)]};s.deserialize=function(t,e){return new s(t.angle,t.pitch,t.cameraToCenterDistance,t.cameraToTileDistance,e,new o(t.grid),new o(t.ignoredGrid))},s.prototype.serialize=function(t){var e=this.grid.toArrayBuffer(),r=this.ignoredGrid.toArrayBuffer();return t&&(t.push(e),t.push(r)),{angle:this.angle,pitch:this.pitch,cameraToCenterDistance:this.cameraToCenterDistance,cameraToTileDistance:this.cameraToTileDistance,grid:e,ignoredGrid:r}},s.prototype.placeCollisionFeature=function(t,e,r){for(var n=this,o=this.collisionBoxArray,a=this.minScale,s=this.rotationMatrix,l=this.yStretch,u=t.boxStartIndex;u<t.boxEndIndex;u++){var c=o.get(u),p=c.anchorPoint._matMult(s),h=p.x,f=p.y,d=h+c.x1*n.perspectiveRatio,m=f+c.y1*l*n.perspectiveRatio,v=h+c.x2*n.perspectiveRatio,y=f+c.y2*l*n.perspectiveRatio;c.bbox0=d,c.bbox1=m,c.bbox2=v,c.bbox3=y;var g=new i(c.offsetX,c.offsetY)._matMult(s),_=g.x*g.x,x=g.y*g.y,b=x*l*l,w=Math.sqrt((_+b)/(_+x))||1;if(c.maxScale=c.unadjustedMaxScale*w,!e)for(var T=n.grid.query(d,m,v,y),S=0;S<T.length;S++){var z=o.get(T[S]),A=z.anchorPoint._matMult(s);if((a=n.getPlacementScale(a,p,c,A,z))>=n.maxScale)return a}if(r){var C=void 0;if(n.angle){var E=n.reverseRotationMatrix,k=new i(c.x1,c.y1).matMult(E),M=new i(c.x2,c.y1).matMult(E),L=new i(c.x1,c.y2).matMult(E),I=new i(c.x2,c.y2).matMult(E);C=n.tempCollisionBox,C.anchorPointX=c.anchorPoint.x,C.anchorPointY=c.anchorPoint.y,C.x1=Math.min(k.x,M.x,L.x,I.x),C.y1=Math.min(k.y,M.x,L.x,I.x),C.x2=Math.max(k.x,M.x,L.x,I.x),C.y2=Math.max(k.y,M.x,L.x,I.x),C.maxScale=c.maxScale}else C=c;for(var P=0;P<this.edges.length;P++){var R=n.edges[P];if((a=n.getPlacementScale(a,c.anchorPoint,C,R.anchorPoint,R))>=n.maxScale)return a}}}return a},s.prototype.queryRenderedSymbols=function(t,e){var r={},n=[];if(0===t.length||0===this.grid.keys.length&&0===this.ignoredGrid.keys.length)return n;for(var o=this.collisionBoxArray,s=this.rotationMatrix,l=this.yStretch,u=[],c=1/0,p=1/0,h=-1/0,f=-1/0,d=0;d<t.length;d++)for(var m=t[d],v=0;v<m.length;v++){var y=m[v].matMult(s);c=Math.min(c,y.x),p=Math.min(p,y.y),h=Math.max(h,y.x),f=Math.max(f,y.y),u.push(y)}for(var g=this.grid.query(c,p,h,f),_=this.ignoredGrid.query(c,p,h,f),x=0;x<_.length;x++)g.push(_[x]);for(var b=e/this.perspectiveRatio,w=Math.pow(2,Math.ceil(Math.log(b)/Math.LN2*10)/10),T=0;T<g.length;T++){var S=o.get(g[T]),z=S.sourceLayerIndex,A=S.featureIndex;if(void 0===r[z]&&(r[z]={}),!r[z][A]&&!(w<S.placementScale||w>S.maxScale)){var C=S.anchorPoint.matMult(s),E=C.x+S.x1/b,k=C.y+S.y1/b*l,M=C.x+S.x2/b,L=C.y+S.y2/b*l,I=[new i(E,k),new i(M,k),new i(M,L),new i(E,L)];a.polygonIntersectsPolygon(u,I)&&(r[z][A]=!0,n.push(g[T]))}}return n},s.prototype.getPlacementScale=function(t,e,r,i,n){var o=e.x-i.x,a=e.y-i.y,s=(n.x1-r.x2)/o,l=(n.x2-r.x1)/o,u=(n.y1-r.y2)*this.yStretch/a,c=(n.y2-r.y1)*this.yStretch/a;(isNaN(s)||isNaN(l))&&(s=l=1),(isNaN(u)||isNaN(c))&&(u=c=1);var p=Math.min(Math.max(s,l),Math.max(u,c)),h=n.maxScale,f=r.maxScale;return p>h&&(p=h),p>f&&(p=f),p>t&&p>=n.placementScale&&(t=p),t},s.prototype.insertCollisionFeature=function(t,e,r){for(var i=this,n=r?this.ignoredGrid:this.grid,o=this.collisionBoxArray,a=t.boxStartIndex;a<t.boxEndIndex;a++){var s=o.get(a);s.placementScale=e,e<i.maxScale&&(1===i.perspectiveRatio||s.maxScale>=1)&&n.insert(a,s.bbox0,s.bbox1,s.bbox2,s.bbox3)}},e.exports=s},{"../data/extent":48,"../util/intersection_tests":214,"@mapbox/point-geometry":2,"grid-index":22}],173:[function(t,e,r){"use strict";function i(t,e,r,i,o,a,s,l,u){var c=i?.6*a*s:0,p=Math.max(i?i.right-i.left:0,o?o.right-o.left:0),h=0===t[0].x||t[0].x===u||0===t[0].y||t[0].y===u;e-p*s<e/4&&(e=p*s+e/4);var f=2*a;return n(t,h?e/2*l%e:(p/2+f)*s*l%e,e,c,r,p*s,h,!1,u)}function n(t,e,r,i,l,u,c,p,h){for(var f=u/2,d=0,m=0;m<t.length-1;m++)d+=t[m].dist(t[m+1]);for(var v=0,y=e-r,g=[],_=0;_<t.length-1;_++){for(var x=t[_],b=t[_+1],w=x.dist(b),T=b.angleTo(x);y+r<v+w;){y+=r;var S=(y-v)/w,z=o(x.x,b.x,S),A=o(x.y,b.y,S);if(z>=0&&z<h&&A>=0&&A<h&&y-f>=0&&y+f<=d){var C=new a(z,A,T,_);C._round(),i&&!s(t,C,u,i,l)||g.push(C)}}v+=w}return p||g.length||c||(g=n(t,v/2,r,i,l,u,c,!0,h)),g}var o=t("../style-spec/util/interpolate"),a=t("../symbol/anchor"),s=t("./check_max_angle");e.exports=i},{"../style-spec/util/interpolate":127,"../symbol/anchor":167,"./check_max_angle":168}],174:[function(t,e,r){"use strict";e.exports=function(t){function e(e){s.push(t[e]),l++}function r(t,e,r){var i=a[t];return delete a[t],a[e]=i,s[i].geometry[0].pop(),s[i].geometry[0]=s[i].geometry[0].concat(r[0]),i}function i(t,e,r){var i=o[e];return delete o[e],o[t]=i,s[i].geometry[0].shift(),s[i].geometry[0]=r[0].concat(s[i].geometry[0]),i}function n(t,e,r){var i=r?e[0][e[0].length-1]:e[0][0];return t+":"+i.x+":"+i.y}for(var o={},a={},s=[],l=0,u=0;u<t.length;u++){var c=t[u],p=c.geometry,h=c.text;if(h){var f=n(h,p),d=n(h,p,!0);if(f in a&&d in o&&a[f]!==o[d]){var m=i(f,d,p),v=r(f,d,s[m].geometry);delete o[f],delete a[d],a[n(h,s[v].geometry,!0)]=v,s[m].geometry=null}else f in a?r(f,d,p):d in o?i(f,d,p):(e(u),o[f]=l-1,a[d]=l-1)}else e(u)}return s.filter(function(t){return t.geometry})}},{}],175:[function(t,e,r){"use strict";function i(t,e,r,i,n){var o=d.identity(new Float32Array(16));return e?(d.identity(o),d.scale(o,o,[1/n,1/n,1]),r||d.rotateZ(o,o,i.angle)):(d.scale(o,o,[i.width/2,-i.height/2,1]),d.translate(o,o,[1,-1,0]),d.multiply(o,o,t)),o}function n(t,e,r,i,n){var o=d.identity(new Float32Array(16));return e?(d.multiply(o,o,t),d.scale(o,o,[n,n,1]),r||d.rotateZ(o,o,-i.angle)):(d.scale(o,o,[1,-1,1]),d.translate(o,o,[-1,-1,0]),d.scale(o,o,[2/i.width,2/i.height,1])),o}function o(t,e){var r=[t.x,t.y,0,1];m.transformMat4(r,r,e);var i=r[3];return{point:new h(r[0]/i,r[1]/i),signedDistanceFromCamera:i}}function a(t,e,r,i){var n=t[0]/t[3],o=t[1]/t[3];return n>=-r[0]&&n<=r[0]&&o>=-r[1]&&o<=r[1]&&i.frameHistory.isVisible(e)}function s(t,e,r,i,n,s,u,c,f,d){var y=i?t.textSizeData:t.iconSizeData,g=v.evaluateSizeForZoom(y,r.transform,d,i),_=[256/r.width*2+1,256/r.height*2+1],x=i?t.text.dynamicLayoutVertexArray:t.icon.dynamicLayoutVertexArray;x.clear();for(var b=t.lineVertexArray,w=i?t.placedGlyphArray:t.placedIconArray,T=0;T<w.length;T++){var S=w.get(T),z=[S.anchorX,S.anchorY,0,1];if(m.transformMat4(z,z,e),a(z,S.placementZoom,_,r)){var A=z[3],C=1+.5*(A/r.transform.cameraToCenterDistance-1),E=v.evaluateSizeForFeature(y,g,S),k=u?E*C:E/C,M=new h(S.anchorX,S.anchorY),L=o(M,n).point,I={},P=l(S,k,!1,c,e,n,s,t.glyphOffsetArray,b,x,L,M,I);(P.notEnoughRoom||P.needsFlipping&&l(S,k,!0,c,e,n,s,t.glyphOffsetArray,b,x,L,M,I).notEnoughRoom)&&p(S.numGlyphs,x)}else p(S.numGlyphs,x)}i?t.text.dynamicLayoutVertexBuffer.updateData(x.serialize()):t.icon.dynamicLayoutVertexBuffer.updateData(x.serialize())}function l(t,e,r,i,n,a,s,l,p,f,d,m,v){var y,_=e/24,x=t.lineOffsetX*e,b=t.lineOffsetY*e;if(t.numGlyphs>1){var w=t.glyphStartIndex+t.numGlyphs,T=l.get(t.glyphStartIndex).offsetX,S=l.get(w-1).offsetX,z=t.lineStartIndex,A=t.lineStartIndex+t.lineLength,C=c(_*T,x,b,r,d,m,t.segment,z,A,p,a,v);if(!C)return{notEnoughRoom:!0};var E=c(_*S,x,b,r,d,m,t.segment,z,A,p,a,v);if(!E)return{notEnoughRoom:!0};var k=o(C.point,s).point,M=o(E.point,s).point;if(i&&!r&&(t.vertical?k.y<M.y:k.x>M.x))return{needsFlipping:!0};y=[C];for(var L=t.glyphStartIndex+1;L<w-1;L++){var I=l.get(L);y.push(c(_*I.offsetX,x,b,r,d,m,t.segment,z,A,p,a,v))}y.push(E)}else{if(i&&!r){var P=o(m,n).point,R=p.get(t.lineStartIndex+t.segment+1),D=o(R,n),O=D.signedDistanceFromCamera>0?D.point:u(m,new h(R.x,R.y),P,1,n);if(t.vertical?O.y>P.y:O.x<P.x)return{needsFlipping:!0}}var B=l.get(t.glyphStartIndex),F=c(_*B.offsetX,x,b,r,d,m,t.segment,t.lineStartIndex,t.lineStartIndex+t.lineLength,p,a,v);if(!F)return{notEnoughRoom:!0};y=[F]}for(var j=t.placementZoom,V=0,N=y;V<N.length;V+=1){var U=N[V];g(f,U.point,U.angle,j)}return{}}function u(t,e,r,i,n){var a=o(t.add(t.sub(e)._unit()),n).point,s=r.sub(a);return r.add(s._mult(i/s.mag()))}function c(t,e,r,i,n,a,s,l,c,p,f,d){var m=i?t-e:t+e,v=m>0?1:-1,y=0;i&&(v*=-1,y=Math.PI),v<0&&(y+=Math.PI);for(var g=v>0?l+s:l+s+1,_=n,x=n,b=0,w=0,T=Math.abs(m);b+w<=T;){if((g+=v)<l||g>=c)return null;if(x=_,void 0===(_=d[g])){var S=o(p.get(g),f);_=S.signedDistanceFromCamera>0?d[g]=S.point:u(0===b?a:new h(p.get(g-v).x,p.get(g-v).y),new h(p.get(g).x,p.get(g).y),x,T-b+1,f)}b+=w,w=x.dist(_)}var z=(T-b)/w,A=_.sub(x),C=A.mult(z)._add(x);return C._add(A._unit()._perp()._mult(r*v)),{point:C,angle:y+Math.atan2(_.y-x.y,_.x-x.x)}}function p(t,e){for(var r=0;r<t;r++)g(e,_,0,25)}var h=t("@mapbox/point-geometry"),f=t("@mapbox/gl-matrix"),d=f.mat4,m=f.vec4,v=t("./symbol_size"),y=t("../data/bucket/symbol_bucket"),g=y.addDynamicAttributes;e.exports={updateLineLabels:s,getLabelPlaneMatrix:i,getGlCoordMatrix:n};var _=new h(-1/0,-1/0)},{"../data/bucket/symbol_bucket":47,"./symbol_size":178,"@mapbox/gl-matrix":1,"@mapbox/point-geometry":2}],176:[function(t,e,r){"use strict";function i(t,e,r,i,n,a,s){var l,u,c,p,h=e.image,f=r.layout,d=e.top-1/h.pixelRatio,m=e.left-1/h.pixelRatio,v=e.bottom+1/h.pixelRatio,y=e.right+1/h.pixelRatio;if("none"!==f["icon-text-fit"]&&n){var g=y-m,_=v-d,x=f["text-size"]/24,b=n.left*x,w=n.right*x,T=n.top*x,S=n.bottom*x,z=w-b,A=S-T,C=f["icon-text-fit-padding"][0],E=f["icon-text-fit-padding"][1],k=f["icon-text-fit-padding"][2],M=f["icon-text-fit-padding"][3],L="width"===f["icon-text-fit"]?.5*(A-_):0,I="height"===f["icon-text-fit"]?.5*(z-g):0,P="width"===f["icon-text-fit"]||"both"===f["icon-text-fit"]?z:g,R="height"===f["icon-text-fit"]||"both"===f["icon-text-fit"]?A:_;l=new o(b+I-M,T+L-C),u=new o(b+I+E+P,T+L-C),c=new o(b+I+E+P,T+L+k+R),p=new o(b+I-M,T+L+k+R)}else l=new o(m,d),u=new o(y,d),c=new o(y,v),p=new o(m,v);var D=r.getLayoutValue("icon-rotate",a,s)*Math.PI/180;if(D){var O=Math.sin(D),B=Math.cos(D),F=[B,-O,O,B];l._matMult(F),u._matMult(F),p._matMult(F),c._matMult(F)}return[{tl:l,tr:u,bl:p,br:c,tex:{x:h.textureRect.x-1,y:h.textureRect.y-1,w:h.textureRect.w+2,h:h.textureRect.h+2},writingMode:void 0,glyphOffset:[0,0]}]}function n(t,e,r,i,n,a,l){for(var u=r.getLayoutValue("text-rotate",n,a)*Math.PI/180,c=r.getLayoutValue("text-offset",n,a).map(function(t){return 24*t}),p=e.positionedGlyphs,h=[],f=0;f<p.length;f++){var d=p[f],m=l[d.glyph];if(m){var v=m.rect;if(v){var y=s+1,g=m.metrics.advance/2,_=i?[d.x+g,d.y]:[0,0],x=i?[0,0]:[d.x+g+c[0],d.y+c[1]],b=m.metrics.left-y-g+x[0],w=-m.metrics.top-y+x[1],T=b+v.w,S=w+v.h,z=new o(b,w),A=new o(T,w),C=new o(b,S),E=new o(T,S);if(i&&d.vertical){var k=new o(-g,g),M=-Math.PI/2,L=new o(5,0);z._rotateAround(M,k)._add(L),A._rotateAround(M,k)._add(L),C._rotateAround(M,k)._add(L),E._rotateAround(M,k)._add(L)}if(u){var I=Math.sin(u),P=Math.cos(u),R=[P,-I,I,P];z._matMult(R),A._matMult(R),C._matMult(R),E._matMult(R)}h.push({tl:z,tr:A,bl:C,br:E,tex:v,writingMode:e.writingMode,glyphOffset:_})}}}return h}var o=t("@mapbox/point-geometry"),a=t("../style/parse_glyph_pbf"),s=a.GLYPH_PBF_BORDER;e.exports={getIconQuads:i,getGlyphQuads:n}},{"../style/parse_glyph_pbf":154,"@mapbox/point-geometry":2}],177:[function(t,e,r){"use strict";function i(t,e){for(var r=[],i=0,n=0,o=e;n<o.length;n+=1){var a=o[n];r.push(t.substring(i,a)),i=a}return i<t.length&&r.push(t.substring(i,t.length)),r}function n(t,e,r,n,o,a,s,l,u,p){var f=t.trim();p===_.vertical&&(f=y(f));var d,m=[],v={positionedGlyphs:m,text:f,top:l[1],bottom:l[1],left:l[0],right:l[0],writingMode:p},x=g.processBidirectionalText;return d=x?x(f,c(f,s,r,e)):i(f,c(f,s,r,e)),h(v,e,d,n,o,a,p,s,u),!!m.length&&v}function o(t,e,r,i){for(var n=0,o=0;o<t.length;o++){var a=i[t.charCodeAt(o)];a&&(n+=a.metrics.advance+e)}return n/Math.max(1,Math.ceil(n/r))}function a(t,e,r,i){var n=Math.pow(t-e,2);return i?t<e?n/2:2*n:n+Math.abs(r)*r}function s(t,e){var r=0;return 10===t&&(r-=1e4),40!==t&&65288!==t||(r+=50),41!==e&&65289!==e||(r+=50),r}function l(t,e,r,i,n,o){for(var s=null,l=a(e,r,n,o),u=0,c=i;u<c.length;u+=1){var p=c[u],h=e-p.x,f=a(h,r,n,o)+p.badness;f<=l&&(s=p,l=f)}return{index:t,x:e,priorBreak:s,badness:l}}function u(t){return t?u(t.priorBreak).concat(t.index):[]}function c(t,e,r,i){if(!r)return[];if(!t)return[];for(var n=[],a=o(t,e,r,i),c=0,p=0;p<t.length;p++){var h=t.charCodeAt(p),f=i[h];f&&!x[h]&&(c+=f.metrics.advance+e),p<t.length-1&&(b[h]||v.charAllowsIdeographicBreaking(h))&&n.push(l(p+1,c,a,n,s(h,t.charCodeAt(p+1)),!1))}return u(l(t.length,c,a,n,0,!0))}function p(t){var e=.5,r=.5;switch(t){case"right":case"top-right":case"bottom-right":e=1;break;case"left":case"top-left":case"bottom-left":e=0}switch(t){case"bottom":case"bottom-right":case"bottom-left":r=1;break;case"top":case"top-right":case"top-left":r=0}return{horizontalAlign:e,verticalAlign:r}}function h(t,e,r,i,n,o,a,s,l){for(var u=0,c=-17,h=0,m=t.positionedGlyphs,y="right"===o?1:"left"===o?0:.5,g=0,x=r;g<x.length;g+=1){var b=x[g];if(b=b.trim(),b.length){for(var w=m.length,T=0;T<b.length;T++){var S=b.charCodeAt(T),z=e[S];z&&(v.charHasUprightVerticalOrientation(S)&&a!==_.horizontal?(m.push({glyph:S,x:u,y:0,vertical:!0}),u+=l+s):(m.push({glyph:S,x:u,y:c,vertical:!1}),u+=z.metrics.advance+s))}if(m.length!==w){var A=u-s;h=Math.max(A,h),f(m,e,w,m.length-1,y)}u=0,c+=i}else c+=i}var C=p(n),E=C.horizontalAlign,k=C.verticalAlign;d(m,y,E,k,h,i,r.length);var M=r.length*i;t.top+=-k*M,t.bottom=t.top+M,t.left+=-E*h,t.right=t.left+h}function f(t,e,r,i,n){if(n){var o=e[t[i].glyph];if(o)for(var a=o.metrics.advance,s=(t[i].x+a)*n,l=r;l<=i;l++)t[l].x-=s}}function d(t,e,r,i,n,o,a){for(var s=(e-r)*n,l=(-i*a+.5)*o,u=0;u<t.length;u++)t[u].x+=s,t[u].y+=l}function m(t,e,r){var i=p(r),n=i.horizontalAlign,o=i.verticalAlign,a=e[0],s=e[1],l=a-t.displaySize[0]*n,u=l+t.displaySize[0],c=s-t.displaySize[1]*o;return{image:t,top:c,bottom:c+t.displaySize[1],left:l,right:u}}var v=t("../util/script_detection"),y=t("../util/verticalize_punctuation"),g=t("../source/rtl_text_plugin"),_={horizontal:1,vertical:2};e.exports={shapeText:n,shapeIcon:m,WritingMode:_};var x={};x[9]=!0,x[10]=!0,x[11]=!0,x[12]=!0,x[13]=!0,x[32]=!0;var b={};b[10]=!0,b[32]=!0,b[38]=!0,b[40]=!0,b[41]=!0,b[43]=!0,b[45]=!0,b[47]=!0,b[173]=!0,b[183]=!0,b[8203]=!0,b[8208]=!0,b[8211]=!0,b[8231]=!0},{"../source/rtl_text_plugin":96,"../util/script_detection":218,"../util/verticalize_punctuation":225}],178:[function(t,e,r){"use strict";function i(t,e,r){var i=e;return t.isFeatureConstant?i.uSize:t.isZoomConstant?r.lowerSize/10:o.number(r.lowerSize/10,r.upperSize/10,i.uSizeT)}function n(t,e,r,i){var n={};if(t.isZoomConstant||t.isFeatureConstant)if(t.isFeatureConstant&&!t.isZoomConstant){var o;if("interval"===t.functionType)o=r.getLayoutValue(i?"text-size":"icon-size",{zoom:e.zoom});else{var a="interval"===t.functionType?0:s(e.zoom,t.functionBase,t.coveringZoomRange[0],t.coveringZoomRange[1]),u=t.coveringStopValues[0],c=t.coveringStopValues[1];o=u+(c-u)*l.clamp(a,0,1)}n.uSize=o}else t.isFeatureConstant&&t.isZoomConstant&&(n.uSize=t.layoutSize);else{var p=s(e.zoom,t.functionBase,t.coveringZoomRange[0],t.coveringZoomRange[1]);n.uSizeT=l.clamp(p,0,1)}return n}var o=t("../style-spec/util/interpolate"),a=t("../style-spec/function"),s=a.interpolationFactor,l=t("../util/util");e.exports={evaluateSizeForFeature:i,evaluateSizeForZoom:n}},{"../style-spec/function":112,"../style-spec/util/interpolate":127,"../util/util":223}],179:[function(t,e,r){"use strict";var i=t("../source/rtl_text_plugin");e.exports=function(t,e,r,n){var o=e.getLayoutValue("text-transform",r,n);return"uppercase"===o?t=t.toLocaleUpperCase():"lowercase"===o&&(t=t.toLocaleLowerCase()),i.applyArabicShaping&&(t=i.applyArabicShaping(t)),t}},{"../source/rtl_text_plugin":96}],180:[function(t,e,r){"use strict";var i=t("../util/dom"),n=t("@mapbox/point-geometry"),o={scrollZoom:t("./handler/scroll_zoom"),boxZoom:t("./handler/box_zoom"),dragRotate:t("./handler/drag_rotate"),dragPan:t("./handler/drag_pan"),keyboard:t("./handler/keyboard"),doubleClickZoom:t("./handler/dblclick_zoom"),touchZoomRotate:t("./handler/touch_zoom_rotate")};e.exports=function(t,e){function r(t){y("mouseout",t)}function a(e){t.stop(),w=i.mousePos(_,e),y("mousedown",e),b=!0}function s(e){var r=t.dragRotate&&t.dragRotate.isActive();x&&!r&&y("contextmenu",x),x=null,b=!1,y("mouseup",e)}function l(e){if(!(t.dragPan&&t.dragPan.isActive()||t.dragRotate&&t.dragRotate.isActive())){for(var r=e.toElement||e.target;r&&r!==_;)r=r.parentNode;r===_&&y("mousemove",e)}}function u(e){t.stop(),g("touchstart",e),!e.touches||e.touches.length>1||(T?(clearTimeout(T),T=null,y("dblclick",e)):T=setTimeout(f,300))}function c(t){g("touchmove",t)}function p(t){g("touchend",t)}function h(t){g("touchcancel",t)}function f(){T=null}function d(t){i.mousePos(_,t).equals(w)&&y("click",t)}function m(t){y("dblclick",t),t.preventDefault()}function v(e){var r=t.dragRotate&&t.dragRotate.isActive();b||r?b&&(x=e):y("contextmenu",e),e.preventDefault()}function y(e,r){var n=i.mousePos(_,r);return t.fire(e,{lngLat:t.unproject(n),point:n,originalEvent:r})}function g(e,r){var o=i.touchPos(_,r),a=o.reduce(function(t,e,r,i){return t.add(e.div(i.length))},new n(0,0));return t.fire(e,{lngLat:t.unproject(a),point:a,lngLats:o.map(function(e){return t.unproject(e)},this),points:o,originalEvent:r})}var _=t.getCanvasContainer(),x=null,b=!1,w=null,T=null;for(var S in o)t[S]=new o[S](t,e),e.interactive&&e[S]&&t[S].enable(e[S]);_.addEventListener("mouseout",r,!1),_.addEventListener("mousedown",a,!1),_.addEventListener("mouseup",s,!1),_.addEventListener("mousemove",l,!1),_.addEventListener("touchstart",u,!1),_.addEventListener("touchend",p,!1),_.addEventListener("touchmove",c,!1),_.addEventListener("touchcancel",h,!1),_.addEventListener("click",d,!1),_.addEventListener("dblclick",m,!1),_.addEventListener("contextmenu",v,!1)}},{"../util/dom":209,"./handler/box_zoom":189,"./handler/dblclick_zoom":190,"./handler/drag_pan":191,"./handler/drag_rotate":192,"./handler/keyboard":193,"./handler/scroll_zoom":194,"./handler/touch_zoom_rotate":195,"@mapbox/point-geometry":2}],181:[function(t,e,r){"use strict";var i=t("../util/util"),n=t("../style-spec/util/interpolate"),o=t("../util/browser"),a=t("../geo/lng_lat"),s=t("../geo/lng_lat_bounds"),l=t("@mapbox/point-geometry"),u=t("../util/evented"),c=function(t){function e(e,r){t.call(this),this.moving=!1,this.transform=e,this._bearingSnap=r.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,r){return t=l.convert(t).mult(-1),this.panTo(this.transform.center,i.extend({offset:t},e),r)},e.prototype.panTo=function(t,e,r){return this.easeTo(i.extend({center:t},e),r)},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,r){return this.easeTo(i.extend({zoom:t},e),r)},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,r){return this.easeTo(i.extend({bearing:t},e),r)},e.prototype.resetNorth=function(t,e){return this.rotateTo(0,i.extend({duration:1e3},t),e),this},e.prototype.snapToNorth=function(t,e){return Math.abs(this.getBearing())<this._bearingSnap?this.resetNorth(t,e):this},e.prototype.getPitch=function(){return this.transform.pitch},e.prototype.setPitch=function(t,e){return this.jumpTo({pitch:t},e),this},e.prototype.fitBounds=function(t,e,r){if(e=i.extend({padding:{top:0,bottom:0,right:0,left:0},offset:[0,0],maxZoom:this.transform.maxZoom},e),"number"==typeof e.padding){var n=e.padding;e.padding={top:n,bottom:n,right:n,left:n}}if(!i.deepEqual(Object.keys(e.padding).sort(function(t,e){return t<e?-1:t>e?1:0}),["bottom","left","right","top"]))return i.warnOnce("options.padding must be a positive number, or an Object with keys 'bottom', 'left', 'right', 'top'"),this;t=s.convert(t);var o=[e.padding.left-e.padding.right,e.padding.top-e.padding.bottom],a=Math.min(e.padding.right,e.padding.left),u=Math.min(e.padding.top,e.padding.bottom);e.offset=[e.offset[0]+o[0],e.offset[1]+o[1]];var c=l.convert(e.offset),p=this.transform,h=p.project(t.getNorthWest()),f=p.project(t.getSouthEast()),d=f.sub(h),m=(p.width-2*a-2*Math.abs(c.x))/d.x,v=(p.height-2*u-2*Math.abs(c.y))/d.y;return v<0||m<0?(i.warnOnce("Map cannot fit within canvas with the given bounds, padding, and/or offset."),this):(e.center=p.unproject(h.add(f).div(2)),e.zoom=Math.min(p.scaleZoom(p.scale*Math.min(m,v)),e.maxZoom),e.bearing=0,e.linear?this.easeTo(e,r):this.flyTo(e,r))},e.prototype.jumpTo=function(t,e){this.stop();var r=this.transform,i=!1,n=!1,o=!1;return"zoom"in t&&r.zoom!==+t.zoom&&(i=!0,r.zoom=+t.zoom),void 0!==t.center&&(r.center=a.convert(t.center)),"bearing"in t&&r.bearing!==+t.bearing&&(n=!0,r.bearing=+t.bearing),"pitch"in t&&r.pitch!==+t.pitch&&(o=!0,r.pitch=+t.pitch),this.fire("movestart",e).fire("move",e),i&&this.fire("zoomstart",e).fire("zoom",e).fire("zoomend",e),n&&this.fire("rotate",e),o&&this.fire("pitchstart",e).fire("pitch",e).fire("pitchend",e),this.fire("moveend",e)},e.prototype.easeTo=function(t,e){var r=this;this.stop(),t=i.extend({offset:[0,0],duration:500,easing:i.ease},t),!1===t.animate&&(t.duration=0),t.smoothEasing&&0!==t.duration&&(t.easing=this._smoothOutEasing(t.duration));var o=this.transform,s=this.getZoom(),u=this.getBearing(),c=this.getPitch(),p="zoom"in t?+t.zoom:s,h="bearing"in t?this._normalizeBearing(t.bearing,u):u,f="pitch"in t?+t.pitch:c,d=o.centerPoint.add(l.convert(t.offset)),m=o.pointLocation(d),v=a.convert(t.center||m);this._normalizeCenter(v);var y,g,_=o.project(m),x=o.project(v).sub(_),b=o.zoomScale(p-s);return t.around&&(y=a.convert(t.around),g=o.locationPoint(y)),this.zooming=p!==s,this.rotating=u!==h,this.pitching=f!==c,this._prepareEase(e,t.noMoveStart),clearTimeout(this._onEaseEnd),this._ease(function(t){if(this.zooming&&(o.zoom=n(s,p,t)),this.rotating&&(o.bearing=n(u,h,t)),this.pitching&&(o.pitch=n(c,f,t)),y)o.setLocationAtPoint(y,g);else{var r=o.zoomScale(o.zoom-s),i=p>s?Math.min(2,b):Math.max(.5,b),a=Math.pow(i,1-t),l=o.unproject(_.add(x.mult(t*a)).mult(r));o.setLocationAtPoint(o.renderWorldCopies?l.wrap():l,d)}this._fireMoveEvents(e)},function(){t.delayEndEvents?r._onEaseEnd=setTimeout(function(){return r._easeToEnd(e)},t.delayEndEvents):r._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,r=this.pitching;this.moving=!1,this.zooming=!1,this.rotating=!1,this.pitching=!1,e&&this.fire("zoomend",t),r&&this.fire("pitchend",t),this.fire("moveend",t)},e.prototype.flyTo=function(t,e){function r(t){var e=(A*A-z*z+(t?-1:1)*M*M*C*C)/(2*(t?A:z)*M*C);return Math.log(Math.sqrt(e*e+1)-e)}function o(t){return(Math.exp(t)-Math.exp(-t))/2}function s(t){return(Math.exp(t)+Math.exp(-t))/2}function u(t){return o(t)/s(t)}var c=this;this.stop(),t=i.extend({offset:[0,0],speed:1.2,curve:1.42,easing:i.ease},t);var p=this.transform,h=this.getZoom(),f=this.getBearing(),d=this.getPitch(),m="zoom"in t?i.clamp(+t.zoom,p.minZoom,p.maxZoom):h,v="bearing"in t?this._normalizeBearing(t.bearing,f):f,y="pitch"in t?+t.pitch:d,g=p.zoomScale(m-h),_=p.centerPoint.add(l.convert(t.offset)),x=p.pointLocation(_),b=a.convert(t.center||x);this._normalizeCenter(b);var w=p.project(x),T=p.project(b).sub(w),S=t.curve,z=Math.max(p.width,p.height),A=z/g,C=T.mag();if("minZoom"in t){var E=i.clamp(Math.min(t.minZoom,h,m),p.minZoom,p.maxZoom),k=z/p.zoomScale(E-h);S=Math.sqrt(k/C*2)}var M=S*S,L=r(0),I=function(t){return s(L)/s(L+S*t)},P=function(t){return z*((s(L)*u(L+S*t)-o(L))/M)/C},R=(r(1)-L)/S;if(Math.abs(C)<1e-6||isNaN(R)){if(Math.abs(z-A)<1e-6)return this.easeTo(t,e);var D=A<z?-1:1;R=Math.abs(Math.log(A/z))/S,P=function(){return 0},I=function(t){return Math.exp(D*S*t)}}if("duration"in t)t.duration=+t.duration;else{var O="screenSpeed"in t?+t.screenSpeed/S:+t.speed;t.duration=1e3*R/O}return this.zooming=!0,this.rotating=f!==v,this.pitching=y!==d,this._prepareEase(e,!1),this._ease(function(t){var r=t*R,i=1/I(r);p.zoom=h+p.scaleZoom(i),this.rotating&&(p.bearing=n(f,v,t)),this.pitching&&(p.pitch=n(d,y,t));var o=p.unproject(w.add(T.mult(P(r))).mult(i));p.setLocationAtPoint(p.renderWorldCopies?o.wrap():o,_),this._fireMoveEvents(e)},function(){return c._easeToEnd(e)},t),this},e.prototype.isEasing=function(){return!!this._abortFn},e.prototype.isMoving=function(){return this.moving},e.prototype.stop=function(){return this._abortFn&&(this._abortFn(),this._finishEase()),this},e.prototype._ease=function(t,e,r){this._finishFn=e,this._abortFn=o.timed(function(e){t.call(this,r.easing(e)),1===e&&this._finishEase()},!1===r.animate?0:r.duration,this)},e.prototype._finishEase=function(){delete this._abortFn;var t=this._finishFn;delete this._finishFn,t.call(this)},e.prototype._normalizeBearing=function(t,e){t=i.wrap(t,-180,180);var r=Math.abs(t-e);return Math.abs(t-360-e)<r&&(t-=360),Math.abs(t+360-e)<r&&(t+=360),t},e.prototype._normalizeCenter=function(t){var e=this.transform;if(e.renderWorldCopies&&!e.lngRange){var r=t.lng-e.center.lng;t.lng+=r>180?-360:r<-180?360:0}},e.prototype._smoothOutEasing=function(t){var e=i.ease;if(this._prevEase){var r=this._prevEase,n=(Date.now()-r.start)/r.duration,o=r.easing(n+.01)-r.easing(n),a=.27/Math.sqrt(o*o+1e-4)*.01,s=Math.sqrt(.0729-a*a);e=i.bezier(a,s,.25,1)}return this._prevEase={start:(new Date).getTime(),duration:t,easing:e},e},e}(u);e.exports=c},{"../geo/lng_lat":58,"../geo/lng_lat_bounds":59,"../style-spec/util/interpolate":127,"../util/browser":202,"../util/evented":210,"../util/util":223,"@mapbox/point-geometry":2}],182:[function(t,e,r){"use strict";var i=t("../../util/dom"),n=t("../../util/util"),o=t("../../util/config"),a=function(t){this.options=t,n.bindAll(["_updateEditLink","_updateData","_updateCompact"],this)};a.prototype.getDefaultPosition=function(){return"bottom-right"},a.prototype.onAdd=function(t){var e=this.options&&this.options.compact;return this._map=t,this._container=i.create("div","mapboxgl-ctrl mapboxgl-ctrl-attrib"),e&&this._container.classList.add("mapboxgl-compact"),this._updateAttributions(),this._updateEditLink(),this._map.on("sourcedata",this._updateData),this._map.on("moveend",this._updateEditLink),void 0===e&&(this._map.on("resize",this._updateCompact),this._updateCompact()),this._container},a.prototype.onRemove=function(){i.remove(this._container),this._map.off("sourcedata",this._updateData),this._map.off("moveend",this._updateEditLink),this._map.off("resize",this._updateCompact),this._map=void 0},a.prototype._updateEditLink=function(){var t=this._editLink;t||(t=this._editLink=this._container.querySelector(".mapbox-improve-map"));var e=[{key:"owner",value:this.styleOwner},{key:"id",value:this.styleId},{key:"access_token",value:o.ACCESS_TOKEN}];if(t){var r=e.reduce(function(t,r,i){return r.value&&(t+=r.key+"="+r.value+(i<e.length-1?"&":"")),t},"?");t.href="https://www.mapbox.com/feedback/"+r+(this._map._hash?this._map._hash.getHashString(!0):"")}},a.prototype._updateData=function(t){t&&"metadata"===t.sourceDataType&&(this._updateAttributions(),this._updateEditLink())},a.prototype._updateAttributions=function(){if(this._map.style){var t=[];if(this._map.style.stylesheet){var e=this._map.style.stylesheet;this.styleOwner=e.owner,this.styleId=e.id}var r=this._map.style.sourceCaches;for(var i in r){var n=r[i].getSource();n.attribution&&t.indexOf(n.attribution)<0&&t.push(n.attribution)}t.sort(function(t,e){return t.length-e.length}),t=t.filter(function(e,r){for(var i=r+1;i<t.length;i++)if(t[i].indexOf(e)>=0)return!1;return!0}),this._container.innerHTML=t.join(" | "),this._editLink=null}},a.prototype._updateCompact=function(){this._map.getCanvasContainer().offsetWidth<=640?this._container.classList.add("mapboxgl-compact"):this._container.classList.remove("mapboxgl-compact")},e.exports=a},{"../../util/config":206,"../../util/dom":209,"../../util/util":223}],183:[function(t,e,r){"use strict";var i=t("../../util/dom"),n=t("../../util/util"),o=t("../../util/window"),a=function(){this._fullscreen=!1,n.bindAll(["_onClickFullscreen","_changeIcon"],this),"onfullscreenchange"in o.document?this._fullscreenchange="fullscreenchange":"onmozfullscreenchange"in o.document?this._fullscreenchange="mozfullscreenchange":"onwebkitfullscreenchange"in o.document?this._fullscreenchange="webkitfullscreenchange":"onmsfullscreenchange"in o.document&&(this._fullscreenchange="MSFullscreenChange"),this._className="mapboxgl-ctrl"};a.prototype.onAdd=function(t){return this._map=t,this._mapContainer=this._map.getContainer(),this._container=i.create("div",this._className+" mapboxgl-ctrl-group"),this._checkFullscreenSupport()?this._setupUI():(this._container.style.display="none",n.warnOnce("This device does not support fullscreen mode.")),this._container},a.prototype.onRemove=function(){i.remove(this._container),this._map=null,o.document.removeEventListener(this._fullscreenchange,this._changeIcon)},a.prototype._checkFullscreenSupport=function(){return!!(o.document.fullscreenEnabled||o.document.mozFullScreenEnabled||o.document.msFullscreenEnabled||o.document.webkitFullscreenEnabled)},a.prototype._setupUI=function(){var t=this._fullscreenButton=i.create("button",this._className+"-icon "+this._className+"-fullscreen",this._container);t.setAttribute("aria-label","Toggle fullscreen"),t.type="button",this._fullscreenButton.addEventListener("click",this._onClickFullscreen),o.document.addEventListener(this._fullscreenchange,this._changeIcon)},a.prototype._isFullscreen=function(){return this._fullscreen},a.prototype._changeIcon=function(){(o.document.fullscreenElement||o.document.mozFullScreenElement||o.document.webkitFullscreenElement||o.document.msFullscreenElement)===this._mapContainer!==this._fullscreen&&(this._fullscreen=!this._fullscreen,this._fullscreenButton.classList.toggle(this._className+"-shrink"),this._fullscreenButton.classList.toggle(this._className+"-fullscreen"))},a.prototype._onClickFullscreen=function(){this._isFullscreen()?o.document.exitFullscreen?o.document.exitFullscreen():o.document.mozCancelFullScreen?o.document.mozCancelFullScreen():o.document.msExitFullscreen?o.document.msExitFullscreen():o.document.webkitCancelFullScreen&&o.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()},e.exports=a},{"../../util/dom":209,"../../util/util":223,"../../util/window":204}],184:[function(t,e,r){"use strict";function i(t){void 0!==n?t(n):void 0!==s.navigator.permissions?s.navigator.permissions.query({name:"geolocation"}).then(function(e){n="denied"!==e.state,t(n)}):(n=!!s.navigator.geolocation,t(n))}var n,o=t("../../util/evented"),a=t("../../util/dom"),s=t("../../util/window"),l=t("../../util/util"),u=t("../../geo/lng_lat"),c=t("../marker"),p={positionOptions:{enableHighAccuracy:!1,timeout:6e3},fitBoundsOptions:{maxZoom:15},trackUserLocation:!1,showUserLocation:!0},h=function(t){function e(e){t.call(this),this.options=l.extend({},p,e),l.bindAll(["_onSuccess","_onError","_finish","_setupUI","_updateCamera","_updateMarker","_onClickGeolocate"],this)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.onAdd=function(t){return this._map=t,this._container=a.create("div","mapboxgl-ctrl mapboxgl-ctrl-group"),i(this._setupUI),this._container},e.prototype.onRemove=function(){void 0!==this._geolocationWatchID&&(s.navigator.geolocation.clearWatch(this._geolocationWatchID),this._geolocationWatchID=void 0),this.options.showUserLocation&&this._userLocationDotMarker.remove(),a.remove(this._container),this._map=void 0},e.prototype._onSuccess=function(t){if(this.options.trackUserLocation)switch(this._lastKnownPosition=t,this._watchState){case"WAITING_ACTIVE":case"ACTIVE_LOCK":case"ACTIVE_ERROR":this._watchState="ACTIVE_LOCK",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active-error"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-active");break;case"BACKGROUND":case"BACKGROUND_ERROR":this._watchState="BACKGROUND",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-background-error"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-background")}this.options.showUserLocation&&"OFF"!==this._watchState&&this._updateMarker(t),this.options.trackUserLocation&&"ACTIVE_LOCK"!==this._watchState||this._updateCamera(t),this.options.showUserLocation&&this._dotElement.classList.remove("mapboxgl-user-location-dot-stale"),this.fire("geolocate",t),this._finish()},e.prototype._updateCamera=function(t){var e=new u(t.coords.longitude,t.coords.latitude),r=t.coords.accuracy;this._map.fitBounds(e.toBounds(r),this.options.fitBoundsOptions,{geolocateSource:!0})},e.prototype._updateMarker=function(t){t?this._userLocationDotMarker.setLngLat([t.coords.longitude,t.coords.latitude]).addTo(this._map):this._userLocationDotMarker.remove()},e.prototype._onError=function(t){if(this.options.trackUserLocation)if(1===t.code)this._watchState="OFF",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active-error"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-background"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-background-error"),void 0!==this._geolocationWatchID&&this._clearWatch();else switch(this._watchState){case"WAITING_ACTIVE":this._watchState="ACTIVE_ERROR",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-active-error");break;case"ACTIVE_LOCK":this._watchState="ACTIVE_ERROR",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-active-error"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-waiting");break;case"BACKGROUND":this._watchState="BACKGROUND_ERROR",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-background"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-background-error"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-waiting")}"OFF"!==this._watchState&&this.options.showUserLocation&&this._dotElement.classList.add("mapboxgl-user-location-dot-stale"),this.fire("error",t),this._finish()},e.prototype._finish=function(){this._timeoutId&&clearTimeout(this._timeoutId),this._timeoutId=void 0},e.prototype._setupUI=function(t){var e=this;!1!==t&&(this._container.addEventListener("contextmenu",function(t){return t.preventDefault()}),this._geolocateButton=a.create("button","mapboxgl-ctrl-icon mapboxgl-ctrl-geolocate",this._container),this._geolocateButton.type="button",this._geolocateButton.setAttribute("aria-label","Geolocate"),this.options.trackUserLocation&&(this._geolocateButton.setAttribute("aria-pressed","false"),this._watchState="OFF"),this.options.showUserLocation&&(this._dotElement=a.create("div","mapboxgl-user-location-dot"),this._userLocationDotMarker=new c(this._dotElement),this.options.trackUserLocation&&(this._watchState="OFF")),this._geolocateButton.addEventListener("click",this._onClickGeolocate.bind(this)),this.options.trackUserLocation&&this._map.on("movestart",function(t){t.geolocateSource||"ACTIVE_LOCK"!==e._watchState||(e._watchState="BACKGROUND",e._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-background"),e._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active"),e.fire("trackuserlocationend"))}))},e.prototype._onClickGeolocate=function(){if(this.options.trackUserLocation){switch(this._watchState){case"OFF":this._watchState="WAITING_ACTIVE",this.fire("trackuserlocationstart");break;case"WAITING_ACTIVE":case"ACTIVE_LOCK":case"ACTIVE_ERROR":case"BACKGROUND_ERROR":this._watchState="OFF",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active-error"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-background"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-background-error"),this.fire("trackuserlocationend");break;case"BACKGROUND":this._watchState="ACTIVE_LOCK",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-background"),this._lastKnownPosition&&this._updateCamera(this._lastKnownPosition),this.fire("trackuserlocationstart")}switch(this._watchState){case"WAITING_ACTIVE":this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-active");break;case"ACTIVE_LOCK":this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-active");break;case"ACTIVE_ERROR":this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-active-error");break;case"BACKGROUND":this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-background");break;case"BACKGROUND_ERROR":this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-background-error")}"OFF"===this._watchState&&void 0!==this._geolocationWatchID?this._clearWatch():void 0===this._geolocationWatchID&&(this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.setAttribute("aria-pressed","true"),this._geolocationWatchID=s.navigator.geolocation.watchPosition(this._onSuccess,this._onError,this.options.positionOptions))}else s.navigator.geolocation.getCurrentPosition(this._onSuccess,this._onError,this.options.positionOptions),this._timeoutId=setTimeout(this._finish,1e4)},e.prototype._clearWatch=function(){s.navigator.geolocation.clearWatch(this._geolocationWatchID),this._geolocationWatchID=void 0,this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.setAttribute("aria-pressed","false"),this.options.showUserLocation&&this._updateMarker(null)},e}(o);e.exports=h},{"../../geo/lng_lat":58,"../../util/dom":209,"../../util/evented":210,"../../util/util":223,"../../util/window":204,"../marker":198}],185:[function(t,e,r){"use strict";var i=t("../../util/dom"),n=t("../../util/util"),o=function(){n.bindAll(["_updateLogo"],this)};o.prototype.onAdd=function(t){this._map=t,this._container=i.create("div","mapboxgl-ctrl");var e=i.create("a","mapboxgl-ctrl-logo");return e.target="_blank",e.href="https://www.mapbox.com/",e.setAttribute("aria-label","Mapbox logo"),this._container.appendChild(e),this._container.style.display="none",this._map.on("sourcedata",this._updateLogo),this._updateLogo(),this._container},o.prototype.onRemove=function(){i.remove(this._container),this._map.off("sourcedata",this._updateLogo)},o.prototype.getDefaultPosition=function(){return"bottom-left"},o.prototype._updateLogo=function(t){t&&"metadata"!==t.sourceDataType||(this._container.style.display=this._logoRequired()?"block":"none")},o.prototype._logoRequired=function(){if(this._map.style){var t=this._map.style.sourceCaches;for(var e in t)if(t[e].getSource().mapbox_logo)return!0;return!1}},e.exports=o},{"../../util/dom":209,"../../util/util":223}],186:[function(t,e,r){"use strict";var i=t("../../util/dom"),n=t("../../util/util"),o=t("../handler/drag_rotate"),a=function(){var t=this;n.bindAll(["_rotateCompassArrow"],this),this._container=i.create("div","mapboxgl-ctrl mapboxgl-ctrl-group"),this._container.addEventListener("contextmenu",function(t){return t.preventDefault()}),this._zoomInButton=this._createButton("mapboxgl-ctrl-icon mapboxgl-ctrl-zoom-in","Zoom In",function(){return t._map.zoomIn()}),this._zoomOutButton=this._createButton("mapboxgl-ctrl-icon mapboxgl-ctrl-zoom-out","Zoom Out",function(){return t._map.zoomOut()}),this._compass=this._createButton("mapboxgl-ctrl-icon mapboxgl-ctrl-compass","Reset North",function(){return t._map.resetNorth()}),this._compassArrow=i.create("span","mapboxgl-ctrl-compass-arrow",this._compass)};a.prototype._rotateCompassArrow=function(){var t="rotate("+this._map.transform.angle*(180/Math.PI)+"deg)";this._compassArrow.style.transform=t},a.prototype.onAdd=function(t){return this._map=t,this._map.on("rotate",this._rotateCompassArrow),this._rotateCompassArrow(),this._handler=new o(t,{button:"left",element:this._compass,pitchWithRotate:!1}),this._handler.enable(),this._container},a.prototype.onRemove=function(){i.remove(this._container),this._map.off("rotate",this._rotateCompassArrow),delete this._map,this._handler.disable(),delete this._handler},a.prototype._createButton=function(t,e,r){var n=i.create("button",t,this._container);return n.type="button",n.setAttribute("aria-label",e),n.addEventListener("click",r),n},e.exports=a},{"../../util/dom":209,"../../util/util":223,"../handler/drag_rotate":192}],187:[function(t,e,r){"use strict";function i(t,e,r){var i=r&&r.maxWidth||100,a=t._container.clientHeight/2,s=o(t.unproject([0,a]),t.unproject([i,a]));if(r&&"imperial"===r.unit){var l=3.2808*s;l>5280?n(e,i,l/5280,"mi"):n(e,i,l,"ft")}else if(r&&"nautical"===r.unit){var u=s/1852;n(e,i,u,"nm")}else n(e,i,s,"m")}function n(t,e,r,i){var n=a(r),o=n/r;"m"===i&&n>=1e3&&(n/=1e3,i="km"),t.style.width=e*o+"px",t.innerHTML=n+i}function o(t,e){var r=Math.PI/180,i=t.lat*r,n=e.lat*r,o=Math.sin(i)*Math.sin(n)+Math.cos(i)*Math.cos(n)*Math.cos((e.lng-t.lng)*r);return 6371e3*Math.acos(Math.min(o,1))}function a(t){var e=Math.pow(10,(""+Math.floor(t)).length-1),r=t/e;return r=r>=10?10:r>=5?5:r>=3?3:r>=2?2:1,e*r}var s=t("../../util/dom"),l=t("../../util/util"),u=function(t){this.options=t,l.bindAll(["_onMove"],this)};u.prototype.getDefaultPosition=function(){return"bottom-left"},u.prototype._onMove=function(){i(this._map,this._container,this.options)},u.prototype.onAdd=function(t){return this._map=t,this._container=s.create("div","mapboxgl-ctrl mapboxgl-ctrl-scale",t.getContainer()),this._map.on("move",this._onMove),this._onMove(),this._container},u.prototype.onRemove=function(){s.remove(this._container),this._map.off("move",this._onMove),this._map=void 0},e.exports=u},{"../../util/dom":209,"../../util/util":223}],188:[function(t,e,r){"use strict"},{}],189:[function(t,e,r){"use strict";var i=t("../../util/dom"),n=t("../../geo/lng_lat_bounds"),o=t("../../util/util"),a=t("../../util/window"),s=function(t){this._map=t,this._el=t.getCanvasContainer(),this._container=t.getContainer(),o.bindAll(["_onMouseDown","_onMouseMove","_onMouseUp","_onKeyDown"],this)};s.prototype.isEnabled=function(){return!!this._enabled},s.prototype.isActive=function(){return!!this._active},s.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)},s.prototype.disable=function(){this.isEnabled()&&(this._el.removeEventListener("mousedown",this._onMouseDown),this._enabled=!1)},s.prototype._onMouseDown=function(t){t.shiftKey&&0===t.button&&(a.document.addEventListener("mousemove",this._onMouseMove,!1),a.document.addEventListener("keydown",this._onKeyDown,!1),a.document.addEventListener("mouseup",this._onMouseUp,!1),i.disableDrag(),this._startPos=i.mousePos(this._el,t),this._active=!0)},s.prototype._onMouseMove=function(t){var e=this._startPos,r=i.mousePos(this._el,t);this._box||(this._box=i.create("div","mapboxgl-boxzoom",this._container),this._container.classList.add("mapboxgl-crosshair"),this._fireEvent("boxzoomstart",t));var n=Math.min(e.x,r.x),o=Math.max(e.x,r.x),a=Math.min(e.y,r.y),s=Math.max(e.y,r.y);i.setTransform(this._box,"translate("+n+"px,"+a+"px)"),this._box.style.width=o-n+"px",this._box.style.height=s-a+"px"},s.prototype._onMouseUp=function(t){if(0===t.button){var e=this._startPos,r=i.mousePos(this._el,t),o=(new n).extend(this._map.unproject(e)).extend(this._map.unproject(r));this._finish(),e.x===r.x&&e.y===r.y?this._fireEvent("boxzoomcancel",t):this._map.fitBounds(o,{linear:!0}).fire("boxzoomend",{originalEvent:t,boxZoomBounds:o})}},s.prototype._onKeyDown=function(t){27===t.keyCode&&(this._finish(),this._fireEvent("boxzoomcancel",t))},s.prototype._finish=function(){this._active=!1,a.document.removeEventListener("mousemove",this._onMouseMove,!1),a.document.removeEventListener("keydown",this._onKeyDown,!1),a.document.removeEventListener("mouseup",this._onMouseUp,!1),this._container.classList.remove("mapboxgl-crosshair"),this._box&&(i.remove(this._box),this._box=null),i.enableDrag()},s.prototype._fireEvent=function(t,e){return this._map.fire(t,{originalEvent:e})},e.exports=s},{"../../geo/lng_lat_bounds":59,"../../util/dom":209,"../../util/util":223,"../../util/window":204}],190:[function(t,e,r){"use strict";var i=t("../../util/util"),n=function(t){this._map=t,i.bindAll(["_onDblClick"],this)};n.prototype.isEnabled=function(){return!!this._enabled},n.prototype.enable=function(){this.isEnabled()||(this._map.on("dblclick",this._onDblClick),this._enabled=!0)},n.prototype.disable=function(){this.isEnabled()&&(this._map.off("dblclick",this._onDblClick),this._enabled=!1)},n.prototype._onDblClick=function(t){this._map.zoomTo(this._map.getZoom()+(t.originalEvent.shiftKey?-1:1),{around:t.lngLat},t)},e.exports=n},{"../../util/util":223}],191:[function(t,e,r){"use strict";var i=t("../../util/dom"),n=t("../../util/util"),o=t("../../util/window"),a=n.bezier(0,0,.3,1),s=function(t){this._map=t,this._el=t.getCanvasContainer(),n.bindAll(["_onDown","_onMove","_onUp","_onTouchEnd","_onMouseUp"],this)};s.prototype.isEnabled=function(){return!!this._enabled},s.prototype.isActive=function(){return!!this._active},s.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)},s.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)},s.prototype._onDown=function(t){this._ignoreEvent(t)||this.isActive()||(t.touches?(o.document.addEventListener("touchmove",this._onMove),o.document.addEventListener("touchend",this._onTouchEnd)):(o.document.addEventListener("mousemove",this._onMove),o.document.addEventListener("mouseup",this._onMouseUp)),o.addEventListener("blur",this._onMouseUp),this._active=!1,this._startPos=this._pos=i.mousePos(this._el,t),this._inertia=[[Date.now(),this._pos]])},s.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=i.mousePos(this._el,t),r=this._map;r.stop(),this._drainInertiaBuffer(),this._inertia.push([Date.now(),e]),r.transform.setLocationAtPoint(r.transform.pointLocation(this._pos),e),this._fireEvent("drag",t),this._fireEvent("move",t),this._pos=e,t.preventDefault()}},s.prototype._onUp=function(t){var e=this;if(this.isActive()){this._active=!1,this._fireEvent("dragend",t),this._drainInertiaBuffer();var r=function(){e._map.moving=!1,e._fireEvent("moveend",t)},i=this._inertia;if(i.length<2)return void r();var n=i[i.length-1],o=i[0],s=n[1].sub(o[1]),l=(n[0]-o[0])/1e3;if(0===l||n[1].equals(o[1]))return void r();var u=s.mult(.3/l),c=u.mag();c>1400&&(c=1400,u._unit()._mult(c));var p=c/750,h=u.mult(-p/2);this._map.panBy(h,{duration:1e3*p,easing:a,noMoveStart:!0},{originalEvent:t})}},s.prototype._onMouseUp=function(t){this._ignoreEvent(t)||(this._onUp(t),o.document.removeEventListener("mousemove",this._onMove),o.document.removeEventListener("mouseup",this._onMouseUp),o.removeEventListener("blur",this._onMouseUp))},s.prototype._onTouchEnd=function(t){this._ignoreEvent(t)||(this._onUp(t),o.document.removeEventListener("touchmove",this._onMove),o.document.removeEventListener("touchend",this._onTouchEnd))},s.prototype._fireEvent=function(t,e){return this._map.fire(t,{originalEvent:e})},s.prototype._ignoreEvent=function(t){var e=this._map;return!(!e.boxZoom||!e.boxZoom.isActive())||!(!e.dragRotate||!e.dragRotate.isActive())||(t.touches?t.touches.length>1:!!t.ctrlKey||"mousemove"!==t.type&&t.button&&0!==t.button)},s.prototype._drainInertiaBuffer=function(){for(var t=this._inertia,e=Date.now();t.length>0&&e-t[0][0]>160;)t.shift()},e.exports=s},{"../../util/dom":209,"../../util/util":223,"../../util/window":204}],192:[function(t,e,r){"use strict";var i=t("../../util/dom"),n=t("../../util/util"),o=t("../../util/window"),a=n.bezier(0,0,.25,1),s=function(t,e){this._map=t,this._el=e.element||t.getCanvasContainer(),this._button=e.button||"right",this._bearingSnap=e.bearingSnap||0,this._pitchWithRotate=!1!==e.pitchWithRotate,n.bindAll(["_onDown","_onMove","_onUp"],this)};s.prototype.isEnabled=function(){return!!this._enabled},s.prototype.isActive=function(){return!!this._active},s.prototype.enable=function(){this.isEnabled()||(this._el.addEventListener("mousedown",this._onDown),this._enabled=!0)},s.prototype.disable=function(){this.isEnabled()&&(this._el.removeEventListener("mousedown",this._onDown),this._enabled=!1)},s.prototype._onDown=function(t){if(!(this._map.boxZoom&&this._map.boxZoom.isActive()||this._map.dragPan&&this._map.dragPan.isActive()||this.isActive())){if("right"===this._button){var e=t.ctrlKey?0:2,r=t.button;if(void 0!==o.InstallTrigger&&2===t.button&&t.ctrlKey&&o.navigator.platform.toUpperCase().indexOf("MAC")>=0&&(r=0),r!==e)return}else if(t.ctrlKey||0!==t.button)return;i.disableDrag(),o.document.addEventListener("mousemove",this._onMove,{capture:!0}),o.document.addEventListener("mouseup",this._onUp),o.addEventListener("blur",this._onUp),this._active=!1,this._inertia=[[Date.now(),this._map.getBearing()]],this._startPos=this._pos=i.mousePos(this._el,t),this._center=this._map.transform.centerPoint,t.preventDefault()}},s.prototype._onMove=function(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 r=this._pos,n=i.mousePos(this._el,t),o=.8*(r.x-n.x),a=-.5*(r.y-n.y),s=e.getBearing()-o,l=e.getPitch()-a,u=this._inertia,c=u[u.length-1];this._drainInertiaBuffer(),u.push([Date.now(),e._normalizeBearing(s,c[1])]),e.transform.bearing=s,this._pitchWithRotate&&(this._fireEvent("pitch",t),e.transform.pitch=l),this._fireEvent("rotate",t),this._fireEvent("move",t),this._pos=n},s.prototype._onUp=function(t){var e=this;if(o.document.removeEventListener("mousemove",this._onMove,{capture:!0}),o.document.removeEventListener("mouseup",this._onUp),o.removeEventListener("blur",this._onUp),i.enableDrag(),this.isActive()){this._active=!1,this._fireEvent("rotateend",t),this._drainInertiaBuffer();var r=this._map,n=r.getBearing(),s=this._inertia,l=function(){Math.abs(n)<e._bearingSnap?r.resetNorth({noMoveStart:!0},{originalEvent:t}):(e._map.moving=!1,e._fireEvent("moveend",t)),e._pitchWithRotate&&e._fireEvent("pitchend",t)};if(s.length<2)return void l();var u=s[0],c=s[s.length-1],p=s[s.length-2],h=r._normalizeBearing(n,p[1]),f=c[1]-u[1],d=f<0?-1:1,m=(c[0]-u[0])/1e3;if(0===f||0===m)return void l();var v=Math.abs(f*(.25/m));v>180&&(v=180);var y=v/180;h+=d*v*(y/2),Math.abs(r._normalizeBearing(h,0))<this._bearingSnap&&(h=r._normalizeBearing(0,h)),r.rotateTo(h,{duration:1e3*y,easing:a,noMoveStart:!0},{originalEvent:t})}},s.prototype._fireEvent=function(t,e){return this._map.fire(t,{originalEvent:e})},s.prototype._drainInertiaBuffer=function(){for(var t=this._inertia,e=Date.now();t.length>0&&e-t[0][0]>160;)t.shift()},e.exports=s},{"../../util/dom":209,"../../util/util":223,"../../util/window":204}],193:[function(t,e,r){"use strict";function i(t){return t*(2-t)}var n=t("../../util/util"),o=function(t){this._map=t,this._el=t.getCanvasContainer(),n.bindAll(["_onKeyDown"],this)};o.prototype.isEnabled=function(){return!!this._enabled},o.prototype.enable=function(){this.isEnabled()||(this._el.addEventListener("keydown",this._onKeyDown,!1),this._enabled=!0)},o.prototype.disable=function(){this.isEnabled()&&(this._el.removeEventListener("keydown",this._onKeyDown),this._enabled=!1)},o.prototype._onKeyDown=function(t){if(!(t.altKey||t.ctrlKey||t.metaKey)){var e=0,r=0,n=0,o=0,a=0;switch(t.keyCode){case 61:case 107:case 171:case 187:e=1;break;case 189:case 109:case 173:e=-1;break;case 37:t.shiftKey?r=-1:(t.preventDefault(),o=-1);break;case 39:t.shiftKey?r=1:(t.preventDefault(),o=1);break;case 38:t.shiftKey?n=1:(t.preventDefault(),a=-1);break;case 40:t.shiftKey?n=-1:(a=1,t.preventDefault());break;default:return}var s=this._map,l=s.getZoom(),u={duration:300,delayEndEvents:500,easing:i,zoom:e?Math.round(l)+e*(t.shiftKey?2:1):l,bearing:s.getBearing()+15*r,pitch:s.getPitch()+10*n,offset:[100*-o,100*-a],center:s.getCenter()};s.easeTo(u,{originalEvent:t})}},e.exports=o},{"../../util/util":223}],194:[function(t,e,r){"use strict";var i=t("../../util/dom"),n=t("../../util/util"),o=t("../../util/browser"),a=t("../../util/window"),s=a.navigator.userAgent.toLowerCase(),l=-1!==s.indexOf("firefox"),u=-1!==s.indexOf("safari")&&-1===s.indexOf("chrom"),c=function(t){this._map=t,this._el=t.getCanvasContainer(),n.bindAll(["_onWheel","_onTimeout"],this)};c.prototype.isEnabled=function(){return!!this._enabled},c.prototype.enable=function(t){this.isEnabled()||(this._el.addEventListener("wheel",this._onWheel,!1),this._el.addEventListener("mousewheel",this._onWheel,!1),this._enabled=!0,this._aroundCenter=t&&"center"===t.around)},c.prototype.disable=function(){this.isEnabled()&&(this._el.removeEventListener("wheel",this._onWheel),this._el.removeEventListener("mousewheel",this._onWheel),this._enabled=!1)},c.prototype._onWheel=function(t){var e=0;"wheel"===t.type?(e=t.deltaY,l&&t.deltaMode===a.WheelEvent.DOM_DELTA_PIXEL&&(e/=o.devicePixelRatio),t.deltaMode===a.WheelEvent.DOM_DELTA_LINE&&(e*=40)):"mousewheel"===t.type&&(e=-t.wheelDeltaY,u&&(e/=3));var r=o.now(),n=r-(this._time||0);this._pos=i.mousePos(this._el,t),this._time=r,0!==e&&e%4.000244140625==0?this._type="wheel":0!==e&&Math.abs(e)<4?this._type="trackpad":n>400?(this._type=null,this._lastValue=e,this._timeout=setTimeout(this._onTimeout,40)):this._type||(this._type=Math.abs(n*e)<200?"trackpad":"wheel",this._timeout&&(clearTimeout(this._timeout),this._timeout=null,e+=this._lastValue)),t.shiftKey&&e&&(e/=4),this._type&&this._zoom(-e,t),t.preventDefault()},c.prototype._onTimeout=function(){this._type="wheel",this._zoom(-this._lastValue)},c.prototype._zoom=function(t,e){if(0!==t){var r=this._map,i=2/(1+Math.exp(-Math.abs(t/100)));t<0&&0!==i&&(i=1/i);var n=r.ease?r.ease.to:r.transform.scale,o=r.transform.scaleZoom(n*i);r.zoomTo(o,{duration:"wheel"===this._type?200:0,around:this._aroundCenter?r.getCenter():r.unproject(this._pos),delayEndEvents:200,smoothEasing:!0},{originalEvent:e})}},e.exports=c},{"../../util/browser":202,"../../util/dom":209,"../../util/util":223,"../../util/window":204}],195:[function(t,e,r){"use strict";var i=t("../../util/dom"),n=t("../../util/util"),o=t("../../util/window"),a=n.bezier(0,0,.15,1),s=function(t){this._map=t,this._el=t.getCanvasContainer(),n.bindAll(["_onStart","_onMove","_onEnd"],this)};s.prototype.isEnabled=function(){return!!this._enabled},s.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)},s.prototype.disable=function(){this.isEnabled()&&(this._el.classList.remove("mapboxgl-touch-zoom-rotate"),this._el.removeEventListener("touchstart",this._onStart),this._enabled=!1)},s.prototype.disableRotation=function(){this._rotationDisabled=!0},s.prototype.enableRotation=function(){this._rotationDisabled=!1},s.prototype._onStart=function(t){if(2===t.touches.length){var e=i.mousePos(this._el,t.touches[0]),r=i.mousePos(this._el,t.touches[1]);this._startVec=e.sub(r),this._startScale=this._map.transform.scale,this._startBearing=this._map.transform.bearing,this._gestureIntent=void 0,this._inertia=[],o.document.addEventListener("touchmove",this._onMove,!1),o.document.addEventListener("touchend",this._onEnd,!1)}},s.prototype._onMove=function(t){if(2===t.touches.length){var e=i.mousePos(this._el,t.touches[0]),r=i.mousePos(this._el,t.touches[1]),n=e.add(r).div(2),o=e.sub(r),a=o.mag()/this._startVec.mag(),s=this._rotationDisabled?0:180*o.angleWith(this._startVec)/Math.PI,l=this._map;if(this._gestureIntent){var u={duration:0,around:l.unproject(n)};"rotate"===this._gestureIntent&&(u.bearing=this._startBearing+s),"zoom"!==this._gestureIntent&&"rotate"!==this._gestureIntent||(u.zoom=l.transform.scaleZoom(this._startScale*a)),l.stop(),this._drainInertiaBuffer(),this._inertia.push([Date.now(),a,n]),l.easeTo(u,{originalEvent:t})}else{var c=Math.abs(1-a)>.15;Math.abs(s)>10?this._gestureIntent="rotate":c&&(this._gestureIntent="zoom"),this._gestureIntent&&(this._startVec=o,this._startScale=l.transform.scale,this._startBearing=l.transform.bearing)}t.preventDefault()}},s.prototype._onEnd=function(t){o.document.removeEventListener("touchmove",this._onMove),o.document.removeEventListener("touchend",this._onEnd),this._drainInertiaBuffer();var e=this._inertia,r=this._map;if(e.length<2)return void r.snapToNorth({},{originalEvent:t});var i=e[e.length-1],n=e[0],s=r.transform.scaleZoom(this._startScale*i[1]),l=r.transform.scaleZoom(this._startScale*n[1]),u=s-l,c=(i[0]-n[0])/1e3,p=i[2];if(0===c||s===l)return void r.snapToNorth({},{originalEvent:t});var h=.15*u/c;Math.abs(h)>2.5&&(h=h>0?2.5:-2.5);var f=1e3*Math.abs(h/(12*.15)),d=s+h*f/2e3;d<0&&(d=0),r.easeTo({zoom:d,duration:f,easing:a,around:this._aroundCenter?r.getCenter():r.unproject(p)},{originalEvent:t})},s.prototype._drainInertiaBuffer=function(){for(var t=this._inertia,e=Date.now();t.length>2&&e-t[0][0]>160;)t.shift()},e.exports=s},{"../../util/dom":209,"../../util/util":223,"../../util/window":204}],196:[function(t,e,r){"use strict";var i=t("../util/util"),n=t("../util/window"),o=function(){i.bindAll(["_onHashChange","_updateHash"],this)};o.prototype.addTo=function(t){return this._map=t,n.addEventListener("hashchange",this._onHashChange,!1),this._map.on("moveend",this._updateHash),this},o.prototype.remove=function(){return n.removeEventListener("hashchange",this._onHashChange,!1),this._map.off("moveend",this._updateHash),delete this._map,this},o.prototype.getHashString=function(t){var e=this._map.getCenter(),r=Math.round(100*this._map.getZoom())/100,i=Math.max(0,Math.ceil(Math.log(r)/Math.LN2)),n=Math.round(e.lng*Math.pow(10,i))/Math.pow(10,i),o=Math.round(e.lat*Math.pow(10,i))/Math.pow(10,i),a=this._map.getBearing(),s=this._map.getPitch(),l="";return l+=t?"#/"+n+"/"+o+"/"+r:"#"+r+"/"+o+"/"+n,(a||s)&&(l+="/"+Math.round(10*a)/10),s&&(l+="/"+Math.round(s)),l},o.prototype._onHashChange=function(){var t=n.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)},o.prototype._updateHash=function(){var t=this.getHashString();n.history.replaceState("","",t)},e.exports=o},{"../util/util":223,"../util/window":204}],197:[function(t,e,r){"use strict";function i(t){t.parentNode&&t.parentNode.removeChild(t)}var n=t("../util/util"),o=t("../util/browser"),a=t("../util/window"),s=t("../util/window"),l=s.HTMLImageElement,u=t("../util/dom"),c=t("../util/ajax"),p=t("../style/style"),h=t("../style/animation_loop"),f=t("../render/painter"),d=t("../geo/transform"),m=t("./hash"),v=t("./bind_handlers"),y=t("./camera"),g=t("../geo/lng_lat"),_=t("../geo/lng_lat_bounds"),x=t("@mapbox/point-geometry"),b=t("./control/attribution_control"),w=t("./control/logo_control"),T=t("mapbox-gl-supported");t("./events");var S={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,maxTileCacheSize:null,transformRequest:null},z=function(t){function e(e){var r=this;if(e=n.extend({},S,e),null!=e.minZoom&&null!=e.maxZoom&&e.minZoom>e.maxZoom)throw new Error("maxZoom must be greater than minZoom");var i=new d(e.minZoom,e.maxZoom,e.renderWorldCopies);t.call(this,i,e),this._interactive=e.interactive,this._maxTileCacheSize=e.maxTileCacheSize,this._failIfMajorPerformanceCaveat=e.failIfMajorPerformanceCaveat,this._preserveDrawingBuffer=e.preserveDrawingBuffer,this._trackResize=e.trackResize,this._bearingSnap=e.bearingSnap,this._refreshExpiredTiles=e.refreshExpiredTiles;var o=e.transformRequest;if(this._transformRequest=o?function(t,e){return o(t,e)||{url:t}}:function(t){return{url:t}},"string"==typeof e.container){var s=a.document.getElementById(e.container);if(!s)throw new Error("Container '"+e.container+"' not found.");this._container=s}else this._container=e.container;this.animationLoop=new h,e.maxBounds&&this.setMaxBounds(e.maxBounds),n.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(){r.animationLoop.set(300),r._rerender()}),void 0!==a&&(a.addEventListener("online",this._onWindowOnline,!1),a.addEventListener("resize",this._onWindowResize,!1)),v(this,e),this._hash=e.hash&&(new m).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,{localIdeographFontFamily:e.localIdeographFontFamily}),e.attributionControl&&this.addControl(new b),this.addControl(new w,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 r={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 r=t.onAdd(this),i=this._controlPositions[e];return-1!==e.indexOf("bottom")?i.insertBefore(r,i.firstChild):i.appendChild(r),this},e.prototype.removeControl=function(t){return t.onRemove(this),this},e.prototype.addClass=function(t,e){return n.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){n.warnOnce("Style classes are deprecated and will be removed in an upcoming release of Mapbox GL JS.");var r=this._classes.indexOf(t);return r<0||""===t?this:(this._classes.splice(r,1),this._classOptions=e,this.style&&this.style.updateClasses(),this._update(!0))},e.prototype.setClasses=function(t,e){n.warnOnce("Style classes are deprecated and will be removed in an upcoming release of Mapbox GL JS.");for(var r={},i=0;i<t.length;i++)""!==t[i]&&(r[t[i]]=!0);return this._classes=Object.keys(r),this._classOptions=e,this.style&&this.style.updateClasses(),this._update(!0)},e.prototype.hasClass=function(t){return n.warnOnce("Style classes are deprecated and will be removed in an upcoming release of Mapbox GL JS."),this._classes.indexOf(t)>=0},e.prototype.getClasses=function(){return n.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],r=t[1];return this._resizeCanvas(e,r),this.transform.resize(e,r),this.painter.resize(e,r),this.fire("movestart").fire("move").fire("resize").fire("moveend")},e.prototype.getBounds=function(){var t=new _(this.transform.pointLocation(new x(0,this.transform.height)),this.transform.pointLocation(new x(this.transform.width,0)));return(this.transform.angle||this.transform.pitch)&&(t.extend(this.transform.pointLocation(new x(this.transform.size.x,0))),t.extend(this.transform.pointLocation(new x(0,this.transform.size.y)))),t},e.prototype.getMaxBounds=function(){return this.transform.latRange&&2===this.transform.latRange.length&&this.transform.lngRange&&2===this.transform.lngRange.length?new _([this.transform.lngRange[0],this.transform.latRange[0]],[this.transform.lngRange[1],this.transform.latRange[1]]):null},e.prototype.setMaxBounds=function(t){if(t){var e=_.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=null,this.transform.latRange=null,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()<t&&this.setZoom(t),this;throw new Error("minZoom must be between 0 and the current maxZoom, inclusive")},e.prototype.getMinZoom=function(){return this.transform.minZoom},e.prototype.setMaxZoom=function(t){if((t=null===t||void 0===t?22:t)>=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(g.convert(t))},e.prototype.unproject=function(t){return this.transform.pointLocation(x.convert(t))},e.prototype.on=function(e,r,i){var o=this;if(void 0===i)return t.prototype.on.call(this,e,r);var a=function(){if("mouseenter"===e||"mouseover"===e){var t=!1;return{layer:r,listener:i,delegates:{mousemove:function(a){var s=o.getLayer(r)?o.queryRenderedFeatures(a.point,{layers:[r]}):[];s.length?t||(t=!0,i.call(o,n.extend({features:s},a,{type:e}))):t=!1},mouseout:function(){t=!1}}}}if("mouseleave"===e||"mouseout"===e){var a=!1;return{layer:r,listener:i,delegates:{mousemove:function(t){(o.getLayer(r)?o.queryRenderedFeatures(t.point,{layers:[r]}):[]).length?a=!0:a&&(a=!1,i.call(o,n.extend({},t,{type:e})))},mouseout:function(t){a&&(a=!1,i.call(o,n.extend({},t,{type:e})))}}}}var s=function(t){var e=o.getLayer(r)?o.queryRenderedFeatures(t.point,{layers:[r]}):[];e.length&&i.call(o,n.extend({features:e},t))};return{layer:r,listener:i,delegates:(l={},l[e]=s,l)};var l}();this._delegatedListeners=this._delegatedListeners||{},this._delegatedListeners[e]=this._delegatedListeners[e]||[],this._delegatedListeners[e].push(a);for(var s in a.delegates)o.on(s,a.delegates[s]);return this},e.prototype.off=function(e,r,i){var n=this;if(void 0===i)return t.prototype.off.call(this,e,r);if(this._delegatedListeners&&this._delegatedListeners[e])for(var o=this._delegatedListeners[e],a=0;a<o.length;a++){var s=o[a];if(s.layer===r&&s.listener===i){for(var l in s.delegates)n.off(l,s.delegates[l]);return o.splice(a,1),n}}return this},e.prototype.queryRenderedFeatures=function(){for(var t=[],e=arguments.length;e--;)t[e]=arguments[e];var r,i={};return 2===t.length?(r=arguments[0],i=arguments[1]):1===t.length&&function(t){return t instanceof x||Array.isArray(t)}(t[0])?r=t[0]:1===t.length&&(i=t[0]),this.style?this.style.queryRenderedFeatures(this._makeQueryGeometry(r),i,this.transform.zoom,this.transform.angle):[]},e.prototype._makeQueryGeometry=function(t){var e=this;void 0===t&&(t=[x.convert([0,0]),x.convert([this.transform.width,this.transform.height])]);var r;if(t instanceof x||"number"==typeof t[0])r=[x.convert(t)];else{var i=[x.convert(t[0]),x.convert(t[1])];r=[i[0],new x(i[1].x,i[0].y),i[1],new x(i[0].x,i[1].y),i[0]]}return r=r.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){if((!e||!1!==e.diff&&!e.localIdeographFontFamily)&&this.style&&t&&!(t instanceof p)&&"string"!=typeof t)try{return this.style.setState(t)&&this._update(!0),this}catch(t){n.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),this.off("move",this.style._redoPlacement)),t?(this.style=t instanceof p?t:new p(t,this,e||{}),this.style.setEventedParent(this,{style:this.style}),this.on("rotate",this.style._redoPlacement),this.on("pitch",this.style._redoPlacement),this.on("move",this.style._redoPlacement),this):(this.style=null,this)},e.prototype.getStyle=function(){if(this.style)return this.style.serialize()},e.prototype.isStyleLoaded=function(){return this.style?this.style.loaded():n.warnOnce("There is no style added to the map.")},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.areTilesLoaded=function(){var t=this.style&&this.style.sourceCaches;for(var e in t){var r=t[e],i=r._tiles;for(var n in i){var o=i[n];if("loaded"!==o.state&&"errored"!==o.state)return!1}}return!0},e.prototype.addSourceType=function(t,e,r){return this.style.addSourceType(t,e,r)},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,r){void 0===r&&(r={});var i=r.pixelRatio;void 0===i&&(i=1);var n=r.sdf;if(void 0===n&&(n=!1),e instanceof l)e=o.getImageData(e);else if(void 0===e.width||void 0===e.height)return this.fire("error",{error:new Error("Invalid arguments to map.addImage(). The second argument must be an `HTMLImageElement`, `ImageData`, or object with `width`, `height`, and `data` properties with the same format as `ImageData`")});this.style.addImage(t,{data:e,pixelRatio:i,sdf:n})},e.prototype.removeImage=function(t){this.style.removeImage(t)},e.prototype.loadImage=function(t,e){c.getImage(this._transformRequest(t,c.ResourceType.Image),e)},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,r){return this.style.setLayerZoomRange(t,e,r),this._update(!0),this},e.prototype.getFilter=function(t){return this.style.getFilter(t)},e.prototype.setPaintProperty=function(t,e,r,i){return this.style.setPaintProperty(t,e,r,i),this._update(!0),this},e.prototype.getPaintProperty=function(t,e,r){return this.style.getPaintProperty(t,e,r)},e.prototype.setLayoutProperty=function(t,e,r){return this.style.setLayoutProperty(t,e,r),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=u.create("div","mapboxgl-canvas-container",t);this._interactive&&e.classList.add("mapboxgl-interactive"),this._canvas=u.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 r=this._containerDimensions();this._resizeCanvas(r[0],r[1]);var i=this._controlContainer=u.create("div","mapboxgl-control-container",t),n=this._controlPositions={};["top-left","top-right","bottom-left","bottom-right"].forEach(function(t){n[t]=u.create("div","mapboxgl-ctrl-"+t,i)})},e.prototype._resizeCanvas=function(t,e){var r=a.devicePixelRatio||1;this._canvas.width=r*t,this._canvas.height=r*e,this._canvas.style.width=t+"px",this._canvas.style.height=e+"px"},e.prototype._setupPainter=function(){var t=n.extend({failIfMajorPerformanceCaveat:this._failIfMajorPerformanceCaveat,preserveDrawingBuffer:this._preserveDrawingBuffer},T.webGLContextAttributes),e=this._canvas.getContext("webgl",t)||this._canvas.getContext("experimental-webgl",t);if(!e)return void this.fire("error",{error:new Error("Failed to initialize WebGL")});this.painter=new f(e,this.transform)},e.prototype._contextLost=function(t){t.preventDefault(),this._frameId&&(o.cancelFrame(this._frameId),this._frameId=null),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(),o.cancelFrame(this._frameId),this._frameId=null,this.setStyle(null),void 0!==a&&(a.removeEventListener("resize",this._onWindowResize,!1),a.removeEventListener("online",this._onWindowOnline,!1));var t=this.painter.gl.getExtension("WEBGL_lose_context");t&&t.loseContext(),i(this._canvasContainer),i(this._controlContainer),this._container.classList.remove("mapboxgl-map"),this.fire("remove")},e.prototype._rerender=function(){this.style&&!this._frameId&&(this._frameId=o.frame(this._render))},e.prototype._onWindowOnline=function(){this._update()},e.prototype._onWindowResize=function(){this._trackResize&&this.stop().resize()._update()},r.showTileBoundaries.get=function(){return!!this._showTileBoundaries},r.showTileBoundaries.set=function(t){this._showTileBoundaries!==t&&(this._showTileBoundaries=t,this._update())},r.showCollisionBoxes.get=function(){return!!this._showCollisionBoxes},r.showCollisionBoxes.set=function(t){this._showCollisionBoxes!==t&&(this._showCollisionBoxes=t,this.style._redoPlacement())},r.showOverdrawInspector.get=function(){return!!this._showOverdrawInspector},r.showOverdrawInspector.set=function(t){this._showOverdrawInspector!==t&&(this._showOverdrawInspector=t,this._update())},r.repaint.get=function(){return!!this._repaint},r.repaint.set=function(t){this._repaint=t,this._update()},r.vertices.get=function(){return!!this._vertices},r.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,r),e}(y);e.exports=z},{"../geo/lng_lat":58,"../geo/lng_lat_bounds":59,"../geo/transform":60,"../render/painter":79,"../style/animation_loop":150,"../style/style":156,"../util/ajax":201,"../util/browser":202,"../util/dom":209,"../util/util":223,"../util/window":204,"./bind_handlers":180,"./camera":181,"./control/attribution_control":182,"./control/logo_control":185,"./events":188,"./hash":196,"@mapbox/point-geometry":2,"mapbox-gl-supported":28}],198:[function(t,e,r){"use strict";var i=t("../util/dom"),n=t("../geo/lng_lat"),o=t("@mapbox/point-geometry"),a=t("../util/smart_wrap"),s=t("../util/util"),l=s.bindAll,u=function(t,e){this._offset=o.convert(e&&e.offset||[0,0]),l(["_update","_onMapClick"],this),t||(t=i.create("div")),t.classList.add("mapboxgl-marker"),this._element=t,this._popup=null};u.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},u.prototype.remove=function(){return this._map&&(this._map.off("click",this._onMapClick),this._map.off("move",this._update),this._map.off("moveend",this._update),delete this._map),i.remove(this._element),this._popup&&this._popup.remove(),this},u.prototype.getLngLat=function(){return this._lngLat},u.prototype.setLngLat=function(t){return this._lngLat=n.convert(t),this._pos=null,this._popup&&this._popup.setLngLat(this._lngLat),this._update(),this},u.prototype.getElement=function(){return this._element},u.prototype.setPopup=function(t){return this._popup&&(this._popup.remove(),this._popup=null),t&&("offset"in t.options||(t.options.offset=this._offset),this._popup=t,this._popup.setLngLat(this._lngLat)),this},u.prototype._onMapClick=function(t){var e=t.originalEvent.target,r=this._element;this._popup&&(e===r||r.contains(e))&&this.togglePopup()},u.prototype.getPopup=function(){return this._popup},u.prototype.togglePopup=function(){var t=this._popup;return t?(t.isOpen()?t.remove():t.addTo(this._map),this):this},u.prototype._update=function(t){this._map&&(this._map.transform.renderWorldCopies&&(this._lngLat=a(this._lngLat,this._pos,this._map.transform)),this._pos=this._map.project(this._lngLat)._add(this._offset),t&&"moveend"!==t.type||(this._pos=this._pos.round()),i.setTransform(this._element,"translate(-50%, -50%) translate("+this._pos.x+"px, "+this._pos.y+"px)"))},e.exports=u},{"../geo/lng_lat":58,"../util/dom":209,"../util/smart_wrap":219,"../util/util":223,"@mapbox/point-geometry":2}],199:[function(t,e,r){"use strict";function i(t){if(t){if("number"==typeof t){var e=Math.round(Math.sqrt(.5*Math.pow(t,2)));return{top:new l(0,t),"top-left":new l(e,e),"top-right":new l(-e,e),bottom:new l(0,-t),"bottom-left":new l(e,-e),"bottom-right":new l(-e,-e),left:new l(t,0),right:new l(-t,0)}}if(t instanceof l||Array.isArray(t)){var r=l.convert(t);return{top:r,"top-left":r,"top-right":r,bottom:r,"bottom-left":r,"bottom-right":r,left:r,right:r}}return{top:l.convert(t.top||[0,0]),"top-left":l.convert(t["top-left"]||[0,0]),"top-right":l.convert(t["top-right"]||[0,0]),bottom:l.convert(t.bottom||[0,0]),"bottom-left":l.convert(t["bottom-left"]||[0,0]),"bottom-right":l.convert(t["bottom-right"]||[0,0]),left:l.convert(t.left||[0,0]),right:l.convert(t.right||[0,0])}}return i(new l(0,0))}var n=t("../util/util"),o=t("../util/evented"),a=t("../util/dom"),s=t("../geo/lng_lat"),l=t("@mapbox/point-geometry"),u=t("../util/window"),c=t("../util/smart_wrap"),p={closeButton:!0,closeOnClick:!0},h=function(t){function e(e){t.call(this),this.options=n.extend(Object.create(p),e),n.bindAll(["_update","_onClickClose"],this)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.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},e.prototype.isOpen=function(){return!!this._map},e.prototype.remove=function(){return this._content&&a.remove(this._content),this._container&&(a.remove(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},e.prototype.getLngLat=function(){return this._lngLat},e.prototype.setLngLat=function(t){return this._lngLat=s.convert(t),this._pos=null,this._update(),this},e.prototype.setText=function(t){return this.setDOMContent(u.document.createTextNode(t))},e.prototype.setHTML=function(t){var e,r=u.document.createDocumentFragment(),i=u.document.createElement("body");for(i.innerHTML=t;e=i.firstChild;)r.appendChild(e);return this.setDOMContent(r)},e.prototype.setDOMContent=function(t){return this._createContent(),this._content.appendChild(t),this._update(),this},e.prototype._createContent=function(){this._content&&a.remove(this._content),this._content=a.create("div","mapboxgl-popup-content",this._container),this.options.closeButton&&(this._closeButton=a.create("button","mapboxgl-popup-close-button",this._content),this._closeButton.type="button",this._closeButton.setAttribute("aria-label","Close popup"),this._closeButton.innerHTML="&#215;",this._closeButton.addEventListener("click",this._onClickClose))},e.prototype._update=function(){if(this._map&&this._lngLat&&this._content){this._container||(this._container=a.create("div","mapboxgl-popup",this._map.getContainer()),this._tip=a.create("div","mapboxgl-popup-tip",this._container),this._container.appendChild(this._content)),this._map.transform.renderWorldCopies&&(this._lngLat=c(this._lngLat,this._pos,this._map.transform));var t=this._pos=this._map.project(this._lngLat),e=this.options.anchor,r=i(this.options.offset);if(!e){var n=this._container.offsetWidth,o=this._container.offsetHeight;e=t.y+r.bottom.y<o?["top"]:t.y>this._map.transform.height-o?["bottom"]:[],t.x<n/2?e.push("left"):t.x>this._map.transform.width-n/2&&e.push("right"),e=0===e.length?"bottom":e.join("-")}var s=t.add(r[e]).round(),l={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%)"},u=this._container.classList;for(var p in l)u.remove("mapboxgl-popup-anchor-"+p);u.add("mapboxgl-popup-anchor-"+e),a.setTransform(this._container,l[e]+" translate("+s.x+"px,"+s.y+"px)")}},e.prototype._onClickClose=function(){this.remove()},e}(o);e.exports=h},{"../geo/lng_lat":58,"../util/dom":209,"../util/evented":210,"../util/smart_wrap":219,"../util/util":223,"../util/window":204,"@mapbox/point-geometry":2}],200:[function(t,e,r){"use strict";var i=t("./util"),n=function(t,e,r){this.target=t,this.parent=e,this.mapId=r,this.callbacks={},this.callbackID=0,i.bindAll(["receive"],this),this.target.addEventListener("message",this.receive,!1)};n.prototype.send=function(t,e,r,i,n){var o=r?this.mapId+":"+this.callbackID++:null;r&&(this.callbacks[o]=r),this.target.postMessage({targetMapId:n,sourceMapId:this.mapId,type:t,id:String(o),data:e},i)},n.prototype.receive=function(t){var e,r=this,i=t.data,n=i.id;if(!i.targetMapId||this.mapId===i.targetMapId){var o=function(t,e,i){r.target.postMessage({sourceMapId:r.mapId,type:"<response>",id:String(n),error:t?String(t):null,data:e},i)};if("<response>"===i.type)e=this.callbacks[i.id],delete this.callbacks[i.id],e&&i.error?e(new Error(i.error)):e&&e(null,i.data);else if(void 0!==i.id&&this.parent[i.type])this.parent[i.type](i.sourceMapId,i.data,o);else if(void 0!==i.id&&this.parent.getWorkerSource){var a=i.type.split("."),s=this.parent.getWorkerSource(i.sourceMapId,a[0]);s[a[1]](i.data,o)}else this.parent[i.type](i.data)}},n.prototype.remove=function(){this.target.removeEventListener("message",this.receive,!1)},e.exports=n},{"./util":223}],201:[function(t,e,r){"use strict";function i(t){var e=new o.XMLHttpRequest;e.open("GET",t.url,!0);for(var r in t.headers)e.setRequestHeader(r,t.headers[r]);return e.withCredentials="include"===t.credentials,e}function n(t){var e=o.document.createElement("a");return e.href=t,e.protocol===o.document.location.protocol&&e.host===o.document.location.host}var o=t("./window"),a={Unknown:"Unknown",Style:"Style",Source:"Source",Tile:"Tile",Glyphs:"Glyphs",SpriteImage:"SpriteImage",SpriteJSON:"SpriteJSON",Image:"Image"};r.ResourceType=a,"function"==typeof Object.freeze&&Object.freeze(a);var s=function(t){function e(e,r){t.call(this,e),this.status=r}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e}(Error);r.getJSON=function(t,e){var r=i(t);return r.setRequestHeader("Accept","application/json"),r.onerror=function(){e(new Error(r.statusText))},r.onload=function(){if(r.status>=200&&r.status<300&&r.response){var t;try{t=JSON.parse(r.response)}catch(t){return e(t)}e(null,t)}else e(new s(r.statusText,r.status))},r.send(),r},r.getArrayBuffer=function(t,e){var r=i(t);return r.responseType="arraybuffer",r.onerror=function(){e(new Error(r.statusText))},r.onload=function(){var t=r.response;if(0===t.byteLength&&200===r.status)return e(new Error("http status 200 returned without content."));r.status>=200&&r.status<300&&r.response?e(null,{data:t,cacheControl:r.getResponseHeader("Cache-Control"),expires:r.getResponseHeader("Expires")}):e(new s(r.statusText,r.status))},r.send(),r};r.getImage=function(t,e){return r.getArrayBuffer(t,function(t,r){if(t)e(t);else if(r){var i=new o.Image,n=o.URL||o.webkitURL;i.onload=function(){e(null,i),n.revokeObjectURL(i.src)};var a=new o.Blob([new Uint8Array(r.data)],{type:"image/png"});i.cacheControl=r.cacheControl,i.expires=r.expires,i.src=r.data.byteLength?n.createObjectURL(a):"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAAC0lEQVQYV2NgAAIAAAUAAarVyFEAAAAASUVORK5CYII="}})},r.getVideo=function(t,e){var r=o.document.createElement("video");r.onloadstart=function(){e(null,r)};for(var i=0;i<t.length;i++){var a=o.document.createElement("source");n(t[i])||(r.crossOrigin="Anonymous"),a.src=t[i],r.appendChild(a)}return r}},{"./window":204}],202:[function(t,e,r){"use strict";var i=t("./window"),n=i.performance&&i.performance.now?i.performance.now.bind(i.performance):Date.now.bind(Date),o=i.requestAnimationFrame||i.mozRequestAnimationFrame||i.webkitRequestAnimationFrame||i.msRequestAnimationFrame,a=i.cancelAnimationFrame||i.mozCancelAnimationFrame||i.webkitCancelAnimationFrame||i.msCancelAnimationFrame;e.exports={now:n,frame:function(t){return o(t)},cancelFrame:function(t){return a(t)},timed:function(t,e,r){function i(){if(!a){var l=n();l>=s+e?t.call(r,1):(t.call(r,(l-s)/e),o(i))}}if(!e)return t.call(r,1),null;var a=!1,s=n();return o(i),function(){a=!0}},getImageData:function(t){var e=i.document.createElement("canvas"),r=e.getContext("2d");if(!r)throw new Error("failed to create canvas 2d context");return e.width=t.width,e.height=t.height,r.drawImage(t,0,0,t.width,t.height),r.getImageData(0,0,t.width,t.height)},hardwareConcurrency:i.navigator.hardwareConcurrency||4,get devicePixelRatio(){return i.devicePixelRatio},supportsWebp:!1};var s=i.document.createElement("img");s.onload=function(){e.exports.supportsWebp=!0},s.src="data:image/webp;base64,UklGRh4AAABXRUJQVlA4TBEAAAAvAQAAAAfQ//73v/+BiOh/AAA="},{"./window":204}],203:[function(t,e,r){"use strict";var i=t("webworkify"),n=t("../window"),o=n.URL.createObjectURL(new i(t("../../source/worker"),{bare:!0}));e.exports=function(){return new n.Worker(o)}},{"../../source/worker":105,"../window":204,webworkify:39}],204:[function(t,e,r){"use strict";e.exports=self},{}],205:[function(t,e,r){"use strict";function i(t,e){return e.area-t.area}var n=t("quickselect"),o=t("./util").calculateSignedArea;e.exports=function(t,e){var r=t.length;if(r<=1)return[t];for(var a,s,l=[],u=0;u<r;u++){var c=o(t[u]);0!==c&&(t[u].area=Math.abs(c),void 0===s&&(s=c<0),s===c<0?(a&&l.push(a),a=[t[u]]):a.push(t[u]))}if(a&&l.push(a),e>1)for(var p=0;p<l.length;p++)l[p].length<=e||(n(l[p],e,1,l[p].length-1,i),l[p]=l[p].slice(0,e));return l}},{"./util":223,quickselect:31}],206:[function(t,e,r){"use strict";var i={API_URL:"https://api.mapbox.com",REQUIRE_ACCESS_TOKEN:!0,ACCESS_TOKEN:null};e.exports=i},{}],207:[function(t,e,r){"use strict";var i=function(t){var e=this;this._stringToNumber={},this._numberToString=[];for(var r=0;r<t.length;r++){var i=t[r];e._stringToNumber[i]=r,e._numberToString[r]=i}};i.prototype.encode=function(t){return this._stringToNumber[t]},i.prototype.decode=function(t){return this._numberToString[t]},e.exports=i},{}],208:[function(t,e,r){"use strict";var i=t("./util"),n=t("./actor"),o=function(t,e){var r=this;this.workerPool=t,this.actors=[],this.currentActor=0,this.id=i.uniqueId();for(var o=this.workerPool.acquire(this.id),a=0;a<o.length;a++){var s=o[a],l=new n(s,e,r.id);l.name="Worker "+a,r.actors.push(l)}};o.prototype.broadcast=function(t,e,r){r=r||function(){},i.asyncAll(this.actors,function(r,i){r.send(t,e,i)},r)},o.prototype.send=function(t,e,r,i,n){return("number"!=typeof i||isNaN(i))&&(i=this.currentActor=(this.currentActor+1)%this.actors.length),this.actors[i].send(t,e,r,n),i},o.prototype.remove=function(){this.actors.forEach(function(t){t.remove()}),this.actors=[],this.workerPool.release(this.id)},e.exports=o},{"./actor":200,"./util":223}],209:[function(t,e,r){"use strict";function i(t){for(var e=0;e<t.length;e++)if(t[e]in s)return t[e];return t[0]}var n=t("@mapbox/point-geometry"),o=t("./window");r.create=function(t,e,r){var i=o.document.createElement(t);return e&&(i.className=e),r&&r.appendChild(i),i};var a,s=o.document.documentElement.style,l=i(["userSelect","MozUserSelect","WebkitUserSelect","msUserSelect"]);r.disableDrag=function(){l&&(a=s[l],s[l]="none")},r.enableDrag=function(){l&&(s[l]=a)};var u=i(["transform","WebkitTransform"]);r.setTransform=function(t,e){t.style[u]=e};var c=function(t){t.preventDefault(),t.stopPropagation(),o.removeEventListener("click",c,!0)};r.suppressClick=function(){o.addEventListener("click",c,!0),o.setTimeout(function(){o.removeEventListener("click",c,!0)},0)},r.mousePos=function(t,e){var r=t.getBoundingClientRect();return e=e.touches?e.touches[0]:e,new n(e.clientX-r.left-t.clientLeft,e.clientY-r.top-t.clientTop)},r.touchPos=function(t,e){for(var r=t.getBoundingClientRect(),i=[],o="touchend"===e.type?e.changedTouches:e.touches,a=0;a<o.length;a++)i.push(new n(o[a].clientX-r.left-t.clientLeft,o[a].clientY-r.top-t.clientTop));return i},r.remove=function(t){t.parentNode&&t.parentNode.removeChild(t)}},{"./window":204,"@mapbox/point-geometry":2}],210:[function(t,e,r){"use strict";function i(t,e,r){r[t]=r[t]||[],r[t].push(e)}function n(t,e,r){if(r&&r[t]){var i=r[t].indexOf(e);-1!==i&&r[t].splice(i,1)}}var o=t("./util"),a=function(){};a.prototype.on=function(t,e){return this._listeners=this._listeners||{},i(t,e,this._listeners),this},a.prototype.off=function(t,e){return n(t,e,this._listeners),n(t,e,this._oneTimeListeners),this},a.prototype.once=function(t,e){return this._oneTimeListeners=this._oneTimeListeners||{},i(t,e,this._oneTimeListeners),this},a.prototype.fire=function(t,e){var r=this;if(this.listens(t)){e=o.extend({},e,{type:t,target:this});for(var i=this._listeners&&this._listeners[t]?this._listeners[t].slice():[],a=0;a<i.length;a++)i[a].call(r,e);for(var s=this._oneTimeListeners&&this._oneTimeListeners[t]?this._oneTimeListeners[t].slice():[],l=0;l<s.length;l++)s[l].call(r,e),n(t,s[l],r._oneTimeListeners);this._eventedParent&&this._eventedParent.fire(t,o.extend({},e,"function"==typeof this._eventedParentData?this._eventedParentData():this._eventedParentData))}else o.endsWith(t,"error")&&console.error(e&&e.error||e||"Empty error event");return this},a.prototype.listens=function(t){return this._listeners&&this._listeners[t]&&this._listeners[t].length>0||this._oneTimeListeners&&this._oneTimeListeners[t]&&this._oneTimeListeners[t].length>0||this._eventedParent&&this._eventedParent.listens(t)},a.prototype.setEventedParent=function(t,e){return this._eventedParent=t,this._eventedParentData=e,this},e.exports=a},{"./util":223}],211:[function(t,e,r){"use strict";function i(t,e){return e.max-t.max}function n(t,e,r,i){this.p=new l(t,e),this.h=r,this.d=o(this.p,i),this.max=this.d+this.h*Math.SQRT2}function o(t,e){for(var r=!1,i=1/0,n=0;n<e.length;n++)for(var o=e[n],a=0,s=o.length,l=s-1;a<s;l=a++){var c=o[a],p=o[l];c.y>t.y!=p.y>t.y&&t.x<(p.x-c.x)*(t.y-c.y)/(p.y-c.y)+c.x&&(r=!r),i=Math.min(i,u(t,c,p))}return(r?1:-1)*Math.sqrt(i)}function a(t){for(var e=0,r=0,i=0,o=t[0],a=0,s=o.length,l=s-1;a<s;l=a++){var u=o[a],c=o[l],p=u.x*c.y-c.x*u.y;r+=(u.x+c.x)*p,i+=(u.y+c.y)*p,e+=3*p}return new n(r/e,i/e,0,t)}var s=t("tinyqueue"),l=t("@mapbox/point-geometry"),u=t("./intersection_tests").distToSegmentSquared;e.exports=function(t,e,r){void 0===e&&(e=1),void 0===r&&(r=!1);for(var o=1/0,u=1/0,c=-1/0,p=-1/0,h=t[0],f=0;f<h.length;f++){var d=h[f];(!f||d.x<o)&&(o=d.x),(!f||d.y<u)&&(u=d.y),(!f||d.x>c)&&(c=d.x),(!f||d.y>p)&&(p=d.y)}var m=c-o,v=p-u,y=Math.min(m,v),g=y/2,_=new s(null,i);if(0===y)return new l(o,u);for(var x=o;x<c;x+=y)for(var b=u;b<p;b+=y)_.push(new n(x+g,b+g,g,t));for(var w=a(t),T=_.length;_.length;){var S=_.pop();(S.d>w.d||!w.d)&&(w=S,r&&console.log("found best %d after %d probes",Math.round(1e4*S.d)/1e4,T)),S.max-w.d<=e||(g=S.h/2,_.push(new n(S.p.x-g,S.p.y-g,g,t)),_.push(new n(S.p.x+g,S.p.y-g,g,t)),_.push(new n(S.p.x-g,S.p.y+g,g,t)),_.push(new n(S.p.x+g,S.p.y+g,g,t)),T+=4)}return r&&(console.log("num probes: "+T),console.log("best distance: "+w.d)),w.p}},{"./intersection_tests":214,"@mapbox/point-geometry":2,tinyqueue:33}],212:[function(t,e,r){"use strict";var i,n=t("./worker_pool");e.exports=function(){return i||(i=new n),i}},{"./worker_pool":226}],213:[function(t,e,r){"use strict";function i(t,e,r){var i=t.width,n=t.height;if(r){if(r.length!==i*n*e)throw new RangeError("mismatched image size")}else r=new Uint8Array(i*n*e);return{width:i,height:n,data:r}}function n(t,e,r){var n=e.width,a=e.height;if(n===t.width&&a===t.height)return t;var s=i({width:n,height:a},r);o(t,s,{x:0,y:0},{x:0,y:0},{width:Math.min(t.width,n),height:Math.min(t.height,a)},r),t.width=n,t.height=a,t.data=s.data}function o(t,e,r,i,n,o){if(0===n.width||0===n.height)return e;if(n.width>t.width||n.height>t.height||r.x>t.width-n.width||r.y>t.height-n.height)throw new RangeError("out of range source coordinates for image copy");if(n.width>e.width||n.height>e.height||i.x>e.width-n.width||i.y>e.height-n.height)throw new RangeError("out of range destination coordinates for image copy");for(var a=t.data,s=e.data,l=0;l<n.height;l++)for(var u=((r.y+l)*t.width+r.x)*o,c=((i.y+l)*e.width+i.x)*o,p=0;p<n.width*o;p++)s[c+p]=a[u+p];return e}var a=function(){};a.create=function(t,e){return i(t,1,e)},a.resize=function(t,e){n(t,e,1)},a.copy=function(t,e,r,i,n){o(t,e,r,i,n,1)};var s=function(){};s.create=function(t,e){return i(t,4,e)},s.resize=function(t,e){n(t,e,4)},s.copy=function(t,e,r,i,n){o(t,e,r,i,n,4)},e.exports={AlphaImage:a,RGBAImage:s}},{}],214:[function(t,e,r){"use strict";function i(t,e){for(var r=0;r<t.length;r++)if(f(e,t[r]))return!0;for(var i=0;i<e.length;i++)if(f(t,e[i]))return!0;return!!l(t,e)}function n(t,e,r){for(var i=0;i<t.length;i++)for(var n=t[i],o=0;o<e.length;o++)for(var a=e[o],s=0;s<a.length;s++){var l=a[s];if(f(n,l))return!0;if(c(l,n,r))return!0}return!1}function o(t,e){if(1===t.length&&1===t[0].length)return h(e,t[0][0]);for(var r=0;r<e.length;r++)for(var i=e[r],n=0;n<i.length;n++)if(h(t,i[n]))return!0;for(var o=0;o<t.length;o++){for(var a=t[o],s=0;s<a.length;s++)if(h(e,a[s]))return!0;for(var u=0;u<e.length;u++)if(l(a,e[u]))return!0}return!1}function a(t,e,r){for(var i=0;i<e.length;i++)for(var n=e[i],o=0;o<t.length;o++){var a=t[o];if(a.length>=3)for(var l=0;l<n.length;l++)if(f(a,n[l]))return!0;if(s(a,n,r))return!0}return!1}function s(t,e,r){if(t.length>1){if(l(t,e))return!0;for(var i=0;i<e.length;i++)if(c(e[i],t,r))return!0}for(var n=0;n<t.length;n++)if(c(t[n],e,r))return!0;return!1}function l(t,e){if(0===t.length||0===e.length)return!1;for(var r=0;r<t.length-1;r++)for(var i=t[r],n=t[r+1],o=0;o<e.length-1;o++){var a=e[o],s=e[o+1];if(u(i,n,a,s))return!0}return!1}function u(t,e,r,i){return m(t,r,i)!==m(e,r,i)&&m(t,e,r)!==m(t,e,i)}function c(t,e,r){var i=r*r;if(1===e.length)return t.distSqr(e[0])<i;for(var n=1;n<e.length;n++)if(p(t,e[n-1],e[n])<i)return!0;return!1}function p(t,e,r){var i=e.distSqr(r);if(0===i)return t.distSqr(e);var n=((t.x-e.x)*(r.x-e.x)+(t.y-e.y)*(r.y-e.y))/i;return n<0?t.distSqr(e):n>1?t.distSqr(r):t.distSqr(r.sub(e)._mult(n)._add(e))}function h(t,e){for(var r,i,n,o=!1,a=0;a<t.length;a++){r=t[a];for(var s=0,l=r.length-1;s<r.length;l=s++)i=r[s],n=r[l],i.y>e.y!=n.y>e.y&&e.x<(n.x-i.x)*(e.y-i.y)/(n.y-i.y)+i.x&&(o=!o)}return o}function f(t,e){for(var r=!1,i=0,n=t.length-1;i<t.length;n=i++){var o=t[i],a=t[n];o.y>e.y!=a.y>e.y&&e.x<(a.x-o.x)*(e.y-o.y)/(a.y-o.y)+o.x&&(r=!r)}return r}var d=t("./util"),m=d.isCounterClockwise;e.exports={multiPolygonIntersectsBufferedMultiPoint:n,multiPolygonIntersectsMultiPolygon:o,multiPolygonIntersectsBufferedMultiLine:a,polygonIntersectsPolygon:i,distToSegmentSquared:p}},{"./util":223}],215:[function(t,e,r){"use strict";var i={"Latin-1 Supplement":function(t){return t>=128&&t<=255},Arabic:function(t){return t>=1536&&t<=1791},"Arabic Supplement":function(t){return t>=1872&&t<=1919},"Arabic Extended-A":function(t){return t>=2208&&t<=2303},"Hangul Jamo":function(t){return t>=4352&&t<=4607},"Unified Canadian Aboriginal Syllabics":function(t){return t>=5120&&t<=5759},"Unified Canadian Aboriginal Syllabics Extended":function(t){return t>=6320&&t<=6399},"General Punctuation":function(t){return t>=8192&&t<=8303},"Letterlike Symbols":function(t){return t>=8448&&t<=8527},"Number Forms":function(t){return t>=8528&&t<=8591},"Miscellaneous Technical":function(t){return t>=8960&&t<=9215},"Control Pictures":function(t){return t>=9216&&t<=9279},"Optical Character Recognition":function(t){return t>=9280&&t<=9311},"Enclosed Alphanumerics":function(t){return t>=9312&&t<=9471},"Geometric Shapes":function(t){return t>=9632&&t<=9727},"Miscellaneous Symbols":function(t){return t>=9728&&t<=9983},"Miscellaneous Symbols and Arrows":function(t){return t>=11008&&t<=11263},"CJK Radicals Supplement":function(t){return t>=11904&&t<=12031},"Kangxi Radicals":function(t){return t>=12032&&t<=12255},"Ideographic Description Characters":function(t){return t>=12272&&t<=12287},"CJK Symbols and Punctuation":function(t){return t>=12288&&t<=12351},Hiragana:function(t){return t>=12352&&t<=12447},Katakana:function(t){return t>=12448&&t<=12543},Bopomofo:function(t){return t>=12544&&t<=12591},"Hangul Compatibility Jamo":function(t){return t>=12592&&t<=12687},Kanbun:function(t){return t>=12688&&t<=12703},"Bopomofo Extended":function(t){return t>=12704&&t<=12735},"CJK Strokes":function(t){return t>=12736&&t<=12783},"Katakana Phonetic Extensions":function(t){return t>=12784&&t<=12799},"Enclosed CJK Letters and Months":function(t){return t>=12800&&t<=13055},"CJK Compatibility":function(t){return t>=13056&&t<=13311},"CJK Unified Ideographs Extension A":function(t){return t>=13312&&t<=19903},"Yijing Hexagram Symbols":function(t){return t>=19904&&t<=19967},"CJK Unified Ideographs":function(t){return t>=19968&&t<=40959},"Yi Syllables":function(t){return t>=40960&&t<=42127},"Yi Radicals":function(t){return t>=42128&&t<=42191},"Hangul Jamo Extended-A":function(t){return t>=43360&&t<=43391},"Hangul Syllables":function(t){return t>=44032&&t<=55215},"Hangul Jamo Extended-B":function(t){return t>=55216&&t<=55295},"Private Use Area":function(t){return t>=57344&&t<=63743},"CJK Compatibility Ideographs":function(t){return t>=63744&&t<=64255},"Arabic Presentation Forms-A":function(t){return t>=64336&&t<=65023},"Vertical Forms":function(t){return t>=65040&&t<=65055},"CJK Compatibility Forms":function(t){return t>=65072&&t<=65103},"Small Form Variants":function(t){return t>=65104&&t<=65135},"Arabic Presentation Forms-B":function(t){return t>=65136&&t<=65279},"Halfwidth and Fullwidth Forms":function(t){return t>=65280&&t<=65519}};e.exports=i},{}],216:[function(t,e,r){"use strict";var i=function(t,e){this.max=t,this.onRemove=e,this.reset()};i.prototype.reset=function(){var t=this;for(var e in t.data)t.onRemove(t.data[e]);return this.data={},this.order=[],this},i.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},i.prototype.has=function(t){return t in this.data},i.prototype.keys=function(){return this.order},i.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},i.prototype.getWithoutRemoving=function(t){return this.has(t)?this.data[t]:null},i.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},i.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},e.exports=i},{}],217:[function(t,e,r){"use strict";function i(t,e){var r=a(l.API_URL);if(t.protocol=r.protocol,t.authority=r.authority,"/"!==r.path&&(t.path=""+r.path+t.path),!l.REQUIRE_ACCESS_TOKEN)return s(t);if(!(e=e||l.ACCESS_TOKEN))throw new Error("An API access token is required to use Mapbox GL. "+c);if("s"===e[0])throw new Error("Use a public access token (pk.*) with Mapbox GL, not a secret access token (sk.*). "+c);return t.params.push("access_token="+e),s(t)}function n(t){return 0===t.indexOf("mapbox:")}function o(t){for(var e=0;e<t.length;e++)0===t[e].indexOf("access_token=tk.")&&(t[e]="access_token="+(l.ACCESS_TOKEN||""))}function a(t){var e=t.match(h);if(!e)throw new Error("Unable to parse URL object");return{protocol:e[1],authority:e[2],path:e[3]||"/",params:e[4]?e[4].split("&"):[]}}function s(t){var e=t.params.length?"?"+t.params.join("&"):"";return t.protocol+"://"+t.authority+t.path+e}var l=t("./config"),u=t("./browser"),c="See https://www.mapbox.com/api-documentation/#access-tokens";r.isMapboxURL=n,r.normalizeStyleURL=function(t,e){if(!n(t))return t;var r=a(t);return r.path="/styles/v1"+r.path,i(r,e)},r.normalizeGlyphsURL=function(t,e){if(!n(t))return t;var r=a(t);return r.path="/fonts/v1"+r.path,i(r,e)},r.normalizeSourceURL=function(t,e){if(!n(t))return t;var r=a(t);return r.path="/v4/"+r.authority+".json",r.params.push("secure"),i(r,e)},r.normalizeSpriteURL=function(t,e,r,o){var l=a(t);return n(t)?(l.path="/styles/v1"+l.path+"/sprite"+e+r,i(l,o)):(l.path+=""+e+r,s(l))};var p=/(\.(png|jpg)\d*)(?=$)/;r.normalizeTileURL=function(t,e,r){if(!e||!n(e))return t;var i=a(t),l=u.devicePixelRatio>=2||512===r?"@2x":"",c=u.supportsWebp?".webp":"$1";return i.path=i.path.replace(p,""+l+c),o(i.params),s(i)};var h=/^(\w+):\/\/([^\/?]*)(\/[^?]+)?\??(.+)?/},{"./browser":202,"./config":206}],218:[function(t,e,r){"use strict";var i=t("./is_char_in_unicode_block");e.exports.allowsIdeographicBreaking=function(t){for(var e=0,i=t;e<i.length;e+=1){var n=i[e];if(!r.charAllowsIdeographicBreaking(n.charCodeAt(0)))return!1}return!0},e.exports.allowsVerticalWritingMode=function(t){for(var e=0,i=t;e<i.length;e+=1){var n=i[e];if(r.charHasUprightVerticalOrientation(n.charCodeAt(0)))return!0}return!1},e.exports.allowsLetterSpacing=function(t){for(var e=0,i=t;e<i.length;e+=1){var n=i[e];if(!r.charAllowsLetterSpacing(n.charCodeAt(0)))return!1}return!0},e.exports.charAllowsLetterSpacing=function(t){return!(i.Arabic(t)||i["Arabic Supplement"](t)||i["Arabic Extended-A"](t)||i["Arabic Presentation Forms-A"](t)||i["Arabic Presentation Forms-B"](t))},e.exports.charAllowsIdeographicBreaking=function(t){return!!(!(t<11904)&&(i["Bopomofo Extended"](t)||i.Bopomofo(t)||i["CJK Compatibility Forms"](t)||i["CJK Compatibility Ideographs"](t)||i["CJK Compatibility"](t)||i["CJK Radicals Supplement"](t)||i["CJK Strokes"](t)||i["CJK Symbols and Punctuation"](t)||i["CJK Unified Ideographs Extension A"](t)||i["CJK Unified Ideographs"](t)||i["Enclosed CJK Letters and Months"](t)||i["Halfwidth and Fullwidth Forms"](t)||i.Hiragana(t)||i["Ideographic Description Characters"](t)||i["Kangxi Radicals"](t)||i["Katakana Phonetic Extensions"](t)||i.Katakana(t)||i["Vertical Forms"](t)||i["Yi Radicals"](t)||i["Yi Syllables"](t)))},r.charHasUprightVerticalOrientation=function(t){return!!(746===t||747===t||!(t<4352)&&(i["Bopomofo Extended"](t)||i.Bopomofo(t)||i["CJK Compatibility Forms"](t)&&!(t>=65097&&t<=65103)||i["CJK Compatibility Ideographs"](t)||i["CJK Compatibility"](t)||i["CJK Radicals Supplement"](t)||i["CJK Strokes"](t)||!(!i["CJK Symbols and Punctuation"](t)||t>=12296&&t<=12305||t>=12308&&t<=12319||12336===t)||i["CJK Unified Ideographs Extension A"](t)||i["CJK Unified Ideographs"](t)||i["Enclosed CJK Letters and Months"](t)||i["Hangul Compatibility Jamo"](t)||i["Hangul Jamo Extended-A"](t)||i["Hangul Jamo Extended-B"](t)||i["Hangul Jamo"](t)||i["Hangul Syllables"](t)||i.Hiragana(t)||i["Ideographic Description Characters"](t)||i.Kanbun(t)||i["Kangxi Radicals"](t)||i["Katakana Phonetic Extensions"](t)||i.Katakana(t)&&12540!==t||!(!i["Halfwidth and Fullwidth Forms"](t)||65288===t||65289===t||65293===t||t>=65306&&t<=65310||65339===t||65341===t||65343===t||t>=65371&&t<=65503||65507===t||t>=65512&&t<=65519)||!(!i["Small Form Variants"](t)||t>=65112&&t<=65118||t>=65123&&t<=65126)||i["Unified Canadian Aboriginal Syllabics"](t)||i["Unified Canadian Aboriginal Syllabics Extended"](t)||i["Vertical Forms"](t)||i["Yijing Hexagram Symbols"](t)||i["Yi Syllables"](t)||i["Yi Radicals"](t)))},r.charHasNeutralVerticalOrientation=function(t){return!!(i["Latin-1 Supplement"](t)&&(167===t||169===t||174===t||177===t||188===t||189===t||190===t||215===t||247===t)||i["General Punctuation"](t)&&(8214===t||8224===t||8225===t||8240===t||8241===t||8251===t||8252===t||8258===t||8263===t||8264===t||8265===t||8273===t)||i["Letterlike Symbols"](t)||i["Number Forms"](t)||i["Miscellaneous Technical"](t)&&(t>=8960&&t<=8967||t>=8972&&t<=8991||t>=8996&&t<=9e3||9003===t||t>=9085&&t<=9114||t>=9150&&t<=9165||9167===t||t>=9169&&t<=9179||t>=9186&&t<=9215)||i["Control Pictures"](t)&&9251!==t||i["Optical Character Recognition"](t)||i["Enclosed Alphanumerics"](t)||i["Geometric Shapes"](t)||i["Miscellaneous Symbols"](t)&&!(t>=9754&&t<=9759)||i["Miscellaneous Symbols and Arrows"](t)&&(t>=11026&&t<=11055||t>=11088&&t<=11097||t>=11192&&t<=11243)||i["CJK Symbols and Punctuation"](t)||i.Katakana(t)||i["Private Use Area"](t)||i["CJK Compatibility Forms"](t)||i["Small Form Variants"](t)||i["Halfwidth and Fullwidth Forms"](t)||8734===t||8756===t||8757===t||t>=9984&&t<=10087||t>=10102&&t<=10131||65532===t||65533===t)},r.charHasRotatedVerticalOrientation=function(t){return!(r.charHasUprightVerticalOrientation(t)||r.charHasNeutralVerticalOrientation(t))}},{"./is_char_in_unicode_block":215}],219:[function(t,e,r){"use strict";var i=t("../geo/lng_lat");e.exports=function(t,e,r){if(t=new i(t.lng,t.lat),e){var n=new i(t.lng-360,t.lat),o=new i(t.lng+360,t.lat),a=r.locationPoint(t).distSqr(e);r.locationPoint(n).distSqr(e)<a?t=n:r.locationPoint(o).distSqr(e)<a&&(t=o)}for(;Math.abs(t.lng-r.center.lng)>180;){var s=r.locationPoint(t);if(s.x>=0&&s.y>=0&&s.x<=r.width&&s.y<=r.height)break;t.lng>r.center.lng?t.lng-=360:t.lng+=360}return t}},{"../geo/lng_lat":58}],220:[function(t,e,r){"use strict";function i(t){var e=JSON.stringify(t);if(f[e])return f[e];var r=void 0===t.alignment?1:t.alignment,i=0,a=0,l=["Uint8"],c=t.members.map(function(t){l.indexOf(t.type)<0&&l.push(t.type);var e=o(t.type),s=i=n(i,Math.max(r,e)),u=t.components||1;return a=Math.max(a,e),i+=e*u,{name:t.name,type:t.type,components:u,offset:s}}),d=n(i,Math.max(a,r)),m=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}(p);m.prototype.alignment=r,m.prototype.size=d;for(var v=0,y=c;v<y.length;v+=1)for(var g=y[v],_=0;_<g.components;_++){var x=g.name;if(g.components>1&&(x+=_),x in m.prototype)throw new Error(x+" is a reserved name and cannot be used as a member name.");Object.defineProperty(m.prototype,x,u(g,_))}var b=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}(h);return b.prototype.members=c,b.prototype.StructType=m,b.prototype.bytesPerElement=d,b.prototype.emplaceBack=s(c,d),b.prototype._usedTypes=l,f[e]=b,b}function n(t,e){return Math.ceil(t/e)*e}function o(t){return c[t].BYTES_PER_ELEMENT}function a(t){return t.toLowerCase()}function s(t,e){for(var r=[],i=[],n="var i = this.length;\nthis.resize(this.length + 1);\n",s=0,l=t;s<l.length;s+=1){var u=l[s],c=o(u.type);r.indexOf(c)<0&&(r.push(c),n+="var o"+c.toFixed(0)+" = i * "+(e/c).toFixed(0)+";\n");for(var p=0;p<u.components;p++){var h="v"+i.length,f="o"+c.toFixed(0)+" + "+(u.offset/c+p).toFixed(0);n+="this."+a(u.type)+"["+f+"] = "+h+";\n",i.push(h)}}return n+="return i;",new Function(i.toString(),n)}function l(t,e){var r="this._pos"+o(t.type).toFixed(0),i=(t.offset/o(t.type)+e).toFixed(0),n=r+" + "+i;return"this._structArray."+a(t.type)+"["+n+"]"}function u(t,e){var r=l(t,e);return{get:new Function("return "+r+";"),set:new Function("x",r+" = x;")}}e.exports=i;var c={Int8:Int8Array,Uint8:Uint8Array,Int16:Int16Array,Uint16:Uint16Array,Int32:Int32Array,Uint32:Uint32Array,Float32:Float32Array},p=function(t,e){this._structArray=t,this._pos1=e*this.size,this._pos2=this._pos1/2,this._pos4=this._pos1/4,this._pos8=this._pos1/8},h=function(t){this.isTransferred=!1,void 0!==t?(this.arrayBuffer=t.arrayBuffer,this.length=t.length,this.capacity=this.arrayBuffer.byteLength/this.bytesPerElement,this._refreshViews()):(this.capacity=-1,this.resize(0))};h.serialize=function(){return{members:this.prototype.members,alignment:this.prototype.StructType.prototype.alignment}},h.prototype.serialize=function(t){return this._trim(),t&&(this.isTransferred=!0,t.push(this.arrayBuffer)),{length:this.length,arrayBuffer:this.arrayBuffer}},h.prototype.get=function(t){return new this.StructType(this,t)},h.prototype._trim=function(){this.length!==this.capacity&&(this.capacity=this.length,this.arrayBuffer=this.arrayBuffer.slice(0,this.length*this.bytesPerElement),this._refreshViews())},h.prototype.clear=function(){this.length=0},h.prototype.resize=function(t){if(this.length=t,t>this.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)}},h.prototype._refreshViews=function(){for(var t=this,e=0,r=t._usedTypes;e<r.length;e+=1){var i=r[e];t[a(i)]=new c[i](t.arrayBuffer)}},h.prototype.toArray=function(t,e){for(var r=this,i=[],n=t;n<e;n++){var o=r.get(n);i.push(o)}return i};var f={}},{}],221:[function(t,e,r){"use strict";var i=t("./browser"),n=function(t,e){this.frequency=t,this.throttledFunction=e,this.lastInvocation=0};n.prototype.invoke=function(){var t=this;if(!this.pendingInvocation){var e=0===this.lastInvocation?0:this.lastInvocation+this.frequency-i.now();e<=0?(this.lastInvocation=i.now(),this.throttledFunction()):this.pendingInvocation=setTimeout(function(){t.pendingInvocation=void 0,t.lastInvocation=i.now(),t.throttledFunction()},e)}},n.prototype.stop=function(){this.pendingInvocation&&(clearTimeout(this.pendingInvocation),this.pendingInvocation=void 0)},e.exports=n},{"./browser":202}],222:[function(t,e,r){"use strict";function i(t,e){return e.replace(/{([^{}]+)}/g,function(e,r){return r in t?String(t[r]):""})}e.exports=i},{}],223:[function(t,e,r){"use strict";var i=t("@mapbox/unitbezier"),n=t("../geo/coordinate");t("@mapbox/point-geometry");r.easeCubicInOut=function(t){if(t<=0)return 0;if(t>=1)return 1;var e=t*t,r=e*t;return 4*(t<.5?r:3*(t-e)+r-.75)},r.bezier=function(t,e,r,n){var o=new i(t,e,r,n);return function(t){return o.solve(t)}},r.ease=r.bezier(.25,.1,.25,1),r.clamp=function(t,e,r){return Math.min(r,Math.max(e,t))},r.wrap=function(t,e,r){var i=r-e,n=((t-e)%i+i)%i+e;return n===e?r:n},r.asyncAll=function(t,e,r){if(!t.length)return r(null,[]);var i=t.length,n=new Array(t.length),o=null;t.forEach(function(t,a){e(t,function(t,e){t&&(o=t),n[a]=e,0==--i&&r(o,n)})})},r.values=function(t){var e=[];for(var r in t)e.push(t[r]);return e},r.keysDifference=function(t,e){var r=[];for(var i in t)i in e||r.push(i);return r},r.extend=function(t){for(var e=[],r=arguments.length-1;r-- >0;)e[r]=arguments[r+1];for(var i=0,n=e;i<n.length;i+=1){var o=n[i];for(var a in o)t[a]=o[a]}return t},r.pick=function(t,e){for(var r={},i=0;i<e.length;i++){var n=e[i];n in t&&(r[n]=t[n])}return r};var o=1;r.uniqueId=function(){return o++},r.bindAll=function(t,e){t.forEach(function(t){e[t]&&(e[t]=e[t].bind(e))})},r.getCoordinatesCenter=function(t){for(var e=1/0,r=1/0,i=-1/0,o=-1/0,a=0;a<t.length;a++)e=Math.min(e,t[a].column),r=Math.min(r,t[a].row),i=Math.max(i,t[a].column),o=Math.max(o,t[a].row);var s=i-e,l=o-r,u=Math.max(s,l),c=Math.max(0,Math.floor(-Math.log(u)/Math.LN2));return new n((e+i)/2,(r+o)/2,0).zoomTo(c)},r.endsWith=function(t,e){return-1!==t.indexOf(e,t.length-e.length)},r.mapObject=function(t,e,r){var i=this,n={};for(var o in t)n[o]=e.call(r||i,t[o],o,t);return n},r.filterObject=function(t,e,r){var i=this,n={};for(var o in t)e.call(r||i,t[o],o,t)&&(n[o]=t[o]);return n},r.deepEqual=function(t,e){if(Array.isArray(t)){if(!Array.isArray(e)||t.length!==e.length)return!1;for(var i=0;i<t.length;i++)if(!r.deepEqual(t[i],e[i]))return!1;return!0}if("object"==typeof t&&null!==t&&null!==e){if("object"!=typeof e)return!1;if(Object.keys(t).length!==Object.keys(e).length)return!1;for(var n in t)if(!r.deepEqual(t[n],e[n]))return!1;return!0}return t===e},r.clone=function(t){return Array.isArray(t)?t.map(r.clone):"object"==typeof t&&t?r.mapObject(t,r.clone):t},r.arraysIntersect=function(t,e){for(var r=0;r<t.length;r++)if(e.indexOf(t[r])>=0)return!0;return!1};var a={};r.warnOnce=function(t){a[t]||("undefined"!=typeof console&&console.warn(t),a[t]=!0)},r.isCounterClockwise=function(t,e,r){return(r.y-t.y)*(e.x-t.x)>(e.y-t.y)*(r.x-t.x)},r.calculateSignedArea=function(t){for(var e=0,r=0,i=t.length,n=i-1,o=void 0,a=void 0;r<i;n=r++)o=t[r],a=t[n],e+=(a.x-o.x)*(o.y+a.y);return e},r.isClosedPolygon=function(t){if(t.length<4)return!1;var e=t[0],i=t[t.length-1];return!(Math.abs(e.x-i.x)>0||Math.abs(e.y-i.y)>0)&&Math.abs(r.calculateSignedArea(t))>.01},r.sphericalToCartesian=function(t){var e=t[0],r=t[1],i=t[2];return r+=90,r*=Math.PI/180,i*=Math.PI/180,[e*Math.cos(r)*Math.sin(i),e*Math.sin(r)*Math.sin(i),e*Math.cos(i)]},r.parseCacheControl=function(t){var e=/(?:^|(?:\s*\,\s*))([^\x00-\x20\(\)<>@\,;\:\\"\/\[\]\?\=\{\}\x7F]+)(?:\=(?:([^\x00-\x20\(\)<>@\,;\:\\"\/\[\]\?\=\{\}\x7F]+)|(?:\"((?:[^"\\]|\\.)*)\")))?/g,r={};if(t.replace(e,function(t,e,i,n){var o=i||n;return r[e]=!o||o.toLowerCase(),""}),r["max-age"]){var i=parseInt(r["max-age"],10);isNaN(i)?delete r["max-age"]:r["max-age"]=i}return r}},{"../geo/coordinate":57,"@mapbox/point-geometry":2,"@mapbox/unitbezier":5}],224:[function(t,e,r){"use strict";var i=function(t,e,r,i){this.type="Feature",this._vectorTileFeature=t,t._z=e,t._x=r,t._y=i,this.properties=t.properties,null!=t.id&&(this.id=t.id)},n={geometry:{}};n.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},n.geometry.set=function(t){this._geometry=t},i.prototype.toJSON=function(){var t=this,e={geometry:this.geometry};for(var r in t)"_geometry"!==r&&"_vectorTileFeature"!==r&&(e[r]=t[r]);return e},Object.defineProperties(i.prototype,n),e.exports=i},{}],225:[function(t,e,r){"use strict";var i=t("./script_detection");e.exports=function(t){for(var r="",n=0;n<t.length;n++){var o=t.charCodeAt(n+1)||null,a=t.charCodeAt(n-1)||null;o&&i.charHasRotatedVerticalOrientation(o)&&!e.exports.lookup[t[n+1]]||a&&i.charHasRotatedVerticalOrientation(a)&&!e.exports.lookup[t[n-1]]||!e.exports.lookup[t[n]]?r+=t[n]:r+=e.exports.lookup[t[n]]}return r},e.exports.lookup={"!":"︕","#":"#",$:"$","%":"%","&":"&","(":"︵",")":"︶","*":"*","+":"+",",":"︐","-":"︲",".":"・","/":"/",":":"︓",";":"︔","<":"︿","=":"=",">":"﹀","?":"︖","@":"@","[":"﹇","\\":"\","]":"﹈","^":"^",_:"︳","`":"`","{":"︷","|":"―","}":"︸","~":"~","¢":"¢","£":"£","¥":"¥","¦":"¦","¬":"¬","¯":" ̄","–":"︲","—":"︱","‘":"﹃","’":"﹄","“":"﹁","”":"﹂","…":"︙","‧":"・","₩":"₩","、":"︑","。":"︒","〈":"︿","〉":"﹀","《":"︽","》":"︾","「":"﹁","」":"﹂","『":"﹃","』":"﹄","【":"︻","】":"︼","〔":"︹","〕":"︺","〖":"︗","〗":"︘","!":"︕","(":"︵",")":"︶",",":"︐","-":"︲",".":"・",":":"︓",";":"︔","<":"︿",">":"﹀","?":"︖","[":"﹇","]":"﹈","_":"︳","{":"︷","|":"―","}":"︸","⦅":"︵","⦆":"︶","。":"︒","「":"﹁","」":"﹂"}},{"./script_detection":218}],226:[function(t,e,r){"use strict";var i=t("./web_worker"),n=function(){this.active={}};n.prototype.acquire=function(e){var r=this;if(!this.workers){var n=t("../").workerCount;for(this.workers=[];this.workers.length<n;)r.workers.push(new i)}return this.active[e]=!0,this.workers.slice()},n.prototype.release=function(t){delete this.active[t],0===Object.keys(this.active).length&&(this.workers.forEach(function(t){t.terminate()}),this.workers=null)},e.exports=n},{"../":63,"./web_worker":203}]},{},[63])(63)})}).call(e,r(0))},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=r(1),n=r.n(i),o=r(3),a=r(7);n.a.accessToken="pk.eyJ1IjoieXV2YWRtIiwiYSI6ImNpcnMxbzBuaTAwZWdoa25oczlzZmkwbHcifQ.UHtLngbKm9O8945pJm23Nw";new o.a({el:"#app",render:function(t){return t(a.a)}})},function(t,e,r){"use strict";(function(t,r){/*!
+!function(t){function e(n){if(r[n])return r[n].exports;var i=r[n]={i:n,l:!1,exports:{}};return t[n].call(i.exports,i,i.exports,e),i.l=!0,i.exports}var r={};e.m=t,e.c=r,e.d=function(t,r,n){e.o(t,r)||Object.defineProperty(t,r,{configurable:!1,enumerable:!0,get:n})},e.n=function(t){var r=t&&t.__esModule?function(){return t.default}:function(){return t};return e.d(r,"a",r),r},e.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},e.p="/static/js/",e(e.s=2)}([function(t,e){var r;r=function(){return this}();try{r=r||Function("return this")()||(0,eval)("this")}catch(t){"object"===typeof window&&(r=window)}t.exports=r},function(t,e,r){(function(e){var r,r;!function(e){t.exports=e()}(function(){var t;return function t(e,n,i){function o(s,l){if(!n[s]){if(!e[s]){var u="function"==typeof r&&r;if(!l&&u)return r(s,!0);if(a)return a(s,!0);var c=new Error("Cannot find module '"+s+"'");throw c.code="MODULE_NOT_FOUND",c}var p=n[s]={exports:{}};e[s][0].call(p.exports,function(t){var r=e[s][1][t];return o(r||t)},p,p.exports,t,e,n,i)}return n[s].exports}for(var a="function"==typeof r&&r,s=0;s<i.length;s++)o(i[s]);return o}({1:[function(e,r,n){!function(e,i){"object"==typeof n&&"undefined"!=typeof r?r.exports=i():"function"==typeof t&&t.amd?t(i):e.glMatrix=i()}(this,function(){"use strict";function t(t,e,r){var n=e[0],i=e[1],o=e[2];return t[0]=n*r[0]+i*r[3]+o*r[6],t[1]=n*r[1]+i*r[4]+o*r[7],t[2]=n*r[2]+i*r[5]+o*r[8],t}function e(t,e,r){var n=e[0],i=e[1],o=e[2],a=e[3];return t[0]=r[0]*n+r[4]*i+r[8]*o+r[12]*a,t[1]=r[1]*n+r[5]*i+r[9]*o+r[13]*a,t[2]=r[2]*n+r[6]*i+r[10]*o+r[14]*a,t[3]=r[3]*n+r[7]*i+r[11]*o+r[15]*a,t}function r(){var t=new Float32Array(4);return t[0]=1,t[1]=0,t[2]=0,t[3]=1,t}function n(t,e,r){var n=e[0],i=e[1],o=e[2],a=e[3],s=Math.sin(r),l=Math.cos(r);return t[0]=n*l+o*s,t[1]=i*l+a*s,t[2]=n*-s+o*l,t[3]=i*-s+a*l,t}function i(t,e,r){var n=e[0],i=e[1],o=e[2],a=e[3],s=r[0],l=r[1];return t[0]=n*s,t[1]=i*s,t[2]=o*l,t[3]=a*l,t}function o(){var t=new Float32Array(9);return t[0]=1,t[1]=0,t[2]=0,t[3]=0,t[4]=1,t[5]=0,t[6]=0,t[7]=0,t[8]=1,t}function a(t,e){var r=Math.sin(e),n=Math.cos(e);return t[0]=n,t[1]=r,t[2]=0,t[3]=-r,t[4]=n,t[5]=0,t[6]=0,t[7]=0,t[8]=1,t}function s(){var t=new Float32Array(16);return t[0]=1,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=1,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[10]=1,t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,t}function l(t){return t[0]=1,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=1,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[10]=1,t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,t}function u(t,e){var r=e[0],n=e[1],i=e[2],o=e[3],a=e[4],s=e[5],l=e[6],u=e[7],c=e[8],p=e[9],h=e[10],f=e[11],d=e[12],m=e[13],v=e[14],y=e[15],g=r*s-n*a,_=r*l-i*a,x=r*u-o*a,b=n*l-i*s,w=n*u-o*s,T=i*u-o*l,S=c*m-p*d,z=c*v-h*d,A=c*y-f*d,C=p*v-h*m,E=p*y-f*m,k=h*y-f*v,M=g*k-_*E+x*C+b*A-w*z+T*S;return M?(M=1/M,t[0]=(s*k-l*E+u*C)*M,t[1]=(i*E-n*k-o*C)*M,t[2]=(m*T-v*w+y*b)*M,t[3]=(h*w-p*T-f*b)*M,t[4]=(l*A-a*k-u*z)*M,t[5]=(r*k-i*A+o*z)*M,t[6]=(v*x-d*T-y*_)*M,t[7]=(c*T-h*x+f*_)*M,t[8]=(a*E-s*A+u*S)*M,t[9]=(n*A-r*E-o*S)*M,t[10]=(d*w-m*x+y*g)*M,t[11]=(p*x-c*w-f*g)*M,t[12]=(s*z-a*C-l*S)*M,t[13]=(r*C-n*z+i*S)*M,t[14]=(m*_-d*b-v*g)*M,t[15]=(c*b-p*_+h*g)*M,t):null}function c(t,e,r){var n=e[0],i=e[1],o=e[2],a=e[3],s=e[4],l=e[5],u=e[6],c=e[7],p=e[8],h=e[9],f=e[10],d=e[11],m=e[12],v=e[13],y=e[14],g=e[15],_=r[0],x=r[1],b=r[2],w=r[3];return t[0]=_*n+x*s+b*p+w*m,t[1]=_*i+x*l+b*h+w*v,t[2]=_*o+x*u+b*f+w*y,t[3]=_*a+x*c+b*d+w*g,_=r[4],x=r[5],b=r[6],w=r[7],t[4]=_*n+x*s+b*p+w*m,t[5]=_*i+x*l+b*h+w*v,t[6]=_*o+x*u+b*f+w*y,t[7]=_*a+x*c+b*d+w*g,_=r[8],x=r[9],b=r[10],w=r[11],t[8]=_*n+x*s+b*p+w*m,t[9]=_*i+x*l+b*h+w*v,t[10]=_*o+x*u+b*f+w*y,t[11]=_*a+x*c+b*d+w*g,_=r[12],x=r[13],b=r[14],w=r[15],t[12]=_*n+x*s+b*p+w*m,t[13]=_*i+x*l+b*h+w*v,t[14]=_*o+x*u+b*f+w*y,t[15]=_*a+x*c+b*d+w*g,t}function p(t,e,r){var n,i,o,a,s,l,u,c,p,h,f,d,m=r[0],v=r[1],y=r[2];return e===t?(t[12]=e[0]*m+e[4]*v+e[8]*y+e[12],t[13]=e[1]*m+e[5]*v+e[9]*y+e[13],t[14]=e[2]*m+e[6]*v+e[10]*y+e[14],t[15]=e[3]*m+e[7]*v+e[11]*y+e[15]):(n=e[0],i=e[1],o=e[2],a=e[3],s=e[4],l=e[5],u=e[6],c=e[7],p=e[8],h=e[9],f=e[10],d=e[11],t[0]=n,t[1]=i,t[2]=o,t[3]=a,t[4]=s,t[5]=l,t[6]=u,t[7]=c,t[8]=p,t[9]=h,t[10]=f,t[11]=d,t[12]=n*m+s*v+p*y+e[12],t[13]=i*m+l*v+h*y+e[13],t[14]=o*m+u*v+f*y+e[14],t[15]=a*m+c*v+d*y+e[15]),t}function h(t,e,r){var n=r[0],i=r[1],o=r[2];return t[0]=e[0]*n,t[1]=e[1]*n,t[2]=e[2]*n,t[3]=e[3]*n,t[4]=e[4]*i,t[5]=e[5]*i,t[6]=e[6]*i,t[7]=e[7]*i,t[8]=e[8]*o,t[9]=e[9]*o,t[10]=e[10]*o,t[11]=e[11]*o,t[12]=e[12],t[13]=e[13],t[14]=e[14],t[15]=e[15],t}function f(t,e,r){var n=Math.sin(r),i=Math.cos(r),o=e[4],a=e[5],s=e[6],l=e[7],u=e[8],c=e[9],p=e[10],h=e[11];return e!==t&&(t[0]=e[0],t[1]=e[1],t[2]=e[2],t[3]=e[3],t[12]=e[12],t[13]=e[13],t[14]=e[14],t[15]=e[15]),t[4]=o*i+u*n,t[5]=a*i+c*n,t[6]=s*i+p*n,t[7]=l*i+h*n,t[8]=u*i-o*n,t[9]=c*i-a*n,t[10]=p*i-s*n,t[11]=h*i-l*n,t}function d(t,e,r){var n=Math.sin(r),i=Math.cos(r),o=e[0],a=e[1],s=e[2],l=e[3],u=e[4],c=e[5],p=e[6],h=e[7];return e!==t&&(t[8]=e[8],t[9]=e[9],t[10]=e[10],t[11]=e[11],t[12]=e[12],t[13]=e[13],t[14]=e[14],t[15]=e[15]),t[0]=o*i+u*n,t[1]=a*i+c*n,t[2]=s*i+p*n,t[3]=l*i+h*n,t[4]=u*i-o*n,t[5]=c*i-a*n,t[6]=p*i-s*n,t[7]=h*i-l*n,t}function m(t,e,r,n,i){var o=1/Math.tan(e/2),a=1/(n-i);return t[0]=o/r,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=o,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[10]=(i+n)*a,t[11]=-1,t[12]=0,t[13]=0,t[14]=2*i*n*a,t[15]=0,t}function v(t,e,r,n,i,o,a){var s=1/(e-r),l=1/(n-i),u=1/(o-a);return t[0]=-2*s,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=-2*l,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[10]=2*u,t[11]=0,t[12]=(e+r)*s,t[13]=(i+n)*l,t[14]=(a+o)*u,t[15]=1,t}return function(){var t=new Float32Array(3);t[0]=0,t[1]=0,t[2]=0}(),function(){var t=new Float32Array(4);t[0]=0,t[1]=0,t[2]=0,t[3]=0}(),{vec3:{transformMat3:t},vec4:{transformMat4:e},mat2:{create:r,rotate:n,scale:i},mat3:{create:o,fromRotation:a},mat4:{create:s,identity:l,translate:p,scale:h,multiply:c,perspective:m,rotateX:f,rotateZ:d,invert:u,ortho:v}}})},{}],2:[function(t,e,r){"use strict";function n(t,e){this.x=t,this.y=e}e.exports=n,n.prototype={clone:function(){return new n(this.x,this.y)},add:function(t){return this.clone()._add(t)},sub:function(t){return this.clone()._sub(t)},multByPoint:function(t){return this.clone()._multByPoint(t)},divByPoint:function(t){return this.clone()._divByPoint(t)},mult:function(t){return this.clone()._mult(t)},div:function(t){return this.clone()._div(t)},rotate:function(t){return this.clone()._rotate(t)},rotateAround:function(t,e){return this.clone()._rotateAround(t,e)},matMult:function(t){return this.clone()._matMult(t)},unit:function(){return this.clone()._unit()},perp:function(){return this.clone()._perp()},round:function(){return this.clone()._round()},mag:function(){return Math.sqrt(this.x*this.x+this.y*this.y)},equals:function(t){return this.x===t.x&&this.y===t.y},dist:function(t){return Math.sqrt(this.distSqr(t))},distSqr:function(t){var e=t.x-this.x,r=t.y-this.y;return e*e+r*r},angle:function(){return Math.atan2(this.y,this.x)},angleTo:function(t){return Math.atan2(this.y-t.y,this.x-t.x)},angleWith:function(t){return this.angleWithSep(t.x,t.y)},angleWithSep:function(t,e){return Math.atan2(this.x*e-this.y*t,this.x*t+this.y*e)},_matMult:function(t){var e=t[0]*this.x+t[1]*this.y,r=t[2]*this.x+t[3]*this.y;return this.x=e,this.y=r,this},_add:function(t){return this.x+=t.x,this.y+=t.y,this},_sub:function(t){return this.x-=t.x,this.y-=t.y,this},_mult:function(t){return this.x*=t,this.y*=t,this},_div:function(t){return this.x/=t,this.y/=t,this},_multByPoint:function(t){return this.x*=t.x,this.y*=t.y,this},_divByPoint:function(t){return this.x/=t.x,this.y/=t.y,this},_unit:function(){return this._div(this.mag()),this},_perp:function(){var t=this.y;return this.y=this.x,this.x=-t,this},_rotate:function(t){var e=Math.cos(t),r=Math.sin(t),n=e*this.x-r*this.y,i=r*this.x+e*this.y;return this.x=n,this.y=i,this},_rotateAround:function(t,e){var r=Math.cos(t),n=Math.sin(t),i=e.x+r*(this.x-e.x)-n*(this.y-e.y),o=e.y+n*(this.x-e.x)+r*(this.y-e.y);return this.x=i,this.y=o,this},_round:function(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this}},n.convert=function(t){return t instanceof n?t:Array.isArray(t)?new n(t[0],t[1]):t}},{}],3:[function(e,r,n){!function(e,i){"object"==typeof n&&"undefined"!=typeof r?r.exports=i():"function"==typeof t&&t.amd?t(i):e.ShelfPack=i()}(this,function(){function t(t,e,r){r=r||{},this.w=t||64,this.h=e||64,this.autoResize=!!r.autoResize,this.shelves=[],this.freebins=[],this.stats={},this.bins={},this.maxId=0}function e(t,e,r){this.x=0,this.y=t,this.w=this.free=e,this.h=r}function r(t,e,r,n,i,o,a){this.id=t,this.x=e,this.y=r,this.w=n,this.h=i,this.maxw=o||n,this.maxh=a||i,this.refcount=0}return t.prototype.pack=function(t,e){t=[].concat(t),e=e||{};for(var r,n,i,o,a=[],s=0;s<t.length;s++)if(r=t[s].w||t[s].width,n=t[s].h||t[s].height,i=t[s].id,r&&n){if(!(o=this.packOne(r,n,i)))continue;e.inPlace&&(t[s].x=o.x,t[s].y=o.y,t[s].id=o.id),a.push(o)}return this.shrink(),a},t.prototype.packOne=function(t,r,n){var i,o,a,s,l={freebin:-1,shelf:-1,waste:1/0},u=0;if("string"==typeof n||"number"==typeof n){if(i=this.getBin(n))return this.ref(i),i;"number"==typeof n&&(this.maxId=Math.max(n,this.maxId))}else n=++this.maxId;for(s=0;s<this.freebins.length;s++){if(i=this.freebins[s],r===i.maxh&&t===i.maxw)return this.allocFreebin(s,t,r,n);r>i.maxh||t>i.maxw||r<=i.maxh&&t<=i.maxw&&(a=i.maxw*i.maxh-t*r)<l.waste&&(l.waste=a,l.freebin=s)}for(s=0;s<this.shelves.length;s++)if(o=this.shelves[s],u+=o.h,!(t>o.free)){if(r===o.h)return this.allocShelf(s,t,r,n);r>o.h||r<o.h&&(a=(o.h-r)*t)<l.waste&&(l.freebin=-1,l.waste=a,l.shelf=s)}if(-1!==l.freebin)return this.allocFreebin(l.freebin,t,r,n);if(-1!==l.shelf)return this.allocShelf(l.shelf,t,r,n);if(r<=this.h-u&&t<=this.w)return o=new e(u,this.w,r),this.allocShelf(this.shelves.push(o)-1,t,r,n);if(this.autoResize){var c,p,h,f;return c=p=this.h,h=f=this.w,(h<=c||t>h)&&(f=2*Math.max(t,h)),(c<h||r>c)&&(p=2*Math.max(r,c)),this.resize(f,p),this.packOne(t,r,n)}return null},t.prototype.allocFreebin=function(t,e,r,n){var i=this.freebins.splice(t,1)[0];return i.id=n,i.w=e,i.h=r,i.refcount=0,this.bins[n]=i,this.ref(i),i},t.prototype.allocShelf=function(t,e,r,n){var i=this.shelves[t],o=i.alloc(e,r,n);return this.bins[n]=o,this.ref(o),o},t.prototype.shrink=function(){if(this.shelves.length>0){for(var t=0,e=0,r=0;r<this.shelves.length;r++){var n=this.shelves[r];e+=n.h,t=Math.max(n.w-n.free,t)}this.resize(t,e)}},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 r=0;r<this.shelves.length;r++)this.shelves[r].resize(t);return!0},e.prototype.alloc=function(t,e,n){if(t>this.free||e>this.h)return null;var i=this.x;return this.x+=t,this.free-=t,new r(n,i,this.y,t,e,t,this.h)},e.prototype.resize=function(t){return this.free+=t-this.w,this.w=t,!0},t})},{}],4:[function(t,e,r){"use strict";function n(t,e,r,n,i,o){this.fontSize=t||24,this.buffer=void 0===e?3:e,this.cutoff=n||.25,this.fontFamily=i||"sans-serif",this.fontWeight=o||"normal",this.radius=r||8;var a=this.size=this.fontSize+2*this.buffer;this.canvas=document.createElement("canvas"),this.canvas.width=this.canvas.height=a,this.ctx=this.canvas.getContext("2d"),this.ctx.font=this.fontWeight+" "+this.fontSize+"px "+this.fontFamily,this.ctx.textBaseline="middle",this.ctx.fillStyle="black",this.gridOuter=new Float64Array(a*a),this.gridInner=new Float64Array(a*a),this.f=new Float64Array(a),this.d=new Float64Array(a),this.z=new Float64Array(a+1),this.v=new Int16Array(a),this.middle=Math.round(a/2*(navigator.userAgent.indexOf("Gecko/")>=0?1.2:1))}function i(t,e,r,n,i,a,s){for(var l=0;l<e;l++){for(var u=0;u<r;u++)n[u]=t[u*e+l];for(o(n,i,a,s,r),u=0;u<r;u++)t[u*e+l]=i[u]}for(u=0;u<r;u++){for(l=0;l<e;l++)n[l]=t[u*e+l];for(o(n,i,a,s,e),l=0;l<e;l++)t[u*e+l]=Math.sqrt(i[l])}}function o(t,e,r,n,i){r[0]=0,n[0]=-a,n[1]=+a;for(var o=1,s=0;o<i;o++){for(var l=(t[o]+o*o-(t[r[s]]+r[s]*r[s]))/(2*o-2*r[s]);l<=n[s];)s--,l=(t[o]+o*o-(t[r[s]]+r[s]*r[s]))/(2*o-2*r[s]);s++,r[s]=o,n[s]=l,n[s+1]=+a}for(o=0,s=0;o<i;o++){for(;n[s+1]<o;)s++;e[o]=(o-r[s])*(o-r[s])+t[r[s]]}}e.exports=n;var a=1e20;n.prototype.draw=function(t){this.ctx.clearRect(0,0,this.size,this.size),this.ctx.fillText(t,this.buffer,this.middle);for(var e=this.ctx.getImageData(0,0,this.size,this.size),r=new Uint8ClampedArray(this.size*this.size),n=0;n<this.size*this.size;n++){var o=e.data[4*n+3]/255;this.gridOuter[n]=1===o?0:0===o?a:Math.pow(Math.max(0,.5-o),2),this.gridInner[n]=1===o?a:0===o?0:Math.pow(Math.max(0,o-.5),2)}for(i(this.gridOuter,this.size,this.size,this.f,this.d,this.v,this.z),i(this.gridInner,this.size,this.size,this.f,this.d,this.v,this.z),n=0;n<this.size*this.size;n++){var s=this.gridOuter[n]-this.gridInner[n];r[n]=Math.max(0,Math.min(255,Math.round(255-255*(s/this.radius+this.cutoff))))}return r}},{}],5:[function(t,e,r){function n(t,e,r,n){this.cx=3*t,this.bx=3*(r-t)-this.cx,this.ax=1-this.cx-this.bx,this.cy=3*e,this.by=3*(n-e)-this.cy,this.ay=1-this.cy-this.by,this.p1x=t,this.p1y=n,this.p2x=r,this.p2y=n}e.exports=n,n.prototype.sampleCurveX=function(t){return((this.ax*t+this.bx)*t+this.cx)*t},n.prototype.sampleCurveY=function(t){return((this.ay*t+this.by)*t+this.cy)*t},n.prototype.sampleCurveDerivativeX=function(t){return(3*this.ax*t+2*this.bx)*t+this.cx},n.prototype.solveCurveX=function(t,e){void 0===e&&(e=1e-6);var r,n,i,o,a;for(i=t,a=0;a<8;a++){if(o=this.sampleCurveX(i)-t,Math.abs(o)<e)return i;var s=this.sampleCurveDerivativeX(i);if(Math.abs(s)<1e-6)break;i-=o/s}if(r=0,n=1,(i=t)<r)return r;if(i>n)return n;for(;r<n;){if(o=this.sampleCurveX(i),Math.abs(o-t)<e)return i;t>o?r=i:n=i,i=.5*(n-r)+r}return i},n.prototype.solve=function(t,e){return this.sampleCurveY(this.solveCurveX(t,e))}},{}],6:[function(t,e,r){e.exports.VectorTile=t("./lib/vectortile.js"),e.exports.VectorTileFeature=t("./lib/vectortilefeature.js"),e.exports.VectorTileLayer=t("./lib/vectortilelayer.js")},{"./lib/vectortile.js":7,"./lib/vectortilefeature.js":8,"./lib/vectortilelayer.js":9}],7:[function(t,e,r){"use strict";function n(t,e){this.layers=t.readFields(i,{},e)}function i(t,e,r){if(3===t){var n=new o(r,r.readVarint()+r.pos);n.length&&(e[n.name]=n)}}var o=t("./vectortilelayer");e.exports=n},{"./vectortilelayer":9}],8:[function(t,e,r){"use strict";function n(t,e,r,n,o){this.properties={},this.extent=r,this.type=0,this._pbf=t,this._geometry=-1,this._keys=n,this._values=o,t.readFields(i,this,e)}function i(t,e,r){1==t?e.id=r.readVarint():2==t?o(r,e):3==t?e.type=r.readVarint():4==t&&(e._geometry=r.pos)}function o(t,e){for(var r=t.readVarint()+t.pos;t.pos<r;){var n=e._keys[t.readVarint()],i=e._values[t.readVarint()];e.properties[n]=i}}function a(t){var e=t.length;if(e<=1)return[t];for(var r,n,i=[],o=0;o<e;o++){var a=s(t[o]);0!==a&&(void 0===n&&(n=a<0),n===a<0?(r&&i.push(r),r=[t[o]]):r.push(t[o]))}return r&&i.push(r),i}function s(t){for(var e,r,n=0,i=0,o=t.length,a=o-1;i<o;a=i++)e=t[i],r=t[a],n+=(r.x-e.x)*(e.y+r.y);return n}var l=t("@mapbox/point-geometry");e.exports=n,n.types=["Unknown","Point","LineString","Polygon"],n.prototype.loadGeometry=function(){var t=this._pbf;t.pos=this._geometry;for(var e,r=t.readVarint()+t.pos,n=1,i=0,o=0,a=0,s=[];t.pos<r;){if(!i){var u=t.readVarint();n=7&u,i=u>>3}if(i--,1===n||2===n)o+=t.readSVarint(),a+=t.readSVarint(),1===n&&(e&&s.push(e),e=[]),e.push(new l(o,a));else{if(7!==n)throw new Error("unknown command "+n);e&&e.push(e[0].clone())}}return e&&s.push(e),s},n.prototype.bbox=function(){var t=this._pbf;t.pos=this._geometry;for(var e=t.readVarint()+t.pos,r=1,n=0,i=0,o=0,a=1/0,s=-1/0,l=1/0,u=-1/0;t.pos<e;){if(!n){var c=t.readVarint();r=7&c,n=c>>3}if(n--,1===r||2===r)i+=t.readSVarint(),o+=t.readSVarint(),i<a&&(a=i),i>s&&(s=i),o<l&&(l=o),o>u&&(u=o);else if(7!==r)throw new Error("unknown command "+r)}return[a,l,s,u]},n.prototype.toGeoJSON=function(t,e,r){function i(t){for(var e=0;e<t.length;e++){var r=t[e],n=180-360*(r.y+c)/l;t[e]=[360*(r.x+u)/l-180,360/Math.PI*Math.atan(Math.exp(n*Math.PI/180))-90]}}var o,s,l=this.extent*Math.pow(2,r),u=this.extent*t,c=this.extent*e,p=this.loadGeometry(),h=n.types[this.type];switch(this.type){case 1:var f=[];for(o=0;o<p.length;o++)f[o]=p[o][0];p=f,i(p);break;case 2:for(o=0;o<p.length;o++)i(p[o]);break;case 3:for(p=a(p),o=0;o<p.length;o++)for(s=0;s<p[o].length;s++)i(p[o][s])}1===p.length?p=p[0]:h="Multi"+h;var d={type:"Feature",geometry:{type:h,coordinates:p},properties:this.properties};return"id"in this&&(d.id=this.id),d}},{"@mapbox/point-geometry":2}],9:[function(t,e,r){"use strict";function n(t,e){this.version=1,this.name=null,this.extent=4096,this.length=0,this._pbf=t,this._keys=[],this._values=[],this._features=[],t.readFields(i,this,e),this.length=this._features.length}function i(t,e,r){15===t?e.version=r.readVarint():1===t?e.name=r.readString():5===t?e.extent=r.readVarint():2===t?e._features.push(r.pos):3===t?e._keys.push(r.readString()):4===t&&e._values.push(o(r))}function o(t){for(var e=null,r=t.readVarint()+t.pos;t.pos<r;){var n=t.readVarint()>>3;e=1===n?t.readString():2===n?t.readFloat():3===n?t.readDouble():4===n?t.readVarint64():5===n?t.readVarint():6===n?t.readSVarint():7===n?t.readBoolean():null}return e}var a=t("./vectortilefeature.js");e.exports=n,n.prototype.feature=function(t){if(t<0||t>=this._features.length)throw new Error("feature index out of bounds");this._pbf.pos=this._features[t];var e=this._pbf.readVarint()+this._pbf.pos;return new a(this._pbf,e,this.extent,this._keys,this._values)}},{"./vectortilefeature.js":8}],10:[function(e,r,n){!function(e,i){"object"==typeof n&&"undefined"!=typeof r?i(n):"function"==typeof t&&t.amd?t(["exports"],i):i(e.WhooTS=e.WhooTS||{})}(this,function(t){function e(t,e,n,i,o,a){return a=a||{},t+"?"+["bbox="+r(n,i,o),"format="+(a.format||"image/png"),"service="+(a.service||"WMS"),"version="+(a.version||"1.1.1"),"request="+(a.request||"GetMap"),"srs="+(a.srs||"EPSG:3857"),"width="+(a.width||256),"height="+(a.height||256),"layers="+e].join("&")}function r(t,e,r){e=Math.pow(2,r)-e-1;var i=n(256*t,256*e,r),o=n(256*(t+1),256*(e+1),r);return i[0]+","+i[1]+","+o[0]+","+o[1]}function n(t,e,r){var n=2*Math.PI*6378137/256/Math.pow(2,r);return[t*n-2*Math.PI*6378137/2,e*n-2*Math.PI*6378137/2]}t.getURL=e,t.getTileBBox=r,t.getMercCoords=n,Object.defineProperty(t,"__esModule",{value:!0})})},{}],11:[function(t,e,r){"use strict";function n(t,e,r){r=r||2;var n=e&&e.length,o=n?e[0]*r:t.length,s=i(t,0,o,r,!0),l=[];if(!s)return l;var u,c,h,f,d,m,v;if(n&&(s=p(t,e,s,r)),t.length>80*r){u=h=t[0],c=f=t[1];for(var y=r;y<o;y+=r)d=t[y],m=t[y+1],d<u&&(u=d),m<c&&(c=m),d>h&&(h=d),m>f&&(f=m);v=Math.max(h-u,f-c)}return a(s,l,r,u,c,v),l}function i(t,e,r,n,i){var o,a;if(i===L(t,e,r,n)>0)for(o=e;o<r;o+=n)a=E(o,t[o],t[o+1],a);else for(o=r-n;o>=e;o-=n)a=E(o,t[o],t[o+1],a);return a&&w(a,a.next)&&(k(a),a=a.next),a}function o(t,e){if(!t)return t;e||(e=t);var r,n=t;do{if(r=!1,n.steiner||!w(n,n.next)&&0!==b(n.prev,n,n.next))n=n.next;else{if(k(n),(n=e=n.prev)===n.next)return null;r=!0}}while(r||n!==e);return e}function a(t,e,r,n,i,p,h){if(t){!h&&p&&m(t,n,i,p);for(var f,d,v=t;t.prev!==t.next;)if(f=t.prev,d=t.next,p?l(t,n,i,p):s(t))e.push(f.i/r),e.push(t.i/r),e.push(d.i/r),k(t),t=d.next,v=d.next;else if((t=d)===v){h?1===h?(t=u(t,e,r),a(t,e,r,n,i,p,2)):2===h&&c(t,e,r,n,i,p):a(o(t),e,r,n,i,p,1);break}}}function s(t){var e=t.prev,r=t,n=t.next;if(b(e,r,n)>=0)return!1;for(var i=t.next.next;i!==t.prev;){if(_(e.x,e.y,r.x,r.y,n.x,n.y,i.x,i.y)&&b(i.prev,i,i.next)>=0)return!1;i=i.next}return!0}function l(t,e,r,n){var i=t.prev,o=t,a=t.next;if(b(i,o,a)>=0)return!1;for(var s=i.x<o.x?i.x<a.x?i.x:a.x:o.x<a.x?o.x:a.x,l=i.y<o.y?i.y<a.y?i.y:a.y:o.y<a.y?o.y:a.y,u=i.x>o.x?i.x>a.x?i.x:a.x:o.x>a.x?o.x:a.x,c=i.y>o.y?i.y>a.y?i.y:a.y:o.y>a.y?o.y:a.y,p=y(s,l,e,r,n),h=y(u,c,e,r,n),f=t.nextZ;f&&f.z<=h;){if(f!==t.prev&&f!==t.next&&_(i.x,i.y,o.x,o.y,a.x,a.y,f.x,f.y)&&b(f.prev,f,f.next)>=0)return!1;f=f.nextZ}for(f=t.prevZ;f&&f.z>=p;){if(f!==t.prev&&f!==t.next&&_(i.x,i.y,o.x,o.y,a.x,a.y,f.x,f.y)&&b(f.prev,f,f.next)>=0)return!1;f=f.prevZ}return!0}function u(t,e,r){var n=t;do{var i=n.prev,o=n.next.next;!w(i,o)&&T(i,n,n.next,o)&&z(i,o)&&z(o,i)&&(e.push(i.i/r),e.push(n.i/r),e.push(o.i/r),k(n),k(n.next),n=t=o),n=n.next}while(n!==t);return n}function c(t,e,r,n,i,s){var l=t;do{for(var u=l.next.next;u!==l.prev;){if(l.i!==u.i&&x(l,u)){var c=C(l,u);return l=o(l,l.next),c=o(c,c.next),a(l,e,r,n,i,s),void a(c,e,r,n,i,s)}u=u.next}l=l.next}while(l!==t)}function p(t,e,r,n){var a,s,l,u,c,p=[];for(a=0,s=e.length;a<s;a++)l=e[a]*n,u=a<s-1?e[a+1]*n:t.length,c=i(t,l,u,n,!1),c===c.next&&(c.steiner=!0),p.push(g(c));for(p.sort(h),a=0;a<p.length;a++)f(p[a],r),r=o(r,r.next);return r}function h(t,e){return t.x-e.x}function f(t,e){if(e=d(t,e)){var r=C(e,t);o(r,r.next)}}function d(t,e){var r,n=e,i=t.x,o=t.y,a=-1/0;do{if(o<=n.y&&o>=n.next.y){var s=n.x+(o-n.y)*(n.next.x-n.x)/(n.next.y-n.y);if(s<=i&&s>a){if(a=s,s===i){if(o===n.y)return n;if(o===n.next.y)return n.next}r=n.x<n.next.x?n:n.next}}n=n.next}while(n!==e);if(!r)return null;if(i===a)return r.prev;var l,u=r,c=r.x,p=r.y,h=1/0;for(n=r.next;n!==u;)i>=n.x&&n.x>=c&&_(o<p?i:a,o,c,p,o<p?a:i,o,n.x,n.y)&&((l=Math.abs(o-n.y)/(i-n.x))<h||l===h&&n.x>r.x)&&z(n,t)&&(r=n,h=l),n=n.next;return r}function m(t,e,r,n){var i=t;do{null===i.z&&(i.z=y(i.x,i.y,e,r,n)),i.prevZ=i.prev,i.nextZ=i.next,i=i.next}while(i!==t);i.prevZ.nextZ=null,i.prevZ=null,v(i)}function v(t){var e,r,n,i,o,a,s,l,u=1;do{for(r=t,t=null,o=null,a=0;r;){for(a++,n=r,s=0,e=0;e<u&&(s++,n=n.nextZ);e++);for(l=u;s>0||l>0&&n;)0===s?(i=n,n=n.nextZ,l--):0!==l&&n?r.z<=n.z?(i=r,r=r.nextZ,s--):(i=n,n=n.nextZ,l--):(i=r,r=r.nextZ,s--),o?o.nextZ=i:t=i,i.prevZ=o,o=i;r=n}o.nextZ=null,u*=2}while(a>1);return t}function y(t,e,r,n,i){return t=32767*(t-r)/i,e=32767*(e-n)/i,t=16711935&(t|t<<8),t=252645135&(t|t<<4),t=858993459&(t|t<<2),t=1431655765&(t|t<<1),e=16711935&(e|e<<8),e=252645135&(e|e<<4),e=858993459&(e|e<<2),e=1431655765&(e|e<<1),t|e<<1}function g(t){var e=t,r=t;do{e.x<r.x&&(r=e),e=e.next}while(e!==t);return r}function _(t,e,r,n,i,o,a,s){return(i-a)*(e-s)-(t-a)*(o-s)>=0&&(t-a)*(n-s)-(r-a)*(e-s)>=0&&(r-a)*(o-s)-(i-a)*(n-s)>=0}function x(t,e){return t.next.i!==e.i&&t.prev.i!==e.i&&!S(t,e)&&z(t,e)&&z(e,t)&&A(t,e)}function b(t,e,r){return(e.y-t.y)*(r.x-e.x)-(e.x-t.x)*(r.y-e.y)}function w(t,e){return t.x===e.x&&t.y===e.y}function T(t,e,r,n){return!!(w(t,e)&&w(r,n)||w(t,n)&&w(r,e))||b(t,e,r)>0!=b(t,e,n)>0&&b(r,n,t)>0!=b(r,n,e)>0}function S(t,e){var r=t;do{if(r.i!==t.i&&r.next.i!==t.i&&r.i!==e.i&&r.next.i!==e.i&&T(r,r.next,t,e))return!0;r=r.next}while(r!==t);return!1}function z(t,e){return b(t.prev,t,t.next)<0?b(t,e,t.next)>=0&&b(t,t.prev,e)>=0:b(t,e,t.prev)<0||b(t,t.next,e)<0}function A(t,e){var r=t,n=!1,i=(t.x+e.x)/2,o=(t.y+e.y)/2;do{r.y>o!=r.next.y>o&&i<(r.next.x-r.x)*(o-r.y)/(r.next.y-r.y)+r.x&&(n=!n),r=r.next}while(r!==t);return n}function C(t,e){var r=new M(t.i,t.x,t.y),n=new M(e.i,e.x,e.y),i=t.next,o=e.prev;return t.next=e,e.prev=t,r.next=i,i.prev=r,n.next=r,r.prev=n,o.next=n,n.prev=o,n}function E(t,e,r,n){var i=new M(t,e,r);return n?(i.next=n.next,i.prev=n,n.next.prev=i,n.next=i):(i.prev=i,i.next=i),i}function k(t){t.next.prev=t.prev,t.prev.next=t.next,t.prevZ&&(t.prevZ.nextZ=t.nextZ),t.nextZ&&(t.nextZ.prevZ=t.prevZ)}function M(t,e,r){this.i=t,this.x=e,this.y=r,this.prev=null,this.next=null,this.z=null,this.prevZ=null,this.nextZ=null,this.steiner=!1}function L(t,e,r,n){for(var i=0,o=e,a=r-n;o<r;o+=n)i+=(t[a]-t[o])*(t[o+1]+t[a+1]),a=o;return i}e.exports=n,n.deviation=function(t,e,r,n){var i=e&&e.length,o=i?e[0]*r:t.length,a=Math.abs(L(t,0,o,r));if(i)for(var s=0,l=e.length;s<l;s++){var u=e[s]*r,c=s<l-1?e[s+1]*r:t.length;a-=Math.abs(L(t,u,c,r))}var p=0;for(s=0;s<n.length;s+=3){var h=n[s]*r,f=n[s+1]*r,d=n[s+2]*r;p+=Math.abs((t[h]-t[d])*(t[f+1]-t[h+1])-(t[h]-t[f])*(t[d+1]-t[h+1]))}return 0===a&&0===p?0:Math.abs((p-a)/a)},n.flatten=function(t){for(var e=t[0][0].length,r={vertices:[],holes:[],dimensions:e},n=0,i=0;i<t.length;i++){for(var o=0;o<t[i].length;o++)for(var a=0;a<e;a++)r.vertices.push(t[i][o][a]);i>0&&(n+=t[i-1].length,r.holes.push(n))}return r}},{}],12:[function(t,e,r){function n(t){if("Polygon"===t.type)return i(t.coordinates);if("MultiPolygon"===t.type){for(var e=0,r=0;r<t.coordinates.length;r++)e+=i(t.coordinates[r]);return e}return null}function i(t){var e=0;if(t&&t.length>0){e+=Math.abs(o(t[0]));for(var r=1;r<t.length;r++)e-=Math.abs(o(t[r]))}return e}function o(t){var e=0;if(t.length>2){for(var r,n,i=0;i<t.length-1;i++)r=t[i],n=t[i+1],e+=a(n[0]-r[0])*(2+Math.sin(a(r[1]))+Math.sin(a(n[1])));e=e*s.RADIUS*s.RADIUS/2}return e}function a(t){return t*Math.PI/180}var s=t("wgs84");e.exports.geometry=n,e.exports.ring=o},{wgs84:40}],13:[function(t,e,r){function n(t,e){switch(t&&t.type||null){case"FeatureCollection":return t.features=t.features.map(i(n,e)),t;case"Feature":return t.geometry=n(t.geometry,e),t;case"Polygon":case"MultiPolygon":return o(t,e);default:return t}}function i(t,e){return function(r){return t(r,e)}}function o(t,e){return"Polygon"===t.type?t.coordinates=a(t.coordinates,e):"MultiPolygon"===t.type&&(t.coordinates=t.coordinates.map(i(a,e))),t}function a(t,e){e=!!e,t[0]=s(t[0],e);for(var r=1;r<t.length;r++)t[r]=s(t[r],!e);return t}function s(t,e){return l(t)===e?t:t.reverse()}function l(t){return u.ring(t)>=0}var u=t("geojson-area");e.exports=n},{"geojson-area":12}],14:[function(t,e,r){"use strict";function n(t,e,r,n,a,l,u,c){if(r/=e,n/=e,u>=r&&c<=n)return t;if(u>n||c<r)return null;for(var p=[],h=0;h<t.length;h++){var f,d,m=t[h],v=m.geometry,y=m.type;if(f=m.min[a],d=m.max[a],f>=r&&d<=n)p.push(m);else if(!(f>n||d<r)){var g=1===y?i(v,r,n,a):o(v,r,n,a,l,3===y);g.length&&p.push(s(m.tags,y,g,m.id))}}return p.length?p:null}function i(t,e,r,n){for(var i=[],o=0;o<t.length;o++){var a=t[o],s=a[n];s>=e&&s<=r&&i.push(a)}return i}function o(t,e,r,n,i,o){for(var s=[],l=0;l<t.length;l++){var u,c,p,h=0,f=0,d=null,m=t[l],v=m.area,y=m.dist,g=m.outer,_=m.length,x=[];for(c=0;c<_-1;c++)u=d||m[c],d=m[c+1],h=f||u[n],f=d[n],h<e?f>r?(x.push(i(u,d,e),i(u,d,r)),o||(x=a(s,x,v,y,g))):f>=e&&x.push(i(u,d,e)):h>r?f<e?(x.push(i(u,d,r),i(u,d,e)),o||(x=a(s,x,v,y,g))):f<=r&&x.push(i(u,d,r)):(x.push(u),f<e?(x.push(i(u,d,e)),o||(x=a(s,x,v,y,g))):f>r&&(x.push(i(u,d,r)),o||(x=a(s,x,v,y,g))));u=m[_-1],h=u[n],h>=e&&h<=r&&x.push(u),p=x[x.length-1],o&&p&&(x[0][0]!==p[0]||x[0][1]!==p[1])&&x.push(x[0]),a(s,x,v,y,g)}return s}function a(t,e,r,n,i){return e.length&&(e.area=r,e.dist=n,void 0!==i&&(e.outer=i),t.push(e)),[]}e.exports=n;var s=t("./feature")},{"./feature":16}],15:[function(t,e,r){"use strict";function n(t,e){var r=[];if("FeatureCollection"===t.type)for(var n=0;n<t.features.length;n++)i(r,t.features[n],e);else"Feature"===t.type?i(r,t,e):i(r,{geometry:t},e);return r}function i(t,e,r){if(null!==e.geometry){var n,s,l,c,p=e.geometry,h=p.type,f=p.coordinates,d=e.properties,m=e.id;if("Point"===h)t.push(u(d,1,[a(f)],m));else if("MultiPoint"===h)t.push(u(d,1,o(f),m));else if("LineString"===h)t.push(u(d,2,[o(f,r)],m));else if("MultiLineString"===h||"Polygon"===h){for(l=[],n=0;n<f.length;n++)c=o(f[n],r),"Polygon"===h&&(c.outer=0===n),l.push(c);t.push(u(d,"Polygon"===h?3:2,l,m))}else if("MultiPolygon"===h){for(l=[],n=0;n<f.length;n++)for(s=0;s<f[n].length;s++)c=o(f[n][s],r),c.outer=0===s,l.push(c);t.push(u(d,3,l,m))}else{if("GeometryCollection"!==h)throw new Error("Input data is not a valid GeoJSON object.");for(n=0;n<p.geometries.length;n++)i(t,{geometry:p.geometries[n],properties:d},r)}}}function o(t,e){for(var r=[],n=0;n<t.length;n++)r.push(a(t[n]));return e&&(l(r,e),s(r)),r}function a(t){var e=Math.sin(t[1]*Math.PI/180),r=t[0]/360+.5,n=.5-.25*Math.log((1+e)/(1-e))/Math.PI;return n=n<0?0:n>1?1:n,[r,n,0]}function s(t){for(var e,r,n=0,i=0,o=0;o<t.length-1;o++)e=r||t[o],r=t[o+1],n+=e[0]*r[1]-r[0]*e[1],i+=Math.abs(r[0]-e[0])+Math.abs(r[1]-e[1]);t.area=Math.abs(n/2),t.dist=i}e.exports=n;var l=t("./simplify"),u=t("./feature")},{"./feature":16,"./simplify":18}],16:[function(t,e,r){"use strict";function n(t,e,r,n){var o={id:n||null,type:e,geometry:r,tags:t||null,min:[1/0,1/0],max:[-1/0,-1/0]};return i(o),o}function i(t){var e=t.geometry,r=t.min,n=t.max;if(1===t.type)o(r,n,e);else for(var i=0;i<e.length;i++)o(r,n,e[i]);return t}function o(t,e,r){for(var n,i=0;i<r.length;i++)n=r[i],t[0]=Math.min(n[0],t[0]),e[0]=Math.max(n[0],e[0]),t[1]=Math.min(n[1],t[1]),e[1]=Math.max(n[1],e[1])}e.exports=n},{}],17:[function(t,e,r){"use strict";function n(t,e){return new i(t,e)}function i(t,e){e=this.options=l(Object.create(this.options),e);var r=e.debug;r&&console.time("preprocess data");var n=1<<e.maxZoom,i=c(t,e.tolerance/(n*e.extent));this.tiles={},this.tileCoords=[],r&&(console.timeEnd("preprocess data"),console.log("index: maxZoom: %d, maxPoints: %d",e.indexMaxZoom,e.indexMaxPoints),console.time("generate tiles"),this.stats={},this.total=0),i=f(i,e.buffer/e.extent,a),i.length&&this.splitTile(i,0,0,0),r&&(i.length&&console.log("features: %d, points: %d",this.tiles[0].numFeatures,this.tiles[0].numPoints),console.timeEnd("generate tiles"),console.log("tiles generated:",this.total,JSON.stringify(this.stats)))}function o(t,e,r){return 32*((1<<t)*r+e)+t}function a(t,e,r){return[r,(r-t[0])*(e[1]-t[1])/(e[0]-t[0])+t[1],1]}function s(t,e,r){return[(r-t[1])*(e[0]-t[0])/(e[1]-t[1])+t[0],r,1]}function l(t,e){for(var r in e)t[r]=e[r];return t}function u(t,e,r){var n=t.source;if(1!==n.length)return!1;var i=n[0];if(3!==i.type||i.geometry.length>1)return!1;var o=i.geometry[0].length;if(5!==o)return!1;for(var a=0;a<o;a++){var s=p.point(i.geometry[0][a],e,t.z2,t.x,t.y);if(s[0]!==-r&&s[0]!==e+r||s[1]!==-r&&s[1]!==e+r)return!1}return!0}e.exports=n;var c=t("./convert"),p=t("./transform"),h=t("./clip"),f=t("./wrap"),d=t("./tile");i.prototype.options={maxZoom:14,indexMaxZoom:5,indexMaxPoints:1e5,solidChildren:!1,tolerance:3,extent:4096,buffer:64,debug:0},i.prototype.splitTile=function(t,e,r,n,i,l,c){for(var p=[t,e,r,n],f=this.options,m=f.debug,v=null;p.length;){n=p.pop(),r=p.pop(),e=p.pop(),t=p.pop();var y=1<<e,g=o(e,r,n),_=this.tiles[g],x=e===f.maxZoom?0:f.tolerance/(y*f.extent);if(!_&&(m>1&&console.time("creation"),_=this.tiles[g]=d(t,y,r,n,x,e===f.maxZoom),this.tileCoords.push({z:e,x:r,y:n}),m)){m>1&&(console.log("tile z%d-%d-%d (features: %d, points: %d, simplified: %d)",e,r,n,_.numFeatures,_.numPoints,_.numSimplified),console.timeEnd("creation"));var b="z"+e;this.stats[b]=(this.stats[b]||0)+1,this.total++}if(_.source=t,i){if(e===f.maxZoom||e===i)continue;var w=1<<i-e;if(r!==Math.floor(l/w)||n!==Math.floor(c/w))continue}else if(e===f.indexMaxZoom||_.numPoints<=f.indexMaxPoints)continue;if(f.solidChildren||!u(_,f.extent,f.buffer)){_.source=null,m>1&&console.time("clipping");var T,S,z,A,C,E,k=.5*f.buffer/f.extent,M=.5-k,L=.5+k,I=1+k;T=S=z=A=null,C=h(t,y,r-k,r+L,0,a,_.min[0],_.max[0]),E=h(t,y,r+M,r+I,0,a,_.min[0],_.max[0]),C&&(T=h(C,y,n-k,n+L,1,s,_.min[1],_.max[1]),S=h(C,y,n+M,n+I,1,s,_.min[1],_.max[1])),E&&(z=h(E,y,n-k,n+L,1,s,_.min[1],_.max[1]),A=h(E,y,n+M,n+I,1,s,_.min[1],_.max[1])),m>1&&console.timeEnd("clipping"),t.length&&(p.push(T||[],e+1,2*r,2*n),p.push(S||[],e+1,2*r,2*n+1),p.push(z||[],e+1,2*r+1,2*n),p.push(A||[],e+1,2*r+1,2*n+1))}else i&&(v=e)}return v},i.prototype.getTile=function(t,e,r){var n=this.options,i=n.extent,a=n.debug,s=1<<t;e=(e%s+s)%s;var l=o(t,e,r);if(this.tiles[l])return p.tile(this.tiles[l],i);a>1&&console.log("drilling down to z%d-%d-%d",t,e,r);for(var c,h=t,f=e,d=r;!c&&h>0;)h--,f=Math.floor(f/2),d=Math.floor(d/2),c=this.tiles[o(h,f,d)];if(!c||!c.source)return null;if(a>1&&console.log("found parent tile z%d-%d-%d",h,f,d),u(c,i,n.buffer))return p.tile(c,i);a>1&&console.time("drilling down");var m=this.splitTile(c.source,h,f,d,t,e,r);if(a>1&&console.timeEnd("drilling down"),null!==m){var v=1<<t-m;l=o(m,Math.floor(e/v),Math.floor(r/v))}return this.tiles[l]?p.tile(this.tiles[l],i):null}},{"./clip":14,"./convert":15,"./tile":19,"./transform":20,"./wrap":21}],18:[function(t,e,r){"use strict";function n(t,e){var r,n,o,a,s=e*e,l=t.length,u=0,c=l-1,p=[];for(t[u][2]=1,t[c][2]=1;c;){for(n=0,r=u+1;r<c;r++)(o=i(t[r],t[u],t[c]))>n&&(a=r,n=o);n>s?(t[a][2]=n,p.push(u),p.push(a),u=a):(c=p.pop(),u=p.pop())}}function i(t,e,r){var n=e[0],i=e[1],o=r[0],a=r[1],s=t[0],l=t[1],u=o-n,c=a-i;if(0!==u||0!==c){var p=((s-n)*u+(l-i)*c)/(u*u+c*c);p>1?(n=o,i=a):p>0&&(n+=u*p,i+=c*p)}return u=s-n,c=l-i,u*u+c*c}e.exports=n},{}],19:[function(t,e,r){"use strict";function n(t,e,r,n,o,a){for(var s={features:[],numPoints:0,numSimplified:0,numFeatures:0,source:null,x:r,y:n,z2:e,transformed:!1,min:[2,1],max:[-1,0]},l=0;l<t.length;l++){s.numFeatures++,i(s,t[l],o,a);var u=t[l].min,c=t[l].max;u[0]<s.min[0]&&(s.min[0]=u[0]),u[1]<s.min[1]&&(s.min[1]=u[1]),c[0]>s.max[0]&&(s.max[0]=c[0]),c[1]>s.max[1]&&(s.max[1]=c[1])}return s}function i(t,e,r,n){var i,a,s,l,u=e.geometry,c=e.type,p=[],h=r*r;if(1===c)for(i=0;i<u.length;i++)p.push(u[i]),t.numPoints++,t.numSimplified++;else for(i=0;i<u.length;i++)if(s=u[i],n||!(2===c&&s.dist<r||3===c&&s.area<h)){var f=[];for(a=0;a<s.length;a++)l=s[a],(n||l[2]>h)&&(f.push(l),t.numSimplified++),t.numPoints++;3===c&&o(f,s.outer),p.push(f)}else t.numPoints+=s.length;if(p.length){var d={geometry:p,type:c,tags:e.tags||null};null!==e.id&&(d.id=e.id),t.features.push(d)}}function o(t,e){a(t)<0===e&&t.reverse()}function a(t){for(var e,r,n=0,i=0,o=t.length,a=o-1;i<o;a=i++)e=t[i],r=t[a],n+=(r[0]-e[0])*(e[1]+r[1]);return n}e.exports=n},{}],20:[function(t,e,r){"use strict";function n(t,e){if(t.transformed)return t;var r,n,o,a=t.z2,s=t.x,l=t.y;for(r=0;r<t.features.length;r++){var u=t.features[r],c=u.geometry;if(1===u.type)for(n=0;n<c.length;n++)c[n]=i(c[n],e,a,s,l);else for(n=0;n<c.length;n++){var p=c[n];for(o=0;o<p.length;o++)p[o]=i(p[o],e,a,s,l)}}return t.transformed=!0,t}function i(t,e,r,n,i){return[Math.round(e*(t[0]*r-n)),Math.round(e*(t[1]*r-i))]}r.tile=n,r.point=i},{}],21:[function(t,e,r){"use strict";function n(t,e,r){var n=t,o=a(t,1,-1-e,e,0,r,-1,2),s=a(t,1,1-e,2+e,0,r,-1,2);return(o||s)&&(n=a(t,1,-e,1+e,0,r,-1,2)||[],o&&(n=i(o,1).concat(n)),s&&(n=n.concat(i(s,-1)))),n}function i(t,e){for(var r=[],n=0;n<t.length;n++){var i,a=t[n],l=a.type;if(1===l)i=o(a.geometry,e);else{i=[];for(var u=0;u<a.geometry.length;u++)i.push(o(a.geometry[u],e))}r.push(s(a.tags,l,i,a.id))}return r}function o(t,e){var r=[];r.area=t.area,r.dist=t.dist;for(var n=0;n<t.length;n++)r.push([t[n][0]+e,t[n][1],t[n][2]]);return r}var a=t("./clip"),s=t("./feature");e.exports=n},{"./clip":14,"./feature":16}],22:[function(t,e,r){"use strict";function n(t,e,r){var n=this.cells=[];if(t instanceof ArrayBuffer){this.arrayBuffer=t;var o=new Int32Array(this.arrayBuffer);t=o[0],e=o[1],r=o[2],this.d=e+2*r;for(var a=0;a<this.d*this.d;a++){var s=o[i+a],l=o[i+a+1];n.push(s===l?null:o.subarray(s,l))}var u=o[i+n.length],c=o[i+n.length+1];this.keys=o.subarray(u,c),this.bboxes=o.subarray(c),this.insert=this._insertReadonly}else{this.d=e+2*r;for(var p=0;p<this.d*this.d;p++)n.push([]);this.keys=[],this.bboxes=[]}this.n=e,this.extent=t,this.padding=r,this.scale=e/t,this.uid=0;var h=r/e*t;this.min=-h,this.max=t+h}e.exports=n;var i=3;n.prototype.insert=function(t,e,r,n,i){this._forEachCell(e,r,n,i,this._insertCell,this.uid++),this.keys.push(t),this.bboxes.push(e),this.bboxes.push(r),this.bboxes.push(n),this.bboxes.push(i)},n.prototype._insertReadonly=function(){throw"Cannot insert into a GridIndex created from an ArrayBuffer."},n.prototype._insertCell=function(t,e,r,n,i,o){this.cells[i].push(o)},n.prototype.query=function(t,e,r,n){var i=this.min,o=this.max;if(t<=i&&e<=i&&o<=r&&o<=n)return Array.prototype.slice.call(this.keys);var a=[],s={};return this._forEachCell(t,e,r,n,this._queryCell,a,s),a},n.prototype._queryCell=function(t,e,r,n,i,o,a){var s=this.cells[i];if(null!==s)for(var l=this.keys,u=this.bboxes,c=0;c<s.length;c++){var p=s[c];if(void 0===a[p]){var h=4*p;t<=u[h+2]&&e<=u[h+3]&&r>=u[h+0]&&n>=u[h+1]?(a[p]=!0,o.push(l[p])):a[p]=!1}}},n.prototype._forEachCell=function(t,e,r,n,i,o,a){for(var s=this._convertToCellCoord(t),l=this._convertToCellCoord(e),u=this._convertToCellCoord(r),c=this._convertToCellCoord(n),p=s;p<=u;p++)for(var h=l;h<=c;h++){var f=this.d*h+p;if(i.call(this,t,e,r,n,f,o,a))return}},n.prototype._convertToCellCoord=function(t){return Math.max(0,Math.min(this.d-1,Math.floor(t*this.scale)+this.padding))},n.prototype.toArrayBuffer=function(){if(this.arrayBuffer)return this.arrayBuffer;for(var t=this.cells,e=i+this.cells.length+1+1,r=0,n=0;n<this.cells.length;n++)r+=this.cells[n].length;var o=new Int32Array(e+r+this.keys.length+this.bboxes.length);o[0]=this.extent,o[1]=this.n,o[2]=this.padding;for(var a=e,s=0;s<t.length;s++){var l=t[s];o[i+s]=a,o.set(l,a),a+=l.length}return o[i+t.length]=a,o.set(this.keys,a),a+=this.keys.length,o[i+t.length+1]=a,o.set(this.bboxes,a),a+=this.bboxes.length,o.buffer}},{}],23:[function(t,e,r){r.read=function(t,e,r,n,i){var o,a,s=8*i-n-1,l=(1<<s)-1,u=l>>1,c=-7,p=r?i-1:0,h=r?-1:1,f=t[e+p];for(p+=h,o=f&(1<<-c)-1,f>>=-c,c+=s;c>0;o=256*o+t[e+p],p+=h,c-=8);for(a=o&(1<<-c)-1,o>>=-c,c+=n;c>0;a=256*a+t[e+p],p+=h,c-=8);if(0===o)o=1-u;else{if(o===l)return a?NaN:1/0*(f?-1:1);a+=Math.pow(2,n),o-=u}return(f?-1:1)*a*Math.pow(2,o-n)},r.write=function(t,e,r,n,i,o){var a,s,l,u=8*o-i-1,c=(1<<u)-1,p=c>>1,h=23===i?Math.pow(2,-24)-Math.pow(2,-77):0,f=n?0:o-1,d=n?1:-1,m=e<0||0===e&&1/e<0?1:0;for(e=Math.abs(e),isNaN(e)||e===1/0?(s=isNaN(e)?1:0,a=c):(a=Math.floor(Math.log(e)/Math.LN2),e*(l=Math.pow(2,-a))<1&&(a--,l*=2),e+=a+p>=1?h/l:h*Math.pow(2,1-p),e*l>=2&&(a++,l/=2),a+p>=c?(s=0,a=c):a+p>=1?(s=(e*l-1)*Math.pow(2,i),a+=p):(s=e*Math.pow(2,p-1)*Math.pow(2,i),a=0));i>=8;t[r+f]=255&s,f+=d,s/=256,i-=8);for(a=a<<i|s,u+=i;u>0;t[r+f]=255&a,f+=d,a/=256,u-=8);t[r+f-d]|=128*m}},{}],24:[function(t,e,r){"use strict";function n(t,e,r,n,o){return new i(t,e,r,n,o)}function i(t,e,r,n,i){e=e||o,r=r||a,i=i||Array,this.nodeSize=n||64,this.points=t,this.ids=new i(t.length),this.coords=new i(2*t.length);for(var l=0;l<t.length;l++)this.ids[l]=l,this.coords[2*l]=e(t[l]),this.coords[2*l+1]=r(t[l]);s(this.ids,this.coords,this.nodeSize,0,this.ids.length-1,0)}function o(t){return t[0]}function a(t){return t[1]}var s=t("./sort"),l=t("./range"),u=t("./within");e.exports=n,i.prototype={range:function(t,e,r,n){return l(this.ids,this.coords,t,e,r,n,this.nodeSize)},within:function(t,e,r){return u(this.ids,this.coords,t,e,r,this.nodeSize)}}},{"./range":25,"./sort":26,"./within":27}],25:[function(t,e,r){"use strict";function n(t,e,r,n,i,o,a){for(var s,l,u=[0,t.length-1,0],c=[];u.length;){var p=u.pop(),h=u.pop(),f=u.pop();if(h-f<=a)for(var d=f;d<=h;d++)s=e[2*d],l=e[2*d+1],s>=r&&s<=i&&l>=n&&l<=o&&c.push(t[d]);else{var m=Math.floor((f+h)/2);s=e[2*m],l=e[2*m+1],s>=r&&s<=i&&l>=n&&l<=o&&c.push(t[m]);var v=(p+1)%2;(0===p?r<=s:n<=l)&&(u.push(f),u.push(m-1),u.push(v)),(0===p?i>=s:o>=l)&&(u.push(m+1),u.push(h),u.push(v))}}return c}e.exports=n},{}],26:[function(t,e,r){"use strict";function n(t,e,r,o,a,s){if(!(a-o<=r)){var l=Math.floor((o+a)/2);i(t,e,l,o,a,s%2),n(t,e,r,o,l-1,s+1),n(t,e,r,l+1,a,s+1)}}function i(t,e,r,n,a,s){for(;a>n;){if(a-n>600){var l=a-n+1,u=r-n+1,c=Math.log(l),p=.5*Math.exp(2*c/3),h=.5*Math.sqrt(c*p*(l-p)/l)*(u-l/2<0?-1:1);i(t,e,r,Math.max(n,Math.floor(r-u*p/l+h)),Math.min(a,Math.floor(r+(l-u)*p/l+h)),s)}var f=e[2*r+s],d=n,m=a;for(o(t,e,n,r),e[2*a+s]>f&&o(t,e,n,a);d<m;){for(o(t,e,d,m),d++,m--;e[2*d+s]<f;)d++;for(;e[2*m+s]>f;)m--}e[2*n+s]===f?o(t,e,n,m):(m++,o(t,e,m,a)),m<=r&&(n=m+1),r<=m&&(a=m-1)}}function o(t,e,r,n){a(t,r,n),a(e,2*r,2*n),a(e,2*r+1,2*n+1)}function a(t,e,r){var n=t[e];t[e]=t[r],t[r]=n}e.exports=n},{}],27:[function(t,e,r){"use strict";function n(t,e,r,n,o,a){for(var s=[0,t.length-1,0],l=[],u=o*o;s.length;){var c=s.pop(),p=s.pop(),h=s.pop();if(p-h<=a)for(var f=h;f<=p;f++)i(e[2*f],e[2*f+1],r,n)<=u&&l.push(t[f]);else{var d=Math.floor((h+p)/2),m=e[2*d],v=e[2*d+1];i(m,v,r,n)<=u&&l.push(t[d]);var y=(c+1)%2;(0===c?r-o<=m:n-o<=v)&&(s.push(h),s.push(d-1),s.push(y)),(0===c?r+o>=m:n+o>=v)&&(s.push(d+1),s.push(p),s.push(y))}}return l}function i(t,e,r,n){var i=t-r,o=e-n;return i*i+o*o}e.exports=n},{}],28:[function(t,e,r){"use strict";function n(t){return!!(i()&&o()&&a()&&s()&&l()&&u()&&c()&&p(t&&t.failIfMajorPerformanceCaveat))}function i(){return"undefined"!=typeof window&&"undefined"!=typeof document}function o(){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 a(){return Function.prototype&&Function.prototype.bind}function s(){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 l(){return"JSON"in window&&"parse"in JSON&&"stringify"in JSON}function u(){return"Worker"in window}function c(){return"Uint8ClampedArray"in window}function p(t){return void 0===f[t]&&(f[t]=h(t)),f[t]}function h(t){var e=document.createElement("canvas"),r=Object.create(n.webGLContextAttributes);return r.failIfMajorPerformanceCaveat=t,e.probablySupportsContext?e.probablySupportsContext("webgl",r)||e.probablySupportsContext("experimental-webgl",r):e.supportsContext?e.supportsContext("webgl",r)||e.supportsContext("experimental-webgl",r):e.getContext("webgl",r)||e.getContext("experimental-webgl",r)}"undefined"!=typeof e&&e.exports?e.exports=n:window&&(window.mapboxgl=window.mapboxgl||{},window.mapboxgl.supported=n);var f={};n.webGLContextAttributes={antialias:!1,alpha:!0,stencil:!0,depth:!0}},{}],29:[function(t,e,r){"use strict";function n(t){this.buf=ArrayBuffer.isView&&ArrayBuffer.isView(t)?t:new Uint8Array(t||0),this.pos=0,this.type=0,this.length=this.buf.length}function i(t,e,r){var n,i,o=r.buf;if(i=o[r.pos++],n=(112&i)>>4,i<128)return a(t,n,e);if(i=o[r.pos++],n|=(127&i)<<3,i<128)return a(t,n,e);if(i=o[r.pos++],n|=(127&i)<<10,i<128)return a(t,n,e);if(i=o[r.pos++],n|=(127&i)<<17,i<128)return a(t,n,e);if(i=o[r.pos++],n|=(127&i)<<24,i<128)return a(t,n,e);if(i=o[r.pos++],n|=(1&i)<<31,i<128)return a(t,n,e);throw new Error("Expected varint not more than 10 bytes")}function o(t){return t.type===n.Bytes?t.readVarint()+t.pos:t.pos+1}function a(t,e,r){return r?4294967296*e+(t>>>0):4294967296*(e>>>0)+(t>>>0)}function s(t,e){var r,n;if(t>=0?(r=t%4294967296|0,n=t/4294967296|0):(r=~(-t%4294967296),n=~(-t/4294967296),4294967295^r?r=r+1|0:(r=0,n=n+1|0)),t>=0x10000000000000000||t<-0x10000000000000000)throw new Error("Given varint doesn't fit into 10 bytes");e.realloc(10),l(r,n,e),u(n,e)}function l(t,e,r){r.buf[r.pos++]=127&t|128,t>>>=7,r.buf[r.pos++]=127&t|128,t>>>=7,r.buf[r.pos++]=127&t|128,t>>>=7,r.buf[r.pos++]=127&t|128,t>>>=7,r.buf[r.pos]=127&t}function u(t,e){var r=(7&t)<<4;e.buf[e.pos++]|=r|((t>>>=3)?128:0),t&&(e.buf[e.pos++]=127&t|((t>>>=7)?128:0),t&&(e.buf[e.pos++]=127&t|((t>>>=7)?128:0),t&&(e.buf[e.pos++]=127&t|((t>>>=7)?128:0),t&&(e.buf[e.pos++]=127&t|((t>>>=7)?128:0),t&&(e.buf[e.pos++]=127&t)))))}function c(t,e,r){var n=e<=16383?1:e<=2097151?2:e<=268435455?3:Math.ceil(Math.log(e)/(7*Math.LN2));r.realloc(n);for(var i=r.pos-1;i>=t;i--)r.buf[i+n]=r.buf[i]}function p(t,e){for(var r=0;r<t.length;r++)e.writeVarint(t[r])}function h(t,e){for(var r=0;r<t.length;r++)e.writeSVarint(t[r])}function f(t,e){for(var r=0;r<t.length;r++)e.writeFloat(t[r])}function d(t,e){for(var r=0;r<t.length;r++)e.writeDouble(t[r])}function m(t,e){for(var r=0;r<t.length;r++)e.writeBoolean(t[r])}function v(t,e){for(var r=0;r<t.length;r++)e.writeFixed32(t[r])}function y(t,e){for(var r=0;r<t.length;r++)e.writeSFixed32(t[r])}function g(t,e){for(var r=0;r<t.length;r++)e.writeFixed64(t[r])}function _(t,e){for(var r=0;r<t.length;r++)e.writeSFixed64(t[r])}function x(t,e){return(t[e]|t[e+1]<<8|t[e+2]<<16)+16777216*t[e+3]}function b(t,e,r){t[r]=e,t[r+1]=e>>>8,t[r+2]=e>>>16,t[r+3]=e>>>24}function w(t,e){return(t[e]|t[e+1]<<8|t[e+2]<<16)+(t[e+3]<<24)}function T(t,e,r){for(var n="",i=e;i<r;){var o=t[i],a=null,s=o>239?4:o>223?3:o>191?2:1;if(i+s>r)break;var l,u,c;1===s?o<128&&(a=o):2===s?128==(192&(l=t[i+1]))&&(a=(31&o)<<6|63&l)<=127&&(a=null):3===s?(l=t[i+1],u=t[i+2],128==(192&l)&&128==(192&u)&&((a=(15&o)<<12|(63&l)<<6|63&u)<=2047||a>=55296&&a<=57343)&&(a=null)):4===s&&(l=t[i+1],u=t[i+2],c=t[i+3],128==(192&l)&&128==(192&u)&&128==(192&c)&&((a=(15&o)<<18|(63&l)<<12|(63&u)<<6|63&c)<=65535||a>=1114112)&&(a=null)),null===a?(a=65533,s=1):a>65535&&(a-=65536,n+=String.fromCharCode(a>>>10&1023|55296),a=56320|1023&a),n+=String.fromCharCode(a),i+=s}return n}function S(t,e,r){for(var n,i,o=0;o<e.length;o++){if((n=e.charCodeAt(o))>55295&&n<57344){if(!i){n>56319||o+1===e.length?(t[r++]=239,t[r++]=191,t[r++]=189):i=n;continue}if(n<56320){t[r++]=239,t[r++]=191,t[r++]=189,i=n;continue}n=i-55296<<10|n-56320|65536,i=null}else i&&(t[r++]=239,t[r++]=191,t[r++]=189,i=null);n<128?t[r++]=n:(n<2048?t[r++]=n>>6|192:(n<65536?t[r++]=n>>12|224:(t[r++]=n>>18|240,t[r++]=n>>12&63|128),t[r++]=n>>6&63|128),t[r++]=63&n|128)}return r}e.exports=n;var z=t("ieee754");n.Varint=0,n.Fixed64=1,n.Bytes=2,n.Fixed32=5;n.prototype={destroy:function(){this.buf=null},readFields:function(t,e,r){for(r=r||this.length;this.pos<r;){var n=this.readVarint(),i=n>>3,o=this.pos;this.type=7&n,t(i,e,this),this.pos===o&&this.skip(n)}return e},readMessage:function(t,e){return this.readFields(t,e,this.readVarint()+this.pos)},readFixed32:function(){var t=x(this.buf,this.pos);return this.pos+=4,t},readSFixed32:function(){var t=w(this.buf,this.pos);return this.pos+=4,t},readFixed64:function(){var t=x(this.buf,this.pos)+4294967296*x(this.buf,this.pos+4);return this.pos+=8,t},readSFixed64:function(){var t=x(this.buf,this.pos)+4294967296*w(this.buf,this.pos+4);return this.pos+=8,t},readFloat:function(){var t=z.read(this.buf,this.pos,!0,23,4);return this.pos+=4,t},readDouble:function(){var t=z.read(this.buf,this.pos,!0,52,8);return this.pos+=8,t},readVarint:function(t){var e,r,n=this.buf;return r=n[this.pos++],e=127&r,r<128?e:(r=n[this.pos++],e|=(127&r)<<7,r<128?e:(r=n[this.pos++],e|=(127&r)<<14,r<128?e:(r=n[this.pos++],e|=(127&r)<<21,r<128?e:(r=n[this.pos],e|=(15&r)<<28,i(e,t,this)))))},readVarint64:function(){return this.readVarint(!0)},readSVarint:function(){var t=this.readVarint();return t%2==1?(t+1)/-2:t/2},readBoolean:function(){return Boolean(this.readVarint())},readString:function(){var t=this.readVarint()+this.pos,e=T(this.buf,this.pos,t);return this.pos=t,e},readBytes:function(){var t=this.readVarint()+this.pos,e=this.buf.subarray(this.pos,t);return this.pos=t,e},readPackedVarint:function(t,e){var r=o(this);for(t=t||[];this.pos<r;)t.push(this.readVarint(e));return t},readPackedSVarint:function(t){var e=o(this);for(t=t||[];this.pos<e;)t.push(this.readSVarint());return t},readPackedBoolean:function(t){var e=o(this);for(t=t||[];this.pos<e;)t.push(this.readBoolean());return t},readPackedFloat:function(t){var e=o(this);for(t=t||[];this.pos<e;)t.push(this.readFloat());return t},readPackedDouble:function(t){var e=o(this);for(t=t||[];this.pos<e;)t.push(this.readDouble());return t},readPackedFixed32:function(t){var e=o(this);for(t=t||[];this.pos<e;)t.push(this.readFixed32());return t},readPackedSFixed32:function(t){var e=o(this);for(t=t||[];this.pos<e;)t.push(this.readSFixed32());return t},readPackedFixed64:function(t){var e=o(this);for(t=t||[];this.pos<e;)t.push(this.readFixed64());return t},readPackedSFixed64:function(t){var e=o(this);for(t=t||[];this.pos<e;)t.push(this.readSFixed64());return t},skip:function(t){var e=7&t;if(e===n.Varint)for(;this.buf[this.pos++]>127;);else if(e===n.Bytes)this.pos=this.readVarint()+this.pos;else if(e===n.Fixed32)this.pos+=4;else{if(e!==n.Fixed64)throw new Error("Unimplemented type: "+e);this.pos+=8}},writeTag:function(t,e){this.writeVarint(t<<3|e)},realloc:function(t){for(var e=this.length||16;e<this.pos+t;)e*=2;if(e!==this.length){var r=new Uint8Array(e);r.set(this.buf),this.buf=r,this.length=e}},finish:function(){return this.length=this.pos,this.pos=0,this.buf.subarray(0,this.length)},writeFixed32:function(t){this.realloc(4),b(this.buf,t,this.pos),this.pos+=4},writeSFixed32:function(t){this.realloc(4),b(this.buf,t,this.pos),this.pos+=4},writeFixed64:function(t){this.realloc(8),b(this.buf,-1&t,this.pos),b(this.buf,Math.floor(t*(1/4294967296)),this.pos+4),this.pos+=8},writeSFixed64:function(t){this.realloc(8),b(this.buf,-1&t,this.pos),b(this.buf,Math.floor(t*(1/4294967296)),this.pos+4),this.pos+=8},writeVarint:function(t){if((t=+t||0)>268435455||t<0)return void s(t,this);this.realloc(4),this.buf[this.pos++]=127&t|(t>127?128:0),t<=127||(this.buf[this.pos++]=127&(t>>>=7)|(t>127?128:0),t<=127||(this.buf[this.pos++]=127&(t>>>=7)|(t>127?128:0),t<=127||(this.buf[this.pos++]=t>>>7&127)))},writeSVarint:function(t){this.writeVarint(t<0?2*-t-1:2*t)},writeBoolean:function(t){this.writeVarint(Boolean(t))},writeString:function(t){t=String(t),this.realloc(4*t.length),this.pos++;var e=this.pos;this.pos=S(this.buf,t,this.pos);var r=this.pos-e;r>=128&&c(e,r,this),this.pos=e-1,this.writeVarint(r),this.pos+=r},writeFloat:function(t){this.realloc(4),z.write(this.buf,t,this.pos,!0,23,4),this.pos+=4},writeDouble:function(t){this.realloc(8),z.write(this.buf,t,this.pos,!0,52,8),this.pos+=8},writeBytes:function(t){var e=t.length;this.writeVarint(e),this.realloc(e);for(var r=0;r<e;r++)this.buf[this.pos++]=t[r]},writeRawMessage:function(t,e){this.pos++;var r=this.pos;t(e,this);var n=this.pos-r;n>=128&&c(r,n,this),this.pos=r-1,this.writeVarint(n),this.pos+=n},writeMessage:function(t,e,r){this.writeTag(t,n.Bytes),this.writeRawMessage(e,r)},writePackedVarint:function(t,e){this.writeMessage(t,p,e)},writePackedSVarint:function(t,e){this.writeMessage(t,h,e)},writePackedBoolean:function(t,e){this.writeMessage(t,m,e)},writePackedFloat:function(t,e){this.writeMessage(t,f,e)},writePackedDouble:function(t,e){this.writeMessage(t,d,e)},writePackedFixed32:function(t,e){this.writeMessage(t,v,e)},writePackedSFixed32:function(t,e){this.writeMessage(t,y,e)},writePackedFixed64:function(t,e){this.writeMessage(t,g,e)},writePackedSFixed64:function(t,e){this.writeMessage(t,_,e)},writeBytesField:function(t,e){this.writeTag(t,n.Bytes),this.writeBytes(e)},writeFixed32Field:function(t,e){this.writeTag(t,n.Fixed32),this.writeFixed32(e)},writeSFixed32Field:function(t,e){this.writeTag(t,n.Fixed32),this.writeSFixed32(e)},writeFixed64Field:function(t,e){this.writeTag(t,n.Fixed64),this.writeFixed64(e)},writeSFixed64Field:function(t,e){this.writeTag(t,n.Fixed64),this.writeSFixed64(e)},writeVarintField:function(t,e){this.writeTag(t,n.Varint),this.writeVarint(e)},writeSVarintField:function(t,e){this.writeTag(t,n.Varint),this.writeSVarint(e)},writeStringField:function(t,e){this.writeTag(t,n.Bytes),this.writeString(e)},writeFloatField:function(t,e){this.writeTag(t,n.Fixed32),this.writeFloat(e)},writeDoubleField:function(t,e){this.writeTag(t,n.Fixed64),this.writeDouble(e)},writeBooleanField:function(t,e){this.writeVarintField(t,Boolean(e))}}},{ieee754:23}],30:[function(t,e,r){function n(){throw new Error("setTimeout has not been defined")}function i(){throw new Error("clearTimeout has not been defined")}function o(t){if(p===setTimeout)return setTimeout(t,0);if((p===n||!p)&&setTimeout)return p=setTimeout,setTimeout(t,0);try{return p(t,0)}catch(e){try{return p.call(null,t,0)}catch(e){return p.call(this,t,0)}}}function a(t){if(h===clearTimeout)return clearTimeout(t);if((h===i||!h)&&clearTimeout)return h=clearTimeout,clearTimeout(t);try{return h(t)}catch(e){try{return h.call(null,t)}catch(e){return h.call(this,t)}}}function s(){v&&d&&(v=!1,d.length?m=d.concat(m):y=-1,m.length&&l())}function l(){if(!v){var t=o(s);v=!0;for(var e=m.length;e;){for(d=m,m=[];++y<e;)d&&d[y].run();y=-1,e=m.length}d=null,v=!1,a(t)}}function u(t,e){this.fun=t,this.array=e}function c(){}var p,h,f=e.exports={};!function(){try{p="function"==typeof setTimeout?setTimeout:n}catch(t){p=n}try{h="function"==typeof clearTimeout?clearTimeout:i}catch(t){h=i}}();var d,m=[],v=!1,y=-1;f.nextTick=function(t){var e=new Array(arguments.length-1);if(arguments.length>1)for(var r=1;r<arguments.length;r++)e[r-1]=arguments[r];m.push(new u(t,e)),1!==m.length||v||o(l)},u.prototype.run=function(){this.fun.apply(null,this.array)},f.title="browser",f.browser=!0,f.env={},f.argv=[],f.version="",f.versions={},f.on=c,f.addListener=c,f.once=c,f.off=c,f.removeListener=c,f.removeAllListeners=c,f.emit=c,f.prependListener=c,f.prependOnceListener=c,f.listeners=function(t){return[]},f.binding=function(t){throw new Error("process.binding is not supported")},f.cwd=function(){return"/"},f.chdir=function(t){throw new Error("process.chdir is not supported")},f.umask=function(){return 0}},{}],31:[function(t,e,r){"use strict";function n(t,e,r,a,s){for(r=r||0,a=a||t.length-1,s=s||o;a>r;){if(a-r>600){var l=a-r+1,u=e-r+1,c=Math.log(l),p=.5*Math.exp(2*c/3),h=.5*Math.sqrt(c*p*(l-p)/l)*(u-l/2<0?-1:1);n(t,e,Math.max(r,Math.floor(e-u*p/l+h)),Math.min(a,Math.floor(e+(l-u)*p/l+h)),s)}var f=t[e],d=r,m=a;for(i(t,r,e),s(t[a],f)>0&&i(t,r,a);d<m;){for(i(t,d,m),d++,m--;s(t[d],f)<0;)d++;for(;s(t[m],f)>0;)m--}0===s(t[r],f)?i(t,r,m):(m++,i(t,m,a)),m<=e&&(r=m+1),e<=m&&(a=m-1)}}function i(t,e,r){var n=t[e];t[e]=t[r],t[r]=n}function o(t,e){return t<e?-1:t>e?1:0}e.exports=n},{}],32:[function(t,e,r){"use strict";function n(t){return new i(t)}function i(t){this.options=f(Object.create(this.options),t),this.trees=new Array(this.options.maxZoom+1)}function o(t,e,r,n,i){return{x:t,y:e,zoom:1/0,id:n,properties:i,parentId:-1,numPoints:r}}function a(t,e){var r=t.geometry.coordinates;return{x:u(r[0]),y:c(r[1]),zoom:1/0,id:e,parentId:-1}}function s(t){return{type:"Feature",properties:l(t),geometry:{type:"Point",coordinates:[p(t.x),h(t.y)]}}}function l(t){var e=t.numPoints,r=e>=1e4?Math.round(e/1e3)+"k":e>=1e3?Math.round(e/100)/10+"k":e;return f(f({},t.properties),{cluster:!0,cluster_id:t.id,point_count:e,point_count_abbreviated:r})}function u(t){return t/360+.5}function c(t){var e=Math.sin(t*Math.PI/180),r=.5-.25*Math.log((1+e)/(1-e))/Math.PI;return r<0?0:r>1?1:r}function p(t){return 360*(t-.5)}function h(t){var e=(180-360*t)*Math.PI/180;return 360*Math.atan(Math.exp(e))/Math.PI-90}function f(t,e){for(var r in e)t[r]=e[r];return t}function d(t){return t.x}function m(t){return t.y}var v=t("kdbush");e.exports=n,i.prototype={options:{minZoom:0,maxZoom:16,radius:40,extent:512,nodeSize:64,log:!1,reduce:null,initial:function(){return{}},map:function(t){return t}},load:function(t){var e=this.options.log;e&&console.time("total time");var r="prepare "+t.length+" points";e&&console.time(r),this.points=t;var n=t.map(a);e&&console.timeEnd(r);for(var i=this.options.maxZoom;i>=this.options.minZoom;i--){var o=+Date.now();this.trees[i+1]=v(n,d,m,this.options.nodeSize,Float32Array),n=this._cluster(n,i),e&&console.log("z%d: %d clusters in %dms",i,n.length,+Date.now()-o)}return this.trees[this.options.minZoom]=v(n,d,m,this.options.nodeSize,Float32Array),e&&console.timeEnd("total time"),this},getClusters:function(t,e){for(var r=this.trees[this._limitZoom(e)],n=r.range(u(t[0]),c(t[3]),u(t[2]),c(t[1])),i=[],o=0;o<n.length;o++){var a=r.points[n[o]];i.push(a.numPoints?s(a):this.points[a.id])}return i},getChildren:function(t,e){for(var r=this.trees[e+1].points[t],n=this.options.radius/(this.options.extent*Math.pow(2,e)),i=this.trees[e+1].within(r.x,r.y,n),o=[],a=0;a<i.length;a++){var l=this.trees[e+1].points[i[a]];l.parentId===t&&o.push(l.numPoints?s(l):this.points[l.id])}return o},getLeaves:function(t,e,r,n){r=r||10,n=n||0;var i=[];return this._appendLeaves(i,t,e,r,n,0),i},getTile:function(t,e,r){var n=this.trees[this._limitZoom(t)],i=Math.pow(2,t),o=this.options.extent,a=this.options.radius,s=a/o,l=(r-s)/i,u=(r+1+s)/i,c={features:[]};return this._addTileFeatures(n.range((e-s)/i,l,(e+1+s)/i,u),n.points,e,r,i,c),0===e&&this._addTileFeatures(n.range(1-s/i,l,1,u),n.points,i,r,i,c),e===i-1&&this._addTileFeatures(n.range(0,l,s/i,u),n.points,-1,r,i,c),c.features.length?c:null},getClusterExpansionZoom:function(t,e){for(;e<this.options.maxZoom;){var r=this.getChildren(t,e);if(e++,1!==r.length)break;t=r[0].properties.cluster_id}return e},_appendLeaves:function(t,e,r,n,i,o){for(var a=this.getChildren(e,r),s=0;s<a.length;s++){var l=a[s].properties;if(l.cluster?o+l.point_count<=i?o+=l.point_count:o=this._appendLeaves(t,l.cluster_id,r+1,n,i,o):o<i?o++:t.push(a[s]),t.length===n)break}return o},_addTileFeatures:function(t,e,r,n,i,o){for(var a=0;a<t.length;a++){var s=e[t[a]];o.features.push({type:1,geometry:[[Math.round(this.options.extent*(s.x*i-r)),Math.round(this.options.extent*(s.y*i-n))]],tags:s.numPoints?l(s):this.points[s.id].properties})}},_limitZoom:function(t){return Math.max(this.options.minZoom,Math.min(t,this.options.maxZoom+1))},_cluster:function(t,e){for(var r=[],n=this.options.radius/(this.options.extent*Math.pow(2,e)),i=0;i<t.length;i++){var a=t[i];if(!(a.zoom<=e)){a.zoom=e;var s=this.trees[e+1],l=s.within(a.x,a.y,n),u=a.numPoints||1,c=a.x*u,p=a.y*u,h=null;this.options.reduce&&(h=this.options.initial(),this._accumulate(h,a));for(var f=0;f<l.length;f++){var d=s.points[l[f]];if(e<d.zoom){var m=d.numPoints||1;d.zoom=e,c+=d.x*m,p+=d.y*m,u+=m,d.parentId=i,this.options.reduce&&this._accumulate(h,d)}}1===u?r.push(a):(a.parentId=i,r.push(o(c/u,p/u,u,i,h)))}}return r},_accumulate:function(t,e){var r=e.numPoints?e.properties:this.options.map(this.points[e.id].properties);this.options.reduce(t,r)}}},{kdbush:24}],33:[function(t,e,r){"use strict";function n(t,e){if(!(this instanceof n))return new n(t,e);if(this.data=t||[],this.length=this.data.length,this.compare=e||i,this.length>0)for(var r=this.length>>1;r>=0;r--)this._down(r)}function i(t,e){return t<e?-1:t>e?1:0}e.exports=n,n.prototype={push:function(t){this.data.push(t),this.length++,this._up(this.length-1)},pop:function(){if(0!==this.length){var t=this.data[0];return this.length--,this.length>0&&(this.data[0]=this.data[this.length],this._down(0)),this.data.pop(),t}},peek:function(){return this.data[0]},_up:function(t){for(var e=this.data,r=this.compare,n=e[t];t>0;){var i=t-1>>1,o=e[i];if(r(n,o)>=0)break;e[t]=o,t=i}e[t]=n},_down:function(t){for(var e=this.data,r=this.compare,n=this.length,i=n>>1,o=e[t];t<i;){var a=1+(t<<1),s=a+1,l=e[a];if(s<n&&r(e[s],l)<0&&(a=s,l=e[s]),r(l,o)>=0)break;e[t]=l,t=a}e[t]=o}}},{}],34:[function(t,e,r){"function"==typeof Object.create?e.exports=function(t,e){t.super_=e,t.prototype=Object.create(e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}})}:e.exports=function(t,e){t.super_=e;var r=function(){};r.prototype=e.prototype,t.prototype=new r,t.prototype.constructor=t}},{}],35:[function(t,e,r){e.exports=function(t){return t&&"object"==typeof t&&"function"==typeof t.copy&&"function"==typeof t.fill&&"function"==typeof t.readUInt8}},{}],36:[function(t,r,n){(function(e,r){function i(t,e){var r={seen:[],stylize:a};return arguments.length>=3&&(r.depth=arguments[2]),arguments.length>=4&&(r.colors=arguments[3]),m(e)?r.showHidden=e:e&&n._extend(r,e),b(r.showHidden)&&(r.showHidden=!1),b(r.depth)&&(r.depth=2),b(r.colors)&&(r.colors=!1),b(r.customInspect)&&(r.customInspect=!0),r.colors&&(r.stylize=o),l(r,t,r.depth)}function o(t,e){var r=i.styles[e];return r?"["+i.colors[r][0]+"m"+t+"["+i.colors[r][1]+"m":t}function a(t,e){return t}function s(t){var e={};return t.forEach(function(t,r){e[t]=!0}),e}function l(t,e,r){if(t.customInspect&&e&&A(e.inspect)&&e.inspect!==n.inspect&&(!e.constructor||e.constructor.prototype!==e)){var i=e.inspect(r,t);return _(i)||(i=l(t,i,r)),i}var o=u(t,e);if(o)return o;var a=Object.keys(e),m=s(a);if(t.showHidden&&(a=Object.getOwnPropertyNames(e)),z(e)&&(a.indexOf("message")>=0||a.indexOf("description")>=0))return c(e);if(0===a.length){if(A(e)){var v=e.name?": "+e.name:"";return t.stylize("[Function"+v+"]","special")}if(w(e))return t.stylize(RegExp.prototype.toString.call(e),"regexp");if(S(e))return t.stylize(Date.prototype.toString.call(e),"date");if(z(e))return c(e)}var y="",g=!1,x=["{","}"];if(d(e)&&(g=!0,x=["[","]"]),A(e)&&(y=" [Function"+(e.name?": "+e.name:"")+"]"),w(e)&&(y=" "+RegExp.prototype.toString.call(e)),S(e)&&(y=" "+Date.prototype.toUTCString.call(e)),z(e)&&(y=" "+c(e)),0===a.length&&(!g||0==e.length))return x[0]+y+x[1];if(r<0)return w(e)?t.stylize(RegExp.prototype.toString.call(e),"regexp"):t.stylize("[Object]","special");t.seen.push(e);var b;return b=g?p(t,e,r,m,a):a.map(function(n){return h(t,e,r,m,n,g)}),t.seen.pop(),f(b,y,x)}function u(t,e){if(b(e))return t.stylize("undefined","undefined");if(_(e)){var r="'"+JSON.stringify(e).replace(/^"|"$/g,"").replace(/'/g,"\\'").replace(/\\"/g,'"')+"'";return t.stylize(r,"string")}return g(e)?t.stylize(""+e,"number"):m(e)?t.stylize(""+e,"boolean"):v(e)?t.stylize("null","null"):void 0}function c(t){return"["+Error.prototype.toString.call(t)+"]"}function p(t,e,r,n,i){for(var o=[],a=0,s=e.length;a<s;++a)L(e,String(a))?o.push(h(t,e,r,n,String(a),!0)):o.push("");return i.forEach(function(i){i.match(/^\d+$/)||o.push(h(t,e,r,n,i,!0))}),o}function h(t,e,r,n,i,o){var a,s,u;if(u=Object.getOwnPropertyDescriptor(e,i)||{value:e[i]},u.get?s=u.set?t.stylize("[Getter/Setter]","special"):t.stylize("[Getter]","special"):u.set&&(s=t.stylize("[Setter]","special")),L(n,i)||(a="["+i+"]"),s||(t.seen.indexOf(u.value)<0?(s=v(r)?l(t,u.value,null):l(t,u.value,r-1),s.indexOf("\n")>-1&&(s=o?s.split("\n").map(function(t){return" "+t}).join("\n").substr(2):"\n"+s.split("\n").map(function(t){return" "+t}).join("\n"))):s=t.stylize("[Circular]","special")),b(a)){if(o&&i.match(/^\d+$/))return s;a=JSON.stringify(""+i),a.match(/^"([a-zA-Z_][a-zA-Z_0-9]*)"$/)?(a=a.substr(1,a.length-2),a=t.stylize(a,"name")):(a=a.replace(/'/g,"\\'").replace(/\\"/g,'"').replace(/(^"|"$)/g,"'"),a=t.stylize(a,"string"))}return a+": "+s}function f(t,e,r){var n=0;return t.reduce(function(t,e){return n++,e.indexOf("\n")>=0&&n++,t+e.replace(/\u001b\[\d\d?m/g,"").length+1},0)>60?r[0]+(""===e?"":e+"\n ")+" "+t.join(",\n ")+" "+r[1]:r[0]+e+" "+t.join(", ")+" "+r[1]}function d(t){return Array.isArray(t)}function m(t){return"boolean"==typeof t}function v(t){return null===t}function y(t){return null==t}function g(t){return"number"==typeof t}function _(t){return"string"==typeof t}function x(t){return"symbol"==typeof t}function b(t){return void 0===t}function w(t){return T(t)&&"[object RegExp]"===E(t)}function T(t){return"object"==typeof t&&null!==t}function S(t){return T(t)&&"[object Date]"===E(t)}function z(t){return T(t)&&("[object Error]"===E(t)||t instanceof Error)}function A(t){return"function"==typeof t}function C(t){return null===t||"boolean"==typeof t||"number"==typeof t||"string"==typeof t||"symbol"==typeof t||void 0===t}function E(t){return Object.prototype.toString.call(t)}function k(t){return t<10?"0"+t.toString(10):t.toString(10)}function M(){var t=new Date,e=[k(t.getHours()),k(t.getMinutes()),k(t.getSeconds())].join(":");return[t.getDate(),D[t.getMonth()],e].join(" ")}function L(t,e){return Object.prototype.hasOwnProperty.call(t,e)}var I=/%[sdj%]/g;n.format=function(t){if(!_(t)){for(var e=[],r=0;r<arguments.length;r++)e.push(i(arguments[r]));return e.join(" ")}for(var r=1,n=arguments,o=n.length,a=String(t).replace(I,function(t){if("%%"===t)return"%";if(r>=o)return t;switch(t){case"%s":return String(n[r++]);case"%d":return Number(n[r++]);case"%j":try{return JSON.stringify(n[r++])}catch(t){return"[Circular]"}default:return t}}),s=n[r];r<o;s=n[++r])v(s)||!T(s)?a+=" "+s:a+=" "+i(s);return a},n.deprecate=function(t,i){function o(){if(!a){if(e.throwDeprecation)throw new Error(i);e.traceDeprecation?console.trace(i):console.error(i),a=!0}return t.apply(this,arguments)}if(b(r.process))return function(){return n.deprecate(t,i).apply(this,arguments)};if(!0===e.noDeprecation)return t;var a=!1;return o};var P,R={};n.debuglog=function(t){if(b(P)&&(P=e.env.NODE_DEBUG||""),t=t.toUpperCase(),!R[t])if(new RegExp("\\b"+t+"\\b","i").test(P)){var r=e.pid;R[t]=function(){var e=n.format.apply(n,arguments);console.error("%s %d: %s",t,r,e)}}else R[t]=function(){};return R[t]},n.inspect=i,i.colors={bold:[1,22],italic:[3,23],underline:[4,24],inverse:[7,27],white:[37,39],grey:[90,39],black:[30,39],blue:[34,39],cyan:[36,39],green:[32,39],magenta:[35,39],red:[31,39],yellow:[33,39]},i.styles={special:"cyan",number:"yellow",boolean:"yellow",undefined:"grey",null:"bold",string:"green",date:"magenta",regexp:"red"},n.isArray=d,n.isBoolean=m,n.isNull=v,n.isNullOrUndefined=y,n.isNumber=g,n.isString=_,n.isSymbol=x,n.isUndefined=b,n.isRegExp=w,n.isObject=T,n.isDate=S,n.isError=z,n.isFunction=A,n.isPrimitive=C,n.isBuffer=t("./support/isBuffer");var D=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];n.log=function(){console.log("%s - %s",M(),n.format.apply(n,arguments))},n.inherits=t("inherits"),n._extend=function(t,e){if(!e||!T(e))return t;for(var r=Object.keys(e),n=r.length;n--;)t[r[n]]=e[r[n]];return t}}).call(this,t("_process"),"undefined"!==typeof e?e:"undefined"!==typeof self?self:"undefined"!==typeof window?window:{})},{"./support/isBuffer":35,_process:30,inherits:34}],37:[function(t,e,r){function n(t){var e=new f;return o(t,e),e.finish()}function i(t){var e={};for(var r in t)e[r]=new d(t[r].features),e[r].name=r;return n({layers:e})}function o(t,e){for(var r in t.layers)e.writeMessage(3,a,t.layers[r])}function a(t,e){e.writeVarintField(15,t.version||1),e.writeStringField(1,t.name||""),e.writeVarintField(5,t.extent||4096);var r,n={keys:[],values:[],keycache:{},valuecache:{}};for(r=0;r<t.length;r++)n.feature=t.feature(r),e.writeMessage(2,s,n);var i=n.keys;for(r=0;r<i.length;r++)e.writeStringField(3,i[r]);var o=n.values;for(r=0;r<o.length;r++)e.writeMessage(4,h,o[r])}function s(t,e){var r=t.feature;void 0!==r.id&&e.writeVarintField(1,r.id),e.writeMessage(2,l,t),e.writeVarintField(3,r.type),e.writeMessage(4,p,r)}function l(t,e){var r=t.feature,n=t.keys,i=t.values,o=t.keycache,a=t.valuecache;for(var s in r.properties){var l=o[s];void 0===l&&(n.push(s),l=n.length-1,o[s]=l),e.writeVarint(l);var u=r.properties[s],c=typeof u;"string"!==c&&"boolean"!==c&&"number"!==c&&(u=JSON.stringify(u));var p=c+":"+u,h=a[p];void 0===h&&(i.push(u),h=i.length-1,a[p]=h),e.writeVarint(h)}}function u(t,e){return(e<<3)+(7&t)}function c(t){return t<<1^t>>31}function p(t,e){for(var r=t.loadGeometry(),n=t.type,i=0,o=0,a=r.length,s=0;s<a;s++){var l=r[s],p=1;1===n&&(p=l.length),e.writeVarint(u(1,p));for(var h=0;h<l.length;h++){1===h&&1!==n&&e.writeVarint(u(2,l.length-1));var f=l[h].x-i,d=l[h].y-o;e.writeVarint(c(f)),e.writeVarint(c(d)),i+=f,o+=d}}}function h(t,e){var r=typeof t;"string"===r?e.writeStringField(1,t):"boolean"===r?e.writeBooleanField(7,t):"number"===r&&(t%1!=0?e.writeDoubleField(3,t):t<0?e.writeSVarintField(6,t):e.writeVarintField(5,t))}var f=t("pbf"),d=t("./lib/geojson_wrapper");e.exports=n,e.exports.fromVectorTileJs=n,e.exports.fromGeojsonVt=i,e.exports.GeoJSONWrapper=d},{"./lib/geojson_wrapper":38,pbf:29}],38:[function(t,e,r){"use strict";function n(t){this.features=t,this.length=t.length}function i(t){this.id="number"==typeof t.id?t.id:void 0,this.type=t.type,this.rawGeometry=1===t.type?[t.geometry]:t.geometry,this.properties=t.tags,this.extent=4096}var o=t("@mapbox/point-geometry"),a=t("@mapbox/vector-tile").VectorTileFeature;e.exports=n,n.prototype.feature=function(t){return new i(this.features[t])},i.prototype.loadGeometry=function(){var t=this.rawGeometry;this.geometry=[];for(var e=0;e<t.length;e++){for(var r=t[e],n=[],i=0;i<r.length;i++)n.push(new o(r[i][0],r[i][1]));this.geometry.push(n)}return this.geometry},i.prototype.bbox=function(){this.geometry||this.loadGeometry();for(var t=this.geometry,e=1/0,r=-1/0,n=1/0,i=-1/0,o=0;o<t.length;o++)for(var a=t[o],s=0;s<a.length;s++){var l=a[s];e=Math.min(e,l.x),r=Math.max(r,l.x),n=Math.min(n,l.y),i=Math.max(i,l.y)}return[e,n,r,i]},i.prototype.toGeoJSON=a.prototype.toGeoJSON},{"@mapbox/point-geometry":2,"@mapbox/vector-tile":6}],39:[function(t,e,r){var n=arguments[3],i=arguments[4],o=arguments[5],a=JSON.stringify;e.exports=function(t,e){function r(t){v[t]=!0;for(var e in i[t][1]){var n=i[t][1][e];v[n]||r(n)}}for(var s,l=Object.keys(o),u=0,c=l.length;u<c;u++){var p=l[u],h=o[p].exports;if(h===t||h&&h.default===t){s=p;break}}if(!s){s=Math.floor(Math.pow(16,8)*Math.random()).toString(16);for(var f={},u=0,c=l.length;u<c;u++){var p=l[u];f[p]=p}i[s]=[Function(["require","module","exports"],"("+t+")(self)"),f]}var d=Math.floor(Math.pow(16,8)*Math.random()).toString(16),m={};m[s]=s,i[d]=[Function(["require"],"var f = require("+a(s)+");(f.default ? f.default : f)(self);"),m];var v={};r(d);var y="("+n+")({"+Object.keys(v).map(function(t){return a(t)+":["+i[t][0]+","+a(i[t][1])+"]"}).join(",")+"},{},["+a(d)+"])",g=window.URL||window.webkitURL||window.mozURL||window.msURL,_=new Blob([y],{type:"text/javascript"});if(e&&e.bare)return _;var x=g.createObjectURL(_),b=new Worker(x);return b.objectURL=x,b}},{}],40:[function(t,e,r){e.exports.RADIUS=6378137,e.exports.FLATTENING=1/298.257223563,e.exports.POLAR_RADIUS=6356752.3142},{}],41:[function(t,e,r){e.exports={version:"0.40.1"}},{}],42:[function(t,e,r){"use strict";var n=t("../util/util");e.exports={deserialize:function(t,e){var r={};if(!e)return r;for(var i=0,o=t;i<o.length;i+=1){var a=o[i],s=a.layerIds.map(function(t){return e.getLayer(t)}).filter(Boolean);if(0!==s.length)for(var l=s[0].createBucket(n.extend({layers:s},a)),u=0,c=s;u<c.length;u+=1){var p=c[u];r[p.id]=l}}return r}}},{"../util/util":223}],43:[function(t,e,r){"use strict";function n(t,e,r,n,i){t.emplaceBack(2*e+(n+1)/2,2*r+(i+1)/2)}var i=t("../segment"),o=i.SegmentVector,a=t("../../gl/vertex_buffer"),s=t("../../gl/index_buffer"),l=t("../program_configuration"),u=l.ProgramConfigurationSet,c=t("../vertex_array_type"),p=t("../index_array_type"),h=p.TriangleIndexArray,f=t("../load_geometry"),d=t("../extent"),m={layoutAttributes:[{name:"a_pos",components:2,type:"Int16"}],indexArrayType:h,paintAttributes:[{property:"circle-color"},{property:"circle-radius"},{property:"circle-blur"},{property:"circle-opacity"},{property:"circle-stroke-color"},{property:"circle-stroke-width"},{property:"circle-stroke-opacity"}]},v=c(m.layoutAttributes),y=function(t){this.zoom=t.zoom,this.overscaling=t.overscaling,this.layers=t.layers,this.index=t.index,this.layoutVertexArray=new v(t.layoutVertexArray),this.indexArray=new h(t.indexArray),this.programConfigurations=new u(m,t.layers,t.zoom,t.programConfigurations),this.segments=new o(t.segments)};y.prototype.populate=function(t,e){for(var r=this,n=0,i=t;n<i.length;n+=1){var o=i[n],a=o.feature,s=o.index,l=o.sourceLayerIndex;if(r.layers[0].filter(a)){var u=f(a);r.addFeature(a,u),e.featureIndex.insert(a,u,s,l,r.index)}}},y.prototype.isEmpty=function(){return 0===this.layoutVertexArray.length},y.prototype.serialize=function(t){return{zoom:this.zoom,layerIds:this.layers.map(function(t){return t.id}),layoutVertexArray:this.layoutVertexArray.serialize(t),indexArray:this.indexArray.serialize(t),programConfigurations:this.programConfigurations.serialize(t),segments:this.segments.get()}},y.prototype.upload=function(t){this.layoutVertexBuffer=new a(t,this.layoutVertexArray),this.indexBuffer=new s(t,this.indexArray),this.programConfigurations.upload(t)},y.prototype.destroy=function(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.programConfigurations.destroy(),this.segments.destroy())},y.prototype.addFeature=function(t,e){for(var r=this,i=0,o=e;i<o.length;i+=1)for(var a=o[i],s=0,l=a;s<l.length;s+=1){var u=l[s],c=u.x,p=u.y;if(!(c<0||c>=d||p<0||p>=d)){var h=r.segments.prepareSegment(4,r.layoutVertexArray,r.indexArray),f=h.vertexLength;n(r.layoutVertexArray,c,p,-1,-1),n(r.layoutVertexArray,c,p,1,-1),n(r.layoutVertexArray,c,p,1,1),n(r.layoutVertexArray,c,p,-1,1),r.indexArray.emplaceBack(f,f+1,f+2),r.indexArray.emplaceBack(f,f+3,f+2),h.vertexLength+=4,h.primitiveLength+=2}}this.programConfigurations.populatePaintArrays(this.layoutVertexArray.length,t.properties)},y.programInterface=m,e.exports=y},{"../../gl/index_buffer":61,"../../gl/vertex_buffer":62,"../extent":48,"../index_array_type":50,"../load_geometry":51,"../program_configuration":53,"../segment":55,"../vertex_array_type":56}],44:[function(t,e,r){"use strict";var n=t("../segment"),i=n.SegmentVector,o=t("../../gl/vertex_buffer"),a=t("../../gl/index_buffer"),s=t("../program_configuration"),l=s.ProgramConfigurationSet,u=t("../vertex_array_type"),c=t("../index_array_type"),p=c.LineIndexArray,h=c.TriangleIndexArray,f=t("../load_geometry"),d=t("earcut"),m=t("../../util/classify_rings"),v={layoutAttributes:[{name:"a_pos",components:2,type:"Int16"}],indexArrayType:h,indexArrayType2:p,paintAttributes:[{property:"fill-color"},{property:"fill-outline-color"},{property:"fill-opacity"}]},y=u(v.layoutAttributes),g=function(t){this.zoom=t.zoom,this.overscaling=t.overscaling,this.layers=t.layers,this.index=t.index,this.layoutVertexArray=new y(t.layoutVertexArray),this.indexArray=new h(t.indexArray),this.indexArray2=new p(t.indexArray2),this.programConfigurations=new l(v,t.layers,t.zoom,t.programConfigurations),this.segments=new i(t.segments),this.segments2=new i(t.segments2)};g.prototype.populate=function(t,e){for(var r=this,n=0,i=t;n<i.length;n+=1){var o=i[n],a=o.feature,s=o.index,l=o.sourceLayerIndex;if(r.layers[0].filter(a)){var u=f(a);r.addFeature(a,u),e.featureIndex.insert(a,u,s,l,r.index)}}},g.prototype.isEmpty=function(){return 0===this.layoutVertexArray.length},g.prototype.serialize=function(t){return{zoom:this.zoom,layerIds:this.layers.map(function(t){return t.id}),layoutVertexArray:this.layoutVertexArray.serialize(t),indexArray:this.indexArray.serialize(t),indexArray2:this.indexArray2.serialize(t),programConfigurations:this.programConfigurations.serialize(t),segments:this.segments.get(),segments2:this.segments2.get()}},g.prototype.upload=function(t){this.layoutVertexBuffer=new o(t,this.layoutVertexArray),this.indexBuffer=new a(t,this.indexArray),this.indexBuffer2=new a(t,this.indexArray2),this.programConfigurations.upload(t)},g.prototype.destroy=function(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.indexBuffer2.destroy(),this.programConfigurations.destroy(),this.segments.destroy(),this.segments2.destroy())},g.prototype.addFeature=function(t,e){for(var r=this,n=0,i=m(e,500);n<i.length;n+=1){for(var o=i[n],a=0,s=0,l=o;s<l.length;s+=1)a+=l[s].length;for(var u=r.segments.prepareSegment(a,r.layoutVertexArray,r.indexArray),c=u.vertexLength,p=[],h=[],f=0,v=o;f<v.length;f+=1){var y=v[f];if(0!==y.length){y!==o[0]&&h.push(p.length/2);var g=r.segments2.prepareSegment(y.length,r.layoutVertexArray,r.indexArray2),_=g.vertexLength;r.layoutVertexArray.emplaceBack(y[0].x,y[0].y),r.indexArray2.emplaceBack(_+y.length-1,_),p.push(y[0].x),p.push(y[0].y);for(var x=1;x<y.length;x++)r.layoutVertexArray.emplaceBack(y[x].x,y[x].y),r.indexArray2.emplaceBack(_+x-1,_+x),p.push(y[x].x),p.push(y[x].y);g.vertexLength+=y.length,g.primitiveLength+=y.length}}for(var b=d(p,h),w=0;w<b.length;w+=3)r.indexArray.emplaceBack(c+b[w],c+b[w+1],c+b[w+2]);u.vertexLength+=a,u.primitiveLength+=b.length/3}this.programConfigurations.populatePaintArrays(this.layoutVertexArray.length,t.properties)},g.programInterface=v,e.exports=g},{"../../gl/index_buffer":61,"../../gl/vertex_buffer":62,"../../util/classify_rings":205,"../index_array_type":50,"../load_geometry":51,"../program_configuration":53,"../segment":55,"../vertex_array_type":56,earcut:11}],45:[function(t,e,r){"use strict";function n(t,e,r,n,i,o,a,s){t.emplaceBack(e,r,2*Math.floor(n*x)+a,i*x*2,o*x*2,Math.round(s))}function i(t,e){return t.x===e.x&&(t.x<0||t.x>v)||t.y===e.y&&(t.y<0||t.y>v)}var o=t("../segment"),a=o.SegmentVector,s=o.MAX_VERTEX_ARRAY_LENGTH,l=t("../../gl/vertex_buffer"),u=t("../../gl/index_buffer"),c=t("../program_configuration"),p=c.ProgramConfigurationSet,h=t("../vertex_array_type"),f=t("../index_array_type"),d=f.TriangleIndexArray,m=t("../load_geometry"),v=t("../extent"),y=t("earcut"),g=t("../../util/classify_rings"),_={layoutAttributes:[{name:"a_pos",components:2,type:"Int16"},{name:"a_normal",components:3,type:"Int16"},{name:"a_edgedistance",components:1,type:"Int16"}],indexArrayType:d,paintAttributes:[{property:"fill-extrusion-base"},{property:"fill-extrusion-height"},{property:"fill-extrusion-color"}]},x=Math.pow(2,13),b=h(_.layoutAttributes),w=function(t){this.zoom=t.zoom,this.overscaling=t.overscaling,this.layers=t.layers,this.index=t.index,this.layoutVertexArray=new b(t.layoutVertexArray),this.indexArray=new d(t.indexArray),this.programConfigurations=new p(_,t.layers,t.zoom,t.programConfigurations),this.segments=new a(t.segments)};w.prototype.populate=function(t,e){for(var r=this,n=0,i=t;n<i.length;n+=1){var o=i[n],a=o.feature,s=o.index,l=o.sourceLayerIndex;if(r.layers[0].filter(a)){var u=m(a);r.addFeature(a,u),e.featureIndex.insert(a,u,s,l,r.index)}}},w.prototype.isEmpty=function(){return 0===this.layoutVertexArray.length},w.prototype.serialize=function(t){return{zoom:this.zoom,layerIds:this.layers.map(function(t){return t.id}),layoutVertexArray:this.layoutVertexArray.serialize(t),indexArray:this.indexArray.serialize(t),programConfigurations:this.programConfigurations.serialize(t),segments:this.segments.get()}},w.prototype.upload=function(t){this.layoutVertexBuffer=new l(t,this.layoutVertexArray),this.indexBuffer=new u(t,this.indexArray),this.programConfigurations.upload(t)},w.prototype.destroy=function(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.programConfigurations.destroy(),this.segments.destroy())},w.prototype.addFeature=function(t,e){for(var r=this,o=0,a=g(e,500);o<a.length;o+=1){for(var l=a[o],u=0,c=0,p=l;c<p.length;c+=1)u+=p[c].length;for(var h=r.segments.prepareSegment(4,r.layoutVertexArray,r.indexArray),f=0,d=l;f<d.length;f+=1){var m=d[f];if(0!==m.length)for(var v=0,_=0;_<m.length;_++){var x=m[_];if(_>=1){var b=m[_-1];if(!i(x,b)){h.vertexLength+4>s&&(h=r.segments.prepareSegment(4,r.layoutVertexArray,r.indexArray));var w=x.sub(b)._perp()._unit();n(r.layoutVertexArray,x.x,x.y,w.x,w.y,0,0,v),n(r.layoutVertexArray,x.x,x.y,w.x,w.y,0,1,v),v+=b.dist(x),n(r.layoutVertexArray,b.x,b.y,w.x,w.y,0,0,v),n(r.layoutVertexArray,b.x,b.y,w.x,w.y,0,1,v);var T=h.vertexLength;r.indexArray.emplaceBack(T,T+1,T+2),r.indexArray.emplaceBack(T+1,T+2,T+3),h.vertexLength+=4,h.primitiveLength+=2}}}}h.vertexLength+u>s&&(h=r.segments.prepareSegment(u,r.layoutVertexArray,r.indexArray));for(var S=[],z=[],A=h.vertexLength,C=0,E=l;C<E.length;C+=1){var k=E[C];if(0!==k.length){k!==l[0]&&z.push(S.length/2);for(var M=0;M<k.length;M++){var L=k[M];n(r.layoutVertexArray,L.x,L.y,0,0,1,1,0),S.push(L.x),S.push(L.y)}}}for(var I=y(S,z),P=0;P<I.length;P+=3)r.indexArray.emplaceBack(A+I[P],A+I[P+1],A+I[P+2]);h.primitiveLength+=I.length/3,h.vertexLength+=u}this.programConfigurations.populatePaintArrays(this.layoutVertexArray.length,t.properties)},w.programInterface=_,e.exports=w},{"../../gl/index_buffer":61,"../../gl/vertex_buffer":62,"../../util/classify_rings":205,"../extent":48,"../index_array_type":50,"../load_geometry":51,"../program_configuration":53,"../segment":55,"../vertex_array_type":56,earcut:11}],46:[function(t,e,r){"use strict";function n(t,e,r,n,i,o,a){t.emplaceBack(e.x,e.y,n?1:0,i?1:-1,Math.round(v*r.x)+128,Math.round(v*r.y)+128,1+(0===o?0:o<0?-1:1)|(a*g&63)<<2,a*g>>6)}var i=t("../segment"),o=i.SegmentVector,a=t("../../gl/vertex_buffer"),s=t("../../gl/index_buffer"),l=t("../program_configuration"),u=l.ProgramConfigurationSet,c=t("../vertex_array_type"),p=t("../index_array_type"),h=p.TriangleIndexArray,f=t("../load_geometry"),d=t("../extent"),m=t("@mapbox/vector-tile").VectorTileFeature.types,v=63,y=Math.cos(Math.PI/180*37.5),g=.5,_=Math.pow(2,14)/g,x={layoutAttributes:[{name:"a_pos_normal",components:4,type:"Int16"},{name:"a_data",components:4,type:"Uint8"}],paintAttributes:[{property:"line-color"},{property:"line-blur"},{property:"line-opacity"},{property:"line-gap-width",name:"gapwidth"},{property:"line-offset"},{property:"line-width"},{property:"line-width",name:"floorwidth",useIntegerZoom:!0}],indexArrayType:h},b=c(x.layoutAttributes),w=function(t){this.zoom=t.zoom,this.overscaling=t.overscaling,this.layers=t.layers,this.index=t.index,this.layoutVertexArray=new b(t.layoutVertexArray),this.indexArray=new h(t.indexArray),this.programConfigurations=new u(x,t.layers,t.zoom,t.programConfigurations),this.segments=new o(t.segments)};w.prototype.populate=function(t,e){for(var r=this,n=0,i=t;n<i.length;n+=1){var o=i[n],a=o.feature,s=o.index,l=o.sourceLayerIndex;if(r.layers[0].filter(a)){var u=f(a);r.addFeature(a,u),e.featureIndex.insert(a,u,s,l,r.index)}}},w.prototype.isEmpty=function(){return 0===this.layoutVertexArray.length},w.prototype.serialize=function(t){return{zoom:this.zoom,layerIds:this.layers.map(function(t){return t.id}),layoutVertexArray:this.layoutVertexArray.serialize(t),indexArray:this.indexArray.serialize(t),programConfigurations:this.programConfigurations.serialize(t),segments:this.segments.get()}},w.prototype.upload=function(t){this.layoutVertexBuffer=new a(t,this.layoutVertexArray),this.indexBuffer=new s(t,this.indexArray),this.programConfigurations.upload(t)},w.prototype.destroy=function(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.programConfigurations.destroy(),this.segments.destroy())},w.prototype.addFeature=function(t,e){for(var r=this,n=this.layers[0].layout,i=this.layers[0].getLayoutValue("line-join",{zoom:this.zoom},t.properties),o=n["line-cap"],a=n["line-miter-limit"],s=n["line-round-limit"],l=0,u=e;l<u.length;l+=1){var c=u[l];r.addLine(c,t,i,o,a,s)}},w.prototype.addLine=function(t,e,r,n,i,o){for(var a=this,s=e.properties,l="Polygon"===m[e.type],u=t.length;u>=2&&t[u-1].equals(t[u-2]);)u--;for(var c=0;c<u-1&&t[c].equals(t[c+1]);)c++;if(!(u<(l?3:2))){"bevel"===r&&(i=1.05);var p=d/(512*this.overscaling)*15,h=t[c],f=this.segments.prepareSegment(10*u,this.layoutVertexArray,this.indexArray);this.distance=0;var v,g,_,x=n,b=l?"butt":n,w=!0,T=void 0,S=void 0,z=void 0,A=void 0;this.e1=this.e2=this.e3=-1,l&&(v=t[u-2],A=h.sub(v)._unit()._perp());for(var C=c;C<u;C++)if(!(S=l&&C===u-1?t[c+1]:t[C+1])||!t[C].equals(S)){A&&(z=A),v&&(T=v),v=t[C],A=S?S.sub(v)._unit()._perp():z,z=z||A;var E=z.add(A);0===E.x&&0===E.y||E._unit();var k=E.x*A.x+E.y*A.y,M=0!==k?1/k:1/0,L=k<y&&T&&S;if(L&&C>c){var I=v.dist(T);if(I>2*p){var P=v.sub(v.sub(T)._mult(p/I)._round());a.distance+=P.dist(T),a.addCurrentVertex(P,a.distance,z.mult(1),0,0,!1,f),T=P}}var R=T&&S,D=R?r:S?x:b;if(R&&"round"===D&&(M<o?D="miter":M<=2&&(D="fakeround")),"miter"===D&&M>i&&(D="bevel"),"bevel"===D&&(M>2&&(D="flipbevel"),M<i&&(D="miter")),T&&(a.distance+=v.dist(T)),"miter"===D)E._mult(M),a.addCurrentVertex(v,a.distance,E,0,0,!1,f);else if("flipbevel"===D){if(M>100)E=A.clone().mult(-1);else{var O=z.x*A.y-z.y*A.x>0?-1:1,B=M*z.add(A).mag()/z.sub(A).mag();E._perp()._mult(B*O)}a.addCurrentVertex(v,a.distance,E,0,0,!1,f),a.addCurrentVertex(v,a.distance,E.mult(-1),0,0,!1,f)}else if("bevel"===D||"fakeround"===D){var F=z.x*A.y-z.y*A.x>0,j=-Math.sqrt(M*M-1);if(F?(_=0,g=j):(g=0,_=j),w||a.addCurrentVertex(v,a.distance,z,g,_,!1,f),"fakeround"===D){for(var V=Math.floor(8*(.5-(k-.5))),N=void 0,U=0;U<V;U++)N=A.mult((U+1)/(V+1))._add(z)._unit(),a.addPieSliceVertex(v,a.distance,N,F,f);a.addPieSliceVertex(v,a.distance,E,F,f);for(var $=V-1;$>=0;$--)N=z.mult(($+1)/(V+1))._add(A)._unit(),a.addPieSliceVertex(v,a.distance,N,F,f)}S&&a.addCurrentVertex(v,a.distance,A,-g,-_,!1,f)}else"butt"===D?(w||a.addCurrentVertex(v,a.distance,z,0,0,!1,f),S&&a.addCurrentVertex(v,a.distance,A,0,0,!1,f)):"square"===D?(w||(a.addCurrentVertex(v,a.distance,z,1,1,!1,f),a.e1=a.e2=-1),S&&a.addCurrentVertex(v,a.distance,A,-1,-1,!1,f)):"round"===D&&(w||(a.addCurrentVertex(v,a.distance,z,0,0,!1,f),a.addCurrentVertex(v,a.distance,z,1,1,!0,f),a.e1=a.e2=-1),S&&(a.addCurrentVertex(v,a.distance,A,-1,-1,!0,f),a.addCurrentVertex(v,a.distance,A,0,0,!1,f)));if(L&&C<u-1){var q=v.dist(S);if(q>2*p){var Z=v.add(S.sub(v)._mult(p/q)._round());a.distance+=Z.dist(v),a.addCurrentVertex(Z,a.distance,A.mult(1),0,0,!1,f),v=Z}}w=!1}this.programConfigurations.populatePaintArrays(this.layoutVertexArray.length,s)}},w.prototype.addCurrentVertex=function(t,e,r,i,o,a,s){var l,u=this.layoutVertexArray,c=this.indexArray;l=r.clone(),i&&l._sub(r.perp()._mult(i)),n(u,t,l,a,!1,i,e),this.e3=s.vertexLength++,this.e1>=0&&this.e2>=0&&(c.emplaceBack(this.e1,this.e2,this.e3),s.primitiveLength++),this.e1=this.e2,this.e2=this.e3,l=r.mult(-1),o&&l._sub(r.perp()._mult(o)),n(u,t,l,a,!0,-o,e),this.e3=s.vertexLength++,this.e1>=0&&this.e2>=0&&(c.emplaceBack(this.e1,this.e2,this.e3),s.primitiveLength++),this.e1=this.e2,this.e2=this.e3,e>_/2&&(this.distance=0,this.addCurrentVertex(t,this.distance,r,i,o,a,s))},w.prototype.addPieSliceVertex=function(t,e,r,i,o){r=r.mult(i?-1:1);var a=this.layoutVertexArray,s=this.indexArray;n(a,t,r,!1,i,0,e),this.e3=o.vertexLength++,this.e1>=0&&this.e2>=0&&(s.emplaceBack(this.e1,this.e2,this.e3),o.primitiveLength++),i?this.e2=this.e3:this.e1=this.e3},w.programInterface=x,e.exports=w},{"../../gl/index_buffer":61,"../../gl/vertex_buffer":62,"../extent":48,"../index_array_type":50,"../load_geometry":51,"../program_configuration":53,"../segment":55,"../vertex_array_type":56,"@mapbox/vector-tile":6}],47:[function(t,e,r){"use strict";function n(t,e,r,n,i,o,a,s){t.emplaceBack(e,r,Math.round(64*n),Math.round(64*i),o,a,s?s[0]:void 0,s?s[1]:void 0)}function i(t,e,r,n){var i=2*Math.PI,o=b((r+i)%i/i*255,10*n);t.emplaceBack(e.x,e.y,o),t.emplaceBack(e.x,e.y,o),t.emplaceBack(e.x,e.y,o),t.emplaceBack(e.x,e.y,o)}function o(t,e,r,n,i,o){return t.emplaceBack(e.x,e.y,r.x,r.y,Math.round(n.x),Math.round(n.y),10*i,10*o)}function a(t,e,r){var n={};if(n.isFeatureConstant=e.isLayoutValueFeatureConstant(r),n.isZoomConstant=e.isLayoutValueZoomConstant(r),n.isFeatureConstant&&(n.layoutSize=e.getLayoutValue(r,{zoom:t+1})),!n.isZoomConstant){for(var i=e.getLayoutValueStopZoomLevels(r),o=0;o<i.length&&i[o]<=t;)o++;o=Math.max(0,o-1);for(var a=o;a<i.length&&i[a]<t+1;)a++;a=Math.min(i.length-1,a),n.coveringZoomRange=[i[o],i[a]],e.isLayoutValueFeatureConstant(r)&&(n.coveringStopValues=[e.getLayoutValue(r,{zoom:i[o]}),e.getLayoutValue(r,{zoom:i[a]})]),n.functionBase=e.getLayoutProperty(r).base,void 0===n.functionBase&&(n.functionBase=1),n.functionType=e.getLayoutProperty(r).type||"exponential"}return n}function s(t,e,r,n,i){return t.isLayoutValueZoomConstant(n)&&!t.isLayoutValueFeatureConstant(n)?[10*t.getLayoutValue(n,{},i)]:t.isLayoutValueZoomConstant(n)||t.isLayoutValueFeatureConstant(n)?null:[10*t.getLayoutValue(n,{zoom:r[0]},i),10*t.getLayoutValue(n,{zoom:r[1]},i)]}var l=t("@mapbox/point-geometry"),u=t("../segment"),c=u.SegmentVector,p=t("../../gl/vertex_buffer"),h=t("../../gl/index_buffer"),f=t("../program_configuration"),d=f.ProgramConfigurationSet,m=t("../vertex_array_type"),v=t("../index_array_type"),y=v.TriangleIndexArray,g=v.LineIndexArray,_=t("../extent"),x=t("../../shaders/encode_attribute"),b=x.packUint8ToFloat,w=t("../../symbol/anchor"),T=t("../../symbol/get_anchors"),S=t("../../util/token"),z=t("../../symbol/quads"),A=z.getGlyphQuads,C=z.getIconQuads,E=t("../../symbol/shaping"),k=E.shapeText,M=E.shapeIcon,L=E.WritingMode,I=t("../../symbol/transform_text"),P=t("../../symbol/mergelines"),R=t("../../symbol/clip_line"),D=t("../../util/util"),O=t("../../util/script_detection"),B=t("../load_geometry"),F=t("../../symbol/collision_feature"),j=t("../../util/find_pole_of_inaccessibility"),V=t("../../util/classify_rings"),N=t("@mapbox/vector-tile").VectorTileFeature.types,U=t("../../util/struct_array"),$=t("../../util/verticalize_punctuation"),q=U({members:[{type:"Int16",name:"anchorX"},{type:"Int16",name:"anchorY"},{type:"Uint16",name:"glyphStartIndex"},{type:"Uint16",name:"numGlyphs"},{type:"Uint32",name:"lineStartIndex"},{type:"Uint32",name:"lineLength"},{type:"Uint16",name:"segment"},{type:"Uint16",name:"lowerSize"},{type:"Uint16",name:"upperSize"},{type:"Float32",name:"lineOffsetX"},{type:"Float32",name:"lineOffsetY"},{type:"Float32",name:"placementZoom"},{type:"Uint8",name:"vertical"}]}),Z=U({members:[{type:"Float32",name:"offsetX"}]}),G=U({members:[{type:"Int16",name:"x"},{type:"Int16",name:"y"}]}),W=[{name:"a_pos_offset",components:4,type:"Int16"},{name:"a_data",components:4,type:"Uint16"}],H=[{name:"a_projected_pos",components:3,type:"Float32"}],X={text:{layoutAttributes:W,dynamicLayoutAttributes:H,indexArrayType:y,paintAttributes:[{property:"text-color",name:"fill_color"},{property:"text-halo-color",name:"halo_color"},{property:"text-halo-width",name:"halo_width"},{property:"text-halo-blur",name:"halo_blur"},{property:"text-opacity",name:"opacity"}]},icon:{layoutAttributes:W,dynamicLayoutAttributes:H,indexArrayType:y,paintAttributes:[{property:"icon-color",name:"fill_color"},{property:"icon-halo-color",name:"halo_color"},{property:"icon-halo-width",name:"halo_width"},{property:"icon-halo-blur",name:"halo_blur"},{property:"icon-opacity",name:"opacity"}]},collisionBox:{layoutAttributes:[{name:"a_pos",components:2,type:"Int16"},{name:"a_anchor_pos",components:2,type:"Int16"},{name:"a_extrude",components:2,type:"Int16"},{name:"a_data",components:2,type:"Uint8"}],indexArrayType:g}},K=function(t,e,r,n){this.programInterface=t;var i=m(t.layoutAttributes),o=t.indexArrayType;if(this.layoutVertexArray=new i(n&&n.layoutVertexArray),this.indexArray=new o(n&&n.indexArray),this.programConfigurations=new d(t,e,r,n&&n.programConfigurations),this.segments=new c(n&&n.segments),t.dynamicLayoutAttributes){var a=m(t.dynamicLayoutAttributes);this.dynamicLayoutVertexArray=new a(n&&n.dynamicLayoutVertexArray)}};K.prototype.serialize=function(t){return{layoutVertexArray:this.layoutVertexArray.serialize(t),indexArray:this.indexArray.serialize(t),programConfigurations:this.programConfigurations.serialize(t),segments:this.segments.get(),dynamicLayoutVertexArray:this.dynamicLayoutVertexArray&&this.dynamicLayoutVertexArray.serialize(t)}},K.prototype.upload=function(t){this.layoutVertexBuffer=new p(t,this.layoutVertexArray),this.indexBuffer=new h(t,this.indexArray),this.programConfigurations.upload(t),this.programInterface.dynamicLayoutAttributes&&(this.dynamicLayoutVertexBuffer=new p(t,this.dynamicLayoutVertexArray,!0))},K.prototype.destroy=function(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.programConfigurations.destroy(),this.segments.destroy(),this.dynamicLayoutVertexBuffer&&this.dynamicLayoutVertexBuffer.destroy())};var J=function(t){if(this.collisionBoxArray=t.collisionBoxArray,this.zoom=t.zoom,this.overscaling=t.overscaling,this.layers=t.layers,this.index=t.index,this.sdfIcons=t.sdfIcons,this.iconsNeedLinear=t.iconsNeedLinear,this.pixelRatio=t.pixelRatio,t.text)this.text=new K(X.text,t.layers,t.zoom,t.text),this.icon=new K(X.icon,t.layers,t.zoom,t.icon),this.collisionBox=new K(X.collisionBox,t.layers,t.zoom,t.collisionBox),this.textSizeData=t.textSizeData,this.iconSizeData=t.iconSizeData,this.placedGlyphArray=new q(t.placedGlyphArray),this.placedIconArray=new q(t.placedIconArray),this.glyphOffsetArray=new Z(t.glyphOffsetArray),this.lineVertexArray=new G(t.lineVertexArray);else{var e=this.layers[0];this.textSizeData=a(this.zoom,e,"text-size"),this.iconSizeData=a(this.zoom,e,"icon-size")}};J.prototype.populate=function(t,e){var r=this,n=this.layers[0],i=n.layout,o=i["text-font"],a=(!n.isLayoutValueFeatureConstant("text-field")||i["text-field"])&&o,s=!n.isLayoutValueFeatureConstant("icon-image")||i["icon-image"];if(this.features=[],a||s){for(var l=e.iconDependencies,u=e.glyphDependencies,c=u[o]=u[o]||{},p={zoom:this.zoom},h=0,f=t;h<f.length;h+=1){var d=f[h],m=d.feature,v=d.index,y=d.sourceLayerIndex;if(n.filter(m)){var g=void 0;a&&(g=n.getLayoutValue("text-field",p,m.properties),n.isLayoutValueFeatureConstant("text-field")&&(g=S(m.properties,g)),g=I(g,n,p,m.properties));var _=void 0;if(s&&(_=n.getLayoutValue("icon-image",p,m.properties),n.isLayoutValueFeatureConstant("icon-image")&&(_=S(m.properties,_))),(g||_)&&(r.features.push({text:g,icon:_,index:v,sourceLayerIndex:y,geometry:B(m),properties:m.properties,type:N[m.type]}),_&&(l[_]=!0),g))for(var x="map"===i["text-rotation-alignment"]&&"line"===i["symbol-placement"],b=O.allowsVerticalWritingMode(g),w=0;w<g.length;w++)if(c[g.charCodeAt(w)]=!0,x&&b){var T=$.lookup[g.charAt(w)];T&&(c[T.charCodeAt(0)]=!0)}}}"line"===i["symbol-placement"]&&(this.features=P(this.features))}},J.prototype.isEmpty=function(){return 0===this.icon.layoutVertexArray.length&&0===this.text.layoutVertexArray.length&&0===this.collisionBox.layoutVertexArray.length},J.prototype.serialize=function(t){return{zoom:this.zoom,layerIds:this.layers.map(function(t){return t.id}),sdfIcons:this.sdfIcons,iconsNeedLinear:this.iconsNeedLinear,textSizeData:this.textSizeData,iconSizeData:this.iconSizeData,placedGlyphArray:this.placedGlyphArray.serialize(t),placedIconArray:this.placedIconArray.serialize(t),glyphOffsetArray:this.glyphOffsetArray.serialize(t),lineVertexArray:this.lineVertexArray.serialize(t),text:this.text.serialize(t),icon:this.icon.serialize(t),collisionBox:this.collisionBox.serialize(t)}},J.prototype.upload=function(t){this.text.upload(t),this.icon.upload(t),this.collisionBox.upload(t)},J.prototype.destroy=function(){this.text.destroy(),this.icon.destroy(),this.collisionBox.destroy()},J.prototype.prepare=function(t,e,r,n){var i=this;this.symbolInstances=[];var o=512*this.overscaling;this.tilePixelRatio=_/o,this.compareText={},this.iconsNeedLinear=!1;for(var a=this.layers[0].layout,s=24*a["text-line-height"],l=a["text-font"].join(","),u="map"===a["text-rotation-alignment"]&&"line"===a["symbol-placement"],c=t[l]||{},p=e[l]||{},h=0,f=i.features;h<f.length;h+=1){var d=f[h],m={},v=d.text;if(v){var y=i.layers[0].getLayoutValue("text-offset",{zoom:i.zoom},d.properties).map(function(t){return 24*t}),g=24*i.layers[0].getLayoutValue("text-letter-spacing",{zoom:i.zoom},d.properties),x=O.allowsLetterSpacing(v)?g:0,b=i.layers[0].getLayoutValue("text-anchor",{zoom:i.zoom},d.properties),w=i.layers[0].getLayoutValue("text-justify",{zoom:i.zoom},d.properties),T="line"!==a["symbol-placement"]?24*i.layers[0].getLayoutValue("text-max-width",{zoom:i.zoom},d.properties):0,S=function(t,e){return k(t,c,T,s,b,w,x,y,24,e)};m[L.horizontal]=S(v,L.horizontal),O.allowsVerticalWritingMode(v)&&u&&(m[L.vertical]=S(v,L.vertical))}var z=void 0;if(d.icon){var A=r[d.icon];A&&(z=M(n[d.icon],i.layers[0].getLayoutValue("icon-offset",{zoom:i.zoom},d.properties),i.layers[0].getLayoutValue("icon-anchor",{zoom:i.zoom},d.properties)),void 0===i.sdfIcons?i.sdfIcons=A.sdf:i.sdfIcons!==A.sdf&&D.warnOnce("Style sheet warning: Cannot mix SDF and non-SDF icons in one buffer"),A.pixelRatio!==i.pixelRatio?i.iconsNeedLinear=!0:0===a["icon-rotate"]&&i.layers[0].isLayoutValueFeatureConstant("icon-rotate")||(i.iconsNeedLinear=!0))}(m[L.horizontal]||z)&&i.addFeature(d,m,z,p)}},J.prototype.addFeature=function(t,e,r,n){var i=this,o=this.layers[0].getLayoutValue("text-size",{zoom:this.zoom+1},t.properties),a=this.layers[0].getLayoutValue("icon-size",{zoom:this.zoom+1},t.properties),s=this.layers[0].getLayoutValue("text-offset",{zoom:this.zoom},t.properties),l=this.layers[0].getLayoutValue("icon-offset",{zoom:this.zoom},t.properties),u=this.layers[0].getLayoutValue("text-size",{zoom:18},t.properties);void 0===u&&(u=o);var c=this.layers[0].layout,p=o/24,h=this.tilePixelRatio*p,f=this.tilePixelRatio*u/24,d=this.tilePixelRatio*a,m=this.tilePixelRatio*c["symbol-spacing"],v=c["symbol-avoid-edges"],y=c["text-padding"]*this.tilePixelRatio,g=c["icon-padding"]*this.tilePixelRatio,x=c["text-max-angle"]/180*Math.PI,b="map"===c["text-rotation-alignment"]&&"line"===c["symbol-placement"],S="map"===c["icon-rotation-alignment"]&&"line"===c["symbol-placement"],z=c["text-allow-overlap"]||c["icon-allow-overlap"]||c["text-ignore-placement"]||c["icon-ignore-placement"],A=c["symbol-placement"],C=m/2,E=function(o,a){var u=!(a.x<0||a.x>_||a.y<0||a.y>_);if(!v||u){var c=u||z;i.addSymbolInstance(a,o,e,r,i.layers[0],c,i.collisionBoxArray,t.index,t.sourceLayerIndex,i.index,h,y,b,s,d,g,S,l,{zoom:i.zoom},t.properties,n)}};if("line"===A)for(var k=0,M=R(t.geometry,0,0,_,_);k<M.length;k+=1)for(var I=M[k],P=T(I,m,x,e[L.vertical]||e[L.horizontal],r,24,f,i.overscaling,_),D=0,O=P;D<O.length;D+=1){var B=O[D],F=e[L.horizontal];F&&i.anchorIsTooClose(F.text,C,B)||E(I,B)}else if("Polygon"===t.type)for(var N=0,U=V(t.geometry,0);N<U.length;N+=1){var $=U[N],q=j($,16);E($[0],new w(q.x,q.y,0))}else if("LineString"===t.type)for(var Z=0,G=t.geometry;Z<G.length;Z+=1){var W=G[Z];E(W,new w(W[0].x,W[0].y,0))}else if("Point"===t.type)for(var H=0,X=t.geometry;H<X.length;H+=1)for(var K=X[H],J=0,Y=K;J<Y.length;J+=1){var Q=Y[J];E([Q],new w(Q.x,Q.y,0))}},J.prototype.anchorIsTooClose=function(t,e,r){var n=this.compareText;if(t in n){for(var i=n[t],o=i.length-1;o>=0;o--)if(r.dist(i[o])<e)return!0}else n[t]=[];return n[t].push(r),!1},J.prototype.place=function(t,e){var r=this;this.text=new K(X.text,this.layers,this.zoom),this.icon=new K(X.icon,this.layers,this.zoom),this.collisionBox=new K(X.collisionBox,this.layers,this.zoom),this.placedGlyphArray=new q,this.placedIconArray=new q,this.glyphOffsetArray=new Z,this.lineVertexArray=new G;var n=this.layers[0],i=n.layout,o=t.maxScale,a="map"===i["text-rotation-alignment"]&&"line"===i["symbol-placement"],l="map"===i["icon-rotation-alignment"]&&"line"===i["symbol-placement"];if(i["text-allow-overlap"]||i["icon-allow-overlap"]||i["text-ignore-placement"]||i["icon-ignore-placement"]){var u=t.angle,c=Math.sin(u),p=Math.cos(u);this.symbolInstances.sort(function(t,e){return(c*t.anchor.x+p*t.anchor.y|0)-(c*e.anchor.x+p*e.anchor.y|0)||e.featureIndex-t.featureIndex})}for(var h=0,f=r.symbolInstances;h<f.length;h+=1){var d=f[h],m={boxStartIndex:d.textBoxStartIndex,boxEndIndex:d.textBoxEndIndex},v={boxStartIndex:d.iconBoxStartIndex,boxEndIndex:d.iconBoxEndIndex},y=!(d.textBoxStartIndex===d.textBoxEndIndex),g=!(d.iconBoxStartIndex===d.iconBoxEndIndex),_=i["text-optional"]||!y,x=i["icon-optional"]||!g,b=y?t.placeCollisionFeature(m,i["text-allow-overlap"],i["symbol-avoid-edges"]):t.minScale,w=g?t.placeCollisionFeature(v,i["icon-allow-overlap"],i["symbol-avoid-edges"]):t.minScale;if(_||x?!x&&b?b=Math.max(w,b):!_&&w&&(w=Math.max(w,b)):w=b=Math.max(w,b),y||g){for(var T=d.line,S=r.lineVertexArray.length,z=0;z<T.length;z++)r.lineVertexArray.emplaceBack(T[z].x,T[z].y);var A=r.lineVertexArray.length-S;if(y&&(t.insertCollisionFeature(m,b,i["text-ignore-placement"]),b<=o)){var C=s(n,r.zoom,r.textSizeData.coveringZoomRange,"text-size",d.featureProperties);r.addSymbols(r.text,d.glyphQuads,b,C,i["text-keep-upright"],d.textOffset,a,t.angle,d.featureProperties,d.writingModes,d.anchor,S,A,r.placedGlyphArray)}if(g&&(t.insertCollisionFeature(v,w,i["icon-ignore-placement"]),w<=o)){var E=s(n,r.zoom,r.iconSizeData.coveringZoomRange,"icon-size",d.featureProperties);r.addSymbols(r.icon,d.iconQuads,w,E,i["icon-keep-upright"],d.iconOffset,l,t.angle,d.featureProperties,0,d.anchor,S,A,r.placedIconArray)}}}e&&this.addToDebugBuffers(t)},J.prototype.addSymbols=function(t,e,r,o,a,s,l,u,c,p,h,f,d,m){for(var v=this,y=t.indexArray,g=t.layoutVertexArray,_=t.dynamicLayoutVertexArray,x=this.zoom,b=Math.max(Math.log(r)/Math.LN2+x,0),w=this.glyphOffsetArray.length,T=(h.angle+u+2*Math.PI)%(2*Math.PI),S=T>1*Math.PI/4&&T<=3*Math.PI/4||T>5*Math.PI/4&&T<=7*Math.PI/4,z=Boolean(p&L.vertical)&&S,A=0,C=e;A<C.length;A+=1){var E=C[A];if(!l||!a||E.writingMode===L.vertical===z){var k=E.tl,M=E.tr,I=E.bl,P=E.br,R=E.tex,D=t.segments.prepareSegment(4,t.layoutVertexArray,t.indexArray),O=D.vertexLength,B=E.glyphOffset[1];n(g,h.x,h.y,k.x,B+k.y,R.x,R.y,o),n(g,h.x,h.y,M.x,B+M.y,R.x+R.w,R.y,o),n(g,h.x,h.y,I.x,B+I.y,R.x,R.y+R.h,o),n(g,h.x,h.y,P.x,B+P.y,R.x+R.w,R.y+R.h,o),i(_,h,0,b),y.emplaceBack(O,O+1,O+2),y.emplaceBack(O+1,O+2,O+3),D.vertexLength+=4,D.primitiveLength+=2,v.glyphOffsetArray.emplaceBack(E.glyphOffset[0])}}m.emplaceBack(h.x,h.y,w,this.glyphOffsetArray.length-w,f,d,h.segment,o?o[0]:0,o?o[1]:0,s[0],s[1],b,z),t.programConfigurations.populatePaintArrays(t.layoutVertexArray.length,c)},J.prototype.addToDebugBuffers=function(t){for(var e=this,r=this.collisionBox,n=r.layoutVertexArray,i=r.indexArray,a=-t.angle,s=t.yStretch,u=0,c=e.symbolInstances;u<c.length;u+=1){var p=c[u];p.textCollisionFeature={boxStartIndex:p.textBoxStartIndex,boxEndIndex:p.textBoxEndIndex},p.iconCollisionFeature={boxStartIndex:p.iconBoxStartIndex,boxEndIndex:p.iconBoxEndIndex};for(var h=0;h<2;h++){var f=p[0===h?"textCollisionFeature":"iconCollisionFeature"];if(f)for(var d=f.boxStartIndex;d<f.boxEndIndex;d++){var m=e.collisionBoxArray.get(d);if(!(1===t.perspectiveRatio&&m.maxScale<1)){var v=m.anchorPoint,y=new l(m.x1,m.y1*s)._rotate(a),g=new l(m.x2,m.y1*s)._rotate(a),_=new l(m.x1,m.y2*s)._rotate(a),x=new l(m.x2,m.y2*s)._rotate(a),b=Math.max(0,Math.min(25,e.zoom+Math.log(m.maxScale)/Math.LN2)),w=Math.max(0,Math.min(25,e.zoom+Math.log(m.placementScale)/Math.LN2)),T=r.segments.prepareSegment(4,r.layoutVertexArray,r.indexArray),S=T.vertexLength;o(n,v,p.anchor,y,b,w),o(n,v,p.anchor,g,b,w),o(n,v,p.anchor,x,b,w),o(n,v,p.anchor,_,b,w),i.emplaceBack(S,S+1),i.emplaceBack(S+1,S+2),i.emplaceBack(S+2,S+3),i.emplaceBack(S+3,S),T.vertexLength+=4,T.primitiveLength+=4}}}}},J.prototype.addSymbolInstance=function(t,e,r,n,i,o,a,s,l,u,c,p,h,f,d,m,v,y,g,_,x){var b,w,T=[],S=[];for(var z in r){var E=parseInt(z,10);r[E]&&(S=S.concat(o?A(t,r[E],i,h,g,_,x):[]),b=new F(a,e,t,s,l,u,r[E],c,p,h,!1))}var k=b?b.boxStartIndex:this.collisionBoxArray.length,M=b?b.boxEndIndex:this.collisionBoxArray.length;n&&(T=o?C(t,n,i,v,r[L.horizontal],g,_):[],w=new F(a,e,t,s,l,u,n,d,m,v,!0));var I=w?w.boxStartIndex:this.collisionBoxArray.length,P=w?w.boxEndIndex:this.collisionBoxArray.length;M>J.MAX_INSTANCES&&D.warnOnce("Too many symbols being rendered in a tile. See https://github.com/mapbox/mapbox-gl-js/issues/2907"),P>J.MAX_INSTANCES&&D.warnOnce("Too many glyphs being rendered in a tile. See https://github.com/mapbox/mapbox-gl-js/issues/2907");var R=(r[L.vertical]?L.vertical:0)|(r[L.horizontal]?L.horizontal:0);this.symbolInstances.push({textBoxStartIndex:k,textBoxEndIndex:M,iconBoxStartIndex:I,iconBoxEndIndex:P,glyphQuads:S,iconQuads:T,textOffset:f,iconOffset:y,anchor:t,line:e,featureIndex:s,featureProperties:_,writingModes:R})},J.programInterfaces=X,J.MAX_INSTANCES=65535,J.addDynamicAttributes=i,e.exports=J},{"../../gl/index_buffer":61,"../../gl/vertex_buffer":62,"../../shaders/encode_attribute":85,"../../symbol/anchor":167,"../../symbol/clip_line":169,"../../symbol/collision_feature":171,"../../symbol/get_anchors":173,"../../symbol/mergelines":174,"../../symbol/quads":176,"../../symbol/shaping":177,"../../symbol/transform_text":179,"../../util/classify_rings":205,"../../util/find_pole_of_inaccessibility":211,"../../util/script_detection":218,"../../util/struct_array":220,"../../util/token":222,"../../util/util":223,"../../util/verticalize_punctuation":225,"../extent":48,"../index_array_type":50,"../load_geometry":51,"../program_configuration":53,"../segment":55,"../vertex_array_type":56,"@mapbox/point-geometry":2,"@mapbox/vector-tile":6}],48:[function(t,e,r){"use strict";e.exports=8192},{}],49:[function(t,e,r){"use strict";function n(t,e){return e-t}var i=(t("@mapbox/point-geometry"),t("./load_geometry")),o=t("./extent"),a=t("../style-spec/feature_filter"),s=t("../util/struct_array"),l=t("grid-index"),u=t("../util/dictionary_coder"),c=t("@mapbox/vector-tile"),p=t("pbf"),h=t("../util/vectortile_to_geojson"),f=t("../util/util").arraysIntersect,d=s({members:[{type:"Uint32",name:"featureIndex"},{type:"Uint16",name:"sourceLayerIndex"},{type:"Uint16",name:"bucketIndex"}]}),m=function(t,e,r,n){this.coord=t,this.overscaling=e,this.x=t.x,this.y=t.y,this.z=t.z-Math.log(e)/Math.LN2,this.grid=r||new l(o,16,0),this.featureIndexArray=n||new d};m.deserialize=function(t,e,r){var n=new m(t.coord,t.overscaling,new l(t.grid),new d(t.featureIndexArray));return n.rawTileData=e,n.bucketLayerIDs=t.bucketLayerIDs,n.setCollisionTile(r),n},m.prototype.insert=function(t,e,r,n,i){var o=this,a=this.featureIndexArray.length;this.featureIndexArray.emplaceBack(r,n,i);for(var s=0;s<e.length;s++){for(var l=e[s],u=[1/0,1/0,-1/0,-1/0],c=0;c<l.length;c++){var p=l[c];u[0]=Math.min(u[0],p.x),u[1]=Math.min(u[1],p.y),u[2]=Math.max(u[2],p.x),u[3]=Math.max(u[3],p.y)}o.grid.insert(a,u[0],u[1],u[2],u[3])}},m.prototype.setCollisionTile=function(t){this.collisionTile=t},m.prototype.serialize=function(t){var e=this.grid.toArrayBuffer();return t&&t.push(e),{coord:this.coord,overscaling:this.overscaling,grid:e,featureIndexArray:this.featureIndexArray.serialize(t),bucketLayerIDs:this.bucketLayerIDs}},m.prototype.query=function(t,e){this.vtLayers||(this.vtLayers=new c.VectorTile(new p(this.rawTileData)).layers,this.sourceLayerCoder=new u(this.vtLayers?Object.keys(this.vtLayers).sort():["_geojsonTileLayer"]));for(var r={},i=t.params||{},s=o/t.tileSize/t.scale,l=a(i.filter),h=t.queryGeometry,f=t.additionalRadius*s,d=1/0,m=1/0,v=-1/0,y=-1/0,g=0;g<h.length;g++)for(var _=h[g],x=0;x<_.length;x++){var b=_[x];d=Math.min(d,b.x),m=Math.min(m,b.y),v=Math.max(v,b.x),y=Math.max(y,b.y)}var w=this.grid.query(d-f,m-f,v+f,y+f);w.sort(n),this.filterMatching(r,w,this.featureIndexArray,h,l,i.layers,e,t.bearing,s);var T=this.collisionTile.queryRenderedSymbols(h,t.scale);return T.sort(),this.filterMatching(r,T,this.collisionTile.collisionBoxArray,h,l,i.layers,e,t.bearing,s),r},m.prototype.filterMatching=function(t,e,r,n,o,a,s,l,u){for(var c,p=this,d=0;d<e.length;d++){var m=e[d];if(m!==c){c=m;var v=r.get(m),y=p.bucketLayerIDs[v.bucketIndex];if(!a||f(a,y)){var g=p.sourceLayerCoder.decode(v.sourceLayerIndex),_=p.vtLayers[g],x=_.feature(v.featureIndex);if(o(x))for(var b=null,w=0;w<y.length;w++){var T=y[w];if(!(a&&a.indexOf(T)<0)){var S=s[T];if(S&&("symbol"===S.type||(b||(b=i(x)),S.queryIntersectsFeature(n,x,b,p.z,l,u)))){var z=new h(x,p.z,p.x,p.y);z.layer=S.serialize();var A=t[T];void 0===A&&(A=t[T]=[]),A.push({featureIndex:m,feature:z})}}}}}}},m.prototype.hasLayer=function(t){for(var e=this,r=0,n=e.bucketLayerIDs;r<n.length;r+=1)for(var i=n[r],o=0,a=i;o<a.length;o+=1){var s=a[o];if(t===s)return!0}return!1},e.exports=m},{"../style-spec/feature_filter":110,"../util/dictionary_coder":207,"../util/struct_array":220,"../util/util":223,"../util/vectortile_to_geojson":224,"./extent":48,"./load_geometry":51,"@mapbox/point-geometry":2,"@mapbox/vector-tile":6,"grid-index":22,pbf:29}],50:[function(t,e,r){"use strict";function n(t){return i({members:[{type:"Uint16",name:"vertices",components:t}]})}var i=t("../util/struct_array");e.exports={LineIndexArray:n(2),TriangleIndexArray:n(3)}},{"../util/struct_array":220}],51:[function(t,e,r){"use strict";var n=t("../util/util"),i=t("./extent"),o=function(t){return{min:-1*Math.pow(2,t-1),max:Math.pow(2,t-1)-1}}(16);e.exports=function(t){for(var e=i/t.extent,r=t.loadGeometry(),a=0;a<r.length;a++)for(var s=r[a],l=0;l<s.length;l++){var u=s[l];u.x=Math.round(u.x*e),u.y=Math.round(u.y*e),(u.x<o.min||u.x>o.max||u.y<o.min||u.y>o.max)&&n.warnOnce("Geometry exceeds allowed extent, reduce your vector tile buffer size")}return r}},{"../util/util":223,"./extent":48}],52:[function(t,e,r){"use strict";var n=t("../util/struct_array"),i=n({members:[{name:"a_pos",type:"Int16",components:2}]});e.exports=i},{"../util/struct_array":220}],53:[function(t,e,r){"use strict";function n(t){return[a(255*t[0],255*t[1]),a(255*t[2],255*t[3])]}var i=t("./vertex_array_type"),o=t("../style-spec/function").interpolationFactor,a=t("../shaders/encode_attribute").packUint8ToFloat,s=t("../gl/vertex_buffer"),l=function(t,e,r,n){this.name=t,this.type=e,this.property=r,this.useIntegerZoom=n};l.prototype.defines=function(){return["#define HAS_UNIFORM_u_"+this.name]},l.prototype.populatePaintArray=function(){},l.prototype.setUniforms=function(t,e,r,n){var i=n.zoom,o=r.getPaintValue(this.property,{zoom:this.useIntegerZoom?Math.floor(i):i});"color"===this.type?t.uniform4fv(e.uniforms["u_"+this.name],o):t.uniform1f(e.uniforms["u_"+this.name],o)};var u=function(t,e,r){this.name=t,this.type=e,this.property=r};u.prototype.defines=function(){return[]},u.prototype.populatePaintArray=function(t,e,r,i,o,a){var s=this,l=t.getPaintValue(this.property,void 0,a);if("color"===this.type)for(var u=n(l),c=i;c<o;c++){var p=e.get(c);p["a_"+s.name+"0"]=u[0],p["a_"+s.name+"1"]=u[1]}else{for(var h=i;h<o;h++)e.get(h)["a_"+s.name]=l;var f=r[this.property];f.max=Math.max(f.max,l)}},u.prototype.setUniforms=function(t,e){t.uniform1f(e.uniforms["a_"+this.name+"_t"],0)};var c=function(t,e,r,n,i){this.name=t,this.type=e,this.property=r,this.useIntegerZoom=n,this.zoom=i};c.prototype.defines=function(){return[]},c.prototype.populatePaintArray=function(t,e,r,i,o,a){var s=this,l=t.getPaintValue(this.property,{zoom:this.zoom},a),u=t.getPaintValue(this.property,{zoom:this.zoom+1},a);if("color"===this.type)for(var c=n(l),p=n(u),h=i;h<o;h++){var f=e.get(h);f["a_"+s.name+"0"]=c[0],f["a_"+s.name+"1"]=c[1],f["a_"+s.name+"2"]=p[0],f["a_"+s.name+"3"]=p[1]}else{for(var d=i;d<o;d++){var m=e.get(d);m["a_"+s.name+"0"]=l,m["a_"+s.name+"1"]=u}var v=r[this.property];v.max=Math.max(v.max,l,u)}},c.prototype.setUniforms=function(t,e,r,n){var i=n.zoom,a=o(this.useIntegerZoom?Math.floor(i):i,1,this.zoom,this.zoom+1);t.uniform1f(e.uniforms["a_"+this.name+"_t"],a)};var p=function(){this.binders={},this.cacheKey=""};p.createDynamic=function(t,e,r){for(var n=new p,o=[],a=0,s=t.paintAttributes||[];a<s.length;a+=1){var h=s[a],f=h.property,d=h.useIntegerZoom||!1,m=h.name||f.replace(e.type+"-","").replace(/-/g,"_"),v=e._paintSpecifications[f].type;e.isPaintValueFeatureConstant(f)?(n.binders[m]=new l(m,v,f,d),n.cacheKey+="/u_"+m):e.isPaintValueZoomConstant(f)?(n.binders[m]=new u(m,v,f),n.cacheKey+="/a_"+m,o.push({name:"a_"+m,type:"Float32",components:"color"===v?2:1})):(n.binders[m]=new c(m,v,f,d,r),n.cacheKey+="/z_"+m,o.push({name:"a_"+m,type:"Float32",components:"color"===v?4:2}))}return n.PaintVertexArray=i(o),n.interface=t,n.layer=e,n},p.createBasicFill=function(){var t=new p;return t.binders.color=new l("color","color","fill-color",!1),t.cacheKey+="/u_color",t.binders.opacity=new l("opacity","number","fill-opacity",!1),t.cacheKey+="/u_opacity",t},p.prototype.createPaintPropertyStatistics=function(){var t=this,e={};for(var r in t.binders)e[t.binders[r].property]={max:-1/0};return e},p.prototype.populatePaintArray=function(t,e){var r=this,n=this.paintVertexArray;if(0!==n.bytesPerElement){var i=n.length;n.resize(t);for(var o in r.binders)r.binders[o].populatePaintArray(r.layer,n,r.paintPropertyStatistics,i,t,e)}},p.prototype.defines=function(){var t=this,e=[];for(var r in t.binders)e.push.apply(e,t.binders[r].defines());return e},p.prototype.setUniforms=function(t,e,r,n){var i=this;for(var o in i.binders)i.binders[o].setUniforms(t,e,r,n)},p.prototype.serialize=function(t){return 0===this.paintVertexArray.length?null:{array:this.paintVertexArray.serialize(t),type:this.paintVertexArray.constructor.serialize(),statistics:this.paintPropertyStatistics}},p.deserialize=function(t,e,r,n){var o=p.createDynamic(t,e,r);return n&&(o.PaintVertexArray=i(n.type.members),o.paintVertexArray=new o.PaintVertexArray(n.array),o.paintPropertyStatistics=n.statistics),o},p.prototype.upload=function(t){this.paintVertexArray&&(this.paintVertexBuffer=new s(t,this.paintVertexArray))},p.prototype.destroy=function(){this.paintVertexBuffer&&this.paintVertexBuffer.destroy()};var h=function(t,e,r,n){var i=this;if(this.programConfigurations={},n)for(var o=0,a=e;o<a.length;o+=1){var s=a[o];i.programConfigurations[s.id]=p.deserialize(t,s,r,n[s.id])}else for(var l=0,u=e;l<u.length;l+=1){var c=u[l],h=p.createDynamic(t,c,r);h.paintVertexArray=new h.PaintVertexArray,h.paintPropertyStatistics=h.createPaintPropertyStatistics(),i.programConfigurations[c.id]=h}};h.prototype.populatePaintArrays=function(t,e){var r=this;for(var n in r.programConfigurations)r.programConfigurations[n].populatePaintArray(t,e)},h.prototype.serialize=function(t){var e=this,r={};for(var n in e.programConfigurations){var i=e.programConfigurations[n].serialize(t);i&&(r[n]=i)}return r},h.prototype.get=function(t){return this.programConfigurations[t]},h.prototype.upload=function(t){var e=this;for(var r in e.programConfigurations)e.programConfigurations[r].upload(t)},h.prototype.destroy=function(){var t=this;for(var e in t.programConfigurations)t.programConfigurations[e].destroy()},e.exports={ProgramConfiguration:p,ProgramConfigurationSet:h}},{"../gl/vertex_buffer":62,"../shaders/encode_attribute":85,"../style-spec/function":112,"./vertex_array_type":56}],54:[function(t,e,r){"use strict";var n=t("../util/struct_array"),i=n({members:[{name:"a_pos",type:"Int16",components:2},{name:"a_texture_pos",type:"Int16",components:2}]});e.exports=i},{"../util/struct_array":220}],55:[function(t,e,r){"use strict";var n=t("../util/util"),i=n.warnOnce,o=Math.pow(2,16)-1,a=function(t){void 0===t&&(t=[]),this.segments=t};a.prototype.prepareSegment=function(t,r,n){var a=this.segments[this.segments.length-1];return t>o&&i("Max vertices per segment is "+o+": bucket requested "+t),(!a||a.vertexLength+t>e.exports.MAX_VERTEX_ARRAY_LENGTH)&&(a={vertexOffset:r.length,primitiveOffset:n.length,vertexLength:0,primitiveLength:0},this.segments.push(a)),a},a.prototype.get=function(){return this.segments},a.prototype.destroy=function(){for(var t=this,e=0,r=t.segments;e<r.length;e+=1){var n=r[e];for(var i in n.vaos)n.vaos[i].destroy()}},e.exports={SegmentVector:a,MAX_VERTEX_ARRAY_LENGTH:o}},{"../util/util":223}],56:[function(t,e,r){"use strict";function n(t){return i({members:t,alignment:4})}var i=t("../util/struct_array");e.exports=n},{"../util/struct_array":220}],57:[function(t,e,r){"use strict";var n=function(t,e,r){this.column=t,this.row=e,this.zoom=r};n.prototype.clone=function(){return new n(this.column,this.row,this.zoom)},n.prototype.zoomTo=function(t){return this.clone()._zoomTo(t)},n.prototype.sub=function(t){return this.clone()._sub(t)},n.prototype._zoomTo=function(t){var e=Math.pow(2,t-this.zoom);return this.column*=e,this.row*=e,this.zoom=t,this},n.prototype._sub=function(t){return t=t.zoomTo(this.zoom),this.column-=t.column,this.row-=t.row,this},e.exports=n},{}],58:[function(t,e,r){"use strict";var n=t("../util/util").wrap,i=function(t,e){if(isNaN(t)||isNaN(e))throw new Error("Invalid LngLat object: ("+t+", "+e+")");if(this.lng=+t,this.lat=+e,this.lat>90||this.lat<-90)throw new Error("Invalid LngLat latitude value: must be between -90 and 90")};i.prototype.wrap=function(){return new i(n(this.lng,-180,180),this.lat)},i.prototype.toArray=function(){return[this.lng,this.lat]},i.prototype.toString=function(){return"LngLat("+this.lng+", "+this.lat+")"},i.prototype.toBounds=function(e){var r=360*e/40075017,n=r/Math.cos(Math.PI/180*this.lat);return new(t("./lng_lat_bounds"))(new i(this.lng-n,this.lat-r),new i(this.lng+n,this.lat+r))},i.convert=function(t){if(t instanceof i)return t;if(Array.isArray(t)&&2===t.length)return new i(Number(t[0]),Number(t[1]));if(!Array.isArray(t)&&"object"==typeof t&&null!==t)return new i(Number(t.lng),Number(t.lat));throw new Error("`LngLatLike` argument must be specified as a LngLat instance, an object {lng: <lng>, lat: <lat>}, or an array of [<lng>, <lat>]")},e.exports=i},{"../util/util":223,"./lng_lat_bounds":59}],59:[function(t,e,r){"use strict";var n=t("./lng_lat"),i=function(t,e){t&&(e?this.setSouthWest(t).setNorthEast(e):4===t.length?this.setSouthWest([t[0],t[1]]).setNorthEast([t[2],t[3]]):this.setSouthWest(t[0]).setNorthEast(t[1]))};i.prototype.setNorthEast=function(t){return this._ne=t instanceof n?new n(t.lng,t.lat):n.convert(t),this},i.prototype.setSouthWest=function(t){return this._sw=t instanceof n?new n(t.lng,t.lat):n.convert(t),this},i.prototype.extend=function(t){var e,r,o=this._sw,a=this._ne;if(t instanceof n)e=t,r=t;else{if(!(t instanceof i))return Array.isArray(t)?t.every(Array.isArray)?this.extend(i.convert(t)):this.extend(n.convert(t)):this;if(e=t._sw,r=t._ne,!e||!r)return this}return o||a?(o.lng=Math.min(e.lng,o.lng),o.lat=Math.min(e.lat,o.lat),a.lng=Math.max(r.lng,a.lng),a.lat=Math.max(r.lat,a.lat)):(this._sw=new n(e.lng,e.lat),this._ne=new n(r.lng,r.lat)),this},i.prototype.getCenter=function(){return new n((this._sw.lng+this._ne.lng)/2,(this._sw.lat+this._ne.lat)/2)},i.prototype.getSouthWest=function(){return this._sw},i.prototype.getNorthEast=function(){return this._ne},i.prototype.getNorthWest=function(){return new n(this.getWest(),this.getNorth())},i.prototype.getSouthEast=function(){return new n(this.getEast(),this.getSouth())},i.prototype.getWest=function(){return this._sw.lng},i.prototype.getSouth=function(){return this._sw.lat},i.prototype.getEast=function(){return this._ne.lng},i.prototype.getNorth=function(){return this._ne.lat},i.prototype.toArray=function(){return[this._sw.toArray(),this._ne.toArray()]},i.prototype.toString=function(){return"LngLatBounds("+this._sw.toString()+", "+this._ne.toString()+")"},i.convert=function(t){return!t||t instanceof i?t:new i(t)},e.exports=i},{"./lng_lat":58}],60:[function(t,e,r){"use strict";var n=t("./lng_lat"),i=t("@mapbox/point-geometry"),o=t("./coordinate"),a=t("../util/util"),s=t("../style-spec/util/interpolate"),l=t("../source/tile_coord"),u=t("../data/extent"),c=t("@mapbox/gl-matrix"),p=c.vec4,h=c.mat4,f=c.mat2,d=function(t,e,r){this.tileSize=512,this._renderWorldCopies=void 0===r||r,this._minZoom=t||0,this._maxZoom=e||22,this.latRange=[-85.05113,85.05113],this.width=0,this.height=0,this._center=new n(0,0),this.zoom=0,this.angle=0,this._fov=.6435011087932844,this._pitch=0,this._unmodified=!0},m={minZoom:{},maxZoom:{},renderWorldCopies:{},worldSize:{},centerPoint:{},size:{},bearing:{},pitch:{},fov:{},zoom:{},center:{},unmodified:{},x:{},y:{},point:{}};m.minZoom.get=function(){return this._minZoom},m.minZoom.set=function(t){this._minZoom!==t&&(this._minZoom=t,this.zoom=Math.max(this.zoom,t))},m.maxZoom.get=function(){return this._maxZoom},m.maxZoom.set=function(t){this._maxZoom!==t&&(this._maxZoom=t,this.zoom=Math.min(this.zoom,t))},m.renderWorldCopies.get=function(){return this._renderWorldCopies},m.worldSize.get=function(){return this.tileSize*this.scale},m.centerPoint.get=function(){return this.size._div(2)},m.size.get=function(){return new i(this.width,this.height)},m.bearing.get=function(){return-this.angle/Math.PI*180},m.bearing.set=function(t){var e=-a.wrap(t,-180,180)*Math.PI/180;this.angle!==e&&(this._unmodified=!1,this.angle=e,this._calcMatrices(),this.rotationMatrix=f.create(),f.rotate(this.rotationMatrix,this.rotationMatrix,this.angle))},m.pitch.get=function(){return this._pitch/Math.PI*180},m.pitch.set=function(t){var e=a.clamp(t,0,60)/180*Math.PI;this._pitch!==e&&(this._unmodified=!1,this._pitch=e,this._calcMatrices())},m.fov.get=function(){return this._fov/Math.PI*180},m.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())},m.zoom.get=function(){return this._zoom},m.zoom.set=function(t){var e=Math.min(Math.max(t,this.minZoom),this.maxZoom);this._zoom!==e&&(this._unmodified=!1,this._zoom=e,this.scale=this.zoomScale(e),this.tileZoom=Math.floor(e),this.zoomFraction=e-this.tileZoom,this._constrain(),this._calcMatrices())},m.center.get=function(){return this._center},m.center.set=function(t){t.lat===this._center.lat&&t.lng===this._center.lng||(this._unmodified=!1,this._center=t,this._constrain(),this._calcMatrices())},d.prototype.coveringZoomLevel=function(t){return(t.roundZoom?Math.round:Math.floor)(this.zoom+this.scaleZoom(this.tileSize/t.tileSize))},d.prototype.getVisibleWrappedCoordinates=function(t){for(var e=this.pointCoordinate(new i(0,0),0),r=this.pointCoordinate(new i(this.width,0),0),n=Math.floor(e.column),o=Math.floor(r.column),a=[t],s=n;s<=o;s++)0!==s&&a.push(new l(t.z,t.x,t.y,s));return a},d.prototype.coveringTiles=function(t){var e=this.coveringZoomLevel(t),r=e;if(void 0!==t.minzoom&&e<t.minzoom)return[];void 0!==t.maxzoom&&e>t.maxzoom&&(e=t.maxzoom);var n=this.pointCoordinate(this.centerPoint,e),o=new i(n.column-.5,n.row-.5),a=[this.pointCoordinate(new i(0,0),e),this.pointCoordinate(new i(this.width,0),e),this.pointCoordinate(new i(this.width,this.height),e),this.pointCoordinate(new i(0,this.height),e)];return l.cover(e,a,t.reparseOverscaled?r:e,this._renderWorldCopies).sort(function(t,e){return o.dist(t)-o.dist(e)})},d.prototype.resize=function(t,e){this.width=t,this.height=e,this.pixelsToGLUnits=[2/t,-2/e],this._constrain(),this._calcMatrices()},m.unmodified.get=function(){return this._unmodified},d.prototype.zoomScale=function(t){return Math.pow(2,t)},d.prototype.scaleZoom=function(t){return Math.log(t)/Math.LN2},d.prototype.project=function(t){return new i(this.lngX(t.lng),this.latY(t.lat))},d.prototype.unproject=function(t){return new n(this.xLng(t.x),this.yLat(t.y))},m.x.get=function(){return this.lngX(this.center.lng)},m.y.get=function(){return this.latY(this.center.lat)},m.point.get=function(){return new i(this.x,this.y)},d.prototype.lngX=function(t){return(180+t)*this.worldSize/360},d.prototype.latY=function(t){return(180-180/Math.PI*Math.log(Math.tan(Math.PI/4+t*Math.PI/360)))*this.worldSize/360},d.prototype.xLng=function(t){return 360*t/this.worldSize-180},d.prototype.yLat=function(t){var e=180-360*t/this.worldSize;return 360/Math.PI*Math.atan(Math.exp(e*Math.PI/180))-90},d.prototype.setLocationAtPoint=function(t,e){var r=this.pointCoordinate(e)._sub(this.pointCoordinate(this.centerPoint));this.center=this.coordinateLocation(this.locationCoordinate(t)._sub(r)),this._renderWorldCopies&&(this.center=this.center.wrap())},d.prototype.locationPoint=function(t){return this.coordinatePoint(this.locationCoordinate(t))},d.prototype.pointLocation=function(t){return this.coordinateLocation(this.pointCoordinate(t))},d.prototype.locationCoordinate=function(t){return new o(this.lngX(t.lng)/this.tileSize,this.latY(t.lat)/this.tileSize,this.zoom).zoomTo(this.tileZoom)},d.prototype.coordinateLocation=function(t){var e=t.zoomTo(this.zoom);return new n(this.xLng(e.column*this.tileSize),this.yLat(e.row*this.tileSize))},d.prototype.pointCoordinate=function(t,e){void 0===e&&(e=this.tileZoom);var r=[t.x,t.y,0,1],n=[t.x,t.y,1,1];p.transformMat4(r,r,this.pixelMatrixInverse),p.transformMat4(n,n,this.pixelMatrixInverse);var i=r[3],a=n[3],l=r[0]/i,u=n[0]/a,c=r[1]/i,h=n[1]/a,f=r[2]/i,d=n[2]/a,m=f===d?0:(0-f)/(d-f);return new o(s(l,u,m)/this.tileSize,s(c,h,m)/this.tileSize,this.zoom)._zoomTo(e)},d.prototype.coordinatePoint=function(t){var e=t.zoomTo(this.zoom),r=[e.column*this.tileSize,e.row*this.tileSize,0,1];return p.transformMat4(r,r,this.pixelMatrix),new i(r[0]/r[3],r[1]/r[3])},d.prototype.calculatePosMatrix=function(t,e){var r=t.toCoordinate(e),n=this.worldSize/this.zoomScale(r.zoom),i=h.identity(new Float64Array(16));return h.translate(i,i,[r.column*n,r.row*n,0]),h.scale(i,i,[n/u,n/u,1]),h.multiply(i,this.projMatrix,i),new Float32Array(i)},d.prototype.cameraToTileDistance=function(t){var e=this.calculatePosMatrix(t.coord,t.sourceMaxZoom),r=[t.tileSize/2,t.tileSize/2,0,1];return p.transformMat4(r,r,e),r[3]},d.prototype._constrain=function(){if(this.center&&this.width&&this.height&&!this._constraining){this._constraining=!0;var t,e,r,n,o=-90,a=90,s=-180,l=180,u=this.size,c=this._unmodified;if(this.latRange){var p=this.latRange;o=this.latY(p[1]),a=this.latY(p[0]),t=a-o<u.y?u.y/(a-o):0}if(this.lngRange){var h=this.lngRange;s=this.lngX(h[0]),l=this.lngX(h[1]),e=l-s<u.x?u.x/(l-s):0}var f=Math.max(e||0,t||0);if(f)return this.center=this.unproject(new i(e?(l+s)/2:this.x,t?(a+o)/2:this.y)),this.zoom+=this.scaleZoom(f),this._unmodified=c,void(this._constraining=!1);if(this.latRange){var d=this.y,m=u.y/2;d-m<o&&(n=o+m),d+m>a&&(n=a-m)}if(this.lngRange){var v=this.x,y=u.x/2;v-y<s&&(r=s+y),v+y>l&&(r=l-y)}void 0===r&&void 0===n||(this.center=this.unproject(new i(void 0!==r?r:this.x,void 0!==n?n:this.y))),this._unmodified=c,this._constraining=!1}},d.prototype._calcMatrices=function(){if(this.height){this.cameraToCenterDistance=.5/Math.tan(this._fov/2)*this.height;var t=this._fov/2,e=Math.PI/2+this._pitch,r=Math.sin(t)*this.cameraToCenterDistance/Math.sin(Math.PI-e-t),n=Math.cos(Math.PI/2-this._pitch)*r+this.cameraToCenterDistance,i=1.01*n,o=new Float64Array(16);h.perspective(o,this._fov,this.width/this.height,1,i),h.scale(o,o,[1,-1,1]),h.translate(o,o,[0,0,-this.cameraToCenterDistance]),h.rotateX(o,o,this._pitch),h.rotateZ(o,o,this.angle),h.translate(o,o,[-this.x,-this.y,0]);var a=this.worldSize/(2*Math.PI*6378137*Math.abs(Math.cos(this.center.lat*(Math.PI/180))));if(h.scale(o,o,[1,1,a,1]),this.projMatrix=o,o=h.create(),h.scale(o,o,[this.width/2,-this.height/2,1]),h.translate(o,o,[1,-1,0]),this.pixelMatrix=h.multiply(new Float64Array(16),o,this.projMatrix),!(o=h.invert(new Float64Array(16),this.pixelMatrix)))throw new Error("failed to invert matrix");this.pixelMatrixInverse=o}},Object.defineProperties(d.prototype,m),e.exports=d},{"../data/extent":48,"../source/tile_coord":101,"../style-spec/util/interpolate":127,"../util/util":223,"./coordinate":57,"./lng_lat":58,"@mapbox/gl-matrix":1,"@mapbox/point-geometry":2}],61:[function(t,e,r){"use strict";var n=function(t,e){this.gl=t,this.buffer=t.createBuffer(),void 0===t.extVertexArrayObject&&(t.extVertexArrayObject=t.getExtension("OES_vertex_array_object")),t.extVertexArrayObject&&t.extVertexArrayObject.bindVertexArrayOES(null),t.bindBuffer(t.ELEMENT_ARRAY_BUFFER,this.buffer),t.bufferData(t.ELEMENT_ARRAY_BUFFER,e.arrayBuffer,t.STATIC_DRAW),delete e.arrayBuffer};n.prototype.bind=function(){this.gl.bindBuffer(this.gl.ELEMENT_ARRAY_BUFFER,this.buffer)},n.prototype.destroy=function(){this.buffer&&(this.gl.deleteBuffer(this.buffer),delete this.buffer)},e.exports=n},{}],62:[function(t,e,r){"use strict";var n={Int8:"BYTE",Uint8:"UNSIGNED_BYTE",Int16:"SHORT",Uint16:"UNSIGNED_SHORT",Int32:"INT",Uint32:"UNSIGNED_INT",Float32:"FLOAT"},i=function(t,e,r){this.length=e.length,this.attributes=e.members,this.itemSize=e.bytesPerElement,this.dynamicDraw=r,this.gl=t,this.buffer=t.createBuffer(),this.gl.bindBuffer(t.ARRAY_BUFFER,this.buffer),this.gl.bufferData(t.ARRAY_BUFFER,e.arrayBuffer,this.dynamicDraw?t.DYNAMIC_DRAW:t.STATIC_DRAW),this.dynamicDraw||delete e.arrayBuffer};i.prototype.bind=function(){this.gl.bindBuffer(this.gl.ARRAY_BUFFER,this.buffer)},i.prototype.updateData=function(t){this.bind(),this.gl.bufferSubData(this.gl.ARRAY_BUFFER,0,t.arrayBuffer)},i.prototype.enableAttributes=function(t,e){for(var r=this,n=0;n<this.attributes.length;n++){var i=r.attributes[n],o=e.attributes[i.name];void 0!==o&&t.enableVertexAttribArray(o)}},i.prototype.setVertexAttribPointers=function(t,e,r){for(var i=this,o=0;o<this.attributes.length;o++){var a=i.attributes[o],s=e.attributes[a.name];void 0!==s&&t.vertexAttribPointer(s,a.components,t[n[a.type]],!1,i.itemSize,a.offset+i.itemSize*(r||0))}},i.prototype.destroy=function(){this.buffer&&(this.gl.deleteBuffer(this.buffer),delete this.buffer)},e.exports=i},{}],63:[function(t,e,r){"use strict";var n=t("mapbox-gl-supported"),i=t("./util/browser"),o=t("../package.json").version,a=t("./ui/map"),s=t("./ui/control/navigation_control"),l=t("./ui/control/geolocate_control"),u=t("./ui/control/attribution_control"),c=t("./ui/control/scale_control"),p=t("./ui/control/fullscreen_control"),h=t("./ui/popup"),f=t("./ui/marker"),d=t("./style/style"),m=t("./geo/lng_lat"),v=t("./geo/lng_lat_bounds"),y=t("@mapbox/point-geometry"),g=t("./util/evented"),_=t("./util/config"),x=t("./source/rtl_text_plugin");e.exports={version:o,supported:n,workerCount:Math.max(Math.floor(i.hardwareConcurrency/2),1),setRTLTextPlugin:x.setRTLTextPlugin,Map:a,NavigationControl:s,GeolocateControl:l,AttributionControl:u,ScaleControl:c,FullscreenControl:p,Popup:h,Marker:f,Style:d,LngLat:m,LngLatBounds:v,Point:y,Evented:g,config:_,get accessToken(){return _.ACCESS_TOKEN},set accessToken(t){_.ACCESS_TOKEN=t}}},{"../package.json":41,"./geo/lng_lat":58,"./geo/lng_lat_bounds":59,"./source/rtl_text_plugin":96,"./style/style":156,"./ui/control/attribution_control":182,"./ui/control/fullscreen_control":183,"./ui/control/geolocate_control":184,"./ui/control/navigation_control":186,"./ui/control/scale_control":187,"./ui/map":197,"./ui/marker":198,"./ui/popup":199,"./util/browser":202,"./util/config":206,"./util/evented":210,"@mapbox/point-geometry":2,"mapbox-gl-supported":28}],64:[function(t,e,r){"use strict";function n(t,e,r){var n=t.gl,o=t.transform,a=o.tileSize,s=r.paint["background-color"],l=r.paint["background-pattern"],u=r.paint["background-opacity"],c=l||1!==s[3]||1!==u?"translucent":"opaque";if(t.renderPass===c){n.disable(n.STENCIL_TEST),t.setDepthSublayer(0);var p;if(l){if(i.isPatternMissing(l,t))return;p=t.useProgram("fillPattern",t.basicFillProgramConfiguration),i.prepare(l,t,p),t.tileExtentPatternVAO.bind(n,p,t.tileExtentBuffer)}else p=t.useProgram("fill",t.basicFillProgramConfiguration),n.uniform4fv(p.uniforms.u_color,s),t.tileExtentVAO.bind(n,p,t.tileExtentBuffer);n.uniform1f(p.uniforms.u_opacity,u);for(var h=o.coveringTiles({tileSize:a}),f=0,d=h;f<d.length;f+=1){var m=d[f];l&&i.setTile({coord:m,tileSize:a},t,p),n.uniformMatrix4fv(p.uniforms.u_matrix,!1,t.transform.calculatePosMatrix(m)),n.drawArrays(n.TRIANGLE_STRIP,0,t.tileExtentBuffer.length)}}}var i=t("./pattern");e.exports=n},{"./pattern":80}],65:[function(t,e,r){"use strict";function n(t,e,r,n){if("translucent"===t.renderPass){var a=t.gl;t.setDepthSublayer(0),t.depthMask(!1),a.disable(a.STENCIL_TEST);for(var s=0;s<n.length;s++){var l=n[s],u=e.getTile(l),c=u.getBucket(r);if(c){var p=c.programConfigurations.get(r.id),h=t.useProgram("circle",p);if(p.setUniforms(a,h,r,{zoom:t.transform.zoom}),a.uniform1f(h.uniforms.u_camera_to_center_distance,t.transform.cameraToCenterDistance),a.uniform1i(h.uniforms.u_scale_with_map,"map"===r.paint["circle-pitch-scale"]?1:0),"map"===r.paint["circle-pitch-alignment"]){a.uniform1i(h.uniforms.u_pitch_with_map,1);var f=o(u,1,t.transform.zoom);a.uniform2f(h.uniforms.u_extrude_scale,f,f)}else a.uniform1i(h.uniforms.u_pitch_with_map,0),a.uniform2fv(h.uniforms.u_extrude_scale,t.transform.pixelsToGLUnits);a.uniform1f(h.uniforms.u_devicepixelratio,i.devicePixelRatio),a.uniformMatrix4fv(h.uniforms.u_matrix,!1,t.translatePosMatrix(l.posMatrix,u,r.paint["circle-translate"],r.paint["circle-translate-anchor"])),h.draw(a,a.TRIANGLES,r.id,c.layoutVertexBuffer,c.indexBuffer,c.segments,p)}}}}var i=t("../util/browser"),o=t("../source/pixels_to_tile_units");e.exports=n},{"../source/pixels_to_tile_units":93,"../util/browser":202}],66:[function(t,e,r){"use strict";function n(t,e,r,n){var i=t.gl;i.enable(i.STENCIL_TEST);var o=t.useProgram("collisionBox");i.activeTexture(i.TEXTURE1),t.frameHistory.bind(i),i.uniform1i(o.uniforms.u_fadetexture,1);for(var a=0;a<n.length;a++){var s=n[a],l=e.getTile(s),u=l.getBucket(r);if(u){i.uniformMatrix4fv(o.uniforms.u_matrix,!1,s.posMatrix),t.enableTileClippingMask(s),t.lineWidth(1),i.uniform1f(o.uniforms.u_scale,Math.pow(2,t.transform.zoom-l.coord.z)),i.uniform1f(o.uniforms.u_zoom,10*t.transform.zoom);var c=Math.max(0,Math.min(25,l.coord.z+Math.log(l.collisionTile.maxScale)/Math.LN2));i.uniform1f(o.uniforms.u_maxzoom,10*c),i.uniform1f(o.uniforms.u_collision_y_stretch,l.collisionTile.yStretch),i.uniform1f(o.uniforms.u_pitch,t.transform.pitch/360*2*Math.PI),i.uniform1f(o.uniforms.u_camera_to_center_distance,t.transform.cameraToCenterDistance),o.draw(i,i.LINES,r.id,u.collisionBox.layoutVertexBuffer,u.collisionBox.indexBuffer,u.collisionBox.segments)}}}e.exports=n},{}],67:[function(t,e,r){"use strict";function n(t,e,r){for(var n=0;n<r.length;n++)i(t,e,r[n])}function i(t,e,r){var n=t.gl;n.disable(n.STENCIL_TEST),t.lineWidth(1*a.devicePixelRatio);var i=r.posMatrix,h=t.useProgram("debug");n.uniformMatrix4fv(h.uniforms.u_matrix,!1,i),n.uniform4f(h.uniforms.u_color,1,0,0,1),t.debugVAO.bind(n,h,t.debugBuffer),n.drawArrays(n.LINE_STRIP,0,t.debugBuffer.length);for(var f=o(r.toString(),50,200,5),d=new p,m=0;m<f.length;m+=2)d.emplaceBack(f[m],f[m+1]);var v=new u(n,d);(new c).bind(n,h,v),n.uniform4f(h.uniforms.u_color,1,1,1,1);for(var y=e.getTile(r).tileSize,g=l/(Math.pow(2,t.transform.zoom-r.z)*y),_=[[-1,-1],[-1,1],[1,-1],[1,1]],x=0;x<_.length;x++){var b=_[x];n.uniformMatrix4fv(h.uniforms.u_matrix,!1,s.translate([],i,[g*b[0],g*b[1],0])),n.drawArrays(n.LINES,0,v.length)}n.uniform4f(h.uniforms.u_color,0,0,0,1),n.uniformMatrix4fv(h.uniforms.u_matrix,!1,i),n.drawArrays(n.LINES,0,v.length)}function o(t,e,r,n){n=n||1;var i,o,a,s,l,u,c,p,f=[];for(i=0,o=t.length;i<o;i++)if(l=h[t[i]]){for(p=null,a=0,s=l[1].length;a<s;a+=2)-1===l[1][a]&&-1===l[1][a+1]?p=null:(u=e+l[1][a]*n,c=r-l[1][a+1]*n,p&&f.push(p.x,p.y,u,c),p={x:u,y:c});e+=l[0]*n}return f}var a=t("../util/browser"),s=t("@mapbox/gl-matrix").mat4,l=t("../data/extent"),u=t("../gl/vertex_buffer"),c=t("./vertex_array_object"),p=t("../data/pos_array");e.exports=n;var h={" ":[16,[]],"!":[10,[5,21,5,7,-1,-1,5,2,4,1,5,0,6,1,5,2]],'"':[16,[4,21,4,14,-1,-1,12,21,12,14]],"#":[21,[11,25,4,-7,-1,-1,17,25,10,-7,-1,-1,4,12,18,12,-1,-1,3,6,17,6]],$:[20,[8,25,8,-4,-1,-1,12,25,12,-4,-1,-1,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]],"%":[24,[21,21,3,0,-1,-1,8,21,10,19,10,17,9,15,7,14,5,14,3,16,3,18,4,20,6,21,8,21,10,20,13,19,16,19,19,20,21,21,-1,-1,17,7,15,6,14,4,14,2,16,0,18,0,20,1,21,3,21,5,19,7,17,7]],"&":[26,[23,12,23,13,22,14,21,14,20,13,19,11,17,6,15,3,13,1,11,0,7,0,5,1,4,2,3,4,3,6,4,8,5,9,12,13,13,14,14,16,14,18,13,20,11,21,9,20,8,18,8,16,9,13,11,10,16,3,18,1,20,0,22,0,23,1,23,2]],"'":[10,[5,19,4,20,5,21,6,20,6,18,5,16,4,15]],"(":[14,[11,25,9,23,7,20,5,16,4,11,4,7,5,2,7,-2,9,-5,11,-7]],")":[14,[3,25,5,23,7,20,9,16,10,11,10,7,9,2,7,-2,5,-5,3,-7]],"*":[16,[8,21,8,9,-1,-1,3,18,13,12,-1,-1,13,18,3,12]],"+":[26,[13,18,13,0,-1,-1,4,9,22,9]],",":[10,[6,1,5,0,4,1,5,2,6,1,6,-1,5,-3,4,-4]],"-":[26,[4,9,22,9]],".":[10,[5,2,4,1,5,0,6,1,5,2]],"/":[22,[20,25,2,-7]],0:[20,[9,21,6,20,4,17,3,12,3,9,4,4,6,1,9,0,11,0,14,1,16,4,17,9,17,12,16,17,14,20,11,21,9,21]],1:[20,[6,17,8,18,11,21,11,0]],2:[20,[4,16,4,17,5,19,6,20,8,21,12,21,14,20,15,19,16,17,16,15,15,13,13,10,3,0,17,0]],3:[20,[5,21,16,21,10,13,13,13,15,12,16,11,17,8,17,6,16,3,14,1,11,0,8,0,5,1,4,2,3,4]],4:[20,[13,21,3,7,18,7,-1,-1,13,21,13,0]],5:[20,[15,21,5,21,4,12,5,13,8,14,11,14,14,13,16,11,17,8,17,6,16,3,14,1,11,0,8,0,5,1,4,2,3,4]],6:[20,[16,18,15,20,12,21,10,21,7,20,5,17,4,12,4,7,5,3,7,1,10,0,11,0,14,1,16,3,17,6,17,7,16,10,14,12,11,13,10,13,7,12,5,10,4,7]],7:[20,[17,21,7,0,-1,-1,3,21,17,21]],8:[20,[8,21,5,20,4,18,4,16,5,14,7,13,11,12,14,11,16,9,17,7,17,4,16,2,15,1,12,0,8,0,5,1,4,2,3,4,3,7,4,9,6,11,9,12,13,13,15,14,16,16,16,18,15,20,12,21,8,21]],9:[20,[16,14,15,11,13,9,10,8,9,8,6,9,4,11,3,14,3,15,4,18,6,20,9,21,10,21,13,20,15,18,16,14,16,9,15,4,13,1,10,0,8,0,5,1,4,3]],":":[10,[5,14,4,13,5,12,6,13,5,14,-1,-1,5,2,4,1,5,0,6,1,5,2]],";":[10,[5,14,4,13,5,12,6,13,5,14,-1,-1,6,1,5,0,4,1,5,2,6,1,6,-1,5,-3,4,-4]],"<":[24,[20,18,4,9,20,0]],"=":[26,[4,12,22,12,-1,-1,4,6,22,6]],">":[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/extent":48,"../data/pos_array":52,"../gl/vertex_buffer":62,"../util/browser":202,"./vertex_array_object":84,"@mapbox/gl-matrix":1}],68:[function(t,e,r){"use strict";function n(t,e,r,n){var s=t.gl;s.enable(s.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"]?"opaque":"translucent";t.renderPass===l&&(t.setDepthSublayer(1),t.depthMask("opaque"===t.renderPass),i(t,e,r,n,o)),"translucent"===t.renderPass&&r.paint["fill-antialias"]&&(t.lineWidth(2),t.depthMask(!1),t.setDepthSublayer(r.getPaintProperty("fill-outline-color")?2:0),i(t,e,r,n,a))}function i(t,e,r,n,i){if(!l.isPatternMissing(r.paint["fill-pattern"],t))for(var o=!0,a=0,s=n;a<s.length;a+=1){var u=s[a],c=e.getTile(u),p=c.getBucket(r);p&&(t.enableTileClippingMask(u),i(t,e,r,c,u,p,o),o=!1)}}function o(t,e,r,n,i,o,a){var l=t.gl,u=o.programConfigurations.get(r.id);s("fill",r.paint["fill-pattern"],t,u,r,n,i,a).draw(l,l.TRIANGLES,r.id,o.layoutVertexBuffer,o.indexBuffer,o.segments,u)}function a(t,e,r,n,i,o,a){var l=t.gl,u=o.programConfigurations.get(r.id),c=r.paint["fill-pattern"]&&!r.getPaintProperty("fill-outline-color"),p=s("fillOutline",c,t,u,r,n,i,a);l.uniform2f(p.uniforms.u_world,l.drawingBufferWidth,l.drawingBufferHeight),p.draw(l,l.LINES,r.id,o.layoutVertexBuffer,o.indexBuffer2,o.segments2,u)}function s(t,e,r,n,i,o,a,s){var u,c=r.currentProgram;return e?(u=r.useProgram(t+"Pattern",n),(s||u!==c)&&(n.setUniforms(r.gl,u,i,{zoom:r.transform.zoom}),l.prepare(i.paint["fill-pattern"],r,u)),l.setTile(o,r,u)):(u=r.useProgram(t,n),(s||u!==c)&&n.setUniforms(r.gl,u,i,{zoom:r.transform.zoom})),r.gl.uniformMatrix4fv(u.uniforms.u_matrix,!1,r.translatePosMatrix(a.posMatrix,o,i.paint["fill-translate"],i.paint["fill-translate-anchor"])),u}var l=t("./pattern");e.exports=n},{"./pattern":80}],69:[function(t,e,r){"use strict";function n(t,e,r,n){if("3d"===t.renderPass){var a=t.gl;a.disable(a.STENCIL_TEST),a.enable(a.DEPTH_TEST),t.clearColor(),t.depthMask(!0);for(var s=0;s<n.length;s++)o(t,e,r,n[s])}else"translucent"===t.renderPass&&i(t,r)}function i(t,e){var r=t.prerenderedFrames[e.id];if(r){var n=t.gl,i=t.useProgram("extrusionTexture");n.disable(n.STENCIL_TEST),n.disable(n.DEPTH_TEST),n.activeTexture(n.TEXTURE0),n.bindTexture(n.TEXTURE_2D,r.texture),n.uniform1f(i.uniforms.u_opacity,e.paint["fill-extrusion-opacity"]),n.uniform1i(i.uniforms.u_image,0);var o=c.create();c.ortho(o,0,t.width,t.height,0,0,1),n.uniformMatrix4fv(i.uniforms.u_matrix,!1,o),n.uniform2f(i.uniforms.u_world,n.drawingBufferWidth,n.drawingBufferHeight),r.vao.bind(n,i,r.buffer),n.drawArrays(n.TRIANGLE_STRIP,0,4),t.viewportFrames.push(r),delete t.prerenderedFrames[e.id]}}function o(t,e,r,n){var i=e.getTile(n),o=i.getBucket(r);if(o){var s=t.gl,u=r.paint["fill-extrusion-pattern"],c=o.programConfigurations.get(r.id),p=t.useProgram(u?"fillExtrusionPattern":"fillExtrusion",c);if(c.setUniforms(s,p,r,{zoom:t.transform.zoom}),u){if(l.isPatternMissing(u,t))return;l.prepare(u,t,p),l.setTile(i,t,p),s.uniform1f(p.uniforms.u_height_factor,-Math.pow(2,n.z)/i.tileSize/8)}t.gl.uniformMatrix4fv(p.uniforms.u_matrix,!1,t.translatePosMatrix(n.posMatrix,i,r.paint["fill-extrusion-translate"],r.paint["fill-extrusion-translate-anchor"])),a(p,t),p.draw(s,s.TRIANGLES,r.id,o.layoutVertexBuffer,o.indexBuffer,o.segments,c)}}function a(t,e){var r=e.gl,n=e.style.light,i=n.calculated.position,o=[i.x,i.y,i.z],a=u.create();"viewport"===n.calculated.anchor&&u.fromRotation(a,-e.transform.angle),p.transformMat3(o,o,a),r.uniform3fv(t.uniforms.u_lightpos,o),r.uniform1f(t.uniforms.u_lightintensity,n.calculated.intensity),r.uniform3fv(t.uniforms.u_lightcolor,n.calculated.color.slice(0,3))}var s=t("@mapbox/gl-matrix"),l=t("./pattern"),u=s.mat3,c=s.mat4,p=s.vec3;e.exports=n},{"./pattern":80,"@mapbox/gl-matrix":1}],70:[function(t,e,r){"use strict";function n(t,e,r,n,a,s,l,u,c){var p,h,f,d,m=e.gl,v=a.paint["line-dasharray"],y=a.paint["line-pattern"];if(u||c){var g=1/o(r,1,e.transform.tileZoom);if(v){p=e.lineAtlas.getDash(v.from,"round"===a.layout["line-cap"]),h=e.lineAtlas.getDash(v.to,"round"===a.layout["line-cap"]);var _=p.width*v.fromScale,x=h.width*v.toScale;m.uniform2f(t.uniforms.u_patternscale_a,g/_,-p.height/2),m.uniform2f(t.uniforms.u_patternscale_b,g/x,-h.height/2),m.uniform1f(t.uniforms.u_sdfgamma,e.lineAtlas.width/(256*Math.min(_,x)*i.devicePixelRatio)/2)}else if(y){if(f=e.imageManager.getPattern(y.from),d=e.imageManager.getPattern(y.to),!f||!d)return;m.uniform2f(t.uniforms.u_pattern_size_a,f.displaySize[0]*y.fromScale/g,d.displaySize[1]),m.uniform2f(t.uniforms.u_pattern_size_b,d.displaySize[0]*y.toScale/g,d.displaySize[1]);var b=e.imageManager.getPixelSize(),w=b.width,T=b.height;m.uniform2fv(t.uniforms.u_texsize,[w,T])}m.uniform2f(t.uniforms.u_gl_units_to_pixels,1/e.transform.pixelsToGLUnits[0],1/e.transform.pixelsToGLUnits[1])}u&&(v?(m.uniform1i(t.uniforms.u_image,0),m.activeTexture(m.TEXTURE0),e.lineAtlas.bind(m),m.uniform1f(t.uniforms.u_tex_y_a,p.y),m.uniform1f(t.uniforms.u_tex_y_b,h.y),m.uniform1f(t.uniforms.u_mix,v.t)):y&&(m.uniform1i(t.uniforms.u_image,0),m.activeTexture(m.TEXTURE0),e.imageManager.bind(m),m.uniform2fv(t.uniforms.u_pattern_tl_a,f.tl),m.uniform2fv(t.uniforms.u_pattern_br_a,f.br),m.uniform2fv(t.uniforms.u_pattern_tl_b,d.tl),m.uniform2fv(t.uniforms.u_pattern_br_b,d.br),m.uniform1f(t.uniforms.u_fade,y.t))),e.enableTileClippingMask(s);var S=e.translatePosMatrix(s.posMatrix,r,a.paint["line-translate"],a.paint["line-translate-anchor"]);m.uniformMatrix4fv(t.uniforms.u_matrix,!1,S),m.uniform1f(t.uniforms.u_ratio,1/o(r,1,e.transform.zoom)),t.draw(m,m.TRIANGLES,a.id,n.layoutVertexBuffer,n.indexBuffer,n.segments,l)}var i=t("../util/browser"),o=t("../source/pixels_to_tile_units");e.exports=function(t,e,r,i){if("translucent"===t.renderPass){t.setDepthSublayer(0),t.depthMask(!1);var o=t.gl;if(o.enable(o.STENCIL_TEST),!(r.paint["line-width"]<=0))for(var a,s=r.paint["line-dasharray"]?"lineSDF":r.paint["line-pattern"]?"linePattern":"line",l=!0,u=0,c=i;u<c.length;u+=1){var p=c[u],h=e.getTile(p),f=h.getBucket(r);if(f){var d=f.programConfigurations.get(r.id),m=t.currentProgram,v=t.useProgram(s,d),y=l||v!==m,g=a!==h.coord.z;y&&d.setUniforms(t.gl,v,r,{zoom:t.transform.zoom}),n(v,t,h,f,r,p,d,y,g),a=h.coord.z,l=!1}}}}},{"../source/pixels_to_tile_units":93,"../util/browser":202}],71:[function(t,e,r){"use strict";function n(t,e,r,n){if("translucent"===t.renderPass){var l=t.gl,c=e.getSource(),p=t.useProgram("raster");l.enable(l.DEPTH_TEST),t.depthMask(!0),l.depthFunc(l.LESS),l.disable(l.STENCIL_TEST),l.uniform1f(p.uniforms.u_brightness_low,r.paint["raster-brightness-min"]),l.uniform1f(p.uniforms.u_brightness_high,r.paint["raster-brightness-max"]),l.uniform1f(p.uniforms.u_saturation_factor,a(r.paint["raster-saturation"])),l.uniform1f(p.uniforms.u_contrast_factor,o(r.paint["raster-contrast"])),l.uniform3fv(p.uniforms.u_spin_weights,i(r.paint["raster-hue-rotate"])),l.uniform1f(p.uniforms.u_buffer_scale,1),l.uniform1i(p.uniforms.u_image0,0),l.uniform1i(p.uniforms.u_image1,1);for(var h=n.length&&n[0].z,f=0,d=n;f<d.length;f+=1){var m=d[f];t.setDepthSublayer(m.z-h);var v=e.getTile(m),y=t.transform.calculatePosMatrix(m,e.getSource().maxzoom);v.registerFadeDuration(t.style.animationLoop,r.paint["raster-fade-duration"]),l.uniformMatrix4fv(p.uniforms.u_matrix,!1,y);var g=e.findLoadedParent(m,0,{}),_=s(v,g,e,r,t.transform),x=void 0,b=void 0;if(l.activeTexture(l.TEXTURE0),l.bindTexture(l.TEXTURE_2D,v.texture),l.activeTexture(l.TEXTURE1),g?(l.bindTexture(l.TEXTURE_2D,g.texture),x=Math.pow(2,g.coord.z-v.coord.z),b=[v.coord.x*x%1,v.coord.y*x%1]):l.bindTexture(l.TEXTURE_2D,v.texture),l.uniform2fv(p.uniforms.u_tl_parent,b||[0,0]),l.uniform1f(p.uniforms.u_scale_parent,x||1),l.uniform1f(p.uniforms.u_fade_t,_.mix),l.uniform1f(p.uniforms.u_opacity,_.opacity*r.paint["raster-opacity"]),c instanceof u){var w=c.boundsBuffer;c.boundsVAO.bind(l,p,w),l.drawArrays(l.TRIANGLE_STRIP,0,w.length)}else{var T=t.rasterBoundsBuffer;t.rasterBoundsVAO.bind(l,p,T),l.drawArrays(l.TRIANGLE_STRIP,0,T.length)}}l.depthFunc(l.LEQUAL)}}function i(t){t*=Math.PI/180;var e=Math.sin(t),r=Math.cos(t);return[(2*r+1)/3,(-Math.sqrt(3)*e-r+1)/3,(Math.sqrt(3)*e-r+1)/3]}function o(t){return t>0?1/(1-t):1+t}function a(t){return t>0?1-1/(1.001-t):-t}function s(t,e,r,n,i){var o=n.paint["raster-fade-duration"];if(o>0){var a=Date.now(),s=(a-t.timeAdded)/o,u=e?(a-e.timeAdded)/o:-1,c=r.getSource(),p=i.coveringZoomLevel({tileSize:c.tileSize,roundZoom:c.roundZoom}),h=!e||Math.abs(e.coord.z-p)>Math.abs(t.coord.z-p),f=h&&t.refreshedUponExpiration?1:l.clamp(h?s:1-u,0,1);return t.refreshedUponExpiration&&s>=1&&(t.refreshedUponExpiration=!1),e?{opacity:1,mix:1-f}:{opacity:f,mix:0}}return{opacity:1,mix:0}}var l=t("../util/util"),u=t("../source/image_source");e.exports=n},{"../source/image_source":91,"../util/util":223}],72:[function(t,e,r){"use strict";function n(t,e,r,n){if("translucent"===t.renderPass){var o=!(r.layout["text-allow-overlap"]||r.layout["icon-allow-overlap"]||r.layout["text-ignore-placement"]||r.layout["icon-ignore-placement"]),a=t.gl;o?a.disable(a.STENCIL_TEST):a.enable(a.STENCIL_TEST),t.setDepthSublayer(0),t.depthMask(!1),i(t,e,r,n,!1,r.paint["icon-translate"],r.paint["icon-translate-anchor"],r.layout["icon-rotation-alignment"],r.layout["icon-pitch-alignment"],r.layout["icon-keep-upright"]),i(t,e,r,n,!0,r.paint["text-translate"],r.paint["text-translate-anchor"],r.layout["text-rotation-alignment"],r.layout["text-pitch-alignment"],r.layout["text-keep-upright"]),e.map.showCollisionBoxes&&l(t,e,r,n)}}function i(t,e,r,n,i,s,l,p,h,d){var m=t.gl,v=t.transform,y="map"===p,g="map"===h,_=y&&"line"===r.layout["symbol-placement"],x=y&&!g&&!_,b=g;b?m.enable(m.DEPTH_TEST):m.disable(m.DEPTH_TEST);for(var w,T=0,S=n;T<S.length;T+=1){var z=S[T],A=e.getTile(z),C=A.getBucket(r);if(C){var E=i?C.text:C.icon;if(E&&E.segments.get().length){var k=E.programConfigurations.get(r.id),M=i||C.sdfIcons,L=i?C.textSizeData:C.iconSizeData;if(w||(w=t.useProgram(M?"symbolSDF":"symbolIcon",k),k.setUniforms(m,w,r,{zoom:t.transform.zoom}),o(w,t,r,i,x,g,L)),m.activeTexture(m.TEXTURE0),m.uniform1i(w.uniforms.u_texture,0),i)A.glyphAtlasTexture.bind(m.LINEAR,m.CLAMP_TO_EDGE),m.uniform2fv(w.uniforms.u_texsize,A.glyphAtlasTexture.size);else{var I=!r.isLayoutValueFeatureConstant("icon-size")||!r.isLayoutValueZoomConstant("icon-size")||1!==r.getLayoutValue("icon-size",{zoom:v.zoom})||C.iconsNeedLinear,P=g||0!==v.pitch;A.iconAtlasTexture.bind(M||t.options.rotating||t.options.zooming||I||P?m.LINEAR:m.NEAREST,m.CLAMP_TO_EDGE),m.uniform2fv(w.uniforms.u_texsize,A.iconAtlasTexture.size)}t.enableTileClippingMask(z),m.uniformMatrix4fv(w.uniforms.u_matrix,!1,t.translatePosMatrix(z.posMatrix,A,s,l));var R=u(A,1,t.transform.zoom),D=c.getLabelPlaneMatrix(z.posMatrix,g,y,t.transform,R),O=c.getGlCoordMatrix(z.posMatrix,g,y,t.transform,R);m.uniformMatrix4fv(w.uniforms.u_gl_coord_matrix,!1,t.translatePosMatrix(O,A,s,l,!0)),_?(m.uniformMatrix4fv(w.uniforms.u_label_plane_matrix,!1,f),c.updateLineLabels(C,z.posMatrix,t,i,D,O,g,d,R,r)):m.uniformMatrix4fv(w.uniforms.u_label_plane_matrix,!1,D),m.uniform1f(w.uniforms.u_collision_y_stretch,A.collisionTile.yStretch),a(w,k,t,r,A,E,i,M,g)}}}b||m.enable(m.DEPTH_TEST)}function o(t,e,r,n,i,o,a){var s=e.gl,l=e.transform;s.uniform1i(t.uniforms.u_pitch_with_map,o?1:0),s.uniform1f(t.uniforms.u_is_text,n?1:0),s.activeTexture(s.TEXTURE1),e.frameHistory.bind(s),s.uniform1i(t.uniforms.u_fadetexture,1),s.uniform1f(t.uniforms.u_pitch,l.pitch/360*2*Math.PI),s.uniform1i(t.uniforms.u_is_size_zoom_constant,a.isZoomConstant?1:0),s.uniform1i(t.uniforms.u_is_size_feature_constant,a.isFeatureConstant?1:0),s.uniform1f(t.uniforms.u_camera_to_center_distance,l.cameraToCenterDistance);var u=p.evaluateSizeForZoom(a,l,r,n);void 0!==u.uSizeT&&s.uniform1f(t.uniforms.u_size_t,u.uSizeT),void 0!==u.uSize&&s.uniform1f(t.uniforms.u_size,u.uSize),s.uniform1f(t.uniforms.u_aspect_ratio,l.width/l.height),s.uniform1i(t.uniforms.u_rotate_symbol,i?1:0)}function a(t,e,r,n,i,o,a,l,u){var c=r.gl,p=r.transform;if(l){var h=(a?"text":"icon")+"-halo-width",f=!n.isPaintValueFeatureConstant(h)||n.paint[h],d=u?Math.cos(p._pitch)*p.cameraToCenterDistance:1;c.uniform1f(t.uniforms.u_gamma_scale,d),f&&(c.uniform1f(t.uniforms.u_is_halo,1),s(o,n,c,t)),c.uniform1f(t.uniforms.u_is_halo,0)}s(o,n,c,t)}function s(t,e,r,n){n.draw(r,r.TRIANGLES,e.id,t.layoutVertexBuffer,t.indexBuffer,t.segments,t.programConfigurations.get(e.id),t.dynamicLayoutVertexBuffer)}var l=t("./draw_collision_debug"),u=t("../source/pixels_to_tile_units"),c=t("../symbol/projection"),p=t("../symbol/symbol_size"),h=t("@mapbox/gl-matrix").mat4,f=h.identity(new Float32Array(16));e.exports=n},{"../source/pixels_to_tile_units":93,"../symbol/projection":175,"../symbol/symbol_size":178,"./draw_collision_debug":66,"@mapbox/gl-matrix":1}],73:[function(t,e,r){"use strict";var n=function(){this.changeTimes=new Float64Array(256),this.changeOpacities=new Uint8Array(256),this.opacities=new Uint8ClampedArray(256),this.array=new Uint8Array(this.opacities.buffer),this.previousZoom=0,this.firstFrame=!0};n.prototype.record=function(t,e,r){var n=this;this.firstFrame&&(t=0,this.firstFrame=!1),e=Math.floor(10*e);var i;if(e<this.previousZoom)for(i=e+1;i<=this.previousZoom;i++)n.changeTimes[i]=t,n.changeOpacities[i]=n.opacities[i];else for(i=e;i>this.previousZoom;i--)n.changeTimes[i]=t,n.changeOpacities[i]=n.opacities[i];for(i=0;i<256;i++){var o=t-n.changeTimes[i],a=255*(r?o/r:1);n.opacities[i]=i<=e?n.changeOpacities[i]+a:n.changeOpacities[i]-a}this.changed=!0,this.previousZoom=e},n.prototype.isVisible=function(t){return 0!==this.opacities[Math.floor(10*t)]},n.prototype.bind=function(t){this.texture?(t.bindTexture(t.TEXTURE_2D,this.texture),this.changed&&(t.texSubImage2D(t.TEXTURE_2D,0,0,0,256,1,t.ALPHA,t.UNSIGNED_BYTE,this.array),this.changed=!1)):(this.texture=t.createTexture(),t.bindTexture(t.TEXTURE_2D,this.texture),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_WRAP_S,t.CLAMP_TO_EDGE),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_WRAP_T,t.CLAMP_TO_EDGE),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_MIN_FILTER,t.NEAREST),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_MAG_FILTER,t.NEAREST),t.texImage2D(t.TEXTURE_2D,0,t.ALPHA,256,1,0,t.ALPHA,t.UNSIGNED_BYTE,this.array))},e.exports=n},{}],74:[function(t,e,r){"use strict";function n(t){var e=a.create({width:0,height:0}),r={},n=new i(0,0,{autoResize:!0});for(var o in t){var l=t[o],u=r[o]={};for(var c in l){var p=l[+c];if(p&&0!==p.bitmap.width&&0!==p.bitmap.height){var h=n.packOne(p.bitmap.width+2*s,p.bitmap.height+2*s);a.resize(e,{width:n.w,height:n.h}),a.copy(p.bitmap,e,{x:0,y:0},{x:h.x+s,y:h.y+s},p.bitmap),u[c]={rect:h,metrics:p.metrics}}}}return n.shrink(),a.resize(e,{width:n.w,height:n.h}),{image:e,positions:r}}var i=t("@mapbox/shelf-pack"),o=t("../util/image"),a=o.AlphaImage,s=1;e.exports={makeGlyphAtlas:n}},{"../util/image":213,"@mapbox/shelf-pack":3}],75:[function(t,e,r){"use strict";var n=t("../style/load_glyph_range"),i=t("@mapbox/tiny-sdf"),o=t("../util/is_char_in_unicode_block"),a=t("../util/util"),s=a.asyncAll,l=t("../util/image"),u=l.AlphaImage,c=function(t,e){this.requestTransform=t,this.localIdeographFontFamily=e,this.entries={}};c.prototype.setURL=function(t){this.url=t},c.prototype.getGlyphs=function(t,e){var r=this,i=[];for(var o in t)for(var a=0,l=t[o];a<l.length;a+=1){var u=l[a];i.push({stack:o,id:u})}s(i,function(t,e){var i=t.stack,o=t.id,a=r.entries[i];a||(a=r.entries[i]={glyphs:{},requests:{}});var s=a.glyphs[o];if(void 0!==s)return void e(null,{stack:i,id:o,glyph:s});if(s=r._tinySDF(a,i,o))return void e(null,{stack:i,id:o,glyph:s});var l=Math.floor(o/256);if(256*l>65535)return void e(new Error("glyphs > 65535 not supported"));var u=a.requests[l];u||(u=a.requests[l]=[],n(i,l,r.url,r.requestTransform,function(t,e){if(e)for(var r in e)a.glyphs[+r]=e[+r];for(var n=0,i=u;n<i.length;n+=1)(0,i[n])(t,e);delete a.requests[l]})),u.push(function(t,r){t?e(t):r&&e(null,{stack:i,id:o,glyph:r[o]||null})})},function(t,r){if(t)e(t);else if(r){for(var n={},i=0,o=r;i<o.length;i+=1){var a=o[i],s=a.stack,l=a.id,u=a.glyph;(n[s]||(n[s]={}))[l]=u}e(null,n)}})},c.prototype._tinySDF=function(t,e,r){var n=this.localIdeographFontFamily;if(n&&(o["CJK Unified Ideographs"](r)||o["Hangul Syllables"](r))){var a=t.tinySDF;if(!a){var s="400";/bold/i.test(e)?s="900":/medium/i.test(e)?s="500":/light/i.test(e)&&(s="200"),a=t.tinySDF=new i(24,3,8,.25,n,s)}return{id:r,bitmap:u.create({width:30,height:30},a.draw(String.fromCharCode(r))),metrics:{width:24,height:24,left:0,top:-8,advance:24}}}},e.exports=c},{"../style/load_glyph_range":152,"../util/image":213,"../util/is_char_in_unicode_block":215,"../util/util":223,"@mapbox/tiny-sdf":4}],76:[function(t,e,r){"use strict";function n(t,e){var r=e.pixelRatio,n={x:t.x+l,y:t.y+l,w:t.w-2*l,h:t.h-2*l};return{pixelRatio:r,textureRect:n,tl:[n.x,n.y],br:[n.x+n.w,n.y+n.h],displaySize:[n.w/r,n.h/r]}}function i(t){var e=s.create({width:0,height:0}),r={},i=new o(0,0,{autoResize:!0});for(var a in t){var u=t[a],c=i.packOne(u.data.width+2*l,u.data.height+2*l);s.resize(e,{width:i.w,height:i.h}),s.copy(u.data,e,{x:0,y:0},{x:c.x+l,y:c.y+l},u.data),r[a]=n(c,u)}return i.shrink(),s.resize(e,{width:i.w,height:i.h}),{image:e,positions:r}}var o=t("@mapbox/shelf-pack"),a=t("../util/image"),s=a.RGBAImage,l=1;e.exports={imagePosition:n,makeImageAtlas:i}},{"../util/image":213,"@mapbox/shelf-pack":3}],77:[function(t,e,r){"use strict";var n=t("@mapbox/shelf-pack"),i=t("../util/image"),o=i.RGBAImage,a=t("./image_atlas"),s=a.imagePosition,l=t("./texture"),u=function(){this.images={},this.loaded=!1,this.requestors=[],this.shelfPack=new n(64,64,{autoResize:!0}),this.patterns={},this.atlasImage=o.create({width:64,height:64}),this.dirty=!0};u.prototype.isLoaded=function(){return this.loaded},u.prototype.setLoaded=function(t){var e=this;if(this.loaded!==t&&(this.loaded=t,t)){for(var r=0,n=e.requestors;r<n.length;r+=1){var i=n[r],o=i.ids,a=i.callback;e._notify(o,a)}this.requestors=[]}},u.prototype.getImage=function(t){return this.images[t]},u.prototype.addImage=function(t,e){this.images[t]=e},u.prototype.removeImage=function(t){delete this.images[t];var e=this.patterns[t];e&&(this.shelfPack.unref(e.bin),delete this.patterns[t])},u.prototype.getImages=function(t,e){var r=this,n=!0;if(!this.isLoaded())for(var i=0,o=t;i<o.length;i+=1){var a=o[i];r.images[a]||(n=!1)}this.isLoaded()||n?this._notify(t,e):this.requestors.push({ids:t,callback:e})},u.prototype._notify=function(t,e){for(var r=this,n={},i=0,o=t;i<o.length;i+=1){var a=o[i],s=r.images[a];s&&(n[a]=s)}e(null,n)},u.prototype.getPixelSize=function(){return{width:this.shelfPack.w,height:this.shelfPack.h}},u.prototype.getPattern=function(t){var e=this.patterns[t];if(e)return e.position;var r=this.getImage(t);if(!r)return null;var n=r.data.width+2,i=r.data.height+2,a=this.shelfPack.packOne(n,i);if(!a)return null;o.resize(this.atlasImage,this.getPixelSize());var l=r.data,u=this.atlasImage,c=a.x+1,p=a.y+1,h=l.width,f=l.height;o.copy(l,u,{x:0,y:0},{x:c,y:p},{width:h,height:f}),o.copy(l,u,{x:0,y:f-1},{x:c,y:p-1},{width:h,height:1}),o.copy(l,u,{x:0,y:0},{x:c,y:p+f},{width:h,height:1}),o.copy(l,u,{x:h-1,y:0},{x:c-1,y:p},{width:1,height:f}),o.copy(l,u,{x:0,y:0},{x:c+h,y:p},{width:1,height:f}),this.dirty=!0;var d=s(a,r);return this.patterns[t]={bin:a,position:d},d},u.prototype.bind=function(t){this.atlasTexture?this.dirty&&(this.atlasTexture.update(this.atlasImage),this.dirty=!1):this.atlasTexture=new l(t,this.atlasImage,t.RGBA),this.atlasTexture.bind(t.LINEAR,t.CLAMP_TO_EDGE)},e.exports=u},{"../util/image":213,"./image_atlas":76,"./texture":83,"@mapbox/shelf-pack":3}],78:[function(t,e,r){"use strict";var n=t("../util/util"),i=function(t,e){this.width=t,this.height=e,this.nextRow=0,this.bytes=4,this.data=new Uint8Array(this.width*this.height*this.bytes),this.positions={}};i.prototype.getDash=function(t,e){var r=t.join(",")+String(e);return this.positions[r]||(this.positions[r]=this.addDash(t,e)),this.positions[r]},i.prototype.addDash=function(t,e){var r=this,i=e?7:0,o=2*i+1;if(this.nextRow+o>this.height)return n.warnOnce("LineAtlas out of space"),null;for(var a=0,s=0;s<t.length;s++)a+=t[s];for(var l=this.width/a,u=l/2,c=t.length%2==1,p=-i;p<=i;p++)for(var h=r.nextRow+i+p,f=r.width*h,d=c?-t[t.length-1]:0,m=t[0],v=1,y=0;y<this.width;y++){for(;m<y/l;)d=m,m+=t[v],c&&v===t.length-1&&(m+=t[0]),v++;var g=Math.abs(y-d*l),_=Math.abs(y-m*l),x=Math.min(g,_),b=v%2==1,w=void 0;if(e){var T=i?p/i*(u+1):0;if(b){var S=u-Math.abs(T);w=Math.sqrt(x*x+S*S)}else w=u-Math.sqrt(x*x+T*T)}else w=(b?1:-1)*x;r.data[3+4*(f+y)]=Math.max(0,Math.min(255,w+128))}var z={y:(this.nextRow+i+.5)/this.height,height:2*i/this.height,width:a};return this.nextRow+=o,this.dirty=!0,z},i.prototype.bind=function(t){this.texture?(t.bindTexture(t.TEXTURE_2D,this.texture),this.dirty&&(this.dirty=!1,t.texSubImage2D(t.TEXTURE_2D,0,0,0,this.width,this.height,t.RGBA,t.UNSIGNED_BYTE,this.data))):(this.texture=t.createTexture(),t.bindTexture(t.TEXTURE_2D,this.texture),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_WRAP_S,t.REPEAT),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_WRAP_T,t.REPEAT),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_MIN_FILTER,t.LINEAR),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_MAG_FILTER,t.LINEAR),t.texImage2D(t.TEXTURE_2D,0,t.RGBA,this.width,this.height,0,t.RGBA,t.UNSIGNED_BYTE,this.data))},e.exports=i},{"../util/util":223}],79:[function(t,e,r){"use strict";var n=t("../util/browser"),i=t("@mapbox/gl-matrix").mat4,o=t("./frame_history"),a=t("../source/source_cache"),s=t("../data/extent"),l=t("../source/pixels_to_tile_units"),u=t("../util/util"),c=t("../gl/vertex_buffer"),p=t("./vertex_array_object"),h=t("../data/raster_bounds_array"),f=t("../data/pos_array"),d=t("../data/program_configuration"),m=d.ProgramConfiguration,v=t("../shaders"),y=t("./program"),g=t("./render_texture"),_={symbol:t("./draw_symbol"),circle:t("./draw_circle"),line:t("./draw_line"),fill:t("./draw_fill"),"fill-extrusion":t("./draw_fill_extrusion"),raster:t("./draw_raster"),background:t("./draw_background"),debug:t("./draw_debug")},x=function(t,e){this.gl=t,this.transform=e,this._tileTextures={},this.prerenderedFrames={},this.viewportFrames=[],this.frameHistory=new o,this.setup(),this.numSublayers=a.maxUnderzooming+a.maxOverzooming+1,this.depthEpsilon=1/Math.pow(2,16),this.lineWidthRange=t.getParameter(t.ALIASED_LINE_WIDTH_RANGE),this.basicFillProgramConfiguration=m.createBasicFill(),this.emptyProgramConfiguration=new m};x.prototype.resize=function(t,e){var r=this,i=this.gl;this.width=t*n.devicePixelRatio,this.height=e*n.devicePixelRatio,i.viewport(0,0,this.width,this.height);for(var o=0,a=r.viewportFrames;o<a.length;o+=1){var s=a[o];r.gl.deleteTexture(s.texture),r.gl.deleteFramebuffer(s.fbo)}this.viewportFrames=[],this.depthRbo&&(this.gl.deleteRenderbuffer(this.depthRbo),this.depthRbo=null)},x.prototype.setup=function(){var t=this.gl;t.enable(t.BLEND),t.blendFunc(t.ONE,t.ONE_MINUS_SRC_ALPHA),t.enable(t.STENCIL_TEST),t.enable(t.DEPTH_TEST),t.depthFunc(t.LEQUAL),this._depthMask=!1,t.depthMask(!1);var e=new f;e.emplaceBack(0,0),e.emplaceBack(s,0),e.emplaceBack(0,s),e.emplaceBack(s,s),this.tileExtentBuffer=new c(t,e),this.tileExtentVAO=new p,this.tileExtentPatternVAO=new p;var r=new f;r.emplaceBack(0,0),r.emplaceBack(s,0),r.emplaceBack(s,s),r.emplaceBack(0,s),r.emplaceBack(0,0),this.debugBuffer=new c(t,r),this.debugVAO=new p;var n=new h;n.emplaceBack(0,0,0,0),n.emplaceBack(s,0,s,0),n.emplaceBack(0,s,0,s),n.emplaceBack(s,s,s,s),this.rasterBoundsBuffer=new c(t,n),this.rasterBoundsVAO=new p,this.extTextureFilterAnisotropic=t.getExtension("EXT_texture_filter_anisotropic")||t.getExtension("MOZ_EXT_texture_filter_anisotropic")||t.getExtension("WEBKIT_EXT_texture_filter_anisotropic"),this.extTextureFilterAnisotropic&&(this.extTextureFilterAnisotropicMax=t.getParameter(this.extTextureFilterAnisotropic.MAX_TEXTURE_MAX_ANISOTROPY_EXT))},x.prototype.clearColor=function(){var t=this.gl;t.clearColor(0,0,0,0),t.clear(t.COLOR_BUFFER_BIT)},x.prototype.clearStencil=function(){var t=this.gl;t.clearStencil(0),t.stencilMask(255),t.clear(t.STENCIL_BUFFER_BIT)},x.prototype.clearDepth=function(){var t=this.gl;t.clearDepth(1),this.depthMask(!0),t.clear(t.DEPTH_BUFFER_BIT)},x.prototype._renderTileClippingMasks=function(t){var e=this,r=this.gl;r.colorMask(!1,!1,!1,!1),this.depthMask(!1),r.disable(r.DEPTH_TEST),r.enable(r.STENCIL_TEST),r.stencilMask(255),r.stencilOp(r.KEEP,r.KEEP,r.REPLACE);var n=1;this._tileClippingMaskIDs={};for(var i=0,o=t;i<o.length;i+=1){var a=o[i],s=e._tileClippingMaskIDs[a.id]=n++;r.stencilFunc(r.ALWAYS,s,255);var l=e.useProgram("fill",e.basicFillProgramConfiguration);r.uniformMatrix4fv(l.uniforms.u_matrix,!1,a.posMatrix),e.tileExtentVAO.bind(r,l,e.tileExtentBuffer),r.drawArrays(r.TRIANGLE_STRIP,0,e.tileExtentBuffer.length)}r.stencilMask(0),r.colorMask(!0,!0,!0,!0),this.depthMask(!0),r.enable(r.DEPTH_TEST)},x.prototype.enableTileClippingMask=function(t){var e=this.gl;e.stencilFunc(e.EQUAL,this._tileClippingMaskIDs[t.id],255)},x.prototype.render=function(t,e){var r=this;this.style=t,this.options=e,this.lineAtlas=t.lineAtlas,this.imageManager=t.imageManager,this.glyphManager=t.glyphManager,this.frameHistory.record(Date.now(),this.transform.zoom,t.getTransition().duration);for(var n in r.style.sourceCaches){var i=r.style.sourceCaches[n];i.used&&i.prepare(r.gl)}var o=this.style._order;this.renderPass="3d";for(var a,s=!0,l=[],u=0;u<o.length;u++){var c=r.style._layers[o[u]];if(c.has3DPass()&&!c.isHidden(r.transform.zoom)&&(c.source!==(a&&a.id)&&(a=r.style.sourceCaches[c.source],l=[],a&&(r.clearStencil(),l=a.getVisibleCoordinates()),l.reverse()),l.length)){r._setup3DRenderbuffer();var p=r.viewportFrames.pop()||new g(r);p.bindWithDepth(r.depthRbo),s&&(r.clearDepth(),s=!1),r.renderLayer(r,a,c,l),p.unbind(),r.prerenderedFrames[c.id]=p}}this.clearColor(),this.clearDepth(),this.showOverdrawInspector(e.showOverdrawInspector),this.depthRange=(t._order.length+2)*this.numSublayers*this.depthEpsilon,this.renderPass="opaque";var h,f=[];for(this.currentLayer=o.length-1,this._showOverdrawInspector||this.gl.disable(this.gl.BLEND),this.currentLayer;this.currentLayer>=0;this.currentLayer--){var d=r.style._layers[o[r.currentLayer]];d.source!==(h&&h.id)&&(h=r.style.sourceCaches[d.source],f=[],h&&(r.clearStencil(),f=h.getVisibleCoordinates(),h.getSource().isTileClipped&&r._renderTileClippingMasks(f))),r.renderLayer(r,h,d,f)}this.renderPass="translucent";var m,v=[];for(this.gl.enable(this.gl.BLEND),this.currentLayer=0,this.currentLayer;this.currentLayer<o.length;this.currentLayer++){var y=r.style._layers[o[r.currentLayer]];y.source!==(m&&m.id)&&(m=r.style.sourceCaches[y.source],v=[],m&&(r.clearStencil(),v=m.getVisibleCoordinates(),m.getSource().isTileClipped&&r._renderTileClippingMasks(v)),v.reverse()),r.renderLayer(r,m,y,v)}if(this.options.showTileBoundaries){var x=this.style.sourceCaches[Object.keys(this.style.sourceCaches)[0]];x&&_.debug(this,x,x.getVisibleCoordinates())}},x.prototype._setup3DRenderbuffer=function(){if(!this.depthRbo){var t=this.gl;this.depthRbo=t.createRenderbuffer(),t.bindRenderbuffer(t.RENDERBUFFER,this.depthRbo),t.renderbufferStorage(t.RENDERBUFFER,t.DEPTH_COMPONENT16,this.width,this.height),t.bindRenderbuffer(t.RENDERBUFFER,null)}this.depthRboAttached=!0},x.prototype.depthMask=function(t){t!==this._depthMask&&(this._depthMask=t,this.gl.depthMask(t))},x.prototype.renderLayer=function(t,e,r,n){r.isHidden(this.transform.zoom)||("background"===r.type||n.length)&&(this.id=r.id,_[r.type](t,e,r,n))},x.prototype.setDepthSublayer=function(t){var e=1-((1+this.currentLayer)*this.numSublayers+t)*this.depthEpsilon,r=e-1+this.depthRange;this.gl.depthRange(r,e)},x.prototype.translatePosMatrix=function(t,e,r,n,o){if(!r[0]&&!r[1])return t;var a=o?"map"===n?this.transform.angle:0:"viewport"===n?-this.transform.angle:0;if(a){var s=Math.sin(a),u=Math.cos(a);r=[r[0]*u-r[1]*s,r[0]*s+r[1]*u]}var c=[o?r[0]:l(e,r[0],this.transform.zoom),o?r[1]:l(e,r[1],this.transform.zoom),0],p=new Float32Array(16);return i.translate(p,t,c),p},x.prototype.saveTileTexture=function(t){var e=this._tileTextures[t.size];e?e.push(t):this._tileTextures[t.size]=[t]},x.prototype.getTileTexture=function(t){var e=this._tileTextures[t];return e&&e.length>0?e.pop():null},x.prototype.lineWidth=function(t){this.gl.lineWidth(u.clamp(t,this.lineWidthRange[0],this.lineWidthRange[1]))},x.prototype.showOverdrawInspector=function(t){if(t||this._showOverdrawInspector){this._showOverdrawInspector=t;var e=this.gl;t?(e.blendFunc(e.CONSTANT_COLOR,e.ONE),e.blendColor(1/8,1/8,1/8,0),e.clearColor(0,0,0,1),e.clear(e.COLOR_BUFFER_BIT)):e.blendFunc(e.ONE,e.ONE_MINUS_SRC_ALPHA)}},x.prototype._createProgramCached=function(t,e){this.cache=this.cache||{};var r=""+t+(e.cacheKey||"")+(this._showOverdrawInspector?"/overdraw":"");return this.cache[r]||(this.cache[r]=new y(this.gl,v[t],e,this._showOverdrawInspector)),this.cache[r]},x.prototype.useProgram=function(t,e){var r=this.gl,n=this._createProgramCached(t,e||this.emptyProgramConfiguration);return this.currentProgram!==n&&(r.useProgram(n.program),this.currentProgram=n),n},e.exports=x},{"../data/extent":48,"../data/pos_array":52,"../data/program_configuration":53,"../data/raster_bounds_array":54,"../gl/vertex_buffer":62,"../shaders":86,"../source/pixels_to_tile_units":93,"../source/source_cache":98,"../util/browser":202,"../util/util":223,"./draw_background":64,"./draw_circle":65,"./draw_debug":67,"./draw_fill":68,"./draw_fill_extrusion":69,"./draw_line":70,"./draw_raster":71,"./draw_symbol":72,"./frame_history":73,"./program":81,"./render_texture":82,"./vertex_array_object":84,"@mapbox/gl-matrix":1}],80:[function(t,e,r){"use strict";var n=t("../source/pixels_to_tile_units");r.isPatternMissing=function(t,e){if(!t)return!1;var r=e.imageManager.getPattern(t.from),n=e.imageManager.getPattern(t.to);return!r||!n},r.prepare=function(t,e,r){var n=e.gl,i=e.imageManager.getPattern(t.from),o=e.imageManager.getPattern(t.to);n.uniform1i(r.uniforms.u_image,0),n.uniform2fv(r.uniforms.u_pattern_tl_a,i.tl),n.uniform2fv(r.uniforms.u_pattern_br_a,i.br),n.uniform2fv(r.uniforms.u_pattern_tl_b,o.tl),n.uniform2fv(r.uniforms.u_pattern_br_b,o.br);var a=e.imageManager.getPixelSize(),s=a.width,l=a.height;n.uniform2fv(r.uniforms.u_texsize,[s,l]),n.uniform1f(r.uniforms.u_mix,t.t),n.uniform2fv(r.uniforms.u_pattern_size_a,i.displaySize),n.uniform2fv(r.uniforms.u_pattern_size_b,o.displaySize),n.uniform1f(r.uniforms.u_scale_a,t.fromScale),n.uniform1f(r.uniforms.u_scale_b,t.toScale),n.activeTexture(n.TEXTURE0),e.imageManager.bind(n)},r.setTile=function(t,e,r){var i=e.gl;i.uniform1f(r.uniforms.u_tile_units_to_pixels,1/n(t,1,e.transform.tileZoom));var o=Math.pow(2,t.coord.z),a=t.tileSize*Math.pow(2,e.transform.tileZoom)/o,s=a*(t.coord.x+t.coord.w*o),l=a*t.coord.y;i.uniform2f(r.uniforms.u_pixel_coord_upper,s>>16,l>>16),i.uniform2f(r.uniforms.u_pixel_coord_lower,65535&s,65535&l)}},{"../source/pixels_to_tile_units":93}],81:[function(t,e,r){"use strict";var n=t("../util/browser"),i=t("../shaders"),o=t("../data/program_configuration"),a=(o.ProgramConfiguration,t("./vertex_array_object")),s=function(t,e,r,o){var a=this;this.gl=t,this.program=t.createProgram();var s=r.defines().concat("#define DEVICE_PIXEL_RATIO "+n.devicePixelRatio.toFixed(1));o&&s.push("#define OVERDRAW_INSPECTOR;");var l=s.concat(i.prelude.fragmentSource,e.fragmentSource).join("\n"),u=s.concat(i.prelude.vertexSource,e.vertexSource).join("\n"),c=t.createShader(t.FRAGMENT_SHADER);t.shaderSource(c,l),t.compileShader(c),t.attachShader(this.program,c);var p=t.createShader(t.VERTEX_SHADER);t.shaderSource(p,u),t.compileShader(p),t.attachShader(this.program,p);for(var h=r.interface?r.interface.layoutAttributes:[],f=0;f<h.length;f++)t.bindAttribLocation(a.program,f,h[f].name);t.linkProgram(this.program),this.numAttributes=t.getProgramParameter(this.program,t.ACTIVE_ATTRIBUTES),this.attributes={},this.uniforms={};for(var d=0;d<this.numAttributes;d++){var m=t.getActiveAttrib(a.program,d);m&&(a.attributes[m.name]=t.getAttribLocation(a.program,m.name))}for(var v=t.getProgramParameter(this.program,t.ACTIVE_UNIFORMS),y=0;y<v;y++){var g=t.getActiveUniform(a.program,y);g&&(a.uniforms[g.name]=t.getUniformLocation(a.program,g.name))}};s.prototype.draw=function(t,e,r,n,i,o,s,l){for(var u,c=this,p=(u={},u[t.LINES]=2,u[t.TRIANGLES]=3,u)[e],h=0,f=o.get();h<f.length;h+=1){var d=f[h],m=d.vaos||(d.vaos={});(m[r]||(m[r]=new a)).bind(t,c,n,i,s&&s.paintVertexBuffer,d.vertexOffset,l),t.drawElements(e,d.primitiveLength*p,t.UNSIGNED_SHORT,d.primitiveOffset*p*2)}},e.exports=s},{"../data/program_configuration":53,"../shaders":86,"../util/browser":202,"./vertex_array_object":84}],82:[function(t,e,r){"use strict";var n=t("../gl/vertex_buffer"),i=t("./vertex_array_object"),o=t("../data/pos_array"),a=function(t){var e=this.gl=t.gl,r=this.texture=e.createTexture();e.bindTexture(e.TEXTURE_2D,r),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.LINEAR),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MAG_FILTER,e.LINEAR),e.texImage2D(e.TEXTURE_2D,0,e.RGBA,t.width,t.height,0,e.RGBA,e.UNSIGNED_BYTE,null),e.bindTexture(e.TEXTURE_2D,null);var a=this.fbo=e.createFramebuffer();e.bindFramebuffer(e.FRAMEBUFFER,a),e.framebufferTexture2D(e.FRAMEBUFFER,e.COLOR_ATTACHMENT0,e.TEXTURE_2D,r,0);var s=new o;s.emplaceBack(0,0),s.emplaceBack(1,0),s.emplaceBack(0,1),s.emplaceBack(1,1),this.buffer=new n(e,s),this.vao=new i};a.prototype.bindWithDepth=function(t){var e=this.gl;e.bindFramebuffer(e.FRAMEBUFFER,this.fbo),this.attachedRbo!==t&&(e.framebufferRenderbuffer(e.FRAMEBUFFER,e.DEPTH_ATTACHMENT,e.RENDERBUFFER,t),this.attachedRbo=t)},a.prototype.unbind=function(){var t=this.gl;t.bindFramebuffer(t.FRAMEBUFFER,null)},e.exports=a},{"../data/pos_array":52,"../gl/vertex_buffer":62,"./vertex_array_object":84}],83:[function(t,e,r){"use strict";var n=function(t,e,r){this.gl=t;var n=e.width,i=e.height;this.size=[n,i],this.format=r,this.texture=t.createTexture(),this.update(e)};n.prototype.update=function(t){var e=t.width,r=t.height,n=t.data;this.size=[e,r];var i=this,o=i.gl;o.bindTexture(o.TEXTURE_2D,this.texture),o.pixelStorei(o.UNPACK_ALIGNMENT,1),this.format===o.RGBA&&o.pixelStorei(o.UNPACK_PREMULTIPLY_ALPHA_WEBGL,!0),o.texImage2D(o.TEXTURE_2D,0,this.format,e,r,0,this.format,o.UNSIGNED_BYTE,n)},n.prototype.bind=function(t,e){var r=this,n=r.gl;n.bindTexture(n.TEXTURE_2D,this.texture),t!==this.filter&&(n.texParameteri(n.TEXTURE_2D,n.TEXTURE_MAG_FILTER,t),n.texParameteri(n.TEXTURE_2D,n.TEXTURE_MIN_FILTER,t),this.filter=t),e!==this.wrap&&(n.texParameteri(n.TEXTURE_2D,n.TEXTURE_WRAP_S,e),n.texParameteri(n.TEXTURE_2D,n.TEXTURE_WRAP_T,e),this.wrap=e)},n.prototype.destroy=function(){this.gl.deleteTexture(this.texture),this.texture=null},e.exports=n},{}],84:[function(t,e,r){"use strict";var n=function(){this.boundProgram=null,this.boundVertexBuffer=null,this.boundVertexBuffer2=null,this.boundIndexBuffer=null,this.boundVertexOffset=null,this.boundDynamicVertexBuffer=null,this.vao=null};n.prototype.bind=function(t,e,r,n,i,o,a){void 0===t.extVertexArrayObject&&(t.extVertexArrayObject=t.getExtension("OES_vertex_array_object"));var s=!this.vao||this.boundProgram!==e||this.boundVertexBuffer!==r||this.boundVertexBuffer2!==i||this.boundIndexBuffer!==n||this.boundVertexOffset!==o||this.boundDynamicVertexBuffer!==a;!t.extVertexArrayObject||s?(this.freshBind(t,e,r,n,i,o,a),this.gl=t):(t.extVertexArrayObject.bindVertexArrayOES(this.vao),a&&a.bind())},n.prototype.freshBind=function(t,e,r,n,i,o,a){var s,l=e.numAttributes;if(t.extVertexArrayObject)this.vao&&this.destroy(),this.vao=t.extVertexArrayObject.createVertexArrayOES(),t.extVertexArrayObject.bindVertexArrayOES(this.vao),s=0,this.boundProgram=e,this.boundVertexBuffer=r,this.boundVertexBuffer2=i,this.boundIndexBuffer=n,this.boundVertexOffset=o,this.boundDynamicVertexBuffer=a;else{s=t.currentNumAttributes||0;for(var u=l;u<s;u++)t.disableVertexAttribArray(u)}r.enableAttributes(t,e),i&&i.enableAttributes(t,e),a&&a.enableAttributes(t,e),r.bind(),r.setVertexAttribPointers(t,e,o),i&&(i.bind(),i.setVertexAttribPointers(t,e,o)),a&&(a.bind(),a.setVertexAttribPointers(t,e,o)),n&&n.bind(),t.currentNumAttributes=l},n.prototype.destroy=function(){this.vao&&(this.gl.extVertexArrayObject.deleteVertexArrayOES(this.vao),this.vao=null)},e.exports=n},{}],85:[function(t,e,r){"use strict";var n=t("../util/util");r.packUint8ToFloat=function(t,e){return t=n.clamp(Math.floor(t),0,255),e=n.clamp(Math.floor(e),0,255),256*t+e}},{"../util/util":223}],86:[function(t,e,r){"use strict";var n={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\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, we encode a 4-component\n// 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 vec3 v_data;\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 vec2 extrude = v_data.xy;\n float extrude_length = length(extrude);\n\n lowp float antialiasblur = v_data.z;\n float antialiased_blur = -max(blur, 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 bool u_pitch_with_map;\nuniform vec2 u_extrude_scale;\nuniform highp float u_camera_to_center_distance;\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 vec3 v_data;\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 vec2 extrude = vec2(mod(a_pos, 2.0) * 2.0 - 1.0);\n\n // multiply a_pos by 0.5, since we had it * 2 in order to sneak\n // in extrusion data\n vec2 circle_center = floor(a_pos * 0.5);\n if (u_pitch_with_map) {\n vec2 corner_position = circle_center;\n if (u_scale_with_map) {\n corner_position += extrude * (radius + stroke_width) * u_extrude_scale;\n } else {\n // Pitching the circle with the map effectively scales it with the map\n // To counteract the effect for pitch-scale: viewport, we rescale the\n // whole circle based on the pitch scaling effect at its central point\n vec4 projected_center = u_matrix * vec4(circle_center, 0, 1);\n corner_position += extrude * (radius + stroke_width) * u_extrude_scale * (projected_center.w / u_camera_to_center_distance);\n }\n\n gl_Position = u_matrix * vec4(corner_position, 0, 1);\n } else {\n gl_Position = u_matrix * vec4(circle_center, 0, 1);\n\n if (u_scale_with_map) {\n gl_Position.xy += extrude * (radius + stroke_width) * u_extrude_scale * u_camera_to_center_distance;\n } else {\n gl_Position.xy += extrude * (radius + stroke_width) * u_extrude_scale * gl_Position.w;\n }\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 lowp float antialiasblur = 1.0 / DEVICE_PIXEL_RATIO / (radius + stroke_width);\n\n v_data = vec3(extrude.x, extrude.y, antialiasblur);\n}\n"},collisionBox:{fragmentSource:"uniform float u_zoom;\n// u_maxzoom is derived from the maximum scale considered by the CollisionTile\n// Labels with placement zoom greater than this value will not be placed,\n// regardless of perspective effects.\nuniform float u_maxzoom;\nuniform sampler2D u_fadetexture;\n\n// v_max_zoom is a collision-box-specific value that controls when line-following\n// collision boxes are used.\nvarying float v_max_zoom;\nvarying float v_placement_zoom;\nvarying float v_perspective_zoom_adjust;\nvarying vec2 v_fade_tex;\n\nvoid main() {\n\n float alpha = 0.5;\n\n // Green = no collisions, label is showing\n gl_FragColor = vec4(0.0, 1.0, 0.0, 1.0) * alpha;\n\n // Red = collision, label hidden\n if (texture2D(u_fadetexture, v_fade_tex).a < 1.0) {\n gl_FragColor = vec4(1.0, 0.0, 0.0, 1.0) * alpha;\n }\n\n // Faded black = this collision box is not used at this zoom (for curved labels)\n if (u_zoom >= v_max_zoom + v_perspective_zoom_adjust) {\n gl_FragColor = vec4(0.0, 0.0, 0.0, 1.0) * alpha * 0.25;\n }\n\n // Faded blue = the placement scale for this label is beyond the CollisionTile\n // max scale, so it's impossible for this label to show without collision detection\n // being run again (the label's glyphs haven't even been added to the symbol bucket)\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_anchor_pos;\nattribute vec2 a_extrude;\nattribute vec2 a_data;\n\nuniform mat4 u_matrix;\nuniform float u_scale;\nuniform float u_pitch;\nuniform float u_collision_y_stretch;\nuniform float u_camera_to_center_distance;\n\nvarying float v_max_zoom;\nvarying float v_placement_zoom;\nvarying float v_perspective_zoom_adjust;\nvarying vec2 v_fade_tex;\n\nvoid main() {\n vec4 projectedPoint = u_matrix * vec4(a_anchor_pos, 0, 1);\n highp float camera_to_anchor_distance = projectedPoint.w;\n highp float collision_perspective_ratio = 1.0 + 0.5 * ((camera_to_anchor_distance / u_camera_to_center_distance) - 1.0);\n\n highp float incidence_stretch = camera_to_anchor_distance / (u_camera_to_center_distance * cos(u_pitch));\n highp float collision_adjustment = max(1.0, incidence_stretch / u_collision_y_stretch);\n\n gl_Position = u_matrix * vec4(a_pos + a_extrude * collision_perspective_ratio * collision_adjustment / u_scale, 0.0, 1.0);\n\n v_max_zoom = a_data.x;\n v_placement_zoom = a_data.y;\n\n v_perspective_zoom_adjust = floor(log2(collision_perspective_ratio * collision_adjustment) * 10.0);\n v_fade_tex = vec2((v_placement_zoom + v_perspective_zoom_adjust) / 255.0, 0.0);\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 // We are using Int16 for texture position coordinates to give us enough precision for\n // fractional coordinates. We use 8192 to scale the texture coordinates in the buffer\n // as an arbitrarily high number to preserve adequate precision when rendering.\n // This is also the same value as the EXTENT we are using for our tile buffer pos coordinates,\n // so math for modifying either is consistent.\n gl_Position = u_matrix * vec4(a_pos, step(8192.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 vec2 u_texsize;\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_texsize, u_pattern_br_a / u_texsize, 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_texsize, u_pattern_br_b / u_texsize, 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 vec2 u_texsize;\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_texsize, u_pattern_br_a / u_texsize, 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_texsize, u_pattern_br_b / u_texsize, 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 vec2 u_texsize;\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_texsize, u_pattern_br_a / u_texsize, 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_texsize, u_pattern_br_b / u_texsize, 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 vec4 a_pos_normal;\nattribute vec4 a_data;\n\nuniform mat4 u_matrix;\nuniform mediump float u_ratio;\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#pragma mapbox: define mediump float width\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 #pragma mapbox: initialize mediump float width\n\n vec2 a_extrude = a_data.xy - 128.0;\n float a_direction = mod(a_data.z, 4.0) - 1.0;\n\n vec2 pos = a_pos_normal.xy;\n\n // x is 1 if it's a round cap, 0 otherwise\n // y is 1 if the normal points up, and -1 if it points down\n mediump vec2 normal = a_pos_normal.zw;\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 halfwidth = width / 2.0;\n offset = -1.0 * offset;\n\n float inset = gapwidth + (gapwidth > 0.0 ? ANTIALIASING : 0.0);\n float outset = gapwidth + halfwidth * (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 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 vec2 u_texsize;\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_texsize, u_pattern_br_a / u_texsize, vec2(x_a, y_a));\n vec2 pos_b = mix(u_pattern_tl_b / u_texsize, u_pattern_br_b / u_texsize, 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 vec4 a_pos_normal;\nattribute vec4 a_data;\n\nuniform mat4 u_matrix;\nuniform mediump float u_ratio;\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#pragma mapbox: define mediump float width\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 #pragma mapbox: initialize mediump float width\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 vec2 pos = a_pos_normal.xy;\n\n // x is 1 if it's a round cap, 0 otherwise\n // y is 1 if the normal points up, and -1 if it points down\n mediump vec2 normal = a_pos_normal.zw;\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 halfwidth = width / 2.0;\n offset = -1.0 * offset;\n\n float inset = gapwidth + (gapwidth > 0.0 ? ANTIALIASING : 0.0);\n float outset = gapwidth + halfwidth * (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 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#pragma mapbox: define mediump float width\n#pragma mapbox: define lowp float floorwidth\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 width\n #pragma mapbox: initialize lowp float floorwidth\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 / floorwidth, 0.5 + u_sdfgamma / floorwidth, 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 vec4 a_pos_normal;\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;\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#pragma mapbox: define mediump float width\n#pragma mapbox: define lowp float floorwidth\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 #pragma mapbox: initialize mediump float width\n #pragma mapbox: initialize lowp float floorwidth\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 vec2 pos = a_pos_normal.xy;\n\n // x is 1 if it's a round cap, 0 otherwise\n // y is 1 if the normal points up, and -1 if it points down\n mediump vec2 normal = a_pos_normal.zw;\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 halfwidth = width / 2.0;\n offset = -1.0 * offset;\n\n float inset = gapwidth + (gapwidth > 0.0 ? ANTIALIASING : 0.0);\n float outset = gapwidth + halfwidth * (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 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 / floorwidth, normal.y * u_patternscale_a.y + u_tex_y_a);\n v_tex_b = vec2(a_linesofar * u_patternscale_b.x / floorwidth, 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 if (color0.a > 0.0) {\n color0.rgb = color0.rgb / color0.a;\n }\n if (color1.a > 0.0) {\n color1.rgb = color1.rgb / color1.a;\n }\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 // We are using Int16 for texture position coordinates to give us enough precision for\n // fractional coordinates. We use 8192 to scale the texture coordinates in the buffer\n // as an arbitrarily high number to preserve adequate precision when rendering.\n // This is also the same value as the EXTENT we are using for our tile buffer pos coordinates,\n // so math for modifying either is consistent.\n v_pos0 = (((a_texture_pos / 8192.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:"const float PI = 3.141592653589793;\n\nattribute vec4 a_pos_offset;\nattribute vec4 a_data;\nattribute vec3 a_projected_pos;\n\nuniform bool u_is_size_zoom_constant;\nuniform bool u_is_size_feature_constant;\nuniform highp float u_size_t; // used to interpolate between zoom stops when size is a composite function\nuniform highp float u_size; // used when size is both zoom and feature constant\nuniform highp float u_camera_to_center_distance;\nuniform highp float u_pitch;\nuniform bool u_rotate_symbol;\nuniform highp float u_aspect_ratio;\nuniform highp float u_collision_y_stretch;\n\n#pragma mapbox: define lowp float opacity\n\nuniform mat4 u_matrix;\nuniform mat4 u_label_plane_matrix;\nuniform mat4 u_gl_coord_matrix;\n\nuniform bool u_is_text;\nuniform bool u_pitch_with_map;\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 vec2 a_size = a_data.zw;\n\n highp vec2 angle_labelminzoom = unpack_float(a_projected_pos[2]);\n highp float segment_angle = -angle_labelminzoom[0] / 255.0 * 2.0 * PI;\n mediump float a_labelminzoom = angle_labelminzoom[1];\n\n float size;\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 } else if (u_is_size_zoom_constant && !u_is_size_feature_constant) {\n size = a_size[0] / 10.0;\n } else if (!u_is_size_zoom_constant && u_is_size_feature_constant) {\n size = u_size;\n } else {\n size = u_size;\n }\n\n vec4 projectedPoint = u_matrix * vec4(a_pos, 0, 1);\n highp float camera_to_anchor_distance = projectedPoint.w;\n // See comments in symbol_sdf.vertex\n highp float distance_ratio = u_pitch_with_map ?\n camera_to_anchor_distance / u_camera_to_center_distance :\n u_camera_to_center_distance / camera_to_anchor_distance;\n highp float perspective_ratio = 0.5 + 0.5 * distance_ratio;\n\n size *= perspective_ratio;\n\n float fontScale = u_is_text ? size / 24.0 : size;\n\n highp float symbol_rotation = 0.0;\n if (u_rotate_symbol) {\n // See comments in symbol_sdf.vertex\n vec4 offsetProjectedPoint = u_matrix * vec4(a_pos + vec2(1, 0), 0, 1);\n\n vec2 a = projectedPoint.xy / projectedPoint.w;\n vec2 b = offsetProjectedPoint.xy / offsetProjectedPoint.w;\n\n symbol_rotation = atan((b.y - a.y) / u_aspect_ratio, b.x - a.x);\n }\n\n highp float angle_sin = sin(segment_angle + symbol_rotation);\n highp float angle_cos = cos(segment_angle + symbol_rotation);\n mat2 rotation_matrix = mat2(angle_cos, -1.0 * angle_sin, angle_sin, angle_cos);\n\n vec4 projected_pos = u_label_plane_matrix * vec4(a_projected_pos.xy, 0.0, 1.0);\n gl_Position = u_gl_coord_matrix * vec4(projected_pos.xy / projected_pos.w + rotation_matrix * (a_offset / 64.0 * fontScale), 0.0, 1.0);\n\n v_tex = a_tex / u_texsize;\n // See comments in symbol_sdf.vertex\n highp float incidence_stretch = camera_to_anchor_distance / (u_camera_to_center_distance * cos(u_pitch));\n highp float collision_adjustment = max(1.0, incidence_stretch / u_collision_y_stretch);\n\n highp float collision_perspective_ratio = 1.0 + 0.5*((camera_to_anchor_distance / u_camera_to_center_distance) - 1.0);\n highp float perspective_zoom_adjust = floor(log2(collision_perspective_ratio * collision_adjustment) * 10.0);\n v_fade_tex = vec2((a_labelminzoom + perspective_zoom_adjust) / 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 vec4 v_data0;\nvarying vec2 v_data1;\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 tex = v_data0.xy;\n vec2 fade_tex = v_data0.zw;\n float gamma_scale = v_data1.x;\n float size = v_data1.y;\n\n float fontScale = u_is_text ? size / 24.0 : 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, tex).a;\n lowp float fade_alpha = texture2D(u_fadetexture, fade_tex).a;\n highp float gamma_scaled = gamma * 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;\nattribute vec3 a_projected_pos;\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) ]\nuniform bool u_is_size_zoom_constant;\nuniform bool u_is_size_feature_constant;\nuniform highp float u_size_t; // used to interpolate between zoom stops when size is a composite function\nuniform highp float u_size; // used when size is both zoom and 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\nuniform mat4 u_matrix;\nuniform mat4 u_label_plane_matrix;\nuniform mat4 u_gl_coord_matrix;\n\nuniform bool u_is_text;\nuniform bool u_pitch_with_map;\nuniform highp float u_pitch;\nuniform bool u_rotate_symbol;\nuniform highp float u_aspect_ratio;\nuniform highp float u_camera_to_center_distance;\nuniform highp float u_collision_y_stretch;\n\nuniform vec2 u_texsize;\n\nvarying vec4 v_data0;\nvarying vec2 v_data1;\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 vec2 a_size = a_data.zw;\n\n highp vec2 angle_labelminzoom = unpack_float(a_projected_pos[2]);\n highp float segment_angle = -angle_labelminzoom[0] / 255.0 * 2.0 * PI;\n mediump float a_labelminzoom = angle_labelminzoom[1];\n float size;\n\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 } else if (u_is_size_zoom_constant && !u_is_size_feature_constant) {\n size = a_size[0] / 10.0;\n } else if (!u_is_size_zoom_constant && u_is_size_feature_constant) {\n size = u_size;\n } else {\n size = u_size;\n }\n\n vec4 projectedPoint = u_matrix * vec4(a_pos, 0, 1);\n highp float camera_to_anchor_distance = projectedPoint.w;\n // If the label is pitched with the map, layout is done in pitched space,\n // which makes labels in the distance smaller relative to viewport space.\n // We counteract part of that effect by multiplying by the perspective ratio.\n // If the label isn't pitched with the map, we do layout in viewport space,\n // which makes labels in the distance larger relative to the features around\n // them. We counteract part of that effect by dividing by the perspective ratio.\n highp float distance_ratio = u_pitch_with_map ?\n camera_to_anchor_distance / u_camera_to_center_distance :\n u_camera_to_center_distance / camera_to_anchor_distance;\n highp float perspective_ratio = 0.5 + 0.5 * distance_ratio;\n\n size *= perspective_ratio;\n\n float fontScale = u_is_text ? size / 24.0 : size;\n\n highp float symbol_rotation = 0.0;\n if (u_rotate_symbol) {\n // Point labels with 'rotation-alignment: map' are horizontal with respect to tile units\n // To figure out that angle in projected space, we draw a short horizontal line in tile\n // space, project it, and measure its angle in projected space.\n vec4 offsetProjectedPoint = u_matrix * vec4(a_pos + vec2(1, 0), 0, 1);\n\n vec2 a = projectedPoint.xy / projectedPoint.w;\n vec2 b = offsetProjectedPoint.xy / offsetProjectedPoint.w;\n\n symbol_rotation = atan((b.y - a.y) / u_aspect_ratio, b.x - a.x);\n }\n\n highp float angle_sin = sin(segment_angle + symbol_rotation);\n highp float angle_cos = cos(segment_angle + symbol_rotation);\n mat2 rotation_matrix = mat2(angle_cos, -1.0 * angle_sin, angle_sin, angle_cos);\n\n vec4 projected_pos = u_label_plane_matrix * vec4(a_projected_pos.xy, 0.0, 1.0);\n gl_Position = u_gl_coord_matrix * vec4(projected_pos.xy / projected_pos.w + rotation_matrix * (a_offset / 64.0 * fontScale), 0.0, 1.0);\n float gamma_scale = gl_Position.w;\n\n vec2 tex = a_tex / u_texsize;\n // incidence_stretch is the ratio of how much y space a label takes up on a tile while drawn perpendicular to the viewport vs\n // how much space it would take up if it were drawn flat on the tile\n // Using law of sines, camera_to_anchor/sin(ground_angle) = camera_to_center/sin(incidence_angle)\n // sin(incidence_angle) = 1/incidence_stretch\n // Incidence angle 90 -> head on, sin(incidence_angle) = 1, no incidence stretch\n // Incidence angle 1 -> very oblique, sin(incidence_angle) =~ 0, lots of incidence stretch\n // ground_angle = u_pitch + PI/2 -> sin(ground_angle) = cos(u_pitch)\n // This 2D calculation is only exactly correct when gl_Position.x is in the center of the viewport,\n // but it's a close enough approximation for our purposes\n highp float incidence_stretch = camera_to_anchor_distance / (u_camera_to_center_distance * cos(u_pitch));\n // incidence_stretch only applies to the y-axis, but without re-calculating the collision tile, we can't\n // adjust the size of only one axis. So, we do a crude approximation at placement time to get the aspect ratio\n // about right, and then do the rest of the adjustment here: there will be some extra padding on the x-axis,\n // but hopefully not too much.\n // Never make the adjustment less than 1.0: instead of allowing collisions on the x-axis, be conservative on\n // the y-axis.\n highp float collision_adjustment = max(1.0, incidence_stretch / u_collision_y_stretch);\n\n // Floor to 1/10th zoom to dodge precision issues that can cause partially hidden labels\n highp float collision_perspective_ratio = 1.0 + 0.5*((camera_to_anchor_distance / u_camera_to_center_distance) - 1.0);\n highp float perspective_zoom_adjust = floor(log2(collision_perspective_ratio * collision_adjustment) * 10.0);\n vec2 fade_tex = vec2((a_labelminzoom + perspective_zoom_adjust) / 255.0, 0.0);\n\n v_data0 = vec4(tex.x, tex.y, fade_tex.x, fade_tex.y);\n v_data1 = vec2(gamma_scale, size);\n}\n"}},i=/#pragma mapbox: ([\w]+) ([\w]+) ([\w]+) ([\w]+)/g;for(var o in n)!function(t){var e=n[t],r={};e.fragmentSource=e.fragmentSource.replace(i,function(t,e,n,i,o){return r[o]=!0,"define"===e?"\n#ifndef HAS_UNIFORM_u_"+o+"\nvarying "+n+" "+i+" "+o+";\n#else\nuniform "+n+" "+i+" u_"+o+";\n#endif\n":"\n#ifdef HAS_UNIFORM_u_"+o+"\n "+n+" "+i+" "+o+" = u_"+o+";\n#endif\n"}),e.vertexSource=e.vertexSource.replace(i,function(t,e,n,i,o){var a="float"===i?"vec2":"vec4";return r[o]?"define"===e?"\n#ifndef HAS_UNIFORM_u_"+o+"\nuniform lowp float a_"+o+"_t;\nattribute "+n+" "+a+" a_"+o+";\nvarying "+n+" "+i+" "+o+";\n#else\nuniform "+n+" "+i+" u_"+o+";\n#endif\n":"\n#ifndef HAS_UNIFORM_u_"+o+"\n "+o+" = unpack_mix_"+a+"(a_"+o+", a_"+o+"_t);\n#else\n "+n+" "+i+" "+o+" = u_"+o+";\n#endif\n":"define"===e?"\n#ifndef HAS_UNIFORM_u_"+o+"\nuniform lowp float a_"+o+"_t;\nattribute "+n+" "+a+" a_"+o+";\n#else\nuniform "+n+" "+i+" u_"+o+";\n#endif\n":"\n#ifndef HAS_UNIFORM_u_"+o+"\n "+n+" "+i+" "+o+" = unpack_mix_"+a+"(a_"+o+", a_"+o+"_t);\n#else\n "+n+" "+i+" "+o+" = u_"+o+";\n#endif\n"})}(o);e.exports=n},{}],87:[function(t,e,r){"use strict";var n=t("./image_source"),i=t("../util/window"),o=function(t){function e(e,r,n,i){t.call(this,e,r,n,i),this.options=r,this.animate=void 0===r.animate||r.animate}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.load=function(){this.canvas=this.canvas||i.document.getElementById(this.options.canvas);var t=this.canvas.getContext(this.options.contextType);if(!t)return this.fire("error",new Error("Canvas context not found."));if(this.context=t,this.width=this.canvas.width,this.height=this.canvas.height,this._hasInvalidDimensions())return this.fire("error",new Error("Canvas dimensions cannot be less than or equal to zero."));var e;this.play=function(){void 0===e&&(e=this.map.style.animationLoop.set(1/0),this.map._rerender())},this.pause=function(){void 0!==e&&(e=this.map.style.animationLoop.cancel(e))},this._finishLoading()},e.prototype.getCanvas=function(){return this.canvas},e.prototype.onAdd=function(t){this.map=t,this.load(),this.canvas&&this.animate&&this.play()},e.prototype.onRemove=function(){this.pause()},e.prototype.readCanvas=function(t){var e=this;if(this.context instanceof CanvasRenderingContext2D)this.canvasData=this.context.getImageData(0,0,this.width,this.height);else if(this.context instanceof WebGLRenderingContext){var r=this.context,n=new Uint8Array(this.width*this.height*4);r.readPixels(0,0,this.width,this.height,r.RGBA,r.UNSIGNED_BYTE,n),this.secondaryContext||(this.secondaryContext=i.document.createElement("canvas").getContext("2d")),this.canvasData&&!t||(this.canvasData=this.secondaryContext.createImageData(this.width,this.height));for(var o=this.height-1,a=0;o>=0;o--,a++)e.canvasData.data.set(n.subarray(o*e.width*4,(o+1)*e.width*4),a*e.width*4)}},e.prototype.prepare=function(){var t=!1;if(this.canvas.width!==this.width&&(this.width=this.canvas.width,t=!0),this.canvas.height!==this.height&&(this.height=this.canvas.height,t=!0),!this._hasInvalidDimensions()&&0!==Object.keys(this.tiles).length){if((this.animate||!this.canvasData||t)&&this.readCanvas(t),!this.canvasData)return void this.fire("error",new Error("Could not read canvas data."));this._prepareImage(this.map.painter.gl,this.canvasData,t)}},e.prototype.serialize=function(){return{type:"canvas",canvas:this.canvas,coordinates:this.coordinates}},e.prototype._hasInvalidDimensions=function(){for(var t=this,e=0,r=[t.canvas.width,t.canvas.height];e<r.length;e+=1){var n=r[e];if(isNaN(n)||n<=0)return!0}return!1},e}(n);e.exports=o},{"../util/window":204,"./image_source":91}],88:[function(t,e,r){"use strict";function n(t){var e=a.document.createElement("a");return e.href=t,e.href}var i=t("../util/evented"),o=t("../util/util"),a=t("../util/window"),s=t("../data/extent"),l=t("../util/ajax").ResourceType,u=t("../util/browser"),c=function(t){function e(e,r,n,i){t.call(this),this.id=e,this.type="geojson",this.minzoom=0,this.maxzoom=18,this.tileSize=512,this.isTileClipped=!0,this.reparseOverscaled=!0,this.dispatcher=n,this.setEventedParent(i),this._data=r.data,this._options=o.extend({},r),void 0!==r.maxzoom&&(this.maxzoom=r.maxzoom),r.type&&(this.type=r.type);var a=s/this.tileSize;this.workerOptions=o.extend({source:this.id,cluster:r.cluster||!1,geojsonVtOptions:{buffer:(void 0!==r.buffer?r.buffer:128)*a,tolerance:(void 0!==r.tolerance?r.tolerance:.375)*a,extent:s,maxZoom:this.maxzoom},superclusterOptions:{maxZoom:void 0!==r.clusterMaxZoom?Math.min(r.clusterMaxZoom,this.maxzoom-1):this.maxzoom-1,extent:s,radius:(r.clusterRadius||50)*a,log:!1}},r.workerOptions)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.load=function(){var t=this;this.fire("dataloading",{dataType:"source"}),this._updateWorkerData(function(e){if(e)return void t.fire("error",{error:e});t.fire("data",{dataType:"source",sourceDataType:"metadata"})})},e.prototype.onAdd=function(t){this.map=t,this.load()},e.prototype.setData=function(t){var e=this;return this._data=t,this.fire("dataloading",{dataType:"source"}),this._updateWorkerData(function(t){if(t)return e.fire("error",{error:t});e.fire("data",{dataType:"source",sourceDataType:"content"})}),this},e.prototype._updateWorkerData=function(t){var e=this,r=o.extend({},this.workerOptions),i=this._data;"string"==typeof i?r.request=this.map._transformRequest(n(i),l.Source):r.data=JSON.stringify(i),this.workerID=this.dispatcher.send(this.type+".loadData",r,function(r){e._loaded=!0,t(r)},this.workerID)},e.prototype.loadTile=function(t,e){var r=this,n=t.workerID&&"expired"!==t.state?"reloadTile":"loadTile",i={type:this.type,uid:t.uid,coord:t.coord,zoom:t.coord.z,maxZoom:this.maxzoom,tileSize:this.tileSize,source:this.id,pixelRatio:u.devicePixelRatio,overscaling:t.coord.z>this.maxzoom?Math.pow(2,t.coord.z-this.maxzoom):1,angle:this.map.transform.angle,pitch:this.map.transform.pitch,cameraToCenterDistance:this.map.transform.cameraToCenterDistance,cameraToTileDistance:this.map.transform.cameraToTileDistance(t),showCollisionBoxes:this.map.showCollisionBoxes};t.workerID=this.dispatcher.send(n,i,function(n,i){if(t.unloadVectorData(),!t.aborted)return n?e(n):(t.loadVectorData(i,r.map.painter),t.redoWhenDone&&(t.redoWhenDone=!1,t.redoPlacement(r)),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 o.extend({},this._options,{type:this.type,data:this._data})},e}(i);e.exports=c},{"../data/extent":48,"../util/ajax":201,"../util/browser":202,"../util/evented":210,"../util/util":223,"../util/window":204}],89:[function(t,e,r){"use strict";function n(t,e){var r=t.source,n=t.coord;if(!this._geoJSONIndexes[r])return e(null,null);var i=this._geoJSONIndexes[r].getTile(Math.min(n.z,t.maxZoom),n.x,n.y);if(!i)return e(null,null);var o=new a(i.features),l=s(o);0===l.byteOffset&&l.byteLength===l.buffer.byteLength||(l=new Uint8Array(l)),e(null,{vectorTile:o,rawData:l.buffer})}var i=t("../util/ajax"),o=t("geojson-rewind"),a=t("./geojson_wrapper"),s=t("vt-pbf"),l=t("supercluster"),u=t("geojson-vt"),c=t("./vector_tile_worker_source"),p=function(t){function e(e,r,i){t.call(this,e,r,n),i&&(this.loadGeoJSON=i),this._geoJSONIndexes={}}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.loadData=function(t,e){var r=this;this.loadGeoJSON(t,function(n,i){if(n||!i)return e(n);if("object"!=typeof i)return e(new Error("Input data is not a valid GeoJSON object."));o(i,!0);try{r._geoJSONIndexes[t.source]=t.cluster?l(t.superclusterOptions).load(i.features):u(i,t.geojsonVtOptions)}catch(n){return e(n)}r.loaded[t.source]={},e(null)})},e.prototype.reloadTile=function(e,r){var n=this.loaded[e.source],i=e.uid;return n&&n[i]?t.prototype.reloadTile.call(this,e,r):this.loadTile(e,r)},e.prototype.loadGeoJSON=function(t,e){if(t.request)i.getJSON(t.request,e);else{if("string"!=typeof t.data)return e(new Error("Input data is not a valid GeoJSON object."));try{return e(null,JSON.parse(t.data))}catch(t){return e(new Error("Input data is not a valid GeoJSON object."))}}},e.prototype.removeSource=function(t){this._geoJSONIndexes[t.source]&&delete this._geoJSONIndexes[t.source]},e}(c);e.exports=p},{"../util/ajax":201,"./geojson_wrapper":90,"./vector_tile_worker_source":103,"geojson-rewind":13,"geojson-vt":17,supercluster:32,"vt-pbf":37}],90:[function(t,e,r){"use strict";var n=t("@mapbox/point-geometry"),i=t("@mapbox/vector-tile").VectorTileFeature.prototype.toGeoJSON,o=t("../data/extent"),a=function(t){this._feature=t,this.extent=o,this.type=t.type,this.properties=t.tags,"id"in t&&!isNaN(t.id)&&(this.id=parseInt(t.id,10))};a.prototype.loadGeometry=function(){var t=this;if(1===this._feature.type){for(var e=[],r=0,i=t._feature.geometry;r<i.length;r+=1){var o=i[r];e.push([new n(o[0],o[1])])}return e}for(var a=[],s=0,l=t._feature.geometry;s<l.length;s+=1){for(var u=l[s],c=[],p=0,h=u;p<h.length;p+=1){var f=h[p];c.push(new n(f[0],f[1]))}a.push(c)}return a},a.prototype.toGeoJSON=function(t,e,r){return i.call(this,t,e,r)};var s=function(t){this.layers={_geojsonTileLayer:this},this.name="_geojsonTileLayer",this.extent=o,this.length=t.length,this._features=t};s.prototype.feature=function(t){return new a(this._features[t])},e.exports=s},{"../data/extent":48,"@mapbox/point-geometry":2,"@mapbox/vector-tile":6}],91:[function(t,e,r){"use strict";var n=t("../util/util"),i=t("../util/window"),o=t("./tile_coord"),a=t("../geo/lng_lat"),s=t("@mapbox/point-geometry"),l=t("../util/evented"),u=t("../util/ajax"),c=t("../util/browser"),p=t("../data/extent"),h=t("../data/raster_bounds_array"),f=t("../gl/vertex_buffer"),d=t("../render/vertex_array_object"),m=function(t){function e(e,r,n,i){t.call(this),this.id=e,this.dispatcher=n,this.coordinates=r.coordinates,this.type="image",this.minzoom=0,this.maxzoom=22,this.tileSize=512,this.tiles={},this.setEventedParent(i),this.options=r,this.textureLoaded=!1}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.load=function(){var t=this;this.fire("dataloading",{dataType:"source"}),this.url=this.options.url,u.getImage(this.map._transformRequest(this.url,u.ResourceType.Image),function(e,r){e?t.fire("error",{error:e}):r&&(t.image=c.getImageData(r),t._finishLoading())})},e.prototype._finishLoading=function(){this.map&&(this.setCoordinates(this.coordinates),this.fire("data",{dataType:"source",sourceDataType:"metadata"}))},e.prototype.onAdd=function(t){this.map=t,this.load()},e.prototype.setCoordinates=function(t){this.coordinates=t;var e=this.map,r=t.map(function(t){return e.transform.locationCoordinate(a.convert(t)).zoomTo(0)}),i=this.centerCoord=n.getCoordinatesCenter(r);i.column=Math.floor(i.column),i.row=Math.floor(i.row),this.coord=new o(i.zoom,i.column,i.row),this.minzoom=this.maxzoom=i.zoom;var l=r.map(function(t){var e=t.zoomTo(i.zoom);return new s(Math.round((e.column-i.column)*p),Math.round((e.row-i.row)*p))});return this._boundsArray=new h,this._boundsArray.emplaceBack(l[0].x,l[0].y,0,0),this._boundsArray.emplaceBack(l[1].x,l[1].y,p,0),this._boundsArray.emplaceBack(l[3].x,l[3].y,0,p),this._boundsArray.emplaceBack(l[2].x,l[2].y,p,p),this.boundsBuffer&&(this.boundsBuffer.destroy(),delete this.boundsBuffer),this.fire("data",{dataType:"source",sourceDataType:"content"}),this},e.prototype.prepare=function(){0!==Object.keys(this.tiles).length&&this.image&&this._prepareImage(this.map.painter.gl,this.image)},e.prototype._prepareImage=function(t,e,r){var n=this;this.boundsBuffer||(this.boundsBuffer=new f(t,this._boundsArray)),this.boundsVAO||(this.boundsVAO=new d),this.textureLoaded?r?t.texImage2D(t.TEXTURE_2D,0,t.RGBA,t.RGBA,t.UNSIGNED_BYTE,e):(e instanceof i.HTMLVideoElement||e instanceof i.ImageData)&&(t.bindTexture(t.TEXTURE_2D,this.texture),t.texSubImage2D(t.TEXTURE_2D,0,0,0,t.RGBA,t.UNSIGNED_BYTE,e)):(this.textureLoaded=!0,this.texture=t.createTexture(),t.bindTexture(t.TEXTURE_2D,this.texture),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_WRAP_S,t.CLAMP_TO_EDGE),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_WRAP_T,t.CLAMP_TO_EDGE),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_MIN_FILTER,t.LINEAR),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_MAG_FILTER,t.LINEAR),t.texImage2D(t.TEXTURE_2D,0,t.RGBA,t.RGBA,t.UNSIGNED_BYTE,e));for(var o in n.tiles){var a=n.tiles[o];"loaded"!==a.state&&(a.state="loaded",a.texture=n.texture)}},e.prototype.loadTile=function(t,e){this.coord&&this.coord.toString()===t.coord.toString()?(this.tiles[String(t.coord.w)]=t,t.buckets={},e(null)):(t.state="errored",e(null))},e.prototype.serialize=function(){return{type:"image",url:this.options.url,coordinates:this.coordinates}},e}(l);e.exports=m},{"../data/extent":48,"../data/raster_bounds_array":54,"../geo/lng_lat":58,"../gl/vertex_buffer":62,"../render/vertex_array_object":84,"../util/ajax":201,"../util/browser":202,"../util/evented":210,"../util/util":223,"../util/window":204,"./tile_coord":101,"@mapbox/point-geometry":2}],92:[function(t,e,r){"use strict";var n=t("../util/util"),i=t("../util/ajax"),o=t("../util/browser"),a=t("../util/mapbox").normalizeSourceURL;e.exports=function(t,e,r){var s=function(t,e){if(t)return r(t);if(e){var i=n.pick(e,["tiles","minzoom","maxzoom","attribution","mapbox_logo","bounds"]);e.vector_layers&&(i.vectorLayers=e.vector_layers,i.vectorLayerIds=i.vectorLayers.map(function(t){return t.id})),r(null,i)}};t.url?i.getJSON(e(a(t.url),i.ResourceType.Source),s):o.frame(function(){return s(null,t)})}},{"../util/ajax":201,"../util/browser":202,"../util/mapbox":217,"../util/util":223}],93:[function(t,e,r){"use strict";var n=t("../data/extent");e.exports=function(t,e,r){return e*(n/(t.tileSize*Math.pow(2,r-t.coord.z)))}},{"../data/extent":48}],94:[function(t,e,r){"use strict";function n(t,e){var r=t.coord,n=e.coord;return r.z-n.z||r.y-n.y||r.w-n.w||r.x-n.x}function i(t){for(var e={},r={},n=0,i=t;n<i.length;n+=1){var o=i[n],a=o.queryResults,s=o.wrappedTileID,l=r[s]=r[s]||{};for(var u in a)for(var c=a[u],p=l[u]=l[u]||{},h=e[u]=e[u]||[],f=0,d=c;f<d.length;f+=1){var m=d[f];p[m.featureIndex]||(p[m.featureIndex]=!0,h.push(m.feature))}}return e}var o=t("./tile_coord");r.rendered=function(t,e,r,o,a,s){var l=t.tilesIn(r);l.sort(n);for(var u=[],c=0,p=l;c<p.length;c+=1){var h=p[c];u.push({wrappedTileID:h.coord.wrapped().id,queryResults:h.tile.queryRenderedFeatures(e,h.queryGeometry,h.scale,o,s)})}return i(u)},r.source=function(t,e){for(var r=t.getRenderableIds().map(function(e){return t.getTileByID(e)}),n=[],i={},a=0;a<r.length;a++){var s=r[a],l=new o(Math.min(s.sourceMaxZoom,s.coord.z),s.coord.x,s.coord.y,0).id;i[l]||(i[l]=!0,s.querySourceFeatures(n,e))}return n}},{"./tile_coord":101}],95:[function(t,e,r){"use strict";var n=t("../util/util"),i=t("../util/ajax"),o=t("../util/evented"),a=t("./load_tilejson"),s=t("../util/mapbox").normalizeTileURL,l=t("./tile_bounds"),u=function(t){function e(e,r,i,o){t.call(this),this.id=e,this.dispatcher=i,this.setEventedParent(o),this.type="raster",this.minzoom=0,this.maxzoom=22,this.roundZoom=!0,this.scheme="xyz",this.tileSize=512,this._loaded=!1,this._options=n.extend({},r),n.extend(this,n.pick(r,["url","scheme","tileSize"]))}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.load=function(){var t=this;this.fire("dataloading",{dataType:"source"}),a(this._options,this.map._transformRequest,function(e,r){e?t.fire("error",e):r&&(n.extend(t,r),r.bounds&&(t.tileBounds=new l(r.bounds,t.minzoom,t.maxzoom)),t.fire("data",{dataType:"source",sourceDataType:"metadata"}),t.fire("data",{dataType:"source",sourceDataType:"content"}))})},e.prototype.onAdd=function(t){this.map=t,this.load()},e.prototype.serialize=function(){return n.extend({},this._options)},e.prototype.hasTile=function(t){return!this.tileBounds||this.tileBounds.contains(t,this.maxzoom)},e.prototype.loadTile=function(t,e){var r=this,n=s(t.coord.url(this.tiles,null,this.scheme),this.url,this.tileSize);t.request=i.getImage(this.map._transformRequest(n,i.ResourceType.Tile),function(n,i){if(delete t.request,t.aborted)r.state="unloaded",e(null);else if(n)r.state="errored",e(n);else if(i){r.map._refreshExpiredTiles&&t.setExpiryData(i),delete i.cacheControl,delete i.expires;var o=r.map.painter.gl;t.texture=r.map.painter.getTileTexture(i.width),t.texture?(o.bindTexture(o.TEXTURE_2D,t.texture),o.texSubImage2D(o.TEXTURE_2D,0,0,0,o.RGBA,o.UNSIGNED_BYTE,i)):(t.texture=o.createTexture(),o.bindTexture(o.TEXTURE_2D,t.texture),o.texParameteri(o.TEXTURE_2D,o.TEXTURE_MIN_FILTER,o.LINEAR_MIPMAP_NEAREST),o.texParameteri(o.TEXTURE_2D,o.TEXTURE_MAG_FILTER,o.LINEAR),o.texParameteri(o.TEXTURE_2D,o.TEXTURE_WRAP_S,o.CLAMP_TO_EDGE),o.texParameteri(o.TEXTURE_2D,o.TEXTURE_WRAP_T,o.CLAMP_TO_EDGE),o.pixelStorei(o.UNPACK_PREMULTIPLY_ALPHA_WEBGL,!0),r.map.painter.extTextureFilterAnisotropic&&o.texParameterf(o.TEXTURE_2D,r.map.painter.extTextureFilterAnisotropic.TEXTURE_MAX_ANISOTROPY_EXT,r.map.painter.extTextureFilterAnisotropicMax),o.texImage2D(o.TEXTURE_2D,0,o.RGBA,o.RGBA,o.UNSIGNED_BYTE,i),t.texture.size=i.width),o.generateMipmap(o.TEXTURE_2D),t.state="loaded",e(null)}})},e.prototype.abortTile=function(t){t.request&&(t.request.abort(),delete t.request)},e.prototype.unloadTile=function(t){t.texture&&this.map.painter.saveTileTexture(t.texture)},e}(o);e.exports=u},{"../util/ajax":201,"../util/evented":210,"../util/mapbox":217,"../util/util":223,"./load_tilejson":92,"./tile_bounds":100}],96:[function(t,e,r){"use strict";var n=t("../util/ajax"),i=t("../util/evented"),o=t("../util/window"),a=!1,s=null;e.exports.evented=new i,e.exports.registerForPluginAvailability=function(t){return s?t({pluginBlobURL:s,errorCallback:e.exports.errorCallback}):e.exports.evented.once("pluginAvailable",t),t},e.exports.createBlobURL=function(t){return o.URL.createObjectURL(new o.Blob([t.data],{type:"text/javascript"}))},e.exports.clearRTLTextPlugin=function(){a=!1,s=null},e.exports.setRTLTextPlugin=function(t,r){if(a)throw new Error("setRTLTextPlugin cannot be called multiple times.");a=!0,e.exports.errorCallback=r,n.getArrayBuffer({url:t},function(t,n){t?r(t):n&&(s=e.exports.createBlobURL(n),e.exports.evented.fire("pluginAvailable",{pluginBlobURL:s,errorCallback:r}))})},e.exports.applyArabicShaping=null,e.exports.processBidirectionalText=null},{"../util/ajax":201,"../util/evented":210,"../util/window":204}],97:[function(t,e,r){"use strict";var n=t("../util/util"),i={vector:t("../source/vector_tile_source"),raster:t("../source/raster_tile_source"),geojson:t("../source/geojson_source"),video:t("../source/video_source"),image:t("../source/image_source"),canvas:t("../source/canvas_source")};r.create=function(t,e,r,o){var a=new i[e.type](t,e,r,o);if(a.id!==t)throw new Error("Expected Source id to be "+t+" instead of "+a.id);return n.bindAll(["load","abort","unload","serialize","prepare"],a),a},r.getType=function(t){return i[t]},r.setType=function(t,e){i[t]=e}},{"../source/canvas_source":87,"../source/geojson_source":88,"../source/image_source":91,"../source/raster_tile_source":95,"../source/vector_tile_source":102,"../source/video_source":104,"../util/util":223}],98:[function(t,e,r){"use strict";function n(t,e,r){var n=r.zoomTo(Math.min(t.z,e));return new d((n.column-(t.x+t.w*Math.pow(2,t.z)))*f,(n.row-t.y)*f)}function i(t,e){return t%32-e%32}function o(t){return"raster"===t||"image"===t||"video"===t}var a=t("./source").create,s=t("./tile"),l=t("../util/evented"),u=t("./tile_coord"),c=t("../util/lru_cache"),p=t("../geo/coordinate"),h=t("../util/util"),f=t("../data/extent"),d=t("@mapbox/point-geometry"),m=function(t){function e(e,r,n){var i=this;t.call(this),this.id=e,this.dispatcher=n,this.on("data",function(t){"source"===t.dataType&&"metadata"===t.sourceDataType&&(i._sourceLoaded=!0),i._sourceLoaded&&!i._paused&&"source"===t.dataType&&"content"===t.sourceDataType&&(i.reload(),i.transform&&i.update(i.transform))}),this.on("error",function(){i._sourceErrored=!0}),this._source=a(e,r,n,this),this._tiles={},this._cache=new c(0,this._unloadTile.bind(this)),this._timers={},this._cacheTimers={},this._maxTileCacheSize=null,this._isIdRenderable=this._isIdRenderable.bind(this)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.onAdd=function(t){this.map=t,this._maxTileCacheSize=t?t._maxTileCacheSize:null,this._source&&this._source.onAdd&&this._source.onAdd(t)},e.prototype.onRemove=function(t){this._source&&this._source.onRemove&&this._source.onRemove(t)},e.prototype.loaded=function(){var t=this;if(this._sourceErrored)return!0;if(!this._sourceLoaded)return!1;for(var e in t._tiles){var r=t._tiles[e];if("loaded"!==r.state&&"errored"!==r.state)return!1}return!0},e.prototype.getSource=function(){return this._source},e.prototype.pause=function(){this._paused=!0},e.prototype.resume=function(){if(this._paused){var t=this._shouldReloadOnResume;this._paused=!1,this._shouldReloadOnResume=!1,t&&this.reload(),this.transform&&this.update(this.transform)}},e.prototype._loadTile=function(t,e){return this._source.loadTile(t,e)},e.prototype._unloadTile=function(t){if(this._source.unloadTile)return this._source.unloadTile(t)},e.prototype._abortTile=function(t){if(this._source.abortTile)return this._source.abortTile(t)},e.prototype.serialize=function(){return this._source.serialize()},e.prototype.prepare=function(t){var e=this;this._source.prepare&&this._source.prepare();for(var r in e._tiles)e._tiles[r].upload(t)},e.prototype.getIds=function(){return Object.keys(this._tiles).map(Number).sort(i)},e.prototype.getRenderableIds=function(){return this.getIds().filter(this._isIdRenderable)},e.prototype._isIdRenderable=function(t){return this._tiles[t].hasData()&&!this._coveredTiles[t]},e.prototype.reload=function(){var t=this;if(this._paused)return void(this._shouldReloadOnResume=!0);this._cache.reset();for(var e in t._tiles)t._reloadTile(e,"reloading")},e.prototype._reloadTile=function(t,e){var r=this._tiles[t];r&&("loading"!==r.state&&(r.state=e),this._loadTile(r,this._tileLoaded.bind(this,r,t,e)))},e.prototype._tileLoaded=function(t,e,r,n){if(n)return t.state="errored",void(404!==n.status?this._source.fire("error",{tile:t,error:n}):this.update(this.transform));t.timeAdded=(new Date).getTime(),"expired"===r&&(t.refreshedUponExpiration=!0),this._setTileReloadTimer(e,t),this._source.fire("data",{dataType:"source",tile:t,coord:t.coord}),this.map&&(this.map.painter.tileExtentVAO.vao=null)},e.prototype.getTile=function(t){return this.getTileByID(t.id)},e.prototype.getTileByID=function(t){return this._tiles[t]},e.prototype.getZoom=function(t){return t.zoom+t.scaleZoom(t.tileSize/this._source.tileSize)},e.prototype._findLoadedChildren=function(t,e,r){var n=this,i=!1;for(var o in n._tiles){var a=n._tiles[o];if(!(r[o]||!a.hasData()||a.coord.z<=t.z||a.coord.z>e)){var s=Math.pow(2,Math.min(a.coord.z,n._source.maxzoom)-Math.min(t.z,n._source.maxzoom));if(Math.floor(a.coord.x/s)===t.x&&Math.floor(a.coord.y/s)===t.y)for(r[o]=!0,i=!0;a&&a.coord.z-1>t.z;){var l=a.coord.parent(n._source.maxzoom);if(!l)break;(a=n._tiles[l.id])&&a.hasData()&&(delete r[o],r[l.id]=!0)}}}return i},e.prototype.findLoadedParent=function(t,e,r){for(var n=this,i=t.z-1;i>=e;i--){var o=t.parent(n._source.maxzoom);if(!o)return;t=o;var a=String(t.id),s=n._tiles[a];if(s&&s.hasData())return r[a]=!0,s;if(n._cache.has(a))return r[a]=!0,n._cache.getWithoutRemoving(a)}},e.prototype.updateCacheSize=function(t){var e=Math.ceil(t.width/t.tileSize)+1,r=Math.ceil(t.height/t.tileSize)+1,n=e*r,i=Math.floor(5*n),o="number"==typeof this._maxTileCacheSize?Math.min(this._maxTileCacheSize,i):i;this._cache.setMaxSize(o)},e.prototype.update=function(t){var r=this;if(this.transform=t,this._sourceLoaded&&!this._paused){this.updateCacheSize(t),this._coveredTiles={};var n;this.used?this._source.coord?n=t.getVisibleWrappedCoordinates(this._source.coord):(n=t.coveringTiles({tileSize:this._source.tileSize,minzoom:this._source.minzoom,maxzoom:this._source.maxzoom,roundZoom:this._source.roundZoom,reparseOverscaled:this._source.reparseOverscaled}),this._source.hasTile&&(n=n.filter(function(t){return r._source.hasTile(t)}))):n=[];var i=(this._source.roundZoom?Math.round:Math.floor)(this.getZoom(t)),a=Math.max(i-e.maxOverzooming,this._source.minzoom),s=Math.max(i+e.maxUnderzooming,this._source.minzoom),l=this._updateRetainedTiles(n,i),c={};if(o(this._source.type))for(var p=Object.keys(l),f=0;f<p.length;f++){var d=p[f],m=u.fromID(+d),v=r._tiles[d];if(v&&(void 0===v.fadeEndTime||v.fadeEndTime>=Date.now())){r._findLoadedChildren(m,s,l)&&(l[d]=!0);var y=r.findLoadedParent(m,a,c);y&&r._addTile(y.coord)}}var g;for(g in c)l[g]||(r._coveredTiles[g]=!0);for(g in c)l[g]=!0;for(var _=h.keysDifference(this._tiles,l),x=0;x<_.length;x++)r._removeTile(_[x])}},e.prototype._updateRetainedTiles=function(t,r){var n,i,o,a,s=this,l={},u={},c=Math.max(r-e.maxOverzooming,this._source.minzoom);for(n=0;n<t.length;n++){i=t[n],o=s._addTile(i);var p=!1;if(o.hasData())l[i.id]=!0;else{if(p=o.wasRequested(),l[i.id]=!0,a=!0,r+1>s._source.maxzoom){var h=i.children(s._source.maxzoom)[0],f=s.getTile(h);f&&f.hasData()?l[h.id]=!0:a=!1}else for(var d=i.children(s._source.maxzoom),m=0;m<d.length;m++){var v=d[m],y=v?s.getTile(v):null;y&&y.hasData()?l[v.id]=!0:a=!1}if(!a)for(var g=r-1;g>=c;--g){var _=i.scaledTo(g,s._source.maxzoom);if(u[_.id])break;if(u[_.id]=!0,o=s.getTile(_),!o&&p&&(o=s._addTile(_)),o&&(l[_.id]=!0,p=o.wasRequested(),o.hasData()))break}}}return l},e.prototype._addTile=function(t){var e=this._tiles[t.id];if(e)return e;(e=this._cache.get(t.id))&&(e.redoPlacement(this._source),this._cacheTimers[t.id]&&(clearTimeout(this._cacheTimers[t.id]),delete this._cacheTimers[t.id],this._setTileReloadTimer(t.id,e)));var r=Boolean(e);if(!r){var n=t.z,i=n>this._source.maxzoom?Math.pow(2,n-this._source.maxzoom):1;e=new s(t,this._source.tileSize*i,this._source.maxzoom),this._loadTile(e,this._tileLoaded.bind(this,e,t.id,e.state))}return e?(e.uses++,this._tiles[t.id]=e,r||this._source.fire("dataloading",{tile:e,coord:e.coord,dataType:"source"}),e):null},e.prototype._setTileReloadTimer=function(t,e){var r=this,n=e.getExpiryTimeout();n&&(this._timers[t]=setTimeout(function(){r._reloadTile(t,"expired"),delete r._timers[t]},n))},e.prototype._setCacheInvalidationTimer=function(t,e){var r=this,n=e.getExpiryTimeout();n&&(this._cacheTimers[t]=setTimeout(function(){r._cache.remove(t),delete r._cacheTimers[t]},n))},e.prototype._removeTile=function(t){var e=this._tiles[t];if(e&&(e.uses--,delete this._tiles[t],this._timers[t]&&(clearTimeout(this._timers[t]),delete this._timers[t]),!(e.uses>0)))if(e.stopPlacementThrottler(),e.hasData()){var r=e.coord.wrapped().id;this._cache.add(r,e),this._setCacheInvalidationTimer(r,e)}else e.aborted=!0,this._abortTile(e),this._unloadTile(e)},e.prototype.clearTiles=function(){var t=this;this._shouldReloadOnResume=!1,this._paused=!1;for(var e in t._tiles)t._removeTile(e);this._cache.reset()},e.prototype.tilesIn=function(t){for(var e=this,r=[],i=this.getIds(),o=1/0,a=1/0,s=-1/0,l=-1/0,c=t[0].zoom,h=0;h<t.length;h++){var d=t[h];o=Math.min(o,d.column),a=Math.min(a,d.row),s=Math.max(s,d.column),l=Math.max(l,d.row)}for(var m=0;m<i.length;m++){var v=e._tiles[i[m]],y=u.fromID(i[m]),g=[n(y,v.sourceMaxZoom,new p(o,a,c)),n(y,v.sourceMaxZoom,new p(s,l,c))];if(g[0].x<f&&g[0].y<f&&g[1].x>=0&&g[1].y>=0){for(var _=[],x=0;x<t.length;x++)_.push(n(y,v.sourceMaxZoom,t[x]));r.push({tile:v,coord:y,queryGeometry:[_],scale:Math.pow(2,e.transform.zoom-v.coord.z)})}}return r},e.prototype.redoPlacement=function(){for(var t=this,e=this.getIds(),r=0;r<e.length;r++)t.getTileByID(e[r]).redoPlacement(t._source)},e.prototype.getVisibleCoordinates=function(){for(var t=this,e=this.getRenderableIds().map(u.fromID),r=0,n=e;r<n.length;r+=1){var i=n[r];i.posMatrix=t.transform.calculatePosMatrix(i,t._source.maxzoom)}return e},e}(l);m.maxOverzooming=10,m.maxUnderzooming=3,e.exports=m},{"../data/extent":48,"../geo/coordinate":57,"../util/evented":210,"../util/lru_cache":216,"../util/util":223,"./source":97,"./tile":99,"./tile_coord":101,"@mapbox/point-geometry":2}],99:[function(t,e,r){"use strict";var n=t("../util/util"),i=t("../data/bucket").deserialize,o=t("../data/bucket/symbol_bucket"),a=t("../data/feature_index"),s=t("@mapbox/vector-tile"),l=t("pbf"),u=t("../util/vectortile_to_geojson"),c=t("../style-spec/feature_filter"),p=t("../symbol/collision_tile"),h=t("../symbol/collision_box"),f=t("../util/throttler"),d=t("../render/texture"),m=function(t,e,r){this.coord=t,this.uid=n.uniqueId(),this.uses=0,this.tileSize=e,this.sourceMaxZoom=r,this.buckets={},this.expirationTime=null,this.expiredRequestCount=0,this.state="loading",this.placementThrottler=new f(300,this._immediateRedoPlacement.bind(this))};m.prototype.registerFadeDuration=function(t,e){var r=e+this.timeAdded;r<Date.now()||this.fadeEndTime&&r<this.fadeEndTime||(this.fadeEndTime=r,t.set(this.fadeEndTime-Date.now()))},m.prototype.wasRequested=function(){return"errored"===this.state||"loaded"===this.state||"reloading"===this.state},m.prototype.loadVectorData=function(t,e){this.hasData()&&this.unloadVectorData(),this.state="loaded",t&&(t.rawTileData&&(this.rawTileData=t.rawTileData),this.collisionBoxArray=new h(t.collisionBoxArray),this.collisionTile=p.deserialize(t.collisionTile,this.collisionBoxArray),this.featureIndex=a.deserialize(t.featureIndex,this.rawTileData,this.collisionTile),this.buckets=i(t.buckets,e.style),t.iconAtlasImage&&(this.iconAtlasImage=t.iconAtlasImage),t.glyphAtlasImage&&(this.glyphAtlasImage=t.glyphAtlasImage))},m.prototype.reloadSymbolData=function(t,e){var r=this;if("unloaded"!==this.state){this.collisionTile=p.deserialize(t.collisionTile,this.collisionBoxArray),this.featureIndex&&this.featureIndex.setCollisionTile(this.collisionTile);for(var a in r.buckets){var s=r.buckets[a];s instanceof o&&(s.destroy(),delete r.buckets[a])}n.extend(this.buckets,i(t.buckets,e)),t.iconAtlasImage&&(this.iconAtlasImage=t.iconAtlasImage),t.glyphAtlasImage&&(this.glyphAtlasImage=t.glyphAtlasImage)}},m.prototype.unloadVectorData=function(){var t=this;for(var e in t.buckets)t.buckets[e].destroy();this.buckets={},this.iconAtlasTexture&&this.iconAtlasTexture.destroy(),this.glyphAtlasTexture&&this.glyphAtlasTexture.destroy(),this.collisionBoxArray=null,this.collisionTile=null,this.featureIndex=null,this.state="unloaded"},m.prototype.redoPlacement=function(t){if("vector"===t.type||"geojson"===t.type){if("loaded"!==this.state)return void(this.redoWhenDone=!0);if(this.collisionTile){var e=t.map.transform.cameraToTileDistance(this);if(this.angle===t.map.transform.angle&&this.pitch===t.map.transform.pitch&&this.showCollisionBoxes===t.map.showCollisionBoxes){if(this.cameraToTileDistance===e&&this.cameraToCenterDistance===t.map.transform.cameraToCenterDistance)return;if(this.pitch<25)return this.cameraToTileDistance=e,void(this.cameraToCenterDistance=t.map.transform.cameraToCenterDistance)}this.angle=t.map.transform.angle,this.pitch=t.map.transform.pitch,this.cameraToCenterDistance=t.map.transform.cameraToCenterDistance,this.cameraToTileDistance=e,this.showCollisionBoxes=t.map.showCollisionBoxes,this.placementSource=t,this.state="reloading",this.placementThrottler.invoke()}}},m.prototype._immediateRedoPlacement=function(){var t=this;this.placementSource.dispatcher.send("redoPlacement",{type:this.placementSource.type,uid:this.uid,source:this.placementSource.id,angle:this.angle,pitch:this.pitch,cameraToCenterDistance:this.cameraToCenterDistance,cameraToTileDistance:this.cameraToTileDistance,showCollisionBoxes:this.showCollisionBoxes},function(e,r){"reloading"===t.state&&(t.state="loaded",t.reloadSymbolData(r,t.placementSource.map.style),t.placementSource.fire("data",{tile:t,coord:t.coord,dataType:"source"}),t.placementSource.map&&(t.placementSource.map.painter.tileExtentVAO.vao=null),t.redoWhenDone&&(t.state="reloading",t.redoWhenDone=!1,t._immediateRedoPlacement()))},this.workerID)},m.prototype.getBucket=function(t){return this.buckets[t.id]},m.prototype.upload=function(t){var e=this;for(var r in e.buckets){var n=e.buckets[r];n.uploaded||(n.upload(t),n.uploaded=!0)}this.iconAtlasImage&&(this.iconAtlasTexture=new d(t,this.iconAtlasImage,t.RGBA),this.iconAtlasImage=null),this.glyphAtlasImage&&(this.glyphAtlasTexture=new d(t,this.glyphAtlasImage,t.ALPHA),this.glyphAtlasImage=null)},m.prototype.queryRenderedFeatures=function(t,e,r,n,i){var o=this;if(!this.featureIndex)return{};var a=0;for(var s in t){var l=o.getBucket(t[s]);l&&(a=Math.max(a,t[s].queryRadius(l)))}return this.featureIndex.query({queryGeometry:e,bearing:i,params:n,scale:r,additionalRadius:a,tileSize:this.tileSize},t)},m.prototype.querySourceFeatures=function(t,e){var r=this;if(this.rawTileData){this.vtLayers||(this.vtLayers=new s.VectorTile(new l(this.rawTileData)).layers);var n=e?e.sourceLayer:"",i=this.vtLayers._geojsonTileLayer||this.vtLayers[n];if(i)for(var o=c(e&&e.filter),a={z:this.coord.z,x:this.coord.x,y:this.coord.y},p=0;p<i.length;p++){var h=i.feature(p);if(o(h)){var f=new u(h,r.coord.z,r.coord.x,r.coord.y);f.tile=a,t.push(f)}}}},m.prototype.hasData=function(){return"loaded"===this.state||"reloading"===this.state||"expired"===this.state},m.prototype.setExpiryData=function(t){var e=this.expirationTime;if(t.cacheControl){var r=n.parseCacheControl(t.cacheControl);r["max-age"]&&(this.expirationTime=Date.now()+1e3*r["max-age"])}else t.expires&&(this.expirationTime=new Date(t.expires).getTime());if(this.expirationTime){var i=Date.now(),o=!1;if(this.expirationTime>i)o=!1;else if(e)if(this.expirationTime<e)o=!0;else{var a=this.expirationTime-e;a?this.expirationTime=i+Math.max(a,3e4):o=!0}else o=!0;o?(this.expiredRequestCount++,this.state="expired"):this.expiredRequestCount=0}},m.prototype.getExpiryTimeout=function(){if(this.expirationTime)return this.expiredRequestCount?1e3*(1<<Math.min(this.expiredRequestCount-1,31)):Math.min(this.expirationTime-(new Date).getTime(),Math.pow(2,31)-1)},m.prototype.stopPlacementThrottler=function(){this.placementThrottler.stop(),"reloading"===this.state&&(this.state="loaded")},e.exports=m},{"../data/bucket":42,"../data/bucket/symbol_bucket":47,"../data/feature_index":49,"../render/texture":83,"../style-spec/feature_filter":110,"../symbol/collision_box":170,"../symbol/collision_tile":172,"../util/throttler":221,"../util/util":223,"../util/vectortile_to_geojson":224,"@mapbox/vector-tile":6,pbf:29}],100:[function(t,e,r){"use strict";var n=t("../geo/lng_lat_bounds"),i=t("../util/util").clamp,o=function(t,e,r){this.bounds=n.convert(this.validateBounds(t)),this.minzoom=e||0,this.maxzoom=r||24};o.prototype.validateBounds=function(t){return Array.isArray(t)&&4===t.length?[Math.max(-180,t[0]),Math.max(-90,t[1]),Math.min(180,t[2]),Math.min(90,t[3])]:[-180,-90,180,90]},o.prototype.contains=function(t,e){var r=e?Math.min(t.z,e):t.z,n={minX:Math.floor(this.lngX(this.bounds.getWest(),r)),minY:Math.floor(this.latY(this.bounds.getNorth(),r)),maxX:Math.ceil(this.lngX(this.bounds.getEast(),r)),maxY:Math.ceil(this.latY(this.bounds.getSouth(),r))};return t.x>=n.minX&&t.x<n.maxX&&t.y>=n.minY&&t.y<n.maxY},o.prototype.lngX=function(t,e){return(t+180)*(Math.pow(2,e)/360)},o.prototype.latY=function(t,e){var r=i(Math.sin(Math.PI/180*t),-.9999,.9999),n=Math.pow(2,e)/(2*Math.PI);return Math.pow(2,e-1)+.5*Math.log((1+r)/(1-r))*-n},e.exports=o},{"../geo/lng_lat_bounds":59,"../util/util":223}],101:[function(t,e,r){"use strict";function n(t,e){if(t.row>e.row){var r=t;t=e,e=r}return{x0:t.column,y0:t.row,x1:e.column,y1:e.row,dx:e.column-t.column,dy:e.row-t.row}}function i(t,e,r,n,i){var o=Math.max(r,Math.floor(e.y0)),a=Math.min(n,Math.ceil(e.y1));if(t.x0===e.x0&&t.y0===e.y0?t.x0+e.dy/t.dy*t.dx<e.x1:t.x1-e.dy/t.dy*t.dx<e.x0){var s=t;t=e,e=s}for(var l=t.dx/t.dy,u=e.dx/e.dy,c=t.dx>0,p=e.dx<0,h=o;h<a;h++){var f=l*Math.max(0,Math.min(t.dy,h+c-t.y0))+t.x0,d=u*Math.max(0,Math.min(e.dy,h+p-e.y0))+e.x0;i(Math.floor(d),Math.ceil(f),h)}}function o(t,e,r,o,a,s){var l,u=n(t,e),c=n(e,r),p=n(r,t);u.dy>c.dy&&(l=u,u=c,c=l),u.dy>p.dy&&(l=u,u=p,p=l),c.dy>p.dy&&(l=c,c=p,p=l),u.dy&&i(p,u,o,a,s),c.dy&&i(p,c,o,a,s)}function a(t,e,r){for(var n,i="",o=t;o>0;o--)n=1<<o-1,i+=(e&n?1:0)+(r&n?2:0);return i}var s=t("@mapbox/whoots-js"),l=t("../geo/coordinate"),u=function(t,e,r,n){(void 0===n||isNaN(n))&&(n=0),this.z=+t,this.x=+e,this.y=+r,this.w=+n,(n*=2)<0&&(n=-1*n-1);var i=1<<this.z;this.id=32*(i*i*n+i*this.y+this.x)+this.z,this.posMatrix=null};u.prototype.toString=function(){return this.z+"/"+this.x+"/"+this.y},u.prototype.toCoordinate=function(t){var e=Math.min(this.z,void 0===t?this.z:t),r=Math.pow(2,e),n=this.y,i=this.x+r*this.w;return new l(i,n,e)},u.prototype.url=function(t,e,r){var n=s.getTileBBox(this.x,this.y,this.z),i=a(this.z,this.x,this.y);return t[(this.x+this.y)%t.length].replace("{prefix}",(this.x%16).toString(16)+(this.y%16).toString(16)).replace("{z}",String(Math.min(this.z,e||this.z))).replace("{x}",String(this.x)).replace("{y}",String("tms"===r?Math.pow(2,this.z)-this.y-1:this.y)).replace("{quadkey}",i).replace("{bbox-epsg-3857}",n)},u.prototype.parent=function(t){return 0===this.z?null:this.z>t?new u(this.z-1,this.x,this.y,this.w):new u(this.z-1,Math.floor(this.x/2),Math.floor(this.y/2),this.w)},u.prototype.wrapped=function(){return new u(this.z,this.x,this.y,0)},u.prototype.children=function(t){if(this.z>=t)return[new u(this.z+1,this.x,this.y,this.w)];var e=this.z+1,r=2*this.x,n=2*this.y;return[new u(e,r,n,this.w),new u(e,r+1,n,this.w),new u(e,r,n+1,this.w),new u(e,r+1,n+1,this.w)]},u.prototype.scaledTo=function(t,e){return this.z>e?new u(t,this.x,this.y,this.w):t<=this.z?new u(t,this.x>>this.z-t,this.y>>this.z-t,this.w):new u(t,this.x<<t-this.z,this.y<<t-this.z,this.w)},u.cover=function(t,e,r,n){function i(t,e,i){var o,l,c,p;if(i>=0&&i<=a)for(o=t;o<e;o++)l=Math.floor(o/a),c=(o%a+a)%a,0!==l&&!0!==n||(p=new u(r,c,i,l),s[p.id]=p)}void 0===n&&(n=!0);var a=1<<t,s={};return o(e[0],e[1],e[2],0,a,i),o(e[2],e[3],e[0],0,a,i),Object.keys(s).map(function(t){return s[t]})},u.fromID=function(t){var e=t%32,r=1<<e,n=(t-e)/32,i=n%r,o=(n-i)/r%r,a=Math.floor(n/(r*r));return a%2!=0&&(a=-1*a-1),a/=2,new u(e,i,o,a)},e.exports=u},{"../geo/coordinate":57,"@mapbox/whoots-js":10}],102:[function(t,e,r){"use strict";var n=t("../util/evented"),i=t("../util/util"),o=t("./load_tilejson"),a=t("../util/mapbox").normalizeTileURL,s=t("./tile_bounds"),l=t("../util/ajax").ResourceType,u=t("../util/browser"),c=function(t){function e(e,r,n,o){if(t.call(this),this.id=e,this.dispatcher=n,this.type="vector",this.minzoom=0,this.maxzoom=22,this.scheme="xyz",this.tileSize=512,this.reparseOverscaled=!0,this.isTileClipped=!0,i.extend(this,i.pick(r,["url","scheme","tileSize"])),this._options=i.extend({type:"vector"},r),512!==this.tileSize)throw new Error("vector tile sources must have a tileSize of 512");this.setEventedParent(o)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.load=function(){var t=this;this.fire("dataloading",{dataType:"source"}),o(this._options,this.map._transformRequest,function(e,r){e?t.fire("error",e):r&&(i.extend(t,r),r.bounds&&(t.tileBounds=new s(r.bounds,t.minzoom,t.maxzoom)),t.fire("data",{dataType:"source",sourceDataType:"metadata"}),t.fire("data",{dataType:"source",sourceDataType:"content"}))})},e.prototype.hasTile=function(t){return!this.tileBounds||this.tileBounds.contains(t,this.maxzoom)},e.prototype.onAdd=function(t){this.map=t,this.load()},e.prototype.serialize=function(){return i.extend({},this._options)},e.prototype.loadTile=function(t,e){function r(r,n){if(!t.aborted){if(r)return e(r);this.map._refreshExpiredTiles&&t.setExpiryData(n),t.loadVectorData(n,this.map.painter),t.redoWhenDone&&(t.redoWhenDone=!1,t.redoPlacement(this)),e(null),t.reloadCallback&&(this.loadTile(t,t.reloadCallback),t.reloadCallback=null)}}var n=t.coord.z>this.maxzoom?Math.pow(2,t.coord.z-this.maxzoom):1,i=a(t.coord.url(this.tiles,this.maxzoom,this.scheme),this.url),o={request:this.map._transformRequest(i,l.Tile),uid:t.uid,coord:t.coord,zoom:t.coord.z,tileSize:this.tileSize*n,type:this.type,source:this.id,pixelRatio:u.devicePixelRatio,overscaling:n,angle:this.map.transform.angle,pitch:this.map.transform.pitch,cameraToCenterDistance:this.map.transform.cameraToCenterDistance,cameraToTileDistance:this.map.transform.cameraToTileDistance(t),showCollisionBoxes:this.map.showCollisionBoxes};t.workerID&&"expired"!==t.state?"loading"===t.state?t.reloadCallback=e:this.dispatcher.send("reloadTile",o,r.bind(this),t.workerID):t.workerID=this.dispatcher.send("loadTile",o,r.bind(this))},e.prototype.abortTile=function(t){this.dispatcher.send("abortTile",{uid:t.uid,type:this.type,source:this.id},void 0,t.workerID)},e.prototype.unloadTile=function(t){t.unloadVectorData(),this.dispatcher.send("removeTile",{uid:t.uid,type:this.type,source:this.id},void 0,t.workerID)},e}(n);e.exports=c},{"../util/ajax":201,"../util/browser":202,"../util/evented":210,"../util/mapbox":217,"../util/util":223,"./load_tilejson":92,"./tile_bounds":100}],103:[function(t,e,r){"use strict";function n(t,e){var r=i.getArrayBuffer(t.request,function(t,r){t?e(t):r&&e(null,{vectorTile:new o.VectorTile(new a(r.data)),rawData:r.data,cacheControl:r.cacheControl,expires:r.expires})});return function(){r.abort()}}var i=t("../util/ajax"),o=t("@mapbox/vector-tile"),a=t("pbf"),s=t("./worker_tile"),l=t("../util/util"),u=function(t,e,r){this.actor=t,this.layerIndex=e,this.loadVectorData=r||n,this.loading={},this.loaded={}};u.prototype.loadTile=function(t,e){var r=this,n=t.source,i=t.uid;this.loading[n]||(this.loading[n]={});var o=this.loading[n][i]=new s(t);o.abort=this.loadVectorData(t,function(t,a){if(delete r.loading[n][i],t||!a)return e(t);var s=a.rawData,u={};a.expires&&(u.expires=a.expires),a.cacheControl&&(u.cacheControl=a.cacheControl),o.vectorTile=a.vectorTile,o.parse(a.vectorTile,r.layerIndex,r.actor,function(t,r,n){if(t||!r)return e(t);e(null,l.extend({rawTileData:s},r,u),n)}),r.loaded[n]=r.loaded[n]||{},r.loaded[n][i]=o})},u.prototype.reloadTile=function(t,e){function r(t,r){if(this.reloadCallback){var n=this.reloadCallback;delete this.reloadCallback,this.parse(this.vectorTile,o.layerIndex,o.actor,n)}e(t,r)}var n=this.loaded[t.source],i=t.uid,o=this;if(n&&n[i]){var a=n[i];"parsing"===a.status?a.reloadCallback=e:"done"===a.status&&a.parse(a.vectorTile,this.layerIndex,this.actor,r.bind(a))}},u.prototype.abortTile=function(t){var e=this.loading[t.source],r=t.uid;e&&e[r]&&e[r].abort&&(e[r].abort(),delete e[r])},u.prototype.removeTile=function(t){var e=this.loaded[t.source],r=t.uid;e&&e[r]&&delete e[r]},u.prototype.redoPlacement=function(t,e){var r=this.loaded[t.source],n=this.loading[t.source],i=t.uid;if(r&&r[i]){var o=r[i],a=o.redoPlacement(t.angle,t.pitch,t.cameraToCenterDistance,t.cameraToTileDistance,t.showCollisionBoxes);a.result&&e(null,a.result,a.transferables)}else n&&n[i]&&(n[i].angle=t.angle)},e.exports=u},{"../util/ajax":201,"../util/util":223,"./worker_tile":106,"@mapbox/vector-tile":6,pbf:29}],104:[function(t,e,r){"use strict";var n=t("../util/ajax"),i=t("./image_source"),o=function(t){function e(e,r,n,i){t.call(this,e,r,n,i),this.roundZoom=!0,this.type="video",this.options=r}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,n.getVideo(e.urls,function(e,r){if(e)t.fire("error",{error:e});else if(r){t.video=r,t.video.loop=!0;var n;t.video.addEventListener("playing",function(){n=t.map.style.animationLoop.set(1/0),t.map._rerender()}),t.video.addEventListener("pause",function(){t.map.style.animationLoop.cancel(n)}),t.map&&t.video.play(),t._finishLoading()}})},e.prototype.getVideo=function(){return this.video},e.prototype.onAdd=function(t){this.map||(this.map=t,this.load(),this.video&&(this.video.play(),this.setCoordinates(this.coordinates)))},e.prototype.prepare=function(){0===Object.keys(this.tiles).length||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}(i);e.exports=o},{"../util/ajax":201,"./image_source":91}],105:[function(t,e,r){"use strict";var n=t("../util/actor"),i=t("../style/style_layer_index"),o=t("./vector_tile_worker_source"),a=t("./geojson_worker_source"),s=t("./rtl_text_plugin"),l=function(t){var e=this;this.self=t,this.actor=new n(t,this),this.layerIndexes={},this.workerSourceTypes={vector:o,geojson:a},this.workerSources={},this.self.registerWorkerSource=function(t,r){if(e.workerSourceTypes[t])throw new Error('Worker source with name "'+t+'" already registered.');e.workerSourceTypes[t]=r},this.self.registerRTLTextPlugin=function(t){if(s.applyArabicShaping||s.processBidirectionalText)throw new Error("RTL text plugin already registered.");s.applyArabicShaping=t.applyArabicShaping,s.processBidirectionalText=t.processBidirectionalText}};l.prototype.setLayers=function(t,e){this.getLayerIndex(t).replace(e)},l.prototype.updateLayers=function(t,e){this.getLayerIndex(t).update(e.layers,e.removedIds,e.symbolOrder)},l.prototype.loadTile=function(t,e,r){this.getWorkerSource(t,e.type).loadTile(e,r)},l.prototype.reloadTile=function(t,e,r){this.getWorkerSource(t,e.type).reloadTile(e,r)},l.prototype.abortTile=function(t,e){this.getWorkerSource(t,e.type).abortTile(e)},l.prototype.removeTile=function(t,e){this.getWorkerSource(t,e.type).removeTile(e)},l.prototype.removeSource=function(t,e){var r=this.getWorkerSource(t,e.type);void 0!==r.removeSource&&r.removeSource(e)},l.prototype.redoPlacement=function(t,e,r){this.getWorkerSource(t,e.type).redoPlacement(e,r)},l.prototype.loadWorkerSource=function(t,e,r){try{this.self.importScripts(e.url),r()}catch(t){r(t)}},l.prototype.loadRTLTextPlugin=function(t,e,r){try{s.applyArabicShaping||s.processBidirectionalText||(this.self.importScripts(e),s.applyArabicShaping&&s.processBidirectionalText||r(new Error("RTL Text Plugin failed to import scripts from "+e)))}catch(t){r(t)}},l.prototype.getLayerIndex=function(t){var e=this.layerIndexes[t];return e||(e=this.layerIndexes[t]=new i),e},l.prototype.getWorkerSource=function(t,e){var r=this;if(this.workerSources[t]||(this.workerSources[t]={}),!this.workerSources[t][e]){var n={send:function(e,n,i,o){r.actor.send(e,n,i,o,t)}};this.workerSources[t][e]=new this.workerSourceTypes[e](n,this.getLayerIndex(t))}return this.workerSources[t][e]},e.exports=function(t){return new l(t)}},{"../style/style_layer_index":164,"../util/actor":200,"./geojson_worker_source":89,"./rtl_text_plugin":96,"./vector_tile_worker_source":103}],106:[function(t,e,r){"use strict";function n(t,e){for(var r=0,n=t.layers;r<n.length;r+=1)n[r].recalculate(e)}function i(t,e){return t.filter(function(t){return!t.isEmpty()}).map(function(t){return t.serialize(e)})}var o=t("../data/feature_index"),a=t("../symbol/collision_tile"),s=t("../symbol/collision_box"),l=t("../util/dictionary_coder"),u=(t("../data/bucket/symbol_bucket"),t("../util/util")),c=t("../render/image_atlas"),p=c.makeImageAtlas,h=t("../render/glyph_atlas"),f=h.makeGlyphAtlas,d=function(t){this.coord=t.coord,this.uid=t.uid,this.zoom=t.zoom,this.pixelRatio=t.pixelRatio,this.tileSize=t.tileSize,this.source=t.source,this.overscaling=t.overscaling,this.angle=t.angle,this.pitch=t.pitch,this.cameraToCenterDistance=t.cameraToCenterDistance,this.cameraToTileDistance=t.cameraToTileDistance,this.showCollisionBoxes=t.showCollisionBoxes};d.prototype.parse=function(t,e,r,c){function h(){var t=this;if(R)return c(R);if(D&&O){for(var e=new a(this.angle,this.pitch,this.cameraToCenterDistance,this.cameraToTileDistance,this.collisionBoxArray),r=f(D),o=p(O),s=0,l=t.symbolBuckets;s<l.length;s+=1){var h=l[s];n(h,t.zoom),h.prepare(D,r.positions,O,o.positions),h.place(e,t.showCollisionBoxes)}this.status="done";var d=[r.image.data.buffer,o.image.data.buffer];c(null,{buckets:i(u.values(y),d),featureIndex:v.serialize(d),collisionTile:e.serialize(d),collisionBoxArray:this.collisionBoxArray.serialize(),glyphAtlasImage:r.image,iconAtlasImage:o.image},d)}}var d=this;this.status="parsing",this.data=t,this.collisionBoxArray=new s;var m=new l(Object.keys(t.layers).sort()),v=new o(this.coord,this.overscaling);v.bucketLayerIDs=[];var y={},g={featureIndex:v,iconDependencies:{},glyphDependencies:{}},_=e.familiesBySource[this.source];for(var x in _){var b=t.layers[x];if(b){1===b.version&&u.warnOnce('Vector tile source "'+d.source+'" layer "'+x+'" does not use vector tile spec v2 and therefore may have some rendering errors.');for(var w=m.encode(x),T=[],S=0;S<b.length;S++){var z=b.feature(S);T.push({feature:z,index:S,sourceLayerIndex:w})}for(var A=0,C=_[x];A<C.length;A+=1){var E=C[A],k=E[0];if(!(k.minzoom&&d.zoom<Math.floor(k.minzoom))&&!(k.maxzoom&&d.zoom>=k.maxzoom||k.layout&&"none"===k.layout.visibility)){for(var M=0,L=E;M<L.length;M+=1)L[M].recalculate(d.zoom);(y[k.id]=k.createBucket({index:v.bucketLayerIDs.length,layers:E,zoom:d.zoom,pixelRatio:d.pixelRatio,overscaling:d.overscaling,collisionBoxArray:d.collisionBoxArray})).populate(T,g),v.bucketLayerIDs.push(E.map(function(t){return t.id}))}}}}this.symbolBuckets=[];for(var I=e.symbolOrder.length-1;I>=0;I--){var P=y[e.symbolOrder[I]];P&&d.symbolBuckets.push(P)}var R,D,O,B=u.mapObject(g.glyphDependencies,function(t){return Object.keys(t).map(Number)});Object.keys(B).length?r.send("getGlyphs",{uid:this.uid,stacks:B},function(t,e){R||(R=t,D=e,h.call(d))}):D={};var F=Object.keys(g.iconDependencies);F.length?r.send("getImages",{icons:F},function(t,e){R||(R=t,O=e,h.call(d))}):O={},h.call(this)},d.prototype.redoPlacement=function(t,e,r,o,s){var l=this;if(this.angle=t,this.pitch=e,this.cameraToCenterDistance=r,this.cameraToTileDistance=o,"done"!==this.status)return{};for(var u=new a(this.angle,this.pitch,this.cameraToCenterDistance,this.cameraToTileDistance,this.collisionBoxArray),c=0,p=l.symbolBuckets;c<p.length;c+=1){var h=p[c];n(h,l.zoom),h.place(u,s)}var f=[];return{result:{buckets:i(this.symbolBuckets,f),collisionTile:u.serialize(f)},transferables:f}},e.exports=d},{"../data/bucket/symbol_bucket":47,"../data/feature_index":49,"../render/glyph_atlas":74,"../render/image_atlas":76,"../symbol/collision_box":170,"../symbol/collision_tile":172,"../util/dictionary_coder":207,"../util/util":223}],107:[function(t,e,r){"use strict";function n(t,e){var r={};for(var n in t)"ref"!==n&&(r[n]=t[n]);return o.forEach(function(t){t in e&&(r[t]=e[t])}),r}function i(t){t=t.slice();for(var e=Object.create(null),r=0;r<t.length;r++)e[t[r].id]=t[r];for(var i=0;i<t.length;i++)"ref"in t[i]&&(t[i]=n(t[i],e[t[i].ref]));return t}var o=t("./util/ref_properties");e.exports=i},{"./util/ref_properties":129}],108:[function(t,e,r){"use strict";function n(t,e,r,n){t=t||{},e=e||{};var i;for(i in t)t.hasOwnProperty(i)&&(e.hasOwnProperty(i)||(r.push({command:c.removeSource,args:[i]}),n[i]=!0));for(i in e)e.hasOwnProperty(i)&&(t.hasOwnProperty(i)?u(t[i],e[i])||(r.push({command:c.removeSource,args:[i]}),r.push({command:c.addSource,args:[i,e[i]]}),n[i]=!0):r.push({command:c.addSource,args:[i,e[i]]}))}function i(t,e,r,n,i,o){t=t||{},e=e||{};var a;for(a in t)t.hasOwnProperty(a)&&(u(t[a],e[a])||r.push({command:o,args:[n,a,e[a],i]}));for(a in e)e.hasOwnProperty(a)&&!t.hasOwnProperty(a)&&(u(t[a],e[a])||r.push({command:o,args:[n,a,e[a],i]}))}function o(t){return t.id}function a(t,e){return t[e.id]=e,t}function s(t,e,r){t=t||[],e=e||[];var n,s,l,p,h,f,d,m=t.map(o),v=e.map(o),y=t.reduce(a,{}),g=e.reduce(a,{}),_=m.slice(),x=Object.create(null);for(n=0,s=0;n<m.length;n++)l=m[n],g.hasOwnProperty(l)?s++:(r.push({command:c.removeLayer,args:[l]}),_.splice(_.indexOf(l,s),1));for(n=0,s=0;n<v.length;n++)l=v[v.length-1-n],_[_.length-1-n]!==l&&(y.hasOwnProperty(l)?(r.push({command:c.removeLayer,args:[l]}),_.splice(_.lastIndexOf(l,_.length-s),1)):s++,f=_[_.length-n],r.push({command:c.addLayer,args:[g[l],f]}),_.splice(_.length-n,0,l),x[l]=!0);for(n=0;n<v.length;n++)if(l=v[n],p=y[l],h=g[l],!x[l]&&!u(p,h))if(u(p.source,h.source)&&u(p["source-layer"],h["source-layer"])&&u(p.type,h.type)){i(p.layout,h.layout,r,l,null,c.setLayoutProperty),i(p.paint,h.paint,r,l,null,c.setPaintProperty),u(p.filter,h.filter)||r.push({command:c.setFilter,args:[l,h.filter]}),u(p.minzoom,h.minzoom)&&u(p.maxzoom,h.maxzoom)||r.push({command:c.setLayerZoomRange,args:[l,h.minzoom,h.maxzoom]});for(d in p)p.hasOwnProperty(d)&&"layout"!==d&&"paint"!==d&&"filter"!==d&&"metadata"!==d&&"minzoom"!==d&&"maxzoom"!==d&&(0===d.indexOf("paint.")?i(p[d],h[d],r,l,d.slice(6),c.setPaintProperty):u(p[d],h[d])||r.push({command:c.setLayerProperty,args:[l,d,h[d]]}));for(d in h)h.hasOwnProperty(d)&&!p.hasOwnProperty(d)&&"layout"!==d&&"paint"!==d&&"filter"!==d&&"metadata"!==d&&"minzoom"!==d&&"maxzoom"!==d&&(0===d.indexOf("paint.")?i(p[d],h[d],r,l,d.slice(6),c.setPaintProperty):u(p[d],h[d])||r.push({command:c.setLayerProperty,args:[l,d,h[d]]}))}else r.push({command:c.removeLayer,args:[l]}),f=_[_.lastIndexOf(l)+1],r.push({command:c.addLayer,args:[h,f]})}function l(t,e){if(!t)return[{command:c.setStyle,args:[e]}];var r=[];try{if(!u(t.version,e.version))return[{command:c.setStyle,args:[e]}];u(t.center,e.center)||r.push({command:c.setCenter,args:[e.center]}),u(t.zoom,e.zoom)||r.push({command:c.setZoom,args:[e.zoom]}),u(t.bearing,e.bearing)||r.push({command:c.setBearing,args:[e.bearing]}),u(t.pitch,e.pitch)||r.push({command:c.setPitch,args:[e.pitch]}),u(t.sprite,e.sprite)||r.push({command:c.setSprite,args:[e.sprite]}),u(t.glyphs,e.glyphs)||r.push({command:c.setGlyphs,args:[e.glyphs]}),u(t.transition,e.transition)||r.push({command:c.setTransition,args:[e.transition]}),u(t.light,e.light)||r.push({command:c.setLight,args:[e.light]});var i={},o=[];n(t.sources,e.sources,o,i);var a=[];t.layers&&t.layers.forEach(function(t){i[t.source]?r.push({command:c.removeLayer,args:[t.id]}):a.push(t)}),r=r.concat(o),s(a,e.layers,r)}catch(t){console.warn("Unable to compute style diff:",t),r=[{command:c.setStyle,args:[e]}]}return r}var u=t("lodash.isequal"),c={setStyle:"setStyle",addLayer:"addLayer",removeLayer:"removeLayer",setPaintProperty:"setPaintProperty",setLayoutProperty:"setLayoutProperty",setFilter:"setFilter",addSource:"addSource",removeSource:"removeSource",setLayerZoomRange:"setLayerZoomRange",setLayerProperty:"setLayerProperty",setCenter:"setCenter",setZoom:"setZoom",setBearing:"setBearing",setPitch:"setPitch",setSprite:"setSprite",setGlyphs:"setGlyphs",setTransition:"setTransition",setLight:"setLight"};e.exports=l,e.exports.operations=c},{"lodash.isequal":120}],109:[function(t,e,r){"use strict";function n(t,e){for(var r=[],n=arguments.length-2;n-- >0;)r[n]=arguments[n+2];this.message=(t?t+": ":"")+i.apply(i,r),null!==e&&void 0!==e&&e.__line__&&(this.line=e.__line__)}var i=t("util").format;e.exports=n},{util:36}],110:[function(t,e,r){"use strict";function n(t){return new Function("f","var p = (f && f.properties || {}); return "+i(t))}function i(t){if(!t)return"true";var e=t[0];return t.length<=1?"any"===e?"false":"true":"("+("=="===e?a(t[1],t[2],"===",!1):"!="===e?a(t[1],t[2],"!==",!1):"<"===e||">"===e||"<="===e||">="===e?a(t[1],t[2],e,!0):"any"===e?s(t.slice(1),"||"):"all"===e?s(t.slice(1),"&&"):"none"===e?c(s(t.slice(1),"||")):"in"===e?l(t[1],t.slice(2)):"!in"===e?c(l(t[1],t.slice(2))):"has"===e?u(t[1]):"!has"===e?c(u(t[1])):"true")+")"}function o(t){return"$type"===t?"f.type":"$id"===t?"f.id":"p["+JSON.stringify(t)+"]"}function a(t,e,r,n){var i=o(t),a="$type"===t?h.indexOf(e):JSON.stringify(e);return(n?"typeof "+i+"=== typeof "+a+"&&":"")+i+r+a}function s(t,e){return t.map(i).join(e)}function l(t,e){"$type"===t&&(e=e.map(function(t){return h.indexOf(t)}));var r=JSON.stringify(e.sort(p)),n=o(t);return e.length<=200?r+".indexOf("+n+") !== -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; }("+n+", "+r+",0,"+(e.length-1)+")"}function u(t){return"$id"===t?'"id" in f':JSON.stringify(t)+" in p"}function c(t){return"!("+t+")"}function p(t,e){return t<e?-1:t>e?1:0}e.exports=n;var h=["Unknown","Point","LineString","Polygon"]},{}],111:[function(t,e,r){"use strict";function n(t){return t>y?Math.pow(t,1/3):t/v+d}function i(t){return t>m?t*t*t:v*(t-d)}function o(t){return 255*(t<=.0031308?12.92*t:1.055*Math.pow(t,1/2.4)-.055)}function a(t){return t/=255,t<=.04045?t/12.92:Math.pow((t+.055)/1.055,2.4)}function s(t){var e=a(t[0]),r=a(t[1]),i=a(t[2]),o=n((.4124564*e+.3575761*r+.1804375*i)/p),s=n((.2126729*e+.7151522*r+.072175*i)/h);return[116*s-16,500*(o-s),200*(s-n((.0193339*e+.119192*r+.9503041*i)/f)),t[3]]}function l(t){var e=(t[0]+16)/116,r=isNaN(t[1])?e:e+t[1]/500,n=isNaN(t[2])?e:e-t[2]/200;return e=h*i(e),r=p*i(r),n=f*i(n),[o(3.2404542*r-1.5371385*e-.4985314*n),o(-.969266*r+1.8760108*e+.041556*n),o(.0556434*r-.2040259*e+1.0572252*n),t[3]]}function u(t){var e=s(t),r=e[0],n=e[1],i=e[2],o=Math.atan2(i,n)*_;return[o<0?o+360:o,Math.sqrt(n*n+i*i),r,t[3]]}function c(t){var e=t[0]*g,r=t[1];return l([t[2],Math.cos(e)*r,Math.sin(e)*r,t[3]])}var p=.95047,h=1,f=1.08883,d=4/29,m=6/29,v=3*m*m,y=m*m*m,g=Math.PI/180,_=180/Math.PI;e.exports={lab:{forward:s,reverse:l},hcl:{forward:u,reverse:c}}},{}],112:[function(t,e,r){"use strict";function n(t){return t}function i(t,e){var r,c="color"===e.type;if(p(t)){var h=t.stops&&"object"==typeof t.stops[0][0],v=h||void 0!==t.property,y=h||!v,g=t.type||("interpolated"===e.function?"exponential":"interval");c&&(t=m({},t),t.stops&&(t.stops=t.stops.map(function(t){return[t[0],d(t[1])]})),t.default?t.default=d(t.default):t.default=d(e.default));var _,x,b;if("exponential"===g)_=l;else if("interval"===g)_=s;else if("categorical"===g){_=a,x=Object.create(null);for(var w=0,T=t.stops;w<T.length;w+=1){var S=T[w];x[S[0]]=S[1]}b=typeof t.stops[0][0]}else{if("identity"!==g)throw new Error('Unknown function type "'+g+'"');_=u}var z;if(t.colorSpace&&"rgb"!==t.colorSpace){if(!f[t.colorSpace])throw new Error("Unknown color space: "+t.colorSpace);var A=f[t.colorSpace];t=JSON.parse(JSON.stringify(t));for(var C=0;C<t.stops.length;C++)t.stops[C]=[t.stops[C][0],A.forward(t.stops[C][1])];z=A.reverse}else z=n;if(h){for(var E={},k=[],M=0;M<t.stops.length;M++){var L=t.stops[M],I=L[0].zoom;void 0===E[I]&&(E[I]={zoom:I,type:t.type,property:t.property,default:t.default,stops:[]},k.push(I)),E[I].stops.push([L[0].value,L[1]])}for(var P=[],R=0,D=k;R<D.length;R+=1){var O=D[R];P.push([E[O].zoom,i(E[O],e)])}r=function(r,n){return z(l({stops:P,base:t.base},e,r)(r,n))},r.isFeatureConstant=!1,r.isZoomConstant=!1}else y?(r=function(r){return z(_(t,e,r,x,b))},r.isFeatureConstant=!0,r.isZoomConstant=!1):(r=function(r,n){var i=n[t.property];return void 0===i?o(t.default,e.default):z(_(t,e,i,x,b))},r.isFeatureConstant=!1,r.isZoomConstant=!0)}else c&&t&&(t=d(t)),r=function(){return t},r.isFeatureConstant=!0,r.isZoomConstant=!0;return r}function o(t,e,r){return void 0!==t?t:void 0!==e?e:void 0!==r?r:void 0}function a(t,e,r,n,i){return o(typeof r===i?n[r]:void 0,t.default,e.default)}function s(t,e,r){if("number"!==v(r))return o(t.default,e.default);var n=t.stops.length;if(1===n)return t.stops[0][1];if(r<=t.stops[0][0])return t.stops[0][1];if(r>=t.stops[n-1][0])return t.stops[n-1][1];var i=c(t.stops,r);return t.stops[i][1]}function l(t,e,r){var i=void 0!==t.base?t.base:1;if("number"!==v(r))return o(t.default,e.default);var a=t.stops.length;if(1===a)return t.stops[0][1];if(r<=t.stops[0][0])return t.stops[0][1];if(r>=t.stops[a-1][0])return t.stops[a-1][1];var s=c(t.stops,r),l=h(r,i,t.stops[s][0],t.stops[s+1][0]),u=t.stops[s][1],p=t.stops[s+1][1],f=y[e.type]||n;return"function"==typeof u?function(){for(var t=[],e=arguments.length;e--;)t[e]=arguments[e];var r=u.apply(void 0,t),n=p.apply(void 0,t);if(void 0!==r&&void 0!==n)return f(r,n,l)}:f(u,p,l)}function u(t,e,r){return"color"===e.type?r=d(r):v(r)===e.type||"enum"===e.type&&e.values[r]||(r=void 0),o(r,t.default,e.default)}function c(t,e){for(var r,n,i=t.length,o=0,a=i-1,s=0;o<=a;){if(s=Math.floor((o+a)/2),r=t[s][0],n=t[s+1][0],e===r||e>r&&e<n)return s;r<e?o=s+1:r>e&&(a=s-1)}return Math.max(s-1,0)}function p(t){return"object"==typeof t&&(t.stops||"identity"===t.type)}function h(t,e,r,n){var i=n-r,o=t-r;return 0===i?0:1===e?o/i:(Math.pow(e,o)-1)/(Math.pow(e,i)-1)}var f=t("./color_spaces"),d=t("../util/parse_color"),m=t("../util/extend"),v=t("../util/get_type"),y=t("../util/interpolate");e.exports=i,e.exports.isFunctionDefinition=p,e.exports.interpolationFactor=h,e.exports.findStopLessThanOrEqualTo=c},{"../util/extend":125,"../util/get_type":126,"../util/interpolate":127,"../util/parse_color":128,"./color_spaces":111}],113:[function(t,e,r){"use strict";function n(t){var e=typeof t;if("number"===e||"boolean"===e||"string"===e||void 0===t||null===t)return JSON.stringify(t);if(Array.isArray(t)){for(var r="[",i=0,o=t;i<o.length;i+=1)r+=n(o[i])+",";return r+"]"}for(var a=Object.keys(t).sort(),s="{",l=0;l<a.length;l++)s+=JSON.stringify(a[l])+":"+n(t[a[l]])+",";return s+"}"}function i(t){for(var e="",r=0,i=a;r<i.length;r+=1)e+="/"+n(t[i[r]]);return e}function o(t){for(var e={},r=0;r<t.length;r++){var n=i(t[r]),o=e[n];o||(o=e[n]=[]),o.push(t[r])}var a=[];for(var s in e)a.push(e[s]);return a}var a=t("./util/ref_properties");e.exports=o},{"./util/ref_properties":129}],114:[function(t,e,r){function n(t){return t=Math.round(t),t<0?0:t>255?255:t}function i(t){return t<0?0:t>1?1:t}function o(t){return n("%"===t[t.length-1]?parseFloat(t)/100*255:parseInt(t))}function a(t){return i("%"===t[t.length-1]?parseFloat(t)/100:parseFloat(t))}function s(t,e,r){return r<0?r+=1:r>1&&(r-=1),6*r<1?t+(e-t)*r*6:2*r<1?e:3*r<2?t+(e-t)*(2/3-r)*6:t}function l(t){var e=t.replace(/ /g,"").toLowerCase();if(e in u)return u[e].slice();if("#"===e[0]){if(4===e.length){var r=parseInt(e.substr(1),16);return r>=0&&r<=4095?[(3840&r)>>4|(3840&r)>>8,240&r|(240&r)>>4,15&r|(15&r)<<4,1]:null}if(7===e.length){var r=parseInt(e.substr(1),16);return r>=0&&r<=16777215?[(16711680&r)>>16,(65280&r)>>8,255&r,1]:null}return null}var i=e.indexOf("("),l=e.indexOf(")");if(-1!==i&&l+1===e.length){var c=e.substr(0,i),p=e.substr(i+1,l-(i+1)).split(","),h=1;switch(c){case"rgba":if(4!==p.length)return null;h=a(p.pop());case"rgb":return 3!==p.length?null:[o(p[0]),o(p[1]),o(p[2]),h];case"hsla":if(4!==p.length)return null;h=a(p.pop());case"hsl":if(3!==p.length)return null;var f=(parseFloat(p[0])%360+360)%360/360,d=a(p[1]),m=a(p[2]),v=m<=.5?m*(d+1):m+d-m*d,y=2*m-v;return[n(255*s(y,v,f+1/3)),n(255*s(y,v,f)),n(255*s(y,v,f-1/3)),h];default:return null}}return null}var u={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{r.parseCSSColor=l}catch(t){}},{}],115:[function(t,e,r){function n(t){return!!t&&"object"==typeof t}function i(t,e){for(var r=-1,n=t.length;++r<n;)if(e(t[r],r,t))return!0;return!1}function o(t,e,r,i,s,l){return t===e||(null==t||null==e||!c(t)&&!n(e)?t!==t&&e!==e:a(t,e,o,r,i,s,l))}function a(t,e,r,n,i,o,a){var c=p(t),f=p(e),v=m,y=m;c||(v=z.call(t),v==d?v=x:v!=x&&(c=h(t))),f||(y=z.call(e),y==d?y=x:y!=x&&(f=h(e)));var g=v==x,_=y==x,b=v==y;if(b&&!c&&!g)return l(t,e,v);if(!i){var w=g&&S.call(t,"__wrapped__"),T=_&&S.call(e,"__wrapped__");if(w||T)return r(w?t.value():t,T?e.value():e,n,i,o,a)}if(!b)return!1;o||(o=[]),a||(a=[]);for(var A=o.length;A--;)if(o[A]==t)return a[A]==e;o.push(t),a.push(e);var C=(c?s:u)(t,e,r,n,i,o,a);return o.pop(),a.pop(),C}function s(t,e,r,n,o,a,s){var l=-1,u=t.length,c=e.length;if(u!=c&&!(o&&c>u))return!1;for(;++l<u;){var p=t[l],h=e[l],f=n?n(o?h:p,o?p:h,l):void 0;if(void 0!==f){if(f)continue;return!1}if(o){if(!i(e,function(t){return p===t||r(p,t,n,o,a,s)}))return!1}else if(p!==h&&!r(p,h,n,o,a,s))return!1}return!0}function l(t,e,r){switch(r){case v:case y:return+t==+e;case g:return t.name==e.name&&t.message==e.message;case _:return t!=+t?e!=+e:t==+e;case b:case w:return t==e+""}return!1}function u(t,e,r,n,i,o,a){var s=f(t),l=s.length;if(l!=f(e).length&&!i)return!1;for(var u=l;u--;){var c=s[u];if(!(i?c in e:S.call(e,c)))return!1}for(var p=i;++u<l;){c=s[u];var h=t[c],d=e[c],m=n?n(i?d:h,i?h:d,c):void 0;if(!(void 0===m?r(h,d,n,i,o,a):m))return!1;p||(p="constructor"==c)}if(!p){var v=t.constructor,y=e.constructor;if(v!=y&&"constructor"in t&&"constructor"in e&&!("function"==typeof v&&v instanceof v&&"function"==typeof y&&y instanceof y))return!1}return!0}function c(t){var e=typeof t;return!!t&&("object"==e||"function"==e)}var p=t("lodash.isarray"),h=t("lodash.istypedarray"),f=t("lodash.keys"),d="[object Arguments]",m="[object Array]",v="[object Boolean]",y="[object Date]",g="[object Error]",_="[object Number]",x="[object Object]",b="[object RegExp]",w="[object String]",T=Object.prototype,S=T.hasOwnProperty,z=T.toString;e.exports=o},{"lodash.isarray":119,"lodash.istypedarray":121,"lodash.keys":122}],116:[function(t,e,r){function n(t,e,r){if("function"!=typeof t)return i;if(void 0===e)return t;switch(r){case 1:return function(r){return t.call(e,r)};case 3:return function(r,n,i){return t.call(e,r,n,i)};case 4:return function(r,n,i,o){return t.call(e,r,n,i,o)};case 5:return function(r,n,i,o,a){return t.call(e,r,n,i,o,a)}}return function(){return t.apply(e,arguments)}}function i(t){return t}e.exports=n},{}],117:[function(t,e,r){function n(t){return!!t&&"object"==typeof t}function i(t,e){var r=null==t?void 0:t[e];return s(r)?r:void 0}function o(t){return a(t)&&f.call(t)==l}function a(t){var e=typeof t;return!!t&&("object"==e||"function"==e)}function s(t){return null!=t&&(o(t)?d.test(p.call(t)):n(t)&&u.test(t))}var l="[object Function]",u=/^\[object .+?Constructor\]$/,c=Object.prototype,p=Function.prototype.toString,h=c.hasOwnProperty,f=c.toString,d=RegExp("^"+p.call(h).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");e.exports=i},{}],118:[function(t,e,r){function n(t){return o(t)&&m.call(t,"callee")&&(!y.call(t,"callee")||v.call(t)==p)}function i(t){return null!=t&&s(t.length)&&!a(t)}function o(t){return u(t)&&i(t)}function a(t){var e=l(t)?v.call(t):"";return e==h||e==f}function s(t){return"number"==typeof t&&t>-1&&t%1==0&&t<=c}function l(t){var e=typeof t;return!!t&&("object"==e||"function"==e)}function u(t){return!!t&&"object"==typeof t}var c=9007199254740991,p="[object Arguments]",h="[object Function]",f="[object GeneratorFunction]",d=Object.prototype,m=d.hasOwnProperty,v=d.toString,y=d.propertyIsEnumerable;e.exports=n},{}],119:[function(t,e,r){function n(t){return!!t&&"object"==typeof t}function i(t){return"number"==typeof t&&t>-1&&t%1==0&&t<=v}function o(t){return a(t)&&f.call(t)==l}function a(t){var e=typeof t;return!!t&&("object"==e||"function"==e)}function s(t){return null!=t&&(o(t)?d.test(p.call(t)):n(t)&&u.test(t))}var l="[object Function]",u=/^\[object .+?Constructor\]$/,c=Object.prototype,p=Function.prototype.toString,h=c.hasOwnProperty,f=c.toString,d=RegExp("^"+p.call(h).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),m=function(t,e){var r=null==t?void 0:t[e];return s(r)?r:void 0}(Array,"isArray"),v=9007199254740991,y=m||function(t){return n(t)&&i(t.length)&&"[object Array]"==f.call(t)};e.exports=y},{}],120:[function(t,e,r){function n(t,e,r,n){r="function"==typeof r?o(r,n,3):void 0;var a=r?r(t,e):void 0;return void 0===a?i(t,e,r):!!a}var i=t("lodash._baseisequal"),o=t("lodash._bindcallback");e.exports=n},{"lodash._baseisequal":115,"lodash._bindcallback":116}],121:[function(t,e,r){function n(t){return"number"==typeof t&&t>-1&&t%1==0&&t<=a}function i(t){return!!t&&"object"==typeof t}function o(t){return i(t)&&n(t.length)&&!!s[u.call(t)]}var a=9007199254740991,s={};s["[object Float32Array]"]=s["[object Float64Array]"]=s["[object Int8Array]"]=s["[object Int16Array]"]=s["[object Int32Array]"]=s["[object Uint8Array]"]=s["[object Uint8ClampedArray]"]=s["[object Uint16Array]"]=s["[object Uint32Array]"]=!0,s["[object Arguments]"]=s["[object Array]"]=s["[object ArrayBuffer]"]=s["[object Boolean]"]=s["[object DataView]"]=s["[object Date]"]=s["[object Error]"]=s["[object Function]"]=s["[object Map]"]=s["[object Number]"]=s["[object Object]"]=s["[object RegExp]"]=s["[object Set]"]=s["[object String]"]=s["[object WeakMap]"]=!1;var l=Object.prototype,u=l.toString;e.exports=o},{}],122:[function(t,e,r){function n(t){return null!=t&&o(y(t))}function i(t,e){return t="number"==typeof t||h.test(t)?+t:-1,e=null==e?v:e,t>-1&&t%1==0&&t<e}function o(t){return"number"==typeof t&&t>-1&&t%1==0&&t<=v}function a(t){for(var e=l(t),r=e.length,n=r&&t.length,a=!!n&&o(n)&&(p(t)||c(t)),s=-1,u=[];++s<r;){var h=e[s];(a&&i(h,n)||d.call(t,h))&&u.push(h)}return u}function s(t){var e=typeof t;return!!t&&("object"==e||"function"==e)}function l(t){if(null==t)return[];s(t)||(t=Object(t));var e=t.length;e=e&&o(e)&&(p(t)||c(t))&&e||0;for(var r=t.constructor,n=-1,a="function"==typeof r&&r.prototype===t,l=Array(e),u=e>0;++n<e;)l[n]=n+"";for(var h in t)u&&i(h,e)||"constructor"==h&&(a||!d.call(t,h))||l.push(h);return l}var u=t("lodash._getnative"),c=t("lodash.isarguments"),p=t("lodash.isarray"),h=/^\d+$/,f=Object.prototype,d=f.hasOwnProperty,m=u(Object,"keys"),v=9007199254740991,y=function(t){return function(e){return null==e?void 0:e[t]}}("length"),g=m?function(t){var e=null==t?void 0:t.constructor;return"function"==typeof e&&e.prototype===t||"function"!=typeof t&&n(t)?a(t):s(t)?m(t):[]}:a;e.exports=g},{"lodash._getnative":117,"lodash.isarguments":118,"lodash.isarray":119}],123:[function(t,e,r){"use strict";e.exports=t("./v8.json")},{"./v8.json":124}],124:[function(t,e,r){e.exports={$version:8,$root:{version:{required:!0,type:"enum",values:[8]},name:{type:"string"},metadata:{type:"*"},center:{type:"array",value:"number"},zoom:{type:"number"},bearing:{type:"number",default:0,period:360,units:"degrees"},pitch:{type:"number",default:0,units:"degrees"},light:{type:"light"},sources:{required:!0,type:"sources"},sprite:{type:"string"},glyphs:{type:"string"},transition:{type:"transition"},layers:{required:!0,type:"array",value:"layer"}},sources:{"*":{type:"source"}},source:["source_tile","source_geojson","source_video","source_image","source_canvas"],source_tile:{type:{required:!0,type:"enum",values:{vector:{},raster:{}}},url:{type:"string"},tiles:{type:"array",value:"string"},bounds:{type:"array",value:"number",length:4,default:[-180,-85.0511,180,85.0511]},minzoom:{type:"number",default:0},maxzoom:{type:"number",default:22},tileSize:{type:"number",default:512,units:"pixels"},"*":{type:"*"}},source_geojson:{type:{required:!0,type:"enum",values:{geojson:{}}},data:{type:"*"},maxzoom:{type:"number",default:18},buffer:{type:"number",default:128,maximum:512,minimum:0},tolerance:{type:"number",default:.375},cluster:{type:"boolean",default:!1},clusterRadius:{type:"number",default:50,minimum:0},clusterMaxZoom:{type:"number"}},source_video:{type:{required:!0,type:"enum",values:{video:{}}},urls:{required:!0,type:"array",value:"string"},coordinates:{required:!0,type:"array",length:4,value:{type:"array",length:2,value:"number"}}},source_image:{type:{required:!0,type:"enum",values:{image:{}}},url:{required:!0,type:"string"},coordinates:{required:!0,type:"array",length:4,value:{type:"array",length:2,value:"number"}}},source_canvas:{type:{required:!0,type:"enum",values:{canvas:{}}},coordinates:{required:!0,type:"array",length:4,value:{type:"array",length:2,value:"number"}},animate:{type:"boolean",default:"true"},canvas:{type:"string",required:!0},contextType:{required:!0,type:"enum",values:{"2d":{},webgl:{},"experimental-webgl":{},webgl2:{}}}},layer:{id:{type:"string",required:!0},type:{type:"enum",values:{fill:{},line:{},symbol:{},circle:{},"fill-extrusion":{},raster:{},background:{}}},metadata:{type:"*"},ref:{type:"string"},source:{type:"string"},"source-layer":{type:"string"},minzoom:{type:"number",minimum:0,maximum:24},maxzoom:{type:"number",minimum:0,maximum:24},filter:{type:"filter"},layout:{type:"layout"},paint:{type:"paint"},"paint.*":{type:"paint"}},layout:["layout_fill","layout_line","layout_circle","layout_fill-extrusion","layout_symbol","layout_raster","layout_background"],layout_background:{visibility:{type:"enum",values:{visible:{},none:{}},default:"visible"}},layout_fill:{visibility:{type:"enum",values:{visible:{},none:{}},default:"visible"}},layout_circle:{visibility:{type:"enum",values:{visible:{},none:{}},default:"visible"}},"layout_fill-extrusion":{visibility:{type:"enum",values:{visible:{},none:{}},default:"visible"}},layout_line:{"line-cap":{type:"enum",function:"piecewise-constant","zoom-function":!0,values:{butt:{},round:{},square:{}},default:"butt"},"line-join":{type:"enum",function:"piecewise-constant","zoom-function":!0,"property-function":!0,values:{bevel:{},round:{},miter:{}},default:"miter"},"line-miter-limit":{type:"number",default:2,function:"interpolated","zoom-function":!0,requires:[{"line-join":"miter"}]},"line-round-limit":{type:"number",default:1.05,function:"interpolated","zoom-function":!0,requires:[{"line-join":"round"}]},visibility:{type:"enum",values:{visible:{},none:{}},default:"visible"}},layout_symbol:{"symbol-placement":{type:"enum",function:"piecewise-constant","zoom-function":!0,values:{point:{},line:{}},default:"point"},"symbol-spacing":{type:"number",default:250,minimum:1,function:"interpolated","zoom-function":!0,units:"pixels",requires:[{"symbol-placement":"line"}]},"symbol-avoid-edges":{type:"boolean",function:"piecewise-constant","zoom-function":!0,default:!1},"icon-allow-overlap":{type:"boolean",function:"piecewise-constant","zoom-function":!0,default:!1,requires:["icon-image"]},"icon-ignore-placement":{type:"boolean",function:"piecewise-constant","zoom-function":!0,default:!1,requires:["icon-image"]},"icon-optional":{type:"boolean",function:"piecewise-constant","zoom-function":!0,default:!1,requires:["icon-image","text-field"]},"icon-rotation-alignment":{type:"enum",function:"piecewise-constant","zoom-function":!0,values:{map:{},viewport:{},auto:{}},default:"auto",requires:["icon-image"]},"icon-size":{type:"number",default:1,minimum:0,function:"interpolated","zoom-function":!0,"property-function":!0,units:"factor of the original icon size",requires:["icon-image"]},"icon-text-fit":{type:"enum",function:"piecewise-constant","zoom-function":!0,values:{none:{},width:{},height:{},both:{}},default:"none",requires:["icon-image","text-field"]},"icon-text-fit-padding":{type:"array",value:"number",length:4,default:[0,0,0,0],units:"pixels",function:"interpolated","zoom-function":!0,requires:["icon-image","text-field",{"icon-text-fit":["both","width","height"]}]},"icon-image":{type:"string",function:"piecewise-constant","zoom-function":!0,"property-function":!0,tokens:!0},"icon-rotate":{type:"number",default:0,period:360,function:"interpolated","zoom-function":!0,"property-function":!0,units:"degrees",requires:["icon-image"]},"icon-padding":{type:"number",default:2,minimum:0,function:"interpolated","zoom-function":!0,units:"pixels",requires:["icon-image"]},"icon-keep-upright":{type:"boolean",function:"piecewise-constant","zoom-function":!0,default:!1,requires:["icon-image",{"icon-rotation-alignment":"map"},{"symbol-placement":"line"}]},"icon-offset":{type:"array",value:"number",length:2,default:[0,0],function:"interpolated","zoom-function":!0,"property-function":!0,requires:["icon-image"]},"icon-anchor":{type:"enum",function:"piecewise-constant","zoom-function":!0,"property-function":!0,values:{center:{},left:{},right:{},top:{},bottom:{},"top-left":{},"top-right":{},"bottom-left":{},"bottom-right":{}},default:"center",requires:["icon-image"]},"icon-pitch-alignment":{type:"enum",function:"piecewise-constant","zoom-function":!0,values:{map:{},viewport:{},auto:{}},default:"auto",requires:["icon-image"]},"text-pitch-alignment":{type:"enum",function:"piecewise-constant","zoom-function":!0,values:{map:{},viewport:{},auto:{}},default:"auto",requires:["text-field"]},"text-rotation-alignment":{type:"enum",function:"piecewise-constant","zoom-function":!0,values:{map:{},viewport:{},auto:{}},default:"auto",requires:["text-field"]},"text-field":{type:"string",function:"piecewise-constant","zoom-function":!0,"property-function":!0,default:"",tokens:!0},"text-font":{type:"array",value:"string",function:"piecewise-constant","zoom-function":!0,default:["Open Sans Regular","Arial Unicode MS Regular"],requires:["text-field"]},"text-size":{type:"number",default:16,minimum:0,units:"pixels",function:"interpolated","zoom-function":!0,"property-function":!0,requires:["text-field"]},"text-max-width":{type:"number",default:10,minimum:0,units:"ems",function:"interpolated","zoom-function":!0,"property-function":!0,requires:["text-field"]},"text-line-height":{type:"number",default:1.2,units:"ems",function:"interpolated","zoom-function":!0,requires:["text-field"]},"text-letter-spacing":{type:"number",default:0,units:"ems",function:"interpolated","zoom-function":!0,"property-function":!0,requires:["text-field"]},"text-justify":{type:"enum",function:"piecewise-constant","zoom-function":!0,"property-function":!0,values:{left:{},center:{},right:{}},default:"center",requires:["text-field"]},"text-anchor":{type:"enum",function:"piecewise-constant","zoom-function":!0,"property-function":!0,values:{center:{},left:{},right:{},top:{},bottom:{},"top-left":{},"top-right":{},"bottom-left":{},"bottom-right":{}},default:"center",requires:["text-field"]},"text-max-angle":{type:"number",default:45,units:"degrees",function:"interpolated","zoom-function":!0,requires:["text-field",{"symbol-placement":"line"}]},"text-rotate":{type:"number",default:0,period:360,units:"degrees",function:"interpolated","zoom-function":!0,"property-function":!0,requires:["text-field"]},"text-padding":{type:"number",default:2,minimum:0,units:"pixels",function:"interpolated","zoom-function":!0,requires:["text-field"]},"text-keep-upright":{type:"boolean",function:"piecewise-constant","zoom-function":!0,default:!0,requires:["text-field",{"text-rotation-alignment":"map"},{"symbol-placement":"line"}]},"text-transform":{type:"enum",function:"piecewise-constant","zoom-function":!0,"property-function":!0,values:{none:{},uppercase:{},lowercase:{}},default:"none",requires:["text-field"]},"text-offset":{type:"array",value:"number",units:"ems",function:"interpolated","zoom-function":!0,"property-function":!0,length:2,default:[0,0],requires:["text-field"]},"text-allow-overlap":{type:"boolean",function:"piecewise-constant","zoom-function":!0,default:!1,requires:["text-field"]},"text-ignore-placement":{type:"boolean",function:"piecewise-constant","zoom-function":!0,default:!1,requires:["text-field"]},"text-optional":{type:"boolean",function:"piecewise-constant","zoom-function":!0,default:!1,requires:["text-field","icon-image"]},visibility:{type:"enum",values:{visible:{},none:{}},default:"visible"}},layout_raster:{visibility:{type:"enum",values:{visible:{},none:{}},default:"visible"}},filter:{type:"array",value:"*"},filter_operator:{type:"enum",values:{"==":{},"!=":{},">":{},">=":{},"<":{},"<=":{},in:{},"!in":{},all:{},any:{},none:{},has:{},"!has":{}}},geometry_type:{type:"enum",values:{Point:{},LineString:{},Polygon:{}}},function:{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,"zoom-function":!0,"property-function":!1,function:"piecewise-constant"},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,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,"property-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-pitch-alignment":{type:"enum",function:"piecewise-constant","zoom-function":!0,values:{map:{},viewport:{}},default:"viewport"},"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"}}}},{}],125:[function(t,e,r){"use strict";e.exports=function(t){for(var e=[],r=arguments.length-1;r-- >0;)e[r]=arguments[r+1];for(var n=0,i=e;n<i.length;n+=1){var o=i[n];for(var a in o)t[a]=o[a]}return t}},{}],126:[function(t,e,r){"use strict";e.exports=function(t){return t instanceof Number?"number":t instanceof String?"string":t instanceof Boolean?"boolean":Array.isArray(t)?"array":null===t?"null":typeof t}},{}],127:[function(t,e,r){"use strict";function n(t,e,r){return t*(1-r)+e*r}e.exports=n,n.number=n,n.vec2=function(t,e,r){return[n(t[0],e[0],r),n(t[1],e[1],r)]},n.color=function(t,e,r){return[n(t[0],e[0],r),n(t[1],e[1],r),n(t[2],e[2],r),n(t[3],e[3],r)]},n.array=function(t,e,r){return t.map(function(t,i){return n(t,e[i],r)})}},{}],128:[function(t,e,r){"use strict";var n=t("csscolorparser").parseCSSColor;e.exports=function(t){if("string"==typeof t){var e=n(t);if(!e)return;return[e[0]/255*e[3],e[1]/255*e[3],e[2]/255*e[3],e[3]]}return Array.isArray(t)?t:void 0}},{csscolorparser:114}],129:[function(t,e,r){"use strict";e.exports=["type","source","source-layer","minzoom","maxzoom","filter","layout"]},{}],130:[function(t,e,r){"use strict";e.exports=function(t){return t instanceof Number||t instanceof String||t instanceof Boolean?t.valueOf():t}},{}],131:[function(t,e,r){"use strict";var n=t("../error/validation_error"),i=t("../util/get_type"),o=t("../util/extend");e.exports=function(e){var r=t("./validate_function"),a=t("./validate_object"),s={"*":function(){return[]},array:t("./validate_array"),boolean:t("./validate_boolean"),number:t("./validate_number"),color:t("./validate_color"),constants:t("./validate_constants"),enum:t("./validate_enum"),filter:t("./validate_filter"),function:t("./validate_function"),layer:t("./validate_layer"),object:t("./validate_object"),source:t("./validate_source"),light:t("./validate_light"),string:t("./validate_string")},l=e.value,u=e.valueSpec,c=e.key,p=e.styleSpec,h=e.style;if("string"===i(l)&&"@"===l[0]){if(p.$version>7)return[new n(c,l,"constants have been deprecated as of v8")];if(!(l in h.constants))return[new n(c,l,'constant "%s" not found',l)];e=o({},e,{value:h.constants[l]})}return u.function&&"object"===i(l)?r(e):u.type&&s[u.type]?s[u.type](e):a(o({},e,{valueSpec:u.type?p[u.type]:u}))}},{"../error/validation_error":109,"../util/extend":125,"../util/get_type":126,"./validate_array":132,"./validate_boolean":133,"./validate_color":134,"./validate_constants":135,"./validate_enum":136,"./validate_filter":137,"./validate_function":138,"./validate_layer":140,"./validate_light":142,"./validate_number":143,"./validate_object":144,"./validate_source":147,"./validate_string":148}],132:[function(t,e,r){"use strict";var n=t("../util/get_type"),i=t("./validate"),o=t("../error/validation_error");e.exports=function(t){var e=t.value,r=t.valueSpec,a=t.style,s=t.styleSpec,l=t.key,u=t.arrayElementValidator||i;if("array"!==n(e))return[new o(l,e,"array expected, %s found",n(e))];if(r.length&&e.length!==r.length)return[new o(l,e,"array length %d expected, length %d found",r.length,e.length)];if(r["min-length"]&&e.length<r["min-length"])return[new o(l,e,"array length at least %d expected, length %d found",r["min-length"],e.length)];var c={type:r.value};s.$version<7&&(c.function=r.function),"object"===n(r.value)&&(c=r.value);for(var p=[],h=0;h<e.length;h++)p=p.concat(u({array:e,arrayIndex:h,value:e[h],valueSpec:c,style:a,styleSpec:s,key:l+"["+h+"]"}));return p}},{"../error/validation_error":109,"../util/get_type":126,"./validate":131}],133:[function(t,e,r){"use strict";var n=t("../util/get_type"),i=t("../error/validation_error");e.exports=function(t){var e=t.value,r=t.key,o=n(e);return"boolean"!==o?[new i(r,e,"boolean expected, %s found",o)]:[]}},{"../error/validation_error":109,"../util/get_type":126}],134:[function(t,e,r){"use strict";var n=t("../error/validation_error"),i=t("../util/get_type"),o=t("csscolorparser").parseCSSColor;e.exports=function(t){var e=t.key,r=t.value,a=i(r);return"string"!==a?[new n(e,r,"color expected, %s found",a)]:null===o(r)?[new n(e,r,'color expected, "%s" found',r)]:[]}},{"../error/validation_error":109,"../util/get_type":126,csscolorparser:114}],135:[function(t,e,r){"use strict";var n=t("../error/validation_error"),i=t("../util/get_type");e.exports=function(t){var e=t.key,r=t.value;if(t.styleSpec.$version>7)return r?[new n(e,r,"constants have been deprecated as of v8")]:[];var o=i(r);if("object"!==o)return[new n(e,r,"object expected, %s found",o)];var a=[];for(var s in r)"@"!==s[0]&&a.push(new n(e+"."+s,r[s],'constants must start with "@"'));return a}},{"../error/validation_error":109,"../util/get_type":126}],136:[function(t,e,r){"use strict";var n=t("../error/validation_error"),i=t("../util/unbundle_jsonlint");e.exports=function(t){var e=t.key,r=t.value,o=t.valueSpec,a=[];return Array.isArray(o.values)?-1===o.values.indexOf(i(r))&&a.push(new n(e,r,"expected one of [%s], %s found",o.values.join(", "),r)):-1===Object.keys(o.values).indexOf(i(r))&&a.push(new n(e,r,"expected one of [%s], %s found",Object.keys(o.values).join(", "),r)),a}},{"../error/validation_error":109,"../util/unbundle_jsonlint":130}],137:[function(t,e,r){"use strict";var n=t("../error/validation_error"),i=t("./validate_enum"),o=t("../util/get_type"),a=t("../util/unbundle_jsonlint");e.exports=function t(e){var r,s=e.value,l=e.key,u=e.styleSpec,c=[];if("array"!==o(s))return[new n(l,s,"array expected, %s found",o(s))];if(s.length<1)return[new n(l,s,"filter array must have at least 1 element")];switch(c=c.concat(i({key:l+"[0]",value:s[0],valueSpec:u.filter_operator,style:e.style,styleSpec:e.styleSpec})),a(s[0])){case"<":case"<=":case">":case">=":s.length>=2&&"$type"===a(s[1])&&c.push(new n(l,s,'"$type" cannot be use with operator "%s"',s[0]));case"==":case"!=":3!==s.length&&c.push(new n(l,s,'filter array for operator "%s" must have 3 elements',s[0]));case"in":case"!in":s.length>=2&&"string"!==(r=o(s[1]))&&c.push(new n(l+"[1]",s[1],"string expected, %s found",r));for(var p=2;p<s.length;p++)r=o(s[p]),"$type"===a(s[1])?c=c.concat(i({key:l+"["+p+"]",value:s[p],valueSpec:u.geometry_type,style:e.style,styleSpec:e.styleSpec})):"string"!==r&&"number"!==r&&"boolean"!==r&&c.push(new n(l+"["+p+"]",s[p],"string, number, or boolean expected, %s found",r));break;case"any":case"all":case"none":for(var h=1;h<s.length;h++)c=c.concat(t({key:l+"["+h+"]",value:s[h],style:e.style,styleSpec:e.styleSpec}));break;case"has":case"!has":r=o(s[1]),2!==s.length?c.push(new n(l,s,'filter array for "%s" operator must have 2 elements',s[0])):"string"!==r&&c.push(new n(l+"[1]",s[1],"string expected, %s found",r))}return c}},{"../error/validation_error":109,"../util/get_type":126,"../util/unbundle_jsonlint":130,"./validate_enum":136}],138:[function(t,e,r){"use strict";var n=t("../error/validation_error"),i=t("../util/get_type"),o=t("./validate"),a=t("./validate_object"),s=t("./validate_array"),l=t("./validate_number"),u=t("../util/unbundle_jsonlint");e.exports=function(t){function e(t){if("identity"===v)return[new n(t.key,t.value,'identity function may not have a "stops" property')];var e=[],o=t.value;return e=e.concat(s({key:t.key,value:o,valueSpec:t.valueSpec,style:t.style,styleSpec:t.styleSpec,arrayElementValidator:r})),"array"===i(o)&&0===o.length&&e.push(new n(t.key,o,"array must have at least one stop")),e}function r(t){var e=[],r=t.value,s=t.key;if("array"!==i(r))return[new n(s,r,"array expected, %s found",i(r))];if(2!==r.length)return[new n(s,r,"array length %d expected, length %d found",2,r.length)];if(x){if("object"!==i(r[0]))return[new n(s,r,"object expected, %s found",i(r[0]))];if(void 0===r[0].zoom)return[new n(s,r,"object stop key must have zoom")];if(void 0===r[0].value)return[new n(s,r,"object stop key must have value")];if(d&&d>u(r[0].zoom))return[new n(s,r[0].zoom,"stop zoom values must appear in ascending order")];u(r[0].zoom)!==d&&(d=u(r[0].zoom),f=void 0,y={}),e=e.concat(a({key:s+"[0]",value:r[0],valueSpec:{zoom:{}},style:t.style,styleSpec:t.styleSpec,objectElementValidators:{zoom:l,value:c}}))}else e=e.concat(c({key:s+"[0]",value:r[0],valueSpec:{},style:t.style,styleSpec:t.styleSpec}));return e.concat(o({key:s+"[1]",value:r[1],valueSpec:m,style:t.style,styleSpec:t.styleSpec}))}function c(t){var e=i(t.value),r=u(t.value);if(h){if(e!==h)return[new n(t.key,t.value,"%s stop domain type must match previous stop domain type %s",e,h)]}else h=e;if("number"!==e&&"string"!==e&&"boolean"!==e)return[new n(t.key,t.value,"stop domain value must be a number, string, or boolean")];if("number"!==e&&"categorical"!==v){var o="number expected, %s found";return m["property-function"]&&void 0===v&&(o+='\nIf you intended to use a categorical function, specify `"type": "categorical"`.'),[new n(t.key,t.value,o,e)]}return"categorical"!==v||"number"!==e||isFinite(r)&&Math.floor(r)===r?"categorical"!==v&&"number"===e&&void 0!==f&&r<f?[new n(t.key,t.value,"stop domain values must appear in ascending order")]:(f=r,"categorical"===v&&r in y?[new n(t.key,t.value,"stop domain values must be unique")]:(y[r]=!0,[])):[new n(t.key,t.value,"integer expected, found %s",r)]}function p(t){return o({key:t.key,value:t.value,valueSpec:m,style:t.style,styleSpec:t.styleSpec})}var h,f,d,m=t.valueSpec,v=u(t.value.type),y={},g="categorical"!==v&&void 0===t.value.property,_=!g,x="array"===i(t.value.stops)&&"array"===i(t.value.stops[0])&&"object"===i(t.value.stops[0][0]),b=a({key:t.key,value:t.value,valueSpec:t.styleSpec.function,style:t.style,styleSpec:t.styleSpec,objectElementValidators:{stops:e,default:p}});return"identity"===v&&g&&b.push(new n(t.key,t.value,'missing required property "property"')),"identity"===v||t.value.stops||b.push(new n(t.key,t.value,'missing required property "stops"')),"exponential"===v&&"piecewise-constant"===t.valueSpec.function&&b.push(new n(t.key,t.value,"exponential functions not supported")),t.styleSpec.$version>=8&&(_&&!t.valueSpec["property-function"]?b.push(new n(t.key,t.value,"property functions not supported")):g&&!t.valueSpec["zoom-function"]&&b.push(new n(t.key,t.value,"zoom functions not supported"))),"categorical"!==v&&!x||void 0!==t.value.property||b.push(new n(t.key,t.value,'"property" property is required')),b}},{"../error/validation_error":109,"../util/get_type":126,"../util/unbundle_jsonlint":130,"./validate":131,"./validate_array":132,"./validate_number":143,"./validate_object":144}],139:[function(t,e,r){"use strict";var n=t("../error/validation_error"),i=t("./validate_string");e.exports=function(t){var e=t.value,r=t.key,o=i(t);return o.length?o:(-1===e.indexOf("{fontstack}")&&o.push(new n(r,e,'"glyphs" url must include a "{fontstack}" token')),-1===e.indexOf("{range}")&&o.push(new n(r,e,'"glyphs" url must include a "{range}" token')),o)}},{"../error/validation_error":109,"./validate_string":148}],140:[function(t,e,r){"use strict";var n=t("../error/validation_error"),i=t("../util/unbundle_jsonlint"),o=t("./validate_object"),a=t("./validate_filter"),s=t("./validate_paint_property"),l=t("./validate_layout_property"),u=t("../util/extend");e.exports=function(t){var e=[],r=t.value,c=t.key,p=t.style,h=t.styleSpec;r.type||r.ref||e.push(new n(c,r,'either "type" or "ref" is required'));var f=i(r.type),d=i(r.ref);if(r.id)for(var m=i(r.id),v=0;v<t.arrayIndex;v++){var y=p.layers[v];i(y.id)===m&&e.push(new n(c,r.id,'duplicate layer id "%s", previously used at line %d',r.id,y.id.__line__))}if("ref"in r){["type","source","source-layer","filter","layout"].forEach(function(t){t in r&&e.push(new n(c,r[t],'"%s" is prohibited for ref layers',t))});var g;p.layers.forEach(function(t){i(t.id)===d&&(g=t)}),g?g.ref?e.push(new n(c,r.ref,"ref cannot reference another ref layer")):f=i(g.type):e.push(new n(c,r.ref,'ref layer "%s" not found',d))}else if("background"!==f)if(r.source){var _=p.sources&&p.sources[r.source],x=_&&i(_.type);_?"vector"===x&&"raster"===f?e.push(new n(c,r.source,'layer "%s" requires a raster source',r.id)):"raster"===x&&"raster"!==f?e.push(new n(c,r.source,'layer "%s" requires a vector source',r.id)):"vector"!==x||r["source-layer"]||e.push(new n(c,r,'layer "%s" must specify a "source-layer"',r.id)):e.push(new n(c,r.source,'source "%s" not found',r.source))}else e.push(new n(c,r,'missing required property "source"'));return e=e.concat(o({key:c,value:r,valueSpec:h.layer,style:t.style,styleSpec:t.styleSpec,objectElementValidators:{"*":function(){return[]},filter:a,layout:function(t){return o({layer:r,key:t.key,value:t.value,style:t.style,styleSpec:t.styleSpec,objectElementValidators:{"*":function(t){return l(u({layerType:f},t))}}})},paint:function(t){return o({layer:r,key:t.key,value:t.value,style:t.style,styleSpec:t.styleSpec,objectElementValidators:{"*":function(t){return s(u({layerType:f},t))}}})}}}))}},{"../error/validation_error":109,"../util/extend":125,"../util/unbundle_jsonlint":130,"./validate_filter":137,"./validate_layout_property":141,"./validate_object":144,"./validate_paint_property":145}],141:[function(t,e,r){"use strict";var n=t("./validate_property");e.exports=function(t){return n(t,"layout")}},{"./validate_property":146}],142:[function(t,e,r){"use strict";var n=t("../error/validation_error"),i=t("../util/get_type"),o=t("./validate");e.exports=function(t){var e=t.value,r=t.styleSpec,a=r.light,s=t.style,l=[],u=i(e);if(void 0===e)return l;if("object"!==u)return l=l.concat([new n("light",e,"object expected, %s found",u)]);for(var c in e){var p=c.match(/^(.*)-transition$/);l=p&&a[p[1]]&&a[p[1]].transition?l.concat(o({key:c,value:e[c],valueSpec:r.transition,style:s,styleSpec:r})):a[c]?l.concat(o({key:c,value:e[c],valueSpec:a[c],style:s,styleSpec:r})):l.concat([new n(c,e[c],'unknown property "%s"',c)])}return l}},{"../error/validation_error":109,"../util/get_type":126,"./validate":131}],143:[function(t,e,r){"use strict";var n=t("../util/get_type"),i=t("../error/validation_error");e.exports=function(t){var e=t.key,r=t.value,o=t.valueSpec,a=n(r);return"number"!==a?[new i(e,r,"number expected, %s found",a)]:"minimum"in o&&r<o.minimum?[new i(e,r,"%s is less than the minimum value %s",r,o.minimum)]:"maximum"in o&&r>o.maximum?[new i(e,r,"%s is greater than the maximum value %s",r,o.maximum)]:[]}},{"../error/validation_error":109,"../util/get_type":126}],144:[function(t,e,r){"use strict";var n=t("../error/validation_error"),i=t("../util/get_type"),o=t("./validate");e.exports=function(t){var e=t.key,r=t.value,a=t.valueSpec||{},s=t.objectElementValidators||{},l=t.style,u=t.styleSpec,c=[],p=i(r);if("object"!==p)return[new n(e,r,"object expected, %s found",p)];for(var h in r){var f=h.split(".")[0],d=a[f]||a["*"],m=void 0;if(s[f])m=s[f];else if(a[f])m=o;else if(s["*"])m=s["*"];else{if(!a["*"]){c.push(new n(e,r[h],'unknown property "%s"',h));continue}m=o}c=c.concat(m({key:(e?e+".":e)+h,value:r[h],valueSpec:d,style:l,styleSpec:u,object:r,objectKey:h}))}for(var v in a)a[v].required&&void 0===a[v].default&&void 0===r[v]&&c.push(new n(e,r,'missing required property "%s"',v));return c}},{"../error/validation_error":109,"../util/get_type":126,"./validate":131}],145:[function(t,e,r){"use strict";var n=t("./validate_property");e.exports=function(t){return n(t,"paint")}},{"./validate_property":146}],146:[function(t,e,r){"use strict";var n=t("./validate"),i=t("../error/validation_error"),o=t("../util/get_type");e.exports=function(t,e){var r=t.key,a=t.style,s=t.styleSpec,l=t.value,u=t.objectKey,c=s[e+"_"+t.layerType];if(!c)return[];var p=u.match(/^(.*)-transition$/);if("paint"===e&&p&&c[p[1]]&&c[p[1]].transition)return n({key:r,value:l,valueSpec:s.transition,style:a,styleSpec:s});var h=t.valueSpec||c[u];if(!h)return[new i(r,l,'unknown property "%s"',u)];var f;if("string"===o(l)&&h["property-function"]&&!h.tokens&&(f=/^{([^}]+)}$/.exec(l)))return[new i(r,l,'"%s" does not support interpolation syntax\nUse an identity property function instead: `{ "type": "identity", "property": %s` }`.',u,JSON.stringify(f[1]))];var d=[];return"symbol"===t.layerType&&"text-field"===u&&a&&!a.glyphs&&d.push(new i(r,l,'use of "text-field" requires a style "glyphs" property')),d.concat(n({key:t.key,value:l,valueSpec:h,style:a,styleSpec:s}))}},{"../error/validation_error":109,"../util/get_type":126,"./validate":131}],147:[function(t,e,r){"use strict";var n=t("../error/validation_error"),i=t("../util/unbundle_jsonlint"),o=t("./validate_object"),a=t("./validate_enum");e.exports=function(t){var e=t.value,r=t.key,s=t.styleSpec,l=t.style;if(!e.type)return[new n(r,e,'"type" is required')];var u=i(e.type),c=[];switch(u){case"vector":case"raster":if(c=c.concat(o({key:r,value:e,valueSpec:s.source_tile,style:t.style,styleSpec:s})),"url"in e)for(var p in e)["type","url","tileSize"].indexOf(p)<0&&c.push(new n(r+"."+p,e[p],'a source with a "url" property may not include a "%s" property',p));return c;case"geojson":return o({key:r,value:e,valueSpec:s.source_geojson,style:l,styleSpec:s});case"video":return o({key:r,value:e,valueSpec:s.source_video,style:l,styleSpec:s});case"image":return o({key:r,value:e,valueSpec:s.source_image,style:l,styleSpec:s});case"canvas":return o({key:r,value:e,valueSpec:s.source_canvas,style:l,styleSpec:s});default:return a({key:r+".type",value:e.type,valueSpec:{values:["vector","raster","geojson","video","image","canvas"]},style:l,styleSpec:s})}}},{"../error/validation_error":109,"../util/unbundle_jsonlint":130,"./validate_enum":136,"./validate_object":144}],148:[function(t,e,r){"use strict";var n=t("../util/get_type"),i=t("../error/validation_error");e.exports=function(t){var e=t.value,r=t.key,o=n(e);return"string"!==o?[new i(r,e,"string expected, %s found",o)]:[]}},{"../error/validation_error":109,"../util/get_type":126}],149:[function(t,e,r){"use strict";function n(t,e){e=e||l;var r=[];return r=r.concat(s({key:"",value:t,valueSpec:e.$root,styleSpec:e,style:t,objectElementValidators:{glyphs:u,"*":function(){return[]}}})),e.$version>7&&t.constants&&(r=r.concat(a({key:"constants",value:t.constants,style:t,styleSpec:e}))),i(r)}function i(t){return[].concat(t).sort(function(t,e){return t.line-e.line})}function o(t){return function(){return i(t.apply(this,arguments))}}var a=t("./validate/validate_constants"),s=t("./validate/validate"),l=t("./reference/latest"),u=t("./validate/validate_glyphs_url");n.source=o(t("./validate/validate_source")),n.light=o(t("./validate/validate_light")),n.layer=o(t("./validate/validate_layer")),n.filter=o(t("./validate/validate_filter")),n.paintProperty=o(t("./validate/validate_paint_property")),n.layoutProperty=o(t("./validate/validate_layout_property")),e.exports=n},{"./reference/latest":123,"./validate/validate":131,"./validate/validate_constants":135,"./validate/validate_filter":137,"./validate/validate_glyphs_url":139,"./validate/validate_layer":140,"./validate/validate_layout_property":141,"./validate/validate_light":142,"./validate/validate_paint_property":145,"./validate/validate_source":147}],150:[function(t,e,r){"use strict";var n=function(){this.n=0,this.times=[]};n.prototype.stopped=function(){return this.times=this.times.filter(function(t){return t.time>=(new Date).getTime()}),!this.times.length},n.prototype.set=function(t){return this.times.push({id:this.n,time:t+(new Date).getTime()}),this.n++},n.prototype.cancel=function(t){this.times=this.times.filter(function(e){return e.id!==t})},e.exports=n},{}],151:[function(t,e,r){"use strict";var n=t("../style-spec/reference/latest"),i=t("../util/util"),o=t("../util/evented"),a=t("./validate_style"),s=t("./style_declaration"),l=t("./style_transition"),u=["anchor","color","position","intensity"],c=n.light,p=function(t){function e(e){t.call(this),this.set(e)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.set=function(t){var e=this;if(!this._validate(a.light,t)){this._declarations={},this._transitions={},this._transitionOptions={},this.calculated={},t=i.extend({anchor:c.anchor.default,color:c.color.default,position:c.position.default,intensity:c.intensity.default},t);for(var r=0,n=u;r<n.length;r+=1){var o=n[r];e._declarations[o]=new s(c[o],t[o])}return this}},e.prototype.getLight=function(){return{anchor:this.getLightProperty("anchor"),color:this.getLightProperty("color"),position:this.getLightProperty("position"),intensity:this.getLightProperty("intensity")}},e.prototype.getLightProperty=function(t){return i.endsWith(t,"-transition")?this._transitionOptions[t]:this._declarations[t]&&this._declarations[t].value},e.prototype.getLightValue=function(t,e){if("position"===t){var r=this._transitions[t].calculate(e),n=i.sphericalToCartesian(r);return{x:n[0],y:n[1],z:n[2]}}return this._transitions[t].calculate(e)},e.prototype.setLight=function(t){var e=this;if(!this._validate(a.light,t))for(var r in t){var n=t[r];i.endsWith(r,"-transition")?e._transitionOptions[r]=n:null===n||void 0===n?delete e._declarations[r]:e._declarations[r]=new s(c[r],n)}},e.prototype.recalculate=function(t){var e=this;for(var r in e._declarations)e.calculated[r]=e.getLightValue(r,{zoom:t})},e.prototype._applyLightDeclaration=function(t,e,r,n,o){var a=r.transition?this._transitions[t]:void 0,u=c[t];if(null!==e&&void 0!==e||(e=new s(u,u.default)),!a||a.declaration.json!==e.json){var p=i.extend({duration:300,delay:0},n,this.getLightProperty(t+"-transition")),h=this._transitions[t]=new l(u,e,a,p);h.instant()||(h.loopID=o.set(h.endTime-Date.now())),a&&o.cancel(a.loopID)}},e.prototype.updateLightTransitions=function(t,e,r){var n,i=this;for(n in i._declarations)i._applyLightDeclaration(n,i._declarations[n],t,e,r)},e.prototype._validate=function(t,e){return a.emitErrors(this,t.call(a,i.extend({value:e,style:{glyphs:!0,sprite:!0},styleSpec:n})))},e}(o);e.exports=p},{"../style-spec/reference/latest":123,"../util/evented":210,"../util/util":223,"./style_declaration":157,"./style_transition":165,"./validate_style":166}],152:[function(t,e,r){"use strict";var n=t("../util/mapbox"),i=n.normalizeGlyphsURL,o=t("../util/ajax"),a=t("./parse_glyph_pbf");e.exports=function(t,e,r,n,s){var l=256*e,u=l+255,c=n(i(r).replace("{fontstack}",t).replace("{range}",l+"-"+u),o.ResourceType.Glyphs);o.getArrayBuffer(c,function(t,e){if(t)s(t);else if(e){for(var r={},n=0,i=a(e.data);n<i.length;n+=1){var o=i[n];r[o.id]=o}s(null,r)}})}},{"../util/ajax":201,"../util/mapbox":217,"./parse_glyph_pbf":154}],153:[function(t,e,r){"use strict";var n=t("../util/ajax"),i=t("../util/browser"),o=t("../util/mapbox"),a=o.normalizeSpriteURL,s=t("../util/image"),l=s.RGBAImage;e.exports=function(t,e,r){function o(){if(c)r(c);else if(s&&u){var t=i.getImageData(u),e={};for(var n in s){var o=s[n],a=o.width,p=o.height,h=o.x,f=o.y,d=o.sdf,m=o.pixelRatio,v=l.create({width:a,height:p});l.copy(t,v,{x:h,y:f},{x:0,y:0},{width:a,height:p}),e[n]={data:v,pixelRatio:m,sdf:d}}r(null,e)}}if(!t)return void r(null,{});var s,u,c,p=i.devicePixelRatio>1?"@2x":"";n.getJSON(e(a(t,p,".json"),n.ResourceType.SpriteJSON),function(t,e){c||(c=t,s=e,o())}),n.getImage(e(a(t,p,".png"),n.ResourceType.SpriteImage),function(t,e){c||(c=t,u=e,o())})}},{"../util/ajax":201,"../util/browser":202,"../util/image":213,"../util/mapbox":217}],154:[function(t,e,r){"use strict";function n(t,e,r){1===t&&r.readMessage(i,e)}function i(t,e,r){if(3===t){var n=r.readMessage(o,{}),i=n.id,a=n.bitmap,l=n.width,c=n.height,p=n.left,h=n.top,f=n.advance;e.push({id:i,bitmap:s.create({width:l+2*u,height:c+2*u},a),metrics:{width:l,height:c,left:p,top:h,advance:f}})}}function o(t,e,r){1===t?e.id=r.readVarint():2===t?e.bitmap=r.readBytes():3===t?e.width=r.readVarint():4===t?e.height=r.readVarint():5===t?e.left=r.readSVarint():6===t?e.top=r.readSVarint():7===t&&(e.advance=r.readVarint())}var a=t("../util/image"),s=a.AlphaImage,l=t("pbf"),u=3;e.exports=function(t){return new l(t).readFields(n,[])},e.exports.GLYPH_PBF_BORDER=u},{"../util/image":213,pbf:29}],155:[function(t,e,r){"use strict";function n(t,e,r){return e.isPaintValueFeatureConstant(t)?e.paint[t]:r.programConfigurations.get(e.id).paintPropertyStatistics[t].max}function i(t){return Math.sqrt(t[0]*t[0]+t[1]*t[1])}function o(t,e,r,n,i){if(!e[0]&&!e[1])return t;var o=a.convert(e);"viewport"===r&&o._rotate(-n);for(var s=[],l=0;l<t.length;l++){for(var u=t[l],c=[],p=0;p<u.length;p++)c.push(u[p].sub(o._mult(i)));s.push(c)}return s}var a=t("@mapbox/point-geometry");e.exports={getMaximumPaintValue:n,translateDistance:i,translate:o}},{"@mapbox/point-geometry":2}],156:[function(t,e,r){"use strict";var n=t("../util/evented"),i=t("./style_layer"),o=t("./load_sprite"),a=t("../render/image_manager"),s=t("../render/glyph_manager"),l=t("./light"),u=t("../render/line_atlas"),c=t("../util/util"),p=t("../util/ajax"),h=t("../util/mapbox"),f=t("../util/browser"),d=t("../util/dispatcher"),m=t("./animation_loop"),v=t("./validate_style"),y=t("../source/source").getType,g=t("../source/source").setType,_=t("../source/query_features"),x=t("../source/source_cache"),b=t("../style-spec/reference/latest"),w=t("../style-spec/function"),T=t("../util/global_worker_pool"),S=t("../style-spec/deref"),z=t("../style-spec/diff"),A=t("../source/rtl_text_plugin"),C=c.pick(z.operations,["addLayer","removeLayer","setPaintProperty","setLayoutProperty","setFilter","addSource","removeSource","setLayerZoomRange","setLight","setTransition"]),E=c.pick(z.operations,["setCenter","setZoom","setBearing","setPitch"]),k=function(t){function e(e,r,n){var i=this;t.call(this),n=c.extend({validate:"string"!=typeof e||!h.isMapboxURL(e)},n);var l=function(t,e){return i.map?i.map._transformRequest(t,e):{url:t}};this.map=r,this.animationLoop=r&&r.animationLoop||new m,this.dispatcher=new d(T(),this),this.imageManager=new a,this.glyphManager=new s(l,n.localIdeographFontFamily),this.lineAtlas=new u(256,512),this._layers={},this._order=[],this.sourceCaches={},this.zoomHistory={},this._loaded=!1,c.bindAll(["_redoPlacement"],this),this._resetUpdates(),this.setEventedParent(r),this.fire("dataloading",{dataType:"style"});var y=this;this._rtlTextPluginCallback=A.registerForPluginAvailability(function(t){y.dispatcher.broadcast("loadRTLTextPlugin",t.pluginBlobURL,t.errorCallback);for(var e in y.sourceCaches)y.sourceCaches[e].reload()});var g=function(t,e){if(t)i.fire("error",{error:t});else if(e){if(n.validate&&v.emitErrors(i,v(e)))return;i._loaded=!0,i.stylesheet=e,i.updateClasses();for(var r in e.sources)i.addSource(r,e.sources[r],n);o(e.sprite,l,function(t,e){if(t)i.fire("error",t);else if(e)for(var r in e)i.imageManager.addImage(r,e[r]);i.imageManager.setLoaded(!0)}),i.glyphManager.setURL(e.glyphs),i._resolve(),i.fire("data",{dataType:"style"}),i.fire("style.load")}};"string"==typeof e?p.getJSON(l(h.normalizeStyleURL(e),p.ResourceType.Style),g):f.frame(function(){return g(null,e)}),this.on("data",function(t){if("source"===t.dataType&&"metadata"===t.sourceDataType){var e=i.sourceCaches[t.sourceId];if(e){var r=e.getSource();if(r&&r.vectorLayerIds)for(var n in i._layers){var o=i._layers[n];o.source===r.id&&i._validateLayer(o)}}}})}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype._validateLayer=function(t){var e=this.sourceCaches[t.source];if(e){var r=t.sourceLayer;if(r){var n=e.getSource();("geojson"===n.type||n.vectorLayerIds&&-1===n.vectorLayerIds.indexOf(r))&&this.fire("error",{error:new Error('Source layer "'+r+'" does not exist on source "'+n.id+'" as specified by style layer "'+t.id+'"')})}}},e.prototype.loaded=function(){var t=this;if(!this._loaded)return!1;if(Object.keys(this._updatedSources).length)return!1;for(var e in t.sourceCaches)if(!t.sourceCaches[e].loaded())return!1;return!!this.imageManager.isLoaded()},e.prototype._resolve=function(){var t=this,e=S(this.stylesheet.layers);this._order=e.map(function(t){return t.id}),this._layers={};for(var r=0,n=e;r<n.length;r+=1){var o=n[r];o=i.create(o),o.setEventedParent(t,{layer:{id:o.id}}),t._layers[o.id]=o}this.dispatcher.broadcast("setLayers",this._serializeLayers(this._order)),this.light=new l(this.stylesheet.light)},e.prototype._serializeLayers=function(t){var e=this;return t.map(function(t){return e._layers[t].serialize()})},e.prototype._applyClasses=function(t,e){var r=this;if(this._loaded){t=t||[],e=e||{transition:!0};var n=this.stylesheet.transition||{},i=this._updatedAllPaintProps?this._layers:this._updatedPaintProps;for(var o in i){var a=r._layers[o],s=r._updatedPaintProps[o];if(r._updatedAllPaintProps||s.all)a.updatePaintTransitions(t,e,n,r.animationLoop,r.zoomHistory);else for(var l in s)r._layers[o].updatePaintTransition(l,t,e,n,r.animationLoop,r.zoomHistory)}this.light.updateLightTransitions(e,n,this.animationLoop)}},e.prototype._recalculate=function(t){var e=this;if(this._loaded){for(var r in e.sourceCaches)e.sourceCaches[r].used=!1;this._updateZoomHistory(t);for(var n=0,i=e._order;n<i.length;n+=1){var o=i[n],a=e._layers[o];a.recalculate(t),!a.isHidden(t)&&a.source&&(e.sourceCaches[a.source].used=!0)}this.light.recalculate(t),Math.floor(this.z)!==Math.floor(t)&&this.animationLoop.set(300),this.z=t}},e.prototype._updateZoomHistory=function(t){var e=this.zoomHistory;void 0===e.lastIntegerZoom&&(e.lastIntegerZoom=Math.floor(t),e.lastIntegerZoomTime=0,e.lastZoom=t),Math.floor(e.lastZoom)<Math.floor(t)?(e.lastIntegerZoom=Math.floor(t),e.lastIntegerZoomTime=Date.now()):Math.floor(e.lastZoom)>Math.floor(t)&&(e.lastIntegerZoom=Math.floor(t+1),e.lastIntegerZoomTime=Date.now()),e.lastZoom=t},e.prototype._checkLoaded=function(){if(!this._loaded)throw new Error("Style is not done loading")},e.prototype.update=function(t,e){var r=this;if(this._changed){var n=Object.keys(this._updatedLayers),i=Object.keys(this._removedLayers);(n.length||i.length||this._updatedSymbolOrder)&&this._updateWorkerLayers(n,i);for(var o in r._updatedSources){var a=r._updatedSources[o];"reload"===a?r._reloadSource(o):"clear"===a&&r._clearSource(o)}this._applyClasses(t,e),this._resetUpdates(),this.fire("data",{dataType:"style"})}},e.prototype._updateWorkerLayers=function(t,e){var r=this,n=this._updatedSymbolOrder?this._order.filter(function(t){return"symbol"===r._layers[t].type}):null;this.dispatcher.broadcast("updateLayers",{layers:this._serializeLayers(t),removedIds:e,symbolOrder:n})},e.prototype._resetUpdates=function(){this._changed=!1,this._updatedLayers={},this._removedLayers={},this._updatedSymbolOrder=!1,this._updatedSources={},this._updatedPaintProps={},this._updatedAllPaintProps=!1},e.prototype.setState=function(t){var e=this;if(this._checkLoaded(),v.emitErrors(this,v(t)))return!1;t=c.clone(t),t.layers=S(t.layers);var r=z(this.serialize(),t).filter(function(t){return!(t.command in E)});if(0===r.length)return!1;var n=r.filter(function(t){return!(t.command in C)});if(n.length>0)throw new Error("Unimplemented: "+n.map(function(t){return t.command}).join(", ")+".");return r.forEach(function(t){"setTransition"!==t.command&&e[t.command].apply(e,t.args)}),this.stylesheet=t,!0},e.prototype.addImage=function(t,e){if(this.imageManager.getImage(t))return this.fire("error",{error:new Error("An image with this name already exists.")});this.imageManager.addImage(t,e),this.fire("data",{dataType:"style"})},e.prototype.removeImage=function(t){if(!this.imageManager.getImage(t))return this.fire("error",{error:new Error("No image with this name exists.")});this.imageManager.removeImage(t),this.fire("data",{dataType:"style"})},e.prototype.addSource=function(t,e,r){var n=this;if(this._checkLoaded(),void 0!==this.sourceCaches[t])throw new Error("There is already a source with this ID");if(!e.type)throw new Error("The type property must be defined, but the only the following properties were given: "+Object.keys(e).join(", ")+".");if(!(["vector","raster","geojson","video","image","canvas"].indexOf(e.type)>=0&&this._validate(v.source,"sources."+t,e,null,r))){var i=this.sourceCaches[t]=new x(t,e,this.dispatcher);i.style=this,i.setEventedParent(this,function(){return{isSourceLoaded:n.loaded(),source:i.serialize(),sourceId:t}}),i.onAdd(this.map),this._changed=!0}},e.prototype.removeSource=function(t){if(this._checkLoaded(),void 0===this.sourceCaches[t])throw new Error("There is no source with this ID");var e=this.sourceCaches[t];delete this.sourceCaches[t],delete this._updatedSources[t],e.fire("data",{sourceDataType:"metadata",dataType:"source",sourceId:t}),e.setEventedParent(null),e.clearTiles(),e.onRemove&&e.onRemove(this.map),this._changed=!0},e.prototype.getSource=function(t){return this.sourceCaches[t]&&this.sourceCaches[t].getSource()},e.prototype.addLayer=function(t,e,r){this._checkLoaded();var n=t.id;if("object"==typeof t.source&&(this.addSource(n,t.source),t=c.clone(t),t=c.extend(t,{source:n})),!this._validate(v.layer,"layers."+n,t,{arrayIndex:-1},r)){var o=i.create(t);this._validateLayer(o),o.setEventedParent(this,{layer:{id:n}});var a=e?this._order.indexOf(e):this._order.length;if(this._order.splice(a,0,n),this._layers[n]=o,this._removedLayers[n]&&o.source){var s=this._removedLayers[n];delete this._removedLayers[n],s.type!==o.type?this._updatedSources[o.source]="clear":(this._updatedSources[o.source]="reload",this.sourceCaches[o.source].pause())}this._updateLayer(o),"symbol"===o.type&&(this._updatedSymbolOrder=!0),this.updateClasses(n)}},e.prototype.moveLayer=function(t,e){this._checkLoaded(),this._changed=!0;var r=this._layers[t];if(!r)return void this.fire("error",{error:new Error("The layer '"+t+"' does not exist in the map's style and cannot be moved.")});var n=this._order.indexOf(t);this._order.splice(n,1);var i=e?this._order.indexOf(e):this._order.length;this._order.splice(i,0,t),"symbol"===r.type&&(this._updatedSymbolOrder=!0,r.source&&!this._updatedSources[r.source]&&(this._updatedSources[r.source]="reload",this.sourceCaches[r.source].pause()))},e.prototype.removeLayer=function(t){this._checkLoaded();var e=this._layers[t];if(!e)return void this.fire("error",{error:new Error("The layer '"+t+"' does not exist in the map's style and cannot be removed.")});e.setEventedParent(null);var r=this._order.indexOf(t);this._order.splice(r,1),"symbol"===e.type&&(this._updatedSymbolOrder=!0),this._changed=!0,this._removedLayers[t]=e,delete this._layers[t],delete this._updatedLayers[t],delete this._updatedPaintProps[t]},e.prototype.getLayer=function(t){return this._layers[t]},e.prototype.setLayerZoomRange=function(t,e,r){this._checkLoaded();var n=this.getLayer(t);if(!n)return void this.fire("error",{error:new Error("The layer '"+t+"' does not exist in the map's style and cannot have zoom extent.")});n.minzoom===e&&n.maxzoom===r||(null!=e&&(n.minzoom=e),null!=r&&(n.maxzoom=r),this._updateLayer(n))},e.prototype.setFilter=function(t,e){this._checkLoaded();var r=this.getLayer(t);if(!r)return void this.fire("error",{error:new Error("The layer '"+t+"' does not exist in the map's style and cannot be filtered.")});null!==e&&void 0!==e&&this._validate(v.filter,"layers."+r.id+".filter",e)||c.deepEqual(r.filter,e)||(r.filter=c.clone(e),this._updateLayer(r))},e.prototype.getFilter=function(t){return c.clone(this.getLayer(t).filter)},e.prototype.setLayoutProperty=function(t,e,r){this._checkLoaded();var n=this.getLayer(t);if(!n)return void this.fire("error",{error:new Error("The layer '"+t+"' does not exist in the map's style and cannot be styled.")});c.deepEqual(n.getLayoutProperty(e),r)||(n.setLayoutProperty(e,r),this._updateLayer(n))},e.prototype.getLayoutProperty=function(t,e){return this.getLayer(t).getLayoutProperty(e)},e.prototype.setPaintProperty=function(t,e,r,n){this._checkLoaded();var i=this.getLayer(t);if(!i)return void this.fire("error",{error:new Error("The layer '"+t+"' does not exist in the map's style and cannot be styled.")});if(!c.deepEqual(i.getPaintProperty(e,n),r)){var o=i.isPaintValueFeatureConstant(e);i.setPaintProperty(e,r,n),!(r&&w.isFunctionDefinition(r)&&"$zoom"!==r.property&&void 0!==r.property)&&o||this._updateLayer(i),this.updateClasses(t,e)}},e.prototype.getPaintProperty=function(t,e,r){return this.getLayer(t).getPaintProperty(e,r)},e.prototype.getTransition=function(){return c.extend({duration:300,delay:0},this.stylesheet&&this.stylesheet.transition)},e.prototype.updateClasses=function(t,e){if(this._changed=!0,t){var r=this._updatedPaintProps;r[t]||(r[t]={}),r[t][e||"all"]=!0}else this._updatedAllPaintProps=!0},e.prototype.serialize=function(){var t=this;return c.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:c.mapObject(this.sourceCaches,function(t){return t.serialize()}),layers:this._order.map(function(e){return t._layers[e].serialize()})},function(t){return void 0!==t})},e.prototype._updateLayer=function(t){this._updatedLayers[t.id]=!0,t.source&&!this._updatedSources[t.source]&&(this._updatedSources[t.source]="reload",this.sourceCaches[t.source].pause()),this._changed=!0},e.prototype._flattenRenderedFeatures=function(t){for(var e=this,r=[],n=this._order.length-1;n>=0;n--)for(var i=e._order[n],o=0,a=t;o<a.length;o+=1){var s=a[o],l=s[i];if(l)for(var u=0,c=l;u<c.length;u+=1){var p=c[u];r.push(p)}}return r},e.prototype.queryRenderedFeatures=function(t,e,r,n){var i=this;e&&e.filter&&this._validate(v.filter,"queryRenderedFeatures.filter",e.filter);var o={};if(e&&e.layers){if(!Array.isArray(e.layers))return this.fire("error",{error:"parameters.layers must be an Array."}),[];for(var a=0,s=e.layers;a<s.length;a+=1){var l=s[a],u=i._layers[l];if(!u)return i.fire("error",{error:"The layer '"+l+"' does not exist in the map's style and cannot be queried for features."}),[];o[u.source]=!0}}var c=[];for(var p in i.sourceCaches)if(!e.layers||o[p]){var h=_.rendered(i.sourceCaches[p],i._layers,t,e,r,n);c.push(h)}return this._flattenRenderedFeatures(c)},e.prototype.querySourceFeatures=function(t,e){e&&e.filter&&this._validate(v.filter,"querySourceFeatures.filter",e.filter);var r=this.sourceCaches[t];return r?_.source(r,e):[]},e.prototype.addSourceType=function(t,e,r){return y(t)?r(new Error('A source type called "'+t+'" already exists.')):(g(t,e),e.workerSourceURL?void this.dispatcher.broadcast("loadWorkerSource",{name:t,url:e.workerSourceURL},r):r(null,null))},e.prototype.getLight=function(){return this.light.getLight()},e.prototype.setLight=function(t,e){this._checkLoaded();var r=this.light.getLight(),n=!1;for(var i in t)if(!c.deepEqual(t[i],r[i])){n=!0;break}if(n){var o=this.stylesheet.transition||{};this.light.setLight(t),this.light.updateLightTransitions(e||{transition:!0},o,this.animationLoop)}},e.prototype._validate=function(t,e,r,n,i){return(!i||!1!==i.validate)&&v.emitErrors(this,t.call(v,c.extend({key:e,style:this.serialize(),value:r,styleSpec:b},n)))},e.prototype._remove=function(){var t=this;A.evented.off("pluginAvailable",this._rtlTextPluginCallback);for(var e in t.sourceCaches)t.sourceCaches[e].clearTiles();this.dispatcher.remove()},e.prototype._clearSource=function(t){this.sourceCaches[t].clearTiles()},e.prototype._reloadSource=function(t){this.sourceCaches[t].resume(),this.sourceCaches[t].reload()},e.prototype._updateSources=function(t){var e=this;for(var r in e.sourceCaches)e.sourceCaches[r].update(t)},e.prototype._redoPlacement=function(){var t=this;for(var e in t.sourceCaches)t.sourceCaches[e].redoPlacement()},e.prototype.getImages=function(t,e,r){this.imageManager.getImages(e.icons,r)},e.prototype.getGlyphs=function(t,e,r){this.glyphManager.getGlyphs(e.stacks,r)},e}(n);e.exports=k},{"../render/glyph_manager":75,"../render/image_manager":77,"../render/line_atlas":78,"../source/query_features":94,"../source/rtl_text_plugin":96,"../source/source":97,"../source/source_cache":98,"../style-spec/deref":107,"../style-spec/diff":108,"../style-spec/function":112,"../style-spec/reference/latest":123,"../util/ajax":201,"../util/browser":202,"../util/dispatcher":208,"../util/evented":210,"../util/global_worker_pool":212,"../util/mapbox":217,"../util/util":223,"./animation_loop":150,"./light":151,"./load_sprite":153,"./style_layer":158,"./validate_style":166}],157:[function(t,e,r){"use strict";var n=t("../style-spec/function"),i=t("../util/util"),o=function(t,e){var r=this;if(this.value=i.clone(e),this.isFunction=n.isFunctionDefinition(e),this.json=JSON.stringify(this.value),this.minimum=t.minimum,this.function=n(this.value,t),this.isFeatureConstant=this.function.isFeatureConstant,this.isZoomConstant=this.function.isZoomConstant,this.isFeatureConstant||this.isZoomConstant){if(!this.isZoomConstant){this.stopZoomLevels=[];for(var o=0,a=r.value.stops;o<a.length;o+=1){var s=a[o];r.stopZoomLevels.indexOf(s[0])<0&&r.stopZoomLevels.push(s[0])}}}else{this.stopZoomLevels=[];for(var l=[],u=0,c=r.value.stops;u<c.length;u+=1){var p=c[u],h=p[0].zoom;r.stopZoomLevels.indexOf(h)<0&&(r.stopZoomLevels.push(h),l.push([h,l.length]))}this._functionInterpolationT=n({type:"exponential",stops:l,base:e.base},{type:"number"})}};o.prototype.calculate=function(t,e){var r=this.function(t&&t.zoom,e||{});return void 0!==this.minimum&&r<this.minimum?this.minimum:r},o.prototype.calculateInterpolationT=function(t){return this.isFeatureConstant||this.isZoomConstant?0:this._functionInterpolationT(t&&t.zoom,{})},e.exports=o},{"../style-spec/function":112,"../util/util":223}],158:[function(t,e,r){"use strict";function n(t){return t.value}var i=t("../util/util"),o=t("./style_transition"),a=t("./style_declaration"),s=t("../style-spec/reference/latest"),l=t("./validate_style"),u=t("./../style-spec/util/parse_color"),c=t("../util/evented"),p=function(t){function e(e){var r=this;t.call(this),this.id=e.id,this.metadata=e.metadata,this.type=e.type,this.minzoom=e.minzoom,this.maxzoom=e.maxzoom,"background"!==e.type&&(this.source=e.source,this.sourceLayer=e["source-layer"],this.filter=e.filter),this.paint={},this.layout={},this._paintSpecifications=s["paint_"+this.type],this._layoutSpecifications=s["layout_"+this.type],this._paintTransitions={},this._paintTransitionOptions={},this._paintDeclarations={},this._layoutDeclarations={},this._layoutFunctions={};var n,i,o={validate:!1};for(var a in e){var l=a.match(/^paint(?:\.(.*))?$/);if(l){var u=l[1]||"";for(n in e[a])r.setPaintProperty(n,e[a][n],u,o)}}for(i in e.layout)r.setLayoutProperty(i,e.layout[i],o);for(n in r._paintSpecifications)r.paint[n]=r.getPaintValue(n);for(i in r._layoutSpecifications)r._updateLayoutValue(i)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.setLayoutProperty=function(t,e,r){if(null==e)delete this._layoutDeclarations[t];else{var n="layers."+this.id+".layout."+t;if(this._validate(l.layoutProperty,n,t,e,r))return;this._layoutDeclarations[t]=new a(this._layoutSpecifications[t],e)}this._updateLayoutValue(t)},e.prototype.getLayoutProperty=function(t){return this._layoutDeclarations[t]&&this._layoutDeclarations[t].value},e.prototype.getLayoutValue=function(t,e,r){var n=this._layoutSpecifications[t],i=this._layoutDeclarations[t];return i?i.calculate(e,r):n.default},e.prototype.setPaintProperty=function(t,e,r,n){var o="layers."+this.id+(r?'["paint.'+r+'"].':".paint.")+t;if(i.endsWith(t,"-transition"))if(this._paintTransitionOptions[r||""]||(this._paintTransitionOptions[r||""]={}),null===e||void 0===e)delete this._paintTransitionOptions[r||""][t];else{if(this._validate(l.paintProperty,o,t,e,n))return;this._paintTransitionOptions[r||""][t]=e}else if(this._paintDeclarations[r||""]||(this._paintDeclarations[r||""]={}),null===e||void 0===e)delete this._paintDeclarations[r||""][t];else{if(this._validate(l.paintProperty,o,t,e,n))return;this._paintDeclarations[r||""][t]=new a(this._paintSpecifications[t],e)}},e.prototype.getPaintProperty=function(t,e){return e=e||"",i.endsWith(t,"-transition")?this._paintTransitionOptions[e]&&this._paintTransitionOptions[e][t]:this._paintDeclarations[e]&&this._paintDeclarations[e][t]&&this._paintDeclarations[e][t].value},e.prototype.getPaintValue=function(t,e,r){var n=this._paintSpecifications[t],i=this._paintTransitions[t];return i?i.calculate(e,r):"color"===n.type&&n.default?u(n.default):n.default},e.prototype.getPaintValueStopZoomLevels=function(t){var e=this._paintTransitions[t];return e?e.declaration.stopZoomLevels:[]},e.prototype.getLayoutValueStopZoomLevels=function(t){var e=this._layoutDeclarations[t];return e?e.stopZoomLevels:[]},e.prototype.getPaintInterpolationT=function(t,e){return this._paintTransitions[t].declaration.calculateInterpolationT(e)},e.prototype.getLayoutInterpolationT=function(t,e){return this._layoutDeclarations[t].calculateInterpolationT(e)},e.prototype.isPaintValueFeatureConstant=function(t){var e=this._paintTransitions[t];return!e||e.declaration.isFeatureConstant},e.prototype.isLayoutValueFeatureConstant=function(t){var e=this._layoutDeclarations[t];return!e||e.isFeatureConstant},e.prototype.isPaintValueZoomConstant=function(t){var e=this._paintTransitions[t];return!e||e.declaration.isZoomConstant},e.prototype.isLayoutValueZoomConstant=function(t){var e=this._layoutDeclarations[t];return!e||e.isZoomConstant},e.prototype.isHidden=function(t){return!!(this.minzoom&&t<this.minzoom)||!!(this.maxzoom&&t>=this.maxzoom)||"none"===this.layout.visibility},e.prototype.updatePaintTransitions=function(t,e,r,n,o){for(var a=this,s=i.extend({},this._paintDeclarations[""]),l=0;l<t.length;l++)i.extend(s,a._paintDeclarations[t[l]]);var u;for(u in s)a._applyPaintDeclaration(u,s[u],e,r,n,o);for(u in a._paintTransitions)u in s||a._applyPaintDeclaration(u,null,e,r,n,o)},e.prototype.updatePaintTransition=function(t,e,r,n,i,o){for(var a=this,s=this._paintDeclarations[""][t],l=0;l<e.length;l++){var u=a._paintDeclarations[e[l]];u&&u[t]&&(s=u[t])}this._applyPaintDeclaration(t,s,r,n,i,o)},e.prototype.recalculate=function(t){var e=this;for(var r in e._paintTransitions)e.paint[r]=e.getPaintValue(r,{zoom:t});for(var n in e._layoutFunctions)e.layout[n]=e.getLayoutValue(n,{zoom:t})},e.prototype.serialize=function(){var t=this,e={id:this.id,type:this.type,source:this.source,"source-layer":this.sourceLayer,metadata:this.metadata,minzoom:this.minzoom,maxzoom:this.maxzoom,filter:this.filter,layout:i.mapObject(this._layoutDeclarations,n)};for(var r in t._paintDeclarations)e[""===r?"paint":"paint."+r]=i.mapObject(t._paintDeclarations[r],n);return i.filterObject(e,function(t,e){return void 0!==t&&!("layout"===e&&!Object.keys(t).length)})},e.prototype._applyPaintDeclaration=function(t,e,r,n,s,l){var u=r.transition?this._paintTransitions[t]:void 0,c=this._paintSpecifications[t];if(null!==e&&void 0!==e||(e=new a(c,c.default)),!u||u.declaration.json!==e.json){var p=i.extend({duration:300,delay:0},n,this.getPaintProperty(t+"-transition")),h=this._paintTransitions[t]=new o(c,e,u,p,l);h.instant()||(h.loopID=s.set(h.endTime-Date.now())),u&&s.cancel(u.loopID)}},e.prototype._updateLayoutValue=function(t){var e=this._layoutDeclarations[t];e&&e.isFunction?this._layoutFunctions[t]=!0:(delete this._layoutFunctions[t],this.layout[t]=this.getLayoutValue(t))},e.prototype._validate=function(t,e,r,n,i){return(!i||!1!==i.validate)&&l.emitErrors(this,t.call(l,{key:e,layerType:this.type,objectKey:r,value:n,styleSpec:s,style:{glyphs:!0,sprite:!0}}))},e.prototype.has3DPass=function(){return!1},e}(c);e.exports=p;var h={circle:t("./style_layer/circle_style_layer"),fill:t("./style_layer/fill_style_layer"),"fill-extrusion":t("./style_layer/fill_extrusion_style_layer"),line:t("./style_layer/line_style_layer"),symbol:t("./style_layer/symbol_style_layer"),background:p,raster:p};p.create=function(t){return new h[t.type](t)}},{"../style-spec/reference/latest":123,"../util/evented":210,"../util/util":223,"./../style-spec/util/parse_color":128,"./style_declaration":157,"./style_layer/circle_style_layer":159,"./style_layer/fill_extrusion_style_layer":160,"./style_layer/fill_style_layer":161,"./style_layer/line_style_layer":162,"./style_layer/symbol_style_layer":163,"./style_transition":165,"./validate_style":166}],159:[function(t,e,r){"use strict";var n=t("../style_layer"),i=t("../../data/bucket/circle_bucket"),o=t("../../util/intersection_tests"),a=o.multiPolygonIntersectsBufferedMultiPoint,s=t("../query_utils"),l=s.getMaximumPaintValue,u=s.translateDistance,c=s.translate,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.prototype.createBucket=function(t){return new i(t)},e.prototype.queryRadius=function(t){return l("circle-radius",this,t)+u(this.paint["circle-translate"])},e.prototype.queryIntersectsFeature=function(t,e,r,n,i,o){var s=c(t,this.getPaintValue("circle-translate",{zoom:n},e.properties),this.getPaintValue("circle-translate-anchor",{zoom:n},e.properties),i,o),l=this.getPaintValue("circle-radius",{zoom:n},e.properties)*o;return a(s,r,l)},e}(n);e.exports=p},{"../../data/bucket/circle_bucket":43,"../../util/intersection_tests":214,"../query_utils":155,"../style_layer":158}],160:[function(t,e,r){"use strict";var n=t("../style_layer"),i=t("../../data/bucket/fill_extrusion_bucket"),o=t("../../util/intersection_tests"),a=o.multiPolygonIntersectsMultiPolygon,s=t("../query_utils"),l=s.translateDistance,u=s.translate,c=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.prototype.getPaintValue=function(e,r,n){var i=t.prototype.getPaintValue.call(this,e,r,n);return"fill-extrusion-color"===e&&i&&(i[3]=1),i},e.prototype.createBucket=function(t){return new i(t)},e.prototype.queryRadius=function(){return l(this.paint["fill-extrusion-translate"])},e.prototype.queryIntersectsFeature=function(t,e,r,n,i,o){var s=u(t,this.getPaintValue("fill-extrusion-translate",{zoom:n},e.properties),this.getPaintValue("fill-extrusion-translate-anchor",{zoom:n},e.properties),i,o);return a(s,r)},e.prototype.has3DPass=function(){return 0!==this.paint["fill-extrusion-opacity"]&&"none"!==this.layout.visibility},e}(n);e.exports=c},{"../../data/bucket/fill_extrusion_bucket":45,"../../util/intersection_tests":214,"../query_utils":155,"../style_layer":158}],161:[function(t,e,r){"use strict";var n=t("../style_layer"),i=t("../../data/bucket/fill_bucket"),o=t("../../util/intersection_tests"),a=o.multiPolygonIntersectsMultiPolygon,s=t("../query_utils"),l=s.translateDistance,u=s.translate,c=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.prototype.getPaintValue=function(e,r,n){var i=this;if("fill-outline-color"===e){if(void 0===this.getPaintProperty("fill-outline-color"))return t.prototype.getPaintValue.call(this,"fill-color",r,n);for(var o=this._paintTransitions["fill-outline-color"];o;){if(!(o&&o.declaration&&o.declaration.value))return t.prototype.getPaintValue.call(i,"fill-color",r,n);o=o.oldTransition}}return t.prototype.getPaintValue.call(this,e,r,n)},e.prototype.getPaintValueStopZoomLevels=function(e){return"fill-outline-color"===e&&void 0===this.getPaintProperty("fill-outline-color")?t.prototype.getPaintValueStopZoomLevels.call(this,"fill-color"):t.prototype.getPaintValueStopZoomLevels.call(this,e)},e.prototype.getPaintInterpolationT=function(e,r){return"fill-outline-color"===e&&void 0===this.getPaintProperty("fill-outline-color")?t.prototype.getPaintInterpolationT.call(this,"fill-color",r):t.prototype.getPaintInterpolationT.call(this,e,r)},e.prototype.isPaintValueFeatureConstant=function(e){return"fill-outline-color"===e&&void 0===this.getPaintProperty("fill-outline-color")?t.prototype.isPaintValueFeatureConstant.call(this,"fill-color"):t.prototype.isPaintValueFeatureConstant.call(this,e)},e.prototype.isPaintValueZoomConstant=function(e){return"fill-outline-color"===e&&void 0===this.getPaintProperty("fill-outline-color")?t.prototype.isPaintValueZoomConstant.call(this,"fill-color"):t.prototype.isPaintValueZoomConstant.call(this,e)},e.prototype.createBucket=function(t){return new i(t)},e.prototype.queryRadius=function(){return l(this.paint["fill-translate"])},e.prototype.queryIntersectsFeature=function(t,e,r,n,i,o){var s=u(t,this.getPaintValue("fill-translate",{zoom:n},e.properties),this.getPaintValue("fill-translate-anchor",{zoom:n},e.properties),i,o);return a(s,r)},e}(n);e.exports=c},{"../../data/bucket/fill_bucket":44,"../../util/intersection_tests":214,"../query_utils":155,"../style_layer":158}],162:[function(t,e,r){"use strict";function n(t,e){return e>0?e+2*t:t}function i(t,e){for(var r=[],n=new o(0,0),i=0;i<t.length;i++){for(var a=t[i],s=[],l=0;l<a.length;l++){var u=a[l-1],c=a[l],p=a[l+1],h=0===l?n:c.sub(u)._unit()._perp(),f=l===a.length-1?n:p.sub(c)._unit()._perp(),d=h._add(f)._unit(),m=d.x*f.x+d.y*f.y;d._mult(1/m),s.push(d._mult(e)._add(c))}r.push(s)}return r}var o=t("@mapbox/point-geometry"),a=t("../style_layer"),s=t("../../data/bucket/line_bucket"),l=t("../../util/intersection_tests"),u=l.multiPolygonIntersectsBufferedMultiLine,c=t("../query_utils"),p=c.getMaximumPaintValue,h=c.translateDistance,f=c.translate,d=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.prototype.createBucket=function(t){return new s(t)},e.prototype.queryRadius=function(t){var e=t,r=n(p("line-width",this,e),p("line-gap-width",this,e)),i=p("line-offset",this,e);return r/2+Math.abs(i)+h(this.paint["line-translate"])},e.prototype.queryIntersectsFeature=function(t,e,r,o,a,s){var l=f(t,this.getPaintValue("line-translate",{zoom:o},e.properties),this.getPaintValue("line-translate-anchor",{zoom:o},e.properties),a,s),c=s/2*n(this.getPaintValue("line-width",{zoom:o},e.properties),this.getPaintValue("line-gap-width",{zoom:o},e.properties)),p=this.getPaintValue("line-offset",{zoom:o},e.properties);return p&&(r=i(r,p*s)),u(l,r,c)},e}(a);e.exports=d},{"../../data/bucket/line_bucket":46,"../../util/intersection_tests":214,"../query_utils":155,"../style_layer":158,"@mapbox/point-geometry":2}],163:[function(t,e,r){"use strict";var n=t("../style_layer"),i=t("../../data/bucket/symbol_bucket"),o=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.prototype.getLayoutValue=function(e,r,n){var i=t.prototype.getLayoutValue.call(this,e,r,n);if("auto"!==i)return i;switch(e){case"text-rotation-alignment":case"icon-rotation-alignment":return"line"===this.getLayoutValue("symbol-placement",r,n)?"map":"viewport";case"text-pitch-alignment":return this.getLayoutValue("text-rotation-alignment",r,n);case"icon-pitch-alignment":return this.getLayoutValue("icon-rotation-alignment",r,n);default:return i}},e.prototype.createBucket=function(t){return new i(t)},e.prototype.queryRadius=function(){return 0},e.prototype.queryIntersectsFeature=function(){return!1},e}(n);e.exports=o},{"../../data/bucket/symbol_bucket":47,"../style_layer":158}],164:[function(t,e,r){"use strict";var n=t("./style_layer"),i=t("../util/util"),o=t("../style-spec/feature_filter"),a=t("../style-spec/group_by_layout"),s=function(t){t&&this.replace(t)};s.prototype.replace=function(t){var e=this;this.symbolOrder=[];for(var r=0,n=t;r<n.length;r+=1){var i=n[r];"symbol"===i.type&&e.symbolOrder.push(i.id)}this._layerConfigs={},this._layers={},this.update(t,[])},s.prototype.update=function(t,e,r){for(var s=this,l=0,u=t;l<u.length;l+=1){var c=u[l];s._layerConfigs[c.id]=c;var p=s._layers[c.id]=n.create(c);p.updatePaintTransitions({},{transition:!1}),p.filter=o(p.filter)}for(var h=0,f=e;h<f.length;h+=1){var d=f[h];delete s._layerConfigs[d],delete s._layers[d]}r&&(this.symbolOrder=r),this.familiesBySource={};for(var m=a(i.values(this._layerConfigs)),v=0,y=m;v<y.length;v+=1){var g=y[v],_=g.map(function(t){return s._layers[t.id]}),x=_[0];if(!x.layout||"none"!==x.layout.visibility){var b=x.source||"",w=s.familiesBySource[b];w||(w=s.familiesBySource[b]={});var T=x.sourceLayer||"_geojsonTileLayer",S=w[T];S||(S=w[T]=[]),S.push(_)}}},e.exports=s},{"../style-spec/feature_filter":110,"../style-spec/group_by_layout":113,"../util/util":223,"./style_layer":158}],165:[function(t,e,r){"use strict";function n(t,e,r){if(void 0!==t&&void 0!==e)return{from:t.to,fromScale:t.toScale,to:e.to,toScale:e.toScale,t:r}}var i=t("../util/util"),o=t("../style-spec/util/interpolate"),a={lastIntegerZoom:0,lastIntegerZoomTime:0,lastZoom:0},s=function(t,e,r,i,s){this.declaration=e,this.startTime=this.endTime=(new Date).getTime(),this.oldTransition=r,this.duration=i.duration||0,this.delay=i.delay||0,this.zoomTransitioned="piecewise-constant"===t.function&&t.transition,this.interp=this.zoomTransitioned?n:o[t.type],this.zoomHistory=s||a,this.instant()||(this.endTime=this.startTime+this.duration+this.delay),r&&r.endTime<=this.startTime&&delete r.oldTransition};s.prototype.instant=function(){return!this.oldTransition||!this.interp||0===this.duration&&0===this.delay},s.prototype.calculate=function(t,e,r){var n=this._calculateTargetValue(t,e);if(this.instant())return n;if((r=r||Date.now())>=this.endTime)return n;var o=this.oldTransition.calculate(t,e,this.startTime),a=i.easeCubicInOut((r-this.startTime-this.delay)/this.duration);return this.interp(o,n,a)},s.prototype._calculateTargetValue=function(t,e){if(!this.zoomTransitioned)return this.declaration.calculate(t,e);var r=t.zoom,n=this.zoomHistory.lastIntegerZoom,i=r>n?2:.5,a=this.declaration.calculate({zoom:r>n?r-1:r+1},e),s=this.declaration.calculate({zoom:r},e),l=Math.min((Date.now()-this.zoomHistory.lastIntegerZoomTime)/this.duration,1),u=Math.abs(r-n),c=o(l,1,u);return void 0!==a&&void 0!==s?{from:a,fromScale:i,to:s,toScale:1,t:c}:void 0},e.exports=s},{"../style-spec/util/interpolate":127,"../util/util":223}],166:[function(t,e,r){"use strict";e.exports=t("../style-spec/validate_style.min"),e.exports.emitErrors=function(t,e){if(e&&e.length){for(var r=0,n=e;r<n.length;r+=1){var i=n[r],o=i.message;t.fire("error",{error:new Error(o)})}return!0}return!1}},{"../style-spec/validate_style.min":149}],167:[function(t,e,r){"use strict";var n=t("@mapbox/point-geometry"),i=function(t){function e(e,r,n,i){t.call(this,e,r),this.angle=n,void 0!==i&&(this.segment=i)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.clone=function(){return new e(this.x,this.y,this.angle,this.segment)},e}(n);e.exports=i},{"@mapbox/point-geometry":2}],168:[function(t,e,r){"use strict";function n(t,e,r,n,i){if(void 0===e.segment)return!0;for(var o=e,a=e.segment+1,s=0;s>-r/2;){if(--a<0)return!1;s-=t[a].dist(o),o=t[a]}s+=t[a].dist(t[a+1]),a++;for(var l=[],u=0;s<r/2;){var c=t[a-1],p=t[a],h=t[a+1];if(!h)return!1;var f=c.angleTo(p)-p.angleTo(h);for(f=Math.abs((f+3*Math.PI)%(2*Math.PI)-Math.PI),l.push({distance:s,angleDelta:f}),u+=f;s-l[0].distance>n;)u-=l.shift().angleDelta;if(u>i)return!1;a++,s+=p.dist(h)}return!0}e.exports=n},{}],169:[function(t,e,r){"use strict";function n(t,e,r,n,o){for(var a=[],s=0;s<t.length;s++)for(var l=t[s],u=void 0,c=0;c<l.length-1;c++){var p=l[c],h=l[c+1];p.x<e&&h.x<e||(p.x<e?p=new i(e,p.y+(h.y-p.y)*((e-p.x)/(h.x-p.x)))._round():h.x<e&&(h=new i(e,p.y+(h.y-p.y)*((e-p.x)/(h.x-p.x)))._round()),p.y<r&&h.y<r||(p.y<r?p=new i(p.x+(h.x-p.x)*((r-p.y)/(h.y-p.y)),r)._round():h.y<r&&(h=new i(p.x+(h.x-p.x)*((r-p.y)/(h.y-p.y)),r)._round()),p.x>=n&&h.x>=n||(p.x>=n?p=new i(n,p.y+(h.y-p.y)*((n-p.x)/(h.x-p.x)))._round():h.x>=n&&(h=new i(n,p.y+(h.y-p.y)*((n-p.x)/(h.x-p.x)))._round()),p.y>=o&&h.y>=o||(p.y>=o?p=new i(p.x+(h.x-p.x)*((o-p.y)/(h.y-p.y)),o)._round():h.y>=o&&(h=new i(p.x+(h.x-p.x)*((o-p.y)/(h.y-p.y)),o)._round()),u&&p.equals(u[u.length-1])||(u=[p],a.push(u)),u.push(h)))))}return a}var i=t("@mapbox/point-geometry");e.exports=n},{"@mapbox/point-geometry":2}],170:[function(t,e,r){"use strict";var n=t("../util/struct_array"),i=t("@mapbox/point-geometry"),o=n({members:[{type:"Int16",name:"anchorPointX"},{type:"Int16",name:"anchorPointY"},{type:"Int16",name:"offsetX"},{type:"Int16",name:"offsetY"},{type:"Int16",name:"x1"},{type:"Int16",name:"y1"},{type:"Int16",name:"x2"},{type:"Int16",name:"y2"},{type:"Float32",name:"unadjustedMaxScale"},{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(o.prototype.StructType.prototype,"anchorPoint",{get:function(){return new i(this.anchorPointX,this.anchorPointY)}}),e.exports=o},{"../util/struct_array":220,"@mapbox/point-geometry":2}],171:[function(t,e,r){"use strict";var n=function(t,e,r,n,i,o,a,s,l,u,c){var p=a.top*s-l,h=a.bottom*s+l,f=a.left*s-l,d=a.right*s+l;if(this.boxStartIndex=t.length,u){var m=h-p,v=d-f;if(m>0)if(m=Math.max(10*s,m),c){var y=e[r.segment+1].sub(e[r.segment])._unit()._mult(v),g=[r.sub(y),r.add(y)];this._addLineCollisionBoxes(t,g,r,0,v,m,n,i,o)}else this._addLineCollisionBoxes(t,e,r,r.segment,v,m,n,i,o)}else t.emplaceBack(r.x,r.y,0,0,f,p,d,h,1/0,1/0,n,i,o,0,0,0,0,0);this.boxEndIndex=t.length};n.prototype._addLineCollisionBoxes=function(t,e,r,n,i,o,a,s,l){var u=o/2,c=Math.floor(i/u),p=Math.floor(c/2),h=-o/2,f=r,d=n+1,m=h,v=-i/2,y=v-i/8;do{if(--d<0){if(m>v)return;d=0;break}m-=e[d].dist(f),f=e[d]}while(m>y);for(var g=e[d].dist(e[d+1]),_=-p;_<c+p;_++){var x=_*u,b=v+x;if(x<0&&(b+=x),x>i&&(b+=x-i),!(b<m)){for(;m+g<b;){if(m+=g,++d+1>=e.length)return;g=e[d].dist(e[d+1])}var w=b-m,T=e[d],S=e[d+1],z=S.sub(T)._unit()._mult(w)._add(T)._round(),A=Math.max(Math.abs(b-h)-u/2,0),C=i/2/A;(_<0||_>=c)&&(C=Math.min(C,.99)),t.emplaceBack(z.x,z.y,z.x-r.x,z.y-r.y,-o/2,-o/2,o/2,o/2,C,C,a,s,l,0,0,0,0,0)}}},e.exports=n},{}],172:[function(t,e,r){"use strict";var n=t("@mapbox/point-geometry"),i=t("../data/extent"),o=t("grid-index"),a=t("../util/intersection_tests"),s=function(t,e,r,n,a,s,l){void 0===s&&(s=new o(i,12,6)),void 0===l&&(l=new o(i,12,0)),this.angle=t,this.pitch=e,this.cameraToCenterDistance=r,this.cameraToTileDistance=n,this.grid=s,this.ignoredGrid=l,this.perspectiveRatio=1+.5*(n/r-1),this.minScale=.5/this.perspectiveRatio,this.maxScale=2/this.perspectiveRatio;var u=Math.sin(this.angle),c=Math.cos(this.angle);this.rotationMatrix=[c,-u,u,c],this.reverseRotationMatrix=[c,u,-u,c],this.yStretch=Math.max(1,n/(r*Math.cos(e/180*Math.PI))),this.collisionBoxArray=a,0===a.length&&(a.emplaceBack(),a.emplaceBack(0,0,0,0,0,-i,0,i,1/0,1/0,0,0,0,0,0,0,0,0,0),a.emplaceBack(i,0,0,0,0,-i,0,i,1/0,1/0,0,0,0,0,0,0,0,0,0),a.emplaceBack(0,0,0,0,-i,0,i,0,1/0,1/0,0,0,0,0,0,0,0,0,0),a.emplaceBack(0,i,0,0,-i,0,i,0,1/0,1/0,0,0,0,0,0,0,0,0,0)),this.tempCollisionBox=a.get(0),this.edges=[a.get(1),a.get(2),a.get(3),a.get(4)]};s.deserialize=function(t,e){return new s(t.angle,t.pitch,t.cameraToCenterDistance,t.cameraToTileDistance,e,new o(t.grid),new o(t.ignoredGrid))},s.prototype.serialize=function(t){var e=this.grid.toArrayBuffer(),r=this.ignoredGrid.toArrayBuffer();return t&&(t.push(e),t.push(r)),{angle:this.angle,pitch:this.pitch,cameraToCenterDistance:this.cameraToCenterDistance,cameraToTileDistance:this.cameraToTileDistance,grid:e,ignoredGrid:r}},s.prototype.placeCollisionFeature=function(t,e,r){for(var i=this,o=this.collisionBoxArray,a=this.minScale,s=this.rotationMatrix,l=this.yStretch,u=t.boxStartIndex;u<t.boxEndIndex;u++){var c=o.get(u),p=c.anchorPoint._matMult(s),h=p.x,f=p.y,d=h+c.x1*i.perspectiveRatio,m=f+c.y1*l*i.perspectiveRatio,v=h+c.x2*i.perspectiveRatio,y=f+c.y2*l*i.perspectiveRatio;c.bbox0=d,c.bbox1=m,c.bbox2=v,c.bbox3=y;var g=new n(c.offsetX,c.offsetY)._matMult(s),_=g.x*g.x,x=g.y*g.y,b=x*l*l,w=Math.sqrt((_+b)/(_+x))||1;if(c.maxScale=c.unadjustedMaxScale*w,!e)for(var T=i.grid.query(d,m,v,y),S=0;S<T.length;S++){var z=o.get(T[S]),A=z.anchorPoint._matMult(s);if((a=i.getPlacementScale(a,p,c,A,z))>=i.maxScale)return a}if(r){var C=void 0;if(i.angle){var E=i.reverseRotationMatrix,k=new n(c.x1,c.y1).matMult(E),M=new n(c.x2,c.y1).matMult(E),L=new n(c.x1,c.y2).matMult(E),I=new n(c.x2,c.y2).matMult(E);C=i.tempCollisionBox,C.anchorPointX=c.anchorPoint.x,C.anchorPointY=c.anchorPoint.y,C.x1=Math.min(k.x,M.x,L.x,I.x),C.y1=Math.min(k.y,M.x,L.x,I.x),C.x2=Math.max(k.x,M.x,L.x,I.x),C.y2=Math.max(k.y,M.x,L.x,I.x),C.maxScale=c.maxScale}else C=c;for(var P=0;P<this.edges.length;P++){var R=i.edges[P];if((a=i.getPlacementScale(a,c.anchorPoint,C,R.anchorPoint,R))>=i.maxScale)return a}}}return a},s.prototype.queryRenderedSymbols=function(t,e){var r={},i=[];if(0===t.length||0===this.grid.keys.length&&0===this.ignoredGrid.keys.length)return i;for(var o=this.collisionBoxArray,s=this.rotationMatrix,l=this.yStretch,u=[],c=1/0,p=1/0,h=-1/0,f=-1/0,d=0;d<t.length;d++)for(var m=t[d],v=0;v<m.length;v++){var y=m[v].matMult(s);c=Math.min(c,y.x),p=Math.min(p,y.y),h=Math.max(h,y.x),f=Math.max(f,y.y),u.push(y)}for(var g=this.grid.query(c,p,h,f),_=this.ignoredGrid.query(c,p,h,f),x=0;x<_.length;x++)g.push(_[x]);for(var b=e/this.perspectiveRatio,w=Math.pow(2,Math.ceil(Math.log(b)/Math.LN2*10)/10),T=0;T<g.length;T++){var S=o.get(g[T]),z=S.sourceLayerIndex,A=S.featureIndex;if(void 0===r[z]&&(r[z]={}),!r[z][A]&&!(w<S.placementScale||w>S.maxScale)){var C=S.anchorPoint.matMult(s),E=C.x+S.x1/b,k=C.y+S.y1/b*l,M=C.x+S.x2/b,L=C.y+S.y2/b*l,I=[new n(E,k),new n(M,k),new n(M,L),new n(E,L)];a.polygonIntersectsPolygon(u,I)&&(r[z][A]=!0,i.push(g[T]))}}return i},s.prototype.getPlacementScale=function(t,e,r,n,i){var o=e.x-n.x,a=e.y-n.y,s=(i.x1-r.x2)/o,l=(i.x2-r.x1)/o,u=(i.y1-r.y2)*this.yStretch/a,c=(i.y2-r.y1)*this.yStretch/a;(isNaN(s)||isNaN(l))&&(s=l=1),(isNaN(u)||isNaN(c))&&(u=c=1);var p=Math.min(Math.max(s,l),Math.max(u,c)),h=i.maxScale,f=r.maxScale;return p>h&&(p=h),p>f&&(p=f),p>t&&p>=i.placementScale&&(t=p),t},s.prototype.insertCollisionFeature=function(t,e,r){for(var n=this,i=r?this.ignoredGrid:this.grid,o=this.collisionBoxArray,a=t.boxStartIndex;a<t.boxEndIndex;a++){var s=o.get(a);s.placementScale=e,e<n.maxScale&&(1===n.perspectiveRatio||s.maxScale>=1)&&i.insert(a,s.bbox0,s.bbox1,s.bbox2,s.bbox3)}},e.exports=s},{"../data/extent":48,"../util/intersection_tests":214,"@mapbox/point-geometry":2,"grid-index":22}],173:[function(t,e,r){"use strict";function n(t,e,r,n,o,a,s,l,u){var c=n?.6*a*s:0,p=Math.max(n?n.right-n.left:0,o?o.right-o.left:0),h=0===t[0].x||t[0].x===u||0===t[0].y||t[0].y===u;e-p*s<e/4&&(e=p*s+e/4);var f=2*a;return i(t,h?e/2*l%e:(p/2+f)*s*l%e,e,c,r,p*s,h,!1,u)}function i(t,e,r,n,l,u,c,p,h){for(var f=u/2,d=0,m=0;m<t.length-1;m++)d+=t[m].dist(t[m+1]);for(var v=0,y=e-r,g=[],_=0;_<t.length-1;_++){for(var x=t[_],b=t[_+1],w=x.dist(b),T=b.angleTo(x);y+r<v+w;){y+=r;var S=(y-v)/w,z=o(x.x,b.x,S),A=o(x.y,b.y,S);if(z>=0&&z<h&&A>=0&&A<h&&y-f>=0&&y+f<=d){var C=new a(z,A,T,_);C._round(),n&&!s(t,C,u,n,l)||g.push(C)}}v+=w}return p||g.length||c||(g=i(t,v/2,r,n,l,u,c,!0,h)),g}var o=t("../style-spec/util/interpolate"),a=t("../symbol/anchor"),s=t("./check_max_angle");e.exports=n},{"../style-spec/util/interpolate":127,"../symbol/anchor":167,"./check_max_angle":168}],174:[function(t,e,r){"use strict";e.exports=function(t){function e(e){s.push(t[e]),l++}function r(t,e,r){var n=a[t];return delete a[t],a[e]=n,s[n].geometry[0].pop(),s[n].geometry[0]=s[n].geometry[0].concat(r[0]),n}function n(t,e,r){var n=o[e];return delete o[e],o[t]=n,s[n].geometry[0].shift(),s[n].geometry[0]=r[0].concat(s[n].geometry[0]),n}function i(t,e,r){var n=r?e[0][e[0].length-1]:e[0][0];return t+":"+n.x+":"+n.y}for(var o={},a={},s=[],l=0,u=0;u<t.length;u++){var c=t[u],p=c.geometry,h=c.text;if(h){var f=i(h,p),d=i(h,p,!0);if(f in a&&d in o&&a[f]!==o[d]){var m=n(f,d,p),v=r(f,d,s[m].geometry);delete o[f],delete a[d],a[i(h,s[v].geometry,!0)]=v,s[m].geometry=null}else f in a?r(f,d,p):d in o?n(f,d,p):(e(u),o[f]=l-1,a[d]=l-1)}else e(u)}return s.filter(function(t){return t.geometry})}},{}],175:[function(t,e,r){"use strict";function n(t,e,r,n,i){var o=d.identity(new Float32Array(16));return e?(d.identity(o),d.scale(o,o,[1/i,1/i,1]),r||d.rotateZ(o,o,n.angle)):(d.scale(o,o,[n.width/2,-n.height/2,1]),d.translate(o,o,[1,-1,0]),d.multiply(o,o,t)),o}function i(t,e,r,n,i){var o=d.identity(new Float32Array(16));return e?(d.multiply(o,o,t),d.scale(o,o,[i,i,1]),r||d.rotateZ(o,o,-n.angle)):(d.scale(o,o,[1,-1,1]),d.translate(o,o,[-1,-1,0]),d.scale(o,o,[2/n.width,2/n.height,1])),o}function o(t,e){var r=[t.x,t.y,0,1];m.transformMat4(r,r,e);var n=r[3];return{point:new h(r[0]/n,r[1]/n),signedDistanceFromCamera:n}}function a(t,e,r,n){var i=t[0]/t[3],o=t[1]/t[3];return i>=-r[0]&&i<=r[0]&&o>=-r[1]&&o<=r[1]&&n.frameHistory.isVisible(e)}function s(t,e,r,n,i,s,u,c,f,d){var y=n?t.textSizeData:t.iconSizeData,g=v.evaluateSizeForZoom(y,r.transform,d,n),_=[256/r.width*2+1,256/r.height*2+1],x=n?t.text.dynamicLayoutVertexArray:t.icon.dynamicLayoutVertexArray;x.clear();for(var b=t.lineVertexArray,w=n?t.placedGlyphArray:t.placedIconArray,T=0;T<w.length;T++){var S=w.get(T),z=[S.anchorX,S.anchorY,0,1];if(m.transformMat4(z,z,e),a(z,S.placementZoom,_,r)){var A=z[3],C=1+.5*(A/r.transform.cameraToCenterDistance-1),E=v.evaluateSizeForFeature(y,g,S),k=u?E*C:E/C,M=new h(S.anchorX,S.anchorY),L=o(M,i).point,I={},P=l(S,k,!1,c,e,i,s,t.glyphOffsetArray,b,x,L,M,I);(P.notEnoughRoom||P.needsFlipping&&l(S,k,!0,c,e,i,s,t.glyphOffsetArray,b,x,L,M,I).notEnoughRoom)&&p(S.numGlyphs,x)}else p(S.numGlyphs,x)}n?t.text.dynamicLayoutVertexBuffer.updateData(x.serialize()):t.icon.dynamicLayoutVertexBuffer.updateData(x.serialize())}function l(t,e,r,n,i,a,s,l,p,f,d,m,v){var y,_=e/24,x=t.lineOffsetX*e,b=t.lineOffsetY*e;if(t.numGlyphs>1){var w=t.glyphStartIndex+t.numGlyphs,T=l.get(t.glyphStartIndex).offsetX,S=l.get(w-1).offsetX,z=t.lineStartIndex,A=t.lineStartIndex+t.lineLength,C=c(_*T,x,b,r,d,m,t.segment,z,A,p,a,v);if(!C)return{notEnoughRoom:!0};var E=c(_*S,x,b,r,d,m,t.segment,z,A,p,a,v);if(!E)return{notEnoughRoom:!0};var k=o(C.point,s).point,M=o(E.point,s).point;if(n&&!r&&(t.vertical?k.y<M.y:k.x>M.x))return{needsFlipping:!0};y=[C];for(var L=t.glyphStartIndex+1;L<w-1;L++){var I=l.get(L);y.push(c(_*I.offsetX,x,b,r,d,m,t.segment,z,A,p,a,v))}y.push(E)}else{if(n&&!r){var P=o(m,i).point,R=p.get(t.lineStartIndex+t.segment+1),D=o(R,i),O=D.signedDistanceFromCamera>0?D.point:u(m,new h(R.x,R.y),P,1,i);if(t.vertical?O.y>P.y:O.x<P.x)return{needsFlipping:!0}}var B=l.get(t.glyphStartIndex),F=c(_*B.offsetX,x,b,r,d,m,t.segment,t.lineStartIndex,t.lineStartIndex+t.lineLength,p,a,v);if(!F)return{notEnoughRoom:!0};y=[F]}for(var j=t.placementZoom,V=0,N=y;V<N.length;V+=1){var U=N[V];g(f,U.point,U.angle,j)}return{}}function u(t,e,r,n,i){var a=o(t.add(t.sub(e)._unit()),i).point,s=r.sub(a);return r.add(s._mult(n/s.mag()))}function c(t,e,r,n,i,a,s,l,c,p,f,d){var m=n?t-e:t+e,v=m>0?1:-1,y=0;n&&(v*=-1,y=Math.PI),v<0&&(y+=Math.PI);for(var g=v>0?l+s:l+s+1,_=i,x=i,b=0,w=0,T=Math.abs(m);b+w<=T;){if((g+=v)<l||g>=c)return null;if(x=_,void 0===(_=d[g])){var S=o(p.get(g),f);_=S.signedDistanceFromCamera>0?d[g]=S.point:u(0===b?a:new h(p.get(g-v).x,p.get(g-v).y),new h(p.get(g).x,p.get(g).y),x,T-b+1,f)}b+=w,w=x.dist(_)}var z=(T-b)/w,A=_.sub(x),C=A.mult(z)._add(x);return C._add(A._unit()._perp()._mult(r*v)),{point:C,angle:y+Math.atan2(_.y-x.y,_.x-x.x)}}function p(t,e){for(var r=0;r<t;r++)g(e,_,0,25)}var h=t("@mapbox/point-geometry"),f=t("@mapbox/gl-matrix"),d=f.mat4,m=f.vec4,v=t("./symbol_size"),y=t("../data/bucket/symbol_bucket"),g=y.addDynamicAttributes;e.exports={updateLineLabels:s,getLabelPlaneMatrix:n,getGlCoordMatrix:i};var _=new h(-1/0,-1/0)},{"../data/bucket/symbol_bucket":47,"./symbol_size":178,"@mapbox/gl-matrix":1,"@mapbox/point-geometry":2}],176:[function(t,e,r){"use strict";function n(t,e,r,n,i,a,s){var l,u,c,p,h=e.image,f=r.layout,d=e.top-1/h.pixelRatio,m=e.left-1/h.pixelRatio,v=e.bottom+1/h.pixelRatio,y=e.right+1/h.pixelRatio;if("none"!==f["icon-text-fit"]&&i){var g=y-m,_=v-d,x=f["text-size"]/24,b=i.left*x,w=i.right*x,T=i.top*x,S=i.bottom*x,z=w-b,A=S-T,C=f["icon-text-fit-padding"][0],E=f["icon-text-fit-padding"][1],k=f["icon-text-fit-padding"][2],M=f["icon-text-fit-padding"][3],L="width"===f["icon-text-fit"]?.5*(A-_):0,I="height"===f["icon-text-fit"]?.5*(z-g):0,P="width"===f["icon-text-fit"]||"both"===f["icon-text-fit"]?z:g,R="height"===f["icon-text-fit"]||"both"===f["icon-text-fit"]?A:_;l=new o(b+I-M,T+L-C),u=new o(b+I+E+P,T+L-C),c=new o(b+I+E+P,T+L+k+R),p=new o(b+I-M,T+L+k+R)}else l=new o(m,d),u=new o(y,d),c=new o(y,v),p=new o(m,v);var D=r.getLayoutValue("icon-rotate",a,s)*Math.PI/180;if(D){var O=Math.sin(D),B=Math.cos(D),F=[B,-O,O,B];l._matMult(F),u._matMult(F),p._matMult(F),c._matMult(F)}return[{tl:l,tr:u,bl:p,br:c,tex:{x:h.textureRect.x-1,y:h.textureRect.y-1,w:h.textureRect.w+2,h:h.textureRect.h+2},writingMode:void 0,glyphOffset:[0,0]}]}function i(t,e,r,n,i,a,l){for(var u=r.getLayoutValue("text-rotate",i,a)*Math.PI/180,c=r.getLayoutValue("text-offset",i,a).map(function(t){return 24*t}),p=e.positionedGlyphs,h=[],f=0;f<p.length;f++){var d=p[f],m=l[d.glyph];if(m){var v=m.rect;if(v){var y=s+1,g=m.metrics.advance/2,_=n?[d.x+g,d.y]:[0,0],x=n?[0,0]:[d.x+g+c[0],d.y+c[1]],b=m.metrics.left-y-g+x[0],w=-m.metrics.top-y+x[1],T=b+v.w,S=w+v.h,z=new o(b,w),A=new o(T,w),C=new o(b,S),E=new o(T,S);if(n&&d.vertical){var k=new o(-g,g),M=-Math.PI/2,L=new o(5,0);z._rotateAround(M,k)._add(L),A._rotateAround(M,k)._add(L),C._rotateAround(M,k)._add(L),E._rotateAround(M,k)._add(L)}if(u){var I=Math.sin(u),P=Math.cos(u),R=[P,-I,I,P];z._matMult(R),A._matMult(R),C._matMult(R),E._matMult(R)}h.push({tl:z,tr:A,bl:C,br:E,tex:v,writingMode:e.writingMode,glyphOffset:_})}}}return h}var o=t("@mapbox/point-geometry"),a=t("../style/parse_glyph_pbf"),s=a.GLYPH_PBF_BORDER;e.exports={getIconQuads:n,getGlyphQuads:i}},{"../style/parse_glyph_pbf":154,"@mapbox/point-geometry":2}],177:[function(t,e,r){"use strict";function n(t,e){for(var r=[],n=0,i=0,o=e;i<o.length;i+=1){var a=o[i];r.push(t.substring(n,a)),n=a}return n<t.length&&r.push(t.substring(n,t.length)),r}function i(t,e,r,i,o,a,s,l,u,p){var f=t.trim();p===_.vertical&&(f=y(f));var d,m=[],v={positionedGlyphs:m,text:f,top:l[1],bottom:l[1],left:l[0],right:l[0],writingMode:p},x=g.processBidirectionalText;return d=x?x(f,c(f,s,r,e)):n(f,c(f,s,r,e)),h(v,e,d,i,o,a,p,s,u),!!m.length&&v}function o(t,e,r,n){for(var i=0,o=0;o<t.length;o++){var a=n[t.charCodeAt(o)];a&&(i+=a.metrics.advance+e)}return i/Math.max(1,Math.ceil(i/r))}function a(t,e,r,n){var i=Math.pow(t-e,2);return n?t<e?i/2:2*i:i+Math.abs(r)*r}function s(t,e){var r=0;return 10===t&&(r-=1e4),40!==t&&65288!==t||(r+=50),41!==e&&65289!==e||(r+=50),r}function l(t,e,r,n,i,o){for(var s=null,l=a(e,r,i,o),u=0,c=n;u<c.length;u+=1){var p=c[u],h=e-p.x,f=a(h,r,i,o)+p.badness;f<=l&&(s=p,l=f)}return{index:t,x:e,priorBreak:s,badness:l}}function u(t){return t?u(t.priorBreak).concat(t.index):[]}function c(t,e,r,n){if(!r)return[];if(!t)return[];for(var i=[],a=o(t,e,r,n),c=0,p=0;p<t.length;p++){var h=t.charCodeAt(p),f=n[h];f&&!x[h]&&(c+=f.metrics.advance+e),p<t.length-1&&(b[h]||v.charAllowsIdeographicBreaking(h))&&i.push(l(p+1,c,a,i,s(h,t.charCodeAt(p+1)),!1))}return u(l(t.length,c,a,i,0,!0))}function p(t){var e=.5,r=.5;switch(t){case"right":case"top-right":case"bottom-right":e=1;break;case"left":case"top-left":case"bottom-left":e=0}switch(t){case"bottom":case"bottom-right":case"bottom-left":r=1;break;case"top":case"top-right":case"top-left":r=0}return{horizontalAlign:e,verticalAlign:r}}function h(t,e,r,n,i,o,a,s,l){for(var u=0,c=-17,h=0,m=t.positionedGlyphs,y="right"===o?1:"left"===o?0:.5,g=0,x=r;g<x.length;g+=1){var b=x[g];if(b=b.trim(),b.length){for(var w=m.length,T=0;T<b.length;T++){var S=b.charCodeAt(T),z=e[S];z&&(v.charHasUprightVerticalOrientation(S)&&a!==_.horizontal?(m.push({glyph:S,x:u,y:0,vertical:!0}),u+=l+s):(m.push({glyph:S,x:u,y:c,vertical:!1}),u+=z.metrics.advance+s))}if(m.length!==w){var A=u-s;h=Math.max(A,h),f(m,e,w,m.length-1,y)}u=0,c+=n}else c+=n}var C=p(i),E=C.horizontalAlign,k=C.verticalAlign;d(m,y,E,k,h,n,r.length);var M=r.length*n;t.top+=-k*M,t.bottom=t.top+M,t.left+=-E*h,t.right=t.left+h}function f(t,e,r,n,i){if(i){var o=e[t[n].glyph];if(o)for(var a=o.metrics.advance,s=(t[n].x+a)*i,l=r;l<=n;l++)t[l].x-=s}}function d(t,e,r,n,i,o,a){for(var s=(e-r)*i,l=(-n*a+.5)*o,u=0;u<t.length;u++)t[u].x+=s,t[u].y+=l}function m(t,e,r){var n=p(r),i=n.horizontalAlign,o=n.verticalAlign,a=e[0],s=e[1],l=a-t.displaySize[0]*i,u=l+t.displaySize[0],c=s-t.displaySize[1]*o;return{image:t,top:c,bottom:c+t.displaySize[1],left:l,right:u}}var v=t("../util/script_detection"),y=t("../util/verticalize_punctuation"),g=t("../source/rtl_text_plugin"),_={horizontal:1,vertical:2};e.exports={shapeText:i,shapeIcon:m,WritingMode:_};var x={};x[9]=!0,x[10]=!0,x[11]=!0,x[12]=!0,x[13]=!0,x[32]=!0;var b={};b[10]=!0,b[32]=!0,b[38]=!0,b[40]=!0,b[41]=!0,b[43]=!0,b[45]=!0,b[47]=!0,b[173]=!0,b[183]=!0,b[8203]=!0,b[8208]=!0,b[8211]=!0,b[8231]=!0},{"../source/rtl_text_plugin":96,"../util/script_detection":218,"../util/verticalize_punctuation":225}],178:[function(t,e,r){"use strict";function n(t,e,r){var n=e;return t.isFeatureConstant?n.uSize:t.isZoomConstant?r.lowerSize/10:o.number(r.lowerSize/10,r.upperSize/10,n.uSizeT)}function i(t,e,r,n){var i={};if(t.isZoomConstant||t.isFeatureConstant)if(t.isFeatureConstant&&!t.isZoomConstant){var o;if("interval"===t.functionType)o=r.getLayoutValue(n?"text-size":"icon-size",{zoom:e.zoom});else{var a="interval"===t.functionType?0:s(e.zoom,t.functionBase,t.coveringZoomRange[0],t.coveringZoomRange[1]),u=t.coveringStopValues[0],c=t.coveringStopValues[1];o=u+(c-u)*l.clamp(a,0,1)}i.uSize=o}else t.isFeatureConstant&&t.isZoomConstant&&(i.uSize=t.layoutSize);else{var p=s(e.zoom,t.functionBase,t.coveringZoomRange[0],t.coveringZoomRange[1]);i.uSizeT=l.clamp(p,0,1)}return i}var o=t("../style-spec/util/interpolate"),a=t("../style-spec/function"),s=a.interpolationFactor,l=t("../util/util");e.exports={evaluateSizeForFeature:n,evaluateSizeForZoom:i}},{"../style-spec/function":112,"../style-spec/util/interpolate":127,"../util/util":223}],179:[function(t,e,r){"use strict";var n=t("../source/rtl_text_plugin");e.exports=function(t,e,r,i){var o=e.getLayoutValue("text-transform",r,i);return"uppercase"===o?t=t.toLocaleUpperCase():"lowercase"===o&&(t=t.toLocaleLowerCase()),n.applyArabicShaping&&(t=n.applyArabicShaping(t)),t}},{"../source/rtl_text_plugin":96}],180:[function(t,e,r){"use strict";var n=t("../util/dom"),i=t("@mapbox/point-geometry"),o={scrollZoom:t("./handler/scroll_zoom"),boxZoom:t("./handler/box_zoom"),dragRotate:t("./handler/drag_rotate"),dragPan:t("./handler/drag_pan"),keyboard:t("./handler/keyboard"),doubleClickZoom:t("./handler/dblclick_zoom"),touchZoomRotate:t("./handler/touch_zoom_rotate")};e.exports=function(t,e){function r(t){y("mouseout",t)}function a(e){t.stop(),w=n.mousePos(_,e),y("mousedown",e),b=!0}function s(e){var r=t.dragRotate&&t.dragRotate.isActive();x&&!r&&y("contextmenu",x),x=null,b=!1,y("mouseup",e)}function l(e){if(!(t.dragPan&&t.dragPan.isActive()||t.dragRotate&&t.dragRotate.isActive())){for(var r=e.toElement||e.target;r&&r!==_;)r=r.parentNode;r===_&&y("mousemove",e)}}function u(e){t.stop(),g("touchstart",e),!e.touches||e.touches.length>1||(T?(clearTimeout(T),T=null,y("dblclick",e)):T=setTimeout(f,300))}function c(t){g("touchmove",t)}function p(t){g("touchend",t)}function h(t){g("touchcancel",t)}function f(){T=null}function d(t){n.mousePos(_,t).equals(w)&&y("click",t)}function m(t){y("dblclick",t),t.preventDefault()}function v(e){var r=t.dragRotate&&t.dragRotate.isActive();b||r?b&&(x=e):y("contextmenu",e),e.preventDefault()}function y(e,r){var i=n.mousePos(_,r);return t.fire(e,{lngLat:t.unproject(i),point:i,originalEvent:r})}function g(e,r){var o=n.touchPos(_,r),a=o.reduce(function(t,e,r,n){return t.add(e.div(n.length))},new i(0,0));return t.fire(e,{lngLat:t.unproject(a),point:a,lngLats:o.map(function(e){return t.unproject(e)},this),points:o,originalEvent:r})}var _=t.getCanvasContainer(),x=null,b=!1,w=null,T=null;for(var S in o)t[S]=new o[S](t,e),e.interactive&&e[S]&&t[S].enable(e[S]);_.addEventListener("mouseout",r,!1),_.addEventListener("mousedown",a,!1),_.addEventListener("mouseup",s,!1),_.addEventListener("mousemove",l,!1),_.addEventListener("touchstart",u,!1),_.addEventListener("touchend",p,!1),_.addEventListener("touchmove",c,!1),_.addEventListener("touchcancel",h,!1),_.addEventListener("click",d,!1),_.addEventListener("dblclick",m,!1),_.addEventListener("contextmenu",v,!1)}},{"../util/dom":209,"./handler/box_zoom":189,"./handler/dblclick_zoom":190,"./handler/drag_pan":191,"./handler/drag_rotate":192,"./handler/keyboard":193,"./handler/scroll_zoom":194,"./handler/touch_zoom_rotate":195,"@mapbox/point-geometry":2}],181:[function(t,e,r){"use strict";var n=t("../util/util"),i=t("../style-spec/util/interpolate"),o=t("../util/browser"),a=t("../geo/lng_lat"),s=t("../geo/lng_lat_bounds"),l=t("@mapbox/point-geometry"),u=t("../util/evented"),c=function(t){function e(e,r){t.call(this),this.moving=!1,this.transform=e,this._bearingSnap=r.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,r){return t=l.convert(t).mult(-1),this.panTo(this.transform.center,n.extend({offset:t},e),r)},e.prototype.panTo=function(t,e,r){return this.easeTo(n.extend({center:t},e),r)},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,r){return this.easeTo(n.extend({zoom:t},e),r)},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,r){return this.easeTo(n.extend({bearing:t},e),r)},e.prototype.resetNorth=function(t,e){return this.rotateTo(0,n.extend({duration:1e3},t),e),this},e.prototype.snapToNorth=function(t,e){return Math.abs(this.getBearing())<this._bearingSnap?this.resetNorth(t,e):this},e.prototype.getPitch=function(){return this.transform.pitch},e.prototype.setPitch=function(t,e){return this.jumpTo({pitch:t},e),this},e.prototype.fitBounds=function(t,e,r){if(e=n.extend({padding:{top:0,bottom:0,right:0,left:0},offset:[0,0],maxZoom:this.transform.maxZoom},e),"number"==typeof e.padding){var i=e.padding;e.padding={top:i,bottom:i,right:i,left:i}}if(!n.deepEqual(Object.keys(e.padding).sort(function(t,e){return t<e?-1:t>e?1:0}),["bottom","left","right","top"]))return n.warnOnce("options.padding must be a positive number, or an Object with keys 'bottom', 'left', 'right', 'top'"),this;t=s.convert(t);var o=[e.padding.left-e.padding.right,e.padding.top-e.padding.bottom],a=Math.min(e.padding.right,e.padding.left),u=Math.min(e.padding.top,e.padding.bottom);e.offset=[e.offset[0]+o[0],e.offset[1]+o[1]];var c=l.convert(e.offset),p=this.transform,h=p.project(t.getNorthWest()),f=p.project(t.getSouthEast()),d=f.sub(h),m=(p.width-2*a-2*Math.abs(c.x))/d.x,v=(p.height-2*u-2*Math.abs(c.y))/d.y;return v<0||m<0?(n.warnOnce("Map cannot fit within canvas with the given bounds, padding, and/or offset."),this):(e.center=p.unproject(h.add(f).div(2)),e.zoom=Math.min(p.scaleZoom(p.scale*Math.min(m,v)),e.maxZoom),e.bearing=0,e.linear?this.easeTo(e,r):this.flyTo(e,r))},e.prototype.jumpTo=function(t,e){this.stop();var r=this.transform,n=!1,i=!1,o=!1;return"zoom"in t&&r.zoom!==+t.zoom&&(n=!0,r.zoom=+t.zoom),void 0!==t.center&&(r.center=a.convert(t.center)),"bearing"in t&&r.bearing!==+t.bearing&&(i=!0,r.bearing=+t.bearing),"pitch"in t&&r.pitch!==+t.pitch&&(o=!0,r.pitch=+t.pitch),this.fire("movestart",e).fire("move",e),n&&this.fire("zoomstart",e).fire("zoom",e).fire("zoomend",e),i&&this.fire("rotate",e),o&&this.fire("pitchstart",e).fire("pitch",e).fire("pitchend",e),this.fire("moveend",e)},e.prototype.easeTo=function(t,e){var r=this;this.stop(),t=n.extend({offset:[0,0],duration:500,easing:n.ease},t),!1===t.animate&&(t.duration=0),t.smoothEasing&&0!==t.duration&&(t.easing=this._smoothOutEasing(t.duration));var o=this.transform,s=this.getZoom(),u=this.getBearing(),c=this.getPitch(),p="zoom"in t?+t.zoom:s,h="bearing"in t?this._normalizeBearing(t.bearing,u):u,f="pitch"in t?+t.pitch:c,d=o.centerPoint.add(l.convert(t.offset)),m=o.pointLocation(d),v=a.convert(t.center||m);this._normalizeCenter(v);var y,g,_=o.project(m),x=o.project(v).sub(_),b=o.zoomScale(p-s);return t.around&&(y=a.convert(t.around),g=o.locationPoint(y)),this.zooming=p!==s,this.rotating=u!==h,this.pitching=f!==c,this._prepareEase(e,t.noMoveStart),clearTimeout(this._onEaseEnd),this._ease(function(t){if(this.zooming&&(o.zoom=i(s,p,t)),this.rotating&&(o.bearing=i(u,h,t)),this.pitching&&(o.pitch=i(c,f,t)),y)o.setLocationAtPoint(y,g);else{var r=o.zoomScale(o.zoom-s),n=p>s?Math.min(2,b):Math.max(.5,b),a=Math.pow(n,1-t),l=o.unproject(_.add(x.mult(t*a)).mult(r));o.setLocationAtPoint(o.renderWorldCopies?l.wrap():l,d)}this._fireMoveEvents(e)},function(){t.delayEndEvents?r._onEaseEnd=setTimeout(function(){return r._easeToEnd(e)},t.delayEndEvents):r._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,r=this.pitching;this.moving=!1,this.zooming=!1,this.rotating=!1,this.pitching=!1,e&&this.fire("zoomend",t),r&&this.fire("pitchend",t),this.fire("moveend",t)},e.prototype.flyTo=function(t,e){function r(t){var e=(A*A-z*z+(t?-1:1)*M*M*C*C)/(2*(t?A:z)*M*C);return Math.log(Math.sqrt(e*e+1)-e)}function o(t){return(Math.exp(t)-Math.exp(-t))/2}function s(t){return(Math.exp(t)+Math.exp(-t))/2}function u(t){return o(t)/s(t)}var c=this;this.stop(),t=n.extend({offset:[0,0],speed:1.2,curve:1.42,easing:n.ease},t);var p=this.transform,h=this.getZoom(),f=this.getBearing(),d=this.getPitch(),m="zoom"in t?n.clamp(+t.zoom,p.minZoom,p.maxZoom):h,v="bearing"in t?this._normalizeBearing(t.bearing,f):f,y="pitch"in t?+t.pitch:d,g=p.zoomScale(m-h),_=p.centerPoint.add(l.convert(t.offset)),x=p.pointLocation(_),b=a.convert(t.center||x);this._normalizeCenter(b);var w=p.project(x),T=p.project(b).sub(w),S=t.curve,z=Math.max(p.width,p.height),A=z/g,C=T.mag();if("minZoom"in t){var E=n.clamp(Math.min(t.minZoom,h,m),p.minZoom,p.maxZoom),k=z/p.zoomScale(E-h);S=Math.sqrt(k/C*2)}var M=S*S,L=r(0),I=function(t){return s(L)/s(L+S*t)},P=function(t){return z*((s(L)*u(L+S*t)-o(L))/M)/C},R=(r(1)-L)/S;if(Math.abs(C)<1e-6||isNaN(R)){if(Math.abs(z-A)<1e-6)return this.easeTo(t,e);var D=A<z?-1:1;R=Math.abs(Math.log(A/z))/S,P=function(){return 0},I=function(t){return Math.exp(D*S*t)}}if("duration"in t)t.duration=+t.duration;else{var O="screenSpeed"in t?+t.screenSpeed/S:+t.speed;t.duration=1e3*R/O}return this.zooming=!0,this.rotating=f!==v,this.pitching=y!==d,this._prepareEase(e,!1),this._ease(function(t){var r=t*R,n=1/I(r);p.zoom=h+p.scaleZoom(n),this.rotating&&(p.bearing=i(f,v,t)),this.pitching&&(p.pitch=i(d,y,t));var o=p.unproject(w.add(T.mult(P(r))).mult(n));p.setLocationAtPoint(p.renderWorldCopies?o.wrap():o,_),this._fireMoveEvents(e)},function(){return c._easeToEnd(e)},t),this},e.prototype.isEasing=function(){return!!this._abortFn},e.prototype.isMoving=function(){return this.moving},e.prototype.stop=function(){return this._abortFn&&(this._abortFn(),this._finishEase()),this},e.prototype._ease=function(t,e,r){this._finishFn=e,this._abortFn=o.timed(function(e){t.call(this,r.easing(e)),1===e&&this._finishEase()},!1===r.animate?0:r.duration,this)},e.prototype._finishEase=function(){delete this._abortFn;var t=this._finishFn;delete this._finishFn,t.call(this)},e.prototype._normalizeBearing=function(t,e){t=n.wrap(t,-180,180);var r=Math.abs(t-e);return Math.abs(t-360-e)<r&&(t-=360),Math.abs(t+360-e)<r&&(t+=360),t},e.prototype._normalizeCenter=function(t){var e=this.transform;if(e.renderWorldCopies&&!e.lngRange){var r=t.lng-e.center.lng;t.lng+=r>180?-360:r<-180?360:0}},e.prototype._smoothOutEasing=function(t){var e=n.ease;if(this._prevEase){var r=this._prevEase,i=(Date.now()-r.start)/r.duration,o=r.easing(i+.01)-r.easing(i),a=.27/Math.sqrt(o*o+1e-4)*.01,s=Math.sqrt(.0729-a*a);e=n.bezier(a,s,.25,1)}return this._prevEase={start:(new Date).getTime(),duration:t,easing:e},e},e}(u);e.exports=c},{"../geo/lng_lat":58,"../geo/lng_lat_bounds":59,"../style-spec/util/interpolate":127,"../util/browser":202,"../util/evented":210,"../util/util":223,"@mapbox/point-geometry":2}],182:[function(t,e,r){"use strict";var n=t("../../util/dom"),i=t("../../util/util"),o=t("../../util/config"),a=function(t){this.options=t,i.bindAll(["_updateEditLink","_updateData","_updateCompact"],this)};a.prototype.getDefaultPosition=function(){return"bottom-right"},a.prototype.onAdd=function(t){var e=this.options&&this.options.compact;return this._map=t,this._container=n.create("div","mapboxgl-ctrl mapboxgl-ctrl-attrib"),e&&this._container.classList.add("mapboxgl-compact"),this._updateAttributions(),this._updateEditLink(),this._map.on("sourcedata",this._updateData),this._map.on("moveend",this._updateEditLink),void 0===e&&(this._map.on("resize",this._updateCompact),this._updateCompact()),this._container},a.prototype.onRemove=function(){n.remove(this._container),this._map.off("sourcedata",this._updateData),this._map.off("moveend",this._updateEditLink),this._map.off("resize",this._updateCompact),this._map=void 0},a.prototype._updateEditLink=function(){var t=this._editLink;t||(t=this._editLink=this._container.querySelector(".mapbox-improve-map"));var e=[{key:"owner",value:this.styleOwner},{key:"id",value:this.styleId},{key:"access_token",value:o.ACCESS_TOKEN}];if(t){var r=e.reduce(function(t,r,n){return r.value&&(t+=r.key+"="+r.value+(n<e.length-1?"&":"")),t},"?");t.href="https://www.mapbox.com/feedback/"+r+(this._map._hash?this._map._hash.getHashString(!0):"")}},a.prototype._updateData=function(t){t&&"metadata"===t.sourceDataType&&(this._updateAttributions(),this._updateEditLink())},a.prototype._updateAttributions=function(){if(this._map.style){var t=[];if(this._map.style.stylesheet){var e=this._map.style.stylesheet;this.styleOwner=e.owner,this.styleId=e.id}var r=this._map.style.sourceCaches;for(var n in r){var i=r[n].getSource();i.attribution&&t.indexOf(i.attribution)<0&&t.push(i.attribution)}t.sort(function(t,e){return t.length-e.length}),t=t.filter(function(e,r){for(var n=r+1;n<t.length;n++)if(t[n].indexOf(e)>=0)return!1;return!0}),this._container.innerHTML=t.join(" | "),this._editLink=null}},a.prototype._updateCompact=function(){this._map.getCanvasContainer().offsetWidth<=640?this._container.classList.add("mapboxgl-compact"):this._container.classList.remove("mapboxgl-compact")},e.exports=a},{"../../util/config":206,"../../util/dom":209,"../../util/util":223}],183:[function(t,e,r){"use strict";var n=t("../../util/dom"),i=t("../../util/util"),o=t("../../util/window"),a=function(){this._fullscreen=!1,i.bindAll(["_onClickFullscreen","_changeIcon"],this),"onfullscreenchange"in o.document?this._fullscreenchange="fullscreenchange":"onmozfullscreenchange"in o.document?this._fullscreenchange="mozfullscreenchange":"onwebkitfullscreenchange"in o.document?this._fullscreenchange="webkitfullscreenchange":"onmsfullscreenchange"in o.document&&(this._fullscreenchange="MSFullscreenChange"),this._className="mapboxgl-ctrl"};a.prototype.onAdd=function(t){return this._map=t,this._mapContainer=this._map.getContainer(),this._container=n.create("div",this._className+" mapboxgl-ctrl-group"),this._checkFullscreenSupport()?this._setupUI():(this._container.style.display="none",i.warnOnce("This device does not support fullscreen mode.")),this._container},a.prototype.onRemove=function(){n.remove(this._container),this._map=null,o.document.removeEventListener(this._fullscreenchange,this._changeIcon)},a.prototype._checkFullscreenSupport=function(){return!!(o.document.fullscreenEnabled||o.document.mozFullScreenEnabled||o.document.msFullscreenEnabled||o.document.webkitFullscreenEnabled)},a.prototype._setupUI=function(){var t=this._fullscreenButton=n.create("button",this._className+"-icon "+this._className+"-fullscreen",this._container);t.setAttribute("aria-label","Toggle fullscreen"),t.type="button",this._fullscreenButton.addEventListener("click",this._onClickFullscreen),o.document.addEventListener(this._fullscreenchange,this._changeIcon)},a.prototype._isFullscreen=function(){return this._fullscreen},a.prototype._changeIcon=function(){(o.document.fullscreenElement||o.document.mozFullScreenElement||o.document.webkitFullscreenElement||o.document.msFullscreenElement)===this._mapContainer!==this._fullscreen&&(this._fullscreen=!this._fullscreen,this._fullscreenButton.classList.toggle(this._className+"-shrink"),this._fullscreenButton.classList.toggle(this._className+"-fullscreen"))},a.prototype._onClickFullscreen=function(){this._isFullscreen()?o.document.exitFullscreen?o.document.exitFullscreen():o.document.mozCancelFullScreen?o.document.mozCancelFullScreen():o.document.msExitFullscreen?o.document.msExitFullscreen():o.document.webkitCancelFullScreen&&o.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()},e.exports=a},{"../../util/dom":209,"../../util/util":223,"../../util/window":204}],184:[function(t,e,r){"use strict";function n(t){void 0!==i?t(i):void 0!==s.navigator.permissions?s.navigator.permissions.query({name:"geolocation"}).then(function(e){i="denied"!==e.state,t(i)}):(i=!!s.navigator.geolocation,t(i))}var i,o=t("../../util/evented"),a=t("../../util/dom"),s=t("../../util/window"),l=t("../../util/util"),u=t("../../geo/lng_lat"),c=t("../marker"),p={positionOptions:{enableHighAccuracy:!1,timeout:6e3},fitBoundsOptions:{maxZoom:15},trackUserLocation:!1,showUserLocation:!0},h=function(t){function e(e){t.call(this),this.options=l.extend({},p,e),l.bindAll(["_onSuccess","_onError","_finish","_setupUI","_updateCamera","_updateMarker","_onClickGeolocate"],this)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.onAdd=function(t){return this._map=t,this._container=a.create("div","mapboxgl-ctrl mapboxgl-ctrl-group"),n(this._setupUI),this._container},e.prototype.onRemove=function(){void 0!==this._geolocationWatchID&&(s.navigator.geolocation.clearWatch(this._geolocationWatchID),this._geolocationWatchID=void 0),this.options.showUserLocation&&this._userLocationDotMarker.remove(),a.remove(this._container),this._map=void 0},e.prototype._onSuccess=function(t){if(this.options.trackUserLocation)switch(this._lastKnownPosition=t,this._watchState){case"WAITING_ACTIVE":case"ACTIVE_LOCK":case"ACTIVE_ERROR":this._watchState="ACTIVE_LOCK",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active-error"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-active");break;case"BACKGROUND":case"BACKGROUND_ERROR":this._watchState="BACKGROUND",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-background-error"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-background")}this.options.showUserLocation&&"OFF"!==this._watchState&&this._updateMarker(t),this.options.trackUserLocation&&"ACTIVE_LOCK"!==this._watchState||this._updateCamera(t),this.options.showUserLocation&&this._dotElement.classList.remove("mapboxgl-user-location-dot-stale"),this.fire("geolocate",t),this._finish()},e.prototype._updateCamera=function(t){var e=new u(t.coords.longitude,t.coords.latitude),r=t.coords.accuracy;this._map.fitBounds(e.toBounds(r),this.options.fitBoundsOptions,{geolocateSource:!0})},e.prototype._updateMarker=function(t){t?this._userLocationDotMarker.setLngLat([t.coords.longitude,t.coords.latitude]).addTo(this._map):this._userLocationDotMarker.remove()},e.prototype._onError=function(t){if(this.options.trackUserLocation)if(1===t.code)this._watchState="OFF",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active-error"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-background"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-background-error"),void 0!==this._geolocationWatchID&&this._clearWatch();else switch(this._watchState){case"WAITING_ACTIVE":this._watchState="ACTIVE_ERROR",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-active-error");break;case"ACTIVE_LOCK":this._watchState="ACTIVE_ERROR",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-active-error"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-waiting");break;case"BACKGROUND":this._watchState="BACKGROUND_ERROR",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-background"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-background-error"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-waiting")}"OFF"!==this._watchState&&this.options.showUserLocation&&this._dotElement.classList.add("mapboxgl-user-location-dot-stale"),this.fire("error",t),this._finish()},e.prototype._finish=function(){this._timeoutId&&clearTimeout(this._timeoutId),this._timeoutId=void 0},e.prototype._setupUI=function(t){var e=this;!1!==t&&(this._container.addEventListener("contextmenu",function(t){return t.preventDefault()}),this._geolocateButton=a.create("button","mapboxgl-ctrl-icon mapboxgl-ctrl-geolocate",this._container),this._geolocateButton.type="button",this._geolocateButton.setAttribute("aria-label","Geolocate"),this.options.trackUserLocation&&(this._geolocateButton.setAttribute("aria-pressed","false"),this._watchState="OFF"),this.options.showUserLocation&&(this._dotElement=a.create("div","mapboxgl-user-location-dot"),this._userLocationDotMarker=new c(this._dotElement),this.options.trackUserLocation&&(this._watchState="OFF")),this._geolocateButton.addEventListener("click",this._onClickGeolocate.bind(this)),this.options.trackUserLocation&&this._map.on("movestart",function(t){t.geolocateSource||"ACTIVE_LOCK"!==e._watchState||(e._watchState="BACKGROUND",e._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-background"),e._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active"),e.fire("trackuserlocationend"))}))},e.prototype._onClickGeolocate=function(){if(this.options.trackUserLocation){switch(this._watchState){case"OFF":this._watchState="WAITING_ACTIVE",this.fire("trackuserlocationstart");break;case"WAITING_ACTIVE":case"ACTIVE_LOCK":case"ACTIVE_ERROR":case"BACKGROUND_ERROR":this._watchState="OFF",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active-error"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-background"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-background-error"),this.fire("trackuserlocationend");break;case"BACKGROUND":this._watchState="ACTIVE_LOCK",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-background"),this._lastKnownPosition&&this._updateCamera(this._lastKnownPosition),this.fire("trackuserlocationstart")}switch(this._watchState){case"WAITING_ACTIVE":this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-active");break;case"ACTIVE_LOCK":this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-active");break;case"ACTIVE_ERROR":this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-active-error");break;case"BACKGROUND":this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-background");break;case"BACKGROUND_ERROR":this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-background-error")}"OFF"===this._watchState&&void 0!==this._geolocationWatchID?this._clearWatch():void 0===this._geolocationWatchID&&(this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.setAttribute("aria-pressed","true"),this._geolocationWatchID=s.navigator.geolocation.watchPosition(this._onSuccess,this._onError,this.options.positionOptions))}else s.navigator.geolocation.getCurrentPosition(this._onSuccess,this._onError,this.options.positionOptions),this._timeoutId=setTimeout(this._finish,1e4)},e.prototype._clearWatch=function(){s.navigator.geolocation.clearWatch(this._geolocationWatchID),this._geolocationWatchID=void 0,this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.setAttribute("aria-pressed","false"),this.options.showUserLocation&&this._updateMarker(null)},e}(o);e.exports=h},{"../../geo/lng_lat":58,"../../util/dom":209,"../../util/evented":210,"../../util/util":223,"../../util/window":204,"../marker":198}],185:[function(t,e,r){"use strict";var n=t("../../util/dom"),i=t("../../util/util"),o=function(){i.bindAll(["_updateLogo"],this)};o.prototype.onAdd=function(t){this._map=t,this._container=n.create("div","mapboxgl-ctrl");var e=n.create("a","mapboxgl-ctrl-logo");return e.target="_blank",e.href="https://www.mapbox.com/",e.setAttribute("aria-label","Mapbox logo"),this._container.appendChild(e),this._container.style.display="none",this._map.on("sourcedata",this._updateLogo),this._updateLogo(),this._container},o.prototype.onRemove=function(){n.remove(this._container),this._map.off("sourcedata",this._updateLogo)},o.prototype.getDefaultPosition=function(){return"bottom-left"},o.prototype._updateLogo=function(t){t&&"metadata"!==t.sourceDataType||(this._container.style.display=this._logoRequired()?"block":"none")},o.prototype._logoRequired=function(){if(this._map.style){var t=this._map.style.sourceCaches;for(var e in t)if(t[e].getSource().mapbox_logo)return!0;return!1}},e.exports=o},{"../../util/dom":209,"../../util/util":223}],186:[function(t,e,r){"use strict";var n=t("../../util/dom"),i=t("../../util/util"),o=t("../handler/drag_rotate"),a=function(){var t=this;i.bindAll(["_rotateCompassArrow"],this),this._container=n.create("div","mapboxgl-ctrl mapboxgl-ctrl-group"),this._container.addEventListener("contextmenu",function(t){return t.preventDefault()}),this._zoomInButton=this._createButton("mapboxgl-ctrl-icon mapboxgl-ctrl-zoom-in","Zoom In",function(){return t._map.zoomIn()}),this._zoomOutButton=this._createButton("mapboxgl-ctrl-icon mapboxgl-ctrl-zoom-out","Zoom Out",function(){return t._map.zoomOut()}),this._compass=this._createButton("mapboxgl-ctrl-icon mapboxgl-ctrl-compass","Reset North",function(){return t._map.resetNorth()}),this._compassArrow=n.create("span","mapboxgl-ctrl-compass-arrow",this._compass)};a.prototype._rotateCompassArrow=function(){var t="rotate("+this._map.transform.angle*(180/Math.PI)+"deg)";this._compassArrow.style.transform=t},a.prototype.onAdd=function(t){return this._map=t,this._map.on("rotate",this._rotateCompassArrow),this._rotateCompassArrow(),this._handler=new o(t,{button:"left",element:this._compass,pitchWithRotate:!1}),this._handler.enable(),this._container},a.prototype.onRemove=function(){n.remove(this._container),this._map.off("rotate",this._rotateCompassArrow),delete this._map,this._handler.disable(),delete this._handler},a.prototype._createButton=function(t,e,r){var i=n.create("button",t,this._container);return i.type="button",i.setAttribute("aria-label",e),i.addEventListener("click",r),i},e.exports=a},{"../../util/dom":209,"../../util/util":223,"../handler/drag_rotate":192}],187:[function(t,e,r){"use strict";function n(t,e,r){var n=r&&r.maxWidth||100,a=t._container.clientHeight/2,s=o(t.unproject([0,a]),t.unproject([n,a]));if(r&&"imperial"===r.unit){var l=3.2808*s;l>5280?i(e,n,l/5280,"mi"):i(e,n,l,"ft")}else if(r&&"nautical"===r.unit){var u=s/1852;i(e,n,u,"nm")}else i(e,n,s,"m")}function i(t,e,r,n){var i=a(r),o=i/r;"m"===n&&i>=1e3&&(i/=1e3,n="km"),t.style.width=e*o+"px",t.innerHTML=i+n}function o(t,e){var r=Math.PI/180,n=t.lat*r,i=e.lat*r,o=Math.sin(n)*Math.sin(i)+Math.cos(n)*Math.cos(i)*Math.cos((e.lng-t.lng)*r);return 6371e3*Math.acos(Math.min(o,1))}function a(t){var e=Math.pow(10,(""+Math.floor(t)).length-1),r=t/e;return r=r>=10?10:r>=5?5:r>=3?3:r>=2?2:1,e*r}var s=t("../../util/dom"),l=t("../../util/util"),u=function(t){this.options=t,l.bindAll(["_onMove"],this)};u.prototype.getDefaultPosition=function(){return"bottom-left"},u.prototype._onMove=function(){n(this._map,this._container,this.options)},u.prototype.onAdd=function(t){return this._map=t,this._container=s.create("div","mapboxgl-ctrl mapboxgl-ctrl-scale",t.getContainer()),this._map.on("move",this._onMove),this._onMove(),this._container},u.prototype.onRemove=function(){s.remove(this._container),this._map.off("move",this._onMove),this._map=void 0},e.exports=u},{"../../util/dom":209,"../../util/util":223}],188:[function(t,e,r){"use strict"},{}],189:[function(t,e,r){"use strict";var n=t("../../util/dom"),i=t("../../geo/lng_lat_bounds"),o=t("../../util/util"),a=t("../../util/window"),s=function(t){this._map=t,this._el=t.getCanvasContainer(),this._container=t.getContainer(),o.bindAll(["_onMouseDown","_onMouseMove","_onMouseUp","_onKeyDown"],this)};s.prototype.isEnabled=function(){return!!this._enabled},s.prototype.isActive=function(){return!!this._active},s.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)},s.prototype.disable=function(){this.isEnabled()&&(this._el.removeEventListener("mousedown",this._onMouseDown),this._enabled=!1)},s.prototype._onMouseDown=function(t){t.shiftKey&&0===t.button&&(a.document.addEventListener("mousemove",this._onMouseMove,!1),a.document.addEventListener("keydown",this._onKeyDown,!1),a.document.addEventListener("mouseup",this._onMouseUp,!1),n.disableDrag(),this._startPos=n.mousePos(this._el,t),this._active=!0)},s.prototype._onMouseMove=function(t){var e=this._startPos,r=n.mousePos(this._el,t);this._box||(this._box=n.create("div","mapboxgl-boxzoom",this._container),this._container.classList.add("mapboxgl-crosshair"),this._fireEvent("boxzoomstart",t));var i=Math.min(e.x,r.x),o=Math.max(e.x,r.x),a=Math.min(e.y,r.y),s=Math.max(e.y,r.y);n.setTransform(this._box,"translate("+i+"px,"+a+"px)"),this._box.style.width=o-i+"px",this._box.style.height=s-a+"px"},s.prototype._onMouseUp=function(t){if(0===t.button){var e=this._startPos,r=n.mousePos(this._el,t),o=(new i).extend(this._map.unproject(e)).extend(this._map.unproject(r));this._finish(),e.x===r.x&&e.y===r.y?this._fireEvent("boxzoomcancel",t):this._map.fitBounds(o,{linear:!0}).fire("boxzoomend",{originalEvent:t,boxZoomBounds:o})}},s.prototype._onKeyDown=function(t){27===t.keyCode&&(this._finish(),this._fireEvent("boxzoomcancel",t))},s.prototype._finish=function(){this._active=!1,a.document.removeEventListener("mousemove",this._onMouseMove,!1),a.document.removeEventListener("keydown",this._onKeyDown,!1),a.document.removeEventListener("mouseup",this._onMouseUp,!1),this._container.classList.remove("mapboxgl-crosshair"),this._box&&(n.remove(this._box),this._box=null),n.enableDrag()},s.prototype._fireEvent=function(t,e){return this._map.fire(t,{originalEvent:e})},e.exports=s},{"../../geo/lng_lat_bounds":59,"../../util/dom":209,"../../util/util":223,"../../util/window":204}],190:[function(t,e,r){"use strict";var n=t("../../util/util"),i=function(t){this._map=t,n.bindAll(["_onDblClick"],this)};i.prototype.isEnabled=function(){return!!this._enabled},i.prototype.enable=function(){this.isEnabled()||(this._map.on("dblclick",this._onDblClick),this._enabled=!0)},i.prototype.disable=function(){this.isEnabled()&&(this._map.off("dblclick",this._onDblClick),this._enabled=!1)},i.prototype._onDblClick=function(t){this._map.zoomTo(this._map.getZoom()+(t.originalEvent.shiftKey?-1:1),{around:t.lngLat},t)},e.exports=i},{"../../util/util":223}],191:[function(t,e,r){"use strict";var n=t("../../util/dom"),i=t("../../util/util"),o=t("../../util/window"),a=i.bezier(0,0,.3,1),s=function(t){this._map=t,this._el=t.getCanvasContainer(),i.bindAll(["_onDown","_onMove","_onUp","_onTouchEnd","_onMouseUp"],this)};s.prototype.isEnabled=function(){return!!this._enabled},s.prototype.isActive=function(){return!!this._active},s.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)},s.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)},s.prototype._onDown=function(t){this._ignoreEvent(t)||this.isActive()||(t.touches?(o.document.addEventListener("touchmove",this._onMove),o.document.addEventListener("touchend",this._onTouchEnd)):(o.document.addEventListener("mousemove",this._onMove),o.document.addEventListener("mouseup",this._onMouseUp)),o.addEventListener("blur",this._onMouseUp),this._active=!1,this._startPos=this._pos=n.mousePos(this._el,t),this._inertia=[[Date.now(),this._pos]])},s.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=n.mousePos(this._el,t),r=this._map;r.stop(),this._drainInertiaBuffer(),this._inertia.push([Date.now(),e]),r.transform.setLocationAtPoint(r.transform.pointLocation(this._pos),e),this._fireEvent("drag",t),this._fireEvent("move",t),this._pos=e,t.preventDefault()}},s.prototype._onUp=function(t){var e=this;if(this.isActive()){this._active=!1,this._fireEvent("dragend",t),this._drainInertiaBuffer();var r=function(){e._map.moving=!1,e._fireEvent("moveend",t)},n=this._inertia;if(n.length<2)return void r();var i=n[n.length-1],o=n[0],s=i[1].sub(o[1]),l=(i[0]-o[0])/1e3;if(0===l||i[1].equals(o[1]))return void r();var u=s.mult(.3/l),c=u.mag();c>1400&&(c=1400,u._unit()._mult(c));var p=c/750,h=u.mult(-p/2);this._map.panBy(h,{duration:1e3*p,easing:a,noMoveStart:!0},{originalEvent:t})}},s.prototype._onMouseUp=function(t){this._ignoreEvent(t)||(this._onUp(t),o.document.removeEventListener("mousemove",this._onMove),o.document.removeEventListener("mouseup",this._onMouseUp),o.removeEventListener("blur",this._onMouseUp))},s.prototype._onTouchEnd=function(t){this._ignoreEvent(t)||(this._onUp(t),o.document.removeEventListener("touchmove",this._onMove),o.document.removeEventListener("touchend",this._onTouchEnd))},s.prototype._fireEvent=function(t,e){return this._map.fire(t,{originalEvent:e})},s.prototype._ignoreEvent=function(t){var e=this._map;return!(!e.boxZoom||!e.boxZoom.isActive())||!(!e.dragRotate||!e.dragRotate.isActive())||(t.touches?t.touches.length>1:!!t.ctrlKey||"mousemove"!==t.type&&t.button&&0!==t.button)},s.prototype._drainInertiaBuffer=function(){for(var t=this._inertia,e=Date.now();t.length>0&&e-t[0][0]>160;)t.shift()},e.exports=s},{"../../util/dom":209,"../../util/util":223,"../../util/window":204}],192:[function(t,e,r){"use strict";var n=t("../../util/dom"),i=t("../../util/util"),o=t("../../util/window"),a=i.bezier(0,0,.25,1),s=function(t,e){this._map=t,this._el=e.element||t.getCanvasContainer(),this._button=e.button||"right",this._bearingSnap=e.bearingSnap||0,this._pitchWithRotate=!1!==e.pitchWithRotate,i.bindAll(["_onDown","_onMove","_onUp"],this)};s.prototype.isEnabled=function(){return!!this._enabled},s.prototype.isActive=function(){return!!this._active},s.prototype.enable=function(){this.isEnabled()||(this._el.addEventListener("mousedown",this._onDown),this._enabled=!0)},s.prototype.disable=function(){this.isEnabled()&&(this._el.removeEventListener("mousedown",this._onDown),this._enabled=!1)},s.prototype._onDown=function(t){if(!(this._map.boxZoom&&this._map.boxZoom.isActive()||this._map.dragPan&&this._map.dragPan.isActive()||this.isActive())){if("right"===this._button){var e=t.ctrlKey?0:2,r=t.button;if(void 0!==o.InstallTrigger&&2===t.button&&t.ctrlKey&&o.navigator.platform.toUpperCase().indexOf("MAC")>=0&&(r=0),r!==e)return}else if(t.ctrlKey||0!==t.button)return;n.disableDrag(),o.document.addEventListener("mousemove",this._onMove,{capture:!0}),o.document.addEventListener("mouseup",this._onUp),o.addEventListener("blur",this._onUp),this._active=!1,this._inertia=[[Date.now(),this._map.getBearing()]],this._startPos=this._pos=n.mousePos(this._el,t),this._center=this._map.transform.centerPoint,t.preventDefault()}},s.prototype._onMove=function(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 r=this._pos,i=n.mousePos(this._el,t),o=.8*(r.x-i.x),a=-.5*(r.y-i.y),s=e.getBearing()-o,l=e.getPitch()-a,u=this._inertia,c=u[u.length-1];this._drainInertiaBuffer(),u.push([Date.now(),e._normalizeBearing(s,c[1])]),e.transform.bearing=s,this._pitchWithRotate&&(this._fireEvent("pitch",t),e.transform.pitch=l),this._fireEvent("rotate",t),this._fireEvent("move",t),this._pos=i},s.prototype._onUp=function(t){var e=this;if(o.document.removeEventListener("mousemove",this._onMove,{capture:!0}),o.document.removeEventListener("mouseup",this._onUp),o.removeEventListener("blur",this._onUp),n.enableDrag(),this.isActive()){this._active=!1,this._fireEvent("rotateend",t),this._drainInertiaBuffer();var r=this._map,i=r.getBearing(),s=this._inertia,l=function(){Math.abs(i)<e._bearingSnap?r.resetNorth({noMoveStart:!0},{originalEvent:t}):(e._map.moving=!1,e._fireEvent("moveend",t)),e._pitchWithRotate&&e._fireEvent("pitchend",t)};if(s.length<2)return void l();var u=s[0],c=s[s.length-1],p=s[s.length-2],h=r._normalizeBearing(i,p[1]),f=c[1]-u[1],d=f<0?-1:1,m=(c[0]-u[0])/1e3;if(0===f||0===m)return void l();var v=Math.abs(f*(.25/m));v>180&&(v=180);var y=v/180;h+=d*v*(y/2),Math.abs(r._normalizeBearing(h,0))<this._bearingSnap&&(h=r._normalizeBearing(0,h)),r.rotateTo(h,{duration:1e3*y,easing:a,noMoveStart:!0},{originalEvent:t})}},s.prototype._fireEvent=function(t,e){return this._map.fire(t,{originalEvent:e})},s.prototype._drainInertiaBuffer=function(){for(var t=this._inertia,e=Date.now();t.length>0&&e-t[0][0]>160;)t.shift()},e.exports=s},{"../../util/dom":209,"../../util/util":223,"../../util/window":204}],193:[function(t,e,r){"use strict";function n(t){return t*(2-t)}var i=t("../../util/util"),o=function(t){this._map=t,this._el=t.getCanvasContainer(),i.bindAll(["_onKeyDown"],this)};o.prototype.isEnabled=function(){return!!this._enabled},o.prototype.enable=function(){this.isEnabled()||(this._el.addEventListener("keydown",this._onKeyDown,!1),this._enabled=!0)},o.prototype.disable=function(){this.isEnabled()&&(this._el.removeEventListener("keydown",this._onKeyDown),this._enabled=!1)},o.prototype._onKeyDown=function(t){if(!(t.altKey||t.ctrlKey||t.metaKey)){var e=0,r=0,i=0,o=0,a=0;switch(t.keyCode){case 61:case 107:case 171:case 187:e=1;break;case 189:case 109:case 173:e=-1;break;case 37:t.shiftKey?r=-1:(t.preventDefault(),o=-1);break;case 39:t.shiftKey?r=1:(t.preventDefault(),o=1);break;case 38:t.shiftKey?i=1:(t.preventDefault(),a=-1);break;case 40:t.shiftKey?i=-1:(a=1,t.preventDefault());break;default:return}var s=this._map,l=s.getZoom(),u={duration:300,delayEndEvents:500,easing:n,zoom:e?Math.round(l)+e*(t.shiftKey?2:1):l,bearing:s.getBearing()+15*r,pitch:s.getPitch()+10*i,offset:[100*-o,100*-a],center:s.getCenter()};s.easeTo(u,{originalEvent:t})}},e.exports=o},{"../../util/util":223}],194:[function(t,e,r){"use strict";var n=t("../../util/dom"),i=t("../../util/util"),o=t("../../util/browser"),a=t("../../util/window"),s=a.navigator.userAgent.toLowerCase(),l=-1!==s.indexOf("firefox"),u=-1!==s.indexOf("safari")&&-1===s.indexOf("chrom"),c=function(t){this._map=t,this._el=t.getCanvasContainer(),i.bindAll(["_onWheel","_onTimeout"],this)};c.prototype.isEnabled=function(){return!!this._enabled},c.prototype.enable=function(t){this.isEnabled()||(this._el.addEventListener("wheel",this._onWheel,!1),this._el.addEventListener("mousewheel",this._onWheel,!1),this._enabled=!0,this._aroundCenter=t&&"center"===t.around)},c.prototype.disable=function(){this.isEnabled()&&(this._el.removeEventListener("wheel",this._onWheel),this._el.removeEventListener("mousewheel",this._onWheel),this._enabled=!1)},c.prototype._onWheel=function(t){var e=0;"wheel"===t.type?(e=t.deltaY,l&&t.deltaMode===a.WheelEvent.DOM_DELTA_PIXEL&&(e/=o.devicePixelRatio),t.deltaMode===a.WheelEvent.DOM_DELTA_LINE&&(e*=40)):"mousewheel"===t.type&&(e=-t.wheelDeltaY,u&&(e/=3));var r=o.now(),i=r-(this._time||0);this._pos=n.mousePos(this._el,t),this._time=r,0!==e&&e%4.000244140625==0?this._type="wheel":0!==e&&Math.abs(e)<4?this._type="trackpad":i>400?(this._type=null,this._lastValue=e,this._timeout=setTimeout(this._onTimeout,40)):this._type||(this._type=Math.abs(i*e)<200?"trackpad":"wheel",this._timeout&&(clearTimeout(this._timeout),this._timeout=null,e+=this._lastValue)),t.shiftKey&&e&&(e/=4),this._type&&this._zoom(-e,t),t.preventDefault()},c.prototype._onTimeout=function(){this._type="wheel",this._zoom(-this._lastValue)},c.prototype._zoom=function(t,e){if(0!==t){var r=this._map,n=2/(1+Math.exp(-Math.abs(t/100)));t<0&&0!==n&&(n=1/n);var i=r.ease?r.ease.to:r.transform.scale,o=r.transform.scaleZoom(i*n);r.zoomTo(o,{duration:"wheel"===this._type?200:0,around:this._aroundCenter?r.getCenter():r.unproject(this._pos),delayEndEvents:200,smoothEasing:!0},{originalEvent:e})}},e.exports=c},{"../../util/browser":202,"../../util/dom":209,"../../util/util":223,"../../util/window":204}],195:[function(t,e,r){"use strict";var n=t("../../util/dom"),i=t("../../util/util"),o=t("../../util/window"),a=i.bezier(0,0,.15,1),s=function(t){this._map=t,this._el=t.getCanvasContainer(),i.bindAll(["_onStart","_onMove","_onEnd"],this)};s.prototype.isEnabled=function(){return!!this._enabled},s.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)},s.prototype.disable=function(){this.isEnabled()&&(this._el.classList.remove("mapboxgl-touch-zoom-rotate"),this._el.removeEventListener("touchstart",this._onStart),this._enabled=!1)},s.prototype.disableRotation=function(){this._rotationDisabled=!0},s.prototype.enableRotation=function(){this._rotationDisabled=!1},s.prototype._onStart=function(t){if(2===t.touches.length){var e=n.mousePos(this._el,t.touches[0]),r=n.mousePos(this._el,t.touches[1]);this._startVec=e.sub(r),this._startScale=this._map.transform.scale,this._startBearing=this._map.transform.bearing,this._gestureIntent=void 0,this._inertia=[],o.document.addEventListener("touchmove",this._onMove,!1),o.document.addEventListener("touchend",this._onEnd,!1)}},s.prototype._onMove=function(t){if(2===t.touches.length){var e=n.mousePos(this._el,t.touches[0]),r=n.mousePos(this._el,t.touches[1]),i=e.add(r).div(2),o=e.sub(r),a=o.mag()/this._startVec.mag(),s=this._rotationDisabled?0:180*o.angleWith(this._startVec)/Math.PI,l=this._map;if(this._gestureIntent){var u={duration:0,around:l.unproject(i)};"rotate"===this._gestureIntent&&(u.bearing=this._startBearing+s),"zoom"!==this._gestureIntent&&"rotate"!==this._gestureIntent||(u.zoom=l.transform.scaleZoom(this._startScale*a)),l.stop(),this._drainInertiaBuffer(),this._inertia.push([Date.now(),a,i]),l.easeTo(u,{originalEvent:t})}else{var c=Math.abs(1-a)>.15;Math.abs(s)>10?this._gestureIntent="rotate":c&&(this._gestureIntent="zoom"),this._gestureIntent&&(this._startVec=o,this._startScale=l.transform.scale,this._startBearing=l.transform.bearing)}t.preventDefault()}},s.prototype._onEnd=function(t){o.document.removeEventListener("touchmove",this._onMove),o.document.removeEventListener("touchend",this._onEnd),this._drainInertiaBuffer();var e=this._inertia,r=this._map;if(e.length<2)return void r.snapToNorth({},{originalEvent:t});var n=e[e.length-1],i=e[0],s=r.transform.scaleZoom(this._startScale*n[1]),l=r.transform.scaleZoom(this._startScale*i[1]),u=s-l,c=(n[0]-i[0])/1e3,p=n[2];if(0===c||s===l)return void r.snapToNorth({},{originalEvent:t});var h=.15*u/c;Math.abs(h)>2.5&&(h=h>0?2.5:-2.5);var f=1e3*Math.abs(h/(12*.15)),d=s+h*f/2e3;d<0&&(d=0),r.easeTo({zoom:d,duration:f,easing:a,around:this._aroundCenter?r.getCenter():r.unproject(p)},{originalEvent:t})},s.prototype._drainInertiaBuffer=function(){for(var t=this._inertia,e=Date.now();t.length>2&&e-t[0][0]>160;)t.shift()},e.exports=s},{"../../util/dom":209,"../../util/util":223,"../../util/window":204}],196:[function(t,e,r){"use strict";var n=t("../util/util"),i=t("../util/window"),o=function(){n.bindAll(["_onHashChange","_updateHash"],this)};o.prototype.addTo=function(t){return this._map=t,i.addEventListener("hashchange",this._onHashChange,!1),this._map.on("moveend",this._updateHash),this},o.prototype.remove=function(){return i.removeEventListener("hashchange",this._onHashChange,!1),this._map.off("moveend",this._updateHash),delete this._map,this},o.prototype.getHashString=function(t){var e=this._map.getCenter(),r=Math.round(100*this._map.getZoom())/100,n=Math.max(0,Math.ceil(Math.log(r)/Math.LN2)),i=Math.round(e.lng*Math.pow(10,n))/Math.pow(10,n),o=Math.round(e.lat*Math.pow(10,n))/Math.pow(10,n),a=this._map.getBearing(),s=this._map.getPitch(),l="";return l+=t?"#/"+i+"/"+o+"/"+r:"#"+r+"/"+o+"/"+i,(a||s)&&(l+="/"+Math.round(10*a)/10),s&&(l+="/"+Math.round(s)),l},o.prototype._onHashChange=function(){var t=i.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)},o.prototype._updateHash=function(){var t=this.getHashString();i.history.replaceState("","",t)},e.exports=o},{"../util/util":223,"../util/window":204}],197:[function(t,e,r){"use strict";function n(t){t.parentNode&&t.parentNode.removeChild(t)}var i=t("../util/util"),o=t("../util/browser"),a=t("../util/window"),s=t("../util/window"),l=s.HTMLImageElement,u=t("../util/dom"),c=t("../util/ajax"),p=t("../style/style"),h=t("../style/animation_loop"),f=t("../render/painter"),d=t("../geo/transform"),m=t("./hash"),v=t("./bind_handlers"),y=t("./camera"),g=t("../geo/lng_lat"),_=t("../geo/lng_lat_bounds"),x=t("@mapbox/point-geometry"),b=t("./control/attribution_control"),w=t("./control/logo_control"),T=t("mapbox-gl-supported");t("./events");var S={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,maxTileCacheSize:null,transformRequest:null},z=function(t){function e(e){var r=this;if(e=i.extend({},S,e),null!=e.minZoom&&null!=e.maxZoom&&e.minZoom>e.maxZoom)throw new Error("maxZoom must be greater than minZoom");var n=new d(e.minZoom,e.maxZoom,e.renderWorldCopies);t.call(this,n,e),this._interactive=e.interactive,this._maxTileCacheSize=e.maxTileCacheSize,this._failIfMajorPerformanceCaveat=e.failIfMajorPerformanceCaveat,this._preserveDrawingBuffer=e.preserveDrawingBuffer,this._trackResize=e.trackResize,this._bearingSnap=e.bearingSnap,this._refreshExpiredTiles=e.refreshExpiredTiles;var o=e.transformRequest;if(this._transformRequest=o?function(t,e){return o(t,e)||{url:t}}:function(t){return{url:t}},"string"==typeof e.container){var s=a.document.getElementById(e.container);if(!s)throw new Error("Container '"+e.container+"' not found.");this._container=s}else this._container=e.container;this.animationLoop=new h,e.maxBounds&&this.setMaxBounds(e.maxBounds),i.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(){r.animationLoop.set(300),r._rerender()}),void 0!==a&&(a.addEventListener("online",this._onWindowOnline,!1),a.addEventListener("resize",this._onWindowResize,!1)),v(this,e),this._hash=e.hash&&(new m).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,{localIdeographFontFamily:e.localIdeographFontFamily}),e.attributionControl&&this.addControl(new b),this.addControl(new w,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 r={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 r=t.onAdd(this),n=this._controlPositions[e];return-1!==e.indexOf("bottom")?n.insertBefore(r,n.firstChild):n.appendChild(r),this},e.prototype.removeControl=function(t){return t.onRemove(this),this},e.prototype.addClass=function(t,e){return i.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){i.warnOnce("Style classes are deprecated and will be removed in an upcoming release of Mapbox GL JS.");var r=this._classes.indexOf(t);return r<0||""===t?this:(this._classes.splice(r,1),this._classOptions=e,this.style&&this.style.updateClasses(),this._update(!0))},e.prototype.setClasses=function(t,e){i.warnOnce("Style classes are deprecated and will be removed in an upcoming release of Mapbox GL JS.");for(var r={},n=0;n<t.length;n++)""!==t[n]&&(r[t[n]]=!0);return this._classes=Object.keys(r),this._classOptions=e,this.style&&this.style.updateClasses(),this._update(!0)},e.prototype.hasClass=function(t){return i.warnOnce("Style classes are deprecated and will be removed in an upcoming release of Mapbox GL JS."),this._classes.indexOf(t)>=0},e.prototype.getClasses=function(){return i.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],r=t[1];return this._resizeCanvas(e,r),this.transform.resize(e,r),this.painter.resize(e,r),this.fire("movestart").fire("move").fire("resize").fire("moveend")},e.prototype.getBounds=function(){var t=new _(this.transform.pointLocation(new x(0,this.transform.height)),this.transform.pointLocation(new x(this.transform.width,0)));return(this.transform.angle||this.transform.pitch)&&(t.extend(this.transform.pointLocation(new x(this.transform.size.x,0))),t.extend(this.transform.pointLocation(new x(0,this.transform.size.y)))),t},e.prototype.getMaxBounds=function(){return this.transform.latRange&&2===this.transform.latRange.length&&this.transform.lngRange&&2===this.transform.lngRange.length?new _([this.transform.lngRange[0],this.transform.latRange[0]],[this.transform.lngRange[1],this.transform.latRange[1]]):null},e.prototype.setMaxBounds=function(t){if(t){var e=_.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=null,this.transform.latRange=null,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()<t&&this.setZoom(t),this;throw new Error("minZoom must be between 0 and the current maxZoom, inclusive")},e.prototype.getMinZoom=function(){return this.transform.minZoom},e.prototype.setMaxZoom=function(t){if((t=null===t||void 0===t?22:t)>=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(g.convert(t))},e.prototype.unproject=function(t){return this.transform.pointLocation(x.convert(t))},e.prototype.on=function(e,r,n){var o=this;if(void 0===n)return t.prototype.on.call(this,e,r);var a=function(){if("mouseenter"===e||"mouseover"===e){var t=!1;return{layer:r,listener:n,delegates:{mousemove:function(a){var s=o.getLayer(r)?o.queryRenderedFeatures(a.point,{layers:[r]}):[];s.length?t||(t=!0,n.call(o,i.extend({features:s},a,{type:e}))):t=!1},mouseout:function(){t=!1}}}}if("mouseleave"===e||"mouseout"===e){var a=!1;return{layer:r,listener:n,delegates:{mousemove:function(t){(o.getLayer(r)?o.queryRenderedFeatures(t.point,{layers:[r]}):[]).length?a=!0:a&&(a=!1,n.call(o,i.extend({},t,{type:e})))},mouseout:function(t){a&&(a=!1,n.call(o,i.extend({},t,{type:e})))}}}}var s=function(t){var e=o.getLayer(r)?o.queryRenderedFeatures(t.point,{layers:[r]}):[];e.length&&n.call(o,i.extend({features:e},t))};return{layer:r,listener:n,delegates:(l={},l[e]=s,l)};var l}();this._delegatedListeners=this._delegatedListeners||{},this._delegatedListeners[e]=this._delegatedListeners[e]||[],this._delegatedListeners[e].push(a);for(var s in a.delegates)o.on(s,a.delegates[s]);return this},e.prototype.off=function(e,r,n){var i=this;if(void 0===n)return t.prototype.off.call(this,e,r);if(this._delegatedListeners&&this._delegatedListeners[e])for(var o=this._delegatedListeners[e],a=0;a<o.length;a++){var s=o[a];if(s.layer===r&&s.listener===n){for(var l in s.delegates)i.off(l,s.delegates[l]);return o.splice(a,1),i}}return this},e.prototype.queryRenderedFeatures=function(){for(var t=[],e=arguments.length;e--;)t[e]=arguments[e];var r,n={};return 2===t.length?(r=arguments[0],n=arguments[1]):1===t.length&&function(t){return t instanceof x||Array.isArray(t)}(t[0])?r=t[0]:1===t.length&&(n=t[0]),this.style?this.style.queryRenderedFeatures(this._makeQueryGeometry(r),n,this.transform.zoom,this.transform.angle):[]},e.prototype._makeQueryGeometry=function(t){var e=this;void 0===t&&(t=[x.convert([0,0]),x.convert([this.transform.width,this.transform.height])]);var r;if(t instanceof x||"number"==typeof t[0])r=[x.convert(t)];else{var n=[x.convert(t[0]),x.convert(t[1])];r=[n[0],new x(n[1].x,n[0].y),n[1],new x(n[0].x,n[1].y),n[0]]}return r=r.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){if((!e||!1!==e.diff&&!e.localIdeographFontFamily)&&this.style&&t&&!(t instanceof p)&&"string"!=typeof t)try{return this.style.setState(t)&&this._update(!0),this}catch(t){i.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),this.off("move",this.style._redoPlacement)),t?(this.style=t instanceof p?t:new p(t,this,e||{}),this.style.setEventedParent(this,{style:this.style}),this.on("rotate",this.style._redoPlacement),this.on("pitch",this.style._redoPlacement),this.on("move",this.style._redoPlacement),this):(this.style=null,this)},e.prototype.getStyle=function(){if(this.style)return this.style.serialize()},e.prototype.isStyleLoaded=function(){return this.style?this.style.loaded():i.warnOnce("There is no style added to the map.")},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.areTilesLoaded=function(){var t=this.style&&this.style.sourceCaches;for(var e in t){var r=t[e],n=r._tiles;for(var i in n){var o=n[i];if("loaded"!==o.state&&"errored"!==o.state)return!1}}return!0},e.prototype.addSourceType=function(t,e,r){return this.style.addSourceType(t,e,r)},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,r){void 0===r&&(r={});var n=r.pixelRatio;void 0===n&&(n=1);var i=r.sdf;if(void 0===i&&(i=!1),e instanceof l)e=o.getImageData(e);else if(void 0===e.width||void 0===e.height)return this.fire("error",{error:new Error("Invalid arguments to map.addImage(). The second argument must be an `HTMLImageElement`, `ImageData`, or object with `width`, `height`, and `data` properties with the same format as `ImageData`")});this.style.addImage(t,{data:e,pixelRatio:n,sdf:i})},e.prototype.removeImage=function(t){this.style.removeImage(t)},e.prototype.loadImage=function(t,e){c.getImage(this._transformRequest(t,c.ResourceType.Image),e)},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,r){return this.style.setLayerZoomRange(t,e,r),this._update(!0),this},e.prototype.getFilter=function(t){return this.style.getFilter(t)},e.prototype.setPaintProperty=function(t,e,r,n){return this.style.setPaintProperty(t,e,r,n),this._update(!0),this},e.prototype.getPaintProperty=function(t,e,r){return this.style.getPaintProperty(t,e,r)},e.prototype.setLayoutProperty=function(t,e,r){return this.style.setLayoutProperty(t,e,r),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=u.create("div","mapboxgl-canvas-container",t);this._interactive&&e.classList.add("mapboxgl-interactive"),this._canvas=u.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 r=this._containerDimensions();this._resizeCanvas(r[0],r[1]);var n=this._controlContainer=u.create("div","mapboxgl-control-container",t),i=this._controlPositions={};["top-left","top-right","bottom-left","bottom-right"].forEach(function(t){i[t]=u.create("div","mapboxgl-ctrl-"+t,n)})},e.prototype._resizeCanvas=function(t,e){var r=a.devicePixelRatio||1;this._canvas.width=r*t,this._canvas.height=r*e,this._canvas.style.width=t+"px",this._canvas.style.height=e+"px"},e.prototype._setupPainter=function(){var t=i.extend({failIfMajorPerformanceCaveat:this._failIfMajorPerformanceCaveat,preserveDrawingBuffer:this._preserveDrawingBuffer},T.webGLContextAttributes),e=this._canvas.getContext("webgl",t)||this._canvas.getContext("experimental-webgl",t);if(!e)return void this.fire("error",{error:new Error("Failed to initialize WebGL")});this.painter=new f(e,this.transform)},e.prototype._contextLost=function(t){t.preventDefault(),this._frameId&&(o.cancelFrame(this._frameId),this._frameId=null),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(),o.cancelFrame(this._frameId),this._frameId=null,this.setStyle(null),void 0!==a&&(a.removeEventListener("resize",this._onWindowResize,!1),a.removeEventListener("online",this._onWindowOnline,!1));var t=this.painter.gl.getExtension("WEBGL_lose_context");t&&t.loseContext(),n(this._canvasContainer),n(this._controlContainer),this._container.classList.remove("mapboxgl-map"),this.fire("remove")},e.prototype._rerender=function(){this.style&&!this._frameId&&(this._frameId=o.frame(this._render))},e.prototype._onWindowOnline=function(){this._update()},e.prototype._onWindowResize=function(){this._trackResize&&this.stop().resize()._update()},r.showTileBoundaries.get=function(){return!!this._showTileBoundaries},r.showTileBoundaries.set=function(t){this._showTileBoundaries!==t&&(this._showTileBoundaries=t,this._update())},r.showCollisionBoxes.get=function(){return!!this._showCollisionBoxes},r.showCollisionBoxes.set=function(t){this._showCollisionBoxes!==t&&(this._showCollisionBoxes=t,this.style._redoPlacement())},r.showOverdrawInspector.get=function(){return!!this._showOverdrawInspector},r.showOverdrawInspector.set=function(t){this._showOverdrawInspector!==t&&(this._showOverdrawInspector=t,this._update())},r.repaint.get=function(){return!!this._repaint},r.repaint.set=function(t){this._repaint=t,this._update()},r.vertices.get=function(){return!!this._vertices},r.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,r),e}(y);e.exports=z},{"../geo/lng_lat":58,"../geo/lng_lat_bounds":59,"../geo/transform":60,"../render/painter":79,"../style/animation_loop":150,"../style/style":156,"../util/ajax":201,"../util/browser":202,"../util/dom":209,"../util/util":223,"../util/window":204,"./bind_handlers":180,"./camera":181,"./control/attribution_control":182,"./control/logo_control":185,"./events":188,"./hash":196,"@mapbox/point-geometry":2,"mapbox-gl-supported":28}],198:[function(t,e,r){"use strict";var n=t("../util/dom"),i=t("../geo/lng_lat"),o=t("@mapbox/point-geometry"),a=t("../util/smart_wrap"),s=t("../util/util"),l=s.bindAll,u=function(t,e){this._offset=o.convert(e&&e.offset||[0,0]),l(["_update","_onMapClick"],this),t||(t=n.create("div")),t.classList.add("mapboxgl-marker"),this._element=t,this._popup=null};u.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},u.prototype.remove=function(){return this._map&&(this._map.off("click",this._onMapClick),this._map.off("move",this._update),this._map.off("moveend",this._update),delete this._map),n.remove(this._element),this._popup&&this._popup.remove(),this},u.prototype.getLngLat=function(){return this._lngLat},u.prototype.setLngLat=function(t){return this._lngLat=i.convert(t),this._pos=null,this._popup&&this._popup.setLngLat(this._lngLat),this._update(),this},u.prototype.getElement=function(){return this._element},u.prototype.setPopup=function(t){return this._popup&&(this._popup.remove(),this._popup=null),t&&("offset"in t.options||(t.options.offset=this._offset),this._popup=t,this._popup.setLngLat(this._lngLat)),this},u.prototype._onMapClick=function(t){var e=t.originalEvent.target,r=this._element;this._popup&&(e===r||r.contains(e))&&this.togglePopup()},u.prototype.getPopup=function(){return this._popup},u.prototype.togglePopup=function(){var t=this._popup;return t?(t.isOpen()?t.remove():t.addTo(this._map),this):this},u.prototype._update=function(t){this._map&&(this._map.transform.renderWorldCopies&&(this._lngLat=a(this._lngLat,this._pos,this._map.transform)),this._pos=this._map.project(this._lngLat)._add(this._offset),t&&"moveend"!==t.type||(this._pos=this._pos.round()),n.setTransform(this._element,"translate(-50%, -50%) translate("+this._pos.x+"px, "+this._pos.y+"px)"))},e.exports=u},{"../geo/lng_lat":58,"../util/dom":209,"../util/smart_wrap":219,"../util/util":223,"@mapbox/point-geometry":2}],199:[function(t,e,r){"use strict";function n(t){if(t){if("number"==typeof t){var e=Math.round(Math.sqrt(.5*Math.pow(t,2)));return{top:new l(0,t),"top-left":new l(e,e),"top-right":new l(-e,e),bottom:new l(0,-t),"bottom-left":new l(e,-e),"bottom-right":new l(-e,-e),left:new l(t,0),right:new l(-t,0)}}if(t instanceof l||Array.isArray(t)){var r=l.convert(t);return{top:r,"top-left":r,"top-right":r,bottom:r,"bottom-left":r,"bottom-right":r,left:r,right:r}}return{top:l.convert(t.top||[0,0]),"top-left":l.convert(t["top-left"]||[0,0]),"top-right":l.convert(t["top-right"]||[0,0]),bottom:l.convert(t.bottom||[0,0]),"bottom-left":l.convert(t["bottom-left"]||[0,0]),"bottom-right":l.convert(t["bottom-right"]||[0,0]),left:l.convert(t.left||[0,0]),right:l.convert(t.right||[0,0])}}return n(new l(0,0))}var i=t("../util/util"),o=t("../util/evented"),a=t("../util/dom"),s=t("../geo/lng_lat"),l=t("@mapbox/point-geometry"),u=t("../util/window"),c=t("../util/smart_wrap"),p={closeButton:!0,closeOnClick:!0},h=function(t){function e(e){t.call(this),this.options=i.extend(Object.create(p),e),i.bindAll(["_update","_onClickClose"],this)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.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},e.prototype.isOpen=function(){return!!this._map},e.prototype.remove=function(){return this._content&&a.remove(this._content),this._container&&(a.remove(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},e.prototype.getLngLat=function(){return this._lngLat},e.prototype.setLngLat=function(t){return this._lngLat=s.convert(t),this._pos=null,this._update(),this},e.prototype.setText=function(t){return this.setDOMContent(u.document.createTextNode(t))},e.prototype.setHTML=function(t){var e,r=u.document.createDocumentFragment(),n=u.document.createElement("body");for(n.innerHTML=t;e=n.firstChild;)r.appendChild(e);return this.setDOMContent(r)},e.prototype.setDOMContent=function(t){return this._createContent(),this._content.appendChild(t),this._update(),this},e.prototype._createContent=function(){this._content&&a.remove(this._content),this._content=a.create("div","mapboxgl-popup-content",this._container),this.options.closeButton&&(this._closeButton=a.create("button","mapboxgl-popup-close-button",this._content),this._closeButton.type="button",this._closeButton.setAttribute("aria-label","Close popup"),this._closeButton.innerHTML="&#215;",this._closeButton.addEventListener("click",this._onClickClose))},e.prototype._update=function(){if(this._map&&this._lngLat&&this._content){this._container||(this._container=a.create("div","mapboxgl-popup",this._map.getContainer()),this._tip=a.create("div","mapboxgl-popup-tip",this._container),this._container.appendChild(this._content)),this._map.transform.renderWorldCopies&&(this._lngLat=c(this._lngLat,this._pos,this._map.transform));var t=this._pos=this._map.project(this._lngLat),e=this.options.anchor,r=n(this.options.offset);if(!e){var i=this._container.offsetWidth,o=this._container.offsetHeight;e=t.y+r.bottom.y<o?["top"]:t.y>this._map.transform.height-o?["bottom"]:[],t.x<i/2?e.push("left"):t.x>this._map.transform.width-i/2&&e.push("right"),e=0===e.length?"bottom":e.join("-")}var s=t.add(r[e]).round(),l={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%)"},u=this._container.classList;for(var p in l)u.remove("mapboxgl-popup-anchor-"+p);u.add("mapboxgl-popup-anchor-"+e),a.setTransform(this._container,l[e]+" translate("+s.x+"px,"+s.y+"px)")}},e.prototype._onClickClose=function(){this.remove()},e}(o);e.exports=h},{"../geo/lng_lat":58,"../util/dom":209,"../util/evented":210,"../util/smart_wrap":219,"../util/util":223,"../util/window":204,"@mapbox/point-geometry":2}],200:[function(t,e,r){"use strict";var n=t("./util"),i=function(t,e,r){this.target=t,this.parent=e,this.mapId=r,this.callbacks={},this.callbackID=0,n.bindAll(["receive"],this),this.target.addEventListener("message",this.receive,!1)};i.prototype.send=function(t,e,r,n,i){var o=r?this.mapId+":"+this.callbackID++:null;r&&(this.callbacks[o]=r),this.target.postMessage({targetMapId:i,sourceMapId:this.mapId,type:t,id:String(o),data:e},n)},i.prototype.receive=function(t){var e,r=this,n=t.data,i=n.id;if(!n.targetMapId||this.mapId===n.targetMapId){var o=function(t,e,n){r.target.postMessage({sourceMapId:r.mapId,type:"<response>",id:String(i),error:t?String(t):null,data:e},n)};if("<response>"===n.type)e=this.callbacks[n.id],delete this.callbacks[n.id],e&&n.error?e(new Error(n.error)):e&&e(null,n.data);else if(void 0!==n.id&&this.parent[n.type])this.parent[n.type](n.sourceMapId,n.data,o);else if(void 0!==n.id&&this.parent.getWorkerSource){var a=n.type.split("."),s=this.parent.getWorkerSource(n.sourceMapId,a[0]);s[a[1]](n.data,o)}else this.parent[n.type](n.data)}},i.prototype.remove=function(){this.target.removeEventListener("message",this.receive,!1)},e.exports=i},{"./util":223}],201:[function(t,e,r){"use strict";function n(t){var e=new o.XMLHttpRequest;e.open("GET",t.url,!0);for(var r in t.headers)e.setRequestHeader(r,t.headers[r]);return e.withCredentials="include"===t.credentials,e}function i(t){var e=o.document.createElement("a");return e.href=t,e.protocol===o.document.location.protocol&&e.host===o.document.location.host}var o=t("./window"),a={Unknown:"Unknown",Style:"Style",Source:"Source",Tile:"Tile",Glyphs:"Glyphs",SpriteImage:"SpriteImage",SpriteJSON:"SpriteJSON",Image:"Image"};r.ResourceType=a,"function"==typeof Object.freeze&&Object.freeze(a);var s=function(t){function e(e,r){t.call(this,e),this.status=r}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e}(Error);r.getJSON=function(t,e){var r=n(t);return r.setRequestHeader("Accept","application/json"),r.onerror=function(){e(new Error(r.statusText))},r.onload=function(){if(r.status>=200&&r.status<300&&r.response){var t;try{t=JSON.parse(r.response)}catch(t){return e(t)}e(null,t)}else e(new s(r.statusText,r.status))},r.send(),r},r.getArrayBuffer=function(t,e){var r=n(t);return r.responseType="arraybuffer",r.onerror=function(){e(new Error(r.statusText))},r.onload=function(){var t=r.response;if(0===t.byteLength&&200===r.status)return e(new Error("http status 200 returned without content."));r.status>=200&&r.status<300&&r.response?e(null,{data:t,cacheControl:r.getResponseHeader("Cache-Control"),expires:r.getResponseHeader("Expires")}):e(new s(r.statusText,r.status))},r.send(),r};r.getImage=function(t,e){return r.getArrayBuffer(t,function(t,r){if(t)e(t);else if(r){var n=new o.Image,i=o.URL||o.webkitURL;n.onload=function(){e(null,n),i.revokeObjectURL(n.src)};var a=new o.Blob([new Uint8Array(r.data)],{type:"image/png"});n.cacheControl=r.cacheControl,n.expires=r.expires,n.src=r.data.byteLength?i.createObjectURL(a):"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAAC0lEQVQYV2NgAAIAAAUAAarVyFEAAAAASUVORK5CYII="}})},r.getVideo=function(t,e){var r=o.document.createElement("video");r.onloadstart=function(){e(null,r)};for(var n=0;n<t.length;n++){var a=o.document.createElement("source");i(t[n])||(r.crossOrigin="Anonymous"),a.src=t[n],r.appendChild(a)}return r}},{"./window":204}],202:[function(t,e,r){"use strict";var n=t("./window"),i=n.performance&&n.performance.now?n.performance.now.bind(n.performance):Date.now.bind(Date),o=n.requestAnimationFrame||n.mozRequestAnimationFrame||n.webkitRequestAnimationFrame||n.msRequestAnimationFrame,a=n.cancelAnimationFrame||n.mozCancelAnimationFrame||n.webkitCancelAnimationFrame||n.msCancelAnimationFrame;e.exports={now:i,frame:function(t){return o(t)},cancelFrame:function(t){return a(t)},timed:function(t,e,r){function n(){if(!a){var l=i();l>=s+e?t.call(r,1):(t.call(r,(l-s)/e),o(n))}}if(!e)return t.call(r,1),null;var a=!1,s=i();return o(n),function(){a=!0}},getImageData:function(t){var e=n.document.createElement("canvas"),r=e.getContext("2d");if(!r)throw new Error("failed to create canvas 2d context");return e.width=t.width,e.height=t.height,r.drawImage(t,0,0,t.width,t.height),r.getImageData(0,0,t.width,t.height)},hardwareConcurrency:n.navigator.hardwareConcurrency||4,get devicePixelRatio(){return n.devicePixelRatio},supportsWebp:!1};var s=n.document.createElement("img");s.onload=function(){e.exports.supportsWebp=!0},s.src="data:image/webp;base64,UklGRh4AAABXRUJQVlA4TBEAAAAvAQAAAAfQ//73v/+BiOh/AAA="},{"./window":204}],203:[function(t,e,r){"use strict";var n=t("webworkify"),i=t("../window"),o=i.URL.createObjectURL(new n(t("../../source/worker"),{bare:!0}));e.exports=function(){return new i.Worker(o)}},{"../../source/worker":105,"../window":204,webworkify:39}],204:[function(t,e,r){"use strict";e.exports=self},{}],205:[function(t,e,r){"use strict";function n(t,e){return e.area-t.area}var i=t("quickselect"),o=t("./util").calculateSignedArea;e.exports=function(t,e){var r=t.length;if(r<=1)return[t];for(var a,s,l=[],u=0;u<r;u++){var c=o(t[u]);0!==c&&(t[u].area=Math.abs(c),void 0===s&&(s=c<0),s===c<0?(a&&l.push(a),a=[t[u]]):a.push(t[u]))}if(a&&l.push(a),e>1)for(var p=0;p<l.length;p++)l[p].length<=e||(i(l[p],e,1,l[p].length-1,n),l[p]=l[p].slice(0,e));return l}},{"./util":223,quickselect:31}],206:[function(t,e,r){"use strict";var n={API_URL:"https://api.mapbox.com",REQUIRE_ACCESS_TOKEN:!0,ACCESS_TOKEN:null};e.exports=n},{}],207:[function(t,e,r){"use strict";var n=function(t){var e=this;this._stringToNumber={},this._numberToString=[];for(var r=0;r<t.length;r++){var n=t[r];e._stringToNumber[n]=r,e._numberToString[r]=n}};n.prototype.encode=function(t){return this._stringToNumber[t]},n.prototype.decode=function(t){return this._numberToString[t]},e.exports=n},{}],208:[function(t,e,r){"use strict";var n=t("./util"),i=t("./actor"),o=function(t,e){var r=this;this.workerPool=t,this.actors=[],this.currentActor=0,this.id=n.uniqueId();for(var o=this.workerPool.acquire(this.id),a=0;a<o.length;a++){var s=o[a],l=new i(s,e,r.id);l.name="Worker "+a,r.actors.push(l)}};o.prototype.broadcast=function(t,e,r){r=r||function(){},n.asyncAll(this.actors,function(r,n){r.send(t,e,n)},r)},o.prototype.send=function(t,e,r,n,i){return("number"!=typeof n||isNaN(n))&&(n=this.currentActor=(this.currentActor+1)%this.actors.length),this.actors[n].send(t,e,r,i),n},o.prototype.remove=function(){this.actors.forEach(function(t){t.remove()}),this.actors=[],this.workerPool.release(this.id)},e.exports=o},{"./actor":200,"./util":223}],209:[function(t,e,r){"use strict";function n(t){for(var e=0;e<t.length;e++)if(t[e]in s)return t[e];return t[0]}var i=t("@mapbox/point-geometry"),o=t("./window");r.create=function(t,e,r){var n=o.document.createElement(t);return e&&(n.className=e),r&&r.appendChild(n),n};var a,s=o.document.documentElement.style,l=n(["userSelect","MozUserSelect","WebkitUserSelect","msUserSelect"]);r.disableDrag=function(){l&&(a=s[l],s[l]="none")},r.enableDrag=function(){l&&(s[l]=a)};var u=n(["transform","WebkitTransform"]);r.setTransform=function(t,e){t.style[u]=e};var c=function(t){t.preventDefault(),t.stopPropagation(),o.removeEventListener("click",c,!0)};r.suppressClick=function(){o.addEventListener("click",c,!0),o.setTimeout(function(){o.removeEventListener("click",c,!0)},0)},r.mousePos=function(t,e){var r=t.getBoundingClientRect();return e=e.touches?e.touches[0]:e,new i(e.clientX-r.left-t.clientLeft,e.clientY-r.top-t.clientTop)},r.touchPos=function(t,e){for(var r=t.getBoundingClientRect(),n=[],o="touchend"===e.type?e.changedTouches:e.touches,a=0;a<o.length;a++)n.push(new i(o[a].clientX-r.left-t.clientLeft,o[a].clientY-r.top-t.clientTop));return n},r.remove=function(t){t.parentNode&&t.parentNode.removeChild(t)}},{"./window":204,"@mapbox/point-geometry":2}],210:[function(t,e,r){"use strict";function n(t,e,r){r[t]=r[t]||[],r[t].push(e)}function i(t,e,r){if(r&&r[t]){var n=r[t].indexOf(e);-1!==n&&r[t].splice(n,1)}}var o=t("./util"),a=function(){};a.prototype.on=function(t,e){return this._listeners=this._listeners||{},n(t,e,this._listeners),this},a.prototype.off=function(t,e){return i(t,e,this._listeners),i(t,e,this._oneTimeListeners),this},a.prototype.once=function(t,e){return this._oneTimeListeners=this._oneTimeListeners||{},n(t,e,this._oneTimeListeners),this},a.prototype.fire=function(t,e){var r=this;if(this.listens(t)){e=o.extend({},e,{type:t,target:this});for(var n=this._listeners&&this._listeners[t]?this._listeners[t].slice():[],a=0;a<n.length;a++)n[a].call(r,e);for(var s=this._oneTimeListeners&&this._oneTimeListeners[t]?this._oneTimeListeners[t].slice():[],l=0;l<s.length;l++)s[l].call(r,e),i(t,s[l],r._oneTimeListeners);this._eventedParent&&this._eventedParent.fire(t,o.extend({},e,"function"==typeof this._eventedParentData?this._eventedParentData():this._eventedParentData))}else o.endsWith(t,"error")&&console.error(e&&e.error||e||"Empty error event");return this},a.prototype.listens=function(t){return this._listeners&&this._listeners[t]&&this._listeners[t].length>0||this._oneTimeListeners&&this._oneTimeListeners[t]&&this._oneTimeListeners[t].length>0||this._eventedParent&&this._eventedParent.listens(t)},a.prototype.setEventedParent=function(t,e){return this._eventedParent=t,this._eventedParentData=e,this},e.exports=a},{"./util":223}],211:[function(t,e,r){"use strict";function n(t,e){return e.max-t.max}function i(t,e,r,n){this.p=new l(t,e),this.h=r,this.d=o(this.p,n),this.max=this.d+this.h*Math.SQRT2}function o(t,e){for(var r=!1,n=1/0,i=0;i<e.length;i++)for(var o=e[i],a=0,s=o.length,l=s-1;a<s;l=a++){var c=o[a],p=o[l];c.y>t.y!=p.y>t.y&&t.x<(p.x-c.x)*(t.y-c.y)/(p.y-c.y)+c.x&&(r=!r),n=Math.min(n,u(t,c,p))}return(r?1:-1)*Math.sqrt(n)}function a(t){for(var e=0,r=0,n=0,o=t[0],a=0,s=o.length,l=s-1;a<s;l=a++){var u=o[a],c=o[l],p=u.x*c.y-c.x*u.y;r+=(u.x+c.x)*p,n+=(u.y+c.y)*p,e+=3*p}return new i(r/e,n/e,0,t)}var s=t("tinyqueue"),l=t("@mapbox/point-geometry"),u=t("./intersection_tests").distToSegmentSquared;e.exports=function(t,e,r){void 0===e&&(e=1),void 0===r&&(r=!1);for(var o=1/0,u=1/0,c=-1/0,p=-1/0,h=t[0],f=0;f<h.length;f++){var d=h[f];(!f||d.x<o)&&(o=d.x),(!f||d.y<u)&&(u=d.y),(!f||d.x>c)&&(c=d.x),(!f||d.y>p)&&(p=d.y)}var m=c-o,v=p-u,y=Math.min(m,v),g=y/2,_=new s(null,n);if(0===y)return new l(o,u);for(var x=o;x<c;x+=y)for(var b=u;b<p;b+=y)_.push(new i(x+g,b+g,g,t));for(var w=a(t),T=_.length;_.length;){var S=_.pop();(S.d>w.d||!w.d)&&(w=S,r&&console.log("found best %d after %d probes",Math.round(1e4*S.d)/1e4,T)),S.max-w.d<=e||(g=S.h/2,_.push(new i(S.p.x-g,S.p.y-g,g,t)),_.push(new i(S.p.x+g,S.p.y-g,g,t)),_.push(new i(S.p.x-g,S.p.y+g,g,t)),_.push(new i(S.p.x+g,S.p.y+g,g,t)),T+=4)}return r&&(console.log("num probes: "+T),console.log("best distance: "+w.d)),w.p}},{"./intersection_tests":214,"@mapbox/point-geometry":2,tinyqueue:33}],212:[function(t,e,r){"use strict";var n,i=t("./worker_pool");e.exports=function(){return n||(n=new i),n}},{"./worker_pool":226}],213:[function(t,e,r){"use strict";function n(t,e,r){var n=t.width,i=t.height;if(r){if(r.length!==n*i*e)throw new RangeError("mismatched image size")}else r=new Uint8Array(n*i*e);return{width:n,height:i,data:r}}function i(t,e,r){var i=e.width,a=e.height;if(i===t.width&&a===t.height)return t;var s=n({width:i,height:a},r);o(t,s,{x:0,y:0},{x:0,y:0},{width:Math.min(t.width,i),height:Math.min(t.height,a)},r),t.width=i,t.height=a,t.data=s.data}function o(t,e,r,n,i,o){if(0===i.width||0===i.height)return e;if(i.width>t.width||i.height>t.height||r.x>t.width-i.width||r.y>t.height-i.height)throw new RangeError("out of range source coordinates for image copy");if(i.width>e.width||i.height>e.height||n.x>e.width-i.width||n.y>e.height-i.height)throw new RangeError("out of range destination coordinates for image copy");for(var a=t.data,s=e.data,l=0;l<i.height;l++)for(var u=((r.y+l)*t.width+r.x)*o,c=((n.y+l)*e.width+n.x)*o,p=0;p<i.width*o;p++)s[c+p]=a[u+p];return e}var a=function(){};a.create=function(t,e){return n(t,1,e)},a.resize=function(t,e){i(t,e,1)},a.copy=function(t,e,r,n,i){o(t,e,r,n,i,1)};var s=function(){};s.create=function(t,e){return n(t,4,e)},s.resize=function(t,e){i(t,e,4)},s.copy=function(t,e,r,n,i){o(t,e,r,n,i,4)},e.exports={AlphaImage:a,RGBAImage:s}},{}],214:[function(t,e,r){"use strict";function n(t,e){for(var r=0;r<t.length;r++)if(f(e,t[r]))return!0;for(var n=0;n<e.length;n++)if(f(t,e[n]))return!0;return!!l(t,e)}function i(t,e,r){for(var n=0;n<t.length;n++)for(var i=t[n],o=0;o<e.length;o++)for(var a=e[o],s=0;s<a.length;s++){var l=a[s];if(f(i,l))return!0;if(c(l,i,r))return!0}return!1}function o(t,e){if(1===t.length&&1===t[0].length)return h(e,t[0][0]);for(var r=0;r<e.length;r++)for(var n=e[r],i=0;i<n.length;i++)if(h(t,n[i]))return!0;for(var o=0;o<t.length;o++){for(var a=t[o],s=0;s<a.length;s++)if(h(e,a[s]))return!0;for(var u=0;u<e.length;u++)if(l(a,e[u]))return!0}return!1}function a(t,e,r){for(var n=0;n<e.length;n++)for(var i=e[n],o=0;o<t.length;o++){var a=t[o];if(a.length>=3)for(var l=0;l<i.length;l++)if(f(a,i[l]))return!0;if(s(a,i,r))return!0}return!1}function s(t,e,r){if(t.length>1){if(l(t,e))return!0;for(var n=0;n<e.length;n++)if(c(e[n],t,r))return!0}for(var i=0;i<t.length;i++)if(c(t[i],e,r))return!0;return!1}function l(t,e){if(0===t.length||0===e.length)return!1;for(var r=0;r<t.length-1;r++)for(var n=t[r],i=t[r+1],o=0;o<e.length-1;o++){var a=e[o],s=e[o+1];if(u(n,i,a,s))return!0}return!1}function u(t,e,r,n){return m(t,r,n)!==m(e,r,n)&&m(t,e,r)!==m(t,e,n)}function c(t,e,r){var n=r*r;if(1===e.length)return t.distSqr(e[0])<n;for(var i=1;i<e.length;i++)if(p(t,e[i-1],e[i])<n)return!0;return!1}function p(t,e,r){var n=e.distSqr(r);if(0===n)return t.distSqr(e);var i=((t.x-e.x)*(r.x-e.x)+(t.y-e.y)*(r.y-e.y))/n;return i<0?t.distSqr(e):i>1?t.distSqr(r):t.distSqr(r.sub(e)._mult(i)._add(e))}function h(t,e){for(var r,n,i,o=!1,a=0;a<t.length;a++){r=t[a];for(var s=0,l=r.length-1;s<r.length;l=s++)n=r[s],i=r[l],n.y>e.y!=i.y>e.y&&e.x<(i.x-n.x)*(e.y-n.y)/(i.y-n.y)+n.x&&(o=!o)}return o}function f(t,e){for(var r=!1,n=0,i=t.length-1;n<t.length;i=n++){var o=t[n],a=t[i];o.y>e.y!=a.y>e.y&&e.x<(a.x-o.x)*(e.y-o.y)/(a.y-o.y)+o.x&&(r=!r)}return r}var d=t("./util"),m=d.isCounterClockwise;e.exports={multiPolygonIntersectsBufferedMultiPoint:i,multiPolygonIntersectsMultiPolygon:o,multiPolygonIntersectsBufferedMultiLine:a,polygonIntersectsPolygon:n,distToSegmentSquared:p}},{"./util":223}],215:[function(t,e,r){"use strict";var n={"Latin-1 Supplement":function(t){return t>=128&&t<=255},Arabic:function(t){return t>=1536&&t<=1791},"Arabic Supplement":function(t){return t>=1872&&t<=1919},"Arabic Extended-A":function(t){return t>=2208&&t<=2303},"Hangul Jamo":function(t){return t>=4352&&t<=4607},"Unified Canadian Aboriginal Syllabics":function(t){return t>=5120&&t<=5759},"Unified Canadian Aboriginal Syllabics Extended":function(t){return t>=6320&&t<=6399},"General Punctuation":function(t){return t>=8192&&t<=8303},"Letterlike Symbols":function(t){return t>=8448&&t<=8527},"Number Forms":function(t){return t>=8528&&t<=8591},"Miscellaneous Technical":function(t){return t>=8960&&t<=9215},"Control Pictures":function(t){return t>=9216&&t<=9279},"Optical Character Recognition":function(t){return t>=9280&&t<=9311},"Enclosed Alphanumerics":function(t){return t>=9312&&t<=9471},"Geometric Shapes":function(t){return t>=9632&&t<=9727},"Miscellaneous Symbols":function(t){return t>=9728&&t<=9983},"Miscellaneous Symbols and Arrows":function(t){return t>=11008&&t<=11263},"CJK Radicals Supplement":function(t){return t>=11904&&t<=12031},"Kangxi Radicals":function(t){return t>=12032&&t<=12255},"Ideographic Description Characters":function(t){return t>=12272&&t<=12287},"CJK Symbols and Punctuation":function(t){return t>=12288&&t<=12351},Hiragana:function(t){return t>=12352&&t<=12447},Katakana:function(t){return t>=12448&&t<=12543},Bopomofo:function(t){return t>=12544&&t<=12591},"Hangul Compatibility Jamo":function(t){return t>=12592&&t<=12687},Kanbun:function(t){return t>=12688&&t<=12703},"Bopomofo Extended":function(t){return t>=12704&&t<=12735},"CJK Strokes":function(t){return t>=12736&&t<=12783},"Katakana Phonetic Extensions":function(t){return t>=12784&&t<=12799},"Enclosed CJK Letters and Months":function(t){return t>=12800&&t<=13055},"CJK Compatibility":function(t){return t>=13056&&t<=13311},"CJK Unified Ideographs Extension A":function(t){return t>=13312&&t<=19903},"Yijing Hexagram Symbols":function(t){return t>=19904&&t<=19967},"CJK Unified Ideographs":function(t){return t>=19968&&t<=40959},"Yi Syllables":function(t){return t>=40960&&t<=42127},"Yi Radicals":function(t){return t>=42128&&t<=42191},"Hangul Jamo Extended-A":function(t){return t>=43360&&t<=43391},"Hangul Syllables":function(t){return t>=44032&&t<=55215},"Hangul Jamo Extended-B":function(t){return t>=55216&&t<=55295},"Private Use Area":function(t){return t>=57344&&t<=63743},"CJK Compatibility Ideographs":function(t){return t>=63744&&t<=64255},"Arabic Presentation Forms-A":function(t){return t>=64336&&t<=65023},"Vertical Forms":function(t){return t>=65040&&t<=65055},"CJK Compatibility Forms":function(t){return t>=65072&&t<=65103},"Small Form Variants":function(t){return t>=65104&&t<=65135},"Arabic Presentation Forms-B":function(t){return t>=65136&&t<=65279},"Halfwidth and Fullwidth Forms":function(t){return t>=65280&&t<=65519}};e.exports=n},{}],216:[function(t,e,r){"use strict";var n=function(t,e){this.max=t,this.onRemove=e,this.reset()};n.prototype.reset=function(){var t=this;for(var e in t.data)t.onRemove(t.data[e]);return this.data={},this.order=[],this},n.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},n.prototype.has=function(t){return t in this.data},n.prototype.keys=function(){return this.order},n.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},n.prototype.getWithoutRemoving=function(t){return this.has(t)?this.data[t]:null},n.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},n.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},e.exports=n},{}],217:[function(t,e,r){"use strict";function n(t,e){var r=a(l.API_URL);if(t.protocol=r.protocol,t.authority=r.authority,"/"!==r.path&&(t.path=""+r.path+t.path),!l.REQUIRE_ACCESS_TOKEN)return s(t);if(!(e=e||l.ACCESS_TOKEN))throw new Error("An API access token is required to use Mapbox GL. "+c);if("s"===e[0])throw new Error("Use a public access token (pk.*) with Mapbox GL, not a secret access token (sk.*). "+c);return t.params.push("access_token="+e),s(t)}function i(t){return 0===t.indexOf("mapbox:")}function o(t){for(var e=0;e<t.length;e++)0===t[e].indexOf("access_token=tk.")&&(t[e]="access_token="+(l.ACCESS_TOKEN||""))}function a(t){var e=t.match(h);if(!e)throw new Error("Unable to parse URL object");return{protocol:e[1],authority:e[2],path:e[3]||"/",params:e[4]?e[4].split("&"):[]}}function s(t){var e=t.params.length?"?"+t.params.join("&"):"";return t.protocol+"://"+t.authority+t.path+e}var l=t("./config"),u=t("./browser"),c="See https://www.mapbox.com/api-documentation/#access-tokens";r.isMapboxURL=i,r.normalizeStyleURL=function(t,e){if(!i(t))return t;var r=a(t);return r.path="/styles/v1"+r.path,n(r,e)},r.normalizeGlyphsURL=function(t,e){if(!i(t))return t;var r=a(t);return r.path="/fonts/v1"+r.path,n(r,e)},r.normalizeSourceURL=function(t,e){if(!i(t))return t;var r=a(t);return r.path="/v4/"+r.authority+".json",r.params.push("secure"),n(r,e)},r.normalizeSpriteURL=function(t,e,r,o){var l=a(t);return i(t)?(l.path="/styles/v1"+l.path+"/sprite"+e+r,n(l,o)):(l.path+=""+e+r,s(l))};var p=/(\.(png|jpg)\d*)(?=$)/;r.normalizeTileURL=function(t,e,r){if(!e||!i(e))return t;var n=a(t),l=u.devicePixelRatio>=2||512===r?"@2x":"",c=u.supportsWebp?".webp":"$1";return n.path=n.path.replace(p,""+l+c),o(n.params),s(n)};var h=/^(\w+):\/\/([^\/?]*)(\/[^?]+)?\??(.+)?/},{"./browser":202,"./config":206}],218:[function(t,e,r){"use strict";var n=t("./is_char_in_unicode_block");e.exports.allowsIdeographicBreaking=function(t){for(var e=0,n=t;e<n.length;e+=1){var i=n[e];if(!r.charAllowsIdeographicBreaking(i.charCodeAt(0)))return!1}return!0},e.exports.allowsVerticalWritingMode=function(t){for(var e=0,n=t;e<n.length;e+=1){var i=n[e];if(r.charHasUprightVerticalOrientation(i.charCodeAt(0)))return!0}return!1},e.exports.allowsLetterSpacing=function(t){for(var e=0,n=t;e<n.length;e+=1){var i=n[e];if(!r.charAllowsLetterSpacing(i.charCodeAt(0)))return!1}return!0},e.exports.charAllowsLetterSpacing=function(t){return!n.Arabic(t)&&!n["Arabic Supplement"](t)&&!n["Arabic Extended-A"](t)&&!n["Arabic Presentation Forms-A"](t)&&!n["Arabic Presentation Forms-B"](t)},e.exports.charAllowsIdeographicBreaking=function(t){return!(t<11904)&&(!!n["Bopomofo Extended"](t)||!!n.Bopomofo(t)||!!n["CJK Compatibility Forms"](t)||!!n["CJK Compatibility Ideographs"](t)||!!n["CJK Compatibility"](t)||!!n["CJK Radicals Supplement"](t)||!!n["CJK Strokes"](t)||!!n["CJK Symbols and Punctuation"](t)||!!n["CJK Unified Ideographs Extension A"](t)||!!n["CJK Unified Ideographs"](t)||!!n["Enclosed CJK Letters and Months"](t)||!!n["Halfwidth and Fullwidth Forms"](t)||!!n.Hiragana(t)||!!n["Ideographic Description Characters"](t)||!!n["Kangxi Radicals"](t)||!!n["Katakana Phonetic Extensions"](t)||!!n.Katakana(t)||!!n["Vertical Forms"](t)||!!n["Yi Radicals"](t)||!!n["Yi Syllables"](t))},r.charHasUprightVerticalOrientation=function(t){return 746===t||747===t||!(t<4352)&&(!!n["Bopomofo Extended"](t)||!!n.Bopomofo(t)||!(!n["CJK Compatibility Forms"](t)||t>=65097&&t<=65103)||!!n["CJK Compatibility Ideographs"](t)||!!n["CJK Compatibility"](t)||!!n["CJK Radicals Supplement"](t)||!!n["CJK Strokes"](t)||!(!n["CJK Symbols and Punctuation"](t)||t>=12296&&t<=12305||t>=12308&&t<=12319||12336===t)||!!n["CJK Unified Ideographs Extension A"](t)||!!n["CJK Unified Ideographs"](t)||!!n["Enclosed CJK Letters and Months"](t)||!!n["Hangul Compatibility Jamo"](t)||!!n["Hangul Jamo Extended-A"](t)||!!n["Hangul Jamo Extended-B"](t)||!!n["Hangul Jamo"](t)||!!n["Hangul Syllables"](t)||!!n.Hiragana(t)||!!n["Ideographic Description Characters"](t)||!!n.Kanbun(t)||!!n["Kangxi Radicals"](t)||!!n["Katakana Phonetic Extensions"](t)||!(!n.Katakana(t)||12540===t)||!(!n["Halfwidth and Fullwidth Forms"](t)||65288===t||65289===t||65293===t||t>=65306&&t<=65310||65339===t||65341===t||65343===t||t>=65371&&t<=65503||65507===t||t>=65512&&t<=65519)||!(!n["Small Form Variants"](t)||t>=65112&&t<=65118||t>=65123&&t<=65126)||!!n["Unified Canadian Aboriginal Syllabics"](t)||!!n["Unified Canadian Aboriginal Syllabics Extended"](t)||!!n["Vertical Forms"](t)||!!n["Yijing Hexagram Symbols"](t)||!!n["Yi Syllables"](t)||!!n["Yi Radicals"](t))},r.charHasNeutralVerticalOrientation=function(t){return!(!n["Latin-1 Supplement"](t)||167!==t&&169!==t&&174!==t&&177!==t&&188!==t&&189!==t&&190!==t&&215!==t&&247!==t)||!(!n["General Punctuation"](t)||8214!==t&&8224!==t&&8225!==t&&8240!==t&&8241!==t&&8251!==t&&8252!==t&&8258!==t&&8263!==t&&8264!==t&&8265!==t&&8273!==t)||!!n["Letterlike Symbols"](t)||!!n["Number Forms"](t)||!(!n["Miscellaneous Technical"](t)||!(t>=8960&&t<=8967||t>=8972&&t<=8991||t>=8996&&t<=9e3||9003===t||t>=9085&&t<=9114||t>=9150&&t<=9165||9167===t||t>=9169&&t<=9179||t>=9186&&t<=9215))||!(!n["Control Pictures"](t)||9251===t)||!!n["Optical Character Recognition"](t)||!!n["Enclosed Alphanumerics"](t)||!!n["Geometric Shapes"](t)||!(!n["Miscellaneous Symbols"](t)||t>=9754&&t<=9759)||!(!n["Miscellaneous Symbols and Arrows"](t)||!(t>=11026&&t<=11055||t>=11088&&t<=11097||t>=11192&&t<=11243))||!!n["CJK Symbols and Punctuation"](t)||!!n.Katakana(t)||!!n["Private Use Area"](t)||!!n["CJK Compatibility Forms"](t)||!!n["Small Form Variants"](t)||!!n["Halfwidth and Fullwidth Forms"](t)||8734===t||8756===t||8757===t||t>=9984&&t<=10087||t>=10102&&t<=10131||65532===t||65533===t},r.charHasRotatedVerticalOrientation=function(t){return!(r.charHasUprightVerticalOrientation(t)||r.charHasNeutralVerticalOrientation(t))}},{"./is_char_in_unicode_block":215}],219:[function(t,e,r){"use strict";var n=t("../geo/lng_lat");e.exports=function(t,e,r){if(t=new n(t.lng,t.lat),e){var i=new n(t.lng-360,t.lat),o=new n(t.lng+360,t.lat),a=r.locationPoint(t).distSqr(e);r.locationPoint(i).distSqr(e)<a?t=i:r.locationPoint(o).distSqr(e)<a&&(t=o)}for(;Math.abs(t.lng-r.center.lng)>180;){var s=r.locationPoint(t);if(s.x>=0&&s.y>=0&&s.x<=r.width&&s.y<=r.height)break;t.lng>r.center.lng?t.lng-=360:t.lng+=360}return t}},{"../geo/lng_lat":58}],220:[function(t,e,r){"use strict";function n(t){var e=JSON.stringify(t);if(f[e])return f[e];var r=void 0===t.alignment?1:t.alignment,n=0,a=0,l=["Uint8"],c=t.members.map(function(t){l.indexOf(t.type)<0&&l.push(t.type);var e=o(t.type),s=n=i(n,Math.max(r,e)),u=t.components||1;return a=Math.max(a,e),n+=e*u,{name:t.name,type:t.type,components:u,offset:s}}),d=i(n,Math.max(a,r)),m=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}(p);m.prototype.alignment=r,m.prototype.size=d;for(var v=0,y=c;v<y.length;v+=1)for(var g=y[v],_=0;_<g.components;_++){var x=g.name;if(g.components>1&&(x+=_),x in m.prototype)throw new Error(x+" is a reserved name and cannot be used as a member name.");Object.defineProperty(m.prototype,x,u(g,_))}var b=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}(h);return b.prototype.members=c,b.prototype.StructType=m,b.prototype.bytesPerElement=d,b.prototype.emplaceBack=s(c,d),b.prototype._usedTypes=l,f[e]=b,b}function i(t,e){return Math.ceil(t/e)*e}function o(t){return c[t].BYTES_PER_ELEMENT}function a(t){return t.toLowerCase()}function s(t,e){for(var r=[],n=[],i="var i = this.length;\nthis.resize(this.length + 1);\n",s=0,l=t;s<l.length;s+=1){var u=l[s],c=o(u.type);r.indexOf(c)<0&&(r.push(c),i+="var o"+c.toFixed(0)+" = i * "+(e/c).toFixed(0)+";\n");for(var p=0;p<u.components;p++){var h="v"+n.length,f="o"+c.toFixed(0)+" + "+(u.offset/c+p).toFixed(0);i+="this."+a(u.type)+"["+f+"] = "+h+";\n",n.push(h)}}return i+="return i;",new Function(n.toString(),i)}function l(t,e){var r="this._pos"+o(t.type).toFixed(0),n=(t.offset/o(t.type)+e).toFixed(0),i=r+" + "+n;return"this._structArray."+a(t.type)+"["+i+"]"}function u(t,e){var r=l(t,e);return{get:new Function("return "+r+";"),set:new Function("x",r+" = x;")}}e.exports=n;var c={Int8:Int8Array,Uint8:Uint8Array,Int16:Int16Array,Uint16:Uint16Array,Int32:Int32Array,Uint32:Uint32Array,Float32:Float32Array},p=function(t,e){this._structArray=t,this._pos1=e*this.size,this._pos2=this._pos1/2,this._pos4=this._pos1/4,this._pos8=this._pos1/8},h=function(t){this.isTransferred=!1,void 0!==t?(this.arrayBuffer=t.arrayBuffer,this.length=t.length,this.capacity=this.arrayBuffer.byteLength/this.bytesPerElement,this._refreshViews()):(this.capacity=-1,this.resize(0))};h.serialize=function(){return{members:this.prototype.members,alignment:this.prototype.StructType.prototype.alignment}},h.prototype.serialize=function(t){return this._trim(),t&&(this.isTransferred=!0,t.push(this.arrayBuffer)),{length:this.length,arrayBuffer:this.arrayBuffer}},h.prototype.get=function(t){return new this.StructType(this,t)},h.prototype._trim=function(){this.length!==this.capacity&&(this.capacity=this.length,this.arrayBuffer=this.arrayBuffer.slice(0,this.length*this.bytesPerElement),this._refreshViews())},h.prototype.clear=function(){this.length=0},h.prototype.resize=function(t){if(this.length=t,t>this.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)}},h.prototype._refreshViews=function(){for(var t=this,e=0,r=t._usedTypes;e<r.length;e+=1){var n=r[e];t[a(n)]=new c[n](t.arrayBuffer)}},h.prototype.toArray=function(t,e){for(var r=this,n=[],i=t;i<e;i++){var o=r.get(i);n.push(o)}return n};var f={}},{}],221:[function(t,e,r){"use strict";var n=t("./browser"),i=function(t,e){this.frequency=t,this.throttledFunction=e,this.lastInvocation=0};i.prototype.invoke=function(){var t=this;if(!this.pendingInvocation){var e=0===this.lastInvocation?0:this.lastInvocation+this.frequency-n.now();e<=0?(this.lastInvocation=n.now(),this.throttledFunction()):this.pendingInvocation=setTimeout(function(){t.pendingInvocation=void 0,t.lastInvocation=n.now(),t.throttledFunction()},e)}},i.prototype.stop=function(){this.pendingInvocation&&(clearTimeout(this.pendingInvocation),this.pendingInvocation=void 0)},e.exports=i},{"./browser":202}],222:[function(t,e,r){"use strict";function n(t,e){return e.replace(/{([^{}]+)}/g,function(e,r){return r in t?String(t[r]):""})}e.exports=n},{}],223:[function(t,e,r){"use strict";var n=t("@mapbox/unitbezier"),i=t("../geo/coordinate");t("@mapbox/point-geometry");r.easeCubicInOut=function(t){if(t<=0)return 0;if(t>=1)return 1;var e=t*t,r=e*t;return 4*(t<.5?r:3*(t-e)+r-.75)},r.bezier=function(t,e,r,i){var o=new n(t,e,r,i);return function(t){return o.solve(t)}},r.ease=r.bezier(.25,.1,.25,1),r.clamp=function(t,e,r){return Math.min(r,Math.max(e,t))},r.wrap=function(t,e,r){var n=r-e,i=((t-e)%n+n)%n+e;return i===e?r:i},r.asyncAll=function(t,e,r){if(!t.length)return r(null,[]);var n=t.length,i=new Array(t.length),o=null;t.forEach(function(t,a){e(t,function(t,e){t&&(o=t),i[a]=e,0==--n&&r(o,i)})})},r.values=function(t){var e=[];for(var r in t)e.push(t[r]);return e},r.keysDifference=function(t,e){var r=[];for(var n in t)n in e||r.push(n);return r},r.extend=function(t){for(var e=[],r=arguments.length-1;r-- >0;)e[r]=arguments[r+1];for(var n=0,i=e;n<i.length;n+=1){var o=i[n];for(var a in o)t[a]=o[a]}return t},r.pick=function(t,e){for(var r={},n=0;n<e.length;n++){var i=e[n];i in t&&(r[i]=t[i])}return r};var o=1;r.uniqueId=function(){return o++},r.bindAll=function(t,e){t.forEach(function(t){e[t]&&(e[t]=e[t].bind(e))})},r.getCoordinatesCenter=function(t){for(var e=1/0,r=1/0,n=-1/0,o=-1/0,a=0;a<t.length;a++)e=Math.min(e,t[a].column),r=Math.min(r,t[a].row),n=Math.max(n,t[a].column),o=Math.max(o,t[a].row);var s=n-e,l=o-r,u=Math.max(s,l),c=Math.max(0,Math.floor(-Math.log(u)/Math.LN2));return new i((e+n)/2,(r+o)/2,0).zoomTo(c)},r.endsWith=function(t,e){return-1!==t.indexOf(e,t.length-e.length)},r.mapObject=function(t,e,r){var n=this,i={};for(var o in t)i[o]=e.call(r||n,t[o],o,t);return i},r.filterObject=function(t,e,r){var n=this,i={};for(var o in t)e.call(r||n,t[o],o,t)&&(i[o]=t[o]);return i},r.deepEqual=function(t,e){if(Array.isArray(t)){if(!Array.isArray(e)||t.length!==e.length)return!1;for(var n=0;n<t.length;n++)if(!r.deepEqual(t[n],e[n]))return!1;return!0}if("object"==typeof t&&null!==t&&null!==e){if("object"!=typeof e)return!1;if(Object.keys(t).length!==Object.keys(e).length)return!1;for(var i in t)if(!r.deepEqual(t[i],e[i]))return!1;return!0}return t===e},r.clone=function(t){return Array.isArray(t)?t.map(r.clone):"object"==typeof t&&t?r.mapObject(t,r.clone):t},r.arraysIntersect=function(t,e){for(var r=0;r<t.length;r++)if(e.indexOf(t[r])>=0)return!0;return!1};var a={};r.warnOnce=function(t){a[t]||("undefined"!=typeof console&&console.warn(t),a[t]=!0)},r.isCounterClockwise=function(t,e,r){return(r.y-t.y)*(e.x-t.x)>(e.y-t.y)*(r.x-t.x)},r.calculateSignedArea=function(t){for(var e=0,r=0,n=t.length,i=n-1,o=void 0,a=void 0;r<n;i=r++)o=t[r],a=t[i],e+=(a.x-o.x)*(o.y+a.y);return e},r.isClosedPolygon=function(t){if(t.length<4)return!1;var e=t[0],n=t[t.length-1];return!(Math.abs(e.x-n.x)>0||Math.abs(e.y-n.y)>0)&&Math.abs(r.calculateSignedArea(t))>.01},r.sphericalToCartesian=function(t){var e=t[0],r=t[1],n=t[2];return r+=90,r*=Math.PI/180,n*=Math.PI/180,[e*Math.cos(r)*Math.sin(n),e*Math.sin(r)*Math.sin(n),e*Math.cos(n)]},r.parseCacheControl=function(t){var e=/(?:^|(?:\s*\,\s*))([^\x00-\x20\(\)<>@\,;\:\\"\/\[\]\?\=\{\}\x7F]+)(?:\=(?:([^\x00-\x20\(\)<>@\,;\:\\"\/\[\]\?\=\{\}\x7F]+)|(?:\"((?:[^"\\]|\\.)*)\")))?/g,r={};if(t.replace(e,function(t,e,n,i){var o=n||i;return r[e]=!o||o.toLowerCase(),""}),r["max-age"]){var n=parseInt(r["max-age"],10);isNaN(n)?delete r["max-age"]:r["max-age"]=n}return r}},{"../geo/coordinate":57,"@mapbox/point-geometry":2,"@mapbox/unitbezier":5}],224:[function(t,e,r){"use strict";var n=function(t,e,r,n){this.type="Feature",this._vectorTileFeature=t,t._z=e,t._x=r,t._y=n,this.properties=t.properties,null!=t.id&&(this.id=t.id)},i={geometry:{}};i.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},i.geometry.set=function(t){this._geometry=t},n.prototype.toJSON=function(){var t=this,e={geometry:this.geometry};for(var r in t)"_geometry"!==r&&"_vectorTileFeature"!==r&&(e[r]=t[r]);return e},Object.defineProperties(n.prototype,i),e.exports=n},{}],225:[function(t,e,r){"use strict";var n=t("./script_detection");e.exports=function(t){for(var r="",i=0;i<t.length;i++){var o=t.charCodeAt(i+1)||null,a=t.charCodeAt(i-1)||null;o&&n.charHasRotatedVerticalOrientation(o)&&!e.exports.lookup[t[i+1]]||a&&n.charHasRotatedVerticalOrientation(a)&&!e.exports.lookup[t[i-1]]||!e.exports.lookup[t[i]]?r+=t[i]:r+=e.exports.lookup[t[i]]}return r},e.exports.lookup={"!":"︕","#":"#",$:"$","%":"%","&":"&","(":"︵",")":"︶","*":"*","+":"+",",":"︐","-":"︲",".":"・","/":"/",":":"︓",";":"︔","<":"︿","=":"=",">":"﹀","?":"︖","@":"@","[":"﹇","\\":"\","]":"﹈","^":"^",_:"︳","`":"`","{":"︷","|":"―","}":"︸","~":"~","¢":"¢","£":"£","¥":"¥","¦":"¦","¬":"¬","¯":" ̄","–":"︲","—":"︱","‘":"﹃","’":"﹄","“":"﹁","”":"﹂","…":"︙","‧":"・","₩":"₩","、":"︑","。":"︒","〈":"︿","〉":"﹀","《":"︽","》":"︾","「":"﹁","」":"﹂","『":"﹃","』":"﹄","【":"︻","】":"︼","〔":"︹","〕":"︺","〖":"︗","〗":"︘","!":"︕","(":"︵",")":"︶",",":"︐","-":"︲",".":"・",":":"︓",";":"︔","<":"︿",">":"﹀","?":"︖","[":"﹇","]":"﹈","_":"︳","{":"︷","|":"―","}":"︸","⦅":"︵","⦆":"︶","。":"︒","「":"﹁","」":"﹂"}},{"./script_detection":218}],226:[function(t,e,r){"use strict";var n=t("./web_worker"),i=function(){this.active={}};i.prototype.acquire=function(e){var r=this;if(!this.workers){var i=t("../").workerCount;for(this.workers=[];this.workers.length<i;)r.workers.push(new n)}return this.active[e]=!0,this.workers.slice()},i.prototype.release=function(t){delete this.active[t],0===Object.keys(this.active).length&&(this.workers.forEach(function(t){t.terminate()}),this.workers=null)},e.exports=i},{"../":63,"./web_worker":203}]},{},[63])(63)})}).call(e,r(0))},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var n=r(1),i=r.n(n),o=r(3),a=r(7);i.a.accessToken="pk.eyJ1IjoieXV2YWRtIiwiYSI6ImNpcnMxbzBuaTAwZWdoa25oczlzZmkwbHcifQ.UHtLngbKm9O8945pJm23Nw";new o.a({el:"#app",render:function(t){return t(a.a)}})},function(t,e,r){"use strict";(function(t,r){/*!
* Vue.js v2.5.2
* (c) 2014-2017 Evan You
* Released under the MIT License.
*/
-function i(t){return void 0===t||null===t}function n(t){return void 0!==t&&null!==t}function o(t){return!0===t}function a(t){return!1===t}function s(t){return"string"==typeof t||"number"==typeof t||"boolean"==typeof t}function l(t){return null!==t&&"object"==typeof t}function u(t){return"[object Object]"===Qn.call(t)}function c(t){return"[object RegExp]"===Qn.call(t)}function p(t){var e=parseFloat(String(t));return e>=0&&Math.floor(e)===e&&isFinite(t)}function h(t){return null==t?"":"object"==typeof t?JSON.stringify(t,null,2):String(t)}function f(t){var e=parseFloat(t);return isNaN(e)?t:e}function d(t,e){for(var r=Object.create(null),i=t.split(","),n=0;n<i.length;n++)r[i[n]]=!0;return e?function(t){return r[t.toLowerCase()]}:function(t){return r[t]}}function m(t,e){if(t.length){var r=t.indexOf(e);if(r>-1)return t.splice(r,1)}}function v(t,e){return ro.call(t,e)}function y(t){var e=Object.create(null);return function(r){return e[r]||(e[r]=t(r))}}function g(t,e){function r(r){var i=arguments.length;return i?i>1?t.apply(e,arguments):t.call(e,r):t.call(e)}return r._length=t.length,r}function _(t,e){e=e||0;for(var r=t.length-e,i=new Array(r);r--;)i[r]=t[r+e];return i}function x(t,e){for(var r in e)t[r]=e[r];return t}function b(t){for(var e={},r=0;r<t.length;r++)t[r]&&x(e,t[r]);return e}function w(t,e,r){}function T(t,e){if(t===e)return!0;var r=l(t),i=l(e);if(!r||!i)return!r&&!i&&String(t)===String(e);try{var n=Array.isArray(t),o=Array.isArray(e);if(n&&o)return t.length===e.length&&t.every(function(t,r){return T(t,e[r])});if(n||o)return!1;var a=Object.keys(t),s=Object.keys(e);return a.length===s.length&&a.every(function(r){return T(t[r],e[r])})}catch(t){return!1}}function S(t,e){for(var r=0;r<t.length;r++)if(T(t[r],e))return r;return-1}function z(t){var e=!1;return function(){e||(e=!0,t.apply(this,arguments))}}function A(t){var e=(t+"").charCodeAt(0);return 36===e||95===e}function C(t,e,r,i){Object.defineProperty(t,e,{value:r,enumerable:!!i,writable:!0,configurable:!0})}function E(t){if(!vo.test(t)){var e=t.split(".");return function(t){for(var r=0;r<e.length;r++){if(!t)return;t=t[e[r]]}return t}}}function k(t){return"function"==typeof t&&/native code/.test(t.toString())}function M(t){Do.target&&Oo.push(Do.target),Do.target=t}function L(){Do.target=Oo.pop()}function I(t){return new Bo(void 0,void 0,void 0,String(t))}function P(t,e){var r=new Bo(t.tag,t.data,t.children,t.text,t.elm,t.context,t.componentOptions,t.asyncFactory);return r.ns=t.ns,r.isStatic=t.isStatic,r.key=t.key,r.isComment=t.isComment,r.isCloned=!0,e&&t.children&&(r.children=R(t.children)),r}function R(t,e){for(var r=t.length,i=new Array(r),n=0;n<r;n++)i[n]=P(t[n],e);return i}function D(t,e,r){t.__proto__=e}function O(t,e,r){for(var i=0,n=r.length;i<n;i++){var o=r[i];C(t,o,e[o])}}function B(t,e){if(l(t)&&!(t instanceof Bo)){var r;return v(t,"__ob__")&&t.__ob__ instanceof qo?r=t.__ob__:$o.shouldConvert&&!Mo()&&(Array.isArray(t)||u(t))&&Object.isExtensible(t)&&!t._isVue&&(r=new qo(t)),e&&r&&r.vmCount++,r}}function F(t,e,r,i,n){var o=new Do,a=Object.getOwnPropertyDescriptor(t,e);if(!a||!1!==a.configurable){var s=a&&a.get,l=a&&a.set,u=!n&&B(r);Object.defineProperty(t,e,{enumerable:!0,configurable:!0,get:function(){var e=s?s.call(t):r;return Do.target&&(o.depend(),u&&(u.dep.depend(),Array.isArray(e)&&N(e))),e},set:function(e){var i=s?s.call(t):r;e===i||e!==e&&i!==i||(l?l.call(t,e):r=e,u=!n&&B(e),o.notify())}})}}function j(t,e,r){if(Array.isArray(t)&&p(e))return t.length=Math.max(t.length,e),t.splice(e,1,r),r;if(v(t,e))return t[e]=r,r;var i=t.__ob__;return t._isVue||i&&i.vmCount?r:i?(F(i.value,e,r),i.dep.notify(),r):(t[e]=r,r)}function V(t,e){if(Array.isArray(t)&&p(e))return void t.splice(e,1);var r=t.__ob__;t._isVue||r&&r.vmCount||v(t,e)&&(delete t[e],r&&r.dep.notify())}function N(t){for(var e=void 0,r=0,i=t.length;r<i;r++)e=t[r],e&&e.__ob__&&e.__ob__.dep.depend(),Array.isArray(e)&&N(e)}function U(t,e){if(!e)return t;for(var r,i,n,o=Object.keys(e),a=0;a<o.length;a++)r=o[a],i=t[r],n=e[r],v(t,r)?u(i)&&u(n)&&U(i,n):j(t,r,n);return t}function $(t,e,r){return r?t||e?function(){var i="function"==typeof e?e.call(r):e,n="function"==typeof t?t.call(r):t;return i?U(i,n):n}:void 0:e?t?function(){return U("function"==typeof e?e.call(this):e,"function"==typeof t?t.call(this):t)}:e:t}function q(t,e){return e?t?t.concat(e):Array.isArray(e)?e:[e]:t}function Z(t,e,r,i){var n=Object.create(t||null);return e?x(n,e):n}function G(t,e){var r=t.props;if(r){var i,n,o,a={};if(Array.isArray(r))for(i=r.length;i--;)"string"==typeof(n=r[i])&&(o=no(n),a[o]={type:null});else if(u(r))for(var s in r)n=r[s],o=no(s),a[o]=u(n)?n:{type:n};t.props=a}}function W(t,e){var r=t.inject,i=t.inject={};if(Array.isArray(r))for(var n=0;n<r.length;n++)i[r[n]]={from:r[n]};else if(u(r))for(var o in r){var a=r[o];i[o]=u(a)?x({from:o},a):{from:a}}}function H(t){var e=t.directives;if(e)for(var r in e){var i=e[r];"function"==typeof i&&(e[r]={bind:i,update:i})}}function X(t,e,r){function i(i){var n=Zo[i]||Ho;l[i]=n(t[i],e[i],r,i)}"function"==typeof e&&(e=e.options),G(e,r),W(e,r),H(e);var n=e.extends;if(n&&(t=X(t,n,r)),e.mixins)for(var o=0,a=e.mixins.length;o<a;o++)t=X(t,e.mixins[o],r);var s,l={};for(s in t)i(s);for(s in e)v(t,s)||i(s);return l}function K(t,e,r,i){if("string"==typeof r){var n=t[e];if(v(n,r))return n[r];var o=no(r);if(v(n,o))return n[o];var a=oo(o);if(v(n,a))return n[a];return n[r]||n[o]||n[a]}}function J(t,e,r,i){var n=e[t],o=!v(r,t),a=r[t];if(tt(Boolean,n.type)&&(o&&!v(n,"default")?a=!1:tt(String,n.type)||""!==a&&a!==so(t)||(a=!0)),void 0===a){a=Y(i,n,t);var s=$o.shouldConvert;$o.shouldConvert=!0,B(a),$o.shouldConvert=s}return a}function Y(t,e,r){if(v(e,"default")){var i=e.default;return t&&t.$options.propsData&&void 0===t.$options.propsData[r]&&void 0!==t._props[r]?t._props[r]:"function"==typeof i&&"Function"!==Q(e.type)?i.call(t):i}}function Q(t){var e=t&&t.toString().match(/^\s*function (\w+)/);return e?e[1]:""}function tt(t,e){if(!Array.isArray(e))return Q(e)===Q(t);for(var r=0,i=e.length;r<i;r++)if(Q(e[r])===Q(t))return!0;return!1}function et(t,e,r){if(e)for(var i=e;i=i.$parent;){var n=i.$options.errorCaptured;if(n)for(var o=0;o<n.length;o++)try{var a=!1===n[o].call(i,t,e,r);if(a)return}catch(t){rt(t,i,"errorCaptured hook")}}rt(t,e,r)}function rt(t,e,r){if(fo.errorHandler)try{return fo.errorHandler.call(null,t,e,r)}catch(t){it(t,null,"config.errorHandler")}it(t,e,r)}function it(t,e,r){if(!go||"undefined"==typeof console)throw t;console.error(t)}function nt(){Ko=!1;var t=Xo.slice(0);Xo.length=0;for(var e=0;e<t.length;e++)t[e]()}function ot(t){return t._withTask||(t._withTask=function(){Jo=!0;var e=t.apply(null,arguments);return Jo=!1,e})}function at(t,e){var r;if(Xo.push(function(){if(t)try{t.call(e)}catch(t){et(t,e,"nextTick")}else r&&r(e)}),Ko||(Ko=!0,Jo?Wo():Go()),!t&&"undefined"!=typeof Promise)return new Promise(function(t){r=t})}function st(t){function e(){var t=arguments,r=e.fns;if(!Array.isArray(r))return r.apply(null,arguments);for(var i=r.slice(),n=0;n<i.length;n++)i[n].apply(null,t)}return e.fns=t,e}function lt(t,e,r,n,o){var a,s,l,u;for(a in t)s=t[a],l=e[a],u=ra(a),i(s)||(i(l)?(i(s.fns)&&(s=t[a]=st(s)),r(u.name,s,u.once,u.capture,u.passive)):s!==l&&(l.fns=s,t[a]=l));for(a in e)i(t[a])&&(u=ra(a),n(u.name,e[a],u.capture))}function ut(t,e,r){function a(){r.apply(this,arguments),m(s.fns,a)}var s,l=t[e];i(l)?s=st([a]):n(l.fns)&&o(l.merged)?(s=l,s.fns.push(a)):s=st([l,a]),s.merged=!0,t[e]=s}function ct(t,e,r){var o=e.options.props;if(!i(o)){var a={},s=t.attrs,l=t.props;if(n(s)||n(l))for(var u in o){var c=so(u);pt(a,l,u,c,!0)||pt(a,s,u,c,!1)}return a}}function pt(t,e,r,i,o){if(n(e)){if(v(e,r))return t[r]=e[r],o||delete e[r],!0;if(v(e,i))return t[r]=e[i],o||delete e[i],!0}return!1}function ht(t){for(var e=0;e<t.length;e++)if(Array.isArray(t[e]))return Array.prototype.concat.apply([],t);return t}function ft(t){return s(t)?[I(t)]:Array.isArray(t)?mt(t):void 0}function dt(t){return n(t)&&n(t.text)&&a(t.isComment)}function mt(t,e){var r,a,l,u,c=[];for(r=0;r<t.length;r++)a=t[r],i(a)||"boolean"==typeof a||(l=c.length-1,u=c[l],Array.isArray(a)?a.length>0&&(a=mt(a,(e||"")+"_"+r),dt(a[0])&&dt(u)&&(c[l]=I(u.text+a[0].text),a.shift()),c.push.apply(c,a)):s(a)?dt(u)?c[l]=I(u.text+a):""!==a&&c.push(I(a)):dt(a)&&dt(u)?c[l]=I(u.text+a.text):(o(t._isVList)&&n(a.tag)&&i(a.key)&&n(e)&&(a.key="__vlist"+e+"_"+r+"__"),c.push(a)));return c}function vt(t,e){return(t.__esModule||Io&&"Module"===t[Symbol.toStringTag])&&(t=t.default),l(t)?e.extend(t):t}function yt(t,e,r,i,n){var o=jo();return o.asyncFactory=t,o.asyncMeta={data:e,context:r,children:i,tag:n},o}function gt(t,e,r){if(o(t.error)&&n(t.errorComp))return t.errorComp;if(n(t.resolved))return t.resolved;if(o(t.loading)&&n(t.loadingComp))return t.loadingComp;if(!n(t.contexts)){var a=t.contexts=[r],s=!0,u=function(){for(var t=0,e=a.length;t<e;t++)a[t].$forceUpdate()},c=z(function(r){t.resolved=vt(r,e),s||u()}),p=z(function(e){n(t.errorComp)&&(t.error=!0,u())}),h=t(c,p);return l(h)&&("function"==typeof h.then?i(t.resolved)&&h.then(c,p):n(h.component)&&"function"==typeof h.component.then&&(h.component.then(c,p),n(h.error)&&(t.errorComp=vt(h.error,e)),n(h.loading)&&(t.loadingComp=vt(h.loading,e),0===h.delay?t.loading=!0:setTimeout(function(){i(t.resolved)&&i(t.error)&&(t.loading=!0,u())},h.delay||200)),n(h.timeout)&&setTimeout(function(){i(t.resolved)&&p(null)},h.timeout))),s=!1,t.loading?t.loadingComp:t.resolved}t.contexts.push(r)}function _t(t){return t.isComment&&t.asyncFactory}function xt(t){if(Array.isArray(t))for(var e=0;e<t.length;e++){var r=t[e];if(n(r)&&(n(r.componentOptions)||_t(r)))return r}}function bt(t){t._events=Object.create(null),t._hasHookEvent=!1;var e=t.$options._parentListeners;e&&St(t,e)}function wt(t,e,r){r?ea.$once(t,e):ea.$on(t,e)}function Tt(t,e){ea.$off(t,e)}function St(t,e,r){ea=t,lt(e,r||{},wt,Tt,t)}function zt(t,e){var r={};if(!t)return r;for(var i=[],n=0,o=t.length;n<o;n++){var a=t[n],s=a.data;if(s&&s.attrs&&s.attrs.slot&&delete s.attrs.slot,a.context!==e&&a.functionalContext!==e||!s||null==s.slot)i.push(a);else{var l=a.data.slot,u=r[l]||(r[l]=[]);"template"===a.tag?u.push.apply(u,a.children):u.push(a)}}return i.every(At)||(r.default=i),r}function At(t){return t.isComment||" "===t.text}function Ct(t,e){e=e||{};for(var r=0;r<t.length;r++)Array.isArray(t[r])?Ct(t[r],e):e[t[r].key]=t[r].fn;return e}function Et(t){var e=t.$options,r=e.parent;if(r&&!e.abstract){for(;r.$options.abstract&&r.$parent;)r=r.$parent;r.$children.push(t)}t.$parent=r,t.$root=r?r.$root:t,t.$children=[],t.$refs={},t._watcher=null,t._inactive=null,t._directInactive=!1,t._isMounted=!1,t._isDestroyed=!1,t._isBeingDestroyed=!1}function kt(t,e,r){t.$el=e,t.$options.render||(t.$options.render=jo),Rt(t,"beforeMount");var i;return i=function(){t._update(t._render(),r)},t._watcher=new pa(t,i,w),r=!1,null==t.$vnode&&(t._isMounted=!0,Rt(t,"mounted")),t}function Mt(t,e,r,i,n){var o=!!(n||t.$options._renderChildren||i.data.scopedSlots||t.$scopedSlots!==mo);if(t.$options._parentVnode=i,t.$vnode=i,t._vnode&&(t._vnode.parent=i),t.$options._renderChildren=n,t.$attrs=i.data&&i.data.attrs||mo,t.$listeners=r||mo,e&&t.$options.props){$o.shouldConvert=!1;for(var a=t._props,s=t.$options._propKeys||[],l=0;l<s.length;l++){var u=s[l];a[u]=J(u,t.$options.props,e,t)}$o.shouldConvert=!0,t.$options.propsData=e}if(r){var c=t.$options._parentListeners;t.$options._parentListeners=r,St(t,r,c)}o&&(t.$slots=zt(n,i.context),t.$forceUpdate())}function Lt(t){for(;t&&(t=t.$parent);)if(t._inactive)return!0;return!1}function It(t,e){if(e){if(t._directInactive=!1,Lt(t))return}else if(t._directInactive)return;if(t._inactive||null===t._inactive){t._inactive=!1;for(var r=0;r<t.$children.length;r++)It(t.$children[r]);Rt(t,"activated")}}function Pt(t,e){if(!(e&&(t._directInactive=!0,Lt(t))||t._inactive)){t._inactive=!0;for(var r=0;r<t.$children.length;r++)Pt(t.$children[r]);Rt(t,"deactivated")}}function Rt(t,e){var r=t.$options[e];if(r)for(var i=0,n=r.length;i<n;i++)try{r[i].call(t)}catch(r){et(r,t,e+" hook")}t._hasHookEvent&&t.$emit("hook:"+e)}function Dt(){ua=na.length=oa.length=0,aa={},sa=la=!1}function Ot(){la=!0;var t,e;for(na.sort(function(t,e){return t.id-e.id}),ua=0;ua<na.length;ua++)t=na[ua],e=t.id,aa[e]=null,t.run();var r=oa.slice(),i=na.slice();Dt(),jt(r),Bt(i),Lo&&fo.devtools&&Lo.emit("flush")}function Bt(t){for(var e=t.length;e--;){var r=t[e],i=r.vm;i._watcher===r&&i._isMounted&&Rt(i,"updated")}}function Ft(t){t._inactive=!1,oa.push(t)}function jt(t){for(var e=0;e<t.length;e++)t[e]._inactive=!0,It(t[e],!0)}function Vt(t){var e=t.id;if(null==aa[e]){if(aa[e]=!0,la){for(var r=na.length-1;r>ua&&na[r].id>t.id;)r--;na.splice(r+1,0,t)}else na.push(t);sa||(sa=!0,at(Ot))}}function Nt(t){ha.clear(),Ut(t,ha)}function Ut(t,e){var r,i,n=Array.isArray(t);if((n||l(t))&&Object.isExtensible(t)){if(t.__ob__){var o=t.__ob__.dep.id;if(e.has(o))return;e.add(o)}if(n)for(r=t.length;r--;)Ut(t[r],e);else for(i=Object.keys(t),r=i.length;r--;)Ut(t[i[r]],e)}}function $t(t,e,r){fa.get=function(){return this[e][r]},fa.set=function(t){this[e][r]=t},Object.defineProperty(t,r,fa)}function qt(t){t._watchers=[];var e=t.$options;e.props&&Zt(t,e.props),e.methods&&Jt(t,e.methods),e.data?Gt(t):B(t._data={},!0),e.computed&&Ht(t,e.computed),e.watch&&e.watch!==zo&&Yt(t,e.watch)}function Zt(t,e){var r=t.$options.propsData||{},i=t._props={},n=t.$options._propKeys=[],o=!t.$parent;$o.shouldConvert=o;for(var a in e)!function(o){n.push(o);var a=J(o,e,r,t);F(i,o,a),o in t||$t(t,"_props",o)}(a);$o.shouldConvert=!0}function Gt(t){var e=t.$options.data;e=t._data="function"==typeof e?Wt(e,t):e||{},u(e)||(e={});for(var r=Object.keys(e),i=t.$options.props,n=(t.$options.methods,r.length);n--;){var o=r[n];i&&v(i,o)||A(o)||$t(t,"_data",o)}B(e,!0)}function Wt(t,e){try{return t.call(e,e)}catch(t){return et(t,e,"data()"),{}}}function Ht(t,e){var r=t._computedWatchers=Object.create(null),i=Mo();for(var n in e){var o=e[n],a="function"==typeof o?o:o.get;i||(r[n]=new pa(t,a||w,w,da)),n in t||Xt(t,n,o)}}function Xt(t,e,r){var i=!Mo();"function"==typeof r?(fa.get=i?Kt(e):r,fa.set=w):(fa.get=r.get?i&&!1!==r.cache?Kt(e):r.get:w,fa.set=r.set?r.set:w),Object.defineProperty(t,e,fa)}function Kt(t){return function(){var e=this._computedWatchers&&this._computedWatchers[t];if(e)return e.dirty&&e.evaluate(),Do.target&&e.depend(),e.value}}function Jt(t,e){t.$options.props;for(var r in e)t[r]=null==e[r]?w:g(e[r],t)}function Yt(t,e){for(var r in e){var i=e[r];if(Array.isArray(i))for(var n=0;n<i.length;n++)Qt(t,r,i[n]);else Qt(t,r,i)}}function Qt(t,e,r,i){return u(r)&&(i=r,r=r.handler),"string"==typeof r&&(r=t[r]),t.$watch(e,r,i)}function te(t){var e=t.$options.provide;e&&(t._provided="function"==typeof e?e.call(t):e)}function ee(t){var e=re(t.$options.inject,t);e&&($o.shouldConvert=!1,Object.keys(e).forEach(function(r){F(t,r,e[r])}),$o.shouldConvert=!0)}function re(t,e){if(t){for(var r=Object.create(null),i=Io?Reflect.ownKeys(t).filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}):Object.keys(t),n=0;n<i.length;n++){for(var o=i[n],a=t[o].from,s=e;s;){if(s._provided&&a in s._provided){r[o]=s._provided[a];break}s=s.$parent}if(!s&&"default"in t[o]){var l=t[o].default;r[o]="function"==typeof l?l.call(e):l}}return r}}function ie(t,e){var r,i,o,a,s;if(Array.isArray(t)||"string"==typeof t)for(r=new Array(t.length),i=0,o=t.length;i<o;i++)r[i]=e(t[i],i);else if("number"==typeof t)for(r=new Array(t),i=0;i<t;i++)r[i]=e(i+1,i);else if(l(t))for(a=Object.keys(t),r=new Array(a.length),i=0,o=a.length;i<o;i++)s=a[i],r[i]=e(t[s],s,i);return n(r)&&(r._isVList=!0),r}function ne(t,e,r,i){var n=this.$scopedSlots[t];if(n)return r=r||{},i&&(r=x(x({},i),r)),n(r)||e;var o=this.$slots[t];return o||e}function oe(t){return K(this.$options,"filters",t,!0)||uo}function ae(t,e,r,i){var n=fo.keyCodes[e]||r;return n?Array.isArray(n)?-1===n.indexOf(t):n!==t:i?so(i)!==e:void 0}function se(t,e,r,i,n){if(r)if(l(r)){Array.isArray(r)&&(r=b(r));var o;for(var a in r)!function(a){if("class"===a||"style"===a||eo(a))o=t;else{var s=t.attrs&&t.attrs.type;o=i||fo.mustUseProp(e,s,a)?t.domProps||(t.domProps={}):t.attrs||(t.attrs={})}if(!(a in o)&&(o[a]=r[a],n)){(t.on||(t.on={}))["update:"+a]=function(t){r[a]=t}}}(a)}else;return t}function le(t,e){var r=this.$options.staticRenderFns,i=r.cached||(r.cached=[]),n=i[t];return n&&!e?Array.isArray(n)?R(n):P(n):(n=i[t]=r[t].call(this._renderProxy,null,this),ce(n,"__static__"+t,!1),n)}function ue(t,e,r){return ce(t,"__once__"+e+(r?"_"+r:""),!0),t}function ce(t,e,r){if(Array.isArray(t))for(var i=0;i<t.length;i++)t[i]&&"string"!=typeof t[i]&&pe(t[i],e+"_"+i,r);else pe(t,e,r)}function pe(t,e,r){t.isStatic=!0,t.key=e,t.isOnce=r}function he(t,e){if(e)if(u(e)){var r=t.on=t.on?x({},t.on):{};for(var i in e){var n=r[i],o=e[i];r[i]=n?[].concat(n,o):o}}else;return t}function fe(t){t._o=ue,t._n=f,t._s=h,t._l=ie,t._t=ne,t._q=T,t._i=S,t._m=le,t._f=oe,t._k=ae,t._b=se,t._v=I,t._e=jo,t._u=Ct,t._g=he}function de(t,e,r,i,n){var a=n.options;this.data=t,this.props=e,this.children=r,this.parent=i,this.listeners=t.on||mo,this.injections=re(a.inject,i),this.slots=function(){return zt(r,i)};var s=Object.create(i),l=o(a._compiled),u=!l;l&&(this.$options=a,this.$slots=this.slots(),this.$scopedSlots=t.scopedSlots||mo),a._scopeId?this._c=function(t,e,r,n){var o=we(s,t,e,r,n,u);return o&&(o.functionalScopeId=a._scopeId,o.functionalContext=i),o}:this._c=function(t,e,r,i){return we(s,t,e,r,i,u)}}function me(t,e,r,i,o){var a=t.options,s={},l=a.props;if(n(l))for(var u in l)s[u]=J(u,l,e||mo);else n(r.attrs)&&ve(s,r.attrs),n(r.props)&&ve(s,r.props);var c=new de(r,s,o,i,t),p=a.render.call(null,c._c,c);return p instanceof Bo&&(p.functionalContext=i,p.functionalOptions=a,r.slot&&((p.data||(p.data={})).slot=r.slot)),p}function ve(t,e){for(var r in e)t[no(r)]=e[r]}function ye(t,e,r,a,s){if(!i(t)){var u=r.$options._base;if(l(t)&&(t=u.extend(t)),"function"==typeof t){var c;if(i(t.cid)&&(c=t,void 0===(t=gt(c,u,r))))return yt(c,e,r,a,s);e=e||{},Ce(t),n(e.model)&&be(t.options,e);var p=ct(e,t,s);if(o(t.options.functional))return me(t,p,e,r,a);var h=e.on;if(e.on=e.nativeOn,o(t.options.abstract)){var f=e.slot;e={},f&&(e.slot=f)}_e(e);var d=t.options.name||s;return new Bo("vue-component-"+t.cid+(d?"-"+d:""),e,void 0,void 0,void 0,r,{Ctor:t,propsData:p,listeners:h,tag:s,children:a},c)}}}function ge(t,e,r,i){var o=t.componentOptions,a={_isComponent:!0,parent:e,propsData:o.propsData,_componentTag:o.tag,_parentVnode:t,_parentListeners:o.listeners,_renderChildren:o.children,_parentElm:r||null,_refElm:i||null},s=t.data.inlineTemplate;return n(s)&&(a.render=s.render,a.staticRenderFns=s.staticRenderFns),new o.Ctor(a)}function _e(t){t.hook||(t.hook={});for(var e=0;e<va.length;e++){var r=va[e],i=t.hook[r],n=ma[r];t.hook[r]=i?xe(n,i):n}}function xe(t,e){return function(r,i,n,o){t(r,i,n,o),e(r,i,n,o)}}function be(t,e){var r=t.model&&t.model.prop||"value",i=t.model&&t.model.event||"input";(e.props||(e.props={}))[r]=e.model.value;var o=e.on||(e.on={});n(o[i])?o[i]=[e.model.callback].concat(o[i]):o[i]=e.model.callback}function we(t,e,r,i,n,a){return(Array.isArray(r)||s(r))&&(n=i,i=r,r=void 0),o(a)&&(n=ga),Te(t,e,r,i,n)}function Te(t,e,r,i,o){if(n(r)&&n(r.__ob__))return jo();if(n(r)&&n(r.is)&&(e=r.is),!e)return jo();Array.isArray(i)&&"function"==typeof i[0]&&(r=r||{},r.scopedSlots={default:i[0]},i.length=0),o===ga?i=ft(i):o===ya&&(i=ht(i));var a,s;if("string"==typeof e){var l;s=t.$vnode&&t.$vnode.ns||fo.getTagNamespace(e),a=fo.isReservedTag(e)?new Bo(fo.parsePlatformTagName(e),r,i,void 0,void 0,t):n(l=K(t.$options,"components",e))?ye(l,r,t,i,e):new Bo(e,r,i,void 0,void 0,t)}else a=ye(e,r,t,i);return n(a)?(s&&Se(a,s),a):jo()}function Se(t,e,r){if(t.ns=e,"foreignObject"===t.tag&&(e=void 0,r=!0),n(t.children))for(var a=0,s=t.children.length;a<s;a++){var l=t.children[a];n(l.tag)&&(i(l.ns)||o(r))&&Se(l,e,r)}}function ze(t){t._vnode=null;var e=t.$options,r=t.$vnode=e._parentVnode,i=r&&r.context;t.$slots=zt(e._renderChildren,i),t.$scopedSlots=mo,t._c=function(e,r,i,n){return we(t,e,r,i,n,!1)},t.$createElement=function(e,r,i,n){return we(t,e,r,i,n,!0)};var n=r&&r.data;F(t,"$attrs",n&&n.attrs||mo,null,!0),F(t,"$listeners",e._parentListeners||mo,null,!0)}function Ae(t,e){var r=t.$options=Object.create(t.constructor.options);r.parent=e.parent,r.propsData=e.propsData,r._parentVnode=e._parentVnode,r._parentListeners=e._parentListeners,r._renderChildren=e._renderChildren,r._componentTag=e._componentTag,r._parentElm=e._parentElm,r._refElm=e._refElm,e.render&&(r.render=e.render,r.staticRenderFns=e.staticRenderFns)}function Ce(t){var e=t.options;if(t.super){var r=Ce(t.super);if(r!==t.superOptions){t.superOptions=r;var i=Ee(t);i&&x(t.extendOptions,i),e=t.options=X(r,t.extendOptions),e.name&&(e.components[e.name]=t)}}return e}function Ee(t){var e,r=t.options,i=t.extendOptions,n=t.sealedOptions;for(var o in r)r[o]!==n[o]&&(e||(e={}),e[o]=ke(r[o],i[o],n[o]));return e}function ke(t,e,r){if(Array.isArray(t)){var i=[];r=Array.isArray(r)?r:[r],e=Array.isArray(e)?e:[e];for(var n=0;n<t.length;n++)(e.indexOf(t[n])>=0||r.indexOf(t[n])<0)&&i.push(t[n]);return i}return t}function Me(t){this._init(t)}function Le(t){t.use=function(t){var e=this._installedPlugins||(this._installedPlugins=[]);if(e.indexOf(t)>-1)return this;var r=_(arguments,1);return r.unshift(this),"function"==typeof t.install?t.install.apply(t,r):"function"==typeof t&&t.apply(null,r),e.push(t),this}}function Ie(t){t.mixin=function(t){return this.options=X(this.options,t),this}}function Pe(t){t.cid=0;var e=1;t.extend=function(t){t=t||{};var r=this,i=r.cid,n=t._Ctor||(t._Ctor={});if(n[i])return n[i];var o=t.name||r.options.name,a=function(t){this._init(t)};return a.prototype=Object.create(r.prototype),a.prototype.constructor=a,a.cid=e++,a.options=X(r.options,t),a.super=r,a.options.props&&Re(a),a.options.computed&&De(a),a.extend=r.extend,a.mixin=r.mixin,a.use=r.use,po.forEach(function(t){a[t]=r[t]}),o&&(a.options.components[o]=a),a.superOptions=r.options,a.extendOptions=t,a.sealedOptions=x({},a.options),n[i]=a,a}}function Re(t){var e=t.options.props;for(var r in e)$t(t.prototype,"_props",r)}function De(t){var e=t.options.computed;for(var r in e)Xt(t.prototype,r,e[r])}function Oe(t){po.forEach(function(e){t[e]=function(t,r){return r?("component"===e&&u(r)&&(r.name=r.name||t,r=this.options._base.extend(r)),"directive"===e&&"function"==typeof r&&(r={bind:r,update:r}),this.options[e+"s"][t]=r,r):this.options[e+"s"][t]}})}function Be(t){return t&&(t.Ctor.options.name||t.tag)}function Fe(t,e){return Array.isArray(t)?t.indexOf(e)>-1:"string"==typeof t?t.split(",").indexOf(e)>-1:!!c(t)&&t.test(e)}function je(t,e){var r=t.cache,i=t.keys,n=t._vnode;for(var o in r){var a=r[o];if(a){var s=Be(a.componentOptions);s&&!e(s)&&Ve(r,o,i,n)}}}function Ve(t,e,r,i){var n=t[e];n&&n!==i&&n.componentInstance.$destroy(),t[e]=null,m(r,e)}function Ne(t){for(var e=t.data,r=t,i=t;n(i.componentInstance);)i=i.componentInstance._vnode,i.data&&(e=Ue(i.data,e));for(;n(r=r.parent);)r.data&&(e=Ue(e,r.data));return $e(e.staticClass,e.class)}function Ue(t,e){return{staticClass:qe(t.staticClass,e.staticClass),class:n(t.class)?[t.class,e.class]:e.class}}function $e(t,e){return n(t)||n(e)?qe(t,Ze(e)):""}function qe(t,e){return t?e?t+" "+e:t:e||""}function Ze(t){return Array.isArray(t)?Ge(t):l(t)?We(t):"string"==typeof t?t:""}function Ge(t){for(var e,r="",i=0,o=t.length;i<o;i++)n(e=Ze(t[i]))&&""!==e&&(r&&(r+=" "),r+=e);return r}function We(t){var e="";for(var r in t)t[r]&&(e&&(e+=" "),e+=r);return e}function He(t){return $a(t)?"svg":"math"===t?"math":void 0}function Xe(t){if(!go)return!0;if(Za(t))return!1;if(t=t.toLowerCase(),null!=Ga[t])return Ga[t];var e=document.createElement(t);return t.indexOf("-")>-1?Ga[t]=e.constructor===window.HTMLUnknownElement||e.constructor===window.HTMLElement:Ga[t]=/HTMLUnknownElement/.test(e.toString())}function Ke(t){if("string"==typeof t){var e=document.querySelector(t);return e||document.createElement("div")}return t}function Je(t,e){var r=document.createElement(t);return"select"!==t?r:(e.data&&e.data.attrs&&void 0!==e.data.attrs.multiple&&r.setAttribute("multiple","multiple"),r)}function Ye(t,e){return document.createElementNS(Na[t],e)}function Qe(t){return document.createTextNode(t)}function tr(t){return document.createComment(t)}function er(t,e,r){t.insertBefore(e,r)}function rr(t,e){t.removeChild(e)}function ir(t,e){t.appendChild(e)}function nr(t){return t.parentNode}function or(t){return t.nextSibling}function ar(t){return t.tagName}function sr(t,e){t.textContent=e}function lr(t,e,r){t.setAttribute(e,r)}function ur(t,e){var r=t.data.ref;if(r){var i=t.context,n=t.componentInstance||t.elm,o=i.$refs;e?Array.isArray(o[r])?m(o[r],n):o[r]===n&&(o[r]=void 0):t.data.refInFor?Array.isArray(o[r])?o[r].indexOf(n)<0&&o[r].push(n):o[r]=[n]:o[r]=n}}function cr(t,e){return t.key===e.key&&(t.tag===e.tag&&t.isComment===e.isComment&&n(t.data)===n(e.data)&&pr(t,e)||o(t.isAsyncPlaceholder)&&t.asyncFactory===e.asyncFactory&&i(e.asyncFactory.error))}function pr(t,e){if("input"!==t.tag)return!0;var r,i=n(r=t.data)&&n(r=r.attrs)&&r.type,o=n(r=e.data)&&n(r=r.attrs)&&r.type;return i===o||Wa(i)&&Wa(o)}function hr(t,e,r){var i,o,a={};for(i=e;i<=r;++i)o=t[i].key,n(o)&&(a[o]=i);return a}function fr(t,e){(t.data.directives||e.data.directives)&&dr(t,e)}function dr(t,e){var r,i,n,o=t===Ka,a=e===Ka,s=mr(t.data.directives,t.context),l=mr(e.data.directives,e.context),u=[],c=[];for(r in l)i=s[r],n=l[r],i?(n.oldValue=i.value,yr(n,"update",e,t),n.def&&n.def.componentUpdated&&c.push(n)):(yr(n,"bind",e,t),n.def&&n.def.inserted&&u.push(n));if(u.length){var p=function(){for(var r=0;r<u.length;r++)yr(u[r],"inserted",e,t)};o?ut(e.data.hook||(e.data.hook={}),"insert",p):p()}if(c.length&&ut(e.data.hook||(e.data.hook={}),"postpatch",function(){for(var r=0;r<c.length;r++)yr(c[r],"componentUpdated",e,t)}),!o)for(r in s)l[r]||yr(s[r],"unbind",t,t,a)}function mr(t,e){var r=Object.create(null);if(!t)return r;var i,n;for(i=0;i<t.length;i++)n=t[i],n.modifiers||(n.modifiers=Qa),r[vr(n)]=n,n.def=K(e.$options,"directives",n.name,!0);return r}function vr(t){return t.rawName||t.name+"."+Object.keys(t.modifiers||{}).join(".")}function yr(t,e,r,i,n){var o=t.def&&t.def[e];if(o)try{o(r.elm,t,r,i,n)}catch(i){et(i,r.context,"directive "+t.name+" "+e+" hook")}}function gr(t,e){var r=e.componentOptions;if(!(n(r)&&!1===r.Ctor.options.inheritAttrs||i(t.data.attrs)&&i(e.data.attrs))){var o,a,s=e.elm,l=t.data.attrs||{},u=e.data.attrs||{};n(u.__ob__)&&(u=e.data.attrs=x({},u));for(o in u)a=u[o],l[o]!==a&&_r(s,o,a);(bo||wo)&&u.value!==l.value&&_r(s,"value",u.value);for(o in l)i(u[o])&&(Fa(o)?s.removeAttributeNS(Ba,ja(o)):Da(o)||s.removeAttribute(o))}}function _r(t,e,r){Oa(e)?Va(r)?t.removeAttribute(e):(r="allowfullscreen"===e&&"EMBED"===t.tagName?"true":e,t.setAttribute(e,r)):Da(e)?t.setAttribute(e,Va(r)||"false"===r?"false":"true"):Fa(e)?Va(r)?t.removeAttributeNS(Ba,ja(e)):t.setAttributeNS(Ba,e,r):Va(r)?t.removeAttribute(e):t.setAttribute(e,r)}function xr(t,e){var r=e.elm,o=e.data,a=t.data;if(!(i(o.staticClass)&&i(o.class)&&(i(a)||i(a.staticClass)&&i(a.class)))){var s=Ne(e),l=r._transitionClasses;n(l)&&(s=qe(s,Ze(l))),s!==r._prevClass&&(r.setAttribute("class",s),r._prevClass=s)}}function br(t){function e(){(a||(a=[])).push(t.slice(d,n).trim()),d=n+1}var r,i,n,o,a,s=!1,l=!1,u=!1,c=!1,p=0,h=0,f=0,d=0;for(n=0;n<t.length;n++)if(i=r,r=t.charCodeAt(n),s)39===r&&92!==i&&(s=!1);else if(l)34===r&&92!==i&&(l=!1);else if(u)96===r&&92!==i&&(u=!1);else if(c)47===r&&92!==i&&(c=!1);else if(124!==r||124===t.charCodeAt(n+1)||124===t.charCodeAt(n-1)||p||h||f){switch(r){case 34:l=!0;break;case 39:s=!0;break;case 96:u=!0;break;case 40:f++;break;case 41:f--;break;case 91:h++;break;case 93:h--;break;case 123:p++;break;case 125:p--}if(47===r){for(var m=n-1,v=void 0;m>=0&&" "===(v=t.charAt(m));m--);v&&is.test(v)||(c=!0)}}else void 0===o?(d=n+1,o=t.slice(0,n).trim()):e();if(void 0===o?o=t.slice(0,n).trim():0!==d&&e(),a)for(n=0;n<a.length;n++)o=wr(o,a[n]);return o}function wr(t,e){var r=e.indexOf("(");return r<0?'_f("'+e+'")('+t+")":'_f("'+e.slice(0,r)+'")('+t+","+e.slice(r+1)}function Tr(t){console.error("[Vue compiler]: "+t)}function Sr(t,e){return t?t.map(function(t){return t[e]}).filter(function(t){return t}):[]}function zr(t,e,r){(t.props||(t.props=[])).push({name:e,value:r})}function Ar(t,e,r){(t.attrs||(t.attrs=[])).push({name:e,value:r})}function Cr(t,e,r,i,n,o){(t.directives||(t.directives=[])).push({name:e,rawName:r,value:i,arg:n,modifiers:o})}function Er(t,e,r,i,n,o){i&&i.capture&&(delete i.capture,e="!"+e),i&&i.once&&(delete i.once,e="~"+e),i&&i.passive&&(delete i.passive,e="&"+e);var a;i&&i.native?(delete i.native,a=t.nativeEvents||(t.nativeEvents={})):a=t.events||(t.events={});var s={value:r,modifiers:i},l=a[e];Array.isArray(l)?n?l.unshift(s):l.push(s):a[e]=l?n?[s,l]:[l,s]:s}function kr(t,e,r){var i=Mr(t,":"+e)||Mr(t,"v-bind:"+e);if(null!=i)return br(i);if(!1!==r){var n=Mr(t,e);if(null!=n)return JSON.stringify(n)}}function Mr(t,e,r){var i;if(null!=(i=t.attrsMap[e]))for(var n=t.attrsList,o=0,a=n.length;o<a;o++)if(n[o].name===e){n.splice(o,1);break}return r&&delete t.attrsMap[e],i}function Lr(t,e,r){var i=r||{},n=i.number,o=i.trim,a="$$v";o&&(a="(typeof $$v === 'string'? $$v.trim(): $$v)"),n&&(a="_n("+a+")");var s=Ir(e,a);t.model={value:"("+e+")",expression:'"'+e+'"',callback:"function ($$v) {"+s+"}"}}function Ir(t,e){var r=Pr(t);return null===r.key?t+"="+e:"$set("+r.exp+", "+r.key+", "+e+")"}function Pr(t){if(Ta=t.length,t.indexOf("[")<0||t.lastIndexOf("]")<Ta-1)return Aa=t.lastIndexOf("."),Aa>-1?{exp:t.slice(0,Aa),key:'"'+t.slice(Aa+1)+'"'}:{exp:t,key:null};for(Sa=t,Aa=Ca=Ea=0;!Dr();)za=Rr(),Or(za)?Fr(za):91===za&&Br(za);return{exp:t.slice(0,Ca),key:t.slice(Ca+1,Ea)}}function Rr(){return Sa.charCodeAt(++Aa)}function Dr(){return Aa>=Ta}function Or(t){return 34===t||39===t}function Br(t){var e=1;for(Ca=Aa;!Dr();)if(t=Rr(),Or(t))Fr(t);else if(91===t&&e++,93===t&&e--,0===e){Ea=Aa;break}}function Fr(t){for(var e=t;!Dr()&&(t=Rr())!==e;);}function jr(t,e,r){ka=r;var i=e.value,n=e.modifiers,o=t.tag,a=t.attrsMap.type;if(t.component)return Lr(t,i,n),!1;if("select"===o)Ur(t,i,n);else if("input"===o&&"checkbox"===a)Vr(t,i,n);else if("input"===o&&"radio"===a)Nr(t,i,n);else if("input"===o||"textarea"===o)$r(t,i,n);else if(!fo.isReservedTag(o))return Lr(t,i,n),!1;return!0}function Vr(t,e,r){var i=r&&r.number,n=kr(t,"value")||"null",o=kr(t,"true-value")||"true",a=kr(t,"false-value")||"false";zr(t,"checked","Array.isArray("+e+")?_i("+e+","+n+")>-1"+("true"===o?":("+e+")":":_q("+e+","+o+")")),Er(t,"change","var $$a="+e+",$$el=$event.target,$$c=$$el.checked?("+o+"):("+a+");if(Array.isArray($$a)){var $$v="+(i?"_n("+n+")":n)+",$$i=_i($$a,$$v);if($$el.checked){$$i<0&&("+e+"=$$a.concat([$$v]))}else{$$i>-1&&("+e+"=$$a.slice(0,$$i).concat($$a.slice($$i+1)))}}else{"+Ir(e,"$$c")+"}",null,!0)}function Nr(t,e,r){var i=r&&r.number,n=kr(t,"value")||"null";n=i?"_n("+n+")":n,zr(t,"checked","_q("+e+","+n+")"),Er(t,"change",Ir(e,n),null,!0)}function Ur(t,e,r){var i=r&&r.number,n='Array.prototype.filter.call($event.target.options,function(o){return o.selected}).map(function(o){var val = "_value" in o ? o._value : o.value;return '+(i?"_n(val)":"val")+"})",o="var $$selectedVal = "+n+";";o=o+" "+Ir(e,"$event.target.multiple ? $$selectedVal : $$selectedVal[0]"),Er(t,"change",o,null,!0)}function $r(t,e,r){var i=t.attrsMap.type,n=r||{},o=n.lazy,a=n.number,s=n.trim,l=!o&&"range"!==i,u=o?"change":"range"===i?ns:"input",c="$event.target.value";s&&(c="$event.target.value.trim()"),a&&(c="_n("+c+")");var p=Ir(e,c);l&&(p="if($event.target.composing)return;"+p),zr(t,"value","("+e+")"),Er(t,u,p,null,!0),(s||a)&&Er(t,"blur","$forceUpdate()")}function qr(t){if(n(t[ns])){var e=xo?"change":"input";t[e]=[].concat(t[ns],t[e]||[]),delete t[ns]}n(t[os])&&(t.change=[].concat(t[os],t.change||[]),delete t[os])}function Zr(t,e,r){var i=Ma;return function n(){null!==t.apply(null,arguments)&&Wr(e,n,r,i)}}function Gr(t,e,r,i,n){e=ot(e),r&&(e=Zr(e,t,i)),Ma.addEventListener(t,e,Ao?{capture:i,passive:n}:i)}function Wr(t,e,r,i){(i||Ma).removeEventListener(t,e._withTask||e,r)}function Hr(t,e){if(!i(t.data.on)||!i(e.data.on)){var r=e.data.on||{},n=t.data.on||{};Ma=e.elm,qr(r),lt(r,n,Gr,Wr,e.context)}}function Xr(t,e){if(!i(t.data.domProps)||!i(e.data.domProps)){var r,o,a=e.elm,s=t.data.domProps||{},l=e.data.domProps||{};n(l.__ob__)&&(l=e.data.domProps=x({},l));for(r in s)i(l[r])&&(a[r]="");for(r in l){if(o=l[r],"textContent"===r||"innerHTML"===r){if(e.children&&(e.children.length=0),o===s[r])continue;1===a.childNodes.length&&a.removeChild(a.childNodes[0])}if("value"===r){a._value=o;var u=i(o)?"":String(o);Kr(a,u)&&(a.value=u)}else a[r]=o}}}function Kr(t,e){return!t.composing&&("OPTION"===t.tagName||Jr(t,e)||Yr(t,e))}function Jr(t,e){var r=!0;try{r=document.activeElement!==t}catch(t){}return r&&t.value!==e}function Yr(t,e){var r=t.value,i=t._vModifiers;return n(i)&&i.number?f(r)!==f(e):n(i)&&i.trim?r.trim()!==e.trim():r!==e}function Qr(t){var e=ti(t.style);return t.staticStyle?x(t.staticStyle,e):e}function ti(t){return Array.isArray(t)?b(t):"string"==typeof t?ls(t):t}function ei(t,e){var r,i={};if(e)for(var n=t;n.componentInstance;)n=n.componentInstance._vnode,n.data&&(r=Qr(n.data))&&x(i,r);(r=Qr(t.data))&&x(i,r);for(var o=t;o=o.parent;)o.data&&(r=Qr(o.data))&&x(i,r);return i}function ri(t,e){var r=e.data,o=t.data;if(!(i(r.staticStyle)&&i(r.style)&&i(o.staticStyle)&&i(o.style))){var a,s,l=e.elm,u=o.staticStyle,c=o.normalizedStyle||o.style||{},p=u||c,h=ti(e.data.style)||{};e.data.normalizedStyle=n(h.__ob__)?x({},h):h;var f=ei(e,!0);for(s in p)i(f[s])&&ps(l,s,"");for(s in f)(a=f[s])!==p[s]&&ps(l,s,null==a?"":a)}}function ii(t,e){if(e&&(e=e.trim()))if(t.classList)e.indexOf(" ")>-1?e.split(/\s+/).forEach(function(e){return t.classList.add(e)}):t.classList.add(e);else{var r=" "+(t.getAttribute("class")||"")+" ";r.indexOf(" "+e+" ")<0&&t.setAttribute("class",(r+e).trim())}}function ni(t,e){if(e&&(e=e.trim()))if(t.classList)e.indexOf(" ")>-1?e.split(/\s+/).forEach(function(e){return t.classList.remove(e)}):t.classList.remove(e),t.classList.length||t.removeAttribute("class");else{for(var r=" "+(t.getAttribute("class")||"")+" ",i=" "+e+" ";r.indexOf(i)>=0;)r=r.replace(i," ");r=r.trim(),r?t.setAttribute("class",r):t.removeAttribute("class")}}function oi(t){if(t){if("object"==typeof t){var e={};return!1!==t.css&&x(e,ms(t.name||"v")),x(e,t),e}return"string"==typeof t?ms(t):void 0}}function ai(t){Ts(function(){Ts(t)})}function si(t,e){var r=t._transitionClasses||(t._transitionClasses=[]);r.indexOf(e)<0&&(r.push(e),ii(t,e))}function li(t,e){t._transitionClasses&&m(t._transitionClasses,e),ni(t,e)}function ui(t,e,r){var i=ci(t,e),n=i.type,o=i.timeout,a=i.propCount;if(!n)return r();var s=n===ys?xs:ws,l=0,u=function(){t.removeEventListener(s,c),r()},c=function(e){e.target===t&&++l>=a&&u()};setTimeout(function(){l<a&&u()},o+1),t.addEventListener(s,c)}function ci(t,e){var r,i=window.getComputedStyle(t),n=i[_s+"Delay"].split(", "),o=i[_s+"Duration"].split(", "),a=pi(n,o),s=i[bs+"Delay"].split(", "),l=i[bs+"Duration"].split(", "),u=pi(s,l),c=0,p=0;return e===ys?a>0&&(r=ys,c=a,p=o.length):e===gs?u>0&&(r=gs,c=u,p=l.length):(c=Math.max(a,u),r=c>0?a>u?ys:gs:null,p=r?r===ys?o.length:l.length:0),{type:r,timeout:c,propCount:p,hasTransform:r===ys&&Ss.test(i[_s+"Property"])}}function pi(t,e){for(;t.length<e.length;)t=t.concat(t);return Math.max.apply(null,e.map(function(e,r){return hi(e)+hi(t[r])}))}function hi(t){return 1e3*Number(t.slice(0,-1))}function fi(t,e){var r=t.elm;n(r._leaveCb)&&(r._leaveCb.cancelled=!0,r._leaveCb());var o=oi(t.data.transition);if(!i(o)&&!n(r._enterCb)&&1===r.nodeType){for(var a=o.css,s=o.type,u=o.enterClass,c=o.enterToClass,p=o.enterActiveClass,h=o.appearClass,d=o.appearToClass,m=o.appearActiveClass,v=o.beforeEnter,y=o.enter,g=o.afterEnter,_=o.enterCancelled,x=o.beforeAppear,b=o.appear,w=o.afterAppear,T=o.appearCancelled,S=o.duration,A=ia,C=ia.$vnode;C&&C.parent;)C=C.parent,A=C.context;var E=!A._isMounted||!t.isRootInsert;if(!E||b||""===b){var k=E&&h?h:u,M=E&&m?m:p,L=E&&d?d:c,I=E?x||v:v,P=E&&"function"==typeof b?b:y,R=E?w||g:g,D=E?T||_:_,O=f(l(S)?S.enter:S),B=!1!==a&&!bo,F=vi(P),j=r._enterCb=z(function(){B&&(li(r,L),li(r,M)),j.cancelled?(B&&li(r,k),D&&D(r)):R&&R(r),r._enterCb=null});t.data.show||ut(t.data.hook||(t.data.hook={}),"insert",function(){var e=r.parentNode,i=e&&e._pending&&e._pending[t.key];i&&i.tag===t.tag&&i.elm._leaveCb&&i.elm._leaveCb(),P&&P(r,j)}),I&&I(r),B&&(si(r,k),si(r,M),ai(function(){si(r,L),li(r,k),j.cancelled||F||(mi(O)?setTimeout(j,O):ui(r,s,j))})),t.data.show&&(e&&e(),P&&P(r,j)),B||F||j()}}}function di(t,e){function r(){T.cancelled||(t.data.show||((o.parentNode._pending||(o.parentNode._pending={}))[t.key]=t),d&&d(o),x&&(si(o,c),si(o,h),ai(function(){si(o,p),li(o,c),T.cancelled||b||(mi(w)?setTimeout(T,w):ui(o,u,T))})),m&&m(o,T),x||b||T())}var o=t.elm;n(o._enterCb)&&(o._enterCb.cancelled=!0,o._enterCb());var a=oi(t.data.transition);if(i(a))return e();if(!n(o._leaveCb)&&1===o.nodeType){var s=a.css,u=a.type,c=a.leaveClass,p=a.leaveToClass,h=a.leaveActiveClass,d=a.beforeLeave,m=a.leave,v=a.afterLeave,y=a.leaveCancelled,g=a.delayLeave,_=a.duration,x=!1!==s&&!bo,b=vi(m),w=f(l(_)?_.leave:_),T=o._leaveCb=z(function(){o.parentNode&&o.parentNode._pending&&(o.parentNode._pending[t.key]=null),x&&(li(o,p),li(o,h)),T.cancelled?(x&&li(o,c),y&&y(o)):(e(),v&&v(o)),o._leaveCb=null});g?g(r):r()}}function mi(t){return"number"==typeof t&&!isNaN(t)}function vi(t){if(i(t))return!1;var e=t.fns;return n(e)?vi(Array.isArray(e)?e[0]:e):(t._length||t.length)>1}function yi(t,e){!0!==e.data.show&&fi(e)}function gi(t,e,r){_i(t,e,r),(xo||wo)&&setTimeout(function(){_i(t,e,r)},0)}function _i(t,e,r){var i=e.value,n=t.multiple;if(!n||Array.isArray(i)){for(var o,a,s=0,l=t.options.length;s<l;s++)if(a=t.options[s],n)o=S(i,bi(a))>-1,a.selected!==o&&(a.selected=o);else if(T(bi(a),i))return void(t.selectedIndex!==s&&(t.selectedIndex=s));n||(t.selectedIndex=-1)}}function xi(t,e){return e.every(function(e){return!T(e,t)})}function bi(t){return"_value"in t?t._value:t.value}function wi(t){t.target.composing=!0}function Ti(t){t.target.composing&&(t.target.composing=!1,Si(t.target,"input"))}function Si(t,e){var r=document.createEvent("HTMLEvents");r.initEvent(e,!0,!0),t.dispatchEvent(r)}function zi(t){return!t.componentInstance||t.data&&t.data.transition?t:zi(t.componentInstance._vnode)}function Ai(t){var e=t&&t.componentOptions;return e&&e.Ctor.options.abstract?Ai(xt(e.children)):t}function Ci(t){var e={},r=t.$options;for(var i in r.propsData)e[i]=t[i];var n=r._parentListeners;for(var o in n)e[no(o)]=n[o];return e}function Ei(t,e){if(/\d-keep-alive$/.test(e.tag))return t("keep-alive",{props:e.componentOptions.propsData})}function ki(t){for(;t=t.parent;)if(t.data.transition)return!0}function Mi(t,e){return e.key===t.key&&e.tag===t.tag}function Li(t){t.elm._moveCb&&t.elm._moveCb(),t.elm._enterCb&&t.elm._enterCb()}function Ii(t){t.data.newPos=t.elm.getBoundingClientRect()}function Pi(t){var e=t.data.pos,r=t.data.newPos,i=e.left-r.left,n=e.top-r.top;if(i||n){t.data.moved=!0;var o=t.elm.style;o.transform=o.WebkitTransform="translate("+i+"px,"+n+"px)",o.transitionDuration="0s"}}function Ri(t,e){var r=e?Ns(e):js;if(r.test(t)){for(var i,n,o=[],a=r.lastIndex=0;i=r.exec(t);){n=i.index,n>a&&o.push(JSON.stringify(t.slice(a,n)));var s=br(i[1].trim());o.push("_s("+s+")"),a=n+i[0].length}return a<t.length&&o.push(JSON.stringify(t.slice(a))),o.join("+")}}function Di(t,e){var r=(e.warn,Mr(t,"class"));r&&(t.staticClass=JSON.stringify(r));var i=kr(t,"class",!1);i&&(t.classBinding=i)}function Oi(t){var e="";return t.staticClass&&(e+="staticClass:"+t.staticClass+","),t.classBinding&&(e+="class:"+t.classBinding+","),e}function Bi(t,e){var r=(e.warn,Mr(t,"style"));if(r){t.staticStyle=JSON.stringify(ls(r))}var i=kr(t,"style",!1);i&&(t.styleBinding=i)}function Fi(t){var e="";return t.staticStyle&&(e+="staticStyle:"+t.staticStyle+","),t.styleBinding&&(e+="style:("+t.styleBinding+"),"),e}function ji(t,e){var r=e?gl:yl;return t.replace(r,function(t){return vl[t]})}function Vi(t,e){function r(e){c+=e,t=t.substring(e)}function i(t,r,i){var n,s;if(null==r&&(r=c),null==i&&(i=c),t&&(s=t.toLowerCase()),t)for(n=a.length-1;n>=0&&a[n].lowerCasedTag!==s;n--);else n=0;if(n>=0){for(var l=a.length-1;l>=n;l--)e.end&&e.end(a[l].tag,r,i);a.length=n,o=n&&a[n-1].tag}else"br"===s?e.start&&e.start(t,[],!0,r,i):"p"===s&&(e.start&&e.start(t,[],!1,r,i),e.end&&e.end(t,r,i))}for(var n,o,a=[],s=e.expectHTML,l=e.isUnaryTag||lo,u=e.canBeLeftOpenTag||lo,c=0;t;){if(n=t,o&&dl(o)){var p=0,h=o.toLowerCase(),f=ml[h]||(ml[h]=new RegExp("([\\s\\S]*?)(</"+h+"[^>]*>)","i")),d=t.replace(f,function(t,r,i){return p=i.length,dl(h)||"noscript"===h||(r=r.replace(/<!--([\s\S]*?)-->/g,"$1").replace(/<!\[CDATA\[([\s\S]*?)]]>/g,"$1")),xl(h,r)&&(r=r.slice(1)),e.chars&&e.chars(r),""});c+=t.length-d.length,t=d,i(h,c-p,c)}else{var m=t.indexOf("<");if(0===m){if(el.test(t)){var v=t.indexOf("--\x3e");if(v>=0){e.shouldKeepComment&&e.comment(t.substring(4,v)),r(v+3);continue}}if(rl.test(t)){var y=t.indexOf("]>");if(y>=0){r(y+2);continue}}var g=t.match(tl);if(g){r(g[0].length);continue}var _=t.match(Qs);if(_){var x=c;r(_[0].length),i(_[1],x,c);continue}var b=function(){var e=t.match(Js);if(e){var i={tagName:e[1],attrs:[],start:c};r(e[0].length);for(var n,o;!(n=t.match(Ys))&&(o=t.match(Hs));)r(o[0].length),i.attrs.push(o);if(n)return i.unarySlash=n[1],r(n[0].length),i.end=c,i}}();if(b){!function(t){var r=t.tagName,n=t.unarySlash;s&&("p"===o&&Ws(r)&&i(o),u(r)&&o===r&&i(r));for(var c=l(r)||!!n,p=t.attrs.length,h=new Array(p),f=0;f<p;f++){var d=t.attrs[f];il&&-1===d[0].indexOf('""')&&(""===d[3]&&delete d[3],""===d[4]&&delete d[4],""===d[5]&&delete d[5]);var m=d[3]||d[4]||d[5]||"";h[f]={name:d[1],value:ji(m,e.shouldDecodeNewlines)}}c||(a.push({tag:r,lowerCasedTag:r.toLowerCase(),attrs:h}),o=r),e.start&&e.start(r,h,c,t.start,t.end)}(b),xl(o,t)&&r(1);continue}}var w=void 0,T=void 0,S=void 0;if(m>=0){for(T=t.slice(m);!(Qs.test(T)||Js.test(T)||el.test(T)||rl.test(T)||(S=T.indexOf("<",1))<0);)m+=S,T=t.slice(m);w=t.substring(0,m),r(m)}m<0&&(w=t,t=""),e.chars&&w&&e.chars(w)}if(t===n){e.chars&&e.chars(t);break}}i()}function Ni(t,e,r){return{type:1,tag:t,attrsList:e,attrsMap:an(e),parent:r,children:[]}}function Ui(t,e){function r(t){t.pre&&(s=!1),ul(t.tag)&&(l=!1)}nl=e.warn||Tr,ul=e.isPreTag||lo,cl=e.mustUseProp||lo,pl=e.getTagNamespace||lo,al=Sr(e.modules,"transformNode"),sl=Sr(e.modules,"preTransformNode"),ll=Sr(e.modules,"postTransformNode"),ol=e.delimiters;var i,n,o=[],a=!1!==e.preserveWhitespace,s=!1,l=!1;return Vi(t,{warn:nl,expectHTML:e.expectHTML,isUnaryTag:e.isUnaryTag,canBeLeftOpenTag:e.canBeLeftOpenTag,shouldDecodeNewlines:e.shouldDecodeNewlines,shouldKeepComment:e.comments,start:function(t,a,u){var c=n&&n.ns||pl(t);xo&&"svg"===c&&(a=un(a));var p=Ni(t,a,n);c&&(p.ns=c),ln(p)&&!Mo()&&(p.forbidden=!0);for(var h=0;h<sl.length;h++)p=sl[h](p,e)||p;if(s||($i(p),p.pre&&(s=!0)),ul(p.tag)&&(l=!0),s?qi(p):p.processed||(Hi(p),Xi(p),Qi(p),Zi(p,e)),i?o.length||i.if&&(p.elseif||p.else)&&Yi(i,{exp:p.elseif,block:p}):i=p,n&&!p.forbidden)if(p.elseif||p.else)Ki(p,n);else if(p.slotScope){n.plain=!1;var f=p.slotTarget||'"default"';(n.scopedSlots||(n.scopedSlots={}))[f]=p}else n.children.push(p),p.parent=n;u?r(p):(n=p,o.push(p));for(var d=0;d<ll.length;d++)ll[d](p,e)},end:function(){var t=o[o.length-1],e=t.children[t.children.length-1];e&&3===e.type&&" "===e.text&&!l&&t.children.pop(),o.length-=1,n=o[o.length-1],r(t)},chars:function(t){if(n&&(!xo||"textarea"!==n.tag||n.attrsMap.placeholder!==t)){var e=n.children;if(t=l||t.trim()?sn(n)?t:El(t):a&&e.length?" ":""){var r;!s&&" "!==t&&(r=Ri(t,ol))?e.push({type:2,expression:r,text:t}):" "===t&&e.length&&" "===e[e.length-1].text||e.push({type:3,text:t})}}},comment:function(t){n.children.push({type:3,text:t,isComment:!0})}}),i}function $i(t){null!=Mr(t,"v-pre")&&(t.pre=!0)}function qi(t){var e=t.attrsList.length;if(e)for(var r=t.attrs=new Array(e),i=0;i<e;i++)r[i]={name:t.attrsList[i].name,value:JSON.stringify(t.attrsList[i].value)};else t.pre||(t.plain=!0)}function Zi(t,e){Gi(t),t.plain=!t.key&&!t.attrsList.length,Wi(t),tn(t),en(t);for(var r=0;r<al.length;r++)t=al[r](t,e)||t;rn(t)}function Gi(t){var e=kr(t,"key");e&&(t.key=e)}function Wi(t){var e=kr(t,"ref");e&&(t.ref=e,t.refInFor=nn(t))}function Hi(t){var e;if(e=Mr(t,"v-for")){var r=e.match(Tl);if(!r)return;t.for=r[2].trim();var i=r[1].trim(),n=i.match(Sl);n?(t.alias=n[1].trim(),t.iterator1=n[2].trim(),n[3]&&(t.iterator2=n[3].trim())):t.alias=i}}function Xi(t){var e=Mr(t,"v-if");if(e)t.if=e,Yi(t,{exp:e,block:t});else{null!=Mr(t,"v-else")&&(t.else=!0);var r=Mr(t,"v-else-if");r&&(t.elseif=r)}}function Ki(t,e){var r=Ji(e.children);r&&r.if&&Yi(r,{exp:t.elseif,block:t})}function Ji(t){for(var e=t.length;e--;){if(1===t[e].type)return t[e];t.pop()}}function Yi(t,e){t.ifConditions||(t.ifConditions=[]),t.ifConditions.push(e)}function Qi(t){null!=Mr(t,"v-once")&&(t.once=!0)}function tn(t){if("slot"===t.tag)t.slotName=kr(t,"name");else{var e;"template"===t.tag?(e=Mr(t,"scope"),t.slotScope=e||Mr(t,"slot-scope")):(e=Mr(t,"slot-scope"))&&(t.slotScope=e);var r=kr(t,"slot");r&&(t.slotTarget='""'===r?'"default"':r,t.slotScope||Ar(t,"slot",r))}}function en(t){var e;(e=kr(t,"is"))&&(t.component=e),null!=Mr(t,"inline-template")&&(t.inlineTemplate=!0)}function rn(t){var e,r,i,n,o,a,s,l=t.attrsList;for(e=0,r=l.length;e<r;e++)if(i=n=l[e].name,o=l[e].value,wl.test(i))if(t.hasBindings=!0,a=on(i),a&&(i=i.replace(Cl,"")),Al.test(i))i=i.replace(Al,""),o=br(o),s=!1,a&&(a.prop&&(s=!0,"innerHtml"===(i=no(i))&&(i="innerHTML")),a.camel&&(i=no(i)),a.sync&&Er(t,"update:"+no(i),Ir(o,"$event"))),s||!t.component&&cl(t.tag,t.attrsMap.type,i)?zr(t,i,o):Ar(t,i,o);else if(bl.test(i))i=i.replace(bl,""),Er(t,i,o,a,!1,nl);else{i=i.replace(wl,"");var u=i.match(zl),c=u&&u[1];c&&(i=i.slice(0,-(c.length+1))),Cr(t,i,n,o,c,a)}else{Ar(t,i,JSON.stringify(o))}}function nn(t){for(var e=t;e;){if(void 0!==e.for)return!0;e=e.parent}return!1}function on(t){var e=t.match(Cl);if(e){var r={};return e.forEach(function(t){r[t.slice(1)]=!0}),r}}function an(t){for(var e={},r=0,i=t.length;r<i;r++)e[t[r].name]=t[r].value;return e}function sn(t){return"script"===t.tag||"style"===t.tag}function ln(t){return"style"===t.tag||"script"===t.tag&&(!t.attrsMap.type||"text/javascript"===t.attrsMap.type)}function un(t){for(var e=[],r=0;r<t.length;r++){var i=t[r];kl.test(i.name)||(i.name=i.name.replace(Ml,""),e.push(i))}return e}function cn(t,e){if("input"===t.tag){var r=t.attrsMap;if(r["v-model"]&&(r["v-bind:type"]||r[":type"])){var i=kr(t,"type"),n=Mr(t,"v-if",!0),o=n?"&&("+n+")":"",a=pn(t);Hi(a),hn(a,"type","checkbox"),Zi(a,e),a.processed=!0,a.if="("+i+")==='checkbox'"+o,Yi(a,{exp:a.if,block:a});var s=pn(t);Mr(s,"v-for",!0),hn(s,"type","radio"),Zi(s,e),Yi(a,{exp:"("+i+")==='radio'"+o,block:s});var l=pn(t);return Mr(l,"v-for",!0),hn(l,":type",i),Zi(l,e),Yi(a,{exp:n,block:l}),a}}}function pn(t){return Ni(t.tag,t.attrsList.slice(),t.parent)}function hn(t,e,r){t.attrsMap[e]=r,t.attrsList.push({name:e,value:r})}function fn(t,e){e.value&&zr(t,"textContent","_s("+e.value+")")}function dn(t,e){e.value&&zr(t,"innerHTML","_s("+e.value+")")}function mn(t,e){t&&(hl=Dl(e.staticKeys||""),fl=e.isReservedTag||lo,yn(t),gn(t,!1))}function vn(t){return d("type,tag,attrsList,attrsMap,plain,parent,children,attrs"+(t?","+t:""))}function yn(t){if(t.static=_n(t),1===t.type){if(!fl(t.tag)&&"slot"!==t.tag&&null==t.attrsMap["inline-template"])return;for(var e=0,r=t.children.length;e<r;e++){var i=t.children[e];yn(i),i.static||(t.static=!1)}if(t.ifConditions)for(var n=1,o=t.ifConditions.length;n<o;n++){var a=t.ifConditions[n].block;yn(a),a.static||(t.static=!1)}}}function gn(t,e){if(1===t.type){if((t.static||t.once)&&(t.staticInFor=e),t.static&&t.children.length&&(1!==t.children.length||3!==t.children[0].type))return void(t.staticRoot=!0);if(t.staticRoot=!1,t.children)for(var r=0,i=t.children.length;r<i;r++)gn(t.children[r],e||!!t.for);if(t.ifConditions)for(var n=1,o=t.ifConditions.length;n<o;n++)gn(t.ifConditions[n].block,e)}}function _n(t){return 2!==t.type&&(3===t.type||!(!t.pre&&(t.hasBindings||t.if||t.for||to(t.tag)||!fl(t.tag)||xn(t)||!Object.keys(t).every(hl))))}function xn(t){for(;t.parent;){if(t=t.parent,"template"!==t.tag)return!1;if(t.for)return!0}return!1}function bn(t,e,r){var i=e?"nativeOn:{":"on:{";for(var n in t){i+='"'+n+'":'+wn(n,t[n])+","}return i.slice(0,-1)+"}"}function wn(t,e){if(!e)return"function(){}";if(Array.isArray(e))return"["+e.map(function(e){return wn(t,e)}).join(",")+"]";var r=Bl.test(e.value),i=Ol.test(e.value);if(e.modifiers){var n="",o="",a=[];for(var s in e.modifiers)if(Vl[s])o+=Vl[s],Fl[s]&&a.push(s);else if("exact"===s){var l=e.modifiers;o+=jl(["ctrl","shift","alt","meta"].filter(function(t){return!l[t]}).map(function(t){return"$event."+t+"Key"}).join("||"))}else a.push(s);a.length&&(n+=Tn(a)),o&&(n+=o);return"function($event){"+n+(r?e.value+"($event)":i?"("+e.value+")($event)":e.value)+"}"}return r||i?e.value:"function($event){"+e.value+"}"}function Tn(t){return"if(!('button' in $event)&&"+t.map(Sn).join("&&")+")return null;"}function Sn(t){var e=parseInt(t,10);if(e)return"$event.keyCode!=="+e;var r=Fl[t];return"_k($event.keyCode,"+JSON.stringify(t)+","+JSON.stringify(r)+",$event.key)"}function zn(t,e){t.wrapListeners=function(t){return"_g("+t+","+e.value+")"}}function An(t,e){t.wrapData=function(r){return"_b("+r+",'"+t.tag+"',"+e.value+","+(e.modifiers&&e.modifiers.prop?"true":"false")+(e.modifiers&&e.modifiers.sync?",true":"")+")"}}function Cn(t,e){var r=new Ul(e);return{render:"with(this){return "+(t?En(t,r):'_c("div")')+"}",staticRenderFns:r.staticRenderFns}}function En(t,e){if(t.staticRoot&&!t.staticProcessed)return kn(t,e);if(t.once&&!t.onceProcessed)return Mn(t,e);if(t.for&&!t.forProcessed)return Pn(t,e);if(t.if&&!t.ifProcessed)return Ln(t,e);if("template"!==t.tag||t.slotTarget){if("slot"===t.tag)return Gn(t,e);var r;if(t.component)r=Wn(t.component,t,e);else{var i=t.plain?void 0:Rn(t,e),n=t.inlineTemplate?null:Vn(t,e,!0);r="_c('"+t.tag+"'"+(i?","+i:"")+(n?","+n:"")+")"}for(var o=0;o<e.transforms.length;o++)r=e.transforms[o](t,r);return r}return Vn(t,e)||"void 0"}function kn(t,e){return t.staticProcessed=!0,e.staticRenderFns.push("with(this){return "+En(t,e)+"}"),"_m("+(e.staticRenderFns.length-1)+(t.staticInFor?",true":"")+")"}function Mn(t,e){if(t.onceProcessed=!0,t.if&&!t.ifProcessed)return Ln(t,e);if(t.staticInFor){for(var r="",i=t.parent;i;){if(i.for){r=i.key;break}i=i.parent}return r?"_o("+En(t,e)+","+e.onceId+++","+r+")":En(t,e)}return kn(t,e)}function Ln(t,e,r,i){return t.ifProcessed=!0,In(t.ifConditions.slice(),e,r,i)}function In(t,e,r,i){function n(t){return r?r(t,e):t.once?Mn(t,e):En(t,e)}if(!t.length)return i||"_e()";var o=t.shift();return o.exp?"("+o.exp+")?"+n(o.block)+":"+In(t,e,r,i):""+n(o.block)}function Pn(t,e,r,i){var n=t.for,o=t.alias,a=t.iterator1?","+t.iterator1:"",s=t.iterator2?","+t.iterator2:"";return t.forProcessed=!0,(i||"_l")+"(("+n+"),function("+o+a+s+"){return "+(r||En)(t,e)+"})"}function Rn(t,e){var r="{",i=Dn(t,e);i&&(r+=i+","),t.key&&(r+="key:"+t.key+","),t.ref&&(r+="ref:"+t.ref+","),t.refInFor&&(r+="refInFor:true,"),t.pre&&(r+="pre:true,"),t.component&&(r+='tag:"'+t.tag+'",');for(var n=0;n<e.dataGenFns.length;n++)r+=e.dataGenFns[n](t);if(t.attrs&&(r+="attrs:{"+Hn(t.attrs)+"},"),t.props&&(r+="domProps:{"+Hn(t.props)+"},"),t.events&&(r+=bn(t.events,!1,e.warn)+","),t.nativeEvents&&(r+=bn(t.nativeEvents,!0,e.warn)+","),t.slotTarget&&!t.slotScope&&(r+="slot:"+t.slotTarget+","),t.scopedSlots&&(r+=Bn(t.scopedSlots,e)+","),t.model&&(r+="model:{value:"+t.model.value+",callback:"+t.model.callback+",expression:"+t.model.expression+"},"),t.inlineTemplate){var o=On(t,e);o&&(r+=o+",")}return r=r.replace(/,$/,"")+"}",t.wrapData&&(r=t.wrapData(r)),t.wrapListeners&&(r=t.wrapListeners(r)),r}function Dn(t,e){var r=t.directives;if(r){var i,n,o,a,s="directives:[",l=!1;for(i=0,n=r.length;i<n;i++){o=r[i],a=!0;var u=e.directives[o.name];u&&(a=!!u(t,o,e.warn)),a&&(l=!0,s+='{name:"'+o.name+'",rawName:"'+o.rawName+'"'+(o.value?",value:("+o.value+"),expression:"+JSON.stringify(o.value):"")+(o.arg?',arg:"'+o.arg+'"':"")+(o.modifiers?",modifiers:"+JSON.stringify(o.modifiers):"")+"},")}return l?s.slice(0,-1)+"]":void 0}}function On(t,e){var r=t.children[0];if(1===r.type){var i=Cn(r,e.options);return"inlineTemplate:{render:function(){"+i.render+"},staticRenderFns:["+i.staticRenderFns.map(function(t){return"function(){"+t+"}"}).join(",")+"]}"}}function Bn(t,e){return"scopedSlots:_u(["+Object.keys(t).map(function(r){return Fn(r,t[r],e)}).join(",")+"])"}function Fn(t,e,r){return e.for&&!e.forProcessed?jn(t,e,r):"{key:"+t+",fn:function("+String(e.slotScope)+"){return "+("template"===e.tag?e.if?e.if+"?"+(Vn(e,r)||"undefined")+":undefined":Vn(e,r)||"undefined":En(e,r))+"}}"}function jn(t,e,r){var i=e.for,n=e.alias,o=e.iterator1?","+e.iterator1:"",a=e.iterator2?","+e.iterator2:"";return e.forProcessed=!0,"_l(("+i+"),function("+n+o+a+"){return "+Fn(t,e,r)+"})"}function Vn(t,e,r,i,n){var o=t.children;if(o.length){var a=o[0];if(1===o.length&&a.for&&"template"!==a.tag&&"slot"!==a.tag)return(i||En)(a,e);var s=r?Nn(o,e.maybeComponent):0,l=n||$n;return"["+o.map(function(t){return l(t,e)}).join(",")+"]"+(s?","+s:"")}}function Nn(t,e){for(var r=0,i=0;i<t.length;i++){var n=t[i];if(1===n.type){if(Un(n)||n.ifConditions&&n.ifConditions.some(function(t){return Un(t.block)})){r=2;break}(e(n)||n.ifConditions&&n.ifConditions.some(function(t){return e(t.block)}))&&(r=1)}}return r}function Un(t){return void 0!==t.for||"template"===t.tag||"slot"===t.tag}function $n(t,e){return 1===t.type?En(t,e):3===t.type&&t.isComment?Zn(t):qn(t)}function qn(t){return"_v("+(2===t.type?t.expression:Xn(JSON.stringify(t.text)))+")"}function Zn(t){return"_e("+JSON.stringify(t.text)+")"}function Gn(t,e){var r=t.slotName||'"default"',i=Vn(t,e),n="_t("+r+(i?","+i:""),o=t.attrs&&"{"+t.attrs.map(function(t){return no(t.name)+":"+t.value}).join(",")+"}",a=t.attrsMap["v-bind"];return!o&&!a||i||(n+=",null"),o&&(n+=","+o),a&&(n+=(o?"":",null")+","+a),n+")"}function Wn(t,e,r){var i=e.inlineTemplate?null:Vn(e,r,!0);return"_c("+t+","+Rn(e,r)+(i?","+i:"")+")"}function Hn(t){for(var e="",r=0;r<t.length;r++){var i=t[r];e+='"'+i.name+'":'+Xn(i.value)+","}return e.slice(0,-1)}function Xn(t){return t.replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029")}function Kn(t,e){try{return new Function(t)}catch(r){return e.push({err:r,code:t}),w}}function Jn(t){var e=Object.create(null);return function(r,i,n){i=x({},i);i.warn;delete i.warn;var o=i.delimiters?String(i.delimiters)+r:r;if(e[o])return e[o];var a=t(r,i),s={},l=[];return s.render=Kn(a.render,l),s.staticRenderFns=a.staticRenderFns.map(function(t){return Kn(t,l)}),e[o]=s}}function Yn(t){if(t.outerHTML)return t.outerHTML;var e=document.createElement("div");return e.appendChild(t.cloneNode(!0)),e.innerHTML}var Qn=Object.prototype.toString,to=d("slot,component",!0),eo=d("key,ref,slot,slot-scope,is"),ro=Object.prototype.hasOwnProperty,io=/-(\w)/g,no=y(function(t){return t.replace(io,function(t,e){return e?e.toUpperCase():""})}),oo=y(function(t){return t.charAt(0).toUpperCase()+t.slice(1)}),ao=/\B([A-Z])/g,so=y(function(t){return t.replace(ao,"-$1").toLowerCase()}),lo=function(t,e,r){return!1},uo=function(t){return t},co="data-server-rendered",po=["component","directive","filter"],ho=["beforeCreate","created","beforeMount","mounted","beforeUpdate","updated","beforeDestroy","destroyed","activated","deactivated","errorCaptured"],fo={optionMergeStrategies:Object.create(null),silent:!1,productionTip:!1,devtools:!1,performance:!1,errorHandler:null,warnHandler:null,ignoredElements:[],keyCodes:Object.create(null),isReservedTag:lo,isReservedAttr:lo,isUnknownElement:lo,getTagNamespace:w,parsePlatformTagName:uo,mustUseProp:lo,_lifecycleHooks:ho},mo=Object.freeze({}),vo=/[^\w.$]/,yo="__proto__"in{},go="undefined"!=typeof window,_o=go&&window.navigator.userAgent.toLowerCase(),xo=_o&&/msie|trident/.test(_o),bo=_o&&_o.indexOf("msie 9.0")>0,wo=_o&&_o.indexOf("edge/")>0,To=_o&&_o.indexOf("android")>0,So=_o&&/iphone|ipad|ipod|ios/.test(_o),zo=(_o&&/chrome\/\d+/.test(_o),{}.watch),Ao=!1;if(go)try{var Co={};Object.defineProperty(Co,"passive",{get:function(){Ao=!0}}),window.addEventListener("test-passive",null,Co)}catch(t){}var Eo,ko,Mo=function(){return void 0===Eo&&(Eo=!go&&void 0!==t&&"server"===t.process.env.VUE_ENV),Eo},Lo=go&&window.__VUE_DEVTOOLS_GLOBAL_HOOK__,Io="undefined"!=typeof Symbol&&k(Symbol)&&"undefined"!=typeof Reflect&&k(Reflect.ownKeys);ko="undefined"!=typeof Set&&k(Set)?Set:function(){function t(){this.set=Object.create(null)}return t.prototype.has=function(t){return!0===this.set[t]},t.prototype.add=function(t){this.set[t]=!0},t.prototype.clear=function(){this.set=Object.create(null)},t}();var Po=w,Ro=0,Do=function(){this.id=Ro++,this.subs=[]};Do.prototype.addSub=function(t){this.subs.push(t)},Do.prototype.removeSub=function(t){m(this.subs,t)},Do.prototype.depend=function(){Do.target&&Do.target.addDep(this)},Do.prototype.notify=function(){for(var t=this.subs.slice(),e=0,r=t.length;e<r;e++)t[e].update()},Do.target=null;var Oo=[],Bo=function(t,e,r,i,n,o,a,s){this.tag=t,this.data=e,this.children=r,this.text=i,this.elm=n,this.ns=void 0,this.context=o,this.functionalContext=void 0,this.functionalOptions=void 0,this.functionalScopeId=void 0,this.key=e&&e.key,this.componentOptions=a,this.componentInstance=void 0,this.parent=void 0,this.raw=!1,this.isStatic=!1,this.isRootInsert=!0,this.isComment=!1,this.isCloned=!1,this.isOnce=!1,this.asyncFactory=s,this.asyncMeta=void 0,this.isAsyncPlaceholder=!1},Fo={child:{configurable:!0}};Fo.child.get=function(){return this.componentInstance},Object.defineProperties(Bo.prototype,Fo);var jo=function(t){void 0===t&&(t="");var e=new Bo;return e.text=t,e.isComment=!0,e},Vo=Array.prototype,No=Object.create(Vo);["push","pop","shift","unshift","splice","sort","reverse"].forEach(function(t){var e=Vo[t];C(No,t,function(){for(var r=[],i=arguments.length;i--;)r[i]=arguments[i];var n,o=e.apply(this,r),a=this.__ob__;switch(t){case"push":case"unshift":n=r;break;case"splice":n=r.slice(2)}return n&&a.observeArray(n),a.dep.notify(),o})});var Uo=Object.getOwnPropertyNames(No),$o={shouldConvert:!0},qo=function(t){if(this.value=t,this.dep=new Do,this.vmCount=0,C(t,"__ob__",this),Array.isArray(t)){(yo?D:O)(t,No,Uo),this.observeArray(t)}else this.walk(t)};qo.prototype.walk=function(t){for(var e=Object.keys(t),r=0;r<e.length;r++)F(t,e[r],t[e[r]])},qo.prototype.observeArray=function(t){for(var e=0,r=t.length;e<r;e++)B(t[e])};var Zo=fo.optionMergeStrategies;Zo.data=function(t,e,r){return r?$(t,e,r):e&&"function"!=typeof e?t:$.call(this,t,e)},ho.forEach(function(t){Zo[t]=q}),po.forEach(function(t){Zo[t+"s"]=Z}),Zo.watch=function(t,e,r,i){if(t===zo&&(t=void 0),e===zo&&(e=void 0),!e)return Object.create(t||null);if(!t)return e;var n={};x(n,t);for(var o in e){var a=n[o],s=e[o];a&&!Array.isArray(a)&&(a=[a]),n[o]=a?a.concat(s):Array.isArray(s)?s:[s]}return n},Zo.props=Zo.methods=Zo.inject=Zo.computed=function(t,e,r,i){if(!t)return e;var n=Object.create(null);return x(n,t),e&&x(n,e),n},Zo.provide=$;var Go,Wo,Ho=function(t,e){return void 0===e?t:e},Xo=[],Ko=!1,Jo=!1;if(void 0!==r&&k(r))Wo=function(){r(nt)};else if("undefined"==typeof MessageChannel||!k(MessageChannel)&&"[object MessageChannelConstructor]"!==MessageChannel.toString())Wo=function(){setTimeout(nt,0)};else{var Yo=new MessageChannel,Qo=Yo.port2;Yo.port1.onmessage=nt,Wo=function(){Qo.postMessage(1)}}if("undefined"!=typeof Promise&&k(Promise)){var ta=Promise.resolve();Go=function(){ta.then(nt),So&&setTimeout(w)}}else Go=Wo;var ea,ra=y(function(t){var e="&"===t.charAt(0);t=e?t.slice(1):t;var r="~"===t.charAt(0);t=r?t.slice(1):t;var i="!"===t.charAt(0);return t=i?t.slice(1):t,{name:t,once:r,capture:i,passive:e}}),ia=null,na=[],oa=[],aa={},sa=!1,la=!1,ua=0,ca=0,pa=function(t,e,r,i){this.vm=t,t._watchers.push(this),i?(this.deep=!!i.deep,this.user=!!i.user,this.lazy=!!i.lazy,this.sync=!!i.sync):this.deep=this.user=this.lazy=this.sync=!1,this.cb=r,this.id=++ca,this.active=!0,this.dirty=this.lazy,this.deps=[],this.newDeps=[],this.depIds=new ko,this.newDepIds=new ko,this.expression="","function"==typeof e?this.getter=e:(this.getter=E(e),this.getter||(this.getter=function(){})),this.value=this.lazy?void 0:this.get()};pa.prototype.get=function(){M(this);var t,e=this.vm;try{t=this.getter.call(e,e)}catch(t){if(!this.user)throw t;et(t,e,'getter for watcher "'+this.expression+'"')}finally{this.deep&&Nt(t),L(),this.cleanupDeps()}return t},pa.prototype.addDep=function(t){var e=t.id;this.newDepIds.has(e)||(this.newDepIds.add(e),this.newDeps.push(t),this.depIds.has(e)||t.addSub(this))},pa.prototype.cleanupDeps=function(){for(var t=this,e=this.deps.length;e--;){var r=t.deps[e];t.newDepIds.has(r.id)||r.removeSub(t)}var i=this.depIds;this.depIds=this.newDepIds,this.newDepIds=i,this.newDepIds.clear(),i=this.deps,this.deps=this.newDeps,this.newDeps=i,this.newDeps.length=0},pa.prototype.update=function(){this.lazy?this.dirty=!0:this.sync?this.run():Vt(this)},pa.prototype.run=function(){if(this.active){var t=this.get();if(t!==this.value||l(t)||this.deep){var e=this.value;if(this.value=t,this.user)try{this.cb.call(this.vm,t,e)}catch(t){et(t,this.vm,'callback for watcher "'+this.expression+'"')}else this.cb.call(this.vm,t,e)}}},pa.prototype.evaluate=function(){this.value=this.get(),this.dirty=!1},pa.prototype.depend=function(){for(var t=this,e=this.deps.length;e--;)t.deps[e].depend()},pa.prototype.teardown=function(){var t=this;if(this.active){this.vm._isBeingDestroyed||m(this.vm._watchers,this);for(var e=this.deps.length;e--;)t.deps[e].removeSub(t);this.active=!1}};var ha=new ko,fa={enumerable:!0,configurable:!0,get:w,set:w},da={lazy:!0};fe(de.prototype);var ma={init:function(t,e,r,i){if(!t.componentInstance||t.componentInstance._isDestroyed){(t.componentInstance=ge(t,ia,r,i)).$mount(e?t.elm:void 0,e)}else if(t.data.keepAlive){var n=t;ma.prepatch(n,n)}},prepatch:function(t,e){var r=e.componentOptions;Mt(e.componentInstance=t.componentInstance,r.propsData,r.listeners,e,r.children)},insert:function(t){var e=t.context,r=t.componentInstance;r._isMounted||(r._isMounted=!0,Rt(r,"mounted")),t.data.keepAlive&&(e._isMounted?Ft(r):It(r,!0))},destroy:function(t){var e=t.componentInstance;e._isDestroyed||(t.data.keepAlive?Pt(e,!0):e.$destroy())}},va=Object.keys(ma),ya=1,ga=2,_a=0;!function(t){t.prototype._init=function(t){var e=this;e._uid=_a++,e._isVue=!0,t&&t._isComponent?Ae(e,t):e.$options=X(Ce(e.constructor),t||{},e),e._renderProxy=e,e._self=e,Et(e),bt(e),ze(e),Rt(e,"beforeCreate"),ee(e),qt(e),te(e),Rt(e,"created"),e.$options.el&&e.$mount(e.$options.el)}}(Me),function(t){var e={};e.get=function(){return this._data};var r={};r.get=function(){return this._props},Object.defineProperty(t.prototype,"$data",e),Object.defineProperty(t.prototype,"$props",r),t.prototype.$set=j,t.prototype.$delete=V,t.prototype.$watch=function(t,e,r){var i=this;if(u(e))return Qt(i,t,e,r);r=r||{},r.user=!0;var n=new pa(i,t,e,r);return r.immediate&&e.call(i,n.value),function(){n.teardown()}}}(Me),function(t){var e=/^hook:/;t.prototype.$on=function(t,r){var i=this,n=this;if(Array.isArray(t))for(var o=0,a=t.length;o<a;o++)i.$on(t[o],r);else(n._events[t]||(n._events[t]=[])).push(r),e.test(t)&&(n._hasHookEvent=!0);return n},t.prototype.$once=function(t,e){function r(){i.$off(t,r),e.apply(i,arguments)}var i=this;return r.fn=e,i.$on(t,r),i},t.prototype.$off=function(t,e){var r=this,i=this;if(!arguments.length)return i._events=Object.create(null),i;if(Array.isArray(t)){for(var n=0,o=t.length;n<o;n++)r.$off(t[n],e);return i}var a=i._events[t];if(!a)return i;if(1===arguments.length)return i._events[t]=null,i;if(e)for(var s,l=a.length;l--;)if((s=a[l])===e||s.fn===e){a.splice(l,1);break}return i},t.prototype.$emit=function(t){var e=this,r=e._events[t];if(r){r=r.length>1?_(r):r;for(var i=_(arguments,1),n=0,o=r.length;n<o;n++)try{r[n].apply(e,i)}catch(r){et(r,e,'event handler for "'+t+'"')}}return e}}(Me),function(t){t.prototype._update=function(t,e){var r=this;r._isMounted&&Rt(r,"beforeUpdate");var i=r.$el,n=r._vnode,o=ia;ia=r,r._vnode=t,n?r.$el=r.__patch__(n,t):(r.$el=r.__patch__(r.$el,t,e,!1,r.$options._parentElm,r.$options._refElm),r.$options._parentElm=r.$options._refElm=null),ia=o,i&&(i.__vue__=null),r.$el&&(r.$el.__vue__=r),r.$vnode&&r.$parent&&r.$vnode===r.$parent._vnode&&(r.$parent.$el=r.$el)},t.prototype.$forceUpdate=function(){var t=this;t._watcher&&t._watcher.update()},t.prototype.$destroy=function(){var t=this;if(!t._isBeingDestroyed){Rt(t,"beforeDestroy"),t._isBeingDestroyed=!0;var e=t.$parent;!e||e._isBeingDestroyed||t.$options.abstract||m(e.$children,t),t._watcher&&t._watcher.teardown();for(var r=t._watchers.length;r--;)t._watchers[r].teardown();t._data.__ob__&&t._data.__ob__.vmCount--,t._isDestroyed=!0,t.__patch__(t._vnode,null),Rt(t,"destroyed"),t.$off(),t.$el&&(t.$el.__vue__=null),t.$vnode&&(t.$vnode.parent=null)}}}(Me),function(t){fe(t.prototype),t.prototype.$nextTick=function(t){return at(t,this)},t.prototype._render=function(){var t=this,e=t.$options,r=e.render,i=e._parentVnode;if(t._isMounted)for(var n in t.$slots){var o=t.$slots[n];o._rendered&&(t.$slots[n]=R(o,!0))}t.$scopedSlots=i&&i.data.scopedSlots||mo,t.$vnode=i;var a;try{a=r.call(t._renderProxy,t.$createElement)}catch(e){et(e,t,"render"),a=t._vnode}return a instanceof Bo||(a=jo()),a.parent=i,a}}(Me);var xa=[String,RegExp,Array],ba={name:"keep-alive",abstract:!0,props:{include:xa,exclude:xa,max:[String,Number]},created:function(){this.cache=Object.create(null),this.keys=[]},destroyed:function(){var t=this;for(var e in t.cache)Ve(t.cache,e,t.keys)},watch:{include:function(t){je(this,function(e){return Fe(t,e)})},exclude:function(t){je(this,function(e){return!Fe(t,e)})}},render:function(){var t=xt(this.$slots.default),e=t&&t.componentOptions;if(e){var r=Be(e);if(r&&(this.include&&!Fe(this.include,r)||this.exclude&&Fe(this.exclude,r)))return t;var i=this,n=i.cache,o=i.keys,a=null==t.key?e.Ctor.cid+(e.tag?"::"+e.tag:""):t.key;n[a]?(t.componentInstance=n[a].componentInstance,m(o,a),o.push(a)):(n[a]=t,o.push(a),this.max&&o.length>parseInt(this.max)&&Ve(n,o[0],o,this._vnode)),t.data.keepAlive=!0}return t}},wa={KeepAlive:ba};!function(t){var e={};e.get=function(){return fo},Object.defineProperty(t,"config",e),t.util={warn:Po,extend:x,mergeOptions:X,defineReactive:F},t.set=j,t.delete=V,t.nextTick=at,t.options=Object.create(null),po.forEach(function(e){t.options[e+"s"]=Object.create(null)}),t.options._base=t,x(t.options.components,wa),Le(t),Ie(t),Pe(t),Oe(t)}(Me),Object.defineProperty(Me.prototype,"$isServer",{get:Mo}),Object.defineProperty(Me.prototype,"$ssrContext",{get:function(){return this.$vnode&&this.$vnode.ssrContext}}),Me.version="2.5.2";var Ta,Sa,za,Aa,Ca,Ea,ka,Ma,La,Ia=d("style,class"),Pa=d("input,textarea,option,select,progress"),Ra=function(t,e,r){return"value"===r&&Pa(t)&&"button"!==e||"selected"===r&&"option"===t||"checked"===r&&"input"===t||"muted"===r&&"video"===t},Da=d("contenteditable,draggable,spellcheck"),Oa=d("allowfullscreen,async,autofocus,autoplay,checked,compact,controls,declare,default,defaultchecked,defaultmuted,defaultselected,defer,disabled,enabled,formnovalidate,hidden,indeterminate,inert,ismap,itemscope,loop,multiple,muted,nohref,noresize,noshade,novalidate,nowrap,open,pauseonexit,readonly,required,reversed,scoped,seamless,selected,sortable,translate,truespeed,typemustmatch,visible"),Ba="http://www.w3.org/1999/xlink",Fa=function(t){return":"===t.charAt(5)&&"xlink"===t.slice(0,5)},ja=function(t){return Fa(t)?t.slice(6,t.length):""},Va=function(t){return null==t||!1===t},Na={svg:"http://www.w3.org/2000/svg",math:"http://www.w3.org/1998/Math/MathML"},Ua=d("html,body,base,head,link,meta,style,title,address,article,aside,footer,header,h1,h2,h3,h4,h5,h6,hgroup,nav,section,div,dd,dl,dt,figcaption,figure,picture,hr,img,li,main,ol,p,pre,ul,a,b,abbr,bdi,bdo,br,cite,code,data,dfn,em,i,kbd,mark,q,rp,rt,rtc,ruby,s,samp,small,span,strong,sub,sup,time,u,var,wbr,area,audio,map,track,video,embed,object,param,source,canvas,script,noscript,del,ins,caption,col,colgroup,table,thead,tbody,td,th,tr,button,datalist,fieldset,form,input,label,legend,meter,optgroup,option,output,progress,select,textarea,details,dialog,menu,menuitem,summary,content,element,shadow,template,blockquote,iframe,tfoot"),$a=d("svg,animate,circle,clippath,cursor,defs,desc,ellipse,filter,font-face,foreignObject,g,glyph,image,line,marker,mask,missing-glyph,path,pattern,polygon,polyline,rect,switch,symbol,text,textpath,tspan,use,view",!0),qa=function(t){return"pre"===t},Za=function(t){return Ua(t)||$a(t)},Ga=Object.create(null),Wa=d("text,number,password,search,email,tel,url"),Ha=Object.freeze({createElement:Je,createElementNS:Ye,createTextNode:Qe,createComment:tr,insertBefore:er,removeChild:rr,appendChild:ir,parentNode:nr,nextSibling:or,tagName:ar,setTextContent:sr,setAttribute:lr}),Xa={create:function(t,e){ur(e)},update:function(t,e){t.data.ref!==e.data.ref&&(ur(t,!0),ur(e))},destroy:function(t){ur(t,!0)}},Ka=new Bo("",{},[]),Ja=["create","activate","update","remove","destroy"],Ya={create:fr,update:fr,destroy:function(t){fr(t,Ka)}},Qa=Object.create(null),ts=[Xa,Ya],es={create:gr,update:gr},rs={create:xr,update:xr},is=/[\w).+\-_$\]]/,ns="__r",os="__c",as={create:Hr,update:Hr},ss={create:Xr,update:Xr},ls=y(function(t){var e={},r=/;(?![^(]*\))/g,i=/:(.+)/;return t.split(r).forEach(function(t){if(t){var r=t.split(i);r.length>1&&(e[r[0].trim()]=r[1].trim())}}),e}),us=/^--/,cs=/\s*!important$/,ps=function(t,e,r){if(us.test(e))t.style.setProperty(e,r);else if(cs.test(r))t.style.setProperty(e,r.replace(cs,""),"important");else{var i=fs(e);if(Array.isArray(r))for(var n=0,o=r.length;n<o;n++)t.style[i]=r[n];else t.style[i]=r}},hs=["Webkit","Moz","ms"],fs=y(function(t){if(La=La||document.createElement("div").style,"filter"!==(t=no(t))&&t in La)return t;for(var e=t.charAt(0).toUpperCase()+t.slice(1),r=0;r<hs.length;r++){var i=hs[r]+e;if(i in La)return i}}),ds={create:ri,update:ri},ms=y(function(t){return{enterClass:t+"-enter",enterToClass:t+"-enter-to",enterActiveClass:t+"-enter-active",leaveClass:t+"-leave",leaveToClass:t+"-leave-to",leaveActiveClass:t+"-leave-active"}}),vs=go&&!bo,ys="transition",gs="animation",_s="transition",xs="transitionend",bs="animation",ws="animationend";vs&&(void 0===window.ontransitionend&&void 0!==window.onwebkittransitionend&&(_s="WebkitTransition",xs="webkitTransitionEnd"),void 0===window.onanimationend&&void 0!==window.onwebkitanimationend&&(bs="WebkitAnimation",ws="webkitAnimationEnd"));var Ts=go?window.requestAnimationFrame?window.requestAnimationFrame.bind(window):setTimeout:function(t){return t()},Ss=/\b(transform|all)(,|$)/,zs=go?{create:yi,activate:yi,remove:function(t,e){!0!==t.data.show?di(t,e):e()}}:{},As=[es,rs,as,ss,ds,zs],Cs=As.concat(ts),Es=function(t){function e(t){return new Bo(L.tagName(t).toLowerCase(),{},[],void 0,t)}function r(t,e){function r(){0==--r.listeners&&a(t)}return r.listeners=e,r}function a(t){var e=L.parentNode(t);n(e)&&L.removeChild(e,t)}function l(t,e,r,i,a){if(t.isRootInsert=!a,!u(t,e,r,i)){var s=t.data,l=t.children,c=t.tag;n(c)?(t.elm=t.ns?L.createElementNS(t.ns,c):L.createElement(c,t),y(t),f(t,l,e),n(s)&&v(t,e),h(r,t.elm,i)):o(t.isComment)?(t.elm=L.createComment(t.text),h(r,t.elm,i)):(t.elm=L.createTextNode(t.text),h(r,t.elm,i))}}function u(t,e,r,i){var a=t.data;if(n(a)){var s=n(t.componentInstance)&&a.keepAlive;if(n(a=a.hook)&&n(a=a.init)&&a(t,!1,r,i),n(t.componentInstance))return c(t,e),o(s)&&p(t,e,r,i),!0}}function c(t,e){n(t.data.pendingInsert)&&(e.push.apply(e,t.data.pendingInsert),t.data.pendingInsert=null),t.elm=t.componentInstance.$el,m(t)?(v(t,e),y(t)):(ur(t),e.push(t))}function p(t,e,r,i){for(var o,a=t;a.componentInstance;)if(a=a.componentInstance._vnode,n(o=a.data)&&n(o=o.transition)){for(o=0;o<k.activate.length;++o)k.activate[o](Ka,a);e.push(a);break}h(r,t.elm,i)}function h(t,e,r){n(t)&&(n(r)?r.parentNode===t&&L.insertBefore(t,e,r):L.appendChild(t,e))}function f(t,e,r){if(Array.isArray(e))for(var i=0;i<e.length;++i)l(e[i],r,t.elm,null,!0);else s(t.text)&&L.appendChild(t.elm,L.createTextNode(t.text))}function m(t){for(;t.componentInstance;)t=t.componentInstance._vnode;return n(t.tag)}function v(t,e){for(var r=0;r<k.create.length;++r)k.create[r](Ka,t);C=t.data.hook,n(C)&&(n(C.create)&&C.create(Ka,t),n(C.insert)&&e.push(t))}function y(t){var e;if(n(e=t.functionalScopeId))L.setAttribute(t.elm,e,"");else for(var r=t;r;)n(e=r.context)&&n(e=e.$options._scopeId)&&L.setAttribute(t.elm,e,""),r=r.parent;n(e=ia)&&e!==t.context&&e!==t.functionalContext&&n(e=e.$options._scopeId)&&L.setAttribute(t.elm,e,"")}function g(t,e,r,i,n,o){for(;i<=n;++i)l(r[i],o,t,e)}function _(t){var e,r,i=t.data;if(n(i))for(n(e=i.hook)&&n(e=e.destroy)&&e(t),e=0;e<k.destroy.length;++e)k.destroy[e](t);if(n(e=t.children))for(r=0;r<t.children.length;++r)_(t.children[r])}function x(t,e,r,i){for(;r<=i;++r){var o=e[r];n(o)&&(n(o.tag)?(b(o),_(o)):a(o.elm))}}function b(t,e){if(n(e)||n(t.data)){var i,o=k.remove.length+1;for(n(e)?e.listeners+=o:e=r(t.elm,o),n(i=t.componentInstance)&&n(i=i._vnode)&&n(i.data)&&b(i,e),i=0;i<k.remove.length;++i)k.remove[i](t,e);n(i=t.data.hook)&&n(i=i.remove)?i(t,e):e()}else a(t.elm)}function w(t,e,r,o,a){for(var s,u,c,p,h=0,f=0,d=e.length-1,m=e[0],v=e[d],y=r.length-1,_=r[0],b=r[y],w=!a;h<=d&&f<=y;)i(m)?m=e[++h]:i(v)?v=e[--d]:cr(m,_)?(S(m,_,o),m=e[++h],_=r[++f]):cr(v,b)?(S(v,b,o),v=e[--d],b=r[--y]):cr(m,b)?(S(m,b,o),w&&L.insertBefore(t,m.elm,L.nextSibling(v.elm)),m=e[++h],b=r[--y]):cr(v,_)?(S(v,_,o),w&&L.insertBefore(t,v.elm,m.elm),v=e[--d],_=r[++f]):(i(s)&&(s=hr(e,h,d)),u=n(_.key)?s[_.key]:T(_,e,h,d),i(u)?l(_,o,t,m.elm):(c=e[u],cr(c,_)?(S(c,_,o),e[u]=void 0,w&&L.insertBefore(t,c.elm,m.elm)):l(_,o,t,m.elm)),_=r[++f]);h>d?(p=i(r[y+1])?null:r[y+1].elm,g(t,p,r,f,y,o)):f>y&&x(t,e,h,d)}function T(t,e,r,i){for(var o=r;o<i;o++){var a=e[o];if(n(a)&&cr(t,a))return o}}function S(t,e,r,a){if(t!==e){var s=e.elm=t.elm;if(o(t.isAsyncPlaceholder))return void(n(e.asyncFactory.resolved)?A(t.elm,e,r):e.isAsyncPlaceholder=!0);if(o(e.isStatic)&&o(t.isStatic)&&e.key===t.key&&(o(e.isCloned)||o(e.isOnce)))return void(e.componentInstance=t.componentInstance);var l,u=e.data;n(u)&&n(l=u.hook)&&n(l=l.prepatch)&&l(t,e);var c=t.children,p=e.children;if(n(u)&&m(e)){for(l=0;l<k.update.length;++l)k.update[l](t,e);n(l=u.hook)&&n(l=l.update)&&l(t,e)}i(e.text)?n(c)&&n(p)?c!==p&&w(s,c,p,r,a):n(p)?(n(t.text)&&L.setTextContent(s,""),g(s,null,p,0,p.length-1,r)):n(c)?x(s,c,0,c.length-1):n(t.text)&&L.setTextContent(s,""):t.text!==e.text&&L.setTextContent(s,e.text),n(u)&&n(l=u.hook)&&n(l=l.postpatch)&&l(t,e)}}function z(t,e,r){if(o(r)&&n(t.parent))t.parent.data.pendingInsert=e;else for(var i=0;i<e.length;++i)e[i].data.hook.insert(e[i])}function A(t,e,r){if(o(e.isComment)&&n(e.asyncFactory))return e.elm=t,e.isAsyncPlaceholder=!0,!0;e.elm=t;var i=e.tag,a=e.data,s=e.children;if(n(a)&&(n(C=a.hook)&&n(C=C.init)&&C(e,!0),n(C=e.componentInstance)))return c(e,r),!0;if(n(i)){if(n(s))if(t.hasChildNodes())if(n(C=a)&&n(C=C.domProps)&&n(C=C.innerHTML)){if(C!==t.innerHTML)return!1}else{for(var l=!0,u=t.firstChild,p=0;p<s.length;p++){if(!u||!A(u,s[p],r)){l=!1;break}u=u.nextSibling}if(!l||u)return!1}else f(e,s,r);if(n(a))for(var h in a)if(!I(h)){v(e,r);break}}else t.data!==e.text&&(t.data=e.text);return!0}var C,E,k={},M=t.modules,L=t.nodeOps;for(C=0;C<Ja.length;++C)for(k[Ja[C]]=[],E=0;E<M.length;++E)n(M[E][Ja[C]])&&k[Ja[C]].push(M[E][Ja[C]]);var I=d("attrs,style,class,staticClass,staticStyle,key");return function(t,r,a,s,u,c){if(i(r))return void(n(t)&&_(t));var p=!1,h=[];if(i(t))p=!0,l(r,h,u,c);else{var f=n(t.nodeType);if(!f&&cr(t,r))S(t,r,h,s);else{if(f){if(1===t.nodeType&&t.hasAttribute(co)&&(t.removeAttribute(co),a=!0),o(a)&&A(t,r,h))return z(r,h,!0),t;t=e(t)}var d=t.elm,v=L.parentNode(d);if(l(r,h,d._leaveCb?null:v,L.nextSibling(d)),n(r.parent))for(var y=r.parent,g=m(r);y;){for(var b=0;b<k.destroy.length;++b)k.destroy[b](y);if(y.elm=r.elm,g){for(var w=0;w<k.create.length;++w)k.create[w](Ka,y);var T=y.data.hook.insert;if(T.merged)for(var C=1;C<T.fns.length;C++)T.fns[C]()}else ur(y);y=y.parent}n(v)?x(v,[t],0,0):n(t.tag)&&_(t)}}return z(r,h,p),r.elm}}({nodeOps:Ha,modules:Cs});bo&&document.addEventListener("selectionchange",function(){var t=document.activeElement;t&&t.vmodel&&Si(t,"input")});var ks={inserted:function(t,e,r){"select"===r.tag?(gi(t,e,r.context),t._vOptions=[].map.call(t.options,bi)):("textarea"===r.tag||Wa(t.type))&&(t._vModifiers=e.modifiers,e.modifiers.lazy||(t.addEventListener("change",Ti),To||(t.addEventListener("compositionstart",wi),t.addEventListener("compositionend",Ti)),bo&&(t.vmodel=!0)))},componentUpdated:function(t,e,r){if("select"===r.tag){gi(t,e,r.context);var i=t._vOptions,n=t._vOptions=[].map.call(t.options,bi);if(n.some(function(t,e){return!T(t,i[e])})){(t.multiple?e.value.some(function(t){return xi(t,n)}):e.value!==e.oldValue&&xi(e.value,n))&&Si(t,"change")}}}},Ms={bind:function(t,e,r){var i=e.value;r=zi(r);var n=r.data&&r.data.transition,o=t.__vOriginalDisplay="none"===t.style.display?"":t.style.display;i&&n?(r.data.show=!0,fi(r,function(){t.style.display=o})):t.style.display=i?o:"none"},update:function(t,e,r){var i=e.value;i!==e.oldValue&&(r=zi(r),r.data&&r.data.transition?(r.data.show=!0,i?fi(r,function(){t.style.display=t.__vOriginalDisplay}):di(r,function(){t.style.display="none"})):t.style.display=i?t.__vOriginalDisplay:"none")},unbind:function(t,e,r,i,n){n||(t.style.display=t.__vOriginalDisplay)}},Ls={model:ks,show:Ms},Is={name:String,appear:Boolean,css:Boolean,mode:String,type:String,enterClass:String,leaveClass:String,enterToClass:String,leaveToClass:String,enterActiveClass:String,leaveActiveClass:String,appearClass:String,appearActiveClass:String,appearToClass:String,duration:[Number,String,Object]},Ps={name:"transition",props:Is,abstract:!0,render:function(t){var e=this,r=this.$options._renderChildren;if(r&&(r=r.filter(function(t){return t.tag||_t(t)}),r.length)){var i=this.mode,n=r[0];if(ki(this.$vnode))return n;var o=Ai(n);if(!o)return n;if(this._leaving)return Ei(t,n);var a="__transition-"+this._uid+"-";o.key=null==o.key?o.isComment?a+"comment":a+o.tag:s(o.key)?0===String(o.key).indexOf(a)?o.key:a+o.key:o.key;var l=(o.data||(o.data={})).transition=Ci(this),u=this._vnode,c=Ai(u);if(o.data.directives&&o.data.directives.some(function(t){return"show"===t.name})&&(o.data.show=!0),c&&c.data&&!Mi(o,c)&&!_t(c)){var p=c.data.transition=x({},l);if("out-in"===i)return this._leaving=!0,ut(p,"afterLeave",function(){e._leaving=!1,e.$forceUpdate()}),Ei(t,n);if("in-out"===i){if(_t(o))return u;var h,f=function(){h()};ut(l,"afterEnter",f),ut(l,"enterCancelled",f),ut(p,"delayLeave",function(t){h=t})}}return n}}},Rs=x({tag:String,moveClass:String},Is);delete Rs.mode;var Ds={props:Rs,render:function(t){for(var e=this.tag||this.$vnode.data.tag||"span",r=Object.create(null),i=this.prevChildren=this.children,n=this.$slots.default||[],o=this.children=[],a=Ci(this),s=0;s<n.length;s++){var l=n[s];if(l.tag)if(null!=l.key&&0!==String(l.key).indexOf("__vlist"))o.push(l),r[l.key]=l,(l.data||(l.data={})).transition=a;else;}if(i){for(var u=[],c=[],p=0;p<i.length;p++){var h=i[p];h.data.transition=a,h.data.pos=h.elm.getBoundingClientRect(),r[h.key]?u.push(h):c.push(h)}this.kept=t(e,null,u),this.removed=c}return t(e,null,o)},beforeUpdate:function(){this.__patch__(this._vnode,this.kept,!1,!0),this._vnode=this.kept},updated:function(){var t=this.prevChildren,e=this.moveClass||(this.name||"v")+"-move";t.length&&this.hasMove(t[0].elm,e)&&(t.forEach(Li),t.forEach(Ii),t.forEach(Pi),this._reflow=document.body.offsetHeight,t.forEach(function(t){if(t.data.moved){var r=t.elm,i=r.style;si(r,e),i.transform=i.WebkitTransform=i.transitionDuration="",r.addEventListener(xs,r._moveCb=function t(i){i&&!/transform$/.test(i.propertyName)||(r.removeEventListener(xs,t),r._moveCb=null,li(r,e))})}}))},methods:{hasMove:function(t,e){if(!vs)return!1;if(this._hasMove)return this._hasMove;var r=t.cloneNode();t._transitionClasses&&t._transitionClasses.forEach(function(t){ni(r,t)}),ii(r,e),r.style.display="none",this.$el.appendChild(r);var i=ci(r);return this.$el.removeChild(r),this._hasMove=i.hasTransform}}},Os={Transition:Ps,TransitionGroup:Ds};Me.config.mustUseProp=Ra,Me.config.isReservedTag=Za,Me.config.isReservedAttr=Ia,Me.config.getTagNamespace=He,Me.config.isUnknownElement=Xe,x(Me.options.directives,Ls),x(Me.options.components,Os),Me.prototype.__patch__=go?Es:w,Me.prototype.$mount=function(t,e){return t=t&&go?Ke(t):void 0,kt(this,t,e)},Me.nextTick(function(){fo.devtools&&Lo&&Lo.emit("init",Me)},0);var Bs,Fs=!!go&&function(t,e){var r=document.createElement("div");return r.innerHTML='<div a="'+t+'"/>',r.innerHTML.indexOf(e)>0}("\n","&#10;"),js=/\{\{((?:.|\n)+?)\}\}/g,Vs=/[-.*+?^${}()|[\]\/\\]/g,Ns=y(function(t){var e=t[0].replace(Vs,"\\$&"),r=t[1].replace(Vs,"\\$&");return new RegExp(e+"((?:.|\\n)+?)"+r,"g")}),Us={staticKeys:["staticClass"],transformNode:Di,genData:Oi},$s={staticKeys:["staticStyle"],transformNode:Bi,genData:Fi},qs={decode:function(t){return Bs=Bs||document.createElement("div"),Bs.innerHTML=t,Bs.textContent}},Zs=d("area,base,br,col,embed,frame,hr,img,input,isindex,keygen,link,meta,param,source,track,wbr"),Gs=d("colgroup,dd,dt,li,options,p,td,tfoot,th,thead,tr,source"),Ws=d("address,article,aside,base,blockquote,body,caption,col,colgroup,dd,details,dialog,div,dl,dt,fieldset,figcaption,figure,footer,form,h1,h2,h3,h4,h5,h6,head,header,hgroup,hr,html,legend,li,menuitem,meta,optgroup,option,param,rp,rt,source,style,summary,tbody,td,tfoot,th,thead,title,tr,track"),Hs=/^\s*([^\s"'<>\/=]+)(?:\s*(=)\s*(?:"([^"]*)"+|'([^']*)'+|([^\s"'=<>`]+)))?/,Xs="[a-zA-Z_][\\w\\-\\.]*",Ks="((?:"+Xs+"\\:)?"+Xs+")",Js=new RegExp("^<"+Ks),Ys=/^\s*(\/?)>/,Qs=new RegExp("^<\\/"+Ks+"[^>]*>"),tl=/^<!DOCTYPE [^>]+>/i,el=/^<!--/,rl=/^<!\[/,il=!1;"x".replace(/x(.)?/g,function(t,e){il=""===e});var nl,ol,al,sl,ll,ul,cl,pl,hl,fl,dl=d("script,style,textarea",!0),ml={},vl={"&lt;":"<","&gt;":">","&quot;":'"',"&amp;":"&","&#10;":"\n"},yl=/&(?:lt|gt|quot|amp);/g,gl=/&(?:lt|gt|quot|amp|#10);/g,_l=d("pre,textarea",!0),xl=function(t,e){return t&&_l(t)&&"\n"===e[0]},bl=/^@|^v-on:/,wl=/^v-|^@|^:/,Tl=/(.*?)\s+(?:in|of)\s+(.*)/,Sl=/\((\{[^}]*\}|[^,]*),([^,]*)(?:,([^,]*))?\)/,zl=/:(.*)$/,Al=/^:|^v-bind:/,Cl=/\.[^.]+/g,El=y(qs.decode),kl=/^xmlns:NS\d+/,Ml=/^NS\d+:/,Ll={preTransformNode:cn},Il=[Us,$s,Ll],Pl={model:jr,text:fn,html:dn},Rl={expectHTML:!0,modules:Il,directives:Pl,isPreTag:qa,isUnaryTag:Zs,mustUseProp:Ra,canBeLeftOpenTag:Gs,isReservedTag:Za,getTagNamespace:He,staticKeys:function(t){return t.reduce(function(t,e){return t.concat(e.staticKeys||[])},[]).join(",")}(Il)},Dl=y(vn),Ol=/^\s*([\w$_]+|\([^)]*?\))\s*=>|^function\s*\(/,Bl=/^\s*[A-Za-z_$][\w$]*(?:\.[A-Za-z_$][\w$]*|\['.*?']|\[".*?"]|\[\d+]|\[[A-Za-z_$][\w$]*])*\s*$/,Fl={esc:27,tab:9,enter:13,space:32,up:38,left:37,right:39,down:40,delete:[8,46]},jl=function(t){return"if("+t+")return null;"},Vl={stop:"$event.stopPropagation();",prevent:"$event.preventDefault();",self:jl("$event.target !== $event.currentTarget"),ctrl:jl("!$event.ctrlKey"),shift:jl("!$event.shiftKey"),alt:jl("!$event.altKey"),meta:jl("!$event.metaKey"),left:jl("'button' in $event && $event.button !== 0"),middle:jl("'button' in $event && $event.button !== 1"),right:jl("'button' in $event && $event.button !== 2")},Nl={on:zn,bind:An,cloak:w},Ul=function(t){this.options=t,this.warn=t.warn||Tr,this.transforms=Sr(t.modules,"transformCode"),this.dataGenFns=Sr(t.modules,"genData"),this.directives=x(x({},Nl),t.directives);var e=t.isReservedTag||lo;this.maybeComponent=function(t){return!e(t.tag)},this.onceId=0,this.staticRenderFns=[]},$l=(new RegExp("\\b"+"do,if,for,let,new,try,var,case,else,with,await,break,catch,class,const,super,throw,while,yield,delete,export,import,return,switch,default,extends,finally,continue,debugger,function,arguments".split(",").join("\\b|\\b")+"\\b"),new RegExp("\\b"+"delete,typeof,void".split(",").join("\\s*\\([^\\)]*\\)|\\b")+"\\s*\\([^\\)]*\\)"),function(t){return function(e){function r(r,i){var n=Object.create(e),o=[],a=[];if(n.warn=function(t,e){(e?a:o).push(t)},i){i.modules&&(n.modules=(e.modules||[]).concat(i.modules)),i.directives&&(n.directives=x(Object.create(e.directives),i.directives));for(var s in i)"modules"!==s&&"directives"!==s&&(n[s]=i[s])}var l=t(r,n);return l.errors=o,l.tips=a,l}return{compile:r,compileToFunctions:Jn(r)}}}(function(t,e){var r=Ui(t.trim(),e);mn(r,e);var i=Cn(r,e);return{ast:r,render:i.render,staticRenderFns:i.staticRenderFns}})),ql=$l(Rl),Zl=ql.compileToFunctions,Gl=y(function(t){var e=Ke(t);return e&&e.innerHTML}),Wl=Me.prototype.$mount;Me.prototype.$mount=function(t,e){if((t=t&&Ke(t))===document.body||t===document.documentElement)return this;var r=this.$options;if(!r.render){var i=r.template;if(i)if("string"==typeof i)"#"===i.charAt(0)&&(i=Gl(i));else{if(!i.nodeType)return this;i=i.innerHTML}else t&&(i=Yn(t));if(i){var n=Zl(i,{shouldDecodeNewlines:Fs,delimiters:r.delimiters,comments:r.comments},this),o=n.render,a=n.staticRenderFns;r.render=o,r.staticRenderFns=a}}return Wl.call(this,t,e)},Me.compile=Zl,e.a=Me}).call(e,r(0),r(4).setImmediate)},function(t,e,r){function i(t,e){this._id=t,this._clearFn=e}var n=Function.prototype.apply;e.setTimeout=function(){return new i(n.call(setTimeout,window,arguments),clearTimeout)},e.setInterval=function(){return new i(n.call(setInterval,window,arguments),clearInterval)},e.clearTimeout=e.clearInterval=function(t){t&&t.close()},i.prototype.unref=i.prototype.ref=function(){},i.prototype.close=function(){this._clearFn.call(window,this._id)},e.enroll=function(t,e){clearTimeout(t._idleTimeoutId),t._idleTimeout=e},e.unenroll=function(t){clearTimeout(t._idleTimeoutId),t._idleTimeout=-1},e._unrefActive=e.active=function(t){clearTimeout(t._idleTimeoutId);var e=t._idleTimeout;e>=0&&(t._idleTimeoutId=setTimeout(function(){t._onTimeout&&t._onTimeout()},e))},r(5),e.setImmediate=setImmediate,e.clearImmediate=clearImmediate},function(t,e,r){(function(t,e){!function(t,r){"use strict";function i(t){"function"!=typeof t&&(t=new Function(""+t));for(var e=new Array(arguments.length-1),r=0;r<e.length;r++)e[r]=arguments[r+1];var i={callback:t,args:e};return u[l]=i,s(l),l++}function n(t){delete u[t]}function o(t){var e=t.callback,i=t.args;switch(i.length){case 0:e();break;case 1:e(i[0]);break;case 2:e(i[0],i[1]);break;case 3:e(i[0],i[1],i[2]);break;default:e.apply(r,i)}}function a(t){if(c)setTimeout(a,0,t);else{var e=u[t];if(e){c=!0;try{o(e)}finally{n(t),c=!1}}}}if(!t.setImmediate){var s,l=1,u={},c=!1,p=t.document,h=Object.getPrototypeOf&&Object.getPrototypeOf(t);h=h&&h.setTimeout?h:t,"[object process]"==={}.toString.call(t.process)?function(){s=function(t){e.nextTick(function(){a(t)})}}():function(){if(t.postMessage&&!t.importScripts){var e=!0,r=t.onmessage;return t.onmessage=function(){e=!1},t.postMessage("","*"),t.onmessage=r,e}}()?function(){var e="setImmediate$"+Math.random()+"$",r=function(r){r.source===t&&"string"==typeof r.data&&0===r.data.indexOf(e)&&a(+r.data.slice(e.length))};t.addEventListener?t.addEventListener("message",r,!1):t.attachEvent("onmessage",r),s=function(r){t.postMessage(e+r,"*")}}():t.MessageChannel?function(){var t=new MessageChannel;t.port1.onmessage=function(t){a(t.data)},s=function(e){t.port2.postMessage(e)}}():p&&"onreadystatechange"in p.createElement("script")?function(){var t=p.documentElement;s=function(e){var r=p.createElement("script");r.onreadystatechange=function(){a(e),r.onreadystatechange=null,t.removeChild(r),r=null},t.appendChild(r)}}():function(){s=function(t){setTimeout(a,0,t)}}(),h.setImmediate=i,h.clearImmediate=n}}("undefined"==typeof self?void 0===t?this:t:self)}).call(e,r(0),r(6))},function(t,e){function r(){throw new Error("setTimeout has not been defined")}function i(){throw new Error("clearTimeout has not been defined")}function n(t){if(c===setTimeout)return setTimeout(t,0);if((c===r||!c)&&setTimeout)return c=setTimeout,setTimeout(t,0);try{return c(t,0)}catch(e){try{return c.call(null,t,0)}catch(e){return c.call(this,t,0)}}}function o(t){if(p===clearTimeout)return clearTimeout(t);if((p===i||!p)&&clearTimeout)return p=clearTimeout,clearTimeout(t);try{return p(t)}catch(e){try{return p.call(null,t)}catch(e){return p.call(this,t)}}}function a(){m&&f&&(m=!1,f.length?d=f.concat(d):v=-1,d.length&&s())}function s(){if(!m){var t=n(a);m=!0;for(var e=d.length;e;){for(f=d,d=[];++v<e;)f&&f[v].run();v=-1,e=d.length}f=null,m=!1,o(t)}}function l(t,e){this.fun=t,this.array=e}function u(){}var c,p,h=t.exports={};!function(){try{c="function"==typeof setTimeout?setTimeout:r}catch(t){c=r}try{p="function"==typeof clearTimeout?clearTimeout:i}catch(t){p=i}}();var f,d=[],m=!1,v=-1;h.nextTick=function(t){var e=new Array(arguments.length-1);if(arguments.length>1)for(var r=1;r<arguments.length;r++)e[r-1]=arguments[r];d.push(new l(t,e)),1!==d.length||m||n(s)},l.prototype.run=function(){this.fun.apply(null,this.array)},h.title="browser",h.browser=!0,h.env={},h.argv=[],h.version="",h.versions={},h.on=u,h.addListener=u,h.once=u,h.off=u,h.removeListener=u,h.removeAllListeners=u,h.emit=u,h.prependListener=u,h.prependOnceListener=u,h.listeners=function(t){return[]},h.binding=function(t){throw new Error("process.binding is not supported")},h.cwd=function(){return"/"},h.chdir=function(t){throw new Error("process.chdir is not supported")},h.umask=function(){return 0}},function(t,e,r){"use strict";function i(t){r(8)}var n=r(14),o=r(16),a=r(13),s=i,l=a(n.a,o.a,!1,s,null,null);e.a=l.exports},function(t,e,r){var i=r(9);"string"==typeof i&&(i=[[t.i,i,""]]),i.locals&&(t.exports=i.locals);r(11)("1cc1a7d4",i,!0)},function(t,e,r){e=t.exports=r(10)(void 0),e.push([t.i,"#geshem #datetime{position:absolute;margin:20px 0 0 20px;color:#fff;font-family:monospace}#geshem #datetime #date{font-size:1.4em}#geshem #datetime #time{font-size:1.8em}#geshem #slider{position:absolute;bottom:8vh;width:30vw;margin-left:35vw}@media only screen and (max-device-width:812px){#geshem #slider{width:80vw;margin-left:8vw}}",""])},function(t,e){function r(t,e){var r=t[1]||"",n=t[3];if(!n)return r;if(e&&"function"==typeof btoa){var o=i(n);return[r].concat(n.sources.map(function(t){return"/*# sourceURL="+n.sourceRoot+t+" */"})).concat([o]).join("\n")}return[r].join("\n")}function i(t){return"/*# sourceMappingURL=data:application/json;charset=utf-8;base64,"+btoa(unescape(encodeURIComponent(JSON.stringify(t))))+" */"}t.exports=function(t){var e=[];return e.toString=function(){return this.map(function(e){var i=r(e,t);return e[2]?"@media "+e[2]+"{"+i+"}":i}).join("")},e.i=function(t,r){"string"==typeof t&&(t=[[null,t,""]]);for(var i={},n=0;n<this.length;n++){var o=this[n][0];"number"==typeof o&&(i[o]=!0)}for(n=0;n<t.length;n++){var a=t[n];"number"==typeof a[0]&&i[a[0]]||(r&&!a[2]?a[2]=r:r&&(a[2]="("+a[2]+") and ("+r+")"),e.push(a))}},e}},function(t,e,r){function i(t){for(var e=0;e<t.length;e++){var r=t[e],i=c[r.id];if(i){i.refs++;for(var n=0;n<i.parts.length;n++)i.parts[n](r.parts[n]);for(;n<r.parts.length;n++)i.parts.push(o(r.parts[n]));i.parts.length>r.parts.length&&(i.parts.length=r.parts.length)}else{for(var a=[],n=0;n<r.parts.length;n++)a.push(o(r.parts[n]));c[r.id]={id:r.id,refs:1,parts:a}}}}function n(){var t=document.createElement("style");return t.type="text/css",p.appendChild(t),t}function o(t){var e,r,i=document.querySelector('style[data-vue-ssr-id~="'+t.id+'"]');if(i){if(d)return m;i.parentNode.removeChild(i)}if(v){var o=f++;i=h||(h=n()),e=a.bind(null,i,o,!1),r=a.bind(null,i,o,!0)}else i=n(),e=s.bind(null,i),r=function(){i.parentNode.removeChild(i)};return e(t),function(i){if(i){if(i.css===t.css&&i.media===t.media&&i.sourceMap===t.sourceMap)return;e(t=i)}else r()}}function a(t,e,r,i){var n=r?"":i.css;if(t.styleSheet)t.styleSheet.cssText=y(e,n);else{var o=document.createTextNode(n),a=t.childNodes;a[e]&&t.removeChild(a[e]),a.length?t.insertBefore(o,a[e]):t.appendChild(o)}}function s(t,e){var r=e.css,i=e.media,n=e.sourceMap;if(i&&t.setAttribute("media",i),n&&(r+="\n/*# sourceURL="+n.sources[0]+" */",r+="\n/*# sourceMappingURL=data:application/json;base64,"+btoa(unescape(encodeURIComponent(JSON.stringify(n))))+" */"),t.styleSheet)t.styleSheet.cssText=r;else{for(;t.firstChild;)t.removeChild(t.firstChild);t.appendChild(document.createTextNode(r))}}var l="undefined"!=typeof document;if("undefined"!=typeof DEBUG&&DEBUG&&!l)throw new Error("vue-style-loader cannot be used in a non-browser environment. Use { target: 'node' } in your Webpack config to indicate a server-rendering environment.");var u=r(12),c={},p=l&&(document.head||document.getElementsByTagName("head")[0]),h=null,f=0,d=!1,m=function(){},v="undefined"!=typeof navigator&&/msie [6-9]\b/.test(navigator.userAgent.toLowerCase());t.exports=function(t,e,r){d=r;var n=u(t,e);return i(n),function(e){for(var r=[],o=0;o<n.length;o++){var a=n[o],s=c[a.id];s.refs--,r.push(s)}e?(n=u(t,e),i(n)):n=[];for(var o=0;o<r.length;o++){var s=r[o];if(0===s.refs){for(var l=0;l<s.parts.length;l++)s.parts[l]();delete c[s.id]}}}};var y=function(){var t=[];return function(e,r){return t[e]=r,t.filter(Boolean).join("\n")}}()},function(t,e){t.exports=function(t,e){for(var r=[],i={},n=0;n<e.length;n++){var o=e[n],a=o[0],s=o[1],l=o[2],u=o[3],c={id:t+":"+n,css:s,media:l,sourceMap:u};i[a]?i[a].parts.push(c):r.push(i[a]={id:a,parts:[c]})}return r}},function(t,e){t.exports=function(t,e,r,i,n,o){var a,s=t=t||{},l=typeof t.default;"object"!==l&&"function"!==l||(a=t,s=t.default);var u="function"==typeof s?s.options:s;e&&(u.render=e.render,u.staticRenderFns=e.staticRenderFns,u._compiled=!0),r&&(u.functional=!0),n&&(u._scopeId=n);var c;if(o?(c=function(t){t=t||this.$vnode&&this.$vnode.ssrContext||this.parent&&this.parent.$vnode&&this.parent.$vnode.ssrContext,t||"undefined"==typeof __VUE_SSR_CONTEXT__||(t=__VUE_SSR_CONTEXT__),i&&i.call(this,t),t&&t._registeredComponents&&t._registeredComponents.add(o)},u._ssrRegister=c):i&&(c=i),c){var p=u.functional,h=p?u.render:u.beforeCreate;p?(u._injectStyles=c,u.render=function(t,e){return c.call(e),h(t,e)}):u.beforeCreate=h?[].concat(h,c):[c]}return{esModule:a,exports:s,options:u}}},function(t,e,r){"use strict";function i(t,e,r){return e in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}var n=r(15),o=r.n(n),a=r(1),s=r.n(a);e.a={name:"geshem",components:{"vue-slider":o.a},data:function(){var t;return{imgs:window.imgs,res:280,slider:7,rasterCoords:{140:[[33.35317413,33.27232471],[36.32243686,33.27232471],[36.32243686,30.72293428],[33.35317413,30.72293428]],280:[[31.93095218,34.5156862],[37.86644267,34.5156862],[37.86644267,29.42911589],[31.93095218,29.42911589]]},map:new s.a.Map((t={container:"map",style:"mapbox://styles/mapbox/dark-v9"},i(t,"container","map"),i(t,"maxZoom",10),i(t,"minZoom",5),i(t,"zoom",6.3),i(t,"center",[35,31.9]),i(t,"hash",!1),t))}},computed:{date:function(){var t=this.imgs[this.res][7-this.slider].substr(0,8);return t.substr(6,2)+"-"+t.substr(4,2)+"-"+t.substr(0,4)},time:function(){var t=this.imgs[this.res][7-this.slider].substr(9,6);return t.substr(0,2)+":"+t.substr(2,2)},curImg:function(){return 7-this.slider}},created:function(){var t=this;this.map.on("style.load",function(){for(var e=0;e<t.imgs[140].length;)t.addRadarSource("140",e,t.imgs[140][e++]);for(var e=0;e<t.imgs[280].length;)t.addRadarSource("280",e,t.imgs[280][e++]);t.addRadarLayer("280",0)}),this.map.on("zoom",function(){var e=t.map.getZoom()>7,r=e?"280":"140",i=e?"140":"280";i!=t.res&&(console.log("Zoom event from "+r+" to "+i),t.removeRadarLayer(r,t.curImg),t.addRadarLayer(i,t.curImg),t.res=i)})},methods:{addRadarSource:function(t,e,r){this.map.addSource("radar-"+t+"-"+e,{type:"image",url:"/static/img/"+r,coordinates:this.rasterCoords[t]})},addRadarLayer:function(t,e){this.map.addLayer({id:"radar-"+t+"-"+e,source:"radar-"+t+"-"+e,type:"raster",paint:{"raster-opacity":.85}})},removeRadarLayer:function(t,e){this.map.removeLayer("radar-"+t+"-"+e)}},watch:{slider:function(t,e){this.removeRadarLayer(this.res,7-e),this.addRadarLayer(this.res,7-t)}}}},function(t,e,r){!function(e,r){t.exports=r()}(0,function(){return function(t){function e(i){if(r[i])return r[i].exports;var n=r[i]={i:i,l:!1,exports:{}};return t[i].call(n.exports,n,n.exports,e),n.l=!0,n.exports}var r={};return e.m=t,e.c=r,e.i=function(t){return t},e.d=function(t,r,i){e.o(t,r)||Object.defineProperty(t,r,{configurable:!1,enumerable:!0,get:i})},e.n=function(t){var r=t&&t.__esModule?function(){return t.default}:function(){return t};return e.d(r,"a",r),r},e.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},e.p="",e(e.s=2)}([function(t,e,r){r(7);var i=r(5)(r(1),r(6),null,null);t.exports=i.exports},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.default={data:function(){return{flag:!1,size:0,currentValue:0,currentSlider:0,dotWidthVal:"number"==typeof this.dotWidth?this.dotWidth:this.dotSize,dotHeightVal:"number"==typeof this.dotHeight?this.dotHeight:this.dotSize}},props:{width:{type:[Number,String],default:"auto"},height:{type:[Number,String],default:6},data:{type:Array,default:null},dotSize:{type:Number,default:16},dotWidth:{type:Number,required:!1},dotHeight:{type:Number,required:!1},min:{type:Number,default:0},max:{type:Number,default:100},interval:{type:Number,default:1},show:{type:Boolean,default:!0},disabled:{type:Boolean,default:!1},piecewise:{type:Boolean,default:!1},tooltip:{type:[String,Boolean],default:"always"},eventType:{type:String,default:"auto"},direction:{type:String,default:"horizontal"},reverse:{type:Boolean,default:!1},lazy:{type:Boolean,default:!1},clickable:{type:Boolean,default:!0},speed:{type:Number,default:.5},realTime:{type:Boolean,default:!1},value:{type:[String,Number,Array],default:0},piecewiseLabel:{type:Boolean,default:!1},sliderStyle:[Array,Object],tooltipDir:[Array,String],formatter:[String,Function],piecewiseStyle:Object,piecewiseActiveStyle:Object,processStyle:Object,bgStyle:Object,tooltipStyle:[Array,Object],labelStyle:Object,labelActiveStyle:Object},computed:{flowDirection:function(){return"vue-slider-"+this.direction+(this.reverse?"-reverse":"")},tooltipDirection:function(){var t=this.tooltipDir||("vertical"===this.direction?"left":"top");return Array.isArray(t)?this.isRange?t:t[1]:this.isRange?[t,t]:t},tooltipStatus:function(){return"hover"===this.tooltip&&this.flag?"vue-slider-always":this.tooltip?"vue-slider-"+this.tooltip:""},tooltipClass:function(){return["vue-slider-tooltip-"+this.tooltipDirection,"vue-slider-tooltip"]},isDisabled:function(){return"none"===this.eventType||this.disabled},disabledClass:function(){return this.disabled?"vue-slider-disabled":""},isRange:function(){return Array.isArray(this.value)},slider:function(){return this.isRange?[this.$refs.dot0,this.$refs.dot1]:this.$refs.dot},minimum:function(){return this.data?0:this.min},val:{get:function(){return this.data?this.isRange?[this.data[this.currentValue[0]],this.data[this.currentValue[1]]]:this.data[this.currentValue]:this.currentValue},set:function(t){if(this.data)if(this.isRange){var e=this.data.indexOf(t[0]),r=this.data.indexOf(t[1]);e>-1&&r>-1&&(this.currentValue=[e,r])}else{var i=this.data.indexOf(t);i>-1&&(this.currentValue=i)}else this.currentValue=t}},currentIndex:function(){return this.isRange?this.data?this.currentValue:[(this.currentValue[0]-this.minimum)/this.spacing,(this.currentValue[1]-this.minimum)/this.spacing]:(this.currentValue-this.minimum)/this.spacing},indexRange:function(){return this.isRange?this.currentIndex:[0,this.currentIndex]},maximum:function(){return this.data?this.data.length-1:this.max},multiple:function(){var t=(""+this.interval).split(".")[1];return t?Math.pow(10,t.length):1},spacing:function(){return this.data?1:this.interval},total:function(){return this.data?this.data.length-1:(~~((this.maximum-this.minimum)*this.multiple)%(this.interval*this.multiple)!=0&&console.error("[Vue-slider warn]: Prop[interval] is illegal, Please make sure that the interval can be divisible"),(this.maximum-this.minimum)/this.interval)},gap:function(){return this.size/this.total},position:function(){return this.isRange?[(this.currentValue[0]-this.minimum)/this.spacing*this.gap,(this.currentValue[1]-this.minimum)/this.spacing*this.gap]:(this.currentValue-this.minimum)/this.spacing*this.gap},limit:function(){return this.isRange?[[0,this.position[1]],[this.position[0],this.size]]:[0,this.size]},valueLimit:function(){return this.isRange?[[this.minimum,this.currentValue[1]],[this.currentValue[0],this.maximum]]:[this.minimum,this.maximum]},wrapStyles:function(){return"vertical"===this.direction?{height:"number"==typeof this.height?this.height+"px":this.height,padding:this.dotHeightVal/2+"px "+this.dotWidthVal/2+"px"}:{width:"number"==typeof this.width?this.width+"px":this.width,padding:this.dotHeightVal/2+"px "+this.dotWidthVal/2+"px"}},sliderStyles:function(){return Array.isArray(this.sliderStyle)?this.isRange?this.sliderStyle:this.sliderStyle[1]:this.isRange?[this.sliderStyle,this.sliderStyle]:this.sliderStyle},tooltipStyles:function(){return Array.isArray(this.tooltipStyle)?this.isRange?this.tooltipStyle:this.tooltipStyle[1]:this.isRange?[this.tooltipStyle,this.tooltipStyle]:this.tooltipStyle},elemStyles:function(){return"vertical"===this.direction?{width:this.width+"px",height:"100%"}:{height:this.height+"px"}},dotStyles:function(){return"vertical"===this.direction?{width:this.dotWidthVal+"px",height:this.dotHeightVal+"px",left:-(this.dotWidthVal-this.width)/2+"px"}:{width:this.dotWidthVal+"px",height:this.dotHeightVal+"px",top:-(this.dotHeightVal-this.height)/2+"px"}},piecewiseDotStyle:function(){return"vertical"===this.direction?{width:this.width+"px",height:this.width+"px"}:{width:this.height+"px",height:this.height+"px"}},piecewiseDotWrap:function(){if(!this.piecewise&&!this.piecewiseLabel)return!1;for(var t=[],e=0;e<=this.total;e++){var r="vertical"===this.direction?{bottom:this.gap*e-this.width/2+"px",left:0}:{left:this.gap*e-this.height/2+"px",top:0},i=this.reverse?this.total-e:e,n=this.data?this.data[i]:this.spacing*i+this.min;t.push({style:r,label:this.formatter?this.formatting(n):n,inRange:i>=this.indexRange[0]&&i<=this.indexRange[1]})}return t}},watch:{value:function(t){this.flag||this.setValue(t,!0)},max:function(t){var e=this.limitValue(this.val);!1!==e&&this.setValue(e),this.refresh()},min:function(t){var e=this.limitValue(this.val);!1!==e&&this.setValue(e),this.refresh()},show:function(t){var e=this;t&&!this.size&&this.$nextTick(function(){e.refresh()})}},methods:{bindEvents:function(){document.addEventListener("touchmove",this.moving,{passive:!1}),document.addEventListener("touchend",this.moveEnd,{passive:!1}),document.addEventListener("mousemove",this.moving),document.addEventListener("mouseup",this.moveEnd),document.addEventListener("mouseleave",this.moveEnd),window.addEventListener("resize",this.refresh)},unbindEvents:function(){window.removeEventListener("resize",this.refresh),document.removeEventListener("touchmove",this.moving),document.removeEventListener("touchend",this.moveEnd),document.removeEventListener("mousemove",this.moving),document.removeEventListener("mouseup",this.moveEnd),document.removeEventListener("mouseleave",this.moveEnd)},formatting:function(t){return"string"==typeof this.formatter?this.formatter.replace(/\{value\}/,t):this.formatter(t)},getPos:function(t){return this.realTime&&this.getStaticData(),"vertical"===this.direction?this.reverse?t.pageY-this.offset:this.size-(t.pageY-this.offset):this.reverse?this.size-(t.clientX-this.offset):t.clientX-this.offset},wrapClick:function(t){if(this.isDisabled||!this.clickable)return!1;var e=this.getPos(t);this.isRange&&(this.currentSlider=e>(this.position[1]-this.position[0])/2+this.position[0]?1:0),this.setValueOnPos(e)},moveStart:function(t){if(this.isDisabled)return!1;this.isRange&&(this.currentSlider=t),this.flag=!0,this.$emit("drag-start",this)},moving:function(t){if(!this.flag)return!1;t.preventDefault(),t.targetTouches&&t.targetTouches[0]&&(t=t.targetTouches[0]),this.setValueOnPos(this.getPos(t),!0)},moveEnd:function(t){if(!this.flag)return!1;this.$emit("drag-end",this),this.lazy&&this.isDiff(this.val,this.value)&&this.syncValue(),this.flag=!1,this.setPosition()},setValueOnPos:function(t,e){var r=this.isRange?this.limit[this.currentSlider]:this.limit,i=this.isRange?this.valueLimit[this.currentSlider]:this.valueLimit;if(t>=r[0]&&t<=r[1]){this.setTransform(t);var n=(Math.round(t/this.gap)*(this.spacing*this.multiple)+this.minimum*this.multiple)/this.multiple;this.setCurrentValue(n,e)}else t<r[0]?(this.setTransform(r[0]),this.setCurrentValue(i[0]),1===this.currentSlider&&(this.currentSlider=0)):(this.setTransform(r[1]),this.setCurrentValue(i[1]),0===this.currentSlider&&(this.currentSlider=1))},isDiff:function(t,e){return Object.prototype.toString.call(t)!==Object.prototype.toString.call(e)||(Array.isArray(t)&&t.length===e.length?t.some(function(t,r){return t!==e[r]}):t!==e)},setCurrentValue:function(t,e){if(t<this.minimum||t>this.maximum)return!1;this.isRange?this.isDiff(this.currentValue[this.currentSlider],t)&&(this.currentValue.splice(this.currentSlider,1,t),this.lazy&&this.flag||this.syncValue()):this.isDiff(this.currentValue,t)&&(this.currentValue=t,this.lazy&&this.flag||this.syncValue()),e||this.setPosition()},setIndex:function(t){if(Array.isArray(t)&&this.isRange){var e=void 0;e=this.data?[this.data[t[0]],this.data[t[1]]]:[this.spacing*t[0]+this.minimum,this.spacing*t[1]+this.minimum],this.setValue(e)}else t=this.spacing*t+this.minimum,this.isRange&&(this.currentSlider=t>(this.currentValue[1]-this.currentValue[0])/2+this.currentValue[0]?1:0),this.setCurrentValue(t)},setValue:function(t,e,r){var i=this;if(this.isDiff(this.val,t)){var n=this.limitValue(t);this.val=!1!==n?this.isRange?n.concat():n:this.isRange?t.concat():t,this.syncValue(e)}this.$nextTick(function(){return i.setPosition(r)})},setPosition:function(t){this.flag||this.setTransitionTime(void 0===t?this.speed:t),this.isRange?(this.currentSlider=0,this.setTransform(this.position[this.currentSlider]),this.currentSlider=1,this.setTransform(this.position[this.currentSlider])):this.setTransform(this.position),this.flag||this.setTransitionTime(0)},setTransform:function(t){var e=("vertical"===this.direction?this.dotHeightVal/2-t:t-this.dotWidthVal/2)*(this.reverse?-1:1),r="vertical"===this.direction?"translateY("+e+"px)":"translateX("+e+"px)",i=(0===this.currentSlider?this.position[1]-t:t-this.position[0])+"px",n=(0===this.currentSlider?t:this.position[0])+"px";this.isRange?(this.slider[this.currentSlider].style.transform=r,this.slider[this.currentSlider].style.WebkitTransform=r,this.slider[this.currentSlider].style.msTransform=r,"vertical"===this.direction?(this.$refs.process.style.height=i,this.$refs.process.style[this.reverse?"top":"bottom"]=n):(this.$refs.process.style.width=i,this.$refs.process.style[this.reverse?"right":"left"]=n)):(this.slider.style.transform=r,this.slider.style.WebkitTransform=r,this.slider.style.msTransform=r,"vertical"===this.direction?(this.$refs.process.style.height=t+"px",this.$refs.process.style[this.reverse?"top":"bottom"]=0):(this.$refs.process.style.width=t+"px",this.$refs.process.style[this.reverse?"right":"left"]=0))},setTransitionTime:function(t){if(t||this.$refs.process.offsetWidth,this.isRange){for(var e=0;e<this.slider.length;e++)this.slider[e].style.transitionDuration=t+"s",this.slider[e].style.WebkitTransitionDuration=t+"s";this.$refs.process.style.transitionDuration=t+"s",this.$refs.process.style.WebkitTransitionDuration=t+"s"}else this.slider.style.transitionDuration=t+"s",this.slider.style.WebkitTransitionDuration=t+"s",this.$refs.process.style.transitionDuration=t+"s",this.$refs.process.style.WebkitTransitionDuration=t+"s"},limitValue:function(t){var e=this;if(this.data)return t;var r=!1;return this.isRange?t=t.map(function(t){return t<e.min?(r=!0,e.min):t>e.max?(r=!0,e.max):t}):t>this.max?(r=!0,t=this.max):t<this.min&&(r=!0,t=this.min),r&&t},syncValue:function(t){t||this.$emit("callback",this.val),this.$emit("input",this.isRange?this.val.concat():this.val)},getValue:function(){return this.val},getIndex:function(){return this.currentIndex},getStaticData:function(){this.$refs.elem&&(this.size="vertical"===this.direction?this.$refs.elem.offsetHeight:this.$refs.elem.offsetWidth,this.offset="vertical"===this.direction?this.$refs.elem.getBoundingClientRect().top+window.pageYOffset||document.documentElement.scrollTop:this.$refs.elem.getBoundingClientRect().left)},refresh:function(){this.$refs.elem&&(this.getStaticData(),this.setPosition())}},mounted:function(){var t=this;"undefined"!=typeof window&&"undefined"!=typeof document&&this.$nextTick(function(){t.getStaticData(),t.setValue(t.value,!0,0),t.bindEvents()})},beforeDestroy:function(){this.unbindEvents()}}},function(t,e,r){"use strict";var i=r(0);t.exports=i},function(t,e,r){e=t.exports=r(4)(),e.push([t.i,'.vue-slider-component{position:relative;-webkit-box-sizing:border-box;box-sizing:border-box;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.vue-slider-component.vue-slider-disabled{opacity:.5;cursor:not-allowed}.vue-slider-component.vue-slider-has-label{margin-bottom:15px}.vue-slider-component.vue-slider-disabled .vue-slider-dot{cursor:not-allowed}.vue-slider-component .vue-slider{position:relative;display:block;border-radius:15px;background-color:#ccc}.vue-slider-component .vue-slider:after{content:"";position:absolute;left:0;top:0;width:100%;height:100%;z-index:2}.vue-slider-component .vue-slider-process{position:absolute;border-radius:15px;background-color:#3498db;-webkit-transition:all 0s;transition:all 0s;z-index:1}.vue-slider-component.vue-slider-horizontal .vue-slider-process{width:0;height:100%;top:0;left:0;will-change:width}.vue-slider-component.vue-slider-vertical .vue-slider-process{width:100%;height:0;bottom:0;left:0;will-change:height}.vue-slider-component.vue-slider-horizontal-reverse .vue-slider-process{width:0;height:100%;top:0;right:0}.vue-slider-component.vue-slider-vertical-reverse .vue-slider-process{width:100%;height:0;top:0;left:0}.vue-slider-component .vue-slider-dot{position:absolute;border-radius:50%;background-color:#fff;-webkit-box-shadow:.5px .5px 2px 1px rgba(0,0,0,.32);box-shadow:.5px .5px 2px 1px rgba(0,0,0,.32);-webkit-transition:all 0s;transition:all 0s;will-change:transform;cursor:pointer;z-index:3}.vue-slider-component.vue-slider-horizontal .vue-slider-dot{left:0}.vue-slider-component.vue-slider-vertical .vue-slider-dot{bottom:0}.vue-slider-component.vue-slider-horizontal-reverse .vue-slider-dot{right:0}.vue-slider-component.vue-slider-vertical-reverse .vue-slider-dot{top:0}.vue-slider-component .vue-slider-tooltip-wrap{display:none;position:absolute;z-index:9}.vue-slider-component .vue-slider-tooltip{display:block;font-size:14px;white-space:nowrap;padding:2px 5px;min-width:20px;text-align:center;color:#fff;border-radius:5px;border:1px solid #3498db;background-color:#3498db}.vue-slider-component .vue-slider-tooltip-wrap.vue-slider-tooltip-top{top:-9px;left:50%;-webkit-transform:translate(-50%,-100%);transform:translate(-50%,-100%)}.vue-slider-component .vue-slider-tooltip-wrap.vue-slider-tooltip-bottom{bottom:-9px;left:50%;-webkit-transform:translate(-50%,100%);transform:translate(-50%,100%)}.vue-slider-component .vue-slider-tooltip-wrap.vue-slider-tooltip-left{top:50%;left:-9px;-webkit-transform:translate(-100%,-50%);transform:translate(-100%,-50%)}.vue-slider-component .vue-slider-tooltip-wrap.vue-slider-tooltip-right{top:50%;right:-9px;-webkit-transform:translate(100%,-50%);transform:translate(100%,-50%)}.vue-slider-component .vue-slider-tooltip-wrap.vue-slider-tooltip-top .vue-slider-tooltip:before{content:"";position:absolute;bottom:-10px;left:50%;width:0;height:0;border:5px solid transparent;border:6px solid transparent\\0;border-top-color:inherit;-webkit-transform:translate(-50%);transform:translate(-50%)}.vue-slider-component .vue-slider-tooltip-wrap.vue-slider-tooltip-bottom .vue-slider-tooltip:before{content:"";position:absolute;top:-10px;left:50%;width:0;height:0;border:5px solid transparent;border:6px solid transparent\\0;border-bottom-color:inherit;-webkit-transform:translate(-50%);transform:translate(-50%)}.vue-slider-component .vue-slider-tooltip-wrap.vue-slider-tooltip-left .vue-slider-tooltip:before{content:"";position:absolute;top:50%;right:-10px;width:0;height:0;border:5px solid transparent;border:6px solid transparent\\0;border-left-color:inherit;-webkit-transform:translateY(-50%);transform:translateY(-50%)}.vue-slider-component .vue-slider-tooltip-wrap.vue-slider-tooltip-right .vue-slider-tooltip:before{content:"";position:absolute;top:50%;left:-10px;width:0;height:0;border:5px solid transparent;border:6px solid transparent\\0;border-right-color:inherit;-webkit-transform:translateY(-50%);transform:translateY(-50%)}.vue-slider-component .vue-slider-dot.vue-slider-hover:hover .vue-slider-tooltip-wrap{display:block}.vue-slider-component .vue-slider-dot.vue-slider-always .vue-slider-tooltip-wrap{display:block!important}.vue-slider-component .vue-slider-piecewise{position:absolute;width:100%;padding:0;margin:0;left:0;top:0;height:100%;list-style:none}.vue-slider-component .vue-slider-piecewise-item{position:absolute;width:8px;height:8px}.vue-slider-component .vue-slider-piecewise-dot{position:absolute;left:50%;top:50%;width:100%;height:100%;display:inline-block;background-color:rgba(0,0,0,.16);border-radius:50%;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%);z-index:2;-webkit-transition:all .3s;transition:all .3s}.vue-slider-component .vue-slider-piecewise-item:first-child .vue-slider-piecewise-dot,.vue-slider-component .vue-slider-piecewise-item:last-child .vue-slider-piecewise-dot{visibility:hidden}.vue-slider-component.vue-slider-horizontal-reverse .vue-slider-piecewise-label,.vue-slider-component.vue-slider-horizontal .vue-slider-piecewise-label{position:absolute;display:inline-block;top:100%;left:50%;white-space:nowrap;font-size:12px;color:#333;-webkit-transform:translate(-50%,8px);transform:translate(-50%,8px);visibility:visible}.vue-slider-component.vue-slider-vertical-reverse .vue-slider-piecewise-label,.vue-slider-component.vue-slider-vertical .vue-slider-piecewise-label{position:absolute;display:inline-block;top:50%;left:100%;white-space:nowrap;font-size:12px;color:#333;-webkit-transform:translate(8px,-50%);transform:translate(8px,-50%);visibility:visible}.vue-slider-component .vue-slider-sr-only{clip:rect(1px,1px,1px,1px);height:1px;width:1px;overflow:hidden;position:absolute!important}',""])},function(t,e){t.exports=function(){var t=[];return t.toString=function(){for(var t=[],e=0;e<this.length;e++){var r=this[e];r[2]?t.push("@media "+r[2]+"{"+r[1]+"}"):t.push(r[1])}return t.join("")},t.i=function(e,r){"string"==typeof e&&(e=[[null,e,""]]);for(var i={},n=0;n<this.length;n++){var o=this[n][0];"number"==typeof o&&(i[o]=!0)}for(n=0;n<e.length;n++){var a=e[n];"number"==typeof a[0]&&i[a[0]]||(r&&!a[2]?a[2]=r:r&&(a[2]="("+a[2]+") and ("+r+")"),t.push(a))}},t}},function(t,e){t.exports=function(t,e,r,i){var n,o=t=t||{},a=typeof t.default;"object"!==a&&"function"!==a||(n=t,o=t.default);var s="function"==typeof o?o.options:o;if(e&&(s.render=e.render,s.staticRenderFns=e.staticRenderFns),r&&(s._scopeId=r),i){var l=Object.create(s.computed||null);Object.keys(i).forEach(function(t){var e=i[t];l[t]=function(){return e}}),s.computed=l}return{esModule:n,exports:o,options:s}}},function(t,e){t.exports={render:function(){var t=this,e=t.$createElement,r=t._self._c||e;return r("div",{directives:[{name:"show",rawName:"v-show",value:t.show,expression:"show"}],ref:"wrap",class:["vue-slider-component",t.flowDirection,t.disabledClass,{"vue-slider-has-label":t.piecewiseLabel}],style:t.wrapStyles,on:{click:t.wrapClick}},[r("div",{ref:"elem",staticClass:"vue-slider",style:[t.elemStyles,t.bgStyle],attrs:{"aria-hidden":"true"}},[t.isRange?[r("div",{ref:"dot0",class:[t.tooltipStatus,"vue-slider-dot"],style:[t.dotStyles,t.sliderStyles[0]],on:{mousedown:function(e){t.moveStart(0)},touchstart:function(e){t.moveStart(0)}}},[r("span",{class:["vue-slider-tooltip-"+t.tooltipDirection[0],"vue-slider-tooltip-wrap"]},[t._t("tooltip",[r("span",{staticClass:"vue-slider-tooltip",style:t.tooltipStyles[0]},[t._v(t._s(t.formatter?t.formatting(t.val[0]):t.val[0]))])],{value:t.val[0],index:0})],2)]),t._v(" "),r("div",{ref:"dot1",class:[t.tooltipStatus,"vue-slider-dot"],style:[t.dotStyles,t.sliderStyles[1]],on:{mousedown:function(e){t.moveStart(1)},touchstart:function(e){t.moveStart(1)}}},[r("span",{class:["vue-slider-tooltip-"+t.tooltipDirection[1],"vue-slider-tooltip-wrap"]},[t._t("tooltip",[r("span",{staticClass:"vue-slider-tooltip",style:t.tooltipStyles[1]},[t._v(t._s(t.formatter?t.formatting(t.val[1]):t.val[1]))])],{value:t.val[1],index:1})],2)])]:[r("div",{ref:"dot",class:[t.tooltipStatus,"vue-slider-dot"],style:[t.dotStyles,t.sliderStyles],on:{mousedown:t.moveStart,touchstart:t.moveStart}},[r("span",{class:["vue-slider-tooltip-"+t.tooltipDirection,"vue-slider-tooltip-wrap"]},[t._t("tooltip",[r("span",{staticClass:"vue-slider-tooltip",style:t.tooltipStyles},[t._v(t._s(t.formatter?t.formatting(t.val):t.val))])],{value:t.val})],2)])],t._v(" "),r("ul",{staticClass:"vue-slider-piecewise"},t._l(t.piecewiseDotWrap,function(e,i){return r("li",{key:i,staticClass:"vue-slider-piecewise-item",style:[t.piecewiseDotStyle,e.style]},[t._t("piecewise",[t.piecewise?r("span",{staticClass:"vue-slider-piecewise-dot",style:[t.piecewiseStyle,e.inRange?t.piecewiseActiveStyle:null]}):t._e()],{label:e.label,index:i,first:0===i,last:i===t.piecewiseDotWrap.length-1}),t._v(" "),t._t("label",[t.piecewiseLabel?r("span",{staticClass:"vue-slider-piecewise-label",style:[t.labelStyle,e.inRange?t.labelActiveStyle:null]},[t._v("\n\t\t\t\t\t\t"+t._s(e.label)+"\n\t\t\t\t\t")]):t._e()],{label:e.label,index:i,first:0===i,last:i===t.piecewiseDotWrap.length-1})],2)})),t._v(" "),r("div",{ref:"process",staticClass:"vue-slider-process",style:t.processStyle})],2),t._v(" "),t.isRange||t.data?t._e():r("input",{directives:[{name:"model",rawName:"v-model",value:t.val,expression:"val"}],staticClass:"vue-slider-sr-only",attrs:{type:"range",min:t.min,max:t.max},domProps:{value:t.val},on:{__r:function(e){t.val=e.target.value}}})])},staticRenderFns:[]}},function(t,e,r){var i=r(3);"string"==typeof i&&(i=[[t.i,i,""]]),i.locals&&(t.exports=i.locals),r(8)("743d98f5",i,!0)},function(t,e,r){function i(t){for(var e=0;e<t.length;e++){var r=t[e],i=c[r.id];if(i){i.refs++;for(var n=0;n<i.parts.length;n++)i.parts[n](r.parts[n]);for(;n<r.parts.length;n++)i.parts.push(o(r.parts[n]));i.parts.length>r.parts.length&&(i.parts.length=r.parts.length)}else{for(var a=[],n=0;n<r.parts.length;n++)a.push(o(r.parts[n]));c[r.id]={id:r.id,refs:1,parts:a}}}}function n(){var t=document.createElement("style");return t.type="text/css",p.appendChild(t),t}function o(t){var e,r,i=document.querySelector('style[data-vue-ssr-id~="'+t.id+'"]');if(i){if(d)return m;i.parentNode.removeChild(i)}if(v){var o=f++;i=h||(h=n()),e=a.bind(null,i,o,!1),r=a.bind(null,i,o,!0)}else i=n(),e=s.bind(null,i),r=function(){i.parentNode.removeChild(i)};return e(t),function(i){if(i){if(i.css===t.css&&i.media===t.media&&i.sourceMap===t.sourceMap)return;e(t=i)}else r()}}function a(t,e,r,i){var n=r?"":i.css;if(t.styleSheet)t.styleSheet.cssText=y(e,n);else{var o=document.createTextNode(n),a=t.childNodes;a[e]&&t.removeChild(a[e]),a.length?t.insertBefore(o,a[e]):t.appendChild(o)}}function s(t,e){var r=e.css,i=e.media,n=e.sourceMap;if(i&&t.setAttribute("media",i),n&&(r+="\n/*# sourceURL="+n.sources[0]+" */",r+="\n/*# sourceMappingURL=data:application/json;base64,"+btoa(unescape(encodeURIComponent(JSON.stringify(n))))+" */"),t.styleSheet)t.styleSheet.cssText=r;else{for(;t.firstChild;)t.removeChild(t.firstChild);t.appendChild(document.createTextNode(r))}}var l="undefined"!=typeof document;if("undefined"!=typeof DEBUG&&DEBUG&&!l)throw new Error("vue-style-loader cannot be used in a non-browser environment. Use { target: 'node' } in your Webpack config to indicate a server-rendering environment.");var u=r(9),c={},p=l&&(document.head||document.getElementsByTagName("head")[0]),h=null,f=0,d=!1,m=function(){},v="undefined"!=typeof navigator&&/msie [6-9]\b/.test(navigator.userAgent.toLowerCase());t.exports=function(t,e,r){d=r;var n=u(t,e);return i(n),function(e){for(var r=[],o=0;o<n.length;o++){var a=n[o],s=c[a.id];s.refs--,r.push(s)}e?(n=u(t,e),i(n)):n=[];for(var o=0;o<r.length;o++){var s=r[o];if(0===s.refs){for(var l=0;l<s.parts.length;l++)s.parts[l]();delete c[s.id]}}}};var y=function(){var t=[];return function(e,r){return t[e]=r,t.filter(Boolean).join("\n")}}()},function(t,e){t.exports=function(t,e){for(var r=[],i={},n=0;n<e.length;n++){var o=e[n],a=o[0],s=o[1],l=o[2],u=o[3],c={id:t+":"+n,css:s,media:l,sourceMap:u};i[a]?i[a].parts.push(c):r.push(i[a]={id:a,parts:[c]})}return r}}])})},function(t,e,r){"use strict";var i=function(){var t=this,e=t.$createElement,r=t._self._c||e;return r("div",{attrs:{id:"geshem"}},[r("div",{attrs:{id:"datetime"}},[r("div",{attrs:{id:"date"}},[t._v(t._s(t.date))]),t._v(" "),r("div",{attrs:{id:"time"}},[t._v(t._s(t.time))])]),t._v(" "),r("div",{attrs:{id:"slider"}},[r("vue-slider",{ref:"slider",attrs:{min:1,max:7,height:20,"dot-size":45,tooltip:!1},model:{value:t.slider,callback:function(e){t.slider=e},expression:"slider"}})],1)])},n=[],o={render:i,staticRenderFns:n};e.a=o}]);
+function n(t){return void 0===t||null===t}function i(t){return void 0!==t&&null!==t}function o(t){return!0===t}function a(t){return!1===t}function s(t){return"string"===typeof t||"number"===typeof t||"boolean"===typeof t}function l(t){return null!==t&&"object"===typeof t}function u(t){return"[object Object]"===Qi.call(t)}function c(t){return"[object RegExp]"===Qi.call(t)}function p(t){var e=parseFloat(String(t));return e>=0&&Math.floor(e)===e&&isFinite(t)}function h(t){return null==t?"":"object"===typeof t?JSON.stringify(t,null,2):String(t)}function f(t){var e=parseFloat(t);return isNaN(e)?t:e}function d(t,e){for(var r=Object.create(null),n=t.split(","),i=0;i<n.length;i++)r[n[i]]=!0;return e?function(t){return r[t.toLowerCase()]}:function(t){return r[t]}}function m(t,e){if(t.length){var r=t.indexOf(e);if(r>-1)return t.splice(r,1)}}function v(t,e){return ro.call(t,e)}function y(t){var e=Object.create(null);return function(r){return e[r]||(e[r]=t(r))}}function g(t,e){function r(r){var n=arguments.length;return n?n>1?t.apply(e,arguments):t.call(e,r):t.call(e)}return r._length=t.length,r}function _(t,e){e=e||0;for(var r=t.length-e,n=new Array(r);r--;)n[r]=t[r+e];return n}function x(t,e){for(var r in e)t[r]=e[r];return t}function b(t){for(var e={},r=0;r<t.length;r++)t[r]&&x(e,t[r]);return e}function w(t,e,r){}function T(t,e){if(t===e)return!0;var r=l(t),n=l(e);if(!r||!n)return!r&&!n&&String(t)===String(e);try{var i=Array.isArray(t),o=Array.isArray(e);if(i&&o)return t.length===e.length&&t.every(function(t,r){return T(t,e[r])});if(i||o)return!1;var a=Object.keys(t),s=Object.keys(e);return a.length===s.length&&a.every(function(r){return T(t[r],e[r])})}catch(t){return!1}}function S(t,e){for(var r=0;r<t.length;r++)if(T(t[r],e))return r;return-1}function z(t){var e=!1;return function(){e||(e=!0,t.apply(this,arguments))}}function A(t){var e=(t+"").charCodeAt(0);return 36===e||95===e}function C(t,e,r,n){Object.defineProperty(t,e,{value:r,enumerable:!!n,writable:!0,configurable:!0})}function E(t){if(!vo.test(t)){var e=t.split(".");return function(t){for(var r=0;r<e.length;r++){if(!t)return;t=t[e[r]]}return t}}}function k(t){return"function"===typeof t&&/native code/.test(t.toString())}function M(t){Do.target&&Oo.push(Do.target),Do.target=t}function L(){Do.target=Oo.pop()}function I(t){return new Bo(void 0,void 0,void 0,String(t))}function P(t,e){var r=new Bo(t.tag,t.data,t.children,t.text,t.elm,t.context,t.componentOptions,t.asyncFactory);return r.ns=t.ns,r.isStatic=t.isStatic,r.key=t.key,r.isComment=t.isComment,r.isCloned=!0,e&&t.children&&(r.children=R(t.children)),r}function R(t,e){for(var r=t.length,n=new Array(r),i=0;i<r;i++)n[i]=P(t[i],e);return n}function D(t,e,r){t.__proto__=e}function O(t,e,r){for(var n=0,i=r.length;n<i;n++){var o=r[n];C(t,o,e[o])}}function B(t,e){if(l(t)&&!(t instanceof Bo)){var r;return v(t,"__ob__")&&t.__ob__ instanceof qo?r=t.__ob__:$o.shouldConvert&&!Mo()&&(Array.isArray(t)||u(t))&&Object.isExtensible(t)&&!t._isVue&&(r=new qo(t)),e&&r&&r.vmCount++,r}}function F(t,e,r,n,i){var o=new Do,a=Object.getOwnPropertyDescriptor(t,e);if(!a||!1!==a.configurable){var s=a&&a.get,l=a&&a.set,u=!i&&B(r);Object.defineProperty(t,e,{enumerable:!0,configurable:!0,get:function(){var e=s?s.call(t):r;return Do.target&&(o.depend(),u&&(u.dep.depend(),Array.isArray(e)&&N(e))),e},set:function(e){var n=s?s.call(t):r;e===n||e!==e&&n!==n||(l?l.call(t,e):r=e,u=!i&&B(e),o.notify())}})}}function j(t,e,r){if(Array.isArray(t)&&p(e))return t.length=Math.max(t.length,e),t.splice(e,1,r),r;if(v(t,e))return t[e]=r,r;var n=t.__ob__;return t._isVue||n&&n.vmCount?r:n?(F(n.value,e,r),n.dep.notify(),r):(t[e]=r,r)}function V(t,e){if(Array.isArray(t)&&p(e))return void t.splice(e,1);var r=t.__ob__;t._isVue||r&&r.vmCount||v(t,e)&&(delete t[e],r&&r.dep.notify())}function N(t){for(var e=void 0,r=0,n=t.length;r<n;r++)e=t[r],e&&e.__ob__&&e.__ob__.dep.depend(),Array.isArray(e)&&N(e)}function U(t,e){if(!e)return t;for(var r,n,i,o=Object.keys(e),a=0;a<o.length;a++)r=o[a],n=t[r],i=e[r],v(t,r)?u(n)&&u(i)&&U(n,i):j(t,r,i);return t}function $(t,e,r){return r?t||e?function(){var n="function"===typeof e?e.call(r):e,i="function"===typeof t?t.call(r):t;return n?U(n,i):i}:void 0:e?t?function(){return U("function"===typeof e?e.call(this):e,"function"===typeof t?t.call(this):t)}:e:t}function q(t,e){return e?t?t.concat(e):Array.isArray(e)?e:[e]:t}function Z(t,e,r,n){var i=Object.create(t||null);return e?x(i,e):i}function G(t,e){var r=t.props;if(r){var n,i,o,a={};if(Array.isArray(r))for(n=r.length;n--;)"string"===typeof(i=r[n])&&(o=io(i),a[o]={type:null});else if(u(r))for(var s in r)i=r[s],o=io(s),a[o]=u(i)?i:{type:i};t.props=a}}function W(t,e){var r=t.inject,n=t.inject={};if(Array.isArray(r))for(var i=0;i<r.length;i++)n[r[i]]={from:r[i]};else if(u(r))for(var o in r){var a=r[o];n[o]=u(a)?x({from:o},a):{from:a}}}function H(t){var e=t.directives;if(e)for(var r in e){var n=e[r];"function"===typeof n&&(e[r]={bind:n,update:n})}}function X(t,e,r){function n(n){var i=Zo[n]||Ho;l[n]=i(t[n],e[n],r,n)}"function"===typeof e&&(e=e.options),G(e,r),W(e,r),H(e);var i=e.extends;if(i&&(t=X(t,i,r)),e.mixins)for(var o=0,a=e.mixins.length;o<a;o++)t=X(t,e.mixins[o],r);var s,l={};for(s in t)n(s);for(s in e)v(t,s)||n(s);return l}function K(t,e,r,n){if("string"===typeof r){var i=t[e];if(v(i,r))return i[r];var o=io(r);if(v(i,o))return i[o];var a=oo(o);if(v(i,a))return i[a];return i[r]||i[o]||i[a]}}function J(t,e,r,n){var i=e[t],o=!v(r,t),a=r[t];if(tt(Boolean,i.type)&&(o&&!v(i,"default")?a=!1:tt(String,i.type)||""!==a&&a!==so(t)||(a=!0)),void 0===a){a=Y(n,i,t);var s=$o.shouldConvert;$o.shouldConvert=!0,B(a),$o.shouldConvert=s}return a}function Y(t,e,r){if(v(e,"default")){var n=e.default;return t&&t.$options.propsData&&void 0===t.$options.propsData[r]&&void 0!==t._props[r]?t._props[r]:"function"===typeof n&&"Function"!==Q(e.type)?n.call(t):n}}function Q(t){var e=t&&t.toString().match(/^\s*function (\w+)/);return e?e[1]:""}function tt(t,e){if(!Array.isArray(e))return Q(e)===Q(t);for(var r=0,n=e.length;r<n;r++)if(Q(e[r])===Q(t))return!0;return!1}function et(t,e,r){if(e)for(var n=e;n=n.$parent;){var i=n.$options.errorCaptured;if(i)for(var o=0;o<i.length;o++)try{var a=!1===i[o].call(n,t,e,r);if(a)return}catch(t){rt(t,n,"errorCaptured hook")}}rt(t,e,r)}function rt(t,e,r){if(fo.errorHandler)try{return fo.errorHandler.call(null,t,e,r)}catch(t){nt(t,null,"config.errorHandler")}nt(t,e,r)}function nt(t,e,r){if(!go||"undefined"===typeof console)throw t;console.error(t)}function it(){Ko=!1;var t=Xo.slice(0);Xo.length=0;for(var e=0;e<t.length;e++)t[e]()}function ot(t){return t._withTask||(t._withTask=function(){Jo=!0;var e=t.apply(null,arguments);return Jo=!1,e})}function at(t,e){var r;if(Xo.push(function(){if(t)try{t.call(e)}catch(t){et(t,e,"nextTick")}else r&&r(e)}),Ko||(Ko=!0,Jo?Wo():Go()),!t&&"undefined"!==typeof Promise)return new Promise(function(t){r=t})}function st(t){function e(){var t=arguments,r=e.fns;if(!Array.isArray(r))return r.apply(null,arguments);for(var n=r.slice(),i=0;i<n.length;i++)n[i].apply(null,t)}return e.fns=t,e}function lt(t,e,r,i,o){var a,s,l,u;for(a in t)s=t[a],l=e[a],u=ra(a),n(s)||(n(l)?(n(s.fns)&&(s=t[a]=st(s)),r(u.name,s,u.once,u.capture,u.passive)):s!==l&&(l.fns=s,t[a]=l));for(a in e)n(t[a])&&(u=ra(a),i(u.name,e[a],u.capture))}function ut(t,e,r){function a(){r.apply(this,arguments),m(s.fns,a)}var s,l=t[e];n(l)?s=st([a]):i(l.fns)&&o(l.merged)?(s=l,s.fns.push(a)):s=st([l,a]),s.merged=!0,t[e]=s}function ct(t,e,r){var o=e.options.props;if(!n(o)){var a={},s=t.attrs,l=t.props;if(i(s)||i(l))for(var u in o){var c=so(u);pt(a,l,u,c,!0)||pt(a,s,u,c,!1)}return a}}function pt(t,e,r,n,o){if(i(e)){if(v(e,r))return t[r]=e[r],o||delete e[r],!0;if(v(e,n))return t[r]=e[n],o||delete e[n],!0}return!1}function ht(t){for(var e=0;e<t.length;e++)if(Array.isArray(t[e]))return Array.prototype.concat.apply([],t);return t}function ft(t){return s(t)?[I(t)]:Array.isArray(t)?mt(t):void 0}function dt(t){return i(t)&&i(t.text)&&a(t.isComment)}function mt(t,e){var r,a,l,u,c=[];for(r=0;r<t.length;r++)a=t[r],n(a)||"boolean"===typeof a||(l=c.length-1,u=c[l],Array.isArray(a)?a.length>0&&(a=mt(a,(e||"")+"_"+r),dt(a[0])&&dt(u)&&(c[l]=I(u.text+a[0].text),a.shift()),c.push.apply(c,a)):s(a)?dt(u)?c[l]=I(u.text+a):""!==a&&c.push(I(a)):dt(a)&&dt(u)?c[l]=I(u.text+a.text):(o(t._isVList)&&i(a.tag)&&n(a.key)&&i(e)&&(a.key="__vlist"+e+"_"+r+"__"),c.push(a)));return c}function vt(t,e){return(t.__esModule||Io&&"Module"===t[Symbol.toStringTag])&&(t=t.default),l(t)?e.extend(t):t}function yt(t,e,r,n,i){var o=jo();return o.asyncFactory=t,o.asyncMeta={data:e,context:r,children:n,tag:i},o}function gt(t,e,r){if(o(t.error)&&i(t.errorComp))return t.errorComp;if(i(t.resolved))return t.resolved;if(o(t.loading)&&i(t.loadingComp))return t.loadingComp;if(!i(t.contexts)){var a=t.contexts=[r],s=!0,u=function(){for(var t=0,e=a.length;t<e;t++)a[t].$forceUpdate()},c=z(function(r){t.resolved=vt(r,e),s||u()}),p=z(function(e){i(t.errorComp)&&(t.error=!0,u())}),h=t(c,p);return l(h)&&("function"===typeof h.then?n(t.resolved)&&h.then(c,p):i(h.component)&&"function"===typeof h.component.then&&(h.component.then(c,p),i(h.error)&&(t.errorComp=vt(h.error,e)),i(h.loading)&&(t.loadingComp=vt(h.loading,e),0===h.delay?t.loading=!0:setTimeout(function(){n(t.resolved)&&n(t.error)&&(t.loading=!0,u())},h.delay||200)),i(h.timeout)&&setTimeout(function(){n(t.resolved)&&p(null)},h.timeout))),s=!1,t.loading?t.loadingComp:t.resolved}t.contexts.push(r)}function _t(t){return t.isComment&&t.asyncFactory}function xt(t){if(Array.isArray(t))for(var e=0;e<t.length;e++){var r=t[e];if(i(r)&&(i(r.componentOptions)||_t(r)))return r}}function bt(t){t._events=Object.create(null),t._hasHookEvent=!1;var e=t.$options._parentListeners;e&&St(t,e)}function wt(t,e,r){r?ea.$once(t,e):ea.$on(t,e)}function Tt(t,e){ea.$off(t,e)}function St(t,e,r){ea=t,lt(e,r||{},wt,Tt,t)}function zt(t,e){var r={};if(!t)return r;for(var n=[],i=0,o=t.length;i<o;i++){var a=t[i],s=a.data;if(s&&s.attrs&&s.attrs.slot&&delete s.attrs.slot,a.context!==e&&a.functionalContext!==e||!s||null==s.slot)n.push(a);else{var l=a.data.slot,u=r[l]||(r[l]=[]);"template"===a.tag?u.push.apply(u,a.children):u.push(a)}}return n.every(At)||(r.default=n),r}function At(t){return t.isComment||" "===t.text}function Ct(t,e){e=e||{};for(var r=0;r<t.length;r++)Array.isArray(t[r])?Ct(t[r],e):e[t[r].key]=t[r].fn;return e}function Et(t){var e=t.$options,r=e.parent;if(r&&!e.abstract){for(;r.$options.abstract&&r.$parent;)r=r.$parent;r.$children.push(t)}t.$parent=r,t.$root=r?r.$root:t,t.$children=[],t.$refs={},t._watcher=null,t._inactive=null,t._directInactive=!1,t._isMounted=!1,t._isDestroyed=!1,t._isBeingDestroyed=!1}function kt(t,e,r){t.$el=e,t.$options.render||(t.$options.render=jo),Rt(t,"beforeMount");var n;return n=function(){t._update(t._render(),r)},t._watcher=new pa(t,n,w),r=!1,null==t.$vnode&&(t._isMounted=!0,Rt(t,"mounted")),t}function Mt(t,e,r,n,i){var o=!!(i||t.$options._renderChildren||n.data.scopedSlots||t.$scopedSlots!==mo);if(t.$options._parentVnode=n,t.$vnode=n,t._vnode&&(t._vnode.parent=n),t.$options._renderChildren=i,t.$attrs=n.data&&n.data.attrs||mo,t.$listeners=r||mo,e&&t.$options.props){$o.shouldConvert=!1;for(var a=t._props,s=t.$options._propKeys||[],l=0;l<s.length;l++){var u=s[l];a[u]=J(u,t.$options.props,e,t)}$o.shouldConvert=!0,t.$options.propsData=e}if(r){var c=t.$options._parentListeners;t.$options._parentListeners=r,St(t,r,c)}o&&(t.$slots=zt(i,n.context),t.$forceUpdate())}function Lt(t){for(;t&&(t=t.$parent);)if(t._inactive)return!0;return!1}function It(t,e){if(e){if(t._directInactive=!1,Lt(t))return}else if(t._directInactive)return;if(t._inactive||null===t._inactive){t._inactive=!1;for(var r=0;r<t.$children.length;r++)It(t.$children[r]);Rt(t,"activated")}}function Pt(t,e){if((!e||(t._directInactive=!0,!Lt(t)))&&!t._inactive){t._inactive=!0;for(var r=0;r<t.$children.length;r++)Pt(t.$children[r]);Rt(t,"deactivated")}}function Rt(t,e){var r=t.$options[e];if(r)for(var n=0,i=r.length;n<i;n++)try{r[n].call(t)}catch(r){et(r,t,e+" hook")}t._hasHookEvent&&t.$emit("hook:"+e)}function Dt(){ua=ia.length=oa.length=0,aa={},sa=la=!1}function Ot(){la=!0;var t,e;for(ia.sort(function(t,e){return t.id-e.id}),ua=0;ua<ia.length;ua++)t=ia[ua],e=t.id,aa[e]=null,t.run();var r=oa.slice(),n=ia.slice();Dt(),jt(r),Bt(n),Lo&&fo.devtools&&Lo.emit("flush")}function Bt(t){for(var e=t.length;e--;){var r=t[e],n=r.vm;n._watcher===r&&n._isMounted&&Rt(n,"updated")}}function Ft(t){t._inactive=!1,oa.push(t)}function jt(t){for(var e=0;e<t.length;e++)t[e]._inactive=!0,It(t[e],!0)}function Vt(t){var e=t.id;if(null==aa[e]){if(aa[e]=!0,la){for(var r=ia.length-1;r>ua&&ia[r].id>t.id;)r--;ia.splice(r+1,0,t)}else ia.push(t);sa||(sa=!0,at(Ot))}}function Nt(t){ha.clear(),Ut(t,ha)}function Ut(t,e){var r,n,i=Array.isArray(t);if((i||l(t))&&Object.isExtensible(t)){if(t.__ob__){var o=t.__ob__.dep.id;if(e.has(o))return;e.add(o)}if(i)for(r=t.length;r--;)Ut(t[r],e);else for(n=Object.keys(t),r=n.length;r--;)Ut(t[n[r]],e)}}function $t(t,e,r){fa.get=function(){return this[e][r]},fa.set=function(t){this[e][r]=t},Object.defineProperty(t,r,fa)}function qt(t){t._watchers=[];var e=t.$options;e.props&&Zt(t,e.props),e.methods&&Jt(t,e.methods),e.data?Gt(t):B(t._data={},!0),e.computed&&Ht(t,e.computed),e.watch&&e.watch!==zo&&Yt(t,e.watch)}function Zt(t,e){var r=t.$options.propsData||{},n=t._props={},i=t.$options._propKeys=[],o=!t.$parent;$o.shouldConvert=o;for(var a in e)!function(o){i.push(o);var a=J(o,e,r,t);F(n,o,a),o in t||$t(t,"_props",o)}(a);$o.shouldConvert=!0}function Gt(t){var e=t.$options.data;e=t._data="function"===typeof e?Wt(e,t):e||{},u(e)||(e={});for(var r=Object.keys(e),n=t.$options.props,i=(t.$options.methods,r.length);i--;){var o=r[i];n&&v(n,o)||A(o)||$t(t,"_data",o)}B(e,!0)}function Wt(t,e){try{return t.call(e,e)}catch(t){return et(t,e,"data()"),{}}}function Ht(t,e){var r=t._computedWatchers=Object.create(null),n=Mo();for(var i in e){var o=e[i],a="function"===typeof o?o:o.get;n||(r[i]=new pa(t,a||w,w,da)),i in t||Xt(t,i,o)}}function Xt(t,e,r){var n=!Mo();"function"===typeof r?(fa.get=n?Kt(e):r,fa.set=w):(fa.get=r.get?n&&!1!==r.cache?Kt(e):r.get:w,fa.set=r.set?r.set:w),Object.defineProperty(t,e,fa)}function Kt(t){return function(){var e=this._computedWatchers&&this._computedWatchers[t];if(e)return e.dirty&&e.evaluate(),Do.target&&e.depend(),e.value}}function Jt(t,e){t.$options.props;for(var r in e)t[r]=null==e[r]?w:g(e[r],t)}function Yt(t,e){for(var r in e){var n=e[r];if(Array.isArray(n))for(var i=0;i<n.length;i++)Qt(t,r,n[i]);else Qt(t,r,n)}}function Qt(t,e,r,n){return u(r)&&(n=r,r=r.handler),"string"===typeof r&&(r=t[r]),t.$watch(e,r,n)}function te(t){var e=t.$options.provide;e&&(t._provided="function"===typeof e?e.call(t):e)}function ee(t){var e=re(t.$options.inject,t);e&&($o.shouldConvert=!1,Object.keys(e).forEach(function(r){F(t,r,e[r])}),$o.shouldConvert=!0)}function re(t,e){if(t){for(var r=Object.create(null),n=Io?Reflect.ownKeys(t).filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}):Object.keys(t),i=0;i<n.length;i++){for(var o=n[i],a=t[o].from,s=e;s;){if(s._provided&&a in s._provided){r[o]=s._provided[a];break}s=s.$parent}if(!s&&"default"in t[o]){var l=t[o].default;r[o]="function"===typeof l?l.call(e):l}}return r}}function ne(t,e){var r,n,o,a,s;if(Array.isArray(t)||"string"===typeof t)for(r=new Array(t.length),n=0,o=t.length;n<o;n++)r[n]=e(t[n],n);else if("number"===typeof t)for(r=new Array(t),n=0;n<t;n++)r[n]=e(n+1,n);else if(l(t))for(a=Object.keys(t),r=new Array(a.length),n=0,o=a.length;n<o;n++)s=a[n],r[n]=e(t[s],s,n);return i(r)&&(r._isVList=!0),r}function ie(t,e,r,n){var i=this.$scopedSlots[t];if(i)return r=r||{},n&&(r=x(x({},n),r)),i(r)||e;var o=this.$slots[t];return o||e}function oe(t){return K(this.$options,"filters",t,!0)||uo}function ae(t,e,r,n){var i=fo.keyCodes[e]||r;return i?Array.isArray(i)?-1===i.indexOf(t):i!==t:n?so(n)!==e:void 0}function se(t,e,r,n,i){if(r)if(l(r)){Array.isArray(r)&&(r=b(r));var o;for(var a in r)!function(a){if("class"===a||"style"===a||eo(a))o=t;else{var s=t.attrs&&t.attrs.type;o=n||fo.mustUseProp(e,s,a)?t.domProps||(t.domProps={}):t.attrs||(t.attrs={})}if(!(a in o)&&(o[a]=r[a],i)){(t.on||(t.on={}))["update:"+a]=function(t){r[a]=t}}}(a)}else;return t}function le(t,e){var r=this.$options.staticRenderFns,n=r.cached||(r.cached=[]),i=n[t];return i&&!e?Array.isArray(i)?R(i):P(i):(i=n[t]=r[t].call(this._renderProxy,null,this),ce(i,"__static__"+t,!1),i)}function ue(t,e,r){return ce(t,"__once__"+e+(r?"_"+r:""),!0),t}function ce(t,e,r){if(Array.isArray(t))for(var n=0;n<t.length;n++)t[n]&&"string"!==typeof t[n]&&pe(t[n],e+"_"+n,r);else pe(t,e,r)}function pe(t,e,r){t.isStatic=!0,t.key=e,t.isOnce=r}function he(t,e){if(e)if(u(e)){var r=t.on=t.on?x({},t.on):{};for(var n in e){var i=r[n],o=e[n];r[n]=i?[].concat(i,o):o}}else;return t}function fe(t){t._o=ue,t._n=f,t._s=h,t._l=ne,t._t=ie,t._q=T,t._i=S,t._m=le,t._f=oe,t._k=ae,t._b=se,t._v=I,t._e=jo,t._u=Ct,t._g=he}function de(t,e,r,n,i){var a=i.options;this.data=t,this.props=e,this.children=r,this.parent=n,this.listeners=t.on||mo,this.injections=re(a.inject,n),this.slots=function(){return zt(r,n)};var s=Object.create(n),l=o(a._compiled),u=!l;l&&(this.$options=a,this.$slots=this.slots(),this.$scopedSlots=t.scopedSlots||mo),a._scopeId?this._c=function(t,e,r,i){var o=we(s,t,e,r,i,u);return o&&(o.functionalScopeId=a._scopeId,o.functionalContext=n),o}:this._c=function(t,e,r,n){return we(s,t,e,r,n,u)}}function me(t,e,r,n,o){var a=t.options,s={},l=a.props;if(i(l))for(var u in l)s[u]=J(u,l,e||mo);else i(r.attrs)&&ve(s,r.attrs),i(r.props)&&ve(s,r.props);var c=new de(r,s,o,n,t),p=a.render.call(null,c._c,c);return p instanceof Bo&&(p.functionalContext=n,p.functionalOptions=a,r.slot&&((p.data||(p.data={})).slot=r.slot)),p}function ve(t,e){for(var r in e)t[io(r)]=e[r]}function ye(t,e,r,a,s){if(!n(t)){var u=r.$options._base;if(l(t)&&(t=u.extend(t)),"function"===typeof t){var c;if(n(t.cid)&&(c=t,void 0===(t=gt(c,u,r))))return yt(c,e,r,a,s);e=e||{},Ce(t),i(e.model)&&be(t.options,e);var p=ct(e,t,s);if(o(t.options.functional))return me(t,p,e,r,a);var h=e.on;if(e.on=e.nativeOn,o(t.options.abstract)){var f=e.slot;e={},f&&(e.slot=f)}_e(e);var d=t.options.name||s;return new Bo("vue-component-"+t.cid+(d?"-"+d:""),e,void 0,void 0,void 0,r,{Ctor:t,propsData:p,listeners:h,tag:s,children:a},c)}}}function ge(t,e,r,n){var o=t.componentOptions,a={_isComponent:!0,parent:e,propsData:o.propsData,_componentTag:o.tag,_parentVnode:t,_parentListeners:o.listeners,_renderChildren:o.children,_parentElm:r||null,_refElm:n||null},s=t.data.inlineTemplate;return i(s)&&(a.render=s.render,a.staticRenderFns=s.staticRenderFns),new o.Ctor(a)}function _e(t){t.hook||(t.hook={});for(var e=0;e<va.length;e++){var r=va[e],n=t.hook[r],i=ma[r];t.hook[r]=n?xe(i,n):i}}function xe(t,e){return function(r,n,i,o){t(r,n,i,o),e(r,n,i,o)}}function be(t,e){var r=t.model&&t.model.prop||"value",n=t.model&&t.model.event||"input";(e.props||(e.props={}))[r]=e.model.value;var o=e.on||(e.on={});i(o[n])?o[n]=[e.model.callback].concat(o[n]):o[n]=e.model.callback}function we(t,e,r,n,i,a){return(Array.isArray(r)||s(r))&&(i=n,n=r,r=void 0),o(a)&&(i=ga),Te(t,e,r,n,i)}function Te(t,e,r,n,o){if(i(r)&&i(r.__ob__))return jo();if(i(r)&&i(r.is)&&(e=r.is),!e)return jo();Array.isArray(n)&&"function"===typeof n[0]&&(r=r||{},r.scopedSlots={default:n[0]},n.length=0),o===ga?n=ft(n):o===ya&&(n=ht(n));var a,s;if("string"===typeof e){var l;s=t.$vnode&&t.$vnode.ns||fo.getTagNamespace(e),a=fo.isReservedTag(e)?new Bo(fo.parsePlatformTagName(e),r,n,void 0,void 0,t):i(l=K(t.$options,"components",e))?ye(l,r,t,n,e):new Bo(e,r,n,void 0,void 0,t)}else a=ye(e,r,t,n);return i(a)?(s&&Se(a,s),a):jo()}function Se(t,e,r){if(t.ns=e,"foreignObject"===t.tag&&(e=void 0,r=!0),i(t.children))for(var a=0,s=t.children.length;a<s;a++){var l=t.children[a];i(l.tag)&&(n(l.ns)||o(r))&&Se(l,e,r)}}function ze(t){t._vnode=null;var e=t.$options,r=t.$vnode=e._parentVnode,n=r&&r.context;t.$slots=zt(e._renderChildren,n),t.$scopedSlots=mo,t._c=function(e,r,n,i){return we(t,e,r,n,i,!1)},t.$createElement=function(e,r,n,i){return we(t,e,r,n,i,!0)};var i=r&&r.data;F(t,"$attrs",i&&i.attrs||mo,null,!0),F(t,"$listeners",e._parentListeners||mo,null,!0)}function Ae(t,e){var r=t.$options=Object.create(t.constructor.options);r.parent=e.parent,r.propsData=e.propsData,r._parentVnode=e._parentVnode,r._parentListeners=e._parentListeners,r._renderChildren=e._renderChildren,r._componentTag=e._componentTag,r._parentElm=e._parentElm,r._refElm=e._refElm,e.render&&(r.render=e.render,r.staticRenderFns=e.staticRenderFns)}function Ce(t){var e=t.options;if(t.super){var r=Ce(t.super);if(r!==t.superOptions){t.superOptions=r;var n=Ee(t);n&&x(t.extendOptions,n),e=t.options=X(r,t.extendOptions),e.name&&(e.components[e.name]=t)}}return e}function Ee(t){var e,r=t.options,n=t.extendOptions,i=t.sealedOptions;for(var o in r)r[o]!==i[o]&&(e||(e={}),e[o]=ke(r[o],n[o],i[o]));return e}function ke(t,e,r){if(Array.isArray(t)){var n=[];r=Array.isArray(r)?r:[r],e=Array.isArray(e)?e:[e];for(var i=0;i<t.length;i++)(e.indexOf(t[i])>=0||r.indexOf(t[i])<0)&&n.push(t[i]);return n}return t}function Me(t){this._init(t)}function Le(t){t.use=function(t){var e=this._installedPlugins||(this._installedPlugins=[]);if(e.indexOf(t)>-1)return this;var r=_(arguments,1);return r.unshift(this),"function"===typeof t.install?t.install.apply(t,r):"function"===typeof t&&t.apply(null,r),e.push(t),this}}function Ie(t){t.mixin=function(t){return this.options=X(this.options,t),this}}function Pe(t){t.cid=0;var e=1;t.extend=function(t){t=t||{};var r=this,n=r.cid,i=t._Ctor||(t._Ctor={});if(i[n])return i[n];var o=t.name||r.options.name,a=function(t){this._init(t)};return a.prototype=Object.create(r.prototype),a.prototype.constructor=a,a.cid=e++,a.options=X(r.options,t),a.super=r,a.options.props&&Re(a),a.options.computed&&De(a),a.extend=r.extend,a.mixin=r.mixin,a.use=r.use,po.forEach(function(t){a[t]=r[t]}),o&&(a.options.components[o]=a),a.superOptions=r.options,a.extendOptions=t,a.sealedOptions=x({},a.options),i[n]=a,a}}function Re(t){var e=t.options.props;for(var r in e)$t(t.prototype,"_props",r)}function De(t){var e=t.options.computed;for(var r in e)Xt(t.prototype,r,e[r])}function Oe(t){po.forEach(function(e){t[e]=function(t,r){return r?("component"===e&&u(r)&&(r.name=r.name||t,r=this.options._base.extend(r)),"directive"===e&&"function"===typeof r&&(r={bind:r,update:r}),this.options[e+"s"][t]=r,r):this.options[e+"s"][t]}})}function Be(t){return t&&(t.Ctor.options.name||t.tag)}function Fe(t,e){return Array.isArray(t)?t.indexOf(e)>-1:"string"===typeof t?t.split(",").indexOf(e)>-1:!!c(t)&&t.test(e)}function je(t,e){var r=t.cache,n=t.keys,i=t._vnode;for(var o in r){var a=r[o];if(a){var s=Be(a.componentOptions);s&&!e(s)&&Ve(r,o,n,i)}}}function Ve(t,e,r,n){var i=t[e];i&&i!==n&&i.componentInstance.$destroy(),t[e]=null,m(r,e)}function Ne(t){for(var e=t.data,r=t,n=t;i(n.componentInstance);)n=n.componentInstance._vnode,n.data&&(e=Ue(n.data,e));for(;i(r=r.parent);)r.data&&(e=Ue(e,r.data));return $e(e.staticClass,e.class)}function Ue(t,e){return{staticClass:qe(t.staticClass,e.staticClass),class:i(t.class)?[t.class,e.class]:e.class}}function $e(t,e){return i(t)||i(e)?qe(t,Ze(e)):""}function qe(t,e){return t?e?t+" "+e:t:e||""}function Ze(t){return Array.isArray(t)?Ge(t):l(t)?We(t):"string"===typeof t?t:""}function Ge(t){for(var e,r="",n=0,o=t.length;n<o;n++)i(e=Ze(t[n]))&&""!==e&&(r&&(r+=" "),r+=e);return r}function We(t){var e="";for(var r in t)t[r]&&(e&&(e+=" "),e+=r);return e}function He(t){return $a(t)?"svg":"math"===t?"math":void 0}function Xe(t){if(!go)return!0;if(Za(t))return!1;if(t=t.toLowerCase(),null!=Ga[t])return Ga[t];var e=document.createElement(t);return t.indexOf("-")>-1?Ga[t]=e.constructor===window.HTMLUnknownElement||e.constructor===window.HTMLElement:Ga[t]=/HTMLUnknownElement/.test(e.toString())}function Ke(t){if("string"===typeof t){var e=document.querySelector(t);return e||document.createElement("div")}return t}function Je(t,e){var r=document.createElement(t);return"select"!==t?r:(e.data&&e.data.attrs&&void 0!==e.data.attrs.multiple&&r.setAttribute("multiple","multiple"),r)}function Ye(t,e){return document.createElementNS(Na[t],e)}function Qe(t){return document.createTextNode(t)}function tr(t){return document.createComment(t)}function er(t,e,r){t.insertBefore(e,r)}function rr(t,e){t.removeChild(e)}function nr(t,e){t.appendChild(e)}function ir(t){return t.parentNode}function or(t){return t.nextSibling}function ar(t){return t.tagName}function sr(t,e){t.textContent=e}function lr(t,e,r){t.setAttribute(e,r)}function ur(t,e){var r=t.data.ref;if(r){var n=t.context,i=t.componentInstance||t.elm,o=n.$refs;e?Array.isArray(o[r])?m(o[r],i):o[r]===i&&(o[r]=void 0):t.data.refInFor?Array.isArray(o[r])?o[r].indexOf(i)<0&&o[r].push(i):o[r]=[i]:o[r]=i}}function cr(t,e){return t.key===e.key&&(t.tag===e.tag&&t.isComment===e.isComment&&i(t.data)===i(e.data)&&pr(t,e)||o(t.isAsyncPlaceholder)&&t.asyncFactory===e.asyncFactory&&n(e.asyncFactory.error))}function pr(t,e){if("input"!==t.tag)return!0;var r,n=i(r=t.data)&&i(r=r.attrs)&&r.type,o=i(r=e.data)&&i(r=r.attrs)&&r.type;return n===o||Wa(n)&&Wa(o)}function hr(t,e,r){var n,o,a={};for(n=e;n<=r;++n)o=t[n].key,i(o)&&(a[o]=n);return a}function fr(t,e){(t.data.directives||e.data.directives)&&dr(t,e)}function dr(t,e){var r,n,i,o=t===Ka,a=e===Ka,s=mr(t.data.directives,t.context),l=mr(e.data.directives,e.context),u=[],c=[];for(r in l)n=s[r],i=l[r],n?(i.oldValue=n.value,yr(i,"update",e,t),i.def&&i.def.componentUpdated&&c.push(i)):(yr(i,"bind",e,t),i.def&&i.def.inserted&&u.push(i));if(u.length){var p=function(){for(var r=0;r<u.length;r++)yr(u[r],"inserted",e,t)};o?ut(e.data.hook||(e.data.hook={}),"insert",p):p()}if(c.length&&ut(e.data.hook||(e.data.hook={}),"postpatch",function(){for(var r=0;r<c.length;r++)yr(c[r],"componentUpdated",e,t)}),!o)for(r in s)l[r]||yr(s[r],"unbind",t,t,a)}function mr(t,e){var r=Object.create(null);if(!t)return r;var n,i;for(n=0;n<t.length;n++)i=t[n],i.modifiers||(i.modifiers=Qa),r[vr(i)]=i,i.def=K(e.$options,"directives",i.name,!0);return r}function vr(t){return t.rawName||t.name+"."+Object.keys(t.modifiers||{}).join(".")}function yr(t,e,r,n,i){var o=t.def&&t.def[e];if(o)try{o(r.elm,t,r,n,i)}catch(n){et(n,r.context,"directive "+t.name+" "+e+" hook")}}function gr(t,e){var r=e.componentOptions;if((!i(r)||!1!==r.Ctor.options.inheritAttrs)&&(!n(t.data.attrs)||!n(e.data.attrs))){var o,a,s=e.elm,l=t.data.attrs||{},u=e.data.attrs||{};i(u.__ob__)&&(u=e.data.attrs=x({},u));for(o in u)a=u[o],l[o]!==a&&_r(s,o,a);(bo||wo)&&u.value!==l.value&&_r(s,"value",u.value);for(o in l)n(u[o])&&(Fa(o)?s.removeAttributeNS(Ba,ja(o)):Da(o)||s.removeAttribute(o))}}function _r(t,e,r){Oa(e)?Va(r)?t.removeAttribute(e):(r="allowfullscreen"===e&&"EMBED"===t.tagName?"true":e,t.setAttribute(e,r)):Da(e)?t.setAttribute(e,Va(r)||"false"===r?"false":"true"):Fa(e)?Va(r)?t.removeAttributeNS(Ba,ja(e)):t.setAttributeNS(Ba,e,r):Va(r)?t.removeAttribute(e):t.setAttribute(e,r)}function xr(t,e){var r=e.elm,o=e.data,a=t.data;if(!(n(o.staticClass)&&n(o.class)&&(n(a)||n(a.staticClass)&&n(a.class)))){var s=Ne(e),l=r._transitionClasses;i(l)&&(s=qe(s,Ze(l))),s!==r._prevClass&&(r.setAttribute("class",s),r._prevClass=s)}}function br(t){function e(){(a||(a=[])).push(t.slice(d,i).trim()),d=i+1}var r,n,i,o,a,s=!1,l=!1,u=!1,c=!1,p=0,h=0,f=0,d=0;for(i=0;i<t.length;i++)if(n=r,r=t.charCodeAt(i),s)39===r&&92!==n&&(s=!1);else if(l)34===r&&92!==n&&(l=!1);else if(u)96===r&&92!==n&&(u=!1);else if(c)47===r&&92!==n&&(c=!1);else if(124!==r||124===t.charCodeAt(i+1)||124===t.charCodeAt(i-1)||p||h||f){switch(r){case 34:l=!0;break;case 39:s=!0;break;case 96:u=!0;break;case 40:f++;break;case 41:f--;break;case 91:h++;break;case 93:h--;break;case 123:p++;break;case 125:p--}if(47===r){for(var m=i-1,v=void 0;m>=0&&" "===(v=t.charAt(m));m--);v&&ns.test(v)||(c=!0)}}else void 0===o?(d=i+1,o=t.slice(0,i).trim()):e();if(void 0===o?o=t.slice(0,i).trim():0!==d&&e(),a)for(i=0;i<a.length;i++)o=wr(o,a[i]);return o}function wr(t,e){var r=e.indexOf("(");return r<0?'_f("'+e+'")('+t+")":'_f("'+e.slice(0,r)+'")('+t+","+e.slice(r+1)}function Tr(t){console.error("[Vue compiler]: "+t)}function Sr(t,e){return t?t.map(function(t){return t[e]}).filter(function(t){return t}):[]}function zr(t,e,r){(t.props||(t.props=[])).push({name:e,value:r})}function Ar(t,e,r){(t.attrs||(t.attrs=[])).push({name:e,value:r})}function Cr(t,e,r,n,i,o){(t.directives||(t.directives=[])).push({name:e,rawName:r,value:n,arg:i,modifiers:o})}function Er(t,e,r,n,i,o){n&&n.capture&&(delete n.capture,e="!"+e),n&&n.once&&(delete n.once,e="~"+e),n&&n.passive&&(delete n.passive,e="&"+e);var a;n&&n.native?(delete n.native,a=t.nativeEvents||(t.nativeEvents={})):a=t.events||(t.events={});var s={value:r,modifiers:n},l=a[e];Array.isArray(l)?i?l.unshift(s):l.push(s):a[e]=l?i?[s,l]:[l,s]:s}function kr(t,e,r){var n=Mr(t,":"+e)||Mr(t,"v-bind:"+e);if(null!=n)return br(n);if(!1!==r){var i=Mr(t,e);if(null!=i)return JSON.stringify(i)}}function Mr(t,e,r){var n;if(null!=(n=t.attrsMap[e]))for(var i=t.attrsList,o=0,a=i.length;o<a;o++)if(i[o].name===e){i.splice(o,1);break}return r&&delete t.attrsMap[e],n}function Lr(t,e,r){var n=r||{},i=n.number,o=n.trim,a="$$v";o&&(a="(typeof $$v === 'string'? $$v.trim(): $$v)"),i&&(a="_n("+a+")");var s=Ir(e,a);t.model={value:"("+e+")",expression:'"'+e+'"',callback:"function ($$v) {"+s+"}"}}function Ir(t,e){var r=Pr(t);return null===r.key?t+"="+e:"$set("+r.exp+", "+r.key+", "+e+")"}function Pr(t){if(Ta=t.length,t.indexOf("[")<0||t.lastIndexOf("]")<Ta-1)return Aa=t.lastIndexOf("."),Aa>-1?{exp:t.slice(0,Aa),key:'"'+t.slice(Aa+1)+'"'}:{exp:t,key:null};for(Sa=t,Aa=Ca=Ea=0;!Dr();)za=Rr(),Or(za)?Fr(za):91===za&&Br(za);return{exp:t.slice(0,Ca),key:t.slice(Ca+1,Ea)}}function Rr(){return Sa.charCodeAt(++Aa)}function Dr(){return Aa>=Ta}function Or(t){return 34===t||39===t}function Br(t){var e=1;for(Ca=Aa;!Dr();)if(t=Rr(),Or(t))Fr(t);else if(91===t&&e++,93===t&&e--,0===e){Ea=Aa;break}}function Fr(t){for(var e=t;!Dr()&&(t=Rr())!==e;);}function jr(t,e,r){ka=r;var n=e.value,i=e.modifiers,o=t.tag,a=t.attrsMap.type;if(t.component)return Lr(t,n,i),!1;if("select"===o)Ur(t,n,i);else if("input"===o&&"checkbox"===a)Vr(t,n,i);else if("input"===o&&"radio"===a)Nr(t,n,i);else if("input"===o||"textarea"===o)$r(t,n,i);else if(!fo.isReservedTag(o))return Lr(t,n,i),!1;return!0}function Vr(t,e,r){var n=r&&r.number,i=kr(t,"value")||"null",o=kr(t,"true-value")||"true",a=kr(t,"false-value")||"false";zr(t,"checked","Array.isArray("+e+")?_i("+e+","+i+")>-1"+("true"===o?":("+e+")":":_q("+e+","+o+")")),Er(t,"change","var $$a="+e+",$$el=$event.target,$$c=$$el.checked?("+o+"):("+a+");if(Array.isArray($$a)){var $$v="+(n?"_n("+i+")":i)+",$$i=_i($$a,$$v);if($$el.checked){$$i<0&&("+e+"=$$a.concat([$$v]))}else{$$i>-1&&("+e+"=$$a.slice(0,$$i).concat($$a.slice($$i+1)))}}else{"+Ir(e,"$$c")+"}",null,!0)}function Nr(t,e,r){var n=r&&r.number,i=kr(t,"value")||"null";i=n?"_n("+i+")":i,zr(t,"checked","_q("+e+","+i+")"),Er(t,"change",Ir(e,i),null,!0)}function Ur(t,e,r){var n=r&&r.number,i='Array.prototype.filter.call($event.target.options,function(o){return o.selected}).map(function(o){var val = "_value" in o ? o._value : o.value;return '+(n?"_n(val)":"val")+"})",o="var $$selectedVal = "+i+";";o=o+" "+Ir(e,"$event.target.multiple ? $$selectedVal : $$selectedVal[0]"),Er(t,"change",o,null,!0)}function $r(t,e,r){var n=t.attrsMap.type,i=r||{},o=i.lazy,a=i.number,s=i.trim,l=!o&&"range"!==n,u=o?"change":"range"===n?is:"input",c="$event.target.value";s&&(c="$event.target.value.trim()"),a&&(c="_n("+c+")");var p=Ir(e,c);l&&(p="if($event.target.composing)return;"+p),zr(t,"value","("+e+")"),Er(t,u,p,null,!0),(s||a)&&Er(t,"blur","$forceUpdate()")}function qr(t){if(i(t[is])){var e=xo?"change":"input";t[e]=[].concat(t[is],t[e]||[]),delete t[is]}i(t[os])&&(t.change=[].concat(t[os],t.change||[]),delete t[os])}function Zr(t,e,r){var n=Ma;return function i(){null!==t.apply(null,arguments)&&Wr(e,i,r,n)}}function Gr(t,e,r,n,i){e=ot(e),r&&(e=Zr(e,t,n)),Ma.addEventListener(t,e,Ao?{capture:n,passive:i}:n)}function Wr(t,e,r,n){(n||Ma).removeEventListener(t,e._withTask||e,r)}function Hr(t,e){if(!n(t.data.on)||!n(e.data.on)){var r=e.data.on||{},i=t.data.on||{};Ma=e.elm,qr(r),lt(r,i,Gr,Wr,e.context)}}function Xr(t,e){if(!n(t.data.domProps)||!n(e.data.domProps)){var r,o,a=e.elm,s=t.data.domProps||{},l=e.data.domProps||{};i(l.__ob__)&&(l=e.data.domProps=x({},l));for(r in s)n(l[r])&&(a[r]="");for(r in l){if(o=l[r],"textContent"===r||"innerHTML"===r){if(e.children&&(e.children.length=0),o===s[r])continue;1===a.childNodes.length&&a.removeChild(a.childNodes[0])}if("value"===r){a._value=o;var u=n(o)?"":String(o);Kr(a,u)&&(a.value=u)}else a[r]=o}}}function Kr(t,e){return!t.composing&&("OPTION"===t.tagName||Jr(t,e)||Yr(t,e))}function Jr(t,e){var r=!0;try{r=document.activeElement!==t}catch(t){}return r&&t.value!==e}function Yr(t,e){var r=t.value,n=t._vModifiers;return i(n)&&n.number?f(r)!==f(e):i(n)&&n.trim?r.trim()!==e.trim():r!==e}function Qr(t){var e=tn(t.style);return t.staticStyle?x(t.staticStyle,e):e}function tn(t){return Array.isArray(t)?b(t):"string"===typeof t?ls(t):t}function en(t,e){var r,n={};if(e)for(var i=t;i.componentInstance;)i=i.componentInstance._vnode,i.data&&(r=Qr(i.data))&&x(n,r);(r=Qr(t.data))&&x(n,r);for(var o=t;o=o.parent;)o.data&&(r=Qr(o.data))&&x(n,r);return n}function rn(t,e){var r=e.data,o=t.data;if(!(n(r.staticStyle)&&n(r.style)&&n(o.staticStyle)&&n(o.style))){var a,s,l=e.elm,u=o.staticStyle,c=o.normalizedStyle||o.style||{},p=u||c,h=tn(e.data.style)||{};e.data.normalizedStyle=i(h.__ob__)?x({},h):h;var f=en(e,!0);for(s in p)n(f[s])&&ps(l,s,"");for(s in f)(a=f[s])!==p[s]&&ps(l,s,null==a?"":a)}}function nn(t,e){if(e&&(e=e.trim()))if(t.classList)e.indexOf(" ")>-1?e.split(/\s+/).forEach(function(e){return t.classList.add(e)}):t.classList.add(e);else{var r=" "+(t.getAttribute("class")||"")+" ";r.indexOf(" "+e+" ")<0&&t.setAttribute("class",(r+e).trim())}}function on(t,e){if(e&&(e=e.trim()))if(t.classList)e.indexOf(" ")>-1?e.split(/\s+/).forEach(function(e){return t.classList.remove(e)}):t.classList.remove(e),t.classList.length||t.removeAttribute("class");else{for(var r=" "+(t.getAttribute("class")||"")+" ",n=" "+e+" ";r.indexOf(n)>=0;)r=r.replace(n," ");r=r.trim(),r?t.setAttribute("class",r):t.removeAttribute("class")}}function an(t){if(t){if("object"===typeof t){var e={};return!1!==t.css&&x(e,ms(t.name||"v")),x(e,t),e}return"string"===typeof t?ms(t):void 0}}function sn(t){Ts(function(){Ts(t)})}function ln(t,e){var r=t._transitionClasses||(t._transitionClasses=[]);r.indexOf(e)<0&&(r.push(e),nn(t,e))}function un(t,e){t._transitionClasses&&m(t._transitionClasses,e),on(t,e)}function cn(t,e,r){var n=pn(t,e),i=n.type,o=n.timeout,a=n.propCount;if(!i)return r();var s=i===ys?xs:ws,l=0,u=function(){t.removeEventListener(s,c),r()},c=function(e){e.target===t&&++l>=a&&u()};setTimeout(function(){l<a&&u()},o+1),t.addEventListener(s,c)}function pn(t,e){var r,n=window.getComputedStyle(t),i=n[_s+"Delay"].split(", "),o=n[_s+"Duration"].split(", "),a=hn(i,o),s=n[bs+"Delay"].split(", "),l=n[bs+"Duration"].split(", "),u=hn(s,l),c=0,p=0;return e===ys?a>0&&(r=ys,c=a,p=o.length):e===gs?u>0&&(r=gs,c=u,p=l.length):(c=Math.max(a,u),r=c>0?a>u?ys:gs:null,p=r?r===ys?o.length:l.length:0),{type:r,timeout:c,propCount:p,hasTransform:r===ys&&Ss.test(n[_s+"Property"])}}function hn(t,e){for(;t.length<e.length;)t=t.concat(t);return Math.max.apply(null,e.map(function(e,r){return fn(e)+fn(t[r])}))}function fn(t){return 1e3*Number(t.slice(0,-1))}function dn(t,e){var r=t.elm;i(r._leaveCb)&&(r._leaveCb.cancelled=!0,r._leaveCb());var o=an(t.data.transition);if(!n(o)&&!i(r._enterCb)&&1===r.nodeType){for(var a=o.css,s=o.type,u=o.enterClass,c=o.enterToClass,p=o.enterActiveClass,h=o.appearClass,d=o.appearToClass,m=o.appearActiveClass,v=o.beforeEnter,y=o.enter,g=o.afterEnter,_=o.enterCancelled,x=o.beforeAppear,b=o.appear,w=o.afterAppear,T=o.appearCancelled,S=o.duration,A=na,C=na.$vnode;C&&C.parent;)C=C.parent,A=C.context;var E=!A._isMounted||!t.isRootInsert;if(!E||b||""===b){var k=E&&h?h:u,M=E&&m?m:p,L=E&&d?d:c,I=E?x||v:v,P=E&&"function"===typeof b?b:y,R=E?w||g:g,D=E?T||_:_,O=f(l(S)?S.enter:S),B=!1!==a&&!bo,F=yn(P),j=r._enterCb=z(function(){B&&(un(r,L),un(r,M)),j.cancelled?(B&&un(r,k),D&&D(r)):R&&R(r),r._enterCb=null});t.data.show||ut(t.data.hook||(t.data.hook={}),"insert",function(){var e=r.parentNode,n=e&&e._pending&&e._pending[t.key];n&&n.tag===t.tag&&n.elm._leaveCb&&n.elm._leaveCb(),P&&P(r,j)}),I&&I(r),B&&(ln(r,k),ln(r,M),sn(function(){ln(r,L),un(r,k),j.cancelled||F||(vn(O)?setTimeout(j,O):cn(r,s,j))})),t.data.show&&(e&&e(),P&&P(r,j)),B||F||j()}}}function mn(t,e){function r(){T.cancelled||(t.data.show||((o.parentNode._pending||(o.parentNode._pending={}))[t.key]=t),d&&d(o),x&&(ln(o,c),ln(o,h),sn(function(){ln(o,p),un(o,c),T.cancelled||b||(vn(w)?setTimeout(T,w):cn(o,u,T))})),m&&m(o,T),x||b||T())}var o=t.elm;i(o._enterCb)&&(o._enterCb.cancelled=!0,o._enterCb());var a=an(t.data.transition);if(n(a))return e();if(!i(o._leaveCb)&&1===o.nodeType){var s=a.css,u=a.type,c=a.leaveClass,p=a.leaveToClass,h=a.leaveActiveClass,d=a.beforeLeave,m=a.leave,v=a.afterLeave,y=a.leaveCancelled,g=a.delayLeave,_=a.duration,x=!1!==s&&!bo,b=yn(m),w=f(l(_)?_.leave:_),T=o._leaveCb=z(function(){o.parentNode&&o.parentNode._pending&&(o.parentNode._pending[t.key]=null),x&&(un(o,p),un(o,h)),T.cancelled?(x&&un(o,c),y&&y(o)):(e(),v&&v(o)),o._leaveCb=null});g?g(r):r()}}function vn(t){return"number"===typeof t&&!isNaN(t)}function yn(t){if(n(t))return!1;var e=t.fns;return i(e)?yn(Array.isArray(e)?e[0]:e):(t._length||t.length)>1}function gn(t,e){!0!==e.data.show&&dn(e)}function _n(t,e,r){xn(t,e,r),(xo||wo)&&setTimeout(function(){xn(t,e,r)},0)}function xn(t,e,r){var n=e.value,i=t.multiple;if(!i||Array.isArray(n)){for(var o,a,s=0,l=t.options.length;s<l;s++)if(a=t.options[s],i)o=S(n,wn(a))>-1,a.selected!==o&&(a.selected=o);else if(T(wn(a),n))return void(t.selectedIndex!==s&&(t.selectedIndex=s));i||(t.selectedIndex=-1)}}function bn(t,e){return e.every(function(e){return!T(e,t)})}function wn(t){return"_value"in t?t._value:t.value}function Tn(t){t.target.composing=!0}function Sn(t){t.target.composing&&(t.target.composing=!1,zn(t.target,"input"))}function zn(t,e){var r=document.createEvent("HTMLEvents");r.initEvent(e,!0,!0),t.dispatchEvent(r)}function An(t){return!t.componentInstance||t.data&&t.data.transition?t:An(t.componentInstance._vnode)}function Cn(t){var e=t&&t.componentOptions;return e&&e.Ctor.options.abstract?Cn(xt(e.children)):t}function En(t){var e={},r=t.$options;for(var n in r.propsData)e[n]=t[n];var i=r._parentListeners;for(var o in i)e[io(o)]=i[o];return e}function kn(t,e){if(/\d-keep-alive$/.test(e.tag))return t("keep-alive",{props:e.componentOptions.propsData})}function Mn(t){for(;t=t.parent;)if(t.data.transition)return!0}function Ln(t,e){return e.key===t.key&&e.tag===t.tag}function In(t){t.elm._moveCb&&t.elm._moveCb(),t.elm._enterCb&&t.elm._enterCb()}function Pn(t){t.data.newPos=t.elm.getBoundingClientRect()}function Rn(t){var e=t.data.pos,r=t.data.newPos,n=e.left-r.left,i=e.top-r.top;if(n||i){t.data.moved=!0;var o=t.elm.style;o.transform=o.WebkitTransform="translate("+n+"px,"+i+"px)",o.transitionDuration="0s"}}function Dn(t,e){var r=e?Ns(e):js;if(r.test(t)){for(var n,i,o=[],a=r.lastIndex=0;n=r.exec(t);){i=n.index,i>a&&o.push(JSON.stringify(t.slice(a,i)));var s=br(n[1].trim());o.push("_s("+s+")"),a=i+n[0].length}return a<t.length&&o.push(JSON.stringify(t.slice(a))),o.join("+")}}function On(t,e){var r=(e.warn,Mr(t,"class"));r&&(t.staticClass=JSON.stringify(r));var n=kr(t,"class",!1);n&&(t.classBinding=n)}function Bn(t){var e="";return t.staticClass&&(e+="staticClass:"+t.staticClass+","),t.classBinding&&(e+="class:"+t.classBinding+","),e}function Fn(t,e){var r=(e.warn,Mr(t,"style"));if(r){t.staticStyle=JSON.stringify(ls(r))}var n=kr(t,"style",!1);n&&(t.styleBinding=n)}function jn(t){var e="";return t.staticStyle&&(e+="staticStyle:"+t.staticStyle+","),t.styleBinding&&(e+="style:("+t.styleBinding+"),"),e}function Vn(t,e){var r=e?gl:yl;return t.replace(r,function(t){return vl[t]})}function Nn(t,e){function r(e){c+=e,t=t.substring(e)}function n(t,r,n){var i,s;if(null==r&&(r=c),null==n&&(n=c),t&&(s=t.toLowerCase()),t)for(i=a.length-1;i>=0&&a[i].lowerCasedTag!==s;i--);else i=0;if(i>=0){for(var l=a.length-1;l>=i;l--)e.end&&e.end(a[l].tag,r,n);a.length=i,o=i&&a[i-1].tag}else"br"===s?e.start&&e.start(t,[],!0,r,n):"p"===s&&(e.start&&e.start(t,[],!1,r,n),e.end&&e.end(t,r,n))}for(var i,o,a=[],s=e.expectHTML,l=e.isUnaryTag||lo,u=e.canBeLeftOpenTag||lo,c=0;t;){if(i=t,o&&dl(o)){var p=0,h=o.toLowerCase(),f=ml[h]||(ml[h]=new RegExp("([\\s\\S]*?)(</"+h+"[^>]*>)","i")),d=t.replace(f,function(t,r,n){return p=n.length,dl(h)||"noscript"===h||(r=r.replace(/<!--([\s\S]*?)-->/g,"$1").replace(/<!\[CDATA\[([\s\S]*?)]]>/g,"$1")),xl(h,r)&&(r=r.slice(1)),e.chars&&e.chars(r),""});c+=t.length-d.length,t=d,n(h,c-p,c)}else{var m=t.indexOf("<");if(0===m){if(el.test(t)){var v=t.indexOf("--\x3e");if(v>=0){e.shouldKeepComment&&e.comment(t.substring(4,v)),r(v+3);continue}}if(rl.test(t)){var y=t.indexOf("]>");if(y>=0){r(y+2);continue}}var g=t.match(tl);if(g){r(g[0].length);continue}var _=t.match(Qs);if(_){var x=c;r(_[0].length),n(_[1],x,c);continue}var b=function(){var e=t.match(Js);if(e){var n={tagName:e[1],attrs:[],start:c};r(e[0].length);for(var i,o;!(i=t.match(Ys))&&(o=t.match(Hs));)r(o[0].length),n.attrs.push(o);if(i)return n.unarySlash=i[1],r(i[0].length),n.end=c,n}}();if(b){!function(t){var r=t.tagName,i=t.unarySlash;s&&("p"===o&&Ws(r)&&n(o),u(r)&&o===r&&n(r));for(var c=l(r)||!!i,p=t.attrs.length,h=new Array(p),f=0;f<p;f++){var d=t.attrs[f];nl&&-1===d[0].indexOf('""')&&(""===d[3]&&delete d[3],""===d[4]&&delete d[4],""===d[5]&&delete d[5]);var m=d[3]||d[4]||d[5]||"";h[f]={name:d[1],value:Vn(m,e.shouldDecodeNewlines)}}c||(a.push({tag:r,lowerCasedTag:r.toLowerCase(),attrs:h}),o=r),e.start&&e.start(r,h,c,t.start,t.end)}(b),xl(o,t)&&r(1);continue}}var w=void 0,T=void 0,S=void 0;if(m>=0){for(T=t.slice(m);!Qs.test(T)&&!Js.test(T)&&!el.test(T)&&!rl.test(T)&&!((S=T.indexOf("<",1))<0);)m+=S,T=t.slice(m);w=t.substring(0,m),r(m)}m<0&&(w=t,t=""),e.chars&&w&&e.chars(w)}if(t===i){e.chars&&e.chars(t);break}}n()}function Un(t,e,r){return{type:1,tag:t,attrsList:e,attrsMap:ai(e),parent:r,children:[]}}function $n(t,e){function r(t){t.pre&&(s=!1),ul(t.tag)&&(l=!1)}il=e.warn||Tr,ul=e.isPreTag||lo,cl=e.mustUseProp||lo,pl=e.getTagNamespace||lo,al=Sr(e.modules,"transformNode"),sl=Sr(e.modules,"preTransformNode"),ll=Sr(e.modules,"postTransformNode"),ol=e.delimiters;var n,i,o=[],a=!1!==e.preserveWhitespace,s=!1,l=!1;return Nn(t,{warn:il,expectHTML:e.expectHTML,isUnaryTag:e.isUnaryTag,canBeLeftOpenTag:e.canBeLeftOpenTag,shouldDecodeNewlines:e.shouldDecodeNewlines,shouldKeepComment:e.comments,start:function(t,a,u){var c=i&&i.ns||pl(t);xo&&"svg"===c&&(a=ui(a));var p=Un(t,a,i);c&&(p.ns=c),li(p)&&!Mo()&&(p.forbidden=!0);for(var h=0;h<sl.length;h++)p=sl[h](p,e)||p;if(s||(qn(p),p.pre&&(s=!0)),ul(p.tag)&&(l=!0),s?Zn(p):p.processed||(Xn(p),Kn(p),ti(p),Gn(p,e)),n?o.length||n.if&&(p.elseif||p.else)&&Qn(n,{exp:p.elseif,block:p}):n=p,i&&!p.forbidden)if(p.elseif||p.else)Jn(p,i);else if(p.slotScope){i.plain=!1;var f=p.slotTarget||'"default"';(i.scopedSlots||(i.scopedSlots={}))[f]=p}else i.children.push(p),p.parent=i;u?r(p):(i=p,o.push(p));for(var d=0;d<ll.length;d++)ll[d](p,e)},end:function(){var t=o[o.length-1],e=t.children[t.children.length-1];e&&3===e.type&&" "===e.text&&!l&&t.children.pop(),o.length-=1,i=o[o.length-1],r(t)},chars:function(t){if(i&&(!xo||"textarea"!==i.tag||i.attrsMap.placeholder!==t)){var e=i.children;if(t=l||t.trim()?si(i)?t:El(t):a&&e.length?" ":""){var r;!s&&" "!==t&&(r=Dn(t,ol))?e.push({type:2,expression:r,text:t}):" "===t&&e.length&&" "===e[e.length-1].text||e.push({type:3,text:t})}}},comment:function(t){i.children.push({type:3,text:t,isComment:!0})}}),n}function qn(t){null!=Mr(t,"v-pre")&&(t.pre=!0)}function Zn(t){var e=t.attrsList.length;if(e)for(var r=t.attrs=new Array(e),n=0;n<e;n++)r[n]={name:t.attrsList[n].name,value:JSON.stringify(t.attrsList[n].value)};else t.pre||(t.plain=!0)}function Gn(t,e){Wn(t),t.plain=!t.key&&!t.attrsList.length,Hn(t),ei(t),ri(t);for(var r=0;r<al.length;r++)t=al[r](t,e)||t;ni(t)}function Wn(t){var e=kr(t,"key");e&&(t.key=e)}function Hn(t){var e=kr(t,"ref");e&&(t.ref=e,t.refInFor=ii(t))}function Xn(t){var e;if(e=Mr(t,"v-for")){var r=e.match(Tl);if(!r)return;t.for=r[2].trim();var n=r[1].trim(),i=n.match(Sl);i?(t.alias=i[1].trim(),t.iterator1=i[2].trim(),i[3]&&(t.iterator2=i[3].trim())):t.alias=n}}function Kn(t){var e=Mr(t,"v-if");if(e)t.if=e,Qn(t,{exp:e,block:t});else{null!=Mr(t,"v-else")&&(t.else=!0);var r=Mr(t,"v-else-if");r&&(t.elseif=r)}}function Jn(t,e){var r=Yn(e.children);r&&r.if&&Qn(r,{exp:t.elseif,block:t})}function Yn(t){for(var e=t.length;e--;){if(1===t[e].type)return t[e];t.pop()}}function Qn(t,e){t.ifConditions||(t.ifConditions=[]),t.ifConditions.push(e)}function ti(t){null!=Mr(t,"v-once")&&(t.once=!0)}function ei(t){if("slot"===t.tag)t.slotName=kr(t,"name");else{var e;"template"===t.tag?(e=Mr(t,"scope"),t.slotScope=e||Mr(t,"slot-scope")):(e=Mr(t,"slot-scope"))&&(t.slotScope=e);var r=kr(t,"slot");r&&(t.slotTarget='""'===r?'"default"':r,t.slotScope||Ar(t,"slot",r))}}function ri(t){var e;(e=kr(t,"is"))&&(t.component=e),null!=Mr(t,"inline-template")&&(t.inlineTemplate=!0)}function ni(t){var e,r,n,i,o,a,s,l=t.attrsList;for(e=0,r=l.length;e<r;e++)if(n=i=l[e].name,o=l[e].value,wl.test(n))if(t.hasBindings=!0,a=oi(n),a&&(n=n.replace(Cl,"")),Al.test(n))n=n.replace(Al,""),o=br(o),s=!1,a&&(a.prop&&(s=!0,"innerHtml"===(n=io(n))&&(n="innerHTML")),a.camel&&(n=io(n)),a.sync&&Er(t,"update:"+io(n),Ir(o,"$event"))),s||!t.component&&cl(t.tag,t.attrsMap.type,n)?zr(t,n,o):Ar(t,n,o);else if(bl.test(n))n=n.replace(bl,""),Er(t,n,o,a,!1,il);else{n=n.replace(wl,"");var u=n.match(zl),c=u&&u[1];c&&(n=n.slice(0,-(c.length+1))),Cr(t,n,i,o,c,a)}else{Ar(t,n,JSON.stringify(o))}}function ii(t){for(var e=t;e;){if(void 0!==e.for)return!0;e=e.parent}return!1}function oi(t){var e=t.match(Cl);if(e){var r={};return e.forEach(function(t){r[t.slice(1)]=!0}),r}}function ai(t){for(var e={},r=0,n=t.length;r<n;r++)e[t[r].name]=t[r].value;return e}function si(t){return"script"===t.tag||"style"===t.tag}function li(t){return"style"===t.tag||"script"===t.tag&&(!t.attrsMap.type||"text/javascript"===t.attrsMap.type)}function ui(t){for(var e=[],r=0;r<t.length;r++){var n=t[r];kl.test(n.name)||(n.name=n.name.replace(Ml,""),e.push(n))}return e}function ci(t,e){if("input"===t.tag){var r=t.attrsMap;if(r["v-model"]&&(r["v-bind:type"]||r[":type"])){var n=kr(t,"type"),i=Mr(t,"v-if",!0),o=i?"&&("+i+")":"",a=pi(t);Xn(a),hi(a,"type","checkbox"),Gn(a,e),a.processed=!0,a.if="("+n+")==='checkbox'"+o,Qn(a,{exp:a.if,block:a});var s=pi(t);Mr(s,"v-for",!0),hi(s,"type","radio"),Gn(s,e),Qn(a,{exp:"("+n+")==='radio'"+o,block:s});var l=pi(t);return Mr(l,"v-for",!0),hi(l,":type",n),Gn(l,e),Qn(a,{exp:i,block:l}),a}}}function pi(t){return Un(t.tag,t.attrsList.slice(),t.parent)}function hi(t,e,r){t.attrsMap[e]=r,t.attrsList.push({name:e,value:r})}function fi(t,e){e.value&&zr(t,"textContent","_s("+e.value+")")}function di(t,e){e.value&&zr(t,"innerHTML","_s("+e.value+")")}function mi(t,e){t&&(hl=Dl(e.staticKeys||""),fl=e.isReservedTag||lo,yi(t),gi(t,!1))}function vi(t){return d("type,tag,attrsList,attrsMap,plain,parent,children,attrs"+(t?","+t:""))}function yi(t){if(t.static=_i(t),1===t.type){if(!fl(t.tag)&&"slot"!==t.tag&&null==t.attrsMap["inline-template"])return;for(var e=0,r=t.children.length;e<r;e++){var n=t.children[e];yi(n),n.static||(t.static=!1)}if(t.ifConditions)for(var i=1,o=t.ifConditions.length;i<o;i++){var a=t.ifConditions[i].block;yi(a),a.static||(t.static=!1)}}}function gi(t,e){if(1===t.type){if((t.static||t.once)&&(t.staticInFor=e),t.static&&t.children.length&&(1!==t.children.length||3!==t.children[0].type))return void(t.staticRoot=!0);if(t.staticRoot=!1,t.children)for(var r=0,n=t.children.length;r<n;r++)gi(t.children[r],e||!!t.for);if(t.ifConditions)for(var i=1,o=t.ifConditions.length;i<o;i++)gi(t.ifConditions[i].block,e)}}function _i(t){return 2!==t.type&&(3===t.type||!(!t.pre&&(t.hasBindings||t.if||t.for||to(t.tag)||!fl(t.tag)||xi(t)||!Object.keys(t).every(hl))))}function xi(t){for(;t.parent;){if(t=t.parent,"template"!==t.tag)return!1;if(t.for)return!0}return!1}function bi(t,e,r){var n=e?"nativeOn:{":"on:{";for(var i in t){n+='"'+i+'":'+wi(i,t[i])+","}return n.slice(0,-1)+"}"}function wi(t,e){if(!e)return"function(){}";if(Array.isArray(e))return"["+e.map(function(e){return wi(t,e)}).join(",")+"]";var r=Bl.test(e.value),n=Ol.test(e.value);if(e.modifiers){var i="",o="",a=[];for(var s in e.modifiers)if(Vl[s])o+=Vl[s],Fl[s]&&a.push(s);else if("exact"===s){var l=e.modifiers;o+=jl(["ctrl","shift","alt","meta"].filter(function(t){return!l[t]}).map(function(t){return"$event."+t+"Key"}).join("||"))}else a.push(s);a.length&&(i+=Ti(a)),o&&(i+=o);return"function($event){"+i+(r?e.value+"($event)":n?"("+e.value+")($event)":e.value)+"}"}return r||n?e.value:"function($event){"+e.value+"}"}function Ti(t){return"if(!('button' in $event)&&"+t.map(Si).join("&&")+")return null;"}function Si(t){var e=parseInt(t,10);if(e)return"$event.keyCode!=="+e;var r=Fl[t];return"_k($event.keyCode,"+JSON.stringify(t)+","+JSON.stringify(r)+",$event.key)"}function zi(t,e){t.wrapListeners=function(t){return"_g("+t+","+e.value+")"}}function Ai(t,e){t.wrapData=function(r){return"_b("+r+",'"+t.tag+"',"+e.value+","+(e.modifiers&&e.modifiers.prop?"true":"false")+(e.modifiers&&e.modifiers.sync?",true":"")+")"}}function Ci(t,e){var r=new Ul(e);return{render:"with(this){return "+(t?Ei(t,r):'_c("div")')+"}",staticRenderFns:r.staticRenderFns}}function Ei(t,e){if(t.staticRoot&&!t.staticProcessed)return ki(t,e);if(t.once&&!t.onceProcessed)return Mi(t,e);if(t.for&&!t.forProcessed)return Pi(t,e);if(t.if&&!t.ifProcessed)return Li(t,e);if("template"!==t.tag||t.slotTarget){if("slot"===t.tag)return Gi(t,e);var r;if(t.component)r=Wi(t.component,t,e);else{var n=t.plain?void 0:Ri(t,e),i=t.inlineTemplate?null:Vi(t,e,!0);r="_c('"+t.tag+"'"+(n?","+n:"")+(i?","+i:"")+")"}for(var o=0;o<e.transforms.length;o++)r=e.transforms[o](t,r);return r}return Vi(t,e)||"void 0"}function ki(t,e){return t.staticProcessed=!0,e.staticRenderFns.push("with(this){return "+Ei(t,e)+"}"),"_m("+(e.staticRenderFns.length-1)+(t.staticInFor?",true":"")+")"}function Mi(t,e){if(t.onceProcessed=!0,t.if&&!t.ifProcessed)return Li(t,e);if(t.staticInFor){for(var r="",n=t.parent;n;){if(n.for){r=n.key;break}n=n.parent}return r?"_o("+Ei(t,e)+","+e.onceId+++","+r+")":Ei(t,e)}return ki(t,e)}function Li(t,e,r,n){return t.ifProcessed=!0,Ii(t.ifConditions.slice(),e,r,n)}function Ii(t,e,r,n){function i(t){return r?r(t,e):t.once?Mi(t,e):Ei(t,e)}if(!t.length)return n||"_e()";var o=t.shift();return o.exp?"("+o.exp+")?"+i(o.block)+":"+Ii(t,e,r,n):""+i(o.block)}function Pi(t,e,r,n){var i=t.for,o=t.alias,a=t.iterator1?","+t.iterator1:"",s=t.iterator2?","+t.iterator2:"";return t.forProcessed=!0,(n||"_l")+"(("+i+"),function("+o+a+s+"){return "+(r||Ei)(t,e)+"})"}function Ri(t,e){var r="{",n=Di(t,e);n&&(r+=n+","),t.key&&(r+="key:"+t.key+","),t.ref&&(r+="ref:"+t.ref+","),t.refInFor&&(r+="refInFor:true,"),t.pre&&(r+="pre:true,"),t.component&&(r+='tag:"'+t.tag+'",');for(var i=0;i<e.dataGenFns.length;i++)r+=e.dataGenFns[i](t);if(t.attrs&&(r+="attrs:{"+Hi(t.attrs)+"},"),t.props&&(r+="domProps:{"+Hi(t.props)+"},"),t.events&&(r+=bi(t.events,!1,e.warn)+","),t.nativeEvents&&(r+=bi(t.nativeEvents,!0,e.warn)+","),t.slotTarget&&!t.slotScope&&(r+="slot:"+t.slotTarget+","),t.scopedSlots&&(r+=Bi(t.scopedSlots,e)+","),t.model&&(r+="model:{value:"+t.model.value+",callback:"+t.model.callback+",expression:"+t.model.expression+"},"),t.inlineTemplate){var o=Oi(t,e);o&&(r+=o+",")}return r=r.replace(/,$/,"")+"}",t.wrapData&&(r=t.wrapData(r)),t.wrapListeners&&(r=t.wrapListeners(r)),r}function Di(t,e){var r=t.directives;if(r){var n,i,o,a,s="directives:[",l=!1;for(n=0,i=r.length;n<i;n++){o=r[n],a=!0;var u=e.directives[o.name];u&&(a=!!u(t,o,e.warn)),a&&(l=!0,s+='{name:"'+o.name+'",rawName:"'+o.rawName+'"'+(o.value?",value:("+o.value+"),expression:"+JSON.stringify(o.value):"")+(o.arg?',arg:"'+o.arg+'"':"")+(o.modifiers?",modifiers:"+JSON.stringify(o.modifiers):"")+"},")}return l?s.slice(0,-1)+"]":void 0}}function Oi(t,e){var r=t.children[0];if(1===r.type){var n=Ci(r,e.options);return"inlineTemplate:{render:function(){"+n.render+"},staticRenderFns:["+n.staticRenderFns.map(function(t){return"function(){"+t+"}"}).join(",")+"]}"}}function Bi(t,e){return"scopedSlots:_u(["+Object.keys(t).map(function(r){return Fi(r,t[r],e)}).join(",")+"])"}function Fi(t,e,r){return e.for&&!e.forProcessed?ji(t,e,r):"{key:"+t+",fn:function("+String(e.slotScope)+"){return "+("template"===e.tag?e.if?e.if+"?"+(Vi(e,r)||"undefined")+":undefined":Vi(e,r)||"undefined":Ei(e,r))+"}}"}function ji(t,e,r){var n=e.for,i=e.alias,o=e.iterator1?","+e.iterator1:"",a=e.iterator2?","+e.iterator2:"";return e.forProcessed=!0,"_l(("+n+"),function("+i+o+a+"){return "+Fi(t,e,r)+"})"}function Vi(t,e,r,n,i){var o=t.children;if(o.length){var a=o[0];if(1===o.length&&a.for&&"template"!==a.tag&&"slot"!==a.tag)return(n||Ei)(a,e);var s=r?Ni(o,e.maybeComponent):0,l=i||$i;return"["+o.map(function(t){return l(t,e)}).join(",")+"]"+(s?","+s:"")}}function Ni(t,e){for(var r=0,n=0;n<t.length;n++){var i=t[n];if(1===i.type){if(Ui(i)||i.ifConditions&&i.ifConditions.some(function(t){return Ui(t.block)})){r=2;break}(e(i)||i.ifConditions&&i.ifConditions.some(function(t){return e(t.block)}))&&(r=1)}}return r}function Ui(t){return void 0!==t.for||"template"===t.tag||"slot"===t.tag}function $i(t,e){return 1===t.type?Ei(t,e):3===t.type&&t.isComment?Zi(t):qi(t)}function qi(t){return"_v("+(2===t.type?t.expression:Xi(JSON.stringify(t.text)))+")"}function Zi(t){return"_e("+JSON.stringify(t.text)+")"}function Gi(t,e){var r=t.slotName||'"default"',n=Vi(t,e),i="_t("+r+(n?","+n:""),o=t.attrs&&"{"+t.attrs.map(function(t){return io(t.name)+":"+t.value}).join(",")+"}",a=t.attrsMap["v-bind"];return!o&&!a||n||(i+=",null"),o&&(i+=","+o),a&&(i+=(o?"":",null")+","+a),i+")"}function Wi(t,e,r){var n=e.inlineTemplate?null:Vi(e,r,!0);return"_c("+t+","+Ri(e,r)+(n?","+n:"")+")"}function Hi(t){for(var e="",r=0;r<t.length;r++){var n=t[r];e+='"'+n.name+'":'+Xi(n.value)+","}return e.slice(0,-1)}function Xi(t){return t.replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029")}function Ki(t,e){try{return new Function(t)}catch(r){return e.push({err:r,code:t}),w}}function Ji(t){var e=Object.create(null);return function(r,n,i){n=x({},n);n.warn;delete n.warn;var o=n.delimiters?String(n.delimiters)+r:r;if(e[o])return e[o];var a=t(r,n),s={},l=[];return s.render=Ki(a.render,l),s.staticRenderFns=a.staticRenderFns.map(function(t){return Ki(t,l)}),e[o]=s}}function Yi(t){if(t.outerHTML)return t.outerHTML;var e=document.createElement("div");return e.appendChild(t.cloneNode(!0)),e.innerHTML}var Qi=Object.prototype.toString,to=d("slot,component",!0),eo=d("key,ref,slot,slot-scope,is"),ro=Object.prototype.hasOwnProperty,no=/-(\w)/g,io=y(function(t){return t.replace(no,function(t,e){return e?e.toUpperCase():""})}),oo=y(function(t){return t.charAt(0).toUpperCase()+t.slice(1)}),ao=/\B([A-Z])/g,so=y(function(t){return t.replace(ao,"-$1").toLowerCase()}),lo=function(t,e,r){return!1},uo=function(t){return t},co="data-server-rendered",po=["component","directive","filter"],ho=["beforeCreate","created","beforeMount","mounted","beforeUpdate","updated","beforeDestroy","destroyed","activated","deactivated","errorCaptured"],fo={optionMergeStrategies:Object.create(null),silent:!1,productionTip:!1,devtools:!1,performance:!1,errorHandler:null,warnHandler:null,ignoredElements:[],keyCodes:Object.create(null),isReservedTag:lo,isReservedAttr:lo,isUnknownElement:lo,getTagNamespace:w,parsePlatformTagName:uo,mustUseProp:lo,_lifecycleHooks:ho},mo=Object.freeze({}),vo=/[^\w.$]/,yo="__proto__"in{},go="undefined"!==typeof window,_o=go&&window.navigator.userAgent.toLowerCase(),xo=_o&&/msie|trident/.test(_o),bo=_o&&_o.indexOf("msie 9.0")>0,wo=_o&&_o.indexOf("edge/")>0,To=_o&&_o.indexOf("android")>0,So=_o&&/iphone|ipad|ipod|ios/.test(_o),zo=(_o&&/chrome\/\d+/.test(_o),{}.watch),Ao=!1;if(go)try{var Co={};Object.defineProperty(Co,"passive",{get:function(){Ao=!0}}),window.addEventListener("test-passive",null,Co)}catch(t){}var Eo,ko,Mo=function(){return void 0===Eo&&(Eo=!go&&"undefined"!==typeof t&&"server"===t.process.env.VUE_ENV),Eo},Lo=go&&window.__VUE_DEVTOOLS_GLOBAL_HOOK__,Io="undefined"!==typeof Symbol&&k(Symbol)&&"undefined"!==typeof Reflect&&k(Reflect.ownKeys);ko="undefined"!==typeof Set&&k(Set)?Set:function(){function t(){this.set=Object.create(null)}return t.prototype.has=function(t){return!0===this.set[t]},t.prototype.add=function(t){this.set[t]=!0},t.prototype.clear=function(){this.set=Object.create(null)},t}();var Po=w,Ro=0,Do=function(){this.id=Ro++,this.subs=[]};Do.prototype.addSub=function(t){this.subs.push(t)},Do.prototype.removeSub=function(t){m(this.subs,t)},Do.prototype.depend=function(){Do.target&&Do.target.addDep(this)},Do.prototype.notify=function(){for(var t=this.subs.slice(),e=0,r=t.length;e<r;e++)t[e].update()},Do.target=null;var Oo=[],Bo=function(t,e,r,n,i,o,a,s){this.tag=t,this.data=e,this.children=r,this.text=n,this.elm=i,this.ns=void 0,this.context=o,this.functionalContext=void 0,this.functionalOptions=void 0,this.functionalScopeId=void 0,this.key=e&&e.key,this.componentOptions=a,this.componentInstance=void 0,this.parent=void 0,this.raw=!1,this.isStatic=!1,this.isRootInsert=!0,this.isComment=!1,this.isCloned=!1,this.isOnce=!1,this.asyncFactory=s,this.asyncMeta=void 0,this.isAsyncPlaceholder=!1},Fo={child:{configurable:!0}};Fo.child.get=function(){return this.componentInstance},Object.defineProperties(Bo.prototype,Fo);var jo=function(t){void 0===t&&(t="");var e=new Bo;return e.text=t,e.isComment=!0,e},Vo=Array.prototype,No=Object.create(Vo);["push","pop","shift","unshift","splice","sort","reverse"].forEach(function(t){var e=Vo[t];C(No,t,function(){for(var r=[],n=arguments.length;n--;)r[n]=arguments[n];var i,o=e.apply(this,r),a=this.__ob__;switch(t){case"push":case"unshift":i=r;break;case"splice":i=r.slice(2)}return i&&a.observeArray(i),a.dep.notify(),o})});var Uo=Object.getOwnPropertyNames(No),$o={shouldConvert:!0},qo=function(t){if(this.value=t,this.dep=new Do,this.vmCount=0,C(t,"__ob__",this),Array.isArray(t)){(yo?D:O)(t,No,Uo),this.observeArray(t)}else this.walk(t)};qo.prototype.walk=function(t){for(var e=Object.keys(t),r=0;r<e.length;r++)F(t,e[r],t[e[r]])},qo.prototype.observeArray=function(t){for(var e=0,r=t.length;e<r;e++)B(t[e])};var Zo=fo.optionMergeStrategies;Zo.data=function(t,e,r){return r?$(t,e,r):e&&"function"!==typeof e?t:$.call(this,t,e)},ho.forEach(function(t){Zo[t]=q}),po.forEach(function(t){Zo[t+"s"]=Z}),Zo.watch=function(t,e,r,n){if(t===zo&&(t=void 0),e===zo&&(e=void 0),!e)return Object.create(t||null);if(!t)return e;var i={};x(i,t);for(var o in e){var a=i[o],s=e[o];a&&!Array.isArray(a)&&(a=[a]),i[o]=a?a.concat(s):Array.isArray(s)?s:[s]}return i},Zo.props=Zo.methods=Zo.inject=Zo.computed=function(t,e,r,n){if(!t)return e;var i=Object.create(null);return x(i,t),e&&x(i,e),i},Zo.provide=$;var Go,Wo,Ho=function(t,e){return void 0===e?t:e},Xo=[],Ko=!1,Jo=!1;if("undefined"!==typeof r&&k(r))Wo=function(){r(it)};else if("undefined"===typeof MessageChannel||!k(MessageChannel)&&"[object MessageChannelConstructor]"!==MessageChannel.toString())Wo=function(){setTimeout(it,0)};else{var Yo=new MessageChannel,Qo=Yo.port2;Yo.port1.onmessage=it,Wo=function(){Qo.postMessage(1)}}if("undefined"!==typeof Promise&&k(Promise)){var ta=Promise.resolve();Go=function(){ta.then(it),So&&setTimeout(w)}}else Go=Wo;var ea,ra=y(function(t){var e="&"===t.charAt(0);t=e?t.slice(1):t;var r="~"===t.charAt(0);t=r?t.slice(1):t;var n="!"===t.charAt(0);return t=n?t.slice(1):t,{name:t,once:r,capture:n,passive:e}}),na=null,ia=[],oa=[],aa={},sa=!1,la=!1,ua=0,ca=0,pa=function(t,e,r,n){this.vm=t,t._watchers.push(this),n?(this.deep=!!n.deep,this.user=!!n.user,this.lazy=!!n.lazy,this.sync=!!n.sync):this.deep=this.user=this.lazy=this.sync=!1,this.cb=r,this.id=++ca,this.active=!0,this.dirty=this.lazy,this.deps=[],this.newDeps=[],this.depIds=new ko,this.newDepIds=new ko,this.expression="","function"===typeof e?this.getter=e:(this.getter=E(e),this.getter||(this.getter=function(){})),this.value=this.lazy?void 0:this.get()};pa.prototype.get=function(){M(this);var t,e=this.vm;try{t=this.getter.call(e,e)}catch(t){if(!this.user)throw t;et(t,e,'getter for watcher "'+this.expression+'"')}finally{this.deep&&Nt(t),L(),this.cleanupDeps()}return t},pa.prototype.addDep=function(t){var e=t.id;this.newDepIds.has(e)||(this.newDepIds.add(e),this.newDeps.push(t),this.depIds.has(e)||t.addSub(this))},pa.prototype.cleanupDeps=function(){for(var t=this,e=this.deps.length;e--;){var r=t.deps[e];t.newDepIds.has(r.id)||r.removeSub(t)}var n=this.depIds;this.depIds=this.newDepIds,this.newDepIds=n,this.newDepIds.clear(),n=this.deps,this.deps=this.newDeps,this.newDeps=n,this.newDeps.length=0},pa.prototype.update=function(){this.lazy?this.dirty=!0:this.sync?this.run():Vt(this)},pa.prototype.run=function(){if(this.active){var t=this.get();if(t!==this.value||l(t)||this.deep){var e=this.value;if(this.value=t,this.user)try{this.cb.call(this.vm,t,e)}catch(t){et(t,this.vm,'callback for watcher "'+this.expression+'"')}else this.cb.call(this.vm,t,e)}}},pa.prototype.evaluate=function(){this.value=this.get(),this.dirty=!1},pa.prototype.depend=function(){for(var t=this,e=this.deps.length;e--;)t.deps[e].depend()},pa.prototype.teardown=function(){var t=this;if(this.active){this.vm._isBeingDestroyed||m(this.vm._watchers,this);for(var e=this.deps.length;e--;)t.deps[e].removeSub(t);this.active=!1}};var ha=new ko,fa={enumerable:!0,configurable:!0,get:w,set:w},da={lazy:!0};fe(de.prototype);var ma={init:function(t,e,r,n){if(!t.componentInstance||t.componentInstance._isDestroyed){(t.componentInstance=ge(t,na,r,n)).$mount(e?t.elm:void 0,e)}else if(t.data.keepAlive){var i=t;ma.prepatch(i,i)}},prepatch:function(t,e){var r=e.componentOptions;Mt(e.componentInstance=t.componentInstance,r.propsData,r.listeners,e,r.children)},insert:function(t){var e=t.context,r=t.componentInstance;r._isMounted||(r._isMounted=!0,Rt(r,"mounted")),t.data.keepAlive&&(e._isMounted?Ft(r):It(r,!0))},destroy:function(t){var e=t.componentInstance;e._isDestroyed||(t.data.keepAlive?Pt(e,!0):e.$destroy())}},va=Object.keys(ma),ya=1,ga=2,_a=0;!function(t){t.prototype._init=function(t){var e=this;e._uid=_a++,e._isVue=!0,t&&t._isComponent?Ae(e,t):e.$options=X(Ce(e.constructor),t||{},e),e._renderProxy=e,e._self=e,Et(e),bt(e),ze(e),Rt(e,"beforeCreate"),ee(e),qt(e),te(e),Rt(e,"created"),e.$options.el&&e.$mount(e.$options.el)}}(Me),function(t){var e={};e.get=function(){return this._data};var r={};r.get=function(){return this._props},Object.defineProperty(t.prototype,"$data",e),Object.defineProperty(t.prototype,"$props",r),t.prototype.$set=j,t.prototype.$delete=V,t.prototype.$watch=function(t,e,r){var n=this;if(u(e))return Qt(n,t,e,r);r=r||{},r.user=!0;var i=new pa(n,t,e,r);return r.immediate&&e.call(n,i.value),function(){i.teardown()}}}(Me),function(t){var e=/^hook:/;t.prototype.$on=function(t,r){var n=this,i=this;if(Array.isArray(t))for(var o=0,a=t.length;o<a;o++)n.$on(t[o],r);else(i._events[t]||(i._events[t]=[])).push(r),e.test(t)&&(i._hasHookEvent=!0);return i},t.prototype.$once=function(t,e){function r(){n.$off(t,r),e.apply(n,arguments)}var n=this;return r.fn=e,n.$on(t,r),n},t.prototype.$off=function(t,e){var r=this,n=this;if(!arguments.length)return n._events=Object.create(null),n;if(Array.isArray(t)){for(var i=0,o=t.length;i<o;i++)r.$off(t[i],e);return n}var a=n._events[t];if(!a)return n;if(1===arguments.length)return n._events[t]=null,n;if(e)for(var s,l=a.length;l--;)if((s=a[l])===e||s.fn===e){a.splice(l,1);break}return n},t.prototype.$emit=function(t){var e=this,r=e._events[t];if(r){r=r.length>1?_(r):r;for(var n=_(arguments,1),i=0,o=r.length;i<o;i++)try{r[i].apply(e,n)}catch(r){et(r,e,'event handler for "'+t+'"')}}return e}}(Me),function(t){t.prototype._update=function(t,e){var r=this;r._isMounted&&Rt(r,"beforeUpdate");var n=r.$el,i=r._vnode,o=na;na=r,r._vnode=t,i?r.$el=r.__patch__(i,t):(r.$el=r.__patch__(r.$el,t,e,!1,r.$options._parentElm,r.$options._refElm),r.$options._parentElm=r.$options._refElm=null),na=o,n&&(n.__vue__=null),r.$el&&(r.$el.__vue__=r),r.$vnode&&r.$parent&&r.$vnode===r.$parent._vnode&&(r.$parent.$el=r.$el)},t.prototype.$forceUpdate=function(){var t=this;t._watcher&&t._watcher.update()},t.prototype.$destroy=function(){var t=this;if(!t._isBeingDestroyed){Rt(t,"beforeDestroy"),t._isBeingDestroyed=!0;var e=t.$parent;!e||e._isBeingDestroyed||t.$options.abstract||m(e.$children,t),t._watcher&&t._watcher.teardown();for(var r=t._watchers.length;r--;)t._watchers[r].teardown();t._data.__ob__&&t._data.__ob__.vmCount--,t._isDestroyed=!0,t.__patch__(t._vnode,null),Rt(t,"destroyed"),t.$off(),t.$el&&(t.$el.__vue__=null),t.$vnode&&(t.$vnode.parent=null)}}}(Me),function(t){fe(t.prototype),t.prototype.$nextTick=function(t){return at(t,this)},t.prototype._render=function(){var t=this,e=t.$options,r=e.render,n=e._parentVnode;if(t._isMounted)for(var i in t.$slots){var o=t.$slots[i];o._rendered&&(t.$slots[i]=R(o,!0))}t.$scopedSlots=n&&n.data.scopedSlots||mo,t.$vnode=n;var a;try{a=r.call(t._renderProxy,t.$createElement)}catch(e){et(e,t,"render"),a=t._vnode}return a instanceof Bo||(a=jo()),a.parent=n,a}}(Me);var xa=[String,RegExp,Array],ba={name:"keep-alive",abstract:!0,props:{include:xa,exclude:xa,max:[String,Number]},created:function(){this.cache=Object.create(null),this.keys=[]},destroyed:function(){var t=this;for(var e in t.cache)Ve(t.cache,e,t.keys)},watch:{include:function(t){je(this,function(e){return Fe(t,e)})},exclude:function(t){je(this,function(e){return!Fe(t,e)})}},render:function(){var t=xt(this.$slots.default),e=t&&t.componentOptions;if(e){var r=Be(e);if(r&&(this.include&&!Fe(this.include,r)||this.exclude&&Fe(this.exclude,r)))return t;var n=this,i=n.cache,o=n.keys,a=null==t.key?e.Ctor.cid+(e.tag?"::"+e.tag:""):t.key;i[a]?(t.componentInstance=i[a].componentInstance,m(o,a),o.push(a)):(i[a]=t,o.push(a),this.max&&o.length>parseInt(this.max)&&Ve(i,o[0],o,this._vnode)),t.data.keepAlive=!0}return t}},wa={KeepAlive:ba};!function(t){var e={};e.get=function(){return fo},Object.defineProperty(t,"config",e),t.util={warn:Po,extend:x,mergeOptions:X,defineReactive:F},t.set=j,t.delete=V,t.nextTick=at,t.options=Object.create(null),po.forEach(function(e){t.options[e+"s"]=Object.create(null)}),t.options._base=t,x(t.options.components,wa),Le(t),Ie(t),Pe(t),Oe(t)}(Me),Object.defineProperty(Me.prototype,"$isServer",{get:Mo}),Object.defineProperty(Me.prototype,"$ssrContext",{get:function(){return this.$vnode&&this.$vnode.ssrContext}}),Me.version="2.5.2";var Ta,Sa,za,Aa,Ca,Ea,ka,Ma,La,Ia=d("style,class"),Pa=d("input,textarea,option,select,progress"),Ra=function(t,e,r){return"value"===r&&Pa(t)&&"button"!==e||"selected"===r&&"option"===t||"checked"===r&&"input"===t||"muted"===r&&"video"===t},Da=d("contenteditable,draggable,spellcheck"),Oa=d("allowfullscreen,async,autofocus,autoplay,checked,compact,controls,declare,default,defaultchecked,defaultmuted,defaultselected,defer,disabled,enabled,formnovalidate,hidden,indeterminate,inert,ismap,itemscope,loop,multiple,muted,nohref,noresize,noshade,novalidate,nowrap,open,pauseonexit,readonly,required,reversed,scoped,seamless,selected,sortable,translate,truespeed,typemustmatch,visible"),Ba="http://www.w3.org/1999/xlink",Fa=function(t){return":"===t.charAt(5)&&"xlink"===t.slice(0,5)},ja=function(t){return Fa(t)?t.slice(6,t.length):""},Va=function(t){return null==t||!1===t},Na={svg:"http://www.w3.org/2000/svg",math:"http://www.w3.org/1998/Math/MathML"},Ua=d("html,body,base,head,link,meta,style,title,address,article,aside,footer,header,h1,h2,h3,h4,h5,h6,hgroup,nav,section,div,dd,dl,dt,figcaption,figure,picture,hr,img,li,main,ol,p,pre,ul,a,b,abbr,bdi,bdo,br,cite,code,data,dfn,em,i,kbd,mark,q,rp,rt,rtc,ruby,s,samp,small,span,strong,sub,sup,time,u,var,wbr,area,audio,map,track,video,embed,object,param,source,canvas,script,noscript,del,ins,caption,col,colgroup,table,thead,tbody,td,th,tr,button,datalist,fieldset,form,input,label,legend,meter,optgroup,option,output,progress,select,textarea,details,dialog,menu,menuitem,summary,content,element,shadow,template,blockquote,iframe,tfoot"),$a=d("svg,animate,circle,clippath,cursor,defs,desc,ellipse,filter,font-face,foreignObject,g,glyph,image,line,marker,mask,missing-glyph,path,pattern,polygon,polyline,rect,switch,symbol,text,textpath,tspan,use,view",!0),qa=function(t){return"pre"===t},Za=function(t){return Ua(t)||$a(t)},Ga=Object.create(null),Wa=d("text,number,password,search,email,tel,url"),Ha=Object.freeze({createElement:Je,createElementNS:Ye,createTextNode:Qe,createComment:tr,insertBefore:er,removeChild:rr,appendChild:nr,parentNode:ir,nextSibling:or,tagName:ar,setTextContent:sr,setAttribute:lr}),Xa={create:function(t,e){ur(e)},update:function(t,e){t.data.ref!==e.data.ref&&(ur(t,!0),ur(e))},destroy:function(t){ur(t,!0)}},Ka=new Bo("",{},[]),Ja=["create","activate","update","remove","destroy"],Ya={create:fr,update:fr,destroy:function(t){fr(t,Ka)}},Qa=Object.create(null),ts=[Xa,Ya],es={create:gr,update:gr},rs={create:xr,update:xr},ns=/[\w).+\-_$\]]/,is="__r",os="__c",as={create:Hr,update:Hr},ss={create:Xr,update:Xr},ls=y(function(t){var e={},r=/;(?![^(]*\))/g,n=/:(.+)/;return t.split(r).forEach(function(t){if(t){var r=t.split(n);r.length>1&&(e[r[0].trim()]=r[1].trim())}}),e}),us=/^--/,cs=/\s*!important$/,ps=function(t,e,r){if(us.test(e))t.style.setProperty(e,r);else if(cs.test(r))t.style.setProperty(e,r.replace(cs,""),"important");else{var n=fs(e);if(Array.isArray(r))for(var i=0,o=r.length;i<o;i++)t.style[n]=r[i];else t.style[n]=r}},hs=["Webkit","Moz","ms"],fs=y(function(t){if(La=La||document.createElement("div").style,"filter"!==(t=io(t))&&t in La)return t;for(var e=t.charAt(0).toUpperCase()+t.slice(1),r=0;r<hs.length;r++){var n=hs[r]+e;if(n in La)return n}}),ds={create:rn,update:rn},ms=y(function(t){return{enterClass:t+"-enter",enterToClass:t+"-enter-to",enterActiveClass:t+"-enter-active",leaveClass:t+"-leave",leaveToClass:t+"-leave-to",leaveActiveClass:t+"-leave-active"}}),vs=go&&!bo,ys="transition",gs="animation",_s="transition",xs="transitionend",bs="animation",ws="animationend";vs&&(void 0===window.ontransitionend&&void 0!==window.onwebkittransitionend&&(_s="WebkitTransition",xs="webkitTransitionEnd"),void 0===window.onanimationend&&void 0!==window.onwebkitanimationend&&(bs="WebkitAnimation",ws="webkitAnimationEnd"));var Ts=go?window.requestAnimationFrame?window.requestAnimationFrame.bind(window):setTimeout:function(t){return t()},Ss=/\b(transform|all)(,|$)/,zs=go?{create:gn,activate:gn,remove:function(t,e){!0!==t.data.show?mn(t,e):e()}}:{},As=[es,rs,as,ss,ds,zs],Cs=As.concat(ts),Es=function(t){function e(t){return new Bo(L.tagName(t).toLowerCase(),{},[],void 0,t)}function r(t,e){function r(){0===--r.listeners&&a(t)}return r.listeners=e,r}function a(t){var e=L.parentNode(t);i(e)&&L.removeChild(e,t)}function l(t,e,r,n,a){if(t.isRootInsert=!a,!u(t,e,r,n)){var s=t.data,l=t.children,c=t.tag;i(c)?(t.elm=t.ns?L.createElementNS(t.ns,c):L.createElement(c,t),y(t),f(t,l,e),i(s)&&v(t,e),h(r,t.elm,n)):o(t.isComment)?(t.elm=L.createComment(t.text),h(r,t.elm,n)):(t.elm=L.createTextNode(t.text),h(r,t.elm,n))}}function u(t,e,r,n){var a=t.data;if(i(a)){var s=i(t.componentInstance)&&a.keepAlive;if(i(a=a.hook)&&i(a=a.init)&&a(t,!1,r,n),i(t.componentInstance))return c(t,e),o(s)&&p(t,e,r,n),!0}}function c(t,e){i(t.data.pendingInsert)&&(e.push.apply(e,t.data.pendingInsert),t.data.pendingInsert=null),t.elm=t.componentInstance.$el,m(t)?(v(t,e),y(t)):(ur(t),e.push(t))}function p(t,e,r,n){for(var o,a=t;a.componentInstance;)if(a=a.componentInstance._vnode,i(o=a.data)&&i(o=o.transition)){for(o=0;o<k.activate.length;++o)k.activate[o](Ka,a);e.push(a);break}h(r,t.elm,n)}function h(t,e,r){i(t)&&(i(r)?r.parentNode===t&&L.insertBefore(t,e,r):L.appendChild(t,e))}function f(t,e,r){if(Array.isArray(e))for(var n=0;n<e.length;++n)l(e[n],r,t.elm,null,!0);else s(t.text)&&L.appendChild(t.elm,L.createTextNode(t.text))}function m(t){for(;t.componentInstance;)t=t.componentInstance._vnode;return i(t.tag)}function v(t,e){for(var r=0;r<k.create.length;++r)k.create[r](Ka,t);C=t.data.hook,i(C)&&(i(C.create)&&C.create(Ka,t),i(C.insert)&&e.push(t))}function y(t){var e;if(i(e=t.functionalScopeId))L.setAttribute(t.elm,e,"");else for(var r=t;r;)i(e=r.context)&&i(e=e.$options._scopeId)&&L.setAttribute(t.elm,e,""),r=r.parent;i(e=na)&&e!==t.context&&e!==t.functionalContext&&i(e=e.$options._scopeId)&&L.setAttribute(t.elm,e,"")}function g(t,e,r,n,i,o){for(;n<=i;++n)l(r[n],o,t,e)}function _(t){var e,r,n=t.data;if(i(n))for(i(e=n.hook)&&i(e=e.destroy)&&e(t),e=0;e<k.destroy.length;++e)k.destroy[e](t);if(i(e=t.children))for(r=0;r<t.children.length;++r)_(t.children[r])}function x(t,e,r,n){for(;r<=n;++r){var o=e[r];i(o)&&(i(o.tag)?(b(o),_(o)):a(o.elm))}}function b(t,e){if(i(e)||i(t.data)){var n,o=k.remove.length+1;for(i(e)?e.listeners+=o:e=r(t.elm,o),i(n=t.componentInstance)&&i(n=n._vnode)&&i(n.data)&&b(n,e),n=0;n<k.remove.length;++n)k.remove[n](t,e);i(n=t.data.hook)&&i(n=n.remove)?n(t,e):e()}else a(t.elm)}function w(t,e,r,o,a){for(var s,u,c,p,h=0,f=0,d=e.length-1,m=e[0],v=e[d],y=r.length-1,_=r[0],b=r[y],w=!a;h<=d&&f<=y;)n(m)?m=e[++h]:n(v)?v=e[--d]:cr(m,_)?(S(m,_,o),m=e[++h],_=r[++f]):cr(v,b)?(S(v,b,o),v=e[--d],b=r[--y]):cr(m,b)?(S(m,b,o),w&&L.insertBefore(t,m.elm,L.nextSibling(v.elm)),m=e[++h],b=r[--y]):cr(v,_)?(S(v,_,o),w&&L.insertBefore(t,v.elm,m.elm),v=e[--d],_=r[++f]):(n(s)&&(s=hr(e,h,d)),u=i(_.key)?s[_.key]:T(_,e,h,d),n(u)?l(_,o,t,m.elm):(c=e[u],cr(c,_)?(S(c,_,o),e[u]=void 0,w&&L.insertBefore(t,c.elm,m.elm)):l(_,o,t,m.elm)),_=r[++f]);h>d?(p=n(r[y+1])?null:r[y+1].elm,g(t,p,r,f,y,o)):f>y&&x(t,e,h,d)}function T(t,e,r,n){for(var o=r;o<n;o++){var a=e[o];if(i(a)&&cr(t,a))return o}}function S(t,e,r,a){if(t!==e){var s=e.elm=t.elm;if(o(t.isAsyncPlaceholder))return void(i(e.asyncFactory.resolved)?A(t.elm,e,r):e.isAsyncPlaceholder=!0);if(o(e.isStatic)&&o(t.isStatic)&&e.key===t.key&&(o(e.isCloned)||o(e.isOnce)))return void(e.componentInstance=t.componentInstance);var l,u=e.data;i(u)&&i(l=u.hook)&&i(l=l.prepatch)&&l(t,e);var c=t.children,p=e.children;if(i(u)&&m(e)){for(l=0;l<k.update.length;++l)k.update[l](t,e);i(l=u.hook)&&i(l=l.update)&&l(t,e)}n(e.text)?i(c)&&i(p)?c!==p&&w(s,c,p,r,a):i(p)?(i(t.text)&&L.setTextContent(s,""),g(s,null,p,0,p.length-1,r)):i(c)?x(s,c,0,c.length-1):i(t.text)&&L.setTextContent(s,""):t.text!==e.text&&L.setTextContent(s,e.text),i(u)&&i(l=u.hook)&&i(l=l.postpatch)&&l(t,e)}}function z(t,e,r){if(o(r)&&i(t.parent))t.parent.data.pendingInsert=e;else for(var n=0;n<e.length;++n)e[n].data.hook.insert(e[n])}function A(t,e,r){if(o(e.isComment)&&i(e.asyncFactory))return e.elm=t,e.isAsyncPlaceholder=!0,!0;e.elm=t;var n=e.tag,a=e.data,s=e.children;if(i(a)&&(i(C=a.hook)&&i(C=C.init)&&C(e,!0),i(C=e.componentInstance)))return c(e,r),!0;if(i(n)){if(i(s))if(t.hasChildNodes())if(i(C=a)&&i(C=C.domProps)&&i(C=C.innerHTML)){if(C!==t.innerHTML)return!1}else{for(var l=!0,u=t.firstChild,p=0;p<s.length;p++){if(!u||!A(u,s[p],r)){l=!1;break}u=u.nextSibling}if(!l||u)return!1}else f(e,s,r);if(i(a))for(var h in a)if(!I(h)){v(e,r);break}}else t.data!==e.text&&(t.data=e.text);return!0}var C,E,k={},M=t.modules,L=t.nodeOps;for(C=0;C<Ja.length;++C)for(k[Ja[C]]=[],E=0;E<M.length;++E)i(M[E][Ja[C]])&&k[Ja[C]].push(M[E][Ja[C]]);var I=d("attrs,style,class,staticClass,staticStyle,key");return function(t,r,a,s,u,c){if(n(r))return void(i(t)&&_(t));var p=!1,h=[];if(n(t))p=!0,l(r,h,u,c);else{var f=i(t.nodeType);if(!f&&cr(t,r))S(t,r,h,s);else{if(f){if(1===t.nodeType&&t.hasAttribute(co)&&(t.removeAttribute(co),a=!0),o(a)&&A(t,r,h))return z(r,h,!0),t;t=e(t)}var d=t.elm,v=L.parentNode(d);if(l(r,h,d._leaveCb?null:v,L.nextSibling(d)),i(r.parent))for(var y=r.parent,g=m(r);y;){for(var b=0;b<k.destroy.length;++b)k.destroy[b](y);if(y.elm=r.elm,g){for(var w=0;w<k.create.length;++w)k.create[w](Ka,y);var T=y.data.hook.insert;if(T.merged)for(var C=1;C<T.fns.length;C++)T.fns[C]()}else ur(y);y=y.parent}i(v)?x(v,[t],0,0):i(t.tag)&&_(t)}}return z(r,h,p),r.elm}}({nodeOps:Ha,modules:Cs});bo&&document.addEventListener("selectionchange",function(){var t=document.activeElement;t&&t.vmodel&&zn(t,"input")});var ks={inserted:function(t,e,r){"select"===r.tag?(_n(t,e,r.context),t._vOptions=[].map.call(t.options,wn)):("textarea"===r.tag||Wa(t.type))&&(t._vModifiers=e.modifiers,e.modifiers.lazy||(t.addEventListener("change",Sn),To||(t.addEventListener("compositionstart",Tn),t.addEventListener("compositionend",Sn)),bo&&(t.vmodel=!0)))},componentUpdated:function(t,e,r){if("select"===r.tag){_n(t,e,r.context);var n=t._vOptions,i=t._vOptions=[].map.call(t.options,wn);if(i.some(function(t,e){return!T(t,n[e])})){(t.multiple?e.value.some(function(t){return bn(t,i)}):e.value!==e.oldValue&&bn(e.value,i))&&zn(t,"change")}}}},Ms={bind:function(t,e,r){var n=e.value;r=An(r);var i=r.data&&r.data.transition,o=t.__vOriginalDisplay="none"===t.style.display?"":t.style.display;n&&i?(r.data.show=!0,dn(r,function(){t.style.display=o})):t.style.display=n?o:"none"},update:function(t,e,r){var n=e.value;n!==e.oldValue&&(r=An(r),r.data&&r.data.transition?(r.data.show=!0,n?dn(r,function(){t.style.display=t.__vOriginalDisplay}):mn(r,function(){t.style.display="none"})):t.style.display=n?t.__vOriginalDisplay:"none")},unbind:function(t,e,r,n,i){i||(t.style.display=t.__vOriginalDisplay)}},Ls={model:ks,show:Ms},Is={name:String,appear:Boolean,css:Boolean,mode:String,type:String,enterClass:String,leaveClass:String,enterToClass:String,leaveToClass:String,enterActiveClass:String,leaveActiveClass:String,appearClass:String,appearActiveClass:String,appearToClass:String,duration:[Number,String,Object]},Ps={name:"transition",props:Is,abstract:!0,render:function(t){var e=this,r=this.$options._renderChildren;if(r&&(r=r.filter(function(t){return t.tag||_t(t)}),r.length)){var n=this.mode,i=r[0];if(Mn(this.$vnode))return i;var o=Cn(i);if(!o)return i;if(this._leaving)return kn(t,i);var a="__transition-"+this._uid+"-";o.key=null==o.key?o.isComment?a+"comment":a+o.tag:s(o.key)?0===String(o.key).indexOf(a)?o.key:a+o.key:o.key;var l=(o.data||(o.data={})).transition=En(this),u=this._vnode,c=Cn(u);if(o.data.directives&&o.data.directives.some(function(t){return"show"===t.name})&&(o.data.show=!0),c&&c.data&&!Ln(o,c)&&!_t(c)){var p=c.data.transition=x({},l);if("out-in"===n)return this._leaving=!0,ut(p,"afterLeave",function(){e._leaving=!1,e.$forceUpdate()}),kn(t,i);if("in-out"===n){if(_t(o))return u;var h,f=function(){h()};ut(l,"afterEnter",f),ut(l,"enterCancelled",f),ut(p,"delayLeave",function(t){h=t})}}return i}}},Rs=x({tag:String,moveClass:String},Is);delete Rs.mode;var Ds={props:Rs,render:function(t){for(var e=this.tag||this.$vnode.data.tag||"span",r=Object.create(null),n=this.prevChildren=this.children,i=this.$slots.default||[],o=this.children=[],a=En(this),s=0;s<i.length;s++){var l=i[s];if(l.tag)if(null!=l.key&&0!==String(l.key).indexOf("__vlist"))o.push(l),r[l.key]=l,(l.data||(l.data={})).transition=a;else;}if(n){for(var u=[],c=[],p=0;p<n.length;p++){var h=n[p];h.data.transition=a,h.data.pos=h.elm.getBoundingClientRect(),r[h.key]?u.push(h):c.push(h)}this.kept=t(e,null,u),this.removed=c}return t(e,null,o)},beforeUpdate:function(){this.__patch__(this._vnode,this.kept,!1,!0),this._vnode=this.kept},updated:function(){var t=this.prevChildren,e=this.moveClass||(this.name||"v")+"-move";t.length&&this.hasMove(t[0].elm,e)&&(t.forEach(In),t.forEach(Pn),t.forEach(Rn),this._reflow=document.body.offsetHeight,t.forEach(function(t){if(t.data.moved){var r=t.elm,n=r.style;ln(r,e),n.transform=n.WebkitTransform=n.transitionDuration="",r.addEventListener(xs,r._moveCb=function t(n){n&&!/transform$/.test(n.propertyName)||(r.removeEventListener(xs,t),r._moveCb=null,un(r,e))})}}))},methods:{hasMove:function(t,e){if(!vs)return!1;if(this._hasMove)return this._hasMove;var r=t.cloneNode();t._transitionClasses&&t._transitionClasses.forEach(function(t){on(r,t)}),nn(r,e),r.style.display="none",this.$el.appendChild(r);var n=pn(r);return this.$el.removeChild(r),this._hasMove=n.hasTransform}}},Os={Transition:Ps,TransitionGroup:Ds};Me.config.mustUseProp=Ra,Me.config.isReservedTag=Za,Me.config.isReservedAttr=Ia,Me.config.getTagNamespace=He,Me.config.isUnknownElement=Xe,x(Me.options.directives,Ls),x(Me.options.components,Os),Me.prototype.__patch__=go?Es:w,Me.prototype.$mount=function(t,e){return t=t&&go?Ke(t):void 0,kt(this,t,e)},Me.nextTick(function(){fo.devtools&&Lo&&Lo.emit("init",Me)},0);var Bs,Fs=!!go&&function(t,e){var r=document.createElement("div");return r.innerHTML='<div a="'+t+'"/>',r.innerHTML.indexOf(e)>0}("\n","&#10;"),js=/\{\{((?:.|\n)+?)\}\}/g,Vs=/[-.*+?^${}()|[\]\/\\]/g,Ns=y(function(t){var e=t[0].replace(Vs,"\\$&"),r=t[1].replace(Vs,"\\$&");return new RegExp(e+"((?:.|\\n)+?)"+r,"g")}),Us={staticKeys:["staticClass"],transformNode:On,genData:Bn},$s={staticKeys:["staticStyle"],transformNode:Fn,genData:jn},qs={decode:function(t){return Bs=Bs||document.createElement("div"),Bs.innerHTML=t,Bs.textContent}},Zs=d("area,base,br,col,embed,frame,hr,img,input,isindex,keygen,link,meta,param,source,track,wbr"),Gs=d("colgroup,dd,dt,li,options,p,td,tfoot,th,thead,tr,source"),Ws=d("address,article,aside,base,blockquote,body,caption,col,colgroup,dd,details,dialog,div,dl,dt,fieldset,figcaption,figure,footer,form,h1,h2,h3,h4,h5,h6,head,header,hgroup,hr,html,legend,li,menuitem,meta,optgroup,option,param,rp,rt,source,style,summary,tbody,td,tfoot,th,thead,title,tr,track"),Hs=/^\s*([^\s"'<>\/=]+)(?:\s*(=)\s*(?:"([^"]*)"+|'([^']*)'+|([^\s"'=<>`]+)))?/,Xs="[a-zA-Z_][\\w\\-\\.]*",Ks="((?:"+Xs+"\\:)?"+Xs+")",Js=new RegExp("^<"+Ks),Ys=/^\s*(\/?)>/,Qs=new RegExp("^<\\/"+Ks+"[^>]*>"),tl=/^<!DOCTYPE [^>]+>/i,el=/^<!--/,rl=/^<!\[/,nl=!1;"x".replace(/x(.)?/g,function(t,e){nl=""===e});var il,ol,al,sl,ll,ul,cl,pl,hl,fl,dl=d("script,style,textarea",!0),ml={},vl={"&lt;":"<","&gt;":">","&quot;":'"',"&amp;":"&","&#10;":"\n"},yl=/&(?:lt|gt|quot|amp);/g,gl=/&(?:lt|gt|quot|amp|#10);/g,_l=d("pre,textarea",!0),xl=function(t,e){return t&&_l(t)&&"\n"===e[0]},bl=/^@|^v-on:/,wl=/^v-|^@|^:/,Tl=/(.*?)\s+(?:in|of)\s+(.*)/,Sl=/\((\{[^}]*\}|[^,]*),([^,]*)(?:,([^,]*))?\)/,zl=/:(.*)$/,Al=/^:|^v-bind:/,Cl=/\.[^.]+/g,El=y(qs.decode),kl=/^xmlns:NS\d+/,Ml=/^NS\d+:/,Ll={preTransformNode:ci},Il=[Us,$s,Ll],Pl={model:jr,text:fi,html:di},Rl={expectHTML:!0,modules:Il,directives:Pl,isPreTag:qa,isUnaryTag:Zs,mustUseProp:Ra,canBeLeftOpenTag:Gs,isReservedTag:Za,getTagNamespace:He,staticKeys:function(t){return t.reduce(function(t,e){return t.concat(e.staticKeys||[])},[]).join(",")}(Il)},Dl=y(vi),Ol=/^\s*([\w$_]+|\([^)]*?\))\s*=>|^function\s*\(/,Bl=/^\s*[A-Za-z_$][\w$]*(?:\.[A-Za-z_$][\w$]*|\['.*?']|\[".*?"]|\[\d+]|\[[A-Za-z_$][\w$]*])*\s*$/,Fl={esc:27,tab:9,enter:13,space:32,up:38,left:37,right:39,down:40,delete:[8,46]},jl=function(t){return"if("+t+")return null;"},Vl={stop:"$event.stopPropagation();",prevent:"$event.preventDefault();",self:jl("$event.target !== $event.currentTarget"),ctrl:jl("!$event.ctrlKey"),shift:jl("!$event.shiftKey"),alt:jl("!$event.altKey"),meta:jl("!$event.metaKey"),left:jl("'button' in $event && $event.button !== 0"),middle:jl("'button' in $event && $event.button !== 1"),right:jl("'button' in $event && $event.button !== 2")},Nl={on:zi,bind:Ai,cloak:w},Ul=function(t){this.options=t,this.warn=t.warn||Tr,this.transforms=Sr(t.modules,"transformCode"),this.dataGenFns=Sr(t.modules,"genData"),this.directives=x(x({},Nl),t.directives);var e=t.isReservedTag||lo;this.maybeComponent=function(t){return!e(t.tag)},this.onceId=0,this.staticRenderFns=[]},$l=(new RegExp("\\b"+"do,if,for,let,new,try,var,case,else,with,await,break,catch,class,const,super,throw,while,yield,delete,export,import,return,switch,default,extends,finally,continue,debugger,function,arguments".split(",").join("\\b|\\b")+"\\b"),new RegExp("\\b"+"delete,typeof,void".split(",").join("\\s*\\([^\\)]*\\)|\\b")+"\\s*\\([^\\)]*\\)"),function(t){return function(e){function r(r,n){var i=Object.create(e),o=[],a=[];if(i.warn=function(t,e){(e?a:o).push(t)},n){n.modules&&(i.modules=(e.modules||[]).concat(n.modules)),n.directives&&(i.directives=x(Object.create(e.directives),n.directives));for(var s in n)"modules"!==s&&"directives"!==s&&(i[s]=n[s])}var l=t(r,i);return l.errors=o,l.tips=a,l}return{compile:r,compileToFunctions:Ji(r)}}}(function(t,e){var r=$n(t.trim(),e);mi(r,e);var n=Ci(r,e);return{ast:r,render:n.render,staticRenderFns:n.staticRenderFns}})),ql=$l(Rl),Zl=ql.compileToFunctions,Gl=y(function(t){var e=Ke(t);return e&&e.innerHTML}),Wl=Me.prototype.$mount;Me.prototype.$mount=function(t,e){if((t=t&&Ke(t))===document.body||t===document.documentElement)return this;var r=this.$options;if(!r.render){var n=r.template;if(n)if("string"===typeof n)"#"===n.charAt(0)&&(n=Gl(n));else{if(!n.nodeType)return this;n=n.innerHTML}else t&&(n=Yi(t));if(n){var i=Zl(n,{shouldDecodeNewlines:Fs,delimiters:r.delimiters,comments:r.comments},this),o=i.render,a=i.staticRenderFns;r.render=o,r.staticRenderFns=a}}return Wl.call(this,t,e)},Me.compile=Zl,e.a=Me}).call(e,r(0),r(4).setImmediate)},function(t,e,r){function n(t,e){this._id=t,this._clearFn=e}var i=Function.prototype.apply;e.setTimeout=function(){return new n(i.call(setTimeout,window,arguments),clearTimeout)},e.setInterval=function(){return new n(i.call(setInterval,window,arguments),clearInterval)},e.clearTimeout=e.clearInterval=function(t){t&&t.close()},n.prototype.unref=n.prototype.ref=function(){},n.prototype.close=function(){this._clearFn.call(window,this._id)},e.enroll=function(t,e){clearTimeout(t._idleTimeoutId),t._idleTimeout=e},e.unenroll=function(t){clearTimeout(t._idleTimeoutId),t._idleTimeout=-1},e._unrefActive=e.active=function(t){clearTimeout(t._idleTimeoutId);var e=t._idleTimeout;e>=0&&(t._idleTimeoutId=setTimeout(function(){t._onTimeout&&t._onTimeout()},e))},r(5),e.setImmediate=setImmediate,e.clearImmediate=clearImmediate},function(t,e,r){(function(t,e){!function(t,r){"use strict";function n(t){"function"!==typeof t&&(t=new Function(""+t));for(var e=new Array(arguments.length-1),r=0;r<e.length;r++)e[r]=arguments[r+1];var n={callback:t,args:e};return u[l]=n,s(l),l++}function i(t){delete u[t]}function o(t){var e=t.callback,n=t.args;switch(n.length){case 0:e();break;case 1:e(n[0]);break;case 2:e(n[0],n[1]);break;case 3:e(n[0],n[1],n[2]);break;default:e.apply(r,n)}}function a(t){if(c)setTimeout(a,0,t);else{var e=u[t];if(e){c=!0;try{o(e)}finally{i(t),c=!1}}}}if(!t.setImmediate){var s,l=1,u={},c=!1,p=t.document,h=Object.getPrototypeOf&&Object.getPrototypeOf(t);h=h&&h.setTimeout?h:t,"[object process]"==={}.toString.call(t.process)?function(){s=function(t){e.nextTick(function(){a(t)})}}():function(){if(t.postMessage&&!t.importScripts){var e=!0,r=t.onmessage;return t.onmessage=function(){e=!1},t.postMessage("","*"),t.onmessage=r,e}}()?function(){var e="setImmediate$"+Math.random()+"$",r=function(r){r.source===t&&"string"===typeof r.data&&0===r.data.indexOf(e)&&a(+r.data.slice(e.length))};t.addEventListener?t.addEventListener("message",r,!1):t.attachEvent("onmessage",r),s=function(r){t.postMessage(e+r,"*")}}():t.MessageChannel?function(){var t=new MessageChannel;t.port1.onmessage=function(t){a(t.data)},s=function(e){t.port2.postMessage(e)}}():p&&"onreadystatechange"in p.createElement("script")?function(){var t=p.documentElement;s=function(e){var r=p.createElement("script");r.onreadystatechange=function(){a(e),r.onreadystatechange=null,t.removeChild(r),r=null},t.appendChild(r)}}():function(){s=function(t){setTimeout(a,0,t)}}(),h.setImmediate=n,h.clearImmediate=i}}("undefined"===typeof self?"undefined"===typeof t?this:t:self)}).call(e,r(0),r(6))},function(t,e){function r(){throw new Error("setTimeout has not been defined")}function n(){throw new Error("clearTimeout has not been defined")}function i(t){if(c===setTimeout)return setTimeout(t,0);if((c===r||!c)&&setTimeout)return c=setTimeout,setTimeout(t,0);try{return c(t,0)}catch(e){try{return c.call(null,t,0)}catch(e){return c.call(this,t,0)}}}function o(t){if(p===clearTimeout)return clearTimeout(t);if((p===n||!p)&&clearTimeout)return p=clearTimeout,clearTimeout(t);try{return p(t)}catch(e){try{return p.call(null,t)}catch(e){return p.call(this,t)}}}function a(){m&&f&&(m=!1,f.length?d=f.concat(d):v=-1,d.length&&s())}function s(){if(!m){var t=i(a);m=!0;for(var e=d.length;e;){for(f=d,d=[];++v<e;)f&&f[v].run();v=-1,e=d.length}f=null,m=!1,o(t)}}function l(t,e){this.fun=t,this.array=e}function u(){}var c,p,h=t.exports={};!function(){try{c="function"===typeof setTimeout?setTimeout:r}catch(t){c=r}try{p="function"===typeof clearTimeout?clearTimeout:n}catch(t){p=n}}();var f,d=[],m=!1,v=-1;h.nextTick=function(t){var e=new Array(arguments.length-1);if(arguments.length>1)for(var r=1;r<arguments.length;r++)e[r-1]=arguments[r];d.push(new l(t,e)),1!==d.length||m||i(s)},l.prototype.run=function(){this.fun.apply(null,this.array)},h.title="browser",h.browser=!0,h.env={},h.argv=[],h.version="",h.versions={},h.on=u,h.addListener=u,h.once=u,h.off=u,h.removeListener=u,h.removeAllListeners=u,h.emit=u,h.prependListener=u,h.prependOnceListener=u,h.listeners=function(t){return[]},h.binding=function(t){throw new Error("process.binding is not supported")},h.cwd=function(){return"/"},h.chdir=function(t){throw new Error("process.chdir is not supported")},h.umask=function(){return 0}},function(t,e,r){"use strict";function n(t){r(8)}var i=r(14),o=r(16),a=r(13),s=n,l=a(i.a,o.a,!1,s,null,null);e.a=l.exports},function(t,e,r){var n=r(9);"string"===typeof n&&(n=[[t.i,n,""]]),n.locals&&(t.exports=n.locals);r(11)("1cc1a7d4",n,!0)},function(t,e,r){e=t.exports=r(10)(void 0),e.push([t.i,"#geshem #datetime{position:absolute;margin:20px 0 0 20px;color:#fff;font-family:monospace}#geshem #datetime #date{font-size:1.4em}#geshem #datetime #time{font-size:1.8em}#geshem #slider{position:absolute;bottom:8vh;width:30vw;margin-left:35vw}@media only screen and (max-device-width:812px){#geshem #slider{width:80vw;margin-left:8vw}}",""])},function(t,e){function r(t,e){var r=t[1]||"",i=t[3];if(!i)return r;if(e&&"function"===typeof btoa){var o=n(i);return[r].concat(i.sources.map(function(t){return"/*# sourceURL="+i.sourceRoot+t+" */"})).concat([o]).join("\n")}return[r].join("\n")}function n(t){return"/*# sourceMappingURL=data:application/json;charset=utf-8;base64,"+btoa(unescape(encodeURIComponent(JSON.stringify(t))))+" */"}t.exports=function(t){var e=[];return e.toString=function(){return this.map(function(e){var n=r(e,t);return e[2]?"@media "+e[2]+"{"+n+"}":n}).join("")},e.i=function(t,r){"string"===typeof t&&(t=[[null,t,""]]);for(var n={},i=0;i<this.length;i++){var o=this[i][0];"number"===typeof o&&(n[o]=!0)}for(i=0;i<t.length;i++){var a=t[i];"number"===typeof a[0]&&n[a[0]]||(r&&!a[2]?a[2]=r:r&&(a[2]="("+a[2]+") and ("+r+")"),e.push(a))}},e}},function(t,e,r){function n(t){for(var e=0;e<t.length;e++){var r=t[e],n=c[r.id];if(n){n.refs++;for(var i=0;i<n.parts.length;i++)n.parts[i](r.parts[i]);for(;i<r.parts.length;i++)n.parts.push(o(r.parts[i]));n.parts.length>r.parts.length&&(n.parts.length=r.parts.length)}else{for(var a=[],i=0;i<r.parts.length;i++)a.push(o(r.parts[i]));c[r.id]={id:r.id,refs:1,parts:a}}}}function i(){var t=document.createElement("style");return t.type="text/css",p.appendChild(t),t}function o(t){var e,r,n=document.querySelector('style[data-vue-ssr-id~="'+t.id+'"]');if(n){if(d)return m;n.parentNode.removeChild(n)}if(v){var o=f++;n=h||(h=i()),e=a.bind(null,n,o,!1),r=a.bind(null,n,o,!0)}else n=i(),e=s.bind(null,n),r=function(){n.parentNode.removeChild(n)};return e(t),function(n){if(n){if(n.css===t.css&&n.media===t.media&&n.sourceMap===t.sourceMap)return;e(t=n)}else r()}}function a(t,e,r,n){var i=r?"":n.css;if(t.styleSheet)t.styleSheet.cssText=y(e,i);else{var o=document.createTextNode(i),a=t.childNodes;a[e]&&t.removeChild(a[e]),a.length?t.insertBefore(o,a[e]):t.appendChild(o)}}function s(t,e){var r=e.css,n=e.media,i=e.sourceMap;if(n&&t.setAttribute("media",n),i&&(r+="\n/*# sourceURL="+i.sources[0]+" */",r+="\n/*# sourceMappingURL=data:application/json;base64,"+btoa(unescape(encodeURIComponent(JSON.stringify(i))))+" */"),t.styleSheet)t.styleSheet.cssText=r;else{for(;t.firstChild;)t.removeChild(t.firstChild);t.appendChild(document.createTextNode(r))}}var l="undefined"!==typeof document;if("undefined"!==typeof DEBUG&&DEBUG&&!l)throw new Error("vue-style-loader cannot be used in a non-browser environment. Use { target: 'node' } in your Webpack config to indicate a server-rendering environment.");var u=r(12),c={},p=l&&(document.head||document.getElementsByTagName("head")[0]),h=null,f=0,d=!1,m=function(){},v="undefined"!==typeof navigator&&/msie [6-9]\b/.test(navigator.userAgent.toLowerCase());t.exports=function(t,e,r){d=r;var i=u(t,e);return n(i),function(e){for(var r=[],o=0;o<i.length;o++){var a=i[o],s=c[a.id];s.refs--,r.push(s)}e?(i=u(t,e),n(i)):i=[];for(var o=0;o<r.length;o++){var s=r[o];if(0===s.refs){for(var l=0;l<s.parts.length;l++)s.parts[l]();delete c[s.id]}}}};var y=function(){var t=[];return function(e,r){return t[e]=r,t.filter(Boolean).join("\n")}}()},function(t,e){t.exports=function(t,e){for(var r=[],n={},i=0;i<e.length;i++){var o=e[i],a=o[0],s=o[1],l=o[2],u=o[3],c={id:t+":"+i,css:s,media:l,sourceMap:u};n[a]?n[a].parts.push(c):r.push(n[a]={id:a,parts:[c]})}return r}},function(t,e){t.exports=function(t,e,r,n,i,o){var a,s=t=t||{},l=typeof t.default;"object"!==l&&"function"!==l||(a=t,s=t.default);var u="function"===typeof s?s.options:s;e&&(u.render=e.render,u.staticRenderFns=e.staticRenderFns,u._compiled=!0),r&&(u.functional=!0),i&&(u._scopeId=i);var c;if(o?(c=function(t){t=t||this.$vnode&&this.$vnode.ssrContext||this.parent&&this.parent.$vnode&&this.parent.$vnode.ssrContext,t||"undefined"===typeof __VUE_SSR_CONTEXT__||(t=__VUE_SSR_CONTEXT__),n&&n.call(this,t),t&&t._registeredComponents&&t._registeredComponents.add(o)},u._ssrRegister=c):n&&(c=n),c){var p=u.functional,h=p?u.render:u.beforeCreate;p?(u._injectStyles=c,u.render=function(t,e){return c.call(e),h(t,e)}):u.beforeCreate=h?[].concat(h,c):[c]}return{esModule:a,exports:s,options:u}}},function(t,e,r){"use strict";function n(t,e,r){return e in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}var i=r(15),o=r.n(i),a=r(1),s=r.n(a);e.a={name:"geshem",components:{"vue-slider":o.a},data:function(){var t;return{imgs:window.imgs,res:280,slider:7,rasterCoords:{140:[[33.35317413,33.27232471],[36.32243686,33.27232471],[36.32243686,30.72293428],[33.35317413,30.72293428]],280:[[31.93095218,34.5156862],[37.86644267,34.5156862],[37.86644267,29.42911589],[31.93095218,29.42911589]]},map:new s.a.Map((t={container:"map",style:"mapbox://styles/mapbox/dark-v9"},n(t,"container","map"),n(t,"maxZoom",10),n(t,"minZoom",5),n(t,"zoom",6.3),n(t,"center",[35,31.9]),n(t,"hash",!1),t))}},computed:{date:function(){var t=this.imgs[this.res][7-this.slider].substr(0,8);return t.substr(6,2)+"-"+t.substr(4,2)+"-"+t.substr(0,4)},time:function(){var t=this.imgs[this.res][7-this.slider].substr(9,6);return t.substr(0,2)+":"+t.substr(2,2)},curImg:function(){return 7-this.slider}},created:function(){var t=this;this.map.on("style.load",function(){for(var e=0;e<t.imgs[140].length;)t.addRadarSource("140",e,t.imgs[140][e++]);for(var e=0;e<t.imgs[280].length;)t.addRadarSource("280",e,t.imgs[280][e++]);t.addRadarLayer("280",0)}),this.map.on("zoom",function(){var e=t.map.getZoom()>7,r=e?"280":"140",n=e?"140":"280";n!=t.res&&(console.log("Zoom event from "+r+" to "+n),t.removeRadarLayer(r,t.curImg),t.addRadarLayer(n,t.curImg),t.res=n)})},methods:{addRadarSource:function(t,e,r){this.map.addSource("radar-"+t+"-"+e,{type:"image",url:"/static/img/"+r,coordinates:this.rasterCoords[t]})},addRadarLayer:function(t,e){this.map.addLayer({id:"radar-"+t+"-"+e,source:"radar-"+t+"-"+e,type:"raster",paint:{"raster-opacity":.85}})},removeRadarLayer:function(t,e){this.map.removeLayer("radar-"+t+"-"+e)}},watch:{slider:function(t,e){this.removeRadarLayer(this.res,7-e),this.addRadarLayer(this.res,7-t)}}}},function(t,e,r){!function(e,r){t.exports=r()}(0,function(){return function(t){function e(n){if(r[n])return r[n].exports;var i=r[n]={i:n,l:!1,exports:{}};return t[n].call(i.exports,i,i.exports,e),i.l=!0,i.exports}var r={};return e.m=t,e.c=r,e.i=function(t){return t},e.d=function(t,r,n){e.o(t,r)||Object.defineProperty(t,r,{configurable:!1,enumerable:!0,get:n})},e.n=function(t){var r=t&&t.__esModule?function(){return t.default}:function(){return t};return e.d(r,"a",r),r},e.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},e.p="",e(e.s=2)}([function(t,e,r){r(7);var n=r(5)(r(1),r(6),null,null);t.exports=n.exports},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.default={data:function(){return{flag:!1,size:0,currentValue:0,currentSlider:0,dotWidthVal:"number"==typeof this.dotWidth?this.dotWidth:this.dotSize,dotHeightVal:"number"==typeof this.dotHeight?this.dotHeight:this.dotSize}},props:{width:{type:[Number,String],default:"auto"},height:{type:[Number,String],default:6},data:{type:Array,default:null},dotSize:{type:Number,default:16},dotWidth:{type:Number,required:!1},dotHeight:{type:Number,required:!1},min:{type:Number,default:0},max:{type:Number,default:100},interval:{type:Number,default:1},show:{type:Boolean,default:!0},disabled:{type:Boolean,default:!1},piecewise:{type:Boolean,default:!1},tooltip:{type:[String,Boolean],default:"always"},eventType:{type:String,default:"auto"},direction:{type:String,default:"horizontal"},reverse:{type:Boolean,default:!1},lazy:{type:Boolean,default:!1},clickable:{type:Boolean,default:!0},speed:{type:Number,default:.5},realTime:{type:Boolean,default:!1},value:{type:[String,Number,Array],default:0},piecewiseLabel:{type:Boolean,default:!1},sliderStyle:[Array,Object],tooltipDir:[Array,String],formatter:[String,Function],piecewiseStyle:Object,piecewiseActiveStyle:Object,processStyle:Object,bgStyle:Object,tooltipStyle:[Array,Object],labelStyle:Object,labelActiveStyle:Object},computed:{flowDirection:function(){return"vue-slider-"+this.direction+(this.reverse?"-reverse":"")},tooltipDirection:function(){var t=this.tooltipDir||("vertical"===this.direction?"left":"top");return Array.isArray(t)?this.isRange?t:t[1]:this.isRange?[t,t]:t},tooltipStatus:function(){return"hover"===this.tooltip&&this.flag?"vue-slider-always":this.tooltip?"vue-slider-"+this.tooltip:""},tooltipClass:function(){return["vue-slider-tooltip-"+this.tooltipDirection,"vue-slider-tooltip"]},isDisabled:function(){return"none"===this.eventType||this.disabled},disabledClass:function(){return this.disabled?"vue-slider-disabled":""},isRange:function(){return Array.isArray(this.value)},slider:function(){return this.isRange?[this.$refs.dot0,this.$refs.dot1]:this.$refs.dot},minimum:function(){return this.data?0:this.min},val:{get:function(){return this.data?this.isRange?[this.data[this.currentValue[0]],this.data[this.currentValue[1]]]:this.data[this.currentValue]:this.currentValue},set:function(t){if(this.data)if(this.isRange){var e=this.data.indexOf(t[0]),r=this.data.indexOf(t[1]);e>-1&&r>-1&&(this.currentValue=[e,r])}else{var n=this.data.indexOf(t);n>-1&&(this.currentValue=n)}else this.currentValue=t}},currentIndex:function(){return this.isRange?this.data?this.currentValue:[(this.currentValue[0]-this.minimum)/this.spacing,(this.currentValue[1]-this.minimum)/this.spacing]:(this.currentValue-this.minimum)/this.spacing},indexRange:function(){return this.isRange?this.currentIndex:[0,this.currentIndex]},maximum:function(){return this.data?this.data.length-1:this.max},multiple:function(){var t=(""+this.interval).split(".")[1];return t?Math.pow(10,t.length):1},spacing:function(){return this.data?1:this.interval},total:function(){return this.data?this.data.length-1:(~~((this.maximum-this.minimum)*this.multiple)%(this.interval*this.multiple)!=0&&console.error("[Vue-slider warn]: Prop[interval] is illegal, Please make sure that the interval can be divisible"),(this.maximum-this.minimum)/this.interval)},gap:function(){return this.size/this.total},position:function(){return this.isRange?[(this.currentValue[0]-this.minimum)/this.spacing*this.gap,(this.currentValue[1]-this.minimum)/this.spacing*this.gap]:(this.currentValue-this.minimum)/this.spacing*this.gap},limit:function(){return this.isRange?[[0,this.position[1]],[this.position[0],this.size]]:[0,this.size]},valueLimit:function(){return this.isRange?[[this.minimum,this.currentValue[1]],[this.currentValue[0],this.maximum]]:[this.minimum,this.maximum]},wrapStyles:function(){return"vertical"===this.direction?{height:"number"==typeof this.height?this.height+"px":this.height,padding:this.dotHeightVal/2+"px "+this.dotWidthVal/2+"px"}:{width:"number"==typeof this.width?this.width+"px":this.width,padding:this.dotHeightVal/2+"px "+this.dotWidthVal/2+"px"}},sliderStyles:function(){return Array.isArray(this.sliderStyle)?this.isRange?this.sliderStyle:this.sliderStyle[1]:this.isRange?[this.sliderStyle,this.sliderStyle]:this.sliderStyle},tooltipStyles:function(){return Array.isArray(this.tooltipStyle)?this.isRange?this.tooltipStyle:this.tooltipStyle[1]:this.isRange?[this.tooltipStyle,this.tooltipStyle]:this.tooltipStyle},elemStyles:function(){return"vertical"===this.direction?{width:this.width+"px",height:"100%"}:{height:this.height+"px"}},dotStyles:function(){return"vertical"===this.direction?{width:this.dotWidthVal+"px",height:this.dotHeightVal+"px",left:-(this.dotWidthVal-this.width)/2+"px"}:{width:this.dotWidthVal+"px",height:this.dotHeightVal+"px",top:-(this.dotHeightVal-this.height)/2+"px"}},piecewiseDotStyle:function(){return"vertical"===this.direction?{width:this.width+"px",height:this.width+"px"}:{width:this.height+"px",height:this.height+"px"}},piecewiseDotWrap:function(){if(!this.piecewise&&!this.piecewiseLabel)return!1;for(var t=[],e=0;e<=this.total;e++){var r="vertical"===this.direction?{bottom:this.gap*e-this.width/2+"px",left:0}:{left:this.gap*e-this.height/2+"px",top:0},n=this.reverse?this.total-e:e,i=this.data?this.data[n]:this.spacing*n+this.min;t.push({style:r,label:this.formatter?this.formatting(i):i,inRange:n>=this.indexRange[0]&&n<=this.indexRange[1]})}return t}},watch:{value:function(t){this.flag||this.setValue(t,!0)},max:function(t){var e=this.limitValue(this.val);!1!==e&&this.setValue(e),this.refresh()},min:function(t){var e=this.limitValue(this.val);!1!==e&&this.setValue(e),this.refresh()},show:function(t){var e=this;t&&!this.size&&this.$nextTick(function(){e.refresh()})}},methods:{bindEvents:function(){document.addEventListener("touchmove",this.moving,{passive:!1}),document.addEventListener("touchend",this.moveEnd,{passive:!1}),document.addEventListener("mousemove",this.moving),document.addEventListener("mouseup",this.moveEnd),document.addEventListener("mouseleave",this.moveEnd),window.addEventListener("resize",this.refresh)},unbindEvents:function(){window.removeEventListener("resize",this.refresh),document.removeEventListener("touchmove",this.moving),document.removeEventListener("touchend",this.moveEnd),document.removeEventListener("mousemove",this.moving),document.removeEventListener("mouseup",this.moveEnd),document.removeEventListener("mouseleave",this.moveEnd)},formatting:function(t){return"string"==typeof this.formatter?this.formatter.replace(/\{value\}/,t):this.formatter(t)},getPos:function(t){return this.realTime&&this.getStaticData(),"vertical"===this.direction?this.reverse?t.pageY-this.offset:this.size-(t.pageY-this.offset):this.reverse?this.size-(t.clientX-this.offset):t.clientX-this.offset},wrapClick:function(t){if(this.isDisabled||!this.clickable)return!1;var e=this.getPos(t);this.isRange&&(this.currentSlider=e>(this.position[1]-this.position[0])/2+this.position[0]?1:0),this.setValueOnPos(e)},moveStart:function(t){if(this.isDisabled)return!1;this.isRange&&(this.currentSlider=t),this.flag=!0,this.$emit("drag-start",this)},moving:function(t){if(!this.flag)return!1;t.preventDefault(),t.targetTouches&&t.targetTouches[0]&&(t=t.targetTouches[0]),this.setValueOnPos(this.getPos(t),!0)},moveEnd:function(t){if(!this.flag)return!1;this.$emit("drag-end",this),this.lazy&&this.isDiff(this.val,this.value)&&this.syncValue(),this.flag=!1,this.setPosition()},setValueOnPos:function(t,e){var r=this.isRange?this.limit[this.currentSlider]:this.limit,n=this.isRange?this.valueLimit[this.currentSlider]:this.valueLimit;if(t>=r[0]&&t<=r[1]){this.setTransform(t);var i=(Math.round(t/this.gap)*(this.spacing*this.multiple)+this.minimum*this.multiple)/this.multiple;this.setCurrentValue(i,e)}else t<r[0]?(this.setTransform(r[0]),this.setCurrentValue(n[0]),1===this.currentSlider&&(this.currentSlider=0)):(this.setTransform(r[1]),this.setCurrentValue(n[1]),0===this.currentSlider&&(this.currentSlider=1))},isDiff:function(t,e){return Object.prototype.toString.call(t)!==Object.prototype.toString.call(e)||(Array.isArray(t)&&t.length===e.length?t.some(function(t,r){return t!==e[r]}):t!==e)},setCurrentValue:function(t,e){if(t<this.minimum||t>this.maximum)return!1;this.isRange?this.isDiff(this.currentValue[this.currentSlider],t)&&(this.currentValue.splice(this.currentSlider,1,t),this.lazy&&this.flag||this.syncValue()):this.isDiff(this.currentValue,t)&&(this.currentValue=t,this.lazy&&this.flag||this.syncValue()),e||this.setPosition()},setIndex:function(t){if(Array.isArray(t)&&this.isRange){var e=void 0;e=this.data?[this.data[t[0]],this.data[t[1]]]:[this.spacing*t[0]+this.minimum,this.spacing*t[1]+this.minimum],this.setValue(e)}else t=this.spacing*t+this.minimum,this.isRange&&(this.currentSlider=t>(this.currentValue[1]-this.currentValue[0])/2+this.currentValue[0]?1:0),this.setCurrentValue(t)},setValue:function(t,e,r){var n=this;if(this.isDiff(this.val,t)){var i=this.limitValue(t);this.val=!1!==i?this.isRange?i.concat():i:this.isRange?t.concat():t,this.syncValue(e)}this.$nextTick(function(){return n.setPosition(r)})},setPosition:function(t){this.flag||this.setTransitionTime(void 0===t?this.speed:t),this.isRange?(this.currentSlider=0,this.setTransform(this.position[this.currentSlider]),this.currentSlider=1,this.setTransform(this.position[this.currentSlider])):this.setTransform(this.position),this.flag||this.setTransitionTime(0)},setTransform:function(t){var e=("vertical"===this.direction?this.dotHeightVal/2-t:t-this.dotWidthVal/2)*(this.reverse?-1:1),r="vertical"===this.direction?"translateY("+e+"px)":"translateX("+e+"px)",n=(0===this.currentSlider?this.position[1]-t:t-this.position[0])+"px",i=(0===this.currentSlider?t:this.position[0])+"px";this.isRange?(this.slider[this.currentSlider].style.transform=r,this.slider[this.currentSlider].style.WebkitTransform=r,this.slider[this.currentSlider].style.msTransform=r,"vertical"===this.direction?(this.$refs.process.style.height=n,this.$refs.process.style[this.reverse?"top":"bottom"]=i):(this.$refs.process.style.width=n,this.$refs.process.style[this.reverse?"right":"left"]=i)):(this.slider.style.transform=r,this.slider.style.WebkitTransform=r,this.slider.style.msTransform=r,"vertical"===this.direction?(this.$refs.process.style.height=t+"px",this.$refs.process.style[this.reverse?"top":"bottom"]=0):(this.$refs.process.style.width=t+"px",this.$refs.process.style[this.reverse?"right":"left"]=0))},setTransitionTime:function(t){if(t||this.$refs.process.offsetWidth,this.isRange){for(var e=0;e<this.slider.length;e++)this.slider[e].style.transitionDuration=t+"s",this.slider[e].style.WebkitTransitionDuration=t+"s";this.$refs.process.style.transitionDuration=t+"s",this.$refs.process.style.WebkitTransitionDuration=t+"s"}else this.slider.style.transitionDuration=t+"s",this.slider.style.WebkitTransitionDuration=t+"s",this.$refs.process.style.transitionDuration=t+"s",this.$refs.process.style.WebkitTransitionDuration=t+"s"},limitValue:function(t){var e=this;if(this.data)return t;var r=!1;return this.isRange?t=t.map(function(t){return t<e.min?(r=!0,e.min):t>e.max?(r=!0,e.max):t}):t>this.max?(r=!0,t=this.max):t<this.min&&(r=!0,t=this.min),r&&t},syncValue:function(t){t||this.$emit("callback",this.val),this.$emit("input",this.isRange?this.val.concat():this.val)},getValue:function(){return this.val},getIndex:function(){return this.currentIndex},getStaticData:function(){this.$refs.elem&&(this.size="vertical"===this.direction?this.$refs.elem.offsetHeight:this.$refs.elem.offsetWidth,this.offset="vertical"===this.direction?this.$refs.elem.getBoundingClientRect().top+window.pageYOffset||document.documentElement.scrollTop:this.$refs.elem.getBoundingClientRect().left)},refresh:function(){this.$refs.elem&&(this.getStaticData(),this.setPosition())}},mounted:function(){var t=this;"undefined"!=typeof window&&"undefined"!=typeof document&&this.$nextTick(function(){t.getStaticData(),t.setValue(t.value,!0,0),t.bindEvents()})},beforeDestroy:function(){this.unbindEvents()}}},function(t,e,r){"use strict";var n=r(0);t.exports=n},function(t,e,r){e=t.exports=r(4)(),e.push([t.i,'.vue-slider-component{position:relative;-webkit-box-sizing:border-box;box-sizing:border-box;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.vue-slider-component.vue-slider-disabled{opacity:.5;cursor:not-allowed}.vue-slider-component.vue-slider-has-label{margin-bottom:15px}.vue-slider-component.vue-slider-disabled .vue-slider-dot{cursor:not-allowed}.vue-slider-component .vue-slider{position:relative;display:block;border-radius:15px;background-color:#ccc}.vue-slider-component .vue-slider:after{content:"";position:absolute;left:0;top:0;width:100%;height:100%;z-index:2}.vue-slider-component .vue-slider-process{position:absolute;border-radius:15px;background-color:#3498db;-webkit-transition:all 0s;transition:all 0s;z-index:1}.vue-slider-component.vue-slider-horizontal .vue-slider-process{width:0;height:100%;top:0;left:0;will-change:width}.vue-slider-component.vue-slider-vertical .vue-slider-process{width:100%;height:0;bottom:0;left:0;will-change:height}.vue-slider-component.vue-slider-horizontal-reverse .vue-slider-process{width:0;height:100%;top:0;right:0}.vue-slider-component.vue-slider-vertical-reverse .vue-slider-process{width:100%;height:0;top:0;left:0}.vue-slider-component .vue-slider-dot{position:absolute;border-radius:50%;background-color:#fff;-webkit-box-shadow:.5px .5px 2px 1px rgba(0,0,0,.32);box-shadow:.5px .5px 2px 1px rgba(0,0,0,.32);-webkit-transition:all 0s;transition:all 0s;will-change:transform;cursor:pointer;z-index:3}.vue-slider-component.vue-slider-horizontal .vue-slider-dot{left:0}.vue-slider-component.vue-slider-vertical .vue-slider-dot{bottom:0}.vue-slider-component.vue-slider-horizontal-reverse .vue-slider-dot{right:0}.vue-slider-component.vue-slider-vertical-reverse .vue-slider-dot{top:0}.vue-slider-component .vue-slider-tooltip-wrap{display:none;position:absolute;z-index:9}.vue-slider-component .vue-slider-tooltip{display:block;font-size:14px;white-space:nowrap;padding:2px 5px;min-width:20px;text-align:center;color:#fff;border-radius:5px;border:1px solid #3498db;background-color:#3498db}.vue-slider-component .vue-slider-tooltip-wrap.vue-slider-tooltip-top{top:-9px;left:50%;-webkit-transform:translate(-50%,-100%);transform:translate(-50%,-100%)}.vue-slider-component .vue-slider-tooltip-wrap.vue-slider-tooltip-bottom{bottom:-9px;left:50%;-webkit-transform:translate(-50%,100%);transform:translate(-50%,100%)}.vue-slider-component .vue-slider-tooltip-wrap.vue-slider-tooltip-left{top:50%;left:-9px;-webkit-transform:translate(-100%,-50%);transform:translate(-100%,-50%)}.vue-slider-component .vue-slider-tooltip-wrap.vue-slider-tooltip-right{top:50%;right:-9px;-webkit-transform:translate(100%,-50%);transform:translate(100%,-50%)}.vue-slider-component .vue-slider-tooltip-wrap.vue-slider-tooltip-top .vue-slider-tooltip:before{content:"";position:absolute;bottom:-10px;left:50%;width:0;height:0;border:5px solid transparent;border:6px solid transparent\\0;border-top-color:inherit;-webkit-transform:translate(-50%);transform:translate(-50%)}.vue-slider-component .vue-slider-tooltip-wrap.vue-slider-tooltip-bottom .vue-slider-tooltip:before{content:"";position:absolute;top:-10px;left:50%;width:0;height:0;border:5px solid transparent;border:6px solid transparent\\0;border-bottom-color:inherit;-webkit-transform:translate(-50%);transform:translate(-50%)}.vue-slider-component .vue-slider-tooltip-wrap.vue-slider-tooltip-left .vue-slider-tooltip:before{content:"";position:absolute;top:50%;right:-10px;width:0;height:0;border:5px solid transparent;border:6px solid transparent\\0;border-left-color:inherit;-webkit-transform:translateY(-50%);transform:translateY(-50%)}.vue-slider-component .vue-slider-tooltip-wrap.vue-slider-tooltip-right .vue-slider-tooltip:before{content:"";position:absolute;top:50%;left:-10px;width:0;height:0;border:5px solid transparent;border:6px solid transparent\\0;border-right-color:inherit;-webkit-transform:translateY(-50%);transform:translateY(-50%)}.vue-slider-component .vue-slider-dot.vue-slider-hover:hover .vue-slider-tooltip-wrap{display:block}.vue-slider-component .vue-slider-dot.vue-slider-always .vue-slider-tooltip-wrap{display:block!important}.vue-slider-component .vue-slider-piecewise{position:absolute;width:100%;padding:0;margin:0;left:0;top:0;height:100%;list-style:none}.vue-slider-component .vue-slider-piecewise-item{position:absolute;width:8px;height:8px}.vue-slider-component .vue-slider-piecewise-dot{position:absolute;left:50%;top:50%;width:100%;height:100%;display:inline-block;background-color:rgba(0,0,0,.16);border-radius:50%;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%);z-index:2;-webkit-transition:all .3s;transition:all .3s}.vue-slider-component .vue-slider-piecewise-item:first-child .vue-slider-piecewise-dot,.vue-slider-component .vue-slider-piecewise-item:last-child .vue-slider-piecewise-dot{visibility:hidden}.vue-slider-component.vue-slider-horizontal-reverse .vue-slider-piecewise-label,.vue-slider-component.vue-slider-horizontal .vue-slider-piecewise-label{position:absolute;display:inline-block;top:100%;left:50%;white-space:nowrap;font-size:12px;color:#333;-webkit-transform:translate(-50%,8px);transform:translate(-50%,8px);visibility:visible}.vue-slider-component.vue-slider-vertical-reverse .vue-slider-piecewise-label,.vue-slider-component.vue-slider-vertical .vue-slider-piecewise-label{position:absolute;display:inline-block;top:50%;left:100%;white-space:nowrap;font-size:12px;color:#333;-webkit-transform:translate(8px,-50%);transform:translate(8px,-50%);visibility:visible}.vue-slider-component .vue-slider-sr-only{clip:rect(1px,1px,1px,1px);height:1px;width:1px;overflow:hidden;position:absolute!important}',""])},function(t,e){t.exports=function(){var t=[];return t.toString=function(){for(var t=[],e=0;e<this.length;e++){var r=this[e];r[2]?t.push("@media "+r[2]+"{"+r[1]+"}"):t.push(r[1])}return t.join("")},t.i=function(e,r){"string"==typeof e&&(e=[[null,e,""]]);for(var n={},i=0;i<this.length;i++){var o=this[i][0];"number"==typeof o&&(n[o]=!0)}for(i=0;i<e.length;i++){var a=e[i];"number"==typeof a[0]&&n[a[0]]||(r&&!a[2]?a[2]=r:r&&(a[2]="("+a[2]+") and ("+r+")"),t.push(a))}},t}},function(t,e){t.exports=function(t,e,r,n){var i,o=t=t||{},a=typeof t.default;"object"!==a&&"function"!==a||(i=t,o=t.default);var s="function"==typeof o?o.options:o;if(e&&(s.render=e.render,s.staticRenderFns=e.staticRenderFns),r&&(s._scopeId=r),n){var l=Object.create(s.computed||null);Object.keys(n).forEach(function(t){var e=n[t];l[t]=function(){return e}}),s.computed=l}return{esModule:i,exports:o,options:s}}},function(t,e){t.exports={render:function(){var t=this,e=t.$createElement,r=t._self._c||e;return r("div",{directives:[{name:"show",rawName:"v-show",value:t.show,expression:"show"}],ref:"wrap",class:["vue-slider-component",t.flowDirection,t.disabledClass,{"vue-slider-has-label":t.piecewiseLabel}],style:t.wrapStyles,on:{click:t.wrapClick}},[r("div",{ref:"elem",staticClass:"vue-slider",style:[t.elemStyles,t.bgStyle],attrs:{"aria-hidden":"true"}},[t.isRange?[r("div",{ref:"dot0",class:[t.tooltipStatus,"vue-slider-dot"],style:[t.dotStyles,t.sliderStyles[0]],on:{mousedown:function(e){t.moveStart(0)},touchstart:function(e){t.moveStart(0)}}},[r("span",{class:["vue-slider-tooltip-"+t.tooltipDirection[0],"vue-slider-tooltip-wrap"]},[t._t("tooltip",[r("span",{staticClass:"vue-slider-tooltip",style:t.tooltipStyles[0]},[t._v(t._s(t.formatter?t.formatting(t.val[0]):t.val[0]))])],{value:t.val[0],index:0})],2)]),t._v(" "),r("div",{ref:"dot1",class:[t.tooltipStatus,"vue-slider-dot"],style:[t.dotStyles,t.sliderStyles[1]],on:{mousedown:function(e){t.moveStart(1)},touchstart:function(e){t.moveStart(1)}}},[r("span",{class:["vue-slider-tooltip-"+t.tooltipDirection[1],"vue-slider-tooltip-wrap"]},[t._t("tooltip",[r("span",{staticClass:"vue-slider-tooltip",style:t.tooltipStyles[1]},[t._v(t._s(t.formatter?t.formatting(t.val[1]):t.val[1]))])],{value:t.val[1],index:1})],2)])]:[r("div",{ref:"dot",class:[t.tooltipStatus,"vue-slider-dot"],style:[t.dotStyles,t.sliderStyles],on:{mousedown:t.moveStart,touchstart:t.moveStart}},[r("span",{class:["vue-slider-tooltip-"+t.tooltipDirection,"vue-slider-tooltip-wrap"]},[t._t("tooltip",[r("span",{staticClass:"vue-slider-tooltip",style:t.tooltipStyles},[t._v(t._s(t.formatter?t.formatting(t.val):t.val))])],{value:t.val})],2)])],t._v(" "),r("ul",{staticClass:"vue-slider-piecewise"},t._l(t.piecewiseDotWrap,function(e,n){return r("li",{key:n,staticClass:"vue-slider-piecewise-item",style:[t.piecewiseDotStyle,e.style]},[t._t("piecewise",[t.piecewise?r("span",{staticClass:"vue-slider-piecewise-dot",style:[t.piecewiseStyle,e.inRange?t.piecewiseActiveStyle:null]}):t._e()],{label:e.label,index:n,first:0===n,last:n===t.piecewiseDotWrap.length-1}),t._v(" "),t._t("label",[t.piecewiseLabel?r("span",{staticClass:"vue-slider-piecewise-label",style:[t.labelStyle,e.inRange?t.labelActiveStyle:null]},[t._v("\n\t\t\t\t\t\t"+t._s(e.label)+"\n\t\t\t\t\t")]):t._e()],{label:e.label,index:n,first:0===n,last:n===t.piecewiseDotWrap.length-1})],2)})),t._v(" "),r("div",{ref:"process",staticClass:"vue-slider-process",style:t.processStyle})],2),t._v(" "),t.isRange||t.data?t._e():r("input",{directives:[{name:"model",rawName:"v-model",value:t.val,expression:"val"}],staticClass:"vue-slider-sr-only",attrs:{type:"range",min:t.min,max:t.max},domProps:{value:t.val},on:{__r:function(e){t.val=e.target.value}}})])},staticRenderFns:[]}},function(t,e,r){var n=r(3);"string"==typeof n&&(n=[[t.i,n,""]]),n.locals&&(t.exports=n.locals),r(8)("743d98f5",n,!0)},function(t,e,r){function n(t){for(var e=0;e<t.length;e++){var r=t[e],n=c[r.id];if(n){n.refs++;for(var i=0;i<n.parts.length;i++)n.parts[i](r.parts[i]);for(;i<r.parts.length;i++)n.parts.push(o(r.parts[i]));n.parts.length>r.parts.length&&(n.parts.length=r.parts.length)}else{for(var a=[],i=0;i<r.parts.length;i++)a.push(o(r.parts[i]));c[r.id]={id:r.id,refs:1,parts:a}}}}function i(){var t=document.createElement("style");return t.type="text/css",p.appendChild(t),t}function o(t){var e,r,n=document.querySelector('style[data-vue-ssr-id~="'+t.id+'"]');if(n){if(d)return m;n.parentNode.removeChild(n)}if(v){var o=f++;n=h||(h=i()),e=a.bind(null,n,o,!1),r=a.bind(null,n,o,!0)}else n=i(),e=s.bind(null,n),r=function(){n.parentNode.removeChild(n)};return e(t),function(n){if(n){if(n.css===t.css&&n.media===t.media&&n.sourceMap===t.sourceMap)return;e(t=n)}else r()}}function a(t,e,r,n){var i=r?"":n.css;if(t.styleSheet)t.styleSheet.cssText=y(e,i);else{var o=document.createTextNode(i),a=t.childNodes;a[e]&&t.removeChild(a[e]),a.length?t.insertBefore(o,a[e]):t.appendChild(o)}}function s(t,e){var r=e.css,n=e.media,i=e.sourceMap;if(n&&t.setAttribute("media",n),i&&(r+="\n/*# sourceURL="+i.sources[0]+" */",r+="\n/*# sourceMappingURL=data:application/json;base64,"+btoa(unescape(encodeURIComponent(JSON.stringify(i))))+" */"),t.styleSheet)t.styleSheet.cssText=r;else{for(;t.firstChild;)t.removeChild(t.firstChild);t.appendChild(document.createTextNode(r))}}var l="undefined"!=typeof document;if("undefined"!=typeof DEBUG&&DEBUG&&!l)throw new Error("vue-style-loader cannot be used in a non-browser environment. Use { target: 'node' } in your Webpack config to indicate a server-rendering environment.");var u=r(9),c={},p=l&&(document.head||document.getElementsByTagName("head")[0]),h=null,f=0,d=!1,m=function(){},v="undefined"!=typeof navigator&&/msie [6-9]\b/.test(navigator.userAgent.toLowerCase());t.exports=function(t,e,r){d=r;var i=u(t,e);return n(i),function(e){for(var r=[],o=0;o<i.length;o++){var a=i[o],s=c[a.id];s.refs--,r.push(s)}e?(i=u(t,e),n(i)):i=[];for(var o=0;o<r.length;o++){var s=r[o];if(0===s.refs){for(var l=0;l<s.parts.length;l++)s.parts[l]();delete c[s.id]}}}};var y=function(){var t=[];return function(e,r){return t[e]=r,t.filter(Boolean).join("\n")}}()},function(t,e){t.exports=function(t,e){for(var r=[],n={},i=0;i<e.length;i++){var o=e[i],a=o[0],s=o[1],l=o[2],u=o[3],c={id:t+":"+i,css:s,media:l,sourceMap:u};n[a]?n[a].parts.push(c):r.push(n[a]={id:a,parts:[c]})}return r}}])})},function(t,e,r){"use strict";var n=function(){var t=this,e=t.$createElement,r=t._self._c||e;return r("div",{attrs:{id:"geshem"}},[r("div",{attrs:{id:"datetime"}},[r("div",{attrs:{id:"date"}},[t._v(t._s(t.date))]),t._v(" "),r("div",{attrs:{id:"time"}},[t._v(t._s(t.time))])]),t._v(" "),r("div",{attrs:{id:"slider"}},[r("vue-slider",{ref:"slider",attrs:{min:1,max:7,height:20,"dot-size":45,tooltip:!1},model:{value:t.slider,callback:function(e){t.slider=e},expression:"slider"}})],1)])},i=[],o={render:n,staticRenderFns:i};e.a=o}]);
//# sourceMappingURL=build.js.map \ No newline at end of file
diff --git a/static/js/build.js.map b/static/js/build.js.map
index 91041c4..f576d29 100644
--- a/static/js/build.js.map
+++ b/static/js/build.js.map
@@ -1 +1 @@
-{"version":3,"sources":["webpack:///build.js","webpack:///webpack/bootstrap 28c446f8136708d15869","webpack:///(webpack)/buildin/global.js","webpack:///./node_modules/mapbox-gl/dist/mapbox-gl.js","webpack:///./geshem.js","webpack:///./node_modules/vue/dist/vue.esm.js","webpack:///./node_modules/timers-browserify/main.js","webpack:///./node_modules/setimmediate/setImmediate.js","webpack:///./node_modules/process/browser.js","webpack:///./Geshem.vue","webpack:///./Geshem.vue?1f22","webpack:///./Geshem.vue?09cd","webpack:///./node_modules/css-loader/lib/css-base.js","webpack:///./node_modules/vue-style-loader/lib/addStylesClient.js","webpack:///./node_modules/vue-style-loader/lib/listToStyles.js","webpack:///./node_modules/vue-loader/lib/component-normalizer.js","webpack:///Geshem.vue","webpack:///./node_modules/vue-slider-component/dist/index.js","webpack:///./Geshem.vue?f1f8"],"names":["modules","__webpack_require__","moduleId","installedModules","exports","module","i","l","call","m","c","d","name","getter","o","Object","defineProperty","configurable","enumerable","get","n","__esModule","object","property","prototype","hasOwnProperty","p","s","g","this","Function","eval","e","window","global","require","f","define","t","r","u","a","Error","code","length","1","_dereq_","amd","glMatrix","Float32Array","Math","sin","cos","v","M","h","y","w","A","F","x","b","j","R","X","Z","k","q","tan","vec3","transformMat3","vec4","transformMat4","mat2","create","rotate","scale","mat3","fromRotation","mat4","identity","translate","multiply","perspective","rotateX","rotateZ","invert","ortho","2","Point","clone","add","_add","sub","_sub","multByPoint","_multByPoint","divByPoint","_divByPoint","mult","_mult","div","_div","_rotate","rotateAround","_rotateAround","matMult","_matMult","unit","_unit","perp","_perp","round","_round","mag","sqrt","equals","dist","distSqr","angle","atan2","angleTo","angleWith","angleWithSep","convert","Array","isArray","3","ShelfPack","autoResize","shelves","freebins","stats","bins","maxId","free","id","maxw","maxh","refcount","pack","concat","width","height","packOne","inPlace","push","shrink","freebin","shelf","waste","getBin","ref","max","allocFreebin","allocShelf","resize","splice","alloc","unref","clear","4","TinySDF","fontSize","buffer","cutoff","fontFamily","fontWeight","radius","size","canvas","document","createElement","ctx","getContext","font","textBaseline","fillStyle","gridOuter","Float64Array","gridInner","z","Int16Array","middle","navigator","userAgent","indexOf","edt","edt1d","INF","draw","clearRect","fillText","getImageData","Uint8ClampedArray","data","pow","min","5","UnitBezier","cx","bx","ax","cy","by","ay","p1x","p1y","p2x","p2y","sampleCurveX","sampleCurveY","sampleCurveDerivativeX","solveCurveX","abs","solve","6","VectorTile","VectorTileFeature","VectorTileLayer","./lib/vectortile.js","./lib/vectortilefeature.js","./lib/vectortilelayer.js","7","layers","readFields","readTile","readVarint","pos","./vectortilelayer","8","properties","extent","type","_pbf","_geometry","_keys","_values","readFeature","readTag","classifyRings","signedArea","types","loadGeometry","readSVarint","bbox","toGeoJSON","PI","atan","exp","geometry","coordinates","@mapbox/point-geometry","9","version","_features","readLayer","readString","readValueMessage","readFloat","readDouble","readVarint64","readBoolean","feature","./vectortilefeature.js","10","WhooTS","format","service","request","srs","join","getURL","getTileBBox","getMercCoords","value","11","earcut","linkedList","eliminateHoles","earcutLinked","insertNode","next","removeNode","filterPoints","steiner","area","prev","indexCurve","isEarHashed","isEar","cureLocalIntersections","splitEarcut","pointInTriangle","zOrder","nextZ","prevZ","intersects","locallyInside","isValidDiagonal","splitPolygon","getLeftmost","sort","compareX","eliminateHole","findHoleBridge","sortLinked","intersectsPolygon","middleInside","Node","deviation","flatten","vertices","holes","dimensions","12","polygonArea","ringArea","rad","wgs84","RADIUS","ring","13","rewind","features","map","curryOuter","correct","correctRings","wind","cw","reverse","geojsonArea","geojson-area","14","clip","clipPoints","clipGeometry","createFeature","tags","outer","S","newSlice","./feature","15","convertFeature","projectPoint","project","geometries","simplify","calcSize","log","./simplify","16","calcBBox","calcRingBBox","17","geojsonvt","GeoJSONVT","options","extend","debug","console","time","maxZoom","tolerance","tiles","tileCoords","timeEnd","indexMaxZoom","indexMaxPoints","total","wrap","intersectX","splitTile","numFeatures","numPoints","JSON","stringify","toID","intersectY","isClippedSquare","source","transform","point","z2","createTile","solidChildren","pop","numSimplified","floor","T","getTile","tile","./clip","./convert","./tile","./transform","./wrap","18","getSqSegDist","19","transformed","addFeature","20","transformTile","transformPoint","21","shiftFeatureCoords","shiftCoords","22","GridIndex","cells","ArrayBuffer","arrayBuffer","Int32Array","NUM_PARAMS","subarray","keys","bboxes","insert","_insertReadonly","padding","uid","_forEachCell","_insertCell","query","slice","_queryCell","_convertToCellCoord","toArrayBuffer","set","23","read","N","NaN","write","isNaN","LN2","24","kdbush","KDBush","defaultGetX","defaultGetY","nodeSize","points","ids","coords","range","within","./range","./sort","./within","25","26","sortKD","select","swapItem","swap","27","sqDist","D","28","isSupported","isBrowser","isArraySupported","isFunctionSupported","isObjectSupported","isJSONSupported","isWorkerSupported","isUint8ClampedArraySupported","isWebGLSupportedCached","failIfMajorPerformanceCaveat","every","filter","forEach","lastIndexOf","some","reduce","reduceRight","bind","getPrototypeOf","getOwnPropertyNames","isSealed","isFrozen","isExtensible","getOwnPropertyDescriptor","defineProperties","seal","freeze","preventExtensions","isWebGLSupportedCache","isWebGLSupported","webGLContextAttributes","probablySupportsContext","supportsContext","mapboxgl","supported","antialias","alpha","stencil","depth","29","Pbf","buf","isView","Uint8Array","readVarintRemainder","toNum","readPackedEnd","Bytes","writeBigVarint","realloc","writeBigVarintLow","writeBigVarintHigh","makeRoomForExtraLength","ceil","writePackedVarint","writeVarint","writePackedSVarint","writeSVarint","writePackedFloat","writeFloat","writePackedDouble","writeDouble","writePackedBoolean","writeBoolean","writePackedFixed32","writeFixed32","writePackedSFixed32","writeSFixed32","writePackedFixed64","writeFixed64","writePackedSFixed64","writeSFixed64","readUInt32","writeInt32","readInt32","readUtf8","String","fromCharCode","writeUtf8","charCodeAt","ieee754","Varint","Fixed64","Fixed32","destroy","skip","readMessage","readFixed32","readSFixed32","readFixed64","readSFixed64","Boolean","readBytes","readPackedVarint","readPackedSVarint","readPackedBoolean","readPackedFloat","readPackedDouble","readPackedFixed32","readPackedSFixed32","readPackedFixed64","readPackedSFixed64","writeTag","finish","writeString","writeBytes","writeRawMessage","writeMessage","writeBytesField","writeFixed32Field","writeSFixed32Field","writeFixed64Field","writeSFixed64Field","writeVarintField","writeSVarintField","writeStringField","writeFloatField","writeDoubleField","writeBooleanField","30","defaultSetTimout","defaultClearTimeout","runTimeout","cachedSetTimeout","setTimeout","runClearTimeout","cachedClearTimeout","clearTimeout","cleanUpNextTick","draining","currentQueue","queue","queueIndex","drainQueue","run","Item","fun","array","noop","process","nextTick","arguments","apply","title","browser","env","argv","versions","on","addListener","once","off","removeListener","removeAllListeners","emit","prependListener","prependOnceListener","listeners","binding","cwd","chdir","umask","31","partialSort","defaultCompare","32","supercluster","SuperCluster","trees","createCluster","zoom","parentId","createPointCluster","lngX","latY","getClusterJSON","getClusterProperties","xLng","yLat","cluster","cluster_id","point_count","point_count_abbreviated","getX","getY","minZoom","initial","load","Date","now","_cluster","getClusters","_limitZoom","getChildren","getLeaves","_appendLeaves","_addTileFeatures","getClusterExpansionZoom","_accumulate","33","TinyQueue","compare","_down","_up","peek","34","super_","constructor","writable","35","copy","fill","readUInt8","36","inspect","seen","stylize","stylizeNoColor","colors","isBoolean","showHidden","_extend","isUndefined","customInspect","stylizeWithColor","formatValue","styles","arrayToHash","isFunction","isString","formatPrimitive","isError","formatError","isRegExp","RegExp","toString","isDate","toUTCString","formatArray","formatProperty","reduceToSingleString","replace","isNumber","isNull","match","split","substr","isNullOrUndefined","isSymbol","isObject","objectToString","isPrimitive","pad","timestamp","getHours","getMinutes","getSeconds","getDate","months","getMonth","formatRegExp","Number","deprecate","throwDeprecation","traceDeprecation","trace","error","noDeprecation","debugEnviron","debugs","debuglog","NODE_DEBUG","toUpperCase","test","pid","bold","italic","underline","inverse","white","grey","black","blue","cyan","green","magenta","red","yellow","special","number","boolean","undefined","null","string","date","regexp","isBuffer","inherits","self","./support/isBuffer","_process","37","fromVectorTileJs","writeTile","fromGeojsonVt","GeoJSONWrapper","writeLayer","values","keycache","valuecache","writeFeature","writeValue","writeProperties","writeGeometry","command","zigzag","./lib/geojson_wrapper","pbf","38","FeatureWrapper","rawGeometry","@mapbox/vector-tile","39","bundleFn","sources","cache","default","random","URL","webkitURL","mozURL","msURL","Blob","bare","createObjectURL","Worker","objectURL","40","FLATTENING","POLAR_RADIUS","41","42","util","deserialize","layerIds","getLayer","createBucket","../util/util","43","addCircleVertex","emplaceBack","SegmentVector","VertexBuffer","IndexBuffer","ref$1","ProgramConfigurationSet","createVertexArrayType","ref$2","TriangleIndexArray","EXTENT","circleInterface","layoutAttributes","components","indexArrayType","paintAttributes","LayoutVertexArrayType","CircleBucket","overscaling","index","layoutVertexArray","indexArray","programConfigurations","segments","populate","sourceLayerIndex","featureIndex","isEmpty","serialize","upload","layoutVertexBuffer","indexBuffer","prepareSegment","vertexLength","primitiveLength","populatePaintArrays","programInterface","../../gl/index_buffer","../../gl/vertex_buffer","../extent","../index_array_type","../load_geometry","../program_configuration","../segment","../vertex_array_type","44","LineIndexArray","fillInterface","indexArrayType2","FillBucket","indexArray2","segments2","indexBuffer2","B","../../util/classify_rings","45","addVertex","FACTOR","isBoundaryEdge","MAX_VERTEX_ARRAY_LENGTH","fillExtrusionInterface","FillExtrusionBucket","V","E","_","I","C","46","addLineVertex","EXTRUDE_SCALE","LINE_DISTANCE_SCALE","vectorTileFeatureTypes","COS_HALF_SHARP_CORNER","MAX_LINE_DISTANCE","LINE_DISTANCE_BUFFER_BITS","lineInterface","useIntegerZoom","LineBucket","layout","getLayoutValue","addLine","distance","e1","e2","e3","L","addCurrentVertex","P","addPieSliceVertex","O","47","addDynamicAttributes","packUint8ToFloat","addCollisionBoxVertex","getSizeData","isFeatureConstant","isLayoutValueFeatureConstant","isZoomConstant","isLayoutValueZoomConstant","layoutSize","getLayoutValueStopZoomLevels","coveringZoomRange","coveringStopValues","functionBase","getLayoutProperty","base","functionType","getSizeVertexData","ref$3","Anchor","getAnchors","resolveTokens","ref$4","getGlyphQuads","getIconQuads","ref$5","shapeText","shapeIcon","WritingMode","transformText","mergeLines","clipLine","scriptDetection","CollisionFeature","findPoleOfInaccessibility","createStructArrayType","verticalizePunctuation","PlacedSymbolArray","members","GlyphOffsetArray","LineVertexArray","dynamicLayoutAttributes","symbolInterfaces","text","icon","collisionBox","SymbolBuffers","dynamicLayoutVertexArray","dynamicLayoutVertexBuffer","SymbolBucket","collisionBoxArray","sdfIcons","iconsNeedLinear","pixelRatio","textSizeData","iconSizeData","placedGlyphArray","placedIconArray","glyphOffsetArray","lineVertexArray","iconDependencies","glyphDependencies","allowsVerticalWritingMode","lookup","charAt","prepare","symbolInstances","tilePixelRatio","compareText","allowsLetterSpacing","horizontal","vertical","sdf","warnOnce","addSymbolInstance","anchorIsTooClose","W","G","$","U","place","maxScale","anchor","boxStartIndex","textBoxStartIndex","boxEndIndex","textBoxEndIndex","iconBoxStartIndex","iconBoxEndIndex","placeCollisionFeature","minScale","line","insertCollisionFeature","featureProperties","addSymbols","glyphQuads","textOffset","writingModes","iconQuads","iconOffset","addToDebugBuffers","writingMode","tl","tr","bl","br","tex","glyphOffset","segment","yStretch","textCollisionFeature","iconCollisionFeature","perspectiveRatio","anchorPoint","x1","y1","x2","y2","placementScale","parseInt","MAX_INSTANCES","programInterfaces","../../shaders/encode_attribute","../../symbol/anchor","../../symbol/clip_line","../../symbol/collision_feature","../../symbol/get_anchors","../../symbol/mergelines","../../symbol/quads","../../symbol/shaping","../../symbol/transform_text","../../util/find_pole_of_inaccessibility","../../util/script_detection","../../util/struct_array","../../util/token","../../util/util","../../util/verticalize_punctuation","48","49","topDownFeatureComparator","featureFilter","Grid","DictionaryCoder","vt","Protobuf","GeoJSONFeature","arraysIntersect","FeatureIndexArray","FeatureIndex","coord","grid","featureIndexArray","rawTileData","bucketLayerIDs","setCollisionTile","collisionTile","vtLayers","sourceLayerCoder","params","tileSize","queryGeometry","additionalRadius","filterMatching","bearing","queryRenderedSymbols","bucketIndex","decode","queryIntersectsFeature","layer","hasLayer","../style-spec/feature_filter","../util/dictionary_coder","../util/struct_array","../util/vectortile_to_geojson","./extent","./load_geometry","grid-index","50","createIndexArrayType","51","bounds","52","PosArray","53","packColor","interpolationFactor","ConstantBinder","defines","populatePaintArray","setUniforms","getPaintValue","uniform4fv","uniforms","uniform1f","SourceFunctionBinder","CompositeFunctionBinder","ProgramConfiguration","binders","cacheKey","createDynamic","_paintSpecifications","isPaintValueFeatureConstant","isPaintValueZoomConstant","PaintVertexArray","interface","createBasicFill","color","opacity","createPaintPropertyStatistics","paintVertexArray","bytesPerElement","paintPropertyStatistics","statistics","paintVertexBuffer","../gl/vertex_buffer","../shaders/encode_attribute","../style-spec/function","./vertex_array_type","54","RasterBoundsArray","55","vertexOffset","primitiveOffset","vaos","56","alignment","57","Coordinate","column","row","zoomTo","_zoomTo","58","LngLat","lng","lat","toArray","toBounds","./lng_lat_bounds","59","LngLatBounds","setSouthWest","setNorthEast","_ne","_sw","getCenter","getSouthWest","getNorthEast","getNorthWest","getWest","getNorth","getSouthEast","getEast","getSouth","./lng_lat","60","interp","TileCoord","glmatrix","Transform","_renderWorldCopies","_minZoom","_maxZoom","latRange","_center","_fov","_pitch","_unmodified","prototypeAccessors","renderWorldCopies","worldSize","centerPoint","pitch","fov","center","unmodified","_calcMatrices","rotationMatrix","clamp","_zoom","zoomScale","tileZoom","zoomFraction","_constrain","coveringZoomLevel","roundZoom","scaleZoom","getVisibleWrappedCoordinates","pointCoordinate","coveringTiles","minzoom","maxzoom","cover","reparseOverscaled","pixelsToGLUnits","unproject","setLocationAtPoint","coordinateLocation","locationCoordinate","locationPoint","coordinatePoint","pointLocation","pixelMatrixInverse","pixelMatrix","calculatePosMatrix","toCoordinate","projMatrix","cameraToTileDistance","sourceMaxZoom","_constraining","lngRange","cameraToCenterDistance","../data/extent","../source/tile_coord","../style-spec/util/interpolate","./coordinate","@mapbox/gl-matrix","61","gl","createBuffer","extVertexArrayObject","getExtension","bindVertexArrayOES","bindBuffer","ELEMENT_ARRAY_BUFFER","bufferData","STATIC_DRAW","deleteBuffer","62","AttributeType","Int8","Uint8","Int16","Uint16","Int32","Uint32","Float32","attributes","itemSize","dynamicDraw","ARRAY_BUFFER","DYNAMIC_DRAW","updateData","bufferSubData","enableAttributes","enableVertexAttribArray","setVertexAttribPointers","vertexAttribPointer","offset","63","Map","NavigationControl","GeolocateControl","AttributionControl","ScaleControl","FullscreenControl","Popup","Marker","Style","Evented","config","rtlTextPlugin","workerCount","hardwareConcurrency","setRTLTextPlugin","accessToken","ACCESS_TOKEN","../package.json","./geo/lng_lat","./geo/lng_lat_bounds","./source/rtl_text_plugin","./style/style","./ui/control/attribution_control","./ui/control/fullscreen_control","./ui/control/geolocate_control","./ui/control/navigation_control","./ui/control/scale_control","./ui/map","./ui/marker","./ui/popup","./util/browser","./util/config","./util/evented","mapbox-gl-supported","64","drawBackground","paint","renderPass","disable","STENCIL_TEST","setDepthSublayer","pattern","isPatternMissing","useProgram","basicFillProgramConfiguration","tileExtentPatternVAO","tileExtentBuffer","u_color","tileExtentVAO","u_opacity","setTile","uniformMatrix4fv","u_matrix","drawArrays","TRIANGLE_STRIP","./pattern","65","drawCircles","depthMask","getBucket","u_camera_to_center_distance","uniform1i","u_scale_with_map","u_pitch_with_map","pixelsToTileUnits","uniform2f","u_extrude_scale","uniform2fv","u_devicepixelratio","devicePixelRatio","translatePosMatrix","posMatrix","TRIANGLES","../source/pixels_to_tile_units","../util/browser","66","drawCollisionDebug","enable","activeTexture","TEXTURE1","frameHistory","u_fadetexture","enableTileClippingMask","lineWidth","u_scale","u_zoom","u_maxzoom","u_collision_y_stretch","u_pitch","LINES","67","drawDebug","drawDebugTile","uniform4f","debugVAO","debugBuffer","LINE_STRIP","createTextVerticies","VertexArrayObject","simplexFont"," ","!","\"","#","%","&","'","(",")","*","+",",","-",".","/","0",":",";","<","=",">","?","@","H","J","K","Q","Y","[","\\","]","^","`","{","|","}","~","../data/pos_array","./vertex_array_object","68","drawFill","drawFillTiles","drawFillTile","getPaintProperty","drawStrokeTile","setFillProgram","u_world","drawingBufferWidth","drawingBufferHeight","currentProgram","69","DEPTH_TEST","clearColor","drawExtrusion","drawExtrusionTexture","prerenderedFrames","TEXTURE0","bindTexture","TEXTURE_2D","texture","u_image","vao","viewportFrames","u_height_factor","setLight","style","light","calculated","position","uniform3fv","u_lightpos","u_lightintensity","intensity","u_lightcolor","70","drawLineTile","lineAtlas","getDash","from","to","fromScale","toScale","u_patternscale_a","u_patternscale_b","u_sdfgamma","imageManager","getPattern","u_pattern_size_a","displaySize","u_pattern_size_b","getPixelSize","u_texsize","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_ratio","71","drawRaster","getSource","depthFunc","LESS","u_brightness_low","u_brightness_high","u_saturation_factor","saturationFactor","u_contrast_factor","contrastFactor","u_spin_weights","spinWeights","u_buffer_scale","u_image0","u_image1","registerFadeDuration","animationLoop","findLoadedParent","getFadeValues","u_tl_parent","u_scale_parent","u_fade_t","mix","ImageSource","boundsBuffer","boundsVAO","rasterBoundsBuffer","rasterBoundsVAO","LEQUAL","timeAdded","refreshedUponExpiration","../source/image_source","72","drawSymbols","drawLayerSymbols","showCollisionBoxes","setSymbolDrawState","u_texture","glyphAtlasTexture","LINEAR","CLAMP_TO_EDGE","iconAtlasTexture","rotating","zooming","NEAREST","symbolProjection","getLabelPlaneMatrix","getGlCoordMatrix","u_gl_coord_matrix","u_label_plane_matrix","identityMat4","updateLineLabels","drawTileSymbols","u_is_text","u_is_size_zoom_constant","u_is_size_feature_constant","symbolSize","evaluateSizeForZoom","uSizeT","u_size_t","uSize","u_size","u_aspect_ratio","u_rotate_symbol","u_gamma_scale","u_is_halo","drawSymbolElements","../symbol/projection","../symbol/symbol_size","./draw_collision_debug","73","FrameHistory","changeTimes","changeOpacities","opacities","previousZoom","firstFrame","record","changed","isVisible","texSubImage2D","ALPHA","UNSIGNED_BYTE","createTexture","texParameteri","TEXTURE_WRAP_S","TEXTURE_WRAP_T","TEXTURE_MIN_FILTER","TEXTURE_MAG_FILTER","texImage2D","74","makeGlyphAtlas","AlphaImage","bitmap","rect","metrics","image","positions","../util/image","@mapbox/shelf-pack","75","loadGlyphRange","isChar","asyncAll","GlyphManager","requestTransform","localIdeographFontFamily","entries","setURL","url","getGlyphs","stack","glyphs","requests","glyph","_tinySDF","tinySDF","left","top","advance","../style/load_glyph_range","../util/is_char_in_unicode_block","@mapbox/tiny-sdf","76","imagePosition","textureRect","makeImageAtlas","RGBAImage","77","Texture","ImageManager","images","loaded","requestors","shelfPack","patterns","atlasImage","dirty","isLoaded","setLoaded","callback","_notify","getImage","addImage","removeImage","bin","getImages","atlasTexture","update","RGBA","./image_atlas","./texture","78","LineAtlas","nextRow","bytes","addDash","REPEAT","79","SourceCache","shaders","Program","RenderTexture","symbol","circle","fill-extrusion","raster","background","Painter","_tileTextures","setup","numSublayers","maxUnderzooming","maxOverzooming","depthEpsilon","lineWidthRange","getParameter","ALIASED_LINE_WIDTH_RANGE","emptyProgramConfiguration","viewport","deleteTexture","deleteFramebuffer","fbo","depthRbo","deleteRenderbuffer","BLEND","blendFunc","ONE","ONE_MINUS_SRC_ALPHA","_depthMask","extTextureFilterAnisotropic","extTextureFilterAnisotropicMax","MAX_TEXTURE_MAX_ANISOTROPY_EXT","COLOR_BUFFER_BIT","clearStencil","stencilMask","STENCIL_BUFFER_BIT","clearDepth","DEPTH_BUFFER_BIT","_renderTileClippingMasks","colorMask","stencilOp","KEEP","REPLACE","_tileClippingMaskIDs","stencilFunc","ALWAYS","EQUAL","render","glyphManager","getTransition","duration","sourceCaches","used","_order","_layers","has3DPass","isHidden","getVisibleCoordinates","_setup3DRenderbuffer","bindWithDepth","renderLayer","unbind","showOverdrawInspector","depthRange","currentLayer","_showOverdrawInspector","isTileClipped","showTileBoundaries","createRenderbuffer","bindRenderbuffer","RENDERBUFFER","renderbufferStorage","DEPTH_COMPONENT16","depthRboAttached","saveTileTexture","getTileTexture","CONSTANT_COLOR","blendColor","_createProgramCached","program","../data/program_configuration","../data/raster_bounds_array","../shaders","../source/source_cache","./draw_background","./draw_circle","./draw_debug","./draw_fill","./draw_fill_extrusion","./draw_line","./draw_raster","./draw_symbol","./frame_history","./program","./render_texture","80","u_scale_a","u_scale_b","u_tile_units_to_pixels","u_pixel_coord_upper","u_pixel_coord_lower","81","createProgram","toFixed","prelude","fragmentSource","vertexSource","createShader","FRAGMENT_SHADER","shaderSource","compileShader","attachShader","VERTEX_SHADER","bindAttribLocation","linkProgram","numAttributes","getProgramParameter","ACTIVE_ATTRIBUTES","getActiveAttrib","getAttribLocation","ACTIVE_UNIFORMS","getActiveUniform","getUniformLocation","drawElements","UNSIGNED_SHORT","82","createFramebuffer","bindFramebuffer","FRAMEBUFFER","framebufferTexture2D","COLOR_ATTACHMENT0","attachedRbo","framebufferRenderbuffer","DEPTH_ATTACHMENT","83","pixelStorei","UNPACK_ALIGNMENT","UNPACK_PREMULTIPLY_ALPHA_WEBGL","84","boundProgram","boundVertexBuffer","boundVertexBuffer2","boundIndexBuffer","boundVertexOffset","boundDynamicVertexBuffer","freshBind","createVertexArrayOES","currentNumAttributes","disableVertexAttribArray","deleteVertexArrayOES","85","86","fillOutline","fillOutlinePattern","fillPattern","fillExtrusion","fillExtrusionPattern","extrusionTexture","linePattern","lineSDF","symbolIcon","symbolSDF","re","programName","87","CanvasSource","animate","__proto__","getElementById","contextType","fire","context","_hasInvalidDimensions","play","_rerender","pause","cancel","_finishLoading","getCanvas","onAdd","onRemove","readCanvas","CanvasRenderingContext2D","canvasData","WebGLRenderingContext","readPixels","secondaryContext","createImageData","_prepareImage","painter","../util/window","./image_source","88","resolveURL","href","ResourceType","GeoJSONSource","dispatcher","setEventedParent","_data","_options","workerOptions","geojsonVtOptions","superclusterOptions","clusterMaxZoom","clusterRadius","dataType","_updateWorkerData","sourceDataType","setData","_transformRequest","Source","workerID","send","_loaded","loadTile","state","unloadVectorData","aborted","loadVectorData","redoWhenDone","redoPlacement","abortTile","unloadTile","broadcast","../util/ajax","../util/evented","89","loadGeoJSONTile","_geoJSONIndexes","vtpbf","byteOffset","byteLength","vectorTile","rawData","ajax","VectorTileWorkerSource","GeoJSONWorkerSource","loadGeoJSON","loadData","reloadTile","getJSON","parse","removeSource","./geojson_wrapper","./vector_tile_worker_source","geojson-rewind","geojson-vt","vt-pbf","90","_feature","_geojsonTileLayer","91","textureLoaded","Image","setCoordinates","centerCoord","getCoordinatesCenter","_boundsArray","HTMLVideoElement","ImageData","buckets","../geo/lng_lat","../render/vertex_array_object","./tile_coord","92","normalizeURL","normalizeSourceURL","pick","vector_layers","vectorLayers","vectorLayerIds","frame","../util/mapbox","93","94","sortTilesIn","mergeRenderedFeatureLayers","queryResults","wrappedTileID","rendered","tilesIn","wrapped","queryRenderedFeatures","getRenderableIds","getTileByID","querySourceFeatures","95","loadTileJSON","normalizeTileURL","TileBounds","RasterTileSource","scheme","tileBounds","hasTile","contains","Tile","_refreshExpiredTiles","setExpiryData","cacheControl","expires","LINEAR_MIPMAP_NEAREST","texParameterf","TEXTURE_MAX_ANISOTROPY_EXT","generateMipmap","abort","./load_tilejson","./tile_bounds","96","pluginRequested","pluginBlobURL","evented","registerForPluginAvailability","errorCallback","createBlobURL","clearRTLTextPlugin","getArrayBuffer","applyArabicShaping","processBidirectionalText","97","sourceTypes","vector","geojson","video","bindAll","getType","setType","../source/canvas_source","../source/geojson_source","../source/raster_tile_source","../source/vector_tile_source","../source/video_source","98","coordinateToTilePoint","compareKeyZoom","isRasterType","createSource","Cache","_sourceLoaded","_paused","reload","_sourceErrored","_source","_tiles","_cache","_unloadTile","_timers","_cacheTimers","_maxTileCacheSize","_isIdRenderable","resume","_shouldReloadOnResume","_loadTile","_abortTile","getIds","hasData","_coveredTiles","reset","_reloadTile","_tileLoaded","status","getTime","_setTileReloadTimer","getZoom","_findLoadedChildren","parent","has","getWithoutRemoving","updateCacheSize","setMaxSize","_updateRetainedTiles","fromID","fadeEndTime","_addTile","keysDifference","_removeTile","wasRequested","children","scaledTo","uses","getExpiryTimeout","_setCacheInvalidationTimer","remove","stopPlacementThrottler","clearTiles","../geo/coordinate","../util/lru_cache","./source","99","deserializeBucket","CollisionTile","CollisionBoxArray","Throttler","uniqueId","expirationTime","expiredRequestCount","placementThrottler","_immediateRedoPlacement","iconAtlasImage","glyphAtlasImage","reloadSymbolData","placementSource","invoke","uploaded","queryRadius","sourceLayer","parseCacheControl","stop","../data/bucket","../data/bucket/symbol_bucket","../data/feature_index","../render/texture","../symbol/collision_box","../symbol/collision_tile","../util/throttler","100","validateBounds","minX","minY","maxX","maxY","../geo/lng_lat_bounds","101","edge","x0","y0","dx","dy","scanSpans","scanTriangle","getQuadkey","@mapbox/whoots-js","102","VectorTileSource","reloadCallback","103","loadVectorTile","WorkerTile","actor","layerIndex","loading","removeTile","result","transferables","./worker_tile","104","VideoSource","urls","getVideo","loop","addEventListener","readyState","105","Actor","StyleLayerIndex","globalRTLTextPlugin","layerIndexes","workerSourceTypes","workerSources","registerWorkerSource","registerRTLTextPlugin","setLayers","getLayerIndex","updateLayers","removedIds","symbolOrder","getWorkerSource","loadWorkerSource","importScripts","loadRTLTextPlugin","../style/style_layer_index","../util/actor","./geojson_worker_source","./rtl_text_plugin","106","recalculateLayers","recalculate","serializeBuckets","symbolBuckets","familiesBySource","encode","visibility","mapObject","stacks","icons","../render/glyph_atlas","../render/image_atlas","107","deref","refProperties","derefLayers","./util/ref_properties","108","diffSources","operations","args","isEqual","addSource","diffLayerPropertyChanges","pluckId","indexById","diffLayers","removeLayer","addLayer","setLayoutProperty","setPaintProperty","setFilter","setLayerZoomRange","setLayerProperty","diffStyles","setStyle","setCenter","setZoom","setBearing","setPitch","sprite","setSprite","setGlyphs","transition","setTransition","warn","lodash.isequal","109","ValidationError","message","__line__","110","createFilter","compile","compileComparisonOp","compileLogicalOp","compileNegation","compileInOp","compileHasOp","compilePropertyReference","111","xyz2lab","t3","t2","t0","lab2xyz","t1","xyz2rgb","rgb2xyz","rgbToLab","Xn","Yn","Zn","labToRgb","rgbToHcl","rad2deg","hclToRgb","deg2rad","lab","forward","hcl","112","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","113","getKey","groupByLayout","114","clamp_css_byte","clamp_css_float","parse_css_int","parseFloat","parse_css_float","css_hue_to_rgb","parseCSSColor","toLowerCase","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","115","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","116","bindCallback","117","getNative","isNative","funcTag","reIsNative","fnToString","reIsHostCtor","118","isArguments","isArrayLikeObject","propertyIsEnumerable","isArrayLike","isLength","genTag","MAX_SAFE_INTEGER","119","nativeIsArray","120","lodash._baseisequal","lodash._bindcallback","121","typedArrayTags","122","getLength","isIndex","reIsUint","shimKeys","keysIn","nativeKeys","lodash._getnative","lodash.isarguments","123","./v8.json","124","$version","$root","required","metadata","period","units","source_tile","source_geojson","maximum","minimum","source_video","source_image","source_canvas","2d","webgl","experimental-webgl","webgl2","source-layer","paint.*","layout_background","visible","none","layout_fill","layout_circle","layout_fill-extrusion","layout_line","line-cap","zoom-function","butt","square","line-join","property-function","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","icon-text-fit","both","icon-text-fit-padding","icon-image","tokens","icon-rotate","icon-padding","icon-keep-upright","icon-offset","icon-anchor","right","bottom","top-left","top-right","bottom-left","bottom-right","icon-pitch-alignment","text-pitch-alignment","text-rotation-alignment","text-field","text-font","text-size","text-max-width","text-line-height","text-letter-spacing","text-justify","text-anchor","text-max-angle","text-rotate","text-padding","text-keep-upright","text-transform","uppercase","lowercase","text-offset","text-allow-overlap","text-ignore-placement","text-optional","layout_raster","filter_operator","==","!=",">=","<=","in","!in","all","any","!has","geometry_type","LineString","Polygon","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-pitch-alignment","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","125","126","127","vec2","128","parseColorString","csscolorparser","129","130","valueOf","131","constants","enum","valueSpec","key","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","132","validate","arrayElementValidator","arrayIndex","./validate","133","134","135","136","unbundle","../util/unbundle_jsonlint","137","validateEnum","138","validateObject","validateArray","validateNumber","objectElementValidators","isFinite","139","validateString","140","validateFilter","validatePaintProperty","validateLayoutProperty","layerType","./validate_layout_property","./validate_paint_property","141","validateProperty","./validate_property","142","143","144","validateSpec","objectKey","145","146","exec","147","148","149","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","150","AnimationLoop","times","stopped","151","validateStyle","StyleDeclaration","StyleTransition","specifications","Light","_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","152","normalizeGlyphsURL","parseGlyphPBF","Glyphs","./parse_glyph_pbf","153","normalizeSpriteURL","SpriteJSON","SpriteImage","154","readFontstacks","readFontstack","readGlyph","border","GLYPH_PBF_BORDER","155","getMaximumPaintValue","translateDistance","156","StyleLayer","loadSprite","mapbox","Dispatcher","getSourceType","setSourceType","QueryFeatures","MapboxGLFunction","getWorkerPool","diff","supportedDiffOperations","ignoredDiffOperations","isMapboxURL","zoomHistory","_resetUpdates","_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","../render/glyph_manager","../render/image_manager","../render/line_atlas","../source/query_features","../source/rtl_text_plugin","../source/source","../style-spec/deref","../style-spec/diff","../util/dispatcher","../util/global_worker_pool","./animation_loop","./light","./load_sprite","./style_layer","157","stopZoomLevels","_functionInterpolationT","calculateInterpolationT","158","getDeclarationValue","_layoutSpecifications","_paintTransitions","_paintTransitionOptions","_paintDeclarations","_layoutDeclarations","_layoutFunctions","_updateLayoutValue","getPaintValueStopZoomLevels","getPaintInterpolationT","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","159","multiPolygonIntersectsBufferedMultiPoint","CircleStyleLayer","../../data/bucket/circle_bucket","../../util/intersection_tests","../query_utils","../style_layer","160","multiPolygonIntersectsMultiPolygon","FillExtrusionStyleLayer","../../data/bucket/fill_extrusion_bucket","161","FillStyleLayer","oldTransition","../../data/bucket/fill_bucket","162","getLineWidth","offsetLine","multiPolygonIntersectsBufferedMultiLine","LineStyleLayer","../../data/bucket/line_bucket","163","SymbolStyleLayer","../../data/bucket/symbol_bucket","164","_layerConfigs","../style-spec/group_by_layout","165","interpZoomTransitioned","fakeZoomHistory","startTime","zoomTransitioned","_calculateTargetValue","easeCubicInOut","166","../style-spec/validate_style.min","167","168","checkMaxAngle","angleDelta","shift","169","170","StructType","anchorPointX","anchorPointY","171","_addLineCollisionBoxes","172","intersectionTests","ignoredGrid","reverseRotationMatrix","tempCollisionBox","edges","bbox0","bbox1","bbox2","bbox3","offsetX","offsetY","unadjustedMaxScale","getPlacementScale","polygonIntersectsPolygon","../util/intersection_tests","173","resample","../symbol/anchor","./check_max_angle","174","175","signedDistanceFromCamera","anchorX","anchorY","placementZoom","evaluateSizeForFeature","placeGlyphsAlongLine","notEnoughRoom","needsFlipping","hideGlyphs","numGlyphs","lineOffsetX","lineOffsetY","glyphStartIndex","lineStartIndex","lineLength","placeGlyphAlongLine","projectTruncatedLineSegment","offscreenPoint","./symbol_size","176","positionedGlyphs","../style/parse_glyph_pbf","177","breakLines","substring","trim","determineLineBreaks","shapeLines","determineAverageLineWidth","calculateBadness","calculatePenalty","evaluateBreak","badness","priorBreak","leastBadBreaks","whitespace","breakable","charAllowsIdeographicBreaking","getAnchorAlignment","horizontalAlign","verticalAlign","charHasUprightVerticalOrientation","justifyLine","align","../util/script_detection","../util/verticalize_punctuation","178","lowerSize","upperSize","179","toLocaleUpperCase","toLocaleLowerCase","180","DOM","handlers","scrollZoom","boxZoom","dragRotate","dragPan","keyboard","doubleClickZoom","touchZoomRotate","mousePos","isActive","toElement","target","parentNode","touches","preventDefault","lngLat","originalEvent","touchPos","lngLats","getCanvasContainer","interactive","../util/dom","./handler/box_zoom","./handler/dblclick_zoom","./handler/drag_pan","./handler/drag_rotate","./handler/keyboard","./handler/scroll_zoom","./handler/touch_zoom_rotate","181","Camera","moving","_bearingSnap","bearingSnap","jumpTo","panBy","panTo","easeTo","zoomIn","zoomOut","getBearing","rotateTo","resetNorth","snapToNorth","getPitch","fitBounds","linear","flyTo","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","182","getDefaultPosition","compact","_map","_container","classList","_updateAttributions","_updateEditLink","_updateData","_updateCompact","_editLink","querySelector","styleOwner","styleId","_hash","getHashString","owner","attribution","innerHTML","offsetWidth","../../util/config","../../util/dom","183","_fullscreen","_fullscreenchange","_className","_mapContainer","getContainer","_checkFullscreenSupport","_setupUI","display","removeEventListener","_changeIcon","fullscreenEnabled","mozFullScreenEnabled","msFullscreenEnabled","webkitFullscreenEnabled","_fullscreenButton","setAttribute","_onClickFullscreen","_isFullscreen","fullscreenElement","mozFullScreenElement","webkitFullscreenElement","msFullscreenElement","toggle","exitFullscreen","mozCancelFullScreen","msExitFullscreen","webkitCancelFullScreen","requestFullscreen","mozRequestFullScreen","msRequestFullscreen","webkitRequestFullscreen","../../util/window","184","checkGeolocationSupport","supportsGeolocation","permissions","then","geolocation","defaultOptions","positionOptions","enableHighAccuracy","timeout","fitBoundsOptions","trackUserLocation","showUserLocation","className","_geolocationWatchID","clearWatch","_userLocationDotMarker","_onSuccess","_lastKnownPosition","_watchState","_geolocateButton","_updateMarker","_updateCamera","_dotElement","_finish","longitude","latitude","accuracy","geolocateSource","setLngLat","addTo","_onError","_clearWatch","_timeoutId","_onClickGeolocate","watchPosition","getCurrentPosition","../../geo/lng_lat","../../util/evented","../marker","185","LogoControl","appendChild","_updateLogo","_logoRequired","mapbox_logo","186","DragRotateHandler","_zoomInButton","_createButton","_zoomOutButton","_compass","_compassArrow","_rotateCompassArrow","_handler","button","element","pitchWithRotate","../handler/drag_rotate","187","updateScale","maxWidth","clientHeight","getDistance","setScale","getRoundNum","acos","_onMove","188","189","BoxZoomHandler","_el","isEnabled","_enabled","_active","_onMouseDown","shiftKey","_onMouseMove","_onKeyDown","_onMouseUp","disableDrag","_startPos","_box","_fireEvent","setTransform","boxZoomBounds","keyCode","enableDrag","../../geo/lng_lat_bounds","190","DoubleClickZoomHandler","_onDblClick","191","inertiaEasing","DragPanHandler","_onDown","_ignoreEvent","_onTouchEnd","_pos","_inertia","_drainInertiaBuffer","_onUp","ctrlKey","192","_button","_pitchWithRotate","InstallTrigger","platform","capture","193","easeOut","KeyboardHandler","altKey","metaKey","194","ua","firefox","safari","ScrollZoomHandler","_onWheel","_aroundCenter","deltaY","deltaMode","WheelEvent","DOM_DELTA_PIXEL","DOM_DELTA_LINE","wheelDeltaY","_time","_type","_lastValue","_timeout","_onTimeout","../../util/browser","195","TouchZoomRotateHandler","_onStart","disableRotation","_rotationDisabled","enableRotation","_startVec","_startScale","_startBearing","_gestureIntent","_onEnd","196","Hash","_onHashChange","_updateHash","location","hash","history","replaceState","197","removeChild","HTMLImageElement","bindHandlers","attributionControl","preserveDrawingBuffer","trackResize","refreshExpiredTiles","maxTileCacheSize","transformRequest","_interactive","_failIfMajorPerformanceCaveat","_preserveDrawingBuffer","_trackResize","container","maxBounds","setMaxBounds","_setupContainer","_setupPainter","_update","_onWindowOnline","_onWindowResize","_classes","classes","setClasses","addControl","logoPosition","_onData","_onDataLoading","repaint","_controlPositions","insertBefore","firstChild","removeControl","addClass","_classOptions","removeClass","hasClass","getClasses","_containerDimensions","_resizeCanvas","getBounds","getMaxBounds","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","./events","./hash","198","smartWrap","_offset","_element","_popup","_onMapClick","getLngLat","_lngLat","getElement","setPopup","togglePopup","getPopup","isOpen","../util/smart_wrap","199","normalizeOffset","closeButton","closeOnClick","_onClickClose","_content","setText","setDOMContent","createTextNode","setHTML","createDocumentFragment","_createContent","_closeButton","_tip","200","mapId","callbacks","callbackID","receive","postMessage","targetMapId","sourceMapId","./util","201","makeRequest","XMLHttpRequest","open","headers","setRequestHeader","withCredentials","credentials","sameOrigin","protocol","host","Unknown","AJAXError","onerror","statusText","onload","response","responseType","getResponseHeader","revokeObjectURL","src","onloadstart","crossOrigin","./window","202","performance","requestAnimationFrame","mozRequestAnimationFrame","webkitRequestAnimationFrame","msRequestAnimationFrame","cancelAnimationFrame","mozCancelAnimationFrame","webkitCancelAnimationFrame","msCancelAnimationFrame","drawImage","supportsWebp","webpImgTest","203","WebWorkify","workerURL","../../source/worker","../window","webworkify","204","205","compareAreas","quickselect","calculateSignedArea","206","API_URL","REQUIRE_ACCESS_TOKEN","207","_stringToNumber","_numberToString","208","workerPool","actors","currentActor","acquire","release","./actor","209","testProp","docStyle","userSelect","documentElement","selectProp","transformProp","suppressClick","stopPropagation","getBoundingClientRect","clientX","clientLeft","clientY","clientTop","changedTouches","210","_addEventListener","_removeEventListener","_listeners","_oneTimeListeners","listens","_eventedParent","_eventedParentData","211","compareMax","Cell","pointToPolygonDist","SQRT2","distToSegmentSquared","getCentroidCell","Queue","./intersection_tests","tinyqueue","212","globalWorkerPool","WorkerPool","./worker_pool","213","createImage","RangeError","resizeImage","copyImage","214","polygonContainsPoint","lineIntersectsLine","pointIntersectsBufferedLine","multiPolygonContainsPoint","lineIntersectsBufferedLine","lineSegmentIntersectsLineSegment","isCounterClockwise","215","unicodeBlockLookup","Latin-1 Supplement","Arabic","Arabic Supplement","Arabic Extended-A","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","Arabic Presentation Forms-A","Vertical Forms","CJK Compatibility Forms","Small Form Variants","Arabic Presentation Forms-B","Halfwidth and Fullwidth Forms","216","LRUCache","order","217","makeAPIURL","parseUrl","authority","path","formatUrl","help","replaceTempAccessToken","urlRe","imageExtensionRe","./browser","./config","218","allowsIdeographicBreaking","charAllowsLetterSpacing","charHasNeutralVerticalOrientation","charHasRotatedVerticalOrientation","./is_char_in_unicode_block","219","220","structArrayTypeCache","sizeOf","Struct","createAccessors","StructArray","createEmplaceBack","_usedTypes","viewTypes","BYTES_PER_ELEMENT","getArrayViewName","createMemberComponentString","Int8Array","Uint16Array","Uint32Array","_structArray","_pos1","_pos2","_pos4","_pos8","isTransferred","capacity","_refreshViews","_trim","uint8","221","frequency","throttledFunction","lastInvocation","pendingInvocation","222","223","warnOnceHistory","isClosedPolygon","@mapbox/unitbezier","224","Feature","_vectorTileFeature","_z","_x","_y","toJSON","225","¢","£","¥","¦","¬","¯","–","—","‘","’","“","”","…","‧","₩","、","。","〈","〉","《","》","「","」","『","』","【","】","〔","〕","〖","〗","!","(",")",",","-",".",":",";","<",">","?","[","]","_","{","|","}","⦅","⦆","。","「","」","./script_detection","226","WebWorker","active","workers","terminate","../","./web_worker","__webpack_exports__","__WEBPACK_IMPORTED_MODULE_0_mapbox_gl__","__WEBPACK_IMPORTED_MODULE_0_mapbox_gl___default","__WEBPACK_IMPORTED_MODULE_1_vue__","__WEBPACK_IMPORTED_MODULE_2__Geshem_vue__","el","setImmediate","isUndef","isDef","isTrue","isFalse","obj","isPlainObject","_toString","isValidArrayIndex","val","toNumber","makeMap","str","expectsLowerCase","list","arr","item","hasOwn","cached","fn","boundFn","_length","ret","_from","toObject","res","looseEqual","isObjectA","isObjectB","isArrayA","isArrayB","keysA","keysB","looseIndexOf","called","isReserved","def","parsePath","bailRE","Ctor","pushTarget","_target","Dep","targetStack","popTarget","createTextVNode","VNode","cloneVNode","vnode","deep","cloned","tag","elm","componentOptions","asyncFactory","ns","isStatic","isComment","isCloned","cloneVNodes","vnodes","len","protoAugment","copyAugment","observe","asRootData","ob","__ob__","Observer","observerState","shouldConvert","isServerRendering","_isVue","vmCount","defineReactive","customSetter","shallow","dep","setter","childOb","depend","dependArray","newVal","notify","del","mergeData","toVal","fromVal","mergeDataOrFn","parentVal","childVal","vm","instanceData","defaultData","mergeHook","mergeAssets","normalizeProps","props","camelize","normalizeInject","inject","normalized","normalizeDirectives","dirs","directives","mergeOptions","child","mergeField","strat","strats","defaultStrat","extendsFrom","extends","mixins","resolveAsset","warnMissing","assets","camelizedId","PascalCaseId","capitalize","validateProp","propOptions","propsData","prop","absent","isType","hyphenate","getPropDefaultValue","prevShouldConvert","$options","_props","handleError","err","info","cur","$parent","hooks","errorCaptured","globalHandleError","errorHandler","logError","inBrowser","flushCallbacks","pending","copies","withMacroTask","_withTask","useMacroTask","cb","macroTimerFunc","microTimerFunc","Promise","resolve","createFnInvoker","fns","invoker","arguments$1","updateListeners","oldOn","remove$$1","old","event","normalizeEvent","passive","mergeVNodeHook","hookKey","hook","wrappedHook","oldHook","merged","extractPropsFromVNodeData","attrs","checkProp","preserve","simpleNormalizeChildren","normalizeChildren","normalizeArrayChildren","isTextNode","node","nestedIndex","lastIndex","last","_isVList","ensureCtor","comp","hasSymbol","Symbol","toStringTag","createAsyncPlaceholder","factory","createEmptyVNode","asyncMeta","resolveAsyncComponent","baseCtor","errorComp","resolved","loadingComp","contexts","sync","forceRender","$forceUpdate","reject","reason","component","isAsyncPlaceholder","getFirstComponentChild","initEvents","_events","_hasHookEvent","_parentListeners","updateComponentListeners","$once","$on","remove$1","$off","oldListeners","resolveSlots","slots","defaultSlot","slot","functionalContext","isWhitespace","resolveScopedSlots","initLifecycle","abstract","$children","$refs","_watcher","_inactive","_directInactive","_isMounted","_isDestroyed","_isBeingDestroyed","mountComponent","hydrating","$el","callHook","updateComponent","Watcher","$vnode","updateChildComponent","parentVnode","renderChildren","hasChildren","_renderChildren","scopedSlots","$scopedSlots","emptyObject","_parentVnode","_vnode","$attrs","$listeners","propKeys","_propKeys","$slots","isInInactiveTree","activateChildComponent","direct","deactivateChildComponent","$emit","resetSchedulerState","activatedChildren","waiting","flushing","flushSchedulerQueue","watcher","activatedQueue","updatedQueue","callActivatedHooks","callUpdatedHooks","devtools","queueActivatedComponent","queueWatcher","traverse","seenObjects","_traverse","isA","depId","proxy","sourceKey","sharedPropertyDefinition","initState","_watchers","opts","initProps","methods","initMethods","initData","computed","initComputed","watch","nativeWatch","initWatch","propsOptions","isRoot","getData","watchers","_computedWatchers","isSSR","userDef","computedWatcherOptions","defineComputed","shouldCache","createComputedGetter","evaluate","handler","createWatcher","keyOrFn","$watch","initProvide","provide","_provided","initInjections","resolveInject","Reflect","ownKeys","provideKey","provideDefault","renderList","renderSlot","fallback","bindObject","scopedSlotFn","slotNodes","resolveFilter","checkKeyCodes","eventKeyCode","builtInAlias","eventKeyName","keyCodes","bindObjectProps","asProp","isSync","isReservedAttribute","mustUseProp","domProps","$event","renderStatic","isInFor","renderFns","staticRenderFns","tree","_renderProxy","markStatic","markOnce","isOnce","markStaticNode","bindObjectListeners","existing","ours","installRenderHelpers","_o","_n","_s","_l","_t","_q","_i","_m","_f","_k","_b","_v","_e","_u","_g","FunctionalRenderContext","injections","contextVm","isCompiled","_compiled","needNormalization","_scopeId","_c","functionalScopeId","createFunctionalComponent","mergeProps","renderContext","functionalOptions","createComponent","_base","cid","resolveConstructorOptions","model","transformModel","functional","nativeOn","mergeHooks","createComponentInstanceForVnode","parentElm","refElm","vnodeComponentOptions","_isComponent","_componentTag","_parentElm","_refElm","inlineTemplate","hooksToMerge","fromParent","componentVNodeHooks","mergeHook$1","one","two","normalizationType","alwaysNormalize","ALWAYS_NORMALIZE","_createElement","is","SIMPLE_NORMALIZE","getTagNamespace","isReservedTag","parsePlatformTagName","applyNS","force","initRender","$createElement","parentData","initInternalComponent","super","superOptions","modifiedOptions","resolveModifiedOptions","extendOptions","modified","latest","extended","sealed","sealedOptions","dedupe","Vue$3","_init","initUse","Vue","use","plugin","installedPlugins","_installedPlugins","unshift","install","initMixin$1","mixin","initExtend","Super","SuperId","cachedCtors","_Ctor","Sub","initProps$1","initComputed$1","ASSET_TYPES","Comp","initAssetRegisters","definition","getComponentName","matches","pruneCache","keepAliveInstance","cachedNode","pruneCacheEntry","current","cached$$1","componentInstance","$destroy","genClassForVnode","childNode","mergeClassData","renderClass","staticClass","class","dynamicClass","stringifyClass","stringifyArray","stringifyObject","stringified","isSVG","isUnknownElement","unknownElementCache","HTMLUnknownElement","HTMLElement","selected","createElement$1","tagName","multiple","createElementNS","namespace","namespaceMap","createComment","newNode","referenceNode","nextSibling","setTextContent","textContent","registerRef","isRemoval","refs","refInFor","sameVnode","sameInputType","typeA","typeB","isTextInputType","createKeyToOldIdx","beginIdx","endIdx","updateDirectives","oldVnode","oldDir","dir","isCreate","emptyNode","isDestroy","oldDirs","normalizeDirectives$1","newDirs","dirsWithInsert","dirsWithPostpatch","oldValue","callHook$1","componentUpdated","inserted","callInsert","modifiers","emptyModifiers","getRawDirName","rawName","updateAttrs","inheritAttrs","oldAttrs","setAttr","isIE9","isEdge","isXlink","removeAttributeNS","xlinkNS","getXlinkProp","isEnumeratedAttr","removeAttribute","isBooleanAttr","isFalsyAttrValue","setAttributeNS","updateClass","oldData","cls","transitionClass","_transitionClasses","_prevClass","parseFilters","pushFilter","filters","lastFilterIndex","expression","inSingle","inDouble","inTemplateString","inRegex","curly","paren","validDivisionCharRE","wrapFilter","baseWarn","msg","pluckModuleFunction","addProp","addAttr","addDirective","arg","addHandler","important","events","native","nativeEvents","newHandler","getBindingAttr","getStatic","dynamicValue","getAndRemoveAttr","staticValue","removeFromMap","attrsMap","attrsList","genComponentModel","valueExpression","assignment","genAssignmentCode","parseModel","index$1","expressionPos","expressionEndPos","eof","chr","isStringStart","parseString","parseBracket","inBracket","stringQuote","_warn","warn$1","genSelect","genCheckboxModel","genRadioModel","genDefaultModel","valueBinding","trueValueBinding","falseValueBinding","selectedVal","lazy","needCompositionGuard","RANGE_TOKEN","normalizeEvents","isIE","CHECKBOX_RADIO_TOKEN","change","createOnceHandler","target$1","onceHandler","remove$2","add$1","once$$1","supportsPassive","updateDOMListeners","updateDOMProps","oldProps","childNodes","_value","strCur","shouldUpdateValue","checkVal","composing","isDirty","isInputChanged","notInFocus","activeElement","_vModifiers","normalizeStyleData","normalizeStyleBinding","staticStyle","bindingStyle","parseStyleText","checkChild","styleData","updateStyle","oldStaticStyle","oldStyleBinding","normalizedStyle","oldStyle","newStyle","setProp","getAttribute","tar","resolveTransition","css","autoCssTransition","nextFrame","raf","addTransitionClass","transitionClasses","removeTransitionClass","whenTransitionEnds","expectedType","getTransitionInfo","propCount","TRANSITION","transitionEndEvent","animationEndEvent","ended","end","onEnd","getComputedStyle","transitionDelays","transitionProp","transitionDurations","transitionTimeout","getTimeout","animationDelays","animationProp","animationDurations","animationTimeout","ANIMATION","hasTransform","transformRE","delays","durations","toMs","enter","toggleDisplay","_leaveCb","cancelled","_enterCb","nodeType","enterClass","enterToClass","enterActiveClass","appearClass","appearToClass","appearActiveClass","beforeEnter","afterEnter","enterCancelled","beforeAppear","appear","afterAppear","appearCancelled","activeInstance","transitionNode","isAppear","isRootInsert","startClass","activeClass","toClass","beforeEnterHook","enterHook","afterEnterHook","enterCancelledHook","explicitEnterDuration","expectsCSS","userWantsControl","getHookArgumentsLength","show","pendingNode","_pending","isValidDuration","leave","rm","performLeave","beforeLeave","leaveClass","leaveActiveClass","leaveToClass","explicitLeaveDuration","afterLeave","leaveCancelled","delayLeave","invokerFns","_enter","setSelected","actuallySetSelected","isMultiple","option","getValue","selectedIndex","hasNoMatchingOption","onCompositionStart","onCompositionEnd","trigger","createEvent","initEvent","dispatchEvent","locateNode","getRealChild","compOptions","extractTransitionData","key$1","placeholder","rawChild","hasParentTransition","isSameChild","oldChild","callPendingCbs","_moveCb","recordPosition","newPos","applyTranslation","oldPos","moved","WebkitTransform","transitionDuration","parseText","delimiters","tagRE","buildRegex","defaultTagRE","transformNode","classBinding","genData","transformNode$1","styleBinding","genData$1","decodeAttr","shouldDecodeNewlines","encodedAttrWithNewLines","encodedAttr","decodingMap","parseHTML","html","parseEndTag","lowerCasedTagName","lowerCasedTag","lastTag","expectHTML","isUnaryTag$$1","isUnaryTag","no","canBeLeftOpenTag$$1","canBeLeftOpenTag","isPlainTextElement","endTagLength","stackedTag","reStackedTag","reCache","rest$1","endTag","shouldIgnoreFirstNewline","chars","textEnd","comment","commentEnd","shouldKeepComment","conditionalComment","conditionalEnd","doctypeMatch","doctype","endTagMatch","curIndex","startTagMatch","startTagOpen","attr","startTagClose","attribute","unarySlash","isNonPhrasingTag","unary","IS_REGEX_CAPTURING_BROKEN","rest","createASTElement","makeAttrsMap","template","endPre","pre","inVPre","platformIsPreTag","inPre","warn$2","isPreTag","platformMustUseProp","platformGetTagNamespace","transforms","preTransforms","postTransforms","root","currentParent","preserveWhitespace","comments","guardIESVGBug","isForbiddenTag","forbidden","processPre","processRawAttrs","processed","processFor","processIf","processOnce","processElement","if","elseif","else","addIfCondition","block","processIfConditions","slotScope","plain","slotTarget","i$1","lastNode","isTextTag","decodeHTMLCached","processKey","processRef","processSlot","processComponent","processAttrs","checkInFor","inMatch","forAliasRE","for","alias","iteratorMatch","forIteratorRE","iterator1","iterator2","findPrevElement","condition","ifConditions","slotName","isProp","dirRE","hasBindings","parseModifiers","modifierRE","bindRE","camel","onRE","argMatch","argRE","ieNSBug","ieNSPrefix","preTransformNode","typeBinding","ifCondition","ifConditionExtra","branch0","cloneASTElement","addRawAttr","branch1","branch2","optimize","isStaticKey","genStaticKeysCached","staticKeys","isPlatformReservedTag","markStatic$1","markStaticRoots","genStaticKeys$1","static","l$1","staticInFor","staticRoot","isBuiltInTag","isDirectChildOfTemplateFor","genHandlers","genHandler","isMethodPath","simplePathRE","isFunctionExpression","fnExpRE","genModifierCode","modifierCode","genGuard","keyModifier","genKeyFilter","genFilterCode","keyVal","wrapListeners","bind$1","wrapData","generate","ast","CodegenState","genElement","staticProcessed","genStatic","onceProcessed","genOnce","forProcessed","genFor","ifProcessed","genIf","genSlot","genComponent","genData$2","genChildren","onceId","altGen","altEmpty","genIfConditions","conditions","genTernaryExp","altHelper","genDirectives","dataGenFns","genProps","genScopedSlots","genInlineTemplate","needRuntime","hasRuntime","gen","inlineRenderFns","genScopedSlot","genForScopedSlot","checkSkip","altGenElement","altGenNode","el$1","getNormalizationType","maybeComponent","genNode","needsNormalization","genComment","genText","transformSpecialNewlines","bind$$1","componentName","errors","createCompileToFunctionFn","compiled","fnGenErrors","getOuterHTML","outerHTML","cloneNode","camelizeRE","hyphenateRE","SSR_ATTR","LIFECYCLE_HOOKS","optionMergeStrategies","silent","productionTip","warnHandler","ignoredElements","isReservedAttr","_lifecycleHooks","hasProto","UA","isAndroid","isIOS","_isServer","_Set","VUE_ENV","__VUE_DEVTOOLS_GLOBAL_HOOK__","Set","subs","addSub","removeSub","addDep","raw","arrayProto","arrayMethods","method","original","observeArray","arrayKeys","walk","items","MessageChannel","channel","port","port2","port1","onmessage","uid$2","expOrFn","user","deps","newDeps","depIds","newDepIds","cleanupDeps","this$1","tmp","teardown","init","$mount","keepAlive","mountedNode","prepatch","uid$1","_uid","_self","dataDef","propsDef","$set","$delete","immediate","hookRE","cbs","prevEl","prevVnode","prevActiveInstance","__patch__","__vue__","$nextTick","_rendered","patternTypes","KeepAlive","include","exclude","created","destroyed","builtInComponents","configDef","delete","ssrContext","emptyStyle","acceptValue","svg","math","isHTMLTag","nodeOps","baseModules","klass","cssText","listDelimiter","propertyDelimiter","cssVarRE","importantRE","setProperty","normalizedName","normalize","vendorNames","capName","hasTransition","ontransitionend","onwebkittransitionend","onanimationend","onwebkitanimationend","activate","platformModules","patch","backend","emptyNodeAt","createRmCb","childElm","createElm","insertedVnodeQueue","nested","setScope","createChildren","invokeCreateHooks","isReactivated","initComponent","reactivateComponent","pendingInsert","isPatchable","innerNode","ref$$1","ancestor","addVnodes","startIdx","invokeDestroyHook","removeVnodes","ch","removeAndInvokeRemoveHook","updateChildren","oldCh","newCh","removeOnly","oldKeyToIdx","idxInOld","vnodeToMove","oldStartIdx","newStartIdx","oldEndIdx","oldStartVnode","oldEndVnode","newEndIdx","newStartVnode","newEndVnode","canMove","patchVnode","findIdxInOld","hydrate","postpatch","invokeInsertHook","hasChildNodes","childrenMatch","isRenderedModule","isInitialPatch","isRealElement","hasAttribute","oldElm","parentElm$1","patchable","i$2","vmodel","model$1","_vOptions","prevOptions","curOptions","transition$$1","originalDisplay","__vOriginalDisplay","platformDirectives","transitionProps","mode","Transition","_leaving","oldRawChild","delayedLeave","moveClass","TransitionGroup","prevChildren","rawChildren","transitionData","kept","removed","c$1","beforeUpdate","updated","hasMove","_reflow","body","propertyName","_hasMove","platformComponents","decoder","content","encoded","regexEscapeRE","close","klass$1","style$1","he","ncname","qnameCapture","&lt;","&gt;","&quot;","&amp;","&#10;","isIgnoreNewlineTag","model$2","modules$1","directives$1","baseOptions","esc","tab","space","up","down","prevent","ctrl","alt","meta","baseDirectives","cloak","createCompiler","baseCompile","finalOptions","tips","tip","compileToFunctions","idToTemplate","mount","Timeout","clearFn","_id","_clearFn","setInterval","clearInterval","enroll","msecs","_idleTimeoutId","_idleTimeout","unenroll","_unrefActive","clearImmediate","task","tasksByHandle","nextHandle","registerImmediate","handle","runIfPresent","currentlyRunningATask","doc","attachTo","postMessageIsAsynchronous","oldOnMessage","messagePrefix","onGlobalMessage","attachEvent","script","onreadystatechange","marker","injectStyle","__WEBPACK_IMPORTED_MODULE_0__babel_loader_node_modules_vue_loader_lib_selector_type_script_index_0_Geshem_vue__","__WEBPACK_IMPORTED_MODULE_1__node_modules_vue_loader_lib_template_compiler_index_id_data_v_7d220ade_hasScoped_false_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_Geshem_vue__","normalizeComponent","__vue_styles__","Component","locals","cssWithMappingToString","useSourceMap","cssMapping","btoa","sourceMapping","toComment","sourceRoot","sourceMap","unescape","encodeURIComponent","mediaQuery","alreadyImportedModules","addStylesToDom","domStyle","stylesInDom","parts","addStyle","createStyleElement","styleElement","head","isProduction","isOldIE","styleIndex","singletonCounter","singletonElement","applyToSingletonTag","applyToTag","newObj","media","styleSheet","replaceText","cssNode","hasDocument","DEBUG","listToStyles","getElementsByTagName","_isProduction","newList","mayRemove","textStore","replacement","newStyles","part","rawScriptExports","compiledTemplate","functionalTemplate","injectStyles","scopeId","moduleIdentifier","esModule","scriptExports","__VUE_SSR_CONTEXT__","_registeredComponents","_ssrRegister","beforeCreate","_injectStyles","_defineProperty","__WEBPACK_IMPORTED_MODULE_0_vue_slider_component__","__WEBPACK_IMPORTED_MODULE_0_vue_slider_component___default","__WEBPACK_IMPORTED_MODULE_1_mapbox_gl__","__WEBPACK_IMPORTED_MODULE_1_mapbox_gl___default","vue-slider","_ref","imgs","slider","rasterCoords","280","curImg","addRadarSource","addRadarLayer","removeRadarLayer","flag","currentValue","currentSlider","dotWidthVal","dotWidth","dotSize","dotHeightVal","dotHeight","disabled","piecewise","tooltip","eventType","direction","clickable","realTime","piecewiseLabel","sliderStyle","tooltipDir","formatter","piecewiseStyle","piecewiseActiveStyle","processStyle","bgStyle","tooltipStyle","labelStyle","labelActiveStyle","flowDirection","tooltipDirection","isRange","tooltipStatus","tooltipClass","isDisabled","disabledClass","dot0","dot1","dot","currentIndex","spacing","indexRange","gap","limit","valueLimit","wrapStyles","sliderStyles","tooltipStyles","elemStyles","dotStyles","piecewiseDotStyle","piecewiseDotWrap","label","formatting","inRange","setValue","limitValue","refresh","bindEvents","moveEnd","unbindEvents","getPos","getStaticData","pageY","wrapClick","setValueOnPos","moveStart","targetTouches","isDiff","syncValue","setPosition","setCurrentValue","setIndex","setTransitionTime","msTransform","WebkitTransitionDuration","getIndex","elem","pageYOffset","scrollTop","mounted","beforeDestroy","vue-slider-has-label","click","aria-hidden","mousedown","touchstart","first","__r","_vm","_h","dot-size","$$v","esExports"],"mappings":"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","file":"build.js","sourcesContent":["/******/ (function(modules) { // webpackBootstrap\n/******/ \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// 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 = \"/static/js/\";\n/******/\n/******/ \t// Load entry module and return exports\n/******/ \treturn __webpack_require__(__webpack_require__.s = 2);\n/******/ })\n/************************************************************************/\n/******/ ([\n/* 0 */\n/***/ (function(module, exports) {\n\nvar 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/* 1 */\n/***/ (function(module, exports, __webpack_require__) {\n\n/* WEBPACK VAR INJECTION */(function(global) {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;o<r.length;o++)s(r[o]);return s})({1:[function(_dereq_,module,exports){\n!function(t,n){\"object\"==typeof exports&&\"undefined\"!=typeof module?module.exports=n():\"function\"==typeof define&&define.amd?define(n):t.glMatrix=n()}(this,function(){\"use strict\";function t(t,n,r){var e=n[0],a=n[1],o=n[2];return t[0]=e*r[0]+a*r[3]+o*r[6],t[1]=e*r[1]+a*r[4]+o*r[7],t[2]=e*r[2]+a*r[5]+o*r[8],t}function n(t,n,r){var e=n[0],a=n[1],o=n[2],u=n[3];return t[0]=r[0]*e+r[4]*a+r[8]*o+r[12]*u,t[1]=r[1]*e+r[5]*a+r[9]*o+r[13]*u,t[2]=r[2]*e+r[6]*a+r[10]*o+r[14]*u,t[3]=r[3]*e+r[7]*a+r[11]*o+r[15]*u,t}function r(){var t=new Float32Array(4);return t[0]=1,t[1]=0,t[2]=0,t[3]=1,t}function e(t,n,r){var e=n[0],a=n[1],o=n[2],u=n[3],i=Math.sin(r),c=Math.cos(r);return t[0]=e*c+o*i,t[1]=a*c+u*i,t[2]=e*-i+o*c,t[3]=a*-i+u*c,t}function a(t,n,r){var e=n[0],a=n[1],o=n[2],u=n[3],i=r[0],c=r[1];return t[0]=e*i,t[1]=a*i,t[2]=o*c,t[3]=u*c,t}function o(){var t=new Float32Array(9);return t[0]=1,t[1]=0,t[2]=0,t[3]=0,t[4]=1,t[5]=0,t[6]=0,t[7]=0,t[8]=1,t}function u(t,n){var r=Math.sin(n),e=Math.cos(n);return t[0]=e,t[1]=r,t[2]=0,t[3]=-r,t[4]=e,t[5]=0,t[6]=0,t[7]=0,t[8]=1,t}function i(){var t=new Float32Array(16);return t[0]=1,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=1,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[10]=1,t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,t}function c(t){return t[0]=1,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=1,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[10]=1,t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,t}function f(t,n){var r=n[0],e=n[1],a=n[2],o=n[3],u=n[4],i=n[5],c=n[6],f=n[7],v=n[8],s=n[9],l=n[10],M=n[11],h=n[12],m=n[13],y=n[14],d=n[15],p=r*i-e*u,w=r*c-a*u,A=r*f-o*u,F=e*c-a*i,x=e*f-o*i,b=a*f-o*c,g=v*m-s*h,j=v*y-l*h,R=v*d-M*h,X=s*y-l*m,Z=s*d-M*m,k=l*d-M*y,q=p*k-w*Z+A*X+F*R-x*j+b*g;return q?(q=1/q,t[0]=(i*k-c*Z+f*X)*q,t[1]=(a*Z-e*k-o*X)*q,t[2]=(m*b-y*x+d*F)*q,t[3]=(l*x-s*b-M*F)*q,t[4]=(c*R-u*k-f*j)*q,t[5]=(r*k-a*R+o*j)*q,t[6]=(y*A-h*b-d*w)*q,t[7]=(v*b-l*A+M*w)*q,t[8]=(u*Z-i*R+f*g)*q,t[9]=(e*R-r*Z-o*g)*q,t[10]=(h*x-m*A+d*p)*q,t[11]=(s*A-v*x-M*p)*q,t[12]=(i*j-u*X-c*g)*q,t[13]=(r*X-e*j+a*g)*q,t[14]=(m*w-h*F-y*p)*q,t[15]=(v*F-s*w+l*p)*q,t):null}function v(t,n,r){var e=n[0],a=n[1],o=n[2],u=n[3],i=n[4],c=n[5],f=n[6],v=n[7],s=n[8],l=n[9],M=n[10],h=n[11],m=n[12],y=n[13],d=n[14],p=n[15],w=r[0],A=r[1],F=r[2],x=r[3];return t[0]=w*e+A*i+F*s+x*m,t[1]=w*a+A*c+F*l+x*y,t[2]=w*o+A*f+F*M+x*d,t[3]=w*u+A*v+F*h+x*p,w=r[4],A=r[5],F=r[6],x=r[7],t[4]=w*e+A*i+F*s+x*m,t[5]=w*a+A*c+F*l+x*y,t[6]=w*o+A*f+F*M+x*d,t[7]=w*u+A*v+F*h+x*p,w=r[8],A=r[9],F=r[10],x=r[11],t[8]=w*e+A*i+F*s+x*m,t[9]=w*a+A*c+F*l+x*y,t[10]=w*o+A*f+F*M+x*d,t[11]=w*u+A*v+F*h+x*p,w=r[12],A=r[13],F=r[14],x=r[15],t[12]=w*e+A*i+F*s+x*m,t[13]=w*a+A*c+F*l+x*y,t[14]=w*o+A*f+F*M+x*d,t[15]=w*u+A*v+F*h+x*p,t}function s(t,n,r){var e,a,o,u,i,c,f,v,s,l,M,h,m=r[0],y=r[1],d=r[2];return n===t?(t[12]=n[0]*m+n[4]*y+n[8]*d+n[12],t[13]=n[1]*m+n[5]*y+n[9]*d+n[13],t[14]=n[2]*m+n[6]*y+n[10]*d+n[14],t[15]=n[3]*m+n[7]*y+n[11]*d+n[15]):(e=n[0],a=n[1],o=n[2],u=n[3],i=n[4],c=n[5],f=n[6],v=n[7],s=n[8],l=n[9],M=n[10],h=n[11],t[0]=e,t[1]=a,t[2]=o,t[3]=u,t[4]=i,t[5]=c,t[6]=f,t[7]=v,t[8]=s,t[9]=l,t[10]=M,t[11]=h,t[12]=e*m+i*y+s*d+n[12],t[13]=a*m+c*y+l*d+n[13],t[14]=o*m+f*y+M*d+n[14],t[15]=u*m+v*y+h*d+n[15]),t}function l(t,n,r){var e=r[0],a=r[1],o=r[2];return t[0]=n[0]*e,t[1]=n[1]*e,t[2]=n[2]*e,t[3]=n[3]*e,t[4]=n[4]*a,t[5]=n[5]*a,t[6]=n[6]*a,t[7]=n[7]*a,t[8]=n[8]*o,t[9]=n[9]*o,t[10]=n[10]*o,t[11]=n[11]*o,t[12]=n[12],t[13]=n[13],t[14]=n[14],t[15]=n[15],t}function M(t,n,r){var e=Math.sin(r),a=Math.cos(r),o=n[4],u=n[5],i=n[6],c=n[7],f=n[8],v=n[9],s=n[10],l=n[11];return n!==t&&(t[0]=n[0],t[1]=n[1],t[2]=n[2],t[3]=n[3],t[12]=n[12],t[13]=n[13],t[14]=n[14],t[15]=n[15]),t[4]=o*a+f*e,t[5]=u*a+v*e,t[6]=i*a+s*e,t[7]=c*a+l*e,t[8]=f*a-o*e,t[9]=v*a-u*e,t[10]=s*a-i*e,t[11]=l*a-c*e,t}function h(t,n,r){var e=Math.sin(r),a=Math.cos(r),o=n[0],u=n[1],i=n[2],c=n[3],f=n[4],v=n[5],s=n[6],l=n[7];return n!==t&&(t[8]=n[8],t[9]=n[9],t[10]=n[10],t[11]=n[11],t[12]=n[12],t[13]=n[13],t[14]=n[14],t[15]=n[15]),t[0]=o*a+f*e,t[1]=u*a+v*e,t[2]=i*a+s*e,t[3]=c*a+l*e,t[4]=f*a-o*e,t[5]=v*a-u*e,t[6]=s*a-i*e,t[7]=l*a-c*e,t}function m(t,n,r,e,a){var o=1/Math.tan(n/2),u=1/(e-a);return t[0]=o/r,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=o,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[10]=(a+e)*u,t[11]=-1,t[12]=0,t[13]=0,t[14]=2*a*e*u,t[15]=0,t}function y(t,n,r,e,a,o,u){var i=1/(n-r),c=1/(e-a),f=1/(o-u);return t[0]=-2*i,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=-2*c,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[10]=2*f,t[11]=0,t[12]=(n+r)*i,t[13]=(a+e)*c,t[14]=(u+o)*f,t[15]=1,t}(function(){var t=new Float32Array(3);t[0]=0,t[1]=0,t[2]=0})(),function(){var t=new Float32Array(4);t[0]=0,t[1]=0,t[2]=0,t[3]=0}();return{vec3:{transformMat3:t},vec4:{transformMat4:n},mat2:{create:r,rotate:e,scale:a},mat3:{create:o,fromRotation:u},mat4:{create:i,identity:c,translate:s,scale:l,multiply:v,perspective:m,rotateX:M,rotateZ:h,invert:f,ortho:y}}});\n},{}],2:[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)},multByPoint:function(t){return this.clone()._multByPoint(t)},divByPoint:function(t){return this.clone()._divByPoint(t)},mult:function(t){return this.clone()._mult(t)},div:function(t){return this.clone()._div(t)},rotate:function(t){return this.clone()._rotate(t)},rotateAround:function(t,n){return this.clone()._rotateAround(t,n)},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},_multByPoint:function(t){return this.x*=t.x,this.y*=t.y,this},_divByPoint:function(t){return this.x/=t.x,this.y/=t.y,this},_unit:function(){return this._div(this.mag()),this},_perp:function(){var t=this.y;return this.y=this.x,this.x=-t,this},_rotate:function(t){var 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},_rotateAround:function(t,n){var i=Math.cos(t),s=Math.sin(t),r=n.x+i*(this.x-n.x)-s*(this.y-n.y),h=n.y+s*(this.x-n.x)+i*(this.y-n.y);return this.x=r,this.y=h,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},{}],3:[function(_dereq_,module,exports){\n!function(t,e){\"object\"==typeof exports&&\"undefined\"!=typeof module?module.exports=e():\"function\"==typeof define&&define.amd?define(e):t.ShelfPack=e()}(this,function(){function t(t,e,i){i=i||{},this.w=t||64,this.h=e||64,this.autoResize=!!i.autoResize,this.shelves=[],this.freebins=[],this.stats={},this.bins={},this.maxId=0}function e(t,e,i){this.x=0,this.y=t,this.w=this.free=e,this.h=i}function i(t,e,i,s,h,n,r){this.id=t,this.x=e,this.y=i,this.w=s,this.h=h,this.maxw=n||s,this.maxh=r||h,this.refcount=0}return t.prototype.pack=function(t,e){t=[].concat(t),e=e||{};for(var i,s,h,n,r=[],f=0;f<t.length;f++)if(i=t[f].w||t[f].width,s=t[f].h||t[f].height,h=t[f].id,i&&s){if(!(n=this.packOne(i,s,h)))continue;e.inPlace&&(t[f].x=n.x,t[f].y=n.y,t[f].id=n.id),r.push(n)}return this.shrink(),r},t.prototype.packOne=function(t,i,s){var h,n,r,f,o={freebin:-1,shelf:-1,waste:1/0},a=0;if(\"string\"==typeof s||\"number\"==typeof s){if(h=this.getBin(s))return this.ref(h),h;\"number\"==typeof s&&(this.maxId=Math.max(s,this.maxId))}else s=++this.maxId;for(f=0;f<this.freebins.length;f++){if(h=this.freebins[f],i===h.maxh&&t===h.maxw)return this.allocFreebin(f,t,i,s);i>h.maxh||t>h.maxw||i<=h.maxh&&t<=h.maxw&&(r=h.maxw*h.maxh-t*i)<o.waste&&(o.waste=r,o.freebin=f)}for(f=0;f<this.shelves.length;f++)if(n=this.shelves[f],a+=n.h,!(t>n.free)){if(i===n.h)return this.allocShelf(f,t,i,s);i>n.h||i<n.h&&(r=(n.h-i)*t)<o.waste&&(o.freebin=-1,o.waste=r,o.shelf=f)}if(-1!==o.freebin)return this.allocFreebin(o.freebin,t,i,s);if(-1!==o.shelf)return this.allocShelf(o.shelf,t,i,s);if(i<=this.h-a&&t<=this.w)return n=new e(a,this.w,i),this.allocShelf(this.shelves.push(n)-1,t,i,s);if(this.autoResize){var u,l,c,p;return u=l=this.h,c=p=this.w,(c<=u||t>c)&&(p=2*Math.max(t,c)),(u<c||i>u)&&(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.shrink=function(){if(this.shelves.length>0){for(var t=0,e=0,i=0;i<this.shelves.length;i++){var s=this.shelves[i];e+=s.h,t=Math.max(s.w-s.free,t)}this.resize(t,e)}},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;i<this.shelves.length;i++)this.shelves[i].resize(t);return!0},e.prototype.alloc=function(t,e,s){if(t>this.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},{}],4:[function(_dereq_,module,exports){\n\"use strict\";function TinySDF(t,i,s,e,h,r){this.fontSize=t||24,this.buffer=void 0===i?3:i,this.cutoff=e||.25,this.fontFamily=h||\"sans-serif\",this.fontWeight=r||\"normal\",this.radius=s||8;var a=this.size=this.fontSize+2*this.buffer;this.canvas=document.createElement(\"canvas\"),this.canvas.width=this.canvas.height=a,this.ctx=this.canvas.getContext(\"2d\"),this.ctx.font=this.fontWeight+\" \"+this.fontSize+\"px \"+this.fontFamily,this.ctx.textBaseline=\"middle\",this.ctx.fillStyle=\"black\",this.gridOuter=new Float64Array(a*a),this.gridInner=new Float64Array(a*a),this.f=new Float64Array(a),this.d=new Float64Array(a),this.z=new Float64Array(a+1),this.v=new Int16Array(a),this.middle=Math.round(a/2*(navigator.userAgent.indexOf(\"Gecko/\")>=0?1.2:1))}function edt(t,i,s,e,h,r,a){for(var n=0;n<i;n++){for(var o=0;o<s;o++)e[o]=t[o*i+n];for(edt1d(e,h,r,a,s),o=0;o<s;o++)t[o*i+n]=h[o]}for(o=0;o<s;o++){for(n=0;n<i;n++)e[n]=t[o*i+n];for(edt1d(e,h,r,a,i),n=0;n<i;n++)t[o*i+n]=Math.sqrt(h[n])}}function edt1d(t,i,s,e,h){s[0]=0,e[0]=-INF,e[1]=+INF;for(var r=1,a=0;r<h;r++){for(var n=(t[r]+r*r-(t[s[a]]+s[a]*s[a]))/(2*r-2*s[a]);n<=e[a];)a--,n=(t[r]+r*r-(t[s[a]]+s[a]*s[a]))/(2*r-2*s[a]);a++,s[a]=r,e[a]=n,e[a+1]=+INF}for(r=0,a=0;r<h;r++){for(;e[a+1]<r;)a++;i[r]=(r-s[a])*(r-s[a])+t[s[a]]}}module.exports=TinySDF;var INF=1e20;TinySDF.prototype.draw=function(t){this.ctx.clearRect(0,0,this.size,this.size),this.ctx.fillText(t,this.buffer,this.middle);for(var i=this.ctx.getImageData(0,0,this.size,this.size),s=new Uint8ClampedArray(this.size*this.size),e=0;e<this.size*this.size;e++){var h=i.data[4*e+3]/255;this.gridOuter[e]=1===h?0:0===h?INF:Math.pow(Math.max(0,.5-h),2),this.gridInner[e]=1===h?INF:0===h?0:Math.pow(Math.max(0,h-.5),2)}for(edt(this.gridOuter,this.size,this.size,this.f,this.d,this.v,this.z),edt(this.gridInner,this.size,this.size,this.f,this.d,this.v,this.z),e=0;e<this.size*this.size;e++){var r=this.gridOuter[e]-this.gridInner[e];s[e]=Math.max(0,Math.min(255,Math.round(255-255*(r/this.radius+this.cutoff))))}return s};\n},{}],5:[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){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)<i)return s;var u=this.sampleCurveDerivativeX(s);if(Math.abs(u)<1e-6)break;s-=h/u}if(e=0,r=1,(s=t)<e)return e;if(s>r)return r;for(;e<r;){if(h=this.sampleCurveX(s),Math.abs(h-t)<i)return s;t>h?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},{}],6:[function(_dereq_,module,exports){\nmodule.exports.VectorTile=_dereq_(\"./lib/vectortile.js\"),module.exports.VectorTileFeature=_dereq_(\"./lib/vectortilefeature.js\"),module.exports.VectorTileLayer=_dereq_(\"./lib/vectortilelayer.js\");\n},{\"./lib/vectortile.js\":7,\"./lib/vectortilefeature.js\":8,\"./lib/vectortilelayer.js\":9}],7:[function(_dereq_,module,exports){\n\"use strict\";function VectorTile(e,r){this.layers=e.readFields(readTile,{},r)}function readTile(e,r,i){if(3===e){var t=new VectorTileLayer(i,i.readVarint()+i.pos);t.length&&(r[t.name]=t)}}var VectorTileLayer=_dereq_(\"./vectortilelayer\");module.exports=VectorTile;\n},{\"./vectortilelayer\":9}],8:[function(_dereq_,module,exports){\n\"use strict\";function VectorTileFeature(e,t,r,a,i){this.properties={},this.extent=r,this.type=0,this._pbf=e,this._geometry=-1,this._keys=a,this._values=i,e.readFields(readFeature,this,t)}function readFeature(e,t,r){1==e?t.id=r.readVarint():2==e?readTag(r,t):3==e?t.type=r.readVarint():4==e&&(t._geometry=r.pos)}function readTag(e,t){for(var r=e.readVarint()+e.pos;e.pos<r;){var a=t._keys[e.readVarint()],i=t._values[e.readVarint()];t.properties[a]=i}}function classifyRings(e){var t=e.length;if(t<=1)return[e];for(var r,a,i=[],o=0;o<t;o++){var n=signedArea(e[o]);0!==n&&(void 0===a&&(a=n<0),a===n<0?(r&&i.push(r),r=[e[o]]):r.push(e[o]))}return r&&i.push(r),i}function signedArea(e){for(var t,r,a=0,i=0,o=e.length,n=o-1;i<o;n=i++)t=e[i],r=e[n],a+=(r.x-t.x)*(t.y+r.y);return a}var Point=_dereq_(\"@mapbox/point-geometry\");module.exports=VectorTileFeature,VectorTileFeature.types=[\"Unknown\",\"Point\",\"LineString\",\"Polygon\"],VectorTileFeature.prototype.loadGeometry=function(){var e=this._pbf;e.pos=this._geometry;for(var t,r=e.readVarint()+e.pos,a=1,i=0,o=0,n=0,s=[];e.pos<r;){if(!i){var p=e.readVarint();a=7&p,i=p>>3}if(i--,1===a||2===a)o+=e.readSVarint(),n+=e.readSVarint(),1===a&&(t&&s.push(t),t=[]),t.push(new Point(o,n));else{if(7!==a)throw new Error(\"unknown command \"+a);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,a=0,i=0,o=0,n=1/0,s=-1/0,p=1/0,h=-1/0;e.pos<t;){if(!a){var u=e.readVarint();r=7&u,a=u>>3}if(a--,1===r||2===r)i+=e.readSVarint(),o+=e.readSVarint(),i<n&&(n=i),i>s&&(s=i),o<p&&(p=o),o>h&&(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 a(e){for(var t=0;t<e.length;t++){var r=e[t],a=180-360*(r.y+p)/n;e[t]=[360*(r.x+s)/n-180,360/Math.PI*Math.atan(Math.exp(a*Math.PI/180))-90]}}var i,o,n=this.extent*Math.pow(2,r),s=this.extent*e,p=this.extent*t,h=this.loadGeometry(),u=VectorTileFeature.types[this.type];switch(this.type){case 1:var d=[];for(i=0;i<h.length;i++)d[i]=h[i][0];h=d,a(h);break;case 2:for(i=0;i<h.length;i++)a(h[i]);break;case 3:for(h=classifyRings(h),i=0;i<h.length;i++)for(o=0;o<h[i].length;o++)a(h[i][o])}1===h.length?h=h[0]:u=\"Multi\"+u;var f={type:\"Feature\",geometry:{type:u,coordinates:h},properties:this.properties};return\"id\"in this&&(f.id=this.id),f};\n},{\"@mapbox/point-geometry\":2}],9:[function(_dereq_,module,exports){\n\"use strict\";function VectorTileLayer(e,t){this.version=1,this.name=null,this.extent=4096,this.length=0,this._pbf=e,this._keys=[],this._values=[],this._features=[],e.readFields(readLayer,this,t),this.length=this._features.length}function readLayer(e,t,r){15===e?t.version=r.readVarint():1===e?t.name=r.readString():5===e?t.extent=r.readVarint():2===e?t._features.push(r.pos):3===e?t._keys.push(r.readString()):4===e&&t._values.push(readValueMessage(r))}function readValueMessage(e){for(var t=null,r=e.readVarint()+e.pos;e.pos<r;){var a=e.readVarint()>>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\":8}],10:[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){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){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);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})});\n},{}],11:[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;d<i;d+=r)v=e[d],f=e[d+1],v<o&&(o=v),f<l&&(l=f),v>u&&(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<r;x+=t)a=insertNode(x,e[x],e[x+1],a);else for(x=r-t;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.x<x.x?i.x<a.x?i.x:a.x:x.x<a.x?x.x:a.x,l=i.y<x.y?i.y<a.y?i.y:a.y:x.y<a.y?x.y:a.y,u=i.x>x.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<x;i++)a=n[i]*t,o=i<x-1?n[i+1]*t:e.length,l=linkedList(e,a,o,t,!1),l===l.next&&(l.steiner=!0),u.push(getLeftmost(l));for(u.sort(compareX),i=0;i<u.length;i++)eliminateHole(u[i],r),r=filterPoints(r,r.next);return r}function compareX(e,n){return e.x-n.x}function eliminateHole(e,n){if(n=findHoleBridge(e,n)){var r=splitPolygon(n,e);filterPoints(r,r.next)}}function findHoleBridge(e,n){var r,t=n,i=e.x,x=e.y,a=-1/0;do{if(x<=t.y&&x>=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.next.x?t:t.next}}t=t.next}while(t!==n);if(!r)return null;if(i===a)return r.prev;var l,u=r,s=r.x,v=r.y,f=1/0;for(t=r.next;t!==u;)i>=t.x&&t.x>=s&&pointInTriangle(x<v?i:a,x,s,v,x<v?a:i,x,t.x,t.y)&&((l=Math.abs(x-t.y)/(i-t.x))<f||l===f&&t.x>r.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;n<u&&(o++,t=t.nextZ);n++);for(l=u;o>0||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<r.x&&(r=n),n=n.next}while(n!==e);return r}function pointInTriangle(e,n,r,t,i,x,a,o){return(i-a)*(n-o)-(e-a)*(x-o)>=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;x<r;x+=t)i+=(e[a]-e[x])*(e[x+1]+e[a+1]),a=x;return i}module.exports=earcut,earcut.deviation=function(e,n,r,t){var i=n&&n.length,x=i?n[0]*r:e.length,a=Math.abs(signedArea(e,0,x,r));if(i)for(var o=0,l=n.length;o<l;o++){var u=n[o]*r,s=o<l-1?n[o+1]*r:e.length;a-=Math.abs(signedArea(e,u,s,r))}var v=0;for(o=0;o<t.length;o+=3){var f=t[o]*r,y=t[o+1]*r,d=t[o+2]*r;v+=Math.abs((e[f]-e[d])*(e[y+1]-e[f+1])-(e[f]-e[y])*(e[d+1]-e[f+1]))}return 0===a&&0===v?0:Math.abs((v-a)/a)},earcut.flatten=function(e){for(var n=e[0][0].length,r={vertices:[],holes:[],dimensions:n},t=0,i=0;i<e.length;i++){for(var x=0;x<e[i].length;x++)for(var a=0;a<n;a++)r.vertices.push(e[i][x][a]);i>0&&(t+=e[i-1].length,r.holes.push(t))}return r};\n},{}],12:[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;n<r.coordinates.length;n++)e+=polygonArea(r.coordinates[n]);return e}return null}function polygonArea(r){var e=0;if(r&&r.length>0){e+=Math.abs(ringArea(r[0]));for(var n=1;n<r.length;n++)e-=Math.abs(ringArea(r[n]))}return e}function ringArea(r){var e=0;if(r.length>2){for(var n,t,o=0;o<r.length-1;o++)n=r[o],t=r[o+1],e+=rad(t[0]-n[0])*(2+Math.sin(rad(n[1]))+Math.sin(rad(t[1])));e=e*wgs84.RADIUS*wgs84.RADIUS/2}return e}function rad(r){return r*Math.PI/180}var wgs84=_dereq_(\"wgs84\");module.exports.geometry=geometry,module.exports.ring=ringArea;\n},{\"wgs84\":40}],13:[function(_dereq_,module,exports){\nfunction rewind(r,e){switch(r&&r.type||null){case\"FeatureCollection\":return r.features=r.features.map(curryOuter(rewind,e)),r;case\"Feature\":return r.geometry=rewind(r.geometry,e),r;case\"Polygon\":case\"MultiPolygon\":return correct(r,e);default:return r}}function curryOuter(r,e){return function(n){return r(n,e)}}function correct(r,e){return\"Polygon\"===r.type?r.coordinates=correctRings(r.coordinates,e):\"MultiPolygon\"===r.type&&(r.coordinates=r.coordinates.map(curryOuter(correctRings,e))),r}function correctRings(r,e){e=!!e,r[0]=wind(r[0],e);for(var n=1;n<r.length;n++)r[n]=wind(r[n],!e);return r}function wind(r,e){return cw(r)===e?r:r.reverse()}function cw(r){return geojsonArea.ring(r)>=0}var geojsonArea=_dereq_(\"geojson-area\");module.exports=rewind;\n},{\"geojson-area\":12}],14:[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)return null;for(var h=[],p=0;p<e.length;p++){var a,c,o=e[p],f=o.geometry,g=o.type;if(a=o.min[u],c=o.max[u],a>=t&&c<=n)h.push(o);else if(!(a>n||c<t)){var v=1===g?clipPoints(f,t,n,u):clipGeometry(f,t,n,u,i,3===g);v.length&&h.push(createFeature(o.tags,g,v,o.id))}}return h.length?h:null}function clipPoints(e,r,t,n){for(var u=[],i=0;i<e.length;i++){var l=e[i],s=l[n];s>=r&&s<=t&&u.push(l)}return u}function clipGeometry(e,r,t,n,u,i){for(var l=[],s=0;s<e.length;s++){var h,p,a,c=0,o=0,f=null,g=e[s],v=g.area,m=g.dist,w=g.outer,S=g.length,d=[];for(p=0;p<S-1;p++)h=f||g[p],f=g[p+1],c=o||h[n],o=f[n],c<r?o>t?(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?o<r?(d.push(u(h,f,t),u(h,f,r)),i||(d=newSlice(l,d,v,m,w))):o<=t&&d.push(u(h,f,t)):(d.push(h),o<r?(d.push(u(h,f,r)),i||(d=newSlice(l,d,v,m,w))):o>t&&(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\":16}],15:[function(_dereq_,module,exports){\n\"use strict\";function convert(e,t){var r=[];if(\"FeatureCollection\"===e.type)for(var o=0;o<e.features.length;o++)convertFeature(r,e.features[o],t);else\"Feature\"===e.type?convertFeature(r,e,t):convertFeature(r,{geometry:e},t);return r}function convertFeature(e,t,r){if(null!==t.geometry){var o,a,i,n,u=t.geometry,c=u.type,l=u.coordinates,s=t.properties,p=t.id;if(\"Point\"===c)e.push(createFeature(s,1,[projectPoint(l)],p));else if(\"MultiPoint\"===c)e.push(createFeature(s,1,project(l),p));else if(\"LineString\"===c)e.push(createFeature(s,2,[project(l,r)],p));else if(\"MultiLineString\"===c||\"Polygon\"===c){for(i=[],o=0;o<l.length;o++)n=project(l[o],r),\"Polygon\"===c&&(n.outer=0===o),i.push(n);e.push(createFeature(s,\"Polygon\"===c?3:2,i,p))}else if(\"MultiPolygon\"===c){for(i=[],o=0;o<l.length;o++)for(a=0;a<l[o].length;a++)n=project(l[o][a],r),n.outer=0===a,i.push(n);e.push(createFeature(s,3,i,p))}else{if(\"GeometryCollection\"!==c)throw new Error(\"Input data is not a valid GeoJSON object.\");for(o=0;o<u.geometries.length;o++)convertFeature(e,{geometry:u.geometries[o],properties:s},r)}}}function project(e,t){for(var r=[],o=0;o<e.length;o++)r.push(projectPoint(e[o]));return t&&(simplify(r,t),calcSize(r)),r}function projectPoint(e){var t=Math.sin(e[1]*Math.PI/180),r=e[0]/360+.5,o=.5-.25*Math.log((1+t)/(1-t))/Math.PI;return o=o<0?0:o>1?1:o,[r,o,0]}function calcSize(e){for(var t,r,o=0,a=0,i=0;i<e.length-1;i++)t=r||e[i],r=e[i+1],o+=t[0]*r[1]-r[0]*t[1],a+=Math.abs(r[0]-t[0])+Math.abs(r[1]-t[1]);e.area=Math.abs(o/2),e.dist=a}module.exports=convert;var simplify=_dereq_(\"./simplify\"),createFeature=_dereq_(\"./feature\");\n},{\"./feature\":16,\"./simplify\":18}],16:[function(_dereq_,module,exports){\n\"use strict\";function createFeature(e,t,a,n){var r={id:n||null,type:t,geometry:a,tags:e||null,min:[1/0,1/0],max:[-1/0,-1/0]};return calcBBox(r),r}function calcBBox(e){var t=e.geometry,a=e.min,n=e.max;if(1===e.type)calcRingBBox(a,n,t);else for(var r=0;r<t.length;r++)calcRingBBox(a,n,t[r]);return e}function calcRingBBox(e,t,a){for(var n,r=0;r<a.length;r++)n=a[r],e[0]=Math.min(n[0],e[0]),t[0]=Math.max(n[0],t[0]),e[1]=Math.min(n[1],e[1]),t[1]=Math.max(n[1],t[1])}module.exports=createFeature;\n},{}],17:[function(_dereq_,module,exports){\n\"use strict\";function geojsonvt(e,t){return new GeoJSONVT(e,t)}function GeoJSONVT(e,t){t=this.options=extend(Object.create(this.options),t);var i=t.debug;i&&console.time(\"preprocess data\");var o=1<<t.maxZoom,n=convert(e,t.tolerance/(o*t.extent));this.tiles={},this.tileCoords=[],i&&(console.timeEnd(\"preprocess data\"),console.log(\"index: maxZoom: %d, maxPoints: %d\",t.indexMaxZoom,t.indexMaxPoints),console.time(\"generate tiles\"),this.stats={},this.total=0),n=wrap(n,t.buffer/t.extent,intersectX),n.length&&this.splitTile(n,0,0,0),i&&(n.length&&console.log(\"features: %d, points: %d\",this.tiles[0].numFeatures,this.tiles[0].numPoints),console.timeEnd(\"generate tiles\"),console.log(\"tiles generated:\",this.total,JSON.stringify(this.stats)))}function toID(e,t,i){return 32*((1<<e)*i+t)+e}function intersectX(e,t,i){return[i,(i-e[0])*(t[1]-e[1])/(t[0]-e[0])+e[1],1]}function intersectY(e,t,i){return[(i-e[1])*(t[0]-e[0])/(t[1]-e[1])+e[0],i,1]}function extend(e,t){for(var i in t)e[i]=t[i];return e}function isClippedSquare(e,t,i){var o=e.source;if(1!==o.length)return!1;var n=o[0];if(3!==n.type||n.geometry.length>1)return!1;var r=n.geometry[0].length;if(5!==r)return!1;for(var s=0;s<r;s++){var l=transform.point(n.geometry[0][s],t,e.z2,e.x,e.y);if(l[0]!==-i&&l[0]!==t+i||l[1]!==-i&&l[1]!==t+i)return!1}return!0}module.exports=geojsonvt;var convert=_dereq_(\"./convert\"),transform=_dereq_(\"./transform\"),clip=_dereq_(\"./clip\"),wrap=_dereq_(\"./wrap\"),createTile=_dereq_(\"./tile\");GeoJSONVT.prototype.options={maxZoom:14,indexMaxZoom:5,indexMaxPoints:1e5,solidChildren:!1,tolerance:3,extent:4096,buffer:64,debug:0},GeoJSONVT.prototype.splitTile=function(e,t,i,o,n,r,s){for(var l=[e,t,i,o],a=this.options,u=a.debug,c=null;l.length;){o=l.pop(),i=l.pop(),t=l.pop(),e=l.pop();var p=1<<t,d=toID(t,i,o),m=this.tiles[d],f=t===a.maxZoom?0:a.tolerance/(p*a.extent);if(!m&&(u>1&&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<<n-t;if(i!==Math.floor(r/x)||o!==Math.floor(s/x))continue}else if(t===a.indexMaxZoom||m.numPoints<=a.indexMaxPoints)continue;if(a.solidChildren||!isClippedSquare(m,a.extent,a.buffer)){m.source=null,u>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<<e;t=(t%s+s)%s;var l=toID(e,t,i);if(this.tiles[l])return transform.tile(this.tiles[l],n);r>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<<e-d;l=toID(d,Math.floor(t/m),Math.floor(i/m))}return this.tiles[l]?transform.tile(this.tiles[l],n):null};\n},{\"./clip\":14,\"./convert\":15,\"./tile\":19,\"./transform\":20,\"./wrap\":21}],18:[function(_dereq_,module,exports){\n\"use strict\";function simplify(t,i){var e,p,r,s,o=i*i,f=t.length,u=0,n=f-1,g=[];for(t[u][2]=1,t[n][2]=1;n;){for(p=0,e=u+1;e<n;e++)(r=getSqSegDist(t[e],t[u],t[n]))>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},{}],19:[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;m<e.length;m++){a.numFeatures++,addFeature(a,e[m],t,u);var s=e[m].min,l=e[m].max;s[0]<a.min[0]&&(a.min[0]=s[0]),s[1]<a.min[1]&&(a.min[1]=s[1]),l[0]>a.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;t<s.length;t++)o.push(s[t]),e.numPoints++,e.numSimplified++;else for(t=0;t<s.length;t++)if(a=s[t],i||!(2===l&&a.dist<r||3===l&&a.area<f)){var d=[];for(u=0;u<a.length;u++)m=a[u],(i||m[2]>f)&&(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<u;a=t++)n=e[t],r=e[a],i+=(r[0]-n[0])*(n[1]+r[1]);return i}module.exports=createTile;\n},{}],20:[function(_dereq_,module,exports){\n\"use strict\";function transformTile(r,t){if(r.transformed)return r;var n,e,o,f=r.z2,a=r.x,s=r.y;for(n=0;n<r.features.length;n++){var i=r.features[n],u=i.geometry;if(1===i.type)for(e=0;e<u.length;e++)u[e]=transformPoint(u[e],t,f,a,s);else for(e=0;e<u.length;e++){var m=u[e];for(o=0;o<m.length;o++)m[o]=transformPoint(m[o],t,f,a,s)}}return r.transformed=!0,r}function transformPoint(r,t,n,e,o){return[Math.round(t*(r[0]*n-e)),Math.round(t*(r[1]*n-o))]}exports.tile=transformTile,exports.point=transformPoint;\n},{}],21:[function(_dereq_,module,exports){\n\"use strict\";function wrap(r,e,t){var o=r,a=clip(r,1,-1-e,e,0,t,-1,2),s=clip(r,1,1-e,2+e,0,t,-1,2);return(a||s)&&(o=clip(r,1,-e,1+e,0,t,-1,2)||[],a&&(o=shiftFeatureCoords(a,1).concat(o)),s&&(o=o.concat(shiftFeatureCoords(s,-1)))),o}function shiftFeatureCoords(r,e){for(var t=[],o=0;o<r.length;o++){var a,s=r[o],i=s.type;if(1===i)a=shiftCoords(s.geometry,e);else{a=[];for(var u=0;u<s.geometry.length;u++)a.push(shiftCoords(s.geometry[u],e))}t.push(createFeature(s.tags,i,a,s.id))}return t}function shiftCoords(r,e){var t=[];t.area=r.area,t.dist=r.dist;for(var o=0;o<r.length;o++)t.push([r[o][0]+e,r[o][1],r[o][2]]);return t}var clip=_dereq_(\"./clip\"),createFeature=_dereq_(\"./feature\");module.exports=wrap;\n},{\"./clip\":14,\"./feature\":16}],22:[function(_dereq_,module,exports){\n\"use strict\";function GridIndex(t,r,e){var s=this.cells=[];if(t instanceof ArrayBuffer){this.arrayBuffer=t;var i=new Int32Array(this.arrayBuffer);t=i[0],r=i[1],e=i[2],this.d=r+2*e;for(var h=0;h<this.d*this.d;h++){var n=i[NUM_PARAMS+h],o=i[NUM_PARAMS+h+1];s.push(n===o?null:i.subarray(n,o))}var l=i[NUM_PARAMS+s.length],a=i[NUM_PARAMS+s.length+1];this.keys=i.subarray(l,a),this.bboxes=i.subarray(a),this.insert=this._insertReadonly}else{this.d=r+2*e;for(var d=0;d<this.d*this.d;d++)s.push([]);this.keys=[],this.bboxes=[]}this.n=r,this.extent=t,this.padding=e,this.scale=r/t,this.uid=0;var f=e/r*t;this.min=-f,this.max=t+f}module.exports=GridIndex;var NUM_PARAMS=3;GridIndex.prototype.insert=function(t,r,e,s,i){this._forEachCell(r,e,s,i,this._insertCell,this.uid++),this.keys.push(t),this.bboxes.push(r),this.bboxes.push(e),this.bboxes.push(s),this.bboxes.push(i)},GridIndex.prototype._insertReadonly=function(){throw\"Cannot insert into a GridIndex created from an ArrayBuffer.\"},GridIndex.prototype._insertCell=function(t,r,e,s,i,h){this.cells[i].push(h)},GridIndex.prototype.query=function(t,r,e,s){var i=this.min,h=this.max;if(t<=i&&r<=i&&h<=e&&h<=s)return Array.prototype.slice.call(this.keys);var n=[],o={};return this._forEachCell(t,r,e,s,this._queryCell,n,o),n},GridIndex.prototype._queryCell=function(t,r,e,s,i,h,n){var o=this.cells[i];if(null!==o)for(var l=this.keys,a=this.bboxes,d=0;d<o.length;d++){var f=o[d];if(void 0===n[f]){var u=4*f;t<=a[u+2]&&r<=a[u+3]&&e>=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<this.cells.length;s++)e+=this.cells[s].length;var i=new Int32Array(r+e+this.keys.length+this.bboxes.length);i[0]=this.extent,i[1]=this.n,i[2]=this.padding;for(var h=r,n=0;n<t.length;n++){var o=t[n];i[NUM_PARAMS+n]=h,i.set(o,h),h+=o.length}return i[NUM_PARAMS+t.length]=h,i.set(this.keys,h),h+=this.keys.length,i[NUM_PARAMS+t.length+1]=h,i.set(this.bboxes,h),h+=this.bboxes.length,i.buffer};\n},{}],23:[function(_dereq_,module,exports){\nexports.read=function(a,o,t,r,h){var M,p,w=8*h-r-1,f=(1<<w)-1,e=f>>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<<e)-1,N=i>>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<<h|w,e+=h;e>0;a[t+s]=255&p,s+=u,p/=256,e-=8);a[t+s-u]|=128*l};\n},{}],24:[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<t.length;r++)this.ids[r]=r,this.coords[2*r]=i(t[r]),this.coords[2*r+1]=e(t[r]);sort(this.ids,this.coords,this.nodeSize,0,this.ids.length-1,0)}function defaultGetX(t){return t[0]}function defaultGetY(t){return t[1]}var sort=_dereq_(\"./sort\"),range=_dereq_(\"./range\"),within=_dereq_(\"./within\");module.exports=kdbush,KDBush.prototype={range:function(t,i,e,s){return range(this.ids,this.coords,t,i,e,s,this.nodeSize)},within:function(t,i,e){return within(this.ids,this.coords,t,i,e,this.nodeSize)}};\n},{\"./range\":25,\"./sort\":26,\"./within\":27}],25:[function(_dereq_,module,exports){\n\"use strict\";function range(p,r,s,u,h,e,o){for(var a,t,n=[0,p.length-1,0],f=[];n.length;){var l=n.pop(),v=n.pop(),g=n.pop();if(v-g<=o)for(var i=g;i<=v;i++)a=r[2*i],t=r[2*i+1],a>=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},{}],26:[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);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 c=a[2*o+e],h=s,i=r;for(swapItem(t,a,s,o),a[2*r+e]>c&&swapItem(t,a,s,r);h<i;){for(swapItem(t,a,h,i),h++,i--;a[2*h+e]<c;)h++;for(;a[2*i+e]>c;)i--}a[2*s+e]===c?swapItem(t,a,s,i):(i++,swapItem(t,a,i,r)),i<=o&&(s=i+1),o<=i&&(r=i-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},{}],27:[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},{}],28:[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},{}],29:[function(_dereq_,module,exports){\n\"use strict\";function Pbf(t){this.buf=ArrayBuffer.isView&&ArrayBuffer.isView(t)?t:new Uint8Array(t||0),this.pos=0,this.type=0,this.length=this.buf.length}function readVarintRemainder(t,i,e){var r,s,n=e.buf;if(s=n[e.pos++],r=(112&s)>>4,s<128)return toNum(t,r,i);if(s=n[e.pos++],r|=(127&s)<<3,s<128)return toNum(t,r,i);if(s=n[e.pos++],r|=(127&s)<<10,s<128)return toNum(t,r,i);if(s=n[e.pos++],r|=(127&s)<<17,s<128)return toNum(t,r,i);if(s=n[e.pos++],r|=(127&s)<<24,s<128)return toNum(t,r,i);if(s=n[e.pos++],r|=(1&s)<<31,s<128)return toNum(t,r,i);throw new Error(\"Expected varint not more than 10 bytes\")}function readPackedEnd(t){return t.type===Pbf.Bytes?t.readVarint()+t.pos:t.pos+1}function toNum(t,i,e){return e?4294967296*i+(t>>>0):4294967296*(i>>>0)+(t>>>0)}function writeBigVarint(t,i){var e,r;if(t>=0?(e=t%4294967296|0,r=t/4294967296|0):(e=~(-t%4294967296),r=~(-t/4294967296),4294967295^e?e=e+1|0:(e=0,r=r+1|0)),t>=0x10000000000000000||t<-0x10000000000000000)throw new Error(\"Given varint doesn't fit into 10 bytes\");i.realloc(10),writeBigVarintLow(e,r,i),writeBigVarintHigh(r,i)}function writeBigVarintLow(t,i,e){e.buf[e.pos++]=127&t|128,t>>>=7,e.buf[e.pos++]=127&t|128,t>>>=7,e.buf[e.pos++]=127&t|128,t>>>=7,e.buf[e.pos++]=127&t|128,t>>>=7,e.buf[e.pos]=127&t}function writeBigVarintHigh(t,i){var e=(7&t)<<4;i.buf[i.pos++]|=e|((t>>>=3)?128:0),t&&(i.buf[i.pos++]=127&t|((t>>>=7)?128:0),t&&(i.buf[i.pos++]=127&t|((t>>>=7)?128:0),t&&(i.buf[i.pos++]=127&t|((t>>>=7)?128:0),t&&(i.buf[i.pos++]=127&t|((t>>>=7)?128:0),t&&(i.buf[i.pos++]=127&t)))))}function makeRoomForExtraLength(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<t.length;e++)i.writeVarint(t[e])}function writePackedSVarint(t,i){for(var e=0;e<t.length;e++)i.writeSVarint(t[e])}function writePackedFloat(t,i){for(var e=0;e<t.length;e++)i.writeFloat(t[e])}function writePackedDouble(t,i){for(var e=0;e<t.length;e++)i.writeDouble(t[e])}function writePackedBoolean(t,i){for(var e=0;e<t.length;e++)i.writeBoolean(t[e])}function writePackedFixed32(t,i){for(var e=0;e<t.length;e++)i.writeFixed32(t[e])}function writePackedSFixed32(t,i){for(var e=0;e<t.length;e++)i.writeSFixed32(t[e])}function writePackedFixed64(t,i){for(var e=0;e<t.length;e++)i.writeFixed64(t[e])}function writePackedSFixed64(t,i){for(var e=0;e<t.length;e++)i.writeSFixed64(t[e])}function readUInt32(t,i){return(t[i]|t[i+1]<<8|t[i+2]<<16)+16777216*t[i+3]}function writeInt32(t,i,e){t[e]=i,t[e+1]=i>>>8,t[e+2]=i>>>16,t[e+3]=i>>>24}function readInt32(t,i){return(t[i]|t[i+1]<<8|t[i+2]<<16)+(t[i+3]<<24)}function readUtf8(t,i,e){for(var r=\"\",s=i;s<e;){var n=t[s],o=null,a=n>239?4:n>223?3:n>191?2:1;if(s+a>e)break;var h,u,f;1===a?n<128&&(o=n):2===a?128==(192&(h=t[s+1]))&&(o=(31&n)<<6|63&h)<=127&&(o=null):3===a?(h=t[s+1],u=t[s+2],128==(192&h)&&128==(192&u)&&((o=(15&n)<<12|(63&h)<<6|63&u)<=2047||o>=55296&&o<=57343)&&(o=null)):4===a&&(h=t[s+1],u=t[s+2],f=t[s+3],128==(192&h)&&128==(192&u)&&128==(192&f)&&((o=(15&n)<<18|(63&h)<<12|(63&u)<<6|63&f)<=65535||o>=1114112)&&(o=null)),null===o?(o=65533,a=1):o>65535&&(o-=65536,r+=String.fromCharCode(o>>>10&1023|55296),o=56320|1023&o),r+=String.fromCharCode(o),s+=a}return r}function writeUtf8(t,i,e){for(var r,s,n=0;n<i.length;n++){if((r=i.charCodeAt(n))>55295&&r<57344){if(!s){r>56319||n+1===i.length?(t[e++]=239,t[e++]=191,t[e++]=189):s=r;continue}if(r<56320){t[e++]=239,t[e++]=191,t[e++]=189,s=r;continue}r=s-55296<<10|r-56320|65536,s=null}else s&&(t[e++]=239,t[e++]=191,t[e++]=189,s=null);r<128?t[e++]=r:(r<2048?t[e++]=r>>6|192:(r<65536?t[e++]=r>>12|224:(t[e++]=r>>18|240,t[e++]=r>>12&63|128),t[e++]=r>>6&63|128),t[e++]=63&r|128)}return e}module.exports=Pbf;var ieee754=_dereq_(\"ieee754\");Pbf.Varint=0,Pbf.Fixed64=1,Pbf.Bytes=2,Pbf.Fixed32=5;var SHIFT_LEFT_32=4294967296,SHIFT_RIGHT_32=1/SHIFT_LEFT_32;Pbf.prototype={destroy:function(){this.buf=null},readFields:function(t,i,e){for(e=e||this.length;this.pos<e;){var r=this.readVarint(),s=r>>3,n=this.pos;this.type=7&r,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=readUInt32(this.buf,this.pos);return this.pos+=4,t},readSFixed32:function(){var t=readInt32(this.buf,this.pos);return this.pos+=4,t},readFixed64:function(){var t=readUInt32(this.buf,this.pos)+readUInt32(this.buf,this.pos+4)*SHIFT_LEFT_32;return this.pos+=8,t},readSFixed64:function(){var t=readUInt32(this.buf,this.pos)+readInt32(this.buf,this.pos+4)*SHIFT_LEFT_32;return this.pos+=8,t},readFloat:function(){var t=ieee754.read(this.buf,this.pos,!0,23,4);return this.pos+=4,t},readDouble:function(){var t=ieee754.read(this.buf,this.pos,!0,52,8);return this.pos+=8,t},readVarint:function(t){var i,e,r=this.buf;return e=r[this.pos++],i=127&e,e<128?i:(e=r[this.pos++],i|=(127&e)<<7,e<128?i:(e=r[this.pos++],i|=(127&e)<<14,e<128?i:(e=r[this.pos++],i|=(127&e)<<21,e<128?i:(e=r[this.pos],i|=(15&e)<<28,readVarintRemainder(i,t,this)))))},readVarint64:function(){return this.readVarint(!0)},readSVarint:function(){var t=this.readVarint();return t%2==1?(t+1)/-2:t/2},readBoolean:function(){return Boolean(this.readVarint())},readString:function(){var t=this.readVarint()+this.pos,i=readUtf8(this.buf,this.pos,t);return this.pos=t,i},readBytes:function(){var t=this.readVarint()+this.pos,i=this.buf.subarray(this.pos,t);return this.pos=t,i},readPackedVarint:function(t,i){var e=readPackedEnd(this);for(t=t||[];this.pos<e;)t.push(this.readVarint(i));return t},readPackedSVarint:function(t){var i=readPackedEnd(this);for(t=t||[];this.pos<i;)t.push(this.readSVarint());return t},readPackedBoolean:function(t){var i=readPackedEnd(this);for(t=t||[];this.pos<i;)t.push(this.readBoolean());return t},readPackedFloat:function(t){var i=readPackedEnd(this);for(t=t||[];this.pos<i;)t.push(this.readFloat());return t},readPackedDouble:function(t){var i=readPackedEnd(this);for(t=t||[];this.pos<i;)t.push(this.readDouble());return t},readPackedFixed32:function(t){var i=readPackedEnd(this);for(t=t||[];this.pos<i;)t.push(this.readFixed32());return t},readPackedSFixed32:function(t){var i=readPackedEnd(this);for(t=t||[];this.pos<i;)t.push(this.readSFixed32());return t},readPackedFixed64:function(t){var i=readPackedEnd(this);for(t=t||[];this.pos<i;)t.push(this.readFixed64());return t},readPackedSFixed64:function(t){var i=readPackedEnd(this);for(t=t||[];this.pos<i;)t.push(this.readSFixed64());return t},skip:function(t){var i=7&t;if(i===Pbf.Varint)for(;this.buf[this.pos++]>127;);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;i<this.pos+t;)i*=2;if(i!==this.length){var e=new Uint8Array(i);e.set(this.buf),this.buf=e,this.length=i}},finish:function(){return this.length=this.pos,this.pos=0,this.buf.subarray(0,this.length)},writeFixed32:function(t){this.realloc(4),writeInt32(this.buf,t,this.pos),this.pos+=4},writeSFixed32:function(t){this.realloc(4),writeInt32(this.buf,t,this.pos),this.pos+=4},writeFixed64:function(t){this.realloc(8),writeInt32(this.buf,-1&t,this.pos),writeInt32(this.buf,Math.floor(t*SHIFT_RIGHT_32),this.pos+4),this.pos+=8},writeSFixed64:function(t){this.realloc(8),writeInt32(this.buf,-1&t,this.pos),writeInt32(this.buf,Math.floor(t*SHIFT_RIGHT_32),this.pos+4),this.pos+=8},writeVarint:function(t){if((t=+t||0)>268435455||t<0)return void writeBigVarint(t,this);this.realloc(4),this.buf[this.pos++]=127&t|(t>127?128:0),t<=127||(this.buf[this.pos++]=127&(t>>>=7)|(t>127?128:0),t<=127||(this.buf[this.pos++]=127&(t>>>=7)|(t>127?128:0),t<=127||(this.buf[this.pos++]=t>>>7&127)))},writeSVarint:function(t){this.writeVarint(t<0?2*-t-1:2*t)},writeBoolean:function(t){this.writeVarint(Boolean(t))},writeString:function(t){t=String(t),this.realloc(4*t.length),this.pos++;var i=this.pos;this.pos=writeUtf8(this.buf,t,this.pos);var e=this.pos-i;e>=128&&makeRoomForExtraLength(i,e,this),this.pos=i-1,this.writeVarint(e),this.pos+=e},writeFloat:function(t){this.realloc(4),ieee754.write(this.buf,t,this.pos,!0,23,4),this.pos+=4},writeDouble:function(t){this.realloc(8),ieee754.write(this.buf,t,this.pos,!0,52,8),this.pos+=8},writeBytes:function(t){var i=t.length;this.writeVarint(i),this.realloc(i);for(var e=0;e<i;e++)this.buf[this.pos++]=t[e]},writeRawMessage:function(t,i){this.pos++;var e=this.pos;t(i,this);var r=this.pos-e;r>=128&&makeRoomForExtraLength(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},{\"ieee754\":23}],30:[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&&currentQueue&&(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=[];++queueIndex<t;)currentQueue&&currentQueue[queueIndex].run();queueIndex=-1,t=queue.length}currentQueue=null,draining=!1,runClearTimeout(e)}}function Item(e,t){this.fun=e,this.array=t}function noop(){}var process=module.exports={},cachedSetTimeout,cachedClearTimeout;!function(){try{cachedSetTimeout=\"function\"==typeof setTimeout?setTimeout:defaultSetTimout}catch(e){cachedSetTimeout=defaultSetTimout}try{cachedClearTimeout=\"function\"==typeof clearTimeout?clearTimeout:defaultClearTimeout}catch(e){cachedClearTimeout=defaultClearTimeout}}();var queue=[],draining=!1,currentQueue,queueIndex=-1;process.nextTick=function(e){var t=new Array(arguments.length-1);if(arguments.length>1)for(var r=1;r<arguments.length;r++)t[r-1]=arguments[r];queue.push(new Item(e,t)),1!==queue.length||draining||runTimeout(drainQueue)},Item.prototype.run=function(){this.fun.apply(null,this.array)},process.title=\"browser\",process.browser=!0,process.env={},process.argv=[],process.version=\"\",process.versions={},process.on=noop,process.addListener=noop,process.once=noop,process.off=noop,process.removeListener=noop,process.removeAllListeners=noop,process.emit=noop,process.prependListener=noop,process.prependOnceListener=noop,process.listeners=function(e){return[]},process.binding=function(e){throw new Error(\"process.binding is not supported\")},process.cwd=function(){return\"/\"},process.chdir=function(e){throw new Error(\"process.chdir is not supported\")},process.umask=function(){return 0};\n},{}],31:[function(_dereq_,module,exports){\n\"use strict\";function partialSort(a,t,r,o,p){for(r=r||0,o=o||a.length-1,p=p||defaultCompare;o>r;){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 n=a[t],h=r,u=o;for(swap(a,r,t),p(a[o],n)>0&&swap(a,r,o);h<u;){for(swap(a,h,u),h++,u--;p(a[h],n)<0;)h++;for(;p(a[u],n)>0;)u--}0===p(a[r],n)?swap(a,r,u):(u++,swap(a,u,o)),u<=t&&(r=u+1),t<=u&&(o=u-1)}}function swap(a,t,r){var o=a[t];a[t]=a[r],a[r]=o}function defaultCompare(a,t){return a<t?-1:a>t?1:0}module.exports=partialSort;\n},{}],32:[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,n,o,i){return{x:t,y:e,zoom:1/0,id:o,properties:i,parentId:-1,numPoints:n}}function createPointCluster(t,e){var n=t.geometry.coordinates;return{x:lngX(n[0]),y:latY(n[1]),zoom:1/0,id:e,parentId:-1}}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,n=e>=1e4?Math.round(e/1e3)+\"k\":e>=1e3?Math.round(e/100)/10+\"k\":e;return extend(extend({},t.properties),{cluster:!0,cluster_id:t.id,point_count:e,point_count_abbreviated:n})}function lngX(t){return t/360+.5}function latY(t){var e=Math.sin(t*Math.PI/180),n=.5-.25*Math.log((1+e)/(1-e))/Math.PI;return n<0?0:n>1?1:n}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 n in e)t[n]=e[n];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,reduce:null,initial:function(){return{}},map:function(t){return t}},load:function(t){var e=this.options.log;e&&console.time(\"total time\");var n=\"prepare \"+t.length+\" points\";e&&console.time(n),this.points=t;var o=t.map(createPointCluster);e&&console.timeEnd(n);for(var i=this.options.maxZoom;i>=this.options.minZoom;i--){var r=+Date.now();this.trees[i+1]=kdbush(o,getX,getY,this.options.nodeSize,Float32Array),o=this._cluster(o,i),e&&console.log(\"z%d: %d clusters in %dms\",i,o.length,+Date.now()-r)}return this.trees[this.options.minZoom]=kdbush(o,getX,getY,this.options.nodeSize,Float32Array),e&&console.timeEnd(\"total time\"),this},getClusters:function(t,e){for(var n=this.trees[this._limitZoom(e)],o=n.range(lngX(t[0]),latY(t[3]),lngX(t[2]),latY(t[1])),i=[],r=0;r<o.length;r++){var s=n.points[o[r]];i.push(s.numPoints?getClusterJSON(s):this.points[s.id])}return i},getChildren:function(t,e){for(var n=this.trees[e+1].points[t],o=this.options.radius/(this.options.extent*Math.pow(2,e)),i=this.trees[e+1].within(n.x,n.y,o),r=[],s=0;s<i.length;s++){var u=this.trees[e+1].points[i[s]];u.parentId===t&&r.push(u.numPoints?getClusterJSON(u):this.points[u.id])}return r},getLeaves:function(t,e,n,o){n=n||10,o=o||0;var i=[];return this._appendLeaves(i,t,e,n,o,0),i},getTile:function(t,e,n){var o=this.trees[this._limitZoom(t)],i=Math.pow(2,t),r=this.options.extent,s=this.options.radius,u=s/r,a=(n-u)/i,p=(n+1+u)/i,h={features:[]};return this._addTileFeatures(o.range((e-u)/i,a,(e+1+u)/i,p),o.points,e,n,i,h),0===e&&this._addTileFeatures(o.range(1-u/i,a,1,p),o.points,i,n,i,h),e===i-1&&this._addTileFeatures(o.range(0,a,u/i,p),o.points,-1,n,i,h),h.features.length?h:null},getClusterExpansionZoom:function(t,e){for(;e<this.options.maxZoom;){var n=this.getChildren(t,e);if(e++,1!==n.length)break;t=n[0].properties.cluster_id}return e},_appendLeaves:function(t,e,n,o,i,r){for(var s=this.getChildren(e,n),u=0;u<s.length;u++){var a=s[u].properties;if(a.cluster?r+a.point_count<=i?r+=a.point_count:r=this._appendLeaves(t,a.cluster_id,n+1,o,i,r):r<i?r++:t.push(s[u]),t.length===o)break}return r},_addTileFeatures:function(t,e,n,o,i,r){for(var s=0;s<t.length;s++){var u=e[t[s]];r.features.push({type:1,geometry:[[Math.round(this.options.extent*(u.x*i-n)),Math.round(this.options.extent*(u.y*i-o))]],tags:u.numPoints?getClusterProperties(u):this.points[u.id].properties})}},_limitZoom:function(t){return Math.max(this.options.minZoom,Math.min(t,this.options.maxZoom+1))},_cluster:function(t,e){for(var n=[],o=this.options.radius/(this.options.extent*Math.pow(2,e)),i=0;i<t.length;i++){var r=t[i];if(!(r.zoom<=e)){r.zoom=e;var s=this.trees[e+1],u=s.within(r.x,r.y,o),a=r.numPoints||1,p=r.x*a,h=r.y*a,l=null;this.options.reduce&&(l=this.options.initial(),this._accumulate(l,r));for(var c=0;c<u.length;c++){var d=s.points[u[c]];if(e<d.zoom){var m=d.numPoints||1;d.zoom=e,p+=d.x*m,h+=d.y*m,a+=m,d.parentId=i,this.options.reduce&&this._accumulate(l,d)}}1===a?n.push(r):(r.parentId=i,n.push(createCluster(p/a,h/a,a,i,l)))}}return n},_accumulate:function(t,e){var n=e.numPoints?e.properties:this.options.map(this.points[e.id].properties);this.options.reduce(t,n)}};\n},{\"kdbush\":24}],33:[function(_dereq_,module,exports){\n\"use strict\";function TinyQueue(t,i){if(!(this instanceof TinyQueue))return new TinyQueue(t,i);if(this.data=t||[],this.length=this.data.length,this.compare=i||defaultCompare,this.length>0)for(var e=this.length>>1;e>=0;e--)this._down(e)}function defaultCompare(t,i){return t<i?-1:t>i?1:0}module.exports=TinyQueue,TinyQueue.prototype={push:function(t){this.data.push(t),this.length++,this._up(this.length-1)},pop:function(){if(0!==this.length){var t=this.data[0];return this.length--,this.length>0&&(this.data[0]=this.data[this.length],this._down(0)),this.data.pop(),t}},peek:function(){return this.data[0]},_up:function(t){for(var i=this.data,e=this.compare,h=i[t];t>0;){var n=t-1>>1,a=i[n];if(e(h,a)>=0)break;i[t]=a,t=n}i[t]=h},_down:function(t){for(var i=this.data,e=this.compare,h=this.length,n=h>>1,a=i[t];t<n;){var s=1+(t<<1),u=s+1,r=i[s];if(u<h&&e(i[u],r)<0&&(s=u,r=i[u]),e(r,a)>=0)break;i[t]=r,t=s}i[t]=a}};\n},{}],34:[function(_dereq_,module,exports){\n\"function\"==typeof Object.create?module.exports=function(t,e){t.super_=e,t.prototype=Object.create(e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}})}:module.exports=function(t,e){t.super_=e;var o=function(){};o.prototype=e.prototype,t.prototype=new o,t.prototype.constructor=t};\n},{}],35:[function(_dereq_,module,exports){\nmodule.exports=function(o){return o&&\"object\"==typeof o&&\"function\"==typeof o.copy&&\"function\"==typeof o.fill&&\"function\"==typeof o.readUInt8};\n},{}],36:[function(_dereq_,module,exports){\n(function (process,global){\nfunction inspect(e,r){var t={seen:[],stylize:stylizeNoColor};return arguments.length>=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)){c=\" [Function\"+(r.name?\": \"+r.name:\"\")+\"]\"}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 p;return p=a?formatArray(e,r,t,s,o):o.map(function(n){return formatProperty(e,r,t,s,n,a)}),e.seen.pop(),reduceToSingleString(p,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<u;++s)hasOwnProperty(r,String(s))?o.push(formatProperty(e,r,t,n,String(s),!0)):o.push(\"\");return i.forEach(function(i){i.match(/^\\d+$/)||o.push(formatProperty(e,r,t,n,i,!0))}),o}function formatProperty(e,r,t,n,i,o){var s,u,c;if(c=Object.getOwnPropertyDescriptor(r,i)||{value:r[i]},c.get?u=c.set?e.stylize(\"[Getter/Setter]\",\"special\"):e.stylize(\"[Getter]\",\"special\"):c.set&&(u=e.stylize(\"[Setter]\",\"special\")),hasOwnProperty(n,i)||(s=\"[\"+i+\"]\"),u||(e.seen.indexOf(c.value)<0?(u=isNull(t)?formatValue(e,c.value,null):formatValue(e,c.value,t-1),u.indexOf(\"\\n\")>-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;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<arguments.length;t++)r.push(inspect(arguments[t]));return r.join(\" \")}for(var t=1,n=arguments,i=n.length,o=String(e).replace(formatRegExp,function(e){if(\"%%\"===e)return\"%\";if(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<i;s=n[++t])isNull(s)||!isObject(s)?o+=\" \"+s:o+=\" \"+inspect(s);return o},exports.deprecate=function(e,r){function t(){if(!n){if(process.throwDeprecation)throw new Error(r);process.traceDeprecation?console.trace(r):console.error(r),n=!0}return e.apply(this,arguments)}if(isUndefined(global.process))return function(){return exports.deprecate(e,r).apply(this,arguments)};if(!0===process.noDeprecation)return e;var n=!1;return t};var debugs={},debugEnviron;exports.debuglog=function(e){if(isUndefined(debugEnviron)&&(debugEnviron=process.env.NODE_DEBUG||\"\"),e=e.toUpperCase(),!debugs[e])if(new RegExp(\"\\\\b\"+e+\"\\\\b\",\"i\").test(debugEnviron)){var r=process.pid;debugs[e]=function(){var t=exports.format.apply(exports,arguments);console.error(\"%s %d: %s\",e,r,t)}}else debugs[e]=function(){};return debugs[e]},exports.inspect=inspect,inspect.colors={bold:[1,22],italic:[3,23],underline:[4,24],inverse:[7,27],white:[37,39],grey:[90,39],black:[30,39],blue:[34,39],cyan:[36,39],green:[32,39],magenta:[35,39],red:[31,39],yellow:[33,39]},inspect.styles={special:\"cyan\",number:\"yellow\",boolean:\"yellow\",undefined:\"grey\",null:\"bold\",string:\"green\",date:\"magenta\",regexp:\"red\"},exports.isArray=isArray,exports.isBoolean=isBoolean,exports.isNull=isNull,exports.isNullOrUndefined=isNullOrUndefined,exports.isNumber=isNumber,exports.isString=isString,exports.isSymbol=isSymbol,exports.isUndefined=isUndefined,exports.isRegExp=isRegExp,exports.isObject=isObject,exports.isDate=isDate,exports.isError=isError,exports.isFunction=isFunction,exports.isPrimitive=isPrimitive,exports.isBuffer=_dereq_(\"./support/isBuffer\");var months=[\"Jan\",\"Feb\",\"Mar\",\"Apr\",\"May\",\"Jun\",\"Jul\",\"Aug\",\"Sep\",\"Oct\",\"Nov\",\"Dec\"];exports.log=function(){console.log(\"%s - %s\",timestamp(),exports.format.apply(exports,arguments))},exports.inherits=_dereq_(\"inherits\"),exports._extend=function(e,r){if(!r||!isObject(r))return e;for(var t=Object.keys(r),n=t.length;n--;)e[t[n]]=r[t[n]];return e};\n}).call(this,_dereq_('_process'),typeof global !== \"undefined\" ? global : typeof self !== \"undefined\" ? self : typeof window !== \"undefined\" ? window : {})\n\n},{\"./support/isBuffer\":35,\"_process\":30,\"inherits\":34}],37:[function(_dereq_,module,exports){\nfunction fromVectorTileJs(e){var r=new Pbf;return writeTile(e,r),r.finish()}function fromGeojsonVt(e){var r={};for(var t in e)r[t]=new GeoJSONWrapper(e[t].features),r[t].name=t;return fromVectorTileJs({layers:r})}function writeTile(e,r){for(var t in e.layers)r.writeMessage(3,writeLayer,e.layers[t])}function writeLayer(e,r){r.writeVarintField(15,e.version||1),r.writeStringField(1,e.name||\"\"),r.writeVarintField(5,e.extent||4096);var t,i={keys:[],values:[],keycache:{},valuecache:{}};for(t=0;t<e.length;t++)i.feature=e.feature(t),r.writeMessage(2,writeFeature,i);var a=i.keys;for(t=0;t<a.length;t++)r.writeStringField(3,a[t]);var o=i.values;for(t=0;t<o.length;t++)r.writeMessage(4,writeValue,o[t])}function writeFeature(e,r){var t=e.feature;void 0!==t.id&&r.writeVarintField(1,t.id),r.writeMessage(2,writeProperties,e),r.writeVarintField(3,t.type),r.writeMessage(4,writeGeometry,t)}function writeProperties(e,r){var t=e.feature,i=e.keys,a=e.values,o=e.keycache,n=e.valuecache;for(var l in t.properties){var s=o[l];void 0===s&&(i.push(l),s=i.length-1,o[l]=s),r.writeVarint(s);var u=t.properties[l],f=typeof u;\"string\"!==f&&\"boolean\"!==f&&\"number\"!==f&&(u=JSON.stringify(u));var w=f+\":\"+u,v=n[w];void 0===v&&(a.push(u),v=a.length-1,n[w]=v),r.writeVarint(v)}}function command(e,r){return(r<<3)+(7&e)}function zigzag(e){return e<<1^e>>31}function writeGeometry(e,r){for(var t=e.loadGeometry(),i=e.type,a=0,o=0,n=t.length,l=0;l<n;l++){var s=t[l],u=1;1===i&&(u=s.length),r.writeVarint(command(1,u));for(var f=0;f<s.length;f++){1===f&&1!==i&&r.writeVarint(command(2,s.length-1));var w=s[f].x-a,v=s[f].y-o;r.writeVarint(zigzag(w)),r.writeVarint(zigzag(v)),a+=w,o+=v}}}function writeValue(e,r){var t=typeof e;\"string\"===t?r.writeStringField(1,e):\"boolean\"===t?r.writeBooleanField(7,e):\"number\"===t&&(e%1!=0?r.writeDoubleField(3,e):e<0?r.writeSVarintField(6,e):r.writeVarintField(5,e))}var Pbf=_dereq_(\"pbf\"),GeoJSONWrapper=_dereq_(\"./lib/geojson_wrapper\");module.exports=fromVectorTileJs,module.exports.fromVectorTileJs=fromVectorTileJs,module.exports.fromGeojsonVt=fromGeojsonVt,module.exports.GeoJSONWrapper=GeoJSONWrapper;\n},{\"./lib/geojson_wrapper\":38,\"pbf\":29}],38:[function(_dereq_,module,exports){\n\"use strict\";function GeoJSONWrapper(e){this.features=e,this.length=e.length}function FeatureWrapper(e){this.id=\"number\"==typeof e.id?e.id:void 0,this.type=e.type,this.rawGeometry=1===e.type?[e.geometry]:e.geometry,this.properties=e.tags,this.extent=4096}var Point=_dereq_(\"@mapbox/point-geometry\"),VectorTileFeature=_dereq_(\"@mapbox/vector-tile\").VectorTileFeature;module.exports=GeoJSONWrapper,GeoJSONWrapper.prototype.feature=function(e){return new FeatureWrapper(this.features[e])},FeatureWrapper.prototype.loadGeometry=function(){var e=this.rawGeometry;this.geometry=[];for(var t=0;t<e.length;t++){for(var r=e[t],o=[],a=0;a<r.length;a++)o.push(new Point(r[a][0],r[a][1]));this.geometry.push(o)}return this.geometry},FeatureWrapper.prototype.bbox=function(){this.geometry||this.loadGeometry();for(var e=this.geometry,t=1/0,r=-1/0,o=1/0,a=-1/0,p=0;p<e.length;p++)for(var i=e[p],n=0;n<i.length;n++){var h=i[n];t=Math.min(t,h.x),r=Math.max(r,h.x),o=Math.min(o,h.y),a=Math.max(a,h.y)}return[t,o,r,a]},FeatureWrapper.prototype.toGeoJSON=VectorTileFeature.prototype.toGeoJSON;\n},{\"@mapbox/point-geometry\":2,\"@mapbox/vector-tile\":6}],39:[function(_dereq_,module,exports){\nvar bundleFn=arguments[3],sources=arguments[4],cache=arguments[5],stringify=JSON.stringify;module.exports=function(r,e){function t(r){d[r]=!0;for(var e in sources[r][1]){var n=sources[r][1][e];d[n]||t(n)}}for(var n,o=Object.keys(cache),a=0,i=o.length;a<i;a++){var s=o[a],u=cache[s].exports;if(u===r||u&&u.default===r){n=s;break}}if(!n){n=Math.floor(Math.pow(16,8)*Math.random()).toString(16);for(var f={},a=0,i=o.length;a<i;a++){var s=o[a];f[s]=s}sources[n]=[Function([\"require\",\"module\",\"exports\"],\"(\"+r+\")(self)\"),f]}var c=Math.floor(Math.pow(16,8)*Math.random()).toString(16),l={};l[n]=n,sources[c]=[Function([\"require\"],\"var f = require(\"+stringify(n)+\");(f.default ? f.default : f)(self);\"),l];var d={};t(c);var g=\"(\"+bundleFn+\")({\"+Object.keys(d).map(function(r){return stringify(r)+\":[\"+sources[r][0]+\",\"+stringify(sources[r][1])+\"]\"}).join(\",\")+\"},{},[\"+stringify(c)+\"])\",v=window.URL||window.webkitURL||window.mozURL||window.msURL,w=new Blob([g],{type:\"text/javascript\"});if(e&&e.bare)return w;var h=v.createObjectURL(w),b=new Worker(h);return b.objectURL=h,b};\n},{}],40:[function(_dereq_,module,exports){\nmodule.exports.RADIUS=6378137,module.exports.FLATTENING=1/298.257223563,module.exports.POLAR_RADIUS=6356752.3142;\n},{}],41:[function(_dereq_,module,exports){\nmodule.exports={\"version\":\"0.40.1\"}\n},{}],42:[function(_dereq_,module,exports){\n\"use strict\";var util=_dereq_(\"../util/util\");module.exports={deserialize:function(e,r){var t={};if(!r)return t;for(var i=0,a=e;i<a.length;i+=1){var l=a[i],u=l.layerIds.map(function(e){return r.getLayer(e)}).filter(Boolean);if(0!==u.length)for(var n=u[0].createBucket(util.extend({layers:u},l)),o=0,f=u;o<f.length;o+=1){var s=f[o];t[s.id]=n}}return t}};\n},{\"../util/util\":223}],43:[function(_dereq_,module,exports){\n\"use strict\";function addCircleVertex(e,r,t,i,a){e.emplaceBack(2*r+(i+1)/2,2*t+(a+1)/2)}var ref=_dereq_(\"../segment\"),SegmentVector=ref.SegmentVector,VertexBuffer=_dereq_(\"../../gl/vertex_buffer\"),IndexBuffer=_dereq_(\"../../gl/index_buffer\"),ref$1=_dereq_(\"../program_configuration\"),ProgramConfigurationSet=ref$1.ProgramConfigurationSet,createVertexArrayType=_dereq_(\"../vertex_array_type\"),ref$2=_dereq_(\"../index_array_type\"),TriangleIndexArray=ref$2.TriangleIndexArray,loadGeometry=_dereq_(\"../load_geometry\"),EXTENT=_dereq_(\"../extent\"),circleInterface={layoutAttributes:[{name:\"a_pos\",components:2,type:\"Int16\"}],indexArrayType:TriangleIndexArray,paintAttributes:[{property:\"circle-color\"},{property:\"circle-radius\"},{property:\"circle-blur\"},{property:\"circle-opacity\"},{property:\"circle-stroke-color\"},{property:\"circle-stroke-width\"},{property:\"circle-stroke-opacity\"}]},LayoutVertexArrayType=createVertexArrayType(circleInterface.layoutAttributes),CircleBucket=function(e){this.zoom=e.zoom,this.overscaling=e.overscaling,this.layers=e.layers,this.index=e.index,this.layoutVertexArray=new LayoutVertexArrayType(e.layoutVertexArray),this.indexArray=new TriangleIndexArray(e.indexArray),this.programConfigurations=new ProgramConfigurationSet(circleInterface,e.layers,e.zoom,e.programConfigurations),this.segments=new SegmentVector(e.segments)};CircleBucket.prototype.populate=function(e,r){for(var t=this,i=0,a=e;i<a.length;i+=1){var o=a[i],n=o.feature,y=o.index,u=o.sourceLayerIndex;if(t.layers[0].filter(n)){var s=loadGeometry(n);t.addFeature(n,s),r.featureIndex.insert(n,s,y,u,t.index)}}},CircleBucket.prototype.isEmpty=function(){return 0===this.layoutVertexArray.length},CircleBucket.prototype.serialize=function(e){return{zoom:this.zoom,layerIds:this.layers.map(function(e){return e.id}),layoutVertexArray:this.layoutVertexArray.serialize(e),indexArray:this.indexArray.serialize(e),programConfigurations:this.programConfigurations.serialize(e),segments:this.segments.get()}},CircleBucket.prototype.upload=function(e){this.layoutVertexBuffer=new VertexBuffer(e,this.layoutVertexArray),this.indexBuffer=new IndexBuffer(e,this.indexArray),this.programConfigurations.upload(e)},CircleBucket.prototype.destroy=function(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.programConfigurations.destroy(),this.segments.destroy())},CircleBucket.prototype.addFeature=function(e,r){for(var t=this,i=0,a=r;i<a.length;i+=1)for(var o=a[i],n=0,y=o;n<y.length;n+=1){var u=y[n],s=u.x,c=u.y;if(!(s<0||s>=EXTENT||c<0||c>=EXTENT)){var l=t.segments.prepareSegment(4,t.layoutVertexArray,t.indexArray),p=l.vertexLength;addCircleVertex(t.layoutVertexArray,s,c,-1,-1),addCircleVertex(t.layoutVertexArray,s,c,1,-1),addCircleVertex(t.layoutVertexArray,s,c,1,1),addCircleVertex(t.layoutVertexArray,s,c,-1,1),t.indexArray.emplaceBack(p,p+1,p+2),t.indexArray.emplaceBack(p,p+3,p+2),l.vertexLength+=4,l.primitiveLength+=2}}this.programConfigurations.populatePaintArrays(this.layoutVertexArray.length,e.properties)},CircleBucket.programInterface=circleInterface,module.exports=CircleBucket;\n},{\"../../gl/index_buffer\":61,\"../../gl/vertex_buffer\":62,\"../extent\":48,\"../index_array_type\":50,\"../load_geometry\":51,\"../program_configuration\":53,\"../segment\":55,\"../vertex_array_type\":56}],44:[function(_dereq_,module,exports){\n\"use strict\";var ref=_dereq_(\"../segment\"),SegmentVector=ref.SegmentVector,VertexBuffer=_dereq_(\"../../gl/vertex_buffer\"),IndexBuffer=_dereq_(\"../../gl/index_buffer\"),ref$1=_dereq_(\"../program_configuration\"),ProgramConfigurationSet=ref$1.ProgramConfigurationSet,createVertexArrayType=_dereq_(\"../vertex_array_type\"),ref$2=_dereq_(\"../index_array_type\"),LineIndexArray=ref$2.LineIndexArray,TriangleIndexArray=ref$2.TriangleIndexArray,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\"}],indexArrayType:TriangleIndexArray,indexArrayType2:LineIndexArray,paintAttributes:[{property:\"fill-color\"},{property:\"fill-outline-color\"},{property:\"fill-opacity\"}]},LayoutVertexArrayType=createVertexArrayType(fillInterface.layoutAttributes),FillBucket=function(e){this.zoom=e.zoom,this.overscaling=e.overscaling,this.layers=e.layers,this.index=e.index,this.layoutVertexArray=new LayoutVertexArrayType(e.layoutVertexArray),this.indexArray=new TriangleIndexArray(e.indexArray),this.indexArray2=new LineIndexArray(e.indexArray2),this.programConfigurations=new ProgramConfigurationSet(fillInterface,e.layers,e.zoom,e.programConfigurations),this.segments=new SegmentVector(e.segments),this.segments2=new SegmentVector(e.segments2)};FillBucket.prototype.populate=function(e,r){for(var t=this,i=0,a=e;i<a.length;i+=1){var n=a[i],o=n.feature,s=n.index,y=n.sourceLayerIndex;if(t.layers[0].filter(o)){var l=loadGeometry(o);t.addFeature(o,l),r.featureIndex.insert(o,l,s,y,t.index)}}},FillBucket.prototype.isEmpty=function(){return 0===this.layoutVertexArray.length},FillBucket.prototype.serialize=function(e){return{zoom:this.zoom,layerIds:this.layers.map(function(e){return e.id}),layoutVertexArray:this.layoutVertexArray.serialize(e),indexArray:this.indexArray.serialize(e),indexArray2:this.indexArray2.serialize(e),programConfigurations:this.programConfigurations.serialize(e),segments:this.segments.get(),segments2:this.segments2.get()}},FillBucket.prototype.upload=function(e){this.layoutVertexBuffer=new VertexBuffer(e,this.layoutVertexArray),this.indexBuffer=new IndexBuffer(e,this.indexArray),this.indexBuffer2=new IndexBuffer(e,this.indexArray2),this.programConfigurations.upload(e)},FillBucket.prototype.destroy=function(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.indexBuffer2.destroy(),this.programConfigurations.destroy(),this.segments.destroy(),this.segments2.destroy())},FillBucket.prototype.addFeature=function(e,r){for(var t=this,i=0,a=classifyRings(r,EARCUT_MAX_RINGS);i<a.length;i+=1){for(var n=a[i],o=0,s=0,y=n;s<y.length;s+=1){o+=y[s].length}for(var l=t.segments.prepareSegment(o,t.layoutVertexArray,t.indexArray),u=l.vertexLength,f=[],g=[],x=0,p=n;x<p.length;x+=1){var h=p[x];if(0!==h.length){h!==n[0]&&g.push(f.length/2);var d=t.segments2.prepareSegment(h.length,t.layoutVertexArray,t.indexArray2),c=d.vertexLength;t.layoutVertexArray.emplaceBack(h[0].x,h[0].y),t.indexArray2.emplaceBack(c+h.length-1,c),f.push(h[0].x),f.push(h[0].y);for(var m=1;m<h.length;m++)t.layoutVertexArray.emplaceBack(h[m].x,h[m].y),t.indexArray2.emplaceBack(c+m-1,c+m),f.push(h[m].x),f.push(h[m].y);d.vertexLength+=h.length,d.primitiveLength+=h.length}}for(var A=earcut(f,g),B=0;B<A.length;B+=3)t.indexArray.emplaceBack(u+A[B],u+A[B+1],u+A[B+2]);l.vertexLength+=o,l.primitiveLength+=A.length/3}this.programConfigurations.populatePaintArrays(this.layoutVertexArray.length,e.properties)},FillBucket.programInterface=fillInterface,module.exports=FillBucket;\n},{\"../../gl/index_buffer\":61,\"../../gl/vertex_buffer\":62,\"../../util/classify_rings\":205,\"../index_array_type\":50,\"../load_geometry\":51,\"../program_configuration\":53,\"../segment\":55,\"../vertex_array_type\":56,\"earcut\":11}],45:[function(_dereq_,module,exports){\n\"use strict\";function addVertex(e,r,t,a,i,n,o,s){e.emplaceBack(r,t,2*Math.floor(a*FACTOR)+o,i*FACTOR*2,n*FACTOR*2,Math.round(s))}function isBoundaryEdge(e,r){return e.x===r.x&&(e.x<0||e.x>EXTENT)||e.y===r.y&&(e.y<0||e.y>EXTENT)}var ref=_dereq_(\"../segment\"),SegmentVector=ref.SegmentVector,MAX_VERTEX_ARRAY_LENGTH=ref.MAX_VERTEX_ARRAY_LENGTH,VertexBuffer=_dereq_(\"../../gl/vertex_buffer\"),IndexBuffer=_dereq_(\"../../gl/index_buffer\"),ref$1=_dereq_(\"../program_configuration\"),ProgramConfigurationSet=ref$1.ProgramConfigurationSet,createVertexArrayType=_dereq_(\"../vertex_array_type\"),ref$2=_dereq_(\"../index_array_type\"),TriangleIndexArray=ref$2.TriangleIndexArray,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\"}],indexArrayType:TriangleIndexArray,paintAttributes:[{property:\"fill-extrusion-base\"},{property:\"fill-extrusion-height\"},{property:\"fill-extrusion-color\"}]},FACTOR=Math.pow(2,13),LayoutVertexArrayType=createVertexArrayType(fillExtrusionInterface.layoutAttributes),FillExtrusionBucket=function(e){this.zoom=e.zoom,this.overscaling=e.overscaling,this.layers=e.layers,this.index=e.index,this.layoutVertexArray=new LayoutVertexArrayType(e.layoutVertexArray),this.indexArray=new TriangleIndexArray(e.indexArray),this.programConfigurations=new ProgramConfigurationSet(fillExtrusionInterface,e.layers,e.zoom,e.programConfigurations),this.segments=new SegmentVector(e.segments)};FillExtrusionBucket.prototype.populate=function(e,r){for(var t=this,a=0,i=e;a<i.length;a+=1){var n=i[a],o=n.feature,s=n.index,u=n.sourceLayerIndex;if(t.layers[0].filter(o)){var y=loadGeometry(o);t.addFeature(o,y),r.featureIndex.insert(o,y,s,u,t.index)}}},FillExtrusionBucket.prototype.isEmpty=function(){return 0===this.layoutVertexArray.length},FillExtrusionBucket.prototype.serialize=function(e){return{zoom:this.zoom,layerIds:this.layers.map(function(e){return e.id}),layoutVertexArray:this.layoutVertexArray.serialize(e),indexArray:this.indexArray.serialize(e),programConfigurations:this.programConfigurations.serialize(e),segments:this.segments.get()}},FillExtrusionBucket.prototype.upload=function(e){this.layoutVertexBuffer=new VertexBuffer(e,this.layoutVertexArray),this.indexBuffer=new IndexBuffer(e,this.indexArray),this.programConfigurations.upload(e)},FillExtrusionBucket.prototype.destroy=function(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.programConfigurations.destroy(),this.segments.destroy())},FillExtrusionBucket.prototype.addFeature=function(e,r){for(var t=this,a=0,i=classifyRings(r,EARCUT_MAX_RINGS);a<i.length;a+=1){for(var n=i[a],o=0,s=0,u=n;s<u.length;s+=1){o+=u[s].length}for(var y=t.segments.prepareSegment(4,t.layoutVertexArray,t.indexArray),l=0,x=n;l<x.length;l+=1){var f=x[l];if(0!==f.length)for(var g=0,p=0;p<f.length;p++){var d=f[p];if(p>=1){var h=f[p-1];if(!isBoundaryEdge(d,h)){y.vertexLength+4>MAX_VERTEX_ARRAY_LENGTH&&(y=t.segments.prepareSegment(4,t.layoutVertexArray,t.indexArray));var A=d.sub(h)._perp()._unit();addVertex(t.layoutVertexArray,d.x,d.y,A.x,A.y,0,0,g),addVertex(t.layoutVertexArray,d.x,d.y,A.x,A.y,0,1,g),g+=h.dist(d),addVertex(t.layoutVertexArray,h.x,h.y,A.x,A.y,0,0,g),addVertex(t.layoutVertexArray,h.x,h.y,A.x,A.y,0,1,g);var c=y.vertexLength;t.indexArray.emplaceBack(c,c+1,c+2),t.indexArray.emplaceBack(c+1,c+2,c+3),y.vertexLength+=4,y.primitiveLength+=2}}}}y.vertexLength+o>MAX_VERTEX_ARRAY_LENGTH&&(y=t.segments.prepareSegment(o,t.layoutVertexArray,t.indexArray));for(var m=[],V=[],E=y.vertexLength,v=0,_=n;v<_.length;v+=1){var T=_[v];if(0!==T.length){T!==n[0]&&V.push(m.length/2);for(var B=0;B<T.length;B++){var R=T[B];addVertex(t.layoutVertexArray,R.x,R.y,0,0,1,1,0),m.push(R.x),m.push(R.y)}}}for(var I=earcut(m,V),C=0;C<I.length;C+=3)t.indexArray.emplaceBack(E+I[C],E+I[C+1],E+I[C+2]);y.primitiveLength+=I.length/3,y.vertexLength+=o}this.programConfigurations.populatePaintArrays(this.layoutVertexArray.length,e.properties)},FillExtrusionBucket.programInterface=fillExtrusionInterface,module.exports=FillExtrusionBucket;\n},{\"../../gl/index_buffer\":61,\"../../gl/vertex_buffer\":62,\"../../util/classify_rings\":205,\"../extent\":48,\"../index_array_type\":50,\"../load_geometry\":51,\"../program_configuration\":53,\"../segment\":55,\"../vertex_array_type\":56,\"earcut\":11}],46:[function(_dereq_,module,exports){\n\"use strict\";function addLineVertex(e,t,r,i,a,n,s){e.emplaceBack(t.x,t.y,i?1:0,a?1:-1,Math.round(EXTRUDE_SCALE*r.x)+128,Math.round(EXTRUDE_SCALE*r.y)+128,1+(0===n?0:n<0?-1:1)|(s*LINE_DISTANCE_SCALE&63)<<2,s*LINE_DISTANCE_SCALE>>6)}var ref=_dereq_(\"../segment\"),SegmentVector=ref.SegmentVector,VertexBuffer=_dereq_(\"../../gl/vertex_buffer\"),IndexBuffer=_dereq_(\"../../gl/index_buffer\"),ref$1=_dereq_(\"../program_configuration\"),ProgramConfigurationSet=ref$1.ProgramConfigurationSet,createVertexArrayType=_dereq_(\"../vertex_array_type\"),ref$2=_dereq_(\"../index_array_type\"),TriangleIndexArray=ref$2.TriangleIndexArray,loadGeometry=_dereq_(\"../load_geometry\"),EXTENT=_dereq_(\"../extent\"),vectorTileFeatureTypes=_dereq_(\"@mapbox/vector-tile\").VectorTileFeature.types,EXTRUDE_SCALE=63,COS_HALF_SHARP_CORNER=Math.cos(Math.PI/180*37.5),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_normal\",components:4,type:\"Int16\"},{name:\"a_data\",components:4,type:\"Uint8\"}],paintAttributes:[{property:\"line-color\"},{property:\"line-blur\"},{property:\"line-opacity\"},{property:\"line-gap-width\",name:\"gapwidth\"},{property:\"line-offset\"},{property:\"line-width\"},{property:\"line-width\",name:\"floorwidth\",useIntegerZoom:!0}],indexArrayType:TriangleIndexArray},LayoutVertexArrayType=createVertexArrayType(lineInterface.layoutAttributes),LineBucket=function(e){this.zoom=e.zoom,this.overscaling=e.overscaling,this.layers=e.layers,this.index=e.index,this.layoutVertexArray=new LayoutVertexArrayType(e.layoutVertexArray),this.indexArray=new TriangleIndexArray(e.indexArray),this.programConfigurations=new ProgramConfigurationSet(lineInterface,e.layers,e.zoom,e.programConfigurations),this.segments=new SegmentVector(e.segments)};LineBucket.prototype.populate=function(e,t){for(var r=this,i=0,a=e;i<a.length;i+=1){var n=a[i],s=n.feature,o=n.index,u=n.sourceLayerIndex;if(r.layers[0].filter(s)){var d=loadGeometry(s);r.addFeature(s,d),t.featureIndex.insert(s,d,o,u,r.index)}}},LineBucket.prototype.isEmpty=function(){return 0===this.layoutVertexArray.length},LineBucket.prototype.serialize=function(e){return{zoom:this.zoom,layerIds:this.layers.map(function(e){return e.id}),layoutVertexArray:this.layoutVertexArray.serialize(e),indexArray:this.indexArray.serialize(e),programConfigurations:this.programConfigurations.serialize(e),segments:this.segments.get()}},LineBucket.prototype.upload=function(e){this.layoutVertexBuffer=new VertexBuffer(e,this.layoutVertexArray),this.indexBuffer=new IndexBuffer(e,this.indexArray),this.programConfigurations.upload(e)},LineBucket.prototype.destroy=function(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.programConfigurations.destroy(),this.segments.destroy())},LineBucket.prototype.addFeature=function(e,t){for(var r=this,i=this.layers[0].layout,a=this.layers[0].getLayoutValue(\"line-join\",{zoom:this.zoom},e.properties),n=i[\"line-cap\"],s=i[\"line-miter-limit\"],o=i[\"line-round-limit\"],u=0,d=t;u<d.length;u+=1){var l=d[u];r.addLine(l,e,a,n,s,o)}},LineBucket.prototype.addLine=function(e,t,r,i,a,n){for(var s=this,o=t.properties,u=\"Polygon\"===vectorTileFeatureTypes[t.type],d=e.length;d>=2&&e[d-1].equals(e[d-2]);)d--;for(var l=0;l<d-1&&e[l].equals(e[l+1]);)l++;if(!(d<(u?3:2))){\"bevel\"===r&&(a=1.05);var y=SHARP_CORNER_OFFSET*(EXTENT/(512*this.overscaling)),h=e[l],p=this.segments.prepareSegment(10*d,this.layoutVertexArray,this.indexArray);this.distance=0;var c,f,x,m=i,g=u?\"butt\":i,_=!0,A=void 0,v=void 0,V=void 0,C=void 0;this.e1=this.e2=this.e3=-1,u&&(c=e[d-2],C=h.sub(c)._unit()._perp());for(var L=l;L<d;L++)if(!(v=u&&L===d-1?e[l+1]:e[L+1])||!e[L].equals(v)){C&&(V=C),c&&(A=c),c=e[L],C=v?v.sub(c)._unit()._perp():V,V=V||C;var E=V.add(C);0===E.x&&0===E.y||E._unit();var S=E.x*C.x+E.y*C.y,I=0!==S?1/S:1/0,T=S<COS_HALF_SHARP_CORNER&&A&&v;if(T&&L>l){var B=c.dist(A);if(B>2*y){var b=c.sub(c.sub(A)._mult(y/B)._round());s.distance+=b.dist(A),s.addCurrentVertex(b,s.distance,V.mult(1),0,0,!1,p),A=b}}var N=A&&v,k=N?r:v?m:g;if(N&&\"round\"===k&&(I<n?k=\"miter\":I<=2&&(k=\"fakeround\")),\"miter\"===k&&I>a&&(k=\"bevel\"),\"bevel\"===k&&(I>2&&(k=\"flipbevel\"),I<a&&(k=\"miter\")),A&&(s.distance+=c.dist(A)),\"miter\"===k)E._mult(I),s.addCurrentVertex(c,s.distance,E,0,0,!1,p);else if(\"flipbevel\"===k){if(I>100)E=C.clone().mult(-1);else{var R=V.x*C.y-V.y*C.x>0?-1:1,F=I*V.add(C).mag()/V.sub(C).mag();E._perp()._mult(F*R)}s.addCurrentVertex(c,s.distance,E,0,0,!1,p),s.addCurrentVertex(c,s.distance,E.mult(-1),0,0,!1,p)}else if(\"bevel\"===k||\"fakeround\"===k){var q=V.x*C.y-V.y*C.x>0,P=-Math.sqrt(I*I-1);if(q?(x=0,f=P):(f=0,x=P),_||s.addCurrentVertex(c,s.distance,V,f,x,!1,p),\"fakeround\"===k){for(var w=Math.floor(8*(.5-(S-.5))),z=void 0,D=0;D<w;D++)z=C.mult((D+1)/(w+1))._add(V)._unit(),s.addPieSliceVertex(c,s.distance,z,q,p);s.addPieSliceVertex(c,s.distance,E,q,p);for(var M=w-1;M>=0;M--)z=V.mult((M+1)/(w+1))._add(C)._unit(),s.addPieSliceVertex(c,s.distance,z,q,p)}v&&s.addCurrentVertex(c,s.distance,C,-f,-x,!1,p)}else\"butt\"===k?(_||s.addCurrentVertex(c,s.distance,V,0,0,!1,p),v&&s.addCurrentVertex(c,s.distance,C,0,0,!1,p)):\"square\"===k?(_||(s.addCurrentVertex(c,s.distance,V,1,1,!1,p),s.e1=s.e2=-1),v&&s.addCurrentVertex(c,s.distance,C,-1,-1,!1,p)):\"round\"===k&&(_||(s.addCurrentVertex(c,s.distance,V,0,0,!1,p),s.addCurrentVertex(c,s.distance,V,1,1,!0,p),s.e1=s.e2=-1),v&&(s.addCurrentVertex(c,s.distance,C,-1,-1,!0,p),s.addCurrentVertex(c,s.distance,C,0,0,!1,p)));if(T&&L<d-1){var O=c.dist(v);if(O>2*y){var X=c.add(v.sub(c)._mult(y/O)._round());s.distance+=X.dist(c),s.addCurrentVertex(X,s.distance,C.mult(1),0,0,!1,p),c=X}}_=!1}this.programConfigurations.populatePaintArrays(this.layoutVertexArray.length,o)}},LineBucket.prototype.addCurrentVertex=function(e,t,r,i,a,n,s){var o,u=this.layoutVertexArray,d=this.indexArray;o=r.clone(),i&&o._sub(r.perp()._mult(i)),addLineVertex(u,e,o,n,!1,i,t),this.e3=s.vertexLength++,this.e1>=0&&this.e2>=0&&(d.emplaceBack(this.e1,this.e2,this.e3),s.primitiveLength++),this.e1=this.e2,this.e2=this.e3,o=r.mult(-1),a&&o._sub(r.perp()._mult(a)),addLineVertex(u,e,o,n,!0,-a,t),this.e3=s.vertexLength++,this.e1>=0&&this.e2>=0&&(d.emplaceBack(this.e1,this.e2,this.e3),s.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,s))},LineBucket.prototype.addPieSliceVertex=function(e,t,r,i,a){r=r.mult(i?-1:1);var n=this.layoutVertexArray,s=this.indexArray;addLineVertex(n,e,r,!1,i,0,t),this.e3=a.vertexLength++,this.e1>=0&&this.e2>=0&&(s.emplaceBack(this.e1,this.e2,this.e3),a.primitiveLength++),i?this.e2=this.e3:this.e1=this.e3},LineBucket.programInterface=lineInterface,module.exports=LineBucket;\n},{\"../../gl/index_buffer\":61,\"../../gl/vertex_buffer\":62,\"../extent\":48,\"../index_array_type\":50,\"../load_geometry\":51,\"../program_configuration\":53,\"../segment\":55,\"../vertex_array_type\":56,\"@mapbox/vector-tile\":6}],47:[function(_dereq_,module,exports){\n\"use strict\";function addVertex(e,t,o,r,a,i,n,s){e.emplaceBack(t,o,Math.round(64*r),Math.round(64*a),i,n,s?s[0]:void 0,s?s[1]:void 0)}function addDynamicAttributes(e,t,o,r){var a=2*Math.PI,i=packUint8ToFloat((o+a)%a/a*255,10*r);e.emplaceBack(t.x,t.y,i),e.emplaceBack(t.x,t.y,i),e.emplaceBack(t.x,t.y,i),e.emplaceBack(t.x,t.y,i)}function addCollisionBoxVertex(e,t,o,r,a,i){return e.emplaceBack(t.x,t.y,o.x,o.y,Math.round(r.x),Math.round(r.y),10*a,10*i)}function getSizeData(e,t,o){var r={};if(r.isFeatureConstant=t.isLayoutValueFeatureConstant(o),r.isZoomConstant=t.isLayoutValueZoomConstant(o),r.isFeatureConstant&&(r.layoutSize=t.getLayoutValue(o,{zoom:e+1})),!r.isZoomConstant){for(var a=t.getLayoutValueStopZoomLevels(o),i=0;i<a.length&&a[i]<=e;)i++;i=Math.max(0,i-1);for(var n=i;n<a.length&&a[n]<e+1;)n++;n=Math.min(a.length-1,n),r.coveringZoomRange=[a[i],a[n]],t.isLayoutValueFeatureConstant(o)&&(r.coveringStopValues=[t.getLayoutValue(o,{zoom:a[i]}),t.getLayoutValue(o,{zoom:a[n]})]),r.functionBase=t.getLayoutProperty(o).base,void 0===r.functionBase&&(r.functionBase=1),r.functionType=t.getLayoutProperty(o).type||\"exponential\"}return r}function getSizeVertexData(e,t,o,r,a){return e.isLayoutValueZoomConstant(r)&&!e.isLayoutValueFeatureConstant(r)?[10*e.getLayoutValue(r,{},a)]:e.isLayoutValueZoomConstant(r)||e.isLayoutValueFeatureConstant(r)?null:[10*e.getLayoutValue(r,{zoom:o[0]},a),10*e.getLayoutValue(r,{zoom:o[1]},a)]}var Point=_dereq_(\"@mapbox/point-geometry\"),ref=_dereq_(\"../segment\"),SegmentVector=ref.SegmentVector,VertexBuffer=_dereq_(\"../../gl/vertex_buffer\"),IndexBuffer=_dereq_(\"../../gl/index_buffer\"),ref$1=_dereq_(\"../program_configuration\"),ProgramConfigurationSet=ref$1.ProgramConfigurationSet,createVertexArrayType=_dereq_(\"../vertex_array_type\"),ref$2=_dereq_(\"../index_array_type\"),TriangleIndexArray=ref$2.TriangleIndexArray,LineIndexArray=ref$2.LineIndexArray,EXTENT=_dereq_(\"../extent\"),ref$3=_dereq_(\"../../shaders/encode_attribute\"),packUint8ToFloat=ref$3.packUint8ToFloat,Anchor=_dereq_(\"../../symbol/anchor\"),getAnchors=_dereq_(\"../../symbol/get_anchors\"),resolveTokens=_dereq_(\"../../util/token\"),ref$4=_dereq_(\"../../symbol/quads\"),getGlyphQuads=ref$4.getGlyphQuads,getIconQuads=ref$4.getIconQuads,ref$5=_dereq_(\"../../symbol/shaping\"),shapeText=ref$5.shapeText,shapeIcon=ref$5.shapeIcon,WritingMode=ref$5.WritingMode,transformText=_dereq_(\"../../symbol/transform_text\"),mergeLines=_dereq_(\"../../symbol/mergelines\"),clipLine=_dereq_(\"../../symbol/clip_line\"),util=_dereq_(\"../../util/util\"),scriptDetection=_dereq_(\"../../util/script_detection\"),loadGeometry=_dereq_(\"../load_geometry\"),CollisionFeature=_dereq_(\"../../symbol/collision_feature\"),findPoleOfInaccessibility=_dereq_(\"../../util/find_pole_of_inaccessibility\"),classifyRings=_dereq_(\"../../util/classify_rings\"),vectorTileFeatureTypes=_dereq_(\"@mapbox/vector-tile\").VectorTileFeature.types,createStructArrayType=_dereq_(\"../../util/struct_array\"),verticalizePunctuation=_dereq_(\"../../util/verticalize_punctuation\"),PlacedSymbolArray=createStructArrayType({members:[{type:\"Int16\",name:\"anchorX\"},{type:\"Int16\",name:\"anchorY\"},{type:\"Uint16\",name:\"glyphStartIndex\"},{type:\"Uint16\",name:\"numGlyphs\"},{type:\"Uint32\",name:\"lineStartIndex\"},{type:\"Uint32\",name:\"lineLength\"},{type:\"Uint16\",name:\"segment\"},{type:\"Uint16\",name:\"lowerSize\"},{type:\"Uint16\",name:\"upperSize\"},{type:\"Float32\",name:\"lineOffsetX\"},{type:\"Float32\",name:\"lineOffsetY\"},{type:\"Float32\",name:\"placementZoom\"},{type:\"Uint8\",name:\"vertical\"}]}),GlyphOffsetArray=createStructArrayType({members:[{type:\"Float32\",name:\"offsetX\"}]}),LineVertexArray=createStructArrayType({members:[{type:\"Int16\",name:\"x\"},{type:\"Int16\",name:\"y\"}]}),layoutAttributes=[{name:\"a_pos_offset\",components:4,type:\"Int16\"},{name:\"a_data\",components:4,type:\"Uint16\"}],dynamicLayoutAttributes=[{name:\"a_projected_pos\",components:3,type:\"Float32\"}],symbolInterfaces={text:{layoutAttributes:layoutAttributes,dynamicLayoutAttributes:dynamicLayoutAttributes,indexArrayType:TriangleIndexArray,paintAttributes:[{property:\"text-color\",name:\"fill_color\"},{property:\"text-halo-color\",name:\"halo_color\"},{property:\"text-halo-width\",name:\"halo_width\"},{property:\"text-halo-blur\",name:\"halo_blur\"},{property:\"text-opacity\",name:\"opacity\"}]},icon:{layoutAttributes:layoutAttributes,dynamicLayoutAttributes:dynamicLayoutAttributes,indexArrayType:TriangleIndexArray,paintAttributes:[{property:\"icon-color\",name:\"fill_color\"},{property:\"icon-halo-color\",name:\"halo_color\"},{property:\"icon-halo-width\",name:\"halo_width\"},{property:\"icon-halo-blur\",name:\"halo_blur\"},{property:\"icon-opacity\",name:\"opacity\"}]},collisionBox:{layoutAttributes:[{name:\"a_pos\",components:2,type:\"Int16\"},{name:\"a_anchor_pos\",components:2,type:\"Int16\"},{name:\"a_extrude\",components:2,type:\"Int16\"},{name:\"a_data\",components:2,type:\"Uint8\"}],indexArrayType:LineIndexArray}},SymbolBuffers=function(e,t,o,r){this.programInterface=e;var a=createVertexArrayType(e.layoutAttributes),i=e.indexArrayType;if(this.layoutVertexArray=new a(r&&r.layoutVertexArray),this.indexArray=new i(r&&r.indexArray),this.programConfigurations=new ProgramConfigurationSet(e,t,o,r&&r.programConfigurations),this.segments=new SegmentVector(r&&r.segments),e.dynamicLayoutAttributes){var n=createVertexArrayType(e.dynamicLayoutAttributes);this.dynamicLayoutVertexArray=new n(r&&r.dynamicLayoutVertexArray)}};SymbolBuffers.prototype.serialize=function(e){return{layoutVertexArray:this.layoutVertexArray.serialize(e),indexArray:this.indexArray.serialize(e),programConfigurations:this.programConfigurations.serialize(e),segments:this.segments.get(),dynamicLayoutVertexArray:this.dynamicLayoutVertexArray&&this.dynamicLayoutVertexArray.serialize(e)}},SymbolBuffers.prototype.upload=function(e){this.layoutVertexBuffer=new VertexBuffer(e,this.layoutVertexArray),this.indexBuffer=new IndexBuffer(e,this.indexArray),this.programConfigurations.upload(e),this.programInterface.dynamicLayoutAttributes&&(this.dynamicLayoutVertexBuffer=new VertexBuffer(e,this.dynamicLayoutVertexArray,!0))},SymbolBuffers.prototype.destroy=function(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.programConfigurations.destroy(),this.segments.destroy(),this.dynamicLayoutVertexBuffer&&this.dynamicLayoutVertexBuffer.destroy())};var SymbolBucket=function(e){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.pixelRatio=e.pixelRatio,e.text)this.text=new SymbolBuffers(symbolInterfaces.text,e.layers,e.zoom,e.text),this.icon=new SymbolBuffers(symbolInterfaces.icon,e.layers,e.zoom,e.icon),this.collisionBox=new SymbolBuffers(symbolInterfaces.collisionBox,e.layers,e.zoom,e.collisionBox),this.textSizeData=e.textSizeData,this.iconSizeData=e.iconSizeData,this.placedGlyphArray=new PlacedSymbolArray(e.placedGlyphArray),this.placedIconArray=new PlacedSymbolArray(e.placedIconArray),this.glyphOffsetArray=new GlyphOffsetArray(e.glyphOffsetArray),this.lineVertexArray=new LineVertexArray(e.lineVertexArray);else{var t=this.layers[0];this.textSizeData=getSizeData(this.zoom,t,\"text-size\"),this.iconSizeData=getSizeData(this.zoom,t,\"icon-size\")}};SymbolBucket.prototype.populate=function(e,t){var o=this,r=this.layers[0],a=r.layout,i=a[\"text-font\"],n=(!r.isLayoutValueFeatureConstant(\"text-field\")||a[\"text-field\"])&&i,s=!r.isLayoutValueFeatureConstant(\"icon-image\")||a[\"icon-image\"];if(this.features=[],n||s){for(var l=t.iconDependencies,y=t.glyphDependencies,c=y[i]=y[i]||{},u={zoom:this.zoom},p=0,x=e;p<x.length;p+=1){var m=x[p],h=m.feature,d=m.index,f=m.sourceLayerIndex;if(r.filter(h)){var g=void 0;n&&(g=r.getLayoutValue(\"text-field\",u,h.properties),r.isLayoutValueFeatureConstant(\"text-field\")&&(g=resolveTokens(h.properties,g)),g=transformText(g,r,u,h.properties));var b=void 0;if(s&&(b=r.getLayoutValue(\"icon-image\",u,h.properties),r.isLayoutValueFeatureConstant(\"icon-image\")&&(b=resolveTokens(h.properties,b))),(g||b)&&(o.features.push({text:g,icon:b,index:d,sourceLayerIndex:f,geometry:loadGeometry(h),properties:h.properties,type:vectorTileFeatureTypes[h.type]}),b&&(l[b]=!0),g))for(var A=\"map\"===a[\"text-rotation-alignment\"]&&\"line\"===a[\"symbol-placement\"],v=scriptDetection.allowsVerticalWritingMode(g),S=0;S<g.length;S++)if(c[g.charCodeAt(S)]=!0,A&&v){var I=verticalizePunctuation.lookup[g.charAt(S)];I&&(c[I.charCodeAt(0)]=!0)}}}\"line\"===a[\"symbol-placement\"]&&(this.features=mergeLines(this.features))}},SymbolBucket.prototype.isEmpty=function(){return 0===this.icon.layoutVertexArray.length&&0===this.text.layoutVertexArray.length&&0===this.collisionBox.layoutVertexArray.length},SymbolBucket.prototype.serialize=function(e){return{zoom:this.zoom,layerIds:this.layers.map(function(e){return e.id}),sdfIcons:this.sdfIcons,iconsNeedLinear:this.iconsNeedLinear,textSizeData:this.textSizeData,iconSizeData:this.iconSizeData,placedGlyphArray:this.placedGlyphArray.serialize(e),placedIconArray:this.placedIconArray.serialize(e),glyphOffsetArray:this.glyphOffsetArray.serialize(e),lineVertexArray:this.lineVertexArray.serialize(e),text:this.text.serialize(e),icon:this.icon.serialize(e),collisionBox:this.collisionBox.serialize(e)}},SymbolBucket.prototype.upload=function(e){this.text.upload(e),this.icon.upload(e),this.collisionBox.upload(e)},SymbolBucket.prototype.destroy=function(){this.text.destroy(),this.icon.destroy(),this.collisionBox.destroy()},SymbolBucket.prototype.prepare=function(e,t,o,r){var a=this;this.symbolInstances=[];var i=512*this.overscaling;this.tilePixelRatio=EXTENT/i,this.compareText={},this.iconsNeedLinear=!1;for(var n=this.layers[0].layout,s=24*n[\"text-line-height\"],l=n[\"text-font\"].join(\",\"),y=\"map\"===n[\"text-rotation-alignment\"]&&\"line\"===n[\"symbol-placement\"],c=e[l]||{},u=t[l]||{},p=0,x=a.features;p<x.length;p+=1){var m=x[p],h={},d=m.text;if(d){var f=a.layers[0].getLayoutValue(\"text-offset\",{zoom:a.zoom},m.properties).map(function(e){return 24*e}),g=24*a.layers[0].getLayoutValue(\"text-letter-spacing\",{zoom:a.zoom},m.properties),b=scriptDetection.allowsLetterSpacing(d)?g:0,A=a.layers[0].getLayoutValue(\"text-anchor\",{zoom:a.zoom},m.properties),v=a.layers[0].getLayoutValue(\"text-justify\",{zoom:a.zoom},m.properties),S=\"line\"!==n[\"symbol-placement\"]?24*a.layers[0].getLayoutValue(\"text-max-width\",{zoom:a.zoom},m.properties):0,I=function(e,t){return shapeText(e,c,S,s,A,v,b,f,24,t)};h[WritingMode.horizontal]=I(d,WritingMode.horizontal),scriptDetection.allowsVerticalWritingMode(d)&&y&&(h[WritingMode.vertical]=I(d,WritingMode.vertical))}var B=void 0;if(m.icon){var z=o[m.icon];z&&(B=shapeIcon(r[m.icon],a.layers[0].getLayoutValue(\"icon-offset\",{zoom:a.zoom},m.properties),a.layers[0].getLayoutValue(\"icon-anchor\",{zoom:a.zoom},m.properties)),void 0===a.sdfIcons?a.sdfIcons=z.sdf:a.sdfIcons!==z.sdf&&util.warnOnce(\"Style sheet warning: Cannot mix SDF and non-SDF icons in one buffer\"),z.pixelRatio!==a.pixelRatio?a.iconsNeedLinear=!0:0===n[\"icon-rotate\"]&&a.layers[0].isLayoutValueFeatureConstant(\"icon-rotate\")||(a.iconsNeedLinear=!0))}(h[WritingMode.horizontal]||B)&&a.addFeature(m,h,B,u)}},SymbolBucket.prototype.addFeature=function(e,t,o,r){var a=this,i=this.layers[0].getLayoutValue(\"text-size\",{zoom:this.zoom+1},e.properties),n=this.layers[0].getLayoutValue(\"icon-size\",{zoom:this.zoom+1},e.properties),s=this.layers[0].getLayoutValue(\"text-offset\",{zoom:this.zoom},e.properties),l=this.layers[0].getLayoutValue(\"icon-offset\",{zoom:this.zoom},e.properties),y=this.layers[0].getLayoutValue(\"text-size\",{zoom:18},e.properties);void 0===y&&(y=i);var c=this.layers[0].layout,u=i/24,p=this.tilePixelRatio*u,x=this.tilePixelRatio*y/24,m=this.tilePixelRatio*n,h=this.tilePixelRatio*c[\"symbol-spacing\"],d=c[\"symbol-avoid-edges\"],f=c[\"text-padding\"]*this.tilePixelRatio,g=c[\"icon-padding\"]*this.tilePixelRatio,b=c[\"text-max-angle\"]/180*Math.PI,A=\"map\"===c[\"text-rotation-alignment\"]&&\"line\"===c[\"symbol-placement\"],v=\"map\"===c[\"icon-rotation-alignment\"]&&\"line\"===c[\"symbol-placement\"],S=c[\"text-allow-overlap\"]||c[\"icon-allow-overlap\"]||c[\"text-ignore-placement\"]||c[\"icon-ignore-placement\"],I=c[\"symbol-placement\"],B=h/2,z=function(i,n){var y=!(n.x<0||n.x>EXTENT||n.y<0||n.y>EXTENT);if(!d||y){var c=y||S;a.addSymbolInstance(n,i,t,o,a.layers[0],c,a.collisionBoxArray,e.index,e.sourceLayerIndex,a.index,p,f,A,s,m,g,v,l,{zoom:a.zoom},e.properties,r)}};if(\"line\"===I)for(var V=0,L=clipLine(e.geometry,0,0,EXTENT,EXTENT);V<L.length;V+=1)for(var T=L[V],w=getAnchors(T,h,b,t[WritingMode.vertical]||t[WritingMode.horizontal],o,24,x,a.overscaling,EXTENT),M=0,C=w;M<C.length;M+=1){var _=C[M],k=t[WritingMode.horizontal];k&&a.anchorIsTooClose(k.text,B,_)||z(T,_)}else if(\"Polygon\"===e.type)for(var P=0,F=classifyRings(e.geometry,0);P<F.length;P+=1){var E=F[P],D=findPoleOfInaccessibility(E,16);z(E[0],new Anchor(D.x,D.y,0))}else if(\"LineString\"===e.type)for(var q=0,O=e.geometry;q<O.length;q+=1){var N=O[q];z(N,new Anchor(N[0].x,N[0].y,0))}else if(\"Point\"===e.type)for(var W=0,R=e.geometry;W<R.length;W+=1)for(var G=R[W],$=0,U=G;$<U.length;$+=1){var X=U[$];z([X],new Anchor(X.x,X.y,0))}},SymbolBucket.prototype.anchorIsTooClose=function(e,t,o){var r=this.compareText;if(e in r){for(var a=r[e],i=a.length-1;i>=0;i--)if(o.dist(a[i])<t)return!0}else r[e]=[];return r[e].push(o),!1},SymbolBucket.prototype.place=function(e,t){var o=this;this.text=new SymbolBuffers(symbolInterfaces.text,this.layers,this.zoom),this.icon=new SymbolBuffers(symbolInterfaces.icon,this.layers,this.zoom),this.collisionBox=new SymbolBuffers(symbolInterfaces.collisionBox,this.layers,this.zoom),this.placedGlyphArray=new PlacedSymbolArray,this.placedIconArray=new PlacedSymbolArray,this.glyphOffsetArray=new GlyphOffsetArray,this.lineVertexArray=new LineVertexArray;var r=this.layers[0],a=r.layout,i=e.maxScale,n=\"map\"===a[\"text-rotation-alignment\"]&&\"line\"===a[\"symbol-placement\"],s=\"map\"===a[\"icon-rotation-alignment\"]&&\"line\"===a[\"symbol-placement\"];if(a[\"text-allow-overlap\"]||a[\"icon-allow-overlap\"]||a[\"text-ignore-placement\"]||a[\"icon-ignore-placement\"]){var l=e.angle,y=Math.sin(l),c=Math.cos(l);this.symbolInstances.sort(function(e,t){return(y*e.anchor.x+c*e.anchor.y|0)-(y*t.anchor.x+c*t.anchor.y|0)||t.featureIndex-e.featureIndex})}for(var u=0,p=o.symbolInstances;u<p.length;u+=1){var x=p[u],m={boxStartIndex:x.textBoxStartIndex,boxEndIndex:x.textBoxEndIndex},h={boxStartIndex:x.iconBoxStartIndex,boxEndIndex:x.iconBoxEndIndex},d=!(x.textBoxStartIndex===x.textBoxEndIndex),f=!(x.iconBoxStartIndex===x.iconBoxEndIndex),g=a[\"text-optional\"]||!d,b=a[\"icon-optional\"]||!f,A=d?e.placeCollisionFeature(m,a[\"text-allow-overlap\"],a[\"symbol-avoid-edges\"]):e.minScale,v=f?e.placeCollisionFeature(h,a[\"icon-allow-overlap\"],a[\"symbol-avoid-edges\"]):e.minScale;if(g||b?!b&&A?A=Math.max(v,A):!g&&v&&(v=Math.max(v,A)):v=A=Math.max(v,A),d||f){for(var S=x.line,I=o.lineVertexArray.length,B=0;B<S.length;B++)o.lineVertexArray.emplaceBack(S[B].x,S[B].y);var z=o.lineVertexArray.length-I;if(d&&(e.insertCollisionFeature(m,A,a[\"text-ignore-placement\"]),A<=i)){var V=getSizeVertexData(r,o.zoom,o.textSizeData.coveringZoomRange,\"text-size\",x.featureProperties);o.addSymbols(o.text,x.glyphQuads,A,V,a[\"text-keep-upright\"],x.textOffset,n,e.angle,x.featureProperties,x.writingModes,x.anchor,I,z,o.placedGlyphArray)}if(f&&(e.insertCollisionFeature(h,v,a[\"icon-ignore-placement\"]),v<=i)){var L=getSizeVertexData(r,o.zoom,o.iconSizeData.coveringZoomRange,\"icon-size\",x.featureProperties);o.addSymbols(o.icon,x.iconQuads,v,L,a[\"icon-keep-upright\"],x.iconOffset,s,e.angle,x.featureProperties,0,x.anchor,I,z,o.placedIconArray)}}}t&&this.addToDebugBuffers(e)},SymbolBucket.prototype.addSymbols=function(e,t,o,r,a,i,n,s,l,y,c,u,p,x){for(var m=this,h=e.indexArray,d=e.layoutVertexArray,f=e.dynamicLayoutVertexArray,g=this.zoom,b=Math.max(Math.log(o)/Math.LN2+g,0),A=this.glyphOffsetArray.length,v=(c.angle+s+2*Math.PI)%(2*Math.PI),S=v>1*Math.PI/4&&v<=3*Math.PI/4||v>5*Math.PI/4&&v<=7*Math.PI/4,I=Boolean(y&WritingMode.vertical)&&S,B=0,z=t;B<z.length;B+=1){var V=z[B];if(!n||!a||V.writingMode===WritingMode.vertical===I){var L=V.tl,T=V.tr,w=V.bl,M=V.br,C=V.tex,_=e.segments.prepareSegment(4,e.layoutVertexArray,e.indexArray),k=_.vertexLength,P=V.glyphOffset[1];addVertex(d,c.x,c.y,L.x,P+L.y,C.x,C.y,r),addVertex(d,c.x,c.y,T.x,P+T.y,C.x+C.w,C.y,r),addVertex(d,c.x,c.y,w.x,P+w.y,C.x,C.y+C.h,r),addVertex(d,c.x,c.y,M.x,P+M.y,C.x+C.w,C.y+C.h,r),addDynamicAttributes(f,c,0,b),h.emplaceBack(k,k+1,k+2),h.emplaceBack(k+1,k+2,k+3),_.vertexLength+=4,_.primitiveLength+=2,m.glyphOffsetArray.emplaceBack(V.glyphOffset[0])}}x.emplaceBack(c.x,c.y,A,this.glyphOffsetArray.length-A,u,p,c.segment,r?r[0]:0,r?r[1]:0,i[0],i[1],b,I),e.programConfigurations.populatePaintArrays(e.layoutVertexArray.length,l)},SymbolBucket.prototype.addToDebugBuffers=function(e){for(var t=this,o=this.collisionBox,r=o.layoutVertexArray,a=o.indexArray,i=-e.angle,n=e.yStretch,s=0,l=t.symbolInstances;s<l.length;s+=1){var y=l[s];y.textCollisionFeature={boxStartIndex:y.textBoxStartIndex,boxEndIndex:y.textBoxEndIndex},y.iconCollisionFeature={boxStartIndex:y.iconBoxStartIndex,boxEndIndex:y.iconBoxEndIndex};for(var c=0;c<2;c++){var u=y[0===c?\"textCollisionFeature\":\"iconCollisionFeature\"];if(u)for(var p=u.boxStartIndex;p<u.boxEndIndex;p++){var x=t.collisionBoxArray.get(p);if(!(1===e.perspectiveRatio&&x.maxScale<1)){var m=x.anchorPoint,h=new Point(x.x1,x.y1*n)._rotate(i),d=new Point(x.x2,x.y1*n)._rotate(i),f=new Point(x.x1,x.y2*n)._rotate(i),g=new Point(x.x2,x.y2*n)._rotate(i),b=Math.max(0,Math.min(25,t.zoom+Math.log(x.maxScale)/Math.LN2)),A=Math.max(0,Math.min(25,t.zoom+Math.log(x.placementScale)/Math.LN2)),v=o.segments.prepareSegment(4,o.layoutVertexArray,o.indexArray),S=v.vertexLength;addCollisionBoxVertex(r,m,y.anchor,h,b,A),addCollisionBoxVertex(r,m,y.anchor,d,b,A),addCollisionBoxVertex(r,m,y.anchor,g,b,A),addCollisionBoxVertex(r,m,y.anchor,f,b,A),a.emplaceBack(S,S+1),a.emplaceBack(S+1,S+2),a.emplaceBack(S+2,S+3),a.emplaceBack(S+3,S),v.vertexLength+=4,v.primitiveLength+=4}}}}},SymbolBucket.prototype.addSymbolInstance=function(e,t,o,r,a,i,n,s,l,y,c,u,p,x,m,h,d,f,g,b,A){var v,S,I=[],B=[];for(var z in o){var V=parseInt(z,10);o[V]&&(B=B.concat(i?getGlyphQuads(e,o[V],a,p,g,b,A):[]),v=new CollisionFeature(n,t,e,s,l,y,o[V],c,u,p,!1))}var L=v?v.boxStartIndex:this.collisionBoxArray.length,T=v?v.boxEndIndex:this.collisionBoxArray.length;r&&(I=i?getIconQuads(e,r,a,d,o[WritingMode.horizontal],g,b):[],S=new CollisionFeature(n,t,e,s,l,y,r,m,h,d,!0));var w=S?S.boxStartIndex:this.collisionBoxArray.length,M=S?S.boxEndIndex:this.collisionBoxArray.length;T>SymbolBucket.MAX_INSTANCES&&util.warnOnce(\"Too many symbols being rendered in a tile. See https://github.com/mapbox/mapbox-gl-js/issues/2907\"),M>SymbolBucket.MAX_INSTANCES&&util.warnOnce(\"Too many glyphs being rendered in a tile. See https://github.com/mapbox/mapbox-gl-js/issues/2907\");var C=(o[WritingMode.vertical]?WritingMode.vertical:0)|(o[WritingMode.horizontal]?WritingMode.horizontal:0);this.symbolInstances.push({textBoxStartIndex:L,textBoxEndIndex:T,iconBoxStartIndex:w,iconBoxEndIndex:M,glyphQuads:B,iconQuads:I,textOffset:x,iconOffset:f,anchor:e,line:t,featureIndex:s,featureProperties:b,writingModes:C})},SymbolBucket.programInterfaces=symbolInterfaces,SymbolBucket.MAX_INSTANCES=65535,SymbolBucket.addDynamicAttributes=addDynamicAttributes,module.exports=SymbolBucket;\n},{\"../../gl/index_buffer\":61,\"../../gl/vertex_buffer\":62,\"../../shaders/encode_attribute\":85,\"../../symbol/anchor\":167,\"../../symbol/clip_line\":169,\"../../symbol/collision_feature\":171,\"../../symbol/get_anchors\":173,\"../../symbol/mergelines\":174,\"../../symbol/quads\":176,\"../../symbol/shaping\":177,\"../../symbol/transform_text\":179,\"../../util/classify_rings\":205,\"../../util/find_pole_of_inaccessibility\":211,\"../../util/script_detection\":218,\"../../util/struct_array\":220,\"../../util/token\":222,\"../../util/util\":223,\"../../util/verticalize_punctuation\":225,\"../extent\":48,\"../index_array_type\":50,\"../load_geometry\":51,\"../program_configuration\":53,\"../segment\":55,\"../vertex_array_type\":56,\"@mapbox/point-geometry\":2,\"@mapbox/vector-tile\":6}],48:[function(_dereq_,module,exports){\n\"use strict\";module.exports=8192;\n},{}],49:[function(_dereq_,module,exports){\n\"use strict\";function topDownFeatureComparator(e,r){return r-e}var Point=_dereq_(\"@mapbox/point-geometry\"),loadGeometry=_dereq_(\"./load_geometry\"),EXTENT=_dereq_(\"./extent\"),featureFilter=_dereq_(\"../style-spec/feature_filter\"),createStructArrayType=_dereq_(\"../util/struct_array\"),Grid=_dereq_(\"grid-index\"),DictionaryCoder=_dereq_(\"../util/dictionary_coder\"),vt=_dereq_(\"@mapbox/vector-tile\"),Protobuf=_dereq_(\"pbf\"),GeoJSONFeature=_dereq_(\"../util/vectortile_to_geojson\"),arraysIntersect=_dereq_(\"../util/util\").arraysIntersect,FeatureIndexArray=createStructArrayType({members:[{type:\"Uint32\",name:\"featureIndex\"},{type:\"Uint16\",name:\"sourceLayerIndex\"},{type:\"Uint16\",name:\"bucketIndex\"}]}),FeatureIndex=function(e,r,t,a){this.coord=e,this.overscaling=r,this.x=e.x,this.y=e.y,this.z=e.z-Math.log(r)/Math.LN2,this.grid=t||new Grid(EXTENT,16,0),this.featureIndexArray=a||new FeatureIndexArray};FeatureIndex.deserialize=function(e,r,t){var a=new FeatureIndex(e.coord,e.overscaling,new Grid(e.grid),new FeatureIndexArray(e.featureIndexArray));return a.rawTileData=r,a.bucketLayerIDs=e.bucketLayerIDs,a.setCollisionTile(t),a},FeatureIndex.prototype.insert=function(e,r,t,a,i){var n=this,o=this.featureIndexArray.length;this.featureIndexArray.emplaceBack(t,a,i);for(var s=0;s<r.length;s++){for(var u=r[s],y=[1/0,1/0,-1/0,-1/0],l=0;l<u.length;l++){var d=u[l];y[0]=Math.min(y[0],d.x),y[1]=Math.min(y[1],d.y),y[2]=Math.max(y[2],d.x),y[3]=Math.max(y[3],d.y)}n.grid.insert(o,y[0],y[1],y[2],y[3])}},FeatureIndex.prototype.setCollisionTile=function(e){this.collisionTile=e},FeatureIndex.prototype.serialize=function(e){var r=this.grid.toArrayBuffer();return e&&e.push(r),{coord:this.coord,overscaling:this.overscaling,grid:r,featureIndexArray:this.featureIndexArray.serialize(e),bucketLayerIDs:this.bucketLayerIDs}},FeatureIndex.prototype.query=function(e,r){this.vtLayers||(this.vtLayers=new vt.VectorTile(new Protobuf(this.rawTileData)).layers,this.sourceLayerCoder=new DictionaryCoder(this.vtLayers?Object.keys(this.vtLayers).sort():[\"_geojsonTileLayer\"]));for(var t={},a=e.params||{},i=EXTENT/e.tileSize/e.scale,n=featureFilter(a.filter),o=e.queryGeometry,s=e.additionalRadius*i,u=1/0,y=1/0,l=-1/0,d=-1/0,c=0;c<o.length;c++)for(var h=o[c],f=0;f<h.length;f++){var x=h[f];u=Math.min(u,x.x),y=Math.min(y,x.y),l=Math.max(l,x.x),d=Math.max(d,x.y)}var v=this.grid.query(u-s,y-s,l+s,d+s);v.sort(topDownFeatureComparator),this.filterMatching(t,v,this.featureIndexArray,o,n,a.layers,r,e.bearing,i);var I=this.collisionTile.queryRenderedSymbols(o,e.scale);return I.sort(),this.filterMatching(t,I,this.collisionTile.collisionBoxArray,o,n,a.layers,r,e.bearing,i),t},FeatureIndex.prototype.filterMatching=function(e,r,t,a,i,n,o,s,u){for(var y,l=this,d=0;d<r.length;d++){var c=r[d];if(c!==y){y=c;var h=t.get(c),f=l.bucketLayerIDs[h.bucketIndex];if(!n||arraysIntersect(n,f)){var x=l.sourceLayerCoder.decode(h.sourceLayerIndex),v=l.vtLayers[x],I=v.feature(h.featureIndex);if(i(I))for(var p=null,g=0;g<f.length;g++){var m=f[g];if(!(n&&n.indexOf(m)<0)){var F=o[m];if(F&&(\"symbol\"===F.type||(p||(p=loadGeometry(I)),F.queryIntersectsFeature(a,I,p,l.z,s,u)))){var b=new GeoJSONFeature(I,l.z,l.x,l.y);b.layer=F.serialize();var L=e[m];void 0===L&&(L=e[m]=[]),L.push({featureIndex:c,feature:b})}}}}}}},FeatureIndex.prototype.hasLayer=function(e){for(var r=this,t=0,a=r.bucketLayerIDs;t<a.length;t+=1)for(var i=a[t],n=0,o=i;n<o.length;n+=1){var s=o[n];if(e===s)return!0}return!1},module.exports=FeatureIndex;\n},{\"../style-spec/feature_filter\":110,\"../util/dictionary_coder\":207,\"../util/struct_array\":220,\"../util/util\":223,\"../util/vectortile_to_geojson\":224,\"./extent\":48,\"./load_geometry\":51,\"@mapbox/point-geometry\":2,\"@mapbox/vector-tile\":6,\"grid-index\":22,\"pbf\":29}],50:[function(_dereq_,module,exports){\n\"use strict\";function createIndexArrayType(e){return createStructArrayType({members:[{type:\"Uint16\",name:\"vertices\",components:e}]})}var createStructArrayType=_dereq_(\"../util/struct_array\");module.exports={LineIndexArray:createIndexArrayType(2),TriangleIndexArray:createIndexArrayType(3)};\n},{\"../util/struct_array\":220}],51:[function(_dereq_,module,exports){\n\"use strict\";function createBounds(e){return{min:-1*Math.pow(2,e-1),max:Math.pow(2,e-1)-1}}var util=_dereq_(\"../util/util\"),EXTENT=_dereq_(\"./extent\"),bounds=createBounds(16);module.exports=function(e){for(var t=EXTENT/e.extent,r=e.loadGeometry(),n=0;n<r.length;n++)for(var u=r[n],o=0;o<u.length;o++){var a=u[o];a.x=Math.round(a.x*t),a.y=Math.round(a.y*t),(a.x<bounds.min||a.x>bounds.max||a.y<bounds.min||a.y>bounds.max)&&util.warnOnce(\"Geometry exceeds allowed extent, reduce your vector tile buffer size\")}return r};\n},{\"../util/util\":223,\"./extent\":48}],52:[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\":220}],53:[function(_dereq_,module,exports){\n\"use strict\";function packColor(r){return[packUint8ToFloat(255*r[0],255*r[1]),packUint8ToFloat(255*r[2],255*r[3])]}var createVertexArrayType=_dereq_(\"./vertex_array_type\"),interpolationFactor=_dereq_(\"../style-spec/function\").interpolationFactor,packUint8ToFloat=_dereq_(\"../shaders/encode_attribute\").packUint8ToFloat,VertexBuffer=_dereq_(\"../gl/vertex_buffer\"),ConstantBinder=function(r,t,o,e){this.name=r,this.type=t,this.property=o,this.useIntegerZoom=e};ConstantBinder.prototype.defines=function(){return[\"#define HAS_UNIFORM_u_\"+this.name]},ConstantBinder.prototype.populatePaintArray=function(){},ConstantBinder.prototype.setUniforms=function(r,t,o,e){var i=e.zoom,n=o.getPaintValue(this.property,{zoom:this.useIntegerZoom?Math.floor(i):i});\"color\"===this.type?r.uniform4fv(t.uniforms[\"u_\"+this.name],n):r.uniform1f(t.uniforms[\"u_\"+this.name],n)};var SourceFunctionBinder=function(r,t,o){this.name=r,this.type=t,this.property=o};SourceFunctionBinder.prototype.defines=function(){return[]},SourceFunctionBinder.prototype.populatePaintArray=function(r,t,o,e,i,n){var a=this,s=r.getPaintValue(this.property,void 0,n);if(\"color\"===this.type)for(var p=packColor(s),u=e;u<i;u++){var f=t.get(u);f[\"a_\"+a.name+\"0\"]=p[0],f[\"a_\"+a.name+\"1\"]=p[1]}else{for(var c=e;c<i;c++){t.get(c)[\"a_\"+a.name]=s}var m=o[this.property];m.max=Math.max(m.max,s)}},SourceFunctionBinder.prototype.setUniforms=function(r,t){r.uniform1f(t.uniforms[\"a_\"+this.name+\"_t\"],0)};var CompositeFunctionBinder=function(r,t,o,e,i){this.name=r,this.type=t,this.property=o,this.useIntegerZoom=e,this.zoom=i};CompositeFunctionBinder.prototype.defines=function(){return[]},CompositeFunctionBinder.prototype.populatePaintArray=function(r,t,o,e,i,n){var a=this,s=r.getPaintValue(this.property,{zoom:this.zoom},n),p=r.getPaintValue(this.property,{zoom:this.zoom+1},n);if(\"color\"===this.type)for(var u=packColor(s),f=packColor(p),c=e;c<i;c++){var m=t.get(c);m[\"a_\"+a.name+\"0\"]=u[0],m[\"a_\"+a.name+\"1\"]=u[1],m[\"a_\"+a.name+\"2\"]=f[0],m[\"a_\"+a.name+\"3\"]=f[1]}else{for(var y=e;y<i;y++){var g=t.get(y);g[\"a_\"+a.name+\"0\"]=s,g[\"a_\"+a.name+\"1\"]=p}var h=o[this.property];h.max=Math.max(h.max,s,p)}},CompositeFunctionBinder.prototype.setUniforms=function(r,t,o,e){var i=e.zoom,n=interpolationFactor(this.useIntegerZoom?Math.floor(i):i,1,this.zoom,this.zoom+1);r.uniform1f(t.uniforms[\"a_\"+this.name+\"_t\"],n)};var ProgramConfiguration=function(){this.binders={},this.cacheKey=\"\"};ProgramConfiguration.createDynamic=function(r,t,o){for(var e=new ProgramConfiguration,i=[],n=0,a=r.paintAttributes||[];n<a.length;n+=1){var s=a[n],p=s.property,u=s.useIntegerZoom||!1,f=s.name||p.replace(t.type+\"-\",\"\").replace(/-/g,\"_\"),c=t._paintSpecifications[p].type;t.isPaintValueFeatureConstant(p)?(e.binders[f]=new ConstantBinder(f,c,p,u),e.cacheKey+=\"/u_\"+f):t.isPaintValueZoomConstant(p)?(e.binders[f]=new SourceFunctionBinder(f,c,p),e.cacheKey+=\"/a_\"+f,i.push({name:\"a_\"+f,type:\"Float32\",components:\"color\"===c?2:1})):(e.binders[f]=new CompositeFunctionBinder(f,c,p,u,o),e.cacheKey+=\"/z_\"+f,i.push({name:\"a_\"+f,type:\"Float32\",components:\"color\"===c?4:2}))}return e.PaintVertexArray=createVertexArrayType(i),e.interface=r,e.layer=t,e},ProgramConfiguration.createBasicFill=function(){var r=new ProgramConfiguration;return r.binders.color=new ConstantBinder(\"color\",\"color\",\"fill-color\",!1),r.cacheKey+=\"/u_color\",r.binders.opacity=new ConstantBinder(\"opacity\",\"number\",\"fill-opacity\",!1),r.cacheKey+=\"/u_opacity\",r},ProgramConfiguration.prototype.createPaintPropertyStatistics=function(){var r=this,t={};for(var o in r.binders)t[r.binders[o].property]={max:-1/0};return t},ProgramConfiguration.prototype.populatePaintArray=function(r,t){var o=this,e=this.paintVertexArray;if(0!==e.bytesPerElement){var i=e.length;e.resize(r);for(var n in o.binders)o.binders[n].populatePaintArray(o.layer,e,o.paintPropertyStatistics,i,r,t)}},ProgramConfiguration.prototype.defines=function(){var r=this,t=[];for(var o in r.binders)t.push.apply(t,r.binders[o].defines());return t},ProgramConfiguration.prototype.setUniforms=function(r,t,o,e){var i=this;for(var n in i.binders)i.binders[n].setUniforms(r,t,o,e)},ProgramConfiguration.prototype.serialize=function(r){return 0===this.paintVertexArray.length?null:{array:this.paintVertexArray.serialize(r),type:this.paintVertexArray.constructor.serialize(),statistics:this.paintPropertyStatistics}},ProgramConfiguration.deserialize=function(r,t,o,e){var i=ProgramConfiguration.createDynamic(r,t,o);return e&&(i.PaintVertexArray=createVertexArrayType(e.type.members),i.paintVertexArray=new i.PaintVertexArray(e.array),i.paintPropertyStatistics=e.statistics),i},ProgramConfiguration.prototype.upload=function(r){this.paintVertexArray&&(this.paintVertexBuffer=new VertexBuffer(r,this.paintVertexArray))},ProgramConfiguration.prototype.destroy=function(){this.paintVertexBuffer&&this.paintVertexBuffer.destroy()};var ProgramConfigurationSet=function(r,t,o,e){var i=this;if(this.programConfigurations={},e)for(var n=0,a=t;n<a.length;n+=1){var s=a[n];i.programConfigurations[s.id]=ProgramConfiguration.deserialize(r,s,o,e[s.id])}else for(var p=0,u=t;p<u.length;p+=1){var f=u[p],c=ProgramConfiguration.createDynamic(r,f,o);c.paintVertexArray=new c.PaintVertexArray,c.paintPropertyStatistics=c.createPaintPropertyStatistics(),i.programConfigurations[f.id]=c}};ProgramConfigurationSet.prototype.populatePaintArrays=function(r,t){var o=this;for(var e in o.programConfigurations)o.programConfigurations[e].populatePaintArray(r,t)},ProgramConfigurationSet.prototype.serialize=function(r){var t=this,o={};for(var e in t.programConfigurations){var i=t.programConfigurations[e].serialize(r);i&&(o[e]=i)}return o},ProgramConfigurationSet.prototype.get=function(r){return this.programConfigurations[r]},ProgramConfigurationSet.prototype.upload=function(r){var t=this;for(var o in t.programConfigurations)t.programConfigurations[o].upload(r)},ProgramConfigurationSet.prototype.destroy=function(){var r=this;for(var t in r.programConfigurations)r.programConfigurations[t].destroy()},module.exports={ProgramConfiguration:ProgramConfiguration,ProgramConfigurationSet:ProgramConfigurationSet};\n},{\"../gl/vertex_buffer\":62,\"../shaders/encode_attribute\":85,\"../style-spec/function\":112,\"./vertex_array_type\":56}],54:[function(_dereq_,module,exports){\n\"use strict\";var createStructArrayType=_dereq_(\"../util/struct_array\"),RasterBoundsArray=createStructArrayType({members:[{name:\"a_pos\",type:\"Int16\",components:2},{name:\"a_texture_pos\",type:\"Int16\",components:2}]});module.exports=RasterBoundsArray;\n},{\"../util/struct_array\":220}],55:[function(_dereq_,module,exports){\n\"use strict\";var ref=_dereq_(\"../util/util\"),warnOnce=ref.warnOnce,MAX_VERTEX_ARRAY_LENGTH=Math.pow(2,16)-1,SegmentVector=function(e){void 0===e&&(e=[]),this.segments=e};SegmentVector.prototype.prepareSegment=function(e,t,r){var n=this.segments[this.segments.length-1];return e>MAX_VERTEX_ARRAY_LENGTH&&warnOnce(\"Max vertices per segment is \"+MAX_VERTEX_ARRAY_LENGTH+\": bucket requested \"+e),(!n||n.vertexLength+e>module.exports.MAX_VERTEX_ARRAY_LENGTH)&&(n={vertexOffset:t.length,primitiveOffset:r.length,vertexLength:0,primitiveLength:0},this.segments.push(n)),n},SegmentVector.prototype.get=function(){return this.segments},SegmentVector.prototype.destroy=function(){for(var e=this,t=0,r=e.segments;t<r.length;t+=1){var n=r[t];for(var s in n.vaos)n.vaos[s].destroy()}},module.exports={SegmentVector:SegmentVector,MAX_VERTEX_ARRAY_LENGTH:MAX_VERTEX_ARRAY_LENGTH};\n},{\"../util/util\":223}],56:[function(_dereq_,module,exports){\n\"use strict\";function createVertexArrayType(r){return createStructArrayType({members:r,alignment:4})}var createStructArrayType=_dereq_(\"../util/struct_array\");module.exports=createVertexArrayType;\n},{\"../util/struct_array\":220}],57:[function(_dereq_,module,exports){\n\"use strict\";var Coordinate=function(o,t,n){this.column=o,this.row=t,this.zoom=n};Coordinate.prototype.clone=function(){return new Coordinate(this.column,this.row,this.zoom)},Coordinate.prototype.zoomTo=function(o){return this.clone()._zoomTo(o)},Coordinate.prototype.sub=function(o){return this.clone()._sub(o)},Coordinate.prototype._zoomTo=function(o){var t=Math.pow(2,o-this.zoom);return this.column*=t,this.row*=t,this.zoom=o,this},Coordinate.prototype._sub=function(o){return o=o.zoomTo(this.zoom),this.column-=o.column,this.row-=o.row,this},module.exports=Coordinate;\n},{}],58:[function(_dereq_,module,exports){\n\"use strict\";var wrap=_dereq_(\"../util/util\").wrap,LngLat=function(t,n){if(isNaN(t)||isNaN(n))throw new Error(\"Invalid LngLat object: (\"+t+\", \"+n+\")\");if(this.lng=+t,this.lat=+n,this.lat>90||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.prototype.toBounds=function(t){var n=360*t/40075017,r=n/Math.cos(Math.PI/180*this.lat);return new(_dereq_(\"./lng_lat_bounds\"))(new LngLat(this.lng-r,this.lat-n),new LngLat(this.lng+r,this.lat+n))},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: <lng>, lat: <lat>}, or an array of [<lng>, <lat>]\")},module.exports=LngLat;\n},{\"../util/util\":223,\"./lng_lat_bounds\":59}],59:[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=t instanceof LngLat?new LngLat(t.lng,t.lat):LngLat.convert(t),this},LngLatBounds.prototype.setSouthWest=function(t){return this._sw=t instanceof LngLat?new LngLat(t.lng,t.lat):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\":58}],60:[function(_dereq_,module,exports){\n\"use strict\";var LngLat=_dereq_(\"./lng_lat\"),Point=_dereq_(\"@mapbox/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,o,i){this.tileSize=512,this._renderWorldCopies=void 0===i||i,this._minZoom=t||0,this._maxZoom=o||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 o=-util.wrap(t,-180,180)*Math.PI/180;this.angle!==o&&(this._unmodified=!1,this.angle=o,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 o=util.clamp(t,0,60)/180*Math.PI;this._pitch!==o&&(this._unmodified=!1,this._pitch=o,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 o=Math.min(Math.max(t,this.minZoom),this.maxZoom);this._zoom!==o&&(this._unmodified=!1,this._zoom=o,this.scale=this.zoomScale(o),this.tileZoom=Math.floor(o),this.zoomFraction=o-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 o=this.pointCoordinate(new Point(0,0),0),i=this.pointCoordinate(new Point(this.width,0),0),e=Math.floor(o.column),r=Math.floor(i.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 o=this.coveringZoomLevel(t),i=o;if(void 0!==t.minzoom&&o<t.minzoom)return[];void 0!==t.maxzoom&&o>t.maxzoom&&(o=t.maxzoom);var e=this.pointCoordinate(this.centerPoint,o),r=new Point(e.column-.5,e.row-.5),n=[this.pointCoordinate(new Point(0,0),o),this.pointCoordinate(new Point(this.width,0),o),this.pointCoordinate(new Point(this.width,this.height),o),this.pointCoordinate(new Point(0,this.height),o)];return TileCoord.cover(o,n,t.reparseOverscaled?i:o,this._renderWorldCopies).sort(function(t,o){return r.dist(t)-r.dist(o)})},Transform.prototype.resize=function(t,o){this.width=t,this.height=o,this.pixelsToGLUnits=[2/t,-2/o],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 o=180-360*t/this.worldSize;return 360/Math.PI*Math.atan(Math.exp(o*Math.PI/180))-90},Transform.prototype.setLocationAtPoint=function(t,o){var i=this.pointCoordinate(o)._sub(this.pointCoordinate(this.centerPoint));this.center=this.coordinateLocation(this.locationCoordinate(t)._sub(i)),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 o=t.zoomTo(this.zoom);return new LngLat(this.xLng(o.column*this.tileSize),this.yLat(o.row*this.tileSize))},Transform.prototype.pointCoordinate=function(t,o){void 0===o&&(o=this.tileZoom);var i=[t.x,t.y,0,1],e=[t.x,t.y,1,1];vec4.transformMat4(i,i,this.pixelMatrixInverse),vec4.transformMat4(e,e,this.pixelMatrixInverse);var r=i[3],n=e[3],s=i[0]/r,a=e[0]/n,h=i[1]/r,c=e[1]/n,m=i[2]/r,p=e[2]/n,l=m===p?0:(0-m)/(p-m);return new Coordinate(interp(s,a,l)/this.tileSize,interp(h,c,l)/this.tileSize,this.zoom)._zoomTo(o)},Transform.prototype.coordinatePoint=function(t){var o=t.zoomTo(this.zoom),i=[o.column*this.tileSize,o.row*this.tileSize,0,1];return vec4.transformMat4(i,i,this.pixelMatrix),new Point(i[0]/i[3],i[1]/i[3])},Transform.prototype.calculatePosMatrix=function(t,o){var i=t.toCoordinate(o),e=this.worldSize/this.zoomScale(i.zoom),r=mat4.identity(new Float64Array(16));return mat4.translate(r,r,[i.column*e,i.row*e,0]),mat4.scale(r,r,[e/EXTENT,e/EXTENT,1]),mat4.multiply(r,this.projMatrix,r),new Float32Array(r)},Transform.prototype.cameraToTileDistance=function(t){var o=this.calculatePosMatrix(t.coord,t.sourceMaxZoom),i=[t.tileSize/2,t.tileSize/2,0,1];return vec4.transformMat4(i,i,o),i[3]},Transform.prototype._constrain=function(){if(this.center&&this.width&&this.height&&!this._constraining){this._constraining=!0;var t,o,i,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-r<h.y?h.y/(n-r):0}if(this.lngRange){var p=this.lngRange;s=this.lngX(p[0]),a=this.lngX(p[1]),o=a-s<h.x?h.x/(a-s):0}var l=Math.max(o||0,t||0);if(l)return this.center=this.unproject(new Point(o?(a+s)/2:this.x,t?(n+r)/2:this.y)),this.zoom+=this.scaleZoom(l),this._unmodified=c,void(this._constraining=!1);if(this.latRange){var u=this.y,f=h.y/2;u-f<r&&(e=r+f),u+f>n&&(e=n-f)}if(this.lngRange){var d=this.x,g=h.x/2;d-g<s&&(i=s+g),d+g>a&&(i=a-g)}void 0===i&&void 0===e||(this.center=this.unproject(new Point(void 0!==i?i: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,o=Math.PI/2+this._pitch,i=Math.sin(t)*this.cameraToCenterDistance/Math.sin(Math.PI-o-t),e=Math.cos(Math.PI/2-this._pitch)*i+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)))throw new Error(\"failed to invert matrix\");this.pixelMatrixInverse=n}},Object.defineProperties(Transform.prototype,prototypeAccessors),module.exports=Transform;\n},{\"../data/extent\":48,\"../source/tile_coord\":101,\"../style-spec/util/interpolate\":127,\"../util/util\":223,\"./coordinate\":57,\"./lng_lat\":58,\"@mapbox/gl-matrix\":1,\"@mapbox/point-geometry\":2}],61:[function(_dereq_,module,exports){\n\"use strict\";var IndexBuffer=function(e,r){this.gl=e,this.buffer=e.createBuffer(),void 0===e.extVertexArrayObject&&(e.extVertexArrayObject=e.getExtension(\"OES_vertex_array_object\")),e.extVertexArrayObject&&e.extVertexArrayObject.bindVertexArrayOES(null),e.bindBuffer(e.ELEMENT_ARRAY_BUFFER,this.buffer),e.bufferData(e.ELEMENT_ARRAY_BUFFER,r.arrayBuffer,e.STATIC_DRAW),delete r.arrayBuffer};IndexBuffer.prototype.bind=function(){this.gl.bindBuffer(this.gl.ELEMENT_ARRAY_BUFFER,this.buffer)},IndexBuffer.prototype.destroy=function(){this.buffer&&(this.gl.deleteBuffer(this.buffer),delete this.buffer)},module.exports=IndexBuffer;\n},{}],62:[function(_dereq_,module,exports){\n\"use strict\";var AttributeType={Int8:\"BYTE\",Uint8:\"UNSIGNED_BYTE\",Int16:\"SHORT\",Uint16:\"UNSIGNED_SHORT\",Int32:\"INT\",Uint32:\"UNSIGNED_INT\",Float32:\"FLOAT\"},VertexBuffer=function(t,e,r){this.length=e.length,this.attributes=e.members,this.itemSize=e.bytesPerElement,this.dynamicDraw=r,this.gl=t,this.buffer=t.createBuffer(),this.gl.bindBuffer(t.ARRAY_BUFFER,this.buffer),this.gl.bufferData(t.ARRAY_BUFFER,e.arrayBuffer,this.dynamicDraw?t.DYNAMIC_DRAW:t.STATIC_DRAW),this.dynamicDraw||delete e.arrayBuffer};VertexBuffer.prototype.bind=function(){this.gl.bindBuffer(this.gl.ARRAY_BUFFER,this.buffer)},VertexBuffer.prototype.updateData=function(t){this.bind(),this.gl.bufferSubData(this.gl.ARRAY_BUFFER,0,t.arrayBuffer)},VertexBuffer.prototype.enableAttributes=function(t,e){for(var r=this,i=0;i<this.attributes.length;i++){var f=r.attributes[i],s=e.attributes[f.name];void 0!==s&&t.enableVertexAttribArray(s)}},VertexBuffer.prototype.setVertexAttribPointers=function(t,e,r){for(var i=this,f=0;f<this.attributes.length;f++){var s=i.attributes[f],u=e.attributes[s.name];void 0!==u&&t.vertexAttribPointer(u,s.components,t[AttributeType[s.type]],!1,i.itemSize,s.offset+i.itemSize*(r||0))}},VertexBuffer.prototype.destroy=function(){this.buffer&&(this.gl.deleteBuffer(this.buffer),delete this.buffer)},module.exports=VertexBuffer;\n},{}],63:[function(_dereq_,module,exports){\n\"use strict\";var supported=_dereq_(\"mapbox-gl-supported\"),browser=_dereq_(\"./util/browser\"),version=_dereq_(\"../package.json\").version,Map=_dereq_(\"./ui/map\"),NavigationControl=_dereq_(\"./ui/control/navigation_control\"),GeolocateControl=_dereq_(\"./ui/control/geolocate_control\"),AttributionControl=_dereq_(\"./ui/control/attribution_control\"),ScaleControl=_dereq_(\"./ui/control/scale_control\"),FullscreenControl=_dereq_(\"./ui/control/fullscreen_control\"),Popup=_dereq_(\"./ui/popup\"),Marker=_dereq_(\"./ui/marker\"),Style=_dereq_(\"./style/style\"),LngLat=_dereq_(\"./geo/lng_lat\"),LngLatBounds=_dereq_(\"./geo/lng_lat_bounds\"),Point=_dereq_(\"@mapbox/point-geometry\"),Evented=_dereq_(\"./util/evented\"),config=_dereq_(\"./util/config\"),rtlTextPlugin=_dereq_(\"./source/rtl_text_plugin\");module.exports={version:version,supported:supported,workerCount:Math.max(Math.floor(browser.hardwareConcurrency/2),1),setRTLTextPlugin:rtlTextPlugin.setRTLTextPlugin,Map:Map,NavigationControl:NavigationControl,GeolocateControl:GeolocateControl,AttributionControl:AttributionControl,ScaleControl:ScaleControl,FullscreenControl:FullscreenControl,Popup:Popup,Marker:Marker,Style:Style,LngLat:LngLat,LngLatBounds:LngLatBounds,Point:Point,Evented:Evented,config:config,get accessToken(){return config.ACCESS_TOKEN},set accessToken(o){config.ACCESS_TOKEN=o}};\n},{\"../package.json\":41,\"./geo/lng_lat\":58,\"./geo/lng_lat_bounds\":59,\"./source/rtl_text_plugin\":96,\"./style/style\":156,\"./ui/control/attribution_control\":182,\"./ui/control/fullscreen_control\":183,\"./ui/control/geolocate_control\":184,\"./ui/control/navigation_control\":186,\"./ui/control/scale_control\":187,\"./ui/map\":197,\"./ui/marker\":198,\"./ui/popup\":199,\"./util/browser\":202,\"./util/config\":206,\"./util/evented\":210,\"@mapbox/point-geometry\":2,\"mapbox-gl-supported\":28}],64:[function(_dereq_,module,exports){\n\"use strict\";function drawBackground(r,t,e){var i=r.gl,a=r.transform,n=a.tileSize,o=e.paint[\"background-color\"],l=e.paint[\"background-pattern\"],u=e.paint[\"background-opacity\"],f=l||1!==o[3]||1!==u?\"translucent\":\"opaque\";if(r.renderPass===f){i.disable(i.STENCIL_TEST),r.setDepthSublayer(0);var s;if(l){if(pattern.isPatternMissing(l,r))return;s=r.useProgram(\"fillPattern\",r.basicFillProgramConfiguration),pattern.prepare(l,r,s),r.tileExtentPatternVAO.bind(i,s,r.tileExtentBuffer)}else s=r.useProgram(\"fill\",r.basicFillProgramConfiguration),i.uniform4fv(s.uniforms.u_color,o),r.tileExtentVAO.bind(i,s,r.tileExtentBuffer);i.uniform1f(s.uniforms.u_opacity,u);for(var c=a.coveringTiles({tileSize:n}),g=0,p=c;g<p.length;g+=1){var d=p[g];l&&pattern.setTile({coord:d,tileSize:n},r,s),i.uniformMatrix4fv(s.uniforms.u_matrix,!1,r.transform.calculatePosMatrix(d)),i.drawArrays(i.TRIANGLE_STRIP,0,r.tileExtentBuffer.length)}}}var pattern=_dereq_(\"./pattern\");module.exports=drawBackground;\n},{\"./pattern\":80}],65:[function(_dereq_,module,exports){\n\"use strict\";function drawCircles(r,i,e,t){if(\"translucent\"===r.renderPass){var a=r.gl;r.setDepthSublayer(0),r.depthMask(!1),a.disable(a.STENCIL_TEST);for(var s=0;s<t.length;s++){var o=t[s],n=i.getTile(o),u=n.getBucket(e);if(u){var m=u.programConfigurations.get(e.id),f=r.useProgram(\"circle\",m);if(m.setUniforms(a,f,e,{zoom:r.transform.zoom}),a.uniform1f(f.uniforms.u_camera_to_center_distance,r.transform.cameraToCenterDistance),a.uniform1i(f.uniforms.u_scale_with_map,\"map\"===e.paint[\"circle-pitch-scale\"]?1:0),\"map\"===e.paint[\"circle-pitch-alignment\"]){a.uniform1i(f.uniforms.u_pitch_with_map,1);var l=pixelsToTileUnits(n,1,r.transform.zoom);a.uniform2f(f.uniforms.u_extrude_scale,l,l)}else a.uniform1i(f.uniforms.u_pitch_with_map,0),a.uniform2fv(f.uniforms.u_extrude_scale,r.transform.pixelsToGLUnits);a.uniform1f(f.uniforms.u_devicepixelratio,browser.devicePixelRatio),a.uniformMatrix4fv(f.uniforms.u_matrix,!1,r.translatePosMatrix(o.posMatrix,n,e.paint[\"circle-translate\"],e.paint[\"circle-translate-anchor\"])),f.draw(a,a.TRIANGLES,e.id,u.layoutVertexBuffer,u.indexBuffer,u.segments,m)}}}}var browser=_dereq_(\"../util/browser\"),pixelsToTileUnits=_dereq_(\"../source/pixels_to_tile_units\");module.exports=drawCircles;\n},{\"../source/pixels_to_tile_units\":93,\"../util/browser\":202}],66:[function(_dereq_,module,exports){\n\"use strict\";function drawCollisionDebug(o,i,r,e){var n=o.gl;n.enable(n.STENCIL_TEST);var t=o.useProgram(\"collisionBox\");n.activeTexture(n.TEXTURE1),o.frameHistory.bind(n),n.uniform1i(t.uniforms.u_fadetexture,1);for(var a=0;a<e.length;a++){var f=e[a],u=i.getTile(f),m=u.getBucket(r);if(m){n.uniformMatrix4fv(t.uniforms.u_matrix,!1,f.posMatrix),o.enableTileClippingMask(f),o.lineWidth(1),n.uniform1f(t.uniforms.u_scale,Math.pow(2,o.transform.zoom-u.coord.z)),n.uniform1f(t.uniforms.u_zoom,10*o.transform.zoom);var s=Math.max(0,Math.min(25,u.coord.z+Math.log(u.collisionTile.maxScale)/Math.LN2));n.uniform1f(t.uniforms.u_maxzoom,10*s),n.uniform1f(t.uniforms.u_collision_y_stretch,u.collisionTile.yStretch),n.uniform1f(t.uniforms.u_pitch,o.transform.pitch/360*2*Math.PI),n.uniform1f(t.uniforms.u_camera_to_center_distance,o.transform.cameraToCenterDistance),t.draw(n,n.LINES,r.id,m.collisionBox.layoutVertexBuffer,m.collisionBox.indexBuffer,m.collisionBox.segments)}}}module.exports=drawCollisionDebug;\n},{}],67:[function(_dereq_,module,exports){\n\"use strict\";function drawDebug(r,e,t){for(var a=0;a<t.length;a++)drawDebugTile(r,e,t[a])}function drawDebugTile(r,e,t){var a=r.gl;a.disable(a.STENCIL_TEST),r.lineWidth(1*browser.devicePixelRatio);var i=t.posMatrix,u=r.useProgram(\"debug\");a.uniformMatrix4fv(u.uniforms.u_matrix,!1,i),a.uniform4f(u.uniforms.u_color,1,0,0,1),r.debugVAO.bind(a,u,r.debugBuffer),a.drawArrays(a.LINE_STRIP,0,r.debugBuffer.length);for(var o=createTextVerticies(t.toString(),50,200,5),n=new PosArray,f=0;f<o.length;f+=2)n.emplaceBack(o[f],o[f+1]);var l=new VertexBuffer(a,n);(new VertexArrayObject).bind(a,u,l),a.uniform4f(u.uniforms.u_color,1,1,1,1);for(var s=e.getTile(t).tileSize,m=EXTENT/(Math.pow(2,r.transform.zoom-t.z)*s),x=[[-1,-1],[-1,1],[1,-1],[1,1]],g=0;g<x.length;g++){var b=x[g];a.uniformMatrix4fv(u.uniforms.u_matrix,!1,mat4.translate([],i,[m*b[0],m*b[1],0])),a.drawArrays(a.LINES,0,l.length)}a.uniform4f(u.uniforms.u_color,0,0,0,1),a.uniformMatrix4fv(u.uniforms.u_matrix,!1,i),a.drawArrays(a.LINES,0,l.length)}function createTextVerticies(r,e,t,a){a=a||1;var i,u,o,n,f,l,s,m,x=[];for(i=0,u=r.length;i<u;i++)if(f=simplexFont[r[i]]){for(m=null,o=0,n=f[1].length;o<n;o+=2)-1===f[1][o]&&-1===f[1][o+1]?m=null:(l=e+f[1][o]*a,s=t-f[1][o+1]*a,m&&x.push(m.x,m.y,l,s),m={x:l,y:s});e+=f[0]*a}return x}var browser=_dereq_(\"../util/browser\"),mat4=_dereq_(\"@mapbox/gl-matrix\").mat4,EXTENT=_dereq_(\"../data/extent\"),VertexBuffer=_dereq_(\"../gl/vertex_buffer\"),VertexArrayObject=_dereq_(\"./vertex_array_object\"),PosArray=_dereq_(\"../data/pos_array\");module.exports=drawDebug;var simplexFont={\" \":[16,[]],\"!\":[10,[5,21,5,7,-1,-1,5,2,4,1,5,0,6,1,5,2]],'\"':[16,[4,21,4,14,-1,-1,12,21,12,14]],\"#\":[21,[11,25,4,-7,-1,-1,17,25,10,-7,-1,-1,4,12,18,12,-1,-1,3,6,17,6]],$:[20,[8,25,8,-4,-1,-1,12,25,12,-4,-1,-1,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]],\"%\":[24,[21,21,3,0,-1,-1,8,21,10,19,10,17,9,15,7,14,5,14,3,16,3,18,4,20,6,21,8,21,10,20,13,19,16,19,19,20,21,21,-1,-1,17,7,15,6,14,4,14,2,16,0,18,0,20,1,21,3,21,5,19,7,17,7]],\"&\":[26,[23,12,23,13,22,14,21,14,20,13,19,11,17,6,15,3,13,1,11,0,7,0,5,1,4,2,3,4,3,6,4,8,5,9,12,13,13,14,14,16,14,18,13,20,11,21,9,20,8,18,8,16,9,13,11,10,16,3,18,1,20,0,22,0,23,1,23,2]],\"'\":[10,[5,19,4,20,5,21,6,20,6,18,5,16,4,15]],\"(\":[14,[11,25,9,23,7,20,5,16,4,11,4,7,5,2,7,-2,9,-5,11,-7]],\")\":[14,[3,25,5,23,7,20,9,16,10,11,10,7,9,2,7,-2,5,-5,3,-7]],\"*\":[16,[8,21,8,9,-1,-1,3,18,13,12,-1,-1,13,18,3,12]],\"+\":[26,[13,18,13,0,-1,-1,4,9,22,9]],\",\":[10,[6,1,5,0,4,1,5,2,6,1,6,-1,5,-3,4,-4]],\"-\":[26,[4,9,22,9]],\".\":[10,[5,2,4,1,5,0,6,1,5,2]],\"/\":[22,[20,25,2,-7]],0:[20,[9,21,6,20,4,17,3,12,3,9,4,4,6,1,9,0,11,0,14,1,16,4,17,9,17,12,16,17,14,20,11,21,9,21]],1:[20,[6,17,8,18,11,21,11,0]],2:[20,[4,16,4,17,5,19,6,20,8,21,12,21,14,20,15,19,16,17,16,15,15,13,13,10,3,0,17,0]],3:[20,[5,21,16,21,10,13,13,13,15,12,16,11,17,8,17,6,16,3,14,1,11,0,8,0,5,1,4,2,3,4]],4:[20,[13,21,3,7,18,7,-1,-1,13,21,13,0]],5:[20,[15,21,5,21,4,12,5,13,8,14,11,14,14,13,16,11,17,8,17,6,16,3,14,1,11,0,8,0,5,1,4,2,3,4]],6:[20,[16,18,15,20,12,21,10,21,7,20,5,17,4,12,4,7,5,3,7,1,10,0,11,0,14,1,16,3,17,6,17,7,16,10,14,12,11,13,10,13,7,12,5,10,4,7]],7:[20,[17,21,7,0,-1,-1,3,21,17,21]],8:[20,[8,21,5,20,4,18,4,16,5,14,7,13,11,12,14,11,16,9,17,7,17,4,16,2,15,1,12,0,8,0,5,1,4,2,3,4,3,7,4,9,6,11,9,12,13,13,15,14,16,16,16,18,15,20,12,21,8,21]],9:[20,[16,14,15,11,13,9,10,8,9,8,6,9,4,11,3,14,3,15,4,18,6,20,9,21,10,21,13,20,15,18,16,14,16,9,15,4,13,1,10,0,8,0,5,1,4,3]],\":\":[10,[5,14,4,13,5,12,6,13,5,14,-1,-1,5,2,4,1,5,0,6,1,5,2]],\";\":[10,[5,14,4,13,5,12,6,13,5,14,-1,-1,6,1,5,0,4,1,5,2,6,1,6,-1,5,-3,4,-4]],\"<\":[24,[20,18,4,9,20,0]],\"=\":[26,[4,12,22,12,-1,-1,4,6,22,6]],\">\":[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/extent\":48,\"../data/pos_array\":52,\"../gl/vertex_buffer\":62,\"../util/browser\":202,\"./vertex_array_object\":84,\"@mapbox/gl-matrix\":1}],68:[function(_dereq_,module,exports){\n\"use strict\";function drawFill(r,t,e,a){var i=r.gl;i.enable(i.STENCIL_TEST);var l=!e.paint[\"fill-pattern\"]&&e.isPaintValueFeatureConstant(\"fill-color\")&&e.isPaintValueFeatureConstant(\"fill-opacity\")&&1===e.paint[\"fill-color\"][3]&&1===e.paint[\"fill-opacity\"]?\"opaque\":\"translucent\";r.renderPass===l&&(r.setDepthSublayer(1),r.depthMask(\"opaque\"===r.renderPass),drawFillTiles(r,t,e,a,drawFillTile)),\"translucent\"===r.renderPass&&e.paint[\"fill-antialias\"]&&(r.lineWidth(2),r.depthMask(!1),r.setDepthSublayer(e.getPaintProperty(\"fill-outline-color\")?2:0),drawFillTiles(r,t,e,a,drawStrokeTile))}function drawFillTiles(r,t,e,a,i){if(!pattern.isPatternMissing(e.paint[\"fill-pattern\"],r))for(var l=!0,n=0,o=a;n<o.length;n+=1){var s=o[n],f=t.getTile(s),u=f.getBucket(e);u&&(r.enableTileClippingMask(s),i(r,t,e,f,s,u,l),l=!1)}}function drawFillTile(r,t,e,a,i,l,n){var o=r.gl,s=l.programConfigurations.get(e.id);setFillProgram(\"fill\",e.paint[\"fill-pattern\"],r,s,e,a,i,n).draw(o,o.TRIANGLES,e.id,l.layoutVertexBuffer,l.indexBuffer,l.segments,s)}function drawStrokeTile(r,t,e,a,i,l,n){var o=r.gl,s=l.programConfigurations.get(e.id),f=e.paint[\"fill-pattern\"]&&!e.getPaintProperty(\"fill-outline-color\"),u=setFillProgram(\"fillOutline\",f,r,s,e,a,i,n);o.uniform2f(u.uniforms.u_world,o.drawingBufferWidth,o.drawingBufferHeight),u.draw(o,o.LINES,e.id,l.layoutVertexBuffer,l.indexBuffer2,l.segments2,s)}function setFillProgram(r,t,e,a,i,l,n,o){var s,f=e.currentProgram;return t?(s=e.useProgram(r+\"Pattern\",a),(o||s!==f)&&(a.setUniforms(e.gl,s,i,{zoom:e.transform.zoom}),pattern.prepare(i.paint[\"fill-pattern\"],e,s)),pattern.setTile(l,e,s)):(s=e.useProgram(r,a),(o||s!==f)&&a.setUniforms(e.gl,s,i,{zoom:e.transform.zoom})),e.gl.uniformMatrix4fv(s.uniforms.u_matrix,!1,e.translatePosMatrix(n.posMatrix,l,i.paint[\"fill-translate\"],i.paint[\"fill-translate-anchor\"])),s}var pattern=_dereq_(\"./pattern\");module.exports=drawFill;\n},{\"./pattern\":80}],69:[function(_dereq_,module,exports){\n\"use strict\";function draw(r,t,e,i){if(\"3d\"===r.renderPass){var a=r.gl;a.disable(a.STENCIL_TEST),a.enable(a.DEPTH_TEST),r.clearColor(),r.depthMask(!0);for(var n=0;n<i.length;n++)drawExtrusion(r,t,e,i[n])}else\"translucent\"===r.renderPass&&drawExtrusionTexture(r,e)}function drawExtrusionTexture(r,t){var e=r.prerenderedFrames[t.id];if(e){var i=r.gl,a=r.useProgram(\"extrusionTexture\");i.disable(i.STENCIL_TEST),i.disable(i.DEPTH_TEST),i.activeTexture(i.TEXTURE0),i.bindTexture(i.TEXTURE_2D,e.texture),i.uniform1f(a.uniforms.u_opacity,t.paint[\"fill-extrusion-opacity\"]),i.uniform1i(a.uniforms.u_image,0);var n=mat4.create();mat4.ortho(n,0,r.width,r.height,0,0,1),i.uniformMatrix4fv(a.uniforms.u_matrix,!1,n),i.uniform2f(a.uniforms.u_world,i.drawingBufferWidth,i.drawingBufferHeight),e.vao.bind(i,a,e.buffer),i.drawArrays(i.TRIANGLE_STRIP,0,4),r.viewportFrames.push(e),delete r.prerenderedFrames[t.id]}}function drawExtrusion(r,t,e,i){var a=t.getTile(i),n=a.getBucket(e);if(n){var o=r.gl,u=e.paint[\"fill-extrusion-pattern\"],s=n.programConfigurations.get(e.id),f=r.useProgram(u?\"fillExtrusionPattern\":\"fillExtrusion\",s);if(s.setUniforms(o,f,e,{zoom:r.transform.zoom}),u){if(pattern.isPatternMissing(u,r))return;pattern.prepare(u,r,f),pattern.setTile(a,r,f),o.uniform1f(f.uniforms.u_height_factor,-Math.pow(2,i.z)/a.tileSize/8)}r.gl.uniformMatrix4fv(f.uniforms.u_matrix,!1,r.translatePosMatrix(i.posMatrix,a,e.paint[\"fill-extrusion-translate\"],e.paint[\"fill-extrusion-translate-anchor\"])),setLight(f,r),f.draw(o,o.TRIANGLES,e.id,n.layoutVertexBuffer,n.indexBuffer,n.segments,s)}}function setLight(r,t){var e=t.gl,i=t.style.light,a=i.calculated.position,n=[a.x,a.y,a.z],o=mat3.create();\"viewport\"===i.calculated.anchor&&mat3.fromRotation(o,-t.transform.angle),vec3.transformMat3(n,n,o),e.uniform3fv(r.uniforms.u_lightpos,n),e.uniform1f(r.uniforms.u_lightintensity,i.calculated.intensity),e.uniform3fv(r.uniforms.u_lightcolor,i.calculated.color.slice(0,3))}var glMatrix=_dereq_(\"@mapbox/gl-matrix\"),pattern=_dereq_(\"./pattern\"),mat3=glMatrix.mat3,mat4=glMatrix.mat4,vec3=glMatrix.vec3;module.exports=draw;\n},{\"./pattern\":80,\"@mapbox/gl-matrix\":1}],70:[function(_dereq_,module,exports){\n\"use strict\";function drawLineTile(i,r,e,t,n,a,o,u,f){var s,l,m,_,p=r.gl,g=n.paint[\"line-dasharray\"],d=n.paint[\"line-pattern\"];if(u||f){var x=1/pixelsToTileUnits(e,1,r.transform.tileZoom);if(g){s=r.lineAtlas.getDash(g.from,\"round\"===n.layout[\"line-cap\"]),l=r.lineAtlas.getDash(g.to,\"round\"===n.layout[\"line-cap\"]);var T=s.width*g.fromScale,c=l.width*g.toScale;p.uniform2f(i.uniforms.u_patternscale_a,x/T,-s.height/2),p.uniform2f(i.uniforms.u_patternscale_b,x/c,-l.height/2),p.uniform1f(i.uniforms.u_sdfgamma,r.lineAtlas.width/(256*Math.min(T,c)*browser.devicePixelRatio)/2)}else if(d){if(m=r.imageManager.getPattern(d.from),_=r.imageManager.getPattern(d.to),!m||!_)return;p.uniform2f(i.uniforms.u_pattern_size_a,m.displaySize[0]*d.fromScale/x,_.displaySize[1]),p.uniform2f(i.uniforms.u_pattern_size_b,_.displaySize[0]*d.toScale/x,_.displaySize[1]);var h=r.imageManager.getPixelSize(),v=h.width,b=h.height;p.uniform2fv(i.uniforms.u_texsize,[v,b])}p.uniform2f(i.uniforms.u_gl_units_to_pixels,1/r.transform.pixelsToGLUnits[0],1/r.transform.pixelsToGLUnits[1])}u&&(g?(p.uniform1i(i.uniforms.u_image,0),p.activeTexture(p.TEXTURE0),r.lineAtlas.bind(p),p.uniform1f(i.uniforms.u_tex_y_a,s.y),p.uniform1f(i.uniforms.u_tex_y_b,l.y),p.uniform1f(i.uniforms.u_mix,g.t)):d&&(p.uniform1i(i.uniforms.u_image,0),p.activeTexture(p.TEXTURE0),r.imageManager.bind(p),p.uniform2fv(i.uniforms.u_pattern_tl_a,m.tl),p.uniform2fv(i.uniforms.u_pattern_br_a,m.br),p.uniform2fv(i.uniforms.u_pattern_tl_b,_.tl),p.uniform2fv(i.uniforms.u_pattern_br_b,_.br),p.uniform1f(i.uniforms.u_fade,d.t))),r.enableTileClippingMask(a);var y=r.translatePosMatrix(a.posMatrix,e,n.paint[\"line-translate\"],n.paint[\"line-translate-anchor\"]);p.uniformMatrix4fv(i.uniforms.u_matrix,!1,y),p.uniform1f(i.uniforms.u_ratio,1/pixelsToTileUnits(e,1,r.transform.zoom)),i.draw(p,p.TRIANGLES,n.id,t.layoutVertexBuffer,t.indexBuffer,t.segments,o)}var browser=_dereq_(\"../util/browser\"),pixelsToTileUnits=_dereq_(\"../source/pixels_to_tile_units\");module.exports=function(i,r,e,t){if(\"translucent\"===i.renderPass){i.setDepthSublayer(0),i.depthMask(!1);var n=i.gl;if(n.enable(n.STENCIL_TEST),!(e.paint[\"line-width\"]<=0))for(var a,o=e.paint[\"line-dasharray\"]?\"lineSDF\":e.paint[\"line-pattern\"]?\"linePattern\":\"line\",u=!0,f=0,s=t;f<s.length;f+=1){var l=s[f],m=r.getTile(l),_=m.getBucket(e);if(_){var p=_.programConfigurations.get(e.id),g=i.currentProgram,d=i.useProgram(o,p),x=u||d!==g,T=a!==m.coord.z;x&&p.setUniforms(i.gl,d,e,{zoom:i.transform.zoom}),drawLineTile(d,i,m,_,e,l,p,x,T),a=m.coord.z,u=!1}}}};\n},{\"../source/pixels_to_tile_units\":93,\"../util/browser\":202}],71:[function(_dereq_,module,exports){\n\"use strict\";function drawRaster(r,t,e,a){if(\"translucent\"===r.renderPass){var i=r.gl,o=t.getSource(),n=r.useProgram(\"raster\");i.enable(i.DEPTH_TEST),r.depthMask(!0),i.depthFunc(i.LESS),i.disable(i.STENCIL_TEST),i.uniform1f(n.uniforms.u_brightness_low,e.paint[\"raster-brightness-min\"]),i.uniform1f(n.uniforms.u_brightness_high,e.paint[\"raster-brightness-max\"]),i.uniform1f(n.uniforms.u_saturation_factor,saturationFactor(e.paint[\"raster-saturation\"])),i.uniform1f(n.uniforms.u_contrast_factor,contrastFactor(e.paint[\"raster-contrast\"])),i.uniform3fv(n.uniforms.u_spin_weights,spinWeights(e.paint[\"raster-hue-rotate\"])),i.uniform1f(n.uniforms.u_buffer_scale,1),i.uniform1i(n.uniforms.u_image0,0),i.uniform1i(n.uniforms.u_image1,1);for(var u=a.length&&a[0].z,s=0,f=a;s<f.length;s+=1){var m=f[s];r.setDepthSublayer(m.z-u);var d=t.getTile(m),c=r.transform.calculatePosMatrix(m,t.getSource().maxzoom);d.registerFadeDuration(r.style.animationLoop,e.paint[\"raster-fade-duration\"]),i.uniformMatrix4fv(n.uniforms.u_matrix,!1,c);var p=t.findLoadedParent(m,0,{}),_=getFadeValues(d,p,t,e,r.transform),h=void 0,l=void 0;if(i.activeTexture(i.TEXTURE0),i.bindTexture(i.TEXTURE_2D,d.texture),i.activeTexture(i.TEXTURE1),p?(i.bindTexture(i.TEXTURE_2D,p.texture),h=Math.pow(2,p.coord.z-d.coord.z),l=[d.coord.x*h%1,d.coord.y*h%1]):i.bindTexture(i.TEXTURE_2D,d.texture),i.uniform2fv(n.uniforms.u_tl_parent,l||[0,0]),i.uniform1f(n.uniforms.u_scale_parent,h||1),i.uniform1f(n.uniforms.u_fade_t,_.mix),i.uniform1f(n.uniforms.u_opacity,_.opacity*e.paint[\"raster-opacity\"]),o instanceof ImageSource){var g=o.boundsBuffer;o.boundsVAO.bind(i,n,g),i.drawArrays(i.TRIANGLE_STRIP,0,g.length)}else{var T=r.rasterBoundsBuffer;r.rasterBoundsVAO.bind(i,n,T),i.drawArrays(i.TRIANGLE_STRIP,0,T.length)}}i.depthFunc(i.LEQUAL)}}function spinWeights(r){r*=Math.PI/180;var t=Math.sin(r),e=Math.cos(r);return[(2*e+1)/3,(-Math.sqrt(3)*t-e+1)/3,(Math.sqrt(3)*t-e+1)/3]}function contrastFactor(r){return r>0?1/(1-r):1+r}function saturationFactor(r){return r>0?1-1/(1.001-r):-r}function getFadeValues(r,t,e,a,i){var o=a.paint[\"raster-fade-duration\"];if(o>0){var n=Date.now(),u=(n-r.timeAdded)/o,s=t?(n-t.timeAdded)/o:-1,f=e.getSource(),m=i.coveringZoomLevel({tileSize:f.tileSize,roundZoom:f.roundZoom}),d=!t||Math.abs(t.coord.z-m)>Math.abs(r.coord.z-m),c=d&&r.refreshedUponExpiration?1:util.clamp(d?u:1-s,0,1);return r.refreshedUponExpiration&&u>=1&&(r.refreshedUponExpiration=!1),t?{opacity:1,mix:1-c}:{opacity:c,mix:0}}return{opacity:1,mix:0}}var util=_dereq_(\"../util/util\"),ImageSource=_dereq_(\"../source/image_source\");module.exports=drawRaster;\n},{\"../source/image_source\":91,\"../util/util\":223}],72:[function(_dereq_,module,exports){\n\"use strict\";function drawSymbols(t,i,o,e){if(\"translucent\"===t.renderPass){var a=!(o.layout[\"text-allow-overlap\"]||o.layout[\"icon-allow-overlap\"]||o.layout[\"text-ignore-placement\"]||o.layout[\"icon-ignore-placement\"]),r=t.gl;a?r.disable(r.STENCIL_TEST):r.enable(r.STENCIL_TEST),t.setDepthSublayer(0),t.depthMask(!1),drawLayerSymbols(t,i,o,e,!1,o.paint[\"icon-translate\"],o.paint[\"icon-translate-anchor\"],o.layout[\"icon-rotation-alignment\"],o.layout[\"icon-pitch-alignment\"],o.layout[\"icon-keep-upright\"]),drawLayerSymbols(t,i,o,e,!0,o.paint[\"text-translate\"],o.paint[\"text-translate-anchor\"],o.layout[\"text-rotation-alignment\"],o.layout[\"text-pitch-alignment\"],o.layout[\"text-keep-upright\"]),i.map.showCollisionBoxes&&drawCollisionDebug(t,i,o,e)}}function drawLayerSymbols(t,i,o,e,a,r,n,s,u,l){var m=t.gl,f=t.transform,c=\"map\"===s,_=\"map\"===u,y=c&&\"line\"===o.layout[\"symbol-placement\"],p=c&&!_&&!y,x=_;x?m.enable(m.DEPTH_TEST):m.disable(m.DEPTH_TEST);for(var b,d=0,T=e;d<T.length;d+=1){var g=T[d],S=i.getTile(g),h=S.getBucket(o);if(h){var z=a?h.text:h.icon;if(z&&z.segments.get().length){var v=z.programConfigurations.get(o.id),E=a||h.sdfIcons,w=a?h.textSizeData:h.iconSizeData;if(b||(b=t.useProgram(E?\"symbolSDF\":\"symbolIcon\",v),v.setUniforms(m,b,o,{zoom:t.transform.zoom}),setSymbolDrawState(b,t,o,a,p,_,w)),m.activeTexture(m.TEXTURE0),m.uniform1i(b.uniforms.u_texture,0),a)S.glyphAtlasTexture.bind(m.LINEAR,m.CLAMP_TO_EDGE),m.uniform2fv(b.uniforms.u_texsize,S.glyphAtlasTexture.size);else{var M=!o.isLayoutValueFeatureConstant(\"icon-size\")||!o.isLayoutValueZoomConstant(\"icon-size\")||1!==o.getLayoutValue(\"icon-size\",{zoom:f.zoom})||h.iconsNeedLinear,C=_||0!==f.pitch;S.iconAtlasTexture.bind(E||t.options.rotating||t.options.zooming||M||C?m.LINEAR:m.NEAREST,m.CLAMP_TO_EDGE),m.uniform2fv(b.uniforms.u_texsize,S.iconAtlasTexture.size)}t.enableTileClippingMask(g),m.uniformMatrix4fv(b.uniforms.u_matrix,!1,t.translatePosMatrix(g.posMatrix,S,r,n));var L=pixelsToTileUnits(S,1,t.transform.zoom),P=symbolProjection.getLabelPlaneMatrix(g.posMatrix,_,c,t.transform,L),D=symbolProjection.getGlCoordMatrix(g.posMatrix,_,c,t.transform,L);m.uniformMatrix4fv(b.uniforms.u_gl_coord_matrix,!1,t.translatePosMatrix(D,S,r,n,!0)),y?(m.uniformMatrix4fv(b.uniforms.u_label_plane_matrix,!1,identityMat4),symbolProjection.updateLineLabels(h,g.posMatrix,t,a,P,D,_,l,L,o)):m.uniformMatrix4fv(b.uniforms.u_label_plane_matrix,!1,P),m.uniform1f(b.uniforms.u_collision_y_stretch,S.collisionTile.yStretch),drawTileSymbols(b,v,t,o,S,z,a,E,_)}}}x||m.enable(m.DEPTH_TEST)}function setSymbolDrawState(t,i,o,e,a,r,n){var s=i.gl,u=i.transform;s.uniform1i(t.uniforms.u_pitch_with_map,r?1:0),s.uniform1f(t.uniforms.u_is_text,e?1:0),s.activeTexture(s.TEXTURE1),i.frameHistory.bind(s),s.uniform1i(t.uniforms.u_fadetexture,1),s.uniform1f(t.uniforms.u_pitch,u.pitch/360*2*Math.PI),s.uniform1i(t.uniforms.u_is_size_zoom_constant,n.isZoomConstant?1:0),s.uniform1i(t.uniforms.u_is_size_feature_constant,n.isFeatureConstant?1:0),s.uniform1f(t.uniforms.u_camera_to_center_distance,u.cameraToCenterDistance);var l=symbolSize.evaluateSizeForZoom(n,u,o,e);void 0!==l.uSizeT&&s.uniform1f(t.uniforms.u_size_t,l.uSizeT),void 0!==l.uSize&&s.uniform1f(t.uniforms.u_size,l.uSize),s.uniform1f(t.uniforms.u_aspect_ratio,u.width/u.height),s.uniform1i(t.uniforms.u_rotate_symbol,a?1:0)}function drawTileSymbols(t,i,o,e,a,r,n,s,u){var l=o.gl,m=o.transform;if(s){var f=(n?\"text\":\"icon\")+\"-halo-width\",c=!e.isPaintValueFeatureConstant(f)||e.paint[f],_=u?Math.cos(m._pitch)*m.cameraToCenterDistance:1;l.uniform1f(t.uniforms.u_gamma_scale,_),c&&(l.uniform1f(t.uniforms.u_is_halo,1),drawSymbolElements(r,e,l,t)),l.uniform1f(t.uniforms.u_is_halo,0)}drawSymbolElements(r,e,l,t)}function drawSymbolElements(t,i,o,e){e.draw(o,o.TRIANGLES,i.id,t.layoutVertexBuffer,t.indexBuffer,t.segments,t.programConfigurations.get(i.id),t.dynamicLayoutVertexBuffer)}var drawCollisionDebug=_dereq_(\"./draw_collision_debug\"),pixelsToTileUnits=_dereq_(\"../source/pixels_to_tile_units\"),symbolProjection=_dereq_(\"../symbol/projection\"),symbolSize=_dereq_(\"../symbol/symbol_size\"),mat4=_dereq_(\"@mapbox/gl-matrix\").mat4,identityMat4=mat4.identity(new Float32Array(16));module.exports=drawSymbols;\n},{\"../source/pixels_to_tile_units\":93,\"../symbol/projection\":175,\"../symbol/symbol_size\":178,\"./draw_collision_debug\":66,\"@mapbox/gl-matrix\":1}],73:[function(_dereq_,module,exports){\n\"use strict\";var FrameHistory=function(){this.changeTimes=new Float64Array(256),this.changeOpacities=new Uint8Array(256),this.opacities=new Uint8ClampedArray(256),this.array=new Uint8Array(this.opacities.buffer),this.previousZoom=0,this.firstFrame=!0};FrameHistory.prototype.record=function(e,t,i){var r=this;this.firstFrame&&(e=0,this.firstFrame=!1),t=Math.floor(10*t);var a;if(t<this.previousZoom)for(a=t+1;a<=this.previousZoom;a++)r.changeTimes[a]=e,r.changeOpacities[a]=r.opacities[a];else for(a=t;a>this.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.isVisible=function(e){return 0!==this.opacities[Math.floor(10*e)]},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},{}],74:[function(_dereq_,module,exports){\n\"use strict\";function makeGlyphAtlas(a){var e=AlphaImage.create({width:0,height:0}),i={},t=new ShelfPack(0,0,{autoResize:!0});for(var h in a){var p=a[h],r=i[h]={};for(var m in p){var g=p[+m];if(g&&0!==g.bitmap.width&&0!==g.bitmap.height){var l=t.packOne(g.bitmap.width+2*padding,g.bitmap.height+2*padding);AlphaImage.resize(e,{width:t.w,height:t.h}),AlphaImage.copy(g.bitmap,e,{x:0,y:0},{x:l.x+padding,y:l.y+padding},g.bitmap),r[m]={rect:l,metrics:g.metrics}}}}return t.shrink(),AlphaImage.resize(e,{width:t.w,height:t.h}),{image:e,positions:i}}var ShelfPack=_dereq_(\"@mapbox/shelf-pack\"),ref=_dereq_(\"../util/image\"),AlphaImage=ref.AlphaImage,padding=1;module.exports={makeGlyphAtlas:makeGlyphAtlas};\n},{\"../util/image\":213,\"@mapbox/shelf-pack\":3}],75:[function(_dereq_,module,exports){\n\"use strict\";var loadGlyphRange=_dereq_(\"../style/load_glyph_range\"),TinySDF=_dereq_(\"@mapbox/tiny-sdf\"),isChar=_dereq_(\"../util/is_char_in_unicode_block\"),ref=_dereq_(\"../util/util\"),asyncAll=ref.asyncAll,ref$1=_dereq_(\"../util/image\"),AlphaImage=ref$1.AlphaImage,GlyphManager=function(r,e){this.requestTransform=r,this.localIdeographFontFamily=e,this.entries={}};GlyphManager.prototype.setURL=function(r){this.url=r},GlyphManager.prototype.getGlyphs=function(r,e){var t=this,i=[];for(var a in r)for(var l=0,n=r[a];l<n.length;l+=1){var s=n[l];i.push({stack:a,id:s})}asyncAll(i,function(r,e){var i=r.stack,a=r.id,l=t.entries[i];l||(l=t.entries[i]={glyphs:{},requests:{}});var n=l.glyphs[a];if(void 0!==n)return void e(null,{stack:i,id:a,glyph:n});if(n=t._tinySDF(l,i,a))return void e(null,{stack:i,id:a,glyph:n});var s=Math.floor(a/256);if(256*s>65535)return void e(new Error(\"glyphs > 65535 not supported\"));var o=l.requests[s];o||(o=l.requests[s]=[],loadGlyphRange(i,s,t.url,t.requestTransform,function(r,e){if(e)for(var t in e)l.glyphs[+t]=e[+t];for(var i=0,a=o;i<a.length;i+=1){(0,a[i])(r,e)}delete l.requests[s]})),o.push(function(r,t){r?e(r):t&&e(null,{stack:i,id:a,glyph:t[a]||null})})},function(r,t){if(r)e(r);else if(t){for(var i={},a=0,l=t;a<l.length;a+=1){var n=l[a],s=n.stack,o=n.id,h=n.glyph;(i[s]||(i[s]={}))[o]=h}e(null,i)}})},GlyphManager.prototype._tinySDF=function(r,e,t){var i=this.localIdeographFontFamily;if(i&&(isChar[\"CJK Unified Ideographs\"](t)||isChar[\"Hangul Syllables\"](t))){var a=r.tinySDF;if(!a){var l=\"400\";/bold/i.test(e)?l=\"900\":/medium/i.test(e)?l=\"500\":/light/i.test(e)&&(l=\"200\"),a=r.tinySDF=new TinySDF(24,3,8,.25,i,l)}return{id:t,bitmap:AlphaImage.create({width:30,height:30},a.draw(String.fromCharCode(t))),metrics:{width:24,height:24,left:0,top:-8,advance:24}}}},module.exports=GlyphManager;\n},{\"../style/load_glyph_range\":152,\"../util/image\":213,\"../util/is_char_in_unicode_block\":215,\"../util/util\":223,\"@mapbox/tiny-sdf\":4}],76:[function(_dereq_,module,exports){\n\"use strict\";function imagePosition(a,e){var i=e.pixelRatio,t={x:a.x+padding,y:a.y+padding,w:a.w-2*padding,h:a.h-2*padding};return{pixelRatio:i,textureRect:t,tl:[t.x,t.y],br:[t.x+t.w,t.y+t.h],displaySize:[t.w/i,t.h/i]}}function makeImageAtlas(a){var e=RGBAImage.create({width:0,height:0}),i={},t=new ShelfPack(0,0,{autoResize:!0});for(var d in a){var g=a[d],n=t.packOne(g.data.width+2*padding,g.data.height+2*padding);RGBAImage.resize(e,{width:t.w,height:t.h}),RGBAImage.copy(g.data,e,{x:0,y:0},{x:n.x+padding,y:n.y+padding},g.data),i[d]=imagePosition(n,g)}return t.shrink(),RGBAImage.resize(e,{width:t.w,height:t.h}),{image:e,positions:i}}var ShelfPack=_dereq_(\"@mapbox/shelf-pack\"),ref=_dereq_(\"../util/image\"),RGBAImage=ref.RGBAImage,padding=1;module.exports={imagePosition:imagePosition,makeImageAtlas:makeImageAtlas};\n},{\"../util/image\":213,\"@mapbox/shelf-pack\":3}],77:[function(_dereq_,module,exports){\n\"use strict\";var ShelfPack=_dereq_(\"@mapbox/shelf-pack\"),ref=_dereq_(\"../util/image\"),RGBAImage=ref.RGBAImage,ref$1=_dereq_(\"./image_atlas\"),imagePosition=ref$1.imagePosition,Texture=_dereq_(\"./texture\"),padding=1,ImageManager=function(){this.images={},this.loaded=!1,this.requestors=[],this.shelfPack=new ShelfPack(64,64,{autoResize:!0}),this.patterns={},this.atlasImage=RGBAImage.create({width:64,height:64}),this.dirty=!0};ImageManager.prototype.isLoaded=function(){return this.loaded},ImageManager.prototype.setLoaded=function(e){var t=this;if(this.loaded!==e&&(this.loaded=e,e)){for(var a=0,i=t.requestors;a<i.length;a+=1){var r=i[a],s=r.ids,h=r.callback;t._notify(s,h)}this.requestors=[]}},ImageManager.prototype.getImage=function(e){return this.images[e]},ImageManager.prototype.addImage=function(e,t){this.images[e]=t},ImageManager.prototype.removeImage=function(e){delete this.images[e];var t=this.patterns[e];t&&(this.shelfPack.unref(t.bin),delete this.patterns[e])},ImageManager.prototype.getImages=function(e,t){var a=this,i=!0;if(!this.isLoaded())for(var r=0,s=e;r<s.length;r+=1){var h=s[r];a.images[h]||(i=!1)}this.isLoaded()||i?this._notify(e,t):this.requestors.push({ids:e,callback:t})},ImageManager.prototype._notify=function(e,t){for(var a=this,i={},r=0,s=e;r<s.length;r+=1){var h=s[r],g=a.images[h];g&&(i[h]=g)}t(null,i)},ImageManager.prototype.getPixelSize=function(){return{width:this.shelfPack.w,height:this.shelfPack.h}},ImageManager.prototype.getPattern=function(e){var t=this.patterns[e];if(t)return t.position;var a=this.getImage(e);if(!a)return null;var i=a.data.width+2*padding,r=a.data.height+2*padding,s=this.shelfPack.packOne(i,r);if(!s)return null;RGBAImage.resize(this.atlasImage,this.getPixelSize());var h=a.data,g=this.atlasImage,n=s.x+padding,o=s.y+padding,d=h.width,m=h.height;RGBAImage.copy(h,g,{x:0,y:0},{x:n,y:o},{width:d,height:m}),RGBAImage.copy(h,g,{x:0,y:m-1},{x:n,y:o-1},{width:d,height:1}),RGBAImage.copy(h,g,{x:0,y:0},{x:n,y:o+m},{width:d,height:1}),RGBAImage.copy(h,g,{x:d-1,y:0},{x:n-1,y:o},{width:1,height:m}),RGBAImage.copy(h,g,{x:0,y:0},{x:n+d,y:o},{width:1,height:m}),this.dirty=!0;var p=imagePosition(s,a);return this.patterns[e]={bin:s,position:p},p},ImageManager.prototype.bind=function(e){this.atlasTexture?this.dirty&&(this.atlasTexture.update(this.atlasImage),this.dirty=!1):this.atlasTexture=new Texture(e,this.atlasImage,e.RGBA),this.atlasTexture.bind(e.LINEAR,e.CLAMP_TO_EDGE)},module.exports=ImageManager;\n},{\"../util/image\":213,\"./image_atlas\":76,\"./texture\":83,\"@mapbox/shelf-pack\":3}],78:[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.getDash=function(t,i){var e=t.join(\",\")+String(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 a=0,r=0;r<t.length;r++)a+=t[r];for(var n=this.width/a,E=n/2,T=t.length%2==1,o=-h;o<=h;o++)for(var R=e.nextRow+h+o,d=e.width*R,u=T?-t[t.length-1]:0,x=t[0],l=1,_=0;_<this.width;_++){for(;x<_/n;)u=x,x+=t[l],T&&l===t.length-1&&(x+=t[0]),l++;var A=Math.abs(_-u*n),g=Math.abs(_-x*n),w=Math.min(A,g),D=l%2==1,U=void 0;if(i){var f=h?o/h*(E+1):0;if(D){var p=E-Math.abs(f);U=Math.sqrt(w*w+p*p)}else U=E-Math.sqrt(w*w+f*f)}else U=(D?1:-1)*w;e.data[3+4*(d+_)]=Math.max(0,Math.min(255,U+128))}var X={y:(this.nextRow+h+.5)/this.height,height:2*h/this.height,width:a};return this.nextRow+=s,this.dirty=!0,X},LineAtlas.prototype.bind=function(t){this.texture?(t.bindTexture(t.TEXTURE_2D,this.texture),this.dirty&&(this.dirty=!1,t.texSubImage2D(t.TEXTURE_2D,0,0,0,this.width,this.height,t.RGBA,t.UNSIGNED_BYTE,this.data))):(this.texture=t.createTexture(),t.bindTexture(t.TEXTURE_2D,this.texture),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_WRAP_S,t.REPEAT),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_WRAP_T,t.REPEAT),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_MIN_FILTER,t.LINEAR),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_MAG_FILTER,t.LINEAR),t.texImage2D(t.TEXTURE_2D,0,t.RGBA,this.width,this.height,0,t.RGBA,t.UNSIGNED_BYTE,this.data))},module.exports=LineAtlas;\n},{\"../util/util\":223}],79:[function(_dereq_,module,exports){\n\"use strict\";var browser=_dereq_(\"../util/browser\"),mat4=_dereq_(\"@mapbox/gl-matrix\").mat4,FrameHistory=_dereq_(\"./frame_history\"),SourceCache=_dereq_(\"../source/source_cache\"),EXTENT=_dereq_(\"../data/extent\"),pixelsToTileUnits=_dereq_(\"../source/pixels_to_tile_units\"),util=_dereq_(\"../util/util\"),VertexBuffer=_dereq_(\"../gl/vertex_buffer\"),VertexArrayObject=_dereq_(\"./vertex_array_object\"),RasterBoundsArray=_dereq_(\"../data/raster_bounds_array\"),PosArray=_dereq_(\"../data/pos_array\"),ref=_dereq_(\"../data/program_configuration\"),ProgramConfiguration=ref.ProgramConfiguration,shaders=_dereq_(\"../shaders\"),Program=_dereq_(\"./program\"),RenderTexture=_dereq_(\"./render_texture\"),draw={symbol:_dereq_(\"./draw_symbol\"),circle:_dereq_(\"./draw_circle\"),line:_dereq_(\"./draw_line\"),fill:_dereq_(\"./draw_fill\"),\"fill-extrusion\":_dereq_(\"./draw_fill_extrusion\"),raster:_dereq_(\"./draw_raster\"),background:_dereq_(\"./draw_background\"),debug:_dereq_(\"./draw_debug\")},Painter=function(e,r){this.gl=e,this.transform=r,this._tileTextures={},this.prerenderedFrames={},this.viewportFrames=[],this.frameHistory=new FrameHistory,this.setup(),this.numSublayers=SourceCache.maxUnderzooming+SourceCache.maxOverzooming+1,this.depthEpsilon=1/Math.pow(2,16),this.lineWidthRange=e.getParameter(e.ALIASED_LINE_WIDTH_RANGE),this.basicFillProgramConfiguration=ProgramConfiguration.createBasicFill(),this.emptyProgramConfiguration=new ProgramConfiguration};Painter.prototype.resize=function(e,r){var t=this,i=this.gl;this.width=e*browser.devicePixelRatio,this.height=r*browser.devicePixelRatio,i.viewport(0,0,this.width,this.height);for(var a=0,s=t.viewportFrames;a<s.length;a+=1){var n=s[a];t.gl.deleteTexture(n.texture),t.gl.deleteFramebuffer(n.fbo)}this.viewportFrames=[],this.depthRbo&&(this.gl.deleteRenderbuffer(this.depthRbo),this.depthRbo=null)},Painter.prototype.setup=function(){var e=this.gl;e.enable(e.BLEND),e.blendFunc(e.ONE,e.ONE_MINUS_SRC_ALPHA),e.enable(e.STENCIL_TEST),e.enable(e.DEPTH_TEST),e.depthFunc(e.LEQUAL),this._depthMask=!1,e.depthMask(!1);var r=new PosArray;r.emplaceBack(0,0),r.emplaceBack(EXTENT,0),r.emplaceBack(0,EXTENT),r.emplaceBack(EXTENT,EXTENT),this.tileExtentBuffer=new VertexBuffer(e,r),this.tileExtentVAO=new VertexArrayObject,this.tileExtentPatternVAO=new VertexArrayObject;var t=new PosArray;t.emplaceBack(0,0),t.emplaceBack(EXTENT,0),t.emplaceBack(EXTENT,EXTENT),t.emplaceBack(0,EXTENT),t.emplaceBack(0,0),this.debugBuffer=new VertexBuffer(e,t),this.debugVAO=new VertexArrayObject;var i=new RasterBoundsArray;i.emplaceBack(0,0,0,0),i.emplaceBack(EXTENT,0,EXTENT,0),i.emplaceBack(0,EXTENT,0,EXTENT),i.emplaceBack(EXTENT,EXTENT,EXTENT,EXTENT),this.rasterBoundsBuffer=new VertexBuffer(e,i),this.rasterBoundsVAO=new VertexArrayObject,this.extTextureFilterAnisotropic=e.getExtension(\"EXT_texture_filter_anisotropic\")||e.getExtension(\"MOZ_EXT_texture_filter_anisotropic\")||e.getExtension(\"WEBKIT_EXT_texture_filter_anisotropic\"),this.extTextureFilterAnisotropic&&(this.extTextureFilterAnisotropicMax=e.getParameter(this.extTextureFilterAnisotropic.MAX_TEXTURE_MAX_ANISOTROPY_EXT))},Painter.prototype.clearColor=function(){var e=this.gl;e.clearColor(0,0,0,0),e.clear(e.COLOR_BUFFER_BIT)},Painter.prototype.clearStencil=function(){var e=this.gl;e.clearStencil(0),e.stencilMask(255),e.clear(e.STENCIL_BUFFER_BIT)},Painter.prototype.clearDepth=function(){var e=this.gl;e.clearDepth(1),this.depthMask(!0),e.clear(e.DEPTH_BUFFER_BIT)},Painter.prototype._renderTileClippingMasks=function(e){var r=this,t=this.gl;t.colorMask(!1,!1,!1,!1),this.depthMask(!1),t.disable(t.DEPTH_TEST),t.enable(t.STENCIL_TEST),t.stencilMask(255),t.stencilOp(t.KEEP,t.KEEP,t.REPLACE);var i=1;this._tileClippingMaskIDs={};for(var a=0,s=e;a<s.length;a+=1){var n=s[a],o=r._tileClippingMaskIDs[n.id]=i++;t.stencilFunc(t.ALWAYS,o,255);var l=r.useProgram(\"fill\",r.basicFillProgramConfiguration);t.uniformMatrix4fv(l.uniforms.u_matrix,!1,n.posMatrix),r.tileExtentVAO.bind(t,l,r.tileExtentBuffer),t.drawArrays(t.TRIANGLE_STRIP,0,r.tileExtentBuffer.length)}t.stencilMask(0),t.colorMask(!0,!0,!0,!0),this.depthMask(!0),t.enable(t.DEPTH_TEST)},Painter.prototype.enableTileClippingMask=function(e){var r=this.gl;r.stencilFunc(r.EQUAL,this._tileClippingMaskIDs[e.id],255)},Painter.prototype.render=function(e,r){var t=this;this.style=e,this.options=r,this.lineAtlas=e.lineAtlas,this.imageManager=e.imageManager,this.glyphManager=e.glyphManager,this.frameHistory.record(Date.now(),this.transform.zoom,e.getTransition().duration);for(var i in t.style.sourceCaches){var a=t.style.sourceCaches[i];a.used&&a.prepare(t.gl)}var s=this.style._order;this.renderPass=\"3d\";for(var n,o=!0,l=[],h=0;h<s.length;h++){var c=t.style._layers[s[h]];if(c.has3DPass()&&!c.isHidden(t.transform.zoom)&&(c.source!==(n&&n.id)&&(n=t.style.sourceCaches[c.source],l=[],n&&(t.clearStencil(),l=n.getVisibleCoordinates()),l.reverse()),l.length)){t._setup3DRenderbuffer();var u=t.viewportFrames.pop()||new RenderTexture(t);u.bindWithDepth(t.depthRbo),o&&(t.clearDepth(),o=!1),t.renderLayer(t,n,c,l),u.unbind(),t.prerenderedFrames[c.id]=u}}this.clearColor(),this.clearDepth(),this.showOverdrawInspector(r.showOverdrawInspector),this.depthRange=(e._order.length+2)*this.numSublayers*this.depthEpsilon,this.renderPass=\"opaque\";var p,d=[];for(this.currentLayer=s.length-1,this._showOverdrawInspector||this.gl.disable(this.gl.BLEND),this.currentLayer;this.currentLayer>=0;this.currentLayer--){var g=t.style._layers[s[t.currentLayer]];g.source!==(p&&p.id)&&(p=t.style.sourceCaches[g.source],d=[],p&&(t.clearStencil(),d=p.getVisibleCoordinates(),p.getSource().isTileClipped&&t._renderTileClippingMasks(d))),t.renderLayer(t,p,g,d)}this.renderPass=\"translucent\";var f,E=[];for(this.gl.enable(this.gl.BLEND),this.currentLayer=0,this.currentLayer;this.currentLayer<s.length;this.currentLayer++){var T=t.style._layers[s[t.currentLayer]];T.source!==(f&&f.id)&&(f=t.style.sourceCaches[T.source],E=[],f&&(t.clearStencil(),E=f.getVisibleCoordinates(),f.getSource().isTileClipped&&t._renderTileClippingMasks(E)),E.reverse()),t.renderLayer(t,f,T,E)}if(this.options.showTileBoundaries){var _=this.style.sourceCaches[Object.keys(this.style.sourceCaches)[0]];_&&draw.debug(this,_,_.getVisibleCoordinates())}},Painter.prototype._setup3DRenderbuffer=function(){if(!this.depthRbo){var e=this.gl;this.depthRbo=e.createRenderbuffer(),e.bindRenderbuffer(e.RENDERBUFFER,this.depthRbo),e.renderbufferStorage(e.RENDERBUFFER,e.DEPTH_COMPONENT16,this.width,this.height),e.bindRenderbuffer(e.RENDERBUFFER,null)}this.depthRboAttached=!0},Painter.prototype.depthMask=function(e){e!==this._depthMask&&(this._depthMask=e,this.gl.depthMask(e))},Painter.prototype.renderLayer=function(e,r,t,i){t.isHidden(this.transform.zoom)||(\"background\"===t.type||i.length)&&(this.id=t.id,draw[t.type](e,r,t,i))},Painter.prototype.setDepthSublayer=function(e){var r=1-((1+this.currentLayer)*this.numSublayers+e)*this.depthEpsilon,t=r-1+this.depthRange;this.gl.depthRange(t,r)},Painter.prototype.translatePosMatrix=function(e,r,t,i,a){if(!t[0]&&!t[1])return e;var s=a?\"map\"===i?this.transform.angle:0:\"viewport\"===i?-this.transform.angle:0;if(s){var n=Math.sin(s),o=Math.cos(s);t=[t[0]*o-t[1]*n,t[0]*n+t[1]*o]}var l=[a?t[0]:pixelsToTileUnits(r,t[0],this.transform.zoom),a?t[1]:pixelsToTileUnits(r,t[1],this.transform.zoom),0],h=new Float32Array(16);return mat4.translate(h,e,l),h},Painter.prototype.saveTileTexture=function(e){var r=this._tileTextures[e.size];r?r.push(e):this._tileTextures[e.size]=[e]},Painter.prototype.getTileTexture=function(e){var r=this._tileTextures[e];return r&&r.length>0?r.pop():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._createProgramCached=function(e,r){this.cache=this.cache||{};var t=\"\"+e+(r.cacheKey||\"\")+(this._showOverdrawInspector?\"/overdraw\":\"\");return this.cache[t]||(this.cache[t]=new Program(this.gl,shaders[e],r,this._showOverdrawInspector)),this.cache[t]},Painter.prototype.useProgram=function(e,r){var t=this.gl,i=this._createProgramCached(e,r||this.emptyProgramConfiguration);return this.currentProgram!==i&&(t.useProgram(i.program),this.currentProgram=i),i},module.exports=Painter;\n},{\"../data/extent\":48,\"../data/pos_array\":52,\"../data/program_configuration\":53,\"../data/raster_bounds_array\":54,\"../gl/vertex_buffer\":62,\"../shaders\":86,\"../source/pixels_to_tile_units\":93,\"../source/source_cache\":98,\"../util/browser\":202,\"../util/util\":223,\"./draw_background\":64,\"./draw_circle\":65,\"./draw_debug\":67,\"./draw_fill\":68,\"./draw_fill_extrusion\":69,\"./draw_line\":70,\"./draw_raster\":71,\"./draw_symbol\":72,\"./frame_history\":73,\"./program\":81,\"./render_texture\":82,\"./vertex_array_object\":84,\"@mapbox/gl-matrix\":1}],80:[function(_dereq_,module,exports){\n\"use strict\";var pixelsToTileUnits=_dereq_(\"../source/pixels_to_tile_units\");exports.isPatternMissing=function(r,i){if(!r)return!1;var e=i.imageManager.getPattern(r.from),o=i.imageManager.getPattern(r.to);return!e||!o},exports.prepare=function(r,i,e){var o=i.gl,t=i.imageManager.getPattern(r.from),n=i.imageManager.getPattern(r.to);o.uniform1i(e.uniforms.u_image,0),o.uniform2fv(e.uniforms.u_pattern_tl_a,t.tl),o.uniform2fv(e.uniforms.u_pattern_br_a,t.br),o.uniform2fv(e.uniforms.u_pattern_tl_b,n.tl),o.uniform2fv(e.uniforms.u_pattern_br_b,n.br);var u=i.imageManager.getPixelSize(),a=u.width,f=u.height;o.uniform2fv(e.uniforms.u_texsize,[a,f]),o.uniform1f(e.uniforms.u_mix,r.t),o.uniform2fv(e.uniforms.u_pattern_size_a,t.displaySize),o.uniform2fv(e.uniforms.u_pattern_size_b,n.displaySize),o.uniform1f(e.uniforms.u_scale_a,r.fromScale),o.uniform1f(e.uniforms.u_scale_b,r.toScale),o.activeTexture(o.TEXTURE0),i.imageManager.bind(o)},exports.setTile=function(r,i,e){var o=i.gl;o.uniform1f(e.uniforms.u_tile_units_to_pixels,1/pixelsToTileUnits(r,1,i.transform.tileZoom));var t=Math.pow(2,r.coord.z),n=r.tileSize*Math.pow(2,i.transform.tileZoom)/t,u=n*(r.coord.x+r.coord.w*t),a=n*r.coord.y;o.uniform2f(e.uniforms.u_pixel_coord_upper,u>>16,a>>16),o.uniform2f(e.uniforms.u_pixel_coord_lower,65535&u,65535&a)};\n},{\"../source/pixels_to_tile_units\":93}],81:[function(_dereq_,module,exports){\n\"use strict\";var browser=_dereq_(\"../util/browser\"),shaders=_dereq_(\"../shaders\"),ref=_dereq_(\"../data/program_configuration\"),ProgramConfiguration=ref.ProgramConfiguration,VertexArrayObject=_dereq_(\"./vertex_array_object\"),Program=function(r,e,t,a){var o=this;this.gl=r,this.program=r.createProgram();var i=t.defines().concat(\"#define DEVICE_PIXEL_RATIO \"+browser.devicePixelRatio.toFixed(1));a&&i.push(\"#define OVERDRAW_INSPECTOR;\");var n=i.concat(shaders.prelude.fragmentSource,e.fragmentSource).join(\"\\n\"),s=i.concat(shaders.prelude.vertexSource,e.vertexSource).join(\"\\n\"),m=r.createShader(r.FRAGMENT_SHADER);r.shaderSource(m,n),r.compileShader(m),r.attachShader(this.program,m);var g=r.createShader(r.VERTEX_SHADER);r.shaderSource(g,s),r.compileShader(g),r.attachShader(this.program,g);for(var c=t.interface?t.interface.layoutAttributes:[],u=0;u<c.length;u++)r.bindAttribLocation(o.program,u,c[u].name);r.linkProgram(this.program),this.numAttributes=r.getProgramParameter(this.program,r.ACTIVE_ATTRIBUTES),this.attributes={},this.uniforms={};for(var h=0;h<this.numAttributes;h++){var f=r.getActiveAttrib(o.program,h);f&&(o.attributes[f.name]=r.getAttribLocation(o.program,f.name))}for(var d=r.getProgramParameter(this.program,r.ACTIVE_UNIFORMS),p=0;p<d;p++){var v=r.getActiveUniform(o.program,p);v&&(o.uniforms[v.name]=r.getUniformLocation(o.program,v.name))}};Program.prototype.draw=function(r,e,t,a,o,i,n,s){for(var m,g=this,c=(m={},m[r.LINES]=2,m[r.TRIANGLES]=3,m)[e],u=0,h=i.get();u<h.length;u+=1){var f=h[u],d=f.vaos||(f.vaos={});(d[t]||(d[t]=new VertexArrayObject)).bind(r,g,a,o,n&&n.paintVertexBuffer,f.vertexOffset,s),r.drawElements(e,f.primitiveLength*c,r.UNSIGNED_SHORT,f.primitiveOffset*c*2)}},module.exports=Program;\n},{\"../data/program_configuration\":53,\"../shaders\":86,\"../util/browser\":202,\"./vertex_array_object\":84}],82:[function(_dereq_,module,exports){\n\"use strict\";var VertexBuffer=_dereq_(\"../gl/vertex_buffer\"),VertexArrayObject=_dereq_(\"./vertex_array_object\"),PosArray=_dereq_(\"../data/pos_array\"),RenderTexture=function(e){var r=this.gl=e.gl,t=this.texture=r.createTexture();r.bindTexture(r.TEXTURE_2D,t),r.texParameteri(r.TEXTURE_2D,r.TEXTURE_WRAP_S,r.CLAMP_TO_EDGE),r.texParameteri(r.TEXTURE_2D,r.TEXTURE_WRAP_T,r.CLAMP_TO_EDGE),r.texParameteri(r.TEXTURE_2D,r.TEXTURE_MIN_FILTER,r.LINEAR),r.texParameteri(r.TEXTURE_2D,r.TEXTURE_MAG_FILTER,r.LINEAR),r.texImage2D(r.TEXTURE_2D,0,r.RGBA,e.width,e.height,0,r.RGBA,r.UNSIGNED_BYTE,null),r.bindTexture(r.TEXTURE_2D,null);var E=this.fbo=r.createFramebuffer();r.bindFramebuffer(r.FRAMEBUFFER,E),r.framebufferTexture2D(r.FRAMEBUFFER,r.COLOR_ATTACHMENT0,r.TEXTURE_2D,t,0);var a=new PosArray;a.emplaceBack(0,0),a.emplaceBack(1,0),a.emplaceBack(0,1),a.emplaceBack(1,1),this.buffer=new VertexBuffer(r,a),this.vao=new VertexArrayObject};RenderTexture.prototype.bindWithDepth=function(e){var r=this.gl;r.bindFramebuffer(r.FRAMEBUFFER,this.fbo),this.attachedRbo!==e&&(r.framebufferRenderbuffer(r.FRAMEBUFFER,r.DEPTH_ATTACHMENT,r.RENDERBUFFER,e),this.attachedRbo=e)},RenderTexture.prototype.unbind=function(){var e=this.gl;e.bindFramebuffer(e.FRAMEBUFFER,null)},module.exports=RenderTexture;\n},{\"../data/pos_array\":52,\"../gl/vertex_buffer\":62,\"./vertex_array_object\":84}],83:[function(_dereq_,module,exports){\n\"use strict\";var Texture=function(t,e,i){this.gl=t;var r=e.width,T=e.height;this.size=[r,T],this.format=i,this.texture=t.createTexture(),this.update(e)};Texture.prototype.update=function(t){var e=t.width,i=t.height,r=t.data;this.size=[e,i];var T=this,E=T.gl;E.bindTexture(E.TEXTURE_2D,this.texture),E.pixelStorei(E.UNPACK_ALIGNMENT,1),this.format===E.RGBA&&E.pixelStorei(E.UNPACK_PREMULTIPLY_ALPHA_WEBGL,!0),E.texImage2D(E.TEXTURE_2D,0,this.format,e,i,0,this.format,E.UNSIGNED_BYTE,r)},Texture.prototype.bind=function(t,e){var i=this,r=i.gl;r.bindTexture(r.TEXTURE_2D,this.texture),t!==this.filter&&(r.texParameteri(r.TEXTURE_2D,r.TEXTURE_MAG_FILTER,t),r.texParameteri(r.TEXTURE_2D,r.TEXTURE_MIN_FILTER,t),this.filter=t),e!==this.wrap&&(r.texParameteri(r.TEXTURE_2D,r.TEXTURE_WRAP_S,e),r.texParameteri(r.TEXTURE_2D,r.TEXTURE_WRAP_T,e),this.wrap=e)},Texture.prototype.destroy=function(){this.gl.deleteTexture(this.texture),this.texture=null},module.exports=Texture;\n},{}],84:[function(_dereq_,module,exports){\n\"use strict\";var VertexArrayObject=function(){this.boundProgram=null,this.boundVertexBuffer=null,this.boundVertexBuffer2=null,this.boundIndexBuffer=null,this.boundVertexOffset=null,this.boundDynamicVertexBuffer=null,this.vao=null};VertexArrayObject.prototype.bind=function(e,t,r,i,n,s,u){void 0===e.extVertexArrayObject&&(e.extVertexArrayObject=e.getExtension(\"OES_vertex_array_object\"));var b=!this.vao||this.boundProgram!==t||this.boundVertexBuffer!==r||this.boundVertexBuffer2!==n||this.boundIndexBuffer!==i||this.boundVertexOffset!==s||this.boundDynamicVertexBuffer!==u;!e.extVertexArrayObject||b?(this.freshBind(e,t,r,i,n,s,u),this.gl=e):(e.extVertexArrayObject.bindVertexArrayOES(this.vao),u&&u.bind())},VertexArrayObject.prototype.freshBind=function(e,t,r,i,n,s,u){var b,o=t.numAttributes;if(e.extVertexArrayObject)this.vao&&this.destroy(),this.vao=e.extVertexArrayObject.createVertexArrayOES(),e.extVertexArrayObject.bindVertexArrayOES(this.vao),b=0,this.boundProgram=t,this.boundVertexBuffer=r,this.boundVertexBuffer2=n,this.boundIndexBuffer=i,this.boundVertexOffset=s,this.boundDynamicVertexBuffer=u;else{b=e.currentNumAttributes||0;for(var x=o;x<b;x++)e.disableVertexAttribArray(x)}r.enableAttributes(e,t),n&&n.enableAttributes(e,t),u&&u.enableAttributes(e,t),r.bind(),r.setVertexAttribPointers(e,t,s),n&&(n.bind(),n.setVertexAttribPointers(e,t,s)),u&&(u.bind(),u.setVertexAttribPointers(e,t,s)),i&&i.bind(),e.currentNumAttributes=o},VertexArrayObject.prototype.destroy=function(){this.vao&&(this.gl.extVertexArrayObject.deleteVertexArrayOES(this.vao),this.vao=null)},module.exports=VertexArrayObject;\n},{}],85:[function(_dereq_,module,exports){\n\"use strict\";var util=_dereq_(\"../util/util\");exports.packUint8ToFloat=function(t,l){return t=util.clamp(Math.floor(t),0,255),l=util.clamp(Math.floor(l),0,255),256*t+l};\n},{\"../util/util\":223}],86:[function(_dereq_,module,exports){\n\"use strict\";var shaders={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\\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, we encode a 4-component\\n// 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 vec3 v_data;\\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 vec2 extrude = v_data.xy;\\n float extrude_length = length(extrude);\\n\\n lowp float antialiasblur = v_data.z;\\n float antialiased_blur = -max(blur, 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 bool u_pitch_with_map;\\nuniform vec2 u_extrude_scale;\\nuniform highp float u_camera_to_center_distance;\\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 vec3 v_data;\\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 vec2 extrude = vec2(mod(a_pos, 2.0) * 2.0 - 1.0);\\n\\n // multiply a_pos by 0.5, since we had it * 2 in order to sneak\\n // in extrusion data\\n vec2 circle_center = floor(a_pos * 0.5);\\n if (u_pitch_with_map) {\\n vec2 corner_position = circle_center;\\n if (u_scale_with_map) {\\n corner_position += extrude * (radius + stroke_width) * u_extrude_scale;\\n } else {\\n // Pitching the circle with the map effectively scales it with the map\\n // To counteract the effect for pitch-scale: viewport, we rescale the\\n // whole circle based on the pitch scaling effect at its central point\\n vec4 projected_center = u_matrix * vec4(circle_center, 0, 1);\\n corner_position += extrude * (radius + stroke_width) * u_extrude_scale * (projected_center.w / u_camera_to_center_distance);\\n }\\n\\n gl_Position = u_matrix * vec4(corner_position, 0, 1);\\n } else {\\n gl_Position = u_matrix * vec4(circle_center, 0, 1);\\n\\n if (u_scale_with_map) {\\n gl_Position.xy += extrude * (radius + stroke_width) * u_extrude_scale * u_camera_to_center_distance;\\n } else {\\n gl_Position.xy += extrude * (radius + stroke_width) * u_extrude_scale * gl_Position.w;\\n }\\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 lowp float antialiasblur = 1.0 / DEVICE_PIXEL_RATIO / (radius + stroke_width);\\n\\n v_data = vec3(extrude.x, extrude.y, antialiasblur);\\n}\\n\"},collisionBox:{fragmentSource:\"uniform float u_zoom;\\n// u_maxzoom is derived from the maximum scale considered by the CollisionTile\\n// Labels with placement zoom greater than this value will not be placed,\\n// regardless of perspective effects.\\nuniform float u_maxzoom;\\nuniform sampler2D u_fadetexture;\\n\\n// v_max_zoom is a collision-box-specific value that controls when line-following\\n// collision boxes are used.\\nvarying float v_max_zoom;\\nvarying float v_placement_zoom;\\nvarying float v_perspective_zoom_adjust;\\nvarying vec2 v_fade_tex;\\n\\nvoid main() {\\n\\n float alpha = 0.5;\\n\\n // Green = no collisions, label is showing\\n gl_FragColor = vec4(0.0, 1.0, 0.0, 1.0) * alpha;\\n\\n // Red = collision, label hidden\\n if (texture2D(u_fadetexture, v_fade_tex).a < 1.0) {\\n gl_FragColor = vec4(1.0, 0.0, 0.0, 1.0) * alpha;\\n }\\n\\n // Faded black = this collision box is not used at this zoom (for curved labels)\\n if (u_zoom >= v_max_zoom + v_perspective_zoom_adjust) {\\n gl_FragColor = vec4(0.0, 0.0, 0.0, 1.0) * alpha * 0.25;\\n }\\n\\n // Faded blue = the placement scale for this label is beyond the CollisionTile\\n // max scale, so it's impossible for this label to show without collision detection\\n // being run again (the label's glyphs haven't even been added to the symbol bucket)\\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_anchor_pos;\\nattribute vec2 a_extrude;\\nattribute vec2 a_data;\\n\\nuniform mat4 u_matrix;\\nuniform float u_scale;\\nuniform float u_pitch;\\nuniform float u_collision_y_stretch;\\nuniform float u_camera_to_center_distance;\\n\\nvarying float v_max_zoom;\\nvarying float v_placement_zoom;\\nvarying float v_perspective_zoom_adjust;\\nvarying vec2 v_fade_tex;\\n\\nvoid main() {\\n vec4 projectedPoint = u_matrix * vec4(a_anchor_pos, 0, 1);\\n highp float camera_to_anchor_distance = projectedPoint.w;\\n highp float collision_perspective_ratio = 1.0 + 0.5 * ((camera_to_anchor_distance / u_camera_to_center_distance) - 1.0);\\n\\n highp float incidence_stretch = camera_to_anchor_distance / (u_camera_to_center_distance * cos(u_pitch));\\n highp float collision_adjustment = max(1.0, incidence_stretch / u_collision_y_stretch);\\n\\n gl_Position = u_matrix * vec4(a_pos + a_extrude * collision_perspective_ratio * collision_adjustment / u_scale, 0.0, 1.0);\\n\\n v_max_zoom = a_data.x;\\n v_placement_zoom = a_data.y;\\n\\n v_perspective_zoom_adjust = floor(log2(collision_perspective_ratio * collision_adjustment) * 10.0);\\n v_fade_tex = vec2((v_placement_zoom + v_perspective_zoom_adjust) / 255.0, 0.0);\\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 // We are using Int16 for texture position coordinates to give us enough precision for\\n // fractional coordinates. We use 8192 to scale the texture coordinates in the buffer\\n // as an arbitrarily high number to preserve adequate precision when rendering.\\n // This is also the same value as the EXTENT we are using for our tile buffer pos coordinates,\\n // so math for modifying either is consistent.\\n gl_Position = u_matrix * vec4(a_pos, step(8192.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 vec2 u_texsize;\\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_texsize, u_pattern_br_a / u_texsize, 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_texsize, u_pattern_br_b / u_texsize, 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 vec2 u_texsize;\\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_texsize, u_pattern_br_a / u_texsize, 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_texsize, u_pattern_br_b / u_texsize, 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 vec2 u_texsize;\\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_texsize, u_pattern_br_a / u_texsize, 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_texsize, u_pattern_br_b / u_texsize, 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 vec4 a_pos_normal;\\nattribute vec4 a_data;\\n\\nuniform mat4 u_matrix;\\nuniform mediump float u_ratio;\\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#pragma mapbox: define mediump float width\\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 #pragma mapbox: initialize mediump float width\\n\\n vec2 a_extrude = a_data.xy - 128.0;\\n float a_direction = mod(a_data.z, 4.0) - 1.0;\\n\\n vec2 pos = a_pos_normal.xy;\\n\\n // x is 1 if it's a round cap, 0 otherwise\\n // y is 1 if the normal points up, and -1 if it points down\\n mediump vec2 normal = a_pos_normal.zw;\\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 halfwidth = width / 2.0;\\n offset = -1.0 * offset;\\n\\n float inset = gapwidth + (gapwidth > 0.0 ? ANTIALIASING : 0.0);\\n float outset = gapwidth + halfwidth * (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 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 vec2 u_texsize;\\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_texsize, u_pattern_br_a / u_texsize, vec2(x_a, y_a));\\n vec2 pos_b = mix(u_pattern_tl_b / u_texsize, u_pattern_br_b / u_texsize, 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 vec4 a_pos_normal;\\nattribute vec4 a_data;\\n\\nuniform mat4 u_matrix;\\nuniform mediump float u_ratio;\\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#pragma mapbox: define mediump float width\\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 #pragma mapbox: initialize mediump float width\\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 vec2 pos = a_pos_normal.xy;\\n\\n // x is 1 if it's a round cap, 0 otherwise\\n // y is 1 if the normal points up, and -1 if it points down\\n mediump vec2 normal = a_pos_normal.zw;\\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 halfwidth = width / 2.0;\\n offset = -1.0 * offset;\\n\\n float inset = gapwidth + (gapwidth > 0.0 ? ANTIALIASING : 0.0);\\n float outset = gapwidth + halfwidth * (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 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:{\nfragmentSource:\"\\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#pragma mapbox: define mediump float width\\n#pragma mapbox: define lowp float floorwidth\\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 width\\n #pragma mapbox: initialize lowp float floorwidth\\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 / floorwidth, 0.5 + u_sdfgamma / floorwidth, 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 vec4 a_pos_normal;\\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;\\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#pragma mapbox: define mediump float width\\n#pragma mapbox: define lowp float floorwidth\\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 #pragma mapbox: initialize mediump float width\\n #pragma mapbox: initialize lowp float floorwidth\\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 vec2 pos = a_pos_normal.xy;\\n\\n // x is 1 if it's a round cap, 0 otherwise\\n // y is 1 if the normal points up, and -1 if it points down\\n mediump vec2 normal = a_pos_normal.zw;\\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 halfwidth = width / 2.0;\\n offset = -1.0 * offset;\\n\\n float inset = gapwidth + (gapwidth > 0.0 ? ANTIALIASING : 0.0);\\n float outset = gapwidth + halfwidth * (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 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 / floorwidth, normal.y * u_patternscale_a.y + u_tex_y_a);\\n v_tex_b = vec2(a_linesofar * u_patternscale_b.x / floorwidth, 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 if (color0.a > 0.0) {\\n color0.rgb = color0.rgb / color0.a;\\n }\\n if (color1.a > 0.0) {\\n color1.rgb = color1.rgb / color1.a;\\n }\\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 // We are using Int16 for texture position coordinates to give us enough precision for\\n // fractional coordinates. We use 8192 to scale the texture coordinates in the buffer\\n // as an arbitrarily high number to preserve adequate precision when rendering.\\n // This is also the same value as the EXTENT we are using for our tile buffer pos coordinates,\\n // so math for modifying either is consistent.\\n v_pos0 = (((a_texture_pos / 8192.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:\"const float PI = 3.141592653589793;\\n\\nattribute vec4 a_pos_offset;\\nattribute vec4 a_data;\\nattribute vec3 a_projected_pos;\\n\\nuniform bool u_is_size_zoom_constant;\\nuniform bool u_is_size_feature_constant;\\nuniform highp float u_size_t; // used to interpolate between zoom stops when size is a composite function\\nuniform highp float u_size; // used when size is both zoom and feature constant\\nuniform highp float u_camera_to_center_distance;\\nuniform highp float u_pitch;\\nuniform bool u_rotate_symbol;\\nuniform highp float u_aspect_ratio;\\nuniform highp float u_collision_y_stretch;\\n\\n#pragma mapbox: define lowp float opacity\\n\\nuniform mat4 u_matrix;\\nuniform mat4 u_label_plane_matrix;\\nuniform mat4 u_gl_coord_matrix;\\n\\nuniform bool u_is_text;\\nuniform bool u_pitch_with_map;\\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 vec2 a_size = a_data.zw;\\n\\n highp vec2 angle_labelminzoom = unpack_float(a_projected_pos[2]);\\n highp float segment_angle = -angle_labelminzoom[0] / 255.0 * 2.0 * PI;\\n mediump float a_labelminzoom = angle_labelminzoom[1];\\n\\n float size;\\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 } else if (u_is_size_zoom_constant && !u_is_size_feature_constant) {\\n size = a_size[0] / 10.0;\\n } else if (!u_is_size_zoom_constant && u_is_size_feature_constant) {\\n size = u_size;\\n } else {\\n size = u_size;\\n }\\n\\n vec4 projectedPoint = u_matrix * vec4(a_pos, 0, 1);\\n highp float camera_to_anchor_distance = projectedPoint.w;\\n // See comments in symbol_sdf.vertex\\n highp float distance_ratio = u_pitch_with_map ?\\n camera_to_anchor_distance / u_camera_to_center_distance :\\n u_camera_to_center_distance / camera_to_anchor_distance;\\n highp float perspective_ratio = 0.5 + 0.5 * distance_ratio;\\n\\n size *= perspective_ratio;\\n\\n float fontScale = u_is_text ? size / 24.0 : size;\\n\\n highp float symbol_rotation = 0.0;\\n if (u_rotate_symbol) {\\n // See comments in symbol_sdf.vertex\\n vec4 offsetProjectedPoint = u_matrix * vec4(a_pos + vec2(1, 0), 0, 1);\\n\\n vec2 a = projectedPoint.xy / projectedPoint.w;\\n vec2 b = offsetProjectedPoint.xy / offsetProjectedPoint.w;\\n\\n symbol_rotation = atan((b.y - a.y) / u_aspect_ratio, b.x - a.x);\\n }\\n\\n highp float angle_sin = sin(segment_angle + symbol_rotation);\\n highp float angle_cos = cos(segment_angle + symbol_rotation);\\n mat2 rotation_matrix = mat2(angle_cos, -1.0 * angle_sin, angle_sin, angle_cos);\\n\\n vec4 projected_pos = u_label_plane_matrix * vec4(a_projected_pos.xy, 0.0, 1.0);\\n gl_Position = u_gl_coord_matrix * vec4(projected_pos.xy / projected_pos.w + rotation_matrix * (a_offset / 64.0 * fontScale), 0.0, 1.0);\\n\\n v_tex = a_tex / u_texsize;\\n // See comments in symbol_sdf.vertex\\n highp float incidence_stretch = camera_to_anchor_distance / (u_camera_to_center_distance * cos(u_pitch));\\n highp float collision_adjustment = max(1.0, incidence_stretch / u_collision_y_stretch);\\n\\n highp float collision_perspective_ratio = 1.0 + 0.5*((camera_to_anchor_distance / u_camera_to_center_distance) - 1.0);\\n highp float perspective_zoom_adjust = floor(log2(collision_perspective_ratio * collision_adjustment) * 10.0);\\n v_fade_tex = vec2((a_labelminzoom + perspective_zoom_adjust) / 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 vec4 v_data0;\\nvarying vec2 v_data1;\\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 tex = v_data0.xy;\\n vec2 fade_tex = v_data0.zw;\\n float gamma_scale = v_data1.x;\\n float size = v_data1.y;\\n\\n float fontScale = u_is_text ? size / 24.0 : 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, tex).a;\\n lowp float fade_alpha = texture2D(u_fadetexture, fade_tex).a;\\n highp float gamma_scaled = gamma * 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;\\nattribute vec3 a_projected_pos;\\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) ]\\nuniform bool u_is_size_zoom_constant;\\nuniform bool u_is_size_feature_constant;\\nuniform highp float u_size_t; // used to interpolate between zoom stops when size is a composite function\\nuniform highp float u_size; // used when size is both zoom and 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\\nuniform mat4 u_matrix;\\nuniform mat4 u_label_plane_matrix;\\nuniform mat4 u_gl_coord_matrix;\\n\\nuniform bool u_is_text;\\nuniform bool u_pitch_with_map;\\nuniform highp float u_pitch;\\nuniform bool u_rotate_symbol;\\nuniform highp float u_aspect_ratio;\\nuniform highp float u_camera_to_center_distance;\\nuniform highp float u_collision_y_stretch;\\n\\nuniform vec2 u_texsize;\\n\\nvarying vec4 v_data0;\\nvarying vec2 v_data1;\\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 vec2 a_size = a_data.zw;\\n\\n highp vec2 angle_labelminzoom = unpack_float(a_projected_pos[2]);\\n highp float segment_angle = -angle_labelminzoom[0] / 255.0 * 2.0 * PI;\\n mediump float a_labelminzoom = angle_labelminzoom[1];\\n float size;\\n\\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 } else if (u_is_size_zoom_constant && !u_is_size_feature_constant) {\\n size = a_size[0] / 10.0;\\n } else if (!u_is_size_zoom_constant && u_is_size_feature_constant) {\\n size = u_size;\\n } else {\\n size = u_size;\\n }\\n\\n vec4 projectedPoint = u_matrix * vec4(a_pos, 0, 1);\\n highp float camera_to_anchor_distance = projectedPoint.w;\\n // If the label is pitched with the map, layout is done in pitched space,\\n // which makes labels in the distance smaller relative to viewport space.\\n // We counteract part of that effect by multiplying by the perspective ratio.\\n // If the label isn't pitched with the map, we do layout in viewport space,\\n // which makes labels in the distance larger relative to the features around\\n // them. We counteract part of that effect by dividing by the perspective ratio.\\n highp float distance_ratio = u_pitch_with_map ?\\n camera_to_anchor_distance / u_camera_to_center_distance :\\n u_camera_to_center_distance / camera_to_anchor_distance;\\n highp float perspective_ratio = 0.5 + 0.5 * distance_ratio;\\n\\n size *= perspective_ratio;\\n\\n float fontScale = u_is_text ? size / 24.0 : size;\\n\\n highp float symbol_rotation = 0.0;\\n if (u_rotate_symbol) {\\n // Point labels with 'rotation-alignment: map' are horizontal with respect to tile units\\n // To figure out that angle in projected space, we draw a short horizontal line in tile\\n // space, project it, and measure its angle in projected space.\\n vec4 offsetProjectedPoint = u_matrix * vec4(a_pos + vec2(1, 0), 0, 1);\\n\\n vec2 a = projectedPoint.xy / projectedPoint.w;\\n vec2 b = offsetProjectedPoint.xy / offsetProjectedPoint.w;\\n\\n symbol_rotation = atan((b.y - a.y) / u_aspect_ratio, b.x - a.x);\\n }\\n\\n highp float angle_sin = sin(segment_angle + symbol_rotation);\\n highp float angle_cos = cos(segment_angle + symbol_rotation);\\n mat2 rotation_matrix = mat2(angle_cos, -1.0 * angle_sin, angle_sin, angle_cos);\\n\\n vec4 projected_pos = u_label_plane_matrix * vec4(a_projected_pos.xy, 0.0, 1.0);\\n gl_Position = u_gl_coord_matrix * vec4(projected_pos.xy / projected_pos.w + rotation_matrix * (a_offset / 64.0 * fontScale), 0.0, 1.0);\\n float gamma_scale = gl_Position.w;\\n\\n vec2 tex = a_tex / u_texsize;\\n // incidence_stretch is the ratio of how much y space a label takes up on a tile while drawn perpendicular to the viewport vs\\n // how much space it would take up if it were drawn flat on the tile\\n // Using law of sines, camera_to_anchor/sin(ground_angle) = camera_to_center/sin(incidence_angle)\\n // sin(incidence_angle) = 1/incidence_stretch\\n // Incidence angle 90 -> head on, sin(incidence_angle) = 1, no incidence stretch\\n // Incidence angle 1 -> very oblique, sin(incidence_angle) =~ 0, lots of incidence stretch\\n // ground_angle = u_pitch + PI/2 -> sin(ground_angle) = cos(u_pitch)\\n // This 2D calculation is only exactly correct when gl_Position.x is in the center of the viewport,\\n // but it's a close enough approximation for our purposes\\n highp float incidence_stretch = camera_to_anchor_distance / (u_camera_to_center_distance * cos(u_pitch));\\n // incidence_stretch only applies to the y-axis, but without re-calculating the collision tile, we can't\\n // adjust the size of only one axis. So, we do a crude approximation at placement time to get the aspect ratio\\n // about right, and then do the rest of the adjustment here: there will be some extra padding on the x-axis,\\n // but hopefully not too much.\\n // Never make the adjustment less than 1.0: instead of allowing collisions on the x-axis, be conservative on\\n // the y-axis.\\n highp float collision_adjustment = max(1.0, incidence_stretch / u_collision_y_stretch);\\n\\n // Floor to 1/10th zoom to dodge precision issues that can cause partially hidden labels\\n highp float collision_perspective_ratio = 1.0 + 0.5*((camera_to_anchor_distance / u_camera_to_center_distance) - 1.0);\\n highp float perspective_zoom_adjust = floor(log2(collision_perspective_ratio * collision_adjustment) * 10.0);\\n vec2 fade_tex = vec2((a_labelminzoom + perspective_zoom_adjust) / 255.0, 0.0);\\n\\n v_data0 = vec4(tex.x, tex.y, fade_tex.x, fade_tex.y);\\n v_data1 = vec2(gamma_scale, size);\\n}\\n\"}},re=/#pragma mapbox: ([\\w]+) ([\\w]+) ([\\w]+) ([\\w]+)/g,loop=function(e){var n=shaders[e],a={};n.fragmentSource=n.fragmentSource.replace(re,function(e,n,o,t,i){return a[i]=!0,\"define\"===n?\"\\n#ifndef HAS_UNIFORM_u_\"+i+\"\\nvarying \"+o+\" \"+t+\" \"+i+\";\\n#else\\nuniform \"+o+\" \"+t+\" u_\"+i+\";\\n#endif\\n\":\"\\n#ifdef HAS_UNIFORM_u_\"+i+\"\\n \"+o+\" \"+t+\" \"+i+\" = u_\"+i+\";\\n#endif\\n\"}),n.vertexSource=n.vertexSource.replace(re,function(e,n,o,t,i){var r=\"float\"===t?\"vec2\":\"vec4\";return a[i]?\"define\"===n?\"\\n#ifndef HAS_UNIFORM_u_\"+i+\"\\nuniform lowp float a_\"+i+\"_t;\\nattribute \"+o+\" \"+r+\" a_\"+i+\";\\nvarying \"+o+\" \"+t+\" \"+i+\";\\n#else\\nuniform \"+o+\" \"+t+\" u_\"+i+\";\\n#endif\\n\":\"\\n#ifndef HAS_UNIFORM_u_\"+i+\"\\n \"+i+\" = unpack_mix_\"+r+\"(a_\"+i+\", a_\"+i+\"_t);\\n#else\\n \"+o+\" \"+t+\" \"+i+\" = u_\"+i+\";\\n#endif\\n\":\"define\"===n?\"\\n#ifndef HAS_UNIFORM_u_\"+i+\"\\nuniform lowp float a_\"+i+\"_t;\\nattribute \"+o+\" \"+r+\" a_\"+i+\";\\n#else\\nuniform \"+o+\" \"+t+\" u_\"+i+\";\\n#endif\\n\":\"\\n#ifndef HAS_UNIFORM_u_\"+i+\"\\n \"+o+\" \"+t+\" \"+i+\" = unpack_mix_\"+r+\"(a_\"+i+\", a_\"+i+\"_t);\\n#else\\n \"+o+\" \"+t+\" \"+i+\" = u_\"+i+\";\\n#endif\\n\"})};for(var programName in shaders)loop(programName);module.exports=shaders;\n},{}],87:[function(_dereq_,module,exports){\n\"use strict\";var ImageSource=_dereq_(\"./image_source\"),window=_dereq_(\"../util/window\"),CanvasSource=function(t){function i(i,a,e,s){t.call(this,i,a,e,s),this.options=a,this.animate=void 0===a.animate||a.animate}return t&&(i.__proto__=t),i.prototype=Object.create(t&&t.prototype),i.prototype.constructor=i,i.prototype.load=function(){this.canvas=this.canvas||window.document.getElementById(this.options.canvas);var t=this.canvas.getContext(this.options.contextType);if(!t)return this.fire(\"error\",new Error(\"Canvas context not found.\"));if(this.context=t,this.width=this.canvas.width,this.height=this.canvas.height,this._hasInvalidDimensions())return this.fire(\"error\",new Error(\"Canvas dimensions cannot be less than or equal to zero.\"));var i;this.play=function(){void 0===i&&(i=this.map.style.animationLoop.set(1/0),this.map._rerender())},this.pause=function(){void 0!==i&&(i=this.map.style.animationLoop.cancel(i))},this._finishLoading()},i.prototype.getCanvas=function(){return this.canvas},i.prototype.onAdd=function(t){this.map=t,this.load(),this.canvas&&this.animate&&this.play()},i.prototype.onRemove=function(){this.pause()},i.prototype.readCanvas=function(t){var i=this;if(this.context instanceof CanvasRenderingContext2D)this.canvasData=this.context.getImageData(0,0,this.width,this.height);else if(this.context instanceof WebGLRenderingContext){var a=this.context,e=new Uint8Array(this.width*this.height*4);a.readPixels(0,0,this.width,this.height,a.RGBA,a.UNSIGNED_BYTE,e),this.secondaryContext||(this.secondaryContext=window.document.createElement(\"canvas\").getContext(\"2d\")),this.canvasData&&!t||(this.canvasData=this.secondaryContext.createImageData(this.width,this.height));for(var s=this.height-1,n=0;s>=0;s--,n++)i.canvasData.data.set(e.subarray(s*i.width*4,(s+1)*i.width*4),n*i.width*4)}},i.prototype.prepare=function(){var t=!1;if(this.canvas.width!==this.width&&(this.width=this.canvas.width,t=!0),this.canvas.height!==this.height&&(this.height=this.canvas.height,t=!0),!this._hasInvalidDimensions()&&0!==Object.keys(this.tiles).length){if((this.animate||!this.canvasData||t)&&this.readCanvas(t),!this.canvasData)return void this.fire(\"error\",new Error(\"Could not read canvas data.\"));this._prepareImage(this.map.painter.gl,this.canvasData,t)}},i.prototype.serialize=function(){return{type:\"canvas\",canvas:this.canvas,coordinates:this.coordinates}},i.prototype._hasInvalidDimensions=function(){for(var t=this,i=0,a=[t.canvas.width,t.canvas.height];i<a.length;i+=1){var e=a[i];if(isNaN(e)||e<=0)return!0}return!1},i}(ImageSource);module.exports=CanvasSource;\n},{\"../util/window\":204,\"./image_source\":91}],88:[function(_dereq_,module,exports){\n\"use strict\";function resolveURL(t){var e=window.document.createElement(\"a\");return e.href=t,e.href}var Evented=_dereq_(\"../util/evented\"),util=_dereq_(\"../util/util\"),window=_dereq_(\"../util/window\"),EXTENT=_dereq_(\"../data/extent\"),ResourceType=_dereq_(\"../util/ajax\").ResourceType,browser=_dereq_(\"../util/browser\"),GeoJSONSource=function(t){function e(e,o,r,i){t.call(this),this.id=e,this.type=\"geojson\",this.minzoom=0,this.maxzoom=18,this.tileSize=512,this.isTileClipped=!0,this.reparseOverscaled=!0,this.dispatcher=r,this.setEventedParent(i),this._data=o.data,this._options=util.extend({},o),void 0!==o.maxzoom&&(this.maxzoom=o.maxzoom),o.type&&(this.type=o.type);var a=EXTENT/this.tileSize;this.workerOptions=util.extend({source:this.id,cluster:o.cluster||!1,geojsonVtOptions:{buffer:(void 0!==o.buffer?o.buffer:128)*a,tolerance:(void 0!==o.tolerance?o.tolerance:.375)*a,extent:EXTENT,maxZoom:this.maxzoom},superclusterOptions:{maxZoom:void 0!==o.clusterMaxZoom?Math.min(o.clusterMaxZoom,this.maxzoom-1):this.maxzoom-1,extent:EXTENT,radius:(o.clusterRadius||50)*a,log:!1}},o.workerOptions)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.load=function(){var t=this;this.fire(\"dataloading\",{dataType:\"source\"}),this._updateWorkerData(function(e){if(e)return void t.fire(\"error\",{error:e});t.fire(\"data\",{dataType:\"source\",sourceDataType:\"metadata\"})})},e.prototype.onAdd=function(t){this.map=t,this.load()},e.prototype.setData=function(t){var e=this;return this._data=t,this.fire(\"dataloading\",{dataType:\"source\"}),this._updateWorkerData(function(t){if(t)return e.fire(\"error\",{error:t});e.fire(\"data\",{dataType:\"source\",sourceDataType:\"content\"})}),this},e.prototype._updateWorkerData=function(t){var e=this,o=util.extend({},this.workerOptions),r=this._data;\"string\"==typeof r?o.request=this.map._transformRequest(resolveURL(r),ResourceType.Source):o.data=JSON.stringify(r),this.workerID=this.dispatcher.send(this.type+\".loadData\",o,function(o){e._loaded=!0,t(o)},this.workerID)},e.prototype.loadTile=function(t,e){var o=this,r=t.workerID&&\"expired\"!==t.state?\"reloadTile\":\"loadTile\",i={type:this.type,uid:t.uid,coord:t.coord,zoom:t.coord.z,maxZoom:this.maxzoom,tileSize:this.tileSize,source:this.id,pixelRatio:browser.devicePixelRatio,overscaling:t.coord.z>this.maxzoom?Math.pow(2,t.coord.z-this.maxzoom):1,angle:this.map.transform.angle,pitch:this.map.transform.pitch,cameraToCenterDistance:this.map.transform.cameraToCenterDistance,cameraToTileDistance:this.map.transform.cameraToTileDistance(t),showCollisionBoxes:this.map.showCollisionBoxes};t.workerID=this.dispatcher.send(r,i,function(r,i){if(t.unloadVectorData(),!t.aborted)return r?e(r):(t.loadVectorData(i,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 util.extend({},this._options,{type:this.type,data:this._data})},e}(Evented);module.exports=GeoJSONSource;\n},{\"../data/extent\":48,\"../util/ajax\":201,\"../util/browser\":202,\"../util/evented\":210,\"../util/util\":223,\"../util/window\":204}],89:[function(_dereq_,module,exports){\n\"use strict\";function loadGeoJSONTile(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),i=vtpbf(u);0===i.byteOffset&&i.byteLength===i.buffer.byteLength||(i=new Uint8Array(i)),r(null,{vectorTile:u,rawData:i.buffer})}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,loadGeoJSONTile),o&&(this.loadGeoJSON=o),this._geoJSONIndexes={}}return e&&(r.__proto__=e),r.prototype=Object.create(e&&e.prototype),r.prototype.constructor=r,r.prototype.loadData=function(e,r){var t=this;this.loadGeoJSON(e,function(o,n){if(o||!n)return r(o);if(\"object\"!=typeof n)return r(new Error(\"Input data is not a valid GeoJSON object.\"));rewind(n,!0);try{t._geoJSONIndexes[e.source]=e.cluster?supercluster(e.superclusterOptions).load(n.features):geojsonvt(n,e.geojsonVtOptions)}catch(o){return r(o)}t.loaded[e.source]={},r(null)})},r.prototype.reloadTile=function(r,t){var o=this.loaded[r.source],n=r.uid;return o&&o[n]?e.prototype.reloadTile.call(this,r,t):this.loadTile(r,t)},r.prototype.loadGeoJSON=function(e,r){if(e.request)ajax.getJSON(e.request,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}(VectorTileWorkerSource);module.exports=GeoJSONWorkerSource;\n},{\"../util/ajax\":201,\"./geojson_wrapper\":90,\"./vector_tile_worker_source\":103,\"geojson-rewind\":13,\"geojson-vt\":17,\"supercluster\":32,\"vt-pbf\":37}],90:[function(_dereq_,module,exports){\n\"use strict\";var Point=_dereq_(\"@mapbox/point-geometry\"),toGeoJSON=_dereq_(\"@mapbox/vector-tile\").VectorTileFeature.prototype.toGeoJSON,EXTENT=_dereq_(\"../data/extent\"),FeatureWrapper=function(e){this._feature=e,this.extent=EXTENT,this.type=e.type,this.properties=e.tags,\"id\"in e&&!isNaN(e.id)&&(this.id=parseInt(e.id,10))};FeatureWrapper.prototype.loadGeometry=function(){var e=this;if(1===this._feature.type){for(var t=[],r=0,o=e._feature.geometry;r<o.length;r+=1){var a=o[r];t.push([new Point(a[0],a[1])])}return t}for(var i=[],p=0,n=e._feature.geometry;p<n.length;p+=1){for(var s=n[p],u=[],h=0,f=s;h<f.length;h+=1){var l=f[h];u.push(new Point(l[0],l[1]))}i.push(u)}return i},FeatureWrapper.prototype.toGeoJSON=function(e,t,r){return toGeoJSON.call(this,e,t,r)};var GeoJSONWrapper=function(e){this.layers={_geojsonTileLayer:this},this.name=\"_geojsonTileLayer\",this.extent=EXTENT,this.length=e.length,this._features=e};GeoJSONWrapper.prototype.feature=function(e){return new FeatureWrapper(this._features[e])},module.exports=GeoJSONWrapper;\n},{\"../data/extent\":48,\"@mapbox/point-geometry\":2,\"@mapbox/vector-tile\":6}],91:[function(_dereq_,module,exports){\n\"use strict\";var util=_dereq_(\"../util/util\"),window=_dereq_(\"../util/window\"),TileCoord=_dereq_(\"./tile_coord\"),LngLat=_dereq_(\"../geo/lng_lat\"),Point=_dereq_(\"@mapbox/point-geometry\"),Evented=_dereq_(\"../util/evented\"),ajax=_dereq_(\"../util/ajax\"),browser=_dereq_(\"../util/browser\"),EXTENT=_dereq_(\"../data/extent\"),RasterBoundsArray=_dereq_(\"../data/raster_bounds_array\"),VertexBuffer=_dereq_(\"../gl/vertex_buffer\"),VertexArrayObject=_dereq_(\"../render/vertex_array_object\"),ImageSource=function(e){function t(t,r,o,i){e.call(this),this.id=t,this.dispatcher=o,this.coordinates=r.coordinates,this.type=\"image\",this.minzoom=0,this.maxzoom=22,this.tileSize=512,this.tiles={},this.setEventedParent(i),this.options=r,this.textureLoaded=!1}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.load=function(){var e=this;this.fire(\"dataloading\",{dataType:\"source\"}),this.url=this.options.url,ajax.getImage(this.map._transformRequest(this.url,ajax.ResourceType.Image),function(t,r){t?e.fire(\"error\",{error:t}):r&&(e.image=browser.getImageData(r),e._finishLoading())})},t.prototype._finishLoading=function(){this.map&&(this.setCoordinates(this.coordinates),this.fire(\"data\",{dataType:\"source\",sourceDataType:\"metadata\"}))},t.prototype.onAdd=function(e){this.map=e,this.load()},t.prototype.setCoordinates=function(e){this.coordinates=e;var t=this.map,r=e.map(function(e){return t.transform.locationCoordinate(LngLat.convert(e)).zoomTo(0)}),o=this.centerCoord=util.getCoordinatesCenter(r);o.column=Math.floor(o.column),o.row=Math.floor(o.row),this.coord=new TileCoord(o.zoom,o.column,o.row),this.minzoom=this.maxzoom=o.zoom;var i=r.map(function(e){var t=e.zoomTo(o.zoom);return new Point(Math.round((t.column-o.column)*EXTENT),Math.round((t.row-o.row)*EXTENT))});return this._boundsArray=new RasterBoundsArray,this._boundsArray.emplaceBack(i[0].x,i[0].y,0,0),this._boundsArray.emplaceBack(i[1].x,i[1].y,EXTENT,0),this._boundsArray.emplaceBack(i[3].x,i[3].y,0,EXTENT),this._boundsArray.emplaceBack(i[2].x,i[2].y,EXTENT,EXTENT),this.boundsBuffer&&(this.boundsBuffer.destroy(),delete this.boundsBuffer),this.fire(\"data\",{dataType:\"source\",sourceDataType:\"content\"}),this},t.prototype.prepare=function(){0!==Object.keys(this.tiles).length&&this.image&&this._prepareImage(this.map.painter.gl,this.image)},t.prototype._prepareImage=function(e,t,r){var o=this;this.boundsBuffer||(this.boundsBuffer=new VertexBuffer(e,this._boundsArray)),this.boundsVAO||(this.boundsVAO=new VertexArrayObject),this.textureLoaded?r?e.texImage2D(e.TEXTURE_2D,0,e.RGBA,e.RGBA,e.UNSIGNED_BYTE,t):(t instanceof window.HTMLVideoElement||t instanceof window.ImageData)&&(e.bindTexture(e.TEXTURE_2D,this.texture),e.texSubImage2D(e.TEXTURE_2D,0,0,0,e.RGBA,e.UNSIGNED_BYTE,t)):(this.textureLoaded=!0,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.LINEAR),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MAG_FILTER,e.LINEAR),e.texImage2D(e.TEXTURE_2D,0,e.RGBA,e.RGBA,e.UNSIGNED_BYTE,t));for(var i in o.tiles){var a=o.tiles[i];\"loaded\"!==a.state&&(a.state=\"loaded\",a.texture=o.texture)}},t.prototype.loadTile=function(e,t){this.coord&&this.coord.toString()===e.coord.toString()?(this.tiles[String(e.coord.w)]=e,e.buckets={},t(null)):(e.state=\"errored\",t(null))},t.prototype.serialize=function(){return{type:\"image\",url:this.options.url,coordinates:this.coordinates}},t}(Evented);module.exports=ImageSource;\n},{\"../data/extent\":48,\"../data/raster_bounds_array\":54,\"../geo/lng_lat\":58,\"../gl/vertex_buffer\":62,\"../render/vertex_array_object\":84,\"../util/ajax\":201,\"../util/browser\":202,\"../util/evented\":210,\"../util/util\":223,\"../util/window\":204,\"./tile_coord\":101,\"@mapbox/point-geometry\":2}],92:[function(_dereq_,module,exports){\n\"use strict\";var util=_dereq_(\"../util/util\"),ajax=_dereq_(\"../util/ajax\"),browser=_dereq_(\"../util/browser\"),normalizeURL=_dereq_(\"../util/mapbox\").normalizeSourceURL;module.exports=function(r,e,o){var u=function(r,e){if(r)return o(r);if(e){var u=util.pick(e,[\"tiles\",\"minzoom\",\"maxzoom\",\"attribution\",\"mapbox_logo\",\"bounds\"]);e.vector_layers&&(u.vectorLayers=e.vector_layers,u.vectorLayerIds=u.vectorLayers.map(function(r){return r.id})),o(null,u)}};r.url?ajax.getJSON(e(normalizeURL(r.url),ajax.ResourceType.Source),u):browser.frame(function(){return u(null,r)})};\n},{\"../util/ajax\":201,\"../util/browser\":202,\"../util/mapbox\":217,\"../util/util\":223}],93:[function(_dereq_,module,exports){\n\"use strict\";var EXTENT=_dereq_(\"../data/extent\");module.exports=function(e,t,r){return t*(EXTENT/(e.tileSize*Math.pow(2,r-e.coord.z)))};\n},{\"../data/extent\":48}],94:[function(_dereq_,module,exports){\n\"use strict\";function sortTilesIn(e,r){var o=e.coord,t=r.coord;return o.z-t.z||o.y-t.y||o.w-t.w||o.x-t.x}function mergeRenderedFeatureLayers(e){for(var r={},o={},t=0,n=e;t<n.length;t+=1){var u=n[t],a=u.queryResults,d=u.wrappedTileID,s=o[d]=o[d]||{};for(var i in a)for(var l=a[i],c=s[i]=s[i]||{},f=r[i]=r[i]||[],v=0,y=l;v<y.length;v+=1){var p=y[v];c[p.featureIndex]||(c[p.featureIndex]=!0,f.push(p.feature))}}return r}var TileCoord=_dereq_(\"./tile_coord\");exports.rendered=function(e,r,o,t,n,u){var a=e.tilesIn(o);a.sort(sortTilesIn);for(var d=[],s=0,i=a;s<i.length;s+=1){var l=i[s];d.push({wrappedTileID:l.coord.wrapped().id,queryResults:l.tile.queryRenderedFeatures(r,l.queryGeometry,l.scale,t,u)})}return mergeRenderedFeatureLayers(d)},exports.source=function(e,r){for(var o=e.getRenderableIds().map(function(r){return e.getTileByID(r)}),t=[],n={},u=0;u<o.length;u++){var a=o[u],d=new TileCoord(Math.min(a.sourceMaxZoom,a.coord.z),a.coord.x,a.coord.y,0).id;n[d]||(n[d]=!0,a.querySourceFeatures(t,r))}return t};\n},{\"./tile_coord\":101}],95:[function(_dereq_,module,exports){\n\"use strict\";var util=_dereq_(\"../util/util\"),ajax=_dereq_(\"../util/ajax\"),Evented=_dereq_(\"../util/evented\"),loadTileJSON=_dereq_(\"./load_tilejson\"),normalizeURL=_dereq_(\"../util/mapbox\").normalizeTileURL,TileBounds=_dereq_(\"./tile_bounds\"),RasterTileSource=function(e){function t(t,i,r,o){e.call(this),this.id=t,this.dispatcher=r,this.setEventedParent(o),this.type=\"raster\",this.minzoom=0,this.maxzoom=22,this.roundZoom=!0,this.scheme=\"xyz\",this.tileSize=512,this._loaded=!1,this._options=util.extend({},i),util.extend(this,util.pick(i,[\"url\",\"scheme\",\"tileSize\"]))}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.load=function(){var e=this;this.fire(\"dataloading\",{dataType:\"source\"}),loadTileJSON(this._options,this.map._transformRequest,function(t,i){t?e.fire(\"error\",t):i&&(util.extend(e,i),i.bounds&&(e.tileBounds=new TileBounds(i.bounds,e.minzoom,e.maxzoom)),e.fire(\"data\",{dataType:\"source\",sourceDataType:\"metadata\"}),e.fire(\"data\",{dataType:\"source\",sourceDataType:\"content\"}))})},t.prototype.onAdd=function(e){this.map=e,this.load()},t.prototype.serialize=function(){return util.extend({},this._options)},t.prototype.hasTile=function(e){return!this.tileBounds||this.tileBounds.contains(e,this.maxzoom)},t.prototype.loadTile=function(e,t){var i=this,r=normalizeURL(e.coord.url(this.tiles,null,this.scheme),this.url,this.tileSize);e.request=ajax.getImage(this.map._transformRequest(r,ajax.ResourceType.Tile),function(r,o){if(delete e.request,e.aborted)i.state=\"unloaded\",t(null);else if(r)i.state=\"errored\",t(r);else if(o){i.map._refreshExpiredTiles&&e.setExpiryData(o),delete o.cacheControl,delete o.expires;var a=i.map.painter.gl;e.texture=i.map.painter.getTileTexture(o.width),e.texture?(a.bindTexture(a.TEXTURE_2D,e.texture),a.texSubImage2D(a.TEXTURE_2D,0,0,0,a.RGBA,a.UNSIGNED_BYTE,o)):(e.texture=a.createTexture(),a.bindTexture(a.TEXTURE_2D,e.texture),a.texParameteri(a.TEXTURE_2D,a.TEXTURE_MIN_FILTER,a.LINEAR_MIPMAP_NEAREST),a.texParameteri(a.TEXTURE_2D,a.TEXTURE_MAG_FILTER,a.LINEAR),a.texParameteri(a.TEXTURE_2D,a.TEXTURE_WRAP_S,a.CLAMP_TO_EDGE),a.texParameteri(a.TEXTURE_2D,a.TEXTURE_WRAP_T,a.CLAMP_TO_EDGE),a.pixelStorei(a.UNPACK_PREMULTIPLY_ALPHA_WEBGL,!0),i.map.painter.extTextureFilterAnisotropic&&a.texParameterf(a.TEXTURE_2D,i.map.painter.extTextureFilterAnisotropic.TEXTURE_MAX_ANISOTROPY_EXT,i.map.painter.extTextureFilterAnisotropicMax),a.texImage2D(a.TEXTURE_2D,0,a.RGBA,a.RGBA,a.UNSIGNED_BYTE,o),e.texture.size=o.width),a.generateMipmap(a.TEXTURE_2D),e.state=\"loaded\",t(null)}})},t.prototype.abortTile=function(e){e.request&&(e.request.abort(),delete e.request)},t.prototype.unloadTile=function(e){e.texture&&this.map.painter.saveTileTexture(e.texture)},t}(Evented);module.exports=RasterTileSource;\n},{\"../util/ajax\":201,\"../util/evented\":210,\"../util/mapbox\":217,\"../util/util\":223,\"./load_tilejson\":92,\"./tile_bounds\":100}],96:[function(_dereq_,module,exports){\n\"use strict\";var ajax=_dereq_(\"../util/ajax\"),Evented=_dereq_(\"../util/evented\"),window=_dereq_(\"../util/window\"),pluginRequested=!1,pluginBlobURL=null;module.exports.evented=new Evented,module.exports.registerForPluginAvailability=function(e){return pluginBlobURL?e({pluginBlobURL:pluginBlobURL,errorCallback:module.exports.errorCallback}):module.exports.evented.once(\"pluginAvailable\",e),e},module.exports.createBlobURL=function(e){return window.URL.createObjectURL(new window.Blob([e.data],{type:\"text/javascript\"}))},module.exports.clearRTLTextPlugin=function(){pluginRequested=!1,pluginBlobURL=null},module.exports.setRTLTextPlugin=function(e,l){if(pluginRequested)throw new Error(\"setRTLTextPlugin cannot be called multiple times.\");pluginRequested=!0,module.exports.errorCallback=l,ajax.getArrayBuffer({url:e},function(e,t){e?l(e):t&&(pluginBlobURL=module.exports.createBlobURL(t),module.exports.evented.fire(\"pluginAvailable\",{pluginBlobURL:pluginBlobURL,errorCallback:l}))})},module.exports.applyArabicShaping=null,module.exports.processBidirectionalText=null;\n},{\"../util/ajax\":201,\"../util/evented\":210,\"../util/window\":204}],97:[function(_dereq_,module,exports){\n\"use strict\";var util=_dereq_(\"../util/util\"),sourceTypes={vector:_dereq_(\"../source/vector_tile_source\"),raster:_dereq_(\"../source/raster_tile_source\"),geojson:_dereq_(\"../source/geojson_source\"),video:_dereq_(\"../source/video_source\"),image:_dereq_(\"../source/image_source\"),canvas:_dereq_(\"../source/canvas_source\")};exports.create=function(e,r,o,u){var s=new sourceTypes[r.type](e,r,o,u);if(s.id!==e)throw new Error(\"Expected Source id to be \"+e+\" instead of \"+s.id);return util.bindAll([\"load\",\"abort\",\"unload\",\"serialize\",\"prepare\"],s),s},exports.getType=function(e){return sourceTypes[e]},exports.setType=function(e,r){sourceTypes[e]=r};\n},{\"../source/canvas_source\":87,\"../source/geojson_source\":88,\"../source/image_source\":91,\"../source/raster_tile_source\":95,\"../source/vector_tile_source\":102,\"../source/video_source\":104,\"../util/util\":223}],98:[function(_dereq_,module,exports){\n\"use strict\";function coordinateToTilePoint(e,t,o){var i=o.zoomTo(Math.min(e.z,t));return new Point((i.column-(e.x+e.w*Math.pow(2,e.z)))*EXTENT,(i.row-e.y)*EXTENT)}function compareKeyZoom(e,t){return e%32-t%32}function isRasterType(e){return\"raster\"===e||\"image\"===e||\"video\"===e}var createSource=_dereq_(\"./source\").create,Tile=_dereq_(\"./tile\"),Evented=_dereq_(\"../util/evented\"),TileCoord=_dereq_(\"./tile_coord\"),Cache=_dereq_(\"../util/lru_cache\"),Coordinate=_dereq_(\"../geo/coordinate\"),util=_dereq_(\"../util/util\"),EXTENT=_dereq_(\"../data/extent\"),Point=_dereq_(\"@mapbox/point-geometry\"),SourceCache=function(e){function t(t,o,i){var r=this;e.call(this),this.id=t,this.dispatcher=i,this.on(\"data\",function(e){\"source\"===e.dataType&&\"metadata\"===e.sourceDataType&&(r._sourceLoaded=!0),r._sourceLoaded&&!r._paused&&\"source\"===e.dataType&&\"content\"===e.sourceDataType&&(r.reload(),r.transform&&r.update(r.transform))}),this.on(\"error\",function(){r._sourceErrored=!0}),this._source=createSource(t,o,i,this),this._tiles={},this._cache=new Cache(0,this._unloadTile.bind(this)),this._timers={},this._cacheTimers={},this._maxTileCacheSize=null,this._isIdRenderable=this._isIdRenderable.bind(this)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.onAdd=function(e){this.map=e,this._maxTileCacheSize=e?e._maxTileCacheSize:null,this._source&&this._source.onAdd&&this._source.onAdd(e)},t.prototype.onRemove=function(e){this._source&&this._source.onRemove&&this._source.onRemove(e)},t.prototype.loaded=function(){var e=this;if(this._sourceErrored)return!0;if(!this._sourceLoaded)return!1;for(var t in e._tiles){var o=e._tiles[t];if(\"loaded\"!==o.state&&\"errored\"!==o.state)return!1}return!0},t.prototype.getSource=function(){return this._source},t.prototype.pause=function(){this._paused=!0},t.prototype.resume=function(){if(this._paused){var e=this._shouldReloadOnResume;this._paused=!1,this._shouldReloadOnResume=!1,e&&this.reload(),this.transform&&this.update(this.transform)}},t.prototype._loadTile=function(e,t){return this._source.loadTile(e,t)},t.prototype._unloadTile=function(e){if(this._source.unloadTile)return this._source.unloadTile(e)},t.prototype._abortTile=function(e){if(this._source.abortTile)return this._source.abortTile(e)},t.prototype.serialize=function(){return this._source.serialize()},t.prototype.prepare=function(e){var t=this;this._source.prepare&&this._source.prepare();for(var o in t._tiles)t._tiles[o].upload(e)},t.prototype.getIds=function(){return Object.keys(this._tiles).map(Number).sort(compareKeyZoom)},t.prototype.getRenderableIds=function(){return this.getIds().filter(this._isIdRenderable)},t.prototype._isIdRenderable=function(e){return this._tiles[e].hasData()&&!this._coveredTiles[e]},t.prototype.reload=function(){var e=this;if(this._paused)return void(this._shouldReloadOnResume=!0);this._cache.reset();for(var t in e._tiles)e._reloadTile(t,\"reloading\")},t.prototype._reloadTile=function(e,t){var o=this._tiles[e];o&&(\"loading\"!==o.state&&(o.state=t),this._loadTile(o,this._tileLoaded.bind(this,o,e,t)))},t.prototype._tileLoaded=function(e,t,o,i){if(i)return e.state=\"errored\",void(404!==i.status?this._source.fire(\"error\",{tile:e,error:i}):this.update(this.transform));e.timeAdded=(new Date).getTime(),\"expired\"===o&&(e.refreshedUponExpiration=!0),this._setTileReloadTimer(t,e),this._source.fire(\"data\",{dataType:\"source\",tile:e,coord:e.coord}),this.map&&(this.map.painter.tileExtentVAO.vao=null)},t.prototype.getTile=function(e){return this.getTileByID(e.id)},t.prototype.getTileByID=function(e){return this._tiles[e]},t.prototype.getZoom=function(e){return e.zoom+e.scaleZoom(e.tileSize/this._source.tileSize)},t.prototype._findLoadedChildren=function(e,t,o){var i=this,r=!1;for(var s in i._tiles){var a=i._tiles[s];if(!(o[s]||!a.hasData()||a.coord.z<=e.z||a.coord.z>t)){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);if(!d)break;a=i._tiles[d.id],a&&a.hasData()&&(delete o[s],o[d.id]=!0)}}}return r},t.prototype.findLoadedParent=function(e,t,o){for(var i=this,r=e.z-1;r>=t;r--){var s=e.parent(i._source.maxzoom);if(!s)return;e=s;var a=String(e.id),n=i._tiles[a];if(n&&n.hasData())return o[a]=!0,n;if(i._cache.has(a))return o[a]=!0,i._cache.getWithoutRemoving(a)}},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=Math.floor(5*i),s=\"number\"==typeof this._maxTileCacheSize?Math.min(this._maxTileCacheSize,r):r;this._cache.setMaxSize(s)},t.prototype.update=function(e){var o=this;if(this.transform=e,this._sourceLoaded&&!this._paused){this.updateCacheSize(e),this._coveredTiles={};var i;this.used?this._source.coord?i=e.getVisibleWrappedCoordinates(this._source.coord):(i=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&&(i=i.filter(function(e){return o._source.hasTile(e)}))):i=[];var r=(this._source.roundZoom?Math.round:Math.floor)(this.getZoom(e)),s=Math.max(r-t.maxOverzooming,this._source.minzoom),a=Math.max(r+t.maxUnderzooming,this._source.minzoom),n=this._updateRetainedTiles(i,r),d={};if(isRasterType(this._source.type))for(var h=Object.keys(n),u=0;u<h.length;u++){var c=h[u],l=TileCoord.fromID(+c),_=o._tiles[c];if(_&&(void 0===_.fadeEndTime||_.fadeEndTime>=Date.now())){o._findLoadedChildren(l,a,n)&&(n[c]=!0);var m=o.findLoadedParent(l,s,d);m&&o._addTile(m.coord)}}var p;for(p in d)n[p]||(o._coveredTiles[p]=!0);for(p in d)n[p]=!0;for(var f=util.keysDifference(this._tiles,n),T=0;T<f.length;T++)o._removeTile(f[T])}},t.prototype._updateRetainedTiles=function(e,o){var i,r,s,a,n=this,d={},h={},u=Math.max(o-t.maxOverzooming,this._source.minzoom);for(i=0;i<e.length;i++){r=e[i],s=n._addTile(r);var c=!1;if(s.hasData())d[r.id]=!0;else{c=s.wasRequested(),d[r.id]=!0,a=!0;if(o+1>n._source.maxzoom){var l=r.children(n._source.maxzoom)[0],_=n.getTile(l);_&&_.hasData()?d[l.id]=!0:a=!1}else for(var m=r.children(n._source.maxzoom),p=0;p<m.length;p++){var f=m[p],T=f?n.getTile(f):null;T&&T.hasData()?d[f.id]=!0:a=!1}if(!a)for(var v=o-1;v>=u;--v){var y=r.scaledTo(v,n._source.maxzoom);if(h[y.id])break;if(h[y.id]=!0,s=n.getTile(y),!s&&c&&(s=n._addTile(y)),s&&(d[y.id]=!0,c=s.wasRequested(),s.hasData()))break}}}return d},t.prototype._addTile=function(e){var t=this._tiles[e.id];if(t)return t;(t=this._cache.get(e.id))&&(t.redoPlacement(this._source),this._cacheTimers[e.id]&&(clearTimeout(this._cacheTimers[e.id]),delete this._cacheTimers[e.id],this._setTileReloadTimer(e.id,t)));var o=Boolean(t);if(!o){var i=e.z,r=i>this._source.maxzoom?Math.pow(2,i-this._source.maxzoom):1;t=new Tile(e,this._source.tileSize*r,this._source.maxzoom),this._loadTile(t,this._tileLoaded.bind(this,t,e.id,t.state))}return t?(t.uses++,this._tiles[e.id]=t,o||this._source.fire(\"dataloading\",{tile:t,coord:t.coord,dataType:\"source\"}),t):null},t.prototype._setTileReloadTimer=function(e,t){var o=this,i=t.getExpiryTimeout();i&&(this._timers[e]=setTimeout(function(){o._reloadTile(e,\"expired\"),delete o._timers[e]},i))},t.prototype._setCacheInvalidationTimer=function(e,t){var o=this,i=t.getExpiryTimeout();i&&(this._cacheTimers[e]=setTimeout(function(){o._cache.remove(e),delete o._cacheTimers[e]},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]),delete this._timers[e]),!(t.uses>0)))if(t.stopPlacementThrottler(),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;this._shouldReloadOnResume=!1,this._paused=!1;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,h=0;h<e.length;h++){var u=e[h];r=Math.min(r,u.column),s=Math.min(s,u.row),a=Math.max(a,u.column),n=Math.max(n,u.row)}for(var c=0;c<i.length;c++){var l=t._tiles[i[c]],_=TileCoord.fromID(i[c]),m=[coordinateToTilePoint(_,l.sourceMaxZoom,new Coordinate(r,s,d)),coordinateToTilePoint(_,l.sourceMaxZoom,new Coordinate(a,n,d))];if(m[0].x<EXTENT&&m[0].y<EXTENT&&m[1].x>=0&&m[1].y>=0){for(var p=[],f=0;f<e.length;f++)p.push(coordinateToTilePoint(_,l.sourceMaxZoom,e[f]));o.push({tile:l,coord:_,queryGeometry:[p],scale:Math.pow(2,t.transform.zoom-l.coord.z)})}}return o},t.prototype.redoPlacement=function(){for(var e=this,t=this.getIds(),o=0;o<t.length;o++){e.getTileByID(t[o]).redoPlacement(e._source)}},t.prototype.getVisibleCoordinates=function(){for(var e=this,t=this.getRenderableIds().map(TileCoord.fromID),o=0,i=t;o<i.length;o+=1){var r=i[o];r.posMatrix=e.transform.calculatePosMatrix(r,e._source.maxzoom)}return t},t}(Evented);SourceCache.maxOverzooming=10,SourceCache.maxUnderzooming=3,module.exports=SourceCache;\n},{\"../data/extent\":48,\"../geo/coordinate\":57,\"../util/evented\":210,\"../util/lru_cache\":216,\"../util/util\":223,\"./source\":97,\"./tile\":99,\"./tile_coord\":101,\"@mapbox/point-geometry\":2}],99:[function(_dereq_,module,exports){\n\"use strict\";var util=_dereq_(\"../util/util\"),deserializeBucket=_dereq_(\"../data/bucket\").deserialize,SymbolBucket=_dereq_(\"../data/bucket/symbol_bucket\"),FeatureIndex=_dereq_(\"../data/feature_index\"),vt=_dereq_(\"@mapbox/vector-tile\"),Protobuf=_dereq_(\"pbf\"),GeoJSONFeature=_dereq_(\"../util/vectortile_to_geojson\"),featureFilter=_dereq_(\"../style-spec/feature_filter\"),CollisionTile=_dereq_(\"../symbol/collision_tile\"),CollisionBoxArray=_dereq_(\"../symbol/collision_box\"),Throttler=_dereq_(\"../util/throttler\"),Texture=_dereq_(\"../render/texture\"),CLOCK_SKEW_RETRY_TIMEOUT=3e4,Tile=function(e,t,i){this.coord=e,this.uid=util.uniqueId(),this.uses=0,this.tileSize=t,this.sourceMaxZoom=i,this.buckets={},this.expirationTime=null,this.expiredRequestCount=0,this.state=\"loading\",this.placementThrottler=new Throttler(300,this._immediateRedoPlacement.bind(this))};Tile.prototype.registerFadeDuration=function(e,t){var i=t+this.timeAdded;i<Date.now()||this.fadeEndTime&&i<this.fadeEndTime||(this.fadeEndTime=i,e.set(this.fadeEndTime-Date.now()))},Tile.prototype.wasRequested=function(){return\"errored\"===this.state||\"loaded\"===this.state||\"reloading\"===this.state},Tile.prototype.loadVectorData=function(e,t){this.hasData()&&this.unloadVectorData(),this.state=\"loaded\",e&&(e.rawTileData&&(this.rawTileData=e.rawTileData),this.collisionBoxArray=new CollisionBoxArray(e.collisionBoxArray),this.collisionTile=CollisionTile.deserialize(e.collisionTile,this.collisionBoxArray),this.featureIndex=FeatureIndex.deserialize(e.featureIndex,this.rawTileData,this.collisionTile),this.buckets=deserializeBucket(e.buckets,t.style),e.iconAtlasImage&&(this.iconAtlasImage=e.iconAtlasImage),e.glyphAtlasImage&&(this.glyphAtlasImage=e.glyphAtlasImage))},Tile.prototype.reloadSymbolData=function(e,t){var i=this;if(\"unloaded\"!==this.state){this.collisionTile=CollisionTile.deserialize(e.collisionTile,this.collisionBoxArray),this.featureIndex&&this.featureIndex.setCollisionTile(this.collisionTile);for(var a in i.buckets){var s=i.buckets[a];s instanceof SymbolBucket&&(s.destroy(),delete i.buckets[a])}util.extend(this.buckets,deserializeBucket(e.buckets,t)),e.iconAtlasImage&&(this.iconAtlasImage=e.iconAtlasImage),e.glyphAtlasImage&&(this.glyphAtlasImage=e.glyphAtlasImage)}},Tile.prototype.unloadVectorData=function(){var e=this;for(var t in e.buckets)e.buckets[t].destroy();this.buckets={},this.iconAtlasTexture&&this.iconAtlasTexture.destroy(),this.glyphAtlasTexture&&this.glyphAtlasTexture.destroy(),this.collisionBoxArray=null,this.collisionTile=null,this.featureIndex=null,this.state=\"unloaded\"},Tile.prototype.redoPlacement=function(e){if(\"vector\"===e.type||\"geojson\"===e.type){if(\"loaded\"!==this.state)return void(this.redoWhenDone=!0);if(this.collisionTile){var t=e.map.transform.cameraToTileDistance(this);if(this.angle===e.map.transform.angle&&this.pitch===e.map.transform.pitch&&this.showCollisionBoxes===e.map.showCollisionBoxes){if(this.cameraToTileDistance===t&&this.cameraToCenterDistance===e.map.transform.cameraToCenterDistance)return;if(this.pitch<25)return this.cameraToTileDistance=t,void(this.cameraToCenterDistance=e.map.transform.cameraToCenterDistance)}this.angle=e.map.transform.angle,this.pitch=e.map.transform.pitch,this.cameraToCenterDistance=e.map.transform.cameraToCenterDistance,this.cameraToTileDistance=t,this.showCollisionBoxes=e.map.showCollisionBoxes,this.placementSource=e,this.state=\"reloading\",this.placementThrottler.invoke()}}},Tile.prototype._immediateRedoPlacement=function(){var e=this;this.placementSource.dispatcher.send(\"redoPlacement\",{type:this.placementSource.type,uid:this.uid,source:this.placementSource.id,angle:this.angle,pitch:this.pitch,cameraToCenterDistance:this.cameraToCenterDistance,cameraToTileDistance:this.cameraToTileDistance,showCollisionBoxes:this.showCollisionBoxes},function(t,i){\"reloading\"===e.state&&(e.state=\"loaded\",e.reloadSymbolData(i,e.placementSource.map.style),e.placementSource.fire(\"data\",{tile:e,coord:e.coord,dataType:\"source\"}),e.placementSource.map&&(e.placementSource.map.painter.tileExtentVAO.vao=null),e.redoWhenDone&&(e.state=\"reloading\",e.redoWhenDone=!1,e._immediateRedoPlacement()))},this.workerID)},Tile.prototype.getBucket=function(e){return this.buckets[e.id]},Tile.prototype.upload=function(e){var t=this;for(var i in t.buckets){var a=t.buckets[i];a.uploaded||(a.upload(e),a.uploaded=!0)}this.iconAtlasImage&&(this.iconAtlasTexture=new Texture(e,this.iconAtlasImage,e.RGBA),this.iconAtlasImage=null),this.glyphAtlasImage&&(this.glyphAtlasTexture=new Texture(e,this.glyphAtlasImage,e.ALPHA),this.glyphAtlasImage=null)},Tile.prototype.queryRenderedFeatures=function(e,t,i,a,s){var o=this;if(!this.featureIndex)return{};var r=0;for(var l in e){var n=o.getBucket(e[l]);n&&(r=Math.max(r,e[l].queryRadius(n)))}return this.featureIndex.query({queryGeometry:t,bearing:s,params:a,scale:i,additionalRadius:r,tileSize:this.tileSize},e)},Tile.prototype.querySourceFeatures=function(e,t){var i=this;if(this.rawTileData){this.vtLayers||(this.vtLayers=new vt.VectorTile(new Protobuf(this.rawTileData)).layers);var a=t?t.sourceLayer:\"\",s=this.vtLayers._geojsonTileLayer||this.vtLayers[a];if(s)for(var o=featureFilter(t&&t.filter),r={z:this.coord.z,x:this.coord.x,y:this.coord.y},l=0;l<s.length;l++){var n=s.feature(l);if(o(n)){var h=new GeoJSONFeature(n,i.coord.z,i.coord.x,i.coord.y);h.tile=r,e.push(h)}}}},Tile.prototype.hasData=function(){return\"loaded\"===this.state||\"reloading\"===this.state||\"expired\"===this.state},Tile.prototype.setExpiryData=function(e){var t=this.expirationTime;if(e.cacheControl){var i=util.parseCacheControl(e.cacheControl);i[\"max-age\"]&&(this.expirationTime=Date.now()+1e3*i[\"max-age\"])}else e.expires&&(this.expirationTime=new Date(e.expires).getTime());if(this.expirationTime){var a=Date.now(),s=!1;if(this.expirationTime>a)s=!1;else if(t)if(this.expirationTime<t)s=!0;else{var o=this.expirationTime-t;o?this.expirationTime=a+Math.max(o,CLOCK_SKEW_RETRY_TIMEOUT):s=!0}else s=!0;s?(this.expiredRequestCount++,this.state=\"expired\"):this.expiredRequestCount=0}},Tile.prototype.getExpiryTimeout=function(){if(this.expirationTime)return this.expiredRequestCount?1e3*(1<<Math.min(this.expiredRequestCount-1,31)):Math.min(this.expirationTime-(new Date).getTime(),Math.pow(2,31)-1)},Tile.prototype.stopPlacementThrottler=function(){this.placementThrottler.stop(),\"reloading\"===this.state&&(this.state=\"loaded\")},module.exports=Tile;\n},{\"../data/bucket\":42,\"../data/bucket/symbol_bucket\":47,\"../data/feature_index\":49,\"../render/texture\":83,\"../style-spec/feature_filter\":110,\"../symbol/collision_box\":170,\"../symbol/collision_tile\":172,\"../util/throttler\":221,\"../util/util\":223,\"../util/vectortile_to_geojson\":224,\"@mapbox/vector-tile\":6,\"pbf\":29}],100:[function(_dereq_,module,exports){\n\"use strict\";var LngLatBounds=_dereq_(\"../geo/lng_lat_bounds\"),clamp=_dereq_(\"../util/util\").clamp,TileBounds=function(t,n,o){this.bounds=LngLatBounds.convert(this.validateBounds(t)),this.minzoom=n||0,this.maxzoom=o||24};TileBounds.prototype.validateBounds=function(t){return Array.isArray(t)&&4===t.length?[Math.max(-180,t[0]),Math.max(-90,t[1]),Math.min(180,t[2]),Math.min(90,t[3])]:[-180,-90,180,90]},TileBounds.prototype.contains=function(t,n){var o=n?Math.min(t.z,n):t.z,a={minX:Math.floor(this.lngX(this.bounds.getWest(),o)),minY:Math.floor(this.latY(this.bounds.getNorth(),o)),maxX:Math.ceil(this.lngX(this.bounds.getEast(),o)),maxY:Math.ceil(this.latY(this.bounds.getSouth(),o))};return t.x>=a.minX&&t.x<a.maxX&&t.y>=a.minY&&t.y<a.maxY},TileBounds.prototype.lngX=function(t,n){return(t+180)*(Math.pow(2,n)/360)},TileBounds.prototype.latY=function(t,n){var o=clamp(Math.sin(Math.PI/180*t),-.9999,.9999),a=Math.pow(2,n)/(2*Math.PI);return Math.pow(2,n-1)+.5*Math.log((1+o)/(1-o))*-a},module.exports=TileBounds;\n},{\"../geo/lng_lat_bounds\":59,\"../util/util\":223}],101:[function(_dereq_,module,exports){\n\"use strict\";function edge(t,i){if(t.row>i.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 h=Math.max(o,Math.floor(i.y0)),n=Math.min(r,Math.ceil(i.y1));if(t.x0===i.x0&&t.y0===i.y0?t.x0+i.dy/t.dy*t.dx<i.x1:t.x1-i.dy/t.dy*t.dx<i.x0){var s=t;t=i,i=s}for(var a=t.dx/t.dy,d=i.dx/i.dy,l=t.dx>0,y=i.dx<0,x=h;x<n;x++){var u=a*Math.max(0,Math.min(t.dy,x+l-t.y0))+t.x0,c=d*Math.max(0,Math.min(i.dy,x+y-i.y0))+i.x0;e(Math.floor(c),Math.ceil(u),x)}}function scanTriangle(t,i,o,r,e,h){var n,s=edge(t,i),a=edge(i,o),d=edge(o,t);s.dy>a.dy&&(n=s,s=a,a=n),s.dy>d.dy&&(n=s,s=d,d=n),a.dy>d.dy&&(n=a,a=d,d=n),s.dy&&scanSpans(d,s,r,e,h),a.dy&&scanSpans(d,a,r,e,h)}function getQuadkey(t,i,o){for(var r,e=\"\",h=t;h>0;h--)r=1<<h-1,e+=(i&r?1:0)+(o&r?2:0);return e}var WhooTS=_dereq_(\"@mapbox/whoots-js\"),Coordinate=_dereq_(\"../geo/coordinate\"),TileCoord=function(t,i,o,r){(void 0===r||isNaN(r))&&(r=0),this.z=+t,this.x=+i,this.y=+o,this.w=+r,(r*=2)<0&&(r=-1*r-1);var e=1<<this.z;this.id=32*(e*e*r+e*this.y+this.x)+this.z,this.posMatrix=null};TileCoord.prototype.toString=function(){return this.z+\"/\"+this.x+\"/\"+this.y},TileCoord.prototype.toCoordinate=function(t){var i=Math.min(this.z,void 0===t?this.z:t),o=Math.pow(2,i),r=this.y,e=this.x+o*this.w;return new Coordinate(e,r,i)},TileCoord.prototype.url=function(t,i,o){var r=WhooTS.getTileBBox(this.x,this.y,this.z),e=getQuadkey(this.z,this.x,this.y);return t[(this.x+this.y)%t.length].replace(\"{prefix}\",(this.x%16).toString(16)+(this.y%16).toString(16)).replace(\"{z}\",String(Math.min(this.z,i||this.z))).replace(\"{x}\",String(this.x)).replace(\"{y}\",String(\"tms\"===o?Math.pow(2,this.z)-this.y-1:this.y)).replace(\"{quadkey}\",e).replace(\"{bbox-epsg-3857}\",r)},TileCoord.prototype.parent=function(t){return 0===this.z?null:this.z>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.prototype.scaledTo=function(t,i){return this.z>i?new TileCoord(t,this.x,this.y,this.w):t<=this.z?new TileCoord(t,this.x>>this.z-t,this.y>>this.z-t,this.w):new TileCoord(t,this.x<<t-this.z,this.y<<t-this.z,this.w)},TileCoord.cover=function(t,i,o,r){function e(t,i,e){var s,a,d,l;if(e>=0&&e<=h)for(s=t;s<i;s++)a=Math.floor(s/h),d=(s%h+h)%h,0!==a&&!0!==r||(l=new TileCoord(o,d,e,a),n[l.id]=l)}void 0===r&&(r=!0);var h=1<<t,n={};return scanTriangle(i[0],i[1],i[2],0,h,e),scanTriangle(i[2],i[3],i[0],0,h,e),Object.keys(n).map(function(t){return n[t]})},TileCoord.fromID=function(t){var i=t%32,o=1<<i,r=(t-i)/32,e=r%o,h=(r-e)/o%o,n=Math.floor(r/(o*o));return n%2!=0&&(n=-1*n-1),n/=2,new TileCoord(i,e,h,n)},module.exports=TileCoord;\n},{\"../geo/coordinate\":57,\"@mapbox/whoots-js\":10}],102:[function(_dereq_,module,exports){\n\"use strict\";var Evented=_dereq_(\"../util/evented\"),util=_dereq_(\"../util/util\"),loadTileJSON=_dereq_(\"./load_tilejson\"),normalizeURL=_dereq_(\"../util/mapbox\").normalizeTileURL,TileBounds=_dereq_(\"./tile_bounds\"),ResourceType=_dereq_(\"../util/ajax\").ResourceType,browser=_dereq_(\"../util/browser\"),VectorTileSource=function(e){function t(t,i,o,r){if(e.call(this),this.id=t,this.dispatcher=o,this.type=\"vector\",this.minzoom=0,this.maxzoom=22,this.scheme=\"xyz\",this.tileSize=512,this.reparseOverscaled=!0,this.isTileClipped=!0,util.extend(this,util.pick(i,[\"url\",\"scheme\",\"tileSize\"])),this._options=util.extend({type:\"vector\"},i),512!==this.tileSize)throw new Error(\"vector tile sources must have a tileSize of 512\");this.setEventedParent(r)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.load=function(){var e=this;this.fire(\"dataloading\",{dataType:\"source\"}),loadTileJSON(this._options,this.map._transformRequest,function(t,i){t?e.fire(\"error\",t):i&&(util.extend(e,i),i.bounds&&(e.tileBounds=new TileBounds(i.bounds,e.minzoom,e.maxzoom)),e.fire(\"data\",{dataType:\"source\",sourceDataType:\"metadata\"}),e.fire(\"data\",{dataType:\"source\",sourceDataType:\"content\"}))})},t.prototype.hasTile=function(e){return!this.tileBounds||this.tileBounds.contains(e,this.maxzoom)},t.prototype.onAdd=function(e){this.map=e,this.load()},t.prototype.serialize=function(){return util.extend({},this._options)},t.prototype.loadTile=function(e,t){function i(i,o){if(!e.aborted){if(i)return t(i);this.map._refreshExpiredTiles&&e.setExpiryData(o),e.loadVectorData(o,this.map.painter),e.redoWhenDone&&(e.redoWhenDone=!1,e.redoPlacement(this)),t(null),e.reloadCallback&&(this.loadTile(e,e.reloadCallback),e.reloadCallback=null)}}var o=e.coord.z>this.maxzoom?Math.pow(2,e.coord.z-this.maxzoom):1,r=normalizeURL(e.coord.url(this.tiles,this.maxzoom,this.scheme),this.url),s={request:this.map._transformRequest(r,ResourceType.Tile),uid:e.uid,coord:e.coord,zoom:e.coord.z,tileSize:this.tileSize*o,type:this.type,source:this.id,pixelRatio:browser.devicePixelRatio,overscaling:o,angle:this.map.transform.angle,pitch:this.map.transform.pitch,cameraToCenterDistance:this.map.transform.cameraToCenterDistance,cameraToTileDistance:this.map.transform.cameraToTileDistance(e),showCollisionBoxes:this.map.showCollisionBoxes};e.workerID&&\"expired\"!==e.state?\"loading\"===e.state?e.reloadCallback=t:this.dispatcher.send(\"reloadTile\",s,i.bind(this),e.workerID):e.workerID=this.dispatcher.send(\"loadTile\",s,i.bind(this))},t.prototype.abortTile=function(e){this.dispatcher.send(\"abortTile\",{uid:e.uid,type:this.type,source:this.id},void 0,e.workerID)},t.prototype.unloadTile=function(e){e.unloadVectorData(),this.dispatcher.send(\"removeTile\",{uid:e.uid,type:this.type,source:this.id},void 0,e.workerID)},t}(Evented);module.exports=VectorTileSource;\n},{\"../util/ajax\":201,\"../util/browser\":202,\"../util/evented\":210,\"../util/mapbox\":217,\"../util/util\":223,\"./load_tilejson\":92,\"./tile_bounds\":100}],103:[function(_dereq_,module,exports){\n\"use strict\";function loadVectorTile(e,r){var o=ajax.getArrayBuffer(e.request,function(e,o){e?r(e):o&&r(null,{vectorTile:new vt.VectorTile(new Protobuf(o.data)),rawData:o.data,cacheControl:o.cacheControl,expires:o.expires})});return function(){o.abort()}}var ajax=_dereq_(\"../util/ajax\"),vt=_dereq_(\"@mapbox/vector-tile\"),Protobuf=_dereq_(\"pbf\"),WorkerTile=_dereq_(\"./worker_tile\"),util=_dereq_(\"../util/util\"),VectorTileWorkerSource=function(e,r,o){this.actor=e,this.layerIndex=r,this.loadVectorData=o||loadVectorTile,this.loading={},this.loaded={}};VectorTileWorkerSource.prototype.loadTile=function(e,r){var o=this,t=e.source,a=e.uid;this.loading[t]||(this.loading[t]={});var i=this.loading[t][a]=new WorkerTile(e);i.abort=this.loadVectorData(e,function(e,l){if(delete o.loading[t][a],e||!l)return r(e);var c=l.rawData,n={};l.expires&&(n.expires=l.expires),l.cacheControl&&(n.cacheControl=l.cacheControl),i.vectorTile=l.vectorTile,i.parse(l.vectorTile,o.layerIndex,o.actor,function(e,o,t){if(e||!o)return r(e);r(null,util.extend({rawTileData:c},o,n),t)}),o.loaded[t]=o.loaded[t]||{},o.loaded[t][a]=i})},VectorTileWorkerSource.prototype.reloadTile=function(e,r){function o(e,o){if(this.reloadCallback){var t=this.reloadCallback;delete this.reloadCallback,this.parse(this.vectorTile,i.layerIndex,i.actor,t)}r(e,o)}var t=this.loaded[e.source],a=e.uid,i=this;if(t&&t[a]){var l=t[a];\"parsing\"===l.status?l.reloadCallback=r:\"done\"===l.status&&l.parse(l.vectorTile,this.layerIndex,this.actor,o.bind(l))}},VectorTileWorkerSource.prototype.abortTile=function(e){var r=this.loading[e.source],o=e.uid;r&&r[o]&&r[o].abort&&(r[o].abort(),delete r[o])},VectorTileWorkerSource.prototype.removeTile=function(e){var r=this.loaded[e.source],o=e.uid;r&&r[o]&&delete r[o]},VectorTileWorkerSource.prototype.redoPlacement=function(e,r){var o=this.loaded[e.source],t=this.loading[e.source],a=e.uid;if(o&&o[a]){var i=o[a],l=i.redoPlacement(e.angle,e.pitch,e.cameraToCenterDistance,e.cameraToTileDistance,e.showCollisionBoxes);l.result&&r(null,l.result,l.transferables)}else t&&t[a]&&(t[a].angle=e.angle)},module.exports=VectorTileWorkerSource;\n},{\"../util/ajax\":201,\"../util/util\":223,\"./worker_tile\":106,\"@mapbox/vector-tile\":6,\"pbf\":29}],104:[function(_dereq_,module,exports){\n\"use strict\";var ajax=_dereq_(\"../util/ajax\"),ImageSource=_dereq_(\"./image_source\"),VideoSource=function(e){function t(t,o,i,r){e.call(this,t,o,i,r),this.roundZoom=!0,this.type=\"video\",this.options=o}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.load=function(){var e=this,t=this.options;this.urls=t.urls,ajax.getVideo(t.urls,function(t,o){if(t)e.fire(\"error\",{error:t});else if(o){e.video=o,e.video.loop=!0;var i;e.video.addEventListener(\"playing\",function(){i=e.map.style.animationLoop.set(1/0),e.map._rerender()}),e.video.addEventListener(\"pause\",function(){e.map.style.animationLoop.cancel(i)}),e.map&&e.video.play(),e._finishLoading()}})},t.prototype.getVideo=function(){return this.video},t.prototype.onAdd=function(e){this.map||(this.map=e,this.load(),this.video&&(this.video.play(),this.setCoordinates(this.coordinates)))},t.prototype.prepare=function(){0===Object.keys(this.tiles).length||this.video.readyState<2||this._prepareImage(this.map.painter.gl,this.video)},t.prototype.serialize=function(){return{type:\"video\",urls:this.urls,coordinates:this.coordinates}},t}(ImageSource);module.exports=VideoSource;\n},{\"../util/ajax\":201,\"./image_source\":91}],105:[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),globalRTLTextPlugin.applyArabicShaping&&globalRTLTextPlugin.processBidirectionalText||o(new Error(\"RTL Text Plugin failed to import scripts from \"+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\":164,\"../util/actor\":200,\"./geojson_worker_source\":89,\"./rtl_text_plugin\":96,\"./vector_tile_worker_source\":103}],106:[function(_dereq_,module,exports){\n\"use strict\";function recalculateLayers(e,i){for(var r=0,t=e.layers;r<t.length;r+=1){t[r].recalculate(i)}}function serializeBuckets(e,i){return e.filter(function(e){return!e.isEmpty()}).map(function(e){return e.serialize(i)})}var FeatureIndex=_dereq_(\"../data/feature_index\"),CollisionTile=_dereq_(\"../symbol/collision_tile\"),CollisionBoxArray=_dereq_(\"../symbol/collision_box\"),DictionaryCoder=_dereq_(\"../util/dictionary_coder\"),SymbolBucket=_dereq_(\"../data/bucket/symbol_bucket\"),util=_dereq_(\"../util/util\"),ref=_dereq_(\"../render/image_atlas\"),makeImageAtlas=ref.makeImageAtlas,ref$1=_dereq_(\"../render/glyph_atlas\"),makeGlyphAtlas=ref$1.makeGlyphAtlas,WorkerTile=function(e){this.coord=e.coord,this.uid=e.uid,this.zoom=e.zoom,this.pixelRatio=e.pixelRatio,this.tileSize=e.tileSize,this.source=e.source,this.overscaling=e.overscaling,this.angle=e.angle,this.pitch=e.pitch,this.cameraToCenterDistance=e.cameraToCenterDistance,this.cameraToTileDistance=e.cameraToTileDistance,this.showCollisionBoxes=e.showCollisionBoxes};WorkerTile.prototype.parse=function(e,i,r,t){function a(){var e=this;if(D)return t(D);if(A&&C){for(var i=new CollisionTile(this.angle,this.pitch,this.cameraToCenterDistance,this.cameraToTileDistance,this.collisionBoxArray),r=makeGlyphAtlas(A),a=makeImageAtlas(C),o=0,s=e.symbolBuckets;o<s.length;o+=1){var c=s[o];recalculateLayers(c,e.zoom),c.prepare(A,r.positions,C,a.positions),c.place(i,e.showCollisionBoxes)}this.status=\"done\";var u=[r.image.data.buffer,a.image.data.buffer];t(null,{buckets:serializeBuckets(util.values(n),u),featureIndex:l.serialize(u),collisionTile:i.serialize(u),collisionBoxArray:this.collisionBoxArray.serialize(),glyphAtlasImage:r.image,iconAtlasImage:a.image},u)}}var o=this;this.status=\"parsing\",this.data=e,this.collisionBoxArray=new CollisionBoxArray;var s=new DictionaryCoder(Object.keys(e.layers).sort()),l=new FeatureIndex(this.coord,this.overscaling);l.bucketLayerIDs=[];var n={},c={featureIndex:l,iconDependencies:{},glyphDependencies:{}},u=i.familiesBySource[this.source];for(var h in u){var m=e.layers[h];if(m){1===m.version&&util.warnOnce('Vector tile source \"'+o.source+'\" layer \"'+h+'\" does not use vector tile spec v2 and therefore may have some rendering errors.');for(var y=s.encode(h),p=[],d=0;d<m.length;d++){var f=m.feature(d);p.push({feature:f,index:d,sourceLayerIndex:y})}for(var g=0,v=u[h];g<v.length;g+=1){var k=v[g],b=k[0];if(!(b.minzoom&&o.zoom<Math.floor(b.minzoom))&&!(b.maxzoom&&o.zoom>=b.maxzoom||b.layout&&\"none\"===b.layout.visibility)){for(var x=0,T=k;x<T.length;x+=1){T[x].recalculate(o.zoom)}(n[b.id]=b.createBucket({index:l.bucketLayerIDs.length,layers:k,zoom:o.zoom,pixelRatio:o.pixelRatio,overscaling:o.overscaling,collisionBoxArray:o.collisionBoxArray})).populate(p,c),l.bucketLayerIDs.push(k.map(function(e){return e.id}))}}}}this.symbolBuckets=[];for(var z=i.symbolOrder.length-1;z>=0;z--){var B=n[i.symbolOrder[z]];B&&o.symbolBuckets.push(B)}var D,A,C,I=util.mapObject(c.glyphDependencies,function(e){return Object.keys(e).map(Number)});Object.keys(I).length?r.send(\"getGlyphs\",{uid:this.uid,stacks:I},function(e,i){D||(D=e,A=i,a.call(o))}):A={};var w=Object.keys(c.iconDependencies);w.length?r.send(\"getImages\",{icons:w},function(e,i){D||(D=e,C=i,a.call(o))}):C={},a.call(this)},WorkerTile.prototype.redoPlacement=function(e,i,r,t,a){var o=this;if(this.angle=e,this.pitch=i,this.cameraToCenterDistance=r,this.cameraToTileDistance=t,\"done\"!==this.status)return{};for(var s=new CollisionTile(this.angle,this.pitch,this.cameraToCenterDistance,this.cameraToTileDistance,this.collisionBoxArray),l=0,n=o.symbolBuckets;l<n.length;l+=1){var c=n[l];recalculateLayers(c,o.zoom),c.place(s,a)}var u=[];return{result:{buckets:serializeBuckets(this.symbolBuckets,u),collisionTile:s.serialize(u)},transferables:u}},module.exports=WorkerTile;\n},{\"../data/bucket/symbol_bucket\":47,\"../data/feature_index\":49,\"../render/glyph_atlas\":74,\"../render/image_atlas\":76,\"../symbol/collision_box\":170,\"../symbol/collision_tile\":172,\"../util/dictionary_coder\":207,\"../util/util\":223}],107:[function(_dereq_,module,exports){\n\"use strict\";function deref(r,e){var f={};for(var t in r)\"ref\"!==t&&(f[t]=r[t]);return refProperties.forEach(function(r){r in e&&(f[r]=e[r])}),f}function derefLayers(r){r=r.slice();for(var e=Object.create(null),f=0;f<r.length;f++)e[r[f].id]=r[f];for(var t=0;t<r.length;t++)\"ref\"in r[t]&&(r[t]=deref(r[t],e[r[t].ref]));return r}var refProperties=_dereq_(\"./util/ref_properties\");module.exports=derefLayers;\n},{\"./util/ref_properties\":129}],108:[function(_dereq_,module,exports){\n\"use strict\";function diffSources(e,r,o,a){e=e||{},r=r||{};var s;for(s in e)e.hasOwnProperty(s)&&(r.hasOwnProperty(s)||(o.push({command:operations.removeSource,args:[s]}),a[s]=!0));for(s in r)r.hasOwnProperty(s)&&(e.hasOwnProperty(s)?isEqual(e[s],r[s])||(o.push({command:operations.removeSource,args:[s]}),o.push({command:operations.addSource,args:[s,r[s]]}),a[s]=!0):o.push({command:operations.addSource,args:[s,r[s]]}))}function diffLayerPropertyChanges(e,r,o,a,s,t){e=e||{},r=r||{};var n;for(n in e)e.hasOwnProperty(n)&&(isEqual(e[n],r[n])||o.push({command:t,args:[a,n,r[n],s]}));for(n in r)r.hasOwnProperty(n)&&!e.hasOwnProperty(n)&&(isEqual(e[n],r[n])||o.push({command:t,args:[a,n,r[n],s]}))}function pluckId(e){return e.id}function indexById(e,r){return e[r.id]=r,e}function diffLayers(e,r,o){e=e||[],r=r||[];var a,s,t,n,i,p,m,u=e.map(pluckId),l=r.map(pluckId),y=e.reduce(indexById,{}),c=r.reduce(indexById,{}),d=u.slice(),h=Object.create(null);for(a=0,s=0;a<u.length;a++)t=u[a],c.hasOwnProperty(t)?s++:(o.push({command:operations.removeLayer,args:[t]}),d.splice(d.indexOf(t,s),1));for(a=0,s=0;a<l.length;a++)t=l[l.length-1-a],d[d.length-1-a]!==t&&(y.hasOwnProperty(t)?(o.push({command:operations.removeLayer,args:[t]}),d.splice(d.lastIndexOf(t,d.length-s),1)):s++,p=d[d.length-a],o.push({command:operations.addLayer,args:[c[t],p]}),d.splice(d.length-a,0,t),h[t]=!0);for(a=0;a<l.length;a++)if(t=l[a],n=y[t],i=c[t],!h[t]&&!isEqual(n,i))if(isEqual(n.source,i.source)&&isEqual(n[\"source-layer\"],i[\"source-layer\"])&&isEqual(n.type,i.type)){diffLayerPropertyChanges(n.layout,i.layout,o,t,null,operations.setLayoutProperty),diffLayerPropertyChanges(n.paint,i.paint,o,t,null,operations.setPaintProperty),isEqual(n.filter,i.filter)||o.push({command:operations.setFilter,args:[t,i.filter]}),isEqual(n.minzoom,i.minzoom)&&isEqual(n.maxzoom,i.maxzoom)||o.push({command:operations.setLayerZoomRange,args:[t,i.minzoom,i.maxzoom]});for(m in n)n.hasOwnProperty(m)&&\"layout\"!==m&&\"paint\"!==m&&\"filter\"!==m&&\"metadata\"!==m&&\"minzoom\"!==m&&\"maxzoom\"!==m&&(0===m.indexOf(\"paint.\")?diffLayerPropertyChanges(n[m],i[m],o,t,m.slice(6),operations.setPaintProperty):isEqual(n[m],i[m])||o.push({command:operations.setLayerProperty,args:[t,m,i[m]]}));for(m in i)i.hasOwnProperty(m)&&!n.hasOwnProperty(m)&&\"layout\"!==m&&\"paint\"!==m&&\"filter\"!==m&&\"metadata\"!==m&&\"minzoom\"!==m&&\"maxzoom\"!==m&&(0===m.indexOf(\"paint.\")?diffLayerPropertyChanges(n[m],i[m],o,t,m.slice(6),operations.setPaintProperty):isEqual(n[m],i[m])||o.push({command:operations.setLayerProperty,args:[t,m,i[m]]}))}else o.push({command:operations.removeLayer,args:[t]}),p=d[d.lastIndexOf(t)+1],o.push({command:operations.addLayer,args:[i,p]})}function diffStyles(e,r){if(!e)return[{command:operations.setStyle,args:[r]}];var o=[];try{if(!isEqual(e.version,r.version))return[{command:operations.setStyle,args:[r]}];isEqual(e.center,r.center)||o.push({command:operations.setCenter,args:[r.center]}),isEqual(e.zoom,r.zoom)||o.push({command:operations.setZoom,args:[r.zoom]}),isEqual(e.bearing,r.bearing)||o.push({command:operations.setBearing,args:[r.bearing]}),isEqual(e.pitch,r.pitch)||o.push({command:operations.setPitch,args:[r.pitch]}),isEqual(e.sprite,r.sprite)||o.push({command:operations.setSprite,args:[r.sprite]}),isEqual(e.glyphs,r.glyphs)||o.push({command:operations.setGlyphs,args:[r.glyphs]}),isEqual(e.transition,r.transition)||o.push({command:operations.setTransition,args:[r.transition]}),isEqual(e.light,r.light)||o.push({command:operations.setLight,args:[r.light]});var a={},s=[];diffSources(e.sources,r.sources,s,a);var t=[];e.layers&&e.layers.forEach(function(e){a[e.source]?o.push({command:operations.removeLayer,args:[e.id]}):t.push(e)}),o=o.concat(s),diffLayers(t,r.layers,o)}catch(e){console.warn(\"Unable to compute style diff:\",e),o=[{command:operations.setStyle,args:[r]}]}return o}var isEqual=_dereq_(\"lodash.isequal\"),operations={setStyle:\"setStyle\",addLayer:\"addLayer\",removeLayer:\"removeLayer\",setPaintProperty:\"setPaintProperty\",setLayoutProperty:\"setLayoutProperty\",setFilter:\"setFilter\",addSource:\"addSource\",removeSource:\"removeSource\",setLayerZoomRange:\"setLayerZoomRange\",setLayerProperty:\"setLayerProperty\",setCenter:\"setCenter\",setZoom:\"setZoom\",setBearing:\"setBearing\",setPitch:\"setPitch\",setSprite:\"setSprite\",setGlyphs:\"setGlyphs\",setTransition:\"setTransition\",setLight:\"setLight\"};module.exports=diffStyles,module.exports.operations=operations;\n},{\"lodash.isequal\":120}],109:[function(_dereq_,module,exports){\n\"use strict\";function ValidationError(r,i){for(var t=[],o=arguments.length-2;o-- >0;)t[o]=arguments[o+2];this.message=(r?r+\": \":\"\")+format.apply(format,t),null!==i&&void 0!==i&&i.__line__&&(this.line=i.__line__)}var format=_dereq_(\"util\").format;module.exports=ValidationError;\n},{\"util\":36}],110:[function(_dereq_,module,exports){\n\"use strict\";function createFilter(e){return new Function(\"f\",\"var p = (f && f.properties || {}); return \"+compile(e))}function compile(e){if(!e)return\"true\";var i=e[0];return e.length<=1?\"any\"===i?\"false\":\"true\":\"(\"+(\"==\"===i?compileComparisonOp(e[1],e[2],\"===\",!1):\"!=\"===i?compileComparisonOp(e[1],e[2],\"!==\",!1):\"<\"===i||\">\"===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,o){var r=compilePropertyReference(e),p=\"$type\"===e?types.indexOf(i):JSON.stringify(i);return(o?\"typeof \"+r+\"=== typeof \"+p+\"&&\":\"\")+r+n+p}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)),o=compilePropertyReference(e);return i.length<=200?n+\".indexOf(\"+o+\") !== -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; }(\"+o+\", \"+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 e<i?-1:e>i?1:0}module.exports=createFilter;var types=[\"Unknown\",\"Point\",\"LineString\",\"Polygon\"];\n},{}],111:[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);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}};\n},{}],112:[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<f.length;c+=1){var v=f[c];p[v[0]]=v[1]}l=typeof t.stops[0][0]}else{if(\"identity\"!==s)throw new Error('Unknown function type \"'+s+'\"');u=evaluateIdentityFunction}var d;if(t.colorSpace&&\"rgb\"!==t.colorSpace){if(!colorSpaces[t.colorSpace])throw new Error(\"Unknown color space: \"+t.colorSpace);var y=colorSpaces[t.colorSpace];t=JSON.parse(JSON.stringify(t));for(var F=0;F<t.stops.length;F++)t.stops[F]=[t.stops[F][0],y.forward(t.stops[F][1])];d=y.reverse}else d=identityFunction;if(r){for(var h={},g=[],m=0;m<t.stops.length;m++){var C=t.stops[m],S=C[0].zoom;void 0===h[S]&&(h[S]={zoom:S,type:t.type,property:t.property,default:t.default,stops:[]},g.push(S)),h[S].stops.push([C[0].value,C[1]])}for(var T=[],x=0,b=g;x<b.length;x+=1){var q=b[x];T.push([h[q].zoom,createFunction(h[q],e)])}o=function(o,n){return d(evaluateExponentialFunction({stops:T,base:t.base},e,o)(o,n))},o.isFeatureConstant=!1,o.isZoomConstant=!1}else i?(o=function(o){return d(u(t,e,o,p,l))},o.isFeatureConstant=!0,o.isZoomConstant=!1):(o=function(o,n){var r=n[t.property];return void 0===r?coalesce(t.default,e.default):d(u(t,e,r,p,l))},o.isFeatureConstant=!1,o.isZoomConstant=!0)}else n&&t&&(t=parseColor(t)),o=function(){return t},o.isFeatureConstant=!0,o.isZoomConstant=!0;return o}function coalesce(t,e,o){return void 0!==t?t:void 0!==e?e:void 0!==o?o:void 0}function evaluateCategoricalFunction(t,e,o,n,r){return coalesce(typeof o===r?n[o]:void 0,t.default,e.default)}function evaluateIntervalFunction(t,e,o){if(\"number\"!==getType(o))return coalesce(t.default,e.default);var n=t.stops.length;if(1===n)return t.stops[0][1];if(o<=t.stops[0][0])return t.stops[0][1];if(o>=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(){for(var t=[],e=arguments.length;e--;)t[e]=arguments[e];var o=s.apply(void 0,t),n=u.apply(void 0,t);if(void 0!==o&&void 0!==n)return p(o,n,i)}:p(s,u,i)}function evaluateIdentityFunction(t,e,o){return\"color\"===e.type?o=parseColor(o):getType(o)===e.type||\"enum\"===e.type&&e.values[o]||(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&&e<n)return s;o<e?a=s+1:o>e&&(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 0===r?0: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\":125,\"../util/get_type\":126,\"../util/interpolate\":127,\"../util/parse_color\":128,\"./color_spaces\":111}],113:[function(_dereq_,module,exports){\n\"use strict\";function stringify(r){var t=typeof r;if(\"number\"===t||\"boolean\"===t||\"string\"===t||void 0===r||null===r)return JSON.stringify(r);if(Array.isArray(r)){for(var e=\"[\",i=0,n=r;i<n.length;i+=1){e+=stringify(n[i])+\",\"}return e+\"]\"}for(var o=Object.keys(r).sort(),f=\"{\",u=0;u<o.length;u++)f+=JSON.stringify(o[u])+\":\"+stringify(r[o[u]])+\",\";return f+\"}\"}function getKey(r){for(var t=\"\",e=0,i=refProperties;e<i.length;e+=1){t+=\"/\"+stringify(r[i[e]])}return t}function groupByLayout(r){for(var t={},e=0;e<r.length;e++){var i=getKey(r[e]),n=t[i];n||(n=t[i]=[]),n.push(r[e])}var o=[];for(var f in t)o.push(t[f]);return o}var refProperties=_dereq_(\"./util/ref_properties\");module.exports=groupByLayout;\n},{\"./util/ref_properties\":129}],114:[function(_dereq_,module,exports){\nfunction clamp_css_byte(e){return e=Math.round(e),e<0?0:e>255?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(-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){}\n},{}],115:[function(_dereq_,module,exports){\nfunction isObjectLike(r){return!!r&&\"object\"==typeof r}function arraySome(r,e){for(var a=-1,t=r.length;++a<t;)if(e(r[a],a,r))return!0;return!1}function baseIsEqual(r,e,a,t,o,n){return r===e||(null==r||null==e||!isObject(r)&&!isObjectLike(e)?r!==r&&e!==e:baseIsEqualDeep(r,e,baseIsEqual,a,t,o,n))}function baseIsEqualDeep(r,e,a,t,o,n,u){var c=isArray(r),s=isArray(e),i=arrayTag,g=arrayTag;c||(i=objToString.call(r),i==argsTag?i=objectTag:i!=objectTag&&(c=isTypedArray(r))),s||(g=objToString.call(e),g==argsTag?g=objectTag:g!=objectTag&&(s=isTypedArray(e)));var b=i==objectTag,l=g==objectTag,f=i==g;if(f&&!c&&!b)return equalByTag(r,e,i);if(!o){var y=b&&hasOwnProperty.call(r,\"__wrapped__\"),T=l&&hasOwnProperty.call(e,\"__wrapped__\");if(y||T)return a(y?r.value():r,T?e.value():e,t,o,n,u)}if(!f)return!1;n||(n=[]),u||(u=[]);for(var j=n.length;j--;)if(n[j]==r)return u[j]==e;n.push(r),u.push(e);var p=(c?equalArrays:equalObjects)(r,e,a,t,o,n,u);return n.pop(),u.pop(),p}function equalArrays(r,e,a,t,o,n,u){var c=-1,s=r.length,i=e.length;if(s!=i&&!(o&&i>s))return!1;for(;++c<s;){var g=r[c],b=e[c],l=t?t(o?b:g,o?g:b,c):void 0;if(void 0!==l){if(l)continue;return!1}if(o){if(!arraySome(e,function(r){return g===r||a(g,r,t,o,n,u)}))return!1}else if(g!==b&&!a(g,b,t,o,n,u))return!1}return!0}function equalByTag(r,e,a){switch(a){case boolTag:case dateTag:return+r==+e;case errorTag:return r.name==e.name&&r.message==e.message;case numberTag:return r!=+r?e!=+e:r==+e;case regexpTag:case stringTag:return r==e+\"\"}return!1}function equalObjects(r,e,a,t,o,n,u){var c=keys(r),s=c.length;if(s!=keys(e).length&&!o)return!1;for(var i=s;i--;){var g=c[i];if(!(o?g in e:hasOwnProperty.call(e,g)))return!1}for(var b=o;++i<s;){g=c[i];var l=r[g],f=e[g],y=t?t(o?f:l,o?l:f,g):void 0;if(!(void 0===y?a(l,f,t,o,n,u):y))return!1;b||(b=\"constructor\"==g)}if(!b){var T=r.constructor,j=e.constructor;if(T!=j&&\"constructor\"in r&&\"constructor\"in e&&!(\"function\"==typeof T&&T instanceof T&&\"function\"==typeof j&&j instanceof j))return!1}return!0}function isObject(r){var e=typeof r;return!!r&&(\"object\"==e||\"function\"==e)}var isArray=_dereq_(\"lodash.isarray\"),isTypedArray=_dereq_(\"lodash.istypedarray\"),keys=_dereq_(\"lodash.keys\"),argsTag=\"[object Arguments]\",arrayTag=\"[object Array]\",boolTag=\"[object Boolean]\",dateTag=\"[object Date]\",errorTag=\"[object Error]\",numberTag=\"[object Number]\",objectTag=\"[object Object]\",regexpTag=\"[object RegExp]\",stringTag=\"[object String]\",objectProto=Object.prototype,hasOwnProperty=objectProto.hasOwnProperty,objToString=objectProto.toString;module.exports=baseIsEqual;\n},{\"lodash.isarray\":119,\"lodash.istypedarray\":121,\"lodash.keys\":122}],116:[function(_dereq_,module,exports){\nfunction bindCallback(n,t,r){if(\"function\"!=typeof n)return identity;if(void 0===t)return n;switch(r){case 1:return function(r){return n.call(t,r)};case 3:return function(r,e,u){return n.call(t,r,e,u)};case 4:return function(r,e,u,c){return n.call(t,r,e,u,c)};case 5:return function(r,e,u,c,i){return n.call(t,r,e,u,c,i)}}return function(){return n.apply(t,arguments)}}function identity(n){return n}module.exports=bindCallback;\n},{}],117:[function(_dereq_,module,exports){\nfunction isObjectLike(t){return!!t&&\"object\"==typeof t}function getNative(t,o){var e=null==t?void 0:t[o];return isNative(e)?e:void 0}function isFunction(t){return isObject(t)&&objToString.call(t)==funcTag}function isObject(t){var o=typeof t;return!!t&&(\"object\"==o||\"function\"==o)}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.*?\")+\"$\");module.exports=getNative;\n},{}],118:[function(_dereq_,module,exports){\nfunction isArguments(t){return isArrayLikeObject(t)&&hasOwnProperty.call(t,\"callee\")&&(!propertyIsEnumerable.call(t,\"callee\")||objectToString.call(t)==argsTag)}function isArrayLike(t){return null!=t&&isLength(t.length)&&!isFunction(t)}function isArrayLikeObject(t){return isObjectLike(t)&&isArrayLike(t)}function isFunction(t){var e=isObject(t)?objectToString.call(t):\"\";return e==funcTag||e==genTag}function isLength(t){return\"number\"==typeof t&&t>-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},{}],119:[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},{}],120:[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\":115,\"lodash._bindcallback\":116}],121:[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},{}],122:[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<t}function isLength(e){return\"number\"==typeof e&&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=[];++o<r;){var u=t[o];(s&&isIndex(u,n)||hasOwnProperty.call(e,u))&&i.push(u)}return i}function isObject(e){var t=typeof e;return!!e&&(\"object\"==t||\"function\"==t)}function keysIn(e){if(null==e)return[];isObject(e)||(e=Object(e));var t=e.length;t=t&&isLength(t)&&(isArray(e)||isArguments(e))&&t||0;for(var r=e.constructor,n=-1,s=\"function\"==typeof r&&r.prototype===e,o=Array(t),i=t>0;++n<t;)o[n]=n+\"\";for(var u in e)i&&isIndex(u,t)||\"constructor\"==u&&(s||!hasOwnProperty.call(e,u))||o.push(u);return o}var getNative=_dereq_(\"lodash._getnative\"),isArguments=_dereq_(\"lodash.isarguments\"),isArray=_dereq_(\"lodash.isarray\"),reIsUint=/^\\d+$/,objectProto=Object.prototype,hasOwnProperty=objectProto.hasOwnProperty,nativeKeys=getNative(Object,\"keys\"),MAX_SAFE_INTEGER=9007199254740991,getLength=baseProperty(\"length\"),keys=nativeKeys?function(e){var t=null==e?void 0:e.constructor;return\"function\"==typeof t&&t.prototype===e||\"function\"!=typeof e&&isArrayLike(e)?shimKeys(e):isObject(e)?nativeKeys(e):[]}:shimKeys;module.exports=keys;\n},{\"lodash._getnative\":117,\"lodash.isarguments\":118,\"lodash.isarray\":119}],123:[function(_dereq_,module,exports){\n\"use strict\";module.exports=_dereq_(\"./v8.json\");\n},{\"./v8.json\":124}],124:[function(_dereq_,module,exports){\nmodule.exports={\"$version\":8,\"$root\":{\"version\":{\"required\":true,\"type\":\"enum\",\"values\":[8]},\"name\":{\"type\":\"string\"},\"metadata\":{\"type\":\"*\"},\"center\":{\"type\":\"array\",\"value\":\"number\"},\"zoom\":{\"type\":\"number\"},\"bearing\":{\"type\":\"number\",\"default\":0,\"period\":360,\"units\":\"degrees\"},\"pitch\":{\"type\":\"number\",\"default\":0,\"units\":\"degrees\"},\"light\":{\"type\":\"light\"},\"sources\":{\"required\":true,\"type\":\"sources\"},\"sprite\":{\"type\":\"string\"},\"glyphs\":{\"type\":\"string\"},\"transition\":{\"type\":\"transition\"},\"layers\":{\"required\":true,\"type\":\"array\",\"value\":\"layer\"}},\"sources\":{\"*\":{\"type\":\"source\"}},\"source\":[\"source_tile\",\"source_geojson\",\"source_video\",\"source_image\",\"source_canvas\"],\"source_tile\":{\"type\":{\"required\":true,\"type\":\"enum\",\"values\":{\"vector\":{},\"raster\":{}}},\"url\":{\"type\":\"string\"},\"tiles\":{\"type\":\"array\",\"value\":\"string\"},\"bounds\":{\"type\":\"array\",\"value\":\"number\",\"length\":4,\"default\":[-180,-85.0511,180,85.0511]},\"minzoom\":{\"type\":\"number\",\"default\":0},\"maxzoom\":{\"type\":\"number\",\"default\":22},\"tileSize\":{\"type\":\"number\",\"default\":512,\"units\":\"pixels\"},\"*\":{\"type\":\"*\"}},\"source_geojson\":{\"type\":{\"required\":true,\"type\":\"enum\",\"values\":{\"geojson\":{}}},\"data\":{\"type\":\"*\"},\"maxzoom\":{\"type\":\"number\",\"default\":18},\"buffer\":{\"type\":\"number\",\"default\":128,\"maximum\":512,\"minimum\":0},\"tolerance\":{\"type\":\"number\",\"default\":0.375},\"cluster\":{\"type\":\"boolean\",\"default\":false},\"clusterRadius\":{\"type\":\"number\",\"default\":50,\"minimum\":0},\"clusterMaxZoom\":{\"type\":\"number\"}},\"source_video\":{\"type\":{\"required\":true,\"type\":\"enum\",\"values\":{\"video\":{}}},\"urls\":{\"required\":true,\"type\":\"array\",\"value\":\"string\"},\"coordinates\":{\"required\":true,\"type\":\"array\",\"length\":4,\"value\":{\"type\":\"array\",\"length\":2,\"value\":\"number\"}}},\"source_image\":{\"type\":{\"required\":true,\"type\":\"enum\",\"values\":{\"image\":{}}},\"url\":{\"required\":true,\"type\":\"string\"},\"coordinates\":{\"required\":true,\"type\":\"array\",\"length\":4,\"value\":{\"type\":\"array\",\"length\":2,\"value\":\"number\"}}},\"source_canvas\":{\"type\":{\"required\":true,\"type\":\"enum\",\"values\":{\"canvas\":{}}},\"coordinates\":{\"required\":true,\"type\":\"array\",\"length\":4,\"value\":{\"type\":\"array\",\"length\":2,\"value\":\"number\"}},\"animate\":{\"type\":\"boolean\",\"default\":\"true\"},\"canvas\":{\"type\":\"string\",\"required\":true},\"contextType\":{\"required\":true,\"type\":\"enum\",\"values\":{\"2d\":{},\"webgl\":{},\"experimental-webgl\":{},\"webgl2\":{}}}},\"layer\":{\"id\":{\"type\":\"string\",\"required\":true},\"type\":{\"type\":\"enum\",\"values\":{\"fill\":{},\"line\":{},\"symbol\":{},\"circle\":{},\"fill-extrusion\":{},\"raster\":{},\"background\":{}}},\"metadata\":{\"type\":\"*\"},\"ref\":{\"type\":\"string\"},\"source\":{\"type\":\"string\"},\"source-layer\":{\"type\":\"string\"},\"minzoom\":{\"type\":\"number\",\"minimum\":0,\"maximum\":24},\"maxzoom\":{\"type\":\"number\",\"minimum\":0,\"maximum\":24},\"filter\":{\"type\":\"filter\"},\"layout\":{\"type\":\"layout\"},\"paint\":{\"type\":\"paint\"},\"paint.*\":{\"type\":\"paint\"}},\"layout\":[\"layout_fill\",\"layout_line\",\"layout_circle\",\"layout_fill-extrusion\",\"layout_symbol\",\"layout_raster\",\"layout_background\"],\"layout_background\":{\"visibility\":{\"type\":\"enum\",\"values\":{\"visible\":{},\"none\":{}},\"default\":\"visible\"}},\"layout_fill\":{\"visibility\":{\"type\":\"enum\",\"values\":{\"visible\":{},\"none\":{}},\"default\":\"visible\"}},\"layout_circle\":{\"visibility\":{\"type\":\"enum\",\"values\":{\"visible\":{},\"none\":{}},\"default\":\"visible\"}},\"layout_fill-extrusion\":{\"visibility\":{\"type\":\"enum\",\"values\":{\"visible\":{},\"none\":{}},\"default\":\"visible\"}},\"layout_line\":{\"line-cap\":{\"type\":\"enum\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"values\":{\"butt\":{},\"round\":{},\"square\":{}},\"default\":\"butt\"},\"line-join\":{\"type\":\"enum\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"property-function\":true,\"values\":{\"bevel\":{},\"round\":{},\"miter\":{}},\"default\":\"miter\"},\"line-miter-limit\":{\"type\":\"number\",\"default\":2,\"function\":\"interpolated\",\"zoom-function\":true,\"requires\":[{\"line-join\":\"miter\"}]},\"line-round-limit\":{\"type\":\"number\",\"default\":1.05,\"function\":\"interpolated\",\"zoom-function\":true,\"requires\":[{\"line-join\":\"round\"}]},\"visibility\":{\"type\":\"enum\",\"values\":{\"visible\":{},\"none\":{}},\"default\":\"visible\"}},\"layout_symbol\":{\"symbol-placement\":{\"type\":\"enum\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"values\":{\"point\":{},\"line\":{}},\"default\":\"point\"},\"symbol-spacing\":{\"type\":\"number\",\"default\":250,\"minimum\":1,\"function\":\"interpolated\",\"zoom-function\":true,\"units\":\"pixels\",\"requires\":[{\"symbol-placement\":\"line\"}]},\"symbol-avoid-edges\":{\"type\":\"boolean\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"default\":false},\"icon-allow-overlap\":{\"type\":\"boolean\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"default\":false,\"requires\":[\"icon-image\"]},\"icon-ignore-placement\":{\"type\":\"boolean\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"default\":false,\"requires\":[\"icon-image\"]},\"icon-optional\":{\"type\":\"boolean\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"default\":false,\"requires\":[\"icon-image\",\"text-field\"]},\"icon-rotation-alignment\":{\"type\":\"enum\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"values\":{\"map\":{},\"viewport\":{},\"auto\":{}},\"default\":\"auto\",\"requires\":[\"icon-image\"]},\"icon-size\":{\"type\":\"number\",\"default\":1,\"minimum\":0,\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":true,\"units\":\"factor of the original icon size\",\"requires\":[\"icon-image\"]},\"icon-text-fit\":{\"type\":\"enum\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"values\":{\"none\":{},\"width\":{},\"height\":{},\"both\":{}},\"default\":\"none\",\"requires\":[\"icon-image\",\"text-field\"]},\"icon-text-fit-padding\":{\"type\":\"array\",\"value\":\"number\",\"length\":4,\"default\":[0,0,0,0],\"units\":\"pixels\",\"function\":\"interpolated\",\"zoom-function\":true,\"requires\":[\"icon-image\",\"text-field\",{\"icon-text-fit\":[\"both\",\"width\",\"height\"]}]},\"icon-image\":{\"type\":\"string\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"property-function\":true,\"tokens\":true},\"icon-rotate\":{\"type\":\"number\",\"default\":0,\"period\":360,\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":true,\"units\":\"degrees\",\"requires\":[\"icon-image\"]},\"icon-padding\":{\"type\":\"number\",\"default\":2,\"minimum\":0,\"function\":\"interpolated\",\"zoom-function\":true,\"units\":\"pixels\",\"requires\":[\"icon-image\"]},\"icon-keep-upright\":{\"type\":\"boolean\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"default\":false,\"requires\":[\"icon-image\",{\"icon-rotation-alignment\":\"map\"},{\"symbol-placement\":\"line\"}]},\"icon-offset\":{\"type\":\"array\",\"value\":\"number\",\"length\":2,\"default\":[0,0],\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":true,\"requires\":[\"icon-image\"]},\"icon-anchor\":{\"type\":\"enum\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"property-function\":true,\"values\":{\"center\":{},\"left\":{},\"right\":{},\"top\":{},\"bottom\":{},\"top-left\":{},\"top-right\":{},\"bottom-left\":{},\"bottom-right\":{}},\"default\":\"center\",\"requires\":[\"icon-image\"]},\"icon-pitch-alignment\":{\"type\":\"enum\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"values\":{\"map\":{},\"viewport\":{},\"auto\":{}},\"default\":\"auto\",\"requires\":[\"icon-image\"]},\"text-pitch-alignment\":{\"type\":\"enum\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"values\":{\"map\":{},\"viewport\":{},\"auto\":{}},\"default\":\"auto\",\"requires\":[\"text-field\"]},\"text-rotation-alignment\":{\"type\":\"enum\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"values\":{\"map\":{},\"viewport\":{},\"auto\":{}},\"default\":\"auto\",\"requires\":[\"text-field\"]},\"text-field\":{\"type\":\"string\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"property-function\":true,\"default\":\"\",\"tokens\":true},\"text-font\":{\"type\":\"array\",\"value\":\"string\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"default\":[\"Open Sans Regular\",\"Arial Unicode MS Regular\"],\"requires\":[\"text-field\"]},\"text-size\":{\"type\":\"number\",\"default\":16,\"minimum\":0,\"units\":\"pixels\",\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":true,\"requires\":[\"text-field\"]},\"text-max-width\":{\"type\":\"number\",\"default\":10,\"minimum\":0,\"units\":\"ems\",\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":true,\"requires\":[\"text-field\"]},\"text-line-height\":{\"type\":\"number\",\"default\":1.2,\"units\":\"ems\",\"function\":\"interpolated\",\"zoom-function\":true,\"requires\":[\"text-field\"]},\"text-letter-spacing\":{\"type\":\"number\",\"default\":0,\"units\":\"ems\",\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":true,\"requires\":[\"text-field\"]},\"text-justify\":{\"type\":\"enum\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"property-function\":true,\"values\":{\"left\":{},\"center\":{},\"right\":{}},\"default\":\"center\",\"requires\":[\"text-field\"]},\"text-anchor\":{\"type\":\"enum\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"property-function\":true,\"values\":{\"center\":{},\"left\":{},\"right\":{},\"top\":{},\"bottom\":{},\"top-left\":{},\"top-right\":{},\"bottom-left\":{},\"bottom-right\":{}},\"default\":\"center\",\"requires\":[\"text-field\"]},\"text-max-angle\":{\"type\":\"number\",\"default\":45,\"units\":\"degrees\",\"function\":\"interpolated\",\"zoom-function\":true,\"requires\":[\"text-field\",{\"symbol-placement\":\"line\"}]},\"text-rotate\":{\"type\":\"number\",\"default\":0,\"period\":360,\"units\":\"degrees\",\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":true,\"requires\":[\"text-field\"]},\"text-padding\":{\"type\":\"number\",\"default\":2,\"minimum\":0,\"units\":\"pixels\",\"function\":\"interpolated\",\"zoom-function\":true,\"requires\":[\"text-field\"]},\"text-keep-upright\":{\"type\":\"boolean\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"default\":true,\"requires\":[\"text-field\",{\"text-rotation-alignment\":\"map\"},{\"symbol-placement\":\"line\"}]},\"text-transform\":{\"type\":\"enum\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"property-function\":true,\"values\":{\"none\":{},\"uppercase\":{},\"lowercase\":{}},\"default\":\"none\",\"requires\":[\"text-field\"]},\"text-offset\":{\"type\":\"array\",\"value\":\"number\",\"units\":\"ems\",\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":true,\"length\":2,\"default\":[0,0],\"requires\":[\"text-field\"]},\"text-allow-overlap\":{\"type\":\"boolean\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"default\":false,\"requires\":[\"text-field\"]},\"text-ignore-placement\":{\"type\":\"boolean\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"default\":false,\"requires\":[\"text-field\"]},\"text-optional\":{\"type\":\"boolean\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"default\":false,\"requires\":[\"text-field\",\"icon-image\"]},\"visibility\":{\"type\":\"enum\",\"values\":{\"visible\":{},\"none\":{}},\"default\":\"visible\"}},\"layout_raster\":{\"visibility\":{\"type\":\"enum\",\"values\":{\"visible\":{},\"none\":{}},\"default\":\"visible\"}},\"filter\":{\"type\":\"array\",\"value\":\"*\"},\"filter_operator\":{\"type\":\"enum\",\"values\":{\"==\":{},\"!=\":{},\">\":{},\">=\":{},\"<\":{},\"<=\":{},\"in\":{},\"!in\":{},\"all\":{},\"any\":{},\"none\":{},\"has\":{},\"!has\":{}}},\"geometry_type\":{\"type\":\"enum\",\"values\":{\"Point\":{},\"LineString\":{},\"Polygon\":{}}},\"function\":{\"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,\"zoom-function\":true,\"property-function\":false,\"function\":\"piecewise-constant\"},\"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,\"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,\"property-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-pitch-alignment\":{\"type\":\"enum\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"values\":{\"map\":{},\"viewport\":{}},\"default\":\"viewport\"},\"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},{}],125:[function(_dereq_,module,exports){\n\"use strict\";module.exports=function(r){for(var t=[],e=arguments.length-1;e-- >0;)t[e]=arguments[e+1];for(var n=0,o=t;n<o.length;n+=1){var a=o[n];for(var f in a)r[f]=a[f]}return r};\n},{}],126:[function(_dereq_,module,exports){\n\"use strict\";module.exports=function(n){return n instanceof Number?\"number\":n instanceof String?\"string\":n instanceof Boolean?\"boolean\":Array.isArray(n)?\"array\":null===n?\"null\":typeof n};\n},{}],127:[function(_dereq_,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},{}],128:[function(_dereq_,module,exports){\n\"use strict\";var parseColorString=_dereq_(\"csscolorparser\").parseCSSColor;module.exports=function(r){if(\"string\"==typeof r){var e=parseColorString(r);if(!e)return;return[e[0]/255*e[3],e[1]/255*e[3],e[2]/255*e[3],e[3]]}return Array.isArray(r)?r:void 0};\n},{\"csscolorparser\":114}],129:[function(_dereq_,module,exports){\n\"use strict\";module.exports=[\"type\",\"source\",\"source-layer\",\"minzoom\",\"maxzoom\",\"filter\",\"layout\"];\n},{}],130:[function(_dereq_,module,exports){\n\"use strict\";module.exports=function(n){return n instanceof Number||n instanceof String||n instanceof Boolean?n.valueOf():n};\n},{}],131:[function(_dereq_,module,exports){\n\"use strict\";var ValidationError=_dereq_(\"../error/validation_error\"),getType=_dereq_(\"../util/get_type\"),extend=_dereq_(\"../util/extend\");module.exports=function(e){var r=_dereq_(\"./validate_function\"),t=_dereq_(\"./validate_object\"),i={\"*\":function(){return[]},array:_dereq_(\"./validate_array\"),boolean:_dereq_(\"./validate_boolean\"),number:_dereq_(\"./validate_number\"),color:_dereq_(\"./validate_color\"),constants:_dereq_(\"./validate_constants\"),enum:_dereq_(\"./validate_enum\"),filter:_dereq_(\"./validate_filter\"),function:_dereq_(\"./validate_function\"),layer:_dereq_(\"./validate_layer\"),object:_dereq_(\"./validate_object\"),source:_dereq_(\"./validate_source\"),light:_dereq_(\"./validate_light\"),string:_dereq_(\"./validate_string\")},a=e.value,n=e.valueSpec,u=e.key,o=e.styleSpec,l=e.style;if(\"string\"===getType(a)&&\"@\"===a[0]){if(o.$version>7)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\":109,\"../util/extend\":125,\"../util/get_type\":126,\"./validate_array\":132,\"./validate_boolean\":133,\"./validate_color\":134,\"./validate_constants\":135,\"./validate_enum\":136,\"./validate_filter\":137,\"./validate_function\":138,\"./validate_layer\":140,\"./validate_light\":142,\"./validate_number\":143,\"./validate_object\":144,\"./validate_source\":147,\"./validate_string\":148}],132:[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.length<t[\"min-length\"])return[new ValidationError(l,r,\"array length at least %d expected, length %d found\",t[\"min-length\"],r.length)];var o={type:t.value};n.$version<7&&(o.function=t.function),\"object\"===getType(t.value)&&(o=t.value);for(var u=[],d=0;d<r.length;d++)u=u.concat(i({array:r,arrayIndex:d,value:r[d],valueSpec:o,style:a,styleSpec:n,key:l+\"[\"+d+\"]\"}));return u};\n},{\"../error/validation_error\":109,\"../util/get_type\":126,\"./validate\":131}],133:[function(_dereq_,module,exports){\n\"use strict\";var getType=_dereq_(\"../util/get_type\"),ValidationError=_dereq_(\"../error/validation_error\");module.exports=function(e){var r=e.value,o=e.key,t=getType(r);return\"boolean\"!==t?[new ValidationError(o,r,\"boolean expected, %s found\",t)]:[]};\n},{\"../error/validation_error\":109,\"../util/get_type\":126}],134:[function(_dereq_,module,exports){\n\"use strict\";var ValidationError=_dereq_(\"../error/validation_error\"),getType=_dereq_(\"../util/get_type\"),parseCSSColor=_dereq_(\"csscolorparser\").parseCSSColor;module.exports=function(r){var e=r.key,o=r.value,t=getType(o);return\"string\"!==t?[new ValidationError(e,o,\"color expected, %s found\",t)]:null===parseCSSColor(o)?[new ValidationError(e,o,'color expected, \"%s\" found',o)]:[]};\n},{\"../error/validation_error\":109,\"../util/get_type\":126,\"csscolorparser\":114}],135:[function(_dereq_,module,exports){\n\"use strict\";var ValidationError=_dereq_(\"../error/validation_error\"),getType=_dereq_(\"../util/get_type\");module.exports=function(r){var e=r.key,t=r.value;if(r.styleSpec.$version>7)return t?[new ValidationError(e,t,\"constants have been deprecated as of v8\")]:[];var a=getType(t);if(\"object\"!==a)return[new ValidationError(e,t,\"object expected, %s found\",a)];var o=[];for(var n in t)\"@\"!==n[0]&&o.push(new ValidationError(e+\".\"+n,t[n],'constants must start with \"@\"'));return o};\n},{\"../error/validation_error\":109,\"../util/get_type\":126}],136:[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)?-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};\n},{\"../error/validation_error\":109,\"../util/unbundle_jsonlint\":130}],137:[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&&\"string\"!==(t=getType(a[1]))&&s.push(new ValidationError(n+\"[1]\",a[1],\"string expected, %s found\",t));for(var o=2;o<a.length;o++)t=getType(a[o]),\"$type\"===unbundle(a[1])?s=s.concat(validateEnum({key:n+\"[\"+o+\"]\",value:a[o],valueSpec:l.geometry_type,style:r.style,styleSpec:r.styleSpec})):\"string\"!==t&&\"number\"!==t&&\"boolean\"!==t&&s.push(new ValidationError(n+\"[\"+o+\"]\",a[o],\"string, number, or boolean expected, %s found\",t));break;case\"any\":case\"all\":case\"none\":for(var i=1;i<a.length;i++)s=s.concat(e({key:n+\"[\"+i+\"]\",value:a[i],style:r.style,styleSpec:r.styleSpec}));break;case\"has\":case\"!has\":t=getType(a[1]),2!==a.length?s.push(new ValidationError(n,a,'filter array for \"%s\" operator must have 2 elements',a[0])):\"string\"!==t&&s.push(new ValidationError(n+\"[1]\",a[1],\"string expected, %s found\",t))}return s};\n},{\"../error/validation_error\":109,\"../util/get_type\":126,\"../util/unbundle_jsonlint\":130,\"./validate_enum\":136}],138:[function(_dereq_,module,exports){\n\"use strict\";var ValidationError=_dereq_(\"../error/validation_error\"),getType=_dereq_(\"../util/get_type\"),validate=_dereq_(\"./validate\"),validateObject=_dereq_(\"./validate_object\"),validateArray=_dereq_(\"./validate_array\"),validateNumber=_dereq_(\"./validate_number\"),unbundle=_dereq_(\"../util/unbundle_jsonlint\");module.exports=function(e){function t(e){if(\"identity\"===p)return[new ValidationError(e.key,e.value,'identity function may not have a \"stops\" property')];var t=[],a=e.value;return t=t.concat(validateArray({key:e.key,value:a,valueSpec:e.valueSpec,style:e.style,styleSpec:e.styleSpec,arrayElementValidator:r})),\"array\"===getType(a)&&0===a.length&&t.push(new ValidationError(e.key,a,\"array must have at least one stop\")),t}function r(e){var t=[],r=e.value,o=e.key;if(\"array\"!==getType(r))return[new ValidationError(o,r,\"array expected, %s found\",getType(r))];if(2!==r.length)return[new ValidationError(o,r,\"array length %d expected, length %d found\",2,r.length)];if(c){if(\"object\"!==getType(r[0]))return[new ValidationError(o,r,\"object expected, %s found\",getType(r[0]))];if(void 0===r[0].zoom)return[new ValidationError(o,r,\"object stop key must have zoom\")];if(void 0===r[0].value)return[new ValidationError(o,r,\"object stop key must have value\")];if(l&&l>unbundle(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?\"categorical\"!==p&&\"number\"===t&&void 0!==i&&r<i?[new ValidationError(e.key,e.value,\"stop domain values must appear in ascending order\")]:(i=r,\"categorical\"===p&&r in s?[new ValidationError(e.key,e.value,\"stop domain values must be unique\")]:(s[r]=!0,[])):[new ValidationError(e.key,e.value,\"integer expected, found %s\",r)]}function o(e){return validate({key:e.key,value:e.value,valueSpec:u,style:e.style,styleSpec:e.styleSpec})}var n,i,l,u=e.valueSpec,p=unbundle(e.value.type),s={},y=\"categorical\"!==p&&void 0===e.value.property,d=!y,c=\"array\"===getType(e.value.stops)&&\"array\"===getType(e.value.stops[0])&&\"object\"===getType(e.value.stops[0][0]),v=validateObject({key:e.key,value:e.value,valueSpec:e.styleSpec.function,style:e.style,styleSpec:e.styleSpec,objectElementValidators:{stops:t,default:o}});return\"identity\"===p&&y&&v.push(new ValidationError(e.key,e.value,'missing required property \"property\"')),\"identity\"===p||e.value.stops||v.push(new ValidationError(e.key,e.value,'missing required property \"stops\"')),\"exponential\"===p&&\"piecewise-constant\"===e.valueSpec.function&&v.push(new ValidationError(e.key,e.value,\"exponential functions not supported\")),e.styleSpec.$version>=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\":109,\"../util/get_type\":126,\"../util/unbundle_jsonlint\":130,\"./validate\":131,\"./validate_array\":132,\"./validate_number\":143,\"./validate_object\":144}],139:[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:(-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)};\n},{\"../error/validation_error\":109,\"./validate_string\":148}],140:[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;s<e.arrayIndex;s++){var d=i.layers[s];unbundle(d.id)===o&&r.push(new ValidationError(a,t.id,'duplicate layer id \"%s\", previously used at line %d',t.id,d.id.__line__))}if(\"ref\"in t){[\"type\",\"source\",\"source-layer\",\"filter\",\"layout\"].forEach(function(e){e in t&&r.push(new ValidationError(a,t[e],'\"%s\" is prohibited for ref layers',e))});var y;i.layers.forEach(function(e){unbundle(e.id)===n&&(y=e)}),y?y.ref?r.push(new ValidationError(a,t.ref,\"ref cannot reference another ref layer\")):u=unbundle(y.type):r.push(new ValidationError(a,t.ref,'ref layer \"%s\" not found',n))}else if(\"background\"!==u)if(t.source){var c=i.sources&&i.sources[t.source],p=c&&unbundle(c.type);c?\"vector\"===p&&\"raster\"===u?r.push(new ValidationError(a,t.source,'layer \"%s\" requires a raster source',t.id)):\"raster\"===p&&\"raster\"!==u?r.push(new ValidationError(a,t.source,'layer \"%s\" requires a vector source',t.id)):\"vector\"!==p||t[\"source-layer\"]||r.push(new ValidationError(a,t,'layer \"%s\" must specify a \"source-layer\"',t.id)):r.push(new ValidationError(a,t.source,'source \"%s\" not found',t.source))}else r.push(new ValidationError(a,t,'missing required property \"source\"'));return r=r.concat(validateObject({key:a,value:t,valueSpec:l.layer,style:e.style,styleSpec:e.styleSpec,objectElementValidators:{\"*\":function(){return[]},filter:validateFilter,layout:function(e){return validateObject({layer:t,key:e.key,value:e.value,style:e.style,styleSpec:e.styleSpec,objectElementValidators:{\"*\":function(e){return validateLayoutProperty(extend({layerType:u},e))}}})},paint:function(e){return validateObject({layer:t,key:e.key,value:e.value,style:e.style,styleSpec:e.styleSpec,objectElementValidators:{\"*\":function(e){return validatePaintProperty(extend({layerType:u},e))}}})}}}))};\n},{\"../error/validation_error\":109,\"../util/extend\":125,\"../util/unbundle_jsonlint\":130,\"./validate_filter\":137,\"./validate_layout_property\":141,\"./validate_object\":144,\"./validate_paint_property\":145}],141:[function(_dereq_,module,exports){\n\"use strict\";var validateProperty=_dereq_(\"./validate_property\");module.exports=function(r){return validateProperty(r,\"layout\")};\n},{\"./validate_property\":146}],142:[function(_dereq_,module,exports){\n\"use strict\";var ValidationError=_dereq_(\"../error/validation_error\"),getType=_dereq_(\"../util/get_type\"),validate=_dereq_(\"./validate\");module.exports=function(e){var t=e.value,r=e.styleSpec,a=r.light,i=e.style,n=[],o=getType(t);if(void 0===t)return n;if(\"object\"!==o)return n=n.concat([new ValidationError(\"light\",t,\"object expected, %s found\",o)]);for(var l in t){var c=l.match(/^(.*)-transition$/);n=c&&a[c[1]]&&a[c[1]].transition?n.concat(validate({key:l,value:t[l],valueSpec:r.transition,style:i,styleSpec:r})):a[l]?n.concat(validate({key:l,value:t[l],valueSpec:a[l],style:i,styleSpec:r})):n.concat([new ValidationError(l,t[l],'unknown property \"%s\"',l)])}return n};\n},{\"../error/validation_error\":109,\"../util/get_type\":126,\"./validate\":131}],143:[function(_dereq_,module,exports){\n\"use strict\";var getType=_dereq_(\"../util/get_type\"),ValidationError=_dereq_(\"../error/validation_error\");module.exports=function(e){var r=e.key,i=e.value,m=e.valueSpec,a=getType(i);return\"number\"!==a?[new ValidationError(r,i,\"number expected, %s found\",a)]:\"minimum\"in m&&i<m.minimum?[new ValidationError(r,i,\"%s is less than the minimum value %s\",i,m.minimum)]:\"maximum\"in m&&i>m.maximum?[new ValidationError(r,i,\"%s is greater than the maximum value %s\",i,m.maximum)]:[]};\n},{\"../error/validation_error\":109,\"../util/get_type\":126}],144:[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\":109,\"../util/get_type\":126,\"./validate\":131}],145:[function(_dereq_,module,exports){\n\"use strict\";var validateProperty=_dereq_(\"./validate_property\");module.exports=function(r){return validateProperty(r,\"paint\")};\n},{\"./validate_property\":146}],146:[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\":109,\"../util/get_type\":126,\"./validate\":131}],147:[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\":109,\"../util/unbundle_jsonlint\":130,\"./validate_enum\":136,\"./validate_object\":144}],148:[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\":109,\"../util/get_type\":126}],149:[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\":123,\"./validate/validate\":131,\"./validate/validate_constants\":135,\"./validate/validate_filter\":137,\"./validate/validate_glyphs_url\":139,\"./validate/validate_layer\":140,\"./validate/validate_layout_property\":141,\"./validate/validate_light\":142,\"./validate/validate_paint_property\":145,\"./validate/validate_source\":147}],150:[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},{}],151:[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\",properties=[\"anchor\",\"color\",\"position\",\"intensity\"],specifications=styleSpec.light,Light=function(t){function i(i){t.call(this),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:specifications.anchor.default,color:specifications.color.default,position:specifications.position.default,intensity:specifications.intensity.default},t);for(var e=0,o=properties;e<o.length;e+=1){var n=o[e];i._declarations[n]=new StyleDeclaration(specifications[n],t[n])}return this}},i.prototype.getLight=function(){return{anchor:this.getLightProperty(\"anchor\"),color:this.getLightProperty(\"color\"),position:this.getLightProperty(\"position\"),intensity:this.getLightProperty(\"intensity\")}},i.prototype.getLightProperty=function(t){return util.endsWith(t,TRANSITION_SUFFIX)?this._transitionOptions[t]:this._declarations[t]&&this._declarations[t].value},i.prototype.getLightValue=function(t,i){if(\"position\"===t){var e=this._transitions[t].calculate(i),o=util.sphericalToCartesian(e);return{x:o[0],y:o[1],z:o[2]}}return this._transitions[t].calculate(i)},i.prototype.setLight=function(t){var i=this;if(!this._validate(validateStyle.light,t))for(var e in t){var o=t[e];util.endsWith(e,TRANSITION_SUFFIX)?i._transitionOptions[e]=o:null===o||void 0===o?delete i._declarations[e]:i._declarations[e]=new StyleDeclaration(specifications[e],o)}},i.prototype.recalculate=function(t){var i=this;for(var e in i._declarations)i.calculated[e]=i.getLightValue(e,{zoom:t})},i.prototype._applyLightDeclaration=function(t,i,e,o,n){var r=e.transition?this._transitions[t]:void 0,a=specifications[t];if(null!==i&&void 0!==i||(i=new StyleDeclaration(a,a.default)),!r||r.declaration.json!==i.json){var s=util.extend({duration:300,delay:0},o,this.getLightProperty(t+TRANSITION_SUFFIX)),l=this._transitions[t]=new StyleTransition(a,i,r,s);l.instant()||(l.loopID=n.set(l.endTime-Date.now())),r&&n.cancel(r.loopID)}},i.prototype.updateLightTransitions=function(t,i,e){var o,n=this;for(o in n._declarations)n._applyLightDeclaration(o,n._declarations[o],t,i,e)},i.prototype._validate=function(t,i){return validateStyle.emitErrors(this,t.call(validateStyle,util.extend({value:i,style:{glyphs:!0,sprite:!0},styleSpec:styleSpec})))},i}(Evented);module.exports=Light;\n},{\"../style-spec/reference/latest\":123,\"../util/evented\":210,\"../util/util\":223,\"./style_declaration\":157,\"./style_transition\":165,\"./validate_style\":166}],152:[function(_dereq_,module,exports){\n\"use strict\";var ref=_dereq_(\"../util/mapbox\"),normalizeGlyphsURL=ref.normalizeGlyphsURL,ajax=_dereq_(\"../util/ajax\"),parseGlyphPBF=_dereq_(\"./parse_glyph_pbf\");module.exports=function(e,r,a,l,p){var i=256*r,s=i+255,t=l(normalizeGlyphsURL(a).replace(\"{fontstack}\",e).replace(\"{range}\",i+\"-\"+s),ajax.ResourceType.Glyphs);ajax.getArrayBuffer(t,function(e,r){if(e)p(e);else if(r){for(var a={},l=0,i=parseGlyphPBF(r.data);l<i.length;l+=1){var s=i[l];a[s.id]=s}p(null,a)}})};\n},{\"../util/ajax\":201,\"../util/mapbox\":217,\"./parse_glyph_pbf\":154}],153:[function(_dereq_,module,exports){\n\"use strict\";var ajax=_dereq_(\"../util/ajax\"),browser=_dereq_(\"../util/browser\"),ref=_dereq_(\"../util/mapbox\"),normalizeSpriteURL=ref.normalizeSpriteURL,ref$1=_dereq_(\"../util/image\"),RGBAImage=ref$1.RGBAImage;module.exports=function(e,r,i){function a(){if(u)i(u);else if(t&&o){var e=browser.getImageData(o),r={};for(var a in t){var n=t[a],l=n.width,g=n.height,x=n.x,f=n.y,m=n.sdf,p=n.pixelRatio,s=RGBAImage.create({width:l,height:g});RGBAImage.copy(e,s,{x:x,y:f},{x:0,y:0},{width:l,height:g}),r[a]={data:s,pixelRatio:p,sdf:m}}i(null,r)}}if(!e)return void i(null,{});var t,o,u,n=browser.devicePixelRatio>1?\"@2x\":\"\";ajax.getJSON(r(normalizeSpriteURL(e,n,\".json\"),ajax.ResourceType.SpriteJSON),function(e,r){u||(u=e,t=r,a())}),ajax.getImage(r(normalizeSpriteURL(e,n,\".png\"),ajax.ResourceType.SpriteImage),function(e,r){u||(u=e,o=r,a())})};\n},{\"../util/ajax\":201,\"../util/browser\":202,\"../util/image\":213,\"../util/mapbox\":217}],154:[function(_dereq_,module,exports){\n\"use strict\";function readFontstacks(e,a,r){1===e&&r.readMessage(readFontstack,a)}function readFontstack(e,a,r){if(3===e){var t=r.readMessage(readGlyph,{}),d=t.id,i=t.bitmap,n=t.width,o=t.height,h=t.left,s=t.top,p=t.advance;a.push({id:d,bitmap:AlphaImage.create({width:n+2*border,height:o+2*border},i),metrics:{width:n,height:o,left:h,top:s,advance:p}})}}function readGlyph(e,a,r){1===e?a.id=r.readVarint():2===e?a.bitmap=r.readBytes():3===e?a.width=r.readVarint():4===e?a.height=r.readVarint():5===e?a.left=r.readSVarint():6===e?a.top=r.readSVarint():7===e&&(a.advance=r.readVarint())}var ref=_dereq_(\"../util/image\"),AlphaImage=ref.AlphaImage,Protobuf=_dereq_(\"pbf\"),border=3;module.exports=function(e){return new Protobuf(e).readFields(readFontstacks,[])},module.exports.GLYPH_PBF_BORDER=border;\n},{\"../util/image\":213,\"pbf\":29}],155:[function(_dereq_,module,exports){\n\"use strict\";function getMaximumPaintValue(t,a,e){return a.isPaintValueFeatureConstant(t)?a.paint[t]:e.programConfigurations.get(a.id).paintPropertyStatistics[t].max}function translateDistance(t){return Math.sqrt(t[0]*t[0]+t[1]*t[1])}function translate(t,a,e,n,r){if(!a[0]&&!a[1])return t;var i=Point.convert(a);\"viewport\"===e&&i._rotate(-n);for(var u=[],s=0;s<t.length;s++){for(var o=t[s],l=[],m=0;m<o.length;m++)l.push(o[m].sub(i._mult(r)));u.push(l)}return u}var Point=_dereq_(\"@mapbox/point-geometry\");module.exports={getMaximumPaintValue:getMaximumPaintValue,translateDistance:translateDistance,translate:translate};\n},{\"@mapbox/point-geometry\":2}],156:[function(_dereq_,module,exports){\n\"use strict\";var Evented=_dereq_(\"../util/evented\"),StyleLayer=_dereq_(\"./style_layer\"),loadSprite=_dereq_(\"./load_sprite\"),ImageManager=_dereq_(\"../render/image_manager\"),GlyphManager=_dereq_(\"../render/glyph_manager\"),Light=_dereq_(\"./light\"),LineAtlas=_dereq_(\"../render/line_atlas\"),util=_dereq_(\"../util/util\"),ajax=_dereq_(\"../util/ajax\"),mapbox=_dereq_(\"../util/mapbox\"),browser=_dereq_(\"../util/browser\"),Dispatcher=_dereq_(\"../util/dispatcher\"),AnimationLoop=_dereq_(\"./animation_loop\"),validateStyle=_dereq_(\"./validate_style\"),getSourceType=_dereq_(\"../source/source\").getType,setSourceType=_dereq_(\"../source/source\").setType,QueryFeatures=_dereq_(\"../source/query_features\"),SourceCache=_dereq_(\"../source/source_cache\"),styleSpec=_dereq_(\"../style-spec/reference/latest\"),MapboxGLFunction=_dereq_(\"../style-spec/function\"),getWorkerPool=_dereq_(\"../util/global_worker_pool\"),deref=_dereq_(\"../style-spec/deref\"),diff=_dereq_(\"../style-spec/diff\"),rtlTextPlugin=_dereq_(\"../source/rtl_text_plugin\"),supportedDiffOperations=util.pick(diff.operations,[\"addLayer\",\"removeLayer\",\"setPaintProperty\",\"setLayoutProperty\",\"setFilter\",\"addSource\",\"removeSource\",\"setLayerZoomRange\",\"setLight\",\"setTransition\"]),ignoredDiffOperations=util.pick(diff.operations,[\"setCenter\",\"setZoom\",\"setBearing\",\"setPitch\"]),Style=function(e){function t(t,r,a){var i=this;e.call(this),a=util.extend({validate:\"string\"!=typeof t||!mapbox.isMapboxURL(t)},a);var o=function(e,t){return i.map?i.map._transformRequest(e,t):{url:e}};this.map=r,this.animationLoop=r&&r.animationLoop||new AnimationLoop,this.dispatcher=new Dispatcher(getWorkerPool(),this),this.imageManager=new ImageManager,this.glyphManager=new GlyphManager(o,a.localIdeographFontFamily),this.lineAtlas=new LineAtlas(256,512),this._layers={},this._order=[],this.sourceCaches={},this.zoomHistory={},this._loaded=!1,util.bindAll([\"_redoPlacement\"],this),this._resetUpdates(),this.setEventedParent(r),this.fire(\"dataloading\",{dataType:\"style\"});var s=this;this._rtlTextPluginCallback=rtlTextPlugin.registerForPluginAvailability(function(e){s.dispatcher.broadcast(\"loadRTLTextPlugin\",e.pluginBlobURL,e.errorCallback);for(var t in s.sourceCaches)s.sourceCaches[t].reload()});var n=function(e,t){if(e)i.fire(\"error\",{error:e});else if(t){if(a.validate&&validateStyle.emitErrors(i,validateStyle(t)))return;i._loaded=!0,i.stylesheet=t,i.updateClasses();for(var r in t.sources)i.addSource(r,t.sources[r],a);loadSprite(t.sprite,o,function(e,t){if(e)i.fire(\"error\",e);else if(t)for(var r in t)i.imageManager.addImage(r,t[r]);i.imageManager.setLoaded(!0)}),i.glyphManager.setURL(t.glyphs),i._resolve(),i.fire(\"data\",{dataType:\"style\"}),i.fire(\"style.load\")}};\"string\"==typeof t?ajax.getJSON(o(mapbox.normalizeStyleURL(t),ajax.ResourceType.Style),n):browser.frame(function(){return n(null,t)}),this.on(\"data\",function(e){if(\"source\"===e.dataType&&\"metadata\"===e.sourceDataType){var t=i.sourceCaches[e.sourceId];if(t){var r=t.getSource();if(r&&r.vectorLayerIds)for(var a in i._layers){var o=i._layers[a];o.source===r.id&&i._validateLayer(o)}}}})}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype._validateLayer=function(e){var t=this.sourceCaches[e.source];if(t){var r=e.sourceLayer;if(r){var a=t.getSource();(\"geojson\"===a.type||a.vectorLayerIds&&-1===a.vectorLayerIds.indexOf(r))&&this.fire(\"error\",{error:new Error('Source layer \"'+r+'\" does not exist on source \"'+a.id+'\" as specified by style layer \"'+e.id+'\"')})}}},t.prototype.loaded=function(){var e=this;if(!this._loaded)return!1;if(Object.keys(this._updatedSources).length)return!1;for(var t in e.sourceCaches)if(!e.sourceCaches[t].loaded())return!1;return!!this.imageManager.isLoaded()},t.prototype._resolve=function(){var e=this,t=deref(this.stylesheet.layers);this._order=t.map(function(e){return e.id}),this._layers={};for(var r=0,a=t;r<a.length;r+=1){var i=a[r];i=StyleLayer.create(i),i.setEventedParent(e,{layer:{id:i.id}}),e._layers[i.id]=i}this.dispatcher.broadcast(\"setLayers\",this._serializeLayers(this._order)),this.light=new Light(this.stylesheet.light)},t.prototype._serializeLayers=function(e){var t=this;return e.map(function(e){return t._layers[e].serialize()})},t.prototype._applyClasses=function(e,t){var r=this;if(this._loaded){e=e||[],t=t||{transition:!0};var a=this.stylesheet.transition||{},i=this._updatedAllPaintProps?this._layers:this._updatedPaintProps;for(var o in i){var s=r._layers[o],n=r._updatedPaintProps[o];if(r._updatedAllPaintProps||n.all)s.updatePaintTransitions(e,t,a,r.animationLoop,r.zoomHistory);else for(var l in n)r._layers[o].updatePaintTransition(l,e,t,a,r.animationLoop,r.zoomHistory)}this.light.updateLightTransitions(t,a,this.animationLoop)}},t.prototype._recalculate=function(e){var t=this;if(this._loaded){for(var r in t.sourceCaches)t.sourceCaches[r].used=!1;this._updateZoomHistory(e);for(var a=0,i=t._order;a<i.length;a+=1){var o=i[a],s=t._layers[o];s.recalculate(e),!s.isHidden(e)&&s.source&&(t.sourceCaches[s.source].used=!0)}this.light.recalculate(e);Math.floor(this.z)!==Math.floor(e)&&this.animationLoop.set(300),this.z=e}},t.prototype._updateZoomHistory=function(e){var t=this.zoomHistory;void 0===t.lastIntegerZoom&&(t.lastIntegerZoom=Math.floor(e),t.lastIntegerZoomTime=0,t.lastZoom=e),Math.floor(t.lastZoom)<Math.floor(e)?(t.lastIntegerZoom=Math.floor(e),t.lastIntegerZoomTime=Date.now()):Math.floor(t.lastZoom)>Math.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 a=Object.keys(this._updatedLayers),i=Object.keys(this._removedLayers);(a.length||i.length||this._updatedSymbolOrder)&&this._updateWorkerLayers(a,i);for(var o in r._updatedSources){var s=r._updatedSources[o];\"reload\"===s?r._reloadSource(o):\"clear\"===s&&r._clearSource(o)}this._applyClasses(e,t),this._resetUpdates(),this.fire(\"data\",{dataType:\"style\"})}},t.prototype._updateWorkerLayers=function(e,t){var r=this,a=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:a})},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.clone(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 a=r.filter(function(e){return!(e.command in supportedDiffOperations)});if(a.length>0)throw new Error(\"Unimplemented: \"+a.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.addImage=function(e,t){if(this.imageManager.getImage(e))return this.fire(\"error\",{error:new Error(\"An image with this name already exists.\")});this.imageManager.addImage(e,t),this.fire(\"data\",{dataType:\"style\"})},t.prototype.removeImage=function(e){if(!this.imageManager.getImage(e))return this.fire(\"error\",{error:new Error(\"No image with this name exists.\")});this.imageManager.removeImage(e),this.fire(\"data\",{dataType:\"style\"})},t.prototype.addSource=function(e,t,r){var a=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).join(\", \")+\".\");if(!([\"vector\",\"raster\",\"geojson\",\"video\",\"image\",\"canvas\"].indexOf(t.type)>=0&&this._validate(validateStyle.source,\"sources.\"+e,t,null,r))){var i=this.sourceCaches[e]=new SourceCache(e,t,this.dispatcher);i.style=this,i.setEventedParent(this,function(){return{isSourceLoaded:a.loaded(),source:i.serialize(),sourceId:e}}),i.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.fire(\"data\",{sourceDataType:\"metadata\",dataType:\"source\",sourceId: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 a=e.id;if(\"object\"==typeof e.source&&(this.addSource(a,e.source),e=util.clone(e),e=util.extend(e,{source:a})),!this._validate(validateStyle.layer,\"layers.\"+a,e,{arrayIndex:-1},r)){var i=StyleLayer.create(e);this._validateLayer(i),i.setEventedParent(this,{layer:{id:a}});var o=t?this._order.indexOf(t):this._order.length;if(this._order.splice(o,0,a),this._layers[a]=i,this._removedLayers[a]&&i.source){var s=this._removedLayers[a];delete this._removedLayers[a],s.type!==i.type?this._updatedSources[i.source]=\"clear\":(this._updatedSources[i.source]=\"reload\",this.sourceCaches[i.source].pause())}this._updateLayer(i),\"symbol\"===i.type&&(this._updatedSymbolOrder=!0),this.updateClasses(a)}},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 a=this._order.indexOf(e);this._order.splice(a,1);var i=t?this._order.indexOf(t):this._order.length;this._order.splice(i,0,e),\"symbol\"===r.type&&(this._updatedSymbolOrder=!0,r.source&&!this._updatedSources[r.source]&&(this._updatedSources[r.source]=\"reload\",this.sourceCaches[r.source].pause()))},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 a=this.getLayer(e);if(!a)return void this.fire(\"error\",{error:new Error(\"The layer '\"+e+\"' does not exist in the map's style and cannot have zoom extent.\")});a.minzoom===t&&a.maxzoom===r||(null!=t&&(a.minzoom=t),null!=r&&(a.maxzoom=r),this._updateLayer(a))},t.prototype.setFilter=function(e,t){this._checkLoaded();var r=this.getLayer(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 filtered.\")});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))},t.prototype.getFilter=function(e){return util.clone(this.getLayer(e).filter)},t.prototype.setLayoutProperty=function(e,t,r){this._checkLoaded();var a=this.getLayer(e);if(!a)return void this.fire(\"error\",{error:new Error(\"The layer '\"+e+\"' does not exist in the map's style and cannot be styled.\")});util.deepEqual(a.getLayoutProperty(t),r)||(a.setLayoutProperty(t,r),this._updateLayer(a))},t.prototype.getLayoutProperty=function(e,t){return this.getLayer(e).getLayoutProperty(t)},t.prototype.setPaintProperty=function(e,t,r,a){this._checkLoaded();var i=this.getLayer(e);if(!i)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(i.getPaintProperty(t,a),r)){var o=i.isPaintValueFeatureConstant(t);i.setPaintProperty(t,r,a);!(r&&MapboxGLFunction.isFunctionDefinition(r)&&\"$zoom\"!==r.property&&void 0!==r.property)&&o||this._updateLayer(i),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.sourceCaches[e.source].pause()),this._changed=!0},t.prototype._flattenRenderedFeatures=function(e){for(var t=this,r=[],a=this._order.length-1;a>=0;a--)for(var i=t._order[a],o=0,s=e;o<s.length;o+=1){var n=s[o],l=n[i];if(l)for(var u=0,d=l;u<d.length;u+=1){var h=d[u];r.push(h)}}return r},t.prototype.queryRenderedFeatures=function(e,t,r,a){var i=this;t&&t.filter&&this._validate(validateStyle.filter,\"queryRenderedFeatures.filter\",t.filter);var o={};if(t&&t.layers){if(!Array.isArray(t.layers))return this.fire(\"error\",{error:\"parameters.layers must be an Array.\"}),[];for(var s=0,n=t.layers;s<n.length;s+=1){var l=n[s],u=i._layers[l];if(!u)return i.fire(\"error\",{error:\"The layer '\"+l+\"' does not exist in the map's style and cannot be queried for features.\"}),[];o[u.source]=!0}}var d=[];for(var h in i.sourceCaches)if(!t.layers||o[h]){var c=QueryFeatures.rendered(i.sourceCaches[h],i._layers,e,t,r,a);d.push(c)}return this._flattenRenderedFeatures(d)},t.prototype.querySourceFeatures=function(e,t){t&&t.filter&&this._validate(validateStyle.filter,\"querySourceFeatures.filter\",t.filter);var r=this.sourceCaches[e];return r?QueryFeatures.source(r,t):[]},t.prototype.addSourceType=function(e,t,r){return getSourceType(e)?r(new Error('A source type called \"'+e+'\" already exists.')):(setSourceType(e,t),t.workerSourceURL?void this.dispatcher.broadcast(\"loadWorkerSource\",{name:e,url:t.workerSourceURL},r):r(null,null))},t.prototype.getLight=function(){return this.light.getLight()},t.prototype.setLight=function(e,t){this._checkLoaded();var r=this.light.getLight(),a=!1;for(var i in e)if(!util.deepEqual(e[i],r[i])){a=!0;break}if(a){var o=this.stylesheet.transition||{};this.light.setLight(e),this.light.updateLightTransitions(t||{transition:!0},o,this.animationLoop)}},t.prototype._validate=function(e,t,r,a,i){return(!i||!1!==i.validate)&&validateStyle.emitErrors(this,e.call(validateStyle,util.extend({key:t,style:this.serialize(),value:r,styleSpec:styleSpec},a)))},t.prototype._remove=function(){var e=this;rtlTextPlugin.evented.off(\"pluginAvailable\",this._rtlTextPluginCallback);for(var t in e.sourceCaches)e.sourceCaches[t].clearTiles();this.dispatcher.remove()},t.prototype._clearSource=function(e){this.sourceCaches[e].clearTiles()},t.prototype._reloadSource=function(e){this.sourceCaches[e].resume(),this.sourceCaches[e].reload()},t.prototype._updateSources=function(e){var t=this;for(var r in t.sourceCaches)t.sourceCaches[r].update(e)},t.prototype._redoPlacement=function(){var e=this;for(var t in e.sourceCaches)e.sourceCaches[t].redoPlacement()},t.prototype.getImages=function(e,t,r){this.imageManager.getImages(t.icons,r)},t.prototype.getGlyphs=function(e,t,r){this.glyphManager.getGlyphs(t.stacks,r)},t}(Evented);module.exports=Style;\n},{\"../render/glyph_manager\":75,\"../render/image_manager\":77,\"../render/line_atlas\":78,\"../source/query_features\":94,\"../source/rtl_text_plugin\":96,\"../source/source\":97,\"../source/source_cache\":98,\"../style-spec/deref\":107,\"../style-spec/diff\":108,\"../style-spec/function\":112,\"../style-spec/reference/latest\":123,\"../util/ajax\":201,\"../util/browser\":202,\"../util/dispatcher\":208,\"../util/evented\":210,\"../util/global_worker_pool\":212,\"../util/mapbox\":217,\"../util/util\":223,\"./animation_loop\":150,\"./light\":151,\"./load_sprite\":153,\"./style_layer\":158,\"./validate_style\":166}],157:[function(_dereq_,module,exports){\n\"use strict\";var createFunction=_dereq_(\"../style-spec/function\"),util=_dereq_(\"../util/util\"),StyleDeclaration=function(t,i){var o=this;if(this.value=util.clone(i),this.isFunction=createFunction.isFunctionDefinition(i),this.json=JSON.stringify(this.value),this.minimum=t.minimum,this.function=createFunction(this.value,t),this.isFeatureConstant=this.function.isFeatureConstant,this.isZoomConstant=this.function.isZoomConstant,this.isFeatureConstant||this.isZoomConstant){if(!this.isZoomConstant){this.stopZoomLevels=[];for(var n=0,s=o.value.stops;n<s.length;n+=1){var e=s[n];o.stopZoomLevels.indexOf(e[0])<0&&o.stopZoomLevels.push(e[0])}}}else{this.stopZoomLevels=[];for(var a=[],u=0,l=o.value.stops;u<l.length;u+=1){var r=l[u],c=r[0].zoom;o.stopZoomLevels.indexOf(c)<0&&(o.stopZoomLevels.push(c),a.push([c,a.length]))}this._functionInterpolationT=createFunction({type:\"exponential\",stops:a,base:i.base},{type:\"number\"})}};StyleDeclaration.prototype.calculate=function(t,i){var o=this.function(t&&t.zoom,i||{});return void 0!==this.minimum&&o<this.minimum?this.minimum:o},StyleDeclaration.prototype.calculateInterpolationT=function(t){return this.isFeatureConstant||this.isZoomConstant?0:this._functionInterpolationT(t&&t.zoom,{})},module.exports=StyleDeclaration;\n},{\"../style-spec/function\":112,\"../util/util\":223}],158:[function(_dereq_,module,exports){\n\"use strict\";function getDeclarationValue(t){return t.value}var util=_dereq_(\"../util/util\"),StyleTransition=_dereq_(\"./style_transition\"),StyleDeclaration=_dereq_(\"./style_declaration\"),styleSpec=_dereq_(\"../style-spec/reference/latest\"),validateStyle=_dereq_(\"./validate_style\"),parseColor=_dereq_(\"./../style-spec/util/parse_color\"),Evented=_dereq_(\"../util/evented\"),TRANSITION_SUFFIX=\"-transition\",StyleLayer=function(t){function i(i){var e=this;t.call(this),this.id=i.id,this.metadata=i.metadata,this.type=i.type,this.minzoom=i.minzoom,this.maxzoom=i.maxzoom,\"background\"!==i.type&&(this.source=i.source,this.sourceLayer=i[\"source-layer\"],this.filter=i.filter),this.paint={},this.layout={},this._paintSpecifications=styleSpec[\"paint_\"+this.type],this._layoutSpecifications=styleSpec[\"layout_\"+this.type],this._paintTransitions={},this._paintTransitionOptions={},this._paintDeclarations={},this._layoutDeclarations={},this._layoutFunctions={};var a,o,n={validate:!1};for(var r in i){var s=r.match(/^paint(?:\\.(.*))?$/);if(s){var l=s[1]||\"\";for(a in i[r])e.setPaintProperty(a,i[r][a],l,n)}}for(o in i.layout)e.setLayoutProperty(o,i.layout[o],n);for(a in e._paintSpecifications)e.paint[a]=e.getPaintValue(a);for(o in e._layoutSpecifications)e._updateLayoutValue(o)}return t&&(i.__proto__=t),i.prototype=Object.create(t&&t.prototype),i.prototype.constructor=i,i.prototype.setLayoutProperty=function(t,i,e){if(null==i)delete this._layoutDeclarations[t];else{var a=\"layers.\"+this.id+\".layout.\"+t;if(this._validate(validateStyle.layoutProperty,a,t,i,e))return;this._layoutDeclarations[t]=new StyleDeclaration(this._layoutSpecifications[t],i)}this._updateLayoutValue(t)},i.prototype.getLayoutProperty=function(t){return this._layoutDeclarations[t]&&this._layoutDeclarations[t].value},i.prototype.getLayoutValue=function(t,i,e){var a=this._layoutSpecifications[t],o=this._layoutDeclarations[t];return o?o.calculate(i,e):a.default},i.prototype.setPaintProperty=function(t,i,e,a){var o=\"layers.\"+this.id+(e?'[\"paint.'+e+'\"].':\".paint.\")+t;if(util.endsWith(t,TRANSITION_SUFFIX))if(this._paintTransitionOptions[e||\"\"]||(this._paintTransitionOptions[e||\"\"]={}),null===i||void 0===i)delete this._paintTransitionOptions[e||\"\"][t];else{if(this._validate(validateStyle.paintProperty,o,t,i,a))return;this._paintTransitionOptions[e||\"\"][t]=i}else if(this._paintDeclarations[e||\"\"]||(this._paintDeclarations[e||\"\"]={}),null===i||void 0===i)delete this._paintDeclarations[e||\"\"][t];else{if(this._validate(validateStyle.paintProperty,o,t,i,a))return;this._paintDeclarations[e||\"\"][t]=new StyleDeclaration(this._paintSpecifications[t],i)}},i.prototype.getPaintProperty=function(t,i){return i=i||\"\",util.endsWith(t,TRANSITION_SUFFIX)?this._paintTransitionOptions[i]&&this._paintTransitionOptions[i][t]:this._paintDeclarations[i]&&this._paintDeclarations[i][t]&&this._paintDeclarations[i][t].value},i.prototype.getPaintValue=function(t,i,e){var a=this._paintSpecifications[t],o=this._paintTransitions[t];return o?o.calculate(i,e):\"color\"===a.type&&a.default?parseColor(a.default):a.default},i.prototype.getPaintValueStopZoomLevels=function(t){var i=this._paintTransitions[t];return i?i.declaration.stopZoomLevels:[]},i.prototype.getLayoutValueStopZoomLevels=function(t){var i=this._layoutDeclarations[t];return i?i.stopZoomLevels:[]},i.prototype.getPaintInterpolationT=function(t,i){return this._paintTransitions[t].declaration.calculateInterpolationT(i)},i.prototype.getLayoutInterpolationT=function(t,i){return this._layoutDeclarations[t].calculateInterpolationT(i)},i.prototype.isPaintValueFeatureConstant=function(t){var i=this._paintTransitions[t];return!i||i.declaration.isFeatureConstant},i.prototype.isLayoutValueFeatureConstant=function(t){var i=this._layoutDeclarations[t];return!i||i.isFeatureConstant},i.prototype.isPaintValueZoomConstant=function(t){var i=this._paintTransitions[t];return!i||i.declaration.isZoomConstant},i.prototype.isLayoutValueZoomConstant=function(t){var i=this._layoutDeclarations[t];return!i||i.isZoomConstant},i.prototype.isHidden=function(t){return!!(this.minzoom&&t<this.minzoom)||(!!(this.maxzoom&&t>=this.maxzoom)||\"none\"===this.layout.visibility)},i.prototype.updatePaintTransitions=function(t,i,e,a,o){for(var n=this,r=util.extend({},this._paintDeclarations[\"\"]),s=0;s<t.length;s++)util.extend(r,n._paintDeclarations[t[s]]);var l;for(l in r)n._applyPaintDeclaration(l,r[l],i,e,a,o);for(l in n._paintTransitions)l in r||n._applyPaintDeclaration(l,null,i,e,a,o)},i.prototype.updatePaintTransition=function(t,i,e,a,o,n){for(var r=this,s=this._paintDeclarations[\"\"][t],l=0;l<i.length;l++){var u=r._paintDeclarations[i[l]];u&&u[t]&&(s=u[t])}this._applyPaintDeclaration(t,s,e,a,o,n)},i.prototype.recalculate=function(t){var i=this;for(var e in i._paintTransitions)i.paint[e]=i.getPaintValue(e,{zoom:t});for(var a in i._layoutFunctions)i.layout[a]=i.getLayoutValue(a,{zoom:t})},i.prototype.serialize=function(){var t=this,i={id:this.id,type:this.type,source:this.source,\"source-layer\":this.sourceLayer,metadata:this.metadata,minzoom:this.minzoom,maxzoom:this.maxzoom,filter:this.filter,layout:util.mapObject(this._layoutDeclarations,getDeclarationValue)};for(var e in t._paintDeclarations){i[\"\"===e?\"paint\":\"paint.\"+e]=util.mapObject(t._paintDeclarations[e],getDeclarationValue)}return util.filterObject(i,function(t,i){return void 0!==t&&!(\"layout\"===i&&!Object.keys(t).length)})},i.prototype._applyPaintDeclaration=function(t,i,e,a,o,n){var r=e.transition?this._paintTransitions[t]:void 0,s=this._paintSpecifications[t];if(null!==i&&void 0!==i||(i=new StyleDeclaration(s,s.default)),!r||r.declaration.json!==i.json){var l=util.extend({duration:300,delay:0},a,this.getPaintProperty(t+TRANSITION_SUFFIX)),u=this._paintTransitions[t]=new StyleTransition(s,i,r,l,n);u.instant()||(u.loopID=o.set(u.endTime-Date.now())),r&&o.cancel(r.loopID)}},i.prototype._updateLayoutValue=function(t){var i=this._layoutDeclarations[t];i&&i.isFunction?this._layoutFunctions[t]=!0:(delete this._layoutFunctions[t],this.layout[t]=this.getLayoutValue(t))},i.prototype._validate=function(t,i,e,a,o){return(!o||!1!==o.validate)&&validateStyle.emitErrors(this,t.call(validateStyle,{key:i,layerType:this.type,objectKey:e,value:a,styleSpec:styleSpec,style:{glyphs:!0,sprite:!0}}))},i.prototype.has3DPass=function(){return!1},i}(Evented);module.exports=StyleLayer;var subclasses={circle:_dereq_(\"./style_layer/circle_style_layer\"),fill:_dereq_(\"./style_layer/fill_style_layer\"),\"fill-extrusion\":_dereq_(\"./style_layer/fill_extrusion_style_layer\"),line:_dereq_(\"./style_layer/line_style_layer\"),symbol:_dereq_(\"./style_layer/symbol_style_layer\"),background:StyleLayer,raster:StyleLayer};StyleLayer.create=function(t){return new subclasses[t.type](t)};\n},{\"../style-spec/reference/latest\":123,\"../util/evented\":210,\"../util/util\":223,\"./../style-spec/util/parse_color\":128,\"./style_declaration\":157,\"./style_layer/circle_style_layer\":159,\"./style_layer/fill_extrusion_style_layer\":160,\"./style_layer/fill_style_layer\":161,\"./style_layer/line_style_layer\":162,\"./style_layer/symbol_style_layer\":163,\"./style_transition\":165,\"./validate_style\":166}],159:[function(_dereq_,module,exports){\n\"use strict\";var StyleLayer=_dereq_(\"../style_layer\"),CircleBucket=_dereq_(\"../../data/bucket/circle_bucket\"),ref=_dereq_(\"../../util/intersection_tests\"),multiPolygonIntersectsBufferedMultiPoint=ref.multiPolygonIntersectsBufferedMultiPoint,ref$1=_dereq_(\"../query_utils\"),getMaximumPaintValue=ref$1.getMaximumPaintValue,translateDistance=ref$1.translateDistance,translate=ref$1.translate,CircleStyleLayer=function(e){function t(){e.apply(this,arguments)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.createBucket=function(e){return new CircleBucket(e)},t.prototype.queryRadius=function(e){return getMaximumPaintValue(\"circle-radius\",this,e)+translateDistance(this.paint[\"circle-translate\"])},t.prototype.queryIntersectsFeature=function(e,t,r,i,a,n){var u=translate(e,this.getPaintValue(\"circle-translate\",{zoom:i},t.properties),this.getPaintValue(\"circle-translate-anchor\",{zoom:i},t.properties),a,n),l=this.getPaintValue(\"circle-radius\",{zoom:i},t.properties)*n;return multiPolygonIntersectsBufferedMultiPoint(u,r,l)},t}(StyleLayer);module.exports=CircleStyleLayer;\n},{\"../../data/bucket/circle_bucket\":43,\"../../util/intersection_tests\":214,\"../query_utils\":155,\"../style_layer\":158}],160:[function(_dereq_,module,exports){\n\"use strict\";var StyleLayer=_dereq_(\"../style_layer\"),FillExtrusionBucket=_dereq_(\"../../data/bucket/fill_extrusion_bucket\"),ref=_dereq_(\"../../util/intersection_tests\"),multiPolygonIntersectsMultiPolygon=ref.multiPolygonIntersectsMultiPolygon,ref$1=_dereq_(\"../query_utils\"),translateDistance=ref$1.translateDistance,translate=ref$1.translate,FillExtrusionStyleLayer=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.prototype.getPaintValue=function(e,r,i){var o=t.prototype.getPaintValue.call(this,e,r,i);return\"fill-extrusion-color\"===e&&o&&(o[3]=1),o},e.prototype.createBucket=function(t){return new FillExtrusionBucket(t)},e.prototype.queryRadius=function(){return translateDistance(this.paint[\"fill-extrusion-translate\"])},e.prototype.queryIntersectsFeature=function(t,e,r,i,o,n){var l=translate(t,this.getPaintValue(\"fill-extrusion-translate\",{zoom:i},e.properties),this.getPaintValue(\"fill-extrusion-translate-anchor\",{zoom:i},e.properties),o,n);return multiPolygonIntersectsMultiPolygon(l,r)},e.prototype.has3DPass=function(){return 0!==this.paint[\"fill-extrusion-opacity\"]&&\"none\"!==this.layout.visibility},e}(StyleLayer);module.exports=FillExtrusionStyleLayer;\n},{\"../../data/bucket/fill_extrusion_bucket\":45,\"../../util/intersection_tests\":214,\"../query_utils\":155,\"../style_layer\":158}],161:[function(_dereq_,module,exports){\n\"use strict\";var StyleLayer=_dereq_(\"../style_layer\"),FillBucket=_dereq_(\"../../data/bucket/fill_bucket\"),ref=_dereq_(\"../../util/intersection_tests\"),multiPolygonIntersectsMultiPolygon=ref.multiPolygonIntersectsMultiPolygon,ref$1=_dereq_(\"../query_utils\"),translateDistance=ref$1.translateDistance,translate=ref$1.translate,FillStyleLayer=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.prototype.getPaintValue=function(e,o,l){var i=this;if(\"fill-outline-color\"===e){if(void 0===this.getPaintProperty(\"fill-outline-color\"))return t.prototype.getPaintValue.call(this,\"fill-color\",o,l);for(var r=this._paintTransitions[\"fill-outline-color\"];r;){if(!(r&&r.declaration&&r.declaration.value))return t.prototype.getPaintValue.call(i,\"fill-color\",o,l);r=r.oldTransition}}return t.prototype.getPaintValue.call(this,e,o,l)},e.prototype.getPaintValueStopZoomLevels=function(e){return\"fill-outline-color\"===e&&void 0===this.getPaintProperty(\"fill-outline-color\")?t.prototype.getPaintValueStopZoomLevels.call(this,\"fill-color\"):t.prototype.getPaintValueStopZoomLevels.call(this,e)},e.prototype.getPaintInterpolationT=function(e,o){return\"fill-outline-color\"===e&&void 0===this.getPaintProperty(\"fill-outline-color\")?t.prototype.getPaintInterpolationT.call(this,\"fill-color\",o):t.prototype.getPaintInterpolationT.call(this,e,o)},e.prototype.isPaintValueFeatureConstant=function(e){return\"fill-outline-color\"===e&&void 0===this.getPaintProperty(\"fill-outline-color\")?t.prototype.isPaintValueFeatureConstant.call(this,\"fill-color\"):t.prototype.isPaintValueFeatureConstant.call(this,e)},e.prototype.isPaintValueZoomConstant=function(e){return\"fill-outline-color\"===e&&void 0===this.getPaintProperty(\"fill-outline-color\")?t.prototype.isPaintValueZoomConstant.call(this,\"fill-color\"):t.prototype.isPaintValueZoomConstant.call(this,e)},e.prototype.createBucket=function(t){return new FillBucket(t)},e.prototype.queryRadius=function(){return translateDistance(this.paint[\"fill-translate\"])},e.prototype.queryIntersectsFeature=function(t,e,o,l,i,r){var n=translate(t,this.getPaintValue(\"fill-translate\",{zoom:l},e.properties),this.getPaintValue(\"fill-translate-anchor\",{zoom:l},e.properties),i,r);return multiPolygonIntersectsMultiPolygon(n,o)},e}(StyleLayer);module.exports=FillStyleLayer;\n},{\"../../data/bucket/fill_bucket\":44,\"../../util/intersection_tests\":214,\"../query_utils\":155,\"../style_layer\":158}],162:[function(_dereq_,module,exports){\n\"use strict\";function getLineWidth(e,t){return t>0?t+2*e:e}function offsetLine(e,t){for(var i=[],r=new Point(0,0),n=0;n<e.length;n++){for(var a=e[n],u=[],o=0;o<a.length;o++){var s=a[o-1],l=a[o],p=a[o+1],f=0===o?r:l.sub(s)._unit()._perp(),c=o===a.length-1?r:p.sub(l)._unit()._perp(),y=f._add(c)._unit(),h=y.x*c.x+y.y*c.y;y._mult(1/h),u.push(y._mult(t)._add(l))}i.push(u)}return i}var Point=_dereq_(\"@mapbox/point-geometry\"),StyleLayer=_dereq_(\"../style_layer\"),LineBucket=_dereq_(\"../../data/bucket/line_bucket\"),ref=_dereq_(\"../../util/intersection_tests\"),multiPolygonIntersectsBufferedMultiLine=ref.multiPolygonIntersectsBufferedMultiLine,ref$1=_dereq_(\"../query_utils\"),getMaximumPaintValue=ref$1.getMaximumPaintValue,translateDistance=ref$1.translateDistance,translate=ref$1.translate,LineStyleLayer=function(e){function t(){e.apply(this,arguments)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.createBucket=function(e){return new LineBucket(e)},t.prototype.queryRadius=function(e){var t=e,i=getLineWidth(getMaximumPaintValue(\"line-width\",this,t),getMaximumPaintValue(\"line-gap-width\",this,t)),r=getMaximumPaintValue(\"line-offset\",this,t);return i/2+Math.abs(r)+translateDistance(this.paint[\"line-translate\"])},t.prototype.queryIntersectsFeature=function(e,t,i,r,n,a){var u=translate(e,this.getPaintValue(\"line-translate\",{zoom:r},t.properties),this.getPaintValue(\"line-translate-anchor\",{zoom:r},t.properties),n,a),o=a/2*getLineWidth(this.getPaintValue(\"line-width\",{zoom:r},t.properties),this.getPaintValue(\"line-gap-width\",{zoom:r},t.properties)),s=this.getPaintValue(\"line-offset\",{zoom:r},t.properties);return s&&(i=offsetLine(i,s*a)),multiPolygonIntersectsBufferedMultiLine(u,i,o)},t}(StyleLayer);module.exports=LineStyleLayer;\n},{\"../../data/bucket/line_bucket\":46,\"../../util/intersection_tests\":214,\"../query_utils\":155,\"../style_layer\":158,\"@mapbox/point-geometry\":2}],163:[function(_dereq_,module,exports){\n\"use strict\";var StyleLayer=_dereq_(\"../style_layer\"),SymbolBucket=_dereq_(\"../../data/bucket/symbol_bucket\"),SymbolStyleLayer=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.prototype.getLayoutValue=function(e,r,o){var n=t.prototype.getLayoutValue.call(this,e,r,o);if(\"auto\"!==n)return n;switch(e){case\"text-rotation-alignment\":case\"icon-rotation-alignment\":return\"line\"===this.getLayoutValue(\"symbol-placement\",r,o)?\"map\":\"viewport\";case\"text-pitch-alignment\":return this.getLayoutValue(\"text-rotation-alignment\",r,o);case\"icon-pitch-alignment\":return this.getLayoutValue(\"icon-rotation-alignment\",r,o);default:return n}},e.prototype.createBucket=function(t){return new SymbolBucket(t)},e.prototype.queryRadius=function(){return 0},e.prototype.queryIntersectsFeature=function(){return!1},e}(StyleLayer);module.exports=SymbolStyleLayer;\n},{\"../../data/bucket/symbol_bucket\":47,\"../style_layer\":158}],164:[function(_dereq_,module,exports){\n\"use strict\";var StyleLayer=_dereq_(\"./style_layer\"),util=_dereq_(\"../util/util\"),featureFilter=_dereq_(\"../style-spec/feature_filter\"),groupByLayout=_dereq_(\"../style-spec/group_by_layout\"),StyleLayerIndex=function(e){e&&this.replace(e)};StyleLayerIndex.prototype.replace=function(e){var r=this;this.symbolOrder=[];for(var t=0,i=e;t<i.length;t+=1){var a=i[t];\"symbol\"===a.type&&r.symbolOrder.push(a.id)}this._layerConfigs={},this._layers={},this.update(e,[])},StyleLayerIndex.prototype.update=function(e,r,t){for(var i=this,a=0,l=e;a<l.length;a+=1){var y=l[a];i._layerConfigs[y.id]=y;var s=i._layers[y.id]=StyleLayer.create(y);s.updatePaintTransitions({},{transition:!1}),s.filter=featureFilter(s.filter)}for(var o=0,u=r;o<u.length;o+=1){var n=u[o];delete i._layerConfigs[n],delete i._layers[n]}t&&(this.symbolOrder=t),this.familiesBySource={};for(var f=groupByLayout(util.values(this._layerConfigs)),p=0,d=f;p<d.length;p+=1){var h=d[p],c=h.map(function(e){return i._layers[e.id]}),v=c[0];if(!v.layout||\"none\"!==v.layout.visibility){var _=v.source||\"\",g=i.familiesBySource[_];g||(g=i.familiesBySource[_]={});var L=v.sourceLayer||\"_geojsonTileLayer\",m=g[L];m||(m=g[L]=[]),m.push(c)}}},module.exports=StyleLayerIndex;\n},{\"../style-spec/feature_filter\":110,\"../style-spec/group_by_layout\":113,\"../util/util\":223,\"./style_layer\":158}],165:[function(_dereq_,module,exports){\n\"use strict\";function interpZoomTransitioned(t,i,e){if(void 0!==t&&void 0!==i)return{from:t.to,fromScale:t.toScale,to:i.to,toScale:i.toScale,t:e}}var util=_dereq_(\"../util/util\"),interpolate=_dereq_(\"../style-spec/util/interpolate\"),fakeZoomHistory={lastIntegerZoom:0,lastIntegerZoomTime:0,lastZoom:0},StyleTransition=function(t,i,e,o,a){this.declaration=i,this.startTime=this.endTime=(new Date).getTime(),this.oldTransition=e,this.duration=o.duration||0,this.delay=o.delay||0,this.zoomTransitioned=\"piecewise-constant\"===t.function&&t.transition,this.interp=this.zoomTransitioned?interpZoomTransitioned:interpolate[t.type],this.zoomHistory=a||fakeZoomHistory,this.instant()||(this.endTime=this.startTime+this.duration+this.delay),e&&e.endTime<=this.startTime&&delete e.oldTransition};StyleTransition.prototype.instant=function(){return!this.oldTransition||!this.interp||0===this.duration&&0===this.delay},StyleTransition.prototype.calculate=function(t,i,e){var o=this._calculateTargetValue(t,i);if(this.instant())return o;if((e=e||Date.now())>=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\":127,\"../util/util\":223}],166:[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,o=e;t<o.length;t+=1){var s=o[t],i=s.message;r.fire(\"error\",{error:new Error(i)})}return!0}return!1};\n},{\"../style-spec/validate_style.min\":149}],167:[function(_dereq_,module,exports){\n\"use strict\";var Point=_dereq_(\"@mapbox/point-geometry\"),Anchor=function(t){function o(o,e,n,r){t.call(this,o,e),this.angle=n,void 0!==r&&(this.segment=r)}return t&&(o.__proto__=t),o.prototype=Object.create(t&&t.prototype),o.prototype.constructor=o,o.prototype.clone=function(){return new o(this.x,this.y,this.angle,this.segment)},o}(Point);module.exports=Anchor;\n},{\"@mapbox/point-geometry\":2}],168:[function(_dereq_,module,exports){\n\"use strict\";function checkMaxAngle(e,t,a,r,n){if(void 0===t.segment)return!0;for(var i=t,s=t.segment+1,f=0;f>-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<a/2;){var u=e[s-1],c=e[s],g=e[s+1];if(!g)return!1;var h=u.angleTo(c)-c.angleTo(g);for(h=Math.abs((h+3*Math.PI)%(2*Math.PI)-Math.PI),l.push({distance:f,angleDelta:h}),o+=h;f-l[0].distance>r;)o-=l.shift().angleDelta;if(o>n)return!1;s++,f+=c.dist(g)}return!0}module.exports=checkMaxAngle;\n},{}],169:[function(_dereq_,module,exports){\n\"use strict\";function clipLine(n,x,y,o,e){for(var r=[],t=0;t<n.length;t++)for(var i=n[t],u=void 0,d=0;d<i.length-1;d++){var P=i[d],w=i[d+1];P.x<x&&w.x<x||(P.x<x?P=new Point(x,P.y+(w.y-P.y)*((x-P.x)/(w.x-P.x)))._round():w.x<x&&(w=new Point(x,P.y+(w.y-P.y)*((x-P.x)/(w.x-P.x)))._round()),P.y<y&&w.y<y||(P.y<y?P=new Point(P.x+(w.x-P.x)*((y-P.y)/(w.y-P.y)),y)._round():w.y<y&&(w=new Point(P.x+(w.x-P.x)*((y-P.y)/(w.y-P.y)),y)._round()),P.x>=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_(\"@mapbox/point-geometry\");module.exports=clipLine;\n},{\"@mapbox/point-geometry\":2}],170:[function(_dereq_,module,exports){\n\"use strict\";var createStructArrayType=_dereq_(\"../util/struct_array\"),Point=_dereq_(\"@mapbox/point-geometry\"),CollisionBoxArray=createStructArrayType({members:[{type:\"Int16\",name:\"anchorPointX\"},{type:\"Int16\",name:\"anchorPointY\"},{type:\"Int16\",name:\"offsetX\"},{type:\"Int16\",name:\"offsetY\"},{type:\"Int16\",name:\"x1\"},{type:\"Int16\",name:\"y1\"},{type:\"Int16\",name:\"x2\"},{type:\"Int16\",name:\"y2\"},{type:\"Float32\",name:\"unadjustedMaxScale\"},{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\":220,\"@mapbox/point-geometry\":2}],171:[function(_dereq_,module,exports){\n\"use strict\";var CollisionFeature=function(t,e,i,o,a,n,s,l,r,d,u){var h=s.top*l-r,f=s.bottom*l+r,x=s.left*l-r,m=s.right*l+r;if(this.boxStartIndex=t.length,d){var _=f-h,b=m-x;if(_>0)if(_=Math.max(10*l,_),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,a,n)}else this._addLineCollisionBoxes(t,e,i,i.segment,b,_,o,a,n)}else t.emplaceBack(i.x,i.y,0,0,x,h,m,f,1/0,1/0,o,a,n,0,0,0,0,0);this.boxEndIndex=t.length};CollisionFeature.prototype._addLineCollisionBoxes=function(t,e,i,o,a,n,s,l,r){var d=n/2,u=Math.floor(a/d),h=Math.floor(u/2),f=-n/2,x=i,m=o+1,_=f,b=-a/2,v=b-a/8;do{if(--m<0){if(_>b)return;m=0;break}_-=e[m].dist(x),x=e[m]}while(_>v);for(var c=e[m].dist(e[m+1]),g=-h;g<u+h;g++){var p=g*d,C=b+p;if(p<0&&(C+=p),p>a&&(C+=p-a),!(C<_)){for(;_+c<C;){if(_+=c,++m+1>=e.length)return;c=e[m].dist(e[m+1])}var M=C-_,y=e[m],B=e[m+1],k=B.sub(y)._unit()._mult(M)._add(y)._round(),F=Math.max(Math.abs(C-f)-d/2,0),L=a/2/F;(g<0||g>=u)&&(L=Math.min(L,.99)),t.emplaceBack(k.x,k.y,k.x-i.x,k.y-i.y,-n/2,-n/2,n/2,n/2,L,L,s,l,r,0,0,0,0,0)}}},module.exports=CollisionFeature;\n},{}],172:[function(_dereq_,module,exports){\n\"use strict\";var Point=_dereq_(\"@mapbox/point-geometry\"),EXTENT=_dereq_(\"../data/extent\"),Grid=_dereq_(\"grid-index\"),intersectionTests=_dereq_(\"../util/intersection_tests\"),CollisionTile=function(e,t,i,a,r,o,n){void 0===o&&(o=new Grid(EXTENT,12,6)),void 0===n&&(n=new Grid(EXTENT,12,0)),this.angle=e,this.pitch=t,this.cameraToCenterDistance=i,this.cameraToTileDistance=a,this.grid=o,this.ignoredGrid=n,this.perspectiveRatio=1+.5*(a/i-1),this.minScale=.5/this.perspectiveRatio,this.maxScale=2/this.perspectiveRatio;var s=Math.sin(this.angle),l=Math.cos(this.angle);this.rotationMatrix=[l,-s,s,l],this.reverseRotationMatrix=[l,s,-s,l],this.yStretch=Math.max(1,a/(i*Math.cos(t/180*Math.PI))),this.collisionBoxArray=r,0===r.length&&(r.emplaceBack(),r.emplaceBack(0,0,0,0,0,-EXTENT,0,EXTENT,1/0,1/0,0,0,0,0,0,0,0,0,0),r.emplaceBack(EXTENT,0,0,0,0,-EXTENT,0,EXTENT,1/0,1/0,0,0,0,0,0,0,0,0,0),r.emplaceBack(0,0,0,0,-EXTENT,0,EXTENT,0,1/0,1/0,0,0,0,0,0,0,0,0,0),r.emplaceBack(0,EXTENT,0,0,-EXTENT,0,EXTENT,0,1/0,1/0,0,0,0,0,0,0,0,0,0)),this.tempCollisionBox=r.get(0),this.edges=[r.get(1),r.get(2),r.get(3),r.get(4)]};CollisionTile.deserialize=function(e,t){return new CollisionTile(e.angle,e.pitch,e.cameraToCenterDistance,e.cameraToTileDistance,t,new Grid(e.grid),new Grid(e.ignoredGrid))},CollisionTile.prototype.serialize=function(e){var t=this.grid.toArrayBuffer(),i=this.ignoredGrid.toArrayBuffer();return e&&(e.push(t),e.push(i)),{angle:this.angle,pitch:this.pitch,cameraToCenterDistance:this.cameraToCenterDistance,cameraToTileDistance:this.cameraToTileDistance,grid:t,ignoredGrid:i}},CollisionTile.prototype.placeCollisionFeature=function(e,t,i){for(var a=this,r=this.collisionBoxArray,o=this.minScale,n=this.rotationMatrix,s=this.yStretch,l=e.boxStartIndex;l<e.boxEndIndex;l++){var c=r.get(l),h=c.anchorPoint._matMult(n),x=h.x,m=h.y,p=x+c.x1*a.perspectiveRatio,y=m+c.y1*s*a.perspectiveRatio,g=x+c.x2*a.perspectiveRatio,d=m+c.y2*s*a.perspectiveRatio;c.bbox0=p,c.bbox1=y,c.bbox2=g,c.bbox3=d;var T=new Point(c.offsetX,c.offsetY)._matMult(n),u=T.x*T.x,v=T.y*T.y,M=v*s*s,f=Math.sqrt((u+M)/(u+v))||1;if(c.maxScale=c.unadjustedMaxScale*f,!t)for(var E=a.grid.query(p,y,g,d),S=0;S<E.length;S++){var P=r.get(E[S]),b=P.anchorPoint._matMult(n);if((o=a.getPlacementScale(o,h,c,b,P))>=a.maxScale)return o}if(i){var N=void 0;if(a.angle){var C=a.reverseRotationMatrix,w=new Point(c.x1,c.y1).matMult(C),X=new Point(c.x2,c.y1).matMult(C),B=new Point(c.x1,c.y2).matMult(C),G=new Point(c.x2,c.y2).matMult(C);N=a.tempCollisionBox,N.anchorPointX=c.anchorPoint.x,N.anchorPointY=c.anchorPoint.y,N.x1=Math.min(w.x,X.x,B.x,G.x),N.y1=Math.min(w.y,X.x,B.x,G.x),N.x2=Math.max(w.x,X.x,B.x,G.x),N.y2=Math.max(w.y,X.x,B.x,G.x),N.maxScale=c.maxScale}else N=c;for(var R=0;R<this.edges.length;R++){var q=a.edges[R];if((o=a.getPlacementScale(o,c.anchorPoint,N,q.anchorPoint,q))>=a.maxScale)return o}}}return o},CollisionTile.prototype.queryRenderedSymbols=function(e,t){var i={},a=[];if(0===e.length||0===this.grid.keys.length&&0===this.ignoredGrid.keys.length)return a;for(var r=this.collisionBoxArray,o=this.rotationMatrix,n=this.yStretch,s=[],l=1/0,c=1/0,h=-1/0,x=-1/0,m=0;m<e.length;m++)for(var p=e[m],y=0;y<p.length;y++){var g=p[y].matMult(o);l=Math.min(l,g.x),c=Math.min(c,g.y),h=Math.max(h,g.x),x=Math.max(x,g.y),s.push(g)}for(var d=this.grid.query(l,c,h,x),T=this.ignoredGrid.query(l,c,h,x),u=0;u<T.length;u++)d.push(T[u]);for(var v=t/this.perspectiveRatio,M=Math.pow(2,Math.ceil(Math.log(v)/Math.LN2*10)/10),f=0;f<d.length;f++){var E=r.get(d[f]),S=E.sourceLayerIndex,P=E.featureIndex;if(void 0===i[S]&&(i[S]={}),!i[S][P]&&!(M<E.placementScale||M>E.maxScale)){var b=E.anchorPoint.matMult(o),N=b.x+E.x1/v,C=b.y+E.y1/v*n,w=b.x+E.x2/v,X=b.y+E.y2/v*n,B=[new Point(N,C),new Point(w,C),new Point(w,X),new Point(N,X)];intersectionTests.polygonIntersectsPolygon(s,B)&&(i[S][P]=!0,a.push(d[f]))}}return a},CollisionTile.prototype.getPlacementScale=function(e,t,i,a,r){var o=t.x-a.x,n=t.y-a.y,s=(r.x1-i.x2)/o,l=(r.x2-i.x1)/o,c=(r.y1-i.y2)*this.yStretch/n,h=(r.y2-i.y1)*this.yStretch/n;(isNaN(s)||isNaN(l))&&(s=l=1),(isNaN(c)||isNaN(h))&&(c=h=1);var x=Math.min(Math.max(s,l),Math.max(c,h)),m=r.maxScale,p=i.maxScale;return x>m&&(x=m),x>p&&(x=p),x>e&&x>=r.placementScale&&(e=x),e},CollisionTile.prototype.insertCollisionFeature=function(e,t,i){for(var a=this,r=i?this.ignoredGrid:this.grid,o=this.collisionBoxArray,n=e.boxStartIndex;n<e.boxEndIndex;n++){var s=o.get(n);s.placementScale=t,t<a.maxScale&&(1===a.perspectiveRatio||s.maxScale>=1)&&r.insert(n,s.bbox0,s.bbox1,s.bbox2,s.bbox3)}},module.exports=CollisionTile;\n},{\"../data/extent\":48,\"../util/intersection_tests\":214,\"@mapbox/point-geometry\":2,\"grid-index\":22}],173:[function(_dereq_,module,exports){\n\"use strict\";function getAnchors(e,r,t,n,a,l,o,i,c){var h=n?.6*l*o:0,s=Math.max(n?n.right-n.left:0,a?a.right-a.left:0),u=0===e[0].x||e[0].x===c||0===e[0].y||e[0].y===c;r-s*o<r/4&&(r=s*o+r/4);var g=2*l;return resample(e,u?r/2*i%r:(s/2+g)*o*i%r,r,h,t,s*o,u,!1,c)}function resample(e,r,t,n,a,l,o,i,c){for(var h=l/2,s=0,u=0;u<e.length-1;u++)s+=e[u].dist(e[u+1]);for(var g=0,p=r-t,x=[],f=0;f<e.length-1;f++){for(var v=e[f],m=e[f+1],y=v.dist(m),A=m.angleTo(v);p+t<g+y;){p+=t;var d=(p-g)/y,k=interpolate(v.x,m.x,d),q=interpolate(v.y,m.y,d);if(k>=0&&k<c&&q>=0&&q<c&&p-h>=0&&p+h<=s){var M=new Anchor(k,q,A,f);M._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\":127,\"../symbol/anchor\":167,\"./check_max_angle\":168}],174:[function(_dereq_,module,exports){\n\"use strict\";module.exports=function(e){function t(t){g.push(e[t]),l++}function r(e,t,r){var n=u[e];return delete u[e],u[t]=n,g[n].geometry[0].pop(),g[n].geometry[0]=g[n].geometry[0].concat(r[0]),n}function n(e,t,r){var n=i[t];return delete i[t],i[e]=n,g[n].geometry[0].shift(),g[n].geometry[0]=r[0].concat(g[n].geometry[0]),n}function o(e,t,r){var n=r?t[0][t[0].length-1]:t[0][0];return e+\":\"+n.x+\":\"+n.y}for(var i={},u={},g=[],l=0,m=0;m<e.length;m++){var y=e[m],c=y.geometry,f=y.text;if(f){var a=o(f,c),s=o(f,c,!0);if(a in u&&s in i&&u[a]!==i[s]){var v=n(a,s,c),d=r(a,s,g[v].geometry);delete i[a],delete u[s],u[o(f,g[d].geometry,!0)]=d,g[v].geometry=null}else a in u?r(a,s,c):s in i?n(a,s,c):(t(m),i[a]=l-1,u[s]=l-1)}else t(m)}return g.filter(function(e){return e.geometry})};\n},{}],175:[function(_dereq_,module,exports){\n\"use strict\";function getLabelPlaneMatrix(e,t,a,n,r){var i=mat4.identity(new Float32Array(16));return t?(mat4.identity(i),mat4.scale(i,i,[1/r,1/r,1]),a||mat4.rotateZ(i,i,n.angle)):(mat4.scale(i,i,[n.width/2,-n.height/2,1]),mat4.translate(i,i,[1,-1,0]),mat4.multiply(i,i,e)),i}function getGlCoordMatrix(e,t,a,n,r){var i=mat4.identity(new Float32Array(16));return t?(mat4.multiply(i,i,e),mat4.scale(i,i,[r,r,1]),a||mat4.rotateZ(i,i,-n.angle)):(mat4.scale(i,i,[1,-1,1]),mat4.translate(i,i,[-1,-1,0]),mat4.scale(i,i,[2/n.width,2/n.height,1])),i}function project(e,t){var a=[e.x,e.y,0,1];vec4.transformMat4(a,a,t);var n=a[3];return{point:new Point(a[0]/n,a[1]/n),signedDistanceFromCamera:n}}function isVisible(e,t,a,n){var r=e[0]/e[3],i=e[1]/e[3];return r>=-a[0]&&r<=a[0]&&i>=-a[1]&&i<=a[1]&&n.frameHistory.isVisible(t)}function updateLineLabels(e,t,a,n,r,i,o,l,s,p){var m=n?e.textSizeData:e.iconSizeData,c=symbolSize.evaluateSizeForZoom(m,a.transform,p,n),u=[256/a.width*2+1,256/a.height*2+1],y=n?e.text.dynamicLayoutVertexArray:e.icon.dynamicLayoutVertexArray;y.clear();for(var g=e.lineVertexArray,d=n?e.placedGlyphArray:e.placedIconArray,f=0;f<d.length;f++){var h=d.get(f),x=[h.anchorX,h.anchorY,0,1];if(vec4.transformMat4(x,x,t),isVisible(x,h.placementZoom,u,a)){var v=x[3],b=1+.5*(v/a.transform.cameraToCenterDistance-1),L=symbolSize.evaluateSizeForFeature(m,c,h),A=o?L*b:L/b,G=new Point(h.anchorX,h.anchorY),S=project(G,r).point,P={},D=placeGlyphsAlongLine(h,A,!1,l,t,r,i,e.glyphOffsetArray,g,y,S,G,P);(D.notEnoughRoom||D.needsFlipping&&placeGlyphsAlongLine(h,A,!0,l,t,r,i,e.glyphOffsetArray,g,y,S,G,P).notEnoughRoom)&&hideGlyphs(h.numGlyphs,y)}else hideGlyphs(h.numGlyphs,y)}n?e.text.dynamicLayoutVertexBuffer.updateData(y.serialize()):e.icon.dynamicLayoutVertexBuffer.updateData(y.serialize())}function placeGlyphsAlongLine(e,t,a,n,r,i,o,l,s,p,m,c,u){var y,g=t/24,d=e.lineOffsetX*t,f=e.lineOffsetY*t;if(e.numGlyphs>1){var h=e.glyphStartIndex+e.numGlyphs,x=l.get(e.glyphStartIndex).offsetX,v=l.get(h-1).offsetX,b=e.lineStartIndex,L=e.lineStartIndex+e.lineLength,A=placeGlyphAlongLine(g*x,d,f,a,m,c,e.segment,b,L,s,i,u);if(!A)return{notEnoughRoom:!0};var G=placeGlyphAlongLine(g*v,d,f,a,m,c,e.segment,b,L,s,i,u);if(!G)return{notEnoughRoom:!0};var S=project(A.point,o).point,P=project(G.point,o).point;if(n&&!a&&(e.vertical?S.y<P.y:S.x>P.x))return{needsFlipping:!0};y=[A];for(var D=e.glyphStartIndex+1;D<h-1;D++){var I=l.get(D);y.push(placeGlyphAlongLine(g*I.offsetX,d,f,a,m,c,e.segment,b,L,s,i,u))}y.push(G)}else{if(n&&!a){var M=project(c,r).point,j=s.get(e.lineStartIndex+e.segment+1),w=project(j,r),F=w.signedDistanceFromCamera>0?w.point:projectTruncatedLineSegment(c,new Point(j.x,j.y),M,1,r);if(e.vertical?F.y>M.y:F.x<M.x)return{needsFlipping:!0}}var z=l.get(e.glyphStartIndex),_=placeGlyphAlongLine(g*z.offsetX,d,f,a,m,c,e.segment,e.lineStartIndex,e.lineStartIndex+e.lineLength,s,i,u);if(!_)return{notEnoughRoom:!0};y=[_]}for(var V=e.placementZoom,C=0,X=y;C<X.length;C+=1){var E=X[C];addDynamicAttributes(p,E.point,E.angle,V)}return{}}function projectTruncatedLineSegment(e,t,a,n,r){var i=project(e.add(e.sub(t)._unit()),r).point,o=a.sub(i);return a.add(o._mult(n/o.mag()))}function placeGlyphAlongLine(e,t,a,n,r,i,o,l,s,p,m,c){var u=n?e-t:e+t,y=u>0?1:-1,g=0;n&&(y*=-1,g=Math.PI),y<0&&(g+=Math.PI);for(var d=y>0?l+o:l+o+1,f=r,h=r,x=0,v=0,b=Math.abs(u);x+v<=b;){if((d+=y)<l||d>=s)return null;if(h=f,void 0===(f=c[d])){var L=project(p.get(d),m);if(L.signedDistanceFromCamera>0)f=c[d]=L.point;else{f=projectTruncatedLineSegment(0===x?i:new Point(p.get(d-y).x,p.get(d-y).y),new Point(p.get(d).x,p.get(d).y),h,b-x+1,m)}}x+=v,v=h.dist(f)}var A=(b-x)/v,G=f.sub(h),S=G.mult(A)._add(h);return S._add(G._unit()._perp()._mult(a*y)),{point:S,angle:g+Math.atan2(f.y-h.y,f.x-h.x)}}function hideGlyphs(e,t){for(var a=0;a<e;a++)addDynamicAttributes(t,offscreenPoint,0,25)}var Point=_dereq_(\"@mapbox/point-geometry\"),ref=_dereq_(\"@mapbox/gl-matrix\"),mat4=ref.mat4,vec4=ref.vec4,symbolSize=_dereq_(\"./symbol_size\"),ref$1=_dereq_(\"../data/bucket/symbol_bucket\"),addDynamicAttributes=ref$1.addDynamicAttributes;module.exports={updateLineLabels:updateLineLabels,getLabelPlaneMatrix:getLabelPlaneMatrix,getGlCoordMatrix:getGlCoordMatrix};var offscreenPoint=new Point(-1/0,-1/0);\n},{\"../data/bucket/symbol_bucket\":47,\"./symbol_size\":178,\"@mapbox/gl-matrix\":1,\"@mapbox/point-geometry\":2}],176:[function(_dereq_,module,exports){\n\"use strict\";function getIconQuads(t,e,i,o,n,a,r){var u,l,d,f,c=e.image,h=i.layout,x=e.top-1/c.pixelRatio,g=e.left-1/c.pixelRatio,p=e.bottom+1/c.pixelRatio,s=e.right+1/c.pixelRatio;if(\"none\"!==h[\"icon-text-fit\"]&&n){var P=s-g,_=p-x,w=h[\"text-size\"]/24,m=n.left*w,y=n.right*w,M=n.top*w,v=n.bottom*w,R=y-m,b=v-M,G=h[\"icon-text-fit-padding\"][0],B=h[\"icon-text-fit-padding\"][1],I=h[\"icon-text-fit-padding\"][2],L=h[\"icon-text-fit-padding\"][3],Q=\"width\"===h[\"icon-text-fit\"]?.5*(b-_):0,O=\"height\"===h[\"icon-text-fit\"]?.5*(R-P):0,A=\"width\"===h[\"icon-text-fit\"]||\"both\"===h[\"icon-text-fit\"]?R:P,D=\"height\"===h[\"icon-text-fit\"]||\"both\"===h[\"icon-text-fit\"]?b:_;u=new Point(m+O-L,M+Q-G),l=new Point(m+O+B+A,M+Q-G),d=new Point(m+O+B+A,M+Q+I+D),f=new Point(m+O-L,M+Q+I+D)}else u=new Point(g,x),l=new Point(s,x),d=new Point(s,p),f=new Point(g,p);var E=i.getLayoutValue(\"icon-rotate\",a,r)*Math.PI/180;if(E){var F=Math.sin(E),H=Math.cos(E),V=[H,-F,F,H];u._matMult(V),l._matMult(V),f._matMult(V),d._matMult(V)}return[{tl:u,tr:l,bl:f,br:d,tex:{x:c.textureRect.x-1,y:c.textureRect.y-1,w:c.textureRect.w+2,h:c.textureRect.h+2},writingMode:void 0,glyphOffset:[0,0]}]}function getGlyphQuads(t,e,i,o,n,a,r){for(var u=i.getLayoutValue(\"text-rotate\",n,a)*Math.PI/180,l=i.getLayoutValue(\"text-offset\",n,a).map(function(t){return 24*t}),d=e.positionedGlyphs,f=[],c=0;c<d.length;c++){var h=d[c],x=r[h.glyph];if(x){var g=x.rect;if(g){var p=GLYPH_PBF_BORDER+1,s=x.metrics.advance/2,P=o?[h.x+s,h.y]:[0,0],_=o?[0,0]:[h.x+s+l[0],h.y+l[1]],w=x.metrics.left-p-s+_[0],m=-x.metrics.top-p+_[1],y=w+g.w,M=m+g.h,v=new Point(w,m),R=new Point(y,m),b=new Point(w,M),G=new Point(y,M);if(o&&h.vertical){var B=new Point(-s,s),I=-Math.PI/2,L=new Point(5,0);v._rotateAround(I,B)._add(L),R._rotateAround(I,B)._add(L),b._rotateAround(I,B)._add(L),G._rotateAround(I,B)._add(L)}if(u){var Q=Math.sin(u),O=Math.cos(u),A=[O,-Q,Q,O];v._matMult(A),R._matMult(A),b._matMult(A),G._matMult(A)}f.push({tl:v,tr:R,bl:b,br:G,tex:g,writingMode:e.writingMode,glyphOffset:P})}}}return f}var Point=_dereq_(\"@mapbox/point-geometry\"),ref=_dereq_(\"../style/parse_glyph_pbf\"),GLYPH_PBF_BORDER=ref.GLYPH_PBF_BORDER;module.exports={getIconQuads:getIconQuads,getGlyphQuads:getGlyphQuads};\n},{\"../style/parse_glyph_pbf\":154,\"@mapbox/point-geometry\":2}],177:[function(_dereq_,module,exports){\n\"use strict\";function breakLines(e,t){for(var a=[],r=0,i=0,n=t;i<n.length;i+=1){var l=n[i];a.push(e.substring(r,l)),r=l}return r<e.length&&a.push(e.substring(r,e.length)),a}function shapeText(e,t,a,r,i,n,l,c,o,s){var h=e.trim();s===WritingMode.vertical&&(h=verticalizePunctuation(h));var g,u=[],p={positionedGlyphs:u,text:h,top:c[1],bottom:c[1],left:c[0],right:c[0],writingMode:s},b=rtlTextPlugin.processBidirectionalText;return g=b?b(h,determineLineBreaks(h,l,a,t)):breakLines(h,determineLineBreaks(h,l,a,t)),shapeLines(p,t,g,r,i,n,s,l,o),!!u.length&&p}function determineAverageLineWidth(e,t,a,r){for(var i=0,n=0;n<e.length;n++){var l=r[e.charCodeAt(n)];l&&(i+=l.metrics.advance+t)}return i/Math.max(1,Math.ceil(i/a))}function calculateBadness(e,t,a,r){var i=Math.pow(e-t,2);return r?e<t?i/2:2*i:i+Math.abs(a)*a}function calculatePenalty(e,t){var a=0;return 10===e&&(a-=1e4),40!==e&&65288!==e||(a+=50),41!==t&&65289!==t||(a+=50),a}function evaluateBreak(e,t,a,r,i,n){for(var l=null,c=calculateBadness(t,a,i,n),o=0,s=r;o<s.length;o+=1){var h=s[o],g=t-h.x,u=calculateBadness(g,a,i,n)+h.badness;u<=c&&(l=h,c=u)}return{index:e,x:t,priorBreak:l,badness:c}}function leastBadBreaks(e){return e?leastBadBreaks(e.priorBreak).concat(e.index):[]}function determineLineBreaks(e,t,a,r){if(!a)return[];if(!e)return[];for(var i=[],n=determineAverageLineWidth(e,t,a,r),l=0,c=0;c<e.length;c++){var o=e.charCodeAt(c),s=r[o];s&&!whitespace[o]&&(l+=s.metrics.advance+t),c<e.length-1&&(breakable[o]||scriptDetection.charAllowsIdeographicBreaking(o))&&i.push(evaluateBreak(c+1,l,n,i,calculatePenalty(o,e.charCodeAt(c+1)),!1))}return leastBadBreaks(evaluateBreak(e.length,l,n,i,0,!0))}function getAnchorAlignment(e){var t=.5,a=.5;switch(e){case\"right\":case\"top-right\":case\"bottom-right\":t=1;break;case\"left\":case\"top-left\":case\"bottom-left\":t=0}switch(e){case\"bottom\":case\"bottom-right\":case\"bottom-left\":a=1;break;case\"top\":case\"top-right\":case\"top-left\":a=0}return{horizontalAlign:t,verticalAlign:a}}function shapeLines(e,t,a,r,i,n,l,c,o){for(var s=0,h=-17,g=0,u=e.positionedGlyphs,p=\"right\"===n?1:\"left\"===n?0:.5,b=0,v=a;b<v.length;b+=1){var d=v[b];if(d=d.trim(),d.length){for(var f=u.length,k=0;k<d.length;k++){var m=d.charCodeAt(k),x=t[m];x&&(scriptDetection.charHasUprightVerticalOrientation(m)&&l!==WritingMode.horizontal?(u.push({glyph:m,x:s,y:0,vertical:!0}),s+=o+c):(u.push({glyph:m,x:s,y:h,vertical:!1}),s+=x.metrics.advance+c))}if(u.length!==f){var A=s-c;g=Math.max(A,g),justifyLine(u,t,f,u.length-1,p)}s=0,h+=r}else h+=r}var B=getAnchorAlignment(i),y=B.horizontalAlign,w=B.verticalAlign;align(u,p,y,w,g,r,a.length);var z=a.length*r;e.top+=-w*z,e.bottom=e.top+z,e.left+=-y*g,e.right=e.left+g}function justifyLine(e,t,a,r,i){if(i){var n=t[e[r].glyph];if(n)for(var l=n.metrics.advance,c=(e[r].x+l)*i,o=a;o<=r;o++)e[o].x-=c}}function align(e,t,a,r,i,n,l){for(var c=(t-a)*i,o=(-r*l+.5)*n,s=0;s<e.length;s++)e[s].x+=c,e[s].y+=o}function shapeIcon(e,t,a){var r=getAnchorAlignment(a),i=r.horizontalAlign,n=r.verticalAlign,l=t[0],c=t[1],o=l-e.displaySize[0]*i,s=o+e.displaySize[0],h=c-e.displaySize[1]*n;return{image:e,top:h,bottom:h+e.displaySize[1],left:o,right:s}}var scriptDetection=_dereq_(\"../util/script_detection\"),verticalizePunctuation=_dereq_(\"../util/verticalize_punctuation\"),rtlTextPlugin=_dereq_(\"../source/rtl_text_plugin\"),WritingMode={horizontal:1,vertical:2};module.exports={shapeText:shapeText,shapeIcon:shapeIcon,WritingMode:WritingMode};var whitespace={};whitespace[9]=!0,whitespace[10]=!0,whitespace[11]=!0,whitespace[12]=!0,whitespace[13]=!0,whitespace[32]=!0;var breakable={};breakable[10]=!0,breakable[32]=!0,breakable[38]=!0,breakable[40]=!0,breakable[41]=!0,breakable[43]=!0,breakable[45]=!0,breakable[47]=!0,breakable[173]=!0,breakable[183]=!0,breakable[8203]=!0,breakable[8208]=!0,breakable[8211]=!0,breakable[8231]=!0;\n},{\"../source/rtl_text_plugin\":96,\"../util/script_detection\":218,\"../util/verticalize_punctuation\":225}],178:[function(_dereq_,module,exports){\n\"use strict\";function evaluateSizeForFeature(e,o,t){var i=o;return e.isFeatureConstant?i.uSize:e.isZoomConstant?t.lowerSize/10:interpolate.number(t.lowerSize/10,t.upperSize/10,i.uSizeT)}function evaluateSizeForZoom(e,o,t,i){var a={};if(e.isZoomConstant||e.isFeatureConstant)if(e.isFeatureConstant&&!e.isZoomConstant){var n;if(\"interval\"===e.functionType)n=t.getLayoutValue(i?\"text-size\":\"icon-size\",{zoom:o.zoom});else{var r=\"interval\"===e.functionType?0:interpolationFactor(o.zoom,e.functionBase,e.coveringZoomRange[0],e.coveringZoomRange[1]),u=e.coveringStopValues[0],l=e.coveringStopValues[1];n=u+(l-u)*util.clamp(r,0,1)}a.uSize=n}else e.isFeatureConstant&&e.isZoomConstant&&(a.uSize=e.layoutSize);else{var s=interpolationFactor(o.zoom,e.functionBase,e.coveringZoomRange[0],e.coveringZoomRange[1]);a.uSizeT=util.clamp(s,0,1)}return a}var interpolate=_dereq_(\"../style-spec/util/interpolate\"),ref=_dereq_(\"../style-spec/function\"),interpolationFactor=ref.interpolationFactor,util=_dereq_(\"../util/util\");module.exports={evaluateSizeForFeature:evaluateSizeForFeature,evaluateSizeForZoom:evaluateSizeForZoom};\n},{\"../style-spec/function\":112,\"../style-spec/util/interpolate\":127,\"../util/util\":223}],179:[function(_dereq_,module,exports){\n\"use strict\";var rtlTextPlugin=_dereq_(\"../source/rtl_text_plugin\");module.exports=function(e,r,t,a){var l=r.getLayoutValue(\"text-transform\",t,a);return\"uppercase\"===l?e=e.toLocaleUpperCase():\"lowercase\"===l&&(e=e.toLocaleLowerCase()),rtlTextPlugin.applyArabicShaping&&(e=rtlTextPlugin.applyArabicShaping(e)),e};\n},{\"../source/rtl_text_plugin\":96}],180:[function(_dereq_,module,exports){\n\"use strict\";var DOM=_dereq_(\"../util/dom\"),Point=_dereq_(\"@mapbox/point-geometry\"),handlers={scrollZoom:_dereq_(\"./handler/scroll_zoom\"),boxZoom:_dereq_(\"./handler/box_zoom\"),dragRotate:_dereq_(\"./handler/drag_rotate\"),dragPan:_dereq_(\"./handler/drag_pan\"),keyboard:_dereq_(\"./handler/keyboard\"),doubleClickZoom:_dereq_(\"./handler/dblclick_zoom\"),touchZoomRotate:_dereq_(\"./handler/touch_zoom_rotate\")};module.exports=function(e,t){function n(e){h(\"mouseout\",e)}function o(t){e.stop(),L=DOM.mousePos(g,t),h(\"mousedown\",t),E=!0}function r(t){var n=e.dragRotate&&e.dragRotate.isActive();p&&!n&&h(\"contextmenu\",p),p=null,E=!1,h(\"mouseup\",t)}function a(t){if(!(e.dragPan&&e.dragPan.isActive()||e.dragRotate&&e.dragRotate.isActive())){for(var n=t.toElement||t.target;n&&n!==g;)n=n.parentNode;n===g&&h(\"mousemove\",t)}}function u(t){e.stop(),f(\"touchstart\",t),!t.touches||t.touches.length>1||(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 m(e){h(\"dblclick\",e),e.preventDefault()}function v(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\",m,!1),g.addEventListener(\"contextmenu\",v,!1)};\n},{\"../util/dom\":209,\"./handler/box_zoom\":189,\"./handler/dblclick_zoom\":190,\"./handler/drag_pan\":191,\"./handler/drag_rotate\":192,\"./handler/keyboard\":193,\"./handler/scroll_zoom\":194,\"./handler/touch_zoom_rotate\":195,\"@mapbox/point-geometry\":2}],181:[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_(\"@mapbox/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())<this._bearingSnap?this.resetNorth(t,e):this},e.prototype.getPitch=function(){return this.transform.pitch},e.prototype.setPitch=function(t,e){return this.jumpTo({pitch:t},e),this},e.prototype.fitBounds=function(t,e,i){if(e=util.extend({padding:{top:0,bottom:0,right:0,left:0},offset:[0,0],maxZoom:this.transform.maxZoom},e),\"number\"==typeof e.padding){var o=e.padding;e.padding={top:o,bottom:o,right:o,left:o}}if(!util.deepEqual(Object.keys(e.padding).sort(function(t,e){return t<e?-1:t>e?1:0}),[\"bottom\",\"left\",\"right\",\"top\"]))return util.warnOnce(\"options.padding must be a positive number, or an Object with keys 'bottom', 'left', 'right', 'top'\"),this;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),m=(h.width-2*r-2*Math.abs(s.x))/c.x,f=(h.height-2*a-2*Math.abs(s.y))/c.y;return f<0||m<0?(util.warnOnce(\"Map cannot fit within canvas with the given bounds, padding, and/or offset.\"),this):(e.center=h.unproject(p.add(u).div(2)),e.zoom=Math.min(h.scaleZoom(h.scale*Math.min(m,f)),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),void 0!==t.center&&(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),!1===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),m=LngLat.convert(t.center||c);this._normalizeCenter(m);var f,g,d=o.project(c),l=o.project(m).sub(d),v=o.zoomScale(s-n);return t.around&&(f=LngLat.convert(t.around),g=o.locationPoint(f)),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)),f)o.setLocationAtPoint(f,g);else{var i=o.zoomScale(o.zoom-n),c=s>n?Math.min(2,v):Math.max(.5,v),m=Math.pow(c,1-t),b=o.unproject(d.add(l.mult(t*m)).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?util.clamp(+t.zoom,s.minZoom,s.maxZoom):h,m=\"bearing\"in t?this._normalizeBearing(t.bearing,p):p,f=\"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),Z=function(t){return n(j)/n(j+_*t)},w=function(t){return z*((n(j)*r(j+_*t)-o(j))/L)/E},P=(i(1)-j)/_;if(Math.abs(E)<1e-6||isNaN(P)){if(Math.abs(z-M)<1e-6)return this.easeTo(t,e);var q=M<z?-1:1;P=Math.abs(Math.log(M/z))/_,w=function(){return 0},Z=function(t){return Math.exp(q*_*t)}}if(\"duration\"in t)t.duration=+t.duration;else{var B=\"screenSpeed\"in t?+t.screenSpeed/_:+t.speed;t.duration=1e3*P/B}return this.zooming=!0,this.rotating=p!==m,this.pitching=f!==u,this._prepareEase(e,!1),this._ease(function(t){var i=t*P,o=1/Z(i);s.zoom=h+s.scaleZoom(o),this.rotating&&(s.bearing=interpolate(p,m,t)),this.pitching&&(s.pitch=interpolate(u,f,t));var n=s.unproject(b.add(y.mult(w(i))).mult(o));s.setLocationAtPoint(s.renderWorldCopies?n.wrap():n,d),this._fireMoveEvents(e)},function(){return a._easeToEnd(e)},t),this},e.prototype.isEasing=function(){return!!this._abortFn},e.prototype.isMoving=function(){return this.moving},e.prototype.stop=function(){return this._abortFn&&(this._abortFn(),this._finishEase()),this},e.prototype._ease=function(t,e,i){this._finishFn=e,this._abortFn=browser.timed(function(e){t.call(this,i.easing(e)),1===e&&this._finishEase()},!1===i.animate?0:i.duration,this)},e.prototype._finishEase=function(){delete this._abortFn;var t=this._finishFn;delete this._finishFn,t.call(this)},e.prototype._normalizeBearing=function(t,e){t=util.wrap(t,-180,180);var i=Math.abs(t-e);return Math.abs(t-360-e)<i&&(t-=360),Math.abs(t+360-e)<i&&(t+=360),t},e.prototype._normalizeCenter=function(t){var e=this.transform;if(e.renderWorldCopies&&!e.lngRange){var i=t.lng-e.center.lng;t.lng+=i>180?-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\":58,\"../geo/lng_lat_bounds\":59,\"../style-spec/util/interpolate\":127,\"../util/browser\":202,\"../util/evented\":210,\"../util/util\":223,\"@mapbox/point-geometry\":2}],182:[function(_dereq_,module,exports){\n\"use strict\";var DOM=_dereq_(\"../../util/dom\"),util=_dereq_(\"../../util/util\"),config=_dereq_(\"../../util/config\"),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(){DOM.remove(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(){var t=this._editLink;t||(t=this._editLink=this._container.querySelector(\".mapbox-improve-map\"));var i=[{key:\"owner\",value:this.styleOwner},{key:\"id\",value:this.styleId},{key:\"access_token\",value:config.ACCESS_TOKEN}];if(t){var o=i.reduce(function(t,o,e){return o.value&&(t+=o.key+\"=\"+o.value+(e<i.length-1?\"&\":\"\")),t},\"?\");t.href=\"https://www.mapbox.com/feedback/\"+o+(this._map._hash?this._map._hash.getHashString(!0):\"\")}},AttributionControl.prototype._updateData=function(t){t&&\"metadata\"===t.sourceDataType&&(this._updateAttributions(),this._updateEditLink())},AttributionControl.prototype._updateAttributions=function(){if(this._map.style){var t=[];if(this._map.style.stylesheet){var i=this._map.style.stylesheet;this.styleOwner=i.owner,this.styleId=i.id}var o=this._map.style.sourceCaches;for(var e in o){var n=o[e].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 e=o+1;e<t.length;e++)if(t[e].indexOf(i)>=0)return!1;return!0}),this._container.innerHTML=t.join(\" | \"),this._editLink=null}},AttributionControl.prototype._updateCompact=function(){this._map.getCanvasContainer().offsetWidth<=640?this._container.classList.add(\"mapboxgl-compact\"):this._container.classList.remove(\"mapboxgl-compact\")},module.exports=AttributionControl;\n},{\"../../util/config\":206,\"../../util/dom\":209,\"../../util/util\":223}],183:[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\"),this._className=\"mapboxgl-ctrl\"};FullscreenControl.prototype.onAdd=function(e){return this._map=e,this._mapContainer=this._map.getContainer(),this._container=DOM.create(\"div\",this._className+\" mapboxgl-ctrl-group\"),this._checkFullscreenSupport()?this._setupUI():(this._container.style.display=\"none\",util.warnOnce(\"This device does not support fullscreen mode.\")),this._container},FullscreenControl.prototype.onRemove=function(){DOM.remove(this._container),this._map=null,window.document.removeEventListener(this._fullscreenchange,this._changeIcon)},FullscreenControl.prototype._checkFullscreenSupport=function(){return!!(window.document.fullscreenEnabled||window.document.mozFullScreenEnabled||window.document.msFullscreenEnabled||window.document.webkitFullscreenEnabled)},FullscreenControl.prototype._setupUI=function(){var e=this._fullscreenButton=DOM.create(\"button\",this._className+\"-icon \"+this._className+\"-fullscreen\",this._container);e.setAttribute(\"aria-label\",\"Toggle fullscreen\"),e.type=\"button\",this._fullscreenButton.addEventListener(\"click\",this._onClickFullscreen),window.document.addEventListener(this._fullscreenchange,this._changeIcon)},FullscreenControl.prototype._isFullscreen=function(){return this._fullscreen},FullscreenControl.prototype._changeIcon=function(){(window.document.fullscreenElement||window.document.mozFullScreenElement||window.document.webkitFullscreenElement||window.document.msFullscreenElement)===this._mapContainer!==this._fullscreen&&(this._fullscreen=!this._fullscreen,this._fullscreenButton.classList.toggle(this._className+\"-shrink\"),this._fullscreenButton.classList.toggle(this._className+\"-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\":209,\"../../util/util\":223,\"../../util/window\":204}],184:[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\"),LngLat=_dereq_(\"../../geo/lng_lat\"),Marker=_dereq_(\"../marker\"),defaultOptions={positionOptions:{enableHighAccuracy:!1,timeout:6e3},fitBoundsOptions:{maxZoom:15},trackUserLocation:!1,showUserLocation:!0},className=\"mapboxgl-ctrl\",supportsGeolocation,GeolocateControl=function(t){function o(o){t.call(this),this.options=util.extend({},defaultOptions,o),util.bindAll([\"_onSuccess\",\"_onError\",\"_finish\",\"_setupUI\",\"_updateCamera\",\"_updateMarker\",\"_onClickGeolocate\"],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(){void 0!==this._geolocationWatchID&&(window.navigator.geolocation.clearWatch(this._geolocationWatchID),this._geolocationWatchID=void 0),this.options.showUserLocation&&this._userLocationDotMarker.remove(),DOM.remove(this._container),this._map=void 0},o.prototype._onSuccess=function(t){if(this.options.trackUserLocation)switch(this._lastKnownPosition=t,this._watchState){case\"WAITING_ACTIVE\":case\"ACTIVE_LOCK\":case\"ACTIVE_ERROR\":this._watchState=\"ACTIVE_LOCK\",this._geolocateButton.classList.remove(\"mapboxgl-ctrl-geolocate-waiting\"),this._geolocateButton.classList.remove(\"mapboxgl-ctrl-geolocate-active-error\"),this._geolocateButton.classList.add(\"mapboxgl-ctrl-geolocate-active\");break;case\"BACKGROUND\":case\"BACKGROUND_ERROR\":this._watchState=\"BACKGROUND\",this._geolocateButton.classList.remove(\"mapboxgl-ctrl-geolocate-waiting\"),this._geolocateButton.classList.remove(\"mapboxgl-ctrl-geolocate-background-error\"),this._geolocateButton.classList.add(\"mapboxgl-ctrl-geolocate-background\")}this.options.showUserLocation&&\"OFF\"!==this._watchState&&this._updateMarker(t),this.options.trackUserLocation&&\"ACTIVE_LOCK\"!==this._watchState||this._updateCamera(t),this.options.showUserLocation&&this._dotElement.classList.remove(\"mapboxgl-user-location-dot-stale\"),this.fire(\"geolocate\",t),this._finish()},o.prototype._updateCamera=function(t){var o=new LngLat(t.coords.longitude,t.coords.latitude),e=t.coords.accuracy;this._map.fitBounds(o.toBounds(e),this.options.fitBoundsOptions,{geolocateSource:!0})},o.prototype._updateMarker=function(t){t?this._userLocationDotMarker.setLngLat([t.coords.longitude,t.coords.latitude]).addTo(this._map):this._userLocationDotMarker.remove()},o.prototype._onError=function(t){if(this.options.trackUserLocation)if(1===t.code)this._watchState=\"OFF\",this._geolocateButton.classList.remove(\"mapboxgl-ctrl-geolocate-waiting\"),this._geolocateButton.classList.remove(\"mapboxgl-ctrl-geolocate-active\"),this._geolocateButton.classList.remove(\"mapboxgl-ctrl-geolocate-active-error\"),this._geolocateButton.classList.remove(\"mapboxgl-ctrl-geolocate-background\"),this._geolocateButton.classList.remove(\"mapboxgl-ctrl-geolocate-background-error\"),void 0!==this._geolocationWatchID&&this._clearWatch();else switch(this._watchState){case\"WAITING_ACTIVE\":this._watchState=\"ACTIVE_ERROR\",this._geolocateButton.classList.remove(\"mapboxgl-ctrl-geolocate-active\"),this._geolocateButton.classList.add(\"mapboxgl-ctrl-geolocate-active-error\");break;case\"ACTIVE_LOCK\":this._watchState=\"ACTIVE_ERROR\",this._geolocateButton.classList.remove(\"mapboxgl-ctrl-geolocate-active\"),this._geolocateButton.classList.add(\"mapboxgl-ctrl-geolocate-active-error\"),this._geolocateButton.classList.add(\"mapboxgl-ctrl-geolocate-waiting\");break;case\"BACKGROUND\":this._watchState=\"BACKGROUND_ERROR\",this._geolocateButton.classList.remove(\"mapboxgl-ctrl-geolocate-background\"),this._geolocateButton.classList.add(\"mapboxgl-ctrl-geolocate-background-error\"),this._geolocateButton.classList.add(\"mapboxgl-ctrl-geolocate-waiting\")}\"OFF\"!==this._watchState&&this.options.showUserLocation&&this._dotElement.classList.add(\"mapboxgl-user-location-dot-stale\"),this.fire(\"error\",t),this._finish()},o.prototype._finish=function(){this._timeoutId&&clearTimeout(this._timeoutId),this._timeoutId=void 0},o.prototype._setupUI=function(t){var o=this;!1!==t&&(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.trackUserLocation&&(this._geolocateButton.setAttribute(\"aria-pressed\",\"false\"),this._watchState=\"OFF\"),this.options.showUserLocation&&(this._dotElement=DOM.create(\"div\",\"mapboxgl-user-location-dot\"),this._userLocationDotMarker=new Marker(this._dotElement),this.options.trackUserLocation&&(this._watchState=\"OFF\")),this._geolocateButton.addEventListener(\"click\",this._onClickGeolocate.bind(this)),this.options.trackUserLocation&&this._map.on(\"movestart\",function(t){t.geolocateSource||\"ACTIVE_LOCK\"!==o._watchState||(o._watchState=\"BACKGROUND\",o._geolocateButton.classList.add(\"mapboxgl-ctrl-geolocate-background\"),o._geolocateButton.classList.remove(\"mapboxgl-ctrl-geolocate-active\"),o.fire(\"trackuserlocationend\"))}))},o.prototype._onClickGeolocate=function(){if(this.options.trackUserLocation){switch(this._watchState){case\"OFF\":this._watchState=\"WAITING_ACTIVE\",this.fire(\"trackuserlocationstart\");break;case\"WAITING_ACTIVE\":case\"ACTIVE_LOCK\":case\"ACTIVE_ERROR\":case\"BACKGROUND_ERROR\":this._watchState=\"OFF\",this._geolocateButton.classList.remove(\"mapboxgl-ctrl-geolocate-waiting\"),this._geolocateButton.classList.remove(\"mapboxgl-ctrl-geolocate-active\"),this._geolocateButton.classList.remove(\"mapboxgl-ctrl-geolocate-active-error\"),this._geolocateButton.classList.remove(\"mapboxgl-ctrl-geolocate-background\"),this._geolocateButton.classList.remove(\"mapboxgl-ctrl-geolocate-background-error\"),this.fire(\"trackuserlocationend\");break;case\"BACKGROUND\":this._watchState=\"ACTIVE_LOCK\",this._geolocateButton.classList.remove(\"mapboxgl-ctrl-geolocate-background\"),this._lastKnownPosition&&this._updateCamera(this._lastKnownPosition),this.fire(\"trackuserlocationstart\")}switch(this._watchState){case\"WAITING_ACTIVE\":this._geolocateButton.classList.add(\"mapboxgl-ctrl-geolocate-waiting\"),this._geolocateButton.classList.add(\"mapboxgl-ctrl-geolocate-active\");break;case\"ACTIVE_LOCK\":this._geolocateButton.classList.add(\"mapboxgl-ctrl-geolocate-active\");break;case\"ACTIVE_ERROR\":this._geolocateButton.classList.add(\"mapboxgl-ctrl-geolocate-waiting\"),this._geolocateButton.classList.add(\"mapboxgl-ctrl-geolocate-active-error\");break;case\"BACKGROUND\":this._geolocateButton.classList.add(\"mapboxgl-ctrl-geolocate-background\");break;case\"BACKGROUND_ERROR\":this._geolocateButton.classList.add(\"mapboxgl-ctrl-geolocate-waiting\"),this._geolocateButton.classList.add(\"mapboxgl-ctrl-geolocate-background-error\")}\"OFF\"===this._watchState&&void 0!==this._geolocationWatchID?this._clearWatch():void 0===this._geolocationWatchID&&(this._geolocateButton.classList.add(\"mapboxgl-ctrl-geolocate-waiting\"),this._geolocateButton.setAttribute(\"aria-pressed\",\"true\"),this._geolocationWatchID=window.navigator.geolocation.watchPosition(this._onSuccess,this._onError,this.options.positionOptions))}else window.navigator.geolocation.getCurrentPosition(this._onSuccess,this._onError,this.options.positionOptions),this._timeoutId=setTimeout(this._finish,1e4)},o.prototype._clearWatch=function(){window.navigator.geolocation.clearWatch(this._geolocationWatchID),this._geolocationWatchID=void 0,this._geolocateButton.classList.remove(\"mapboxgl-ctrl-geolocate-waiting\"),this._geolocateButton.setAttribute(\"aria-pressed\",\"false\"),this.options.showUserLocation&&this._updateMarker(null)},o}(Evented);module.exports=GeolocateControl;\n},{\"../../geo/lng_lat\":58,\"../../util/dom\":209,\"../../util/evented\":210,\"../../util/util\":223,\"../../util/window\":204,\"../marker\":198}],185:[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){this._map=o,this._container=DOM.create(\"div\",\"mapboxgl-ctrl\");var t=DOM.create(\"a\",\"mapboxgl-ctrl-logo\");return t.target=\"_blank\",t.href=\"https://www.mapbox.com/\",t.setAttribute(\"aria-label\",\"Mapbox logo\"),this._container.appendChild(t),this._container.style.display=\"none\",this._map.on(\"sourcedata\",this._updateLogo),this._updateLogo(),this._container},LogoControl.prototype.onRemove=function(){DOM.remove(this._container),this._map.off(\"sourcedata\",this._updateLogo)},LogoControl.prototype.getDefaultPosition=function(){return\"bottom-left\"},LogoControl.prototype._updateLogo=function(o){o&&\"metadata\"!==o.sourceDataType||(this._container.style.display=this._logoRequired()?\"block\":\"none\")},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;\n},{\"../../util/dom\":209,\"../../util/util\":223}],186:[function(_dereq_,module,exports){\n\"use strict\";var DOM=_dereq_(\"../../util/dom\"),util=_dereq_(\"../../util/util\"),DragRotateHandler=_dereq_(\"../handler/drag_rotate\"),NavigationControl=function(){var t=this;util.bindAll([\"_rotateCompassArrow\"],this),this._container=DOM.create(\"div\",\"mapboxgl-ctrl mapboxgl-ctrl-group\"),this._container.addEventListener(\"contextmenu\",function(t){return t.preventDefault()}),this._zoomInButton=this._createButton(\"mapboxgl-ctrl-icon mapboxgl-ctrl-zoom-in\",\"Zoom In\",function(){return t._map.zoomIn()}),this._zoomOutButton=this._createButton(\"mapboxgl-ctrl-icon mapboxgl-ctrl-zoom-out\",\"Zoom Out\",function(){return t._map.zoomOut()}),this._compass=this._createButton(\"mapboxgl-ctrl-icon mapboxgl-ctrl-compass\",\"Reset North\",function(){return t._map.resetNorth()}),this._compassArrow=DOM.create(\"span\",\"mapboxgl-ctrl-compass-arrow\",this._compass)};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._map.on(\"rotate\",this._rotateCompassArrow),this._rotateCompassArrow(),this._handler=new DragRotateHandler(t,{button:\"left\",element:this._compass,pitchWithRotate:!1}),this._handler.enable(),this._container},NavigationControl.prototype.onRemove=function(){DOM.remove(this._container),this._map.off(\"rotate\",this._rotateCompassArrow),delete this._map,this._handler.disable(),delete this._handler},NavigationControl.prototype._createButton=function(t,o,r){var e=DOM.create(\"button\",t,this._container);return e.type=\"button\",e.setAttribute(\"aria-label\",o),e.addEventListener(\"click\",r),e},module.exports=NavigationControl;\n},{\"../../util/dom\":209,\"../../util/util\":223,\"../handler/drag_rotate\":192}],187:[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 l=3.2808*a;if(l>5280){setScale(e,n,l/5280,\"mi\")}else setScale(e,n,l,\"ft\")}else if(o&&\"nautical\"===o.unit){var r=a/1852;setScale(e,n,r,\"nm\")}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=Math.PI/180,n=t.lat*o,i=e.lat*o,a=Math.sin(n)*Math.sin(i)+Math.cos(n)*Math.cos(i)*Math.cos((e.lng-t.lng)*o);return 6371e3*Math.acos(Math.min(a,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(){DOM.remove(this._container),this._map.off(\"move\",this._onMove),this._map=void 0},module.exports=ScaleControl;\n},{\"../../util/dom\":209,\"../../util/util\":223}],188:[function(_dereq_,module,exports){\n\"use strict\";\n},{}],189:[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&&(DOM.remove(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\":59,\"../../util/dom\":209,\"../../util/util\":223,\"../../util/window\":204}],190:[function(_dereq_,module,exports){\n\"use strict\";var util=_dereq_(\"../../util/util\"),DoubleClickZoomHandler=function(l){this._map=l,util.bindAll([\"_onDblClick\"],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(l){this._map.zoomTo(this._map.getZoom()+(l.originalEvent.shiftKey?-1:1),{around:l.lngLat},l)},module.exports=DoubleClickZoomHandler;\n},{\"../../util/util\":223}],191:[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;return!(!e.boxZoom||!e.boxZoom.isActive())||(!(!e.dragRotate||!e.dragRotate.isActive())||(t.touches?t.touches.length>1:!!t.ctrlKey||\"mousemove\"!==t.type&&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;\n},{\"../../util/dom\":209,\"../../util/util\":223,\"../../util/window\":204}],192:[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=e.element||t.getCanvasContainer(),this._button=e.button||\"right\",this._bearingSnap=e.bearingSnap||0,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){if(!(this._map.boxZoom&&this._map.boxZoom.isActive()||this._map.dragPan&&this._map.dragPan.isActive()||this.isActive())){if(\"right\"===this._button){var e=t.ctrlKey?0:2,i=t.button;if(void 0!==window.InstallTrigger&&2===t.button&&t.ctrlKey&&window.navigator.platform.toUpperCase().indexOf(\"MAC\")>=0&&(i=0),i!==e)return}else if(t.ctrlKey||0!==t.button)return;DOM.disableDrag(),window.document.addEventListener(\"mousemove\",this._onMove,{capture:!0}),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){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(window.document.removeEventListener(\"mousemove\",this._onMove,{capture:!0}),window.document.removeEventListener(\"mouseup\",this._onUp),window.removeEventListener(\"blur\",this._onUp),DOM.enableDrag(),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)<e._bearingSnap?i.resetNorth({noMoveStart:!0},{originalEvent:t}):(e._map.moving=!1,e._fireEvent(\"moveend\",t)),e._pitchWithRotate&&e._fireEvent(\"pitchend\",t)};if(r.length<2)return void a();var o=r[0],s=r[r.length-1],h=r[r.length-2],_=i._normalizeBearing(n,h[1]),p=s[1]-o[1],v=p<0?-1:1,d=(s[0]-o[0])/1e3;if(0===p||0===d)return void a();var l=Math.abs(p*(inertiaLinearity/d));l>inertiaMaxSpeed&&(l=inertiaMaxSpeed);var u=l/(inertiaDeceleration*inertiaLinearity);_+=v*l*(u/2),Math.abs(i._normalizeBearing(_,0))<this._bearingSnap&&(_=i._normalizeBearing(0,_)),i.rotateTo(_,{duration:1e3*u,easing:inertiaEasing,noMoveStart:!0},{originalEvent:t})}},DragRotateHandler.prototype._fireEvent=function(t,e){return this._map.fire(t,{originalEvent:e})},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;\n},{\"../../util/dom\":209,\"../../util/util\":223,\"../../util/window\":204}],193:[function(_dereq_,module,exports){\n\"use strict\";function easeOut(e){return e*(2-e)}var util=_dereq_(\"../../util/util\"),panStep=100,bearingStep=15,pitchStep=10,KeyboardHandler=function(e){this._map=e,this._el=e.getCanvasContainer(),util.bindAll([\"_onKeyDown\"],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(),l={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(l,{originalEvent:e})}},module.exports=KeyboardHandler;\n},{\"../../util/util\":223}],194:[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=-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=0;\"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\":202,\"../../util/dom\":209,\"../../util/util\":223,\"../../util/window\":204}],195:[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=10,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;Math.abs(r)>significantRotateThreshold?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();t.length>2&&e-t[0][0]>160;)t.shift()},module.exports=TouchZoomRotateHandler;\n},{\"../../util/dom\":209,\"../../util/util\":223,\"../../util/window\":204}],196:[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.getHashString=function(t){var a=this._map.getCenter(),h=Math.round(100*this._map.getZoom())/100,e=Math.max(0,Math.ceil(Math.log(h)/Math.LN2)),n=Math.round(a.lng*Math.pow(10,e))/Math.pow(10,e),o=Math.round(a.lat*Math.pow(10,e))/Math.pow(10,e),i=this._map.getBearing(),s=this._map.getPitch(),r=\"\";return r+=t?\"#/\"+n+\"/\"+o+\"/\"+h:\"#\"+h+\"/\"+o+\"/\"+n,(i||s)&&(r+=\"/\"+Math.round(10*i)/10),s&&(r+=\"/\"+Math.round(s)),r},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.getHashString();window.history.replaceState(\"\",\"\",t)},module.exports=Hash;\n},{\"../util/util\":223,\"../util/window\":204}],197:[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\"),ref=_dereq_(\"../util/window\"),HTMLImageElement=ref.HTMLImageElement,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_(\"@mapbox/point-geometry\"),AttributionControl=_dereq_(\"./control/attribution_control\"),LogoControl=_dereq_(\"./control/logo_control\"),isSupported=_dereq_(\"mapbox-gl-supported\");_dereq_(\"./events\");var 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,maxTileCacheSize:null,transformRequest:null},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 r=new Transform(e.minZoom,e.maxZoom,e.renderWorldCopies);t.call(this,r,e),this._interactive=e.interactive,this._maxTileCacheSize=e.maxTileCacheSize,this._failIfMajorPerformanceCaveat=e.failIfMajorPerformanceCaveat,this._preserveDrawingBuffer=e.preserveDrawingBuffer,this._trackResize=e.trackResize,this._bearingSnap=e.bearingSnap,this._refreshExpiredTiles=e.refreshExpiredTiles;var i=e.transformRequest;if(this._transformRequest=i?function(t,e){return i(t,e)||{url:t}}:function(t){return{url:t}},\"string\"==typeof e.container){var s=window.document.getElementById(e.container);if(!s)throw new Error(\"Container '\"+e.container+\"' not found.\");this._container=s}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,{localIdeographFontFamily:e.localIdeographFontFamily}),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),r=this._controlPositions[e];return-1!==e.indexOf(\"bottom\")?r.insertBefore(o,r.firstChild):r.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={},r=0;r<t.length;r++)\"\"!==t[r]&&(o[t[r]]=!0);return this._classes=Object.keys(o),this._classOptions=e,this.style&&this.style.updateClasses(),this._update(!0)},e.prototype.hasClass=function(t){return util.warnOnce(\"Style classes are deprecated and will be removed in an upcoming release of Mapbox GL JS.\"),this._classes.indexOf(t)>=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.getMaxBounds=function(){return this.transform.latRange&&2===this.transform.latRange.length&&this.transform.lngRange&&2===this.transform.lngRange.length?new LngLatBounds([this.transform.lngRange[0],this.transform.latRange[0]],[this.transform.lngRange[1],this.transform.latRange[1]]):null},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=null,this.transform.latRange=null,this._update());return this},e.prototype.setMinZoom=function(t){if((t=null===t||void 0===t?defaultMinZoom:t)>=defaultMinZoom&&t<=this.transform.maxZoom)return this.transform.minZoom=t,this._update(),this.getZoom()<t&&this.setZoom(t),this;throw new Error(\"minZoom must be between \"+defaultMinZoom+\" and the current maxZoom, inclusive\")},e.prototype.getMinZoom=function(){return this.transform.minZoom},e.prototype.setMaxZoom=function(t){if((t=null===t||void 0===t?defaultMaxZoom:t)>=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,r){var i=this;if(void 0===r)return t.prototype.on.call(this,e,o);var s=function(){if(\"mouseenter\"===e||\"mouseover\"===e){var t=!1;return{layer:o,listener:r,delegates:{mousemove:function(s){var n=i.getLayer(o)?i.queryRenderedFeatures(s.point,{layers:[o]}):[];n.length?t||(t=!0,r.call(i,util.extend({features:n},s,{type:e}))):t=!1},mouseout:function(){t=!1}}}}if(\"mouseleave\"===e||\"mouseout\"===e){var s=!1;return{layer:o,listener:r,delegates:{mousemove:function(t){(i.getLayer(o)?i.queryRenderedFeatures(t.point,{layers:[o]}):[]).length?s=!0:s&&(s=!1,r.call(i,util.extend({},t,{type:e})))},mouseout:function(t){s&&(s=!1,r.call(i,util.extend({},t,{type:e})))}}}}var n=function(t){var e=i.getLayer(o)?i.queryRenderedFeatures(t.point,{layers:[o]}):[];e.length&&r.call(i,util.extend({features:e},t))};return{layer:o,listener:r,delegates:(a={},a[e]=n,a)};var a}();this._delegatedListeners=this._delegatedListeners||{},this._delegatedListeners[e]=this._delegatedListeners[e]||[],this._delegatedListeners[e].push(s);for(var n in s.delegates)i.on(n,s.delegates[n]);return this},e.prototype.off=function(e,o,r){var i=this;if(void 0===r)return t.prototype.off.call(this,e,o);if(this._delegatedListeners&&this._delegatedListeners[e])for(var s=this._delegatedListeners[e],n=0;n<s.length;n++){var a=s[n];if(a.layer===o&&a.listener===r){for(var h in a.delegates)i.off(h,a.delegates[h]);return s.splice(n,1),i}}return this},e.prototype.queryRenderedFeatures=function(){for(var t=[],e=arguments.length;e--;)t[e]=arguments[e];var o,r={};return 2===t.length?(o=arguments[0],r=arguments[1]):1===t.length&&function(t){return t instanceof Point||Array.isArray(t)}(t[0])?o=t[0]:1===t.length&&(r=t[0]),this.style?this.style.queryRenderedFeatures(this._makeQueryGeometry(o),r,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;if(t instanceof Point||\"number\"==typeof t[0]){o=[Point.convert(t)]}else{var r=[Point.convert(t[0]),Point.convert(t[1])];o=[r[0],new Point(r[1].x,r[0].y),r[1],new Point(r[0].x,r[1].y),r[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){if((!e||!1!==e.diff&&!e.localIdeographFontFamily)&&this.style&&t&&!(t instanceof Style)&&\"string\"!=typeof t)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),this.off(\"move\",this.style._redoPlacement)),t?(this.style=t instanceof Style?t:new Style(t,this,e||{}),this.style.setEventedParent(this,{style:this.style}),this.on(\"rotate\",this.style._redoPlacement),this.on(\"pitch\",this.style._redoPlacement),this.on(\"move\",this.style._redoPlacement),this):(this.style=null,this)},e.prototype.getStyle=function(){if(this.style)return this.style.serialize()},e.prototype.isStyleLoaded=function(){return this.style?this.style.loaded():util.warnOnce(\"There is no style added to the map.\")},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.areTilesLoaded=function(){var t=this.style&&this.style.sourceCaches;for(var e in t){var o=t[e],r=o._tiles;for(var i in r){var s=r[i];if(\"loaded\"!==s.state&&\"errored\"!==s.state)return!1}}return!0},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){void 0===o&&(o={});var r=o.pixelRatio;void 0===r&&(r=1);var i=o.sdf;if(void 0===i&&(i=!1),e instanceof HTMLImageElement)e=browser.getImageData(e);else if(void 0===e.width||void 0===e.height)return this.fire(\"error\",{error:new Error(\"Invalid arguments to map.addImage(). The second argument must be an `HTMLImageElement`, `ImageData`, or object with `width`, `height`, and `data` properties with the same format as `ImageData`\")});this.style.addImage(t,{data:e,pixelRatio:r,sdf:i})},e.prototype.removeImage=function(t){this.style.removeImage(t)},e.prototype.loadImage=function(t,e){ajax.getImage(this._transformRequest(t,ajax.ResourceType.Image),e)},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,r){return this.style.setPaintProperty(t,e,o,r),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 r=this._controlContainer=DOM.create(\"div\",\"mapboxgl-control-container\",t),i=this._controlPositions={};[\"top-left\",\"top-right\",\"bottom-left\",\"bottom-right\"].forEach(function(t){i[t]=DOM.create(\"div\",\"mapboxgl-ctrl-\"+t,r)})},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);if(!e)return void this.fire(\"error\",{error:new Error(\"Failed to initialize WebGL\")});this.painter=new Painter(e,this.transform)},e.prototype._contextLost=function(t){t.preventDefault(),this._frameId&&(browser.cancelFrame(this._frameId),this._frameId=null),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._frameId=null,this.setStyle(null),void 0!==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\":58,\"../geo/lng_lat_bounds\":59,\"../geo/transform\":60,\"../render/painter\":79,\"../style/animation_loop\":150,\"../style/style\":156,\"../util/ajax\":201,\"../util/browser\":202,\"../util/dom\":209,\"../util/util\":223,\"../util/window\":204,\"./bind_handlers\":180,\"./camera\":181,\"./control/attribution_control\":182,\"./control/logo_control\":185,\"./events\":188,\"./hash\":196,\"@mapbox/point-geometry\":2,\"mapbox-gl-supported\":28}],198:[function(_dereq_,module,exports){\n\"use strict\";var DOM=_dereq_(\"../util/dom\"),LngLat=_dereq_(\"../geo/lng_lat\"),Point=_dereq_(\"@mapbox/point-geometry\"),smartWrap=_dereq_(\"../util/smart_wrap\"),ref=_dereq_(\"../util/util\"),bindAll=ref.bindAll,Marker=function(t,e){this._offset=Point.convert(e&&e.offset||[0,0]),bindAll([\"_update\",\"_onMapClick\"],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),delete this._map),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._pos=null,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&&(\"offset\"in t.options||(t.options.offset=this._offset),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;return t?(t.isOpen()?t.remove():t.addTo(this._map),this):this},Marker.prototype._update=function(t){this._map&&(this._map.transform.renderWorldCopies&&(this._lngLat=smartWrap(this._lngLat,this._pos,this._map.transform)),this._pos=this._map.project(this._lngLat)._add(this._offset),t&&\"moveend\"!==t.type||(this._pos=this._pos.round()),DOM.setTransform(this._element,\"translate(-50%, -50%) translate(\"+this._pos.x+\"px, \"+this._pos.y+\"px)\"))},module.exports=Marker;\n},{\"../geo/lng_lat\":58,\"../util/dom\":209,\"../util/smart_wrap\":219,\"../util/util\":223,\"@mapbox/point-geometry\":2}],199:[function(_dereq_,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(t instanceof Point||Array.isArray(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))}var util=_dereq_(\"../util/util\"),Evented=_dereq_(\"../util/evented\"),DOM=_dereq_(\"../util/dom\"),LngLat=_dereq_(\"../geo/lng_lat\"),Point=_dereq_(\"@mapbox/point-geometry\"),window=_dereq_(\"../util/window\"),smartWrap=_dereq_(\"../util/smart_wrap\"),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&&DOM.remove(this._content),this._container&&(DOM.remove(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._pos=null,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))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&&DOM.remove(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.setAttribute(\"aria-label\",\"Close popup\"),this._closeButton.innerHTML=\"&#215;\",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)),this._map.transform.renderWorldCopies&&(this._lngLat=smartWrap(this._lngLat,this._pos,this._map.transform));var t=this._pos=this._map.project(this._lngLat),o=this.options.anchor,e=normalizeOffset(this.options.offset);if(!o){var n=this._container.offsetWidth,i=this._container.offsetHeight;o=t.y+e.bottom.y<i?[\"top\"]:t.y>this._map.transform.height-i?[\"bottom\"]:[],t.x<n/2?o.push(\"left\"):t.x>this._map.transform.width-n/2&&o.push(\"right\"),o=0===o.length?\"bottom\":o.join(\"-\")}var r=t.add(e[o]).round(),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-\"+o),DOM.setTransform(this._container,s[o]+\" translate(\"+r.x+\"px,\"+r.y+\"px)\")}},o.prototype._onClickClose=function(){this.remove()},o}(Evented);module.exports=Popup;\n},{\"../geo/lng_lat\":58,\"../util/dom\":209,\"../util/evented\":210,\"../util/smart_wrap\":219,\"../util/util\":223,\"../util/window\":204,\"@mapbox/point-geometry\":2}],200:[function(_dereq_,module,exports){\n\"use strict\";var util=_dereq_(\"./util\"),Actor=function(t,e,r){this.target=t,this.parent=e,this.mapId=r,this.callbacks={},this.callbackID=0,util.bindAll([\"receive\"],this),this.target.addEventListener(\"message\",this.receive,!1)};Actor.prototype.send=function(t,e,r,a,i){var s=r?this.mapId+\":\"+this.callbackID++:null;r&&(this.callbacks[s]=r),this.target.postMessage({targetMapId:i,sourceMapId:this.mapId,type:t,id:String(s),data:e},a)},Actor.prototype.receive=function(t){var e,r=this,a=t.data,i=a.id;if(!a.targetMapId||this.mapId===a.targetMapId){var s=function(t,e,a){r.target.postMessage({sourceMapId:r.mapId,type:\"<response>\",id:String(i),error:t?String(t):null,data:e},a)};if(\"<response>\"===a.type)e=this.callbacks[a.id],delete this.callbacks[a.id],e&&a.error?e(new Error(a.error)):e&&e(null,a.data);else if(void 0!==a.id&&this.parent[a.type])this.parent[a.type](a.sourceMapId,a.data,s);else if(void 0!==a.id&&this.parent.getWorkerSource){var o=a.type.split(\".\"),p=this.parent.getWorkerSource(a.sourceMapId,o[0]);p[o[1]](a.data,s)}else this.parent[a.type](a.data)}},Actor.prototype.remove=function(){this.target.removeEventListener(\"message\",this.receive,!1)},module.exports=Actor;\n},{\"./util\":223}],201:[function(_dereq_,module,exports){\n\"use strict\";function makeRequest(e){var t=new window.XMLHttpRequest;t.open(\"GET\",e.url,!0);for(var r in e.headers)t.setRequestHeader(r,e.headers[r]);return t.withCredentials=\"include\"===e.credentials,t}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\"),ResourceType={Unknown:\"Unknown\",Style:\"Style\",Source:\"Source\",Tile:\"Tile\",Glyphs:\"Glyphs\",SpriteImage:\"SpriteImage\",SpriteJSON:\"SpriteJSON\",Image:\"Image\"};exports.ResourceType=ResourceType,\"function\"==typeof Object.freeze&&Object.freeze(ResourceType);var 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=makeRequest(e);return r.setRequestHeader(\"Accept\",\"application/json\"),r.onerror=function(){t(new Error(r.statusText))},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=makeRequest(e);return r.responseType=\"arraybuffer\",r.onerror=function(){t(new Error(r.statusText))},r.onload=function(){var e=r.response;if(0===e.byteLength&&200===r.status)return t(new Error(\"http status 200 returned without content.\"));r.status>=200&&r.status<300&&r.response?t(null,{data:e,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)t(e);else if(r){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<e.length;n++){var o=window.document.createElement(\"source\");sameOrigin(e[n])||(r.crossOrigin=\"Anonymous\"),o.src=e[n],r.appendChild(o)}return r};\n},{\"./window\":204}],202:[function(_dereq_,module,exports){\n\"use strict\";var window=_dereq_(\"./window\"),now=window.performance&&window.performance.now?window.performance.now.bind(window.performance):Date.now.bind(Date),frame=window.requestAnimationFrame||window.mozRequestAnimationFrame||window.webkitRequestAnimationFrame||window.msRequestAnimationFrame,cancel=window.cancelAnimationFrame||window.mozCancelAnimationFrame||window.webkitCancelAnimationFrame||window.msCancelAnimationFrame;module.exports={now:now,frame:function(e){return frame(e)},cancelFrame:function(e){return cancel(e)},timed:function(e,n,t){function a(){if(!i){var r=now();r>=o+n?e.call(t,1):(e.call(t,(r-o)/n),frame(a))}}if(!n)return e.call(t,1),null;var i=!1,o=now();return frame(a),function(){i=!0}},getImageData:function(e){var n=window.document.createElement(\"canvas\"),t=n.getContext(\"2d\");if(!t)throw new Error(\"failed to create canvas 2d context\");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)},hardwareConcurrency:window.navigator.hardwareConcurrency||4,get devicePixelRatio(){return window.devicePixelRatio},supportsWebp:!1};var webpImgTest=window.document.createElement(\"img\");webpImgTest.onload=function(){module.exports.supportsWebp=!0},webpImgTest.src=\"data:image/webp;base64,UklGRh4AAABXRUJQVlA4TBEAAAAvAQAAAAfQ//73v/+BiOh/AAA=\";\n},{\"./window\":204}],203:[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\":105,\"../window\":204,\"webworkify\":39}],204:[function(_dereq_,module,exports){\n\"use strict\";module.exports=self;\n},{}],205:[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;i<a;i++){var l=calculateSignedArea(e[i]);0!==l&&(e[i].area=Math.abs(l),void 0===u&&(u=l<0),u===l<0?(t&&c.push(t),t=[e[i]]):t.push(e[i]))}if(t&&c.push(t),r>1)for(var n=0;n<c.length;n++)c[n].length<=r||(quickselect(c[n],r,1,c[n].length-1,compareAreas),c[n]=c[n].slice(0,r));return c};\n},{\"./util\":223,\"quickselect\":31}],206:[function(_dereq_,module,exports){\n\"use strict\";var config={API_URL:\"https://api.mapbox.com\",REQUIRE_ACCESS_TOKEN:!0,ACCESS_TOKEN:null};module.exports=config;\n},{}],207:[function(_dereq_,module,exports){\n\"use strict\";var DictionaryCoder=function(r){var t=this;this._stringToNumber={},this._numberToString=[];for(var o=0;o<r.length;o++){var i=r[o];t._stringToNumber[i]=o,t._numberToString[o]=i}};DictionaryCoder.prototype.encode=function(r){return this._stringToNumber[r]},DictionaryCoder.prototype.decode=function(r){return this._numberToString[r]},module.exports=DictionaryCoder;\n},{}],208:[function(_dereq_,module,exports){\n\"use strict\";var util=_dereq_(\"./util\"),Actor=_dereq_(\"./actor\"),Dispatcher=function(t,r){var o=this;this.workerPool=t,this.actors=[],this.currentActor=0,this.id=util.uniqueId();for(var i=this.workerPool.acquire(this.id),e=0;e<i.length;e++){var s=i[e],c=new Actor(s,r,o.id);c.name=\"Worker \"+e,o.actors.push(c)}};Dispatcher.prototype.broadcast=function(t,r,o){o=o||function(){},util.asyncAll(this.actors,function(o,i){o.send(t,r,i)},o)},Dispatcher.prototype.send=function(t,r,o,i,e){return(\"number\"!=typeof i||isNaN(i))&&(i=this.currentActor=(this.currentActor+1)%this.actors.length),this.actors[i].send(t,r,o,e),i},Dispatcher.prototype.remove=function(){this.actors.forEach(function(t){t.remove()}),this.actors=[],this.workerPool.release(this.id)},module.exports=Dispatcher;\n},{\"./actor\":200,\"./util\":223}],209:[function(_dereq_,module,exports){\n\"use strict\";function testProp(e){for(var t=0;t<e.length;t++)if(e[t]in docStyle)return e[t];return e[0]}var Point=_dereq_(\"@mapbox/point-geometry\"),window=_dereq_(\"./window\");exports.create=function(e,t,o){var n=window.document.createElement(e);return t&&(n.className=t),o&&o.appendChild(n),n};var docStyle=window.document.documentElement.style,selectProp=testProp([\"userSelect\",\"MozUserSelect\",\"WebkitUserSelect\",\"msUserSelect\"]),userSelect;exports.disableDrag=function(){selectProp&&(userSelect=docStyle[selectProp],docStyle[selectProp]=\"none\")},exports.enableDrag=function(){selectProp&&(docStyle[selectProp]=userSelect)};var transformProp=testProp([\"transform\",\"WebkitTransform\"]);exports.setTransform=function(e,t){e.style[transformProp]=t};var suppressClick=function(e){e.preventDefault(),e.stopPropagation(),window.removeEventListener(\"click\",suppressClick,!0)};exports.suppressClick=function(){window.addEventListener(\"click\",suppressClick,!0),window.setTimeout(function(){window.removeEventListener(\"click\",suppressClick,!0)},0)},exports.mousePos=function(e,t){var o=e.getBoundingClientRect();return t=t.touches?t.touches[0]:t,new Point(t.clientX-o.left-e.clientLeft,t.clientY-o.top-e.clientTop)},exports.touchPos=function(e,t){for(var o=e.getBoundingClientRect(),n=[],r=\"touchend\"===t.type?t.changedTouches:t.touches,s=0;s<r.length;s++)n.push(new Point(r[s].clientX-o.left-e.clientLeft,r[s].clientY-o.top-e.clientTop));return n},exports.remove=function(e){e.parentNode&&e.parentNode.removeChild(e)};\n},{\"./window\":204,\"@mapbox/point-geometry\":2}],210:[function(_dereq_,module,exports){\n\"use strict\";function _addEventListener(e,t,n){n[e]=n[e]||[],n[e].push(t)}function _removeEventListener(e,t,n){if(n&&n[e]){var i=n[e].indexOf(t);-1!==i&&n[e].splice(i,1)}}var util=_dereq_(\"./util\"),Evented=function(){};Evented.prototype.on=function(e,t){return this._listeners=this._listeners||{},_addEventListener(e,t,this._listeners),this},Evented.prototype.off=function(e,t){return _removeEventListener(e,t,this._listeners),_removeEventListener(e,t,this._oneTimeListeners),this},Evented.prototype.once=function(e,t){return this._oneTimeListeners=this._oneTimeListeners||{},_addEventListener(e,t,this._oneTimeListeners),this},Evented.prototype.fire=function(e,t){var n=this;if(this.listens(e)){t=util.extend({},t,{type:e,target:this});for(var i=this._listeners&&this._listeners[e]?this._listeners[e].slice():[],s=0;s<i.length;s++)i[s].call(n,t);for(var r=this._oneTimeListeners&&this._oneTimeListeners[e]?this._oneTimeListeners[e].slice():[],o=0;o<r.length;o++)r[o].call(n,t),_removeEventListener(e,r[o],n._oneTimeListeners);this._eventedParent&&this._eventedParent.fire(e,util.extend({},t,\"function\"==typeof this._eventedParentData?this._eventedParentData():this._eventedParentData))}else util.endsWith(e,\"error\")&&console.error(t&&t.error||t||\"Empty error event\");return this},Evented.prototype.listens=function(e){return this._listeners&&this._listeners[e]&&this._listeners[e].length>0||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\":223}],211:[function(_dereq_,module,exports){\n\"use strict\";function compareMax(e,t){return t.max-e.max}function Cell(e,t,n,o){this.p=new Point(e,t),this.h=n,this.d=pointToPolygonDist(this.p,o),this.max=this.d+this.h*Math.SQRT2}function pointToPolygonDist(e,t){for(var n=!1,o=1/0,r=0;r<t.length;r++)for(var i=t[r],l=0,u=i.length,a=u-1;l<u;a=l++){var s=i[l],p=i[a];s.y>e.y!=p.y>e.y&&e.x<(p.x-s.x)*(e.y-s.y)/(p.y-s.y)+s.x&&(n=!n),o=Math.min(o,distToSegmentSquared(e,s,p))}return(n?1:-1)*Math.sqrt(o)}function getCentroidCell(e){for(var t=0,n=0,o=0,r=e[0],i=0,l=r.length,u=l-1;i<l;u=i++){var a=r[i],s=r[u],p=a.x*s.y-s.x*a.y;n+=(a.x+s.x)*p,o+=(a.y+s.y)*p,t+=3*p}return new Cell(n/t,o/t,0,e)}var Queue=_dereq_(\"tinyqueue\"),Point=_dereq_(\"@mapbox/point-geometry\"),distToSegmentSquared=_dereq_(\"./intersection_tests\").distToSegmentSquared;module.exports=function(e,t,n){void 0===t&&(t=1),void 0===n&&(n=!1);for(var o=1/0,r=1/0,i=-1/0,l=-1/0,u=e[0],a=0;a<u.length;a++){var s=u[a];(!a||s.x<o)&&(o=s.x),(!a||s.y<r)&&(r=s.y),(!a||s.x>i)&&(i=s.x),(!a||s.y>l)&&(l=s.y)}var p=i-o,h=l-r,d=Math.min(p,h),x=d/2,y=new Queue(null,compareMax);if(0===d)return new Point(o,r);for(var g=o;g<i;g+=d)for(var f=r;f<l;f+=d)y.push(new Cell(g+x,f+x,x,e));for(var m=getCentroidCell(e),v=y.length;y.length;){var c=y.pop();(c.d>m.d||!m.d)&&(m=c,n&&console.log(\"found best %d after %d probes\",Math.round(1e4*c.d)/1e4,v)),c.max-m.d<=t||(x=c.h/2,y.push(new Cell(c.p.x-x,c.p.y-x,x,e)),y.push(new Cell(c.p.x+x,c.p.y-x,x,e)),y.push(new Cell(c.p.x-x,c.p.y+x,x,e)),y.push(new Cell(c.p.x+x,c.p.y+x,x,e)),v+=4)}return n&&(console.log(\"num probes: \"+v),console.log(\"best distance: \"+m.d)),m.p};\n},{\"./intersection_tests\":214,\"@mapbox/point-geometry\":2,\"tinyqueue\":33}],212:[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\":226}],213:[function(_dereq_,module,exports){\n\"use strict\";function createImage(e,t,i){var h=e.width,a=e.height;if(i){if(i.length!==h*a*t)throw new RangeError(\"mismatched image size\")}else i=new Uint8Array(h*a*t);return{width:h,height:a,data:i}}function resizeImage(e,t,i){var h=t.width,a=t.height;if(h===e.width&&a===e.height)return e;var r=createImage({width:h,height:a},i);copyImage(e,r,{x:0,y:0},{x:0,y:0},{width:Math.min(e.width,h),height:Math.min(e.height,a)},i),e.width=h,e.height=a,e.data=r.data}function copyImage(e,t,i,h,a,r){if(0===a.width||0===a.height)return t;if(a.width>e.width||a.height>e.height||i.x>e.width-a.width||i.y>e.height-a.height)throw new RangeError(\"out of range source coordinates for image copy\");if(a.width>t.width||a.height>t.height||h.x>t.width-a.width||h.y>t.height-a.height)throw new RangeError(\"out of range destination coordinates for image copy\");for(var g=e.data,n=t.data,o=0;o<a.height;o++)for(var m=((i.y+o)*e.width+i.x)*r,c=((h.y+o)*t.width+h.x)*r,d=0;d<a.width*r;d++)n[c+d]=g[m+d];return t}var AlphaImage=function(){};AlphaImage.create=function(e,t){return createImage(e,1,t)},AlphaImage.resize=function(e,t){resizeImage(e,t,1)},AlphaImage.copy=function(e,t,i,h,a){copyImage(e,t,i,h,a,1)};var RGBAImage=function(){};RGBAImage.create=function(e,t){return createImage(e,4,t)},RGBAImage.resize=function(e,t){resizeImage(e,t,4)},RGBAImage.copy=function(e,t,i,h,a){copyImage(e,t,i,h,a,4)},module.exports={AlphaImage:AlphaImage,RGBAImage:RGBAImage};\n},{}],214:[function(_dereq_,module,exports){\n\"use strict\";function polygonIntersectsPolygon(n,t){for(var e=0;e<n.length;e++)if(polygonContainsPoint(t,n[e]))return!0;for(var r=0;r<t.length;r++)if(polygonContainsPoint(n,t[r]))return!0;return!!lineIntersectsLine(n,t)}function multiPolygonIntersectsBufferedMultiPoint(n,t,e){for(var r=0;r<n.length;r++)for(var o=n[r],i=0;i<t.length;i++)for(var l=t[i],u=0;u<l.length;u++){var s=l[u];if(polygonContainsPoint(o,s))return!0;if(pointIntersectsBufferedLine(s,o,e))return!0}return!1}function multiPolygonIntersectsMultiPolygon(n,t){if(1===n.length&&1===n[0].length)return multiPolygonContainsPoint(t,n[0][0]);for(var e=0;e<t.length;e++)for(var r=t[e],o=0;o<r.length;o++)if(multiPolygonContainsPoint(n,r[o]))return!0;for(var i=0;i<n.length;i++){for(var l=n[i],u=0;u<l.length;u++)if(multiPolygonContainsPoint(t,l[u]))return!0;for(var s=0;s<t.length;s++)if(lineIntersectsLine(l,t[s]))return!0}return!1}function multiPolygonIntersectsBufferedMultiLine(n,t,e){for(var r=0;r<t.length;r++)for(var o=t[r],i=0;i<n.length;i++){var l=n[i];if(l.length>=3)for(var u=0;u<o.length;u++)if(polygonContainsPoint(l,o[u]))return!0;if(lineIntersectsBufferedLine(l,o,e))return!0}return!1}function lineIntersectsBufferedLine(n,t,e){if(n.length>1){if(lineIntersectsLine(n,t))return!0;for(var r=0;r<t.length;r++)if(pointIntersectsBufferedLine(t[r],n,e))return!0}for(var o=0;o<n.length;o++)if(pointIntersectsBufferedLine(n[o],t,e))return!0;return!1}function lineIntersectsLine(n,t){if(0===n.length||0===t.length)return!1;for(var e=0;e<n.length-1;e++)for(var r=n[e],o=n[e+1],i=0;i<t.length-1;i++){var l=t[i],u=t[i+1];if(lineSegmentIntersectsLineSegment(r,o,l,u))return!0}return!1}function lineSegmentIntersectsLineSegment(n,t,e,r){return isCounterClockwise(n,e,r)!==isCounterClockwise(t,e,r)&&isCounterClockwise(n,t,e)!==isCounterClockwise(n,t,r)}function pointIntersectsBufferedLine(n,t,e){var r=e*e;if(1===t.length)return n.distSqr(t[0])<r;for(var o=1;o<t.length;o++){if(distToSegmentSquared(n,t[o-1],t[o])<r)return!0}return!1}function distToSegmentSquared(n,t,e){var r=t.distSqr(e);if(0===r)return n.distSqr(t);var o=((n.x-t.x)*(e.x-t.x)+(n.y-t.y)*(e.y-t.y))/r;return o<0?n.distSqr(t):o>1?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;l<n.length;l++){e=n[l];for(var u=0,s=e.length-1;u<e.length;s=u++)r=e[u],o=e[s],r.y>t.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;r<n.length;o=r++){var i=n[r],l=n[o];i.y>t.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 ref=_dereq_(\"./util\"),isCounterClockwise=ref.isCounterClockwise;module.exports={multiPolygonIntersectsBufferedMultiPoint:multiPolygonIntersectsBufferedMultiPoint,multiPolygonIntersectsMultiPolygon:multiPolygonIntersectsMultiPolygon,multiPolygonIntersectsBufferedMultiLine:multiPolygonIntersectsBufferedMultiLine,polygonIntersectsPolygon:polygonIntersectsPolygon,distToSegmentSquared:distToSegmentSquared};\n},{\"./util\":223}],215:[function(_dereq_,module,exports){\n\"use strict\";var unicodeBlockLookup={\"Latin-1 Supplement\":function(n){return n>=128&&n<=255},Arabic:function(n){return n>=1536&&n<=1791},\"Arabic Supplement\":function(n){return n>=1872&&n<=1919},\"Arabic Extended-A\":function(n){return n>=2208&&n<=2303},\"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},\"Arabic Presentation Forms-A\":function(n){return n>=64336&&n<=65023},\"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},\"Arabic Presentation Forms-B\":function(n){return n>=65136&&n<=65279},\"Halfwidth and Fullwidth Forms\":function(n){return n>=65280&&n<=65519}};module.exports=unicodeBlockLookup;\n},{}],216:[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){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;\n},{}],217:[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,\"/\"!==t.path&&(r.path=\"\"+t.path+r.path),!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<r.length;e++)0===r[e].indexOf(\"access_token=tk.\")&&(r[e]=\"access_token=\"+(config.ACCESS_TOKEN||\"\"))}function parseUrl(r){var e=r.match(urlRe);if(!e)throw new Error(\"Unable to parse URL object\");return{protocol:e[1],authority:e[2],path:e[3]||\"/\",params:e[4]?e[4].split(\"&\"):[]}}function formatUrl(r){var e=r.params.length?\"?\"+r.params.join(\"&\"):\"\";return r.protocol+\"://\"+r.authority+r.path+e}var config=_dereq_(\"./config\"),browser=_dereq_(\"./browser\"),help=\"See https://www.mapbox.com/api-documentation/#access-tokens\";exports.isMapboxURL=isMapboxURL,exports.normalizeStyleURL=function(r,e){if(!isMapboxURL(r))return r;var t=parseUrl(r);return t.path=\"/styles/v1\"+t.path,makeAPIURL(t,e)},exports.normalizeGlyphsURL=function(r,e){if(!isMapboxURL(r))return r;var t=parseUrl(r);return t.path=\"/fonts/v1\"+t.path,makeAPIURL(t,e)},exports.normalizeSourceURL=function(r,e){if(!isMapboxURL(r))return r;var t=parseUrl(r);return t.path=\"/v4/\"+t.authority+\".json\",t.params.push(\"secure\"),makeAPIURL(t,e)},exports.normalizeSpriteURL=function(r,e,t,a){var o=parseUrl(r);return isMapboxURL(r)?(o.path=\"/styles/v1\"+o.path+\"/sprite\"+e+t,makeAPIURL(o,a)):(o.path+=\"\"+e+t,formatUrl(o))};var imageExtensionRe=/(\\.(png|jpg)\\d*)(?=$)/;exports.normalizeTileURL=function(r,e,t){if(!e||!isMapboxURL(e))return r;var a=parseUrl(r),o=browser.devicePixelRatio>=2||512===t?\"@2x\":\"\",p=browser.supportsWebp?\".webp\":\"$1\";return a.path=a.path.replace(imageExtensionRe,\"\"+o+p),replaceTempAccessToken(a.params),formatUrl(a)};var urlRe=/^(\\w+):\\/\\/([^\\/?]*)(\\/[^?]+)?\\??(.+)?/;\n},{\"./browser\":202,\"./config\":206}],218:[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<r.length;i+=1){var s=r[i];if(!exports.charAllowsIdeographicBreaking(s.charCodeAt(0)))return!1}return!0},module.exports.allowsVerticalWritingMode=function(a){for(var i=0,r=a;i<r.length;i+=1){var s=r[i];if(exports.charHasUprightVerticalOrientation(s.charCodeAt(0)))return!0}return!1},module.exports.allowsLetterSpacing=function(a){for(var i=0,r=a;i<r.length;i+=1){var s=r[i];if(!exports.charAllowsLetterSpacing(s.charCodeAt(0)))return!1}return!0},module.exports.charAllowsLetterSpacing=function(a){return!isChar.Arabic(a)&&(!isChar[\"Arabic Supplement\"](a)&&(!isChar[\"Arabic Extended-A\"](a)&&(!isChar[\"Arabic Presentation Forms-A\"](a)&&!isChar[\"Arabic Presentation Forms-B\"](a))))},module.exports.charAllowsIdeographicBreaking=function(a){return!(a<11904)&&(!!isChar[\"Bopomofo Extended\"](a)||(!!isChar.Bopomofo(a)||(!!isChar[\"CJK Compatibility Forms\"](a)||(!!isChar[\"CJK Compatibility Ideographs\"](a)||(!!isChar[\"CJK Compatibility\"](a)||(!!isChar[\"CJK Radicals Supplement\"](a)||(!!isChar[\"CJK Strokes\"](a)||(!!isChar[\"CJK Symbols and Punctuation\"](a)||(!!isChar[\"CJK Unified Ideographs Extension A\"](a)||(!!isChar[\"CJK Unified Ideographs\"](a)||(!!isChar[\"Enclosed CJK Letters and Months\"](a)||(!!isChar[\"Halfwidth and Fullwidth Forms\"](a)||(!!isChar.Hiragana(a)||(!!isChar[\"Ideographic Description Characters\"](a)||(!!isChar[\"Kangxi Radicals\"](a)||(!!isChar[\"Katakana Phonetic Extensions\"](a)||(!!isChar.Katakana(a)||(!!isChar[\"Vertical Forms\"](a)||(!!isChar[\"Yi Radicals\"](a)||!!isChar[\"Yi Syllables\"](a))))))))))))))))))))},exports.charHasUprightVerticalOrientation=function(a){return 746===a||747===a||!(a<4352)&&(!!isChar[\"Bopomofo Extended\"](a)||(!!isChar.Bopomofo(a)||(!(!isChar[\"CJK Compatibility Forms\"](a)||a>=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\":215}],219:[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)<o?n=a:l.locationPoint(i).distSqr(t)<o&&(n=i)}for(;Math.abs(n.lng-l.center.lng)>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\":58}],220:[function(_dereq_,module,exports){\n\"use strict\";function createStructArrayType(t){var r=JSON.stringify(t);if(structArrayTypeCache[r])return structArrayTypeCache[r];var e=void 0===t.alignment?1:t.alignment,i=0,n=0,a=[\"Uint8\"],s=t.members.map(function(t){a.indexOf(t.type)<0&&a.push(t.type);var r=sizeOf(t.type),s=i=align(i,Math.max(e,r)),o=t.components||1;return n=Math.max(n,r),i+=r*o,{name:t.name,type:t.type,components:o,offset:s}}),o=align(i,Math.max(n,e)),p=function(t){function r(){t.apply(this,arguments)}return t&&(r.__proto__=t),r.prototype=Object.create(t&&t.prototype),r.prototype.constructor=r,r}(Struct);p.prototype.alignment=e,p.prototype.size=o;for(var y=0,c=s;y<c.length;y+=1)for(var h=c[y],u=0;u<h.components;u++){var f=h.name;if(h.components>1&&(f+=u),f in p.prototype)throw new Error(f+\" is a reserved name and cannot be used as a member name.\");Object.defineProperty(p.prototype,f,createAccessors(h,u))}var m=function(t){function r(){t.apply(this,arguments)}return t&&(r.__proto__=t),r.prototype=Object.create(t&&t.prototype),r.prototype.constructor=r,r}(StructArray);return m.prototype.members=s,m.prototype.StructType=p,m.prototype.bytesPerElement=o,m.prototype.emplaceBack=createEmplaceBack(s,o),m.prototype._usedTypes=a,structArrayTypeCache[r]=m,m}function align(t,r){return Math.ceil(t/r)*r}function sizeOf(t){return viewTypes[t].BYTES_PER_ELEMENT}function getArrayViewName(t){return t.toLowerCase()}function createEmplaceBack(t,r){for(var e=[],i=[],n=\"var i = this.length;\\nthis.resize(this.length + 1);\\n\",a=0,s=t;a<s.length;a+=1){var o=s[a],p=sizeOf(o.type);e.indexOf(p)<0&&(e.push(p),n+=\"var o\"+p.toFixed(0)+\" = i * \"+(r/p).toFixed(0)+\";\\n\");for(var y=0;y<o.components;y++){var c=\"v\"+i.length,h=\"o\"+p.toFixed(0)+\" + \"+(o.offset/p+y).toFixed(0);n+=\"this.\"+getArrayViewName(o.type)+\"[\"+h+\"] = \"+c+\";\\n\",i.push(c)}}return n+=\"return i;\",new Function(i.toString(),n)}function createMemberComponentString(t,r){var e=\"this._pos\"+sizeOf(t.type).toFixed(0),i=(t.offset/sizeOf(t.type)+r).toFixed(0),n=e+\" + \"+i;return\"this._structArray.\"+getArrayViewName(t.type)+\"[\"+n+\"]\"}function createAccessors(t,r){var e=createMemberComponentString(t,r);return{get:new Function(\"return \"+e+\";\"),set:new Function(\"x\",e+\" = x;\")}}module.exports=createStructArrayType;var viewTypes={Int8:Int8Array,Uint8:Uint8Array,Int16:Int16Array,Uint16:Uint16Array,Int32:Int32Array,Uint32:Uint32Array,Float32:Float32Array},Struct=function(t,r){this._structArray=t,this._pos1=r*this.size,this._pos2=this._pos1/2,this._pos4=this._pos1/4,this._pos8=this._pos1/8},DEFAULT_CAPACITY=128,RESIZE_MULTIPLIER=5,StructArray=function(t){this.isTransferred=!1,void 0!==t?(this.arrayBuffer=t.arrayBuffer,this.length=t.length,this.capacity=this.arrayBuffer.byteLength/this.bytesPerElement,this._refreshViews()):(this.capacity=-1,this.resize(0))};StructArray.serialize=function(){return{members:this.prototype.members,alignment:this.prototype.StructType.prototype.alignment}},StructArray.prototype.serialize=function(t){return this._trim(),t&&(this.isTransferred=!0,t.push(this.arrayBuffer)),{length:this.length,arrayBuffer:this.arrayBuffer}},StructArray.prototype.get=function(t){return new this.StructType(this,t)},StructArray.prototype._trim=function(){this.length!==this.capacity&&(this.capacity=this.length,this.arrayBuffer=this.arrayBuffer.slice(0,this.length*this.bytesPerElement),this._refreshViews())},StructArray.prototype.clear=function(){this.length=0},StructArray.prototype.resize=function(t){if(this.length=t,t>this.capacity){this.capacity=Math.max(t,Math.floor(this.capacity*RESIZE_MULTIPLIER),DEFAULT_CAPACITY),this.arrayBuffer=new ArrayBuffer(this.capacity*this.bytesPerElement);var r=this.uint8;this._refreshViews(),r&&this.uint8.set(r)}},StructArray.prototype._refreshViews=function(){for(var t=this,r=0,e=t._usedTypes;r<e.length;r+=1){var i=e[r];t[getArrayViewName(i)]=new viewTypes[i](t.arrayBuffer)}},StructArray.prototype.toArray=function(t,r){for(var e=this,i=[],n=t;n<r;n++){var a=e.get(n);i.push(a)}return i};var structArrayTypeCache={};\n},{}],221:[function(_dereq_,module,exports){\n\"use strict\";var browser=_dereq_(\"./browser\"),Throttler=function(t,o){this.frequency=t,this.throttledFunction=o,this.lastInvocation=0};Throttler.prototype.invoke=function(){var t=this;if(!this.pendingInvocation){var o=0===this.lastInvocation?0:this.lastInvocation+this.frequency-browser.now();o<=0?(this.lastInvocation=browser.now(),this.throttledFunction()):this.pendingInvocation=setTimeout(function(){t.pendingInvocation=void 0,t.lastInvocation=browser.now(),t.throttledFunction()},o)}},Throttler.prototype.stop=function(){this.pendingInvocation&&(clearTimeout(this.pendingInvocation),this.pendingInvocation=void 0)},module.exports=Throttler;\n},{\"./browser\":202}],222:[function(_dereq_,module,exports){\n\"use strict\";function resolveTokens(e,n){return n.replace(/{([^{}]+)}/g,function(n,r){return r in e?String(e[r]):\"\"})}module.exports=resolveTokens;\n},{}],223:[function(_dereq_,module,exports){\n\"use strict\";var UnitBezier=_dereq_(\"@mapbox/unitbezier\"),Coordinate=_dereq_(\"../geo/coordinate\"),Point=_dereq_(\"@mapbox/point-geometry\");exports.easeCubicInOut=function(r){if(r<=0)return 0;if(r>=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){for(var e=[],t=arguments.length-1;t-- >0;)e[t]=arguments[t+1];for(var n=0,o=e;n<o.length;n+=1){var a=o[n];for(var i in a)r[i]=a[i]}return r},exports.pick=function(r,e){for(var t={},n=0;n<e.length;n++){var o=e[n];o in r&&(t[o]=r[o])}return t};var id=1;exports.uniqueId=function(){return id++},exports.bindAll=function(r,e){r.forEach(function(r){e[r]&&(e[r]=e[r].bind(e))})},exports.getCoordinatesCenter=function(r){for(var e=1/0,t=1/0,n=-1/0,o=-1/0,a=0;a<r.length;a++)e=Math.min(e,r[a].column),t=Math.min(t,r[a].row),n=Math.max(n,r[a].column),o=Math.max(o,r[a].row);var i=n-e,u=o-t,s=Math.max(i,u),c=Math.max(0,Math.floor(-Math.log(s)/Math.LN2));return new Coordinate((e+n)/2,(t+o)/2,0).zoomTo(c)},exports.endsWith=function(r,e){return-1!==r.indexOf(e,r.length-e.length)},exports.mapObject=function(r,e,t){var n=this,o={};for(var a in r)o[a]=e.call(t||n,r[a],a,r);return o},exports.filterObject=function(r,e,t){var n=this,o={};for(var a in r)e.call(t||n,r[a],a,r)&&(o[a]=r[a]);return o},exports.deepEqual=function(r,e){if(Array.isArray(r)){if(!Array.isArray(e)||r.length!==e.length)return!1;for(var t=0;t<r.length;t++)if(!exports.deepEqual(r[t],e[t]))return!1;return!0}if(\"object\"==typeof r&&null!==r&&null!==e){if(\"object\"!=typeof e)return!1;if(Object.keys(r).length!==Object.keys(e).length)return!1;for(var n in r)if(!exports.deepEqual(r[n],e[n]))return!1;return!0}return r===e},exports.clone=function(r){return Array.isArray(r)?r.map(exports.clone):\"object\"==typeof r&&r?exports.mapObject(r,exports.clone):r},exports.arraysIntersect=function(r,e){for(var t=0;t<r.length;t++)if(e.indexOf(r[t])>=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;t<n;o=t++)a=r[t],i=r[o],e+=(i.x-a.x)*(a.y+i.y);return e},exports.isClosedPolygon=function(r){if(r.length<4)return!1;var e=r[0],t=r[r.length-1];return!(Math.abs(e.x-t.x)>0||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\":57,\"@mapbox/point-geometry\":2,\"@mapbox/unitbezier\":5}],224:[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},{}],225:[function(_dereq_,module,exports){\n\"use strict\";var scriptDetection=_dereq_(\"./script_detection\");module.exports=function(t){for(var o=\"\",e=0;e<t.length;e++){var r=t.charCodeAt(e+1)||null,l=t.charCodeAt(e-1)||null;(!r||!scriptDetection.charHasRotatedVerticalOrientation(r)||module.exports.lookup[t[e+1]])&&(!l||!scriptDetection.charHasRotatedVerticalOrientation(l)||module.exports.lookup[t[e-1]])&&module.exports.lookup[t[e]]?o+=module.exports.lookup[t[e]]:o+=t[e]}return o},module.exports.lookup={\"!\":\"︕\",\"#\":\"#\",$:\"$\",\"%\":\"%\",\"&\":\"&\",\"(\":\"︵\",\")\":\"︶\",\"*\":\"*\",\"+\":\"+\",\",\":\"︐\",\"-\":\"︲\",\".\":\"・\",\"/\":\"/\",\":\":\"︓\",\";\":\"︔\",\"<\":\"︿\",\"=\":\"=\",\">\":\"﹀\",\"?\":\"︖\",\"@\":\"@\",\"[\":\"﹇\",\"\\\\\":\"\\",\"]\":\"﹈\",\"^\":\"^\",_:\"︳\",\"`\":\"`\",\"{\":\"︷\",\"|\":\"―\",\"}\":\"︸\",\"~\":\"~\",\"¢\":\"¢\",\"£\":\"£\",\"¥\":\"¥\",\"¦\":\"¦\",\"¬\":\"¬\",\"¯\":\" ̄\",\"–\":\"︲\",\"—\":\"︱\",\"‘\":\"﹃\",\"’\":\"﹄\",\"“\":\"﹁\",\"”\":\"﹂\",\"…\":\"︙\",\"‧\":\"・\",\"₩\":\"₩\",\"、\":\"︑\",\"。\":\"︒\",\"〈\":\"︿\",\"〉\":\"﹀\",\"《\":\"︽\",\"》\":\"︾\",\"「\":\"﹁\",\"」\":\"﹂\",\"『\":\"﹃\",\"』\":\"﹄\",\"【\":\"︻\",\"】\":\"︼\",\"〔\":\"︹\",\"〕\":\"︺\",\"〖\":\"︗\",\"〗\":\"︘\",\"!\":\"︕\",\"(\":\"︵\",\")\":\"︶\",\",\":\"︐\",\"-\":\"︲\",\".\":\"・\",\":\":\"︓\",\";\":\"︔\",\"<\":\"︿\",\">\":\"﹀\",\"?\":\"︖\",\"[\":\"﹇\",\"]\":\"﹈\",\"_\":\"︳\",\"{\":\"︷\",\"|\":\"―\",\"}\":\"︸\",\"⦅\":\"︵\",\"⦆\":\"︶\",\"。\":\"︒\",\"「\":\"﹁\",\"」\":\"﹂\"};\n},{\"./script_detection\":218}],226:[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<o;)e.workers.push(new WebWorker)}return this.active[r]=!0,this.workers.slice()},WorkerPool.prototype.release=function(r){delete this.active[r],0===Object.keys(this.active).length&&(this.workers.forEach(function(r){r.terminate()}),this.workers=null)},module.exports=WorkerPool;\n},{\"../\":63,\"./web_worker\":203}]},{},[63])(63)\n});\n\n\n//# sourceMappingURL=mapbox-gl.js.map\n/* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(0)))\n\n/***/ }),\n/* 2 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\nObject.defineProperty(__webpack_exports__, \"__esModule\", { value: true });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_mapbox_gl__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_mapbox_gl___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_mapbox_gl__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_vue__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__Geshem_vue__ = __webpack_require__(7);\n\n\n\n\n__WEBPACK_IMPORTED_MODULE_0_mapbox_gl___default.a.accessToken = 'pk.eyJ1IjoieXV2YWRtIiwiYSI6ImNpcnMxbzBuaTAwZWdoa25oczlzZmkwbHcifQ.UHtLngbKm9O8945pJm23Nw';\n\nvar vm = new __WEBPACK_IMPORTED_MODULE_1_vue__[\"a\" /* default */]({\n el: '#app',\n render: function render(h) {\n return h(__WEBPACK_IMPORTED_MODULE_2__Geshem_vue__[\"a\" /* default */]);\n }\n});\n\n/***/ }),\n/* 3 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* WEBPACK VAR INJECTION */(function(global, setImmediate) {/*!\n * Vue.js v2.5.2\n * (c) 2014-2017 Evan You\n * Released under the MIT License.\n */\n/* */\n\n// these helpers produces better vm code in JS engines due to their\n// explicitness and function inlining\nfunction isUndef (v) {\n return v === undefined || v === null\n}\n\nfunction isDef (v) {\n return v !== undefined && v !== null\n}\n\nfunction isTrue (v) {\n return v === true\n}\n\nfunction isFalse (v) {\n return v === false\n}\n\n/**\n * Check if value is primitive\n */\nfunction isPrimitive (value) {\n return (\n typeof value === 'string' ||\n typeof value === 'number' ||\n typeof value === 'boolean'\n )\n}\n\n/**\n * Quick object check - this is primarily used to tell\n * Objects from primitive values when we know the value\n * is a JSON-compliant type.\n */\nfunction isObject (obj) {\n return obj !== null && typeof obj === 'object'\n}\n\n/**\n * Get the raw type string of a value e.g. [object Object]\n */\nvar _toString = Object.prototype.toString;\n\nfunction toRawType (value) {\n return _toString.call(value).slice(8, -1)\n}\n\n/**\n * Strict object type check. Only returns true\n * for plain JavaScript objects.\n */\nfunction isPlainObject (obj) {\n return _toString.call(obj) === '[object Object]'\n}\n\nfunction isRegExp (v) {\n return _toString.call(v) === '[object RegExp]'\n}\n\n/**\n * Check if val is a valid array index.\n */\nfunction isValidArrayIndex (val) {\n var n = parseFloat(String(val));\n return n >= 0 && Math.floor(n) === n && isFinite(val)\n}\n\n/**\n * Convert a value to a string that is actually rendered.\n */\nfunction toString (val) {\n return val == null\n ? ''\n : typeof val === 'object'\n ? JSON.stringify(val, null, 2)\n : String(val)\n}\n\n/**\n * Convert a input value to a number for persistence.\n * If the conversion fails, return original string.\n */\nfunction toNumber (val) {\n var n = parseFloat(val);\n return isNaN(n) ? val : n\n}\n\n/**\n * Make a map and return a function for checking if a key\n * is in that map.\n */\nfunction makeMap (\n str,\n expectsLowerCase\n) {\n var map = Object.create(null);\n var list = str.split(',');\n for (var i = 0; i < list.length; i++) {\n map[list[i]] = true;\n }\n return expectsLowerCase\n ? function (val) { return map[val.toLowerCase()]; }\n : function (val) { return map[val]; }\n}\n\n/**\n * Check if a tag is a built-in tag.\n */\nvar isBuiltInTag = makeMap('slot,component', true);\n\n/**\n * Check if a attribute is a reserved attribute.\n */\nvar isReservedAttribute = makeMap('key,ref,slot,slot-scope,is');\n\n/**\n * Remove an item from an array\n */\nfunction remove (arr, item) {\n if (arr.length) {\n var index = arr.indexOf(item);\n if (index > -1) {\n return arr.splice(index, 1)\n }\n }\n}\n\n/**\n * Check whether the object has the property.\n */\nvar hasOwnProperty = Object.prototype.hasOwnProperty;\nfunction hasOwn (obj, key) {\n return hasOwnProperty.call(obj, key)\n}\n\n/**\n * Create a cached version of a pure function.\n */\nfunction cached (fn) {\n var cache = Object.create(null);\n return (function cachedFn (str) {\n var hit = cache[str];\n return hit || (cache[str] = fn(str))\n })\n}\n\n/**\n * Camelize a hyphen-delimited string.\n */\nvar camelizeRE = /-(\\w)/g;\nvar camelize = cached(function (str) {\n return str.replace(camelizeRE, function (_, c) { return c ? c.toUpperCase() : ''; })\n});\n\n/**\n * Capitalize a string.\n */\nvar capitalize = cached(function (str) {\n return str.charAt(0).toUpperCase() + str.slice(1)\n});\n\n/**\n * Hyphenate a camelCase string.\n */\nvar hyphenateRE = /\\B([A-Z])/g;\nvar hyphenate = cached(function (str) {\n return str.replace(hyphenateRE, '-$1').toLowerCase()\n});\n\n/**\n * Simple bind, faster than native\n */\nfunction bind (fn, ctx) {\n function boundFn (a) {\n var l = arguments.length;\n return l\n ? l > 1\n ? fn.apply(ctx, arguments)\n : fn.call(ctx, a)\n : fn.call(ctx)\n }\n // record original fn length\n boundFn._length = fn.length;\n return boundFn\n}\n\n/**\n * Convert an Array-like object to a real Array.\n */\nfunction toArray (list, start) {\n start = start || 0;\n var i = list.length - start;\n var ret = new Array(i);\n while (i--) {\n ret[i] = list[i + start];\n }\n return ret\n}\n\n/**\n * Mix properties into target object.\n */\nfunction extend (to, _from) {\n for (var key in _from) {\n to[key] = _from[key];\n }\n return to\n}\n\n/**\n * Merge an Array of Objects into a single Object.\n */\nfunction toObject (arr) {\n var res = {};\n for (var i = 0; i < arr.length; i++) {\n if (arr[i]) {\n extend(res, arr[i]);\n }\n }\n return res\n}\n\n/**\n * Perform no operation.\n * Stubbing args to make Flow happy without leaving useless transpiled code\n * with ...rest (https://flow.org/blog/2017/05/07/Strict-Function-Call-Arity/)\n */\nfunction noop (a, b, c) {}\n\n/**\n * Always return false.\n */\nvar no = function (a, b, c) { return false; };\n\n/**\n * Return same value\n */\nvar identity = function (_) { return _; };\n\n/**\n * Generate a static keys string from compiler modules.\n */\nfunction genStaticKeys (modules) {\n return modules.reduce(function (keys, m) {\n return keys.concat(m.staticKeys || [])\n }, []).join(',')\n}\n\n/**\n * Check if two values are loosely equal - that is,\n * if they are plain objects, do they have the same shape?\n */\nfunction looseEqual (a, b) {\n if (a === b) { return true }\n var isObjectA = isObject(a);\n var isObjectB = isObject(b);\n if (isObjectA && isObjectB) {\n try {\n var isArrayA = Array.isArray(a);\n var isArrayB = Array.isArray(b);\n if (isArrayA && isArrayB) {\n return a.length === b.length && a.every(function (e, i) {\n return looseEqual(e, b[i])\n })\n } else if (!isArrayA && !isArrayB) {\n var keysA = Object.keys(a);\n var keysB = Object.keys(b);\n return keysA.length === keysB.length && keysA.every(function (key) {\n return looseEqual(a[key], b[key])\n })\n } else {\n /* istanbul ignore next */\n return false\n }\n } catch (e) {\n /* istanbul ignore next */\n return false\n }\n } else if (!isObjectA && !isObjectB) {\n return String(a) === String(b)\n } else {\n return false\n }\n}\n\nfunction looseIndexOf (arr, val) {\n for (var i = 0; i < arr.length; i++) {\n if (looseEqual(arr[i], val)) { return i }\n }\n return -1\n}\n\n/**\n * Ensure a function is called only once.\n */\nfunction once (fn) {\n var called = false;\n return function () {\n if (!called) {\n called = true;\n fn.apply(this, arguments);\n }\n }\n}\n\nvar SSR_ATTR = 'data-server-rendered';\n\nvar ASSET_TYPES = [\n 'component',\n 'directive',\n 'filter'\n];\n\nvar LIFECYCLE_HOOKS = [\n 'beforeCreate',\n 'created',\n 'beforeMount',\n 'mounted',\n 'beforeUpdate',\n 'updated',\n 'beforeDestroy',\n 'destroyed',\n 'activated',\n 'deactivated',\n 'errorCaptured'\n];\n\n/* */\n\nvar config = ({\n /**\n * Option merge strategies (used in core/util/options)\n */\n optionMergeStrategies: Object.create(null),\n\n /**\n * Whether to suppress warnings.\n */\n silent: false,\n\n /**\n * Show production mode tip message on boot?\n */\n productionTip: \"production\" !== 'production',\n\n /**\n * Whether to enable devtools\n */\n devtools: \"production\" !== 'production',\n\n /**\n * Whether to record perf\n */\n performance: false,\n\n /**\n * Error handler for watcher errors\n */\n errorHandler: null,\n\n /**\n * Warn handler for watcher warns\n */\n warnHandler: null,\n\n /**\n * Ignore certain custom elements\n */\n ignoredElements: [],\n\n /**\n * Custom user key aliases for v-on\n */\n keyCodes: Object.create(null),\n\n /**\n * Check if a tag is reserved so that it cannot be registered as a\n * component. This is platform-dependent and may be overwritten.\n */\n isReservedTag: no,\n\n /**\n * Check if an attribute is reserved so that it cannot be used as a component\n * prop. This is platform-dependent and may be overwritten.\n */\n isReservedAttr: no,\n\n /**\n * Check if a tag is an unknown element.\n * Platform-dependent.\n */\n isUnknownElement: no,\n\n /**\n * Get the namespace of an element\n */\n getTagNamespace: noop,\n\n /**\n * Parse the real tag name for the specific platform.\n */\n parsePlatformTagName: identity,\n\n /**\n * Check if an attribute must be bound using property, e.g. value\n * Platform-dependent.\n */\n mustUseProp: no,\n\n /**\n * Exposed for legacy reasons\n */\n _lifecycleHooks: LIFECYCLE_HOOKS\n});\n\n/* */\n\nvar emptyObject = Object.freeze({});\n\n/**\n * Check if a string starts with $ or _\n */\nfunction isReserved (str) {\n var c = (str + '').charCodeAt(0);\n return c === 0x24 || c === 0x5F\n}\n\n/**\n * Define a property.\n */\nfunction def (obj, key, val, enumerable) {\n Object.defineProperty(obj, key, {\n value: val,\n enumerable: !!enumerable,\n writable: true,\n configurable: true\n });\n}\n\n/**\n * Parse simple path.\n */\nvar bailRE = /[^\\w.$]/;\nfunction parsePath (path) {\n if (bailRE.test(path)) {\n return\n }\n var segments = path.split('.');\n return function (obj) {\n for (var i = 0; i < segments.length; i++) {\n if (!obj) { return }\n obj = obj[segments[i]];\n }\n return obj\n }\n}\n\n/* */\n\n// can we use __proto__?\nvar hasProto = '__proto__' in {};\n\n// Browser environment sniffing\nvar inBrowser = typeof window !== 'undefined';\nvar UA = inBrowser && window.navigator.userAgent.toLowerCase();\nvar isIE = UA && /msie|trident/.test(UA);\nvar isIE9 = UA && UA.indexOf('msie 9.0') > 0;\nvar isEdge = UA && UA.indexOf('edge/') > 0;\nvar isAndroid = UA && UA.indexOf('android') > 0;\nvar isIOS = UA && /iphone|ipad|ipod|ios/.test(UA);\nvar isChrome = UA && /chrome\\/\\d+/.test(UA) && !isEdge;\n\n// Firefox has a \"watch\" function on Object.prototype...\nvar nativeWatch = ({}).watch;\n\nvar supportsPassive = false;\nif (inBrowser) {\n try {\n var opts = {};\n Object.defineProperty(opts, 'passive', ({\n get: function get () {\n /* istanbul ignore next */\n supportsPassive = true;\n }\n })); // https://github.com/facebook/flow/issues/285\n window.addEventListener('test-passive', null, opts);\n } catch (e) {}\n}\n\n// this needs to be lazy-evaled because vue may be required before\n// vue-server-renderer can set VUE_ENV\nvar _isServer;\nvar isServerRendering = function () {\n if (_isServer === undefined) {\n /* istanbul ignore if */\n if (!inBrowser && typeof global !== 'undefined') {\n // detect presence of vue-server-renderer and avoid\n // Webpack shimming the process\n _isServer = global['process'].env.VUE_ENV === 'server';\n } else {\n _isServer = false;\n }\n }\n return _isServer\n};\n\n// detect devtools\nvar devtools = inBrowser && window.__VUE_DEVTOOLS_GLOBAL_HOOK__;\n\n/* istanbul ignore next */\nfunction isNative (Ctor) {\n return typeof Ctor === 'function' && /native code/.test(Ctor.toString())\n}\n\nvar hasSymbol =\n typeof Symbol !== 'undefined' && isNative(Symbol) &&\n typeof Reflect !== 'undefined' && isNative(Reflect.ownKeys);\n\nvar _Set;\n/* istanbul ignore if */ // $flow-disable-line\nif (typeof Set !== 'undefined' && isNative(Set)) {\n // use native Set when available.\n _Set = Set;\n} else {\n // a non-standard Set polyfill that only works with primitive keys.\n _Set = (function () {\n function Set () {\n this.set = Object.create(null);\n }\n Set.prototype.has = function has (key) {\n return this.set[key] === true\n };\n Set.prototype.add = function add (key) {\n this.set[key] = true;\n };\n Set.prototype.clear = function clear () {\n this.set = Object.create(null);\n };\n\n return Set;\n }());\n}\n\n/* */\n\nvar warn = noop;\nvar tip = noop;\nvar generateComponentTrace = (noop); // work around flow check\nvar formatComponentName = (noop);\n\nif (false) {\n var hasConsole = typeof console !== 'undefined';\n var classifyRE = /(?:^|[-_])(\\w)/g;\n var classify = function (str) { return str\n .replace(classifyRE, function (c) { return c.toUpperCase(); })\n .replace(/[-_]/g, ''); };\n\n warn = function (msg, vm) {\n var trace = vm ? generateComponentTrace(vm) : '';\n\n if (config.warnHandler) {\n config.warnHandler.call(null, msg, vm, trace);\n } else if (hasConsole && (!config.silent)) {\n console.error((\"[Vue warn]: \" + msg + trace));\n }\n };\n\n tip = function (msg, vm) {\n if (hasConsole && (!config.silent)) {\n console.warn(\"[Vue tip]: \" + msg + (\n vm ? generateComponentTrace(vm) : ''\n ));\n }\n };\n\n formatComponentName = function (vm, includeFile) {\n if (vm.$root === vm) {\n return '<Root>'\n }\n var options = typeof vm === 'function' && vm.cid != null\n ? vm.options\n : vm._isVue\n ? vm.$options || vm.constructor.options\n : vm || {};\n var name = options.name || options._componentTag;\n var file = options.__file;\n if (!name && file) {\n var match = file.match(/([^/\\\\]+)\\.vue$/);\n name = match && match[1];\n }\n\n return (\n (name ? (\"<\" + (classify(name)) + \">\") : \"<Anonymous>\") +\n (file && includeFile !== false ? (\" at \" + file) : '')\n )\n };\n\n var repeat = function (str, n) {\n var res = '';\n while (n) {\n if (n % 2 === 1) { res += str; }\n if (n > 1) { str += str; }\n n >>= 1;\n }\n return res\n };\n\n generateComponentTrace = function (vm) {\n if (vm._isVue && vm.$parent) {\n var tree = [];\n var currentRecursiveSequence = 0;\n while (vm) {\n if (tree.length > 0) {\n var last = tree[tree.length - 1];\n if (last.constructor === vm.constructor) {\n currentRecursiveSequence++;\n vm = vm.$parent;\n continue\n } else if (currentRecursiveSequence > 0) {\n tree[tree.length - 1] = [last, currentRecursiveSequence];\n currentRecursiveSequence = 0;\n }\n }\n tree.push(vm);\n vm = vm.$parent;\n }\n return '\\n\\nfound in\\n\\n' + tree\n .map(function (vm, i) { return (\"\" + (i === 0 ? '---> ' : repeat(' ', 5 + i * 2)) + (Array.isArray(vm)\n ? ((formatComponentName(vm[0])) + \"... (\" + (vm[1]) + \" recursive calls)\")\n : formatComponentName(vm))); })\n .join('\\n')\n } else {\n return (\"\\n\\n(found in \" + (formatComponentName(vm)) + \")\")\n }\n };\n}\n\n/* */\n\n\nvar uid = 0;\n\n/**\n * A dep is an observable that can have multiple\n * directives subscribing to it.\n */\nvar Dep = function Dep () {\n this.id = uid++;\n this.subs = [];\n};\n\nDep.prototype.addSub = function addSub (sub) {\n this.subs.push(sub);\n};\n\nDep.prototype.removeSub = function removeSub (sub) {\n remove(this.subs, sub);\n};\n\nDep.prototype.depend = function depend () {\n if (Dep.target) {\n Dep.target.addDep(this);\n }\n};\n\nDep.prototype.notify = function notify () {\n // stabilize the subscriber list first\n var subs = this.subs.slice();\n for (var i = 0, l = subs.length; i < l; i++) {\n subs[i].update();\n }\n};\n\n// the current target watcher being evaluated.\n// this is globally unique because there could be only one\n// watcher being evaluated at any time.\nDep.target = null;\nvar targetStack = [];\n\nfunction pushTarget (_target) {\n if (Dep.target) { targetStack.push(Dep.target); }\n Dep.target = _target;\n}\n\nfunction popTarget () {\n Dep.target = targetStack.pop();\n}\n\n/* */\n\nvar VNode = function VNode (\n tag,\n data,\n children,\n text,\n elm,\n context,\n componentOptions,\n asyncFactory\n) {\n this.tag = tag;\n this.data = data;\n this.children = children;\n this.text = text;\n this.elm = elm;\n this.ns = undefined;\n this.context = context;\n this.functionalContext = undefined;\n this.functionalOptions = undefined;\n this.functionalScopeId = undefined;\n this.key = data && data.key;\n this.componentOptions = componentOptions;\n this.componentInstance = undefined;\n this.parent = undefined;\n this.raw = false;\n this.isStatic = false;\n this.isRootInsert = true;\n this.isComment = false;\n this.isCloned = false;\n this.isOnce = false;\n this.asyncFactory = asyncFactory;\n this.asyncMeta = undefined;\n this.isAsyncPlaceholder = false;\n};\n\nvar prototypeAccessors = { child: { configurable: true } };\n\n// DEPRECATED: alias for componentInstance for backwards compat.\n/* istanbul ignore next */\nprototypeAccessors.child.get = function () {\n return this.componentInstance\n};\n\nObject.defineProperties( VNode.prototype, prototypeAccessors );\n\nvar createEmptyVNode = function (text) {\n if ( text === void 0 ) text = '';\n\n var node = new VNode();\n node.text = text;\n node.isComment = true;\n return node\n};\n\nfunction createTextVNode (val) {\n return new VNode(undefined, undefined, undefined, String(val))\n}\n\n// optimized shallow clone\n// used for static nodes and slot nodes because they may be reused across\n// multiple renders, cloning them avoids errors when DOM manipulations rely\n// on their elm reference.\nfunction cloneVNode (vnode, deep) {\n var cloned = new VNode(\n vnode.tag,\n vnode.data,\n vnode.children,\n vnode.text,\n vnode.elm,\n vnode.context,\n vnode.componentOptions,\n vnode.asyncFactory\n );\n cloned.ns = vnode.ns;\n cloned.isStatic = vnode.isStatic;\n cloned.key = vnode.key;\n cloned.isComment = vnode.isComment;\n cloned.isCloned = true;\n if (deep && vnode.children) {\n cloned.children = cloneVNodes(vnode.children);\n }\n return cloned\n}\n\nfunction cloneVNodes (vnodes, deep) {\n var len = vnodes.length;\n var res = new Array(len);\n for (var i = 0; i < len; i++) {\n res[i] = cloneVNode(vnodes[i], deep);\n }\n return res\n}\n\n/*\n * not type checking this file because flow doesn't play well with\n * dynamically accessing methods on Array prototype\n */\n\nvar arrayProto = Array.prototype;\nvar arrayMethods = Object.create(arrayProto);[\n 'push',\n 'pop',\n 'shift',\n 'unshift',\n 'splice',\n 'sort',\n 'reverse'\n]\n.forEach(function (method) {\n // cache original method\n var original = arrayProto[method];\n def(arrayMethods, method, function mutator () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n var result = original.apply(this, args);\n var ob = this.__ob__;\n var inserted;\n switch (method) {\n case 'push':\n case 'unshift':\n inserted = args;\n break\n case 'splice':\n inserted = args.slice(2);\n break\n }\n if (inserted) { ob.observeArray(inserted); }\n // notify change\n ob.dep.notify();\n return result\n });\n});\n\n/* */\n\nvar arrayKeys = Object.getOwnPropertyNames(arrayMethods);\n\n/**\n * By default, when a reactive property is set, the new value is\n * also converted to become reactive. However when passing down props,\n * we don't want to force conversion because the value may be a nested value\n * under a frozen data structure. Converting it would defeat the optimization.\n */\nvar observerState = {\n shouldConvert: true\n};\n\n/**\n * Observer class that are attached to each observed\n * object. Once attached, the observer converts target\n * object's property keys into getter/setters that\n * collect dependencies and dispatches updates.\n */\nvar Observer = function Observer (value) {\n this.value = value;\n this.dep = new Dep();\n this.vmCount = 0;\n def(value, '__ob__', this);\n if (Array.isArray(value)) {\n var augment = hasProto\n ? protoAugment\n : copyAugment;\n augment(value, arrayMethods, arrayKeys);\n this.observeArray(value);\n } else {\n this.walk(value);\n }\n};\n\n/**\n * Walk through each property and convert them into\n * getter/setters. This method should only be called when\n * value type is Object.\n */\nObserver.prototype.walk = function walk (obj) {\n var keys = Object.keys(obj);\n for (var i = 0; i < keys.length; i++) {\n defineReactive(obj, keys[i], obj[keys[i]]);\n }\n};\n\n/**\n * Observe a list of Array items.\n */\nObserver.prototype.observeArray = function observeArray (items) {\n for (var i = 0, l = items.length; i < l; i++) {\n observe(items[i]);\n }\n};\n\n// helpers\n\n/**\n * Augment an target Object or Array by intercepting\n * the prototype chain using __proto__\n */\nfunction protoAugment (target, src, keys) {\n /* eslint-disable no-proto */\n target.__proto__ = src;\n /* eslint-enable no-proto */\n}\n\n/**\n * Augment an target Object or Array by defining\n * hidden properties.\n */\n/* istanbul ignore next */\nfunction copyAugment (target, src, keys) {\n for (var i = 0, l = keys.length; i < l; i++) {\n var key = keys[i];\n def(target, key, src[key]);\n }\n}\n\n/**\n * Attempt to create an observer instance for a value,\n * returns the new observer if successfully observed,\n * or the existing observer if the value already has one.\n */\nfunction observe (value, asRootData) {\n if (!isObject(value) || value instanceof VNode) {\n return\n }\n var ob;\n if (hasOwn(value, '__ob__') && value.__ob__ instanceof Observer) {\n ob = value.__ob__;\n } else if (\n observerState.shouldConvert &&\n !isServerRendering() &&\n (Array.isArray(value) || isPlainObject(value)) &&\n Object.isExtensible(value) &&\n !value._isVue\n ) {\n ob = new Observer(value);\n }\n if (asRootData && ob) {\n ob.vmCount++;\n }\n return ob\n}\n\n/**\n * Define a reactive property on an Object.\n */\nfunction defineReactive (\n obj,\n key,\n val,\n customSetter,\n shallow\n) {\n var dep = new Dep();\n\n var property = Object.getOwnPropertyDescriptor(obj, key);\n if (property && property.configurable === false) {\n return\n }\n\n // cater for pre-defined getter/setters\n var getter = property && property.get;\n var setter = property && property.set;\n\n var childOb = !shallow && observe(val);\n Object.defineProperty(obj, key, {\n enumerable: true,\n configurable: true,\n get: function reactiveGetter () {\n var value = getter ? getter.call(obj) : val;\n if (Dep.target) {\n dep.depend();\n if (childOb) {\n childOb.dep.depend();\n if (Array.isArray(value)) {\n dependArray(value);\n }\n }\n }\n return value\n },\n set: function reactiveSetter (newVal) {\n var value = getter ? getter.call(obj) : val;\n /* eslint-disable no-self-compare */\n if (newVal === value || (newVal !== newVal && value !== value)) {\n return\n }\n /* eslint-enable no-self-compare */\n if (false) {\n customSetter();\n }\n if (setter) {\n setter.call(obj, newVal);\n } else {\n val = newVal;\n }\n childOb = !shallow && observe(newVal);\n dep.notify();\n }\n });\n}\n\n/**\n * Set a property on an object. Adds the new property and\n * triggers change notification if the property doesn't\n * already exist.\n */\nfunction set (target, key, val) {\n if (Array.isArray(target) && isValidArrayIndex(key)) {\n target.length = Math.max(target.length, key);\n target.splice(key, 1, val);\n return val\n }\n if (hasOwn(target, key)) {\n target[key] = val;\n return val\n }\n var ob = (target).__ob__;\n if (target._isVue || (ob && ob.vmCount)) {\n \"production\" !== 'production' && warn(\n 'Avoid adding reactive properties to a Vue instance or its root $data ' +\n 'at runtime - declare it upfront in the data option.'\n );\n return val\n }\n if (!ob) {\n target[key] = val;\n return val\n }\n defineReactive(ob.value, key, val);\n ob.dep.notify();\n return val\n}\n\n/**\n * Delete a property and trigger change if necessary.\n */\nfunction del (target, key) {\n if (Array.isArray(target) && isValidArrayIndex(key)) {\n target.splice(key, 1);\n return\n }\n var ob = (target).__ob__;\n if (target._isVue || (ob && ob.vmCount)) {\n \"production\" !== 'production' && warn(\n 'Avoid deleting properties on a Vue instance or its root $data ' +\n '- just set it to null.'\n );\n return\n }\n if (!hasOwn(target, key)) {\n return\n }\n delete target[key];\n if (!ob) {\n return\n }\n ob.dep.notify();\n}\n\n/**\n * Collect dependencies on array elements when the array is touched, since\n * we cannot intercept array element access like property getters.\n */\nfunction dependArray (value) {\n for (var e = (void 0), i = 0, l = value.length; i < l; i++) {\n e = value[i];\n e && e.__ob__ && e.__ob__.dep.depend();\n if (Array.isArray(e)) {\n dependArray(e);\n }\n }\n}\n\n/* */\n\n/**\n * Option overwriting strategies are functions that handle\n * how to merge a parent option value and a child option\n * value into the final value.\n */\nvar strats = config.optionMergeStrategies;\n\n/**\n * Options with restrictions\n */\nif (false) {\n strats.el = strats.propsData = function (parent, child, vm, key) {\n if (!vm) {\n warn(\n \"option \\\"\" + key + \"\\\" can only be used during instance \" +\n 'creation with the `new` keyword.'\n );\n }\n return defaultStrat(parent, child)\n };\n}\n\n/**\n * Helper that recursively merges two data objects together.\n */\nfunction mergeData (to, from) {\n if (!from) { return to }\n var key, toVal, fromVal;\n var keys = Object.keys(from);\n for (var i = 0; i < keys.length; i++) {\n key = keys[i];\n toVal = to[key];\n fromVal = from[key];\n if (!hasOwn(to, key)) {\n set(to, key, fromVal);\n } else if (isPlainObject(toVal) && isPlainObject(fromVal)) {\n mergeData(toVal, fromVal);\n }\n }\n return to\n}\n\n/**\n * Data\n */\nfunction mergeDataOrFn (\n parentVal,\n childVal,\n vm\n) {\n if (!vm) {\n // in a Vue.extend merge, both should be functions\n if (!childVal) {\n return parentVal\n }\n if (!parentVal) {\n return childVal\n }\n // when parentVal & childVal are both present,\n // we need to return a function that returns the\n // merged result of both functions... no need to\n // check if parentVal is a function here because\n // it has to be a function to pass previous merges.\n return function mergedDataFn () {\n return mergeData(\n typeof childVal === 'function' ? childVal.call(this) : childVal,\n typeof parentVal === 'function' ? parentVal.call(this) : parentVal\n )\n }\n } else if (parentVal || childVal) {\n return function mergedInstanceDataFn () {\n // instance merge\n var instanceData = typeof childVal === 'function'\n ? childVal.call(vm)\n : childVal;\n var defaultData = typeof parentVal === 'function'\n ? parentVal.call(vm)\n : parentVal;\n if (instanceData) {\n return mergeData(instanceData, defaultData)\n } else {\n return defaultData\n }\n }\n }\n}\n\nstrats.data = function (\n parentVal,\n childVal,\n vm\n) {\n if (!vm) {\n if (childVal && typeof childVal !== 'function') {\n \"production\" !== 'production' && warn(\n 'The \"data\" option should be a function ' +\n 'that returns a per-instance value in component ' +\n 'definitions.',\n vm\n );\n\n return parentVal\n }\n return mergeDataOrFn.call(this, parentVal, childVal)\n }\n\n return mergeDataOrFn(parentVal, childVal, vm)\n};\n\n/**\n * Hooks and props are merged as arrays.\n */\nfunction mergeHook (\n parentVal,\n childVal\n) {\n return childVal\n ? parentVal\n ? parentVal.concat(childVal)\n : Array.isArray(childVal)\n ? childVal\n : [childVal]\n : parentVal\n}\n\nLIFECYCLE_HOOKS.forEach(function (hook) {\n strats[hook] = mergeHook;\n});\n\n/**\n * Assets\n *\n * When a vm is present (instance creation), we need to do\n * a three-way merge between constructor options, instance\n * options and parent options.\n */\nfunction mergeAssets (\n parentVal,\n childVal,\n vm,\n key\n) {\n var res = Object.create(parentVal || null);\n if (childVal) {\n \"production\" !== 'production' && assertObjectType(key, childVal, vm);\n return extend(res, childVal)\n } else {\n return res\n }\n}\n\nASSET_TYPES.forEach(function (type) {\n strats[type + 's'] = mergeAssets;\n});\n\n/**\n * Watchers.\n *\n * Watchers hashes should not overwrite one\n * another, so we merge them as arrays.\n */\nstrats.watch = function (\n parentVal,\n childVal,\n vm,\n key\n) {\n // work around Firefox's Object.prototype.watch...\n if (parentVal === nativeWatch) { parentVal = undefined; }\n if (childVal === nativeWatch) { childVal = undefined; }\n /* istanbul ignore if */\n if (!childVal) { return Object.create(parentVal || null) }\n if (false) {\n assertObjectType(key, childVal, vm);\n }\n if (!parentVal) { return childVal }\n var ret = {};\n extend(ret, parentVal);\n for (var key$1 in childVal) {\n var parent = ret[key$1];\n var child = childVal[key$1];\n if (parent && !Array.isArray(parent)) {\n parent = [parent];\n }\n ret[key$1] = parent\n ? parent.concat(child)\n : Array.isArray(child) ? child : [child];\n }\n return ret\n};\n\n/**\n * Other object hashes.\n */\nstrats.props =\nstrats.methods =\nstrats.inject =\nstrats.computed = function (\n parentVal,\n childVal,\n vm,\n key\n) {\n if (childVal && \"production\" !== 'production') {\n assertObjectType(key, childVal, vm);\n }\n if (!parentVal) { return childVal }\n var ret = Object.create(null);\n extend(ret, parentVal);\n if (childVal) { extend(ret, childVal); }\n return ret\n};\nstrats.provide = mergeDataOrFn;\n\n/**\n * Default strategy.\n */\nvar defaultStrat = function (parentVal, childVal) {\n return childVal === undefined\n ? parentVal\n : childVal\n};\n\n/**\n * Validate component names\n */\nfunction checkComponents (options) {\n for (var key in options.components) {\n var lower = key.toLowerCase();\n if (isBuiltInTag(lower) || config.isReservedTag(lower)) {\n warn(\n 'Do not use built-in or reserved HTML elements as component ' +\n 'id: ' + key\n );\n }\n }\n}\n\n/**\n * Ensure all props option syntax are normalized into the\n * Object-based format.\n */\nfunction normalizeProps (options, vm) {\n var props = options.props;\n if (!props) { return }\n var res = {};\n var i, val, name;\n if (Array.isArray(props)) {\n i = props.length;\n while (i--) {\n val = props[i];\n if (typeof val === 'string') {\n name = camelize(val);\n res[name] = { type: null };\n } else if (false) {\n warn('props must be strings when using array syntax.');\n }\n }\n } else if (isPlainObject(props)) {\n for (var key in props) {\n val = props[key];\n name = camelize(key);\n res[name] = isPlainObject(val)\n ? val\n : { type: val };\n }\n } else if (false) {\n warn(\n \"Invalid value for option \\\"props\\\": expected an Array or an Object, \" +\n \"but got \" + (toRawType(props)) + \".\",\n vm\n );\n }\n options.props = res;\n}\n\n/**\n * Normalize all injections into Object-based format\n */\nfunction normalizeInject (options, vm) {\n var inject = options.inject;\n var normalized = options.inject = {};\n if (Array.isArray(inject)) {\n for (var i = 0; i < inject.length; i++) {\n normalized[inject[i]] = { from: inject[i] };\n }\n } else if (isPlainObject(inject)) {\n for (var key in inject) {\n var val = inject[key];\n normalized[key] = isPlainObject(val)\n ? extend({ from: key }, val)\n : { from: val };\n }\n } else if (false) {\n warn(\n \"Invalid value for option \\\"inject\\\": expected an Array or an Object, \" +\n \"but got \" + (toRawType(inject)) + \".\",\n vm\n );\n }\n}\n\n/**\n * Normalize raw function directives into object format.\n */\nfunction normalizeDirectives (options) {\n var dirs = options.directives;\n if (dirs) {\n for (var key in dirs) {\n var def = dirs[key];\n if (typeof def === 'function') {\n dirs[key] = { bind: def, update: def };\n }\n }\n }\n}\n\nfunction assertObjectType (name, value, vm) {\n if (!isPlainObject(value)) {\n warn(\n \"Invalid value for option \\\"\" + name + \"\\\": expected an Object, \" +\n \"but got \" + (toRawType(value)) + \".\",\n vm\n );\n }\n}\n\n/**\n * Merge two option objects into a new one.\n * Core utility used in both instantiation and inheritance.\n */\nfunction mergeOptions (\n parent,\n child,\n vm\n) {\n if (false) {\n checkComponents(child);\n }\n\n if (typeof child === 'function') {\n child = child.options;\n }\n\n normalizeProps(child, vm);\n normalizeInject(child, vm);\n normalizeDirectives(child);\n var extendsFrom = child.extends;\n if (extendsFrom) {\n parent = mergeOptions(parent, extendsFrom, vm);\n }\n if (child.mixins) {\n for (var i = 0, l = child.mixins.length; i < l; i++) {\n parent = mergeOptions(parent, child.mixins[i], vm);\n }\n }\n var options = {};\n var key;\n for (key in parent) {\n mergeField(key);\n }\n for (key in child) {\n if (!hasOwn(parent, key)) {\n mergeField(key);\n }\n }\n function mergeField (key) {\n var strat = strats[key] || defaultStrat;\n options[key] = strat(parent[key], child[key], vm, key);\n }\n return options\n}\n\n/**\n * Resolve an asset.\n * This function is used because child instances need access\n * to assets defined in its ancestor chain.\n */\nfunction resolveAsset (\n options,\n type,\n id,\n warnMissing\n) {\n /* istanbul ignore if */\n if (typeof id !== 'string') {\n return\n }\n var assets = options[type];\n // check local registration variations first\n if (hasOwn(assets, id)) { return assets[id] }\n var camelizedId = camelize(id);\n if (hasOwn(assets, camelizedId)) { return assets[camelizedId] }\n var PascalCaseId = capitalize(camelizedId);\n if (hasOwn(assets, PascalCaseId)) { return assets[PascalCaseId] }\n // fallback to prototype chain\n var res = assets[id] || assets[camelizedId] || assets[PascalCaseId];\n if (false) {\n warn(\n 'Failed to resolve ' + type.slice(0, -1) + ': ' + id,\n options\n );\n }\n return res\n}\n\n/* */\n\nfunction validateProp (\n key,\n propOptions,\n propsData,\n vm\n) {\n var prop = propOptions[key];\n var absent = !hasOwn(propsData, key);\n var value = propsData[key];\n // handle boolean props\n if (isType(Boolean, prop.type)) {\n if (absent && !hasOwn(prop, 'default')) {\n value = false;\n } else if (!isType(String, prop.type) && (value === '' || value === hyphenate(key))) {\n value = true;\n }\n }\n // check default value\n if (value === undefined) {\n value = getPropDefaultValue(vm, prop, key);\n // since the default value is a fresh copy,\n // make sure to observe it.\n var prevShouldConvert = observerState.shouldConvert;\n observerState.shouldConvert = true;\n observe(value);\n observerState.shouldConvert = prevShouldConvert;\n }\n if (false) {\n assertProp(prop, key, value, vm, absent);\n }\n return value\n}\n\n/**\n * Get the default value of a prop.\n */\nfunction getPropDefaultValue (vm, prop, key) {\n // no default, return undefined\n if (!hasOwn(prop, 'default')) {\n return undefined\n }\n var def = prop.default;\n // warn against non-factory defaults for Object & Array\n if (false) {\n warn(\n 'Invalid default value for prop \"' + key + '\": ' +\n 'Props with type Object/Array must use a factory function ' +\n 'to return the default value.',\n vm\n );\n }\n // the raw prop value was also undefined from previous render,\n // return previous default value to avoid unnecessary watcher trigger\n if (vm && vm.$options.propsData &&\n vm.$options.propsData[key] === undefined &&\n vm._props[key] !== undefined\n ) {\n return vm._props[key]\n }\n // call factory function for non-Function types\n // a value is Function if its prototype is function even across different execution context\n return typeof def === 'function' && getType(prop.type) !== 'Function'\n ? def.call(vm)\n : def\n}\n\n/**\n * Assert whether a prop is valid.\n */\nfunction assertProp (\n prop,\n name,\n value,\n vm,\n absent\n) {\n if (prop.required && absent) {\n warn(\n 'Missing required prop: \"' + name + '\"',\n vm\n );\n return\n }\n if (value == null && !prop.required) {\n return\n }\n var type = prop.type;\n var valid = !type || type === true;\n var expectedTypes = [];\n if (type) {\n if (!Array.isArray(type)) {\n type = [type];\n }\n for (var i = 0; i < type.length && !valid; i++) {\n var assertedType = assertType(value, type[i]);\n expectedTypes.push(assertedType.expectedType || '');\n valid = assertedType.valid;\n }\n }\n if (!valid) {\n warn(\n \"Invalid prop: type check failed for prop \\\"\" + name + \"\\\".\" +\n \" Expected \" + (expectedTypes.map(capitalize).join(', ')) +\n \", got \" + (toRawType(value)) + \".\",\n vm\n );\n return\n }\n var validator = prop.validator;\n if (validator) {\n if (!validator(value)) {\n warn(\n 'Invalid prop: custom validator check failed for prop \"' + name + '\".',\n vm\n );\n }\n }\n}\n\nvar simpleCheckRE = /^(String|Number|Boolean|Function|Symbol)$/;\n\nfunction assertType (value, type) {\n var valid;\n var expectedType = getType(type);\n if (simpleCheckRE.test(expectedType)) {\n var t = typeof value;\n valid = t === expectedType.toLowerCase();\n // for primitive wrapper objects\n if (!valid && t === 'object') {\n valid = value instanceof type;\n }\n } else if (expectedType === 'Object') {\n valid = isPlainObject(value);\n } else if (expectedType === 'Array') {\n valid = Array.isArray(value);\n } else {\n valid = value instanceof type;\n }\n return {\n valid: valid,\n expectedType: expectedType\n }\n}\n\n/**\n * Use function string name to check built-in types,\n * because a simple equality check will fail when running\n * across different vms / iframes.\n */\nfunction getType (fn) {\n var match = fn && fn.toString().match(/^\\s*function (\\w+)/);\n return match ? match[1] : ''\n}\n\nfunction isType (type, fn) {\n if (!Array.isArray(fn)) {\n return getType(fn) === getType(type)\n }\n for (var i = 0, len = fn.length; i < len; i++) {\n if (getType(fn[i]) === getType(type)) {\n return true\n }\n }\n /* istanbul ignore next */\n return false\n}\n\n/* */\n\nfunction handleError (err, vm, info) {\n if (vm) {\n var cur = vm;\n while ((cur = cur.$parent)) {\n var hooks = cur.$options.errorCaptured;\n if (hooks) {\n for (var i = 0; i < hooks.length; i++) {\n try {\n var capture = hooks[i].call(cur, err, vm, info) === false;\n if (capture) { return }\n } catch (e) {\n globalHandleError(e, cur, 'errorCaptured hook');\n }\n }\n }\n }\n }\n globalHandleError(err, vm, info);\n}\n\nfunction globalHandleError (err, vm, info) {\n if (config.errorHandler) {\n try {\n return config.errorHandler.call(null, err, vm, info)\n } catch (e) {\n logError(e, null, 'config.errorHandler');\n }\n }\n logError(err, vm, info);\n}\n\nfunction logError (err, vm, info) {\n if (false) {\n warn((\"Error in \" + info + \": \\\"\" + (err.toString()) + \"\\\"\"), vm);\n }\n /* istanbul ignore else */\n if (inBrowser && typeof console !== 'undefined') {\n console.error(err);\n } else {\n throw err\n }\n}\n\n/* */\n/* globals MessageChannel */\n\nvar callbacks = [];\nvar pending = false;\n\nfunction flushCallbacks () {\n pending = false;\n var copies = callbacks.slice(0);\n callbacks.length = 0;\n for (var i = 0; i < copies.length; i++) {\n copies[i]();\n }\n}\n\n// Here we have async deferring wrappers using both micro and macro tasks.\n// In < 2.4 we used micro tasks everywhere, but there are some scenarios where\n// micro tasks have too high a priority and fires in between supposedly\n// sequential events (e.g. #4521, #6690) or even between bubbling of the same\n// event (#6566). However, using macro tasks everywhere also has subtle problems\n// when state is changed right before repaint (e.g. #6813, out-in transitions).\n// Here we use micro task by default, but expose a way to force macro task when\n// needed (e.g. in event handlers attached by v-on).\nvar microTimerFunc;\nvar macroTimerFunc;\nvar useMacroTask = false;\n\n// Determine (macro) Task defer implementation.\n// Technically setImmediate should be the ideal choice, but it's only available\n// in IE. The only polyfill that consistently queues the callback after all DOM\n// events triggered in the same loop is by using MessageChannel.\n/* istanbul ignore if */\nif (typeof setImmediate !== 'undefined' && isNative(setImmediate)) {\n macroTimerFunc = function () {\n setImmediate(flushCallbacks);\n };\n} else if (typeof MessageChannel !== 'undefined' && (\n isNative(MessageChannel) ||\n // PhantomJS\n MessageChannel.toString() === '[object MessageChannelConstructor]'\n)) {\n var channel = new MessageChannel();\n var port = channel.port2;\n channel.port1.onmessage = flushCallbacks;\n macroTimerFunc = function () {\n port.postMessage(1);\n };\n} else {\n /* istanbul ignore next */\n macroTimerFunc = function () {\n setTimeout(flushCallbacks, 0);\n };\n}\n\n// Determine MicroTask defer implementation.\n/* istanbul ignore next, $flow-disable-line */\nif (typeof Promise !== 'undefined' && isNative(Promise)) {\n var p = Promise.resolve();\n microTimerFunc = function () {\n p.then(flushCallbacks);\n // in problematic UIWebViews, Promise.then doesn't completely break, but\n // it can get stuck in a weird state where callbacks are pushed into the\n // microtask queue but the queue isn't being flushed, until the browser\n // needs to do some other work, e.g. handle a timer. Therefore we can\n // \"force\" the microtask queue to be flushed by adding an empty timer.\n if (isIOS) { setTimeout(noop); }\n };\n} else {\n // fallback to macro\n microTimerFunc = macroTimerFunc;\n}\n\n/**\n * Wrap a function so that if any code inside triggers state change,\n * the changes are queued using a Task instead of a MicroTask.\n */\nfunction withMacroTask (fn) {\n return fn._withTask || (fn._withTask = function () {\n useMacroTask = true;\n var res = fn.apply(null, arguments);\n useMacroTask = false;\n return res\n })\n}\n\nfunction nextTick (cb, ctx) {\n var _resolve;\n callbacks.push(function () {\n if (cb) {\n try {\n cb.call(ctx);\n } catch (e) {\n handleError(e, ctx, 'nextTick');\n }\n } else if (_resolve) {\n _resolve(ctx);\n }\n });\n if (!pending) {\n pending = true;\n if (useMacroTask) {\n macroTimerFunc();\n } else {\n microTimerFunc();\n }\n }\n // $flow-disable-line\n if (!cb && typeof Promise !== 'undefined') {\n return new Promise(function (resolve) {\n _resolve = resolve;\n })\n }\n}\n\n/* */\n\nvar mark;\nvar measure;\n\nif (false) {\n var perf = inBrowser && window.performance;\n /* istanbul ignore if */\n if (\n perf &&\n perf.mark &&\n perf.measure &&\n perf.clearMarks &&\n perf.clearMeasures\n ) {\n mark = function (tag) { return perf.mark(tag); };\n measure = function (name, startTag, endTag) {\n perf.measure(name, startTag, endTag);\n perf.clearMarks(startTag);\n perf.clearMarks(endTag);\n perf.clearMeasures(name);\n };\n }\n}\n\n/* not type checking this file because flow doesn't play well with Proxy */\n\nvar initProxy;\n\nif (false) {\n var allowedGlobals = makeMap(\n 'Infinity,undefined,NaN,isFinite,isNaN,' +\n 'parseFloat,parseInt,decodeURI,decodeURIComponent,encodeURI,encodeURIComponent,' +\n 'Math,Number,Date,Array,Object,Boolean,String,RegExp,Map,Set,JSON,Intl,' +\n 'require' // for Webpack/Browserify\n );\n\n var warnNonPresent = function (target, key) {\n warn(\n \"Property or method \\\"\" + key + \"\\\" is not defined on the instance but \" +\n 'referenced during render. Make sure that this property is reactive, ' +\n 'either in the data option, or for class-based components, by ' +\n 'initializing the property. ' +\n 'See: https://vuejs.org/v2/guide/reactivity.html#Declaring-Reactive-Properties.',\n target\n );\n };\n\n var hasProxy =\n typeof Proxy !== 'undefined' &&\n Proxy.toString().match(/native code/);\n\n if (hasProxy) {\n var isBuiltInModifier = makeMap('stop,prevent,self,ctrl,shift,alt,meta,exact');\n config.keyCodes = new Proxy(config.keyCodes, {\n set: function set (target, key, value) {\n if (isBuiltInModifier(key)) {\n warn((\"Avoid overwriting built-in modifier in config.keyCodes: .\" + key));\n return false\n } else {\n target[key] = value;\n return true\n }\n }\n });\n }\n\n var hasHandler = {\n has: function has (target, key) {\n var has = key in target;\n var isAllowed = allowedGlobals(key) || key.charAt(0) === '_';\n if (!has && !isAllowed) {\n warnNonPresent(target, key);\n }\n return has || !isAllowed\n }\n };\n\n var getHandler = {\n get: function get (target, key) {\n if (typeof key === 'string' && !(key in target)) {\n warnNonPresent(target, key);\n }\n return target[key]\n }\n };\n\n initProxy = function initProxy (vm) {\n if (hasProxy) {\n // determine which proxy handler to use\n var options = vm.$options;\n var handlers = options.render && options.render._withStripped\n ? getHandler\n : hasHandler;\n vm._renderProxy = new Proxy(vm, handlers);\n } else {\n vm._renderProxy = vm;\n }\n };\n}\n\n/* */\n\nvar normalizeEvent = cached(function (name) {\n var passive = name.charAt(0) === '&';\n name = passive ? name.slice(1) : name;\n var once$$1 = name.charAt(0) === '~'; // Prefixed last, checked first\n name = once$$1 ? name.slice(1) : name;\n var capture = name.charAt(0) === '!';\n name = capture ? name.slice(1) : name;\n return {\n name: name,\n once: once$$1,\n capture: capture,\n passive: passive\n }\n});\n\nfunction createFnInvoker (fns) {\n function invoker () {\n var arguments$1 = arguments;\n\n var fns = invoker.fns;\n if (Array.isArray(fns)) {\n var cloned = fns.slice();\n for (var i = 0; i < cloned.length; i++) {\n cloned[i].apply(null, arguments$1);\n }\n } else {\n // return handler return value for single handlers\n return fns.apply(null, arguments)\n }\n }\n invoker.fns = fns;\n return invoker\n}\n\nfunction updateListeners (\n on,\n oldOn,\n add,\n remove$$1,\n vm\n) {\n var name, cur, old, event;\n for (name in on) {\n cur = on[name];\n old = oldOn[name];\n event = normalizeEvent(name);\n if (isUndef(cur)) {\n \"production\" !== 'production' && warn(\n \"Invalid handler for event \\\"\" + (event.name) + \"\\\": got \" + String(cur),\n vm\n );\n } else if (isUndef(old)) {\n if (isUndef(cur.fns)) {\n cur = on[name] = createFnInvoker(cur);\n }\n add(event.name, cur, event.once, event.capture, event.passive);\n } else if (cur !== old) {\n old.fns = cur;\n on[name] = old;\n }\n }\n for (name in oldOn) {\n if (isUndef(on[name])) {\n event = normalizeEvent(name);\n remove$$1(event.name, oldOn[name], event.capture);\n }\n }\n}\n\n/* */\n\nfunction mergeVNodeHook (def, hookKey, hook) {\n var invoker;\n var oldHook = def[hookKey];\n\n function wrappedHook () {\n hook.apply(this, arguments);\n // important: remove merged hook to ensure it's called only once\n // and prevent memory leak\n remove(invoker.fns, wrappedHook);\n }\n\n if (isUndef(oldHook)) {\n // no existing hook\n invoker = createFnInvoker([wrappedHook]);\n } else {\n /* istanbul ignore if */\n if (isDef(oldHook.fns) && isTrue(oldHook.merged)) {\n // already a merged invoker\n invoker = oldHook;\n invoker.fns.push(wrappedHook);\n } else {\n // existing plain hook\n invoker = createFnInvoker([oldHook, wrappedHook]);\n }\n }\n\n invoker.merged = true;\n def[hookKey] = invoker;\n}\n\n/* */\n\nfunction extractPropsFromVNodeData (\n data,\n Ctor,\n tag\n) {\n // we are only extracting raw values here.\n // validation and default values are handled in the child\n // component itself.\n var propOptions = Ctor.options.props;\n if (isUndef(propOptions)) {\n return\n }\n var res = {};\n var attrs = data.attrs;\n var props = data.props;\n if (isDef(attrs) || isDef(props)) {\n for (var key in propOptions) {\n var altKey = hyphenate(key);\n if (false) {\n var keyInLowerCase = key.toLowerCase();\n if (\n key !== keyInLowerCase &&\n attrs && hasOwn(attrs, keyInLowerCase)\n ) {\n tip(\n \"Prop \\\"\" + keyInLowerCase + \"\\\" is passed to component \" +\n (formatComponentName(tag || Ctor)) + \", but the declared prop name is\" +\n \" \\\"\" + key + \"\\\". \" +\n \"Note that HTML attributes are case-insensitive and camelCased \" +\n \"props need to use their kebab-case equivalents when using in-DOM \" +\n \"templates. You should probably use \\\"\" + altKey + \"\\\" instead of \\\"\" + key + \"\\\".\"\n );\n }\n }\n checkProp(res, props, key, altKey, true) ||\n checkProp(res, attrs, key, altKey, false);\n }\n }\n return res\n}\n\nfunction checkProp (\n res,\n hash,\n key,\n altKey,\n preserve\n) {\n if (isDef(hash)) {\n if (hasOwn(hash, key)) {\n res[key] = hash[key];\n if (!preserve) {\n delete hash[key];\n }\n return true\n } else if (hasOwn(hash, altKey)) {\n res[key] = hash[altKey];\n if (!preserve) {\n delete hash[altKey];\n }\n return true\n }\n }\n return false\n}\n\n/* */\n\n// The template compiler attempts to minimize the need for normalization by\n// statically analyzing the template at compile time.\n//\n// For plain HTML markup, normalization can be completely skipped because the\n// generated render function is guaranteed to return Array<VNode>. There are\n// two cases where extra normalization is needed:\n\n// 1. When the children contains components - because a functional component\n// may return an Array instead of a single root. In this case, just a simple\n// normalization is needed - if any child is an Array, we flatten the whole\n// thing with Array.prototype.concat. It is guaranteed to be only 1-level deep\n// because functional components already normalize their own children.\nfunction simpleNormalizeChildren (children) {\n for (var i = 0; i < children.length; i++) {\n if (Array.isArray(children[i])) {\n return Array.prototype.concat.apply([], children)\n }\n }\n return children\n}\n\n// 2. When the children contains constructs that always generated nested Arrays,\n// e.g. <template>, <slot>, v-for, or when the children is provided by user\n// with hand-written render functions / JSX. In such cases a full normalization\n// is needed to cater to all possible types of children values.\nfunction normalizeChildren (children) {\n return isPrimitive(children)\n ? [createTextVNode(children)]\n : Array.isArray(children)\n ? normalizeArrayChildren(children)\n : undefined\n}\n\nfunction isTextNode (node) {\n return isDef(node) && isDef(node.text) && isFalse(node.isComment)\n}\n\nfunction normalizeArrayChildren (children, nestedIndex) {\n var res = [];\n var i, c, lastIndex, last;\n for (i = 0; i < children.length; i++) {\n c = children[i];\n if (isUndef(c) || typeof c === 'boolean') { continue }\n lastIndex = res.length - 1;\n last = res[lastIndex];\n // nested\n if (Array.isArray(c)) {\n if (c.length > 0) {\n c = normalizeArrayChildren(c, ((nestedIndex || '') + \"_\" + i));\n // merge adjacent text nodes\n if (isTextNode(c[0]) && isTextNode(last)) {\n res[lastIndex] = createTextVNode(last.text + (c[0]).text);\n c.shift();\n }\n res.push.apply(res, c);\n }\n } else if (isPrimitive(c)) {\n if (isTextNode(last)) {\n // merge adjacent text nodes\n // this is necessary for SSR hydration because text nodes are\n // essentially merged when rendered to HTML strings\n res[lastIndex] = createTextVNode(last.text + c);\n } else if (c !== '') {\n // convert primitive to vnode\n res.push(createTextVNode(c));\n }\n } else {\n if (isTextNode(c) && isTextNode(last)) {\n // merge adjacent text nodes\n res[lastIndex] = createTextVNode(last.text + c.text);\n } else {\n // default key for nested array children (likely generated by v-for)\n if (isTrue(children._isVList) &&\n isDef(c.tag) &&\n isUndef(c.key) &&\n isDef(nestedIndex)) {\n c.key = \"__vlist\" + nestedIndex + \"_\" + i + \"__\";\n }\n res.push(c);\n }\n }\n }\n return res\n}\n\n/* */\n\nfunction ensureCtor (comp, base) {\n if (\n comp.__esModule ||\n (hasSymbol && comp[Symbol.toStringTag] === 'Module')\n ) {\n comp = comp.default;\n }\n return isObject(comp)\n ? base.extend(comp)\n : comp\n}\n\nfunction createAsyncPlaceholder (\n factory,\n data,\n context,\n children,\n tag\n) {\n var node = createEmptyVNode();\n node.asyncFactory = factory;\n node.asyncMeta = { data: data, context: context, children: children, tag: tag };\n return node\n}\n\nfunction resolveAsyncComponent (\n factory,\n baseCtor,\n context\n) {\n if (isTrue(factory.error) && isDef(factory.errorComp)) {\n return factory.errorComp\n }\n\n if (isDef(factory.resolved)) {\n return factory.resolved\n }\n\n if (isTrue(factory.loading) && isDef(factory.loadingComp)) {\n return factory.loadingComp\n }\n\n if (isDef(factory.contexts)) {\n // already pending\n factory.contexts.push(context);\n } else {\n var contexts = factory.contexts = [context];\n var sync = true;\n\n var forceRender = function () {\n for (var i = 0, l = contexts.length; i < l; i++) {\n contexts[i].$forceUpdate();\n }\n };\n\n var resolve = once(function (res) {\n // cache resolved\n factory.resolved = ensureCtor(res, baseCtor);\n // invoke callbacks only if this is not a synchronous resolve\n // (async resolves are shimmed as synchronous during SSR)\n if (!sync) {\n forceRender();\n }\n });\n\n var reject = once(function (reason) {\n \"production\" !== 'production' && warn(\n \"Failed to resolve async component: \" + (String(factory)) +\n (reason ? (\"\\nReason: \" + reason) : '')\n );\n if (isDef(factory.errorComp)) {\n factory.error = true;\n forceRender();\n }\n });\n\n var res = factory(resolve, reject);\n\n if (isObject(res)) {\n if (typeof res.then === 'function') {\n // () => Promise\n if (isUndef(factory.resolved)) {\n res.then(resolve, reject);\n }\n } else if (isDef(res.component) && typeof res.component.then === 'function') {\n res.component.then(resolve, reject);\n\n if (isDef(res.error)) {\n factory.errorComp = ensureCtor(res.error, baseCtor);\n }\n\n if (isDef(res.loading)) {\n factory.loadingComp = ensureCtor(res.loading, baseCtor);\n if (res.delay === 0) {\n factory.loading = true;\n } else {\n setTimeout(function () {\n if (isUndef(factory.resolved) && isUndef(factory.error)) {\n factory.loading = true;\n forceRender();\n }\n }, res.delay || 200);\n }\n }\n\n if (isDef(res.timeout)) {\n setTimeout(function () {\n if (isUndef(factory.resolved)) {\n reject(\n false\n ? (\"timeout (\" + (res.timeout) + \"ms)\")\n : null\n );\n }\n }, res.timeout);\n }\n }\n }\n\n sync = false;\n // return in case resolved synchronously\n return factory.loading\n ? factory.loadingComp\n : factory.resolved\n }\n}\n\n/* */\n\nfunction isAsyncPlaceholder (node) {\n return node.isComment && node.asyncFactory\n}\n\n/* */\n\nfunction getFirstComponentChild (children) {\n if (Array.isArray(children)) {\n for (var i = 0; i < children.length; i++) {\n var c = children[i];\n if (isDef(c) && (isDef(c.componentOptions) || isAsyncPlaceholder(c))) {\n return c\n }\n }\n }\n}\n\n/* */\n\n/* */\n\nfunction initEvents (vm) {\n vm._events = Object.create(null);\n vm._hasHookEvent = false;\n // init parent attached events\n var listeners = vm.$options._parentListeners;\n if (listeners) {\n updateComponentListeners(vm, listeners);\n }\n}\n\nvar target;\n\nfunction add (event, fn, once) {\n if (once) {\n target.$once(event, fn);\n } else {\n target.$on(event, fn);\n }\n}\n\nfunction remove$1 (event, fn) {\n target.$off(event, fn);\n}\n\nfunction updateComponentListeners (\n vm,\n listeners,\n oldListeners\n) {\n target = vm;\n updateListeners(listeners, oldListeners || {}, add, remove$1, vm);\n}\n\nfunction eventsMixin (Vue) {\n var hookRE = /^hook:/;\n Vue.prototype.$on = function (event, fn) {\n var this$1 = this;\n\n var vm = this;\n if (Array.isArray(event)) {\n for (var i = 0, l = event.length; i < l; i++) {\n this$1.$on(event[i], fn);\n }\n } else {\n (vm._events[event] || (vm._events[event] = [])).push(fn);\n // optimize hook:event cost by using a boolean flag marked at registration\n // instead of a hash lookup\n if (hookRE.test(event)) {\n vm._hasHookEvent = true;\n }\n }\n return vm\n };\n\n Vue.prototype.$once = function (event, fn) {\n var vm = this;\n function on () {\n vm.$off(event, on);\n fn.apply(vm, arguments);\n }\n on.fn = fn;\n vm.$on(event, on);\n return vm\n };\n\n Vue.prototype.$off = function (event, fn) {\n var this$1 = this;\n\n var vm = this;\n // all\n if (!arguments.length) {\n vm._events = Object.create(null);\n return vm\n }\n // array of events\n if (Array.isArray(event)) {\n for (var i = 0, l = event.length; i < l; i++) {\n this$1.$off(event[i], fn);\n }\n return vm\n }\n // specific event\n var cbs = vm._events[event];\n if (!cbs) {\n return vm\n }\n if (arguments.length === 1) {\n vm._events[event] = null;\n return vm\n }\n if (fn) {\n // specific handler\n var cb;\n var i$1 = cbs.length;\n while (i$1--) {\n cb = cbs[i$1];\n if (cb === fn || cb.fn === fn) {\n cbs.splice(i$1, 1);\n break\n }\n }\n }\n return vm\n };\n\n Vue.prototype.$emit = function (event) {\n var vm = this;\n if (false) {\n var lowerCaseEvent = event.toLowerCase();\n if (lowerCaseEvent !== event && vm._events[lowerCaseEvent]) {\n tip(\n \"Event \\\"\" + lowerCaseEvent + \"\\\" is emitted in component \" +\n (formatComponentName(vm)) + \" but the handler is registered for \\\"\" + event + \"\\\". \" +\n \"Note that HTML attributes are case-insensitive and you cannot use \" +\n \"v-on to listen to camelCase events when using in-DOM templates. \" +\n \"You should probably use \\\"\" + (hyphenate(event)) + \"\\\" instead of \\\"\" + event + \"\\\".\"\n );\n }\n }\n var cbs = vm._events[event];\n if (cbs) {\n cbs = cbs.length > 1 ? toArray(cbs) : cbs;\n var args = toArray(arguments, 1);\n for (var i = 0, l = cbs.length; i < l; i++) {\n try {\n cbs[i].apply(vm, args);\n } catch (e) {\n handleError(e, vm, (\"event handler for \\\"\" + event + \"\\\"\"));\n }\n }\n }\n return vm\n };\n}\n\n/* */\n\n/**\n * Runtime helper for resolving raw children VNodes into a slot object.\n */\nfunction resolveSlots (\n children,\n context\n) {\n var slots = {};\n if (!children) {\n return slots\n }\n var defaultSlot = [];\n for (var i = 0, l = children.length; i < l; i++) {\n var child = children[i];\n var data = child.data;\n // remove slot attribute if the node is resolved as a Vue slot node\n if (data && data.attrs && data.attrs.slot) {\n delete data.attrs.slot;\n }\n // named slots should only be respected if the vnode was rendered in the\n // same context.\n if ((child.context === context || child.functionalContext === context) &&\n data && data.slot != null\n ) {\n var name = child.data.slot;\n var slot = (slots[name] || (slots[name] = []));\n if (child.tag === 'template') {\n slot.push.apply(slot, child.children);\n } else {\n slot.push(child);\n }\n } else {\n defaultSlot.push(child);\n }\n }\n // ignore whitespace\n if (!defaultSlot.every(isWhitespace)) {\n slots.default = defaultSlot;\n }\n return slots\n}\n\nfunction isWhitespace (node) {\n return node.isComment || node.text === ' '\n}\n\nfunction resolveScopedSlots (\n fns, // see flow/vnode\n res\n) {\n res = res || {};\n for (var i = 0; i < fns.length; i++) {\n if (Array.isArray(fns[i])) {\n resolveScopedSlots(fns[i], res);\n } else {\n res[fns[i].key] = fns[i].fn;\n }\n }\n return res\n}\n\n/* */\n\nvar activeInstance = null;\nvar isUpdatingChildComponent = false;\n\nfunction initLifecycle (vm) {\n var options = vm.$options;\n\n // locate first non-abstract parent\n var parent = options.parent;\n if (parent && !options.abstract) {\n while (parent.$options.abstract && parent.$parent) {\n parent = parent.$parent;\n }\n parent.$children.push(vm);\n }\n\n vm.$parent = parent;\n vm.$root = parent ? parent.$root : vm;\n\n vm.$children = [];\n vm.$refs = {};\n\n vm._watcher = null;\n vm._inactive = null;\n vm._directInactive = false;\n vm._isMounted = false;\n vm._isDestroyed = false;\n vm._isBeingDestroyed = false;\n}\n\nfunction lifecycleMixin (Vue) {\n Vue.prototype._update = function (vnode, hydrating) {\n var vm = this;\n if (vm._isMounted) {\n callHook(vm, 'beforeUpdate');\n }\n var prevEl = vm.$el;\n var prevVnode = vm._vnode;\n var prevActiveInstance = activeInstance;\n activeInstance = vm;\n vm._vnode = vnode;\n // Vue.prototype.__patch__ is injected in entry points\n // based on the rendering backend used.\n if (!prevVnode) {\n // initial render\n vm.$el = vm.__patch__(\n vm.$el, vnode, hydrating, false /* removeOnly */,\n vm.$options._parentElm,\n vm.$options._refElm\n );\n // no need for the ref nodes after initial patch\n // this prevents keeping a detached DOM tree in memory (#5851)\n vm.$options._parentElm = vm.$options._refElm = null;\n } else {\n // updates\n vm.$el = vm.__patch__(prevVnode, vnode);\n }\n activeInstance = prevActiveInstance;\n // update __vue__ reference\n if (prevEl) {\n prevEl.__vue__ = null;\n }\n if (vm.$el) {\n vm.$el.__vue__ = vm;\n }\n // if parent is an HOC, update its $el as well\n if (vm.$vnode && vm.$parent && vm.$vnode === vm.$parent._vnode) {\n vm.$parent.$el = vm.$el;\n }\n // updated hook is called by the scheduler to ensure that children are\n // updated in a parent's updated hook.\n };\n\n Vue.prototype.$forceUpdate = function () {\n var vm = this;\n if (vm._watcher) {\n vm._watcher.update();\n }\n };\n\n Vue.prototype.$destroy = function () {\n var vm = this;\n if (vm._isBeingDestroyed) {\n return\n }\n callHook(vm, 'beforeDestroy');\n vm._isBeingDestroyed = true;\n // remove self from parent\n var parent = vm.$parent;\n if (parent && !parent._isBeingDestroyed && !vm.$options.abstract) {\n remove(parent.$children, vm);\n }\n // teardown watchers\n if (vm._watcher) {\n vm._watcher.teardown();\n }\n var i = vm._watchers.length;\n while (i--) {\n vm._watchers[i].teardown();\n }\n // remove reference from data ob\n // frozen object may not have observer.\n if (vm._data.__ob__) {\n vm._data.__ob__.vmCount--;\n }\n // call the last hook...\n vm._isDestroyed = true;\n // invoke destroy hooks on current rendered tree\n vm.__patch__(vm._vnode, null);\n // fire destroyed hook\n callHook(vm, 'destroyed');\n // turn off all instance listeners.\n vm.$off();\n // remove __vue__ reference\n if (vm.$el) {\n vm.$el.__vue__ = null;\n }\n // release circular reference (#6759)\n if (vm.$vnode) {\n vm.$vnode.parent = null;\n }\n };\n}\n\nfunction mountComponent (\n vm,\n el,\n hydrating\n) {\n vm.$el = el;\n if (!vm.$options.render) {\n vm.$options.render = createEmptyVNode;\n if (false) {\n /* istanbul ignore if */\n if ((vm.$options.template && vm.$options.template.charAt(0) !== '#') ||\n vm.$options.el || el) {\n warn(\n 'You are using the runtime-only build of Vue where the template ' +\n 'compiler is not available. Either pre-compile the templates into ' +\n 'render functions, or use the compiler-included build.',\n vm\n );\n } else {\n warn(\n 'Failed to mount component: template or render function not defined.',\n vm\n );\n }\n }\n }\n callHook(vm, 'beforeMount');\n\n var updateComponent;\n /* istanbul ignore if */\n if (false) {\n updateComponent = function () {\n var name = vm._name;\n var id = vm._uid;\n var startTag = \"vue-perf-start:\" + id;\n var endTag = \"vue-perf-end:\" + id;\n\n mark(startTag);\n var vnode = vm._render();\n mark(endTag);\n measure((\"vue \" + name + \" render\"), startTag, endTag);\n\n mark(startTag);\n vm._update(vnode, hydrating);\n mark(endTag);\n measure((\"vue \" + name + \" patch\"), startTag, endTag);\n };\n } else {\n updateComponent = function () {\n vm._update(vm._render(), hydrating);\n };\n }\n\n vm._watcher = new Watcher(vm, updateComponent, noop);\n hydrating = false;\n\n // manually mounted instance, call mounted on self\n // mounted is called for render-created child components in its inserted hook\n if (vm.$vnode == null) {\n vm._isMounted = true;\n callHook(vm, 'mounted');\n }\n return vm\n}\n\nfunction updateChildComponent (\n vm,\n propsData,\n listeners,\n parentVnode,\n renderChildren\n) {\n if (false) {\n isUpdatingChildComponent = true;\n }\n\n // determine whether component has slot children\n // we need to do this before overwriting $options._renderChildren\n var hasChildren = !!(\n renderChildren || // has new static slots\n vm.$options._renderChildren || // has old static slots\n parentVnode.data.scopedSlots || // has new scoped slots\n vm.$scopedSlots !== emptyObject // has old scoped slots\n );\n\n vm.$options._parentVnode = parentVnode;\n vm.$vnode = parentVnode; // update vm's placeholder node without re-render\n\n if (vm._vnode) { // update child tree's parent\n vm._vnode.parent = parentVnode;\n }\n vm.$options._renderChildren = renderChildren;\n\n // update $attrs and $listeners hash\n // these are also reactive so they may trigger child update if the child\n // used them during render\n vm.$attrs = (parentVnode.data && parentVnode.data.attrs) || emptyObject;\n vm.$listeners = listeners || emptyObject;\n\n // update props\n if (propsData && vm.$options.props) {\n observerState.shouldConvert = false;\n var props = vm._props;\n var propKeys = vm.$options._propKeys || [];\n for (var i = 0; i < propKeys.length; i++) {\n var key = propKeys[i];\n props[key] = validateProp(key, vm.$options.props, propsData, vm);\n }\n observerState.shouldConvert = true;\n // keep a copy of raw propsData\n vm.$options.propsData = propsData;\n }\n\n // update listeners\n if (listeners) {\n var oldListeners = vm.$options._parentListeners;\n vm.$options._parentListeners = listeners;\n updateComponentListeners(vm, listeners, oldListeners);\n }\n // resolve slots + force update if has children\n if (hasChildren) {\n vm.$slots = resolveSlots(renderChildren, parentVnode.context);\n vm.$forceUpdate();\n }\n\n if (false) {\n isUpdatingChildComponent = false;\n }\n}\n\nfunction isInInactiveTree (vm) {\n while (vm && (vm = vm.$parent)) {\n if (vm._inactive) { return true }\n }\n return false\n}\n\nfunction activateChildComponent (vm, direct) {\n if (direct) {\n vm._directInactive = false;\n if (isInInactiveTree(vm)) {\n return\n }\n } else if (vm._directInactive) {\n return\n }\n if (vm._inactive || vm._inactive === null) {\n vm._inactive = false;\n for (var i = 0; i < vm.$children.length; i++) {\n activateChildComponent(vm.$children[i]);\n }\n callHook(vm, 'activated');\n }\n}\n\nfunction deactivateChildComponent (vm, direct) {\n if (direct) {\n vm._directInactive = true;\n if (isInInactiveTree(vm)) {\n return\n }\n }\n if (!vm._inactive) {\n vm._inactive = true;\n for (var i = 0; i < vm.$children.length; i++) {\n deactivateChildComponent(vm.$children[i]);\n }\n callHook(vm, 'deactivated');\n }\n}\n\nfunction callHook (vm, hook) {\n var handlers = vm.$options[hook];\n if (handlers) {\n for (var i = 0, j = handlers.length; i < j; i++) {\n try {\n handlers[i].call(vm);\n } catch (e) {\n handleError(e, vm, (hook + \" hook\"));\n }\n }\n }\n if (vm._hasHookEvent) {\n vm.$emit('hook:' + hook);\n }\n}\n\n/* */\n\n\nvar MAX_UPDATE_COUNT = 100;\n\nvar queue = [];\nvar activatedChildren = [];\nvar has = {};\nvar circular = {};\nvar waiting = false;\nvar flushing = false;\nvar index = 0;\n\n/**\n * Reset the scheduler's state.\n */\nfunction resetSchedulerState () {\n index = queue.length = activatedChildren.length = 0;\n has = {};\n if (false) {\n circular = {};\n }\n waiting = flushing = false;\n}\n\n/**\n * Flush both queues and run the watchers.\n */\nfunction flushSchedulerQueue () {\n flushing = true;\n var watcher, id;\n\n // Sort queue before flush.\n // This ensures that:\n // 1. Components are updated from parent to child. (because parent is always\n // created before the child)\n // 2. A component's user watchers are run before its render watcher (because\n // user watchers are created before the render watcher)\n // 3. If a component is destroyed during a parent component's watcher run,\n // its watchers can be skipped.\n queue.sort(function (a, b) { return a.id - b.id; });\n\n // do not cache length because more watchers might be pushed\n // as we run existing watchers\n for (index = 0; index < queue.length; index++) {\n watcher = queue[index];\n id = watcher.id;\n has[id] = null;\n watcher.run();\n // in dev build, check and stop circular updates.\n if (false) {\n circular[id] = (circular[id] || 0) + 1;\n if (circular[id] > MAX_UPDATE_COUNT) {\n warn(\n 'You may have an infinite update loop ' + (\n watcher.user\n ? (\"in watcher with expression \\\"\" + (watcher.expression) + \"\\\"\")\n : \"in a component render function.\"\n ),\n watcher.vm\n );\n break\n }\n }\n }\n\n // keep copies of post queues before resetting state\n var activatedQueue = activatedChildren.slice();\n var updatedQueue = queue.slice();\n\n resetSchedulerState();\n\n // call component updated and activated hooks\n callActivatedHooks(activatedQueue);\n callUpdatedHooks(updatedQueue);\n\n // devtool hook\n /* istanbul ignore if */\n if (devtools && config.devtools) {\n devtools.emit('flush');\n }\n}\n\nfunction callUpdatedHooks (queue) {\n var i = queue.length;\n while (i--) {\n var watcher = queue[i];\n var vm = watcher.vm;\n if (vm._watcher === watcher && vm._isMounted) {\n callHook(vm, 'updated');\n }\n }\n}\n\n/**\n * Queue a kept-alive component that was activated during patch.\n * The queue will be processed after the entire tree has been patched.\n */\nfunction queueActivatedComponent (vm) {\n // setting _inactive to false here so that a render function can\n // rely on checking whether it's in an inactive tree (e.g. router-view)\n vm._inactive = false;\n activatedChildren.push(vm);\n}\n\nfunction callActivatedHooks (queue) {\n for (var i = 0; i < queue.length; i++) {\n queue[i]._inactive = true;\n activateChildComponent(queue[i], true /* true */);\n }\n}\n\n/**\n * Push a watcher into the watcher queue.\n * Jobs with duplicate IDs will be skipped unless it's\n * pushed when the queue is being flushed.\n */\nfunction queueWatcher (watcher) {\n var id = watcher.id;\n if (has[id] == null) {\n has[id] = true;\n if (!flushing) {\n queue.push(watcher);\n } else {\n // if already flushing, splice the watcher based on its id\n // if already past its id, it will be run next immediately.\n var i = queue.length - 1;\n while (i > index && queue[i].id > watcher.id) {\n i--;\n }\n queue.splice(i + 1, 0, watcher);\n }\n // queue the flush\n if (!waiting) {\n waiting = true;\n nextTick(flushSchedulerQueue);\n }\n }\n}\n\n/* */\n\nvar uid$2 = 0;\n\n/**\n * A watcher parses an expression, collects dependencies,\n * and fires callback when the expression value changes.\n * This is used for both the $watch() api and directives.\n */\nvar Watcher = function Watcher (\n vm,\n expOrFn,\n cb,\n options\n) {\n this.vm = vm;\n vm._watchers.push(this);\n // options\n if (options) {\n this.deep = !!options.deep;\n this.user = !!options.user;\n this.lazy = !!options.lazy;\n this.sync = !!options.sync;\n } else {\n this.deep = this.user = this.lazy = this.sync = false;\n }\n this.cb = cb;\n this.id = ++uid$2; // uid for batching\n this.active = true;\n this.dirty = this.lazy; // for lazy watchers\n this.deps = [];\n this.newDeps = [];\n this.depIds = new _Set();\n this.newDepIds = new _Set();\n this.expression = false\n ? expOrFn.toString()\n : '';\n // parse expression for getter\n if (typeof expOrFn === 'function') {\n this.getter = expOrFn;\n } else {\n this.getter = parsePath(expOrFn);\n if (!this.getter) {\n this.getter = function () {};\n \"production\" !== 'production' && warn(\n \"Failed watching path: \\\"\" + expOrFn + \"\\\" \" +\n 'Watcher only accepts simple dot-delimited paths. ' +\n 'For full control, use a function instead.',\n vm\n );\n }\n }\n this.value = this.lazy\n ? undefined\n : this.get();\n};\n\n/**\n * Evaluate the getter, and re-collect dependencies.\n */\nWatcher.prototype.get = function get () {\n pushTarget(this);\n var value;\n var vm = this.vm;\n try {\n value = this.getter.call(vm, vm);\n } catch (e) {\n if (this.user) {\n handleError(e, vm, (\"getter for watcher \\\"\" + (this.expression) + \"\\\"\"));\n } else {\n throw e\n }\n } finally {\n // \"touch\" every property so they are all tracked as\n // dependencies for deep watching\n if (this.deep) {\n traverse(value);\n }\n popTarget();\n this.cleanupDeps();\n }\n return value\n};\n\n/**\n * Add a dependency to this directive.\n */\nWatcher.prototype.addDep = function addDep (dep) {\n var id = dep.id;\n if (!this.newDepIds.has(id)) {\n this.newDepIds.add(id);\n this.newDeps.push(dep);\n if (!this.depIds.has(id)) {\n dep.addSub(this);\n }\n }\n};\n\n/**\n * Clean up for dependency collection.\n */\nWatcher.prototype.cleanupDeps = function cleanupDeps () {\n var this$1 = this;\n\n var i = this.deps.length;\n while (i--) {\n var dep = this$1.deps[i];\n if (!this$1.newDepIds.has(dep.id)) {\n dep.removeSub(this$1);\n }\n }\n var tmp = this.depIds;\n this.depIds = this.newDepIds;\n this.newDepIds = tmp;\n this.newDepIds.clear();\n tmp = this.deps;\n this.deps = this.newDeps;\n this.newDeps = tmp;\n this.newDeps.length = 0;\n};\n\n/**\n * Subscriber interface.\n * Will be called when a dependency changes.\n */\nWatcher.prototype.update = function update () {\n /* istanbul ignore else */\n if (this.lazy) {\n this.dirty = true;\n } else if (this.sync) {\n this.run();\n } else {\n queueWatcher(this);\n }\n};\n\n/**\n * Scheduler job interface.\n * Will be called by the scheduler.\n */\nWatcher.prototype.run = function run () {\n if (this.active) {\n var value = this.get();\n if (\n value !== this.value ||\n // Deep watchers and watchers on Object/Arrays should fire even\n // when the value is the same, because the value may\n // have mutated.\n isObject(value) ||\n this.deep\n ) {\n // set new value\n var oldValue = this.value;\n this.value = value;\n if (this.user) {\n try {\n this.cb.call(this.vm, value, oldValue);\n } catch (e) {\n handleError(e, this.vm, (\"callback for watcher \\\"\" + (this.expression) + \"\\\"\"));\n }\n } else {\n this.cb.call(this.vm, value, oldValue);\n }\n }\n }\n};\n\n/**\n * Evaluate the value of the watcher.\n * This only gets called for lazy watchers.\n */\nWatcher.prototype.evaluate = function evaluate () {\n this.value = this.get();\n this.dirty = false;\n};\n\n/**\n * Depend on all deps collected by this watcher.\n */\nWatcher.prototype.depend = function depend () {\n var this$1 = this;\n\n var i = this.deps.length;\n while (i--) {\n this$1.deps[i].depend();\n }\n};\n\n/**\n * Remove self from all dependencies' subscriber list.\n */\nWatcher.prototype.teardown = function teardown () {\n var this$1 = this;\n\n if (this.active) {\n // remove self from vm's watcher list\n // this is a somewhat expensive operation so we skip it\n // if the vm is being destroyed.\n if (!this.vm._isBeingDestroyed) {\n remove(this.vm._watchers, this);\n }\n var i = this.deps.length;\n while (i--) {\n this$1.deps[i].removeSub(this$1);\n }\n this.active = false;\n }\n};\n\n/**\n * Recursively traverse an object to evoke all converted\n * getters, so that every nested property inside the object\n * is collected as a \"deep\" dependency.\n */\nvar seenObjects = new _Set();\nfunction traverse (val) {\n seenObjects.clear();\n _traverse(val, seenObjects);\n}\n\nfunction _traverse (val, seen) {\n var i, keys;\n var isA = Array.isArray(val);\n if ((!isA && !isObject(val)) || !Object.isExtensible(val)) {\n return\n }\n if (val.__ob__) {\n var depId = val.__ob__.dep.id;\n if (seen.has(depId)) {\n return\n }\n seen.add(depId);\n }\n if (isA) {\n i = val.length;\n while (i--) { _traverse(val[i], seen); }\n } else {\n keys = Object.keys(val);\n i = keys.length;\n while (i--) { _traverse(val[keys[i]], seen); }\n }\n}\n\n/* */\n\nvar sharedPropertyDefinition = {\n enumerable: true,\n configurable: true,\n get: noop,\n set: noop\n};\n\nfunction proxy (target, sourceKey, key) {\n sharedPropertyDefinition.get = function proxyGetter () {\n return this[sourceKey][key]\n };\n sharedPropertyDefinition.set = function proxySetter (val) {\n this[sourceKey][key] = val;\n };\n Object.defineProperty(target, key, sharedPropertyDefinition);\n}\n\nfunction initState (vm) {\n vm._watchers = [];\n var opts = vm.$options;\n if (opts.props) { initProps(vm, opts.props); }\n if (opts.methods) { initMethods(vm, opts.methods); }\n if (opts.data) {\n initData(vm);\n } else {\n observe(vm._data = {}, true /* asRootData */);\n }\n if (opts.computed) { initComputed(vm, opts.computed); }\n if (opts.watch && opts.watch !== nativeWatch) {\n initWatch(vm, opts.watch);\n }\n}\n\nfunction initProps (vm, propsOptions) {\n var propsData = vm.$options.propsData || {};\n var props = vm._props = {};\n // cache prop keys so that future props updates can iterate using Array\n // instead of dynamic object key enumeration.\n var keys = vm.$options._propKeys = [];\n var isRoot = !vm.$parent;\n // root instance props should be converted\n observerState.shouldConvert = isRoot;\n var loop = function ( key ) {\n keys.push(key);\n var value = validateProp(key, propsOptions, propsData, vm);\n /* istanbul ignore else */\n if (false) {\n var hyphenatedKey = hyphenate(key);\n if (isReservedAttribute(hyphenatedKey) ||\n config.isReservedAttr(hyphenatedKey)) {\n warn(\n (\"\\\"\" + hyphenatedKey + \"\\\" is a reserved attribute and cannot be used as component prop.\"),\n vm\n );\n }\n defineReactive(props, key, value, function () {\n if (vm.$parent && !isUpdatingChildComponent) {\n warn(\n \"Avoid mutating a prop directly since the value will be \" +\n \"overwritten whenever the parent component re-renders. \" +\n \"Instead, use a data or computed property based on the prop's \" +\n \"value. Prop being mutated: \\\"\" + key + \"\\\"\",\n vm\n );\n }\n });\n } else {\n defineReactive(props, key, value);\n }\n // static props are already proxied on the component's prototype\n // during Vue.extend(). We only need to proxy props defined at\n // instantiation here.\n if (!(key in vm)) {\n proxy(vm, \"_props\", key);\n }\n };\n\n for (var key in propsOptions) loop( key );\n observerState.shouldConvert = true;\n}\n\nfunction initData (vm) {\n var data = vm.$options.data;\n data = vm._data = typeof data === 'function'\n ? getData(data, vm)\n : data || {};\n if (!isPlainObject(data)) {\n data = {};\n \"production\" !== 'production' && warn(\n 'data functions should return an object:\\n' +\n 'https://vuejs.org/v2/guide/components.html#data-Must-Be-a-Function',\n vm\n );\n }\n // proxy data on instance\n var keys = Object.keys(data);\n var props = vm.$options.props;\n var methods = vm.$options.methods;\n var i = keys.length;\n while (i--) {\n var key = keys[i];\n if (false) {\n if (methods && hasOwn(methods, key)) {\n warn(\n (\"Method \\\"\" + key + \"\\\" has already been defined as a data property.\"),\n vm\n );\n }\n }\n if (props && hasOwn(props, key)) {\n \"production\" !== 'production' && warn(\n \"The data property \\\"\" + key + \"\\\" is already declared as a prop. \" +\n \"Use prop default value instead.\",\n vm\n );\n } else if (!isReserved(key)) {\n proxy(vm, \"_data\", key);\n }\n }\n // observe data\n observe(data, true /* asRootData */);\n}\n\nfunction getData (data, vm) {\n try {\n return data.call(vm, vm)\n } catch (e) {\n handleError(e, vm, \"data()\");\n return {}\n }\n}\n\nvar computedWatcherOptions = { lazy: true };\n\nfunction initComputed (vm, computed) {\n var watchers = vm._computedWatchers = Object.create(null);\n // computed properties are just getters during SSR\n var isSSR = isServerRendering();\n\n for (var key in computed) {\n var userDef = computed[key];\n var getter = typeof userDef === 'function' ? userDef : userDef.get;\n if (false) {\n warn(\n (\"Getter is missing for computed property \\\"\" + key + \"\\\".\"),\n vm\n );\n }\n\n if (!isSSR) {\n // create internal watcher for the computed property.\n watchers[key] = new Watcher(\n vm,\n getter || noop,\n noop,\n computedWatcherOptions\n );\n }\n\n // component-defined computed properties are already defined on the\n // component prototype. We only need to define computed properties defined\n // at instantiation here.\n if (!(key in vm)) {\n defineComputed(vm, key, userDef);\n } else if (false) {\n if (key in vm.$data) {\n warn((\"The computed property \\\"\" + key + \"\\\" is already defined in data.\"), vm);\n } else if (vm.$options.props && key in vm.$options.props) {\n warn((\"The computed property \\\"\" + key + \"\\\" is already defined as a prop.\"), vm);\n }\n }\n }\n}\n\nfunction defineComputed (\n target,\n key,\n userDef\n) {\n var shouldCache = !isServerRendering();\n if (typeof userDef === 'function') {\n sharedPropertyDefinition.get = shouldCache\n ? createComputedGetter(key)\n : userDef;\n sharedPropertyDefinition.set = noop;\n } else {\n sharedPropertyDefinition.get = userDef.get\n ? shouldCache && userDef.cache !== false\n ? createComputedGetter(key)\n : userDef.get\n : noop;\n sharedPropertyDefinition.set = userDef.set\n ? userDef.set\n : noop;\n }\n if (false) {\n sharedPropertyDefinition.set = function () {\n warn(\n (\"Computed property \\\"\" + key + \"\\\" was assigned to but it has no setter.\"),\n this\n );\n };\n }\n Object.defineProperty(target, key, sharedPropertyDefinition);\n}\n\nfunction createComputedGetter (key) {\n return function computedGetter () {\n var watcher = this._computedWatchers && this._computedWatchers[key];\n if (watcher) {\n if (watcher.dirty) {\n watcher.evaluate();\n }\n if (Dep.target) {\n watcher.depend();\n }\n return watcher.value\n }\n }\n}\n\nfunction initMethods (vm, methods) {\n var props = vm.$options.props;\n for (var key in methods) {\n if (false) {\n if (methods[key] == null) {\n warn(\n \"Method \\\"\" + key + \"\\\" has an undefined value in the component definition. \" +\n \"Did you reference the function correctly?\",\n vm\n );\n }\n if (props && hasOwn(props, key)) {\n warn(\n (\"Method \\\"\" + key + \"\\\" has already been defined as a prop.\"),\n vm\n );\n }\n if ((key in vm) && isReserved(key)) {\n warn(\n \"Method \\\"\" + key + \"\\\" conflicts with an existing Vue instance method. \" +\n \"Avoid defining component methods that start with _ or $.\"\n );\n }\n }\n vm[key] = methods[key] == null ? noop : bind(methods[key], vm);\n }\n}\n\nfunction initWatch (vm, watch) {\n for (var key in watch) {\n var handler = watch[key];\n if (Array.isArray(handler)) {\n for (var i = 0; i < handler.length; i++) {\n createWatcher(vm, key, handler[i]);\n }\n } else {\n createWatcher(vm, key, handler);\n }\n }\n}\n\nfunction createWatcher (\n vm,\n keyOrFn,\n handler,\n options\n) {\n if (isPlainObject(handler)) {\n options = handler;\n handler = handler.handler;\n }\n if (typeof handler === 'string') {\n handler = vm[handler];\n }\n return vm.$watch(keyOrFn, handler, options)\n}\n\nfunction stateMixin (Vue) {\n // flow somehow has problems with directly declared definition object\n // when using Object.defineProperty, so we have to procedurally build up\n // the object here.\n var dataDef = {};\n dataDef.get = function () { return this._data };\n var propsDef = {};\n propsDef.get = function () { return this._props };\n if (false) {\n dataDef.set = function (newData) {\n warn(\n 'Avoid replacing instance root $data. ' +\n 'Use nested data properties instead.',\n this\n );\n };\n propsDef.set = function () {\n warn(\"$props is readonly.\", this);\n };\n }\n Object.defineProperty(Vue.prototype, '$data', dataDef);\n Object.defineProperty(Vue.prototype, '$props', propsDef);\n\n Vue.prototype.$set = set;\n Vue.prototype.$delete = del;\n\n Vue.prototype.$watch = function (\n expOrFn,\n cb,\n options\n ) {\n var vm = this;\n if (isPlainObject(cb)) {\n return createWatcher(vm, expOrFn, cb, options)\n }\n options = options || {};\n options.user = true;\n var watcher = new Watcher(vm, expOrFn, cb, options);\n if (options.immediate) {\n cb.call(vm, watcher.value);\n }\n return function unwatchFn () {\n watcher.teardown();\n }\n };\n}\n\n/* */\n\nfunction initProvide (vm) {\n var provide = vm.$options.provide;\n if (provide) {\n vm._provided = typeof provide === 'function'\n ? provide.call(vm)\n : provide;\n }\n}\n\nfunction initInjections (vm) {\n var result = resolveInject(vm.$options.inject, vm);\n if (result) {\n observerState.shouldConvert = false;\n Object.keys(result).forEach(function (key) {\n /* istanbul ignore else */\n if (false) {\n defineReactive(vm, key, result[key], function () {\n warn(\n \"Avoid mutating an injected value directly since the changes will be \" +\n \"overwritten whenever the provided component re-renders. \" +\n \"injection being mutated: \\\"\" + key + \"\\\"\",\n vm\n );\n });\n } else {\n defineReactive(vm, key, result[key]);\n }\n });\n observerState.shouldConvert = true;\n }\n}\n\nfunction resolveInject (inject, vm) {\n if (inject) {\n // inject is :any because flow is not smart enough to figure out cached\n var result = Object.create(null);\n var keys = hasSymbol\n ? Reflect.ownKeys(inject).filter(function (key) {\n /* istanbul ignore next */\n return Object.getOwnPropertyDescriptor(inject, key).enumerable\n })\n : Object.keys(inject);\n\n for (var i = 0; i < keys.length; i++) {\n var key = keys[i];\n var provideKey = inject[key].from;\n var source = vm;\n while (source) {\n if (source._provided && provideKey in source._provided) {\n result[key] = source._provided[provideKey];\n break\n }\n source = source.$parent;\n }\n if (!source) {\n if ('default' in inject[key]) {\n var provideDefault = inject[key].default;\n result[key] = typeof provideDefault === 'function'\n ? provideDefault.call(vm)\n : provideDefault;\n } else if (false) {\n warn((\"Injection \\\"\" + key + \"\\\" not found\"), vm);\n }\n }\n }\n return result\n }\n}\n\n/* */\n\n/**\n * Runtime helper for rendering v-for lists.\n */\nfunction renderList (\n val,\n render\n) {\n var ret, i, l, keys, key;\n if (Array.isArray(val) || typeof val === 'string') {\n ret = new Array(val.length);\n for (i = 0, l = val.length; i < l; i++) {\n ret[i] = render(val[i], i);\n }\n } else if (typeof val === 'number') {\n ret = new Array(val);\n for (i = 0; i < val; i++) {\n ret[i] = render(i + 1, i);\n }\n } else if (isObject(val)) {\n keys = Object.keys(val);\n ret = new Array(keys.length);\n for (i = 0, l = keys.length; i < l; i++) {\n key = keys[i];\n ret[i] = render(val[key], key, i);\n }\n }\n if (isDef(ret)) {\n (ret)._isVList = true;\n }\n return ret\n}\n\n/* */\n\n/**\n * Runtime helper for rendering <slot>\n */\nfunction renderSlot (\n name,\n fallback,\n props,\n bindObject\n) {\n var scopedSlotFn = this.$scopedSlots[name];\n if (scopedSlotFn) { // scoped slot\n props = props || {};\n if (bindObject) {\n if (false) {\n warn(\n 'slot v-bind without argument expects an Object',\n this\n );\n }\n props = extend(extend({}, bindObject), props);\n }\n return scopedSlotFn(props) || fallback\n } else {\n var slotNodes = this.$slots[name];\n // warn duplicate slot usage\n if (slotNodes && \"production\" !== 'production') {\n slotNodes._rendered && warn(\n \"Duplicate presence of slot \\\"\" + name + \"\\\" found in the same render tree \" +\n \"- this will likely cause render errors.\",\n this\n );\n slotNodes._rendered = true;\n }\n return slotNodes || fallback\n }\n}\n\n/* */\n\n/**\n * Runtime helper for resolving filters\n */\nfunction resolveFilter (id) {\n return resolveAsset(this.$options, 'filters', id, true) || identity\n}\n\n/* */\n\n/**\n * Runtime helper for checking keyCodes from config.\n * exposed as Vue.prototype._k\n * passing in eventKeyName as last argument separately for backwards compat\n */\nfunction checkKeyCodes (\n eventKeyCode,\n key,\n builtInAlias,\n eventKeyName\n) {\n var keyCodes = config.keyCodes[key] || builtInAlias;\n if (keyCodes) {\n if (Array.isArray(keyCodes)) {\n return keyCodes.indexOf(eventKeyCode) === -1\n } else {\n return keyCodes !== eventKeyCode\n }\n } else if (eventKeyName) {\n return hyphenate(eventKeyName) !== key\n }\n}\n\n/* */\n\n/**\n * Runtime helper for merging v-bind=\"object\" into a VNode's data.\n */\nfunction bindObjectProps (\n data,\n tag,\n value,\n asProp,\n isSync\n) {\n if (value) {\n if (!isObject(value)) {\n \"production\" !== 'production' && warn(\n 'v-bind without argument expects an Object or Array value',\n this\n );\n } else {\n if (Array.isArray(value)) {\n value = toObject(value);\n }\n var hash;\n var loop = function ( key ) {\n if (\n key === 'class' ||\n key === 'style' ||\n isReservedAttribute(key)\n ) {\n hash = data;\n } else {\n var type = data.attrs && data.attrs.type;\n hash = asProp || config.mustUseProp(tag, type, key)\n ? data.domProps || (data.domProps = {})\n : data.attrs || (data.attrs = {});\n }\n if (!(key in hash)) {\n hash[key] = value[key];\n\n if (isSync) {\n var on = data.on || (data.on = {});\n on[(\"update:\" + key)] = function ($event) {\n value[key] = $event;\n };\n }\n }\n };\n\n for (var key in value) loop( key );\n }\n }\n return data\n}\n\n/* */\n\n/**\n * Runtime helper for rendering static trees.\n */\nfunction renderStatic (\n index,\n isInFor\n) {\n // static trees can be rendered once and cached on the contructor options\n // so every instance shares the same cached trees\n var renderFns = this.$options.staticRenderFns;\n var cached = renderFns.cached || (renderFns.cached = []);\n var tree = cached[index];\n // if has already-rendered static tree and not inside v-for,\n // we can reuse the same tree by doing a shallow clone.\n if (tree && !isInFor) {\n return Array.isArray(tree)\n ? cloneVNodes(tree)\n : cloneVNode(tree)\n }\n // otherwise, render a fresh tree.\n tree = cached[index] = renderFns[index].call(this._renderProxy, null, this);\n markStatic(tree, (\"__static__\" + index), false);\n return tree\n}\n\n/**\n * Runtime helper for v-once.\n * Effectively it means marking the node as static with a unique key.\n */\nfunction markOnce (\n tree,\n index,\n key\n) {\n markStatic(tree, (\"__once__\" + index + (key ? (\"_\" + key) : \"\")), true);\n return tree\n}\n\nfunction markStatic (\n tree,\n key,\n isOnce\n) {\n if (Array.isArray(tree)) {\n for (var i = 0; i < tree.length; i++) {\n if (tree[i] && typeof tree[i] !== 'string') {\n markStaticNode(tree[i], (key + \"_\" + i), isOnce);\n }\n }\n } else {\n markStaticNode(tree, key, isOnce);\n }\n}\n\nfunction markStaticNode (node, key, isOnce) {\n node.isStatic = true;\n node.key = key;\n node.isOnce = isOnce;\n}\n\n/* */\n\nfunction bindObjectListeners (data, value) {\n if (value) {\n if (!isPlainObject(value)) {\n \"production\" !== 'production' && warn(\n 'v-on without argument expects an Object value',\n this\n );\n } else {\n var on = data.on = data.on ? extend({}, data.on) : {};\n for (var key in value) {\n var existing = on[key];\n var ours = value[key];\n on[key] = existing ? [].concat(existing, ours) : ours;\n }\n }\n }\n return data\n}\n\n/* */\n\nfunction installRenderHelpers (target) {\n target._o = markOnce;\n target._n = toNumber;\n target._s = toString;\n target._l = renderList;\n target._t = renderSlot;\n target._q = looseEqual;\n target._i = looseIndexOf;\n target._m = renderStatic;\n target._f = resolveFilter;\n target._k = checkKeyCodes;\n target._b = bindObjectProps;\n target._v = createTextVNode;\n target._e = createEmptyVNode;\n target._u = resolveScopedSlots;\n target._g = bindObjectListeners;\n}\n\n/* */\n\nfunction FunctionalRenderContext (\n data,\n props,\n children,\n parent,\n Ctor\n) {\n var options = Ctor.options;\n this.data = data;\n this.props = props;\n this.children = children;\n this.parent = parent;\n this.listeners = data.on || emptyObject;\n this.injections = resolveInject(options.inject, parent);\n this.slots = function () { return resolveSlots(children, parent); };\n\n // ensure the createElement function in functional components\n // gets a unique context - this is necessary for correct named slot check\n var contextVm = Object.create(parent);\n var isCompiled = isTrue(options._compiled);\n var needNormalization = !isCompiled;\n\n // support for compiled functional template\n if (isCompiled) {\n // exposing $options for renderStatic()\n this.$options = options;\n // pre-resolve slots for renderSlot()\n this.$slots = this.slots();\n this.$scopedSlots = data.scopedSlots || emptyObject;\n }\n\n if (options._scopeId) {\n this._c = function (a, b, c, d) {\n var vnode = createElement(contextVm, a, b, c, d, needNormalization);\n if (vnode) {\n vnode.functionalScopeId = options._scopeId;\n vnode.functionalContext = parent;\n }\n return vnode\n };\n } else {\n this._c = function (a, b, c, d) { return createElement(contextVm, a, b, c, d, needNormalization); };\n }\n}\n\ninstallRenderHelpers(FunctionalRenderContext.prototype);\n\nfunction createFunctionalComponent (\n Ctor,\n propsData,\n data,\n contextVm,\n children\n) {\n var options = Ctor.options;\n var props = {};\n var propOptions = options.props;\n if (isDef(propOptions)) {\n for (var key in propOptions) {\n props[key] = validateProp(key, propOptions, propsData || emptyObject);\n }\n } else {\n if (isDef(data.attrs)) { mergeProps(props, data.attrs); }\n if (isDef(data.props)) { mergeProps(props, data.props); }\n }\n\n var renderContext = new FunctionalRenderContext(\n data,\n props,\n children,\n contextVm,\n Ctor\n );\n\n var vnode = options.render.call(null, renderContext._c, renderContext);\n\n if (vnode instanceof VNode) {\n vnode.functionalContext = contextVm;\n vnode.functionalOptions = options;\n if (data.slot) {\n (vnode.data || (vnode.data = {})).slot = data.slot;\n }\n }\n\n return vnode\n}\n\nfunction mergeProps (to, from) {\n for (var key in from) {\n to[camelize(key)] = from[key];\n }\n}\n\n/* */\n\n// hooks to be invoked on component VNodes during patch\nvar componentVNodeHooks = {\n init: function init (\n vnode,\n hydrating,\n parentElm,\n refElm\n ) {\n if (!vnode.componentInstance || vnode.componentInstance._isDestroyed) {\n var child = vnode.componentInstance = createComponentInstanceForVnode(\n vnode,\n activeInstance,\n parentElm,\n refElm\n );\n child.$mount(hydrating ? vnode.elm : undefined, hydrating);\n } else if (vnode.data.keepAlive) {\n // kept-alive components, treat as a patch\n var mountedNode = vnode; // work around flow\n componentVNodeHooks.prepatch(mountedNode, mountedNode);\n }\n },\n\n prepatch: function prepatch (oldVnode, vnode) {\n var options = vnode.componentOptions;\n var child = vnode.componentInstance = oldVnode.componentInstance;\n updateChildComponent(\n child,\n options.propsData, // updated props\n options.listeners, // updated listeners\n vnode, // new parent vnode\n options.children // new children\n );\n },\n\n insert: function insert (vnode) {\n var context = vnode.context;\n var componentInstance = vnode.componentInstance;\n if (!componentInstance._isMounted) {\n componentInstance._isMounted = true;\n callHook(componentInstance, 'mounted');\n }\n if (vnode.data.keepAlive) {\n if (context._isMounted) {\n // vue-router#1212\n // During updates, a kept-alive component's child components may\n // change, so directly walking the tree here may call activated hooks\n // on incorrect children. Instead we push them into a queue which will\n // be processed after the whole patch process ended.\n queueActivatedComponent(componentInstance);\n } else {\n activateChildComponent(componentInstance, true /* direct */);\n }\n }\n },\n\n destroy: function destroy (vnode) {\n var componentInstance = vnode.componentInstance;\n if (!componentInstance._isDestroyed) {\n if (!vnode.data.keepAlive) {\n componentInstance.$destroy();\n } else {\n deactivateChildComponent(componentInstance, true /* direct */);\n }\n }\n }\n};\n\nvar hooksToMerge = Object.keys(componentVNodeHooks);\n\nfunction createComponent (\n Ctor,\n data,\n context,\n children,\n tag\n) {\n if (isUndef(Ctor)) {\n return\n }\n\n var baseCtor = context.$options._base;\n\n // plain options object: turn it into a constructor\n if (isObject(Ctor)) {\n Ctor = baseCtor.extend(Ctor);\n }\n\n // if at this stage it's not a constructor or an async component factory,\n // reject.\n if (typeof Ctor !== 'function') {\n if (false) {\n warn((\"Invalid Component definition: \" + (String(Ctor))), context);\n }\n return\n }\n\n // async component\n var asyncFactory;\n if (isUndef(Ctor.cid)) {\n asyncFactory = Ctor;\n Ctor = resolveAsyncComponent(asyncFactory, baseCtor, context);\n if (Ctor === undefined) {\n // return a placeholder node for async component, which is rendered\n // as a comment node but preserves all the raw information for the node.\n // the information will be used for async server-rendering and hydration.\n return createAsyncPlaceholder(\n asyncFactory,\n data,\n context,\n children,\n tag\n )\n }\n }\n\n data = data || {};\n\n // resolve constructor options in case global mixins are applied after\n // component constructor creation\n resolveConstructorOptions(Ctor);\n\n // transform component v-model data into props & events\n if (isDef(data.model)) {\n transformModel(Ctor.options, data);\n }\n\n // extract props\n var propsData = extractPropsFromVNodeData(data, Ctor, tag);\n\n // functional component\n if (isTrue(Ctor.options.functional)) {\n return createFunctionalComponent(Ctor, propsData, data, context, children)\n }\n\n // extract listeners, since these needs to be treated as\n // child component listeners instead of DOM listeners\n var listeners = data.on;\n // replace with listeners with .native modifier\n // so it gets processed during parent component patch.\n data.on = data.nativeOn;\n\n if (isTrue(Ctor.options.abstract)) {\n // abstract components do not keep anything\n // other than props & listeners & slot\n\n // work around flow\n var slot = data.slot;\n data = {};\n if (slot) {\n data.slot = slot;\n }\n }\n\n // merge component management hooks onto the placeholder node\n mergeHooks(data);\n\n // return a placeholder vnode\n var name = Ctor.options.name || tag;\n var vnode = new VNode(\n (\"vue-component-\" + (Ctor.cid) + (name ? (\"-\" + name) : '')),\n data, undefined, undefined, undefined, context,\n { Ctor: Ctor, propsData: propsData, listeners: listeners, tag: tag, children: children },\n asyncFactory\n );\n return vnode\n}\n\nfunction createComponentInstanceForVnode (\n vnode, // we know it's MountedComponentVNode but flow doesn't\n parent, // activeInstance in lifecycle state\n parentElm,\n refElm\n) {\n var vnodeComponentOptions = vnode.componentOptions;\n var options = {\n _isComponent: true,\n parent: parent,\n propsData: vnodeComponentOptions.propsData,\n _componentTag: vnodeComponentOptions.tag,\n _parentVnode: vnode,\n _parentListeners: vnodeComponentOptions.listeners,\n _renderChildren: vnodeComponentOptions.children,\n _parentElm: parentElm || null,\n _refElm: refElm || null\n };\n // check inline-template render functions\n var inlineTemplate = vnode.data.inlineTemplate;\n if (isDef(inlineTemplate)) {\n options.render = inlineTemplate.render;\n options.staticRenderFns = inlineTemplate.staticRenderFns;\n }\n return new vnodeComponentOptions.Ctor(options)\n}\n\nfunction mergeHooks (data) {\n if (!data.hook) {\n data.hook = {};\n }\n for (var i = 0; i < hooksToMerge.length; i++) {\n var key = hooksToMerge[i];\n var fromParent = data.hook[key];\n var ours = componentVNodeHooks[key];\n data.hook[key] = fromParent ? mergeHook$1(ours, fromParent) : ours;\n }\n}\n\nfunction mergeHook$1 (one, two) {\n return function (a, b, c, d) {\n one(a, b, c, d);\n two(a, b, c, d);\n }\n}\n\n// transform component v-model info (value and callback) into\n// prop and event handler respectively.\nfunction transformModel (options, data) {\n var prop = (options.model && options.model.prop) || 'value';\n var event = (options.model && options.model.event) || 'input';(data.props || (data.props = {}))[prop] = data.model.value;\n var on = data.on || (data.on = {});\n if (isDef(on[event])) {\n on[event] = [data.model.callback].concat(on[event]);\n } else {\n on[event] = data.model.callback;\n }\n}\n\n/* */\n\nvar SIMPLE_NORMALIZE = 1;\nvar ALWAYS_NORMALIZE = 2;\n\n// wrapper function for providing a more flexible interface\n// without getting yelled at by flow\nfunction createElement (\n context,\n tag,\n data,\n children,\n normalizationType,\n alwaysNormalize\n) {\n if (Array.isArray(data) || isPrimitive(data)) {\n normalizationType = children;\n children = data;\n data = undefined;\n }\n if (isTrue(alwaysNormalize)) {\n normalizationType = ALWAYS_NORMALIZE;\n }\n return _createElement(context, tag, data, children, normalizationType)\n}\n\nfunction _createElement (\n context,\n tag,\n data,\n children,\n normalizationType\n) {\n if (isDef(data) && isDef((data).__ob__)) {\n \"production\" !== 'production' && warn(\n \"Avoid using observed data object as vnode data: \" + (JSON.stringify(data)) + \"\\n\" +\n 'Always create fresh vnode data objects in each render!',\n context\n );\n return createEmptyVNode()\n }\n // object syntax in v-bind\n if (isDef(data) && isDef(data.is)) {\n tag = data.is;\n }\n if (!tag) {\n // in case of component :is set to falsy value\n return createEmptyVNode()\n }\n // warn against non-primitive key\n if (false\n ) {\n warn(\n 'Avoid using non-primitive value as key, ' +\n 'use string/number value instead.',\n context\n );\n }\n // support single function children as default scoped slot\n if (Array.isArray(children) &&\n typeof children[0] === 'function'\n ) {\n data = data || {};\n data.scopedSlots = { default: children[0] };\n children.length = 0;\n }\n if (normalizationType === ALWAYS_NORMALIZE) {\n children = normalizeChildren(children);\n } else if (normalizationType === SIMPLE_NORMALIZE) {\n children = simpleNormalizeChildren(children);\n }\n var vnode, ns;\n if (typeof tag === 'string') {\n var Ctor;\n ns = (context.$vnode && context.$vnode.ns) || config.getTagNamespace(tag);\n if (config.isReservedTag(tag)) {\n // platform built-in elements\n vnode = new VNode(\n config.parsePlatformTagName(tag), data, children,\n undefined, undefined, context\n );\n } else if (isDef(Ctor = resolveAsset(context.$options, 'components', tag))) {\n // component\n vnode = createComponent(Ctor, data, context, children, tag);\n } else {\n // unknown or unlisted namespaced elements\n // check at runtime because it may get assigned a namespace when its\n // parent normalizes children\n vnode = new VNode(\n tag, data, children,\n undefined, undefined, context\n );\n }\n } else {\n // direct component options / constructor\n vnode = createComponent(tag, data, context, children);\n }\n if (isDef(vnode)) {\n if (ns) { applyNS(vnode, ns); }\n return vnode\n } else {\n return createEmptyVNode()\n }\n}\n\nfunction applyNS (vnode, ns, force) {\n vnode.ns = ns;\n if (vnode.tag === 'foreignObject') {\n // use default namespace inside foreignObject\n ns = undefined;\n force = true;\n }\n if (isDef(vnode.children)) {\n for (var i = 0, l = vnode.children.length; i < l; i++) {\n var child = vnode.children[i];\n if (isDef(child.tag) && (isUndef(child.ns) || isTrue(force))) {\n applyNS(child, ns, force);\n }\n }\n }\n}\n\n/* */\n\nfunction initRender (vm) {\n vm._vnode = null; // the root of the child tree\n var options = vm.$options;\n var parentVnode = vm.$vnode = options._parentVnode; // the placeholder node in parent tree\n var renderContext = parentVnode && parentVnode.context;\n vm.$slots = resolveSlots(options._renderChildren, renderContext);\n vm.$scopedSlots = emptyObject;\n // bind the createElement fn to this instance\n // so that we get proper render context inside it.\n // args order: tag, data, children, normalizationType, alwaysNormalize\n // internal version is used by render functions compiled from templates\n vm._c = function (a, b, c, d) { return createElement(vm, a, b, c, d, false); };\n // normalization is always applied for the public version, used in\n // user-written render functions.\n vm.$createElement = function (a, b, c, d) { return createElement(vm, a, b, c, d, true); };\n\n // $attrs & $listeners are exposed for easier HOC creation.\n // they need to be reactive so that HOCs using them are always updated\n var parentData = parentVnode && parentVnode.data;\n\n /* istanbul ignore else */\n if (false) {\n defineReactive(vm, '$attrs', parentData && parentData.attrs || emptyObject, function () {\n !isUpdatingChildComponent && warn(\"$attrs is readonly.\", vm);\n }, true);\n defineReactive(vm, '$listeners', options._parentListeners || emptyObject, function () {\n !isUpdatingChildComponent && warn(\"$listeners is readonly.\", vm);\n }, true);\n } else {\n defineReactive(vm, '$attrs', parentData && parentData.attrs || emptyObject, null, true);\n defineReactive(vm, '$listeners', options._parentListeners || emptyObject, null, true);\n }\n}\n\nfunction renderMixin (Vue) {\n // install runtime convenience helpers\n installRenderHelpers(Vue.prototype);\n\n Vue.prototype.$nextTick = function (fn) {\n return nextTick(fn, this)\n };\n\n Vue.prototype._render = function () {\n var vm = this;\n var ref = vm.$options;\n var render = ref.render;\n var _parentVnode = ref._parentVnode;\n\n if (vm._isMounted) {\n // if the parent didn't update, the slot nodes will be the ones from\n // last render. They need to be cloned to ensure \"freshness\" for this render.\n for (var key in vm.$slots) {\n var slot = vm.$slots[key];\n if (slot._rendered) {\n vm.$slots[key] = cloneVNodes(slot, true /* deep */);\n }\n }\n }\n\n vm.$scopedSlots = (_parentVnode && _parentVnode.data.scopedSlots) || emptyObject;\n\n // set parent vnode. this allows render functions to have access\n // to the data on the placeholder node.\n vm.$vnode = _parentVnode;\n // render self\n var vnode;\n try {\n vnode = render.call(vm._renderProxy, vm.$createElement);\n } catch (e) {\n handleError(e, vm, \"render\");\n // return error render result,\n // or previous vnode to prevent render error causing blank component\n /* istanbul ignore else */\n if (false) {\n if (vm.$options.renderError) {\n try {\n vnode = vm.$options.renderError.call(vm._renderProxy, vm.$createElement, e);\n } catch (e) {\n handleError(e, vm, \"renderError\");\n vnode = vm._vnode;\n }\n } else {\n vnode = vm._vnode;\n }\n } else {\n vnode = vm._vnode;\n }\n }\n // return empty vnode in case the render function errored out\n if (!(vnode instanceof VNode)) {\n if (false) {\n warn(\n 'Multiple root nodes returned from render function. Render function ' +\n 'should return a single root node.',\n vm\n );\n }\n vnode = createEmptyVNode();\n }\n // set parent\n vnode.parent = _parentVnode;\n return vnode\n };\n}\n\n/* */\n\nvar uid$1 = 0;\n\nfunction initMixin (Vue) {\n Vue.prototype._init = function (options) {\n var vm = this;\n // a uid\n vm._uid = uid$1++;\n\n var startTag, endTag;\n /* istanbul ignore if */\n if (false) {\n startTag = \"vue-perf-start:\" + (vm._uid);\n endTag = \"vue-perf-end:\" + (vm._uid);\n mark(startTag);\n }\n\n // a flag to avoid this being observed\n vm._isVue = true;\n // merge options\n if (options && options._isComponent) {\n // optimize internal component instantiation\n // since dynamic options merging is pretty slow, and none of the\n // internal component options needs special treatment.\n initInternalComponent(vm, options);\n } else {\n vm.$options = mergeOptions(\n resolveConstructorOptions(vm.constructor),\n options || {},\n vm\n );\n }\n /* istanbul ignore else */\n if (false) {\n initProxy(vm);\n } else {\n vm._renderProxy = vm;\n }\n // expose real self\n vm._self = vm;\n initLifecycle(vm);\n initEvents(vm);\n initRender(vm);\n callHook(vm, 'beforeCreate');\n initInjections(vm); // resolve injections before data/props\n initState(vm);\n initProvide(vm); // resolve provide after data/props\n callHook(vm, 'created');\n\n /* istanbul ignore if */\n if (false) {\n vm._name = formatComponentName(vm, false);\n mark(endTag);\n measure((\"vue \" + (vm._name) + \" init\"), startTag, endTag);\n }\n\n if (vm.$options.el) {\n vm.$mount(vm.$options.el);\n }\n };\n}\n\nfunction initInternalComponent (vm, options) {\n var opts = vm.$options = Object.create(vm.constructor.options);\n // doing this because it's faster than dynamic enumeration.\n opts.parent = options.parent;\n opts.propsData = options.propsData;\n opts._parentVnode = options._parentVnode;\n opts._parentListeners = options._parentListeners;\n opts._renderChildren = options._renderChildren;\n opts._componentTag = options._componentTag;\n opts._parentElm = options._parentElm;\n opts._refElm = options._refElm;\n if (options.render) {\n opts.render = options.render;\n opts.staticRenderFns = options.staticRenderFns;\n }\n}\n\nfunction resolveConstructorOptions (Ctor) {\n var options = Ctor.options;\n if (Ctor.super) {\n var superOptions = resolveConstructorOptions(Ctor.super);\n var cachedSuperOptions = Ctor.superOptions;\n if (superOptions !== cachedSuperOptions) {\n // super option changed,\n // need to resolve new options.\n Ctor.superOptions = superOptions;\n // check if there are any late-modified/attached options (#4976)\n var modifiedOptions = resolveModifiedOptions(Ctor);\n // update base extend options\n if (modifiedOptions) {\n extend(Ctor.extendOptions, modifiedOptions);\n }\n options = Ctor.options = mergeOptions(superOptions, Ctor.extendOptions);\n if (options.name) {\n options.components[options.name] = Ctor;\n }\n }\n }\n return options\n}\n\nfunction resolveModifiedOptions (Ctor) {\n var modified;\n var latest = Ctor.options;\n var extended = Ctor.extendOptions;\n var sealed = Ctor.sealedOptions;\n for (var key in latest) {\n if (latest[key] !== sealed[key]) {\n if (!modified) { modified = {}; }\n modified[key] = dedupe(latest[key], extended[key], sealed[key]);\n }\n }\n return modified\n}\n\nfunction dedupe (latest, extended, sealed) {\n // compare latest and sealed to ensure lifecycle hooks won't be duplicated\n // between merges\n if (Array.isArray(latest)) {\n var res = [];\n sealed = Array.isArray(sealed) ? sealed : [sealed];\n extended = Array.isArray(extended) ? extended : [extended];\n for (var i = 0; i < latest.length; i++) {\n // push original options and not sealed options to exclude duplicated options\n if (extended.indexOf(latest[i]) >= 0 || sealed.indexOf(latest[i]) < 0) {\n res.push(latest[i]);\n }\n }\n return res\n } else {\n return latest\n }\n}\n\nfunction Vue$3 (options) {\n if (false\n ) {\n warn('Vue is a constructor and should be called with the `new` keyword');\n }\n this._init(options);\n}\n\ninitMixin(Vue$3);\nstateMixin(Vue$3);\neventsMixin(Vue$3);\nlifecycleMixin(Vue$3);\nrenderMixin(Vue$3);\n\n/* */\n\nfunction initUse (Vue) {\n Vue.use = function (plugin) {\n var installedPlugins = (this._installedPlugins || (this._installedPlugins = []));\n if (installedPlugins.indexOf(plugin) > -1) {\n return this\n }\n\n // additional parameters\n var args = toArray(arguments, 1);\n args.unshift(this);\n if (typeof plugin.install === 'function') {\n plugin.install.apply(plugin, args);\n } else if (typeof plugin === 'function') {\n plugin.apply(null, args);\n }\n installedPlugins.push(plugin);\n return this\n };\n}\n\n/* */\n\nfunction initMixin$1 (Vue) {\n Vue.mixin = function (mixin) {\n this.options = mergeOptions(this.options, mixin);\n return this\n };\n}\n\n/* */\n\nfunction initExtend (Vue) {\n /**\n * Each instance constructor, including Vue, has a unique\n * cid. This enables us to create wrapped \"child\n * constructors\" for prototypal inheritance and cache them.\n */\n Vue.cid = 0;\n var cid = 1;\n\n /**\n * Class inheritance\n */\n Vue.extend = function (extendOptions) {\n extendOptions = extendOptions || {};\n var Super = this;\n var SuperId = Super.cid;\n var cachedCtors = extendOptions._Ctor || (extendOptions._Ctor = {});\n if (cachedCtors[SuperId]) {\n return cachedCtors[SuperId]\n }\n\n var name = extendOptions.name || Super.options.name;\n if (false) {\n if (!/^[a-zA-Z][\\w-]*$/.test(name)) {\n warn(\n 'Invalid component name: \"' + name + '\". Component names ' +\n 'can only contain alphanumeric characters and the hyphen, ' +\n 'and must start with a letter.'\n );\n }\n }\n\n var Sub = function VueComponent (options) {\n this._init(options);\n };\n Sub.prototype = Object.create(Super.prototype);\n Sub.prototype.constructor = Sub;\n Sub.cid = cid++;\n Sub.options = mergeOptions(\n Super.options,\n extendOptions\n );\n Sub['super'] = Super;\n\n // For props and computed properties, we define the proxy getters on\n // the Vue instances at extension time, on the extended prototype. This\n // avoids Object.defineProperty calls for each instance created.\n if (Sub.options.props) {\n initProps$1(Sub);\n }\n if (Sub.options.computed) {\n initComputed$1(Sub);\n }\n\n // allow further extension/mixin/plugin usage\n Sub.extend = Super.extend;\n Sub.mixin = Super.mixin;\n Sub.use = Super.use;\n\n // create asset registers, so extended classes\n // can have their private assets too.\n ASSET_TYPES.forEach(function (type) {\n Sub[type] = Super[type];\n });\n // enable recursive self-lookup\n if (name) {\n Sub.options.components[name] = Sub;\n }\n\n // keep a reference to the super options at extension time.\n // later at instantiation we can check if Super's options have\n // been updated.\n Sub.superOptions = Super.options;\n Sub.extendOptions = extendOptions;\n Sub.sealedOptions = extend({}, Sub.options);\n\n // cache constructor\n cachedCtors[SuperId] = Sub;\n return Sub\n };\n}\n\nfunction initProps$1 (Comp) {\n var props = Comp.options.props;\n for (var key in props) {\n proxy(Comp.prototype, \"_props\", key);\n }\n}\n\nfunction initComputed$1 (Comp) {\n var computed = Comp.options.computed;\n for (var key in computed) {\n defineComputed(Comp.prototype, key, computed[key]);\n }\n}\n\n/* */\n\nfunction initAssetRegisters (Vue) {\n /**\n * Create asset registration methods.\n */\n ASSET_TYPES.forEach(function (type) {\n Vue[type] = function (\n id,\n definition\n ) {\n if (!definition) {\n return this.options[type + 's'][id]\n } else {\n /* istanbul ignore if */\n if (false) {\n if (type === 'component' && config.isReservedTag(id)) {\n warn(\n 'Do not use built-in or reserved HTML elements as component ' +\n 'id: ' + id\n );\n }\n }\n if (type === 'component' && isPlainObject(definition)) {\n definition.name = definition.name || id;\n definition = this.options._base.extend(definition);\n }\n if (type === 'directive' && typeof definition === 'function') {\n definition = { bind: definition, update: definition };\n }\n this.options[type + 's'][id] = definition;\n return definition\n }\n };\n });\n}\n\n/* */\n\nfunction getComponentName (opts) {\n return opts && (opts.Ctor.options.name || opts.tag)\n}\n\nfunction matches (pattern, name) {\n if (Array.isArray(pattern)) {\n return pattern.indexOf(name) > -1\n } else if (typeof pattern === 'string') {\n return pattern.split(',').indexOf(name) > -1\n } else if (isRegExp(pattern)) {\n return pattern.test(name)\n }\n /* istanbul ignore next */\n return false\n}\n\nfunction pruneCache (keepAliveInstance, filter) {\n var cache = keepAliveInstance.cache;\n var keys = keepAliveInstance.keys;\n var _vnode = keepAliveInstance._vnode;\n for (var key in cache) {\n var cachedNode = cache[key];\n if (cachedNode) {\n var name = getComponentName(cachedNode.componentOptions);\n if (name && !filter(name)) {\n pruneCacheEntry(cache, key, keys, _vnode);\n }\n }\n }\n}\n\nfunction pruneCacheEntry (\n cache,\n key,\n keys,\n current\n) {\n var cached$$1 = cache[key];\n if (cached$$1 && cached$$1 !== current) {\n cached$$1.componentInstance.$destroy();\n }\n cache[key] = null;\n remove(keys, key);\n}\n\nvar patternTypes = [String, RegExp, Array];\n\nvar KeepAlive = {\n name: 'keep-alive',\n abstract: true,\n\n props: {\n include: patternTypes,\n exclude: patternTypes,\n max: [String, Number]\n },\n\n created: function created () {\n this.cache = Object.create(null);\n this.keys = [];\n },\n\n destroyed: function destroyed () {\n var this$1 = this;\n\n for (var key in this$1.cache) {\n pruneCacheEntry(this$1.cache, key, this$1.keys);\n }\n },\n\n watch: {\n include: function include (val) {\n pruneCache(this, function (name) { return matches(val, name); });\n },\n exclude: function exclude (val) {\n pruneCache(this, function (name) { return !matches(val, name); });\n }\n },\n\n render: function render () {\n var vnode = getFirstComponentChild(this.$slots.default);\n var componentOptions = vnode && vnode.componentOptions;\n if (componentOptions) {\n // check pattern\n var name = getComponentName(componentOptions);\n if (name && (\n (this.include && !matches(this.include, name)) ||\n (this.exclude && matches(this.exclude, name))\n )) {\n return vnode\n }\n\n var ref = this;\n var cache = ref.cache;\n var keys = ref.keys;\n var key = vnode.key == null\n // same constructor may get registered as different local components\n // so cid alone is not enough (#3269)\n ? componentOptions.Ctor.cid + (componentOptions.tag ? (\"::\" + (componentOptions.tag)) : '')\n : vnode.key;\n if (cache[key]) {\n vnode.componentInstance = cache[key].componentInstance;\n // make current key freshest\n remove(keys, key);\n keys.push(key);\n } else {\n cache[key] = vnode;\n keys.push(key);\n // prune oldest entry\n if (this.max && keys.length > parseInt(this.max)) {\n pruneCacheEntry(cache, keys[0], keys, this._vnode);\n }\n }\n\n vnode.data.keepAlive = true;\n }\n return vnode\n }\n};\n\nvar builtInComponents = {\n KeepAlive: KeepAlive\n};\n\n/* */\n\nfunction initGlobalAPI (Vue) {\n // config\n var configDef = {};\n configDef.get = function () { return config; };\n if (false) {\n configDef.set = function () {\n warn(\n 'Do not replace the Vue.config object, set individual fields instead.'\n );\n };\n }\n Object.defineProperty(Vue, 'config', configDef);\n\n // exposed util methods.\n // NOTE: these are not considered part of the public API - avoid relying on\n // them unless you are aware of the risk.\n Vue.util = {\n warn: warn,\n extend: extend,\n mergeOptions: mergeOptions,\n defineReactive: defineReactive\n };\n\n Vue.set = set;\n Vue.delete = del;\n Vue.nextTick = nextTick;\n\n Vue.options = Object.create(null);\n ASSET_TYPES.forEach(function (type) {\n Vue.options[type + 's'] = Object.create(null);\n });\n\n // this is used to identify the \"base\" constructor to extend all plain-object\n // components with in Weex's multi-instance scenarios.\n Vue.options._base = Vue;\n\n extend(Vue.options.components, builtInComponents);\n\n initUse(Vue);\n initMixin$1(Vue);\n initExtend(Vue);\n initAssetRegisters(Vue);\n}\n\ninitGlobalAPI(Vue$3);\n\nObject.defineProperty(Vue$3.prototype, '$isServer', {\n get: isServerRendering\n});\n\nObject.defineProperty(Vue$3.prototype, '$ssrContext', {\n get: function get () {\n /* istanbul ignore next */\n return this.$vnode && this.$vnode.ssrContext\n }\n});\n\nVue$3.version = '2.5.2';\n\n/* */\n\n// these are reserved for web because they are directly compiled away\n// during template compilation\nvar isReservedAttr = makeMap('style,class');\n\n// attributes that should be using props for binding\nvar acceptValue = makeMap('input,textarea,option,select,progress');\nvar mustUseProp = function (tag, type, attr) {\n return (\n (attr === 'value' && acceptValue(tag)) && type !== 'button' ||\n (attr === 'selected' && tag === 'option') ||\n (attr === 'checked' && tag === 'input') ||\n (attr === 'muted' && tag === 'video')\n )\n};\n\nvar isEnumeratedAttr = makeMap('contenteditable,draggable,spellcheck');\n\nvar isBooleanAttr = makeMap(\n 'allowfullscreen,async,autofocus,autoplay,checked,compact,controls,declare,' +\n 'default,defaultchecked,defaultmuted,defaultselected,defer,disabled,' +\n 'enabled,formnovalidate,hidden,indeterminate,inert,ismap,itemscope,loop,multiple,' +\n 'muted,nohref,noresize,noshade,novalidate,nowrap,open,pauseonexit,readonly,' +\n 'required,reversed,scoped,seamless,selected,sortable,translate,' +\n 'truespeed,typemustmatch,visible'\n);\n\nvar xlinkNS = 'http://www.w3.org/1999/xlink';\n\nvar isXlink = function (name) {\n return name.charAt(5) === ':' && name.slice(0, 5) === 'xlink'\n};\n\nvar getXlinkProp = function (name) {\n return isXlink(name) ? name.slice(6, name.length) : ''\n};\n\nvar isFalsyAttrValue = function (val) {\n return val == null || val === false\n};\n\n/* */\n\nfunction genClassForVnode (vnode) {\n var data = vnode.data;\n var parentNode = vnode;\n var childNode = vnode;\n while (isDef(childNode.componentInstance)) {\n childNode = childNode.componentInstance._vnode;\n if (childNode.data) {\n data = mergeClassData(childNode.data, data);\n }\n }\n while (isDef(parentNode = parentNode.parent)) {\n if (parentNode.data) {\n data = mergeClassData(data, parentNode.data);\n }\n }\n return renderClass(data.staticClass, data.class)\n}\n\nfunction mergeClassData (child, parent) {\n return {\n staticClass: concat(child.staticClass, parent.staticClass),\n class: isDef(child.class)\n ? [child.class, parent.class]\n : parent.class\n }\n}\n\nfunction renderClass (\n staticClass,\n dynamicClass\n) {\n if (isDef(staticClass) || isDef(dynamicClass)) {\n return concat(staticClass, stringifyClass(dynamicClass))\n }\n /* istanbul ignore next */\n return ''\n}\n\nfunction concat (a, b) {\n return a ? b ? (a + ' ' + b) : a : (b || '')\n}\n\nfunction stringifyClass (value) {\n if (Array.isArray(value)) {\n return stringifyArray(value)\n }\n if (isObject(value)) {\n return stringifyObject(value)\n }\n if (typeof value === 'string') {\n return value\n }\n /* istanbul ignore next */\n return ''\n}\n\nfunction stringifyArray (value) {\n var res = '';\n var stringified;\n for (var i = 0, l = value.length; i < l; i++) {\n if (isDef(stringified = stringifyClass(value[i])) && stringified !== '') {\n if (res) { res += ' '; }\n res += stringified;\n }\n }\n return res\n}\n\nfunction stringifyObject (value) {\n var res = '';\n for (var key in value) {\n if (value[key]) {\n if (res) { res += ' '; }\n res += key;\n }\n }\n return res\n}\n\n/* */\n\nvar namespaceMap = {\n svg: 'http://www.w3.org/2000/svg',\n math: 'http://www.w3.org/1998/Math/MathML'\n};\n\nvar isHTMLTag = makeMap(\n 'html,body,base,head,link,meta,style,title,' +\n 'address,article,aside,footer,header,h1,h2,h3,h4,h5,h6,hgroup,nav,section,' +\n 'div,dd,dl,dt,figcaption,figure,picture,hr,img,li,main,ol,p,pre,ul,' +\n 'a,b,abbr,bdi,bdo,br,cite,code,data,dfn,em,i,kbd,mark,q,rp,rt,rtc,ruby,' +\n 's,samp,small,span,strong,sub,sup,time,u,var,wbr,area,audio,map,track,video,' +\n 'embed,object,param,source,canvas,script,noscript,del,ins,' +\n 'caption,col,colgroup,table,thead,tbody,td,th,tr,' +\n 'button,datalist,fieldset,form,input,label,legend,meter,optgroup,option,' +\n 'output,progress,select,textarea,' +\n 'details,dialog,menu,menuitem,summary,' +\n 'content,element,shadow,template,blockquote,iframe,tfoot'\n);\n\n// this map is intentionally selective, only covering SVG elements that may\n// contain child elements.\nvar isSVG = makeMap(\n 'svg,animate,circle,clippath,cursor,defs,desc,ellipse,filter,font-face,' +\n 'foreignObject,g,glyph,image,line,marker,mask,missing-glyph,path,pattern,' +\n 'polygon,polyline,rect,switch,symbol,text,textpath,tspan,use,view',\n true\n);\n\nvar isPreTag = function (tag) { return tag === 'pre'; };\n\nvar isReservedTag = function (tag) {\n return isHTMLTag(tag) || isSVG(tag)\n};\n\nfunction getTagNamespace (tag) {\n if (isSVG(tag)) {\n return 'svg'\n }\n // basic support for MathML\n // note it doesn't support other MathML elements being component roots\n if (tag === 'math') {\n return 'math'\n }\n}\n\nvar unknownElementCache = Object.create(null);\nfunction isUnknownElement (tag) {\n /* istanbul ignore if */\n if (!inBrowser) {\n return true\n }\n if (isReservedTag(tag)) {\n return false\n }\n tag = tag.toLowerCase();\n /* istanbul ignore if */\n if (unknownElementCache[tag] != null) {\n return unknownElementCache[tag]\n }\n var el = document.createElement(tag);\n if (tag.indexOf('-') > -1) {\n // http://stackoverflow.com/a/28210364/1070244\n return (unknownElementCache[tag] = (\n el.constructor === window.HTMLUnknownElement ||\n el.constructor === window.HTMLElement\n ))\n } else {\n return (unknownElementCache[tag] = /HTMLUnknownElement/.test(el.toString()))\n }\n}\n\nvar isTextInputType = makeMap('text,number,password,search,email,tel,url');\n\n/* */\n\n/**\n * Query an element selector if it's not an element already.\n */\nfunction query (el) {\n if (typeof el === 'string') {\n var selected = document.querySelector(el);\n if (!selected) {\n \"production\" !== 'production' && warn(\n 'Cannot find element: ' + el\n );\n return document.createElement('div')\n }\n return selected\n } else {\n return el\n }\n}\n\n/* */\n\nfunction createElement$1 (tagName, vnode) {\n var elm = document.createElement(tagName);\n if (tagName !== 'select') {\n return elm\n }\n // false or null will remove the attribute but undefined will not\n if (vnode.data && vnode.data.attrs && vnode.data.attrs.multiple !== undefined) {\n elm.setAttribute('multiple', 'multiple');\n }\n return elm\n}\n\nfunction createElementNS (namespace, tagName) {\n return document.createElementNS(namespaceMap[namespace], tagName)\n}\n\nfunction createTextNode (text) {\n return document.createTextNode(text)\n}\n\nfunction createComment (text) {\n return document.createComment(text)\n}\n\nfunction insertBefore (parentNode, newNode, referenceNode) {\n parentNode.insertBefore(newNode, referenceNode);\n}\n\nfunction removeChild (node, child) {\n node.removeChild(child);\n}\n\nfunction appendChild (node, child) {\n node.appendChild(child);\n}\n\nfunction parentNode (node) {\n return node.parentNode\n}\n\nfunction nextSibling (node) {\n return node.nextSibling\n}\n\nfunction tagName (node) {\n return node.tagName\n}\n\nfunction setTextContent (node, text) {\n node.textContent = text;\n}\n\nfunction setAttribute (node, key, val) {\n node.setAttribute(key, val);\n}\n\n\nvar nodeOps = Object.freeze({\n\tcreateElement: createElement$1,\n\tcreateElementNS: createElementNS,\n\tcreateTextNode: createTextNode,\n\tcreateComment: createComment,\n\tinsertBefore: insertBefore,\n\tremoveChild: removeChild,\n\tappendChild: appendChild,\n\tparentNode: parentNode,\n\tnextSibling: nextSibling,\n\ttagName: tagName,\n\tsetTextContent: setTextContent,\n\tsetAttribute: setAttribute\n});\n\n/* */\n\nvar ref = {\n create: function create (_, vnode) {\n registerRef(vnode);\n },\n update: function update (oldVnode, vnode) {\n if (oldVnode.data.ref !== vnode.data.ref) {\n registerRef(oldVnode, true);\n registerRef(vnode);\n }\n },\n destroy: function destroy (vnode) {\n registerRef(vnode, true);\n }\n};\n\nfunction registerRef (vnode, isRemoval) {\n var key = vnode.data.ref;\n if (!key) { return }\n\n var vm = vnode.context;\n var ref = vnode.componentInstance || vnode.elm;\n var refs = vm.$refs;\n if (isRemoval) {\n if (Array.isArray(refs[key])) {\n remove(refs[key], ref);\n } else if (refs[key] === ref) {\n refs[key] = undefined;\n }\n } else {\n if (vnode.data.refInFor) {\n if (!Array.isArray(refs[key])) {\n refs[key] = [ref];\n } else if (refs[key].indexOf(ref) < 0) {\n // $flow-disable-line\n refs[key].push(ref);\n }\n } else {\n refs[key] = ref;\n }\n }\n}\n\n/**\n * Virtual DOM patching algorithm based on Snabbdom by\n * Simon Friis Vindum (@paldepind)\n * Licensed under the MIT License\n * https://github.com/paldepind/snabbdom/blob/master/LICENSE\n *\n * modified by Evan You (@yyx990803)\n *\n * Not type-checking this because this file is perf-critical and the cost\n * of making flow understand it is not worth it.\n */\n\nvar emptyNode = new VNode('', {}, []);\n\nvar hooks = ['create', 'activate', 'update', 'remove', 'destroy'];\n\nfunction sameVnode (a, b) {\n return (\n a.key === b.key && (\n (\n a.tag === b.tag &&\n a.isComment === b.isComment &&\n isDef(a.data) === isDef(b.data) &&\n sameInputType(a, b)\n ) || (\n isTrue(a.isAsyncPlaceholder) &&\n a.asyncFactory === b.asyncFactory &&\n isUndef(b.asyncFactory.error)\n )\n )\n )\n}\n\nfunction sameInputType (a, b) {\n if (a.tag !== 'input') { return true }\n var i;\n var typeA = isDef(i = a.data) && isDef(i = i.attrs) && i.type;\n var typeB = isDef(i = b.data) && isDef(i = i.attrs) && i.type;\n return typeA === typeB || isTextInputType(typeA) && isTextInputType(typeB)\n}\n\nfunction createKeyToOldIdx (children, beginIdx, endIdx) {\n var i, key;\n var map = {};\n for (i = beginIdx; i <= endIdx; ++i) {\n key = children[i].key;\n if (isDef(key)) { map[key] = i; }\n }\n return map\n}\n\nfunction createPatchFunction (backend) {\n var i, j;\n var cbs = {};\n\n var modules = backend.modules;\n var nodeOps = backend.nodeOps;\n\n for (i = 0; i < hooks.length; ++i) {\n cbs[hooks[i]] = [];\n for (j = 0; j < modules.length; ++j) {\n if (isDef(modules[j][hooks[i]])) {\n cbs[hooks[i]].push(modules[j][hooks[i]]);\n }\n }\n }\n\n function emptyNodeAt (elm) {\n return new VNode(nodeOps.tagName(elm).toLowerCase(), {}, [], undefined, elm)\n }\n\n function createRmCb (childElm, listeners) {\n function remove () {\n if (--remove.listeners === 0) {\n removeNode(childElm);\n }\n }\n remove.listeners = listeners;\n return remove\n }\n\n function removeNode (el) {\n var parent = nodeOps.parentNode(el);\n // element may have already been removed due to v-html / v-text\n if (isDef(parent)) {\n nodeOps.removeChild(parent, el);\n }\n }\n\n var inPre = 0;\n function createElm (vnode, insertedVnodeQueue, parentElm, refElm, nested) {\n vnode.isRootInsert = !nested; // for transition enter check\n if (createComponent(vnode, insertedVnodeQueue, parentElm, refElm)) {\n return\n }\n\n var data = vnode.data;\n var children = vnode.children;\n var tag = vnode.tag;\n if (isDef(tag)) {\n if (false) {\n if (data && data.pre) {\n inPre++;\n }\n if (\n !inPre &&\n !vnode.ns &&\n !(\n config.ignoredElements.length &&\n config.ignoredElements.some(function (ignore) {\n return isRegExp(ignore)\n ? ignore.test(tag)\n : ignore === tag\n })\n ) &&\n config.isUnknownElement(tag)\n ) {\n warn(\n 'Unknown custom element: <' + tag + '> - did you ' +\n 'register the component correctly? For recursive components, ' +\n 'make sure to provide the \"name\" option.',\n vnode.context\n );\n }\n }\n vnode.elm = vnode.ns\n ? nodeOps.createElementNS(vnode.ns, tag)\n : nodeOps.createElement(tag, vnode);\n setScope(vnode);\n\n /* istanbul ignore if */\n {\n createChildren(vnode, children, insertedVnodeQueue);\n if (isDef(data)) {\n invokeCreateHooks(vnode, insertedVnodeQueue);\n }\n insert(parentElm, vnode.elm, refElm);\n }\n\n if (false) {\n inPre--;\n }\n } else if (isTrue(vnode.isComment)) {\n vnode.elm = nodeOps.createComment(vnode.text);\n insert(parentElm, vnode.elm, refElm);\n } else {\n vnode.elm = nodeOps.createTextNode(vnode.text);\n insert(parentElm, vnode.elm, refElm);\n }\n }\n\n function createComponent (vnode, insertedVnodeQueue, parentElm, refElm) {\n var i = vnode.data;\n if (isDef(i)) {\n var isReactivated = isDef(vnode.componentInstance) && i.keepAlive;\n if (isDef(i = i.hook) && isDef(i = i.init)) {\n i(vnode, false /* hydrating */, parentElm, refElm);\n }\n // after calling the init hook, if the vnode is a child component\n // it should've created a child instance and mounted it. the child\n // component also has set the placeholder vnode's elm.\n // in that case we can just return the element and be done.\n if (isDef(vnode.componentInstance)) {\n initComponent(vnode, insertedVnodeQueue);\n if (isTrue(isReactivated)) {\n reactivateComponent(vnode, insertedVnodeQueue, parentElm, refElm);\n }\n return true\n }\n }\n }\n\n function initComponent (vnode, insertedVnodeQueue) {\n if (isDef(vnode.data.pendingInsert)) {\n insertedVnodeQueue.push.apply(insertedVnodeQueue, vnode.data.pendingInsert);\n vnode.data.pendingInsert = null;\n }\n vnode.elm = vnode.componentInstance.$el;\n if (isPatchable(vnode)) {\n invokeCreateHooks(vnode, insertedVnodeQueue);\n setScope(vnode);\n } else {\n // empty component root.\n // skip all element-related modules except for ref (#3455)\n registerRef(vnode);\n // make sure to invoke the insert hook\n insertedVnodeQueue.push(vnode);\n }\n }\n\n function reactivateComponent (vnode, insertedVnodeQueue, parentElm, refElm) {\n var i;\n // hack for #4339: a reactivated component with inner transition\n // does not trigger because the inner node's created hooks are not called\n // again. It's not ideal to involve module-specific logic in here but\n // there doesn't seem to be a better way to do it.\n var innerNode = vnode;\n while (innerNode.componentInstance) {\n innerNode = innerNode.componentInstance._vnode;\n if (isDef(i = innerNode.data) && isDef(i = i.transition)) {\n for (i = 0; i < cbs.activate.length; ++i) {\n cbs.activate[i](emptyNode, innerNode);\n }\n insertedVnodeQueue.push(innerNode);\n break\n }\n }\n // unlike a newly created component,\n // a reactivated keep-alive component doesn't insert itself\n insert(parentElm, vnode.elm, refElm);\n }\n\n function insert (parent, elm, ref$$1) {\n if (isDef(parent)) {\n if (isDef(ref$$1)) {\n if (ref$$1.parentNode === parent) {\n nodeOps.insertBefore(parent, elm, ref$$1);\n }\n } else {\n nodeOps.appendChild(parent, elm);\n }\n }\n }\n\n function createChildren (vnode, children, insertedVnodeQueue) {\n if (Array.isArray(children)) {\n for (var i = 0; i < children.length; ++i) {\n createElm(children[i], insertedVnodeQueue, vnode.elm, null, true);\n }\n } else if (isPrimitive(vnode.text)) {\n nodeOps.appendChild(vnode.elm, nodeOps.createTextNode(vnode.text));\n }\n }\n\n function isPatchable (vnode) {\n while (vnode.componentInstance) {\n vnode = vnode.componentInstance._vnode;\n }\n return isDef(vnode.tag)\n }\n\n function invokeCreateHooks (vnode, insertedVnodeQueue) {\n for (var i$1 = 0; i$1 < cbs.create.length; ++i$1) {\n cbs.create[i$1](emptyNode, vnode);\n }\n i = vnode.data.hook; // Reuse variable\n if (isDef(i)) {\n if (isDef(i.create)) { i.create(emptyNode, vnode); }\n if (isDef(i.insert)) { insertedVnodeQueue.push(vnode); }\n }\n }\n\n // set scope id attribute for scoped CSS.\n // this is implemented as a special case to avoid the overhead\n // of going through the normal attribute patching process.\n function setScope (vnode) {\n var i;\n if (isDef(i = vnode.functionalScopeId)) {\n nodeOps.setAttribute(vnode.elm, i, '');\n } else {\n var ancestor = vnode;\n while (ancestor) {\n if (isDef(i = ancestor.context) && isDef(i = i.$options._scopeId)) {\n nodeOps.setAttribute(vnode.elm, i, '');\n }\n ancestor = ancestor.parent;\n }\n }\n // for slot content they should also get the scopeId from the host instance.\n if (isDef(i = activeInstance) &&\n i !== vnode.context &&\n i !== vnode.functionalContext &&\n isDef(i = i.$options._scopeId)\n ) {\n nodeOps.setAttribute(vnode.elm, i, '');\n }\n }\n\n function addVnodes (parentElm, refElm, vnodes, startIdx, endIdx, insertedVnodeQueue) {\n for (; startIdx <= endIdx; ++startIdx) {\n createElm(vnodes[startIdx], insertedVnodeQueue, parentElm, refElm);\n }\n }\n\n function invokeDestroyHook (vnode) {\n var i, j;\n var data = vnode.data;\n if (isDef(data)) {\n if (isDef(i = data.hook) && isDef(i = i.destroy)) { i(vnode); }\n for (i = 0; i < cbs.destroy.length; ++i) { cbs.destroy[i](vnode); }\n }\n if (isDef(i = vnode.children)) {\n for (j = 0; j < vnode.children.length; ++j) {\n invokeDestroyHook(vnode.children[j]);\n }\n }\n }\n\n function removeVnodes (parentElm, vnodes, startIdx, endIdx) {\n for (; startIdx <= endIdx; ++startIdx) {\n var ch = vnodes[startIdx];\n if (isDef(ch)) {\n if (isDef(ch.tag)) {\n removeAndInvokeRemoveHook(ch);\n invokeDestroyHook(ch);\n } else { // Text node\n removeNode(ch.elm);\n }\n }\n }\n }\n\n function removeAndInvokeRemoveHook (vnode, rm) {\n if (isDef(rm) || isDef(vnode.data)) {\n var i;\n var listeners = cbs.remove.length + 1;\n if (isDef(rm)) {\n // we have a recursively passed down rm callback\n // increase the listeners count\n rm.listeners += listeners;\n } else {\n // directly removing\n rm = createRmCb(vnode.elm, listeners);\n }\n // recursively invoke hooks on child component root node\n if (isDef(i = vnode.componentInstance) && isDef(i = i._vnode) && isDef(i.data)) {\n removeAndInvokeRemoveHook(i, rm);\n }\n for (i = 0; i < cbs.remove.length; ++i) {\n cbs.remove[i](vnode, rm);\n }\n if (isDef(i = vnode.data.hook) && isDef(i = i.remove)) {\n i(vnode, rm);\n } else {\n rm();\n }\n } else {\n removeNode(vnode.elm);\n }\n }\n\n function updateChildren (parentElm, oldCh, newCh, insertedVnodeQueue, removeOnly) {\n var oldStartIdx = 0;\n var newStartIdx = 0;\n var oldEndIdx = oldCh.length - 1;\n var oldStartVnode = oldCh[0];\n var oldEndVnode = oldCh[oldEndIdx];\n var newEndIdx = newCh.length - 1;\n var newStartVnode = newCh[0];\n var newEndVnode = newCh[newEndIdx];\n var oldKeyToIdx, idxInOld, vnodeToMove, refElm;\n\n // removeOnly is a special flag used only by <transition-group>\n // to ensure removed elements stay in correct relative positions\n // during leaving transitions\n var canMove = !removeOnly;\n\n while (oldStartIdx <= oldEndIdx && newStartIdx <= newEndIdx) {\n if (isUndef(oldStartVnode)) {\n oldStartVnode = oldCh[++oldStartIdx]; // Vnode has been moved left\n } else if (isUndef(oldEndVnode)) {\n oldEndVnode = oldCh[--oldEndIdx];\n } else if (sameVnode(oldStartVnode, newStartVnode)) {\n patchVnode(oldStartVnode, newStartVnode, insertedVnodeQueue);\n oldStartVnode = oldCh[++oldStartIdx];\n newStartVnode = newCh[++newStartIdx];\n } else if (sameVnode(oldEndVnode, newEndVnode)) {\n patchVnode(oldEndVnode, newEndVnode, insertedVnodeQueue);\n oldEndVnode = oldCh[--oldEndIdx];\n newEndVnode = newCh[--newEndIdx];\n } else if (sameVnode(oldStartVnode, newEndVnode)) { // Vnode moved right\n patchVnode(oldStartVnode, newEndVnode, insertedVnodeQueue);\n canMove && nodeOps.insertBefore(parentElm, oldStartVnode.elm, nodeOps.nextSibling(oldEndVnode.elm));\n oldStartVnode = oldCh[++oldStartIdx];\n newEndVnode = newCh[--newEndIdx];\n } else if (sameVnode(oldEndVnode, newStartVnode)) { // Vnode moved left\n patchVnode(oldEndVnode, newStartVnode, insertedVnodeQueue);\n canMove && nodeOps.insertBefore(parentElm, oldEndVnode.elm, oldStartVnode.elm);\n oldEndVnode = oldCh[--oldEndIdx];\n newStartVnode = newCh[++newStartIdx];\n } else {\n if (isUndef(oldKeyToIdx)) { oldKeyToIdx = createKeyToOldIdx(oldCh, oldStartIdx, oldEndIdx); }\n idxInOld = isDef(newStartVnode.key)\n ? oldKeyToIdx[newStartVnode.key]\n : findIdxInOld(newStartVnode, oldCh, oldStartIdx, oldEndIdx);\n if (isUndef(idxInOld)) { // New element\n createElm(newStartVnode, insertedVnodeQueue, parentElm, oldStartVnode.elm);\n } else {\n vnodeToMove = oldCh[idxInOld];\n /* istanbul ignore if */\n if (false) {\n warn(\n 'It seems there are duplicate keys that is causing an update error. ' +\n 'Make sure each v-for item has a unique key.'\n );\n }\n if (sameVnode(vnodeToMove, newStartVnode)) {\n patchVnode(vnodeToMove, newStartVnode, insertedVnodeQueue);\n oldCh[idxInOld] = undefined;\n canMove && nodeOps.insertBefore(parentElm, vnodeToMove.elm, oldStartVnode.elm);\n } else {\n // same key but different element. treat as new element\n createElm(newStartVnode, insertedVnodeQueue, parentElm, oldStartVnode.elm);\n }\n }\n newStartVnode = newCh[++newStartIdx];\n }\n }\n if (oldStartIdx > oldEndIdx) {\n refElm = isUndef(newCh[newEndIdx + 1]) ? null : newCh[newEndIdx + 1].elm;\n addVnodes(parentElm, refElm, newCh, newStartIdx, newEndIdx, insertedVnodeQueue);\n } else if (newStartIdx > newEndIdx) {\n removeVnodes(parentElm, oldCh, oldStartIdx, oldEndIdx);\n }\n }\n\n function findIdxInOld (node, oldCh, start, end) {\n for (var i = start; i < end; i++) {\n var c = oldCh[i];\n if (isDef(c) && sameVnode(node, c)) { return i }\n }\n }\n\n function patchVnode (oldVnode, vnode, insertedVnodeQueue, removeOnly) {\n if (oldVnode === vnode) {\n return\n }\n\n var elm = vnode.elm = oldVnode.elm;\n\n if (isTrue(oldVnode.isAsyncPlaceholder)) {\n if (isDef(vnode.asyncFactory.resolved)) {\n hydrate(oldVnode.elm, vnode, insertedVnodeQueue);\n } else {\n vnode.isAsyncPlaceholder = true;\n }\n return\n }\n\n // reuse element for static trees.\n // note we only do this if the vnode is cloned -\n // if the new node is not cloned it means the render functions have been\n // reset by the hot-reload-api and we need to do a proper re-render.\n if (isTrue(vnode.isStatic) &&\n isTrue(oldVnode.isStatic) &&\n vnode.key === oldVnode.key &&\n (isTrue(vnode.isCloned) || isTrue(vnode.isOnce))\n ) {\n vnode.componentInstance = oldVnode.componentInstance;\n return\n }\n\n var i;\n var data = vnode.data;\n if (isDef(data) && isDef(i = data.hook) && isDef(i = i.prepatch)) {\n i(oldVnode, vnode);\n }\n\n var oldCh = oldVnode.children;\n var ch = vnode.children;\n if (isDef(data) && isPatchable(vnode)) {\n for (i = 0; i < cbs.update.length; ++i) { cbs.update[i](oldVnode, vnode); }\n if (isDef(i = data.hook) && isDef(i = i.update)) { i(oldVnode, vnode); }\n }\n if (isUndef(vnode.text)) {\n if (isDef(oldCh) && isDef(ch)) {\n if (oldCh !== ch) { updateChildren(elm, oldCh, ch, insertedVnodeQueue, removeOnly); }\n } else if (isDef(ch)) {\n if (isDef(oldVnode.text)) { nodeOps.setTextContent(elm, ''); }\n addVnodes(elm, null, ch, 0, ch.length - 1, insertedVnodeQueue);\n } else if (isDef(oldCh)) {\n removeVnodes(elm, oldCh, 0, oldCh.length - 1);\n } else if (isDef(oldVnode.text)) {\n nodeOps.setTextContent(elm, '');\n }\n } else if (oldVnode.text !== vnode.text) {\n nodeOps.setTextContent(elm, vnode.text);\n }\n if (isDef(data)) {\n if (isDef(i = data.hook) && isDef(i = i.postpatch)) { i(oldVnode, vnode); }\n }\n }\n\n function invokeInsertHook (vnode, queue, initial) {\n // delay insert hooks for component root nodes, invoke them after the\n // element is really inserted\n if (isTrue(initial) && isDef(vnode.parent)) {\n vnode.parent.data.pendingInsert = queue;\n } else {\n for (var i = 0; i < queue.length; ++i) {\n queue[i].data.hook.insert(queue[i]);\n }\n }\n }\n\n var bailed = false;\n // list of modules that can skip create hook during hydration because they\n // are already rendered on the client or has no need for initialization\n var isRenderedModule = makeMap('attrs,style,class,staticClass,staticStyle,key');\n\n // Note: this is a browser-only function so we can assume elms are DOM nodes.\n function hydrate (elm, vnode, insertedVnodeQueue) {\n if (isTrue(vnode.isComment) && isDef(vnode.asyncFactory)) {\n vnode.elm = elm;\n vnode.isAsyncPlaceholder = true;\n return true\n }\n if (false) {\n if (!assertNodeMatch(elm, vnode)) {\n return false\n }\n }\n vnode.elm = elm;\n var tag = vnode.tag;\n var data = vnode.data;\n var children = vnode.children;\n if (isDef(data)) {\n if (isDef(i = data.hook) && isDef(i = i.init)) { i(vnode, true /* hydrating */); }\n if (isDef(i = vnode.componentInstance)) {\n // child component. it should have hydrated its own tree.\n initComponent(vnode, insertedVnodeQueue);\n return true\n }\n }\n if (isDef(tag)) {\n if (isDef(children)) {\n // empty element, allow client to pick up and populate children\n if (!elm.hasChildNodes()) {\n createChildren(vnode, children, insertedVnodeQueue);\n } else {\n // v-html and domProps: innerHTML\n if (isDef(i = data) && isDef(i = i.domProps) && isDef(i = i.innerHTML)) {\n if (i !== elm.innerHTML) {\n /* istanbul ignore if */\n if (false\n ) {\n bailed = true;\n console.warn('Parent: ', elm);\n console.warn('server innerHTML: ', i);\n console.warn('client innerHTML: ', elm.innerHTML);\n }\n return false\n }\n } else {\n // iterate and compare children lists\n var childrenMatch = true;\n var childNode = elm.firstChild;\n for (var i$1 = 0; i$1 < children.length; i$1++) {\n if (!childNode || !hydrate(childNode, children[i$1], insertedVnodeQueue)) {\n childrenMatch = false;\n break\n }\n childNode = childNode.nextSibling;\n }\n // if childNode is not null, it means the actual childNodes list is\n // longer than the virtual children list.\n if (!childrenMatch || childNode) {\n /* istanbul ignore if */\n if (false\n ) {\n bailed = true;\n console.warn('Parent: ', elm);\n console.warn('Mismatching childNodes vs. VNodes: ', elm.childNodes, children);\n }\n return false\n }\n }\n }\n }\n if (isDef(data)) {\n for (var key in data) {\n if (!isRenderedModule(key)) {\n invokeCreateHooks(vnode, insertedVnodeQueue);\n break\n }\n }\n }\n } else if (elm.data !== vnode.text) {\n elm.data = vnode.text;\n }\n return true\n }\n\n function assertNodeMatch (node, vnode) {\n if (isDef(vnode.tag)) {\n return (\n vnode.tag.indexOf('vue-component') === 0 ||\n vnode.tag.toLowerCase() === (node.tagName && node.tagName.toLowerCase())\n )\n } else {\n return node.nodeType === (vnode.isComment ? 8 : 3)\n }\n }\n\n return function patch (oldVnode, vnode, hydrating, removeOnly, parentElm, refElm) {\n if (isUndef(vnode)) {\n if (isDef(oldVnode)) { invokeDestroyHook(oldVnode); }\n return\n }\n\n var isInitialPatch = false;\n var insertedVnodeQueue = [];\n\n if (isUndef(oldVnode)) {\n // empty mount (likely as component), create new root element\n isInitialPatch = true;\n createElm(vnode, insertedVnodeQueue, parentElm, refElm);\n } else {\n var isRealElement = isDef(oldVnode.nodeType);\n if (!isRealElement && sameVnode(oldVnode, vnode)) {\n // patch existing root node\n patchVnode(oldVnode, vnode, insertedVnodeQueue, removeOnly);\n } else {\n if (isRealElement) {\n // mounting to a real element\n // check if this is server-rendered content and if we can perform\n // a successful hydration.\n if (oldVnode.nodeType === 1 && oldVnode.hasAttribute(SSR_ATTR)) {\n oldVnode.removeAttribute(SSR_ATTR);\n hydrating = true;\n }\n if (isTrue(hydrating)) {\n if (hydrate(oldVnode, vnode, insertedVnodeQueue)) {\n invokeInsertHook(vnode, insertedVnodeQueue, true);\n return oldVnode\n } else if (false) {\n warn(\n 'The client-side rendered virtual DOM tree is not matching ' +\n 'server-rendered content. This is likely caused by incorrect ' +\n 'HTML markup, for example nesting block-level elements inside ' +\n '<p>, or missing <tbody>. Bailing hydration and performing ' +\n 'full client-side render.'\n );\n }\n }\n // either not server-rendered, or hydration failed.\n // create an empty node and replace it\n oldVnode = emptyNodeAt(oldVnode);\n }\n // replacing existing element\n var oldElm = oldVnode.elm;\n var parentElm$1 = nodeOps.parentNode(oldElm);\n createElm(\n vnode,\n insertedVnodeQueue,\n // extremely rare edge case: do not insert if old element is in a\n // leaving transition. Only happens when combining transition +\n // keep-alive + HOCs. (#4590)\n oldElm._leaveCb ? null : parentElm$1,\n nodeOps.nextSibling(oldElm)\n );\n\n if (isDef(vnode.parent)) {\n // component root element replaced.\n // update parent placeholder node element, recursively\n var ancestor = vnode.parent;\n var patchable = isPatchable(vnode);\n while (ancestor) {\n for (var i = 0; i < cbs.destroy.length; ++i) {\n cbs.destroy[i](ancestor);\n }\n ancestor.elm = vnode.elm;\n if (patchable) {\n for (var i$1 = 0; i$1 < cbs.create.length; ++i$1) {\n cbs.create[i$1](emptyNode, ancestor);\n }\n // #6513\n // invoke insert hooks that may have been merged by create hooks.\n // e.g. for directives that uses the \"inserted\" hook.\n var insert = ancestor.data.hook.insert;\n if (insert.merged) {\n // start at index 1 to avoid re-invoking component mounted hook\n for (var i$2 = 1; i$2 < insert.fns.length; i$2++) {\n insert.fns[i$2]();\n }\n }\n } else {\n registerRef(ancestor);\n }\n ancestor = ancestor.parent;\n }\n }\n\n if (isDef(parentElm$1)) {\n removeVnodes(parentElm$1, [oldVnode], 0, 0);\n } else if (isDef(oldVnode.tag)) {\n invokeDestroyHook(oldVnode);\n }\n }\n }\n\n invokeInsertHook(vnode, insertedVnodeQueue, isInitialPatch);\n return vnode.elm\n }\n}\n\n/* */\n\nvar directives = {\n create: updateDirectives,\n update: updateDirectives,\n destroy: function unbindDirectives (vnode) {\n updateDirectives(vnode, emptyNode);\n }\n};\n\nfunction updateDirectives (oldVnode, vnode) {\n if (oldVnode.data.directives || vnode.data.directives) {\n _update(oldVnode, vnode);\n }\n}\n\nfunction _update (oldVnode, vnode) {\n var isCreate = oldVnode === emptyNode;\n var isDestroy = vnode === emptyNode;\n var oldDirs = normalizeDirectives$1(oldVnode.data.directives, oldVnode.context);\n var newDirs = normalizeDirectives$1(vnode.data.directives, vnode.context);\n\n var dirsWithInsert = [];\n var dirsWithPostpatch = [];\n\n var key, oldDir, dir;\n for (key in newDirs) {\n oldDir = oldDirs[key];\n dir = newDirs[key];\n if (!oldDir) {\n // new directive, bind\n callHook$1(dir, 'bind', vnode, oldVnode);\n if (dir.def && dir.def.inserted) {\n dirsWithInsert.push(dir);\n }\n } else {\n // existing directive, update\n dir.oldValue = oldDir.value;\n callHook$1(dir, 'update', vnode, oldVnode);\n if (dir.def && dir.def.componentUpdated) {\n dirsWithPostpatch.push(dir);\n }\n }\n }\n\n if (dirsWithInsert.length) {\n var callInsert = function () {\n for (var i = 0; i < dirsWithInsert.length; i++) {\n callHook$1(dirsWithInsert[i], 'inserted', vnode, oldVnode);\n }\n };\n if (isCreate) {\n mergeVNodeHook(vnode.data.hook || (vnode.data.hook = {}), 'insert', callInsert);\n } else {\n callInsert();\n }\n }\n\n if (dirsWithPostpatch.length) {\n mergeVNodeHook(vnode.data.hook || (vnode.data.hook = {}), 'postpatch', function () {\n for (var i = 0; i < dirsWithPostpatch.length; i++) {\n callHook$1(dirsWithPostpatch[i], 'componentUpdated', vnode, oldVnode);\n }\n });\n }\n\n if (!isCreate) {\n for (key in oldDirs) {\n if (!newDirs[key]) {\n // no longer present, unbind\n callHook$1(oldDirs[key], 'unbind', oldVnode, oldVnode, isDestroy);\n }\n }\n }\n}\n\nvar emptyModifiers = Object.create(null);\n\nfunction normalizeDirectives$1 (\n dirs,\n vm\n) {\n var res = Object.create(null);\n if (!dirs) {\n return res\n }\n var i, dir;\n for (i = 0; i < dirs.length; i++) {\n dir = dirs[i];\n if (!dir.modifiers) {\n dir.modifiers = emptyModifiers;\n }\n res[getRawDirName(dir)] = dir;\n dir.def = resolveAsset(vm.$options, 'directives', dir.name, true);\n }\n return res\n}\n\nfunction getRawDirName (dir) {\n return dir.rawName || ((dir.name) + \".\" + (Object.keys(dir.modifiers || {}).join('.')))\n}\n\nfunction callHook$1 (dir, hook, vnode, oldVnode, isDestroy) {\n var fn = dir.def && dir.def[hook];\n if (fn) {\n try {\n fn(vnode.elm, dir, vnode, oldVnode, isDestroy);\n } catch (e) {\n handleError(e, vnode.context, (\"directive \" + (dir.name) + \" \" + hook + \" hook\"));\n }\n }\n}\n\nvar baseModules = [\n ref,\n directives\n];\n\n/* */\n\nfunction updateAttrs (oldVnode, vnode) {\n var opts = vnode.componentOptions;\n if (isDef(opts) && opts.Ctor.options.inheritAttrs === false) {\n return\n }\n if (isUndef(oldVnode.data.attrs) && isUndef(vnode.data.attrs)) {\n return\n }\n var key, cur, old;\n var elm = vnode.elm;\n var oldAttrs = oldVnode.data.attrs || {};\n var attrs = vnode.data.attrs || {};\n // clone observed objects, as the user probably wants to mutate it\n if (isDef(attrs.__ob__)) {\n attrs = vnode.data.attrs = extend({}, attrs);\n }\n\n for (key in attrs) {\n cur = attrs[key];\n old = oldAttrs[key];\n if (old !== cur) {\n setAttr(elm, key, cur);\n }\n }\n // #4391: in IE9, setting type can reset value for input[type=radio]\n // #6666: IE/Edge forces progress value down to 1 before setting a max\n /* istanbul ignore if */\n if ((isIE9 || isEdge) && attrs.value !== oldAttrs.value) {\n setAttr(elm, 'value', attrs.value);\n }\n for (key in oldAttrs) {\n if (isUndef(attrs[key])) {\n if (isXlink(key)) {\n elm.removeAttributeNS(xlinkNS, getXlinkProp(key));\n } else if (!isEnumeratedAttr(key)) {\n elm.removeAttribute(key);\n }\n }\n }\n}\n\nfunction setAttr (el, key, value) {\n if (isBooleanAttr(key)) {\n // set attribute for blank value\n // e.g. <option disabled>Select one</option>\n if (isFalsyAttrValue(value)) {\n el.removeAttribute(key);\n } else {\n // technically allowfullscreen is a boolean attribute for <iframe>,\n // but Flash expects a value of \"true\" when used on <embed> tag\n value = key === 'allowfullscreen' && el.tagName === 'EMBED'\n ? 'true'\n : key;\n el.setAttribute(key, value);\n }\n } else if (isEnumeratedAttr(key)) {\n el.setAttribute(key, isFalsyAttrValue(value) || value === 'false' ? 'false' : 'true');\n } else if (isXlink(key)) {\n if (isFalsyAttrValue(value)) {\n el.removeAttributeNS(xlinkNS, getXlinkProp(key));\n } else {\n el.setAttributeNS(xlinkNS, key, value);\n }\n } else {\n if (isFalsyAttrValue(value)) {\n el.removeAttribute(key);\n } else {\n el.setAttribute(key, value);\n }\n }\n}\n\nvar attrs = {\n create: updateAttrs,\n update: updateAttrs\n};\n\n/* */\n\nfunction updateClass (oldVnode, vnode) {\n var el = vnode.elm;\n var data = vnode.data;\n var oldData = oldVnode.data;\n if (\n isUndef(data.staticClass) &&\n isUndef(data.class) && (\n isUndef(oldData) || (\n isUndef(oldData.staticClass) &&\n isUndef(oldData.class)\n )\n )\n ) {\n return\n }\n\n var cls = genClassForVnode(vnode);\n\n // handle transition classes\n var transitionClass = el._transitionClasses;\n if (isDef(transitionClass)) {\n cls = concat(cls, stringifyClass(transitionClass));\n }\n\n // set the class\n if (cls !== el._prevClass) {\n el.setAttribute('class', cls);\n el._prevClass = cls;\n }\n}\n\nvar klass = {\n create: updateClass,\n update: updateClass\n};\n\n/* */\n\nvar validDivisionCharRE = /[\\w).+\\-_$\\]]/;\n\nfunction parseFilters (exp) {\n var inSingle = false;\n var inDouble = false;\n var inTemplateString = false;\n var inRegex = false;\n var curly = 0;\n var square = 0;\n var paren = 0;\n var lastFilterIndex = 0;\n var c, prev, i, expression, filters;\n\n for (i = 0; i < exp.length; i++) {\n prev = c;\n c = exp.charCodeAt(i);\n if (inSingle) {\n if (c === 0x27 && prev !== 0x5C) { inSingle = false; }\n } else if (inDouble) {\n if (c === 0x22 && prev !== 0x5C) { inDouble = false; }\n } else if (inTemplateString) {\n if (c === 0x60 && prev !== 0x5C) { inTemplateString = false; }\n } else if (inRegex) {\n if (c === 0x2f && prev !== 0x5C) { inRegex = false; }\n } else if (\n c === 0x7C && // pipe\n exp.charCodeAt(i + 1) !== 0x7C &&\n exp.charCodeAt(i - 1) !== 0x7C &&\n !curly && !square && !paren\n ) {\n if (expression === undefined) {\n // first filter, end of expression\n lastFilterIndex = i + 1;\n expression = exp.slice(0, i).trim();\n } else {\n pushFilter();\n }\n } else {\n switch (c) {\n case 0x22: inDouble = true; break // \"\n case 0x27: inSingle = true; break // '\n case 0x60: inTemplateString = true; break // `\n case 0x28: paren++; break // (\n case 0x29: paren--; break // )\n case 0x5B: square++; break // [\n case 0x5D: square--; break // ]\n case 0x7B: curly++; break // {\n case 0x7D: curly--; break // }\n }\n if (c === 0x2f) { // /\n var j = i - 1;\n var p = (void 0);\n // find first non-whitespace prev char\n for (; j >= 0; j--) {\n p = exp.charAt(j);\n if (p !== ' ') { break }\n }\n if (!p || !validDivisionCharRE.test(p)) {\n inRegex = true;\n }\n }\n }\n }\n\n if (expression === undefined) {\n expression = exp.slice(0, i).trim();\n } else if (lastFilterIndex !== 0) {\n pushFilter();\n }\n\n function pushFilter () {\n (filters || (filters = [])).push(exp.slice(lastFilterIndex, i).trim());\n lastFilterIndex = i + 1;\n }\n\n if (filters) {\n for (i = 0; i < filters.length; i++) {\n expression = wrapFilter(expression, filters[i]);\n }\n }\n\n return expression\n}\n\nfunction wrapFilter (exp, filter) {\n var i = filter.indexOf('(');\n if (i < 0) {\n // _f: resolveFilter\n return (\"_f(\\\"\" + filter + \"\\\")(\" + exp + \")\")\n } else {\n var name = filter.slice(0, i);\n var args = filter.slice(i + 1);\n return (\"_f(\\\"\" + name + \"\\\")(\" + exp + \",\" + args)\n }\n}\n\n/* */\n\nfunction baseWarn (msg) {\n console.error((\"[Vue compiler]: \" + msg));\n}\n\nfunction pluckModuleFunction (\n modules,\n key\n) {\n return modules\n ? modules.map(function (m) { return m[key]; }).filter(function (_) { return _; })\n : []\n}\n\nfunction addProp (el, name, value) {\n (el.props || (el.props = [])).push({ name: name, value: value });\n}\n\nfunction addAttr (el, name, value) {\n (el.attrs || (el.attrs = [])).push({ name: name, value: value });\n}\n\nfunction addDirective (\n el,\n name,\n rawName,\n value,\n arg,\n modifiers\n) {\n (el.directives || (el.directives = [])).push({ name: name, rawName: rawName, value: value, arg: arg, modifiers: modifiers });\n}\n\nfunction addHandler (\n el,\n name,\n value,\n modifiers,\n important,\n warn\n) {\n // warn prevent and passive modifier\n /* istanbul ignore if */\n if (\n false\n ) {\n warn(\n 'passive and prevent can\\'t be used together. ' +\n 'Passive handler can\\'t prevent default event.'\n );\n }\n // check capture modifier\n if (modifiers && modifiers.capture) {\n delete modifiers.capture;\n name = '!' + name; // mark the event as captured\n }\n if (modifiers && modifiers.once) {\n delete modifiers.once;\n name = '~' + name; // mark the event as once\n }\n /* istanbul ignore if */\n if (modifiers && modifiers.passive) {\n delete modifiers.passive;\n name = '&' + name; // mark the event as passive\n }\n var events;\n if (modifiers && modifiers.native) {\n delete modifiers.native;\n events = el.nativeEvents || (el.nativeEvents = {});\n } else {\n events = el.events || (el.events = {});\n }\n var newHandler = { value: value, modifiers: modifiers };\n var handlers = events[name];\n /* istanbul ignore if */\n if (Array.isArray(handlers)) {\n important ? handlers.unshift(newHandler) : handlers.push(newHandler);\n } else if (handlers) {\n events[name] = important ? [newHandler, handlers] : [handlers, newHandler];\n } else {\n events[name] = newHandler;\n }\n}\n\nfunction getBindingAttr (\n el,\n name,\n getStatic\n) {\n var dynamicValue =\n getAndRemoveAttr(el, ':' + name) ||\n getAndRemoveAttr(el, 'v-bind:' + name);\n if (dynamicValue != null) {\n return parseFilters(dynamicValue)\n } else if (getStatic !== false) {\n var staticValue = getAndRemoveAttr(el, name);\n if (staticValue != null) {\n return JSON.stringify(staticValue)\n }\n }\n}\n\n// note: this only removes the attr from the Array (attrsList) so that it\n// doesn't get processed by processAttrs.\n// By default it does NOT remove it from the map (attrsMap) because the map is\n// needed during codegen.\nfunction getAndRemoveAttr (\n el,\n name,\n removeFromMap\n) {\n var val;\n if ((val = el.attrsMap[name]) != null) {\n var list = el.attrsList;\n for (var i = 0, l = list.length; i < l; i++) {\n if (list[i].name === name) {\n list.splice(i, 1);\n break\n }\n }\n }\n if (removeFromMap) {\n delete el.attrsMap[name];\n }\n return val\n}\n\n/* */\n\n/**\n * Cross-platform code generation for component v-model\n */\nfunction genComponentModel (\n el,\n value,\n modifiers\n) {\n var ref = modifiers || {};\n var number = ref.number;\n var trim = ref.trim;\n\n var baseValueExpression = '$$v';\n var valueExpression = baseValueExpression;\n if (trim) {\n valueExpression =\n \"(typeof \" + baseValueExpression + \" === 'string'\" +\n \"? \" + baseValueExpression + \".trim()\" +\n \": \" + baseValueExpression + \")\";\n }\n if (number) {\n valueExpression = \"_n(\" + valueExpression + \")\";\n }\n var assignment = genAssignmentCode(value, valueExpression);\n\n el.model = {\n value: (\"(\" + value + \")\"),\n expression: (\"\\\"\" + value + \"\\\"\"),\n callback: (\"function (\" + baseValueExpression + \") {\" + assignment + \"}\")\n };\n}\n\n/**\n * Cross-platform codegen helper for generating v-model value assignment code.\n */\nfunction genAssignmentCode (\n value,\n assignment\n) {\n var res = parseModel(value);\n if (res.key === null) {\n return (value + \"=\" + assignment)\n } else {\n return (\"$set(\" + (res.exp) + \", \" + (res.key) + \", \" + assignment + \")\")\n }\n}\n\n/**\n * Parse a v-model expression into a base path and a final key segment.\n * Handles both dot-path and possible square brackets.\n *\n * Possible cases:\n *\n * - test\n * - test[key]\n * - test[test1[key]]\n * - test[\"a\"][key]\n * - xxx.test[a[a].test1[key]]\n * - test.xxx.a[\"asa\"][test1[key]]\n *\n */\n\nvar len;\nvar str;\nvar chr;\nvar index$1;\nvar expressionPos;\nvar expressionEndPos;\n\n\n\nfunction parseModel (val) {\n len = val.length;\n\n if (val.indexOf('[') < 0 || val.lastIndexOf(']') < len - 1) {\n index$1 = val.lastIndexOf('.');\n if (index$1 > -1) {\n return {\n exp: val.slice(0, index$1),\n key: '\"' + val.slice(index$1 + 1) + '\"'\n }\n } else {\n return {\n exp: val,\n key: null\n }\n }\n }\n\n str = val;\n index$1 = expressionPos = expressionEndPos = 0;\n\n while (!eof()) {\n chr = next();\n /* istanbul ignore if */\n if (isStringStart(chr)) {\n parseString(chr);\n } else if (chr === 0x5B) {\n parseBracket(chr);\n }\n }\n\n return {\n exp: val.slice(0, expressionPos),\n key: val.slice(expressionPos + 1, expressionEndPos)\n }\n}\n\nfunction next () {\n return str.charCodeAt(++index$1)\n}\n\nfunction eof () {\n return index$1 >= len\n}\n\nfunction isStringStart (chr) {\n return chr === 0x22 || chr === 0x27\n}\n\nfunction parseBracket (chr) {\n var inBracket = 1;\n expressionPos = index$1;\n while (!eof()) {\n chr = next();\n if (isStringStart(chr)) {\n parseString(chr);\n continue\n }\n if (chr === 0x5B) { inBracket++; }\n if (chr === 0x5D) { inBracket--; }\n if (inBracket === 0) {\n expressionEndPos = index$1;\n break\n }\n }\n}\n\nfunction parseString (chr) {\n var stringQuote = chr;\n while (!eof()) {\n chr = next();\n if (chr === stringQuote) {\n break\n }\n }\n}\n\n/* */\n\nvar warn$1;\n\n// in some cases, the event used has to be determined at runtime\n// so we used some reserved tokens during compile.\nvar RANGE_TOKEN = '__r';\nvar CHECKBOX_RADIO_TOKEN = '__c';\n\nfunction model (\n el,\n dir,\n _warn\n) {\n warn$1 = _warn;\n var value = dir.value;\n var modifiers = dir.modifiers;\n var tag = el.tag;\n var type = el.attrsMap.type;\n\n if (false) {\n // inputs with type=\"file\" are read only and setting the input's\n // value will throw an error.\n if (tag === 'input' && type === 'file') {\n warn$1(\n \"<\" + (el.tag) + \" v-model=\\\"\" + value + \"\\\" type=\\\"file\\\">:\\n\" +\n \"File inputs are read only. Use a v-on:change listener instead.\"\n );\n }\n }\n\n if (el.component) {\n genComponentModel(el, value, modifiers);\n // component v-model doesn't need extra runtime\n return false\n } else if (tag === 'select') {\n genSelect(el, value, modifiers);\n } else if (tag === 'input' && type === 'checkbox') {\n genCheckboxModel(el, value, modifiers);\n } else if (tag === 'input' && type === 'radio') {\n genRadioModel(el, value, modifiers);\n } else if (tag === 'input' || tag === 'textarea') {\n genDefaultModel(el, value, modifiers);\n } else if (!config.isReservedTag(tag)) {\n genComponentModel(el, value, modifiers);\n // component v-model doesn't need extra runtime\n return false\n } else if (false) {\n warn$1(\n \"<\" + (el.tag) + \" v-model=\\\"\" + value + \"\\\">: \" +\n \"v-model is not supported on this element type. \" +\n 'If you are working with contenteditable, it\\'s recommended to ' +\n 'wrap a library dedicated for that purpose inside a custom component.'\n );\n }\n\n // ensure runtime directive metadata\n return true\n}\n\nfunction genCheckboxModel (\n el,\n value,\n modifiers\n) {\n var number = modifiers && modifiers.number;\n var valueBinding = getBindingAttr(el, 'value') || 'null';\n var trueValueBinding = getBindingAttr(el, 'true-value') || 'true';\n var falseValueBinding = getBindingAttr(el, 'false-value') || 'false';\n addProp(el, 'checked',\n \"Array.isArray(\" + value + \")\" +\n \"?_i(\" + value + \",\" + valueBinding + \")>-1\" + (\n trueValueBinding === 'true'\n ? (\":(\" + value + \")\")\n : (\":_q(\" + value + \",\" + trueValueBinding + \")\")\n )\n );\n addHandler(el, 'change',\n \"var $$a=\" + value + \",\" +\n '$$el=$event.target,' +\n \"$$c=$$el.checked?(\" + trueValueBinding + \"):(\" + falseValueBinding + \");\" +\n 'if(Array.isArray($$a)){' +\n \"var $$v=\" + (number ? '_n(' + valueBinding + ')' : valueBinding) + \",\" +\n '$$i=_i($$a,$$v);' +\n \"if($$el.checked){$$i<0&&(\" + value + \"=$$a.concat([$$v]))}\" +\n \"else{$$i>-1&&(\" + value + \"=$$a.slice(0,$$i).concat($$a.slice($$i+1)))}\" +\n \"}else{\" + (genAssignmentCode(value, '$$c')) + \"}\",\n null, true\n );\n}\n\nfunction genRadioModel (\n el,\n value,\n modifiers\n) {\n var number = modifiers && modifiers.number;\n var valueBinding = getBindingAttr(el, 'value') || 'null';\n valueBinding = number ? (\"_n(\" + valueBinding + \")\") : valueBinding;\n addProp(el, 'checked', (\"_q(\" + value + \",\" + valueBinding + \")\"));\n addHandler(el, 'change', genAssignmentCode(value, valueBinding), null, true);\n}\n\nfunction genSelect (\n el,\n value,\n modifiers\n) {\n var number = modifiers && modifiers.number;\n var selectedVal = \"Array.prototype.filter\" +\n \".call($event.target.options,function(o){return o.selected})\" +\n \".map(function(o){var val = \\\"_value\\\" in o ? o._value : o.value;\" +\n \"return \" + (number ? '_n(val)' : 'val') + \"})\";\n\n var assignment = '$event.target.multiple ? $$selectedVal : $$selectedVal[0]';\n var code = \"var $$selectedVal = \" + selectedVal + \";\";\n code = code + \" \" + (genAssignmentCode(value, assignment));\n addHandler(el, 'change', code, null, true);\n}\n\nfunction genDefaultModel (\n el,\n value,\n modifiers\n) {\n var type = el.attrsMap.type;\n var ref = modifiers || {};\n var lazy = ref.lazy;\n var number = ref.number;\n var trim = ref.trim;\n var needCompositionGuard = !lazy && type !== 'range';\n var event = lazy\n ? 'change'\n : type === 'range'\n ? RANGE_TOKEN\n : 'input';\n\n var valueExpression = '$event.target.value';\n if (trim) {\n valueExpression = \"$event.target.value.trim()\";\n }\n if (number) {\n valueExpression = \"_n(\" + valueExpression + \")\";\n }\n\n var code = genAssignmentCode(value, valueExpression);\n if (needCompositionGuard) {\n code = \"if($event.target.composing)return;\" + code;\n }\n\n addProp(el, 'value', (\"(\" + value + \")\"));\n addHandler(el, event, code, null, true);\n if (trim || number) {\n addHandler(el, 'blur', '$forceUpdate()');\n }\n}\n\n/* */\n\n// normalize v-model event tokens that can only be determined at runtime.\n// it's important to place the event as the first in the array because\n// the whole point is ensuring the v-model callback gets called before\n// user-attached handlers.\nfunction normalizeEvents (on) {\n /* istanbul ignore if */\n if (isDef(on[RANGE_TOKEN])) {\n // IE input[type=range] only supports `change` event\n var event = isIE ? 'change' : 'input';\n on[event] = [].concat(on[RANGE_TOKEN], on[event] || []);\n delete on[RANGE_TOKEN];\n }\n // This was originally intended to fix #4521 but no longer necessary\n // after 2.5. Keeping it for backwards compat with generated code from < 2.4\n /* istanbul ignore if */\n if (isDef(on[CHECKBOX_RADIO_TOKEN])) {\n on.change = [].concat(on[CHECKBOX_RADIO_TOKEN], on.change || []);\n delete on[CHECKBOX_RADIO_TOKEN];\n }\n}\n\nvar target$1;\n\nfunction createOnceHandler (handler, event, capture) {\n var _target = target$1; // save current target element in closure\n return function onceHandler () {\n var res = handler.apply(null, arguments);\n if (res !== null) {\n remove$2(event, onceHandler, capture, _target);\n }\n }\n}\n\nfunction add$1 (\n event,\n handler,\n once$$1,\n capture,\n passive\n) {\n handler = withMacroTask(handler);\n if (once$$1) { handler = createOnceHandler(handler, event, capture); }\n target$1.addEventListener(\n event,\n handler,\n supportsPassive\n ? { capture: capture, passive: passive }\n : capture\n );\n}\n\nfunction remove$2 (\n event,\n handler,\n capture,\n _target\n) {\n (_target || target$1).removeEventListener(\n event,\n handler._withTask || handler,\n capture\n );\n}\n\nfunction updateDOMListeners (oldVnode, vnode) {\n if (isUndef(oldVnode.data.on) && isUndef(vnode.data.on)) {\n return\n }\n var on = vnode.data.on || {};\n var oldOn = oldVnode.data.on || {};\n target$1 = vnode.elm;\n normalizeEvents(on);\n updateListeners(on, oldOn, add$1, remove$2, vnode.context);\n}\n\nvar events = {\n create: updateDOMListeners,\n update: updateDOMListeners\n};\n\n/* */\n\nfunction updateDOMProps (oldVnode, vnode) {\n if (isUndef(oldVnode.data.domProps) && isUndef(vnode.data.domProps)) {\n return\n }\n var key, cur;\n var elm = vnode.elm;\n var oldProps = oldVnode.data.domProps || {};\n var props = vnode.data.domProps || {};\n // clone observed objects, as the user probably wants to mutate it\n if (isDef(props.__ob__)) {\n props = vnode.data.domProps = extend({}, props);\n }\n\n for (key in oldProps) {\n if (isUndef(props[key])) {\n elm[key] = '';\n }\n }\n for (key in props) {\n cur = props[key];\n // ignore children if the node has textContent or innerHTML,\n // as these will throw away existing DOM nodes and cause removal errors\n // on subsequent patches (#3360)\n if (key === 'textContent' || key === 'innerHTML') {\n if (vnode.children) { vnode.children.length = 0; }\n if (cur === oldProps[key]) { continue }\n // #6601 work around Chrome version <= 55 bug where single textNode\n // replaced by innerHTML/textContent retains its parentNode property\n if (elm.childNodes.length === 1) {\n elm.removeChild(elm.childNodes[0]);\n }\n }\n\n if (key === 'value') {\n // store value as _value as well since\n // non-string values will be stringified\n elm._value = cur;\n // avoid resetting cursor position when value is the same\n var strCur = isUndef(cur) ? '' : String(cur);\n if (shouldUpdateValue(elm, strCur)) {\n elm.value = strCur;\n }\n } else {\n elm[key] = cur;\n }\n }\n}\n\n// check platforms/web/util/attrs.js acceptValue\n\n\nfunction shouldUpdateValue (elm, checkVal) {\n return (!elm.composing && (\n elm.tagName === 'OPTION' ||\n isDirty(elm, checkVal) ||\n isInputChanged(elm, checkVal)\n ))\n}\n\nfunction isDirty (elm, checkVal) {\n // return true when textbox (.number and .trim) loses focus and its value is\n // not equal to the updated value\n var notInFocus = true;\n // #6157\n // work around IE bug when accessing document.activeElement in an iframe\n try { notInFocus = document.activeElement !== elm; } catch (e) {}\n return notInFocus && elm.value !== checkVal\n}\n\nfunction isInputChanged (elm, newVal) {\n var value = elm.value;\n var modifiers = elm._vModifiers; // injected by v-model runtime\n if (isDef(modifiers) && modifiers.number) {\n return toNumber(value) !== toNumber(newVal)\n }\n if (isDef(modifiers) && modifiers.trim) {\n return value.trim() !== newVal.trim()\n }\n return value !== newVal\n}\n\nvar domProps = {\n create: updateDOMProps,\n update: updateDOMProps\n};\n\n/* */\n\nvar parseStyleText = cached(function (cssText) {\n var res = {};\n var listDelimiter = /;(?![^(]*\\))/g;\n var propertyDelimiter = /:(.+)/;\n cssText.split(listDelimiter).forEach(function (item) {\n if (item) {\n var tmp = item.split(propertyDelimiter);\n tmp.length > 1 && (res[tmp[0].trim()] = tmp[1].trim());\n }\n });\n return res\n});\n\n// merge static and dynamic style data on the same vnode\nfunction normalizeStyleData (data) {\n var style = normalizeStyleBinding(data.style);\n // static style is pre-processed into an object during compilation\n // and is always a fresh object, so it's safe to merge into it\n return data.staticStyle\n ? extend(data.staticStyle, style)\n : style\n}\n\n// normalize possible array / string values into Object\nfunction normalizeStyleBinding (bindingStyle) {\n if (Array.isArray(bindingStyle)) {\n return toObject(bindingStyle)\n }\n if (typeof bindingStyle === 'string') {\n return parseStyleText(bindingStyle)\n }\n return bindingStyle\n}\n\n/**\n * parent component style should be after child's\n * so that parent component's style could override it\n */\nfunction getStyle (vnode, checkChild) {\n var res = {};\n var styleData;\n\n if (checkChild) {\n var childNode = vnode;\n while (childNode.componentInstance) {\n childNode = childNode.componentInstance._vnode;\n if (childNode.data && (styleData = normalizeStyleData(childNode.data))) {\n extend(res, styleData);\n }\n }\n }\n\n if ((styleData = normalizeStyleData(vnode.data))) {\n extend(res, styleData);\n }\n\n var parentNode = vnode;\n while ((parentNode = parentNode.parent)) {\n if (parentNode.data && (styleData = normalizeStyleData(parentNode.data))) {\n extend(res, styleData);\n }\n }\n return res\n}\n\n/* */\n\nvar cssVarRE = /^--/;\nvar importantRE = /\\s*!important$/;\nvar setProp = function (el, name, val) {\n /* istanbul ignore if */\n if (cssVarRE.test(name)) {\n el.style.setProperty(name, val);\n } else if (importantRE.test(val)) {\n el.style.setProperty(name, val.replace(importantRE, ''), 'important');\n } else {\n var normalizedName = normalize(name);\n if (Array.isArray(val)) {\n // Support values array created by autoprefixer, e.g.\n // {display: [\"-webkit-box\", \"-ms-flexbox\", \"flex\"]}\n // Set them one by one, and the browser will only set those it can recognize\n for (var i = 0, len = val.length; i < len; i++) {\n el.style[normalizedName] = val[i];\n }\n } else {\n el.style[normalizedName] = val;\n }\n }\n};\n\nvar vendorNames = ['Webkit', 'Moz', 'ms'];\n\nvar emptyStyle;\nvar normalize = cached(function (prop) {\n emptyStyle = emptyStyle || document.createElement('div').style;\n prop = camelize(prop);\n if (prop !== 'filter' && (prop in emptyStyle)) {\n return prop\n }\n var capName = prop.charAt(0).toUpperCase() + prop.slice(1);\n for (var i = 0; i < vendorNames.length; i++) {\n var name = vendorNames[i] + capName;\n if (name in emptyStyle) {\n return name\n }\n }\n});\n\nfunction updateStyle (oldVnode, vnode) {\n var data = vnode.data;\n var oldData = oldVnode.data;\n\n if (isUndef(data.staticStyle) && isUndef(data.style) &&\n isUndef(oldData.staticStyle) && isUndef(oldData.style)\n ) {\n return\n }\n\n var cur, name;\n var el = vnode.elm;\n var oldStaticStyle = oldData.staticStyle;\n var oldStyleBinding = oldData.normalizedStyle || oldData.style || {};\n\n // if static style exists, stylebinding already merged into it when doing normalizeStyleData\n var oldStyle = oldStaticStyle || oldStyleBinding;\n\n var style = normalizeStyleBinding(vnode.data.style) || {};\n\n // store normalized style under a different key for next diff\n // make sure to clone it if it's reactive, since the user likely wants\n // to mutate it.\n vnode.data.normalizedStyle = isDef(style.__ob__)\n ? extend({}, style)\n : style;\n\n var newStyle = getStyle(vnode, true);\n\n for (name in oldStyle) {\n if (isUndef(newStyle[name])) {\n setProp(el, name, '');\n }\n }\n for (name in newStyle) {\n cur = newStyle[name];\n if (cur !== oldStyle[name]) {\n // ie9 setting to null has no effect, must use empty string\n setProp(el, name, cur == null ? '' : cur);\n }\n }\n}\n\nvar style = {\n create: updateStyle,\n update: updateStyle\n};\n\n/* */\n\n/**\n * Add class with compatibility for SVG since classList is not supported on\n * SVG elements in IE\n */\nfunction addClass (el, cls) {\n /* istanbul ignore if */\n if (!cls || !(cls = cls.trim())) {\n return\n }\n\n /* istanbul ignore else */\n if (el.classList) {\n if (cls.indexOf(' ') > -1) {\n cls.split(/\\s+/).forEach(function (c) { return el.classList.add(c); });\n } else {\n el.classList.add(cls);\n }\n } else {\n var cur = \" \" + (el.getAttribute('class') || '') + \" \";\n if (cur.indexOf(' ' + cls + ' ') < 0) {\n el.setAttribute('class', (cur + cls).trim());\n }\n }\n}\n\n/**\n * Remove class with compatibility for SVG since classList is not supported on\n * SVG elements in IE\n */\nfunction removeClass (el, cls) {\n /* istanbul ignore if */\n if (!cls || !(cls = cls.trim())) {\n return\n }\n\n /* istanbul ignore else */\n if (el.classList) {\n if (cls.indexOf(' ') > -1) {\n cls.split(/\\s+/).forEach(function (c) { return el.classList.remove(c); });\n } else {\n el.classList.remove(cls);\n }\n if (!el.classList.length) {\n el.removeAttribute('class');\n }\n } else {\n var cur = \" \" + (el.getAttribute('class') || '') + \" \";\n var tar = ' ' + cls + ' ';\n while (cur.indexOf(tar) >= 0) {\n cur = cur.replace(tar, ' ');\n }\n cur = cur.trim();\n if (cur) {\n el.setAttribute('class', cur);\n } else {\n el.removeAttribute('class');\n }\n }\n}\n\n/* */\n\nfunction resolveTransition (def) {\n if (!def) {\n return\n }\n /* istanbul ignore else */\n if (typeof def === 'object') {\n var res = {};\n if (def.css !== false) {\n extend(res, autoCssTransition(def.name || 'v'));\n }\n extend(res, def);\n return res\n } else if (typeof def === 'string') {\n return autoCssTransition(def)\n }\n}\n\nvar autoCssTransition = cached(function (name) {\n return {\n enterClass: (name + \"-enter\"),\n enterToClass: (name + \"-enter-to\"),\n enterActiveClass: (name + \"-enter-active\"),\n leaveClass: (name + \"-leave\"),\n leaveToClass: (name + \"-leave-to\"),\n leaveActiveClass: (name + \"-leave-active\")\n }\n});\n\nvar hasTransition = inBrowser && !isIE9;\nvar TRANSITION = 'transition';\nvar ANIMATION = 'animation';\n\n// Transition property/event sniffing\nvar transitionProp = 'transition';\nvar transitionEndEvent = 'transitionend';\nvar animationProp = 'animation';\nvar animationEndEvent = 'animationend';\nif (hasTransition) {\n /* istanbul ignore if */\n if (window.ontransitionend === undefined &&\n window.onwebkittransitionend !== undefined\n ) {\n transitionProp = 'WebkitTransition';\n transitionEndEvent = 'webkitTransitionEnd';\n }\n if (window.onanimationend === undefined &&\n window.onwebkitanimationend !== undefined\n ) {\n animationProp = 'WebkitAnimation';\n animationEndEvent = 'webkitAnimationEnd';\n }\n}\n\n// binding to window is necessary to make hot reload work in IE in strict mode\nvar raf = inBrowser\n ? window.requestAnimationFrame\n ? window.requestAnimationFrame.bind(window)\n : setTimeout\n : /* istanbul ignore next */ function (fn) { return fn(); };\n\nfunction nextFrame (fn) {\n raf(function () {\n raf(fn);\n });\n}\n\nfunction addTransitionClass (el, cls) {\n var transitionClasses = el._transitionClasses || (el._transitionClasses = []);\n if (transitionClasses.indexOf(cls) < 0) {\n transitionClasses.push(cls);\n addClass(el, cls);\n }\n}\n\nfunction removeTransitionClass (el, cls) {\n if (el._transitionClasses) {\n remove(el._transitionClasses, cls);\n }\n removeClass(el, cls);\n}\n\nfunction whenTransitionEnds (\n el,\n expectedType,\n cb\n) {\n var ref = getTransitionInfo(el, expectedType);\n var type = ref.type;\n var timeout = ref.timeout;\n var propCount = ref.propCount;\n if (!type) { return cb() }\n var event = type === TRANSITION ? transitionEndEvent : animationEndEvent;\n var ended = 0;\n var end = function () {\n el.removeEventListener(event, onEnd);\n cb();\n };\n var onEnd = function (e) {\n if (e.target === el) {\n if (++ended >= propCount) {\n end();\n }\n }\n };\n setTimeout(function () {\n if (ended < propCount) {\n end();\n }\n }, timeout + 1);\n el.addEventListener(event, onEnd);\n}\n\nvar transformRE = /\\b(transform|all)(,|$)/;\n\nfunction getTransitionInfo (el, expectedType) {\n var styles = window.getComputedStyle(el);\n var transitionDelays = styles[transitionProp + 'Delay'].split(', ');\n var transitionDurations = styles[transitionProp + 'Duration'].split(', ');\n var transitionTimeout = getTimeout(transitionDelays, transitionDurations);\n var animationDelays = styles[animationProp + 'Delay'].split(', ');\n var animationDurations = styles[animationProp + 'Duration'].split(', ');\n var animationTimeout = getTimeout(animationDelays, animationDurations);\n\n var type;\n var timeout = 0;\n var propCount = 0;\n /* istanbul ignore if */\n if (expectedType === TRANSITION) {\n if (transitionTimeout > 0) {\n type = TRANSITION;\n timeout = transitionTimeout;\n propCount = transitionDurations.length;\n }\n } else if (expectedType === ANIMATION) {\n if (animationTimeout > 0) {\n type = ANIMATION;\n timeout = animationTimeout;\n propCount = animationDurations.length;\n }\n } else {\n timeout = Math.max(transitionTimeout, animationTimeout);\n type = timeout > 0\n ? transitionTimeout > animationTimeout\n ? TRANSITION\n : ANIMATION\n : null;\n propCount = type\n ? type === TRANSITION\n ? transitionDurations.length\n : animationDurations.length\n : 0;\n }\n var hasTransform =\n type === TRANSITION &&\n transformRE.test(styles[transitionProp + 'Property']);\n return {\n type: type,\n timeout: timeout,\n propCount: propCount,\n hasTransform: hasTransform\n }\n}\n\nfunction getTimeout (delays, durations) {\n /* istanbul ignore next */\n while (delays.length < durations.length) {\n delays = delays.concat(delays);\n }\n\n return Math.max.apply(null, durations.map(function (d, i) {\n return toMs(d) + toMs(delays[i])\n }))\n}\n\nfunction toMs (s) {\n return Number(s.slice(0, -1)) * 1000\n}\n\n/* */\n\nfunction enter (vnode, toggleDisplay) {\n var el = vnode.elm;\n\n // call leave callback now\n if (isDef(el._leaveCb)) {\n el._leaveCb.cancelled = true;\n el._leaveCb();\n }\n\n var data = resolveTransition(vnode.data.transition);\n if (isUndef(data)) {\n return\n }\n\n /* istanbul ignore if */\n if (isDef(el._enterCb) || el.nodeType !== 1) {\n return\n }\n\n var css = data.css;\n var type = data.type;\n var enterClass = data.enterClass;\n var enterToClass = data.enterToClass;\n var enterActiveClass = data.enterActiveClass;\n var appearClass = data.appearClass;\n var appearToClass = data.appearToClass;\n var appearActiveClass = data.appearActiveClass;\n var beforeEnter = data.beforeEnter;\n var enter = data.enter;\n var afterEnter = data.afterEnter;\n var enterCancelled = data.enterCancelled;\n var beforeAppear = data.beforeAppear;\n var appear = data.appear;\n var afterAppear = data.afterAppear;\n var appearCancelled = data.appearCancelled;\n var duration = data.duration;\n\n // activeInstance will always be the <transition> component managing this\n // transition. One edge case to check is when the <transition> is placed\n // as the root node of a child component. In that case we need to check\n // <transition>'s parent for appear check.\n var context = activeInstance;\n var transitionNode = activeInstance.$vnode;\n while (transitionNode && transitionNode.parent) {\n transitionNode = transitionNode.parent;\n context = transitionNode.context;\n }\n\n var isAppear = !context._isMounted || !vnode.isRootInsert;\n\n if (isAppear && !appear && appear !== '') {\n return\n }\n\n var startClass = isAppear && appearClass\n ? appearClass\n : enterClass;\n var activeClass = isAppear && appearActiveClass\n ? appearActiveClass\n : enterActiveClass;\n var toClass = isAppear && appearToClass\n ? appearToClass\n : enterToClass;\n\n var beforeEnterHook = isAppear\n ? (beforeAppear || beforeEnter)\n : beforeEnter;\n var enterHook = isAppear\n ? (typeof appear === 'function' ? appear : enter)\n : enter;\n var afterEnterHook = isAppear\n ? (afterAppear || afterEnter)\n : afterEnter;\n var enterCancelledHook = isAppear\n ? (appearCancelled || enterCancelled)\n : enterCancelled;\n\n var explicitEnterDuration = toNumber(\n isObject(duration)\n ? duration.enter\n : duration\n );\n\n if (false) {\n checkDuration(explicitEnterDuration, 'enter', vnode);\n }\n\n var expectsCSS = css !== false && !isIE9;\n var userWantsControl = getHookArgumentsLength(enterHook);\n\n var cb = el._enterCb = once(function () {\n if (expectsCSS) {\n removeTransitionClass(el, toClass);\n removeTransitionClass(el, activeClass);\n }\n if (cb.cancelled) {\n if (expectsCSS) {\n removeTransitionClass(el, startClass);\n }\n enterCancelledHook && enterCancelledHook(el);\n } else {\n afterEnterHook && afterEnterHook(el);\n }\n el._enterCb = null;\n });\n\n if (!vnode.data.show) {\n // remove pending leave element on enter by injecting an insert hook\n mergeVNodeHook(vnode.data.hook || (vnode.data.hook = {}), 'insert', function () {\n var parent = el.parentNode;\n var pendingNode = parent && parent._pending && parent._pending[vnode.key];\n if (pendingNode &&\n pendingNode.tag === vnode.tag &&\n pendingNode.elm._leaveCb\n ) {\n pendingNode.elm._leaveCb();\n }\n enterHook && enterHook(el, cb);\n });\n }\n\n // start enter transition\n beforeEnterHook && beforeEnterHook(el);\n if (expectsCSS) {\n addTransitionClass(el, startClass);\n addTransitionClass(el, activeClass);\n nextFrame(function () {\n addTransitionClass(el, toClass);\n removeTransitionClass(el, startClass);\n if (!cb.cancelled && !userWantsControl) {\n if (isValidDuration(explicitEnterDuration)) {\n setTimeout(cb, explicitEnterDuration);\n } else {\n whenTransitionEnds(el, type, cb);\n }\n }\n });\n }\n\n if (vnode.data.show) {\n toggleDisplay && toggleDisplay();\n enterHook && enterHook(el, cb);\n }\n\n if (!expectsCSS && !userWantsControl) {\n cb();\n }\n}\n\nfunction leave (vnode, rm) {\n var el = vnode.elm;\n\n // call enter callback now\n if (isDef(el._enterCb)) {\n el._enterCb.cancelled = true;\n el._enterCb();\n }\n\n var data = resolveTransition(vnode.data.transition);\n if (isUndef(data)) {\n return rm()\n }\n\n /* istanbul ignore if */\n if (isDef(el._leaveCb) || el.nodeType !== 1) {\n return\n }\n\n var css = data.css;\n var type = data.type;\n var leaveClass = data.leaveClass;\n var leaveToClass = data.leaveToClass;\n var leaveActiveClass = data.leaveActiveClass;\n var beforeLeave = data.beforeLeave;\n var leave = data.leave;\n var afterLeave = data.afterLeave;\n var leaveCancelled = data.leaveCancelled;\n var delayLeave = data.delayLeave;\n var duration = data.duration;\n\n var expectsCSS = css !== false && !isIE9;\n var userWantsControl = getHookArgumentsLength(leave);\n\n var explicitLeaveDuration = toNumber(\n isObject(duration)\n ? duration.leave\n : duration\n );\n\n if (false) {\n checkDuration(explicitLeaveDuration, 'leave', vnode);\n }\n\n var cb = el._leaveCb = once(function () {\n if (el.parentNode && el.parentNode._pending) {\n el.parentNode._pending[vnode.key] = null;\n }\n if (expectsCSS) {\n removeTransitionClass(el, leaveToClass);\n removeTransitionClass(el, leaveActiveClass);\n }\n if (cb.cancelled) {\n if (expectsCSS) {\n removeTransitionClass(el, leaveClass);\n }\n leaveCancelled && leaveCancelled(el);\n } else {\n rm();\n afterLeave && afterLeave(el);\n }\n el._leaveCb = null;\n });\n\n if (delayLeave) {\n delayLeave(performLeave);\n } else {\n performLeave();\n }\n\n function performLeave () {\n // the delayed leave may have already been cancelled\n if (cb.cancelled) {\n return\n }\n // record leaving element\n if (!vnode.data.show) {\n (el.parentNode._pending || (el.parentNode._pending = {}))[(vnode.key)] = vnode;\n }\n beforeLeave && beforeLeave(el);\n if (expectsCSS) {\n addTransitionClass(el, leaveClass);\n addTransitionClass(el, leaveActiveClass);\n nextFrame(function () {\n addTransitionClass(el, leaveToClass);\n removeTransitionClass(el, leaveClass);\n if (!cb.cancelled && !userWantsControl) {\n if (isValidDuration(explicitLeaveDuration)) {\n setTimeout(cb, explicitLeaveDuration);\n } else {\n whenTransitionEnds(el, type, cb);\n }\n }\n });\n }\n leave && leave(el, cb);\n if (!expectsCSS && !userWantsControl) {\n cb();\n }\n }\n}\n\n// only used in dev mode\nfunction checkDuration (val, name, vnode) {\n if (typeof val !== 'number') {\n warn(\n \"<transition> explicit \" + name + \" duration is not a valid number - \" +\n \"got \" + (JSON.stringify(val)) + \".\",\n vnode.context\n );\n } else if (isNaN(val)) {\n warn(\n \"<transition> explicit \" + name + \" duration is NaN - \" +\n 'the duration expression might be incorrect.',\n vnode.context\n );\n }\n}\n\nfunction isValidDuration (val) {\n return typeof val === 'number' && !isNaN(val)\n}\n\n/**\n * Normalize a transition hook's argument length. The hook may be:\n * - a merged hook (invoker) with the original in .fns\n * - a wrapped component method (check ._length)\n * - a plain function (.length)\n */\nfunction getHookArgumentsLength (fn) {\n if (isUndef(fn)) {\n return false\n }\n var invokerFns = fn.fns;\n if (isDef(invokerFns)) {\n // invoker\n return getHookArgumentsLength(\n Array.isArray(invokerFns)\n ? invokerFns[0]\n : invokerFns\n )\n } else {\n return (fn._length || fn.length) > 1\n }\n}\n\nfunction _enter (_, vnode) {\n if (vnode.data.show !== true) {\n enter(vnode);\n }\n}\n\nvar transition = inBrowser ? {\n create: _enter,\n activate: _enter,\n remove: function remove$$1 (vnode, rm) {\n /* istanbul ignore else */\n if (vnode.data.show !== true) {\n leave(vnode, rm);\n } else {\n rm();\n }\n }\n} : {};\n\nvar platformModules = [\n attrs,\n klass,\n events,\n domProps,\n style,\n transition\n];\n\n/* */\n\n// the directive module should be applied last, after all\n// built-in modules have been applied.\nvar modules = platformModules.concat(baseModules);\n\nvar patch = createPatchFunction({ nodeOps: nodeOps, modules: modules });\n\n/**\n * Not type checking this file because flow doesn't like attaching\n * properties to Elements.\n */\n\n/* istanbul ignore if */\nif (isIE9) {\n // http://www.matts411.com/post/internet-explorer-9-oninput/\n document.addEventListener('selectionchange', function () {\n var el = document.activeElement;\n if (el && el.vmodel) {\n trigger(el, 'input');\n }\n });\n}\n\nvar model$1 = {\n inserted: function inserted (el, binding, vnode) {\n if (vnode.tag === 'select') {\n setSelected(el, binding, vnode.context);\n el._vOptions = [].map.call(el.options, getValue);\n } else if (vnode.tag === 'textarea' || isTextInputType(el.type)) {\n el._vModifiers = binding.modifiers;\n if (!binding.modifiers.lazy) {\n // Safari < 10.2 & UIWebView doesn't fire compositionend when\n // switching focus before confirming composition choice\n // this also fixes the issue where some browsers e.g. iOS Chrome\n // fires \"change\" instead of \"input\" on autocomplete.\n el.addEventListener('change', onCompositionEnd);\n if (!isAndroid) {\n el.addEventListener('compositionstart', onCompositionStart);\n el.addEventListener('compositionend', onCompositionEnd);\n }\n /* istanbul ignore if */\n if (isIE9) {\n el.vmodel = true;\n }\n }\n }\n },\n componentUpdated: function componentUpdated (el, binding, vnode) {\n if (vnode.tag === 'select') {\n setSelected(el, binding, vnode.context);\n // in case the options rendered by v-for have changed,\n // it's possible that the value is out-of-sync with the rendered options.\n // detect such cases and filter out values that no longer has a matching\n // option in the DOM.\n var prevOptions = el._vOptions;\n var curOptions = el._vOptions = [].map.call(el.options, getValue);\n if (curOptions.some(function (o, i) { return !looseEqual(o, prevOptions[i]); })) {\n // trigger change event if\n // no matching option found for at least one value\n var needReset = el.multiple\n ? binding.value.some(function (v) { return hasNoMatchingOption(v, curOptions); })\n : binding.value !== binding.oldValue && hasNoMatchingOption(binding.value, curOptions);\n if (needReset) {\n trigger(el, 'change');\n }\n }\n }\n }\n};\n\nfunction setSelected (el, binding, vm) {\n actuallySetSelected(el, binding, vm);\n /* istanbul ignore if */\n if (isIE || isEdge) {\n setTimeout(function () {\n actuallySetSelected(el, binding, vm);\n }, 0);\n }\n}\n\nfunction actuallySetSelected (el, binding, vm) {\n var value = binding.value;\n var isMultiple = el.multiple;\n if (isMultiple && !Array.isArray(value)) {\n \"production\" !== 'production' && warn(\n \"<select multiple v-model=\\\"\" + (binding.expression) + \"\\\"> \" +\n \"expects an Array value for its binding, but got \" + (Object.prototype.toString.call(value).slice(8, -1)),\n vm\n );\n return\n }\n var selected, option;\n for (var i = 0, l = el.options.length; i < l; i++) {\n option = el.options[i];\n if (isMultiple) {\n selected = looseIndexOf(value, getValue(option)) > -1;\n if (option.selected !== selected) {\n option.selected = selected;\n }\n } else {\n if (looseEqual(getValue(option), value)) {\n if (el.selectedIndex !== i) {\n el.selectedIndex = i;\n }\n return\n }\n }\n }\n if (!isMultiple) {\n el.selectedIndex = -1;\n }\n}\n\nfunction hasNoMatchingOption (value, options) {\n return options.every(function (o) { return !looseEqual(o, value); })\n}\n\nfunction getValue (option) {\n return '_value' in option\n ? option._value\n : option.value\n}\n\nfunction onCompositionStart (e) {\n e.target.composing = true;\n}\n\nfunction onCompositionEnd (e) {\n // prevent triggering an input event for no reason\n if (!e.target.composing) { return }\n e.target.composing = false;\n trigger(e.target, 'input');\n}\n\nfunction trigger (el, type) {\n var e = document.createEvent('HTMLEvents');\n e.initEvent(type, true, true);\n el.dispatchEvent(e);\n}\n\n/* */\n\n// recursively search for possible transition defined inside the component root\nfunction locateNode (vnode) {\n return vnode.componentInstance && (!vnode.data || !vnode.data.transition)\n ? locateNode(vnode.componentInstance._vnode)\n : vnode\n}\n\nvar show = {\n bind: function bind (el, ref, vnode) {\n var value = ref.value;\n\n vnode = locateNode(vnode);\n var transition$$1 = vnode.data && vnode.data.transition;\n var originalDisplay = el.__vOriginalDisplay =\n el.style.display === 'none' ? '' : el.style.display;\n if (value && transition$$1) {\n vnode.data.show = true;\n enter(vnode, function () {\n el.style.display = originalDisplay;\n });\n } else {\n el.style.display = value ? originalDisplay : 'none';\n }\n },\n\n update: function update (el, ref, vnode) {\n var value = ref.value;\n var oldValue = ref.oldValue;\n\n /* istanbul ignore if */\n if (value === oldValue) { return }\n vnode = locateNode(vnode);\n var transition$$1 = vnode.data && vnode.data.transition;\n if (transition$$1) {\n vnode.data.show = true;\n if (value) {\n enter(vnode, function () {\n el.style.display = el.__vOriginalDisplay;\n });\n } else {\n leave(vnode, function () {\n el.style.display = 'none';\n });\n }\n } else {\n el.style.display = value ? el.__vOriginalDisplay : 'none';\n }\n },\n\n unbind: function unbind (\n el,\n binding,\n vnode,\n oldVnode,\n isDestroy\n ) {\n if (!isDestroy) {\n el.style.display = el.__vOriginalDisplay;\n }\n }\n};\n\nvar platformDirectives = {\n model: model$1,\n show: show\n};\n\n/* */\n\n// Provides transition support for a single element/component.\n// supports transition mode (out-in / in-out)\n\nvar transitionProps = {\n name: String,\n appear: Boolean,\n css: Boolean,\n mode: String,\n type: String,\n enterClass: String,\n leaveClass: String,\n enterToClass: String,\n leaveToClass: String,\n enterActiveClass: String,\n leaveActiveClass: String,\n appearClass: String,\n appearActiveClass: String,\n appearToClass: String,\n duration: [Number, String, Object]\n};\n\n// in case the child is also an abstract component, e.g. <keep-alive>\n// we want to recursively retrieve the real component to be rendered\nfunction getRealChild (vnode) {\n var compOptions = vnode && vnode.componentOptions;\n if (compOptions && compOptions.Ctor.options.abstract) {\n return getRealChild(getFirstComponentChild(compOptions.children))\n } else {\n return vnode\n }\n}\n\nfunction extractTransitionData (comp) {\n var data = {};\n var options = comp.$options;\n // props\n for (var key in options.propsData) {\n data[key] = comp[key];\n }\n // events.\n // extract listeners and pass them directly to the transition methods\n var listeners = options._parentListeners;\n for (var key$1 in listeners) {\n data[camelize(key$1)] = listeners[key$1];\n }\n return data\n}\n\nfunction placeholder (h, rawChild) {\n if (/\\d-keep-alive$/.test(rawChild.tag)) {\n return h('keep-alive', {\n props: rawChild.componentOptions.propsData\n })\n }\n}\n\nfunction hasParentTransition (vnode) {\n while ((vnode = vnode.parent)) {\n if (vnode.data.transition) {\n return true\n }\n }\n}\n\nfunction isSameChild (child, oldChild) {\n return oldChild.key === child.key && oldChild.tag === child.tag\n}\n\nvar Transition = {\n name: 'transition',\n props: transitionProps,\n abstract: true,\n\n render: function render (h) {\n var this$1 = this;\n\n var children = this.$options._renderChildren;\n if (!children) {\n return\n }\n\n // filter out text nodes (possible whitespaces)\n children = children.filter(function (c) { return c.tag || isAsyncPlaceholder(c); });\n /* istanbul ignore if */\n if (!children.length) {\n return\n }\n\n // warn multiple elements\n if (false) {\n warn(\n '<transition> can only be used on a single element. Use ' +\n '<transition-group> for lists.',\n this.$parent\n );\n }\n\n var mode = this.mode;\n\n // warn invalid mode\n if (false\n ) {\n warn(\n 'invalid <transition> mode: ' + mode,\n this.$parent\n );\n }\n\n var rawChild = children[0];\n\n // if this is a component root node and the component's\n // parent container node also has transition, skip.\n if (hasParentTransition(this.$vnode)) {\n return rawChild\n }\n\n // apply transition data to child\n // use getRealChild() to ignore abstract components e.g. keep-alive\n var child = getRealChild(rawChild);\n /* istanbul ignore if */\n if (!child) {\n return rawChild\n }\n\n if (this._leaving) {\n return placeholder(h, rawChild)\n }\n\n // ensure a key that is unique to the vnode type and to this transition\n // component instance. This key will be used to remove pending leaving nodes\n // during entering.\n var id = \"__transition-\" + (this._uid) + \"-\";\n child.key = child.key == null\n ? child.isComment\n ? id + 'comment'\n : id + child.tag\n : isPrimitive(child.key)\n ? (String(child.key).indexOf(id) === 0 ? child.key : id + child.key)\n : child.key;\n\n var data = (child.data || (child.data = {})).transition = extractTransitionData(this);\n var oldRawChild = this._vnode;\n var oldChild = getRealChild(oldRawChild);\n\n // mark v-show\n // so that the transition module can hand over the control to the directive\n if (child.data.directives && child.data.directives.some(function (d) { return d.name === 'show'; })) {\n child.data.show = true;\n }\n\n if (\n oldChild &&\n oldChild.data &&\n !isSameChild(child, oldChild) &&\n !isAsyncPlaceholder(oldChild)\n ) {\n // replace old child transition data with fresh one\n // important for dynamic transitions!\n var oldData = oldChild.data.transition = extend({}, data);\n // handle transition mode\n if (mode === 'out-in') {\n // return placeholder node and queue update when leave finishes\n this._leaving = true;\n mergeVNodeHook(oldData, 'afterLeave', function () {\n this$1._leaving = false;\n this$1.$forceUpdate();\n });\n return placeholder(h, rawChild)\n } else if (mode === 'in-out') {\n if (isAsyncPlaceholder(child)) {\n return oldRawChild\n }\n var delayedLeave;\n var performLeave = function () { delayedLeave(); };\n mergeVNodeHook(data, 'afterEnter', performLeave);\n mergeVNodeHook(data, 'enterCancelled', performLeave);\n mergeVNodeHook(oldData, 'delayLeave', function (leave) { delayedLeave = leave; });\n }\n }\n\n return rawChild\n }\n};\n\n/* */\n\n// Provides transition support for list items.\n// supports move transitions using the FLIP technique.\n\n// Because the vdom's children update algorithm is \"unstable\" - i.e.\n// it doesn't guarantee the relative positioning of removed elements,\n// we force transition-group to update its children into two passes:\n// in the first pass, we remove all nodes that need to be removed,\n// triggering their leaving transition; in the second pass, we insert/move\n// into the final desired state. This way in the second pass removed\n// nodes will remain where they should be.\n\nvar props = extend({\n tag: String,\n moveClass: String\n}, transitionProps);\n\ndelete props.mode;\n\nvar TransitionGroup = {\n props: props,\n\n render: function render (h) {\n var tag = this.tag || this.$vnode.data.tag || 'span';\n var map = Object.create(null);\n var prevChildren = this.prevChildren = this.children;\n var rawChildren = this.$slots.default || [];\n var children = this.children = [];\n var transitionData = extractTransitionData(this);\n\n for (var i = 0; i < rawChildren.length; i++) {\n var c = rawChildren[i];\n if (c.tag) {\n if (c.key != null && String(c.key).indexOf('__vlist') !== 0) {\n children.push(c);\n map[c.key] = c\n ;(c.data || (c.data = {})).transition = transitionData;\n } else if (false) {\n var opts = c.componentOptions;\n var name = opts ? (opts.Ctor.options.name || opts.tag || '') : c.tag;\n warn((\"<transition-group> children must be keyed: <\" + name + \">\"));\n }\n }\n }\n\n if (prevChildren) {\n var kept = [];\n var removed = [];\n for (var i$1 = 0; i$1 < prevChildren.length; i$1++) {\n var c$1 = prevChildren[i$1];\n c$1.data.transition = transitionData;\n c$1.data.pos = c$1.elm.getBoundingClientRect();\n if (map[c$1.key]) {\n kept.push(c$1);\n } else {\n removed.push(c$1);\n }\n }\n this.kept = h(tag, null, kept);\n this.removed = removed;\n }\n\n return h(tag, null, children)\n },\n\n beforeUpdate: function beforeUpdate () {\n // force removing pass\n this.__patch__(\n this._vnode,\n this.kept,\n false, // hydrating\n true // removeOnly (!important, avoids unnecessary moves)\n );\n this._vnode = this.kept;\n },\n\n updated: function updated () {\n var children = this.prevChildren;\n var moveClass = this.moveClass || ((this.name || 'v') + '-move');\n if (!children.length || !this.hasMove(children[0].elm, moveClass)) {\n return\n }\n\n // we divide the work into three loops to avoid mixing DOM reads and writes\n // in each iteration - which helps prevent layout thrashing.\n children.forEach(callPendingCbs);\n children.forEach(recordPosition);\n children.forEach(applyTranslation);\n\n // force reflow to put everything in position\n // assign to this to avoid being removed in tree-shaking\n // $flow-disable-line\n this._reflow = document.body.offsetHeight;\n\n children.forEach(function (c) {\n if (c.data.moved) {\n var el = c.elm;\n var s = el.style;\n addTransitionClass(el, moveClass);\n s.transform = s.WebkitTransform = s.transitionDuration = '';\n el.addEventListener(transitionEndEvent, el._moveCb = function cb (e) {\n if (!e || /transform$/.test(e.propertyName)) {\n el.removeEventListener(transitionEndEvent, cb);\n el._moveCb = null;\n removeTransitionClass(el, moveClass);\n }\n });\n }\n });\n },\n\n methods: {\n hasMove: function hasMove (el, moveClass) {\n /* istanbul ignore if */\n if (!hasTransition) {\n return false\n }\n /* istanbul ignore if */\n if (this._hasMove) {\n return this._hasMove\n }\n // Detect whether an element with the move class applied has\n // CSS transitions. Since the element may be inside an entering\n // transition at this very moment, we make a clone of it and remove\n // all other transition classes applied to ensure only the move class\n // is applied.\n var clone = el.cloneNode();\n if (el._transitionClasses) {\n el._transitionClasses.forEach(function (cls) { removeClass(clone, cls); });\n }\n addClass(clone, moveClass);\n clone.style.display = 'none';\n this.$el.appendChild(clone);\n var info = getTransitionInfo(clone);\n this.$el.removeChild(clone);\n return (this._hasMove = info.hasTransform)\n }\n }\n};\n\nfunction callPendingCbs (c) {\n /* istanbul ignore if */\n if (c.elm._moveCb) {\n c.elm._moveCb();\n }\n /* istanbul ignore if */\n if (c.elm._enterCb) {\n c.elm._enterCb();\n }\n}\n\nfunction recordPosition (c) {\n c.data.newPos = c.elm.getBoundingClientRect();\n}\n\nfunction applyTranslation (c) {\n var oldPos = c.data.pos;\n var newPos = c.data.newPos;\n var dx = oldPos.left - newPos.left;\n var dy = oldPos.top - newPos.top;\n if (dx || dy) {\n c.data.moved = true;\n var s = c.elm.style;\n s.transform = s.WebkitTransform = \"translate(\" + dx + \"px,\" + dy + \"px)\";\n s.transitionDuration = '0s';\n }\n}\n\nvar platformComponents = {\n Transition: Transition,\n TransitionGroup: TransitionGroup\n};\n\n/* */\n\n// install platform specific utils\nVue$3.config.mustUseProp = mustUseProp;\nVue$3.config.isReservedTag = isReservedTag;\nVue$3.config.isReservedAttr = isReservedAttr;\nVue$3.config.getTagNamespace = getTagNamespace;\nVue$3.config.isUnknownElement = isUnknownElement;\n\n// install platform runtime directives & components\nextend(Vue$3.options.directives, platformDirectives);\nextend(Vue$3.options.components, platformComponents);\n\n// install platform patch function\nVue$3.prototype.__patch__ = inBrowser ? patch : noop;\n\n// public mount method\nVue$3.prototype.$mount = function (\n el,\n hydrating\n) {\n el = el && inBrowser ? query(el) : undefined;\n return mountComponent(this, el, hydrating)\n};\n\n// devtools global hook\n/* istanbul ignore next */\nVue$3.nextTick(function () {\n if (config.devtools) {\n if (devtools) {\n devtools.emit('init', Vue$3);\n } else if (false) {\n console[console.info ? 'info' : 'log'](\n 'Download the Vue Devtools extension for a better development experience:\\n' +\n 'https://github.com/vuejs/vue-devtools'\n );\n }\n }\n if (false\n ) {\n console[console.info ? 'info' : 'log'](\n \"You are running Vue in development mode.\\n\" +\n \"Make sure to turn on production mode when deploying for production.\\n\" +\n \"See more tips at https://vuejs.org/guide/deployment.html\"\n );\n }\n}, 0);\n\n/* */\n\n// check whether current browser encodes a char inside attribute values\nfunction shouldDecode (content, encoded) {\n var div = document.createElement('div');\n div.innerHTML = \"<div a=\\\"\" + content + \"\\\"/>\";\n return div.innerHTML.indexOf(encoded) > 0\n}\n\n// #3663\n// IE encodes newlines inside attribute values while other browsers don't\nvar shouldDecodeNewlines = inBrowser ? shouldDecode('\\n', '&#10;') : false;\n\n/* */\n\nvar defaultTagRE = /\\{\\{((?:.|\\n)+?)\\}\\}/g;\nvar regexEscapeRE = /[-.*+?^${}()|[\\]\\/\\\\]/g;\n\nvar buildRegex = cached(function (delimiters) {\n var open = delimiters[0].replace(regexEscapeRE, '\\\\$&');\n var close = delimiters[1].replace(regexEscapeRE, '\\\\$&');\n return new RegExp(open + '((?:.|\\\\n)+?)' + close, 'g')\n});\n\nfunction parseText (\n text,\n delimiters\n) {\n var tagRE = delimiters ? buildRegex(delimiters) : defaultTagRE;\n if (!tagRE.test(text)) {\n return\n }\n var tokens = [];\n var lastIndex = tagRE.lastIndex = 0;\n var match, index;\n while ((match = tagRE.exec(text))) {\n index = match.index;\n // push text token\n if (index > lastIndex) {\n tokens.push(JSON.stringify(text.slice(lastIndex, index)));\n }\n // tag token\n var exp = parseFilters(match[1].trim());\n tokens.push((\"_s(\" + exp + \")\"));\n lastIndex = index + match[0].length;\n }\n if (lastIndex < text.length) {\n tokens.push(JSON.stringify(text.slice(lastIndex)));\n }\n return tokens.join('+')\n}\n\n/* */\n\nfunction transformNode (el, options) {\n var warn = options.warn || baseWarn;\n var staticClass = getAndRemoveAttr(el, 'class');\n if (false) {\n var expression = parseText(staticClass, options.delimiters);\n if (expression) {\n warn(\n \"class=\\\"\" + staticClass + \"\\\": \" +\n 'Interpolation inside attributes has been removed. ' +\n 'Use v-bind or the colon shorthand instead. For example, ' +\n 'instead of <div class=\"{{ val }}\">, use <div :class=\"val\">.'\n );\n }\n }\n if (staticClass) {\n el.staticClass = JSON.stringify(staticClass);\n }\n var classBinding = getBindingAttr(el, 'class', false /* getStatic */);\n if (classBinding) {\n el.classBinding = classBinding;\n }\n}\n\nfunction genData (el) {\n var data = '';\n if (el.staticClass) {\n data += \"staticClass:\" + (el.staticClass) + \",\";\n }\n if (el.classBinding) {\n data += \"class:\" + (el.classBinding) + \",\";\n }\n return data\n}\n\nvar klass$1 = {\n staticKeys: ['staticClass'],\n transformNode: transformNode,\n genData: genData\n};\n\n/* */\n\nfunction transformNode$1 (el, options) {\n var warn = options.warn || baseWarn;\n var staticStyle = getAndRemoveAttr(el, 'style');\n if (staticStyle) {\n /* istanbul ignore if */\n if (false) {\n var expression = parseText(staticStyle, options.delimiters);\n if (expression) {\n warn(\n \"style=\\\"\" + staticStyle + \"\\\": \" +\n 'Interpolation inside attributes has been removed. ' +\n 'Use v-bind or the colon shorthand instead. For example, ' +\n 'instead of <div style=\"{{ val }}\">, use <div :style=\"val\">.'\n );\n }\n }\n el.staticStyle = JSON.stringify(parseStyleText(staticStyle));\n }\n\n var styleBinding = getBindingAttr(el, 'style', false /* getStatic */);\n if (styleBinding) {\n el.styleBinding = styleBinding;\n }\n}\n\nfunction genData$1 (el) {\n var data = '';\n if (el.staticStyle) {\n data += \"staticStyle:\" + (el.staticStyle) + \",\";\n }\n if (el.styleBinding) {\n data += \"style:(\" + (el.styleBinding) + \"),\";\n }\n return data\n}\n\nvar style$1 = {\n staticKeys: ['staticStyle'],\n transformNode: transformNode$1,\n genData: genData$1\n};\n\n/* */\n\nvar decoder;\n\nvar he = {\n decode: function decode (html) {\n decoder = decoder || document.createElement('div');\n decoder.innerHTML = html;\n return decoder.textContent\n }\n};\n\n/* */\n\nvar isUnaryTag = makeMap(\n 'area,base,br,col,embed,frame,hr,img,input,isindex,keygen,' +\n 'link,meta,param,source,track,wbr'\n);\n\n// Elements that you can, intentionally, leave open\n// (and which close themselves)\nvar canBeLeftOpenTag = makeMap(\n 'colgroup,dd,dt,li,options,p,td,tfoot,th,thead,tr,source'\n);\n\n// HTML5 tags https://html.spec.whatwg.org/multipage/indices.html#elements-3\n// Phrasing Content https://html.spec.whatwg.org/multipage/dom.html#phrasing-content\nvar isNonPhrasingTag = makeMap(\n 'address,article,aside,base,blockquote,body,caption,col,colgroup,dd,' +\n 'details,dialog,div,dl,dt,fieldset,figcaption,figure,footer,form,' +\n 'h1,h2,h3,h4,h5,h6,head,header,hgroup,hr,html,legend,li,menuitem,meta,' +\n 'optgroup,option,param,rp,rt,source,style,summary,tbody,td,tfoot,th,thead,' +\n 'title,tr,track'\n);\n\n/**\n * Not type-checking this file because it's mostly vendor code.\n */\n\n/*!\n * HTML Parser By John Resig (ejohn.org)\n * Modified by Juriy \"kangax\" Zaytsev\n * Original code by Erik Arvidsson, Mozilla Public License\n * http://erik.eae.net/simplehtmlparser/simplehtmlparser.js\n */\n\n// Regular Expressions for parsing tags and attributes\nvar attribute = /^\\s*([^\\s\"'<>\\/=]+)(?:\\s*(=)\\s*(?:\"([^\"]*)\"+|'([^']*)'+|([^\\s\"'=<>`]+)))?/;\n// could use https://www.w3.org/TR/1999/REC-xml-names-19990114/#NT-QName\n// but for Vue templates we can enforce a simple charset\nvar ncname = '[a-zA-Z_][\\\\w\\\\-\\\\.]*';\nvar qnameCapture = \"((?:\" + ncname + \"\\\\:)?\" + ncname + \")\";\nvar startTagOpen = new RegExp((\"^<\" + qnameCapture));\nvar startTagClose = /^\\s*(\\/?)>/;\nvar endTag = new RegExp((\"^<\\\\/\" + qnameCapture + \"[^>]*>\"));\nvar doctype = /^<!DOCTYPE [^>]+>/i;\nvar comment = /^<!--/;\nvar conditionalComment = /^<!\\[/;\n\nvar IS_REGEX_CAPTURING_BROKEN = false;\n'x'.replace(/x(.)?/g, function (m, g) {\n IS_REGEX_CAPTURING_BROKEN = g === '';\n});\n\n// Special Elements (can contain anything)\nvar isPlainTextElement = makeMap('script,style,textarea', true);\nvar reCache = {};\n\nvar decodingMap = {\n '&lt;': '<',\n '&gt;': '>',\n '&quot;': '\"',\n '&amp;': '&',\n '&#10;': '\\n'\n};\nvar encodedAttr = /&(?:lt|gt|quot|amp);/g;\nvar encodedAttrWithNewLines = /&(?:lt|gt|quot|amp|#10);/g;\n\n// #5992\nvar isIgnoreNewlineTag = makeMap('pre,textarea', true);\nvar shouldIgnoreFirstNewline = function (tag, html) { return tag && isIgnoreNewlineTag(tag) && html[0] === '\\n'; };\n\nfunction decodeAttr (value, shouldDecodeNewlines) {\n var re = shouldDecodeNewlines ? encodedAttrWithNewLines : encodedAttr;\n return value.replace(re, function (match) { return decodingMap[match]; })\n}\n\nfunction parseHTML (html, options) {\n var stack = [];\n var expectHTML = options.expectHTML;\n var isUnaryTag$$1 = options.isUnaryTag || no;\n var canBeLeftOpenTag$$1 = options.canBeLeftOpenTag || no;\n var index = 0;\n var last, lastTag;\n while (html) {\n last = html;\n // Make sure we're not in a plaintext content element like script/style\n if (!lastTag || !isPlainTextElement(lastTag)) {\n var textEnd = html.indexOf('<');\n if (textEnd === 0) {\n // Comment:\n if (comment.test(html)) {\n var commentEnd = html.indexOf('-->');\n\n if (commentEnd >= 0) {\n if (options.shouldKeepComment) {\n options.comment(html.substring(4, commentEnd));\n }\n advance(commentEnd + 3);\n continue\n }\n }\n\n // http://en.wikipedia.org/wiki/Conditional_comment#Downlevel-revealed_conditional_comment\n if (conditionalComment.test(html)) {\n var conditionalEnd = html.indexOf(']>');\n\n if (conditionalEnd >= 0) {\n advance(conditionalEnd + 2);\n continue\n }\n }\n\n // Doctype:\n var doctypeMatch = html.match(doctype);\n if (doctypeMatch) {\n advance(doctypeMatch[0].length);\n continue\n }\n\n // End tag:\n var endTagMatch = html.match(endTag);\n if (endTagMatch) {\n var curIndex = index;\n advance(endTagMatch[0].length);\n parseEndTag(endTagMatch[1], curIndex, index);\n continue\n }\n\n // Start tag:\n var startTagMatch = parseStartTag();\n if (startTagMatch) {\n handleStartTag(startTagMatch);\n if (shouldIgnoreFirstNewline(lastTag, html)) {\n advance(1);\n }\n continue\n }\n }\n\n var text = (void 0), rest = (void 0), next = (void 0);\n if (textEnd >= 0) {\n rest = html.slice(textEnd);\n while (\n !endTag.test(rest) &&\n !startTagOpen.test(rest) &&\n !comment.test(rest) &&\n !conditionalComment.test(rest)\n ) {\n // < in plain text, be forgiving and treat it as text\n next = rest.indexOf('<', 1);\n if (next < 0) { break }\n textEnd += next;\n rest = html.slice(textEnd);\n }\n text = html.substring(0, textEnd);\n advance(textEnd);\n }\n\n if (textEnd < 0) {\n text = html;\n html = '';\n }\n\n if (options.chars && text) {\n options.chars(text);\n }\n } else {\n var endTagLength = 0;\n var stackedTag = lastTag.toLowerCase();\n var reStackedTag = reCache[stackedTag] || (reCache[stackedTag] = new RegExp('([\\\\s\\\\S]*?)(</' + stackedTag + '[^>]*>)', 'i'));\n var rest$1 = html.replace(reStackedTag, function (all, text, endTag) {\n endTagLength = endTag.length;\n if (!isPlainTextElement(stackedTag) && stackedTag !== 'noscript') {\n text = text\n .replace(/<!--([\\s\\S]*?)-->/g, '$1')\n .replace(/<!\\[CDATA\\[([\\s\\S]*?)]]>/g, '$1');\n }\n if (shouldIgnoreFirstNewline(stackedTag, text)) {\n text = text.slice(1);\n }\n if (options.chars) {\n options.chars(text);\n }\n return ''\n });\n index += html.length - rest$1.length;\n html = rest$1;\n parseEndTag(stackedTag, index - endTagLength, index);\n }\n\n if (html === last) {\n options.chars && options.chars(html);\n if (false) {\n options.warn((\"Mal-formatted tag at end of template: \\\"\" + html + \"\\\"\"));\n }\n break\n }\n }\n\n // Clean up any remaining tags\n parseEndTag();\n\n function advance (n) {\n index += n;\n html = html.substring(n);\n }\n\n function parseStartTag () {\n var start = html.match(startTagOpen);\n if (start) {\n var match = {\n tagName: start[1],\n attrs: [],\n start: index\n };\n advance(start[0].length);\n var end, attr;\n while (!(end = html.match(startTagClose)) && (attr = html.match(attribute))) {\n advance(attr[0].length);\n match.attrs.push(attr);\n }\n if (end) {\n match.unarySlash = end[1];\n advance(end[0].length);\n match.end = index;\n return match\n }\n }\n }\n\n function handleStartTag (match) {\n var tagName = match.tagName;\n var unarySlash = match.unarySlash;\n\n if (expectHTML) {\n if (lastTag === 'p' && isNonPhrasingTag(tagName)) {\n parseEndTag(lastTag);\n }\n if (canBeLeftOpenTag$$1(tagName) && lastTag === tagName) {\n parseEndTag(tagName);\n }\n }\n\n var unary = isUnaryTag$$1(tagName) || !!unarySlash;\n\n var l = match.attrs.length;\n var attrs = new Array(l);\n for (var i = 0; i < l; i++) {\n var args = match.attrs[i];\n // hackish work around FF bug https://bugzilla.mozilla.org/show_bug.cgi?id=369778\n if (IS_REGEX_CAPTURING_BROKEN && args[0].indexOf('\"\"') === -1) {\n if (args[3] === '') { delete args[3]; }\n if (args[4] === '') { delete args[4]; }\n if (args[5] === '') { delete args[5]; }\n }\n var value = args[3] || args[4] || args[5] || '';\n attrs[i] = {\n name: args[1],\n value: decodeAttr(\n value,\n options.shouldDecodeNewlines\n )\n };\n }\n\n if (!unary) {\n stack.push({ tag: tagName, lowerCasedTag: tagName.toLowerCase(), attrs: attrs });\n lastTag = tagName;\n }\n\n if (options.start) {\n options.start(tagName, attrs, unary, match.start, match.end);\n }\n }\n\n function parseEndTag (tagName, start, end) {\n var pos, lowerCasedTagName;\n if (start == null) { start = index; }\n if (end == null) { end = index; }\n\n if (tagName) {\n lowerCasedTagName = tagName.toLowerCase();\n }\n\n // Find the closest opened tag of the same type\n if (tagName) {\n for (pos = stack.length - 1; pos >= 0; pos--) {\n if (stack[pos].lowerCasedTag === lowerCasedTagName) {\n break\n }\n }\n } else {\n // If no tag name is provided, clean shop\n pos = 0;\n }\n\n if (pos >= 0) {\n // Close all the open elements, up the stack\n for (var i = stack.length - 1; i >= pos; i--) {\n if (false\n ) {\n options.warn(\n (\"tag <\" + (stack[i].tag) + \"> has no matching end tag.\")\n );\n }\n if (options.end) {\n options.end(stack[i].tag, start, end);\n }\n }\n\n // Remove the open elements from the stack\n stack.length = pos;\n lastTag = pos && stack[pos - 1].tag;\n } else if (lowerCasedTagName === 'br') {\n if (options.start) {\n options.start(tagName, [], true, start, end);\n }\n } else if (lowerCasedTagName === 'p') {\n if (options.start) {\n options.start(tagName, [], false, start, end);\n }\n if (options.end) {\n options.end(tagName, start, end);\n }\n }\n }\n}\n\n/* */\n\nvar onRE = /^@|^v-on:/;\nvar dirRE = /^v-|^@|^:/;\nvar forAliasRE = /(.*?)\\s+(?:in|of)\\s+(.*)/;\nvar forIteratorRE = /\\((\\{[^}]*\\}|[^,]*),([^,]*)(?:,([^,]*))?\\)/;\n\nvar argRE = /:(.*)$/;\nvar bindRE = /^:|^v-bind:/;\nvar modifierRE = /\\.[^.]+/g;\n\nvar decodeHTMLCached = cached(he.decode);\n\n// configurable state\nvar warn$2;\nvar delimiters;\nvar transforms;\nvar preTransforms;\nvar postTransforms;\nvar platformIsPreTag;\nvar platformMustUseProp;\nvar platformGetTagNamespace;\n\n\n\nfunction createASTElement (\n tag,\n attrs,\n parent\n) {\n return {\n type: 1,\n tag: tag,\n attrsList: attrs,\n attrsMap: makeAttrsMap(attrs),\n parent: parent,\n children: []\n }\n}\n\n/**\n * Convert HTML string to AST.\n */\nfunction parse (\n template,\n options\n) {\n warn$2 = options.warn || baseWarn;\n\n platformIsPreTag = options.isPreTag || no;\n platformMustUseProp = options.mustUseProp || no;\n platformGetTagNamespace = options.getTagNamespace || no;\n\n transforms = pluckModuleFunction(options.modules, 'transformNode');\n preTransforms = pluckModuleFunction(options.modules, 'preTransformNode');\n postTransforms = pluckModuleFunction(options.modules, 'postTransformNode');\n\n delimiters = options.delimiters;\n\n var stack = [];\n var preserveWhitespace = options.preserveWhitespace !== false;\n var root;\n var currentParent;\n var inVPre = false;\n var inPre = false;\n var warned = false;\n\n function warnOnce (msg) {\n if (!warned) {\n warned = true;\n warn$2(msg);\n }\n }\n\n function endPre (element) {\n // check pre state\n if (element.pre) {\n inVPre = false;\n }\n if (platformIsPreTag(element.tag)) {\n inPre = false;\n }\n }\n\n parseHTML(template, {\n warn: warn$2,\n expectHTML: options.expectHTML,\n isUnaryTag: options.isUnaryTag,\n canBeLeftOpenTag: options.canBeLeftOpenTag,\n shouldDecodeNewlines: options.shouldDecodeNewlines,\n shouldKeepComment: options.comments,\n start: function start (tag, attrs, unary) {\n // check namespace.\n // inherit parent ns if there is one\n var ns = (currentParent && currentParent.ns) || platformGetTagNamespace(tag);\n\n // handle IE svg bug\n /* istanbul ignore if */\n if (isIE && ns === 'svg') {\n attrs = guardIESVGBug(attrs);\n }\n\n var element = createASTElement(tag, attrs, currentParent);\n if (ns) {\n element.ns = ns;\n }\n\n if (isForbiddenTag(element) && !isServerRendering()) {\n element.forbidden = true;\n \"production\" !== 'production' && warn$2(\n 'Templates should only be responsible for mapping the state to the ' +\n 'UI. Avoid placing tags with side-effects in your templates, such as ' +\n \"<\" + tag + \">\" + ', as they will not be parsed.'\n );\n }\n\n // apply pre-transforms\n for (var i = 0; i < preTransforms.length; i++) {\n element = preTransforms[i](element, options) || element;\n }\n\n if (!inVPre) {\n processPre(element);\n if (element.pre) {\n inVPre = true;\n }\n }\n if (platformIsPreTag(element.tag)) {\n inPre = true;\n }\n if (inVPre) {\n processRawAttrs(element);\n } else if (!element.processed) {\n // structural directives\n processFor(element);\n processIf(element);\n processOnce(element);\n // element-scope stuff\n processElement(element, options);\n }\n\n function checkRootConstraints (el) {\n if (false) {\n if (el.tag === 'slot' || el.tag === 'template') {\n warnOnce(\n \"Cannot use <\" + (el.tag) + \"> as component root element because it may \" +\n 'contain multiple nodes.'\n );\n }\n if (el.attrsMap.hasOwnProperty('v-for')) {\n warnOnce(\n 'Cannot use v-for on stateful component root element because ' +\n 'it renders multiple elements.'\n );\n }\n }\n }\n\n // tree management\n if (!root) {\n root = element;\n checkRootConstraints(root);\n } else if (!stack.length) {\n // allow root elements with v-if, v-else-if and v-else\n if (root.if && (element.elseif || element.else)) {\n checkRootConstraints(element);\n addIfCondition(root, {\n exp: element.elseif,\n block: element\n });\n } else if (false) {\n warnOnce(\n \"Component template should contain exactly one root element. \" +\n \"If you are using v-if on multiple elements, \" +\n \"use v-else-if to chain them instead.\"\n );\n }\n }\n if (currentParent && !element.forbidden) {\n if (element.elseif || element.else) {\n processIfConditions(element, currentParent);\n } else if (element.slotScope) { // scoped slot\n currentParent.plain = false;\n var name = element.slotTarget || '\"default\"';(currentParent.scopedSlots || (currentParent.scopedSlots = {}))[name] = element;\n } else {\n currentParent.children.push(element);\n element.parent = currentParent;\n }\n }\n if (!unary) {\n currentParent = element;\n stack.push(element);\n } else {\n endPre(element);\n }\n // apply post-transforms\n for (var i$1 = 0; i$1 < postTransforms.length; i$1++) {\n postTransforms[i$1](element, options);\n }\n },\n\n end: function end () {\n // remove trailing whitespace\n var element = stack[stack.length - 1];\n var lastNode = element.children[element.children.length - 1];\n if (lastNode && lastNode.type === 3 && lastNode.text === ' ' && !inPre) {\n element.children.pop();\n }\n // pop stack\n stack.length -= 1;\n currentParent = stack[stack.length - 1];\n endPre(element);\n },\n\n chars: function chars (text) {\n if (!currentParent) {\n if (false) {\n if (text === template) {\n warnOnce(\n 'Component template requires a root element, rather than just text.'\n );\n } else if ((text = text.trim())) {\n warnOnce(\n (\"text \\\"\" + text + \"\\\" outside root element will be ignored.\")\n );\n }\n }\n return\n }\n // IE textarea placeholder bug\n /* istanbul ignore if */\n if (isIE &&\n currentParent.tag === 'textarea' &&\n currentParent.attrsMap.placeholder === text\n ) {\n return\n }\n var children = currentParent.children;\n text = inPre || text.trim()\n ? isTextTag(currentParent) ? text : decodeHTMLCached(text)\n // only preserve whitespace if its not right after a starting tag\n : preserveWhitespace && children.length ? ' ' : '';\n if (text) {\n var expression;\n if (!inVPre && text !== ' ' && (expression = parseText(text, delimiters))) {\n children.push({\n type: 2,\n expression: expression,\n text: text\n });\n } else if (text !== ' ' || !children.length || children[children.length - 1].text !== ' ') {\n children.push({\n type: 3,\n text: text\n });\n }\n }\n },\n comment: function comment (text) {\n currentParent.children.push({\n type: 3,\n text: text,\n isComment: true\n });\n }\n });\n return root\n}\n\nfunction processPre (el) {\n if (getAndRemoveAttr(el, 'v-pre') != null) {\n el.pre = true;\n }\n}\n\nfunction processRawAttrs (el) {\n var l = el.attrsList.length;\n if (l) {\n var attrs = el.attrs = new Array(l);\n for (var i = 0; i < l; i++) {\n attrs[i] = {\n name: el.attrsList[i].name,\n value: JSON.stringify(el.attrsList[i].value)\n };\n }\n } else if (!el.pre) {\n // non root node in pre blocks with no attributes\n el.plain = true;\n }\n}\n\nfunction processElement (element, options) {\n processKey(element);\n\n // determine whether this is a plain element after\n // removing structural attributes\n element.plain = !element.key && !element.attrsList.length;\n\n processRef(element);\n processSlot(element);\n processComponent(element);\n for (var i = 0; i < transforms.length; i++) {\n element = transforms[i](element, options) || element;\n }\n processAttrs(element);\n}\n\nfunction processKey (el) {\n var exp = getBindingAttr(el, 'key');\n if (exp) {\n if (false) {\n warn$2(\"<template> cannot be keyed. Place the key on real elements instead.\");\n }\n el.key = exp;\n }\n}\n\nfunction processRef (el) {\n var ref = getBindingAttr(el, 'ref');\n if (ref) {\n el.ref = ref;\n el.refInFor = checkInFor(el);\n }\n}\n\nfunction processFor (el) {\n var exp;\n if ((exp = getAndRemoveAttr(el, 'v-for'))) {\n var inMatch = exp.match(forAliasRE);\n if (!inMatch) {\n \"production\" !== 'production' && warn$2(\n (\"Invalid v-for expression: \" + exp)\n );\n return\n }\n el.for = inMatch[2].trim();\n var alias = inMatch[1].trim();\n var iteratorMatch = alias.match(forIteratorRE);\n if (iteratorMatch) {\n el.alias = iteratorMatch[1].trim();\n el.iterator1 = iteratorMatch[2].trim();\n if (iteratorMatch[3]) {\n el.iterator2 = iteratorMatch[3].trim();\n }\n } else {\n el.alias = alias;\n }\n }\n}\n\nfunction processIf (el) {\n var exp = getAndRemoveAttr(el, 'v-if');\n if (exp) {\n el.if = exp;\n addIfCondition(el, {\n exp: exp,\n block: el\n });\n } else {\n if (getAndRemoveAttr(el, 'v-else') != null) {\n el.else = true;\n }\n var elseif = getAndRemoveAttr(el, 'v-else-if');\n if (elseif) {\n el.elseif = elseif;\n }\n }\n}\n\nfunction processIfConditions (el, parent) {\n var prev = findPrevElement(parent.children);\n if (prev && prev.if) {\n addIfCondition(prev, {\n exp: el.elseif,\n block: el\n });\n } else if (false) {\n warn$2(\n \"v-\" + (el.elseif ? ('else-if=\"' + el.elseif + '\"') : 'else') + \" \" +\n \"used on element <\" + (el.tag) + \"> without corresponding v-if.\"\n );\n }\n}\n\nfunction findPrevElement (children) {\n var i = children.length;\n while (i--) {\n if (children[i].type === 1) {\n return children[i]\n } else {\n if (false) {\n warn$2(\n \"text \\\"\" + (children[i].text.trim()) + \"\\\" between v-if and v-else(-if) \" +\n \"will be ignored.\"\n );\n }\n children.pop();\n }\n }\n}\n\nfunction addIfCondition (el, condition) {\n if (!el.ifConditions) {\n el.ifConditions = [];\n }\n el.ifConditions.push(condition);\n}\n\nfunction processOnce (el) {\n var once$$1 = getAndRemoveAttr(el, 'v-once');\n if (once$$1 != null) {\n el.once = true;\n }\n}\n\nfunction processSlot (el) {\n if (el.tag === 'slot') {\n el.slotName = getBindingAttr(el, 'name');\n if (false) {\n warn$2(\n \"`key` does not work on <slot> because slots are abstract outlets \" +\n \"and can possibly expand into multiple elements. \" +\n \"Use the key on a wrapping element instead.\"\n );\n }\n } else {\n var slotScope;\n if (el.tag === 'template') {\n slotScope = getAndRemoveAttr(el, 'scope');\n /* istanbul ignore if */\n if (false) {\n warn$2(\n \"the \\\"scope\\\" attribute for scoped slots have been deprecated and \" +\n \"replaced by \\\"slot-scope\\\" since 2.5. The new \\\"slot-scope\\\" attribute \" +\n \"can also be used on plain elements in addition to <template> to \" +\n \"denote scoped slots.\",\n true\n );\n }\n el.slotScope = slotScope || getAndRemoveAttr(el, 'slot-scope');\n } else if ((slotScope = getAndRemoveAttr(el, 'slot-scope'))) {\n el.slotScope = slotScope;\n }\n var slotTarget = getBindingAttr(el, 'slot');\n if (slotTarget) {\n el.slotTarget = slotTarget === '\"\"' ? '\"default\"' : slotTarget;\n // preserve slot as an attribute for native shadow DOM compat\n // only for non-scoped slots.\n if (!el.slotScope) {\n addAttr(el, 'slot', slotTarget);\n }\n }\n }\n}\n\nfunction processComponent (el) {\n var binding;\n if ((binding = getBindingAttr(el, 'is'))) {\n el.component = binding;\n }\n if (getAndRemoveAttr(el, 'inline-template') != null) {\n el.inlineTemplate = true;\n }\n}\n\nfunction processAttrs (el) {\n var list = el.attrsList;\n var i, l, name, rawName, value, modifiers, isProp;\n for (i = 0, l = list.length; i < l; i++) {\n name = rawName = list[i].name;\n value = list[i].value;\n if (dirRE.test(name)) {\n // mark element as dynamic\n el.hasBindings = true;\n // modifiers\n modifiers = parseModifiers(name);\n if (modifiers) {\n name = name.replace(modifierRE, '');\n }\n if (bindRE.test(name)) { // v-bind\n name = name.replace(bindRE, '');\n value = parseFilters(value);\n isProp = false;\n if (modifiers) {\n if (modifiers.prop) {\n isProp = true;\n name = camelize(name);\n if (name === 'innerHtml') { name = 'innerHTML'; }\n }\n if (modifiers.camel) {\n name = camelize(name);\n }\n if (modifiers.sync) {\n addHandler(\n el,\n (\"update:\" + (camelize(name))),\n genAssignmentCode(value, \"$event\")\n );\n }\n }\n if (isProp || (\n !el.component && platformMustUseProp(el.tag, el.attrsMap.type, name)\n )) {\n addProp(el, name, value);\n } else {\n addAttr(el, name, value);\n }\n } else if (onRE.test(name)) { // v-on\n name = name.replace(onRE, '');\n addHandler(el, name, value, modifiers, false, warn$2);\n } else { // normal directives\n name = name.replace(dirRE, '');\n // parse arg\n var argMatch = name.match(argRE);\n var arg = argMatch && argMatch[1];\n if (arg) {\n name = name.slice(0, -(arg.length + 1));\n }\n addDirective(el, name, rawName, value, arg, modifiers);\n if (false) {\n checkForAliasModel(el, value);\n }\n }\n } else {\n // literal attribute\n if (false) {\n var expression = parseText(value, delimiters);\n if (expression) {\n warn$2(\n name + \"=\\\"\" + value + \"\\\": \" +\n 'Interpolation inside attributes has been removed. ' +\n 'Use v-bind or the colon shorthand instead. For example, ' +\n 'instead of <div id=\"{{ val }}\">, use <div :id=\"val\">.'\n );\n }\n }\n addAttr(el, name, JSON.stringify(value));\n }\n }\n}\n\nfunction checkInFor (el) {\n var parent = el;\n while (parent) {\n if (parent.for !== undefined) {\n return true\n }\n parent = parent.parent;\n }\n return false\n}\n\nfunction parseModifiers (name) {\n var match = name.match(modifierRE);\n if (match) {\n var ret = {};\n match.forEach(function (m) { ret[m.slice(1)] = true; });\n return ret\n }\n}\n\nfunction makeAttrsMap (attrs) {\n var map = {};\n for (var i = 0, l = attrs.length; i < l; i++) {\n if (\n false\n ) {\n warn$2('duplicate attribute: ' + attrs[i].name);\n }\n map[attrs[i].name] = attrs[i].value;\n }\n return map\n}\n\n// for script (e.g. type=\"x/template\") or style, do not decode content\nfunction isTextTag (el) {\n return el.tag === 'script' || el.tag === 'style'\n}\n\nfunction isForbiddenTag (el) {\n return (\n el.tag === 'style' ||\n (el.tag === 'script' && (\n !el.attrsMap.type ||\n el.attrsMap.type === 'text/javascript'\n ))\n )\n}\n\nvar ieNSBug = /^xmlns:NS\\d+/;\nvar ieNSPrefix = /^NS\\d+:/;\n\n/* istanbul ignore next */\nfunction guardIESVGBug (attrs) {\n var res = [];\n for (var i = 0; i < attrs.length; i++) {\n var attr = attrs[i];\n if (!ieNSBug.test(attr.name)) {\n attr.name = attr.name.replace(ieNSPrefix, '');\n res.push(attr);\n }\n }\n return res\n}\n\nfunction checkForAliasModel (el, value) {\n var _el = el;\n while (_el) {\n if (_el.for && _el.alias === value) {\n warn$2(\n \"<\" + (el.tag) + \" v-model=\\\"\" + value + \"\\\">: \" +\n \"You are binding v-model directly to a v-for iteration alias. \" +\n \"This will not be able to modify the v-for source array because \" +\n \"writing to the alias is like modifying a function local variable. \" +\n \"Consider using an array of objects and use v-model on an object property instead.\"\n );\n }\n _el = _el.parent;\n }\n}\n\n/* */\n\n/**\n * Expand input[v-model] with dyanmic type bindings into v-if-else chains\n * Turn this:\n * <input v-model=\"data[type]\" :type=\"type\">\n * into this:\n * <input v-if=\"type === 'checkbox'\" type=\"checkbox\" v-model=\"data[type]\">\n * <input v-else-if=\"type === 'radio'\" type=\"radio\" v-model=\"data[type]\">\n * <input v-else :type=\"type\" v-model=\"data[type]\">\n */\n\nfunction preTransformNode (el, options) {\n if (el.tag === 'input') {\n var map = el.attrsMap;\n if (map['v-model'] && (map['v-bind:type'] || map[':type'])) {\n var typeBinding = getBindingAttr(el, 'type');\n var ifCondition = getAndRemoveAttr(el, 'v-if', true);\n var ifConditionExtra = ifCondition ? (\"&&(\" + ifCondition + \")\") : \"\";\n // 1. checkbox\n var branch0 = cloneASTElement(el);\n // process for on the main node\n processFor(branch0);\n addRawAttr(branch0, 'type', 'checkbox');\n processElement(branch0, options);\n branch0.processed = true; // prevent it from double-processed\n branch0.if = \"(\" + typeBinding + \")==='checkbox'\" + ifConditionExtra;\n addIfCondition(branch0, {\n exp: branch0.if,\n block: branch0\n });\n // 2. add radio else-if condition\n var branch1 = cloneASTElement(el);\n getAndRemoveAttr(branch1, 'v-for', true);\n addRawAttr(branch1, 'type', 'radio');\n processElement(branch1, options);\n addIfCondition(branch0, {\n exp: \"(\" + typeBinding + \")==='radio'\" + ifConditionExtra,\n block: branch1\n });\n // 3. other\n var branch2 = cloneASTElement(el);\n getAndRemoveAttr(branch2, 'v-for', true);\n addRawAttr(branch2, ':type', typeBinding);\n processElement(branch2, options);\n addIfCondition(branch0, {\n exp: ifCondition,\n block: branch2\n });\n return branch0\n }\n }\n}\n\nfunction cloneASTElement (el) {\n return createASTElement(el.tag, el.attrsList.slice(), el.parent)\n}\n\nfunction addRawAttr (el, name, value) {\n el.attrsMap[name] = value;\n el.attrsList.push({ name: name, value: value });\n}\n\nvar model$2 = {\n preTransformNode: preTransformNode\n};\n\nvar modules$1 = [\n klass$1,\n style$1,\n model$2\n];\n\n/* */\n\nfunction text (el, dir) {\n if (dir.value) {\n addProp(el, 'textContent', (\"_s(\" + (dir.value) + \")\"));\n }\n}\n\n/* */\n\nfunction html (el, dir) {\n if (dir.value) {\n addProp(el, 'innerHTML', (\"_s(\" + (dir.value) + \")\"));\n }\n}\n\nvar directives$1 = {\n model: model,\n text: text,\n html: html\n};\n\n/* */\n\nvar baseOptions = {\n expectHTML: true,\n modules: modules$1,\n directives: directives$1,\n isPreTag: isPreTag,\n isUnaryTag: isUnaryTag,\n mustUseProp: mustUseProp,\n canBeLeftOpenTag: canBeLeftOpenTag,\n isReservedTag: isReservedTag,\n getTagNamespace: getTagNamespace,\n staticKeys: genStaticKeys(modules$1)\n};\n\n/* */\n\nvar isStaticKey;\nvar isPlatformReservedTag;\n\nvar genStaticKeysCached = cached(genStaticKeys$1);\n\n/**\n * Goal of the optimizer: walk the generated template AST tree\n * and detect sub-trees that are purely static, i.e. parts of\n * the DOM that never needs to change.\n *\n * Once we detect these sub-trees, we can:\n *\n * 1. Hoist them into constants, so that we no longer need to\n * create fresh nodes for them on each re-render;\n * 2. Completely skip them in the patching process.\n */\nfunction optimize (root, options) {\n if (!root) { return }\n isStaticKey = genStaticKeysCached(options.staticKeys || '');\n isPlatformReservedTag = options.isReservedTag || no;\n // first pass: mark all non-static nodes.\n markStatic$1(root);\n // second pass: mark static roots.\n markStaticRoots(root, false);\n}\n\nfunction genStaticKeys$1 (keys) {\n return makeMap(\n 'type,tag,attrsList,attrsMap,plain,parent,children,attrs' +\n (keys ? ',' + keys : '')\n )\n}\n\nfunction markStatic$1 (node) {\n node.static = isStatic(node);\n if (node.type === 1) {\n // do not make component slot content static. this avoids\n // 1. components not able to mutate slot nodes\n // 2. static slot content fails for hot-reloading\n if (\n !isPlatformReservedTag(node.tag) &&\n node.tag !== 'slot' &&\n node.attrsMap['inline-template'] == null\n ) {\n return\n }\n for (var i = 0, l = node.children.length; i < l; i++) {\n var child = node.children[i];\n markStatic$1(child);\n if (!child.static) {\n node.static = false;\n }\n }\n if (node.ifConditions) {\n for (var i$1 = 1, l$1 = node.ifConditions.length; i$1 < l$1; i$1++) {\n var block = node.ifConditions[i$1].block;\n markStatic$1(block);\n if (!block.static) {\n node.static = false;\n }\n }\n }\n }\n}\n\nfunction markStaticRoots (node, isInFor) {\n if (node.type === 1) {\n if (node.static || node.once) {\n node.staticInFor = isInFor;\n }\n // For a node to qualify as a static root, it should have children that\n // are not just static text. Otherwise the cost of hoisting out will\n // outweigh the benefits and it's better off to just always render it fresh.\n if (node.static && node.children.length && !(\n node.children.length === 1 &&\n node.children[0].type === 3\n )) {\n node.staticRoot = true;\n return\n } else {\n node.staticRoot = false;\n }\n if (node.children) {\n for (var i = 0, l = node.children.length; i < l; i++) {\n markStaticRoots(node.children[i], isInFor || !!node.for);\n }\n }\n if (node.ifConditions) {\n for (var i$1 = 1, l$1 = node.ifConditions.length; i$1 < l$1; i$1++) {\n markStaticRoots(node.ifConditions[i$1].block, isInFor);\n }\n }\n }\n}\n\nfunction isStatic (node) {\n if (node.type === 2) { // expression\n return false\n }\n if (node.type === 3) { // text\n return true\n }\n return !!(node.pre || (\n !node.hasBindings && // no dynamic bindings\n !node.if && !node.for && // not v-if or v-for or v-else\n !isBuiltInTag(node.tag) && // not a built-in\n isPlatformReservedTag(node.tag) && // not a component\n !isDirectChildOfTemplateFor(node) &&\n Object.keys(node).every(isStaticKey)\n ))\n}\n\nfunction isDirectChildOfTemplateFor (node) {\n while (node.parent) {\n node = node.parent;\n if (node.tag !== 'template') {\n return false\n }\n if (node.for) {\n return true\n }\n }\n return false\n}\n\n/* */\n\nvar fnExpRE = /^\\s*([\\w$_]+|\\([^)]*?\\))\\s*=>|^function\\s*\\(/;\nvar simplePathRE = /^\\s*[A-Za-z_$][\\w$]*(?:\\.[A-Za-z_$][\\w$]*|\\['.*?']|\\[\".*?\"]|\\[\\d+]|\\[[A-Za-z_$][\\w$]*])*\\s*$/;\n\n// keyCode aliases\nvar keyCodes = {\n esc: 27,\n tab: 9,\n enter: 13,\n space: 32,\n up: 38,\n left: 37,\n right: 39,\n down: 40,\n 'delete': [8, 46]\n};\n\n// #4868: modifiers that prevent the execution of the listener\n// need to explicitly return null so that we can determine whether to remove\n// the listener for .once\nvar genGuard = function (condition) { return (\"if(\" + condition + \")return null;\"); };\n\nvar modifierCode = {\n stop: '$event.stopPropagation();',\n prevent: '$event.preventDefault();',\n self: genGuard(\"$event.target !== $event.currentTarget\"),\n ctrl: genGuard(\"!$event.ctrlKey\"),\n shift: genGuard(\"!$event.shiftKey\"),\n alt: genGuard(\"!$event.altKey\"),\n meta: genGuard(\"!$event.metaKey\"),\n left: genGuard(\"'button' in $event && $event.button !== 0\"),\n middle: genGuard(\"'button' in $event && $event.button !== 1\"),\n right: genGuard(\"'button' in $event && $event.button !== 2\")\n};\n\nfunction genHandlers (\n events,\n isNative,\n warn\n) {\n var res = isNative ? 'nativeOn:{' : 'on:{';\n for (var name in events) {\n var handler = events[name];\n // #5330: warn click.right, since right clicks do not actually fire click events.\n if (false\n ) {\n warn(\n \"Use \\\"contextmenu\\\" instead of \\\"click.right\\\" since right clicks \" +\n \"do not actually fire \\\"click\\\" events.\"\n );\n }\n res += \"\\\"\" + name + \"\\\":\" + (genHandler(name, handler)) + \",\";\n }\n return res.slice(0, -1) + '}'\n}\n\nfunction genHandler (\n name,\n handler\n) {\n if (!handler) {\n return 'function(){}'\n }\n\n if (Array.isArray(handler)) {\n return (\"[\" + (handler.map(function (handler) { return genHandler(name, handler); }).join(',')) + \"]\")\n }\n\n var isMethodPath = simplePathRE.test(handler.value);\n var isFunctionExpression = fnExpRE.test(handler.value);\n\n if (!handler.modifiers) {\n return isMethodPath || isFunctionExpression\n ? handler.value\n : (\"function($event){\" + (handler.value) + \"}\") // inline statement\n } else {\n var code = '';\n var genModifierCode = '';\n var keys = [];\n for (var key in handler.modifiers) {\n if (modifierCode[key]) {\n genModifierCode += modifierCode[key];\n // left/right\n if (keyCodes[key]) {\n keys.push(key);\n }\n } else if (key === 'exact') {\n var modifiers = (handler.modifiers);\n genModifierCode += genGuard(\n ['ctrl', 'shift', 'alt', 'meta']\n .filter(function (keyModifier) { return !modifiers[keyModifier]; })\n .map(function (keyModifier) { return (\"$event.\" + keyModifier + \"Key\"); })\n .join('||')\n );\n } else {\n keys.push(key);\n }\n }\n if (keys.length) {\n code += genKeyFilter(keys);\n }\n // Make sure modifiers like prevent and stop get executed after key filtering\n if (genModifierCode) {\n code += genModifierCode;\n }\n var handlerCode = isMethodPath\n ? handler.value + '($event)'\n : isFunctionExpression\n ? (\"(\" + (handler.value) + \")($event)\")\n : handler.value;\n return (\"function($event){\" + code + handlerCode + \"}\")\n }\n}\n\nfunction genKeyFilter (keys) {\n return (\"if(!('button' in $event)&&\" + (keys.map(genFilterCode).join('&&')) + \")return null;\")\n}\n\nfunction genFilterCode (key) {\n var keyVal = parseInt(key, 10);\n if (keyVal) {\n return (\"$event.keyCode!==\" + keyVal)\n }\n var code = keyCodes[key];\n return (\n \"_k($event.keyCode,\" +\n (JSON.stringify(key)) + \",\" +\n (JSON.stringify(code)) + \",\" +\n \"$event.key)\"\n )\n}\n\n/* */\n\nfunction on (el, dir) {\n if (false) {\n warn(\"v-on without argument does not support modifiers.\");\n }\n el.wrapListeners = function (code) { return (\"_g(\" + code + \",\" + (dir.value) + \")\"); };\n}\n\n/* */\n\nfunction bind$1 (el, dir) {\n el.wrapData = function (code) {\n return (\"_b(\" + code + \",'\" + (el.tag) + \"',\" + (dir.value) + \",\" + (dir.modifiers && dir.modifiers.prop ? 'true' : 'false') + (dir.modifiers && dir.modifiers.sync ? ',true' : '') + \")\")\n };\n}\n\n/* */\n\nvar baseDirectives = {\n on: on,\n bind: bind$1,\n cloak: noop\n};\n\n/* */\n\nvar CodegenState = function CodegenState (options) {\n this.options = options;\n this.warn = options.warn || baseWarn;\n this.transforms = pluckModuleFunction(options.modules, 'transformCode');\n this.dataGenFns = pluckModuleFunction(options.modules, 'genData');\n this.directives = extend(extend({}, baseDirectives), options.directives);\n var isReservedTag = options.isReservedTag || no;\n this.maybeComponent = function (el) { return !isReservedTag(el.tag); };\n this.onceId = 0;\n this.staticRenderFns = [];\n};\n\n\n\nfunction generate (\n ast,\n options\n) {\n var state = new CodegenState(options);\n var code = ast ? genElement(ast, state) : '_c(\"div\")';\n return {\n render: (\"with(this){return \" + code + \"}\"),\n staticRenderFns: state.staticRenderFns\n }\n}\n\nfunction genElement (el, state) {\n if (el.staticRoot && !el.staticProcessed) {\n return genStatic(el, state)\n } else if (el.once && !el.onceProcessed) {\n return genOnce(el, state)\n } else if (el.for && !el.forProcessed) {\n return genFor(el, state)\n } else if (el.if && !el.ifProcessed) {\n return genIf(el, state)\n } else if (el.tag === 'template' && !el.slotTarget) {\n return genChildren(el, state) || 'void 0'\n } else if (el.tag === 'slot') {\n return genSlot(el, state)\n } else {\n // component or element\n var code;\n if (el.component) {\n code = genComponent(el.component, el, state);\n } else {\n var data = el.plain ? undefined : genData$2(el, state);\n\n var children = el.inlineTemplate ? null : genChildren(el, state, true);\n code = \"_c('\" + (el.tag) + \"'\" + (data ? (\",\" + data) : '') + (children ? (\",\" + children) : '') + \")\";\n }\n // module transforms\n for (var i = 0; i < state.transforms.length; i++) {\n code = state.transforms[i](el, code);\n }\n return code\n }\n}\n\n// hoist static sub-trees out\nfunction genStatic (el, state) {\n el.staticProcessed = true;\n state.staticRenderFns.push((\"with(this){return \" + (genElement(el, state)) + \"}\"));\n return (\"_m(\" + (state.staticRenderFns.length - 1) + (el.staticInFor ? ',true' : '') + \")\")\n}\n\n// v-once\nfunction genOnce (el, state) {\n el.onceProcessed = true;\n if (el.if && !el.ifProcessed) {\n return genIf(el, state)\n } else if (el.staticInFor) {\n var key = '';\n var parent = el.parent;\n while (parent) {\n if (parent.for) {\n key = parent.key;\n break\n }\n parent = parent.parent;\n }\n if (!key) {\n \"production\" !== 'production' && state.warn(\n \"v-once can only be used inside v-for that is keyed. \"\n );\n return genElement(el, state)\n }\n return (\"_o(\" + (genElement(el, state)) + \",\" + (state.onceId++) + \",\" + key + \")\")\n } else {\n return genStatic(el, state)\n }\n}\n\nfunction genIf (\n el,\n state,\n altGen,\n altEmpty\n) {\n el.ifProcessed = true; // avoid recursion\n return genIfConditions(el.ifConditions.slice(), state, altGen, altEmpty)\n}\n\nfunction genIfConditions (\n conditions,\n state,\n altGen,\n altEmpty\n) {\n if (!conditions.length) {\n return altEmpty || '_e()'\n }\n\n var condition = conditions.shift();\n if (condition.exp) {\n return (\"(\" + (condition.exp) + \")?\" + (genTernaryExp(condition.block)) + \":\" + (genIfConditions(conditions, state, altGen, altEmpty)))\n } else {\n return (\"\" + (genTernaryExp(condition.block)))\n }\n\n // v-if with v-once should generate code like (a)?_m(0):_m(1)\n function genTernaryExp (el) {\n return altGen\n ? altGen(el, state)\n : el.once\n ? genOnce(el, state)\n : genElement(el, state)\n }\n}\n\nfunction genFor (\n el,\n state,\n altGen,\n altHelper\n) {\n var exp = el.for;\n var alias = el.alias;\n var iterator1 = el.iterator1 ? (\",\" + (el.iterator1)) : '';\n var iterator2 = el.iterator2 ? (\",\" + (el.iterator2)) : '';\n\n if (false\n ) {\n state.warn(\n \"<\" + (el.tag) + \" v-for=\\\"\" + alias + \" in \" + exp + \"\\\">: component lists rendered with \" +\n \"v-for should have explicit keys. \" +\n \"See https://vuejs.org/guide/list.html#key for more info.\",\n true /* tip */\n );\n }\n\n el.forProcessed = true; // avoid recursion\n return (altHelper || '_l') + \"((\" + exp + \"),\" +\n \"function(\" + alias + iterator1 + iterator2 + \"){\" +\n \"return \" + ((altGen || genElement)(el, state)) +\n '})'\n}\n\nfunction genData$2 (el, state) {\n var data = '{';\n\n // directives first.\n // directives may mutate the el's other properties before they are generated.\n var dirs = genDirectives(el, state);\n if (dirs) { data += dirs + ','; }\n\n // key\n if (el.key) {\n data += \"key:\" + (el.key) + \",\";\n }\n // ref\n if (el.ref) {\n data += \"ref:\" + (el.ref) + \",\";\n }\n if (el.refInFor) {\n data += \"refInFor:true,\";\n }\n // pre\n if (el.pre) {\n data += \"pre:true,\";\n }\n // record original tag name for components using \"is\" attribute\n if (el.component) {\n data += \"tag:\\\"\" + (el.tag) + \"\\\",\";\n }\n // module data generation functions\n for (var i = 0; i < state.dataGenFns.length; i++) {\n data += state.dataGenFns[i](el);\n }\n // attributes\n if (el.attrs) {\n data += \"attrs:{\" + (genProps(el.attrs)) + \"},\";\n }\n // DOM props\n if (el.props) {\n data += \"domProps:{\" + (genProps(el.props)) + \"},\";\n }\n // event handlers\n if (el.events) {\n data += (genHandlers(el.events, false, state.warn)) + \",\";\n }\n if (el.nativeEvents) {\n data += (genHandlers(el.nativeEvents, true, state.warn)) + \",\";\n }\n // slot target\n // only for non-scoped slots\n if (el.slotTarget && !el.slotScope) {\n data += \"slot:\" + (el.slotTarget) + \",\";\n }\n // scoped slots\n if (el.scopedSlots) {\n data += (genScopedSlots(el.scopedSlots, state)) + \",\";\n }\n // component v-model\n if (el.model) {\n data += \"model:{value:\" + (el.model.value) + \",callback:\" + (el.model.callback) + \",expression:\" + (el.model.expression) + \"},\";\n }\n // inline-template\n if (el.inlineTemplate) {\n var inlineTemplate = genInlineTemplate(el, state);\n if (inlineTemplate) {\n data += inlineTemplate + \",\";\n }\n }\n data = data.replace(/,$/, '') + '}';\n // v-bind data wrap\n if (el.wrapData) {\n data = el.wrapData(data);\n }\n // v-on data wrap\n if (el.wrapListeners) {\n data = el.wrapListeners(data);\n }\n return data\n}\n\nfunction genDirectives (el, state) {\n var dirs = el.directives;\n if (!dirs) { return }\n var res = 'directives:[';\n var hasRuntime = false;\n var i, l, dir, needRuntime;\n for (i = 0, l = dirs.length; i < l; i++) {\n dir = dirs[i];\n needRuntime = true;\n var gen = state.directives[dir.name];\n if (gen) {\n // compile-time directive that manipulates AST.\n // returns true if it also needs a runtime counterpart.\n needRuntime = !!gen(el, dir, state.warn);\n }\n if (needRuntime) {\n hasRuntime = true;\n res += \"{name:\\\"\" + (dir.name) + \"\\\",rawName:\\\"\" + (dir.rawName) + \"\\\"\" + (dir.value ? (\",value:(\" + (dir.value) + \"),expression:\" + (JSON.stringify(dir.value))) : '') + (dir.arg ? (\",arg:\\\"\" + (dir.arg) + \"\\\"\") : '') + (dir.modifiers ? (\",modifiers:\" + (JSON.stringify(dir.modifiers))) : '') + \"},\";\n }\n }\n if (hasRuntime) {\n return res.slice(0, -1) + ']'\n }\n}\n\nfunction genInlineTemplate (el, state) {\n var ast = el.children[0];\n if (false) {\n state.warn('Inline-template components must have exactly one child element.');\n }\n if (ast.type === 1) {\n var inlineRenderFns = generate(ast, state.options);\n return (\"inlineTemplate:{render:function(){\" + (inlineRenderFns.render) + \"},staticRenderFns:[\" + (inlineRenderFns.staticRenderFns.map(function (code) { return (\"function(){\" + code + \"}\"); }).join(',')) + \"]}\")\n }\n}\n\nfunction genScopedSlots (\n slots,\n state\n) {\n return (\"scopedSlots:_u([\" + (Object.keys(slots).map(function (key) {\n return genScopedSlot(key, slots[key], state)\n }).join(',')) + \"])\")\n}\n\nfunction genScopedSlot (\n key,\n el,\n state\n) {\n if (el.for && !el.forProcessed) {\n return genForScopedSlot(key, el, state)\n }\n var fn = \"function(\" + (String(el.slotScope)) + \"){\" +\n \"return \" + (el.tag === 'template'\n ? el.if\n ? ((el.if) + \"?\" + (genChildren(el, state) || 'undefined') + \":undefined\")\n : genChildren(el, state) || 'undefined'\n : genElement(el, state)) + \"}\";\n return (\"{key:\" + key + \",fn:\" + fn + \"}\")\n}\n\nfunction genForScopedSlot (\n key,\n el,\n state\n) {\n var exp = el.for;\n var alias = el.alias;\n var iterator1 = el.iterator1 ? (\",\" + (el.iterator1)) : '';\n var iterator2 = el.iterator2 ? (\",\" + (el.iterator2)) : '';\n el.forProcessed = true; // avoid recursion\n return \"_l((\" + exp + \"),\" +\n \"function(\" + alias + iterator1 + iterator2 + \"){\" +\n \"return \" + (genScopedSlot(key, el, state)) +\n '})'\n}\n\nfunction genChildren (\n el,\n state,\n checkSkip,\n altGenElement,\n altGenNode\n) {\n var children = el.children;\n if (children.length) {\n var el$1 = children[0];\n // optimize single v-for\n if (children.length === 1 &&\n el$1.for &&\n el$1.tag !== 'template' &&\n el$1.tag !== 'slot'\n ) {\n return (altGenElement || genElement)(el$1, state)\n }\n var normalizationType = checkSkip\n ? getNormalizationType(children, state.maybeComponent)\n : 0;\n var gen = altGenNode || genNode;\n return (\"[\" + (children.map(function (c) { return gen(c, state); }).join(',')) + \"]\" + (normalizationType ? (\",\" + normalizationType) : ''))\n }\n}\n\n// determine the normalization needed for the children array.\n// 0: no normalization needed\n// 1: simple normalization needed (possible 1-level deep nested array)\n// 2: full normalization needed\nfunction getNormalizationType (\n children,\n maybeComponent\n) {\n var res = 0;\n for (var i = 0; i < children.length; i++) {\n var el = children[i];\n if (el.type !== 1) {\n continue\n }\n if (needsNormalization(el) ||\n (el.ifConditions && el.ifConditions.some(function (c) { return needsNormalization(c.block); }))) {\n res = 2;\n break\n }\n if (maybeComponent(el) ||\n (el.ifConditions && el.ifConditions.some(function (c) { return maybeComponent(c.block); }))) {\n res = 1;\n }\n }\n return res\n}\n\nfunction needsNormalization (el) {\n return el.for !== undefined || el.tag === 'template' || el.tag === 'slot'\n}\n\nfunction genNode (node, state) {\n if (node.type === 1) {\n return genElement(node, state)\n } if (node.type === 3 && node.isComment) {\n return genComment(node)\n } else {\n return genText(node)\n }\n}\n\nfunction genText (text) {\n return (\"_v(\" + (text.type === 2\n ? text.expression // no need for () because already wrapped in _s()\n : transformSpecialNewlines(JSON.stringify(text.text))) + \")\")\n}\n\nfunction genComment (comment) {\n return (\"_e(\" + (JSON.stringify(comment.text)) + \")\")\n}\n\nfunction genSlot (el, state) {\n var slotName = el.slotName || '\"default\"';\n var children = genChildren(el, state);\n var res = \"_t(\" + slotName + (children ? (\",\" + children) : '');\n var attrs = el.attrs && (\"{\" + (el.attrs.map(function (a) { return ((camelize(a.name)) + \":\" + (a.value)); }).join(',')) + \"}\");\n var bind$$1 = el.attrsMap['v-bind'];\n if ((attrs || bind$$1) && !children) {\n res += \",null\";\n }\n if (attrs) {\n res += \",\" + attrs;\n }\n if (bind$$1) {\n res += (attrs ? '' : ',null') + \",\" + bind$$1;\n }\n return res + ')'\n}\n\n// componentName is el.component, take it as argument to shun flow's pessimistic refinement\nfunction genComponent (\n componentName,\n el,\n state\n) {\n var children = el.inlineTemplate ? null : genChildren(el, state, true);\n return (\"_c(\" + componentName + \",\" + (genData$2(el, state)) + (children ? (\",\" + children) : '') + \")\")\n}\n\nfunction genProps (props) {\n var res = '';\n for (var i = 0; i < props.length; i++) {\n var prop = props[i];\n res += \"\\\"\" + (prop.name) + \"\\\":\" + (transformSpecialNewlines(prop.value)) + \",\";\n }\n return res.slice(0, -1)\n}\n\n// #3895, #4268\nfunction transformSpecialNewlines (text) {\n return text\n .replace(/\\u2028/g, '\\\\u2028')\n .replace(/\\u2029/g, '\\\\u2029')\n}\n\n/* */\n\n// these keywords should not appear inside expressions, but operators like\n// typeof, instanceof and in are allowed\nvar prohibitedKeywordRE = new RegExp('\\\\b' + (\n 'do,if,for,let,new,try,var,case,else,with,await,break,catch,class,const,' +\n 'super,throw,while,yield,delete,export,import,return,switch,default,' +\n 'extends,finally,continue,debugger,function,arguments'\n).split(',').join('\\\\b|\\\\b') + '\\\\b');\n\n// these unary operators should not be used as property/method names\nvar unaryOperatorsRE = new RegExp('\\\\b' + (\n 'delete,typeof,void'\n).split(',').join('\\\\s*\\\\([^\\\\)]*\\\\)|\\\\b') + '\\\\s*\\\\([^\\\\)]*\\\\)');\n\n// check valid identifier for v-for\nvar identRE = /[A-Za-z_$][\\w$]*/;\n\n// strip strings in expressions\nvar stripStringRE = /'(?:[^'\\\\]|\\\\.)*'|\"(?:[^\"\\\\]|\\\\.)*\"|`(?:[^`\\\\]|\\\\.)*\\$\\{|\\}(?:[^`\\\\]|\\\\.)*`|`(?:[^`\\\\]|\\\\.)*`/g;\n\n// detect problematic expressions in a template\nfunction detectErrors (ast) {\n var errors = [];\n if (ast) {\n checkNode(ast, errors);\n }\n return errors\n}\n\nfunction checkNode (node, errors) {\n if (node.type === 1) {\n for (var name in node.attrsMap) {\n if (dirRE.test(name)) {\n var value = node.attrsMap[name];\n if (value) {\n if (name === 'v-for') {\n checkFor(node, (\"v-for=\\\"\" + value + \"\\\"\"), errors);\n } else if (onRE.test(name)) {\n checkEvent(value, (name + \"=\\\"\" + value + \"\\\"\"), errors);\n } else {\n checkExpression(value, (name + \"=\\\"\" + value + \"\\\"\"), errors);\n }\n }\n }\n }\n if (node.children) {\n for (var i = 0; i < node.children.length; i++) {\n checkNode(node.children[i], errors);\n }\n }\n } else if (node.type === 2) {\n checkExpression(node.expression, node.text, errors);\n }\n}\n\nfunction checkEvent (exp, text, errors) {\n var stipped = exp.replace(stripStringRE, '');\n var keywordMatch = stipped.match(unaryOperatorsRE);\n if (keywordMatch && stipped.charAt(keywordMatch.index - 1) !== '$') {\n errors.push(\n \"avoid using JavaScript unary operator as property name: \" +\n \"\\\"\" + (keywordMatch[0]) + \"\\\" in expression \" + (text.trim())\n );\n }\n checkExpression(exp, text, errors);\n}\n\nfunction checkFor (node, text, errors) {\n checkExpression(node.for || '', text, errors);\n checkIdentifier(node.alias, 'v-for alias', text, errors);\n checkIdentifier(node.iterator1, 'v-for iterator', text, errors);\n checkIdentifier(node.iterator2, 'v-for iterator', text, errors);\n}\n\nfunction checkIdentifier (ident, type, text, errors) {\n if (typeof ident === 'string' && !identRE.test(ident)) {\n errors.push((\"invalid \" + type + \" \\\"\" + ident + \"\\\" in expression: \" + (text.trim())));\n }\n}\n\nfunction checkExpression (exp, text, errors) {\n try {\n new Function((\"return \" + exp));\n } catch (e) {\n var keywordMatch = exp.replace(stripStringRE, '').match(prohibitedKeywordRE);\n if (keywordMatch) {\n errors.push(\n \"avoid using JavaScript keyword as property name: \" +\n \"\\\"\" + (keywordMatch[0]) + \"\\\"\\n Raw expression: \" + (text.trim())\n );\n } else {\n errors.push(\n \"invalid expression: \" + (e.message) + \" in\\n\\n\" +\n \" \" + exp + \"\\n\\n\" +\n \" Raw expression: \" + (text.trim()) + \"\\n\"\n );\n }\n }\n}\n\n/* */\n\nfunction createFunction (code, errors) {\n try {\n return new Function(code)\n } catch (err) {\n errors.push({ err: err, code: code });\n return noop\n }\n}\n\nfunction createCompileToFunctionFn (compile) {\n var cache = Object.create(null);\n\n return function compileToFunctions (\n template,\n options,\n vm\n ) {\n options = extend({}, options);\n var warn$$1 = options.warn || warn;\n delete options.warn;\n\n /* istanbul ignore if */\n if (false) {\n // detect possible CSP restriction\n try {\n new Function('return 1');\n } catch (e) {\n if (e.toString().match(/unsafe-eval|CSP/)) {\n warn$$1(\n 'It seems you are using the standalone build of Vue.js in an ' +\n 'environment with Content Security Policy that prohibits unsafe-eval. ' +\n 'The template compiler cannot work in this environment. Consider ' +\n 'relaxing the policy to allow unsafe-eval or pre-compiling your ' +\n 'templates into render functions.'\n );\n }\n }\n }\n\n // check cache\n var key = options.delimiters\n ? String(options.delimiters) + template\n : template;\n if (cache[key]) {\n return cache[key]\n }\n\n // compile\n var compiled = compile(template, options);\n\n // check compilation errors/tips\n if (false) {\n if (compiled.errors && compiled.errors.length) {\n warn$$1(\n \"Error compiling template:\\n\\n\" + template + \"\\n\\n\" +\n compiled.errors.map(function (e) { return (\"- \" + e); }).join('\\n') + '\\n',\n vm\n );\n }\n if (compiled.tips && compiled.tips.length) {\n compiled.tips.forEach(function (msg) { return tip(msg, vm); });\n }\n }\n\n // turn code into functions\n var res = {};\n var fnGenErrors = [];\n res.render = createFunction(compiled.render, fnGenErrors);\n res.staticRenderFns = compiled.staticRenderFns.map(function (code) {\n return createFunction(code, fnGenErrors)\n });\n\n // check function generation errors.\n // this should only happen if there is a bug in the compiler itself.\n // mostly for codegen development use\n /* istanbul ignore if */\n if (false) {\n if ((!compiled.errors || !compiled.errors.length) && fnGenErrors.length) {\n warn$$1(\n \"Failed to generate render function:\\n\\n\" +\n fnGenErrors.map(function (ref) {\n var err = ref.err;\n var code = ref.code;\n\n return ((err.toString()) + \" in\\n\\n\" + code + \"\\n\");\n }).join('\\n'),\n vm\n );\n }\n }\n\n return (cache[key] = res)\n }\n}\n\n/* */\n\nfunction createCompilerCreator (baseCompile) {\n return function createCompiler (baseOptions) {\n function compile (\n template,\n options\n ) {\n var finalOptions = Object.create(baseOptions);\n var errors = [];\n var tips = [];\n finalOptions.warn = function (msg, tip) {\n (tip ? tips : errors).push(msg);\n };\n\n if (options) {\n // merge custom modules\n if (options.modules) {\n finalOptions.modules =\n (baseOptions.modules || []).concat(options.modules);\n }\n // merge custom directives\n if (options.directives) {\n finalOptions.directives = extend(\n Object.create(baseOptions.directives),\n options.directives\n );\n }\n // copy other options\n for (var key in options) {\n if (key !== 'modules' && key !== 'directives') {\n finalOptions[key] = options[key];\n }\n }\n }\n\n var compiled = baseCompile(template, finalOptions);\n if (false) {\n errors.push.apply(errors, detectErrors(compiled.ast));\n }\n compiled.errors = errors;\n compiled.tips = tips;\n return compiled\n }\n\n return {\n compile: compile,\n compileToFunctions: createCompileToFunctionFn(compile)\n }\n }\n}\n\n/* */\n\n// `createCompilerCreator` allows creating compilers that use alternative\n// parser/optimizer/codegen, e.g the SSR optimizing compiler.\n// Here we just export a default compiler using the default parts.\nvar createCompiler = createCompilerCreator(function baseCompile (\n template,\n options\n) {\n var ast = parse(template.trim(), options);\n optimize(ast, options);\n var code = generate(ast, options);\n return {\n ast: ast,\n render: code.render,\n staticRenderFns: code.staticRenderFns\n }\n});\n\n/* */\n\nvar ref$1 = createCompiler(baseOptions);\nvar compileToFunctions = ref$1.compileToFunctions;\n\n/* */\n\nvar idToTemplate = cached(function (id) {\n var el = query(id);\n return el && el.innerHTML\n});\n\nvar mount = Vue$3.prototype.$mount;\nVue$3.prototype.$mount = function (\n el,\n hydrating\n) {\n el = el && query(el);\n\n /* istanbul ignore if */\n if (el === document.body || el === document.documentElement) {\n \"production\" !== 'production' && warn(\n \"Do not mount Vue to <html> or <body> - mount to normal elements instead.\"\n );\n return this\n }\n\n var options = this.$options;\n // resolve template/el and convert to render function\n if (!options.render) {\n var template = options.template;\n if (template) {\n if (typeof template === 'string') {\n if (template.charAt(0) === '#') {\n template = idToTemplate(template);\n /* istanbul ignore if */\n if (false) {\n warn(\n (\"Template element not found or is empty: \" + (options.template)),\n this\n );\n }\n }\n } else if (template.nodeType) {\n template = template.innerHTML;\n } else {\n if (false) {\n warn('invalid template option:' + template, this);\n }\n return this\n }\n } else if (el) {\n template = getOuterHTML(el);\n }\n if (template) {\n /* istanbul ignore if */\n if (false) {\n mark('compile');\n }\n\n var ref = compileToFunctions(template, {\n shouldDecodeNewlines: shouldDecodeNewlines,\n delimiters: options.delimiters,\n comments: options.comments\n }, this);\n var render = ref.render;\n var staticRenderFns = ref.staticRenderFns;\n options.render = render;\n options.staticRenderFns = staticRenderFns;\n\n /* istanbul ignore if */\n if (false) {\n mark('compile end');\n measure((\"vue \" + (this._name) + \" compile\"), 'compile', 'compile end');\n }\n }\n }\n return mount.call(this, el, hydrating)\n};\n\n/**\n * Get outerHTML of elements, taking care\n * of SVG elements in IE as well.\n */\nfunction getOuterHTML (el) {\n if (el.outerHTML) {\n return el.outerHTML\n } else {\n var container = document.createElement('div');\n container.appendChild(el.cloneNode(true));\n return container.innerHTML\n }\n}\n\nVue$3.compile = compileToFunctions;\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Vue$3);\n\n/* WEBPACK VAR INJECTION */}.call(__webpack_exports__, __webpack_require__(0), __webpack_require__(4).setImmediate))\n\n/***/ }),\n/* 4 */\n/***/ (function(module, exports, __webpack_require__) {\n\nvar apply = Function.prototype.apply;\n\n// DOM APIs, for completeness\n\nexports.setTimeout = function() {\n return new Timeout(apply.call(setTimeout, window, arguments), clearTimeout);\n};\nexports.setInterval = function() {\n return new Timeout(apply.call(setInterval, window, arguments), clearInterval);\n};\nexports.clearTimeout =\nexports.clearInterval = function(timeout) {\n if (timeout) {\n timeout.close();\n }\n};\n\nfunction Timeout(id, clearFn) {\n this._id = id;\n this._clearFn = clearFn;\n}\nTimeout.prototype.unref = Timeout.prototype.ref = function() {};\nTimeout.prototype.close = function() {\n this._clearFn.call(window, this._id);\n};\n\n// Does not start the time, just sets up the members needed.\nexports.enroll = function(item, msecs) {\n clearTimeout(item._idleTimeoutId);\n item._idleTimeout = msecs;\n};\n\nexports.unenroll = function(item) {\n clearTimeout(item._idleTimeoutId);\n item._idleTimeout = -1;\n};\n\nexports._unrefActive = exports.active = function(item) {\n clearTimeout(item._idleTimeoutId);\n\n var msecs = item._idleTimeout;\n if (msecs >= 0) {\n item._idleTimeoutId = setTimeout(function onTimeout() {\n if (item._onTimeout)\n item._onTimeout();\n }, msecs);\n }\n};\n\n// setimmediate attaches itself to the global object\n__webpack_require__(5);\nexports.setImmediate = setImmediate;\nexports.clearImmediate = clearImmediate;\n\n\n/***/ }),\n/* 5 */\n/***/ (function(module, exports, __webpack_require__) {\n\n/* WEBPACK VAR INJECTION */(function(global, process) {(function (global, undefined) {\n \"use strict\";\n\n if (global.setImmediate) {\n return;\n }\n\n var nextHandle = 1; // Spec says greater than zero\n var tasksByHandle = {};\n var currentlyRunningATask = false;\n var doc = global.document;\n var registerImmediate;\n\n function setImmediate(callback) {\n // Callback can either be a function or a string\n if (typeof callback !== \"function\") {\n callback = new Function(\"\" + callback);\n }\n // Copy function arguments\n var args = new Array(arguments.length - 1);\n for (var i = 0; i < args.length; i++) {\n args[i] = arguments[i + 1];\n }\n // Store and register the task\n var task = { callback: callback, args: args };\n tasksByHandle[nextHandle] = task;\n registerImmediate(nextHandle);\n return nextHandle++;\n }\n\n function clearImmediate(handle) {\n delete tasksByHandle[handle];\n }\n\n function run(task) {\n var callback = task.callback;\n var args = task.args;\n switch (args.length) {\n case 0:\n callback();\n break;\n case 1:\n callback(args[0]);\n break;\n case 2:\n callback(args[0], args[1]);\n break;\n case 3:\n callback(args[0], args[1], args[2]);\n break;\n default:\n callback.apply(undefined, args);\n break;\n }\n }\n\n function runIfPresent(handle) {\n // From the spec: \"Wait until any invocations of this algorithm started before this one have completed.\"\n // So if we're currently running a task, we'll need to delay this invocation.\n if (currentlyRunningATask) {\n // Delay by doing a setTimeout. setImmediate was tried instead, but in Firefox 7 it generated a\n // \"too much recursion\" error.\n setTimeout(runIfPresent, 0, handle);\n } else {\n var task = tasksByHandle[handle];\n if (task) {\n currentlyRunningATask = true;\n try {\n run(task);\n } finally {\n clearImmediate(handle);\n currentlyRunningATask = false;\n }\n }\n }\n }\n\n function installNextTickImplementation() {\n registerImmediate = function(handle) {\n process.nextTick(function () { runIfPresent(handle); });\n };\n }\n\n function canUsePostMessage() {\n // The test against `importScripts` prevents this implementation from being installed inside a web worker,\n // where `global.postMessage` means something completely different and can't be used for this purpose.\n if (global.postMessage && !global.importScripts) {\n var postMessageIsAsynchronous = true;\n var oldOnMessage = global.onmessage;\n global.onmessage = function() {\n postMessageIsAsynchronous = false;\n };\n global.postMessage(\"\", \"*\");\n global.onmessage = oldOnMessage;\n return postMessageIsAsynchronous;\n }\n }\n\n function installPostMessageImplementation() {\n // Installs an event handler on `global` for the `message` event: see\n // * https://developer.mozilla.org/en/DOM/window.postMessage\n // * http://www.whatwg.org/specs/web-apps/current-work/multipage/comms.html#crossDocumentMessages\n\n var messagePrefix = \"setImmediate$\" + Math.random() + \"$\";\n var onGlobalMessage = function(event) {\n if (event.source === global &&\n typeof event.data === \"string\" &&\n event.data.indexOf(messagePrefix) === 0) {\n runIfPresent(+event.data.slice(messagePrefix.length));\n }\n };\n\n if (global.addEventListener) {\n global.addEventListener(\"message\", onGlobalMessage, false);\n } else {\n global.attachEvent(\"onmessage\", onGlobalMessage);\n }\n\n registerImmediate = function(handle) {\n global.postMessage(messagePrefix + handle, \"*\");\n };\n }\n\n function installMessageChannelImplementation() {\n var channel = new MessageChannel();\n channel.port1.onmessage = function(event) {\n var handle = event.data;\n runIfPresent(handle);\n };\n\n registerImmediate = function(handle) {\n channel.port2.postMessage(handle);\n };\n }\n\n function installReadyStateChangeImplementation() {\n var html = doc.documentElement;\n registerImmediate = function(handle) {\n // Create a <script> element; its readystatechange event will be fired asynchronously once it is inserted\n // into the document. Do so, thus queuing up the task. Remember to clean up once it's been called.\n var script = doc.createElement(\"script\");\n script.onreadystatechange = function () {\n runIfPresent(handle);\n script.onreadystatechange = null;\n html.removeChild(script);\n script = null;\n };\n html.appendChild(script);\n };\n }\n\n function installSetTimeoutImplementation() {\n registerImmediate = function(handle) {\n setTimeout(runIfPresent, 0, handle);\n };\n }\n\n // If supported, we should attach to the prototype of global, since that is where setTimeout et al. live.\n var attachTo = Object.getPrototypeOf && Object.getPrototypeOf(global);\n attachTo = attachTo && attachTo.setTimeout ? attachTo : global;\n\n // Don't get fooled by e.g. browserify environments.\n if ({}.toString.call(global.process) === \"[object process]\") {\n // For Node.js before 0.9\n installNextTickImplementation();\n\n } else if (canUsePostMessage()) {\n // For non-IE10 modern browsers\n installPostMessageImplementation();\n\n } else if (global.MessageChannel) {\n // For web workers, where supported\n installMessageChannelImplementation();\n\n } else if (doc && \"onreadystatechange\" in doc.createElement(\"script\")) {\n // For IE 6–8\n installReadyStateChangeImplementation();\n\n } else {\n // For older browsers\n installSetTimeoutImplementation();\n }\n\n attachTo.setImmediate = setImmediate;\n attachTo.clearImmediate = clearImmediate;\n}(typeof self === \"undefined\" ? typeof global === \"undefined\" ? this : global : self));\n\n/* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(0), __webpack_require__(6)))\n\n/***/ }),\n/* 6 */\n/***/ (function(module, exports) {\n\n// shim for using process in browser\nvar process = module.exports = {};\n\n// cached from whatever global is present so that test runners that stub it\n// don't break things. But we need to wrap it in a try catch in case it is\n// wrapped in strict mode code which doesn't define any globals. It's inside a\n// function because try/catches deoptimize in certain engines.\n\nvar cachedSetTimeout;\nvar cachedClearTimeout;\n\nfunction defaultSetTimout() {\n throw new Error('setTimeout has not been defined');\n}\nfunction defaultClearTimeout () {\n throw new Error('clearTimeout has not been defined');\n}\n(function () {\n try {\n if (typeof setTimeout === 'function') {\n cachedSetTimeout = setTimeout;\n } else {\n cachedSetTimeout = defaultSetTimout;\n }\n } catch (e) {\n cachedSetTimeout = defaultSetTimout;\n }\n try {\n if (typeof clearTimeout === 'function') {\n cachedClearTimeout = clearTimeout;\n } else {\n cachedClearTimeout = defaultClearTimeout;\n }\n } catch (e) {\n cachedClearTimeout = defaultClearTimeout;\n }\n} ())\nfunction runTimeout(fun) {\n if (cachedSetTimeout === setTimeout) {\n //normal enviroments in sane situations\n return setTimeout(fun, 0);\n }\n // if setTimeout wasn't available but was latter defined\n if ((cachedSetTimeout === defaultSetTimout || !cachedSetTimeout) && setTimeout) {\n cachedSetTimeout = setTimeout;\n return setTimeout(fun, 0);\n }\n try {\n // when when somebody has screwed with setTimeout but no I.E. maddness\n return cachedSetTimeout(fun, 0);\n } catch(e){\n try {\n // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally\n return cachedSetTimeout.call(null, fun, 0);\n } catch(e){\n // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error\n return cachedSetTimeout.call(this, fun, 0);\n }\n }\n\n\n}\nfunction runClearTimeout(marker) {\n if (cachedClearTimeout === clearTimeout) {\n //normal enviroments in sane situations\n return clearTimeout(marker);\n }\n // if clearTimeout wasn't available but was latter defined\n if ((cachedClearTimeout === defaultClearTimeout || !cachedClearTimeout) && clearTimeout) {\n cachedClearTimeout = clearTimeout;\n return clearTimeout(marker);\n }\n try {\n // when when somebody has screwed with setTimeout but no I.E. maddness\n return cachedClearTimeout(marker);\n } catch (e){\n try {\n // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally\n return cachedClearTimeout.call(null, marker);\n } catch (e){\n // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error.\n // Some versions of I.E. have different rules for clearTimeout vs setTimeout\n return cachedClearTimeout.call(this, marker);\n }\n }\n\n\n\n}\nvar queue = [];\nvar draining = false;\nvar currentQueue;\nvar queueIndex = -1;\n\nfunction cleanUpNextTick() {\n if (!draining || !currentQueue) {\n return;\n }\n draining = false;\n if (currentQueue.length) {\n queue = currentQueue.concat(queue);\n } else {\n queueIndex = -1;\n }\n if (queue.length) {\n drainQueue();\n }\n}\n\nfunction drainQueue() {\n if (draining) {\n return;\n }\n var timeout = runTimeout(cleanUpNextTick);\n draining = true;\n\n var len = queue.length;\n while(len) {\n currentQueue = queue;\n queue = [];\n while (++queueIndex < len) {\n if (currentQueue) {\n currentQueue[queueIndex].run();\n }\n }\n queueIndex = -1;\n len = queue.length;\n }\n currentQueue = null;\n draining = false;\n runClearTimeout(timeout);\n}\n\nprocess.nextTick = function (fun) {\n var args = new Array(arguments.length - 1);\n if (arguments.length > 1) {\n for (var i = 1; i < arguments.length; i++) {\n args[i - 1] = arguments[i];\n }\n }\n queue.push(new Item(fun, args));\n if (queue.length === 1 && !draining) {\n runTimeout(drainQueue);\n }\n};\n\n// v8 likes predictible objects\nfunction Item(fun, array) {\n this.fun = fun;\n this.array = array;\n}\nItem.prototype.run = function () {\n this.fun.apply(null, this.array);\n};\nprocess.title = 'browser';\nprocess.browser = true;\nprocess.env = {};\nprocess.argv = [];\nprocess.version = ''; // empty string to avoid regexp issues\nprocess.versions = {};\n\nfunction noop() {}\n\nprocess.on = noop;\nprocess.addListener = noop;\nprocess.once = noop;\nprocess.off = noop;\nprocess.removeListener = noop;\nprocess.removeAllListeners = noop;\nprocess.emit = noop;\nprocess.prependListener = noop;\nprocess.prependOnceListener = noop;\n\nprocess.listeners = function (name) { return [] }\n\nprocess.binding = function (name) {\n throw new Error('process.binding is not supported');\n};\n\nprocess.cwd = function () { return '/' };\nprocess.chdir = function (dir) {\n throw new Error('process.chdir is not supported');\n};\nprocess.umask = function() { return 0; };\n\n\n/***/ }),\n/* 7 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__babel_loader_node_modules_vue_loader_lib_selector_type_script_index_0_Geshem_vue__ = __webpack_require__(14);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__node_modules_vue_loader_lib_template_compiler_index_id_data_v_7d220ade_hasScoped_false_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_Geshem_vue__ = __webpack_require__(16);\nfunction injectStyle (ssrContext) {\n __webpack_require__(8)\n}\nvar normalizeComponent = __webpack_require__(13)\n/* script */\n\n/* template */\n\n/* template functional */\n var __vue_template_functional__ = false\n/* styles */\nvar __vue_styles__ = injectStyle\n/* scopeId */\nvar __vue_scopeId__ = null\n/* moduleIdentifier (server only) */\nvar __vue_module_identifier__ = null\nvar Component = normalizeComponent(\n __WEBPACK_IMPORTED_MODULE_0__babel_loader_node_modules_vue_loader_lib_selector_type_script_index_0_Geshem_vue__[\"a\" /* default */],\n __WEBPACK_IMPORTED_MODULE_1__node_modules_vue_loader_lib_template_compiler_index_id_data_v_7d220ade_hasScoped_false_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_Geshem_vue__[\"a\" /* default */],\n __vue_template_functional__,\n __vue_styles__,\n __vue_scopeId__,\n __vue_module_identifier__\n)\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Component.exports);\n\n\n/***/ }),\n/* 8 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// style-loader: Adds some css to the DOM by adding a <style> tag\n\n// load the styles\nvar content = __webpack_require__(9);\nif(typeof content === 'string') content = [[module.i, content, '']];\nif(content.locals) module.exports = content.locals;\n// add the styles to the DOM\nvar update = __webpack_require__(11)(\"1cc1a7d4\", content, true);\n\n/***/ }),\n/* 9 */\n/***/ (function(module, exports, __webpack_require__) {\n\nexports = module.exports = __webpack_require__(10)(undefined);\n// imports\n\n\n// module\nexports.push([module.i, \"#geshem #datetime{position:absolute;margin:20px 0 0 20px;color:#fff;font-family:monospace}#geshem #datetime #date{font-size:1.4em}#geshem #datetime #time{font-size:1.8em}#geshem #slider{position:absolute;bottom:8vh;width:30vw;margin-left:35vw}@media only screen and (max-device-width:812px){#geshem #slider{width:80vw;margin-left:8vw}}\", \"\"]);\n\n// exports\n\n\n/***/ }),\n/* 10 */\n/***/ (function(module, exports) {\n\n/*\n\tMIT License http://www.opensource.org/licenses/mit-license.php\n\tAuthor Tobias Koppers @sokra\n*/\n// css base code, injected by the css-loader\nmodule.exports = function(useSourceMap) {\n\tvar list = [];\n\n\t// return the list of modules as css string\n\tlist.toString = function toString() {\n\t\treturn this.map(function (item) {\n\t\t\tvar content = cssWithMappingToString(item, useSourceMap);\n\t\t\tif(item[2]) {\n\t\t\t\treturn \"@media \" + item[2] + \"{\" + content + \"}\";\n\t\t\t} else {\n\t\t\t\treturn content;\n\t\t\t}\n\t\t}).join(\"\");\n\t};\n\n\t// import a list of modules into the list\n\tlist.i = function(modules, mediaQuery) {\n\t\tif(typeof modules === \"string\")\n\t\t\tmodules = [[null, modules, \"\"]];\n\t\tvar alreadyImportedModules = {};\n\t\tfor(var i = 0; i < this.length; i++) {\n\t\t\tvar id = this[i][0];\n\t\t\tif(typeof id === \"number\")\n\t\t\t\talreadyImportedModules[id] = true;\n\t\t}\n\t\tfor(i = 0; i < modules.length; i++) {\n\t\t\tvar item = modules[i];\n\t\t\t// skip already imported module\n\t\t\t// this implementation is not 100% perfect for weird media query combinations\n\t\t\t// when a module is imported multiple times with different media queries.\n\t\t\t// I hope this will never occur (Hey this way we have smaller bundles)\n\t\t\tif(typeof item[0] !== \"number\" || !alreadyImportedModules[item[0]]) {\n\t\t\t\tif(mediaQuery && !item[2]) {\n\t\t\t\t\titem[2] = mediaQuery;\n\t\t\t\t} else if(mediaQuery) {\n\t\t\t\t\titem[2] = \"(\" + item[2] + \") and (\" + mediaQuery + \")\";\n\t\t\t\t}\n\t\t\t\tlist.push(item);\n\t\t\t}\n\t\t}\n\t};\n\treturn list;\n};\n\nfunction cssWithMappingToString(item, useSourceMap) {\n\tvar content = item[1] || '';\n\tvar cssMapping = item[3];\n\tif (!cssMapping) {\n\t\treturn content;\n\t}\n\n\tif (useSourceMap && typeof btoa === 'function') {\n\t\tvar sourceMapping = toComment(cssMapping);\n\t\tvar sourceURLs = cssMapping.sources.map(function (source) {\n\t\t\treturn '/*# sourceURL=' + cssMapping.sourceRoot + source + ' */'\n\t\t});\n\n\t\treturn [content].concat(sourceURLs).concat([sourceMapping]).join('\\n');\n\t}\n\n\treturn [content].join('\\n');\n}\n\n// Adapted from convert-source-map (MIT)\nfunction toComment(sourceMap) {\n\t// eslint-disable-next-line no-undef\n\tvar base64 = btoa(unescape(encodeURIComponent(JSON.stringify(sourceMap))));\n\tvar data = 'sourceMappingURL=data:application/json;charset=utf-8;base64,' + base64;\n\n\treturn '/*# ' + data + ' */';\n}\n\n\n/***/ }),\n/* 11 */\n/***/ (function(module, exports, __webpack_require__) {\n\n/*\n MIT License http://www.opensource.org/licenses/mit-license.php\n Author Tobias Koppers @sokra\n Modified by Evan You @yyx990803\n*/\n\nvar hasDocument = typeof document !== 'undefined'\n\nif (typeof DEBUG !== 'undefined' && DEBUG) {\n if (!hasDocument) {\n throw new Error(\n 'vue-style-loader cannot be used in a non-browser environment. ' +\n \"Use { target: 'node' } in your Webpack config to indicate a server-rendering environment.\"\n ) }\n}\n\nvar listToStyles = __webpack_require__(12)\n\n/*\ntype StyleObject = {\n id: number;\n parts: Array<StyleObjectPart>\n}\n\ntype StyleObjectPart = {\n css: string;\n media: string;\n sourceMap: ?string\n}\n*/\n\nvar stylesInDom = {/*\n [id: number]: {\n id: number,\n refs: number,\n parts: Array<(obj?: StyleObjectPart) => void>\n }\n*/}\n\nvar head = hasDocument && (document.head || document.getElementsByTagName('head')[0])\nvar singletonElement = null\nvar singletonCounter = 0\nvar isProduction = false\nvar noop = function () {}\n\n// Force single-tag solution on IE6-9, which has a hard limit on the # of <style>\n// tags it will allow on a page\nvar isOldIE = typeof navigator !== 'undefined' && /msie [6-9]\\b/.test(navigator.userAgent.toLowerCase())\n\nmodule.exports = function (parentId, list, _isProduction) {\n isProduction = _isProduction\n\n var styles = listToStyles(parentId, list)\n addStylesToDom(styles)\n\n return function update (newList) {\n var mayRemove = []\n for (var i = 0; i < styles.length; i++) {\n var item = styles[i]\n var domStyle = stylesInDom[item.id]\n domStyle.refs--\n mayRemove.push(domStyle)\n }\n if (newList) {\n styles = listToStyles(parentId, newList)\n addStylesToDom(styles)\n } else {\n styles = []\n }\n for (var i = 0; i < mayRemove.length; i++) {\n var domStyle = mayRemove[i]\n if (domStyle.refs === 0) {\n for (var j = 0; j < domStyle.parts.length; j++) {\n domStyle.parts[j]()\n }\n delete stylesInDom[domStyle.id]\n }\n }\n }\n}\n\nfunction addStylesToDom (styles /* Array<StyleObject> */) {\n for (var i = 0; i < styles.length; i++) {\n var item = styles[i]\n var domStyle = stylesInDom[item.id]\n if (domStyle) {\n domStyle.refs++\n for (var j = 0; j < domStyle.parts.length; j++) {\n domStyle.parts[j](item.parts[j])\n }\n for (; j < item.parts.length; j++) {\n domStyle.parts.push(addStyle(item.parts[j]))\n }\n if (domStyle.parts.length > item.parts.length) {\n domStyle.parts.length = item.parts.length\n }\n } else {\n var parts = []\n for (var j = 0; j < item.parts.length; j++) {\n parts.push(addStyle(item.parts[j]))\n }\n stylesInDom[item.id] = { id: item.id, refs: 1, parts: parts }\n }\n }\n}\n\nfunction createStyleElement () {\n var styleElement = document.createElement('style')\n styleElement.type = 'text/css'\n head.appendChild(styleElement)\n return styleElement\n}\n\nfunction addStyle (obj /* StyleObjectPart */) {\n var update, remove\n var styleElement = document.querySelector('style[data-vue-ssr-id~=\"' + obj.id + '\"]')\n\n if (styleElement) {\n if (isProduction) {\n // has SSR styles and in production mode.\n // simply do nothing.\n return noop\n } else {\n // has SSR styles but in dev mode.\n // for some reason Chrome can't handle source map in server-rendered\n // style tags - source maps in <style> only works if the style tag is\n // created and inserted dynamically. So we remove the server rendered\n // styles and inject new ones.\n styleElement.parentNode.removeChild(styleElement)\n }\n }\n\n if (isOldIE) {\n // use singleton mode for IE9.\n var styleIndex = singletonCounter++\n styleElement = singletonElement || (singletonElement = createStyleElement())\n update = applyToSingletonTag.bind(null, styleElement, styleIndex, false)\n remove = applyToSingletonTag.bind(null, styleElement, styleIndex, true)\n } else {\n // use multi-style-tag mode in all other cases\n styleElement = createStyleElement()\n update = applyToTag.bind(null, styleElement)\n remove = function () {\n styleElement.parentNode.removeChild(styleElement)\n }\n }\n\n update(obj)\n\n return function updateStyle (newObj /* StyleObjectPart */) {\n if (newObj) {\n if (newObj.css === obj.css &&\n newObj.media === obj.media &&\n newObj.sourceMap === obj.sourceMap) {\n return\n }\n update(obj = newObj)\n } else {\n remove()\n }\n }\n}\n\nvar replaceText = (function () {\n var textStore = []\n\n return function (index, replacement) {\n textStore[index] = replacement\n return textStore.filter(Boolean).join('\\n')\n }\n})()\n\nfunction applyToSingletonTag (styleElement, index, remove, obj) {\n var css = remove ? '' : obj.css\n\n if (styleElement.styleSheet) {\n styleElement.styleSheet.cssText = replaceText(index, css)\n } else {\n var cssNode = document.createTextNode(css)\n var childNodes = styleElement.childNodes\n if (childNodes[index]) styleElement.removeChild(childNodes[index])\n if (childNodes.length) {\n styleElement.insertBefore(cssNode, childNodes[index])\n } else {\n styleElement.appendChild(cssNode)\n }\n }\n}\n\nfunction applyToTag (styleElement, obj) {\n var css = obj.css\n var media = obj.media\n var sourceMap = obj.sourceMap\n\n if (media) {\n styleElement.setAttribute('media', media)\n }\n\n if (sourceMap) {\n // https://developer.chrome.com/devtools/docs/javascript-debugging\n // this makes source maps inside style tags work properly in Chrome\n css += '\\n/*# sourceURL=' + sourceMap.sources[0] + ' */'\n // http://stackoverflow.com/a/26603875\n css += '\\n/*# sourceMappingURL=data:application/json;base64,' + btoa(unescape(encodeURIComponent(JSON.stringify(sourceMap)))) + ' */'\n }\n\n if (styleElement.styleSheet) {\n styleElement.styleSheet.cssText = css\n } else {\n while (styleElement.firstChild) {\n styleElement.removeChild(styleElement.firstChild)\n }\n styleElement.appendChild(document.createTextNode(css))\n }\n}\n\n\n/***/ }),\n/* 12 */\n/***/ (function(module, exports) {\n\n/**\n * Translates the list format produced by css-loader into something\n * easier to manipulate.\n */\nmodule.exports = function listToStyles (parentId, list) {\n var styles = []\n var newStyles = {}\n for (var i = 0; i < list.length; i++) {\n var item = list[i]\n var id = item[0]\n var css = item[1]\n var media = item[2]\n var sourceMap = item[3]\n var part = {\n id: parentId + ':' + i,\n css: css,\n media: media,\n sourceMap: sourceMap\n }\n if (!newStyles[id]) {\n styles.push(newStyles[id] = { id: id, parts: [part] })\n } else {\n newStyles[id].parts.push(part)\n }\n }\n return styles\n}\n\n\n/***/ }),\n/* 13 */\n/***/ (function(module, exports) {\n\n/* globals __VUE_SSR_CONTEXT__ */\n\n// IMPORTANT: Do NOT use ES2015 features in this file.\n// This module is a runtime utility for cleaner component module output and will\n// be included in the final webpack user bundle.\n\nmodule.exports = function normalizeComponent (\n rawScriptExports,\n compiledTemplate,\n functionalTemplate,\n injectStyles,\n scopeId,\n moduleIdentifier /* server only */\n) {\n var esModule\n var scriptExports = rawScriptExports = rawScriptExports || {}\n\n // ES6 modules interop\n var type = typeof rawScriptExports.default\n if (type === 'object' || type === 'function') {\n esModule = rawScriptExports\n scriptExports = rawScriptExports.default\n }\n\n // Vue.extend constructor export interop\n var options = typeof scriptExports === 'function'\n ? scriptExports.options\n : scriptExports\n\n // render functions\n if (compiledTemplate) {\n options.render = compiledTemplate.render\n options.staticRenderFns = compiledTemplate.staticRenderFns\n options._compiled = true\n }\n\n // functional template\n if (functionalTemplate) {\n options.functional = true\n }\n\n // scopedId\n if (scopeId) {\n options._scopeId = scopeId\n }\n\n var hook\n if (moduleIdentifier) { // server build\n hook = function (context) {\n // 2.3 injection\n context =\n context || // cached call\n (this.$vnode && this.$vnode.ssrContext) || // stateful\n (this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext) // functional\n // 2.2 with runInNewContext: true\n if (!context && typeof __VUE_SSR_CONTEXT__ !== 'undefined') {\n context = __VUE_SSR_CONTEXT__\n }\n // inject component styles\n if (injectStyles) {\n injectStyles.call(this, context)\n }\n // register component module identifier for async chunk inferrence\n if (context && context._registeredComponents) {\n context._registeredComponents.add(moduleIdentifier)\n }\n }\n // used by ssr in case component is cached and beforeCreate\n // never gets called\n options._ssrRegister = hook\n } else if (injectStyles) {\n hook = injectStyles\n }\n\n if (hook) {\n var functional = options.functional\n var existing = functional\n ? options.render\n : options.beforeCreate\n\n if (!functional) {\n // inject component registration as beforeCreate hook\n options.beforeCreate = existing\n ? [].concat(existing, hook)\n : [hook]\n } else {\n // for template-only hot-reload because in that case the render fn doesn't\n // go through the normalizer\n options._injectStyles = hook\n // register for functioal component in vue file\n options.render = function renderWithStyleInjection (h, context) {\n hook.call(context)\n return existing(h, context)\n }\n }\n }\n\n return {\n esModule: esModule,\n exports: scriptExports,\n options: options\n }\n}\n\n\n/***/ }),\n/* 14 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_vue_slider_component__ = __webpack_require__(15);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_vue_slider_component___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_vue_slider_component__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_mapbox_gl__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_mapbox_gl___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_mapbox_gl__);\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'geshem',\n components: {\n 'vue-slider': __WEBPACK_IMPORTED_MODULE_0_vue_slider_component___default.a\n },\n data: function data() {\n var _ref;\n\n return {\n imgs: window.imgs,\n res: 280,\n slider: 7,\n rasterCoords: {\n 140: [[33.35317413, 33.27232471], [36.32243686, 33.27232471], [36.32243686, 30.72293428], [33.35317413, 30.72293428]],\n 280: [[31.93095218, 34.5156862], [37.86644267, 34.5156862], [37.86644267, 29.42911589], [31.93095218, 29.42911589]]\n },\n map: new __WEBPACK_IMPORTED_MODULE_1_mapbox_gl___default.a.Map((_ref = {\n container: 'map',\n style: 'mapbox://styles/mapbox/dark-v9'\n }, _defineProperty(_ref, 'container', 'map'), _defineProperty(_ref, 'maxZoom', 10), _defineProperty(_ref, 'minZoom', 5), _defineProperty(_ref, 'zoom', 6.3), _defineProperty(_ref, 'center', [35, 31.9]), _defineProperty(_ref, 'hash', false), _ref))\n };\n },\n computed: {\n date: function date() {\n var d = this.imgs[this.res][7 - this.slider].substr(0, 8);\n return d.substr(6, 2) + '-' + d.substr(4, 2) + '-' + d.substr(0, 4);\n },\n time: function time() {\n var t = this.imgs[this.res][7 - this.slider].substr(9, 6);\n return t.substr(0, 2) + ':' + t.substr(2, 2);\n },\n curImg: function curImg() {\n return 7 - this.slider;\n }\n },\n created: function created() {\n var vm = this;\n this.map.on('style.load', function () {\n var i = 0;\n while (i < vm.imgs['140'].length) {\n vm.addRadarSource('140', i, vm.imgs['140'][i++]);\n }\n var i = 0;\n while (i < vm.imgs['280'].length) {\n vm.addRadarSource('280', i, vm.imgs['280'][i++]);\n }\n vm.addRadarLayer('280', 0);\n });\n this.map.on('zoom', function () {\n var zoomIn = vm.map.getZoom() > 7;\n var from = zoomIn ? '280' : '140';\n var to = zoomIn ? '140' : '280';\n if (to != vm.res) {\n console.log('Zoom event from ' + from + ' to ' + to);\n vm.removeRadarLayer(from, vm.curImg);\n vm.addRadarLayer(to, vm.curImg);\n vm.res = to;\n }\n });\n },\n methods: {\n addRadarSource: function addRadarSource(res, i, url) {\n this.map.addSource('radar-' + res + '-' + i, {\n type: 'image',\n url: '/static/img/' + url,\n coordinates: this.rasterCoords[res]\n });\n },\n addRadarLayer: function addRadarLayer(res, i) {\n this.map.addLayer({\n id: 'radar-' + res + '-' + i,\n source: 'radar-' + res + '-' + i,\n type: 'raster',\n paint: {\n 'raster-opacity': 0.85\n }\n });\n },\n removeRadarLayer: function removeRadarLayer(res, i) {\n this.map.removeLayer('radar-' + res + '-' + i);\n }\n },\n watch: {\n slider: function slider(to, from) {\n this.removeRadarLayer(this.res, 7 - from);\n this.addRadarLayer(this.res, 7 - to);\n }\n }\n});\n\n/***/ }),\n/* 15 */\n/***/ (function(module, exports, __webpack_require__) {\n\n!function(t,e){ true?module.exports=e():\"function\"==typeof define&&define.amd?define(\"vue-slider-component\",[],e):\"object\"==typeof exports?exports[\"vue-slider-component\"]=e():t[\"vue-slider-component\"]=e()}(this,function(){return function(t){function e(s){if(i[s])return i[s].exports;var r=i[s]={i:s,l:!1,exports:{}};return t[s].call(r.exports,r,r.exports,e),r.l=!0,r.exports}var i={};return e.m=t,e.c=i,e.i=function(t){return t},e.d=function(t,i,s){e.o(t,i)||Object.defineProperty(t,i,{configurable:!1,enumerable:!0,get:s})},e.n=function(t){var i=t&&t.__esModule?function(){return t.default}:function(){return t};return e.d(i,\"a\",i),i},e.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},e.p=\"\",e(e.s=2)}([function(t,e,i){i(7);var s=i(5)(i(1),i(6),null,null);t.exports=s.exports},function(t,e,i){\"use strict\";Object.defineProperty(e,\"__esModule\",{value:!0}),e.default={data:function(){return{flag:!1,size:0,currentValue:0,currentSlider:0,dotWidthVal:\"number\"==typeof this.dotWidth?this.dotWidth:this.dotSize,dotHeightVal:\"number\"==typeof this.dotHeight?this.dotHeight:this.dotSize}},props:{width:{type:[Number,String],default:\"auto\"},height:{type:[Number,String],default:6},data:{type:Array,default:null},dotSize:{type:Number,default:16},dotWidth:{type:Number,required:!1},dotHeight:{type:Number,required:!1},min:{type:Number,default:0},max:{type:Number,default:100},interval:{type:Number,default:1},show:{type:Boolean,default:!0},disabled:{type:Boolean,default:!1},piecewise:{type:Boolean,default:!1},tooltip:{type:[String,Boolean],default:\"always\"},eventType:{type:String,default:\"auto\"},direction:{type:String,default:\"horizontal\"},reverse:{type:Boolean,default:!1},lazy:{type:Boolean,default:!1},clickable:{type:Boolean,default:!0},speed:{type:Number,default:.5},realTime:{type:Boolean,default:!1},value:{type:[String,Number,Array],default:0},piecewiseLabel:{type:Boolean,default:!1},sliderStyle:[Array,Object],tooltipDir:[Array,String],formatter:[String,Function],piecewiseStyle:Object,piecewiseActiveStyle:Object,processStyle:Object,bgStyle:Object,tooltipStyle:[Array,Object],labelStyle:Object,labelActiveStyle:Object},computed:{flowDirection:function(){return\"vue-slider-\"+this.direction+(this.reverse?\"-reverse\":\"\")},tooltipDirection:function(){var t=this.tooltipDir||(\"vertical\"===this.direction?\"left\":\"top\");return Array.isArray(t)?this.isRange?t:t[1]:this.isRange?[t,t]:t},tooltipStatus:function(){return\"hover\"===this.tooltip&&this.flag?\"vue-slider-always\":this.tooltip?\"vue-slider-\"+this.tooltip:\"\"},tooltipClass:function(){return[\"vue-slider-tooltip-\"+this.tooltipDirection,\"vue-slider-tooltip\"]},isDisabled:function(){return\"none\"===this.eventType||this.disabled},disabledClass:function(){return this.disabled?\"vue-slider-disabled\":\"\"},isRange:function(){return Array.isArray(this.value)},slider:function(){return this.isRange?[this.$refs.dot0,this.$refs.dot1]:this.$refs.dot},minimum:function(){return this.data?0:this.min},val:{get:function(){return this.data?this.isRange?[this.data[this.currentValue[0]],this.data[this.currentValue[1]]]:this.data[this.currentValue]:this.currentValue},set:function(t){if(this.data)if(this.isRange){var e=this.data.indexOf(t[0]),i=this.data.indexOf(t[1]);e>-1&&i>-1&&(this.currentValue=[e,i])}else{var s=this.data.indexOf(t);s>-1&&(this.currentValue=s)}else this.currentValue=t}},currentIndex:function(){return this.isRange?this.data?this.currentValue:[(this.currentValue[0]-this.minimum)/this.spacing,(this.currentValue[1]-this.minimum)/this.spacing]:(this.currentValue-this.minimum)/this.spacing},indexRange:function(){return this.isRange?this.currentIndex:[0,this.currentIndex]},maximum:function(){return this.data?this.data.length-1:this.max},multiple:function(){var t=(\"\"+this.interval).split(\".\")[1];return t?Math.pow(10,t.length):1},spacing:function(){return this.data?1:this.interval},total:function(){return this.data?this.data.length-1:(~~((this.maximum-this.minimum)*this.multiple)%(this.interval*this.multiple)!=0&&console.error(\"[Vue-slider warn]: Prop[interval] is illegal, Please make sure that the interval can be divisible\"),(this.maximum-this.minimum)/this.interval)},gap:function(){return this.size/this.total},position:function(){return this.isRange?[(this.currentValue[0]-this.minimum)/this.spacing*this.gap,(this.currentValue[1]-this.minimum)/this.spacing*this.gap]:(this.currentValue-this.minimum)/this.spacing*this.gap},limit:function(){return this.isRange?[[0,this.position[1]],[this.position[0],this.size]]:[0,this.size]},valueLimit:function(){return this.isRange?[[this.minimum,this.currentValue[1]],[this.currentValue[0],this.maximum]]:[this.minimum,this.maximum]},wrapStyles:function(){return\"vertical\"===this.direction?{height:\"number\"==typeof this.height?this.height+\"px\":this.height,padding:this.dotHeightVal/2+\"px \"+this.dotWidthVal/2+\"px\"}:{width:\"number\"==typeof this.width?this.width+\"px\":this.width,padding:this.dotHeightVal/2+\"px \"+this.dotWidthVal/2+\"px\"}},sliderStyles:function(){return Array.isArray(this.sliderStyle)?this.isRange?this.sliderStyle:this.sliderStyle[1]:this.isRange?[this.sliderStyle,this.sliderStyle]:this.sliderStyle},tooltipStyles:function(){return Array.isArray(this.tooltipStyle)?this.isRange?this.tooltipStyle:this.tooltipStyle[1]:this.isRange?[this.tooltipStyle,this.tooltipStyle]:this.tooltipStyle},elemStyles:function(){return\"vertical\"===this.direction?{width:this.width+\"px\",height:\"100%\"}:{height:this.height+\"px\"}},dotStyles:function(){return\"vertical\"===this.direction?{width:this.dotWidthVal+\"px\",height:this.dotHeightVal+\"px\",left:-(this.dotWidthVal-this.width)/2+\"px\"}:{width:this.dotWidthVal+\"px\",height:this.dotHeightVal+\"px\",top:-(this.dotHeightVal-this.height)/2+\"px\"}},piecewiseDotStyle:function(){return\"vertical\"===this.direction?{width:this.width+\"px\",height:this.width+\"px\"}:{width:this.height+\"px\",height:this.height+\"px\"}},piecewiseDotWrap:function(){if(!this.piecewise&&!this.piecewiseLabel)return!1;for(var t=[],e=0;e<=this.total;e++){var i=\"vertical\"===this.direction?{bottom:this.gap*e-this.width/2+\"px\",left:0}:{left:this.gap*e-this.height/2+\"px\",top:0},s=this.reverse?this.total-e:e,r=this.data?this.data[s]:this.spacing*s+this.min;t.push({style:i,label:this.formatter?this.formatting(r):r,inRange:s>=this.indexRange[0]&&s<=this.indexRange[1]})}return t}},watch:{value:function(t){this.flag||this.setValue(t,!0)},max:function(t){var e=this.limitValue(this.val);!1!==e&&this.setValue(e),this.refresh()},min:function(t){var e=this.limitValue(this.val);!1!==e&&this.setValue(e),this.refresh()},show:function(t){var e=this;t&&!this.size&&this.$nextTick(function(){e.refresh()})}},methods:{bindEvents:function(){document.addEventListener(\"touchmove\",this.moving,{passive:!1}),document.addEventListener(\"touchend\",this.moveEnd,{passive:!1}),document.addEventListener(\"mousemove\",this.moving),document.addEventListener(\"mouseup\",this.moveEnd),document.addEventListener(\"mouseleave\",this.moveEnd),window.addEventListener(\"resize\",this.refresh)},unbindEvents:function(){window.removeEventListener(\"resize\",this.refresh),document.removeEventListener(\"touchmove\",this.moving),document.removeEventListener(\"touchend\",this.moveEnd),document.removeEventListener(\"mousemove\",this.moving),document.removeEventListener(\"mouseup\",this.moveEnd),document.removeEventListener(\"mouseleave\",this.moveEnd)},formatting:function(t){return\"string\"==typeof this.formatter?this.formatter.replace(/\\{value\\}/,t):this.formatter(t)},getPos:function(t){return this.realTime&&this.getStaticData(),\"vertical\"===this.direction?this.reverse?t.pageY-this.offset:this.size-(t.pageY-this.offset):this.reverse?this.size-(t.clientX-this.offset):t.clientX-this.offset},wrapClick:function(t){if(this.isDisabled||!this.clickable)return!1;var e=this.getPos(t);this.isRange&&(this.currentSlider=e>(this.position[1]-this.position[0])/2+this.position[0]?1:0),this.setValueOnPos(e)},moveStart:function(t){if(this.isDisabled)return!1;this.isRange&&(this.currentSlider=t),this.flag=!0,this.$emit(\"drag-start\",this)},moving:function(t){if(!this.flag)return!1;t.preventDefault(),t.targetTouches&&t.targetTouches[0]&&(t=t.targetTouches[0]),this.setValueOnPos(this.getPos(t),!0)},moveEnd:function(t){if(!this.flag)return!1;this.$emit(\"drag-end\",this),this.lazy&&this.isDiff(this.val,this.value)&&this.syncValue(),this.flag=!1,this.setPosition()},setValueOnPos:function(t,e){var i=this.isRange?this.limit[this.currentSlider]:this.limit,s=this.isRange?this.valueLimit[this.currentSlider]:this.valueLimit;if(t>=i[0]&&t<=i[1]){this.setTransform(t);var r=(Math.round(t/this.gap)*(this.spacing*this.multiple)+this.minimum*this.multiple)/this.multiple;this.setCurrentValue(r,e)}else t<i[0]?(this.setTransform(i[0]),this.setCurrentValue(s[0]),1===this.currentSlider&&(this.currentSlider=0)):(this.setTransform(i[1]),this.setCurrentValue(s[1]),0===this.currentSlider&&(this.currentSlider=1))},isDiff:function(t,e){return Object.prototype.toString.call(t)!==Object.prototype.toString.call(e)||(Array.isArray(t)&&t.length===e.length?t.some(function(t,i){return t!==e[i]}):t!==e)},setCurrentValue:function(t,e){if(t<this.minimum||t>this.maximum)return!1;this.isRange?this.isDiff(this.currentValue[this.currentSlider],t)&&(this.currentValue.splice(this.currentSlider,1,t),this.lazy&&this.flag||this.syncValue()):this.isDiff(this.currentValue,t)&&(this.currentValue=t,this.lazy&&this.flag||this.syncValue()),e||this.setPosition()},setIndex:function(t){if(Array.isArray(t)&&this.isRange){var e=void 0;e=this.data?[this.data[t[0]],this.data[t[1]]]:[this.spacing*t[0]+this.minimum,this.spacing*t[1]+this.minimum],this.setValue(e)}else t=this.spacing*t+this.minimum,this.isRange&&(this.currentSlider=t>(this.currentValue[1]-this.currentValue[0])/2+this.currentValue[0]?1:0),this.setCurrentValue(t)},setValue:function(t,e,i){var s=this;if(this.isDiff(this.val,t)){var r=this.limitValue(t);this.val=!1!==r?this.isRange?r.concat():r:this.isRange?t.concat():t,this.syncValue(e)}this.$nextTick(function(){return s.setPosition(i)})},setPosition:function(t){this.flag||this.setTransitionTime(void 0===t?this.speed:t),this.isRange?(this.currentSlider=0,this.setTransform(this.position[this.currentSlider]),this.currentSlider=1,this.setTransform(this.position[this.currentSlider])):this.setTransform(this.position),this.flag||this.setTransitionTime(0)},setTransform:function(t){var e=(\"vertical\"===this.direction?this.dotHeightVal/2-t:t-this.dotWidthVal/2)*(this.reverse?-1:1),i=\"vertical\"===this.direction?\"translateY(\"+e+\"px)\":\"translateX(\"+e+\"px)\",s=(0===this.currentSlider?this.position[1]-t:t-this.position[0])+\"px\",r=(0===this.currentSlider?t:this.position[0])+\"px\";this.isRange?(this.slider[this.currentSlider].style.transform=i,this.slider[this.currentSlider].style.WebkitTransform=i,this.slider[this.currentSlider].style.msTransform=i,\"vertical\"===this.direction?(this.$refs.process.style.height=s,this.$refs.process.style[this.reverse?\"top\":\"bottom\"]=r):(this.$refs.process.style.width=s,this.$refs.process.style[this.reverse?\"right\":\"left\"]=r)):(this.slider.style.transform=i,this.slider.style.WebkitTransform=i,this.slider.style.msTransform=i,\"vertical\"===this.direction?(this.$refs.process.style.height=t+\"px\",this.$refs.process.style[this.reverse?\"top\":\"bottom\"]=0):(this.$refs.process.style.width=t+\"px\",this.$refs.process.style[this.reverse?\"right\":\"left\"]=0))},setTransitionTime:function(t){if(t||this.$refs.process.offsetWidth,this.isRange){for(var e=0;e<this.slider.length;e++)this.slider[e].style.transitionDuration=t+\"s\",this.slider[e].style.WebkitTransitionDuration=t+\"s\";this.$refs.process.style.transitionDuration=t+\"s\",this.$refs.process.style.WebkitTransitionDuration=t+\"s\"}else this.slider.style.transitionDuration=t+\"s\",this.slider.style.WebkitTransitionDuration=t+\"s\",this.$refs.process.style.transitionDuration=t+\"s\",this.$refs.process.style.WebkitTransitionDuration=t+\"s\"},limitValue:function(t){var e=this;if(this.data)return t;var i=!1;return this.isRange?t=t.map(function(t){return t<e.min?(i=!0,e.min):t>e.max?(i=!0,e.max):t}):t>this.max?(i=!0,t=this.max):t<this.min&&(i=!0,t=this.min),i&&t},syncValue:function(t){t||this.$emit(\"callback\",this.val),this.$emit(\"input\",this.isRange?this.val.concat():this.val)},getValue:function(){return this.val},getIndex:function(){return this.currentIndex},getStaticData:function(){this.$refs.elem&&(this.size=\"vertical\"===this.direction?this.$refs.elem.offsetHeight:this.$refs.elem.offsetWidth,this.offset=\"vertical\"===this.direction?this.$refs.elem.getBoundingClientRect().top+window.pageYOffset||document.documentElement.scrollTop:this.$refs.elem.getBoundingClientRect().left)},refresh:function(){this.$refs.elem&&(this.getStaticData(),this.setPosition())}},mounted:function(){var t=this;\"undefined\"!=typeof window&&\"undefined\"!=typeof document&&this.$nextTick(function(){t.getStaticData(),t.setValue(t.value,!0,0),t.bindEvents()})},beforeDestroy:function(){this.unbindEvents()}}},function(t,e,i){\"use strict\";var s=i(0);t.exports=s},function(t,e,i){e=t.exports=i(4)(),e.push([t.i,'.vue-slider-component{position:relative;-webkit-box-sizing:border-box;box-sizing:border-box;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.vue-slider-component.vue-slider-disabled{opacity:.5;cursor:not-allowed}.vue-slider-component.vue-slider-has-label{margin-bottom:15px}.vue-slider-component.vue-slider-disabled .vue-slider-dot{cursor:not-allowed}.vue-slider-component .vue-slider{position:relative;display:block;border-radius:15px;background-color:#ccc}.vue-slider-component .vue-slider:after{content:\"\";position:absolute;left:0;top:0;width:100%;height:100%;z-index:2}.vue-slider-component .vue-slider-process{position:absolute;border-radius:15px;background-color:#3498db;-webkit-transition:all 0s;transition:all 0s;z-index:1}.vue-slider-component.vue-slider-horizontal .vue-slider-process{width:0;height:100%;top:0;left:0;will-change:width}.vue-slider-component.vue-slider-vertical .vue-slider-process{width:100%;height:0;bottom:0;left:0;will-change:height}.vue-slider-component.vue-slider-horizontal-reverse .vue-slider-process{width:0;height:100%;top:0;right:0}.vue-slider-component.vue-slider-vertical-reverse .vue-slider-process{width:100%;height:0;top:0;left:0}.vue-slider-component .vue-slider-dot{position:absolute;border-radius:50%;background-color:#fff;-webkit-box-shadow:.5px .5px 2px 1px rgba(0,0,0,.32);box-shadow:.5px .5px 2px 1px rgba(0,0,0,.32);-webkit-transition:all 0s;transition:all 0s;will-change:transform;cursor:pointer;z-index:3}.vue-slider-component.vue-slider-horizontal .vue-slider-dot{left:0}.vue-slider-component.vue-slider-vertical .vue-slider-dot{bottom:0}.vue-slider-component.vue-slider-horizontal-reverse .vue-slider-dot{right:0}.vue-slider-component.vue-slider-vertical-reverse .vue-slider-dot{top:0}.vue-slider-component .vue-slider-tooltip-wrap{display:none;position:absolute;z-index:9}.vue-slider-component .vue-slider-tooltip{display:block;font-size:14px;white-space:nowrap;padding:2px 5px;min-width:20px;text-align:center;color:#fff;border-radius:5px;border:1px solid #3498db;background-color:#3498db}.vue-slider-component .vue-slider-tooltip-wrap.vue-slider-tooltip-top{top:-9px;left:50%;-webkit-transform:translate(-50%,-100%);transform:translate(-50%,-100%)}.vue-slider-component .vue-slider-tooltip-wrap.vue-slider-tooltip-bottom{bottom:-9px;left:50%;-webkit-transform:translate(-50%,100%);transform:translate(-50%,100%)}.vue-slider-component .vue-slider-tooltip-wrap.vue-slider-tooltip-left{top:50%;left:-9px;-webkit-transform:translate(-100%,-50%);transform:translate(-100%,-50%)}.vue-slider-component .vue-slider-tooltip-wrap.vue-slider-tooltip-right{top:50%;right:-9px;-webkit-transform:translate(100%,-50%);transform:translate(100%,-50%)}.vue-slider-component .vue-slider-tooltip-wrap.vue-slider-tooltip-top .vue-slider-tooltip:before{content:\"\";position:absolute;bottom:-10px;left:50%;width:0;height:0;border:5px solid transparent;border:6px solid transparent\\\\0;border-top-color:inherit;-webkit-transform:translate(-50%);transform:translate(-50%)}.vue-slider-component .vue-slider-tooltip-wrap.vue-slider-tooltip-bottom .vue-slider-tooltip:before{content:\"\";position:absolute;top:-10px;left:50%;width:0;height:0;border:5px solid transparent;border:6px solid transparent\\\\0;border-bottom-color:inherit;-webkit-transform:translate(-50%);transform:translate(-50%)}.vue-slider-component .vue-slider-tooltip-wrap.vue-slider-tooltip-left .vue-slider-tooltip:before{content:\"\";position:absolute;top:50%;right:-10px;width:0;height:0;border:5px solid transparent;border:6px solid transparent\\\\0;border-left-color:inherit;-webkit-transform:translateY(-50%);transform:translateY(-50%)}.vue-slider-component .vue-slider-tooltip-wrap.vue-slider-tooltip-right .vue-slider-tooltip:before{content:\"\";position:absolute;top:50%;left:-10px;width:0;height:0;border:5px solid transparent;border:6px solid transparent\\\\0;border-right-color:inherit;-webkit-transform:translateY(-50%);transform:translateY(-50%)}.vue-slider-component .vue-slider-dot.vue-slider-hover:hover .vue-slider-tooltip-wrap{display:block}.vue-slider-component .vue-slider-dot.vue-slider-always .vue-slider-tooltip-wrap{display:block!important}.vue-slider-component .vue-slider-piecewise{position:absolute;width:100%;padding:0;margin:0;left:0;top:0;height:100%;list-style:none}.vue-slider-component .vue-slider-piecewise-item{position:absolute;width:8px;height:8px}.vue-slider-component .vue-slider-piecewise-dot{position:absolute;left:50%;top:50%;width:100%;height:100%;display:inline-block;background-color:rgba(0,0,0,.16);border-radius:50%;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%);z-index:2;-webkit-transition:all .3s;transition:all .3s}.vue-slider-component .vue-slider-piecewise-item:first-child .vue-slider-piecewise-dot,.vue-slider-component .vue-slider-piecewise-item:last-child .vue-slider-piecewise-dot{visibility:hidden}.vue-slider-component.vue-slider-horizontal-reverse .vue-slider-piecewise-label,.vue-slider-component.vue-slider-horizontal .vue-slider-piecewise-label{position:absolute;display:inline-block;top:100%;left:50%;white-space:nowrap;font-size:12px;color:#333;-webkit-transform:translate(-50%,8px);transform:translate(-50%,8px);visibility:visible}.vue-slider-component.vue-slider-vertical-reverse .vue-slider-piecewise-label,.vue-slider-component.vue-slider-vertical .vue-slider-piecewise-label{position:absolute;display:inline-block;top:50%;left:100%;white-space:nowrap;font-size:12px;color:#333;-webkit-transform:translate(8px,-50%);transform:translate(8px,-50%);visibility:visible}.vue-slider-component .vue-slider-sr-only{clip:rect(1px,1px,1px,1px);height:1px;width:1px;overflow:hidden;position:absolute!important}',\"\"])},function(t,e){t.exports=function(){var t=[];return t.toString=function(){for(var t=[],e=0;e<this.length;e++){var i=this[e];i[2]?t.push(\"@media \"+i[2]+\"{\"+i[1]+\"}\"):t.push(i[1])}return t.join(\"\")},t.i=function(e,i){\"string\"==typeof e&&(e=[[null,e,\"\"]]);for(var s={},r=0;r<this.length;r++){var n=this[r][0];\"number\"==typeof n&&(s[n]=!0)}for(r=0;r<e.length;r++){var o=e[r];\"number\"==typeof o[0]&&s[o[0]]||(i&&!o[2]?o[2]=i:i&&(o[2]=\"(\"+o[2]+\") and (\"+i+\")\"),t.push(o))}},t}},function(t,e){t.exports=function(t,e,i,s){var r,n=t=t||{},o=typeof t.default;\"object\"!==o&&\"function\"!==o||(r=t,n=t.default);var l=\"function\"==typeof n?n.options:n;if(e&&(l.render=e.render,l.staticRenderFns=e.staticRenderFns),i&&(l._scopeId=i),s){var a=Object.create(l.computed||null);Object.keys(s).forEach(function(t){var e=s[t];a[t]=function(){return e}}),l.computed=a}return{esModule:r,exports:n,options:l}}},function(t,e){t.exports={render:function(){var t=this,e=t.$createElement,i=t._self._c||e;return i(\"div\",{directives:[{name:\"show\",rawName:\"v-show\",value:t.show,expression:\"show\"}],ref:\"wrap\",class:[\"vue-slider-component\",t.flowDirection,t.disabledClass,{\"vue-slider-has-label\":t.piecewiseLabel}],style:t.wrapStyles,on:{click:t.wrapClick}},[i(\"div\",{ref:\"elem\",staticClass:\"vue-slider\",style:[t.elemStyles,t.bgStyle],attrs:{\"aria-hidden\":\"true\"}},[t.isRange?[i(\"div\",{ref:\"dot0\",class:[t.tooltipStatus,\"vue-slider-dot\"],style:[t.dotStyles,t.sliderStyles[0]],on:{mousedown:function(e){t.moveStart(0)},touchstart:function(e){t.moveStart(0)}}},[i(\"span\",{class:[\"vue-slider-tooltip-\"+t.tooltipDirection[0],\"vue-slider-tooltip-wrap\"]},[t._t(\"tooltip\",[i(\"span\",{staticClass:\"vue-slider-tooltip\",style:t.tooltipStyles[0]},[t._v(t._s(t.formatter?t.formatting(t.val[0]):t.val[0]))])],{value:t.val[0],index:0})],2)]),t._v(\" \"),i(\"div\",{ref:\"dot1\",class:[t.tooltipStatus,\"vue-slider-dot\"],style:[t.dotStyles,t.sliderStyles[1]],on:{mousedown:function(e){t.moveStart(1)},touchstart:function(e){t.moveStart(1)}}},[i(\"span\",{class:[\"vue-slider-tooltip-\"+t.tooltipDirection[1],\"vue-slider-tooltip-wrap\"]},[t._t(\"tooltip\",[i(\"span\",{staticClass:\"vue-slider-tooltip\",style:t.tooltipStyles[1]},[t._v(t._s(t.formatter?t.formatting(t.val[1]):t.val[1]))])],{value:t.val[1],index:1})],2)])]:[i(\"div\",{ref:\"dot\",class:[t.tooltipStatus,\"vue-slider-dot\"],style:[t.dotStyles,t.sliderStyles],on:{mousedown:t.moveStart,touchstart:t.moveStart}},[i(\"span\",{class:[\"vue-slider-tooltip-\"+t.tooltipDirection,\"vue-slider-tooltip-wrap\"]},[t._t(\"tooltip\",[i(\"span\",{staticClass:\"vue-slider-tooltip\",style:t.tooltipStyles},[t._v(t._s(t.formatter?t.formatting(t.val):t.val))])],{value:t.val})],2)])],t._v(\" \"),i(\"ul\",{staticClass:\"vue-slider-piecewise\"},t._l(t.piecewiseDotWrap,function(e,s){return i(\"li\",{key:s,staticClass:\"vue-slider-piecewise-item\",style:[t.piecewiseDotStyle,e.style]},[t._t(\"piecewise\",[t.piecewise?i(\"span\",{staticClass:\"vue-slider-piecewise-dot\",style:[t.piecewiseStyle,e.inRange?t.piecewiseActiveStyle:null]}):t._e()],{label:e.label,index:s,first:0===s,last:s===t.piecewiseDotWrap.length-1}),t._v(\" \"),t._t(\"label\",[t.piecewiseLabel?i(\"span\",{staticClass:\"vue-slider-piecewise-label\",style:[t.labelStyle,e.inRange?t.labelActiveStyle:null]},[t._v(\"\\n\\t\\t\\t\\t\\t\\t\"+t._s(e.label)+\"\\n\\t\\t\\t\\t\\t\")]):t._e()],{label:e.label,index:s,first:0===s,last:s===t.piecewiseDotWrap.length-1})],2)})),t._v(\" \"),i(\"div\",{ref:\"process\",staticClass:\"vue-slider-process\",style:t.processStyle})],2),t._v(\" \"),t.isRange||t.data?t._e():i(\"input\",{directives:[{name:\"model\",rawName:\"v-model\",value:t.val,expression:\"val\"}],staticClass:\"vue-slider-sr-only\",attrs:{type:\"range\",min:t.min,max:t.max},domProps:{value:t.val},on:{__r:function(e){t.val=e.target.value}}})])},staticRenderFns:[]}},function(t,e,i){var s=i(3);\"string\"==typeof s&&(s=[[t.i,s,\"\"]]),s.locals&&(t.exports=s.locals);i(8)(\"743d98f5\",s,!0)},function(t,e,i){function s(t){for(var e=0;e<t.length;e++){var i=t[e],s=h[i.id];if(s){s.refs++;for(var r=0;r<s.parts.length;r++)s.parts[r](i.parts[r]);for(;r<i.parts.length;r++)s.parts.push(n(i.parts[r]));s.parts.length>i.parts.length&&(s.parts.length=i.parts.length)}else{for(var o=[],r=0;r<i.parts.length;r++)o.push(n(i.parts[r]));h[i.id]={id:i.id,refs:1,parts:o}}}}function r(){var t=document.createElement(\"style\");return t.type=\"text/css\",d.appendChild(t),t}function n(t){var e,i,s=document.querySelector('style[data-vue-ssr-id~=\"'+t.id+'\"]');if(s){if(f)return v;s.parentNode.removeChild(s)}if(m){var n=c++;s=p||(p=r()),e=o.bind(null,s,n,!1),i=o.bind(null,s,n,!0)}else s=r(),e=l.bind(null,s),i=function(){s.parentNode.removeChild(s)};return e(t),function(s){if(s){if(s.css===t.css&&s.media===t.media&&s.sourceMap===t.sourceMap)return;e(t=s)}else i()}}function o(t,e,i,s){var r=i?\"\":s.css;if(t.styleSheet)t.styleSheet.cssText=g(e,r);else{var n=document.createTextNode(r),o=t.childNodes;o[e]&&t.removeChild(o[e]),o.length?t.insertBefore(n,o[e]):t.appendChild(n)}}function l(t,e){var i=e.css,s=e.media,r=e.sourceMap;if(s&&t.setAttribute(\"media\",s),r&&(i+=\"\\n/*# sourceURL=\"+r.sources[0]+\" */\",i+=\"\\n/*# sourceMappingURL=data:application/json;base64,\"+btoa(unescape(encodeURIComponent(JSON.stringify(r))))+\" */\"),t.styleSheet)t.styleSheet.cssText=i;else{for(;t.firstChild;)t.removeChild(t.firstChild);t.appendChild(document.createTextNode(i))}}var a=\"undefined\"!=typeof document;if(\"undefined\"!=typeof DEBUG&&DEBUG&&!a)throw new Error(\"vue-style-loader cannot be used in a non-browser environment. Use { target: 'node' } in your Webpack config to indicate a server-rendering environment.\");var u=i(9),h={},d=a&&(document.head||document.getElementsByTagName(\"head\")[0]),p=null,c=0,f=!1,v=function(){},m=\"undefined\"!=typeof navigator&&/msie [6-9]\\b/.test(navigator.userAgent.toLowerCase());t.exports=function(t,e,i){f=i;var r=u(t,e);return s(r),function(e){for(var i=[],n=0;n<r.length;n++){var o=r[n],l=h[o.id];l.refs--,i.push(l)}e?(r=u(t,e),s(r)):r=[];for(var n=0;n<i.length;n++){var l=i[n];if(0===l.refs){for(var a=0;a<l.parts.length;a++)l.parts[a]();delete h[l.id]}}}};var g=function(){var t=[];return function(e,i){return t[e]=i,t.filter(Boolean).join(\"\\n\")}}()},function(t,e){t.exports=function(t,e){for(var i=[],s={},r=0;r<e.length;r++){var n=e[r],o=n[0],l=n[1],a=n[2],u=n[3],h={id:t+\":\"+r,css:l,media:a,sourceMap:u};s[o]?s[o].parts.push(h):i.push(s[o]={id:o,parts:[h]})}return i}}])});\n\n/***/ }),\n/* 16 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\nvar render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{attrs:{\"id\":\"geshem\"}},[_c('div',{attrs:{\"id\":\"datetime\"}},[_c('div',{attrs:{\"id\":\"date\"}},[_vm._v(_vm._s(_vm.date))]),_vm._v(\" \"),_c('div',{attrs:{\"id\":\"time\"}},[_vm._v(_vm._s(_vm.time))])]),_vm._v(\" \"),_c('div',{attrs:{\"id\":\"slider\"}},[_c('vue-slider',{ref:\"slider\",attrs:{\"min\":1,\"max\":7,\"height\":20,\"dot-size\":45,\"tooltip\":false},model:{value:(_vm.slider),callback:function ($$v) {_vm.slider=$$v},expression:\"slider\"}})],1)])}\nvar staticRenderFns = []\nvar esExports = { render: render, staticRenderFns: staticRenderFns }\n/* harmony default export */ __webpack_exports__[\"a\"] = (esExports);\n\n/***/ })\n/******/ ]);\n\n\n// WEBPACK FOOTER //\n// build.js"," \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// 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 = \"/static/js/\";\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = 2);\n\n\n\n// WEBPACK FOOTER //\n// webpack/bootstrap 28c446f8136708d15869","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","(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;o<r.length;o++)s(r[o]);return s})({1:[function(_dereq_,module,exports){\n!function(t,n){\"object\"==typeof exports&&\"undefined\"!=typeof module?module.exports=n():\"function\"==typeof define&&define.amd?define(n):t.glMatrix=n()}(this,function(){\"use strict\";function t(t,n,r){var e=n[0],a=n[1],o=n[2];return t[0]=e*r[0]+a*r[3]+o*r[6],t[1]=e*r[1]+a*r[4]+o*r[7],t[2]=e*r[2]+a*r[5]+o*r[8],t}function n(t,n,r){var e=n[0],a=n[1],o=n[2],u=n[3];return t[0]=r[0]*e+r[4]*a+r[8]*o+r[12]*u,t[1]=r[1]*e+r[5]*a+r[9]*o+r[13]*u,t[2]=r[2]*e+r[6]*a+r[10]*o+r[14]*u,t[3]=r[3]*e+r[7]*a+r[11]*o+r[15]*u,t}function r(){var t=new Float32Array(4);return t[0]=1,t[1]=0,t[2]=0,t[3]=1,t}function e(t,n,r){var e=n[0],a=n[1],o=n[2],u=n[3],i=Math.sin(r),c=Math.cos(r);return t[0]=e*c+o*i,t[1]=a*c+u*i,t[2]=e*-i+o*c,t[3]=a*-i+u*c,t}function a(t,n,r){var e=n[0],a=n[1],o=n[2],u=n[3],i=r[0],c=r[1];return t[0]=e*i,t[1]=a*i,t[2]=o*c,t[3]=u*c,t}function o(){var t=new Float32Array(9);return t[0]=1,t[1]=0,t[2]=0,t[3]=0,t[4]=1,t[5]=0,t[6]=0,t[7]=0,t[8]=1,t}function u(t,n){var r=Math.sin(n),e=Math.cos(n);return t[0]=e,t[1]=r,t[2]=0,t[3]=-r,t[4]=e,t[5]=0,t[6]=0,t[7]=0,t[8]=1,t}function i(){var t=new Float32Array(16);return t[0]=1,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=1,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[10]=1,t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,t}function c(t){return t[0]=1,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=1,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[10]=1,t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,t}function f(t,n){var r=n[0],e=n[1],a=n[2],o=n[3],u=n[4],i=n[5],c=n[6],f=n[7],v=n[8],s=n[9],l=n[10],M=n[11],h=n[12],m=n[13],y=n[14],d=n[15],p=r*i-e*u,w=r*c-a*u,A=r*f-o*u,F=e*c-a*i,x=e*f-o*i,b=a*f-o*c,g=v*m-s*h,j=v*y-l*h,R=v*d-M*h,X=s*y-l*m,Z=s*d-M*m,k=l*d-M*y,q=p*k-w*Z+A*X+F*R-x*j+b*g;return q?(q=1/q,t[0]=(i*k-c*Z+f*X)*q,t[1]=(a*Z-e*k-o*X)*q,t[2]=(m*b-y*x+d*F)*q,t[3]=(l*x-s*b-M*F)*q,t[4]=(c*R-u*k-f*j)*q,t[5]=(r*k-a*R+o*j)*q,t[6]=(y*A-h*b-d*w)*q,t[7]=(v*b-l*A+M*w)*q,t[8]=(u*Z-i*R+f*g)*q,t[9]=(e*R-r*Z-o*g)*q,t[10]=(h*x-m*A+d*p)*q,t[11]=(s*A-v*x-M*p)*q,t[12]=(i*j-u*X-c*g)*q,t[13]=(r*X-e*j+a*g)*q,t[14]=(m*w-h*F-y*p)*q,t[15]=(v*F-s*w+l*p)*q,t):null}function v(t,n,r){var e=n[0],a=n[1],o=n[2],u=n[3],i=n[4],c=n[5],f=n[6],v=n[7],s=n[8],l=n[9],M=n[10],h=n[11],m=n[12],y=n[13],d=n[14],p=n[15],w=r[0],A=r[1],F=r[2],x=r[3];return t[0]=w*e+A*i+F*s+x*m,t[1]=w*a+A*c+F*l+x*y,t[2]=w*o+A*f+F*M+x*d,t[3]=w*u+A*v+F*h+x*p,w=r[4],A=r[5],F=r[6],x=r[7],t[4]=w*e+A*i+F*s+x*m,t[5]=w*a+A*c+F*l+x*y,t[6]=w*o+A*f+F*M+x*d,t[7]=w*u+A*v+F*h+x*p,w=r[8],A=r[9],F=r[10],x=r[11],t[8]=w*e+A*i+F*s+x*m,t[9]=w*a+A*c+F*l+x*y,t[10]=w*o+A*f+F*M+x*d,t[11]=w*u+A*v+F*h+x*p,w=r[12],A=r[13],F=r[14],x=r[15],t[12]=w*e+A*i+F*s+x*m,t[13]=w*a+A*c+F*l+x*y,t[14]=w*o+A*f+F*M+x*d,t[15]=w*u+A*v+F*h+x*p,t}function s(t,n,r){var e,a,o,u,i,c,f,v,s,l,M,h,m=r[0],y=r[1],d=r[2];return n===t?(t[12]=n[0]*m+n[4]*y+n[8]*d+n[12],t[13]=n[1]*m+n[5]*y+n[9]*d+n[13],t[14]=n[2]*m+n[6]*y+n[10]*d+n[14],t[15]=n[3]*m+n[7]*y+n[11]*d+n[15]):(e=n[0],a=n[1],o=n[2],u=n[3],i=n[4],c=n[5],f=n[6],v=n[7],s=n[8],l=n[9],M=n[10],h=n[11],t[0]=e,t[1]=a,t[2]=o,t[3]=u,t[4]=i,t[5]=c,t[6]=f,t[7]=v,t[8]=s,t[9]=l,t[10]=M,t[11]=h,t[12]=e*m+i*y+s*d+n[12],t[13]=a*m+c*y+l*d+n[13],t[14]=o*m+f*y+M*d+n[14],t[15]=u*m+v*y+h*d+n[15]),t}function l(t,n,r){var e=r[0],a=r[1],o=r[2];return t[0]=n[0]*e,t[1]=n[1]*e,t[2]=n[2]*e,t[3]=n[3]*e,t[4]=n[4]*a,t[5]=n[5]*a,t[6]=n[6]*a,t[7]=n[7]*a,t[8]=n[8]*o,t[9]=n[9]*o,t[10]=n[10]*o,t[11]=n[11]*o,t[12]=n[12],t[13]=n[13],t[14]=n[14],t[15]=n[15],t}function M(t,n,r){var e=Math.sin(r),a=Math.cos(r),o=n[4],u=n[5],i=n[6],c=n[7],f=n[8],v=n[9],s=n[10],l=n[11];return n!==t&&(t[0]=n[0],t[1]=n[1],t[2]=n[2],t[3]=n[3],t[12]=n[12],t[13]=n[13],t[14]=n[14],t[15]=n[15]),t[4]=o*a+f*e,t[5]=u*a+v*e,t[6]=i*a+s*e,t[7]=c*a+l*e,t[8]=f*a-o*e,t[9]=v*a-u*e,t[10]=s*a-i*e,t[11]=l*a-c*e,t}function h(t,n,r){var e=Math.sin(r),a=Math.cos(r),o=n[0],u=n[1],i=n[2],c=n[3],f=n[4],v=n[5],s=n[6],l=n[7];return n!==t&&(t[8]=n[8],t[9]=n[9],t[10]=n[10],t[11]=n[11],t[12]=n[12],t[13]=n[13],t[14]=n[14],t[15]=n[15]),t[0]=o*a+f*e,t[1]=u*a+v*e,t[2]=i*a+s*e,t[3]=c*a+l*e,t[4]=f*a-o*e,t[5]=v*a-u*e,t[6]=s*a-i*e,t[7]=l*a-c*e,t}function m(t,n,r,e,a){var o=1/Math.tan(n/2),u=1/(e-a);return t[0]=o/r,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=o,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[10]=(a+e)*u,t[11]=-1,t[12]=0,t[13]=0,t[14]=2*a*e*u,t[15]=0,t}function y(t,n,r,e,a,o,u){var i=1/(n-r),c=1/(e-a),f=1/(o-u);return t[0]=-2*i,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=-2*c,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[10]=2*f,t[11]=0,t[12]=(n+r)*i,t[13]=(a+e)*c,t[14]=(u+o)*f,t[15]=1,t}(function(){var t=new Float32Array(3);t[0]=0,t[1]=0,t[2]=0})(),function(){var t=new Float32Array(4);t[0]=0,t[1]=0,t[2]=0,t[3]=0}();return{vec3:{transformMat3:t},vec4:{transformMat4:n},mat2:{create:r,rotate:e,scale:a},mat3:{create:o,fromRotation:u},mat4:{create:i,identity:c,translate:s,scale:l,multiply:v,perspective:m,rotateX:M,rotateZ:h,invert:f,ortho:y}}});\n},{}],2:[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)},multByPoint:function(t){return this.clone()._multByPoint(t)},divByPoint:function(t){return this.clone()._divByPoint(t)},mult:function(t){return this.clone()._mult(t)},div:function(t){return this.clone()._div(t)},rotate:function(t){return this.clone()._rotate(t)},rotateAround:function(t,n){return this.clone()._rotateAround(t,n)},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},_multByPoint:function(t){return this.x*=t.x,this.y*=t.y,this},_divByPoint:function(t){return this.x/=t.x,this.y/=t.y,this},_unit:function(){return this._div(this.mag()),this},_perp:function(){var t=this.y;return this.y=this.x,this.x=-t,this},_rotate:function(t){var 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},_rotateAround:function(t,n){var i=Math.cos(t),s=Math.sin(t),r=n.x+i*(this.x-n.x)-s*(this.y-n.y),h=n.y+s*(this.x-n.x)+i*(this.y-n.y);return this.x=r,this.y=h,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},{}],3:[function(_dereq_,module,exports){\n!function(t,e){\"object\"==typeof exports&&\"undefined\"!=typeof module?module.exports=e():\"function\"==typeof define&&define.amd?define(e):t.ShelfPack=e()}(this,function(){function t(t,e,i){i=i||{},this.w=t||64,this.h=e||64,this.autoResize=!!i.autoResize,this.shelves=[],this.freebins=[],this.stats={},this.bins={},this.maxId=0}function e(t,e,i){this.x=0,this.y=t,this.w=this.free=e,this.h=i}function i(t,e,i,s,h,n,r){this.id=t,this.x=e,this.y=i,this.w=s,this.h=h,this.maxw=n||s,this.maxh=r||h,this.refcount=0}return t.prototype.pack=function(t,e){t=[].concat(t),e=e||{};for(var i,s,h,n,r=[],f=0;f<t.length;f++)if(i=t[f].w||t[f].width,s=t[f].h||t[f].height,h=t[f].id,i&&s){if(!(n=this.packOne(i,s,h)))continue;e.inPlace&&(t[f].x=n.x,t[f].y=n.y,t[f].id=n.id),r.push(n)}return this.shrink(),r},t.prototype.packOne=function(t,i,s){var h,n,r,f,o={freebin:-1,shelf:-1,waste:1/0},a=0;if(\"string\"==typeof s||\"number\"==typeof s){if(h=this.getBin(s))return this.ref(h),h;\"number\"==typeof s&&(this.maxId=Math.max(s,this.maxId))}else s=++this.maxId;for(f=0;f<this.freebins.length;f++){if(h=this.freebins[f],i===h.maxh&&t===h.maxw)return this.allocFreebin(f,t,i,s);i>h.maxh||t>h.maxw||i<=h.maxh&&t<=h.maxw&&(r=h.maxw*h.maxh-t*i)<o.waste&&(o.waste=r,o.freebin=f)}for(f=0;f<this.shelves.length;f++)if(n=this.shelves[f],a+=n.h,!(t>n.free)){if(i===n.h)return this.allocShelf(f,t,i,s);i>n.h||i<n.h&&(r=(n.h-i)*t)<o.waste&&(o.freebin=-1,o.waste=r,o.shelf=f)}if(-1!==o.freebin)return this.allocFreebin(o.freebin,t,i,s);if(-1!==o.shelf)return this.allocShelf(o.shelf,t,i,s);if(i<=this.h-a&&t<=this.w)return n=new e(a,this.w,i),this.allocShelf(this.shelves.push(n)-1,t,i,s);if(this.autoResize){var u,l,c,p;return u=l=this.h,c=p=this.w,(c<=u||t>c)&&(p=2*Math.max(t,c)),(u<c||i>u)&&(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.shrink=function(){if(this.shelves.length>0){for(var t=0,e=0,i=0;i<this.shelves.length;i++){var s=this.shelves[i];e+=s.h,t=Math.max(s.w-s.free,t)}this.resize(t,e)}},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;i<this.shelves.length;i++)this.shelves[i].resize(t);return!0},e.prototype.alloc=function(t,e,s){if(t>this.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},{}],4:[function(_dereq_,module,exports){\n\"use strict\";function TinySDF(t,i,s,e,h,r){this.fontSize=t||24,this.buffer=void 0===i?3:i,this.cutoff=e||.25,this.fontFamily=h||\"sans-serif\",this.fontWeight=r||\"normal\",this.radius=s||8;var a=this.size=this.fontSize+2*this.buffer;this.canvas=document.createElement(\"canvas\"),this.canvas.width=this.canvas.height=a,this.ctx=this.canvas.getContext(\"2d\"),this.ctx.font=this.fontWeight+\" \"+this.fontSize+\"px \"+this.fontFamily,this.ctx.textBaseline=\"middle\",this.ctx.fillStyle=\"black\",this.gridOuter=new Float64Array(a*a),this.gridInner=new Float64Array(a*a),this.f=new Float64Array(a),this.d=new Float64Array(a),this.z=new Float64Array(a+1),this.v=new Int16Array(a),this.middle=Math.round(a/2*(navigator.userAgent.indexOf(\"Gecko/\")>=0?1.2:1))}function edt(t,i,s,e,h,r,a){for(var n=0;n<i;n++){for(var o=0;o<s;o++)e[o]=t[o*i+n];for(edt1d(e,h,r,a,s),o=0;o<s;o++)t[o*i+n]=h[o]}for(o=0;o<s;o++){for(n=0;n<i;n++)e[n]=t[o*i+n];for(edt1d(e,h,r,a,i),n=0;n<i;n++)t[o*i+n]=Math.sqrt(h[n])}}function edt1d(t,i,s,e,h){s[0]=0,e[0]=-INF,e[1]=+INF;for(var r=1,a=0;r<h;r++){for(var n=(t[r]+r*r-(t[s[a]]+s[a]*s[a]))/(2*r-2*s[a]);n<=e[a];)a--,n=(t[r]+r*r-(t[s[a]]+s[a]*s[a]))/(2*r-2*s[a]);a++,s[a]=r,e[a]=n,e[a+1]=+INF}for(r=0,a=0;r<h;r++){for(;e[a+1]<r;)a++;i[r]=(r-s[a])*(r-s[a])+t[s[a]]}}module.exports=TinySDF;var INF=1e20;TinySDF.prototype.draw=function(t){this.ctx.clearRect(0,0,this.size,this.size),this.ctx.fillText(t,this.buffer,this.middle);for(var i=this.ctx.getImageData(0,0,this.size,this.size),s=new Uint8ClampedArray(this.size*this.size),e=0;e<this.size*this.size;e++){var h=i.data[4*e+3]/255;this.gridOuter[e]=1===h?0:0===h?INF:Math.pow(Math.max(0,.5-h),2),this.gridInner[e]=1===h?INF:0===h?0:Math.pow(Math.max(0,h-.5),2)}for(edt(this.gridOuter,this.size,this.size,this.f,this.d,this.v,this.z),edt(this.gridInner,this.size,this.size,this.f,this.d,this.v,this.z),e=0;e<this.size*this.size;e++){var r=this.gridOuter[e]-this.gridInner[e];s[e]=Math.max(0,Math.min(255,Math.round(255-255*(r/this.radius+this.cutoff))))}return s};\n},{}],5:[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){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)<i)return s;var u=this.sampleCurveDerivativeX(s);if(Math.abs(u)<1e-6)break;s-=h/u}if(e=0,r=1,(s=t)<e)return e;if(s>r)return r;for(;e<r;){if(h=this.sampleCurveX(s),Math.abs(h-t)<i)return s;t>h?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},{}],6:[function(_dereq_,module,exports){\nmodule.exports.VectorTile=_dereq_(\"./lib/vectortile.js\"),module.exports.VectorTileFeature=_dereq_(\"./lib/vectortilefeature.js\"),module.exports.VectorTileLayer=_dereq_(\"./lib/vectortilelayer.js\");\n},{\"./lib/vectortile.js\":7,\"./lib/vectortilefeature.js\":8,\"./lib/vectortilelayer.js\":9}],7:[function(_dereq_,module,exports){\n\"use strict\";function VectorTile(e,r){this.layers=e.readFields(readTile,{},r)}function readTile(e,r,i){if(3===e){var t=new VectorTileLayer(i,i.readVarint()+i.pos);t.length&&(r[t.name]=t)}}var VectorTileLayer=_dereq_(\"./vectortilelayer\");module.exports=VectorTile;\n},{\"./vectortilelayer\":9}],8:[function(_dereq_,module,exports){\n\"use strict\";function VectorTileFeature(e,t,r,a,i){this.properties={},this.extent=r,this.type=0,this._pbf=e,this._geometry=-1,this._keys=a,this._values=i,e.readFields(readFeature,this,t)}function readFeature(e,t,r){1==e?t.id=r.readVarint():2==e?readTag(r,t):3==e?t.type=r.readVarint():4==e&&(t._geometry=r.pos)}function readTag(e,t){for(var r=e.readVarint()+e.pos;e.pos<r;){var a=t._keys[e.readVarint()],i=t._values[e.readVarint()];t.properties[a]=i}}function classifyRings(e){var t=e.length;if(t<=1)return[e];for(var r,a,i=[],o=0;o<t;o++){var n=signedArea(e[o]);0!==n&&(void 0===a&&(a=n<0),a===n<0?(r&&i.push(r),r=[e[o]]):r.push(e[o]))}return r&&i.push(r),i}function signedArea(e){for(var t,r,a=0,i=0,o=e.length,n=o-1;i<o;n=i++)t=e[i],r=e[n],a+=(r.x-t.x)*(t.y+r.y);return a}var Point=_dereq_(\"@mapbox/point-geometry\");module.exports=VectorTileFeature,VectorTileFeature.types=[\"Unknown\",\"Point\",\"LineString\",\"Polygon\"],VectorTileFeature.prototype.loadGeometry=function(){var e=this._pbf;e.pos=this._geometry;for(var t,r=e.readVarint()+e.pos,a=1,i=0,o=0,n=0,s=[];e.pos<r;){if(!i){var p=e.readVarint();a=7&p,i=p>>3}if(i--,1===a||2===a)o+=e.readSVarint(),n+=e.readSVarint(),1===a&&(t&&s.push(t),t=[]),t.push(new Point(o,n));else{if(7!==a)throw new Error(\"unknown command \"+a);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,a=0,i=0,o=0,n=1/0,s=-1/0,p=1/0,h=-1/0;e.pos<t;){if(!a){var u=e.readVarint();r=7&u,a=u>>3}if(a--,1===r||2===r)i+=e.readSVarint(),o+=e.readSVarint(),i<n&&(n=i),i>s&&(s=i),o<p&&(p=o),o>h&&(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 a(e){for(var t=0;t<e.length;t++){var r=e[t],a=180-360*(r.y+p)/n;e[t]=[360*(r.x+s)/n-180,360/Math.PI*Math.atan(Math.exp(a*Math.PI/180))-90]}}var i,o,n=this.extent*Math.pow(2,r),s=this.extent*e,p=this.extent*t,h=this.loadGeometry(),u=VectorTileFeature.types[this.type];switch(this.type){case 1:var d=[];for(i=0;i<h.length;i++)d[i]=h[i][0];h=d,a(h);break;case 2:for(i=0;i<h.length;i++)a(h[i]);break;case 3:for(h=classifyRings(h),i=0;i<h.length;i++)for(o=0;o<h[i].length;o++)a(h[i][o])}1===h.length?h=h[0]:u=\"Multi\"+u;var f={type:\"Feature\",geometry:{type:u,coordinates:h},properties:this.properties};return\"id\"in this&&(f.id=this.id),f};\n},{\"@mapbox/point-geometry\":2}],9:[function(_dereq_,module,exports){\n\"use strict\";function VectorTileLayer(e,t){this.version=1,this.name=null,this.extent=4096,this.length=0,this._pbf=e,this._keys=[],this._values=[],this._features=[],e.readFields(readLayer,this,t),this.length=this._features.length}function readLayer(e,t,r){15===e?t.version=r.readVarint():1===e?t.name=r.readString():5===e?t.extent=r.readVarint():2===e?t._features.push(r.pos):3===e?t._keys.push(r.readString()):4===e&&t._values.push(readValueMessage(r))}function readValueMessage(e){for(var t=null,r=e.readVarint()+e.pos;e.pos<r;){var a=e.readVarint()>>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\":8}],10:[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){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){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);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})});\n},{}],11:[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;d<i;d+=r)v=e[d],f=e[d+1],v<o&&(o=v),f<l&&(l=f),v>u&&(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<r;x+=t)a=insertNode(x,e[x],e[x+1],a);else for(x=r-t;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.x<x.x?i.x<a.x?i.x:a.x:x.x<a.x?x.x:a.x,l=i.y<x.y?i.y<a.y?i.y:a.y:x.y<a.y?x.y:a.y,u=i.x>x.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<x;i++)a=n[i]*t,o=i<x-1?n[i+1]*t:e.length,l=linkedList(e,a,o,t,!1),l===l.next&&(l.steiner=!0),u.push(getLeftmost(l));for(u.sort(compareX),i=0;i<u.length;i++)eliminateHole(u[i],r),r=filterPoints(r,r.next);return r}function compareX(e,n){return e.x-n.x}function eliminateHole(e,n){if(n=findHoleBridge(e,n)){var r=splitPolygon(n,e);filterPoints(r,r.next)}}function findHoleBridge(e,n){var r,t=n,i=e.x,x=e.y,a=-1/0;do{if(x<=t.y&&x>=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.next.x?t:t.next}}t=t.next}while(t!==n);if(!r)return null;if(i===a)return r.prev;var l,u=r,s=r.x,v=r.y,f=1/0;for(t=r.next;t!==u;)i>=t.x&&t.x>=s&&pointInTriangle(x<v?i:a,x,s,v,x<v?a:i,x,t.x,t.y)&&((l=Math.abs(x-t.y)/(i-t.x))<f||l===f&&t.x>r.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;n<u&&(o++,t=t.nextZ);n++);for(l=u;o>0||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<r.x&&(r=n),n=n.next}while(n!==e);return r}function pointInTriangle(e,n,r,t,i,x,a,o){return(i-a)*(n-o)-(e-a)*(x-o)>=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;x<r;x+=t)i+=(e[a]-e[x])*(e[x+1]+e[a+1]),a=x;return i}module.exports=earcut,earcut.deviation=function(e,n,r,t){var i=n&&n.length,x=i?n[0]*r:e.length,a=Math.abs(signedArea(e,0,x,r));if(i)for(var o=0,l=n.length;o<l;o++){var u=n[o]*r,s=o<l-1?n[o+1]*r:e.length;a-=Math.abs(signedArea(e,u,s,r))}var v=0;for(o=0;o<t.length;o+=3){var f=t[o]*r,y=t[o+1]*r,d=t[o+2]*r;v+=Math.abs((e[f]-e[d])*(e[y+1]-e[f+1])-(e[f]-e[y])*(e[d+1]-e[f+1]))}return 0===a&&0===v?0:Math.abs((v-a)/a)},earcut.flatten=function(e){for(var n=e[0][0].length,r={vertices:[],holes:[],dimensions:n},t=0,i=0;i<e.length;i++){for(var x=0;x<e[i].length;x++)for(var a=0;a<n;a++)r.vertices.push(e[i][x][a]);i>0&&(t+=e[i-1].length,r.holes.push(t))}return r};\n},{}],12:[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;n<r.coordinates.length;n++)e+=polygonArea(r.coordinates[n]);return e}return null}function polygonArea(r){var e=0;if(r&&r.length>0){e+=Math.abs(ringArea(r[0]));for(var n=1;n<r.length;n++)e-=Math.abs(ringArea(r[n]))}return e}function ringArea(r){var e=0;if(r.length>2){for(var n,t,o=0;o<r.length-1;o++)n=r[o],t=r[o+1],e+=rad(t[0]-n[0])*(2+Math.sin(rad(n[1]))+Math.sin(rad(t[1])));e=e*wgs84.RADIUS*wgs84.RADIUS/2}return e}function rad(r){return r*Math.PI/180}var wgs84=_dereq_(\"wgs84\");module.exports.geometry=geometry,module.exports.ring=ringArea;\n},{\"wgs84\":40}],13:[function(_dereq_,module,exports){\nfunction rewind(r,e){switch(r&&r.type||null){case\"FeatureCollection\":return r.features=r.features.map(curryOuter(rewind,e)),r;case\"Feature\":return r.geometry=rewind(r.geometry,e),r;case\"Polygon\":case\"MultiPolygon\":return correct(r,e);default:return r}}function curryOuter(r,e){return function(n){return r(n,e)}}function correct(r,e){return\"Polygon\"===r.type?r.coordinates=correctRings(r.coordinates,e):\"MultiPolygon\"===r.type&&(r.coordinates=r.coordinates.map(curryOuter(correctRings,e))),r}function correctRings(r,e){e=!!e,r[0]=wind(r[0],e);for(var n=1;n<r.length;n++)r[n]=wind(r[n],!e);return r}function wind(r,e){return cw(r)===e?r:r.reverse()}function cw(r){return geojsonArea.ring(r)>=0}var geojsonArea=_dereq_(\"geojson-area\");module.exports=rewind;\n},{\"geojson-area\":12}],14:[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)return null;for(var h=[],p=0;p<e.length;p++){var a,c,o=e[p],f=o.geometry,g=o.type;if(a=o.min[u],c=o.max[u],a>=t&&c<=n)h.push(o);else if(!(a>n||c<t)){var v=1===g?clipPoints(f,t,n,u):clipGeometry(f,t,n,u,i,3===g);v.length&&h.push(createFeature(o.tags,g,v,o.id))}}return h.length?h:null}function clipPoints(e,r,t,n){for(var u=[],i=0;i<e.length;i++){var l=e[i],s=l[n];s>=r&&s<=t&&u.push(l)}return u}function clipGeometry(e,r,t,n,u,i){for(var l=[],s=0;s<e.length;s++){var h,p,a,c=0,o=0,f=null,g=e[s],v=g.area,m=g.dist,w=g.outer,S=g.length,d=[];for(p=0;p<S-1;p++)h=f||g[p],f=g[p+1],c=o||h[n],o=f[n],c<r?o>t?(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?o<r?(d.push(u(h,f,t),u(h,f,r)),i||(d=newSlice(l,d,v,m,w))):o<=t&&d.push(u(h,f,t)):(d.push(h),o<r?(d.push(u(h,f,r)),i||(d=newSlice(l,d,v,m,w))):o>t&&(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\":16}],15:[function(_dereq_,module,exports){\n\"use strict\";function convert(e,t){var r=[];if(\"FeatureCollection\"===e.type)for(var o=0;o<e.features.length;o++)convertFeature(r,e.features[o],t);else\"Feature\"===e.type?convertFeature(r,e,t):convertFeature(r,{geometry:e},t);return r}function convertFeature(e,t,r){if(null!==t.geometry){var o,a,i,n,u=t.geometry,c=u.type,l=u.coordinates,s=t.properties,p=t.id;if(\"Point\"===c)e.push(createFeature(s,1,[projectPoint(l)],p));else if(\"MultiPoint\"===c)e.push(createFeature(s,1,project(l),p));else if(\"LineString\"===c)e.push(createFeature(s,2,[project(l,r)],p));else if(\"MultiLineString\"===c||\"Polygon\"===c){for(i=[],o=0;o<l.length;o++)n=project(l[o],r),\"Polygon\"===c&&(n.outer=0===o),i.push(n);e.push(createFeature(s,\"Polygon\"===c?3:2,i,p))}else if(\"MultiPolygon\"===c){for(i=[],o=0;o<l.length;o++)for(a=0;a<l[o].length;a++)n=project(l[o][a],r),n.outer=0===a,i.push(n);e.push(createFeature(s,3,i,p))}else{if(\"GeometryCollection\"!==c)throw new Error(\"Input data is not a valid GeoJSON object.\");for(o=0;o<u.geometries.length;o++)convertFeature(e,{geometry:u.geometries[o],properties:s},r)}}}function project(e,t){for(var r=[],o=0;o<e.length;o++)r.push(projectPoint(e[o]));return t&&(simplify(r,t),calcSize(r)),r}function projectPoint(e){var t=Math.sin(e[1]*Math.PI/180),r=e[0]/360+.5,o=.5-.25*Math.log((1+t)/(1-t))/Math.PI;return o=o<0?0:o>1?1:o,[r,o,0]}function calcSize(e){for(var t,r,o=0,a=0,i=0;i<e.length-1;i++)t=r||e[i],r=e[i+1],o+=t[0]*r[1]-r[0]*t[1],a+=Math.abs(r[0]-t[0])+Math.abs(r[1]-t[1]);e.area=Math.abs(o/2),e.dist=a}module.exports=convert;var simplify=_dereq_(\"./simplify\"),createFeature=_dereq_(\"./feature\");\n},{\"./feature\":16,\"./simplify\":18}],16:[function(_dereq_,module,exports){\n\"use strict\";function createFeature(e,t,a,n){var r={id:n||null,type:t,geometry:a,tags:e||null,min:[1/0,1/0],max:[-1/0,-1/0]};return calcBBox(r),r}function calcBBox(e){var t=e.geometry,a=e.min,n=e.max;if(1===e.type)calcRingBBox(a,n,t);else for(var r=0;r<t.length;r++)calcRingBBox(a,n,t[r]);return e}function calcRingBBox(e,t,a){for(var n,r=0;r<a.length;r++)n=a[r],e[0]=Math.min(n[0],e[0]),t[0]=Math.max(n[0],t[0]),e[1]=Math.min(n[1],e[1]),t[1]=Math.max(n[1],t[1])}module.exports=createFeature;\n},{}],17:[function(_dereq_,module,exports){\n\"use strict\";function geojsonvt(e,t){return new GeoJSONVT(e,t)}function GeoJSONVT(e,t){t=this.options=extend(Object.create(this.options),t);var i=t.debug;i&&console.time(\"preprocess data\");var o=1<<t.maxZoom,n=convert(e,t.tolerance/(o*t.extent));this.tiles={},this.tileCoords=[],i&&(console.timeEnd(\"preprocess data\"),console.log(\"index: maxZoom: %d, maxPoints: %d\",t.indexMaxZoom,t.indexMaxPoints),console.time(\"generate tiles\"),this.stats={},this.total=0),n=wrap(n,t.buffer/t.extent,intersectX),n.length&&this.splitTile(n,0,0,0),i&&(n.length&&console.log(\"features: %d, points: %d\",this.tiles[0].numFeatures,this.tiles[0].numPoints),console.timeEnd(\"generate tiles\"),console.log(\"tiles generated:\",this.total,JSON.stringify(this.stats)))}function toID(e,t,i){return 32*((1<<e)*i+t)+e}function intersectX(e,t,i){return[i,(i-e[0])*(t[1]-e[1])/(t[0]-e[0])+e[1],1]}function intersectY(e,t,i){return[(i-e[1])*(t[0]-e[0])/(t[1]-e[1])+e[0],i,1]}function extend(e,t){for(var i in t)e[i]=t[i];return e}function isClippedSquare(e,t,i){var o=e.source;if(1!==o.length)return!1;var n=o[0];if(3!==n.type||n.geometry.length>1)return!1;var r=n.geometry[0].length;if(5!==r)return!1;for(var s=0;s<r;s++){var l=transform.point(n.geometry[0][s],t,e.z2,e.x,e.y);if(l[0]!==-i&&l[0]!==t+i||l[1]!==-i&&l[1]!==t+i)return!1}return!0}module.exports=geojsonvt;var convert=_dereq_(\"./convert\"),transform=_dereq_(\"./transform\"),clip=_dereq_(\"./clip\"),wrap=_dereq_(\"./wrap\"),createTile=_dereq_(\"./tile\");GeoJSONVT.prototype.options={maxZoom:14,indexMaxZoom:5,indexMaxPoints:1e5,solidChildren:!1,tolerance:3,extent:4096,buffer:64,debug:0},GeoJSONVT.prototype.splitTile=function(e,t,i,o,n,r,s){for(var l=[e,t,i,o],a=this.options,u=a.debug,c=null;l.length;){o=l.pop(),i=l.pop(),t=l.pop(),e=l.pop();var p=1<<t,d=toID(t,i,o),m=this.tiles[d],f=t===a.maxZoom?0:a.tolerance/(p*a.extent);if(!m&&(u>1&&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<<n-t;if(i!==Math.floor(r/x)||o!==Math.floor(s/x))continue}else if(t===a.indexMaxZoom||m.numPoints<=a.indexMaxPoints)continue;if(a.solidChildren||!isClippedSquare(m,a.extent,a.buffer)){m.source=null,u>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<<e;t=(t%s+s)%s;var l=toID(e,t,i);if(this.tiles[l])return transform.tile(this.tiles[l],n);r>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<<e-d;l=toID(d,Math.floor(t/m),Math.floor(i/m))}return this.tiles[l]?transform.tile(this.tiles[l],n):null};\n},{\"./clip\":14,\"./convert\":15,\"./tile\":19,\"./transform\":20,\"./wrap\":21}],18:[function(_dereq_,module,exports){\n\"use strict\";function simplify(t,i){var e,p,r,s,o=i*i,f=t.length,u=0,n=f-1,g=[];for(t[u][2]=1,t[n][2]=1;n;){for(p=0,e=u+1;e<n;e++)(r=getSqSegDist(t[e],t[u],t[n]))>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},{}],19:[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;m<e.length;m++){a.numFeatures++,addFeature(a,e[m],t,u);var s=e[m].min,l=e[m].max;s[0]<a.min[0]&&(a.min[0]=s[0]),s[1]<a.min[1]&&(a.min[1]=s[1]),l[0]>a.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;t<s.length;t++)o.push(s[t]),e.numPoints++,e.numSimplified++;else for(t=0;t<s.length;t++)if(a=s[t],i||!(2===l&&a.dist<r||3===l&&a.area<f)){var d=[];for(u=0;u<a.length;u++)m=a[u],(i||m[2]>f)&&(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<u;a=t++)n=e[t],r=e[a],i+=(r[0]-n[0])*(n[1]+r[1]);return i}module.exports=createTile;\n},{}],20:[function(_dereq_,module,exports){\n\"use strict\";function transformTile(r,t){if(r.transformed)return r;var n,e,o,f=r.z2,a=r.x,s=r.y;for(n=0;n<r.features.length;n++){var i=r.features[n],u=i.geometry;if(1===i.type)for(e=0;e<u.length;e++)u[e]=transformPoint(u[e],t,f,a,s);else for(e=0;e<u.length;e++){var m=u[e];for(o=0;o<m.length;o++)m[o]=transformPoint(m[o],t,f,a,s)}}return r.transformed=!0,r}function transformPoint(r,t,n,e,o){return[Math.round(t*(r[0]*n-e)),Math.round(t*(r[1]*n-o))]}exports.tile=transformTile,exports.point=transformPoint;\n},{}],21:[function(_dereq_,module,exports){\n\"use strict\";function wrap(r,e,t){var o=r,a=clip(r,1,-1-e,e,0,t,-1,2),s=clip(r,1,1-e,2+e,0,t,-1,2);return(a||s)&&(o=clip(r,1,-e,1+e,0,t,-1,2)||[],a&&(o=shiftFeatureCoords(a,1).concat(o)),s&&(o=o.concat(shiftFeatureCoords(s,-1)))),o}function shiftFeatureCoords(r,e){for(var t=[],o=0;o<r.length;o++){var a,s=r[o],i=s.type;if(1===i)a=shiftCoords(s.geometry,e);else{a=[];for(var u=0;u<s.geometry.length;u++)a.push(shiftCoords(s.geometry[u],e))}t.push(createFeature(s.tags,i,a,s.id))}return t}function shiftCoords(r,e){var t=[];t.area=r.area,t.dist=r.dist;for(var o=0;o<r.length;o++)t.push([r[o][0]+e,r[o][1],r[o][2]]);return t}var clip=_dereq_(\"./clip\"),createFeature=_dereq_(\"./feature\");module.exports=wrap;\n},{\"./clip\":14,\"./feature\":16}],22:[function(_dereq_,module,exports){\n\"use strict\";function GridIndex(t,r,e){var s=this.cells=[];if(t instanceof ArrayBuffer){this.arrayBuffer=t;var i=new Int32Array(this.arrayBuffer);t=i[0],r=i[1],e=i[2],this.d=r+2*e;for(var h=0;h<this.d*this.d;h++){var n=i[NUM_PARAMS+h],o=i[NUM_PARAMS+h+1];s.push(n===o?null:i.subarray(n,o))}var l=i[NUM_PARAMS+s.length],a=i[NUM_PARAMS+s.length+1];this.keys=i.subarray(l,a),this.bboxes=i.subarray(a),this.insert=this._insertReadonly}else{this.d=r+2*e;for(var d=0;d<this.d*this.d;d++)s.push([]);this.keys=[],this.bboxes=[]}this.n=r,this.extent=t,this.padding=e,this.scale=r/t,this.uid=0;var f=e/r*t;this.min=-f,this.max=t+f}module.exports=GridIndex;var NUM_PARAMS=3;GridIndex.prototype.insert=function(t,r,e,s,i){this._forEachCell(r,e,s,i,this._insertCell,this.uid++),this.keys.push(t),this.bboxes.push(r),this.bboxes.push(e),this.bboxes.push(s),this.bboxes.push(i)},GridIndex.prototype._insertReadonly=function(){throw\"Cannot insert into a GridIndex created from an ArrayBuffer.\"},GridIndex.prototype._insertCell=function(t,r,e,s,i,h){this.cells[i].push(h)},GridIndex.prototype.query=function(t,r,e,s){var i=this.min,h=this.max;if(t<=i&&r<=i&&h<=e&&h<=s)return Array.prototype.slice.call(this.keys);var n=[],o={};return this._forEachCell(t,r,e,s,this._queryCell,n,o),n},GridIndex.prototype._queryCell=function(t,r,e,s,i,h,n){var o=this.cells[i];if(null!==o)for(var l=this.keys,a=this.bboxes,d=0;d<o.length;d++){var f=o[d];if(void 0===n[f]){var u=4*f;t<=a[u+2]&&r<=a[u+3]&&e>=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<this.cells.length;s++)e+=this.cells[s].length;var i=new Int32Array(r+e+this.keys.length+this.bboxes.length);i[0]=this.extent,i[1]=this.n,i[2]=this.padding;for(var h=r,n=0;n<t.length;n++){var o=t[n];i[NUM_PARAMS+n]=h,i.set(o,h),h+=o.length}return i[NUM_PARAMS+t.length]=h,i.set(this.keys,h),h+=this.keys.length,i[NUM_PARAMS+t.length+1]=h,i.set(this.bboxes,h),h+=this.bboxes.length,i.buffer};\n},{}],23:[function(_dereq_,module,exports){\nexports.read=function(a,o,t,r,h){var M,p,w=8*h-r-1,f=(1<<w)-1,e=f>>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<<e)-1,N=i>>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<<h|w,e+=h;e>0;a[t+s]=255&p,s+=u,p/=256,e-=8);a[t+s-u]|=128*l};\n},{}],24:[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<t.length;r++)this.ids[r]=r,this.coords[2*r]=i(t[r]),this.coords[2*r+1]=e(t[r]);sort(this.ids,this.coords,this.nodeSize,0,this.ids.length-1,0)}function defaultGetX(t){return t[0]}function defaultGetY(t){return t[1]}var sort=_dereq_(\"./sort\"),range=_dereq_(\"./range\"),within=_dereq_(\"./within\");module.exports=kdbush,KDBush.prototype={range:function(t,i,e,s){return range(this.ids,this.coords,t,i,e,s,this.nodeSize)},within:function(t,i,e){return within(this.ids,this.coords,t,i,e,this.nodeSize)}};\n},{\"./range\":25,\"./sort\":26,\"./within\":27}],25:[function(_dereq_,module,exports){\n\"use strict\";function range(p,r,s,u,h,e,o){for(var a,t,n=[0,p.length-1,0],f=[];n.length;){var l=n.pop(),v=n.pop(),g=n.pop();if(v-g<=o)for(var i=g;i<=v;i++)a=r[2*i],t=r[2*i+1],a>=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},{}],26:[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);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 c=a[2*o+e],h=s,i=r;for(swapItem(t,a,s,o),a[2*r+e]>c&&swapItem(t,a,s,r);h<i;){for(swapItem(t,a,h,i),h++,i--;a[2*h+e]<c;)h++;for(;a[2*i+e]>c;)i--}a[2*s+e]===c?swapItem(t,a,s,i):(i++,swapItem(t,a,i,r)),i<=o&&(s=i+1),o<=i&&(r=i-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},{}],27:[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},{}],28:[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},{}],29:[function(_dereq_,module,exports){\n\"use strict\";function Pbf(t){this.buf=ArrayBuffer.isView&&ArrayBuffer.isView(t)?t:new Uint8Array(t||0),this.pos=0,this.type=0,this.length=this.buf.length}function readVarintRemainder(t,i,e){var r,s,n=e.buf;if(s=n[e.pos++],r=(112&s)>>4,s<128)return toNum(t,r,i);if(s=n[e.pos++],r|=(127&s)<<3,s<128)return toNum(t,r,i);if(s=n[e.pos++],r|=(127&s)<<10,s<128)return toNum(t,r,i);if(s=n[e.pos++],r|=(127&s)<<17,s<128)return toNum(t,r,i);if(s=n[e.pos++],r|=(127&s)<<24,s<128)return toNum(t,r,i);if(s=n[e.pos++],r|=(1&s)<<31,s<128)return toNum(t,r,i);throw new Error(\"Expected varint not more than 10 bytes\")}function readPackedEnd(t){return t.type===Pbf.Bytes?t.readVarint()+t.pos:t.pos+1}function toNum(t,i,e){return e?4294967296*i+(t>>>0):4294967296*(i>>>0)+(t>>>0)}function writeBigVarint(t,i){var e,r;if(t>=0?(e=t%4294967296|0,r=t/4294967296|0):(e=~(-t%4294967296),r=~(-t/4294967296),4294967295^e?e=e+1|0:(e=0,r=r+1|0)),t>=0x10000000000000000||t<-0x10000000000000000)throw new Error(\"Given varint doesn't fit into 10 bytes\");i.realloc(10),writeBigVarintLow(e,r,i),writeBigVarintHigh(r,i)}function writeBigVarintLow(t,i,e){e.buf[e.pos++]=127&t|128,t>>>=7,e.buf[e.pos++]=127&t|128,t>>>=7,e.buf[e.pos++]=127&t|128,t>>>=7,e.buf[e.pos++]=127&t|128,t>>>=7,e.buf[e.pos]=127&t}function writeBigVarintHigh(t,i){var e=(7&t)<<4;i.buf[i.pos++]|=e|((t>>>=3)?128:0),t&&(i.buf[i.pos++]=127&t|((t>>>=7)?128:0),t&&(i.buf[i.pos++]=127&t|((t>>>=7)?128:0),t&&(i.buf[i.pos++]=127&t|((t>>>=7)?128:0),t&&(i.buf[i.pos++]=127&t|((t>>>=7)?128:0),t&&(i.buf[i.pos++]=127&t)))))}function makeRoomForExtraLength(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<t.length;e++)i.writeVarint(t[e])}function writePackedSVarint(t,i){for(var e=0;e<t.length;e++)i.writeSVarint(t[e])}function writePackedFloat(t,i){for(var e=0;e<t.length;e++)i.writeFloat(t[e])}function writePackedDouble(t,i){for(var e=0;e<t.length;e++)i.writeDouble(t[e])}function writePackedBoolean(t,i){for(var e=0;e<t.length;e++)i.writeBoolean(t[e])}function writePackedFixed32(t,i){for(var e=0;e<t.length;e++)i.writeFixed32(t[e])}function writePackedSFixed32(t,i){for(var e=0;e<t.length;e++)i.writeSFixed32(t[e])}function writePackedFixed64(t,i){for(var e=0;e<t.length;e++)i.writeFixed64(t[e])}function writePackedSFixed64(t,i){for(var e=0;e<t.length;e++)i.writeSFixed64(t[e])}function readUInt32(t,i){return(t[i]|t[i+1]<<8|t[i+2]<<16)+16777216*t[i+3]}function writeInt32(t,i,e){t[e]=i,t[e+1]=i>>>8,t[e+2]=i>>>16,t[e+3]=i>>>24}function readInt32(t,i){return(t[i]|t[i+1]<<8|t[i+2]<<16)+(t[i+3]<<24)}function readUtf8(t,i,e){for(var r=\"\",s=i;s<e;){var n=t[s],o=null,a=n>239?4:n>223?3:n>191?2:1;if(s+a>e)break;var h,u,f;1===a?n<128&&(o=n):2===a?128==(192&(h=t[s+1]))&&(o=(31&n)<<6|63&h)<=127&&(o=null):3===a?(h=t[s+1],u=t[s+2],128==(192&h)&&128==(192&u)&&((o=(15&n)<<12|(63&h)<<6|63&u)<=2047||o>=55296&&o<=57343)&&(o=null)):4===a&&(h=t[s+1],u=t[s+2],f=t[s+3],128==(192&h)&&128==(192&u)&&128==(192&f)&&((o=(15&n)<<18|(63&h)<<12|(63&u)<<6|63&f)<=65535||o>=1114112)&&(o=null)),null===o?(o=65533,a=1):o>65535&&(o-=65536,r+=String.fromCharCode(o>>>10&1023|55296),o=56320|1023&o),r+=String.fromCharCode(o),s+=a}return r}function writeUtf8(t,i,e){for(var r,s,n=0;n<i.length;n++){if((r=i.charCodeAt(n))>55295&&r<57344){if(!s){r>56319||n+1===i.length?(t[e++]=239,t[e++]=191,t[e++]=189):s=r;continue}if(r<56320){t[e++]=239,t[e++]=191,t[e++]=189,s=r;continue}r=s-55296<<10|r-56320|65536,s=null}else s&&(t[e++]=239,t[e++]=191,t[e++]=189,s=null);r<128?t[e++]=r:(r<2048?t[e++]=r>>6|192:(r<65536?t[e++]=r>>12|224:(t[e++]=r>>18|240,t[e++]=r>>12&63|128),t[e++]=r>>6&63|128),t[e++]=63&r|128)}return e}module.exports=Pbf;var ieee754=_dereq_(\"ieee754\");Pbf.Varint=0,Pbf.Fixed64=1,Pbf.Bytes=2,Pbf.Fixed32=5;var SHIFT_LEFT_32=4294967296,SHIFT_RIGHT_32=1/SHIFT_LEFT_32;Pbf.prototype={destroy:function(){this.buf=null},readFields:function(t,i,e){for(e=e||this.length;this.pos<e;){var r=this.readVarint(),s=r>>3,n=this.pos;this.type=7&r,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=readUInt32(this.buf,this.pos);return this.pos+=4,t},readSFixed32:function(){var t=readInt32(this.buf,this.pos);return this.pos+=4,t},readFixed64:function(){var t=readUInt32(this.buf,this.pos)+readUInt32(this.buf,this.pos+4)*SHIFT_LEFT_32;return this.pos+=8,t},readSFixed64:function(){var t=readUInt32(this.buf,this.pos)+readInt32(this.buf,this.pos+4)*SHIFT_LEFT_32;return this.pos+=8,t},readFloat:function(){var t=ieee754.read(this.buf,this.pos,!0,23,4);return this.pos+=4,t},readDouble:function(){var t=ieee754.read(this.buf,this.pos,!0,52,8);return this.pos+=8,t},readVarint:function(t){var i,e,r=this.buf;return e=r[this.pos++],i=127&e,e<128?i:(e=r[this.pos++],i|=(127&e)<<7,e<128?i:(e=r[this.pos++],i|=(127&e)<<14,e<128?i:(e=r[this.pos++],i|=(127&e)<<21,e<128?i:(e=r[this.pos],i|=(15&e)<<28,readVarintRemainder(i,t,this)))))},readVarint64:function(){return this.readVarint(!0)},readSVarint:function(){var t=this.readVarint();return t%2==1?(t+1)/-2:t/2},readBoolean:function(){return Boolean(this.readVarint())},readString:function(){var t=this.readVarint()+this.pos,i=readUtf8(this.buf,this.pos,t);return this.pos=t,i},readBytes:function(){var t=this.readVarint()+this.pos,i=this.buf.subarray(this.pos,t);return this.pos=t,i},readPackedVarint:function(t,i){var e=readPackedEnd(this);for(t=t||[];this.pos<e;)t.push(this.readVarint(i));return t},readPackedSVarint:function(t){var i=readPackedEnd(this);for(t=t||[];this.pos<i;)t.push(this.readSVarint());return t},readPackedBoolean:function(t){var i=readPackedEnd(this);for(t=t||[];this.pos<i;)t.push(this.readBoolean());return t},readPackedFloat:function(t){var i=readPackedEnd(this);for(t=t||[];this.pos<i;)t.push(this.readFloat());return t},readPackedDouble:function(t){var i=readPackedEnd(this);for(t=t||[];this.pos<i;)t.push(this.readDouble());return t},readPackedFixed32:function(t){var i=readPackedEnd(this);for(t=t||[];this.pos<i;)t.push(this.readFixed32());return t},readPackedSFixed32:function(t){var i=readPackedEnd(this);for(t=t||[];this.pos<i;)t.push(this.readSFixed32());return t},readPackedFixed64:function(t){var i=readPackedEnd(this);for(t=t||[];this.pos<i;)t.push(this.readFixed64());return t},readPackedSFixed64:function(t){var i=readPackedEnd(this);for(t=t||[];this.pos<i;)t.push(this.readSFixed64());return t},skip:function(t){var i=7&t;if(i===Pbf.Varint)for(;this.buf[this.pos++]>127;);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;i<this.pos+t;)i*=2;if(i!==this.length){var e=new Uint8Array(i);e.set(this.buf),this.buf=e,this.length=i}},finish:function(){return this.length=this.pos,this.pos=0,this.buf.subarray(0,this.length)},writeFixed32:function(t){this.realloc(4),writeInt32(this.buf,t,this.pos),this.pos+=4},writeSFixed32:function(t){this.realloc(4),writeInt32(this.buf,t,this.pos),this.pos+=4},writeFixed64:function(t){this.realloc(8),writeInt32(this.buf,-1&t,this.pos),writeInt32(this.buf,Math.floor(t*SHIFT_RIGHT_32),this.pos+4),this.pos+=8},writeSFixed64:function(t){this.realloc(8),writeInt32(this.buf,-1&t,this.pos),writeInt32(this.buf,Math.floor(t*SHIFT_RIGHT_32),this.pos+4),this.pos+=8},writeVarint:function(t){if((t=+t||0)>268435455||t<0)return void writeBigVarint(t,this);this.realloc(4),this.buf[this.pos++]=127&t|(t>127?128:0),t<=127||(this.buf[this.pos++]=127&(t>>>=7)|(t>127?128:0),t<=127||(this.buf[this.pos++]=127&(t>>>=7)|(t>127?128:0),t<=127||(this.buf[this.pos++]=t>>>7&127)))},writeSVarint:function(t){this.writeVarint(t<0?2*-t-1:2*t)},writeBoolean:function(t){this.writeVarint(Boolean(t))},writeString:function(t){t=String(t),this.realloc(4*t.length),this.pos++;var i=this.pos;this.pos=writeUtf8(this.buf,t,this.pos);var e=this.pos-i;e>=128&&makeRoomForExtraLength(i,e,this),this.pos=i-1,this.writeVarint(e),this.pos+=e},writeFloat:function(t){this.realloc(4),ieee754.write(this.buf,t,this.pos,!0,23,4),this.pos+=4},writeDouble:function(t){this.realloc(8),ieee754.write(this.buf,t,this.pos,!0,52,8),this.pos+=8},writeBytes:function(t){var i=t.length;this.writeVarint(i),this.realloc(i);for(var e=0;e<i;e++)this.buf[this.pos++]=t[e]},writeRawMessage:function(t,i){this.pos++;var e=this.pos;t(i,this);var r=this.pos-e;r>=128&&makeRoomForExtraLength(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},{\"ieee754\":23}],30:[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&&currentQueue&&(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=[];++queueIndex<t;)currentQueue&&currentQueue[queueIndex].run();queueIndex=-1,t=queue.length}currentQueue=null,draining=!1,runClearTimeout(e)}}function Item(e,t){this.fun=e,this.array=t}function noop(){}var process=module.exports={},cachedSetTimeout,cachedClearTimeout;!function(){try{cachedSetTimeout=\"function\"==typeof setTimeout?setTimeout:defaultSetTimout}catch(e){cachedSetTimeout=defaultSetTimout}try{cachedClearTimeout=\"function\"==typeof clearTimeout?clearTimeout:defaultClearTimeout}catch(e){cachedClearTimeout=defaultClearTimeout}}();var queue=[],draining=!1,currentQueue,queueIndex=-1;process.nextTick=function(e){var t=new Array(arguments.length-1);if(arguments.length>1)for(var r=1;r<arguments.length;r++)t[r-1]=arguments[r];queue.push(new Item(e,t)),1!==queue.length||draining||runTimeout(drainQueue)},Item.prototype.run=function(){this.fun.apply(null,this.array)},process.title=\"browser\",process.browser=!0,process.env={},process.argv=[],process.version=\"\",process.versions={},process.on=noop,process.addListener=noop,process.once=noop,process.off=noop,process.removeListener=noop,process.removeAllListeners=noop,process.emit=noop,process.prependListener=noop,process.prependOnceListener=noop,process.listeners=function(e){return[]},process.binding=function(e){throw new Error(\"process.binding is not supported\")},process.cwd=function(){return\"/\"},process.chdir=function(e){throw new Error(\"process.chdir is not supported\")},process.umask=function(){return 0};\n},{}],31:[function(_dereq_,module,exports){\n\"use strict\";function partialSort(a,t,r,o,p){for(r=r||0,o=o||a.length-1,p=p||defaultCompare;o>r;){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 n=a[t],h=r,u=o;for(swap(a,r,t),p(a[o],n)>0&&swap(a,r,o);h<u;){for(swap(a,h,u),h++,u--;p(a[h],n)<0;)h++;for(;p(a[u],n)>0;)u--}0===p(a[r],n)?swap(a,r,u):(u++,swap(a,u,o)),u<=t&&(r=u+1),t<=u&&(o=u-1)}}function swap(a,t,r){var o=a[t];a[t]=a[r],a[r]=o}function defaultCompare(a,t){return a<t?-1:a>t?1:0}module.exports=partialSort;\n},{}],32:[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,n,o,i){return{x:t,y:e,zoom:1/0,id:o,properties:i,parentId:-1,numPoints:n}}function createPointCluster(t,e){var n=t.geometry.coordinates;return{x:lngX(n[0]),y:latY(n[1]),zoom:1/0,id:e,parentId:-1}}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,n=e>=1e4?Math.round(e/1e3)+\"k\":e>=1e3?Math.round(e/100)/10+\"k\":e;return extend(extend({},t.properties),{cluster:!0,cluster_id:t.id,point_count:e,point_count_abbreviated:n})}function lngX(t){return t/360+.5}function latY(t){var e=Math.sin(t*Math.PI/180),n=.5-.25*Math.log((1+e)/(1-e))/Math.PI;return n<0?0:n>1?1:n}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 n in e)t[n]=e[n];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,reduce:null,initial:function(){return{}},map:function(t){return t}},load:function(t){var e=this.options.log;e&&console.time(\"total time\");var n=\"prepare \"+t.length+\" points\";e&&console.time(n),this.points=t;var o=t.map(createPointCluster);e&&console.timeEnd(n);for(var i=this.options.maxZoom;i>=this.options.minZoom;i--){var r=+Date.now();this.trees[i+1]=kdbush(o,getX,getY,this.options.nodeSize,Float32Array),o=this._cluster(o,i),e&&console.log(\"z%d: %d clusters in %dms\",i,o.length,+Date.now()-r)}return this.trees[this.options.minZoom]=kdbush(o,getX,getY,this.options.nodeSize,Float32Array),e&&console.timeEnd(\"total time\"),this},getClusters:function(t,e){for(var n=this.trees[this._limitZoom(e)],o=n.range(lngX(t[0]),latY(t[3]),lngX(t[2]),latY(t[1])),i=[],r=0;r<o.length;r++){var s=n.points[o[r]];i.push(s.numPoints?getClusterJSON(s):this.points[s.id])}return i},getChildren:function(t,e){for(var n=this.trees[e+1].points[t],o=this.options.radius/(this.options.extent*Math.pow(2,e)),i=this.trees[e+1].within(n.x,n.y,o),r=[],s=0;s<i.length;s++){var u=this.trees[e+1].points[i[s]];u.parentId===t&&r.push(u.numPoints?getClusterJSON(u):this.points[u.id])}return r},getLeaves:function(t,e,n,o){n=n||10,o=o||0;var i=[];return this._appendLeaves(i,t,e,n,o,0),i},getTile:function(t,e,n){var o=this.trees[this._limitZoom(t)],i=Math.pow(2,t),r=this.options.extent,s=this.options.radius,u=s/r,a=(n-u)/i,p=(n+1+u)/i,h={features:[]};return this._addTileFeatures(o.range((e-u)/i,a,(e+1+u)/i,p),o.points,e,n,i,h),0===e&&this._addTileFeatures(o.range(1-u/i,a,1,p),o.points,i,n,i,h),e===i-1&&this._addTileFeatures(o.range(0,a,u/i,p),o.points,-1,n,i,h),h.features.length?h:null},getClusterExpansionZoom:function(t,e){for(;e<this.options.maxZoom;){var n=this.getChildren(t,e);if(e++,1!==n.length)break;t=n[0].properties.cluster_id}return e},_appendLeaves:function(t,e,n,o,i,r){for(var s=this.getChildren(e,n),u=0;u<s.length;u++){var a=s[u].properties;if(a.cluster?r+a.point_count<=i?r+=a.point_count:r=this._appendLeaves(t,a.cluster_id,n+1,o,i,r):r<i?r++:t.push(s[u]),t.length===o)break}return r},_addTileFeatures:function(t,e,n,o,i,r){for(var s=0;s<t.length;s++){var u=e[t[s]];r.features.push({type:1,geometry:[[Math.round(this.options.extent*(u.x*i-n)),Math.round(this.options.extent*(u.y*i-o))]],tags:u.numPoints?getClusterProperties(u):this.points[u.id].properties})}},_limitZoom:function(t){return Math.max(this.options.minZoom,Math.min(t,this.options.maxZoom+1))},_cluster:function(t,e){for(var n=[],o=this.options.radius/(this.options.extent*Math.pow(2,e)),i=0;i<t.length;i++){var r=t[i];if(!(r.zoom<=e)){r.zoom=e;var s=this.trees[e+1],u=s.within(r.x,r.y,o),a=r.numPoints||1,p=r.x*a,h=r.y*a,l=null;this.options.reduce&&(l=this.options.initial(),this._accumulate(l,r));for(var c=0;c<u.length;c++){var d=s.points[u[c]];if(e<d.zoom){var m=d.numPoints||1;d.zoom=e,p+=d.x*m,h+=d.y*m,a+=m,d.parentId=i,this.options.reduce&&this._accumulate(l,d)}}1===a?n.push(r):(r.parentId=i,n.push(createCluster(p/a,h/a,a,i,l)))}}return n},_accumulate:function(t,e){var n=e.numPoints?e.properties:this.options.map(this.points[e.id].properties);this.options.reduce(t,n)}};\n},{\"kdbush\":24}],33:[function(_dereq_,module,exports){\n\"use strict\";function TinyQueue(t,i){if(!(this instanceof TinyQueue))return new TinyQueue(t,i);if(this.data=t||[],this.length=this.data.length,this.compare=i||defaultCompare,this.length>0)for(var e=this.length>>1;e>=0;e--)this._down(e)}function defaultCompare(t,i){return t<i?-1:t>i?1:0}module.exports=TinyQueue,TinyQueue.prototype={push:function(t){this.data.push(t),this.length++,this._up(this.length-1)},pop:function(){if(0!==this.length){var t=this.data[0];return this.length--,this.length>0&&(this.data[0]=this.data[this.length],this._down(0)),this.data.pop(),t}},peek:function(){return this.data[0]},_up:function(t){for(var i=this.data,e=this.compare,h=i[t];t>0;){var n=t-1>>1,a=i[n];if(e(h,a)>=0)break;i[t]=a,t=n}i[t]=h},_down:function(t){for(var i=this.data,e=this.compare,h=this.length,n=h>>1,a=i[t];t<n;){var s=1+(t<<1),u=s+1,r=i[s];if(u<h&&e(i[u],r)<0&&(s=u,r=i[u]),e(r,a)>=0)break;i[t]=r,t=s}i[t]=a}};\n},{}],34:[function(_dereq_,module,exports){\n\"function\"==typeof Object.create?module.exports=function(t,e){t.super_=e,t.prototype=Object.create(e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}})}:module.exports=function(t,e){t.super_=e;var o=function(){};o.prototype=e.prototype,t.prototype=new o,t.prototype.constructor=t};\n},{}],35:[function(_dereq_,module,exports){\nmodule.exports=function(o){return o&&\"object\"==typeof o&&\"function\"==typeof o.copy&&\"function\"==typeof o.fill&&\"function\"==typeof o.readUInt8};\n},{}],36:[function(_dereq_,module,exports){\n(function (process,global){\nfunction inspect(e,r){var t={seen:[],stylize:stylizeNoColor};return arguments.length>=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)){c=\" [Function\"+(r.name?\": \"+r.name:\"\")+\"]\"}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 p;return p=a?formatArray(e,r,t,s,o):o.map(function(n){return formatProperty(e,r,t,s,n,a)}),e.seen.pop(),reduceToSingleString(p,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<u;++s)hasOwnProperty(r,String(s))?o.push(formatProperty(e,r,t,n,String(s),!0)):o.push(\"\");return i.forEach(function(i){i.match(/^\\d+$/)||o.push(formatProperty(e,r,t,n,i,!0))}),o}function formatProperty(e,r,t,n,i,o){var s,u,c;if(c=Object.getOwnPropertyDescriptor(r,i)||{value:r[i]},c.get?u=c.set?e.stylize(\"[Getter/Setter]\",\"special\"):e.stylize(\"[Getter]\",\"special\"):c.set&&(u=e.stylize(\"[Setter]\",\"special\")),hasOwnProperty(n,i)||(s=\"[\"+i+\"]\"),u||(e.seen.indexOf(c.value)<0?(u=isNull(t)?formatValue(e,c.value,null):formatValue(e,c.value,t-1),u.indexOf(\"\\n\")>-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;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<arguments.length;t++)r.push(inspect(arguments[t]));return r.join(\" \")}for(var t=1,n=arguments,i=n.length,o=String(e).replace(formatRegExp,function(e){if(\"%%\"===e)return\"%\";if(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<i;s=n[++t])isNull(s)||!isObject(s)?o+=\" \"+s:o+=\" \"+inspect(s);return o},exports.deprecate=function(e,r){function t(){if(!n){if(process.throwDeprecation)throw new Error(r);process.traceDeprecation?console.trace(r):console.error(r),n=!0}return e.apply(this,arguments)}if(isUndefined(global.process))return function(){return exports.deprecate(e,r).apply(this,arguments)};if(!0===process.noDeprecation)return e;var n=!1;return t};var debugs={},debugEnviron;exports.debuglog=function(e){if(isUndefined(debugEnviron)&&(debugEnviron=process.env.NODE_DEBUG||\"\"),e=e.toUpperCase(),!debugs[e])if(new RegExp(\"\\\\b\"+e+\"\\\\b\",\"i\").test(debugEnviron)){var r=process.pid;debugs[e]=function(){var t=exports.format.apply(exports,arguments);console.error(\"%s %d: %s\",e,r,t)}}else debugs[e]=function(){};return debugs[e]},exports.inspect=inspect,inspect.colors={bold:[1,22],italic:[3,23],underline:[4,24],inverse:[7,27],white:[37,39],grey:[90,39],black:[30,39],blue:[34,39],cyan:[36,39],green:[32,39],magenta:[35,39],red:[31,39],yellow:[33,39]},inspect.styles={special:\"cyan\",number:\"yellow\",boolean:\"yellow\",undefined:\"grey\",null:\"bold\",string:\"green\",date:\"magenta\",regexp:\"red\"},exports.isArray=isArray,exports.isBoolean=isBoolean,exports.isNull=isNull,exports.isNullOrUndefined=isNullOrUndefined,exports.isNumber=isNumber,exports.isString=isString,exports.isSymbol=isSymbol,exports.isUndefined=isUndefined,exports.isRegExp=isRegExp,exports.isObject=isObject,exports.isDate=isDate,exports.isError=isError,exports.isFunction=isFunction,exports.isPrimitive=isPrimitive,exports.isBuffer=_dereq_(\"./support/isBuffer\");var months=[\"Jan\",\"Feb\",\"Mar\",\"Apr\",\"May\",\"Jun\",\"Jul\",\"Aug\",\"Sep\",\"Oct\",\"Nov\",\"Dec\"];exports.log=function(){console.log(\"%s - %s\",timestamp(),exports.format.apply(exports,arguments))},exports.inherits=_dereq_(\"inherits\"),exports._extend=function(e,r){if(!r||!isObject(r))return e;for(var t=Object.keys(r),n=t.length;n--;)e[t[n]]=r[t[n]];return e};\n}).call(this,_dereq_('_process'),typeof global !== \"undefined\" ? global : typeof self !== \"undefined\" ? self : typeof window !== \"undefined\" ? window : {})\n\n},{\"./support/isBuffer\":35,\"_process\":30,\"inherits\":34}],37:[function(_dereq_,module,exports){\nfunction fromVectorTileJs(e){var r=new Pbf;return writeTile(e,r),r.finish()}function fromGeojsonVt(e){var r={};for(var t in e)r[t]=new GeoJSONWrapper(e[t].features),r[t].name=t;return fromVectorTileJs({layers:r})}function writeTile(e,r){for(var t in e.layers)r.writeMessage(3,writeLayer,e.layers[t])}function writeLayer(e,r){r.writeVarintField(15,e.version||1),r.writeStringField(1,e.name||\"\"),r.writeVarintField(5,e.extent||4096);var t,i={keys:[],values:[],keycache:{},valuecache:{}};for(t=0;t<e.length;t++)i.feature=e.feature(t),r.writeMessage(2,writeFeature,i);var a=i.keys;for(t=0;t<a.length;t++)r.writeStringField(3,a[t]);var o=i.values;for(t=0;t<o.length;t++)r.writeMessage(4,writeValue,o[t])}function writeFeature(e,r){var t=e.feature;void 0!==t.id&&r.writeVarintField(1,t.id),r.writeMessage(2,writeProperties,e),r.writeVarintField(3,t.type),r.writeMessage(4,writeGeometry,t)}function writeProperties(e,r){var t=e.feature,i=e.keys,a=e.values,o=e.keycache,n=e.valuecache;for(var l in t.properties){var s=o[l];void 0===s&&(i.push(l),s=i.length-1,o[l]=s),r.writeVarint(s);var u=t.properties[l],f=typeof u;\"string\"!==f&&\"boolean\"!==f&&\"number\"!==f&&(u=JSON.stringify(u));var w=f+\":\"+u,v=n[w];void 0===v&&(a.push(u),v=a.length-1,n[w]=v),r.writeVarint(v)}}function command(e,r){return(r<<3)+(7&e)}function zigzag(e){return e<<1^e>>31}function writeGeometry(e,r){for(var t=e.loadGeometry(),i=e.type,a=0,o=0,n=t.length,l=0;l<n;l++){var s=t[l],u=1;1===i&&(u=s.length),r.writeVarint(command(1,u));for(var f=0;f<s.length;f++){1===f&&1!==i&&r.writeVarint(command(2,s.length-1));var w=s[f].x-a,v=s[f].y-o;r.writeVarint(zigzag(w)),r.writeVarint(zigzag(v)),a+=w,o+=v}}}function writeValue(e,r){var t=typeof e;\"string\"===t?r.writeStringField(1,e):\"boolean\"===t?r.writeBooleanField(7,e):\"number\"===t&&(e%1!=0?r.writeDoubleField(3,e):e<0?r.writeSVarintField(6,e):r.writeVarintField(5,e))}var Pbf=_dereq_(\"pbf\"),GeoJSONWrapper=_dereq_(\"./lib/geojson_wrapper\");module.exports=fromVectorTileJs,module.exports.fromVectorTileJs=fromVectorTileJs,module.exports.fromGeojsonVt=fromGeojsonVt,module.exports.GeoJSONWrapper=GeoJSONWrapper;\n},{\"./lib/geojson_wrapper\":38,\"pbf\":29}],38:[function(_dereq_,module,exports){\n\"use strict\";function GeoJSONWrapper(e){this.features=e,this.length=e.length}function FeatureWrapper(e){this.id=\"number\"==typeof e.id?e.id:void 0,this.type=e.type,this.rawGeometry=1===e.type?[e.geometry]:e.geometry,this.properties=e.tags,this.extent=4096}var Point=_dereq_(\"@mapbox/point-geometry\"),VectorTileFeature=_dereq_(\"@mapbox/vector-tile\").VectorTileFeature;module.exports=GeoJSONWrapper,GeoJSONWrapper.prototype.feature=function(e){return new FeatureWrapper(this.features[e])},FeatureWrapper.prototype.loadGeometry=function(){var e=this.rawGeometry;this.geometry=[];for(var t=0;t<e.length;t++){for(var r=e[t],o=[],a=0;a<r.length;a++)o.push(new Point(r[a][0],r[a][1]));this.geometry.push(o)}return this.geometry},FeatureWrapper.prototype.bbox=function(){this.geometry||this.loadGeometry();for(var e=this.geometry,t=1/0,r=-1/0,o=1/0,a=-1/0,p=0;p<e.length;p++)for(var i=e[p],n=0;n<i.length;n++){var h=i[n];t=Math.min(t,h.x),r=Math.max(r,h.x),o=Math.min(o,h.y),a=Math.max(a,h.y)}return[t,o,r,a]},FeatureWrapper.prototype.toGeoJSON=VectorTileFeature.prototype.toGeoJSON;\n},{\"@mapbox/point-geometry\":2,\"@mapbox/vector-tile\":6}],39:[function(_dereq_,module,exports){\nvar bundleFn=arguments[3],sources=arguments[4],cache=arguments[5],stringify=JSON.stringify;module.exports=function(r,e){function t(r){d[r]=!0;for(var e in sources[r][1]){var n=sources[r][1][e];d[n]||t(n)}}for(var n,o=Object.keys(cache),a=0,i=o.length;a<i;a++){var s=o[a],u=cache[s].exports;if(u===r||u&&u.default===r){n=s;break}}if(!n){n=Math.floor(Math.pow(16,8)*Math.random()).toString(16);for(var f={},a=0,i=o.length;a<i;a++){var s=o[a];f[s]=s}sources[n]=[Function([\"require\",\"module\",\"exports\"],\"(\"+r+\")(self)\"),f]}var c=Math.floor(Math.pow(16,8)*Math.random()).toString(16),l={};l[n]=n,sources[c]=[Function([\"require\"],\"var f = require(\"+stringify(n)+\");(f.default ? f.default : f)(self);\"),l];var d={};t(c);var g=\"(\"+bundleFn+\")({\"+Object.keys(d).map(function(r){return stringify(r)+\":[\"+sources[r][0]+\",\"+stringify(sources[r][1])+\"]\"}).join(\",\")+\"},{},[\"+stringify(c)+\"])\",v=window.URL||window.webkitURL||window.mozURL||window.msURL,w=new Blob([g],{type:\"text/javascript\"});if(e&&e.bare)return w;var h=v.createObjectURL(w),b=new Worker(h);return b.objectURL=h,b};\n},{}],40:[function(_dereq_,module,exports){\nmodule.exports.RADIUS=6378137,module.exports.FLATTENING=1/298.257223563,module.exports.POLAR_RADIUS=6356752.3142;\n},{}],41:[function(_dereq_,module,exports){\nmodule.exports={\"version\":\"0.40.1\"}\n},{}],42:[function(_dereq_,module,exports){\n\"use strict\";var util=_dereq_(\"../util/util\");module.exports={deserialize:function(e,r){var t={};if(!r)return t;for(var i=0,a=e;i<a.length;i+=1){var l=a[i],u=l.layerIds.map(function(e){return r.getLayer(e)}).filter(Boolean);if(0!==u.length)for(var n=u[0].createBucket(util.extend({layers:u},l)),o=0,f=u;o<f.length;o+=1){var s=f[o];t[s.id]=n}}return t}};\n},{\"../util/util\":223}],43:[function(_dereq_,module,exports){\n\"use strict\";function addCircleVertex(e,r,t,i,a){e.emplaceBack(2*r+(i+1)/2,2*t+(a+1)/2)}var ref=_dereq_(\"../segment\"),SegmentVector=ref.SegmentVector,VertexBuffer=_dereq_(\"../../gl/vertex_buffer\"),IndexBuffer=_dereq_(\"../../gl/index_buffer\"),ref$1=_dereq_(\"../program_configuration\"),ProgramConfigurationSet=ref$1.ProgramConfigurationSet,createVertexArrayType=_dereq_(\"../vertex_array_type\"),ref$2=_dereq_(\"../index_array_type\"),TriangleIndexArray=ref$2.TriangleIndexArray,loadGeometry=_dereq_(\"../load_geometry\"),EXTENT=_dereq_(\"../extent\"),circleInterface={layoutAttributes:[{name:\"a_pos\",components:2,type:\"Int16\"}],indexArrayType:TriangleIndexArray,paintAttributes:[{property:\"circle-color\"},{property:\"circle-radius\"},{property:\"circle-blur\"},{property:\"circle-opacity\"},{property:\"circle-stroke-color\"},{property:\"circle-stroke-width\"},{property:\"circle-stroke-opacity\"}]},LayoutVertexArrayType=createVertexArrayType(circleInterface.layoutAttributes),CircleBucket=function(e){this.zoom=e.zoom,this.overscaling=e.overscaling,this.layers=e.layers,this.index=e.index,this.layoutVertexArray=new LayoutVertexArrayType(e.layoutVertexArray),this.indexArray=new TriangleIndexArray(e.indexArray),this.programConfigurations=new ProgramConfigurationSet(circleInterface,e.layers,e.zoom,e.programConfigurations),this.segments=new SegmentVector(e.segments)};CircleBucket.prototype.populate=function(e,r){for(var t=this,i=0,a=e;i<a.length;i+=1){var o=a[i],n=o.feature,y=o.index,u=o.sourceLayerIndex;if(t.layers[0].filter(n)){var s=loadGeometry(n);t.addFeature(n,s),r.featureIndex.insert(n,s,y,u,t.index)}}},CircleBucket.prototype.isEmpty=function(){return 0===this.layoutVertexArray.length},CircleBucket.prototype.serialize=function(e){return{zoom:this.zoom,layerIds:this.layers.map(function(e){return e.id}),layoutVertexArray:this.layoutVertexArray.serialize(e),indexArray:this.indexArray.serialize(e),programConfigurations:this.programConfigurations.serialize(e),segments:this.segments.get()}},CircleBucket.prototype.upload=function(e){this.layoutVertexBuffer=new VertexBuffer(e,this.layoutVertexArray),this.indexBuffer=new IndexBuffer(e,this.indexArray),this.programConfigurations.upload(e)},CircleBucket.prototype.destroy=function(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.programConfigurations.destroy(),this.segments.destroy())},CircleBucket.prototype.addFeature=function(e,r){for(var t=this,i=0,a=r;i<a.length;i+=1)for(var o=a[i],n=0,y=o;n<y.length;n+=1){var u=y[n],s=u.x,c=u.y;if(!(s<0||s>=EXTENT||c<0||c>=EXTENT)){var l=t.segments.prepareSegment(4,t.layoutVertexArray,t.indexArray),p=l.vertexLength;addCircleVertex(t.layoutVertexArray,s,c,-1,-1),addCircleVertex(t.layoutVertexArray,s,c,1,-1),addCircleVertex(t.layoutVertexArray,s,c,1,1),addCircleVertex(t.layoutVertexArray,s,c,-1,1),t.indexArray.emplaceBack(p,p+1,p+2),t.indexArray.emplaceBack(p,p+3,p+2),l.vertexLength+=4,l.primitiveLength+=2}}this.programConfigurations.populatePaintArrays(this.layoutVertexArray.length,e.properties)},CircleBucket.programInterface=circleInterface,module.exports=CircleBucket;\n},{\"../../gl/index_buffer\":61,\"../../gl/vertex_buffer\":62,\"../extent\":48,\"../index_array_type\":50,\"../load_geometry\":51,\"../program_configuration\":53,\"../segment\":55,\"../vertex_array_type\":56}],44:[function(_dereq_,module,exports){\n\"use strict\";var ref=_dereq_(\"../segment\"),SegmentVector=ref.SegmentVector,VertexBuffer=_dereq_(\"../../gl/vertex_buffer\"),IndexBuffer=_dereq_(\"../../gl/index_buffer\"),ref$1=_dereq_(\"../program_configuration\"),ProgramConfigurationSet=ref$1.ProgramConfigurationSet,createVertexArrayType=_dereq_(\"../vertex_array_type\"),ref$2=_dereq_(\"../index_array_type\"),LineIndexArray=ref$2.LineIndexArray,TriangleIndexArray=ref$2.TriangleIndexArray,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\"}],indexArrayType:TriangleIndexArray,indexArrayType2:LineIndexArray,paintAttributes:[{property:\"fill-color\"},{property:\"fill-outline-color\"},{property:\"fill-opacity\"}]},LayoutVertexArrayType=createVertexArrayType(fillInterface.layoutAttributes),FillBucket=function(e){this.zoom=e.zoom,this.overscaling=e.overscaling,this.layers=e.layers,this.index=e.index,this.layoutVertexArray=new LayoutVertexArrayType(e.layoutVertexArray),this.indexArray=new TriangleIndexArray(e.indexArray),this.indexArray2=new LineIndexArray(e.indexArray2),this.programConfigurations=new ProgramConfigurationSet(fillInterface,e.layers,e.zoom,e.programConfigurations),this.segments=new SegmentVector(e.segments),this.segments2=new SegmentVector(e.segments2)};FillBucket.prototype.populate=function(e,r){for(var t=this,i=0,a=e;i<a.length;i+=1){var n=a[i],o=n.feature,s=n.index,y=n.sourceLayerIndex;if(t.layers[0].filter(o)){var l=loadGeometry(o);t.addFeature(o,l),r.featureIndex.insert(o,l,s,y,t.index)}}},FillBucket.prototype.isEmpty=function(){return 0===this.layoutVertexArray.length},FillBucket.prototype.serialize=function(e){return{zoom:this.zoom,layerIds:this.layers.map(function(e){return e.id}),layoutVertexArray:this.layoutVertexArray.serialize(e),indexArray:this.indexArray.serialize(e),indexArray2:this.indexArray2.serialize(e),programConfigurations:this.programConfigurations.serialize(e),segments:this.segments.get(),segments2:this.segments2.get()}},FillBucket.prototype.upload=function(e){this.layoutVertexBuffer=new VertexBuffer(e,this.layoutVertexArray),this.indexBuffer=new IndexBuffer(e,this.indexArray),this.indexBuffer2=new IndexBuffer(e,this.indexArray2),this.programConfigurations.upload(e)},FillBucket.prototype.destroy=function(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.indexBuffer2.destroy(),this.programConfigurations.destroy(),this.segments.destroy(),this.segments2.destroy())},FillBucket.prototype.addFeature=function(e,r){for(var t=this,i=0,a=classifyRings(r,EARCUT_MAX_RINGS);i<a.length;i+=1){for(var n=a[i],o=0,s=0,y=n;s<y.length;s+=1){o+=y[s].length}for(var l=t.segments.prepareSegment(o,t.layoutVertexArray,t.indexArray),u=l.vertexLength,f=[],g=[],x=0,p=n;x<p.length;x+=1){var h=p[x];if(0!==h.length){h!==n[0]&&g.push(f.length/2);var d=t.segments2.prepareSegment(h.length,t.layoutVertexArray,t.indexArray2),c=d.vertexLength;t.layoutVertexArray.emplaceBack(h[0].x,h[0].y),t.indexArray2.emplaceBack(c+h.length-1,c),f.push(h[0].x),f.push(h[0].y);for(var m=1;m<h.length;m++)t.layoutVertexArray.emplaceBack(h[m].x,h[m].y),t.indexArray2.emplaceBack(c+m-1,c+m),f.push(h[m].x),f.push(h[m].y);d.vertexLength+=h.length,d.primitiveLength+=h.length}}for(var A=earcut(f,g),B=0;B<A.length;B+=3)t.indexArray.emplaceBack(u+A[B],u+A[B+1],u+A[B+2]);l.vertexLength+=o,l.primitiveLength+=A.length/3}this.programConfigurations.populatePaintArrays(this.layoutVertexArray.length,e.properties)},FillBucket.programInterface=fillInterface,module.exports=FillBucket;\n},{\"../../gl/index_buffer\":61,\"../../gl/vertex_buffer\":62,\"../../util/classify_rings\":205,\"../index_array_type\":50,\"../load_geometry\":51,\"../program_configuration\":53,\"../segment\":55,\"../vertex_array_type\":56,\"earcut\":11}],45:[function(_dereq_,module,exports){\n\"use strict\";function addVertex(e,r,t,a,i,n,o,s){e.emplaceBack(r,t,2*Math.floor(a*FACTOR)+o,i*FACTOR*2,n*FACTOR*2,Math.round(s))}function isBoundaryEdge(e,r){return e.x===r.x&&(e.x<0||e.x>EXTENT)||e.y===r.y&&(e.y<0||e.y>EXTENT)}var ref=_dereq_(\"../segment\"),SegmentVector=ref.SegmentVector,MAX_VERTEX_ARRAY_LENGTH=ref.MAX_VERTEX_ARRAY_LENGTH,VertexBuffer=_dereq_(\"../../gl/vertex_buffer\"),IndexBuffer=_dereq_(\"../../gl/index_buffer\"),ref$1=_dereq_(\"../program_configuration\"),ProgramConfigurationSet=ref$1.ProgramConfigurationSet,createVertexArrayType=_dereq_(\"../vertex_array_type\"),ref$2=_dereq_(\"../index_array_type\"),TriangleIndexArray=ref$2.TriangleIndexArray,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\"}],indexArrayType:TriangleIndexArray,paintAttributes:[{property:\"fill-extrusion-base\"},{property:\"fill-extrusion-height\"},{property:\"fill-extrusion-color\"}]},FACTOR=Math.pow(2,13),LayoutVertexArrayType=createVertexArrayType(fillExtrusionInterface.layoutAttributes),FillExtrusionBucket=function(e){this.zoom=e.zoom,this.overscaling=e.overscaling,this.layers=e.layers,this.index=e.index,this.layoutVertexArray=new LayoutVertexArrayType(e.layoutVertexArray),this.indexArray=new TriangleIndexArray(e.indexArray),this.programConfigurations=new ProgramConfigurationSet(fillExtrusionInterface,e.layers,e.zoom,e.programConfigurations),this.segments=new SegmentVector(e.segments)};FillExtrusionBucket.prototype.populate=function(e,r){for(var t=this,a=0,i=e;a<i.length;a+=1){var n=i[a],o=n.feature,s=n.index,u=n.sourceLayerIndex;if(t.layers[0].filter(o)){var y=loadGeometry(o);t.addFeature(o,y),r.featureIndex.insert(o,y,s,u,t.index)}}},FillExtrusionBucket.prototype.isEmpty=function(){return 0===this.layoutVertexArray.length},FillExtrusionBucket.prototype.serialize=function(e){return{zoom:this.zoom,layerIds:this.layers.map(function(e){return e.id}),layoutVertexArray:this.layoutVertexArray.serialize(e),indexArray:this.indexArray.serialize(e),programConfigurations:this.programConfigurations.serialize(e),segments:this.segments.get()}},FillExtrusionBucket.prototype.upload=function(e){this.layoutVertexBuffer=new VertexBuffer(e,this.layoutVertexArray),this.indexBuffer=new IndexBuffer(e,this.indexArray),this.programConfigurations.upload(e)},FillExtrusionBucket.prototype.destroy=function(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.programConfigurations.destroy(),this.segments.destroy())},FillExtrusionBucket.prototype.addFeature=function(e,r){for(var t=this,a=0,i=classifyRings(r,EARCUT_MAX_RINGS);a<i.length;a+=1){for(var n=i[a],o=0,s=0,u=n;s<u.length;s+=1){o+=u[s].length}for(var y=t.segments.prepareSegment(4,t.layoutVertexArray,t.indexArray),l=0,x=n;l<x.length;l+=1){var f=x[l];if(0!==f.length)for(var g=0,p=0;p<f.length;p++){var d=f[p];if(p>=1){var h=f[p-1];if(!isBoundaryEdge(d,h)){y.vertexLength+4>MAX_VERTEX_ARRAY_LENGTH&&(y=t.segments.prepareSegment(4,t.layoutVertexArray,t.indexArray));var A=d.sub(h)._perp()._unit();addVertex(t.layoutVertexArray,d.x,d.y,A.x,A.y,0,0,g),addVertex(t.layoutVertexArray,d.x,d.y,A.x,A.y,0,1,g),g+=h.dist(d),addVertex(t.layoutVertexArray,h.x,h.y,A.x,A.y,0,0,g),addVertex(t.layoutVertexArray,h.x,h.y,A.x,A.y,0,1,g);var c=y.vertexLength;t.indexArray.emplaceBack(c,c+1,c+2),t.indexArray.emplaceBack(c+1,c+2,c+3),y.vertexLength+=4,y.primitiveLength+=2}}}}y.vertexLength+o>MAX_VERTEX_ARRAY_LENGTH&&(y=t.segments.prepareSegment(o,t.layoutVertexArray,t.indexArray));for(var m=[],V=[],E=y.vertexLength,v=0,_=n;v<_.length;v+=1){var T=_[v];if(0!==T.length){T!==n[0]&&V.push(m.length/2);for(var B=0;B<T.length;B++){var R=T[B];addVertex(t.layoutVertexArray,R.x,R.y,0,0,1,1,0),m.push(R.x),m.push(R.y)}}}for(var I=earcut(m,V),C=0;C<I.length;C+=3)t.indexArray.emplaceBack(E+I[C],E+I[C+1],E+I[C+2]);y.primitiveLength+=I.length/3,y.vertexLength+=o}this.programConfigurations.populatePaintArrays(this.layoutVertexArray.length,e.properties)},FillExtrusionBucket.programInterface=fillExtrusionInterface,module.exports=FillExtrusionBucket;\n},{\"../../gl/index_buffer\":61,\"../../gl/vertex_buffer\":62,\"../../util/classify_rings\":205,\"../extent\":48,\"../index_array_type\":50,\"../load_geometry\":51,\"../program_configuration\":53,\"../segment\":55,\"../vertex_array_type\":56,\"earcut\":11}],46:[function(_dereq_,module,exports){\n\"use strict\";function addLineVertex(e,t,r,i,a,n,s){e.emplaceBack(t.x,t.y,i?1:0,a?1:-1,Math.round(EXTRUDE_SCALE*r.x)+128,Math.round(EXTRUDE_SCALE*r.y)+128,1+(0===n?0:n<0?-1:1)|(s*LINE_DISTANCE_SCALE&63)<<2,s*LINE_DISTANCE_SCALE>>6)}var ref=_dereq_(\"../segment\"),SegmentVector=ref.SegmentVector,VertexBuffer=_dereq_(\"../../gl/vertex_buffer\"),IndexBuffer=_dereq_(\"../../gl/index_buffer\"),ref$1=_dereq_(\"../program_configuration\"),ProgramConfigurationSet=ref$1.ProgramConfigurationSet,createVertexArrayType=_dereq_(\"../vertex_array_type\"),ref$2=_dereq_(\"../index_array_type\"),TriangleIndexArray=ref$2.TriangleIndexArray,loadGeometry=_dereq_(\"../load_geometry\"),EXTENT=_dereq_(\"../extent\"),vectorTileFeatureTypes=_dereq_(\"@mapbox/vector-tile\").VectorTileFeature.types,EXTRUDE_SCALE=63,COS_HALF_SHARP_CORNER=Math.cos(Math.PI/180*37.5),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_normal\",components:4,type:\"Int16\"},{name:\"a_data\",components:4,type:\"Uint8\"}],paintAttributes:[{property:\"line-color\"},{property:\"line-blur\"},{property:\"line-opacity\"},{property:\"line-gap-width\",name:\"gapwidth\"},{property:\"line-offset\"},{property:\"line-width\"},{property:\"line-width\",name:\"floorwidth\",useIntegerZoom:!0}],indexArrayType:TriangleIndexArray},LayoutVertexArrayType=createVertexArrayType(lineInterface.layoutAttributes),LineBucket=function(e){this.zoom=e.zoom,this.overscaling=e.overscaling,this.layers=e.layers,this.index=e.index,this.layoutVertexArray=new LayoutVertexArrayType(e.layoutVertexArray),this.indexArray=new TriangleIndexArray(e.indexArray),this.programConfigurations=new ProgramConfigurationSet(lineInterface,e.layers,e.zoom,e.programConfigurations),this.segments=new SegmentVector(e.segments)};LineBucket.prototype.populate=function(e,t){for(var r=this,i=0,a=e;i<a.length;i+=1){var n=a[i],s=n.feature,o=n.index,u=n.sourceLayerIndex;if(r.layers[0].filter(s)){var d=loadGeometry(s);r.addFeature(s,d),t.featureIndex.insert(s,d,o,u,r.index)}}},LineBucket.prototype.isEmpty=function(){return 0===this.layoutVertexArray.length},LineBucket.prototype.serialize=function(e){return{zoom:this.zoom,layerIds:this.layers.map(function(e){return e.id}),layoutVertexArray:this.layoutVertexArray.serialize(e),indexArray:this.indexArray.serialize(e),programConfigurations:this.programConfigurations.serialize(e),segments:this.segments.get()}},LineBucket.prototype.upload=function(e){this.layoutVertexBuffer=new VertexBuffer(e,this.layoutVertexArray),this.indexBuffer=new IndexBuffer(e,this.indexArray),this.programConfigurations.upload(e)},LineBucket.prototype.destroy=function(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.programConfigurations.destroy(),this.segments.destroy())},LineBucket.prototype.addFeature=function(e,t){for(var r=this,i=this.layers[0].layout,a=this.layers[0].getLayoutValue(\"line-join\",{zoom:this.zoom},e.properties),n=i[\"line-cap\"],s=i[\"line-miter-limit\"],o=i[\"line-round-limit\"],u=0,d=t;u<d.length;u+=1){var l=d[u];r.addLine(l,e,a,n,s,o)}},LineBucket.prototype.addLine=function(e,t,r,i,a,n){for(var s=this,o=t.properties,u=\"Polygon\"===vectorTileFeatureTypes[t.type],d=e.length;d>=2&&e[d-1].equals(e[d-2]);)d--;for(var l=0;l<d-1&&e[l].equals(e[l+1]);)l++;if(!(d<(u?3:2))){\"bevel\"===r&&(a=1.05);var y=SHARP_CORNER_OFFSET*(EXTENT/(512*this.overscaling)),h=e[l],p=this.segments.prepareSegment(10*d,this.layoutVertexArray,this.indexArray);this.distance=0;var c,f,x,m=i,g=u?\"butt\":i,_=!0,A=void 0,v=void 0,V=void 0,C=void 0;this.e1=this.e2=this.e3=-1,u&&(c=e[d-2],C=h.sub(c)._unit()._perp());for(var L=l;L<d;L++)if(!(v=u&&L===d-1?e[l+1]:e[L+1])||!e[L].equals(v)){C&&(V=C),c&&(A=c),c=e[L],C=v?v.sub(c)._unit()._perp():V,V=V||C;var E=V.add(C);0===E.x&&0===E.y||E._unit();var S=E.x*C.x+E.y*C.y,I=0!==S?1/S:1/0,T=S<COS_HALF_SHARP_CORNER&&A&&v;if(T&&L>l){var B=c.dist(A);if(B>2*y){var b=c.sub(c.sub(A)._mult(y/B)._round());s.distance+=b.dist(A),s.addCurrentVertex(b,s.distance,V.mult(1),0,0,!1,p),A=b}}var N=A&&v,k=N?r:v?m:g;if(N&&\"round\"===k&&(I<n?k=\"miter\":I<=2&&(k=\"fakeround\")),\"miter\"===k&&I>a&&(k=\"bevel\"),\"bevel\"===k&&(I>2&&(k=\"flipbevel\"),I<a&&(k=\"miter\")),A&&(s.distance+=c.dist(A)),\"miter\"===k)E._mult(I),s.addCurrentVertex(c,s.distance,E,0,0,!1,p);else if(\"flipbevel\"===k){if(I>100)E=C.clone().mult(-1);else{var R=V.x*C.y-V.y*C.x>0?-1:1,F=I*V.add(C).mag()/V.sub(C).mag();E._perp()._mult(F*R)}s.addCurrentVertex(c,s.distance,E,0,0,!1,p),s.addCurrentVertex(c,s.distance,E.mult(-1),0,0,!1,p)}else if(\"bevel\"===k||\"fakeround\"===k){var q=V.x*C.y-V.y*C.x>0,P=-Math.sqrt(I*I-1);if(q?(x=0,f=P):(f=0,x=P),_||s.addCurrentVertex(c,s.distance,V,f,x,!1,p),\"fakeround\"===k){for(var w=Math.floor(8*(.5-(S-.5))),z=void 0,D=0;D<w;D++)z=C.mult((D+1)/(w+1))._add(V)._unit(),s.addPieSliceVertex(c,s.distance,z,q,p);s.addPieSliceVertex(c,s.distance,E,q,p);for(var M=w-1;M>=0;M--)z=V.mult((M+1)/(w+1))._add(C)._unit(),s.addPieSliceVertex(c,s.distance,z,q,p)}v&&s.addCurrentVertex(c,s.distance,C,-f,-x,!1,p)}else\"butt\"===k?(_||s.addCurrentVertex(c,s.distance,V,0,0,!1,p),v&&s.addCurrentVertex(c,s.distance,C,0,0,!1,p)):\"square\"===k?(_||(s.addCurrentVertex(c,s.distance,V,1,1,!1,p),s.e1=s.e2=-1),v&&s.addCurrentVertex(c,s.distance,C,-1,-1,!1,p)):\"round\"===k&&(_||(s.addCurrentVertex(c,s.distance,V,0,0,!1,p),s.addCurrentVertex(c,s.distance,V,1,1,!0,p),s.e1=s.e2=-1),v&&(s.addCurrentVertex(c,s.distance,C,-1,-1,!0,p),s.addCurrentVertex(c,s.distance,C,0,0,!1,p)));if(T&&L<d-1){var O=c.dist(v);if(O>2*y){var X=c.add(v.sub(c)._mult(y/O)._round());s.distance+=X.dist(c),s.addCurrentVertex(X,s.distance,C.mult(1),0,0,!1,p),c=X}}_=!1}this.programConfigurations.populatePaintArrays(this.layoutVertexArray.length,o)}},LineBucket.prototype.addCurrentVertex=function(e,t,r,i,a,n,s){var o,u=this.layoutVertexArray,d=this.indexArray;o=r.clone(),i&&o._sub(r.perp()._mult(i)),addLineVertex(u,e,o,n,!1,i,t),this.e3=s.vertexLength++,this.e1>=0&&this.e2>=0&&(d.emplaceBack(this.e1,this.e2,this.e3),s.primitiveLength++),this.e1=this.e2,this.e2=this.e3,o=r.mult(-1),a&&o._sub(r.perp()._mult(a)),addLineVertex(u,e,o,n,!0,-a,t),this.e3=s.vertexLength++,this.e1>=0&&this.e2>=0&&(d.emplaceBack(this.e1,this.e2,this.e3),s.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,s))},LineBucket.prototype.addPieSliceVertex=function(e,t,r,i,a){r=r.mult(i?-1:1);var n=this.layoutVertexArray,s=this.indexArray;addLineVertex(n,e,r,!1,i,0,t),this.e3=a.vertexLength++,this.e1>=0&&this.e2>=0&&(s.emplaceBack(this.e1,this.e2,this.e3),a.primitiveLength++),i?this.e2=this.e3:this.e1=this.e3},LineBucket.programInterface=lineInterface,module.exports=LineBucket;\n},{\"../../gl/index_buffer\":61,\"../../gl/vertex_buffer\":62,\"../extent\":48,\"../index_array_type\":50,\"../load_geometry\":51,\"../program_configuration\":53,\"../segment\":55,\"../vertex_array_type\":56,\"@mapbox/vector-tile\":6}],47:[function(_dereq_,module,exports){\n\"use strict\";function addVertex(e,t,o,r,a,i,n,s){e.emplaceBack(t,o,Math.round(64*r),Math.round(64*a),i,n,s?s[0]:void 0,s?s[1]:void 0)}function addDynamicAttributes(e,t,o,r){var a=2*Math.PI,i=packUint8ToFloat((o+a)%a/a*255,10*r);e.emplaceBack(t.x,t.y,i),e.emplaceBack(t.x,t.y,i),e.emplaceBack(t.x,t.y,i),e.emplaceBack(t.x,t.y,i)}function addCollisionBoxVertex(e,t,o,r,a,i){return e.emplaceBack(t.x,t.y,o.x,o.y,Math.round(r.x),Math.round(r.y),10*a,10*i)}function getSizeData(e,t,o){var r={};if(r.isFeatureConstant=t.isLayoutValueFeatureConstant(o),r.isZoomConstant=t.isLayoutValueZoomConstant(o),r.isFeatureConstant&&(r.layoutSize=t.getLayoutValue(o,{zoom:e+1})),!r.isZoomConstant){for(var a=t.getLayoutValueStopZoomLevels(o),i=0;i<a.length&&a[i]<=e;)i++;i=Math.max(0,i-1);for(var n=i;n<a.length&&a[n]<e+1;)n++;n=Math.min(a.length-1,n),r.coveringZoomRange=[a[i],a[n]],t.isLayoutValueFeatureConstant(o)&&(r.coveringStopValues=[t.getLayoutValue(o,{zoom:a[i]}),t.getLayoutValue(o,{zoom:a[n]})]),r.functionBase=t.getLayoutProperty(o).base,void 0===r.functionBase&&(r.functionBase=1),r.functionType=t.getLayoutProperty(o).type||\"exponential\"}return r}function getSizeVertexData(e,t,o,r,a){return e.isLayoutValueZoomConstant(r)&&!e.isLayoutValueFeatureConstant(r)?[10*e.getLayoutValue(r,{},a)]:e.isLayoutValueZoomConstant(r)||e.isLayoutValueFeatureConstant(r)?null:[10*e.getLayoutValue(r,{zoom:o[0]},a),10*e.getLayoutValue(r,{zoom:o[1]},a)]}var Point=_dereq_(\"@mapbox/point-geometry\"),ref=_dereq_(\"../segment\"),SegmentVector=ref.SegmentVector,VertexBuffer=_dereq_(\"../../gl/vertex_buffer\"),IndexBuffer=_dereq_(\"../../gl/index_buffer\"),ref$1=_dereq_(\"../program_configuration\"),ProgramConfigurationSet=ref$1.ProgramConfigurationSet,createVertexArrayType=_dereq_(\"../vertex_array_type\"),ref$2=_dereq_(\"../index_array_type\"),TriangleIndexArray=ref$2.TriangleIndexArray,LineIndexArray=ref$2.LineIndexArray,EXTENT=_dereq_(\"../extent\"),ref$3=_dereq_(\"../../shaders/encode_attribute\"),packUint8ToFloat=ref$3.packUint8ToFloat,Anchor=_dereq_(\"../../symbol/anchor\"),getAnchors=_dereq_(\"../../symbol/get_anchors\"),resolveTokens=_dereq_(\"../../util/token\"),ref$4=_dereq_(\"../../symbol/quads\"),getGlyphQuads=ref$4.getGlyphQuads,getIconQuads=ref$4.getIconQuads,ref$5=_dereq_(\"../../symbol/shaping\"),shapeText=ref$5.shapeText,shapeIcon=ref$5.shapeIcon,WritingMode=ref$5.WritingMode,transformText=_dereq_(\"../../symbol/transform_text\"),mergeLines=_dereq_(\"../../symbol/mergelines\"),clipLine=_dereq_(\"../../symbol/clip_line\"),util=_dereq_(\"../../util/util\"),scriptDetection=_dereq_(\"../../util/script_detection\"),loadGeometry=_dereq_(\"../load_geometry\"),CollisionFeature=_dereq_(\"../../symbol/collision_feature\"),findPoleOfInaccessibility=_dereq_(\"../../util/find_pole_of_inaccessibility\"),classifyRings=_dereq_(\"../../util/classify_rings\"),vectorTileFeatureTypes=_dereq_(\"@mapbox/vector-tile\").VectorTileFeature.types,createStructArrayType=_dereq_(\"../../util/struct_array\"),verticalizePunctuation=_dereq_(\"../../util/verticalize_punctuation\"),PlacedSymbolArray=createStructArrayType({members:[{type:\"Int16\",name:\"anchorX\"},{type:\"Int16\",name:\"anchorY\"},{type:\"Uint16\",name:\"glyphStartIndex\"},{type:\"Uint16\",name:\"numGlyphs\"},{type:\"Uint32\",name:\"lineStartIndex\"},{type:\"Uint32\",name:\"lineLength\"},{type:\"Uint16\",name:\"segment\"},{type:\"Uint16\",name:\"lowerSize\"},{type:\"Uint16\",name:\"upperSize\"},{type:\"Float32\",name:\"lineOffsetX\"},{type:\"Float32\",name:\"lineOffsetY\"},{type:\"Float32\",name:\"placementZoom\"},{type:\"Uint8\",name:\"vertical\"}]}),GlyphOffsetArray=createStructArrayType({members:[{type:\"Float32\",name:\"offsetX\"}]}),LineVertexArray=createStructArrayType({members:[{type:\"Int16\",name:\"x\"},{type:\"Int16\",name:\"y\"}]}),layoutAttributes=[{name:\"a_pos_offset\",components:4,type:\"Int16\"},{name:\"a_data\",components:4,type:\"Uint16\"}],dynamicLayoutAttributes=[{name:\"a_projected_pos\",components:3,type:\"Float32\"}],symbolInterfaces={text:{layoutAttributes:layoutAttributes,dynamicLayoutAttributes:dynamicLayoutAttributes,indexArrayType:TriangleIndexArray,paintAttributes:[{property:\"text-color\",name:\"fill_color\"},{property:\"text-halo-color\",name:\"halo_color\"},{property:\"text-halo-width\",name:\"halo_width\"},{property:\"text-halo-blur\",name:\"halo_blur\"},{property:\"text-opacity\",name:\"opacity\"}]},icon:{layoutAttributes:layoutAttributes,dynamicLayoutAttributes:dynamicLayoutAttributes,indexArrayType:TriangleIndexArray,paintAttributes:[{property:\"icon-color\",name:\"fill_color\"},{property:\"icon-halo-color\",name:\"halo_color\"},{property:\"icon-halo-width\",name:\"halo_width\"},{property:\"icon-halo-blur\",name:\"halo_blur\"},{property:\"icon-opacity\",name:\"opacity\"}]},collisionBox:{layoutAttributes:[{name:\"a_pos\",components:2,type:\"Int16\"},{name:\"a_anchor_pos\",components:2,type:\"Int16\"},{name:\"a_extrude\",components:2,type:\"Int16\"},{name:\"a_data\",components:2,type:\"Uint8\"}],indexArrayType:LineIndexArray}},SymbolBuffers=function(e,t,o,r){this.programInterface=e;var a=createVertexArrayType(e.layoutAttributes),i=e.indexArrayType;if(this.layoutVertexArray=new a(r&&r.layoutVertexArray),this.indexArray=new i(r&&r.indexArray),this.programConfigurations=new ProgramConfigurationSet(e,t,o,r&&r.programConfigurations),this.segments=new SegmentVector(r&&r.segments),e.dynamicLayoutAttributes){var n=createVertexArrayType(e.dynamicLayoutAttributes);this.dynamicLayoutVertexArray=new n(r&&r.dynamicLayoutVertexArray)}};SymbolBuffers.prototype.serialize=function(e){return{layoutVertexArray:this.layoutVertexArray.serialize(e),indexArray:this.indexArray.serialize(e),programConfigurations:this.programConfigurations.serialize(e),segments:this.segments.get(),dynamicLayoutVertexArray:this.dynamicLayoutVertexArray&&this.dynamicLayoutVertexArray.serialize(e)}},SymbolBuffers.prototype.upload=function(e){this.layoutVertexBuffer=new VertexBuffer(e,this.layoutVertexArray),this.indexBuffer=new IndexBuffer(e,this.indexArray),this.programConfigurations.upload(e),this.programInterface.dynamicLayoutAttributes&&(this.dynamicLayoutVertexBuffer=new VertexBuffer(e,this.dynamicLayoutVertexArray,!0))},SymbolBuffers.prototype.destroy=function(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.programConfigurations.destroy(),this.segments.destroy(),this.dynamicLayoutVertexBuffer&&this.dynamicLayoutVertexBuffer.destroy())};var SymbolBucket=function(e){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.pixelRatio=e.pixelRatio,e.text)this.text=new SymbolBuffers(symbolInterfaces.text,e.layers,e.zoom,e.text),this.icon=new SymbolBuffers(symbolInterfaces.icon,e.layers,e.zoom,e.icon),this.collisionBox=new SymbolBuffers(symbolInterfaces.collisionBox,e.layers,e.zoom,e.collisionBox),this.textSizeData=e.textSizeData,this.iconSizeData=e.iconSizeData,this.placedGlyphArray=new PlacedSymbolArray(e.placedGlyphArray),this.placedIconArray=new PlacedSymbolArray(e.placedIconArray),this.glyphOffsetArray=new GlyphOffsetArray(e.glyphOffsetArray),this.lineVertexArray=new LineVertexArray(e.lineVertexArray);else{var t=this.layers[0];this.textSizeData=getSizeData(this.zoom,t,\"text-size\"),this.iconSizeData=getSizeData(this.zoom,t,\"icon-size\")}};SymbolBucket.prototype.populate=function(e,t){var o=this,r=this.layers[0],a=r.layout,i=a[\"text-font\"],n=(!r.isLayoutValueFeatureConstant(\"text-field\")||a[\"text-field\"])&&i,s=!r.isLayoutValueFeatureConstant(\"icon-image\")||a[\"icon-image\"];if(this.features=[],n||s){for(var l=t.iconDependencies,y=t.glyphDependencies,c=y[i]=y[i]||{},u={zoom:this.zoom},p=0,x=e;p<x.length;p+=1){var m=x[p],h=m.feature,d=m.index,f=m.sourceLayerIndex;if(r.filter(h)){var g=void 0;n&&(g=r.getLayoutValue(\"text-field\",u,h.properties),r.isLayoutValueFeatureConstant(\"text-field\")&&(g=resolveTokens(h.properties,g)),g=transformText(g,r,u,h.properties));var b=void 0;if(s&&(b=r.getLayoutValue(\"icon-image\",u,h.properties),r.isLayoutValueFeatureConstant(\"icon-image\")&&(b=resolveTokens(h.properties,b))),(g||b)&&(o.features.push({text:g,icon:b,index:d,sourceLayerIndex:f,geometry:loadGeometry(h),properties:h.properties,type:vectorTileFeatureTypes[h.type]}),b&&(l[b]=!0),g))for(var A=\"map\"===a[\"text-rotation-alignment\"]&&\"line\"===a[\"symbol-placement\"],v=scriptDetection.allowsVerticalWritingMode(g),S=0;S<g.length;S++)if(c[g.charCodeAt(S)]=!0,A&&v){var I=verticalizePunctuation.lookup[g.charAt(S)];I&&(c[I.charCodeAt(0)]=!0)}}}\"line\"===a[\"symbol-placement\"]&&(this.features=mergeLines(this.features))}},SymbolBucket.prototype.isEmpty=function(){return 0===this.icon.layoutVertexArray.length&&0===this.text.layoutVertexArray.length&&0===this.collisionBox.layoutVertexArray.length},SymbolBucket.prototype.serialize=function(e){return{zoom:this.zoom,layerIds:this.layers.map(function(e){return e.id}),sdfIcons:this.sdfIcons,iconsNeedLinear:this.iconsNeedLinear,textSizeData:this.textSizeData,iconSizeData:this.iconSizeData,placedGlyphArray:this.placedGlyphArray.serialize(e),placedIconArray:this.placedIconArray.serialize(e),glyphOffsetArray:this.glyphOffsetArray.serialize(e),lineVertexArray:this.lineVertexArray.serialize(e),text:this.text.serialize(e),icon:this.icon.serialize(e),collisionBox:this.collisionBox.serialize(e)}},SymbolBucket.prototype.upload=function(e){this.text.upload(e),this.icon.upload(e),this.collisionBox.upload(e)},SymbolBucket.prototype.destroy=function(){this.text.destroy(),this.icon.destroy(),this.collisionBox.destroy()},SymbolBucket.prototype.prepare=function(e,t,o,r){var a=this;this.symbolInstances=[];var i=512*this.overscaling;this.tilePixelRatio=EXTENT/i,this.compareText={},this.iconsNeedLinear=!1;for(var n=this.layers[0].layout,s=24*n[\"text-line-height\"],l=n[\"text-font\"].join(\",\"),y=\"map\"===n[\"text-rotation-alignment\"]&&\"line\"===n[\"symbol-placement\"],c=e[l]||{},u=t[l]||{},p=0,x=a.features;p<x.length;p+=1){var m=x[p],h={},d=m.text;if(d){var f=a.layers[0].getLayoutValue(\"text-offset\",{zoom:a.zoom},m.properties).map(function(e){return 24*e}),g=24*a.layers[0].getLayoutValue(\"text-letter-spacing\",{zoom:a.zoom},m.properties),b=scriptDetection.allowsLetterSpacing(d)?g:0,A=a.layers[0].getLayoutValue(\"text-anchor\",{zoom:a.zoom},m.properties),v=a.layers[0].getLayoutValue(\"text-justify\",{zoom:a.zoom},m.properties),S=\"line\"!==n[\"symbol-placement\"]?24*a.layers[0].getLayoutValue(\"text-max-width\",{zoom:a.zoom},m.properties):0,I=function(e,t){return shapeText(e,c,S,s,A,v,b,f,24,t)};h[WritingMode.horizontal]=I(d,WritingMode.horizontal),scriptDetection.allowsVerticalWritingMode(d)&&y&&(h[WritingMode.vertical]=I(d,WritingMode.vertical))}var B=void 0;if(m.icon){var z=o[m.icon];z&&(B=shapeIcon(r[m.icon],a.layers[0].getLayoutValue(\"icon-offset\",{zoom:a.zoom},m.properties),a.layers[0].getLayoutValue(\"icon-anchor\",{zoom:a.zoom},m.properties)),void 0===a.sdfIcons?a.sdfIcons=z.sdf:a.sdfIcons!==z.sdf&&util.warnOnce(\"Style sheet warning: Cannot mix SDF and non-SDF icons in one buffer\"),z.pixelRatio!==a.pixelRatio?a.iconsNeedLinear=!0:0===n[\"icon-rotate\"]&&a.layers[0].isLayoutValueFeatureConstant(\"icon-rotate\")||(a.iconsNeedLinear=!0))}(h[WritingMode.horizontal]||B)&&a.addFeature(m,h,B,u)}},SymbolBucket.prototype.addFeature=function(e,t,o,r){var a=this,i=this.layers[0].getLayoutValue(\"text-size\",{zoom:this.zoom+1},e.properties),n=this.layers[0].getLayoutValue(\"icon-size\",{zoom:this.zoom+1},e.properties),s=this.layers[0].getLayoutValue(\"text-offset\",{zoom:this.zoom},e.properties),l=this.layers[0].getLayoutValue(\"icon-offset\",{zoom:this.zoom},e.properties),y=this.layers[0].getLayoutValue(\"text-size\",{zoom:18},e.properties);void 0===y&&(y=i);var c=this.layers[0].layout,u=i/24,p=this.tilePixelRatio*u,x=this.tilePixelRatio*y/24,m=this.tilePixelRatio*n,h=this.tilePixelRatio*c[\"symbol-spacing\"],d=c[\"symbol-avoid-edges\"],f=c[\"text-padding\"]*this.tilePixelRatio,g=c[\"icon-padding\"]*this.tilePixelRatio,b=c[\"text-max-angle\"]/180*Math.PI,A=\"map\"===c[\"text-rotation-alignment\"]&&\"line\"===c[\"symbol-placement\"],v=\"map\"===c[\"icon-rotation-alignment\"]&&\"line\"===c[\"symbol-placement\"],S=c[\"text-allow-overlap\"]||c[\"icon-allow-overlap\"]||c[\"text-ignore-placement\"]||c[\"icon-ignore-placement\"],I=c[\"symbol-placement\"],B=h/2,z=function(i,n){var y=!(n.x<0||n.x>EXTENT||n.y<0||n.y>EXTENT);if(!d||y){var c=y||S;a.addSymbolInstance(n,i,t,o,a.layers[0],c,a.collisionBoxArray,e.index,e.sourceLayerIndex,a.index,p,f,A,s,m,g,v,l,{zoom:a.zoom},e.properties,r)}};if(\"line\"===I)for(var V=0,L=clipLine(e.geometry,0,0,EXTENT,EXTENT);V<L.length;V+=1)for(var T=L[V],w=getAnchors(T,h,b,t[WritingMode.vertical]||t[WritingMode.horizontal],o,24,x,a.overscaling,EXTENT),M=0,C=w;M<C.length;M+=1){var _=C[M],k=t[WritingMode.horizontal];k&&a.anchorIsTooClose(k.text,B,_)||z(T,_)}else if(\"Polygon\"===e.type)for(var P=0,F=classifyRings(e.geometry,0);P<F.length;P+=1){var E=F[P],D=findPoleOfInaccessibility(E,16);z(E[0],new Anchor(D.x,D.y,0))}else if(\"LineString\"===e.type)for(var q=0,O=e.geometry;q<O.length;q+=1){var N=O[q];z(N,new Anchor(N[0].x,N[0].y,0))}else if(\"Point\"===e.type)for(var W=0,R=e.geometry;W<R.length;W+=1)for(var G=R[W],$=0,U=G;$<U.length;$+=1){var X=U[$];z([X],new Anchor(X.x,X.y,0))}},SymbolBucket.prototype.anchorIsTooClose=function(e,t,o){var r=this.compareText;if(e in r){for(var a=r[e],i=a.length-1;i>=0;i--)if(o.dist(a[i])<t)return!0}else r[e]=[];return r[e].push(o),!1},SymbolBucket.prototype.place=function(e,t){var o=this;this.text=new SymbolBuffers(symbolInterfaces.text,this.layers,this.zoom),this.icon=new SymbolBuffers(symbolInterfaces.icon,this.layers,this.zoom),this.collisionBox=new SymbolBuffers(symbolInterfaces.collisionBox,this.layers,this.zoom),this.placedGlyphArray=new PlacedSymbolArray,this.placedIconArray=new PlacedSymbolArray,this.glyphOffsetArray=new GlyphOffsetArray,this.lineVertexArray=new LineVertexArray;var r=this.layers[0],a=r.layout,i=e.maxScale,n=\"map\"===a[\"text-rotation-alignment\"]&&\"line\"===a[\"symbol-placement\"],s=\"map\"===a[\"icon-rotation-alignment\"]&&\"line\"===a[\"symbol-placement\"];if(a[\"text-allow-overlap\"]||a[\"icon-allow-overlap\"]||a[\"text-ignore-placement\"]||a[\"icon-ignore-placement\"]){var l=e.angle,y=Math.sin(l),c=Math.cos(l);this.symbolInstances.sort(function(e,t){return(y*e.anchor.x+c*e.anchor.y|0)-(y*t.anchor.x+c*t.anchor.y|0)||t.featureIndex-e.featureIndex})}for(var u=0,p=o.symbolInstances;u<p.length;u+=1){var x=p[u],m={boxStartIndex:x.textBoxStartIndex,boxEndIndex:x.textBoxEndIndex},h={boxStartIndex:x.iconBoxStartIndex,boxEndIndex:x.iconBoxEndIndex},d=!(x.textBoxStartIndex===x.textBoxEndIndex),f=!(x.iconBoxStartIndex===x.iconBoxEndIndex),g=a[\"text-optional\"]||!d,b=a[\"icon-optional\"]||!f,A=d?e.placeCollisionFeature(m,a[\"text-allow-overlap\"],a[\"symbol-avoid-edges\"]):e.minScale,v=f?e.placeCollisionFeature(h,a[\"icon-allow-overlap\"],a[\"symbol-avoid-edges\"]):e.minScale;if(g||b?!b&&A?A=Math.max(v,A):!g&&v&&(v=Math.max(v,A)):v=A=Math.max(v,A),d||f){for(var S=x.line,I=o.lineVertexArray.length,B=0;B<S.length;B++)o.lineVertexArray.emplaceBack(S[B].x,S[B].y);var z=o.lineVertexArray.length-I;if(d&&(e.insertCollisionFeature(m,A,a[\"text-ignore-placement\"]),A<=i)){var V=getSizeVertexData(r,o.zoom,o.textSizeData.coveringZoomRange,\"text-size\",x.featureProperties);o.addSymbols(o.text,x.glyphQuads,A,V,a[\"text-keep-upright\"],x.textOffset,n,e.angle,x.featureProperties,x.writingModes,x.anchor,I,z,o.placedGlyphArray)}if(f&&(e.insertCollisionFeature(h,v,a[\"icon-ignore-placement\"]),v<=i)){var L=getSizeVertexData(r,o.zoom,o.iconSizeData.coveringZoomRange,\"icon-size\",x.featureProperties);o.addSymbols(o.icon,x.iconQuads,v,L,a[\"icon-keep-upright\"],x.iconOffset,s,e.angle,x.featureProperties,0,x.anchor,I,z,o.placedIconArray)}}}t&&this.addToDebugBuffers(e)},SymbolBucket.prototype.addSymbols=function(e,t,o,r,a,i,n,s,l,y,c,u,p,x){for(var m=this,h=e.indexArray,d=e.layoutVertexArray,f=e.dynamicLayoutVertexArray,g=this.zoom,b=Math.max(Math.log(o)/Math.LN2+g,0),A=this.glyphOffsetArray.length,v=(c.angle+s+2*Math.PI)%(2*Math.PI),S=v>1*Math.PI/4&&v<=3*Math.PI/4||v>5*Math.PI/4&&v<=7*Math.PI/4,I=Boolean(y&WritingMode.vertical)&&S,B=0,z=t;B<z.length;B+=1){var V=z[B];if(!n||!a||V.writingMode===WritingMode.vertical===I){var L=V.tl,T=V.tr,w=V.bl,M=V.br,C=V.tex,_=e.segments.prepareSegment(4,e.layoutVertexArray,e.indexArray),k=_.vertexLength,P=V.glyphOffset[1];addVertex(d,c.x,c.y,L.x,P+L.y,C.x,C.y,r),addVertex(d,c.x,c.y,T.x,P+T.y,C.x+C.w,C.y,r),addVertex(d,c.x,c.y,w.x,P+w.y,C.x,C.y+C.h,r),addVertex(d,c.x,c.y,M.x,P+M.y,C.x+C.w,C.y+C.h,r),addDynamicAttributes(f,c,0,b),h.emplaceBack(k,k+1,k+2),h.emplaceBack(k+1,k+2,k+3),_.vertexLength+=4,_.primitiveLength+=2,m.glyphOffsetArray.emplaceBack(V.glyphOffset[0])}}x.emplaceBack(c.x,c.y,A,this.glyphOffsetArray.length-A,u,p,c.segment,r?r[0]:0,r?r[1]:0,i[0],i[1],b,I),e.programConfigurations.populatePaintArrays(e.layoutVertexArray.length,l)},SymbolBucket.prototype.addToDebugBuffers=function(e){for(var t=this,o=this.collisionBox,r=o.layoutVertexArray,a=o.indexArray,i=-e.angle,n=e.yStretch,s=0,l=t.symbolInstances;s<l.length;s+=1){var y=l[s];y.textCollisionFeature={boxStartIndex:y.textBoxStartIndex,boxEndIndex:y.textBoxEndIndex},y.iconCollisionFeature={boxStartIndex:y.iconBoxStartIndex,boxEndIndex:y.iconBoxEndIndex};for(var c=0;c<2;c++){var u=y[0===c?\"textCollisionFeature\":\"iconCollisionFeature\"];if(u)for(var p=u.boxStartIndex;p<u.boxEndIndex;p++){var x=t.collisionBoxArray.get(p);if(!(1===e.perspectiveRatio&&x.maxScale<1)){var m=x.anchorPoint,h=new Point(x.x1,x.y1*n)._rotate(i),d=new Point(x.x2,x.y1*n)._rotate(i),f=new Point(x.x1,x.y2*n)._rotate(i),g=new Point(x.x2,x.y2*n)._rotate(i),b=Math.max(0,Math.min(25,t.zoom+Math.log(x.maxScale)/Math.LN2)),A=Math.max(0,Math.min(25,t.zoom+Math.log(x.placementScale)/Math.LN2)),v=o.segments.prepareSegment(4,o.layoutVertexArray,o.indexArray),S=v.vertexLength;addCollisionBoxVertex(r,m,y.anchor,h,b,A),addCollisionBoxVertex(r,m,y.anchor,d,b,A),addCollisionBoxVertex(r,m,y.anchor,g,b,A),addCollisionBoxVertex(r,m,y.anchor,f,b,A),a.emplaceBack(S,S+1),a.emplaceBack(S+1,S+2),a.emplaceBack(S+2,S+3),a.emplaceBack(S+3,S),v.vertexLength+=4,v.primitiveLength+=4}}}}},SymbolBucket.prototype.addSymbolInstance=function(e,t,o,r,a,i,n,s,l,y,c,u,p,x,m,h,d,f,g,b,A){var v,S,I=[],B=[];for(var z in o){var V=parseInt(z,10);o[V]&&(B=B.concat(i?getGlyphQuads(e,o[V],a,p,g,b,A):[]),v=new CollisionFeature(n,t,e,s,l,y,o[V],c,u,p,!1))}var L=v?v.boxStartIndex:this.collisionBoxArray.length,T=v?v.boxEndIndex:this.collisionBoxArray.length;r&&(I=i?getIconQuads(e,r,a,d,o[WritingMode.horizontal],g,b):[],S=new CollisionFeature(n,t,e,s,l,y,r,m,h,d,!0));var w=S?S.boxStartIndex:this.collisionBoxArray.length,M=S?S.boxEndIndex:this.collisionBoxArray.length;T>SymbolBucket.MAX_INSTANCES&&util.warnOnce(\"Too many symbols being rendered in a tile. See https://github.com/mapbox/mapbox-gl-js/issues/2907\"),M>SymbolBucket.MAX_INSTANCES&&util.warnOnce(\"Too many glyphs being rendered in a tile. See https://github.com/mapbox/mapbox-gl-js/issues/2907\");var C=(o[WritingMode.vertical]?WritingMode.vertical:0)|(o[WritingMode.horizontal]?WritingMode.horizontal:0);this.symbolInstances.push({textBoxStartIndex:L,textBoxEndIndex:T,iconBoxStartIndex:w,iconBoxEndIndex:M,glyphQuads:B,iconQuads:I,textOffset:x,iconOffset:f,anchor:e,line:t,featureIndex:s,featureProperties:b,writingModes:C})},SymbolBucket.programInterfaces=symbolInterfaces,SymbolBucket.MAX_INSTANCES=65535,SymbolBucket.addDynamicAttributes=addDynamicAttributes,module.exports=SymbolBucket;\n},{\"../../gl/index_buffer\":61,\"../../gl/vertex_buffer\":62,\"../../shaders/encode_attribute\":85,\"../../symbol/anchor\":167,\"../../symbol/clip_line\":169,\"../../symbol/collision_feature\":171,\"../../symbol/get_anchors\":173,\"../../symbol/mergelines\":174,\"../../symbol/quads\":176,\"../../symbol/shaping\":177,\"../../symbol/transform_text\":179,\"../../util/classify_rings\":205,\"../../util/find_pole_of_inaccessibility\":211,\"../../util/script_detection\":218,\"../../util/struct_array\":220,\"../../util/token\":222,\"../../util/util\":223,\"../../util/verticalize_punctuation\":225,\"../extent\":48,\"../index_array_type\":50,\"../load_geometry\":51,\"../program_configuration\":53,\"../segment\":55,\"../vertex_array_type\":56,\"@mapbox/point-geometry\":2,\"@mapbox/vector-tile\":6}],48:[function(_dereq_,module,exports){\n\"use strict\";module.exports=8192;\n},{}],49:[function(_dereq_,module,exports){\n\"use strict\";function topDownFeatureComparator(e,r){return r-e}var Point=_dereq_(\"@mapbox/point-geometry\"),loadGeometry=_dereq_(\"./load_geometry\"),EXTENT=_dereq_(\"./extent\"),featureFilter=_dereq_(\"../style-spec/feature_filter\"),createStructArrayType=_dereq_(\"../util/struct_array\"),Grid=_dereq_(\"grid-index\"),DictionaryCoder=_dereq_(\"../util/dictionary_coder\"),vt=_dereq_(\"@mapbox/vector-tile\"),Protobuf=_dereq_(\"pbf\"),GeoJSONFeature=_dereq_(\"../util/vectortile_to_geojson\"),arraysIntersect=_dereq_(\"../util/util\").arraysIntersect,FeatureIndexArray=createStructArrayType({members:[{type:\"Uint32\",name:\"featureIndex\"},{type:\"Uint16\",name:\"sourceLayerIndex\"},{type:\"Uint16\",name:\"bucketIndex\"}]}),FeatureIndex=function(e,r,t,a){this.coord=e,this.overscaling=r,this.x=e.x,this.y=e.y,this.z=e.z-Math.log(r)/Math.LN2,this.grid=t||new Grid(EXTENT,16,0),this.featureIndexArray=a||new FeatureIndexArray};FeatureIndex.deserialize=function(e,r,t){var a=new FeatureIndex(e.coord,e.overscaling,new Grid(e.grid),new FeatureIndexArray(e.featureIndexArray));return a.rawTileData=r,a.bucketLayerIDs=e.bucketLayerIDs,a.setCollisionTile(t),a},FeatureIndex.prototype.insert=function(e,r,t,a,i){var n=this,o=this.featureIndexArray.length;this.featureIndexArray.emplaceBack(t,a,i);for(var s=0;s<r.length;s++){for(var u=r[s],y=[1/0,1/0,-1/0,-1/0],l=0;l<u.length;l++){var d=u[l];y[0]=Math.min(y[0],d.x),y[1]=Math.min(y[1],d.y),y[2]=Math.max(y[2],d.x),y[3]=Math.max(y[3],d.y)}n.grid.insert(o,y[0],y[1],y[2],y[3])}},FeatureIndex.prototype.setCollisionTile=function(e){this.collisionTile=e},FeatureIndex.prototype.serialize=function(e){var r=this.grid.toArrayBuffer();return e&&e.push(r),{coord:this.coord,overscaling:this.overscaling,grid:r,featureIndexArray:this.featureIndexArray.serialize(e),bucketLayerIDs:this.bucketLayerIDs}},FeatureIndex.prototype.query=function(e,r){this.vtLayers||(this.vtLayers=new vt.VectorTile(new Protobuf(this.rawTileData)).layers,this.sourceLayerCoder=new DictionaryCoder(this.vtLayers?Object.keys(this.vtLayers).sort():[\"_geojsonTileLayer\"]));for(var t={},a=e.params||{},i=EXTENT/e.tileSize/e.scale,n=featureFilter(a.filter),o=e.queryGeometry,s=e.additionalRadius*i,u=1/0,y=1/0,l=-1/0,d=-1/0,c=0;c<o.length;c++)for(var h=o[c],f=0;f<h.length;f++){var x=h[f];u=Math.min(u,x.x),y=Math.min(y,x.y),l=Math.max(l,x.x),d=Math.max(d,x.y)}var v=this.grid.query(u-s,y-s,l+s,d+s);v.sort(topDownFeatureComparator),this.filterMatching(t,v,this.featureIndexArray,o,n,a.layers,r,e.bearing,i);var I=this.collisionTile.queryRenderedSymbols(o,e.scale);return I.sort(),this.filterMatching(t,I,this.collisionTile.collisionBoxArray,o,n,a.layers,r,e.bearing,i),t},FeatureIndex.prototype.filterMatching=function(e,r,t,a,i,n,o,s,u){for(var y,l=this,d=0;d<r.length;d++){var c=r[d];if(c!==y){y=c;var h=t.get(c),f=l.bucketLayerIDs[h.bucketIndex];if(!n||arraysIntersect(n,f)){var x=l.sourceLayerCoder.decode(h.sourceLayerIndex),v=l.vtLayers[x],I=v.feature(h.featureIndex);if(i(I))for(var p=null,g=0;g<f.length;g++){var m=f[g];if(!(n&&n.indexOf(m)<0)){var F=o[m];if(F&&(\"symbol\"===F.type||(p||(p=loadGeometry(I)),F.queryIntersectsFeature(a,I,p,l.z,s,u)))){var b=new GeoJSONFeature(I,l.z,l.x,l.y);b.layer=F.serialize();var L=e[m];void 0===L&&(L=e[m]=[]),L.push({featureIndex:c,feature:b})}}}}}}},FeatureIndex.prototype.hasLayer=function(e){for(var r=this,t=0,a=r.bucketLayerIDs;t<a.length;t+=1)for(var i=a[t],n=0,o=i;n<o.length;n+=1){var s=o[n];if(e===s)return!0}return!1},module.exports=FeatureIndex;\n},{\"../style-spec/feature_filter\":110,\"../util/dictionary_coder\":207,\"../util/struct_array\":220,\"../util/util\":223,\"../util/vectortile_to_geojson\":224,\"./extent\":48,\"./load_geometry\":51,\"@mapbox/point-geometry\":2,\"@mapbox/vector-tile\":6,\"grid-index\":22,\"pbf\":29}],50:[function(_dereq_,module,exports){\n\"use strict\";function createIndexArrayType(e){return createStructArrayType({members:[{type:\"Uint16\",name:\"vertices\",components:e}]})}var createStructArrayType=_dereq_(\"../util/struct_array\");module.exports={LineIndexArray:createIndexArrayType(2),TriangleIndexArray:createIndexArrayType(3)};\n},{\"../util/struct_array\":220}],51:[function(_dereq_,module,exports){\n\"use strict\";function createBounds(e){return{min:-1*Math.pow(2,e-1),max:Math.pow(2,e-1)-1}}var util=_dereq_(\"../util/util\"),EXTENT=_dereq_(\"./extent\"),bounds=createBounds(16);module.exports=function(e){for(var t=EXTENT/e.extent,r=e.loadGeometry(),n=0;n<r.length;n++)for(var u=r[n],o=0;o<u.length;o++){var a=u[o];a.x=Math.round(a.x*t),a.y=Math.round(a.y*t),(a.x<bounds.min||a.x>bounds.max||a.y<bounds.min||a.y>bounds.max)&&util.warnOnce(\"Geometry exceeds allowed extent, reduce your vector tile buffer size\")}return r};\n},{\"../util/util\":223,\"./extent\":48}],52:[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\":220}],53:[function(_dereq_,module,exports){\n\"use strict\";function packColor(r){return[packUint8ToFloat(255*r[0],255*r[1]),packUint8ToFloat(255*r[2],255*r[3])]}var createVertexArrayType=_dereq_(\"./vertex_array_type\"),interpolationFactor=_dereq_(\"../style-spec/function\").interpolationFactor,packUint8ToFloat=_dereq_(\"../shaders/encode_attribute\").packUint8ToFloat,VertexBuffer=_dereq_(\"../gl/vertex_buffer\"),ConstantBinder=function(r,t,o,e){this.name=r,this.type=t,this.property=o,this.useIntegerZoom=e};ConstantBinder.prototype.defines=function(){return[\"#define HAS_UNIFORM_u_\"+this.name]},ConstantBinder.prototype.populatePaintArray=function(){},ConstantBinder.prototype.setUniforms=function(r,t,o,e){var i=e.zoom,n=o.getPaintValue(this.property,{zoom:this.useIntegerZoom?Math.floor(i):i});\"color\"===this.type?r.uniform4fv(t.uniforms[\"u_\"+this.name],n):r.uniform1f(t.uniforms[\"u_\"+this.name],n)};var SourceFunctionBinder=function(r,t,o){this.name=r,this.type=t,this.property=o};SourceFunctionBinder.prototype.defines=function(){return[]},SourceFunctionBinder.prototype.populatePaintArray=function(r,t,o,e,i,n){var a=this,s=r.getPaintValue(this.property,void 0,n);if(\"color\"===this.type)for(var p=packColor(s),u=e;u<i;u++){var f=t.get(u);f[\"a_\"+a.name+\"0\"]=p[0],f[\"a_\"+a.name+\"1\"]=p[1]}else{for(var c=e;c<i;c++){t.get(c)[\"a_\"+a.name]=s}var m=o[this.property];m.max=Math.max(m.max,s)}},SourceFunctionBinder.prototype.setUniforms=function(r,t){r.uniform1f(t.uniforms[\"a_\"+this.name+\"_t\"],0)};var CompositeFunctionBinder=function(r,t,o,e,i){this.name=r,this.type=t,this.property=o,this.useIntegerZoom=e,this.zoom=i};CompositeFunctionBinder.prototype.defines=function(){return[]},CompositeFunctionBinder.prototype.populatePaintArray=function(r,t,o,e,i,n){var a=this,s=r.getPaintValue(this.property,{zoom:this.zoom},n),p=r.getPaintValue(this.property,{zoom:this.zoom+1},n);if(\"color\"===this.type)for(var u=packColor(s),f=packColor(p),c=e;c<i;c++){var m=t.get(c);m[\"a_\"+a.name+\"0\"]=u[0],m[\"a_\"+a.name+\"1\"]=u[1],m[\"a_\"+a.name+\"2\"]=f[0],m[\"a_\"+a.name+\"3\"]=f[1]}else{for(var y=e;y<i;y++){var g=t.get(y);g[\"a_\"+a.name+\"0\"]=s,g[\"a_\"+a.name+\"1\"]=p}var h=o[this.property];h.max=Math.max(h.max,s,p)}},CompositeFunctionBinder.prototype.setUniforms=function(r,t,o,e){var i=e.zoom,n=interpolationFactor(this.useIntegerZoom?Math.floor(i):i,1,this.zoom,this.zoom+1);r.uniform1f(t.uniforms[\"a_\"+this.name+\"_t\"],n)};var ProgramConfiguration=function(){this.binders={},this.cacheKey=\"\"};ProgramConfiguration.createDynamic=function(r,t,o){for(var e=new ProgramConfiguration,i=[],n=0,a=r.paintAttributes||[];n<a.length;n+=1){var s=a[n],p=s.property,u=s.useIntegerZoom||!1,f=s.name||p.replace(t.type+\"-\",\"\").replace(/-/g,\"_\"),c=t._paintSpecifications[p].type;t.isPaintValueFeatureConstant(p)?(e.binders[f]=new ConstantBinder(f,c,p,u),e.cacheKey+=\"/u_\"+f):t.isPaintValueZoomConstant(p)?(e.binders[f]=new SourceFunctionBinder(f,c,p),e.cacheKey+=\"/a_\"+f,i.push({name:\"a_\"+f,type:\"Float32\",components:\"color\"===c?2:1})):(e.binders[f]=new CompositeFunctionBinder(f,c,p,u,o),e.cacheKey+=\"/z_\"+f,i.push({name:\"a_\"+f,type:\"Float32\",components:\"color\"===c?4:2}))}return e.PaintVertexArray=createVertexArrayType(i),e.interface=r,e.layer=t,e},ProgramConfiguration.createBasicFill=function(){var r=new ProgramConfiguration;return r.binders.color=new ConstantBinder(\"color\",\"color\",\"fill-color\",!1),r.cacheKey+=\"/u_color\",r.binders.opacity=new ConstantBinder(\"opacity\",\"number\",\"fill-opacity\",!1),r.cacheKey+=\"/u_opacity\",r},ProgramConfiguration.prototype.createPaintPropertyStatistics=function(){var r=this,t={};for(var o in r.binders)t[r.binders[o].property]={max:-1/0};return t},ProgramConfiguration.prototype.populatePaintArray=function(r,t){var o=this,e=this.paintVertexArray;if(0!==e.bytesPerElement){var i=e.length;e.resize(r);for(var n in o.binders)o.binders[n].populatePaintArray(o.layer,e,o.paintPropertyStatistics,i,r,t)}},ProgramConfiguration.prototype.defines=function(){var r=this,t=[];for(var o in r.binders)t.push.apply(t,r.binders[o].defines());return t},ProgramConfiguration.prototype.setUniforms=function(r,t,o,e){var i=this;for(var n in i.binders)i.binders[n].setUniforms(r,t,o,e)},ProgramConfiguration.prototype.serialize=function(r){return 0===this.paintVertexArray.length?null:{array:this.paintVertexArray.serialize(r),type:this.paintVertexArray.constructor.serialize(),statistics:this.paintPropertyStatistics}},ProgramConfiguration.deserialize=function(r,t,o,e){var i=ProgramConfiguration.createDynamic(r,t,o);return e&&(i.PaintVertexArray=createVertexArrayType(e.type.members),i.paintVertexArray=new i.PaintVertexArray(e.array),i.paintPropertyStatistics=e.statistics),i},ProgramConfiguration.prototype.upload=function(r){this.paintVertexArray&&(this.paintVertexBuffer=new VertexBuffer(r,this.paintVertexArray))},ProgramConfiguration.prototype.destroy=function(){this.paintVertexBuffer&&this.paintVertexBuffer.destroy()};var ProgramConfigurationSet=function(r,t,o,e){var i=this;if(this.programConfigurations={},e)for(var n=0,a=t;n<a.length;n+=1){var s=a[n];i.programConfigurations[s.id]=ProgramConfiguration.deserialize(r,s,o,e[s.id])}else for(var p=0,u=t;p<u.length;p+=1){var f=u[p],c=ProgramConfiguration.createDynamic(r,f,o);c.paintVertexArray=new c.PaintVertexArray,c.paintPropertyStatistics=c.createPaintPropertyStatistics(),i.programConfigurations[f.id]=c}};ProgramConfigurationSet.prototype.populatePaintArrays=function(r,t){var o=this;for(var e in o.programConfigurations)o.programConfigurations[e].populatePaintArray(r,t)},ProgramConfigurationSet.prototype.serialize=function(r){var t=this,o={};for(var e in t.programConfigurations){var i=t.programConfigurations[e].serialize(r);i&&(o[e]=i)}return o},ProgramConfigurationSet.prototype.get=function(r){return this.programConfigurations[r]},ProgramConfigurationSet.prototype.upload=function(r){var t=this;for(var o in t.programConfigurations)t.programConfigurations[o].upload(r)},ProgramConfigurationSet.prototype.destroy=function(){var r=this;for(var t in r.programConfigurations)r.programConfigurations[t].destroy()},module.exports={ProgramConfiguration:ProgramConfiguration,ProgramConfigurationSet:ProgramConfigurationSet};\n},{\"../gl/vertex_buffer\":62,\"../shaders/encode_attribute\":85,\"../style-spec/function\":112,\"./vertex_array_type\":56}],54:[function(_dereq_,module,exports){\n\"use strict\";var createStructArrayType=_dereq_(\"../util/struct_array\"),RasterBoundsArray=createStructArrayType({members:[{name:\"a_pos\",type:\"Int16\",components:2},{name:\"a_texture_pos\",type:\"Int16\",components:2}]});module.exports=RasterBoundsArray;\n},{\"../util/struct_array\":220}],55:[function(_dereq_,module,exports){\n\"use strict\";var ref=_dereq_(\"../util/util\"),warnOnce=ref.warnOnce,MAX_VERTEX_ARRAY_LENGTH=Math.pow(2,16)-1,SegmentVector=function(e){void 0===e&&(e=[]),this.segments=e};SegmentVector.prototype.prepareSegment=function(e,t,r){var n=this.segments[this.segments.length-1];return e>MAX_VERTEX_ARRAY_LENGTH&&warnOnce(\"Max vertices per segment is \"+MAX_VERTEX_ARRAY_LENGTH+\": bucket requested \"+e),(!n||n.vertexLength+e>module.exports.MAX_VERTEX_ARRAY_LENGTH)&&(n={vertexOffset:t.length,primitiveOffset:r.length,vertexLength:0,primitiveLength:0},this.segments.push(n)),n},SegmentVector.prototype.get=function(){return this.segments},SegmentVector.prototype.destroy=function(){for(var e=this,t=0,r=e.segments;t<r.length;t+=1){var n=r[t];for(var s in n.vaos)n.vaos[s].destroy()}},module.exports={SegmentVector:SegmentVector,MAX_VERTEX_ARRAY_LENGTH:MAX_VERTEX_ARRAY_LENGTH};\n},{\"../util/util\":223}],56:[function(_dereq_,module,exports){\n\"use strict\";function createVertexArrayType(r){return createStructArrayType({members:r,alignment:4})}var createStructArrayType=_dereq_(\"../util/struct_array\");module.exports=createVertexArrayType;\n},{\"../util/struct_array\":220}],57:[function(_dereq_,module,exports){\n\"use strict\";var Coordinate=function(o,t,n){this.column=o,this.row=t,this.zoom=n};Coordinate.prototype.clone=function(){return new Coordinate(this.column,this.row,this.zoom)},Coordinate.prototype.zoomTo=function(o){return this.clone()._zoomTo(o)},Coordinate.prototype.sub=function(o){return this.clone()._sub(o)},Coordinate.prototype._zoomTo=function(o){var t=Math.pow(2,o-this.zoom);return this.column*=t,this.row*=t,this.zoom=o,this},Coordinate.prototype._sub=function(o){return o=o.zoomTo(this.zoom),this.column-=o.column,this.row-=o.row,this},module.exports=Coordinate;\n},{}],58:[function(_dereq_,module,exports){\n\"use strict\";var wrap=_dereq_(\"../util/util\").wrap,LngLat=function(t,n){if(isNaN(t)||isNaN(n))throw new Error(\"Invalid LngLat object: (\"+t+\", \"+n+\")\");if(this.lng=+t,this.lat=+n,this.lat>90||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.prototype.toBounds=function(t){var n=360*t/40075017,r=n/Math.cos(Math.PI/180*this.lat);return new(_dereq_(\"./lng_lat_bounds\"))(new LngLat(this.lng-r,this.lat-n),new LngLat(this.lng+r,this.lat+n))},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: <lng>, lat: <lat>}, or an array of [<lng>, <lat>]\")},module.exports=LngLat;\n},{\"../util/util\":223,\"./lng_lat_bounds\":59}],59:[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=t instanceof LngLat?new LngLat(t.lng,t.lat):LngLat.convert(t),this},LngLatBounds.prototype.setSouthWest=function(t){return this._sw=t instanceof LngLat?new LngLat(t.lng,t.lat):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\":58}],60:[function(_dereq_,module,exports){\n\"use strict\";var LngLat=_dereq_(\"./lng_lat\"),Point=_dereq_(\"@mapbox/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,o,i){this.tileSize=512,this._renderWorldCopies=void 0===i||i,this._minZoom=t||0,this._maxZoom=o||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 o=-util.wrap(t,-180,180)*Math.PI/180;this.angle!==o&&(this._unmodified=!1,this.angle=o,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 o=util.clamp(t,0,60)/180*Math.PI;this._pitch!==o&&(this._unmodified=!1,this._pitch=o,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 o=Math.min(Math.max(t,this.minZoom),this.maxZoom);this._zoom!==o&&(this._unmodified=!1,this._zoom=o,this.scale=this.zoomScale(o),this.tileZoom=Math.floor(o),this.zoomFraction=o-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 o=this.pointCoordinate(new Point(0,0),0),i=this.pointCoordinate(new Point(this.width,0),0),e=Math.floor(o.column),r=Math.floor(i.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 o=this.coveringZoomLevel(t),i=o;if(void 0!==t.minzoom&&o<t.minzoom)return[];void 0!==t.maxzoom&&o>t.maxzoom&&(o=t.maxzoom);var e=this.pointCoordinate(this.centerPoint,o),r=new Point(e.column-.5,e.row-.5),n=[this.pointCoordinate(new Point(0,0),o),this.pointCoordinate(new Point(this.width,0),o),this.pointCoordinate(new Point(this.width,this.height),o),this.pointCoordinate(new Point(0,this.height),o)];return TileCoord.cover(o,n,t.reparseOverscaled?i:o,this._renderWorldCopies).sort(function(t,o){return r.dist(t)-r.dist(o)})},Transform.prototype.resize=function(t,o){this.width=t,this.height=o,this.pixelsToGLUnits=[2/t,-2/o],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 o=180-360*t/this.worldSize;return 360/Math.PI*Math.atan(Math.exp(o*Math.PI/180))-90},Transform.prototype.setLocationAtPoint=function(t,o){var i=this.pointCoordinate(o)._sub(this.pointCoordinate(this.centerPoint));this.center=this.coordinateLocation(this.locationCoordinate(t)._sub(i)),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 o=t.zoomTo(this.zoom);return new LngLat(this.xLng(o.column*this.tileSize),this.yLat(o.row*this.tileSize))},Transform.prototype.pointCoordinate=function(t,o){void 0===o&&(o=this.tileZoom);var i=[t.x,t.y,0,1],e=[t.x,t.y,1,1];vec4.transformMat4(i,i,this.pixelMatrixInverse),vec4.transformMat4(e,e,this.pixelMatrixInverse);var r=i[3],n=e[3],s=i[0]/r,a=e[0]/n,h=i[1]/r,c=e[1]/n,m=i[2]/r,p=e[2]/n,l=m===p?0:(0-m)/(p-m);return new Coordinate(interp(s,a,l)/this.tileSize,interp(h,c,l)/this.tileSize,this.zoom)._zoomTo(o)},Transform.prototype.coordinatePoint=function(t){var o=t.zoomTo(this.zoom),i=[o.column*this.tileSize,o.row*this.tileSize,0,1];return vec4.transformMat4(i,i,this.pixelMatrix),new Point(i[0]/i[3],i[1]/i[3])},Transform.prototype.calculatePosMatrix=function(t,o){var i=t.toCoordinate(o),e=this.worldSize/this.zoomScale(i.zoom),r=mat4.identity(new Float64Array(16));return mat4.translate(r,r,[i.column*e,i.row*e,0]),mat4.scale(r,r,[e/EXTENT,e/EXTENT,1]),mat4.multiply(r,this.projMatrix,r),new Float32Array(r)},Transform.prototype.cameraToTileDistance=function(t){var o=this.calculatePosMatrix(t.coord,t.sourceMaxZoom),i=[t.tileSize/2,t.tileSize/2,0,1];return vec4.transformMat4(i,i,o),i[3]},Transform.prototype._constrain=function(){if(this.center&&this.width&&this.height&&!this._constraining){this._constraining=!0;var t,o,i,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-r<h.y?h.y/(n-r):0}if(this.lngRange){var p=this.lngRange;s=this.lngX(p[0]),a=this.lngX(p[1]),o=a-s<h.x?h.x/(a-s):0}var l=Math.max(o||0,t||0);if(l)return this.center=this.unproject(new Point(o?(a+s)/2:this.x,t?(n+r)/2:this.y)),this.zoom+=this.scaleZoom(l),this._unmodified=c,void(this._constraining=!1);if(this.latRange){var u=this.y,f=h.y/2;u-f<r&&(e=r+f),u+f>n&&(e=n-f)}if(this.lngRange){var d=this.x,g=h.x/2;d-g<s&&(i=s+g),d+g>a&&(i=a-g)}void 0===i&&void 0===e||(this.center=this.unproject(new Point(void 0!==i?i: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,o=Math.PI/2+this._pitch,i=Math.sin(t)*this.cameraToCenterDistance/Math.sin(Math.PI-o-t),e=Math.cos(Math.PI/2-this._pitch)*i+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)))throw new Error(\"failed to invert matrix\");this.pixelMatrixInverse=n}},Object.defineProperties(Transform.prototype,prototypeAccessors),module.exports=Transform;\n},{\"../data/extent\":48,\"../source/tile_coord\":101,\"../style-spec/util/interpolate\":127,\"../util/util\":223,\"./coordinate\":57,\"./lng_lat\":58,\"@mapbox/gl-matrix\":1,\"@mapbox/point-geometry\":2}],61:[function(_dereq_,module,exports){\n\"use strict\";var IndexBuffer=function(e,r){this.gl=e,this.buffer=e.createBuffer(),void 0===e.extVertexArrayObject&&(e.extVertexArrayObject=e.getExtension(\"OES_vertex_array_object\")),e.extVertexArrayObject&&e.extVertexArrayObject.bindVertexArrayOES(null),e.bindBuffer(e.ELEMENT_ARRAY_BUFFER,this.buffer),e.bufferData(e.ELEMENT_ARRAY_BUFFER,r.arrayBuffer,e.STATIC_DRAW),delete r.arrayBuffer};IndexBuffer.prototype.bind=function(){this.gl.bindBuffer(this.gl.ELEMENT_ARRAY_BUFFER,this.buffer)},IndexBuffer.prototype.destroy=function(){this.buffer&&(this.gl.deleteBuffer(this.buffer),delete this.buffer)},module.exports=IndexBuffer;\n},{}],62:[function(_dereq_,module,exports){\n\"use strict\";var AttributeType={Int8:\"BYTE\",Uint8:\"UNSIGNED_BYTE\",Int16:\"SHORT\",Uint16:\"UNSIGNED_SHORT\",Int32:\"INT\",Uint32:\"UNSIGNED_INT\",Float32:\"FLOAT\"},VertexBuffer=function(t,e,r){this.length=e.length,this.attributes=e.members,this.itemSize=e.bytesPerElement,this.dynamicDraw=r,this.gl=t,this.buffer=t.createBuffer(),this.gl.bindBuffer(t.ARRAY_BUFFER,this.buffer),this.gl.bufferData(t.ARRAY_BUFFER,e.arrayBuffer,this.dynamicDraw?t.DYNAMIC_DRAW:t.STATIC_DRAW),this.dynamicDraw||delete e.arrayBuffer};VertexBuffer.prototype.bind=function(){this.gl.bindBuffer(this.gl.ARRAY_BUFFER,this.buffer)},VertexBuffer.prototype.updateData=function(t){this.bind(),this.gl.bufferSubData(this.gl.ARRAY_BUFFER,0,t.arrayBuffer)},VertexBuffer.prototype.enableAttributes=function(t,e){for(var r=this,i=0;i<this.attributes.length;i++){var f=r.attributes[i],s=e.attributes[f.name];void 0!==s&&t.enableVertexAttribArray(s)}},VertexBuffer.prototype.setVertexAttribPointers=function(t,e,r){for(var i=this,f=0;f<this.attributes.length;f++){var s=i.attributes[f],u=e.attributes[s.name];void 0!==u&&t.vertexAttribPointer(u,s.components,t[AttributeType[s.type]],!1,i.itemSize,s.offset+i.itemSize*(r||0))}},VertexBuffer.prototype.destroy=function(){this.buffer&&(this.gl.deleteBuffer(this.buffer),delete this.buffer)},module.exports=VertexBuffer;\n},{}],63:[function(_dereq_,module,exports){\n\"use strict\";var supported=_dereq_(\"mapbox-gl-supported\"),browser=_dereq_(\"./util/browser\"),version=_dereq_(\"../package.json\").version,Map=_dereq_(\"./ui/map\"),NavigationControl=_dereq_(\"./ui/control/navigation_control\"),GeolocateControl=_dereq_(\"./ui/control/geolocate_control\"),AttributionControl=_dereq_(\"./ui/control/attribution_control\"),ScaleControl=_dereq_(\"./ui/control/scale_control\"),FullscreenControl=_dereq_(\"./ui/control/fullscreen_control\"),Popup=_dereq_(\"./ui/popup\"),Marker=_dereq_(\"./ui/marker\"),Style=_dereq_(\"./style/style\"),LngLat=_dereq_(\"./geo/lng_lat\"),LngLatBounds=_dereq_(\"./geo/lng_lat_bounds\"),Point=_dereq_(\"@mapbox/point-geometry\"),Evented=_dereq_(\"./util/evented\"),config=_dereq_(\"./util/config\"),rtlTextPlugin=_dereq_(\"./source/rtl_text_plugin\");module.exports={version:version,supported:supported,workerCount:Math.max(Math.floor(browser.hardwareConcurrency/2),1),setRTLTextPlugin:rtlTextPlugin.setRTLTextPlugin,Map:Map,NavigationControl:NavigationControl,GeolocateControl:GeolocateControl,AttributionControl:AttributionControl,ScaleControl:ScaleControl,FullscreenControl:FullscreenControl,Popup:Popup,Marker:Marker,Style:Style,LngLat:LngLat,LngLatBounds:LngLatBounds,Point:Point,Evented:Evented,config:config,get accessToken(){return config.ACCESS_TOKEN},set accessToken(o){config.ACCESS_TOKEN=o}};\n},{\"../package.json\":41,\"./geo/lng_lat\":58,\"./geo/lng_lat_bounds\":59,\"./source/rtl_text_plugin\":96,\"./style/style\":156,\"./ui/control/attribution_control\":182,\"./ui/control/fullscreen_control\":183,\"./ui/control/geolocate_control\":184,\"./ui/control/navigation_control\":186,\"./ui/control/scale_control\":187,\"./ui/map\":197,\"./ui/marker\":198,\"./ui/popup\":199,\"./util/browser\":202,\"./util/config\":206,\"./util/evented\":210,\"@mapbox/point-geometry\":2,\"mapbox-gl-supported\":28}],64:[function(_dereq_,module,exports){\n\"use strict\";function drawBackground(r,t,e){var i=r.gl,a=r.transform,n=a.tileSize,o=e.paint[\"background-color\"],l=e.paint[\"background-pattern\"],u=e.paint[\"background-opacity\"],f=l||1!==o[3]||1!==u?\"translucent\":\"opaque\";if(r.renderPass===f){i.disable(i.STENCIL_TEST),r.setDepthSublayer(0);var s;if(l){if(pattern.isPatternMissing(l,r))return;s=r.useProgram(\"fillPattern\",r.basicFillProgramConfiguration),pattern.prepare(l,r,s),r.tileExtentPatternVAO.bind(i,s,r.tileExtentBuffer)}else s=r.useProgram(\"fill\",r.basicFillProgramConfiguration),i.uniform4fv(s.uniforms.u_color,o),r.tileExtentVAO.bind(i,s,r.tileExtentBuffer);i.uniform1f(s.uniforms.u_opacity,u);for(var c=a.coveringTiles({tileSize:n}),g=0,p=c;g<p.length;g+=1){var d=p[g];l&&pattern.setTile({coord:d,tileSize:n},r,s),i.uniformMatrix4fv(s.uniforms.u_matrix,!1,r.transform.calculatePosMatrix(d)),i.drawArrays(i.TRIANGLE_STRIP,0,r.tileExtentBuffer.length)}}}var pattern=_dereq_(\"./pattern\");module.exports=drawBackground;\n},{\"./pattern\":80}],65:[function(_dereq_,module,exports){\n\"use strict\";function drawCircles(r,i,e,t){if(\"translucent\"===r.renderPass){var a=r.gl;r.setDepthSublayer(0),r.depthMask(!1),a.disable(a.STENCIL_TEST);for(var s=0;s<t.length;s++){var o=t[s],n=i.getTile(o),u=n.getBucket(e);if(u){var m=u.programConfigurations.get(e.id),f=r.useProgram(\"circle\",m);if(m.setUniforms(a,f,e,{zoom:r.transform.zoom}),a.uniform1f(f.uniforms.u_camera_to_center_distance,r.transform.cameraToCenterDistance),a.uniform1i(f.uniforms.u_scale_with_map,\"map\"===e.paint[\"circle-pitch-scale\"]?1:0),\"map\"===e.paint[\"circle-pitch-alignment\"]){a.uniform1i(f.uniforms.u_pitch_with_map,1);var l=pixelsToTileUnits(n,1,r.transform.zoom);a.uniform2f(f.uniforms.u_extrude_scale,l,l)}else a.uniform1i(f.uniforms.u_pitch_with_map,0),a.uniform2fv(f.uniforms.u_extrude_scale,r.transform.pixelsToGLUnits);a.uniform1f(f.uniforms.u_devicepixelratio,browser.devicePixelRatio),a.uniformMatrix4fv(f.uniforms.u_matrix,!1,r.translatePosMatrix(o.posMatrix,n,e.paint[\"circle-translate\"],e.paint[\"circle-translate-anchor\"])),f.draw(a,a.TRIANGLES,e.id,u.layoutVertexBuffer,u.indexBuffer,u.segments,m)}}}}var browser=_dereq_(\"../util/browser\"),pixelsToTileUnits=_dereq_(\"../source/pixels_to_tile_units\");module.exports=drawCircles;\n},{\"../source/pixels_to_tile_units\":93,\"../util/browser\":202}],66:[function(_dereq_,module,exports){\n\"use strict\";function drawCollisionDebug(o,i,r,e){var n=o.gl;n.enable(n.STENCIL_TEST);var t=o.useProgram(\"collisionBox\");n.activeTexture(n.TEXTURE1),o.frameHistory.bind(n),n.uniform1i(t.uniforms.u_fadetexture,1);for(var a=0;a<e.length;a++){var f=e[a],u=i.getTile(f),m=u.getBucket(r);if(m){n.uniformMatrix4fv(t.uniforms.u_matrix,!1,f.posMatrix),o.enableTileClippingMask(f),o.lineWidth(1),n.uniform1f(t.uniforms.u_scale,Math.pow(2,o.transform.zoom-u.coord.z)),n.uniform1f(t.uniforms.u_zoom,10*o.transform.zoom);var s=Math.max(0,Math.min(25,u.coord.z+Math.log(u.collisionTile.maxScale)/Math.LN2));n.uniform1f(t.uniforms.u_maxzoom,10*s),n.uniform1f(t.uniforms.u_collision_y_stretch,u.collisionTile.yStretch),n.uniform1f(t.uniforms.u_pitch,o.transform.pitch/360*2*Math.PI),n.uniform1f(t.uniforms.u_camera_to_center_distance,o.transform.cameraToCenterDistance),t.draw(n,n.LINES,r.id,m.collisionBox.layoutVertexBuffer,m.collisionBox.indexBuffer,m.collisionBox.segments)}}}module.exports=drawCollisionDebug;\n},{}],67:[function(_dereq_,module,exports){\n\"use strict\";function drawDebug(r,e,t){for(var a=0;a<t.length;a++)drawDebugTile(r,e,t[a])}function drawDebugTile(r,e,t){var a=r.gl;a.disable(a.STENCIL_TEST),r.lineWidth(1*browser.devicePixelRatio);var i=t.posMatrix,u=r.useProgram(\"debug\");a.uniformMatrix4fv(u.uniforms.u_matrix,!1,i),a.uniform4f(u.uniforms.u_color,1,0,0,1),r.debugVAO.bind(a,u,r.debugBuffer),a.drawArrays(a.LINE_STRIP,0,r.debugBuffer.length);for(var o=createTextVerticies(t.toString(),50,200,5),n=new PosArray,f=0;f<o.length;f+=2)n.emplaceBack(o[f],o[f+1]);var l=new VertexBuffer(a,n);(new VertexArrayObject).bind(a,u,l),a.uniform4f(u.uniforms.u_color,1,1,1,1);for(var s=e.getTile(t).tileSize,m=EXTENT/(Math.pow(2,r.transform.zoom-t.z)*s),x=[[-1,-1],[-1,1],[1,-1],[1,1]],g=0;g<x.length;g++){var b=x[g];a.uniformMatrix4fv(u.uniforms.u_matrix,!1,mat4.translate([],i,[m*b[0],m*b[1],0])),a.drawArrays(a.LINES,0,l.length)}a.uniform4f(u.uniforms.u_color,0,0,0,1),a.uniformMatrix4fv(u.uniforms.u_matrix,!1,i),a.drawArrays(a.LINES,0,l.length)}function createTextVerticies(r,e,t,a){a=a||1;var i,u,o,n,f,l,s,m,x=[];for(i=0,u=r.length;i<u;i++)if(f=simplexFont[r[i]]){for(m=null,o=0,n=f[1].length;o<n;o+=2)-1===f[1][o]&&-1===f[1][o+1]?m=null:(l=e+f[1][o]*a,s=t-f[1][o+1]*a,m&&x.push(m.x,m.y,l,s),m={x:l,y:s});e+=f[0]*a}return x}var browser=_dereq_(\"../util/browser\"),mat4=_dereq_(\"@mapbox/gl-matrix\").mat4,EXTENT=_dereq_(\"../data/extent\"),VertexBuffer=_dereq_(\"../gl/vertex_buffer\"),VertexArrayObject=_dereq_(\"./vertex_array_object\"),PosArray=_dereq_(\"../data/pos_array\");module.exports=drawDebug;var simplexFont={\" \":[16,[]],\"!\":[10,[5,21,5,7,-1,-1,5,2,4,1,5,0,6,1,5,2]],'\"':[16,[4,21,4,14,-1,-1,12,21,12,14]],\"#\":[21,[11,25,4,-7,-1,-1,17,25,10,-7,-1,-1,4,12,18,12,-1,-1,3,6,17,6]],$:[20,[8,25,8,-4,-1,-1,12,25,12,-4,-1,-1,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]],\"%\":[24,[21,21,3,0,-1,-1,8,21,10,19,10,17,9,15,7,14,5,14,3,16,3,18,4,20,6,21,8,21,10,20,13,19,16,19,19,20,21,21,-1,-1,17,7,15,6,14,4,14,2,16,0,18,0,20,1,21,3,21,5,19,7,17,7]],\"&\":[26,[23,12,23,13,22,14,21,14,20,13,19,11,17,6,15,3,13,1,11,0,7,0,5,1,4,2,3,4,3,6,4,8,5,9,12,13,13,14,14,16,14,18,13,20,11,21,9,20,8,18,8,16,9,13,11,10,16,3,18,1,20,0,22,0,23,1,23,2]],\"'\":[10,[5,19,4,20,5,21,6,20,6,18,5,16,4,15]],\"(\":[14,[11,25,9,23,7,20,5,16,4,11,4,7,5,2,7,-2,9,-5,11,-7]],\")\":[14,[3,25,5,23,7,20,9,16,10,11,10,7,9,2,7,-2,5,-5,3,-7]],\"*\":[16,[8,21,8,9,-1,-1,3,18,13,12,-1,-1,13,18,3,12]],\"+\":[26,[13,18,13,0,-1,-1,4,9,22,9]],\",\":[10,[6,1,5,0,4,1,5,2,6,1,6,-1,5,-3,4,-4]],\"-\":[26,[4,9,22,9]],\".\":[10,[5,2,4,1,5,0,6,1,5,2]],\"/\":[22,[20,25,2,-7]],0:[20,[9,21,6,20,4,17,3,12,3,9,4,4,6,1,9,0,11,0,14,1,16,4,17,9,17,12,16,17,14,20,11,21,9,21]],1:[20,[6,17,8,18,11,21,11,0]],2:[20,[4,16,4,17,5,19,6,20,8,21,12,21,14,20,15,19,16,17,16,15,15,13,13,10,3,0,17,0]],3:[20,[5,21,16,21,10,13,13,13,15,12,16,11,17,8,17,6,16,3,14,1,11,0,8,0,5,1,4,2,3,4]],4:[20,[13,21,3,7,18,7,-1,-1,13,21,13,0]],5:[20,[15,21,5,21,4,12,5,13,8,14,11,14,14,13,16,11,17,8,17,6,16,3,14,1,11,0,8,0,5,1,4,2,3,4]],6:[20,[16,18,15,20,12,21,10,21,7,20,5,17,4,12,4,7,5,3,7,1,10,0,11,0,14,1,16,3,17,6,17,7,16,10,14,12,11,13,10,13,7,12,5,10,4,7]],7:[20,[17,21,7,0,-1,-1,3,21,17,21]],8:[20,[8,21,5,20,4,18,4,16,5,14,7,13,11,12,14,11,16,9,17,7,17,4,16,2,15,1,12,0,8,0,5,1,4,2,3,4,3,7,4,9,6,11,9,12,13,13,15,14,16,16,16,18,15,20,12,21,8,21]],9:[20,[16,14,15,11,13,9,10,8,9,8,6,9,4,11,3,14,3,15,4,18,6,20,9,21,10,21,13,20,15,18,16,14,16,9,15,4,13,1,10,0,8,0,5,1,4,3]],\":\":[10,[5,14,4,13,5,12,6,13,5,14,-1,-1,5,2,4,1,5,0,6,1,5,2]],\";\":[10,[5,14,4,13,5,12,6,13,5,14,-1,-1,6,1,5,0,4,1,5,2,6,1,6,-1,5,-3,4,-4]],\"<\":[24,[20,18,4,9,20,0]],\"=\":[26,[4,12,22,12,-1,-1,4,6,22,6]],\">\":[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/extent\":48,\"../data/pos_array\":52,\"../gl/vertex_buffer\":62,\"../util/browser\":202,\"./vertex_array_object\":84,\"@mapbox/gl-matrix\":1}],68:[function(_dereq_,module,exports){\n\"use strict\";function drawFill(r,t,e,a){var i=r.gl;i.enable(i.STENCIL_TEST);var l=!e.paint[\"fill-pattern\"]&&e.isPaintValueFeatureConstant(\"fill-color\")&&e.isPaintValueFeatureConstant(\"fill-opacity\")&&1===e.paint[\"fill-color\"][3]&&1===e.paint[\"fill-opacity\"]?\"opaque\":\"translucent\";r.renderPass===l&&(r.setDepthSublayer(1),r.depthMask(\"opaque\"===r.renderPass),drawFillTiles(r,t,e,a,drawFillTile)),\"translucent\"===r.renderPass&&e.paint[\"fill-antialias\"]&&(r.lineWidth(2),r.depthMask(!1),r.setDepthSublayer(e.getPaintProperty(\"fill-outline-color\")?2:0),drawFillTiles(r,t,e,a,drawStrokeTile))}function drawFillTiles(r,t,e,a,i){if(!pattern.isPatternMissing(e.paint[\"fill-pattern\"],r))for(var l=!0,n=0,o=a;n<o.length;n+=1){var s=o[n],f=t.getTile(s),u=f.getBucket(e);u&&(r.enableTileClippingMask(s),i(r,t,e,f,s,u,l),l=!1)}}function drawFillTile(r,t,e,a,i,l,n){var o=r.gl,s=l.programConfigurations.get(e.id);setFillProgram(\"fill\",e.paint[\"fill-pattern\"],r,s,e,a,i,n).draw(o,o.TRIANGLES,e.id,l.layoutVertexBuffer,l.indexBuffer,l.segments,s)}function drawStrokeTile(r,t,e,a,i,l,n){var o=r.gl,s=l.programConfigurations.get(e.id),f=e.paint[\"fill-pattern\"]&&!e.getPaintProperty(\"fill-outline-color\"),u=setFillProgram(\"fillOutline\",f,r,s,e,a,i,n);o.uniform2f(u.uniforms.u_world,o.drawingBufferWidth,o.drawingBufferHeight),u.draw(o,o.LINES,e.id,l.layoutVertexBuffer,l.indexBuffer2,l.segments2,s)}function setFillProgram(r,t,e,a,i,l,n,o){var s,f=e.currentProgram;return t?(s=e.useProgram(r+\"Pattern\",a),(o||s!==f)&&(a.setUniforms(e.gl,s,i,{zoom:e.transform.zoom}),pattern.prepare(i.paint[\"fill-pattern\"],e,s)),pattern.setTile(l,e,s)):(s=e.useProgram(r,a),(o||s!==f)&&a.setUniforms(e.gl,s,i,{zoom:e.transform.zoom})),e.gl.uniformMatrix4fv(s.uniforms.u_matrix,!1,e.translatePosMatrix(n.posMatrix,l,i.paint[\"fill-translate\"],i.paint[\"fill-translate-anchor\"])),s}var pattern=_dereq_(\"./pattern\");module.exports=drawFill;\n},{\"./pattern\":80}],69:[function(_dereq_,module,exports){\n\"use strict\";function draw(r,t,e,i){if(\"3d\"===r.renderPass){var a=r.gl;a.disable(a.STENCIL_TEST),a.enable(a.DEPTH_TEST),r.clearColor(),r.depthMask(!0);for(var n=0;n<i.length;n++)drawExtrusion(r,t,e,i[n])}else\"translucent\"===r.renderPass&&drawExtrusionTexture(r,e)}function drawExtrusionTexture(r,t){var e=r.prerenderedFrames[t.id];if(e){var i=r.gl,a=r.useProgram(\"extrusionTexture\");i.disable(i.STENCIL_TEST),i.disable(i.DEPTH_TEST),i.activeTexture(i.TEXTURE0),i.bindTexture(i.TEXTURE_2D,e.texture),i.uniform1f(a.uniforms.u_opacity,t.paint[\"fill-extrusion-opacity\"]),i.uniform1i(a.uniforms.u_image,0);var n=mat4.create();mat4.ortho(n,0,r.width,r.height,0,0,1),i.uniformMatrix4fv(a.uniforms.u_matrix,!1,n),i.uniform2f(a.uniforms.u_world,i.drawingBufferWidth,i.drawingBufferHeight),e.vao.bind(i,a,e.buffer),i.drawArrays(i.TRIANGLE_STRIP,0,4),r.viewportFrames.push(e),delete r.prerenderedFrames[t.id]}}function drawExtrusion(r,t,e,i){var a=t.getTile(i),n=a.getBucket(e);if(n){var o=r.gl,u=e.paint[\"fill-extrusion-pattern\"],s=n.programConfigurations.get(e.id),f=r.useProgram(u?\"fillExtrusionPattern\":\"fillExtrusion\",s);if(s.setUniforms(o,f,e,{zoom:r.transform.zoom}),u){if(pattern.isPatternMissing(u,r))return;pattern.prepare(u,r,f),pattern.setTile(a,r,f),o.uniform1f(f.uniforms.u_height_factor,-Math.pow(2,i.z)/a.tileSize/8)}r.gl.uniformMatrix4fv(f.uniforms.u_matrix,!1,r.translatePosMatrix(i.posMatrix,a,e.paint[\"fill-extrusion-translate\"],e.paint[\"fill-extrusion-translate-anchor\"])),setLight(f,r),f.draw(o,o.TRIANGLES,e.id,n.layoutVertexBuffer,n.indexBuffer,n.segments,s)}}function setLight(r,t){var e=t.gl,i=t.style.light,a=i.calculated.position,n=[a.x,a.y,a.z],o=mat3.create();\"viewport\"===i.calculated.anchor&&mat3.fromRotation(o,-t.transform.angle),vec3.transformMat3(n,n,o),e.uniform3fv(r.uniforms.u_lightpos,n),e.uniform1f(r.uniforms.u_lightintensity,i.calculated.intensity),e.uniform3fv(r.uniforms.u_lightcolor,i.calculated.color.slice(0,3))}var glMatrix=_dereq_(\"@mapbox/gl-matrix\"),pattern=_dereq_(\"./pattern\"),mat3=glMatrix.mat3,mat4=glMatrix.mat4,vec3=glMatrix.vec3;module.exports=draw;\n},{\"./pattern\":80,\"@mapbox/gl-matrix\":1}],70:[function(_dereq_,module,exports){\n\"use strict\";function drawLineTile(i,r,e,t,n,a,o,u,f){var s,l,m,_,p=r.gl,g=n.paint[\"line-dasharray\"],d=n.paint[\"line-pattern\"];if(u||f){var x=1/pixelsToTileUnits(e,1,r.transform.tileZoom);if(g){s=r.lineAtlas.getDash(g.from,\"round\"===n.layout[\"line-cap\"]),l=r.lineAtlas.getDash(g.to,\"round\"===n.layout[\"line-cap\"]);var T=s.width*g.fromScale,c=l.width*g.toScale;p.uniform2f(i.uniforms.u_patternscale_a,x/T,-s.height/2),p.uniform2f(i.uniforms.u_patternscale_b,x/c,-l.height/2),p.uniform1f(i.uniforms.u_sdfgamma,r.lineAtlas.width/(256*Math.min(T,c)*browser.devicePixelRatio)/2)}else if(d){if(m=r.imageManager.getPattern(d.from),_=r.imageManager.getPattern(d.to),!m||!_)return;p.uniform2f(i.uniforms.u_pattern_size_a,m.displaySize[0]*d.fromScale/x,_.displaySize[1]),p.uniform2f(i.uniforms.u_pattern_size_b,_.displaySize[0]*d.toScale/x,_.displaySize[1]);var h=r.imageManager.getPixelSize(),v=h.width,b=h.height;p.uniform2fv(i.uniforms.u_texsize,[v,b])}p.uniform2f(i.uniforms.u_gl_units_to_pixels,1/r.transform.pixelsToGLUnits[0],1/r.transform.pixelsToGLUnits[1])}u&&(g?(p.uniform1i(i.uniforms.u_image,0),p.activeTexture(p.TEXTURE0),r.lineAtlas.bind(p),p.uniform1f(i.uniforms.u_tex_y_a,s.y),p.uniform1f(i.uniforms.u_tex_y_b,l.y),p.uniform1f(i.uniforms.u_mix,g.t)):d&&(p.uniform1i(i.uniforms.u_image,0),p.activeTexture(p.TEXTURE0),r.imageManager.bind(p),p.uniform2fv(i.uniforms.u_pattern_tl_a,m.tl),p.uniform2fv(i.uniforms.u_pattern_br_a,m.br),p.uniform2fv(i.uniforms.u_pattern_tl_b,_.tl),p.uniform2fv(i.uniforms.u_pattern_br_b,_.br),p.uniform1f(i.uniforms.u_fade,d.t))),r.enableTileClippingMask(a);var y=r.translatePosMatrix(a.posMatrix,e,n.paint[\"line-translate\"],n.paint[\"line-translate-anchor\"]);p.uniformMatrix4fv(i.uniforms.u_matrix,!1,y),p.uniform1f(i.uniforms.u_ratio,1/pixelsToTileUnits(e,1,r.transform.zoom)),i.draw(p,p.TRIANGLES,n.id,t.layoutVertexBuffer,t.indexBuffer,t.segments,o)}var browser=_dereq_(\"../util/browser\"),pixelsToTileUnits=_dereq_(\"../source/pixels_to_tile_units\");module.exports=function(i,r,e,t){if(\"translucent\"===i.renderPass){i.setDepthSublayer(0),i.depthMask(!1);var n=i.gl;if(n.enable(n.STENCIL_TEST),!(e.paint[\"line-width\"]<=0))for(var a,o=e.paint[\"line-dasharray\"]?\"lineSDF\":e.paint[\"line-pattern\"]?\"linePattern\":\"line\",u=!0,f=0,s=t;f<s.length;f+=1){var l=s[f],m=r.getTile(l),_=m.getBucket(e);if(_){var p=_.programConfigurations.get(e.id),g=i.currentProgram,d=i.useProgram(o,p),x=u||d!==g,T=a!==m.coord.z;x&&p.setUniforms(i.gl,d,e,{zoom:i.transform.zoom}),drawLineTile(d,i,m,_,e,l,p,x,T),a=m.coord.z,u=!1}}}};\n},{\"../source/pixels_to_tile_units\":93,\"../util/browser\":202}],71:[function(_dereq_,module,exports){\n\"use strict\";function drawRaster(r,t,e,a){if(\"translucent\"===r.renderPass){var i=r.gl,o=t.getSource(),n=r.useProgram(\"raster\");i.enable(i.DEPTH_TEST),r.depthMask(!0),i.depthFunc(i.LESS),i.disable(i.STENCIL_TEST),i.uniform1f(n.uniforms.u_brightness_low,e.paint[\"raster-brightness-min\"]),i.uniform1f(n.uniforms.u_brightness_high,e.paint[\"raster-brightness-max\"]),i.uniform1f(n.uniforms.u_saturation_factor,saturationFactor(e.paint[\"raster-saturation\"])),i.uniform1f(n.uniforms.u_contrast_factor,contrastFactor(e.paint[\"raster-contrast\"])),i.uniform3fv(n.uniforms.u_spin_weights,spinWeights(e.paint[\"raster-hue-rotate\"])),i.uniform1f(n.uniforms.u_buffer_scale,1),i.uniform1i(n.uniforms.u_image0,0),i.uniform1i(n.uniforms.u_image1,1);for(var u=a.length&&a[0].z,s=0,f=a;s<f.length;s+=1){var m=f[s];r.setDepthSublayer(m.z-u);var d=t.getTile(m),c=r.transform.calculatePosMatrix(m,t.getSource().maxzoom);d.registerFadeDuration(r.style.animationLoop,e.paint[\"raster-fade-duration\"]),i.uniformMatrix4fv(n.uniforms.u_matrix,!1,c);var p=t.findLoadedParent(m,0,{}),_=getFadeValues(d,p,t,e,r.transform),h=void 0,l=void 0;if(i.activeTexture(i.TEXTURE0),i.bindTexture(i.TEXTURE_2D,d.texture),i.activeTexture(i.TEXTURE1),p?(i.bindTexture(i.TEXTURE_2D,p.texture),h=Math.pow(2,p.coord.z-d.coord.z),l=[d.coord.x*h%1,d.coord.y*h%1]):i.bindTexture(i.TEXTURE_2D,d.texture),i.uniform2fv(n.uniforms.u_tl_parent,l||[0,0]),i.uniform1f(n.uniforms.u_scale_parent,h||1),i.uniform1f(n.uniforms.u_fade_t,_.mix),i.uniform1f(n.uniforms.u_opacity,_.opacity*e.paint[\"raster-opacity\"]),o instanceof ImageSource){var g=o.boundsBuffer;o.boundsVAO.bind(i,n,g),i.drawArrays(i.TRIANGLE_STRIP,0,g.length)}else{var T=r.rasterBoundsBuffer;r.rasterBoundsVAO.bind(i,n,T),i.drawArrays(i.TRIANGLE_STRIP,0,T.length)}}i.depthFunc(i.LEQUAL)}}function spinWeights(r){r*=Math.PI/180;var t=Math.sin(r),e=Math.cos(r);return[(2*e+1)/3,(-Math.sqrt(3)*t-e+1)/3,(Math.sqrt(3)*t-e+1)/3]}function contrastFactor(r){return r>0?1/(1-r):1+r}function saturationFactor(r){return r>0?1-1/(1.001-r):-r}function getFadeValues(r,t,e,a,i){var o=a.paint[\"raster-fade-duration\"];if(o>0){var n=Date.now(),u=(n-r.timeAdded)/o,s=t?(n-t.timeAdded)/o:-1,f=e.getSource(),m=i.coveringZoomLevel({tileSize:f.tileSize,roundZoom:f.roundZoom}),d=!t||Math.abs(t.coord.z-m)>Math.abs(r.coord.z-m),c=d&&r.refreshedUponExpiration?1:util.clamp(d?u:1-s,0,1);return r.refreshedUponExpiration&&u>=1&&(r.refreshedUponExpiration=!1),t?{opacity:1,mix:1-c}:{opacity:c,mix:0}}return{opacity:1,mix:0}}var util=_dereq_(\"../util/util\"),ImageSource=_dereq_(\"../source/image_source\");module.exports=drawRaster;\n},{\"../source/image_source\":91,\"../util/util\":223}],72:[function(_dereq_,module,exports){\n\"use strict\";function drawSymbols(t,i,o,e){if(\"translucent\"===t.renderPass){var a=!(o.layout[\"text-allow-overlap\"]||o.layout[\"icon-allow-overlap\"]||o.layout[\"text-ignore-placement\"]||o.layout[\"icon-ignore-placement\"]),r=t.gl;a?r.disable(r.STENCIL_TEST):r.enable(r.STENCIL_TEST),t.setDepthSublayer(0),t.depthMask(!1),drawLayerSymbols(t,i,o,e,!1,o.paint[\"icon-translate\"],o.paint[\"icon-translate-anchor\"],o.layout[\"icon-rotation-alignment\"],o.layout[\"icon-pitch-alignment\"],o.layout[\"icon-keep-upright\"]),drawLayerSymbols(t,i,o,e,!0,o.paint[\"text-translate\"],o.paint[\"text-translate-anchor\"],o.layout[\"text-rotation-alignment\"],o.layout[\"text-pitch-alignment\"],o.layout[\"text-keep-upright\"]),i.map.showCollisionBoxes&&drawCollisionDebug(t,i,o,e)}}function drawLayerSymbols(t,i,o,e,a,r,n,s,u,l){var m=t.gl,f=t.transform,c=\"map\"===s,_=\"map\"===u,y=c&&\"line\"===o.layout[\"symbol-placement\"],p=c&&!_&&!y,x=_;x?m.enable(m.DEPTH_TEST):m.disable(m.DEPTH_TEST);for(var b,d=0,T=e;d<T.length;d+=1){var g=T[d],S=i.getTile(g),h=S.getBucket(o);if(h){var z=a?h.text:h.icon;if(z&&z.segments.get().length){var v=z.programConfigurations.get(o.id),E=a||h.sdfIcons,w=a?h.textSizeData:h.iconSizeData;if(b||(b=t.useProgram(E?\"symbolSDF\":\"symbolIcon\",v),v.setUniforms(m,b,o,{zoom:t.transform.zoom}),setSymbolDrawState(b,t,o,a,p,_,w)),m.activeTexture(m.TEXTURE0),m.uniform1i(b.uniforms.u_texture,0),a)S.glyphAtlasTexture.bind(m.LINEAR,m.CLAMP_TO_EDGE),m.uniform2fv(b.uniforms.u_texsize,S.glyphAtlasTexture.size);else{var M=!o.isLayoutValueFeatureConstant(\"icon-size\")||!o.isLayoutValueZoomConstant(\"icon-size\")||1!==o.getLayoutValue(\"icon-size\",{zoom:f.zoom})||h.iconsNeedLinear,C=_||0!==f.pitch;S.iconAtlasTexture.bind(E||t.options.rotating||t.options.zooming||M||C?m.LINEAR:m.NEAREST,m.CLAMP_TO_EDGE),m.uniform2fv(b.uniforms.u_texsize,S.iconAtlasTexture.size)}t.enableTileClippingMask(g),m.uniformMatrix4fv(b.uniforms.u_matrix,!1,t.translatePosMatrix(g.posMatrix,S,r,n));var L=pixelsToTileUnits(S,1,t.transform.zoom),P=symbolProjection.getLabelPlaneMatrix(g.posMatrix,_,c,t.transform,L),D=symbolProjection.getGlCoordMatrix(g.posMatrix,_,c,t.transform,L);m.uniformMatrix4fv(b.uniforms.u_gl_coord_matrix,!1,t.translatePosMatrix(D,S,r,n,!0)),y?(m.uniformMatrix4fv(b.uniforms.u_label_plane_matrix,!1,identityMat4),symbolProjection.updateLineLabels(h,g.posMatrix,t,a,P,D,_,l,L,o)):m.uniformMatrix4fv(b.uniforms.u_label_plane_matrix,!1,P),m.uniform1f(b.uniforms.u_collision_y_stretch,S.collisionTile.yStretch),drawTileSymbols(b,v,t,o,S,z,a,E,_)}}}x||m.enable(m.DEPTH_TEST)}function setSymbolDrawState(t,i,o,e,a,r,n){var s=i.gl,u=i.transform;s.uniform1i(t.uniforms.u_pitch_with_map,r?1:0),s.uniform1f(t.uniforms.u_is_text,e?1:0),s.activeTexture(s.TEXTURE1),i.frameHistory.bind(s),s.uniform1i(t.uniforms.u_fadetexture,1),s.uniform1f(t.uniforms.u_pitch,u.pitch/360*2*Math.PI),s.uniform1i(t.uniforms.u_is_size_zoom_constant,n.isZoomConstant?1:0),s.uniform1i(t.uniforms.u_is_size_feature_constant,n.isFeatureConstant?1:0),s.uniform1f(t.uniforms.u_camera_to_center_distance,u.cameraToCenterDistance);var l=symbolSize.evaluateSizeForZoom(n,u,o,e);void 0!==l.uSizeT&&s.uniform1f(t.uniforms.u_size_t,l.uSizeT),void 0!==l.uSize&&s.uniform1f(t.uniforms.u_size,l.uSize),s.uniform1f(t.uniforms.u_aspect_ratio,u.width/u.height),s.uniform1i(t.uniforms.u_rotate_symbol,a?1:0)}function drawTileSymbols(t,i,o,e,a,r,n,s,u){var l=o.gl,m=o.transform;if(s){var f=(n?\"text\":\"icon\")+\"-halo-width\",c=!e.isPaintValueFeatureConstant(f)||e.paint[f],_=u?Math.cos(m._pitch)*m.cameraToCenterDistance:1;l.uniform1f(t.uniforms.u_gamma_scale,_),c&&(l.uniform1f(t.uniforms.u_is_halo,1),drawSymbolElements(r,e,l,t)),l.uniform1f(t.uniforms.u_is_halo,0)}drawSymbolElements(r,e,l,t)}function drawSymbolElements(t,i,o,e){e.draw(o,o.TRIANGLES,i.id,t.layoutVertexBuffer,t.indexBuffer,t.segments,t.programConfigurations.get(i.id),t.dynamicLayoutVertexBuffer)}var drawCollisionDebug=_dereq_(\"./draw_collision_debug\"),pixelsToTileUnits=_dereq_(\"../source/pixels_to_tile_units\"),symbolProjection=_dereq_(\"../symbol/projection\"),symbolSize=_dereq_(\"../symbol/symbol_size\"),mat4=_dereq_(\"@mapbox/gl-matrix\").mat4,identityMat4=mat4.identity(new Float32Array(16));module.exports=drawSymbols;\n},{\"../source/pixels_to_tile_units\":93,\"../symbol/projection\":175,\"../symbol/symbol_size\":178,\"./draw_collision_debug\":66,\"@mapbox/gl-matrix\":1}],73:[function(_dereq_,module,exports){\n\"use strict\";var FrameHistory=function(){this.changeTimes=new Float64Array(256),this.changeOpacities=new Uint8Array(256),this.opacities=new Uint8ClampedArray(256),this.array=new Uint8Array(this.opacities.buffer),this.previousZoom=0,this.firstFrame=!0};FrameHistory.prototype.record=function(e,t,i){var r=this;this.firstFrame&&(e=0,this.firstFrame=!1),t=Math.floor(10*t);var a;if(t<this.previousZoom)for(a=t+1;a<=this.previousZoom;a++)r.changeTimes[a]=e,r.changeOpacities[a]=r.opacities[a];else for(a=t;a>this.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.isVisible=function(e){return 0!==this.opacities[Math.floor(10*e)]},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},{}],74:[function(_dereq_,module,exports){\n\"use strict\";function makeGlyphAtlas(a){var e=AlphaImage.create({width:0,height:0}),i={},t=new ShelfPack(0,0,{autoResize:!0});for(var h in a){var p=a[h],r=i[h]={};for(var m in p){var g=p[+m];if(g&&0!==g.bitmap.width&&0!==g.bitmap.height){var l=t.packOne(g.bitmap.width+2*padding,g.bitmap.height+2*padding);AlphaImage.resize(e,{width:t.w,height:t.h}),AlphaImage.copy(g.bitmap,e,{x:0,y:0},{x:l.x+padding,y:l.y+padding},g.bitmap),r[m]={rect:l,metrics:g.metrics}}}}return t.shrink(),AlphaImage.resize(e,{width:t.w,height:t.h}),{image:e,positions:i}}var ShelfPack=_dereq_(\"@mapbox/shelf-pack\"),ref=_dereq_(\"../util/image\"),AlphaImage=ref.AlphaImage,padding=1;module.exports={makeGlyphAtlas:makeGlyphAtlas};\n},{\"../util/image\":213,\"@mapbox/shelf-pack\":3}],75:[function(_dereq_,module,exports){\n\"use strict\";var loadGlyphRange=_dereq_(\"../style/load_glyph_range\"),TinySDF=_dereq_(\"@mapbox/tiny-sdf\"),isChar=_dereq_(\"../util/is_char_in_unicode_block\"),ref=_dereq_(\"../util/util\"),asyncAll=ref.asyncAll,ref$1=_dereq_(\"../util/image\"),AlphaImage=ref$1.AlphaImage,GlyphManager=function(r,e){this.requestTransform=r,this.localIdeographFontFamily=e,this.entries={}};GlyphManager.prototype.setURL=function(r){this.url=r},GlyphManager.prototype.getGlyphs=function(r,e){var t=this,i=[];for(var a in r)for(var l=0,n=r[a];l<n.length;l+=1){var s=n[l];i.push({stack:a,id:s})}asyncAll(i,function(r,e){var i=r.stack,a=r.id,l=t.entries[i];l||(l=t.entries[i]={glyphs:{},requests:{}});var n=l.glyphs[a];if(void 0!==n)return void e(null,{stack:i,id:a,glyph:n});if(n=t._tinySDF(l,i,a))return void e(null,{stack:i,id:a,glyph:n});var s=Math.floor(a/256);if(256*s>65535)return void e(new Error(\"glyphs > 65535 not supported\"));var o=l.requests[s];o||(o=l.requests[s]=[],loadGlyphRange(i,s,t.url,t.requestTransform,function(r,e){if(e)for(var t in e)l.glyphs[+t]=e[+t];for(var i=0,a=o;i<a.length;i+=1){(0,a[i])(r,e)}delete l.requests[s]})),o.push(function(r,t){r?e(r):t&&e(null,{stack:i,id:a,glyph:t[a]||null})})},function(r,t){if(r)e(r);else if(t){for(var i={},a=0,l=t;a<l.length;a+=1){var n=l[a],s=n.stack,o=n.id,h=n.glyph;(i[s]||(i[s]={}))[o]=h}e(null,i)}})},GlyphManager.prototype._tinySDF=function(r,e,t){var i=this.localIdeographFontFamily;if(i&&(isChar[\"CJK Unified Ideographs\"](t)||isChar[\"Hangul Syllables\"](t))){var a=r.tinySDF;if(!a){var l=\"400\";/bold/i.test(e)?l=\"900\":/medium/i.test(e)?l=\"500\":/light/i.test(e)&&(l=\"200\"),a=r.tinySDF=new TinySDF(24,3,8,.25,i,l)}return{id:t,bitmap:AlphaImage.create({width:30,height:30},a.draw(String.fromCharCode(t))),metrics:{width:24,height:24,left:0,top:-8,advance:24}}}},module.exports=GlyphManager;\n},{\"../style/load_glyph_range\":152,\"../util/image\":213,\"../util/is_char_in_unicode_block\":215,\"../util/util\":223,\"@mapbox/tiny-sdf\":4}],76:[function(_dereq_,module,exports){\n\"use strict\";function imagePosition(a,e){var i=e.pixelRatio,t={x:a.x+padding,y:a.y+padding,w:a.w-2*padding,h:a.h-2*padding};return{pixelRatio:i,textureRect:t,tl:[t.x,t.y],br:[t.x+t.w,t.y+t.h],displaySize:[t.w/i,t.h/i]}}function makeImageAtlas(a){var e=RGBAImage.create({width:0,height:0}),i={},t=new ShelfPack(0,0,{autoResize:!0});for(var d in a){var g=a[d],n=t.packOne(g.data.width+2*padding,g.data.height+2*padding);RGBAImage.resize(e,{width:t.w,height:t.h}),RGBAImage.copy(g.data,e,{x:0,y:0},{x:n.x+padding,y:n.y+padding},g.data),i[d]=imagePosition(n,g)}return t.shrink(),RGBAImage.resize(e,{width:t.w,height:t.h}),{image:e,positions:i}}var ShelfPack=_dereq_(\"@mapbox/shelf-pack\"),ref=_dereq_(\"../util/image\"),RGBAImage=ref.RGBAImage,padding=1;module.exports={imagePosition:imagePosition,makeImageAtlas:makeImageAtlas};\n},{\"../util/image\":213,\"@mapbox/shelf-pack\":3}],77:[function(_dereq_,module,exports){\n\"use strict\";var ShelfPack=_dereq_(\"@mapbox/shelf-pack\"),ref=_dereq_(\"../util/image\"),RGBAImage=ref.RGBAImage,ref$1=_dereq_(\"./image_atlas\"),imagePosition=ref$1.imagePosition,Texture=_dereq_(\"./texture\"),padding=1,ImageManager=function(){this.images={},this.loaded=!1,this.requestors=[],this.shelfPack=new ShelfPack(64,64,{autoResize:!0}),this.patterns={},this.atlasImage=RGBAImage.create({width:64,height:64}),this.dirty=!0};ImageManager.prototype.isLoaded=function(){return this.loaded},ImageManager.prototype.setLoaded=function(e){var t=this;if(this.loaded!==e&&(this.loaded=e,e)){for(var a=0,i=t.requestors;a<i.length;a+=1){var r=i[a],s=r.ids,h=r.callback;t._notify(s,h)}this.requestors=[]}},ImageManager.prototype.getImage=function(e){return this.images[e]},ImageManager.prototype.addImage=function(e,t){this.images[e]=t},ImageManager.prototype.removeImage=function(e){delete this.images[e];var t=this.patterns[e];t&&(this.shelfPack.unref(t.bin),delete this.patterns[e])},ImageManager.prototype.getImages=function(e,t){var a=this,i=!0;if(!this.isLoaded())for(var r=0,s=e;r<s.length;r+=1){var h=s[r];a.images[h]||(i=!1)}this.isLoaded()||i?this._notify(e,t):this.requestors.push({ids:e,callback:t})},ImageManager.prototype._notify=function(e,t){for(var a=this,i={},r=0,s=e;r<s.length;r+=1){var h=s[r],g=a.images[h];g&&(i[h]=g)}t(null,i)},ImageManager.prototype.getPixelSize=function(){return{width:this.shelfPack.w,height:this.shelfPack.h}},ImageManager.prototype.getPattern=function(e){var t=this.patterns[e];if(t)return t.position;var a=this.getImage(e);if(!a)return null;var i=a.data.width+2*padding,r=a.data.height+2*padding,s=this.shelfPack.packOne(i,r);if(!s)return null;RGBAImage.resize(this.atlasImage,this.getPixelSize());var h=a.data,g=this.atlasImage,n=s.x+padding,o=s.y+padding,d=h.width,m=h.height;RGBAImage.copy(h,g,{x:0,y:0},{x:n,y:o},{width:d,height:m}),RGBAImage.copy(h,g,{x:0,y:m-1},{x:n,y:o-1},{width:d,height:1}),RGBAImage.copy(h,g,{x:0,y:0},{x:n,y:o+m},{width:d,height:1}),RGBAImage.copy(h,g,{x:d-1,y:0},{x:n-1,y:o},{width:1,height:m}),RGBAImage.copy(h,g,{x:0,y:0},{x:n+d,y:o},{width:1,height:m}),this.dirty=!0;var p=imagePosition(s,a);return this.patterns[e]={bin:s,position:p},p},ImageManager.prototype.bind=function(e){this.atlasTexture?this.dirty&&(this.atlasTexture.update(this.atlasImage),this.dirty=!1):this.atlasTexture=new Texture(e,this.atlasImage,e.RGBA),this.atlasTexture.bind(e.LINEAR,e.CLAMP_TO_EDGE)},module.exports=ImageManager;\n},{\"../util/image\":213,\"./image_atlas\":76,\"./texture\":83,\"@mapbox/shelf-pack\":3}],78:[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.getDash=function(t,i){var e=t.join(\",\")+String(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 a=0,r=0;r<t.length;r++)a+=t[r];for(var n=this.width/a,E=n/2,T=t.length%2==1,o=-h;o<=h;o++)for(var R=e.nextRow+h+o,d=e.width*R,u=T?-t[t.length-1]:0,x=t[0],l=1,_=0;_<this.width;_++){for(;x<_/n;)u=x,x+=t[l],T&&l===t.length-1&&(x+=t[0]),l++;var A=Math.abs(_-u*n),g=Math.abs(_-x*n),w=Math.min(A,g),D=l%2==1,U=void 0;if(i){var f=h?o/h*(E+1):0;if(D){var p=E-Math.abs(f);U=Math.sqrt(w*w+p*p)}else U=E-Math.sqrt(w*w+f*f)}else U=(D?1:-1)*w;e.data[3+4*(d+_)]=Math.max(0,Math.min(255,U+128))}var X={y:(this.nextRow+h+.5)/this.height,height:2*h/this.height,width:a};return this.nextRow+=s,this.dirty=!0,X},LineAtlas.prototype.bind=function(t){this.texture?(t.bindTexture(t.TEXTURE_2D,this.texture),this.dirty&&(this.dirty=!1,t.texSubImage2D(t.TEXTURE_2D,0,0,0,this.width,this.height,t.RGBA,t.UNSIGNED_BYTE,this.data))):(this.texture=t.createTexture(),t.bindTexture(t.TEXTURE_2D,this.texture),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_WRAP_S,t.REPEAT),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_WRAP_T,t.REPEAT),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_MIN_FILTER,t.LINEAR),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_MAG_FILTER,t.LINEAR),t.texImage2D(t.TEXTURE_2D,0,t.RGBA,this.width,this.height,0,t.RGBA,t.UNSIGNED_BYTE,this.data))},module.exports=LineAtlas;\n},{\"../util/util\":223}],79:[function(_dereq_,module,exports){\n\"use strict\";var browser=_dereq_(\"../util/browser\"),mat4=_dereq_(\"@mapbox/gl-matrix\").mat4,FrameHistory=_dereq_(\"./frame_history\"),SourceCache=_dereq_(\"../source/source_cache\"),EXTENT=_dereq_(\"../data/extent\"),pixelsToTileUnits=_dereq_(\"../source/pixels_to_tile_units\"),util=_dereq_(\"../util/util\"),VertexBuffer=_dereq_(\"../gl/vertex_buffer\"),VertexArrayObject=_dereq_(\"./vertex_array_object\"),RasterBoundsArray=_dereq_(\"../data/raster_bounds_array\"),PosArray=_dereq_(\"../data/pos_array\"),ref=_dereq_(\"../data/program_configuration\"),ProgramConfiguration=ref.ProgramConfiguration,shaders=_dereq_(\"../shaders\"),Program=_dereq_(\"./program\"),RenderTexture=_dereq_(\"./render_texture\"),draw={symbol:_dereq_(\"./draw_symbol\"),circle:_dereq_(\"./draw_circle\"),line:_dereq_(\"./draw_line\"),fill:_dereq_(\"./draw_fill\"),\"fill-extrusion\":_dereq_(\"./draw_fill_extrusion\"),raster:_dereq_(\"./draw_raster\"),background:_dereq_(\"./draw_background\"),debug:_dereq_(\"./draw_debug\")},Painter=function(e,r){this.gl=e,this.transform=r,this._tileTextures={},this.prerenderedFrames={},this.viewportFrames=[],this.frameHistory=new FrameHistory,this.setup(),this.numSublayers=SourceCache.maxUnderzooming+SourceCache.maxOverzooming+1,this.depthEpsilon=1/Math.pow(2,16),this.lineWidthRange=e.getParameter(e.ALIASED_LINE_WIDTH_RANGE),this.basicFillProgramConfiguration=ProgramConfiguration.createBasicFill(),this.emptyProgramConfiguration=new ProgramConfiguration};Painter.prototype.resize=function(e,r){var t=this,i=this.gl;this.width=e*browser.devicePixelRatio,this.height=r*browser.devicePixelRatio,i.viewport(0,0,this.width,this.height);for(var a=0,s=t.viewportFrames;a<s.length;a+=1){var n=s[a];t.gl.deleteTexture(n.texture),t.gl.deleteFramebuffer(n.fbo)}this.viewportFrames=[],this.depthRbo&&(this.gl.deleteRenderbuffer(this.depthRbo),this.depthRbo=null)},Painter.prototype.setup=function(){var e=this.gl;e.enable(e.BLEND),e.blendFunc(e.ONE,e.ONE_MINUS_SRC_ALPHA),e.enable(e.STENCIL_TEST),e.enable(e.DEPTH_TEST),e.depthFunc(e.LEQUAL),this._depthMask=!1,e.depthMask(!1);var r=new PosArray;r.emplaceBack(0,0),r.emplaceBack(EXTENT,0),r.emplaceBack(0,EXTENT),r.emplaceBack(EXTENT,EXTENT),this.tileExtentBuffer=new VertexBuffer(e,r),this.tileExtentVAO=new VertexArrayObject,this.tileExtentPatternVAO=new VertexArrayObject;var t=new PosArray;t.emplaceBack(0,0),t.emplaceBack(EXTENT,0),t.emplaceBack(EXTENT,EXTENT),t.emplaceBack(0,EXTENT),t.emplaceBack(0,0),this.debugBuffer=new VertexBuffer(e,t),this.debugVAO=new VertexArrayObject;var i=new RasterBoundsArray;i.emplaceBack(0,0,0,0),i.emplaceBack(EXTENT,0,EXTENT,0),i.emplaceBack(0,EXTENT,0,EXTENT),i.emplaceBack(EXTENT,EXTENT,EXTENT,EXTENT),this.rasterBoundsBuffer=new VertexBuffer(e,i),this.rasterBoundsVAO=new VertexArrayObject,this.extTextureFilterAnisotropic=e.getExtension(\"EXT_texture_filter_anisotropic\")||e.getExtension(\"MOZ_EXT_texture_filter_anisotropic\")||e.getExtension(\"WEBKIT_EXT_texture_filter_anisotropic\"),this.extTextureFilterAnisotropic&&(this.extTextureFilterAnisotropicMax=e.getParameter(this.extTextureFilterAnisotropic.MAX_TEXTURE_MAX_ANISOTROPY_EXT))},Painter.prototype.clearColor=function(){var e=this.gl;e.clearColor(0,0,0,0),e.clear(e.COLOR_BUFFER_BIT)},Painter.prototype.clearStencil=function(){var e=this.gl;e.clearStencil(0),e.stencilMask(255),e.clear(e.STENCIL_BUFFER_BIT)},Painter.prototype.clearDepth=function(){var e=this.gl;e.clearDepth(1),this.depthMask(!0),e.clear(e.DEPTH_BUFFER_BIT)},Painter.prototype._renderTileClippingMasks=function(e){var r=this,t=this.gl;t.colorMask(!1,!1,!1,!1),this.depthMask(!1),t.disable(t.DEPTH_TEST),t.enable(t.STENCIL_TEST),t.stencilMask(255),t.stencilOp(t.KEEP,t.KEEP,t.REPLACE);var i=1;this._tileClippingMaskIDs={};for(var a=0,s=e;a<s.length;a+=1){var n=s[a],o=r._tileClippingMaskIDs[n.id]=i++;t.stencilFunc(t.ALWAYS,o,255);var l=r.useProgram(\"fill\",r.basicFillProgramConfiguration);t.uniformMatrix4fv(l.uniforms.u_matrix,!1,n.posMatrix),r.tileExtentVAO.bind(t,l,r.tileExtentBuffer),t.drawArrays(t.TRIANGLE_STRIP,0,r.tileExtentBuffer.length)}t.stencilMask(0),t.colorMask(!0,!0,!0,!0),this.depthMask(!0),t.enable(t.DEPTH_TEST)},Painter.prototype.enableTileClippingMask=function(e){var r=this.gl;r.stencilFunc(r.EQUAL,this._tileClippingMaskIDs[e.id],255)},Painter.prototype.render=function(e,r){var t=this;this.style=e,this.options=r,this.lineAtlas=e.lineAtlas,this.imageManager=e.imageManager,this.glyphManager=e.glyphManager,this.frameHistory.record(Date.now(),this.transform.zoom,e.getTransition().duration);for(var i in t.style.sourceCaches){var a=t.style.sourceCaches[i];a.used&&a.prepare(t.gl)}var s=this.style._order;this.renderPass=\"3d\";for(var n,o=!0,l=[],h=0;h<s.length;h++){var c=t.style._layers[s[h]];if(c.has3DPass()&&!c.isHidden(t.transform.zoom)&&(c.source!==(n&&n.id)&&(n=t.style.sourceCaches[c.source],l=[],n&&(t.clearStencil(),l=n.getVisibleCoordinates()),l.reverse()),l.length)){t._setup3DRenderbuffer();var u=t.viewportFrames.pop()||new RenderTexture(t);u.bindWithDepth(t.depthRbo),o&&(t.clearDepth(),o=!1),t.renderLayer(t,n,c,l),u.unbind(),t.prerenderedFrames[c.id]=u}}this.clearColor(),this.clearDepth(),this.showOverdrawInspector(r.showOverdrawInspector),this.depthRange=(e._order.length+2)*this.numSublayers*this.depthEpsilon,this.renderPass=\"opaque\";var p,d=[];for(this.currentLayer=s.length-1,this._showOverdrawInspector||this.gl.disable(this.gl.BLEND),this.currentLayer;this.currentLayer>=0;this.currentLayer--){var g=t.style._layers[s[t.currentLayer]];g.source!==(p&&p.id)&&(p=t.style.sourceCaches[g.source],d=[],p&&(t.clearStencil(),d=p.getVisibleCoordinates(),p.getSource().isTileClipped&&t._renderTileClippingMasks(d))),t.renderLayer(t,p,g,d)}this.renderPass=\"translucent\";var f,E=[];for(this.gl.enable(this.gl.BLEND),this.currentLayer=0,this.currentLayer;this.currentLayer<s.length;this.currentLayer++){var T=t.style._layers[s[t.currentLayer]];T.source!==(f&&f.id)&&(f=t.style.sourceCaches[T.source],E=[],f&&(t.clearStencil(),E=f.getVisibleCoordinates(),f.getSource().isTileClipped&&t._renderTileClippingMasks(E)),E.reverse()),t.renderLayer(t,f,T,E)}if(this.options.showTileBoundaries){var _=this.style.sourceCaches[Object.keys(this.style.sourceCaches)[0]];_&&draw.debug(this,_,_.getVisibleCoordinates())}},Painter.prototype._setup3DRenderbuffer=function(){if(!this.depthRbo){var e=this.gl;this.depthRbo=e.createRenderbuffer(),e.bindRenderbuffer(e.RENDERBUFFER,this.depthRbo),e.renderbufferStorage(e.RENDERBUFFER,e.DEPTH_COMPONENT16,this.width,this.height),e.bindRenderbuffer(e.RENDERBUFFER,null)}this.depthRboAttached=!0},Painter.prototype.depthMask=function(e){e!==this._depthMask&&(this._depthMask=e,this.gl.depthMask(e))},Painter.prototype.renderLayer=function(e,r,t,i){t.isHidden(this.transform.zoom)||(\"background\"===t.type||i.length)&&(this.id=t.id,draw[t.type](e,r,t,i))},Painter.prototype.setDepthSublayer=function(e){var r=1-((1+this.currentLayer)*this.numSublayers+e)*this.depthEpsilon,t=r-1+this.depthRange;this.gl.depthRange(t,r)},Painter.prototype.translatePosMatrix=function(e,r,t,i,a){if(!t[0]&&!t[1])return e;var s=a?\"map\"===i?this.transform.angle:0:\"viewport\"===i?-this.transform.angle:0;if(s){var n=Math.sin(s),o=Math.cos(s);t=[t[0]*o-t[1]*n,t[0]*n+t[1]*o]}var l=[a?t[0]:pixelsToTileUnits(r,t[0],this.transform.zoom),a?t[1]:pixelsToTileUnits(r,t[1],this.transform.zoom),0],h=new Float32Array(16);return mat4.translate(h,e,l),h},Painter.prototype.saveTileTexture=function(e){var r=this._tileTextures[e.size];r?r.push(e):this._tileTextures[e.size]=[e]},Painter.prototype.getTileTexture=function(e){var r=this._tileTextures[e];return r&&r.length>0?r.pop():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._createProgramCached=function(e,r){this.cache=this.cache||{};var t=\"\"+e+(r.cacheKey||\"\")+(this._showOverdrawInspector?\"/overdraw\":\"\");return this.cache[t]||(this.cache[t]=new Program(this.gl,shaders[e],r,this._showOverdrawInspector)),this.cache[t]},Painter.prototype.useProgram=function(e,r){var t=this.gl,i=this._createProgramCached(e,r||this.emptyProgramConfiguration);return this.currentProgram!==i&&(t.useProgram(i.program),this.currentProgram=i),i},module.exports=Painter;\n},{\"../data/extent\":48,\"../data/pos_array\":52,\"../data/program_configuration\":53,\"../data/raster_bounds_array\":54,\"../gl/vertex_buffer\":62,\"../shaders\":86,\"../source/pixels_to_tile_units\":93,\"../source/source_cache\":98,\"../util/browser\":202,\"../util/util\":223,\"./draw_background\":64,\"./draw_circle\":65,\"./draw_debug\":67,\"./draw_fill\":68,\"./draw_fill_extrusion\":69,\"./draw_line\":70,\"./draw_raster\":71,\"./draw_symbol\":72,\"./frame_history\":73,\"./program\":81,\"./render_texture\":82,\"./vertex_array_object\":84,\"@mapbox/gl-matrix\":1}],80:[function(_dereq_,module,exports){\n\"use strict\";var pixelsToTileUnits=_dereq_(\"../source/pixels_to_tile_units\");exports.isPatternMissing=function(r,i){if(!r)return!1;var e=i.imageManager.getPattern(r.from),o=i.imageManager.getPattern(r.to);return!e||!o},exports.prepare=function(r,i,e){var o=i.gl,t=i.imageManager.getPattern(r.from),n=i.imageManager.getPattern(r.to);o.uniform1i(e.uniforms.u_image,0),o.uniform2fv(e.uniforms.u_pattern_tl_a,t.tl),o.uniform2fv(e.uniforms.u_pattern_br_a,t.br),o.uniform2fv(e.uniforms.u_pattern_tl_b,n.tl),o.uniform2fv(e.uniforms.u_pattern_br_b,n.br);var u=i.imageManager.getPixelSize(),a=u.width,f=u.height;o.uniform2fv(e.uniforms.u_texsize,[a,f]),o.uniform1f(e.uniforms.u_mix,r.t),o.uniform2fv(e.uniforms.u_pattern_size_a,t.displaySize),o.uniform2fv(e.uniforms.u_pattern_size_b,n.displaySize),o.uniform1f(e.uniforms.u_scale_a,r.fromScale),o.uniform1f(e.uniforms.u_scale_b,r.toScale),o.activeTexture(o.TEXTURE0),i.imageManager.bind(o)},exports.setTile=function(r,i,e){var o=i.gl;o.uniform1f(e.uniforms.u_tile_units_to_pixels,1/pixelsToTileUnits(r,1,i.transform.tileZoom));var t=Math.pow(2,r.coord.z),n=r.tileSize*Math.pow(2,i.transform.tileZoom)/t,u=n*(r.coord.x+r.coord.w*t),a=n*r.coord.y;o.uniform2f(e.uniforms.u_pixel_coord_upper,u>>16,a>>16),o.uniform2f(e.uniforms.u_pixel_coord_lower,65535&u,65535&a)};\n},{\"../source/pixels_to_tile_units\":93}],81:[function(_dereq_,module,exports){\n\"use strict\";var browser=_dereq_(\"../util/browser\"),shaders=_dereq_(\"../shaders\"),ref=_dereq_(\"../data/program_configuration\"),ProgramConfiguration=ref.ProgramConfiguration,VertexArrayObject=_dereq_(\"./vertex_array_object\"),Program=function(r,e,t,a){var o=this;this.gl=r,this.program=r.createProgram();var i=t.defines().concat(\"#define DEVICE_PIXEL_RATIO \"+browser.devicePixelRatio.toFixed(1));a&&i.push(\"#define OVERDRAW_INSPECTOR;\");var n=i.concat(shaders.prelude.fragmentSource,e.fragmentSource).join(\"\\n\"),s=i.concat(shaders.prelude.vertexSource,e.vertexSource).join(\"\\n\"),m=r.createShader(r.FRAGMENT_SHADER);r.shaderSource(m,n),r.compileShader(m),r.attachShader(this.program,m);var g=r.createShader(r.VERTEX_SHADER);r.shaderSource(g,s),r.compileShader(g),r.attachShader(this.program,g);for(var c=t.interface?t.interface.layoutAttributes:[],u=0;u<c.length;u++)r.bindAttribLocation(o.program,u,c[u].name);r.linkProgram(this.program),this.numAttributes=r.getProgramParameter(this.program,r.ACTIVE_ATTRIBUTES),this.attributes={},this.uniforms={};for(var h=0;h<this.numAttributes;h++){var f=r.getActiveAttrib(o.program,h);f&&(o.attributes[f.name]=r.getAttribLocation(o.program,f.name))}for(var d=r.getProgramParameter(this.program,r.ACTIVE_UNIFORMS),p=0;p<d;p++){var v=r.getActiveUniform(o.program,p);v&&(o.uniforms[v.name]=r.getUniformLocation(o.program,v.name))}};Program.prototype.draw=function(r,e,t,a,o,i,n,s){for(var m,g=this,c=(m={},m[r.LINES]=2,m[r.TRIANGLES]=3,m)[e],u=0,h=i.get();u<h.length;u+=1){var f=h[u],d=f.vaos||(f.vaos={});(d[t]||(d[t]=new VertexArrayObject)).bind(r,g,a,o,n&&n.paintVertexBuffer,f.vertexOffset,s),r.drawElements(e,f.primitiveLength*c,r.UNSIGNED_SHORT,f.primitiveOffset*c*2)}},module.exports=Program;\n},{\"../data/program_configuration\":53,\"../shaders\":86,\"../util/browser\":202,\"./vertex_array_object\":84}],82:[function(_dereq_,module,exports){\n\"use strict\";var VertexBuffer=_dereq_(\"../gl/vertex_buffer\"),VertexArrayObject=_dereq_(\"./vertex_array_object\"),PosArray=_dereq_(\"../data/pos_array\"),RenderTexture=function(e){var r=this.gl=e.gl,t=this.texture=r.createTexture();r.bindTexture(r.TEXTURE_2D,t),r.texParameteri(r.TEXTURE_2D,r.TEXTURE_WRAP_S,r.CLAMP_TO_EDGE),r.texParameteri(r.TEXTURE_2D,r.TEXTURE_WRAP_T,r.CLAMP_TO_EDGE),r.texParameteri(r.TEXTURE_2D,r.TEXTURE_MIN_FILTER,r.LINEAR),r.texParameteri(r.TEXTURE_2D,r.TEXTURE_MAG_FILTER,r.LINEAR),r.texImage2D(r.TEXTURE_2D,0,r.RGBA,e.width,e.height,0,r.RGBA,r.UNSIGNED_BYTE,null),r.bindTexture(r.TEXTURE_2D,null);var E=this.fbo=r.createFramebuffer();r.bindFramebuffer(r.FRAMEBUFFER,E),r.framebufferTexture2D(r.FRAMEBUFFER,r.COLOR_ATTACHMENT0,r.TEXTURE_2D,t,0);var a=new PosArray;a.emplaceBack(0,0),a.emplaceBack(1,0),a.emplaceBack(0,1),a.emplaceBack(1,1),this.buffer=new VertexBuffer(r,a),this.vao=new VertexArrayObject};RenderTexture.prototype.bindWithDepth=function(e){var r=this.gl;r.bindFramebuffer(r.FRAMEBUFFER,this.fbo),this.attachedRbo!==e&&(r.framebufferRenderbuffer(r.FRAMEBUFFER,r.DEPTH_ATTACHMENT,r.RENDERBUFFER,e),this.attachedRbo=e)},RenderTexture.prototype.unbind=function(){var e=this.gl;e.bindFramebuffer(e.FRAMEBUFFER,null)},module.exports=RenderTexture;\n},{\"../data/pos_array\":52,\"../gl/vertex_buffer\":62,\"./vertex_array_object\":84}],83:[function(_dereq_,module,exports){\n\"use strict\";var Texture=function(t,e,i){this.gl=t;var r=e.width,T=e.height;this.size=[r,T],this.format=i,this.texture=t.createTexture(),this.update(e)};Texture.prototype.update=function(t){var e=t.width,i=t.height,r=t.data;this.size=[e,i];var T=this,E=T.gl;E.bindTexture(E.TEXTURE_2D,this.texture),E.pixelStorei(E.UNPACK_ALIGNMENT,1),this.format===E.RGBA&&E.pixelStorei(E.UNPACK_PREMULTIPLY_ALPHA_WEBGL,!0),E.texImage2D(E.TEXTURE_2D,0,this.format,e,i,0,this.format,E.UNSIGNED_BYTE,r)},Texture.prototype.bind=function(t,e){var i=this,r=i.gl;r.bindTexture(r.TEXTURE_2D,this.texture),t!==this.filter&&(r.texParameteri(r.TEXTURE_2D,r.TEXTURE_MAG_FILTER,t),r.texParameteri(r.TEXTURE_2D,r.TEXTURE_MIN_FILTER,t),this.filter=t),e!==this.wrap&&(r.texParameteri(r.TEXTURE_2D,r.TEXTURE_WRAP_S,e),r.texParameteri(r.TEXTURE_2D,r.TEXTURE_WRAP_T,e),this.wrap=e)},Texture.prototype.destroy=function(){this.gl.deleteTexture(this.texture),this.texture=null},module.exports=Texture;\n},{}],84:[function(_dereq_,module,exports){\n\"use strict\";var VertexArrayObject=function(){this.boundProgram=null,this.boundVertexBuffer=null,this.boundVertexBuffer2=null,this.boundIndexBuffer=null,this.boundVertexOffset=null,this.boundDynamicVertexBuffer=null,this.vao=null};VertexArrayObject.prototype.bind=function(e,t,r,i,n,s,u){void 0===e.extVertexArrayObject&&(e.extVertexArrayObject=e.getExtension(\"OES_vertex_array_object\"));var b=!this.vao||this.boundProgram!==t||this.boundVertexBuffer!==r||this.boundVertexBuffer2!==n||this.boundIndexBuffer!==i||this.boundVertexOffset!==s||this.boundDynamicVertexBuffer!==u;!e.extVertexArrayObject||b?(this.freshBind(e,t,r,i,n,s,u),this.gl=e):(e.extVertexArrayObject.bindVertexArrayOES(this.vao),u&&u.bind())},VertexArrayObject.prototype.freshBind=function(e,t,r,i,n,s,u){var b,o=t.numAttributes;if(e.extVertexArrayObject)this.vao&&this.destroy(),this.vao=e.extVertexArrayObject.createVertexArrayOES(),e.extVertexArrayObject.bindVertexArrayOES(this.vao),b=0,this.boundProgram=t,this.boundVertexBuffer=r,this.boundVertexBuffer2=n,this.boundIndexBuffer=i,this.boundVertexOffset=s,this.boundDynamicVertexBuffer=u;else{b=e.currentNumAttributes||0;for(var x=o;x<b;x++)e.disableVertexAttribArray(x)}r.enableAttributes(e,t),n&&n.enableAttributes(e,t),u&&u.enableAttributes(e,t),r.bind(),r.setVertexAttribPointers(e,t,s),n&&(n.bind(),n.setVertexAttribPointers(e,t,s)),u&&(u.bind(),u.setVertexAttribPointers(e,t,s)),i&&i.bind(),e.currentNumAttributes=o},VertexArrayObject.prototype.destroy=function(){this.vao&&(this.gl.extVertexArrayObject.deleteVertexArrayOES(this.vao),this.vao=null)},module.exports=VertexArrayObject;\n},{}],85:[function(_dereq_,module,exports){\n\"use strict\";var util=_dereq_(\"../util/util\");exports.packUint8ToFloat=function(t,l){return t=util.clamp(Math.floor(t),0,255),l=util.clamp(Math.floor(l),0,255),256*t+l};\n},{\"../util/util\":223}],86:[function(_dereq_,module,exports){\n\"use strict\";var shaders={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\\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, we encode a 4-component\\n// 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 vec3 v_data;\\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 vec2 extrude = v_data.xy;\\n float extrude_length = length(extrude);\\n\\n lowp float antialiasblur = v_data.z;\\n float antialiased_blur = -max(blur, 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 bool u_pitch_with_map;\\nuniform vec2 u_extrude_scale;\\nuniform highp float u_camera_to_center_distance;\\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 vec3 v_data;\\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 vec2 extrude = vec2(mod(a_pos, 2.0) * 2.0 - 1.0);\\n\\n // multiply a_pos by 0.5, since we had it * 2 in order to sneak\\n // in extrusion data\\n vec2 circle_center = floor(a_pos * 0.5);\\n if (u_pitch_with_map) {\\n vec2 corner_position = circle_center;\\n if (u_scale_with_map) {\\n corner_position += extrude * (radius + stroke_width) * u_extrude_scale;\\n } else {\\n // Pitching the circle with the map effectively scales it with the map\\n // To counteract the effect for pitch-scale: viewport, we rescale the\\n // whole circle based on the pitch scaling effect at its central point\\n vec4 projected_center = u_matrix * vec4(circle_center, 0, 1);\\n corner_position += extrude * (radius + stroke_width) * u_extrude_scale * (projected_center.w / u_camera_to_center_distance);\\n }\\n\\n gl_Position = u_matrix * vec4(corner_position, 0, 1);\\n } else {\\n gl_Position = u_matrix * vec4(circle_center, 0, 1);\\n\\n if (u_scale_with_map) {\\n gl_Position.xy += extrude * (radius + stroke_width) * u_extrude_scale * u_camera_to_center_distance;\\n } else {\\n gl_Position.xy += extrude * (radius + stroke_width) * u_extrude_scale * gl_Position.w;\\n }\\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 lowp float antialiasblur = 1.0 / DEVICE_PIXEL_RATIO / (radius + stroke_width);\\n\\n v_data = vec3(extrude.x, extrude.y, antialiasblur);\\n}\\n\"},collisionBox:{fragmentSource:\"uniform float u_zoom;\\n// u_maxzoom is derived from the maximum scale considered by the CollisionTile\\n// Labels with placement zoom greater than this value will not be placed,\\n// regardless of perspective effects.\\nuniform float u_maxzoom;\\nuniform sampler2D u_fadetexture;\\n\\n// v_max_zoom is a collision-box-specific value that controls when line-following\\n// collision boxes are used.\\nvarying float v_max_zoom;\\nvarying float v_placement_zoom;\\nvarying float v_perspective_zoom_adjust;\\nvarying vec2 v_fade_tex;\\n\\nvoid main() {\\n\\n float alpha = 0.5;\\n\\n // Green = no collisions, label is showing\\n gl_FragColor = vec4(0.0, 1.0, 0.0, 1.0) * alpha;\\n\\n // Red = collision, label hidden\\n if (texture2D(u_fadetexture, v_fade_tex).a < 1.0) {\\n gl_FragColor = vec4(1.0, 0.0, 0.0, 1.0) * alpha;\\n }\\n\\n // Faded black = this collision box is not used at this zoom (for curved labels)\\n if (u_zoom >= v_max_zoom + v_perspective_zoom_adjust) {\\n gl_FragColor = vec4(0.0, 0.0, 0.0, 1.0) * alpha * 0.25;\\n }\\n\\n // Faded blue = the placement scale for this label is beyond the CollisionTile\\n // max scale, so it's impossible for this label to show without collision detection\\n // being run again (the label's glyphs haven't even been added to the symbol bucket)\\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_anchor_pos;\\nattribute vec2 a_extrude;\\nattribute vec2 a_data;\\n\\nuniform mat4 u_matrix;\\nuniform float u_scale;\\nuniform float u_pitch;\\nuniform float u_collision_y_stretch;\\nuniform float u_camera_to_center_distance;\\n\\nvarying float v_max_zoom;\\nvarying float v_placement_zoom;\\nvarying float v_perspective_zoom_adjust;\\nvarying vec2 v_fade_tex;\\n\\nvoid main() {\\n vec4 projectedPoint = u_matrix * vec4(a_anchor_pos, 0, 1);\\n highp float camera_to_anchor_distance = projectedPoint.w;\\n highp float collision_perspective_ratio = 1.0 + 0.5 * ((camera_to_anchor_distance / u_camera_to_center_distance) - 1.0);\\n\\n highp float incidence_stretch = camera_to_anchor_distance / (u_camera_to_center_distance * cos(u_pitch));\\n highp float collision_adjustment = max(1.0, incidence_stretch / u_collision_y_stretch);\\n\\n gl_Position = u_matrix * vec4(a_pos + a_extrude * collision_perspective_ratio * collision_adjustment / u_scale, 0.0, 1.0);\\n\\n v_max_zoom = a_data.x;\\n v_placement_zoom = a_data.y;\\n\\n v_perspective_zoom_adjust = floor(log2(collision_perspective_ratio * collision_adjustment) * 10.0);\\n v_fade_tex = vec2((v_placement_zoom + v_perspective_zoom_adjust) / 255.0, 0.0);\\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 // We are using Int16 for texture position coordinates to give us enough precision for\\n // fractional coordinates. We use 8192 to scale the texture coordinates in the buffer\\n // as an arbitrarily high number to preserve adequate precision when rendering.\\n // This is also the same value as the EXTENT we are using for our tile buffer pos coordinates,\\n // so math for modifying either is consistent.\\n gl_Position = u_matrix * vec4(a_pos, step(8192.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 vec2 u_texsize;\\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_texsize, u_pattern_br_a / u_texsize, 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_texsize, u_pattern_br_b / u_texsize, 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 vec2 u_texsize;\\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_texsize, u_pattern_br_a / u_texsize, 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_texsize, u_pattern_br_b / u_texsize, 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 vec2 u_texsize;\\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_texsize, u_pattern_br_a / u_texsize, 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_texsize, u_pattern_br_b / u_texsize, 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 vec4 a_pos_normal;\\nattribute vec4 a_data;\\n\\nuniform mat4 u_matrix;\\nuniform mediump float u_ratio;\\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#pragma mapbox: define mediump float width\\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 #pragma mapbox: initialize mediump float width\\n\\n vec2 a_extrude = a_data.xy - 128.0;\\n float a_direction = mod(a_data.z, 4.0) - 1.0;\\n\\n vec2 pos = a_pos_normal.xy;\\n\\n // x is 1 if it's a round cap, 0 otherwise\\n // y is 1 if the normal points up, and -1 if it points down\\n mediump vec2 normal = a_pos_normal.zw;\\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 halfwidth = width / 2.0;\\n offset = -1.0 * offset;\\n\\n float inset = gapwidth + (gapwidth > 0.0 ? ANTIALIASING : 0.0);\\n float outset = gapwidth + halfwidth * (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 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 vec2 u_texsize;\\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_texsize, u_pattern_br_a / u_texsize, vec2(x_a, y_a));\\n vec2 pos_b = mix(u_pattern_tl_b / u_texsize, u_pattern_br_b / u_texsize, 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 vec4 a_pos_normal;\\nattribute vec4 a_data;\\n\\nuniform mat4 u_matrix;\\nuniform mediump float u_ratio;\\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#pragma mapbox: define mediump float width\\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 #pragma mapbox: initialize mediump float width\\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 vec2 pos = a_pos_normal.xy;\\n\\n // x is 1 if it's a round cap, 0 otherwise\\n // y is 1 if the normal points up, and -1 if it points down\\n mediump vec2 normal = a_pos_normal.zw;\\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 halfwidth = width / 2.0;\\n offset = -1.0 * offset;\\n\\n float inset = gapwidth + (gapwidth > 0.0 ? ANTIALIASING : 0.0);\\n float outset = gapwidth + halfwidth * (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 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:{\nfragmentSource:\"\\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#pragma mapbox: define mediump float width\\n#pragma mapbox: define lowp float floorwidth\\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 width\\n #pragma mapbox: initialize lowp float floorwidth\\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 / floorwidth, 0.5 + u_sdfgamma / floorwidth, 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 vec4 a_pos_normal;\\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;\\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#pragma mapbox: define mediump float width\\n#pragma mapbox: define lowp float floorwidth\\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 #pragma mapbox: initialize mediump float width\\n #pragma mapbox: initialize lowp float floorwidth\\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 vec2 pos = a_pos_normal.xy;\\n\\n // x is 1 if it's a round cap, 0 otherwise\\n // y is 1 if the normal points up, and -1 if it points down\\n mediump vec2 normal = a_pos_normal.zw;\\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 halfwidth = width / 2.0;\\n offset = -1.0 * offset;\\n\\n float inset = gapwidth + (gapwidth > 0.0 ? ANTIALIASING : 0.0);\\n float outset = gapwidth + halfwidth * (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 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 / floorwidth, normal.y * u_patternscale_a.y + u_tex_y_a);\\n v_tex_b = vec2(a_linesofar * u_patternscale_b.x / floorwidth, 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 if (color0.a > 0.0) {\\n color0.rgb = color0.rgb / color0.a;\\n }\\n if (color1.a > 0.0) {\\n color1.rgb = color1.rgb / color1.a;\\n }\\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 // We are using Int16 for texture position coordinates to give us enough precision for\\n // fractional coordinates. We use 8192 to scale the texture coordinates in the buffer\\n // as an arbitrarily high number to preserve adequate precision when rendering.\\n // This is also the same value as the EXTENT we are using for our tile buffer pos coordinates,\\n // so math for modifying either is consistent.\\n v_pos0 = (((a_texture_pos / 8192.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:\"const float PI = 3.141592653589793;\\n\\nattribute vec4 a_pos_offset;\\nattribute vec4 a_data;\\nattribute vec3 a_projected_pos;\\n\\nuniform bool u_is_size_zoom_constant;\\nuniform bool u_is_size_feature_constant;\\nuniform highp float u_size_t; // used to interpolate between zoom stops when size is a composite function\\nuniform highp float u_size; // used when size is both zoom and feature constant\\nuniform highp float u_camera_to_center_distance;\\nuniform highp float u_pitch;\\nuniform bool u_rotate_symbol;\\nuniform highp float u_aspect_ratio;\\nuniform highp float u_collision_y_stretch;\\n\\n#pragma mapbox: define lowp float opacity\\n\\nuniform mat4 u_matrix;\\nuniform mat4 u_label_plane_matrix;\\nuniform mat4 u_gl_coord_matrix;\\n\\nuniform bool u_is_text;\\nuniform bool u_pitch_with_map;\\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 vec2 a_size = a_data.zw;\\n\\n highp vec2 angle_labelminzoom = unpack_float(a_projected_pos[2]);\\n highp float segment_angle = -angle_labelminzoom[0] / 255.0 * 2.0 * PI;\\n mediump float a_labelminzoom = angle_labelminzoom[1];\\n\\n float size;\\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 } else if (u_is_size_zoom_constant && !u_is_size_feature_constant) {\\n size = a_size[0] / 10.0;\\n } else if (!u_is_size_zoom_constant && u_is_size_feature_constant) {\\n size = u_size;\\n } else {\\n size = u_size;\\n }\\n\\n vec4 projectedPoint = u_matrix * vec4(a_pos, 0, 1);\\n highp float camera_to_anchor_distance = projectedPoint.w;\\n // See comments in symbol_sdf.vertex\\n highp float distance_ratio = u_pitch_with_map ?\\n camera_to_anchor_distance / u_camera_to_center_distance :\\n u_camera_to_center_distance / camera_to_anchor_distance;\\n highp float perspective_ratio = 0.5 + 0.5 * distance_ratio;\\n\\n size *= perspective_ratio;\\n\\n float fontScale = u_is_text ? size / 24.0 : size;\\n\\n highp float symbol_rotation = 0.0;\\n if (u_rotate_symbol) {\\n // See comments in symbol_sdf.vertex\\n vec4 offsetProjectedPoint = u_matrix * vec4(a_pos + vec2(1, 0), 0, 1);\\n\\n vec2 a = projectedPoint.xy / projectedPoint.w;\\n vec2 b = offsetProjectedPoint.xy / offsetProjectedPoint.w;\\n\\n symbol_rotation = atan((b.y - a.y) / u_aspect_ratio, b.x - a.x);\\n }\\n\\n highp float angle_sin = sin(segment_angle + symbol_rotation);\\n highp float angle_cos = cos(segment_angle + symbol_rotation);\\n mat2 rotation_matrix = mat2(angle_cos, -1.0 * angle_sin, angle_sin, angle_cos);\\n\\n vec4 projected_pos = u_label_plane_matrix * vec4(a_projected_pos.xy, 0.0, 1.0);\\n gl_Position = u_gl_coord_matrix * vec4(projected_pos.xy / projected_pos.w + rotation_matrix * (a_offset / 64.0 * fontScale), 0.0, 1.0);\\n\\n v_tex = a_tex / u_texsize;\\n // See comments in symbol_sdf.vertex\\n highp float incidence_stretch = camera_to_anchor_distance / (u_camera_to_center_distance * cos(u_pitch));\\n highp float collision_adjustment = max(1.0, incidence_stretch / u_collision_y_stretch);\\n\\n highp float collision_perspective_ratio = 1.0 + 0.5*((camera_to_anchor_distance / u_camera_to_center_distance) - 1.0);\\n highp float perspective_zoom_adjust = floor(log2(collision_perspective_ratio * collision_adjustment) * 10.0);\\n v_fade_tex = vec2((a_labelminzoom + perspective_zoom_adjust) / 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 vec4 v_data0;\\nvarying vec2 v_data1;\\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 tex = v_data0.xy;\\n vec2 fade_tex = v_data0.zw;\\n float gamma_scale = v_data1.x;\\n float size = v_data1.y;\\n\\n float fontScale = u_is_text ? size / 24.0 : 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, tex).a;\\n lowp float fade_alpha = texture2D(u_fadetexture, fade_tex).a;\\n highp float gamma_scaled = gamma * 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;\\nattribute vec3 a_projected_pos;\\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) ]\\nuniform bool u_is_size_zoom_constant;\\nuniform bool u_is_size_feature_constant;\\nuniform highp float u_size_t; // used to interpolate between zoom stops when size is a composite function\\nuniform highp float u_size; // used when size is both zoom and 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\\nuniform mat4 u_matrix;\\nuniform mat4 u_label_plane_matrix;\\nuniform mat4 u_gl_coord_matrix;\\n\\nuniform bool u_is_text;\\nuniform bool u_pitch_with_map;\\nuniform highp float u_pitch;\\nuniform bool u_rotate_symbol;\\nuniform highp float u_aspect_ratio;\\nuniform highp float u_camera_to_center_distance;\\nuniform highp float u_collision_y_stretch;\\n\\nuniform vec2 u_texsize;\\n\\nvarying vec4 v_data0;\\nvarying vec2 v_data1;\\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 vec2 a_size = a_data.zw;\\n\\n highp vec2 angle_labelminzoom = unpack_float(a_projected_pos[2]);\\n highp float segment_angle = -angle_labelminzoom[0] / 255.0 * 2.0 * PI;\\n mediump float a_labelminzoom = angle_labelminzoom[1];\\n float size;\\n\\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 } else if (u_is_size_zoom_constant && !u_is_size_feature_constant) {\\n size = a_size[0] / 10.0;\\n } else if (!u_is_size_zoom_constant && u_is_size_feature_constant) {\\n size = u_size;\\n } else {\\n size = u_size;\\n }\\n\\n vec4 projectedPoint = u_matrix * vec4(a_pos, 0, 1);\\n highp float camera_to_anchor_distance = projectedPoint.w;\\n // If the label is pitched with the map, layout is done in pitched space,\\n // which makes labels in the distance smaller relative to viewport space.\\n // We counteract part of that effect by multiplying by the perspective ratio.\\n // If the label isn't pitched with the map, we do layout in viewport space,\\n // which makes labels in the distance larger relative to the features around\\n // them. We counteract part of that effect by dividing by the perspective ratio.\\n highp float distance_ratio = u_pitch_with_map ?\\n camera_to_anchor_distance / u_camera_to_center_distance :\\n u_camera_to_center_distance / camera_to_anchor_distance;\\n highp float perspective_ratio = 0.5 + 0.5 * distance_ratio;\\n\\n size *= perspective_ratio;\\n\\n float fontScale = u_is_text ? size / 24.0 : size;\\n\\n highp float symbol_rotation = 0.0;\\n if (u_rotate_symbol) {\\n // Point labels with 'rotation-alignment: map' are horizontal with respect to tile units\\n // To figure out that angle in projected space, we draw a short horizontal line in tile\\n // space, project it, and measure its angle in projected space.\\n vec4 offsetProjectedPoint = u_matrix * vec4(a_pos + vec2(1, 0), 0, 1);\\n\\n vec2 a = projectedPoint.xy / projectedPoint.w;\\n vec2 b = offsetProjectedPoint.xy / offsetProjectedPoint.w;\\n\\n symbol_rotation = atan((b.y - a.y) / u_aspect_ratio, b.x - a.x);\\n }\\n\\n highp float angle_sin = sin(segment_angle + symbol_rotation);\\n highp float angle_cos = cos(segment_angle + symbol_rotation);\\n mat2 rotation_matrix = mat2(angle_cos, -1.0 * angle_sin, angle_sin, angle_cos);\\n\\n vec4 projected_pos = u_label_plane_matrix * vec4(a_projected_pos.xy, 0.0, 1.0);\\n gl_Position = u_gl_coord_matrix * vec4(projected_pos.xy / projected_pos.w + rotation_matrix * (a_offset / 64.0 * fontScale), 0.0, 1.0);\\n float gamma_scale = gl_Position.w;\\n\\n vec2 tex = a_tex / u_texsize;\\n // incidence_stretch is the ratio of how much y space a label takes up on a tile while drawn perpendicular to the viewport vs\\n // how much space it would take up if it were drawn flat on the tile\\n // Using law of sines, camera_to_anchor/sin(ground_angle) = camera_to_center/sin(incidence_angle)\\n // sin(incidence_angle) = 1/incidence_stretch\\n // Incidence angle 90 -> head on, sin(incidence_angle) = 1, no incidence stretch\\n // Incidence angle 1 -> very oblique, sin(incidence_angle) =~ 0, lots of incidence stretch\\n // ground_angle = u_pitch + PI/2 -> sin(ground_angle) = cos(u_pitch)\\n // This 2D calculation is only exactly correct when gl_Position.x is in the center of the viewport,\\n // but it's a close enough approximation for our purposes\\n highp float incidence_stretch = camera_to_anchor_distance / (u_camera_to_center_distance * cos(u_pitch));\\n // incidence_stretch only applies to the y-axis, but without re-calculating the collision tile, we can't\\n // adjust the size of only one axis. So, we do a crude approximation at placement time to get the aspect ratio\\n // about right, and then do the rest of the adjustment here: there will be some extra padding on the x-axis,\\n // but hopefully not too much.\\n // Never make the adjustment less than 1.0: instead of allowing collisions on the x-axis, be conservative on\\n // the y-axis.\\n highp float collision_adjustment = max(1.0, incidence_stretch / u_collision_y_stretch);\\n\\n // Floor to 1/10th zoom to dodge precision issues that can cause partially hidden labels\\n highp float collision_perspective_ratio = 1.0 + 0.5*((camera_to_anchor_distance / u_camera_to_center_distance) - 1.0);\\n highp float perspective_zoom_adjust = floor(log2(collision_perspective_ratio * collision_adjustment) * 10.0);\\n vec2 fade_tex = vec2((a_labelminzoom + perspective_zoom_adjust) / 255.0, 0.0);\\n\\n v_data0 = vec4(tex.x, tex.y, fade_tex.x, fade_tex.y);\\n v_data1 = vec2(gamma_scale, size);\\n}\\n\"}},re=/#pragma mapbox: ([\\w]+) ([\\w]+) ([\\w]+) ([\\w]+)/g,loop=function(e){var n=shaders[e],a={};n.fragmentSource=n.fragmentSource.replace(re,function(e,n,o,t,i){return a[i]=!0,\"define\"===n?\"\\n#ifndef HAS_UNIFORM_u_\"+i+\"\\nvarying \"+o+\" \"+t+\" \"+i+\";\\n#else\\nuniform \"+o+\" \"+t+\" u_\"+i+\";\\n#endif\\n\":\"\\n#ifdef HAS_UNIFORM_u_\"+i+\"\\n \"+o+\" \"+t+\" \"+i+\" = u_\"+i+\";\\n#endif\\n\"}),n.vertexSource=n.vertexSource.replace(re,function(e,n,o,t,i){var r=\"float\"===t?\"vec2\":\"vec4\";return a[i]?\"define\"===n?\"\\n#ifndef HAS_UNIFORM_u_\"+i+\"\\nuniform lowp float a_\"+i+\"_t;\\nattribute \"+o+\" \"+r+\" a_\"+i+\";\\nvarying \"+o+\" \"+t+\" \"+i+\";\\n#else\\nuniform \"+o+\" \"+t+\" u_\"+i+\";\\n#endif\\n\":\"\\n#ifndef HAS_UNIFORM_u_\"+i+\"\\n \"+i+\" = unpack_mix_\"+r+\"(a_\"+i+\", a_\"+i+\"_t);\\n#else\\n \"+o+\" \"+t+\" \"+i+\" = u_\"+i+\";\\n#endif\\n\":\"define\"===n?\"\\n#ifndef HAS_UNIFORM_u_\"+i+\"\\nuniform lowp float a_\"+i+\"_t;\\nattribute \"+o+\" \"+r+\" a_\"+i+\";\\n#else\\nuniform \"+o+\" \"+t+\" u_\"+i+\";\\n#endif\\n\":\"\\n#ifndef HAS_UNIFORM_u_\"+i+\"\\n \"+o+\" \"+t+\" \"+i+\" = unpack_mix_\"+r+\"(a_\"+i+\", a_\"+i+\"_t);\\n#else\\n \"+o+\" \"+t+\" \"+i+\" = u_\"+i+\";\\n#endif\\n\"})};for(var programName in shaders)loop(programName);module.exports=shaders;\n},{}],87:[function(_dereq_,module,exports){\n\"use strict\";var ImageSource=_dereq_(\"./image_source\"),window=_dereq_(\"../util/window\"),CanvasSource=function(t){function i(i,a,e,s){t.call(this,i,a,e,s),this.options=a,this.animate=void 0===a.animate||a.animate}return t&&(i.__proto__=t),i.prototype=Object.create(t&&t.prototype),i.prototype.constructor=i,i.prototype.load=function(){this.canvas=this.canvas||window.document.getElementById(this.options.canvas);var t=this.canvas.getContext(this.options.contextType);if(!t)return this.fire(\"error\",new Error(\"Canvas context not found.\"));if(this.context=t,this.width=this.canvas.width,this.height=this.canvas.height,this._hasInvalidDimensions())return this.fire(\"error\",new Error(\"Canvas dimensions cannot be less than or equal to zero.\"));var i;this.play=function(){void 0===i&&(i=this.map.style.animationLoop.set(1/0),this.map._rerender())},this.pause=function(){void 0!==i&&(i=this.map.style.animationLoop.cancel(i))},this._finishLoading()},i.prototype.getCanvas=function(){return this.canvas},i.prototype.onAdd=function(t){this.map=t,this.load(),this.canvas&&this.animate&&this.play()},i.prototype.onRemove=function(){this.pause()},i.prototype.readCanvas=function(t){var i=this;if(this.context instanceof CanvasRenderingContext2D)this.canvasData=this.context.getImageData(0,0,this.width,this.height);else if(this.context instanceof WebGLRenderingContext){var a=this.context,e=new Uint8Array(this.width*this.height*4);a.readPixels(0,0,this.width,this.height,a.RGBA,a.UNSIGNED_BYTE,e),this.secondaryContext||(this.secondaryContext=window.document.createElement(\"canvas\").getContext(\"2d\")),this.canvasData&&!t||(this.canvasData=this.secondaryContext.createImageData(this.width,this.height));for(var s=this.height-1,n=0;s>=0;s--,n++)i.canvasData.data.set(e.subarray(s*i.width*4,(s+1)*i.width*4),n*i.width*4)}},i.prototype.prepare=function(){var t=!1;if(this.canvas.width!==this.width&&(this.width=this.canvas.width,t=!0),this.canvas.height!==this.height&&(this.height=this.canvas.height,t=!0),!this._hasInvalidDimensions()&&0!==Object.keys(this.tiles).length){if((this.animate||!this.canvasData||t)&&this.readCanvas(t),!this.canvasData)return void this.fire(\"error\",new Error(\"Could not read canvas data.\"));this._prepareImage(this.map.painter.gl,this.canvasData,t)}},i.prototype.serialize=function(){return{type:\"canvas\",canvas:this.canvas,coordinates:this.coordinates}},i.prototype._hasInvalidDimensions=function(){for(var t=this,i=0,a=[t.canvas.width,t.canvas.height];i<a.length;i+=1){var e=a[i];if(isNaN(e)||e<=0)return!0}return!1},i}(ImageSource);module.exports=CanvasSource;\n},{\"../util/window\":204,\"./image_source\":91}],88:[function(_dereq_,module,exports){\n\"use strict\";function resolveURL(t){var e=window.document.createElement(\"a\");return e.href=t,e.href}var Evented=_dereq_(\"../util/evented\"),util=_dereq_(\"../util/util\"),window=_dereq_(\"../util/window\"),EXTENT=_dereq_(\"../data/extent\"),ResourceType=_dereq_(\"../util/ajax\").ResourceType,browser=_dereq_(\"../util/browser\"),GeoJSONSource=function(t){function e(e,o,r,i){t.call(this),this.id=e,this.type=\"geojson\",this.minzoom=0,this.maxzoom=18,this.tileSize=512,this.isTileClipped=!0,this.reparseOverscaled=!0,this.dispatcher=r,this.setEventedParent(i),this._data=o.data,this._options=util.extend({},o),void 0!==o.maxzoom&&(this.maxzoom=o.maxzoom),o.type&&(this.type=o.type);var a=EXTENT/this.tileSize;this.workerOptions=util.extend({source:this.id,cluster:o.cluster||!1,geojsonVtOptions:{buffer:(void 0!==o.buffer?o.buffer:128)*a,tolerance:(void 0!==o.tolerance?o.tolerance:.375)*a,extent:EXTENT,maxZoom:this.maxzoom},superclusterOptions:{maxZoom:void 0!==o.clusterMaxZoom?Math.min(o.clusterMaxZoom,this.maxzoom-1):this.maxzoom-1,extent:EXTENT,radius:(o.clusterRadius||50)*a,log:!1}},o.workerOptions)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.load=function(){var t=this;this.fire(\"dataloading\",{dataType:\"source\"}),this._updateWorkerData(function(e){if(e)return void t.fire(\"error\",{error:e});t.fire(\"data\",{dataType:\"source\",sourceDataType:\"metadata\"})})},e.prototype.onAdd=function(t){this.map=t,this.load()},e.prototype.setData=function(t){var e=this;return this._data=t,this.fire(\"dataloading\",{dataType:\"source\"}),this._updateWorkerData(function(t){if(t)return e.fire(\"error\",{error:t});e.fire(\"data\",{dataType:\"source\",sourceDataType:\"content\"})}),this},e.prototype._updateWorkerData=function(t){var e=this,o=util.extend({},this.workerOptions),r=this._data;\"string\"==typeof r?o.request=this.map._transformRequest(resolveURL(r),ResourceType.Source):o.data=JSON.stringify(r),this.workerID=this.dispatcher.send(this.type+\".loadData\",o,function(o){e._loaded=!0,t(o)},this.workerID)},e.prototype.loadTile=function(t,e){var o=this,r=t.workerID&&\"expired\"!==t.state?\"reloadTile\":\"loadTile\",i={type:this.type,uid:t.uid,coord:t.coord,zoom:t.coord.z,maxZoom:this.maxzoom,tileSize:this.tileSize,source:this.id,pixelRatio:browser.devicePixelRatio,overscaling:t.coord.z>this.maxzoom?Math.pow(2,t.coord.z-this.maxzoom):1,angle:this.map.transform.angle,pitch:this.map.transform.pitch,cameraToCenterDistance:this.map.transform.cameraToCenterDistance,cameraToTileDistance:this.map.transform.cameraToTileDistance(t),showCollisionBoxes:this.map.showCollisionBoxes};t.workerID=this.dispatcher.send(r,i,function(r,i){if(t.unloadVectorData(),!t.aborted)return r?e(r):(t.loadVectorData(i,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 util.extend({},this._options,{type:this.type,data:this._data})},e}(Evented);module.exports=GeoJSONSource;\n},{\"../data/extent\":48,\"../util/ajax\":201,\"../util/browser\":202,\"../util/evented\":210,\"../util/util\":223,\"../util/window\":204}],89:[function(_dereq_,module,exports){\n\"use strict\";function loadGeoJSONTile(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),i=vtpbf(u);0===i.byteOffset&&i.byteLength===i.buffer.byteLength||(i=new Uint8Array(i)),r(null,{vectorTile:u,rawData:i.buffer})}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,loadGeoJSONTile),o&&(this.loadGeoJSON=o),this._geoJSONIndexes={}}return e&&(r.__proto__=e),r.prototype=Object.create(e&&e.prototype),r.prototype.constructor=r,r.prototype.loadData=function(e,r){var t=this;this.loadGeoJSON(e,function(o,n){if(o||!n)return r(o);if(\"object\"!=typeof n)return r(new Error(\"Input data is not a valid GeoJSON object.\"));rewind(n,!0);try{t._geoJSONIndexes[e.source]=e.cluster?supercluster(e.superclusterOptions).load(n.features):geojsonvt(n,e.geojsonVtOptions)}catch(o){return r(o)}t.loaded[e.source]={},r(null)})},r.prototype.reloadTile=function(r,t){var o=this.loaded[r.source],n=r.uid;return o&&o[n]?e.prototype.reloadTile.call(this,r,t):this.loadTile(r,t)},r.prototype.loadGeoJSON=function(e,r){if(e.request)ajax.getJSON(e.request,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}(VectorTileWorkerSource);module.exports=GeoJSONWorkerSource;\n},{\"../util/ajax\":201,\"./geojson_wrapper\":90,\"./vector_tile_worker_source\":103,\"geojson-rewind\":13,\"geojson-vt\":17,\"supercluster\":32,\"vt-pbf\":37}],90:[function(_dereq_,module,exports){\n\"use strict\";var Point=_dereq_(\"@mapbox/point-geometry\"),toGeoJSON=_dereq_(\"@mapbox/vector-tile\").VectorTileFeature.prototype.toGeoJSON,EXTENT=_dereq_(\"../data/extent\"),FeatureWrapper=function(e){this._feature=e,this.extent=EXTENT,this.type=e.type,this.properties=e.tags,\"id\"in e&&!isNaN(e.id)&&(this.id=parseInt(e.id,10))};FeatureWrapper.prototype.loadGeometry=function(){var e=this;if(1===this._feature.type){for(var t=[],r=0,o=e._feature.geometry;r<o.length;r+=1){var a=o[r];t.push([new Point(a[0],a[1])])}return t}for(var i=[],p=0,n=e._feature.geometry;p<n.length;p+=1){for(var s=n[p],u=[],h=0,f=s;h<f.length;h+=1){var l=f[h];u.push(new Point(l[0],l[1]))}i.push(u)}return i},FeatureWrapper.prototype.toGeoJSON=function(e,t,r){return toGeoJSON.call(this,e,t,r)};var GeoJSONWrapper=function(e){this.layers={_geojsonTileLayer:this},this.name=\"_geojsonTileLayer\",this.extent=EXTENT,this.length=e.length,this._features=e};GeoJSONWrapper.prototype.feature=function(e){return new FeatureWrapper(this._features[e])},module.exports=GeoJSONWrapper;\n},{\"../data/extent\":48,\"@mapbox/point-geometry\":2,\"@mapbox/vector-tile\":6}],91:[function(_dereq_,module,exports){\n\"use strict\";var util=_dereq_(\"../util/util\"),window=_dereq_(\"../util/window\"),TileCoord=_dereq_(\"./tile_coord\"),LngLat=_dereq_(\"../geo/lng_lat\"),Point=_dereq_(\"@mapbox/point-geometry\"),Evented=_dereq_(\"../util/evented\"),ajax=_dereq_(\"../util/ajax\"),browser=_dereq_(\"../util/browser\"),EXTENT=_dereq_(\"../data/extent\"),RasterBoundsArray=_dereq_(\"../data/raster_bounds_array\"),VertexBuffer=_dereq_(\"../gl/vertex_buffer\"),VertexArrayObject=_dereq_(\"../render/vertex_array_object\"),ImageSource=function(e){function t(t,r,o,i){e.call(this),this.id=t,this.dispatcher=o,this.coordinates=r.coordinates,this.type=\"image\",this.minzoom=0,this.maxzoom=22,this.tileSize=512,this.tiles={},this.setEventedParent(i),this.options=r,this.textureLoaded=!1}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.load=function(){var e=this;this.fire(\"dataloading\",{dataType:\"source\"}),this.url=this.options.url,ajax.getImage(this.map._transformRequest(this.url,ajax.ResourceType.Image),function(t,r){t?e.fire(\"error\",{error:t}):r&&(e.image=browser.getImageData(r),e._finishLoading())})},t.prototype._finishLoading=function(){this.map&&(this.setCoordinates(this.coordinates),this.fire(\"data\",{dataType:\"source\",sourceDataType:\"metadata\"}))},t.prototype.onAdd=function(e){this.map=e,this.load()},t.prototype.setCoordinates=function(e){this.coordinates=e;var t=this.map,r=e.map(function(e){return t.transform.locationCoordinate(LngLat.convert(e)).zoomTo(0)}),o=this.centerCoord=util.getCoordinatesCenter(r);o.column=Math.floor(o.column),o.row=Math.floor(o.row),this.coord=new TileCoord(o.zoom,o.column,o.row),this.minzoom=this.maxzoom=o.zoom;var i=r.map(function(e){var t=e.zoomTo(o.zoom);return new Point(Math.round((t.column-o.column)*EXTENT),Math.round((t.row-o.row)*EXTENT))});return this._boundsArray=new RasterBoundsArray,this._boundsArray.emplaceBack(i[0].x,i[0].y,0,0),this._boundsArray.emplaceBack(i[1].x,i[1].y,EXTENT,0),this._boundsArray.emplaceBack(i[3].x,i[3].y,0,EXTENT),this._boundsArray.emplaceBack(i[2].x,i[2].y,EXTENT,EXTENT),this.boundsBuffer&&(this.boundsBuffer.destroy(),delete this.boundsBuffer),this.fire(\"data\",{dataType:\"source\",sourceDataType:\"content\"}),this},t.prototype.prepare=function(){0!==Object.keys(this.tiles).length&&this.image&&this._prepareImage(this.map.painter.gl,this.image)},t.prototype._prepareImage=function(e,t,r){var o=this;this.boundsBuffer||(this.boundsBuffer=new VertexBuffer(e,this._boundsArray)),this.boundsVAO||(this.boundsVAO=new VertexArrayObject),this.textureLoaded?r?e.texImage2D(e.TEXTURE_2D,0,e.RGBA,e.RGBA,e.UNSIGNED_BYTE,t):(t instanceof window.HTMLVideoElement||t instanceof window.ImageData)&&(e.bindTexture(e.TEXTURE_2D,this.texture),e.texSubImage2D(e.TEXTURE_2D,0,0,0,e.RGBA,e.UNSIGNED_BYTE,t)):(this.textureLoaded=!0,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.LINEAR),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MAG_FILTER,e.LINEAR),e.texImage2D(e.TEXTURE_2D,0,e.RGBA,e.RGBA,e.UNSIGNED_BYTE,t));for(var i in o.tiles){var a=o.tiles[i];\"loaded\"!==a.state&&(a.state=\"loaded\",a.texture=o.texture)}},t.prototype.loadTile=function(e,t){this.coord&&this.coord.toString()===e.coord.toString()?(this.tiles[String(e.coord.w)]=e,e.buckets={},t(null)):(e.state=\"errored\",t(null))},t.prototype.serialize=function(){return{type:\"image\",url:this.options.url,coordinates:this.coordinates}},t}(Evented);module.exports=ImageSource;\n},{\"../data/extent\":48,\"../data/raster_bounds_array\":54,\"../geo/lng_lat\":58,\"../gl/vertex_buffer\":62,\"../render/vertex_array_object\":84,\"../util/ajax\":201,\"../util/browser\":202,\"../util/evented\":210,\"../util/util\":223,\"../util/window\":204,\"./tile_coord\":101,\"@mapbox/point-geometry\":2}],92:[function(_dereq_,module,exports){\n\"use strict\";var util=_dereq_(\"../util/util\"),ajax=_dereq_(\"../util/ajax\"),browser=_dereq_(\"../util/browser\"),normalizeURL=_dereq_(\"../util/mapbox\").normalizeSourceURL;module.exports=function(r,e,o){var u=function(r,e){if(r)return o(r);if(e){var u=util.pick(e,[\"tiles\",\"minzoom\",\"maxzoom\",\"attribution\",\"mapbox_logo\",\"bounds\"]);e.vector_layers&&(u.vectorLayers=e.vector_layers,u.vectorLayerIds=u.vectorLayers.map(function(r){return r.id})),o(null,u)}};r.url?ajax.getJSON(e(normalizeURL(r.url),ajax.ResourceType.Source),u):browser.frame(function(){return u(null,r)})};\n},{\"../util/ajax\":201,\"../util/browser\":202,\"../util/mapbox\":217,\"../util/util\":223}],93:[function(_dereq_,module,exports){\n\"use strict\";var EXTENT=_dereq_(\"../data/extent\");module.exports=function(e,t,r){return t*(EXTENT/(e.tileSize*Math.pow(2,r-e.coord.z)))};\n},{\"../data/extent\":48}],94:[function(_dereq_,module,exports){\n\"use strict\";function sortTilesIn(e,r){var o=e.coord,t=r.coord;return o.z-t.z||o.y-t.y||o.w-t.w||o.x-t.x}function mergeRenderedFeatureLayers(e){for(var r={},o={},t=0,n=e;t<n.length;t+=1){var u=n[t],a=u.queryResults,d=u.wrappedTileID,s=o[d]=o[d]||{};for(var i in a)for(var l=a[i],c=s[i]=s[i]||{},f=r[i]=r[i]||[],v=0,y=l;v<y.length;v+=1){var p=y[v];c[p.featureIndex]||(c[p.featureIndex]=!0,f.push(p.feature))}}return r}var TileCoord=_dereq_(\"./tile_coord\");exports.rendered=function(e,r,o,t,n,u){var a=e.tilesIn(o);a.sort(sortTilesIn);for(var d=[],s=0,i=a;s<i.length;s+=1){var l=i[s];d.push({wrappedTileID:l.coord.wrapped().id,queryResults:l.tile.queryRenderedFeatures(r,l.queryGeometry,l.scale,t,u)})}return mergeRenderedFeatureLayers(d)},exports.source=function(e,r){for(var o=e.getRenderableIds().map(function(r){return e.getTileByID(r)}),t=[],n={},u=0;u<o.length;u++){var a=o[u],d=new TileCoord(Math.min(a.sourceMaxZoom,a.coord.z),a.coord.x,a.coord.y,0).id;n[d]||(n[d]=!0,a.querySourceFeatures(t,r))}return t};\n},{\"./tile_coord\":101}],95:[function(_dereq_,module,exports){\n\"use strict\";var util=_dereq_(\"../util/util\"),ajax=_dereq_(\"../util/ajax\"),Evented=_dereq_(\"../util/evented\"),loadTileJSON=_dereq_(\"./load_tilejson\"),normalizeURL=_dereq_(\"../util/mapbox\").normalizeTileURL,TileBounds=_dereq_(\"./tile_bounds\"),RasterTileSource=function(e){function t(t,i,r,o){e.call(this),this.id=t,this.dispatcher=r,this.setEventedParent(o),this.type=\"raster\",this.minzoom=0,this.maxzoom=22,this.roundZoom=!0,this.scheme=\"xyz\",this.tileSize=512,this._loaded=!1,this._options=util.extend({},i),util.extend(this,util.pick(i,[\"url\",\"scheme\",\"tileSize\"]))}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.load=function(){var e=this;this.fire(\"dataloading\",{dataType:\"source\"}),loadTileJSON(this._options,this.map._transformRequest,function(t,i){t?e.fire(\"error\",t):i&&(util.extend(e,i),i.bounds&&(e.tileBounds=new TileBounds(i.bounds,e.minzoom,e.maxzoom)),e.fire(\"data\",{dataType:\"source\",sourceDataType:\"metadata\"}),e.fire(\"data\",{dataType:\"source\",sourceDataType:\"content\"}))})},t.prototype.onAdd=function(e){this.map=e,this.load()},t.prototype.serialize=function(){return util.extend({},this._options)},t.prototype.hasTile=function(e){return!this.tileBounds||this.tileBounds.contains(e,this.maxzoom)},t.prototype.loadTile=function(e,t){var i=this,r=normalizeURL(e.coord.url(this.tiles,null,this.scheme),this.url,this.tileSize);e.request=ajax.getImage(this.map._transformRequest(r,ajax.ResourceType.Tile),function(r,o){if(delete e.request,e.aborted)i.state=\"unloaded\",t(null);else if(r)i.state=\"errored\",t(r);else if(o){i.map._refreshExpiredTiles&&e.setExpiryData(o),delete o.cacheControl,delete o.expires;var a=i.map.painter.gl;e.texture=i.map.painter.getTileTexture(o.width),e.texture?(a.bindTexture(a.TEXTURE_2D,e.texture),a.texSubImage2D(a.TEXTURE_2D,0,0,0,a.RGBA,a.UNSIGNED_BYTE,o)):(e.texture=a.createTexture(),a.bindTexture(a.TEXTURE_2D,e.texture),a.texParameteri(a.TEXTURE_2D,a.TEXTURE_MIN_FILTER,a.LINEAR_MIPMAP_NEAREST),a.texParameteri(a.TEXTURE_2D,a.TEXTURE_MAG_FILTER,a.LINEAR),a.texParameteri(a.TEXTURE_2D,a.TEXTURE_WRAP_S,a.CLAMP_TO_EDGE),a.texParameteri(a.TEXTURE_2D,a.TEXTURE_WRAP_T,a.CLAMP_TO_EDGE),a.pixelStorei(a.UNPACK_PREMULTIPLY_ALPHA_WEBGL,!0),i.map.painter.extTextureFilterAnisotropic&&a.texParameterf(a.TEXTURE_2D,i.map.painter.extTextureFilterAnisotropic.TEXTURE_MAX_ANISOTROPY_EXT,i.map.painter.extTextureFilterAnisotropicMax),a.texImage2D(a.TEXTURE_2D,0,a.RGBA,a.RGBA,a.UNSIGNED_BYTE,o),e.texture.size=o.width),a.generateMipmap(a.TEXTURE_2D),e.state=\"loaded\",t(null)}})},t.prototype.abortTile=function(e){e.request&&(e.request.abort(),delete e.request)},t.prototype.unloadTile=function(e){e.texture&&this.map.painter.saveTileTexture(e.texture)},t}(Evented);module.exports=RasterTileSource;\n},{\"../util/ajax\":201,\"../util/evented\":210,\"../util/mapbox\":217,\"../util/util\":223,\"./load_tilejson\":92,\"./tile_bounds\":100}],96:[function(_dereq_,module,exports){\n\"use strict\";var ajax=_dereq_(\"../util/ajax\"),Evented=_dereq_(\"../util/evented\"),window=_dereq_(\"../util/window\"),pluginRequested=!1,pluginBlobURL=null;module.exports.evented=new Evented,module.exports.registerForPluginAvailability=function(e){return pluginBlobURL?e({pluginBlobURL:pluginBlobURL,errorCallback:module.exports.errorCallback}):module.exports.evented.once(\"pluginAvailable\",e),e},module.exports.createBlobURL=function(e){return window.URL.createObjectURL(new window.Blob([e.data],{type:\"text/javascript\"}))},module.exports.clearRTLTextPlugin=function(){pluginRequested=!1,pluginBlobURL=null},module.exports.setRTLTextPlugin=function(e,l){if(pluginRequested)throw new Error(\"setRTLTextPlugin cannot be called multiple times.\");pluginRequested=!0,module.exports.errorCallback=l,ajax.getArrayBuffer({url:e},function(e,t){e?l(e):t&&(pluginBlobURL=module.exports.createBlobURL(t),module.exports.evented.fire(\"pluginAvailable\",{pluginBlobURL:pluginBlobURL,errorCallback:l}))})},module.exports.applyArabicShaping=null,module.exports.processBidirectionalText=null;\n},{\"../util/ajax\":201,\"../util/evented\":210,\"../util/window\":204}],97:[function(_dereq_,module,exports){\n\"use strict\";var util=_dereq_(\"../util/util\"),sourceTypes={vector:_dereq_(\"../source/vector_tile_source\"),raster:_dereq_(\"../source/raster_tile_source\"),geojson:_dereq_(\"../source/geojson_source\"),video:_dereq_(\"../source/video_source\"),image:_dereq_(\"../source/image_source\"),canvas:_dereq_(\"../source/canvas_source\")};exports.create=function(e,r,o,u){var s=new sourceTypes[r.type](e,r,o,u);if(s.id!==e)throw new Error(\"Expected Source id to be \"+e+\" instead of \"+s.id);return util.bindAll([\"load\",\"abort\",\"unload\",\"serialize\",\"prepare\"],s),s},exports.getType=function(e){return sourceTypes[e]},exports.setType=function(e,r){sourceTypes[e]=r};\n},{\"../source/canvas_source\":87,\"../source/geojson_source\":88,\"../source/image_source\":91,\"../source/raster_tile_source\":95,\"../source/vector_tile_source\":102,\"../source/video_source\":104,\"../util/util\":223}],98:[function(_dereq_,module,exports){\n\"use strict\";function coordinateToTilePoint(e,t,o){var i=o.zoomTo(Math.min(e.z,t));return new Point((i.column-(e.x+e.w*Math.pow(2,e.z)))*EXTENT,(i.row-e.y)*EXTENT)}function compareKeyZoom(e,t){return e%32-t%32}function isRasterType(e){return\"raster\"===e||\"image\"===e||\"video\"===e}var createSource=_dereq_(\"./source\").create,Tile=_dereq_(\"./tile\"),Evented=_dereq_(\"../util/evented\"),TileCoord=_dereq_(\"./tile_coord\"),Cache=_dereq_(\"../util/lru_cache\"),Coordinate=_dereq_(\"../geo/coordinate\"),util=_dereq_(\"../util/util\"),EXTENT=_dereq_(\"../data/extent\"),Point=_dereq_(\"@mapbox/point-geometry\"),SourceCache=function(e){function t(t,o,i){var r=this;e.call(this),this.id=t,this.dispatcher=i,this.on(\"data\",function(e){\"source\"===e.dataType&&\"metadata\"===e.sourceDataType&&(r._sourceLoaded=!0),r._sourceLoaded&&!r._paused&&\"source\"===e.dataType&&\"content\"===e.sourceDataType&&(r.reload(),r.transform&&r.update(r.transform))}),this.on(\"error\",function(){r._sourceErrored=!0}),this._source=createSource(t,o,i,this),this._tiles={},this._cache=new Cache(0,this._unloadTile.bind(this)),this._timers={},this._cacheTimers={},this._maxTileCacheSize=null,this._isIdRenderable=this._isIdRenderable.bind(this)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.onAdd=function(e){this.map=e,this._maxTileCacheSize=e?e._maxTileCacheSize:null,this._source&&this._source.onAdd&&this._source.onAdd(e)},t.prototype.onRemove=function(e){this._source&&this._source.onRemove&&this._source.onRemove(e)},t.prototype.loaded=function(){var e=this;if(this._sourceErrored)return!0;if(!this._sourceLoaded)return!1;for(var t in e._tiles){var o=e._tiles[t];if(\"loaded\"!==o.state&&\"errored\"!==o.state)return!1}return!0},t.prototype.getSource=function(){return this._source},t.prototype.pause=function(){this._paused=!0},t.prototype.resume=function(){if(this._paused){var e=this._shouldReloadOnResume;this._paused=!1,this._shouldReloadOnResume=!1,e&&this.reload(),this.transform&&this.update(this.transform)}},t.prototype._loadTile=function(e,t){return this._source.loadTile(e,t)},t.prototype._unloadTile=function(e){if(this._source.unloadTile)return this._source.unloadTile(e)},t.prototype._abortTile=function(e){if(this._source.abortTile)return this._source.abortTile(e)},t.prototype.serialize=function(){return this._source.serialize()},t.prototype.prepare=function(e){var t=this;this._source.prepare&&this._source.prepare();for(var o in t._tiles)t._tiles[o].upload(e)},t.prototype.getIds=function(){return Object.keys(this._tiles).map(Number).sort(compareKeyZoom)},t.prototype.getRenderableIds=function(){return this.getIds().filter(this._isIdRenderable)},t.prototype._isIdRenderable=function(e){return this._tiles[e].hasData()&&!this._coveredTiles[e]},t.prototype.reload=function(){var e=this;if(this._paused)return void(this._shouldReloadOnResume=!0);this._cache.reset();for(var t in e._tiles)e._reloadTile(t,\"reloading\")},t.prototype._reloadTile=function(e,t){var o=this._tiles[e];o&&(\"loading\"!==o.state&&(o.state=t),this._loadTile(o,this._tileLoaded.bind(this,o,e,t)))},t.prototype._tileLoaded=function(e,t,o,i){if(i)return e.state=\"errored\",void(404!==i.status?this._source.fire(\"error\",{tile:e,error:i}):this.update(this.transform));e.timeAdded=(new Date).getTime(),\"expired\"===o&&(e.refreshedUponExpiration=!0),this._setTileReloadTimer(t,e),this._source.fire(\"data\",{dataType:\"source\",tile:e,coord:e.coord}),this.map&&(this.map.painter.tileExtentVAO.vao=null)},t.prototype.getTile=function(e){return this.getTileByID(e.id)},t.prototype.getTileByID=function(e){return this._tiles[e]},t.prototype.getZoom=function(e){return e.zoom+e.scaleZoom(e.tileSize/this._source.tileSize)},t.prototype._findLoadedChildren=function(e,t,o){var i=this,r=!1;for(var s in i._tiles){var a=i._tiles[s];if(!(o[s]||!a.hasData()||a.coord.z<=e.z||a.coord.z>t)){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);if(!d)break;a=i._tiles[d.id],a&&a.hasData()&&(delete o[s],o[d.id]=!0)}}}return r},t.prototype.findLoadedParent=function(e,t,o){for(var i=this,r=e.z-1;r>=t;r--){var s=e.parent(i._source.maxzoom);if(!s)return;e=s;var a=String(e.id),n=i._tiles[a];if(n&&n.hasData())return o[a]=!0,n;if(i._cache.has(a))return o[a]=!0,i._cache.getWithoutRemoving(a)}},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=Math.floor(5*i),s=\"number\"==typeof this._maxTileCacheSize?Math.min(this._maxTileCacheSize,r):r;this._cache.setMaxSize(s)},t.prototype.update=function(e){var o=this;if(this.transform=e,this._sourceLoaded&&!this._paused){this.updateCacheSize(e),this._coveredTiles={};var i;this.used?this._source.coord?i=e.getVisibleWrappedCoordinates(this._source.coord):(i=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&&(i=i.filter(function(e){return o._source.hasTile(e)}))):i=[];var r=(this._source.roundZoom?Math.round:Math.floor)(this.getZoom(e)),s=Math.max(r-t.maxOverzooming,this._source.minzoom),a=Math.max(r+t.maxUnderzooming,this._source.minzoom),n=this._updateRetainedTiles(i,r),d={};if(isRasterType(this._source.type))for(var h=Object.keys(n),u=0;u<h.length;u++){var c=h[u],l=TileCoord.fromID(+c),_=o._tiles[c];if(_&&(void 0===_.fadeEndTime||_.fadeEndTime>=Date.now())){o._findLoadedChildren(l,a,n)&&(n[c]=!0);var m=o.findLoadedParent(l,s,d);m&&o._addTile(m.coord)}}var p;for(p in d)n[p]||(o._coveredTiles[p]=!0);for(p in d)n[p]=!0;for(var f=util.keysDifference(this._tiles,n),T=0;T<f.length;T++)o._removeTile(f[T])}},t.prototype._updateRetainedTiles=function(e,o){var i,r,s,a,n=this,d={},h={},u=Math.max(o-t.maxOverzooming,this._source.minzoom);for(i=0;i<e.length;i++){r=e[i],s=n._addTile(r);var c=!1;if(s.hasData())d[r.id]=!0;else{c=s.wasRequested(),d[r.id]=!0,a=!0;if(o+1>n._source.maxzoom){var l=r.children(n._source.maxzoom)[0],_=n.getTile(l);_&&_.hasData()?d[l.id]=!0:a=!1}else for(var m=r.children(n._source.maxzoom),p=0;p<m.length;p++){var f=m[p],T=f?n.getTile(f):null;T&&T.hasData()?d[f.id]=!0:a=!1}if(!a)for(var v=o-1;v>=u;--v){var y=r.scaledTo(v,n._source.maxzoom);if(h[y.id])break;if(h[y.id]=!0,s=n.getTile(y),!s&&c&&(s=n._addTile(y)),s&&(d[y.id]=!0,c=s.wasRequested(),s.hasData()))break}}}return d},t.prototype._addTile=function(e){var t=this._tiles[e.id];if(t)return t;(t=this._cache.get(e.id))&&(t.redoPlacement(this._source),this._cacheTimers[e.id]&&(clearTimeout(this._cacheTimers[e.id]),delete this._cacheTimers[e.id],this._setTileReloadTimer(e.id,t)));var o=Boolean(t);if(!o){var i=e.z,r=i>this._source.maxzoom?Math.pow(2,i-this._source.maxzoom):1;t=new Tile(e,this._source.tileSize*r,this._source.maxzoom),this._loadTile(t,this._tileLoaded.bind(this,t,e.id,t.state))}return t?(t.uses++,this._tiles[e.id]=t,o||this._source.fire(\"dataloading\",{tile:t,coord:t.coord,dataType:\"source\"}),t):null},t.prototype._setTileReloadTimer=function(e,t){var o=this,i=t.getExpiryTimeout();i&&(this._timers[e]=setTimeout(function(){o._reloadTile(e,\"expired\"),delete o._timers[e]},i))},t.prototype._setCacheInvalidationTimer=function(e,t){var o=this,i=t.getExpiryTimeout();i&&(this._cacheTimers[e]=setTimeout(function(){o._cache.remove(e),delete o._cacheTimers[e]},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]),delete this._timers[e]),!(t.uses>0)))if(t.stopPlacementThrottler(),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;this._shouldReloadOnResume=!1,this._paused=!1;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,h=0;h<e.length;h++){var u=e[h];r=Math.min(r,u.column),s=Math.min(s,u.row),a=Math.max(a,u.column),n=Math.max(n,u.row)}for(var c=0;c<i.length;c++){var l=t._tiles[i[c]],_=TileCoord.fromID(i[c]),m=[coordinateToTilePoint(_,l.sourceMaxZoom,new Coordinate(r,s,d)),coordinateToTilePoint(_,l.sourceMaxZoom,new Coordinate(a,n,d))];if(m[0].x<EXTENT&&m[0].y<EXTENT&&m[1].x>=0&&m[1].y>=0){for(var p=[],f=0;f<e.length;f++)p.push(coordinateToTilePoint(_,l.sourceMaxZoom,e[f]));o.push({tile:l,coord:_,queryGeometry:[p],scale:Math.pow(2,t.transform.zoom-l.coord.z)})}}return o},t.prototype.redoPlacement=function(){for(var e=this,t=this.getIds(),o=0;o<t.length;o++){e.getTileByID(t[o]).redoPlacement(e._source)}},t.prototype.getVisibleCoordinates=function(){for(var e=this,t=this.getRenderableIds().map(TileCoord.fromID),o=0,i=t;o<i.length;o+=1){var r=i[o];r.posMatrix=e.transform.calculatePosMatrix(r,e._source.maxzoom)}return t},t}(Evented);SourceCache.maxOverzooming=10,SourceCache.maxUnderzooming=3,module.exports=SourceCache;\n},{\"../data/extent\":48,\"../geo/coordinate\":57,\"../util/evented\":210,\"../util/lru_cache\":216,\"../util/util\":223,\"./source\":97,\"./tile\":99,\"./tile_coord\":101,\"@mapbox/point-geometry\":2}],99:[function(_dereq_,module,exports){\n\"use strict\";var util=_dereq_(\"../util/util\"),deserializeBucket=_dereq_(\"../data/bucket\").deserialize,SymbolBucket=_dereq_(\"../data/bucket/symbol_bucket\"),FeatureIndex=_dereq_(\"../data/feature_index\"),vt=_dereq_(\"@mapbox/vector-tile\"),Protobuf=_dereq_(\"pbf\"),GeoJSONFeature=_dereq_(\"../util/vectortile_to_geojson\"),featureFilter=_dereq_(\"../style-spec/feature_filter\"),CollisionTile=_dereq_(\"../symbol/collision_tile\"),CollisionBoxArray=_dereq_(\"../symbol/collision_box\"),Throttler=_dereq_(\"../util/throttler\"),Texture=_dereq_(\"../render/texture\"),CLOCK_SKEW_RETRY_TIMEOUT=3e4,Tile=function(e,t,i){this.coord=e,this.uid=util.uniqueId(),this.uses=0,this.tileSize=t,this.sourceMaxZoom=i,this.buckets={},this.expirationTime=null,this.expiredRequestCount=0,this.state=\"loading\",this.placementThrottler=new Throttler(300,this._immediateRedoPlacement.bind(this))};Tile.prototype.registerFadeDuration=function(e,t){var i=t+this.timeAdded;i<Date.now()||this.fadeEndTime&&i<this.fadeEndTime||(this.fadeEndTime=i,e.set(this.fadeEndTime-Date.now()))},Tile.prototype.wasRequested=function(){return\"errored\"===this.state||\"loaded\"===this.state||\"reloading\"===this.state},Tile.prototype.loadVectorData=function(e,t){this.hasData()&&this.unloadVectorData(),this.state=\"loaded\",e&&(e.rawTileData&&(this.rawTileData=e.rawTileData),this.collisionBoxArray=new CollisionBoxArray(e.collisionBoxArray),this.collisionTile=CollisionTile.deserialize(e.collisionTile,this.collisionBoxArray),this.featureIndex=FeatureIndex.deserialize(e.featureIndex,this.rawTileData,this.collisionTile),this.buckets=deserializeBucket(e.buckets,t.style),e.iconAtlasImage&&(this.iconAtlasImage=e.iconAtlasImage),e.glyphAtlasImage&&(this.glyphAtlasImage=e.glyphAtlasImage))},Tile.prototype.reloadSymbolData=function(e,t){var i=this;if(\"unloaded\"!==this.state){this.collisionTile=CollisionTile.deserialize(e.collisionTile,this.collisionBoxArray),this.featureIndex&&this.featureIndex.setCollisionTile(this.collisionTile);for(var a in i.buckets){var s=i.buckets[a];s instanceof SymbolBucket&&(s.destroy(),delete i.buckets[a])}util.extend(this.buckets,deserializeBucket(e.buckets,t)),e.iconAtlasImage&&(this.iconAtlasImage=e.iconAtlasImage),e.glyphAtlasImage&&(this.glyphAtlasImage=e.glyphAtlasImage)}},Tile.prototype.unloadVectorData=function(){var e=this;for(var t in e.buckets)e.buckets[t].destroy();this.buckets={},this.iconAtlasTexture&&this.iconAtlasTexture.destroy(),this.glyphAtlasTexture&&this.glyphAtlasTexture.destroy(),this.collisionBoxArray=null,this.collisionTile=null,this.featureIndex=null,this.state=\"unloaded\"},Tile.prototype.redoPlacement=function(e){if(\"vector\"===e.type||\"geojson\"===e.type){if(\"loaded\"!==this.state)return void(this.redoWhenDone=!0);if(this.collisionTile){var t=e.map.transform.cameraToTileDistance(this);if(this.angle===e.map.transform.angle&&this.pitch===e.map.transform.pitch&&this.showCollisionBoxes===e.map.showCollisionBoxes){if(this.cameraToTileDistance===t&&this.cameraToCenterDistance===e.map.transform.cameraToCenterDistance)return;if(this.pitch<25)return this.cameraToTileDistance=t,void(this.cameraToCenterDistance=e.map.transform.cameraToCenterDistance)}this.angle=e.map.transform.angle,this.pitch=e.map.transform.pitch,this.cameraToCenterDistance=e.map.transform.cameraToCenterDistance,this.cameraToTileDistance=t,this.showCollisionBoxes=e.map.showCollisionBoxes,this.placementSource=e,this.state=\"reloading\",this.placementThrottler.invoke()}}},Tile.prototype._immediateRedoPlacement=function(){var e=this;this.placementSource.dispatcher.send(\"redoPlacement\",{type:this.placementSource.type,uid:this.uid,source:this.placementSource.id,angle:this.angle,pitch:this.pitch,cameraToCenterDistance:this.cameraToCenterDistance,cameraToTileDistance:this.cameraToTileDistance,showCollisionBoxes:this.showCollisionBoxes},function(t,i){\"reloading\"===e.state&&(e.state=\"loaded\",e.reloadSymbolData(i,e.placementSource.map.style),e.placementSource.fire(\"data\",{tile:e,coord:e.coord,dataType:\"source\"}),e.placementSource.map&&(e.placementSource.map.painter.tileExtentVAO.vao=null),e.redoWhenDone&&(e.state=\"reloading\",e.redoWhenDone=!1,e._immediateRedoPlacement()))},this.workerID)},Tile.prototype.getBucket=function(e){return this.buckets[e.id]},Tile.prototype.upload=function(e){var t=this;for(var i in t.buckets){var a=t.buckets[i];a.uploaded||(a.upload(e),a.uploaded=!0)}this.iconAtlasImage&&(this.iconAtlasTexture=new Texture(e,this.iconAtlasImage,e.RGBA),this.iconAtlasImage=null),this.glyphAtlasImage&&(this.glyphAtlasTexture=new Texture(e,this.glyphAtlasImage,e.ALPHA),this.glyphAtlasImage=null)},Tile.prototype.queryRenderedFeatures=function(e,t,i,a,s){var o=this;if(!this.featureIndex)return{};var r=0;for(var l in e){var n=o.getBucket(e[l]);n&&(r=Math.max(r,e[l].queryRadius(n)))}return this.featureIndex.query({queryGeometry:t,bearing:s,params:a,scale:i,additionalRadius:r,tileSize:this.tileSize},e)},Tile.prototype.querySourceFeatures=function(e,t){var i=this;if(this.rawTileData){this.vtLayers||(this.vtLayers=new vt.VectorTile(new Protobuf(this.rawTileData)).layers);var a=t?t.sourceLayer:\"\",s=this.vtLayers._geojsonTileLayer||this.vtLayers[a];if(s)for(var o=featureFilter(t&&t.filter),r={z:this.coord.z,x:this.coord.x,y:this.coord.y},l=0;l<s.length;l++){var n=s.feature(l);if(o(n)){var h=new GeoJSONFeature(n,i.coord.z,i.coord.x,i.coord.y);h.tile=r,e.push(h)}}}},Tile.prototype.hasData=function(){return\"loaded\"===this.state||\"reloading\"===this.state||\"expired\"===this.state},Tile.prototype.setExpiryData=function(e){var t=this.expirationTime;if(e.cacheControl){var i=util.parseCacheControl(e.cacheControl);i[\"max-age\"]&&(this.expirationTime=Date.now()+1e3*i[\"max-age\"])}else e.expires&&(this.expirationTime=new Date(e.expires).getTime());if(this.expirationTime){var a=Date.now(),s=!1;if(this.expirationTime>a)s=!1;else if(t)if(this.expirationTime<t)s=!0;else{var o=this.expirationTime-t;o?this.expirationTime=a+Math.max(o,CLOCK_SKEW_RETRY_TIMEOUT):s=!0}else s=!0;s?(this.expiredRequestCount++,this.state=\"expired\"):this.expiredRequestCount=0}},Tile.prototype.getExpiryTimeout=function(){if(this.expirationTime)return this.expiredRequestCount?1e3*(1<<Math.min(this.expiredRequestCount-1,31)):Math.min(this.expirationTime-(new Date).getTime(),Math.pow(2,31)-1)},Tile.prototype.stopPlacementThrottler=function(){this.placementThrottler.stop(),\"reloading\"===this.state&&(this.state=\"loaded\")},module.exports=Tile;\n},{\"../data/bucket\":42,\"../data/bucket/symbol_bucket\":47,\"../data/feature_index\":49,\"../render/texture\":83,\"../style-spec/feature_filter\":110,\"../symbol/collision_box\":170,\"../symbol/collision_tile\":172,\"../util/throttler\":221,\"../util/util\":223,\"../util/vectortile_to_geojson\":224,\"@mapbox/vector-tile\":6,\"pbf\":29}],100:[function(_dereq_,module,exports){\n\"use strict\";var LngLatBounds=_dereq_(\"../geo/lng_lat_bounds\"),clamp=_dereq_(\"../util/util\").clamp,TileBounds=function(t,n,o){this.bounds=LngLatBounds.convert(this.validateBounds(t)),this.minzoom=n||0,this.maxzoom=o||24};TileBounds.prototype.validateBounds=function(t){return Array.isArray(t)&&4===t.length?[Math.max(-180,t[0]),Math.max(-90,t[1]),Math.min(180,t[2]),Math.min(90,t[3])]:[-180,-90,180,90]},TileBounds.prototype.contains=function(t,n){var o=n?Math.min(t.z,n):t.z,a={minX:Math.floor(this.lngX(this.bounds.getWest(),o)),minY:Math.floor(this.latY(this.bounds.getNorth(),o)),maxX:Math.ceil(this.lngX(this.bounds.getEast(),o)),maxY:Math.ceil(this.latY(this.bounds.getSouth(),o))};return t.x>=a.minX&&t.x<a.maxX&&t.y>=a.minY&&t.y<a.maxY},TileBounds.prototype.lngX=function(t,n){return(t+180)*(Math.pow(2,n)/360)},TileBounds.prototype.latY=function(t,n){var o=clamp(Math.sin(Math.PI/180*t),-.9999,.9999),a=Math.pow(2,n)/(2*Math.PI);return Math.pow(2,n-1)+.5*Math.log((1+o)/(1-o))*-a},module.exports=TileBounds;\n},{\"../geo/lng_lat_bounds\":59,\"../util/util\":223}],101:[function(_dereq_,module,exports){\n\"use strict\";function edge(t,i){if(t.row>i.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 h=Math.max(o,Math.floor(i.y0)),n=Math.min(r,Math.ceil(i.y1));if(t.x0===i.x0&&t.y0===i.y0?t.x0+i.dy/t.dy*t.dx<i.x1:t.x1-i.dy/t.dy*t.dx<i.x0){var s=t;t=i,i=s}for(var a=t.dx/t.dy,d=i.dx/i.dy,l=t.dx>0,y=i.dx<0,x=h;x<n;x++){var u=a*Math.max(0,Math.min(t.dy,x+l-t.y0))+t.x0,c=d*Math.max(0,Math.min(i.dy,x+y-i.y0))+i.x0;e(Math.floor(c),Math.ceil(u),x)}}function scanTriangle(t,i,o,r,e,h){var n,s=edge(t,i),a=edge(i,o),d=edge(o,t);s.dy>a.dy&&(n=s,s=a,a=n),s.dy>d.dy&&(n=s,s=d,d=n),a.dy>d.dy&&(n=a,a=d,d=n),s.dy&&scanSpans(d,s,r,e,h),a.dy&&scanSpans(d,a,r,e,h)}function getQuadkey(t,i,o){for(var r,e=\"\",h=t;h>0;h--)r=1<<h-1,e+=(i&r?1:0)+(o&r?2:0);return e}var WhooTS=_dereq_(\"@mapbox/whoots-js\"),Coordinate=_dereq_(\"../geo/coordinate\"),TileCoord=function(t,i,o,r){(void 0===r||isNaN(r))&&(r=0),this.z=+t,this.x=+i,this.y=+o,this.w=+r,(r*=2)<0&&(r=-1*r-1);var e=1<<this.z;this.id=32*(e*e*r+e*this.y+this.x)+this.z,this.posMatrix=null};TileCoord.prototype.toString=function(){return this.z+\"/\"+this.x+\"/\"+this.y},TileCoord.prototype.toCoordinate=function(t){var i=Math.min(this.z,void 0===t?this.z:t),o=Math.pow(2,i),r=this.y,e=this.x+o*this.w;return new Coordinate(e,r,i)},TileCoord.prototype.url=function(t,i,o){var r=WhooTS.getTileBBox(this.x,this.y,this.z),e=getQuadkey(this.z,this.x,this.y);return t[(this.x+this.y)%t.length].replace(\"{prefix}\",(this.x%16).toString(16)+(this.y%16).toString(16)).replace(\"{z}\",String(Math.min(this.z,i||this.z))).replace(\"{x}\",String(this.x)).replace(\"{y}\",String(\"tms\"===o?Math.pow(2,this.z)-this.y-1:this.y)).replace(\"{quadkey}\",e).replace(\"{bbox-epsg-3857}\",r)},TileCoord.prototype.parent=function(t){return 0===this.z?null:this.z>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.prototype.scaledTo=function(t,i){return this.z>i?new TileCoord(t,this.x,this.y,this.w):t<=this.z?new TileCoord(t,this.x>>this.z-t,this.y>>this.z-t,this.w):new TileCoord(t,this.x<<t-this.z,this.y<<t-this.z,this.w)},TileCoord.cover=function(t,i,o,r){function e(t,i,e){var s,a,d,l;if(e>=0&&e<=h)for(s=t;s<i;s++)a=Math.floor(s/h),d=(s%h+h)%h,0!==a&&!0!==r||(l=new TileCoord(o,d,e,a),n[l.id]=l)}void 0===r&&(r=!0);var h=1<<t,n={};return scanTriangle(i[0],i[1],i[2],0,h,e),scanTriangle(i[2],i[3],i[0],0,h,e),Object.keys(n).map(function(t){return n[t]})},TileCoord.fromID=function(t){var i=t%32,o=1<<i,r=(t-i)/32,e=r%o,h=(r-e)/o%o,n=Math.floor(r/(o*o));return n%2!=0&&(n=-1*n-1),n/=2,new TileCoord(i,e,h,n)},module.exports=TileCoord;\n},{\"../geo/coordinate\":57,\"@mapbox/whoots-js\":10}],102:[function(_dereq_,module,exports){\n\"use strict\";var Evented=_dereq_(\"../util/evented\"),util=_dereq_(\"../util/util\"),loadTileJSON=_dereq_(\"./load_tilejson\"),normalizeURL=_dereq_(\"../util/mapbox\").normalizeTileURL,TileBounds=_dereq_(\"./tile_bounds\"),ResourceType=_dereq_(\"../util/ajax\").ResourceType,browser=_dereq_(\"../util/browser\"),VectorTileSource=function(e){function t(t,i,o,r){if(e.call(this),this.id=t,this.dispatcher=o,this.type=\"vector\",this.minzoom=0,this.maxzoom=22,this.scheme=\"xyz\",this.tileSize=512,this.reparseOverscaled=!0,this.isTileClipped=!0,util.extend(this,util.pick(i,[\"url\",\"scheme\",\"tileSize\"])),this._options=util.extend({type:\"vector\"},i),512!==this.tileSize)throw new Error(\"vector tile sources must have a tileSize of 512\");this.setEventedParent(r)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.load=function(){var e=this;this.fire(\"dataloading\",{dataType:\"source\"}),loadTileJSON(this._options,this.map._transformRequest,function(t,i){t?e.fire(\"error\",t):i&&(util.extend(e,i),i.bounds&&(e.tileBounds=new TileBounds(i.bounds,e.minzoom,e.maxzoom)),e.fire(\"data\",{dataType:\"source\",sourceDataType:\"metadata\"}),e.fire(\"data\",{dataType:\"source\",sourceDataType:\"content\"}))})},t.prototype.hasTile=function(e){return!this.tileBounds||this.tileBounds.contains(e,this.maxzoom)},t.prototype.onAdd=function(e){this.map=e,this.load()},t.prototype.serialize=function(){return util.extend({},this._options)},t.prototype.loadTile=function(e,t){function i(i,o){if(!e.aborted){if(i)return t(i);this.map._refreshExpiredTiles&&e.setExpiryData(o),e.loadVectorData(o,this.map.painter),e.redoWhenDone&&(e.redoWhenDone=!1,e.redoPlacement(this)),t(null),e.reloadCallback&&(this.loadTile(e,e.reloadCallback),e.reloadCallback=null)}}var o=e.coord.z>this.maxzoom?Math.pow(2,e.coord.z-this.maxzoom):1,r=normalizeURL(e.coord.url(this.tiles,this.maxzoom,this.scheme),this.url),s={request:this.map._transformRequest(r,ResourceType.Tile),uid:e.uid,coord:e.coord,zoom:e.coord.z,tileSize:this.tileSize*o,type:this.type,source:this.id,pixelRatio:browser.devicePixelRatio,overscaling:o,angle:this.map.transform.angle,pitch:this.map.transform.pitch,cameraToCenterDistance:this.map.transform.cameraToCenterDistance,cameraToTileDistance:this.map.transform.cameraToTileDistance(e),showCollisionBoxes:this.map.showCollisionBoxes};e.workerID&&\"expired\"!==e.state?\"loading\"===e.state?e.reloadCallback=t:this.dispatcher.send(\"reloadTile\",s,i.bind(this),e.workerID):e.workerID=this.dispatcher.send(\"loadTile\",s,i.bind(this))},t.prototype.abortTile=function(e){this.dispatcher.send(\"abortTile\",{uid:e.uid,type:this.type,source:this.id},void 0,e.workerID)},t.prototype.unloadTile=function(e){e.unloadVectorData(),this.dispatcher.send(\"removeTile\",{uid:e.uid,type:this.type,source:this.id},void 0,e.workerID)},t}(Evented);module.exports=VectorTileSource;\n},{\"../util/ajax\":201,\"../util/browser\":202,\"../util/evented\":210,\"../util/mapbox\":217,\"../util/util\":223,\"./load_tilejson\":92,\"./tile_bounds\":100}],103:[function(_dereq_,module,exports){\n\"use strict\";function loadVectorTile(e,r){var o=ajax.getArrayBuffer(e.request,function(e,o){e?r(e):o&&r(null,{vectorTile:new vt.VectorTile(new Protobuf(o.data)),rawData:o.data,cacheControl:o.cacheControl,expires:o.expires})});return function(){o.abort()}}var ajax=_dereq_(\"../util/ajax\"),vt=_dereq_(\"@mapbox/vector-tile\"),Protobuf=_dereq_(\"pbf\"),WorkerTile=_dereq_(\"./worker_tile\"),util=_dereq_(\"../util/util\"),VectorTileWorkerSource=function(e,r,o){this.actor=e,this.layerIndex=r,this.loadVectorData=o||loadVectorTile,this.loading={},this.loaded={}};VectorTileWorkerSource.prototype.loadTile=function(e,r){var o=this,t=e.source,a=e.uid;this.loading[t]||(this.loading[t]={});var i=this.loading[t][a]=new WorkerTile(e);i.abort=this.loadVectorData(e,function(e,l){if(delete o.loading[t][a],e||!l)return r(e);var c=l.rawData,n={};l.expires&&(n.expires=l.expires),l.cacheControl&&(n.cacheControl=l.cacheControl),i.vectorTile=l.vectorTile,i.parse(l.vectorTile,o.layerIndex,o.actor,function(e,o,t){if(e||!o)return r(e);r(null,util.extend({rawTileData:c},o,n),t)}),o.loaded[t]=o.loaded[t]||{},o.loaded[t][a]=i})},VectorTileWorkerSource.prototype.reloadTile=function(e,r){function o(e,o){if(this.reloadCallback){var t=this.reloadCallback;delete this.reloadCallback,this.parse(this.vectorTile,i.layerIndex,i.actor,t)}r(e,o)}var t=this.loaded[e.source],a=e.uid,i=this;if(t&&t[a]){var l=t[a];\"parsing\"===l.status?l.reloadCallback=r:\"done\"===l.status&&l.parse(l.vectorTile,this.layerIndex,this.actor,o.bind(l))}},VectorTileWorkerSource.prototype.abortTile=function(e){var r=this.loading[e.source],o=e.uid;r&&r[o]&&r[o].abort&&(r[o].abort(),delete r[o])},VectorTileWorkerSource.prototype.removeTile=function(e){var r=this.loaded[e.source],o=e.uid;r&&r[o]&&delete r[o]},VectorTileWorkerSource.prototype.redoPlacement=function(e,r){var o=this.loaded[e.source],t=this.loading[e.source],a=e.uid;if(o&&o[a]){var i=o[a],l=i.redoPlacement(e.angle,e.pitch,e.cameraToCenterDistance,e.cameraToTileDistance,e.showCollisionBoxes);l.result&&r(null,l.result,l.transferables)}else t&&t[a]&&(t[a].angle=e.angle)},module.exports=VectorTileWorkerSource;\n},{\"../util/ajax\":201,\"../util/util\":223,\"./worker_tile\":106,\"@mapbox/vector-tile\":6,\"pbf\":29}],104:[function(_dereq_,module,exports){\n\"use strict\";var ajax=_dereq_(\"../util/ajax\"),ImageSource=_dereq_(\"./image_source\"),VideoSource=function(e){function t(t,o,i,r){e.call(this,t,o,i,r),this.roundZoom=!0,this.type=\"video\",this.options=o}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.load=function(){var e=this,t=this.options;this.urls=t.urls,ajax.getVideo(t.urls,function(t,o){if(t)e.fire(\"error\",{error:t});else if(o){e.video=o,e.video.loop=!0;var i;e.video.addEventListener(\"playing\",function(){i=e.map.style.animationLoop.set(1/0),e.map._rerender()}),e.video.addEventListener(\"pause\",function(){e.map.style.animationLoop.cancel(i)}),e.map&&e.video.play(),e._finishLoading()}})},t.prototype.getVideo=function(){return this.video},t.prototype.onAdd=function(e){this.map||(this.map=e,this.load(),this.video&&(this.video.play(),this.setCoordinates(this.coordinates)))},t.prototype.prepare=function(){0===Object.keys(this.tiles).length||this.video.readyState<2||this._prepareImage(this.map.painter.gl,this.video)},t.prototype.serialize=function(){return{type:\"video\",urls:this.urls,coordinates:this.coordinates}},t}(ImageSource);module.exports=VideoSource;\n},{\"../util/ajax\":201,\"./image_source\":91}],105:[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),globalRTLTextPlugin.applyArabicShaping&&globalRTLTextPlugin.processBidirectionalText||o(new Error(\"RTL Text Plugin failed to import scripts from \"+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\":164,\"../util/actor\":200,\"./geojson_worker_source\":89,\"./rtl_text_plugin\":96,\"./vector_tile_worker_source\":103}],106:[function(_dereq_,module,exports){\n\"use strict\";function recalculateLayers(e,i){for(var r=0,t=e.layers;r<t.length;r+=1){t[r].recalculate(i)}}function serializeBuckets(e,i){return e.filter(function(e){return!e.isEmpty()}).map(function(e){return e.serialize(i)})}var FeatureIndex=_dereq_(\"../data/feature_index\"),CollisionTile=_dereq_(\"../symbol/collision_tile\"),CollisionBoxArray=_dereq_(\"../symbol/collision_box\"),DictionaryCoder=_dereq_(\"../util/dictionary_coder\"),SymbolBucket=_dereq_(\"../data/bucket/symbol_bucket\"),util=_dereq_(\"../util/util\"),ref=_dereq_(\"../render/image_atlas\"),makeImageAtlas=ref.makeImageAtlas,ref$1=_dereq_(\"../render/glyph_atlas\"),makeGlyphAtlas=ref$1.makeGlyphAtlas,WorkerTile=function(e){this.coord=e.coord,this.uid=e.uid,this.zoom=e.zoom,this.pixelRatio=e.pixelRatio,this.tileSize=e.tileSize,this.source=e.source,this.overscaling=e.overscaling,this.angle=e.angle,this.pitch=e.pitch,this.cameraToCenterDistance=e.cameraToCenterDistance,this.cameraToTileDistance=e.cameraToTileDistance,this.showCollisionBoxes=e.showCollisionBoxes};WorkerTile.prototype.parse=function(e,i,r,t){function a(){var e=this;if(D)return t(D);if(A&&C){for(var i=new CollisionTile(this.angle,this.pitch,this.cameraToCenterDistance,this.cameraToTileDistance,this.collisionBoxArray),r=makeGlyphAtlas(A),a=makeImageAtlas(C),o=0,s=e.symbolBuckets;o<s.length;o+=1){var c=s[o];recalculateLayers(c,e.zoom),c.prepare(A,r.positions,C,a.positions),c.place(i,e.showCollisionBoxes)}this.status=\"done\";var u=[r.image.data.buffer,a.image.data.buffer];t(null,{buckets:serializeBuckets(util.values(n),u),featureIndex:l.serialize(u),collisionTile:i.serialize(u),collisionBoxArray:this.collisionBoxArray.serialize(),glyphAtlasImage:r.image,iconAtlasImage:a.image},u)}}var o=this;this.status=\"parsing\",this.data=e,this.collisionBoxArray=new CollisionBoxArray;var s=new DictionaryCoder(Object.keys(e.layers).sort()),l=new FeatureIndex(this.coord,this.overscaling);l.bucketLayerIDs=[];var n={},c={featureIndex:l,iconDependencies:{},glyphDependencies:{}},u=i.familiesBySource[this.source];for(var h in u){var m=e.layers[h];if(m){1===m.version&&util.warnOnce('Vector tile source \"'+o.source+'\" layer \"'+h+'\" does not use vector tile spec v2 and therefore may have some rendering errors.');for(var y=s.encode(h),p=[],d=0;d<m.length;d++){var f=m.feature(d);p.push({feature:f,index:d,sourceLayerIndex:y})}for(var g=0,v=u[h];g<v.length;g+=1){var k=v[g],b=k[0];if(!(b.minzoom&&o.zoom<Math.floor(b.minzoom))&&!(b.maxzoom&&o.zoom>=b.maxzoom||b.layout&&\"none\"===b.layout.visibility)){for(var x=0,T=k;x<T.length;x+=1){T[x].recalculate(o.zoom)}(n[b.id]=b.createBucket({index:l.bucketLayerIDs.length,layers:k,zoom:o.zoom,pixelRatio:o.pixelRatio,overscaling:o.overscaling,collisionBoxArray:o.collisionBoxArray})).populate(p,c),l.bucketLayerIDs.push(k.map(function(e){return e.id}))}}}}this.symbolBuckets=[];for(var z=i.symbolOrder.length-1;z>=0;z--){var B=n[i.symbolOrder[z]];B&&o.symbolBuckets.push(B)}var D,A,C,I=util.mapObject(c.glyphDependencies,function(e){return Object.keys(e).map(Number)});Object.keys(I).length?r.send(\"getGlyphs\",{uid:this.uid,stacks:I},function(e,i){D||(D=e,A=i,a.call(o))}):A={};var w=Object.keys(c.iconDependencies);w.length?r.send(\"getImages\",{icons:w},function(e,i){D||(D=e,C=i,a.call(o))}):C={},a.call(this)},WorkerTile.prototype.redoPlacement=function(e,i,r,t,a){var o=this;if(this.angle=e,this.pitch=i,this.cameraToCenterDistance=r,this.cameraToTileDistance=t,\"done\"!==this.status)return{};for(var s=new CollisionTile(this.angle,this.pitch,this.cameraToCenterDistance,this.cameraToTileDistance,this.collisionBoxArray),l=0,n=o.symbolBuckets;l<n.length;l+=1){var c=n[l];recalculateLayers(c,o.zoom),c.place(s,a)}var u=[];return{result:{buckets:serializeBuckets(this.symbolBuckets,u),collisionTile:s.serialize(u)},transferables:u}},module.exports=WorkerTile;\n},{\"../data/bucket/symbol_bucket\":47,\"../data/feature_index\":49,\"../render/glyph_atlas\":74,\"../render/image_atlas\":76,\"../symbol/collision_box\":170,\"../symbol/collision_tile\":172,\"../util/dictionary_coder\":207,\"../util/util\":223}],107:[function(_dereq_,module,exports){\n\"use strict\";function deref(r,e){var f={};for(var t in r)\"ref\"!==t&&(f[t]=r[t]);return refProperties.forEach(function(r){r in e&&(f[r]=e[r])}),f}function derefLayers(r){r=r.slice();for(var e=Object.create(null),f=0;f<r.length;f++)e[r[f].id]=r[f];for(var t=0;t<r.length;t++)\"ref\"in r[t]&&(r[t]=deref(r[t],e[r[t].ref]));return r}var refProperties=_dereq_(\"./util/ref_properties\");module.exports=derefLayers;\n},{\"./util/ref_properties\":129}],108:[function(_dereq_,module,exports){\n\"use strict\";function diffSources(e,r,o,a){e=e||{},r=r||{};var s;for(s in e)e.hasOwnProperty(s)&&(r.hasOwnProperty(s)||(o.push({command:operations.removeSource,args:[s]}),a[s]=!0));for(s in r)r.hasOwnProperty(s)&&(e.hasOwnProperty(s)?isEqual(e[s],r[s])||(o.push({command:operations.removeSource,args:[s]}),o.push({command:operations.addSource,args:[s,r[s]]}),a[s]=!0):o.push({command:operations.addSource,args:[s,r[s]]}))}function diffLayerPropertyChanges(e,r,o,a,s,t){e=e||{},r=r||{};var n;for(n in e)e.hasOwnProperty(n)&&(isEqual(e[n],r[n])||o.push({command:t,args:[a,n,r[n],s]}));for(n in r)r.hasOwnProperty(n)&&!e.hasOwnProperty(n)&&(isEqual(e[n],r[n])||o.push({command:t,args:[a,n,r[n],s]}))}function pluckId(e){return e.id}function indexById(e,r){return e[r.id]=r,e}function diffLayers(e,r,o){e=e||[],r=r||[];var a,s,t,n,i,p,m,u=e.map(pluckId),l=r.map(pluckId),y=e.reduce(indexById,{}),c=r.reduce(indexById,{}),d=u.slice(),h=Object.create(null);for(a=0,s=0;a<u.length;a++)t=u[a],c.hasOwnProperty(t)?s++:(o.push({command:operations.removeLayer,args:[t]}),d.splice(d.indexOf(t,s),1));for(a=0,s=0;a<l.length;a++)t=l[l.length-1-a],d[d.length-1-a]!==t&&(y.hasOwnProperty(t)?(o.push({command:operations.removeLayer,args:[t]}),d.splice(d.lastIndexOf(t,d.length-s),1)):s++,p=d[d.length-a],o.push({command:operations.addLayer,args:[c[t],p]}),d.splice(d.length-a,0,t),h[t]=!0);for(a=0;a<l.length;a++)if(t=l[a],n=y[t],i=c[t],!h[t]&&!isEqual(n,i))if(isEqual(n.source,i.source)&&isEqual(n[\"source-layer\"],i[\"source-layer\"])&&isEqual(n.type,i.type)){diffLayerPropertyChanges(n.layout,i.layout,o,t,null,operations.setLayoutProperty),diffLayerPropertyChanges(n.paint,i.paint,o,t,null,operations.setPaintProperty),isEqual(n.filter,i.filter)||o.push({command:operations.setFilter,args:[t,i.filter]}),isEqual(n.minzoom,i.minzoom)&&isEqual(n.maxzoom,i.maxzoom)||o.push({command:operations.setLayerZoomRange,args:[t,i.minzoom,i.maxzoom]});for(m in n)n.hasOwnProperty(m)&&\"layout\"!==m&&\"paint\"!==m&&\"filter\"!==m&&\"metadata\"!==m&&\"minzoom\"!==m&&\"maxzoom\"!==m&&(0===m.indexOf(\"paint.\")?diffLayerPropertyChanges(n[m],i[m],o,t,m.slice(6),operations.setPaintProperty):isEqual(n[m],i[m])||o.push({command:operations.setLayerProperty,args:[t,m,i[m]]}));for(m in i)i.hasOwnProperty(m)&&!n.hasOwnProperty(m)&&\"layout\"!==m&&\"paint\"!==m&&\"filter\"!==m&&\"metadata\"!==m&&\"minzoom\"!==m&&\"maxzoom\"!==m&&(0===m.indexOf(\"paint.\")?diffLayerPropertyChanges(n[m],i[m],o,t,m.slice(6),operations.setPaintProperty):isEqual(n[m],i[m])||o.push({command:operations.setLayerProperty,args:[t,m,i[m]]}))}else o.push({command:operations.removeLayer,args:[t]}),p=d[d.lastIndexOf(t)+1],o.push({command:operations.addLayer,args:[i,p]})}function diffStyles(e,r){if(!e)return[{command:operations.setStyle,args:[r]}];var o=[];try{if(!isEqual(e.version,r.version))return[{command:operations.setStyle,args:[r]}];isEqual(e.center,r.center)||o.push({command:operations.setCenter,args:[r.center]}),isEqual(e.zoom,r.zoom)||o.push({command:operations.setZoom,args:[r.zoom]}),isEqual(e.bearing,r.bearing)||o.push({command:operations.setBearing,args:[r.bearing]}),isEqual(e.pitch,r.pitch)||o.push({command:operations.setPitch,args:[r.pitch]}),isEqual(e.sprite,r.sprite)||o.push({command:operations.setSprite,args:[r.sprite]}),isEqual(e.glyphs,r.glyphs)||o.push({command:operations.setGlyphs,args:[r.glyphs]}),isEqual(e.transition,r.transition)||o.push({command:operations.setTransition,args:[r.transition]}),isEqual(e.light,r.light)||o.push({command:operations.setLight,args:[r.light]});var a={},s=[];diffSources(e.sources,r.sources,s,a);var t=[];e.layers&&e.layers.forEach(function(e){a[e.source]?o.push({command:operations.removeLayer,args:[e.id]}):t.push(e)}),o=o.concat(s),diffLayers(t,r.layers,o)}catch(e){console.warn(\"Unable to compute style diff:\",e),o=[{command:operations.setStyle,args:[r]}]}return o}var isEqual=_dereq_(\"lodash.isequal\"),operations={setStyle:\"setStyle\",addLayer:\"addLayer\",removeLayer:\"removeLayer\",setPaintProperty:\"setPaintProperty\",setLayoutProperty:\"setLayoutProperty\",setFilter:\"setFilter\",addSource:\"addSource\",removeSource:\"removeSource\",setLayerZoomRange:\"setLayerZoomRange\",setLayerProperty:\"setLayerProperty\",setCenter:\"setCenter\",setZoom:\"setZoom\",setBearing:\"setBearing\",setPitch:\"setPitch\",setSprite:\"setSprite\",setGlyphs:\"setGlyphs\",setTransition:\"setTransition\",setLight:\"setLight\"};module.exports=diffStyles,module.exports.operations=operations;\n},{\"lodash.isequal\":120}],109:[function(_dereq_,module,exports){\n\"use strict\";function ValidationError(r,i){for(var t=[],o=arguments.length-2;o-- >0;)t[o]=arguments[o+2];this.message=(r?r+\": \":\"\")+format.apply(format,t),null!==i&&void 0!==i&&i.__line__&&(this.line=i.__line__)}var format=_dereq_(\"util\").format;module.exports=ValidationError;\n},{\"util\":36}],110:[function(_dereq_,module,exports){\n\"use strict\";function createFilter(e){return new Function(\"f\",\"var p = (f && f.properties || {}); return \"+compile(e))}function compile(e){if(!e)return\"true\";var i=e[0];return e.length<=1?\"any\"===i?\"false\":\"true\":\"(\"+(\"==\"===i?compileComparisonOp(e[1],e[2],\"===\",!1):\"!=\"===i?compileComparisonOp(e[1],e[2],\"!==\",!1):\"<\"===i||\">\"===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,o){var r=compilePropertyReference(e),p=\"$type\"===e?types.indexOf(i):JSON.stringify(i);return(o?\"typeof \"+r+\"=== typeof \"+p+\"&&\":\"\")+r+n+p}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)),o=compilePropertyReference(e);return i.length<=200?n+\".indexOf(\"+o+\") !== -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; }(\"+o+\", \"+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 e<i?-1:e>i?1:0}module.exports=createFilter;var types=[\"Unknown\",\"Point\",\"LineString\",\"Polygon\"];\n},{}],111:[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);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}};\n},{}],112:[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<f.length;c+=1){var v=f[c];p[v[0]]=v[1]}l=typeof t.stops[0][0]}else{if(\"identity\"!==s)throw new Error('Unknown function type \"'+s+'\"');u=evaluateIdentityFunction}var d;if(t.colorSpace&&\"rgb\"!==t.colorSpace){if(!colorSpaces[t.colorSpace])throw new Error(\"Unknown color space: \"+t.colorSpace);var y=colorSpaces[t.colorSpace];t=JSON.parse(JSON.stringify(t));for(var F=0;F<t.stops.length;F++)t.stops[F]=[t.stops[F][0],y.forward(t.stops[F][1])];d=y.reverse}else d=identityFunction;if(r){for(var h={},g=[],m=0;m<t.stops.length;m++){var C=t.stops[m],S=C[0].zoom;void 0===h[S]&&(h[S]={zoom:S,type:t.type,property:t.property,default:t.default,stops:[]},g.push(S)),h[S].stops.push([C[0].value,C[1]])}for(var T=[],x=0,b=g;x<b.length;x+=1){var q=b[x];T.push([h[q].zoom,createFunction(h[q],e)])}o=function(o,n){return d(evaluateExponentialFunction({stops:T,base:t.base},e,o)(o,n))},o.isFeatureConstant=!1,o.isZoomConstant=!1}else i?(o=function(o){return d(u(t,e,o,p,l))},o.isFeatureConstant=!0,o.isZoomConstant=!1):(o=function(o,n){var r=n[t.property];return void 0===r?coalesce(t.default,e.default):d(u(t,e,r,p,l))},o.isFeatureConstant=!1,o.isZoomConstant=!0)}else n&&t&&(t=parseColor(t)),o=function(){return t},o.isFeatureConstant=!0,o.isZoomConstant=!0;return o}function coalesce(t,e,o){return void 0!==t?t:void 0!==e?e:void 0!==o?o:void 0}function evaluateCategoricalFunction(t,e,o,n,r){return coalesce(typeof o===r?n[o]:void 0,t.default,e.default)}function evaluateIntervalFunction(t,e,o){if(\"number\"!==getType(o))return coalesce(t.default,e.default);var n=t.stops.length;if(1===n)return t.stops[0][1];if(o<=t.stops[0][0])return t.stops[0][1];if(o>=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(){for(var t=[],e=arguments.length;e--;)t[e]=arguments[e];var o=s.apply(void 0,t),n=u.apply(void 0,t);if(void 0!==o&&void 0!==n)return p(o,n,i)}:p(s,u,i)}function evaluateIdentityFunction(t,e,o){return\"color\"===e.type?o=parseColor(o):getType(o)===e.type||\"enum\"===e.type&&e.values[o]||(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&&e<n)return s;o<e?a=s+1:o>e&&(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 0===r?0: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\":125,\"../util/get_type\":126,\"../util/interpolate\":127,\"../util/parse_color\":128,\"./color_spaces\":111}],113:[function(_dereq_,module,exports){\n\"use strict\";function stringify(r){var t=typeof r;if(\"number\"===t||\"boolean\"===t||\"string\"===t||void 0===r||null===r)return JSON.stringify(r);if(Array.isArray(r)){for(var e=\"[\",i=0,n=r;i<n.length;i+=1){e+=stringify(n[i])+\",\"}return e+\"]\"}for(var o=Object.keys(r).sort(),f=\"{\",u=0;u<o.length;u++)f+=JSON.stringify(o[u])+\":\"+stringify(r[o[u]])+\",\";return f+\"}\"}function getKey(r){for(var t=\"\",e=0,i=refProperties;e<i.length;e+=1){t+=\"/\"+stringify(r[i[e]])}return t}function groupByLayout(r){for(var t={},e=0;e<r.length;e++){var i=getKey(r[e]),n=t[i];n||(n=t[i]=[]),n.push(r[e])}var o=[];for(var f in t)o.push(t[f]);return o}var refProperties=_dereq_(\"./util/ref_properties\");module.exports=groupByLayout;\n},{\"./util/ref_properties\":129}],114:[function(_dereq_,module,exports){\nfunction clamp_css_byte(e){return e=Math.round(e),e<0?0:e>255?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(-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){}\n},{}],115:[function(_dereq_,module,exports){\nfunction isObjectLike(r){return!!r&&\"object\"==typeof r}function arraySome(r,e){for(var a=-1,t=r.length;++a<t;)if(e(r[a],a,r))return!0;return!1}function baseIsEqual(r,e,a,t,o,n){return r===e||(null==r||null==e||!isObject(r)&&!isObjectLike(e)?r!==r&&e!==e:baseIsEqualDeep(r,e,baseIsEqual,a,t,o,n))}function baseIsEqualDeep(r,e,a,t,o,n,u){var c=isArray(r),s=isArray(e),i=arrayTag,g=arrayTag;c||(i=objToString.call(r),i==argsTag?i=objectTag:i!=objectTag&&(c=isTypedArray(r))),s||(g=objToString.call(e),g==argsTag?g=objectTag:g!=objectTag&&(s=isTypedArray(e)));var b=i==objectTag,l=g==objectTag,f=i==g;if(f&&!c&&!b)return equalByTag(r,e,i);if(!o){var y=b&&hasOwnProperty.call(r,\"__wrapped__\"),T=l&&hasOwnProperty.call(e,\"__wrapped__\");if(y||T)return a(y?r.value():r,T?e.value():e,t,o,n,u)}if(!f)return!1;n||(n=[]),u||(u=[]);for(var j=n.length;j--;)if(n[j]==r)return u[j]==e;n.push(r),u.push(e);var p=(c?equalArrays:equalObjects)(r,e,a,t,o,n,u);return n.pop(),u.pop(),p}function equalArrays(r,e,a,t,o,n,u){var c=-1,s=r.length,i=e.length;if(s!=i&&!(o&&i>s))return!1;for(;++c<s;){var g=r[c],b=e[c],l=t?t(o?b:g,o?g:b,c):void 0;if(void 0!==l){if(l)continue;return!1}if(o){if(!arraySome(e,function(r){return g===r||a(g,r,t,o,n,u)}))return!1}else if(g!==b&&!a(g,b,t,o,n,u))return!1}return!0}function equalByTag(r,e,a){switch(a){case boolTag:case dateTag:return+r==+e;case errorTag:return r.name==e.name&&r.message==e.message;case numberTag:return r!=+r?e!=+e:r==+e;case regexpTag:case stringTag:return r==e+\"\"}return!1}function equalObjects(r,e,a,t,o,n,u){var c=keys(r),s=c.length;if(s!=keys(e).length&&!o)return!1;for(var i=s;i--;){var g=c[i];if(!(o?g in e:hasOwnProperty.call(e,g)))return!1}for(var b=o;++i<s;){g=c[i];var l=r[g],f=e[g],y=t?t(o?f:l,o?l:f,g):void 0;if(!(void 0===y?a(l,f,t,o,n,u):y))return!1;b||(b=\"constructor\"==g)}if(!b){var T=r.constructor,j=e.constructor;if(T!=j&&\"constructor\"in r&&\"constructor\"in e&&!(\"function\"==typeof T&&T instanceof T&&\"function\"==typeof j&&j instanceof j))return!1}return!0}function isObject(r){var e=typeof r;return!!r&&(\"object\"==e||\"function\"==e)}var isArray=_dereq_(\"lodash.isarray\"),isTypedArray=_dereq_(\"lodash.istypedarray\"),keys=_dereq_(\"lodash.keys\"),argsTag=\"[object Arguments]\",arrayTag=\"[object Array]\",boolTag=\"[object Boolean]\",dateTag=\"[object Date]\",errorTag=\"[object Error]\",numberTag=\"[object Number]\",objectTag=\"[object Object]\",regexpTag=\"[object RegExp]\",stringTag=\"[object String]\",objectProto=Object.prototype,hasOwnProperty=objectProto.hasOwnProperty,objToString=objectProto.toString;module.exports=baseIsEqual;\n},{\"lodash.isarray\":119,\"lodash.istypedarray\":121,\"lodash.keys\":122}],116:[function(_dereq_,module,exports){\nfunction bindCallback(n,t,r){if(\"function\"!=typeof n)return identity;if(void 0===t)return n;switch(r){case 1:return function(r){return n.call(t,r)};case 3:return function(r,e,u){return n.call(t,r,e,u)};case 4:return function(r,e,u,c){return n.call(t,r,e,u,c)};case 5:return function(r,e,u,c,i){return n.call(t,r,e,u,c,i)}}return function(){return n.apply(t,arguments)}}function identity(n){return n}module.exports=bindCallback;\n},{}],117:[function(_dereq_,module,exports){\nfunction isObjectLike(t){return!!t&&\"object\"==typeof t}function getNative(t,o){var e=null==t?void 0:t[o];return isNative(e)?e:void 0}function isFunction(t){return isObject(t)&&objToString.call(t)==funcTag}function isObject(t){var o=typeof t;return!!t&&(\"object\"==o||\"function\"==o)}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.*?\")+\"$\");module.exports=getNative;\n},{}],118:[function(_dereq_,module,exports){\nfunction isArguments(t){return isArrayLikeObject(t)&&hasOwnProperty.call(t,\"callee\")&&(!propertyIsEnumerable.call(t,\"callee\")||objectToString.call(t)==argsTag)}function isArrayLike(t){return null!=t&&isLength(t.length)&&!isFunction(t)}function isArrayLikeObject(t){return isObjectLike(t)&&isArrayLike(t)}function isFunction(t){var e=isObject(t)?objectToString.call(t):\"\";return e==funcTag||e==genTag}function isLength(t){return\"number\"==typeof t&&t>-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},{}],119:[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},{}],120:[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\":115,\"lodash._bindcallback\":116}],121:[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},{}],122:[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<t}function isLength(e){return\"number\"==typeof e&&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=[];++o<r;){var u=t[o];(s&&isIndex(u,n)||hasOwnProperty.call(e,u))&&i.push(u)}return i}function isObject(e){var t=typeof e;return!!e&&(\"object\"==t||\"function\"==t)}function keysIn(e){if(null==e)return[];isObject(e)||(e=Object(e));var t=e.length;t=t&&isLength(t)&&(isArray(e)||isArguments(e))&&t||0;for(var r=e.constructor,n=-1,s=\"function\"==typeof r&&r.prototype===e,o=Array(t),i=t>0;++n<t;)o[n]=n+\"\";for(var u in e)i&&isIndex(u,t)||\"constructor\"==u&&(s||!hasOwnProperty.call(e,u))||o.push(u);return o}var getNative=_dereq_(\"lodash._getnative\"),isArguments=_dereq_(\"lodash.isarguments\"),isArray=_dereq_(\"lodash.isarray\"),reIsUint=/^\\d+$/,objectProto=Object.prototype,hasOwnProperty=objectProto.hasOwnProperty,nativeKeys=getNative(Object,\"keys\"),MAX_SAFE_INTEGER=9007199254740991,getLength=baseProperty(\"length\"),keys=nativeKeys?function(e){var t=null==e?void 0:e.constructor;return\"function\"==typeof t&&t.prototype===e||\"function\"!=typeof e&&isArrayLike(e)?shimKeys(e):isObject(e)?nativeKeys(e):[]}:shimKeys;module.exports=keys;\n},{\"lodash._getnative\":117,\"lodash.isarguments\":118,\"lodash.isarray\":119}],123:[function(_dereq_,module,exports){\n\"use strict\";module.exports=_dereq_(\"./v8.json\");\n},{\"./v8.json\":124}],124:[function(_dereq_,module,exports){\nmodule.exports={\"$version\":8,\"$root\":{\"version\":{\"required\":true,\"type\":\"enum\",\"values\":[8]},\"name\":{\"type\":\"string\"},\"metadata\":{\"type\":\"*\"},\"center\":{\"type\":\"array\",\"value\":\"number\"},\"zoom\":{\"type\":\"number\"},\"bearing\":{\"type\":\"number\",\"default\":0,\"period\":360,\"units\":\"degrees\"},\"pitch\":{\"type\":\"number\",\"default\":0,\"units\":\"degrees\"},\"light\":{\"type\":\"light\"},\"sources\":{\"required\":true,\"type\":\"sources\"},\"sprite\":{\"type\":\"string\"},\"glyphs\":{\"type\":\"string\"},\"transition\":{\"type\":\"transition\"},\"layers\":{\"required\":true,\"type\":\"array\",\"value\":\"layer\"}},\"sources\":{\"*\":{\"type\":\"source\"}},\"source\":[\"source_tile\",\"source_geojson\",\"source_video\",\"source_image\",\"source_canvas\"],\"source_tile\":{\"type\":{\"required\":true,\"type\":\"enum\",\"values\":{\"vector\":{},\"raster\":{}}},\"url\":{\"type\":\"string\"},\"tiles\":{\"type\":\"array\",\"value\":\"string\"},\"bounds\":{\"type\":\"array\",\"value\":\"number\",\"length\":4,\"default\":[-180,-85.0511,180,85.0511]},\"minzoom\":{\"type\":\"number\",\"default\":0},\"maxzoom\":{\"type\":\"number\",\"default\":22},\"tileSize\":{\"type\":\"number\",\"default\":512,\"units\":\"pixels\"},\"*\":{\"type\":\"*\"}},\"source_geojson\":{\"type\":{\"required\":true,\"type\":\"enum\",\"values\":{\"geojson\":{}}},\"data\":{\"type\":\"*\"},\"maxzoom\":{\"type\":\"number\",\"default\":18},\"buffer\":{\"type\":\"number\",\"default\":128,\"maximum\":512,\"minimum\":0},\"tolerance\":{\"type\":\"number\",\"default\":0.375},\"cluster\":{\"type\":\"boolean\",\"default\":false},\"clusterRadius\":{\"type\":\"number\",\"default\":50,\"minimum\":0},\"clusterMaxZoom\":{\"type\":\"number\"}},\"source_video\":{\"type\":{\"required\":true,\"type\":\"enum\",\"values\":{\"video\":{}}},\"urls\":{\"required\":true,\"type\":\"array\",\"value\":\"string\"},\"coordinates\":{\"required\":true,\"type\":\"array\",\"length\":4,\"value\":{\"type\":\"array\",\"length\":2,\"value\":\"number\"}}},\"source_image\":{\"type\":{\"required\":true,\"type\":\"enum\",\"values\":{\"image\":{}}},\"url\":{\"required\":true,\"type\":\"string\"},\"coordinates\":{\"required\":true,\"type\":\"array\",\"length\":4,\"value\":{\"type\":\"array\",\"length\":2,\"value\":\"number\"}}},\"source_canvas\":{\"type\":{\"required\":true,\"type\":\"enum\",\"values\":{\"canvas\":{}}},\"coordinates\":{\"required\":true,\"type\":\"array\",\"length\":4,\"value\":{\"type\":\"array\",\"length\":2,\"value\":\"number\"}},\"animate\":{\"type\":\"boolean\",\"default\":\"true\"},\"canvas\":{\"type\":\"string\",\"required\":true},\"contextType\":{\"required\":true,\"type\":\"enum\",\"values\":{\"2d\":{},\"webgl\":{},\"experimental-webgl\":{},\"webgl2\":{}}}},\"layer\":{\"id\":{\"type\":\"string\",\"required\":true},\"type\":{\"type\":\"enum\",\"values\":{\"fill\":{},\"line\":{},\"symbol\":{},\"circle\":{},\"fill-extrusion\":{},\"raster\":{},\"background\":{}}},\"metadata\":{\"type\":\"*\"},\"ref\":{\"type\":\"string\"},\"source\":{\"type\":\"string\"},\"source-layer\":{\"type\":\"string\"},\"minzoom\":{\"type\":\"number\",\"minimum\":0,\"maximum\":24},\"maxzoom\":{\"type\":\"number\",\"minimum\":0,\"maximum\":24},\"filter\":{\"type\":\"filter\"},\"layout\":{\"type\":\"layout\"},\"paint\":{\"type\":\"paint\"},\"paint.*\":{\"type\":\"paint\"}},\"layout\":[\"layout_fill\",\"layout_line\",\"layout_circle\",\"layout_fill-extrusion\",\"layout_symbol\",\"layout_raster\",\"layout_background\"],\"layout_background\":{\"visibility\":{\"type\":\"enum\",\"values\":{\"visible\":{},\"none\":{}},\"default\":\"visible\"}},\"layout_fill\":{\"visibility\":{\"type\":\"enum\",\"values\":{\"visible\":{},\"none\":{}},\"default\":\"visible\"}},\"layout_circle\":{\"visibility\":{\"type\":\"enum\",\"values\":{\"visible\":{},\"none\":{}},\"default\":\"visible\"}},\"layout_fill-extrusion\":{\"visibility\":{\"type\":\"enum\",\"values\":{\"visible\":{},\"none\":{}},\"default\":\"visible\"}},\"layout_line\":{\"line-cap\":{\"type\":\"enum\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"values\":{\"butt\":{},\"round\":{},\"square\":{}},\"default\":\"butt\"},\"line-join\":{\"type\":\"enum\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"property-function\":true,\"values\":{\"bevel\":{},\"round\":{},\"miter\":{}},\"default\":\"miter\"},\"line-miter-limit\":{\"type\":\"number\",\"default\":2,\"function\":\"interpolated\",\"zoom-function\":true,\"requires\":[{\"line-join\":\"miter\"}]},\"line-round-limit\":{\"type\":\"number\",\"default\":1.05,\"function\":\"interpolated\",\"zoom-function\":true,\"requires\":[{\"line-join\":\"round\"}]},\"visibility\":{\"type\":\"enum\",\"values\":{\"visible\":{},\"none\":{}},\"default\":\"visible\"}},\"layout_symbol\":{\"symbol-placement\":{\"type\":\"enum\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"values\":{\"point\":{},\"line\":{}},\"default\":\"point\"},\"symbol-spacing\":{\"type\":\"number\",\"default\":250,\"minimum\":1,\"function\":\"interpolated\",\"zoom-function\":true,\"units\":\"pixels\",\"requires\":[{\"symbol-placement\":\"line\"}]},\"symbol-avoid-edges\":{\"type\":\"boolean\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"default\":false},\"icon-allow-overlap\":{\"type\":\"boolean\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"default\":false,\"requires\":[\"icon-image\"]},\"icon-ignore-placement\":{\"type\":\"boolean\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"default\":false,\"requires\":[\"icon-image\"]},\"icon-optional\":{\"type\":\"boolean\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"default\":false,\"requires\":[\"icon-image\",\"text-field\"]},\"icon-rotation-alignment\":{\"type\":\"enum\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"values\":{\"map\":{},\"viewport\":{},\"auto\":{}},\"default\":\"auto\",\"requires\":[\"icon-image\"]},\"icon-size\":{\"type\":\"number\",\"default\":1,\"minimum\":0,\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":true,\"units\":\"factor of the original icon size\",\"requires\":[\"icon-image\"]},\"icon-text-fit\":{\"type\":\"enum\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"values\":{\"none\":{},\"width\":{},\"height\":{},\"both\":{}},\"default\":\"none\",\"requires\":[\"icon-image\",\"text-field\"]},\"icon-text-fit-padding\":{\"type\":\"array\",\"value\":\"number\",\"length\":4,\"default\":[0,0,0,0],\"units\":\"pixels\",\"function\":\"interpolated\",\"zoom-function\":true,\"requires\":[\"icon-image\",\"text-field\",{\"icon-text-fit\":[\"both\",\"width\",\"height\"]}]},\"icon-image\":{\"type\":\"string\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"property-function\":true,\"tokens\":true},\"icon-rotate\":{\"type\":\"number\",\"default\":0,\"period\":360,\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":true,\"units\":\"degrees\",\"requires\":[\"icon-image\"]},\"icon-padding\":{\"type\":\"number\",\"default\":2,\"minimum\":0,\"function\":\"interpolated\",\"zoom-function\":true,\"units\":\"pixels\",\"requires\":[\"icon-image\"]},\"icon-keep-upright\":{\"type\":\"boolean\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"default\":false,\"requires\":[\"icon-image\",{\"icon-rotation-alignment\":\"map\"},{\"symbol-placement\":\"line\"}]},\"icon-offset\":{\"type\":\"array\",\"value\":\"number\",\"length\":2,\"default\":[0,0],\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":true,\"requires\":[\"icon-image\"]},\"icon-anchor\":{\"type\":\"enum\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"property-function\":true,\"values\":{\"center\":{},\"left\":{},\"right\":{},\"top\":{},\"bottom\":{},\"top-left\":{},\"top-right\":{},\"bottom-left\":{},\"bottom-right\":{}},\"default\":\"center\",\"requires\":[\"icon-image\"]},\"icon-pitch-alignment\":{\"type\":\"enum\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"values\":{\"map\":{},\"viewport\":{},\"auto\":{}},\"default\":\"auto\",\"requires\":[\"icon-image\"]},\"text-pitch-alignment\":{\"type\":\"enum\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"values\":{\"map\":{},\"viewport\":{},\"auto\":{}},\"default\":\"auto\",\"requires\":[\"text-field\"]},\"text-rotation-alignment\":{\"type\":\"enum\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"values\":{\"map\":{},\"viewport\":{},\"auto\":{}},\"default\":\"auto\",\"requires\":[\"text-field\"]},\"text-field\":{\"type\":\"string\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"property-function\":true,\"default\":\"\",\"tokens\":true},\"text-font\":{\"type\":\"array\",\"value\":\"string\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"default\":[\"Open Sans Regular\",\"Arial Unicode MS Regular\"],\"requires\":[\"text-field\"]},\"text-size\":{\"type\":\"number\",\"default\":16,\"minimum\":0,\"units\":\"pixels\",\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":true,\"requires\":[\"text-field\"]},\"text-max-width\":{\"type\":\"number\",\"default\":10,\"minimum\":0,\"units\":\"ems\",\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":true,\"requires\":[\"text-field\"]},\"text-line-height\":{\"type\":\"number\",\"default\":1.2,\"units\":\"ems\",\"function\":\"interpolated\",\"zoom-function\":true,\"requires\":[\"text-field\"]},\"text-letter-spacing\":{\"type\":\"number\",\"default\":0,\"units\":\"ems\",\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":true,\"requires\":[\"text-field\"]},\"text-justify\":{\"type\":\"enum\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"property-function\":true,\"values\":{\"left\":{},\"center\":{},\"right\":{}},\"default\":\"center\",\"requires\":[\"text-field\"]},\"text-anchor\":{\"type\":\"enum\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"property-function\":true,\"values\":{\"center\":{},\"left\":{},\"right\":{},\"top\":{},\"bottom\":{},\"top-left\":{},\"top-right\":{},\"bottom-left\":{},\"bottom-right\":{}},\"default\":\"center\",\"requires\":[\"text-field\"]},\"text-max-angle\":{\"type\":\"number\",\"default\":45,\"units\":\"degrees\",\"function\":\"interpolated\",\"zoom-function\":true,\"requires\":[\"text-field\",{\"symbol-placement\":\"line\"}]},\"text-rotate\":{\"type\":\"number\",\"default\":0,\"period\":360,\"units\":\"degrees\",\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":true,\"requires\":[\"text-field\"]},\"text-padding\":{\"type\":\"number\",\"default\":2,\"minimum\":0,\"units\":\"pixels\",\"function\":\"interpolated\",\"zoom-function\":true,\"requires\":[\"text-field\"]},\"text-keep-upright\":{\"type\":\"boolean\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"default\":true,\"requires\":[\"text-field\",{\"text-rotation-alignment\":\"map\"},{\"symbol-placement\":\"line\"}]},\"text-transform\":{\"type\":\"enum\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"property-function\":true,\"values\":{\"none\":{},\"uppercase\":{},\"lowercase\":{}},\"default\":\"none\",\"requires\":[\"text-field\"]},\"text-offset\":{\"type\":\"array\",\"value\":\"number\",\"units\":\"ems\",\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":true,\"length\":2,\"default\":[0,0],\"requires\":[\"text-field\"]},\"text-allow-overlap\":{\"type\":\"boolean\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"default\":false,\"requires\":[\"text-field\"]},\"text-ignore-placement\":{\"type\":\"boolean\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"default\":false,\"requires\":[\"text-field\"]},\"text-optional\":{\"type\":\"boolean\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"default\":false,\"requires\":[\"text-field\",\"icon-image\"]},\"visibility\":{\"type\":\"enum\",\"values\":{\"visible\":{},\"none\":{}},\"default\":\"visible\"}},\"layout_raster\":{\"visibility\":{\"type\":\"enum\",\"values\":{\"visible\":{},\"none\":{}},\"default\":\"visible\"}},\"filter\":{\"type\":\"array\",\"value\":\"*\"},\"filter_operator\":{\"type\":\"enum\",\"values\":{\"==\":{},\"!=\":{},\">\":{},\">=\":{},\"<\":{},\"<=\":{},\"in\":{},\"!in\":{},\"all\":{},\"any\":{},\"none\":{},\"has\":{},\"!has\":{}}},\"geometry_type\":{\"type\":\"enum\",\"values\":{\"Point\":{},\"LineString\":{},\"Polygon\":{}}},\"function\":{\"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,\"zoom-function\":true,\"property-function\":false,\"function\":\"piecewise-constant\"},\"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,\"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,\"property-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-pitch-alignment\":{\"type\":\"enum\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"values\":{\"map\":{},\"viewport\":{}},\"default\":\"viewport\"},\"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},{}],125:[function(_dereq_,module,exports){\n\"use strict\";module.exports=function(r){for(var t=[],e=arguments.length-1;e-- >0;)t[e]=arguments[e+1];for(var n=0,o=t;n<o.length;n+=1){var a=o[n];for(var f in a)r[f]=a[f]}return r};\n},{}],126:[function(_dereq_,module,exports){\n\"use strict\";module.exports=function(n){return n instanceof Number?\"number\":n instanceof String?\"string\":n instanceof Boolean?\"boolean\":Array.isArray(n)?\"array\":null===n?\"null\":typeof n};\n},{}],127:[function(_dereq_,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},{}],128:[function(_dereq_,module,exports){\n\"use strict\";var parseColorString=_dereq_(\"csscolorparser\").parseCSSColor;module.exports=function(r){if(\"string\"==typeof r){var e=parseColorString(r);if(!e)return;return[e[0]/255*e[3],e[1]/255*e[3],e[2]/255*e[3],e[3]]}return Array.isArray(r)?r:void 0};\n},{\"csscolorparser\":114}],129:[function(_dereq_,module,exports){\n\"use strict\";module.exports=[\"type\",\"source\",\"source-layer\",\"minzoom\",\"maxzoom\",\"filter\",\"layout\"];\n},{}],130:[function(_dereq_,module,exports){\n\"use strict\";module.exports=function(n){return n instanceof Number||n instanceof String||n instanceof Boolean?n.valueOf():n};\n},{}],131:[function(_dereq_,module,exports){\n\"use strict\";var ValidationError=_dereq_(\"../error/validation_error\"),getType=_dereq_(\"../util/get_type\"),extend=_dereq_(\"../util/extend\");module.exports=function(e){var r=_dereq_(\"./validate_function\"),t=_dereq_(\"./validate_object\"),i={\"*\":function(){return[]},array:_dereq_(\"./validate_array\"),boolean:_dereq_(\"./validate_boolean\"),number:_dereq_(\"./validate_number\"),color:_dereq_(\"./validate_color\"),constants:_dereq_(\"./validate_constants\"),enum:_dereq_(\"./validate_enum\"),filter:_dereq_(\"./validate_filter\"),function:_dereq_(\"./validate_function\"),layer:_dereq_(\"./validate_layer\"),object:_dereq_(\"./validate_object\"),source:_dereq_(\"./validate_source\"),light:_dereq_(\"./validate_light\"),string:_dereq_(\"./validate_string\")},a=e.value,n=e.valueSpec,u=e.key,o=e.styleSpec,l=e.style;if(\"string\"===getType(a)&&\"@\"===a[0]){if(o.$version>7)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\":109,\"../util/extend\":125,\"../util/get_type\":126,\"./validate_array\":132,\"./validate_boolean\":133,\"./validate_color\":134,\"./validate_constants\":135,\"./validate_enum\":136,\"./validate_filter\":137,\"./validate_function\":138,\"./validate_layer\":140,\"./validate_light\":142,\"./validate_number\":143,\"./validate_object\":144,\"./validate_source\":147,\"./validate_string\":148}],132:[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.length<t[\"min-length\"])return[new ValidationError(l,r,\"array length at least %d expected, length %d found\",t[\"min-length\"],r.length)];var o={type:t.value};n.$version<7&&(o.function=t.function),\"object\"===getType(t.value)&&(o=t.value);for(var u=[],d=0;d<r.length;d++)u=u.concat(i({array:r,arrayIndex:d,value:r[d],valueSpec:o,style:a,styleSpec:n,key:l+\"[\"+d+\"]\"}));return u};\n},{\"../error/validation_error\":109,\"../util/get_type\":126,\"./validate\":131}],133:[function(_dereq_,module,exports){\n\"use strict\";var getType=_dereq_(\"../util/get_type\"),ValidationError=_dereq_(\"../error/validation_error\");module.exports=function(e){var r=e.value,o=e.key,t=getType(r);return\"boolean\"!==t?[new ValidationError(o,r,\"boolean expected, %s found\",t)]:[]};\n},{\"../error/validation_error\":109,\"../util/get_type\":126}],134:[function(_dereq_,module,exports){\n\"use strict\";var ValidationError=_dereq_(\"../error/validation_error\"),getType=_dereq_(\"../util/get_type\"),parseCSSColor=_dereq_(\"csscolorparser\").parseCSSColor;module.exports=function(r){var e=r.key,o=r.value,t=getType(o);return\"string\"!==t?[new ValidationError(e,o,\"color expected, %s found\",t)]:null===parseCSSColor(o)?[new ValidationError(e,o,'color expected, \"%s\" found',o)]:[]};\n},{\"../error/validation_error\":109,\"../util/get_type\":126,\"csscolorparser\":114}],135:[function(_dereq_,module,exports){\n\"use strict\";var ValidationError=_dereq_(\"../error/validation_error\"),getType=_dereq_(\"../util/get_type\");module.exports=function(r){var e=r.key,t=r.value;if(r.styleSpec.$version>7)return t?[new ValidationError(e,t,\"constants have been deprecated as of v8\")]:[];var a=getType(t);if(\"object\"!==a)return[new ValidationError(e,t,\"object expected, %s found\",a)];var o=[];for(var n in t)\"@\"!==n[0]&&o.push(new ValidationError(e+\".\"+n,t[n],'constants must start with \"@\"'));return o};\n},{\"../error/validation_error\":109,\"../util/get_type\":126}],136:[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)?-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};\n},{\"../error/validation_error\":109,\"../util/unbundle_jsonlint\":130}],137:[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&&\"string\"!==(t=getType(a[1]))&&s.push(new ValidationError(n+\"[1]\",a[1],\"string expected, %s found\",t));for(var o=2;o<a.length;o++)t=getType(a[o]),\"$type\"===unbundle(a[1])?s=s.concat(validateEnum({key:n+\"[\"+o+\"]\",value:a[o],valueSpec:l.geometry_type,style:r.style,styleSpec:r.styleSpec})):\"string\"!==t&&\"number\"!==t&&\"boolean\"!==t&&s.push(new ValidationError(n+\"[\"+o+\"]\",a[o],\"string, number, or boolean expected, %s found\",t));break;case\"any\":case\"all\":case\"none\":for(var i=1;i<a.length;i++)s=s.concat(e({key:n+\"[\"+i+\"]\",value:a[i],style:r.style,styleSpec:r.styleSpec}));break;case\"has\":case\"!has\":t=getType(a[1]),2!==a.length?s.push(new ValidationError(n,a,'filter array for \"%s\" operator must have 2 elements',a[0])):\"string\"!==t&&s.push(new ValidationError(n+\"[1]\",a[1],\"string expected, %s found\",t))}return s};\n},{\"../error/validation_error\":109,\"../util/get_type\":126,\"../util/unbundle_jsonlint\":130,\"./validate_enum\":136}],138:[function(_dereq_,module,exports){\n\"use strict\";var ValidationError=_dereq_(\"../error/validation_error\"),getType=_dereq_(\"../util/get_type\"),validate=_dereq_(\"./validate\"),validateObject=_dereq_(\"./validate_object\"),validateArray=_dereq_(\"./validate_array\"),validateNumber=_dereq_(\"./validate_number\"),unbundle=_dereq_(\"../util/unbundle_jsonlint\");module.exports=function(e){function t(e){if(\"identity\"===p)return[new ValidationError(e.key,e.value,'identity function may not have a \"stops\" property')];var t=[],a=e.value;return t=t.concat(validateArray({key:e.key,value:a,valueSpec:e.valueSpec,style:e.style,styleSpec:e.styleSpec,arrayElementValidator:r})),\"array\"===getType(a)&&0===a.length&&t.push(new ValidationError(e.key,a,\"array must have at least one stop\")),t}function r(e){var t=[],r=e.value,o=e.key;if(\"array\"!==getType(r))return[new ValidationError(o,r,\"array expected, %s found\",getType(r))];if(2!==r.length)return[new ValidationError(o,r,\"array length %d expected, length %d found\",2,r.length)];if(c){if(\"object\"!==getType(r[0]))return[new ValidationError(o,r,\"object expected, %s found\",getType(r[0]))];if(void 0===r[0].zoom)return[new ValidationError(o,r,\"object stop key must have zoom\")];if(void 0===r[0].value)return[new ValidationError(o,r,\"object stop key must have value\")];if(l&&l>unbundle(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?\"categorical\"!==p&&\"number\"===t&&void 0!==i&&r<i?[new ValidationError(e.key,e.value,\"stop domain values must appear in ascending order\")]:(i=r,\"categorical\"===p&&r in s?[new ValidationError(e.key,e.value,\"stop domain values must be unique\")]:(s[r]=!0,[])):[new ValidationError(e.key,e.value,\"integer expected, found %s\",r)]}function o(e){return validate({key:e.key,value:e.value,valueSpec:u,style:e.style,styleSpec:e.styleSpec})}var n,i,l,u=e.valueSpec,p=unbundle(e.value.type),s={},y=\"categorical\"!==p&&void 0===e.value.property,d=!y,c=\"array\"===getType(e.value.stops)&&\"array\"===getType(e.value.stops[0])&&\"object\"===getType(e.value.stops[0][0]),v=validateObject({key:e.key,value:e.value,valueSpec:e.styleSpec.function,style:e.style,styleSpec:e.styleSpec,objectElementValidators:{stops:t,default:o}});return\"identity\"===p&&y&&v.push(new ValidationError(e.key,e.value,'missing required property \"property\"')),\"identity\"===p||e.value.stops||v.push(new ValidationError(e.key,e.value,'missing required property \"stops\"')),\"exponential\"===p&&\"piecewise-constant\"===e.valueSpec.function&&v.push(new ValidationError(e.key,e.value,\"exponential functions not supported\")),e.styleSpec.$version>=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\":109,\"../util/get_type\":126,\"../util/unbundle_jsonlint\":130,\"./validate\":131,\"./validate_array\":132,\"./validate_number\":143,\"./validate_object\":144}],139:[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:(-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)};\n},{\"../error/validation_error\":109,\"./validate_string\":148}],140:[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;s<e.arrayIndex;s++){var d=i.layers[s];unbundle(d.id)===o&&r.push(new ValidationError(a,t.id,'duplicate layer id \"%s\", previously used at line %d',t.id,d.id.__line__))}if(\"ref\"in t){[\"type\",\"source\",\"source-layer\",\"filter\",\"layout\"].forEach(function(e){e in t&&r.push(new ValidationError(a,t[e],'\"%s\" is prohibited for ref layers',e))});var y;i.layers.forEach(function(e){unbundle(e.id)===n&&(y=e)}),y?y.ref?r.push(new ValidationError(a,t.ref,\"ref cannot reference another ref layer\")):u=unbundle(y.type):r.push(new ValidationError(a,t.ref,'ref layer \"%s\" not found',n))}else if(\"background\"!==u)if(t.source){var c=i.sources&&i.sources[t.source],p=c&&unbundle(c.type);c?\"vector\"===p&&\"raster\"===u?r.push(new ValidationError(a,t.source,'layer \"%s\" requires a raster source',t.id)):\"raster\"===p&&\"raster\"!==u?r.push(new ValidationError(a,t.source,'layer \"%s\" requires a vector source',t.id)):\"vector\"!==p||t[\"source-layer\"]||r.push(new ValidationError(a,t,'layer \"%s\" must specify a \"source-layer\"',t.id)):r.push(new ValidationError(a,t.source,'source \"%s\" not found',t.source))}else r.push(new ValidationError(a,t,'missing required property \"source\"'));return r=r.concat(validateObject({key:a,value:t,valueSpec:l.layer,style:e.style,styleSpec:e.styleSpec,objectElementValidators:{\"*\":function(){return[]},filter:validateFilter,layout:function(e){return validateObject({layer:t,key:e.key,value:e.value,style:e.style,styleSpec:e.styleSpec,objectElementValidators:{\"*\":function(e){return validateLayoutProperty(extend({layerType:u},e))}}})},paint:function(e){return validateObject({layer:t,key:e.key,value:e.value,style:e.style,styleSpec:e.styleSpec,objectElementValidators:{\"*\":function(e){return validatePaintProperty(extend({layerType:u},e))}}})}}}))};\n},{\"../error/validation_error\":109,\"../util/extend\":125,\"../util/unbundle_jsonlint\":130,\"./validate_filter\":137,\"./validate_layout_property\":141,\"./validate_object\":144,\"./validate_paint_property\":145}],141:[function(_dereq_,module,exports){\n\"use strict\";var validateProperty=_dereq_(\"./validate_property\");module.exports=function(r){return validateProperty(r,\"layout\")};\n},{\"./validate_property\":146}],142:[function(_dereq_,module,exports){\n\"use strict\";var ValidationError=_dereq_(\"../error/validation_error\"),getType=_dereq_(\"../util/get_type\"),validate=_dereq_(\"./validate\");module.exports=function(e){var t=e.value,r=e.styleSpec,a=r.light,i=e.style,n=[],o=getType(t);if(void 0===t)return n;if(\"object\"!==o)return n=n.concat([new ValidationError(\"light\",t,\"object expected, %s found\",o)]);for(var l in t){var c=l.match(/^(.*)-transition$/);n=c&&a[c[1]]&&a[c[1]].transition?n.concat(validate({key:l,value:t[l],valueSpec:r.transition,style:i,styleSpec:r})):a[l]?n.concat(validate({key:l,value:t[l],valueSpec:a[l],style:i,styleSpec:r})):n.concat([new ValidationError(l,t[l],'unknown property \"%s\"',l)])}return n};\n},{\"../error/validation_error\":109,\"../util/get_type\":126,\"./validate\":131}],143:[function(_dereq_,module,exports){\n\"use strict\";var getType=_dereq_(\"../util/get_type\"),ValidationError=_dereq_(\"../error/validation_error\");module.exports=function(e){var r=e.key,i=e.value,m=e.valueSpec,a=getType(i);return\"number\"!==a?[new ValidationError(r,i,\"number expected, %s found\",a)]:\"minimum\"in m&&i<m.minimum?[new ValidationError(r,i,\"%s is less than the minimum value %s\",i,m.minimum)]:\"maximum\"in m&&i>m.maximum?[new ValidationError(r,i,\"%s is greater than the maximum value %s\",i,m.maximum)]:[]};\n},{\"../error/validation_error\":109,\"../util/get_type\":126}],144:[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\":109,\"../util/get_type\":126,\"./validate\":131}],145:[function(_dereq_,module,exports){\n\"use strict\";var validateProperty=_dereq_(\"./validate_property\");module.exports=function(r){return validateProperty(r,\"paint\")};\n},{\"./validate_property\":146}],146:[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\":109,\"../util/get_type\":126,\"./validate\":131}],147:[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\":109,\"../util/unbundle_jsonlint\":130,\"./validate_enum\":136,\"./validate_object\":144}],148:[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\":109,\"../util/get_type\":126}],149:[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\":123,\"./validate/validate\":131,\"./validate/validate_constants\":135,\"./validate/validate_filter\":137,\"./validate/validate_glyphs_url\":139,\"./validate/validate_layer\":140,\"./validate/validate_layout_property\":141,\"./validate/validate_light\":142,\"./validate/validate_paint_property\":145,\"./validate/validate_source\":147}],150:[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},{}],151:[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\",properties=[\"anchor\",\"color\",\"position\",\"intensity\"],specifications=styleSpec.light,Light=function(t){function i(i){t.call(this),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:specifications.anchor.default,color:specifications.color.default,position:specifications.position.default,intensity:specifications.intensity.default},t);for(var e=0,o=properties;e<o.length;e+=1){var n=o[e];i._declarations[n]=new StyleDeclaration(specifications[n],t[n])}return this}},i.prototype.getLight=function(){return{anchor:this.getLightProperty(\"anchor\"),color:this.getLightProperty(\"color\"),position:this.getLightProperty(\"position\"),intensity:this.getLightProperty(\"intensity\")}},i.prototype.getLightProperty=function(t){return util.endsWith(t,TRANSITION_SUFFIX)?this._transitionOptions[t]:this._declarations[t]&&this._declarations[t].value},i.prototype.getLightValue=function(t,i){if(\"position\"===t){var e=this._transitions[t].calculate(i),o=util.sphericalToCartesian(e);return{x:o[0],y:o[1],z:o[2]}}return this._transitions[t].calculate(i)},i.prototype.setLight=function(t){var i=this;if(!this._validate(validateStyle.light,t))for(var e in t){var o=t[e];util.endsWith(e,TRANSITION_SUFFIX)?i._transitionOptions[e]=o:null===o||void 0===o?delete i._declarations[e]:i._declarations[e]=new StyleDeclaration(specifications[e],o)}},i.prototype.recalculate=function(t){var i=this;for(var e in i._declarations)i.calculated[e]=i.getLightValue(e,{zoom:t})},i.prototype._applyLightDeclaration=function(t,i,e,o,n){var r=e.transition?this._transitions[t]:void 0,a=specifications[t];if(null!==i&&void 0!==i||(i=new StyleDeclaration(a,a.default)),!r||r.declaration.json!==i.json){var s=util.extend({duration:300,delay:0},o,this.getLightProperty(t+TRANSITION_SUFFIX)),l=this._transitions[t]=new StyleTransition(a,i,r,s);l.instant()||(l.loopID=n.set(l.endTime-Date.now())),r&&n.cancel(r.loopID)}},i.prototype.updateLightTransitions=function(t,i,e){var o,n=this;for(o in n._declarations)n._applyLightDeclaration(o,n._declarations[o],t,i,e)},i.prototype._validate=function(t,i){return validateStyle.emitErrors(this,t.call(validateStyle,util.extend({value:i,style:{glyphs:!0,sprite:!0},styleSpec:styleSpec})))},i}(Evented);module.exports=Light;\n},{\"../style-spec/reference/latest\":123,\"../util/evented\":210,\"../util/util\":223,\"./style_declaration\":157,\"./style_transition\":165,\"./validate_style\":166}],152:[function(_dereq_,module,exports){\n\"use strict\";var ref=_dereq_(\"../util/mapbox\"),normalizeGlyphsURL=ref.normalizeGlyphsURL,ajax=_dereq_(\"../util/ajax\"),parseGlyphPBF=_dereq_(\"./parse_glyph_pbf\");module.exports=function(e,r,a,l,p){var i=256*r,s=i+255,t=l(normalizeGlyphsURL(a).replace(\"{fontstack}\",e).replace(\"{range}\",i+\"-\"+s),ajax.ResourceType.Glyphs);ajax.getArrayBuffer(t,function(e,r){if(e)p(e);else if(r){for(var a={},l=0,i=parseGlyphPBF(r.data);l<i.length;l+=1){var s=i[l];a[s.id]=s}p(null,a)}})};\n},{\"../util/ajax\":201,\"../util/mapbox\":217,\"./parse_glyph_pbf\":154}],153:[function(_dereq_,module,exports){\n\"use strict\";var ajax=_dereq_(\"../util/ajax\"),browser=_dereq_(\"../util/browser\"),ref=_dereq_(\"../util/mapbox\"),normalizeSpriteURL=ref.normalizeSpriteURL,ref$1=_dereq_(\"../util/image\"),RGBAImage=ref$1.RGBAImage;module.exports=function(e,r,i){function a(){if(u)i(u);else if(t&&o){var e=browser.getImageData(o),r={};for(var a in t){var n=t[a],l=n.width,g=n.height,x=n.x,f=n.y,m=n.sdf,p=n.pixelRatio,s=RGBAImage.create({width:l,height:g});RGBAImage.copy(e,s,{x:x,y:f},{x:0,y:0},{width:l,height:g}),r[a]={data:s,pixelRatio:p,sdf:m}}i(null,r)}}if(!e)return void i(null,{});var t,o,u,n=browser.devicePixelRatio>1?\"@2x\":\"\";ajax.getJSON(r(normalizeSpriteURL(e,n,\".json\"),ajax.ResourceType.SpriteJSON),function(e,r){u||(u=e,t=r,a())}),ajax.getImage(r(normalizeSpriteURL(e,n,\".png\"),ajax.ResourceType.SpriteImage),function(e,r){u||(u=e,o=r,a())})};\n},{\"../util/ajax\":201,\"../util/browser\":202,\"../util/image\":213,\"../util/mapbox\":217}],154:[function(_dereq_,module,exports){\n\"use strict\";function readFontstacks(e,a,r){1===e&&r.readMessage(readFontstack,a)}function readFontstack(e,a,r){if(3===e){var t=r.readMessage(readGlyph,{}),d=t.id,i=t.bitmap,n=t.width,o=t.height,h=t.left,s=t.top,p=t.advance;a.push({id:d,bitmap:AlphaImage.create({width:n+2*border,height:o+2*border},i),metrics:{width:n,height:o,left:h,top:s,advance:p}})}}function readGlyph(e,a,r){1===e?a.id=r.readVarint():2===e?a.bitmap=r.readBytes():3===e?a.width=r.readVarint():4===e?a.height=r.readVarint():5===e?a.left=r.readSVarint():6===e?a.top=r.readSVarint():7===e&&(a.advance=r.readVarint())}var ref=_dereq_(\"../util/image\"),AlphaImage=ref.AlphaImage,Protobuf=_dereq_(\"pbf\"),border=3;module.exports=function(e){return new Protobuf(e).readFields(readFontstacks,[])},module.exports.GLYPH_PBF_BORDER=border;\n},{\"../util/image\":213,\"pbf\":29}],155:[function(_dereq_,module,exports){\n\"use strict\";function getMaximumPaintValue(t,a,e){return a.isPaintValueFeatureConstant(t)?a.paint[t]:e.programConfigurations.get(a.id).paintPropertyStatistics[t].max}function translateDistance(t){return Math.sqrt(t[0]*t[0]+t[1]*t[1])}function translate(t,a,e,n,r){if(!a[0]&&!a[1])return t;var i=Point.convert(a);\"viewport\"===e&&i._rotate(-n);for(var u=[],s=0;s<t.length;s++){for(var o=t[s],l=[],m=0;m<o.length;m++)l.push(o[m].sub(i._mult(r)));u.push(l)}return u}var Point=_dereq_(\"@mapbox/point-geometry\");module.exports={getMaximumPaintValue:getMaximumPaintValue,translateDistance:translateDistance,translate:translate};\n},{\"@mapbox/point-geometry\":2}],156:[function(_dereq_,module,exports){\n\"use strict\";var Evented=_dereq_(\"../util/evented\"),StyleLayer=_dereq_(\"./style_layer\"),loadSprite=_dereq_(\"./load_sprite\"),ImageManager=_dereq_(\"../render/image_manager\"),GlyphManager=_dereq_(\"../render/glyph_manager\"),Light=_dereq_(\"./light\"),LineAtlas=_dereq_(\"../render/line_atlas\"),util=_dereq_(\"../util/util\"),ajax=_dereq_(\"../util/ajax\"),mapbox=_dereq_(\"../util/mapbox\"),browser=_dereq_(\"../util/browser\"),Dispatcher=_dereq_(\"../util/dispatcher\"),AnimationLoop=_dereq_(\"./animation_loop\"),validateStyle=_dereq_(\"./validate_style\"),getSourceType=_dereq_(\"../source/source\").getType,setSourceType=_dereq_(\"../source/source\").setType,QueryFeatures=_dereq_(\"../source/query_features\"),SourceCache=_dereq_(\"../source/source_cache\"),styleSpec=_dereq_(\"../style-spec/reference/latest\"),MapboxGLFunction=_dereq_(\"../style-spec/function\"),getWorkerPool=_dereq_(\"../util/global_worker_pool\"),deref=_dereq_(\"../style-spec/deref\"),diff=_dereq_(\"../style-spec/diff\"),rtlTextPlugin=_dereq_(\"../source/rtl_text_plugin\"),supportedDiffOperations=util.pick(diff.operations,[\"addLayer\",\"removeLayer\",\"setPaintProperty\",\"setLayoutProperty\",\"setFilter\",\"addSource\",\"removeSource\",\"setLayerZoomRange\",\"setLight\",\"setTransition\"]),ignoredDiffOperations=util.pick(diff.operations,[\"setCenter\",\"setZoom\",\"setBearing\",\"setPitch\"]),Style=function(e){function t(t,r,a){var i=this;e.call(this),a=util.extend({validate:\"string\"!=typeof t||!mapbox.isMapboxURL(t)},a);var o=function(e,t){return i.map?i.map._transformRequest(e,t):{url:e}};this.map=r,this.animationLoop=r&&r.animationLoop||new AnimationLoop,this.dispatcher=new Dispatcher(getWorkerPool(),this),this.imageManager=new ImageManager,this.glyphManager=new GlyphManager(o,a.localIdeographFontFamily),this.lineAtlas=new LineAtlas(256,512),this._layers={},this._order=[],this.sourceCaches={},this.zoomHistory={},this._loaded=!1,util.bindAll([\"_redoPlacement\"],this),this._resetUpdates(),this.setEventedParent(r),this.fire(\"dataloading\",{dataType:\"style\"});var s=this;this._rtlTextPluginCallback=rtlTextPlugin.registerForPluginAvailability(function(e){s.dispatcher.broadcast(\"loadRTLTextPlugin\",e.pluginBlobURL,e.errorCallback);for(var t in s.sourceCaches)s.sourceCaches[t].reload()});var n=function(e,t){if(e)i.fire(\"error\",{error:e});else if(t){if(a.validate&&validateStyle.emitErrors(i,validateStyle(t)))return;i._loaded=!0,i.stylesheet=t,i.updateClasses();for(var r in t.sources)i.addSource(r,t.sources[r],a);loadSprite(t.sprite,o,function(e,t){if(e)i.fire(\"error\",e);else if(t)for(var r in t)i.imageManager.addImage(r,t[r]);i.imageManager.setLoaded(!0)}),i.glyphManager.setURL(t.glyphs),i._resolve(),i.fire(\"data\",{dataType:\"style\"}),i.fire(\"style.load\")}};\"string\"==typeof t?ajax.getJSON(o(mapbox.normalizeStyleURL(t),ajax.ResourceType.Style),n):browser.frame(function(){return n(null,t)}),this.on(\"data\",function(e){if(\"source\"===e.dataType&&\"metadata\"===e.sourceDataType){var t=i.sourceCaches[e.sourceId];if(t){var r=t.getSource();if(r&&r.vectorLayerIds)for(var a in i._layers){var o=i._layers[a];o.source===r.id&&i._validateLayer(o)}}}})}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype._validateLayer=function(e){var t=this.sourceCaches[e.source];if(t){var r=e.sourceLayer;if(r){var a=t.getSource();(\"geojson\"===a.type||a.vectorLayerIds&&-1===a.vectorLayerIds.indexOf(r))&&this.fire(\"error\",{error:new Error('Source layer \"'+r+'\" does not exist on source \"'+a.id+'\" as specified by style layer \"'+e.id+'\"')})}}},t.prototype.loaded=function(){var e=this;if(!this._loaded)return!1;if(Object.keys(this._updatedSources).length)return!1;for(var t in e.sourceCaches)if(!e.sourceCaches[t].loaded())return!1;return!!this.imageManager.isLoaded()},t.prototype._resolve=function(){var e=this,t=deref(this.stylesheet.layers);this._order=t.map(function(e){return e.id}),this._layers={};for(var r=0,a=t;r<a.length;r+=1){var i=a[r];i=StyleLayer.create(i),i.setEventedParent(e,{layer:{id:i.id}}),e._layers[i.id]=i}this.dispatcher.broadcast(\"setLayers\",this._serializeLayers(this._order)),this.light=new Light(this.stylesheet.light)},t.prototype._serializeLayers=function(e){var t=this;return e.map(function(e){return t._layers[e].serialize()})},t.prototype._applyClasses=function(e,t){var r=this;if(this._loaded){e=e||[],t=t||{transition:!0};var a=this.stylesheet.transition||{},i=this._updatedAllPaintProps?this._layers:this._updatedPaintProps;for(var o in i){var s=r._layers[o],n=r._updatedPaintProps[o];if(r._updatedAllPaintProps||n.all)s.updatePaintTransitions(e,t,a,r.animationLoop,r.zoomHistory);else for(var l in n)r._layers[o].updatePaintTransition(l,e,t,a,r.animationLoop,r.zoomHistory)}this.light.updateLightTransitions(t,a,this.animationLoop)}},t.prototype._recalculate=function(e){var t=this;if(this._loaded){for(var r in t.sourceCaches)t.sourceCaches[r].used=!1;this._updateZoomHistory(e);for(var a=0,i=t._order;a<i.length;a+=1){var o=i[a],s=t._layers[o];s.recalculate(e),!s.isHidden(e)&&s.source&&(t.sourceCaches[s.source].used=!0)}this.light.recalculate(e);Math.floor(this.z)!==Math.floor(e)&&this.animationLoop.set(300),this.z=e}},t.prototype._updateZoomHistory=function(e){var t=this.zoomHistory;void 0===t.lastIntegerZoom&&(t.lastIntegerZoom=Math.floor(e),t.lastIntegerZoomTime=0,t.lastZoom=e),Math.floor(t.lastZoom)<Math.floor(e)?(t.lastIntegerZoom=Math.floor(e),t.lastIntegerZoomTime=Date.now()):Math.floor(t.lastZoom)>Math.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 a=Object.keys(this._updatedLayers),i=Object.keys(this._removedLayers);(a.length||i.length||this._updatedSymbolOrder)&&this._updateWorkerLayers(a,i);for(var o in r._updatedSources){var s=r._updatedSources[o];\"reload\"===s?r._reloadSource(o):\"clear\"===s&&r._clearSource(o)}this._applyClasses(e,t),this._resetUpdates(),this.fire(\"data\",{dataType:\"style\"})}},t.prototype._updateWorkerLayers=function(e,t){var r=this,a=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:a})},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.clone(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 a=r.filter(function(e){return!(e.command in supportedDiffOperations)});if(a.length>0)throw new Error(\"Unimplemented: \"+a.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.addImage=function(e,t){if(this.imageManager.getImage(e))return this.fire(\"error\",{error:new Error(\"An image with this name already exists.\")});this.imageManager.addImage(e,t),this.fire(\"data\",{dataType:\"style\"})},t.prototype.removeImage=function(e){if(!this.imageManager.getImage(e))return this.fire(\"error\",{error:new Error(\"No image with this name exists.\")});this.imageManager.removeImage(e),this.fire(\"data\",{dataType:\"style\"})},t.prototype.addSource=function(e,t,r){var a=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).join(\", \")+\".\");if(!([\"vector\",\"raster\",\"geojson\",\"video\",\"image\",\"canvas\"].indexOf(t.type)>=0&&this._validate(validateStyle.source,\"sources.\"+e,t,null,r))){var i=this.sourceCaches[e]=new SourceCache(e,t,this.dispatcher);i.style=this,i.setEventedParent(this,function(){return{isSourceLoaded:a.loaded(),source:i.serialize(),sourceId:e}}),i.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.fire(\"data\",{sourceDataType:\"metadata\",dataType:\"source\",sourceId: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 a=e.id;if(\"object\"==typeof e.source&&(this.addSource(a,e.source),e=util.clone(e),e=util.extend(e,{source:a})),!this._validate(validateStyle.layer,\"layers.\"+a,e,{arrayIndex:-1},r)){var i=StyleLayer.create(e);this._validateLayer(i),i.setEventedParent(this,{layer:{id:a}});var o=t?this._order.indexOf(t):this._order.length;if(this._order.splice(o,0,a),this._layers[a]=i,this._removedLayers[a]&&i.source){var s=this._removedLayers[a];delete this._removedLayers[a],s.type!==i.type?this._updatedSources[i.source]=\"clear\":(this._updatedSources[i.source]=\"reload\",this.sourceCaches[i.source].pause())}this._updateLayer(i),\"symbol\"===i.type&&(this._updatedSymbolOrder=!0),this.updateClasses(a)}},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 a=this._order.indexOf(e);this._order.splice(a,1);var i=t?this._order.indexOf(t):this._order.length;this._order.splice(i,0,e),\"symbol\"===r.type&&(this._updatedSymbolOrder=!0,r.source&&!this._updatedSources[r.source]&&(this._updatedSources[r.source]=\"reload\",this.sourceCaches[r.source].pause()))},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 a=this.getLayer(e);if(!a)return void this.fire(\"error\",{error:new Error(\"The layer '\"+e+\"' does not exist in the map's style and cannot have zoom extent.\")});a.minzoom===t&&a.maxzoom===r||(null!=t&&(a.minzoom=t),null!=r&&(a.maxzoom=r),this._updateLayer(a))},t.prototype.setFilter=function(e,t){this._checkLoaded();var r=this.getLayer(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 filtered.\")});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))},t.prototype.getFilter=function(e){return util.clone(this.getLayer(e).filter)},t.prototype.setLayoutProperty=function(e,t,r){this._checkLoaded();var a=this.getLayer(e);if(!a)return void this.fire(\"error\",{error:new Error(\"The layer '\"+e+\"' does not exist in the map's style and cannot be styled.\")});util.deepEqual(a.getLayoutProperty(t),r)||(a.setLayoutProperty(t,r),this._updateLayer(a))},t.prototype.getLayoutProperty=function(e,t){return this.getLayer(e).getLayoutProperty(t)},t.prototype.setPaintProperty=function(e,t,r,a){this._checkLoaded();var i=this.getLayer(e);if(!i)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(i.getPaintProperty(t,a),r)){var o=i.isPaintValueFeatureConstant(t);i.setPaintProperty(t,r,a);!(r&&MapboxGLFunction.isFunctionDefinition(r)&&\"$zoom\"!==r.property&&void 0!==r.property)&&o||this._updateLayer(i),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.sourceCaches[e.source].pause()),this._changed=!0},t.prototype._flattenRenderedFeatures=function(e){for(var t=this,r=[],a=this._order.length-1;a>=0;a--)for(var i=t._order[a],o=0,s=e;o<s.length;o+=1){var n=s[o],l=n[i];if(l)for(var u=0,d=l;u<d.length;u+=1){var h=d[u];r.push(h)}}return r},t.prototype.queryRenderedFeatures=function(e,t,r,a){var i=this;t&&t.filter&&this._validate(validateStyle.filter,\"queryRenderedFeatures.filter\",t.filter);var o={};if(t&&t.layers){if(!Array.isArray(t.layers))return this.fire(\"error\",{error:\"parameters.layers must be an Array.\"}),[];for(var s=0,n=t.layers;s<n.length;s+=1){var l=n[s],u=i._layers[l];if(!u)return i.fire(\"error\",{error:\"The layer '\"+l+\"' does not exist in the map's style and cannot be queried for features.\"}),[];o[u.source]=!0}}var d=[];for(var h in i.sourceCaches)if(!t.layers||o[h]){var c=QueryFeatures.rendered(i.sourceCaches[h],i._layers,e,t,r,a);d.push(c)}return this._flattenRenderedFeatures(d)},t.prototype.querySourceFeatures=function(e,t){t&&t.filter&&this._validate(validateStyle.filter,\"querySourceFeatures.filter\",t.filter);var r=this.sourceCaches[e];return r?QueryFeatures.source(r,t):[]},t.prototype.addSourceType=function(e,t,r){return getSourceType(e)?r(new Error('A source type called \"'+e+'\" already exists.')):(setSourceType(e,t),t.workerSourceURL?void this.dispatcher.broadcast(\"loadWorkerSource\",{name:e,url:t.workerSourceURL},r):r(null,null))},t.prototype.getLight=function(){return this.light.getLight()},t.prototype.setLight=function(e,t){this._checkLoaded();var r=this.light.getLight(),a=!1;for(var i in e)if(!util.deepEqual(e[i],r[i])){a=!0;break}if(a){var o=this.stylesheet.transition||{};this.light.setLight(e),this.light.updateLightTransitions(t||{transition:!0},o,this.animationLoop)}},t.prototype._validate=function(e,t,r,a,i){return(!i||!1!==i.validate)&&validateStyle.emitErrors(this,e.call(validateStyle,util.extend({key:t,style:this.serialize(),value:r,styleSpec:styleSpec},a)))},t.prototype._remove=function(){var e=this;rtlTextPlugin.evented.off(\"pluginAvailable\",this._rtlTextPluginCallback);for(var t in e.sourceCaches)e.sourceCaches[t].clearTiles();this.dispatcher.remove()},t.prototype._clearSource=function(e){this.sourceCaches[e].clearTiles()},t.prototype._reloadSource=function(e){this.sourceCaches[e].resume(),this.sourceCaches[e].reload()},t.prototype._updateSources=function(e){var t=this;for(var r in t.sourceCaches)t.sourceCaches[r].update(e)},t.prototype._redoPlacement=function(){var e=this;for(var t in e.sourceCaches)e.sourceCaches[t].redoPlacement()},t.prototype.getImages=function(e,t,r){this.imageManager.getImages(t.icons,r)},t.prototype.getGlyphs=function(e,t,r){this.glyphManager.getGlyphs(t.stacks,r)},t}(Evented);module.exports=Style;\n},{\"../render/glyph_manager\":75,\"../render/image_manager\":77,\"../render/line_atlas\":78,\"../source/query_features\":94,\"../source/rtl_text_plugin\":96,\"../source/source\":97,\"../source/source_cache\":98,\"../style-spec/deref\":107,\"../style-spec/diff\":108,\"../style-spec/function\":112,\"../style-spec/reference/latest\":123,\"../util/ajax\":201,\"../util/browser\":202,\"../util/dispatcher\":208,\"../util/evented\":210,\"../util/global_worker_pool\":212,\"../util/mapbox\":217,\"../util/util\":223,\"./animation_loop\":150,\"./light\":151,\"./load_sprite\":153,\"./style_layer\":158,\"./validate_style\":166}],157:[function(_dereq_,module,exports){\n\"use strict\";var createFunction=_dereq_(\"../style-spec/function\"),util=_dereq_(\"../util/util\"),StyleDeclaration=function(t,i){var o=this;if(this.value=util.clone(i),this.isFunction=createFunction.isFunctionDefinition(i),this.json=JSON.stringify(this.value),this.minimum=t.minimum,this.function=createFunction(this.value,t),this.isFeatureConstant=this.function.isFeatureConstant,this.isZoomConstant=this.function.isZoomConstant,this.isFeatureConstant||this.isZoomConstant){if(!this.isZoomConstant){this.stopZoomLevels=[];for(var n=0,s=o.value.stops;n<s.length;n+=1){var e=s[n];o.stopZoomLevels.indexOf(e[0])<0&&o.stopZoomLevels.push(e[0])}}}else{this.stopZoomLevels=[];for(var a=[],u=0,l=o.value.stops;u<l.length;u+=1){var r=l[u],c=r[0].zoom;o.stopZoomLevels.indexOf(c)<0&&(o.stopZoomLevels.push(c),a.push([c,a.length]))}this._functionInterpolationT=createFunction({type:\"exponential\",stops:a,base:i.base},{type:\"number\"})}};StyleDeclaration.prototype.calculate=function(t,i){var o=this.function(t&&t.zoom,i||{});return void 0!==this.minimum&&o<this.minimum?this.minimum:o},StyleDeclaration.prototype.calculateInterpolationT=function(t){return this.isFeatureConstant||this.isZoomConstant?0:this._functionInterpolationT(t&&t.zoom,{})},module.exports=StyleDeclaration;\n},{\"../style-spec/function\":112,\"../util/util\":223}],158:[function(_dereq_,module,exports){\n\"use strict\";function getDeclarationValue(t){return t.value}var util=_dereq_(\"../util/util\"),StyleTransition=_dereq_(\"./style_transition\"),StyleDeclaration=_dereq_(\"./style_declaration\"),styleSpec=_dereq_(\"../style-spec/reference/latest\"),validateStyle=_dereq_(\"./validate_style\"),parseColor=_dereq_(\"./../style-spec/util/parse_color\"),Evented=_dereq_(\"../util/evented\"),TRANSITION_SUFFIX=\"-transition\",StyleLayer=function(t){function i(i){var e=this;t.call(this),this.id=i.id,this.metadata=i.metadata,this.type=i.type,this.minzoom=i.minzoom,this.maxzoom=i.maxzoom,\"background\"!==i.type&&(this.source=i.source,this.sourceLayer=i[\"source-layer\"],this.filter=i.filter),this.paint={},this.layout={},this._paintSpecifications=styleSpec[\"paint_\"+this.type],this._layoutSpecifications=styleSpec[\"layout_\"+this.type],this._paintTransitions={},this._paintTransitionOptions={},this._paintDeclarations={},this._layoutDeclarations={},this._layoutFunctions={};var a,o,n={validate:!1};for(var r in i){var s=r.match(/^paint(?:\\.(.*))?$/);if(s){var l=s[1]||\"\";for(a in i[r])e.setPaintProperty(a,i[r][a],l,n)}}for(o in i.layout)e.setLayoutProperty(o,i.layout[o],n);for(a in e._paintSpecifications)e.paint[a]=e.getPaintValue(a);for(o in e._layoutSpecifications)e._updateLayoutValue(o)}return t&&(i.__proto__=t),i.prototype=Object.create(t&&t.prototype),i.prototype.constructor=i,i.prototype.setLayoutProperty=function(t,i,e){if(null==i)delete this._layoutDeclarations[t];else{var a=\"layers.\"+this.id+\".layout.\"+t;if(this._validate(validateStyle.layoutProperty,a,t,i,e))return;this._layoutDeclarations[t]=new StyleDeclaration(this._layoutSpecifications[t],i)}this._updateLayoutValue(t)},i.prototype.getLayoutProperty=function(t){return this._layoutDeclarations[t]&&this._layoutDeclarations[t].value},i.prototype.getLayoutValue=function(t,i,e){var a=this._layoutSpecifications[t],o=this._layoutDeclarations[t];return o?o.calculate(i,e):a.default},i.prototype.setPaintProperty=function(t,i,e,a){var o=\"layers.\"+this.id+(e?'[\"paint.'+e+'\"].':\".paint.\")+t;if(util.endsWith(t,TRANSITION_SUFFIX))if(this._paintTransitionOptions[e||\"\"]||(this._paintTransitionOptions[e||\"\"]={}),null===i||void 0===i)delete this._paintTransitionOptions[e||\"\"][t];else{if(this._validate(validateStyle.paintProperty,o,t,i,a))return;this._paintTransitionOptions[e||\"\"][t]=i}else if(this._paintDeclarations[e||\"\"]||(this._paintDeclarations[e||\"\"]={}),null===i||void 0===i)delete this._paintDeclarations[e||\"\"][t];else{if(this._validate(validateStyle.paintProperty,o,t,i,a))return;this._paintDeclarations[e||\"\"][t]=new StyleDeclaration(this._paintSpecifications[t],i)}},i.prototype.getPaintProperty=function(t,i){return i=i||\"\",util.endsWith(t,TRANSITION_SUFFIX)?this._paintTransitionOptions[i]&&this._paintTransitionOptions[i][t]:this._paintDeclarations[i]&&this._paintDeclarations[i][t]&&this._paintDeclarations[i][t].value},i.prototype.getPaintValue=function(t,i,e){var a=this._paintSpecifications[t],o=this._paintTransitions[t];return o?o.calculate(i,e):\"color\"===a.type&&a.default?parseColor(a.default):a.default},i.prototype.getPaintValueStopZoomLevels=function(t){var i=this._paintTransitions[t];return i?i.declaration.stopZoomLevels:[]},i.prototype.getLayoutValueStopZoomLevels=function(t){var i=this._layoutDeclarations[t];return i?i.stopZoomLevels:[]},i.prototype.getPaintInterpolationT=function(t,i){return this._paintTransitions[t].declaration.calculateInterpolationT(i)},i.prototype.getLayoutInterpolationT=function(t,i){return this._layoutDeclarations[t].calculateInterpolationT(i)},i.prototype.isPaintValueFeatureConstant=function(t){var i=this._paintTransitions[t];return!i||i.declaration.isFeatureConstant},i.prototype.isLayoutValueFeatureConstant=function(t){var i=this._layoutDeclarations[t];return!i||i.isFeatureConstant},i.prototype.isPaintValueZoomConstant=function(t){var i=this._paintTransitions[t];return!i||i.declaration.isZoomConstant},i.prototype.isLayoutValueZoomConstant=function(t){var i=this._layoutDeclarations[t];return!i||i.isZoomConstant},i.prototype.isHidden=function(t){return!!(this.minzoom&&t<this.minzoom)||(!!(this.maxzoom&&t>=this.maxzoom)||\"none\"===this.layout.visibility)},i.prototype.updatePaintTransitions=function(t,i,e,a,o){for(var n=this,r=util.extend({},this._paintDeclarations[\"\"]),s=0;s<t.length;s++)util.extend(r,n._paintDeclarations[t[s]]);var l;for(l in r)n._applyPaintDeclaration(l,r[l],i,e,a,o);for(l in n._paintTransitions)l in r||n._applyPaintDeclaration(l,null,i,e,a,o)},i.prototype.updatePaintTransition=function(t,i,e,a,o,n){for(var r=this,s=this._paintDeclarations[\"\"][t],l=0;l<i.length;l++){var u=r._paintDeclarations[i[l]];u&&u[t]&&(s=u[t])}this._applyPaintDeclaration(t,s,e,a,o,n)},i.prototype.recalculate=function(t){var i=this;for(var e in i._paintTransitions)i.paint[e]=i.getPaintValue(e,{zoom:t});for(var a in i._layoutFunctions)i.layout[a]=i.getLayoutValue(a,{zoom:t})},i.prototype.serialize=function(){var t=this,i={id:this.id,type:this.type,source:this.source,\"source-layer\":this.sourceLayer,metadata:this.metadata,minzoom:this.minzoom,maxzoom:this.maxzoom,filter:this.filter,layout:util.mapObject(this._layoutDeclarations,getDeclarationValue)};for(var e in t._paintDeclarations){i[\"\"===e?\"paint\":\"paint.\"+e]=util.mapObject(t._paintDeclarations[e],getDeclarationValue)}return util.filterObject(i,function(t,i){return void 0!==t&&!(\"layout\"===i&&!Object.keys(t).length)})},i.prototype._applyPaintDeclaration=function(t,i,e,a,o,n){var r=e.transition?this._paintTransitions[t]:void 0,s=this._paintSpecifications[t];if(null!==i&&void 0!==i||(i=new StyleDeclaration(s,s.default)),!r||r.declaration.json!==i.json){var l=util.extend({duration:300,delay:0},a,this.getPaintProperty(t+TRANSITION_SUFFIX)),u=this._paintTransitions[t]=new StyleTransition(s,i,r,l,n);u.instant()||(u.loopID=o.set(u.endTime-Date.now())),r&&o.cancel(r.loopID)}},i.prototype._updateLayoutValue=function(t){var i=this._layoutDeclarations[t];i&&i.isFunction?this._layoutFunctions[t]=!0:(delete this._layoutFunctions[t],this.layout[t]=this.getLayoutValue(t))},i.prototype._validate=function(t,i,e,a,o){return(!o||!1!==o.validate)&&validateStyle.emitErrors(this,t.call(validateStyle,{key:i,layerType:this.type,objectKey:e,value:a,styleSpec:styleSpec,style:{glyphs:!0,sprite:!0}}))},i.prototype.has3DPass=function(){return!1},i}(Evented);module.exports=StyleLayer;var subclasses={circle:_dereq_(\"./style_layer/circle_style_layer\"),fill:_dereq_(\"./style_layer/fill_style_layer\"),\"fill-extrusion\":_dereq_(\"./style_layer/fill_extrusion_style_layer\"),line:_dereq_(\"./style_layer/line_style_layer\"),symbol:_dereq_(\"./style_layer/symbol_style_layer\"),background:StyleLayer,raster:StyleLayer};StyleLayer.create=function(t){return new subclasses[t.type](t)};\n},{\"../style-spec/reference/latest\":123,\"../util/evented\":210,\"../util/util\":223,\"./../style-spec/util/parse_color\":128,\"./style_declaration\":157,\"./style_layer/circle_style_layer\":159,\"./style_layer/fill_extrusion_style_layer\":160,\"./style_layer/fill_style_layer\":161,\"./style_layer/line_style_layer\":162,\"./style_layer/symbol_style_layer\":163,\"./style_transition\":165,\"./validate_style\":166}],159:[function(_dereq_,module,exports){\n\"use strict\";var StyleLayer=_dereq_(\"../style_layer\"),CircleBucket=_dereq_(\"../../data/bucket/circle_bucket\"),ref=_dereq_(\"../../util/intersection_tests\"),multiPolygonIntersectsBufferedMultiPoint=ref.multiPolygonIntersectsBufferedMultiPoint,ref$1=_dereq_(\"../query_utils\"),getMaximumPaintValue=ref$1.getMaximumPaintValue,translateDistance=ref$1.translateDistance,translate=ref$1.translate,CircleStyleLayer=function(e){function t(){e.apply(this,arguments)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.createBucket=function(e){return new CircleBucket(e)},t.prototype.queryRadius=function(e){return getMaximumPaintValue(\"circle-radius\",this,e)+translateDistance(this.paint[\"circle-translate\"])},t.prototype.queryIntersectsFeature=function(e,t,r,i,a,n){var u=translate(e,this.getPaintValue(\"circle-translate\",{zoom:i},t.properties),this.getPaintValue(\"circle-translate-anchor\",{zoom:i},t.properties),a,n),l=this.getPaintValue(\"circle-radius\",{zoom:i},t.properties)*n;return multiPolygonIntersectsBufferedMultiPoint(u,r,l)},t}(StyleLayer);module.exports=CircleStyleLayer;\n},{\"../../data/bucket/circle_bucket\":43,\"../../util/intersection_tests\":214,\"../query_utils\":155,\"../style_layer\":158}],160:[function(_dereq_,module,exports){\n\"use strict\";var StyleLayer=_dereq_(\"../style_layer\"),FillExtrusionBucket=_dereq_(\"../../data/bucket/fill_extrusion_bucket\"),ref=_dereq_(\"../../util/intersection_tests\"),multiPolygonIntersectsMultiPolygon=ref.multiPolygonIntersectsMultiPolygon,ref$1=_dereq_(\"../query_utils\"),translateDistance=ref$1.translateDistance,translate=ref$1.translate,FillExtrusionStyleLayer=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.prototype.getPaintValue=function(e,r,i){var o=t.prototype.getPaintValue.call(this,e,r,i);return\"fill-extrusion-color\"===e&&o&&(o[3]=1),o},e.prototype.createBucket=function(t){return new FillExtrusionBucket(t)},e.prototype.queryRadius=function(){return translateDistance(this.paint[\"fill-extrusion-translate\"])},e.prototype.queryIntersectsFeature=function(t,e,r,i,o,n){var l=translate(t,this.getPaintValue(\"fill-extrusion-translate\",{zoom:i},e.properties),this.getPaintValue(\"fill-extrusion-translate-anchor\",{zoom:i},e.properties),o,n);return multiPolygonIntersectsMultiPolygon(l,r)},e.prototype.has3DPass=function(){return 0!==this.paint[\"fill-extrusion-opacity\"]&&\"none\"!==this.layout.visibility},e}(StyleLayer);module.exports=FillExtrusionStyleLayer;\n},{\"../../data/bucket/fill_extrusion_bucket\":45,\"../../util/intersection_tests\":214,\"../query_utils\":155,\"../style_layer\":158}],161:[function(_dereq_,module,exports){\n\"use strict\";var StyleLayer=_dereq_(\"../style_layer\"),FillBucket=_dereq_(\"../../data/bucket/fill_bucket\"),ref=_dereq_(\"../../util/intersection_tests\"),multiPolygonIntersectsMultiPolygon=ref.multiPolygonIntersectsMultiPolygon,ref$1=_dereq_(\"../query_utils\"),translateDistance=ref$1.translateDistance,translate=ref$1.translate,FillStyleLayer=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.prototype.getPaintValue=function(e,o,l){var i=this;if(\"fill-outline-color\"===e){if(void 0===this.getPaintProperty(\"fill-outline-color\"))return t.prototype.getPaintValue.call(this,\"fill-color\",o,l);for(var r=this._paintTransitions[\"fill-outline-color\"];r;){if(!(r&&r.declaration&&r.declaration.value))return t.prototype.getPaintValue.call(i,\"fill-color\",o,l);r=r.oldTransition}}return t.prototype.getPaintValue.call(this,e,o,l)},e.prototype.getPaintValueStopZoomLevels=function(e){return\"fill-outline-color\"===e&&void 0===this.getPaintProperty(\"fill-outline-color\")?t.prototype.getPaintValueStopZoomLevels.call(this,\"fill-color\"):t.prototype.getPaintValueStopZoomLevels.call(this,e)},e.prototype.getPaintInterpolationT=function(e,o){return\"fill-outline-color\"===e&&void 0===this.getPaintProperty(\"fill-outline-color\")?t.prototype.getPaintInterpolationT.call(this,\"fill-color\",o):t.prototype.getPaintInterpolationT.call(this,e,o)},e.prototype.isPaintValueFeatureConstant=function(e){return\"fill-outline-color\"===e&&void 0===this.getPaintProperty(\"fill-outline-color\")?t.prototype.isPaintValueFeatureConstant.call(this,\"fill-color\"):t.prototype.isPaintValueFeatureConstant.call(this,e)},e.prototype.isPaintValueZoomConstant=function(e){return\"fill-outline-color\"===e&&void 0===this.getPaintProperty(\"fill-outline-color\")?t.prototype.isPaintValueZoomConstant.call(this,\"fill-color\"):t.prototype.isPaintValueZoomConstant.call(this,e)},e.prototype.createBucket=function(t){return new FillBucket(t)},e.prototype.queryRadius=function(){return translateDistance(this.paint[\"fill-translate\"])},e.prototype.queryIntersectsFeature=function(t,e,o,l,i,r){var n=translate(t,this.getPaintValue(\"fill-translate\",{zoom:l},e.properties),this.getPaintValue(\"fill-translate-anchor\",{zoom:l},e.properties),i,r);return multiPolygonIntersectsMultiPolygon(n,o)},e}(StyleLayer);module.exports=FillStyleLayer;\n},{\"../../data/bucket/fill_bucket\":44,\"../../util/intersection_tests\":214,\"../query_utils\":155,\"../style_layer\":158}],162:[function(_dereq_,module,exports){\n\"use strict\";function getLineWidth(e,t){return t>0?t+2*e:e}function offsetLine(e,t){for(var i=[],r=new Point(0,0),n=0;n<e.length;n++){for(var a=e[n],u=[],o=0;o<a.length;o++){var s=a[o-1],l=a[o],p=a[o+1],f=0===o?r:l.sub(s)._unit()._perp(),c=o===a.length-1?r:p.sub(l)._unit()._perp(),y=f._add(c)._unit(),h=y.x*c.x+y.y*c.y;y._mult(1/h),u.push(y._mult(t)._add(l))}i.push(u)}return i}var Point=_dereq_(\"@mapbox/point-geometry\"),StyleLayer=_dereq_(\"../style_layer\"),LineBucket=_dereq_(\"../../data/bucket/line_bucket\"),ref=_dereq_(\"../../util/intersection_tests\"),multiPolygonIntersectsBufferedMultiLine=ref.multiPolygonIntersectsBufferedMultiLine,ref$1=_dereq_(\"../query_utils\"),getMaximumPaintValue=ref$1.getMaximumPaintValue,translateDistance=ref$1.translateDistance,translate=ref$1.translate,LineStyleLayer=function(e){function t(){e.apply(this,arguments)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.createBucket=function(e){return new LineBucket(e)},t.prototype.queryRadius=function(e){var t=e,i=getLineWidth(getMaximumPaintValue(\"line-width\",this,t),getMaximumPaintValue(\"line-gap-width\",this,t)),r=getMaximumPaintValue(\"line-offset\",this,t);return i/2+Math.abs(r)+translateDistance(this.paint[\"line-translate\"])},t.prototype.queryIntersectsFeature=function(e,t,i,r,n,a){var u=translate(e,this.getPaintValue(\"line-translate\",{zoom:r},t.properties),this.getPaintValue(\"line-translate-anchor\",{zoom:r},t.properties),n,a),o=a/2*getLineWidth(this.getPaintValue(\"line-width\",{zoom:r},t.properties),this.getPaintValue(\"line-gap-width\",{zoom:r},t.properties)),s=this.getPaintValue(\"line-offset\",{zoom:r},t.properties);return s&&(i=offsetLine(i,s*a)),multiPolygonIntersectsBufferedMultiLine(u,i,o)},t}(StyleLayer);module.exports=LineStyleLayer;\n},{\"../../data/bucket/line_bucket\":46,\"../../util/intersection_tests\":214,\"../query_utils\":155,\"../style_layer\":158,\"@mapbox/point-geometry\":2}],163:[function(_dereq_,module,exports){\n\"use strict\";var StyleLayer=_dereq_(\"../style_layer\"),SymbolBucket=_dereq_(\"../../data/bucket/symbol_bucket\"),SymbolStyleLayer=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.prototype.getLayoutValue=function(e,r,o){var n=t.prototype.getLayoutValue.call(this,e,r,o);if(\"auto\"!==n)return n;switch(e){case\"text-rotation-alignment\":case\"icon-rotation-alignment\":return\"line\"===this.getLayoutValue(\"symbol-placement\",r,o)?\"map\":\"viewport\";case\"text-pitch-alignment\":return this.getLayoutValue(\"text-rotation-alignment\",r,o);case\"icon-pitch-alignment\":return this.getLayoutValue(\"icon-rotation-alignment\",r,o);default:return n}},e.prototype.createBucket=function(t){return new SymbolBucket(t)},e.prototype.queryRadius=function(){return 0},e.prototype.queryIntersectsFeature=function(){return!1},e}(StyleLayer);module.exports=SymbolStyleLayer;\n},{\"../../data/bucket/symbol_bucket\":47,\"../style_layer\":158}],164:[function(_dereq_,module,exports){\n\"use strict\";var StyleLayer=_dereq_(\"./style_layer\"),util=_dereq_(\"../util/util\"),featureFilter=_dereq_(\"../style-spec/feature_filter\"),groupByLayout=_dereq_(\"../style-spec/group_by_layout\"),StyleLayerIndex=function(e){e&&this.replace(e)};StyleLayerIndex.prototype.replace=function(e){var r=this;this.symbolOrder=[];for(var t=0,i=e;t<i.length;t+=1){var a=i[t];\"symbol\"===a.type&&r.symbolOrder.push(a.id)}this._layerConfigs={},this._layers={},this.update(e,[])},StyleLayerIndex.prototype.update=function(e,r,t){for(var i=this,a=0,l=e;a<l.length;a+=1){var y=l[a];i._layerConfigs[y.id]=y;var s=i._layers[y.id]=StyleLayer.create(y);s.updatePaintTransitions({},{transition:!1}),s.filter=featureFilter(s.filter)}for(var o=0,u=r;o<u.length;o+=1){var n=u[o];delete i._layerConfigs[n],delete i._layers[n]}t&&(this.symbolOrder=t),this.familiesBySource={};for(var f=groupByLayout(util.values(this._layerConfigs)),p=0,d=f;p<d.length;p+=1){var h=d[p],c=h.map(function(e){return i._layers[e.id]}),v=c[0];if(!v.layout||\"none\"!==v.layout.visibility){var _=v.source||\"\",g=i.familiesBySource[_];g||(g=i.familiesBySource[_]={});var L=v.sourceLayer||\"_geojsonTileLayer\",m=g[L];m||(m=g[L]=[]),m.push(c)}}},module.exports=StyleLayerIndex;\n},{\"../style-spec/feature_filter\":110,\"../style-spec/group_by_layout\":113,\"../util/util\":223,\"./style_layer\":158}],165:[function(_dereq_,module,exports){\n\"use strict\";function interpZoomTransitioned(t,i,e){if(void 0!==t&&void 0!==i)return{from:t.to,fromScale:t.toScale,to:i.to,toScale:i.toScale,t:e}}var util=_dereq_(\"../util/util\"),interpolate=_dereq_(\"../style-spec/util/interpolate\"),fakeZoomHistory={lastIntegerZoom:0,lastIntegerZoomTime:0,lastZoom:0},StyleTransition=function(t,i,e,o,a){this.declaration=i,this.startTime=this.endTime=(new Date).getTime(),this.oldTransition=e,this.duration=o.duration||0,this.delay=o.delay||0,this.zoomTransitioned=\"piecewise-constant\"===t.function&&t.transition,this.interp=this.zoomTransitioned?interpZoomTransitioned:interpolate[t.type],this.zoomHistory=a||fakeZoomHistory,this.instant()||(this.endTime=this.startTime+this.duration+this.delay),e&&e.endTime<=this.startTime&&delete e.oldTransition};StyleTransition.prototype.instant=function(){return!this.oldTransition||!this.interp||0===this.duration&&0===this.delay},StyleTransition.prototype.calculate=function(t,i,e){var o=this._calculateTargetValue(t,i);if(this.instant())return o;if((e=e||Date.now())>=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\":127,\"../util/util\":223}],166:[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,o=e;t<o.length;t+=1){var s=o[t],i=s.message;r.fire(\"error\",{error:new Error(i)})}return!0}return!1};\n},{\"../style-spec/validate_style.min\":149}],167:[function(_dereq_,module,exports){\n\"use strict\";var Point=_dereq_(\"@mapbox/point-geometry\"),Anchor=function(t){function o(o,e,n,r){t.call(this,o,e),this.angle=n,void 0!==r&&(this.segment=r)}return t&&(o.__proto__=t),o.prototype=Object.create(t&&t.prototype),o.prototype.constructor=o,o.prototype.clone=function(){return new o(this.x,this.y,this.angle,this.segment)},o}(Point);module.exports=Anchor;\n},{\"@mapbox/point-geometry\":2}],168:[function(_dereq_,module,exports){\n\"use strict\";function checkMaxAngle(e,t,a,r,n){if(void 0===t.segment)return!0;for(var i=t,s=t.segment+1,f=0;f>-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<a/2;){var u=e[s-1],c=e[s],g=e[s+1];if(!g)return!1;var h=u.angleTo(c)-c.angleTo(g);for(h=Math.abs((h+3*Math.PI)%(2*Math.PI)-Math.PI),l.push({distance:f,angleDelta:h}),o+=h;f-l[0].distance>r;)o-=l.shift().angleDelta;if(o>n)return!1;s++,f+=c.dist(g)}return!0}module.exports=checkMaxAngle;\n},{}],169:[function(_dereq_,module,exports){\n\"use strict\";function clipLine(n,x,y,o,e){for(var r=[],t=0;t<n.length;t++)for(var i=n[t],u=void 0,d=0;d<i.length-1;d++){var P=i[d],w=i[d+1];P.x<x&&w.x<x||(P.x<x?P=new Point(x,P.y+(w.y-P.y)*((x-P.x)/(w.x-P.x)))._round():w.x<x&&(w=new Point(x,P.y+(w.y-P.y)*((x-P.x)/(w.x-P.x)))._round()),P.y<y&&w.y<y||(P.y<y?P=new Point(P.x+(w.x-P.x)*((y-P.y)/(w.y-P.y)),y)._round():w.y<y&&(w=new Point(P.x+(w.x-P.x)*((y-P.y)/(w.y-P.y)),y)._round()),P.x>=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_(\"@mapbox/point-geometry\");module.exports=clipLine;\n},{\"@mapbox/point-geometry\":2}],170:[function(_dereq_,module,exports){\n\"use strict\";var createStructArrayType=_dereq_(\"../util/struct_array\"),Point=_dereq_(\"@mapbox/point-geometry\"),CollisionBoxArray=createStructArrayType({members:[{type:\"Int16\",name:\"anchorPointX\"},{type:\"Int16\",name:\"anchorPointY\"},{type:\"Int16\",name:\"offsetX\"},{type:\"Int16\",name:\"offsetY\"},{type:\"Int16\",name:\"x1\"},{type:\"Int16\",name:\"y1\"},{type:\"Int16\",name:\"x2\"},{type:\"Int16\",name:\"y2\"},{type:\"Float32\",name:\"unadjustedMaxScale\"},{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\":220,\"@mapbox/point-geometry\":2}],171:[function(_dereq_,module,exports){\n\"use strict\";var CollisionFeature=function(t,e,i,o,a,n,s,l,r,d,u){var h=s.top*l-r,f=s.bottom*l+r,x=s.left*l-r,m=s.right*l+r;if(this.boxStartIndex=t.length,d){var _=f-h,b=m-x;if(_>0)if(_=Math.max(10*l,_),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,a,n)}else this._addLineCollisionBoxes(t,e,i,i.segment,b,_,o,a,n)}else t.emplaceBack(i.x,i.y,0,0,x,h,m,f,1/0,1/0,o,a,n,0,0,0,0,0);this.boxEndIndex=t.length};CollisionFeature.prototype._addLineCollisionBoxes=function(t,e,i,o,a,n,s,l,r){var d=n/2,u=Math.floor(a/d),h=Math.floor(u/2),f=-n/2,x=i,m=o+1,_=f,b=-a/2,v=b-a/8;do{if(--m<0){if(_>b)return;m=0;break}_-=e[m].dist(x),x=e[m]}while(_>v);for(var c=e[m].dist(e[m+1]),g=-h;g<u+h;g++){var p=g*d,C=b+p;if(p<0&&(C+=p),p>a&&(C+=p-a),!(C<_)){for(;_+c<C;){if(_+=c,++m+1>=e.length)return;c=e[m].dist(e[m+1])}var M=C-_,y=e[m],B=e[m+1],k=B.sub(y)._unit()._mult(M)._add(y)._round(),F=Math.max(Math.abs(C-f)-d/2,0),L=a/2/F;(g<0||g>=u)&&(L=Math.min(L,.99)),t.emplaceBack(k.x,k.y,k.x-i.x,k.y-i.y,-n/2,-n/2,n/2,n/2,L,L,s,l,r,0,0,0,0,0)}}},module.exports=CollisionFeature;\n},{}],172:[function(_dereq_,module,exports){\n\"use strict\";var Point=_dereq_(\"@mapbox/point-geometry\"),EXTENT=_dereq_(\"../data/extent\"),Grid=_dereq_(\"grid-index\"),intersectionTests=_dereq_(\"../util/intersection_tests\"),CollisionTile=function(e,t,i,a,r,o,n){void 0===o&&(o=new Grid(EXTENT,12,6)),void 0===n&&(n=new Grid(EXTENT,12,0)),this.angle=e,this.pitch=t,this.cameraToCenterDistance=i,this.cameraToTileDistance=a,this.grid=o,this.ignoredGrid=n,this.perspectiveRatio=1+.5*(a/i-1),this.minScale=.5/this.perspectiveRatio,this.maxScale=2/this.perspectiveRatio;var s=Math.sin(this.angle),l=Math.cos(this.angle);this.rotationMatrix=[l,-s,s,l],this.reverseRotationMatrix=[l,s,-s,l],this.yStretch=Math.max(1,a/(i*Math.cos(t/180*Math.PI))),this.collisionBoxArray=r,0===r.length&&(r.emplaceBack(),r.emplaceBack(0,0,0,0,0,-EXTENT,0,EXTENT,1/0,1/0,0,0,0,0,0,0,0,0,0),r.emplaceBack(EXTENT,0,0,0,0,-EXTENT,0,EXTENT,1/0,1/0,0,0,0,0,0,0,0,0,0),r.emplaceBack(0,0,0,0,-EXTENT,0,EXTENT,0,1/0,1/0,0,0,0,0,0,0,0,0,0),r.emplaceBack(0,EXTENT,0,0,-EXTENT,0,EXTENT,0,1/0,1/0,0,0,0,0,0,0,0,0,0)),this.tempCollisionBox=r.get(0),this.edges=[r.get(1),r.get(2),r.get(3),r.get(4)]};CollisionTile.deserialize=function(e,t){return new CollisionTile(e.angle,e.pitch,e.cameraToCenterDistance,e.cameraToTileDistance,t,new Grid(e.grid),new Grid(e.ignoredGrid))},CollisionTile.prototype.serialize=function(e){var t=this.grid.toArrayBuffer(),i=this.ignoredGrid.toArrayBuffer();return e&&(e.push(t),e.push(i)),{angle:this.angle,pitch:this.pitch,cameraToCenterDistance:this.cameraToCenterDistance,cameraToTileDistance:this.cameraToTileDistance,grid:t,ignoredGrid:i}},CollisionTile.prototype.placeCollisionFeature=function(e,t,i){for(var a=this,r=this.collisionBoxArray,o=this.minScale,n=this.rotationMatrix,s=this.yStretch,l=e.boxStartIndex;l<e.boxEndIndex;l++){var c=r.get(l),h=c.anchorPoint._matMult(n),x=h.x,m=h.y,p=x+c.x1*a.perspectiveRatio,y=m+c.y1*s*a.perspectiveRatio,g=x+c.x2*a.perspectiveRatio,d=m+c.y2*s*a.perspectiveRatio;c.bbox0=p,c.bbox1=y,c.bbox2=g,c.bbox3=d;var T=new Point(c.offsetX,c.offsetY)._matMult(n),u=T.x*T.x,v=T.y*T.y,M=v*s*s,f=Math.sqrt((u+M)/(u+v))||1;if(c.maxScale=c.unadjustedMaxScale*f,!t)for(var E=a.grid.query(p,y,g,d),S=0;S<E.length;S++){var P=r.get(E[S]),b=P.anchorPoint._matMult(n);if((o=a.getPlacementScale(o,h,c,b,P))>=a.maxScale)return o}if(i){var N=void 0;if(a.angle){var C=a.reverseRotationMatrix,w=new Point(c.x1,c.y1).matMult(C),X=new Point(c.x2,c.y1).matMult(C),B=new Point(c.x1,c.y2).matMult(C),G=new Point(c.x2,c.y2).matMult(C);N=a.tempCollisionBox,N.anchorPointX=c.anchorPoint.x,N.anchorPointY=c.anchorPoint.y,N.x1=Math.min(w.x,X.x,B.x,G.x),N.y1=Math.min(w.y,X.x,B.x,G.x),N.x2=Math.max(w.x,X.x,B.x,G.x),N.y2=Math.max(w.y,X.x,B.x,G.x),N.maxScale=c.maxScale}else N=c;for(var R=0;R<this.edges.length;R++){var q=a.edges[R];if((o=a.getPlacementScale(o,c.anchorPoint,N,q.anchorPoint,q))>=a.maxScale)return o}}}return o},CollisionTile.prototype.queryRenderedSymbols=function(e,t){var i={},a=[];if(0===e.length||0===this.grid.keys.length&&0===this.ignoredGrid.keys.length)return a;for(var r=this.collisionBoxArray,o=this.rotationMatrix,n=this.yStretch,s=[],l=1/0,c=1/0,h=-1/0,x=-1/0,m=0;m<e.length;m++)for(var p=e[m],y=0;y<p.length;y++){var g=p[y].matMult(o);l=Math.min(l,g.x),c=Math.min(c,g.y),h=Math.max(h,g.x),x=Math.max(x,g.y),s.push(g)}for(var d=this.grid.query(l,c,h,x),T=this.ignoredGrid.query(l,c,h,x),u=0;u<T.length;u++)d.push(T[u]);for(var v=t/this.perspectiveRatio,M=Math.pow(2,Math.ceil(Math.log(v)/Math.LN2*10)/10),f=0;f<d.length;f++){var E=r.get(d[f]),S=E.sourceLayerIndex,P=E.featureIndex;if(void 0===i[S]&&(i[S]={}),!i[S][P]&&!(M<E.placementScale||M>E.maxScale)){var b=E.anchorPoint.matMult(o),N=b.x+E.x1/v,C=b.y+E.y1/v*n,w=b.x+E.x2/v,X=b.y+E.y2/v*n,B=[new Point(N,C),new Point(w,C),new Point(w,X),new Point(N,X)];intersectionTests.polygonIntersectsPolygon(s,B)&&(i[S][P]=!0,a.push(d[f]))}}return a},CollisionTile.prototype.getPlacementScale=function(e,t,i,a,r){var o=t.x-a.x,n=t.y-a.y,s=(r.x1-i.x2)/o,l=(r.x2-i.x1)/o,c=(r.y1-i.y2)*this.yStretch/n,h=(r.y2-i.y1)*this.yStretch/n;(isNaN(s)||isNaN(l))&&(s=l=1),(isNaN(c)||isNaN(h))&&(c=h=1);var x=Math.min(Math.max(s,l),Math.max(c,h)),m=r.maxScale,p=i.maxScale;return x>m&&(x=m),x>p&&(x=p),x>e&&x>=r.placementScale&&(e=x),e},CollisionTile.prototype.insertCollisionFeature=function(e,t,i){for(var a=this,r=i?this.ignoredGrid:this.grid,o=this.collisionBoxArray,n=e.boxStartIndex;n<e.boxEndIndex;n++){var s=o.get(n);s.placementScale=t,t<a.maxScale&&(1===a.perspectiveRatio||s.maxScale>=1)&&r.insert(n,s.bbox0,s.bbox1,s.bbox2,s.bbox3)}},module.exports=CollisionTile;\n},{\"../data/extent\":48,\"../util/intersection_tests\":214,\"@mapbox/point-geometry\":2,\"grid-index\":22}],173:[function(_dereq_,module,exports){\n\"use strict\";function getAnchors(e,r,t,n,a,l,o,i,c){var h=n?.6*l*o:0,s=Math.max(n?n.right-n.left:0,a?a.right-a.left:0),u=0===e[0].x||e[0].x===c||0===e[0].y||e[0].y===c;r-s*o<r/4&&(r=s*o+r/4);var g=2*l;return resample(e,u?r/2*i%r:(s/2+g)*o*i%r,r,h,t,s*o,u,!1,c)}function resample(e,r,t,n,a,l,o,i,c){for(var h=l/2,s=0,u=0;u<e.length-1;u++)s+=e[u].dist(e[u+1]);for(var g=0,p=r-t,x=[],f=0;f<e.length-1;f++){for(var v=e[f],m=e[f+1],y=v.dist(m),A=m.angleTo(v);p+t<g+y;){p+=t;var d=(p-g)/y,k=interpolate(v.x,m.x,d),q=interpolate(v.y,m.y,d);if(k>=0&&k<c&&q>=0&&q<c&&p-h>=0&&p+h<=s){var M=new Anchor(k,q,A,f);M._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\":127,\"../symbol/anchor\":167,\"./check_max_angle\":168}],174:[function(_dereq_,module,exports){\n\"use strict\";module.exports=function(e){function t(t){g.push(e[t]),l++}function r(e,t,r){var n=u[e];return delete u[e],u[t]=n,g[n].geometry[0].pop(),g[n].geometry[0]=g[n].geometry[0].concat(r[0]),n}function n(e,t,r){var n=i[t];return delete i[t],i[e]=n,g[n].geometry[0].shift(),g[n].geometry[0]=r[0].concat(g[n].geometry[0]),n}function o(e,t,r){var n=r?t[0][t[0].length-1]:t[0][0];return e+\":\"+n.x+\":\"+n.y}for(var i={},u={},g=[],l=0,m=0;m<e.length;m++){var y=e[m],c=y.geometry,f=y.text;if(f){var a=o(f,c),s=o(f,c,!0);if(a in u&&s in i&&u[a]!==i[s]){var v=n(a,s,c),d=r(a,s,g[v].geometry);delete i[a],delete u[s],u[o(f,g[d].geometry,!0)]=d,g[v].geometry=null}else a in u?r(a,s,c):s in i?n(a,s,c):(t(m),i[a]=l-1,u[s]=l-1)}else t(m)}return g.filter(function(e){return e.geometry})};\n},{}],175:[function(_dereq_,module,exports){\n\"use strict\";function getLabelPlaneMatrix(e,t,a,n,r){var i=mat4.identity(new Float32Array(16));return t?(mat4.identity(i),mat4.scale(i,i,[1/r,1/r,1]),a||mat4.rotateZ(i,i,n.angle)):(mat4.scale(i,i,[n.width/2,-n.height/2,1]),mat4.translate(i,i,[1,-1,0]),mat4.multiply(i,i,e)),i}function getGlCoordMatrix(e,t,a,n,r){var i=mat4.identity(new Float32Array(16));return t?(mat4.multiply(i,i,e),mat4.scale(i,i,[r,r,1]),a||mat4.rotateZ(i,i,-n.angle)):(mat4.scale(i,i,[1,-1,1]),mat4.translate(i,i,[-1,-1,0]),mat4.scale(i,i,[2/n.width,2/n.height,1])),i}function project(e,t){var a=[e.x,e.y,0,1];vec4.transformMat4(a,a,t);var n=a[3];return{point:new Point(a[0]/n,a[1]/n),signedDistanceFromCamera:n}}function isVisible(e,t,a,n){var r=e[0]/e[3],i=e[1]/e[3];return r>=-a[0]&&r<=a[0]&&i>=-a[1]&&i<=a[1]&&n.frameHistory.isVisible(t)}function updateLineLabels(e,t,a,n,r,i,o,l,s,p){var m=n?e.textSizeData:e.iconSizeData,c=symbolSize.evaluateSizeForZoom(m,a.transform,p,n),u=[256/a.width*2+1,256/a.height*2+1],y=n?e.text.dynamicLayoutVertexArray:e.icon.dynamicLayoutVertexArray;y.clear();for(var g=e.lineVertexArray,d=n?e.placedGlyphArray:e.placedIconArray,f=0;f<d.length;f++){var h=d.get(f),x=[h.anchorX,h.anchorY,0,1];if(vec4.transformMat4(x,x,t),isVisible(x,h.placementZoom,u,a)){var v=x[3],b=1+.5*(v/a.transform.cameraToCenterDistance-1),L=symbolSize.evaluateSizeForFeature(m,c,h),A=o?L*b:L/b,G=new Point(h.anchorX,h.anchorY),S=project(G,r).point,P={},D=placeGlyphsAlongLine(h,A,!1,l,t,r,i,e.glyphOffsetArray,g,y,S,G,P);(D.notEnoughRoom||D.needsFlipping&&placeGlyphsAlongLine(h,A,!0,l,t,r,i,e.glyphOffsetArray,g,y,S,G,P).notEnoughRoom)&&hideGlyphs(h.numGlyphs,y)}else hideGlyphs(h.numGlyphs,y)}n?e.text.dynamicLayoutVertexBuffer.updateData(y.serialize()):e.icon.dynamicLayoutVertexBuffer.updateData(y.serialize())}function placeGlyphsAlongLine(e,t,a,n,r,i,o,l,s,p,m,c,u){var y,g=t/24,d=e.lineOffsetX*t,f=e.lineOffsetY*t;if(e.numGlyphs>1){var h=e.glyphStartIndex+e.numGlyphs,x=l.get(e.glyphStartIndex).offsetX,v=l.get(h-1).offsetX,b=e.lineStartIndex,L=e.lineStartIndex+e.lineLength,A=placeGlyphAlongLine(g*x,d,f,a,m,c,e.segment,b,L,s,i,u);if(!A)return{notEnoughRoom:!0};var G=placeGlyphAlongLine(g*v,d,f,a,m,c,e.segment,b,L,s,i,u);if(!G)return{notEnoughRoom:!0};var S=project(A.point,o).point,P=project(G.point,o).point;if(n&&!a&&(e.vertical?S.y<P.y:S.x>P.x))return{needsFlipping:!0};y=[A];for(var D=e.glyphStartIndex+1;D<h-1;D++){var I=l.get(D);y.push(placeGlyphAlongLine(g*I.offsetX,d,f,a,m,c,e.segment,b,L,s,i,u))}y.push(G)}else{if(n&&!a){var M=project(c,r).point,j=s.get(e.lineStartIndex+e.segment+1),w=project(j,r),F=w.signedDistanceFromCamera>0?w.point:projectTruncatedLineSegment(c,new Point(j.x,j.y),M,1,r);if(e.vertical?F.y>M.y:F.x<M.x)return{needsFlipping:!0}}var z=l.get(e.glyphStartIndex),_=placeGlyphAlongLine(g*z.offsetX,d,f,a,m,c,e.segment,e.lineStartIndex,e.lineStartIndex+e.lineLength,s,i,u);if(!_)return{notEnoughRoom:!0};y=[_]}for(var V=e.placementZoom,C=0,X=y;C<X.length;C+=1){var E=X[C];addDynamicAttributes(p,E.point,E.angle,V)}return{}}function projectTruncatedLineSegment(e,t,a,n,r){var i=project(e.add(e.sub(t)._unit()),r).point,o=a.sub(i);return a.add(o._mult(n/o.mag()))}function placeGlyphAlongLine(e,t,a,n,r,i,o,l,s,p,m,c){var u=n?e-t:e+t,y=u>0?1:-1,g=0;n&&(y*=-1,g=Math.PI),y<0&&(g+=Math.PI);for(var d=y>0?l+o:l+o+1,f=r,h=r,x=0,v=0,b=Math.abs(u);x+v<=b;){if((d+=y)<l||d>=s)return null;if(h=f,void 0===(f=c[d])){var L=project(p.get(d),m);if(L.signedDistanceFromCamera>0)f=c[d]=L.point;else{f=projectTruncatedLineSegment(0===x?i:new Point(p.get(d-y).x,p.get(d-y).y),new Point(p.get(d).x,p.get(d).y),h,b-x+1,m)}}x+=v,v=h.dist(f)}var A=(b-x)/v,G=f.sub(h),S=G.mult(A)._add(h);return S._add(G._unit()._perp()._mult(a*y)),{point:S,angle:g+Math.atan2(f.y-h.y,f.x-h.x)}}function hideGlyphs(e,t){for(var a=0;a<e;a++)addDynamicAttributes(t,offscreenPoint,0,25)}var Point=_dereq_(\"@mapbox/point-geometry\"),ref=_dereq_(\"@mapbox/gl-matrix\"),mat4=ref.mat4,vec4=ref.vec4,symbolSize=_dereq_(\"./symbol_size\"),ref$1=_dereq_(\"../data/bucket/symbol_bucket\"),addDynamicAttributes=ref$1.addDynamicAttributes;module.exports={updateLineLabels:updateLineLabels,getLabelPlaneMatrix:getLabelPlaneMatrix,getGlCoordMatrix:getGlCoordMatrix};var offscreenPoint=new Point(-1/0,-1/0);\n},{\"../data/bucket/symbol_bucket\":47,\"./symbol_size\":178,\"@mapbox/gl-matrix\":1,\"@mapbox/point-geometry\":2}],176:[function(_dereq_,module,exports){\n\"use strict\";function getIconQuads(t,e,i,o,n,a,r){var u,l,d,f,c=e.image,h=i.layout,x=e.top-1/c.pixelRatio,g=e.left-1/c.pixelRatio,p=e.bottom+1/c.pixelRatio,s=e.right+1/c.pixelRatio;if(\"none\"!==h[\"icon-text-fit\"]&&n){var P=s-g,_=p-x,w=h[\"text-size\"]/24,m=n.left*w,y=n.right*w,M=n.top*w,v=n.bottom*w,R=y-m,b=v-M,G=h[\"icon-text-fit-padding\"][0],B=h[\"icon-text-fit-padding\"][1],I=h[\"icon-text-fit-padding\"][2],L=h[\"icon-text-fit-padding\"][3],Q=\"width\"===h[\"icon-text-fit\"]?.5*(b-_):0,O=\"height\"===h[\"icon-text-fit\"]?.5*(R-P):0,A=\"width\"===h[\"icon-text-fit\"]||\"both\"===h[\"icon-text-fit\"]?R:P,D=\"height\"===h[\"icon-text-fit\"]||\"both\"===h[\"icon-text-fit\"]?b:_;u=new Point(m+O-L,M+Q-G),l=new Point(m+O+B+A,M+Q-G),d=new Point(m+O+B+A,M+Q+I+D),f=new Point(m+O-L,M+Q+I+D)}else u=new Point(g,x),l=new Point(s,x),d=new Point(s,p),f=new Point(g,p);var E=i.getLayoutValue(\"icon-rotate\",a,r)*Math.PI/180;if(E){var F=Math.sin(E),H=Math.cos(E),V=[H,-F,F,H];u._matMult(V),l._matMult(V),f._matMult(V),d._matMult(V)}return[{tl:u,tr:l,bl:f,br:d,tex:{x:c.textureRect.x-1,y:c.textureRect.y-1,w:c.textureRect.w+2,h:c.textureRect.h+2},writingMode:void 0,glyphOffset:[0,0]}]}function getGlyphQuads(t,e,i,o,n,a,r){for(var u=i.getLayoutValue(\"text-rotate\",n,a)*Math.PI/180,l=i.getLayoutValue(\"text-offset\",n,a).map(function(t){return 24*t}),d=e.positionedGlyphs,f=[],c=0;c<d.length;c++){var h=d[c],x=r[h.glyph];if(x){var g=x.rect;if(g){var p=GLYPH_PBF_BORDER+1,s=x.metrics.advance/2,P=o?[h.x+s,h.y]:[0,0],_=o?[0,0]:[h.x+s+l[0],h.y+l[1]],w=x.metrics.left-p-s+_[0],m=-x.metrics.top-p+_[1],y=w+g.w,M=m+g.h,v=new Point(w,m),R=new Point(y,m),b=new Point(w,M),G=new Point(y,M);if(o&&h.vertical){var B=new Point(-s,s),I=-Math.PI/2,L=new Point(5,0);v._rotateAround(I,B)._add(L),R._rotateAround(I,B)._add(L),b._rotateAround(I,B)._add(L),G._rotateAround(I,B)._add(L)}if(u){var Q=Math.sin(u),O=Math.cos(u),A=[O,-Q,Q,O];v._matMult(A),R._matMult(A),b._matMult(A),G._matMult(A)}f.push({tl:v,tr:R,bl:b,br:G,tex:g,writingMode:e.writingMode,glyphOffset:P})}}}return f}var Point=_dereq_(\"@mapbox/point-geometry\"),ref=_dereq_(\"../style/parse_glyph_pbf\"),GLYPH_PBF_BORDER=ref.GLYPH_PBF_BORDER;module.exports={getIconQuads:getIconQuads,getGlyphQuads:getGlyphQuads};\n},{\"../style/parse_glyph_pbf\":154,\"@mapbox/point-geometry\":2}],177:[function(_dereq_,module,exports){\n\"use strict\";function breakLines(e,t){for(var a=[],r=0,i=0,n=t;i<n.length;i+=1){var l=n[i];a.push(e.substring(r,l)),r=l}return r<e.length&&a.push(e.substring(r,e.length)),a}function shapeText(e,t,a,r,i,n,l,c,o,s){var h=e.trim();s===WritingMode.vertical&&(h=verticalizePunctuation(h));var g,u=[],p={positionedGlyphs:u,text:h,top:c[1],bottom:c[1],left:c[0],right:c[0],writingMode:s},b=rtlTextPlugin.processBidirectionalText;return g=b?b(h,determineLineBreaks(h,l,a,t)):breakLines(h,determineLineBreaks(h,l,a,t)),shapeLines(p,t,g,r,i,n,s,l,o),!!u.length&&p}function determineAverageLineWidth(e,t,a,r){for(var i=0,n=0;n<e.length;n++){var l=r[e.charCodeAt(n)];l&&(i+=l.metrics.advance+t)}return i/Math.max(1,Math.ceil(i/a))}function calculateBadness(e,t,a,r){var i=Math.pow(e-t,2);return r?e<t?i/2:2*i:i+Math.abs(a)*a}function calculatePenalty(e,t){var a=0;return 10===e&&(a-=1e4),40!==e&&65288!==e||(a+=50),41!==t&&65289!==t||(a+=50),a}function evaluateBreak(e,t,a,r,i,n){for(var l=null,c=calculateBadness(t,a,i,n),o=0,s=r;o<s.length;o+=1){var h=s[o],g=t-h.x,u=calculateBadness(g,a,i,n)+h.badness;u<=c&&(l=h,c=u)}return{index:e,x:t,priorBreak:l,badness:c}}function leastBadBreaks(e){return e?leastBadBreaks(e.priorBreak).concat(e.index):[]}function determineLineBreaks(e,t,a,r){if(!a)return[];if(!e)return[];for(var i=[],n=determineAverageLineWidth(e,t,a,r),l=0,c=0;c<e.length;c++){var o=e.charCodeAt(c),s=r[o];s&&!whitespace[o]&&(l+=s.metrics.advance+t),c<e.length-1&&(breakable[o]||scriptDetection.charAllowsIdeographicBreaking(o))&&i.push(evaluateBreak(c+1,l,n,i,calculatePenalty(o,e.charCodeAt(c+1)),!1))}return leastBadBreaks(evaluateBreak(e.length,l,n,i,0,!0))}function getAnchorAlignment(e){var t=.5,a=.5;switch(e){case\"right\":case\"top-right\":case\"bottom-right\":t=1;break;case\"left\":case\"top-left\":case\"bottom-left\":t=0}switch(e){case\"bottom\":case\"bottom-right\":case\"bottom-left\":a=1;break;case\"top\":case\"top-right\":case\"top-left\":a=0}return{horizontalAlign:t,verticalAlign:a}}function shapeLines(e,t,a,r,i,n,l,c,o){for(var s=0,h=-17,g=0,u=e.positionedGlyphs,p=\"right\"===n?1:\"left\"===n?0:.5,b=0,v=a;b<v.length;b+=1){var d=v[b];if(d=d.trim(),d.length){for(var f=u.length,k=0;k<d.length;k++){var m=d.charCodeAt(k),x=t[m];x&&(scriptDetection.charHasUprightVerticalOrientation(m)&&l!==WritingMode.horizontal?(u.push({glyph:m,x:s,y:0,vertical:!0}),s+=o+c):(u.push({glyph:m,x:s,y:h,vertical:!1}),s+=x.metrics.advance+c))}if(u.length!==f){var A=s-c;g=Math.max(A,g),justifyLine(u,t,f,u.length-1,p)}s=0,h+=r}else h+=r}var B=getAnchorAlignment(i),y=B.horizontalAlign,w=B.verticalAlign;align(u,p,y,w,g,r,a.length);var z=a.length*r;e.top+=-w*z,e.bottom=e.top+z,e.left+=-y*g,e.right=e.left+g}function justifyLine(e,t,a,r,i){if(i){var n=t[e[r].glyph];if(n)for(var l=n.metrics.advance,c=(e[r].x+l)*i,o=a;o<=r;o++)e[o].x-=c}}function align(e,t,a,r,i,n,l){for(var c=(t-a)*i,o=(-r*l+.5)*n,s=0;s<e.length;s++)e[s].x+=c,e[s].y+=o}function shapeIcon(e,t,a){var r=getAnchorAlignment(a),i=r.horizontalAlign,n=r.verticalAlign,l=t[0],c=t[1],o=l-e.displaySize[0]*i,s=o+e.displaySize[0],h=c-e.displaySize[1]*n;return{image:e,top:h,bottom:h+e.displaySize[1],left:o,right:s}}var scriptDetection=_dereq_(\"../util/script_detection\"),verticalizePunctuation=_dereq_(\"../util/verticalize_punctuation\"),rtlTextPlugin=_dereq_(\"../source/rtl_text_plugin\"),WritingMode={horizontal:1,vertical:2};module.exports={shapeText:shapeText,shapeIcon:shapeIcon,WritingMode:WritingMode};var whitespace={};whitespace[9]=!0,whitespace[10]=!0,whitespace[11]=!0,whitespace[12]=!0,whitespace[13]=!0,whitespace[32]=!0;var breakable={};breakable[10]=!0,breakable[32]=!0,breakable[38]=!0,breakable[40]=!0,breakable[41]=!0,breakable[43]=!0,breakable[45]=!0,breakable[47]=!0,breakable[173]=!0,breakable[183]=!0,breakable[8203]=!0,breakable[8208]=!0,breakable[8211]=!0,breakable[8231]=!0;\n},{\"../source/rtl_text_plugin\":96,\"../util/script_detection\":218,\"../util/verticalize_punctuation\":225}],178:[function(_dereq_,module,exports){\n\"use strict\";function evaluateSizeForFeature(e,o,t){var i=o;return e.isFeatureConstant?i.uSize:e.isZoomConstant?t.lowerSize/10:interpolate.number(t.lowerSize/10,t.upperSize/10,i.uSizeT)}function evaluateSizeForZoom(e,o,t,i){var a={};if(e.isZoomConstant||e.isFeatureConstant)if(e.isFeatureConstant&&!e.isZoomConstant){var n;if(\"interval\"===e.functionType)n=t.getLayoutValue(i?\"text-size\":\"icon-size\",{zoom:o.zoom});else{var r=\"interval\"===e.functionType?0:interpolationFactor(o.zoom,e.functionBase,e.coveringZoomRange[0],e.coveringZoomRange[1]),u=e.coveringStopValues[0],l=e.coveringStopValues[1];n=u+(l-u)*util.clamp(r,0,1)}a.uSize=n}else e.isFeatureConstant&&e.isZoomConstant&&(a.uSize=e.layoutSize);else{var s=interpolationFactor(o.zoom,e.functionBase,e.coveringZoomRange[0],e.coveringZoomRange[1]);a.uSizeT=util.clamp(s,0,1)}return a}var interpolate=_dereq_(\"../style-spec/util/interpolate\"),ref=_dereq_(\"../style-spec/function\"),interpolationFactor=ref.interpolationFactor,util=_dereq_(\"../util/util\");module.exports={evaluateSizeForFeature:evaluateSizeForFeature,evaluateSizeForZoom:evaluateSizeForZoom};\n},{\"../style-spec/function\":112,\"../style-spec/util/interpolate\":127,\"../util/util\":223}],179:[function(_dereq_,module,exports){\n\"use strict\";var rtlTextPlugin=_dereq_(\"../source/rtl_text_plugin\");module.exports=function(e,r,t,a){var l=r.getLayoutValue(\"text-transform\",t,a);return\"uppercase\"===l?e=e.toLocaleUpperCase():\"lowercase\"===l&&(e=e.toLocaleLowerCase()),rtlTextPlugin.applyArabicShaping&&(e=rtlTextPlugin.applyArabicShaping(e)),e};\n},{\"../source/rtl_text_plugin\":96}],180:[function(_dereq_,module,exports){\n\"use strict\";var DOM=_dereq_(\"../util/dom\"),Point=_dereq_(\"@mapbox/point-geometry\"),handlers={scrollZoom:_dereq_(\"./handler/scroll_zoom\"),boxZoom:_dereq_(\"./handler/box_zoom\"),dragRotate:_dereq_(\"./handler/drag_rotate\"),dragPan:_dereq_(\"./handler/drag_pan\"),keyboard:_dereq_(\"./handler/keyboard\"),doubleClickZoom:_dereq_(\"./handler/dblclick_zoom\"),touchZoomRotate:_dereq_(\"./handler/touch_zoom_rotate\")};module.exports=function(e,t){function n(e){h(\"mouseout\",e)}function o(t){e.stop(),L=DOM.mousePos(g,t),h(\"mousedown\",t),E=!0}function r(t){var n=e.dragRotate&&e.dragRotate.isActive();p&&!n&&h(\"contextmenu\",p),p=null,E=!1,h(\"mouseup\",t)}function a(t){if(!(e.dragPan&&e.dragPan.isActive()||e.dragRotate&&e.dragRotate.isActive())){for(var n=t.toElement||t.target;n&&n!==g;)n=n.parentNode;n===g&&h(\"mousemove\",t)}}function u(t){e.stop(),f(\"touchstart\",t),!t.touches||t.touches.length>1||(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 m(e){h(\"dblclick\",e),e.preventDefault()}function v(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\",m,!1),g.addEventListener(\"contextmenu\",v,!1)};\n},{\"../util/dom\":209,\"./handler/box_zoom\":189,\"./handler/dblclick_zoom\":190,\"./handler/drag_pan\":191,\"./handler/drag_rotate\":192,\"./handler/keyboard\":193,\"./handler/scroll_zoom\":194,\"./handler/touch_zoom_rotate\":195,\"@mapbox/point-geometry\":2}],181:[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_(\"@mapbox/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())<this._bearingSnap?this.resetNorth(t,e):this},e.prototype.getPitch=function(){return this.transform.pitch},e.prototype.setPitch=function(t,e){return this.jumpTo({pitch:t},e),this},e.prototype.fitBounds=function(t,e,i){if(e=util.extend({padding:{top:0,bottom:0,right:0,left:0},offset:[0,0],maxZoom:this.transform.maxZoom},e),\"number\"==typeof e.padding){var o=e.padding;e.padding={top:o,bottom:o,right:o,left:o}}if(!util.deepEqual(Object.keys(e.padding).sort(function(t,e){return t<e?-1:t>e?1:0}),[\"bottom\",\"left\",\"right\",\"top\"]))return util.warnOnce(\"options.padding must be a positive number, or an Object with keys 'bottom', 'left', 'right', 'top'\"),this;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),m=(h.width-2*r-2*Math.abs(s.x))/c.x,f=(h.height-2*a-2*Math.abs(s.y))/c.y;return f<0||m<0?(util.warnOnce(\"Map cannot fit within canvas with the given bounds, padding, and/or offset.\"),this):(e.center=h.unproject(p.add(u).div(2)),e.zoom=Math.min(h.scaleZoom(h.scale*Math.min(m,f)),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),void 0!==t.center&&(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),!1===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),m=LngLat.convert(t.center||c);this._normalizeCenter(m);var f,g,d=o.project(c),l=o.project(m).sub(d),v=o.zoomScale(s-n);return t.around&&(f=LngLat.convert(t.around),g=o.locationPoint(f)),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)),f)o.setLocationAtPoint(f,g);else{var i=o.zoomScale(o.zoom-n),c=s>n?Math.min(2,v):Math.max(.5,v),m=Math.pow(c,1-t),b=o.unproject(d.add(l.mult(t*m)).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?util.clamp(+t.zoom,s.minZoom,s.maxZoom):h,m=\"bearing\"in t?this._normalizeBearing(t.bearing,p):p,f=\"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),Z=function(t){return n(j)/n(j+_*t)},w=function(t){return z*((n(j)*r(j+_*t)-o(j))/L)/E},P=(i(1)-j)/_;if(Math.abs(E)<1e-6||isNaN(P)){if(Math.abs(z-M)<1e-6)return this.easeTo(t,e);var q=M<z?-1:1;P=Math.abs(Math.log(M/z))/_,w=function(){return 0},Z=function(t){return Math.exp(q*_*t)}}if(\"duration\"in t)t.duration=+t.duration;else{var B=\"screenSpeed\"in t?+t.screenSpeed/_:+t.speed;t.duration=1e3*P/B}return this.zooming=!0,this.rotating=p!==m,this.pitching=f!==u,this._prepareEase(e,!1),this._ease(function(t){var i=t*P,o=1/Z(i);s.zoom=h+s.scaleZoom(o),this.rotating&&(s.bearing=interpolate(p,m,t)),this.pitching&&(s.pitch=interpolate(u,f,t));var n=s.unproject(b.add(y.mult(w(i))).mult(o));s.setLocationAtPoint(s.renderWorldCopies?n.wrap():n,d),this._fireMoveEvents(e)},function(){return a._easeToEnd(e)},t),this},e.prototype.isEasing=function(){return!!this._abortFn},e.prototype.isMoving=function(){return this.moving},e.prototype.stop=function(){return this._abortFn&&(this._abortFn(),this._finishEase()),this},e.prototype._ease=function(t,e,i){this._finishFn=e,this._abortFn=browser.timed(function(e){t.call(this,i.easing(e)),1===e&&this._finishEase()},!1===i.animate?0:i.duration,this)},e.prototype._finishEase=function(){delete this._abortFn;var t=this._finishFn;delete this._finishFn,t.call(this)},e.prototype._normalizeBearing=function(t,e){t=util.wrap(t,-180,180);var i=Math.abs(t-e);return Math.abs(t-360-e)<i&&(t-=360),Math.abs(t+360-e)<i&&(t+=360),t},e.prototype._normalizeCenter=function(t){var e=this.transform;if(e.renderWorldCopies&&!e.lngRange){var i=t.lng-e.center.lng;t.lng+=i>180?-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\":58,\"../geo/lng_lat_bounds\":59,\"../style-spec/util/interpolate\":127,\"../util/browser\":202,\"../util/evented\":210,\"../util/util\":223,\"@mapbox/point-geometry\":2}],182:[function(_dereq_,module,exports){\n\"use strict\";var DOM=_dereq_(\"../../util/dom\"),util=_dereq_(\"../../util/util\"),config=_dereq_(\"../../util/config\"),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(){DOM.remove(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(){var t=this._editLink;t||(t=this._editLink=this._container.querySelector(\".mapbox-improve-map\"));var i=[{key:\"owner\",value:this.styleOwner},{key:\"id\",value:this.styleId},{key:\"access_token\",value:config.ACCESS_TOKEN}];if(t){var o=i.reduce(function(t,o,e){return o.value&&(t+=o.key+\"=\"+o.value+(e<i.length-1?\"&\":\"\")),t},\"?\");t.href=\"https://www.mapbox.com/feedback/\"+o+(this._map._hash?this._map._hash.getHashString(!0):\"\")}},AttributionControl.prototype._updateData=function(t){t&&\"metadata\"===t.sourceDataType&&(this._updateAttributions(),this._updateEditLink())},AttributionControl.prototype._updateAttributions=function(){if(this._map.style){var t=[];if(this._map.style.stylesheet){var i=this._map.style.stylesheet;this.styleOwner=i.owner,this.styleId=i.id}var o=this._map.style.sourceCaches;for(var e in o){var n=o[e].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 e=o+1;e<t.length;e++)if(t[e].indexOf(i)>=0)return!1;return!0}),this._container.innerHTML=t.join(\" | \"),this._editLink=null}},AttributionControl.prototype._updateCompact=function(){this._map.getCanvasContainer().offsetWidth<=640?this._container.classList.add(\"mapboxgl-compact\"):this._container.classList.remove(\"mapboxgl-compact\")},module.exports=AttributionControl;\n},{\"../../util/config\":206,\"../../util/dom\":209,\"../../util/util\":223}],183:[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\"),this._className=\"mapboxgl-ctrl\"};FullscreenControl.prototype.onAdd=function(e){return this._map=e,this._mapContainer=this._map.getContainer(),this._container=DOM.create(\"div\",this._className+\" mapboxgl-ctrl-group\"),this._checkFullscreenSupport()?this._setupUI():(this._container.style.display=\"none\",util.warnOnce(\"This device does not support fullscreen mode.\")),this._container},FullscreenControl.prototype.onRemove=function(){DOM.remove(this._container),this._map=null,window.document.removeEventListener(this._fullscreenchange,this._changeIcon)},FullscreenControl.prototype._checkFullscreenSupport=function(){return!!(window.document.fullscreenEnabled||window.document.mozFullScreenEnabled||window.document.msFullscreenEnabled||window.document.webkitFullscreenEnabled)},FullscreenControl.prototype._setupUI=function(){var e=this._fullscreenButton=DOM.create(\"button\",this._className+\"-icon \"+this._className+\"-fullscreen\",this._container);e.setAttribute(\"aria-label\",\"Toggle fullscreen\"),e.type=\"button\",this._fullscreenButton.addEventListener(\"click\",this._onClickFullscreen),window.document.addEventListener(this._fullscreenchange,this._changeIcon)},FullscreenControl.prototype._isFullscreen=function(){return this._fullscreen},FullscreenControl.prototype._changeIcon=function(){(window.document.fullscreenElement||window.document.mozFullScreenElement||window.document.webkitFullscreenElement||window.document.msFullscreenElement)===this._mapContainer!==this._fullscreen&&(this._fullscreen=!this._fullscreen,this._fullscreenButton.classList.toggle(this._className+\"-shrink\"),this._fullscreenButton.classList.toggle(this._className+\"-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\":209,\"../../util/util\":223,\"../../util/window\":204}],184:[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\"),LngLat=_dereq_(\"../../geo/lng_lat\"),Marker=_dereq_(\"../marker\"),defaultOptions={positionOptions:{enableHighAccuracy:!1,timeout:6e3},fitBoundsOptions:{maxZoom:15},trackUserLocation:!1,showUserLocation:!0},className=\"mapboxgl-ctrl\",supportsGeolocation,GeolocateControl=function(t){function o(o){t.call(this),this.options=util.extend({},defaultOptions,o),util.bindAll([\"_onSuccess\",\"_onError\",\"_finish\",\"_setupUI\",\"_updateCamera\",\"_updateMarker\",\"_onClickGeolocate\"],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(){void 0!==this._geolocationWatchID&&(window.navigator.geolocation.clearWatch(this._geolocationWatchID),this._geolocationWatchID=void 0),this.options.showUserLocation&&this._userLocationDotMarker.remove(),DOM.remove(this._container),this._map=void 0},o.prototype._onSuccess=function(t){if(this.options.trackUserLocation)switch(this._lastKnownPosition=t,this._watchState){case\"WAITING_ACTIVE\":case\"ACTIVE_LOCK\":case\"ACTIVE_ERROR\":this._watchState=\"ACTIVE_LOCK\",this._geolocateButton.classList.remove(\"mapboxgl-ctrl-geolocate-waiting\"),this._geolocateButton.classList.remove(\"mapboxgl-ctrl-geolocate-active-error\"),this._geolocateButton.classList.add(\"mapboxgl-ctrl-geolocate-active\");break;case\"BACKGROUND\":case\"BACKGROUND_ERROR\":this._watchState=\"BACKGROUND\",this._geolocateButton.classList.remove(\"mapboxgl-ctrl-geolocate-waiting\"),this._geolocateButton.classList.remove(\"mapboxgl-ctrl-geolocate-background-error\"),this._geolocateButton.classList.add(\"mapboxgl-ctrl-geolocate-background\")}this.options.showUserLocation&&\"OFF\"!==this._watchState&&this._updateMarker(t),this.options.trackUserLocation&&\"ACTIVE_LOCK\"!==this._watchState||this._updateCamera(t),this.options.showUserLocation&&this._dotElement.classList.remove(\"mapboxgl-user-location-dot-stale\"),this.fire(\"geolocate\",t),this._finish()},o.prototype._updateCamera=function(t){var o=new LngLat(t.coords.longitude,t.coords.latitude),e=t.coords.accuracy;this._map.fitBounds(o.toBounds(e),this.options.fitBoundsOptions,{geolocateSource:!0})},o.prototype._updateMarker=function(t){t?this._userLocationDotMarker.setLngLat([t.coords.longitude,t.coords.latitude]).addTo(this._map):this._userLocationDotMarker.remove()},o.prototype._onError=function(t){if(this.options.trackUserLocation)if(1===t.code)this._watchState=\"OFF\",this._geolocateButton.classList.remove(\"mapboxgl-ctrl-geolocate-waiting\"),this._geolocateButton.classList.remove(\"mapboxgl-ctrl-geolocate-active\"),this._geolocateButton.classList.remove(\"mapboxgl-ctrl-geolocate-active-error\"),this._geolocateButton.classList.remove(\"mapboxgl-ctrl-geolocate-background\"),this._geolocateButton.classList.remove(\"mapboxgl-ctrl-geolocate-background-error\"),void 0!==this._geolocationWatchID&&this._clearWatch();else switch(this._watchState){case\"WAITING_ACTIVE\":this._watchState=\"ACTIVE_ERROR\",this._geolocateButton.classList.remove(\"mapboxgl-ctrl-geolocate-active\"),this._geolocateButton.classList.add(\"mapboxgl-ctrl-geolocate-active-error\");break;case\"ACTIVE_LOCK\":this._watchState=\"ACTIVE_ERROR\",this._geolocateButton.classList.remove(\"mapboxgl-ctrl-geolocate-active\"),this._geolocateButton.classList.add(\"mapboxgl-ctrl-geolocate-active-error\"),this._geolocateButton.classList.add(\"mapboxgl-ctrl-geolocate-waiting\");break;case\"BACKGROUND\":this._watchState=\"BACKGROUND_ERROR\",this._geolocateButton.classList.remove(\"mapboxgl-ctrl-geolocate-background\"),this._geolocateButton.classList.add(\"mapboxgl-ctrl-geolocate-background-error\"),this._geolocateButton.classList.add(\"mapboxgl-ctrl-geolocate-waiting\")}\"OFF\"!==this._watchState&&this.options.showUserLocation&&this._dotElement.classList.add(\"mapboxgl-user-location-dot-stale\"),this.fire(\"error\",t),this._finish()},o.prototype._finish=function(){this._timeoutId&&clearTimeout(this._timeoutId),this._timeoutId=void 0},o.prototype._setupUI=function(t){var o=this;!1!==t&&(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.trackUserLocation&&(this._geolocateButton.setAttribute(\"aria-pressed\",\"false\"),this._watchState=\"OFF\"),this.options.showUserLocation&&(this._dotElement=DOM.create(\"div\",\"mapboxgl-user-location-dot\"),this._userLocationDotMarker=new Marker(this._dotElement),this.options.trackUserLocation&&(this._watchState=\"OFF\")),this._geolocateButton.addEventListener(\"click\",this._onClickGeolocate.bind(this)),this.options.trackUserLocation&&this._map.on(\"movestart\",function(t){t.geolocateSource||\"ACTIVE_LOCK\"!==o._watchState||(o._watchState=\"BACKGROUND\",o._geolocateButton.classList.add(\"mapboxgl-ctrl-geolocate-background\"),o._geolocateButton.classList.remove(\"mapboxgl-ctrl-geolocate-active\"),o.fire(\"trackuserlocationend\"))}))},o.prototype._onClickGeolocate=function(){if(this.options.trackUserLocation){switch(this._watchState){case\"OFF\":this._watchState=\"WAITING_ACTIVE\",this.fire(\"trackuserlocationstart\");break;case\"WAITING_ACTIVE\":case\"ACTIVE_LOCK\":case\"ACTIVE_ERROR\":case\"BACKGROUND_ERROR\":this._watchState=\"OFF\",this._geolocateButton.classList.remove(\"mapboxgl-ctrl-geolocate-waiting\"),this._geolocateButton.classList.remove(\"mapboxgl-ctrl-geolocate-active\"),this._geolocateButton.classList.remove(\"mapboxgl-ctrl-geolocate-active-error\"),this._geolocateButton.classList.remove(\"mapboxgl-ctrl-geolocate-background\"),this._geolocateButton.classList.remove(\"mapboxgl-ctrl-geolocate-background-error\"),this.fire(\"trackuserlocationend\");break;case\"BACKGROUND\":this._watchState=\"ACTIVE_LOCK\",this._geolocateButton.classList.remove(\"mapboxgl-ctrl-geolocate-background\"),this._lastKnownPosition&&this._updateCamera(this._lastKnownPosition),this.fire(\"trackuserlocationstart\")}switch(this._watchState){case\"WAITING_ACTIVE\":this._geolocateButton.classList.add(\"mapboxgl-ctrl-geolocate-waiting\"),this._geolocateButton.classList.add(\"mapboxgl-ctrl-geolocate-active\");break;case\"ACTIVE_LOCK\":this._geolocateButton.classList.add(\"mapboxgl-ctrl-geolocate-active\");break;case\"ACTIVE_ERROR\":this._geolocateButton.classList.add(\"mapboxgl-ctrl-geolocate-waiting\"),this._geolocateButton.classList.add(\"mapboxgl-ctrl-geolocate-active-error\");break;case\"BACKGROUND\":this._geolocateButton.classList.add(\"mapboxgl-ctrl-geolocate-background\");break;case\"BACKGROUND_ERROR\":this._geolocateButton.classList.add(\"mapboxgl-ctrl-geolocate-waiting\"),this._geolocateButton.classList.add(\"mapboxgl-ctrl-geolocate-background-error\")}\"OFF\"===this._watchState&&void 0!==this._geolocationWatchID?this._clearWatch():void 0===this._geolocationWatchID&&(this._geolocateButton.classList.add(\"mapboxgl-ctrl-geolocate-waiting\"),this._geolocateButton.setAttribute(\"aria-pressed\",\"true\"),this._geolocationWatchID=window.navigator.geolocation.watchPosition(this._onSuccess,this._onError,this.options.positionOptions))}else window.navigator.geolocation.getCurrentPosition(this._onSuccess,this._onError,this.options.positionOptions),this._timeoutId=setTimeout(this._finish,1e4)},o.prototype._clearWatch=function(){window.navigator.geolocation.clearWatch(this._geolocationWatchID),this._geolocationWatchID=void 0,this._geolocateButton.classList.remove(\"mapboxgl-ctrl-geolocate-waiting\"),this._geolocateButton.setAttribute(\"aria-pressed\",\"false\"),this.options.showUserLocation&&this._updateMarker(null)},o}(Evented);module.exports=GeolocateControl;\n},{\"../../geo/lng_lat\":58,\"../../util/dom\":209,\"../../util/evented\":210,\"../../util/util\":223,\"../../util/window\":204,\"../marker\":198}],185:[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){this._map=o,this._container=DOM.create(\"div\",\"mapboxgl-ctrl\");var t=DOM.create(\"a\",\"mapboxgl-ctrl-logo\");return t.target=\"_blank\",t.href=\"https://www.mapbox.com/\",t.setAttribute(\"aria-label\",\"Mapbox logo\"),this._container.appendChild(t),this._container.style.display=\"none\",this._map.on(\"sourcedata\",this._updateLogo),this._updateLogo(),this._container},LogoControl.prototype.onRemove=function(){DOM.remove(this._container),this._map.off(\"sourcedata\",this._updateLogo)},LogoControl.prototype.getDefaultPosition=function(){return\"bottom-left\"},LogoControl.prototype._updateLogo=function(o){o&&\"metadata\"!==o.sourceDataType||(this._container.style.display=this._logoRequired()?\"block\":\"none\")},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;\n},{\"../../util/dom\":209,\"../../util/util\":223}],186:[function(_dereq_,module,exports){\n\"use strict\";var DOM=_dereq_(\"../../util/dom\"),util=_dereq_(\"../../util/util\"),DragRotateHandler=_dereq_(\"../handler/drag_rotate\"),NavigationControl=function(){var t=this;util.bindAll([\"_rotateCompassArrow\"],this),this._container=DOM.create(\"div\",\"mapboxgl-ctrl mapboxgl-ctrl-group\"),this._container.addEventListener(\"contextmenu\",function(t){return t.preventDefault()}),this._zoomInButton=this._createButton(\"mapboxgl-ctrl-icon mapboxgl-ctrl-zoom-in\",\"Zoom In\",function(){return t._map.zoomIn()}),this._zoomOutButton=this._createButton(\"mapboxgl-ctrl-icon mapboxgl-ctrl-zoom-out\",\"Zoom Out\",function(){return t._map.zoomOut()}),this._compass=this._createButton(\"mapboxgl-ctrl-icon mapboxgl-ctrl-compass\",\"Reset North\",function(){return t._map.resetNorth()}),this._compassArrow=DOM.create(\"span\",\"mapboxgl-ctrl-compass-arrow\",this._compass)};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._map.on(\"rotate\",this._rotateCompassArrow),this._rotateCompassArrow(),this._handler=new DragRotateHandler(t,{button:\"left\",element:this._compass,pitchWithRotate:!1}),this._handler.enable(),this._container},NavigationControl.prototype.onRemove=function(){DOM.remove(this._container),this._map.off(\"rotate\",this._rotateCompassArrow),delete this._map,this._handler.disable(),delete this._handler},NavigationControl.prototype._createButton=function(t,o,r){var e=DOM.create(\"button\",t,this._container);return e.type=\"button\",e.setAttribute(\"aria-label\",o),e.addEventListener(\"click\",r),e},module.exports=NavigationControl;\n},{\"../../util/dom\":209,\"../../util/util\":223,\"../handler/drag_rotate\":192}],187:[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 l=3.2808*a;if(l>5280){setScale(e,n,l/5280,\"mi\")}else setScale(e,n,l,\"ft\")}else if(o&&\"nautical\"===o.unit){var r=a/1852;setScale(e,n,r,\"nm\")}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=Math.PI/180,n=t.lat*o,i=e.lat*o,a=Math.sin(n)*Math.sin(i)+Math.cos(n)*Math.cos(i)*Math.cos((e.lng-t.lng)*o);return 6371e3*Math.acos(Math.min(a,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(){DOM.remove(this._container),this._map.off(\"move\",this._onMove),this._map=void 0},module.exports=ScaleControl;\n},{\"../../util/dom\":209,\"../../util/util\":223}],188:[function(_dereq_,module,exports){\n\"use strict\";\n},{}],189:[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&&(DOM.remove(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\":59,\"../../util/dom\":209,\"../../util/util\":223,\"../../util/window\":204}],190:[function(_dereq_,module,exports){\n\"use strict\";var util=_dereq_(\"../../util/util\"),DoubleClickZoomHandler=function(l){this._map=l,util.bindAll([\"_onDblClick\"],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(l){this._map.zoomTo(this._map.getZoom()+(l.originalEvent.shiftKey?-1:1),{around:l.lngLat},l)},module.exports=DoubleClickZoomHandler;\n},{\"../../util/util\":223}],191:[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;return!(!e.boxZoom||!e.boxZoom.isActive())||(!(!e.dragRotate||!e.dragRotate.isActive())||(t.touches?t.touches.length>1:!!t.ctrlKey||\"mousemove\"!==t.type&&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;\n},{\"../../util/dom\":209,\"../../util/util\":223,\"../../util/window\":204}],192:[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=e.element||t.getCanvasContainer(),this._button=e.button||\"right\",this._bearingSnap=e.bearingSnap||0,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){if(!(this._map.boxZoom&&this._map.boxZoom.isActive()||this._map.dragPan&&this._map.dragPan.isActive()||this.isActive())){if(\"right\"===this._button){var e=t.ctrlKey?0:2,i=t.button;if(void 0!==window.InstallTrigger&&2===t.button&&t.ctrlKey&&window.navigator.platform.toUpperCase().indexOf(\"MAC\")>=0&&(i=0),i!==e)return}else if(t.ctrlKey||0!==t.button)return;DOM.disableDrag(),window.document.addEventListener(\"mousemove\",this._onMove,{capture:!0}),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){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(window.document.removeEventListener(\"mousemove\",this._onMove,{capture:!0}),window.document.removeEventListener(\"mouseup\",this._onUp),window.removeEventListener(\"blur\",this._onUp),DOM.enableDrag(),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)<e._bearingSnap?i.resetNorth({noMoveStart:!0},{originalEvent:t}):(e._map.moving=!1,e._fireEvent(\"moveend\",t)),e._pitchWithRotate&&e._fireEvent(\"pitchend\",t)};if(r.length<2)return void a();var o=r[0],s=r[r.length-1],h=r[r.length-2],_=i._normalizeBearing(n,h[1]),p=s[1]-o[1],v=p<0?-1:1,d=(s[0]-o[0])/1e3;if(0===p||0===d)return void a();var l=Math.abs(p*(inertiaLinearity/d));l>inertiaMaxSpeed&&(l=inertiaMaxSpeed);var u=l/(inertiaDeceleration*inertiaLinearity);_+=v*l*(u/2),Math.abs(i._normalizeBearing(_,0))<this._bearingSnap&&(_=i._normalizeBearing(0,_)),i.rotateTo(_,{duration:1e3*u,easing:inertiaEasing,noMoveStart:!0},{originalEvent:t})}},DragRotateHandler.prototype._fireEvent=function(t,e){return this._map.fire(t,{originalEvent:e})},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;\n},{\"../../util/dom\":209,\"../../util/util\":223,\"../../util/window\":204}],193:[function(_dereq_,module,exports){\n\"use strict\";function easeOut(e){return e*(2-e)}var util=_dereq_(\"../../util/util\"),panStep=100,bearingStep=15,pitchStep=10,KeyboardHandler=function(e){this._map=e,this._el=e.getCanvasContainer(),util.bindAll([\"_onKeyDown\"],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(),l={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(l,{originalEvent:e})}},module.exports=KeyboardHandler;\n},{\"../../util/util\":223}],194:[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=-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=0;\"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\":202,\"../../util/dom\":209,\"../../util/util\":223,\"../../util/window\":204}],195:[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=10,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;Math.abs(r)>significantRotateThreshold?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();t.length>2&&e-t[0][0]>160;)t.shift()},module.exports=TouchZoomRotateHandler;\n},{\"../../util/dom\":209,\"../../util/util\":223,\"../../util/window\":204}],196:[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.getHashString=function(t){var a=this._map.getCenter(),h=Math.round(100*this._map.getZoom())/100,e=Math.max(0,Math.ceil(Math.log(h)/Math.LN2)),n=Math.round(a.lng*Math.pow(10,e))/Math.pow(10,e),o=Math.round(a.lat*Math.pow(10,e))/Math.pow(10,e),i=this._map.getBearing(),s=this._map.getPitch(),r=\"\";return r+=t?\"#/\"+n+\"/\"+o+\"/\"+h:\"#\"+h+\"/\"+o+\"/\"+n,(i||s)&&(r+=\"/\"+Math.round(10*i)/10),s&&(r+=\"/\"+Math.round(s)),r},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.getHashString();window.history.replaceState(\"\",\"\",t)},module.exports=Hash;\n},{\"../util/util\":223,\"../util/window\":204}],197:[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\"),ref=_dereq_(\"../util/window\"),HTMLImageElement=ref.HTMLImageElement,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_(\"@mapbox/point-geometry\"),AttributionControl=_dereq_(\"./control/attribution_control\"),LogoControl=_dereq_(\"./control/logo_control\"),isSupported=_dereq_(\"mapbox-gl-supported\");_dereq_(\"./events\");var 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,maxTileCacheSize:null,transformRequest:null},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 r=new Transform(e.minZoom,e.maxZoom,e.renderWorldCopies);t.call(this,r,e),this._interactive=e.interactive,this._maxTileCacheSize=e.maxTileCacheSize,this._failIfMajorPerformanceCaveat=e.failIfMajorPerformanceCaveat,this._preserveDrawingBuffer=e.preserveDrawingBuffer,this._trackResize=e.trackResize,this._bearingSnap=e.bearingSnap,this._refreshExpiredTiles=e.refreshExpiredTiles;var i=e.transformRequest;if(this._transformRequest=i?function(t,e){return i(t,e)||{url:t}}:function(t){return{url:t}},\"string\"==typeof e.container){var s=window.document.getElementById(e.container);if(!s)throw new Error(\"Container '\"+e.container+\"' not found.\");this._container=s}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,{localIdeographFontFamily:e.localIdeographFontFamily}),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),r=this._controlPositions[e];return-1!==e.indexOf(\"bottom\")?r.insertBefore(o,r.firstChild):r.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={},r=0;r<t.length;r++)\"\"!==t[r]&&(o[t[r]]=!0);return this._classes=Object.keys(o),this._classOptions=e,this.style&&this.style.updateClasses(),this._update(!0)},e.prototype.hasClass=function(t){return util.warnOnce(\"Style classes are deprecated and will be removed in an upcoming release of Mapbox GL JS.\"),this._classes.indexOf(t)>=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.getMaxBounds=function(){return this.transform.latRange&&2===this.transform.latRange.length&&this.transform.lngRange&&2===this.transform.lngRange.length?new LngLatBounds([this.transform.lngRange[0],this.transform.latRange[0]],[this.transform.lngRange[1],this.transform.latRange[1]]):null},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=null,this.transform.latRange=null,this._update());return this},e.prototype.setMinZoom=function(t){if((t=null===t||void 0===t?defaultMinZoom:t)>=defaultMinZoom&&t<=this.transform.maxZoom)return this.transform.minZoom=t,this._update(),this.getZoom()<t&&this.setZoom(t),this;throw new Error(\"minZoom must be between \"+defaultMinZoom+\" and the current maxZoom, inclusive\")},e.prototype.getMinZoom=function(){return this.transform.minZoom},e.prototype.setMaxZoom=function(t){if((t=null===t||void 0===t?defaultMaxZoom:t)>=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,r){var i=this;if(void 0===r)return t.prototype.on.call(this,e,o);var s=function(){if(\"mouseenter\"===e||\"mouseover\"===e){var t=!1;return{layer:o,listener:r,delegates:{mousemove:function(s){var n=i.getLayer(o)?i.queryRenderedFeatures(s.point,{layers:[o]}):[];n.length?t||(t=!0,r.call(i,util.extend({features:n},s,{type:e}))):t=!1},mouseout:function(){t=!1}}}}if(\"mouseleave\"===e||\"mouseout\"===e){var s=!1;return{layer:o,listener:r,delegates:{mousemove:function(t){(i.getLayer(o)?i.queryRenderedFeatures(t.point,{layers:[o]}):[]).length?s=!0:s&&(s=!1,r.call(i,util.extend({},t,{type:e})))},mouseout:function(t){s&&(s=!1,r.call(i,util.extend({},t,{type:e})))}}}}var n=function(t){var e=i.getLayer(o)?i.queryRenderedFeatures(t.point,{layers:[o]}):[];e.length&&r.call(i,util.extend({features:e},t))};return{layer:o,listener:r,delegates:(a={},a[e]=n,a)};var a}();this._delegatedListeners=this._delegatedListeners||{},this._delegatedListeners[e]=this._delegatedListeners[e]||[],this._delegatedListeners[e].push(s);for(var n in s.delegates)i.on(n,s.delegates[n]);return this},e.prototype.off=function(e,o,r){var i=this;if(void 0===r)return t.prototype.off.call(this,e,o);if(this._delegatedListeners&&this._delegatedListeners[e])for(var s=this._delegatedListeners[e],n=0;n<s.length;n++){var a=s[n];if(a.layer===o&&a.listener===r){for(var h in a.delegates)i.off(h,a.delegates[h]);return s.splice(n,1),i}}return this},e.prototype.queryRenderedFeatures=function(){for(var t=[],e=arguments.length;e--;)t[e]=arguments[e];var o,r={};return 2===t.length?(o=arguments[0],r=arguments[1]):1===t.length&&function(t){return t instanceof Point||Array.isArray(t)}(t[0])?o=t[0]:1===t.length&&(r=t[0]),this.style?this.style.queryRenderedFeatures(this._makeQueryGeometry(o),r,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;if(t instanceof Point||\"number\"==typeof t[0]){o=[Point.convert(t)]}else{var r=[Point.convert(t[0]),Point.convert(t[1])];o=[r[0],new Point(r[1].x,r[0].y),r[1],new Point(r[0].x,r[1].y),r[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){if((!e||!1!==e.diff&&!e.localIdeographFontFamily)&&this.style&&t&&!(t instanceof Style)&&\"string\"!=typeof t)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),this.off(\"move\",this.style._redoPlacement)),t?(this.style=t instanceof Style?t:new Style(t,this,e||{}),this.style.setEventedParent(this,{style:this.style}),this.on(\"rotate\",this.style._redoPlacement),this.on(\"pitch\",this.style._redoPlacement),this.on(\"move\",this.style._redoPlacement),this):(this.style=null,this)},e.prototype.getStyle=function(){if(this.style)return this.style.serialize()},e.prototype.isStyleLoaded=function(){return this.style?this.style.loaded():util.warnOnce(\"There is no style added to the map.\")},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.areTilesLoaded=function(){var t=this.style&&this.style.sourceCaches;for(var e in t){var o=t[e],r=o._tiles;for(var i in r){var s=r[i];if(\"loaded\"!==s.state&&\"errored\"!==s.state)return!1}}return!0},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){void 0===o&&(o={});var r=o.pixelRatio;void 0===r&&(r=1);var i=o.sdf;if(void 0===i&&(i=!1),e instanceof HTMLImageElement)e=browser.getImageData(e);else if(void 0===e.width||void 0===e.height)return this.fire(\"error\",{error:new Error(\"Invalid arguments to map.addImage(). The second argument must be an `HTMLImageElement`, `ImageData`, or object with `width`, `height`, and `data` properties with the same format as `ImageData`\")});this.style.addImage(t,{data:e,pixelRatio:r,sdf:i})},e.prototype.removeImage=function(t){this.style.removeImage(t)},e.prototype.loadImage=function(t,e){ajax.getImage(this._transformRequest(t,ajax.ResourceType.Image),e)},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,r){return this.style.setPaintProperty(t,e,o,r),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 r=this._controlContainer=DOM.create(\"div\",\"mapboxgl-control-container\",t),i=this._controlPositions={};[\"top-left\",\"top-right\",\"bottom-left\",\"bottom-right\"].forEach(function(t){i[t]=DOM.create(\"div\",\"mapboxgl-ctrl-\"+t,r)})},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);if(!e)return void this.fire(\"error\",{error:new Error(\"Failed to initialize WebGL\")});this.painter=new Painter(e,this.transform)},e.prototype._contextLost=function(t){t.preventDefault(),this._frameId&&(browser.cancelFrame(this._frameId),this._frameId=null),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._frameId=null,this.setStyle(null),void 0!==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\":58,\"../geo/lng_lat_bounds\":59,\"../geo/transform\":60,\"../render/painter\":79,\"../style/animation_loop\":150,\"../style/style\":156,\"../util/ajax\":201,\"../util/browser\":202,\"../util/dom\":209,\"../util/util\":223,\"../util/window\":204,\"./bind_handlers\":180,\"./camera\":181,\"./control/attribution_control\":182,\"./control/logo_control\":185,\"./events\":188,\"./hash\":196,\"@mapbox/point-geometry\":2,\"mapbox-gl-supported\":28}],198:[function(_dereq_,module,exports){\n\"use strict\";var DOM=_dereq_(\"../util/dom\"),LngLat=_dereq_(\"../geo/lng_lat\"),Point=_dereq_(\"@mapbox/point-geometry\"),smartWrap=_dereq_(\"../util/smart_wrap\"),ref=_dereq_(\"../util/util\"),bindAll=ref.bindAll,Marker=function(t,e){this._offset=Point.convert(e&&e.offset||[0,0]),bindAll([\"_update\",\"_onMapClick\"],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),delete this._map),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._pos=null,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&&(\"offset\"in t.options||(t.options.offset=this._offset),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;return t?(t.isOpen()?t.remove():t.addTo(this._map),this):this},Marker.prototype._update=function(t){this._map&&(this._map.transform.renderWorldCopies&&(this._lngLat=smartWrap(this._lngLat,this._pos,this._map.transform)),this._pos=this._map.project(this._lngLat)._add(this._offset),t&&\"moveend\"!==t.type||(this._pos=this._pos.round()),DOM.setTransform(this._element,\"translate(-50%, -50%) translate(\"+this._pos.x+\"px, \"+this._pos.y+\"px)\"))},module.exports=Marker;\n},{\"../geo/lng_lat\":58,\"../util/dom\":209,\"../util/smart_wrap\":219,\"../util/util\":223,\"@mapbox/point-geometry\":2}],199:[function(_dereq_,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(t instanceof Point||Array.isArray(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))}var util=_dereq_(\"../util/util\"),Evented=_dereq_(\"../util/evented\"),DOM=_dereq_(\"../util/dom\"),LngLat=_dereq_(\"../geo/lng_lat\"),Point=_dereq_(\"@mapbox/point-geometry\"),window=_dereq_(\"../util/window\"),smartWrap=_dereq_(\"../util/smart_wrap\"),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&&DOM.remove(this._content),this._container&&(DOM.remove(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._pos=null,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))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&&DOM.remove(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.setAttribute(\"aria-label\",\"Close popup\"),this._closeButton.innerHTML=\"&#215;\",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)),this._map.transform.renderWorldCopies&&(this._lngLat=smartWrap(this._lngLat,this._pos,this._map.transform));var t=this._pos=this._map.project(this._lngLat),o=this.options.anchor,e=normalizeOffset(this.options.offset);if(!o){var n=this._container.offsetWidth,i=this._container.offsetHeight;o=t.y+e.bottom.y<i?[\"top\"]:t.y>this._map.transform.height-i?[\"bottom\"]:[],t.x<n/2?o.push(\"left\"):t.x>this._map.transform.width-n/2&&o.push(\"right\"),o=0===o.length?\"bottom\":o.join(\"-\")}var r=t.add(e[o]).round(),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-\"+o),DOM.setTransform(this._container,s[o]+\" translate(\"+r.x+\"px,\"+r.y+\"px)\")}},o.prototype._onClickClose=function(){this.remove()},o}(Evented);module.exports=Popup;\n},{\"../geo/lng_lat\":58,\"../util/dom\":209,\"../util/evented\":210,\"../util/smart_wrap\":219,\"../util/util\":223,\"../util/window\":204,\"@mapbox/point-geometry\":2}],200:[function(_dereq_,module,exports){\n\"use strict\";var util=_dereq_(\"./util\"),Actor=function(t,e,r){this.target=t,this.parent=e,this.mapId=r,this.callbacks={},this.callbackID=0,util.bindAll([\"receive\"],this),this.target.addEventListener(\"message\",this.receive,!1)};Actor.prototype.send=function(t,e,r,a,i){var s=r?this.mapId+\":\"+this.callbackID++:null;r&&(this.callbacks[s]=r),this.target.postMessage({targetMapId:i,sourceMapId:this.mapId,type:t,id:String(s),data:e},a)},Actor.prototype.receive=function(t){var e,r=this,a=t.data,i=a.id;if(!a.targetMapId||this.mapId===a.targetMapId){var s=function(t,e,a){r.target.postMessage({sourceMapId:r.mapId,type:\"<response>\",id:String(i),error:t?String(t):null,data:e},a)};if(\"<response>\"===a.type)e=this.callbacks[a.id],delete this.callbacks[a.id],e&&a.error?e(new Error(a.error)):e&&e(null,a.data);else if(void 0!==a.id&&this.parent[a.type])this.parent[a.type](a.sourceMapId,a.data,s);else if(void 0!==a.id&&this.parent.getWorkerSource){var o=a.type.split(\".\"),p=this.parent.getWorkerSource(a.sourceMapId,o[0]);p[o[1]](a.data,s)}else this.parent[a.type](a.data)}},Actor.prototype.remove=function(){this.target.removeEventListener(\"message\",this.receive,!1)},module.exports=Actor;\n},{\"./util\":223}],201:[function(_dereq_,module,exports){\n\"use strict\";function makeRequest(e){var t=new window.XMLHttpRequest;t.open(\"GET\",e.url,!0);for(var r in e.headers)t.setRequestHeader(r,e.headers[r]);return t.withCredentials=\"include\"===e.credentials,t}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\"),ResourceType={Unknown:\"Unknown\",Style:\"Style\",Source:\"Source\",Tile:\"Tile\",Glyphs:\"Glyphs\",SpriteImage:\"SpriteImage\",SpriteJSON:\"SpriteJSON\",Image:\"Image\"};exports.ResourceType=ResourceType,\"function\"==typeof Object.freeze&&Object.freeze(ResourceType);var 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=makeRequest(e);return r.setRequestHeader(\"Accept\",\"application/json\"),r.onerror=function(){t(new Error(r.statusText))},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=makeRequest(e);return r.responseType=\"arraybuffer\",r.onerror=function(){t(new Error(r.statusText))},r.onload=function(){var e=r.response;if(0===e.byteLength&&200===r.status)return t(new Error(\"http status 200 returned without content.\"));r.status>=200&&r.status<300&&r.response?t(null,{data:e,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)t(e);else if(r){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<e.length;n++){var o=window.document.createElement(\"source\");sameOrigin(e[n])||(r.crossOrigin=\"Anonymous\"),o.src=e[n],r.appendChild(o)}return r};\n},{\"./window\":204}],202:[function(_dereq_,module,exports){\n\"use strict\";var window=_dereq_(\"./window\"),now=window.performance&&window.performance.now?window.performance.now.bind(window.performance):Date.now.bind(Date),frame=window.requestAnimationFrame||window.mozRequestAnimationFrame||window.webkitRequestAnimationFrame||window.msRequestAnimationFrame,cancel=window.cancelAnimationFrame||window.mozCancelAnimationFrame||window.webkitCancelAnimationFrame||window.msCancelAnimationFrame;module.exports={now:now,frame:function(e){return frame(e)},cancelFrame:function(e){return cancel(e)},timed:function(e,n,t){function a(){if(!i){var r=now();r>=o+n?e.call(t,1):(e.call(t,(r-o)/n),frame(a))}}if(!n)return e.call(t,1),null;var i=!1,o=now();return frame(a),function(){i=!0}},getImageData:function(e){var n=window.document.createElement(\"canvas\"),t=n.getContext(\"2d\");if(!t)throw new Error(\"failed to create canvas 2d context\");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)},hardwareConcurrency:window.navigator.hardwareConcurrency||4,get devicePixelRatio(){return window.devicePixelRatio},supportsWebp:!1};var webpImgTest=window.document.createElement(\"img\");webpImgTest.onload=function(){module.exports.supportsWebp=!0},webpImgTest.src=\"data:image/webp;base64,UklGRh4AAABXRUJQVlA4TBEAAAAvAQAAAAfQ//73v/+BiOh/AAA=\";\n},{\"./window\":204}],203:[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\":105,\"../window\":204,\"webworkify\":39}],204:[function(_dereq_,module,exports){\n\"use strict\";module.exports=self;\n},{}],205:[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;i<a;i++){var l=calculateSignedArea(e[i]);0!==l&&(e[i].area=Math.abs(l),void 0===u&&(u=l<0),u===l<0?(t&&c.push(t),t=[e[i]]):t.push(e[i]))}if(t&&c.push(t),r>1)for(var n=0;n<c.length;n++)c[n].length<=r||(quickselect(c[n],r,1,c[n].length-1,compareAreas),c[n]=c[n].slice(0,r));return c};\n},{\"./util\":223,\"quickselect\":31}],206:[function(_dereq_,module,exports){\n\"use strict\";var config={API_URL:\"https://api.mapbox.com\",REQUIRE_ACCESS_TOKEN:!0,ACCESS_TOKEN:null};module.exports=config;\n},{}],207:[function(_dereq_,module,exports){\n\"use strict\";var DictionaryCoder=function(r){var t=this;this._stringToNumber={},this._numberToString=[];for(var o=0;o<r.length;o++){var i=r[o];t._stringToNumber[i]=o,t._numberToString[o]=i}};DictionaryCoder.prototype.encode=function(r){return this._stringToNumber[r]},DictionaryCoder.prototype.decode=function(r){return this._numberToString[r]},module.exports=DictionaryCoder;\n},{}],208:[function(_dereq_,module,exports){\n\"use strict\";var util=_dereq_(\"./util\"),Actor=_dereq_(\"./actor\"),Dispatcher=function(t,r){var o=this;this.workerPool=t,this.actors=[],this.currentActor=0,this.id=util.uniqueId();for(var i=this.workerPool.acquire(this.id),e=0;e<i.length;e++){var s=i[e],c=new Actor(s,r,o.id);c.name=\"Worker \"+e,o.actors.push(c)}};Dispatcher.prototype.broadcast=function(t,r,o){o=o||function(){},util.asyncAll(this.actors,function(o,i){o.send(t,r,i)},o)},Dispatcher.prototype.send=function(t,r,o,i,e){return(\"number\"!=typeof i||isNaN(i))&&(i=this.currentActor=(this.currentActor+1)%this.actors.length),this.actors[i].send(t,r,o,e),i},Dispatcher.prototype.remove=function(){this.actors.forEach(function(t){t.remove()}),this.actors=[],this.workerPool.release(this.id)},module.exports=Dispatcher;\n},{\"./actor\":200,\"./util\":223}],209:[function(_dereq_,module,exports){\n\"use strict\";function testProp(e){for(var t=0;t<e.length;t++)if(e[t]in docStyle)return e[t];return e[0]}var Point=_dereq_(\"@mapbox/point-geometry\"),window=_dereq_(\"./window\");exports.create=function(e,t,o){var n=window.document.createElement(e);return t&&(n.className=t),o&&o.appendChild(n),n};var docStyle=window.document.documentElement.style,selectProp=testProp([\"userSelect\",\"MozUserSelect\",\"WebkitUserSelect\",\"msUserSelect\"]),userSelect;exports.disableDrag=function(){selectProp&&(userSelect=docStyle[selectProp],docStyle[selectProp]=\"none\")},exports.enableDrag=function(){selectProp&&(docStyle[selectProp]=userSelect)};var transformProp=testProp([\"transform\",\"WebkitTransform\"]);exports.setTransform=function(e,t){e.style[transformProp]=t};var suppressClick=function(e){e.preventDefault(),e.stopPropagation(),window.removeEventListener(\"click\",suppressClick,!0)};exports.suppressClick=function(){window.addEventListener(\"click\",suppressClick,!0),window.setTimeout(function(){window.removeEventListener(\"click\",suppressClick,!0)},0)},exports.mousePos=function(e,t){var o=e.getBoundingClientRect();return t=t.touches?t.touches[0]:t,new Point(t.clientX-o.left-e.clientLeft,t.clientY-o.top-e.clientTop)},exports.touchPos=function(e,t){for(var o=e.getBoundingClientRect(),n=[],r=\"touchend\"===t.type?t.changedTouches:t.touches,s=0;s<r.length;s++)n.push(new Point(r[s].clientX-o.left-e.clientLeft,r[s].clientY-o.top-e.clientTop));return n},exports.remove=function(e){e.parentNode&&e.parentNode.removeChild(e)};\n},{\"./window\":204,\"@mapbox/point-geometry\":2}],210:[function(_dereq_,module,exports){\n\"use strict\";function _addEventListener(e,t,n){n[e]=n[e]||[],n[e].push(t)}function _removeEventListener(e,t,n){if(n&&n[e]){var i=n[e].indexOf(t);-1!==i&&n[e].splice(i,1)}}var util=_dereq_(\"./util\"),Evented=function(){};Evented.prototype.on=function(e,t){return this._listeners=this._listeners||{},_addEventListener(e,t,this._listeners),this},Evented.prototype.off=function(e,t){return _removeEventListener(e,t,this._listeners),_removeEventListener(e,t,this._oneTimeListeners),this},Evented.prototype.once=function(e,t){return this._oneTimeListeners=this._oneTimeListeners||{},_addEventListener(e,t,this._oneTimeListeners),this},Evented.prototype.fire=function(e,t){var n=this;if(this.listens(e)){t=util.extend({},t,{type:e,target:this});for(var i=this._listeners&&this._listeners[e]?this._listeners[e].slice():[],s=0;s<i.length;s++)i[s].call(n,t);for(var r=this._oneTimeListeners&&this._oneTimeListeners[e]?this._oneTimeListeners[e].slice():[],o=0;o<r.length;o++)r[o].call(n,t),_removeEventListener(e,r[o],n._oneTimeListeners);this._eventedParent&&this._eventedParent.fire(e,util.extend({},t,\"function\"==typeof this._eventedParentData?this._eventedParentData():this._eventedParentData))}else util.endsWith(e,\"error\")&&console.error(t&&t.error||t||\"Empty error event\");return this},Evented.prototype.listens=function(e){return this._listeners&&this._listeners[e]&&this._listeners[e].length>0||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\":223}],211:[function(_dereq_,module,exports){\n\"use strict\";function compareMax(e,t){return t.max-e.max}function Cell(e,t,n,o){this.p=new Point(e,t),this.h=n,this.d=pointToPolygonDist(this.p,o),this.max=this.d+this.h*Math.SQRT2}function pointToPolygonDist(e,t){for(var n=!1,o=1/0,r=0;r<t.length;r++)for(var i=t[r],l=0,u=i.length,a=u-1;l<u;a=l++){var s=i[l],p=i[a];s.y>e.y!=p.y>e.y&&e.x<(p.x-s.x)*(e.y-s.y)/(p.y-s.y)+s.x&&(n=!n),o=Math.min(o,distToSegmentSquared(e,s,p))}return(n?1:-1)*Math.sqrt(o)}function getCentroidCell(e){for(var t=0,n=0,o=0,r=e[0],i=0,l=r.length,u=l-1;i<l;u=i++){var a=r[i],s=r[u],p=a.x*s.y-s.x*a.y;n+=(a.x+s.x)*p,o+=(a.y+s.y)*p,t+=3*p}return new Cell(n/t,o/t,0,e)}var Queue=_dereq_(\"tinyqueue\"),Point=_dereq_(\"@mapbox/point-geometry\"),distToSegmentSquared=_dereq_(\"./intersection_tests\").distToSegmentSquared;module.exports=function(e,t,n){void 0===t&&(t=1),void 0===n&&(n=!1);for(var o=1/0,r=1/0,i=-1/0,l=-1/0,u=e[0],a=0;a<u.length;a++){var s=u[a];(!a||s.x<o)&&(o=s.x),(!a||s.y<r)&&(r=s.y),(!a||s.x>i)&&(i=s.x),(!a||s.y>l)&&(l=s.y)}var p=i-o,h=l-r,d=Math.min(p,h),x=d/2,y=new Queue(null,compareMax);if(0===d)return new Point(o,r);for(var g=o;g<i;g+=d)for(var f=r;f<l;f+=d)y.push(new Cell(g+x,f+x,x,e));for(var m=getCentroidCell(e),v=y.length;y.length;){var c=y.pop();(c.d>m.d||!m.d)&&(m=c,n&&console.log(\"found best %d after %d probes\",Math.round(1e4*c.d)/1e4,v)),c.max-m.d<=t||(x=c.h/2,y.push(new Cell(c.p.x-x,c.p.y-x,x,e)),y.push(new Cell(c.p.x+x,c.p.y-x,x,e)),y.push(new Cell(c.p.x-x,c.p.y+x,x,e)),y.push(new Cell(c.p.x+x,c.p.y+x,x,e)),v+=4)}return n&&(console.log(\"num probes: \"+v),console.log(\"best distance: \"+m.d)),m.p};\n},{\"./intersection_tests\":214,\"@mapbox/point-geometry\":2,\"tinyqueue\":33}],212:[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\":226}],213:[function(_dereq_,module,exports){\n\"use strict\";function createImage(e,t,i){var h=e.width,a=e.height;if(i){if(i.length!==h*a*t)throw new RangeError(\"mismatched image size\")}else i=new Uint8Array(h*a*t);return{width:h,height:a,data:i}}function resizeImage(e,t,i){var h=t.width,a=t.height;if(h===e.width&&a===e.height)return e;var r=createImage({width:h,height:a},i);copyImage(e,r,{x:0,y:0},{x:0,y:0},{width:Math.min(e.width,h),height:Math.min(e.height,a)},i),e.width=h,e.height=a,e.data=r.data}function copyImage(e,t,i,h,a,r){if(0===a.width||0===a.height)return t;if(a.width>e.width||a.height>e.height||i.x>e.width-a.width||i.y>e.height-a.height)throw new RangeError(\"out of range source coordinates for image copy\");if(a.width>t.width||a.height>t.height||h.x>t.width-a.width||h.y>t.height-a.height)throw new RangeError(\"out of range destination coordinates for image copy\");for(var g=e.data,n=t.data,o=0;o<a.height;o++)for(var m=((i.y+o)*e.width+i.x)*r,c=((h.y+o)*t.width+h.x)*r,d=0;d<a.width*r;d++)n[c+d]=g[m+d];return t}var AlphaImage=function(){};AlphaImage.create=function(e,t){return createImage(e,1,t)},AlphaImage.resize=function(e,t){resizeImage(e,t,1)},AlphaImage.copy=function(e,t,i,h,a){copyImage(e,t,i,h,a,1)};var RGBAImage=function(){};RGBAImage.create=function(e,t){return createImage(e,4,t)},RGBAImage.resize=function(e,t){resizeImage(e,t,4)},RGBAImage.copy=function(e,t,i,h,a){copyImage(e,t,i,h,a,4)},module.exports={AlphaImage:AlphaImage,RGBAImage:RGBAImage};\n},{}],214:[function(_dereq_,module,exports){\n\"use strict\";function polygonIntersectsPolygon(n,t){for(var e=0;e<n.length;e++)if(polygonContainsPoint(t,n[e]))return!0;for(var r=0;r<t.length;r++)if(polygonContainsPoint(n,t[r]))return!0;return!!lineIntersectsLine(n,t)}function multiPolygonIntersectsBufferedMultiPoint(n,t,e){for(var r=0;r<n.length;r++)for(var o=n[r],i=0;i<t.length;i++)for(var l=t[i],u=0;u<l.length;u++){var s=l[u];if(polygonContainsPoint(o,s))return!0;if(pointIntersectsBufferedLine(s,o,e))return!0}return!1}function multiPolygonIntersectsMultiPolygon(n,t){if(1===n.length&&1===n[0].length)return multiPolygonContainsPoint(t,n[0][0]);for(var e=0;e<t.length;e++)for(var r=t[e],o=0;o<r.length;o++)if(multiPolygonContainsPoint(n,r[o]))return!0;for(var i=0;i<n.length;i++){for(var l=n[i],u=0;u<l.length;u++)if(multiPolygonContainsPoint(t,l[u]))return!0;for(var s=0;s<t.length;s++)if(lineIntersectsLine(l,t[s]))return!0}return!1}function multiPolygonIntersectsBufferedMultiLine(n,t,e){for(var r=0;r<t.length;r++)for(var o=t[r],i=0;i<n.length;i++){var l=n[i];if(l.length>=3)for(var u=0;u<o.length;u++)if(polygonContainsPoint(l,o[u]))return!0;if(lineIntersectsBufferedLine(l,o,e))return!0}return!1}function lineIntersectsBufferedLine(n,t,e){if(n.length>1){if(lineIntersectsLine(n,t))return!0;for(var r=0;r<t.length;r++)if(pointIntersectsBufferedLine(t[r],n,e))return!0}for(var o=0;o<n.length;o++)if(pointIntersectsBufferedLine(n[o],t,e))return!0;return!1}function lineIntersectsLine(n,t){if(0===n.length||0===t.length)return!1;for(var e=0;e<n.length-1;e++)for(var r=n[e],o=n[e+1],i=0;i<t.length-1;i++){var l=t[i],u=t[i+1];if(lineSegmentIntersectsLineSegment(r,o,l,u))return!0}return!1}function lineSegmentIntersectsLineSegment(n,t,e,r){return isCounterClockwise(n,e,r)!==isCounterClockwise(t,e,r)&&isCounterClockwise(n,t,e)!==isCounterClockwise(n,t,r)}function pointIntersectsBufferedLine(n,t,e){var r=e*e;if(1===t.length)return n.distSqr(t[0])<r;for(var o=1;o<t.length;o++){if(distToSegmentSquared(n,t[o-1],t[o])<r)return!0}return!1}function distToSegmentSquared(n,t,e){var r=t.distSqr(e);if(0===r)return n.distSqr(t);var o=((n.x-t.x)*(e.x-t.x)+(n.y-t.y)*(e.y-t.y))/r;return o<0?n.distSqr(t):o>1?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;l<n.length;l++){e=n[l];for(var u=0,s=e.length-1;u<e.length;s=u++)r=e[u],o=e[s],r.y>t.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;r<n.length;o=r++){var i=n[r],l=n[o];i.y>t.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 ref=_dereq_(\"./util\"),isCounterClockwise=ref.isCounterClockwise;module.exports={multiPolygonIntersectsBufferedMultiPoint:multiPolygonIntersectsBufferedMultiPoint,multiPolygonIntersectsMultiPolygon:multiPolygonIntersectsMultiPolygon,multiPolygonIntersectsBufferedMultiLine:multiPolygonIntersectsBufferedMultiLine,polygonIntersectsPolygon:polygonIntersectsPolygon,distToSegmentSquared:distToSegmentSquared};\n},{\"./util\":223}],215:[function(_dereq_,module,exports){\n\"use strict\";var unicodeBlockLookup={\"Latin-1 Supplement\":function(n){return n>=128&&n<=255},Arabic:function(n){return n>=1536&&n<=1791},\"Arabic Supplement\":function(n){return n>=1872&&n<=1919},\"Arabic Extended-A\":function(n){return n>=2208&&n<=2303},\"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},\"Arabic Presentation Forms-A\":function(n){return n>=64336&&n<=65023},\"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},\"Arabic Presentation Forms-B\":function(n){return n>=65136&&n<=65279},\"Halfwidth and Fullwidth Forms\":function(n){return n>=65280&&n<=65519}};module.exports=unicodeBlockLookup;\n},{}],216:[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){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;\n},{}],217:[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,\"/\"!==t.path&&(r.path=\"\"+t.path+r.path),!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<r.length;e++)0===r[e].indexOf(\"access_token=tk.\")&&(r[e]=\"access_token=\"+(config.ACCESS_TOKEN||\"\"))}function parseUrl(r){var e=r.match(urlRe);if(!e)throw new Error(\"Unable to parse URL object\");return{protocol:e[1],authority:e[2],path:e[3]||\"/\",params:e[4]?e[4].split(\"&\"):[]}}function formatUrl(r){var e=r.params.length?\"?\"+r.params.join(\"&\"):\"\";return r.protocol+\"://\"+r.authority+r.path+e}var config=_dereq_(\"./config\"),browser=_dereq_(\"./browser\"),help=\"See https://www.mapbox.com/api-documentation/#access-tokens\";exports.isMapboxURL=isMapboxURL,exports.normalizeStyleURL=function(r,e){if(!isMapboxURL(r))return r;var t=parseUrl(r);return t.path=\"/styles/v1\"+t.path,makeAPIURL(t,e)},exports.normalizeGlyphsURL=function(r,e){if(!isMapboxURL(r))return r;var t=parseUrl(r);return t.path=\"/fonts/v1\"+t.path,makeAPIURL(t,e)},exports.normalizeSourceURL=function(r,e){if(!isMapboxURL(r))return r;var t=parseUrl(r);return t.path=\"/v4/\"+t.authority+\".json\",t.params.push(\"secure\"),makeAPIURL(t,e)},exports.normalizeSpriteURL=function(r,e,t,a){var o=parseUrl(r);return isMapboxURL(r)?(o.path=\"/styles/v1\"+o.path+\"/sprite\"+e+t,makeAPIURL(o,a)):(o.path+=\"\"+e+t,formatUrl(o))};var imageExtensionRe=/(\\.(png|jpg)\\d*)(?=$)/;exports.normalizeTileURL=function(r,e,t){if(!e||!isMapboxURL(e))return r;var a=parseUrl(r),o=browser.devicePixelRatio>=2||512===t?\"@2x\":\"\",p=browser.supportsWebp?\".webp\":\"$1\";return a.path=a.path.replace(imageExtensionRe,\"\"+o+p),replaceTempAccessToken(a.params),formatUrl(a)};var urlRe=/^(\\w+):\\/\\/([^\\/?]*)(\\/[^?]+)?\\??(.+)?/;\n},{\"./browser\":202,\"./config\":206}],218:[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<r.length;i+=1){var s=r[i];if(!exports.charAllowsIdeographicBreaking(s.charCodeAt(0)))return!1}return!0},module.exports.allowsVerticalWritingMode=function(a){for(var i=0,r=a;i<r.length;i+=1){var s=r[i];if(exports.charHasUprightVerticalOrientation(s.charCodeAt(0)))return!0}return!1},module.exports.allowsLetterSpacing=function(a){for(var i=0,r=a;i<r.length;i+=1){var s=r[i];if(!exports.charAllowsLetterSpacing(s.charCodeAt(0)))return!1}return!0},module.exports.charAllowsLetterSpacing=function(a){return!isChar.Arabic(a)&&(!isChar[\"Arabic Supplement\"](a)&&(!isChar[\"Arabic Extended-A\"](a)&&(!isChar[\"Arabic Presentation Forms-A\"](a)&&!isChar[\"Arabic Presentation Forms-B\"](a))))},module.exports.charAllowsIdeographicBreaking=function(a){return!(a<11904)&&(!!isChar[\"Bopomofo Extended\"](a)||(!!isChar.Bopomofo(a)||(!!isChar[\"CJK Compatibility Forms\"](a)||(!!isChar[\"CJK Compatibility Ideographs\"](a)||(!!isChar[\"CJK Compatibility\"](a)||(!!isChar[\"CJK Radicals Supplement\"](a)||(!!isChar[\"CJK Strokes\"](a)||(!!isChar[\"CJK Symbols and Punctuation\"](a)||(!!isChar[\"CJK Unified Ideographs Extension A\"](a)||(!!isChar[\"CJK Unified Ideographs\"](a)||(!!isChar[\"Enclosed CJK Letters and Months\"](a)||(!!isChar[\"Halfwidth and Fullwidth Forms\"](a)||(!!isChar.Hiragana(a)||(!!isChar[\"Ideographic Description Characters\"](a)||(!!isChar[\"Kangxi Radicals\"](a)||(!!isChar[\"Katakana Phonetic Extensions\"](a)||(!!isChar.Katakana(a)||(!!isChar[\"Vertical Forms\"](a)||(!!isChar[\"Yi Radicals\"](a)||!!isChar[\"Yi Syllables\"](a))))))))))))))))))))},exports.charHasUprightVerticalOrientation=function(a){return 746===a||747===a||!(a<4352)&&(!!isChar[\"Bopomofo Extended\"](a)||(!!isChar.Bopomofo(a)||(!(!isChar[\"CJK Compatibility Forms\"](a)||a>=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\":215}],219:[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)<o?n=a:l.locationPoint(i).distSqr(t)<o&&(n=i)}for(;Math.abs(n.lng-l.center.lng)>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\":58}],220:[function(_dereq_,module,exports){\n\"use strict\";function createStructArrayType(t){var r=JSON.stringify(t);if(structArrayTypeCache[r])return structArrayTypeCache[r];var e=void 0===t.alignment?1:t.alignment,i=0,n=0,a=[\"Uint8\"],s=t.members.map(function(t){a.indexOf(t.type)<0&&a.push(t.type);var r=sizeOf(t.type),s=i=align(i,Math.max(e,r)),o=t.components||1;return n=Math.max(n,r),i+=r*o,{name:t.name,type:t.type,components:o,offset:s}}),o=align(i,Math.max(n,e)),p=function(t){function r(){t.apply(this,arguments)}return t&&(r.__proto__=t),r.prototype=Object.create(t&&t.prototype),r.prototype.constructor=r,r}(Struct);p.prototype.alignment=e,p.prototype.size=o;for(var y=0,c=s;y<c.length;y+=1)for(var h=c[y],u=0;u<h.components;u++){var f=h.name;if(h.components>1&&(f+=u),f in p.prototype)throw new Error(f+\" is a reserved name and cannot be used as a member name.\");Object.defineProperty(p.prototype,f,createAccessors(h,u))}var m=function(t){function r(){t.apply(this,arguments)}return t&&(r.__proto__=t),r.prototype=Object.create(t&&t.prototype),r.prototype.constructor=r,r}(StructArray);return m.prototype.members=s,m.prototype.StructType=p,m.prototype.bytesPerElement=o,m.prototype.emplaceBack=createEmplaceBack(s,o),m.prototype._usedTypes=a,structArrayTypeCache[r]=m,m}function align(t,r){return Math.ceil(t/r)*r}function sizeOf(t){return viewTypes[t].BYTES_PER_ELEMENT}function getArrayViewName(t){return t.toLowerCase()}function createEmplaceBack(t,r){for(var e=[],i=[],n=\"var i = this.length;\\nthis.resize(this.length + 1);\\n\",a=0,s=t;a<s.length;a+=1){var o=s[a],p=sizeOf(o.type);e.indexOf(p)<0&&(e.push(p),n+=\"var o\"+p.toFixed(0)+\" = i * \"+(r/p).toFixed(0)+\";\\n\");for(var y=0;y<o.components;y++){var c=\"v\"+i.length,h=\"o\"+p.toFixed(0)+\" + \"+(o.offset/p+y).toFixed(0);n+=\"this.\"+getArrayViewName(o.type)+\"[\"+h+\"] = \"+c+\";\\n\",i.push(c)}}return n+=\"return i;\",new Function(i.toString(),n)}function createMemberComponentString(t,r){var e=\"this._pos\"+sizeOf(t.type).toFixed(0),i=(t.offset/sizeOf(t.type)+r).toFixed(0),n=e+\" + \"+i;return\"this._structArray.\"+getArrayViewName(t.type)+\"[\"+n+\"]\"}function createAccessors(t,r){var e=createMemberComponentString(t,r);return{get:new Function(\"return \"+e+\";\"),set:new Function(\"x\",e+\" = x;\")}}module.exports=createStructArrayType;var viewTypes={Int8:Int8Array,Uint8:Uint8Array,Int16:Int16Array,Uint16:Uint16Array,Int32:Int32Array,Uint32:Uint32Array,Float32:Float32Array},Struct=function(t,r){this._structArray=t,this._pos1=r*this.size,this._pos2=this._pos1/2,this._pos4=this._pos1/4,this._pos8=this._pos1/8},DEFAULT_CAPACITY=128,RESIZE_MULTIPLIER=5,StructArray=function(t){this.isTransferred=!1,void 0!==t?(this.arrayBuffer=t.arrayBuffer,this.length=t.length,this.capacity=this.arrayBuffer.byteLength/this.bytesPerElement,this._refreshViews()):(this.capacity=-1,this.resize(0))};StructArray.serialize=function(){return{members:this.prototype.members,alignment:this.prototype.StructType.prototype.alignment}},StructArray.prototype.serialize=function(t){return this._trim(),t&&(this.isTransferred=!0,t.push(this.arrayBuffer)),{length:this.length,arrayBuffer:this.arrayBuffer}},StructArray.prototype.get=function(t){return new this.StructType(this,t)},StructArray.prototype._trim=function(){this.length!==this.capacity&&(this.capacity=this.length,this.arrayBuffer=this.arrayBuffer.slice(0,this.length*this.bytesPerElement),this._refreshViews())},StructArray.prototype.clear=function(){this.length=0},StructArray.prototype.resize=function(t){if(this.length=t,t>this.capacity){this.capacity=Math.max(t,Math.floor(this.capacity*RESIZE_MULTIPLIER),DEFAULT_CAPACITY),this.arrayBuffer=new ArrayBuffer(this.capacity*this.bytesPerElement);var r=this.uint8;this._refreshViews(),r&&this.uint8.set(r)}},StructArray.prototype._refreshViews=function(){for(var t=this,r=0,e=t._usedTypes;r<e.length;r+=1){var i=e[r];t[getArrayViewName(i)]=new viewTypes[i](t.arrayBuffer)}},StructArray.prototype.toArray=function(t,r){for(var e=this,i=[],n=t;n<r;n++){var a=e.get(n);i.push(a)}return i};var structArrayTypeCache={};\n},{}],221:[function(_dereq_,module,exports){\n\"use strict\";var browser=_dereq_(\"./browser\"),Throttler=function(t,o){this.frequency=t,this.throttledFunction=o,this.lastInvocation=0};Throttler.prototype.invoke=function(){var t=this;if(!this.pendingInvocation){var o=0===this.lastInvocation?0:this.lastInvocation+this.frequency-browser.now();o<=0?(this.lastInvocation=browser.now(),this.throttledFunction()):this.pendingInvocation=setTimeout(function(){t.pendingInvocation=void 0,t.lastInvocation=browser.now(),t.throttledFunction()},o)}},Throttler.prototype.stop=function(){this.pendingInvocation&&(clearTimeout(this.pendingInvocation),this.pendingInvocation=void 0)},module.exports=Throttler;\n},{\"./browser\":202}],222:[function(_dereq_,module,exports){\n\"use strict\";function resolveTokens(e,n){return n.replace(/{([^{}]+)}/g,function(n,r){return r in e?String(e[r]):\"\"})}module.exports=resolveTokens;\n},{}],223:[function(_dereq_,module,exports){\n\"use strict\";var UnitBezier=_dereq_(\"@mapbox/unitbezier\"),Coordinate=_dereq_(\"../geo/coordinate\"),Point=_dereq_(\"@mapbox/point-geometry\");exports.easeCubicInOut=function(r){if(r<=0)return 0;if(r>=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){for(var e=[],t=arguments.length-1;t-- >0;)e[t]=arguments[t+1];for(var n=0,o=e;n<o.length;n+=1){var a=o[n];for(var i in a)r[i]=a[i]}return r},exports.pick=function(r,e){for(var t={},n=0;n<e.length;n++){var o=e[n];o in r&&(t[o]=r[o])}return t};var id=1;exports.uniqueId=function(){return id++},exports.bindAll=function(r,e){r.forEach(function(r){e[r]&&(e[r]=e[r].bind(e))})},exports.getCoordinatesCenter=function(r){for(var e=1/0,t=1/0,n=-1/0,o=-1/0,a=0;a<r.length;a++)e=Math.min(e,r[a].column),t=Math.min(t,r[a].row),n=Math.max(n,r[a].column),o=Math.max(o,r[a].row);var i=n-e,u=o-t,s=Math.max(i,u),c=Math.max(0,Math.floor(-Math.log(s)/Math.LN2));return new Coordinate((e+n)/2,(t+o)/2,0).zoomTo(c)},exports.endsWith=function(r,e){return-1!==r.indexOf(e,r.length-e.length)},exports.mapObject=function(r,e,t){var n=this,o={};for(var a in r)o[a]=e.call(t||n,r[a],a,r);return o},exports.filterObject=function(r,e,t){var n=this,o={};for(var a in r)e.call(t||n,r[a],a,r)&&(o[a]=r[a]);return o},exports.deepEqual=function(r,e){if(Array.isArray(r)){if(!Array.isArray(e)||r.length!==e.length)return!1;for(var t=0;t<r.length;t++)if(!exports.deepEqual(r[t],e[t]))return!1;return!0}if(\"object\"==typeof r&&null!==r&&null!==e){if(\"object\"!=typeof e)return!1;if(Object.keys(r).length!==Object.keys(e).length)return!1;for(var n in r)if(!exports.deepEqual(r[n],e[n]))return!1;return!0}return r===e},exports.clone=function(r){return Array.isArray(r)?r.map(exports.clone):\"object\"==typeof r&&r?exports.mapObject(r,exports.clone):r},exports.arraysIntersect=function(r,e){for(var t=0;t<r.length;t++)if(e.indexOf(r[t])>=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;t<n;o=t++)a=r[t],i=r[o],e+=(i.x-a.x)*(a.y+i.y);return e},exports.isClosedPolygon=function(r){if(r.length<4)return!1;var e=r[0],t=r[r.length-1];return!(Math.abs(e.x-t.x)>0||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\":57,\"@mapbox/point-geometry\":2,\"@mapbox/unitbezier\":5}],224:[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},{}],225:[function(_dereq_,module,exports){\n\"use strict\";var scriptDetection=_dereq_(\"./script_detection\");module.exports=function(t){for(var o=\"\",e=0;e<t.length;e++){var r=t.charCodeAt(e+1)||null,l=t.charCodeAt(e-1)||null;(!r||!scriptDetection.charHasRotatedVerticalOrientation(r)||module.exports.lookup[t[e+1]])&&(!l||!scriptDetection.charHasRotatedVerticalOrientation(l)||module.exports.lookup[t[e-1]])&&module.exports.lookup[t[e]]?o+=module.exports.lookup[t[e]]:o+=t[e]}return o},module.exports.lookup={\"!\":\"︕\",\"#\":\"#\",$:\"$\",\"%\":\"%\",\"&\":\"&\",\"(\":\"︵\",\")\":\"︶\",\"*\":\"*\",\"+\":\"+\",\",\":\"︐\",\"-\":\"︲\",\".\":\"・\",\"/\":\"/\",\":\":\"︓\",\";\":\"︔\",\"<\":\"︿\",\"=\":\"=\",\">\":\"﹀\",\"?\":\"︖\",\"@\":\"@\",\"[\":\"﹇\",\"\\\\\":\"\\",\"]\":\"﹈\",\"^\":\"^\",_:\"︳\",\"`\":\"`\",\"{\":\"︷\",\"|\":\"―\",\"}\":\"︸\",\"~\":\"~\",\"¢\":\"¢\",\"£\":\"£\",\"¥\":\"¥\",\"¦\":\"¦\",\"¬\":\"¬\",\"¯\":\" ̄\",\"–\":\"︲\",\"—\":\"︱\",\"‘\":\"﹃\",\"’\":\"﹄\",\"“\":\"﹁\",\"”\":\"﹂\",\"…\":\"︙\",\"‧\":\"・\",\"₩\":\"₩\",\"、\":\"︑\",\"。\":\"︒\",\"〈\":\"︿\",\"〉\":\"﹀\",\"《\":\"︽\",\"》\":\"︾\",\"「\":\"﹁\",\"」\":\"﹂\",\"『\":\"﹃\",\"』\":\"﹄\",\"【\":\"︻\",\"】\":\"︼\",\"〔\":\"︹\",\"〕\":\"︺\",\"〖\":\"︗\",\"〗\":\"︘\",\"!\":\"︕\",\"(\":\"︵\",\")\":\"︶\",\",\":\"︐\",\"-\":\"︲\",\".\":\"・\",\":\":\"︓\",\";\":\"︔\",\"<\":\"︿\",\">\":\"﹀\",\"?\":\"︖\",\"[\":\"﹇\",\"]\":\"﹈\",\"_\":\"︳\",\"{\":\"︷\",\"|\":\"―\",\"}\":\"︸\",\"⦅\":\"︵\",\"⦆\":\"︶\",\"。\":\"︒\",\"「\":\"﹁\",\"」\":\"﹂\"};\n},{\"./script_detection\":218}],226:[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<o;)e.workers.push(new WebWorker)}return this.active[r]=!0,this.workers.slice()},WorkerPool.prototype.release=function(r){delete this.active[r],0===Object.keys(this.active).length&&(this.workers.forEach(function(r){r.terminate()}),this.workers=null)},module.exports=WorkerPool;\n},{\"../\":63,\"./web_worker\":203}]},{},[63])(63)\n});\n\n\n//# sourceMappingURL=mapbox-gl.js.map\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/mapbox-gl/dist/mapbox-gl.js\n// module id = 1\n// module chunks = 0","import mapboxgl from 'mapbox-gl';\nimport Vue from 'vue';\nimport Geshem from './Geshem.vue';\n\nmapboxgl.accessToken = 'pk.eyJ1IjoieXV2YWRtIiwiYSI6ImNpcnMxbzBuaTAwZWdoa25oczlzZmkwbHcifQ.UHtLngbKm9O8945pJm23Nw';\n\nvar vm = new Vue({\n el: '#app',\n render: h => h(Geshem)\n});\n\n\n\n// WEBPACK FOOTER //\n// ./geshem.js","/*!\n * Vue.js v2.5.2\n * (c) 2014-2017 Evan You\n * Released under the MIT License.\n */\n/* */\n\n// these helpers produces better vm code in JS engines due to their\n// explicitness and function inlining\nfunction isUndef (v) {\n return v === undefined || v === null\n}\n\nfunction isDef (v) {\n return v !== undefined && v !== null\n}\n\nfunction isTrue (v) {\n return v === true\n}\n\nfunction isFalse (v) {\n return v === false\n}\n\n/**\n * Check if value is primitive\n */\nfunction isPrimitive (value) {\n return (\n typeof value === 'string' ||\n typeof value === 'number' ||\n typeof value === 'boolean'\n )\n}\n\n/**\n * Quick object check - this is primarily used to tell\n * Objects from primitive values when we know the value\n * is a JSON-compliant type.\n */\nfunction isObject (obj) {\n return obj !== null && typeof obj === 'object'\n}\n\n/**\n * Get the raw type string of a value e.g. [object Object]\n */\nvar _toString = Object.prototype.toString;\n\nfunction toRawType (value) {\n return _toString.call(value).slice(8, -1)\n}\n\n/**\n * Strict object type check. Only returns true\n * for plain JavaScript objects.\n */\nfunction isPlainObject (obj) {\n return _toString.call(obj) === '[object Object]'\n}\n\nfunction isRegExp (v) {\n return _toString.call(v) === '[object RegExp]'\n}\n\n/**\n * Check if val is a valid array index.\n */\nfunction isValidArrayIndex (val) {\n var n = parseFloat(String(val));\n return n >= 0 && Math.floor(n) === n && isFinite(val)\n}\n\n/**\n * Convert a value to a string that is actually rendered.\n */\nfunction toString (val) {\n return val == null\n ? ''\n : typeof val === 'object'\n ? JSON.stringify(val, null, 2)\n : String(val)\n}\n\n/**\n * Convert a input value to a number for persistence.\n * If the conversion fails, return original string.\n */\nfunction toNumber (val) {\n var n = parseFloat(val);\n return isNaN(n) ? val : n\n}\n\n/**\n * Make a map and return a function for checking if a key\n * is in that map.\n */\nfunction makeMap (\n str,\n expectsLowerCase\n) {\n var map = Object.create(null);\n var list = str.split(',');\n for (var i = 0; i < list.length; i++) {\n map[list[i]] = true;\n }\n return expectsLowerCase\n ? function (val) { return map[val.toLowerCase()]; }\n : function (val) { return map[val]; }\n}\n\n/**\n * Check if a tag is a built-in tag.\n */\nvar isBuiltInTag = makeMap('slot,component', true);\n\n/**\n * Check if a attribute is a reserved attribute.\n */\nvar isReservedAttribute = makeMap('key,ref,slot,slot-scope,is');\n\n/**\n * Remove an item from an array\n */\nfunction remove (arr, item) {\n if (arr.length) {\n var index = arr.indexOf(item);\n if (index > -1) {\n return arr.splice(index, 1)\n }\n }\n}\n\n/**\n * Check whether the object has the property.\n */\nvar hasOwnProperty = Object.prototype.hasOwnProperty;\nfunction hasOwn (obj, key) {\n return hasOwnProperty.call(obj, key)\n}\n\n/**\n * Create a cached version of a pure function.\n */\nfunction cached (fn) {\n var cache = Object.create(null);\n return (function cachedFn (str) {\n var hit = cache[str];\n return hit || (cache[str] = fn(str))\n })\n}\n\n/**\n * Camelize a hyphen-delimited string.\n */\nvar camelizeRE = /-(\\w)/g;\nvar camelize = cached(function (str) {\n return str.replace(camelizeRE, function (_, c) { return c ? c.toUpperCase() : ''; })\n});\n\n/**\n * Capitalize a string.\n */\nvar capitalize = cached(function (str) {\n return str.charAt(0).toUpperCase() + str.slice(1)\n});\n\n/**\n * Hyphenate a camelCase string.\n */\nvar hyphenateRE = /\\B([A-Z])/g;\nvar hyphenate = cached(function (str) {\n return str.replace(hyphenateRE, '-$1').toLowerCase()\n});\n\n/**\n * Simple bind, faster than native\n */\nfunction bind (fn, ctx) {\n function boundFn (a) {\n var l = arguments.length;\n return l\n ? l > 1\n ? fn.apply(ctx, arguments)\n : fn.call(ctx, a)\n : fn.call(ctx)\n }\n // record original fn length\n boundFn._length = fn.length;\n return boundFn\n}\n\n/**\n * Convert an Array-like object to a real Array.\n */\nfunction toArray (list, start) {\n start = start || 0;\n var i = list.length - start;\n var ret = new Array(i);\n while (i--) {\n ret[i] = list[i + start];\n }\n return ret\n}\n\n/**\n * Mix properties into target object.\n */\nfunction extend (to, _from) {\n for (var key in _from) {\n to[key] = _from[key];\n }\n return to\n}\n\n/**\n * Merge an Array of Objects into a single Object.\n */\nfunction toObject (arr) {\n var res = {};\n for (var i = 0; i < arr.length; i++) {\n if (arr[i]) {\n extend(res, arr[i]);\n }\n }\n return res\n}\n\n/**\n * Perform no operation.\n * Stubbing args to make Flow happy without leaving useless transpiled code\n * with ...rest (https://flow.org/blog/2017/05/07/Strict-Function-Call-Arity/)\n */\nfunction noop (a, b, c) {}\n\n/**\n * Always return false.\n */\nvar no = function (a, b, c) { return false; };\n\n/**\n * Return same value\n */\nvar identity = function (_) { return _; };\n\n/**\n * Generate a static keys string from compiler modules.\n */\nfunction genStaticKeys (modules) {\n return modules.reduce(function (keys, m) {\n return keys.concat(m.staticKeys || [])\n }, []).join(',')\n}\n\n/**\n * Check if two values are loosely equal - that is,\n * if they are plain objects, do they have the same shape?\n */\nfunction looseEqual (a, b) {\n if (a === b) { return true }\n var isObjectA = isObject(a);\n var isObjectB = isObject(b);\n if (isObjectA && isObjectB) {\n try {\n var isArrayA = Array.isArray(a);\n var isArrayB = Array.isArray(b);\n if (isArrayA && isArrayB) {\n return a.length === b.length && a.every(function (e, i) {\n return looseEqual(e, b[i])\n })\n } else if (!isArrayA && !isArrayB) {\n var keysA = Object.keys(a);\n var keysB = Object.keys(b);\n return keysA.length === keysB.length && keysA.every(function (key) {\n return looseEqual(a[key], b[key])\n })\n } else {\n /* istanbul ignore next */\n return false\n }\n } catch (e) {\n /* istanbul ignore next */\n return false\n }\n } else if (!isObjectA && !isObjectB) {\n return String(a) === String(b)\n } else {\n return false\n }\n}\n\nfunction looseIndexOf (arr, val) {\n for (var i = 0; i < arr.length; i++) {\n if (looseEqual(arr[i], val)) { return i }\n }\n return -1\n}\n\n/**\n * Ensure a function is called only once.\n */\nfunction once (fn) {\n var called = false;\n return function () {\n if (!called) {\n called = true;\n fn.apply(this, arguments);\n }\n }\n}\n\nvar SSR_ATTR = 'data-server-rendered';\n\nvar ASSET_TYPES = [\n 'component',\n 'directive',\n 'filter'\n];\n\nvar LIFECYCLE_HOOKS = [\n 'beforeCreate',\n 'created',\n 'beforeMount',\n 'mounted',\n 'beforeUpdate',\n 'updated',\n 'beforeDestroy',\n 'destroyed',\n 'activated',\n 'deactivated',\n 'errorCaptured'\n];\n\n/* */\n\nvar config = ({\n /**\n * Option merge strategies (used in core/util/options)\n */\n optionMergeStrategies: Object.create(null),\n\n /**\n * Whether to suppress warnings.\n */\n silent: false,\n\n /**\n * Show production mode tip message on boot?\n */\n productionTip: process.env.NODE_ENV !== 'production',\n\n /**\n * Whether to enable devtools\n */\n devtools: process.env.NODE_ENV !== 'production',\n\n /**\n * Whether to record perf\n */\n performance: false,\n\n /**\n * Error handler for watcher errors\n */\n errorHandler: null,\n\n /**\n * Warn handler for watcher warns\n */\n warnHandler: null,\n\n /**\n * Ignore certain custom elements\n */\n ignoredElements: [],\n\n /**\n * Custom user key aliases for v-on\n */\n keyCodes: Object.create(null),\n\n /**\n * Check if a tag is reserved so that it cannot be registered as a\n * component. This is platform-dependent and may be overwritten.\n */\n isReservedTag: no,\n\n /**\n * Check if an attribute is reserved so that it cannot be used as a component\n * prop. This is platform-dependent and may be overwritten.\n */\n isReservedAttr: no,\n\n /**\n * Check if a tag is an unknown element.\n * Platform-dependent.\n */\n isUnknownElement: no,\n\n /**\n * Get the namespace of an element\n */\n getTagNamespace: noop,\n\n /**\n * Parse the real tag name for the specific platform.\n */\n parsePlatformTagName: identity,\n\n /**\n * Check if an attribute must be bound using property, e.g. value\n * Platform-dependent.\n */\n mustUseProp: no,\n\n /**\n * Exposed for legacy reasons\n */\n _lifecycleHooks: LIFECYCLE_HOOKS\n});\n\n/* */\n\nvar emptyObject = Object.freeze({});\n\n/**\n * Check if a string starts with $ or _\n */\nfunction isReserved (str) {\n var c = (str + '').charCodeAt(0);\n return c === 0x24 || c === 0x5F\n}\n\n/**\n * Define a property.\n */\nfunction def (obj, key, val, enumerable) {\n Object.defineProperty(obj, key, {\n value: val,\n enumerable: !!enumerable,\n writable: true,\n configurable: true\n });\n}\n\n/**\n * Parse simple path.\n */\nvar bailRE = /[^\\w.$]/;\nfunction parsePath (path) {\n if (bailRE.test(path)) {\n return\n }\n var segments = path.split('.');\n return function (obj) {\n for (var i = 0; i < segments.length; i++) {\n if (!obj) { return }\n obj = obj[segments[i]];\n }\n return obj\n }\n}\n\n/* */\n\n// can we use __proto__?\nvar hasProto = '__proto__' in {};\n\n// Browser environment sniffing\nvar inBrowser = typeof window !== 'undefined';\nvar UA = inBrowser && window.navigator.userAgent.toLowerCase();\nvar isIE = UA && /msie|trident/.test(UA);\nvar isIE9 = UA && UA.indexOf('msie 9.0') > 0;\nvar isEdge = UA && UA.indexOf('edge/') > 0;\nvar isAndroid = UA && UA.indexOf('android') > 0;\nvar isIOS = UA && /iphone|ipad|ipod|ios/.test(UA);\nvar isChrome = UA && /chrome\\/\\d+/.test(UA) && !isEdge;\n\n// Firefox has a \"watch\" function on Object.prototype...\nvar nativeWatch = ({}).watch;\n\nvar supportsPassive = false;\nif (inBrowser) {\n try {\n var opts = {};\n Object.defineProperty(opts, 'passive', ({\n get: function get () {\n /* istanbul ignore next */\n supportsPassive = true;\n }\n })); // https://github.com/facebook/flow/issues/285\n window.addEventListener('test-passive', null, opts);\n } catch (e) {}\n}\n\n// this needs to be lazy-evaled because vue may be required before\n// vue-server-renderer can set VUE_ENV\nvar _isServer;\nvar isServerRendering = function () {\n if (_isServer === undefined) {\n /* istanbul ignore if */\n if (!inBrowser && typeof global !== 'undefined') {\n // detect presence of vue-server-renderer and avoid\n // Webpack shimming the process\n _isServer = global['process'].env.VUE_ENV === 'server';\n } else {\n _isServer = false;\n }\n }\n return _isServer\n};\n\n// detect devtools\nvar devtools = inBrowser && window.__VUE_DEVTOOLS_GLOBAL_HOOK__;\n\n/* istanbul ignore next */\nfunction isNative (Ctor) {\n return typeof Ctor === 'function' && /native code/.test(Ctor.toString())\n}\n\nvar hasSymbol =\n typeof Symbol !== 'undefined' && isNative(Symbol) &&\n typeof Reflect !== 'undefined' && isNative(Reflect.ownKeys);\n\nvar _Set;\n/* istanbul ignore if */ // $flow-disable-line\nif (typeof Set !== 'undefined' && isNative(Set)) {\n // use native Set when available.\n _Set = Set;\n} else {\n // a non-standard Set polyfill that only works with primitive keys.\n _Set = (function () {\n function Set () {\n this.set = Object.create(null);\n }\n Set.prototype.has = function has (key) {\n return this.set[key] === true\n };\n Set.prototype.add = function add (key) {\n this.set[key] = true;\n };\n Set.prototype.clear = function clear () {\n this.set = Object.create(null);\n };\n\n return Set;\n }());\n}\n\n/* */\n\nvar warn = noop;\nvar tip = noop;\nvar generateComponentTrace = (noop); // work around flow check\nvar formatComponentName = (noop);\n\nif (process.env.NODE_ENV !== 'production') {\n var hasConsole = typeof console !== 'undefined';\n var classifyRE = /(?:^|[-_])(\\w)/g;\n var classify = function (str) { return str\n .replace(classifyRE, function (c) { return c.toUpperCase(); })\n .replace(/[-_]/g, ''); };\n\n warn = function (msg, vm) {\n var trace = vm ? generateComponentTrace(vm) : '';\n\n if (config.warnHandler) {\n config.warnHandler.call(null, msg, vm, trace);\n } else if (hasConsole && (!config.silent)) {\n console.error((\"[Vue warn]: \" + msg + trace));\n }\n };\n\n tip = function (msg, vm) {\n if (hasConsole && (!config.silent)) {\n console.warn(\"[Vue tip]: \" + msg + (\n vm ? generateComponentTrace(vm) : ''\n ));\n }\n };\n\n formatComponentName = function (vm, includeFile) {\n if (vm.$root === vm) {\n return '<Root>'\n }\n var options = typeof vm === 'function' && vm.cid != null\n ? vm.options\n : vm._isVue\n ? vm.$options || vm.constructor.options\n : vm || {};\n var name = options.name || options._componentTag;\n var file = options.__file;\n if (!name && file) {\n var match = file.match(/([^/\\\\]+)\\.vue$/);\n name = match && match[1];\n }\n\n return (\n (name ? (\"<\" + (classify(name)) + \">\") : \"<Anonymous>\") +\n (file && includeFile !== false ? (\" at \" + file) : '')\n )\n };\n\n var repeat = function (str, n) {\n var res = '';\n while (n) {\n if (n % 2 === 1) { res += str; }\n if (n > 1) { str += str; }\n n >>= 1;\n }\n return res\n };\n\n generateComponentTrace = function (vm) {\n if (vm._isVue && vm.$parent) {\n var tree = [];\n var currentRecursiveSequence = 0;\n while (vm) {\n if (tree.length > 0) {\n var last = tree[tree.length - 1];\n if (last.constructor === vm.constructor) {\n currentRecursiveSequence++;\n vm = vm.$parent;\n continue\n } else if (currentRecursiveSequence > 0) {\n tree[tree.length - 1] = [last, currentRecursiveSequence];\n currentRecursiveSequence = 0;\n }\n }\n tree.push(vm);\n vm = vm.$parent;\n }\n return '\\n\\nfound in\\n\\n' + tree\n .map(function (vm, i) { return (\"\" + (i === 0 ? '---> ' : repeat(' ', 5 + i * 2)) + (Array.isArray(vm)\n ? ((formatComponentName(vm[0])) + \"... (\" + (vm[1]) + \" recursive calls)\")\n : formatComponentName(vm))); })\n .join('\\n')\n } else {\n return (\"\\n\\n(found in \" + (formatComponentName(vm)) + \")\")\n }\n };\n}\n\n/* */\n\n\nvar uid = 0;\n\n/**\n * A dep is an observable that can have multiple\n * directives subscribing to it.\n */\nvar Dep = function Dep () {\n this.id = uid++;\n this.subs = [];\n};\n\nDep.prototype.addSub = function addSub (sub) {\n this.subs.push(sub);\n};\n\nDep.prototype.removeSub = function removeSub (sub) {\n remove(this.subs, sub);\n};\n\nDep.prototype.depend = function depend () {\n if (Dep.target) {\n Dep.target.addDep(this);\n }\n};\n\nDep.prototype.notify = function notify () {\n // stabilize the subscriber list first\n var subs = this.subs.slice();\n for (var i = 0, l = subs.length; i < l; i++) {\n subs[i].update();\n }\n};\n\n// the current target watcher being evaluated.\n// this is globally unique because there could be only one\n// watcher being evaluated at any time.\nDep.target = null;\nvar targetStack = [];\n\nfunction pushTarget (_target) {\n if (Dep.target) { targetStack.push(Dep.target); }\n Dep.target = _target;\n}\n\nfunction popTarget () {\n Dep.target = targetStack.pop();\n}\n\n/* */\n\nvar VNode = function VNode (\n tag,\n data,\n children,\n text,\n elm,\n context,\n componentOptions,\n asyncFactory\n) {\n this.tag = tag;\n this.data = data;\n this.children = children;\n this.text = text;\n this.elm = elm;\n this.ns = undefined;\n this.context = context;\n this.functionalContext = undefined;\n this.functionalOptions = undefined;\n this.functionalScopeId = undefined;\n this.key = data && data.key;\n this.componentOptions = componentOptions;\n this.componentInstance = undefined;\n this.parent = undefined;\n this.raw = false;\n this.isStatic = false;\n this.isRootInsert = true;\n this.isComment = false;\n this.isCloned = false;\n this.isOnce = false;\n this.asyncFactory = asyncFactory;\n this.asyncMeta = undefined;\n this.isAsyncPlaceholder = false;\n};\n\nvar prototypeAccessors = { child: { configurable: true } };\n\n// DEPRECATED: alias for componentInstance for backwards compat.\n/* istanbul ignore next */\nprototypeAccessors.child.get = function () {\n return this.componentInstance\n};\n\nObject.defineProperties( VNode.prototype, prototypeAccessors );\n\nvar createEmptyVNode = function (text) {\n if ( text === void 0 ) text = '';\n\n var node = new VNode();\n node.text = text;\n node.isComment = true;\n return node\n};\n\nfunction createTextVNode (val) {\n return new VNode(undefined, undefined, undefined, String(val))\n}\n\n// optimized shallow clone\n// used for static nodes and slot nodes because they may be reused across\n// multiple renders, cloning them avoids errors when DOM manipulations rely\n// on their elm reference.\nfunction cloneVNode (vnode, deep) {\n var cloned = new VNode(\n vnode.tag,\n vnode.data,\n vnode.children,\n vnode.text,\n vnode.elm,\n vnode.context,\n vnode.componentOptions,\n vnode.asyncFactory\n );\n cloned.ns = vnode.ns;\n cloned.isStatic = vnode.isStatic;\n cloned.key = vnode.key;\n cloned.isComment = vnode.isComment;\n cloned.isCloned = true;\n if (deep && vnode.children) {\n cloned.children = cloneVNodes(vnode.children);\n }\n return cloned\n}\n\nfunction cloneVNodes (vnodes, deep) {\n var len = vnodes.length;\n var res = new Array(len);\n for (var i = 0; i < len; i++) {\n res[i] = cloneVNode(vnodes[i], deep);\n }\n return res\n}\n\n/*\n * not type checking this file because flow doesn't play well with\n * dynamically accessing methods on Array prototype\n */\n\nvar arrayProto = Array.prototype;\nvar arrayMethods = Object.create(arrayProto);[\n 'push',\n 'pop',\n 'shift',\n 'unshift',\n 'splice',\n 'sort',\n 'reverse'\n]\n.forEach(function (method) {\n // cache original method\n var original = arrayProto[method];\n def(arrayMethods, method, function mutator () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n var result = original.apply(this, args);\n var ob = this.__ob__;\n var inserted;\n switch (method) {\n case 'push':\n case 'unshift':\n inserted = args;\n break\n case 'splice':\n inserted = args.slice(2);\n break\n }\n if (inserted) { ob.observeArray(inserted); }\n // notify change\n ob.dep.notify();\n return result\n });\n});\n\n/* */\n\nvar arrayKeys = Object.getOwnPropertyNames(arrayMethods);\n\n/**\n * By default, when a reactive property is set, the new value is\n * also converted to become reactive. However when passing down props,\n * we don't want to force conversion because the value may be a nested value\n * under a frozen data structure. Converting it would defeat the optimization.\n */\nvar observerState = {\n shouldConvert: true\n};\n\n/**\n * Observer class that are attached to each observed\n * object. Once attached, the observer converts target\n * object's property keys into getter/setters that\n * collect dependencies and dispatches updates.\n */\nvar Observer = function Observer (value) {\n this.value = value;\n this.dep = new Dep();\n this.vmCount = 0;\n def(value, '__ob__', this);\n if (Array.isArray(value)) {\n var augment = hasProto\n ? protoAugment\n : copyAugment;\n augment(value, arrayMethods, arrayKeys);\n this.observeArray(value);\n } else {\n this.walk(value);\n }\n};\n\n/**\n * Walk through each property and convert them into\n * getter/setters. This method should only be called when\n * value type is Object.\n */\nObserver.prototype.walk = function walk (obj) {\n var keys = Object.keys(obj);\n for (var i = 0; i < keys.length; i++) {\n defineReactive(obj, keys[i], obj[keys[i]]);\n }\n};\n\n/**\n * Observe a list of Array items.\n */\nObserver.prototype.observeArray = function observeArray (items) {\n for (var i = 0, l = items.length; i < l; i++) {\n observe(items[i]);\n }\n};\n\n// helpers\n\n/**\n * Augment an target Object or Array by intercepting\n * the prototype chain using __proto__\n */\nfunction protoAugment (target, src, keys) {\n /* eslint-disable no-proto */\n target.__proto__ = src;\n /* eslint-enable no-proto */\n}\n\n/**\n * Augment an target Object or Array by defining\n * hidden properties.\n */\n/* istanbul ignore next */\nfunction copyAugment (target, src, keys) {\n for (var i = 0, l = keys.length; i < l; i++) {\n var key = keys[i];\n def(target, key, src[key]);\n }\n}\n\n/**\n * Attempt to create an observer instance for a value,\n * returns the new observer if successfully observed,\n * or the existing observer if the value already has one.\n */\nfunction observe (value, asRootData) {\n if (!isObject(value) || value instanceof VNode) {\n return\n }\n var ob;\n if (hasOwn(value, '__ob__') && value.__ob__ instanceof Observer) {\n ob = value.__ob__;\n } else if (\n observerState.shouldConvert &&\n !isServerRendering() &&\n (Array.isArray(value) || isPlainObject(value)) &&\n Object.isExtensible(value) &&\n !value._isVue\n ) {\n ob = new Observer(value);\n }\n if (asRootData && ob) {\n ob.vmCount++;\n }\n return ob\n}\n\n/**\n * Define a reactive property on an Object.\n */\nfunction defineReactive (\n obj,\n key,\n val,\n customSetter,\n shallow\n) {\n var dep = new Dep();\n\n var property = Object.getOwnPropertyDescriptor(obj, key);\n if (property && property.configurable === false) {\n return\n }\n\n // cater for pre-defined getter/setters\n var getter = property && property.get;\n var setter = property && property.set;\n\n var childOb = !shallow && observe(val);\n Object.defineProperty(obj, key, {\n enumerable: true,\n configurable: true,\n get: function reactiveGetter () {\n var value = getter ? getter.call(obj) : val;\n if (Dep.target) {\n dep.depend();\n if (childOb) {\n childOb.dep.depend();\n if (Array.isArray(value)) {\n dependArray(value);\n }\n }\n }\n return value\n },\n set: function reactiveSetter (newVal) {\n var value = getter ? getter.call(obj) : val;\n /* eslint-disable no-self-compare */\n if (newVal === value || (newVal !== newVal && value !== value)) {\n return\n }\n /* eslint-enable no-self-compare */\n if (process.env.NODE_ENV !== 'production' && customSetter) {\n customSetter();\n }\n if (setter) {\n setter.call(obj, newVal);\n } else {\n val = newVal;\n }\n childOb = !shallow && observe(newVal);\n dep.notify();\n }\n });\n}\n\n/**\n * Set a property on an object. Adds the new property and\n * triggers change notification if the property doesn't\n * already exist.\n */\nfunction set (target, key, val) {\n if (Array.isArray(target) && isValidArrayIndex(key)) {\n target.length = Math.max(target.length, key);\n target.splice(key, 1, val);\n return val\n }\n if (hasOwn(target, key)) {\n target[key] = val;\n return val\n }\n var ob = (target).__ob__;\n if (target._isVue || (ob && ob.vmCount)) {\n process.env.NODE_ENV !== 'production' && warn(\n 'Avoid adding reactive properties to a Vue instance or its root $data ' +\n 'at runtime - declare it upfront in the data option.'\n );\n return val\n }\n if (!ob) {\n target[key] = val;\n return val\n }\n defineReactive(ob.value, key, val);\n ob.dep.notify();\n return val\n}\n\n/**\n * Delete a property and trigger change if necessary.\n */\nfunction del (target, key) {\n if (Array.isArray(target) && isValidArrayIndex(key)) {\n target.splice(key, 1);\n return\n }\n var ob = (target).__ob__;\n if (target._isVue || (ob && ob.vmCount)) {\n process.env.NODE_ENV !== 'production' && warn(\n 'Avoid deleting properties on a Vue instance or its root $data ' +\n '- just set it to null.'\n );\n return\n }\n if (!hasOwn(target, key)) {\n return\n }\n delete target[key];\n if (!ob) {\n return\n }\n ob.dep.notify();\n}\n\n/**\n * Collect dependencies on array elements when the array is touched, since\n * we cannot intercept array element access like property getters.\n */\nfunction dependArray (value) {\n for (var e = (void 0), i = 0, l = value.length; i < l; i++) {\n e = value[i];\n e && e.__ob__ && e.__ob__.dep.depend();\n if (Array.isArray(e)) {\n dependArray(e);\n }\n }\n}\n\n/* */\n\n/**\n * Option overwriting strategies are functions that handle\n * how to merge a parent option value and a child option\n * value into the final value.\n */\nvar strats = config.optionMergeStrategies;\n\n/**\n * Options with restrictions\n */\nif (process.env.NODE_ENV !== 'production') {\n strats.el = strats.propsData = function (parent, child, vm, key) {\n if (!vm) {\n warn(\n \"option \\\"\" + key + \"\\\" can only be used during instance \" +\n 'creation with the `new` keyword.'\n );\n }\n return defaultStrat(parent, child)\n };\n}\n\n/**\n * Helper that recursively merges two data objects together.\n */\nfunction mergeData (to, from) {\n if (!from) { return to }\n var key, toVal, fromVal;\n var keys = Object.keys(from);\n for (var i = 0; i < keys.length; i++) {\n key = keys[i];\n toVal = to[key];\n fromVal = from[key];\n if (!hasOwn(to, key)) {\n set(to, key, fromVal);\n } else if (isPlainObject(toVal) && isPlainObject(fromVal)) {\n mergeData(toVal, fromVal);\n }\n }\n return to\n}\n\n/**\n * Data\n */\nfunction mergeDataOrFn (\n parentVal,\n childVal,\n vm\n) {\n if (!vm) {\n // in a Vue.extend merge, both should be functions\n if (!childVal) {\n return parentVal\n }\n if (!parentVal) {\n return childVal\n }\n // when parentVal & childVal are both present,\n // we need to return a function that returns the\n // merged result of both functions... no need to\n // check if parentVal is a function here because\n // it has to be a function to pass previous merges.\n return function mergedDataFn () {\n return mergeData(\n typeof childVal === 'function' ? childVal.call(this) : childVal,\n typeof parentVal === 'function' ? parentVal.call(this) : parentVal\n )\n }\n } else if (parentVal || childVal) {\n return function mergedInstanceDataFn () {\n // instance merge\n var instanceData = typeof childVal === 'function'\n ? childVal.call(vm)\n : childVal;\n var defaultData = typeof parentVal === 'function'\n ? parentVal.call(vm)\n : parentVal;\n if (instanceData) {\n return mergeData(instanceData, defaultData)\n } else {\n return defaultData\n }\n }\n }\n}\n\nstrats.data = function (\n parentVal,\n childVal,\n vm\n) {\n if (!vm) {\n if (childVal && typeof childVal !== 'function') {\n process.env.NODE_ENV !== 'production' && warn(\n 'The \"data\" option should be a function ' +\n 'that returns a per-instance value in component ' +\n 'definitions.',\n vm\n );\n\n return parentVal\n }\n return mergeDataOrFn.call(this, parentVal, childVal)\n }\n\n return mergeDataOrFn(parentVal, childVal, vm)\n};\n\n/**\n * Hooks and props are merged as arrays.\n */\nfunction mergeHook (\n parentVal,\n childVal\n) {\n return childVal\n ? parentVal\n ? parentVal.concat(childVal)\n : Array.isArray(childVal)\n ? childVal\n : [childVal]\n : parentVal\n}\n\nLIFECYCLE_HOOKS.forEach(function (hook) {\n strats[hook] = mergeHook;\n});\n\n/**\n * Assets\n *\n * When a vm is present (instance creation), we need to do\n * a three-way merge between constructor options, instance\n * options and parent options.\n */\nfunction mergeAssets (\n parentVal,\n childVal,\n vm,\n key\n) {\n var res = Object.create(parentVal || null);\n if (childVal) {\n process.env.NODE_ENV !== 'production' && assertObjectType(key, childVal, vm);\n return extend(res, childVal)\n } else {\n return res\n }\n}\n\nASSET_TYPES.forEach(function (type) {\n strats[type + 's'] = mergeAssets;\n});\n\n/**\n * Watchers.\n *\n * Watchers hashes should not overwrite one\n * another, so we merge them as arrays.\n */\nstrats.watch = function (\n parentVal,\n childVal,\n vm,\n key\n) {\n // work around Firefox's Object.prototype.watch...\n if (parentVal === nativeWatch) { parentVal = undefined; }\n if (childVal === nativeWatch) { childVal = undefined; }\n /* istanbul ignore if */\n if (!childVal) { return Object.create(parentVal || null) }\n if (process.env.NODE_ENV !== 'production') {\n assertObjectType(key, childVal, vm);\n }\n if (!parentVal) { return childVal }\n var ret = {};\n extend(ret, parentVal);\n for (var key$1 in childVal) {\n var parent = ret[key$1];\n var child = childVal[key$1];\n if (parent && !Array.isArray(parent)) {\n parent = [parent];\n }\n ret[key$1] = parent\n ? parent.concat(child)\n : Array.isArray(child) ? child : [child];\n }\n return ret\n};\n\n/**\n * Other object hashes.\n */\nstrats.props =\nstrats.methods =\nstrats.inject =\nstrats.computed = function (\n parentVal,\n childVal,\n vm,\n key\n) {\n if (childVal && process.env.NODE_ENV !== 'production') {\n assertObjectType(key, childVal, vm);\n }\n if (!parentVal) { return childVal }\n var ret = Object.create(null);\n extend(ret, parentVal);\n if (childVal) { extend(ret, childVal); }\n return ret\n};\nstrats.provide = mergeDataOrFn;\n\n/**\n * Default strategy.\n */\nvar defaultStrat = function (parentVal, childVal) {\n return childVal === undefined\n ? parentVal\n : childVal\n};\n\n/**\n * Validate component names\n */\nfunction checkComponents (options) {\n for (var key in options.components) {\n var lower = key.toLowerCase();\n if (isBuiltInTag(lower) || config.isReservedTag(lower)) {\n warn(\n 'Do not use built-in or reserved HTML elements as component ' +\n 'id: ' + key\n );\n }\n }\n}\n\n/**\n * Ensure all props option syntax are normalized into the\n * Object-based format.\n */\nfunction normalizeProps (options, vm) {\n var props = options.props;\n if (!props) { return }\n var res = {};\n var i, val, name;\n if (Array.isArray(props)) {\n i = props.length;\n while (i--) {\n val = props[i];\n if (typeof val === 'string') {\n name = camelize(val);\n res[name] = { type: null };\n } else if (process.env.NODE_ENV !== 'production') {\n warn('props must be strings when using array syntax.');\n }\n }\n } else if (isPlainObject(props)) {\n for (var key in props) {\n val = props[key];\n name = camelize(key);\n res[name] = isPlainObject(val)\n ? val\n : { type: val };\n }\n } else if (process.env.NODE_ENV !== 'production') {\n warn(\n \"Invalid value for option \\\"props\\\": expected an Array or an Object, \" +\n \"but got \" + (toRawType(props)) + \".\",\n vm\n );\n }\n options.props = res;\n}\n\n/**\n * Normalize all injections into Object-based format\n */\nfunction normalizeInject (options, vm) {\n var inject = options.inject;\n var normalized = options.inject = {};\n if (Array.isArray(inject)) {\n for (var i = 0; i < inject.length; i++) {\n normalized[inject[i]] = { from: inject[i] };\n }\n } else if (isPlainObject(inject)) {\n for (var key in inject) {\n var val = inject[key];\n normalized[key] = isPlainObject(val)\n ? extend({ from: key }, val)\n : { from: val };\n }\n } else if (process.env.NODE_ENV !== 'production' && inject) {\n warn(\n \"Invalid value for option \\\"inject\\\": expected an Array or an Object, \" +\n \"but got \" + (toRawType(inject)) + \".\",\n vm\n );\n }\n}\n\n/**\n * Normalize raw function directives into object format.\n */\nfunction normalizeDirectives (options) {\n var dirs = options.directives;\n if (dirs) {\n for (var key in dirs) {\n var def = dirs[key];\n if (typeof def === 'function') {\n dirs[key] = { bind: def, update: def };\n }\n }\n }\n}\n\nfunction assertObjectType (name, value, vm) {\n if (!isPlainObject(value)) {\n warn(\n \"Invalid value for option \\\"\" + name + \"\\\": expected an Object, \" +\n \"but got \" + (toRawType(value)) + \".\",\n vm\n );\n }\n}\n\n/**\n * Merge two option objects into a new one.\n * Core utility used in both instantiation and inheritance.\n */\nfunction mergeOptions (\n parent,\n child,\n vm\n) {\n if (process.env.NODE_ENV !== 'production') {\n checkComponents(child);\n }\n\n if (typeof child === 'function') {\n child = child.options;\n }\n\n normalizeProps(child, vm);\n normalizeInject(child, vm);\n normalizeDirectives(child);\n var extendsFrom = child.extends;\n if (extendsFrom) {\n parent = mergeOptions(parent, extendsFrom, vm);\n }\n if (child.mixins) {\n for (var i = 0, l = child.mixins.length; i < l; i++) {\n parent = mergeOptions(parent, child.mixins[i], vm);\n }\n }\n var options = {};\n var key;\n for (key in parent) {\n mergeField(key);\n }\n for (key in child) {\n if (!hasOwn(parent, key)) {\n mergeField(key);\n }\n }\n function mergeField (key) {\n var strat = strats[key] || defaultStrat;\n options[key] = strat(parent[key], child[key], vm, key);\n }\n return options\n}\n\n/**\n * Resolve an asset.\n * This function is used because child instances need access\n * to assets defined in its ancestor chain.\n */\nfunction resolveAsset (\n options,\n type,\n id,\n warnMissing\n) {\n /* istanbul ignore if */\n if (typeof id !== 'string') {\n return\n }\n var assets = options[type];\n // check local registration variations first\n if (hasOwn(assets, id)) { return assets[id] }\n var camelizedId = camelize(id);\n if (hasOwn(assets, camelizedId)) { return assets[camelizedId] }\n var PascalCaseId = capitalize(camelizedId);\n if (hasOwn(assets, PascalCaseId)) { return assets[PascalCaseId] }\n // fallback to prototype chain\n var res = assets[id] || assets[camelizedId] || assets[PascalCaseId];\n if (process.env.NODE_ENV !== 'production' && warnMissing && !res) {\n warn(\n 'Failed to resolve ' + type.slice(0, -1) + ': ' + id,\n options\n );\n }\n return res\n}\n\n/* */\n\nfunction validateProp (\n key,\n propOptions,\n propsData,\n vm\n) {\n var prop = propOptions[key];\n var absent = !hasOwn(propsData, key);\n var value = propsData[key];\n // handle boolean props\n if (isType(Boolean, prop.type)) {\n if (absent && !hasOwn(prop, 'default')) {\n value = false;\n } else if (!isType(String, prop.type) && (value === '' || value === hyphenate(key))) {\n value = true;\n }\n }\n // check default value\n if (value === undefined) {\n value = getPropDefaultValue(vm, prop, key);\n // since the default value is a fresh copy,\n // make sure to observe it.\n var prevShouldConvert = observerState.shouldConvert;\n observerState.shouldConvert = true;\n observe(value);\n observerState.shouldConvert = prevShouldConvert;\n }\n if (process.env.NODE_ENV !== 'production') {\n assertProp(prop, key, value, vm, absent);\n }\n return value\n}\n\n/**\n * Get the default value of a prop.\n */\nfunction getPropDefaultValue (vm, prop, key) {\n // no default, return undefined\n if (!hasOwn(prop, 'default')) {\n return undefined\n }\n var def = prop.default;\n // warn against non-factory defaults for Object & Array\n if (process.env.NODE_ENV !== 'production' && isObject(def)) {\n warn(\n 'Invalid default value for prop \"' + key + '\": ' +\n 'Props with type Object/Array must use a factory function ' +\n 'to return the default value.',\n vm\n );\n }\n // the raw prop value was also undefined from previous render,\n // return previous default value to avoid unnecessary watcher trigger\n if (vm && vm.$options.propsData &&\n vm.$options.propsData[key] === undefined &&\n vm._props[key] !== undefined\n ) {\n return vm._props[key]\n }\n // call factory function for non-Function types\n // a value is Function if its prototype is function even across different execution context\n return typeof def === 'function' && getType(prop.type) !== 'Function'\n ? def.call(vm)\n : def\n}\n\n/**\n * Assert whether a prop is valid.\n */\nfunction assertProp (\n prop,\n name,\n value,\n vm,\n absent\n) {\n if (prop.required && absent) {\n warn(\n 'Missing required prop: \"' + name + '\"',\n vm\n );\n return\n }\n if (value == null && !prop.required) {\n return\n }\n var type = prop.type;\n var valid = !type || type === true;\n var expectedTypes = [];\n if (type) {\n if (!Array.isArray(type)) {\n type = [type];\n }\n for (var i = 0; i < type.length && !valid; i++) {\n var assertedType = assertType(value, type[i]);\n expectedTypes.push(assertedType.expectedType || '');\n valid = assertedType.valid;\n }\n }\n if (!valid) {\n warn(\n \"Invalid prop: type check failed for prop \\\"\" + name + \"\\\".\" +\n \" Expected \" + (expectedTypes.map(capitalize).join(', ')) +\n \", got \" + (toRawType(value)) + \".\",\n vm\n );\n return\n }\n var validator = prop.validator;\n if (validator) {\n if (!validator(value)) {\n warn(\n 'Invalid prop: custom validator check failed for prop \"' + name + '\".',\n vm\n );\n }\n }\n}\n\nvar simpleCheckRE = /^(String|Number|Boolean|Function|Symbol)$/;\n\nfunction assertType (value, type) {\n var valid;\n var expectedType = getType(type);\n if (simpleCheckRE.test(expectedType)) {\n var t = typeof value;\n valid = t === expectedType.toLowerCase();\n // for primitive wrapper objects\n if (!valid && t === 'object') {\n valid = value instanceof type;\n }\n } else if (expectedType === 'Object') {\n valid = isPlainObject(value);\n } else if (expectedType === 'Array') {\n valid = Array.isArray(value);\n } else {\n valid = value instanceof type;\n }\n return {\n valid: valid,\n expectedType: expectedType\n }\n}\n\n/**\n * Use function string name to check built-in types,\n * because a simple equality check will fail when running\n * across different vms / iframes.\n */\nfunction getType (fn) {\n var match = fn && fn.toString().match(/^\\s*function (\\w+)/);\n return match ? match[1] : ''\n}\n\nfunction isType (type, fn) {\n if (!Array.isArray(fn)) {\n return getType(fn) === getType(type)\n }\n for (var i = 0, len = fn.length; i < len; i++) {\n if (getType(fn[i]) === getType(type)) {\n return true\n }\n }\n /* istanbul ignore next */\n return false\n}\n\n/* */\n\nfunction handleError (err, vm, info) {\n if (vm) {\n var cur = vm;\n while ((cur = cur.$parent)) {\n var hooks = cur.$options.errorCaptured;\n if (hooks) {\n for (var i = 0; i < hooks.length; i++) {\n try {\n var capture = hooks[i].call(cur, err, vm, info) === false;\n if (capture) { return }\n } catch (e) {\n globalHandleError(e, cur, 'errorCaptured hook');\n }\n }\n }\n }\n }\n globalHandleError(err, vm, info);\n}\n\nfunction globalHandleError (err, vm, info) {\n if (config.errorHandler) {\n try {\n return config.errorHandler.call(null, err, vm, info)\n } catch (e) {\n logError(e, null, 'config.errorHandler');\n }\n }\n logError(err, vm, info);\n}\n\nfunction logError (err, vm, info) {\n if (process.env.NODE_ENV !== 'production') {\n warn((\"Error in \" + info + \": \\\"\" + (err.toString()) + \"\\\"\"), vm);\n }\n /* istanbul ignore else */\n if (inBrowser && typeof console !== 'undefined') {\n console.error(err);\n } else {\n throw err\n }\n}\n\n/* */\n/* globals MessageChannel */\n\nvar callbacks = [];\nvar pending = false;\n\nfunction flushCallbacks () {\n pending = false;\n var copies = callbacks.slice(0);\n callbacks.length = 0;\n for (var i = 0; i < copies.length; i++) {\n copies[i]();\n }\n}\n\n// Here we have async deferring wrappers using both micro and macro tasks.\n// In < 2.4 we used micro tasks everywhere, but there are some scenarios where\n// micro tasks have too high a priority and fires in between supposedly\n// sequential events (e.g. #4521, #6690) or even between bubbling of the same\n// event (#6566). However, using macro tasks everywhere also has subtle problems\n// when state is changed right before repaint (e.g. #6813, out-in transitions).\n// Here we use micro task by default, but expose a way to force macro task when\n// needed (e.g. in event handlers attached by v-on).\nvar microTimerFunc;\nvar macroTimerFunc;\nvar useMacroTask = false;\n\n// Determine (macro) Task defer implementation.\n// Technically setImmediate should be the ideal choice, but it's only available\n// in IE. The only polyfill that consistently queues the callback after all DOM\n// events triggered in the same loop is by using MessageChannel.\n/* istanbul ignore if */\nif (typeof setImmediate !== 'undefined' && isNative(setImmediate)) {\n macroTimerFunc = function () {\n setImmediate(flushCallbacks);\n };\n} else if (typeof MessageChannel !== 'undefined' && (\n isNative(MessageChannel) ||\n // PhantomJS\n MessageChannel.toString() === '[object MessageChannelConstructor]'\n)) {\n var channel = new MessageChannel();\n var port = channel.port2;\n channel.port1.onmessage = flushCallbacks;\n macroTimerFunc = function () {\n port.postMessage(1);\n };\n} else {\n /* istanbul ignore next */\n macroTimerFunc = function () {\n setTimeout(flushCallbacks, 0);\n };\n}\n\n// Determine MicroTask defer implementation.\n/* istanbul ignore next, $flow-disable-line */\nif (typeof Promise !== 'undefined' && isNative(Promise)) {\n var p = Promise.resolve();\n microTimerFunc = function () {\n p.then(flushCallbacks);\n // in problematic UIWebViews, Promise.then doesn't completely break, but\n // it can get stuck in a weird state where callbacks are pushed into the\n // microtask queue but the queue isn't being flushed, until the browser\n // needs to do some other work, e.g. handle a timer. Therefore we can\n // \"force\" the microtask queue to be flushed by adding an empty timer.\n if (isIOS) { setTimeout(noop); }\n };\n} else {\n // fallback to macro\n microTimerFunc = macroTimerFunc;\n}\n\n/**\n * Wrap a function so that if any code inside triggers state change,\n * the changes are queued using a Task instead of a MicroTask.\n */\nfunction withMacroTask (fn) {\n return fn._withTask || (fn._withTask = function () {\n useMacroTask = true;\n var res = fn.apply(null, arguments);\n useMacroTask = false;\n return res\n })\n}\n\nfunction nextTick (cb, ctx) {\n var _resolve;\n callbacks.push(function () {\n if (cb) {\n try {\n cb.call(ctx);\n } catch (e) {\n handleError(e, ctx, 'nextTick');\n }\n } else if (_resolve) {\n _resolve(ctx);\n }\n });\n if (!pending) {\n pending = true;\n if (useMacroTask) {\n macroTimerFunc();\n } else {\n microTimerFunc();\n }\n }\n // $flow-disable-line\n if (!cb && typeof Promise !== 'undefined') {\n return new Promise(function (resolve) {\n _resolve = resolve;\n })\n }\n}\n\n/* */\n\nvar mark;\nvar measure;\n\nif (process.env.NODE_ENV !== 'production') {\n var perf = inBrowser && window.performance;\n /* istanbul ignore if */\n if (\n perf &&\n perf.mark &&\n perf.measure &&\n perf.clearMarks &&\n perf.clearMeasures\n ) {\n mark = function (tag) { return perf.mark(tag); };\n measure = function (name, startTag, endTag) {\n perf.measure(name, startTag, endTag);\n perf.clearMarks(startTag);\n perf.clearMarks(endTag);\n perf.clearMeasures(name);\n };\n }\n}\n\n/* not type checking this file because flow doesn't play well with Proxy */\n\nvar initProxy;\n\nif (process.env.NODE_ENV !== 'production') {\n var allowedGlobals = makeMap(\n 'Infinity,undefined,NaN,isFinite,isNaN,' +\n 'parseFloat,parseInt,decodeURI,decodeURIComponent,encodeURI,encodeURIComponent,' +\n 'Math,Number,Date,Array,Object,Boolean,String,RegExp,Map,Set,JSON,Intl,' +\n 'require' // for Webpack/Browserify\n );\n\n var warnNonPresent = function (target, key) {\n warn(\n \"Property or method \\\"\" + key + \"\\\" is not defined on the instance but \" +\n 'referenced during render. Make sure that this property is reactive, ' +\n 'either in the data option, or for class-based components, by ' +\n 'initializing the property. ' +\n 'See: https://vuejs.org/v2/guide/reactivity.html#Declaring-Reactive-Properties.',\n target\n );\n };\n\n var hasProxy =\n typeof Proxy !== 'undefined' &&\n Proxy.toString().match(/native code/);\n\n if (hasProxy) {\n var isBuiltInModifier = makeMap('stop,prevent,self,ctrl,shift,alt,meta,exact');\n config.keyCodes = new Proxy(config.keyCodes, {\n set: function set (target, key, value) {\n if (isBuiltInModifier(key)) {\n warn((\"Avoid overwriting built-in modifier in config.keyCodes: .\" + key));\n return false\n } else {\n target[key] = value;\n return true\n }\n }\n });\n }\n\n var hasHandler = {\n has: function has (target, key) {\n var has = key in target;\n var isAllowed = allowedGlobals(key) || key.charAt(0) === '_';\n if (!has && !isAllowed) {\n warnNonPresent(target, key);\n }\n return has || !isAllowed\n }\n };\n\n var getHandler = {\n get: function get (target, key) {\n if (typeof key === 'string' && !(key in target)) {\n warnNonPresent(target, key);\n }\n return target[key]\n }\n };\n\n initProxy = function initProxy (vm) {\n if (hasProxy) {\n // determine which proxy handler to use\n var options = vm.$options;\n var handlers = options.render && options.render._withStripped\n ? getHandler\n : hasHandler;\n vm._renderProxy = new Proxy(vm, handlers);\n } else {\n vm._renderProxy = vm;\n }\n };\n}\n\n/* */\n\nvar normalizeEvent = cached(function (name) {\n var passive = name.charAt(0) === '&';\n name = passive ? name.slice(1) : name;\n var once$$1 = name.charAt(0) === '~'; // Prefixed last, checked first\n name = once$$1 ? name.slice(1) : name;\n var capture = name.charAt(0) === '!';\n name = capture ? name.slice(1) : name;\n return {\n name: name,\n once: once$$1,\n capture: capture,\n passive: passive\n }\n});\n\nfunction createFnInvoker (fns) {\n function invoker () {\n var arguments$1 = arguments;\n\n var fns = invoker.fns;\n if (Array.isArray(fns)) {\n var cloned = fns.slice();\n for (var i = 0; i < cloned.length; i++) {\n cloned[i].apply(null, arguments$1);\n }\n } else {\n // return handler return value for single handlers\n return fns.apply(null, arguments)\n }\n }\n invoker.fns = fns;\n return invoker\n}\n\nfunction updateListeners (\n on,\n oldOn,\n add,\n remove$$1,\n vm\n) {\n var name, cur, old, event;\n for (name in on) {\n cur = on[name];\n old = oldOn[name];\n event = normalizeEvent(name);\n if (isUndef(cur)) {\n process.env.NODE_ENV !== 'production' && warn(\n \"Invalid handler for event \\\"\" + (event.name) + \"\\\": got \" + String(cur),\n vm\n );\n } else if (isUndef(old)) {\n if (isUndef(cur.fns)) {\n cur = on[name] = createFnInvoker(cur);\n }\n add(event.name, cur, event.once, event.capture, event.passive);\n } else if (cur !== old) {\n old.fns = cur;\n on[name] = old;\n }\n }\n for (name in oldOn) {\n if (isUndef(on[name])) {\n event = normalizeEvent(name);\n remove$$1(event.name, oldOn[name], event.capture);\n }\n }\n}\n\n/* */\n\nfunction mergeVNodeHook (def, hookKey, hook) {\n var invoker;\n var oldHook = def[hookKey];\n\n function wrappedHook () {\n hook.apply(this, arguments);\n // important: remove merged hook to ensure it's called only once\n // and prevent memory leak\n remove(invoker.fns, wrappedHook);\n }\n\n if (isUndef(oldHook)) {\n // no existing hook\n invoker = createFnInvoker([wrappedHook]);\n } else {\n /* istanbul ignore if */\n if (isDef(oldHook.fns) && isTrue(oldHook.merged)) {\n // already a merged invoker\n invoker = oldHook;\n invoker.fns.push(wrappedHook);\n } else {\n // existing plain hook\n invoker = createFnInvoker([oldHook, wrappedHook]);\n }\n }\n\n invoker.merged = true;\n def[hookKey] = invoker;\n}\n\n/* */\n\nfunction extractPropsFromVNodeData (\n data,\n Ctor,\n tag\n) {\n // we are only extracting raw values here.\n // validation and default values are handled in the child\n // component itself.\n var propOptions = Ctor.options.props;\n if (isUndef(propOptions)) {\n return\n }\n var res = {};\n var attrs = data.attrs;\n var props = data.props;\n if (isDef(attrs) || isDef(props)) {\n for (var key in propOptions) {\n var altKey = hyphenate(key);\n if (process.env.NODE_ENV !== 'production') {\n var keyInLowerCase = key.toLowerCase();\n if (\n key !== keyInLowerCase &&\n attrs && hasOwn(attrs, keyInLowerCase)\n ) {\n tip(\n \"Prop \\\"\" + keyInLowerCase + \"\\\" is passed to component \" +\n (formatComponentName(tag || Ctor)) + \", but the declared prop name is\" +\n \" \\\"\" + key + \"\\\". \" +\n \"Note that HTML attributes are case-insensitive and camelCased \" +\n \"props need to use their kebab-case equivalents when using in-DOM \" +\n \"templates. You should probably use \\\"\" + altKey + \"\\\" instead of \\\"\" + key + \"\\\".\"\n );\n }\n }\n checkProp(res, props, key, altKey, true) ||\n checkProp(res, attrs, key, altKey, false);\n }\n }\n return res\n}\n\nfunction checkProp (\n res,\n hash,\n key,\n altKey,\n preserve\n) {\n if (isDef(hash)) {\n if (hasOwn(hash, key)) {\n res[key] = hash[key];\n if (!preserve) {\n delete hash[key];\n }\n return true\n } else if (hasOwn(hash, altKey)) {\n res[key] = hash[altKey];\n if (!preserve) {\n delete hash[altKey];\n }\n return true\n }\n }\n return false\n}\n\n/* */\n\n// The template compiler attempts to minimize the need for normalization by\n// statically analyzing the template at compile time.\n//\n// For plain HTML markup, normalization can be completely skipped because the\n// generated render function is guaranteed to return Array<VNode>. There are\n// two cases where extra normalization is needed:\n\n// 1. When the children contains components - because a functional component\n// may return an Array instead of a single root. In this case, just a simple\n// normalization is needed - if any child is an Array, we flatten the whole\n// thing with Array.prototype.concat. It is guaranteed to be only 1-level deep\n// because functional components already normalize their own children.\nfunction simpleNormalizeChildren (children) {\n for (var i = 0; i < children.length; i++) {\n if (Array.isArray(children[i])) {\n return Array.prototype.concat.apply([], children)\n }\n }\n return children\n}\n\n// 2. When the children contains constructs that always generated nested Arrays,\n// e.g. <template>, <slot>, v-for, or when the children is provided by user\n// with hand-written render functions / JSX. In such cases a full normalization\n// is needed to cater to all possible types of children values.\nfunction normalizeChildren (children) {\n return isPrimitive(children)\n ? [createTextVNode(children)]\n : Array.isArray(children)\n ? normalizeArrayChildren(children)\n : undefined\n}\n\nfunction isTextNode (node) {\n return isDef(node) && isDef(node.text) && isFalse(node.isComment)\n}\n\nfunction normalizeArrayChildren (children, nestedIndex) {\n var res = [];\n var i, c, lastIndex, last;\n for (i = 0; i < children.length; i++) {\n c = children[i];\n if (isUndef(c) || typeof c === 'boolean') { continue }\n lastIndex = res.length - 1;\n last = res[lastIndex];\n // nested\n if (Array.isArray(c)) {\n if (c.length > 0) {\n c = normalizeArrayChildren(c, ((nestedIndex || '') + \"_\" + i));\n // merge adjacent text nodes\n if (isTextNode(c[0]) && isTextNode(last)) {\n res[lastIndex] = createTextVNode(last.text + (c[0]).text);\n c.shift();\n }\n res.push.apply(res, c);\n }\n } else if (isPrimitive(c)) {\n if (isTextNode(last)) {\n // merge adjacent text nodes\n // this is necessary for SSR hydration because text nodes are\n // essentially merged when rendered to HTML strings\n res[lastIndex] = createTextVNode(last.text + c);\n } else if (c !== '') {\n // convert primitive to vnode\n res.push(createTextVNode(c));\n }\n } else {\n if (isTextNode(c) && isTextNode(last)) {\n // merge adjacent text nodes\n res[lastIndex] = createTextVNode(last.text + c.text);\n } else {\n // default key for nested array children (likely generated by v-for)\n if (isTrue(children._isVList) &&\n isDef(c.tag) &&\n isUndef(c.key) &&\n isDef(nestedIndex)) {\n c.key = \"__vlist\" + nestedIndex + \"_\" + i + \"__\";\n }\n res.push(c);\n }\n }\n }\n return res\n}\n\n/* */\n\nfunction ensureCtor (comp, base) {\n if (\n comp.__esModule ||\n (hasSymbol && comp[Symbol.toStringTag] === 'Module')\n ) {\n comp = comp.default;\n }\n return isObject(comp)\n ? base.extend(comp)\n : comp\n}\n\nfunction createAsyncPlaceholder (\n factory,\n data,\n context,\n children,\n tag\n) {\n var node = createEmptyVNode();\n node.asyncFactory = factory;\n node.asyncMeta = { data: data, context: context, children: children, tag: tag };\n return node\n}\n\nfunction resolveAsyncComponent (\n factory,\n baseCtor,\n context\n) {\n if (isTrue(factory.error) && isDef(factory.errorComp)) {\n return factory.errorComp\n }\n\n if (isDef(factory.resolved)) {\n return factory.resolved\n }\n\n if (isTrue(factory.loading) && isDef(factory.loadingComp)) {\n return factory.loadingComp\n }\n\n if (isDef(factory.contexts)) {\n // already pending\n factory.contexts.push(context);\n } else {\n var contexts = factory.contexts = [context];\n var sync = true;\n\n var forceRender = function () {\n for (var i = 0, l = contexts.length; i < l; i++) {\n contexts[i].$forceUpdate();\n }\n };\n\n var resolve = once(function (res) {\n // cache resolved\n factory.resolved = ensureCtor(res, baseCtor);\n // invoke callbacks only if this is not a synchronous resolve\n // (async resolves are shimmed as synchronous during SSR)\n if (!sync) {\n forceRender();\n }\n });\n\n var reject = once(function (reason) {\n process.env.NODE_ENV !== 'production' && warn(\n \"Failed to resolve async component: \" + (String(factory)) +\n (reason ? (\"\\nReason: \" + reason) : '')\n );\n if (isDef(factory.errorComp)) {\n factory.error = true;\n forceRender();\n }\n });\n\n var res = factory(resolve, reject);\n\n if (isObject(res)) {\n if (typeof res.then === 'function') {\n // () => Promise\n if (isUndef(factory.resolved)) {\n res.then(resolve, reject);\n }\n } else if (isDef(res.component) && typeof res.component.then === 'function') {\n res.component.then(resolve, reject);\n\n if (isDef(res.error)) {\n factory.errorComp = ensureCtor(res.error, baseCtor);\n }\n\n if (isDef(res.loading)) {\n factory.loadingComp = ensureCtor(res.loading, baseCtor);\n if (res.delay === 0) {\n factory.loading = true;\n } else {\n setTimeout(function () {\n if (isUndef(factory.resolved) && isUndef(factory.error)) {\n factory.loading = true;\n forceRender();\n }\n }, res.delay || 200);\n }\n }\n\n if (isDef(res.timeout)) {\n setTimeout(function () {\n if (isUndef(factory.resolved)) {\n reject(\n process.env.NODE_ENV !== 'production'\n ? (\"timeout (\" + (res.timeout) + \"ms)\")\n : null\n );\n }\n }, res.timeout);\n }\n }\n }\n\n sync = false;\n // return in case resolved synchronously\n return factory.loading\n ? factory.loadingComp\n : factory.resolved\n }\n}\n\n/* */\n\nfunction isAsyncPlaceholder (node) {\n return node.isComment && node.asyncFactory\n}\n\n/* */\n\nfunction getFirstComponentChild (children) {\n if (Array.isArray(children)) {\n for (var i = 0; i < children.length; i++) {\n var c = children[i];\n if (isDef(c) && (isDef(c.componentOptions) || isAsyncPlaceholder(c))) {\n return c\n }\n }\n }\n}\n\n/* */\n\n/* */\n\nfunction initEvents (vm) {\n vm._events = Object.create(null);\n vm._hasHookEvent = false;\n // init parent attached events\n var listeners = vm.$options._parentListeners;\n if (listeners) {\n updateComponentListeners(vm, listeners);\n }\n}\n\nvar target;\n\nfunction add (event, fn, once) {\n if (once) {\n target.$once(event, fn);\n } else {\n target.$on(event, fn);\n }\n}\n\nfunction remove$1 (event, fn) {\n target.$off(event, fn);\n}\n\nfunction updateComponentListeners (\n vm,\n listeners,\n oldListeners\n) {\n target = vm;\n updateListeners(listeners, oldListeners || {}, add, remove$1, vm);\n}\n\nfunction eventsMixin (Vue) {\n var hookRE = /^hook:/;\n Vue.prototype.$on = function (event, fn) {\n var this$1 = this;\n\n var vm = this;\n if (Array.isArray(event)) {\n for (var i = 0, l = event.length; i < l; i++) {\n this$1.$on(event[i], fn);\n }\n } else {\n (vm._events[event] || (vm._events[event] = [])).push(fn);\n // optimize hook:event cost by using a boolean flag marked at registration\n // instead of a hash lookup\n if (hookRE.test(event)) {\n vm._hasHookEvent = true;\n }\n }\n return vm\n };\n\n Vue.prototype.$once = function (event, fn) {\n var vm = this;\n function on () {\n vm.$off(event, on);\n fn.apply(vm, arguments);\n }\n on.fn = fn;\n vm.$on(event, on);\n return vm\n };\n\n Vue.prototype.$off = function (event, fn) {\n var this$1 = this;\n\n var vm = this;\n // all\n if (!arguments.length) {\n vm._events = Object.create(null);\n return vm\n }\n // array of events\n if (Array.isArray(event)) {\n for (var i = 0, l = event.length; i < l; i++) {\n this$1.$off(event[i], fn);\n }\n return vm\n }\n // specific event\n var cbs = vm._events[event];\n if (!cbs) {\n return vm\n }\n if (arguments.length === 1) {\n vm._events[event] = null;\n return vm\n }\n if (fn) {\n // specific handler\n var cb;\n var i$1 = cbs.length;\n while (i$1--) {\n cb = cbs[i$1];\n if (cb === fn || cb.fn === fn) {\n cbs.splice(i$1, 1);\n break\n }\n }\n }\n return vm\n };\n\n Vue.prototype.$emit = function (event) {\n var vm = this;\n if (process.env.NODE_ENV !== 'production') {\n var lowerCaseEvent = event.toLowerCase();\n if (lowerCaseEvent !== event && vm._events[lowerCaseEvent]) {\n tip(\n \"Event \\\"\" + lowerCaseEvent + \"\\\" is emitted in component \" +\n (formatComponentName(vm)) + \" but the handler is registered for \\\"\" + event + \"\\\". \" +\n \"Note that HTML attributes are case-insensitive and you cannot use \" +\n \"v-on to listen to camelCase events when using in-DOM templates. \" +\n \"You should probably use \\\"\" + (hyphenate(event)) + \"\\\" instead of \\\"\" + event + \"\\\".\"\n );\n }\n }\n var cbs = vm._events[event];\n if (cbs) {\n cbs = cbs.length > 1 ? toArray(cbs) : cbs;\n var args = toArray(arguments, 1);\n for (var i = 0, l = cbs.length; i < l; i++) {\n try {\n cbs[i].apply(vm, args);\n } catch (e) {\n handleError(e, vm, (\"event handler for \\\"\" + event + \"\\\"\"));\n }\n }\n }\n return vm\n };\n}\n\n/* */\n\n/**\n * Runtime helper for resolving raw children VNodes into a slot object.\n */\nfunction resolveSlots (\n children,\n context\n) {\n var slots = {};\n if (!children) {\n return slots\n }\n var defaultSlot = [];\n for (var i = 0, l = children.length; i < l; i++) {\n var child = children[i];\n var data = child.data;\n // remove slot attribute if the node is resolved as a Vue slot node\n if (data && data.attrs && data.attrs.slot) {\n delete data.attrs.slot;\n }\n // named slots should only be respected if the vnode was rendered in the\n // same context.\n if ((child.context === context || child.functionalContext === context) &&\n data && data.slot != null\n ) {\n var name = child.data.slot;\n var slot = (slots[name] || (slots[name] = []));\n if (child.tag === 'template') {\n slot.push.apply(slot, child.children);\n } else {\n slot.push(child);\n }\n } else {\n defaultSlot.push(child);\n }\n }\n // ignore whitespace\n if (!defaultSlot.every(isWhitespace)) {\n slots.default = defaultSlot;\n }\n return slots\n}\n\nfunction isWhitespace (node) {\n return node.isComment || node.text === ' '\n}\n\nfunction resolveScopedSlots (\n fns, // see flow/vnode\n res\n) {\n res = res || {};\n for (var i = 0; i < fns.length; i++) {\n if (Array.isArray(fns[i])) {\n resolveScopedSlots(fns[i], res);\n } else {\n res[fns[i].key] = fns[i].fn;\n }\n }\n return res\n}\n\n/* */\n\nvar activeInstance = null;\nvar isUpdatingChildComponent = false;\n\nfunction initLifecycle (vm) {\n var options = vm.$options;\n\n // locate first non-abstract parent\n var parent = options.parent;\n if (parent && !options.abstract) {\n while (parent.$options.abstract && parent.$parent) {\n parent = parent.$parent;\n }\n parent.$children.push(vm);\n }\n\n vm.$parent = parent;\n vm.$root = parent ? parent.$root : vm;\n\n vm.$children = [];\n vm.$refs = {};\n\n vm._watcher = null;\n vm._inactive = null;\n vm._directInactive = false;\n vm._isMounted = false;\n vm._isDestroyed = false;\n vm._isBeingDestroyed = false;\n}\n\nfunction lifecycleMixin (Vue) {\n Vue.prototype._update = function (vnode, hydrating) {\n var vm = this;\n if (vm._isMounted) {\n callHook(vm, 'beforeUpdate');\n }\n var prevEl = vm.$el;\n var prevVnode = vm._vnode;\n var prevActiveInstance = activeInstance;\n activeInstance = vm;\n vm._vnode = vnode;\n // Vue.prototype.__patch__ is injected in entry points\n // based on the rendering backend used.\n if (!prevVnode) {\n // initial render\n vm.$el = vm.__patch__(\n vm.$el, vnode, hydrating, false /* removeOnly */,\n vm.$options._parentElm,\n vm.$options._refElm\n );\n // no need for the ref nodes after initial patch\n // this prevents keeping a detached DOM tree in memory (#5851)\n vm.$options._parentElm = vm.$options._refElm = null;\n } else {\n // updates\n vm.$el = vm.__patch__(prevVnode, vnode);\n }\n activeInstance = prevActiveInstance;\n // update __vue__ reference\n if (prevEl) {\n prevEl.__vue__ = null;\n }\n if (vm.$el) {\n vm.$el.__vue__ = vm;\n }\n // if parent is an HOC, update its $el as well\n if (vm.$vnode && vm.$parent && vm.$vnode === vm.$parent._vnode) {\n vm.$parent.$el = vm.$el;\n }\n // updated hook is called by the scheduler to ensure that children are\n // updated in a parent's updated hook.\n };\n\n Vue.prototype.$forceUpdate = function () {\n var vm = this;\n if (vm._watcher) {\n vm._watcher.update();\n }\n };\n\n Vue.prototype.$destroy = function () {\n var vm = this;\n if (vm._isBeingDestroyed) {\n return\n }\n callHook(vm, 'beforeDestroy');\n vm._isBeingDestroyed = true;\n // remove self from parent\n var parent = vm.$parent;\n if (parent && !parent._isBeingDestroyed && !vm.$options.abstract) {\n remove(parent.$children, vm);\n }\n // teardown watchers\n if (vm._watcher) {\n vm._watcher.teardown();\n }\n var i = vm._watchers.length;\n while (i--) {\n vm._watchers[i].teardown();\n }\n // remove reference from data ob\n // frozen object may not have observer.\n if (vm._data.__ob__) {\n vm._data.__ob__.vmCount--;\n }\n // call the last hook...\n vm._isDestroyed = true;\n // invoke destroy hooks on current rendered tree\n vm.__patch__(vm._vnode, null);\n // fire destroyed hook\n callHook(vm, 'destroyed');\n // turn off all instance listeners.\n vm.$off();\n // remove __vue__ reference\n if (vm.$el) {\n vm.$el.__vue__ = null;\n }\n // release circular reference (#6759)\n if (vm.$vnode) {\n vm.$vnode.parent = null;\n }\n };\n}\n\nfunction mountComponent (\n vm,\n el,\n hydrating\n) {\n vm.$el = el;\n if (!vm.$options.render) {\n vm.$options.render = createEmptyVNode;\n if (process.env.NODE_ENV !== 'production') {\n /* istanbul ignore if */\n if ((vm.$options.template && vm.$options.template.charAt(0) !== '#') ||\n vm.$options.el || el) {\n warn(\n 'You are using the runtime-only build of Vue where the template ' +\n 'compiler is not available. Either pre-compile the templates into ' +\n 'render functions, or use the compiler-included build.',\n vm\n );\n } else {\n warn(\n 'Failed to mount component: template or render function not defined.',\n vm\n );\n }\n }\n }\n callHook(vm, 'beforeMount');\n\n var updateComponent;\n /* istanbul ignore if */\n if (process.env.NODE_ENV !== 'production' && config.performance && mark) {\n updateComponent = function () {\n var name = vm._name;\n var id = vm._uid;\n var startTag = \"vue-perf-start:\" + id;\n var endTag = \"vue-perf-end:\" + id;\n\n mark(startTag);\n var vnode = vm._render();\n mark(endTag);\n measure((\"vue \" + name + \" render\"), startTag, endTag);\n\n mark(startTag);\n vm._update(vnode, hydrating);\n mark(endTag);\n measure((\"vue \" + name + \" patch\"), startTag, endTag);\n };\n } else {\n updateComponent = function () {\n vm._update(vm._render(), hydrating);\n };\n }\n\n vm._watcher = new Watcher(vm, updateComponent, noop);\n hydrating = false;\n\n // manually mounted instance, call mounted on self\n // mounted is called for render-created child components in its inserted hook\n if (vm.$vnode == null) {\n vm._isMounted = true;\n callHook(vm, 'mounted');\n }\n return vm\n}\n\nfunction updateChildComponent (\n vm,\n propsData,\n listeners,\n parentVnode,\n renderChildren\n) {\n if (process.env.NODE_ENV !== 'production') {\n isUpdatingChildComponent = true;\n }\n\n // determine whether component has slot children\n // we need to do this before overwriting $options._renderChildren\n var hasChildren = !!(\n renderChildren || // has new static slots\n vm.$options._renderChildren || // has old static slots\n parentVnode.data.scopedSlots || // has new scoped slots\n vm.$scopedSlots !== emptyObject // has old scoped slots\n );\n\n vm.$options._parentVnode = parentVnode;\n vm.$vnode = parentVnode; // update vm's placeholder node without re-render\n\n if (vm._vnode) { // update child tree's parent\n vm._vnode.parent = parentVnode;\n }\n vm.$options._renderChildren = renderChildren;\n\n // update $attrs and $listeners hash\n // these are also reactive so they may trigger child update if the child\n // used them during render\n vm.$attrs = (parentVnode.data && parentVnode.data.attrs) || emptyObject;\n vm.$listeners = listeners || emptyObject;\n\n // update props\n if (propsData && vm.$options.props) {\n observerState.shouldConvert = false;\n var props = vm._props;\n var propKeys = vm.$options._propKeys || [];\n for (var i = 0; i < propKeys.length; i++) {\n var key = propKeys[i];\n props[key] = validateProp(key, vm.$options.props, propsData, vm);\n }\n observerState.shouldConvert = true;\n // keep a copy of raw propsData\n vm.$options.propsData = propsData;\n }\n\n // update listeners\n if (listeners) {\n var oldListeners = vm.$options._parentListeners;\n vm.$options._parentListeners = listeners;\n updateComponentListeners(vm, listeners, oldListeners);\n }\n // resolve slots + force update if has children\n if (hasChildren) {\n vm.$slots = resolveSlots(renderChildren, parentVnode.context);\n vm.$forceUpdate();\n }\n\n if (process.env.NODE_ENV !== 'production') {\n isUpdatingChildComponent = false;\n }\n}\n\nfunction isInInactiveTree (vm) {\n while (vm && (vm = vm.$parent)) {\n if (vm._inactive) { return true }\n }\n return false\n}\n\nfunction activateChildComponent (vm, direct) {\n if (direct) {\n vm._directInactive = false;\n if (isInInactiveTree(vm)) {\n return\n }\n } else if (vm._directInactive) {\n return\n }\n if (vm._inactive || vm._inactive === null) {\n vm._inactive = false;\n for (var i = 0; i < vm.$children.length; i++) {\n activateChildComponent(vm.$children[i]);\n }\n callHook(vm, 'activated');\n }\n}\n\nfunction deactivateChildComponent (vm, direct) {\n if (direct) {\n vm._directInactive = true;\n if (isInInactiveTree(vm)) {\n return\n }\n }\n if (!vm._inactive) {\n vm._inactive = true;\n for (var i = 0; i < vm.$children.length; i++) {\n deactivateChildComponent(vm.$children[i]);\n }\n callHook(vm, 'deactivated');\n }\n}\n\nfunction callHook (vm, hook) {\n var handlers = vm.$options[hook];\n if (handlers) {\n for (var i = 0, j = handlers.length; i < j; i++) {\n try {\n handlers[i].call(vm);\n } catch (e) {\n handleError(e, vm, (hook + \" hook\"));\n }\n }\n }\n if (vm._hasHookEvent) {\n vm.$emit('hook:' + hook);\n }\n}\n\n/* */\n\n\nvar MAX_UPDATE_COUNT = 100;\n\nvar queue = [];\nvar activatedChildren = [];\nvar has = {};\nvar circular = {};\nvar waiting = false;\nvar flushing = false;\nvar index = 0;\n\n/**\n * Reset the scheduler's state.\n */\nfunction resetSchedulerState () {\n index = queue.length = activatedChildren.length = 0;\n has = {};\n if (process.env.NODE_ENV !== 'production') {\n circular = {};\n }\n waiting = flushing = false;\n}\n\n/**\n * Flush both queues and run the watchers.\n */\nfunction flushSchedulerQueue () {\n flushing = true;\n var watcher, id;\n\n // Sort queue before flush.\n // This ensures that:\n // 1. Components are updated from parent to child. (because parent is always\n // created before the child)\n // 2. A component's user watchers are run before its render watcher (because\n // user watchers are created before the render watcher)\n // 3. If a component is destroyed during a parent component's watcher run,\n // its watchers can be skipped.\n queue.sort(function (a, b) { return a.id - b.id; });\n\n // do not cache length because more watchers might be pushed\n // as we run existing watchers\n for (index = 0; index < queue.length; index++) {\n watcher = queue[index];\n id = watcher.id;\n has[id] = null;\n watcher.run();\n // in dev build, check and stop circular updates.\n if (process.env.NODE_ENV !== 'production' && has[id] != null) {\n circular[id] = (circular[id] || 0) + 1;\n if (circular[id] > MAX_UPDATE_COUNT) {\n warn(\n 'You may have an infinite update loop ' + (\n watcher.user\n ? (\"in watcher with expression \\\"\" + (watcher.expression) + \"\\\"\")\n : \"in a component render function.\"\n ),\n watcher.vm\n );\n break\n }\n }\n }\n\n // keep copies of post queues before resetting state\n var activatedQueue = activatedChildren.slice();\n var updatedQueue = queue.slice();\n\n resetSchedulerState();\n\n // call component updated and activated hooks\n callActivatedHooks(activatedQueue);\n callUpdatedHooks(updatedQueue);\n\n // devtool hook\n /* istanbul ignore if */\n if (devtools && config.devtools) {\n devtools.emit('flush');\n }\n}\n\nfunction callUpdatedHooks (queue) {\n var i = queue.length;\n while (i--) {\n var watcher = queue[i];\n var vm = watcher.vm;\n if (vm._watcher === watcher && vm._isMounted) {\n callHook(vm, 'updated');\n }\n }\n}\n\n/**\n * Queue a kept-alive component that was activated during patch.\n * The queue will be processed after the entire tree has been patched.\n */\nfunction queueActivatedComponent (vm) {\n // setting _inactive to false here so that a render function can\n // rely on checking whether it's in an inactive tree (e.g. router-view)\n vm._inactive = false;\n activatedChildren.push(vm);\n}\n\nfunction callActivatedHooks (queue) {\n for (var i = 0; i < queue.length; i++) {\n queue[i]._inactive = true;\n activateChildComponent(queue[i], true /* true */);\n }\n}\n\n/**\n * Push a watcher into the watcher queue.\n * Jobs with duplicate IDs will be skipped unless it's\n * pushed when the queue is being flushed.\n */\nfunction queueWatcher (watcher) {\n var id = watcher.id;\n if (has[id] == null) {\n has[id] = true;\n if (!flushing) {\n queue.push(watcher);\n } else {\n // if already flushing, splice the watcher based on its id\n // if already past its id, it will be run next immediately.\n var i = queue.length - 1;\n while (i > index && queue[i].id > watcher.id) {\n i--;\n }\n queue.splice(i + 1, 0, watcher);\n }\n // queue the flush\n if (!waiting) {\n waiting = true;\n nextTick(flushSchedulerQueue);\n }\n }\n}\n\n/* */\n\nvar uid$2 = 0;\n\n/**\n * A watcher parses an expression, collects dependencies,\n * and fires callback when the expression value changes.\n * This is used for both the $watch() api and directives.\n */\nvar Watcher = function Watcher (\n vm,\n expOrFn,\n cb,\n options\n) {\n this.vm = vm;\n vm._watchers.push(this);\n // options\n if (options) {\n this.deep = !!options.deep;\n this.user = !!options.user;\n this.lazy = !!options.lazy;\n this.sync = !!options.sync;\n } else {\n this.deep = this.user = this.lazy = this.sync = false;\n }\n this.cb = cb;\n this.id = ++uid$2; // uid for batching\n this.active = true;\n this.dirty = this.lazy; // for lazy watchers\n this.deps = [];\n this.newDeps = [];\n this.depIds = new _Set();\n this.newDepIds = new _Set();\n this.expression = process.env.NODE_ENV !== 'production'\n ? expOrFn.toString()\n : '';\n // parse expression for getter\n if (typeof expOrFn === 'function') {\n this.getter = expOrFn;\n } else {\n this.getter = parsePath(expOrFn);\n if (!this.getter) {\n this.getter = function () {};\n process.env.NODE_ENV !== 'production' && warn(\n \"Failed watching path: \\\"\" + expOrFn + \"\\\" \" +\n 'Watcher only accepts simple dot-delimited paths. ' +\n 'For full control, use a function instead.',\n vm\n );\n }\n }\n this.value = this.lazy\n ? undefined\n : this.get();\n};\n\n/**\n * Evaluate the getter, and re-collect dependencies.\n */\nWatcher.prototype.get = function get () {\n pushTarget(this);\n var value;\n var vm = this.vm;\n try {\n value = this.getter.call(vm, vm);\n } catch (e) {\n if (this.user) {\n handleError(e, vm, (\"getter for watcher \\\"\" + (this.expression) + \"\\\"\"));\n } else {\n throw e\n }\n } finally {\n // \"touch\" every property so they are all tracked as\n // dependencies for deep watching\n if (this.deep) {\n traverse(value);\n }\n popTarget();\n this.cleanupDeps();\n }\n return value\n};\n\n/**\n * Add a dependency to this directive.\n */\nWatcher.prototype.addDep = function addDep (dep) {\n var id = dep.id;\n if (!this.newDepIds.has(id)) {\n this.newDepIds.add(id);\n this.newDeps.push(dep);\n if (!this.depIds.has(id)) {\n dep.addSub(this);\n }\n }\n};\n\n/**\n * Clean up for dependency collection.\n */\nWatcher.prototype.cleanupDeps = function cleanupDeps () {\n var this$1 = this;\n\n var i = this.deps.length;\n while (i--) {\n var dep = this$1.deps[i];\n if (!this$1.newDepIds.has(dep.id)) {\n dep.removeSub(this$1);\n }\n }\n var tmp = this.depIds;\n this.depIds = this.newDepIds;\n this.newDepIds = tmp;\n this.newDepIds.clear();\n tmp = this.deps;\n this.deps = this.newDeps;\n this.newDeps = tmp;\n this.newDeps.length = 0;\n};\n\n/**\n * Subscriber interface.\n * Will be called when a dependency changes.\n */\nWatcher.prototype.update = function update () {\n /* istanbul ignore else */\n if (this.lazy) {\n this.dirty = true;\n } else if (this.sync) {\n this.run();\n } else {\n queueWatcher(this);\n }\n};\n\n/**\n * Scheduler job interface.\n * Will be called by the scheduler.\n */\nWatcher.prototype.run = function run () {\n if (this.active) {\n var value = this.get();\n if (\n value !== this.value ||\n // Deep watchers and watchers on Object/Arrays should fire even\n // when the value is the same, because the value may\n // have mutated.\n isObject(value) ||\n this.deep\n ) {\n // set new value\n var oldValue = this.value;\n this.value = value;\n if (this.user) {\n try {\n this.cb.call(this.vm, value, oldValue);\n } catch (e) {\n handleError(e, this.vm, (\"callback for watcher \\\"\" + (this.expression) + \"\\\"\"));\n }\n } else {\n this.cb.call(this.vm, value, oldValue);\n }\n }\n }\n};\n\n/**\n * Evaluate the value of the watcher.\n * This only gets called for lazy watchers.\n */\nWatcher.prototype.evaluate = function evaluate () {\n this.value = this.get();\n this.dirty = false;\n};\n\n/**\n * Depend on all deps collected by this watcher.\n */\nWatcher.prototype.depend = function depend () {\n var this$1 = this;\n\n var i = this.deps.length;\n while (i--) {\n this$1.deps[i].depend();\n }\n};\n\n/**\n * Remove self from all dependencies' subscriber list.\n */\nWatcher.prototype.teardown = function teardown () {\n var this$1 = this;\n\n if (this.active) {\n // remove self from vm's watcher list\n // this is a somewhat expensive operation so we skip it\n // if the vm is being destroyed.\n if (!this.vm._isBeingDestroyed) {\n remove(this.vm._watchers, this);\n }\n var i = this.deps.length;\n while (i--) {\n this$1.deps[i].removeSub(this$1);\n }\n this.active = false;\n }\n};\n\n/**\n * Recursively traverse an object to evoke all converted\n * getters, so that every nested property inside the object\n * is collected as a \"deep\" dependency.\n */\nvar seenObjects = new _Set();\nfunction traverse (val) {\n seenObjects.clear();\n _traverse(val, seenObjects);\n}\n\nfunction _traverse (val, seen) {\n var i, keys;\n var isA = Array.isArray(val);\n if ((!isA && !isObject(val)) || !Object.isExtensible(val)) {\n return\n }\n if (val.__ob__) {\n var depId = val.__ob__.dep.id;\n if (seen.has(depId)) {\n return\n }\n seen.add(depId);\n }\n if (isA) {\n i = val.length;\n while (i--) { _traverse(val[i], seen); }\n } else {\n keys = Object.keys(val);\n i = keys.length;\n while (i--) { _traverse(val[keys[i]], seen); }\n }\n}\n\n/* */\n\nvar sharedPropertyDefinition = {\n enumerable: true,\n configurable: true,\n get: noop,\n set: noop\n};\n\nfunction proxy (target, sourceKey, key) {\n sharedPropertyDefinition.get = function proxyGetter () {\n return this[sourceKey][key]\n };\n sharedPropertyDefinition.set = function proxySetter (val) {\n this[sourceKey][key] = val;\n };\n Object.defineProperty(target, key, sharedPropertyDefinition);\n}\n\nfunction initState (vm) {\n vm._watchers = [];\n var opts = vm.$options;\n if (opts.props) { initProps(vm, opts.props); }\n if (opts.methods) { initMethods(vm, opts.methods); }\n if (opts.data) {\n initData(vm);\n } else {\n observe(vm._data = {}, true /* asRootData */);\n }\n if (opts.computed) { initComputed(vm, opts.computed); }\n if (opts.watch && opts.watch !== nativeWatch) {\n initWatch(vm, opts.watch);\n }\n}\n\nfunction initProps (vm, propsOptions) {\n var propsData = vm.$options.propsData || {};\n var props = vm._props = {};\n // cache prop keys so that future props updates can iterate using Array\n // instead of dynamic object key enumeration.\n var keys = vm.$options._propKeys = [];\n var isRoot = !vm.$parent;\n // root instance props should be converted\n observerState.shouldConvert = isRoot;\n var loop = function ( key ) {\n keys.push(key);\n var value = validateProp(key, propsOptions, propsData, vm);\n /* istanbul ignore else */\n if (process.env.NODE_ENV !== 'production') {\n var hyphenatedKey = hyphenate(key);\n if (isReservedAttribute(hyphenatedKey) ||\n config.isReservedAttr(hyphenatedKey)) {\n warn(\n (\"\\\"\" + hyphenatedKey + \"\\\" is a reserved attribute and cannot be used as component prop.\"),\n vm\n );\n }\n defineReactive(props, key, value, function () {\n if (vm.$parent && !isUpdatingChildComponent) {\n warn(\n \"Avoid mutating a prop directly since the value will be \" +\n \"overwritten whenever the parent component re-renders. \" +\n \"Instead, use a data or computed property based on the prop's \" +\n \"value. Prop being mutated: \\\"\" + key + \"\\\"\",\n vm\n );\n }\n });\n } else {\n defineReactive(props, key, value);\n }\n // static props are already proxied on the component's prototype\n // during Vue.extend(). We only need to proxy props defined at\n // instantiation here.\n if (!(key in vm)) {\n proxy(vm, \"_props\", key);\n }\n };\n\n for (var key in propsOptions) loop( key );\n observerState.shouldConvert = true;\n}\n\nfunction initData (vm) {\n var data = vm.$options.data;\n data = vm._data = typeof data === 'function'\n ? getData(data, vm)\n : data || {};\n if (!isPlainObject(data)) {\n data = {};\n process.env.NODE_ENV !== 'production' && warn(\n 'data functions should return an object:\\n' +\n 'https://vuejs.org/v2/guide/components.html#data-Must-Be-a-Function',\n vm\n );\n }\n // proxy data on instance\n var keys = Object.keys(data);\n var props = vm.$options.props;\n var methods = vm.$options.methods;\n var i = keys.length;\n while (i--) {\n var key = keys[i];\n if (process.env.NODE_ENV !== 'production') {\n if (methods && hasOwn(methods, key)) {\n warn(\n (\"Method \\\"\" + key + \"\\\" has already been defined as a data property.\"),\n vm\n );\n }\n }\n if (props && hasOwn(props, key)) {\n process.env.NODE_ENV !== 'production' && warn(\n \"The data property \\\"\" + key + \"\\\" is already declared as a prop. \" +\n \"Use prop default value instead.\",\n vm\n );\n } else if (!isReserved(key)) {\n proxy(vm, \"_data\", key);\n }\n }\n // observe data\n observe(data, true /* asRootData */);\n}\n\nfunction getData (data, vm) {\n try {\n return data.call(vm, vm)\n } catch (e) {\n handleError(e, vm, \"data()\");\n return {}\n }\n}\n\nvar computedWatcherOptions = { lazy: true };\n\nfunction initComputed (vm, computed) {\n var watchers = vm._computedWatchers = Object.create(null);\n // computed properties are just getters during SSR\n var isSSR = isServerRendering();\n\n for (var key in computed) {\n var userDef = computed[key];\n var getter = typeof userDef === 'function' ? userDef : userDef.get;\n if (process.env.NODE_ENV !== 'production' && getter == null) {\n warn(\n (\"Getter is missing for computed property \\\"\" + key + \"\\\".\"),\n vm\n );\n }\n\n if (!isSSR) {\n // create internal watcher for the computed property.\n watchers[key] = new Watcher(\n vm,\n getter || noop,\n noop,\n computedWatcherOptions\n );\n }\n\n // component-defined computed properties are already defined on the\n // component prototype. We only need to define computed properties defined\n // at instantiation here.\n if (!(key in vm)) {\n defineComputed(vm, key, userDef);\n } else if (process.env.NODE_ENV !== 'production') {\n if (key in vm.$data) {\n warn((\"The computed property \\\"\" + key + \"\\\" is already defined in data.\"), vm);\n } else if (vm.$options.props && key in vm.$options.props) {\n warn((\"The computed property \\\"\" + key + \"\\\" is already defined as a prop.\"), vm);\n }\n }\n }\n}\n\nfunction defineComputed (\n target,\n key,\n userDef\n) {\n var shouldCache = !isServerRendering();\n if (typeof userDef === 'function') {\n sharedPropertyDefinition.get = shouldCache\n ? createComputedGetter(key)\n : userDef;\n sharedPropertyDefinition.set = noop;\n } else {\n sharedPropertyDefinition.get = userDef.get\n ? shouldCache && userDef.cache !== false\n ? createComputedGetter(key)\n : userDef.get\n : noop;\n sharedPropertyDefinition.set = userDef.set\n ? userDef.set\n : noop;\n }\n if (process.env.NODE_ENV !== 'production' &&\n sharedPropertyDefinition.set === noop) {\n sharedPropertyDefinition.set = function () {\n warn(\n (\"Computed property \\\"\" + key + \"\\\" was assigned to but it has no setter.\"),\n this\n );\n };\n }\n Object.defineProperty(target, key, sharedPropertyDefinition);\n}\n\nfunction createComputedGetter (key) {\n return function computedGetter () {\n var watcher = this._computedWatchers && this._computedWatchers[key];\n if (watcher) {\n if (watcher.dirty) {\n watcher.evaluate();\n }\n if (Dep.target) {\n watcher.depend();\n }\n return watcher.value\n }\n }\n}\n\nfunction initMethods (vm, methods) {\n var props = vm.$options.props;\n for (var key in methods) {\n if (process.env.NODE_ENV !== 'production') {\n if (methods[key] == null) {\n warn(\n \"Method \\\"\" + key + \"\\\" has an undefined value in the component definition. \" +\n \"Did you reference the function correctly?\",\n vm\n );\n }\n if (props && hasOwn(props, key)) {\n warn(\n (\"Method \\\"\" + key + \"\\\" has already been defined as a prop.\"),\n vm\n );\n }\n if ((key in vm) && isReserved(key)) {\n warn(\n \"Method \\\"\" + key + \"\\\" conflicts with an existing Vue instance method. \" +\n \"Avoid defining component methods that start with _ or $.\"\n );\n }\n }\n vm[key] = methods[key] == null ? noop : bind(methods[key], vm);\n }\n}\n\nfunction initWatch (vm, watch) {\n for (var key in watch) {\n var handler = watch[key];\n if (Array.isArray(handler)) {\n for (var i = 0; i < handler.length; i++) {\n createWatcher(vm, key, handler[i]);\n }\n } else {\n createWatcher(vm, key, handler);\n }\n }\n}\n\nfunction createWatcher (\n vm,\n keyOrFn,\n handler,\n options\n) {\n if (isPlainObject(handler)) {\n options = handler;\n handler = handler.handler;\n }\n if (typeof handler === 'string') {\n handler = vm[handler];\n }\n return vm.$watch(keyOrFn, handler, options)\n}\n\nfunction stateMixin (Vue) {\n // flow somehow has problems with directly declared definition object\n // when using Object.defineProperty, so we have to procedurally build up\n // the object here.\n var dataDef = {};\n dataDef.get = function () { return this._data };\n var propsDef = {};\n propsDef.get = function () { return this._props };\n if (process.env.NODE_ENV !== 'production') {\n dataDef.set = function (newData) {\n warn(\n 'Avoid replacing instance root $data. ' +\n 'Use nested data properties instead.',\n this\n );\n };\n propsDef.set = function () {\n warn(\"$props is readonly.\", this);\n };\n }\n Object.defineProperty(Vue.prototype, '$data', dataDef);\n Object.defineProperty(Vue.prototype, '$props', propsDef);\n\n Vue.prototype.$set = set;\n Vue.prototype.$delete = del;\n\n Vue.prototype.$watch = function (\n expOrFn,\n cb,\n options\n ) {\n var vm = this;\n if (isPlainObject(cb)) {\n return createWatcher(vm, expOrFn, cb, options)\n }\n options = options || {};\n options.user = true;\n var watcher = new Watcher(vm, expOrFn, cb, options);\n if (options.immediate) {\n cb.call(vm, watcher.value);\n }\n return function unwatchFn () {\n watcher.teardown();\n }\n };\n}\n\n/* */\n\nfunction initProvide (vm) {\n var provide = vm.$options.provide;\n if (provide) {\n vm._provided = typeof provide === 'function'\n ? provide.call(vm)\n : provide;\n }\n}\n\nfunction initInjections (vm) {\n var result = resolveInject(vm.$options.inject, vm);\n if (result) {\n observerState.shouldConvert = false;\n Object.keys(result).forEach(function (key) {\n /* istanbul ignore else */\n if (process.env.NODE_ENV !== 'production') {\n defineReactive(vm, key, result[key], function () {\n warn(\n \"Avoid mutating an injected value directly since the changes will be \" +\n \"overwritten whenever the provided component re-renders. \" +\n \"injection being mutated: \\\"\" + key + \"\\\"\",\n vm\n );\n });\n } else {\n defineReactive(vm, key, result[key]);\n }\n });\n observerState.shouldConvert = true;\n }\n}\n\nfunction resolveInject (inject, vm) {\n if (inject) {\n // inject is :any because flow is not smart enough to figure out cached\n var result = Object.create(null);\n var keys = hasSymbol\n ? Reflect.ownKeys(inject).filter(function (key) {\n /* istanbul ignore next */\n return Object.getOwnPropertyDescriptor(inject, key).enumerable\n })\n : Object.keys(inject);\n\n for (var i = 0; i < keys.length; i++) {\n var key = keys[i];\n var provideKey = inject[key].from;\n var source = vm;\n while (source) {\n if (source._provided && provideKey in source._provided) {\n result[key] = source._provided[provideKey];\n break\n }\n source = source.$parent;\n }\n if (!source) {\n if ('default' in inject[key]) {\n var provideDefault = inject[key].default;\n result[key] = typeof provideDefault === 'function'\n ? provideDefault.call(vm)\n : provideDefault;\n } else if (process.env.NODE_ENV !== 'production') {\n warn((\"Injection \\\"\" + key + \"\\\" not found\"), vm);\n }\n }\n }\n return result\n }\n}\n\n/* */\n\n/**\n * Runtime helper for rendering v-for lists.\n */\nfunction renderList (\n val,\n render\n) {\n var ret, i, l, keys, key;\n if (Array.isArray(val) || typeof val === 'string') {\n ret = new Array(val.length);\n for (i = 0, l = val.length; i < l; i++) {\n ret[i] = render(val[i], i);\n }\n } else if (typeof val === 'number') {\n ret = new Array(val);\n for (i = 0; i < val; i++) {\n ret[i] = render(i + 1, i);\n }\n } else if (isObject(val)) {\n keys = Object.keys(val);\n ret = new Array(keys.length);\n for (i = 0, l = keys.length; i < l; i++) {\n key = keys[i];\n ret[i] = render(val[key], key, i);\n }\n }\n if (isDef(ret)) {\n (ret)._isVList = true;\n }\n return ret\n}\n\n/* */\n\n/**\n * Runtime helper for rendering <slot>\n */\nfunction renderSlot (\n name,\n fallback,\n props,\n bindObject\n) {\n var scopedSlotFn = this.$scopedSlots[name];\n if (scopedSlotFn) { // scoped slot\n props = props || {};\n if (bindObject) {\n if (process.env.NODE_ENV !== 'production' && !isObject(bindObject)) {\n warn(\n 'slot v-bind without argument expects an Object',\n this\n );\n }\n props = extend(extend({}, bindObject), props);\n }\n return scopedSlotFn(props) || fallback\n } else {\n var slotNodes = this.$slots[name];\n // warn duplicate slot usage\n if (slotNodes && process.env.NODE_ENV !== 'production') {\n slotNodes._rendered && warn(\n \"Duplicate presence of slot \\\"\" + name + \"\\\" found in the same render tree \" +\n \"- this will likely cause render errors.\",\n this\n );\n slotNodes._rendered = true;\n }\n return slotNodes || fallback\n }\n}\n\n/* */\n\n/**\n * Runtime helper for resolving filters\n */\nfunction resolveFilter (id) {\n return resolveAsset(this.$options, 'filters', id, true) || identity\n}\n\n/* */\n\n/**\n * Runtime helper for checking keyCodes from config.\n * exposed as Vue.prototype._k\n * passing in eventKeyName as last argument separately for backwards compat\n */\nfunction checkKeyCodes (\n eventKeyCode,\n key,\n builtInAlias,\n eventKeyName\n) {\n var keyCodes = config.keyCodes[key] || builtInAlias;\n if (keyCodes) {\n if (Array.isArray(keyCodes)) {\n return keyCodes.indexOf(eventKeyCode) === -1\n } else {\n return keyCodes !== eventKeyCode\n }\n } else if (eventKeyName) {\n return hyphenate(eventKeyName) !== key\n }\n}\n\n/* */\n\n/**\n * Runtime helper for merging v-bind=\"object\" into a VNode's data.\n */\nfunction bindObjectProps (\n data,\n tag,\n value,\n asProp,\n isSync\n) {\n if (value) {\n if (!isObject(value)) {\n process.env.NODE_ENV !== 'production' && warn(\n 'v-bind without argument expects an Object or Array value',\n this\n );\n } else {\n if (Array.isArray(value)) {\n value = toObject(value);\n }\n var hash;\n var loop = function ( key ) {\n if (\n key === 'class' ||\n key === 'style' ||\n isReservedAttribute(key)\n ) {\n hash = data;\n } else {\n var type = data.attrs && data.attrs.type;\n hash = asProp || config.mustUseProp(tag, type, key)\n ? data.domProps || (data.domProps = {})\n : data.attrs || (data.attrs = {});\n }\n if (!(key in hash)) {\n hash[key] = value[key];\n\n if (isSync) {\n var on = data.on || (data.on = {});\n on[(\"update:\" + key)] = function ($event) {\n value[key] = $event;\n };\n }\n }\n };\n\n for (var key in value) loop( key );\n }\n }\n return data\n}\n\n/* */\n\n/**\n * Runtime helper for rendering static trees.\n */\nfunction renderStatic (\n index,\n isInFor\n) {\n // static trees can be rendered once and cached on the contructor options\n // so every instance shares the same cached trees\n var renderFns = this.$options.staticRenderFns;\n var cached = renderFns.cached || (renderFns.cached = []);\n var tree = cached[index];\n // if has already-rendered static tree and not inside v-for,\n // we can reuse the same tree by doing a shallow clone.\n if (tree && !isInFor) {\n return Array.isArray(tree)\n ? cloneVNodes(tree)\n : cloneVNode(tree)\n }\n // otherwise, render a fresh tree.\n tree = cached[index] = renderFns[index].call(this._renderProxy, null, this);\n markStatic(tree, (\"__static__\" + index), false);\n return tree\n}\n\n/**\n * Runtime helper for v-once.\n * Effectively it means marking the node as static with a unique key.\n */\nfunction markOnce (\n tree,\n index,\n key\n) {\n markStatic(tree, (\"__once__\" + index + (key ? (\"_\" + key) : \"\")), true);\n return tree\n}\n\nfunction markStatic (\n tree,\n key,\n isOnce\n) {\n if (Array.isArray(tree)) {\n for (var i = 0; i < tree.length; i++) {\n if (tree[i] && typeof tree[i] !== 'string') {\n markStaticNode(tree[i], (key + \"_\" + i), isOnce);\n }\n }\n } else {\n markStaticNode(tree, key, isOnce);\n }\n}\n\nfunction markStaticNode (node, key, isOnce) {\n node.isStatic = true;\n node.key = key;\n node.isOnce = isOnce;\n}\n\n/* */\n\nfunction bindObjectListeners (data, value) {\n if (value) {\n if (!isPlainObject(value)) {\n process.env.NODE_ENV !== 'production' && warn(\n 'v-on without argument expects an Object value',\n this\n );\n } else {\n var on = data.on = data.on ? extend({}, data.on) : {};\n for (var key in value) {\n var existing = on[key];\n var ours = value[key];\n on[key] = existing ? [].concat(existing, ours) : ours;\n }\n }\n }\n return data\n}\n\n/* */\n\nfunction installRenderHelpers (target) {\n target._o = markOnce;\n target._n = toNumber;\n target._s = toString;\n target._l = renderList;\n target._t = renderSlot;\n target._q = looseEqual;\n target._i = looseIndexOf;\n target._m = renderStatic;\n target._f = resolveFilter;\n target._k = checkKeyCodes;\n target._b = bindObjectProps;\n target._v = createTextVNode;\n target._e = createEmptyVNode;\n target._u = resolveScopedSlots;\n target._g = bindObjectListeners;\n}\n\n/* */\n\nfunction FunctionalRenderContext (\n data,\n props,\n children,\n parent,\n Ctor\n) {\n var options = Ctor.options;\n this.data = data;\n this.props = props;\n this.children = children;\n this.parent = parent;\n this.listeners = data.on || emptyObject;\n this.injections = resolveInject(options.inject, parent);\n this.slots = function () { return resolveSlots(children, parent); };\n\n // ensure the createElement function in functional components\n // gets a unique context - this is necessary for correct named slot check\n var contextVm = Object.create(parent);\n var isCompiled = isTrue(options._compiled);\n var needNormalization = !isCompiled;\n\n // support for compiled functional template\n if (isCompiled) {\n // exposing $options for renderStatic()\n this.$options = options;\n // pre-resolve slots for renderSlot()\n this.$slots = this.slots();\n this.$scopedSlots = data.scopedSlots || emptyObject;\n }\n\n if (options._scopeId) {\n this._c = function (a, b, c, d) {\n var vnode = createElement(contextVm, a, b, c, d, needNormalization);\n if (vnode) {\n vnode.functionalScopeId = options._scopeId;\n vnode.functionalContext = parent;\n }\n return vnode\n };\n } else {\n this._c = function (a, b, c, d) { return createElement(contextVm, a, b, c, d, needNormalization); };\n }\n}\n\ninstallRenderHelpers(FunctionalRenderContext.prototype);\n\nfunction createFunctionalComponent (\n Ctor,\n propsData,\n data,\n contextVm,\n children\n) {\n var options = Ctor.options;\n var props = {};\n var propOptions = options.props;\n if (isDef(propOptions)) {\n for (var key in propOptions) {\n props[key] = validateProp(key, propOptions, propsData || emptyObject);\n }\n } else {\n if (isDef(data.attrs)) { mergeProps(props, data.attrs); }\n if (isDef(data.props)) { mergeProps(props, data.props); }\n }\n\n var renderContext = new FunctionalRenderContext(\n data,\n props,\n children,\n contextVm,\n Ctor\n );\n\n var vnode = options.render.call(null, renderContext._c, renderContext);\n\n if (vnode instanceof VNode) {\n vnode.functionalContext = contextVm;\n vnode.functionalOptions = options;\n if (data.slot) {\n (vnode.data || (vnode.data = {})).slot = data.slot;\n }\n }\n\n return vnode\n}\n\nfunction mergeProps (to, from) {\n for (var key in from) {\n to[camelize(key)] = from[key];\n }\n}\n\n/* */\n\n// hooks to be invoked on component VNodes during patch\nvar componentVNodeHooks = {\n init: function init (\n vnode,\n hydrating,\n parentElm,\n refElm\n ) {\n if (!vnode.componentInstance || vnode.componentInstance._isDestroyed) {\n var child = vnode.componentInstance = createComponentInstanceForVnode(\n vnode,\n activeInstance,\n parentElm,\n refElm\n );\n child.$mount(hydrating ? vnode.elm : undefined, hydrating);\n } else if (vnode.data.keepAlive) {\n // kept-alive components, treat as a patch\n var mountedNode = vnode; // work around flow\n componentVNodeHooks.prepatch(mountedNode, mountedNode);\n }\n },\n\n prepatch: function prepatch (oldVnode, vnode) {\n var options = vnode.componentOptions;\n var child = vnode.componentInstance = oldVnode.componentInstance;\n updateChildComponent(\n child,\n options.propsData, // updated props\n options.listeners, // updated listeners\n vnode, // new parent vnode\n options.children // new children\n );\n },\n\n insert: function insert (vnode) {\n var context = vnode.context;\n var componentInstance = vnode.componentInstance;\n if (!componentInstance._isMounted) {\n componentInstance._isMounted = true;\n callHook(componentInstance, 'mounted');\n }\n if (vnode.data.keepAlive) {\n if (context._isMounted) {\n // vue-router#1212\n // During updates, a kept-alive component's child components may\n // change, so directly walking the tree here may call activated hooks\n // on incorrect children. Instead we push them into a queue which will\n // be processed after the whole patch process ended.\n queueActivatedComponent(componentInstance);\n } else {\n activateChildComponent(componentInstance, true /* direct */);\n }\n }\n },\n\n destroy: function destroy (vnode) {\n var componentInstance = vnode.componentInstance;\n if (!componentInstance._isDestroyed) {\n if (!vnode.data.keepAlive) {\n componentInstance.$destroy();\n } else {\n deactivateChildComponent(componentInstance, true /* direct */);\n }\n }\n }\n};\n\nvar hooksToMerge = Object.keys(componentVNodeHooks);\n\nfunction createComponent (\n Ctor,\n data,\n context,\n children,\n tag\n) {\n if (isUndef(Ctor)) {\n return\n }\n\n var baseCtor = context.$options._base;\n\n // plain options object: turn it into a constructor\n if (isObject(Ctor)) {\n Ctor = baseCtor.extend(Ctor);\n }\n\n // if at this stage it's not a constructor or an async component factory,\n // reject.\n if (typeof Ctor !== 'function') {\n if (process.env.NODE_ENV !== 'production') {\n warn((\"Invalid Component definition: \" + (String(Ctor))), context);\n }\n return\n }\n\n // async component\n var asyncFactory;\n if (isUndef(Ctor.cid)) {\n asyncFactory = Ctor;\n Ctor = resolveAsyncComponent(asyncFactory, baseCtor, context);\n if (Ctor === undefined) {\n // return a placeholder node for async component, which is rendered\n // as a comment node but preserves all the raw information for the node.\n // the information will be used for async server-rendering and hydration.\n return createAsyncPlaceholder(\n asyncFactory,\n data,\n context,\n children,\n tag\n )\n }\n }\n\n data = data || {};\n\n // resolve constructor options in case global mixins are applied after\n // component constructor creation\n resolveConstructorOptions(Ctor);\n\n // transform component v-model data into props & events\n if (isDef(data.model)) {\n transformModel(Ctor.options, data);\n }\n\n // extract props\n var propsData = extractPropsFromVNodeData(data, Ctor, tag);\n\n // functional component\n if (isTrue(Ctor.options.functional)) {\n return createFunctionalComponent(Ctor, propsData, data, context, children)\n }\n\n // extract listeners, since these needs to be treated as\n // child component listeners instead of DOM listeners\n var listeners = data.on;\n // replace with listeners with .native modifier\n // so it gets processed during parent component patch.\n data.on = data.nativeOn;\n\n if (isTrue(Ctor.options.abstract)) {\n // abstract components do not keep anything\n // other than props & listeners & slot\n\n // work around flow\n var slot = data.slot;\n data = {};\n if (slot) {\n data.slot = slot;\n }\n }\n\n // merge component management hooks onto the placeholder node\n mergeHooks(data);\n\n // return a placeholder vnode\n var name = Ctor.options.name || tag;\n var vnode = new VNode(\n (\"vue-component-\" + (Ctor.cid) + (name ? (\"-\" + name) : '')),\n data, undefined, undefined, undefined, context,\n { Ctor: Ctor, propsData: propsData, listeners: listeners, tag: tag, children: children },\n asyncFactory\n );\n return vnode\n}\n\nfunction createComponentInstanceForVnode (\n vnode, // we know it's MountedComponentVNode but flow doesn't\n parent, // activeInstance in lifecycle state\n parentElm,\n refElm\n) {\n var vnodeComponentOptions = vnode.componentOptions;\n var options = {\n _isComponent: true,\n parent: parent,\n propsData: vnodeComponentOptions.propsData,\n _componentTag: vnodeComponentOptions.tag,\n _parentVnode: vnode,\n _parentListeners: vnodeComponentOptions.listeners,\n _renderChildren: vnodeComponentOptions.children,\n _parentElm: parentElm || null,\n _refElm: refElm || null\n };\n // check inline-template render functions\n var inlineTemplate = vnode.data.inlineTemplate;\n if (isDef(inlineTemplate)) {\n options.render = inlineTemplate.render;\n options.staticRenderFns = inlineTemplate.staticRenderFns;\n }\n return new vnodeComponentOptions.Ctor(options)\n}\n\nfunction mergeHooks (data) {\n if (!data.hook) {\n data.hook = {};\n }\n for (var i = 0; i < hooksToMerge.length; i++) {\n var key = hooksToMerge[i];\n var fromParent = data.hook[key];\n var ours = componentVNodeHooks[key];\n data.hook[key] = fromParent ? mergeHook$1(ours, fromParent) : ours;\n }\n}\n\nfunction mergeHook$1 (one, two) {\n return function (a, b, c, d) {\n one(a, b, c, d);\n two(a, b, c, d);\n }\n}\n\n// transform component v-model info (value and callback) into\n// prop and event handler respectively.\nfunction transformModel (options, data) {\n var prop = (options.model && options.model.prop) || 'value';\n var event = (options.model && options.model.event) || 'input';(data.props || (data.props = {}))[prop] = data.model.value;\n var on = data.on || (data.on = {});\n if (isDef(on[event])) {\n on[event] = [data.model.callback].concat(on[event]);\n } else {\n on[event] = data.model.callback;\n }\n}\n\n/* */\n\nvar SIMPLE_NORMALIZE = 1;\nvar ALWAYS_NORMALIZE = 2;\n\n// wrapper function for providing a more flexible interface\n// without getting yelled at by flow\nfunction createElement (\n context,\n tag,\n data,\n children,\n normalizationType,\n alwaysNormalize\n) {\n if (Array.isArray(data) || isPrimitive(data)) {\n normalizationType = children;\n children = data;\n data = undefined;\n }\n if (isTrue(alwaysNormalize)) {\n normalizationType = ALWAYS_NORMALIZE;\n }\n return _createElement(context, tag, data, children, normalizationType)\n}\n\nfunction _createElement (\n context,\n tag,\n data,\n children,\n normalizationType\n) {\n if (isDef(data) && isDef((data).__ob__)) {\n process.env.NODE_ENV !== 'production' && warn(\n \"Avoid using observed data object as vnode data: \" + (JSON.stringify(data)) + \"\\n\" +\n 'Always create fresh vnode data objects in each render!',\n context\n );\n return createEmptyVNode()\n }\n // object syntax in v-bind\n if (isDef(data) && isDef(data.is)) {\n tag = data.is;\n }\n if (!tag) {\n // in case of component :is set to falsy value\n return createEmptyVNode()\n }\n // warn against non-primitive key\n if (process.env.NODE_ENV !== 'production' &&\n isDef(data) && isDef(data.key) && !isPrimitive(data.key)\n ) {\n warn(\n 'Avoid using non-primitive value as key, ' +\n 'use string/number value instead.',\n context\n );\n }\n // support single function children as default scoped slot\n if (Array.isArray(children) &&\n typeof children[0] === 'function'\n ) {\n data = data || {};\n data.scopedSlots = { default: children[0] };\n children.length = 0;\n }\n if (normalizationType === ALWAYS_NORMALIZE) {\n children = normalizeChildren(children);\n } else if (normalizationType === SIMPLE_NORMALIZE) {\n children = simpleNormalizeChildren(children);\n }\n var vnode, ns;\n if (typeof tag === 'string') {\n var Ctor;\n ns = (context.$vnode && context.$vnode.ns) || config.getTagNamespace(tag);\n if (config.isReservedTag(tag)) {\n // platform built-in elements\n vnode = new VNode(\n config.parsePlatformTagName(tag), data, children,\n undefined, undefined, context\n );\n } else if (isDef(Ctor = resolveAsset(context.$options, 'components', tag))) {\n // component\n vnode = createComponent(Ctor, data, context, children, tag);\n } else {\n // unknown or unlisted namespaced elements\n // check at runtime because it may get assigned a namespace when its\n // parent normalizes children\n vnode = new VNode(\n tag, data, children,\n undefined, undefined, context\n );\n }\n } else {\n // direct component options / constructor\n vnode = createComponent(tag, data, context, children);\n }\n if (isDef(vnode)) {\n if (ns) { applyNS(vnode, ns); }\n return vnode\n } else {\n return createEmptyVNode()\n }\n}\n\nfunction applyNS (vnode, ns, force) {\n vnode.ns = ns;\n if (vnode.tag === 'foreignObject') {\n // use default namespace inside foreignObject\n ns = undefined;\n force = true;\n }\n if (isDef(vnode.children)) {\n for (var i = 0, l = vnode.children.length; i < l; i++) {\n var child = vnode.children[i];\n if (isDef(child.tag) && (isUndef(child.ns) || isTrue(force))) {\n applyNS(child, ns, force);\n }\n }\n }\n}\n\n/* */\n\nfunction initRender (vm) {\n vm._vnode = null; // the root of the child tree\n var options = vm.$options;\n var parentVnode = vm.$vnode = options._parentVnode; // the placeholder node in parent tree\n var renderContext = parentVnode && parentVnode.context;\n vm.$slots = resolveSlots(options._renderChildren, renderContext);\n vm.$scopedSlots = emptyObject;\n // bind the createElement fn to this instance\n // so that we get proper render context inside it.\n // args order: tag, data, children, normalizationType, alwaysNormalize\n // internal version is used by render functions compiled from templates\n vm._c = function (a, b, c, d) { return createElement(vm, a, b, c, d, false); };\n // normalization is always applied for the public version, used in\n // user-written render functions.\n vm.$createElement = function (a, b, c, d) { return createElement(vm, a, b, c, d, true); };\n\n // $attrs & $listeners are exposed for easier HOC creation.\n // they need to be reactive so that HOCs using them are always updated\n var parentData = parentVnode && parentVnode.data;\n\n /* istanbul ignore else */\n if (process.env.NODE_ENV !== 'production') {\n defineReactive(vm, '$attrs', parentData && parentData.attrs || emptyObject, function () {\n !isUpdatingChildComponent && warn(\"$attrs is readonly.\", vm);\n }, true);\n defineReactive(vm, '$listeners', options._parentListeners || emptyObject, function () {\n !isUpdatingChildComponent && warn(\"$listeners is readonly.\", vm);\n }, true);\n } else {\n defineReactive(vm, '$attrs', parentData && parentData.attrs || emptyObject, null, true);\n defineReactive(vm, '$listeners', options._parentListeners || emptyObject, null, true);\n }\n}\n\nfunction renderMixin (Vue) {\n // install runtime convenience helpers\n installRenderHelpers(Vue.prototype);\n\n Vue.prototype.$nextTick = function (fn) {\n return nextTick(fn, this)\n };\n\n Vue.prototype._render = function () {\n var vm = this;\n var ref = vm.$options;\n var render = ref.render;\n var _parentVnode = ref._parentVnode;\n\n if (vm._isMounted) {\n // if the parent didn't update, the slot nodes will be the ones from\n // last render. They need to be cloned to ensure \"freshness\" for this render.\n for (var key in vm.$slots) {\n var slot = vm.$slots[key];\n if (slot._rendered) {\n vm.$slots[key] = cloneVNodes(slot, true /* deep */);\n }\n }\n }\n\n vm.$scopedSlots = (_parentVnode && _parentVnode.data.scopedSlots) || emptyObject;\n\n // set parent vnode. this allows render functions to have access\n // to the data on the placeholder node.\n vm.$vnode = _parentVnode;\n // render self\n var vnode;\n try {\n vnode = render.call(vm._renderProxy, vm.$createElement);\n } catch (e) {\n handleError(e, vm, \"render\");\n // return error render result,\n // or previous vnode to prevent render error causing blank component\n /* istanbul ignore else */\n if (process.env.NODE_ENV !== 'production') {\n if (vm.$options.renderError) {\n try {\n vnode = vm.$options.renderError.call(vm._renderProxy, vm.$createElement, e);\n } catch (e) {\n handleError(e, vm, \"renderError\");\n vnode = vm._vnode;\n }\n } else {\n vnode = vm._vnode;\n }\n } else {\n vnode = vm._vnode;\n }\n }\n // return empty vnode in case the render function errored out\n if (!(vnode instanceof VNode)) {\n if (process.env.NODE_ENV !== 'production' && Array.isArray(vnode)) {\n warn(\n 'Multiple root nodes returned from render function. Render function ' +\n 'should return a single root node.',\n vm\n );\n }\n vnode = createEmptyVNode();\n }\n // set parent\n vnode.parent = _parentVnode;\n return vnode\n };\n}\n\n/* */\n\nvar uid$1 = 0;\n\nfunction initMixin (Vue) {\n Vue.prototype._init = function (options) {\n var vm = this;\n // a uid\n vm._uid = uid$1++;\n\n var startTag, endTag;\n /* istanbul ignore if */\n if (process.env.NODE_ENV !== 'production' && config.performance && mark) {\n startTag = \"vue-perf-start:\" + (vm._uid);\n endTag = \"vue-perf-end:\" + (vm._uid);\n mark(startTag);\n }\n\n // a flag to avoid this being observed\n vm._isVue = true;\n // merge options\n if (options && options._isComponent) {\n // optimize internal component instantiation\n // since dynamic options merging is pretty slow, and none of the\n // internal component options needs special treatment.\n initInternalComponent(vm, options);\n } else {\n vm.$options = mergeOptions(\n resolveConstructorOptions(vm.constructor),\n options || {},\n vm\n );\n }\n /* istanbul ignore else */\n if (process.env.NODE_ENV !== 'production') {\n initProxy(vm);\n } else {\n vm._renderProxy = vm;\n }\n // expose real self\n vm._self = vm;\n initLifecycle(vm);\n initEvents(vm);\n initRender(vm);\n callHook(vm, 'beforeCreate');\n initInjections(vm); // resolve injections before data/props\n initState(vm);\n initProvide(vm); // resolve provide after data/props\n callHook(vm, 'created');\n\n /* istanbul ignore if */\n if (process.env.NODE_ENV !== 'production' && config.performance && mark) {\n vm._name = formatComponentName(vm, false);\n mark(endTag);\n measure((\"vue \" + (vm._name) + \" init\"), startTag, endTag);\n }\n\n if (vm.$options.el) {\n vm.$mount(vm.$options.el);\n }\n };\n}\n\nfunction initInternalComponent (vm, options) {\n var opts = vm.$options = Object.create(vm.constructor.options);\n // doing this because it's faster than dynamic enumeration.\n opts.parent = options.parent;\n opts.propsData = options.propsData;\n opts._parentVnode = options._parentVnode;\n opts._parentListeners = options._parentListeners;\n opts._renderChildren = options._renderChildren;\n opts._componentTag = options._componentTag;\n opts._parentElm = options._parentElm;\n opts._refElm = options._refElm;\n if (options.render) {\n opts.render = options.render;\n opts.staticRenderFns = options.staticRenderFns;\n }\n}\n\nfunction resolveConstructorOptions (Ctor) {\n var options = Ctor.options;\n if (Ctor.super) {\n var superOptions = resolveConstructorOptions(Ctor.super);\n var cachedSuperOptions = Ctor.superOptions;\n if (superOptions !== cachedSuperOptions) {\n // super option changed,\n // need to resolve new options.\n Ctor.superOptions = superOptions;\n // check if there are any late-modified/attached options (#4976)\n var modifiedOptions = resolveModifiedOptions(Ctor);\n // update base extend options\n if (modifiedOptions) {\n extend(Ctor.extendOptions, modifiedOptions);\n }\n options = Ctor.options = mergeOptions(superOptions, Ctor.extendOptions);\n if (options.name) {\n options.components[options.name] = Ctor;\n }\n }\n }\n return options\n}\n\nfunction resolveModifiedOptions (Ctor) {\n var modified;\n var latest = Ctor.options;\n var extended = Ctor.extendOptions;\n var sealed = Ctor.sealedOptions;\n for (var key in latest) {\n if (latest[key] !== sealed[key]) {\n if (!modified) { modified = {}; }\n modified[key] = dedupe(latest[key], extended[key], sealed[key]);\n }\n }\n return modified\n}\n\nfunction dedupe (latest, extended, sealed) {\n // compare latest and sealed to ensure lifecycle hooks won't be duplicated\n // between merges\n if (Array.isArray(latest)) {\n var res = [];\n sealed = Array.isArray(sealed) ? sealed : [sealed];\n extended = Array.isArray(extended) ? extended : [extended];\n for (var i = 0; i < latest.length; i++) {\n // push original options and not sealed options to exclude duplicated options\n if (extended.indexOf(latest[i]) >= 0 || sealed.indexOf(latest[i]) < 0) {\n res.push(latest[i]);\n }\n }\n return res\n } else {\n return latest\n }\n}\n\nfunction Vue$3 (options) {\n if (process.env.NODE_ENV !== 'production' &&\n !(this instanceof Vue$3)\n ) {\n warn('Vue is a constructor and should be called with the `new` keyword');\n }\n this._init(options);\n}\n\ninitMixin(Vue$3);\nstateMixin(Vue$3);\neventsMixin(Vue$3);\nlifecycleMixin(Vue$3);\nrenderMixin(Vue$3);\n\n/* */\n\nfunction initUse (Vue) {\n Vue.use = function (plugin) {\n var installedPlugins = (this._installedPlugins || (this._installedPlugins = []));\n if (installedPlugins.indexOf(plugin) > -1) {\n return this\n }\n\n // additional parameters\n var args = toArray(arguments, 1);\n args.unshift(this);\n if (typeof plugin.install === 'function') {\n plugin.install.apply(plugin, args);\n } else if (typeof plugin === 'function') {\n plugin.apply(null, args);\n }\n installedPlugins.push(plugin);\n return this\n };\n}\n\n/* */\n\nfunction initMixin$1 (Vue) {\n Vue.mixin = function (mixin) {\n this.options = mergeOptions(this.options, mixin);\n return this\n };\n}\n\n/* */\n\nfunction initExtend (Vue) {\n /**\n * Each instance constructor, including Vue, has a unique\n * cid. This enables us to create wrapped \"child\n * constructors\" for prototypal inheritance and cache them.\n */\n Vue.cid = 0;\n var cid = 1;\n\n /**\n * Class inheritance\n */\n Vue.extend = function (extendOptions) {\n extendOptions = extendOptions || {};\n var Super = this;\n var SuperId = Super.cid;\n var cachedCtors = extendOptions._Ctor || (extendOptions._Ctor = {});\n if (cachedCtors[SuperId]) {\n return cachedCtors[SuperId]\n }\n\n var name = extendOptions.name || Super.options.name;\n if (process.env.NODE_ENV !== 'production') {\n if (!/^[a-zA-Z][\\w-]*$/.test(name)) {\n warn(\n 'Invalid component name: \"' + name + '\". Component names ' +\n 'can only contain alphanumeric characters and the hyphen, ' +\n 'and must start with a letter.'\n );\n }\n }\n\n var Sub = function VueComponent (options) {\n this._init(options);\n };\n Sub.prototype = Object.create(Super.prototype);\n Sub.prototype.constructor = Sub;\n Sub.cid = cid++;\n Sub.options = mergeOptions(\n Super.options,\n extendOptions\n );\n Sub['super'] = Super;\n\n // For props and computed properties, we define the proxy getters on\n // the Vue instances at extension time, on the extended prototype. This\n // avoids Object.defineProperty calls for each instance created.\n if (Sub.options.props) {\n initProps$1(Sub);\n }\n if (Sub.options.computed) {\n initComputed$1(Sub);\n }\n\n // allow further extension/mixin/plugin usage\n Sub.extend = Super.extend;\n Sub.mixin = Super.mixin;\n Sub.use = Super.use;\n\n // create asset registers, so extended classes\n // can have their private assets too.\n ASSET_TYPES.forEach(function (type) {\n Sub[type] = Super[type];\n });\n // enable recursive self-lookup\n if (name) {\n Sub.options.components[name] = Sub;\n }\n\n // keep a reference to the super options at extension time.\n // later at instantiation we can check if Super's options have\n // been updated.\n Sub.superOptions = Super.options;\n Sub.extendOptions = extendOptions;\n Sub.sealedOptions = extend({}, Sub.options);\n\n // cache constructor\n cachedCtors[SuperId] = Sub;\n return Sub\n };\n}\n\nfunction initProps$1 (Comp) {\n var props = Comp.options.props;\n for (var key in props) {\n proxy(Comp.prototype, \"_props\", key);\n }\n}\n\nfunction initComputed$1 (Comp) {\n var computed = Comp.options.computed;\n for (var key in computed) {\n defineComputed(Comp.prototype, key, computed[key]);\n }\n}\n\n/* */\n\nfunction initAssetRegisters (Vue) {\n /**\n * Create asset registration methods.\n */\n ASSET_TYPES.forEach(function (type) {\n Vue[type] = function (\n id,\n definition\n ) {\n if (!definition) {\n return this.options[type + 's'][id]\n } else {\n /* istanbul ignore if */\n if (process.env.NODE_ENV !== 'production') {\n if (type === 'component' && config.isReservedTag(id)) {\n warn(\n 'Do not use built-in or reserved HTML elements as component ' +\n 'id: ' + id\n );\n }\n }\n if (type === 'component' && isPlainObject(definition)) {\n definition.name = definition.name || id;\n definition = this.options._base.extend(definition);\n }\n if (type === 'directive' && typeof definition === 'function') {\n definition = { bind: definition, update: definition };\n }\n this.options[type + 's'][id] = definition;\n return definition\n }\n };\n });\n}\n\n/* */\n\nfunction getComponentName (opts) {\n return opts && (opts.Ctor.options.name || opts.tag)\n}\n\nfunction matches (pattern, name) {\n if (Array.isArray(pattern)) {\n return pattern.indexOf(name) > -1\n } else if (typeof pattern === 'string') {\n return pattern.split(',').indexOf(name) > -1\n } else if (isRegExp(pattern)) {\n return pattern.test(name)\n }\n /* istanbul ignore next */\n return false\n}\n\nfunction pruneCache (keepAliveInstance, filter) {\n var cache = keepAliveInstance.cache;\n var keys = keepAliveInstance.keys;\n var _vnode = keepAliveInstance._vnode;\n for (var key in cache) {\n var cachedNode = cache[key];\n if (cachedNode) {\n var name = getComponentName(cachedNode.componentOptions);\n if (name && !filter(name)) {\n pruneCacheEntry(cache, key, keys, _vnode);\n }\n }\n }\n}\n\nfunction pruneCacheEntry (\n cache,\n key,\n keys,\n current\n) {\n var cached$$1 = cache[key];\n if (cached$$1 && cached$$1 !== current) {\n cached$$1.componentInstance.$destroy();\n }\n cache[key] = null;\n remove(keys, key);\n}\n\nvar patternTypes = [String, RegExp, Array];\n\nvar KeepAlive = {\n name: 'keep-alive',\n abstract: true,\n\n props: {\n include: patternTypes,\n exclude: patternTypes,\n max: [String, Number]\n },\n\n created: function created () {\n this.cache = Object.create(null);\n this.keys = [];\n },\n\n destroyed: function destroyed () {\n var this$1 = this;\n\n for (var key in this$1.cache) {\n pruneCacheEntry(this$1.cache, key, this$1.keys);\n }\n },\n\n watch: {\n include: function include (val) {\n pruneCache(this, function (name) { return matches(val, name); });\n },\n exclude: function exclude (val) {\n pruneCache(this, function (name) { return !matches(val, name); });\n }\n },\n\n render: function render () {\n var vnode = getFirstComponentChild(this.$slots.default);\n var componentOptions = vnode && vnode.componentOptions;\n if (componentOptions) {\n // check pattern\n var name = getComponentName(componentOptions);\n if (name && (\n (this.include && !matches(this.include, name)) ||\n (this.exclude && matches(this.exclude, name))\n )) {\n return vnode\n }\n\n var ref = this;\n var cache = ref.cache;\n var keys = ref.keys;\n var key = vnode.key == null\n // same constructor may get registered as different local components\n // so cid alone is not enough (#3269)\n ? componentOptions.Ctor.cid + (componentOptions.tag ? (\"::\" + (componentOptions.tag)) : '')\n : vnode.key;\n if (cache[key]) {\n vnode.componentInstance = cache[key].componentInstance;\n // make current key freshest\n remove(keys, key);\n keys.push(key);\n } else {\n cache[key] = vnode;\n keys.push(key);\n // prune oldest entry\n if (this.max && keys.length > parseInt(this.max)) {\n pruneCacheEntry(cache, keys[0], keys, this._vnode);\n }\n }\n\n vnode.data.keepAlive = true;\n }\n return vnode\n }\n};\n\nvar builtInComponents = {\n KeepAlive: KeepAlive\n};\n\n/* */\n\nfunction initGlobalAPI (Vue) {\n // config\n var configDef = {};\n configDef.get = function () { return config; };\n if (process.env.NODE_ENV !== 'production') {\n configDef.set = function () {\n warn(\n 'Do not replace the Vue.config object, set individual fields instead.'\n );\n };\n }\n Object.defineProperty(Vue, 'config', configDef);\n\n // exposed util methods.\n // NOTE: these are not considered part of the public API - avoid relying on\n // them unless you are aware of the risk.\n Vue.util = {\n warn: warn,\n extend: extend,\n mergeOptions: mergeOptions,\n defineReactive: defineReactive\n };\n\n Vue.set = set;\n Vue.delete = del;\n Vue.nextTick = nextTick;\n\n Vue.options = Object.create(null);\n ASSET_TYPES.forEach(function (type) {\n Vue.options[type + 's'] = Object.create(null);\n });\n\n // this is used to identify the \"base\" constructor to extend all plain-object\n // components with in Weex's multi-instance scenarios.\n Vue.options._base = Vue;\n\n extend(Vue.options.components, builtInComponents);\n\n initUse(Vue);\n initMixin$1(Vue);\n initExtend(Vue);\n initAssetRegisters(Vue);\n}\n\ninitGlobalAPI(Vue$3);\n\nObject.defineProperty(Vue$3.prototype, '$isServer', {\n get: isServerRendering\n});\n\nObject.defineProperty(Vue$3.prototype, '$ssrContext', {\n get: function get () {\n /* istanbul ignore next */\n return this.$vnode && this.$vnode.ssrContext\n }\n});\n\nVue$3.version = '2.5.2';\n\n/* */\n\n// these are reserved for web because they are directly compiled away\n// during template compilation\nvar isReservedAttr = makeMap('style,class');\n\n// attributes that should be using props for binding\nvar acceptValue = makeMap('input,textarea,option,select,progress');\nvar mustUseProp = function (tag, type, attr) {\n return (\n (attr === 'value' && acceptValue(tag)) && type !== 'button' ||\n (attr === 'selected' && tag === 'option') ||\n (attr === 'checked' && tag === 'input') ||\n (attr === 'muted' && tag === 'video')\n )\n};\n\nvar isEnumeratedAttr = makeMap('contenteditable,draggable,spellcheck');\n\nvar isBooleanAttr = makeMap(\n 'allowfullscreen,async,autofocus,autoplay,checked,compact,controls,declare,' +\n 'default,defaultchecked,defaultmuted,defaultselected,defer,disabled,' +\n 'enabled,formnovalidate,hidden,indeterminate,inert,ismap,itemscope,loop,multiple,' +\n 'muted,nohref,noresize,noshade,novalidate,nowrap,open,pauseonexit,readonly,' +\n 'required,reversed,scoped,seamless,selected,sortable,translate,' +\n 'truespeed,typemustmatch,visible'\n);\n\nvar xlinkNS = 'http://www.w3.org/1999/xlink';\n\nvar isXlink = function (name) {\n return name.charAt(5) === ':' && name.slice(0, 5) === 'xlink'\n};\n\nvar getXlinkProp = function (name) {\n return isXlink(name) ? name.slice(6, name.length) : ''\n};\n\nvar isFalsyAttrValue = function (val) {\n return val == null || val === false\n};\n\n/* */\n\nfunction genClassForVnode (vnode) {\n var data = vnode.data;\n var parentNode = vnode;\n var childNode = vnode;\n while (isDef(childNode.componentInstance)) {\n childNode = childNode.componentInstance._vnode;\n if (childNode.data) {\n data = mergeClassData(childNode.data, data);\n }\n }\n while (isDef(parentNode = parentNode.parent)) {\n if (parentNode.data) {\n data = mergeClassData(data, parentNode.data);\n }\n }\n return renderClass(data.staticClass, data.class)\n}\n\nfunction mergeClassData (child, parent) {\n return {\n staticClass: concat(child.staticClass, parent.staticClass),\n class: isDef(child.class)\n ? [child.class, parent.class]\n : parent.class\n }\n}\n\nfunction renderClass (\n staticClass,\n dynamicClass\n) {\n if (isDef(staticClass) || isDef(dynamicClass)) {\n return concat(staticClass, stringifyClass(dynamicClass))\n }\n /* istanbul ignore next */\n return ''\n}\n\nfunction concat (a, b) {\n return a ? b ? (a + ' ' + b) : a : (b || '')\n}\n\nfunction stringifyClass (value) {\n if (Array.isArray(value)) {\n return stringifyArray(value)\n }\n if (isObject(value)) {\n return stringifyObject(value)\n }\n if (typeof value === 'string') {\n return value\n }\n /* istanbul ignore next */\n return ''\n}\n\nfunction stringifyArray (value) {\n var res = '';\n var stringified;\n for (var i = 0, l = value.length; i < l; i++) {\n if (isDef(stringified = stringifyClass(value[i])) && stringified !== '') {\n if (res) { res += ' '; }\n res += stringified;\n }\n }\n return res\n}\n\nfunction stringifyObject (value) {\n var res = '';\n for (var key in value) {\n if (value[key]) {\n if (res) { res += ' '; }\n res += key;\n }\n }\n return res\n}\n\n/* */\n\nvar namespaceMap = {\n svg: 'http://www.w3.org/2000/svg',\n math: 'http://www.w3.org/1998/Math/MathML'\n};\n\nvar isHTMLTag = makeMap(\n 'html,body,base,head,link,meta,style,title,' +\n 'address,article,aside,footer,header,h1,h2,h3,h4,h5,h6,hgroup,nav,section,' +\n 'div,dd,dl,dt,figcaption,figure,picture,hr,img,li,main,ol,p,pre,ul,' +\n 'a,b,abbr,bdi,bdo,br,cite,code,data,dfn,em,i,kbd,mark,q,rp,rt,rtc,ruby,' +\n 's,samp,small,span,strong,sub,sup,time,u,var,wbr,area,audio,map,track,video,' +\n 'embed,object,param,source,canvas,script,noscript,del,ins,' +\n 'caption,col,colgroup,table,thead,tbody,td,th,tr,' +\n 'button,datalist,fieldset,form,input,label,legend,meter,optgroup,option,' +\n 'output,progress,select,textarea,' +\n 'details,dialog,menu,menuitem,summary,' +\n 'content,element,shadow,template,blockquote,iframe,tfoot'\n);\n\n// this map is intentionally selective, only covering SVG elements that may\n// contain child elements.\nvar isSVG = makeMap(\n 'svg,animate,circle,clippath,cursor,defs,desc,ellipse,filter,font-face,' +\n 'foreignObject,g,glyph,image,line,marker,mask,missing-glyph,path,pattern,' +\n 'polygon,polyline,rect,switch,symbol,text,textpath,tspan,use,view',\n true\n);\n\nvar isPreTag = function (tag) { return tag === 'pre'; };\n\nvar isReservedTag = function (tag) {\n return isHTMLTag(tag) || isSVG(tag)\n};\n\nfunction getTagNamespace (tag) {\n if (isSVG(tag)) {\n return 'svg'\n }\n // basic support for MathML\n // note it doesn't support other MathML elements being component roots\n if (tag === 'math') {\n return 'math'\n }\n}\n\nvar unknownElementCache = Object.create(null);\nfunction isUnknownElement (tag) {\n /* istanbul ignore if */\n if (!inBrowser) {\n return true\n }\n if (isReservedTag(tag)) {\n return false\n }\n tag = tag.toLowerCase();\n /* istanbul ignore if */\n if (unknownElementCache[tag] != null) {\n return unknownElementCache[tag]\n }\n var el = document.createElement(tag);\n if (tag.indexOf('-') > -1) {\n // http://stackoverflow.com/a/28210364/1070244\n return (unknownElementCache[tag] = (\n el.constructor === window.HTMLUnknownElement ||\n el.constructor === window.HTMLElement\n ))\n } else {\n return (unknownElementCache[tag] = /HTMLUnknownElement/.test(el.toString()))\n }\n}\n\nvar isTextInputType = makeMap('text,number,password,search,email,tel,url');\n\n/* */\n\n/**\n * Query an element selector if it's not an element already.\n */\nfunction query (el) {\n if (typeof el === 'string') {\n var selected = document.querySelector(el);\n if (!selected) {\n process.env.NODE_ENV !== 'production' && warn(\n 'Cannot find element: ' + el\n );\n return document.createElement('div')\n }\n return selected\n } else {\n return el\n }\n}\n\n/* */\n\nfunction createElement$1 (tagName, vnode) {\n var elm = document.createElement(tagName);\n if (tagName !== 'select') {\n return elm\n }\n // false or null will remove the attribute but undefined will not\n if (vnode.data && vnode.data.attrs && vnode.data.attrs.multiple !== undefined) {\n elm.setAttribute('multiple', 'multiple');\n }\n return elm\n}\n\nfunction createElementNS (namespace, tagName) {\n return document.createElementNS(namespaceMap[namespace], tagName)\n}\n\nfunction createTextNode (text) {\n return document.createTextNode(text)\n}\n\nfunction createComment (text) {\n return document.createComment(text)\n}\n\nfunction insertBefore (parentNode, newNode, referenceNode) {\n parentNode.insertBefore(newNode, referenceNode);\n}\n\nfunction removeChild (node, child) {\n node.removeChild(child);\n}\n\nfunction appendChild (node, child) {\n node.appendChild(child);\n}\n\nfunction parentNode (node) {\n return node.parentNode\n}\n\nfunction nextSibling (node) {\n return node.nextSibling\n}\n\nfunction tagName (node) {\n return node.tagName\n}\n\nfunction setTextContent (node, text) {\n node.textContent = text;\n}\n\nfunction setAttribute (node, key, val) {\n node.setAttribute(key, val);\n}\n\n\nvar nodeOps = Object.freeze({\n\tcreateElement: createElement$1,\n\tcreateElementNS: createElementNS,\n\tcreateTextNode: createTextNode,\n\tcreateComment: createComment,\n\tinsertBefore: insertBefore,\n\tremoveChild: removeChild,\n\tappendChild: appendChild,\n\tparentNode: parentNode,\n\tnextSibling: nextSibling,\n\ttagName: tagName,\n\tsetTextContent: setTextContent,\n\tsetAttribute: setAttribute\n});\n\n/* */\n\nvar ref = {\n create: function create (_, vnode) {\n registerRef(vnode);\n },\n update: function update (oldVnode, vnode) {\n if (oldVnode.data.ref !== vnode.data.ref) {\n registerRef(oldVnode, true);\n registerRef(vnode);\n }\n },\n destroy: function destroy (vnode) {\n registerRef(vnode, true);\n }\n};\n\nfunction registerRef (vnode, isRemoval) {\n var key = vnode.data.ref;\n if (!key) { return }\n\n var vm = vnode.context;\n var ref = vnode.componentInstance || vnode.elm;\n var refs = vm.$refs;\n if (isRemoval) {\n if (Array.isArray(refs[key])) {\n remove(refs[key], ref);\n } else if (refs[key] === ref) {\n refs[key] = undefined;\n }\n } else {\n if (vnode.data.refInFor) {\n if (!Array.isArray(refs[key])) {\n refs[key] = [ref];\n } else if (refs[key].indexOf(ref) < 0) {\n // $flow-disable-line\n refs[key].push(ref);\n }\n } else {\n refs[key] = ref;\n }\n }\n}\n\n/**\n * Virtual DOM patching algorithm based on Snabbdom by\n * Simon Friis Vindum (@paldepind)\n * Licensed under the MIT License\n * https://github.com/paldepind/snabbdom/blob/master/LICENSE\n *\n * modified by Evan You (@yyx990803)\n *\n * Not type-checking this because this file is perf-critical and the cost\n * of making flow understand it is not worth it.\n */\n\nvar emptyNode = new VNode('', {}, []);\n\nvar hooks = ['create', 'activate', 'update', 'remove', 'destroy'];\n\nfunction sameVnode (a, b) {\n return (\n a.key === b.key && (\n (\n a.tag === b.tag &&\n a.isComment === b.isComment &&\n isDef(a.data) === isDef(b.data) &&\n sameInputType(a, b)\n ) || (\n isTrue(a.isAsyncPlaceholder) &&\n a.asyncFactory === b.asyncFactory &&\n isUndef(b.asyncFactory.error)\n )\n )\n )\n}\n\nfunction sameInputType (a, b) {\n if (a.tag !== 'input') { return true }\n var i;\n var typeA = isDef(i = a.data) && isDef(i = i.attrs) && i.type;\n var typeB = isDef(i = b.data) && isDef(i = i.attrs) && i.type;\n return typeA === typeB || isTextInputType(typeA) && isTextInputType(typeB)\n}\n\nfunction createKeyToOldIdx (children, beginIdx, endIdx) {\n var i, key;\n var map = {};\n for (i = beginIdx; i <= endIdx; ++i) {\n key = children[i].key;\n if (isDef(key)) { map[key] = i; }\n }\n return map\n}\n\nfunction createPatchFunction (backend) {\n var i, j;\n var cbs = {};\n\n var modules = backend.modules;\n var nodeOps = backend.nodeOps;\n\n for (i = 0; i < hooks.length; ++i) {\n cbs[hooks[i]] = [];\n for (j = 0; j < modules.length; ++j) {\n if (isDef(modules[j][hooks[i]])) {\n cbs[hooks[i]].push(modules[j][hooks[i]]);\n }\n }\n }\n\n function emptyNodeAt (elm) {\n return new VNode(nodeOps.tagName(elm).toLowerCase(), {}, [], undefined, elm)\n }\n\n function createRmCb (childElm, listeners) {\n function remove () {\n if (--remove.listeners === 0) {\n removeNode(childElm);\n }\n }\n remove.listeners = listeners;\n return remove\n }\n\n function removeNode (el) {\n var parent = nodeOps.parentNode(el);\n // element may have already been removed due to v-html / v-text\n if (isDef(parent)) {\n nodeOps.removeChild(parent, el);\n }\n }\n\n var inPre = 0;\n function createElm (vnode, insertedVnodeQueue, parentElm, refElm, nested) {\n vnode.isRootInsert = !nested; // for transition enter check\n if (createComponent(vnode, insertedVnodeQueue, parentElm, refElm)) {\n return\n }\n\n var data = vnode.data;\n var children = vnode.children;\n var tag = vnode.tag;\n if (isDef(tag)) {\n if (process.env.NODE_ENV !== 'production') {\n if (data && data.pre) {\n inPre++;\n }\n if (\n !inPre &&\n !vnode.ns &&\n !(\n config.ignoredElements.length &&\n config.ignoredElements.some(function (ignore) {\n return isRegExp(ignore)\n ? ignore.test(tag)\n : ignore === tag\n })\n ) &&\n config.isUnknownElement(tag)\n ) {\n warn(\n 'Unknown custom element: <' + tag + '> - did you ' +\n 'register the component correctly? For recursive components, ' +\n 'make sure to provide the \"name\" option.',\n vnode.context\n );\n }\n }\n vnode.elm = vnode.ns\n ? nodeOps.createElementNS(vnode.ns, tag)\n : nodeOps.createElement(tag, vnode);\n setScope(vnode);\n\n /* istanbul ignore if */\n {\n createChildren(vnode, children, insertedVnodeQueue);\n if (isDef(data)) {\n invokeCreateHooks(vnode, insertedVnodeQueue);\n }\n insert(parentElm, vnode.elm, refElm);\n }\n\n if (process.env.NODE_ENV !== 'production' && data && data.pre) {\n inPre--;\n }\n } else if (isTrue(vnode.isComment)) {\n vnode.elm = nodeOps.createComment(vnode.text);\n insert(parentElm, vnode.elm, refElm);\n } else {\n vnode.elm = nodeOps.createTextNode(vnode.text);\n insert(parentElm, vnode.elm, refElm);\n }\n }\n\n function createComponent (vnode, insertedVnodeQueue, parentElm, refElm) {\n var i = vnode.data;\n if (isDef(i)) {\n var isReactivated = isDef(vnode.componentInstance) && i.keepAlive;\n if (isDef(i = i.hook) && isDef(i = i.init)) {\n i(vnode, false /* hydrating */, parentElm, refElm);\n }\n // after calling the init hook, if the vnode is a child component\n // it should've created a child instance and mounted it. the child\n // component also has set the placeholder vnode's elm.\n // in that case we can just return the element and be done.\n if (isDef(vnode.componentInstance)) {\n initComponent(vnode, insertedVnodeQueue);\n if (isTrue(isReactivated)) {\n reactivateComponent(vnode, insertedVnodeQueue, parentElm, refElm);\n }\n return true\n }\n }\n }\n\n function initComponent (vnode, insertedVnodeQueue) {\n if (isDef(vnode.data.pendingInsert)) {\n insertedVnodeQueue.push.apply(insertedVnodeQueue, vnode.data.pendingInsert);\n vnode.data.pendingInsert = null;\n }\n vnode.elm = vnode.componentInstance.$el;\n if (isPatchable(vnode)) {\n invokeCreateHooks(vnode, insertedVnodeQueue);\n setScope(vnode);\n } else {\n // empty component root.\n // skip all element-related modules except for ref (#3455)\n registerRef(vnode);\n // make sure to invoke the insert hook\n insertedVnodeQueue.push(vnode);\n }\n }\n\n function reactivateComponent (vnode, insertedVnodeQueue, parentElm, refElm) {\n var i;\n // hack for #4339: a reactivated component with inner transition\n // does not trigger because the inner node's created hooks are not called\n // again. It's not ideal to involve module-specific logic in here but\n // there doesn't seem to be a better way to do it.\n var innerNode = vnode;\n while (innerNode.componentInstance) {\n innerNode = innerNode.componentInstance._vnode;\n if (isDef(i = innerNode.data) && isDef(i = i.transition)) {\n for (i = 0; i < cbs.activate.length; ++i) {\n cbs.activate[i](emptyNode, innerNode);\n }\n insertedVnodeQueue.push(innerNode);\n break\n }\n }\n // unlike a newly created component,\n // a reactivated keep-alive component doesn't insert itself\n insert(parentElm, vnode.elm, refElm);\n }\n\n function insert (parent, elm, ref$$1) {\n if (isDef(parent)) {\n if (isDef(ref$$1)) {\n if (ref$$1.parentNode === parent) {\n nodeOps.insertBefore(parent, elm, ref$$1);\n }\n } else {\n nodeOps.appendChild(parent, elm);\n }\n }\n }\n\n function createChildren (vnode, children, insertedVnodeQueue) {\n if (Array.isArray(children)) {\n for (var i = 0; i < children.length; ++i) {\n createElm(children[i], insertedVnodeQueue, vnode.elm, null, true);\n }\n } else if (isPrimitive(vnode.text)) {\n nodeOps.appendChild(vnode.elm, nodeOps.createTextNode(vnode.text));\n }\n }\n\n function isPatchable (vnode) {\n while (vnode.componentInstance) {\n vnode = vnode.componentInstance._vnode;\n }\n return isDef(vnode.tag)\n }\n\n function invokeCreateHooks (vnode, insertedVnodeQueue) {\n for (var i$1 = 0; i$1 < cbs.create.length; ++i$1) {\n cbs.create[i$1](emptyNode, vnode);\n }\n i = vnode.data.hook; // Reuse variable\n if (isDef(i)) {\n if (isDef(i.create)) { i.create(emptyNode, vnode); }\n if (isDef(i.insert)) { insertedVnodeQueue.push(vnode); }\n }\n }\n\n // set scope id attribute for scoped CSS.\n // this is implemented as a special case to avoid the overhead\n // of going through the normal attribute patching process.\n function setScope (vnode) {\n var i;\n if (isDef(i = vnode.functionalScopeId)) {\n nodeOps.setAttribute(vnode.elm, i, '');\n } else {\n var ancestor = vnode;\n while (ancestor) {\n if (isDef(i = ancestor.context) && isDef(i = i.$options._scopeId)) {\n nodeOps.setAttribute(vnode.elm, i, '');\n }\n ancestor = ancestor.parent;\n }\n }\n // for slot content they should also get the scopeId from the host instance.\n if (isDef(i = activeInstance) &&\n i !== vnode.context &&\n i !== vnode.functionalContext &&\n isDef(i = i.$options._scopeId)\n ) {\n nodeOps.setAttribute(vnode.elm, i, '');\n }\n }\n\n function addVnodes (parentElm, refElm, vnodes, startIdx, endIdx, insertedVnodeQueue) {\n for (; startIdx <= endIdx; ++startIdx) {\n createElm(vnodes[startIdx], insertedVnodeQueue, parentElm, refElm);\n }\n }\n\n function invokeDestroyHook (vnode) {\n var i, j;\n var data = vnode.data;\n if (isDef(data)) {\n if (isDef(i = data.hook) && isDef(i = i.destroy)) { i(vnode); }\n for (i = 0; i < cbs.destroy.length; ++i) { cbs.destroy[i](vnode); }\n }\n if (isDef(i = vnode.children)) {\n for (j = 0; j < vnode.children.length; ++j) {\n invokeDestroyHook(vnode.children[j]);\n }\n }\n }\n\n function removeVnodes (parentElm, vnodes, startIdx, endIdx) {\n for (; startIdx <= endIdx; ++startIdx) {\n var ch = vnodes[startIdx];\n if (isDef(ch)) {\n if (isDef(ch.tag)) {\n removeAndInvokeRemoveHook(ch);\n invokeDestroyHook(ch);\n } else { // Text node\n removeNode(ch.elm);\n }\n }\n }\n }\n\n function removeAndInvokeRemoveHook (vnode, rm) {\n if (isDef(rm) || isDef(vnode.data)) {\n var i;\n var listeners = cbs.remove.length + 1;\n if (isDef(rm)) {\n // we have a recursively passed down rm callback\n // increase the listeners count\n rm.listeners += listeners;\n } else {\n // directly removing\n rm = createRmCb(vnode.elm, listeners);\n }\n // recursively invoke hooks on child component root node\n if (isDef(i = vnode.componentInstance) && isDef(i = i._vnode) && isDef(i.data)) {\n removeAndInvokeRemoveHook(i, rm);\n }\n for (i = 0; i < cbs.remove.length; ++i) {\n cbs.remove[i](vnode, rm);\n }\n if (isDef(i = vnode.data.hook) && isDef(i = i.remove)) {\n i(vnode, rm);\n } else {\n rm();\n }\n } else {\n removeNode(vnode.elm);\n }\n }\n\n function updateChildren (parentElm, oldCh, newCh, insertedVnodeQueue, removeOnly) {\n var oldStartIdx = 0;\n var newStartIdx = 0;\n var oldEndIdx = oldCh.length - 1;\n var oldStartVnode = oldCh[0];\n var oldEndVnode = oldCh[oldEndIdx];\n var newEndIdx = newCh.length - 1;\n var newStartVnode = newCh[0];\n var newEndVnode = newCh[newEndIdx];\n var oldKeyToIdx, idxInOld, vnodeToMove, refElm;\n\n // removeOnly is a special flag used only by <transition-group>\n // to ensure removed elements stay in correct relative positions\n // during leaving transitions\n var canMove = !removeOnly;\n\n while (oldStartIdx <= oldEndIdx && newStartIdx <= newEndIdx) {\n if (isUndef(oldStartVnode)) {\n oldStartVnode = oldCh[++oldStartIdx]; // Vnode has been moved left\n } else if (isUndef(oldEndVnode)) {\n oldEndVnode = oldCh[--oldEndIdx];\n } else if (sameVnode(oldStartVnode, newStartVnode)) {\n patchVnode(oldStartVnode, newStartVnode, insertedVnodeQueue);\n oldStartVnode = oldCh[++oldStartIdx];\n newStartVnode = newCh[++newStartIdx];\n } else if (sameVnode(oldEndVnode, newEndVnode)) {\n patchVnode(oldEndVnode, newEndVnode, insertedVnodeQueue);\n oldEndVnode = oldCh[--oldEndIdx];\n newEndVnode = newCh[--newEndIdx];\n } else if (sameVnode(oldStartVnode, newEndVnode)) { // Vnode moved right\n patchVnode(oldStartVnode, newEndVnode, insertedVnodeQueue);\n canMove && nodeOps.insertBefore(parentElm, oldStartVnode.elm, nodeOps.nextSibling(oldEndVnode.elm));\n oldStartVnode = oldCh[++oldStartIdx];\n newEndVnode = newCh[--newEndIdx];\n } else if (sameVnode(oldEndVnode, newStartVnode)) { // Vnode moved left\n patchVnode(oldEndVnode, newStartVnode, insertedVnodeQueue);\n canMove && nodeOps.insertBefore(parentElm, oldEndVnode.elm, oldStartVnode.elm);\n oldEndVnode = oldCh[--oldEndIdx];\n newStartVnode = newCh[++newStartIdx];\n } else {\n if (isUndef(oldKeyToIdx)) { oldKeyToIdx = createKeyToOldIdx(oldCh, oldStartIdx, oldEndIdx); }\n idxInOld = isDef(newStartVnode.key)\n ? oldKeyToIdx[newStartVnode.key]\n : findIdxInOld(newStartVnode, oldCh, oldStartIdx, oldEndIdx);\n if (isUndef(idxInOld)) { // New element\n createElm(newStartVnode, insertedVnodeQueue, parentElm, oldStartVnode.elm);\n } else {\n vnodeToMove = oldCh[idxInOld];\n /* istanbul ignore if */\n if (process.env.NODE_ENV !== 'production' && !vnodeToMove) {\n warn(\n 'It seems there are duplicate keys that is causing an update error. ' +\n 'Make sure each v-for item has a unique key.'\n );\n }\n if (sameVnode(vnodeToMove, newStartVnode)) {\n patchVnode(vnodeToMove, newStartVnode, insertedVnodeQueue);\n oldCh[idxInOld] = undefined;\n canMove && nodeOps.insertBefore(parentElm, vnodeToMove.elm, oldStartVnode.elm);\n } else {\n // same key but different element. treat as new element\n createElm(newStartVnode, insertedVnodeQueue, parentElm, oldStartVnode.elm);\n }\n }\n newStartVnode = newCh[++newStartIdx];\n }\n }\n if (oldStartIdx > oldEndIdx) {\n refElm = isUndef(newCh[newEndIdx + 1]) ? null : newCh[newEndIdx + 1].elm;\n addVnodes(parentElm, refElm, newCh, newStartIdx, newEndIdx, insertedVnodeQueue);\n } else if (newStartIdx > newEndIdx) {\n removeVnodes(parentElm, oldCh, oldStartIdx, oldEndIdx);\n }\n }\n\n function findIdxInOld (node, oldCh, start, end) {\n for (var i = start; i < end; i++) {\n var c = oldCh[i];\n if (isDef(c) && sameVnode(node, c)) { return i }\n }\n }\n\n function patchVnode (oldVnode, vnode, insertedVnodeQueue, removeOnly) {\n if (oldVnode === vnode) {\n return\n }\n\n var elm = vnode.elm = oldVnode.elm;\n\n if (isTrue(oldVnode.isAsyncPlaceholder)) {\n if (isDef(vnode.asyncFactory.resolved)) {\n hydrate(oldVnode.elm, vnode, insertedVnodeQueue);\n } else {\n vnode.isAsyncPlaceholder = true;\n }\n return\n }\n\n // reuse element for static trees.\n // note we only do this if the vnode is cloned -\n // if the new node is not cloned it means the render functions have been\n // reset by the hot-reload-api and we need to do a proper re-render.\n if (isTrue(vnode.isStatic) &&\n isTrue(oldVnode.isStatic) &&\n vnode.key === oldVnode.key &&\n (isTrue(vnode.isCloned) || isTrue(vnode.isOnce))\n ) {\n vnode.componentInstance = oldVnode.componentInstance;\n return\n }\n\n var i;\n var data = vnode.data;\n if (isDef(data) && isDef(i = data.hook) && isDef(i = i.prepatch)) {\n i(oldVnode, vnode);\n }\n\n var oldCh = oldVnode.children;\n var ch = vnode.children;\n if (isDef(data) && isPatchable(vnode)) {\n for (i = 0; i < cbs.update.length; ++i) { cbs.update[i](oldVnode, vnode); }\n if (isDef(i = data.hook) && isDef(i = i.update)) { i(oldVnode, vnode); }\n }\n if (isUndef(vnode.text)) {\n if (isDef(oldCh) && isDef(ch)) {\n if (oldCh !== ch) { updateChildren(elm, oldCh, ch, insertedVnodeQueue, removeOnly); }\n } else if (isDef(ch)) {\n if (isDef(oldVnode.text)) { nodeOps.setTextContent(elm, ''); }\n addVnodes(elm, null, ch, 0, ch.length - 1, insertedVnodeQueue);\n } else if (isDef(oldCh)) {\n removeVnodes(elm, oldCh, 0, oldCh.length - 1);\n } else if (isDef(oldVnode.text)) {\n nodeOps.setTextContent(elm, '');\n }\n } else if (oldVnode.text !== vnode.text) {\n nodeOps.setTextContent(elm, vnode.text);\n }\n if (isDef(data)) {\n if (isDef(i = data.hook) && isDef(i = i.postpatch)) { i(oldVnode, vnode); }\n }\n }\n\n function invokeInsertHook (vnode, queue, initial) {\n // delay insert hooks for component root nodes, invoke them after the\n // element is really inserted\n if (isTrue(initial) && isDef(vnode.parent)) {\n vnode.parent.data.pendingInsert = queue;\n } else {\n for (var i = 0; i < queue.length; ++i) {\n queue[i].data.hook.insert(queue[i]);\n }\n }\n }\n\n var bailed = false;\n // list of modules that can skip create hook during hydration because they\n // are already rendered on the client or has no need for initialization\n var isRenderedModule = makeMap('attrs,style,class,staticClass,staticStyle,key');\n\n // Note: this is a browser-only function so we can assume elms are DOM nodes.\n function hydrate (elm, vnode, insertedVnodeQueue) {\n if (isTrue(vnode.isComment) && isDef(vnode.asyncFactory)) {\n vnode.elm = elm;\n vnode.isAsyncPlaceholder = true;\n return true\n }\n if (process.env.NODE_ENV !== 'production') {\n if (!assertNodeMatch(elm, vnode)) {\n return false\n }\n }\n vnode.elm = elm;\n var tag = vnode.tag;\n var data = vnode.data;\n var children = vnode.children;\n if (isDef(data)) {\n if (isDef(i = data.hook) && isDef(i = i.init)) { i(vnode, true /* hydrating */); }\n if (isDef(i = vnode.componentInstance)) {\n // child component. it should have hydrated its own tree.\n initComponent(vnode, insertedVnodeQueue);\n return true\n }\n }\n if (isDef(tag)) {\n if (isDef(children)) {\n // empty element, allow client to pick up and populate children\n if (!elm.hasChildNodes()) {\n createChildren(vnode, children, insertedVnodeQueue);\n } else {\n // v-html and domProps: innerHTML\n if (isDef(i = data) && isDef(i = i.domProps) && isDef(i = i.innerHTML)) {\n if (i !== elm.innerHTML) {\n /* istanbul ignore if */\n if (process.env.NODE_ENV !== 'production' &&\n typeof console !== 'undefined' &&\n !bailed\n ) {\n bailed = true;\n console.warn('Parent: ', elm);\n console.warn('server innerHTML: ', i);\n console.warn('client innerHTML: ', elm.innerHTML);\n }\n return false\n }\n } else {\n // iterate and compare children lists\n var childrenMatch = true;\n var childNode = elm.firstChild;\n for (var i$1 = 0; i$1 < children.length; i$1++) {\n if (!childNode || !hydrate(childNode, children[i$1], insertedVnodeQueue)) {\n childrenMatch = false;\n break\n }\n childNode = childNode.nextSibling;\n }\n // if childNode is not null, it means the actual childNodes list is\n // longer than the virtual children list.\n if (!childrenMatch || childNode) {\n /* istanbul ignore if */\n if (process.env.NODE_ENV !== 'production' &&\n typeof console !== 'undefined' &&\n !bailed\n ) {\n bailed = true;\n console.warn('Parent: ', elm);\n console.warn('Mismatching childNodes vs. VNodes: ', elm.childNodes, children);\n }\n return false\n }\n }\n }\n }\n if (isDef(data)) {\n for (var key in data) {\n if (!isRenderedModule(key)) {\n invokeCreateHooks(vnode, insertedVnodeQueue);\n break\n }\n }\n }\n } else if (elm.data !== vnode.text) {\n elm.data = vnode.text;\n }\n return true\n }\n\n function assertNodeMatch (node, vnode) {\n if (isDef(vnode.tag)) {\n return (\n vnode.tag.indexOf('vue-component') === 0 ||\n vnode.tag.toLowerCase() === (node.tagName && node.tagName.toLowerCase())\n )\n } else {\n return node.nodeType === (vnode.isComment ? 8 : 3)\n }\n }\n\n return function patch (oldVnode, vnode, hydrating, removeOnly, parentElm, refElm) {\n if (isUndef(vnode)) {\n if (isDef(oldVnode)) { invokeDestroyHook(oldVnode); }\n return\n }\n\n var isInitialPatch = false;\n var insertedVnodeQueue = [];\n\n if (isUndef(oldVnode)) {\n // empty mount (likely as component), create new root element\n isInitialPatch = true;\n createElm(vnode, insertedVnodeQueue, parentElm, refElm);\n } else {\n var isRealElement = isDef(oldVnode.nodeType);\n if (!isRealElement && sameVnode(oldVnode, vnode)) {\n // patch existing root node\n patchVnode(oldVnode, vnode, insertedVnodeQueue, removeOnly);\n } else {\n if (isRealElement) {\n // mounting to a real element\n // check if this is server-rendered content and if we can perform\n // a successful hydration.\n if (oldVnode.nodeType === 1 && oldVnode.hasAttribute(SSR_ATTR)) {\n oldVnode.removeAttribute(SSR_ATTR);\n hydrating = true;\n }\n if (isTrue(hydrating)) {\n if (hydrate(oldVnode, vnode, insertedVnodeQueue)) {\n invokeInsertHook(vnode, insertedVnodeQueue, true);\n return oldVnode\n } else if (process.env.NODE_ENV !== 'production') {\n warn(\n 'The client-side rendered virtual DOM tree is not matching ' +\n 'server-rendered content. This is likely caused by incorrect ' +\n 'HTML markup, for example nesting block-level elements inside ' +\n '<p>, or missing <tbody>. Bailing hydration and performing ' +\n 'full client-side render.'\n );\n }\n }\n // either not server-rendered, or hydration failed.\n // create an empty node and replace it\n oldVnode = emptyNodeAt(oldVnode);\n }\n // replacing existing element\n var oldElm = oldVnode.elm;\n var parentElm$1 = nodeOps.parentNode(oldElm);\n createElm(\n vnode,\n insertedVnodeQueue,\n // extremely rare edge case: do not insert if old element is in a\n // leaving transition. Only happens when combining transition +\n // keep-alive + HOCs. (#4590)\n oldElm._leaveCb ? null : parentElm$1,\n nodeOps.nextSibling(oldElm)\n );\n\n if (isDef(vnode.parent)) {\n // component root element replaced.\n // update parent placeholder node element, recursively\n var ancestor = vnode.parent;\n var patchable = isPatchable(vnode);\n while (ancestor) {\n for (var i = 0; i < cbs.destroy.length; ++i) {\n cbs.destroy[i](ancestor);\n }\n ancestor.elm = vnode.elm;\n if (patchable) {\n for (var i$1 = 0; i$1 < cbs.create.length; ++i$1) {\n cbs.create[i$1](emptyNode, ancestor);\n }\n // #6513\n // invoke insert hooks that may have been merged by create hooks.\n // e.g. for directives that uses the \"inserted\" hook.\n var insert = ancestor.data.hook.insert;\n if (insert.merged) {\n // start at index 1 to avoid re-invoking component mounted hook\n for (var i$2 = 1; i$2 < insert.fns.length; i$2++) {\n insert.fns[i$2]();\n }\n }\n } else {\n registerRef(ancestor);\n }\n ancestor = ancestor.parent;\n }\n }\n\n if (isDef(parentElm$1)) {\n removeVnodes(parentElm$1, [oldVnode], 0, 0);\n } else if (isDef(oldVnode.tag)) {\n invokeDestroyHook(oldVnode);\n }\n }\n }\n\n invokeInsertHook(vnode, insertedVnodeQueue, isInitialPatch);\n return vnode.elm\n }\n}\n\n/* */\n\nvar directives = {\n create: updateDirectives,\n update: updateDirectives,\n destroy: function unbindDirectives (vnode) {\n updateDirectives(vnode, emptyNode);\n }\n};\n\nfunction updateDirectives (oldVnode, vnode) {\n if (oldVnode.data.directives || vnode.data.directives) {\n _update(oldVnode, vnode);\n }\n}\n\nfunction _update (oldVnode, vnode) {\n var isCreate = oldVnode === emptyNode;\n var isDestroy = vnode === emptyNode;\n var oldDirs = normalizeDirectives$1(oldVnode.data.directives, oldVnode.context);\n var newDirs = normalizeDirectives$1(vnode.data.directives, vnode.context);\n\n var dirsWithInsert = [];\n var dirsWithPostpatch = [];\n\n var key, oldDir, dir;\n for (key in newDirs) {\n oldDir = oldDirs[key];\n dir = newDirs[key];\n if (!oldDir) {\n // new directive, bind\n callHook$1(dir, 'bind', vnode, oldVnode);\n if (dir.def && dir.def.inserted) {\n dirsWithInsert.push(dir);\n }\n } else {\n // existing directive, update\n dir.oldValue = oldDir.value;\n callHook$1(dir, 'update', vnode, oldVnode);\n if (dir.def && dir.def.componentUpdated) {\n dirsWithPostpatch.push(dir);\n }\n }\n }\n\n if (dirsWithInsert.length) {\n var callInsert = function () {\n for (var i = 0; i < dirsWithInsert.length; i++) {\n callHook$1(dirsWithInsert[i], 'inserted', vnode, oldVnode);\n }\n };\n if (isCreate) {\n mergeVNodeHook(vnode.data.hook || (vnode.data.hook = {}), 'insert', callInsert);\n } else {\n callInsert();\n }\n }\n\n if (dirsWithPostpatch.length) {\n mergeVNodeHook(vnode.data.hook || (vnode.data.hook = {}), 'postpatch', function () {\n for (var i = 0; i < dirsWithPostpatch.length; i++) {\n callHook$1(dirsWithPostpatch[i], 'componentUpdated', vnode, oldVnode);\n }\n });\n }\n\n if (!isCreate) {\n for (key in oldDirs) {\n if (!newDirs[key]) {\n // no longer present, unbind\n callHook$1(oldDirs[key], 'unbind', oldVnode, oldVnode, isDestroy);\n }\n }\n }\n}\n\nvar emptyModifiers = Object.create(null);\n\nfunction normalizeDirectives$1 (\n dirs,\n vm\n) {\n var res = Object.create(null);\n if (!dirs) {\n return res\n }\n var i, dir;\n for (i = 0; i < dirs.length; i++) {\n dir = dirs[i];\n if (!dir.modifiers) {\n dir.modifiers = emptyModifiers;\n }\n res[getRawDirName(dir)] = dir;\n dir.def = resolveAsset(vm.$options, 'directives', dir.name, true);\n }\n return res\n}\n\nfunction getRawDirName (dir) {\n return dir.rawName || ((dir.name) + \".\" + (Object.keys(dir.modifiers || {}).join('.')))\n}\n\nfunction callHook$1 (dir, hook, vnode, oldVnode, isDestroy) {\n var fn = dir.def && dir.def[hook];\n if (fn) {\n try {\n fn(vnode.elm, dir, vnode, oldVnode, isDestroy);\n } catch (e) {\n handleError(e, vnode.context, (\"directive \" + (dir.name) + \" \" + hook + \" hook\"));\n }\n }\n}\n\nvar baseModules = [\n ref,\n directives\n];\n\n/* */\n\nfunction updateAttrs (oldVnode, vnode) {\n var opts = vnode.componentOptions;\n if (isDef(opts) && opts.Ctor.options.inheritAttrs === false) {\n return\n }\n if (isUndef(oldVnode.data.attrs) && isUndef(vnode.data.attrs)) {\n return\n }\n var key, cur, old;\n var elm = vnode.elm;\n var oldAttrs = oldVnode.data.attrs || {};\n var attrs = vnode.data.attrs || {};\n // clone observed objects, as the user probably wants to mutate it\n if (isDef(attrs.__ob__)) {\n attrs = vnode.data.attrs = extend({}, attrs);\n }\n\n for (key in attrs) {\n cur = attrs[key];\n old = oldAttrs[key];\n if (old !== cur) {\n setAttr(elm, key, cur);\n }\n }\n // #4391: in IE9, setting type can reset value for input[type=radio]\n // #6666: IE/Edge forces progress value down to 1 before setting a max\n /* istanbul ignore if */\n if ((isIE9 || isEdge) && attrs.value !== oldAttrs.value) {\n setAttr(elm, 'value', attrs.value);\n }\n for (key in oldAttrs) {\n if (isUndef(attrs[key])) {\n if (isXlink(key)) {\n elm.removeAttributeNS(xlinkNS, getXlinkProp(key));\n } else if (!isEnumeratedAttr(key)) {\n elm.removeAttribute(key);\n }\n }\n }\n}\n\nfunction setAttr (el, key, value) {\n if (isBooleanAttr(key)) {\n // set attribute for blank value\n // e.g. <option disabled>Select one</option>\n if (isFalsyAttrValue(value)) {\n el.removeAttribute(key);\n } else {\n // technically allowfullscreen is a boolean attribute for <iframe>,\n // but Flash expects a value of \"true\" when used on <embed> tag\n value = key === 'allowfullscreen' && el.tagName === 'EMBED'\n ? 'true'\n : key;\n el.setAttribute(key, value);\n }\n } else if (isEnumeratedAttr(key)) {\n el.setAttribute(key, isFalsyAttrValue(value) || value === 'false' ? 'false' : 'true');\n } else if (isXlink(key)) {\n if (isFalsyAttrValue(value)) {\n el.removeAttributeNS(xlinkNS, getXlinkProp(key));\n } else {\n el.setAttributeNS(xlinkNS, key, value);\n }\n } else {\n if (isFalsyAttrValue(value)) {\n el.removeAttribute(key);\n } else {\n el.setAttribute(key, value);\n }\n }\n}\n\nvar attrs = {\n create: updateAttrs,\n update: updateAttrs\n};\n\n/* */\n\nfunction updateClass (oldVnode, vnode) {\n var el = vnode.elm;\n var data = vnode.data;\n var oldData = oldVnode.data;\n if (\n isUndef(data.staticClass) &&\n isUndef(data.class) && (\n isUndef(oldData) || (\n isUndef(oldData.staticClass) &&\n isUndef(oldData.class)\n )\n )\n ) {\n return\n }\n\n var cls = genClassForVnode(vnode);\n\n // handle transition classes\n var transitionClass = el._transitionClasses;\n if (isDef(transitionClass)) {\n cls = concat(cls, stringifyClass(transitionClass));\n }\n\n // set the class\n if (cls !== el._prevClass) {\n el.setAttribute('class', cls);\n el._prevClass = cls;\n }\n}\n\nvar klass = {\n create: updateClass,\n update: updateClass\n};\n\n/* */\n\nvar validDivisionCharRE = /[\\w).+\\-_$\\]]/;\n\nfunction parseFilters (exp) {\n var inSingle = false;\n var inDouble = false;\n var inTemplateString = false;\n var inRegex = false;\n var curly = 0;\n var square = 0;\n var paren = 0;\n var lastFilterIndex = 0;\n var c, prev, i, expression, filters;\n\n for (i = 0; i < exp.length; i++) {\n prev = c;\n c = exp.charCodeAt(i);\n if (inSingle) {\n if (c === 0x27 && prev !== 0x5C) { inSingle = false; }\n } else if (inDouble) {\n if (c === 0x22 && prev !== 0x5C) { inDouble = false; }\n } else if (inTemplateString) {\n if (c === 0x60 && prev !== 0x5C) { inTemplateString = false; }\n } else if (inRegex) {\n if (c === 0x2f && prev !== 0x5C) { inRegex = false; }\n } else if (\n c === 0x7C && // pipe\n exp.charCodeAt(i + 1) !== 0x7C &&\n exp.charCodeAt(i - 1) !== 0x7C &&\n !curly && !square && !paren\n ) {\n if (expression === undefined) {\n // first filter, end of expression\n lastFilterIndex = i + 1;\n expression = exp.slice(0, i).trim();\n } else {\n pushFilter();\n }\n } else {\n switch (c) {\n case 0x22: inDouble = true; break // \"\n case 0x27: inSingle = true; break // '\n case 0x60: inTemplateString = true; break // `\n case 0x28: paren++; break // (\n case 0x29: paren--; break // )\n case 0x5B: square++; break // [\n case 0x5D: square--; break // ]\n case 0x7B: curly++; break // {\n case 0x7D: curly--; break // }\n }\n if (c === 0x2f) { // /\n var j = i - 1;\n var p = (void 0);\n // find first non-whitespace prev char\n for (; j >= 0; j--) {\n p = exp.charAt(j);\n if (p !== ' ') { break }\n }\n if (!p || !validDivisionCharRE.test(p)) {\n inRegex = true;\n }\n }\n }\n }\n\n if (expression === undefined) {\n expression = exp.slice(0, i).trim();\n } else if (lastFilterIndex !== 0) {\n pushFilter();\n }\n\n function pushFilter () {\n (filters || (filters = [])).push(exp.slice(lastFilterIndex, i).trim());\n lastFilterIndex = i + 1;\n }\n\n if (filters) {\n for (i = 0; i < filters.length; i++) {\n expression = wrapFilter(expression, filters[i]);\n }\n }\n\n return expression\n}\n\nfunction wrapFilter (exp, filter) {\n var i = filter.indexOf('(');\n if (i < 0) {\n // _f: resolveFilter\n return (\"_f(\\\"\" + filter + \"\\\")(\" + exp + \")\")\n } else {\n var name = filter.slice(0, i);\n var args = filter.slice(i + 1);\n return (\"_f(\\\"\" + name + \"\\\")(\" + exp + \",\" + args)\n }\n}\n\n/* */\n\nfunction baseWarn (msg) {\n console.error((\"[Vue compiler]: \" + msg));\n}\n\nfunction pluckModuleFunction (\n modules,\n key\n) {\n return modules\n ? modules.map(function (m) { return m[key]; }).filter(function (_) { return _; })\n : []\n}\n\nfunction addProp (el, name, value) {\n (el.props || (el.props = [])).push({ name: name, value: value });\n}\n\nfunction addAttr (el, name, value) {\n (el.attrs || (el.attrs = [])).push({ name: name, value: value });\n}\n\nfunction addDirective (\n el,\n name,\n rawName,\n value,\n arg,\n modifiers\n) {\n (el.directives || (el.directives = [])).push({ name: name, rawName: rawName, value: value, arg: arg, modifiers: modifiers });\n}\n\nfunction addHandler (\n el,\n name,\n value,\n modifiers,\n important,\n warn\n) {\n // warn prevent and passive modifier\n /* istanbul ignore if */\n if (\n process.env.NODE_ENV !== 'production' && warn &&\n modifiers && modifiers.prevent && modifiers.passive\n ) {\n warn(\n 'passive and prevent can\\'t be used together. ' +\n 'Passive handler can\\'t prevent default event.'\n );\n }\n // check capture modifier\n if (modifiers && modifiers.capture) {\n delete modifiers.capture;\n name = '!' + name; // mark the event as captured\n }\n if (modifiers && modifiers.once) {\n delete modifiers.once;\n name = '~' + name; // mark the event as once\n }\n /* istanbul ignore if */\n if (modifiers && modifiers.passive) {\n delete modifiers.passive;\n name = '&' + name; // mark the event as passive\n }\n var events;\n if (modifiers && modifiers.native) {\n delete modifiers.native;\n events = el.nativeEvents || (el.nativeEvents = {});\n } else {\n events = el.events || (el.events = {});\n }\n var newHandler = { value: value, modifiers: modifiers };\n var handlers = events[name];\n /* istanbul ignore if */\n if (Array.isArray(handlers)) {\n important ? handlers.unshift(newHandler) : handlers.push(newHandler);\n } else if (handlers) {\n events[name] = important ? [newHandler, handlers] : [handlers, newHandler];\n } else {\n events[name] = newHandler;\n }\n}\n\nfunction getBindingAttr (\n el,\n name,\n getStatic\n) {\n var dynamicValue =\n getAndRemoveAttr(el, ':' + name) ||\n getAndRemoveAttr(el, 'v-bind:' + name);\n if (dynamicValue != null) {\n return parseFilters(dynamicValue)\n } else if (getStatic !== false) {\n var staticValue = getAndRemoveAttr(el, name);\n if (staticValue != null) {\n return JSON.stringify(staticValue)\n }\n }\n}\n\n// note: this only removes the attr from the Array (attrsList) so that it\n// doesn't get processed by processAttrs.\n// By default it does NOT remove it from the map (attrsMap) because the map is\n// needed during codegen.\nfunction getAndRemoveAttr (\n el,\n name,\n removeFromMap\n) {\n var val;\n if ((val = el.attrsMap[name]) != null) {\n var list = el.attrsList;\n for (var i = 0, l = list.length; i < l; i++) {\n if (list[i].name === name) {\n list.splice(i, 1);\n break\n }\n }\n }\n if (removeFromMap) {\n delete el.attrsMap[name];\n }\n return val\n}\n\n/* */\n\n/**\n * Cross-platform code generation for component v-model\n */\nfunction genComponentModel (\n el,\n value,\n modifiers\n) {\n var ref = modifiers || {};\n var number = ref.number;\n var trim = ref.trim;\n\n var baseValueExpression = '$$v';\n var valueExpression = baseValueExpression;\n if (trim) {\n valueExpression =\n \"(typeof \" + baseValueExpression + \" === 'string'\" +\n \"? \" + baseValueExpression + \".trim()\" +\n \": \" + baseValueExpression + \")\";\n }\n if (number) {\n valueExpression = \"_n(\" + valueExpression + \")\";\n }\n var assignment = genAssignmentCode(value, valueExpression);\n\n el.model = {\n value: (\"(\" + value + \")\"),\n expression: (\"\\\"\" + value + \"\\\"\"),\n callback: (\"function (\" + baseValueExpression + \") {\" + assignment + \"}\")\n };\n}\n\n/**\n * Cross-platform codegen helper for generating v-model value assignment code.\n */\nfunction genAssignmentCode (\n value,\n assignment\n) {\n var res = parseModel(value);\n if (res.key === null) {\n return (value + \"=\" + assignment)\n } else {\n return (\"$set(\" + (res.exp) + \", \" + (res.key) + \", \" + assignment + \")\")\n }\n}\n\n/**\n * Parse a v-model expression into a base path and a final key segment.\n * Handles both dot-path and possible square brackets.\n *\n * Possible cases:\n *\n * - test\n * - test[key]\n * - test[test1[key]]\n * - test[\"a\"][key]\n * - xxx.test[a[a].test1[key]]\n * - test.xxx.a[\"asa\"][test1[key]]\n *\n */\n\nvar len;\nvar str;\nvar chr;\nvar index$1;\nvar expressionPos;\nvar expressionEndPos;\n\n\n\nfunction parseModel (val) {\n len = val.length;\n\n if (val.indexOf('[') < 0 || val.lastIndexOf(']') < len - 1) {\n index$1 = val.lastIndexOf('.');\n if (index$1 > -1) {\n return {\n exp: val.slice(0, index$1),\n key: '\"' + val.slice(index$1 + 1) + '\"'\n }\n } else {\n return {\n exp: val,\n key: null\n }\n }\n }\n\n str = val;\n index$1 = expressionPos = expressionEndPos = 0;\n\n while (!eof()) {\n chr = next();\n /* istanbul ignore if */\n if (isStringStart(chr)) {\n parseString(chr);\n } else if (chr === 0x5B) {\n parseBracket(chr);\n }\n }\n\n return {\n exp: val.slice(0, expressionPos),\n key: val.slice(expressionPos + 1, expressionEndPos)\n }\n}\n\nfunction next () {\n return str.charCodeAt(++index$1)\n}\n\nfunction eof () {\n return index$1 >= len\n}\n\nfunction isStringStart (chr) {\n return chr === 0x22 || chr === 0x27\n}\n\nfunction parseBracket (chr) {\n var inBracket = 1;\n expressionPos = index$1;\n while (!eof()) {\n chr = next();\n if (isStringStart(chr)) {\n parseString(chr);\n continue\n }\n if (chr === 0x5B) { inBracket++; }\n if (chr === 0x5D) { inBracket--; }\n if (inBracket === 0) {\n expressionEndPos = index$1;\n break\n }\n }\n}\n\nfunction parseString (chr) {\n var stringQuote = chr;\n while (!eof()) {\n chr = next();\n if (chr === stringQuote) {\n break\n }\n }\n}\n\n/* */\n\nvar warn$1;\n\n// in some cases, the event used has to be determined at runtime\n// so we used some reserved tokens during compile.\nvar RANGE_TOKEN = '__r';\nvar CHECKBOX_RADIO_TOKEN = '__c';\n\nfunction model (\n el,\n dir,\n _warn\n) {\n warn$1 = _warn;\n var value = dir.value;\n var modifiers = dir.modifiers;\n var tag = el.tag;\n var type = el.attrsMap.type;\n\n if (process.env.NODE_ENV !== 'production') {\n // inputs with type=\"file\" are read only and setting the input's\n // value will throw an error.\n if (tag === 'input' && type === 'file') {\n warn$1(\n \"<\" + (el.tag) + \" v-model=\\\"\" + value + \"\\\" type=\\\"file\\\">:\\n\" +\n \"File inputs are read only. Use a v-on:change listener instead.\"\n );\n }\n }\n\n if (el.component) {\n genComponentModel(el, value, modifiers);\n // component v-model doesn't need extra runtime\n return false\n } else if (tag === 'select') {\n genSelect(el, value, modifiers);\n } else if (tag === 'input' && type === 'checkbox') {\n genCheckboxModel(el, value, modifiers);\n } else if (tag === 'input' && type === 'radio') {\n genRadioModel(el, value, modifiers);\n } else if (tag === 'input' || tag === 'textarea') {\n genDefaultModel(el, value, modifiers);\n } else if (!config.isReservedTag(tag)) {\n genComponentModel(el, value, modifiers);\n // component v-model doesn't need extra runtime\n return false\n } else if (process.env.NODE_ENV !== 'production') {\n warn$1(\n \"<\" + (el.tag) + \" v-model=\\\"\" + value + \"\\\">: \" +\n \"v-model is not supported on this element type. \" +\n 'If you are working with contenteditable, it\\'s recommended to ' +\n 'wrap a library dedicated for that purpose inside a custom component.'\n );\n }\n\n // ensure runtime directive metadata\n return true\n}\n\nfunction genCheckboxModel (\n el,\n value,\n modifiers\n) {\n var number = modifiers && modifiers.number;\n var valueBinding = getBindingAttr(el, 'value') || 'null';\n var trueValueBinding = getBindingAttr(el, 'true-value') || 'true';\n var falseValueBinding = getBindingAttr(el, 'false-value') || 'false';\n addProp(el, 'checked',\n \"Array.isArray(\" + value + \")\" +\n \"?_i(\" + value + \",\" + valueBinding + \")>-1\" + (\n trueValueBinding === 'true'\n ? (\":(\" + value + \")\")\n : (\":_q(\" + value + \",\" + trueValueBinding + \")\")\n )\n );\n addHandler(el, 'change',\n \"var $$a=\" + value + \",\" +\n '$$el=$event.target,' +\n \"$$c=$$el.checked?(\" + trueValueBinding + \"):(\" + falseValueBinding + \");\" +\n 'if(Array.isArray($$a)){' +\n \"var $$v=\" + (number ? '_n(' + valueBinding + ')' : valueBinding) + \",\" +\n '$$i=_i($$a,$$v);' +\n \"if($$el.checked){$$i<0&&(\" + value + \"=$$a.concat([$$v]))}\" +\n \"else{$$i>-1&&(\" + value + \"=$$a.slice(0,$$i).concat($$a.slice($$i+1)))}\" +\n \"}else{\" + (genAssignmentCode(value, '$$c')) + \"}\",\n null, true\n );\n}\n\nfunction genRadioModel (\n el,\n value,\n modifiers\n) {\n var number = modifiers && modifiers.number;\n var valueBinding = getBindingAttr(el, 'value') || 'null';\n valueBinding = number ? (\"_n(\" + valueBinding + \")\") : valueBinding;\n addProp(el, 'checked', (\"_q(\" + value + \",\" + valueBinding + \")\"));\n addHandler(el, 'change', genAssignmentCode(value, valueBinding), null, true);\n}\n\nfunction genSelect (\n el,\n value,\n modifiers\n) {\n var number = modifiers && modifiers.number;\n var selectedVal = \"Array.prototype.filter\" +\n \".call($event.target.options,function(o){return o.selected})\" +\n \".map(function(o){var val = \\\"_value\\\" in o ? o._value : o.value;\" +\n \"return \" + (number ? '_n(val)' : 'val') + \"})\";\n\n var assignment = '$event.target.multiple ? $$selectedVal : $$selectedVal[0]';\n var code = \"var $$selectedVal = \" + selectedVal + \";\";\n code = code + \" \" + (genAssignmentCode(value, assignment));\n addHandler(el, 'change', code, null, true);\n}\n\nfunction genDefaultModel (\n el,\n value,\n modifiers\n) {\n var type = el.attrsMap.type;\n var ref = modifiers || {};\n var lazy = ref.lazy;\n var number = ref.number;\n var trim = ref.trim;\n var needCompositionGuard = !lazy && type !== 'range';\n var event = lazy\n ? 'change'\n : type === 'range'\n ? RANGE_TOKEN\n : 'input';\n\n var valueExpression = '$event.target.value';\n if (trim) {\n valueExpression = \"$event.target.value.trim()\";\n }\n if (number) {\n valueExpression = \"_n(\" + valueExpression + \")\";\n }\n\n var code = genAssignmentCode(value, valueExpression);\n if (needCompositionGuard) {\n code = \"if($event.target.composing)return;\" + code;\n }\n\n addProp(el, 'value', (\"(\" + value + \")\"));\n addHandler(el, event, code, null, true);\n if (trim || number) {\n addHandler(el, 'blur', '$forceUpdate()');\n }\n}\n\n/* */\n\n// normalize v-model event tokens that can only be determined at runtime.\n// it's important to place the event as the first in the array because\n// the whole point is ensuring the v-model callback gets called before\n// user-attached handlers.\nfunction normalizeEvents (on) {\n /* istanbul ignore if */\n if (isDef(on[RANGE_TOKEN])) {\n // IE input[type=range] only supports `change` event\n var event = isIE ? 'change' : 'input';\n on[event] = [].concat(on[RANGE_TOKEN], on[event] || []);\n delete on[RANGE_TOKEN];\n }\n // This was originally intended to fix #4521 but no longer necessary\n // after 2.5. Keeping it for backwards compat with generated code from < 2.4\n /* istanbul ignore if */\n if (isDef(on[CHECKBOX_RADIO_TOKEN])) {\n on.change = [].concat(on[CHECKBOX_RADIO_TOKEN], on.change || []);\n delete on[CHECKBOX_RADIO_TOKEN];\n }\n}\n\nvar target$1;\n\nfunction createOnceHandler (handler, event, capture) {\n var _target = target$1; // save current target element in closure\n return function onceHandler () {\n var res = handler.apply(null, arguments);\n if (res !== null) {\n remove$2(event, onceHandler, capture, _target);\n }\n }\n}\n\nfunction add$1 (\n event,\n handler,\n once$$1,\n capture,\n passive\n) {\n handler = withMacroTask(handler);\n if (once$$1) { handler = createOnceHandler(handler, event, capture); }\n target$1.addEventListener(\n event,\n handler,\n supportsPassive\n ? { capture: capture, passive: passive }\n : capture\n );\n}\n\nfunction remove$2 (\n event,\n handler,\n capture,\n _target\n) {\n (_target || target$1).removeEventListener(\n event,\n handler._withTask || handler,\n capture\n );\n}\n\nfunction updateDOMListeners (oldVnode, vnode) {\n if (isUndef(oldVnode.data.on) && isUndef(vnode.data.on)) {\n return\n }\n var on = vnode.data.on || {};\n var oldOn = oldVnode.data.on || {};\n target$1 = vnode.elm;\n normalizeEvents(on);\n updateListeners(on, oldOn, add$1, remove$2, vnode.context);\n}\n\nvar events = {\n create: updateDOMListeners,\n update: updateDOMListeners\n};\n\n/* */\n\nfunction updateDOMProps (oldVnode, vnode) {\n if (isUndef(oldVnode.data.domProps) && isUndef(vnode.data.domProps)) {\n return\n }\n var key, cur;\n var elm = vnode.elm;\n var oldProps = oldVnode.data.domProps || {};\n var props = vnode.data.domProps || {};\n // clone observed objects, as the user probably wants to mutate it\n if (isDef(props.__ob__)) {\n props = vnode.data.domProps = extend({}, props);\n }\n\n for (key in oldProps) {\n if (isUndef(props[key])) {\n elm[key] = '';\n }\n }\n for (key in props) {\n cur = props[key];\n // ignore children if the node has textContent or innerHTML,\n // as these will throw away existing DOM nodes and cause removal errors\n // on subsequent patches (#3360)\n if (key === 'textContent' || key === 'innerHTML') {\n if (vnode.children) { vnode.children.length = 0; }\n if (cur === oldProps[key]) { continue }\n // #6601 work around Chrome version <= 55 bug where single textNode\n // replaced by innerHTML/textContent retains its parentNode property\n if (elm.childNodes.length === 1) {\n elm.removeChild(elm.childNodes[0]);\n }\n }\n\n if (key === 'value') {\n // store value as _value as well since\n // non-string values will be stringified\n elm._value = cur;\n // avoid resetting cursor position when value is the same\n var strCur = isUndef(cur) ? '' : String(cur);\n if (shouldUpdateValue(elm, strCur)) {\n elm.value = strCur;\n }\n } else {\n elm[key] = cur;\n }\n }\n}\n\n// check platforms/web/util/attrs.js acceptValue\n\n\nfunction shouldUpdateValue (elm, checkVal) {\n return (!elm.composing && (\n elm.tagName === 'OPTION' ||\n isDirty(elm, checkVal) ||\n isInputChanged(elm, checkVal)\n ))\n}\n\nfunction isDirty (elm, checkVal) {\n // return true when textbox (.number and .trim) loses focus and its value is\n // not equal to the updated value\n var notInFocus = true;\n // #6157\n // work around IE bug when accessing document.activeElement in an iframe\n try { notInFocus = document.activeElement !== elm; } catch (e) {}\n return notInFocus && elm.value !== checkVal\n}\n\nfunction isInputChanged (elm, newVal) {\n var value = elm.value;\n var modifiers = elm._vModifiers; // injected by v-model runtime\n if (isDef(modifiers) && modifiers.number) {\n return toNumber(value) !== toNumber(newVal)\n }\n if (isDef(modifiers) && modifiers.trim) {\n return value.trim() !== newVal.trim()\n }\n return value !== newVal\n}\n\nvar domProps = {\n create: updateDOMProps,\n update: updateDOMProps\n};\n\n/* */\n\nvar parseStyleText = cached(function (cssText) {\n var res = {};\n var listDelimiter = /;(?![^(]*\\))/g;\n var propertyDelimiter = /:(.+)/;\n cssText.split(listDelimiter).forEach(function (item) {\n if (item) {\n var tmp = item.split(propertyDelimiter);\n tmp.length > 1 && (res[tmp[0].trim()] = tmp[1].trim());\n }\n });\n return res\n});\n\n// merge static and dynamic style data on the same vnode\nfunction normalizeStyleData (data) {\n var style = normalizeStyleBinding(data.style);\n // static style is pre-processed into an object during compilation\n // and is always a fresh object, so it's safe to merge into it\n return data.staticStyle\n ? extend(data.staticStyle, style)\n : style\n}\n\n// normalize possible array / string values into Object\nfunction normalizeStyleBinding (bindingStyle) {\n if (Array.isArray(bindingStyle)) {\n return toObject(bindingStyle)\n }\n if (typeof bindingStyle === 'string') {\n return parseStyleText(bindingStyle)\n }\n return bindingStyle\n}\n\n/**\n * parent component style should be after child's\n * so that parent component's style could override it\n */\nfunction getStyle (vnode, checkChild) {\n var res = {};\n var styleData;\n\n if (checkChild) {\n var childNode = vnode;\n while (childNode.componentInstance) {\n childNode = childNode.componentInstance._vnode;\n if (childNode.data && (styleData = normalizeStyleData(childNode.data))) {\n extend(res, styleData);\n }\n }\n }\n\n if ((styleData = normalizeStyleData(vnode.data))) {\n extend(res, styleData);\n }\n\n var parentNode = vnode;\n while ((parentNode = parentNode.parent)) {\n if (parentNode.data && (styleData = normalizeStyleData(parentNode.data))) {\n extend(res, styleData);\n }\n }\n return res\n}\n\n/* */\n\nvar cssVarRE = /^--/;\nvar importantRE = /\\s*!important$/;\nvar setProp = function (el, name, val) {\n /* istanbul ignore if */\n if (cssVarRE.test(name)) {\n el.style.setProperty(name, val);\n } else if (importantRE.test(val)) {\n el.style.setProperty(name, val.replace(importantRE, ''), 'important');\n } else {\n var normalizedName = normalize(name);\n if (Array.isArray(val)) {\n // Support values array created by autoprefixer, e.g.\n // {display: [\"-webkit-box\", \"-ms-flexbox\", \"flex\"]}\n // Set them one by one, and the browser will only set those it can recognize\n for (var i = 0, len = val.length; i < len; i++) {\n el.style[normalizedName] = val[i];\n }\n } else {\n el.style[normalizedName] = val;\n }\n }\n};\n\nvar vendorNames = ['Webkit', 'Moz', 'ms'];\n\nvar emptyStyle;\nvar normalize = cached(function (prop) {\n emptyStyle = emptyStyle || document.createElement('div').style;\n prop = camelize(prop);\n if (prop !== 'filter' && (prop in emptyStyle)) {\n return prop\n }\n var capName = prop.charAt(0).toUpperCase() + prop.slice(1);\n for (var i = 0; i < vendorNames.length; i++) {\n var name = vendorNames[i] + capName;\n if (name in emptyStyle) {\n return name\n }\n }\n});\n\nfunction updateStyle (oldVnode, vnode) {\n var data = vnode.data;\n var oldData = oldVnode.data;\n\n if (isUndef(data.staticStyle) && isUndef(data.style) &&\n isUndef(oldData.staticStyle) && isUndef(oldData.style)\n ) {\n return\n }\n\n var cur, name;\n var el = vnode.elm;\n var oldStaticStyle = oldData.staticStyle;\n var oldStyleBinding = oldData.normalizedStyle || oldData.style || {};\n\n // if static style exists, stylebinding already merged into it when doing normalizeStyleData\n var oldStyle = oldStaticStyle || oldStyleBinding;\n\n var style = normalizeStyleBinding(vnode.data.style) || {};\n\n // store normalized style under a different key for next diff\n // make sure to clone it if it's reactive, since the user likely wants\n // to mutate it.\n vnode.data.normalizedStyle = isDef(style.__ob__)\n ? extend({}, style)\n : style;\n\n var newStyle = getStyle(vnode, true);\n\n for (name in oldStyle) {\n if (isUndef(newStyle[name])) {\n setProp(el, name, '');\n }\n }\n for (name in newStyle) {\n cur = newStyle[name];\n if (cur !== oldStyle[name]) {\n // ie9 setting to null has no effect, must use empty string\n setProp(el, name, cur == null ? '' : cur);\n }\n }\n}\n\nvar style = {\n create: updateStyle,\n update: updateStyle\n};\n\n/* */\n\n/**\n * Add class with compatibility for SVG since classList is not supported on\n * SVG elements in IE\n */\nfunction addClass (el, cls) {\n /* istanbul ignore if */\n if (!cls || !(cls = cls.trim())) {\n return\n }\n\n /* istanbul ignore else */\n if (el.classList) {\n if (cls.indexOf(' ') > -1) {\n cls.split(/\\s+/).forEach(function (c) { return el.classList.add(c); });\n } else {\n el.classList.add(cls);\n }\n } else {\n var cur = \" \" + (el.getAttribute('class') || '') + \" \";\n if (cur.indexOf(' ' + cls + ' ') < 0) {\n el.setAttribute('class', (cur + cls).trim());\n }\n }\n}\n\n/**\n * Remove class with compatibility for SVG since classList is not supported on\n * SVG elements in IE\n */\nfunction removeClass (el, cls) {\n /* istanbul ignore if */\n if (!cls || !(cls = cls.trim())) {\n return\n }\n\n /* istanbul ignore else */\n if (el.classList) {\n if (cls.indexOf(' ') > -1) {\n cls.split(/\\s+/).forEach(function (c) { return el.classList.remove(c); });\n } else {\n el.classList.remove(cls);\n }\n if (!el.classList.length) {\n el.removeAttribute('class');\n }\n } else {\n var cur = \" \" + (el.getAttribute('class') || '') + \" \";\n var tar = ' ' + cls + ' ';\n while (cur.indexOf(tar) >= 0) {\n cur = cur.replace(tar, ' ');\n }\n cur = cur.trim();\n if (cur) {\n el.setAttribute('class', cur);\n } else {\n el.removeAttribute('class');\n }\n }\n}\n\n/* */\n\nfunction resolveTransition (def) {\n if (!def) {\n return\n }\n /* istanbul ignore else */\n if (typeof def === 'object') {\n var res = {};\n if (def.css !== false) {\n extend(res, autoCssTransition(def.name || 'v'));\n }\n extend(res, def);\n return res\n } else if (typeof def === 'string') {\n return autoCssTransition(def)\n }\n}\n\nvar autoCssTransition = cached(function (name) {\n return {\n enterClass: (name + \"-enter\"),\n enterToClass: (name + \"-enter-to\"),\n enterActiveClass: (name + \"-enter-active\"),\n leaveClass: (name + \"-leave\"),\n leaveToClass: (name + \"-leave-to\"),\n leaveActiveClass: (name + \"-leave-active\")\n }\n});\n\nvar hasTransition = inBrowser && !isIE9;\nvar TRANSITION = 'transition';\nvar ANIMATION = 'animation';\n\n// Transition property/event sniffing\nvar transitionProp = 'transition';\nvar transitionEndEvent = 'transitionend';\nvar animationProp = 'animation';\nvar animationEndEvent = 'animationend';\nif (hasTransition) {\n /* istanbul ignore if */\n if (window.ontransitionend === undefined &&\n window.onwebkittransitionend !== undefined\n ) {\n transitionProp = 'WebkitTransition';\n transitionEndEvent = 'webkitTransitionEnd';\n }\n if (window.onanimationend === undefined &&\n window.onwebkitanimationend !== undefined\n ) {\n animationProp = 'WebkitAnimation';\n animationEndEvent = 'webkitAnimationEnd';\n }\n}\n\n// binding to window is necessary to make hot reload work in IE in strict mode\nvar raf = inBrowser\n ? window.requestAnimationFrame\n ? window.requestAnimationFrame.bind(window)\n : setTimeout\n : /* istanbul ignore next */ function (fn) { return fn(); };\n\nfunction nextFrame (fn) {\n raf(function () {\n raf(fn);\n });\n}\n\nfunction addTransitionClass (el, cls) {\n var transitionClasses = el._transitionClasses || (el._transitionClasses = []);\n if (transitionClasses.indexOf(cls) < 0) {\n transitionClasses.push(cls);\n addClass(el, cls);\n }\n}\n\nfunction removeTransitionClass (el, cls) {\n if (el._transitionClasses) {\n remove(el._transitionClasses, cls);\n }\n removeClass(el, cls);\n}\n\nfunction whenTransitionEnds (\n el,\n expectedType,\n cb\n) {\n var ref = getTransitionInfo(el, expectedType);\n var type = ref.type;\n var timeout = ref.timeout;\n var propCount = ref.propCount;\n if (!type) { return cb() }\n var event = type === TRANSITION ? transitionEndEvent : animationEndEvent;\n var ended = 0;\n var end = function () {\n el.removeEventListener(event, onEnd);\n cb();\n };\n var onEnd = function (e) {\n if (e.target === el) {\n if (++ended >= propCount) {\n end();\n }\n }\n };\n setTimeout(function () {\n if (ended < propCount) {\n end();\n }\n }, timeout + 1);\n el.addEventListener(event, onEnd);\n}\n\nvar transformRE = /\\b(transform|all)(,|$)/;\n\nfunction getTransitionInfo (el, expectedType) {\n var styles = window.getComputedStyle(el);\n var transitionDelays = styles[transitionProp + 'Delay'].split(', ');\n var transitionDurations = styles[transitionProp + 'Duration'].split(', ');\n var transitionTimeout = getTimeout(transitionDelays, transitionDurations);\n var animationDelays = styles[animationProp + 'Delay'].split(', ');\n var animationDurations = styles[animationProp + 'Duration'].split(', ');\n var animationTimeout = getTimeout(animationDelays, animationDurations);\n\n var type;\n var timeout = 0;\n var propCount = 0;\n /* istanbul ignore if */\n if (expectedType === TRANSITION) {\n if (transitionTimeout > 0) {\n type = TRANSITION;\n timeout = transitionTimeout;\n propCount = transitionDurations.length;\n }\n } else if (expectedType === ANIMATION) {\n if (animationTimeout > 0) {\n type = ANIMATION;\n timeout = animationTimeout;\n propCount = animationDurations.length;\n }\n } else {\n timeout = Math.max(transitionTimeout, animationTimeout);\n type = timeout > 0\n ? transitionTimeout > animationTimeout\n ? TRANSITION\n : ANIMATION\n : null;\n propCount = type\n ? type === TRANSITION\n ? transitionDurations.length\n : animationDurations.length\n : 0;\n }\n var hasTransform =\n type === TRANSITION &&\n transformRE.test(styles[transitionProp + 'Property']);\n return {\n type: type,\n timeout: timeout,\n propCount: propCount,\n hasTransform: hasTransform\n }\n}\n\nfunction getTimeout (delays, durations) {\n /* istanbul ignore next */\n while (delays.length < durations.length) {\n delays = delays.concat(delays);\n }\n\n return Math.max.apply(null, durations.map(function (d, i) {\n return toMs(d) + toMs(delays[i])\n }))\n}\n\nfunction toMs (s) {\n return Number(s.slice(0, -1)) * 1000\n}\n\n/* */\n\nfunction enter (vnode, toggleDisplay) {\n var el = vnode.elm;\n\n // call leave callback now\n if (isDef(el._leaveCb)) {\n el._leaveCb.cancelled = true;\n el._leaveCb();\n }\n\n var data = resolveTransition(vnode.data.transition);\n if (isUndef(data)) {\n return\n }\n\n /* istanbul ignore if */\n if (isDef(el._enterCb) || el.nodeType !== 1) {\n return\n }\n\n var css = data.css;\n var type = data.type;\n var enterClass = data.enterClass;\n var enterToClass = data.enterToClass;\n var enterActiveClass = data.enterActiveClass;\n var appearClass = data.appearClass;\n var appearToClass = data.appearToClass;\n var appearActiveClass = data.appearActiveClass;\n var beforeEnter = data.beforeEnter;\n var enter = data.enter;\n var afterEnter = data.afterEnter;\n var enterCancelled = data.enterCancelled;\n var beforeAppear = data.beforeAppear;\n var appear = data.appear;\n var afterAppear = data.afterAppear;\n var appearCancelled = data.appearCancelled;\n var duration = data.duration;\n\n // activeInstance will always be the <transition> component managing this\n // transition. One edge case to check is when the <transition> is placed\n // as the root node of a child component. In that case we need to check\n // <transition>'s parent for appear check.\n var context = activeInstance;\n var transitionNode = activeInstance.$vnode;\n while (transitionNode && transitionNode.parent) {\n transitionNode = transitionNode.parent;\n context = transitionNode.context;\n }\n\n var isAppear = !context._isMounted || !vnode.isRootInsert;\n\n if (isAppear && !appear && appear !== '') {\n return\n }\n\n var startClass = isAppear && appearClass\n ? appearClass\n : enterClass;\n var activeClass = isAppear && appearActiveClass\n ? appearActiveClass\n : enterActiveClass;\n var toClass = isAppear && appearToClass\n ? appearToClass\n : enterToClass;\n\n var beforeEnterHook = isAppear\n ? (beforeAppear || beforeEnter)\n : beforeEnter;\n var enterHook = isAppear\n ? (typeof appear === 'function' ? appear : enter)\n : enter;\n var afterEnterHook = isAppear\n ? (afterAppear || afterEnter)\n : afterEnter;\n var enterCancelledHook = isAppear\n ? (appearCancelled || enterCancelled)\n : enterCancelled;\n\n var explicitEnterDuration = toNumber(\n isObject(duration)\n ? duration.enter\n : duration\n );\n\n if (process.env.NODE_ENV !== 'production' && explicitEnterDuration != null) {\n checkDuration(explicitEnterDuration, 'enter', vnode);\n }\n\n var expectsCSS = css !== false && !isIE9;\n var userWantsControl = getHookArgumentsLength(enterHook);\n\n var cb = el._enterCb = once(function () {\n if (expectsCSS) {\n removeTransitionClass(el, toClass);\n removeTransitionClass(el, activeClass);\n }\n if (cb.cancelled) {\n if (expectsCSS) {\n removeTransitionClass(el, startClass);\n }\n enterCancelledHook && enterCancelledHook(el);\n } else {\n afterEnterHook && afterEnterHook(el);\n }\n el._enterCb = null;\n });\n\n if (!vnode.data.show) {\n // remove pending leave element on enter by injecting an insert hook\n mergeVNodeHook(vnode.data.hook || (vnode.data.hook = {}), 'insert', function () {\n var parent = el.parentNode;\n var pendingNode = parent && parent._pending && parent._pending[vnode.key];\n if (pendingNode &&\n pendingNode.tag === vnode.tag &&\n pendingNode.elm._leaveCb\n ) {\n pendingNode.elm._leaveCb();\n }\n enterHook && enterHook(el, cb);\n });\n }\n\n // start enter transition\n beforeEnterHook && beforeEnterHook(el);\n if (expectsCSS) {\n addTransitionClass(el, startClass);\n addTransitionClass(el, activeClass);\n nextFrame(function () {\n addTransitionClass(el, toClass);\n removeTransitionClass(el, startClass);\n if (!cb.cancelled && !userWantsControl) {\n if (isValidDuration(explicitEnterDuration)) {\n setTimeout(cb, explicitEnterDuration);\n } else {\n whenTransitionEnds(el, type, cb);\n }\n }\n });\n }\n\n if (vnode.data.show) {\n toggleDisplay && toggleDisplay();\n enterHook && enterHook(el, cb);\n }\n\n if (!expectsCSS && !userWantsControl) {\n cb();\n }\n}\n\nfunction leave (vnode, rm) {\n var el = vnode.elm;\n\n // call enter callback now\n if (isDef(el._enterCb)) {\n el._enterCb.cancelled = true;\n el._enterCb();\n }\n\n var data = resolveTransition(vnode.data.transition);\n if (isUndef(data)) {\n return rm()\n }\n\n /* istanbul ignore if */\n if (isDef(el._leaveCb) || el.nodeType !== 1) {\n return\n }\n\n var css = data.css;\n var type = data.type;\n var leaveClass = data.leaveClass;\n var leaveToClass = data.leaveToClass;\n var leaveActiveClass = data.leaveActiveClass;\n var beforeLeave = data.beforeLeave;\n var leave = data.leave;\n var afterLeave = data.afterLeave;\n var leaveCancelled = data.leaveCancelled;\n var delayLeave = data.delayLeave;\n var duration = data.duration;\n\n var expectsCSS = css !== false && !isIE9;\n var userWantsControl = getHookArgumentsLength(leave);\n\n var explicitLeaveDuration = toNumber(\n isObject(duration)\n ? duration.leave\n : duration\n );\n\n if (process.env.NODE_ENV !== 'production' && isDef(explicitLeaveDuration)) {\n checkDuration(explicitLeaveDuration, 'leave', vnode);\n }\n\n var cb = el._leaveCb = once(function () {\n if (el.parentNode && el.parentNode._pending) {\n el.parentNode._pending[vnode.key] = null;\n }\n if (expectsCSS) {\n removeTransitionClass(el, leaveToClass);\n removeTransitionClass(el, leaveActiveClass);\n }\n if (cb.cancelled) {\n if (expectsCSS) {\n removeTransitionClass(el, leaveClass);\n }\n leaveCancelled && leaveCancelled(el);\n } else {\n rm();\n afterLeave && afterLeave(el);\n }\n el._leaveCb = null;\n });\n\n if (delayLeave) {\n delayLeave(performLeave);\n } else {\n performLeave();\n }\n\n function performLeave () {\n // the delayed leave may have already been cancelled\n if (cb.cancelled) {\n return\n }\n // record leaving element\n if (!vnode.data.show) {\n (el.parentNode._pending || (el.parentNode._pending = {}))[(vnode.key)] = vnode;\n }\n beforeLeave && beforeLeave(el);\n if (expectsCSS) {\n addTransitionClass(el, leaveClass);\n addTransitionClass(el, leaveActiveClass);\n nextFrame(function () {\n addTransitionClass(el, leaveToClass);\n removeTransitionClass(el, leaveClass);\n if (!cb.cancelled && !userWantsControl) {\n if (isValidDuration(explicitLeaveDuration)) {\n setTimeout(cb, explicitLeaveDuration);\n } else {\n whenTransitionEnds(el, type, cb);\n }\n }\n });\n }\n leave && leave(el, cb);\n if (!expectsCSS && !userWantsControl) {\n cb();\n }\n }\n}\n\n// only used in dev mode\nfunction checkDuration (val, name, vnode) {\n if (typeof val !== 'number') {\n warn(\n \"<transition> explicit \" + name + \" duration is not a valid number - \" +\n \"got \" + (JSON.stringify(val)) + \".\",\n vnode.context\n );\n } else if (isNaN(val)) {\n warn(\n \"<transition> explicit \" + name + \" duration is NaN - \" +\n 'the duration expression might be incorrect.',\n vnode.context\n );\n }\n}\n\nfunction isValidDuration (val) {\n return typeof val === 'number' && !isNaN(val)\n}\n\n/**\n * Normalize a transition hook's argument length. The hook may be:\n * - a merged hook (invoker) with the original in .fns\n * - a wrapped component method (check ._length)\n * - a plain function (.length)\n */\nfunction getHookArgumentsLength (fn) {\n if (isUndef(fn)) {\n return false\n }\n var invokerFns = fn.fns;\n if (isDef(invokerFns)) {\n // invoker\n return getHookArgumentsLength(\n Array.isArray(invokerFns)\n ? invokerFns[0]\n : invokerFns\n )\n } else {\n return (fn._length || fn.length) > 1\n }\n}\n\nfunction _enter (_, vnode) {\n if (vnode.data.show !== true) {\n enter(vnode);\n }\n}\n\nvar transition = inBrowser ? {\n create: _enter,\n activate: _enter,\n remove: function remove$$1 (vnode, rm) {\n /* istanbul ignore else */\n if (vnode.data.show !== true) {\n leave(vnode, rm);\n } else {\n rm();\n }\n }\n} : {};\n\nvar platformModules = [\n attrs,\n klass,\n events,\n domProps,\n style,\n transition\n];\n\n/* */\n\n// the directive module should be applied last, after all\n// built-in modules have been applied.\nvar modules = platformModules.concat(baseModules);\n\nvar patch = createPatchFunction({ nodeOps: nodeOps, modules: modules });\n\n/**\n * Not type checking this file because flow doesn't like attaching\n * properties to Elements.\n */\n\n/* istanbul ignore if */\nif (isIE9) {\n // http://www.matts411.com/post/internet-explorer-9-oninput/\n document.addEventListener('selectionchange', function () {\n var el = document.activeElement;\n if (el && el.vmodel) {\n trigger(el, 'input');\n }\n });\n}\n\nvar model$1 = {\n inserted: function inserted (el, binding, vnode) {\n if (vnode.tag === 'select') {\n setSelected(el, binding, vnode.context);\n el._vOptions = [].map.call(el.options, getValue);\n } else if (vnode.tag === 'textarea' || isTextInputType(el.type)) {\n el._vModifiers = binding.modifiers;\n if (!binding.modifiers.lazy) {\n // Safari < 10.2 & UIWebView doesn't fire compositionend when\n // switching focus before confirming composition choice\n // this also fixes the issue where some browsers e.g. iOS Chrome\n // fires \"change\" instead of \"input\" on autocomplete.\n el.addEventListener('change', onCompositionEnd);\n if (!isAndroid) {\n el.addEventListener('compositionstart', onCompositionStart);\n el.addEventListener('compositionend', onCompositionEnd);\n }\n /* istanbul ignore if */\n if (isIE9) {\n el.vmodel = true;\n }\n }\n }\n },\n componentUpdated: function componentUpdated (el, binding, vnode) {\n if (vnode.tag === 'select') {\n setSelected(el, binding, vnode.context);\n // in case the options rendered by v-for have changed,\n // it's possible that the value is out-of-sync with the rendered options.\n // detect such cases and filter out values that no longer has a matching\n // option in the DOM.\n var prevOptions = el._vOptions;\n var curOptions = el._vOptions = [].map.call(el.options, getValue);\n if (curOptions.some(function (o, i) { return !looseEqual(o, prevOptions[i]); })) {\n // trigger change event if\n // no matching option found for at least one value\n var needReset = el.multiple\n ? binding.value.some(function (v) { return hasNoMatchingOption(v, curOptions); })\n : binding.value !== binding.oldValue && hasNoMatchingOption(binding.value, curOptions);\n if (needReset) {\n trigger(el, 'change');\n }\n }\n }\n }\n};\n\nfunction setSelected (el, binding, vm) {\n actuallySetSelected(el, binding, vm);\n /* istanbul ignore if */\n if (isIE || isEdge) {\n setTimeout(function () {\n actuallySetSelected(el, binding, vm);\n }, 0);\n }\n}\n\nfunction actuallySetSelected (el, binding, vm) {\n var value = binding.value;\n var isMultiple = el.multiple;\n if (isMultiple && !Array.isArray(value)) {\n process.env.NODE_ENV !== 'production' && warn(\n \"<select multiple v-model=\\\"\" + (binding.expression) + \"\\\"> \" +\n \"expects an Array value for its binding, but got \" + (Object.prototype.toString.call(value).slice(8, -1)),\n vm\n );\n return\n }\n var selected, option;\n for (var i = 0, l = el.options.length; i < l; i++) {\n option = el.options[i];\n if (isMultiple) {\n selected = looseIndexOf(value, getValue(option)) > -1;\n if (option.selected !== selected) {\n option.selected = selected;\n }\n } else {\n if (looseEqual(getValue(option), value)) {\n if (el.selectedIndex !== i) {\n el.selectedIndex = i;\n }\n return\n }\n }\n }\n if (!isMultiple) {\n el.selectedIndex = -1;\n }\n}\n\nfunction hasNoMatchingOption (value, options) {\n return options.every(function (o) { return !looseEqual(o, value); })\n}\n\nfunction getValue (option) {\n return '_value' in option\n ? option._value\n : option.value\n}\n\nfunction onCompositionStart (e) {\n e.target.composing = true;\n}\n\nfunction onCompositionEnd (e) {\n // prevent triggering an input event for no reason\n if (!e.target.composing) { return }\n e.target.composing = false;\n trigger(e.target, 'input');\n}\n\nfunction trigger (el, type) {\n var e = document.createEvent('HTMLEvents');\n e.initEvent(type, true, true);\n el.dispatchEvent(e);\n}\n\n/* */\n\n// recursively search for possible transition defined inside the component root\nfunction locateNode (vnode) {\n return vnode.componentInstance && (!vnode.data || !vnode.data.transition)\n ? locateNode(vnode.componentInstance._vnode)\n : vnode\n}\n\nvar show = {\n bind: function bind (el, ref, vnode) {\n var value = ref.value;\n\n vnode = locateNode(vnode);\n var transition$$1 = vnode.data && vnode.data.transition;\n var originalDisplay = el.__vOriginalDisplay =\n el.style.display === 'none' ? '' : el.style.display;\n if (value && transition$$1) {\n vnode.data.show = true;\n enter(vnode, function () {\n el.style.display = originalDisplay;\n });\n } else {\n el.style.display = value ? originalDisplay : 'none';\n }\n },\n\n update: function update (el, ref, vnode) {\n var value = ref.value;\n var oldValue = ref.oldValue;\n\n /* istanbul ignore if */\n if (value === oldValue) { return }\n vnode = locateNode(vnode);\n var transition$$1 = vnode.data && vnode.data.transition;\n if (transition$$1) {\n vnode.data.show = true;\n if (value) {\n enter(vnode, function () {\n el.style.display = el.__vOriginalDisplay;\n });\n } else {\n leave(vnode, function () {\n el.style.display = 'none';\n });\n }\n } else {\n el.style.display = value ? el.__vOriginalDisplay : 'none';\n }\n },\n\n unbind: function unbind (\n el,\n binding,\n vnode,\n oldVnode,\n isDestroy\n ) {\n if (!isDestroy) {\n el.style.display = el.__vOriginalDisplay;\n }\n }\n};\n\nvar platformDirectives = {\n model: model$1,\n show: show\n};\n\n/* */\n\n// Provides transition support for a single element/component.\n// supports transition mode (out-in / in-out)\n\nvar transitionProps = {\n name: String,\n appear: Boolean,\n css: Boolean,\n mode: String,\n type: String,\n enterClass: String,\n leaveClass: String,\n enterToClass: String,\n leaveToClass: String,\n enterActiveClass: String,\n leaveActiveClass: String,\n appearClass: String,\n appearActiveClass: String,\n appearToClass: String,\n duration: [Number, String, Object]\n};\n\n// in case the child is also an abstract component, e.g. <keep-alive>\n// we want to recursively retrieve the real component to be rendered\nfunction getRealChild (vnode) {\n var compOptions = vnode && vnode.componentOptions;\n if (compOptions && compOptions.Ctor.options.abstract) {\n return getRealChild(getFirstComponentChild(compOptions.children))\n } else {\n return vnode\n }\n}\n\nfunction extractTransitionData (comp) {\n var data = {};\n var options = comp.$options;\n // props\n for (var key in options.propsData) {\n data[key] = comp[key];\n }\n // events.\n // extract listeners and pass them directly to the transition methods\n var listeners = options._parentListeners;\n for (var key$1 in listeners) {\n data[camelize(key$1)] = listeners[key$1];\n }\n return data\n}\n\nfunction placeholder (h, rawChild) {\n if (/\\d-keep-alive$/.test(rawChild.tag)) {\n return h('keep-alive', {\n props: rawChild.componentOptions.propsData\n })\n }\n}\n\nfunction hasParentTransition (vnode) {\n while ((vnode = vnode.parent)) {\n if (vnode.data.transition) {\n return true\n }\n }\n}\n\nfunction isSameChild (child, oldChild) {\n return oldChild.key === child.key && oldChild.tag === child.tag\n}\n\nvar Transition = {\n name: 'transition',\n props: transitionProps,\n abstract: true,\n\n render: function render (h) {\n var this$1 = this;\n\n var children = this.$options._renderChildren;\n if (!children) {\n return\n }\n\n // filter out text nodes (possible whitespaces)\n children = children.filter(function (c) { return c.tag || isAsyncPlaceholder(c); });\n /* istanbul ignore if */\n if (!children.length) {\n return\n }\n\n // warn multiple elements\n if (process.env.NODE_ENV !== 'production' && children.length > 1) {\n warn(\n '<transition> can only be used on a single element. Use ' +\n '<transition-group> for lists.',\n this.$parent\n );\n }\n\n var mode = this.mode;\n\n // warn invalid mode\n if (process.env.NODE_ENV !== 'production' &&\n mode && mode !== 'in-out' && mode !== 'out-in'\n ) {\n warn(\n 'invalid <transition> mode: ' + mode,\n this.$parent\n );\n }\n\n var rawChild = children[0];\n\n // if this is a component root node and the component's\n // parent container node also has transition, skip.\n if (hasParentTransition(this.$vnode)) {\n return rawChild\n }\n\n // apply transition data to child\n // use getRealChild() to ignore abstract components e.g. keep-alive\n var child = getRealChild(rawChild);\n /* istanbul ignore if */\n if (!child) {\n return rawChild\n }\n\n if (this._leaving) {\n return placeholder(h, rawChild)\n }\n\n // ensure a key that is unique to the vnode type and to this transition\n // component instance. This key will be used to remove pending leaving nodes\n // during entering.\n var id = \"__transition-\" + (this._uid) + \"-\";\n child.key = child.key == null\n ? child.isComment\n ? id + 'comment'\n : id + child.tag\n : isPrimitive(child.key)\n ? (String(child.key).indexOf(id) === 0 ? child.key : id + child.key)\n : child.key;\n\n var data = (child.data || (child.data = {})).transition = extractTransitionData(this);\n var oldRawChild = this._vnode;\n var oldChild = getRealChild(oldRawChild);\n\n // mark v-show\n // so that the transition module can hand over the control to the directive\n if (child.data.directives && child.data.directives.some(function (d) { return d.name === 'show'; })) {\n child.data.show = true;\n }\n\n if (\n oldChild &&\n oldChild.data &&\n !isSameChild(child, oldChild) &&\n !isAsyncPlaceholder(oldChild)\n ) {\n // replace old child transition data with fresh one\n // important for dynamic transitions!\n var oldData = oldChild.data.transition = extend({}, data);\n // handle transition mode\n if (mode === 'out-in') {\n // return placeholder node and queue update when leave finishes\n this._leaving = true;\n mergeVNodeHook(oldData, 'afterLeave', function () {\n this$1._leaving = false;\n this$1.$forceUpdate();\n });\n return placeholder(h, rawChild)\n } else if (mode === 'in-out') {\n if (isAsyncPlaceholder(child)) {\n return oldRawChild\n }\n var delayedLeave;\n var performLeave = function () { delayedLeave(); };\n mergeVNodeHook(data, 'afterEnter', performLeave);\n mergeVNodeHook(data, 'enterCancelled', performLeave);\n mergeVNodeHook(oldData, 'delayLeave', function (leave) { delayedLeave = leave; });\n }\n }\n\n return rawChild\n }\n};\n\n/* */\n\n// Provides transition support for list items.\n// supports move transitions using the FLIP technique.\n\n// Because the vdom's children update algorithm is \"unstable\" - i.e.\n// it doesn't guarantee the relative positioning of removed elements,\n// we force transition-group to update its children into two passes:\n// in the first pass, we remove all nodes that need to be removed,\n// triggering their leaving transition; in the second pass, we insert/move\n// into the final desired state. This way in the second pass removed\n// nodes will remain where they should be.\n\nvar props = extend({\n tag: String,\n moveClass: String\n}, transitionProps);\n\ndelete props.mode;\n\nvar TransitionGroup = {\n props: props,\n\n render: function render (h) {\n var tag = this.tag || this.$vnode.data.tag || 'span';\n var map = Object.create(null);\n var prevChildren = this.prevChildren = this.children;\n var rawChildren = this.$slots.default || [];\n var children = this.children = [];\n var transitionData = extractTransitionData(this);\n\n for (var i = 0; i < rawChildren.length; i++) {\n var c = rawChildren[i];\n if (c.tag) {\n if (c.key != null && String(c.key).indexOf('__vlist') !== 0) {\n children.push(c);\n map[c.key] = c\n ;(c.data || (c.data = {})).transition = transitionData;\n } else if (process.env.NODE_ENV !== 'production') {\n var opts = c.componentOptions;\n var name = opts ? (opts.Ctor.options.name || opts.tag || '') : c.tag;\n warn((\"<transition-group> children must be keyed: <\" + name + \">\"));\n }\n }\n }\n\n if (prevChildren) {\n var kept = [];\n var removed = [];\n for (var i$1 = 0; i$1 < prevChildren.length; i$1++) {\n var c$1 = prevChildren[i$1];\n c$1.data.transition = transitionData;\n c$1.data.pos = c$1.elm.getBoundingClientRect();\n if (map[c$1.key]) {\n kept.push(c$1);\n } else {\n removed.push(c$1);\n }\n }\n this.kept = h(tag, null, kept);\n this.removed = removed;\n }\n\n return h(tag, null, children)\n },\n\n beforeUpdate: function beforeUpdate () {\n // force removing pass\n this.__patch__(\n this._vnode,\n this.kept,\n false, // hydrating\n true // removeOnly (!important, avoids unnecessary moves)\n );\n this._vnode = this.kept;\n },\n\n updated: function updated () {\n var children = this.prevChildren;\n var moveClass = this.moveClass || ((this.name || 'v') + '-move');\n if (!children.length || !this.hasMove(children[0].elm, moveClass)) {\n return\n }\n\n // we divide the work into three loops to avoid mixing DOM reads and writes\n // in each iteration - which helps prevent layout thrashing.\n children.forEach(callPendingCbs);\n children.forEach(recordPosition);\n children.forEach(applyTranslation);\n\n // force reflow to put everything in position\n // assign to this to avoid being removed in tree-shaking\n // $flow-disable-line\n this._reflow = document.body.offsetHeight;\n\n children.forEach(function (c) {\n if (c.data.moved) {\n var el = c.elm;\n var s = el.style;\n addTransitionClass(el, moveClass);\n s.transform = s.WebkitTransform = s.transitionDuration = '';\n el.addEventListener(transitionEndEvent, el._moveCb = function cb (e) {\n if (!e || /transform$/.test(e.propertyName)) {\n el.removeEventListener(transitionEndEvent, cb);\n el._moveCb = null;\n removeTransitionClass(el, moveClass);\n }\n });\n }\n });\n },\n\n methods: {\n hasMove: function hasMove (el, moveClass) {\n /* istanbul ignore if */\n if (!hasTransition) {\n return false\n }\n /* istanbul ignore if */\n if (this._hasMove) {\n return this._hasMove\n }\n // Detect whether an element with the move class applied has\n // CSS transitions. Since the element may be inside an entering\n // transition at this very moment, we make a clone of it and remove\n // all other transition classes applied to ensure only the move class\n // is applied.\n var clone = el.cloneNode();\n if (el._transitionClasses) {\n el._transitionClasses.forEach(function (cls) { removeClass(clone, cls); });\n }\n addClass(clone, moveClass);\n clone.style.display = 'none';\n this.$el.appendChild(clone);\n var info = getTransitionInfo(clone);\n this.$el.removeChild(clone);\n return (this._hasMove = info.hasTransform)\n }\n }\n};\n\nfunction callPendingCbs (c) {\n /* istanbul ignore if */\n if (c.elm._moveCb) {\n c.elm._moveCb();\n }\n /* istanbul ignore if */\n if (c.elm._enterCb) {\n c.elm._enterCb();\n }\n}\n\nfunction recordPosition (c) {\n c.data.newPos = c.elm.getBoundingClientRect();\n}\n\nfunction applyTranslation (c) {\n var oldPos = c.data.pos;\n var newPos = c.data.newPos;\n var dx = oldPos.left - newPos.left;\n var dy = oldPos.top - newPos.top;\n if (dx || dy) {\n c.data.moved = true;\n var s = c.elm.style;\n s.transform = s.WebkitTransform = \"translate(\" + dx + \"px,\" + dy + \"px)\";\n s.transitionDuration = '0s';\n }\n}\n\nvar platformComponents = {\n Transition: Transition,\n TransitionGroup: TransitionGroup\n};\n\n/* */\n\n// install platform specific utils\nVue$3.config.mustUseProp = mustUseProp;\nVue$3.config.isReservedTag = isReservedTag;\nVue$3.config.isReservedAttr = isReservedAttr;\nVue$3.config.getTagNamespace = getTagNamespace;\nVue$3.config.isUnknownElement = isUnknownElement;\n\n// install platform runtime directives & components\nextend(Vue$3.options.directives, platformDirectives);\nextend(Vue$3.options.components, platformComponents);\n\n// install platform patch function\nVue$3.prototype.__patch__ = inBrowser ? patch : noop;\n\n// public mount method\nVue$3.prototype.$mount = function (\n el,\n hydrating\n) {\n el = el && inBrowser ? query(el) : undefined;\n return mountComponent(this, el, hydrating)\n};\n\n// devtools global hook\n/* istanbul ignore next */\nVue$3.nextTick(function () {\n if (config.devtools) {\n if (devtools) {\n devtools.emit('init', Vue$3);\n } else if (process.env.NODE_ENV !== 'production' && isChrome) {\n console[console.info ? 'info' : 'log'](\n 'Download the Vue Devtools extension for a better development experience:\\n' +\n 'https://github.com/vuejs/vue-devtools'\n );\n }\n }\n if (process.env.NODE_ENV !== 'production' &&\n config.productionTip !== false &&\n inBrowser && typeof console !== 'undefined'\n ) {\n console[console.info ? 'info' : 'log'](\n \"You are running Vue in development mode.\\n\" +\n \"Make sure to turn on production mode when deploying for production.\\n\" +\n \"See more tips at https://vuejs.org/guide/deployment.html\"\n );\n }\n}, 0);\n\n/* */\n\n// check whether current browser encodes a char inside attribute values\nfunction shouldDecode (content, encoded) {\n var div = document.createElement('div');\n div.innerHTML = \"<div a=\\\"\" + content + \"\\\"/>\";\n return div.innerHTML.indexOf(encoded) > 0\n}\n\n// #3663\n// IE encodes newlines inside attribute values while other browsers don't\nvar shouldDecodeNewlines = inBrowser ? shouldDecode('\\n', '&#10;') : false;\n\n/* */\n\nvar defaultTagRE = /\\{\\{((?:.|\\n)+?)\\}\\}/g;\nvar regexEscapeRE = /[-.*+?^${}()|[\\]\\/\\\\]/g;\n\nvar buildRegex = cached(function (delimiters) {\n var open = delimiters[0].replace(regexEscapeRE, '\\\\$&');\n var close = delimiters[1].replace(regexEscapeRE, '\\\\$&');\n return new RegExp(open + '((?:.|\\\\n)+?)' + close, 'g')\n});\n\nfunction parseText (\n text,\n delimiters\n) {\n var tagRE = delimiters ? buildRegex(delimiters) : defaultTagRE;\n if (!tagRE.test(text)) {\n return\n }\n var tokens = [];\n var lastIndex = tagRE.lastIndex = 0;\n var match, index;\n while ((match = tagRE.exec(text))) {\n index = match.index;\n // push text token\n if (index > lastIndex) {\n tokens.push(JSON.stringify(text.slice(lastIndex, index)));\n }\n // tag token\n var exp = parseFilters(match[1].trim());\n tokens.push((\"_s(\" + exp + \")\"));\n lastIndex = index + match[0].length;\n }\n if (lastIndex < text.length) {\n tokens.push(JSON.stringify(text.slice(lastIndex)));\n }\n return tokens.join('+')\n}\n\n/* */\n\nfunction transformNode (el, options) {\n var warn = options.warn || baseWarn;\n var staticClass = getAndRemoveAttr(el, 'class');\n if (process.env.NODE_ENV !== 'production' && staticClass) {\n var expression = parseText(staticClass, options.delimiters);\n if (expression) {\n warn(\n \"class=\\\"\" + staticClass + \"\\\": \" +\n 'Interpolation inside attributes has been removed. ' +\n 'Use v-bind or the colon shorthand instead. For example, ' +\n 'instead of <div class=\"{{ val }}\">, use <div :class=\"val\">.'\n );\n }\n }\n if (staticClass) {\n el.staticClass = JSON.stringify(staticClass);\n }\n var classBinding = getBindingAttr(el, 'class', false /* getStatic */);\n if (classBinding) {\n el.classBinding = classBinding;\n }\n}\n\nfunction genData (el) {\n var data = '';\n if (el.staticClass) {\n data += \"staticClass:\" + (el.staticClass) + \",\";\n }\n if (el.classBinding) {\n data += \"class:\" + (el.classBinding) + \",\";\n }\n return data\n}\n\nvar klass$1 = {\n staticKeys: ['staticClass'],\n transformNode: transformNode,\n genData: genData\n};\n\n/* */\n\nfunction transformNode$1 (el, options) {\n var warn = options.warn || baseWarn;\n var staticStyle = getAndRemoveAttr(el, 'style');\n if (staticStyle) {\n /* istanbul ignore if */\n if (process.env.NODE_ENV !== 'production') {\n var expression = parseText(staticStyle, options.delimiters);\n if (expression) {\n warn(\n \"style=\\\"\" + staticStyle + \"\\\": \" +\n 'Interpolation inside attributes has been removed. ' +\n 'Use v-bind or the colon shorthand instead. For example, ' +\n 'instead of <div style=\"{{ val }}\">, use <div :style=\"val\">.'\n );\n }\n }\n el.staticStyle = JSON.stringify(parseStyleText(staticStyle));\n }\n\n var styleBinding = getBindingAttr(el, 'style', false /* getStatic */);\n if (styleBinding) {\n el.styleBinding = styleBinding;\n }\n}\n\nfunction genData$1 (el) {\n var data = '';\n if (el.staticStyle) {\n data += \"staticStyle:\" + (el.staticStyle) + \",\";\n }\n if (el.styleBinding) {\n data += \"style:(\" + (el.styleBinding) + \"),\";\n }\n return data\n}\n\nvar style$1 = {\n staticKeys: ['staticStyle'],\n transformNode: transformNode$1,\n genData: genData$1\n};\n\n/* */\n\nvar decoder;\n\nvar he = {\n decode: function decode (html) {\n decoder = decoder || document.createElement('div');\n decoder.innerHTML = html;\n return decoder.textContent\n }\n};\n\n/* */\n\nvar isUnaryTag = makeMap(\n 'area,base,br,col,embed,frame,hr,img,input,isindex,keygen,' +\n 'link,meta,param,source,track,wbr'\n);\n\n// Elements that you can, intentionally, leave open\n// (and which close themselves)\nvar canBeLeftOpenTag = makeMap(\n 'colgroup,dd,dt,li,options,p,td,tfoot,th,thead,tr,source'\n);\n\n// HTML5 tags https://html.spec.whatwg.org/multipage/indices.html#elements-3\n// Phrasing Content https://html.spec.whatwg.org/multipage/dom.html#phrasing-content\nvar isNonPhrasingTag = makeMap(\n 'address,article,aside,base,blockquote,body,caption,col,colgroup,dd,' +\n 'details,dialog,div,dl,dt,fieldset,figcaption,figure,footer,form,' +\n 'h1,h2,h3,h4,h5,h6,head,header,hgroup,hr,html,legend,li,menuitem,meta,' +\n 'optgroup,option,param,rp,rt,source,style,summary,tbody,td,tfoot,th,thead,' +\n 'title,tr,track'\n);\n\n/**\n * Not type-checking this file because it's mostly vendor code.\n */\n\n/*!\n * HTML Parser By John Resig (ejohn.org)\n * Modified by Juriy \"kangax\" Zaytsev\n * Original code by Erik Arvidsson, Mozilla Public License\n * http://erik.eae.net/simplehtmlparser/simplehtmlparser.js\n */\n\n// Regular Expressions for parsing tags and attributes\nvar attribute = /^\\s*([^\\s\"'<>\\/=]+)(?:\\s*(=)\\s*(?:\"([^\"]*)\"+|'([^']*)'+|([^\\s\"'=<>`]+)))?/;\n// could use https://www.w3.org/TR/1999/REC-xml-names-19990114/#NT-QName\n// but for Vue templates we can enforce a simple charset\nvar ncname = '[a-zA-Z_][\\\\w\\\\-\\\\.]*';\nvar qnameCapture = \"((?:\" + ncname + \"\\\\:)?\" + ncname + \")\";\nvar startTagOpen = new RegExp((\"^<\" + qnameCapture));\nvar startTagClose = /^\\s*(\\/?)>/;\nvar endTag = new RegExp((\"^<\\\\/\" + qnameCapture + \"[^>]*>\"));\nvar doctype = /^<!DOCTYPE [^>]+>/i;\nvar comment = /^<!--/;\nvar conditionalComment = /^<!\\[/;\n\nvar IS_REGEX_CAPTURING_BROKEN = false;\n'x'.replace(/x(.)?/g, function (m, g) {\n IS_REGEX_CAPTURING_BROKEN = g === '';\n});\n\n// Special Elements (can contain anything)\nvar isPlainTextElement = makeMap('script,style,textarea', true);\nvar reCache = {};\n\nvar decodingMap = {\n '&lt;': '<',\n '&gt;': '>',\n '&quot;': '\"',\n '&amp;': '&',\n '&#10;': '\\n'\n};\nvar encodedAttr = /&(?:lt|gt|quot|amp);/g;\nvar encodedAttrWithNewLines = /&(?:lt|gt|quot|amp|#10);/g;\n\n// #5992\nvar isIgnoreNewlineTag = makeMap('pre,textarea', true);\nvar shouldIgnoreFirstNewline = function (tag, html) { return tag && isIgnoreNewlineTag(tag) && html[0] === '\\n'; };\n\nfunction decodeAttr (value, shouldDecodeNewlines) {\n var re = shouldDecodeNewlines ? encodedAttrWithNewLines : encodedAttr;\n return value.replace(re, function (match) { return decodingMap[match]; })\n}\n\nfunction parseHTML (html, options) {\n var stack = [];\n var expectHTML = options.expectHTML;\n var isUnaryTag$$1 = options.isUnaryTag || no;\n var canBeLeftOpenTag$$1 = options.canBeLeftOpenTag || no;\n var index = 0;\n var last, lastTag;\n while (html) {\n last = html;\n // Make sure we're not in a plaintext content element like script/style\n if (!lastTag || !isPlainTextElement(lastTag)) {\n var textEnd = html.indexOf('<');\n if (textEnd === 0) {\n // Comment:\n if (comment.test(html)) {\n var commentEnd = html.indexOf('-->');\n\n if (commentEnd >= 0) {\n if (options.shouldKeepComment) {\n options.comment(html.substring(4, commentEnd));\n }\n advance(commentEnd + 3);\n continue\n }\n }\n\n // http://en.wikipedia.org/wiki/Conditional_comment#Downlevel-revealed_conditional_comment\n if (conditionalComment.test(html)) {\n var conditionalEnd = html.indexOf(']>');\n\n if (conditionalEnd >= 0) {\n advance(conditionalEnd + 2);\n continue\n }\n }\n\n // Doctype:\n var doctypeMatch = html.match(doctype);\n if (doctypeMatch) {\n advance(doctypeMatch[0].length);\n continue\n }\n\n // End tag:\n var endTagMatch = html.match(endTag);\n if (endTagMatch) {\n var curIndex = index;\n advance(endTagMatch[0].length);\n parseEndTag(endTagMatch[1], curIndex, index);\n continue\n }\n\n // Start tag:\n var startTagMatch = parseStartTag();\n if (startTagMatch) {\n handleStartTag(startTagMatch);\n if (shouldIgnoreFirstNewline(lastTag, html)) {\n advance(1);\n }\n continue\n }\n }\n\n var text = (void 0), rest = (void 0), next = (void 0);\n if (textEnd >= 0) {\n rest = html.slice(textEnd);\n while (\n !endTag.test(rest) &&\n !startTagOpen.test(rest) &&\n !comment.test(rest) &&\n !conditionalComment.test(rest)\n ) {\n // < in plain text, be forgiving and treat it as text\n next = rest.indexOf('<', 1);\n if (next < 0) { break }\n textEnd += next;\n rest = html.slice(textEnd);\n }\n text = html.substring(0, textEnd);\n advance(textEnd);\n }\n\n if (textEnd < 0) {\n text = html;\n html = '';\n }\n\n if (options.chars && text) {\n options.chars(text);\n }\n } else {\n var endTagLength = 0;\n var stackedTag = lastTag.toLowerCase();\n var reStackedTag = reCache[stackedTag] || (reCache[stackedTag] = new RegExp('([\\\\s\\\\S]*?)(</' + stackedTag + '[^>]*>)', 'i'));\n var rest$1 = html.replace(reStackedTag, function (all, text, endTag) {\n endTagLength = endTag.length;\n if (!isPlainTextElement(stackedTag) && stackedTag !== 'noscript') {\n text = text\n .replace(/<!--([\\s\\S]*?)-->/g, '$1')\n .replace(/<!\\[CDATA\\[([\\s\\S]*?)]]>/g, '$1');\n }\n if (shouldIgnoreFirstNewline(stackedTag, text)) {\n text = text.slice(1);\n }\n if (options.chars) {\n options.chars(text);\n }\n return ''\n });\n index += html.length - rest$1.length;\n html = rest$1;\n parseEndTag(stackedTag, index - endTagLength, index);\n }\n\n if (html === last) {\n options.chars && options.chars(html);\n if (process.env.NODE_ENV !== 'production' && !stack.length && options.warn) {\n options.warn((\"Mal-formatted tag at end of template: \\\"\" + html + \"\\\"\"));\n }\n break\n }\n }\n\n // Clean up any remaining tags\n parseEndTag();\n\n function advance (n) {\n index += n;\n html = html.substring(n);\n }\n\n function parseStartTag () {\n var start = html.match(startTagOpen);\n if (start) {\n var match = {\n tagName: start[1],\n attrs: [],\n start: index\n };\n advance(start[0].length);\n var end, attr;\n while (!(end = html.match(startTagClose)) && (attr = html.match(attribute))) {\n advance(attr[0].length);\n match.attrs.push(attr);\n }\n if (end) {\n match.unarySlash = end[1];\n advance(end[0].length);\n match.end = index;\n return match\n }\n }\n }\n\n function handleStartTag (match) {\n var tagName = match.tagName;\n var unarySlash = match.unarySlash;\n\n if (expectHTML) {\n if (lastTag === 'p' && isNonPhrasingTag(tagName)) {\n parseEndTag(lastTag);\n }\n if (canBeLeftOpenTag$$1(tagName) && lastTag === tagName) {\n parseEndTag(tagName);\n }\n }\n\n var unary = isUnaryTag$$1(tagName) || !!unarySlash;\n\n var l = match.attrs.length;\n var attrs = new Array(l);\n for (var i = 0; i < l; i++) {\n var args = match.attrs[i];\n // hackish work around FF bug https://bugzilla.mozilla.org/show_bug.cgi?id=369778\n if (IS_REGEX_CAPTURING_BROKEN && args[0].indexOf('\"\"') === -1) {\n if (args[3] === '') { delete args[3]; }\n if (args[4] === '') { delete args[4]; }\n if (args[5] === '') { delete args[5]; }\n }\n var value = args[3] || args[4] || args[5] || '';\n attrs[i] = {\n name: args[1],\n value: decodeAttr(\n value,\n options.shouldDecodeNewlines\n )\n };\n }\n\n if (!unary) {\n stack.push({ tag: tagName, lowerCasedTag: tagName.toLowerCase(), attrs: attrs });\n lastTag = tagName;\n }\n\n if (options.start) {\n options.start(tagName, attrs, unary, match.start, match.end);\n }\n }\n\n function parseEndTag (tagName, start, end) {\n var pos, lowerCasedTagName;\n if (start == null) { start = index; }\n if (end == null) { end = index; }\n\n if (tagName) {\n lowerCasedTagName = tagName.toLowerCase();\n }\n\n // Find the closest opened tag of the same type\n if (tagName) {\n for (pos = stack.length - 1; pos >= 0; pos--) {\n if (stack[pos].lowerCasedTag === lowerCasedTagName) {\n break\n }\n }\n } else {\n // If no tag name is provided, clean shop\n pos = 0;\n }\n\n if (pos >= 0) {\n // Close all the open elements, up the stack\n for (var i = stack.length - 1; i >= pos; i--) {\n if (process.env.NODE_ENV !== 'production' &&\n (i > pos || !tagName) &&\n options.warn\n ) {\n options.warn(\n (\"tag <\" + (stack[i].tag) + \"> has no matching end tag.\")\n );\n }\n if (options.end) {\n options.end(stack[i].tag, start, end);\n }\n }\n\n // Remove the open elements from the stack\n stack.length = pos;\n lastTag = pos && stack[pos - 1].tag;\n } else if (lowerCasedTagName === 'br') {\n if (options.start) {\n options.start(tagName, [], true, start, end);\n }\n } else if (lowerCasedTagName === 'p') {\n if (options.start) {\n options.start(tagName, [], false, start, end);\n }\n if (options.end) {\n options.end(tagName, start, end);\n }\n }\n }\n}\n\n/* */\n\nvar onRE = /^@|^v-on:/;\nvar dirRE = /^v-|^@|^:/;\nvar forAliasRE = /(.*?)\\s+(?:in|of)\\s+(.*)/;\nvar forIteratorRE = /\\((\\{[^}]*\\}|[^,]*),([^,]*)(?:,([^,]*))?\\)/;\n\nvar argRE = /:(.*)$/;\nvar bindRE = /^:|^v-bind:/;\nvar modifierRE = /\\.[^.]+/g;\n\nvar decodeHTMLCached = cached(he.decode);\n\n// configurable state\nvar warn$2;\nvar delimiters;\nvar transforms;\nvar preTransforms;\nvar postTransforms;\nvar platformIsPreTag;\nvar platformMustUseProp;\nvar platformGetTagNamespace;\n\n\n\nfunction createASTElement (\n tag,\n attrs,\n parent\n) {\n return {\n type: 1,\n tag: tag,\n attrsList: attrs,\n attrsMap: makeAttrsMap(attrs),\n parent: parent,\n children: []\n }\n}\n\n/**\n * Convert HTML string to AST.\n */\nfunction parse (\n template,\n options\n) {\n warn$2 = options.warn || baseWarn;\n\n platformIsPreTag = options.isPreTag || no;\n platformMustUseProp = options.mustUseProp || no;\n platformGetTagNamespace = options.getTagNamespace || no;\n\n transforms = pluckModuleFunction(options.modules, 'transformNode');\n preTransforms = pluckModuleFunction(options.modules, 'preTransformNode');\n postTransforms = pluckModuleFunction(options.modules, 'postTransformNode');\n\n delimiters = options.delimiters;\n\n var stack = [];\n var preserveWhitespace = options.preserveWhitespace !== false;\n var root;\n var currentParent;\n var inVPre = false;\n var inPre = false;\n var warned = false;\n\n function warnOnce (msg) {\n if (!warned) {\n warned = true;\n warn$2(msg);\n }\n }\n\n function endPre (element) {\n // check pre state\n if (element.pre) {\n inVPre = false;\n }\n if (platformIsPreTag(element.tag)) {\n inPre = false;\n }\n }\n\n parseHTML(template, {\n warn: warn$2,\n expectHTML: options.expectHTML,\n isUnaryTag: options.isUnaryTag,\n canBeLeftOpenTag: options.canBeLeftOpenTag,\n shouldDecodeNewlines: options.shouldDecodeNewlines,\n shouldKeepComment: options.comments,\n start: function start (tag, attrs, unary) {\n // check namespace.\n // inherit parent ns if there is one\n var ns = (currentParent && currentParent.ns) || platformGetTagNamespace(tag);\n\n // handle IE svg bug\n /* istanbul ignore if */\n if (isIE && ns === 'svg') {\n attrs = guardIESVGBug(attrs);\n }\n\n var element = createASTElement(tag, attrs, currentParent);\n if (ns) {\n element.ns = ns;\n }\n\n if (isForbiddenTag(element) && !isServerRendering()) {\n element.forbidden = true;\n process.env.NODE_ENV !== 'production' && warn$2(\n 'Templates should only be responsible for mapping the state to the ' +\n 'UI. Avoid placing tags with side-effects in your templates, such as ' +\n \"<\" + tag + \">\" + ', as they will not be parsed.'\n );\n }\n\n // apply pre-transforms\n for (var i = 0; i < preTransforms.length; i++) {\n element = preTransforms[i](element, options) || element;\n }\n\n if (!inVPre) {\n processPre(element);\n if (element.pre) {\n inVPre = true;\n }\n }\n if (platformIsPreTag(element.tag)) {\n inPre = true;\n }\n if (inVPre) {\n processRawAttrs(element);\n } else if (!element.processed) {\n // structural directives\n processFor(element);\n processIf(element);\n processOnce(element);\n // element-scope stuff\n processElement(element, options);\n }\n\n function checkRootConstraints (el) {\n if (process.env.NODE_ENV !== 'production') {\n if (el.tag === 'slot' || el.tag === 'template') {\n warnOnce(\n \"Cannot use <\" + (el.tag) + \"> as component root element because it may \" +\n 'contain multiple nodes.'\n );\n }\n if (el.attrsMap.hasOwnProperty('v-for')) {\n warnOnce(\n 'Cannot use v-for on stateful component root element because ' +\n 'it renders multiple elements.'\n );\n }\n }\n }\n\n // tree management\n if (!root) {\n root = element;\n checkRootConstraints(root);\n } else if (!stack.length) {\n // allow root elements with v-if, v-else-if and v-else\n if (root.if && (element.elseif || element.else)) {\n checkRootConstraints(element);\n addIfCondition(root, {\n exp: element.elseif,\n block: element\n });\n } else if (process.env.NODE_ENV !== 'production') {\n warnOnce(\n \"Component template should contain exactly one root element. \" +\n \"If you are using v-if on multiple elements, \" +\n \"use v-else-if to chain them instead.\"\n );\n }\n }\n if (currentParent && !element.forbidden) {\n if (element.elseif || element.else) {\n processIfConditions(element, currentParent);\n } else if (element.slotScope) { // scoped slot\n currentParent.plain = false;\n var name = element.slotTarget || '\"default\"';(currentParent.scopedSlots || (currentParent.scopedSlots = {}))[name] = element;\n } else {\n currentParent.children.push(element);\n element.parent = currentParent;\n }\n }\n if (!unary) {\n currentParent = element;\n stack.push(element);\n } else {\n endPre(element);\n }\n // apply post-transforms\n for (var i$1 = 0; i$1 < postTransforms.length; i$1++) {\n postTransforms[i$1](element, options);\n }\n },\n\n end: function end () {\n // remove trailing whitespace\n var element = stack[stack.length - 1];\n var lastNode = element.children[element.children.length - 1];\n if (lastNode && lastNode.type === 3 && lastNode.text === ' ' && !inPre) {\n element.children.pop();\n }\n // pop stack\n stack.length -= 1;\n currentParent = stack[stack.length - 1];\n endPre(element);\n },\n\n chars: function chars (text) {\n if (!currentParent) {\n if (process.env.NODE_ENV !== 'production') {\n if (text === template) {\n warnOnce(\n 'Component template requires a root element, rather than just text.'\n );\n } else if ((text = text.trim())) {\n warnOnce(\n (\"text \\\"\" + text + \"\\\" outside root element will be ignored.\")\n );\n }\n }\n return\n }\n // IE textarea placeholder bug\n /* istanbul ignore if */\n if (isIE &&\n currentParent.tag === 'textarea' &&\n currentParent.attrsMap.placeholder === text\n ) {\n return\n }\n var children = currentParent.children;\n text = inPre || text.trim()\n ? isTextTag(currentParent) ? text : decodeHTMLCached(text)\n // only preserve whitespace if its not right after a starting tag\n : preserveWhitespace && children.length ? ' ' : '';\n if (text) {\n var expression;\n if (!inVPre && text !== ' ' && (expression = parseText(text, delimiters))) {\n children.push({\n type: 2,\n expression: expression,\n text: text\n });\n } else if (text !== ' ' || !children.length || children[children.length - 1].text !== ' ') {\n children.push({\n type: 3,\n text: text\n });\n }\n }\n },\n comment: function comment (text) {\n currentParent.children.push({\n type: 3,\n text: text,\n isComment: true\n });\n }\n });\n return root\n}\n\nfunction processPre (el) {\n if (getAndRemoveAttr(el, 'v-pre') != null) {\n el.pre = true;\n }\n}\n\nfunction processRawAttrs (el) {\n var l = el.attrsList.length;\n if (l) {\n var attrs = el.attrs = new Array(l);\n for (var i = 0; i < l; i++) {\n attrs[i] = {\n name: el.attrsList[i].name,\n value: JSON.stringify(el.attrsList[i].value)\n };\n }\n } else if (!el.pre) {\n // non root node in pre blocks with no attributes\n el.plain = true;\n }\n}\n\nfunction processElement (element, options) {\n processKey(element);\n\n // determine whether this is a plain element after\n // removing structural attributes\n element.plain = !element.key && !element.attrsList.length;\n\n processRef(element);\n processSlot(element);\n processComponent(element);\n for (var i = 0; i < transforms.length; i++) {\n element = transforms[i](element, options) || element;\n }\n processAttrs(element);\n}\n\nfunction processKey (el) {\n var exp = getBindingAttr(el, 'key');\n if (exp) {\n if (process.env.NODE_ENV !== 'production' && el.tag === 'template') {\n warn$2(\"<template> cannot be keyed. Place the key on real elements instead.\");\n }\n el.key = exp;\n }\n}\n\nfunction processRef (el) {\n var ref = getBindingAttr(el, 'ref');\n if (ref) {\n el.ref = ref;\n el.refInFor = checkInFor(el);\n }\n}\n\nfunction processFor (el) {\n var exp;\n if ((exp = getAndRemoveAttr(el, 'v-for'))) {\n var inMatch = exp.match(forAliasRE);\n if (!inMatch) {\n process.env.NODE_ENV !== 'production' && warn$2(\n (\"Invalid v-for expression: \" + exp)\n );\n return\n }\n el.for = inMatch[2].trim();\n var alias = inMatch[1].trim();\n var iteratorMatch = alias.match(forIteratorRE);\n if (iteratorMatch) {\n el.alias = iteratorMatch[1].trim();\n el.iterator1 = iteratorMatch[2].trim();\n if (iteratorMatch[3]) {\n el.iterator2 = iteratorMatch[3].trim();\n }\n } else {\n el.alias = alias;\n }\n }\n}\n\nfunction processIf (el) {\n var exp = getAndRemoveAttr(el, 'v-if');\n if (exp) {\n el.if = exp;\n addIfCondition(el, {\n exp: exp,\n block: el\n });\n } else {\n if (getAndRemoveAttr(el, 'v-else') != null) {\n el.else = true;\n }\n var elseif = getAndRemoveAttr(el, 'v-else-if');\n if (elseif) {\n el.elseif = elseif;\n }\n }\n}\n\nfunction processIfConditions (el, parent) {\n var prev = findPrevElement(parent.children);\n if (prev && prev.if) {\n addIfCondition(prev, {\n exp: el.elseif,\n block: el\n });\n } else if (process.env.NODE_ENV !== 'production') {\n warn$2(\n \"v-\" + (el.elseif ? ('else-if=\"' + el.elseif + '\"') : 'else') + \" \" +\n \"used on element <\" + (el.tag) + \"> without corresponding v-if.\"\n );\n }\n}\n\nfunction findPrevElement (children) {\n var i = children.length;\n while (i--) {\n if (children[i].type === 1) {\n return children[i]\n } else {\n if (process.env.NODE_ENV !== 'production' && children[i].text !== ' ') {\n warn$2(\n \"text \\\"\" + (children[i].text.trim()) + \"\\\" between v-if and v-else(-if) \" +\n \"will be ignored.\"\n );\n }\n children.pop();\n }\n }\n}\n\nfunction addIfCondition (el, condition) {\n if (!el.ifConditions) {\n el.ifConditions = [];\n }\n el.ifConditions.push(condition);\n}\n\nfunction processOnce (el) {\n var once$$1 = getAndRemoveAttr(el, 'v-once');\n if (once$$1 != null) {\n el.once = true;\n }\n}\n\nfunction processSlot (el) {\n if (el.tag === 'slot') {\n el.slotName = getBindingAttr(el, 'name');\n if (process.env.NODE_ENV !== 'production' && el.key) {\n warn$2(\n \"`key` does not work on <slot> because slots are abstract outlets \" +\n \"and can possibly expand into multiple elements. \" +\n \"Use the key on a wrapping element instead.\"\n );\n }\n } else {\n var slotScope;\n if (el.tag === 'template') {\n slotScope = getAndRemoveAttr(el, 'scope');\n /* istanbul ignore if */\n if (process.env.NODE_ENV !== 'production' && slotScope) {\n warn$2(\n \"the \\\"scope\\\" attribute for scoped slots have been deprecated and \" +\n \"replaced by \\\"slot-scope\\\" since 2.5. The new \\\"slot-scope\\\" attribute \" +\n \"can also be used on plain elements in addition to <template> to \" +\n \"denote scoped slots.\",\n true\n );\n }\n el.slotScope = slotScope || getAndRemoveAttr(el, 'slot-scope');\n } else if ((slotScope = getAndRemoveAttr(el, 'slot-scope'))) {\n el.slotScope = slotScope;\n }\n var slotTarget = getBindingAttr(el, 'slot');\n if (slotTarget) {\n el.slotTarget = slotTarget === '\"\"' ? '\"default\"' : slotTarget;\n // preserve slot as an attribute for native shadow DOM compat\n // only for non-scoped slots.\n if (!el.slotScope) {\n addAttr(el, 'slot', slotTarget);\n }\n }\n }\n}\n\nfunction processComponent (el) {\n var binding;\n if ((binding = getBindingAttr(el, 'is'))) {\n el.component = binding;\n }\n if (getAndRemoveAttr(el, 'inline-template') != null) {\n el.inlineTemplate = true;\n }\n}\n\nfunction processAttrs (el) {\n var list = el.attrsList;\n var i, l, name, rawName, value, modifiers, isProp;\n for (i = 0, l = list.length; i < l; i++) {\n name = rawName = list[i].name;\n value = list[i].value;\n if (dirRE.test(name)) {\n // mark element as dynamic\n el.hasBindings = true;\n // modifiers\n modifiers = parseModifiers(name);\n if (modifiers) {\n name = name.replace(modifierRE, '');\n }\n if (bindRE.test(name)) { // v-bind\n name = name.replace(bindRE, '');\n value = parseFilters(value);\n isProp = false;\n if (modifiers) {\n if (modifiers.prop) {\n isProp = true;\n name = camelize(name);\n if (name === 'innerHtml') { name = 'innerHTML'; }\n }\n if (modifiers.camel) {\n name = camelize(name);\n }\n if (modifiers.sync) {\n addHandler(\n el,\n (\"update:\" + (camelize(name))),\n genAssignmentCode(value, \"$event\")\n );\n }\n }\n if (isProp || (\n !el.component && platformMustUseProp(el.tag, el.attrsMap.type, name)\n )) {\n addProp(el, name, value);\n } else {\n addAttr(el, name, value);\n }\n } else if (onRE.test(name)) { // v-on\n name = name.replace(onRE, '');\n addHandler(el, name, value, modifiers, false, warn$2);\n } else { // normal directives\n name = name.replace(dirRE, '');\n // parse arg\n var argMatch = name.match(argRE);\n var arg = argMatch && argMatch[1];\n if (arg) {\n name = name.slice(0, -(arg.length + 1));\n }\n addDirective(el, name, rawName, value, arg, modifiers);\n if (process.env.NODE_ENV !== 'production' && name === 'model') {\n checkForAliasModel(el, value);\n }\n }\n } else {\n // literal attribute\n if (process.env.NODE_ENV !== 'production') {\n var expression = parseText(value, delimiters);\n if (expression) {\n warn$2(\n name + \"=\\\"\" + value + \"\\\": \" +\n 'Interpolation inside attributes has been removed. ' +\n 'Use v-bind or the colon shorthand instead. For example, ' +\n 'instead of <div id=\"{{ val }}\">, use <div :id=\"val\">.'\n );\n }\n }\n addAttr(el, name, JSON.stringify(value));\n }\n }\n}\n\nfunction checkInFor (el) {\n var parent = el;\n while (parent) {\n if (parent.for !== undefined) {\n return true\n }\n parent = parent.parent;\n }\n return false\n}\n\nfunction parseModifiers (name) {\n var match = name.match(modifierRE);\n if (match) {\n var ret = {};\n match.forEach(function (m) { ret[m.slice(1)] = true; });\n return ret\n }\n}\n\nfunction makeAttrsMap (attrs) {\n var map = {};\n for (var i = 0, l = attrs.length; i < l; i++) {\n if (\n process.env.NODE_ENV !== 'production' &&\n map[attrs[i].name] && !isIE && !isEdge\n ) {\n warn$2('duplicate attribute: ' + attrs[i].name);\n }\n map[attrs[i].name] = attrs[i].value;\n }\n return map\n}\n\n// for script (e.g. type=\"x/template\") or style, do not decode content\nfunction isTextTag (el) {\n return el.tag === 'script' || el.tag === 'style'\n}\n\nfunction isForbiddenTag (el) {\n return (\n el.tag === 'style' ||\n (el.tag === 'script' && (\n !el.attrsMap.type ||\n el.attrsMap.type === 'text/javascript'\n ))\n )\n}\n\nvar ieNSBug = /^xmlns:NS\\d+/;\nvar ieNSPrefix = /^NS\\d+:/;\n\n/* istanbul ignore next */\nfunction guardIESVGBug (attrs) {\n var res = [];\n for (var i = 0; i < attrs.length; i++) {\n var attr = attrs[i];\n if (!ieNSBug.test(attr.name)) {\n attr.name = attr.name.replace(ieNSPrefix, '');\n res.push(attr);\n }\n }\n return res\n}\n\nfunction checkForAliasModel (el, value) {\n var _el = el;\n while (_el) {\n if (_el.for && _el.alias === value) {\n warn$2(\n \"<\" + (el.tag) + \" v-model=\\\"\" + value + \"\\\">: \" +\n \"You are binding v-model directly to a v-for iteration alias. \" +\n \"This will not be able to modify the v-for source array because \" +\n \"writing to the alias is like modifying a function local variable. \" +\n \"Consider using an array of objects and use v-model on an object property instead.\"\n );\n }\n _el = _el.parent;\n }\n}\n\n/* */\n\n/**\n * Expand input[v-model] with dyanmic type bindings into v-if-else chains\n * Turn this:\n * <input v-model=\"data[type]\" :type=\"type\">\n * into this:\n * <input v-if=\"type === 'checkbox'\" type=\"checkbox\" v-model=\"data[type]\">\n * <input v-else-if=\"type === 'radio'\" type=\"radio\" v-model=\"data[type]\">\n * <input v-else :type=\"type\" v-model=\"data[type]\">\n */\n\nfunction preTransformNode (el, options) {\n if (el.tag === 'input') {\n var map = el.attrsMap;\n if (map['v-model'] && (map['v-bind:type'] || map[':type'])) {\n var typeBinding = getBindingAttr(el, 'type');\n var ifCondition = getAndRemoveAttr(el, 'v-if', true);\n var ifConditionExtra = ifCondition ? (\"&&(\" + ifCondition + \")\") : \"\";\n // 1. checkbox\n var branch0 = cloneASTElement(el);\n // process for on the main node\n processFor(branch0);\n addRawAttr(branch0, 'type', 'checkbox');\n processElement(branch0, options);\n branch0.processed = true; // prevent it from double-processed\n branch0.if = \"(\" + typeBinding + \")==='checkbox'\" + ifConditionExtra;\n addIfCondition(branch0, {\n exp: branch0.if,\n block: branch0\n });\n // 2. add radio else-if condition\n var branch1 = cloneASTElement(el);\n getAndRemoveAttr(branch1, 'v-for', true);\n addRawAttr(branch1, 'type', 'radio');\n processElement(branch1, options);\n addIfCondition(branch0, {\n exp: \"(\" + typeBinding + \")==='radio'\" + ifConditionExtra,\n block: branch1\n });\n // 3. other\n var branch2 = cloneASTElement(el);\n getAndRemoveAttr(branch2, 'v-for', true);\n addRawAttr(branch2, ':type', typeBinding);\n processElement(branch2, options);\n addIfCondition(branch0, {\n exp: ifCondition,\n block: branch2\n });\n return branch0\n }\n }\n}\n\nfunction cloneASTElement (el) {\n return createASTElement(el.tag, el.attrsList.slice(), el.parent)\n}\n\nfunction addRawAttr (el, name, value) {\n el.attrsMap[name] = value;\n el.attrsList.push({ name: name, value: value });\n}\n\nvar model$2 = {\n preTransformNode: preTransformNode\n};\n\nvar modules$1 = [\n klass$1,\n style$1,\n model$2\n];\n\n/* */\n\nfunction text (el, dir) {\n if (dir.value) {\n addProp(el, 'textContent', (\"_s(\" + (dir.value) + \")\"));\n }\n}\n\n/* */\n\nfunction html (el, dir) {\n if (dir.value) {\n addProp(el, 'innerHTML', (\"_s(\" + (dir.value) + \")\"));\n }\n}\n\nvar directives$1 = {\n model: model,\n text: text,\n html: html\n};\n\n/* */\n\nvar baseOptions = {\n expectHTML: true,\n modules: modules$1,\n directives: directives$1,\n isPreTag: isPreTag,\n isUnaryTag: isUnaryTag,\n mustUseProp: mustUseProp,\n canBeLeftOpenTag: canBeLeftOpenTag,\n isReservedTag: isReservedTag,\n getTagNamespace: getTagNamespace,\n staticKeys: genStaticKeys(modules$1)\n};\n\n/* */\n\nvar isStaticKey;\nvar isPlatformReservedTag;\n\nvar genStaticKeysCached = cached(genStaticKeys$1);\n\n/**\n * Goal of the optimizer: walk the generated template AST tree\n * and detect sub-trees that are purely static, i.e. parts of\n * the DOM that never needs to change.\n *\n * Once we detect these sub-trees, we can:\n *\n * 1. Hoist them into constants, so that we no longer need to\n * create fresh nodes for them on each re-render;\n * 2. Completely skip them in the patching process.\n */\nfunction optimize (root, options) {\n if (!root) { return }\n isStaticKey = genStaticKeysCached(options.staticKeys || '');\n isPlatformReservedTag = options.isReservedTag || no;\n // first pass: mark all non-static nodes.\n markStatic$1(root);\n // second pass: mark static roots.\n markStaticRoots(root, false);\n}\n\nfunction genStaticKeys$1 (keys) {\n return makeMap(\n 'type,tag,attrsList,attrsMap,plain,parent,children,attrs' +\n (keys ? ',' + keys : '')\n )\n}\n\nfunction markStatic$1 (node) {\n node.static = isStatic(node);\n if (node.type === 1) {\n // do not make component slot content static. this avoids\n // 1. components not able to mutate slot nodes\n // 2. static slot content fails for hot-reloading\n if (\n !isPlatformReservedTag(node.tag) &&\n node.tag !== 'slot' &&\n node.attrsMap['inline-template'] == null\n ) {\n return\n }\n for (var i = 0, l = node.children.length; i < l; i++) {\n var child = node.children[i];\n markStatic$1(child);\n if (!child.static) {\n node.static = false;\n }\n }\n if (node.ifConditions) {\n for (var i$1 = 1, l$1 = node.ifConditions.length; i$1 < l$1; i$1++) {\n var block = node.ifConditions[i$1].block;\n markStatic$1(block);\n if (!block.static) {\n node.static = false;\n }\n }\n }\n }\n}\n\nfunction markStaticRoots (node, isInFor) {\n if (node.type === 1) {\n if (node.static || node.once) {\n node.staticInFor = isInFor;\n }\n // For a node to qualify as a static root, it should have children that\n // are not just static text. Otherwise the cost of hoisting out will\n // outweigh the benefits and it's better off to just always render it fresh.\n if (node.static && node.children.length && !(\n node.children.length === 1 &&\n node.children[0].type === 3\n )) {\n node.staticRoot = true;\n return\n } else {\n node.staticRoot = false;\n }\n if (node.children) {\n for (var i = 0, l = node.children.length; i < l; i++) {\n markStaticRoots(node.children[i], isInFor || !!node.for);\n }\n }\n if (node.ifConditions) {\n for (var i$1 = 1, l$1 = node.ifConditions.length; i$1 < l$1; i$1++) {\n markStaticRoots(node.ifConditions[i$1].block, isInFor);\n }\n }\n }\n}\n\nfunction isStatic (node) {\n if (node.type === 2) { // expression\n return false\n }\n if (node.type === 3) { // text\n return true\n }\n return !!(node.pre || (\n !node.hasBindings && // no dynamic bindings\n !node.if && !node.for && // not v-if or v-for or v-else\n !isBuiltInTag(node.tag) && // not a built-in\n isPlatformReservedTag(node.tag) && // not a component\n !isDirectChildOfTemplateFor(node) &&\n Object.keys(node).every(isStaticKey)\n ))\n}\n\nfunction isDirectChildOfTemplateFor (node) {\n while (node.parent) {\n node = node.parent;\n if (node.tag !== 'template') {\n return false\n }\n if (node.for) {\n return true\n }\n }\n return false\n}\n\n/* */\n\nvar fnExpRE = /^\\s*([\\w$_]+|\\([^)]*?\\))\\s*=>|^function\\s*\\(/;\nvar simplePathRE = /^\\s*[A-Za-z_$][\\w$]*(?:\\.[A-Za-z_$][\\w$]*|\\['.*?']|\\[\".*?\"]|\\[\\d+]|\\[[A-Za-z_$][\\w$]*])*\\s*$/;\n\n// keyCode aliases\nvar keyCodes = {\n esc: 27,\n tab: 9,\n enter: 13,\n space: 32,\n up: 38,\n left: 37,\n right: 39,\n down: 40,\n 'delete': [8, 46]\n};\n\n// #4868: modifiers that prevent the execution of the listener\n// need to explicitly return null so that we can determine whether to remove\n// the listener for .once\nvar genGuard = function (condition) { return (\"if(\" + condition + \")return null;\"); };\n\nvar modifierCode = {\n stop: '$event.stopPropagation();',\n prevent: '$event.preventDefault();',\n self: genGuard(\"$event.target !== $event.currentTarget\"),\n ctrl: genGuard(\"!$event.ctrlKey\"),\n shift: genGuard(\"!$event.shiftKey\"),\n alt: genGuard(\"!$event.altKey\"),\n meta: genGuard(\"!$event.metaKey\"),\n left: genGuard(\"'button' in $event && $event.button !== 0\"),\n middle: genGuard(\"'button' in $event && $event.button !== 1\"),\n right: genGuard(\"'button' in $event && $event.button !== 2\")\n};\n\nfunction genHandlers (\n events,\n isNative,\n warn\n) {\n var res = isNative ? 'nativeOn:{' : 'on:{';\n for (var name in events) {\n var handler = events[name];\n // #5330: warn click.right, since right clicks do not actually fire click events.\n if (process.env.NODE_ENV !== 'production' &&\n name === 'click' &&\n handler && handler.modifiers && handler.modifiers.right\n ) {\n warn(\n \"Use \\\"contextmenu\\\" instead of \\\"click.right\\\" since right clicks \" +\n \"do not actually fire \\\"click\\\" events.\"\n );\n }\n res += \"\\\"\" + name + \"\\\":\" + (genHandler(name, handler)) + \",\";\n }\n return res.slice(0, -1) + '}'\n}\n\nfunction genHandler (\n name,\n handler\n) {\n if (!handler) {\n return 'function(){}'\n }\n\n if (Array.isArray(handler)) {\n return (\"[\" + (handler.map(function (handler) { return genHandler(name, handler); }).join(',')) + \"]\")\n }\n\n var isMethodPath = simplePathRE.test(handler.value);\n var isFunctionExpression = fnExpRE.test(handler.value);\n\n if (!handler.modifiers) {\n return isMethodPath || isFunctionExpression\n ? handler.value\n : (\"function($event){\" + (handler.value) + \"}\") // inline statement\n } else {\n var code = '';\n var genModifierCode = '';\n var keys = [];\n for (var key in handler.modifiers) {\n if (modifierCode[key]) {\n genModifierCode += modifierCode[key];\n // left/right\n if (keyCodes[key]) {\n keys.push(key);\n }\n } else if (key === 'exact') {\n var modifiers = (handler.modifiers);\n genModifierCode += genGuard(\n ['ctrl', 'shift', 'alt', 'meta']\n .filter(function (keyModifier) { return !modifiers[keyModifier]; })\n .map(function (keyModifier) { return (\"$event.\" + keyModifier + \"Key\"); })\n .join('||')\n );\n } else {\n keys.push(key);\n }\n }\n if (keys.length) {\n code += genKeyFilter(keys);\n }\n // Make sure modifiers like prevent and stop get executed after key filtering\n if (genModifierCode) {\n code += genModifierCode;\n }\n var handlerCode = isMethodPath\n ? handler.value + '($event)'\n : isFunctionExpression\n ? (\"(\" + (handler.value) + \")($event)\")\n : handler.value;\n return (\"function($event){\" + code + handlerCode + \"}\")\n }\n}\n\nfunction genKeyFilter (keys) {\n return (\"if(!('button' in $event)&&\" + (keys.map(genFilterCode).join('&&')) + \")return null;\")\n}\n\nfunction genFilterCode (key) {\n var keyVal = parseInt(key, 10);\n if (keyVal) {\n return (\"$event.keyCode!==\" + keyVal)\n }\n var code = keyCodes[key];\n return (\n \"_k($event.keyCode,\" +\n (JSON.stringify(key)) + \",\" +\n (JSON.stringify(code)) + \",\" +\n \"$event.key)\"\n )\n}\n\n/* */\n\nfunction on (el, dir) {\n if (process.env.NODE_ENV !== 'production' && dir.modifiers) {\n warn(\"v-on without argument does not support modifiers.\");\n }\n el.wrapListeners = function (code) { return (\"_g(\" + code + \",\" + (dir.value) + \")\"); };\n}\n\n/* */\n\nfunction bind$1 (el, dir) {\n el.wrapData = function (code) {\n return (\"_b(\" + code + \",'\" + (el.tag) + \"',\" + (dir.value) + \",\" + (dir.modifiers && dir.modifiers.prop ? 'true' : 'false') + (dir.modifiers && dir.modifiers.sync ? ',true' : '') + \")\")\n };\n}\n\n/* */\n\nvar baseDirectives = {\n on: on,\n bind: bind$1,\n cloak: noop\n};\n\n/* */\n\nvar CodegenState = function CodegenState (options) {\n this.options = options;\n this.warn = options.warn || baseWarn;\n this.transforms = pluckModuleFunction(options.modules, 'transformCode');\n this.dataGenFns = pluckModuleFunction(options.modules, 'genData');\n this.directives = extend(extend({}, baseDirectives), options.directives);\n var isReservedTag = options.isReservedTag || no;\n this.maybeComponent = function (el) { return !isReservedTag(el.tag); };\n this.onceId = 0;\n this.staticRenderFns = [];\n};\n\n\n\nfunction generate (\n ast,\n options\n) {\n var state = new CodegenState(options);\n var code = ast ? genElement(ast, state) : '_c(\"div\")';\n return {\n render: (\"with(this){return \" + code + \"}\"),\n staticRenderFns: state.staticRenderFns\n }\n}\n\nfunction genElement (el, state) {\n if (el.staticRoot && !el.staticProcessed) {\n return genStatic(el, state)\n } else if (el.once && !el.onceProcessed) {\n return genOnce(el, state)\n } else if (el.for && !el.forProcessed) {\n return genFor(el, state)\n } else if (el.if && !el.ifProcessed) {\n return genIf(el, state)\n } else if (el.tag === 'template' && !el.slotTarget) {\n return genChildren(el, state) || 'void 0'\n } else if (el.tag === 'slot') {\n return genSlot(el, state)\n } else {\n // component or element\n var code;\n if (el.component) {\n code = genComponent(el.component, el, state);\n } else {\n var data = el.plain ? undefined : genData$2(el, state);\n\n var children = el.inlineTemplate ? null : genChildren(el, state, true);\n code = \"_c('\" + (el.tag) + \"'\" + (data ? (\",\" + data) : '') + (children ? (\",\" + children) : '') + \")\";\n }\n // module transforms\n for (var i = 0; i < state.transforms.length; i++) {\n code = state.transforms[i](el, code);\n }\n return code\n }\n}\n\n// hoist static sub-trees out\nfunction genStatic (el, state) {\n el.staticProcessed = true;\n state.staticRenderFns.push((\"with(this){return \" + (genElement(el, state)) + \"}\"));\n return (\"_m(\" + (state.staticRenderFns.length - 1) + (el.staticInFor ? ',true' : '') + \")\")\n}\n\n// v-once\nfunction genOnce (el, state) {\n el.onceProcessed = true;\n if (el.if && !el.ifProcessed) {\n return genIf(el, state)\n } else if (el.staticInFor) {\n var key = '';\n var parent = el.parent;\n while (parent) {\n if (parent.for) {\n key = parent.key;\n break\n }\n parent = parent.parent;\n }\n if (!key) {\n process.env.NODE_ENV !== 'production' && state.warn(\n \"v-once can only be used inside v-for that is keyed. \"\n );\n return genElement(el, state)\n }\n return (\"_o(\" + (genElement(el, state)) + \",\" + (state.onceId++) + \",\" + key + \")\")\n } else {\n return genStatic(el, state)\n }\n}\n\nfunction genIf (\n el,\n state,\n altGen,\n altEmpty\n) {\n el.ifProcessed = true; // avoid recursion\n return genIfConditions(el.ifConditions.slice(), state, altGen, altEmpty)\n}\n\nfunction genIfConditions (\n conditions,\n state,\n altGen,\n altEmpty\n) {\n if (!conditions.length) {\n return altEmpty || '_e()'\n }\n\n var condition = conditions.shift();\n if (condition.exp) {\n return (\"(\" + (condition.exp) + \")?\" + (genTernaryExp(condition.block)) + \":\" + (genIfConditions(conditions, state, altGen, altEmpty)))\n } else {\n return (\"\" + (genTernaryExp(condition.block)))\n }\n\n // v-if with v-once should generate code like (a)?_m(0):_m(1)\n function genTernaryExp (el) {\n return altGen\n ? altGen(el, state)\n : el.once\n ? genOnce(el, state)\n : genElement(el, state)\n }\n}\n\nfunction genFor (\n el,\n state,\n altGen,\n altHelper\n) {\n var exp = el.for;\n var alias = el.alias;\n var iterator1 = el.iterator1 ? (\",\" + (el.iterator1)) : '';\n var iterator2 = el.iterator2 ? (\",\" + (el.iterator2)) : '';\n\n if (process.env.NODE_ENV !== 'production' &&\n state.maybeComponent(el) &&\n el.tag !== 'slot' &&\n el.tag !== 'template' &&\n !el.key\n ) {\n state.warn(\n \"<\" + (el.tag) + \" v-for=\\\"\" + alias + \" in \" + exp + \"\\\">: component lists rendered with \" +\n \"v-for should have explicit keys. \" +\n \"See https://vuejs.org/guide/list.html#key for more info.\",\n true /* tip */\n );\n }\n\n el.forProcessed = true; // avoid recursion\n return (altHelper || '_l') + \"((\" + exp + \"),\" +\n \"function(\" + alias + iterator1 + iterator2 + \"){\" +\n \"return \" + ((altGen || genElement)(el, state)) +\n '})'\n}\n\nfunction genData$2 (el, state) {\n var data = '{';\n\n // directives first.\n // directives may mutate the el's other properties before they are generated.\n var dirs = genDirectives(el, state);\n if (dirs) { data += dirs + ','; }\n\n // key\n if (el.key) {\n data += \"key:\" + (el.key) + \",\";\n }\n // ref\n if (el.ref) {\n data += \"ref:\" + (el.ref) + \",\";\n }\n if (el.refInFor) {\n data += \"refInFor:true,\";\n }\n // pre\n if (el.pre) {\n data += \"pre:true,\";\n }\n // record original tag name for components using \"is\" attribute\n if (el.component) {\n data += \"tag:\\\"\" + (el.tag) + \"\\\",\";\n }\n // module data generation functions\n for (var i = 0; i < state.dataGenFns.length; i++) {\n data += state.dataGenFns[i](el);\n }\n // attributes\n if (el.attrs) {\n data += \"attrs:{\" + (genProps(el.attrs)) + \"},\";\n }\n // DOM props\n if (el.props) {\n data += \"domProps:{\" + (genProps(el.props)) + \"},\";\n }\n // event handlers\n if (el.events) {\n data += (genHandlers(el.events, false, state.warn)) + \",\";\n }\n if (el.nativeEvents) {\n data += (genHandlers(el.nativeEvents, true, state.warn)) + \",\";\n }\n // slot target\n // only for non-scoped slots\n if (el.slotTarget && !el.slotScope) {\n data += \"slot:\" + (el.slotTarget) + \",\";\n }\n // scoped slots\n if (el.scopedSlots) {\n data += (genScopedSlots(el.scopedSlots, state)) + \",\";\n }\n // component v-model\n if (el.model) {\n data += \"model:{value:\" + (el.model.value) + \",callback:\" + (el.model.callback) + \",expression:\" + (el.model.expression) + \"},\";\n }\n // inline-template\n if (el.inlineTemplate) {\n var inlineTemplate = genInlineTemplate(el, state);\n if (inlineTemplate) {\n data += inlineTemplate + \",\";\n }\n }\n data = data.replace(/,$/, '') + '}';\n // v-bind data wrap\n if (el.wrapData) {\n data = el.wrapData(data);\n }\n // v-on data wrap\n if (el.wrapListeners) {\n data = el.wrapListeners(data);\n }\n return data\n}\n\nfunction genDirectives (el, state) {\n var dirs = el.directives;\n if (!dirs) { return }\n var res = 'directives:[';\n var hasRuntime = false;\n var i, l, dir, needRuntime;\n for (i = 0, l = dirs.length; i < l; i++) {\n dir = dirs[i];\n needRuntime = true;\n var gen = state.directives[dir.name];\n if (gen) {\n // compile-time directive that manipulates AST.\n // returns true if it also needs a runtime counterpart.\n needRuntime = !!gen(el, dir, state.warn);\n }\n if (needRuntime) {\n hasRuntime = true;\n res += \"{name:\\\"\" + (dir.name) + \"\\\",rawName:\\\"\" + (dir.rawName) + \"\\\"\" + (dir.value ? (\",value:(\" + (dir.value) + \"),expression:\" + (JSON.stringify(dir.value))) : '') + (dir.arg ? (\",arg:\\\"\" + (dir.arg) + \"\\\"\") : '') + (dir.modifiers ? (\",modifiers:\" + (JSON.stringify(dir.modifiers))) : '') + \"},\";\n }\n }\n if (hasRuntime) {\n return res.slice(0, -1) + ']'\n }\n}\n\nfunction genInlineTemplate (el, state) {\n var ast = el.children[0];\n if (process.env.NODE_ENV !== 'production' && (\n el.children.length !== 1 || ast.type !== 1\n )) {\n state.warn('Inline-template components must have exactly one child element.');\n }\n if (ast.type === 1) {\n var inlineRenderFns = generate(ast, state.options);\n return (\"inlineTemplate:{render:function(){\" + (inlineRenderFns.render) + \"},staticRenderFns:[\" + (inlineRenderFns.staticRenderFns.map(function (code) { return (\"function(){\" + code + \"}\"); }).join(',')) + \"]}\")\n }\n}\n\nfunction genScopedSlots (\n slots,\n state\n) {\n return (\"scopedSlots:_u([\" + (Object.keys(slots).map(function (key) {\n return genScopedSlot(key, slots[key], state)\n }).join(',')) + \"])\")\n}\n\nfunction genScopedSlot (\n key,\n el,\n state\n) {\n if (el.for && !el.forProcessed) {\n return genForScopedSlot(key, el, state)\n }\n var fn = \"function(\" + (String(el.slotScope)) + \"){\" +\n \"return \" + (el.tag === 'template'\n ? el.if\n ? ((el.if) + \"?\" + (genChildren(el, state) || 'undefined') + \":undefined\")\n : genChildren(el, state) || 'undefined'\n : genElement(el, state)) + \"}\";\n return (\"{key:\" + key + \",fn:\" + fn + \"}\")\n}\n\nfunction genForScopedSlot (\n key,\n el,\n state\n) {\n var exp = el.for;\n var alias = el.alias;\n var iterator1 = el.iterator1 ? (\",\" + (el.iterator1)) : '';\n var iterator2 = el.iterator2 ? (\",\" + (el.iterator2)) : '';\n el.forProcessed = true; // avoid recursion\n return \"_l((\" + exp + \"),\" +\n \"function(\" + alias + iterator1 + iterator2 + \"){\" +\n \"return \" + (genScopedSlot(key, el, state)) +\n '})'\n}\n\nfunction genChildren (\n el,\n state,\n checkSkip,\n altGenElement,\n altGenNode\n) {\n var children = el.children;\n if (children.length) {\n var el$1 = children[0];\n // optimize single v-for\n if (children.length === 1 &&\n el$1.for &&\n el$1.tag !== 'template' &&\n el$1.tag !== 'slot'\n ) {\n return (altGenElement || genElement)(el$1, state)\n }\n var normalizationType = checkSkip\n ? getNormalizationType(children, state.maybeComponent)\n : 0;\n var gen = altGenNode || genNode;\n return (\"[\" + (children.map(function (c) { return gen(c, state); }).join(',')) + \"]\" + (normalizationType ? (\",\" + normalizationType) : ''))\n }\n}\n\n// determine the normalization needed for the children array.\n// 0: no normalization needed\n// 1: simple normalization needed (possible 1-level deep nested array)\n// 2: full normalization needed\nfunction getNormalizationType (\n children,\n maybeComponent\n) {\n var res = 0;\n for (var i = 0; i < children.length; i++) {\n var el = children[i];\n if (el.type !== 1) {\n continue\n }\n if (needsNormalization(el) ||\n (el.ifConditions && el.ifConditions.some(function (c) { return needsNormalization(c.block); }))) {\n res = 2;\n break\n }\n if (maybeComponent(el) ||\n (el.ifConditions && el.ifConditions.some(function (c) { return maybeComponent(c.block); }))) {\n res = 1;\n }\n }\n return res\n}\n\nfunction needsNormalization (el) {\n return el.for !== undefined || el.tag === 'template' || el.tag === 'slot'\n}\n\nfunction genNode (node, state) {\n if (node.type === 1) {\n return genElement(node, state)\n } if (node.type === 3 && node.isComment) {\n return genComment(node)\n } else {\n return genText(node)\n }\n}\n\nfunction genText (text) {\n return (\"_v(\" + (text.type === 2\n ? text.expression // no need for () because already wrapped in _s()\n : transformSpecialNewlines(JSON.stringify(text.text))) + \")\")\n}\n\nfunction genComment (comment) {\n return (\"_e(\" + (JSON.stringify(comment.text)) + \")\")\n}\n\nfunction genSlot (el, state) {\n var slotName = el.slotName || '\"default\"';\n var children = genChildren(el, state);\n var res = \"_t(\" + slotName + (children ? (\",\" + children) : '');\n var attrs = el.attrs && (\"{\" + (el.attrs.map(function (a) { return ((camelize(a.name)) + \":\" + (a.value)); }).join(',')) + \"}\");\n var bind$$1 = el.attrsMap['v-bind'];\n if ((attrs || bind$$1) && !children) {\n res += \",null\";\n }\n if (attrs) {\n res += \",\" + attrs;\n }\n if (bind$$1) {\n res += (attrs ? '' : ',null') + \",\" + bind$$1;\n }\n return res + ')'\n}\n\n// componentName is el.component, take it as argument to shun flow's pessimistic refinement\nfunction genComponent (\n componentName,\n el,\n state\n) {\n var children = el.inlineTemplate ? null : genChildren(el, state, true);\n return (\"_c(\" + componentName + \",\" + (genData$2(el, state)) + (children ? (\",\" + children) : '') + \")\")\n}\n\nfunction genProps (props) {\n var res = '';\n for (var i = 0; i < props.length; i++) {\n var prop = props[i];\n res += \"\\\"\" + (prop.name) + \"\\\":\" + (transformSpecialNewlines(prop.value)) + \",\";\n }\n return res.slice(0, -1)\n}\n\n// #3895, #4268\nfunction transformSpecialNewlines (text) {\n return text\n .replace(/\\u2028/g, '\\\\u2028')\n .replace(/\\u2029/g, '\\\\u2029')\n}\n\n/* */\n\n// these keywords should not appear inside expressions, but operators like\n// typeof, instanceof and in are allowed\nvar prohibitedKeywordRE = new RegExp('\\\\b' + (\n 'do,if,for,let,new,try,var,case,else,with,await,break,catch,class,const,' +\n 'super,throw,while,yield,delete,export,import,return,switch,default,' +\n 'extends,finally,continue,debugger,function,arguments'\n).split(',').join('\\\\b|\\\\b') + '\\\\b');\n\n// these unary operators should not be used as property/method names\nvar unaryOperatorsRE = new RegExp('\\\\b' + (\n 'delete,typeof,void'\n).split(',').join('\\\\s*\\\\([^\\\\)]*\\\\)|\\\\b') + '\\\\s*\\\\([^\\\\)]*\\\\)');\n\n// check valid identifier for v-for\nvar identRE = /[A-Za-z_$][\\w$]*/;\n\n// strip strings in expressions\nvar stripStringRE = /'(?:[^'\\\\]|\\\\.)*'|\"(?:[^\"\\\\]|\\\\.)*\"|`(?:[^`\\\\]|\\\\.)*\\$\\{|\\}(?:[^`\\\\]|\\\\.)*`|`(?:[^`\\\\]|\\\\.)*`/g;\n\n// detect problematic expressions in a template\nfunction detectErrors (ast) {\n var errors = [];\n if (ast) {\n checkNode(ast, errors);\n }\n return errors\n}\n\nfunction checkNode (node, errors) {\n if (node.type === 1) {\n for (var name in node.attrsMap) {\n if (dirRE.test(name)) {\n var value = node.attrsMap[name];\n if (value) {\n if (name === 'v-for') {\n checkFor(node, (\"v-for=\\\"\" + value + \"\\\"\"), errors);\n } else if (onRE.test(name)) {\n checkEvent(value, (name + \"=\\\"\" + value + \"\\\"\"), errors);\n } else {\n checkExpression(value, (name + \"=\\\"\" + value + \"\\\"\"), errors);\n }\n }\n }\n }\n if (node.children) {\n for (var i = 0; i < node.children.length; i++) {\n checkNode(node.children[i], errors);\n }\n }\n } else if (node.type === 2) {\n checkExpression(node.expression, node.text, errors);\n }\n}\n\nfunction checkEvent (exp, text, errors) {\n var stipped = exp.replace(stripStringRE, '');\n var keywordMatch = stipped.match(unaryOperatorsRE);\n if (keywordMatch && stipped.charAt(keywordMatch.index - 1) !== '$') {\n errors.push(\n \"avoid using JavaScript unary operator as property name: \" +\n \"\\\"\" + (keywordMatch[0]) + \"\\\" in expression \" + (text.trim())\n );\n }\n checkExpression(exp, text, errors);\n}\n\nfunction checkFor (node, text, errors) {\n checkExpression(node.for || '', text, errors);\n checkIdentifier(node.alias, 'v-for alias', text, errors);\n checkIdentifier(node.iterator1, 'v-for iterator', text, errors);\n checkIdentifier(node.iterator2, 'v-for iterator', text, errors);\n}\n\nfunction checkIdentifier (ident, type, text, errors) {\n if (typeof ident === 'string' && !identRE.test(ident)) {\n errors.push((\"invalid \" + type + \" \\\"\" + ident + \"\\\" in expression: \" + (text.trim())));\n }\n}\n\nfunction checkExpression (exp, text, errors) {\n try {\n new Function((\"return \" + exp));\n } catch (e) {\n var keywordMatch = exp.replace(stripStringRE, '').match(prohibitedKeywordRE);\n if (keywordMatch) {\n errors.push(\n \"avoid using JavaScript keyword as property name: \" +\n \"\\\"\" + (keywordMatch[0]) + \"\\\"\\n Raw expression: \" + (text.trim())\n );\n } else {\n errors.push(\n \"invalid expression: \" + (e.message) + \" in\\n\\n\" +\n \" \" + exp + \"\\n\\n\" +\n \" Raw expression: \" + (text.trim()) + \"\\n\"\n );\n }\n }\n}\n\n/* */\n\nfunction createFunction (code, errors) {\n try {\n return new Function(code)\n } catch (err) {\n errors.push({ err: err, code: code });\n return noop\n }\n}\n\nfunction createCompileToFunctionFn (compile) {\n var cache = Object.create(null);\n\n return function compileToFunctions (\n template,\n options,\n vm\n ) {\n options = extend({}, options);\n var warn$$1 = options.warn || warn;\n delete options.warn;\n\n /* istanbul ignore if */\n if (process.env.NODE_ENV !== 'production') {\n // detect possible CSP restriction\n try {\n new Function('return 1');\n } catch (e) {\n if (e.toString().match(/unsafe-eval|CSP/)) {\n warn$$1(\n 'It seems you are using the standalone build of Vue.js in an ' +\n 'environment with Content Security Policy that prohibits unsafe-eval. ' +\n 'The template compiler cannot work in this environment. Consider ' +\n 'relaxing the policy to allow unsafe-eval or pre-compiling your ' +\n 'templates into render functions.'\n );\n }\n }\n }\n\n // check cache\n var key = options.delimiters\n ? String(options.delimiters) + template\n : template;\n if (cache[key]) {\n return cache[key]\n }\n\n // compile\n var compiled = compile(template, options);\n\n // check compilation errors/tips\n if (process.env.NODE_ENV !== 'production') {\n if (compiled.errors && compiled.errors.length) {\n warn$$1(\n \"Error compiling template:\\n\\n\" + template + \"\\n\\n\" +\n compiled.errors.map(function (e) { return (\"- \" + e); }).join('\\n') + '\\n',\n vm\n );\n }\n if (compiled.tips && compiled.tips.length) {\n compiled.tips.forEach(function (msg) { return tip(msg, vm); });\n }\n }\n\n // turn code into functions\n var res = {};\n var fnGenErrors = [];\n res.render = createFunction(compiled.render, fnGenErrors);\n res.staticRenderFns = compiled.staticRenderFns.map(function (code) {\n return createFunction(code, fnGenErrors)\n });\n\n // check function generation errors.\n // this should only happen if there is a bug in the compiler itself.\n // mostly for codegen development use\n /* istanbul ignore if */\n if (process.env.NODE_ENV !== 'production') {\n if ((!compiled.errors || !compiled.errors.length) && fnGenErrors.length) {\n warn$$1(\n \"Failed to generate render function:\\n\\n\" +\n fnGenErrors.map(function (ref) {\n var err = ref.err;\n var code = ref.code;\n\n return ((err.toString()) + \" in\\n\\n\" + code + \"\\n\");\n }).join('\\n'),\n vm\n );\n }\n }\n\n return (cache[key] = res)\n }\n}\n\n/* */\n\nfunction createCompilerCreator (baseCompile) {\n return function createCompiler (baseOptions) {\n function compile (\n template,\n options\n ) {\n var finalOptions = Object.create(baseOptions);\n var errors = [];\n var tips = [];\n finalOptions.warn = function (msg, tip) {\n (tip ? tips : errors).push(msg);\n };\n\n if (options) {\n // merge custom modules\n if (options.modules) {\n finalOptions.modules =\n (baseOptions.modules || []).concat(options.modules);\n }\n // merge custom directives\n if (options.directives) {\n finalOptions.directives = extend(\n Object.create(baseOptions.directives),\n options.directives\n );\n }\n // copy other options\n for (var key in options) {\n if (key !== 'modules' && key !== 'directives') {\n finalOptions[key] = options[key];\n }\n }\n }\n\n var compiled = baseCompile(template, finalOptions);\n if (process.env.NODE_ENV !== 'production') {\n errors.push.apply(errors, detectErrors(compiled.ast));\n }\n compiled.errors = errors;\n compiled.tips = tips;\n return compiled\n }\n\n return {\n compile: compile,\n compileToFunctions: createCompileToFunctionFn(compile)\n }\n }\n}\n\n/* */\n\n// `createCompilerCreator` allows creating compilers that use alternative\n// parser/optimizer/codegen, e.g the SSR optimizing compiler.\n// Here we just export a default compiler using the default parts.\nvar createCompiler = createCompilerCreator(function baseCompile (\n template,\n options\n) {\n var ast = parse(template.trim(), options);\n optimize(ast, options);\n var code = generate(ast, options);\n return {\n ast: ast,\n render: code.render,\n staticRenderFns: code.staticRenderFns\n }\n});\n\n/* */\n\nvar ref$1 = createCompiler(baseOptions);\nvar compileToFunctions = ref$1.compileToFunctions;\n\n/* */\n\nvar idToTemplate = cached(function (id) {\n var el = query(id);\n return el && el.innerHTML\n});\n\nvar mount = Vue$3.prototype.$mount;\nVue$3.prototype.$mount = function (\n el,\n hydrating\n) {\n el = el && query(el);\n\n /* istanbul ignore if */\n if (el === document.body || el === document.documentElement) {\n process.env.NODE_ENV !== 'production' && warn(\n \"Do not mount Vue to <html> or <body> - mount to normal elements instead.\"\n );\n return this\n }\n\n var options = this.$options;\n // resolve template/el and convert to render function\n if (!options.render) {\n var template = options.template;\n if (template) {\n if (typeof template === 'string') {\n if (template.charAt(0) === '#') {\n template = idToTemplate(template);\n /* istanbul ignore if */\n if (process.env.NODE_ENV !== 'production' && !template) {\n warn(\n (\"Template element not found or is empty: \" + (options.template)),\n this\n );\n }\n }\n } else if (template.nodeType) {\n template = template.innerHTML;\n } else {\n if (process.env.NODE_ENV !== 'production') {\n warn('invalid template option:' + template, this);\n }\n return this\n }\n } else if (el) {\n template = getOuterHTML(el);\n }\n if (template) {\n /* istanbul ignore if */\n if (process.env.NODE_ENV !== 'production' && config.performance && mark) {\n mark('compile');\n }\n\n var ref = compileToFunctions(template, {\n shouldDecodeNewlines: shouldDecodeNewlines,\n delimiters: options.delimiters,\n comments: options.comments\n }, this);\n var render = ref.render;\n var staticRenderFns = ref.staticRenderFns;\n options.render = render;\n options.staticRenderFns = staticRenderFns;\n\n /* istanbul ignore if */\n if (process.env.NODE_ENV !== 'production' && config.performance && mark) {\n mark('compile end');\n measure((\"vue \" + (this._name) + \" compile\"), 'compile', 'compile end');\n }\n }\n }\n return mount.call(this, el, hydrating)\n};\n\n/**\n * Get outerHTML of elements, taking care\n * of SVG elements in IE as well.\n */\nfunction getOuterHTML (el) {\n if (el.outerHTML) {\n return el.outerHTML\n } else {\n var container = document.createElement('div');\n container.appendChild(el.cloneNode(true));\n return container.innerHTML\n }\n}\n\nVue$3.compile = compileToFunctions;\n\nexport default Vue$3;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/vue/dist/vue.esm.js\n// module id = 3\n// module chunks = 0","var apply = Function.prototype.apply;\n\n// DOM APIs, for completeness\n\nexports.setTimeout = function() {\n return new Timeout(apply.call(setTimeout, window, arguments), clearTimeout);\n};\nexports.setInterval = function() {\n return new Timeout(apply.call(setInterval, window, arguments), clearInterval);\n};\nexports.clearTimeout =\nexports.clearInterval = function(timeout) {\n if (timeout) {\n timeout.close();\n }\n};\n\nfunction Timeout(id, clearFn) {\n this._id = id;\n this._clearFn = clearFn;\n}\nTimeout.prototype.unref = Timeout.prototype.ref = function() {};\nTimeout.prototype.close = function() {\n this._clearFn.call(window, this._id);\n};\n\n// Does not start the time, just sets up the members needed.\nexports.enroll = function(item, msecs) {\n clearTimeout(item._idleTimeoutId);\n item._idleTimeout = msecs;\n};\n\nexports.unenroll = function(item) {\n clearTimeout(item._idleTimeoutId);\n item._idleTimeout = -1;\n};\n\nexports._unrefActive = exports.active = function(item) {\n clearTimeout(item._idleTimeoutId);\n\n var msecs = item._idleTimeout;\n if (msecs >= 0) {\n item._idleTimeoutId = setTimeout(function onTimeout() {\n if (item._onTimeout)\n item._onTimeout();\n }, msecs);\n }\n};\n\n// setimmediate attaches itself to the global object\nrequire(\"setimmediate\");\nexports.setImmediate = setImmediate;\nexports.clearImmediate = clearImmediate;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/timers-browserify/main.js\n// module id = 4\n// module chunks = 0","(function (global, undefined) {\n \"use strict\";\n\n if (global.setImmediate) {\n return;\n }\n\n var nextHandle = 1; // Spec says greater than zero\n var tasksByHandle = {};\n var currentlyRunningATask = false;\n var doc = global.document;\n var registerImmediate;\n\n function setImmediate(callback) {\n // Callback can either be a function or a string\n if (typeof callback !== \"function\") {\n callback = new Function(\"\" + callback);\n }\n // Copy function arguments\n var args = new Array(arguments.length - 1);\n for (var i = 0; i < args.length; i++) {\n args[i] = arguments[i + 1];\n }\n // Store and register the task\n var task = { callback: callback, args: args };\n tasksByHandle[nextHandle] = task;\n registerImmediate(nextHandle);\n return nextHandle++;\n }\n\n function clearImmediate(handle) {\n delete tasksByHandle[handle];\n }\n\n function run(task) {\n var callback = task.callback;\n var args = task.args;\n switch (args.length) {\n case 0:\n callback();\n break;\n case 1:\n callback(args[0]);\n break;\n case 2:\n callback(args[0], args[1]);\n break;\n case 3:\n callback(args[0], args[1], args[2]);\n break;\n default:\n callback.apply(undefined, args);\n break;\n }\n }\n\n function runIfPresent(handle) {\n // From the spec: \"Wait until any invocations of this algorithm started before this one have completed.\"\n // So if we're currently running a task, we'll need to delay this invocation.\n if (currentlyRunningATask) {\n // Delay by doing a setTimeout. setImmediate was tried instead, but in Firefox 7 it generated a\n // \"too much recursion\" error.\n setTimeout(runIfPresent, 0, handle);\n } else {\n var task = tasksByHandle[handle];\n if (task) {\n currentlyRunningATask = true;\n try {\n run(task);\n } finally {\n clearImmediate(handle);\n currentlyRunningATask = false;\n }\n }\n }\n }\n\n function installNextTickImplementation() {\n registerImmediate = function(handle) {\n process.nextTick(function () { runIfPresent(handle); });\n };\n }\n\n function canUsePostMessage() {\n // The test against `importScripts` prevents this implementation from being installed inside a web worker,\n // where `global.postMessage` means something completely different and can't be used for this purpose.\n if (global.postMessage && !global.importScripts) {\n var postMessageIsAsynchronous = true;\n var oldOnMessage = global.onmessage;\n global.onmessage = function() {\n postMessageIsAsynchronous = false;\n };\n global.postMessage(\"\", \"*\");\n global.onmessage = oldOnMessage;\n return postMessageIsAsynchronous;\n }\n }\n\n function installPostMessageImplementation() {\n // Installs an event handler on `global` for the `message` event: see\n // * https://developer.mozilla.org/en/DOM/window.postMessage\n // * http://www.whatwg.org/specs/web-apps/current-work/multipage/comms.html#crossDocumentMessages\n\n var messagePrefix = \"setImmediate$\" + Math.random() + \"$\";\n var onGlobalMessage = function(event) {\n if (event.source === global &&\n typeof event.data === \"string\" &&\n event.data.indexOf(messagePrefix) === 0) {\n runIfPresent(+event.data.slice(messagePrefix.length));\n }\n };\n\n if (global.addEventListener) {\n global.addEventListener(\"message\", onGlobalMessage, false);\n } else {\n global.attachEvent(\"onmessage\", onGlobalMessage);\n }\n\n registerImmediate = function(handle) {\n global.postMessage(messagePrefix + handle, \"*\");\n };\n }\n\n function installMessageChannelImplementation() {\n var channel = new MessageChannel();\n channel.port1.onmessage = function(event) {\n var handle = event.data;\n runIfPresent(handle);\n };\n\n registerImmediate = function(handle) {\n channel.port2.postMessage(handle);\n };\n }\n\n function installReadyStateChangeImplementation() {\n var html = doc.documentElement;\n registerImmediate = function(handle) {\n // Create a <script> element; its readystatechange event will be fired asynchronously once it is inserted\n // into the document. Do so, thus queuing up the task. Remember to clean up once it's been called.\n var script = doc.createElement(\"script\");\n script.onreadystatechange = function () {\n runIfPresent(handle);\n script.onreadystatechange = null;\n html.removeChild(script);\n script = null;\n };\n html.appendChild(script);\n };\n }\n\n function installSetTimeoutImplementation() {\n registerImmediate = function(handle) {\n setTimeout(runIfPresent, 0, handle);\n };\n }\n\n // If supported, we should attach to the prototype of global, since that is where setTimeout et al. live.\n var attachTo = Object.getPrototypeOf && Object.getPrototypeOf(global);\n attachTo = attachTo && attachTo.setTimeout ? attachTo : global;\n\n // Don't get fooled by e.g. browserify environments.\n if ({}.toString.call(global.process) === \"[object process]\") {\n // For Node.js before 0.9\n installNextTickImplementation();\n\n } else if (canUsePostMessage()) {\n // For non-IE10 modern browsers\n installPostMessageImplementation();\n\n } else if (global.MessageChannel) {\n // For web workers, where supported\n installMessageChannelImplementation();\n\n } else if (doc && \"onreadystatechange\" in doc.createElement(\"script\")) {\n // For IE 6–8\n installReadyStateChangeImplementation();\n\n } else {\n // For older browsers\n installSetTimeoutImplementation();\n }\n\n attachTo.setImmediate = setImmediate;\n attachTo.clearImmediate = clearImmediate;\n}(typeof self === \"undefined\" ? typeof global === \"undefined\" ? this : global : self));\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/setimmediate/setImmediate.js\n// module id = 5\n// module chunks = 0","// shim for using process in browser\nvar process = module.exports = {};\n\n// cached from whatever global is present so that test runners that stub it\n// don't break things. But we need to wrap it in a try catch in case it is\n// wrapped in strict mode code which doesn't define any globals. It's inside a\n// function because try/catches deoptimize in certain engines.\n\nvar cachedSetTimeout;\nvar cachedClearTimeout;\n\nfunction defaultSetTimout() {\n throw new Error('setTimeout has not been defined');\n}\nfunction defaultClearTimeout () {\n throw new Error('clearTimeout has not been defined');\n}\n(function () {\n try {\n if (typeof setTimeout === 'function') {\n cachedSetTimeout = setTimeout;\n } else {\n cachedSetTimeout = defaultSetTimout;\n }\n } catch (e) {\n cachedSetTimeout = defaultSetTimout;\n }\n try {\n if (typeof clearTimeout === 'function') {\n cachedClearTimeout = clearTimeout;\n } else {\n cachedClearTimeout = defaultClearTimeout;\n }\n } catch (e) {\n cachedClearTimeout = defaultClearTimeout;\n }\n} ())\nfunction runTimeout(fun) {\n if (cachedSetTimeout === setTimeout) {\n //normal enviroments in sane situations\n return setTimeout(fun, 0);\n }\n // if setTimeout wasn't available but was latter defined\n if ((cachedSetTimeout === defaultSetTimout || !cachedSetTimeout) && setTimeout) {\n cachedSetTimeout = setTimeout;\n return setTimeout(fun, 0);\n }\n try {\n // when when somebody has screwed with setTimeout but no I.E. maddness\n return cachedSetTimeout(fun, 0);\n } catch(e){\n try {\n // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally\n return cachedSetTimeout.call(null, fun, 0);\n } catch(e){\n // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error\n return cachedSetTimeout.call(this, fun, 0);\n }\n }\n\n\n}\nfunction runClearTimeout(marker) {\n if (cachedClearTimeout === clearTimeout) {\n //normal enviroments in sane situations\n return clearTimeout(marker);\n }\n // if clearTimeout wasn't available but was latter defined\n if ((cachedClearTimeout === defaultClearTimeout || !cachedClearTimeout) && clearTimeout) {\n cachedClearTimeout = clearTimeout;\n return clearTimeout(marker);\n }\n try {\n // when when somebody has screwed with setTimeout but no I.E. maddness\n return cachedClearTimeout(marker);\n } catch (e){\n try {\n // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally\n return cachedClearTimeout.call(null, marker);\n } catch (e){\n // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error.\n // Some versions of I.E. have different rules for clearTimeout vs setTimeout\n return cachedClearTimeout.call(this, marker);\n }\n }\n\n\n\n}\nvar queue = [];\nvar draining = false;\nvar currentQueue;\nvar queueIndex = -1;\n\nfunction cleanUpNextTick() {\n if (!draining || !currentQueue) {\n return;\n }\n draining = false;\n if (currentQueue.length) {\n queue = currentQueue.concat(queue);\n } else {\n queueIndex = -1;\n }\n if (queue.length) {\n drainQueue();\n }\n}\n\nfunction drainQueue() {\n if (draining) {\n return;\n }\n var timeout = runTimeout(cleanUpNextTick);\n draining = true;\n\n var len = queue.length;\n while(len) {\n currentQueue = queue;\n queue = [];\n while (++queueIndex < len) {\n if (currentQueue) {\n currentQueue[queueIndex].run();\n }\n }\n queueIndex = -1;\n len = queue.length;\n }\n currentQueue = null;\n draining = false;\n runClearTimeout(timeout);\n}\n\nprocess.nextTick = function (fun) {\n var args = new Array(arguments.length - 1);\n if (arguments.length > 1) {\n for (var i = 1; i < arguments.length; i++) {\n args[i - 1] = arguments[i];\n }\n }\n queue.push(new Item(fun, args));\n if (queue.length === 1 && !draining) {\n runTimeout(drainQueue);\n }\n};\n\n// v8 likes predictible objects\nfunction Item(fun, array) {\n this.fun = fun;\n this.array = array;\n}\nItem.prototype.run = function () {\n this.fun.apply(null, this.array);\n};\nprocess.title = 'browser';\nprocess.browser = true;\nprocess.env = {};\nprocess.argv = [];\nprocess.version = ''; // empty string to avoid regexp issues\nprocess.versions = {};\n\nfunction noop() {}\n\nprocess.on = noop;\nprocess.addListener = noop;\nprocess.once = noop;\nprocess.off = noop;\nprocess.removeListener = noop;\nprocess.removeAllListeners = noop;\nprocess.emit = noop;\nprocess.prependListener = noop;\nprocess.prependOnceListener = noop;\n\nprocess.listeners = function (name) { return [] }\n\nprocess.binding = function (name) {\n throw new Error('process.binding is not supported');\n};\n\nprocess.cwd = function () { return '/' };\nprocess.chdir = function (dir) {\n throw new Error('process.chdir is not supported');\n};\nprocess.umask = function() { return 0; };\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/process/browser.js\n// module id = 6\n// module chunks = 0","function injectStyle (ssrContext) {\n require(\"!!vue-style-loader!css-loader!./node_modules/vue-loader/lib/style-compiler/index?{\\\"vue\\\":true,\\\"id\\\":\\\"data-v-7d220ade\\\",\\\"scoped\\\":false,\\\"hasInlineConfig\\\":false}!sass-loader!./node_modules/vue-loader/lib/selector?type=styles&index=0!./Geshem.vue\")\n}\nvar normalizeComponent = require(\"!./node_modules/vue-loader/lib/component-normalizer\")\n/* script */\nimport __vue_script__ from \"!!babel-loader!./node_modules/vue-loader/lib/selector?type=script&index=0!./Geshem.vue\"\n/* template */\nimport __vue_template__ from \"!!./node_modules/vue-loader/lib/template-compiler/index?{\\\"id\\\":\\\"data-v-7d220ade\\\",\\\"hasScoped\\\":false,\\\"buble\\\":{\\\"transforms\\\":{}}}!./node_modules/vue-loader/lib/selector?type=template&index=0!./Geshem.vue\"\n/* template functional */\n var __vue_template_functional__ = false\n/* styles */\nvar __vue_styles__ = injectStyle\n/* scopeId */\nvar __vue_scopeId__ = null\n/* moduleIdentifier (server only) */\nvar __vue_module_identifier__ = null\nvar Component = normalizeComponent(\n __vue_script__,\n __vue_template__,\n __vue_template_functional__,\n __vue_styles__,\n __vue_scopeId__,\n __vue_module_identifier__\n)\n\nexport default Component.exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./Geshem.vue\n// module id = 7\n// module chunks = 0","// style-loader: Adds some css to the DOM by adding a <style> tag\n\n// load the styles\nvar content = require(\"!!./node_modules/css-loader/index.js!./node_modules/vue-loader/lib/style-compiler/index.js?{\\\"vue\\\":true,\\\"id\\\":\\\"data-v-7d220ade\\\",\\\"scoped\\\":false,\\\"hasInlineConfig\\\":false}!./node_modules/sass-loader/lib/loader.js!./node_modules/vue-loader/lib/selector.js?type=styles&index=0!./Geshem.vue\");\nif(typeof content === 'string') content = [[module.id, content, '']];\nif(content.locals) module.exports = content.locals;\n// add the styles to the DOM\nvar update = require(\"!./node_modules/vue-style-loader/lib/addStylesClient.js\")(\"1cc1a7d4\", content, true);\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/vue-style-loader!./node_modules/css-loader!./node_modules/vue-loader/lib/style-compiler?{\"vue\":true,\"id\":\"data-v-7d220ade\",\"scoped\":false,\"hasInlineConfig\":false}!./node_modules/sass-loader/lib/loader.js!./node_modules/vue-loader/lib/selector.js?type=styles&index=0!./Geshem.vue\n// module id = 8\n// module chunks = 0","exports = module.exports = require(\"./node_modules/css-loader/lib/css-base.js\")(undefined);\n// imports\n\n\n// module\nexports.push([module.id, \"#geshem #datetime{position:absolute;margin:20px 0 0 20px;color:#fff;font-family:monospace}#geshem #datetime #date{font-size:1.4em}#geshem #datetime #time{font-size:1.8em}#geshem #slider{position:absolute;bottom:8vh;width:30vw;margin-left:35vw}@media only screen and (max-device-width:812px){#geshem #slider{width:80vw;margin-left:8vw}}\", \"\"]);\n\n// exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/css-loader!./node_modules/vue-loader/lib/style-compiler?{\"vue\":true,\"id\":\"data-v-7d220ade\",\"scoped\":false,\"hasInlineConfig\":false}!./node_modules/sass-loader/lib/loader.js!./node_modules/vue-loader/lib/selector.js?type=styles&index=0!./Geshem.vue\n// module id = 9\n// module chunks = 0","/*\n\tMIT License http://www.opensource.org/licenses/mit-license.php\n\tAuthor Tobias Koppers @sokra\n*/\n// css base code, injected by the css-loader\nmodule.exports = function(useSourceMap) {\n\tvar list = [];\n\n\t// return the list of modules as css string\n\tlist.toString = function toString() {\n\t\treturn this.map(function (item) {\n\t\t\tvar content = cssWithMappingToString(item, useSourceMap);\n\t\t\tif(item[2]) {\n\t\t\t\treturn \"@media \" + item[2] + \"{\" + content + \"}\";\n\t\t\t} else {\n\t\t\t\treturn content;\n\t\t\t}\n\t\t}).join(\"\");\n\t};\n\n\t// import a list of modules into the list\n\tlist.i = function(modules, mediaQuery) {\n\t\tif(typeof modules === \"string\")\n\t\t\tmodules = [[null, modules, \"\"]];\n\t\tvar alreadyImportedModules = {};\n\t\tfor(var i = 0; i < this.length; i++) {\n\t\t\tvar id = this[i][0];\n\t\t\tif(typeof id === \"number\")\n\t\t\t\talreadyImportedModules[id] = true;\n\t\t}\n\t\tfor(i = 0; i < modules.length; i++) {\n\t\t\tvar item = modules[i];\n\t\t\t// skip already imported module\n\t\t\t// this implementation is not 100% perfect for weird media query combinations\n\t\t\t// when a module is imported multiple times with different media queries.\n\t\t\t// I hope this will never occur (Hey this way we have smaller bundles)\n\t\t\tif(typeof item[0] !== \"number\" || !alreadyImportedModules[item[0]]) {\n\t\t\t\tif(mediaQuery && !item[2]) {\n\t\t\t\t\titem[2] = mediaQuery;\n\t\t\t\t} else if(mediaQuery) {\n\t\t\t\t\titem[2] = \"(\" + item[2] + \") and (\" + mediaQuery + \")\";\n\t\t\t\t}\n\t\t\t\tlist.push(item);\n\t\t\t}\n\t\t}\n\t};\n\treturn list;\n};\n\nfunction cssWithMappingToString(item, useSourceMap) {\n\tvar content = item[1] || '';\n\tvar cssMapping = item[3];\n\tif (!cssMapping) {\n\t\treturn content;\n\t}\n\n\tif (useSourceMap && typeof btoa === 'function') {\n\t\tvar sourceMapping = toComment(cssMapping);\n\t\tvar sourceURLs = cssMapping.sources.map(function (source) {\n\t\t\treturn '/*# sourceURL=' + cssMapping.sourceRoot + source + ' */'\n\t\t});\n\n\t\treturn [content].concat(sourceURLs).concat([sourceMapping]).join('\\n');\n\t}\n\n\treturn [content].join('\\n');\n}\n\n// Adapted from convert-source-map (MIT)\nfunction toComment(sourceMap) {\n\t// eslint-disable-next-line no-undef\n\tvar base64 = btoa(unescape(encodeURIComponent(JSON.stringify(sourceMap))));\n\tvar data = 'sourceMappingURL=data:application/json;charset=utf-8;base64,' + base64;\n\n\treturn '/*# ' + data + ' */';\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/css-loader/lib/css-base.js\n// module id = 10\n// module chunks = 0","/*\n MIT License http://www.opensource.org/licenses/mit-license.php\n Author Tobias Koppers @sokra\n Modified by Evan You @yyx990803\n*/\n\nvar hasDocument = typeof document !== 'undefined'\n\nif (typeof DEBUG !== 'undefined' && DEBUG) {\n if (!hasDocument) {\n throw new Error(\n 'vue-style-loader cannot be used in a non-browser environment. ' +\n \"Use { target: 'node' } in your Webpack config to indicate a server-rendering environment.\"\n ) }\n}\n\nvar listToStyles = require('./listToStyles')\n\n/*\ntype StyleObject = {\n id: number;\n parts: Array<StyleObjectPart>\n}\n\ntype StyleObjectPart = {\n css: string;\n media: string;\n sourceMap: ?string\n}\n*/\n\nvar stylesInDom = {/*\n [id: number]: {\n id: number,\n refs: number,\n parts: Array<(obj?: StyleObjectPart) => void>\n }\n*/}\n\nvar head = hasDocument && (document.head || document.getElementsByTagName('head')[0])\nvar singletonElement = null\nvar singletonCounter = 0\nvar isProduction = false\nvar noop = function () {}\n\n// Force single-tag solution on IE6-9, which has a hard limit on the # of <style>\n// tags it will allow on a page\nvar isOldIE = typeof navigator !== 'undefined' && /msie [6-9]\\b/.test(navigator.userAgent.toLowerCase())\n\nmodule.exports = function (parentId, list, _isProduction) {\n isProduction = _isProduction\n\n var styles = listToStyles(parentId, list)\n addStylesToDom(styles)\n\n return function update (newList) {\n var mayRemove = []\n for (var i = 0; i < styles.length; i++) {\n var item = styles[i]\n var domStyle = stylesInDom[item.id]\n domStyle.refs--\n mayRemove.push(domStyle)\n }\n if (newList) {\n styles = listToStyles(parentId, newList)\n addStylesToDom(styles)\n } else {\n styles = []\n }\n for (var i = 0; i < mayRemove.length; i++) {\n var domStyle = mayRemove[i]\n if (domStyle.refs === 0) {\n for (var j = 0; j < domStyle.parts.length; j++) {\n domStyle.parts[j]()\n }\n delete stylesInDom[domStyle.id]\n }\n }\n }\n}\n\nfunction addStylesToDom (styles /* Array<StyleObject> */) {\n for (var i = 0; i < styles.length; i++) {\n var item = styles[i]\n var domStyle = stylesInDom[item.id]\n if (domStyle) {\n domStyle.refs++\n for (var j = 0; j < domStyle.parts.length; j++) {\n domStyle.parts[j](item.parts[j])\n }\n for (; j < item.parts.length; j++) {\n domStyle.parts.push(addStyle(item.parts[j]))\n }\n if (domStyle.parts.length > item.parts.length) {\n domStyle.parts.length = item.parts.length\n }\n } else {\n var parts = []\n for (var j = 0; j < item.parts.length; j++) {\n parts.push(addStyle(item.parts[j]))\n }\n stylesInDom[item.id] = { id: item.id, refs: 1, parts: parts }\n }\n }\n}\n\nfunction createStyleElement () {\n var styleElement = document.createElement('style')\n styleElement.type = 'text/css'\n head.appendChild(styleElement)\n return styleElement\n}\n\nfunction addStyle (obj /* StyleObjectPart */) {\n var update, remove\n var styleElement = document.querySelector('style[data-vue-ssr-id~=\"' + obj.id + '\"]')\n\n if (styleElement) {\n if (isProduction) {\n // has SSR styles and in production mode.\n // simply do nothing.\n return noop\n } else {\n // has SSR styles but in dev mode.\n // for some reason Chrome can't handle source map in server-rendered\n // style tags - source maps in <style> only works if the style tag is\n // created and inserted dynamically. So we remove the server rendered\n // styles and inject new ones.\n styleElement.parentNode.removeChild(styleElement)\n }\n }\n\n if (isOldIE) {\n // use singleton mode for IE9.\n var styleIndex = singletonCounter++\n styleElement = singletonElement || (singletonElement = createStyleElement())\n update = applyToSingletonTag.bind(null, styleElement, styleIndex, false)\n remove = applyToSingletonTag.bind(null, styleElement, styleIndex, true)\n } else {\n // use multi-style-tag mode in all other cases\n styleElement = createStyleElement()\n update = applyToTag.bind(null, styleElement)\n remove = function () {\n styleElement.parentNode.removeChild(styleElement)\n }\n }\n\n update(obj)\n\n return function updateStyle (newObj /* StyleObjectPart */) {\n if (newObj) {\n if (newObj.css === obj.css &&\n newObj.media === obj.media &&\n newObj.sourceMap === obj.sourceMap) {\n return\n }\n update(obj = newObj)\n } else {\n remove()\n }\n }\n}\n\nvar replaceText = (function () {\n var textStore = []\n\n return function (index, replacement) {\n textStore[index] = replacement\n return textStore.filter(Boolean).join('\\n')\n }\n})()\n\nfunction applyToSingletonTag (styleElement, index, remove, obj) {\n var css = remove ? '' : obj.css\n\n if (styleElement.styleSheet) {\n styleElement.styleSheet.cssText = replaceText(index, css)\n } else {\n var cssNode = document.createTextNode(css)\n var childNodes = styleElement.childNodes\n if (childNodes[index]) styleElement.removeChild(childNodes[index])\n if (childNodes.length) {\n styleElement.insertBefore(cssNode, childNodes[index])\n } else {\n styleElement.appendChild(cssNode)\n }\n }\n}\n\nfunction applyToTag (styleElement, obj) {\n var css = obj.css\n var media = obj.media\n var sourceMap = obj.sourceMap\n\n if (media) {\n styleElement.setAttribute('media', media)\n }\n\n if (sourceMap) {\n // https://developer.chrome.com/devtools/docs/javascript-debugging\n // this makes source maps inside style tags work properly in Chrome\n css += '\\n/*# sourceURL=' + sourceMap.sources[0] + ' */'\n // http://stackoverflow.com/a/26603875\n css += '\\n/*# sourceMappingURL=data:application/json;base64,' + btoa(unescape(encodeURIComponent(JSON.stringify(sourceMap)))) + ' */'\n }\n\n if (styleElement.styleSheet) {\n styleElement.styleSheet.cssText = css\n } else {\n while (styleElement.firstChild) {\n styleElement.removeChild(styleElement.firstChild)\n }\n styleElement.appendChild(document.createTextNode(css))\n }\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/vue-style-loader/lib/addStylesClient.js\n// module id = 11\n// module chunks = 0","/**\n * Translates the list format produced by css-loader into something\n * easier to manipulate.\n */\nmodule.exports = function listToStyles (parentId, list) {\n var styles = []\n var newStyles = {}\n for (var i = 0; i < list.length; i++) {\n var item = list[i]\n var id = item[0]\n var css = item[1]\n var media = item[2]\n var sourceMap = item[3]\n var part = {\n id: parentId + ':' + i,\n css: css,\n media: media,\n sourceMap: sourceMap\n }\n if (!newStyles[id]) {\n styles.push(newStyles[id] = { id: id, parts: [part] })\n } else {\n newStyles[id].parts.push(part)\n }\n }\n return styles\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/vue-style-loader/lib/listToStyles.js\n// module id = 12\n// module chunks = 0","/* globals __VUE_SSR_CONTEXT__ */\n\n// IMPORTANT: Do NOT use ES2015 features in this file.\n// This module is a runtime utility for cleaner component module output and will\n// be included in the final webpack user bundle.\n\nmodule.exports = function normalizeComponent (\n rawScriptExports,\n compiledTemplate,\n functionalTemplate,\n injectStyles,\n scopeId,\n moduleIdentifier /* server only */\n) {\n var esModule\n var scriptExports = rawScriptExports = rawScriptExports || {}\n\n // ES6 modules interop\n var type = typeof rawScriptExports.default\n if (type === 'object' || type === 'function') {\n esModule = rawScriptExports\n scriptExports = rawScriptExports.default\n }\n\n // Vue.extend constructor export interop\n var options = typeof scriptExports === 'function'\n ? scriptExports.options\n : scriptExports\n\n // render functions\n if (compiledTemplate) {\n options.render = compiledTemplate.render\n options.staticRenderFns = compiledTemplate.staticRenderFns\n options._compiled = true\n }\n\n // functional template\n if (functionalTemplate) {\n options.functional = true\n }\n\n // scopedId\n if (scopeId) {\n options._scopeId = scopeId\n }\n\n var hook\n if (moduleIdentifier) { // server build\n hook = function (context) {\n // 2.3 injection\n context =\n context || // cached call\n (this.$vnode && this.$vnode.ssrContext) || // stateful\n (this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext) // functional\n // 2.2 with runInNewContext: true\n if (!context && typeof __VUE_SSR_CONTEXT__ !== 'undefined') {\n context = __VUE_SSR_CONTEXT__\n }\n // inject component styles\n if (injectStyles) {\n injectStyles.call(this, context)\n }\n // register component module identifier for async chunk inferrence\n if (context && context._registeredComponents) {\n context._registeredComponents.add(moduleIdentifier)\n }\n }\n // used by ssr in case component is cached and beforeCreate\n // never gets called\n options._ssrRegister = hook\n } else if (injectStyles) {\n hook = injectStyles\n }\n\n if (hook) {\n var functional = options.functional\n var existing = functional\n ? options.render\n : options.beforeCreate\n\n if (!functional) {\n // inject component registration as beforeCreate hook\n options.beforeCreate = existing\n ? [].concat(existing, hook)\n : [hook]\n } else {\n // for template-only hot-reload because in that case the render fn doesn't\n // go through the normalizer\n options._injectStyles = hook\n // register for functioal component in vue file\n options.render = function renderWithStyleInjection (h, context) {\n hook.call(context)\n return existing(h, context)\n }\n }\n }\n\n return {\n esModule: esModule,\n exports: scriptExports,\n options: options\n }\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/vue-loader/lib/component-normalizer.js\n// module id = 13\n// module chunks = 0","<template>\n <div id=\"geshem\">\n <div id=\"datetime\">\n <div id=\"date\">{{ date }}</div>\n <div id=\"time\">{{ time }}</div>\n </div>\n <div id=\"slider\">\n <vue-slider ref=\"slider\" v-model=\"slider\" :min=1 :max=7 :height=20 :dot-size=45 :tooltip=false></vue-slider>\n </div>\n </div>\n</template>\n\n<script>\n import vueSlider from 'vue-slider-component';\n import mapboxgl from 'mapbox-gl';\n export default {\n name: 'geshem',\n components: {\n 'vue-slider': vueSlider\n },\n data: function () {\n return {\n imgs: window.imgs,\n res: 280,\n slider: 7,\n rasterCoords: {\n 140: [\n [33.35317413, 33.27232471],\n [36.32243686, 33.27232471],\n [36.32243686, 30.72293428],\n [33.35317413, 30.72293428]\n ],\n 280: [\n [31.93095218, 34.5156862],\n [37.86644267, 34.5156862],\n [37.86644267, 29.42911589],\n [31.93095218, 29.42911589]\n ]\n },\n map: new mapboxgl.Map({\n container: 'map',\n style: 'mapbox://styles/mapbox/dark-v9',\n container: 'map',\n maxZoom: 10,\n minZoom: 5,\n zoom: 6.3,\n center: [35, 31.9],\n hash: false\n })\n }\n },\n computed: {\n date: function () {\n var d = this.imgs[this.res][7-this.slider].substr(0, 8);\n return `${d.substr(6, 2)}-${d.substr(4, 2)}-${d.substr(0, 4)}`;\n },\n time: function () {\n var t = this.imgs[this.res][7-this.slider].substr(9, 6);\n return `${t.substr(0, 2)}:${t.substr(2, 2)}`;\n },\n curImg: function () {\n return 7 - this.slider;\n }\n },\n created: function () {\n var vm = this;\n this.map.on('style.load', function () {\n var i = 0;\n while (i < vm.imgs['140'].length) {\n vm.addRadarSource('140', i, vm.imgs['140'][i++])\n }\n var i = 0;\n while (i < vm.imgs['280'].length) {\n vm.addRadarSource('280', i, vm.imgs['280'][i++])\n }\n vm.addRadarLayer('280', 0)\n });\n this.map.on('zoom', function () {\n var zoomIn = vm.map.getZoom() > 7;\n var from = zoomIn ? '280' : '140';\n var to = zoomIn ? '140' : '280';\n if (to != vm.res) {\n console.log(`Zoom event from ${from} to ${to}`);\n vm.removeRadarLayer(from, vm.curImg);\n vm.addRadarLayer(to, vm.curImg);\n vm.res = to;\n }\n });\n },\n methods: {\n addRadarSource: function(res, i, url) {\n this.map.addSource(`radar-${res}-${i}`, {\n type: 'image',\n url: '/static/img/' + url,\n coordinates: this.rasterCoords[res]\n })\n },\n addRadarLayer: function(res, i) {\n this.map.addLayer({\n id: `radar-${res}-${i}`,\n source: `radar-${res}-${i}`,\n type: 'raster',\n paint: {\n 'raster-opacity': 0.85\n }\n })\n },\n removeRadarLayer: function(res, i) {\n this.map.removeLayer(`radar-${res}-${i}`)\n }\n },\n watch: {\n slider: function (to, from) {\n this.removeRadarLayer(this.res, 7-from);\n this.addRadarLayer(this.res, 7-to);\n }\n }\n }\n</script>\n\n<style lang=\"scss\">\n #geshem {\n #datetime {\n position: absolute;\n margin: 20px 0px 0px 20px;\n color: white;\n font-family: monospace;\n #date {\n font-size: 1.4em;\n }\n #time {\n font-size: 1.8em;\n }\n }\n #slider {\n position: absolute;\n bottom: 8vh;\n width: 30vw;\n margin-left: 35vw;\n @media only screen and (max-device-width: 812px) {\n width: 80vw;\n margin-left: 8vw;\n }\n }\n }\n</style>\n\n\n\n// WEBPACK FOOTER //\n// Geshem.vue","!function(t,e){\"object\"==typeof exports&&\"object\"==typeof module?module.exports=e():\"function\"==typeof define&&define.amd?define(\"vue-slider-component\",[],e):\"object\"==typeof exports?exports[\"vue-slider-component\"]=e():t[\"vue-slider-component\"]=e()}(this,function(){return function(t){function e(s){if(i[s])return i[s].exports;var r=i[s]={i:s,l:!1,exports:{}};return t[s].call(r.exports,r,r.exports,e),r.l=!0,r.exports}var i={};return e.m=t,e.c=i,e.i=function(t){return t},e.d=function(t,i,s){e.o(t,i)||Object.defineProperty(t,i,{configurable:!1,enumerable:!0,get:s})},e.n=function(t){var i=t&&t.__esModule?function(){return t.default}:function(){return t};return e.d(i,\"a\",i),i},e.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},e.p=\"\",e(e.s=2)}([function(t,e,i){i(7);var s=i(5)(i(1),i(6),null,null);t.exports=s.exports},function(t,e,i){\"use strict\";Object.defineProperty(e,\"__esModule\",{value:!0}),e.default={data:function(){return{flag:!1,size:0,currentValue:0,currentSlider:0,dotWidthVal:\"number\"==typeof this.dotWidth?this.dotWidth:this.dotSize,dotHeightVal:\"number\"==typeof this.dotHeight?this.dotHeight:this.dotSize}},props:{width:{type:[Number,String],default:\"auto\"},height:{type:[Number,String],default:6},data:{type:Array,default:null},dotSize:{type:Number,default:16},dotWidth:{type:Number,required:!1},dotHeight:{type:Number,required:!1},min:{type:Number,default:0},max:{type:Number,default:100},interval:{type:Number,default:1},show:{type:Boolean,default:!0},disabled:{type:Boolean,default:!1},piecewise:{type:Boolean,default:!1},tooltip:{type:[String,Boolean],default:\"always\"},eventType:{type:String,default:\"auto\"},direction:{type:String,default:\"horizontal\"},reverse:{type:Boolean,default:!1},lazy:{type:Boolean,default:!1},clickable:{type:Boolean,default:!0},speed:{type:Number,default:.5},realTime:{type:Boolean,default:!1},value:{type:[String,Number,Array],default:0},piecewiseLabel:{type:Boolean,default:!1},sliderStyle:[Array,Object],tooltipDir:[Array,String],formatter:[String,Function],piecewiseStyle:Object,piecewiseActiveStyle:Object,processStyle:Object,bgStyle:Object,tooltipStyle:[Array,Object],labelStyle:Object,labelActiveStyle:Object},computed:{flowDirection:function(){return\"vue-slider-\"+this.direction+(this.reverse?\"-reverse\":\"\")},tooltipDirection:function(){var t=this.tooltipDir||(\"vertical\"===this.direction?\"left\":\"top\");return Array.isArray(t)?this.isRange?t:t[1]:this.isRange?[t,t]:t},tooltipStatus:function(){return\"hover\"===this.tooltip&&this.flag?\"vue-slider-always\":this.tooltip?\"vue-slider-\"+this.tooltip:\"\"},tooltipClass:function(){return[\"vue-slider-tooltip-\"+this.tooltipDirection,\"vue-slider-tooltip\"]},isDisabled:function(){return\"none\"===this.eventType||this.disabled},disabledClass:function(){return this.disabled?\"vue-slider-disabled\":\"\"},isRange:function(){return Array.isArray(this.value)},slider:function(){return this.isRange?[this.$refs.dot0,this.$refs.dot1]:this.$refs.dot},minimum:function(){return this.data?0:this.min},val:{get:function(){return this.data?this.isRange?[this.data[this.currentValue[0]],this.data[this.currentValue[1]]]:this.data[this.currentValue]:this.currentValue},set:function(t){if(this.data)if(this.isRange){var e=this.data.indexOf(t[0]),i=this.data.indexOf(t[1]);e>-1&&i>-1&&(this.currentValue=[e,i])}else{var s=this.data.indexOf(t);s>-1&&(this.currentValue=s)}else this.currentValue=t}},currentIndex:function(){return this.isRange?this.data?this.currentValue:[(this.currentValue[0]-this.minimum)/this.spacing,(this.currentValue[1]-this.minimum)/this.spacing]:(this.currentValue-this.minimum)/this.spacing},indexRange:function(){return this.isRange?this.currentIndex:[0,this.currentIndex]},maximum:function(){return this.data?this.data.length-1:this.max},multiple:function(){var t=(\"\"+this.interval).split(\".\")[1];return t?Math.pow(10,t.length):1},spacing:function(){return this.data?1:this.interval},total:function(){return this.data?this.data.length-1:(~~((this.maximum-this.minimum)*this.multiple)%(this.interval*this.multiple)!=0&&console.error(\"[Vue-slider warn]: Prop[interval] is illegal, Please make sure that the interval can be divisible\"),(this.maximum-this.minimum)/this.interval)},gap:function(){return this.size/this.total},position:function(){return this.isRange?[(this.currentValue[0]-this.minimum)/this.spacing*this.gap,(this.currentValue[1]-this.minimum)/this.spacing*this.gap]:(this.currentValue-this.minimum)/this.spacing*this.gap},limit:function(){return this.isRange?[[0,this.position[1]],[this.position[0],this.size]]:[0,this.size]},valueLimit:function(){return this.isRange?[[this.minimum,this.currentValue[1]],[this.currentValue[0],this.maximum]]:[this.minimum,this.maximum]},wrapStyles:function(){return\"vertical\"===this.direction?{height:\"number\"==typeof this.height?this.height+\"px\":this.height,padding:this.dotHeightVal/2+\"px \"+this.dotWidthVal/2+\"px\"}:{width:\"number\"==typeof this.width?this.width+\"px\":this.width,padding:this.dotHeightVal/2+\"px \"+this.dotWidthVal/2+\"px\"}},sliderStyles:function(){return Array.isArray(this.sliderStyle)?this.isRange?this.sliderStyle:this.sliderStyle[1]:this.isRange?[this.sliderStyle,this.sliderStyle]:this.sliderStyle},tooltipStyles:function(){return Array.isArray(this.tooltipStyle)?this.isRange?this.tooltipStyle:this.tooltipStyle[1]:this.isRange?[this.tooltipStyle,this.tooltipStyle]:this.tooltipStyle},elemStyles:function(){return\"vertical\"===this.direction?{width:this.width+\"px\",height:\"100%\"}:{height:this.height+\"px\"}},dotStyles:function(){return\"vertical\"===this.direction?{width:this.dotWidthVal+\"px\",height:this.dotHeightVal+\"px\",left:-(this.dotWidthVal-this.width)/2+\"px\"}:{width:this.dotWidthVal+\"px\",height:this.dotHeightVal+\"px\",top:-(this.dotHeightVal-this.height)/2+\"px\"}},piecewiseDotStyle:function(){return\"vertical\"===this.direction?{width:this.width+\"px\",height:this.width+\"px\"}:{width:this.height+\"px\",height:this.height+\"px\"}},piecewiseDotWrap:function(){if(!this.piecewise&&!this.piecewiseLabel)return!1;for(var t=[],e=0;e<=this.total;e++){var i=\"vertical\"===this.direction?{bottom:this.gap*e-this.width/2+\"px\",left:0}:{left:this.gap*e-this.height/2+\"px\",top:0},s=this.reverse?this.total-e:e,r=this.data?this.data[s]:this.spacing*s+this.min;t.push({style:i,label:this.formatter?this.formatting(r):r,inRange:s>=this.indexRange[0]&&s<=this.indexRange[1]})}return t}},watch:{value:function(t){this.flag||this.setValue(t,!0)},max:function(t){var e=this.limitValue(this.val);!1!==e&&this.setValue(e),this.refresh()},min:function(t){var e=this.limitValue(this.val);!1!==e&&this.setValue(e),this.refresh()},show:function(t){var e=this;t&&!this.size&&this.$nextTick(function(){e.refresh()})}},methods:{bindEvents:function(){document.addEventListener(\"touchmove\",this.moving,{passive:!1}),document.addEventListener(\"touchend\",this.moveEnd,{passive:!1}),document.addEventListener(\"mousemove\",this.moving),document.addEventListener(\"mouseup\",this.moveEnd),document.addEventListener(\"mouseleave\",this.moveEnd),window.addEventListener(\"resize\",this.refresh)},unbindEvents:function(){window.removeEventListener(\"resize\",this.refresh),document.removeEventListener(\"touchmove\",this.moving),document.removeEventListener(\"touchend\",this.moveEnd),document.removeEventListener(\"mousemove\",this.moving),document.removeEventListener(\"mouseup\",this.moveEnd),document.removeEventListener(\"mouseleave\",this.moveEnd)},formatting:function(t){return\"string\"==typeof this.formatter?this.formatter.replace(/\\{value\\}/,t):this.formatter(t)},getPos:function(t){return this.realTime&&this.getStaticData(),\"vertical\"===this.direction?this.reverse?t.pageY-this.offset:this.size-(t.pageY-this.offset):this.reverse?this.size-(t.clientX-this.offset):t.clientX-this.offset},wrapClick:function(t){if(this.isDisabled||!this.clickable)return!1;var e=this.getPos(t);this.isRange&&(this.currentSlider=e>(this.position[1]-this.position[0])/2+this.position[0]?1:0),this.setValueOnPos(e)},moveStart:function(t){if(this.isDisabled)return!1;this.isRange&&(this.currentSlider=t),this.flag=!0,this.$emit(\"drag-start\",this)},moving:function(t){if(!this.flag)return!1;t.preventDefault(),t.targetTouches&&t.targetTouches[0]&&(t=t.targetTouches[0]),this.setValueOnPos(this.getPos(t),!0)},moveEnd:function(t){if(!this.flag)return!1;this.$emit(\"drag-end\",this),this.lazy&&this.isDiff(this.val,this.value)&&this.syncValue(),this.flag=!1,this.setPosition()},setValueOnPos:function(t,e){var i=this.isRange?this.limit[this.currentSlider]:this.limit,s=this.isRange?this.valueLimit[this.currentSlider]:this.valueLimit;if(t>=i[0]&&t<=i[1]){this.setTransform(t);var r=(Math.round(t/this.gap)*(this.spacing*this.multiple)+this.minimum*this.multiple)/this.multiple;this.setCurrentValue(r,e)}else t<i[0]?(this.setTransform(i[0]),this.setCurrentValue(s[0]),1===this.currentSlider&&(this.currentSlider=0)):(this.setTransform(i[1]),this.setCurrentValue(s[1]),0===this.currentSlider&&(this.currentSlider=1))},isDiff:function(t,e){return Object.prototype.toString.call(t)!==Object.prototype.toString.call(e)||(Array.isArray(t)&&t.length===e.length?t.some(function(t,i){return t!==e[i]}):t!==e)},setCurrentValue:function(t,e){if(t<this.minimum||t>this.maximum)return!1;this.isRange?this.isDiff(this.currentValue[this.currentSlider],t)&&(this.currentValue.splice(this.currentSlider,1,t),this.lazy&&this.flag||this.syncValue()):this.isDiff(this.currentValue,t)&&(this.currentValue=t,this.lazy&&this.flag||this.syncValue()),e||this.setPosition()},setIndex:function(t){if(Array.isArray(t)&&this.isRange){var e=void 0;e=this.data?[this.data[t[0]],this.data[t[1]]]:[this.spacing*t[0]+this.minimum,this.spacing*t[1]+this.minimum],this.setValue(e)}else t=this.spacing*t+this.minimum,this.isRange&&(this.currentSlider=t>(this.currentValue[1]-this.currentValue[0])/2+this.currentValue[0]?1:0),this.setCurrentValue(t)},setValue:function(t,e,i){var s=this;if(this.isDiff(this.val,t)){var r=this.limitValue(t);this.val=!1!==r?this.isRange?r.concat():r:this.isRange?t.concat():t,this.syncValue(e)}this.$nextTick(function(){return s.setPosition(i)})},setPosition:function(t){this.flag||this.setTransitionTime(void 0===t?this.speed:t),this.isRange?(this.currentSlider=0,this.setTransform(this.position[this.currentSlider]),this.currentSlider=1,this.setTransform(this.position[this.currentSlider])):this.setTransform(this.position),this.flag||this.setTransitionTime(0)},setTransform:function(t){var e=(\"vertical\"===this.direction?this.dotHeightVal/2-t:t-this.dotWidthVal/2)*(this.reverse?-1:1),i=\"vertical\"===this.direction?\"translateY(\"+e+\"px)\":\"translateX(\"+e+\"px)\",s=(0===this.currentSlider?this.position[1]-t:t-this.position[0])+\"px\",r=(0===this.currentSlider?t:this.position[0])+\"px\";this.isRange?(this.slider[this.currentSlider].style.transform=i,this.slider[this.currentSlider].style.WebkitTransform=i,this.slider[this.currentSlider].style.msTransform=i,\"vertical\"===this.direction?(this.$refs.process.style.height=s,this.$refs.process.style[this.reverse?\"top\":\"bottom\"]=r):(this.$refs.process.style.width=s,this.$refs.process.style[this.reverse?\"right\":\"left\"]=r)):(this.slider.style.transform=i,this.slider.style.WebkitTransform=i,this.slider.style.msTransform=i,\"vertical\"===this.direction?(this.$refs.process.style.height=t+\"px\",this.$refs.process.style[this.reverse?\"top\":\"bottom\"]=0):(this.$refs.process.style.width=t+\"px\",this.$refs.process.style[this.reverse?\"right\":\"left\"]=0))},setTransitionTime:function(t){if(t||this.$refs.process.offsetWidth,this.isRange){for(var e=0;e<this.slider.length;e++)this.slider[e].style.transitionDuration=t+\"s\",this.slider[e].style.WebkitTransitionDuration=t+\"s\";this.$refs.process.style.transitionDuration=t+\"s\",this.$refs.process.style.WebkitTransitionDuration=t+\"s\"}else this.slider.style.transitionDuration=t+\"s\",this.slider.style.WebkitTransitionDuration=t+\"s\",this.$refs.process.style.transitionDuration=t+\"s\",this.$refs.process.style.WebkitTransitionDuration=t+\"s\"},limitValue:function(t){var e=this;if(this.data)return t;var i=!1;return this.isRange?t=t.map(function(t){return t<e.min?(i=!0,e.min):t>e.max?(i=!0,e.max):t}):t>this.max?(i=!0,t=this.max):t<this.min&&(i=!0,t=this.min),i&&t},syncValue:function(t){t||this.$emit(\"callback\",this.val),this.$emit(\"input\",this.isRange?this.val.concat():this.val)},getValue:function(){return this.val},getIndex:function(){return this.currentIndex},getStaticData:function(){this.$refs.elem&&(this.size=\"vertical\"===this.direction?this.$refs.elem.offsetHeight:this.$refs.elem.offsetWidth,this.offset=\"vertical\"===this.direction?this.$refs.elem.getBoundingClientRect().top+window.pageYOffset||document.documentElement.scrollTop:this.$refs.elem.getBoundingClientRect().left)},refresh:function(){this.$refs.elem&&(this.getStaticData(),this.setPosition())}},mounted:function(){var t=this;\"undefined\"!=typeof window&&\"undefined\"!=typeof document&&this.$nextTick(function(){t.getStaticData(),t.setValue(t.value,!0,0),t.bindEvents()})},beforeDestroy:function(){this.unbindEvents()}}},function(t,e,i){\"use strict\";var s=i(0);t.exports=s},function(t,e,i){e=t.exports=i(4)(),e.push([t.i,'.vue-slider-component{position:relative;-webkit-box-sizing:border-box;box-sizing:border-box;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.vue-slider-component.vue-slider-disabled{opacity:.5;cursor:not-allowed}.vue-slider-component.vue-slider-has-label{margin-bottom:15px}.vue-slider-component.vue-slider-disabled .vue-slider-dot{cursor:not-allowed}.vue-slider-component .vue-slider{position:relative;display:block;border-radius:15px;background-color:#ccc}.vue-slider-component .vue-slider:after{content:\"\";position:absolute;left:0;top:0;width:100%;height:100%;z-index:2}.vue-slider-component .vue-slider-process{position:absolute;border-radius:15px;background-color:#3498db;-webkit-transition:all 0s;transition:all 0s;z-index:1}.vue-slider-component.vue-slider-horizontal .vue-slider-process{width:0;height:100%;top:0;left:0;will-change:width}.vue-slider-component.vue-slider-vertical .vue-slider-process{width:100%;height:0;bottom:0;left:0;will-change:height}.vue-slider-component.vue-slider-horizontal-reverse .vue-slider-process{width:0;height:100%;top:0;right:0}.vue-slider-component.vue-slider-vertical-reverse .vue-slider-process{width:100%;height:0;top:0;left:0}.vue-slider-component .vue-slider-dot{position:absolute;border-radius:50%;background-color:#fff;-webkit-box-shadow:.5px .5px 2px 1px rgba(0,0,0,.32);box-shadow:.5px .5px 2px 1px rgba(0,0,0,.32);-webkit-transition:all 0s;transition:all 0s;will-change:transform;cursor:pointer;z-index:3}.vue-slider-component.vue-slider-horizontal .vue-slider-dot{left:0}.vue-slider-component.vue-slider-vertical .vue-slider-dot{bottom:0}.vue-slider-component.vue-slider-horizontal-reverse .vue-slider-dot{right:0}.vue-slider-component.vue-slider-vertical-reverse .vue-slider-dot{top:0}.vue-slider-component .vue-slider-tooltip-wrap{display:none;position:absolute;z-index:9}.vue-slider-component .vue-slider-tooltip{display:block;font-size:14px;white-space:nowrap;padding:2px 5px;min-width:20px;text-align:center;color:#fff;border-radius:5px;border:1px solid #3498db;background-color:#3498db}.vue-slider-component .vue-slider-tooltip-wrap.vue-slider-tooltip-top{top:-9px;left:50%;-webkit-transform:translate(-50%,-100%);transform:translate(-50%,-100%)}.vue-slider-component .vue-slider-tooltip-wrap.vue-slider-tooltip-bottom{bottom:-9px;left:50%;-webkit-transform:translate(-50%,100%);transform:translate(-50%,100%)}.vue-slider-component .vue-slider-tooltip-wrap.vue-slider-tooltip-left{top:50%;left:-9px;-webkit-transform:translate(-100%,-50%);transform:translate(-100%,-50%)}.vue-slider-component .vue-slider-tooltip-wrap.vue-slider-tooltip-right{top:50%;right:-9px;-webkit-transform:translate(100%,-50%);transform:translate(100%,-50%)}.vue-slider-component .vue-slider-tooltip-wrap.vue-slider-tooltip-top .vue-slider-tooltip:before{content:\"\";position:absolute;bottom:-10px;left:50%;width:0;height:0;border:5px solid transparent;border:6px solid transparent\\\\0;border-top-color:inherit;-webkit-transform:translate(-50%);transform:translate(-50%)}.vue-slider-component .vue-slider-tooltip-wrap.vue-slider-tooltip-bottom .vue-slider-tooltip:before{content:\"\";position:absolute;top:-10px;left:50%;width:0;height:0;border:5px solid transparent;border:6px solid transparent\\\\0;border-bottom-color:inherit;-webkit-transform:translate(-50%);transform:translate(-50%)}.vue-slider-component .vue-slider-tooltip-wrap.vue-slider-tooltip-left .vue-slider-tooltip:before{content:\"\";position:absolute;top:50%;right:-10px;width:0;height:0;border:5px solid transparent;border:6px solid transparent\\\\0;border-left-color:inherit;-webkit-transform:translateY(-50%);transform:translateY(-50%)}.vue-slider-component .vue-slider-tooltip-wrap.vue-slider-tooltip-right .vue-slider-tooltip:before{content:\"\";position:absolute;top:50%;left:-10px;width:0;height:0;border:5px solid transparent;border:6px solid transparent\\\\0;border-right-color:inherit;-webkit-transform:translateY(-50%);transform:translateY(-50%)}.vue-slider-component .vue-slider-dot.vue-slider-hover:hover .vue-slider-tooltip-wrap{display:block}.vue-slider-component .vue-slider-dot.vue-slider-always .vue-slider-tooltip-wrap{display:block!important}.vue-slider-component .vue-slider-piecewise{position:absolute;width:100%;padding:0;margin:0;left:0;top:0;height:100%;list-style:none}.vue-slider-component .vue-slider-piecewise-item{position:absolute;width:8px;height:8px}.vue-slider-component .vue-slider-piecewise-dot{position:absolute;left:50%;top:50%;width:100%;height:100%;display:inline-block;background-color:rgba(0,0,0,.16);border-radius:50%;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%);z-index:2;-webkit-transition:all .3s;transition:all .3s}.vue-slider-component .vue-slider-piecewise-item:first-child .vue-slider-piecewise-dot,.vue-slider-component .vue-slider-piecewise-item:last-child .vue-slider-piecewise-dot{visibility:hidden}.vue-slider-component.vue-slider-horizontal-reverse .vue-slider-piecewise-label,.vue-slider-component.vue-slider-horizontal .vue-slider-piecewise-label{position:absolute;display:inline-block;top:100%;left:50%;white-space:nowrap;font-size:12px;color:#333;-webkit-transform:translate(-50%,8px);transform:translate(-50%,8px);visibility:visible}.vue-slider-component.vue-slider-vertical-reverse .vue-slider-piecewise-label,.vue-slider-component.vue-slider-vertical .vue-slider-piecewise-label{position:absolute;display:inline-block;top:50%;left:100%;white-space:nowrap;font-size:12px;color:#333;-webkit-transform:translate(8px,-50%);transform:translate(8px,-50%);visibility:visible}.vue-slider-component .vue-slider-sr-only{clip:rect(1px,1px,1px,1px);height:1px;width:1px;overflow:hidden;position:absolute!important}',\"\"])},function(t,e){t.exports=function(){var t=[];return t.toString=function(){for(var t=[],e=0;e<this.length;e++){var i=this[e];i[2]?t.push(\"@media \"+i[2]+\"{\"+i[1]+\"}\"):t.push(i[1])}return t.join(\"\")},t.i=function(e,i){\"string\"==typeof e&&(e=[[null,e,\"\"]]);for(var s={},r=0;r<this.length;r++){var n=this[r][0];\"number\"==typeof n&&(s[n]=!0)}for(r=0;r<e.length;r++){var o=e[r];\"number\"==typeof o[0]&&s[o[0]]||(i&&!o[2]?o[2]=i:i&&(o[2]=\"(\"+o[2]+\") and (\"+i+\")\"),t.push(o))}},t}},function(t,e){t.exports=function(t,e,i,s){var r,n=t=t||{},o=typeof t.default;\"object\"!==o&&\"function\"!==o||(r=t,n=t.default);var l=\"function\"==typeof n?n.options:n;if(e&&(l.render=e.render,l.staticRenderFns=e.staticRenderFns),i&&(l._scopeId=i),s){var a=Object.create(l.computed||null);Object.keys(s).forEach(function(t){var e=s[t];a[t]=function(){return e}}),l.computed=a}return{esModule:r,exports:n,options:l}}},function(t,e){t.exports={render:function(){var t=this,e=t.$createElement,i=t._self._c||e;return i(\"div\",{directives:[{name:\"show\",rawName:\"v-show\",value:t.show,expression:\"show\"}],ref:\"wrap\",class:[\"vue-slider-component\",t.flowDirection,t.disabledClass,{\"vue-slider-has-label\":t.piecewiseLabel}],style:t.wrapStyles,on:{click:t.wrapClick}},[i(\"div\",{ref:\"elem\",staticClass:\"vue-slider\",style:[t.elemStyles,t.bgStyle],attrs:{\"aria-hidden\":\"true\"}},[t.isRange?[i(\"div\",{ref:\"dot0\",class:[t.tooltipStatus,\"vue-slider-dot\"],style:[t.dotStyles,t.sliderStyles[0]],on:{mousedown:function(e){t.moveStart(0)},touchstart:function(e){t.moveStart(0)}}},[i(\"span\",{class:[\"vue-slider-tooltip-\"+t.tooltipDirection[0],\"vue-slider-tooltip-wrap\"]},[t._t(\"tooltip\",[i(\"span\",{staticClass:\"vue-slider-tooltip\",style:t.tooltipStyles[0]},[t._v(t._s(t.formatter?t.formatting(t.val[0]):t.val[0]))])],{value:t.val[0],index:0})],2)]),t._v(\" \"),i(\"div\",{ref:\"dot1\",class:[t.tooltipStatus,\"vue-slider-dot\"],style:[t.dotStyles,t.sliderStyles[1]],on:{mousedown:function(e){t.moveStart(1)},touchstart:function(e){t.moveStart(1)}}},[i(\"span\",{class:[\"vue-slider-tooltip-\"+t.tooltipDirection[1],\"vue-slider-tooltip-wrap\"]},[t._t(\"tooltip\",[i(\"span\",{staticClass:\"vue-slider-tooltip\",style:t.tooltipStyles[1]},[t._v(t._s(t.formatter?t.formatting(t.val[1]):t.val[1]))])],{value:t.val[1],index:1})],2)])]:[i(\"div\",{ref:\"dot\",class:[t.tooltipStatus,\"vue-slider-dot\"],style:[t.dotStyles,t.sliderStyles],on:{mousedown:t.moveStart,touchstart:t.moveStart}},[i(\"span\",{class:[\"vue-slider-tooltip-\"+t.tooltipDirection,\"vue-slider-tooltip-wrap\"]},[t._t(\"tooltip\",[i(\"span\",{staticClass:\"vue-slider-tooltip\",style:t.tooltipStyles},[t._v(t._s(t.formatter?t.formatting(t.val):t.val))])],{value:t.val})],2)])],t._v(\" \"),i(\"ul\",{staticClass:\"vue-slider-piecewise\"},t._l(t.piecewiseDotWrap,function(e,s){return i(\"li\",{key:s,staticClass:\"vue-slider-piecewise-item\",style:[t.piecewiseDotStyle,e.style]},[t._t(\"piecewise\",[t.piecewise?i(\"span\",{staticClass:\"vue-slider-piecewise-dot\",style:[t.piecewiseStyle,e.inRange?t.piecewiseActiveStyle:null]}):t._e()],{label:e.label,index:s,first:0===s,last:s===t.piecewiseDotWrap.length-1}),t._v(\" \"),t._t(\"label\",[t.piecewiseLabel?i(\"span\",{staticClass:\"vue-slider-piecewise-label\",style:[t.labelStyle,e.inRange?t.labelActiveStyle:null]},[t._v(\"\\n\\t\\t\\t\\t\\t\\t\"+t._s(e.label)+\"\\n\\t\\t\\t\\t\\t\")]):t._e()],{label:e.label,index:s,first:0===s,last:s===t.piecewiseDotWrap.length-1})],2)})),t._v(\" \"),i(\"div\",{ref:\"process\",staticClass:\"vue-slider-process\",style:t.processStyle})],2),t._v(\" \"),t.isRange||t.data?t._e():i(\"input\",{directives:[{name:\"model\",rawName:\"v-model\",value:t.val,expression:\"val\"}],staticClass:\"vue-slider-sr-only\",attrs:{type:\"range\",min:t.min,max:t.max},domProps:{value:t.val},on:{__r:function(e){t.val=e.target.value}}})])},staticRenderFns:[]}},function(t,e,i){var s=i(3);\"string\"==typeof s&&(s=[[t.i,s,\"\"]]),s.locals&&(t.exports=s.locals);i(8)(\"743d98f5\",s,!0)},function(t,e,i){function s(t){for(var e=0;e<t.length;e++){var i=t[e],s=h[i.id];if(s){s.refs++;for(var r=0;r<s.parts.length;r++)s.parts[r](i.parts[r]);for(;r<i.parts.length;r++)s.parts.push(n(i.parts[r]));s.parts.length>i.parts.length&&(s.parts.length=i.parts.length)}else{for(var o=[],r=0;r<i.parts.length;r++)o.push(n(i.parts[r]));h[i.id]={id:i.id,refs:1,parts:o}}}}function r(){var t=document.createElement(\"style\");return t.type=\"text/css\",d.appendChild(t),t}function n(t){var e,i,s=document.querySelector('style[data-vue-ssr-id~=\"'+t.id+'\"]');if(s){if(f)return v;s.parentNode.removeChild(s)}if(m){var n=c++;s=p||(p=r()),e=o.bind(null,s,n,!1),i=o.bind(null,s,n,!0)}else s=r(),e=l.bind(null,s),i=function(){s.parentNode.removeChild(s)};return e(t),function(s){if(s){if(s.css===t.css&&s.media===t.media&&s.sourceMap===t.sourceMap)return;e(t=s)}else i()}}function o(t,e,i,s){var r=i?\"\":s.css;if(t.styleSheet)t.styleSheet.cssText=g(e,r);else{var n=document.createTextNode(r),o=t.childNodes;o[e]&&t.removeChild(o[e]),o.length?t.insertBefore(n,o[e]):t.appendChild(n)}}function l(t,e){var i=e.css,s=e.media,r=e.sourceMap;if(s&&t.setAttribute(\"media\",s),r&&(i+=\"\\n/*# sourceURL=\"+r.sources[0]+\" */\",i+=\"\\n/*# sourceMappingURL=data:application/json;base64,\"+btoa(unescape(encodeURIComponent(JSON.stringify(r))))+\" */\"),t.styleSheet)t.styleSheet.cssText=i;else{for(;t.firstChild;)t.removeChild(t.firstChild);t.appendChild(document.createTextNode(i))}}var a=\"undefined\"!=typeof document;if(\"undefined\"!=typeof DEBUG&&DEBUG&&!a)throw new Error(\"vue-style-loader cannot be used in a non-browser environment. Use { target: 'node' } in your Webpack config to indicate a server-rendering environment.\");var u=i(9),h={},d=a&&(document.head||document.getElementsByTagName(\"head\")[0]),p=null,c=0,f=!1,v=function(){},m=\"undefined\"!=typeof navigator&&/msie [6-9]\\b/.test(navigator.userAgent.toLowerCase());t.exports=function(t,e,i){f=i;var r=u(t,e);return s(r),function(e){for(var i=[],n=0;n<r.length;n++){var o=r[n],l=h[o.id];l.refs--,i.push(l)}e?(r=u(t,e),s(r)):r=[];for(var n=0;n<i.length;n++){var l=i[n];if(0===l.refs){for(var a=0;a<l.parts.length;a++)l.parts[a]();delete h[l.id]}}}};var g=function(){var t=[];return function(e,i){return t[e]=i,t.filter(Boolean).join(\"\\n\")}}()},function(t,e){t.exports=function(t,e){for(var i=[],s={},r=0;r<e.length;r++){var n=e[r],o=n[0],l=n[1],a=n[2],u=n[3],h={id:t+\":\"+r,css:l,media:a,sourceMap:u};s[o]?s[o].parts.push(h):i.push(s[o]={id:o,parts:[h]})}return i}}])});\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/vue-slider-component/dist/index.js\n// module id = 15\n// module chunks = 0","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{attrs:{\"id\":\"geshem\"}},[_c('div',{attrs:{\"id\":\"datetime\"}},[_c('div',{attrs:{\"id\":\"date\"}},[_vm._v(_vm._s(_vm.date))]),_vm._v(\" \"),_c('div',{attrs:{\"id\":\"time\"}},[_vm._v(_vm._s(_vm.time))])]),_vm._v(\" \"),_c('div',{attrs:{\"id\":\"slider\"}},[_c('vue-slider',{ref:\"slider\",attrs:{\"min\":1,\"max\":7,\"height\":20,\"dot-size\":45,\"tooltip\":false},model:{value:(_vm.slider),callback:function ($$v) {_vm.slider=$$v},expression:\"slider\"}})],1)])}\nvar staticRenderFns = []\nvar esExports = { render: render, staticRenderFns: staticRenderFns }\nexport default esExports\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/vue-loader/lib/template-compiler?{\"id\":\"data-v-7d220ade\",\"hasScoped\":false,\"buble\":{\"transforms\":{}}}!./node_modules/vue-loader/lib/selector.js?type=template&index=0!./Geshem.vue\n// module id = 16\n// module chunks = 0"],"sourceRoot":""} \ No newline at end of file
+{"version":3,"sources":["webpack:///build.js","webpack:///webpack/bootstrap 28c446f8136708d15869","webpack:///(webpack)/buildin/global.js","webpack:///./node_modules/mapbox-gl/dist/mapbox-gl.js","webpack:///./geshem.js","webpack:///./node_modules/vue/dist/vue.esm.js","webpack:///./node_modules/timers-browserify/main.js","webpack:///./node_modules/setimmediate/setImmediate.js","webpack:///./node_modules/process/browser.js","webpack:///./Geshem.vue","webpack:///./Geshem.vue?1f22","webpack:///./Geshem.vue?09cd","webpack:///./node_modules/css-loader/lib/css-base.js","webpack:///./node_modules/vue-style-loader/lib/addStylesClient.js","webpack:///./node_modules/vue-style-loader/lib/listToStyles.js","webpack:///./node_modules/vue-loader/lib/component-normalizer.js","webpack:///Geshem.vue","webpack:///./node_modules/vue-slider-component/dist/index.js","webpack:///./Geshem.vue?f1f8"],"names":["modules","__webpack_require__","moduleId","installedModules","exports","module","i","l","call","m","c","d","name","getter","o","Object","defineProperty","configurable","enumerable","get","n","__esModule","object","property","prototype","hasOwnProperty","p","s","g","this","Function","eval","e","window","global","require","f","define","t","r","u","a","Error","code","length","1","_dereq_","amd","glMatrix","Float32Array","Math","sin","cos","v","M","h","y","w","A","F","x","b","j","R","X","Z","k","q","tan","vec3","transformMat3","vec4","transformMat4","mat2","create","rotate","scale","mat3","fromRotation","mat4","identity","translate","multiply","perspective","rotateX","rotateZ","invert","ortho","2","Point","clone","add","_add","sub","_sub","multByPoint","_multByPoint","divByPoint","_divByPoint","mult","_mult","div","_div","_rotate","rotateAround","_rotateAround","matMult","_matMult","unit","_unit","perp","_perp","round","_round","mag","sqrt","equals","dist","distSqr","angle","atan2","angleTo","angleWith","angleWithSep","convert","Array","isArray","3","ShelfPack","autoResize","shelves","freebins","stats","bins","maxId","free","id","maxw","maxh","refcount","pack","concat","width","height","packOne","inPlace","push","shrink","freebin","shelf","waste","getBin","ref","max","allocFreebin","allocShelf","resize","splice","alloc","unref","clear","4","TinySDF","fontSize","buffer","cutoff","fontFamily","fontWeight","radius","size","canvas","document","createElement","ctx","getContext","font","textBaseline","fillStyle","gridOuter","Float64Array","gridInner","z","Int16Array","middle","navigator","userAgent","indexOf","edt","edt1d","INF","draw","clearRect","fillText","getImageData","Uint8ClampedArray","data","pow","min","5","UnitBezier","cx","bx","ax","cy","by","ay","p1x","p1y","p2x","p2y","sampleCurveX","sampleCurveY","sampleCurveDerivativeX","solveCurveX","abs","solve","6","VectorTile","VectorTileFeature","VectorTileLayer","./lib/vectortile.js","./lib/vectortilefeature.js","./lib/vectortilelayer.js","7","layers","readFields","readTile","readVarint","pos","./vectortilelayer","8","properties","extent","type","_pbf","_geometry","_keys","_values","readFeature","readTag","classifyRings","signedArea","types","loadGeometry","readSVarint","bbox","toGeoJSON","PI","atan","exp","geometry","coordinates","@mapbox/point-geometry","9","version","_features","readLayer","readString","readValueMessage","readFloat","readDouble","readVarint64","readBoolean","feature","./vectortilefeature.js","10","WhooTS","format","service","request","srs","join","getURL","getTileBBox","getMercCoords","value","11","earcut","linkedList","eliminateHoles","earcutLinked","insertNode","next","removeNode","filterPoints","steiner","area","prev","indexCurve","isEarHashed","isEar","cureLocalIntersections","splitEarcut","pointInTriangle","zOrder","nextZ","prevZ","intersects","locallyInside","isValidDiagonal","splitPolygon","getLeftmost","sort","compareX","eliminateHole","findHoleBridge","sortLinked","intersectsPolygon","middleInside","Node","deviation","flatten","vertices","holes","dimensions","12","polygonArea","ringArea","rad","wgs84","RADIUS","ring","13","rewind","features","map","curryOuter","correct","correctRings","wind","cw","reverse","geojsonArea","geojson-area","14","clip","clipPoints","clipGeometry","createFeature","tags","outer","S","newSlice","./feature","15","convertFeature","projectPoint","project","geometries","simplify","calcSize","log","./simplify","16","calcBBox","calcRingBBox","17","geojsonvt","GeoJSONVT","options","extend","debug","console","time","maxZoom","tolerance","tiles","tileCoords","timeEnd","indexMaxZoom","indexMaxPoints","total","wrap","intersectX","splitTile","numFeatures","numPoints","JSON","stringify","toID","intersectY","isClippedSquare","source","transform","point","z2","createTile","solidChildren","pop","numSimplified","floor","T","getTile","tile","./clip","./convert","./tile","./transform","./wrap","18","getSqSegDist","19","transformed","addFeature","20","transformTile","transformPoint","21","shiftFeatureCoords","shiftCoords","22","GridIndex","cells","ArrayBuffer","arrayBuffer","Int32Array","NUM_PARAMS","subarray","keys","bboxes","insert","_insertReadonly","padding","uid","_forEachCell","_insertCell","query","slice","_queryCell","_convertToCellCoord","toArrayBuffer","set","23","read","N","NaN","write","isNaN","LN2","24","kdbush","KDBush","defaultGetX","defaultGetY","nodeSize","points","ids","coords","range","within","./range","./sort","./within","25","26","sortKD","select","swapItem","swap","27","sqDist","D","28","isSupported","isBrowser","isArraySupported","isFunctionSupported","isObjectSupported","isJSONSupported","isWorkerSupported","isUint8ClampedArraySupported","isWebGLSupportedCached","failIfMajorPerformanceCaveat","every","filter","forEach","lastIndexOf","some","reduce","reduceRight","bind","getPrototypeOf","getOwnPropertyNames","isSealed","isFrozen","isExtensible","getOwnPropertyDescriptor","defineProperties","seal","freeze","preventExtensions","isWebGLSupportedCache","isWebGLSupported","webGLContextAttributes","probablySupportsContext","supportsContext","mapboxgl","supported","antialias","alpha","stencil","depth","29","Pbf","buf","isView","Uint8Array","readVarintRemainder","toNum","readPackedEnd","Bytes","writeBigVarint","realloc","writeBigVarintLow","writeBigVarintHigh","makeRoomForExtraLength","ceil","writePackedVarint","writeVarint","writePackedSVarint","writeSVarint","writePackedFloat","writeFloat","writePackedDouble","writeDouble","writePackedBoolean","writeBoolean","writePackedFixed32","writeFixed32","writePackedSFixed32","writeSFixed32","writePackedFixed64","writeFixed64","writePackedSFixed64","writeSFixed64","readUInt32","writeInt32","readInt32","readUtf8","String","fromCharCode","writeUtf8","charCodeAt","ieee754","Varint","Fixed64","Fixed32","destroy","skip","readMessage","readFixed32","readSFixed32","readFixed64","readSFixed64","Boolean","readBytes","readPackedVarint","readPackedSVarint","readPackedBoolean","readPackedFloat","readPackedDouble","readPackedFixed32","readPackedSFixed32","readPackedFixed64","readPackedSFixed64","writeTag","finish","writeString","writeBytes","writeRawMessage","writeMessage","writeBytesField","writeFixed32Field","writeSFixed32Field","writeFixed64Field","writeSFixed64Field","writeVarintField","writeSVarintField","writeStringField","writeFloatField","writeDoubleField","writeBooleanField","30","defaultSetTimout","defaultClearTimeout","runTimeout","cachedSetTimeout","setTimeout","runClearTimeout","cachedClearTimeout","clearTimeout","cleanUpNextTick","draining","currentQueue","queue","queueIndex","drainQueue","run","Item","fun","array","noop","process","nextTick","arguments","apply","title","browser","env","argv","versions","on","addListener","once","off","removeListener","removeAllListeners","emit","prependListener","prependOnceListener","listeners","binding","cwd","chdir","umask","31","partialSort","defaultCompare","32","supercluster","SuperCluster","trees","createCluster","zoom","parentId","createPointCluster","lngX","latY","getClusterJSON","getClusterProperties","xLng","yLat","cluster","cluster_id","point_count","point_count_abbreviated","getX","getY","minZoom","initial","load","Date","now","_cluster","getClusters","_limitZoom","getChildren","getLeaves","_appendLeaves","_addTileFeatures","getClusterExpansionZoom","_accumulate","33","TinyQueue","compare","_down","_up","peek","34","super_","constructor","writable","35","copy","fill","readUInt8","36","inspect","seen","stylize","stylizeNoColor","colors","isBoolean","showHidden","_extend","isUndefined","customInspect","stylizeWithColor","formatValue","styles","arrayToHash","isFunction","isString","formatPrimitive","isError","formatError","isRegExp","RegExp","toString","isDate","toUTCString","formatArray","formatProperty","reduceToSingleString","replace","isNumber","isNull","match","split","substr","isNullOrUndefined","isSymbol","isObject","objectToString","isPrimitive","pad","timestamp","getHours","getMinutes","getSeconds","getDate","months","getMonth","formatRegExp","Number","deprecate","throwDeprecation","traceDeprecation","trace","error","noDeprecation","debugEnviron","debugs","debuglog","NODE_DEBUG","toUpperCase","test","pid","bold","italic","underline","inverse","white","grey","black","blue","cyan","green","magenta","red","yellow","special","number","boolean","undefined","null","string","date","regexp","isBuffer","inherits","self","./support/isBuffer","_process","37","fromVectorTileJs","writeTile","fromGeojsonVt","GeoJSONWrapper","writeLayer","values","keycache","valuecache","writeFeature","writeValue","writeProperties","writeGeometry","command","zigzag","./lib/geojson_wrapper","pbf","38","FeatureWrapper","rawGeometry","@mapbox/vector-tile","39","bundleFn","sources","cache","default","random","URL","webkitURL","mozURL","msURL","Blob","bare","createObjectURL","Worker","objectURL","40","FLATTENING","POLAR_RADIUS","41","42","util","deserialize","layerIds","getLayer","createBucket","../util/util","43","addCircleVertex","emplaceBack","SegmentVector","VertexBuffer","IndexBuffer","ref$1","ProgramConfigurationSet","createVertexArrayType","ref$2","TriangleIndexArray","EXTENT","circleInterface","layoutAttributes","components","indexArrayType","paintAttributes","LayoutVertexArrayType","CircleBucket","overscaling","index","layoutVertexArray","indexArray","programConfigurations","segments","populate","sourceLayerIndex","featureIndex","isEmpty","serialize","upload","layoutVertexBuffer","indexBuffer","prepareSegment","vertexLength","primitiveLength","populatePaintArrays","programInterface","../../gl/index_buffer","../../gl/vertex_buffer","../extent","../index_array_type","../load_geometry","../program_configuration","../segment","../vertex_array_type","44","LineIndexArray","fillInterface","indexArrayType2","FillBucket","indexArray2","segments2","indexBuffer2","B","../../util/classify_rings","45","addVertex","FACTOR","isBoundaryEdge","MAX_VERTEX_ARRAY_LENGTH","fillExtrusionInterface","FillExtrusionBucket","V","E","_","I","C","46","addLineVertex","EXTRUDE_SCALE","LINE_DISTANCE_SCALE","vectorTileFeatureTypes","COS_HALF_SHARP_CORNER","MAX_LINE_DISTANCE","LINE_DISTANCE_BUFFER_BITS","lineInterface","useIntegerZoom","LineBucket","layout","getLayoutValue","addLine","distance","e1","e2","e3","L","addCurrentVertex","P","addPieSliceVertex","O","47","addDynamicAttributes","packUint8ToFloat","addCollisionBoxVertex","getSizeData","isFeatureConstant","isLayoutValueFeatureConstant","isZoomConstant","isLayoutValueZoomConstant","layoutSize","getLayoutValueStopZoomLevels","coveringZoomRange","coveringStopValues","functionBase","getLayoutProperty","base","functionType","getSizeVertexData","ref$3","Anchor","getAnchors","resolveTokens","ref$4","getGlyphQuads","getIconQuads","ref$5","shapeText","shapeIcon","WritingMode","transformText","mergeLines","clipLine","scriptDetection","CollisionFeature","findPoleOfInaccessibility","createStructArrayType","verticalizePunctuation","PlacedSymbolArray","members","GlyphOffsetArray","LineVertexArray","dynamicLayoutAttributes","symbolInterfaces","text","icon","collisionBox","SymbolBuffers","dynamicLayoutVertexArray","dynamicLayoutVertexBuffer","SymbolBucket","collisionBoxArray","sdfIcons","iconsNeedLinear","pixelRatio","textSizeData","iconSizeData","placedGlyphArray","placedIconArray","glyphOffsetArray","lineVertexArray","iconDependencies","glyphDependencies","allowsVerticalWritingMode","lookup","charAt","prepare","symbolInstances","tilePixelRatio","compareText","allowsLetterSpacing","horizontal","vertical","sdf","warnOnce","addSymbolInstance","anchorIsTooClose","W","G","$","U","place","maxScale","anchor","boxStartIndex","textBoxStartIndex","boxEndIndex","textBoxEndIndex","iconBoxStartIndex","iconBoxEndIndex","placeCollisionFeature","minScale","line","insertCollisionFeature","featureProperties","addSymbols","glyphQuads","textOffset","writingModes","iconQuads","iconOffset","addToDebugBuffers","writingMode","tl","tr","bl","br","tex","glyphOffset","segment","yStretch","textCollisionFeature","iconCollisionFeature","perspectiveRatio","anchorPoint","x1","y1","x2","y2","placementScale","parseInt","MAX_INSTANCES","programInterfaces","../../shaders/encode_attribute","../../symbol/anchor","../../symbol/clip_line","../../symbol/collision_feature","../../symbol/get_anchors","../../symbol/mergelines","../../symbol/quads","../../symbol/shaping","../../symbol/transform_text","../../util/find_pole_of_inaccessibility","../../util/script_detection","../../util/struct_array","../../util/token","../../util/util","../../util/verticalize_punctuation","48","49","topDownFeatureComparator","featureFilter","Grid","DictionaryCoder","vt","Protobuf","GeoJSONFeature","arraysIntersect","FeatureIndexArray","FeatureIndex","coord","grid","featureIndexArray","rawTileData","bucketLayerIDs","setCollisionTile","collisionTile","vtLayers","sourceLayerCoder","params","tileSize","queryGeometry","additionalRadius","filterMatching","bearing","queryRenderedSymbols","bucketIndex","decode","queryIntersectsFeature","layer","hasLayer","../style-spec/feature_filter","../util/dictionary_coder","../util/struct_array","../util/vectortile_to_geojson","./extent","./load_geometry","grid-index","50","createIndexArrayType","51","bounds","52","PosArray","53","packColor","interpolationFactor","ConstantBinder","defines","populatePaintArray","setUniforms","getPaintValue","uniform4fv","uniforms","uniform1f","SourceFunctionBinder","CompositeFunctionBinder","ProgramConfiguration","binders","cacheKey","createDynamic","_paintSpecifications","isPaintValueFeatureConstant","isPaintValueZoomConstant","PaintVertexArray","interface","createBasicFill","color","opacity","createPaintPropertyStatistics","paintVertexArray","bytesPerElement","paintPropertyStatistics","statistics","paintVertexBuffer","../gl/vertex_buffer","../shaders/encode_attribute","../style-spec/function","./vertex_array_type","54","RasterBoundsArray","55","vertexOffset","primitiveOffset","vaos","56","alignment","57","Coordinate","column","row","zoomTo","_zoomTo","58","LngLat","lng","lat","toArray","toBounds","./lng_lat_bounds","59","LngLatBounds","setSouthWest","setNorthEast","_ne","_sw","getCenter","getSouthWest","getNorthEast","getNorthWest","getWest","getNorth","getSouthEast","getEast","getSouth","./lng_lat","60","interp","TileCoord","glmatrix","Transform","_renderWorldCopies","_minZoom","_maxZoom","latRange","_center","_fov","_pitch","_unmodified","prototypeAccessors","renderWorldCopies","worldSize","centerPoint","pitch","fov","center","unmodified","_calcMatrices","rotationMatrix","clamp","_zoom","zoomScale","tileZoom","zoomFraction","_constrain","coveringZoomLevel","roundZoom","scaleZoom","getVisibleWrappedCoordinates","pointCoordinate","coveringTiles","minzoom","maxzoom","cover","reparseOverscaled","pixelsToGLUnits","unproject","setLocationAtPoint","coordinateLocation","locationCoordinate","locationPoint","coordinatePoint","pointLocation","pixelMatrixInverse","pixelMatrix","calculatePosMatrix","toCoordinate","projMatrix","cameraToTileDistance","sourceMaxZoom","_constraining","lngRange","cameraToCenterDistance","../data/extent","../source/tile_coord","../style-spec/util/interpolate","./coordinate","@mapbox/gl-matrix","61","gl","createBuffer","extVertexArrayObject","getExtension","bindVertexArrayOES","bindBuffer","ELEMENT_ARRAY_BUFFER","bufferData","STATIC_DRAW","deleteBuffer","62","AttributeType","Int8","Uint8","Int16","Uint16","Int32","Uint32","Float32","attributes","itemSize","dynamicDraw","ARRAY_BUFFER","DYNAMIC_DRAW","updateData","bufferSubData","enableAttributes","enableVertexAttribArray","setVertexAttribPointers","vertexAttribPointer","offset","63","Map","NavigationControl","GeolocateControl","AttributionControl","ScaleControl","FullscreenControl","Popup","Marker","Style","Evented","config","rtlTextPlugin","workerCount","hardwareConcurrency","setRTLTextPlugin","accessToken","ACCESS_TOKEN","../package.json","./geo/lng_lat","./geo/lng_lat_bounds","./source/rtl_text_plugin","./style/style","./ui/control/attribution_control","./ui/control/fullscreen_control","./ui/control/geolocate_control","./ui/control/navigation_control","./ui/control/scale_control","./ui/map","./ui/marker","./ui/popup","./util/browser","./util/config","./util/evented","mapbox-gl-supported","64","drawBackground","paint","renderPass","disable","STENCIL_TEST","setDepthSublayer","pattern","isPatternMissing","useProgram","basicFillProgramConfiguration","tileExtentPatternVAO","tileExtentBuffer","u_color","tileExtentVAO","u_opacity","setTile","uniformMatrix4fv","u_matrix","drawArrays","TRIANGLE_STRIP","./pattern","65","drawCircles","depthMask","getBucket","u_camera_to_center_distance","uniform1i","u_scale_with_map","u_pitch_with_map","pixelsToTileUnits","uniform2f","u_extrude_scale","uniform2fv","u_devicepixelratio","devicePixelRatio","translatePosMatrix","posMatrix","TRIANGLES","../source/pixels_to_tile_units","../util/browser","66","drawCollisionDebug","enable","activeTexture","TEXTURE1","frameHistory","u_fadetexture","enableTileClippingMask","lineWidth","u_scale","u_zoom","u_maxzoom","u_collision_y_stretch","u_pitch","LINES","67","drawDebug","drawDebugTile","uniform4f","debugVAO","debugBuffer","LINE_STRIP","createTextVerticies","VertexArrayObject","simplexFont"," ","!","\"","#","%","&","'","(",")","*","+",",","-",".","/","0",":",";","<","=",">","?","@","H","J","K","Q","Y","[","\\","]","^","`","{","|","}","~","../data/pos_array","./vertex_array_object","68","drawFill","drawFillTiles","drawFillTile","getPaintProperty","drawStrokeTile","setFillProgram","u_world","drawingBufferWidth","drawingBufferHeight","currentProgram","69","DEPTH_TEST","clearColor","drawExtrusion","drawExtrusionTexture","prerenderedFrames","TEXTURE0","bindTexture","TEXTURE_2D","texture","u_image","vao","viewportFrames","u_height_factor","setLight","style","light","calculated","position","uniform3fv","u_lightpos","u_lightintensity","intensity","u_lightcolor","70","drawLineTile","lineAtlas","getDash","from","to","fromScale","toScale","u_patternscale_a","u_patternscale_b","u_sdfgamma","imageManager","getPattern","u_pattern_size_a","displaySize","u_pattern_size_b","getPixelSize","u_texsize","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_ratio","71","drawRaster","getSource","depthFunc","LESS","u_brightness_low","u_brightness_high","u_saturation_factor","saturationFactor","u_contrast_factor","contrastFactor","u_spin_weights","spinWeights","u_buffer_scale","u_image0","u_image1","registerFadeDuration","animationLoop","findLoadedParent","getFadeValues","u_tl_parent","u_scale_parent","u_fade_t","mix","ImageSource","boundsBuffer","boundsVAO","rasterBoundsBuffer","rasterBoundsVAO","LEQUAL","timeAdded","refreshedUponExpiration","../source/image_source","72","drawSymbols","drawLayerSymbols","showCollisionBoxes","setSymbolDrawState","u_texture","glyphAtlasTexture","LINEAR","CLAMP_TO_EDGE","iconAtlasTexture","rotating","zooming","NEAREST","symbolProjection","getLabelPlaneMatrix","getGlCoordMatrix","u_gl_coord_matrix","u_label_plane_matrix","identityMat4","updateLineLabels","drawTileSymbols","u_is_text","u_is_size_zoom_constant","u_is_size_feature_constant","symbolSize","evaluateSizeForZoom","uSizeT","u_size_t","uSize","u_size","u_aspect_ratio","u_rotate_symbol","u_gamma_scale","u_is_halo","drawSymbolElements","../symbol/projection","../symbol/symbol_size","./draw_collision_debug","73","FrameHistory","changeTimes","changeOpacities","opacities","previousZoom","firstFrame","record","changed","isVisible","texSubImage2D","ALPHA","UNSIGNED_BYTE","createTexture","texParameteri","TEXTURE_WRAP_S","TEXTURE_WRAP_T","TEXTURE_MIN_FILTER","TEXTURE_MAG_FILTER","texImage2D","74","makeGlyphAtlas","AlphaImage","bitmap","rect","metrics","image","positions","../util/image","@mapbox/shelf-pack","75","loadGlyphRange","isChar","asyncAll","GlyphManager","requestTransform","localIdeographFontFamily","entries","setURL","url","getGlyphs","stack","glyphs","requests","glyph","_tinySDF","tinySDF","left","top","advance","../style/load_glyph_range","../util/is_char_in_unicode_block","@mapbox/tiny-sdf","76","imagePosition","textureRect","makeImageAtlas","RGBAImage","77","Texture","ImageManager","images","loaded","requestors","shelfPack","patterns","atlasImage","dirty","isLoaded","setLoaded","callback","_notify","getImage","addImage","removeImage","bin","getImages","atlasTexture","update","RGBA","./image_atlas","./texture","78","LineAtlas","nextRow","bytes","addDash","REPEAT","79","SourceCache","shaders","Program","RenderTexture","symbol","circle","fill-extrusion","raster","background","Painter","_tileTextures","setup","numSublayers","maxUnderzooming","maxOverzooming","depthEpsilon","lineWidthRange","getParameter","ALIASED_LINE_WIDTH_RANGE","emptyProgramConfiguration","viewport","deleteTexture","deleteFramebuffer","fbo","depthRbo","deleteRenderbuffer","BLEND","blendFunc","ONE","ONE_MINUS_SRC_ALPHA","_depthMask","extTextureFilterAnisotropic","extTextureFilterAnisotropicMax","MAX_TEXTURE_MAX_ANISOTROPY_EXT","COLOR_BUFFER_BIT","clearStencil","stencilMask","STENCIL_BUFFER_BIT","clearDepth","DEPTH_BUFFER_BIT","_renderTileClippingMasks","colorMask","stencilOp","KEEP","REPLACE","_tileClippingMaskIDs","stencilFunc","ALWAYS","EQUAL","render","glyphManager","getTransition","duration","sourceCaches","used","_order","_layers","has3DPass","isHidden","getVisibleCoordinates","_setup3DRenderbuffer","bindWithDepth","renderLayer","unbind","showOverdrawInspector","depthRange","currentLayer","_showOverdrawInspector","isTileClipped","showTileBoundaries","createRenderbuffer","bindRenderbuffer","RENDERBUFFER","renderbufferStorage","DEPTH_COMPONENT16","depthRboAttached","saveTileTexture","getTileTexture","CONSTANT_COLOR","blendColor","_createProgramCached","program","../data/program_configuration","../data/raster_bounds_array","../shaders","../source/source_cache","./draw_background","./draw_circle","./draw_debug","./draw_fill","./draw_fill_extrusion","./draw_line","./draw_raster","./draw_symbol","./frame_history","./program","./render_texture","80","u_scale_a","u_scale_b","u_tile_units_to_pixels","u_pixel_coord_upper","u_pixel_coord_lower","81","createProgram","toFixed","prelude","fragmentSource","vertexSource","createShader","FRAGMENT_SHADER","shaderSource","compileShader","attachShader","VERTEX_SHADER","bindAttribLocation","linkProgram","numAttributes","getProgramParameter","ACTIVE_ATTRIBUTES","getActiveAttrib","getAttribLocation","ACTIVE_UNIFORMS","getActiveUniform","getUniformLocation","drawElements","UNSIGNED_SHORT","82","createFramebuffer","bindFramebuffer","FRAMEBUFFER","framebufferTexture2D","COLOR_ATTACHMENT0","attachedRbo","framebufferRenderbuffer","DEPTH_ATTACHMENT","83","pixelStorei","UNPACK_ALIGNMENT","UNPACK_PREMULTIPLY_ALPHA_WEBGL","84","boundProgram","boundVertexBuffer","boundVertexBuffer2","boundIndexBuffer","boundVertexOffset","boundDynamicVertexBuffer","freshBind","createVertexArrayOES","currentNumAttributes","disableVertexAttribArray","deleteVertexArrayOES","85","86","fillOutline","fillOutlinePattern","fillPattern","fillExtrusion","fillExtrusionPattern","extrusionTexture","linePattern","lineSDF","symbolIcon","symbolSDF","re","programName","87","CanvasSource","animate","__proto__","getElementById","contextType","fire","context","_hasInvalidDimensions","play","_rerender","pause","cancel","_finishLoading","getCanvas","onAdd","onRemove","readCanvas","CanvasRenderingContext2D","canvasData","WebGLRenderingContext","readPixels","secondaryContext","createImageData","_prepareImage","painter","../util/window","./image_source","88","resolveURL","href","ResourceType","GeoJSONSource","dispatcher","setEventedParent","_data","_options","workerOptions","geojsonVtOptions","superclusterOptions","clusterMaxZoom","clusterRadius","dataType","_updateWorkerData","sourceDataType","setData","_transformRequest","Source","workerID","send","_loaded","loadTile","state","unloadVectorData","aborted","loadVectorData","redoWhenDone","redoPlacement","abortTile","unloadTile","broadcast","../util/ajax","../util/evented","89","loadGeoJSONTile","_geoJSONIndexes","vtpbf","byteOffset","byteLength","vectorTile","rawData","ajax","VectorTileWorkerSource","GeoJSONWorkerSource","loadGeoJSON","loadData","reloadTile","getJSON","parse","removeSource","./geojson_wrapper","./vector_tile_worker_source","geojson-rewind","geojson-vt","vt-pbf","90","_feature","_geojsonTileLayer","91","textureLoaded","Image","setCoordinates","centerCoord","getCoordinatesCenter","_boundsArray","HTMLVideoElement","ImageData","buckets","../geo/lng_lat","../render/vertex_array_object","./tile_coord","92","normalizeURL","normalizeSourceURL","pick","vector_layers","vectorLayers","vectorLayerIds","frame","../util/mapbox","93","94","sortTilesIn","mergeRenderedFeatureLayers","queryResults","wrappedTileID","rendered","tilesIn","wrapped","queryRenderedFeatures","getRenderableIds","getTileByID","querySourceFeatures","95","loadTileJSON","normalizeTileURL","TileBounds","RasterTileSource","scheme","tileBounds","hasTile","contains","Tile","_refreshExpiredTiles","setExpiryData","cacheControl","expires","LINEAR_MIPMAP_NEAREST","texParameterf","TEXTURE_MAX_ANISOTROPY_EXT","generateMipmap","abort","./load_tilejson","./tile_bounds","96","pluginRequested","pluginBlobURL","evented","registerForPluginAvailability","errorCallback","createBlobURL","clearRTLTextPlugin","getArrayBuffer","applyArabicShaping","processBidirectionalText","97","sourceTypes","vector","geojson","video","bindAll","getType","setType","../source/canvas_source","../source/geojson_source","../source/raster_tile_source","../source/vector_tile_source","../source/video_source","98","coordinateToTilePoint","compareKeyZoom","isRasterType","createSource","Cache","_sourceLoaded","_paused","reload","_sourceErrored","_source","_tiles","_cache","_unloadTile","_timers","_cacheTimers","_maxTileCacheSize","_isIdRenderable","resume","_shouldReloadOnResume","_loadTile","_abortTile","getIds","hasData","_coveredTiles","reset","_reloadTile","_tileLoaded","status","getTime","_setTileReloadTimer","getZoom","_findLoadedChildren","parent","has","getWithoutRemoving","updateCacheSize","setMaxSize","_updateRetainedTiles","fromID","fadeEndTime","_addTile","keysDifference","_removeTile","wasRequested","children","scaledTo","uses","getExpiryTimeout","_setCacheInvalidationTimer","remove","stopPlacementThrottler","clearTiles","../geo/coordinate","../util/lru_cache","./source","99","deserializeBucket","CollisionTile","CollisionBoxArray","Throttler","uniqueId","expirationTime","expiredRequestCount","placementThrottler","_immediateRedoPlacement","iconAtlasImage","glyphAtlasImage","reloadSymbolData","placementSource","invoke","uploaded","queryRadius","sourceLayer","parseCacheControl","stop","../data/bucket","../data/bucket/symbol_bucket","../data/feature_index","../render/texture","../symbol/collision_box","../symbol/collision_tile","../util/throttler","100","validateBounds","minX","minY","maxX","maxY","../geo/lng_lat_bounds","101","edge","x0","y0","dx","dy","scanSpans","scanTriangle","getQuadkey","@mapbox/whoots-js","102","VectorTileSource","reloadCallback","103","loadVectorTile","WorkerTile","actor","layerIndex","loading","removeTile","result","transferables","./worker_tile","104","VideoSource","urls","getVideo","loop","addEventListener","readyState","105","Actor","StyleLayerIndex","globalRTLTextPlugin","layerIndexes","workerSourceTypes","workerSources","registerWorkerSource","registerRTLTextPlugin","setLayers","getLayerIndex","updateLayers","removedIds","symbolOrder","getWorkerSource","loadWorkerSource","importScripts","loadRTLTextPlugin","../style/style_layer_index","../util/actor","./geojson_worker_source","./rtl_text_plugin","106","recalculateLayers","recalculate","serializeBuckets","symbolBuckets","familiesBySource","encode","visibility","mapObject","stacks","icons","../render/glyph_atlas","../render/image_atlas","107","deref","refProperties","derefLayers","./util/ref_properties","108","diffSources","operations","args","isEqual","addSource","diffLayerPropertyChanges","pluckId","indexById","diffLayers","removeLayer","addLayer","setLayoutProperty","setPaintProperty","setFilter","setLayerZoomRange","setLayerProperty","diffStyles","setStyle","setCenter","setZoom","setBearing","setPitch","sprite","setSprite","setGlyphs","transition","setTransition","warn","lodash.isequal","109","ValidationError","message","__line__","110","createFilter","compile","compileComparisonOp","compileLogicalOp","compileNegation","compileInOp","compileHasOp","compilePropertyReference","111","xyz2lab","t3","t2","t0","lab2xyz","t1","xyz2rgb","rgb2xyz","rgbToLab","Xn","Yn","Zn","labToRgb","rgbToHcl","rad2deg","hclToRgb","deg2rad","lab","forward","hcl","112","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","113","getKey","groupByLayout","114","clamp_css_byte","clamp_css_float","parse_css_int","parseFloat","parse_css_float","css_hue_to_rgb","parseCSSColor","toLowerCase","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","115","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","116","bindCallback","117","getNative","isNative","funcTag","reIsNative","fnToString","reIsHostCtor","118","isArguments","isArrayLikeObject","propertyIsEnumerable","isArrayLike","isLength","genTag","MAX_SAFE_INTEGER","119","nativeIsArray","120","lodash._baseisequal","lodash._bindcallback","121","typedArrayTags","122","getLength","isIndex","reIsUint","shimKeys","keysIn","nativeKeys","lodash._getnative","lodash.isarguments","123","./v8.json","124","$version","$root","required","metadata","period","units","source_tile","source_geojson","maximum","minimum","source_video","source_image","source_canvas","2d","webgl","experimental-webgl","webgl2","source-layer","paint.*","layout_background","visible","none","layout_fill","layout_circle","layout_fill-extrusion","layout_line","line-cap","zoom-function","butt","square","line-join","property-function","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","icon-text-fit","both","icon-text-fit-padding","icon-image","tokens","icon-rotate","icon-padding","icon-keep-upright","icon-offset","icon-anchor","right","bottom","top-left","top-right","bottom-left","bottom-right","icon-pitch-alignment","text-pitch-alignment","text-rotation-alignment","text-field","text-font","text-size","text-max-width","text-line-height","text-letter-spacing","text-justify","text-anchor","text-max-angle","text-rotate","text-padding","text-keep-upright","text-transform","uppercase","lowercase","text-offset","text-allow-overlap","text-ignore-placement","text-optional","layout_raster","filter_operator","==","!=",">=","<=","in","!in","all","any","!has","geometry_type","LineString","Polygon","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-pitch-alignment","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","125","126","127","vec2","128","parseColorString","csscolorparser","129","130","valueOf","131","constants","enum","valueSpec","key","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","132","validate","arrayElementValidator","arrayIndex","./validate","133","134","135","136","unbundle","../util/unbundle_jsonlint","137","validateEnum","138","validateObject","validateArray","validateNumber","objectElementValidators","isFinite","139","validateString","140","validateFilter","validatePaintProperty","validateLayoutProperty","layerType","./validate_layout_property","./validate_paint_property","141","validateProperty","./validate_property","142","143","144","validateSpec","objectKey","145","146","exec","147","148","149","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","150","AnimationLoop","times","stopped","151","validateStyle","StyleDeclaration","StyleTransition","specifications","Light","_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","152","normalizeGlyphsURL","parseGlyphPBF","Glyphs","./parse_glyph_pbf","153","normalizeSpriteURL","SpriteJSON","SpriteImage","154","readFontstacks","readFontstack","readGlyph","border","GLYPH_PBF_BORDER","155","getMaximumPaintValue","translateDistance","156","StyleLayer","loadSprite","mapbox","Dispatcher","getSourceType","setSourceType","QueryFeatures","MapboxGLFunction","getWorkerPool","diff","supportedDiffOperations","ignoredDiffOperations","isMapboxURL","zoomHistory","_resetUpdates","_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","../render/glyph_manager","../render/image_manager","../render/line_atlas","../source/query_features","../source/rtl_text_plugin","../source/source","../style-spec/deref","../style-spec/diff","../util/dispatcher","../util/global_worker_pool","./animation_loop","./light","./load_sprite","./style_layer","157","stopZoomLevels","_functionInterpolationT","calculateInterpolationT","158","getDeclarationValue","_layoutSpecifications","_paintTransitions","_paintTransitionOptions","_paintDeclarations","_layoutDeclarations","_layoutFunctions","_updateLayoutValue","getPaintValueStopZoomLevels","getPaintInterpolationT","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","159","multiPolygonIntersectsBufferedMultiPoint","CircleStyleLayer","../../data/bucket/circle_bucket","../../util/intersection_tests","../query_utils","../style_layer","160","multiPolygonIntersectsMultiPolygon","FillExtrusionStyleLayer","../../data/bucket/fill_extrusion_bucket","161","FillStyleLayer","oldTransition","../../data/bucket/fill_bucket","162","getLineWidth","offsetLine","multiPolygonIntersectsBufferedMultiLine","LineStyleLayer","../../data/bucket/line_bucket","163","SymbolStyleLayer","../../data/bucket/symbol_bucket","164","_layerConfigs","../style-spec/group_by_layout","165","interpZoomTransitioned","fakeZoomHistory","startTime","zoomTransitioned","_calculateTargetValue","easeCubicInOut","166","../style-spec/validate_style.min","167","168","checkMaxAngle","angleDelta","shift","169","170","StructType","anchorPointX","anchorPointY","171","_addLineCollisionBoxes","172","intersectionTests","ignoredGrid","reverseRotationMatrix","tempCollisionBox","edges","bbox0","bbox1","bbox2","bbox3","offsetX","offsetY","unadjustedMaxScale","getPlacementScale","polygonIntersectsPolygon","../util/intersection_tests","173","resample","../symbol/anchor","./check_max_angle","174","175","signedDistanceFromCamera","anchorX","anchorY","placementZoom","evaluateSizeForFeature","placeGlyphsAlongLine","notEnoughRoom","needsFlipping","hideGlyphs","numGlyphs","lineOffsetX","lineOffsetY","glyphStartIndex","lineStartIndex","lineLength","placeGlyphAlongLine","projectTruncatedLineSegment","offscreenPoint","./symbol_size","176","positionedGlyphs","../style/parse_glyph_pbf","177","breakLines","substring","trim","determineLineBreaks","shapeLines","determineAverageLineWidth","calculateBadness","calculatePenalty","evaluateBreak","badness","priorBreak","leastBadBreaks","whitespace","breakable","charAllowsIdeographicBreaking","getAnchorAlignment","horizontalAlign","verticalAlign","charHasUprightVerticalOrientation","justifyLine","align","../util/script_detection","../util/verticalize_punctuation","178","lowerSize","upperSize","179","toLocaleUpperCase","toLocaleLowerCase","180","DOM","handlers","scrollZoom","boxZoom","dragRotate","dragPan","keyboard","doubleClickZoom","touchZoomRotate","mousePos","isActive","toElement","target","parentNode","touches","preventDefault","lngLat","originalEvent","touchPos","lngLats","getCanvasContainer","interactive","../util/dom","./handler/box_zoom","./handler/dblclick_zoom","./handler/drag_pan","./handler/drag_rotate","./handler/keyboard","./handler/scroll_zoom","./handler/touch_zoom_rotate","181","Camera","moving","_bearingSnap","bearingSnap","jumpTo","panBy","panTo","easeTo","zoomIn","zoomOut","getBearing","rotateTo","resetNorth","snapToNorth","getPitch","fitBounds","linear","flyTo","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","182","getDefaultPosition","compact","_map","_container","classList","_updateAttributions","_updateEditLink","_updateData","_updateCompact","_editLink","querySelector","styleOwner","styleId","_hash","getHashString","owner","attribution","innerHTML","offsetWidth","../../util/config","../../util/dom","183","_fullscreen","_fullscreenchange","_className","_mapContainer","getContainer","_checkFullscreenSupport","_setupUI","display","removeEventListener","_changeIcon","fullscreenEnabled","mozFullScreenEnabled","msFullscreenEnabled","webkitFullscreenEnabled","_fullscreenButton","setAttribute","_onClickFullscreen","_isFullscreen","fullscreenElement","mozFullScreenElement","webkitFullscreenElement","msFullscreenElement","toggle","exitFullscreen","mozCancelFullScreen","msExitFullscreen","webkitCancelFullScreen","requestFullscreen","mozRequestFullScreen","msRequestFullscreen","webkitRequestFullscreen","../../util/window","184","checkGeolocationSupport","supportsGeolocation","permissions","then","geolocation","defaultOptions","positionOptions","enableHighAccuracy","timeout","fitBoundsOptions","trackUserLocation","showUserLocation","className","_geolocationWatchID","clearWatch","_userLocationDotMarker","_onSuccess","_lastKnownPosition","_watchState","_geolocateButton","_updateMarker","_updateCamera","_dotElement","_finish","longitude","latitude","accuracy","geolocateSource","setLngLat","addTo","_onError","_clearWatch","_timeoutId","_onClickGeolocate","watchPosition","getCurrentPosition","../../geo/lng_lat","../../util/evented","../marker","185","LogoControl","appendChild","_updateLogo","_logoRequired","mapbox_logo","186","DragRotateHandler","_zoomInButton","_createButton","_zoomOutButton","_compass","_compassArrow","_rotateCompassArrow","_handler","button","element","pitchWithRotate","../handler/drag_rotate","187","updateScale","maxWidth","clientHeight","getDistance","setScale","getRoundNum","acos","_onMove","188","189","BoxZoomHandler","_el","isEnabled","_enabled","_active","_onMouseDown","shiftKey","_onMouseMove","_onKeyDown","_onMouseUp","disableDrag","_startPos","_box","_fireEvent","setTransform","boxZoomBounds","keyCode","enableDrag","../../geo/lng_lat_bounds","190","DoubleClickZoomHandler","_onDblClick","191","inertiaEasing","DragPanHandler","_onDown","_ignoreEvent","_onTouchEnd","_pos","_inertia","_drainInertiaBuffer","_onUp","ctrlKey","192","_button","_pitchWithRotate","InstallTrigger","platform","capture","193","easeOut","KeyboardHandler","altKey","metaKey","194","ua","firefox","safari","ScrollZoomHandler","_onWheel","_aroundCenter","deltaY","deltaMode","WheelEvent","DOM_DELTA_PIXEL","DOM_DELTA_LINE","wheelDeltaY","_time","_type","_lastValue","_timeout","_onTimeout","../../util/browser","195","TouchZoomRotateHandler","_onStart","disableRotation","_rotationDisabled","enableRotation","_startVec","_startScale","_startBearing","_gestureIntent","_onEnd","196","Hash","_onHashChange","_updateHash","location","hash","history","replaceState","197","removeChild","HTMLImageElement","bindHandlers","attributionControl","preserveDrawingBuffer","trackResize","refreshExpiredTiles","maxTileCacheSize","transformRequest","_interactive","_failIfMajorPerformanceCaveat","_preserveDrawingBuffer","_trackResize","container","maxBounds","setMaxBounds","_setupContainer","_setupPainter","_update","_onWindowOnline","_onWindowResize","_classes","classes","setClasses","addControl","logoPosition","_onData","_onDataLoading","repaint","_controlPositions","insertBefore","firstChild","removeControl","addClass","_classOptions","removeClass","hasClass","getClasses","_containerDimensions","_resizeCanvas","getBounds","getMaxBounds","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","./events","./hash","198","smartWrap","_offset","_element","_popup","_onMapClick","getLngLat","_lngLat","getElement","setPopup","togglePopup","getPopup","isOpen","../util/smart_wrap","199","normalizeOffset","closeButton","closeOnClick","_onClickClose","_content","setText","setDOMContent","createTextNode","setHTML","createDocumentFragment","_createContent","_closeButton","_tip","200","mapId","callbacks","callbackID","receive","postMessage","targetMapId","sourceMapId","./util","201","makeRequest","XMLHttpRequest","open","headers","setRequestHeader","withCredentials","credentials","sameOrigin","protocol","host","Unknown","AJAXError","onerror","statusText","onload","response","responseType","getResponseHeader","revokeObjectURL","src","onloadstart","crossOrigin","./window","202","performance","requestAnimationFrame","mozRequestAnimationFrame","webkitRequestAnimationFrame","msRequestAnimationFrame","cancelAnimationFrame","mozCancelAnimationFrame","webkitCancelAnimationFrame","msCancelAnimationFrame","drawImage","supportsWebp","webpImgTest","203","WebWorkify","workerURL","../../source/worker","../window","webworkify","204","205","compareAreas","quickselect","calculateSignedArea","206","API_URL","REQUIRE_ACCESS_TOKEN","207","_stringToNumber","_numberToString","208","workerPool","actors","currentActor","acquire","release","./actor","209","testProp","docStyle","userSelect","documentElement","selectProp","transformProp","suppressClick","stopPropagation","getBoundingClientRect","clientX","clientLeft","clientY","clientTop","changedTouches","210","_addEventListener","_removeEventListener","_listeners","_oneTimeListeners","listens","_eventedParent","_eventedParentData","211","compareMax","Cell","pointToPolygonDist","SQRT2","distToSegmentSquared","getCentroidCell","Queue","./intersection_tests","tinyqueue","212","globalWorkerPool","WorkerPool","./worker_pool","213","createImage","RangeError","resizeImage","copyImage","214","polygonContainsPoint","lineIntersectsLine","pointIntersectsBufferedLine","multiPolygonContainsPoint","lineIntersectsBufferedLine","lineSegmentIntersectsLineSegment","isCounterClockwise","215","unicodeBlockLookup","Latin-1 Supplement","Arabic","Arabic Supplement","Arabic Extended-A","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","Arabic Presentation Forms-A","Vertical Forms","CJK Compatibility Forms","Small Form Variants","Arabic Presentation Forms-B","Halfwidth and Fullwidth Forms","216","LRUCache","order","217","makeAPIURL","parseUrl","authority","path","formatUrl","help","replaceTempAccessToken","urlRe","imageExtensionRe","./browser","./config","218","allowsIdeographicBreaking","charAllowsLetterSpacing","charHasNeutralVerticalOrientation","charHasRotatedVerticalOrientation","./is_char_in_unicode_block","219","220","structArrayTypeCache","sizeOf","Struct","createAccessors","StructArray","createEmplaceBack","_usedTypes","viewTypes","BYTES_PER_ELEMENT","getArrayViewName","createMemberComponentString","Int8Array","Uint16Array","Uint32Array","_structArray","_pos1","_pos2","_pos4","_pos8","isTransferred","capacity","_refreshViews","_trim","uint8","221","frequency","throttledFunction","lastInvocation","pendingInvocation","222","223","warnOnceHistory","isClosedPolygon","@mapbox/unitbezier","224","Feature","_vectorTileFeature","_z","_x","_y","toJSON","225","¢","£","¥","¦","¬","¯","–","—","‘","’","“","”","…","‧","₩","、","。","〈","〉","《","》","「","」","『","』","【","】","〔","〕","〖","〗","!","(",")",",","-",".",":",";","<",">","?","[","]","_","{","|","}","⦅","⦆","。","「","」","./script_detection","226","WebWorker","active","workers","terminate","../","./web_worker","__webpack_exports__","__WEBPACK_IMPORTED_MODULE_0_mapbox_gl__","__WEBPACK_IMPORTED_MODULE_0_mapbox_gl___default","__WEBPACK_IMPORTED_MODULE_1_vue__","__WEBPACK_IMPORTED_MODULE_2__Geshem_vue__","el","setImmediate","isUndef","isDef","isTrue","isFalse","obj","isPlainObject","_toString","isValidArrayIndex","val","toNumber","makeMap","str","expectsLowerCase","list","arr","item","hasOwn","cached","fn","boundFn","_length","ret","_from","toObject","res","looseEqual","isObjectA","isObjectB","isArrayA","isArrayB","keysA","keysB","looseIndexOf","called","isReserved","def","parsePath","bailRE","Ctor","pushTarget","_target","Dep","targetStack","popTarget","createTextVNode","VNode","cloneVNode","vnode","deep","cloned","tag","elm","componentOptions","asyncFactory","ns","isStatic","isComment","isCloned","cloneVNodes","vnodes","len","protoAugment","copyAugment","observe","asRootData","ob","__ob__","Observer","observerState","shouldConvert","isServerRendering","_isVue","vmCount","defineReactive","customSetter","shallow","dep","setter","childOb","depend","dependArray","newVal","notify","del","mergeData","toVal","fromVal","mergeDataOrFn","parentVal","childVal","vm","instanceData","defaultData","mergeHook","mergeAssets","normalizeProps","props","camelize","normalizeInject","inject","normalized","normalizeDirectives","dirs","directives","mergeOptions","child","mergeField","strat","strats","defaultStrat","extendsFrom","extends","mixins","resolveAsset","warnMissing","assets","camelizedId","PascalCaseId","capitalize","validateProp","propOptions","propsData","prop","absent","isType","hyphenate","getPropDefaultValue","prevShouldConvert","$options","_props","handleError","err","info","cur","$parent","hooks","errorCaptured","globalHandleError","errorHandler","logError","inBrowser","flushCallbacks","pending","copies","withMacroTask","_withTask","useMacroTask","cb","macroTimerFunc","microTimerFunc","Promise","resolve","createFnInvoker","fns","invoker","arguments$1","updateListeners","oldOn","remove$$1","old","event","normalizeEvent","passive","mergeVNodeHook","hookKey","hook","wrappedHook","oldHook","merged","extractPropsFromVNodeData","attrs","checkProp","preserve","simpleNormalizeChildren","normalizeChildren","normalizeArrayChildren","isTextNode","node","nestedIndex","lastIndex","last","_isVList","ensureCtor","comp","hasSymbol","Symbol","toStringTag","createAsyncPlaceholder","factory","createEmptyVNode","asyncMeta","resolveAsyncComponent","baseCtor","errorComp","resolved","loadingComp","contexts","sync","forceRender","$forceUpdate","reject","reason","component","isAsyncPlaceholder","getFirstComponentChild","initEvents","_events","_hasHookEvent","_parentListeners","updateComponentListeners","$once","$on","remove$1","$off","oldListeners","resolveSlots","slots","defaultSlot","slot","functionalContext","isWhitespace","resolveScopedSlots","initLifecycle","abstract","$children","$refs","_watcher","_inactive","_directInactive","_isMounted","_isDestroyed","_isBeingDestroyed","mountComponent","hydrating","$el","callHook","updateComponent","Watcher","$vnode","updateChildComponent","parentVnode","renderChildren","hasChildren","_renderChildren","scopedSlots","$scopedSlots","emptyObject","_parentVnode","_vnode","$attrs","$listeners","propKeys","_propKeys","$slots","isInInactiveTree","activateChildComponent","direct","deactivateChildComponent","$emit","resetSchedulerState","activatedChildren","waiting","flushing","flushSchedulerQueue","watcher","activatedQueue","updatedQueue","callActivatedHooks","callUpdatedHooks","devtools","queueActivatedComponent","queueWatcher","traverse","seenObjects","_traverse","isA","depId","proxy","sourceKey","sharedPropertyDefinition","initState","_watchers","opts","initProps","methods","initMethods","initData","computed","initComputed","watch","nativeWatch","initWatch","propsOptions","isRoot","getData","watchers","_computedWatchers","isSSR","userDef","computedWatcherOptions","defineComputed","shouldCache","createComputedGetter","evaluate","handler","createWatcher","keyOrFn","$watch","initProvide","provide","_provided","initInjections","resolveInject","Reflect","ownKeys","provideKey","provideDefault","renderList","renderSlot","fallback","bindObject","scopedSlotFn","slotNodes","resolveFilter","checkKeyCodes","eventKeyCode","builtInAlias","eventKeyName","keyCodes","bindObjectProps","asProp","isSync","isReservedAttribute","mustUseProp","domProps","$event","renderStatic","isInFor","renderFns","staticRenderFns","tree","_renderProxy","markStatic","markOnce","isOnce","markStaticNode","bindObjectListeners","existing","ours","installRenderHelpers","_o","_n","_s","_l","_t","_q","_i","_m","_f","_k","_b","_v","_e","_u","_g","FunctionalRenderContext","injections","contextVm","isCompiled","_compiled","needNormalization","_scopeId","_c","functionalScopeId","createFunctionalComponent","mergeProps","renderContext","functionalOptions","createComponent","_base","cid","resolveConstructorOptions","model","transformModel","functional","nativeOn","mergeHooks","createComponentInstanceForVnode","parentElm","refElm","vnodeComponentOptions","_isComponent","_componentTag","_parentElm","_refElm","inlineTemplate","hooksToMerge","fromParent","componentVNodeHooks","mergeHook$1","one","two","normalizationType","alwaysNormalize","ALWAYS_NORMALIZE","_createElement","is","SIMPLE_NORMALIZE","getTagNamespace","isReservedTag","parsePlatformTagName","applyNS","force","initRender","$createElement","parentData","initInternalComponent","super","superOptions","modifiedOptions","resolveModifiedOptions","extendOptions","modified","latest","extended","sealed","sealedOptions","dedupe","Vue$3","_init","initUse","Vue","use","plugin","installedPlugins","_installedPlugins","unshift","install","initMixin$1","mixin","initExtend","Super","SuperId","cachedCtors","_Ctor","Sub","initProps$1","initComputed$1","ASSET_TYPES","Comp","initAssetRegisters","definition","getComponentName","matches","pruneCache","keepAliveInstance","cachedNode","pruneCacheEntry","current","cached$$1","componentInstance","$destroy","genClassForVnode","childNode","mergeClassData","renderClass","staticClass","class","dynamicClass","stringifyClass","stringifyArray","stringifyObject","stringified","isSVG","isUnknownElement","unknownElementCache","HTMLUnknownElement","HTMLElement","selected","createElement$1","tagName","multiple","createElementNS","namespace","namespaceMap","createComment","newNode","referenceNode","nextSibling","setTextContent","textContent","registerRef","isRemoval","refs","refInFor","sameVnode","sameInputType","typeA","typeB","isTextInputType","createKeyToOldIdx","beginIdx","endIdx","updateDirectives","oldVnode","oldDir","dir","isCreate","emptyNode","isDestroy","oldDirs","normalizeDirectives$1","newDirs","dirsWithInsert","dirsWithPostpatch","oldValue","callHook$1","componentUpdated","inserted","callInsert","modifiers","emptyModifiers","getRawDirName","rawName","updateAttrs","inheritAttrs","oldAttrs","setAttr","isIE9","isEdge","isXlink","removeAttributeNS","xlinkNS","getXlinkProp","isEnumeratedAttr","removeAttribute","isBooleanAttr","isFalsyAttrValue","setAttributeNS","updateClass","oldData","cls","transitionClass","_transitionClasses","_prevClass","parseFilters","pushFilter","filters","lastFilterIndex","expression","inSingle","inDouble","inTemplateString","inRegex","curly","paren","validDivisionCharRE","wrapFilter","baseWarn","msg","pluckModuleFunction","addProp","addAttr","addDirective","arg","addHandler","important","events","native","nativeEvents","newHandler","getBindingAttr","getStatic","dynamicValue","getAndRemoveAttr","staticValue","removeFromMap","attrsMap","attrsList","genComponentModel","valueExpression","assignment","genAssignmentCode","parseModel","index$1","expressionPos","expressionEndPos","eof","chr","isStringStart","parseString","parseBracket","inBracket","stringQuote","_warn","warn$1","genSelect","genCheckboxModel","genRadioModel","genDefaultModel","valueBinding","trueValueBinding","falseValueBinding","selectedVal","lazy","needCompositionGuard","RANGE_TOKEN","normalizeEvents","isIE","CHECKBOX_RADIO_TOKEN","change","createOnceHandler","target$1","onceHandler","remove$2","add$1","once$$1","supportsPassive","updateDOMListeners","updateDOMProps","oldProps","childNodes","_value","strCur","shouldUpdateValue","checkVal","composing","isDirty","isInputChanged","notInFocus","activeElement","_vModifiers","normalizeStyleData","normalizeStyleBinding","staticStyle","bindingStyle","parseStyleText","checkChild","styleData","updateStyle","oldStaticStyle","oldStyleBinding","normalizedStyle","oldStyle","newStyle","setProp","getAttribute","tar","resolveTransition","css","autoCssTransition","nextFrame","raf","addTransitionClass","transitionClasses","removeTransitionClass","whenTransitionEnds","expectedType","getTransitionInfo","propCount","TRANSITION","transitionEndEvent","animationEndEvent","ended","end","onEnd","getComputedStyle","transitionDelays","transitionProp","transitionDurations","transitionTimeout","getTimeout","animationDelays","animationProp","animationDurations","animationTimeout","ANIMATION","hasTransform","transformRE","delays","durations","toMs","enter","toggleDisplay","_leaveCb","cancelled","_enterCb","nodeType","enterClass","enterToClass","enterActiveClass","appearClass","appearToClass","appearActiveClass","beforeEnter","afterEnter","enterCancelled","beforeAppear","appear","afterAppear","appearCancelled","activeInstance","transitionNode","isAppear","isRootInsert","startClass","activeClass","toClass","beforeEnterHook","enterHook","afterEnterHook","enterCancelledHook","explicitEnterDuration","expectsCSS","userWantsControl","getHookArgumentsLength","show","pendingNode","_pending","isValidDuration","leave","rm","performLeave","beforeLeave","leaveClass","leaveActiveClass","leaveToClass","explicitLeaveDuration","afterLeave","leaveCancelled","delayLeave","invokerFns","_enter","setSelected","actuallySetSelected","isMultiple","option","getValue","selectedIndex","hasNoMatchingOption","onCompositionStart","onCompositionEnd","trigger","createEvent","initEvent","dispatchEvent","locateNode","getRealChild","compOptions","extractTransitionData","key$1","placeholder","rawChild","hasParentTransition","isSameChild","oldChild","callPendingCbs","_moveCb","recordPosition","newPos","applyTranslation","oldPos","moved","WebkitTransform","transitionDuration","parseText","delimiters","tagRE","buildRegex","defaultTagRE","transformNode","classBinding","genData","transformNode$1","styleBinding","genData$1","decodeAttr","shouldDecodeNewlines","encodedAttrWithNewLines","encodedAttr","decodingMap","parseHTML","html","parseEndTag","lowerCasedTagName","lowerCasedTag","lastTag","expectHTML","isUnaryTag$$1","isUnaryTag","no","canBeLeftOpenTag$$1","canBeLeftOpenTag","isPlainTextElement","endTagLength","stackedTag","reStackedTag","reCache","rest$1","endTag","shouldIgnoreFirstNewline","chars","textEnd","comment","commentEnd","shouldKeepComment","conditionalComment","conditionalEnd","doctypeMatch","doctype","endTagMatch","curIndex","startTagMatch","startTagOpen","attr","startTagClose","attribute","unarySlash","isNonPhrasingTag","unary","IS_REGEX_CAPTURING_BROKEN","rest","createASTElement","makeAttrsMap","template","endPre","pre","inVPre","platformIsPreTag","inPre","warn$2","isPreTag","platformMustUseProp","platformGetTagNamespace","transforms","preTransforms","postTransforms","root","currentParent","preserveWhitespace","comments","guardIESVGBug","isForbiddenTag","forbidden","processPre","processRawAttrs","processed","processFor","processIf","processOnce","processElement","if","elseif","else","addIfCondition","block","processIfConditions","slotScope","plain","slotTarget","i$1","lastNode","isTextTag","decodeHTMLCached","processKey","processRef","processSlot","processComponent","processAttrs","checkInFor","inMatch","forAliasRE","for","alias","iteratorMatch","forIteratorRE","iterator1","iterator2","findPrevElement","condition","ifConditions","slotName","isProp","dirRE","hasBindings","parseModifiers","modifierRE","bindRE","camel","onRE","argMatch","argRE","ieNSBug","ieNSPrefix","preTransformNode","typeBinding","ifCondition","ifConditionExtra","branch0","cloneASTElement","addRawAttr","branch1","branch2","optimize","isStaticKey","genStaticKeysCached","staticKeys","isPlatformReservedTag","markStatic$1","markStaticRoots","genStaticKeys$1","static","l$1","staticInFor","staticRoot","isBuiltInTag","isDirectChildOfTemplateFor","genHandlers","genHandler","isMethodPath","simplePathRE","isFunctionExpression","fnExpRE","genModifierCode","modifierCode","genGuard","keyModifier","genKeyFilter","genFilterCode","keyVal","wrapListeners","bind$1","wrapData","generate","ast","CodegenState","genElement","staticProcessed","genStatic","onceProcessed","genOnce","forProcessed","genFor","ifProcessed","genIf","genSlot","genComponent","genData$2","genChildren","onceId","altGen","altEmpty","genIfConditions","conditions","genTernaryExp","altHelper","genDirectives","dataGenFns","genProps","genScopedSlots","genInlineTemplate","needRuntime","hasRuntime","gen","inlineRenderFns","genScopedSlot","genForScopedSlot","checkSkip","altGenElement","altGenNode","el$1","getNormalizationType","maybeComponent","genNode","needsNormalization","genComment","genText","transformSpecialNewlines","bind$$1","componentName","errors","createCompileToFunctionFn","compiled","fnGenErrors","getOuterHTML","outerHTML","cloneNode","camelizeRE","hyphenateRE","SSR_ATTR","LIFECYCLE_HOOKS","optionMergeStrategies","silent","productionTip","warnHandler","ignoredElements","isReservedAttr","_lifecycleHooks","hasProto","UA","isAndroid","isIOS","_isServer","_Set","VUE_ENV","__VUE_DEVTOOLS_GLOBAL_HOOK__","Set","subs","addSub","removeSub","addDep","raw","arrayProto","arrayMethods","method","original","observeArray","arrayKeys","walk","items","MessageChannel","channel","port","port2","port1","onmessage","uid$2","expOrFn","user","deps","newDeps","depIds","newDepIds","cleanupDeps","this$1","tmp","teardown","init","$mount","keepAlive","mountedNode","prepatch","uid$1","_uid","_self","dataDef","propsDef","$set","$delete","immediate","hookRE","cbs","prevEl","prevVnode","prevActiveInstance","__patch__","__vue__","$nextTick","_rendered","patternTypes","KeepAlive","include","exclude","created","destroyed","builtInComponents","configDef","delete","ssrContext","emptyStyle","acceptValue","svg","math","isHTMLTag","nodeOps","baseModules","klass","cssText","listDelimiter","propertyDelimiter","cssVarRE","importantRE","setProperty","normalizedName","normalize","vendorNames","capName","hasTransition","ontransitionend","onwebkittransitionend","onanimationend","onwebkitanimationend","activate","platformModules","patch","backend","emptyNodeAt","createRmCb","childElm","createElm","insertedVnodeQueue","nested","setScope","createChildren","invokeCreateHooks","isReactivated","initComponent","reactivateComponent","pendingInsert","isPatchable","innerNode","ref$$1","ancestor","addVnodes","startIdx","invokeDestroyHook","removeVnodes","ch","removeAndInvokeRemoveHook","updateChildren","oldCh","newCh","removeOnly","oldKeyToIdx","idxInOld","vnodeToMove","oldStartIdx","newStartIdx","oldEndIdx","oldStartVnode","oldEndVnode","newEndIdx","newStartVnode","newEndVnode","canMove","patchVnode","findIdxInOld","hydrate","postpatch","invokeInsertHook","hasChildNodes","childrenMatch","isRenderedModule","isInitialPatch","isRealElement","hasAttribute","oldElm","parentElm$1","patchable","i$2","vmodel","model$1","_vOptions","prevOptions","curOptions","transition$$1","originalDisplay","__vOriginalDisplay","platformDirectives","transitionProps","mode","Transition","_leaving","oldRawChild","delayedLeave","moveClass","TransitionGroup","prevChildren","rawChildren","transitionData","kept","removed","c$1","beforeUpdate","updated","hasMove","_reflow","body","propertyName","_hasMove","platformComponents","decoder","content","encoded","regexEscapeRE","close","klass$1","style$1","he","ncname","qnameCapture","&lt;","&gt;","&quot;","&amp;","&#10;","isIgnoreNewlineTag","model$2","modules$1","directives$1","baseOptions","esc","tab","space","up","down","prevent","ctrl","alt","meta","baseDirectives","cloak","createCompiler","baseCompile","finalOptions","tips","tip","compileToFunctions","idToTemplate","mount","Timeout","clearFn","_id","_clearFn","setInterval","clearInterval","enroll","msecs","_idleTimeoutId","_idleTimeout","unenroll","_unrefActive","clearImmediate","task","tasksByHandle","nextHandle","registerImmediate","handle","runIfPresent","currentlyRunningATask","doc","attachTo","postMessageIsAsynchronous","oldOnMessage","messagePrefix","onGlobalMessage","attachEvent","script","onreadystatechange","marker","injectStyle","__WEBPACK_IMPORTED_MODULE_0__babel_loader_node_modules_vue_loader_lib_selector_type_script_index_0_Geshem_vue__","__WEBPACK_IMPORTED_MODULE_1__node_modules_vue_loader_lib_template_compiler_index_id_data_v_7d220ade_hasScoped_false_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_Geshem_vue__","normalizeComponent","__vue_styles__","Component","locals","cssWithMappingToString","useSourceMap","cssMapping","btoa","sourceMapping","toComment","sourceRoot","sourceMap","unescape","encodeURIComponent","mediaQuery","alreadyImportedModules","addStylesToDom","domStyle","stylesInDom","parts","addStyle","createStyleElement","styleElement","head","isProduction","isOldIE","styleIndex","singletonCounter","singletonElement","applyToSingletonTag","applyToTag","newObj","media","styleSheet","replaceText","cssNode","hasDocument","DEBUG","listToStyles","getElementsByTagName","_isProduction","newList","mayRemove","textStore","replacement","newStyles","part","rawScriptExports","compiledTemplate","functionalTemplate","injectStyles","scopeId","moduleIdentifier","esModule","scriptExports","__VUE_SSR_CONTEXT__","_registeredComponents","_ssrRegister","beforeCreate","_injectStyles","_defineProperty","__WEBPACK_IMPORTED_MODULE_0_vue_slider_component__","__WEBPACK_IMPORTED_MODULE_0_vue_slider_component___default","__WEBPACK_IMPORTED_MODULE_1_mapbox_gl__","__WEBPACK_IMPORTED_MODULE_1_mapbox_gl___default","vue-slider","_ref","imgs","slider","rasterCoords","280","curImg","addRadarSource","addRadarLayer","removeRadarLayer","flag","currentValue","currentSlider","dotWidthVal","dotWidth","dotSize","dotHeightVal","dotHeight","disabled","piecewise","tooltip","eventType","direction","clickable","realTime","piecewiseLabel","sliderStyle","tooltipDir","formatter","piecewiseStyle","piecewiseActiveStyle","processStyle","bgStyle","tooltipStyle","labelStyle","labelActiveStyle","flowDirection","tooltipDirection","isRange","tooltipStatus","tooltipClass","isDisabled","disabledClass","dot0","dot1","dot","currentIndex","spacing","indexRange","gap","limit","valueLimit","wrapStyles","sliderStyles","tooltipStyles","elemStyles","dotStyles","piecewiseDotStyle","piecewiseDotWrap","label","formatting","inRange","setValue","limitValue","refresh","bindEvents","moveEnd","unbindEvents","getPos","getStaticData","pageY","wrapClick","setValueOnPos","moveStart","targetTouches","isDiff","syncValue","setPosition","setCurrentValue","setIndex","setTransitionTime","msTransform","WebkitTransitionDuration","getIndex","elem","pageYOffset","scrollTop","mounted","beforeDestroy","vue-slider-has-label","click","aria-hidden","mousedown","touchstart","first","__r","_vm","_h","dot-size","$$v","esExports"],"mappings":"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","file":"build.js","sourcesContent":["/******/ (function(modules) { // webpackBootstrap\n/******/ \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// 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 = \"/static/js/\";\n/******/\n/******/ \t// Load entry module and return exports\n/******/ \treturn __webpack_require__(__webpack_require__.s = 2);\n/******/ })\n/************************************************************************/\n/******/ ([\n/* 0 */\n/***/ (function(module, exports) {\n\nvar 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/* 1 */\n/***/ (function(module, exports, __webpack_require__) {\n\n/* WEBPACK VAR INJECTION */(function(global) {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;o<r.length;o++)s(r[o]);return s})({1:[function(_dereq_,module,exports){\n!function(t,n){\"object\"==typeof exports&&\"undefined\"!=typeof module?module.exports=n():\"function\"==typeof define&&define.amd?define(n):t.glMatrix=n()}(this,function(){\"use strict\";function t(t,n,r){var e=n[0],a=n[1],o=n[2];return t[0]=e*r[0]+a*r[3]+o*r[6],t[1]=e*r[1]+a*r[4]+o*r[7],t[2]=e*r[2]+a*r[5]+o*r[8],t}function n(t,n,r){var e=n[0],a=n[1],o=n[2],u=n[3];return t[0]=r[0]*e+r[4]*a+r[8]*o+r[12]*u,t[1]=r[1]*e+r[5]*a+r[9]*o+r[13]*u,t[2]=r[2]*e+r[6]*a+r[10]*o+r[14]*u,t[3]=r[3]*e+r[7]*a+r[11]*o+r[15]*u,t}function r(){var t=new Float32Array(4);return t[0]=1,t[1]=0,t[2]=0,t[3]=1,t}function e(t,n,r){var e=n[0],a=n[1],o=n[2],u=n[3],i=Math.sin(r),c=Math.cos(r);return t[0]=e*c+o*i,t[1]=a*c+u*i,t[2]=e*-i+o*c,t[3]=a*-i+u*c,t}function a(t,n,r){var e=n[0],a=n[1],o=n[2],u=n[3],i=r[0],c=r[1];return t[0]=e*i,t[1]=a*i,t[2]=o*c,t[3]=u*c,t}function o(){var t=new Float32Array(9);return t[0]=1,t[1]=0,t[2]=0,t[3]=0,t[4]=1,t[5]=0,t[6]=0,t[7]=0,t[8]=1,t}function u(t,n){var r=Math.sin(n),e=Math.cos(n);return t[0]=e,t[1]=r,t[2]=0,t[3]=-r,t[4]=e,t[5]=0,t[6]=0,t[7]=0,t[8]=1,t}function i(){var t=new Float32Array(16);return t[0]=1,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=1,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[10]=1,t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,t}function c(t){return t[0]=1,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=1,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[10]=1,t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,t}function f(t,n){var r=n[0],e=n[1],a=n[2],o=n[3],u=n[4],i=n[5],c=n[6],f=n[7],v=n[8],s=n[9],l=n[10],M=n[11],h=n[12],m=n[13],y=n[14],d=n[15],p=r*i-e*u,w=r*c-a*u,A=r*f-o*u,F=e*c-a*i,x=e*f-o*i,b=a*f-o*c,g=v*m-s*h,j=v*y-l*h,R=v*d-M*h,X=s*y-l*m,Z=s*d-M*m,k=l*d-M*y,q=p*k-w*Z+A*X+F*R-x*j+b*g;return q?(q=1/q,t[0]=(i*k-c*Z+f*X)*q,t[1]=(a*Z-e*k-o*X)*q,t[2]=(m*b-y*x+d*F)*q,t[3]=(l*x-s*b-M*F)*q,t[4]=(c*R-u*k-f*j)*q,t[5]=(r*k-a*R+o*j)*q,t[6]=(y*A-h*b-d*w)*q,t[7]=(v*b-l*A+M*w)*q,t[8]=(u*Z-i*R+f*g)*q,t[9]=(e*R-r*Z-o*g)*q,t[10]=(h*x-m*A+d*p)*q,t[11]=(s*A-v*x-M*p)*q,t[12]=(i*j-u*X-c*g)*q,t[13]=(r*X-e*j+a*g)*q,t[14]=(m*w-h*F-y*p)*q,t[15]=(v*F-s*w+l*p)*q,t):null}function v(t,n,r){var e=n[0],a=n[1],o=n[2],u=n[3],i=n[4],c=n[5],f=n[6],v=n[7],s=n[8],l=n[9],M=n[10],h=n[11],m=n[12],y=n[13],d=n[14],p=n[15],w=r[0],A=r[1],F=r[2],x=r[3];return t[0]=w*e+A*i+F*s+x*m,t[1]=w*a+A*c+F*l+x*y,t[2]=w*o+A*f+F*M+x*d,t[3]=w*u+A*v+F*h+x*p,w=r[4],A=r[5],F=r[6],x=r[7],t[4]=w*e+A*i+F*s+x*m,t[5]=w*a+A*c+F*l+x*y,t[6]=w*o+A*f+F*M+x*d,t[7]=w*u+A*v+F*h+x*p,w=r[8],A=r[9],F=r[10],x=r[11],t[8]=w*e+A*i+F*s+x*m,t[9]=w*a+A*c+F*l+x*y,t[10]=w*o+A*f+F*M+x*d,t[11]=w*u+A*v+F*h+x*p,w=r[12],A=r[13],F=r[14],x=r[15],t[12]=w*e+A*i+F*s+x*m,t[13]=w*a+A*c+F*l+x*y,t[14]=w*o+A*f+F*M+x*d,t[15]=w*u+A*v+F*h+x*p,t}function s(t,n,r){var e,a,o,u,i,c,f,v,s,l,M,h,m=r[0],y=r[1],d=r[2];return n===t?(t[12]=n[0]*m+n[4]*y+n[8]*d+n[12],t[13]=n[1]*m+n[5]*y+n[9]*d+n[13],t[14]=n[2]*m+n[6]*y+n[10]*d+n[14],t[15]=n[3]*m+n[7]*y+n[11]*d+n[15]):(e=n[0],a=n[1],o=n[2],u=n[3],i=n[4],c=n[5],f=n[6],v=n[7],s=n[8],l=n[9],M=n[10],h=n[11],t[0]=e,t[1]=a,t[2]=o,t[3]=u,t[4]=i,t[5]=c,t[6]=f,t[7]=v,t[8]=s,t[9]=l,t[10]=M,t[11]=h,t[12]=e*m+i*y+s*d+n[12],t[13]=a*m+c*y+l*d+n[13],t[14]=o*m+f*y+M*d+n[14],t[15]=u*m+v*y+h*d+n[15]),t}function l(t,n,r){var e=r[0],a=r[1],o=r[2];return t[0]=n[0]*e,t[1]=n[1]*e,t[2]=n[2]*e,t[3]=n[3]*e,t[4]=n[4]*a,t[5]=n[5]*a,t[6]=n[6]*a,t[7]=n[7]*a,t[8]=n[8]*o,t[9]=n[9]*o,t[10]=n[10]*o,t[11]=n[11]*o,t[12]=n[12],t[13]=n[13],t[14]=n[14],t[15]=n[15],t}function M(t,n,r){var e=Math.sin(r),a=Math.cos(r),o=n[4],u=n[5],i=n[6],c=n[7],f=n[8],v=n[9],s=n[10],l=n[11];return n!==t&&(t[0]=n[0],t[1]=n[1],t[2]=n[2],t[3]=n[3],t[12]=n[12],t[13]=n[13],t[14]=n[14],t[15]=n[15]),t[4]=o*a+f*e,t[5]=u*a+v*e,t[6]=i*a+s*e,t[7]=c*a+l*e,t[8]=f*a-o*e,t[9]=v*a-u*e,t[10]=s*a-i*e,t[11]=l*a-c*e,t}function h(t,n,r){var e=Math.sin(r),a=Math.cos(r),o=n[0],u=n[1],i=n[2],c=n[3],f=n[4],v=n[5],s=n[6],l=n[7];return n!==t&&(t[8]=n[8],t[9]=n[9],t[10]=n[10],t[11]=n[11],t[12]=n[12],t[13]=n[13],t[14]=n[14],t[15]=n[15]),t[0]=o*a+f*e,t[1]=u*a+v*e,t[2]=i*a+s*e,t[3]=c*a+l*e,t[4]=f*a-o*e,t[5]=v*a-u*e,t[6]=s*a-i*e,t[7]=l*a-c*e,t}function m(t,n,r,e,a){var o=1/Math.tan(n/2),u=1/(e-a);return t[0]=o/r,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=o,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[10]=(a+e)*u,t[11]=-1,t[12]=0,t[13]=0,t[14]=2*a*e*u,t[15]=0,t}function y(t,n,r,e,a,o,u){var i=1/(n-r),c=1/(e-a),f=1/(o-u);return t[0]=-2*i,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=-2*c,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[10]=2*f,t[11]=0,t[12]=(n+r)*i,t[13]=(a+e)*c,t[14]=(u+o)*f,t[15]=1,t}(function(){var t=new Float32Array(3);t[0]=0,t[1]=0,t[2]=0})(),function(){var t=new Float32Array(4);t[0]=0,t[1]=0,t[2]=0,t[3]=0}();return{vec3:{transformMat3:t},vec4:{transformMat4:n},mat2:{create:r,rotate:e,scale:a},mat3:{create:o,fromRotation:u},mat4:{create:i,identity:c,translate:s,scale:l,multiply:v,perspective:m,rotateX:M,rotateZ:h,invert:f,ortho:y}}});\n},{}],2:[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)},multByPoint:function(t){return this.clone()._multByPoint(t)},divByPoint:function(t){return this.clone()._divByPoint(t)},mult:function(t){return this.clone()._mult(t)},div:function(t){return this.clone()._div(t)},rotate:function(t){return this.clone()._rotate(t)},rotateAround:function(t,n){return this.clone()._rotateAround(t,n)},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},_multByPoint:function(t){return this.x*=t.x,this.y*=t.y,this},_divByPoint:function(t){return this.x/=t.x,this.y/=t.y,this},_unit:function(){return this._div(this.mag()),this},_perp:function(){var t=this.y;return this.y=this.x,this.x=-t,this},_rotate:function(t){var 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},_rotateAround:function(t,n){var i=Math.cos(t),s=Math.sin(t),r=n.x+i*(this.x-n.x)-s*(this.y-n.y),h=n.y+s*(this.x-n.x)+i*(this.y-n.y);return this.x=r,this.y=h,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},{}],3:[function(_dereq_,module,exports){\n!function(t,e){\"object\"==typeof exports&&\"undefined\"!=typeof module?module.exports=e():\"function\"==typeof define&&define.amd?define(e):t.ShelfPack=e()}(this,function(){function t(t,e,i){i=i||{},this.w=t||64,this.h=e||64,this.autoResize=!!i.autoResize,this.shelves=[],this.freebins=[],this.stats={},this.bins={},this.maxId=0}function e(t,e,i){this.x=0,this.y=t,this.w=this.free=e,this.h=i}function i(t,e,i,s,h,n,r){this.id=t,this.x=e,this.y=i,this.w=s,this.h=h,this.maxw=n||s,this.maxh=r||h,this.refcount=0}return t.prototype.pack=function(t,e){t=[].concat(t),e=e||{};for(var i,s,h,n,r=[],f=0;f<t.length;f++)if(i=t[f].w||t[f].width,s=t[f].h||t[f].height,h=t[f].id,i&&s){if(!(n=this.packOne(i,s,h)))continue;e.inPlace&&(t[f].x=n.x,t[f].y=n.y,t[f].id=n.id),r.push(n)}return this.shrink(),r},t.prototype.packOne=function(t,i,s){var h,n,r,f,o={freebin:-1,shelf:-1,waste:1/0},a=0;if(\"string\"==typeof s||\"number\"==typeof s){if(h=this.getBin(s))return this.ref(h),h;\"number\"==typeof s&&(this.maxId=Math.max(s,this.maxId))}else s=++this.maxId;for(f=0;f<this.freebins.length;f++){if(h=this.freebins[f],i===h.maxh&&t===h.maxw)return this.allocFreebin(f,t,i,s);i>h.maxh||t>h.maxw||i<=h.maxh&&t<=h.maxw&&(r=h.maxw*h.maxh-t*i)<o.waste&&(o.waste=r,o.freebin=f)}for(f=0;f<this.shelves.length;f++)if(n=this.shelves[f],a+=n.h,!(t>n.free)){if(i===n.h)return this.allocShelf(f,t,i,s);i>n.h||i<n.h&&(r=(n.h-i)*t)<o.waste&&(o.freebin=-1,o.waste=r,o.shelf=f)}if(-1!==o.freebin)return this.allocFreebin(o.freebin,t,i,s);if(-1!==o.shelf)return this.allocShelf(o.shelf,t,i,s);if(i<=this.h-a&&t<=this.w)return n=new e(a,this.w,i),this.allocShelf(this.shelves.push(n)-1,t,i,s);if(this.autoResize){var u,l,c,p;return u=l=this.h,c=p=this.w,(c<=u||t>c)&&(p=2*Math.max(t,c)),(u<c||i>u)&&(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.shrink=function(){if(this.shelves.length>0){for(var t=0,e=0,i=0;i<this.shelves.length;i++){var s=this.shelves[i];e+=s.h,t=Math.max(s.w-s.free,t)}this.resize(t,e)}},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;i<this.shelves.length;i++)this.shelves[i].resize(t);return!0},e.prototype.alloc=function(t,e,s){if(t>this.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},{}],4:[function(_dereq_,module,exports){\n\"use strict\";function TinySDF(t,i,s,e,h,r){this.fontSize=t||24,this.buffer=void 0===i?3:i,this.cutoff=e||.25,this.fontFamily=h||\"sans-serif\",this.fontWeight=r||\"normal\",this.radius=s||8;var a=this.size=this.fontSize+2*this.buffer;this.canvas=document.createElement(\"canvas\"),this.canvas.width=this.canvas.height=a,this.ctx=this.canvas.getContext(\"2d\"),this.ctx.font=this.fontWeight+\" \"+this.fontSize+\"px \"+this.fontFamily,this.ctx.textBaseline=\"middle\",this.ctx.fillStyle=\"black\",this.gridOuter=new Float64Array(a*a),this.gridInner=new Float64Array(a*a),this.f=new Float64Array(a),this.d=new Float64Array(a),this.z=new Float64Array(a+1),this.v=new Int16Array(a),this.middle=Math.round(a/2*(navigator.userAgent.indexOf(\"Gecko/\")>=0?1.2:1))}function edt(t,i,s,e,h,r,a){for(var n=0;n<i;n++){for(var o=0;o<s;o++)e[o]=t[o*i+n];for(edt1d(e,h,r,a,s),o=0;o<s;o++)t[o*i+n]=h[o]}for(o=0;o<s;o++){for(n=0;n<i;n++)e[n]=t[o*i+n];for(edt1d(e,h,r,a,i),n=0;n<i;n++)t[o*i+n]=Math.sqrt(h[n])}}function edt1d(t,i,s,e,h){s[0]=0,e[0]=-INF,e[1]=+INF;for(var r=1,a=0;r<h;r++){for(var n=(t[r]+r*r-(t[s[a]]+s[a]*s[a]))/(2*r-2*s[a]);n<=e[a];)a--,n=(t[r]+r*r-(t[s[a]]+s[a]*s[a]))/(2*r-2*s[a]);a++,s[a]=r,e[a]=n,e[a+1]=+INF}for(r=0,a=0;r<h;r++){for(;e[a+1]<r;)a++;i[r]=(r-s[a])*(r-s[a])+t[s[a]]}}module.exports=TinySDF;var INF=1e20;TinySDF.prototype.draw=function(t){this.ctx.clearRect(0,0,this.size,this.size),this.ctx.fillText(t,this.buffer,this.middle);for(var i=this.ctx.getImageData(0,0,this.size,this.size),s=new Uint8ClampedArray(this.size*this.size),e=0;e<this.size*this.size;e++){var h=i.data[4*e+3]/255;this.gridOuter[e]=1===h?0:0===h?INF:Math.pow(Math.max(0,.5-h),2),this.gridInner[e]=1===h?INF:0===h?0:Math.pow(Math.max(0,h-.5),2)}for(edt(this.gridOuter,this.size,this.size,this.f,this.d,this.v,this.z),edt(this.gridInner,this.size,this.size,this.f,this.d,this.v,this.z),e=0;e<this.size*this.size;e++){var r=this.gridOuter[e]-this.gridInner[e];s[e]=Math.max(0,Math.min(255,Math.round(255-255*(r/this.radius+this.cutoff))))}return s};\n},{}],5:[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){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)<i)return s;var u=this.sampleCurveDerivativeX(s);if(Math.abs(u)<1e-6)break;s-=h/u}if(e=0,r=1,(s=t)<e)return e;if(s>r)return r;for(;e<r;){if(h=this.sampleCurveX(s),Math.abs(h-t)<i)return s;t>h?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},{}],6:[function(_dereq_,module,exports){\nmodule.exports.VectorTile=_dereq_(\"./lib/vectortile.js\"),module.exports.VectorTileFeature=_dereq_(\"./lib/vectortilefeature.js\"),module.exports.VectorTileLayer=_dereq_(\"./lib/vectortilelayer.js\");\n},{\"./lib/vectortile.js\":7,\"./lib/vectortilefeature.js\":8,\"./lib/vectortilelayer.js\":9}],7:[function(_dereq_,module,exports){\n\"use strict\";function VectorTile(e,r){this.layers=e.readFields(readTile,{},r)}function readTile(e,r,i){if(3===e){var t=new VectorTileLayer(i,i.readVarint()+i.pos);t.length&&(r[t.name]=t)}}var VectorTileLayer=_dereq_(\"./vectortilelayer\");module.exports=VectorTile;\n},{\"./vectortilelayer\":9}],8:[function(_dereq_,module,exports){\n\"use strict\";function VectorTileFeature(e,t,r,a,i){this.properties={},this.extent=r,this.type=0,this._pbf=e,this._geometry=-1,this._keys=a,this._values=i,e.readFields(readFeature,this,t)}function readFeature(e,t,r){1==e?t.id=r.readVarint():2==e?readTag(r,t):3==e?t.type=r.readVarint():4==e&&(t._geometry=r.pos)}function readTag(e,t){for(var r=e.readVarint()+e.pos;e.pos<r;){var a=t._keys[e.readVarint()],i=t._values[e.readVarint()];t.properties[a]=i}}function classifyRings(e){var t=e.length;if(t<=1)return[e];for(var r,a,i=[],o=0;o<t;o++){var n=signedArea(e[o]);0!==n&&(void 0===a&&(a=n<0),a===n<0?(r&&i.push(r),r=[e[o]]):r.push(e[o]))}return r&&i.push(r),i}function signedArea(e){for(var t,r,a=0,i=0,o=e.length,n=o-1;i<o;n=i++)t=e[i],r=e[n],a+=(r.x-t.x)*(t.y+r.y);return a}var Point=_dereq_(\"@mapbox/point-geometry\");module.exports=VectorTileFeature,VectorTileFeature.types=[\"Unknown\",\"Point\",\"LineString\",\"Polygon\"],VectorTileFeature.prototype.loadGeometry=function(){var e=this._pbf;e.pos=this._geometry;for(var t,r=e.readVarint()+e.pos,a=1,i=0,o=0,n=0,s=[];e.pos<r;){if(!i){var p=e.readVarint();a=7&p,i=p>>3}if(i--,1===a||2===a)o+=e.readSVarint(),n+=e.readSVarint(),1===a&&(t&&s.push(t),t=[]),t.push(new Point(o,n));else{if(7!==a)throw new Error(\"unknown command \"+a);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,a=0,i=0,o=0,n=1/0,s=-1/0,p=1/0,h=-1/0;e.pos<t;){if(!a){var u=e.readVarint();r=7&u,a=u>>3}if(a--,1===r||2===r)i+=e.readSVarint(),o+=e.readSVarint(),i<n&&(n=i),i>s&&(s=i),o<p&&(p=o),o>h&&(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 a(e){for(var t=0;t<e.length;t++){var r=e[t],a=180-360*(r.y+p)/n;e[t]=[360*(r.x+s)/n-180,360/Math.PI*Math.atan(Math.exp(a*Math.PI/180))-90]}}var i,o,n=this.extent*Math.pow(2,r),s=this.extent*e,p=this.extent*t,h=this.loadGeometry(),u=VectorTileFeature.types[this.type];switch(this.type){case 1:var d=[];for(i=0;i<h.length;i++)d[i]=h[i][0];h=d,a(h);break;case 2:for(i=0;i<h.length;i++)a(h[i]);break;case 3:for(h=classifyRings(h),i=0;i<h.length;i++)for(o=0;o<h[i].length;o++)a(h[i][o])}1===h.length?h=h[0]:u=\"Multi\"+u;var f={type:\"Feature\",geometry:{type:u,coordinates:h},properties:this.properties};return\"id\"in this&&(f.id=this.id),f};\n},{\"@mapbox/point-geometry\":2}],9:[function(_dereq_,module,exports){\n\"use strict\";function VectorTileLayer(e,t){this.version=1,this.name=null,this.extent=4096,this.length=0,this._pbf=e,this._keys=[],this._values=[],this._features=[],e.readFields(readLayer,this,t),this.length=this._features.length}function readLayer(e,t,r){15===e?t.version=r.readVarint():1===e?t.name=r.readString():5===e?t.extent=r.readVarint():2===e?t._features.push(r.pos):3===e?t._keys.push(r.readString()):4===e&&t._values.push(readValueMessage(r))}function readValueMessage(e){for(var t=null,r=e.readVarint()+e.pos;e.pos<r;){var a=e.readVarint()>>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\":8}],10:[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){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){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);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})});\n},{}],11:[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;d<i;d+=r)v=e[d],f=e[d+1],v<o&&(o=v),f<l&&(l=f),v>u&&(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<r;x+=t)a=insertNode(x,e[x],e[x+1],a);else for(x=r-t;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.x<x.x?i.x<a.x?i.x:a.x:x.x<a.x?x.x:a.x,l=i.y<x.y?i.y<a.y?i.y:a.y:x.y<a.y?x.y:a.y,u=i.x>x.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<x;i++)a=n[i]*t,o=i<x-1?n[i+1]*t:e.length,l=linkedList(e,a,o,t,!1),l===l.next&&(l.steiner=!0),u.push(getLeftmost(l));for(u.sort(compareX),i=0;i<u.length;i++)eliminateHole(u[i],r),r=filterPoints(r,r.next);return r}function compareX(e,n){return e.x-n.x}function eliminateHole(e,n){if(n=findHoleBridge(e,n)){var r=splitPolygon(n,e);filterPoints(r,r.next)}}function findHoleBridge(e,n){var r,t=n,i=e.x,x=e.y,a=-1/0;do{if(x<=t.y&&x>=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.next.x?t:t.next}}t=t.next}while(t!==n);if(!r)return null;if(i===a)return r.prev;var l,u=r,s=r.x,v=r.y,f=1/0;for(t=r.next;t!==u;)i>=t.x&&t.x>=s&&pointInTriangle(x<v?i:a,x,s,v,x<v?a:i,x,t.x,t.y)&&((l=Math.abs(x-t.y)/(i-t.x))<f||l===f&&t.x>r.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;n<u&&(o++,t=t.nextZ);n++);for(l=u;o>0||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<r.x&&(r=n),n=n.next}while(n!==e);return r}function pointInTriangle(e,n,r,t,i,x,a,o){return(i-a)*(n-o)-(e-a)*(x-o)>=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;x<r;x+=t)i+=(e[a]-e[x])*(e[x+1]+e[a+1]),a=x;return i}module.exports=earcut,earcut.deviation=function(e,n,r,t){var i=n&&n.length,x=i?n[0]*r:e.length,a=Math.abs(signedArea(e,0,x,r));if(i)for(var o=0,l=n.length;o<l;o++){var u=n[o]*r,s=o<l-1?n[o+1]*r:e.length;a-=Math.abs(signedArea(e,u,s,r))}var v=0;for(o=0;o<t.length;o+=3){var f=t[o]*r,y=t[o+1]*r,d=t[o+2]*r;v+=Math.abs((e[f]-e[d])*(e[y+1]-e[f+1])-(e[f]-e[y])*(e[d+1]-e[f+1]))}return 0===a&&0===v?0:Math.abs((v-a)/a)},earcut.flatten=function(e){for(var n=e[0][0].length,r={vertices:[],holes:[],dimensions:n},t=0,i=0;i<e.length;i++){for(var x=0;x<e[i].length;x++)for(var a=0;a<n;a++)r.vertices.push(e[i][x][a]);i>0&&(t+=e[i-1].length,r.holes.push(t))}return r};\n},{}],12:[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;n<r.coordinates.length;n++)e+=polygonArea(r.coordinates[n]);return e}return null}function polygonArea(r){var e=0;if(r&&r.length>0){e+=Math.abs(ringArea(r[0]));for(var n=1;n<r.length;n++)e-=Math.abs(ringArea(r[n]))}return e}function ringArea(r){var e=0;if(r.length>2){for(var n,t,o=0;o<r.length-1;o++)n=r[o],t=r[o+1],e+=rad(t[0]-n[0])*(2+Math.sin(rad(n[1]))+Math.sin(rad(t[1])));e=e*wgs84.RADIUS*wgs84.RADIUS/2}return e}function rad(r){return r*Math.PI/180}var wgs84=_dereq_(\"wgs84\");module.exports.geometry=geometry,module.exports.ring=ringArea;\n},{\"wgs84\":40}],13:[function(_dereq_,module,exports){\nfunction rewind(r,e){switch(r&&r.type||null){case\"FeatureCollection\":return r.features=r.features.map(curryOuter(rewind,e)),r;case\"Feature\":return r.geometry=rewind(r.geometry,e),r;case\"Polygon\":case\"MultiPolygon\":return correct(r,e);default:return r}}function curryOuter(r,e){return function(n){return r(n,e)}}function correct(r,e){return\"Polygon\"===r.type?r.coordinates=correctRings(r.coordinates,e):\"MultiPolygon\"===r.type&&(r.coordinates=r.coordinates.map(curryOuter(correctRings,e))),r}function correctRings(r,e){e=!!e,r[0]=wind(r[0],e);for(var n=1;n<r.length;n++)r[n]=wind(r[n],!e);return r}function wind(r,e){return cw(r)===e?r:r.reverse()}function cw(r){return geojsonArea.ring(r)>=0}var geojsonArea=_dereq_(\"geojson-area\");module.exports=rewind;\n},{\"geojson-area\":12}],14:[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)return null;for(var h=[],p=0;p<e.length;p++){var a,c,o=e[p],f=o.geometry,g=o.type;if(a=o.min[u],c=o.max[u],a>=t&&c<=n)h.push(o);else if(!(a>n||c<t)){var v=1===g?clipPoints(f,t,n,u):clipGeometry(f,t,n,u,i,3===g);v.length&&h.push(createFeature(o.tags,g,v,o.id))}}return h.length?h:null}function clipPoints(e,r,t,n){for(var u=[],i=0;i<e.length;i++){var l=e[i],s=l[n];s>=r&&s<=t&&u.push(l)}return u}function clipGeometry(e,r,t,n,u,i){for(var l=[],s=0;s<e.length;s++){var h,p,a,c=0,o=0,f=null,g=e[s],v=g.area,m=g.dist,w=g.outer,S=g.length,d=[];for(p=0;p<S-1;p++)h=f||g[p],f=g[p+1],c=o||h[n],o=f[n],c<r?o>t?(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?o<r?(d.push(u(h,f,t),u(h,f,r)),i||(d=newSlice(l,d,v,m,w))):o<=t&&d.push(u(h,f,t)):(d.push(h),o<r?(d.push(u(h,f,r)),i||(d=newSlice(l,d,v,m,w))):o>t&&(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\":16}],15:[function(_dereq_,module,exports){\n\"use strict\";function convert(e,t){var r=[];if(\"FeatureCollection\"===e.type)for(var o=0;o<e.features.length;o++)convertFeature(r,e.features[o],t);else\"Feature\"===e.type?convertFeature(r,e,t):convertFeature(r,{geometry:e},t);return r}function convertFeature(e,t,r){if(null!==t.geometry){var o,a,i,n,u=t.geometry,c=u.type,l=u.coordinates,s=t.properties,p=t.id;if(\"Point\"===c)e.push(createFeature(s,1,[projectPoint(l)],p));else if(\"MultiPoint\"===c)e.push(createFeature(s,1,project(l),p));else if(\"LineString\"===c)e.push(createFeature(s,2,[project(l,r)],p));else if(\"MultiLineString\"===c||\"Polygon\"===c){for(i=[],o=0;o<l.length;o++)n=project(l[o],r),\"Polygon\"===c&&(n.outer=0===o),i.push(n);e.push(createFeature(s,\"Polygon\"===c?3:2,i,p))}else if(\"MultiPolygon\"===c){for(i=[],o=0;o<l.length;o++)for(a=0;a<l[o].length;a++)n=project(l[o][a],r),n.outer=0===a,i.push(n);e.push(createFeature(s,3,i,p))}else{if(\"GeometryCollection\"!==c)throw new Error(\"Input data is not a valid GeoJSON object.\");for(o=0;o<u.geometries.length;o++)convertFeature(e,{geometry:u.geometries[o],properties:s},r)}}}function project(e,t){for(var r=[],o=0;o<e.length;o++)r.push(projectPoint(e[o]));return t&&(simplify(r,t),calcSize(r)),r}function projectPoint(e){var t=Math.sin(e[1]*Math.PI/180),r=e[0]/360+.5,o=.5-.25*Math.log((1+t)/(1-t))/Math.PI;return o=o<0?0:o>1?1:o,[r,o,0]}function calcSize(e){for(var t,r,o=0,a=0,i=0;i<e.length-1;i++)t=r||e[i],r=e[i+1],o+=t[0]*r[1]-r[0]*t[1],a+=Math.abs(r[0]-t[0])+Math.abs(r[1]-t[1]);e.area=Math.abs(o/2),e.dist=a}module.exports=convert;var simplify=_dereq_(\"./simplify\"),createFeature=_dereq_(\"./feature\");\n},{\"./feature\":16,\"./simplify\":18}],16:[function(_dereq_,module,exports){\n\"use strict\";function createFeature(e,t,a,n){var r={id:n||null,type:t,geometry:a,tags:e||null,min:[1/0,1/0],max:[-1/0,-1/0]};return calcBBox(r),r}function calcBBox(e){var t=e.geometry,a=e.min,n=e.max;if(1===e.type)calcRingBBox(a,n,t);else for(var r=0;r<t.length;r++)calcRingBBox(a,n,t[r]);return e}function calcRingBBox(e,t,a){for(var n,r=0;r<a.length;r++)n=a[r],e[0]=Math.min(n[0],e[0]),t[0]=Math.max(n[0],t[0]),e[1]=Math.min(n[1],e[1]),t[1]=Math.max(n[1],t[1])}module.exports=createFeature;\n},{}],17:[function(_dereq_,module,exports){\n\"use strict\";function geojsonvt(e,t){return new GeoJSONVT(e,t)}function GeoJSONVT(e,t){t=this.options=extend(Object.create(this.options),t);var i=t.debug;i&&console.time(\"preprocess data\");var o=1<<t.maxZoom,n=convert(e,t.tolerance/(o*t.extent));this.tiles={},this.tileCoords=[],i&&(console.timeEnd(\"preprocess data\"),console.log(\"index: maxZoom: %d, maxPoints: %d\",t.indexMaxZoom,t.indexMaxPoints),console.time(\"generate tiles\"),this.stats={},this.total=0),n=wrap(n,t.buffer/t.extent,intersectX),n.length&&this.splitTile(n,0,0,0),i&&(n.length&&console.log(\"features: %d, points: %d\",this.tiles[0].numFeatures,this.tiles[0].numPoints),console.timeEnd(\"generate tiles\"),console.log(\"tiles generated:\",this.total,JSON.stringify(this.stats)))}function toID(e,t,i){return 32*((1<<e)*i+t)+e}function intersectX(e,t,i){return[i,(i-e[0])*(t[1]-e[1])/(t[0]-e[0])+e[1],1]}function intersectY(e,t,i){return[(i-e[1])*(t[0]-e[0])/(t[1]-e[1])+e[0],i,1]}function extend(e,t){for(var i in t)e[i]=t[i];return e}function isClippedSquare(e,t,i){var o=e.source;if(1!==o.length)return!1;var n=o[0];if(3!==n.type||n.geometry.length>1)return!1;var r=n.geometry[0].length;if(5!==r)return!1;for(var s=0;s<r;s++){var l=transform.point(n.geometry[0][s],t,e.z2,e.x,e.y);if(l[0]!==-i&&l[0]!==t+i||l[1]!==-i&&l[1]!==t+i)return!1}return!0}module.exports=geojsonvt;var convert=_dereq_(\"./convert\"),transform=_dereq_(\"./transform\"),clip=_dereq_(\"./clip\"),wrap=_dereq_(\"./wrap\"),createTile=_dereq_(\"./tile\");GeoJSONVT.prototype.options={maxZoom:14,indexMaxZoom:5,indexMaxPoints:1e5,solidChildren:!1,tolerance:3,extent:4096,buffer:64,debug:0},GeoJSONVT.prototype.splitTile=function(e,t,i,o,n,r,s){for(var l=[e,t,i,o],a=this.options,u=a.debug,c=null;l.length;){o=l.pop(),i=l.pop(),t=l.pop(),e=l.pop();var p=1<<t,d=toID(t,i,o),m=this.tiles[d],f=t===a.maxZoom?0:a.tolerance/(p*a.extent);if(!m&&(u>1&&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<<n-t;if(i!==Math.floor(r/x)||o!==Math.floor(s/x))continue}else if(t===a.indexMaxZoom||m.numPoints<=a.indexMaxPoints)continue;if(a.solidChildren||!isClippedSquare(m,a.extent,a.buffer)){m.source=null,u>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<<e;t=(t%s+s)%s;var l=toID(e,t,i);if(this.tiles[l])return transform.tile(this.tiles[l],n);r>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<<e-d;l=toID(d,Math.floor(t/m),Math.floor(i/m))}return this.tiles[l]?transform.tile(this.tiles[l],n):null};\n},{\"./clip\":14,\"./convert\":15,\"./tile\":19,\"./transform\":20,\"./wrap\":21}],18:[function(_dereq_,module,exports){\n\"use strict\";function simplify(t,i){var e,p,r,s,o=i*i,f=t.length,u=0,n=f-1,g=[];for(t[u][2]=1,t[n][2]=1;n;){for(p=0,e=u+1;e<n;e++)(r=getSqSegDist(t[e],t[u],t[n]))>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},{}],19:[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;m<e.length;m++){a.numFeatures++,addFeature(a,e[m],t,u);var s=e[m].min,l=e[m].max;s[0]<a.min[0]&&(a.min[0]=s[0]),s[1]<a.min[1]&&(a.min[1]=s[1]),l[0]>a.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;t<s.length;t++)o.push(s[t]),e.numPoints++,e.numSimplified++;else for(t=0;t<s.length;t++)if(a=s[t],i||!(2===l&&a.dist<r||3===l&&a.area<f)){var d=[];for(u=0;u<a.length;u++)m=a[u],(i||m[2]>f)&&(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<u;a=t++)n=e[t],r=e[a],i+=(r[0]-n[0])*(n[1]+r[1]);return i}module.exports=createTile;\n},{}],20:[function(_dereq_,module,exports){\n\"use strict\";function transformTile(r,t){if(r.transformed)return r;var n,e,o,f=r.z2,a=r.x,s=r.y;for(n=0;n<r.features.length;n++){var i=r.features[n],u=i.geometry;if(1===i.type)for(e=0;e<u.length;e++)u[e]=transformPoint(u[e],t,f,a,s);else for(e=0;e<u.length;e++){var m=u[e];for(o=0;o<m.length;o++)m[o]=transformPoint(m[o],t,f,a,s)}}return r.transformed=!0,r}function transformPoint(r,t,n,e,o){return[Math.round(t*(r[0]*n-e)),Math.round(t*(r[1]*n-o))]}exports.tile=transformTile,exports.point=transformPoint;\n},{}],21:[function(_dereq_,module,exports){\n\"use strict\";function wrap(r,e,t){var o=r,a=clip(r,1,-1-e,e,0,t,-1,2),s=clip(r,1,1-e,2+e,0,t,-1,2);return(a||s)&&(o=clip(r,1,-e,1+e,0,t,-1,2)||[],a&&(o=shiftFeatureCoords(a,1).concat(o)),s&&(o=o.concat(shiftFeatureCoords(s,-1)))),o}function shiftFeatureCoords(r,e){for(var t=[],o=0;o<r.length;o++){var a,s=r[o],i=s.type;if(1===i)a=shiftCoords(s.geometry,e);else{a=[];for(var u=0;u<s.geometry.length;u++)a.push(shiftCoords(s.geometry[u],e))}t.push(createFeature(s.tags,i,a,s.id))}return t}function shiftCoords(r,e){var t=[];t.area=r.area,t.dist=r.dist;for(var o=0;o<r.length;o++)t.push([r[o][0]+e,r[o][1],r[o][2]]);return t}var clip=_dereq_(\"./clip\"),createFeature=_dereq_(\"./feature\");module.exports=wrap;\n},{\"./clip\":14,\"./feature\":16}],22:[function(_dereq_,module,exports){\n\"use strict\";function GridIndex(t,r,e){var s=this.cells=[];if(t instanceof ArrayBuffer){this.arrayBuffer=t;var i=new Int32Array(this.arrayBuffer);t=i[0],r=i[1],e=i[2],this.d=r+2*e;for(var h=0;h<this.d*this.d;h++){var n=i[NUM_PARAMS+h],o=i[NUM_PARAMS+h+1];s.push(n===o?null:i.subarray(n,o))}var l=i[NUM_PARAMS+s.length],a=i[NUM_PARAMS+s.length+1];this.keys=i.subarray(l,a),this.bboxes=i.subarray(a),this.insert=this._insertReadonly}else{this.d=r+2*e;for(var d=0;d<this.d*this.d;d++)s.push([]);this.keys=[],this.bboxes=[]}this.n=r,this.extent=t,this.padding=e,this.scale=r/t,this.uid=0;var f=e/r*t;this.min=-f,this.max=t+f}module.exports=GridIndex;var NUM_PARAMS=3;GridIndex.prototype.insert=function(t,r,e,s,i){this._forEachCell(r,e,s,i,this._insertCell,this.uid++),this.keys.push(t),this.bboxes.push(r),this.bboxes.push(e),this.bboxes.push(s),this.bboxes.push(i)},GridIndex.prototype._insertReadonly=function(){throw\"Cannot insert into a GridIndex created from an ArrayBuffer.\"},GridIndex.prototype._insertCell=function(t,r,e,s,i,h){this.cells[i].push(h)},GridIndex.prototype.query=function(t,r,e,s){var i=this.min,h=this.max;if(t<=i&&r<=i&&h<=e&&h<=s)return Array.prototype.slice.call(this.keys);var n=[],o={};return this._forEachCell(t,r,e,s,this._queryCell,n,o),n},GridIndex.prototype._queryCell=function(t,r,e,s,i,h,n){var o=this.cells[i];if(null!==o)for(var l=this.keys,a=this.bboxes,d=0;d<o.length;d++){var f=o[d];if(void 0===n[f]){var u=4*f;t<=a[u+2]&&r<=a[u+3]&&e>=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<this.cells.length;s++)e+=this.cells[s].length;var i=new Int32Array(r+e+this.keys.length+this.bboxes.length);i[0]=this.extent,i[1]=this.n,i[2]=this.padding;for(var h=r,n=0;n<t.length;n++){var o=t[n];i[NUM_PARAMS+n]=h,i.set(o,h),h+=o.length}return i[NUM_PARAMS+t.length]=h,i.set(this.keys,h),h+=this.keys.length,i[NUM_PARAMS+t.length+1]=h,i.set(this.bboxes,h),h+=this.bboxes.length,i.buffer};\n},{}],23:[function(_dereq_,module,exports){\nexports.read=function(a,o,t,r,h){var M,p,w=8*h-r-1,f=(1<<w)-1,e=f>>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<<e)-1,N=i>>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<<h|w,e+=h;e>0;a[t+s]=255&p,s+=u,p/=256,e-=8);a[t+s-u]|=128*l};\n},{}],24:[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<t.length;r++)this.ids[r]=r,this.coords[2*r]=i(t[r]),this.coords[2*r+1]=e(t[r]);sort(this.ids,this.coords,this.nodeSize,0,this.ids.length-1,0)}function defaultGetX(t){return t[0]}function defaultGetY(t){return t[1]}var sort=_dereq_(\"./sort\"),range=_dereq_(\"./range\"),within=_dereq_(\"./within\");module.exports=kdbush,KDBush.prototype={range:function(t,i,e,s){return range(this.ids,this.coords,t,i,e,s,this.nodeSize)},within:function(t,i,e){return within(this.ids,this.coords,t,i,e,this.nodeSize)}};\n},{\"./range\":25,\"./sort\":26,\"./within\":27}],25:[function(_dereq_,module,exports){\n\"use strict\";function range(p,r,s,u,h,e,o){for(var a,t,n=[0,p.length-1,0],f=[];n.length;){var l=n.pop(),v=n.pop(),g=n.pop();if(v-g<=o)for(var i=g;i<=v;i++)a=r[2*i],t=r[2*i+1],a>=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},{}],26:[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);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 c=a[2*o+e],h=s,i=r;for(swapItem(t,a,s,o),a[2*r+e]>c&&swapItem(t,a,s,r);h<i;){for(swapItem(t,a,h,i),h++,i--;a[2*h+e]<c;)h++;for(;a[2*i+e]>c;)i--}a[2*s+e]===c?swapItem(t,a,s,i):(i++,swapItem(t,a,i,r)),i<=o&&(s=i+1),o<=i&&(r=i-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},{}],27:[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},{}],28:[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},{}],29:[function(_dereq_,module,exports){\n\"use strict\";function Pbf(t){this.buf=ArrayBuffer.isView&&ArrayBuffer.isView(t)?t:new Uint8Array(t||0),this.pos=0,this.type=0,this.length=this.buf.length}function readVarintRemainder(t,i,e){var r,s,n=e.buf;if(s=n[e.pos++],r=(112&s)>>4,s<128)return toNum(t,r,i);if(s=n[e.pos++],r|=(127&s)<<3,s<128)return toNum(t,r,i);if(s=n[e.pos++],r|=(127&s)<<10,s<128)return toNum(t,r,i);if(s=n[e.pos++],r|=(127&s)<<17,s<128)return toNum(t,r,i);if(s=n[e.pos++],r|=(127&s)<<24,s<128)return toNum(t,r,i);if(s=n[e.pos++],r|=(1&s)<<31,s<128)return toNum(t,r,i);throw new Error(\"Expected varint not more than 10 bytes\")}function readPackedEnd(t){return t.type===Pbf.Bytes?t.readVarint()+t.pos:t.pos+1}function toNum(t,i,e){return e?4294967296*i+(t>>>0):4294967296*(i>>>0)+(t>>>0)}function writeBigVarint(t,i){var e,r;if(t>=0?(e=t%4294967296|0,r=t/4294967296|0):(e=~(-t%4294967296),r=~(-t/4294967296),4294967295^e?e=e+1|0:(e=0,r=r+1|0)),t>=0x10000000000000000||t<-0x10000000000000000)throw new Error(\"Given varint doesn't fit into 10 bytes\");i.realloc(10),writeBigVarintLow(e,r,i),writeBigVarintHigh(r,i)}function writeBigVarintLow(t,i,e){e.buf[e.pos++]=127&t|128,t>>>=7,e.buf[e.pos++]=127&t|128,t>>>=7,e.buf[e.pos++]=127&t|128,t>>>=7,e.buf[e.pos++]=127&t|128,t>>>=7,e.buf[e.pos]=127&t}function writeBigVarintHigh(t,i){var e=(7&t)<<4;i.buf[i.pos++]|=e|((t>>>=3)?128:0),t&&(i.buf[i.pos++]=127&t|((t>>>=7)?128:0),t&&(i.buf[i.pos++]=127&t|((t>>>=7)?128:0),t&&(i.buf[i.pos++]=127&t|((t>>>=7)?128:0),t&&(i.buf[i.pos++]=127&t|((t>>>=7)?128:0),t&&(i.buf[i.pos++]=127&t)))))}function makeRoomForExtraLength(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<t.length;e++)i.writeVarint(t[e])}function writePackedSVarint(t,i){for(var e=0;e<t.length;e++)i.writeSVarint(t[e])}function writePackedFloat(t,i){for(var e=0;e<t.length;e++)i.writeFloat(t[e])}function writePackedDouble(t,i){for(var e=0;e<t.length;e++)i.writeDouble(t[e])}function writePackedBoolean(t,i){for(var e=0;e<t.length;e++)i.writeBoolean(t[e])}function writePackedFixed32(t,i){for(var e=0;e<t.length;e++)i.writeFixed32(t[e])}function writePackedSFixed32(t,i){for(var e=0;e<t.length;e++)i.writeSFixed32(t[e])}function writePackedFixed64(t,i){for(var e=0;e<t.length;e++)i.writeFixed64(t[e])}function writePackedSFixed64(t,i){for(var e=0;e<t.length;e++)i.writeSFixed64(t[e])}function readUInt32(t,i){return(t[i]|t[i+1]<<8|t[i+2]<<16)+16777216*t[i+3]}function writeInt32(t,i,e){t[e]=i,t[e+1]=i>>>8,t[e+2]=i>>>16,t[e+3]=i>>>24}function readInt32(t,i){return(t[i]|t[i+1]<<8|t[i+2]<<16)+(t[i+3]<<24)}function readUtf8(t,i,e){for(var r=\"\",s=i;s<e;){var n=t[s],o=null,a=n>239?4:n>223?3:n>191?2:1;if(s+a>e)break;var h,u,f;1===a?n<128&&(o=n):2===a?128==(192&(h=t[s+1]))&&(o=(31&n)<<6|63&h)<=127&&(o=null):3===a?(h=t[s+1],u=t[s+2],128==(192&h)&&128==(192&u)&&((o=(15&n)<<12|(63&h)<<6|63&u)<=2047||o>=55296&&o<=57343)&&(o=null)):4===a&&(h=t[s+1],u=t[s+2],f=t[s+3],128==(192&h)&&128==(192&u)&&128==(192&f)&&((o=(15&n)<<18|(63&h)<<12|(63&u)<<6|63&f)<=65535||o>=1114112)&&(o=null)),null===o?(o=65533,a=1):o>65535&&(o-=65536,r+=String.fromCharCode(o>>>10&1023|55296),o=56320|1023&o),r+=String.fromCharCode(o),s+=a}return r}function writeUtf8(t,i,e){for(var r,s,n=0;n<i.length;n++){if((r=i.charCodeAt(n))>55295&&r<57344){if(!s){r>56319||n+1===i.length?(t[e++]=239,t[e++]=191,t[e++]=189):s=r;continue}if(r<56320){t[e++]=239,t[e++]=191,t[e++]=189,s=r;continue}r=s-55296<<10|r-56320|65536,s=null}else s&&(t[e++]=239,t[e++]=191,t[e++]=189,s=null);r<128?t[e++]=r:(r<2048?t[e++]=r>>6|192:(r<65536?t[e++]=r>>12|224:(t[e++]=r>>18|240,t[e++]=r>>12&63|128),t[e++]=r>>6&63|128),t[e++]=63&r|128)}return e}module.exports=Pbf;var ieee754=_dereq_(\"ieee754\");Pbf.Varint=0,Pbf.Fixed64=1,Pbf.Bytes=2,Pbf.Fixed32=5;var SHIFT_LEFT_32=4294967296,SHIFT_RIGHT_32=1/SHIFT_LEFT_32;Pbf.prototype={destroy:function(){this.buf=null},readFields:function(t,i,e){for(e=e||this.length;this.pos<e;){var r=this.readVarint(),s=r>>3,n=this.pos;this.type=7&r,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=readUInt32(this.buf,this.pos);return this.pos+=4,t},readSFixed32:function(){var t=readInt32(this.buf,this.pos);return this.pos+=4,t},readFixed64:function(){var t=readUInt32(this.buf,this.pos)+readUInt32(this.buf,this.pos+4)*SHIFT_LEFT_32;return this.pos+=8,t},readSFixed64:function(){var t=readUInt32(this.buf,this.pos)+readInt32(this.buf,this.pos+4)*SHIFT_LEFT_32;return this.pos+=8,t},readFloat:function(){var t=ieee754.read(this.buf,this.pos,!0,23,4);return this.pos+=4,t},readDouble:function(){var t=ieee754.read(this.buf,this.pos,!0,52,8);return this.pos+=8,t},readVarint:function(t){var i,e,r=this.buf;return e=r[this.pos++],i=127&e,e<128?i:(e=r[this.pos++],i|=(127&e)<<7,e<128?i:(e=r[this.pos++],i|=(127&e)<<14,e<128?i:(e=r[this.pos++],i|=(127&e)<<21,e<128?i:(e=r[this.pos],i|=(15&e)<<28,readVarintRemainder(i,t,this)))))},readVarint64:function(){return this.readVarint(!0)},readSVarint:function(){var t=this.readVarint();return t%2==1?(t+1)/-2:t/2},readBoolean:function(){return Boolean(this.readVarint())},readString:function(){var t=this.readVarint()+this.pos,i=readUtf8(this.buf,this.pos,t);return this.pos=t,i},readBytes:function(){var t=this.readVarint()+this.pos,i=this.buf.subarray(this.pos,t);return this.pos=t,i},readPackedVarint:function(t,i){var e=readPackedEnd(this);for(t=t||[];this.pos<e;)t.push(this.readVarint(i));return t},readPackedSVarint:function(t){var i=readPackedEnd(this);for(t=t||[];this.pos<i;)t.push(this.readSVarint());return t},readPackedBoolean:function(t){var i=readPackedEnd(this);for(t=t||[];this.pos<i;)t.push(this.readBoolean());return t},readPackedFloat:function(t){var i=readPackedEnd(this);for(t=t||[];this.pos<i;)t.push(this.readFloat());return t},readPackedDouble:function(t){var i=readPackedEnd(this);for(t=t||[];this.pos<i;)t.push(this.readDouble());return t},readPackedFixed32:function(t){var i=readPackedEnd(this);for(t=t||[];this.pos<i;)t.push(this.readFixed32());return t},readPackedSFixed32:function(t){var i=readPackedEnd(this);for(t=t||[];this.pos<i;)t.push(this.readSFixed32());return t},readPackedFixed64:function(t){var i=readPackedEnd(this);for(t=t||[];this.pos<i;)t.push(this.readFixed64());return t},readPackedSFixed64:function(t){var i=readPackedEnd(this);for(t=t||[];this.pos<i;)t.push(this.readSFixed64());return t},skip:function(t){var i=7&t;if(i===Pbf.Varint)for(;this.buf[this.pos++]>127;);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;i<this.pos+t;)i*=2;if(i!==this.length){var e=new Uint8Array(i);e.set(this.buf),this.buf=e,this.length=i}},finish:function(){return this.length=this.pos,this.pos=0,this.buf.subarray(0,this.length)},writeFixed32:function(t){this.realloc(4),writeInt32(this.buf,t,this.pos),this.pos+=4},writeSFixed32:function(t){this.realloc(4),writeInt32(this.buf,t,this.pos),this.pos+=4},writeFixed64:function(t){this.realloc(8),writeInt32(this.buf,-1&t,this.pos),writeInt32(this.buf,Math.floor(t*SHIFT_RIGHT_32),this.pos+4),this.pos+=8},writeSFixed64:function(t){this.realloc(8),writeInt32(this.buf,-1&t,this.pos),writeInt32(this.buf,Math.floor(t*SHIFT_RIGHT_32),this.pos+4),this.pos+=8},writeVarint:function(t){if((t=+t||0)>268435455||t<0)return void writeBigVarint(t,this);this.realloc(4),this.buf[this.pos++]=127&t|(t>127?128:0),t<=127||(this.buf[this.pos++]=127&(t>>>=7)|(t>127?128:0),t<=127||(this.buf[this.pos++]=127&(t>>>=7)|(t>127?128:0),t<=127||(this.buf[this.pos++]=t>>>7&127)))},writeSVarint:function(t){this.writeVarint(t<0?2*-t-1:2*t)},writeBoolean:function(t){this.writeVarint(Boolean(t))},writeString:function(t){t=String(t),this.realloc(4*t.length),this.pos++;var i=this.pos;this.pos=writeUtf8(this.buf,t,this.pos);var e=this.pos-i;e>=128&&makeRoomForExtraLength(i,e,this),this.pos=i-1,this.writeVarint(e),this.pos+=e},writeFloat:function(t){this.realloc(4),ieee754.write(this.buf,t,this.pos,!0,23,4),this.pos+=4},writeDouble:function(t){this.realloc(8),ieee754.write(this.buf,t,this.pos,!0,52,8),this.pos+=8},writeBytes:function(t){var i=t.length;this.writeVarint(i),this.realloc(i);for(var e=0;e<i;e++)this.buf[this.pos++]=t[e]},writeRawMessage:function(t,i){this.pos++;var e=this.pos;t(i,this);var r=this.pos-e;r>=128&&makeRoomForExtraLength(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},{\"ieee754\":23}],30:[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&&currentQueue&&(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=[];++queueIndex<t;)currentQueue&&currentQueue[queueIndex].run();queueIndex=-1,t=queue.length}currentQueue=null,draining=!1,runClearTimeout(e)}}function Item(e,t){this.fun=e,this.array=t}function noop(){}var process=module.exports={},cachedSetTimeout,cachedClearTimeout;!function(){try{cachedSetTimeout=\"function\"==typeof setTimeout?setTimeout:defaultSetTimout}catch(e){cachedSetTimeout=defaultSetTimout}try{cachedClearTimeout=\"function\"==typeof clearTimeout?clearTimeout:defaultClearTimeout}catch(e){cachedClearTimeout=defaultClearTimeout}}();var queue=[],draining=!1,currentQueue,queueIndex=-1;process.nextTick=function(e){var t=new Array(arguments.length-1);if(arguments.length>1)for(var r=1;r<arguments.length;r++)t[r-1]=arguments[r];queue.push(new Item(e,t)),1!==queue.length||draining||runTimeout(drainQueue)},Item.prototype.run=function(){this.fun.apply(null,this.array)},process.title=\"browser\",process.browser=!0,process.env={},process.argv=[],process.version=\"\",process.versions={},process.on=noop,process.addListener=noop,process.once=noop,process.off=noop,process.removeListener=noop,process.removeAllListeners=noop,process.emit=noop,process.prependListener=noop,process.prependOnceListener=noop,process.listeners=function(e){return[]},process.binding=function(e){throw new Error(\"process.binding is not supported\")},process.cwd=function(){return\"/\"},process.chdir=function(e){throw new Error(\"process.chdir is not supported\")},process.umask=function(){return 0};\n},{}],31:[function(_dereq_,module,exports){\n\"use strict\";function partialSort(a,t,r,o,p){for(r=r||0,o=o||a.length-1,p=p||defaultCompare;o>r;){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 n=a[t],h=r,u=o;for(swap(a,r,t),p(a[o],n)>0&&swap(a,r,o);h<u;){for(swap(a,h,u),h++,u--;p(a[h],n)<0;)h++;for(;p(a[u],n)>0;)u--}0===p(a[r],n)?swap(a,r,u):(u++,swap(a,u,o)),u<=t&&(r=u+1),t<=u&&(o=u-1)}}function swap(a,t,r){var o=a[t];a[t]=a[r],a[r]=o}function defaultCompare(a,t){return a<t?-1:a>t?1:0}module.exports=partialSort;\n},{}],32:[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,n,o,i){return{x:t,y:e,zoom:1/0,id:o,properties:i,parentId:-1,numPoints:n}}function createPointCluster(t,e){var n=t.geometry.coordinates;return{x:lngX(n[0]),y:latY(n[1]),zoom:1/0,id:e,parentId:-1}}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,n=e>=1e4?Math.round(e/1e3)+\"k\":e>=1e3?Math.round(e/100)/10+\"k\":e;return extend(extend({},t.properties),{cluster:!0,cluster_id:t.id,point_count:e,point_count_abbreviated:n})}function lngX(t){return t/360+.5}function latY(t){var e=Math.sin(t*Math.PI/180),n=.5-.25*Math.log((1+e)/(1-e))/Math.PI;return n<0?0:n>1?1:n}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 n in e)t[n]=e[n];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,reduce:null,initial:function(){return{}},map:function(t){return t}},load:function(t){var e=this.options.log;e&&console.time(\"total time\");var n=\"prepare \"+t.length+\" points\";e&&console.time(n),this.points=t;var o=t.map(createPointCluster);e&&console.timeEnd(n);for(var i=this.options.maxZoom;i>=this.options.minZoom;i--){var r=+Date.now();this.trees[i+1]=kdbush(o,getX,getY,this.options.nodeSize,Float32Array),o=this._cluster(o,i),e&&console.log(\"z%d: %d clusters in %dms\",i,o.length,+Date.now()-r)}return this.trees[this.options.minZoom]=kdbush(o,getX,getY,this.options.nodeSize,Float32Array),e&&console.timeEnd(\"total time\"),this},getClusters:function(t,e){for(var n=this.trees[this._limitZoom(e)],o=n.range(lngX(t[0]),latY(t[3]),lngX(t[2]),latY(t[1])),i=[],r=0;r<o.length;r++){var s=n.points[o[r]];i.push(s.numPoints?getClusterJSON(s):this.points[s.id])}return i},getChildren:function(t,e){for(var n=this.trees[e+1].points[t],o=this.options.radius/(this.options.extent*Math.pow(2,e)),i=this.trees[e+1].within(n.x,n.y,o),r=[],s=0;s<i.length;s++){var u=this.trees[e+1].points[i[s]];u.parentId===t&&r.push(u.numPoints?getClusterJSON(u):this.points[u.id])}return r},getLeaves:function(t,e,n,o){n=n||10,o=o||0;var i=[];return this._appendLeaves(i,t,e,n,o,0),i},getTile:function(t,e,n){var o=this.trees[this._limitZoom(t)],i=Math.pow(2,t),r=this.options.extent,s=this.options.radius,u=s/r,a=(n-u)/i,p=(n+1+u)/i,h={features:[]};return this._addTileFeatures(o.range((e-u)/i,a,(e+1+u)/i,p),o.points,e,n,i,h),0===e&&this._addTileFeatures(o.range(1-u/i,a,1,p),o.points,i,n,i,h),e===i-1&&this._addTileFeatures(o.range(0,a,u/i,p),o.points,-1,n,i,h),h.features.length?h:null},getClusterExpansionZoom:function(t,e){for(;e<this.options.maxZoom;){var n=this.getChildren(t,e);if(e++,1!==n.length)break;t=n[0].properties.cluster_id}return e},_appendLeaves:function(t,e,n,o,i,r){for(var s=this.getChildren(e,n),u=0;u<s.length;u++){var a=s[u].properties;if(a.cluster?r+a.point_count<=i?r+=a.point_count:r=this._appendLeaves(t,a.cluster_id,n+1,o,i,r):r<i?r++:t.push(s[u]),t.length===o)break}return r},_addTileFeatures:function(t,e,n,o,i,r){for(var s=0;s<t.length;s++){var u=e[t[s]];r.features.push({type:1,geometry:[[Math.round(this.options.extent*(u.x*i-n)),Math.round(this.options.extent*(u.y*i-o))]],tags:u.numPoints?getClusterProperties(u):this.points[u.id].properties})}},_limitZoom:function(t){return Math.max(this.options.minZoom,Math.min(t,this.options.maxZoom+1))},_cluster:function(t,e){for(var n=[],o=this.options.radius/(this.options.extent*Math.pow(2,e)),i=0;i<t.length;i++){var r=t[i];if(!(r.zoom<=e)){r.zoom=e;var s=this.trees[e+1],u=s.within(r.x,r.y,o),a=r.numPoints||1,p=r.x*a,h=r.y*a,l=null;this.options.reduce&&(l=this.options.initial(),this._accumulate(l,r));for(var c=0;c<u.length;c++){var d=s.points[u[c]];if(e<d.zoom){var m=d.numPoints||1;d.zoom=e,p+=d.x*m,h+=d.y*m,a+=m,d.parentId=i,this.options.reduce&&this._accumulate(l,d)}}1===a?n.push(r):(r.parentId=i,n.push(createCluster(p/a,h/a,a,i,l)))}}return n},_accumulate:function(t,e){var n=e.numPoints?e.properties:this.options.map(this.points[e.id].properties);this.options.reduce(t,n)}};\n},{\"kdbush\":24}],33:[function(_dereq_,module,exports){\n\"use strict\";function TinyQueue(t,i){if(!(this instanceof TinyQueue))return new TinyQueue(t,i);if(this.data=t||[],this.length=this.data.length,this.compare=i||defaultCompare,this.length>0)for(var e=this.length>>1;e>=0;e--)this._down(e)}function defaultCompare(t,i){return t<i?-1:t>i?1:0}module.exports=TinyQueue,TinyQueue.prototype={push:function(t){this.data.push(t),this.length++,this._up(this.length-1)},pop:function(){if(0!==this.length){var t=this.data[0];return this.length--,this.length>0&&(this.data[0]=this.data[this.length],this._down(0)),this.data.pop(),t}},peek:function(){return this.data[0]},_up:function(t){for(var i=this.data,e=this.compare,h=i[t];t>0;){var n=t-1>>1,a=i[n];if(e(h,a)>=0)break;i[t]=a,t=n}i[t]=h},_down:function(t){for(var i=this.data,e=this.compare,h=this.length,n=h>>1,a=i[t];t<n;){var s=1+(t<<1),u=s+1,r=i[s];if(u<h&&e(i[u],r)<0&&(s=u,r=i[u]),e(r,a)>=0)break;i[t]=r,t=s}i[t]=a}};\n},{}],34:[function(_dereq_,module,exports){\n\"function\"==typeof Object.create?module.exports=function(t,e){t.super_=e,t.prototype=Object.create(e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}})}:module.exports=function(t,e){t.super_=e;var o=function(){};o.prototype=e.prototype,t.prototype=new o,t.prototype.constructor=t};\n},{}],35:[function(_dereq_,module,exports){\nmodule.exports=function(o){return o&&\"object\"==typeof o&&\"function\"==typeof o.copy&&\"function\"==typeof o.fill&&\"function\"==typeof o.readUInt8};\n},{}],36:[function(_dereq_,module,exports){\n(function (process,global){\nfunction inspect(e,r){var t={seen:[],stylize:stylizeNoColor};return arguments.length>=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)){c=\" [Function\"+(r.name?\": \"+r.name:\"\")+\"]\"}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 p;return p=a?formatArray(e,r,t,s,o):o.map(function(n){return formatProperty(e,r,t,s,n,a)}),e.seen.pop(),reduceToSingleString(p,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<u;++s)hasOwnProperty(r,String(s))?o.push(formatProperty(e,r,t,n,String(s),!0)):o.push(\"\");return i.forEach(function(i){i.match(/^\\d+$/)||o.push(formatProperty(e,r,t,n,i,!0))}),o}function formatProperty(e,r,t,n,i,o){var s,u,c;if(c=Object.getOwnPropertyDescriptor(r,i)||{value:r[i]},c.get?u=c.set?e.stylize(\"[Getter/Setter]\",\"special\"):e.stylize(\"[Getter]\",\"special\"):c.set&&(u=e.stylize(\"[Setter]\",\"special\")),hasOwnProperty(n,i)||(s=\"[\"+i+\"]\"),u||(e.seen.indexOf(c.value)<0?(u=isNull(t)?formatValue(e,c.value,null):formatValue(e,c.value,t-1),u.indexOf(\"\\n\")>-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;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<arguments.length;t++)r.push(inspect(arguments[t]));return r.join(\" \")}for(var t=1,n=arguments,i=n.length,o=String(e).replace(formatRegExp,function(e){if(\"%%\"===e)return\"%\";if(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<i;s=n[++t])isNull(s)||!isObject(s)?o+=\" \"+s:o+=\" \"+inspect(s);return o},exports.deprecate=function(e,r){function t(){if(!n){if(process.throwDeprecation)throw new Error(r);process.traceDeprecation?console.trace(r):console.error(r),n=!0}return e.apply(this,arguments)}if(isUndefined(global.process))return function(){return exports.deprecate(e,r).apply(this,arguments)};if(!0===process.noDeprecation)return e;var n=!1;return t};var debugs={},debugEnviron;exports.debuglog=function(e){if(isUndefined(debugEnviron)&&(debugEnviron=process.env.NODE_DEBUG||\"\"),e=e.toUpperCase(),!debugs[e])if(new RegExp(\"\\\\b\"+e+\"\\\\b\",\"i\").test(debugEnviron)){var r=process.pid;debugs[e]=function(){var t=exports.format.apply(exports,arguments);console.error(\"%s %d: %s\",e,r,t)}}else debugs[e]=function(){};return debugs[e]},exports.inspect=inspect,inspect.colors={bold:[1,22],italic:[3,23],underline:[4,24],inverse:[7,27],white:[37,39],grey:[90,39],black:[30,39],blue:[34,39],cyan:[36,39],green:[32,39],magenta:[35,39],red:[31,39],yellow:[33,39]},inspect.styles={special:\"cyan\",number:\"yellow\",boolean:\"yellow\",undefined:\"grey\",null:\"bold\",string:\"green\",date:\"magenta\",regexp:\"red\"},exports.isArray=isArray,exports.isBoolean=isBoolean,exports.isNull=isNull,exports.isNullOrUndefined=isNullOrUndefined,exports.isNumber=isNumber,exports.isString=isString,exports.isSymbol=isSymbol,exports.isUndefined=isUndefined,exports.isRegExp=isRegExp,exports.isObject=isObject,exports.isDate=isDate,exports.isError=isError,exports.isFunction=isFunction,exports.isPrimitive=isPrimitive,exports.isBuffer=_dereq_(\"./support/isBuffer\");var months=[\"Jan\",\"Feb\",\"Mar\",\"Apr\",\"May\",\"Jun\",\"Jul\",\"Aug\",\"Sep\",\"Oct\",\"Nov\",\"Dec\"];exports.log=function(){console.log(\"%s - %s\",timestamp(),exports.format.apply(exports,arguments))},exports.inherits=_dereq_(\"inherits\"),exports._extend=function(e,r){if(!r||!isObject(r))return e;for(var t=Object.keys(r),n=t.length;n--;)e[t[n]]=r[t[n]];return e};\n}).call(this,_dereq_('_process'),typeof global !== \"undefined\" ? global : typeof self !== \"undefined\" ? self : typeof window !== \"undefined\" ? window : {})\n\n},{\"./support/isBuffer\":35,\"_process\":30,\"inherits\":34}],37:[function(_dereq_,module,exports){\nfunction fromVectorTileJs(e){var r=new Pbf;return writeTile(e,r),r.finish()}function fromGeojsonVt(e){var r={};for(var t in e)r[t]=new GeoJSONWrapper(e[t].features),r[t].name=t;return fromVectorTileJs({layers:r})}function writeTile(e,r){for(var t in e.layers)r.writeMessage(3,writeLayer,e.layers[t])}function writeLayer(e,r){r.writeVarintField(15,e.version||1),r.writeStringField(1,e.name||\"\"),r.writeVarintField(5,e.extent||4096);var t,i={keys:[],values:[],keycache:{},valuecache:{}};for(t=0;t<e.length;t++)i.feature=e.feature(t),r.writeMessage(2,writeFeature,i);var a=i.keys;for(t=0;t<a.length;t++)r.writeStringField(3,a[t]);var o=i.values;for(t=0;t<o.length;t++)r.writeMessage(4,writeValue,o[t])}function writeFeature(e,r){var t=e.feature;void 0!==t.id&&r.writeVarintField(1,t.id),r.writeMessage(2,writeProperties,e),r.writeVarintField(3,t.type),r.writeMessage(4,writeGeometry,t)}function writeProperties(e,r){var t=e.feature,i=e.keys,a=e.values,o=e.keycache,n=e.valuecache;for(var l in t.properties){var s=o[l];void 0===s&&(i.push(l),s=i.length-1,o[l]=s),r.writeVarint(s);var u=t.properties[l],f=typeof u;\"string\"!==f&&\"boolean\"!==f&&\"number\"!==f&&(u=JSON.stringify(u));var w=f+\":\"+u,v=n[w];void 0===v&&(a.push(u),v=a.length-1,n[w]=v),r.writeVarint(v)}}function command(e,r){return(r<<3)+(7&e)}function zigzag(e){return e<<1^e>>31}function writeGeometry(e,r){for(var t=e.loadGeometry(),i=e.type,a=0,o=0,n=t.length,l=0;l<n;l++){var s=t[l],u=1;1===i&&(u=s.length),r.writeVarint(command(1,u));for(var f=0;f<s.length;f++){1===f&&1!==i&&r.writeVarint(command(2,s.length-1));var w=s[f].x-a,v=s[f].y-o;r.writeVarint(zigzag(w)),r.writeVarint(zigzag(v)),a+=w,o+=v}}}function writeValue(e,r){var t=typeof e;\"string\"===t?r.writeStringField(1,e):\"boolean\"===t?r.writeBooleanField(7,e):\"number\"===t&&(e%1!=0?r.writeDoubleField(3,e):e<0?r.writeSVarintField(6,e):r.writeVarintField(5,e))}var Pbf=_dereq_(\"pbf\"),GeoJSONWrapper=_dereq_(\"./lib/geojson_wrapper\");module.exports=fromVectorTileJs,module.exports.fromVectorTileJs=fromVectorTileJs,module.exports.fromGeojsonVt=fromGeojsonVt,module.exports.GeoJSONWrapper=GeoJSONWrapper;\n},{\"./lib/geojson_wrapper\":38,\"pbf\":29}],38:[function(_dereq_,module,exports){\n\"use strict\";function GeoJSONWrapper(e){this.features=e,this.length=e.length}function FeatureWrapper(e){this.id=\"number\"==typeof e.id?e.id:void 0,this.type=e.type,this.rawGeometry=1===e.type?[e.geometry]:e.geometry,this.properties=e.tags,this.extent=4096}var Point=_dereq_(\"@mapbox/point-geometry\"),VectorTileFeature=_dereq_(\"@mapbox/vector-tile\").VectorTileFeature;module.exports=GeoJSONWrapper,GeoJSONWrapper.prototype.feature=function(e){return new FeatureWrapper(this.features[e])},FeatureWrapper.prototype.loadGeometry=function(){var e=this.rawGeometry;this.geometry=[];for(var t=0;t<e.length;t++){for(var r=e[t],o=[],a=0;a<r.length;a++)o.push(new Point(r[a][0],r[a][1]));this.geometry.push(o)}return this.geometry},FeatureWrapper.prototype.bbox=function(){this.geometry||this.loadGeometry();for(var e=this.geometry,t=1/0,r=-1/0,o=1/0,a=-1/0,p=0;p<e.length;p++)for(var i=e[p],n=0;n<i.length;n++){var h=i[n];t=Math.min(t,h.x),r=Math.max(r,h.x),o=Math.min(o,h.y),a=Math.max(a,h.y)}return[t,o,r,a]},FeatureWrapper.prototype.toGeoJSON=VectorTileFeature.prototype.toGeoJSON;\n},{\"@mapbox/point-geometry\":2,\"@mapbox/vector-tile\":6}],39:[function(_dereq_,module,exports){\nvar bundleFn=arguments[3],sources=arguments[4],cache=arguments[5],stringify=JSON.stringify;module.exports=function(r,e){function t(r){d[r]=!0;for(var e in sources[r][1]){var n=sources[r][1][e];d[n]||t(n)}}for(var n,o=Object.keys(cache),a=0,i=o.length;a<i;a++){var s=o[a],u=cache[s].exports;if(u===r||u&&u.default===r){n=s;break}}if(!n){n=Math.floor(Math.pow(16,8)*Math.random()).toString(16);for(var f={},a=0,i=o.length;a<i;a++){var s=o[a];f[s]=s}sources[n]=[Function([\"require\",\"module\",\"exports\"],\"(\"+r+\")(self)\"),f]}var c=Math.floor(Math.pow(16,8)*Math.random()).toString(16),l={};l[n]=n,sources[c]=[Function([\"require\"],\"var f = require(\"+stringify(n)+\");(f.default ? f.default : f)(self);\"),l];var d={};t(c);var g=\"(\"+bundleFn+\")({\"+Object.keys(d).map(function(r){return stringify(r)+\":[\"+sources[r][0]+\",\"+stringify(sources[r][1])+\"]\"}).join(\",\")+\"},{},[\"+stringify(c)+\"])\",v=window.URL||window.webkitURL||window.mozURL||window.msURL,w=new Blob([g],{type:\"text/javascript\"});if(e&&e.bare)return w;var h=v.createObjectURL(w),b=new Worker(h);return b.objectURL=h,b};\n},{}],40:[function(_dereq_,module,exports){\nmodule.exports.RADIUS=6378137,module.exports.FLATTENING=1/298.257223563,module.exports.POLAR_RADIUS=6356752.3142;\n},{}],41:[function(_dereq_,module,exports){\nmodule.exports={\"version\":\"0.40.1\"}\n},{}],42:[function(_dereq_,module,exports){\n\"use strict\";var util=_dereq_(\"../util/util\");module.exports={deserialize:function(e,r){var t={};if(!r)return t;for(var i=0,a=e;i<a.length;i+=1){var l=a[i],u=l.layerIds.map(function(e){return r.getLayer(e)}).filter(Boolean);if(0!==u.length)for(var n=u[0].createBucket(util.extend({layers:u},l)),o=0,f=u;o<f.length;o+=1){var s=f[o];t[s.id]=n}}return t}};\n},{\"../util/util\":223}],43:[function(_dereq_,module,exports){\n\"use strict\";function addCircleVertex(e,r,t,i,a){e.emplaceBack(2*r+(i+1)/2,2*t+(a+1)/2)}var ref=_dereq_(\"../segment\"),SegmentVector=ref.SegmentVector,VertexBuffer=_dereq_(\"../../gl/vertex_buffer\"),IndexBuffer=_dereq_(\"../../gl/index_buffer\"),ref$1=_dereq_(\"../program_configuration\"),ProgramConfigurationSet=ref$1.ProgramConfigurationSet,createVertexArrayType=_dereq_(\"../vertex_array_type\"),ref$2=_dereq_(\"../index_array_type\"),TriangleIndexArray=ref$2.TriangleIndexArray,loadGeometry=_dereq_(\"../load_geometry\"),EXTENT=_dereq_(\"../extent\"),circleInterface={layoutAttributes:[{name:\"a_pos\",components:2,type:\"Int16\"}],indexArrayType:TriangleIndexArray,paintAttributes:[{property:\"circle-color\"},{property:\"circle-radius\"},{property:\"circle-blur\"},{property:\"circle-opacity\"},{property:\"circle-stroke-color\"},{property:\"circle-stroke-width\"},{property:\"circle-stroke-opacity\"}]},LayoutVertexArrayType=createVertexArrayType(circleInterface.layoutAttributes),CircleBucket=function(e){this.zoom=e.zoom,this.overscaling=e.overscaling,this.layers=e.layers,this.index=e.index,this.layoutVertexArray=new LayoutVertexArrayType(e.layoutVertexArray),this.indexArray=new TriangleIndexArray(e.indexArray),this.programConfigurations=new ProgramConfigurationSet(circleInterface,e.layers,e.zoom,e.programConfigurations),this.segments=new SegmentVector(e.segments)};CircleBucket.prototype.populate=function(e,r){for(var t=this,i=0,a=e;i<a.length;i+=1){var o=a[i],n=o.feature,y=o.index,u=o.sourceLayerIndex;if(t.layers[0].filter(n)){var s=loadGeometry(n);t.addFeature(n,s),r.featureIndex.insert(n,s,y,u,t.index)}}},CircleBucket.prototype.isEmpty=function(){return 0===this.layoutVertexArray.length},CircleBucket.prototype.serialize=function(e){return{zoom:this.zoom,layerIds:this.layers.map(function(e){return e.id}),layoutVertexArray:this.layoutVertexArray.serialize(e),indexArray:this.indexArray.serialize(e),programConfigurations:this.programConfigurations.serialize(e),segments:this.segments.get()}},CircleBucket.prototype.upload=function(e){this.layoutVertexBuffer=new VertexBuffer(e,this.layoutVertexArray),this.indexBuffer=new IndexBuffer(e,this.indexArray),this.programConfigurations.upload(e)},CircleBucket.prototype.destroy=function(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.programConfigurations.destroy(),this.segments.destroy())},CircleBucket.prototype.addFeature=function(e,r){for(var t=this,i=0,a=r;i<a.length;i+=1)for(var o=a[i],n=0,y=o;n<y.length;n+=1){var u=y[n],s=u.x,c=u.y;if(!(s<0||s>=EXTENT||c<0||c>=EXTENT)){var l=t.segments.prepareSegment(4,t.layoutVertexArray,t.indexArray),p=l.vertexLength;addCircleVertex(t.layoutVertexArray,s,c,-1,-1),addCircleVertex(t.layoutVertexArray,s,c,1,-1),addCircleVertex(t.layoutVertexArray,s,c,1,1),addCircleVertex(t.layoutVertexArray,s,c,-1,1),t.indexArray.emplaceBack(p,p+1,p+2),t.indexArray.emplaceBack(p,p+3,p+2),l.vertexLength+=4,l.primitiveLength+=2}}this.programConfigurations.populatePaintArrays(this.layoutVertexArray.length,e.properties)},CircleBucket.programInterface=circleInterface,module.exports=CircleBucket;\n},{\"../../gl/index_buffer\":61,\"../../gl/vertex_buffer\":62,\"../extent\":48,\"../index_array_type\":50,\"../load_geometry\":51,\"../program_configuration\":53,\"../segment\":55,\"../vertex_array_type\":56}],44:[function(_dereq_,module,exports){\n\"use strict\";var ref=_dereq_(\"../segment\"),SegmentVector=ref.SegmentVector,VertexBuffer=_dereq_(\"../../gl/vertex_buffer\"),IndexBuffer=_dereq_(\"../../gl/index_buffer\"),ref$1=_dereq_(\"../program_configuration\"),ProgramConfigurationSet=ref$1.ProgramConfigurationSet,createVertexArrayType=_dereq_(\"../vertex_array_type\"),ref$2=_dereq_(\"../index_array_type\"),LineIndexArray=ref$2.LineIndexArray,TriangleIndexArray=ref$2.TriangleIndexArray,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\"}],indexArrayType:TriangleIndexArray,indexArrayType2:LineIndexArray,paintAttributes:[{property:\"fill-color\"},{property:\"fill-outline-color\"},{property:\"fill-opacity\"}]},LayoutVertexArrayType=createVertexArrayType(fillInterface.layoutAttributes),FillBucket=function(e){this.zoom=e.zoom,this.overscaling=e.overscaling,this.layers=e.layers,this.index=e.index,this.layoutVertexArray=new LayoutVertexArrayType(e.layoutVertexArray),this.indexArray=new TriangleIndexArray(e.indexArray),this.indexArray2=new LineIndexArray(e.indexArray2),this.programConfigurations=new ProgramConfigurationSet(fillInterface,e.layers,e.zoom,e.programConfigurations),this.segments=new SegmentVector(e.segments),this.segments2=new SegmentVector(e.segments2)};FillBucket.prototype.populate=function(e,r){for(var t=this,i=0,a=e;i<a.length;i+=1){var n=a[i],o=n.feature,s=n.index,y=n.sourceLayerIndex;if(t.layers[0].filter(o)){var l=loadGeometry(o);t.addFeature(o,l),r.featureIndex.insert(o,l,s,y,t.index)}}},FillBucket.prototype.isEmpty=function(){return 0===this.layoutVertexArray.length},FillBucket.prototype.serialize=function(e){return{zoom:this.zoom,layerIds:this.layers.map(function(e){return e.id}),layoutVertexArray:this.layoutVertexArray.serialize(e),indexArray:this.indexArray.serialize(e),indexArray2:this.indexArray2.serialize(e),programConfigurations:this.programConfigurations.serialize(e),segments:this.segments.get(),segments2:this.segments2.get()}},FillBucket.prototype.upload=function(e){this.layoutVertexBuffer=new VertexBuffer(e,this.layoutVertexArray),this.indexBuffer=new IndexBuffer(e,this.indexArray),this.indexBuffer2=new IndexBuffer(e,this.indexArray2),this.programConfigurations.upload(e)},FillBucket.prototype.destroy=function(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.indexBuffer2.destroy(),this.programConfigurations.destroy(),this.segments.destroy(),this.segments2.destroy())},FillBucket.prototype.addFeature=function(e,r){for(var t=this,i=0,a=classifyRings(r,EARCUT_MAX_RINGS);i<a.length;i+=1){for(var n=a[i],o=0,s=0,y=n;s<y.length;s+=1){o+=y[s].length}for(var l=t.segments.prepareSegment(o,t.layoutVertexArray,t.indexArray),u=l.vertexLength,f=[],g=[],x=0,p=n;x<p.length;x+=1){var h=p[x];if(0!==h.length){h!==n[0]&&g.push(f.length/2);var d=t.segments2.prepareSegment(h.length,t.layoutVertexArray,t.indexArray2),c=d.vertexLength;t.layoutVertexArray.emplaceBack(h[0].x,h[0].y),t.indexArray2.emplaceBack(c+h.length-1,c),f.push(h[0].x),f.push(h[0].y);for(var m=1;m<h.length;m++)t.layoutVertexArray.emplaceBack(h[m].x,h[m].y),t.indexArray2.emplaceBack(c+m-1,c+m),f.push(h[m].x),f.push(h[m].y);d.vertexLength+=h.length,d.primitiveLength+=h.length}}for(var A=earcut(f,g),B=0;B<A.length;B+=3)t.indexArray.emplaceBack(u+A[B],u+A[B+1],u+A[B+2]);l.vertexLength+=o,l.primitiveLength+=A.length/3}this.programConfigurations.populatePaintArrays(this.layoutVertexArray.length,e.properties)},FillBucket.programInterface=fillInterface,module.exports=FillBucket;\n},{\"../../gl/index_buffer\":61,\"../../gl/vertex_buffer\":62,\"../../util/classify_rings\":205,\"../index_array_type\":50,\"../load_geometry\":51,\"../program_configuration\":53,\"../segment\":55,\"../vertex_array_type\":56,\"earcut\":11}],45:[function(_dereq_,module,exports){\n\"use strict\";function addVertex(e,r,t,a,i,n,o,s){e.emplaceBack(r,t,2*Math.floor(a*FACTOR)+o,i*FACTOR*2,n*FACTOR*2,Math.round(s))}function isBoundaryEdge(e,r){return e.x===r.x&&(e.x<0||e.x>EXTENT)||e.y===r.y&&(e.y<0||e.y>EXTENT)}var ref=_dereq_(\"../segment\"),SegmentVector=ref.SegmentVector,MAX_VERTEX_ARRAY_LENGTH=ref.MAX_VERTEX_ARRAY_LENGTH,VertexBuffer=_dereq_(\"../../gl/vertex_buffer\"),IndexBuffer=_dereq_(\"../../gl/index_buffer\"),ref$1=_dereq_(\"../program_configuration\"),ProgramConfigurationSet=ref$1.ProgramConfigurationSet,createVertexArrayType=_dereq_(\"../vertex_array_type\"),ref$2=_dereq_(\"../index_array_type\"),TriangleIndexArray=ref$2.TriangleIndexArray,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\"}],indexArrayType:TriangleIndexArray,paintAttributes:[{property:\"fill-extrusion-base\"},{property:\"fill-extrusion-height\"},{property:\"fill-extrusion-color\"}]},FACTOR=Math.pow(2,13),LayoutVertexArrayType=createVertexArrayType(fillExtrusionInterface.layoutAttributes),FillExtrusionBucket=function(e){this.zoom=e.zoom,this.overscaling=e.overscaling,this.layers=e.layers,this.index=e.index,this.layoutVertexArray=new LayoutVertexArrayType(e.layoutVertexArray),this.indexArray=new TriangleIndexArray(e.indexArray),this.programConfigurations=new ProgramConfigurationSet(fillExtrusionInterface,e.layers,e.zoom,e.programConfigurations),this.segments=new SegmentVector(e.segments)};FillExtrusionBucket.prototype.populate=function(e,r){for(var t=this,a=0,i=e;a<i.length;a+=1){var n=i[a],o=n.feature,s=n.index,u=n.sourceLayerIndex;if(t.layers[0].filter(o)){var y=loadGeometry(o);t.addFeature(o,y),r.featureIndex.insert(o,y,s,u,t.index)}}},FillExtrusionBucket.prototype.isEmpty=function(){return 0===this.layoutVertexArray.length},FillExtrusionBucket.prototype.serialize=function(e){return{zoom:this.zoom,layerIds:this.layers.map(function(e){return e.id}),layoutVertexArray:this.layoutVertexArray.serialize(e),indexArray:this.indexArray.serialize(e),programConfigurations:this.programConfigurations.serialize(e),segments:this.segments.get()}},FillExtrusionBucket.prototype.upload=function(e){this.layoutVertexBuffer=new VertexBuffer(e,this.layoutVertexArray),this.indexBuffer=new IndexBuffer(e,this.indexArray),this.programConfigurations.upload(e)},FillExtrusionBucket.prototype.destroy=function(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.programConfigurations.destroy(),this.segments.destroy())},FillExtrusionBucket.prototype.addFeature=function(e,r){for(var t=this,a=0,i=classifyRings(r,EARCUT_MAX_RINGS);a<i.length;a+=1){for(var n=i[a],o=0,s=0,u=n;s<u.length;s+=1){o+=u[s].length}for(var y=t.segments.prepareSegment(4,t.layoutVertexArray,t.indexArray),l=0,x=n;l<x.length;l+=1){var f=x[l];if(0!==f.length)for(var g=0,p=0;p<f.length;p++){var d=f[p];if(p>=1){var h=f[p-1];if(!isBoundaryEdge(d,h)){y.vertexLength+4>MAX_VERTEX_ARRAY_LENGTH&&(y=t.segments.prepareSegment(4,t.layoutVertexArray,t.indexArray));var A=d.sub(h)._perp()._unit();addVertex(t.layoutVertexArray,d.x,d.y,A.x,A.y,0,0,g),addVertex(t.layoutVertexArray,d.x,d.y,A.x,A.y,0,1,g),g+=h.dist(d),addVertex(t.layoutVertexArray,h.x,h.y,A.x,A.y,0,0,g),addVertex(t.layoutVertexArray,h.x,h.y,A.x,A.y,0,1,g);var c=y.vertexLength;t.indexArray.emplaceBack(c,c+1,c+2),t.indexArray.emplaceBack(c+1,c+2,c+3),y.vertexLength+=4,y.primitiveLength+=2}}}}y.vertexLength+o>MAX_VERTEX_ARRAY_LENGTH&&(y=t.segments.prepareSegment(o,t.layoutVertexArray,t.indexArray));for(var m=[],V=[],E=y.vertexLength,v=0,_=n;v<_.length;v+=1){var T=_[v];if(0!==T.length){T!==n[0]&&V.push(m.length/2);for(var B=0;B<T.length;B++){var R=T[B];addVertex(t.layoutVertexArray,R.x,R.y,0,0,1,1,0),m.push(R.x),m.push(R.y)}}}for(var I=earcut(m,V),C=0;C<I.length;C+=3)t.indexArray.emplaceBack(E+I[C],E+I[C+1],E+I[C+2]);y.primitiveLength+=I.length/3,y.vertexLength+=o}this.programConfigurations.populatePaintArrays(this.layoutVertexArray.length,e.properties)},FillExtrusionBucket.programInterface=fillExtrusionInterface,module.exports=FillExtrusionBucket;\n},{\"../../gl/index_buffer\":61,\"../../gl/vertex_buffer\":62,\"../../util/classify_rings\":205,\"../extent\":48,\"../index_array_type\":50,\"../load_geometry\":51,\"../program_configuration\":53,\"../segment\":55,\"../vertex_array_type\":56,\"earcut\":11}],46:[function(_dereq_,module,exports){\n\"use strict\";function addLineVertex(e,t,r,i,a,n,s){e.emplaceBack(t.x,t.y,i?1:0,a?1:-1,Math.round(EXTRUDE_SCALE*r.x)+128,Math.round(EXTRUDE_SCALE*r.y)+128,1+(0===n?0:n<0?-1:1)|(s*LINE_DISTANCE_SCALE&63)<<2,s*LINE_DISTANCE_SCALE>>6)}var ref=_dereq_(\"../segment\"),SegmentVector=ref.SegmentVector,VertexBuffer=_dereq_(\"../../gl/vertex_buffer\"),IndexBuffer=_dereq_(\"../../gl/index_buffer\"),ref$1=_dereq_(\"../program_configuration\"),ProgramConfigurationSet=ref$1.ProgramConfigurationSet,createVertexArrayType=_dereq_(\"../vertex_array_type\"),ref$2=_dereq_(\"../index_array_type\"),TriangleIndexArray=ref$2.TriangleIndexArray,loadGeometry=_dereq_(\"../load_geometry\"),EXTENT=_dereq_(\"../extent\"),vectorTileFeatureTypes=_dereq_(\"@mapbox/vector-tile\").VectorTileFeature.types,EXTRUDE_SCALE=63,COS_HALF_SHARP_CORNER=Math.cos(Math.PI/180*37.5),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_normal\",components:4,type:\"Int16\"},{name:\"a_data\",components:4,type:\"Uint8\"}],paintAttributes:[{property:\"line-color\"},{property:\"line-blur\"},{property:\"line-opacity\"},{property:\"line-gap-width\",name:\"gapwidth\"},{property:\"line-offset\"},{property:\"line-width\"},{property:\"line-width\",name:\"floorwidth\",useIntegerZoom:!0}],indexArrayType:TriangleIndexArray},LayoutVertexArrayType=createVertexArrayType(lineInterface.layoutAttributes),LineBucket=function(e){this.zoom=e.zoom,this.overscaling=e.overscaling,this.layers=e.layers,this.index=e.index,this.layoutVertexArray=new LayoutVertexArrayType(e.layoutVertexArray),this.indexArray=new TriangleIndexArray(e.indexArray),this.programConfigurations=new ProgramConfigurationSet(lineInterface,e.layers,e.zoom,e.programConfigurations),this.segments=new SegmentVector(e.segments)};LineBucket.prototype.populate=function(e,t){for(var r=this,i=0,a=e;i<a.length;i+=1){var n=a[i],s=n.feature,o=n.index,u=n.sourceLayerIndex;if(r.layers[0].filter(s)){var d=loadGeometry(s);r.addFeature(s,d),t.featureIndex.insert(s,d,o,u,r.index)}}},LineBucket.prototype.isEmpty=function(){return 0===this.layoutVertexArray.length},LineBucket.prototype.serialize=function(e){return{zoom:this.zoom,layerIds:this.layers.map(function(e){return e.id}),layoutVertexArray:this.layoutVertexArray.serialize(e),indexArray:this.indexArray.serialize(e),programConfigurations:this.programConfigurations.serialize(e),segments:this.segments.get()}},LineBucket.prototype.upload=function(e){this.layoutVertexBuffer=new VertexBuffer(e,this.layoutVertexArray),this.indexBuffer=new IndexBuffer(e,this.indexArray),this.programConfigurations.upload(e)},LineBucket.prototype.destroy=function(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.programConfigurations.destroy(),this.segments.destroy())},LineBucket.prototype.addFeature=function(e,t){for(var r=this,i=this.layers[0].layout,a=this.layers[0].getLayoutValue(\"line-join\",{zoom:this.zoom},e.properties),n=i[\"line-cap\"],s=i[\"line-miter-limit\"],o=i[\"line-round-limit\"],u=0,d=t;u<d.length;u+=1){var l=d[u];r.addLine(l,e,a,n,s,o)}},LineBucket.prototype.addLine=function(e,t,r,i,a,n){for(var s=this,o=t.properties,u=\"Polygon\"===vectorTileFeatureTypes[t.type],d=e.length;d>=2&&e[d-1].equals(e[d-2]);)d--;for(var l=0;l<d-1&&e[l].equals(e[l+1]);)l++;if(!(d<(u?3:2))){\"bevel\"===r&&(a=1.05);var y=SHARP_CORNER_OFFSET*(EXTENT/(512*this.overscaling)),h=e[l],p=this.segments.prepareSegment(10*d,this.layoutVertexArray,this.indexArray);this.distance=0;var c,f,x,m=i,g=u?\"butt\":i,_=!0,A=void 0,v=void 0,V=void 0,C=void 0;this.e1=this.e2=this.e3=-1,u&&(c=e[d-2],C=h.sub(c)._unit()._perp());for(var L=l;L<d;L++)if(!(v=u&&L===d-1?e[l+1]:e[L+1])||!e[L].equals(v)){C&&(V=C),c&&(A=c),c=e[L],C=v?v.sub(c)._unit()._perp():V,V=V||C;var E=V.add(C);0===E.x&&0===E.y||E._unit();var S=E.x*C.x+E.y*C.y,I=0!==S?1/S:1/0,T=S<COS_HALF_SHARP_CORNER&&A&&v;if(T&&L>l){var B=c.dist(A);if(B>2*y){var b=c.sub(c.sub(A)._mult(y/B)._round());s.distance+=b.dist(A),s.addCurrentVertex(b,s.distance,V.mult(1),0,0,!1,p),A=b}}var N=A&&v,k=N?r:v?m:g;if(N&&\"round\"===k&&(I<n?k=\"miter\":I<=2&&(k=\"fakeround\")),\"miter\"===k&&I>a&&(k=\"bevel\"),\"bevel\"===k&&(I>2&&(k=\"flipbevel\"),I<a&&(k=\"miter\")),A&&(s.distance+=c.dist(A)),\"miter\"===k)E._mult(I),s.addCurrentVertex(c,s.distance,E,0,0,!1,p);else if(\"flipbevel\"===k){if(I>100)E=C.clone().mult(-1);else{var R=V.x*C.y-V.y*C.x>0?-1:1,F=I*V.add(C).mag()/V.sub(C).mag();E._perp()._mult(F*R)}s.addCurrentVertex(c,s.distance,E,0,0,!1,p),s.addCurrentVertex(c,s.distance,E.mult(-1),0,0,!1,p)}else if(\"bevel\"===k||\"fakeround\"===k){var q=V.x*C.y-V.y*C.x>0,P=-Math.sqrt(I*I-1);if(q?(x=0,f=P):(f=0,x=P),_||s.addCurrentVertex(c,s.distance,V,f,x,!1,p),\"fakeround\"===k){for(var w=Math.floor(8*(.5-(S-.5))),z=void 0,D=0;D<w;D++)z=C.mult((D+1)/(w+1))._add(V)._unit(),s.addPieSliceVertex(c,s.distance,z,q,p);s.addPieSliceVertex(c,s.distance,E,q,p);for(var M=w-1;M>=0;M--)z=V.mult((M+1)/(w+1))._add(C)._unit(),s.addPieSliceVertex(c,s.distance,z,q,p)}v&&s.addCurrentVertex(c,s.distance,C,-f,-x,!1,p)}else\"butt\"===k?(_||s.addCurrentVertex(c,s.distance,V,0,0,!1,p),v&&s.addCurrentVertex(c,s.distance,C,0,0,!1,p)):\"square\"===k?(_||(s.addCurrentVertex(c,s.distance,V,1,1,!1,p),s.e1=s.e2=-1),v&&s.addCurrentVertex(c,s.distance,C,-1,-1,!1,p)):\"round\"===k&&(_||(s.addCurrentVertex(c,s.distance,V,0,0,!1,p),s.addCurrentVertex(c,s.distance,V,1,1,!0,p),s.e1=s.e2=-1),v&&(s.addCurrentVertex(c,s.distance,C,-1,-1,!0,p),s.addCurrentVertex(c,s.distance,C,0,0,!1,p)));if(T&&L<d-1){var O=c.dist(v);if(O>2*y){var X=c.add(v.sub(c)._mult(y/O)._round());s.distance+=X.dist(c),s.addCurrentVertex(X,s.distance,C.mult(1),0,0,!1,p),c=X}}_=!1}this.programConfigurations.populatePaintArrays(this.layoutVertexArray.length,o)}},LineBucket.prototype.addCurrentVertex=function(e,t,r,i,a,n,s){var o,u=this.layoutVertexArray,d=this.indexArray;o=r.clone(),i&&o._sub(r.perp()._mult(i)),addLineVertex(u,e,o,n,!1,i,t),this.e3=s.vertexLength++,this.e1>=0&&this.e2>=0&&(d.emplaceBack(this.e1,this.e2,this.e3),s.primitiveLength++),this.e1=this.e2,this.e2=this.e3,o=r.mult(-1),a&&o._sub(r.perp()._mult(a)),addLineVertex(u,e,o,n,!0,-a,t),this.e3=s.vertexLength++,this.e1>=0&&this.e2>=0&&(d.emplaceBack(this.e1,this.e2,this.e3),s.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,s))},LineBucket.prototype.addPieSliceVertex=function(e,t,r,i,a){r=r.mult(i?-1:1);var n=this.layoutVertexArray,s=this.indexArray;addLineVertex(n,e,r,!1,i,0,t),this.e3=a.vertexLength++,this.e1>=0&&this.e2>=0&&(s.emplaceBack(this.e1,this.e2,this.e3),a.primitiveLength++),i?this.e2=this.e3:this.e1=this.e3},LineBucket.programInterface=lineInterface,module.exports=LineBucket;\n},{\"../../gl/index_buffer\":61,\"../../gl/vertex_buffer\":62,\"../extent\":48,\"../index_array_type\":50,\"../load_geometry\":51,\"../program_configuration\":53,\"../segment\":55,\"../vertex_array_type\":56,\"@mapbox/vector-tile\":6}],47:[function(_dereq_,module,exports){\n\"use strict\";function addVertex(e,t,o,r,a,i,n,s){e.emplaceBack(t,o,Math.round(64*r),Math.round(64*a),i,n,s?s[0]:void 0,s?s[1]:void 0)}function addDynamicAttributes(e,t,o,r){var a=2*Math.PI,i=packUint8ToFloat((o+a)%a/a*255,10*r);e.emplaceBack(t.x,t.y,i),e.emplaceBack(t.x,t.y,i),e.emplaceBack(t.x,t.y,i),e.emplaceBack(t.x,t.y,i)}function addCollisionBoxVertex(e,t,o,r,a,i){return e.emplaceBack(t.x,t.y,o.x,o.y,Math.round(r.x),Math.round(r.y),10*a,10*i)}function getSizeData(e,t,o){var r={};if(r.isFeatureConstant=t.isLayoutValueFeatureConstant(o),r.isZoomConstant=t.isLayoutValueZoomConstant(o),r.isFeatureConstant&&(r.layoutSize=t.getLayoutValue(o,{zoom:e+1})),!r.isZoomConstant){for(var a=t.getLayoutValueStopZoomLevels(o),i=0;i<a.length&&a[i]<=e;)i++;i=Math.max(0,i-1);for(var n=i;n<a.length&&a[n]<e+1;)n++;n=Math.min(a.length-1,n),r.coveringZoomRange=[a[i],a[n]],t.isLayoutValueFeatureConstant(o)&&(r.coveringStopValues=[t.getLayoutValue(o,{zoom:a[i]}),t.getLayoutValue(o,{zoom:a[n]})]),r.functionBase=t.getLayoutProperty(o).base,void 0===r.functionBase&&(r.functionBase=1),r.functionType=t.getLayoutProperty(o).type||\"exponential\"}return r}function getSizeVertexData(e,t,o,r,a){return e.isLayoutValueZoomConstant(r)&&!e.isLayoutValueFeatureConstant(r)?[10*e.getLayoutValue(r,{},a)]:e.isLayoutValueZoomConstant(r)||e.isLayoutValueFeatureConstant(r)?null:[10*e.getLayoutValue(r,{zoom:o[0]},a),10*e.getLayoutValue(r,{zoom:o[1]},a)]}var Point=_dereq_(\"@mapbox/point-geometry\"),ref=_dereq_(\"../segment\"),SegmentVector=ref.SegmentVector,VertexBuffer=_dereq_(\"../../gl/vertex_buffer\"),IndexBuffer=_dereq_(\"../../gl/index_buffer\"),ref$1=_dereq_(\"../program_configuration\"),ProgramConfigurationSet=ref$1.ProgramConfigurationSet,createVertexArrayType=_dereq_(\"../vertex_array_type\"),ref$2=_dereq_(\"../index_array_type\"),TriangleIndexArray=ref$2.TriangleIndexArray,LineIndexArray=ref$2.LineIndexArray,EXTENT=_dereq_(\"../extent\"),ref$3=_dereq_(\"../../shaders/encode_attribute\"),packUint8ToFloat=ref$3.packUint8ToFloat,Anchor=_dereq_(\"../../symbol/anchor\"),getAnchors=_dereq_(\"../../symbol/get_anchors\"),resolveTokens=_dereq_(\"../../util/token\"),ref$4=_dereq_(\"../../symbol/quads\"),getGlyphQuads=ref$4.getGlyphQuads,getIconQuads=ref$4.getIconQuads,ref$5=_dereq_(\"../../symbol/shaping\"),shapeText=ref$5.shapeText,shapeIcon=ref$5.shapeIcon,WritingMode=ref$5.WritingMode,transformText=_dereq_(\"../../symbol/transform_text\"),mergeLines=_dereq_(\"../../symbol/mergelines\"),clipLine=_dereq_(\"../../symbol/clip_line\"),util=_dereq_(\"../../util/util\"),scriptDetection=_dereq_(\"../../util/script_detection\"),loadGeometry=_dereq_(\"../load_geometry\"),CollisionFeature=_dereq_(\"../../symbol/collision_feature\"),findPoleOfInaccessibility=_dereq_(\"../../util/find_pole_of_inaccessibility\"),classifyRings=_dereq_(\"../../util/classify_rings\"),vectorTileFeatureTypes=_dereq_(\"@mapbox/vector-tile\").VectorTileFeature.types,createStructArrayType=_dereq_(\"../../util/struct_array\"),verticalizePunctuation=_dereq_(\"../../util/verticalize_punctuation\"),PlacedSymbolArray=createStructArrayType({members:[{type:\"Int16\",name:\"anchorX\"},{type:\"Int16\",name:\"anchorY\"},{type:\"Uint16\",name:\"glyphStartIndex\"},{type:\"Uint16\",name:\"numGlyphs\"},{type:\"Uint32\",name:\"lineStartIndex\"},{type:\"Uint32\",name:\"lineLength\"},{type:\"Uint16\",name:\"segment\"},{type:\"Uint16\",name:\"lowerSize\"},{type:\"Uint16\",name:\"upperSize\"},{type:\"Float32\",name:\"lineOffsetX\"},{type:\"Float32\",name:\"lineOffsetY\"},{type:\"Float32\",name:\"placementZoom\"},{type:\"Uint8\",name:\"vertical\"}]}),GlyphOffsetArray=createStructArrayType({members:[{type:\"Float32\",name:\"offsetX\"}]}),LineVertexArray=createStructArrayType({members:[{type:\"Int16\",name:\"x\"},{type:\"Int16\",name:\"y\"}]}),layoutAttributes=[{name:\"a_pos_offset\",components:4,type:\"Int16\"},{name:\"a_data\",components:4,type:\"Uint16\"}],dynamicLayoutAttributes=[{name:\"a_projected_pos\",components:3,type:\"Float32\"}],symbolInterfaces={text:{layoutAttributes:layoutAttributes,dynamicLayoutAttributes:dynamicLayoutAttributes,indexArrayType:TriangleIndexArray,paintAttributes:[{property:\"text-color\",name:\"fill_color\"},{property:\"text-halo-color\",name:\"halo_color\"},{property:\"text-halo-width\",name:\"halo_width\"},{property:\"text-halo-blur\",name:\"halo_blur\"},{property:\"text-opacity\",name:\"opacity\"}]},icon:{layoutAttributes:layoutAttributes,dynamicLayoutAttributes:dynamicLayoutAttributes,indexArrayType:TriangleIndexArray,paintAttributes:[{property:\"icon-color\",name:\"fill_color\"},{property:\"icon-halo-color\",name:\"halo_color\"},{property:\"icon-halo-width\",name:\"halo_width\"},{property:\"icon-halo-blur\",name:\"halo_blur\"},{property:\"icon-opacity\",name:\"opacity\"}]},collisionBox:{layoutAttributes:[{name:\"a_pos\",components:2,type:\"Int16\"},{name:\"a_anchor_pos\",components:2,type:\"Int16\"},{name:\"a_extrude\",components:2,type:\"Int16\"},{name:\"a_data\",components:2,type:\"Uint8\"}],indexArrayType:LineIndexArray}},SymbolBuffers=function(e,t,o,r){this.programInterface=e;var a=createVertexArrayType(e.layoutAttributes),i=e.indexArrayType;if(this.layoutVertexArray=new a(r&&r.layoutVertexArray),this.indexArray=new i(r&&r.indexArray),this.programConfigurations=new ProgramConfigurationSet(e,t,o,r&&r.programConfigurations),this.segments=new SegmentVector(r&&r.segments),e.dynamicLayoutAttributes){var n=createVertexArrayType(e.dynamicLayoutAttributes);this.dynamicLayoutVertexArray=new n(r&&r.dynamicLayoutVertexArray)}};SymbolBuffers.prototype.serialize=function(e){return{layoutVertexArray:this.layoutVertexArray.serialize(e),indexArray:this.indexArray.serialize(e),programConfigurations:this.programConfigurations.serialize(e),segments:this.segments.get(),dynamicLayoutVertexArray:this.dynamicLayoutVertexArray&&this.dynamicLayoutVertexArray.serialize(e)}},SymbolBuffers.prototype.upload=function(e){this.layoutVertexBuffer=new VertexBuffer(e,this.layoutVertexArray),this.indexBuffer=new IndexBuffer(e,this.indexArray),this.programConfigurations.upload(e),this.programInterface.dynamicLayoutAttributes&&(this.dynamicLayoutVertexBuffer=new VertexBuffer(e,this.dynamicLayoutVertexArray,!0))},SymbolBuffers.prototype.destroy=function(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.programConfigurations.destroy(),this.segments.destroy(),this.dynamicLayoutVertexBuffer&&this.dynamicLayoutVertexBuffer.destroy())};var SymbolBucket=function(e){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.pixelRatio=e.pixelRatio,e.text)this.text=new SymbolBuffers(symbolInterfaces.text,e.layers,e.zoom,e.text),this.icon=new SymbolBuffers(symbolInterfaces.icon,e.layers,e.zoom,e.icon),this.collisionBox=new SymbolBuffers(symbolInterfaces.collisionBox,e.layers,e.zoom,e.collisionBox),this.textSizeData=e.textSizeData,this.iconSizeData=e.iconSizeData,this.placedGlyphArray=new PlacedSymbolArray(e.placedGlyphArray),this.placedIconArray=new PlacedSymbolArray(e.placedIconArray),this.glyphOffsetArray=new GlyphOffsetArray(e.glyphOffsetArray),this.lineVertexArray=new LineVertexArray(e.lineVertexArray);else{var t=this.layers[0];this.textSizeData=getSizeData(this.zoom,t,\"text-size\"),this.iconSizeData=getSizeData(this.zoom,t,\"icon-size\")}};SymbolBucket.prototype.populate=function(e,t){var o=this,r=this.layers[0],a=r.layout,i=a[\"text-font\"],n=(!r.isLayoutValueFeatureConstant(\"text-field\")||a[\"text-field\"])&&i,s=!r.isLayoutValueFeatureConstant(\"icon-image\")||a[\"icon-image\"];if(this.features=[],n||s){for(var l=t.iconDependencies,y=t.glyphDependencies,c=y[i]=y[i]||{},u={zoom:this.zoom},p=0,x=e;p<x.length;p+=1){var m=x[p],h=m.feature,d=m.index,f=m.sourceLayerIndex;if(r.filter(h)){var g=void 0;n&&(g=r.getLayoutValue(\"text-field\",u,h.properties),r.isLayoutValueFeatureConstant(\"text-field\")&&(g=resolveTokens(h.properties,g)),g=transformText(g,r,u,h.properties));var b=void 0;if(s&&(b=r.getLayoutValue(\"icon-image\",u,h.properties),r.isLayoutValueFeatureConstant(\"icon-image\")&&(b=resolveTokens(h.properties,b))),(g||b)&&(o.features.push({text:g,icon:b,index:d,sourceLayerIndex:f,geometry:loadGeometry(h),properties:h.properties,type:vectorTileFeatureTypes[h.type]}),b&&(l[b]=!0),g))for(var A=\"map\"===a[\"text-rotation-alignment\"]&&\"line\"===a[\"symbol-placement\"],v=scriptDetection.allowsVerticalWritingMode(g),S=0;S<g.length;S++)if(c[g.charCodeAt(S)]=!0,A&&v){var I=verticalizePunctuation.lookup[g.charAt(S)];I&&(c[I.charCodeAt(0)]=!0)}}}\"line\"===a[\"symbol-placement\"]&&(this.features=mergeLines(this.features))}},SymbolBucket.prototype.isEmpty=function(){return 0===this.icon.layoutVertexArray.length&&0===this.text.layoutVertexArray.length&&0===this.collisionBox.layoutVertexArray.length},SymbolBucket.prototype.serialize=function(e){return{zoom:this.zoom,layerIds:this.layers.map(function(e){return e.id}),sdfIcons:this.sdfIcons,iconsNeedLinear:this.iconsNeedLinear,textSizeData:this.textSizeData,iconSizeData:this.iconSizeData,placedGlyphArray:this.placedGlyphArray.serialize(e),placedIconArray:this.placedIconArray.serialize(e),glyphOffsetArray:this.glyphOffsetArray.serialize(e),lineVertexArray:this.lineVertexArray.serialize(e),text:this.text.serialize(e),icon:this.icon.serialize(e),collisionBox:this.collisionBox.serialize(e)}},SymbolBucket.prototype.upload=function(e){this.text.upload(e),this.icon.upload(e),this.collisionBox.upload(e)},SymbolBucket.prototype.destroy=function(){this.text.destroy(),this.icon.destroy(),this.collisionBox.destroy()},SymbolBucket.prototype.prepare=function(e,t,o,r){var a=this;this.symbolInstances=[];var i=512*this.overscaling;this.tilePixelRatio=EXTENT/i,this.compareText={},this.iconsNeedLinear=!1;for(var n=this.layers[0].layout,s=24*n[\"text-line-height\"],l=n[\"text-font\"].join(\",\"),y=\"map\"===n[\"text-rotation-alignment\"]&&\"line\"===n[\"symbol-placement\"],c=e[l]||{},u=t[l]||{},p=0,x=a.features;p<x.length;p+=1){var m=x[p],h={},d=m.text;if(d){var f=a.layers[0].getLayoutValue(\"text-offset\",{zoom:a.zoom},m.properties).map(function(e){return 24*e}),g=24*a.layers[0].getLayoutValue(\"text-letter-spacing\",{zoom:a.zoom},m.properties),b=scriptDetection.allowsLetterSpacing(d)?g:0,A=a.layers[0].getLayoutValue(\"text-anchor\",{zoom:a.zoom},m.properties),v=a.layers[0].getLayoutValue(\"text-justify\",{zoom:a.zoom},m.properties),S=\"line\"!==n[\"symbol-placement\"]?24*a.layers[0].getLayoutValue(\"text-max-width\",{zoom:a.zoom},m.properties):0,I=function(e,t){return shapeText(e,c,S,s,A,v,b,f,24,t)};h[WritingMode.horizontal]=I(d,WritingMode.horizontal),scriptDetection.allowsVerticalWritingMode(d)&&y&&(h[WritingMode.vertical]=I(d,WritingMode.vertical))}var B=void 0;if(m.icon){var z=o[m.icon];z&&(B=shapeIcon(r[m.icon],a.layers[0].getLayoutValue(\"icon-offset\",{zoom:a.zoom},m.properties),a.layers[0].getLayoutValue(\"icon-anchor\",{zoom:a.zoom},m.properties)),void 0===a.sdfIcons?a.sdfIcons=z.sdf:a.sdfIcons!==z.sdf&&util.warnOnce(\"Style sheet warning: Cannot mix SDF and non-SDF icons in one buffer\"),z.pixelRatio!==a.pixelRatio?a.iconsNeedLinear=!0:0===n[\"icon-rotate\"]&&a.layers[0].isLayoutValueFeatureConstant(\"icon-rotate\")||(a.iconsNeedLinear=!0))}(h[WritingMode.horizontal]||B)&&a.addFeature(m,h,B,u)}},SymbolBucket.prototype.addFeature=function(e,t,o,r){var a=this,i=this.layers[0].getLayoutValue(\"text-size\",{zoom:this.zoom+1},e.properties),n=this.layers[0].getLayoutValue(\"icon-size\",{zoom:this.zoom+1},e.properties),s=this.layers[0].getLayoutValue(\"text-offset\",{zoom:this.zoom},e.properties),l=this.layers[0].getLayoutValue(\"icon-offset\",{zoom:this.zoom},e.properties),y=this.layers[0].getLayoutValue(\"text-size\",{zoom:18},e.properties);void 0===y&&(y=i);var c=this.layers[0].layout,u=i/24,p=this.tilePixelRatio*u,x=this.tilePixelRatio*y/24,m=this.tilePixelRatio*n,h=this.tilePixelRatio*c[\"symbol-spacing\"],d=c[\"symbol-avoid-edges\"],f=c[\"text-padding\"]*this.tilePixelRatio,g=c[\"icon-padding\"]*this.tilePixelRatio,b=c[\"text-max-angle\"]/180*Math.PI,A=\"map\"===c[\"text-rotation-alignment\"]&&\"line\"===c[\"symbol-placement\"],v=\"map\"===c[\"icon-rotation-alignment\"]&&\"line\"===c[\"symbol-placement\"],S=c[\"text-allow-overlap\"]||c[\"icon-allow-overlap\"]||c[\"text-ignore-placement\"]||c[\"icon-ignore-placement\"],I=c[\"symbol-placement\"],B=h/2,z=function(i,n){var y=!(n.x<0||n.x>EXTENT||n.y<0||n.y>EXTENT);if(!d||y){var c=y||S;a.addSymbolInstance(n,i,t,o,a.layers[0],c,a.collisionBoxArray,e.index,e.sourceLayerIndex,a.index,p,f,A,s,m,g,v,l,{zoom:a.zoom},e.properties,r)}};if(\"line\"===I)for(var V=0,L=clipLine(e.geometry,0,0,EXTENT,EXTENT);V<L.length;V+=1)for(var T=L[V],w=getAnchors(T,h,b,t[WritingMode.vertical]||t[WritingMode.horizontal],o,24,x,a.overscaling,EXTENT),M=0,C=w;M<C.length;M+=1){var _=C[M],k=t[WritingMode.horizontal];k&&a.anchorIsTooClose(k.text,B,_)||z(T,_)}else if(\"Polygon\"===e.type)for(var P=0,F=classifyRings(e.geometry,0);P<F.length;P+=1){var E=F[P],D=findPoleOfInaccessibility(E,16);z(E[0],new Anchor(D.x,D.y,0))}else if(\"LineString\"===e.type)for(var q=0,O=e.geometry;q<O.length;q+=1){var N=O[q];z(N,new Anchor(N[0].x,N[0].y,0))}else if(\"Point\"===e.type)for(var W=0,R=e.geometry;W<R.length;W+=1)for(var G=R[W],$=0,U=G;$<U.length;$+=1){var X=U[$];z([X],new Anchor(X.x,X.y,0))}},SymbolBucket.prototype.anchorIsTooClose=function(e,t,o){var r=this.compareText;if(e in r){for(var a=r[e],i=a.length-1;i>=0;i--)if(o.dist(a[i])<t)return!0}else r[e]=[];return r[e].push(o),!1},SymbolBucket.prototype.place=function(e,t){var o=this;this.text=new SymbolBuffers(symbolInterfaces.text,this.layers,this.zoom),this.icon=new SymbolBuffers(symbolInterfaces.icon,this.layers,this.zoom),this.collisionBox=new SymbolBuffers(symbolInterfaces.collisionBox,this.layers,this.zoom),this.placedGlyphArray=new PlacedSymbolArray,this.placedIconArray=new PlacedSymbolArray,this.glyphOffsetArray=new GlyphOffsetArray,this.lineVertexArray=new LineVertexArray;var r=this.layers[0],a=r.layout,i=e.maxScale,n=\"map\"===a[\"text-rotation-alignment\"]&&\"line\"===a[\"symbol-placement\"],s=\"map\"===a[\"icon-rotation-alignment\"]&&\"line\"===a[\"symbol-placement\"];if(a[\"text-allow-overlap\"]||a[\"icon-allow-overlap\"]||a[\"text-ignore-placement\"]||a[\"icon-ignore-placement\"]){var l=e.angle,y=Math.sin(l),c=Math.cos(l);this.symbolInstances.sort(function(e,t){return(y*e.anchor.x+c*e.anchor.y|0)-(y*t.anchor.x+c*t.anchor.y|0)||t.featureIndex-e.featureIndex})}for(var u=0,p=o.symbolInstances;u<p.length;u+=1){var x=p[u],m={boxStartIndex:x.textBoxStartIndex,boxEndIndex:x.textBoxEndIndex},h={boxStartIndex:x.iconBoxStartIndex,boxEndIndex:x.iconBoxEndIndex},d=!(x.textBoxStartIndex===x.textBoxEndIndex),f=!(x.iconBoxStartIndex===x.iconBoxEndIndex),g=a[\"text-optional\"]||!d,b=a[\"icon-optional\"]||!f,A=d?e.placeCollisionFeature(m,a[\"text-allow-overlap\"],a[\"symbol-avoid-edges\"]):e.minScale,v=f?e.placeCollisionFeature(h,a[\"icon-allow-overlap\"],a[\"symbol-avoid-edges\"]):e.minScale;if(g||b?!b&&A?A=Math.max(v,A):!g&&v&&(v=Math.max(v,A)):v=A=Math.max(v,A),d||f){for(var S=x.line,I=o.lineVertexArray.length,B=0;B<S.length;B++)o.lineVertexArray.emplaceBack(S[B].x,S[B].y);var z=o.lineVertexArray.length-I;if(d&&(e.insertCollisionFeature(m,A,a[\"text-ignore-placement\"]),A<=i)){var V=getSizeVertexData(r,o.zoom,o.textSizeData.coveringZoomRange,\"text-size\",x.featureProperties);o.addSymbols(o.text,x.glyphQuads,A,V,a[\"text-keep-upright\"],x.textOffset,n,e.angle,x.featureProperties,x.writingModes,x.anchor,I,z,o.placedGlyphArray)}if(f&&(e.insertCollisionFeature(h,v,a[\"icon-ignore-placement\"]),v<=i)){var L=getSizeVertexData(r,o.zoom,o.iconSizeData.coveringZoomRange,\"icon-size\",x.featureProperties);o.addSymbols(o.icon,x.iconQuads,v,L,a[\"icon-keep-upright\"],x.iconOffset,s,e.angle,x.featureProperties,0,x.anchor,I,z,o.placedIconArray)}}}t&&this.addToDebugBuffers(e)},SymbolBucket.prototype.addSymbols=function(e,t,o,r,a,i,n,s,l,y,c,u,p,x){for(var m=this,h=e.indexArray,d=e.layoutVertexArray,f=e.dynamicLayoutVertexArray,g=this.zoom,b=Math.max(Math.log(o)/Math.LN2+g,0),A=this.glyphOffsetArray.length,v=(c.angle+s+2*Math.PI)%(2*Math.PI),S=v>1*Math.PI/4&&v<=3*Math.PI/4||v>5*Math.PI/4&&v<=7*Math.PI/4,I=Boolean(y&WritingMode.vertical)&&S,B=0,z=t;B<z.length;B+=1){var V=z[B];if(!n||!a||V.writingMode===WritingMode.vertical===I){var L=V.tl,T=V.tr,w=V.bl,M=V.br,C=V.tex,_=e.segments.prepareSegment(4,e.layoutVertexArray,e.indexArray),k=_.vertexLength,P=V.glyphOffset[1];addVertex(d,c.x,c.y,L.x,P+L.y,C.x,C.y,r),addVertex(d,c.x,c.y,T.x,P+T.y,C.x+C.w,C.y,r),addVertex(d,c.x,c.y,w.x,P+w.y,C.x,C.y+C.h,r),addVertex(d,c.x,c.y,M.x,P+M.y,C.x+C.w,C.y+C.h,r),addDynamicAttributes(f,c,0,b),h.emplaceBack(k,k+1,k+2),h.emplaceBack(k+1,k+2,k+3),_.vertexLength+=4,_.primitiveLength+=2,m.glyphOffsetArray.emplaceBack(V.glyphOffset[0])}}x.emplaceBack(c.x,c.y,A,this.glyphOffsetArray.length-A,u,p,c.segment,r?r[0]:0,r?r[1]:0,i[0],i[1],b,I),e.programConfigurations.populatePaintArrays(e.layoutVertexArray.length,l)},SymbolBucket.prototype.addToDebugBuffers=function(e){for(var t=this,o=this.collisionBox,r=o.layoutVertexArray,a=o.indexArray,i=-e.angle,n=e.yStretch,s=0,l=t.symbolInstances;s<l.length;s+=1){var y=l[s];y.textCollisionFeature={boxStartIndex:y.textBoxStartIndex,boxEndIndex:y.textBoxEndIndex},y.iconCollisionFeature={boxStartIndex:y.iconBoxStartIndex,boxEndIndex:y.iconBoxEndIndex};for(var c=0;c<2;c++){var u=y[0===c?\"textCollisionFeature\":\"iconCollisionFeature\"];if(u)for(var p=u.boxStartIndex;p<u.boxEndIndex;p++){var x=t.collisionBoxArray.get(p);if(!(1===e.perspectiveRatio&&x.maxScale<1)){var m=x.anchorPoint,h=new Point(x.x1,x.y1*n)._rotate(i),d=new Point(x.x2,x.y1*n)._rotate(i),f=new Point(x.x1,x.y2*n)._rotate(i),g=new Point(x.x2,x.y2*n)._rotate(i),b=Math.max(0,Math.min(25,t.zoom+Math.log(x.maxScale)/Math.LN2)),A=Math.max(0,Math.min(25,t.zoom+Math.log(x.placementScale)/Math.LN2)),v=o.segments.prepareSegment(4,o.layoutVertexArray,o.indexArray),S=v.vertexLength;addCollisionBoxVertex(r,m,y.anchor,h,b,A),addCollisionBoxVertex(r,m,y.anchor,d,b,A),addCollisionBoxVertex(r,m,y.anchor,g,b,A),addCollisionBoxVertex(r,m,y.anchor,f,b,A),a.emplaceBack(S,S+1),a.emplaceBack(S+1,S+2),a.emplaceBack(S+2,S+3),a.emplaceBack(S+3,S),v.vertexLength+=4,v.primitiveLength+=4}}}}},SymbolBucket.prototype.addSymbolInstance=function(e,t,o,r,a,i,n,s,l,y,c,u,p,x,m,h,d,f,g,b,A){var v,S,I=[],B=[];for(var z in o){var V=parseInt(z,10);o[V]&&(B=B.concat(i?getGlyphQuads(e,o[V],a,p,g,b,A):[]),v=new CollisionFeature(n,t,e,s,l,y,o[V],c,u,p,!1))}var L=v?v.boxStartIndex:this.collisionBoxArray.length,T=v?v.boxEndIndex:this.collisionBoxArray.length;r&&(I=i?getIconQuads(e,r,a,d,o[WritingMode.horizontal],g,b):[],S=new CollisionFeature(n,t,e,s,l,y,r,m,h,d,!0));var w=S?S.boxStartIndex:this.collisionBoxArray.length,M=S?S.boxEndIndex:this.collisionBoxArray.length;T>SymbolBucket.MAX_INSTANCES&&util.warnOnce(\"Too many symbols being rendered in a tile. See https://github.com/mapbox/mapbox-gl-js/issues/2907\"),M>SymbolBucket.MAX_INSTANCES&&util.warnOnce(\"Too many glyphs being rendered in a tile. See https://github.com/mapbox/mapbox-gl-js/issues/2907\");var C=(o[WritingMode.vertical]?WritingMode.vertical:0)|(o[WritingMode.horizontal]?WritingMode.horizontal:0);this.symbolInstances.push({textBoxStartIndex:L,textBoxEndIndex:T,iconBoxStartIndex:w,iconBoxEndIndex:M,glyphQuads:B,iconQuads:I,textOffset:x,iconOffset:f,anchor:e,line:t,featureIndex:s,featureProperties:b,writingModes:C})},SymbolBucket.programInterfaces=symbolInterfaces,SymbolBucket.MAX_INSTANCES=65535,SymbolBucket.addDynamicAttributes=addDynamicAttributes,module.exports=SymbolBucket;\n},{\"../../gl/index_buffer\":61,\"../../gl/vertex_buffer\":62,\"../../shaders/encode_attribute\":85,\"../../symbol/anchor\":167,\"../../symbol/clip_line\":169,\"../../symbol/collision_feature\":171,\"../../symbol/get_anchors\":173,\"../../symbol/mergelines\":174,\"../../symbol/quads\":176,\"../../symbol/shaping\":177,\"../../symbol/transform_text\":179,\"../../util/classify_rings\":205,\"../../util/find_pole_of_inaccessibility\":211,\"../../util/script_detection\":218,\"../../util/struct_array\":220,\"../../util/token\":222,\"../../util/util\":223,\"../../util/verticalize_punctuation\":225,\"../extent\":48,\"../index_array_type\":50,\"../load_geometry\":51,\"../program_configuration\":53,\"../segment\":55,\"../vertex_array_type\":56,\"@mapbox/point-geometry\":2,\"@mapbox/vector-tile\":6}],48:[function(_dereq_,module,exports){\n\"use strict\";module.exports=8192;\n},{}],49:[function(_dereq_,module,exports){\n\"use strict\";function topDownFeatureComparator(e,r){return r-e}var Point=_dereq_(\"@mapbox/point-geometry\"),loadGeometry=_dereq_(\"./load_geometry\"),EXTENT=_dereq_(\"./extent\"),featureFilter=_dereq_(\"../style-spec/feature_filter\"),createStructArrayType=_dereq_(\"../util/struct_array\"),Grid=_dereq_(\"grid-index\"),DictionaryCoder=_dereq_(\"../util/dictionary_coder\"),vt=_dereq_(\"@mapbox/vector-tile\"),Protobuf=_dereq_(\"pbf\"),GeoJSONFeature=_dereq_(\"../util/vectortile_to_geojson\"),arraysIntersect=_dereq_(\"../util/util\").arraysIntersect,FeatureIndexArray=createStructArrayType({members:[{type:\"Uint32\",name:\"featureIndex\"},{type:\"Uint16\",name:\"sourceLayerIndex\"},{type:\"Uint16\",name:\"bucketIndex\"}]}),FeatureIndex=function(e,r,t,a){this.coord=e,this.overscaling=r,this.x=e.x,this.y=e.y,this.z=e.z-Math.log(r)/Math.LN2,this.grid=t||new Grid(EXTENT,16,0),this.featureIndexArray=a||new FeatureIndexArray};FeatureIndex.deserialize=function(e,r,t){var a=new FeatureIndex(e.coord,e.overscaling,new Grid(e.grid),new FeatureIndexArray(e.featureIndexArray));return a.rawTileData=r,a.bucketLayerIDs=e.bucketLayerIDs,a.setCollisionTile(t),a},FeatureIndex.prototype.insert=function(e,r,t,a,i){var n=this,o=this.featureIndexArray.length;this.featureIndexArray.emplaceBack(t,a,i);for(var s=0;s<r.length;s++){for(var u=r[s],y=[1/0,1/0,-1/0,-1/0],l=0;l<u.length;l++){var d=u[l];y[0]=Math.min(y[0],d.x),y[1]=Math.min(y[1],d.y),y[2]=Math.max(y[2],d.x),y[3]=Math.max(y[3],d.y)}n.grid.insert(o,y[0],y[1],y[2],y[3])}},FeatureIndex.prototype.setCollisionTile=function(e){this.collisionTile=e},FeatureIndex.prototype.serialize=function(e){var r=this.grid.toArrayBuffer();return e&&e.push(r),{coord:this.coord,overscaling:this.overscaling,grid:r,featureIndexArray:this.featureIndexArray.serialize(e),bucketLayerIDs:this.bucketLayerIDs}},FeatureIndex.prototype.query=function(e,r){this.vtLayers||(this.vtLayers=new vt.VectorTile(new Protobuf(this.rawTileData)).layers,this.sourceLayerCoder=new DictionaryCoder(this.vtLayers?Object.keys(this.vtLayers).sort():[\"_geojsonTileLayer\"]));for(var t={},a=e.params||{},i=EXTENT/e.tileSize/e.scale,n=featureFilter(a.filter),o=e.queryGeometry,s=e.additionalRadius*i,u=1/0,y=1/0,l=-1/0,d=-1/0,c=0;c<o.length;c++)for(var h=o[c],f=0;f<h.length;f++){var x=h[f];u=Math.min(u,x.x),y=Math.min(y,x.y),l=Math.max(l,x.x),d=Math.max(d,x.y)}var v=this.grid.query(u-s,y-s,l+s,d+s);v.sort(topDownFeatureComparator),this.filterMatching(t,v,this.featureIndexArray,o,n,a.layers,r,e.bearing,i);var I=this.collisionTile.queryRenderedSymbols(o,e.scale);return I.sort(),this.filterMatching(t,I,this.collisionTile.collisionBoxArray,o,n,a.layers,r,e.bearing,i),t},FeatureIndex.prototype.filterMatching=function(e,r,t,a,i,n,o,s,u){for(var y,l=this,d=0;d<r.length;d++){var c=r[d];if(c!==y){y=c;var h=t.get(c),f=l.bucketLayerIDs[h.bucketIndex];if(!n||arraysIntersect(n,f)){var x=l.sourceLayerCoder.decode(h.sourceLayerIndex),v=l.vtLayers[x],I=v.feature(h.featureIndex);if(i(I))for(var p=null,g=0;g<f.length;g++){var m=f[g];if(!(n&&n.indexOf(m)<0)){var F=o[m];if(F&&(\"symbol\"===F.type||(p||(p=loadGeometry(I)),F.queryIntersectsFeature(a,I,p,l.z,s,u)))){var b=new GeoJSONFeature(I,l.z,l.x,l.y);b.layer=F.serialize();var L=e[m];void 0===L&&(L=e[m]=[]),L.push({featureIndex:c,feature:b})}}}}}}},FeatureIndex.prototype.hasLayer=function(e){for(var r=this,t=0,a=r.bucketLayerIDs;t<a.length;t+=1)for(var i=a[t],n=0,o=i;n<o.length;n+=1){var s=o[n];if(e===s)return!0}return!1},module.exports=FeatureIndex;\n},{\"../style-spec/feature_filter\":110,\"../util/dictionary_coder\":207,\"../util/struct_array\":220,\"../util/util\":223,\"../util/vectortile_to_geojson\":224,\"./extent\":48,\"./load_geometry\":51,\"@mapbox/point-geometry\":2,\"@mapbox/vector-tile\":6,\"grid-index\":22,\"pbf\":29}],50:[function(_dereq_,module,exports){\n\"use strict\";function createIndexArrayType(e){return createStructArrayType({members:[{type:\"Uint16\",name:\"vertices\",components:e}]})}var createStructArrayType=_dereq_(\"../util/struct_array\");module.exports={LineIndexArray:createIndexArrayType(2),TriangleIndexArray:createIndexArrayType(3)};\n},{\"../util/struct_array\":220}],51:[function(_dereq_,module,exports){\n\"use strict\";function createBounds(e){return{min:-1*Math.pow(2,e-1),max:Math.pow(2,e-1)-1}}var util=_dereq_(\"../util/util\"),EXTENT=_dereq_(\"./extent\"),bounds=createBounds(16);module.exports=function(e){for(var t=EXTENT/e.extent,r=e.loadGeometry(),n=0;n<r.length;n++)for(var u=r[n],o=0;o<u.length;o++){var a=u[o];a.x=Math.round(a.x*t),a.y=Math.round(a.y*t),(a.x<bounds.min||a.x>bounds.max||a.y<bounds.min||a.y>bounds.max)&&util.warnOnce(\"Geometry exceeds allowed extent, reduce your vector tile buffer size\")}return r};\n},{\"../util/util\":223,\"./extent\":48}],52:[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\":220}],53:[function(_dereq_,module,exports){\n\"use strict\";function packColor(r){return[packUint8ToFloat(255*r[0],255*r[1]),packUint8ToFloat(255*r[2],255*r[3])]}var createVertexArrayType=_dereq_(\"./vertex_array_type\"),interpolationFactor=_dereq_(\"../style-spec/function\").interpolationFactor,packUint8ToFloat=_dereq_(\"../shaders/encode_attribute\").packUint8ToFloat,VertexBuffer=_dereq_(\"../gl/vertex_buffer\"),ConstantBinder=function(r,t,o,e){this.name=r,this.type=t,this.property=o,this.useIntegerZoom=e};ConstantBinder.prototype.defines=function(){return[\"#define HAS_UNIFORM_u_\"+this.name]},ConstantBinder.prototype.populatePaintArray=function(){},ConstantBinder.prototype.setUniforms=function(r,t,o,e){var i=e.zoom,n=o.getPaintValue(this.property,{zoom:this.useIntegerZoom?Math.floor(i):i});\"color\"===this.type?r.uniform4fv(t.uniforms[\"u_\"+this.name],n):r.uniform1f(t.uniforms[\"u_\"+this.name],n)};var SourceFunctionBinder=function(r,t,o){this.name=r,this.type=t,this.property=o};SourceFunctionBinder.prototype.defines=function(){return[]},SourceFunctionBinder.prototype.populatePaintArray=function(r,t,o,e,i,n){var a=this,s=r.getPaintValue(this.property,void 0,n);if(\"color\"===this.type)for(var p=packColor(s),u=e;u<i;u++){var f=t.get(u);f[\"a_\"+a.name+\"0\"]=p[0],f[\"a_\"+a.name+\"1\"]=p[1]}else{for(var c=e;c<i;c++){t.get(c)[\"a_\"+a.name]=s}var m=o[this.property];m.max=Math.max(m.max,s)}},SourceFunctionBinder.prototype.setUniforms=function(r,t){r.uniform1f(t.uniforms[\"a_\"+this.name+\"_t\"],0)};var CompositeFunctionBinder=function(r,t,o,e,i){this.name=r,this.type=t,this.property=o,this.useIntegerZoom=e,this.zoom=i};CompositeFunctionBinder.prototype.defines=function(){return[]},CompositeFunctionBinder.prototype.populatePaintArray=function(r,t,o,e,i,n){var a=this,s=r.getPaintValue(this.property,{zoom:this.zoom},n),p=r.getPaintValue(this.property,{zoom:this.zoom+1},n);if(\"color\"===this.type)for(var u=packColor(s),f=packColor(p),c=e;c<i;c++){var m=t.get(c);m[\"a_\"+a.name+\"0\"]=u[0],m[\"a_\"+a.name+\"1\"]=u[1],m[\"a_\"+a.name+\"2\"]=f[0],m[\"a_\"+a.name+\"3\"]=f[1]}else{for(var y=e;y<i;y++){var g=t.get(y);g[\"a_\"+a.name+\"0\"]=s,g[\"a_\"+a.name+\"1\"]=p}var h=o[this.property];h.max=Math.max(h.max,s,p)}},CompositeFunctionBinder.prototype.setUniforms=function(r,t,o,e){var i=e.zoom,n=interpolationFactor(this.useIntegerZoom?Math.floor(i):i,1,this.zoom,this.zoom+1);r.uniform1f(t.uniforms[\"a_\"+this.name+\"_t\"],n)};var ProgramConfiguration=function(){this.binders={},this.cacheKey=\"\"};ProgramConfiguration.createDynamic=function(r,t,o){for(var e=new ProgramConfiguration,i=[],n=0,a=r.paintAttributes||[];n<a.length;n+=1){var s=a[n],p=s.property,u=s.useIntegerZoom||!1,f=s.name||p.replace(t.type+\"-\",\"\").replace(/-/g,\"_\"),c=t._paintSpecifications[p].type;t.isPaintValueFeatureConstant(p)?(e.binders[f]=new ConstantBinder(f,c,p,u),e.cacheKey+=\"/u_\"+f):t.isPaintValueZoomConstant(p)?(e.binders[f]=new SourceFunctionBinder(f,c,p),e.cacheKey+=\"/a_\"+f,i.push({name:\"a_\"+f,type:\"Float32\",components:\"color\"===c?2:1})):(e.binders[f]=new CompositeFunctionBinder(f,c,p,u,o),e.cacheKey+=\"/z_\"+f,i.push({name:\"a_\"+f,type:\"Float32\",components:\"color\"===c?4:2}))}return e.PaintVertexArray=createVertexArrayType(i),e.interface=r,e.layer=t,e},ProgramConfiguration.createBasicFill=function(){var r=new ProgramConfiguration;return r.binders.color=new ConstantBinder(\"color\",\"color\",\"fill-color\",!1),r.cacheKey+=\"/u_color\",r.binders.opacity=new ConstantBinder(\"opacity\",\"number\",\"fill-opacity\",!1),r.cacheKey+=\"/u_opacity\",r},ProgramConfiguration.prototype.createPaintPropertyStatistics=function(){var r=this,t={};for(var o in r.binders)t[r.binders[o].property]={max:-1/0};return t},ProgramConfiguration.prototype.populatePaintArray=function(r,t){var o=this,e=this.paintVertexArray;if(0!==e.bytesPerElement){var i=e.length;e.resize(r);for(var n in o.binders)o.binders[n].populatePaintArray(o.layer,e,o.paintPropertyStatistics,i,r,t)}},ProgramConfiguration.prototype.defines=function(){var r=this,t=[];for(var o in r.binders)t.push.apply(t,r.binders[o].defines());return t},ProgramConfiguration.prototype.setUniforms=function(r,t,o,e){var i=this;for(var n in i.binders)i.binders[n].setUniforms(r,t,o,e)},ProgramConfiguration.prototype.serialize=function(r){return 0===this.paintVertexArray.length?null:{array:this.paintVertexArray.serialize(r),type:this.paintVertexArray.constructor.serialize(),statistics:this.paintPropertyStatistics}},ProgramConfiguration.deserialize=function(r,t,o,e){var i=ProgramConfiguration.createDynamic(r,t,o);return e&&(i.PaintVertexArray=createVertexArrayType(e.type.members),i.paintVertexArray=new i.PaintVertexArray(e.array),i.paintPropertyStatistics=e.statistics),i},ProgramConfiguration.prototype.upload=function(r){this.paintVertexArray&&(this.paintVertexBuffer=new VertexBuffer(r,this.paintVertexArray))},ProgramConfiguration.prototype.destroy=function(){this.paintVertexBuffer&&this.paintVertexBuffer.destroy()};var ProgramConfigurationSet=function(r,t,o,e){var i=this;if(this.programConfigurations={},e)for(var n=0,a=t;n<a.length;n+=1){var s=a[n];i.programConfigurations[s.id]=ProgramConfiguration.deserialize(r,s,o,e[s.id])}else for(var p=0,u=t;p<u.length;p+=1){var f=u[p],c=ProgramConfiguration.createDynamic(r,f,o);c.paintVertexArray=new c.PaintVertexArray,c.paintPropertyStatistics=c.createPaintPropertyStatistics(),i.programConfigurations[f.id]=c}};ProgramConfigurationSet.prototype.populatePaintArrays=function(r,t){var o=this;for(var e in o.programConfigurations)o.programConfigurations[e].populatePaintArray(r,t)},ProgramConfigurationSet.prototype.serialize=function(r){var t=this,o={};for(var e in t.programConfigurations){var i=t.programConfigurations[e].serialize(r);i&&(o[e]=i)}return o},ProgramConfigurationSet.prototype.get=function(r){return this.programConfigurations[r]},ProgramConfigurationSet.prototype.upload=function(r){var t=this;for(var o in t.programConfigurations)t.programConfigurations[o].upload(r)},ProgramConfigurationSet.prototype.destroy=function(){var r=this;for(var t in r.programConfigurations)r.programConfigurations[t].destroy()},module.exports={ProgramConfiguration:ProgramConfiguration,ProgramConfigurationSet:ProgramConfigurationSet};\n},{\"../gl/vertex_buffer\":62,\"../shaders/encode_attribute\":85,\"../style-spec/function\":112,\"./vertex_array_type\":56}],54:[function(_dereq_,module,exports){\n\"use strict\";var createStructArrayType=_dereq_(\"../util/struct_array\"),RasterBoundsArray=createStructArrayType({members:[{name:\"a_pos\",type:\"Int16\",components:2},{name:\"a_texture_pos\",type:\"Int16\",components:2}]});module.exports=RasterBoundsArray;\n},{\"../util/struct_array\":220}],55:[function(_dereq_,module,exports){\n\"use strict\";var ref=_dereq_(\"../util/util\"),warnOnce=ref.warnOnce,MAX_VERTEX_ARRAY_LENGTH=Math.pow(2,16)-1,SegmentVector=function(e){void 0===e&&(e=[]),this.segments=e};SegmentVector.prototype.prepareSegment=function(e,t,r){var n=this.segments[this.segments.length-1];return e>MAX_VERTEX_ARRAY_LENGTH&&warnOnce(\"Max vertices per segment is \"+MAX_VERTEX_ARRAY_LENGTH+\": bucket requested \"+e),(!n||n.vertexLength+e>module.exports.MAX_VERTEX_ARRAY_LENGTH)&&(n={vertexOffset:t.length,primitiveOffset:r.length,vertexLength:0,primitiveLength:0},this.segments.push(n)),n},SegmentVector.prototype.get=function(){return this.segments},SegmentVector.prototype.destroy=function(){for(var e=this,t=0,r=e.segments;t<r.length;t+=1){var n=r[t];for(var s in n.vaos)n.vaos[s].destroy()}},module.exports={SegmentVector:SegmentVector,MAX_VERTEX_ARRAY_LENGTH:MAX_VERTEX_ARRAY_LENGTH};\n},{\"../util/util\":223}],56:[function(_dereq_,module,exports){\n\"use strict\";function createVertexArrayType(r){return createStructArrayType({members:r,alignment:4})}var createStructArrayType=_dereq_(\"../util/struct_array\");module.exports=createVertexArrayType;\n},{\"../util/struct_array\":220}],57:[function(_dereq_,module,exports){\n\"use strict\";var Coordinate=function(o,t,n){this.column=o,this.row=t,this.zoom=n};Coordinate.prototype.clone=function(){return new Coordinate(this.column,this.row,this.zoom)},Coordinate.prototype.zoomTo=function(o){return this.clone()._zoomTo(o)},Coordinate.prototype.sub=function(o){return this.clone()._sub(o)},Coordinate.prototype._zoomTo=function(o){var t=Math.pow(2,o-this.zoom);return this.column*=t,this.row*=t,this.zoom=o,this},Coordinate.prototype._sub=function(o){return o=o.zoomTo(this.zoom),this.column-=o.column,this.row-=o.row,this},module.exports=Coordinate;\n},{}],58:[function(_dereq_,module,exports){\n\"use strict\";var wrap=_dereq_(\"../util/util\").wrap,LngLat=function(t,n){if(isNaN(t)||isNaN(n))throw new Error(\"Invalid LngLat object: (\"+t+\", \"+n+\")\");if(this.lng=+t,this.lat=+n,this.lat>90||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.prototype.toBounds=function(t){var n=360*t/40075017,r=n/Math.cos(Math.PI/180*this.lat);return new(_dereq_(\"./lng_lat_bounds\"))(new LngLat(this.lng-r,this.lat-n),new LngLat(this.lng+r,this.lat+n))},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: <lng>, lat: <lat>}, or an array of [<lng>, <lat>]\")},module.exports=LngLat;\n},{\"../util/util\":223,\"./lng_lat_bounds\":59}],59:[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=t instanceof LngLat?new LngLat(t.lng,t.lat):LngLat.convert(t),this},LngLatBounds.prototype.setSouthWest=function(t){return this._sw=t instanceof LngLat?new LngLat(t.lng,t.lat):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\":58}],60:[function(_dereq_,module,exports){\n\"use strict\";var LngLat=_dereq_(\"./lng_lat\"),Point=_dereq_(\"@mapbox/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,o,i){this.tileSize=512,this._renderWorldCopies=void 0===i||i,this._minZoom=t||0,this._maxZoom=o||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 o=-util.wrap(t,-180,180)*Math.PI/180;this.angle!==o&&(this._unmodified=!1,this.angle=o,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 o=util.clamp(t,0,60)/180*Math.PI;this._pitch!==o&&(this._unmodified=!1,this._pitch=o,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 o=Math.min(Math.max(t,this.minZoom),this.maxZoom);this._zoom!==o&&(this._unmodified=!1,this._zoom=o,this.scale=this.zoomScale(o),this.tileZoom=Math.floor(o),this.zoomFraction=o-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 o=this.pointCoordinate(new Point(0,0),0),i=this.pointCoordinate(new Point(this.width,0),0),e=Math.floor(o.column),r=Math.floor(i.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 o=this.coveringZoomLevel(t),i=o;if(void 0!==t.minzoom&&o<t.minzoom)return[];void 0!==t.maxzoom&&o>t.maxzoom&&(o=t.maxzoom);var e=this.pointCoordinate(this.centerPoint,o),r=new Point(e.column-.5,e.row-.5),n=[this.pointCoordinate(new Point(0,0),o),this.pointCoordinate(new Point(this.width,0),o),this.pointCoordinate(new Point(this.width,this.height),o),this.pointCoordinate(new Point(0,this.height),o)];return TileCoord.cover(o,n,t.reparseOverscaled?i:o,this._renderWorldCopies).sort(function(t,o){return r.dist(t)-r.dist(o)})},Transform.prototype.resize=function(t,o){this.width=t,this.height=o,this.pixelsToGLUnits=[2/t,-2/o],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 o=180-360*t/this.worldSize;return 360/Math.PI*Math.atan(Math.exp(o*Math.PI/180))-90},Transform.prototype.setLocationAtPoint=function(t,o){var i=this.pointCoordinate(o)._sub(this.pointCoordinate(this.centerPoint));this.center=this.coordinateLocation(this.locationCoordinate(t)._sub(i)),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 o=t.zoomTo(this.zoom);return new LngLat(this.xLng(o.column*this.tileSize),this.yLat(o.row*this.tileSize))},Transform.prototype.pointCoordinate=function(t,o){void 0===o&&(o=this.tileZoom);var i=[t.x,t.y,0,1],e=[t.x,t.y,1,1];vec4.transformMat4(i,i,this.pixelMatrixInverse),vec4.transformMat4(e,e,this.pixelMatrixInverse);var r=i[3],n=e[3],s=i[0]/r,a=e[0]/n,h=i[1]/r,c=e[1]/n,m=i[2]/r,p=e[2]/n,l=m===p?0:(0-m)/(p-m);return new Coordinate(interp(s,a,l)/this.tileSize,interp(h,c,l)/this.tileSize,this.zoom)._zoomTo(o)},Transform.prototype.coordinatePoint=function(t){var o=t.zoomTo(this.zoom),i=[o.column*this.tileSize,o.row*this.tileSize,0,1];return vec4.transformMat4(i,i,this.pixelMatrix),new Point(i[0]/i[3],i[1]/i[3])},Transform.prototype.calculatePosMatrix=function(t,o){var i=t.toCoordinate(o),e=this.worldSize/this.zoomScale(i.zoom),r=mat4.identity(new Float64Array(16));return mat4.translate(r,r,[i.column*e,i.row*e,0]),mat4.scale(r,r,[e/EXTENT,e/EXTENT,1]),mat4.multiply(r,this.projMatrix,r),new Float32Array(r)},Transform.prototype.cameraToTileDistance=function(t){var o=this.calculatePosMatrix(t.coord,t.sourceMaxZoom),i=[t.tileSize/2,t.tileSize/2,0,1];return vec4.transformMat4(i,i,o),i[3]},Transform.prototype._constrain=function(){if(this.center&&this.width&&this.height&&!this._constraining){this._constraining=!0;var t,o,i,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-r<h.y?h.y/(n-r):0}if(this.lngRange){var p=this.lngRange;s=this.lngX(p[0]),a=this.lngX(p[1]),o=a-s<h.x?h.x/(a-s):0}var l=Math.max(o||0,t||0);if(l)return this.center=this.unproject(new Point(o?(a+s)/2:this.x,t?(n+r)/2:this.y)),this.zoom+=this.scaleZoom(l),this._unmodified=c,void(this._constraining=!1);if(this.latRange){var u=this.y,f=h.y/2;u-f<r&&(e=r+f),u+f>n&&(e=n-f)}if(this.lngRange){var d=this.x,g=h.x/2;d-g<s&&(i=s+g),d+g>a&&(i=a-g)}void 0===i&&void 0===e||(this.center=this.unproject(new Point(void 0!==i?i: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,o=Math.PI/2+this._pitch,i=Math.sin(t)*this.cameraToCenterDistance/Math.sin(Math.PI-o-t),e=Math.cos(Math.PI/2-this._pitch)*i+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)))throw new Error(\"failed to invert matrix\");this.pixelMatrixInverse=n}},Object.defineProperties(Transform.prototype,prototypeAccessors),module.exports=Transform;\n},{\"../data/extent\":48,\"../source/tile_coord\":101,\"../style-spec/util/interpolate\":127,\"../util/util\":223,\"./coordinate\":57,\"./lng_lat\":58,\"@mapbox/gl-matrix\":1,\"@mapbox/point-geometry\":2}],61:[function(_dereq_,module,exports){\n\"use strict\";var IndexBuffer=function(e,r){this.gl=e,this.buffer=e.createBuffer(),void 0===e.extVertexArrayObject&&(e.extVertexArrayObject=e.getExtension(\"OES_vertex_array_object\")),e.extVertexArrayObject&&e.extVertexArrayObject.bindVertexArrayOES(null),e.bindBuffer(e.ELEMENT_ARRAY_BUFFER,this.buffer),e.bufferData(e.ELEMENT_ARRAY_BUFFER,r.arrayBuffer,e.STATIC_DRAW),delete r.arrayBuffer};IndexBuffer.prototype.bind=function(){this.gl.bindBuffer(this.gl.ELEMENT_ARRAY_BUFFER,this.buffer)},IndexBuffer.prototype.destroy=function(){this.buffer&&(this.gl.deleteBuffer(this.buffer),delete this.buffer)},module.exports=IndexBuffer;\n},{}],62:[function(_dereq_,module,exports){\n\"use strict\";var AttributeType={Int8:\"BYTE\",Uint8:\"UNSIGNED_BYTE\",Int16:\"SHORT\",Uint16:\"UNSIGNED_SHORT\",Int32:\"INT\",Uint32:\"UNSIGNED_INT\",Float32:\"FLOAT\"},VertexBuffer=function(t,e,r){this.length=e.length,this.attributes=e.members,this.itemSize=e.bytesPerElement,this.dynamicDraw=r,this.gl=t,this.buffer=t.createBuffer(),this.gl.bindBuffer(t.ARRAY_BUFFER,this.buffer),this.gl.bufferData(t.ARRAY_BUFFER,e.arrayBuffer,this.dynamicDraw?t.DYNAMIC_DRAW:t.STATIC_DRAW),this.dynamicDraw||delete e.arrayBuffer};VertexBuffer.prototype.bind=function(){this.gl.bindBuffer(this.gl.ARRAY_BUFFER,this.buffer)},VertexBuffer.prototype.updateData=function(t){this.bind(),this.gl.bufferSubData(this.gl.ARRAY_BUFFER,0,t.arrayBuffer)},VertexBuffer.prototype.enableAttributes=function(t,e){for(var r=this,i=0;i<this.attributes.length;i++){var f=r.attributes[i],s=e.attributes[f.name];void 0!==s&&t.enableVertexAttribArray(s)}},VertexBuffer.prototype.setVertexAttribPointers=function(t,e,r){for(var i=this,f=0;f<this.attributes.length;f++){var s=i.attributes[f],u=e.attributes[s.name];void 0!==u&&t.vertexAttribPointer(u,s.components,t[AttributeType[s.type]],!1,i.itemSize,s.offset+i.itemSize*(r||0))}},VertexBuffer.prototype.destroy=function(){this.buffer&&(this.gl.deleteBuffer(this.buffer),delete this.buffer)},module.exports=VertexBuffer;\n},{}],63:[function(_dereq_,module,exports){\n\"use strict\";var supported=_dereq_(\"mapbox-gl-supported\"),browser=_dereq_(\"./util/browser\"),version=_dereq_(\"../package.json\").version,Map=_dereq_(\"./ui/map\"),NavigationControl=_dereq_(\"./ui/control/navigation_control\"),GeolocateControl=_dereq_(\"./ui/control/geolocate_control\"),AttributionControl=_dereq_(\"./ui/control/attribution_control\"),ScaleControl=_dereq_(\"./ui/control/scale_control\"),FullscreenControl=_dereq_(\"./ui/control/fullscreen_control\"),Popup=_dereq_(\"./ui/popup\"),Marker=_dereq_(\"./ui/marker\"),Style=_dereq_(\"./style/style\"),LngLat=_dereq_(\"./geo/lng_lat\"),LngLatBounds=_dereq_(\"./geo/lng_lat_bounds\"),Point=_dereq_(\"@mapbox/point-geometry\"),Evented=_dereq_(\"./util/evented\"),config=_dereq_(\"./util/config\"),rtlTextPlugin=_dereq_(\"./source/rtl_text_plugin\");module.exports={version:version,supported:supported,workerCount:Math.max(Math.floor(browser.hardwareConcurrency/2),1),setRTLTextPlugin:rtlTextPlugin.setRTLTextPlugin,Map:Map,NavigationControl:NavigationControl,GeolocateControl:GeolocateControl,AttributionControl:AttributionControl,ScaleControl:ScaleControl,FullscreenControl:FullscreenControl,Popup:Popup,Marker:Marker,Style:Style,LngLat:LngLat,LngLatBounds:LngLatBounds,Point:Point,Evented:Evented,config:config,get accessToken(){return config.ACCESS_TOKEN},set accessToken(o){config.ACCESS_TOKEN=o}};\n},{\"../package.json\":41,\"./geo/lng_lat\":58,\"./geo/lng_lat_bounds\":59,\"./source/rtl_text_plugin\":96,\"./style/style\":156,\"./ui/control/attribution_control\":182,\"./ui/control/fullscreen_control\":183,\"./ui/control/geolocate_control\":184,\"./ui/control/navigation_control\":186,\"./ui/control/scale_control\":187,\"./ui/map\":197,\"./ui/marker\":198,\"./ui/popup\":199,\"./util/browser\":202,\"./util/config\":206,\"./util/evented\":210,\"@mapbox/point-geometry\":2,\"mapbox-gl-supported\":28}],64:[function(_dereq_,module,exports){\n\"use strict\";function drawBackground(r,t,e){var i=r.gl,a=r.transform,n=a.tileSize,o=e.paint[\"background-color\"],l=e.paint[\"background-pattern\"],u=e.paint[\"background-opacity\"],f=l||1!==o[3]||1!==u?\"translucent\":\"opaque\";if(r.renderPass===f){i.disable(i.STENCIL_TEST),r.setDepthSublayer(0);var s;if(l){if(pattern.isPatternMissing(l,r))return;s=r.useProgram(\"fillPattern\",r.basicFillProgramConfiguration),pattern.prepare(l,r,s),r.tileExtentPatternVAO.bind(i,s,r.tileExtentBuffer)}else s=r.useProgram(\"fill\",r.basicFillProgramConfiguration),i.uniform4fv(s.uniforms.u_color,o),r.tileExtentVAO.bind(i,s,r.tileExtentBuffer);i.uniform1f(s.uniforms.u_opacity,u);for(var c=a.coveringTiles({tileSize:n}),g=0,p=c;g<p.length;g+=1){var d=p[g];l&&pattern.setTile({coord:d,tileSize:n},r,s),i.uniformMatrix4fv(s.uniforms.u_matrix,!1,r.transform.calculatePosMatrix(d)),i.drawArrays(i.TRIANGLE_STRIP,0,r.tileExtentBuffer.length)}}}var pattern=_dereq_(\"./pattern\");module.exports=drawBackground;\n},{\"./pattern\":80}],65:[function(_dereq_,module,exports){\n\"use strict\";function drawCircles(r,i,e,t){if(\"translucent\"===r.renderPass){var a=r.gl;r.setDepthSublayer(0),r.depthMask(!1),a.disable(a.STENCIL_TEST);for(var s=0;s<t.length;s++){var o=t[s],n=i.getTile(o),u=n.getBucket(e);if(u){var m=u.programConfigurations.get(e.id),f=r.useProgram(\"circle\",m);if(m.setUniforms(a,f,e,{zoom:r.transform.zoom}),a.uniform1f(f.uniforms.u_camera_to_center_distance,r.transform.cameraToCenterDistance),a.uniform1i(f.uniforms.u_scale_with_map,\"map\"===e.paint[\"circle-pitch-scale\"]?1:0),\"map\"===e.paint[\"circle-pitch-alignment\"]){a.uniform1i(f.uniforms.u_pitch_with_map,1);var l=pixelsToTileUnits(n,1,r.transform.zoom);a.uniform2f(f.uniforms.u_extrude_scale,l,l)}else a.uniform1i(f.uniforms.u_pitch_with_map,0),a.uniform2fv(f.uniforms.u_extrude_scale,r.transform.pixelsToGLUnits);a.uniform1f(f.uniforms.u_devicepixelratio,browser.devicePixelRatio),a.uniformMatrix4fv(f.uniforms.u_matrix,!1,r.translatePosMatrix(o.posMatrix,n,e.paint[\"circle-translate\"],e.paint[\"circle-translate-anchor\"])),f.draw(a,a.TRIANGLES,e.id,u.layoutVertexBuffer,u.indexBuffer,u.segments,m)}}}}var browser=_dereq_(\"../util/browser\"),pixelsToTileUnits=_dereq_(\"../source/pixels_to_tile_units\");module.exports=drawCircles;\n},{\"../source/pixels_to_tile_units\":93,\"../util/browser\":202}],66:[function(_dereq_,module,exports){\n\"use strict\";function drawCollisionDebug(o,i,r,e){var n=o.gl;n.enable(n.STENCIL_TEST);var t=o.useProgram(\"collisionBox\");n.activeTexture(n.TEXTURE1),o.frameHistory.bind(n),n.uniform1i(t.uniforms.u_fadetexture,1);for(var a=0;a<e.length;a++){var f=e[a],u=i.getTile(f),m=u.getBucket(r);if(m){n.uniformMatrix4fv(t.uniforms.u_matrix,!1,f.posMatrix),o.enableTileClippingMask(f),o.lineWidth(1),n.uniform1f(t.uniforms.u_scale,Math.pow(2,o.transform.zoom-u.coord.z)),n.uniform1f(t.uniforms.u_zoom,10*o.transform.zoom);var s=Math.max(0,Math.min(25,u.coord.z+Math.log(u.collisionTile.maxScale)/Math.LN2));n.uniform1f(t.uniforms.u_maxzoom,10*s),n.uniform1f(t.uniforms.u_collision_y_stretch,u.collisionTile.yStretch),n.uniform1f(t.uniforms.u_pitch,o.transform.pitch/360*2*Math.PI),n.uniform1f(t.uniforms.u_camera_to_center_distance,o.transform.cameraToCenterDistance),t.draw(n,n.LINES,r.id,m.collisionBox.layoutVertexBuffer,m.collisionBox.indexBuffer,m.collisionBox.segments)}}}module.exports=drawCollisionDebug;\n},{}],67:[function(_dereq_,module,exports){\n\"use strict\";function drawDebug(r,e,t){for(var a=0;a<t.length;a++)drawDebugTile(r,e,t[a])}function drawDebugTile(r,e,t){var a=r.gl;a.disable(a.STENCIL_TEST),r.lineWidth(1*browser.devicePixelRatio);var i=t.posMatrix,u=r.useProgram(\"debug\");a.uniformMatrix4fv(u.uniforms.u_matrix,!1,i),a.uniform4f(u.uniforms.u_color,1,0,0,1),r.debugVAO.bind(a,u,r.debugBuffer),a.drawArrays(a.LINE_STRIP,0,r.debugBuffer.length);for(var o=createTextVerticies(t.toString(),50,200,5),n=new PosArray,f=0;f<o.length;f+=2)n.emplaceBack(o[f],o[f+1]);var l=new VertexBuffer(a,n);(new VertexArrayObject).bind(a,u,l),a.uniform4f(u.uniforms.u_color,1,1,1,1);for(var s=e.getTile(t).tileSize,m=EXTENT/(Math.pow(2,r.transform.zoom-t.z)*s),x=[[-1,-1],[-1,1],[1,-1],[1,1]],g=0;g<x.length;g++){var b=x[g];a.uniformMatrix4fv(u.uniforms.u_matrix,!1,mat4.translate([],i,[m*b[0],m*b[1],0])),a.drawArrays(a.LINES,0,l.length)}a.uniform4f(u.uniforms.u_color,0,0,0,1),a.uniformMatrix4fv(u.uniforms.u_matrix,!1,i),a.drawArrays(a.LINES,0,l.length)}function createTextVerticies(r,e,t,a){a=a||1;var i,u,o,n,f,l,s,m,x=[];for(i=0,u=r.length;i<u;i++)if(f=simplexFont[r[i]]){for(m=null,o=0,n=f[1].length;o<n;o+=2)-1===f[1][o]&&-1===f[1][o+1]?m=null:(l=e+f[1][o]*a,s=t-f[1][o+1]*a,m&&x.push(m.x,m.y,l,s),m={x:l,y:s});e+=f[0]*a}return x}var browser=_dereq_(\"../util/browser\"),mat4=_dereq_(\"@mapbox/gl-matrix\").mat4,EXTENT=_dereq_(\"../data/extent\"),VertexBuffer=_dereq_(\"../gl/vertex_buffer\"),VertexArrayObject=_dereq_(\"./vertex_array_object\"),PosArray=_dereq_(\"../data/pos_array\");module.exports=drawDebug;var simplexFont={\" \":[16,[]],\"!\":[10,[5,21,5,7,-1,-1,5,2,4,1,5,0,6,1,5,2]],'\"':[16,[4,21,4,14,-1,-1,12,21,12,14]],\"#\":[21,[11,25,4,-7,-1,-1,17,25,10,-7,-1,-1,4,12,18,12,-1,-1,3,6,17,6]],$:[20,[8,25,8,-4,-1,-1,12,25,12,-4,-1,-1,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]],\"%\":[24,[21,21,3,0,-1,-1,8,21,10,19,10,17,9,15,7,14,5,14,3,16,3,18,4,20,6,21,8,21,10,20,13,19,16,19,19,20,21,21,-1,-1,17,7,15,6,14,4,14,2,16,0,18,0,20,1,21,3,21,5,19,7,17,7]],\"&\":[26,[23,12,23,13,22,14,21,14,20,13,19,11,17,6,15,3,13,1,11,0,7,0,5,1,4,2,3,4,3,6,4,8,5,9,12,13,13,14,14,16,14,18,13,20,11,21,9,20,8,18,8,16,9,13,11,10,16,3,18,1,20,0,22,0,23,1,23,2]],\"'\":[10,[5,19,4,20,5,21,6,20,6,18,5,16,4,15]],\"(\":[14,[11,25,9,23,7,20,5,16,4,11,4,7,5,2,7,-2,9,-5,11,-7]],\")\":[14,[3,25,5,23,7,20,9,16,10,11,10,7,9,2,7,-2,5,-5,3,-7]],\"*\":[16,[8,21,8,9,-1,-1,3,18,13,12,-1,-1,13,18,3,12]],\"+\":[26,[13,18,13,0,-1,-1,4,9,22,9]],\",\":[10,[6,1,5,0,4,1,5,2,6,1,6,-1,5,-3,4,-4]],\"-\":[26,[4,9,22,9]],\".\":[10,[5,2,4,1,5,0,6,1,5,2]],\"/\":[22,[20,25,2,-7]],0:[20,[9,21,6,20,4,17,3,12,3,9,4,4,6,1,9,0,11,0,14,1,16,4,17,9,17,12,16,17,14,20,11,21,9,21]],1:[20,[6,17,8,18,11,21,11,0]],2:[20,[4,16,4,17,5,19,6,20,8,21,12,21,14,20,15,19,16,17,16,15,15,13,13,10,3,0,17,0]],3:[20,[5,21,16,21,10,13,13,13,15,12,16,11,17,8,17,6,16,3,14,1,11,0,8,0,5,1,4,2,3,4]],4:[20,[13,21,3,7,18,7,-1,-1,13,21,13,0]],5:[20,[15,21,5,21,4,12,5,13,8,14,11,14,14,13,16,11,17,8,17,6,16,3,14,1,11,0,8,0,5,1,4,2,3,4]],6:[20,[16,18,15,20,12,21,10,21,7,20,5,17,4,12,4,7,5,3,7,1,10,0,11,0,14,1,16,3,17,6,17,7,16,10,14,12,11,13,10,13,7,12,5,10,4,7]],7:[20,[17,21,7,0,-1,-1,3,21,17,21]],8:[20,[8,21,5,20,4,18,4,16,5,14,7,13,11,12,14,11,16,9,17,7,17,4,16,2,15,1,12,0,8,0,5,1,4,2,3,4,3,7,4,9,6,11,9,12,13,13,15,14,16,16,16,18,15,20,12,21,8,21]],9:[20,[16,14,15,11,13,9,10,8,9,8,6,9,4,11,3,14,3,15,4,18,6,20,9,21,10,21,13,20,15,18,16,14,16,9,15,4,13,1,10,0,8,0,5,1,4,3]],\":\":[10,[5,14,4,13,5,12,6,13,5,14,-1,-1,5,2,4,1,5,0,6,1,5,2]],\";\":[10,[5,14,4,13,5,12,6,13,5,14,-1,-1,6,1,5,0,4,1,5,2,6,1,6,-1,5,-3,4,-4]],\"<\":[24,[20,18,4,9,20,0]],\"=\":[26,[4,12,22,12,-1,-1,4,6,22,6]],\">\":[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/extent\":48,\"../data/pos_array\":52,\"../gl/vertex_buffer\":62,\"../util/browser\":202,\"./vertex_array_object\":84,\"@mapbox/gl-matrix\":1}],68:[function(_dereq_,module,exports){\n\"use strict\";function drawFill(r,t,e,a){var i=r.gl;i.enable(i.STENCIL_TEST);var l=!e.paint[\"fill-pattern\"]&&e.isPaintValueFeatureConstant(\"fill-color\")&&e.isPaintValueFeatureConstant(\"fill-opacity\")&&1===e.paint[\"fill-color\"][3]&&1===e.paint[\"fill-opacity\"]?\"opaque\":\"translucent\";r.renderPass===l&&(r.setDepthSublayer(1),r.depthMask(\"opaque\"===r.renderPass),drawFillTiles(r,t,e,a,drawFillTile)),\"translucent\"===r.renderPass&&e.paint[\"fill-antialias\"]&&(r.lineWidth(2),r.depthMask(!1),r.setDepthSublayer(e.getPaintProperty(\"fill-outline-color\")?2:0),drawFillTiles(r,t,e,a,drawStrokeTile))}function drawFillTiles(r,t,e,a,i){if(!pattern.isPatternMissing(e.paint[\"fill-pattern\"],r))for(var l=!0,n=0,o=a;n<o.length;n+=1){var s=o[n],f=t.getTile(s),u=f.getBucket(e);u&&(r.enableTileClippingMask(s),i(r,t,e,f,s,u,l),l=!1)}}function drawFillTile(r,t,e,a,i,l,n){var o=r.gl,s=l.programConfigurations.get(e.id);setFillProgram(\"fill\",e.paint[\"fill-pattern\"],r,s,e,a,i,n).draw(o,o.TRIANGLES,e.id,l.layoutVertexBuffer,l.indexBuffer,l.segments,s)}function drawStrokeTile(r,t,e,a,i,l,n){var o=r.gl,s=l.programConfigurations.get(e.id),f=e.paint[\"fill-pattern\"]&&!e.getPaintProperty(\"fill-outline-color\"),u=setFillProgram(\"fillOutline\",f,r,s,e,a,i,n);o.uniform2f(u.uniforms.u_world,o.drawingBufferWidth,o.drawingBufferHeight),u.draw(o,o.LINES,e.id,l.layoutVertexBuffer,l.indexBuffer2,l.segments2,s)}function setFillProgram(r,t,e,a,i,l,n,o){var s,f=e.currentProgram;return t?(s=e.useProgram(r+\"Pattern\",a),(o||s!==f)&&(a.setUniforms(e.gl,s,i,{zoom:e.transform.zoom}),pattern.prepare(i.paint[\"fill-pattern\"],e,s)),pattern.setTile(l,e,s)):(s=e.useProgram(r,a),(o||s!==f)&&a.setUniforms(e.gl,s,i,{zoom:e.transform.zoom})),e.gl.uniformMatrix4fv(s.uniforms.u_matrix,!1,e.translatePosMatrix(n.posMatrix,l,i.paint[\"fill-translate\"],i.paint[\"fill-translate-anchor\"])),s}var pattern=_dereq_(\"./pattern\");module.exports=drawFill;\n},{\"./pattern\":80}],69:[function(_dereq_,module,exports){\n\"use strict\";function draw(r,t,e,i){if(\"3d\"===r.renderPass){var a=r.gl;a.disable(a.STENCIL_TEST),a.enable(a.DEPTH_TEST),r.clearColor(),r.depthMask(!0);for(var n=0;n<i.length;n++)drawExtrusion(r,t,e,i[n])}else\"translucent\"===r.renderPass&&drawExtrusionTexture(r,e)}function drawExtrusionTexture(r,t){var e=r.prerenderedFrames[t.id];if(e){var i=r.gl,a=r.useProgram(\"extrusionTexture\");i.disable(i.STENCIL_TEST),i.disable(i.DEPTH_TEST),i.activeTexture(i.TEXTURE0),i.bindTexture(i.TEXTURE_2D,e.texture),i.uniform1f(a.uniforms.u_opacity,t.paint[\"fill-extrusion-opacity\"]),i.uniform1i(a.uniforms.u_image,0);var n=mat4.create();mat4.ortho(n,0,r.width,r.height,0,0,1),i.uniformMatrix4fv(a.uniforms.u_matrix,!1,n),i.uniform2f(a.uniforms.u_world,i.drawingBufferWidth,i.drawingBufferHeight),e.vao.bind(i,a,e.buffer),i.drawArrays(i.TRIANGLE_STRIP,0,4),r.viewportFrames.push(e),delete r.prerenderedFrames[t.id]}}function drawExtrusion(r,t,e,i){var a=t.getTile(i),n=a.getBucket(e);if(n){var o=r.gl,u=e.paint[\"fill-extrusion-pattern\"],s=n.programConfigurations.get(e.id),f=r.useProgram(u?\"fillExtrusionPattern\":\"fillExtrusion\",s);if(s.setUniforms(o,f,e,{zoom:r.transform.zoom}),u){if(pattern.isPatternMissing(u,r))return;pattern.prepare(u,r,f),pattern.setTile(a,r,f),o.uniform1f(f.uniforms.u_height_factor,-Math.pow(2,i.z)/a.tileSize/8)}r.gl.uniformMatrix4fv(f.uniforms.u_matrix,!1,r.translatePosMatrix(i.posMatrix,a,e.paint[\"fill-extrusion-translate\"],e.paint[\"fill-extrusion-translate-anchor\"])),setLight(f,r),f.draw(o,o.TRIANGLES,e.id,n.layoutVertexBuffer,n.indexBuffer,n.segments,s)}}function setLight(r,t){var e=t.gl,i=t.style.light,a=i.calculated.position,n=[a.x,a.y,a.z],o=mat3.create();\"viewport\"===i.calculated.anchor&&mat3.fromRotation(o,-t.transform.angle),vec3.transformMat3(n,n,o),e.uniform3fv(r.uniforms.u_lightpos,n),e.uniform1f(r.uniforms.u_lightintensity,i.calculated.intensity),e.uniform3fv(r.uniforms.u_lightcolor,i.calculated.color.slice(0,3))}var glMatrix=_dereq_(\"@mapbox/gl-matrix\"),pattern=_dereq_(\"./pattern\"),mat3=glMatrix.mat3,mat4=glMatrix.mat4,vec3=glMatrix.vec3;module.exports=draw;\n},{\"./pattern\":80,\"@mapbox/gl-matrix\":1}],70:[function(_dereq_,module,exports){\n\"use strict\";function drawLineTile(i,r,e,t,n,a,o,u,f){var s,l,m,_,p=r.gl,g=n.paint[\"line-dasharray\"],d=n.paint[\"line-pattern\"];if(u||f){var x=1/pixelsToTileUnits(e,1,r.transform.tileZoom);if(g){s=r.lineAtlas.getDash(g.from,\"round\"===n.layout[\"line-cap\"]),l=r.lineAtlas.getDash(g.to,\"round\"===n.layout[\"line-cap\"]);var T=s.width*g.fromScale,c=l.width*g.toScale;p.uniform2f(i.uniforms.u_patternscale_a,x/T,-s.height/2),p.uniform2f(i.uniforms.u_patternscale_b,x/c,-l.height/2),p.uniform1f(i.uniforms.u_sdfgamma,r.lineAtlas.width/(256*Math.min(T,c)*browser.devicePixelRatio)/2)}else if(d){if(m=r.imageManager.getPattern(d.from),_=r.imageManager.getPattern(d.to),!m||!_)return;p.uniform2f(i.uniforms.u_pattern_size_a,m.displaySize[0]*d.fromScale/x,_.displaySize[1]),p.uniform2f(i.uniforms.u_pattern_size_b,_.displaySize[0]*d.toScale/x,_.displaySize[1]);var h=r.imageManager.getPixelSize(),v=h.width,b=h.height;p.uniform2fv(i.uniforms.u_texsize,[v,b])}p.uniform2f(i.uniforms.u_gl_units_to_pixels,1/r.transform.pixelsToGLUnits[0],1/r.transform.pixelsToGLUnits[1])}u&&(g?(p.uniform1i(i.uniforms.u_image,0),p.activeTexture(p.TEXTURE0),r.lineAtlas.bind(p),p.uniform1f(i.uniforms.u_tex_y_a,s.y),p.uniform1f(i.uniforms.u_tex_y_b,l.y),p.uniform1f(i.uniforms.u_mix,g.t)):d&&(p.uniform1i(i.uniforms.u_image,0),p.activeTexture(p.TEXTURE0),r.imageManager.bind(p),p.uniform2fv(i.uniforms.u_pattern_tl_a,m.tl),p.uniform2fv(i.uniforms.u_pattern_br_a,m.br),p.uniform2fv(i.uniforms.u_pattern_tl_b,_.tl),p.uniform2fv(i.uniforms.u_pattern_br_b,_.br),p.uniform1f(i.uniforms.u_fade,d.t))),r.enableTileClippingMask(a);var y=r.translatePosMatrix(a.posMatrix,e,n.paint[\"line-translate\"],n.paint[\"line-translate-anchor\"]);p.uniformMatrix4fv(i.uniforms.u_matrix,!1,y),p.uniform1f(i.uniforms.u_ratio,1/pixelsToTileUnits(e,1,r.transform.zoom)),i.draw(p,p.TRIANGLES,n.id,t.layoutVertexBuffer,t.indexBuffer,t.segments,o)}var browser=_dereq_(\"../util/browser\"),pixelsToTileUnits=_dereq_(\"../source/pixels_to_tile_units\");module.exports=function(i,r,e,t){if(\"translucent\"===i.renderPass){i.setDepthSublayer(0),i.depthMask(!1);var n=i.gl;if(n.enable(n.STENCIL_TEST),!(e.paint[\"line-width\"]<=0))for(var a,o=e.paint[\"line-dasharray\"]?\"lineSDF\":e.paint[\"line-pattern\"]?\"linePattern\":\"line\",u=!0,f=0,s=t;f<s.length;f+=1){var l=s[f],m=r.getTile(l),_=m.getBucket(e);if(_){var p=_.programConfigurations.get(e.id),g=i.currentProgram,d=i.useProgram(o,p),x=u||d!==g,T=a!==m.coord.z;x&&p.setUniforms(i.gl,d,e,{zoom:i.transform.zoom}),drawLineTile(d,i,m,_,e,l,p,x,T),a=m.coord.z,u=!1}}}};\n},{\"../source/pixels_to_tile_units\":93,\"../util/browser\":202}],71:[function(_dereq_,module,exports){\n\"use strict\";function drawRaster(r,t,e,a){if(\"translucent\"===r.renderPass){var i=r.gl,o=t.getSource(),n=r.useProgram(\"raster\");i.enable(i.DEPTH_TEST),r.depthMask(!0),i.depthFunc(i.LESS),i.disable(i.STENCIL_TEST),i.uniform1f(n.uniforms.u_brightness_low,e.paint[\"raster-brightness-min\"]),i.uniform1f(n.uniforms.u_brightness_high,e.paint[\"raster-brightness-max\"]),i.uniform1f(n.uniforms.u_saturation_factor,saturationFactor(e.paint[\"raster-saturation\"])),i.uniform1f(n.uniforms.u_contrast_factor,contrastFactor(e.paint[\"raster-contrast\"])),i.uniform3fv(n.uniforms.u_spin_weights,spinWeights(e.paint[\"raster-hue-rotate\"])),i.uniform1f(n.uniforms.u_buffer_scale,1),i.uniform1i(n.uniforms.u_image0,0),i.uniform1i(n.uniforms.u_image1,1);for(var u=a.length&&a[0].z,s=0,f=a;s<f.length;s+=1){var m=f[s];r.setDepthSublayer(m.z-u);var d=t.getTile(m),c=r.transform.calculatePosMatrix(m,t.getSource().maxzoom);d.registerFadeDuration(r.style.animationLoop,e.paint[\"raster-fade-duration\"]),i.uniformMatrix4fv(n.uniforms.u_matrix,!1,c);var p=t.findLoadedParent(m,0,{}),_=getFadeValues(d,p,t,e,r.transform),h=void 0,l=void 0;if(i.activeTexture(i.TEXTURE0),i.bindTexture(i.TEXTURE_2D,d.texture),i.activeTexture(i.TEXTURE1),p?(i.bindTexture(i.TEXTURE_2D,p.texture),h=Math.pow(2,p.coord.z-d.coord.z),l=[d.coord.x*h%1,d.coord.y*h%1]):i.bindTexture(i.TEXTURE_2D,d.texture),i.uniform2fv(n.uniforms.u_tl_parent,l||[0,0]),i.uniform1f(n.uniforms.u_scale_parent,h||1),i.uniform1f(n.uniforms.u_fade_t,_.mix),i.uniform1f(n.uniforms.u_opacity,_.opacity*e.paint[\"raster-opacity\"]),o instanceof ImageSource){var g=o.boundsBuffer;o.boundsVAO.bind(i,n,g),i.drawArrays(i.TRIANGLE_STRIP,0,g.length)}else{var T=r.rasterBoundsBuffer;r.rasterBoundsVAO.bind(i,n,T),i.drawArrays(i.TRIANGLE_STRIP,0,T.length)}}i.depthFunc(i.LEQUAL)}}function spinWeights(r){r*=Math.PI/180;var t=Math.sin(r),e=Math.cos(r);return[(2*e+1)/3,(-Math.sqrt(3)*t-e+1)/3,(Math.sqrt(3)*t-e+1)/3]}function contrastFactor(r){return r>0?1/(1-r):1+r}function saturationFactor(r){return r>0?1-1/(1.001-r):-r}function getFadeValues(r,t,e,a,i){var o=a.paint[\"raster-fade-duration\"];if(o>0){var n=Date.now(),u=(n-r.timeAdded)/o,s=t?(n-t.timeAdded)/o:-1,f=e.getSource(),m=i.coveringZoomLevel({tileSize:f.tileSize,roundZoom:f.roundZoom}),d=!t||Math.abs(t.coord.z-m)>Math.abs(r.coord.z-m),c=d&&r.refreshedUponExpiration?1:util.clamp(d?u:1-s,0,1);return r.refreshedUponExpiration&&u>=1&&(r.refreshedUponExpiration=!1),t?{opacity:1,mix:1-c}:{opacity:c,mix:0}}return{opacity:1,mix:0}}var util=_dereq_(\"../util/util\"),ImageSource=_dereq_(\"../source/image_source\");module.exports=drawRaster;\n},{\"../source/image_source\":91,\"../util/util\":223}],72:[function(_dereq_,module,exports){\n\"use strict\";function drawSymbols(t,i,o,e){if(\"translucent\"===t.renderPass){var a=!(o.layout[\"text-allow-overlap\"]||o.layout[\"icon-allow-overlap\"]||o.layout[\"text-ignore-placement\"]||o.layout[\"icon-ignore-placement\"]),r=t.gl;a?r.disable(r.STENCIL_TEST):r.enable(r.STENCIL_TEST),t.setDepthSublayer(0),t.depthMask(!1),drawLayerSymbols(t,i,o,e,!1,o.paint[\"icon-translate\"],o.paint[\"icon-translate-anchor\"],o.layout[\"icon-rotation-alignment\"],o.layout[\"icon-pitch-alignment\"],o.layout[\"icon-keep-upright\"]),drawLayerSymbols(t,i,o,e,!0,o.paint[\"text-translate\"],o.paint[\"text-translate-anchor\"],o.layout[\"text-rotation-alignment\"],o.layout[\"text-pitch-alignment\"],o.layout[\"text-keep-upright\"]),i.map.showCollisionBoxes&&drawCollisionDebug(t,i,o,e)}}function drawLayerSymbols(t,i,o,e,a,r,n,s,u,l){var m=t.gl,f=t.transform,c=\"map\"===s,_=\"map\"===u,y=c&&\"line\"===o.layout[\"symbol-placement\"],p=c&&!_&&!y,x=_;x?m.enable(m.DEPTH_TEST):m.disable(m.DEPTH_TEST);for(var b,d=0,T=e;d<T.length;d+=1){var g=T[d],S=i.getTile(g),h=S.getBucket(o);if(h){var z=a?h.text:h.icon;if(z&&z.segments.get().length){var v=z.programConfigurations.get(o.id),E=a||h.sdfIcons,w=a?h.textSizeData:h.iconSizeData;if(b||(b=t.useProgram(E?\"symbolSDF\":\"symbolIcon\",v),v.setUniforms(m,b,o,{zoom:t.transform.zoom}),setSymbolDrawState(b,t,o,a,p,_,w)),m.activeTexture(m.TEXTURE0),m.uniform1i(b.uniforms.u_texture,0),a)S.glyphAtlasTexture.bind(m.LINEAR,m.CLAMP_TO_EDGE),m.uniform2fv(b.uniforms.u_texsize,S.glyphAtlasTexture.size);else{var M=!o.isLayoutValueFeatureConstant(\"icon-size\")||!o.isLayoutValueZoomConstant(\"icon-size\")||1!==o.getLayoutValue(\"icon-size\",{zoom:f.zoom})||h.iconsNeedLinear,C=_||0!==f.pitch;S.iconAtlasTexture.bind(E||t.options.rotating||t.options.zooming||M||C?m.LINEAR:m.NEAREST,m.CLAMP_TO_EDGE),m.uniform2fv(b.uniforms.u_texsize,S.iconAtlasTexture.size)}t.enableTileClippingMask(g),m.uniformMatrix4fv(b.uniforms.u_matrix,!1,t.translatePosMatrix(g.posMatrix,S,r,n));var L=pixelsToTileUnits(S,1,t.transform.zoom),P=symbolProjection.getLabelPlaneMatrix(g.posMatrix,_,c,t.transform,L),D=symbolProjection.getGlCoordMatrix(g.posMatrix,_,c,t.transform,L);m.uniformMatrix4fv(b.uniforms.u_gl_coord_matrix,!1,t.translatePosMatrix(D,S,r,n,!0)),y?(m.uniformMatrix4fv(b.uniforms.u_label_plane_matrix,!1,identityMat4),symbolProjection.updateLineLabels(h,g.posMatrix,t,a,P,D,_,l,L,o)):m.uniformMatrix4fv(b.uniforms.u_label_plane_matrix,!1,P),m.uniform1f(b.uniforms.u_collision_y_stretch,S.collisionTile.yStretch),drawTileSymbols(b,v,t,o,S,z,a,E,_)}}}x||m.enable(m.DEPTH_TEST)}function setSymbolDrawState(t,i,o,e,a,r,n){var s=i.gl,u=i.transform;s.uniform1i(t.uniforms.u_pitch_with_map,r?1:0),s.uniform1f(t.uniforms.u_is_text,e?1:0),s.activeTexture(s.TEXTURE1),i.frameHistory.bind(s),s.uniform1i(t.uniforms.u_fadetexture,1),s.uniform1f(t.uniforms.u_pitch,u.pitch/360*2*Math.PI),s.uniform1i(t.uniforms.u_is_size_zoom_constant,n.isZoomConstant?1:0),s.uniform1i(t.uniforms.u_is_size_feature_constant,n.isFeatureConstant?1:0),s.uniform1f(t.uniforms.u_camera_to_center_distance,u.cameraToCenterDistance);var l=symbolSize.evaluateSizeForZoom(n,u,o,e);void 0!==l.uSizeT&&s.uniform1f(t.uniforms.u_size_t,l.uSizeT),void 0!==l.uSize&&s.uniform1f(t.uniforms.u_size,l.uSize),s.uniform1f(t.uniforms.u_aspect_ratio,u.width/u.height),s.uniform1i(t.uniforms.u_rotate_symbol,a?1:0)}function drawTileSymbols(t,i,o,e,a,r,n,s,u){var l=o.gl,m=o.transform;if(s){var f=(n?\"text\":\"icon\")+\"-halo-width\",c=!e.isPaintValueFeatureConstant(f)||e.paint[f],_=u?Math.cos(m._pitch)*m.cameraToCenterDistance:1;l.uniform1f(t.uniforms.u_gamma_scale,_),c&&(l.uniform1f(t.uniforms.u_is_halo,1),drawSymbolElements(r,e,l,t)),l.uniform1f(t.uniforms.u_is_halo,0)}drawSymbolElements(r,e,l,t)}function drawSymbolElements(t,i,o,e){e.draw(o,o.TRIANGLES,i.id,t.layoutVertexBuffer,t.indexBuffer,t.segments,t.programConfigurations.get(i.id),t.dynamicLayoutVertexBuffer)}var drawCollisionDebug=_dereq_(\"./draw_collision_debug\"),pixelsToTileUnits=_dereq_(\"../source/pixels_to_tile_units\"),symbolProjection=_dereq_(\"../symbol/projection\"),symbolSize=_dereq_(\"../symbol/symbol_size\"),mat4=_dereq_(\"@mapbox/gl-matrix\").mat4,identityMat4=mat4.identity(new Float32Array(16));module.exports=drawSymbols;\n},{\"../source/pixels_to_tile_units\":93,\"../symbol/projection\":175,\"../symbol/symbol_size\":178,\"./draw_collision_debug\":66,\"@mapbox/gl-matrix\":1}],73:[function(_dereq_,module,exports){\n\"use strict\";var FrameHistory=function(){this.changeTimes=new Float64Array(256),this.changeOpacities=new Uint8Array(256),this.opacities=new Uint8ClampedArray(256),this.array=new Uint8Array(this.opacities.buffer),this.previousZoom=0,this.firstFrame=!0};FrameHistory.prototype.record=function(e,t,i){var r=this;this.firstFrame&&(e=0,this.firstFrame=!1),t=Math.floor(10*t);var a;if(t<this.previousZoom)for(a=t+1;a<=this.previousZoom;a++)r.changeTimes[a]=e,r.changeOpacities[a]=r.opacities[a];else for(a=t;a>this.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.isVisible=function(e){return 0!==this.opacities[Math.floor(10*e)]},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},{}],74:[function(_dereq_,module,exports){\n\"use strict\";function makeGlyphAtlas(a){var e=AlphaImage.create({width:0,height:0}),i={},t=new ShelfPack(0,0,{autoResize:!0});for(var h in a){var p=a[h],r=i[h]={};for(var m in p){var g=p[+m];if(g&&0!==g.bitmap.width&&0!==g.bitmap.height){var l=t.packOne(g.bitmap.width+2*padding,g.bitmap.height+2*padding);AlphaImage.resize(e,{width:t.w,height:t.h}),AlphaImage.copy(g.bitmap,e,{x:0,y:0},{x:l.x+padding,y:l.y+padding},g.bitmap),r[m]={rect:l,metrics:g.metrics}}}}return t.shrink(),AlphaImage.resize(e,{width:t.w,height:t.h}),{image:e,positions:i}}var ShelfPack=_dereq_(\"@mapbox/shelf-pack\"),ref=_dereq_(\"../util/image\"),AlphaImage=ref.AlphaImage,padding=1;module.exports={makeGlyphAtlas:makeGlyphAtlas};\n},{\"../util/image\":213,\"@mapbox/shelf-pack\":3}],75:[function(_dereq_,module,exports){\n\"use strict\";var loadGlyphRange=_dereq_(\"../style/load_glyph_range\"),TinySDF=_dereq_(\"@mapbox/tiny-sdf\"),isChar=_dereq_(\"../util/is_char_in_unicode_block\"),ref=_dereq_(\"../util/util\"),asyncAll=ref.asyncAll,ref$1=_dereq_(\"../util/image\"),AlphaImage=ref$1.AlphaImage,GlyphManager=function(r,e){this.requestTransform=r,this.localIdeographFontFamily=e,this.entries={}};GlyphManager.prototype.setURL=function(r){this.url=r},GlyphManager.prototype.getGlyphs=function(r,e){var t=this,i=[];for(var a in r)for(var l=0,n=r[a];l<n.length;l+=1){var s=n[l];i.push({stack:a,id:s})}asyncAll(i,function(r,e){var i=r.stack,a=r.id,l=t.entries[i];l||(l=t.entries[i]={glyphs:{},requests:{}});var n=l.glyphs[a];if(void 0!==n)return void e(null,{stack:i,id:a,glyph:n});if(n=t._tinySDF(l,i,a))return void e(null,{stack:i,id:a,glyph:n});var s=Math.floor(a/256);if(256*s>65535)return void e(new Error(\"glyphs > 65535 not supported\"));var o=l.requests[s];o||(o=l.requests[s]=[],loadGlyphRange(i,s,t.url,t.requestTransform,function(r,e){if(e)for(var t in e)l.glyphs[+t]=e[+t];for(var i=0,a=o;i<a.length;i+=1){(0,a[i])(r,e)}delete l.requests[s]})),o.push(function(r,t){r?e(r):t&&e(null,{stack:i,id:a,glyph:t[a]||null})})},function(r,t){if(r)e(r);else if(t){for(var i={},a=0,l=t;a<l.length;a+=1){var n=l[a],s=n.stack,o=n.id,h=n.glyph;(i[s]||(i[s]={}))[o]=h}e(null,i)}})},GlyphManager.prototype._tinySDF=function(r,e,t){var i=this.localIdeographFontFamily;if(i&&(isChar[\"CJK Unified Ideographs\"](t)||isChar[\"Hangul Syllables\"](t))){var a=r.tinySDF;if(!a){var l=\"400\";/bold/i.test(e)?l=\"900\":/medium/i.test(e)?l=\"500\":/light/i.test(e)&&(l=\"200\"),a=r.tinySDF=new TinySDF(24,3,8,.25,i,l)}return{id:t,bitmap:AlphaImage.create({width:30,height:30},a.draw(String.fromCharCode(t))),metrics:{width:24,height:24,left:0,top:-8,advance:24}}}},module.exports=GlyphManager;\n},{\"../style/load_glyph_range\":152,\"../util/image\":213,\"../util/is_char_in_unicode_block\":215,\"../util/util\":223,\"@mapbox/tiny-sdf\":4}],76:[function(_dereq_,module,exports){\n\"use strict\";function imagePosition(a,e){var i=e.pixelRatio,t={x:a.x+padding,y:a.y+padding,w:a.w-2*padding,h:a.h-2*padding};return{pixelRatio:i,textureRect:t,tl:[t.x,t.y],br:[t.x+t.w,t.y+t.h],displaySize:[t.w/i,t.h/i]}}function makeImageAtlas(a){var e=RGBAImage.create({width:0,height:0}),i={},t=new ShelfPack(0,0,{autoResize:!0});for(var d in a){var g=a[d],n=t.packOne(g.data.width+2*padding,g.data.height+2*padding);RGBAImage.resize(e,{width:t.w,height:t.h}),RGBAImage.copy(g.data,e,{x:0,y:0},{x:n.x+padding,y:n.y+padding},g.data),i[d]=imagePosition(n,g)}return t.shrink(),RGBAImage.resize(e,{width:t.w,height:t.h}),{image:e,positions:i}}var ShelfPack=_dereq_(\"@mapbox/shelf-pack\"),ref=_dereq_(\"../util/image\"),RGBAImage=ref.RGBAImage,padding=1;module.exports={imagePosition:imagePosition,makeImageAtlas:makeImageAtlas};\n},{\"../util/image\":213,\"@mapbox/shelf-pack\":3}],77:[function(_dereq_,module,exports){\n\"use strict\";var ShelfPack=_dereq_(\"@mapbox/shelf-pack\"),ref=_dereq_(\"../util/image\"),RGBAImage=ref.RGBAImage,ref$1=_dereq_(\"./image_atlas\"),imagePosition=ref$1.imagePosition,Texture=_dereq_(\"./texture\"),padding=1,ImageManager=function(){this.images={},this.loaded=!1,this.requestors=[],this.shelfPack=new ShelfPack(64,64,{autoResize:!0}),this.patterns={},this.atlasImage=RGBAImage.create({width:64,height:64}),this.dirty=!0};ImageManager.prototype.isLoaded=function(){return this.loaded},ImageManager.prototype.setLoaded=function(e){var t=this;if(this.loaded!==e&&(this.loaded=e,e)){for(var a=0,i=t.requestors;a<i.length;a+=1){var r=i[a],s=r.ids,h=r.callback;t._notify(s,h)}this.requestors=[]}},ImageManager.prototype.getImage=function(e){return this.images[e]},ImageManager.prototype.addImage=function(e,t){this.images[e]=t},ImageManager.prototype.removeImage=function(e){delete this.images[e];var t=this.patterns[e];t&&(this.shelfPack.unref(t.bin),delete this.patterns[e])},ImageManager.prototype.getImages=function(e,t){var a=this,i=!0;if(!this.isLoaded())for(var r=0,s=e;r<s.length;r+=1){var h=s[r];a.images[h]||(i=!1)}this.isLoaded()||i?this._notify(e,t):this.requestors.push({ids:e,callback:t})},ImageManager.prototype._notify=function(e,t){for(var a=this,i={},r=0,s=e;r<s.length;r+=1){var h=s[r],g=a.images[h];g&&(i[h]=g)}t(null,i)},ImageManager.prototype.getPixelSize=function(){return{width:this.shelfPack.w,height:this.shelfPack.h}},ImageManager.prototype.getPattern=function(e){var t=this.patterns[e];if(t)return t.position;var a=this.getImage(e);if(!a)return null;var i=a.data.width+2*padding,r=a.data.height+2*padding,s=this.shelfPack.packOne(i,r);if(!s)return null;RGBAImage.resize(this.atlasImage,this.getPixelSize());var h=a.data,g=this.atlasImage,n=s.x+padding,o=s.y+padding,d=h.width,m=h.height;RGBAImage.copy(h,g,{x:0,y:0},{x:n,y:o},{width:d,height:m}),RGBAImage.copy(h,g,{x:0,y:m-1},{x:n,y:o-1},{width:d,height:1}),RGBAImage.copy(h,g,{x:0,y:0},{x:n,y:o+m},{width:d,height:1}),RGBAImage.copy(h,g,{x:d-1,y:0},{x:n-1,y:o},{width:1,height:m}),RGBAImage.copy(h,g,{x:0,y:0},{x:n+d,y:o},{width:1,height:m}),this.dirty=!0;var p=imagePosition(s,a);return this.patterns[e]={bin:s,position:p},p},ImageManager.prototype.bind=function(e){this.atlasTexture?this.dirty&&(this.atlasTexture.update(this.atlasImage),this.dirty=!1):this.atlasTexture=new Texture(e,this.atlasImage,e.RGBA),this.atlasTexture.bind(e.LINEAR,e.CLAMP_TO_EDGE)},module.exports=ImageManager;\n},{\"../util/image\":213,\"./image_atlas\":76,\"./texture\":83,\"@mapbox/shelf-pack\":3}],78:[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.getDash=function(t,i){var e=t.join(\",\")+String(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 a=0,r=0;r<t.length;r++)a+=t[r];for(var n=this.width/a,E=n/2,T=t.length%2==1,o=-h;o<=h;o++)for(var R=e.nextRow+h+o,d=e.width*R,u=T?-t[t.length-1]:0,x=t[0],l=1,_=0;_<this.width;_++){for(;x<_/n;)u=x,x+=t[l],T&&l===t.length-1&&(x+=t[0]),l++;var A=Math.abs(_-u*n),g=Math.abs(_-x*n),w=Math.min(A,g),D=l%2==1,U=void 0;if(i){var f=h?o/h*(E+1):0;if(D){var p=E-Math.abs(f);U=Math.sqrt(w*w+p*p)}else U=E-Math.sqrt(w*w+f*f)}else U=(D?1:-1)*w;e.data[3+4*(d+_)]=Math.max(0,Math.min(255,U+128))}var X={y:(this.nextRow+h+.5)/this.height,height:2*h/this.height,width:a};return this.nextRow+=s,this.dirty=!0,X},LineAtlas.prototype.bind=function(t){this.texture?(t.bindTexture(t.TEXTURE_2D,this.texture),this.dirty&&(this.dirty=!1,t.texSubImage2D(t.TEXTURE_2D,0,0,0,this.width,this.height,t.RGBA,t.UNSIGNED_BYTE,this.data))):(this.texture=t.createTexture(),t.bindTexture(t.TEXTURE_2D,this.texture),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_WRAP_S,t.REPEAT),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_WRAP_T,t.REPEAT),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_MIN_FILTER,t.LINEAR),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_MAG_FILTER,t.LINEAR),t.texImage2D(t.TEXTURE_2D,0,t.RGBA,this.width,this.height,0,t.RGBA,t.UNSIGNED_BYTE,this.data))},module.exports=LineAtlas;\n},{\"../util/util\":223}],79:[function(_dereq_,module,exports){\n\"use strict\";var browser=_dereq_(\"../util/browser\"),mat4=_dereq_(\"@mapbox/gl-matrix\").mat4,FrameHistory=_dereq_(\"./frame_history\"),SourceCache=_dereq_(\"../source/source_cache\"),EXTENT=_dereq_(\"../data/extent\"),pixelsToTileUnits=_dereq_(\"../source/pixels_to_tile_units\"),util=_dereq_(\"../util/util\"),VertexBuffer=_dereq_(\"../gl/vertex_buffer\"),VertexArrayObject=_dereq_(\"./vertex_array_object\"),RasterBoundsArray=_dereq_(\"../data/raster_bounds_array\"),PosArray=_dereq_(\"../data/pos_array\"),ref=_dereq_(\"../data/program_configuration\"),ProgramConfiguration=ref.ProgramConfiguration,shaders=_dereq_(\"../shaders\"),Program=_dereq_(\"./program\"),RenderTexture=_dereq_(\"./render_texture\"),draw={symbol:_dereq_(\"./draw_symbol\"),circle:_dereq_(\"./draw_circle\"),line:_dereq_(\"./draw_line\"),fill:_dereq_(\"./draw_fill\"),\"fill-extrusion\":_dereq_(\"./draw_fill_extrusion\"),raster:_dereq_(\"./draw_raster\"),background:_dereq_(\"./draw_background\"),debug:_dereq_(\"./draw_debug\")},Painter=function(e,r){this.gl=e,this.transform=r,this._tileTextures={},this.prerenderedFrames={},this.viewportFrames=[],this.frameHistory=new FrameHistory,this.setup(),this.numSublayers=SourceCache.maxUnderzooming+SourceCache.maxOverzooming+1,this.depthEpsilon=1/Math.pow(2,16),this.lineWidthRange=e.getParameter(e.ALIASED_LINE_WIDTH_RANGE),this.basicFillProgramConfiguration=ProgramConfiguration.createBasicFill(),this.emptyProgramConfiguration=new ProgramConfiguration};Painter.prototype.resize=function(e,r){var t=this,i=this.gl;this.width=e*browser.devicePixelRatio,this.height=r*browser.devicePixelRatio,i.viewport(0,0,this.width,this.height);for(var a=0,s=t.viewportFrames;a<s.length;a+=1){var n=s[a];t.gl.deleteTexture(n.texture),t.gl.deleteFramebuffer(n.fbo)}this.viewportFrames=[],this.depthRbo&&(this.gl.deleteRenderbuffer(this.depthRbo),this.depthRbo=null)},Painter.prototype.setup=function(){var e=this.gl;e.enable(e.BLEND),e.blendFunc(e.ONE,e.ONE_MINUS_SRC_ALPHA),e.enable(e.STENCIL_TEST),e.enable(e.DEPTH_TEST),e.depthFunc(e.LEQUAL),this._depthMask=!1,e.depthMask(!1);var r=new PosArray;r.emplaceBack(0,0),r.emplaceBack(EXTENT,0),r.emplaceBack(0,EXTENT),r.emplaceBack(EXTENT,EXTENT),this.tileExtentBuffer=new VertexBuffer(e,r),this.tileExtentVAO=new VertexArrayObject,this.tileExtentPatternVAO=new VertexArrayObject;var t=new PosArray;t.emplaceBack(0,0),t.emplaceBack(EXTENT,0),t.emplaceBack(EXTENT,EXTENT),t.emplaceBack(0,EXTENT),t.emplaceBack(0,0),this.debugBuffer=new VertexBuffer(e,t),this.debugVAO=new VertexArrayObject;var i=new RasterBoundsArray;i.emplaceBack(0,0,0,0),i.emplaceBack(EXTENT,0,EXTENT,0),i.emplaceBack(0,EXTENT,0,EXTENT),i.emplaceBack(EXTENT,EXTENT,EXTENT,EXTENT),this.rasterBoundsBuffer=new VertexBuffer(e,i),this.rasterBoundsVAO=new VertexArrayObject,this.extTextureFilterAnisotropic=e.getExtension(\"EXT_texture_filter_anisotropic\")||e.getExtension(\"MOZ_EXT_texture_filter_anisotropic\")||e.getExtension(\"WEBKIT_EXT_texture_filter_anisotropic\"),this.extTextureFilterAnisotropic&&(this.extTextureFilterAnisotropicMax=e.getParameter(this.extTextureFilterAnisotropic.MAX_TEXTURE_MAX_ANISOTROPY_EXT))},Painter.prototype.clearColor=function(){var e=this.gl;e.clearColor(0,0,0,0),e.clear(e.COLOR_BUFFER_BIT)},Painter.prototype.clearStencil=function(){var e=this.gl;e.clearStencil(0),e.stencilMask(255),e.clear(e.STENCIL_BUFFER_BIT)},Painter.prototype.clearDepth=function(){var e=this.gl;e.clearDepth(1),this.depthMask(!0),e.clear(e.DEPTH_BUFFER_BIT)},Painter.prototype._renderTileClippingMasks=function(e){var r=this,t=this.gl;t.colorMask(!1,!1,!1,!1),this.depthMask(!1),t.disable(t.DEPTH_TEST),t.enable(t.STENCIL_TEST),t.stencilMask(255),t.stencilOp(t.KEEP,t.KEEP,t.REPLACE);var i=1;this._tileClippingMaskIDs={};for(var a=0,s=e;a<s.length;a+=1){var n=s[a],o=r._tileClippingMaskIDs[n.id]=i++;t.stencilFunc(t.ALWAYS,o,255);var l=r.useProgram(\"fill\",r.basicFillProgramConfiguration);t.uniformMatrix4fv(l.uniforms.u_matrix,!1,n.posMatrix),r.tileExtentVAO.bind(t,l,r.tileExtentBuffer),t.drawArrays(t.TRIANGLE_STRIP,0,r.tileExtentBuffer.length)}t.stencilMask(0),t.colorMask(!0,!0,!0,!0),this.depthMask(!0),t.enable(t.DEPTH_TEST)},Painter.prototype.enableTileClippingMask=function(e){var r=this.gl;r.stencilFunc(r.EQUAL,this._tileClippingMaskIDs[e.id],255)},Painter.prototype.render=function(e,r){var t=this;this.style=e,this.options=r,this.lineAtlas=e.lineAtlas,this.imageManager=e.imageManager,this.glyphManager=e.glyphManager,this.frameHistory.record(Date.now(),this.transform.zoom,e.getTransition().duration);for(var i in t.style.sourceCaches){var a=t.style.sourceCaches[i];a.used&&a.prepare(t.gl)}var s=this.style._order;this.renderPass=\"3d\";for(var n,o=!0,l=[],h=0;h<s.length;h++){var c=t.style._layers[s[h]];if(c.has3DPass()&&!c.isHidden(t.transform.zoom)&&(c.source!==(n&&n.id)&&(n=t.style.sourceCaches[c.source],l=[],n&&(t.clearStencil(),l=n.getVisibleCoordinates()),l.reverse()),l.length)){t._setup3DRenderbuffer();var u=t.viewportFrames.pop()||new RenderTexture(t);u.bindWithDepth(t.depthRbo),o&&(t.clearDepth(),o=!1),t.renderLayer(t,n,c,l),u.unbind(),t.prerenderedFrames[c.id]=u}}this.clearColor(),this.clearDepth(),this.showOverdrawInspector(r.showOverdrawInspector),this.depthRange=(e._order.length+2)*this.numSublayers*this.depthEpsilon,this.renderPass=\"opaque\";var p,d=[];for(this.currentLayer=s.length-1,this._showOverdrawInspector||this.gl.disable(this.gl.BLEND),this.currentLayer;this.currentLayer>=0;this.currentLayer--){var g=t.style._layers[s[t.currentLayer]];g.source!==(p&&p.id)&&(p=t.style.sourceCaches[g.source],d=[],p&&(t.clearStencil(),d=p.getVisibleCoordinates(),p.getSource().isTileClipped&&t._renderTileClippingMasks(d))),t.renderLayer(t,p,g,d)}this.renderPass=\"translucent\";var f,E=[];for(this.gl.enable(this.gl.BLEND),this.currentLayer=0,this.currentLayer;this.currentLayer<s.length;this.currentLayer++){var T=t.style._layers[s[t.currentLayer]];T.source!==(f&&f.id)&&(f=t.style.sourceCaches[T.source],E=[],f&&(t.clearStencil(),E=f.getVisibleCoordinates(),f.getSource().isTileClipped&&t._renderTileClippingMasks(E)),E.reverse()),t.renderLayer(t,f,T,E)}if(this.options.showTileBoundaries){var _=this.style.sourceCaches[Object.keys(this.style.sourceCaches)[0]];_&&draw.debug(this,_,_.getVisibleCoordinates())}},Painter.prototype._setup3DRenderbuffer=function(){if(!this.depthRbo){var e=this.gl;this.depthRbo=e.createRenderbuffer(),e.bindRenderbuffer(e.RENDERBUFFER,this.depthRbo),e.renderbufferStorage(e.RENDERBUFFER,e.DEPTH_COMPONENT16,this.width,this.height),e.bindRenderbuffer(e.RENDERBUFFER,null)}this.depthRboAttached=!0},Painter.prototype.depthMask=function(e){e!==this._depthMask&&(this._depthMask=e,this.gl.depthMask(e))},Painter.prototype.renderLayer=function(e,r,t,i){t.isHidden(this.transform.zoom)||(\"background\"===t.type||i.length)&&(this.id=t.id,draw[t.type](e,r,t,i))},Painter.prototype.setDepthSublayer=function(e){var r=1-((1+this.currentLayer)*this.numSublayers+e)*this.depthEpsilon,t=r-1+this.depthRange;this.gl.depthRange(t,r)},Painter.prototype.translatePosMatrix=function(e,r,t,i,a){if(!t[0]&&!t[1])return e;var s=a?\"map\"===i?this.transform.angle:0:\"viewport\"===i?-this.transform.angle:0;if(s){var n=Math.sin(s),o=Math.cos(s);t=[t[0]*o-t[1]*n,t[0]*n+t[1]*o]}var l=[a?t[0]:pixelsToTileUnits(r,t[0],this.transform.zoom),a?t[1]:pixelsToTileUnits(r,t[1],this.transform.zoom),0],h=new Float32Array(16);return mat4.translate(h,e,l),h},Painter.prototype.saveTileTexture=function(e){var r=this._tileTextures[e.size];r?r.push(e):this._tileTextures[e.size]=[e]},Painter.prototype.getTileTexture=function(e){var r=this._tileTextures[e];return r&&r.length>0?r.pop():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._createProgramCached=function(e,r){this.cache=this.cache||{};var t=\"\"+e+(r.cacheKey||\"\")+(this._showOverdrawInspector?\"/overdraw\":\"\");return this.cache[t]||(this.cache[t]=new Program(this.gl,shaders[e],r,this._showOverdrawInspector)),this.cache[t]},Painter.prototype.useProgram=function(e,r){var t=this.gl,i=this._createProgramCached(e,r||this.emptyProgramConfiguration);return this.currentProgram!==i&&(t.useProgram(i.program),this.currentProgram=i),i},module.exports=Painter;\n},{\"../data/extent\":48,\"../data/pos_array\":52,\"../data/program_configuration\":53,\"../data/raster_bounds_array\":54,\"../gl/vertex_buffer\":62,\"../shaders\":86,\"../source/pixels_to_tile_units\":93,\"../source/source_cache\":98,\"../util/browser\":202,\"../util/util\":223,\"./draw_background\":64,\"./draw_circle\":65,\"./draw_debug\":67,\"./draw_fill\":68,\"./draw_fill_extrusion\":69,\"./draw_line\":70,\"./draw_raster\":71,\"./draw_symbol\":72,\"./frame_history\":73,\"./program\":81,\"./render_texture\":82,\"./vertex_array_object\":84,\"@mapbox/gl-matrix\":1}],80:[function(_dereq_,module,exports){\n\"use strict\";var pixelsToTileUnits=_dereq_(\"../source/pixels_to_tile_units\");exports.isPatternMissing=function(r,i){if(!r)return!1;var e=i.imageManager.getPattern(r.from),o=i.imageManager.getPattern(r.to);return!e||!o},exports.prepare=function(r,i,e){var o=i.gl,t=i.imageManager.getPattern(r.from),n=i.imageManager.getPattern(r.to);o.uniform1i(e.uniforms.u_image,0),o.uniform2fv(e.uniforms.u_pattern_tl_a,t.tl),o.uniform2fv(e.uniforms.u_pattern_br_a,t.br),o.uniform2fv(e.uniforms.u_pattern_tl_b,n.tl),o.uniform2fv(e.uniforms.u_pattern_br_b,n.br);var u=i.imageManager.getPixelSize(),a=u.width,f=u.height;o.uniform2fv(e.uniforms.u_texsize,[a,f]),o.uniform1f(e.uniforms.u_mix,r.t),o.uniform2fv(e.uniforms.u_pattern_size_a,t.displaySize),o.uniform2fv(e.uniforms.u_pattern_size_b,n.displaySize),o.uniform1f(e.uniforms.u_scale_a,r.fromScale),o.uniform1f(e.uniforms.u_scale_b,r.toScale),o.activeTexture(o.TEXTURE0),i.imageManager.bind(o)},exports.setTile=function(r,i,e){var o=i.gl;o.uniform1f(e.uniforms.u_tile_units_to_pixels,1/pixelsToTileUnits(r,1,i.transform.tileZoom));var t=Math.pow(2,r.coord.z),n=r.tileSize*Math.pow(2,i.transform.tileZoom)/t,u=n*(r.coord.x+r.coord.w*t),a=n*r.coord.y;o.uniform2f(e.uniforms.u_pixel_coord_upper,u>>16,a>>16),o.uniform2f(e.uniforms.u_pixel_coord_lower,65535&u,65535&a)};\n},{\"../source/pixels_to_tile_units\":93}],81:[function(_dereq_,module,exports){\n\"use strict\";var browser=_dereq_(\"../util/browser\"),shaders=_dereq_(\"../shaders\"),ref=_dereq_(\"../data/program_configuration\"),ProgramConfiguration=ref.ProgramConfiguration,VertexArrayObject=_dereq_(\"./vertex_array_object\"),Program=function(r,e,t,a){var o=this;this.gl=r,this.program=r.createProgram();var i=t.defines().concat(\"#define DEVICE_PIXEL_RATIO \"+browser.devicePixelRatio.toFixed(1));a&&i.push(\"#define OVERDRAW_INSPECTOR;\");var n=i.concat(shaders.prelude.fragmentSource,e.fragmentSource).join(\"\\n\"),s=i.concat(shaders.prelude.vertexSource,e.vertexSource).join(\"\\n\"),m=r.createShader(r.FRAGMENT_SHADER);r.shaderSource(m,n),r.compileShader(m),r.attachShader(this.program,m);var g=r.createShader(r.VERTEX_SHADER);r.shaderSource(g,s),r.compileShader(g),r.attachShader(this.program,g);for(var c=t.interface?t.interface.layoutAttributes:[],u=0;u<c.length;u++)r.bindAttribLocation(o.program,u,c[u].name);r.linkProgram(this.program),this.numAttributes=r.getProgramParameter(this.program,r.ACTIVE_ATTRIBUTES),this.attributes={},this.uniforms={};for(var h=0;h<this.numAttributes;h++){var f=r.getActiveAttrib(o.program,h);f&&(o.attributes[f.name]=r.getAttribLocation(o.program,f.name))}for(var d=r.getProgramParameter(this.program,r.ACTIVE_UNIFORMS),p=0;p<d;p++){var v=r.getActiveUniform(o.program,p);v&&(o.uniforms[v.name]=r.getUniformLocation(o.program,v.name))}};Program.prototype.draw=function(r,e,t,a,o,i,n,s){for(var m,g=this,c=(m={},m[r.LINES]=2,m[r.TRIANGLES]=3,m)[e],u=0,h=i.get();u<h.length;u+=1){var f=h[u],d=f.vaos||(f.vaos={});(d[t]||(d[t]=new VertexArrayObject)).bind(r,g,a,o,n&&n.paintVertexBuffer,f.vertexOffset,s),r.drawElements(e,f.primitiveLength*c,r.UNSIGNED_SHORT,f.primitiveOffset*c*2)}},module.exports=Program;\n},{\"../data/program_configuration\":53,\"../shaders\":86,\"../util/browser\":202,\"./vertex_array_object\":84}],82:[function(_dereq_,module,exports){\n\"use strict\";var VertexBuffer=_dereq_(\"../gl/vertex_buffer\"),VertexArrayObject=_dereq_(\"./vertex_array_object\"),PosArray=_dereq_(\"../data/pos_array\"),RenderTexture=function(e){var r=this.gl=e.gl,t=this.texture=r.createTexture();r.bindTexture(r.TEXTURE_2D,t),r.texParameteri(r.TEXTURE_2D,r.TEXTURE_WRAP_S,r.CLAMP_TO_EDGE),r.texParameteri(r.TEXTURE_2D,r.TEXTURE_WRAP_T,r.CLAMP_TO_EDGE),r.texParameteri(r.TEXTURE_2D,r.TEXTURE_MIN_FILTER,r.LINEAR),r.texParameteri(r.TEXTURE_2D,r.TEXTURE_MAG_FILTER,r.LINEAR),r.texImage2D(r.TEXTURE_2D,0,r.RGBA,e.width,e.height,0,r.RGBA,r.UNSIGNED_BYTE,null),r.bindTexture(r.TEXTURE_2D,null);var E=this.fbo=r.createFramebuffer();r.bindFramebuffer(r.FRAMEBUFFER,E),r.framebufferTexture2D(r.FRAMEBUFFER,r.COLOR_ATTACHMENT0,r.TEXTURE_2D,t,0);var a=new PosArray;a.emplaceBack(0,0),a.emplaceBack(1,0),a.emplaceBack(0,1),a.emplaceBack(1,1),this.buffer=new VertexBuffer(r,a),this.vao=new VertexArrayObject};RenderTexture.prototype.bindWithDepth=function(e){var r=this.gl;r.bindFramebuffer(r.FRAMEBUFFER,this.fbo),this.attachedRbo!==e&&(r.framebufferRenderbuffer(r.FRAMEBUFFER,r.DEPTH_ATTACHMENT,r.RENDERBUFFER,e),this.attachedRbo=e)},RenderTexture.prototype.unbind=function(){var e=this.gl;e.bindFramebuffer(e.FRAMEBUFFER,null)},module.exports=RenderTexture;\n},{\"../data/pos_array\":52,\"../gl/vertex_buffer\":62,\"./vertex_array_object\":84}],83:[function(_dereq_,module,exports){\n\"use strict\";var Texture=function(t,e,i){this.gl=t;var r=e.width,T=e.height;this.size=[r,T],this.format=i,this.texture=t.createTexture(),this.update(e)};Texture.prototype.update=function(t){var e=t.width,i=t.height,r=t.data;this.size=[e,i];var T=this,E=T.gl;E.bindTexture(E.TEXTURE_2D,this.texture),E.pixelStorei(E.UNPACK_ALIGNMENT,1),this.format===E.RGBA&&E.pixelStorei(E.UNPACK_PREMULTIPLY_ALPHA_WEBGL,!0),E.texImage2D(E.TEXTURE_2D,0,this.format,e,i,0,this.format,E.UNSIGNED_BYTE,r)},Texture.prototype.bind=function(t,e){var i=this,r=i.gl;r.bindTexture(r.TEXTURE_2D,this.texture),t!==this.filter&&(r.texParameteri(r.TEXTURE_2D,r.TEXTURE_MAG_FILTER,t),r.texParameteri(r.TEXTURE_2D,r.TEXTURE_MIN_FILTER,t),this.filter=t),e!==this.wrap&&(r.texParameteri(r.TEXTURE_2D,r.TEXTURE_WRAP_S,e),r.texParameteri(r.TEXTURE_2D,r.TEXTURE_WRAP_T,e),this.wrap=e)},Texture.prototype.destroy=function(){this.gl.deleteTexture(this.texture),this.texture=null},module.exports=Texture;\n},{}],84:[function(_dereq_,module,exports){\n\"use strict\";var VertexArrayObject=function(){this.boundProgram=null,this.boundVertexBuffer=null,this.boundVertexBuffer2=null,this.boundIndexBuffer=null,this.boundVertexOffset=null,this.boundDynamicVertexBuffer=null,this.vao=null};VertexArrayObject.prototype.bind=function(e,t,r,i,n,s,u){void 0===e.extVertexArrayObject&&(e.extVertexArrayObject=e.getExtension(\"OES_vertex_array_object\"));var b=!this.vao||this.boundProgram!==t||this.boundVertexBuffer!==r||this.boundVertexBuffer2!==n||this.boundIndexBuffer!==i||this.boundVertexOffset!==s||this.boundDynamicVertexBuffer!==u;!e.extVertexArrayObject||b?(this.freshBind(e,t,r,i,n,s,u),this.gl=e):(e.extVertexArrayObject.bindVertexArrayOES(this.vao),u&&u.bind())},VertexArrayObject.prototype.freshBind=function(e,t,r,i,n,s,u){var b,o=t.numAttributes;if(e.extVertexArrayObject)this.vao&&this.destroy(),this.vao=e.extVertexArrayObject.createVertexArrayOES(),e.extVertexArrayObject.bindVertexArrayOES(this.vao),b=0,this.boundProgram=t,this.boundVertexBuffer=r,this.boundVertexBuffer2=n,this.boundIndexBuffer=i,this.boundVertexOffset=s,this.boundDynamicVertexBuffer=u;else{b=e.currentNumAttributes||0;for(var x=o;x<b;x++)e.disableVertexAttribArray(x)}r.enableAttributes(e,t),n&&n.enableAttributes(e,t),u&&u.enableAttributes(e,t),r.bind(),r.setVertexAttribPointers(e,t,s),n&&(n.bind(),n.setVertexAttribPointers(e,t,s)),u&&(u.bind(),u.setVertexAttribPointers(e,t,s)),i&&i.bind(),e.currentNumAttributes=o},VertexArrayObject.prototype.destroy=function(){this.vao&&(this.gl.extVertexArrayObject.deleteVertexArrayOES(this.vao),this.vao=null)},module.exports=VertexArrayObject;\n},{}],85:[function(_dereq_,module,exports){\n\"use strict\";var util=_dereq_(\"../util/util\");exports.packUint8ToFloat=function(t,l){return t=util.clamp(Math.floor(t),0,255),l=util.clamp(Math.floor(l),0,255),256*t+l};\n},{\"../util/util\":223}],86:[function(_dereq_,module,exports){\n\"use strict\";var shaders={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\\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, we encode a 4-component\\n// 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 vec3 v_data;\\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 vec2 extrude = v_data.xy;\\n float extrude_length = length(extrude);\\n\\n lowp float antialiasblur = v_data.z;\\n float antialiased_blur = -max(blur, 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 bool u_pitch_with_map;\\nuniform vec2 u_extrude_scale;\\nuniform highp float u_camera_to_center_distance;\\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 vec3 v_data;\\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 vec2 extrude = vec2(mod(a_pos, 2.0) * 2.0 - 1.0);\\n\\n // multiply a_pos by 0.5, since we had it * 2 in order to sneak\\n // in extrusion data\\n vec2 circle_center = floor(a_pos * 0.5);\\n if (u_pitch_with_map) {\\n vec2 corner_position = circle_center;\\n if (u_scale_with_map) {\\n corner_position += extrude * (radius + stroke_width) * u_extrude_scale;\\n } else {\\n // Pitching the circle with the map effectively scales it with the map\\n // To counteract the effect for pitch-scale: viewport, we rescale the\\n // whole circle based on the pitch scaling effect at its central point\\n vec4 projected_center = u_matrix * vec4(circle_center, 0, 1);\\n corner_position += extrude * (radius + stroke_width) * u_extrude_scale * (projected_center.w / u_camera_to_center_distance);\\n }\\n\\n gl_Position = u_matrix * vec4(corner_position, 0, 1);\\n } else {\\n gl_Position = u_matrix * vec4(circle_center, 0, 1);\\n\\n if (u_scale_with_map) {\\n gl_Position.xy += extrude * (radius + stroke_width) * u_extrude_scale * u_camera_to_center_distance;\\n } else {\\n gl_Position.xy += extrude * (radius + stroke_width) * u_extrude_scale * gl_Position.w;\\n }\\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 lowp float antialiasblur = 1.0 / DEVICE_PIXEL_RATIO / (radius + stroke_width);\\n\\n v_data = vec3(extrude.x, extrude.y, antialiasblur);\\n}\\n\"},collisionBox:{fragmentSource:\"uniform float u_zoom;\\n// u_maxzoom is derived from the maximum scale considered by the CollisionTile\\n// Labels with placement zoom greater than this value will not be placed,\\n// regardless of perspective effects.\\nuniform float u_maxzoom;\\nuniform sampler2D u_fadetexture;\\n\\n// v_max_zoom is a collision-box-specific value that controls when line-following\\n// collision boxes are used.\\nvarying float v_max_zoom;\\nvarying float v_placement_zoom;\\nvarying float v_perspective_zoom_adjust;\\nvarying vec2 v_fade_tex;\\n\\nvoid main() {\\n\\n float alpha = 0.5;\\n\\n // Green = no collisions, label is showing\\n gl_FragColor = vec4(0.0, 1.0, 0.0, 1.0) * alpha;\\n\\n // Red = collision, label hidden\\n if (texture2D(u_fadetexture, v_fade_tex).a < 1.0) {\\n gl_FragColor = vec4(1.0, 0.0, 0.0, 1.0) * alpha;\\n }\\n\\n // Faded black = this collision box is not used at this zoom (for curved labels)\\n if (u_zoom >= v_max_zoom + v_perspective_zoom_adjust) {\\n gl_FragColor = vec4(0.0, 0.0, 0.0, 1.0) * alpha * 0.25;\\n }\\n\\n // Faded blue = the placement scale for this label is beyond the CollisionTile\\n // max scale, so it's impossible for this label to show without collision detection\\n // being run again (the label's glyphs haven't even been added to the symbol bucket)\\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_anchor_pos;\\nattribute vec2 a_extrude;\\nattribute vec2 a_data;\\n\\nuniform mat4 u_matrix;\\nuniform float u_scale;\\nuniform float u_pitch;\\nuniform float u_collision_y_stretch;\\nuniform float u_camera_to_center_distance;\\n\\nvarying float v_max_zoom;\\nvarying float v_placement_zoom;\\nvarying float v_perspective_zoom_adjust;\\nvarying vec2 v_fade_tex;\\n\\nvoid main() {\\n vec4 projectedPoint = u_matrix * vec4(a_anchor_pos, 0, 1);\\n highp float camera_to_anchor_distance = projectedPoint.w;\\n highp float collision_perspective_ratio = 1.0 + 0.5 * ((camera_to_anchor_distance / u_camera_to_center_distance) - 1.0);\\n\\n highp float incidence_stretch = camera_to_anchor_distance / (u_camera_to_center_distance * cos(u_pitch));\\n highp float collision_adjustment = max(1.0, incidence_stretch / u_collision_y_stretch);\\n\\n gl_Position = u_matrix * vec4(a_pos + a_extrude * collision_perspective_ratio * collision_adjustment / u_scale, 0.0, 1.0);\\n\\n v_max_zoom = a_data.x;\\n v_placement_zoom = a_data.y;\\n\\n v_perspective_zoom_adjust = floor(log2(collision_perspective_ratio * collision_adjustment) * 10.0);\\n v_fade_tex = vec2((v_placement_zoom + v_perspective_zoom_adjust) / 255.0, 0.0);\\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 // We are using Int16 for texture position coordinates to give us enough precision for\\n // fractional coordinates. We use 8192 to scale the texture coordinates in the buffer\\n // as an arbitrarily high number to preserve adequate precision when rendering.\\n // This is also the same value as the EXTENT we are using for our tile buffer pos coordinates,\\n // so math for modifying either is consistent.\\n gl_Position = u_matrix * vec4(a_pos, step(8192.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 vec2 u_texsize;\\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_texsize, u_pattern_br_a / u_texsize, 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_texsize, u_pattern_br_b / u_texsize, 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 vec2 u_texsize;\\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_texsize, u_pattern_br_a / u_texsize, 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_texsize, u_pattern_br_b / u_texsize, 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 vec2 u_texsize;\\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_texsize, u_pattern_br_a / u_texsize, 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_texsize, u_pattern_br_b / u_texsize, 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 vec4 a_pos_normal;\\nattribute vec4 a_data;\\n\\nuniform mat4 u_matrix;\\nuniform mediump float u_ratio;\\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#pragma mapbox: define mediump float width\\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 #pragma mapbox: initialize mediump float width\\n\\n vec2 a_extrude = a_data.xy - 128.0;\\n float a_direction = mod(a_data.z, 4.0) - 1.0;\\n\\n vec2 pos = a_pos_normal.xy;\\n\\n // x is 1 if it's a round cap, 0 otherwise\\n // y is 1 if the normal points up, and -1 if it points down\\n mediump vec2 normal = a_pos_normal.zw;\\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 halfwidth = width / 2.0;\\n offset = -1.0 * offset;\\n\\n float inset = gapwidth + (gapwidth > 0.0 ? ANTIALIASING : 0.0);\\n float outset = gapwidth + halfwidth * (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 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 vec2 u_texsize;\\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_texsize, u_pattern_br_a / u_texsize, vec2(x_a, y_a));\\n vec2 pos_b = mix(u_pattern_tl_b / u_texsize, u_pattern_br_b / u_texsize, 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 vec4 a_pos_normal;\\nattribute vec4 a_data;\\n\\nuniform mat4 u_matrix;\\nuniform mediump float u_ratio;\\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#pragma mapbox: define mediump float width\\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 #pragma mapbox: initialize mediump float width\\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 vec2 pos = a_pos_normal.xy;\\n\\n // x is 1 if it's a round cap, 0 otherwise\\n // y is 1 if the normal points up, and -1 if it points down\\n mediump vec2 normal = a_pos_normal.zw;\\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 halfwidth = width / 2.0;\\n offset = -1.0 * offset;\\n\\n float inset = gapwidth + (gapwidth > 0.0 ? ANTIALIASING : 0.0);\\n float outset = gapwidth + halfwidth * (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 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:{\nfragmentSource:\"\\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#pragma mapbox: define mediump float width\\n#pragma mapbox: define lowp float floorwidth\\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 width\\n #pragma mapbox: initialize lowp float floorwidth\\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 / floorwidth, 0.5 + u_sdfgamma / floorwidth, 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 vec4 a_pos_normal;\\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;\\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#pragma mapbox: define mediump float width\\n#pragma mapbox: define lowp float floorwidth\\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 #pragma mapbox: initialize mediump float width\\n #pragma mapbox: initialize lowp float floorwidth\\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 vec2 pos = a_pos_normal.xy;\\n\\n // x is 1 if it's a round cap, 0 otherwise\\n // y is 1 if the normal points up, and -1 if it points down\\n mediump vec2 normal = a_pos_normal.zw;\\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 halfwidth = width / 2.0;\\n offset = -1.0 * offset;\\n\\n float inset = gapwidth + (gapwidth > 0.0 ? ANTIALIASING : 0.0);\\n float outset = gapwidth + halfwidth * (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 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 / floorwidth, normal.y * u_patternscale_a.y + u_tex_y_a);\\n v_tex_b = vec2(a_linesofar * u_patternscale_b.x / floorwidth, 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 if (color0.a > 0.0) {\\n color0.rgb = color0.rgb / color0.a;\\n }\\n if (color1.a > 0.0) {\\n color1.rgb = color1.rgb / color1.a;\\n }\\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 // We are using Int16 for texture position coordinates to give us enough precision for\\n // fractional coordinates. We use 8192 to scale the texture coordinates in the buffer\\n // as an arbitrarily high number to preserve adequate precision when rendering.\\n // This is also the same value as the EXTENT we are using for our tile buffer pos coordinates,\\n // so math for modifying either is consistent.\\n v_pos0 = (((a_texture_pos / 8192.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:\"const float PI = 3.141592653589793;\\n\\nattribute vec4 a_pos_offset;\\nattribute vec4 a_data;\\nattribute vec3 a_projected_pos;\\n\\nuniform bool u_is_size_zoom_constant;\\nuniform bool u_is_size_feature_constant;\\nuniform highp float u_size_t; // used to interpolate between zoom stops when size is a composite function\\nuniform highp float u_size; // used when size is both zoom and feature constant\\nuniform highp float u_camera_to_center_distance;\\nuniform highp float u_pitch;\\nuniform bool u_rotate_symbol;\\nuniform highp float u_aspect_ratio;\\nuniform highp float u_collision_y_stretch;\\n\\n#pragma mapbox: define lowp float opacity\\n\\nuniform mat4 u_matrix;\\nuniform mat4 u_label_plane_matrix;\\nuniform mat4 u_gl_coord_matrix;\\n\\nuniform bool u_is_text;\\nuniform bool u_pitch_with_map;\\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 vec2 a_size = a_data.zw;\\n\\n highp vec2 angle_labelminzoom = unpack_float(a_projected_pos[2]);\\n highp float segment_angle = -angle_labelminzoom[0] / 255.0 * 2.0 * PI;\\n mediump float a_labelminzoom = angle_labelminzoom[1];\\n\\n float size;\\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 } else if (u_is_size_zoom_constant && !u_is_size_feature_constant) {\\n size = a_size[0] / 10.0;\\n } else if (!u_is_size_zoom_constant && u_is_size_feature_constant) {\\n size = u_size;\\n } else {\\n size = u_size;\\n }\\n\\n vec4 projectedPoint = u_matrix * vec4(a_pos, 0, 1);\\n highp float camera_to_anchor_distance = projectedPoint.w;\\n // See comments in symbol_sdf.vertex\\n highp float distance_ratio = u_pitch_with_map ?\\n camera_to_anchor_distance / u_camera_to_center_distance :\\n u_camera_to_center_distance / camera_to_anchor_distance;\\n highp float perspective_ratio = 0.5 + 0.5 * distance_ratio;\\n\\n size *= perspective_ratio;\\n\\n float fontScale = u_is_text ? size / 24.0 : size;\\n\\n highp float symbol_rotation = 0.0;\\n if (u_rotate_symbol) {\\n // See comments in symbol_sdf.vertex\\n vec4 offsetProjectedPoint = u_matrix * vec4(a_pos + vec2(1, 0), 0, 1);\\n\\n vec2 a = projectedPoint.xy / projectedPoint.w;\\n vec2 b = offsetProjectedPoint.xy / offsetProjectedPoint.w;\\n\\n symbol_rotation = atan((b.y - a.y) / u_aspect_ratio, b.x - a.x);\\n }\\n\\n highp float angle_sin = sin(segment_angle + symbol_rotation);\\n highp float angle_cos = cos(segment_angle + symbol_rotation);\\n mat2 rotation_matrix = mat2(angle_cos, -1.0 * angle_sin, angle_sin, angle_cos);\\n\\n vec4 projected_pos = u_label_plane_matrix * vec4(a_projected_pos.xy, 0.0, 1.0);\\n gl_Position = u_gl_coord_matrix * vec4(projected_pos.xy / projected_pos.w + rotation_matrix * (a_offset / 64.0 * fontScale), 0.0, 1.0);\\n\\n v_tex = a_tex / u_texsize;\\n // See comments in symbol_sdf.vertex\\n highp float incidence_stretch = camera_to_anchor_distance / (u_camera_to_center_distance * cos(u_pitch));\\n highp float collision_adjustment = max(1.0, incidence_stretch / u_collision_y_stretch);\\n\\n highp float collision_perspective_ratio = 1.0 + 0.5*((camera_to_anchor_distance / u_camera_to_center_distance) - 1.0);\\n highp float perspective_zoom_adjust = floor(log2(collision_perspective_ratio * collision_adjustment) * 10.0);\\n v_fade_tex = vec2((a_labelminzoom + perspective_zoom_adjust) / 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 vec4 v_data0;\\nvarying vec2 v_data1;\\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 tex = v_data0.xy;\\n vec2 fade_tex = v_data0.zw;\\n float gamma_scale = v_data1.x;\\n float size = v_data1.y;\\n\\n float fontScale = u_is_text ? size / 24.0 : 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, tex).a;\\n lowp float fade_alpha = texture2D(u_fadetexture, fade_tex).a;\\n highp float gamma_scaled = gamma * 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;\\nattribute vec3 a_projected_pos;\\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) ]\\nuniform bool u_is_size_zoom_constant;\\nuniform bool u_is_size_feature_constant;\\nuniform highp float u_size_t; // used to interpolate between zoom stops when size is a composite function\\nuniform highp float u_size; // used when size is both zoom and 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\\nuniform mat4 u_matrix;\\nuniform mat4 u_label_plane_matrix;\\nuniform mat4 u_gl_coord_matrix;\\n\\nuniform bool u_is_text;\\nuniform bool u_pitch_with_map;\\nuniform highp float u_pitch;\\nuniform bool u_rotate_symbol;\\nuniform highp float u_aspect_ratio;\\nuniform highp float u_camera_to_center_distance;\\nuniform highp float u_collision_y_stretch;\\n\\nuniform vec2 u_texsize;\\n\\nvarying vec4 v_data0;\\nvarying vec2 v_data1;\\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 vec2 a_size = a_data.zw;\\n\\n highp vec2 angle_labelminzoom = unpack_float(a_projected_pos[2]);\\n highp float segment_angle = -angle_labelminzoom[0] / 255.0 * 2.0 * PI;\\n mediump float a_labelminzoom = angle_labelminzoom[1];\\n float size;\\n\\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 } else if (u_is_size_zoom_constant && !u_is_size_feature_constant) {\\n size = a_size[0] / 10.0;\\n } else if (!u_is_size_zoom_constant && u_is_size_feature_constant) {\\n size = u_size;\\n } else {\\n size = u_size;\\n }\\n\\n vec4 projectedPoint = u_matrix * vec4(a_pos, 0, 1);\\n highp float camera_to_anchor_distance = projectedPoint.w;\\n // If the label is pitched with the map, layout is done in pitched space,\\n // which makes labels in the distance smaller relative to viewport space.\\n // We counteract part of that effect by multiplying by the perspective ratio.\\n // If the label isn't pitched with the map, we do layout in viewport space,\\n // which makes labels in the distance larger relative to the features around\\n // them. We counteract part of that effect by dividing by the perspective ratio.\\n highp float distance_ratio = u_pitch_with_map ?\\n camera_to_anchor_distance / u_camera_to_center_distance :\\n u_camera_to_center_distance / camera_to_anchor_distance;\\n highp float perspective_ratio = 0.5 + 0.5 * distance_ratio;\\n\\n size *= perspective_ratio;\\n\\n float fontScale = u_is_text ? size / 24.0 : size;\\n\\n highp float symbol_rotation = 0.0;\\n if (u_rotate_symbol) {\\n // Point labels with 'rotation-alignment: map' are horizontal with respect to tile units\\n // To figure out that angle in projected space, we draw a short horizontal line in tile\\n // space, project it, and measure its angle in projected space.\\n vec4 offsetProjectedPoint = u_matrix * vec4(a_pos + vec2(1, 0), 0, 1);\\n\\n vec2 a = projectedPoint.xy / projectedPoint.w;\\n vec2 b = offsetProjectedPoint.xy / offsetProjectedPoint.w;\\n\\n symbol_rotation = atan((b.y - a.y) / u_aspect_ratio, b.x - a.x);\\n }\\n\\n highp float angle_sin = sin(segment_angle + symbol_rotation);\\n highp float angle_cos = cos(segment_angle + symbol_rotation);\\n mat2 rotation_matrix = mat2(angle_cos, -1.0 * angle_sin, angle_sin, angle_cos);\\n\\n vec4 projected_pos = u_label_plane_matrix * vec4(a_projected_pos.xy, 0.0, 1.0);\\n gl_Position = u_gl_coord_matrix * vec4(projected_pos.xy / projected_pos.w + rotation_matrix * (a_offset / 64.0 * fontScale), 0.0, 1.0);\\n float gamma_scale = gl_Position.w;\\n\\n vec2 tex = a_tex / u_texsize;\\n // incidence_stretch is the ratio of how much y space a label takes up on a tile while drawn perpendicular to the viewport vs\\n // how much space it would take up if it were drawn flat on the tile\\n // Using law of sines, camera_to_anchor/sin(ground_angle) = camera_to_center/sin(incidence_angle)\\n // sin(incidence_angle) = 1/incidence_stretch\\n // Incidence angle 90 -> head on, sin(incidence_angle) = 1, no incidence stretch\\n // Incidence angle 1 -> very oblique, sin(incidence_angle) =~ 0, lots of incidence stretch\\n // ground_angle = u_pitch + PI/2 -> sin(ground_angle) = cos(u_pitch)\\n // This 2D calculation is only exactly correct when gl_Position.x is in the center of the viewport,\\n // but it's a close enough approximation for our purposes\\n highp float incidence_stretch = camera_to_anchor_distance / (u_camera_to_center_distance * cos(u_pitch));\\n // incidence_stretch only applies to the y-axis, but without re-calculating the collision tile, we can't\\n // adjust the size of only one axis. So, we do a crude approximation at placement time to get the aspect ratio\\n // about right, and then do the rest of the adjustment here: there will be some extra padding on the x-axis,\\n // but hopefully not too much.\\n // Never make the adjustment less than 1.0: instead of allowing collisions on the x-axis, be conservative on\\n // the y-axis.\\n highp float collision_adjustment = max(1.0, incidence_stretch / u_collision_y_stretch);\\n\\n // Floor to 1/10th zoom to dodge precision issues that can cause partially hidden labels\\n highp float collision_perspective_ratio = 1.0 + 0.5*((camera_to_anchor_distance / u_camera_to_center_distance) - 1.0);\\n highp float perspective_zoom_adjust = floor(log2(collision_perspective_ratio * collision_adjustment) * 10.0);\\n vec2 fade_tex = vec2((a_labelminzoom + perspective_zoom_adjust) / 255.0, 0.0);\\n\\n v_data0 = vec4(tex.x, tex.y, fade_tex.x, fade_tex.y);\\n v_data1 = vec2(gamma_scale, size);\\n}\\n\"}},re=/#pragma mapbox: ([\\w]+) ([\\w]+) ([\\w]+) ([\\w]+)/g,loop=function(e){var n=shaders[e],a={};n.fragmentSource=n.fragmentSource.replace(re,function(e,n,o,t,i){return a[i]=!0,\"define\"===n?\"\\n#ifndef HAS_UNIFORM_u_\"+i+\"\\nvarying \"+o+\" \"+t+\" \"+i+\";\\n#else\\nuniform \"+o+\" \"+t+\" u_\"+i+\";\\n#endif\\n\":\"\\n#ifdef HAS_UNIFORM_u_\"+i+\"\\n \"+o+\" \"+t+\" \"+i+\" = u_\"+i+\";\\n#endif\\n\"}),n.vertexSource=n.vertexSource.replace(re,function(e,n,o,t,i){var r=\"float\"===t?\"vec2\":\"vec4\";return a[i]?\"define\"===n?\"\\n#ifndef HAS_UNIFORM_u_\"+i+\"\\nuniform lowp float a_\"+i+\"_t;\\nattribute \"+o+\" \"+r+\" a_\"+i+\";\\nvarying \"+o+\" \"+t+\" \"+i+\";\\n#else\\nuniform \"+o+\" \"+t+\" u_\"+i+\";\\n#endif\\n\":\"\\n#ifndef HAS_UNIFORM_u_\"+i+\"\\n \"+i+\" = unpack_mix_\"+r+\"(a_\"+i+\", a_\"+i+\"_t);\\n#else\\n \"+o+\" \"+t+\" \"+i+\" = u_\"+i+\";\\n#endif\\n\":\"define\"===n?\"\\n#ifndef HAS_UNIFORM_u_\"+i+\"\\nuniform lowp float a_\"+i+\"_t;\\nattribute \"+o+\" \"+r+\" a_\"+i+\";\\n#else\\nuniform \"+o+\" \"+t+\" u_\"+i+\";\\n#endif\\n\":\"\\n#ifndef HAS_UNIFORM_u_\"+i+\"\\n \"+o+\" \"+t+\" \"+i+\" = unpack_mix_\"+r+\"(a_\"+i+\", a_\"+i+\"_t);\\n#else\\n \"+o+\" \"+t+\" \"+i+\" = u_\"+i+\";\\n#endif\\n\"})};for(var programName in shaders)loop(programName);module.exports=shaders;\n},{}],87:[function(_dereq_,module,exports){\n\"use strict\";var ImageSource=_dereq_(\"./image_source\"),window=_dereq_(\"../util/window\"),CanvasSource=function(t){function i(i,a,e,s){t.call(this,i,a,e,s),this.options=a,this.animate=void 0===a.animate||a.animate}return t&&(i.__proto__=t),i.prototype=Object.create(t&&t.prototype),i.prototype.constructor=i,i.prototype.load=function(){this.canvas=this.canvas||window.document.getElementById(this.options.canvas);var t=this.canvas.getContext(this.options.contextType);if(!t)return this.fire(\"error\",new Error(\"Canvas context not found.\"));if(this.context=t,this.width=this.canvas.width,this.height=this.canvas.height,this._hasInvalidDimensions())return this.fire(\"error\",new Error(\"Canvas dimensions cannot be less than or equal to zero.\"));var i;this.play=function(){void 0===i&&(i=this.map.style.animationLoop.set(1/0),this.map._rerender())},this.pause=function(){void 0!==i&&(i=this.map.style.animationLoop.cancel(i))},this._finishLoading()},i.prototype.getCanvas=function(){return this.canvas},i.prototype.onAdd=function(t){this.map=t,this.load(),this.canvas&&this.animate&&this.play()},i.prototype.onRemove=function(){this.pause()},i.prototype.readCanvas=function(t){var i=this;if(this.context instanceof CanvasRenderingContext2D)this.canvasData=this.context.getImageData(0,0,this.width,this.height);else if(this.context instanceof WebGLRenderingContext){var a=this.context,e=new Uint8Array(this.width*this.height*4);a.readPixels(0,0,this.width,this.height,a.RGBA,a.UNSIGNED_BYTE,e),this.secondaryContext||(this.secondaryContext=window.document.createElement(\"canvas\").getContext(\"2d\")),this.canvasData&&!t||(this.canvasData=this.secondaryContext.createImageData(this.width,this.height));for(var s=this.height-1,n=0;s>=0;s--,n++)i.canvasData.data.set(e.subarray(s*i.width*4,(s+1)*i.width*4),n*i.width*4)}},i.prototype.prepare=function(){var t=!1;if(this.canvas.width!==this.width&&(this.width=this.canvas.width,t=!0),this.canvas.height!==this.height&&(this.height=this.canvas.height,t=!0),!this._hasInvalidDimensions()&&0!==Object.keys(this.tiles).length){if((this.animate||!this.canvasData||t)&&this.readCanvas(t),!this.canvasData)return void this.fire(\"error\",new Error(\"Could not read canvas data.\"));this._prepareImage(this.map.painter.gl,this.canvasData,t)}},i.prototype.serialize=function(){return{type:\"canvas\",canvas:this.canvas,coordinates:this.coordinates}},i.prototype._hasInvalidDimensions=function(){for(var t=this,i=0,a=[t.canvas.width,t.canvas.height];i<a.length;i+=1){var e=a[i];if(isNaN(e)||e<=0)return!0}return!1},i}(ImageSource);module.exports=CanvasSource;\n},{\"../util/window\":204,\"./image_source\":91}],88:[function(_dereq_,module,exports){\n\"use strict\";function resolveURL(t){var e=window.document.createElement(\"a\");return e.href=t,e.href}var Evented=_dereq_(\"../util/evented\"),util=_dereq_(\"../util/util\"),window=_dereq_(\"../util/window\"),EXTENT=_dereq_(\"../data/extent\"),ResourceType=_dereq_(\"../util/ajax\").ResourceType,browser=_dereq_(\"../util/browser\"),GeoJSONSource=function(t){function e(e,o,r,i){t.call(this),this.id=e,this.type=\"geojson\",this.minzoom=0,this.maxzoom=18,this.tileSize=512,this.isTileClipped=!0,this.reparseOverscaled=!0,this.dispatcher=r,this.setEventedParent(i),this._data=o.data,this._options=util.extend({},o),void 0!==o.maxzoom&&(this.maxzoom=o.maxzoom),o.type&&(this.type=o.type);var a=EXTENT/this.tileSize;this.workerOptions=util.extend({source:this.id,cluster:o.cluster||!1,geojsonVtOptions:{buffer:(void 0!==o.buffer?o.buffer:128)*a,tolerance:(void 0!==o.tolerance?o.tolerance:.375)*a,extent:EXTENT,maxZoom:this.maxzoom},superclusterOptions:{maxZoom:void 0!==o.clusterMaxZoom?Math.min(o.clusterMaxZoom,this.maxzoom-1):this.maxzoom-1,extent:EXTENT,radius:(o.clusterRadius||50)*a,log:!1}},o.workerOptions)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.load=function(){var t=this;this.fire(\"dataloading\",{dataType:\"source\"}),this._updateWorkerData(function(e){if(e)return void t.fire(\"error\",{error:e});t.fire(\"data\",{dataType:\"source\",sourceDataType:\"metadata\"})})},e.prototype.onAdd=function(t){this.map=t,this.load()},e.prototype.setData=function(t){var e=this;return this._data=t,this.fire(\"dataloading\",{dataType:\"source\"}),this._updateWorkerData(function(t){if(t)return e.fire(\"error\",{error:t});e.fire(\"data\",{dataType:\"source\",sourceDataType:\"content\"})}),this},e.prototype._updateWorkerData=function(t){var e=this,o=util.extend({},this.workerOptions),r=this._data;\"string\"==typeof r?o.request=this.map._transformRequest(resolveURL(r),ResourceType.Source):o.data=JSON.stringify(r),this.workerID=this.dispatcher.send(this.type+\".loadData\",o,function(o){e._loaded=!0,t(o)},this.workerID)},e.prototype.loadTile=function(t,e){var o=this,r=t.workerID&&\"expired\"!==t.state?\"reloadTile\":\"loadTile\",i={type:this.type,uid:t.uid,coord:t.coord,zoom:t.coord.z,maxZoom:this.maxzoom,tileSize:this.tileSize,source:this.id,pixelRatio:browser.devicePixelRatio,overscaling:t.coord.z>this.maxzoom?Math.pow(2,t.coord.z-this.maxzoom):1,angle:this.map.transform.angle,pitch:this.map.transform.pitch,cameraToCenterDistance:this.map.transform.cameraToCenterDistance,cameraToTileDistance:this.map.transform.cameraToTileDistance(t),showCollisionBoxes:this.map.showCollisionBoxes};t.workerID=this.dispatcher.send(r,i,function(r,i){if(t.unloadVectorData(),!t.aborted)return r?e(r):(t.loadVectorData(i,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 util.extend({},this._options,{type:this.type,data:this._data})},e}(Evented);module.exports=GeoJSONSource;\n},{\"../data/extent\":48,\"../util/ajax\":201,\"../util/browser\":202,\"../util/evented\":210,\"../util/util\":223,\"../util/window\":204}],89:[function(_dereq_,module,exports){\n\"use strict\";function loadGeoJSONTile(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),i=vtpbf(u);0===i.byteOffset&&i.byteLength===i.buffer.byteLength||(i=new Uint8Array(i)),r(null,{vectorTile:u,rawData:i.buffer})}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,loadGeoJSONTile),o&&(this.loadGeoJSON=o),this._geoJSONIndexes={}}return e&&(r.__proto__=e),r.prototype=Object.create(e&&e.prototype),r.prototype.constructor=r,r.prototype.loadData=function(e,r){var t=this;this.loadGeoJSON(e,function(o,n){if(o||!n)return r(o);if(\"object\"!=typeof n)return r(new Error(\"Input data is not a valid GeoJSON object.\"));rewind(n,!0);try{t._geoJSONIndexes[e.source]=e.cluster?supercluster(e.superclusterOptions).load(n.features):geojsonvt(n,e.geojsonVtOptions)}catch(o){return r(o)}t.loaded[e.source]={},r(null)})},r.prototype.reloadTile=function(r,t){var o=this.loaded[r.source],n=r.uid;return o&&o[n]?e.prototype.reloadTile.call(this,r,t):this.loadTile(r,t)},r.prototype.loadGeoJSON=function(e,r){if(e.request)ajax.getJSON(e.request,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}(VectorTileWorkerSource);module.exports=GeoJSONWorkerSource;\n},{\"../util/ajax\":201,\"./geojson_wrapper\":90,\"./vector_tile_worker_source\":103,\"geojson-rewind\":13,\"geojson-vt\":17,\"supercluster\":32,\"vt-pbf\":37}],90:[function(_dereq_,module,exports){\n\"use strict\";var Point=_dereq_(\"@mapbox/point-geometry\"),toGeoJSON=_dereq_(\"@mapbox/vector-tile\").VectorTileFeature.prototype.toGeoJSON,EXTENT=_dereq_(\"../data/extent\"),FeatureWrapper=function(e){this._feature=e,this.extent=EXTENT,this.type=e.type,this.properties=e.tags,\"id\"in e&&!isNaN(e.id)&&(this.id=parseInt(e.id,10))};FeatureWrapper.prototype.loadGeometry=function(){var e=this;if(1===this._feature.type){for(var t=[],r=0,o=e._feature.geometry;r<o.length;r+=1){var a=o[r];t.push([new Point(a[0],a[1])])}return t}for(var i=[],p=0,n=e._feature.geometry;p<n.length;p+=1){for(var s=n[p],u=[],h=0,f=s;h<f.length;h+=1){var l=f[h];u.push(new Point(l[0],l[1]))}i.push(u)}return i},FeatureWrapper.prototype.toGeoJSON=function(e,t,r){return toGeoJSON.call(this,e,t,r)};var GeoJSONWrapper=function(e){this.layers={_geojsonTileLayer:this},this.name=\"_geojsonTileLayer\",this.extent=EXTENT,this.length=e.length,this._features=e};GeoJSONWrapper.prototype.feature=function(e){return new FeatureWrapper(this._features[e])},module.exports=GeoJSONWrapper;\n},{\"../data/extent\":48,\"@mapbox/point-geometry\":2,\"@mapbox/vector-tile\":6}],91:[function(_dereq_,module,exports){\n\"use strict\";var util=_dereq_(\"../util/util\"),window=_dereq_(\"../util/window\"),TileCoord=_dereq_(\"./tile_coord\"),LngLat=_dereq_(\"../geo/lng_lat\"),Point=_dereq_(\"@mapbox/point-geometry\"),Evented=_dereq_(\"../util/evented\"),ajax=_dereq_(\"../util/ajax\"),browser=_dereq_(\"../util/browser\"),EXTENT=_dereq_(\"../data/extent\"),RasterBoundsArray=_dereq_(\"../data/raster_bounds_array\"),VertexBuffer=_dereq_(\"../gl/vertex_buffer\"),VertexArrayObject=_dereq_(\"../render/vertex_array_object\"),ImageSource=function(e){function t(t,r,o,i){e.call(this),this.id=t,this.dispatcher=o,this.coordinates=r.coordinates,this.type=\"image\",this.minzoom=0,this.maxzoom=22,this.tileSize=512,this.tiles={},this.setEventedParent(i),this.options=r,this.textureLoaded=!1}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.load=function(){var e=this;this.fire(\"dataloading\",{dataType:\"source\"}),this.url=this.options.url,ajax.getImage(this.map._transformRequest(this.url,ajax.ResourceType.Image),function(t,r){t?e.fire(\"error\",{error:t}):r&&(e.image=browser.getImageData(r),e._finishLoading())})},t.prototype._finishLoading=function(){this.map&&(this.setCoordinates(this.coordinates),this.fire(\"data\",{dataType:\"source\",sourceDataType:\"metadata\"}))},t.prototype.onAdd=function(e){this.map=e,this.load()},t.prototype.setCoordinates=function(e){this.coordinates=e;var t=this.map,r=e.map(function(e){return t.transform.locationCoordinate(LngLat.convert(e)).zoomTo(0)}),o=this.centerCoord=util.getCoordinatesCenter(r);o.column=Math.floor(o.column),o.row=Math.floor(o.row),this.coord=new TileCoord(o.zoom,o.column,o.row),this.minzoom=this.maxzoom=o.zoom;var i=r.map(function(e){var t=e.zoomTo(o.zoom);return new Point(Math.round((t.column-o.column)*EXTENT),Math.round((t.row-o.row)*EXTENT))});return this._boundsArray=new RasterBoundsArray,this._boundsArray.emplaceBack(i[0].x,i[0].y,0,0),this._boundsArray.emplaceBack(i[1].x,i[1].y,EXTENT,0),this._boundsArray.emplaceBack(i[3].x,i[3].y,0,EXTENT),this._boundsArray.emplaceBack(i[2].x,i[2].y,EXTENT,EXTENT),this.boundsBuffer&&(this.boundsBuffer.destroy(),delete this.boundsBuffer),this.fire(\"data\",{dataType:\"source\",sourceDataType:\"content\"}),this},t.prototype.prepare=function(){0!==Object.keys(this.tiles).length&&this.image&&this._prepareImage(this.map.painter.gl,this.image)},t.prototype._prepareImage=function(e,t,r){var o=this;this.boundsBuffer||(this.boundsBuffer=new VertexBuffer(e,this._boundsArray)),this.boundsVAO||(this.boundsVAO=new VertexArrayObject),this.textureLoaded?r?e.texImage2D(e.TEXTURE_2D,0,e.RGBA,e.RGBA,e.UNSIGNED_BYTE,t):(t instanceof window.HTMLVideoElement||t instanceof window.ImageData)&&(e.bindTexture(e.TEXTURE_2D,this.texture),e.texSubImage2D(e.TEXTURE_2D,0,0,0,e.RGBA,e.UNSIGNED_BYTE,t)):(this.textureLoaded=!0,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.LINEAR),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MAG_FILTER,e.LINEAR),e.texImage2D(e.TEXTURE_2D,0,e.RGBA,e.RGBA,e.UNSIGNED_BYTE,t));for(var i in o.tiles){var a=o.tiles[i];\"loaded\"!==a.state&&(a.state=\"loaded\",a.texture=o.texture)}},t.prototype.loadTile=function(e,t){this.coord&&this.coord.toString()===e.coord.toString()?(this.tiles[String(e.coord.w)]=e,e.buckets={},t(null)):(e.state=\"errored\",t(null))},t.prototype.serialize=function(){return{type:\"image\",url:this.options.url,coordinates:this.coordinates}},t}(Evented);module.exports=ImageSource;\n},{\"../data/extent\":48,\"../data/raster_bounds_array\":54,\"../geo/lng_lat\":58,\"../gl/vertex_buffer\":62,\"../render/vertex_array_object\":84,\"../util/ajax\":201,\"../util/browser\":202,\"../util/evented\":210,\"../util/util\":223,\"../util/window\":204,\"./tile_coord\":101,\"@mapbox/point-geometry\":2}],92:[function(_dereq_,module,exports){\n\"use strict\";var util=_dereq_(\"../util/util\"),ajax=_dereq_(\"../util/ajax\"),browser=_dereq_(\"../util/browser\"),normalizeURL=_dereq_(\"../util/mapbox\").normalizeSourceURL;module.exports=function(r,e,o){var u=function(r,e){if(r)return o(r);if(e){var u=util.pick(e,[\"tiles\",\"minzoom\",\"maxzoom\",\"attribution\",\"mapbox_logo\",\"bounds\"]);e.vector_layers&&(u.vectorLayers=e.vector_layers,u.vectorLayerIds=u.vectorLayers.map(function(r){return r.id})),o(null,u)}};r.url?ajax.getJSON(e(normalizeURL(r.url),ajax.ResourceType.Source),u):browser.frame(function(){return u(null,r)})};\n},{\"../util/ajax\":201,\"../util/browser\":202,\"../util/mapbox\":217,\"../util/util\":223}],93:[function(_dereq_,module,exports){\n\"use strict\";var EXTENT=_dereq_(\"../data/extent\");module.exports=function(e,t,r){return t*(EXTENT/(e.tileSize*Math.pow(2,r-e.coord.z)))};\n},{\"../data/extent\":48}],94:[function(_dereq_,module,exports){\n\"use strict\";function sortTilesIn(e,r){var o=e.coord,t=r.coord;return o.z-t.z||o.y-t.y||o.w-t.w||o.x-t.x}function mergeRenderedFeatureLayers(e){for(var r={},o={},t=0,n=e;t<n.length;t+=1){var u=n[t],a=u.queryResults,d=u.wrappedTileID,s=o[d]=o[d]||{};for(var i in a)for(var l=a[i],c=s[i]=s[i]||{},f=r[i]=r[i]||[],v=0,y=l;v<y.length;v+=1){var p=y[v];c[p.featureIndex]||(c[p.featureIndex]=!0,f.push(p.feature))}}return r}var TileCoord=_dereq_(\"./tile_coord\");exports.rendered=function(e,r,o,t,n,u){var a=e.tilesIn(o);a.sort(sortTilesIn);for(var d=[],s=0,i=a;s<i.length;s+=1){var l=i[s];d.push({wrappedTileID:l.coord.wrapped().id,queryResults:l.tile.queryRenderedFeatures(r,l.queryGeometry,l.scale,t,u)})}return mergeRenderedFeatureLayers(d)},exports.source=function(e,r){for(var o=e.getRenderableIds().map(function(r){return e.getTileByID(r)}),t=[],n={},u=0;u<o.length;u++){var a=o[u],d=new TileCoord(Math.min(a.sourceMaxZoom,a.coord.z),a.coord.x,a.coord.y,0).id;n[d]||(n[d]=!0,a.querySourceFeatures(t,r))}return t};\n},{\"./tile_coord\":101}],95:[function(_dereq_,module,exports){\n\"use strict\";var util=_dereq_(\"../util/util\"),ajax=_dereq_(\"../util/ajax\"),Evented=_dereq_(\"../util/evented\"),loadTileJSON=_dereq_(\"./load_tilejson\"),normalizeURL=_dereq_(\"../util/mapbox\").normalizeTileURL,TileBounds=_dereq_(\"./tile_bounds\"),RasterTileSource=function(e){function t(t,i,r,o){e.call(this),this.id=t,this.dispatcher=r,this.setEventedParent(o),this.type=\"raster\",this.minzoom=0,this.maxzoom=22,this.roundZoom=!0,this.scheme=\"xyz\",this.tileSize=512,this._loaded=!1,this._options=util.extend({},i),util.extend(this,util.pick(i,[\"url\",\"scheme\",\"tileSize\"]))}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.load=function(){var e=this;this.fire(\"dataloading\",{dataType:\"source\"}),loadTileJSON(this._options,this.map._transformRequest,function(t,i){t?e.fire(\"error\",t):i&&(util.extend(e,i),i.bounds&&(e.tileBounds=new TileBounds(i.bounds,e.minzoom,e.maxzoom)),e.fire(\"data\",{dataType:\"source\",sourceDataType:\"metadata\"}),e.fire(\"data\",{dataType:\"source\",sourceDataType:\"content\"}))})},t.prototype.onAdd=function(e){this.map=e,this.load()},t.prototype.serialize=function(){return util.extend({},this._options)},t.prototype.hasTile=function(e){return!this.tileBounds||this.tileBounds.contains(e,this.maxzoom)},t.prototype.loadTile=function(e,t){var i=this,r=normalizeURL(e.coord.url(this.tiles,null,this.scheme),this.url,this.tileSize);e.request=ajax.getImage(this.map._transformRequest(r,ajax.ResourceType.Tile),function(r,o){if(delete e.request,e.aborted)i.state=\"unloaded\",t(null);else if(r)i.state=\"errored\",t(r);else if(o){i.map._refreshExpiredTiles&&e.setExpiryData(o),delete o.cacheControl,delete o.expires;var a=i.map.painter.gl;e.texture=i.map.painter.getTileTexture(o.width),e.texture?(a.bindTexture(a.TEXTURE_2D,e.texture),a.texSubImage2D(a.TEXTURE_2D,0,0,0,a.RGBA,a.UNSIGNED_BYTE,o)):(e.texture=a.createTexture(),a.bindTexture(a.TEXTURE_2D,e.texture),a.texParameteri(a.TEXTURE_2D,a.TEXTURE_MIN_FILTER,a.LINEAR_MIPMAP_NEAREST),a.texParameteri(a.TEXTURE_2D,a.TEXTURE_MAG_FILTER,a.LINEAR),a.texParameteri(a.TEXTURE_2D,a.TEXTURE_WRAP_S,a.CLAMP_TO_EDGE),a.texParameteri(a.TEXTURE_2D,a.TEXTURE_WRAP_T,a.CLAMP_TO_EDGE),a.pixelStorei(a.UNPACK_PREMULTIPLY_ALPHA_WEBGL,!0),i.map.painter.extTextureFilterAnisotropic&&a.texParameterf(a.TEXTURE_2D,i.map.painter.extTextureFilterAnisotropic.TEXTURE_MAX_ANISOTROPY_EXT,i.map.painter.extTextureFilterAnisotropicMax),a.texImage2D(a.TEXTURE_2D,0,a.RGBA,a.RGBA,a.UNSIGNED_BYTE,o),e.texture.size=o.width),a.generateMipmap(a.TEXTURE_2D),e.state=\"loaded\",t(null)}})},t.prototype.abortTile=function(e){e.request&&(e.request.abort(),delete e.request)},t.prototype.unloadTile=function(e){e.texture&&this.map.painter.saveTileTexture(e.texture)},t}(Evented);module.exports=RasterTileSource;\n},{\"../util/ajax\":201,\"../util/evented\":210,\"../util/mapbox\":217,\"../util/util\":223,\"./load_tilejson\":92,\"./tile_bounds\":100}],96:[function(_dereq_,module,exports){\n\"use strict\";var ajax=_dereq_(\"../util/ajax\"),Evented=_dereq_(\"../util/evented\"),window=_dereq_(\"../util/window\"),pluginRequested=!1,pluginBlobURL=null;module.exports.evented=new Evented,module.exports.registerForPluginAvailability=function(e){return pluginBlobURL?e({pluginBlobURL:pluginBlobURL,errorCallback:module.exports.errorCallback}):module.exports.evented.once(\"pluginAvailable\",e),e},module.exports.createBlobURL=function(e){return window.URL.createObjectURL(new window.Blob([e.data],{type:\"text/javascript\"}))},module.exports.clearRTLTextPlugin=function(){pluginRequested=!1,pluginBlobURL=null},module.exports.setRTLTextPlugin=function(e,l){if(pluginRequested)throw new Error(\"setRTLTextPlugin cannot be called multiple times.\");pluginRequested=!0,module.exports.errorCallback=l,ajax.getArrayBuffer({url:e},function(e,t){e?l(e):t&&(pluginBlobURL=module.exports.createBlobURL(t),module.exports.evented.fire(\"pluginAvailable\",{pluginBlobURL:pluginBlobURL,errorCallback:l}))})},module.exports.applyArabicShaping=null,module.exports.processBidirectionalText=null;\n},{\"../util/ajax\":201,\"../util/evented\":210,\"../util/window\":204}],97:[function(_dereq_,module,exports){\n\"use strict\";var util=_dereq_(\"../util/util\"),sourceTypes={vector:_dereq_(\"../source/vector_tile_source\"),raster:_dereq_(\"../source/raster_tile_source\"),geojson:_dereq_(\"../source/geojson_source\"),video:_dereq_(\"../source/video_source\"),image:_dereq_(\"../source/image_source\"),canvas:_dereq_(\"../source/canvas_source\")};exports.create=function(e,r,o,u){var s=new sourceTypes[r.type](e,r,o,u);if(s.id!==e)throw new Error(\"Expected Source id to be \"+e+\" instead of \"+s.id);return util.bindAll([\"load\",\"abort\",\"unload\",\"serialize\",\"prepare\"],s),s},exports.getType=function(e){return sourceTypes[e]},exports.setType=function(e,r){sourceTypes[e]=r};\n},{\"../source/canvas_source\":87,\"../source/geojson_source\":88,\"../source/image_source\":91,\"../source/raster_tile_source\":95,\"../source/vector_tile_source\":102,\"../source/video_source\":104,\"../util/util\":223}],98:[function(_dereq_,module,exports){\n\"use strict\";function coordinateToTilePoint(e,t,o){var i=o.zoomTo(Math.min(e.z,t));return new Point((i.column-(e.x+e.w*Math.pow(2,e.z)))*EXTENT,(i.row-e.y)*EXTENT)}function compareKeyZoom(e,t){return e%32-t%32}function isRasterType(e){return\"raster\"===e||\"image\"===e||\"video\"===e}var createSource=_dereq_(\"./source\").create,Tile=_dereq_(\"./tile\"),Evented=_dereq_(\"../util/evented\"),TileCoord=_dereq_(\"./tile_coord\"),Cache=_dereq_(\"../util/lru_cache\"),Coordinate=_dereq_(\"../geo/coordinate\"),util=_dereq_(\"../util/util\"),EXTENT=_dereq_(\"../data/extent\"),Point=_dereq_(\"@mapbox/point-geometry\"),SourceCache=function(e){function t(t,o,i){var r=this;e.call(this),this.id=t,this.dispatcher=i,this.on(\"data\",function(e){\"source\"===e.dataType&&\"metadata\"===e.sourceDataType&&(r._sourceLoaded=!0),r._sourceLoaded&&!r._paused&&\"source\"===e.dataType&&\"content\"===e.sourceDataType&&(r.reload(),r.transform&&r.update(r.transform))}),this.on(\"error\",function(){r._sourceErrored=!0}),this._source=createSource(t,o,i,this),this._tiles={},this._cache=new Cache(0,this._unloadTile.bind(this)),this._timers={},this._cacheTimers={},this._maxTileCacheSize=null,this._isIdRenderable=this._isIdRenderable.bind(this)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.onAdd=function(e){this.map=e,this._maxTileCacheSize=e?e._maxTileCacheSize:null,this._source&&this._source.onAdd&&this._source.onAdd(e)},t.prototype.onRemove=function(e){this._source&&this._source.onRemove&&this._source.onRemove(e)},t.prototype.loaded=function(){var e=this;if(this._sourceErrored)return!0;if(!this._sourceLoaded)return!1;for(var t in e._tiles){var o=e._tiles[t];if(\"loaded\"!==o.state&&\"errored\"!==o.state)return!1}return!0},t.prototype.getSource=function(){return this._source},t.prototype.pause=function(){this._paused=!0},t.prototype.resume=function(){if(this._paused){var e=this._shouldReloadOnResume;this._paused=!1,this._shouldReloadOnResume=!1,e&&this.reload(),this.transform&&this.update(this.transform)}},t.prototype._loadTile=function(e,t){return this._source.loadTile(e,t)},t.prototype._unloadTile=function(e){if(this._source.unloadTile)return this._source.unloadTile(e)},t.prototype._abortTile=function(e){if(this._source.abortTile)return this._source.abortTile(e)},t.prototype.serialize=function(){return this._source.serialize()},t.prototype.prepare=function(e){var t=this;this._source.prepare&&this._source.prepare();for(var o in t._tiles)t._tiles[o].upload(e)},t.prototype.getIds=function(){return Object.keys(this._tiles).map(Number).sort(compareKeyZoom)},t.prototype.getRenderableIds=function(){return this.getIds().filter(this._isIdRenderable)},t.prototype._isIdRenderable=function(e){return this._tiles[e].hasData()&&!this._coveredTiles[e]},t.prototype.reload=function(){var e=this;if(this._paused)return void(this._shouldReloadOnResume=!0);this._cache.reset();for(var t in e._tiles)e._reloadTile(t,\"reloading\")},t.prototype._reloadTile=function(e,t){var o=this._tiles[e];o&&(\"loading\"!==o.state&&(o.state=t),this._loadTile(o,this._tileLoaded.bind(this,o,e,t)))},t.prototype._tileLoaded=function(e,t,o,i){if(i)return e.state=\"errored\",void(404!==i.status?this._source.fire(\"error\",{tile:e,error:i}):this.update(this.transform));e.timeAdded=(new Date).getTime(),\"expired\"===o&&(e.refreshedUponExpiration=!0),this._setTileReloadTimer(t,e),this._source.fire(\"data\",{dataType:\"source\",tile:e,coord:e.coord}),this.map&&(this.map.painter.tileExtentVAO.vao=null)},t.prototype.getTile=function(e){return this.getTileByID(e.id)},t.prototype.getTileByID=function(e){return this._tiles[e]},t.prototype.getZoom=function(e){return e.zoom+e.scaleZoom(e.tileSize/this._source.tileSize)},t.prototype._findLoadedChildren=function(e,t,o){var i=this,r=!1;for(var s in i._tiles){var a=i._tiles[s];if(!(o[s]||!a.hasData()||a.coord.z<=e.z||a.coord.z>t)){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);if(!d)break;a=i._tiles[d.id],a&&a.hasData()&&(delete o[s],o[d.id]=!0)}}}return r},t.prototype.findLoadedParent=function(e,t,o){for(var i=this,r=e.z-1;r>=t;r--){var s=e.parent(i._source.maxzoom);if(!s)return;e=s;var a=String(e.id),n=i._tiles[a];if(n&&n.hasData())return o[a]=!0,n;if(i._cache.has(a))return o[a]=!0,i._cache.getWithoutRemoving(a)}},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=Math.floor(5*i),s=\"number\"==typeof this._maxTileCacheSize?Math.min(this._maxTileCacheSize,r):r;this._cache.setMaxSize(s)},t.prototype.update=function(e){var o=this;if(this.transform=e,this._sourceLoaded&&!this._paused){this.updateCacheSize(e),this._coveredTiles={};var i;this.used?this._source.coord?i=e.getVisibleWrappedCoordinates(this._source.coord):(i=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&&(i=i.filter(function(e){return o._source.hasTile(e)}))):i=[];var r=(this._source.roundZoom?Math.round:Math.floor)(this.getZoom(e)),s=Math.max(r-t.maxOverzooming,this._source.minzoom),a=Math.max(r+t.maxUnderzooming,this._source.minzoom),n=this._updateRetainedTiles(i,r),d={};if(isRasterType(this._source.type))for(var h=Object.keys(n),u=0;u<h.length;u++){var c=h[u],l=TileCoord.fromID(+c),_=o._tiles[c];if(_&&(void 0===_.fadeEndTime||_.fadeEndTime>=Date.now())){o._findLoadedChildren(l,a,n)&&(n[c]=!0);var m=o.findLoadedParent(l,s,d);m&&o._addTile(m.coord)}}var p;for(p in d)n[p]||(o._coveredTiles[p]=!0);for(p in d)n[p]=!0;for(var f=util.keysDifference(this._tiles,n),T=0;T<f.length;T++)o._removeTile(f[T])}},t.prototype._updateRetainedTiles=function(e,o){var i,r,s,a,n=this,d={},h={},u=Math.max(o-t.maxOverzooming,this._source.minzoom);for(i=0;i<e.length;i++){r=e[i],s=n._addTile(r);var c=!1;if(s.hasData())d[r.id]=!0;else{c=s.wasRequested(),d[r.id]=!0,a=!0;if(o+1>n._source.maxzoom){var l=r.children(n._source.maxzoom)[0],_=n.getTile(l);_&&_.hasData()?d[l.id]=!0:a=!1}else for(var m=r.children(n._source.maxzoom),p=0;p<m.length;p++){var f=m[p],T=f?n.getTile(f):null;T&&T.hasData()?d[f.id]=!0:a=!1}if(!a)for(var v=o-1;v>=u;--v){var y=r.scaledTo(v,n._source.maxzoom);if(h[y.id])break;if(h[y.id]=!0,s=n.getTile(y),!s&&c&&(s=n._addTile(y)),s&&(d[y.id]=!0,c=s.wasRequested(),s.hasData()))break}}}return d},t.prototype._addTile=function(e){var t=this._tiles[e.id];if(t)return t;(t=this._cache.get(e.id))&&(t.redoPlacement(this._source),this._cacheTimers[e.id]&&(clearTimeout(this._cacheTimers[e.id]),delete this._cacheTimers[e.id],this._setTileReloadTimer(e.id,t)));var o=Boolean(t);if(!o){var i=e.z,r=i>this._source.maxzoom?Math.pow(2,i-this._source.maxzoom):1;t=new Tile(e,this._source.tileSize*r,this._source.maxzoom),this._loadTile(t,this._tileLoaded.bind(this,t,e.id,t.state))}return t?(t.uses++,this._tiles[e.id]=t,o||this._source.fire(\"dataloading\",{tile:t,coord:t.coord,dataType:\"source\"}),t):null},t.prototype._setTileReloadTimer=function(e,t){var o=this,i=t.getExpiryTimeout();i&&(this._timers[e]=setTimeout(function(){o._reloadTile(e,\"expired\"),delete o._timers[e]},i))},t.prototype._setCacheInvalidationTimer=function(e,t){var o=this,i=t.getExpiryTimeout();i&&(this._cacheTimers[e]=setTimeout(function(){o._cache.remove(e),delete o._cacheTimers[e]},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]),delete this._timers[e]),!(t.uses>0)))if(t.stopPlacementThrottler(),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;this._shouldReloadOnResume=!1,this._paused=!1;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,h=0;h<e.length;h++){var u=e[h];r=Math.min(r,u.column),s=Math.min(s,u.row),a=Math.max(a,u.column),n=Math.max(n,u.row)}for(var c=0;c<i.length;c++){var l=t._tiles[i[c]],_=TileCoord.fromID(i[c]),m=[coordinateToTilePoint(_,l.sourceMaxZoom,new Coordinate(r,s,d)),coordinateToTilePoint(_,l.sourceMaxZoom,new Coordinate(a,n,d))];if(m[0].x<EXTENT&&m[0].y<EXTENT&&m[1].x>=0&&m[1].y>=0){for(var p=[],f=0;f<e.length;f++)p.push(coordinateToTilePoint(_,l.sourceMaxZoom,e[f]));o.push({tile:l,coord:_,queryGeometry:[p],scale:Math.pow(2,t.transform.zoom-l.coord.z)})}}return o},t.prototype.redoPlacement=function(){for(var e=this,t=this.getIds(),o=0;o<t.length;o++){e.getTileByID(t[o]).redoPlacement(e._source)}},t.prototype.getVisibleCoordinates=function(){for(var e=this,t=this.getRenderableIds().map(TileCoord.fromID),o=0,i=t;o<i.length;o+=1){var r=i[o];r.posMatrix=e.transform.calculatePosMatrix(r,e._source.maxzoom)}return t},t}(Evented);SourceCache.maxOverzooming=10,SourceCache.maxUnderzooming=3,module.exports=SourceCache;\n},{\"../data/extent\":48,\"../geo/coordinate\":57,\"../util/evented\":210,\"../util/lru_cache\":216,\"../util/util\":223,\"./source\":97,\"./tile\":99,\"./tile_coord\":101,\"@mapbox/point-geometry\":2}],99:[function(_dereq_,module,exports){\n\"use strict\";var util=_dereq_(\"../util/util\"),deserializeBucket=_dereq_(\"../data/bucket\").deserialize,SymbolBucket=_dereq_(\"../data/bucket/symbol_bucket\"),FeatureIndex=_dereq_(\"../data/feature_index\"),vt=_dereq_(\"@mapbox/vector-tile\"),Protobuf=_dereq_(\"pbf\"),GeoJSONFeature=_dereq_(\"../util/vectortile_to_geojson\"),featureFilter=_dereq_(\"../style-spec/feature_filter\"),CollisionTile=_dereq_(\"../symbol/collision_tile\"),CollisionBoxArray=_dereq_(\"../symbol/collision_box\"),Throttler=_dereq_(\"../util/throttler\"),Texture=_dereq_(\"../render/texture\"),CLOCK_SKEW_RETRY_TIMEOUT=3e4,Tile=function(e,t,i){this.coord=e,this.uid=util.uniqueId(),this.uses=0,this.tileSize=t,this.sourceMaxZoom=i,this.buckets={},this.expirationTime=null,this.expiredRequestCount=0,this.state=\"loading\",this.placementThrottler=new Throttler(300,this._immediateRedoPlacement.bind(this))};Tile.prototype.registerFadeDuration=function(e,t){var i=t+this.timeAdded;i<Date.now()||this.fadeEndTime&&i<this.fadeEndTime||(this.fadeEndTime=i,e.set(this.fadeEndTime-Date.now()))},Tile.prototype.wasRequested=function(){return\"errored\"===this.state||\"loaded\"===this.state||\"reloading\"===this.state},Tile.prototype.loadVectorData=function(e,t){this.hasData()&&this.unloadVectorData(),this.state=\"loaded\",e&&(e.rawTileData&&(this.rawTileData=e.rawTileData),this.collisionBoxArray=new CollisionBoxArray(e.collisionBoxArray),this.collisionTile=CollisionTile.deserialize(e.collisionTile,this.collisionBoxArray),this.featureIndex=FeatureIndex.deserialize(e.featureIndex,this.rawTileData,this.collisionTile),this.buckets=deserializeBucket(e.buckets,t.style),e.iconAtlasImage&&(this.iconAtlasImage=e.iconAtlasImage),e.glyphAtlasImage&&(this.glyphAtlasImage=e.glyphAtlasImage))},Tile.prototype.reloadSymbolData=function(e,t){var i=this;if(\"unloaded\"!==this.state){this.collisionTile=CollisionTile.deserialize(e.collisionTile,this.collisionBoxArray),this.featureIndex&&this.featureIndex.setCollisionTile(this.collisionTile);for(var a in i.buckets){var s=i.buckets[a];s instanceof SymbolBucket&&(s.destroy(),delete i.buckets[a])}util.extend(this.buckets,deserializeBucket(e.buckets,t)),e.iconAtlasImage&&(this.iconAtlasImage=e.iconAtlasImage),e.glyphAtlasImage&&(this.glyphAtlasImage=e.glyphAtlasImage)}},Tile.prototype.unloadVectorData=function(){var e=this;for(var t in e.buckets)e.buckets[t].destroy();this.buckets={},this.iconAtlasTexture&&this.iconAtlasTexture.destroy(),this.glyphAtlasTexture&&this.glyphAtlasTexture.destroy(),this.collisionBoxArray=null,this.collisionTile=null,this.featureIndex=null,this.state=\"unloaded\"},Tile.prototype.redoPlacement=function(e){if(\"vector\"===e.type||\"geojson\"===e.type){if(\"loaded\"!==this.state)return void(this.redoWhenDone=!0);if(this.collisionTile){var t=e.map.transform.cameraToTileDistance(this);if(this.angle===e.map.transform.angle&&this.pitch===e.map.transform.pitch&&this.showCollisionBoxes===e.map.showCollisionBoxes){if(this.cameraToTileDistance===t&&this.cameraToCenterDistance===e.map.transform.cameraToCenterDistance)return;if(this.pitch<25)return this.cameraToTileDistance=t,void(this.cameraToCenterDistance=e.map.transform.cameraToCenterDistance)}this.angle=e.map.transform.angle,this.pitch=e.map.transform.pitch,this.cameraToCenterDistance=e.map.transform.cameraToCenterDistance,this.cameraToTileDistance=t,this.showCollisionBoxes=e.map.showCollisionBoxes,this.placementSource=e,this.state=\"reloading\",this.placementThrottler.invoke()}}},Tile.prototype._immediateRedoPlacement=function(){var e=this;this.placementSource.dispatcher.send(\"redoPlacement\",{type:this.placementSource.type,uid:this.uid,source:this.placementSource.id,angle:this.angle,pitch:this.pitch,cameraToCenterDistance:this.cameraToCenterDistance,cameraToTileDistance:this.cameraToTileDistance,showCollisionBoxes:this.showCollisionBoxes},function(t,i){\"reloading\"===e.state&&(e.state=\"loaded\",e.reloadSymbolData(i,e.placementSource.map.style),e.placementSource.fire(\"data\",{tile:e,coord:e.coord,dataType:\"source\"}),e.placementSource.map&&(e.placementSource.map.painter.tileExtentVAO.vao=null),e.redoWhenDone&&(e.state=\"reloading\",e.redoWhenDone=!1,e._immediateRedoPlacement()))},this.workerID)},Tile.prototype.getBucket=function(e){return this.buckets[e.id]},Tile.prototype.upload=function(e){var t=this;for(var i in t.buckets){var a=t.buckets[i];a.uploaded||(a.upload(e),a.uploaded=!0)}this.iconAtlasImage&&(this.iconAtlasTexture=new Texture(e,this.iconAtlasImage,e.RGBA),this.iconAtlasImage=null),this.glyphAtlasImage&&(this.glyphAtlasTexture=new Texture(e,this.glyphAtlasImage,e.ALPHA),this.glyphAtlasImage=null)},Tile.prototype.queryRenderedFeatures=function(e,t,i,a,s){var o=this;if(!this.featureIndex)return{};var r=0;for(var l in e){var n=o.getBucket(e[l]);n&&(r=Math.max(r,e[l].queryRadius(n)))}return this.featureIndex.query({queryGeometry:t,bearing:s,params:a,scale:i,additionalRadius:r,tileSize:this.tileSize},e)},Tile.prototype.querySourceFeatures=function(e,t){var i=this;if(this.rawTileData){this.vtLayers||(this.vtLayers=new vt.VectorTile(new Protobuf(this.rawTileData)).layers);var a=t?t.sourceLayer:\"\",s=this.vtLayers._geojsonTileLayer||this.vtLayers[a];if(s)for(var o=featureFilter(t&&t.filter),r={z:this.coord.z,x:this.coord.x,y:this.coord.y},l=0;l<s.length;l++){var n=s.feature(l);if(o(n)){var h=new GeoJSONFeature(n,i.coord.z,i.coord.x,i.coord.y);h.tile=r,e.push(h)}}}},Tile.prototype.hasData=function(){return\"loaded\"===this.state||\"reloading\"===this.state||\"expired\"===this.state},Tile.prototype.setExpiryData=function(e){var t=this.expirationTime;if(e.cacheControl){var i=util.parseCacheControl(e.cacheControl);i[\"max-age\"]&&(this.expirationTime=Date.now()+1e3*i[\"max-age\"])}else e.expires&&(this.expirationTime=new Date(e.expires).getTime());if(this.expirationTime){var a=Date.now(),s=!1;if(this.expirationTime>a)s=!1;else if(t)if(this.expirationTime<t)s=!0;else{var o=this.expirationTime-t;o?this.expirationTime=a+Math.max(o,CLOCK_SKEW_RETRY_TIMEOUT):s=!0}else s=!0;s?(this.expiredRequestCount++,this.state=\"expired\"):this.expiredRequestCount=0}},Tile.prototype.getExpiryTimeout=function(){if(this.expirationTime)return this.expiredRequestCount?1e3*(1<<Math.min(this.expiredRequestCount-1,31)):Math.min(this.expirationTime-(new Date).getTime(),Math.pow(2,31)-1)},Tile.prototype.stopPlacementThrottler=function(){this.placementThrottler.stop(),\"reloading\"===this.state&&(this.state=\"loaded\")},module.exports=Tile;\n},{\"../data/bucket\":42,\"../data/bucket/symbol_bucket\":47,\"../data/feature_index\":49,\"../render/texture\":83,\"../style-spec/feature_filter\":110,\"../symbol/collision_box\":170,\"../symbol/collision_tile\":172,\"../util/throttler\":221,\"../util/util\":223,\"../util/vectortile_to_geojson\":224,\"@mapbox/vector-tile\":6,\"pbf\":29}],100:[function(_dereq_,module,exports){\n\"use strict\";var LngLatBounds=_dereq_(\"../geo/lng_lat_bounds\"),clamp=_dereq_(\"../util/util\").clamp,TileBounds=function(t,n,o){this.bounds=LngLatBounds.convert(this.validateBounds(t)),this.minzoom=n||0,this.maxzoom=o||24};TileBounds.prototype.validateBounds=function(t){return Array.isArray(t)&&4===t.length?[Math.max(-180,t[0]),Math.max(-90,t[1]),Math.min(180,t[2]),Math.min(90,t[3])]:[-180,-90,180,90]},TileBounds.prototype.contains=function(t,n){var o=n?Math.min(t.z,n):t.z,a={minX:Math.floor(this.lngX(this.bounds.getWest(),o)),minY:Math.floor(this.latY(this.bounds.getNorth(),o)),maxX:Math.ceil(this.lngX(this.bounds.getEast(),o)),maxY:Math.ceil(this.latY(this.bounds.getSouth(),o))};return t.x>=a.minX&&t.x<a.maxX&&t.y>=a.minY&&t.y<a.maxY},TileBounds.prototype.lngX=function(t,n){return(t+180)*(Math.pow(2,n)/360)},TileBounds.prototype.latY=function(t,n){var o=clamp(Math.sin(Math.PI/180*t),-.9999,.9999),a=Math.pow(2,n)/(2*Math.PI);return Math.pow(2,n-1)+.5*Math.log((1+o)/(1-o))*-a},module.exports=TileBounds;\n},{\"../geo/lng_lat_bounds\":59,\"../util/util\":223}],101:[function(_dereq_,module,exports){\n\"use strict\";function edge(t,i){if(t.row>i.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 h=Math.max(o,Math.floor(i.y0)),n=Math.min(r,Math.ceil(i.y1));if(t.x0===i.x0&&t.y0===i.y0?t.x0+i.dy/t.dy*t.dx<i.x1:t.x1-i.dy/t.dy*t.dx<i.x0){var s=t;t=i,i=s}for(var a=t.dx/t.dy,d=i.dx/i.dy,l=t.dx>0,y=i.dx<0,x=h;x<n;x++){var u=a*Math.max(0,Math.min(t.dy,x+l-t.y0))+t.x0,c=d*Math.max(0,Math.min(i.dy,x+y-i.y0))+i.x0;e(Math.floor(c),Math.ceil(u),x)}}function scanTriangle(t,i,o,r,e,h){var n,s=edge(t,i),a=edge(i,o),d=edge(o,t);s.dy>a.dy&&(n=s,s=a,a=n),s.dy>d.dy&&(n=s,s=d,d=n),a.dy>d.dy&&(n=a,a=d,d=n),s.dy&&scanSpans(d,s,r,e,h),a.dy&&scanSpans(d,a,r,e,h)}function getQuadkey(t,i,o){for(var r,e=\"\",h=t;h>0;h--)r=1<<h-1,e+=(i&r?1:0)+(o&r?2:0);return e}var WhooTS=_dereq_(\"@mapbox/whoots-js\"),Coordinate=_dereq_(\"../geo/coordinate\"),TileCoord=function(t,i,o,r){(void 0===r||isNaN(r))&&(r=0),this.z=+t,this.x=+i,this.y=+o,this.w=+r,(r*=2)<0&&(r=-1*r-1);var e=1<<this.z;this.id=32*(e*e*r+e*this.y+this.x)+this.z,this.posMatrix=null};TileCoord.prototype.toString=function(){return this.z+\"/\"+this.x+\"/\"+this.y},TileCoord.prototype.toCoordinate=function(t){var i=Math.min(this.z,void 0===t?this.z:t),o=Math.pow(2,i),r=this.y,e=this.x+o*this.w;return new Coordinate(e,r,i)},TileCoord.prototype.url=function(t,i,o){var r=WhooTS.getTileBBox(this.x,this.y,this.z),e=getQuadkey(this.z,this.x,this.y);return t[(this.x+this.y)%t.length].replace(\"{prefix}\",(this.x%16).toString(16)+(this.y%16).toString(16)).replace(\"{z}\",String(Math.min(this.z,i||this.z))).replace(\"{x}\",String(this.x)).replace(\"{y}\",String(\"tms\"===o?Math.pow(2,this.z)-this.y-1:this.y)).replace(\"{quadkey}\",e).replace(\"{bbox-epsg-3857}\",r)},TileCoord.prototype.parent=function(t){return 0===this.z?null:this.z>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.prototype.scaledTo=function(t,i){return this.z>i?new TileCoord(t,this.x,this.y,this.w):t<=this.z?new TileCoord(t,this.x>>this.z-t,this.y>>this.z-t,this.w):new TileCoord(t,this.x<<t-this.z,this.y<<t-this.z,this.w)},TileCoord.cover=function(t,i,o,r){function e(t,i,e){var s,a,d,l;if(e>=0&&e<=h)for(s=t;s<i;s++)a=Math.floor(s/h),d=(s%h+h)%h,0!==a&&!0!==r||(l=new TileCoord(o,d,e,a),n[l.id]=l)}void 0===r&&(r=!0);var h=1<<t,n={};return scanTriangle(i[0],i[1],i[2],0,h,e),scanTriangle(i[2],i[3],i[0],0,h,e),Object.keys(n).map(function(t){return n[t]})},TileCoord.fromID=function(t){var i=t%32,o=1<<i,r=(t-i)/32,e=r%o,h=(r-e)/o%o,n=Math.floor(r/(o*o));return n%2!=0&&(n=-1*n-1),n/=2,new TileCoord(i,e,h,n)},module.exports=TileCoord;\n},{\"../geo/coordinate\":57,\"@mapbox/whoots-js\":10}],102:[function(_dereq_,module,exports){\n\"use strict\";var Evented=_dereq_(\"../util/evented\"),util=_dereq_(\"../util/util\"),loadTileJSON=_dereq_(\"./load_tilejson\"),normalizeURL=_dereq_(\"../util/mapbox\").normalizeTileURL,TileBounds=_dereq_(\"./tile_bounds\"),ResourceType=_dereq_(\"../util/ajax\").ResourceType,browser=_dereq_(\"../util/browser\"),VectorTileSource=function(e){function t(t,i,o,r){if(e.call(this),this.id=t,this.dispatcher=o,this.type=\"vector\",this.minzoom=0,this.maxzoom=22,this.scheme=\"xyz\",this.tileSize=512,this.reparseOverscaled=!0,this.isTileClipped=!0,util.extend(this,util.pick(i,[\"url\",\"scheme\",\"tileSize\"])),this._options=util.extend({type:\"vector\"},i),512!==this.tileSize)throw new Error(\"vector tile sources must have a tileSize of 512\");this.setEventedParent(r)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.load=function(){var e=this;this.fire(\"dataloading\",{dataType:\"source\"}),loadTileJSON(this._options,this.map._transformRequest,function(t,i){t?e.fire(\"error\",t):i&&(util.extend(e,i),i.bounds&&(e.tileBounds=new TileBounds(i.bounds,e.minzoom,e.maxzoom)),e.fire(\"data\",{dataType:\"source\",sourceDataType:\"metadata\"}),e.fire(\"data\",{dataType:\"source\",sourceDataType:\"content\"}))})},t.prototype.hasTile=function(e){return!this.tileBounds||this.tileBounds.contains(e,this.maxzoom)},t.prototype.onAdd=function(e){this.map=e,this.load()},t.prototype.serialize=function(){return util.extend({},this._options)},t.prototype.loadTile=function(e,t){function i(i,o){if(!e.aborted){if(i)return t(i);this.map._refreshExpiredTiles&&e.setExpiryData(o),e.loadVectorData(o,this.map.painter),e.redoWhenDone&&(e.redoWhenDone=!1,e.redoPlacement(this)),t(null),e.reloadCallback&&(this.loadTile(e,e.reloadCallback),e.reloadCallback=null)}}var o=e.coord.z>this.maxzoom?Math.pow(2,e.coord.z-this.maxzoom):1,r=normalizeURL(e.coord.url(this.tiles,this.maxzoom,this.scheme),this.url),s={request:this.map._transformRequest(r,ResourceType.Tile),uid:e.uid,coord:e.coord,zoom:e.coord.z,tileSize:this.tileSize*o,type:this.type,source:this.id,pixelRatio:browser.devicePixelRatio,overscaling:o,angle:this.map.transform.angle,pitch:this.map.transform.pitch,cameraToCenterDistance:this.map.transform.cameraToCenterDistance,cameraToTileDistance:this.map.transform.cameraToTileDistance(e),showCollisionBoxes:this.map.showCollisionBoxes};e.workerID&&\"expired\"!==e.state?\"loading\"===e.state?e.reloadCallback=t:this.dispatcher.send(\"reloadTile\",s,i.bind(this),e.workerID):e.workerID=this.dispatcher.send(\"loadTile\",s,i.bind(this))},t.prototype.abortTile=function(e){this.dispatcher.send(\"abortTile\",{uid:e.uid,type:this.type,source:this.id},void 0,e.workerID)},t.prototype.unloadTile=function(e){e.unloadVectorData(),this.dispatcher.send(\"removeTile\",{uid:e.uid,type:this.type,source:this.id},void 0,e.workerID)},t}(Evented);module.exports=VectorTileSource;\n},{\"../util/ajax\":201,\"../util/browser\":202,\"../util/evented\":210,\"../util/mapbox\":217,\"../util/util\":223,\"./load_tilejson\":92,\"./tile_bounds\":100}],103:[function(_dereq_,module,exports){\n\"use strict\";function loadVectorTile(e,r){var o=ajax.getArrayBuffer(e.request,function(e,o){e?r(e):o&&r(null,{vectorTile:new vt.VectorTile(new Protobuf(o.data)),rawData:o.data,cacheControl:o.cacheControl,expires:o.expires})});return function(){o.abort()}}var ajax=_dereq_(\"../util/ajax\"),vt=_dereq_(\"@mapbox/vector-tile\"),Protobuf=_dereq_(\"pbf\"),WorkerTile=_dereq_(\"./worker_tile\"),util=_dereq_(\"../util/util\"),VectorTileWorkerSource=function(e,r,o){this.actor=e,this.layerIndex=r,this.loadVectorData=o||loadVectorTile,this.loading={},this.loaded={}};VectorTileWorkerSource.prototype.loadTile=function(e,r){var o=this,t=e.source,a=e.uid;this.loading[t]||(this.loading[t]={});var i=this.loading[t][a]=new WorkerTile(e);i.abort=this.loadVectorData(e,function(e,l){if(delete o.loading[t][a],e||!l)return r(e);var c=l.rawData,n={};l.expires&&(n.expires=l.expires),l.cacheControl&&(n.cacheControl=l.cacheControl),i.vectorTile=l.vectorTile,i.parse(l.vectorTile,o.layerIndex,o.actor,function(e,o,t){if(e||!o)return r(e);r(null,util.extend({rawTileData:c},o,n),t)}),o.loaded[t]=o.loaded[t]||{},o.loaded[t][a]=i})},VectorTileWorkerSource.prototype.reloadTile=function(e,r){function o(e,o){if(this.reloadCallback){var t=this.reloadCallback;delete this.reloadCallback,this.parse(this.vectorTile,i.layerIndex,i.actor,t)}r(e,o)}var t=this.loaded[e.source],a=e.uid,i=this;if(t&&t[a]){var l=t[a];\"parsing\"===l.status?l.reloadCallback=r:\"done\"===l.status&&l.parse(l.vectorTile,this.layerIndex,this.actor,o.bind(l))}},VectorTileWorkerSource.prototype.abortTile=function(e){var r=this.loading[e.source],o=e.uid;r&&r[o]&&r[o].abort&&(r[o].abort(),delete r[o])},VectorTileWorkerSource.prototype.removeTile=function(e){var r=this.loaded[e.source],o=e.uid;r&&r[o]&&delete r[o]},VectorTileWorkerSource.prototype.redoPlacement=function(e,r){var o=this.loaded[e.source],t=this.loading[e.source],a=e.uid;if(o&&o[a]){var i=o[a],l=i.redoPlacement(e.angle,e.pitch,e.cameraToCenterDistance,e.cameraToTileDistance,e.showCollisionBoxes);l.result&&r(null,l.result,l.transferables)}else t&&t[a]&&(t[a].angle=e.angle)},module.exports=VectorTileWorkerSource;\n},{\"../util/ajax\":201,\"../util/util\":223,\"./worker_tile\":106,\"@mapbox/vector-tile\":6,\"pbf\":29}],104:[function(_dereq_,module,exports){\n\"use strict\";var ajax=_dereq_(\"../util/ajax\"),ImageSource=_dereq_(\"./image_source\"),VideoSource=function(e){function t(t,o,i,r){e.call(this,t,o,i,r),this.roundZoom=!0,this.type=\"video\",this.options=o}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.load=function(){var e=this,t=this.options;this.urls=t.urls,ajax.getVideo(t.urls,function(t,o){if(t)e.fire(\"error\",{error:t});else if(o){e.video=o,e.video.loop=!0;var i;e.video.addEventListener(\"playing\",function(){i=e.map.style.animationLoop.set(1/0),e.map._rerender()}),e.video.addEventListener(\"pause\",function(){e.map.style.animationLoop.cancel(i)}),e.map&&e.video.play(),e._finishLoading()}})},t.prototype.getVideo=function(){return this.video},t.prototype.onAdd=function(e){this.map||(this.map=e,this.load(),this.video&&(this.video.play(),this.setCoordinates(this.coordinates)))},t.prototype.prepare=function(){0===Object.keys(this.tiles).length||this.video.readyState<2||this._prepareImage(this.map.painter.gl,this.video)},t.prototype.serialize=function(){return{type:\"video\",urls:this.urls,coordinates:this.coordinates}},t}(ImageSource);module.exports=VideoSource;\n},{\"../util/ajax\":201,\"./image_source\":91}],105:[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),globalRTLTextPlugin.applyArabicShaping&&globalRTLTextPlugin.processBidirectionalText||o(new Error(\"RTL Text Plugin failed to import scripts from \"+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\":164,\"../util/actor\":200,\"./geojson_worker_source\":89,\"./rtl_text_plugin\":96,\"./vector_tile_worker_source\":103}],106:[function(_dereq_,module,exports){\n\"use strict\";function recalculateLayers(e,i){for(var r=0,t=e.layers;r<t.length;r+=1){t[r].recalculate(i)}}function serializeBuckets(e,i){return e.filter(function(e){return!e.isEmpty()}).map(function(e){return e.serialize(i)})}var FeatureIndex=_dereq_(\"../data/feature_index\"),CollisionTile=_dereq_(\"../symbol/collision_tile\"),CollisionBoxArray=_dereq_(\"../symbol/collision_box\"),DictionaryCoder=_dereq_(\"../util/dictionary_coder\"),SymbolBucket=_dereq_(\"../data/bucket/symbol_bucket\"),util=_dereq_(\"../util/util\"),ref=_dereq_(\"../render/image_atlas\"),makeImageAtlas=ref.makeImageAtlas,ref$1=_dereq_(\"../render/glyph_atlas\"),makeGlyphAtlas=ref$1.makeGlyphAtlas,WorkerTile=function(e){this.coord=e.coord,this.uid=e.uid,this.zoom=e.zoom,this.pixelRatio=e.pixelRatio,this.tileSize=e.tileSize,this.source=e.source,this.overscaling=e.overscaling,this.angle=e.angle,this.pitch=e.pitch,this.cameraToCenterDistance=e.cameraToCenterDistance,this.cameraToTileDistance=e.cameraToTileDistance,this.showCollisionBoxes=e.showCollisionBoxes};WorkerTile.prototype.parse=function(e,i,r,t){function a(){var e=this;if(D)return t(D);if(A&&C){for(var i=new CollisionTile(this.angle,this.pitch,this.cameraToCenterDistance,this.cameraToTileDistance,this.collisionBoxArray),r=makeGlyphAtlas(A),a=makeImageAtlas(C),o=0,s=e.symbolBuckets;o<s.length;o+=1){var c=s[o];recalculateLayers(c,e.zoom),c.prepare(A,r.positions,C,a.positions),c.place(i,e.showCollisionBoxes)}this.status=\"done\";var u=[r.image.data.buffer,a.image.data.buffer];t(null,{buckets:serializeBuckets(util.values(n),u),featureIndex:l.serialize(u),collisionTile:i.serialize(u),collisionBoxArray:this.collisionBoxArray.serialize(),glyphAtlasImage:r.image,iconAtlasImage:a.image},u)}}var o=this;this.status=\"parsing\",this.data=e,this.collisionBoxArray=new CollisionBoxArray;var s=new DictionaryCoder(Object.keys(e.layers).sort()),l=new FeatureIndex(this.coord,this.overscaling);l.bucketLayerIDs=[];var n={},c={featureIndex:l,iconDependencies:{},glyphDependencies:{}},u=i.familiesBySource[this.source];for(var h in u){var m=e.layers[h];if(m){1===m.version&&util.warnOnce('Vector tile source \"'+o.source+'\" layer \"'+h+'\" does not use vector tile spec v2 and therefore may have some rendering errors.');for(var y=s.encode(h),p=[],d=0;d<m.length;d++){var f=m.feature(d);p.push({feature:f,index:d,sourceLayerIndex:y})}for(var g=0,v=u[h];g<v.length;g+=1){var k=v[g],b=k[0];if(!(b.minzoom&&o.zoom<Math.floor(b.minzoom))&&!(b.maxzoom&&o.zoom>=b.maxzoom||b.layout&&\"none\"===b.layout.visibility)){for(var x=0,T=k;x<T.length;x+=1){T[x].recalculate(o.zoom)}(n[b.id]=b.createBucket({index:l.bucketLayerIDs.length,layers:k,zoom:o.zoom,pixelRatio:o.pixelRatio,overscaling:o.overscaling,collisionBoxArray:o.collisionBoxArray})).populate(p,c),l.bucketLayerIDs.push(k.map(function(e){return e.id}))}}}}this.symbolBuckets=[];for(var z=i.symbolOrder.length-1;z>=0;z--){var B=n[i.symbolOrder[z]];B&&o.symbolBuckets.push(B)}var D,A,C,I=util.mapObject(c.glyphDependencies,function(e){return Object.keys(e).map(Number)});Object.keys(I).length?r.send(\"getGlyphs\",{uid:this.uid,stacks:I},function(e,i){D||(D=e,A=i,a.call(o))}):A={};var w=Object.keys(c.iconDependencies);w.length?r.send(\"getImages\",{icons:w},function(e,i){D||(D=e,C=i,a.call(o))}):C={},a.call(this)},WorkerTile.prototype.redoPlacement=function(e,i,r,t,a){var o=this;if(this.angle=e,this.pitch=i,this.cameraToCenterDistance=r,this.cameraToTileDistance=t,\"done\"!==this.status)return{};for(var s=new CollisionTile(this.angle,this.pitch,this.cameraToCenterDistance,this.cameraToTileDistance,this.collisionBoxArray),l=0,n=o.symbolBuckets;l<n.length;l+=1){var c=n[l];recalculateLayers(c,o.zoom),c.place(s,a)}var u=[];return{result:{buckets:serializeBuckets(this.symbolBuckets,u),collisionTile:s.serialize(u)},transferables:u}},module.exports=WorkerTile;\n},{\"../data/bucket/symbol_bucket\":47,\"../data/feature_index\":49,\"../render/glyph_atlas\":74,\"../render/image_atlas\":76,\"../symbol/collision_box\":170,\"../symbol/collision_tile\":172,\"../util/dictionary_coder\":207,\"../util/util\":223}],107:[function(_dereq_,module,exports){\n\"use strict\";function deref(r,e){var f={};for(var t in r)\"ref\"!==t&&(f[t]=r[t]);return refProperties.forEach(function(r){r in e&&(f[r]=e[r])}),f}function derefLayers(r){r=r.slice();for(var e=Object.create(null),f=0;f<r.length;f++)e[r[f].id]=r[f];for(var t=0;t<r.length;t++)\"ref\"in r[t]&&(r[t]=deref(r[t],e[r[t].ref]));return r}var refProperties=_dereq_(\"./util/ref_properties\");module.exports=derefLayers;\n},{\"./util/ref_properties\":129}],108:[function(_dereq_,module,exports){\n\"use strict\";function diffSources(e,r,o,a){e=e||{},r=r||{};var s;for(s in e)e.hasOwnProperty(s)&&(r.hasOwnProperty(s)||(o.push({command:operations.removeSource,args:[s]}),a[s]=!0));for(s in r)r.hasOwnProperty(s)&&(e.hasOwnProperty(s)?isEqual(e[s],r[s])||(o.push({command:operations.removeSource,args:[s]}),o.push({command:operations.addSource,args:[s,r[s]]}),a[s]=!0):o.push({command:operations.addSource,args:[s,r[s]]}))}function diffLayerPropertyChanges(e,r,o,a,s,t){e=e||{},r=r||{};var n;for(n in e)e.hasOwnProperty(n)&&(isEqual(e[n],r[n])||o.push({command:t,args:[a,n,r[n],s]}));for(n in r)r.hasOwnProperty(n)&&!e.hasOwnProperty(n)&&(isEqual(e[n],r[n])||o.push({command:t,args:[a,n,r[n],s]}))}function pluckId(e){return e.id}function indexById(e,r){return e[r.id]=r,e}function diffLayers(e,r,o){e=e||[],r=r||[];var a,s,t,n,i,p,m,u=e.map(pluckId),l=r.map(pluckId),y=e.reduce(indexById,{}),c=r.reduce(indexById,{}),d=u.slice(),h=Object.create(null);for(a=0,s=0;a<u.length;a++)t=u[a],c.hasOwnProperty(t)?s++:(o.push({command:operations.removeLayer,args:[t]}),d.splice(d.indexOf(t,s),1));for(a=0,s=0;a<l.length;a++)t=l[l.length-1-a],d[d.length-1-a]!==t&&(y.hasOwnProperty(t)?(o.push({command:operations.removeLayer,args:[t]}),d.splice(d.lastIndexOf(t,d.length-s),1)):s++,p=d[d.length-a],o.push({command:operations.addLayer,args:[c[t],p]}),d.splice(d.length-a,0,t),h[t]=!0);for(a=0;a<l.length;a++)if(t=l[a],n=y[t],i=c[t],!h[t]&&!isEqual(n,i))if(isEqual(n.source,i.source)&&isEqual(n[\"source-layer\"],i[\"source-layer\"])&&isEqual(n.type,i.type)){diffLayerPropertyChanges(n.layout,i.layout,o,t,null,operations.setLayoutProperty),diffLayerPropertyChanges(n.paint,i.paint,o,t,null,operations.setPaintProperty),isEqual(n.filter,i.filter)||o.push({command:operations.setFilter,args:[t,i.filter]}),isEqual(n.minzoom,i.minzoom)&&isEqual(n.maxzoom,i.maxzoom)||o.push({command:operations.setLayerZoomRange,args:[t,i.minzoom,i.maxzoom]});for(m in n)n.hasOwnProperty(m)&&\"layout\"!==m&&\"paint\"!==m&&\"filter\"!==m&&\"metadata\"!==m&&\"minzoom\"!==m&&\"maxzoom\"!==m&&(0===m.indexOf(\"paint.\")?diffLayerPropertyChanges(n[m],i[m],o,t,m.slice(6),operations.setPaintProperty):isEqual(n[m],i[m])||o.push({command:operations.setLayerProperty,args:[t,m,i[m]]}));for(m in i)i.hasOwnProperty(m)&&!n.hasOwnProperty(m)&&\"layout\"!==m&&\"paint\"!==m&&\"filter\"!==m&&\"metadata\"!==m&&\"minzoom\"!==m&&\"maxzoom\"!==m&&(0===m.indexOf(\"paint.\")?diffLayerPropertyChanges(n[m],i[m],o,t,m.slice(6),operations.setPaintProperty):isEqual(n[m],i[m])||o.push({command:operations.setLayerProperty,args:[t,m,i[m]]}))}else o.push({command:operations.removeLayer,args:[t]}),p=d[d.lastIndexOf(t)+1],o.push({command:operations.addLayer,args:[i,p]})}function diffStyles(e,r){if(!e)return[{command:operations.setStyle,args:[r]}];var o=[];try{if(!isEqual(e.version,r.version))return[{command:operations.setStyle,args:[r]}];isEqual(e.center,r.center)||o.push({command:operations.setCenter,args:[r.center]}),isEqual(e.zoom,r.zoom)||o.push({command:operations.setZoom,args:[r.zoom]}),isEqual(e.bearing,r.bearing)||o.push({command:operations.setBearing,args:[r.bearing]}),isEqual(e.pitch,r.pitch)||o.push({command:operations.setPitch,args:[r.pitch]}),isEqual(e.sprite,r.sprite)||o.push({command:operations.setSprite,args:[r.sprite]}),isEqual(e.glyphs,r.glyphs)||o.push({command:operations.setGlyphs,args:[r.glyphs]}),isEqual(e.transition,r.transition)||o.push({command:operations.setTransition,args:[r.transition]}),isEqual(e.light,r.light)||o.push({command:operations.setLight,args:[r.light]});var a={},s=[];diffSources(e.sources,r.sources,s,a);var t=[];e.layers&&e.layers.forEach(function(e){a[e.source]?o.push({command:operations.removeLayer,args:[e.id]}):t.push(e)}),o=o.concat(s),diffLayers(t,r.layers,o)}catch(e){console.warn(\"Unable to compute style diff:\",e),o=[{command:operations.setStyle,args:[r]}]}return o}var isEqual=_dereq_(\"lodash.isequal\"),operations={setStyle:\"setStyle\",addLayer:\"addLayer\",removeLayer:\"removeLayer\",setPaintProperty:\"setPaintProperty\",setLayoutProperty:\"setLayoutProperty\",setFilter:\"setFilter\",addSource:\"addSource\",removeSource:\"removeSource\",setLayerZoomRange:\"setLayerZoomRange\",setLayerProperty:\"setLayerProperty\",setCenter:\"setCenter\",setZoom:\"setZoom\",setBearing:\"setBearing\",setPitch:\"setPitch\",setSprite:\"setSprite\",setGlyphs:\"setGlyphs\",setTransition:\"setTransition\",setLight:\"setLight\"};module.exports=diffStyles,module.exports.operations=operations;\n},{\"lodash.isequal\":120}],109:[function(_dereq_,module,exports){\n\"use strict\";function ValidationError(r,i){for(var t=[],o=arguments.length-2;o-- >0;)t[o]=arguments[o+2];this.message=(r?r+\": \":\"\")+format.apply(format,t),null!==i&&void 0!==i&&i.__line__&&(this.line=i.__line__)}var format=_dereq_(\"util\").format;module.exports=ValidationError;\n},{\"util\":36}],110:[function(_dereq_,module,exports){\n\"use strict\";function createFilter(e){return new Function(\"f\",\"var p = (f && f.properties || {}); return \"+compile(e))}function compile(e){if(!e)return\"true\";var i=e[0];return e.length<=1?\"any\"===i?\"false\":\"true\":\"(\"+(\"==\"===i?compileComparisonOp(e[1],e[2],\"===\",!1):\"!=\"===i?compileComparisonOp(e[1],e[2],\"!==\",!1):\"<\"===i||\">\"===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,o){var r=compilePropertyReference(e),p=\"$type\"===e?types.indexOf(i):JSON.stringify(i);return(o?\"typeof \"+r+\"=== typeof \"+p+\"&&\":\"\")+r+n+p}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)),o=compilePropertyReference(e);return i.length<=200?n+\".indexOf(\"+o+\") !== -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; }(\"+o+\", \"+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 e<i?-1:e>i?1:0}module.exports=createFilter;var types=[\"Unknown\",\"Point\",\"LineString\",\"Polygon\"];\n},{}],111:[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);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}};\n},{}],112:[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<f.length;c+=1){var v=f[c];p[v[0]]=v[1]}l=typeof t.stops[0][0]}else{if(\"identity\"!==s)throw new Error('Unknown function type \"'+s+'\"');u=evaluateIdentityFunction}var d;if(t.colorSpace&&\"rgb\"!==t.colorSpace){if(!colorSpaces[t.colorSpace])throw new Error(\"Unknown color space: \"+t.colorSpace);var y=colorSpaces[t.colorSpace];t=JSON.parse(JSON.stringify(t));for(var F=0;F<t.stops.length;F++)t.stops[F]=[t.stops[F][0],y.forward(t.stops[F][1])];d=y.reverse}else d=identityFunction;if(r){for(var h={},g=[],m=0;m<t.stops.length;m++){var C=t.stops[m],S=C[0].zoom;void 0===h[S]&&(h[S]={zoom:S,type:t.type,property:t.property,default:t.default,stops:[]},g.push(S)),h[S].stops.push([C[0].value,C[1]])}for(var T=[],x=0,b=g;x<b.length;x+=1){var q=b[x];T.push([h[q].zoom,createFunction(h[q],e)])}o=function(o,n){return d(evaluateExponentialFunction({stops:T,base:t.base},e,o)(o,n))},o.isFeatureConstant=!1,o.isZoomConstant=!1}else i?(o=function(o){return d(u(t,e,o,p,l))},o.isFeatureConstant=!0,o.isZoomConstant=!1):(o=function(o,n){var r=n[t.property];return void 0===r?coalesce(t.default,e.default):d(u(t,e,r,p,l))},o.isFeatureConstant=!1,o.isZoomConstant=!0)}else n&&t&&(t=parseColor(t)),o=function(){return t},o.isFeatureConstant=!0,o.isZoomConstant=!0;return o}function coalesce(t,e,o){return void 0!==t?t:void 0!==e?e:void 0!==o?o:void 0}function evaluateCategoricalFunction(t,e,o,n,r){return coalesce(typeof o===r?n[o]:void 0,t.default,e.default)}function evaluateIntervalFunction(t,e,o){if(\"number\"!==getType(o))return coalesce(t.default,e.default);var n=t.stops.length;if(1===n)return t.stops[0][1];if(o<=t.stops[0][0])return t.stops[0][1];if(o>=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(){for(var t=[],e=arguments.length;e--;)t[e]=arguments[e];var o=s.apply(void 0,t),n=u.apply(void 0,t);if(void 0!==o&&void 0!==n)return p(o,n,i)}:p(s,u,i)}function evaluateIdentityFunction(t,e,o){return\"color\"===e.type?o=parseColor(o):getType(o)===e.type||\"enum\"===e.type&&e.values[o]||(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&&e<n)return s;o<e?a=s+1:o>e&&(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 0===r?0: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\":125,\"../util/get_type\":126,\"../util/interpolate\":127,\"../util/parse_color\":128,\"./color_spaces\":111}],113:[function(_dereq_,module,exports){\n\"use strict\";function stringify(r){var t=typeof r;if(\"number\"===t||\"boolean\"===t||\"string\"===t||void 0===r||null===r)return JSON.stringify(r);if(Array.isArray(r)){for(var e=\"[\",i=0,n=r;i<n.length;i+=1){e+=stringify(n[i])+\",\"}return e+\"]\"}for(var o=Object.keys(r).sort(),f=\"{\",u=0;u<o.length;u++)f+=JSON.stringify(o[u])+\":\"+stringify(r[o[u]])+\",\";return f+\"}\"}function getKey(r){for(var t=\"\",e=0,i=refProperties;e<i.length;e+=1){t+=\"/\"+stringify(r[i[e]])}return t}function groupByLayout(r){for(var t={},e=0;e<r.length;e++){var i=getKey(r[e]),n=t[i];n||(n=t[i]=[]),n.push(r[e])}var o=[];for(var f in t)o.push(t[f]);return o}var refProperties=_dereq_(\"./util/ref_properties\");module.exports=groupByLayout;\n},{\"./util/ref_properties\":129}],114:[function(_dereq_,module,exports){\nfunction clamp_css_byte(e){return e=Math.round(e),e<0?0:e>255?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(-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){}\n},{}],115:[function(_dereq_,module,exports){\nfunction isObjectLike(r){return!!r&&\"object\"==typeof r}function arraySome(r,e){for(var a=-1,t=r.length;++a<t;)if(e(r[a],a,r))return!0;return!1}function baseIsEqual(r,e,a,t,o,n){return r===e||(null==r||null==e||!isObject(r)&&!isObjectLike(e)?r!==r&&e!==e:baseIsEqualDeep(r,e,baseIsEqual,a,t,o,n))}function baseIsEqualDeep(r,e,a,t,o,n,u){var c=isArray(r),s=isArray(e),i=arrayTag,g=arrayTag;c||(i=objToString.call(r),i==argsTag?i=objectTag:i!=objectTag&&(c=isTypedArray(r))),s||(g=objToString.call(e),g==argsTag?g=objectTag:g!=objectTag&&(s=isTypedArray(e)));var b=i==objectTag,l=g==objectTag,f=i==g;if(f&&!c&&!b)return equalByTag(r,e,i);if(!o){var y=b&&hasOwnProperty.call(r,\"__wrapped__\"),T=l&&hasOwnProperty.call(e,\"__wrapped__\");if(y||T)return a(y?r.value():r,T?e.value():e,t,o,n,u)}if(!f)return!1;n||(n=[]),u||(u=[]);for(var j=n.length;j--;)if(n[j]==r)return u[j]==e;n.push(r),u.push(e);var p=(c?equalArrays:equalObjects)(r,e,a,t,o,n,u);return n.pop(),u.pop(),p}function equalArrays(r,e,a,t,o,n,u){var c=-1,s=r.length,i=e.length;if(s!=i&&!(o&&i>s))return!1;for(;++c<s;){var g=r[c],b=e[c],l=t?t(o?b:g,o?g:b,c):void 0;if(void 0!==l){if(l)continue;return!1}if(o){if(!arraySome(e,function(r){return g===r||a(g,r,t,o,n,u)}))return!1}else if(g!==b&&!a(g,b,t,o,n,u))return!1}return!0}function equalByTag(r,e,a){switch(a){case boolTag:case dateTag:return+r==+e;case errorTag:return r.name==e.name&&r.message==e.message;case numberTag:return r!=+r?e!=+e:r==+e;case regexpTag:case stringTag:return r==e+\"\"}return!1}function equalObjects(r,e,a,t,o,n,u){var c=keys(r),s=c.length;if(s!=keys(e).length&&!o)return!1;for(var i=s;i--;){var g=c[i];if(!(o?g in e:hasOwnProperty.call(e,g)))return!1}for(var b=o;++i<s;){g=c[i];var l=r[g],f=e[g],y=t?t(o?f:l,o?l:f,g):void 0;if(!(void 0===y?a(l,f,t,o,n,u):y))return!1;b||(b=\"constructor\"==g)}if(!b){var T=r.constructor,j=e.constructor;if(T!=j&&\"constructor\"in r&&\"constructor\"in e&&!(\"function\"==typeof T&&T instanceof T&&\"function\"==typeof j&&j instanceof j))return!1}return!0}function isObject(r){var e=typeof r;return!!r&&(\"object\"==e||\"function\"==e)}var isArray=_dereq_(\"lodash.isarray\"),isTypedArray=_dereq_(\"lodash.istypedarray\"),keys=_dereq_(\"lodash.keys\"),argsTag=\"[object Arguments]\",arrayTag=\"[object Array]\",boolTag=\"[object Boolean]\",dateTag=\"[object Date]\",errorTag=\"[object Error]\",numberTag=\"[object Number]\",objectTag=\"[object Object]\",regexpTag=\"[object RegExp]\",stringTag=\"[object String]\",objectProto=Object.prototype,hasOwnProperty=objectProto.hasOwnProperty,objToString=objectProto.toString;module.exports=baseIsEqual;\n},{\"lodash.isarray\":119,\"lodash.istypedarray\":121,\"lodash.keys\":122}],116:[function(_dereq_,module,exports){\nfunction bindCallback(n,t,r){if(\"function\"!=typeof n)return identity;if(void 0===t)return n;switch(r){case 1:return function(r){return n.call(t,r)};case 3:return function(r,e,u){return n.call(t,r,e,u)};case 4:return function(r,e,u,c){return n.call(t,r,e,u,c)};case 5:return function(r,e,u,c,i){return n.call(t,r,e,u,c,i)}}return function(){return n.apply(t,arguments)}}function identity(n){return n}module.exports=bindCallback;\n},{}],117:[function(_dereq_,module,exports){\nfunction isObjectLike(t){return!!t&&\"object\"==typeof t}function getNative(t,o){var e=null==t?void 0:t[o];return isNative(e)?e:void 0}function isFunction(t){return isObject(t)&&objToString.call(t)==funcTag}function isObject(t){var o=typeof t;return!!t&&(\"object\"==o||\"function\"==o)}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.*?\")+\"$\");module.exports=getNative;\n},{}],118:[function(_dereq_,module,exports){\nfunction isArguments(t){return isArrayLikeObject(t)&&hasOwnProperty.call(t,\"callee\")&&(!propertyIsEnumerable.call(t,\"callee\")||objectToString.call(t)==argsTag)}function isArrayLike(t){return null!=t&&isLength(t.length)&&!isFunction(t)}function isArrayLikeObject(t){return isObjectLike(t)&&isArrayLike(t)}function isFunction(t){var e=isObject(t)?objectToString.call(t):\"\";return e==funcTag||e==genTag}function isLength(t){return\"number\"==typeof t&&t>-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},{}],119:[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},{}],120:[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\":115,\"lodash._bindcallback\":116}],121:[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},{}],122:[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<t}function isLength(e){return\"number\"==typeof e&&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=[];++o<r;){var u=t[o];(s&&isIndex(u,n)||hasOwnProperty.call(e,u))&&i.push(u)}return i}function isObject(e){var t=typeof e;return!!e&&(\"object\"==t||\"function\"==t)}function keysIn(e){if(null==e)return[];isObject(e)||(e=Object(e));var t=e.length;t=t&&isLength(t)&&(isArray(e)||isArguments(e))&&t||0;for(var r=e.constructor,n=-1,s=\"function\"==typeof r&&r.prototype===e,o=Array(t),i=t>0;++n<t;)o[n]=n+\"\";for(var u in e)i&&isIndex(u,t)||\"constructor\"==u&&(s||!hasOwnProperty.call(e,u))||o.push(u);return o}var getNative=_dereq_(\"lodash._getnative\"),isArguments=_dereq_(\"lodash.isarguments\"),isArray=_dereq_(\"lodash.isarray\"),reIsUint=/^\\d+$/,objectProto=Object.prototype,hasOwnProperty=objectProto.hasOwnProperty,nativeKeys=getNative(Object,\"keys\"),MAX_SAFE_INTEGER=9007199254740991,getLength=baseProperty(\"length\"),keys=nativeKeys?function(e){var t=null==e?void 0:e.constructor;return\"function\"==typeof t&&t.prototype===e||\"function\"!=typeof e&&isArrayLike(e)?shimKeys(e):isObject(e)?nativeKeys(e):[]}:shimKeys;module.exports=keys;\n},{\"lodash._getnative\":117,\"lodash.isarguments\":118,\"lodash.isarray\":119}],123:[function(_dereq_,module,exports){\n\"use strict\";module.exports=_dereq_(\"./v8.json\");\n},{\"./v8.json\":124}],124:[function(_dereq_,module,exports){\nmodule.exports={\"$version\":8,\"$root\":{\"version\":{\"required\":true,\"type\":\"enum\",\"values\":[8]},\"name\":{\"type\":\"string\"},\"metadata\":{\"type\":\"*\"},\"center\":{\"type\":\"array\",\"value\":\"number\"},\"zoom\":{\"type\":\"number\"},\"bearing\":{\"type\":\"number\",\"default\":0,\"period\":360,\"units\":\"degrees\"},\"pitch\":{\"type\":\"number\",\"default\":0,\"units\":\"degrees\"},\"light\":{\"type\":\"light\"},\"sources\":{\"required\":true,\"type\":\"sources\"},\"sprite\":{\"type\":\"string\"},\"glyphs\":{\"type\":\"string\"},\"transition\":{\"type\":\"transition\"},\"layers\":{\"required\":true,\"type\":\"array\",\"value\":\"layer\"}},\"sources\":{\"*\":{\"type\":\"source\"}},\"source\":[\"source_tile\",\"source_geojson\",\"source_video\",\"source_image\",\"source_canvas\"],\"source_tile\":{\"type\":{\"required\":true,\"type\":\"enum\",\"values\":{\"vector\":{},\"raster\":{}}},\"url\":{\"type\":\"string\"},\"tiles\":{\"type\":\"array\",\"value\":\"string\"},\"bounds\":{\"type\":\"array\",\"value\":\"number\",\"length\":4,\"default\":[-180,-85.0511,180,85.0511]},\"minzoom\":{\"type\":\"number\",\"default\":0},\"maxzoom\":{\"type\":\"number\",\"default\":22},\"tileSize\":{\"type\":\"number\",\"default\":512,\"units\":\"pixels\"},\"*\":{\"type\":\"*\"}},\"source_geojson\":{\"type\":{\"required\":true,\"type\":\"enum\",\"values\":{\"geojson\":{}}},\"data\":{\"type\":\"*\"},\"maxzoom\":{\"type\":\"number\",\"default\":18},\"buffer\":{\"type\":\"number\",\"default\":128,\"maximum\":512,\"minimum\":0},\"tolerance\":{\"type\":\"number\",\"default\":0.375},\"cluster\":{\"type\":\"boolean\",\"default\":false},\"clusterRadius\":{\"type\":\"number\",\"default\":50,\"minimum\":0},\"clusterMaxZoom\":{\"type\":\"number\"}},\"source_video\":{\"type\":{\"required\":true,\"type\":\"enum\",\"values\":{\"video\":{}}},\"urls\":{\"required\":true,\"type\":\"array\",\"value\":\"string\"},\"coordinates\":{\"required\":true,\"type\":\"array\",\"length\":4,\"value\":{\"type\":\"array\",\"length\":2,\"value\":\"number\"}}},\"source_image\":{\"type\":{\"required\":true,\"type\":\"enum\",\"values\":{\"image\":{}}},\"url\":{\"required\":true,\"type\":\"string\"},\"coordinates\":{\"required\":true,\"type\":\"array\",\"length\":4,\"value\":{\"type\":\"array\",\"length\":2,\"value\":\"number\"}}},\"source_canvas\":{\"type\":{\"required\":true,\"type\":\"enum\",\"values\":{\"canvas\":{}}},\"coordinates\":{\"required\":true,\"type\":\"array\",\"length\":4,\"value\":{\"type\":\"array\",\"length\":2,\"value\":\"number\"}},\"animate\":{\"type\":\"boolean\",\"default\":\"true\"},\"canvas\":{\"type\":\"string\",\"required\":true},\"contextType\":{\"required\":true,\"type\":\"enum\",\"values\":{\"2d\":{},\"webgl\":{},\"experimental-webgl\":{},\"webgl2\":{}}}},\"layer\":{\"id\":{\"type\":\"string\",\"required\":true},\"type\":{\"type\":\"enum\",\"values\":{\"fill\":{},\"line\":{},\"symbol\":{},\"circle\":{},\"fill-extrusion\":{},\"raster\":{},\"background\":{}}},\"metadata\":{\"type\":\"*\"},\"ref\":{\"type\":\"string\"},\"source\":{\"type\":\"string\"},\"source-layer\":{\"type\":\"string\"},\"minzoom\":{\"type\":\"number\",\"minimum\":0,\"maximum\":24},\"maxzoom\":{\"type\":\"number\",\"minimum\":0,\"maximum\":24},\"filter\":{\"type\":\"filter\"},\"layout\":{\"type\":\"layout\"},\"paint\":{\"type\":\"paint\"},\"paint.*\":{\"type\":\"paint\"}},\"layout\":[\"layout_fill\",\"layout_line\",\"layout_circle\",\"layout_fill-extrusion\",\"layout_symbol\",\"layout_raster\",\"layout_background\"],\"layout_background\":{\"visibility\":{\"type\":\"enum\",\"values\":{\"visible\":{},\"none\":{}},\"default\":\"visible\"}},\"layout_fill\":{\"visibility\":{\"type\":\"enum\",\"values\":{\"visible\":{},\"none\":{}},\"default\":\"visible\"}},\"layout_circle\":{\"visibility\":{\"type\":\"enum\",\"values\":{\"visible\":{},\"none\":{}},\"default\":\"visible\"}},\"layout_fill-extrusion\":{\"visibility\":{\"type\":\"enum\",\"values\":{\"visible\":{},\"none\":{}},\"default\":\"visible\"}},\"layout_line\":{\"line-cap\":{\"type\":\"enum\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"values\":{\"butt\":{},\"round\":{},\"square\":{}},\"default\":\"butt\"},\"line-join\":{\"type\":\"enum\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"property-function\":true,\"values\":{\"bevel\":{},\"round\":{},\"miter\":{}},\"default\":\"miter\"},\"line-miter-limit\":{\"type\":\"number\",\"default\":2,\"function\":\"interpolated\",\"zoom-function\":true,\"requires\":[{\"line-join\":\"miter\"}]},\"line-round-limit\":{\"type\":\"number\",\"default\":1.05,\"function\":\"interpolated\",\"zoom-function\":true,\"requires\":[{\"line-join\":\"round\"}]},\"visibility\":{\"type\":\"enum\",\"values\":{\"visible\":{},\"none\":{}},\"default\":\"visible\"}},\"layout_symbol\":{\"symbol-placement\":{\"type\":\"enum\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"values\":{\"point\":{},\"line\":{}},\"default\":\"point\"},\"symbol-spacing\":{\"type\":\"number\",\"default\":250,\"minimum\":1,\"function\":\"interpolated\",\"zoom-function\":true,\"units\":\"pixels\",\"requires\":[{\"symbol-placement\":\"line\"}]},\"symbol-avoid-edges\":{\"type\":\"boolean\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"default\":false},\"icon-allow-overlap\":{\"type\":\"boolean\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"default\":false,\"requires\":[\"icon-image\"]},\"icon-ignore-placement\":{\"type\":\"boolean\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"default\":false,\"requires\":[\"icon-image\"]},\"icon-optional\":{\"type\":\"boolean\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"default\":false,\"requires\":[\"icon-image\",\"text-field\"]},\"icon-rotation-alignment\":{\"type\":\"enum\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"values\":{\"map\":{},\"viewport\":{},\"auto\":{}},\"default\":\"auto\",\"requires\":[\"icon-image\"]},\"icon-size\":{\"type\":\"number\",\"default\":1,\"minimum\":0,\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":true,\"units\":\"factor of the original icon size\",\"requires\":[\"icon-image\"]},\"icon-text-fit\":{\"type\":\"enum\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"values\":{\"none\":{},\"width\":{},\"height\":{},\"both\":{}},\"default\":\"none\",\"requires\":[\"icon-image\",\"text-field\"]},\"icon-text-fit-padding\":{\"type\":\"array\",\"value\":\"number\",\"length\":4,\"default\":[0,0,0,0],\"units\":\"pixels\",\"function\":\"interpolated\",\"zoom-function\":true,\"requires\":[\"icon-image\",\"text-field\",{\"icon-text-fit\":[\"both\",\"width\",\"height\"]}]},\"icon-image\":{\"type\":\"string\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"property-function\":true,\"tokens\":true},\"icon-rotate\":{\"type\":\"number\",\"default\":0,\"period\":360,\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":true,\"units\":\"degrees\",\"requires\":[\"icon-image\"]},\"icon-padding\":{\"type\":\"number\",\"default\":2,\"minimum\":0,\"function\":\"interpolated\",\"zoom-function\":true,\"units\":\"pixels\",\"requires\":[\"icon-image\"]},\"icon-keep-upright\":{\"type\":\"boolean\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"default\":false,\"requires\":[\"icon-image\",{\"icon-rotation-alignment\":\"map\"},{\"symbol-placement\":\"line\"}]},\"icon-offset\":{\"type\":\"array\",\"value\":\"number\",\"length\":2,\"default\":[0,0],\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":true,\"requires\":[\"icon-image\"]},\"icon-anchor\":{\"type\":\"enum\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"property-function\":true,\"values\":{\"center\":{},\"left\":{},\"right\":{},\"top\":{},\"bottom\":{},\"top-left\":{},\"top-right\":{},\"bottom-left\":{},\"bottom-right\":{}},\"default\":\"center\",\"requires\":[\"icon-image\"]},\"icon-pitch-alignment\":{\"type\":\"enum\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"values\":{\"map\":{},\"viewport\":{},\"auto\":{}},\"default\":\"auto\",\"requires\":[\"icon-image\"]},\"text-pitch-alignment\":{\"type\":\"enum\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"values\":{\"map\":{},\"viewport\":{},\"auto\":{}},\"default\":\"auto\",\"requires\":[\"text-field\"]},\"text-rotation-alignment\":{\"type\":\"enum\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"values\":{\"map\":{},\"viewport\":{},\"auto\":{}},\"default\":\"auto\",\"requires\":[\"text-field\"]},\"text-field\":{\"type\":\"string\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"property-function\":true,\"default\":\"\",\"tokens\":true},\"text-font\":{\"type\":\"array\",\"value\":\"string\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"default\":[\"Open Sans Regular\",\"Arial Unicode MS Regular\"],\"requires\":[\"text-field\"]},\"text-size\":{\"type\":\"number\",\"default\":16,\"minimum\":0,\"units\":\"pixels\",\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":true,\"requires\":[\"text-field\"]},\"text-max-width\":{\"type\":\"number\",\"default\":10,\"minimum\":0,\"units\":\"ems\",\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":true,\"requires\":[\"text-field\"]},\"text-line-height\":{\"type\":\"number\",\"default\":1.2,\"units\":\"ems\",\"function\":\"interpolated\",\"zoom-function\":true,\"requires\":[\"text-field\"]},\"text-letter-spacing\":{\"type\":\"number\",\"default\":0,\"units\":\"ems\",\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":true,\"requires\":[\"text-field\"]},\"text-justify\":{\"type\":\"enum\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"property-function\":true,\"values\":{\"left\":{},\"center\":{},\"right\":{}},\"default\":\"center\",\"requires\":[\"text-field\"]},\"text-anchor\":{\"type\":\"enum\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"property-function\":true,\"values\":{\"center\":{},\"left\":{},\"right\":{},\"top\":{},\"bottom\":{},\"top-left\":{},\"top-right\":{},\"bottom-left\":{},\"bottom-right\":{}},\"default\":\"center\",\"requires\":[\"text-field\"]},\"text-max-angle\":{\"type\":\"number\",\"default\":45,\"units\":\"degrees\",\"function\":\"interpolated\",\"zoom-function\":true,\"requires\":[\"text-field\",{\"symbol-placement\":\"line\"}]},\"text-rotate\":{\"type\":\"number\",\"default\":0,\"period\":360,\"units\":\"degrees\",\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":true,\"requires\":[\"text-field\"]},\"text-padding\":{\"type\":\"number\",\"default\":2,\"minimum\":0,\"units\":\"pixels\",\"function\":\"interpolated\",\"zoom-function\":true,\"requires\":[\"text-field\"]},\"text-keep-upright\":{\"type\":\"boolean\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"default\":true,\"requires\":[\"text-field\",{\"text-rotation-alignment\":\"map\"},{\"symbol-placement\":\"line\"}]},\"text-transform\":{\"type\":\"enum\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"property-function\":true,\"values\":{\"none\":{},\"uppercase\":{},\"lowercase\":{}},\"default\":\"none\",\"requires\":[\"text-field\"]},\"text-offset\":{\"type\":\"array\",\"value\":\"number\",\"units\":\"ems\",\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":true,\"length\":2,\"default\":[0,0],\"requires\":[\"text-field\"]},\"text-allow-overlap\":{\"type\":\"boolean\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"default\":false,\"requires\":[\"text-field\"]},\"text-ignore-placement\":{\"type\":\"boolean\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"default\":false,\"requires\":[\"text-field\"]},\"text-optional\":{\"type\":\"boolean\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"default\":false,\"requires\":[\"text-field\",\"icon-image\"]},\"visibility\":{\"type\":\"enum\",\"values\":{\"visible\":{},\"none\":{}},\"default\":\"visible\"}},\"layout_raster\":{\"visibility\":{\"type\":\"enum\",\"values\":{\"visible\":{},\"none\":{}},\"default\":\"visible\"}},\"filter\":{\"type\":\"array\",\"value\":\"*\"},\"filter_operator\":{\"type\":\"enum\",\"values\":{\"==\":{},\"!=\":{},\">\":{},\">=\":{},\"<\":{},\"<=\":{},\"in\":{},\"!in\":{},\"all\":{},\"any\":{},\"none\":{},\"has\":{},\"!has\":{}}},\"geometry_type\":{\"type\":\"enum\",\"values\":{\"Point\":{},\"LineString\":{},\"Polygon\":{}}},\"function\":{\"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,\"zoom-function\":true,\"property-function\":false,\"function\":\"piecewise-constant\"},\"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,\"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,\"property-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-pitch-alignment\":{\"type\":\"enum\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"values\":{\"map\":{},\"viewport\":{}},\"default\":\"viewport\"},\"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},{}],125:[function(_dereq_,module,exports){\n\"use strict\";module.exports=function(r){for(var t=[],e=arguments.length-1;e-- >0;)t[e]=arguments[e+1];for(var n=0,o=t;n<o.length;n+=1){var a=o[n];for(var f in a)r[f]=a[f]}return r};\n},{}],126:[function(_dereq_,module,exports){\n\"use strict\";module.exports=function(n){return n instanceof Number?\"number\":n instanceof String?\"string\":n instanceof Boolean?\"boolean\":Array.isArray(n)?\"array\":null===n?\"null\":typeof n};\n},{}],127:[function(_dereq_,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},{}],128:[function(_dereq_,module,exports){\n\"use strict\";var parseColorString=_dereq_(\"csscolorparser\").parseCSSColor;module.exports=function(r){if(\"string\"==typeof r){var e=parseColorString(r);if(!e)return;return[e[0]/255*e[3],e[1]/255*e[3],e[2]/255*e[3],e[3]]}return Array.isArray(r)?r:void 0};\n},{\"csscolorparser\":114}],129:[function(_dereq_,module,exports){\n\"use strict\";module.exports=[\"type\",\"source\",\"source-layer\",\"minzoom\",\"maxzoom\",\"filter\",\"layout\"];\n},{}],130:[function(_dereq_,module,exports){\n\"use strict\";module.exports=function(n){return n instanceof Number||n instanceof String||n instanceof Boolean?n.valueOf():n};\n},{}],131:[function(_dereq_,module,exports){\n\"use strict\";var ValidationError=_dereq_(\"../error/validation_error\"),getType=_dereq_(\"../util/get_type\"),extend=_dereq_(\"../util/extend\");module.exports=function(e){var r=_dereq_(\"./validate_function\"),t=_dereq_(\"./validate_object\"),i={\"*\":function(){return[]},array:_dereq_(\"./validate_array\"),boolean:_dereq_(\"./validate_boolean\"),number:_dereq_(\"./validate_number\"),color:_dereq_(\"./validate_color\"),constants:_dereq_(\"./validate_constants\"),enum:_dereq_(\"./validate_enum\"),filter:_dereq_(\"./validate_filter\"),function:_dereq_(\"./validate_function\"),layer:_dereq_(\"./validate_layer\"),object:_dereq_(\"./validate_object\"),source:_dereq_(\"./validate_source\"),light:_dereq_(\"./validate_light\"),string:_dereq_(\"./validate_string\")},a=e.value,n=e.valueSpec,u=e.key,o=e.styleSpec,l=e.style;if(\"string\"===getType(a)&&\"@\"===a[0]){if(o.$version>7)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\":109,\"../util/extend\":125,\"../util/get_type\":126,\"./validate_array\":132,\"./validate_boolean\":133,\"./validate_color\":134,\"./validate_constants\":135,\"./validate_enum\":136,\"./validate_filter\":137,\"./validate_function\":138,\"./validate_layer\":140,\"./validate_light\":142,\"./validate_number\":143,\"./validate_object\":144,\"./validate_source\":147,\"./validate_string\":148}],132:[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.length<t[\"min-length\"])return[new ValidationError(l,r,\"array length at least %d expected, length %d found\",t[\"min-length\"],r.length)];var o={type:t.value};n.$version<7&&(o.function=t.function),\"object\"===getType(t.value)&&(o=t.value);for(var u=[],d=0;d<r.length;d++)u=u.concat(i({array:r,arrayIndex:d,value:r[d],valueSpec:o,style:a,styleSpec:n,key:l+\"[\"+d+\"]\"}));return u};\n},{\"../error/validation_error\":109,\"../util/get_type\":126,\"./validate\":131}],133:[function(_dereq_,module,exports){\n\"use strict\";var getType=_dereq_(\"../util/get_type\"),ValidationError=_dereq_(\"../error/validation_error\");module.exports=function(e){var r=e.value,o=e.key,t=getType(r);return\"boolean\"!==t?[new ValidationError(o,r,\"boolean expected, %s found\",t)]:[]};\n},{\"../error/validation_error\":109,\"../util/get_type\":126}],134:[function(_dereq_,module,exports){\n\"use strict\";var ValidationError=_dereq_(\"../error/validation_error\"),getType=_dereq_(\"../util/get_type\"),parseCSSColor=_dereq_(\"csscolorparser\").parseCSSColor;module.exports=function(r){var e=r.key,o=r.value,t=getType(o);return\"string\"!==t?[new ValidationError(e,o,\"color expected, %s found\",t)]:null===parseCSSColor(o)?[new ValidationError(e,o,'color expected, \"%s\" found',o)]:[]};\n},{\"../error/validation_error\":109,\"../util/get_type\":126,\"csscolorparser\":114}],135:[function(_dereq_,module,exports){\n\"use strict\";var ValidationError=_dereq_(\"../error/validation_error\"),getType=_dereq_(\"../util/get_type\");module.exports=function(r){var e=r.key,t=r.value;if(r.styleSpec.$version>7)return t?[new ValidationError(e,t,\"constants have been deprecated as of v8\")]:[];var a=getType(t);if(\"object\"!==a)return[new ValidationError(e,t,\"object expected, %s found\",a)];var o=[];for(var n in t)\"@\"!==n[0]&&o.push(new ValidationError(e+\".\"+n,t[n],'constants must start with \"@\"'));return o};\n},{\"../error/validation_error\":109,\"../util/get_type\":126}],136:[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)?-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};\n},{\"../error/validation_error\":109,\"../util/unbundle_jsonlint\":130}],137:[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&&\"string\"!==(t=getType(a[1]))&&s.push(new ValidationError(n+\"[1]\",a[1],\"string expected, %s found\",t));for(var o=2;o<a.length;o++)t=getType(a[o]),\"$type\"===unbundle(a[1])?s=s.concat(validateEnum({key:n+\"[\"+o+\"]\",value:a[o],valueSpec:l.geometry_type,style:r.style,styleSpec:r.styleSpec})):\"string\"!==t&&\"number\"!==t&&\"boolean\"!==t&&s.push(new ValidationError(n+\"[\"+o+\"]\",a[o],\"string, number, or boolean expected, %s found\",t));break;case\"any\":case\"all\":case\"none\":for(var i=1;i<a.length;i++)s=s.concat(e({key:n+\"[\"+i+\"]\",value:a[i],style:r.style,styleSpec:r.styleSpec}));break;case\"has\":case\"!has\":t=getType(a[1]),2!==a.length?s.push(new ValidationError(n,a,'filter array for \"%s\" operator must have 2 elements',a[0])):\"string\"!==t&&s.push(new ValidationError(n+\"[1]\",a[1],\"string expected, %s found\",t))}return s};\n},{\"../error/validation_error\":109,\"../util/get_type\":126,\"../util/unbundle_jsonlint\":130,\"./validate_enum\":136}],138:[function(_dereq_,module,exports){\n\"use strict\";var ValidationError=_dereq_(\"../error/validation_error\"),getType=_dereq_(\"../util/get_type\"),validate=_dereq_(\"./validate\"),validateObject=_dereq_(\"./validate_object\"),validateArray=_dereq_(\"./validate_array\"),validateNumber=_dereq_(\"./validate_number\"),unbundle=_dereq_(\"../util/unbundle_jsonlint\");module.exports=function(e){function t(e){if(\"identity\"===p)return[new ValidationError(e.key,e.value,'identity function may not have a \"stops\" property')];var t=[],a=e.value;return t=t.concat(validateArray({key:e.key,value:a,valueSpec:e.valueSpec,style:e.style,styleSpec:e.styleSpec,arrayElementValidator:r})),\"array\"===getType(a)&&0===a.length&&t.push(new ValidationError(e.key,a,\"array must have at least one stop\")),t}function r(e){var t=[],r=e.value,o=e.key;if(\"array\"!==getType(r))return[new ValidationError(o,r,\"array expected, %s found\",getType(r))];if(2!==r.length)return[new ValidationError(o,r,\"array length %d expected, length %d found\",2,r.length)];if(c){if(\"object\"!==getType(r[0]))return[new ValidationError(o,r,\"object expected, %s found\",getType(r[0]))];if(void 0===r[0].zoom)return[new ValidationError(o,r,\"object stop key must have zoom\")];if(void 0===r[0].value)return[new ValidationError(o,r,\"object stop key must have value\")];if(l&&l>unbundle(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?\"categorical\"!==p&&\"number\"===t&&void 0!==i&&r<i?[new ValidationError(e.key,e.value,\"stop domain values must appear in ascending order\")]:(i=r,\"categorical\"===p&&r in s?[new ValidationError(e.key,e.value,\"stop domain values must be unique\")]:(s[r]=!0,[])):[new ValidationError(e.key,e.value,\"integer expected, found %s\",r)]}function o(e){return validate({key:e.key,value:e.value,valueSpec:u,style:e.style,styleSpec:e.styleSpec})}var n,i,l,u=e.valueSpec,p=unbundle(e.value.type),s={},y=\"categorical\"!==p&&void 0===e.value.property,d=!y,c=\"array\"===getType(e.value.stops)&&\"array\"===getType(e.value.stops[0])&&\"object\"===getType(e.value.stops[0][0]),v=validateObject({key:e.key,value:e.value,valueSpec:e.styleSpec.function,style:e.style,styleSpec:e.styleSpec,objectElementValidators:{stops:t,default:o}});return\"identity\"===p&&y&&v.push(new ValidationError(e.key,e.value,'missing required property \"property\"')),\"identity\"===p||e.value.stops||v.push(new ValidationError(e.key,e.value,'missing required property \"stops\"')),\"exponential\"===p&&\"piecewise-constant\"===e.valueSpec.function&&v.push(new ValidationError(e.key,e.value,\"exponential functions not supported\")),e.styleSpec.$version>=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\":109,\"../util/get_type\":126,\"../util/unbundle_jsonlint\":130,\"./validate\":131,\"./validate_array\":132,\"./validate_number\":143,\"./validate_object\":144}],139:[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:(-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)};\n},{\"../error/validation_error\":109,\"./validate_string\":148}],140:[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;s<e.arrayIndex;s++){var d=i.layers[s];unbundle(d.id)===o&&r.push(new ValidationError(a,t.id,'duplicate layer id \"%s\", previously used at line %d',t.id,d.id.__line__))}if(\"ref\"in t){[\"type\",\"source\",\"source-layer\",\"filter\",\"layout\"].forEach(function(e){e in t&&r.push(new ValidationError(a,t[e],'\"%s\" is prohibited for ref layers',e))});var y;i.layers.forEach(function(e){unbundle(e.id)===n&&(y=e)}),y?y.ref?r.push(new ValidationError(a,t.ref,\"ref cannot reference another ref layer\")):u=unbundle(y.type):r.push(new ValidationError(a,t.ref,'ref layer \"%s\" not found',n))}else if(\"background\"!==u)if(t.source){var c=i.sources&&i.sources[t.source],p=c&&unbundle(c.type);c?\"vector\"===p&&\"raster\"===u?r.push(new ValidationError(a,t.source,'layer \"%s\" requires a raster source',t.id)):\"raster\"===p&&\"raster\"!==u?r.push(new ValidationError(a,t.source,'layer \"%s\" requires a vector source',t.id)):\"vector\"!==p||t[\"source-layer\"]||r.push(new ValidationError(a,t,'layer \"%s\" must specify a \"source-layer\"',t.id)):r.push(new ValidationError(a,t.source,'source \"%s\" not found',t.source))}else r.push(new ValidationError(a,t,'missing required property \"source\"'));return r=r.concat(validateObject({key:a,value:t,valueSpec:l.layer,style:e.style,styleSpec:e.styleSpec,objectElementValidators:{\"*\":function(){return[]},filter:validateFilter,layout:function(e){return validateObject({layer:t,key:e.key,value:e.value,style:e.style,styleSpec:e.styleSpec,objectElementValidators:{\"*\":function(e){return validateLayoutProperty(extend({layerType:u},e))}}})},paint:function(e){return validateObject({layer:t,key:e.key,value:e.value,style:e.style,styleSpec:e.styleSpec,objectElementValidators:{\"*\":function(e){return validatePaintProperty(extend({layerType:u},e))}}})}}}))};\n},{\"../error/validation_error\":109,\"../util/extend\":125,\"../util/unbundle_jsonlint\":130,\"./validate_filter\":137,\"./validate_layout_property\":141,\"./validate_object\":144,\"./validate_paint_property\":145}],141:[function(_dereq_,module,exports){\n\"use strict\";var validateProperty=_dereq_(\"./validate_property\");module.exports=function(r){return validateProperty(r,\"layout\")};\n},{\"./validate_property\":146}],142:[function(_dereq_,module,exports){\n\"use strict\";var ValidationError=_dereq_(\"../error/validation_error\"),getType=_dereq_(\"../util/get_type\"),validate=_dereq_(\"./validate\");module.exports=function(e){var t=e.value,r=e.styleSpec,a=r.light,i=e.style,n=[],o=getType(t);if(void 0===t)return n;if(\"object\"!==o)return n=n.concat([new ValidationError(\"light\",t,\"object expected, %s found\",o)]);for(var l in t){var c=l.match(/^(.*)-transition$/);n=c&&a[c[1]]&&a[c[1]].transition?n.concat(validate({key:l,value:t[l],valueSpec:r.transition,style:i,styleSpec:r})):a[l]?n.concat(validate({key:l,value:t[l],valueSpec:a[l],style:i,styleSpec:r})):n.concat([new ValidationError(l,t[l],'unknown property \"%s\"',l)])}return n};\n},{\"../error/validation_error\":109,\"../util/get_type\":126,\"./validate\":131}],143:[function(_dereq_,module,exports){\n\"use strict\";var getType=_dereq_(\"../util/get_type\"),ValidationError=_dereq_(\"../error/validation_error\");module.exports=function(e){var r=e.key,i=e.value,m=e.valueSpec,a=getType(i);return\"number\"!==a?[new ValidationError(r,i,\"number expected, %s found\",a)]:\"minimum\"in m&&i<m.minimum?[new ValidationError(r,i,\"%s is less than the minimum value %s\",i,m.minimum)]:\"maximum\"in m&&i>m.maximum?[new ValidationError(r,i,\"%s is greater than the maximum value %s\",i,m.maximum)]:[]};\n},{\"../error/validation_error\":109,\"../util/get_type\":126}],144:[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\":109,\"../util/get_type\":126,\"./validate\":131}],145:[function(_dereq_,module,exports){\n\"use strict\";var validateProperty=_dereq_(\"./validate_property\");module.exports=function(r){return validateProperty(r,\"paint\")};\n},{\"./validate_property\":146}],146:[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\":109,\"../util/get_type\":126,\"./validate\":131}],147:[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\":109,\"../util/unbundle_jsonlint\":130,\"./validate_enum\":136,\"./validate_object\":144}],148:[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\":109,\"../util/get_type\":126}],149:[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\":123,\"./validate/validate\":131,\"./validate/validate_constants\":135,\"./validate/validate_filter\":137,\"./validate/validate_glyphs_url\":139,\"./validate/validate_layer\":140,\"./validate/validate_layout_property\":141,\"./validate/validate_light\":142,\"./validate/validate_paint_property\":145,\"./validate/validate_source\":147}],150:[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},{}],151:[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\",properties=[\"anchor\",\"color\",\"position\",\"intensity\"],specifications=styleSpec.light,Light=function(t){function i(i){t.call(this),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:specifications.anchor.default,color:specifications.color.default,position:specifications.position.default,intensity:specifications.intensity.default},t);for(var e=0,o=properties;e<o.length;e+=1){var n=o[e];i._declarations[n]=new StyleDeclaration(specifications[n],t[n])}return this}},i.prototype.getLight=function(){return{anchor:this.getLightProperty(\"anchor\"),color:this.getLightProperty(\"color\"),position:this.getLightProperty(\"position\"),intensity:this.getLightProperty(\"intensity\")}},i.prototype.getLightProperty=function(t){return util.endsWith(t,TRANSITION_SUFFIX)?this._transitionOptions[t]:this._declarations[t]&&this._declarations[t].value},i.prototype.getLightValue=function(t,i){if(\"position\"===t){var e=this._transitions[t].calculate(i),o=util.sphericalToCartesian(e);return{x:o[0],y:o[1],z:o[2]}}return this._transitions[t].calculate(i)},i.prototype.setLight=function(t){var i=this;if(!this._validate(validateStyle.light,t))for(var e in t){var o=t[e];util.endsWith(e,TRANSITION_SUFFIX)?i._transitionOptions[e]=o:null===o||void 0===o?delete i._declarations[e]:i._declarations[e]=new StyleDeclaration(specifications[e],o)}},i.prototype.recalculate=function(t){var i=this;for(var e in i._declarations)i.calculated[e]=i.getLightValue(e,{zoom:t})},i.prototype._applyLightDeclaration=function(t,i,e,o,n){var r=e.transition?this._transitions[t]:void 0,a=specifications[t];if(null!==i&&void 0!==i||(i=new StyleDeclaration(a,a.default)),!r||r.declaration.json!==i.json){var s=util.extend({duration:300,delay:0},o,this.getLightProperty(t+TRANSITION_SUFFIX)),l=this._transitions[t]=new StyleTransition(a,i,r,s);l.instant()||(l.loopID=n.set(l.endTime-Date.now())),r&&n.cancel(r.loopID)}},i.prototype.updateLightTransitions=function(t,i,e){var o,n=this;for(o in n._declarations)n._applyLightDeclaration(o,n._declarations[o],t,i,e)},i.prototype._validate=function(t,i){return validateStyle.emitErrors(this,t.call(validateStyle,util.extend({value:i,style:{glyphs:!0,sprite:!0},styleSpec:styleSpec})))},i}(Evented);module.exports=Light;\n},{\"../style-spec/reference/latest\":123,\"../util/evented\":210,\"../util/util\":223,\"./style_declaration\":157,\"./style_transition\":165,\"./validate_style\":166}],152:[function(_dereq_,module,exports){\n\"use strict\";var ref=_dereq_(\"../util/mapbox\"),normalizeGlyphsURL=ref.normalizeGlyphsURL,ajax=_dereq_(\"../util/ajax\"),parseGlyphPBF=_dereq_(\"./parse_glyph_pbf\");module.exports=function(e,r,a,l,p){var i=256*r,s=i+255,t=l(normalizeGlyphsURL(a).replace(\"{fontstack}\",e).replace(\"{range}\",i+\"-\"+s),ajax.ResourceType.Glyphs);ajax.getArrayBuffer(t,function(e,r){if(e)p(e);else if(r){for(var a={},l=0,i=parseGlyphPBF(r.data);l<i.length;l+=1){var s=i[l];a[s.id]=s}p(null,a)}})};\n},{\"../util/ajax\":201,\"../util/mapbox\":217,\"./parse_glyph_pbf\":154}],153:[function(_dereq_,module,exports){\n\"use strict\";var ajax=_dereq_(\"../util/ajax\"),browser=_dereq_(\"../util/browser\"),ref=_dereq_(\"../util/mapbox\"),normalizeSpriteURL=ref.normalizeSpriteURL,ref$1=_dereq_(\"../util/image\"),RGBAImage=ref$1.RGBAImage;module.exports=function(e,r,i){function a(){if(u)i(u);else if(t&&o){var e=browser.getImageData(o),r={};for(var a in t){var n=t[a],l=n.width,g=n.height,x=n.x,f=n.y,m=n.sdf,p=n.pixelRatio,s=RGBAImage.create({width:l,height:g});RGBAImage.copy(e,s,{x:x,y:f},{x:0,y:0},{width:l,height:g}),r[a]={data:s,pixelRatio:p,sdf:m}}i(null,r)}}if(!e)return void i(null,{});var t,o,u,n=browser.devicePixelRatio>1?\"@2x\":\"\";ajax.getJSON(r(normalizeSpriteURL(e,n,\".json\"),ajax.ResourceType.SpriteJSON),function(e,r){u||(u=e,t=r,a())}),ajax.getImage(r(normalizeSpriteURL(e,n,\".png\"),ajax.ResourceType.SpriteImage),function(e,r){u||(u=e,o=r,a())})};\n},{\"../util/ajax\":201,\"../util/browser\":202,\"../util/image\":213,\"../util/mapbox\":217}],154:[function(_dereq_,module,exports){\n\"use strict\";function readFontstacks(e,a,r){1===e&&r.readMessage(readFontstack,a)}function readFontstack(e,a,r){if(3===e){var t=r.readMessage(readGlyph,{}),d=t.id,i=t.bitmap,n=t.width,o=t.height,h=t.left,s=t.top,p=t.advance;a.push({id:d,bitmap:AlphaImage.create({width:n+2*border,height:o+2*border},i),metrics:{width:n,height:o,left:h,top:s,advance:p}})}}function readGlyph(e,a,r){1===e?a.id=r.readVarint():2===e?a.bitmap=r.readBytes():3===e?a.width=r.readVarint():4===e?a.height=r.readVarint():5===e?a.left=r.readSVarint():6===e?a.top=r.readSVarint():7===e&&(a.advance=r.readVarint())}var ref=_dereq_(\"../util/image\"),AlphaImage=ref.AlphaImage,Protobuf=_dereq_(\"pbf\"),border=3;module.exports=function(e){return new Protobuf(e).readFields(readFontstacks,[])},module.exports.GLYPH_PBF_BORDER=border;\n},{\"../util/image\":213,\"pbf\":29}],155:[function(_dereq_,module,exports){\n\"use strict\";function getMaximumPaintValue(t,a,e){return a.isPaintValueFeatureConstant(t)?a.paint[t]:e.programConfigurations.get(a.id).paintPropertyStatistics[t].max}function translateDistance(t){return Math.sqrt(t[0]*t[0]+t[1]*t[1])}function translate(t,a,e,n,r){if(!a[0]&&!a[1])return t;var i=Point.convert(a);\"viewport\"===e&&i._rotate(-n);for(var u=[],s=0;s<t.length;s++){for(var o=t[s],l=[],m=0;m<o.length;m++)l.push(o[m].sub(i._mult(r)));u.push(l)}return u}var Point=_dereq_(\"@mapbox/point-geometry\");module.exports={getMaximumPaintValue:getMaximumPaintValue,translateDistance:translateDistance,translate:translate};\n},{\"@mapbox/point-geometry\":2}],156:[function(_dereq_,module,exports){\n\"use strict\";var Evented=_dereq_(\"../util/evented\"),StyleLayer=_dereq_(\"./style_layer\"),loadSprite=_dereq_(\"./load_sprite\"),ImageManager=_dereq_(\"../render/image_manager\"),GlyphManager=_dereq_(\"../render/glyph_manager\"),Light=_dereq_(\"./light\"),LineAtlas=_dereq_(\"../render/line_atlas\"),util=_dereq_(\"../util/util\"),ajax=_dereq_(\"../util/ajax\"),mapbox=_dereq_(\"../util/mapbox\"),browser=_dereq_(\"../util/browser\"),Dispatcher=_dereq_(\"../util/dispatcher\"),AnimationLoop=_dereq_(\"./animation_loop\"),validateStyle=_dereq_(\"./validate_style\"),getSourceType=_dereq_(\"../source/source\").getType,setSourceType=_dereq_(\"../source/source\").setType,QueryFeatures=_dereq_(\"../source/query_features\"),SourceCache=_dereq_(\"../source/source_cache\"),styleSpec=_dereq_(\"../style-spec/reference/latest\"),MapboxGLFunction=_dereq_(\"../style-spec/function\"),getWorkerPool=_dereq_(\"../util/global_worker_pool\"),deref=_dereq_(\"../style-spec/deref\"),diff=_dereq_(\"../style-spec/diff\"),rtlTextPlugin=_dereq_(\"../source/rtl_text_plugin\"),supportedDiffOperations=util.pick(diff.operations,[\"addLayer\",\"removeLayer\",\"setPaintProperty\",\"setLayoutProperty\",\"setFilter\",\"addSource\",\"removeSource\",\"setLayerZoomRange\",\"setLight\",\"setTransition\"]),ignoredDiffOperations=util.pick(diff.operations,[\"setCenter\",\"setZoom\",\"setBearing\",\"setPitch\"]),Style=function(e){function t(t,r,a){var i=this;e.call(this),a=util.extend({validate:\"string\"!=typeof t||!mapbox.isMapboxURL(t)},a);var o=function(e,t){return i.map?i.map._transformRequest(e,t):{url:e}};this.map=r,this.animationLoop=r&&r.animationLoop||new AnimationLoop,this.dispatcher=new Dispatcher(getWorkerPool(),this),this.imageManager=new ImageManager,this.glyphManager=new GlyphManager(o,a.localIdeographFontFamily),this.lineAtlas=new LineAtlas(256,512),this._layers={},this._order=[],this.sourceCaches={},this.zoomHistory={},this._loaded=!1,util.bindAll([\"_redoPlacement\"],this),this._resetUpdates(),this.setEventedParent(r),this.fire(\"dataloading\",{dataType:\"style\"});var s=this;this._rtlTextPluginCallback=rtlTextPlugin.registerForPluginAvailability(function(e){s.dispatcher.broadcast(\"loadRTLTextPlugin\",e.pluginBlobURL,e.errorCallback);for(var t in s.sourceCaches)s.sourceCaches[t].reload()});var n=function(e,t){if(e)i.fire(\"error\",{error:e});else if(t){if(a.validate&&validateStyle.emitErrors(i,validateStyle(t)))return;i._loaded=!0,i.stylesheet=t,i.updateClasses();for(var r in t.sources)i.addSource(r,t.sources[r],a);loadSprite(t.sprite,o,function(e,t){if(e)i.fire(\"error\",e);else if(t)for(var r in t)i.imageManager.addImage(r,t[r]);i.imageManager.setLoaded(!0)}),i.glyphManager.setURL(t.glyphs),i._resolve(),i.fire(\"data\",{dataType:\"style\"}),i.fire(\"style.load\")}};\"string\"==typeof t?ajax.getJSON(o(mapbox.normalizeStyleURL(t),ajax.ResourceType.Style),n):browser.frame(function(){return n(null,t)}),this.on(\"data\",function(e){if(\"source\"===e.dataType&&\"metadata\"===e.sourceDataType){var t=i.sourceCaches[e.sourceId];if(t){var r=t.getSource();if(r&&r.vectorLayerIds)for(var a in i._layers){var o=i._layers[a];o.source===r.id&&i._validateLayer(o)}}}})}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype._validateLayer=function(e){var t=this.sourceCaches[e.source];if(t){var r=e.sourceLayer;if(r){var a=t.getSource();(\"geojson\"===a.type||a.vectorLayerIds&&-1===a.vectorLayerIds.indexOf(r))&&this.fire(\"error\",{error:new Error('Source layer \"'+r+'\" does not exist on source \"'+a.id+'\" as specified by style layer \"'+e.id+'\"')})}}},t.prototype.loaded=function(){var e=this;if(!this._loaded)return!1;if(Object.keys(this._updatedSources).length)return!1;for(var t in e.sourceCaches)if(!e.sourceCaches[t].loaded())return!1;return!!this.imageManager.isLoaded()},t.prototype._resolve=function(){var e=this,t=deref(this.stylesheet.layers);this._order=t.map(function(e){return e.id}),this._layers={};for(var r=0,a=t;r<a.length;r+=1){var i=a[r];i=StyleLayer.create(i),i.setEventedParent(e,{layer:{id:i.id}}),e._layers[i.id]=i}this.dispatcher.broadcast(\"setLayers\",this._serializeLayers(this._order)),this.light=new Light(this.stylesheet.light)},t.prototype._serializeLayers=function(e){var t=this;return e.map(function(e){return t._layers[e].serialize()})},t.prototype._applyClasses=function(e,t){var r=this;if(this._loaded){e=e||[],t=t||{transition:!0};var a=this.stylesheet.transition||{},i=this._updatedAllPaintProps?this._layers:this._updatedPaintProps;for(var o in i){var s=r._layers[o],n=r._updatedPaintProps[o];if(r._updatedAllPaintProps||n.all)s.updatePaintTransitions(e,t,a,r.animationLoop,r.zoomHistory);else for(var l in n)r._layers[o].updatePaintTransition(l,e,t,a,r.animationLoop,r.zoomHistory)}this.light.updateLightTransitions(t,a,this.animationLoop)}},t.prototype._recalculate=function(e){var t=this;if(this._loaded){for(var r in t.sourceCaches)t.sourceCaches[r].used=!1;this._updateZoomHistory(e);for(var a=0,i=t._order;a<i.length;a+=1){var o=i[a],s=t._layers[o];s.recalculate(e),!s.isHidden(e)&&s.source&&(t.sourceCaches[s.source].used=!0)}this.light.recalculate(e);Math.floor(this.z)!==Math.floor(e)&&this.animationLoop.set(300),this.z=e}},t.prototype._updateZoomHistory=function(e){var t=this.zoomHistory;void 0===t.lastIntegerZoom&&(t.lastIntegerZoom=Math.floor(e),t.lastIntegerZoomTime=0,t.lastZoom=e),Math.floor(t.lastZoom)<Math.floor(e)?(t.lastIntegerZoom=Math.floor(e),t.lastIntegerZoomTime=Date.now()):Math.floor(t.lastZoom)>Math.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 a=Object.keys(this._updatedLayers),i=Object.keys(this._removedLayers);(a.length||i.length||this._updatedSymbolOrder)&&this._updateWorkerLayers(a,i);for(var o in r._updatedSources){var s=r._updatedSources[o];\"reload\"===s?r._reloadSource(o):\"clear\"===s&&r._clearSource(o)}this._applyClasses(e,t),this._resetUpdates(),this.fire(\"data\",{dataType:\"style\"})}},t.prototype._updateWorkerLayers=function(e,t){var r=this,a=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:a})},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.clone(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 a=r.filter(function(e){return!(e.command in supportedDiffOperations)});if(a.length>0)throw new Error(\"Unimplemented: \"+a.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.addImage=function(e,t){if(this.imageManager.getImage(e))return this.fire(\"error\",{error:new Error(\"An image with this name already exists.\")});this.imageManager.addImage(e,t),this.fire(\"data\",{dataType:\"style\"})},t.prototype.removeImage=function(e){if(!this.imageManager.getImage(e))return this.fire(\"error\",{error:new Error(\"No image with this name exists.\")});this.imageManager.removeImage(e),this.fire(\"data\",{dataType:\"style\"})},t.prototype.addSource=function(e,t,r){var a=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).join(\", \")+\".\");if(!([\"vector\",\"raster\",\"geojson\",\"video\",\"image\",\"canvas\"].indexOf(t.type)>=0&&this._validate(validateStyle.source,\"sources.\"+e,t,null,r))){var i=this.sourceCaches[e]=new SourceCache(e,t,this.dispatcher);i.style=this,i.setEventedParent(this,function(){return{isSourceLoaded:a.loaded(),source:i.serialize(),sourceId:e}}),i.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.fire(\"data\",{sourceDataType:\"metadata\",dataType:\"source\",sourceId: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 a=e.id;if(\"object\"==typeof e.source&&(this.addSource(a,e.source),e=util.clone(e),e=util.extend(e,{source:a})),!this._validate(validateStyle.layer,\"layers.\"+a,e,{arrayIndex:-1},r)){var i=StyleLayer.create(e);this._validateLayer(i),i.setEventedParent(this,{layer:{id:a}});var o=t?this._order.indexOf(t):this._order.length;if(this._order.splice(o,0,a),this._layers[a]=i,this._removedLayers[a]&&i.source){var s=this._removedLayers[a];delete this._removedLayers[a],s.type!==i.type?this._updatedSources[i.source]=\"clear\":(this._updatedSources[i.source]=\"reload\",this.sourceCaches[i.source].pause())}this._updateLayer(i),\"symbol\"===i.type&&(this._updatedSymbolOrder=!0),this.updateClasses(a)}},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 a=this._order.indexOf(e);this._order.splice(a,1);var i=t?this._order.indexOf(t):this._order.length;this._order.splice(i,0,e),\"symbol\"===r.type&&(this._updatedSymbolOrder=!0,r.source&&!this._updatedSources[r.source]&&(this._updatedSources[r.source]=\"reload\",this.sourceCaches[r.source].pause()))},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 a=this.getLayer(e);if(!a)return void this.fire(\"error\",{error:new Error(\"The layer '\"+e+\"' does not exist in the map's style and cannot have zoom extent.\")});a.minzoom===t&&a.maxzoom===r||(null!=t&&(a.minzoom=t),null!=r&&(a.maxzoom=r),this._updateLayer(a))},t.prototype.setFilter=function(e,t){this._checkLoaded();var r=this.getLayer(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 filtered.\")});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))},t.prototype.getFilter=function(e){return util.clone(this.getLayer(e).filter)},t.prototype.setLayoutProperty=function(e,t,r){this._checkLoaded();var a=this.getLayer(e);if(!a)return void this.fire(\"error\",{error:new Error(\"The layer '\"+e+\"' does not exist in the map's style and cannot be styled.\")});util.deepEqual(a.getLayoutProperty(t),r)||(a.setLayoutProperty(t,r),this._updateLayer(a))},t.prototype.getLayoutProperty=function(e,t){return this.getLayer(e).getLayoutProperty(t)},t.prototype.setPaintProperty=function(e,t,r,a){this._checkLoaded();var i=this.getLayer(e);if(!i)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(i.getPaintProperty(t,a),r)){var o=i.isPaintValueFeatureConstant(t);i.setPaintProperty(t,r,a);!(r&&MapboxGLFunction.isFunctionDefinition(r)&&\"$zoom\"!==r.property&&void 0!==r.property)&&o||this._updateLayer(i),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.sourceCaches[e.source].pause()),this._changed=!0},t.prototype._flattenRenderedFeatures=function(e){for(var t=this,r=[],a=this._order.length-1;a>=0;a--)for(var i=t._order[a],o=0,s=e;o<s.length;o+=1){var n=s[o],l=n[i];if(l)for(var u=0,d=l;u<d.length;u+=1){var h=d[u];r.push(h)}}return r},t.prototype.queryRenderedFeatures=function(e,t,r,a){var i=this;t&&t.filter&&this._validate(validateStyle.filter,\"queryRenderedFeatures.filter\",t.filter);var o={};if(t&&t.layers){if(!Array.isArray(t.layers))return this.fire(\"error\",{error:\"parameters.layers must be an Array.\"}),[];for(var s=0,n=t.layers;s<n.length;s+=1){var l=n[s],u=i._layers[l];if(!u)return i.fire(\"error\",{error:\"The layer '\"+l+\"' does not exist in the map's style and cannot be queried for features.\"}),[];o[u.source]=!0}}var d=[];for(var h in i.sourceCaches)if(!t.layers||o[h]){var c=QueryFeatures.rendered(i.sourceCaches[h],i._layers,e,t,r,a);d.push(c)}return this._flattenRenderedFeatures(d)},t.prototype.querySourceFeatures=function(e,t){t&&t.filter&&this._validate(validateStyle.filter,\"querySourceFeatures.filter\",t.filter);var r=this.sourceCaches[e];return r?QueryFeatures.source(r,t):[]},t.prototype.addSourceType=function(e,t,r){return getSourceType(e)?r(new Error('A source type called \"'+e+'\" already exists.')):(setSourceType(e,t),t.workerSourceURL?void this.dispatcher.broadcast(\"loadWorkerSource\",{name:e,url:t.workerSourceURL},r):r(null,null))},t.prototype.getLight=function(){return this.light.getLight()},t.prototype.setLight=function(e,t){this._checkLoaded();var r=this.light.getLight(),a=!1;for(var i in e)if(!util.deepEqual(e[i],r[i])){a=!0;break}if(a){var o=this.stylesheet.transition||{};this.light.setLight(e),this.light.updateLightTransitions(t||{transition:!0},o,this.animationLoop)}},t.prototype._validate=function(e,t,r,a,i){return(!i||!1!==i.validate)&&validateStyle.emitErrors(this,e.call(validateStyle,util.extend({key:t,style:this.serialize(),value:r,styleSpec:styleSpec},a)))},t.prototype._remove=function(){var e=this;rtlTextPlugin.evented.off(\"pluginAvailable\",this._rtlTextPluginCallback);for(var t in e.sourceCaches)e.sourceCaches[t].clearTiles();this.dispatcher.remove()},t.prototype._clearSource=function(e){this.sourceCaches[e].clearTiles()},t.prototype._reloadSource=function(e){this.sourceCaches[e].resume(),this.sourceCaches[e].reload()},t.prototype._updateSources=function(e){var t=this;for(var r in t.sourceCaches)t.sourceCaches[r].update(e)},t.prototype._redoPlacement=function(){var e=this;for(var t in e.sourceCaches)e.sourceCaches[t].redoPlacement()},t.prototype.getImages=function(e,t,r){this.imageManager.getImages(t.icons,r)},t.prototype.getGlyphs=function(e,t,r){this.glyphManager.getGlyphs(t.stacks,r)},t}(Evented);module.exports=Style;\n},{\"../render/glyph_manager\":75,\"../render/image_manager\":77,\"../render/line_atlas\":78,\"../source/query_features\":94,\"../source/rtl_text_plugin\":96,\"../source/source\":97,\"../source/source_cache\":98,\"../style-spec/deref\":107,\"../style-spec/diff\":108,\"../style-spec/function\":112,\"../style-spec/reference/latest\":123,\"../util/ajax\":201,\"../util/browser\":202,\"../util/dispatcher\":208,\"../util/evented\":210,\"../util/global_worker_pool\":212,\"../util/mapbox\":217,\"../util/util\":223,\"./animation_loop\":150,\"./light\":151,\"./load_sprite\":153,\"./style_layer\":158,\"./validate_style\":166}],157:[function(_dereq_,module,exports){\n\"use strict\";var createFunction=_dereq_(\"../style-spec/function\"),util=_dereq_(\"../util/util\"),StyleDeclaration=function(t,i){var o=this;if(this.value=util.clone(i),this.isFunction=createFunction.isFunctionDefinition(i),this.json=JSON.stringify(this.value),this.minimum=t.minimum,this.function=createFunction(this.value,t),this.isFeatureConstant=this.function.isFeatureConstant,this.isZoomConstant=this.function.isZoomConstant,this.isFeatureConstant||this.isZoomConstant){if(!this.isZoomConstant){this.stopZoomLevels=[];for(var n=0,s=o.value.stops;n<s.length;n+=1){var e=s[n];o.stopZoomLevels.indexOf(e[0])<0&&o.stopZoomLevels.push(e[0])}}}else{this.stopZoomLevels=[];for(var a=[],u=0,l=o.value.stops;u<l.length;u+=1){var r=l[u],c=r[0].zoom;o.stopZoomLevels.indexOf(c)<0&&(o.stopZoomLevels.push(c),a.push([c,a.length]))}this._functionInterpolationT=createFunction({type:\"exponential\",stops:a,base:i.base},{type:\"number\"})}};StyleDeclaration.prototype.calculate=function(t,i){var o=this.function(t&&t.zoom,i||{});return void 0!==this.minimum&&o<this.minimum?this.minimum:o},StyleDeclaration.prototype.calculateInterpolationT=function(t){return this.isFeatureConstant||this.isZoomConstant?0:this._functionInterpolationT(t&&t.zoom,{})},module.exports=StyleDeclaration;\n},{\"../style-spec/function\":112,\"../util/util\":223}],158:[function(_dereq_,module,exports){\n\"use strict\";function getDeclarationValue(t){return t.value}var util=_dereq_(\"../util/util\"),StyleTransition=_dereq_(\"./style_transition\"),StyleDeclaration=_dereq_(\"./style_declaration\"),styleSpec=_dereq_(\"../style-spec/reference/latest\"),validateStyle=_dereq_(\"./validate_style\"),parseColor=_dereq_(\"./../style-spec/util/parse_color\"),Evented=_dereq_(\"../util/evented\"),TRANSITION_SUFFIX=\"-transition\",StyleLayer=function(t){function i(i){var e=this;t.call(this),this.id=i.id,this.metadata=i.metadata,this.type=i.type,this.minzoom=i.minzoom,this.maxzoom=i.maxzoom,\"background\"!==i.type&&(this.source=i.source,this.sourceLayer=i[\"source-layer\"],this.filter=i.filter),this.paint={},this.layout={},this._paintSpecifications=styleSpec[\"paint_\"+this.type],this._layoutSpecifications=styleSpec[\"layout_\"+this.type],this._paintTransitions={},this._paintTransitionOptions={},this._paintDeclarations={},this._layoutDeclarations={},this._layoutFunctions={};var a,o,n={validate:!1};for(var r in i){var s=r.match(/^paint(?:\\.(.*))?$/);if(s){var l=s[1]||\"\";for(a in i[r])e.setPaintProperty(a,i[r][a],l,n)}}for(o in i.layout)e.setLayoutProperty(o,i.layout[o],n);for(a in e._paintSpecifications)e.paint[a]=e.getPaintValue(a);for(o in e._layoutSpecifications)e._updateLayoutValue(o)}return t&&(i.__proto__=t),i.prototype=Object.create(t&&t.prototype),i.prototype.constructor=i,i.prototype.setLayoutProperty=function(t,i,e){if(null==i)delete this._layoutDeclarations[t];else{var a=\"layers.\"+this.id+\".layout.\"+t;if(this._validate(validateStyle.layoutProperty,a,t,i,e))return;this._layoutDeclarations[t]=new StyleDeclaration(this._layoutSpecifications[t],i)}this._updateLayoutValue(t)},i.prototype.getLayoutProperty=function(t){return this._layoutDeclarations[t]&&this._layoutDeclarations[t].value},i.prototype.getLayoutValue=function(t,i,e){var a=this._layoutSpecifications[t],o=this._layoutDeclarations[t];return o?o.calculate(i,e):a.default},i.prototype.setPaintProperty=function(t,i,e,a){var o=\"layers.\"+this.id+(e?'[\"paint.'+e+'\"].':\".paint.\")+t;if(util.endsWith(t,TRANSITION_SUFFIX))if(this._paintTransitionOptions[e||\"\"]||(this._paintTransitionOptions[e||\"\"]={}),null===i||void 0===i)delete this._paintTransitionOptions[e||\"\"][t];else{if(this._validate(validateStyle.paintProperty,o,t,i,a))return;this._paintTransitionOptions[e||\"\"][t]=i}else if(this._paintDeclarations[e||\"\"]||(this._paintDeclarations[e||\"\"]={}),null===i||void 0===i)delete this._paintDeclarations[e||\"\"][t];else{if(this._validate(validateStyle.paintProperty,o,t,i,a))return;this._paintDeclarations[e||\"\"][t]=new StyleDeclaration(this._paintSpecifications[t],i)}},i.prototype.getPaintProperty=function(t,i){return i=i||\"\",util.endsWith(t,TRANSITION_SUFFIX)?this._paintTransitionOptions[i]&&this._paintTransitionOptions[i][t]:this._paintDeclarations[i]&&this._paintDeclarations[i][t]&&this._paintDeclarations[i][t].value},i.prototype.getPaintValue=function(t,i,e){var a=this._paintSpecifications[t],o=this._paintTransitions[t];return o?o.calculate(i,e):\"color\"===a.type&&a.default?parseColor(a.default):a.default},i.prototype.getPaintValueStopZoomLevels=function(t){var i=this._paintTransitions[t];return i?i.declaration.stopZoomLevels:[]},i.prototype.getLayoutValueStopZoomLevels=function(t){var i=this._layoutDeclarations[t];return i?i.stopZoomLevels:[]},i.prototype.getPaintInterpolationT=function(t,i){return this._paintTransitions[t].declaration.calculateInterpolationT(i)},i.prototype.getLayoutInterpolationT=function(t,i){return this._layoutDeclarations[t].calculateInterpolationT(i)},i.prototype.isPaintValueFeatureConstant=function(t){var i=this._paintTransitions[t];return!i||i.declaration.isFeatureConstant},i.prototype.isLayoutValueFeatureConstant=function(t){var i=this._layoutDeclarations[t];return!i||i.isFeatureConstant},i.prototype.isPaintValueZoomConstant=function(t){var i=this._paintTransitions[t];return!i||i.declaration.isZoomConstant},i.prototype.isLayoutValueZoomConstant=function(t){var i=this._layoutDeclarations[t];return!i||i.isZoomConstant},i.prototype.isHidden=function(t){return!!(this.minzoom&&t<this.minzoom)||(!!(this.maxzoom&&t>=this.maxzoom)||\"none\"===this.layout.visibility)},i.prototype.updatePaintTransitions=function(t,i,e,a,o){for(var n=this,r=util.extend({},this._paintDeclarations[\"\"]),s=0;s<t.length;s++)util.extend(r,n._paintDeclarations[t[s]]);var l;for(l in r)n._applyPaintDeclaration(l,r[l],i,e,a,o);for(l in n._paintTransitions)l in r||n._applyPaintDeclaration(l,null,i,e,a,o)},i.prototype.updatePaintTransition=function(t,i,e,a,o,n){for(var r=this,s=this._paintDeclarations[\"\"][t],l=0;l<i.length;l++){var u=r._paintDeclarations[i[l]];u&&u[t]&&(s=u[t])}this._applyPaintDeclaration(t,s,e,a,o,n)},i.prototype.recalculate=function(t){var i=this;for(var e in i._paintTransitions)i.paint[e]=i.getPaintValue(e,{zoom:t});for(var a in i._layoutFunctions)i.layout[a]=i.getLayoutValue(a,{zoom:t})},i.prototype.serialize=function(){var t=this,i={id:this.id,type:this.type,source:this.source,\"source-layer\":this.sourceLayer,metadata:this.metadata,minzoom:this.minzoom,maxzoom:this.maxzoom,filter:this.filter,layout:util.mapObject(this._layoutDeclarations,getDeclarationValue)};for(var e in t._paintDeclarations){i[\"\"===e?\"paint\":\"paint.\"+e]=util.mapObject(t._paintDeclarations[e],getDeclarationValue)}return util.filterObject(i,function(t,i){return void 0!==t&&!(\"layout\"===i&&!Object.keys(t).length)})},i.prototype._applyPaintDeclaration=function(t,i,e,a,o,n){var r=e.transition?this._paintTransitions[t]:void 0,s=this._paintSpecifications[t];if(null!==i&&void 0!==i||(i=new StyleDeclaration(s,s.default)),!r||r.declaration.json!==i.json){var l=util.extend({duration:300,delay:0},a,this.getPaintProperty(t+TRANSITION_SUFFIX)),u=this._paintTransitions[t]=new StyleTransition(s,i,r,l,n);u.instant()||(u.loopID=o.set(u.endTime-Date.now())),r&&o.cancel(r.loopID)}},i.prototype._updateLayoutValue=function(t){var i=this._layoutDeclarations[t];i&&i.isFunction?this._layoutFunctions[t]=!0:(delete this._layoutFunctions[t],this.layout[t]=this.getLayoutValue(t))},i.prototype._validate=function(t,i,e,a,o){return(!o||!1!==o.validate)&&validateStyle.emitErrors(this,t.call(validateStyle,{key:i,layerType:this.type,objectKey:e,value:a,styleSpec:styleSpec,style:{glyphs:!0,sprite:!0}}))},i.prototype.has3DPass=function(){return!1},i}(Evented);module.exports=StyleLayer;var subclasses={circle:_dereq_(\"./style_layer/circle_style_layer\"),fill:_dereq_(\"./style_layer/fill_style_layer\"),\"fill-extrusion\":_dereq_(\"./style_layer/fill_extrusion_style_layer\"),line:_dereq_(\"./style_layer/line_style_layer\"),symbol:_dereq_(\"./style_layer/symbol_style_layer\"),background:StyleLayer,raster:StyleLayer};StyleLayer.create=function(t){return new subclasses[t.type](t)};\n},{\"../style-spec/reference/latest\":123,\"../util/evented\":210,\"../util/util\":223,\"./../style-spec/util/parse_color\":128,\"./style_declaration\":157,\"./style_layer/circle_style_layer\":159,\"./style_layer/fill_extrusion_style_layer\":160,\"./style_layer/fill_style_layer\":161,\"./style_layer/line_style_layer\":162,\"./style_layer/symbol_style_layer\":163,\"./style_transition\":165,\"./validate_style\":166}],159:[function(_dereq_,module,exports){\n\"use strict\";var StyleLayer=_dereq_(\"../style_layer\"),CircleBucket=_dereq_(\"../../data/bucket/circle_bucket\"),ref=_dereq_(\"../../util/intersection_tests\"),multiPolygonIntersectsBufferedMultiPoint=ref.multiPolygonIntersectsBufferedMultiPoint,ref$1=_dereq_(\"../query_utils\"),getMaximumPaintValue=ref$1.getMaximumPaintValue,translateDistance=ref$1.translateDistance,translate=ref$1.translate,CircleStyleLayer=function(e){function t(){e.apply(this,arguments)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.createBucket=function(e){return new CircleBucket(e)},t.prototype.queryRadius=function(e){return getMaximumPaintValue(\"circle-radius\",this,e)+translateDistance(this.paint[\"circle-translate\"])},t.prototype.queryIntersectsFeature=function(e,t,r,i,a,n){var u=translate(e,this.getPaintValue(\"circle-translate\",{zoom:i},t.properties),this.getPaintValue(\"circle-translate-anchor\",{zoom:i},t.properties),a,n),l=this.getPaintValue(\"circle-radius\",{zoom:i},t.properties)*n;return multiPolygonIntersectsBufferedMultiPoint(u,r,l)},t}(StyleLayer);module.exports=CircleStyleLayer;\n},{\"../../data/bucket/circle_bucket\":43,\"../../util/intersection_tests\":214,\"../query_utils\":155,\"../style_layer\":158}],160:[function(_dereq_,module,exports){\n\"use strict\";var StyleLayer=_dereq_(\"../style_layer\"),FillExtrusionBucket=_dereq_(\"../../data/bucket/fill_extrusion_bucket\"),ref=_dereq_(\"../../util/intersection_tests\"),multiPolygonIntersectsMultiPolygon=ref.multiPolygonIntersectsMultiPolygon,ref$1=_dereq_(\"../query_utils\"),translateDistance=ref$1.translateDistance,translate=ref$1.translate,FillExtrusionStyleLayer=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.prototype.getPaintValue=function(e,r,i){var o=t.prototype.getPaintValue.call(this,e,r,i);return\"fill-extrusion-color\"===e&&o&&(o[3]=1),o},e.prototype.createBucket=function(t){return new FillExtrusionBucket(t)},e.prototype.queryRadius=function(){return translateDistance(this.paint[\"fill-extrusion-translate\"])},e.prototype.queryIntersectsFeature=function(t,e,r,i,o,n){var l=translate(t,this.getPaintValue(\"fill-extrusion-translate\",{zoom:i},e.properties),this.getPaintValue(\"fill-extrusion-translate-anchor\",{zoom:i},e.properties),o,n);return multiPolygonIntersectsMultiPolygon(l,r)},e.prototype.has3DPass=function(){return 0!==this.paint[\"fill-extrusion-opacity\"]&&\"none\"!==this.layout.visibility},e}(StyleLayer);module.exports=FillExtrusionStyleLayer;\n},{\"../../data/bucket/fill_extrusion_bucket\":45,\"../../util/intersection_tests\":214,\"../query_utils\":155,\"../style_layer\":158}],161:[function(_dereq_,module,exports){\n\"use strict\";var StyleLayer=_dereq_(\"../style_layer\"),FillBucket=_dereq_(\"../../data/bucket/fill_bucket\"),ref=_dereq_(\"../../util/intersection_tests\"),multiPolygonIntersectsMultiPolygon=ref.multiPolygonIntersectsMultiPolygon,ref$1=_dereq_(\"../query_utils\"),translateDistance=ref$1.translateDistance,translate=ref$1.translate,FillStyleLayer=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.prototype.getPaintValue=function(e,o,l){var i=this;if(\"fill-outline-color\"===e){if(void 0===this.getPaintProperty(\"fill-outline-color\"))return t.prototype.getPaintValue.call(this,\"fill-color\",o,l);for(var r=this._paintTransitions[\"fill-outline-color\"];r;){if(!(r&&r.declaration&&r.declaration.value))return t.prototype.getPaintValue.call(i,\"fill-color\",o,l);r=r.oldTransition}}return t.prototype.getPaintValue.call(this,e,o,l)},e.prototype.getPaintValueStopZoomLevels=function(e){return\"fill-outline-color\"===e&&void 0===this.getPaintProperty(\"fill-outline-color\")?t.prototype.getPaintValueStopZoomLevels.call(this,\"fill-color\"):t.prototype.getPaintValueStopZoomLevels.call(this,e)},e.prototype.getPaintInterpolationT=function(e,o){return\"fill-outline-color\"===e&&void 0===this.getPaintProperty(\"fill-outline-color\")?t.prototype.getPaintInterpolationT.call(this,\"fill-color\",o):t.prototype.getPaintInterpolationT.call(this,e,o)},e.prototype.isPaintValueFeatureConstant=function(e){return\"fill-outline-color\"===e&&void 0===this.getPaintProperty(\"fill-outline-color\")?t.prototype.isPaintValueFeatureConstant.call(this,\"fill-color\"):t.prototype.isPaintValueFeatureConstant.call(this,e)},e.prototype.isPaintValueZoomConstant=function(e){return\"fill-outline-color\"===e&&void 0===this.getPaintProperty(\"fill-outline-color\")?t.prototype.isPaintValueZoomConstant.call(this,\"fill-color\"):t.prototype.isPaintValueZoomConstant.call(this,e)},e.prototype.createBucket=function(t){return new FillBucket(t)},e.prototype.queryRadius=function(){return translateDistance(this.paint[\"fill-translate\"])},e.prototype.queryIntersectsFeature=function(t,e,o,l,i,r){var n=translate(t,this.getPaintValue(\"fill-translate\",{zoom:l},e.properties),this.getPaintValue(\"fill-translate-anchor\",{zoom:l},e.properties),i,r);return multiPolygonIntersectsMultiPolygon(n,o)},e}(StyleLayer);module.exports=FillStyleLayer;\n},{\"../../data/bucket/fill_bucket\":44,\"../../util/intersection_tests\":214,\"../query_utils\":155,\"../style_layer\":158}],162:[function(_dereq_,module,exports){\n\"use strict\";function getLineWidth(e,t){return t>0?t+2*e:e}function offsetLine(e,t){for(var i=[],r=new Point(0,0),n=0;n<e.length;n++){for(var a=e[n],u=[],o=0;o<a.length;o++){var s=a[o-1],l=a[o],p=a[o+1],f=0===o?r:l.sub(s)._unit()._perp(),c=o===a.length-1?r:p.sub(l)._unit()._perp(),y=f._add(c)._unit(),h=y.x*c.x+y.y*c.y;y._mult(1/h),u.push(y._mult(t)._add(l))}i.push(u)}return i}var Point=_dereq_(\"@mapbox/point-geometry\"),StyleLayer=_dereq_(\"../style_layer\"),LineBucket=_dereq_(\"../../data/bucket/line_bucket\"),ref=_dereq_(\"../../util/intersection_tests\"),multiPolygonIntersectsBufferedMultiLine=ref.multiPolygonIntersectsBufferedMultiLine,ref$1=_dereq_(\"../query_utils\"),getMaximumPaintValue=ref$1.getMaximumPaintValue,translateDistance=ref$1.translateDistance,translate=ref$1.translate,LineStyleLayer=function(e){function t(){e.apply(this,arguments)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.createBucket=function(e){return new LineBucket(e)},t.prototype.queryRadius=function(e){var t=e,i=getLineWidth(getMaximumPaintValue(\"line-width\",this,t),getMaximumPaintValue(\"line-gap-width\",this,t)),r=getMaximumPaintValue(\"line-offset\",this,t);return i/2+Math.abs(r)+translateDistance(this.paint[\"line-translate\"])},t.prototype.queryIntersectsFeature=function(e,t,i,r,n,a){var u=translate(e,this.getPaintValue(\"line-translate\",{zoom:r},t.properties),this.getPaintValue(\"line-translate-anchor\",{zoom:r},t.properties),n,a),o=a/2*getLineWidth(this.getPaintValue(\"line-width\",{zoom:r},t.properties),this.getPaintValue(\"line-gap-width\",{zoom:r},t.properties)),s=this.getPaintValue(\"line-offset\",{zoom:r},t.properties);return s&&(i=offsetLine(i,s*a)),multiPolygonIntersectsBufferedMultiLine(u,i,o)},t}(StyleLayer);module.exports=LineStyleLayer;\n},{\"../../data/bucket/line_bucket\":46,\"../../util/intersection_tests\":214,\"../query_utils\":155,\"../style_layer\":158,\"@mapbox/point-geometry\":2}],163:[function(_dereq_,module,exports){\n\"use strict\";var StyleLayer=_dereq_(\"../style_layer\"),SymbolBucket=_dereq_(\"../../data/bucket/symbol_bucket\"),SymbolStyleLayer=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.prototype.getLayoutValue=function(e,r,o){var n=t.prototype.getLayoutValue.call(this,e,r,o);if(\"auto\"!==n)return n;switch(e){case\"text-rotation-alignment\":case\"icon-rotation-alignment\":return\"line\"===this.getLayoutValue(\"symbol-placement\",r,o)?\"map\":\"viewport\";case\"text-pitch-alignment\":return this.getLayoutValue(\"text-rotation-alignment\",r,o);case\"icon-pitch-alignment\":return this.getLayoutValue(\"icon-rotation-alignment\",r,o);default:return n}},e.prototype.createBucket=function(t){return new SymbolBucket(t)},e.prototype.queryRadius=function(){return 0},e.prototype.queryIntersectsFeature=function(){return!1},e}(StyleLayer);module.exports=SymbolStyleLayer;\n},{\"../../data/bucket/symbol_bucket\":47,\"../style_layer\":158}],164:[function(_dereq_,module,exports){\n\"use strict\";var StyleLayer=_dereq_(\"./style_layer\"),util=_dereq_(\"../util/util\"),featureFilter=_dereq_(\"../style-spec/feature_filter\"),groupByLayout=_dereq_(\"../style-spec/group_by_layout\"),StyleLayerIndex=function(e){e&&this.replace(e)};StyleLayerIndex.prototype.replace=function(e){var r=this;this.symbolOrder=[];for(var t=0,i=e;t<i.length;t+=1){var a=i[t];\"symbol\"===a.type&&r.symbolOrder.push(a.id)}this._layerConfigs={},this._layers={},this.update(e,[])},StyleLayerIndex.prototype.update=function(e,r,t){for(var i=this,a=0,l=e;a<l.length;a+=1){var y=l[a];i._layerConfigs[y.id]=y;var s=i._layers[y.id]=StyleLayer.create(y);s.updatePaintTransitions({},{transition:!1}),s.filter=featureFilter(s.filter)}for(var o=0,u=r;o<u.length;o+=1){var n=u[o];delete i._layerConfigs[n],delete i._layers[n]}t&&(this.symbolOrder=t),this.familiesBySource={};for(var f=groupByLayout(util.values(this._layerConfigs)),p=0,d=f;p<d.length;p+=1){var h=d[p],c=h.map(function(e){return i._layers[e.id]}),v=c[0];if(!v.layout||\"none\"!==v.layout.visibility){var _=v.source||\"\",g=i.familiesBySource[_];g||(g=i.familiesBySource[_]={});var L=v.sourceLayer||\"_geojsonTileLayer\",m=g[L];m||(m=g[L]=[]),m.push(c)}}},module.exports=StyleLayerIndex;\n},{\"../style-spec/feature_filter\":110,\"../style-spec/group_by_layout\":113,\"../util/util\":223,\"./style_layer\":158}],165:[function(_dereq_,module,exports){\n\"use strict\";function interpZoomTransitioned(t,i,e){if(void 0!==t&&void 0!==i)return{from:t.to,fromScale:t.toScale,to:i.to,toScale:i.toScale,t:e}}var util=_dereq_(\"../util/util\"),interpolate=_dereq_(\"../style-spec/util/interpolate\"),fakeZoomHistory={lastIntegerZoom:0,lastIntegerZoomTime:0,lastZoom:0},StyleTransition=function(t,i,e,o,a){this.declaration=i,this.startTime=this.endTime=(new Date).getTime(),this.oldTransition=e,this.duration=o.duration||0,this.delay=o.delay||0,this.zoomTransitioned=\"piecewise-constant\"===t.function&&t.transition,this.interp=this.zoomTransitioned?interpZoomTransitioned:interpolate[t.type],this.zoomHistory=a||fakeZoomHistory,this.instant()||(this.endTime=this.startTime+this.duration+this.delay),e&&e.endTime<=this.startTime&&delete e.oldTransition};StyleTransition.prototype.instant=function(){return!this.oldTransition||!this.interp||0===this.duration&&0===this.delay},StyleTransition.prototype.calculate=function(t,i,e){var o=this._calculateTargetValue(t,i);if(this.instant())return o;if((e=e||Date.now())>=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\":127,\"../util/util\":223}],166:[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,o=e;t<o.length;t+=1){var s=o[t],i=s.message;r.fire(\"error\",{error:new Error(i)})}return!0}return!1};\n},{\"../style-spec/validate_style.min\":149}],167:[function(_dereq_,module,exports){\n\"use strict\";var Point=_dereq_(\"@mapbox/point-geometry\"),Anchor=function(t){function o(o,e,n,r){t.call(this,o,e),this.angle=n,void 0!==r&&(this.segment=r)}return t&&(o.__proto__=t),o.prototype=Object.create(t&&t.prototype),o.prototype.constructor=o,o.prototype.clone=function(){return new o(this.x,this.y,this.angle,this.segment)},o}(Point);module.exports=Anchor;\n},{\"@mapbox/point-geometry\":2}],168:[function(_dereq_,module,exports){\n\"use strict\";function checkMaxAngle(e,t,a,r,n){if(void 0===t.segment)return!0;for(var i=t,s=t.segment+1,f=0;f>-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<a/2;){var u=e[s-1],c=e[s],g=e[s+1];if(!g)return!1;var h=u.angleTo(c)-c.angleTo(g);for(h=Math.abs((h+3*Math.PI)%(2*Math.PI)-Math.PI),l.push({distance:f,angleDelta:h}),o+=h;f-l[0].distance>r;)o-=l.shift().angleDelta;if(o>n)return!1;s++,f+=c.dist(g)}return!0}module.exports=checkMaxAngle;\n},{}],169:[function(_dereq_,module,exports){\n\"use strict\";function clipLine(n,x,y,o,e){for(var r=[],t=0;t<n.length;t++)for(var i=n[t],u=void 0,d=0;d<i.length-1;d++){var P=i[d],w=i[d+1];P.x<x&&w.x<x||(P.x<x?P=new Point(x,P.y+(w.y-P.y)*((x-P.x)/(w.x-P.x)))._round():w.x<x&&(w=new Point(x,P.y+(w.y-P.y)*((x-P.x)/(w.x-P.x)))._round()),P.y<y&&w.y<y||(P.y<y?P=new Point(P.x+(w.x-P.x)*((y-P.y)/(w.y-P.y)),y)._round():w.y<y&&(w=new Point(P.x+(w.x-P.x)*((y-P.y)/(w.y-P.y)),y)._round()),P.x>=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_(\"@mapbox/point-geometry\");module.exports=clipLine;\n},{\"@mapbox/point-geometry\":2}],170:[function(_dereq_,module,exports){\n\"use strict\";var createStructArrayType=_dereq_(\"../util/struct_array\"),Point=_dereq_(\"@mapbox/point-geometry\"),CollisionBoxArray=createStructArrayType({members:[{type:\"Int16\",name:\"anchorPointX\"},{type:\"Int16\",name:\"anchorPointY\"},{type:\"Int16\",name:\"offsetX\"},{type:\"Int16\",name:\"offsetY\"},{type:\"Int16\",name:\"x1\"},{type:\"Int16\",name:\"y1\"},{type:\"Int16\",name:\"x2\"},{type:\"Int16\",name:\"y2\"},{type:\"Float32\",name:\"unadjustedMaxScale\"},{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\":220,\"@mapbox/point-geometry\":2}],171:[function(_dereq_,module,exports){\n\"use strict\";var CollisionFeature=function(t,e,i,o,a,n,s,l,r,d,u){var h=s.top*l-r,f=s.bottom*l+r,x=s.left*l-r,m=s.right*l+r;if(this.boxStartIndex=t.length,d){var _=f-h,b=m-x;if(_>0)if(_=Math.max(10*l,_),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,a,n)}else this._addLineCollisionBoxes(t,e,i,i.segment,b,_,o,a,n)}else t.emplaceBack(i.x,i.y,0,0,x,h,m,f,1/0,1/0,o,a,n,0,0,0,0,0);this.boxEndIndex=t.length};CollisionFeature.prototype._addLineCollisionBoxes=function(t,e,i,o,a,n,s,l,r){var d=n/2,u=Math.floor(a/d),h=Math.floor(u/2),f=-n/2,x=i,m=o+1,_=f,b=-a/2,v=b-a/8;do{if(--m<0){if(_>b)return;m=0;break}_-=e[m].dist(x),x=e[m]}while(_>v);for(var c=e[m].dist(e[m+1]),g=-h;g<u+h;g++){var p=g*d,C=b+p;if(p<0&&(C+=p),p>a&&(C+=p-a),!(C<_)){for(;_+c<C;){if(_+=c,++m+1>=e.length)return;c=e[m].dist(e[m+1])}var M=C-_,y=e[m],B=e[m+1],k=B.sub(y)._unit()._mult(M)._add(y)._round(),F=Math.max(Math.abs(C-f)-d/2,0),L=a/2/F;(g<0||g>=u)&&(L=Math.min(L,.99)),t.emplaceBack(k.x,k.y,k.x-i.x,k.y-i.y,-n/2,-n/2,n/2,n/2,L,L,s,l,r,0,0,0,0,0)}}},module.exports=CollisionFeature;\n},{}],172:[function(_dereq_,module,exports){\n\"use strict\";var Point=_dereq_(\"@mapbox/point-geometry\"),EXTENT=_dereq_(\"../data/extent\"),Grid=_dereq_(\"grid-index\"),intersectionTests=_dereq_(\"../util/intersection_tests\"),CollisionTile=function(e,t,i,a,r,o,n){void 0===o&&(o=new Grid(EXTENT,12,6)),void 0===n&&(n=new Grid(EXTENT,12,0)),this.angle=e,this.pitch=t,this.cameraToCenterDistance=i,this.cameraToTileDistance=a,this.grid=o,this.ignoredGrid=n,this.perspectiveRatio=1+.5*(a/i-1),this.minScale=.5/this.perspectiveRatio,this.maxScale=2/this.perspectiveRatio;var s=Math.sin(this.angle),l=Math.cos(this.angle);this.rotationMatrix=[l,-s,s,l],this.reverseRotationMatrix=[l,s,-s,l],this.yStretch=Math.max(1,a/(i*Math.cos(t/180*Math.PI))),this.collisionBoxArray=r,0===r.length&&(r.emplaceBack(),r.emplaceBack(0,0,0,0,0,-EXTENT,0,EXTENT,1/0,1/0,0,0,0,0,0,0,0,0,0),r.emplaceBack(EXTENT,0,0,0,0,-EXTENT,0,EXTENT,1/0,1/0,0,0,0,0,0,0,0,0,0),r.emplaceBack(0,0,0,0,-EXTENT,0,EXTENT,0,1/0,1/0,0,0,0,0,0,0,0,0,0),r.emplaceBack(0,EXTENT,0,0,-EXTENT,0,EXTENT,0,1/0,1/0,0,0,0,0,0,0,0,0,0)),this.tempCollisionBox=r.get(0),this.edges=[r.get(1),r.get(2),r.get(3),r.get(4)]};CollisionTile.deserialize=function(e,t){return new CollisionTile(e.angle,e.pitch,e.cameraToCenterDistance,e.cameraToTileDistance,t,new Grid(e.grid),new Grid(e.ignoredGrid))},CollisionTile.prototype.serialize=function(e){var t=this.grid.toArrayBuffer(),i=this.ignoredGrid.toArrayBuffer();return e&&(e.push(t),e.push(i)),{angle:this.angle,pitch:this.pitch,cameraToCenterDistance:this.cameraToCenterDistance,cameraToTileDistance:this.cameraToTileDistance,grid:t,ignoredGrid:i}},CollisionTile.prototype.placeCollisionFeature=function(e,t,i){for(var a=this,r=this.collisionBoxArray,o=this.minScale,n=this.rotationMatrix,s=this.yStretch,l=e.boxStartIndex;l<e.boxEndIndex;l++){var c=r.get(l),h=c.anchorPoint._matMult(n),x=h.x,m=h.y,p=x+c.x1*a.perspectiveRatio,y=m+c.y1*s*a.perspectiveRatio,g=x+c.x2*a.perspectiveRatio,d=m+c.y2*s*a.perspectiveRatio;c.bbox0=p,c.bbox1=y,c.bbox2=g,c.bbox3=d;var T=new Point(c.offsetX,c.offsetY)._matMult(n),u=T.x*T.x,v=T.y*T.y,M=v*s*s,f=Math.sqrt((u+M)/(u+v))||1;if(c.maxScale=c.unadjustedMaxScale*f,!t)for(var E=a.grid.query(p,y,g,d),S=0;S<E.length;S++){var P=r.get(E[S]),b=P.anchorPoint._matMult(n);if((o=a.getPlacementScale(o,h,c,b,P))>=a.maxScale)return o}if(i){var N=void 0;if(a.angle){var C=a.reverseRotationMatrix,w=new Point(c.x1,c.y1).matMult(C),X=new Point(c.x2,c.y1).matMult(C),B=new Point(c.x1,c.y2).matMult(C),G=new Point(c.x2,c.y2).matMult(C);N=a.tempCollisionBox,N.anchorPointX=c.anchorPoint.x,N.anchorPointY=c.anchorPoint.y,N.x1=Math.min(w.x,X.x,B.x,G.x),N.y1=Math.min(w.y,X.x,B.x,G.x),N.x2=Math.max(w.x,X.x,B.x,G.x),N.y2=Math.max(w.y,X.x,B.x,G.x),N.maxScale=c.maxScale}else N=c;for(var R=0;R<this.edges.length;R++){var q=a.edges[R];if((o=a.getPlacementScale(o,c.anchorPoint,N,q.anchorPoint,q))>=a.maxScale)return o}}}return o},CollisionTile.prototype.queryRenderedSymbols=function(e,t){var i={},a=[];if(0===e.length||0===this.grid.keys.length&&0===this.ignoredGrid.keys.length)return a;for(var r=this.collisionBoxArray,o=this.rotationMatrix,n=this.yStretch,s=[],l=1/0,c=1/0,h=-1/0,x=-1/0,m=0;m<e.length;m++)for(var p=e[m],y=0;y<p.length;y++){var g=p[y].matMult(o);l=Math.min(l,g.x),c=Math.min(c,g.y),h=Math.max(h,g.x),x=Math.max(x,g.y),s.push(g)}for(var d=this.grid.query(l,c,h,x),T=this.ignoredGrid.query(l,c,h,x),u=0;u<T.length;u++)d.push(T[u]);for(var v=t/this.perspectiveRatio,M=Math.pow(2,Math.ceil(Math.log(v)/Math.LN2*10)/10),f=0;f<d.length;f++){var E=r.get(d[f]),S=E.sourceLayerIndex,P=E.featureIndex;if(void 0===i[S]&&(i[S]={}),!i[S][P]&&!(M<E.placementScale||M>E.maxScale)){var b=E.anchorPoint.matMult(o),N=b.x+E.x1/v,C=b.y+E.y1/v*n,w=b.x+E.x2/v,X=b.y+E.y2/v*n,B=[new Point(N,C),new Point(w,C),new Point(w,X),new Point(N,X)];intersectionTests.polygonIntersectsPolygon(s,B)&&(i[S][P]=!0,a.push(d[f]))}}return a},CollisionTile.prototype.getPlacementScale=function(e,t,i,a,r){var o=t.x-a.x,n=t.y-a.y,s=(r.x1-i.x2)/o,l=(r.x2-i.x1)/o,c=(r.y1-i.y2)*this.yStretch/n,h=(r.y2-i.y1)*this.yStretch/n;(isNaN(s)||isNaN(l))&&(s=l=1),(isNaN(c)||isNaN(h))&&(c=h=1);var x=Math.min(Math.max(s,l),Math.max(c,h)),m=r.maxScale,p=i.maxScale;return x>m&&(x=m),x>p&&(x=p),x>e&&x>=r.placementScale&&(e=x),e},CollisionTile.prototype.insertCollisionFeature=function(e,t,i){for(var a=this,r=i?this.ignoredGrid:this.grid,o=this.collisionBoxArray,n=e.boxStartIndex;n<e.boxEndIndex;n++){var s=o.get(n);s.placementScale=t,t<a.maxScale&&(1===a.perspectiveRatio||s.maxScale>=1)&&r.insert(n,s.bbox0,s.bbox1,s.bbox2,s.bbox3)}},module.exports=CollisionTile;\n},{\"../data/extent\":48,\"../util/intersection_tests\":214,\"@mapbox/point-geometry\":2,\"grid-index\":22}],173:[function(_dereq_,module,exports){\n\"use strict\";function getAnchors(e,r,t,n,a,l,o,i,c){var h=n?.6*l*o:0,s=Math.max(n?n.right-n.left:0,a?a.right-a.left:0),u=0===e[0].x||e[0].x===c||0===e[0].y||e[0].y===c;r-s*o<r/4&&(r=s*o+r/4);var g=2*l;return resample(e,u?r/2*i%r:(s/2+g)*o*i%r,r,h,t,s*o,u,!1,c)}function resample(e,r,t,n,a,l,o,i,c){for(var h=l/2,s=0,u=0;u<e.length-1;u++)s+=e[u].dist(e[u+1]);for(var g=0,p=r-t,x=[],f=0;f<e.length-1;f++){for(var v=e[f],m=e[f+1],y=v.dist(m),A=m.angleTo(v);p+t<g+y;){p+=t;var d=(p-g)/y,k=interpolate(v.x,m.x,d),q=interpolate(v.y,m.y,d);if(k>=0&&k<c&&q>=0&&q<c&&p-h>=0&&p+h<=s){var M=new Anchor(k,q,A,f);M._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\":127,\"../symbol/anchor\":167,\"./check_max_angle\":168}],174:[function(_dereq_,module,exports){\n\"use strict\";module.exports=function(e){function t(t){g.push(e[t]),l++}function r(e,t,r){var n=u[e];return delete u[e],u[t]=n,g[n].geometry[0].pop(),g[n].geometry[0]=g[n].geometry[0].concat(r[0]),n}function n(e,t,r){var n=i[t];return delete i[t],i[e]=n,g[n].geometry[0].shift(),g[n].geometry[0]=r[0].concat(g[n].geometry[0]),n}function o(e,t,r){var n=r?t[0][t[0].length-1]:t[0][0];return e+\":\"+n.x+\":\"+n.y}for(var i={},u={},g=[],l=0,m=0;m<e.length;m++){var y=e[m],c=y.geometry,f=y.text;if(f){var a=o(f,c),s=o(f,c,!0);if(a in u&&s in i&&u[a]!==i[s]){var v=n(a,s,c),d=r(a,s,g[v].geometry);delete i[a],delete u[s],u[o(f,g[d].geometry,!0)]=d,g[v].geometry=null}else a in u?r(a,s,c):s in i?n(a,s,c):(t(m),i[a]=l-1,u[s]=l-1)}else t(m)}return g.filter(function(e){return e.geometry})};\n},{}],175:[function(_dereq_,module,exports){\n\"use strict\";function getLabelPlaneMatrix(e,t,a,n,r){var i=mat4.identity(new Float32Array(16));return t?(mat4.identity(i),mat4.scale(i,i,[1/r,1/r,1]),a||mat4.rotateZ(i,i,n.angle)):(mat4.scale(i,i,[n.width/2,-n.height/2,1]),mat4.translate(i,i,[1,-1,0]),mat4.multiply(i,i,e)),i}function getGlCoordMatrix(e,t,a,n,r){var i=mat4.identity(new Float32Array(16));return t?(mat4.multiply(i,i,e),mat4.scale(i,i,[r,r,1]),a||mat4.rotateZ(i,i,-n.angle)):(mat4.scale(i,i,[1,-1,1]),mat4.translate(i,i,[-1,-1,0]),mat4.scale(i,i,[2/n.width,2/n.height,1])),i}function project(e,t){var a=[e.x,e.y,0,1];vec4.transformMat4(a,a,t);var n=a[3];return{point:new Point(a[0]/n,a[1]/n),signedDistanceFromCamera:n}}function isVisible(e,t,a,n){var r=e[0]/e[3],i=e[1]/e[3];return r>=-a[0]&&r<=a[0]&&i>=-a[1]&&i<=a[1]&&n.frameHistory.isVisible(t)}function updateLineLabels(e,t,a,n,r,i,o,l,s,p){var m=n?e.textSizeData:e.iconSizeData,c=symbolSize.evaluateSizeForZoom(m,a.transform,p,n),u=[256/a.width*2+1,256/a.height*2+1],y=n?e.text.dynamicLayoutVertexArray:e.icon.dynamicLayoutVertexArray;y.clear();for(var g=e.lineVertexArray,d=n?e.placedGlyphArray:e.placedIconArray,f=0;f<d.length;f++){var h=d.get(f),x=[h.anchorX,h.anchorY,0,1];if(vec4.transformMat4(x,x,t),isVisible(x,h.placementZoom,u,a)){var v=x[3],b=1+.5*(v/a.transform.cameraToCenterDistance-1),L=symbolSize.evaluateSizeForFeature(m,c,h),A=o?L*b:L/b,G=new Point(h.anchorX,h.anchorY),S=project(G,r).point,P={},D=placeGlyphsAlongLine(h,A,!1,l,t,r,i,e.glyphOffsetArray,g,y,S,G,P);(D.notEnoughRoom||D.needsFlipping&&placeGlyphsAlongLine(h,A,!0,l,t,r,i,e.glyphOffsetArray,g,y,S,G,P).notEnoughRoom)&&hideGlyphs(h.numGlyphs,y)}else hideGlyphs(h.numGlyphs,y)}n?e.text.dynamicLayoutVertexBuffer.updateData(y.serialize()):e.icon.dynamicLayoutVertexBuffer.updateData(y.serialize())}function placeGlyphsAlongLine(e,t,a,n,r,i,o,l,s,p,m,c,u){var y,g=t/24,d=e.lineOffsetX*t,f=e.lineOffsetY*t;if(e.numGlyphs>1){var h=e.glyphStartIndex+e.numGlyphs,x=l.get(e.glyphStartIndex).offsetX,v=l.get(h-1).offsetX,b=e.lineStartIndex,L=e.lineStartIndex+e.lineLength,A=placeGlyphAlongLine(g*x,d,f,a,m,c,e.segment,b,L,s,i,u);if(!A)return{notEnoughRoom:!0};var G=placeGlyphAlongLine(g*v,d,f,a,m,c,e.segment,b,L,s,i,u);if(!G)return{notEnoughRoom:!0};var S=project(A.point,o).point,P=project(G.point,o).point;if(n&&!a&&(e.vertical?S.y<P.y:S.x>P.x))return{needsFlipping:!0};y=[A];for(var D=e.glyphStartIndex+1;D<h-1;D++){var I=l.get(D);y.push(placeGlyphAlongLine(g*I.offsetX,d,f,a,m,c,e.segment,b,L,s,i,u))}y.push(G)}else{if(n&&!a){var M=project(c,r).point,j=s.get(e.lineStartIndex+e.segment+1),w=project(j,r),F=w.signedDistanceFromCamera>0?w.point:projectTruncatedLineSegment(c,new Point(j.x,j.y),M,1,r);if(e.vertical?F.y>M.y:F.x<M.x)return{needsFlipping:!0}}var z=l.get(e.glyphStartIndex),_=placeGlyphAlongLine(g*z.offsetX,d,f,a,m,c,e.segment,e.lineStartIndex,e.lineStartIndex+e.lineLength,s,i,u);if(!_)return{notEnoughRoom:!0};y=[_]}for(var V=e.placementZoom,C=0,X=y;C<X.length;C+=1){var E=X[C];addDynamicAttributes(p,E.point,E.angle,V)}return{}}function projectTruncatedLineSegment(e,t,a,n,r){var i=project(e.add(e.sub(t)._unit()),r).point,o=a.sub(i);return a.add(o._mult(n/o.mag()))}function placeGlyphAlongLine(e,t,a,n,r,i,o,l,s,p,m,c){var u=n?e-t:e+t,y=u>0?1:-1,g=0;n&&(y*=-1,g=Math.PI),y<0&&(g+=Math.PI);for(var d=y>0?l+o:l+o+1,f=r,h=r,x=0,v=0,b=Math.abs(u);x+v<=b;){if((d+=y)<l||d>=s)return null;if(h=f,void 0===(f=c[d])){var L=project(p.get(d),m);if(L.signedDistanceFromCamera>0)f=c[d]=L.point;else{f=projectTruncatedLineSegment(0===x?i:new Point(p.get(d-y).x,p.get(d-y).y),new Point(p.get(d).x,p.get(d).y),h,b-x+1,m)}}x+=v,v=h.dist(f)}var A=(b-x)/v,G=f.sub(h),S=G.mult(A)._add(h);return S._add(G._unit()._perp()._mult(a*y)),{point:S,angle:g+Math.atan2(f.y-h.y,f.x-h.x)}}function hideGlyphs(e,t){for(var a=0;a<e;a++)addDynamicAttributes(t,offscreenPoint,0,25)}var Point=_dereq_(\"@mapbox/point-geometry\"),ref=_dereq_(\"@mapbox/gl-matrix\"),mat4=ref.mat4,vec4=ref.vec4,symbolSize=_dereq_(\"./symbol_size\"),ref$1=_dereq_(\"../data/bucket/symbol_bucket\"),addDynamicAttributes=ref$1.addDynamicAttributes;module.exports={updateLineLabels:updateLineLabels,getLabelPlaneMatrix:getLabelPlaneMatrix,getGlCoordMatrix:getGlCoordMatrix};var offscreenPoint=new Point(-1/0,-1/0);\n},{\"../data/bucket/symbol_bucket\":47,\"./symbol_size\":178,\"@mapbox/gl-matrix\":1,\"@mapbox/point-geometry\":2}],176:[function(_dereq_,module,exports){\n\"use strict\";function getIconQuads(t,e,i,o,n,a,r){var u,l,d,f,c=e.image,h=i.layout,x=e.top-1/c.pixelRatio,g=e.left-1/c.pixelRatio,p=e.bottom+1/c.pixelRatio,s=e.right+1/c.pixelRatio;if(\"none\"!==h[\"icon-text-fit\"]&&n){var P=s-g,_=p-x,w=h[\"text-size\"]/24,m=n.left*w,y=n.right*w,M=n.top*w,v=n.bottom*w,R=y-m,b=v-M,G=h[\"icon-text-fit-padding\"][0],B=h[\"icon-text-fit-padding\"][1],I=h[\"icon-text-fit-padding\"][2],L=h[\"icon-text-fit-padding\"][3],Q=\"width\"===h[\"icon-text-fit\"]?.5*(b-_):0,O=\"height\"===h[\"icon-text-fit\"]?.5*(R-P):0,A=\"width\"===h[\"icon-text-fit\"]||\"both\"===h[\"icon-text-fit\"]?R:P,D=\"height\"===h[\"icon-text-fit\"]||\"both\"===h[\"icon-text-fit\"]?b:_;u=new Point(m+O-L,M+Q-G),l=new Point(m+O+B+A,M+Q-G),d=new Point(m+O+B+A,M+Q+I+D),f=new Point(m+O-L,M+Q+I+D)}else u=new Point(g,x),l=new Point(s,x),d=new Point(s,p),f=new Point(g,p);var E=i.getLayoutValue(\"icon-rotate\",a,r)*Math.PI/180;if(E){var F=Math.sin(E),H=Math.cos(E),V=[H,-F,F,H];u._matMult(V),l._matMult(V),f._matMult(V),d._matMult(V)}return[{tl:u,tr:l,bl:f,br:d,tex:{x:c.textureRect.x-1,y:c.textureRect.y-1,w:c.textureRect.w+2,h:c.textureRect.h+2},writingMode:void 0,glyphOffset:[0,0]}]}function getGlyphQuads(t,e,i,o,n,a,r){for(var u=i.getLayoutValue(\"text-rotate\",n,a)*Math.PI/180,l=i.getLayoutValue(\"text-offset\",n,a).map(function(t){return 24*t}),d=e.positionedGlyphs,f=[],c=0;c<d.length;c++){var h=d[c],x=r[h.glyph];if(x){var g=x.rect;if(g){var p=GLYPH_PBF_BORDER+1,s=x.metrics.advance/2,P=o?[h.x+s,h.y]:[0,0],_=o?[0,0]:[h.x+s+l[0],h.y+l[1]],w=x.metrics.left-p-s+_[0],m=-x.metrics.top-p+_[1],y=w+g.w,M=m+g.h,v=new Point(w,m),R=new Point(y,m),b=new Point(w,M),G=new Point(y,M);if(o&&h.vertical){var B=new Point(-s,s),I=-Math.PI/2,L=new Point(5,0);v._rotateAround(I,B)._add(L),R._rotateAround(I,B)._add(L),b._rotateAround(I,B)._add(L),G._rotateAround(I,B)._add(L)}if(u){var Q=Math.sin(u),O=Math.cos(u),A=[O,-Q,Q,O];v._matMult(A),R._matMult(A),b._matMult(A),G._matMult(A)}f.push({tl:v,tr:R,bl:b,br:G,tex:g,writingMode:e.writingMode,glyphOffset:P})}}}return f}var Point=_dereq_(\"@mapbox/point-geometry\"),ref=_dereq_(\"../style/parse_glyph_pbf\"),GLYPH_PBF_BORDER=ref.GLYPH_PBF_BORDER;module.exports={getIconQuads:getIconQuads,getGlyphQuads:getGlyphQuads};\n},{\"../style/parse_glyph_pbf\":154,\"@mapbox/point-geometry\":2}],177:[function(_dereq_,module,exports){\n\"use strict\";function breakLines(e,t){for(var a=[],r=0,i=0,n=t;i<n.length;i+=1){var l=n[i];a.push(e.substring(r,l)),r=l}return r<e.length&&a.push(e.substring(r,e.length)),a}function shapeText(e,t,a,r,i,n,l,c,o,s){var h=e.trim();s===WritingMode.vertical&&(h=verticalizePunctuation(h));var g,u=[],p={positionedGlyphs:u,text:h,top:c[1],bottom:c[1],left:c[0],right:c[0],writingMode:s},b=rtlTextPlugin.processBidirectionalText;return g=b?b(h,determineLineBreaks(h,l,a,t)):breakLines(h,determineLineBreaks(h,l,a,t)),shapeLines(p,t,g,r,i,n,s,l,o),!!u.length&&p}function determineAverageLineWidth(e,t,a,r){for(var i=0,n=0;n<e.length;n++){var l=r[e.charCodeAt(n)];l&&(i+=l.metrics.advance+t)}return i/Math.max(1,Math.ceil(i/a))}function calculateBadness(e,t,a,r){var i=Math.pow(e-t,2);return r?e<t?i/2:2*i:i+Math.abs(a)*a}function calculatePenalty(e,t){var a=0;return 10===e&&(a-=1e4),40!==e&&65288!==e||(a+=50),41!==t&&65289!==t||(a+=50),a}function evaluateBreak(e,t,a,r,i,n){for(var l=null,c=calculateBadness(t,a,i,n),o=0,s=r;o<s.length;o+=1){var h=s[o],g=t-h.x,u=calculateBadness(g,a,i,n)+h.badness;u<=c&&(l=h,c=u)}return{index:e,x:t,priorBreak:l,badness:c}}function leastBadBreaks(e){return e?leastBadBreaks(e.priorBreak).concat(e.index):[]}function determineLineBreaks(e,t,a,r){if(!a)return[];if(!e)return[];for(var i=[],n=determineAverageLineWidth(e,t,a,r),l=0,c=0;c<e.length;c++){var o=e.charCodeAt(c),s=r[o];s&&!whitespace[o]&&(l+=s.metrics.advance+t),c<e.length-1&&(breakable[o]||scriptDetection.charAllowsIdeographicBreaking(o))&&i.push(evaluateBreak(c+1,l,n,i,calculatePenalty(o,e.charCodeAt(c+1)),!1))}return leastBadBreaks(evaluateBreak(e.length,l,n,i,0,!0))}function getAnchorAlignment(e){var t=.5,a=.5;switch(e){case\"right\":case\"top-right\":case\"bottom-right\":t=1;break;case\"left\":case\"top-left\":case\"bottom-left\":t=0}switch(e){case\"bottom\":case\"bottom-right\":case\"bottom-left\":a=1;break;case\"top\":case\"top-right\":case\"top-left\":a=0}return{horizontalAlign:t,verticalAlign:a}}function shapeLines(e,t,a,r,i,n,l,c,o){for(var s=0,h=-17,g=0,u=e.positionedGlyphs,p=\"right\"===n?1:\"left\"===n?0:.5,b=0,v=a;b<v.length;b+=1){var d=v[b];if(d=d.trim(),d.length){for(var f=u.length,k=0;k<d.length;k++){var m=d.charCodeAt(k),x=t[m];x&&(scriptDetection.charHasUprightVerticalOrientation(m)&&l!==WritingMode.horizontal?(u.push({glyph:m,x:s,y:0,vertical:!0}),s+=o+c):(u.push({glyph:m,x:s,y:h,vertical:!1}),s+=x.metrics.advance+c))}if(u.length!==f){var A=s-c;g=Math.max(A,g),justifyLine(u,t,f,u.length-1,p)}s=0,h+=r}else h+=r}var B=getAnchorAlignment(i),y=B.horizontalAlign,w=B.verticalAlign;align(u,p,y,w,g,r,a.length);var z=a.length*r;e.top+=-w*z,e.bottom=e.top+z,e.left+=-y*g,e.right=e.left+g}function justifyLine(e,t,a,r,i){if(i){var n=t[e[r].glyph];if(n)for(var l=n.metrics.advance,c=(e[r].x+l)*i,o=a;o<=r;o++)e[o].x-=c}}function align(e,t,a,r,i,n,l){for(var c=(t-a)*i,o=(-r*l+.5)*n,s=0;s<e.length;s++)e[s].x+=c,e[s].y+=o}function shapeIcon(e,t,a){var r=getAnchorAlignment(a),i=r.horizontalAlign,n=r.verticalAlign,l=t[0],c=t[1],o=l-e.displaySize[0]*i,s=o+e.displaySize[0],h=c-e.displaySize[1]*n;return{image:e,top:h,bottom:h+e.displaySize[1],left:o,right:s}}var scriptDetection=_dereq_(\"../util/script_detection\"),verticalizePunctuation=_dereq_(\"../util/verticalize_punctuation\"),rtlTextPlugin=_dereq_(\"../source/rtl_text_plugin\"),WritingMode={horizontal:1,vertical:2};module.exports={shapeText:shapeText,shapeIcon:shapeIcon,WritingMode:WritingMode};var whitespace={};whitespace[9]=!0,whitespace[10]=!0,whitespace[11]=!0,whitespace[12]=!0,whitespace[13]=!0,whitespace[32]=!0;var breakable={};breakable[10]=!0,breakable[32]=!0,breakable[38]=!0,breakable[40]=!0,breakable[41]=!0,breakable[43]=!0,breakable[45]=!0,breakable[47]=!0,breakable[173]=!0,breakable[183]=!0,breakable[8203]=!0,breakable[8208]=!0,breakable[8211]=!0,breakable[8231]=!0;\n},{\"../source/rtl_text_plugin\":96,\"../util/script_detection\":218,\"../util/verticalize_punctuation\":225}],178:[function(_dereq_,module,exports){\n\"use strict\";function evaluateSizeForFeature(e,o,t){var i=o;return e.isFeatureConstant?i.uSize:e.isZoomConstant?t.lowerSize/10:interpolate.number(t.lowerSize/10,t.upperSize/10,i.uSizeT)}function evaluateSizeForZoom(e,o,t,i){var a={};if(e.isZoomConstant||e.isFeatureConstant)if(e.isFeatureConstant&&!e.isZoomConstant){var n;if(\"interval\"===e.functionType)n=t.getLayoutValue(i?\"text-size\":\"icon-size\",{zoom:o.zoom});else{var r=\"interval\"===e.functionType?0:interpolationFactor(o.zoom,e.functionBase,e.coveringZoomRange[0],e.coveringZoomRange[1]),u=e.coveringStopValues[0],l=e.coveringStopValues[1];n=u+(l-u)*util.clamp(r,0,1)}a.uSize=n}else e.isFeatureConstant&&e.isZoomConstant&&(a.uSize=e.layoutSize);else{var s=interpolationFactor(o.zoom,e.functionBase,e.coveringZoomRange[0],e.coveringZoomRange[1]);a.uSizeT=util.clamp(s,0,1)}return a}var interpolate=_dereq_(\"../style-spec/util/interpolate\"),ref=_dereq_(\"../style-spec/function\"),interpolationFactor=ref.interpolationFactor,util=_dereq_(\"../util/util\");module.exports={evaluateSizeForFeature:evaluateSizeForFeature,evaluateSizeForZoom:evaluateSizeForZoom};\n},{\"../style-spec/function\":112,\"../style-spec/util/interpolate\":127,\"../util/util\":223}],179:[function(_dereq_,module,exports){\n\"use strict\";var rtlTextPlugin=_dereq_(\"../source/rtl_text_plugin\");module.exports=function(e,r,t,a){var l=r.getLayoutValue(\"text-transform\",t,a);return\"uppercase\"===l?e=e.toLocaleUpperCase():\"lowercase\"===l&&(e=e.toLocaleLowerCase()),rtlTextPlugin.applyArabicShaping&&(e=rtlTextPlugin.applyArabicShaping(e)),e};\n},{\"../source/rtl_text_plugin\":96}],180:[function(_dereq_,module,exports){\n\"use strict\";var DOM=_dereq_(\"../util/dom\"),Point=_dereq_(\"@mapbox/point-geometry\"),handlers={scrollZoom:_dereq_(\"./handler/scroll_zoom\"),boxZoom:_dereq_(\"./handler/box_zoom\"),dragRotate:_dereq_(\"./handler/drag_rotate\"),dragPan:_dereq_(\"./handler/drag_pan\"),keyboard:_dereq_(\"./handler/keyboard\"),doubleClickZoom:_dereq_(\"./handler/dblclick_zoom\"),touchZoomRotate:_dereq_(\"./handler/touch_zoom_rotate\")};module.exports=function(e,t){function n(e){h(\"mouseout\",e)}function o(t){e.stop(),L=DOM.mousePos(g,t),h(\"mousedown\",t),E=!0}function r(t){var n=e.dragRotate&&e.dragRotate.isActive();p&&!n&&h(\"contextmenu\",p),p=null,E=!1,h(\"mouseup\",t)}function a(t){if(!(e.dragPan&&e.dragPan.isActive()||e.dragRotate&&e.dragRotate.isActive())){for(var n=t.toElement||t.target;n&&n!==g;)n=n.parentNode;n===g&&h(\"mousemove\",t)}}function u(t){e.stop(),f(\"touchstart\",t),!t.touches||t.touches.length>1||(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 m(e){h(\"dblclick\",e),e.preventDefault()}function v(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\",m,!1),g.addEventListener(\"contextmenu\",v,!1)};\n},{\"../util/dom\":209,\"./handler/box_zoom\":189,\"./handler/dblclick_zoom\":190,\"./handler/drag_pan\":191,\"./handler/drag_rotate\":192,\"./handler/keyboard\":193,\"./handler/scroll_zoom\":194,\"./handler/touch_zoom_rotate\":195,\"@mapbox/point-geometry\":2}],181:[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_(\"@mapbox/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())<this._bearingSnap?this.resetNorth(t,e):this},e.prototype.getPitch=function(){return this.transform.pitch},e.prototype.setPitch=function(t,e){return this.jumpTo({pitch:t},e),this},e.prototype.fitBounds=function(t,e,i){if(e=util.extend({padding:{top:0,bottom:0,right:0,left:0},offset:[0,0],maxZoom:this.transform.maxZoom},e),\"number\"==typeof e.padding){var o=e.padding;e.padding={top:o,bottom:o,right:o,left:o}}if(!util.deepEqual(Object.keys(e.padding).sort(function(t,e){return t<e?-1:t>e?1:0}),[\"bottom\",\"left\",\"right\",\"top\"]))return util.warnOnce(\"options.padding must be a positive number, or an Object with keys 'bottom', 'left', 'right', 'top'\"),this;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),m=(h.width-2*r-2*Math.abs(s.x))/c.x,f=(h.height-2*a-2*Math.abs(s.y))/c.y;return f<0||m<0?(util.warnOnce(\"Map cannot fit within canvas with the given bounds, padding, and/or offset.\"),this):(e.center=h.unproject(p.add(u).div(2)),e.zoom=Math.min(h.scaleZoom(h.scale*Math.min(m,f)),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),void 0!==t.center&&(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),!1===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),m=LngLat.convert(t.center||c);this._normalizeCenter(m);var f,g,d=o.project(c),l=o.project(m).sub(d),v=o.zoomScale(s-n);return t.around&&(f=LngLat.convert(t.around),g=o.locationPoint(f)),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)),f)o.setLocationAtPoint(f,g);else{var i=o.zoomScale(o.zoom-n),c=s>n?Math.min(2,v):Math.max(.5,v),m=Math.pow(c,1-t),b=o.unproject(d.add(l.mult(t*m)).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?util.clamp(+t.zoom,s.minZoom,s.maxZoom):h,m=\"bearing\"in t?this._normalizeBearing(t.bearing,p):p,f=\"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),Z=function(t){return n(j)/n(j+_*t)},w=function(t){return z*((n(j)*r(j+_*t)-o(j))/L)/E},P=(i(1)-j)/_;if(Math.abs(E)<1e-6||isNaN(P)){if(Math.abs(z-M)<1e-6)return this.easeTo(t,e);var q=M<z?-1:1;P=Math.abs(Math.log(M/z))/_,w=function(){return 0},Z=function(t){return Math.exp(q*_*t)}}if(\"duration\"in t)t.duration=+t.duration;else{var B=\"screenSpeed\"in t?+t.screenSpeed/_:+t.speed;t.duration=1e3*P/B}return this.zooming=!0,this.rotating=p!==m,this.pitching=f!==u,this._prepareEase(e,!1),this._ease(function(t){var i=t*P,o=1/Z(i);s.zoom=h+s.scaleZoom(o),this.rotating&&(s.bearing=interpolate(p,m,t)),this.pitching&&(s.pitch=interpolate(u,f,t));var n=s.unproject(b.add(y.mult(w(i))).mult(o));s.setLocationAtPoint(s.renderWorldCopies?n.wrap():n,d),this._fireMoveEvents(e)},function(){return a._easeToEnd(e)},t),this},e.prototype.isEasing=function(){return!!this._abortFn},e.prototype.isMoving=function(){return this.moving},e.prototype.stop=function(){return this._abortFn&&(this._abortFn(),this._finishEase()),this},e.prototype._ease=function(t,e,i){this._finishFn=e,this._abortFn=browser.timed(function(e){t.call(this,i.easing(e)),1===e&&this._finishEase()},!1===i.animate?0:i.duration,this)},e.prototype._finishEase=function(){delete this._abortFn;var t=this._finishFn;delete this._finishFn,t.call(this)},e.prototype._normalizeBearing=function(t,e){t=util.wrap(t,-180,180);var i=Math.abs(t-e);return Math.abs(t-360-e)<i&&(t-=360),Math.abs(t+360-e)<i&&(t+=360),t},e.prototype._normalizeCenter=function(t){var e=this.transform;if(e.renderWorldCopies&&!e.lngRange){var i=t.lng-e.center.lng;t.lng+=i>180?-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\":58,\"../geo/lng_lat_bounds\":59,\"../style-spec/util/interpolate\":127,\"../util/browser\":202,\"../util/evented\":210,\"../util/util\":223,\"@mapbox/point-geometry\":2}],182:[function(_dereq_,module,exports){\n\"use strict\";var DOM=_dereq_(\"../../util/dom\"),util=_dereq_(\"../../util/util\"),config=_dereq_(\"../../util/config\"),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(){DOM.remove(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(){var t=this._editLink;t||(t=this._editLink=this._container.querySelector(\".mapbox-improve-map\"));var i=[{key:\"owner\",value:this.styleOwner},{key:\"id\",value:this.styleId},{key:\"access_token\",value:config.ACCESS_TOKEN}];if(t){var o=i.reduce(function(t,o,e){return o.value&&(t+=o.key+\"=\"+o.value+(e<i.length-1?\"&\":\"\")),t},\"?\");t.href=\"https://www.mapbox.com/feedback/\"+o+(this._map._hash?this._map._hash.getHashString(!0):\"\")}},AttributionControl.prototype._updateData=function(t){t&&\"metadata\"===t.sourceDataType&&(this._updateAttributions(),this._updateEditLink())},AttributionControl.prototype._updateAttributions=function(){if(this._map.style){var t=[];if(this._map.style.stylesheet){var i=this._map.style.stylesheet;this.styleOwner=i.owner,this.styleId=i.id}var o=this._map.style.sourceCaches;for(var e in o){var n=o[e].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 e=o+1;e<t.length;e++)if(t[e].indexOf(i)>=0)return!1;return!0}),this._container.innerHTML=t.join(\" | \"),this._editLink=null}},AttributionControl.prototype._updateCompact=function(){this._map.getCanvasContainer().offsetWidth<=640?this._container.classList.add(\"mapboxgl-compact\"):this._container.classList.remove(\"mapboxgl-compact\")},module.exports=AttributionControl;\n},{\"../../util/config\":206,\"../../util/dom\":209,\"../../util/util\":223}],183:[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\"),this._className=\"mapboxgl-ctrl\"};FullscreenControl.prototype.onAdd=function(e){return this._map=e,this._mapContainer=this._map.getContainer(),this._container=DOM.create(\"div\",this._className+\" mapboxgl-ctrl-group\"),this._checkFullscreenSupport()?this._setupUI():(this._container.style.display=\"none\",util.warnOnce(\"This device does not support fullscreen mode.\")),this._container},FullscreenControl.prototype.onRemove=function(){DOM.remove(this._container),this._map=null,window.document.removeEventListener(this._fullscreenchange,this._changeIcon)},FullscreenControl.prototype._checkFullscreenSupport=function(){return!!(window.document.fullscreenEnabled||window.document.mozFullScreenEnabled||window.document.msFullscreenEnabled||window.document.webkitFullscreenEnabled)},FullscreenControl.prototype._setupUI=function(){var e=this._fullscreenButton=DOM.create(\"button\",this._className+\"-icon \"+this._className+\"-fullscreen\",this._container);e.setAttribute(\"aria-label\",\"Toggle fullscreen\"),e.type=\"button\",this._fullscreenButton.addEventListener(\"click\",this._onClickFullscreen),window.document.addEventListener(this._fullscreenchange,this._changeIcon)},FullscreenControl.prototype._isFullscreen=function(){return this._fullscreen},FullscreenControl.prototype._changeIcon=function(){(window.document.fullscreenElement||window.document.mozFullScreenElement||window.document.webkitFullscreenElement||window.document.msFullscreenElement)===this._mapContainer!==this._fullscreen&&(this._fullscreen=!this._fullscreen,this._fullscreenButton.classList.toggle(this._className+\"-shrink\"),this._fullscreenButton.classList.toggle(this._className+\"-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\":209,\"../../util/util\":223,\"../../util/window\":204}],184:[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\"),LngLat=_dereq_(\"../../geo/lng_lat\"),Marker=_dereq_(\"../marker\"),defaultOptions={positionOptions:{enableHighAccuracy:!1,timeout:6e3},fitBoundsOptions:{maxZoom:15},trackUserLocation:!1,showUserLocation:!0},className=\"mapboxgl-ctrl\",supportsGeolocation,GeolocateControl=function(t){function o(o){t.call(this),this.options=util.extend({},defaultOptions,o),util.bindAll([\"_onSuccess\",\"_onError\",\"_finish\",\"_setupUI\",\"_updateCamera\",\"_updateMarker\",\"_onClickGeolocate\"],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(){void 0!==this._geolocationWatchID&&(window.navigator.geolocation.clearWatch(this._geolocationWatchID),this._geolocationWatchID=void 0),this.options.showUserLocation&&this._userLocationDotMarker.remove(),DOM.remove(this._container),this._map=void 0},o.prototype._onSuccess=function(t){if(this.options.trackUserLocation)switch(this._lastKnownPosition=t,this._watchState){case\"WAITING_ACTIVE\":case\"ACTIVE_LOCK\":case\"ACTIVE_ERROR\":this._watchState=\"ACTIVE_LOCK\",this._geolocateButton.classList.remove(\"mapboxgl-ctrl-geolocate-waiting\"),this._geolocateButton.classList.remove(\"mapboxgl-ctrl-geolocate-active-error\"),this._geolocateButton.classList.add(\"mapboxgl-ctrl-geolocate-active\");break;case\"BACKGROUND\":case\"BACKGROUND_ERROR\":this._watchState=\"BACKGROUND\",this._geolocateButton.classList.remove(\"mapboxgl-ctrl-geolocate-waiting\"),this._geolocateButton.classList.remove(\"mapboxgl-ctrl-geolocate-background-error\"),this._geolocateButton.classList.add(\"mapboxgl-ctrl-geolocate-background\")}this.options.showUserLocation&&\"OFF\"!==this._watchState&&this._updateMarker(t),this.options.trackUserLocation&&\"ACTIVE_LOCK\"!==this._watchState||this._updateCamera(t),this.options.showUserLocation&&this._dotElement.classList.remove(\"mapboxgl-user-location-dot-stale\"),this.fire(\"geolocate\",t),this._finish()},o.prototype._updateCamera=function(t){var o=new LngLat(t.coords.longitude,t.coords.latitude),e=t.coords.accuracy;this._map.fitBounds(o.toBounds(e),this.options.fitBoundsOptions,{geolocateSource:!0})},o.prototype._updateMarker=function(t){t?this._userLocationDotMarker.setLngLat([t.coords.longitude,t.coords.latitude]).addTo(this._map):this._userLocationDotMarker.remove()},o.prototype._onError=function(t){if(this.options.trackUserLocation)if(1===t.code)this._watchState=\"OFF\",this._geolocateButton.classList.remove(\"mapboxgl-ctrl-geolocate-waiting\"),this._geolocateButton.classList.remove(\"mapboxgl-ctrl-geolocate-active\"),this._geolocateButton.classList.remove(\"mapboxgl-ctrl-geolocate-active-error\"),this._geolocateButton.classList.remove(\"mapboxgl-ctrl-geolocate-background\"),this._geolocateButton.classList.remove(\"mapboxgl-ctrl-geolocate-background-error\"),void 0!==this._geolocationWatchID&&this._clearWatch();else switch(this._watchState){case\"WAITING_ACTIVE\":this._watchState=\"ACTIVE_ERROR\",this._geolocateButton.classList.remove(\"mapboxgl-ctrl-geolocate-active\"),this._geolocateButton.classList.add(\"mapboxgl-ctrl-geolocate-active-error\");break;case\"ACTIVE_LOCK\":this._watchState=\"ACTIVE_ERROR\",this._geolocateButton.classList.remove(\"mapboxgl-ctrl-geolocate-active\"),this._geolocateButton.classList.add(\"mapboxgl-ctrl-geolocate-active-error\"),this._geolocateButton.classList.add(\"mapboxgl-ctrl-geolocate-waiting\");break;case\"BACKGROUND\":this._watchState=\"BACKGROUND_ERROR\",this._geolocateButton.classList.remove(\"mapboxgl-ctrl-geolocate-background\"),this._geolocateButton.classList.add(\"mapboxgl-ctrl-geolocate-background-error\"),this._geolocateButton.classList.add(\"mapboxgl-ctrl-geolocate-waiting\")}\"OFF\"!==this._watchState&&this.options.showUserLocation&&this._dotElement.classList.add(\"mapboxgl-user-location-dot-stale\"),this.fire(\"error\",t),this._finish()},o.prototype._finish=function(){this._timeoutId&&clearTimeout(this._timeoutId),this._timeoutId=void 0},o.prototype._setupUI=function(t){var o=this;!1!==t&&(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.trackUserLocation&&(this._geolocateButton.setAttribute(\"aria-pressed\",\"false\"),this._watchState=\"OFF\"),this.options.showUserLocation&&(this._dotElement=DOM.create(\"div\",\"mapboxgl-user-location-dot\"),this._userLocationDotMarker=new Marker(this._dotElement),this.options.trackUserLocation&&(this._watchState=\"OFF\")),this._geolocateButton.addEventListener(\"click\",this._onClickGeolocate.bind(this)),this.options.trackUserLocation&&this._map.on(\"movestart\",function(t){t.geolocateSource||\"ACTIVE_LOCK\"!==o._watchState||(o._watchState=\"BACKGROUND\",o._geolocateButton.classList.add(\"mapboxgl-ctrl-geolocate-background\"),o._geolocateButton.classList.remove(\"mapboxgl-ctrl-geolocate-active\"),o.fire(\"trackuserlocationend\"))}))},o.prototype._onClickGeolocate=function(){if(this.options.trackUserLocation){switch(this._watchState){case\"OFF\":this._watchState=\"WAITING_ACTIVE\",this.fire(\"trackuserlocationstart\");break;case\"WAITING_ACTIVE\":case\"ACTIVE_LOCK\":case\"ACTIVE_ERROR\":case\"BACKGROUND_ERROR\":this._watchState=\"OFF\",this._geolocateButton.classList.remove(\"mapboxgl-ctrl-geolocate-waiting\"),this._geolocateButton.classList.remove(\"mapboxgl-ctrl-geolocate-active\"),this._geolocateButton.classList.remove(\"mapboxgl-ctrl-geolocate-active-error\"),this._geolocateButton.classList.remove(\"mapboxgl-ctrl-geolocate-background\"),this._geolocateButton.classList.remove(\"mapboxgl-ctrl-geolocate-background-error\"),this.fire(\"trackuserlocationend\");break;case\"BACKGROUND\":this._watchState=\"ACTIVE_LOCK\",this._geolocateButton.classList.remove(\"mapboxgl-ctrl-geolocate-background\"),this._lastKnownPosition&&this._updateCamera(this._lastKnownPosition),this.fire(\"trackuserlocationstart\")}switch(this._watchState){case\"WAITING_ACTIVE\":this._geolocateButton.classList.add(\"mapboxgl-ctrl-geolocate-waiting\"),this._geolocateButton.classList.add(\"mapboxgl-ctrl-geolocate-active\");break;case\"ACTIVE_LOCK\":this._geolocateButton.classList.add(\"mapboxgl-ctrl-geolocate-active\");break;case\"ACTIVE_ERROR\":this._geolocateButton.classList.add(\"mapboxgl-ctrl-geolocate-waiting\"),this._geolocateButton.classList.add(\"mapboxgl-ctrl-geolocate-active-error\");break;case\"BACKGROUND\":this._geolocateButton.classList.add(\"mapboxgl-ctrl-geolocate-background\");break;case\"BACKGROUND_ERROR\":this._geolocateButton.classList.add(\"mapboxgl-ctrl-geolocate-waiting\"),this._geolocateButton.classList.add(\"mapboxgl-ctrl-geolocate-background-error\")}\"OFF\"===this._watchState&&void 0!==this._geolocationWatchID?this._clearWatch():void 0===this._geolocationWatchID&&(this._geolocateButton.classList.add(\"mapboxgl-ctrl-geolocate-waiting\"),this._geolocateButton.setAttribute(\"aria-pressed\",\"true\"),this._geolocationWatchID=window.navigator.geolocation.watchPosition(this._onSuccess,this._onError,this.options.positionOptions))}else window.navigator.geolocation.getCurrentPosition(this._onSuccess,this._onError,this.options.positionOptions),this._timeoutId=setTimeout(this._finish,1e4)},o.prototype._clearWatch=function(){window.navigator.geolocation.clearWatch(this._geolocationWatchID),this._geolocationWatchID=void 0,this._geolocateButton.classList.remove(\"mapboxgl-ctrl-geolocate-waiting\"),this._geolocateButton.setAttribute(\"aria-pressed\",\"false\"),this.options.showUserLocation&&this._updateMarker(null)},o}(Evented);module.exports=GeolocateControl;\n},{\"../../geo/lng_lat\":58,\"../../util/dom\":209,\"../../util/evented\":210,\"../../util/util\":223,\"../../util/window\":204,\"../marker\":198}],185:[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){this._map=o,this._container=DOM.create(\"div\",\"mapboxgl-ctrl\");var t=DOM.create(\"a\",\"mapboxgl-ctrl-logo\");return t.target=\"_blank\",t.href=\"https://www.mapbox.com/\",t.setAttribute(\"aria-label\",\"Mapbox logo\"),this._container.appendChild(t),this._container.style.display=\"none\",this._map.on(\"sourcedata\",this._updateLogo),this._updateLogo(),this._container},LogoControl.prototype.onRemove=function(){DOM.remove(this._container),this._map.off(\"sourcedata\",this._updateLogo)},LogoControl.prototype.getDefaultPosition=function(){return\"bottom-left\"},LogoControl.prototype._updateLogo=function(o){o&&\"metadata\"!==o.sourceDataType||(this._container.style.display=this._logoRequired()?\"block\":\"none\")},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;\n},{\"../../util/dom\":209,\"../../util/util\":223}],186:[function(_dereq_,module,exports){\n\"use strict\";var DOM=_dereq_(\"../../util/dom\"),util=_dereq_(\"../../util/util\"),DragRotateHandler=_dereq_(\"../handler/drag_rotate\"),NavigationControl=function(){var t=this;util.bindAll([\"_rotateCompassArrow\"],this),this._container=DOM.create(\"div\",\"mapboxgl-ctrl mapboxgl-ctrl-group\"),this._container.addEventListener(\"contextmenu\",function(t){return t.preventDefault()}),this._zoomInButton=this._createButton(\"mapboxgl-ctrl-icon mapboxgl-ctrl-zoom-in\",\"Zoom In\",function(){return t._map.zoomIn()}),this._zoomOutButton=this._createButton(\"mapboxgl-ctrl-icon mapboxgl-ctrl-zoom-out\",\"Zoom Out\",function(){return t._map.zoomOut()}),this._compass=this._createButton(\"mapboxgl-ctrl-icon mapboxgl-ctrl-compass\",\"Reset North\",function(){return t._map.resetNorth()}),this._compassArrow=DOM.create(\"span\",\"mapboxgl-ctrl-compass-arrow\",this._compass)};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._map.on(\"rotate\",this._rotateCompassArrow),this._rotateCompassArrow(),this._handler=new DragRotateHandler(t,{button:\"left\",element:this._compass,pitchWithRotate:!1}),this._handler.enable(),this._container},NavigationControl.prototype.onRemove=function(){DOM.remove(this._container),this._map.off(\"rotate\",this._rotateCompassArrow),delete this._map,this._handler.disable(),delete this._handler},NavigationControl.prototype._createButton=function(t,o,r){var e=DOM.create(\"button\",t,this._container);return e.type=\"button\",e.setAttribute(\"aria-label\",o),e.addEventListener(\"click\",r),e},module.exports=NavigationControl;\n},{\"../../util/dom\":209,\"../../util/util\":223,\"../handler/drag_rotate\":192}],187:[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 l=3.2808*a;if(l>5280){setScale(e,n,l/5280,\"mi\")}else setScale(e,n,l,\"ft\")}else if(o&&\"nautical\"===o.unit){var r=a/1852;setScale(e,n,r,\"nm\")}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=Math.PI/180,n=t.lat*o,i=e.lat*o,a=Math.sin(n)*Math.sin(i)+Math.cos(n)*Math.cos(i)*Math.cos((e.lng-t.lng)*o);return 6371e3*Math.acos(Math.min(a,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(){DOM.remove(this._container),this._map.off(\"move\",this._onMove),this._map=void 0},module.exports=ScaleControl;\n},{\"../../util/dom\":209,\"../../util/util\":223}],188:[function(_dereq_,module,exports){\n\"use strict\";\n},{}],189:[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&&(DOM.remove(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\":59,\"../../util/dom\":209,\"../../util/util\":223,\"../../util/window\":204}],190:[function(_dereq_,module,exports){\n\"use strict\";var util=_dereq_(\"../../util/util\"),DoubleClickZoomHandler=function(l){this._map=l,util.bindAll([\"_onDblClick\"],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(l){this._map.zoomTo(this._map.getZoom()+(l.originalEvent.shiftKey?-1:1),{around:l.lngLat},l)},module.exports=DoubleClickZoomHandler;\n},{\"../../util/util\":223}],191:[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;return!(!e.boxZoom||!e.boxZoom.isActive())||(!(!e.dragRotate||!e.dragRotate.isActive())||(t.touches?t.touches.length>1:!!t.ctrlKey||\"mousemove\"!==t.type&&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;\n},{\"../../util/dom\":209,\"../../util/util\":223,\"../../util/window\":204}],192:[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=e.element||t.getCanvasContainer(),this._button=e.button||\"right\",this._bearingSnap=e.bearingSnap||0,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){if(!(this._map.boxZoom&&this._map.boxZoom.isActive()||this._map.dragPan&&this._map.dragPan.isActive()||this.isActive())){if(\"right\"===this._button){var e=t.ctrlKey?0:2,i=t.button;if(void 0!==window.InstallTrigger&&2===t.button&&t.ctrlKey&&window.navigator.platform.toUpperCase().indexOf(\"MAC\")>=0&&(i=0),i!==e)return}else if(t.ctrlKey||0!==t.button)return;DOM.disableDrag(),window.document.addEventListener(\"mousemove\",this._onMove,{capture:!0}),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){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(window.document.removeEventListener(\"mousemove\",this._onMove,{capture:!0}),window.document.removeEventListener(\"mouseup\",this._onUp),window.removeEventListener(\"blur\",this._onUp),DOM.enableDrag(),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)<e._bearingSnap?i.resetNorth({noMoveStart:!0},{originalEvent:t}):(e._map.moving=!1,e._fireEvent(\"moveend\",t)),e._pitchWithRotate&&e._fireEvent(\"pitchend\",t)};if(r.length<2)return void a();var o=r[0],s=r[r.length-1],h=r[r.length-2],_=i._normalizeBearing(n,h[1]),p=s[1]-o[1],v=p<0?-1:1,d=(s[0]-o[0])/1e3;if(0===p||0===d)return void a();var l=Math.abs(p*(inertiaLinearity/d));l>inertiaMaxSpeed&&(l=inertiaMaxSpeed);var u=l/(inertiaDeceleration*inertiaLinearity);_+=v*l*(u/2),Math.abs(i._normalizeBearing(_,0))<this._bearingSnap&&(_=i._normalizeBearing(0,_)),i.rotateTo(_,{duration:1e3*u,easing:inertiaEasing,noMoveStart:!0},{originalEvent:t})}},DragRotateHandler.prototype._fireEvent=function(t,e){return this._map.fire(t,{originalEvent:e})},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;\n},{\"../../util/dom\":209,\"../../util/util\":223,\"../../util/window\":204}],193:[function(_dereq_,module,exports){\n\"use strict\";function easeOut(e){return e*(2-e)}var util=_dereq_(\"../../util/util\"),panStep=100,bearingStep=15,pitchStep=10,KeyboardHandler=function(e){this._map=e,this._el=e.getCanvasContainer(),util.bindAll([\"_onKeyDown\"],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(),l={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(l,{originalEvent:e})}},module.exports=KeyboardHandler;\n},{\"../../util/util\":223}],194:[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=-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=0;\"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\":202,\"../../util/dom\":209,\"../../util/util\":223,\"../../util/window\":204}],195:[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=10,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;Math.abs(r)>significantRotateThreshold?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();t.length>2&&e-t[0][0]>160;)t.shift()},module.exports=TouchZoomRotateHandler;\n},{\"../../util/dom\":209,\"../../util/util\":223,\"../../util/window\":204}],196:[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.getHashString=function(t){var a=this._map.getCenter(),h=Math.round(100*this._map.getZoom())/100,e=Math.max(0,Math.ceil(Math.log(h)/Math.LN2)),n=Math.round(a.lng*Math.pow(10,e))/Math.pow(10,e),o=Math.round(a.lat*Math.pow(10,e))/Math.pow(10,e),i=this._map.getBearing(),s=this._map.getPitch(),r=\"\";return r+=t?\"#/\"+n+\"/\"+o+\"/\"+h:\"#\"+h+\"/\"+o+\"/\"+n,(i||s)&&(r+=\"/\"+Math.round(10*i)/10),s&&(r+=\"/\"+Math.round(s)),r},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.getHashString();window.history.replaceState(\"\",\"\",t)},module.exports=Hash;\n},{\"../util/util\":223,\"../util/window\":204}],197:[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\"),ref=_dereq_(\"../util/window\"),HTMLImageElement=ref.HTMLImageElement,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_(\"@mapbox/point-geometry\"),AttributionControl=_dereq_(\"./control/attribution_control\"),LogoControl=_dereq_(\"./control/logo_control\"),isSupported=_dereq_(\"mapbox-gl-supported\");_dereq_(\"./events\");var 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,maxTileCacheSize:null,transformRequest:null},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 r=new Transform(e.minZoom,e.maxZoom,e.renderWorldCopies);t.call(this,r,e),this._interactive=e.interactive,this._maxTileCacheSize=e.maxTileCacheSize,this._failIfMajorPerformanceCaveat=e.failIfMajorPerformanceCaveat,this._preserveDrawingBuffer=e.preserveDrawingBuffer,this._trackResize=e.trackResize,this._bearingSnap=e.bearingSnap,this._refreshExpiredTiles=e.refreshExpiredTiles;var i=e.transformRequest;if(this._transformRequest=i?function(t,e){return i(t,e)||{url:t}}:function(t){return{url:t}},\"string\"==typeof e.container){var s=window.document.getElementById(e.container);if(!s)throw new Error(\"Container '\"+e.container+\"' not found.\");this._container=s}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,{localIdeographFontFamily:e.localIdeographFontFamily}),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),r=this._controlPositions[e];return-1!==e.indexOf(\"bottom\")?r.insertBefore(o,r.firstChild):r.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={},r=0;r<t.length;r++)\"\"!==t[r]&&(o[t[r]]=!0);return this._classes=Object.keys(o),this._classOptions=e,this.style&&this.style.updateClasses(),this._update(!0)},e.prototype.hasClass=function(t){return util.warnOnce(\"Style classes are deprecated and will be removed in an upcoming release of Mapbox GL JS.\"),this._classes.indexOf(t)>=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.getMaxBounds=function(){return this.transform.latRange&&2===this.transform.latRange.length&&this.transform.lngRange&&2===this.transform.lngRange.length?new LngLatBounds([this.transform.lngRange[0],this.transform.latRange[0]],[this.transform.lngRange[1],this.transform.latRange[1]]):null},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=null,this.transform.latRange=null,this._update());return this},e.prototype.setMinZoom=function(t){if((t=null===t||void 0===t?defaultMinZoom:t)>=defaultMinZoom&&t<=this.transform.maxZoom)return this.transform.minZoom=t,this._update(),this.getZoom()<t&&this.setZoom(t),this;throw new Error(\"minZoom must be between \"+defaultMinZoom+\" and the current maxZoom, inclusive\")},e.prototype.getMinZoom=function(){return this.transform.minZoom},e.prototype.setMaxZoom=function(t){if((t=null===t||void 0===t?defaultMaxZoom:t)>=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,r){var i=this;if(void 0===r)return t.prototype.on.call(this,e,o);var s=function(){if(\"mouseenter\"===e||\"mouseover\"===e){var t=!1;return{layer:o,listener:r,delegates:{mousemove:function(s){var n=i.getLayer(o)?i.queryRenderedFeatures(s.point,{layers:[o]}):[];n.length?t||(t=!0,r.call(i,util.extend({features:n},s,{type:e}))):t=!1},mouseout:function(){t=!1}}}}if(\"mouseleave\"===e||\"mouseout\"===e){var s=!1;return{layer:o,listener:r,delegates:{mousemove:function(t){(i.getLayer(o)?i.queryRenderedFeatures(t.point,{layers:[o]}):[]).length?s=!0:s&&(s=!1,r.call(i,util.extend({},t,{type:e})))},mouseout:function(t){s&&(s=!1,r.call(i,util.extend({},t,{type:e})))}}}}var n=function(t){var e=i.getLayer(o)?i.queryRenderedFeatures(t.point,{layers:[o]}):[];e.length&&r.call(i,util.extend({features:e},t))};return{layer:o,listener:r,delegates:(a={},a[e]=n,a)};var a}();this._delegatedListeners=this._delegatedListeners||{},this._delegatedListeners[e]=this._delegatedListeners[e]||[],this._delegatedListeners[e].push(s);for(var n in s.delegates)i.on(n,s.delegates[n]);return this},e.prototype.off=function(e,o,r){var i=this;if(void 0===r)return t.prototype.off.call(this,e,o);if(this._delegatedListeners&&this._delegatedListeners[e])for(var s=this._delegatedListeners[e],n=0;n<s.length;n++){var a=s[n];if(a.layer===o&&a.listener===r){for(var h in a.delegates)i.off(h,a.delegates[h]);return s.splice(n,1),i}}return this},e.prototype.queryRenderedFeatures=function(){for(var t=[],e=arguments.length;e--;)t[e]=arguments[e];var o,r={};return 2===t.length?(o=arguments[0],r=arguments[1]):1===t.length&&function(t){return t instanceof Point||Array.isArray(t)}(t[0])?o=t[0]:1===t.length&&(r=t[0]),this.style?this.style.queryRenderedFeatures(this._makeQueryGeometry(o),r,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;if(t instanceof Point||\"number\"==typeof t[0]){o=[Point.convert(t)]}else{var r=[Point.convert(t[0]),Point.convert(t[1])];o=[r[0],new Point(r[1].x,r[0].y),r[1],new Point(r[0].x,r[1].y),r[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){if((!e||!1!==e.diff&&!e.localIdeographFontFamily)&&this.style&&t&&!(t instanceof Style)&&\"string\"!=typeof t)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),this.off(\"move\",this.style._redoPlacement)),t?(this.style=t instanceof Style?t:new Style(t,this,e||{}),this.style.setEventedParent(this,{style:this.style}),this.on(\"rotate\",this.style._redoPlacement),this.on(\"pitch\",this.style._redoPlacement),this.on(\"move\",this.style._redoPlacement),this):(this.style=null,this)},e.prototype.getStyle=function(){if(this.style)return this.style.serialize()},e.prototype.isStyleLoaded=function(){return this.style?this.style.loaded():util.warnOnce(\"There is no style added to the map.\")},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.areTilesLoaded=function(){var t=this.style&&this.style.sourceCaches;for(var e in t){var o=t[e],r=o._tiles;for(var i in r){var s=r[i];if(\"loaded\"!==s.state&&\"errored\"!==s.state)return!1}}return!0},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){void 0===o&&(o={});var r=o.pixelRatio;void 0===r&&(r=1);var i=o.sdf;if(void 0===i&&(i=!1),e instanceof HTMLImageElement)e=browser.getImageData(e);else if(void 0===e.width||void 0===e.height)return this.fire(\"error\",{error:new Error(\"Invalid arguments to map.addImage(). The second argument must be an `HTMLImageElement`, `ImageData`, or object with `width`, `height`, and `data` properties with the same format as `ImageData`\")});this.style.addImage(t,{data:e,pixelRatio:r,sdf:i})},e.prototype.removeImage=function(t){this.style.removeImage(t)},e.prototype.loadImage=function(t,e){ajax.getImage(this._transformRequest(t,ajax.ResourceType.Image),e)},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,r){return this.style.setPaintProperty(t,e,o,r),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 r=this._controlContainer=DOM.create(\"div\",\"mapboxgl-control-container\",t),i=this._controlPositions={};[\"top-left\",\"top-right\",\"bottom-left\",\"bottom-right\"].forEach(function(t){i[t]=DOM.create(\"div\",\"mapboxgl-ctrl-\"+t,r)})},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);if(!e)return void this.fire(\"error\",{error:new Error(\"Failed to initialize WebGL\")});this.painter=new Painter(e,this.transform)},e.prototype._contextLost=function(t){t.preventDefault(),this._frameId&&(browser.cancelFrame(this._frameId),this._frameId=null),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._frameId=null,this.setStyle(null),void 0!==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\":58,\"../geo/lng_lat_bounds\":59,\"../geo/transform\":60,\"../render/painter\":79,\"../style/animation_loop\":150,\"../style/style\":156,\"../util/ajax\":201,\"../util/browser\":202,\"../util/dom\":209,\"../util/util\":223,\"../util/window\":204,\"./bind_handlers\":180,\"./camera\":181,\"./control/attribution_control\":182,\"./control/logo_control\":185,\"./events\":188,\"./hash\":196,\"@mapbox/point-geometry\":2,\"mapbox-gl-supported\":28}],198:[function(_dereq_,module,exports){\n\"use strict\";var DOM=_dereq_(\"../util/dom\"),LngLat=_dereq_(\"../geo/lng_lat\"),Point=_dereq_(\"@mapbox/point-geometry\"),smartWrap=_dereq_(\"../util/smart_wrap\"),ref=_dereq_(\"../util/util\"),bindAll=ref.bindAll,Marker=function(t,e){this._offset=Point.convert(e&&e.offset||[0,0]),bindAll([\"_update\",\"_onMapClick\"],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),delete this._map),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._pos=null,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&&(\"offset\"in t.options||(t.options.offset=this._offset),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;return t?(t.isOpen()?t.remove():t.addTo(this._map),this):this},Marker.prototype._update=function(t){this._map&&(this._map.transform.renderWorldCopies&&(this._lngLat=smartWrap(this._lngLat,this._pos,this._map.transform)),this._pos=this._map.project(this._lngLat)._add(this._offset),t&&\"moveend\"!==t.type||(this._pos=this._pos.round()),DOM.setTransform(this._element,\"translate(-50%, -50%) translate(\"+this._pos.x+\"px, \"+this._pos.y+\"px)\"))},module.exports=Marker;\n},{\"../geo/lng_lat\":58,\"../util/dom\":209,\"../util/smart_wrap\":219,\"../util/util\":223,\"@mapbox/point-geometry\":2}],199:[function(_dereq_,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(t instanceof Point||Array.isArray(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))}var util=_dereq_(\"../util/util\"),Evented=_dereq_(\"../util/evented\"),DOM=_dereq_(\"../util/dom\"),LngLat=_dereq_(\"../geo/lng_lat\"),Point=_dereq_(\"@mapbox/point-geometry\"),window=_dereq_(\"../util/window\"),smartWrap=_dereq_(\"../util/smart_wrap\"),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&&DOM.remove(this._content),this._container&&(DOM.remove(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._pos=null,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))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&&DOM.remove(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.setAttribute(\"aria-label\",\"Close popup\"),this._closeButton.innerHTML=\"&#215;\",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)),this._map.transform.renderWorldCopies&&(this._lngLat=smartWrap(this._lngLat,this._pos,this._map.transform));var t=this._pos=this._map.project(this._lngLat),o=this.options.anchor,e=normalizeOffset(this.options.offset);if(!o){var n=this._container.offsetWidth,i=this._container.offsetHeight;o=t.y+e.bottom.y<i?[\"top\"]:t.y>this._map.transform.height-i?[\"bottom\"]:[],t.x<n/2?o.push(\"left\"):t.x>this._map.transform.width-n/2&&o.push(\"right\"),o=0===o.length?\"bottom\":o.join(\"-\")}var r=t.add(e[o]).round(),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-\"+o),DOM.setTransform(this._container,s[o]+\" translate(\"+r.x+\"px,\"+r.y+\"px)\")}},o.prototype._onClickClose=function(){this.remove()},o}(Evented);module.exports=Popup;\n},{\"../geo/lng_lat\":58,\"../util/dom\":209,\"../util/evented\":210,\"../util/smart_wrap\":219,\"../util/util\":223,\"../util/window\":204,\"@mapbox/point-geometry\":2}],200:[function(_dereq_,module,exports){\n\"use strict\";var util=_dereq_(\"./util\"),Actor=function(t,e,r){this.target=t,this.parent=e,this.mapId=r,this.callbacks={},this.callbackID=0,util.bindAll([\"receive\"],this),this.target.addEventListener(\"message\",this.receive,!1)};Actor.prototype.send=function(t,e,r,a,i){var s=r?this.mapId+\":\"+this.callbackID++:null;r&&(this.callbacks[s]=r),this.target.postMessage({targetMapId:i,sourceMapId:this.mapId,type:t,id:String(s),data:e},a)},Actor.prototype.receive=function(t){var e,r=this,a=t.data,i=a.id;if(!a.targetMapId||this.mapId===a.targetMapId){var s=function(t,e,a){r.target.postMessage({sourceMapId:r.mapId,type:\"<response>\",id:String(i),error:t?String(t):null,data:e},a)};if(\"<response>\"===a.type)e=this.callbacks[a.id],delete this.callbacks[a.id],e&&a.error?e(new Error(a.error)):e&&e(null,a.data);else if(void 0!==a.id&&this.parent[a.type])this.parent[a.type](a.sourceMapId,a.data,s);else if(void 0!==a.id&&this.parent.getWorkerSource){var o=a.type.split(\".\"),p=this.parent.getWorkerSource(a.sourceMapId,o[0]);p[o[1]](a.data,s)}else this.parent[a.type](a.data)}},Actor.prototype.remove=function(){this.target.removeEventListener(\"message\",this.receive,!1)},module.exports=Actor;\n},{\"./util\":223}],201:[function(_dereq_,module,exports){\n\"use strict\";function makeRequest(e){var t=new window.XMLHttpRequest;t.open(\"GET\",e.url,!0);for(var r in e.headers)t.setRequestHeader(r,e.headers[r]);return t.withCredentials=\"include\"===e.credentials,t}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\"),ResourceType={Unknown:\"Unknown\",Style:\"Style\",Source:\"Source\",Tile:\"Tile\",Glyphs:\"Glyphs\",SpriteImage:\"SpriteImage\",SpriteJSON:\"SpriteJSON\",Image:\"Image\"};exports.ResourceType=ResourceType,\"function\"==typeof Object.freeze&&Object.freeze(ResourceType);var 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=makeRequest(e);return r.setRequestHeader(\"Accept\",\"application/json\"),r.onerror=function(){t(new Error(r.statusText))},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=makeRequest(e);return r.responseType=\"arraybuffer\",r.onerror=function(){t(new Error(r.statusText))},r.onload=function(){var e=r.response;if(0===e.byteLength&&200===r.status)return t(new Error(\"http status 200 returned without content.\"));r.status>=200&&r.status<300&&r.response?t(null,{data:e,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)t(e);else if(r){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<e.length;n++){var o=window.document.createElement(\"source\");sameOrigin(e[n])||(r.crossOrigin=\"Anonymous\"),o.src=e[n],r.appendChild(o)}return r};\n},{\"./window\":204}],202:[function(_dereq_,module,exports){\n\"use strict\";var window=_dereq_(\"./window\"),now=window.performance&&window.performance.now?window.performance.now.bind(window.performance):Date.now.bind(Date),frame=window.requestAnimationFrame||window.mozRequestAnimationFrame||window.webkitRequestAnimationFrame||window.msRequestAnimationFrame,cancel=window.cancelAnimationFrame||window.mozCancelAnimationFrame||window.webkitCancelAnimationFrame||window.msCancelAnimationFrame;module.exports={now:now,frame:function(e){return frame(e)},cancelFrame:function(e){return cancel(e)},timed:function(e,n,t){function a(){if(!i){var r=now();r>=o+n?e.call(t,1):(e.call(t,(r-o)/n),frame(a))}}if(!n)return e.call(t,1),null;var i=!1,o=now();return frame(a),function(){i=!0}},getImageData:function(e){var n=window.document.createElement(\"canvas\"),t=n.getContext(\"2d\");if(!t)throw new Error(\"failed to create canvas 2d context\");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)},hardwareConcurrency:window.navigator.hardwareConcurrency||4,get devicePixelRatio(){return window.devicePixelRatio},supportsWebp:!1};var webpImgTest=window.document.createElement(\"img\");webpImgTest.onload=function(){module.exports.supportsWebp=!0},webpImgTest.src=\"data:image/webp;base64,UklGRh4AAABXRUJQVlA4TBEAAAAvAQAAAAfQ//73v/+BiOh/AAA=\";\n},{\"./window\":204}],203:[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\":105,\"../window\":204,\"webworkify\":39}],204:[function(_dereq_,module,exports){\n\"use strict\";module.exports=self;\n},{}],205:[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;i<a;i++){var l=calculateSignedArea(e[i]);0!==l&&(e[i].area=Math.abs(l),void 0===u&&(u=l<0),u===l<0?(t&&c.push(t),t=[e[i]]):t.push(e[i]))}if(t&&c.push(t),r>1)for(var n=0;n<c.length;n++)c[n].length<=r||(quickselect(c[n],r,1,c[n].length-1,compareAreas),c[n]=c[n].slice(0,r));return c};\n},{\"./util\":223,\"quickselect\":31}],206:[function(_dereq_,module,exports){\n\"use strict\";var config={API_URL:\"https://api.mapbox.com\",REQUIRE_ACCESS_TOKEN:!0,ACCESS_TOKEN:null};module.exports=config;\n},{}],207:[function(_dereq_,module,exports){\n\"use strict\";var DictionaryCoder=function(r){var t=this;this._stringToNumber={},this._numberToString=[];for(var o=0;o<r.length;o++){var i=r[o];t._stringToNumber[i]=o,t._numberToString[o]=i}};DictionaryCoder.prototype.encode=function(r){return this._stringToNumber[r]},DictionaryCoder.prototype.decode=function(r){return this._numberToString[r]},module.exports=DictionaryCoder;\n},{}],208:[function(_dereq_,module,exports){\n\"use strict\";var util=_dereq_(\"./util\"),Actor=_dereq_(\"./actor\"),Dispatcher=function(t,r){var o=this;this.workerPool=t,this.actors=[],this.currentActor=0,this.id=util.uniqueId();for(var i=this.workerPool.acquire(this.id),e=0;e<i.length;e++){var s=i[e],c=new Actor(s,r,o.id);c.name=\"Worker \"+e,o.actors.push(c)}};Dispatcher.prototype.broadcast=function(t,r,o){o=o||function(){},util.asyncAll(this.actors,function(o,i){o.send(t,r,i)},o)},Dispatcher.prototype.send=function(t,r,o,i,e){return(\"number\"!=typeof i||isNaN(i))&&(i=this.currentActor=(this.currentActor+1)%this.actors.length),this.actors[i].send(t,r,o,e),i},Dispatcher.prototype.remove=function(){this.actors.forEach(function(t){t.remove()}),this.actors=[],this.workerPool.release(this.id)},module.exports=Dispatcher;\n},{\"./actor\":200,\"./util\":223}],209:[function(_dereq_,module,exports){\n\"use strict\";function testProp(e){for(var t=0;t<e.length;t++)if(e[t]in docStyle)return e[t];return e[0]}var Point=_dereq_(\"@mapbox/point-geometry\"),window=_dereq_(\"./window\");exports.create=function(e,t,o){var n=window.document.createElement(e);return t&&(n.className=t),o&&o.appendChild(n),n};var docStyle=window.document.documentElement.style,selectProp=testProp([\"userSelect\",\"MozUserSelect\",\"WebkitUserSelect\",\"msUserSelect\"]),userSelect;exports.disableDrag=function(){selectProp&&(userSelect=docStyle[selectProp],docStyle[selectProp]=\"none\")},exports.enableDrag=function(){selectProp&&(docStyle[selectProp]=userSelect)};var transformProp=testProp([\"transform\",\"WebkitTransform\"]);exports.setTransform=function(e,t){e.style[transformProp]=t};var suppressClick=function(e){e.preventDefault(),e.stopPropagation(),window.removeEventListener(\"click\",suppressClick,!0)};exports.suppressClick=function(){window.addEventListener(\"click\",suppressClick,!0),window.setTimeout(function(){window.removeEventListener(\"click\",suppressClick,!0)},0)},exports.mousePos=function(e,t){var o=e.getBoundingClientRect();return t=t.touches?t.touches[0]:t,new Point(t.clientX-o.left-e.clientLeft,t.clientY-o.top-e.clientTop)},exports.touchPos=function(e,t){for(var o=e.getBoundingClientRect(),n=[],r=\"touchend\"===t.type?t.changedTouches:t.touches,s=0;s<r.length;s++)n.push(new Point(r[s].clientX-o.left-e.clientLeft,r[s].clientY-o.top-e.clientTop));return n},exports.remove=function(e){e.parentNode&&e.parentNode.removeChild(e)};\n},{\"./window\":204,\"@mapbox/point-geometry\":2}],210:[function(_dereq_,module,exports){\n\"use strict\";function _addEventListener(e,t,n){n[e]=n[e]||[],n[e].push(t)}function _removeEventListener(e,t,n){if(n&&n[e]){var i=n[e].indexOf(t);-1!==i&&n[e].splice(i,1)}}var util=_dereq_(\"./util\"),Evented=function(){};Evented.prototype.on=function(e,t){return this._listeners=this._listeners||{},_addEventListener(e,t,this._listeners),this},Evented.prototype.off=function(e,t){return _removeEventListener(e,t,this._listeners),_removeEventListener(e,t,this._oneTimeListeners),this},Evented.prototype.once=function(e,t){return this._oneTimeListeners=this._oneTimeListeners||{},_addEventListener(e,t,this._oneTimeListeners),this},Evented.prototype.fire=function(e,t){var n=this;if(this.listens(e)){t=util.extend({},t,{type:e,target:this});for(var i=this._listeners&&this._listeners[e]?this._listeners[e].slice():[],s=0;s<i.length;s++)i[s].call(n,t);for(var r=this._oneTimeListeners&&this._oneTimeListeners[e]?this._oneTimeListeners[e].slice():[],o=0;o<r.length;o++)r[o].call(n,t),_removeEventListener(e,r[o],n._oneTimeListeners);this._eventedParent&&this._eventedParent.fire(e,util.extend({},t,\"function\"==typeof this._eventedParentData?this._eventedParentData():this._eventedParentData))}else util.endsWith(e,\"error\")&&console.error(t&&t.error||t||\"Empty error event\");return this},Evented.prototype.listens=function(e){return this._listeners&&this._listeners[e]&&this._listeners[e].length>0||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\":223}],211:[function(_dereq_,module,exports){\n\"use strict\";function compareMax(e,t){return t.max-e.max}function Cell(e,t,n,o){this.p=new Point(e,t),this.h=n,this.d=pointToPolygonDist(this.p,o),this.max=this.d+this.h*Math.SQRT2}function pointToPolygonDist(e,t){for(var n=!1,o=1/0,r=0;r<t.length;r++)for(var i=t[r],l=0,u=i.length,a=u-1;l<u;a=l++){var s=i[l],p=i[a];s.y>e.y!=p.y>e.y&&e.x<(p.x-s.x)*(e.y-s.y)/(p.y-s.y)+s.x&&(n=!n),o=Math.min(o,distToSegmentSquared(e,s,p))}return(n?1:-1)*Math.sqrt(o)}function getCentroidCell(e){for(var t=0,n=0,o=0,r=e[0],i=0,l=r.length,u=l-1;i<l;u=i++){var a=r[i],s=r[u],p=a.x*s.y-s.x*a.y;n+=(a.x+s.x)*p,o+=(a.y+s.y)*p,t+=3*p}return new Cell(n/t,o/t,0,e)}var Queue=_dereq_(\"tinyqueue\"),Point=_dereq_(\"@mapbox/point-geometry\"),distToSegmentSquared=_dereq_(\"./intersection_tests\").distToSegmentSquared;module.exports=function(e,t,n){void 0===t&&(t=1),void 0===n&&(n=!1);for(var o=1/0,r=1/0,i=-1/0,l=-1/0,u=e[0],a=0;a<u.length;a++){var s=u[a];(!a||s.x<o)&&(o=s.x),(!a||s.y<r)&&(r=s.y),(!a||s.x>i)&&(i=s.x),(!a||s.y>l)&&(l=s.y)}var p=i-o,h=l-r,d=Math.min(p,h),x=d/2,y=new Queue(null,compareMax);if(0===d)return new Point(o,r);for(var g=o;g<i;g+=d)for(var f=r;f<l;f+=d)y.push(new Cell(g+x,f+x,x,e));for(var m=getCentroidCell(e),v=y.length;y.length;){var c=y.pop();(c.d>m.d||!m.d)&&(m=c,n&&console.log(\"found best %d after %d probes\",Math.round(1e4*c.d)/1e4,v)),c.max-m.d<=t||(x=c.h/2,y.push(new Cell(c.p.x-x,c.p.y-x,x,e)),y.push(new Cell(c.p.x+x,c.p.y-x,x,e)),y.push(new Cell(c.p.x-x,c.p.y+x,x,e)),y.push(new Cell(c.p.x+x,c.p.y+x,x,e)),v+=4)}return n&&(console.log(\"num probes: \"+v),console.log(\"best distance: \"+m.d)),m.p};\n},{\"./intersection_tests\":214,\"@mapbox/point-geometry\":2,\"tinyqueue\":33}],212:[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\":226}],213:[function(_dereq_,module,exports){\n\"use strict\";function createImage(e,t,i){var h=e.width,a=e.height;if(i){if(i.length!==h*a*t)throw new RangeError(\"mismatched image size\")}else i=new Uint8Array(h*a*t);return{width:h,height:a,data:i}}function resizeImage(e,t,i){var h=t.width,a=t.height;if(h===e.width&&a===e.height)return e;var r=createImage({width:h,height:a},i);copyImage(e,r,{x:0,y:0},{x:0,y:0},{width:Math.min(e.width,h),height:Math.min(e.height,a)},i),e.width=h,e.height=a,e.data=r.data}function copyImage(e,t,i,h,a,r){if(0===a.width||0===a.height)return t;if(a.width>e.width||a.height>e.height||i.x>e.width-a.width||i.y>e.height-a.height)throw new RangeError(\"out of range source coordinates for image copy\");if(a.width>t.width||a.height>t.height||h.x>t.width-a.width||h.y>t.height-a.height)throw new RangeError(\"out of range destination coordinates for image copy\");for(var g=e.data,n=t.data,o=0;o<a.height;o++)for(var m=((i.y+o)*e.width+i.x)*r,c=((h.y+o)*t.width+h.x)*r,d=0;d<a.width*r;d++)n[c+d]=g[m+d];return t}var AlphaImage=function(){};AlphaImage.create=function(e,t){return createImage(e,1,t)},AlphaImage.resize=function(e,t){resizeImage(e,t,1)},AlphaImage.copy=function(e,t,i,h,a){copyImage(e,t,i,h,a,1)};var RGBAImage=function(){};RGBAImage.create=function(e,t){return createImage(e,4,t)},RGBAImage.resize=function(e,t){resizeImage(e,t,4)},RGBAImage.copy=function(e,t,i,h,a){copyImage(e,t,i,h,a,4)},module.exports={AlphaImage:AlphaImage,RGBAImage:RGBAImage};\n},{}],214:[function(_dereq_,module,exports){\n\"use strict\";function polygonIntersectsPolygon(n,t){for(var e=0;e<n.length;e++)if(polygonContainsPoint(t,n[e]))return!0;for(var r=0;r<t.length;r++)if(polygonContainsPoint(n,t[r]))return!0;return!!lineIntersectsLine(n,t)}function multiPolygonIntersectsBufferedMultiPoint(n,t,e){for(var r=0;r<n.length;r++)for(var o=n[r],i=0;i<t.length;i++)for(var l=t[i],u=0;u<l.length;u++){var s=l[u];if(polygonContainsPoint(o,s))return!0;if(pointIntersectsBufferedLine(s,o,e))return!0}return!1}function multiPolygonIntersectsMultiPolygon(n,t){if(1===n.length&&1===n[0].length)return multiPolygonContainsPoint(t,n[0][0]);for(var e=0;e<t.length;e++)for(var r=t[e],o=0;o<r.length;o++)if(multiPolygonContainsPoint(n,r[o]))return!0;for(var i=0;i<n.length;i++){for(var l=n[i],u=0;u<l.length;u++)if(multiPolygonContainsPoint(t,l[u]))return!0;for(var s=0;s<t.length;s++)if(lineIntersectsLine(l,t[s]))return!0}return!1}function multiPolygonIntersectsBufferedMultiLine(n,t,e){for(var r=0;r<t.length;r++)for(var o=t[r],i=0;i<n.length;i++){var l=n[i];if(l.length>=3)for(var u=0;u<o.length;u++)if(polygonContainsPoint(l,o[u]))return!0;if(lineIntersectsBufferedLine(l,o,e))return!0}return!1}function lineIntersectsBufferedLine(n,t,e){if(n.length>1){if(lineIntersectsLine(n,t))return!0;for(var r=0;r<t.length;r++)if(pointIntersectsBufferedLine(t[r],n,e))return!0}for(var o=0;o<n.length;o++)if(pointIntersectsBufferedLine(n[o],t,e))return!0;return!1}function lineIntersectsLine(n,t){if(0===n.length||0===t.length)return!1;for(var e=0;e<n.length-1;e++)for(var r=n[e],o=n[e+1],i=0;i<t.length-1;i++){var l=t[i],u=t[i+1];if(lineSegmentIntersectsLineSegment(r,o,l,u))return!0}return!1}function lineSegmentIntersectsLineSegment(n,t,e,r){return isCounterClockwise(n,e,r)!==isCounterClockwise(t,e,r)&&isCounterClockwise(n,t,e)!==isCounterClockwise(n,t,r)}function pointIntersectsBufferedLine(n,t,e){var r=e*e;if(1===t.length)return n.distSqr(t[0])<r;for(var o=1;o<t.length;o++){if(distToSegmentSquared(n,t[o-1],t[o])<r)return!0}return!1}function distToSegmentSquared(n,t,e){var r=t.distSqr(e);if(0===r)return n.distSqr(t);var o=((n.x-t.x)*(e.x-t.x)+(n.y-t.y)*(e.y-t.y))/r;return o<0?n.distSqr(t):o>1?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;l<n.length;l++){e=n[l];for(var u=0,s=e.length-1;u<e.length;s=u++)r=e[u],o=e[s],r.y>t.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;r<n.length;o=r++){var i=n[r],l=n[o];i.y>t.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 ref=_dereq_(\"./util\"),isCounterClockwise=ref.isCounterClockwise;module.exports={multiPolygonIntersectsBufferedMultiPoint:multiPolygonIntersectsBufferedMultiPoint,multiPolygonIntersectsMultiPolygon:multiPolygonIntersectsMultiPolygon,multiPolygonIntersectsBufferedMultiLine:multiPolygonIntersectsBufferedMultiLine,polygonIntersectsPolygon:polygonIntersectsPolygon,distToSegmentSquared:distToSegmentSquared};\n},{\"./util\":223}],215:[function(_dereq_,module,exports){\n\"use strict\";var unicodeBlockLookup={\"Latin-1 Supplement\":function(n){return n>=128&&n<=255},Arabic:function(n){return n>=1536&&n<=1791},\"Arabic Supplement\":function(n){return n>=1872&&n<=1919},\"Arabic Extended-A\":function(n){return n>=2208&&n<=2303},\"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},\"Arabic Presentation Forms-A\":function(n){return n>=64336&&n<=65023},\"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},\"Arabic Presentation Forms-B\":function(n){return n>=65136&&n<=65279},\"Halfwidth and Fullwidth Forms\":function(n){return n>=65280&&n<=65519}};module.exports=unicodeBlockLookup;\n},{}],216:[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){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;\n},{}],217:[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,\"/\"!==t.path&&(r.path=\"\"+t.path+r.path),!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<r.length;e++)0===r[e].indexOf(\"access_token=tk.\")&&(r[e]=\"access_token=\"+(config.ACCESS_TOKEN||\"\"))}function parseUrl(r){var e=r.match(urlRe);if(!e)throw new Error(\"Unable to parse URL object\");return{protocol:e[1],authority:e[2],path:e[3]||\"/\",params:e[4]?e[4].split(\"&\"):[]}}function formatUrl(r){var e=r.params.length?\"?\"+r.params.join(\"&\"):\"\";return r.protocol+\"://\"+r.authority+r.path+e}var config=_dereq_(\"./config\"),browser=_dereq_(\"./browser\"),help=\"See https://www.mapbox.com/api-documentation/#access-tokens\";exports.isMapboxURL=isMapboxURL,exports.normalizeStyleURL=function(r,e){if(!isMapboxURL(r))return r;var t=parseUrl(r);return t.path=\"/styles/v1\"+t.path,makeAPIURL(t,e)},exports.normalizeGlyphsURL=function(r,e){if(!isMapboxURL(r))return r;var t=parseUrl(r);return t.path=\"/fonts/v1\"+t.path,makeAPIURL(t,e)},exports.normalizeSourceURL=function(r,e){if(!isMapboxURL(r))return r;var t=parseUrl(r);return t.path=\"/v4/\"+t.authority+\".json\",t.params.push(\"secure\"),makeAPIURL(t,e)},exports.normalizeSpriteURL=function(r,e,t,a){var o=parseUrl(r);return isMapboxURL(r)?(o.path=\"/styles/v1\"+o.path+\"/sprite\"+e+t,makeAPIURL(o,a)):(o.path+=\"\"+e+t,formatUrl(o))};var imageExtensionRe=/(\\.(png|jpg)\\d*)(?=$)/;exports.normalizeTileURL=function(r,e,t){if(!e||!isMapboxURL(e))return r;var a=parseUrl(r),o=browser.devicePixelRatio>=2||512===t?\"@2x\":\"\",p=browser.supportsWebp?\".webp\":\"$1\";return a.path=a.path.replace(imageExtensionRe,\"\"+o+p),replaceTempAccessToken(a.params),formatUrl(a)};var urlRe=/^(\\w+):\\/\\/([^\\/?]*)(\\/[^?]+)?\\??(.+)?/;\n},{\"./browser\":202,\"./config\":206}],218:[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<r.length;i+=1){var s=r[i];if(!exports.charAllowsIdeographicBreaking(s.charCodeAt(0)))return!1}return!0},module.exports.allowsVerticalWritingMode=function(a){for(var i=0,r=a;i<r.length;i+=1){var s=r[i];if(exports.charHasUprightVerticalOrientation(s.charCodeAt(0)))return!0}return!1},module.exports.allowsLetterSpacing=function(a){for(var i=0,r=a;i<r.length;i+=1){var s=r[i];if(!exports.charAllowsLetterSpacing(s.charCodeAt(0)))return!1}return!0},module.exports.charAllowsLetterSpacing=function(a){return!isChar.Arabic(a)&&(!isChar[\"Arabic Supplement\"](a)&&(!isChar[\"Arabic Extended-A\"](a)&&(!isChar[\"Arabic Presentation Forms-A\"](a)&&!isChar[\"Arabic Presentation Forms-B\"](a))))},module.exports.charAllowsIdeographicBreaking=function(a){return!(a<11904)&&(!!isChar[\"Bopomofo Extended\"](a)||(!!isChar.Bopomofo(a)||(!!isChar[\"CJK Compatibility Forms\"](a)||(!!isChar[\"CJK Compatibility Ideographs\"](a)||(!!isChar[\"CJK Compatibility\"](a)||(!!isChar[\"CJK Radicals Supplement\"](a)||(!!isChar[\"CJK Strokes\"](a)||(!!isChar[\"CJK Symbols and Punctuation\"](a)||(!!isChar[\"CJK Unified Ideographs Extension A\"](a)||(!!isChar[\"CJK Unified Ideographs\"](a)||(!!isChar[\"Enclosed CJK Letters and Months\"](a)||(!!isChar[\"Halfwidth and Fullwidth Forms\"](a)||(!!isChar.Hiragana(a)||(!!isChar[\"Ideographic Description Characters\"](a)||(!!isChar[\"Kangxi Radicals\"](a)||(!!isChar[\"Katakana Phonetic Extensions\"](a)||(!!isChar.Katakana(a)||(!!isChar[\"Vertical Forms\"](a)||(!!isChar[\"Yi Radicals\"](a)||!!isChar[\"Yi Syllables\"](a))))))))))))))))))))},exports.charHasUprightVerticalOrientation=function(a){return 746===a||747===a||!(a<4352)&&(!!isChar[\"Bopomofo Extended\"](a)||(!!isChar.Bopomofo(a)||(!(!isChar[\"CJK Compatibility Forms\"](a)||a>=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\":215}],219:[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)<o?n=a:l.locationPoint(i).distSqr(t)<o&&(n=i)}for(;Math.abs(n.lng-l.center.lng)>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\":58}],220:[function(_dereq_,module,exports){\n\"use strict\";function createStructArrayType(t){var r=JSON.stringify(t);if(structArrayTypeCache[r])return structArrayTypeCache[r];var e=void 0===t.alignment?1:t.alignment,i=0,n=0,a=[\"Uint8\"],s=t.members.map(function(t){a.indexOf(t.type)<0&&a.push(t.type);var r=sizeOf(t.type),s=i=align(i,Math.max(e,r)),o=t.components||1;return n=Math.max(n,r),i+=r*o,{name:t.name,type:t.type,components:o,offset:s}}),o=align(i,Math.max(n,e)),p=function(t){function r(){t.apply(this,arguments)}return t&&(r.__proto__=t),r.prototype=Object.create(t&&t.prototype),r.prototype.constructor=r,r}(Struct);p.prototype.alignment=e,p.prototype.size=o;for(var y=0,c=s;y<c.length;y+=1)for(var h=c[y],u=0;u<h.components;u++){var f=h.name;if(h.components>1&&(f+=u),f in p.prototype)throw new Error(f+\" is a reserved name and cannot be used as a member name.\");Object.defineProperty(p.prototype,f,createAccessors(h,u))}var m=function(t){function r(){t.apply(this,arguments)}return t&&(r.__proto__=t),r.prototype=Object.create(t&&t.prototype),r.prototype.constructor=r,r}(StructArray);return m.prototype.members=s,m.prototype.StructType=p,m.prototype.bytesPerElement=o,m.prototype.emplaceBack=createEmplaceBack(s,o),m.prototype._usedTypes=a,structArrayTypeCache[r]=m,m}function align(t,r){return Math.ceil(t/r)*r}function sizeOf(t){return viewTypes[t].BYTES_PER_ELEMENT}function getArrayViewName(t){return t.toLowerCase()}function createEmplaceBack(t,r){for(var e=[],i=[],n=\"var i = this.length;\\nthis.resize(this.length + 1);\\n\",a=0,s=t;a<s.length;a+=1){var o=s[a],p=sizeOf(o.type);e.indexOf(p)<0&&(e.push(p),n+=\"var o\"+p.toFixed(0)+\" = i * \"+(r/p).toFixed(0)+\";\\n\");for(var y=0;y<o.components;y++){var c=\"v\"+i.length,h=\"o\"+p.toFixed(0)+\" + \"+(o.offset/p+y).toFixed(0);n+=\"this.\"+getArrayViewName(o.type)+\"[\"+h+\"] = \"+c+\";\\n\",i.push(c)}}return n+=\"return i;\",new Function(i.toString(),n)}function createMemberComponentString(t,r){var e=\"this._pos\"+sizeOf(t.type).toFixed(0),i=(t.offset/sizeOf(t.type)+r).toFixed(0),n=e+\" + \"+i;return\"this._structArray.\"+getArrayViewName(t.type)+\"[\"+n+\"]\"}function createAccessors(t,r){var e=createMemberComponentString(t,r);return{get:new Function(\"return \"+e+\";\"),set:new Function(\"x\",e+\" = x;\")}}module.exports=createStructArrayType;var viewTypes={Int8:Int8Array,Uint8:Uint8Array,Int16:Int16Array,Uint16:Uint16Array,Int32:Int32Array,Uint32:Uint32Array,Float32:Float32Array},Struct=function(t,r){this._structArray=t,this._pos1=r*this.size,this._pos2=this._pos1/2,this._pos4=this._pos1/4,this._pos8=this._pos1/8},DEFAULT_CAPACITY=128,RESIZE_MULTIPLIER=5,StructArray=function(t){this.isTransferred=!1,void 0!==t?(this.arrayBuffer=t.arrayBuffer,this.length=t.length,this.capacity=this.arrayBuffer.byteLength/this.bytesPerElement,this._refreshViews()):(this.capacity=-1,this.resize(0))};StructArray.serialize=function(){return{members:this.prototype.members,alignment:this.prototype.StructType.prototype.alignment}},StructArray.prototype.serialize=function(t){return this._trim(),t&&(this.isTransferred=!0,t.push(this.arrayBuffer)),{length:this.length,arrayBuffer:this.arrayBuffer}},StructArray.prototype.get=function(t){return new this.StructType(this,t)},StructArray.prototype._trim=function(){this.length!==this.capacity&&(this.capacity=this.length,this.arrayBuffer=this.arrayBuffer.slice(0,this.length*this.bytesPerElement),this._refreshViews())},StructArray.prototype.clear=function(){this.length=0},StructArray.prototype.resize=function(t){if(this.length=t,t>this.capacity){this.capacity=Math.max(t,Math.floor(this.capacity*RESIZE_MULTIPLIER),DEFAULT_CAPACITY),this.arrayBuffer=new ArrayBuffer(this.capacity*this.bytesPerElement);var r=this.uint8;this._refreshViews(),r&&this.uint8.set(r)}},StructArray.prototype._refreshViews=function(){for(var t=this,r=0,e=t._usedTypes;r<e.length;r+=1){var i=e[r];t[getArrayViewName(i)]=new viewTypes[i](t.arrayBuffer)}},StructArray.prototype.toArray=function(t,r){for(var e=this,i=[],n=t;n<r;n++){var a=e.get(n);i.push(a)}return i};var structArrayTypeCache={};\n},{}],221:[function(_dereq_,module,exports){\n\"use strict\";var browser=_dereq_(\"./browser\"),Throttler=function(t,o){this.frequency=t,this.throttledFunction=o,this.lastInvocation=0};Throttler.prototype.invoke=function(){var t=this;if(!this.pendingInvocation){var o=0===this.lastInvocation?0:this.lastInvocation+this.frequency-browser.now();o<=0?(this.lastInvocation=browser.now(),this.throttledFunction()):this.pendingInvocation=setTimeout(function(){t.pendingInvocation=void 0,t.lastInvocation=browser.now(),t.throttledFunction()},o)}},Throttler.prototype.stop=function(){this.pendingInvocation&&(clearTimeout(this.pendingInvocation),this.pendingInvocation=void 0)},module.exports=Throttler;\n},{\"./browser\":202}],222:[function(_dereq_,module,exports){\n\"use strict\";function resolveTokens(e,n){return n.replace(/{([^{}]+)}/g,function(n,r){return r in e?String(e[r]):\"\"})}module.exports=resolveTokens;\n},{}],223:[function(_dereq_,module,exports){\n\"use strict\";var UnitBezier=_dereq_(\"@mapbox/unitbezier\"),Coordinate=_dereq_(\"../geo/coordinate\"),Point=_dereq_(\"@mapbox/point-geometry\");exports.easeCubicInOut=function(r){if(r<=0)return 0;if(r>=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){for(var e=[],t=arguments.length-1;t-- >0;)e[t]=arguments[t+1];for(var n=0,o=e;n<o.length;n+=1){var a=o[n];for(var i in a)r[i]=a[i]}return r},exports.pick=function(r,e){for(var t={},n=0;n<e.length;n++){var o=e[n];o in r&&(t[o]=r[o])}return t};var id=1;exports.uniqueId=function(){return id++},exports.bindAll=function(r,e){r.forEach(function(r){e[r]&&(e[r]=e[r].bind(e))})},exports.getCoordinatesCenter=function(r){for(var e=1/0,t=1/0,n=-1/0,o=-1/0,a=0;a<r.length;a++)e=Math.min(e,r[a].column),t=Math.min(t,r[a].row),n=Math.max(n,r[a].column),o=Math.max(o,r[a].row);var i=n-e,u=o-t,s=Math.max(i,u),c=Math.max(0,Math.floor(-Math.log(s)/Math.LN2));return new Coordinate((e+n)/2,(t+o)/2,0).zoomTo(c)},exports.endsWith=function(r,e){return-1!==r.indexOf(e,r.length-e.length)},exports.mapObject=function(r,e,t){var n=this,o={};for(var a in r)o[a]=e.call(t||n,r[a],a,r);return o},exports.filterObject=function(r,e,t){var n=this,o={};for(var a in r)e.call(t||n,r[a],a,r)&&(o[a]=r[a]);return o},exports.deepEqual=function(r,e){if(Array.isArray(r)){if(!Array.isArray(e)||r.length!==e.length)return!1;for(var t=0;t<r.length;t++)if(!exports.deepEqual(r[t],e[t]))return!1;return!0}if(\"object\"==typeof r&&null!==r&&null!==e){if(\"object\"!=typeof e)return!1;if(Object.keys(r).length!==Object.keys(e).length)return!1;for(var n in r)if(!exports.deepEqual(r[n],e[n]))return!1;return!0}return r===e},exports.clone=function(r){return Array.isArray(r)?r.map(exports.clone):\"object\"==typeof r&&r?exports.mapObject(r,exports.clone):r},exports.arraysIntersect=function(r,e){for(var t=0;t<r.length;t++)if(e.indexOf(r[t])>=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;t<n;o=t++)a=r[t],i=r[o],e+=(i.x-a.x)*(a.y+i.y);return e},exports.isClosedPolygon=function(r){if(r.length<4)return!1;var e=r[0],t=r[r.length-1];return!(Math.abs(e.x-t.x)>0||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\":57,\"@mapbox/point-geometry\":2,\"@mapbox/unitbezier\":5}],224:[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},{}],225:[function(_dereq_,module,exports){\n\"use strict\";var scriptDetection=_dereq_(\"./script_detection\");module.exports=function(t){for(var o=\"\",e=0;e<t.length;e++){var r=t.charCodeAt(e+1)||null,l=t.charCodeAt(e-1)||null;(!r||!scriptDetection.charHasRotatedVerticalOrientation(r)||module.exports.lookup[t[e+1]])&&(!l||!scriptDetection.charHasRotatedVerticalOrientation(l)||module.exports.lookup[t[e-1]])&&module.exports.lookup[t[e]]?o+=module.exports.lookup[t[e]]:o+=t[e]}return o},module.exports.lookup={\"!\":\"︕\",\"#\":\"#\",$:\"$\",\"%\":\"%\",\"&\":\"&\",\"(\":\"︵\",\")\":\"︶\",\"*\":\"*\",\"+\":\"+\",\",\":\"︐\",\"-\":\"︲\",\".\":\"・\",\"/\":\"/\",\":\":\"︓\",\";\":\"︔\",\"<\":\"︿\",\"=\":\"=\",\">\":\"﹀\",\"?\":\"︖\",\"@\":\"@\",\"[\":\"﹇\",\"\\\\\":\"\\",\"]\":\"﹈\",\"^\":\"^\",_:\"︳\",\"`\":\"`\",\"{\":\"︷\",\"|\":\"―\",\"}\":\"︸\",\"~\":\"~\",\"¢\":\"¢\",\"£\":\"£\",\"¥\":\"¥\",\"¦\":\"¦\",\"¬\":\"¬\",\"¯\":\" ̄\",\"–\":\"︲\",\"—\":\"︱\",\"‘\":\"﹃\",\"’\":\"﹄\",\"“\":\"﹁\",\"”\":\"﹂\",\"…\":\"︙\",\"‧\":\"・\",\"₩\":\"₩\",\"、\":\"︑\",\"。\":\"︒\",\"〈\":\"︿\",\"〉\":\"﹀\",\"《\":\"︽\",\"》\":\"︾\",\"「\":\"﹁\",\"」\":\"﹂\",\"『\":\"﹃\",\"』\":\"﹄\",\"【\":\"︻\",\"】\":\"︼\",\"〔\":\"︹\",\"〕\":\"︺\",\"〖\":\"︗\",\"〗\":\"︘\",\"!\":\"︕\",\"(\":\"︵\",\")\":\"︶\",\",\":\"︐\",\"-\":\"︲\",\".\":\"・\",\":\":\"︓\",\";\":\"︔\",\"<\":\"︿\",\">\":\"﹀\",\"?\":\"︖\",\"[\":\"﹇\",\"]\":\"﹈\",\"_\":\"︳\",\"{\":\"︷\",\"|\":\"―\",\"}\":\"︸\",\"⦅\":\"︵\",\"⦆\":\"︶\",\"。\":\"︒\",\"「\":\"﹁\",\"」\":\"﹂\"};\n},{\"./script_detection\":218}],226:[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<o;)e.workers.push(new WebWorker)}return this.active[r]=!0,this.workers.slice()},WorkerPool.prototype.release=function(r){delete this.active[r],0===Object.keys(this.active).length&&(this.workers.forEach(function(r){r.terminate()}),this.workers=null)},module.exports=WorkerPool;\n},{\"../\":63,\"./web_worker\":203}]},{},[63])(63)\n});\n\n\n//# sourceMappingURL=mapbox-gl.js.map\n/* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(0)))\n\n/***/ }),\n/* 2 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\nObject.defineProperty(__webpack_exports__, \"__esModule\", { value: true });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_mapbox_gl__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_mapbox_gl___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_mapbox_gl__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_vue__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__Geshem_vue__ = __webpack_require__(7);\n\n\n\n\n__WEBPACK_IMPORTED_MODULE_0_mapbox_gl___default.a.accessToken = 'pk.eyJ1IjoieXV2YWRtIiwiYSI6ImNpcnMxbzBuaTAwZWdoa25oczlzZmkwbHcifQ.UHtLngbKm9O8945pJm23Nw';\n\nvar vm = new __WEBPACK_IMPORTED_MODULE_1_vue__[\"a\" /* default */]({\n el: '#app',\n render: function render(h) {\n return h(__WEBPACK_IMPORTED_MODULE_2__Geshem_vue__[\"a\" /* default */]);\n }\n});\n\n/***/ }),\n/* 3 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* WEBPACK VAR INJECTION */(function(global, setImmediate) {/*!\n * Vue.js v2.5.2\n * (c) 2014-2017 Evan You\n * Released under the MIT License.\n */\n/* */\n\n// these helpers produces better vm code in JS engines due to their\n// explicitness and function inlining\nfunction isUndef (v) {\n return v === undefined || v === null\n}\n\nfunction isDef (v) {\n return v !== undefined && v !== null\n}\n\nfunction isTrue (v) {\n return v === true\n}\n\nfunction isFalse (v) {\n return v === false\n}\n\n/**\n * Check if value is primitive\n */\nfunction isPrimitive (value) {\n return (\n typeof value === 'string' ||\n typeof value === 'number' ||\n typeof value === 'boolean'\n )\n}\n\n/**\n * Quick object check - this is primarily used to tell\n * Objects from primitive values when we know the value\n * is a JSON-compliant type.\n */\nfunction isObject (obj) {\n return obj !== null && typeof obj === 'object'\n}\n\n/**\n * Get the raw type string of a value e.g. [object Object]\n */\nvar _toString = Object.prototype.toString;\n\nfunction toRawType (value) {\n return _toString.call(value).slice(8, -1)\n}\n\n/**\n * Strict object type check. Only returns true\n * for plain JavaScript objects.\n */\nfunction isPlainObject (obj) {\n return _toString.call(obj) === '[object Object]'\n}\n\nfunction isRegExp (v) {\n return _toString.call(v) === '[object RegExp]'\n}\n\n/**\n * Check if val is a valid array index.\n */\nfunction isValidArrayIndex (val) {\n var n = parseFloat(String(val));\n return n >= 0 && Math.floor(n) === n && isFinite(val)\n}\n\n/**\n * Convert a value to a string that is actually rendered.\n */\nfunction toString (val) {\n return val == null\n ? ''\n : typeof val === 'object'\n ? JSON.stringify(val, null, 2)\n : String(val)\n}\n\n/**\n * Convert a input value to a number for persistence.\n * If the conversion fails, return original string.\n */\nfunction toNumber (val) {\n var n = parseFloat(val);\n return isNaN(n) ? val : n\n}\n\n/**\n * Make a map and return a function for checking if a key\n * is in that map.\n */\nfunction makeMap (\n str,\n expectsLowerCase\n) {\n var map = Object.create(null);\n var list = str.split(',');\n for (var i = 0; i < list.length; i++) {\n map[list[i]] = true;\n }\n return expectsLowerCase\n ? function (val) { return map[val.toLowerCase()]; }\n : function (val) { return map[val]; }\n}\n\n/**\n * Check if a tag is a built-in tag.\n */\nvar isBuiltInTag = makeMap('slot,component', true);\n\n/**\n * Check if a attribute is a reserved attribute.\n */\nvar isReservedAttribute = makeMap('key,ref,slot,slot-scope,is');\n\n/**\n * Remove an item from an array\n */\nfunction remove (arr, item) {\n if (arr.length) {\n var index = arr.indexOf(item);\n if (index > -1) {\n return arr.splice(index, 1)\n }\n }\n}\n\n/**\n * Check whether the object has the property.\n */\nvar hasOwnProperty = Object.prototype.hasOwnProperty;\nfunction hasOwn (obj, key) {\n return hasOwnProperty.call(obj, key)\n}\n\n/**\n * Create a cached version of a pure function.\n */\nfunction cached (fn) {\n var cache = Object.create(null);\n return (function cachedFn (str) {\n var hit = cache[str];\n return hit || (cache[str] = fn(str))\n })\n}\n\n/**\n * Camelize a hyphen-delimited string.\n */\nvar camelizeRE = /-(\\w)/g;\nvar camelize = cached(function (str) {\n return str.replace(camelizeRE, function (_, c) { return c ? c.toUpperCase() : ''; })\n});\n\n/**\n * Capitalize a string.\n */\nvar capitalize = cached(function (str) {\n return str.charAt(0).toUpperCase() + str.slice(1)\n});\n\n/**\n * Hyphenate a camelCase string.\n */\nvar hyphenateRE = /\\B([A-Z])/g;\nvar hyphenate = cached(function (str) {\n return str.replace(hyphenateRE, '-$1').toLowerCase()\n});\n\n/**\n * Simple bind, faster than native\n */\nfunction bind (fn, ctx) {\n function boundFn (a) {\n var l = arguments.length;\n return l\n ? l > 1\n ? fn.apply(ctx, arguments)\n : fn.call(ctx, a)\n : fn.call(ctx)\n }\n // record original fn length\n boundFn._length = fn.length;\n return boundFn\n}\n\n/**\n * Convert an Array-like object to a real Array.\n */\nfunction toArray (list, start) {\n start = start || 0;\n var i = list.length - start;\n var ret = new Array(i);\n while (i--) {\n ret[i] = list[i + start];\n }\n return ret\n}\n\n/**\n * Mix properties into target object.\n */\nfunction extend (to, _from) {\n for (var key in _from) {\n to[key] = _from[key];\n }\n return to\n}\n\n/**\n * Merge an Array of Objects into a single Object.\n */\nfunction toObject (arr) {\n var res = {};\n for (var i = 0; i < arr.length; i++) {\n if (arr[i]) {\n extend(res, arr[i]);\n }\n }\n return res\n}\n\n/**\n * Perform no operation.\n * Stubbing args to make Flow happy without leaving useless transpiled code\n * with ...rest (https://flow.org/blog/2017/05/07/Strict-Function-Call-Arity/)\n */\nfunction noop (a, b, c) {}\n\n/**\n * Always return false.\n */\nvar no = function (a, b, c) { return false; };\n\n/**\n * Return same value\n */\nvar identity = function (_) { return _; };\n\n/**\n * Generate a static keys string from compiler modules.\n */\nfunction genStaticKeys (modules) {\n return modules.reduce(function (keys, m) {\n return keys.concat(m.staticKeys || [])\n }, []).join(',')\n}\n\n/**\n * Check if two values are loosely equal - that is,\n * if they are plain objects, do they have the same shape?\n */\nfunction looseEqual (a, b) {\n if (a === b) { return true }\n var isObjectA = isObject(a);\n var isObjectB = isObject(b);\n if (isObjectA && isObjectB) {\n try {\n var isArrayA = Array.isArray(a);\n var isArrayB = Array.isArray(b);\n if (isArrayA && isArrayB) {\n return a.length === b.length && a.every(function (e, i) {\n return looseEqual(e, b[i])\n })\n } else if (!isArrayA && !isArrayB) {\n var keysA = Object.keys(a);\n var keysB = Object.keys(b);\n return keysA.length === keysB.length && keysA.every(function (key) {\n return looseEqual(a[key], b[key])\n })\n } else {\n /* istanbul ignore next */\n return false\n }\n } catch (e) {\n /* istanbul ignore next */\n return false\n }\n } else if (!isObjectA && !isObjectB) {\n return String(a) === String(b)\n } else {\n return false\n }\n}\n\nfunction looseIndexOf (arr, val) {\n for (var i = 0; i < arr.length; i++) {\n if (looseEqual(arr[i], val)) { return i }\n }\n return -1\n}\n\n/**\n * Ensure a function is called only once.\n */\nfunction once (fn) {\n var called = false;\n return function () {\n if (!called) {\n called = true;\n fn.apply(this, arguments);\n }\n }\n}\n\nvar SSR_ATTR = 'data-server-rendered';\n\nvar ASSET_TYPES = [\n 'component',\n 'directive',\n 'filter'\n];\n\nvar LIFECYCLE_HOOKS = [\n 'beforeCreate',\n 'created',\n 'beforeMount',\n 'mounted',\n 'beforeUpdate',\n 'updated',\n 'beforeDestroy',\n 'destroyed',\n 'activated',\n 'deactivated',\n 'errorCaptured'\n];\n\n/* */\n\nvar config = ({\n /**\n * Option merge strategies (used in core/util/options)\n */\n optionMergeStrategies: Object.create(null),\n\n /**\n * Whether to suppress warnings.\n */\n silent: false,\n\n /**\n * Show production mode tip message on boot?\n */\n productionTip: \"production\" !== 'production',\n\n /**\n * Whether to enable devtools\n */\n devtools: \"production\" !== 'production',\n\n /**\n * Whether to record perf\n */\n performance: false,\n\n /**\n * Error handler for watcher errors\n */\n errorHandler: null,\n\n /**\n * Warn handler for watcher warns\n */\n warnHandler: null,\n\n /**\n * Ignore certain custom elements\n */\n ignoredElements: [],\n\n /**\n * Custom user key aliases for v-on\n */\n keyCodes: Object.create(null),\n\n /**\n * Check if a tag is reserved so that it cannot be registered as a\n * component. This is platform-dependent and may be overwritten.\n */\n isReservedTag: no,\n\n /**\n * Check if an attribute is reserved so that it cannot be used as a component\n * prop. This is platform-dependent and may be overwritten.\n */\n isReservedAttr: no,\n\n /**\n * Check if a tag is an unknown element.\n * Platform-dependent.\n */\n isUnknownElement: no,\n\n /**\n * Get the namespace of an element\n */\n getTagNamespace: noop,\n\n /**\n * Parse the real tag name for the specific platform.\n */\n parsePlatformTagName: identity,\n\n /**\n * Check if an attribute must be bound using property, e.g. value\n * Platform-dependent.\n */\n mustUseProp: no,\n\n /**\n * Exposed for legacy reasons\n */\n _lifecycleHooks: LIFECYCLE_HOOKS\n});\n\n/* */\n\nvar emptyObject = Object.freeze({});\n\n/**\n * Check if a string starts with $ or _\n */\nfunction isReserved (str) {\n var c = (str + '').charCodeAt(0);\n return c === 0x24 || c === 0x5F\n}\n\n/**\n * Define a property.\n */\nfunction def (obj, key, val, enumerable) {\n Object.defineProperty(obj, key, {\n value: val,\n enumerable: !!enumerable,\n writable: true,\n configurable: true\n });\n}\n\n/**\n * Parse simple path.\n */\nvar bailRE = /[^\\w.$]/;\nfunction parsePath (path) {\n if (bailRE.test(path)) {\n return\n }\n var segments = path.split('.');\n return function (obj) {\n for (var i = 0; i < segments.length; i++) {\n if (!obj) { return }\n obj = obj[segments[i]];\n }\n return obj\n }\n}\n\n/* */\n\n// can we use __proto__?\nvar hasProto = '__proto__' in {};\n\n// Browser environment sniffing\nvar inBrowser = typeof window !== 'undefined';\nvar UA = inBrowser && window.navigator.userAgent.toLowerCase();\nvar isIE = UA && /msie|trident/.test(UA);\nvar isIE9 = UA && UA.indexOf('msie 9.0') > 0;\nvar isEdge = UA && UA.indexOf('edge/') > 0;\nvar isAndroid = UA && UA.indexOf('android') > 0;\nvar isIOS = UA && /iphone|ipad|ipod|ios/.test(UA);\nvar isChrome = UA && /chrome\\/\\d+/.test(UA) && !isEdge;\n\n// Firefox has a \"watch\" function on Object.prototype...\nvar nativeWatch = ({}).watch;\n\nvar supportsPassive = false;\nif (inBrowser) {\n try {\n var opts = {};\n Object.defineProperty(opts, 'passive', ({\n get: function get () {\n /* istanbul ignore next */\n supportsPassive = true;\n }\n })); // https://github.com/facebook/flow/issues/285\n window.addEventListener('test-passive', null, opts);\n } catch (e) {}\n}\n\n// this needs to be lazy-evaled because vue may be required before\n// vue-server-renderer can set VUE_ENV\nvar _isServer;\nvar isServerRendering = function () {\n if (_isServer === undefined) {\n /* istanbul ignore if */\n if (!inBrowser && typeof global !== 'undefined') {\n // detect presence of vue-server-renderer and avoid\n // Webpack shimming the process\n _isServer = global['process'].env.VUE_ENV === 'server';\n } else {\n _isServer = false;\n }\n }\n return _isServer\n};\n\n// detect devtools\nvar devtools = inBrowser && window.__VUE_DEVTOOLS_GLOBAL_HOOK__;\n\n/* istanbul ignore next */\nfunction isNative (Ctor) {\n return typeof Ctor === 'function' && /native code/.test(Ctor.toString())\n}\n\nvar hasSymbol =\n typeof Symbol !== 'undefined' && isNative(Symbol) &&\n typeof Reflect !== 'undefined' && isNative(Reflect.ownKeys);\n\nvar _Set;\n/* istanbul ignore if */ // $flow-disable-line\nif (typeof Set !== 'undefined' && isNative(Set)) {\n // use native Set when available.\n _Set = Set;\n} else {\n // a non-standard Set polyfill that only works with primitive keys.\n _Set = (function () {\n function Set () {\n this.set = Object.create(null);\n }\n Set.prototype.has = function has (key) {\n return this.set[key] === true\n };\n Set.prototype.add = function add (key) {\n this.set[key] = true;\n };\n Set.prototype.clear = function clear () {\n this.set = Object.create(null);\n };\n\n return Set;\n }());\n}\n\n/* */\n\nvar warn = noop;\nvar tip = noop;\nvar generateComponentTrace = (noop); // work around flow check\nvar formatComponentName = (noop);\n\nif (false) {\n var hasConsole = typeof console !== 'undefined';\n var classifyRE = /(?:^|[-_])(\\w)/g;\n var classify = function (str) { return str\n .replace(classifyRE, function (c) { return c.toUpperCase(); })\n .replace(/[-_]/g, ''); };\n\n warn = function (msg, vm) {\n var trace = vm ? generateComponentTrace(vm) : '';\n\n if (config.warnHandler) {\n config.warnHandler.call(null, msg, vm, trace);\n } else if (hasConsole && (!config.silent)) {\n console.error((\"[Vue warn]: \" + msg + trace));\n }\n };\n\n tip = function (msg, vm) {\n if (hasConsole && (!config.silent)) {\n console.warn(\"[Vue tip]: \" + msg + (\n vm ? generateComponentTrace(vm) : ''\n ));\n }\n };\n\n formatComponentName = function (vm, includeFile) {\n if (vm.$root === vm) {\n return '<Root>'\n }\n var options = typeof vm === 'function' && vm.cid != null\n ? vm.options\n : vm._isVue\n ? vm.$options || vm.constructor.options\n : vm || {};\n var name = options.name || options._componentTag;\n var file = options.__file;\n if (!name && file) {\n var match = file.match(/([^/\\\\]+)\\.vue$/);\n name = match && match[1];\n }\n\n return (\n (name ? (\"<\" + (classify(name)) + \">\") : \"<Anonymous>\") +\n (file && includeFile !== false ? (\" at \" + file) : '')\n )\n };\n\n var repeat = function (str, n) {\n var res = '';\n while (n) {\n if (n % 2 === 1) { res += str; }\n if (n > 1) { str += str; }\n n >>= 1;\n }\n return res\n };\n\n generateComponentTrace = function (vm) {\n if (vm._isVue && vm.$parent) {\n var tree = [];\n var currentRecursiveSequence = 0;\n while (vm) {\n if (tree.length > 0) {\n var last = tree[tree.length - 1];\n if (last.constructor === vm.constructor) {\n currentRecursiveSequence++;\n vm = vm.$parent;\n continue\n } else if (currentRecursiveSequence > 0) {\n tree[tree.length - 1] = [last, currentRecursiveSequence];\n currentRecursiveSequence = 0;\n }\n }\n tree.push(vm);\n vm = vm.$parent;\n }\n return '\\n\\nfound in\\n\\n' + tree\n .map(function (vm, i) { return (\"\" + (i === 0 ? '---> ' : repeat(' ', 5 + i * 2)) + (Array.isArray(vm)\n ? ((formatComponentName(vm[0])) + \"... (\" + (vm[1]) + \" recursive calls)\")\n : formatComponentName(vm))); })\n .join('\\n')\n } else {\n return (\"\\n\\n(found in \" + (formatComponentName(vm)) + \")\")\n }\n };\n}\n\n/* */\n\n\nvar uid = 0;\n\n/**\n * A dep is an observable that can have multiple\n * directives subscribing to it.\n */\nvar Dep = function Dep () {\n this.id = uid++;\n this.subs = [];\n};\n\nDep.prototype.addSub = function addSub (sub) {\n this.subs.push(sub);\n};\n\nDep.prototype.removeSub = function removeSub (sub) {\n remove(this.subs, sub);\n};\n\nDep.prototype.depend = function depend () {\n if (Dep.target) {\n Dep.target.addDep(this);\n }\n};\n\nDep.prototype.notify = function notify () {\n // stabilize the subscriber list first\n var subs = this.subs.slice();\n for (var i = 0, l = subs.length; i < l; i++) {\n subs[i].update();\n }\n};\n\n// the current target watcher being evaluated.\n// this is globally unique because there could be only one\n// watcher being evaluated at any time.\nDep.target = null;\nvar targetStack = [];\n\nfunction pushTarget (_target) {\n if (Dep.target) { targetStack.push(Dep.target); }\n Dep.target = _target;\n}\n\nfunction popTarget () {\n Dep.target = targetStack.pop();\n}\n\n/* */\n\nvar VNode = function VNode (\n tag,\n data,\n children,\n text,\n elm,\n context,\n componentOptions,\n asyncFactory\n) {\n this.tag = tag;\n this.data = data;\n this.children = children;\n this.text = text;\n this.elm = elm;\n this.ns = undefined;\n this.context = context;\n this.functionalContext = undefined;\n this.functionalOptions = undefined;\n this.functionalScopeId = undefined;\n this.key = data && data.key;\n this.componentOptions = componentOptions;\n this.componentInstance = undefined;\n this.parent = undefined;\n this.raw = false;\n this.isStatic = false;\n this.isRootInsert = true;\n this.isComment = false;\n this.isCloned = false;\n this.isOnce = false;\n this.asyncFactory = asyncFactory;\n this.asyncMeta = undefined;\n this.isAsyncPlaceholder = false;\n};\n\nvar prototypeAccessors = { child: { configurable: true } };\n\n// DEPRECATED: alias for componentInstance for backwards compat.\n/* istanbul ignore next */\nprototypeAccessors.child.get = function () {\n return this.componentInstance\n};\n\nObject.defineProperties( VNode.prototype, prototypeAccessors );\n\nvar createEmptyVNode = function (text) {\n if ( text === void 0 ) text = '';\n\n var node = new VNode();\n node.text = text;\n node.isComment = true;\n return node\n};\n\nfunction createTextVNode (val) {\n return new VNode(undefined, undefined, undefined, String(val))\n}\n\n// optimized shallow clone\n// used for static nodes and slot nodes because they may be reused across\n// multiple renders, cloning them avoids errors when DOM manipulations rely\n// on their elm reference.\nfunction cloneVNode (vnode, deep) {\n var cloned = new VNode(\n vnode.tag,\n vnode.data,\n vnode.children,\n vnode.text,\n vnode.elm,\n vnode.context,\n vnode.componentOptions,\n vnode.asyncFactory\n );\n cloned.ns = vnode.ns;\n cloned.isStatic = vnode.isStatic;\n cloned.key = vnode.key;\n cloned.isComment = vnode.isComment;\n cloned.isCloned = true;\n if (deep && vnode.children) {\n cloned.children = cloneVNodes(vnode.children);\n }\n return cloned\n}\n\nfunction cloneVNodes (vnodes, deep) {\n var len = vnodes.length;\n var res = new Array(len);\n for (var i = 0; i < len; i++) {\n res[i] = cloneVNode(vnodes[i], deep);\n }\n return res\n}\n\n/*\n * not type checking this file because flow doesn't play well with\n * dynamically accessing methods on Array prototype\n */\n\nvar arrayProto = Array.prototype;\nvar arrayMethods = Object.create(arrayProto);[\n 'push',\n 'pop',\n 'shift',\n 'unshift',\n 'splice',\n 'sort',\n 'reverse'\n]\n.forEach(function (method) {\n // cache original method\n var original = arrayProto[method];\n def(arrayMethods, method, function mutator () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n var result = original.apply(this, args);\n var ob = this.__ob__;\n var inserted;\n switch (method) {\n case 'push':\n case 'unshift':\n inserted = args;\n break\n case 'splice':\n inserted = args.slice(2);\n break\n }\n if (inserted) { ob.observeArray(inserted); }\n // notify change\n ob.dep.notify();\n return result\n });\n});\n\n/* */\n\nvar arrayKeys = Object.getOwnPropertyNames(arrayMethods);\n\n/**\n * By default, when a reactive property is set, the new value is\n * also converted to become reactive. However when passing down props,\n * we don't want to force conversion because the value may be a nested value\n * under a frozen data structure. Converting it would defeat the optimization.\n */\nvar observerState = {\n shouldConvert: true\n};\n\n/**\n * Observer class that are attached to each observed\n * object. Once attached, the observer converts target\n * object's property keys into getter/setters that\n * collect dependencies and dispatches updates.\n */\nvar Observer = function Observer (value) {\n this.value = value;\n this.dep = new Dep();\n this.vmCount = 0;\n def(value, '__ob__', this);\n if (Array.isArray(value)) {\n var augment = hasProto\n ? protoAugment\n : copyAugment;\n augment(value, arrayMethods, arrayKeys);\n this.observeArray(value);\n } else {\n this.walk(value);\n }\n};\n\n/**\n * Walk through each property and convert them into\n * getter/setters. This method should only be called when\n * value type is Object.\n */\nObserver.prototype.walk = function walk (obj) {\n var keys = Object.keys(obj);\n for (var i = 0; i < keys.length; i++) {\n defineReactive(obj, keys[i], obj[keys[i]]);\n }\n};\n\n/**\n * Observe a list of Array items.\n */\nObserver.prototype.observeArray = function observeArray (items) {\n for (var i = 0, l = items.length; i < l; i++) {\n observe(items[i]);\n }\n};\n\n// helpers\n\n/**\n * Augment an target Object or Array by intercepting\n * the prototype chain using __proto__\n */\nfunction protoAugment (target, src, keys) {\n /* eslint-disable no-proto */\n target.__proto__ = src;\n /* eslint-enable no-proto */\n}\n\n/**\n * Augment an target Object or Array by defining\n * hidden properties.\n */\n/* istanbul ignore next */\nfunction copyAugment (target, src, keys) {\n for (var i = 0, l = keys.length; i < l; i++) {\n var key = keys[i];\n def(target, key, src[key]);\n }\n}\n\n/**\n * Attempt to create an observer instance for a value,\n * returns the new observer if successfully observed,\n * or the existing observer if the value already has one.\n */\nfunction observe (value, asRootData) {\n if (!isObject(value) || value instanceof VNode) {\n return\n }\n var ob;\n if (hasOwn(value, '__ob__') && value.__ob__ instanceof Observer) {\n ob = value.__ob__;\n } else if (\n observerState.shouldConvert &&\n !isServerRendering() &&\n (Array.isArray(value) || isPlainObject(value)) &&\n Object.isExtensible(value) &&\n !value._isVue\n ) {\n ob = new Observer(value);\n }\n if (asRootData && ob) {\n ob.vmCount++;\n }\n return ob\n}\n\n/**\n * Define a reactive property on an Object.\n */\nfunction defineReactive (\n obj,\n key,\n val,\n customSetter,\n shallow\n) {\n var dep = new Dep();\n\n var property = Object.getOwnPropertyDescriptor(obj, key);\n if (property && property.configurable === false) {\n return\n }\n\n // cater for pre-defined getter/setters\n var getter = property && property.get;\n var setter = property && property.set;\n\n var childOb = !shallow && observe(val);\n Object.defineProperty(obj, key, {\n enumerable: true,\n configurable: true,\n get: function reactiveGetter () {\n var value = getter ? getter.call(obj) : val;\n if (Dep.target) {\n dep.depend();\n if (childOb) {\n childOb.dep.depend();\n if (Array.isArray(value)) {\n dependArray(value);\n }\n }\n }\n return value\n },\n set: function reactiveSetter (newVal) {\n var value = getter ? getter.call(obj) : val;\n /* eslint-disable no-self-compare */\n if (newVal === value || (newVal !== newVal && value !== value)) {\n return\n }\n /* eslint-enable no-self-compare */\n if (false) {\n customSetter();\n }\n if (setter) {\n setter.call(obj, newVal);\n } else {\n val = newVal;\n }\n childOb = !shallow && observe(newVal);\n dep.notify();\n }\n });\n}\n\n/**\n * Set a property on an object. Adds the new property and\n * triggers change notification if the property doesn't\n * already exist.\n */\nfunction set (target, key, val) {\n if (Array.isArray(target) && isValidArrayIndex(key)) {\n target.length = Math.max(target.length, key);\n target.splice(key, 1, val);\n return val\n }\n if (hasOwn(target, key)) {\n target[key] = val;\n return val\n }\n var ob = (target).__ob__;\n if (target._isVue || (ob && ob.vmCount)) {\n \"production\" !== 'production' && warn(\n 'Avoid adding reactive properties to a Vue instance or its root $data ' +\n 'at runtime - declare it upfront in the data option.'\n );\n return val\n }\n if (!ob) {\n target[key] = val;\n return val\n }\n defineReactive(ob.value, key, val);\n ob.dep.notify();\n return val\n}\n\n/**\n * Delete a property and trigger change if necessary.\n */\nfunction del (target, key) {\n if (Array.isArray(target) && isValidArrayIndex(key)) {\n target.splice(key, 1);\n return\n }\n var ob = (target).__ob__;\n if (target._isVue || (ob && ob.vmCount)) {\n \"production\" !== 'production' && warn(\n 'Avoid deleting properties on a Vue instance or its root $data ' +\n '- just set it to null.'\n );\n return\n }\n if (!hasOwn(target, key)) {\n return\n }\n delete target[key];\n if (!ob) {\n return\n }\n ob.dep.notify();\n}\n\n/**\n * Collect dependencies on array elements when the array is touched, since\n * we cannot intercept array element access like property getters.\n */\nfunction dependArray (value) {\n for (var e = (void 0), i = 0, l = value.length; i < l; i++) {\n e = value[i];\n e && e.__ob__ && e.__ob__.dep.depend();\n if (Array.isArray(e)) {\n dependArray(e);\n }\n }\n}\n\n/* */\n\n/**\n * Option overwriting strategies are functions that handle\n * how to merge a parent option value and a child option\n * value into the final value.\n */\nvar strats = config.optionMergeStrategies;\n\n/**\n * Options with restrictions\n */\nif (false) {\n strats.el = strats.propsData = function (parent, child, vm, key) {\n if (!vm) {\n warn(\n \"option \\\"\" + key + \"\\\" can only be used during instance \" +\n 'creation with the `new` keyword.'\n );\n }\n return defaultStrat(parent, child)\n };\n}\n\n/**\n * Helper that recursively merges two data objects together.\n */\nfunction mergeData (to, from) {\n if (!from) { return to }\n var key, toVal, fromVal;\n var keys = Object.keys(from);\n for (var i = 0; i < keys.length; i++) {\n key = keys[i];\n toVal = to[key];\n fromVal = from[key];\n if (!hasOwn(to, key)) {\n set(to, key, fromVal);\n } else if (isPlainObject(toVal) && isPlainObject(fromVal)) {\n mergeData(toVal, fromVal);\n }\n }\n return to\n}\n\n/**\n * Data\n */\nfunction mergeDataOrFn (\n parentVal,\n childVal,\n vm\n) {\n if (!vm) {\n // in a Vue.extend merge, both should be functions\n if (!childVal) {\n return parentVal\n }\n if (!parentVal) {\n return childVal\n }\n // when parentVal & childVal are both present,\n // we need to return a function that returns the\n // merged result of both functions... no need to\n // check if parentVal is a function here because\n // it has to be a function to pass previous merges.\n return function mergedDataFn () {\n return mergeData(\n typeof childVal === 'function' ? childVal.call(this) : childVal,\n typeof parentVal === 'function' ? parentVal.call(this) : parentVal\n )\n }\n } else if (parentVal || childVal) {\n return function mergedInstanceDataFn () {\n // instance merge\n var instanceData = typeof childVal === 'function'\n ? childVal.call(vm)\n : childVal;\n var defaultData = typeof parentVal === 'function'\n ? parentVal.call(vm)\n : parentVal;\n if (instanceData) {\n return mergeData(instanceData, defaultData)\n } else {\n return defaultData\n }\n }\n }\n}\n\nstrats.data = function (\n parentVal,\n childVal,\n vm\n) {\n if (!vm) {\n if (childVal && typeof childVal !== 'function') {\n \"production\" !== 'production' && warn(\n 'The \"data\" option should be a function ' +\n 'that returns a per-instance value in component ' +\n 'definitions.',\n vm\n );\n\n return parentVal\n }\n return mergeDataOrFn.call(this, parentVal, childVal)\n }\n\n return mergeDataOrFn(parentVal, childVal, vm)\n};\n\n/**\n * Hooks and props are merged as arrays.\n */\nfunction mergeHook (\n parentVal,\n childVal\n) {\n return childVal\n ? parentVal\n ? parentVal.concat(childVal)\n : Array.isArray(childVal)\n ? childVal\n : [childVal]\n : parentVal\n}\n\nLIFECYCLE_HOOKS.forEach(function (hook) {\n strats[hook] = mergeHook;\n});\n\n/**\n * Assets\n *\n * When a vm is present (instance creation), we need to do\n * a three-way merge between constructor options, instance\n * options and parent options.\n */\nfunction mergeAssets (\n parentVal,\n childVal,\n vm,\n key\n) {\n var res = Object.create(parentVal || null);\n if (childVal) {\n \"production\" !== 'production' && assertObjectType(key, childVal, vm);\n return extend(res, childVal)\n } else {\n return res\n }\n}\n\nASSET_TYPES.forEach(function (type) {\n strats[type + 's'] = mergeAssets;\n});\n\n/**\n * Watchers.\n *\n * Watchers hashes should not overwrite one\n * another, so we merge them as arrays.\n */\nstrats.watch = function (\n parentVal,\n childVal,\n vm,\n key\n) {\n // work around Firefox's Object.prototype.watch...\n if (parentVal === nativeWatch) { parentVal = undefined; }\n if (childVal === nativeWatch) { childVal = undefined; }\n /* istanbul ignore if */\n if (!childVal) { return Object.create(parentVal || null) }\n if (false) {\n assertObjectType(key, childVal, vm);\n }\n if (!parentVal) { return childVal }\n var ret = {};\n extend(ret, parentVal);\n for (var key$1 in childVal) {\n var parent = ret[key$1];\n var child = childVal[key$1];\n if (parent && !Array.isArray(parent)) {\n parent = [parent];\n }\n ret[key$1] = parent\n ? parent.concat(child)\n : Array.isArray(child) ? child : [child];\n }\n return ret\n};\n\n/**\n * Other object hashes.\n */\nstrats.props =\nstrats.methods =\nstrats.inject =\nstrats.computed = function (\n parentVal,\n childVal,\n vm,\n key\n) {\n if (childVal && \"production\" !== 'production') {\n assertObjectType(key, childVal, vm);\n }\n if (!parentVal) { return childVal }\n var ret = Object.create(null);\n extend(ret, parentVal);\n if (childVal) { extend(ret, childVal); }\n return ret\n};\nstrats.provide = mergeDataOrFn;\n\n/**\n * Default strategy.\n */\nvar defaultStrat = function (parentVal, childVal) {\n return childVal === undefined\n ? parentVal\n : childVal\n};\n\n/**\n * Validate component names\n */\nfunction checkComponents (options) {\n for (var key in options.components) {\n var lower = key.toLowerCase();\n if (isBuiltInTag(lower) || config.isReservedTag(lower)) {\n warn(\n 'Do not use built-in or reserved HTML elements as component ' +\n 'id: ' + key\n );\n }\n }\n}\n\n/**\n * Ensure all props option syntax are normalized into the\n * Object-based format.\n */\nfunction normalizeProps (options, vm) {\n var props = options.props;\n if (!props) { return }\n var res = {};\n var i, val, name;\n if (Array.isArray(props)) {\n i = props.length;\n while (i--) {\n val = props[i];\n if (typeof val === 'string') {\n name = camelize(val);\n res[name] = { type: null };\n } else if (false) {\n warn('props must be strings when using array syntax.');\n }\n }\n } else if (isPlainObject(props)) {\n for (var key in props) {\n val = props[key];\n name = camelize(key);\n res[name] = isPlainObject(val)\n ? val\n : { type: val };\n }\n } else if (false) {\n warn(\n \"Invalid value for option \\\"props\\\": expected an Array or an Object, \" +\n \"but got \" + (toRawType(props)) + \".\",\n vm\n );\n }\n options.props = res;\n}\n\n/**\n * Normalize all injections into Object-based format\n */\nfunction normalizeInject (options, vm) {\n var inject = options.inject;\n var normalized = options.inject = {};\n if (Array.isArray(inject)) {\n for (var i = 0; i < inject.length; i++) {\n normalized[inject[i]] = { from: inject[i] };\n }\n } else if (isPlainObject(inject)) {\n for (var key in inject) {\n var val = inject[key];\n normalized[key] = isPlainObject(val)\n ? extend({ from: key }, val)\n : { from: val };\n }\n } else if (false) {\n warn(\n \"Invalid value for option \\\"inject\\\": expected an Array or an Object, \" +\n \"but got \" + (toRawType(inject)) + \".\",\n vm\n );\n }\n}\n\n/**\n * Normalize raw function directives into object format.\n */\nfunction normalizeDirectives (options) {\n var dirs = options.directives;\n if (dirs) {\n for (var key in dirs) {\n var def = dirs[key];\n if (typeof def === 'function') {\n dirs[key] = { bind: def, update: def };\n }\n }\n }\n}\n\nfunction assertObjectType (name, value, vm) {\n if (!isPlainObject(value)) {\n warn(\n \"Invalid value for option \\\"\" + name + \"\\\": expected an Object, \" +\n \"but got \" + (toRawType(value)) + \".\",\n vm\n );\n }\n}\n\n/**\n * Merge two option objects into a new one.\n * Core utility used in both instantiation and inheritance.\n */\nfunction mergeOptions (\n parent,\n child,\n vm\n) {\n if (false) {\n checkComponents(child);\n }\n\n if (typeof child === 'function') {\n child = child.options;\n }\n\n normalizeProps(child, vm);\n normalizeInject(child, vm);\n normalizeDirectives(child);\n var extendsFrom = child.extends;\n if (extendsFrom) {\n parent = mergeOptions(parent, extendsFrom, vm);\n }\n if (child.mixins) {\n for (var i = 0, l = child.mixins.length; i < l; i++) {\n parent = mergeOptions(parent, child.mixins[i], vm);\n }\n }\n var options = {};\n var key;\n for (key in parent) {\n mergeField(key);\n }\n for (key in child) {\n if (!hasOwn(parent, key)) {\n mergeField(key);\n }\n }\n function mergeField (key) {\n var strat = strats[key] || defaultStrat;\n options[key] = strat(parent[key], child[key], vm, key);\n }\n return options\n}\n\n/**\n * Resolve an asset.\n * This function is used because child instances need access\n * to assets defined in its ancestor chain.\n */\nfunction resolveAsset (\n options,\n type,\n id,\n warnMissing\n) {\n /* istanbul ignore if */\n if (typeof id !== 'string') {\n return\n }\n var assets = options[type];\n // check local registration variations first\n if (hasOwn(assets, id)) { return assets[id] }\n var camelizedId = camelize(id);\n if (hasOwn(assets, camelizedId)) { return assets[camelizedId] }\n var PascalCaseId = capitalize(camelizedId);\n if (hasOwn(assets, PascalCaseId)) { return assets[PascalCaseId] }\n // fallback to prototype chain\n var res = assets[id] || assets[camelizedId] || assets[PascalCaseId];\n if (false) {\n warn(\n 'Failed to resolve ' + type.slice(0, -1) + ': ' + id,\n options\n );\n }\n return res\n}\n\n/* */\n\nfunction validateProp (\n key,\n propOptions,\n propsData,\n vm\n) {\n var prop = propOptions[key];\n var absent = !hasOwn(propsData, key);\n var value = propsData[key];\n // handle boolean props\n if (isType(Boolean, prop.type)) {\n if (absent && !hasOwn(prop, 'default')) {\n value = false;\n } else if (!isType(String, prop.type) && (value === '' || value === hyphenate(key))) {\n value = true;\n }\n }\n // check default value\n if (value === undefined) {\n value = getPropDefaultValue(vm, prop, key);\n // since the default value is a fresh copy,\n // make sure to observe it.\n var prevShouldConvert = observerState.shouldConvert;\n observerState.shouldConvert = true;\n observe(value);\n observerState.shouldConvert = prevShouldConvert;\n }\n if (false) {\n assertProp(prop, key, value, vm, absent);\n }\n return value\n}\n\n/**\n * Get the default value of a prop.\n */\nfunction getPropDefaultValue (vm, prop, key) {\n // no default, return undefined\n if (!hasOwn(prop, 'default')) {\n return undefined\n }\n var def = prop.default;\n // warn against non-factory defaults for Object & Array\n if (false) {\n warn(\n 'Invalid default value for prop \"' + key + '\": ' +\n 'Props with type Object/Array must use a factory function ' +\n 'to return the default value.',\n vm\n );\n }\n // the raw prop value was also undefined from previous render,\n // return previous default value to avoid unnecessary watcher trigger\n if (vm && vm.$options.propsData &&\n vm.$options.propsData[key] === undefined &&\n vm._props[key] !== undefined\n ) {\n return vm._props[key]\n }\n // call factory function for non-Function types\n // a value is Function if its prototype is function even across different execution context\n return typeof def === 'function' && getType(prop.type) !== 'Function'\n ? def.call(vm)\n : def\n}\n\n/**\n * Assert whether a prop is valid.\n */\nfunction assertProp (\n prop,\n name,\n value,\n vm,\n absent\n) {\n if (prop.required && absent) {\n warn(\n 'Missing required prop: \"' + name + '\"',\n vm\n );\n return\n }\n if (value == null && !prop.required) {\n return\n }\n var type = prop.type;\n var valid = !type || type === true;\n var expectedTypes = [];\n if (type) {\n if (!Array.isArray(type)) {\n type = [type];\n }\n for (var i = 0; i < type.length && !valid; i++) {\n var assertedType = assertType(value, type[i]);\n expectedTypes.push(assertedType.expectedType || '');\n valid = assertedType.valid;\n }\n }\n if (!valid) {\n warn(\n \"Invalid prop: type check failed for prop \\\"\" + name + \"\\\".\" +\n \" Expected \" + (expectedTypes.map(capitalize).join(', ')) +\n \", got \" + (toRawType(value)) + \".\",\n vm\n );\n return\n }\n var validator = prop.validator;\n if (validator) {\n if (!validator(value)) {\n warn(\n 'Invalid prop: custom validator check failed for prop \"' + name + '\".',\n vm\n );\n }\n }\n}\n\nvar simpleCheckRE = /^(String|Number|Boolean|Function|Symbol)$/;\n\nfunction assertType (value, type) {\n var valid;\n var expectedType = getType(type);\n if (simpleCheckRE.test(expectedType)) {\n var t = typeof value;\n valid = t === expectedType.toLowerCase();\n // for primitive wrapper objects\n if (!valid && t === 'object') {\n valid = value instanceof type;\n }\n } else if (expectedType === 'Object') {\n valid = isPlainObject(value);\n } else if (expectedType === 'Array') {\n valid = Array.isArray(value);\n } else {\n valid = value instanceof type;\n }\n return {\n valid: valid,\n expectedType: expectedType\n }\n}\n\n/**\n * Use function string name to check built-in types,\n * because a simple equality check will fail when running\n * across different vms / iframes.\n */\nfunction getType (fn) {\n var match = fn && fn.toString().match(/^\\s*function (\\w+)/);\n return match ? match[1] : ''\n}\n\nfunction isType (type, fn) {\n if (!Array.isArray(fn)) {\n return getType(fn) === getType(type)\n }\n for (var i = 0, len = fn.length; i < len; i++) {\n if (getType(fn[i]) === getType(type)) {\n return true\n }\n }\n /* istanbul ignore next */\n return false\n}\n\n/* */\n\nfunction handleError (err, vm, info) {\n if (vm) {\n var cur = vm;\n while ((cur = cur.$parent)) {\n var hooks = cur.$options.errorCaptured;\n if (hooks) {\n for (var i = 0; i < hooks.length; i++) {\n try {\n var capture = hooks[i].call(cur, err, vm, info) === false;\n if (capture) { return }\n } catch (e) {\n globalHandleError(e, cur, 'errorCaptured hook');\n }\n }\n }\n }\n }\n globalHandleError(err, vm, info);\n}\n\nfunction globalHandleError (err, vm, info) {\n if (config.errorHandler) {\n try {\n return config.errorHandler.call(null, err, vm, info)\n } catch (e) {\n logError(e, null, 'config.errorHandler');\n }\n }\n logError(err, vm, info);\n}\n\nfunction logError (err, vm, info) {\n if (false) {\n warn((\"Error in \" + info + \": \\\"\" + (err.toString()) + \"\\\"\"), vm);\n }\n /* istanbul ignore else */\n if (inBrowser && typeof console !== 'undefined') {\n console.error(err);\n } else {\n throw err\n }\n}\n\n/* */\n/* globals MessageChannel */\n\nvar callbacks = [];\nvar pending = false;\n\nfunction flushCallbacks () {\n pending = false;\n var copies = callbacks.slice(0);\n callbacks.length = 0;\n for (var i = 0; i < copies.length; i++) {\n copies[i]();\n }\n}\n\n// Here we have async deferring wrappers using both micro and macro tasks.\n// In < 2.4 we used micro tasks everywhere, but there are some scenarios where\n// micro tasks have too high a priority and fires in between supposedly\n// sequential events (e.g. #4521, #6690) or even between bubbling of the same\n// event (#6566). However, using macro tasks everywhere also has subtle problems\n// when state is changed right before repaint (e.g. #6813, out-in transitions).\n// Here we use micro task by default, but expose a way to force macro task when\n// needed (e.g. in event handlers attached by v-on).\nvar microTimerFunc;\nvar macroTimerFunc;\nvar useMacroTask = false;\n\n// Determine (macro) Task defer implementation.\n// Technically setImmediate should be the ideal choice, but it's only available\n// in IE. The only polyfill that consistently queues the callback after all DOM\n// events triggered in the same loop is by using MessageChannel.\n/* istanbul ignore if */\nif (typeof setImmediate !== 'undefined' && isNative(setImmediate)) {\n macroTimerFunc = function () {\n setImmediate(flushCallbacks);\n };\n} else if (typeof MessageChannel !== 'undefined' && (\n isNative(MessageChannel) ||\n // PhantomJS\n MessageChannel.toString() === '[object MessageChannelConstructor]'\n)) {\n var channel = new MessageChannel();\n var port = channel.port2;\n channel.port1.onmessage = flushCallbacks;\n macroTimerFunc = function () {\n port.postMessage(1);\n };\n} else {\n /* istanbul ignore next */\n macroTimerFunc = function () {\n setTimeout(flushCallbacks, 0);\n };\n}\n\n// Determine MicroTask defer implementation.\n/* istanbul ignore next, $flow-disable-line */\nif (typeof Promise !== 'undefined' && isNative(Promise)) {\n var p = Promise.resolve();\n microTimerFunc = function () {\n p.then(flushCallbacks);\n // in problematic UIWebViews, Promise.then doesn't completely break, but\n // it can get stuck in a weird state where callbacks are pushed into the\n // microtask queue but the queue isn't being flushed, until the browser\n // needs to do some other work, e.g. handle a timer. Therefore we can\n // \"force\" the microtask queue to be flushed by adding an empty timer.\n if (isIOS) { setTimeout(noop); }\n };\n} else {\n // fallback to macro\n microTimerFunc = macroTimerFunc;\n}\n\n/**\n * Wrap a function so that if any code inside triggers state change,\n * the changes are queued using a Task instead of a MicroTask.\n */\nfunction withMacroTask (fn) {\n return fn._withTask || (fn._withTask = function () {\n useMacroTask = true;\n var res = fn.apply(null, arguments);\n useMacroTask = false;\n return res\n })\n}\n\nfunction nextTick (cb, ctx) {\n var _resolve;\n callbacks.push(function () {\n if (cb) {\n try {\n cb.call(ctx);\n } catch (e) {\n handleError(e, ctx, 'nextTick');\n }\n } else if (_resolve) {\n _resolve(ctx);\n }\n });\n if (!pending) {\n pending = true;\n if (useMacroTask) {\n macroTimerFunc();\n } else {\n microTimerFunc();\n }\n }\n // $flow-disable-line\n if (!cb && typeof Promise !== 'undefined') {\n return new Promise(function (resolve) {\n _resolve = resolve;\n })\n }\n}\n\n/* */\n\nvar mark;\nvar measure;\n\nif (false) {\n var perf = inBrowser && window.performance;\n /* istanbul ignore if */\n if (\n perf &&\n perf.mark &&\n perf.measure &&\n perf.clearMarks &&\n perf.clearMeasures\n ) {\n mark = function (tag) { return perf.mark(tag); };\n measure = function (name, startTag, endTag) {\n perf.measure(name, startTag, endTag);\n perf.clearMarks(startTag);\n perf.clearMarks(endTag);\n perf.clearMeasures(name);\n };\n }\n}\n\n/* not type checking this file because flow doesn't play well with Proxy */\n\nvar initProxy;\n\nif (false) {\n var allowedGlobals = makeMap(\n 'Infinity,undefined,NaN,isFinite,isNaN,' +\n 'parseFloat,parseInt,decodeURI,decodeURIComponent,encodeURI,encodeURIComponent,' +\n 'Math,Number,Date,Array,Object,Boolean,String,RegExp,Map,Set,JSON,Intl,' +\n 'require' // for Webpack/Browserify\n );\n\n var warnNonPresent = function (target, key) {\n warn(\n \"Property or method \\\"\" + key + \"\\\" is not defined on the instance but \" +\n 'referenced during render. Make sure that this property is reactive, ' +\n 'either in the data option, or for class-based components, by ' +\n 'initializing the property. ' +\n 'See: https://vuejs.org/v2/guide/reactivity.html#Declaring-Reactive-Properties.',\n target\n );\n };\n\n var hasProxy =\n typeof Proxy !== 'undefined' &&\n Proxy.toString().match(/native code/);\n\n if (hasProxy) {\n var isBuiltInModifier = makeMap('stop,prevent,self,ctrl,shift,alt,meta,exact');\n config.keyCodes = new Proxy(config.keyCodes, {\n set: function set (target, key, value) {\n if (isBuiltInModifier(key)) {\n warn((\"Avoid overwriting built-in modifier in config.keyCodes: .\" + key));\n return false\n } else {\n target[key] = value;\n return true\n }\n }\n });\n }\n\n var hasHandler = {\n has: function has (target, key) {\n var has = key in target;\n var isAllowed = allowedGlobals(key) || key.charAt(0) === '_';\n if (!has && !isAllowed) {\n warnNonPresent(target, key);\n }\n return has || !isAllowed\n }\n };\n\n var getHandler = {\n get: function get (target, key) {\n if (typeof key === 'string' && !(key in target)) {\n warnNonPresent(target, key);\n }\n return target[key]\n }\n };\n\n initProxy = function initProxy (vm) {\n if (hasProxy) {\n // determine which proxy handler to use\n var options = vm.$options;\n var handlers = options.render && options.render._withStripped\n ? getHandler\n : hasHandler;\n vm._renderProxy = new Proxy(vm, handlers);\n } else {\n vm._renderProxy = vm;\n }\n };\n}\n\n/* */\n\nvar normalizeEvent = cached(function (name) {\n var passive = name.charAt(0) === '&';\n name = passive ? name.slice(1) : name;\n var once$$1 = name.charAt(0) === '~'; // Prefixed last, checked first\n name = once$$1 ? name.slice(1) : name;\n var capture = name.charAt(0) === '!';\n name = capture ? name.slice(1) : name;\n return {\n name: name,\n once: once$$1,\n capture: capture,\n passive: passive\n }\n});\n\nfunction createFnInvoker (fns) {\n function invoker () {\n var arguments$1 = arguments;\n\n var fns = invoker.fns;\n if (Array.isArray(fns)) {\n var cloned = fns.slice();\n for (var i = 0; i < cloned.length; i++) {\n cloned[i].apply(null, arguments$1);\n }\n } else {\n // return handler return value for single handlers\n return fns.apply(null, arguments)\n }\n }\n invoker.fns = fns;\n return invoker\n}\n\nfunction updateListeners (\n on,\n oldOn,\n add,\n remove$$1,\n vm\n) {\n var name, cur, old, event;\n for (name in on) {\n cur = on[name];\n old = oldOn[name];\n event = normalizeEvent(name);\n if (isUndef(cur)) {\n \"production\" !== 'production' && warn(\n \"Invalid handler for event \\\"\" + (event.name) + \"\\\": got \" + String(cur),\n vm\n );\n } else if (isUndef(old)) {\n if (isUndef(cur.fns)) {\n cur = on[name] = createFnInvoker(cur);\n }\n add(event.name, cur, event.once, event.capture, event.passive);\n } else if (cur !== old) {\n old.fns = cur;\n on[name] = old;\n }\n }\n for (name in oldOn) {\n if (isUndef(on[name])) {\n event = normalizeEvent(name);\n remove$$1(event.name, oldOn[name], event.capture);\n }\n }\n}\n\n/* */\n\nfunction mergeVNodeHook (def, hookKey, hook) {\n var invoker;\n var oldHook = def[hookKey];\n\n function wrappedHook () {\n hook.apply(this, arguments);\n // important: remove merged hook to ensure it's called only once\n // and prevent memory leak\n remove(invoker.fns, wrappedHook);\n }\n\n if (isUndef(oldHook)) {\n // no existing hook\n invoker = createFnInvoker([wrappedHook]);\n } else {\n /* istanbul ignore if */\n if (isDef(oldHook.fns) && isTrue(oldHook.merged)) {\n // already a merged invoker\n invoker = oldHook;\n invoker.fns.push(wrappedHook);\n } else {\n // existing plain hook\n invoker = createFnInvoker([oldHook, wrappedHook]);\n }\n }\n\n invoker.merged = true;\n def[hookKey] = invoker;\n}\n\n/* */\n\nfunction extractPropsFromVNodeData (\n data,\n Ctor,\n tag\n) {\n // we are only extracting raw values here.\n // validation and default values are handled in the child\n // component itself.\n var propOptions = Ctor.options.props;\n if (isUndef(propOptions)) {\n return\n }\n var res = {};\n var attrs = data.attrs;\n var props = data.props;\n if (isDef(attrs) || isDef(props)) {\n for (var key in propOptions) {\n var altKey = hyphenate(key);\n if (false) {\n var keyInLowerCase = key.toLowerCase();\n if (\n key !== keyInLowerCase &&\n attrs && hasOwn(attrs, keyInLowerCase)\n ) {\n tip(\n \"Prop \\\"\" + keyInLowerCase + \"\\\" is passed to component \" +\n (formatComponentName(tag || Ctor)) + \", but the declared prop name is\" +\n \" \\\"\" + key + \"\\\". \" +\n \"Note that HTML attributes are case-insensitive and camelCased \" +\n \"props need to use their kebab-case equivalents when using in-DOM \" +\n \"templates. You should probably use \\\"\" + altKey + \"\\\" instead of \\\"\" + key + \"\\\".\"\n );\n }\n }\n checkProp(res, props, key, altKey, true) ||\n checkProp(res, attrs, key, altKey, false);\n }\n }\n return res\n}\n\nfunction checkProp (\n res,\n hash,\n key,\n altKey,\n preserve\n) {\n if (isDef(hash)) {\n if (hasOwn(hash, key)) {\n res[key] = hash[key];\n if (!preserve) {\n delete hash[key];\n }\n return true\n } else if (hasOwn(hash, altKey)) {\n res[key] = hash[altKey];\n if (!preserve) {\n delete hash[altKey];\n }\n return true\n }\n }\n return false\n}\n\n/* */\n\n// The template compiler attempts to minimize the need for normalization by\n// statically analyzing the template at compile time.\n//\n// For plain HTML markup, normalization can be completely skipped because the\n// generated render function is guaranteed to return Array<VNode>. There are\n// two cases where extra normalization is needed:\n\n// 1. When the children contains components - because a functional component\n// may return an Array instead of a single root. In this case, just a simple\n// normalization is needed - if any child is an Array, we flatten the whole\n// thing with Array.prototype.concat. It is guaranteed to be only 1-level deep\n// because functional components already normalize their own children.\nfunction simpleNormalizeChildren (children) {\n for (var i = 0; i < children.length; i++) {\n if (Array.isArray(children[i])) {\n return Array.prototype.concat.apply([], children)\n }\n }\n return children\n}\n\n// 2. When the children contains constructs that always generated nested Arrays,\n// e.g. <template>, <slot>, v-for, or when the children is provided by user\n// with hand-written render functions / JSX. In such cases a full normalization\n// is needed to cater to all possible types of children values.\nfunction normalizeChildren (children) {\n return isPrimitive(children)\n ? [createTextVNode(children)]\n : Array.isArray(children)\n ? normalizeArrayChildren(children)\n : undefined\n}\n\nfunction isTextNode (node) {\n return isDef(node) && isDef(node.text) && isFalse(node.isComment)\n}\n\nfunction normalizeArrayChildren (children, nestedIndex) {\n var res = [];\n var i, c, lastIndex, last;\n for (i = 0; i < children.length; i++) {\n c = children[i];\n if (isUndef(c) || typeof c === 'boolean') { continue }\n lastIndex = res.length - 1;\n last = res[lastIndex];\n // nested\n if (Array.isArray(c)) {\n if (c.length > 0) {\n c = normalizeArrayChildren(c, ((nestedIndex || '') + \"_\" + i));\n // merge adjacent text nodes\n if (isTextNode(c[0]) && isTextNode(last)) {\n res[lastIndex] = createTextVNode(last.text + (c[0]).text);\n c.shift();\n }\n res.push.apply(res, c);\n }\n } else if (isPrimitive(c)) {\n if (isTextNode(last)) {\n // merge adjacent text nodes\n // this is necessary for SSR hydration because text nodes are\n // essentially merged when rendered to HTML strings\n res[lastIndex] = createTextVNode(last.text + c);\n } else if (c !== '') {\n // convert primitive to vnode\n res.push(createTextVNode(c));\n }\n } else {\n if (isTextNode(c) && isTextNode(last)) {\n // merge adjacent text nodes\n res[lastIndex] = createTextVNode(last.text + c.text);\n } else {\n // default key for nested array children (likely generated by v-for)\n if (isTrue(children._isVList) &&\n isDef(c.tag) &&\n isUndef(c.key) &&\n isDef(nestedIndex)) {\n c.key = \"__vlist\" + nestedIndex + \"_\" + i + \"__\";\n }\n res.push(c);\n }\n }\n }\n return res\n}\n\n/* */\n\nfunction ensureCtor (comp, base) {\n if (\n comp.__esModule ||\n (hasSymbol && comp[Symbol.toStringTag] === 'Module')\n ) {\n comp = comp.default;\n }\n return isObject(comp)\n ? base.extend(comp)\n : comp\n}\n\nfunction createAsyncPlaceholder (\n factory,\n data,\n context,\n children,\n tag\n) {\n var node = createEmptyVNode();\n node.asyncFactory = factory;\n node.asyncMeta = { data: data, context: context, children: children, tag: tag };\n return node\n}\n\nfunction resolveAsyncComponent (\n factory,\n baseCtor,\n context\n) {\n if (isTrue(factory.error) && isDef(factory.errorComp)) {\n return factory.errorComp\n }\n\n if (isDef(factory.resolved)) {\n return factory.resolved\n }\n\n if (isTrue(factory.loading) && isDef(factory.loadingComp)) {\n return factory.loadingComp\n }\n\n if (isDef(factory.contexts)) {\n // already pending\n factory.contexts.push(context);\n } else {\n var contexts = factory.contexts = [context];\n var sync = true;\n\n var forceRender = function () {\n for (var i = 0, l = contexts.length; i < l; i++) {\n contexts[i].$forceUpdate();\n }\n };\n\n var resolve = once(function (res) {\n // cache resolved\n factory.resolved = ensureCtor(res, baseCtor);\n // invoke callbacks only if this is not a synchronous resolve\n // (async resolves are shimmed as synchronous during SSR)\n if (!sync) {\n forceRender();\n }\n });\n\n var reject = once(function (reason) {\n \"production\" !== 'production' && warn(\n \"Failed to resolve async component: \" + (String(factory)) +\n (reason ? (\"\\nReason: \" + reason) : '')\n );\n if (isDef(factory.errorComp)) {\n factory.error = true;\n forceRender();\n }\n });\n\n var res = factory(resolve, reject);\n\n if (isObject(res)) {\n if (typeof res.then === 'function') {\n // () => Promise\n if (isUndef(factory.resolved)) {\n res.then(resolve, reject);\n }\n } else if (isDef(res.component) && typeof res.component.then === 'function') {\n res.component.then(resolve, reject);\n\n if (isDef(res.error)) {\n factory.errorComp = ensureCtor(res.error, baseCtor);\n }\n\n if (isDef(res.loading)) {\n factory.loadingComp = ensureCtor(res.loading, baseCtor);\n if (res.delay === 0) {\n factory.loading = true;\n } else {\n setTimeout(function () {\n if (isUndef(factory.resolved) && isUndef(factory.error)) {\n factory.loading = true;\n forceRender();\n }\n }, res.delay || 200);\n }\n }\n\n if (isDef(res.timeout)) {\n setTimeout(function () {\n if (isUndef(factory.resolved)) {\n reject(\n false\n ? (\"timeout (\" + (res.timeout) + \"ms)\")\n : null\n );\n }\n }, res.timeout);\n }\n }\n }\n\n sync = false;\n // return in case resolved synchronously\n return factory.loading\n ? factory.loadingComp\n : factory.resolved\n }\n}\n\n/* */\n\nfunction isAsyncPlaceholder (node) {\n return node.isComment && node.asyncFactory\n}\n\n/* */\n\nfunction getFirstComponentChild (children) {\n if (Array.isArray(children)) {\n for (var i = 0; i < children.length; i++) {\n var c = children[i];\n if (isDef(c) && (isDef(c.componentOptions) || isAsyncPlaceholder(c))) {\n return c\n }\n }\n }\n}\n\n/* */\n\n/* */\n\nfunction initEvents (vm) {\n vm._events = Object.create(null);\n vm._hasHookEvent = false;\n // init parent attached events\n var listeners = vm.$options._parentListeners;\n if (listeners) {\n updateComponentListeners(vm, listeners);\n }\n}\n\nvar target;\n\nfunction add (event, fn, once) {\n if (once) {\n target.$once(event, fn);\n } else {\n target.$on(event, fn);\n }\n}\n\nfunction remove$1 (event, fn) {\n target.$off(event, fn);\n}\n\nfunction updateComponentListeners (\n vm,\n listeners,\n oldListeners\n) {\n target = vm;\n updateListeners(listeners, oldListeners || {}, add, remove$1, vm);\n}\n\nfunction eventsMixin (Vue) {\n var hookRE = /^hook:/;\n Vue.prototype.$on = function (event, fn) {\n var this$1 = this;\n\n var vm = this;\n if (Array.isArray(event)) {\n for (var i = 0, l = event.length; i < l; i++) {\n this$1.$on(event[i], fn);\n }\n } else {\n (vm._events[event] || (vm._events[event] = [])).push(fn);\n // optimize hook:event cost by using a boolean flag marked at registration\n // instead of a hash lookup\n if (hookRE.test(event)) {\n vm._hasHookEvent = true;\n }\n }\n return vm\n };\n\n Vue.prototype.$once = function (event, fn) {\n var vm = this;\n function on () {\n vm.$off(event, on);\n fn.apply(vm, arguments);\n }\n on.fn = fn;\n vm.$on(event, on);\n return vm\n };\n\n Vue.prototype.$off = function (event, fn) {\n var this$1 = this;\n\n var vm = this;\n // all\n if (!arguments.length) {\n vm._events = Object.create(null);\n return vm\n }\n // array of events\n if (Array.isArray(event)) {\n for (var i = 0, l = event.length; i < l; i++) {\n this$1.$off(event[i], fn);\n }\n return vm\n }\n // specific event\n var cbs = vm._events[event];\n if (!cbs) {\n return vm\n }\n if (arguments.length === 1) {\n vm._events[event] = null;\n return vm\n }\n if (fn) {\n // specific handler\n var cb;\n var i$1 = cbs.length;\n while (i$1--) {\n cb = cbs[i$1];\n if (cb === fn || cb.fn === fn) {\n cbs.splice(i$1, 1);\n break\n }\n }\n }\n return vm\n };\n\n Vue.prototype.$emit = function (event) {\n var vm = this;\n if (false) {\n var lowerCaseEvent = event.toLowerCase();\n if (lowerCaseEvent !== event && vm._events[lowerCaseEvent]) {\n tip(\n \"Event \\\"\" + lowerCaseEvent + \"\\\" is emitted in component \" +\n (formatComponentName(vm)) + \" but the handler is registered for \\\"\" + event + \"\\\". \" +\n \"Note that HTML attributes are case-insensitive and you cannot use \" +\n \"v-on to listen to camelCase events when using in-DOM templates. \" +\n \"You should probably use \\\"\" + (hyphenate(event)) + \"\\\" instead of \\\"\" + event + \"\\\".\"\n );\n }\n }\n var cbs = vm._events[event];\n if (cbs) {\n cbs = cbs.length > 1 ? toArray(cbs) : cbs;\n var args = toArray(arguments, 1);\n for (var i = 0, l = cbs.length; i < l; i++) {\n try {\n cbs[i].apply(vm, args);\n } catch (e) {\n handleError(e, vm, (\"event handler for \\\"\" + event + \"\\\"\"));\n }\n }\n }\n return vm\n };\n}\n\n/* */\n\n/**\n * Runtime helper for resolving raw children VNodes into a slot object.\n */\nfunction resolveSlots (\n children,\n context\n) {\n var slots = {};\n if (!children) {\n return slots\n }\n var defaultSlot = [];\n for (var i = 0, l = children.length; i < l; i++) {\n var child = children[i];\n var data = child.data;\n // remove slot attribute if the node is resolved as a Vue slot node\n if (data && data.attrs && data.attrs.slot) {\n delete data.attrs.slot;\n }\n // named slots should only be respected if the vnode was rendered in the\n // same context.\n if ((child.context === context || child.functionalContext === context) &&\n data && data.slot != null\n ) {\n var name = child.data.slot;\n var slot = (slots[name] || (slots[name] = []));\n if (child.tag === 'template') {\n slot.push.apply(slot, child.children);\n } else {\n slot.push(child);\n }\n } else {\n defaultSlot.push(child);\n }\n }\n // ignore whitespace\n if (!defaultSlot.every(isWhitespace)) {\n slots.default = defaultSlot;\n }\n return slots\n}\n\nfunction isWhitespace (node) {\n return node.isComment || node.text === ' '\n}\n\nfunction resolveScopedSlots (\n fns, // see flow/vnode\n res\n) {\n res = res || {};\n for (var i = 0; i < fns.length; i++) {\n if (Array.isArray(fns[i])) {\n resolveScopedSlots(fns[i], res);\n } else {\n res[fns[i].key] = fns[i].fn;\n }\n }\n return res\n}\n\n/* */\n\nvar activeInstance = null;\nvar isUpdatingChildComponent = false;\n\nfunction initLifecycle (vm) {\n var options = vm.$options;\n\n // locate first non-abstract parent\n var parent = options.parent;\n if (parent && !options.abstract) {\n while (parent.$options.abstract && parent.$parent) {\n parent = parent.$parent;\n }\n parent.$children.push(vm);\n }\n\n vm.$parent = parent;\n vm.$root = parent ? parent.$root : vm;\n\n vm.$children = [];\n vm.$refs = {};\n\n vm._watcher = null;\n vm._inactive = null;\n vm._directInactive = false;\n vm._isMounted = false;\n vm._isDestroyed = false;\n vm._isBeingDestroyed = false;\n}\n\nfunction lifecycleMixin (Vue) {\n Vue.prototype._update = function (vnode, hydrating) {\n var vm = this;\n if (vm._isMounted) {\n callHook(vm, 'beforeUpdate');\n }\n var prevEl = vm.$el;\n var prevVnode = vm._vnode;\n var prevActiveInstance = activeInstance;\n activeInstance = vm;\n vm._vnode = vnode;\n // Vue.prototype.__patch__ is injected in entry points\n // based on the rendering backend used.\n if (!prevVnode) {\n // initial render\n vm.$el = vm.__patch__(\n vm.$el, vnode, hydrating, false /* removeOnly */,\n vm.$options._parentElm,\n vm.$options._refElm\n );\n // no need for the ref nodes after initial patch\n // this prevents keeping a detached DOM tree in memory (#5851)\n vm.$options._parentElm = vm.$options._refElm = null;\n } else {\n // updates\n vm.$el = vm.__patch__(prevVnode, vnode);\n }\n activeInstance = prevActiveInstance;\n // update __vue__ reference\n if (prevEl) {\n prevEl.__vue__ = null;\n }\n if (vm.$el) {\n vm.$el.__vue__ = vm;\n }\n // if parent is an HOC, update its $el as well\n if (vm.$vnode && vm.$parent && vm.$vnode === vm.$parent._vnode) {\n vm.$parent.$el = vm.$el;\n }\n // updated hook is called by the scheduler to ensure that children are\n // updated in a parent's updated hook.\n };\n\n Vue.prototype.$forceUpdate = function () {\n var vm = this;\n if (vm._watcher) {\n vm._watcher.update();\n }\n };\n\n Vue.prototype.$destroy = function () {\n var vm = this;\n if (vm._isBeingDestroyed) {\n return\n }\n callHook(vm, 'beforeDestroy');\n vm._isBeingDestroyed = true;\n // remove self from parent\n var parent = vm.$parent;\n if (parent && !parent._isBeingDestroyed && !vm.$options.abstract) {\n remove(parent.$children, vm);\n }\n // teardown watchers\n if (vm._watcher) {\n vm._watcher.teardown();\n }\n var i = vm._watchers.length;\n while (i--) {\n vm._watchers[i].teardown();\n }\n // remove reference from data ob\n // frozen object may not have observer.\n if (vm._data.__ob__) {\n vm._data.__ob__.vmCount--;\n }\n // call the last hook...\n vm._isDestroyed = true;\n // invoke destroy hooks on current rendered tree\n vm.__patch__(vm._vnode, null);\n // fire destroyed hook\n callHook(vm, 'destroyed');\n // turn off all instance listeners.\n vm.$off();\n // remove __vue__ reference\n if (vm.$el) {\n vm.$el.__vue__ = null;\n }\n // release circular reference (#6759)\n if (vm.$vnode) {\n vm.$vnode.parent = null;\n }\n };\n}\n\nfunction mountComponent (\n vm,\n el,\n hydrating\n) {\n vm.$el = el;\n if (!vm.$options.render) {\n vm.$options.render = createEmptyVNode;\n if (false) {\n /* istanbul ignore if */\n if ((vm.$options.template && vm.$options.template.charAt(0) !== '#') ||\n vm.$options.el || el) {\n warn(\n 'You are using the runtime-only build of Vue where the template ' +\n 'compiler is not available. Either pre-compile the templates into ' +\n 'render functions, or use the compiler-included build.',\n vm\n );\n } else {\n warn(\n 'Failed to mount component: template or render function not defined.',\n vm\n );\n }\n }\n }\n callHook(vm, 'beforeMount');\n\n var updateComponent;\n /* istanbul ignore if */\n if (false) {\n updateComponent = function () {\n var name = vm._name;\n var id = vm._uid;\n var startTag = \"vue-perf-start:\" + id;\n var endTag = \"vue-perf-end:\" + id;\n\n mark(startTag);\n var vnode = vm._render();\n mark(endTag);\n measure((\"vue \" + name + \" render\"), startTag, endTag);\n\n mark(startTag);\n vm._update(vnode, hydrating);\n mark(endTag);\n measure((\"vue \" + name + \" patch\"), startTag, endTag);\n };\n } else {\n updateComponent = function () {\n vm._update(vm._render(), hydrating);\n };\n }\n\n vm._watcher = new Watcher(vm, updateComponent, noop);\n hydrating = false;\n\n // manually mounted instance, call mounted on self\n // mounted is called for render-created child components in its inserted hook\n if (vm.$vnode == null) {\n vm._isMounted = true;\n callHook(vm, 'mounted');\n }\n return vm\n}\n\nfunction updateChildComponent (\n vm,\n propsData,\n listeners,\n parentVnode,\n renderChildren\n) {\n if (false) {\n isUpdatingChildComponent = true;\n }\n\n // determine whether component has slot children\n // we need to do this before overwriting $options._renderChildren\n var hasChildren = !!(\n renderChildren || // has new static slots\n vm.$options._renderChildren || // has old static slots\n parentVnode.data.scopedSlots || // has new scoped slots\n vm.$scopedSlots !== emptyObject // has old scoped slots\n );\n\n vm.$options._parentVnode = parentVnode;\n vm.$vnode = parentVnode; // update vm's placeholder node without re-render\n\n if (vm._vnode) { // update child tree's parent\n vm._vnode.parent = parentVnode;\n }\n vm.$options._renderChildren = renderChildren;\n\n // update $attrs and $listeners hash\n // these are also reactive so they may trigger child update if the child\n // used them during render\n vm.$attrs = (parentVnode.data && parentVnode.data.attrs) || emptyObject;\n vm.$listeners = listeners || emptyObject;\n\n // update props\n if (propsData && vm.$options.props) {\n observerState.shouldConvert = false;\n var props = vm._props;\n var propKeys = vm.$options._propKeys || [];\n for (var i = 0; i < propKeys.length; i++) {\n var key = propKeys[i];\n props[key] = validateProp(key, vm.$options.props, propsData, vm);\n }\n observerState.shouldConvert = true;\n // keep a copy of raw propsData\n vm.$options.propsData = propsData;\n }\n\n // update listeners\n if (listeners) {\n var oldListeners = vm.$options._parentListeners;\n vm.$options._parentListeners = listeners;\n updateComponentListeners(vm, listeners, oldListeners);\n }\n // resolve slots + force update if has children\n if (hasChildren) {\n vm.$slots = resolveSlots(renderChildren, parentVnode.context);\n vm.$forceUpdate();\n }\n\n if (false) {\n isUpdatingChildComponent = false;\n }\n}\n\nfunction isInInactiveTree (vm) {\n while (vm && (vm = vm.$parent)) {\n if (vm._inactive) { return true }\n }\n return false\n}\n\nfunction activateChildComponent (vm, direct) {\n if (direct) {\n vm._directInactive = false;\n if (isInInactiveTree(vm)) {\n return\n }\n } else if (vm._directInactive) {\n return\n }\n if (vm._inactive || vm._inactive === null) {\n vm._inactive = false;\n for (var i = 0; i < vm.$children.length; i++) {\n activateChildComponent(vm.$children[i]);\n }\n callHook(vm, 'activated');\n }\n}\n\nfunction deactivateChildComponent (vm, direct) {\n if (direct) {\n vm._directInactive = true;\n if (isInInactiveTree(vm)) {\n return\n }\n }\n if (!vm._inactive) {\n vm._inactive = true;\n for (var i = 0; i < vm.$children.length; i++) {\n deactivateChildComponent(vm.$children[i]);\n }\n callHook(vm, 'deactivated');\n }\n}\n\nfunction callHook (vm, hook) {\n var handlers = vm.$options[hook];\n if (handlers) {\n for (var i = 0, j = handlers.length; i < j; i++) {\n try {\n handlers[i].call(vm);\n } catch (e) {\n handleError(e, vm, (hook + \" hook\"));\n }\n }\n }\n if (vm._hasHookEvent) {\n vm.$emit('hook:' + hook);\n }\n}\n\n/* */\n\n\nvar MAX_UPDATE_COUNT = 100;\n\nvar queue = [];\nvar activatedChildren = [];\nvar has = {};\nvar circular = {};\nvar waiting = false;\nvar flushing = false;\nvar index = 0;\n\n/**\n * Reset the scheduler's state.\n */\nfunction resetSchedulerState () {\n index = queue.length = activatedChildren.length = 0;\n has = {};\n if (false) {\n circular = {};\n }\n waiting = flushing = false;\n}\n\n/**\n * Flush both queues and run the watchers.\n */\nfunction flushSchedulerQueue () {\n flushing = true;\n var watcher, id;\n\n // Sort queue before flush.\n // This ensures that:\n // 1. Components are updated from parent to child. (because parent is always\n // created before the child)\n // 2. A component's user watchers are run before its render watcher (because\n // user watchers are created before the render watcher)\n // 3. If a component is destroyed during a parent component's watcher run,\n // its watchers can be skipped.\n queue.sort(function (a, b) { return a.id - b.id; });\n\n // do not cache length because more watchers might be pushed\n // as we run existing watchers\n for (index = 0; index < queue.length; index++) {\n watcher = queue[index];\n id = watcher.id;\n has[id] = null;\n watcher.run();\n // in dev build, check and stop circular updates.\n if (false) {\n circular[id] = (circular[id] || 0) + 1;\n if (circular[id] > MAX_UPDATE_COUNT) {\n warn(\n 'You may have an infinite update loop ' + (\n watcher.user\n ? (\"in watcher with expression \\\"\" + (watcher.expression) + \"\\\"\")\n : \"in a component render function.\"\n ),\n watcher.vm\n );\n break\n }\n }\n }\n\n // keep copies of post queues before resetting state\n var activatedQueue = activatedChildren.slice();\n var updatedQueue = queue.slice();\n\n resetSchedulerState();\n\n // call component updated and activated hooks\n callActivatedHooks(activatedQueue);\n callUpdatedHooks(updatedQueue);\n\n // devtool hook\n /* istanbul ignore if */\n if (devtools && config.devtools) {\n devtools.emit('flush');\n }\n}\n\nfunction callUpdatedHooks (queue) {\n var i = queue.length;\n while (i--) {\n var watcher = queue[i];\n var vm = watcher.vm;\n if (vm._watcher === watcher && vm._isMounted) {\n callHook(vm, 'updated');\n }\n }\n}\n\n/**\n * Queue a kept-alive component that was activated during patch.\n * The queue will be processed after the entire tree has been patched.\n */\nfunction queueActivatedComponent (vm) {\n // setting _inactive to false here so that a render function can\n // rely on checking whether it's in an inactive tree (e.g. router-view)\n vm._inactive = false;\n activatedChildren.push(vm);\n}\n\nfunction callActivatedHooks (queue) {\n for (var i = 0; i < queue.length; i++) {\n queue[i]._inactive = true;\n activateChildComponent(queue[i], true /* true */);\n }\n}\n\n/**\n * Push a watcher into the watcher queue.\n * Jobs with duplicate IDs will be skipped unless it's\n * pushed when the queue is being flushed.\n */\nfunction queueWatcher (watcher) {\n var id = watcher.id;\n if (has[id] == null) {\n has[id] = true;\n if (!flushing) {\n queue.push(watcher);\n } else {\n // if already flushing, splice the watcher based on its id\n // if already past its id, it will be run next immediately.\n var i = queue.length - 1;\n while (i > index && queue[i].id > watcher.id) {\n i--;\n }\n queue.splice(i + 1, 0, watcher);\n }\n // queue the flush\n if (!waiting) {\n waiting = true;\n nextTick(flushSchedulerQueue);\n }\n }\n}\n\n/* */\n\nvar uid$2 = 0;\n\n/**\n * A watcher parses an expression, collects dependencies,\n * and fires callback when the expression value changes.\n * This is used for both the $watch() api and directives.\n */\nvar Watcher = function Watcher (\n vm,\n expOrFn,\n cb,\n options\n) {\n this.vm = vm;\n vm._watchers.push(this);\n // options\n if (options) {\n this.deep = !!options.deep;\n this.user = !!options.user;\n this.lazy = !!options.lazy;\n this.sync = !!options.sync;\n } else {\n this.deep = this.user = this.lazy = this.sync = false;\n }\n this.cb = cb;\n this.id = ++uid$2; // uid for batching\n this.active = true;\n this.dirty = this.lazy; // for lazy watchers\n this.deps = [];\n this.newDeps = [];\n this.depIds = new _Set();\n this.newDepIds = new _Set();\n this.expression = false\n ? expOrFn.toString()\n : '';\n // parse expression for getter\n if (typeof expOrFn === 'function') {\n this.getter = expOrFn;\n } else {\n this.getter = parsePath(expOrFn);\n if (!this.getter) {\n this.getter = function () {};\n \"production\" !== 'production' && warn(\n \"Failed watching path: \\\"\" + expOrFn + \"\\\" \" +\n 'Watcher only accepts simple dot-delimited paths. ' +\n 'For full control, use a function instead.',\n vm\n );\n }\n }\n this.value = this.lazy\n ? undefined\n : this.get();\n};\n\n/**\n * Evaluate the getter, and re-collect dependencies.\n */\nWatcher.prototype.get = function get () {\n pushTarget(this);\n var value;\n var vm = this.vm;\n try {\n value = this.getter.call(vm, vm);\n } catch (e) {\n if (this.user) {\n handleError(e, vm, (\"getter for watcher \\\"\" + (this.expression) + \"\\\"\"));\n } else {\n throw e\n }\n } finally {\n // \"touch\" every property so they are all tracked as\n // dependencies for deep watching\n if (this.deep) {\n traverse(value);\n }\n popTarget();\n this.cleanupDeps();\n }\n return value\n};\n\n/**\n * Add a dependency to this directive.\n */\nWatcher.prototype.addDep = function addDep (dep) {\n var id = dep.id;\n if (!this.newDepIds.has(id)) {\n this.newDepIds.add(id);\n this.newDeps.push(dep);\n if (!this.depIds.has(id)) {\n dep.addSub(this);\n }\n }\n};\n\n/**\n * Clean up for dependency collection.\n */\nWatcher.prototype.cleanupDeps = function cleanupDeps () {\n var this$1 = this;\n\n var i = this.deps.length;\n while (i--) {\n var dep = this$1.deps[i];\n if (!this$1.newDepIds.has(dep.id)) {\n dep.removeSub(this$1);\n }\n }\n var tmp = this.depIds;\n this.depIds = this.newDepIds;\n this.newDepIds = tmp;\n this.newDepIds.clear();\n tmp = this.deps;\n this.deps = this.newDeps;\n this.newDeps = tmp;\n this.newDeps.length = 0;\n};\n\n/**\n * Subscriber interface.\n * Will be called when a dependency changes.\n */\nWatcher.prototype.update = function update () {\n /* istanbul ignore else */\n if (this.lazy) {\n this.dirty = true;\n } else if (this.sync) {\n this.run();\n } else {\n queueWatcher(this);\n }\n};\n\n/**\n * Scheduler job interface.\n * Will be called by the scheduler.\n */\nWatcher.prototype.run = function run () {\n if (this.active) {\n var value = this.get();\n if (\n value !== this.value ||\n // Deep watchers and watchers on Object/Arrays should fire even\n // when the value is the same, because the value may\n // have mutated.\n isObject(value) ||\n this.deep\n ) {\n // set new value\n var oldValue = this.value;\n this.value = value;\n if (this.user) {\n try {\n this.cb.call(this.vm, value, oldValue);\n } catch (e) {\n handleError(e, this.vm, (\"callback for watcher \\\"\" + (this.expression) + \"\\\"\"));\n }\n } else {\n this.cb.call(this.vm, value, oldValue);\n }\n }\n }\n};\n\n/**\n * Evaluate the value of the watcher.\n * This only gets called for lazy watchers.\n */\nWatcher.prototype.evaluate = function evaluate () {\n this.value = this.get();\n this.dirty = false;\n};\n\n/**\n * Depend on all deps collected by this watcher.\n */\nWatcher.prototype.depend = function depend () {\n var this$1 = this;\n\n var i = this.deps.length;\n while (i--) {\n this$1.deps[i].depend();\n }\n};\n\n/**\n * Remove self from all dependencies' subscriber list.\n */\nWatcher.prototype.teardown = function teardown () {\n var this$1 = this;\n\n if (this.active) {\n // remove self from vm's watcher list\n // this is a somewhat expensive operation so we skip it\n // if the vm is being destroyed.\n if (!this.vm._isBeingDestroyed) {\n remove(this.vm._watchers, this);\n }\n var i = this.deps.length;\n while (i--) {\n this$1.deps[i].removeSub(this$1);\n }\n this.active = false;\n }\n};\n\n/**\n * Recursively traverse an object to evoke all converted\n * getters, so that every nested property inside the object\n * is collected as a \"deep\" dependency.\n */\nvar seenObjects = new _Set();\nfunction traverse (val) {\n seenObjects.clear();\n _traverse(val, seenObjects);\n}\n\nfunction _traverse (val, seen) {\n var i, keys;\n var isA = Array.isArray(val);\n if ((!isA && !isObject(val)) || !Object.isExtensible(val)) {\n return\n }\n if (val.__ob__) {\n var depId = val.__ob__.dep.id;\n if (seen.has(depId)) {\n return\n }\n seen.add(depId);\n }\n if (isA) {\n i = val.length;\n while (i--) { _traverse(val[i], seen); }\n } else {\n keys = Object.keys(val);\n i = keys.length;\n while (i--) { _traverse(val[keys[i]], seen); }\n }\n}\n\n/* */\n\nvar sharedPropertyDefinition = {\n enumerable: true,\n configurable: true,\n get: noop,\n set: noop\n};\n\nfunction proxy (target, sourceKey, key) {\n sharedPropertyDefinition.get = function proxyGetter () {\n return this[sourceKey][key]\n };\n sharedPropertyDefinition.set = function proxySetter (val) {\n this[sourceKey][key] = val;\n };\n Object.defineProperty(target, key, sharedPropertyDefinition);\n}\n\nfunction initState (vm) {\n vm._watchers = [];\n var opts = vm.$options;\n if (opts.props) { initProps(vm, opts.props); }\n if (opts.methods) { initMethods(vm, opts.methods); }\n if (opts.data) {\n initData(vm);\n } else {\n observe(vm._data = {}, true /* asRootData */);\n }\n if (opts.computed) { initComputed(vm, opts.computed); }\n if (opts.watch && opts.watch !== nativeWatch) {\n initWatch(vm, opts.watch);\n }\n}\n\nfunction initProps (vm, propsOptions) {\n var propsData = vm.$options.propsData || {};\n var props = vm._props = {};\n // cache prop keys so that future props updates can iterate using Array\n // instead of dynamic object key enumeration.\n var keys = vm.$options._propKeys = [];\n var isRoot = !vm.$parent;\n // root instance props should be converted\n observerState.shouldConvert = isRoot;\n var loop = function ( key ) {\n keys.push(key);\n var value = validateProp(key, propsOptions, propsData, vm);\n /* istanbul ignore else */\n if (false) {\n var hyphenatedKey = hyphenate(key);\n if (isReservedAttribute(hyphenatedKey) ||\n config.isReservedAttr(hyphenatedKey)) {\n warn(\n (\"\\\"\" + hyphenatedKey + \"\\\" is a reserved attribute and cannot be used as component prop.\"),\n vm\n );\n }\n defineReactive(props, key, value, function () {\n if (vm.$parent && !isUpdatingChildComponent) {\n warn(\n \"Avoid mutating a prop directly since the value will be \" +\n \"overwritten whenever the parent component re-renders. \" +\n \"Instead, use a data or computed property based on the prop's \" +\n \"value. Prop being mutated: \\\"\" + key + \"\\\"\",\n vm\n );\n }\n });\n } else {\n defineReactive(props, key, value);\n }\n // static props are already proxied on the component's prototype\n // during Vue.extend(). We only need to proxy props defined at\n // instantiation here.\n if (!(key in vm)) {\n proxy(vm, \"_props\", key);\n }\n };\n\n for (var key in propsOptions) loop( key );\n observerState.shouldConvert = true;\n}\n\nfunction initData (vm) {\n var data = vm.$options.data;\n data = vm._data = typeof data === 'function'\n ? getData(data, vm)\n : data || {};\n if (!isPlainObject(data)) {\n data = {};\n \"production\" !== 'production' && warn(\n 'data functions should return an object:\\n' +\n 'https://vuejs.org/v2/guide/components.html#data-Must-Be-a-Function',\n vm\n );\n }\n // proxy data on instance\n var keys = Object.keys(data);\n var props = vm.$options.props;\n var methods = vm.$options.methods;\n var i = keys.length;\n while (i--) {\n var key = keys[i];\n if (false) {\n if (methods && hasOwn(methods, key)) {\n warn(\n (\"Method \\\"\" + key + \"\\\" has already been defined as a data property.\"),\n vm\n );\n }\n }\n if (props && hasOwn(props, key)) {\n \"production\" !== 'production' && warn(\n \"The data property \\\"\" + key + \"\\\" is already declared as a prop. \" +\n \"Use prop default value instead.\",\n vm\n );\n } else if (!isReserved(key)) {\n proxy(vm, \"_data\", key);\n }\n }\n // observe data\n observe(data, true /* asRootData */);\n}\n\nfunction getData (data, vm) {\n try {\n return data.call(vm, vm)\n } catch (e) {\n handleError(e, vm, \"data()\");\n return {}\n }\n}\n\nvar computedWatcherOptions = { lazy: true };\n\nfunction initComputed (vm, computed) {\n var watchers = vm._computedWatchers = Object.create(null);\n // computed properties are just getters during SSR\n var isSSR = isServerRendering();\n\n for (var key in computed) {\n var userDef = computed[key];\n var getter = typeof userDef === 'function' ? userDef : userDef.get;\n if (false) {\n warn(\n (\"Getter is missing for computed property \\\"\" + key + \"\\\".\"),\n vm\n );\n }\n\n if (!isSSR) {\n // create internal watcher for the computed property.\n watchers[key] = new Watcher(\n vm,\n getter || noop,\n noop,\n computedWatcherOptions\n );\n }\n\n // component-defined computed properties are already defined on the\n // component prototype. We only need to define computed properties defined\n // at instantiation here.\n if (!(key in vm)) {\n defineComputed(vm, key, userDef);\n } else if (false) {\n if (key in vm.$data) {\n warn((\"The computed property \\\"\" + key + \"\\\" is already defined in data.\"), vm);\n } else if (vm.$options.props && key in vm.$options.props) {\n warn((\"The computed property \\\"\" + key + \"\\\" is already defined as a prop.\"), vm);\n }\n }\n }\n}\n\nfunction defineComputed (\n target,\n key,\n userDef\n) {\n var shouldCache = !isServerRendering();\n if (typeof userDef === 'function') {\n sharedPropertyDefinition.get = shouldCache\n ? createComputedGetter(key)\n : userDef;\n sharedPropertyDefinition.set = noop;\n } else {\n sharedPropertyDefinition.get = userDef.get\n ? shouldCache && userDef.cache !== false\n ? createComputedGetter(key)\n : userDef.get\n : noop;\n sharedPropertyDefinition.set = userDef.set\n ? userDef.set\n : noop;\n }\n if (false) {\n sharedPropertyDefinition.set = function () {\n warn(\n (\"Computed property \\\"\" + key + \"\\\" was assigned to but it has no setter.\"),\n this\n );\n };\n }\n Object.defineProperty(target, key, sharedPropertyDefinition);\n}\n\nfunction createComputedGetter (key) {\n return function computedGetter () {\n var watcher = this._computedWatchers && this._computedWatchers[key];\n if (watcher) {\n if (watcher.dirty) {\n watcher.evaluate();\n }\n if (Dep.target) {\n watcher.depend();\n }\n return watcher.value\n }\n }\n}\n\nfunction initMethods (vm, methods) {\n var props = vm.$options.props;\n for (var key in methods) {\n if (false) {\n if (methods[key] == null) {\n warn(\n \"Method \\\"\" + key + \"\\\" has an undefined value in the component definition. \" +\n \"Did you reference the function correctly?\",\n vm\n );\n }\n if (props && hasOwn(props, key)) {\n warn(\n (\"Method \\\"\" + key + \"\\\" has already been defined as a prop.\"),\n vm\n );\n }\n if ((key in vm) && isReserved(key)) {\n warn(\n \"Method \\\"\" + key + \"\\\" conflicts with an existing Vue instance method. \" +\n \"Avoid defining component methods that start with _ or $.\"\n );\n }\n }\n vm[key] = methods[key] == null ? noop : bind(methods[key], vm);\n }\n}\n\nfunction initWatch (vm, watch) {\n for (var key in watch) {\n var handler = watch[key];\n if (Array.isArray(handler)) {\n for (var i = 0; i < handler.length; i++) {\n createWatcher(vm, key, handler[i]);\n }\n } else {\n createWatcher(vm, key, handler);\n }\n }\n}\n\nfunction createWatcher (\n vm,\n keyOrFn,\n handler,\n options\n) {\n if (isPlainObject(handler)) {\n options = handler;\n handler = handler.handler;\n }\n if (typeof handler === 'string') {\n handler = vm[handler];\n }\n return vm.$watch(keyOrFn, handler, options)\n}\n\nfunction stateMixin (Vue) {\n // flow somehow has problems with directly declared definition object\n // when using Object.defineProperty, so we have to procedurally build up\n // the object here.\n var dataDef = {};\n dataDef.get = function () { return this._data };\n var propsDef = {};\n propsDef.get = function () { return this._props };\n if (false) {\n dataDef.set = function (newData) {\n warn(\n 'Avoid replacing instance root $data. ' +\n 'Use nested data properties instead.',\n this\n );\n };\n propsDef.set = function () {\n warn(\"$props is readonly.\", this);\n };\n }\n Object.defineProperty(Vue.prototype, '$data', dataDef);\n Object.defineProperty(Vue.prototype, '$props', propsDef);\n\n Vue.prototype.$set = set;\n Vue.prototype.$delete = del;\n\n Vue.prototype.$watch = function (\n expOrFn,\n cb,\n options\n ) {\n var vm = this;\n if (isPlainObject(cb)) {\n return createWatcher(vm, expOrFn, cb, options)\n }\n options = options || {};\n options.user = true;\n var watcher = new Watcher(vm, expOrFn, cb, options);\n if (options.immediate) {\n cb.call(vm, watcher.value);\n }\n return function unwatchFn () {\n watcher.teardown();\n }\n };\n}\n\n/* */\n\nfunction initProvide (vm) {\n var provide = vm.$options.provide;\n if (provide) {\n vm._provided = typeof provide === 'function'\n ? provide.call(vm)\n : provide;\n }\n}\n\nfunction initInjections (vm) {\n var result = resolveInject(vm.$options.inject, vm);\n if (result) {\n observerState.shouldConvert = false;\n Object.keys(result).forEach(function (key) {\n /* istanbul ignore else */\n if (false) {\n defineReactive(vm, key, result[key], function () {\n warn(\n \"Avoid mutating an injected value directly since the changes will be \" +\n \"overwritten whenever the provided component re-renders. \" +\n \"injection being mutated: \\\"\" + key + \"\\\"\",\n vm\n );\n });\n } else {\n defineReactive(vm, key, result[key]);\n }\n });\n observerState.shouldConvert = true;\n }\n}\n\nfunction resolveInject (inject, vm) {\n if (inject) {\n // inject is :any because flow is not smart enough to figure out cached\n var result = Object.create(null);\n var keys = hasSymbol\n ? Reflect.ownKeys(inject).filter(function (key) {\n /* istanbul ignore next */\n return Object.getOwnPropertyDescriptor(inject, key).enumerable\n })\n : Object.keys(inject);\n\n for (var i = 0; i < keys.length; i++) {\n var key = keys[i];\n var provideKey = inject[key].from;\n var source = vm;\n while (source) {\n if (source._provided && provideKey in source._provided) {\n result[key] = source._provided[provideKey];\n break\n }\n source = source.$parent;\n }\n if (!source) {\n if ('default' in inject[key]) {\n var provideDefault = inject[key].default;\n result[key] = typeof provideDefault === 'function'\n ? provideDefault.call(vm)\n : provideDefault;\n } else if (false) {\n warn((\"Injection \\\"\" + key + \"\\\" not found\"), vm);\n }\n }\n }\n return result\n }\n}\n\n/* */\n\n/**\n * Runtime helper for rendering v-for lists.\n */\nfunction renderList (\n val,\n render\n) {\n var ret, i, l, keys, key;\n if (Array.isArray(val) || typeof val === 'string') {\n ret = new Array(val.length);\n for (i = 0, l = val.length; i < l; i++) {\n ret[i] = render(val[i], i);\n }\n } else if (typeof val === 'number') {\n ret = new Array(val);\n for (i = 0; i < val; i++) {\n ret[i] = render(i + 1, i);\n }\n } else if (isObject(val)) {\n keys = Object.keys(val);\n ret = new Array(keys.length);\n for (i = 0, l = keys.length; i < l; i++) {\n key = keys[i];\n ret[i] = render(val[key], key, i);\n }\n }\n if (isDef(ret)) {\n (ret)._isVList = true;\n }\n return ret\n}\n\n/* */\n\n/**\n * Runtime helper for rendering <slot>\n */\nfunction renderSlot (\n name,\n fallback,\n props,\n bindObject\n) {\n var scopedSlotFn = this.$scopedSlots[name];\n if (scopedSlotFn) { // scoped slot\n props = props || {};\n if (bindObject) {\n if (false) {\n warn(\n 'slot v-bind without argument expects an Object',\n this\n );\n }\n props = extend(extend({}, bindObject), props);\n }\n return scopedSlotFn(props) || fallback\n } else {\n var slotNodes = this.$slots[name];\n // warn duplicate slot usage\n if (slotNodes && \"production\" !== 'production') {\n slotNodes._rendered && warn(\n \"Duplicate presence of slot \\\"\" + name + \"\\\" found in the same render tree \" +\n \"- this will likely cause render errors.\",\n this\n );\n slotNodes._rendered = true;\n }\n return slotNodes || fallback\n }\n}\n\n/* */\n\n/**\n * Runtime helper for resolving filters\n */\nfunction resolveFilter (id) {\n return resolveAsset(this.$options, 'filters', id, true) || identity\n}\n\n/* */\n\n/**\n * Runtime helper for checking keyCodes from config.\n * exposed as Vue.prototype._k\n * passing in eventKeyName as last argument separately for backwards compat\n */\nfunction checkKeyCodes (\n eventKeyCode,\n key,\n builtInAlias,\n eventKeyName\n) {\n var keyCodes = config.keyCodes[key] || builtInAlias;\n if (keyCodes) {\n if (Array.isArray(keyCodes)) {\n return keyCodes.indexOf(eventKeyCode) === -1\n } else {\n return keyCodes !== eventKeyCode\n }\n } else if (eventKeyName) {\n return hyphenate(eventKeyName) !== key\n }\n}\n\n/* */\n\n/**\n * Runtime helper for merging v-bind=\"object\" into a VNode's data.\n */\nfunction bindObjectProps (\n data,\n tag,\n value,\n asProp,\n isSync\n) {\n if (value) {\n if (!isObject(value)) {\n \"production\" !== 'production' && warn(\n 'v-bind without argument expects an Object or Array value',\n this\n );\n } else {\n if (Array.isArray(value)) {\n value = toObject(value);\n }\n var hash;\n var loop = function ( key ) {\n if (\n key === 'class' ||\n key === 'style' ||\n isReservedAttribute(key)\n ) {\n hash = data;\n } else {\n var type = data.attrs && data.attrs.type;\n hash = asProp || config.mustUseProp(tag, type, key)\n ? data.domProps || (data.domProps = {})\n : data.attrs || (data.attrs = {});\n }\n if (!(key in hash)) {\n hash[key] = value[key];\n\n if (isSync) {\n var on = data.on || (data.on = {});\n on[(\"update:\" + key)] = function ($event) {\n value[key] = $event;\n };\n }\n }\n };\n\n for (var key in value) loop( key );\n }\n }\n return data\n}\n\n/* */\n\n/**\n * Runtime helper for rendering static trees.\n */\nfunction renderStatic (\n index,\n isInFor\n) {\n // static trees can be rendered once and cached on the contructor options\n // so every instance shares the same cached trees\n var renderFns = this.$options.staticRenderFns;\n var cached = renderFns.cached || (renderFns.cached = []);\n var tree = cached[index];\n // if has already-rendered static tree and not inside v-for,\n // we can reuse the same tree by doing a shallow clone.\n if (tree && !isInFor) {\n return Array.isArray(tree)\n ? cloneVNodes(tree)\n : cloneVNode(tree)\n }\n // otherwise, render a fresh tree.\n tree = cached[index] = renderFns[index].call(this._renderProxy, null, this);\n markStatic(tree, (\"__static__\" + index), false);\n return tree\n}\n\n/**\n * Runtime helper for v-once.\n * Effectively it means marking the node as static with a unique key.\n */\nfunction markOnce (\n tree,\n index,\n key\n) {\n markStatic(tree, (\"__once__\" + index + (key ? (\"_\" + key) : \"\")), true);\n return tree\n}\n\nfunction markStatic (\n tree,\n key,\n isOnce\n) {\n if (Array.isArray(tree)) {\n for (var i = 0; i < tree.length; i++) {\n if (tree[i] && typeof tree[i] !== 'string') {\n markStaticNode(tree[i], (key + \"_\" + i), isOnce);\n }\n }\n } else {\n markStaticNode(tree, key, isOnce);\n }\n}\n\nfunction markStaticNode (node, key, isOnce) {\n node.isStatic = true;\n node.key = key;\n node.isOnce = isOnce;\n}\n\n/* */\n\nfunction bindObjectListeners (data, value) {\n if (value) {\n if (!isPlainObject(value)) {\n \"production\" !== 'production' && warn(\n 'v-on without argument expects an Object value',\n this\n );\n } else {\n var on = data.on = data.on ? extend({}, data.on) : {};\n for (var key in value) {\n var existing = on[key];\n var ours = value[key];\n on[key] = existing ? [].concat(existing, ours) : ours;\n }\n }\n }\n return data\n}\n\n/* */\n\nfunction installRenderHelpers (target) {\n target._o = markOnce;\n target._n = toNumber;\n target._s = toString;\n target._l = renderList;\n target._t = renderSlot;\n target._q = looseEqual;\n target._i = looseIndexOf;\n target._m = renderStatic;\n target._f = resolveFilter;\n target._k = checkKeyCodes;\n target._b = bindObjectProps;\n target._v = createTextVNode;\n target._e = createEmptyVNode;\n target._u = resolveScopedSlots;\n target._g = bindObjectListeners;\n}\n\n/* */\n\nfunction FunctionalRenderContext (\n data,\n props,\n children,\n parent,\n Ctor\n) {\n var options = Ctor.options;\n this.data = data;\n this.props = props;\n this.children = children;\n this.parent = parent;\n this.listeners = data.on || emptyObject;\n this.injections = resolveInject(options.inject, parent);\n this.slots = function () { return resolveSlots(children, parent); };\n\n // ensure the createElement function in functional components\n // gets a unique context - this is necessary for correct named slot check\n var contextVm = Object.create(parent);\n var isCompiled = isTrue(options._compiled);\n var needNormalization = !isCompiled;\n\n // support for compiled functional template\n if (isCompiled) {\n // exposing $options for renderStatic()\n this.$options = options;\n // pre-resolve slots for renderSlot()\n this.$slots = this.slots();\n this.$scopedSlots = data.scopedSlots || emptyObject;\n }\n\n if (options._scopeId) {\n this._c = function (a, b, c, d) {\n var vnode = createElement(contextVm, a, b, c, d, needNormalization);\n if (vnode) {\n vnode.functionalScopeId = options._scopeId;\n vnode.functionalContext = parent;\n }\n return vnode\n };\n } else {\n this._c = function (a, b, c, d) { return createElement(contextVm, a, b, c, d, needNormalization); };\n }\n}\n\ninstallRenderHelpers(FunctionalRenderContext.prototype);\n\nfunction createFunctionalComponent (\n Ctor,\n propsData,\n data,\n contextVm,\n children\n) {\n var options = Ctor.options;\n var props = {};\n var propOptions = options.props;\n if (isDef(propOptions)) {\n for (var key in propOptions) {\n props[key] = validateProp(key, propOptions, propsData || emptyObject);\n }\n } else {\n if (isDef(data.attrs)) { mergeProps(props, data.attrs); }\n if (isDef(data.props)) { mergeProps(props, data.props); }\n }\n\n var renderContext = new FunctionalRenderContext(\n data,\n props,\n children,\n contextVm,\n Ctor\n );\n\n var vnode = options.render.call(null, renderContext._c, renderContext);\n\n if (vnode instanceof VNode) {\n vnode.functionalContext = contextVm;\n vnode.functionalOptions = options;\n if (data.slot) {\n (vnode.data || (vnode.data = {})).slot = data.slot;\n }\n }\n\n return vnode\n}\n\nfunction mergeProps (to, from) {\n for (var key in from) {\n to[camelize(key)] = from[key];\n }\n}\n\n/* */\n\n// hooks to be invoked on component VNodes during patch\nvar componentVNodeHooks = {\n init: function init (\n vnode,\n hydrating,\n parentElm,\n refElm\n ) {\n if (!vnode.componentInstance || vnode.componentInstance._isDestroyed) {\n var child = vnode.componentInstance = createComponentInstanceForVnode(\n vnode,\n activeInstance,\n parentElm,\n refElm\n );\n child.$mount(hydrating ? vnode.elm : undefined, hydrating);\n } else if (vnode.data.keepAlive) {\n // kept-alive components, treat as a patch\n var mountedNode = vnode; // work around flow\n componentVNodeHooks.prepatch(mountedNode, mountedNode);\n }\n },\n\n prepatch: function prepatch (oldVnode, vnode) {\n var options = vnode.componentOptions;\n var child = vnode.componentInstance = oldVnode.componentInstance;\n updateChildComponent(\n child,\n options.propsData, // updated props\n options.listeners, // updated listeners\n vnode, // new parent vnode\n options.children // new children\n );\n },\n\n insert: function insert (vnode) {\n var context = vnode.context;\n var componentInstance = vnode.componentInstance;\n if (!componentInstance._isMounted) {\n componentInstance._isMounted = true;\n callHook(componentInstance, 'mounted');\n }\n if (vnode.data.keepAlive) {\n if (context._isMounted) {\n // vue-router#1212\n // During updates, a kept-alive component's child components may\n // change, so directly walking the tree here may call activated hooks\n // on incorrect children. Instead we push them into a queue which will\n // be processed after the whole patch process ended.\n queueActivatedComponent(componentInstance);\n } else {\n activateChildComponent(componentInstance, true /* direct */);\n }\n }\n },\n\n destroy: function destroy (vnode) {\n var componentInstance = vnode.componentInstance;\n if (!componentInstance._isDestroyed) {\n if (!vnode.data.keepAlive) {\n componentInstance.$destroy();\n } else {\n deactivateChildComponent(componentInstance, true /* direct */);\n }\n }\n }\n};\n\nvar hooksToMerge = Object.keys(componentVNodeHooks);\n\nfunction createComponent (\n Ctor,\n data,\n context,\n children,\n tag\n) {\n if (isUndef(Ctor)) {\n return\n }\n\n var baseCtor = context.$options._base;\n\n // plain options object: turn it into a constructor\n if (isObject(Ctor)) {\n Ctor = baseCtor.extend(Ctor);\n }\n\n // if at this stage it's not a constructor or an async component factory,\n // reject.\n if (typeof Ctor !== 'function') {\n if (false) {\n warn((\"Invalid Component definition: \" + (String(Ctor))), context);\n }\n return\n }\n\n // async component\n var asyncFactory;\n if (isUndef(Ctor.cid)) {\n asyncFactory = Ctor;\n Ctor = resolveAsyncComponent(asyncFactory, baseCtor, context);\n if (Ctor === undefined) {\n // return a placeholder node for async component, which is rendered\n // as a comment node but preserves all the raw information for the node.\n // the information will be used for async server-rendering and hydration.\n return createAsyncPlaceholder(\n asyncFactory,\n data,\n context,\n children,\n tag\n )\n }\n }\n\n data = data || {};\n\n // resolve constructor options in case global mixins are applied after\n // component constructor creation\n resolveConstructorOptions(Ctor);\n\n // transform component v-model data into props & events\n if (isDef(data.model)) {\n transformModel(Ctor.options, data);\n }\n\n // extract props\n var propsData = extractPropsFromVNodeData(data, Ctor, tag);\n\n // functional component\n if (isTrue(Ctor.options.functional)) {\n return createFunctionalComponent(Ctor, propsData, data, context, children)\n }\n\n // extract listeners, since these needs to be treated as\n // child component listeners instead of DOM listeners\n var listeners = data.on;\n // replace with listeners with .native modifier\n // so it gets processed during parent component patch.\n data.on = data.nativeOn;\n\n if (isTrue(Ctor.options.abstract)) {\n // abstract components do not keep anything\n // other than props & listeners & slot\n\n // work around flow\n var slot = data.slot;\n data = {};\n if (slot) {\n data.slot = slot;\n }\n }\n\n // merge component management hooks onto the placeholder node\n mergeHooks(data);\n\n // return a placeholder vnode\n var name = Ctor.options.name || tag;\n var vnode = new VNode(\n (\"vue-component-\" + (Ctor.cid) + (name ? (\"-\" + name) : '')),\n data, undefined, undefined, undefined, context,\n { Ctor: Ctor, propsData: propsData, listeners: listeners, tag: tag, children: children },\n asyncFactory\n );\n return vnode\n}\n\nfunction createComponentInstanceForVnode (\n vnode, // we know it's MountedComponentVNode but flow doesn't\n parent, // activeInstance in lifecycle state\n parentElm,\n refElm\n) {\n var vnodeComponentOptions = vnode.componentOptions;\n var options = {\n _isComponent: true,\n parent: parent,\n propsData: vnodeComponentOptions.propsData,\n _componentTag: vnodeComponentOptions.tag,\n _parentVnode: vnode,\n _parentListeners: vnodeComponentOptions.listeners,\n _renderChildren: vnodeComponentOptions.children,\n _parentElm: parentElm || null,\n _refElm: refElm || null\n };\n // check inline-template render functions\n var inlineTemplate = vnode.data.inlineTemplate;\n if (isDef(inlineTemplate)) {\n options.render = inlineTemplate.render;\n options.staticRenderFns = inlineTemplate.staticRenderFns;\n }\n return new vnodeComponentOptions.Ctor(options)\n}\n\nfunction mergeHooks (data) {\n if (!data.hook) {\n data.hook = {};\n }\n for (var i = 0; i < hooksToMerge.length; i++) {\n var key = hooksToMerge[i];\n var fromParent = data.hook[key];\n var ours = componentVNodeHooks[key];\n data.hook[key] = fromParent ? mergeHook$1(ours, fromParent) : ours;\n }\n}\n\nfunction mergeHook$1 (one, two) {\n return function (a, b, c, d) {\n one(a, b, c, d);\n two(a, b, c, d);\n }\n}\n\n// transform component v-model info (value and callback) into\n// prop and event handler respectively.\nfunction transformModel (options, data) {\n var prop = (options.model && options.model.prop) || 'value';\n var event = (options.model && options.model.event) || 'input';(data.props || (data.props = {}))[prop] = data.model.value;\n var on = data.on || (data.on = {});\n if (isDef(on[event])) {\n on[event] = [data.model.callback].concat(on[event]);\n } else {\n on[event] = data.model.callback;\n }\n}\n\n/* */\n\nvar SIMPLE_NORMALIZE = 1;\nvar ALWAYS_NORMALIZE = 2;\n\n// wrapper function for providing a more flexible interface\n// without getting yelled at by flow\nfunction createElement (\n context,\n tag,\n data,\n children,\n normalizationType,\n alwaysNormalize\n) {\n if (Array.isArray(data) || isPrimitive(data)) {\n normalizationType = children;\n children = data;\n data = undefined;\n }\n if (isTrue(alwaysNormalize)) {\n normalizationType = ALWAYS_NORMALIZE;\n }\n return _createElement(context, tag, data, children, normalizationType)\n}\n\nfunction _createElement (\n context,\n tag,\n data,\n children,\n normalizationType\n) {\n if (isDef(data) && isDef((data).__ob__)) {\n \"production\" !== 'production' && warn(\n \"Avoid using observed data object as vnode data: \" + (JSON.stringify(data)) + \"\\n\" +\n 'Always create fresh vnode data objects in each render!',\n context\n );\n return createEmptyVNode()\n }\n // object syntax in v-bind\n if (isDef(data) && isDef(data.is)) {\n tag = data.is;\n }\n if (!tag) {\n // in case of component :is set to falsy value\n return createEmptyVNode()\n }\n // warn against non-primitive key\n if (false\n ) {\n warn(\n 'Avoid using non-primitive value as key, ' +\n 'use string/number value instead.',\n context\n );\n }\n // support single function children as default scoped slot\n if (Array.isArray(children) &&\n typeof children[0] === 'function'\n ) {\n data = data || {};\n data.scopedSlots = { default: children[0] };\n children.length = 0;\n }\n if (normalizationType === ALWAYS_NORMALIZE) {\n children = normalizeChildren(children);\n } else if (normalizationType === SIMPLE_NORMALIZE) {\n children = simpleNormalizeChildren(children);\n }\n var vnode, ns;\n if (typeof tag === 'string') {\n var Ctor;\n ns = (context.$vnode && context.$vnode.ns) || config.getTagNamespace(tag);\n if (config.isReservedTag(tag)) {\n // platform built-in elements\n vnode = new VNode(\n config.parsePlatformTagName(tag), data, children,\n undefined, undefined, context\n );\n } else if (isDef(Ctor = resolveAsset(context.$options, 'components', tag))) {\n // component\n vnode = createComponent(Ctor, data, context, children, tag);\n } else {\n // unknown or unlisted namespaced elements\n // check at runtime because it may get assigned a namespace when its\n // parent normalizes children\n vnode = new VNode(\n tag, data, children,\n undefined, undefined, context\n );\n }\n } else {\n // direct component options / constructor\n vnode = createComponent(tag, data, context, children);\n }\n if (isDef(vnode)) {\n if (ns) { applyNS(vnode, ns); }\n return vnode\n } else {\n return createEmptyVNode()\n }\n}\n\nfunction applyNS (vnode, ns, force) {\n vnode.ns = ns;\n if (vnode.tag === 'foreignObject') {\n // use default namespace inside foreignObject\n ns = undefined;\n force = true;\n }\n if (isDef(vnode.children)) {\n for (var i = 0, l = vnode.children.length; i < l; i++) {\n var child = vnode.children[i];\n if (isDef(child.tag) && (isUndef(child.ns) || isTrue(force))) {\n applyNS(child, ns, force);\n }\n }\n }\n}\n\n/* */\n\nfunction initRender (vm) {\n vm._vnode = null; // the root of the child tree\n var options = vm.$options;\n var parentVnode = vm.$vnode = options._parentVnode; // the placeholder node in parent tree\n var renderContext = parentVnode && parentVnode.context;\n vm.$slots = resolveSlots(options._renderChildren, renderContext);\n vm.$scopedSlots = emptyObject;\n // bind the createElement fn to this instance\n // so that we get proper render context inside it.\n // args order: tag, data, children, normalizationType, alwaysNormalize\n // internal version is used by render functions compiled from templates\n vm._c = function (a, b, c, d) { return createElement(vm, a, b, c, d, false); };\n // normalization is always applied for the public version, used in\n // user-written render functions.\n vm.$createElement = function (a, b, c, d) { return createElement(vm, a, b, c, d, true); };\n\n // $attrs & $listeners are exposed for easier HOC creation.\n // they need to be reactive so that HOCs using them are always updated\n var parentData = parentVnode && parentVnode.data;\n\n /* istanbul ignore else */\n if (false) {\n defineReactive(vm, '$attrs', parentData && parentData.attrs || emptyObject, function () {\n !isUpdatingChildComponent && warn(\"$attrs is readonly.\", vm);\n }, true);\n defineReactive(vm, '$listeners', options._parentListeners || emptyObject, function () {\n !isUpdatingChildComponent && warn(\"$listeners is readonly.\", vm);\n }, true);\n } else {\n defineReactive(vm, '$attrs', parentData && parentData.attrs || emptyObject, null, true);\n defineReactive(vm, '$listeners', options._parentListeners || emptyObject, null, true);\n }\n}\n\nfunction renderMixin (Vue) {\n // install runtime convenience helpers\n installRenderHelpers(Vue.prototype);\n\n Vue.prototype.$nextTick = function (fn) {\n return nextTick(fn, this)\n };\n\n Vue.prototype._render = function () {\n var vm = this;\n var ref = vm.$options;\n var render = ref.render;\n var _parentVnode = ref._parentVnode;\n\n if (vm._isMounted) {\n // if the parent didn't update, the slot nodes will be the ones from\n // last render. They need to be cloned to ensure \"freshness\" for this render.\n for (var key in vm.$slots) {\n var slot = vm.$slots[key];\n if (slot._rendered) {\n vm.$slots[key] = cloneVNodes(slot, true /* deep */);\n }\n }\n }\n\n vm.$scopedSlots = (_parentVnode && _parentVnode.data.scopedSlots) || emptyObject;\n\n // set parent vnode. this allows render functions to have access\n // to the data on the placeholder node.\n vm.$vnode = _parentVnode;\n // render self\n var vnode;\n try {\n vnode = render.call(vm._renderProxy, vm.$createElement);\n } catch (e) {\n handleError(e, vm, \"render\");\n // return error render result,\n // or previous vnode to prevent render error causing blank component\n /* istanbul ignore else */\n if (false) {\n if (vm.$options.renderError) {\n try {\n vnode = vm.$options.renderError.call(vm._renderProxy, vm.$createElement, e);\n } catch (e) {\n handleError(e, vm, \"renderError\");\n vnode = vm._vnode;\n }\n } else {\n vnode = vm._vnode;\n }\n } else {\n vnode = vm._vnode;\n }\n }\n // return empty vnode in case the render function errored out\n if (!(vnode instanceof VNode)) {\n if (false) {\n warn(\n 'Multiple root nodes returned from render function. Render function ' +\n 'should return a single root node.',\n vm\n );\n }\n vnode = createEmptyVNode();\n }\n // set parent\n vnode.parent = _parentVnode;\n return vnode\n };\n}\n\n/* */\n\nvar uid$1 = 0;\n\nfunction initMixin (Vue) {\n Vue.prototype._init = function (options) {\n var vm = this;\n // a uid\n vm._uid = uid$1++;\n\n var startTag, endTag;\n /* istanbul ignore if */\n if (false) {\n startTag = \"vue-perf-start:\" + (vm._uid);\n endTag = \"vue-perf-end:\" + (vm._uid);\n mark(startTag);\n }\n\n // a flag to avoid this being observed\n vm._isVue = true;\n // merge options\n if (options && options._isComponent) {\n // optimize internal component instantiation\n // since dynamic options merging is pretty slow, and none of the\n // internal component options needs special treatment.\n initInternalComponent(vm, options);\n } else {\n vm.$options = mergeOptions(\n resolveConstructorOptions(vm.constructor),\n options || {},\n vm\n );\n }\n /* istanbul ignore else */\n if (false) {\n initProxy(vm);\n } else {\n vm._renderProxy = vm;\n }\n // expose real self\n vm._self = vm;\n initLifecycle(vm);\n initEvents(vm);\n initRender(vm);\n callHook(vm, 'beforeCreate');\n initInjections(vm); // resolve injections before data/props\n initState(vm);\n initProvide(vm); // resolve provide after data/props\n callHook(vm, 'created');\n\n /* istanbul ignore if */\n if (false) {\n vm._name = formatComponentName(vm, false);\n mark(endTag);\n measure((\"vue \" + (vm._name) + \" init\"), startTag, endTag);\n }\n\n if (vm.$options.el) {\n vm.$mount(vm.$options.el);\n }\n };\n}\n\nfunction initInternalComponent (vm, options) {\n var opts = vm.$options = Object.create(vm.constructor.options);\n // doing this because it's faster than dynamic enumeration.\n opts.parent = options.parent;\n opts.propsData = options.propsData;\n opts._parentVnode = options._parentVnode;\n opts._parentListeners = options._parentListeners;\n opts._renderChildren = options._renderChildren;\n opts._componentTag = options._componentTag;\n opts._parentElm = options._parentElm;\n opts._refElm = options._refElm;\n if (options.render) {\n opts.render = options.render;\n opts.staticRenderFns = options.staticRenderFns;\n }\n}\n\nfunction resolveConstructorOptions (Ctor) {\n var options = Ctor.options;\n if (Ctor.super) {\n var superOptions = resolveConstructorOptions(Ctor.super);\n var cachedSuperOptions = Ctor.superOptions;\n if (superOptions !== cachedSuperOptions) {\n // super option changed,\n // need to resolve new options.\n Ctor.superOptions = superOptions;\n // check if there are any late-modified/attached options (#4976)\n var modifiedOptions = resolveModifiedOptions(Ctor);\n // update base extend options\n if (modifiedOptions) {\n extend(Ctor.extendOptions, modifiedOptions);\n }\n options = Ctor.options = mergeOptions(superOptions, Ctor.extendOptions);\n if (options.name) {\n options.components[options.name] = Ctor;\n }\n }\n }\n return options\n}\n\nfunction resolveModifiedOptions (Ctor) {\n var modified;\n var latest = Ctor.options;\n var extended = Ctor.extendOptions;\n var sealed = Ctor.sealedOptions;\n for (var key in latest) {\n if (latest[key] !== sealed[key]) {\n if (!modified) { modified = {}; }\n modified[key] = dedupe(latest[key], extended[key], sealed[key]);\n }\n }\n return modified\n}\n\nfunction dedupe (latest, extended, sealed) {\n // compare latest and sealed to ensure lifecycle hooks won't be duplicated\n // between merges\n if (Array.isArray(latest)) {\n var res = [];\n sealed = Array.isArray(sealed) ? sealed : [sealed];\n extended = Array.isArray(extended) ? extended : [extended];\n for (var i = 0; i < latest.length; i++) {\n // push original options and not sealed options to exclude duplicated options\n if (extended.indexOf(latest[i]) >= 0 || sealed.indexOf(latest[i]) < 0) {\n res.push(latest[i]);\n }\n }\n return res\n } else {\n return latest\n }\n}\n\nfunction Vue$3 (options) {\n if (false\n ) {\n warn('Vue is a constructor and should be called with the `new` keyword');\n }\n this._init(options);\n}\n\ninitMixin(Vue$3);\nstateMixin(Vue$3);\neventsMixin(Vue$3);\nlifecycleMixin(Vue$3);\nrenderMixin(Vue$3);\n\n/* */\n\nfunction initUse (Vue) {\n Vue.use = function (plugin) {\n var installedPlugins = (this._installedPlugins || (this._installedPlugins = []));\n if (installedPlugins.indexOf(plugin) > -1) {\n return this\n }\n\n // additional parameters\n var args = toArray(arguments, 1);\n args.unshift(this);\n if (typeof plugin.install === 'function') {\n plugin.install.apply(plugin, args);\n } else if (typeof plugin === 'function') {\n plugin.apply(null, args);\n }\n installedPlugins.push(plugin);\n return this\n };\n}\n\n/* */\n\nfunction initMixin$1 (Vue) {\n Vue.mixin = function (mixin) {\n this.options = mergeOptions(this.options, mixin);\n return this\n };\n}\n\n/* */\n\nfunction initExtend (Vue) {\n /**\n * Each instance constructor, including Vue, has a unique\n * cid. This enables us to create wrapped \"child\n * constructors\" for prototypal inheritance and cache them.\n */\n Vue.cid = 0;\n var cid = 1;\n\n /**\n * Class inheritance\n */\n Vue.extend = function (extendOptions) {\n extendOptions = extendOptions || {};\n var Super = this;\n var SuperId = Super.cid;\n var cachedCtors = extendOptions._Ctor || (extendOptions._Ctor = {});\n if (cachedCtors[SuperId]) {\n return cachedCtors[SuperId]\n }\n\n var name = extendOptions.name || Super.options.name;\n if (false) {\n if (!/^[a-zA-Z][\\w-]*$/.test(name)) {\n warn(\n 'Invalid component name: \"' + name + '\". Component names ' +\n 'can only contain alphanumeric characters and the hyphen, ' +\n 'and must start with a letter.'\n );\n }\n }\n\n var Sub = function VueComponent (options) {\n this._init(options);\n };\n Sub.prototype = Object.create(Super.prototype);\n Sub.prototype.constructor = Sub;\n Sub.cid = cid++;\n Sub.options = mergeOptions(\n Super.options,\n extendOptions\n );\n Sub['super'] = Super;\n\n // For props and computed properties, we define the proxy getters on\n // the Vue instances at extension time, on the extended prototype. This\n // avoids Object.defineProperty calls for each instance created.\n if (Sub.options.props) {\n initProps$1(Sub);\n }\n if (Sub.options.computed) {\n initComputed$1(Sub);\n }\n\n // allow further extension/mixin/plugin usage\n Sub.extend = Super.extend;\n Sub.mixin = Super.mixin;\n Sub.use = Super.use;\n\n // create asset registers, so extended classes\n // can have their private assets too.\n ASSET_TYPES.forEach(function (type) {\n Sub[type] = Super[type];\n });\n // enable recursive self-lookup\n if (name) {\n Sub.options.components[name] = Sub;\n }\n\n // keep a reference to the super options at extension time.\n // later at instantiation we can check if Super's options have\n // been updated.\n Sub.superOptions = Super.options;\n Sub.extendOptions = extendOptions;\n Sub.sealedOptions = extend({}, Sub.options);\n\n // cache constructor\n cachedCtors[SuperId] = Sub;\n return Sub\n };\n}\n\nfunction initProps$1 (Comp) {\n var props = Comp.options.props;\n for (var key in props) {\n proxy(Comp.prototype, \"_props\", key);\n }\n}\n\nfunction initComputed$1 (Comp) {\n var computed = Comp.options.computed;\n for (var key in computed) {\n defineComputed(Comp.prototype, key, computed[key]);\n }\n}\n\n/* */\n\nfunction initAssetRegisters (Vue) {\n /**\n * Create asset registration methods.\n */\n ASSET_TYPES.forEach(function (type) {\n Vue[type] = function (\n id,\n definition\n ) {\n if (!definition) {\n return this.options[type + 's'][id]\n } else {\n /* istanbul ignore if */\n if (false) {\n if (type === 'component' && config.isReservedTag(id)) {\n warn(\n 'Do not use built-in or reserved HTML elements as component ' +\n 'id: ' + id\n );\n }\n }\n if (type === 'component' && isPlainObject(definition)) {\n definition.name = definition.name || id;\n definition = this.options._base.extend(definition);\n }\n if (type === 'directive' && typeof definition === 'function') {\n definition = { bind: definition, update: definition };\n }\n this.options[type + 's'][id] = definition;\n return definition\n }\n };\n });\n}\n\n/* */\n\nfunction getComponentName (opts) {\n return opts && (opts.Ctor.options.name || opts.tag)\n}\n\nfunction matches (pattern, name) {\n if (Array.isArray(pattern)) {\n return pattern.indexOf(name) > -1\n } else if (typeof pattern === 'string') {\n return pattern.split(',').indexOf(name) > -1\n } else if (isRegExp(pattern)) {\n return pattern.test(name)\n }\n /* istanbul ignore next */\n return false\n}\n\nfunction pruneCache (keepAliveInstance, filter) {\n var cache = keepAliveInstance.cache;\n var keys = keepAliveInstance.keys;\n var _vnode = keepAliveInstance._vnode;\n for (var key in cache) {\n var cachedNode = cache[key];\n if (cachedNode) {\n var name = getComponentName(cachedNode.componentOptions);\n if (name && !filter(name)) {\n pruneCacheEntry(cache, key, keys, _vnode);\n }\n }\n }\n}\n\nfunction pruneCacheEntry (\n cache,\n key,\n keys,\n current\n) {\n var cached$$1 = cache[key];\n if (cached$$1 && cached$$1 !== current) {\n cached$$1.componentInstance.$destroy();\n }\n cache[key] = null;\n remove(keys, key);\n}\n\nvar patternTypes = [String, RegExp, Array];\n\nvar KeepAlive = {\n name: 'keep-alive',\n abstract: true,\n\n props: {\n include: patternTypes,\n exclude: patternTypes,\n max: [String, Number]\n },\n\n created: function created () {\n this.cache = Object.create(null);\n this.keys = [];\n },\n\n destroyed: function destroyed () {\n var this$1 = this;\n\n for (var key in this$1.cache) {\n pruneCacheEntry(this$1.cache, key, this$1.keys);\n }\n },\n\n watch: {\n include: function include (val) {\n pruneCache(this, function (name) { return matches(val, name); });\n },\n exclude: function exclude (val) {\n pruneCache(this, function (name) { return !matches(val, name); });\n }\n },\n\n render: function render () {\n var vnode = getFirstComponentChild(this.$slots.default);\n var componentOptions = vnode && vnode.componentOptions;\n if (componentOptions) {\n // check pattern\n var name = getComponentName(componentOptions);\n if (name && (\n (this.include && !matches(this.include, name)) ||\n (this.exclude && matches(this.exclude, name))\n )) {\n return vnode\n }\n\n var ref = this;\n var cache = ref.cache;\n var keys = ref.keys;\n var key = vnode.key == null\n // same constructor may get registered as different local components\n // so cid alone is not enough (#3269)\n ? componentOptions.Ctor.cid + (componentOptions.tag ? (\"::\" + (componentOptions.tag)) : '')\n : vnode.key;\n if (cache[key]) {\n vnode.componentInstance = cache[key].componentInstance;\n // make current key freshest\n remove(keys, key);\n keys.push(key);\n } else {\n cache[key] = vnode;\n keys.push(key);\n // prune oldest entry\n if (this.max && keys.length > parseInt(this.max)) {\n pruneCacheEntry(cache, keys[0], keys, this._vnode);\n }\n }\n\n vnode.data.keepAlive = true;\n }\n return vnode\n }\n};\n\nvar builtInComponents = {\n KeepAlive: KeepAlive\n};\n\n/* */\n\nfunction initGlobalAPI (Vue) {\n // config\n var configDef = {};\n configDef.get = function () { return config; };\n if (false) {\n configDef.set = function () {\n warn(\n 'Do not replace the Vue.config object, set individual fields instead.'\n );\n };\n }\n Object.defineProperty(Vue, 'config', configDef);\n\n // exposed util methods.\n // NOTE: these are not considered part of the public API - avoid relying on\n // them unless you are aware of the risk.\n Vue.util = {\n warn: warn,\n extend: extend,\n mergeOptions: mergeOptions,\n defineReactive: defineReactive\n };\n\n Vue.set = set;\n Vue.delete = del;\n Vue.nextTick = nextTick;\n\n Vue.options = Object.create(null);\n ASSET_TYPES.forEach(function (type) {\n Vue.options[type + 's'] = Object.create(null);\n });\n\n // this is used to identify the \"base\" constructor to extend all plain-object\n // components with in Weex's multi-instance scenarios.\n Vue.options._base = Vue;\n\n extend(Vue.options.components, builtInComponents);\n\n initUse(Vue);\n initMixin$1(Vue);\n initExtend(Vue);\n initAssetRegisters(Vue);\n}\n\ninitGlobalAPI(Vue$3);\n\nObject.defineProperty(Vue$3.prototype, '$isServer', {\n get: isServerRendering\n});\n\nObject.defineProperty(Vue$3.prototype, '$ssrContext', {\n get: function get () {\n /* istanbul ignore next */\n return this.$vnode && this.$vnode.ssrContext\n }\n});\n\nVue$3.version = '2.5.2';\n\n/* */\n\n// these are reserved for web because they are directly compiled away\n// during template compilation\nvar isReservedAttr = makeMap('style,class');\n\n// attributes that should be using props for binding\nvar acceptValue = makeMap('input,textarea,option,select,progress');\nvar mustUseProp = function (tag, type, attr) {\n return (\n (attr === 'value' && acceptValue(tag)) && type !== 'button' ||\n (attr === 'selected' && tag === 'option') ||\n (attr === 'checked' && tag === 'input') ||\n (attr === 'muted' && tag === 'video')\n )\n};\n\nvar isEnumeratedAttr = makeMap('contenteditable,draggable,spellcheck');\n\nvar isBooleanAttr = makeMap(\n 'allowfullscreen,async,autofocus,autoplay,checked,compact,controls,declare,' +\n 'default,defaultchecked,defaultmuted,defaultselected,defer,disabled,' +\n 'enabled,formnovalidate,hidden,indeterminate,inert,ismap,itemscope,loop,multiple,' +\n 'muted,nohref,noresize,noshade,novalidate,nowrap,open,pauseonexit,readonly,' +\n 'required,reversed,scoped,seamless,selected,sortable,translate,' +\n 'truespeed,typemustmatch,visible'\n);\n\nvar xlinkNS = 'http://www.w3.org/1999/xlink';\n\nvar isXlink = function (name) {\n return name.charAt(5) === ':' && name.slice(0, 5) === 'xlink'\n};\n\nvar getXlinkProp = function (name) {\n return isXlink(name) ? name.slice(6, name.length) : ''\n};\n\nvar isFalsyAttrValue = function (val) {\n return val == null || val === false\n};\n\n/* */\n\nfunction genClassForVnode (vnode) {\n var data = vnode.data;\n var parentNode = vnode;\n var childNode = vnode;\n while (isDef(childNode.componentInstance)) {\n childNode = childNode.componentInstance._vnode;\n if (childNode.data) {\n data = mergeClassData(childNode.data, data);\n }\n }\n while (isDef(parentNode = parentNode.parent)) {\n if (parentNode.data) {\n data = mergeClassData(data, parentNode.data);\n }\n }\n return renderClass(data.staticClass, data.class)\n}\n\nfunction mergeClassData (child, parent) {\n return {\n staticClass: concat(child.staticClass, parent.staticClass),\n class: isDef(child.class)\n ? [child.class, parent.class]\n : parent.class\n }\n}\n\nfunction renderClass (\n staticClass,\n dynamicClass\n) {\n if (isDef(staticClass) || isDef(dynamicClass)) {\n return concat(staticClass, stringifyClass(dynamicClass))\n }\n /* istanbul ignore next */\n return ''\n}\n\nfunction concat (a, b) {\n return a ? b ? (a + ' ' + b) : a : (b || '')\n}\n\nfunction stringifyClass (value) {\n if (Array.isArray(value)) {\n return stringifyArray(value)\n }\n if (isObject(value)) {\n return stringifyObject(value)\n }\n if (typeof value === 'string') {\n return value\n }\n /* istanbul ignore next */\n return ''\n}\n\nfunction stringifyArray (value) {\n var res = '';\n var stringified;\n for (var i = 0, l = value.length; i < l; i++) {\n if (isDef(stringified = stringifyClass(value[i])) && stringified !== '') {\n if (res) { res += ' '; }\n res += stringified;\n }\n }\n return res\n}\n\nfunction stringifyObject (value) {\n var res = '';\n for (var key in value) {\n if (value[key]) {\n if (res) { res += ' '; }\n res += key;\n }\n }\n return res\n}\n\n/* */\n\nvar namespaceMap = {\n svg: 'http://www.w3.org/2000/svg',\n math: 'http://www.w3.org/1998/Math/MathML'\n};\n\nvar isHTMLTag = makeMap(\n 'html,body,base,head,link,meta,style,title,' +\n 'address,article,aside,footer,header,h1,h2,h3,h4,h5,h6,hgroup,nav,section,' +\n 'div,dd,dl,dt,figcaption,figure,picture,hr,img,li,main,ol,p,pre,ul,' +\n 'a,b,abbr,bdi,bdo,br,cite,code,data,dfn,em,i,kbd,mark,q,rp,rt,rtc,ruby,' +\n 's,samp,small,span,strong,sub,sup,time,u,var,wbr,area,audio,map,track,video,' +\n 'embed,object,param,source,canvas,script,noscript,del,ins,' +\n 'caption,col,colgroup,table,thead,tbody,td,th,tr,' +\n 'button,datalist,fieldset,form,input,label,legend,meter,optgroup,option,' +\n 'output,progress,select,textarea,' +\n 'details,dialog,menu,menuitem,summary,' +\n 'content,element,shadow,template,blockquote,iframe,tfoot'\n);\n\n// this map is intentionally selective, only covering SVG elements that may\n// contain child elements.\nvar isSVG = makeMap(\n 'svg,animate,circle,clippath,cursor,defs,desc,ellipse,filter,font-face,' +\n 'foreignObject,g,glyph,image,line,marker,mask,missing-glyph,path,pattern,' +\n 'polygon,polyline,rect,switch,symbol,text,textpath,tspan,use,view',\n true\n);\n\nvar isPreTag = function (tag) { return tag === 'pre'; };\n\nvar isReservedTag = function (tag) {\n return isHTMLTag(tag) || isSVG(tag)\n};\n\nfunction getTagNamespace (tag) {\n if (isSVG(tag)) {\n return 'svg'\n }\n // basic support for MathML\n // note it doesn't support other MathML elements being component roots\n if (tag === 'math') {\n return 'math'\n }\n}\n\nvar unknownElementCache = Object.create(null);\nfunction isUnknownElement (tag) {\n /* istanbul ignore if */\n if (!inBrowser) {\n return true\n }\n if (isReservedTag(tag)) {\n return false\n }\n tag = tag.toLowerCase();\n /* istanbul ignore if */\n if (unknownElementCache[tag] != null) {\n return unknownElementCache[tag]\n }\n var el = document.createElement(tag);\n if (tag.indexOf('-') > -1) {\n // http://stackoverflow.com/a/28210364/1070244\n return (unknownElementCache[tag] = (\n el.constructor === window.HTMLUnknownElement ||\n el.constructor === window.HTMLElement\n ))\n } else {\n return (unknownElementCache[tag] = /HTMLUnknownElement/.test(el.toString()))\n }\n}\n\nvar isTextInputType = makeMap('text,number,password,search,email,tel,url');\n\n/* */\n\n/**\n * Query an element selector if it's not an element already.\n */\nfunction query (el) {\n if (typeof el === 'string') {\n var selected = document.querySelector(el);\n if (!selected) {\n \"production\" !== 'production' && warn(\n 'Cannot find element: ' + el\n );\n return document.createElement('div')\n }\n return selected\n } else {\n return el\n }\n}\n\n/* */\n\nfunction createElement$1 (tagName, vnode) {\n var elm = document.createElement(tagName);\n if (tagName !== 'select') {\n return elm\n }\n // false or null will remove the attribute but undefined will not\n if (vnode.data && vnode.data.attrs && vnode.data.attrs.multiple !== undefined) {\n elm.setAttribute('multiple', 'multiple');\n }\n return elm\n}\n\nfunction createElementNS (namespace, tagName) {\n return document.createElementNS(namespaceMap[namespace], tagName)\n}\n\nfunction createTextNode (text) {\n return document.createTextNode(text)\n}\n\nfunction createComment (text) {\n return document.createComment(text)\n}\n\nfunction insertBefore (parentNode, newNode, referenceNode) {\n parentNode.insertBefore(newNode, referenceNode);\n}\n\nfunction removeChild (node, child) {\n node.removeChild(child);\n}\n\nfunction appendChild (node, child) {\n node.appendChild(child);\n}\n\nfunction parentNode (node) {\n return node.parentNode\n}\n\nfunction nextSibling (node) {\n return node.nextSibling\n}\n\nfunction tagName (node) {\n return node.tagName\n}\n\nfunction setTextContent (node, text) {\n node.textContent = text;\n}\n\nfunction setAttribute (node, key, val) {\n node.setAttribute(key, val);\n}\n\n\nvar nodeOps = Object.freeze({\n\tcreateElement: createElement$1,\n\tcreateElementNS: createElementNS,\n\tcreateTextNode: createTextNode,\n\tcreateComment: createComment,\n\tinsertBefore: insertBefore,\n\tremoveChild: removeChild,\n\tappendChild: appendChild,\n\tparentNode: parentNode,\n\tnextSibling: nextSibling,\n\ttagName: tagName,\n\tsetTextContent: setTextContent,\n\tsetAttribute: setAttribute\n});\n\n/* */\n\nvar ref = {\n create: function create (_, vnode) {\n registerRef(vnode);\n },\n update: function update (oldVnode, vnode) {\n if (oldVnode.data.ref !== vnode.data.ref) {\n registerRef(oldVnode, true);\n registerRef(vnode);\n }\n },\n destroy: function destroy (vnode) {\n registerRef(vnode, true);\n }\n};\n\nfunction registerRef (vnode, isRemoval) {\n var key = vnode.data.ref;\n if (!key) { return }\n\n var vm = vnode.context;\n var ref = vnode.componentInstance || vnode.elm;\n var refs = vm.$refs;\n if (isRemoval) {\n if (Array.isArray(refs[key])) {\n remove(refs[key], ref);\n } else if (refs[key] === ref) {\n refs[key] = undefined;\n }\n } else {\n if (vnode.data.refInFor) {\n if (!Array.isArray(refs[key])) {\n refs[key] = [ref];\n } else if (refs[key].indexOf(ref) < 0) {\n // $flow-disable-line\n refs[key].push(ref);\n }\n } else {\n refs[key] = ref;\n }\n }\n}\n\n/**\n * Virtual DOM patching algorithm based on Snabbdom by\n * Simon Friis Vindum (@paldepind)\n * Licensed under the MIT License\n * https://github.com/paldepind/snabbdom/blob/master/LICENSE\n *\n * modified by Evan You (@yyx990803)\n *\n * Not type-checking this because this file is perf-critical and the cost\n * of making flow understand it is not worth it.\n */\n\nvar emptyNode = new VNode('', {}, []);\n\nvar hooks = ['create', 'activate', 'update', 'remove', 'destroy'];\n\nfunction sameVnode (a, b) {\n return (\n a.key === b.key && (\n (\n a.tag === b.tag &&\n a.isComment === b.isComment &&\n isDef(a.data) === isDef(b.data) &&\n sameInputType(a, b)\n ) || (\n isTrue(a.isAsyncPlaceholder) &&\n a.asyncFactory === b.asyncFactory &&\n isUndef(b.asyncFactory.error)\n )\n )\n )\n}\n\nfunction sameInputType (a, b) {\n if (a.tag !== 'input') { return true }\n var i;\n var typeA = isDef(i = a.data) && isDef(i = i.attrs) && i.type;\n var typeB = isDef(i = b.data) && isDef(i = i.attrs) && i.type;\n return typeA === typeB || isTextInputType(typeA) && isTextInputType(typeB)\n}\n\nfunction createKeyToOldIdx (children, beginIdx, endIdx) {\n var i, key;\n var map = {};\n for (i = beginIdx; i <= endIdx; ++i) {\n key = children[i].key;\n if (isDef(key)) { map[key] = i; }\n }\n return map\n}\n\nfunction createPatchFunction (backend) {\n var i, j;\n var cbs = {};\n\n var modules = backend.modules;\n var nodeOps = backend.nodeOps;\n\n for (i = 0; i < hooks.length; ++i) {\n cbs[hooks[i]] = [];\n for (j = 0; j < modules.length; ++j) {\n if (isDef(modules[j][hooks[i]])) {\n cbs[hooks[i]].push(modules[j][hooks[i]]);\n }\n }\n }\n\n function emptyNodeAt (elm) {\n return new VNode(nodeOps.tagName(elm).toLowerCase(), {}, [], undefined, elm)\n }\n\n function createRmCb (childElm, listeners) {\n function remove () {\n if (--remove.listeners === 0) {\n removeNode(childElm);\n }\n }\n remove.listeners = listeners;\n return remove\n }\n\n function removeNode (el) {\n var parent = nodeOps.parentNode(el);\n // element may have already been removed due to v-html / v-text\n if (isDef(parent)) {\n nodeOps.removeChild(parent, el);\n }\n }\n\n var inPre = 0;\n function createElm (vnode, insertedVnodeQueue, parentElm, refElm, nested) {\n vnode.isRootInsert = !nested; // for transition enter check\n if (createComponent(vnode, insertedVnodeQueue, parentElm, refElm)) {\n return\n }\n\n var data = vnode.data;\n var children = vnode.children;\n var tag = vnode.tag;\n if (isDef(tag)) {\n if (false) {\n if (data && data.pre) {\n inPre++;\n }\n if (\n !inPre &&\n !vnode.ns &&\n !(\n config.ignoredElements.length &&\n config.ignoredElements.some(function (ignore) {\n return isRegExp(ignore)\n ? ignore.test(tag)\n : ignore === tag\n })\n ) &&\n config.isUnknownElement(tag)\n ) {\n warn(\n 'Unknown custom element: <' + tag + '> - did you ' +\n 'register the component correctly? For recursive components, ' +\n 'make sure to provide the \"name\" option.',\n vnode.context\n );\n }\n }\n vnode.elm = vnode.ns\n ? nodeOps.createElementNS(vnode.ns, tag)\n : nodeOps.createElement(tag, vnode);\n setScope(vnode);\n\n /* istanbul ignore if */\n {\n createChildren(vnode, children, insertedVnodeQueue);\n if (isDef(data)) {\n invokeCreateHooks(vnode, insertedVnodeQueue);\n }\n insert(parentElm, vnode.elm, refElm);\n }\n\n if (false) {\n inPre--;\n }\n } else if (isTrue(vnode.isComment)) {\n vnode.elm = nodeOps.createComment(vnode.text);\n insert(parentElm, vnode.elm, refElm);\n } else {\n vnode.elm = nodeOps.createTextNode(vnode.text);\n insert(parentElm, vnode.elm, refElm);\n }\n }\n\n function createComponent (vnode, insertedVnodeQueue, parentElm, refElm) {\n var i = vnode.data;\n if (isDef(i)) {\n var isReactivated = isDef(vnode.componentInstance) && i.keepAlive;\n if (isDef(i = i.hook) && isDef(i = i.init)) {\n i(vnode, false /* hydrating */, parentElm, refElm);\n }\n // after calling the init hook, if the vnode is a child component\n // it should've created a child instance and mounted it. the child\n // component also has set the placeholder vnode's elm.\n // in that case we can just return the element and be done.\n if (isDef(vnode.componentInstance)) {\n initComponent(vnode, insertedVnodeQueue);\n if (isTrue(isReactivated)) {\n reactivateComponent(vnode, insertedVnodeQueue, parentElm, refElm);\n }\n return true\n }\n }\n }\n\n function initComponent (vnode, insertedVnodeQueue) {\n if (isDef(vnode.data.pendingInsert)) {\n insertedVnodeQueue.push.apply(insertedVnodeQueue, vnode.data.pendingInsert);\n vnode.data.pendingInsert = null;\n }\n vnode.elm = vnode.componentInstance.$el;\n if (isPatchable(vnode)) {\n invokeCreateHooks(vnode, insertedVnodeQueue);\n setScope(vnode);\n } else {\n // empty component root.\n // skip all element-related modules except for ref (#3455)\n registerRef(vnode);\n // make sure to invoke the insert hook\n insertedVnodeQueue.push(vnode);\n }\n }\n\n function reactivateComponent (vnode, insertedVnodeQueue, parentElm, refElm) {\n var i;\n // hack for #4339: a reactivated component with inner transition\n // does not trigger because the inner node's created hooks are not called\n // again. It's not ideal to involve module-specific logic in here but\n // there doesn't seem to be a better way to do it.\n var innerNode = vnode;\n while (innerNode.componentInstance) {\n innerNode = innerNode.componentInstance._vnode;\n if (isDef(i = innerNode.data) && isDef(i = i.transition)) {\n for (i = 0; i < cbs.activate.length; ++i) {\n cbs.activate[i](emptyNode, innerNode);\n }\n insertedVnodeQueue.push(innerNode);\n break\n }\n }\n // unlike a newly created component,\n // a reactivated keep-alive component doesn't insert itself\n insert(parentElm, vnode.elm, refElm);\n }\n\n function insert (parent, elm, ref$$1) {\n if (isDef(parent)) {\n if (isDef(ref$$1)) {\n if (ref$$1.parentNode === parent) {\n nodeOps.insertBefore(parent, elm, ref$$1);\n }\n } else {\n nodeOps.appendChild(parent, elm);\n }\n }\n }\n\n function createChildren (vnode, children, insertedVnodeQueue) {\n if (Array.isArray(children)) {\n for (var i = 0; i < children.length; ++i) {\n createElm(children[i], insertedVnodeQueue, vnode.elm, null, true);\n }\n } else if (isPrimitive(vnode.text)) {\n nodeOps.appendChild(vnode.elm, nodeOps.createTextNode(vnode.text));\n }\n }\n\n function isPatchable (vnode) {\n while (vnode.componentInstance) {\n vnode = vnode.componentInstance._vnode;\n }\n return isDef(vnode.tag)\n }\n\n function invokeCreateHooks (vnode, insertedVnodeQueue) {\n for (var i$1 = 0; i$1 < cbs.create.length; ++i$1) {\n cbs.create[i$1](emptyNode, vnode);\n }\n i = vnode.data.hook; // Reuse variable\n if (isDef(i)) {\n if (isDef(i.create)) { i.create(emptyNode, vnode); }\n if (isDef(i.insert)) { insertedVnodeQueue.push(vnode); }\n }\n }\n\n // set scope id attribute for scoped CSS.\n // this is implemented as a special case to avoid the overhead\n // of going through the normal attribute patching process.\n function setScope (vnode) {\n var i;\n if (isDef(i = vnode.functionalScopeId)) {\n nodeOps.setAttribute(vnode.elm, i, '');\n } else {\n var ancestor = vnode;\n while (ancestor) {\n if (isDef(i = ancestor.context) && isDef(i = i.$options._scopeId)) {\n nodeOps.setAttribute(vnode.elm, i, '');\n }\n ancestor = ancestor.parent;\n }\n }\n // for slot content they should also get the scopeId from the host instance.\n if (isDef(i = activeInstance) &&\n i !== vnode.context &&\n i !== vnode.functionalContext &&\n isDef(i = i.$options._scopeId)\n ) {\n nodeOps.setAttribute(vnode.elm, i, '');\n }\n }\n\n function addVnodes (parentElm, refElm, vnodes, startIdx, endIdx, insertedVnodeQueue) {\n for (; startIdx <= endIdx; ++startIdx) {\n createElm(vnodes[startIdx], insertedVnodeQueue, parentElm, refElm);\n }\n }\n\n function invokeDestroyHook (vnode) {\n var i, j;\n var data = vnode.data;\n if (isDef(data)) {\n if (isDef(i = data.hook) && isDef(i = i.destroy)) { i(vnode); }\n for (i = 0; i < cbs.destroy.length; ++i) { cbs.destroy[i](vnode); }\n }\n if (isDef(i = vnode.children)) {\n for (j = 0; j < vnode.children.length; ++j) {\n invokeDestroyHook(vnode.children[j]);\n }\n }\n }\n\n function removeVnodes (parentElm, vnodes, startIdx, endIdx) {\n for (; startIdx <= endIdx; ++startIdx) {\n var ch = vnodes[startIdx];\n if (isDef(ch)) {\n if (isDef(ch.tag)) {\n removeAndInvokeRemoveHook(ch);\n invokeDestroyHook(ch);\n } else { // Text node\n removeNode(ch.elm);\n }\n }\n }\n }\n\n function removeAndInvokeRemoveHook (vnode, rm) {\n if (isDef(rm) || isDef(vnode.data)) {\n var i;\n var listeners = cbs.remove.length + 1;\n if (isDef(rm)) {\n // we have a recursively passed down rm callback\n // increase the listeners count\n rm.listeners += listeners;\n } else {\n // directly removing\n rm = createRmCb(vnode.elm, listeners);\n }\n // recursively invoke hooks on child component root node\n if (isDef(i = vnode.componentInstance) && isDef(i = i._vnode) && isDef(i.data)) {\n removeAndInvokeRemoveHook(i, rm);\n }\n for (i = 0; i < cbs.remove.length; ++i) {\n cbs.remove[i](vnode, rm);\n }\n if (isDef(i = vnode.data.hook) && isDef(i = i.remove)) {\n i(vnode, rm);\n } else {\n rm();\n }\n } else {\n removeNode(vnode.elm);\n }\n }\n\n function updateChildren (parentElm, oldCh, newCh, insertedVnodeQueue, removeOnly) {\n var oldStartIdx = 0;\n var newStartIdx = 0;\n var oldEndIdx = oldCh.length - 1;\n var oldStartVnode = oldCh[0];\n var oldEndVnode = oldCh[oldEndIdx];\n var newEndIdx = newCh.length - 1;\n var newStartVnode = newCh[0];\n var newEndVnode = newCh[newEndIdx];\n var oldKeyToIdx, idxInOld, vnodeToMove, refElm;\n\n // removeOnly is a special flag used only by <transition-group>\n // to ensure removed elements stay in correct relative positions\n // during leaving transitions\n var canMove = !removeOnly;\n\n while (oldStartIdx <= oldEndIdx && newStartIdx <= newEndIdx) {\n if (isUndef(oldStartVnode)) {\n oldStartVnode = oldCh[++oldStartIdx]; // Vnode has been moved left\n } else if (isUndef(oldEndVnode)) {\n oldEndVnode = oldCh[--oldEndIdx];\n } else if (sameVnode(oldStartVnode, newStartVnode)) {\n patchVnode(oldStartVnode, newStartVnode, insertedVnodeQueue);\n oldStartVnode = oldCh[++oldStartIdx];\n newStartVnode = newCh[++newStartIdx];\n } else if (sameVnode(oldEndVnode, newEndVnode)) {\n patchVnode(oldEndVnode, newEndVnode, insertedVnodeQueue);\n oldEndVnode = oldCh[--oldEndIdx];\n newEndVnode = newCh[--newEndIdx];\n } else if (sameVnode(oldStartVnode, newEndVnode)) { // Vnode moved right\n patchVnode(oldStartVnode, newEndVnode, insertedVnodeQueue);\n canMove && nodeOps.insertBefore(parentElm, oldStartVnode.elm, nodeOps.nextSibling(oldEndVnode.elm));\n oldStartVnode = oldCh[++oldStartIdx];\n newEndVnode = newCh[--newEndIdx];\n } else if (sameVnode(oldEndVnode, newStartVnode)) { // Vnode moved left\n patchVnode(oldEndVnode, newStartVnode, insertedVnodeQueue);\n canMove && nodeOps.insertBefore(parentElm, oldEndVnode.elm, oldStartVnode.elm);\n oldEndVnode = oldCh[--oldEndIdx];\n newStartVnode = newCh[++newStartIdx];\n } else {\n if (isUndef(oldKeyToIdx)) { oldKeyToIdx = createKeyToOldIdx(oldCh, oldStartIdx, oldEndIdx); }\n idxInOld = isDef(newStartVnode.key)\n ? oldKeyToIdx[newStartVnode.key]\n : findIdxInOld(newStartVnode, oldCh, oldStartIdx, oldEndIdx);\n if (isUndef(idxInOld)) { // New element\n createElm(newStartVnode, insertedVnodeQueue, parentElm, oldStartVnode.elm);\n } else {\n vnodeToMove = oldCh[idxInOld];\n /* istanbul ignore if */\n if (false) {\n warn(\n 'It seems there are duplicate keys that is causing an update error. ' +\n 'Make sure each v-for item has a unique key.'\n );\n }\n if (sameVnode(vnodeToMove, newStartVnode)) {\n patchVnode(vnodeToMove, newStartVnode, insertedVnodeQueue);\n oldCh[idxInOld] = undefined;\n canMove && nodeOps.insertBefore(parentElm, vnodeToMove.elm, oldStartVnode.elm);\n } else {\n // same key but different element. treat as new element\n createElm(newStartVnode, insertedVnodeQueue, parentElm, oldStartVnode.elm);\n }\n }\n newStartVnode = newCh[++newStartIdx];\n }\n }\n if (oldStartIdx > oldEndIdx) {\n refElm = isUndef(newCh[newEndIdx + 1]) ? null : newCh[newEndIdx + 1].elm;\n addVnodes(parentElm, refElm, newCh, newStartIdx, newEndIdx, insertedVnodeQueue);\n } else if (newStartIdx > newEndIdx) {\n removeVnodes(parentElm, oldCh, oldStartIdx, oldEndIdx);\n }\n }\n\n function findIdxInOld (node, oldCh, start, end) {\n for (var i = start; i < end; i++) {\n var c = oldCh[i];\n if (isDef(c) && sameVnode(node, c)) { return i }\n }\n }\n\n function patchVnode (oldVnode, vnode, insertedVnodeQueue, removeOnly) {\n if (oldVnode === vnode) {\n return\n }\n\n var elm = vnode.elm = oldVnode.elm;\n\n if (isTrue(oldVnode.isAsyncPlaceholder)) {\n if (isDef(vnode.asyncFactory.resolved)) {\n hydrate(oldVnode.elm, vnode, insertedVnodeQueue);\n } else {\n vnode.isAsyncPlaceholder = true;\n }\n return\n }\n\n // reuse element for static trees.\n // note we only do this if the vnode is cloned -\n // if the new node is not cloned it means the render functions have been\n // reset by the hot-reload-api and we need to do a proper re-render.\n if (isTrue(vnode.isStatic) &&\n isTrue(oldVnode.isStatic) &&\n vnode.key === oldVnode.key &&\n (isTrue(vnode.isCloned) || isTrue(vnode.isOnce))\n ) {\n vnode.componentInstance = oldVnode.componentInstance;\n return\n }\n\n var i;\n var data = vnode.data;\n if (isDef(data) && isDef(i = data.hook) && isDef(i = i.prepatch)) {\n i(oldVnode, vnode);\n }\n\n var oldCh = oldVnode.children;\n var ch = vnode.children;\n if (isDef(data) && isPatchable(vnode)) {\n for (i = 0; i < cbs.update.length; ++i) { cbs.update[i](oldVnode, vnode); }\n if (isDef(i = data.hook) && isDef(i = i.update)) { i(oldVnode, vnode); }\n }\n if (isUndef(vnode.text)) {\n if (isDef(oldCh) && isDef(ch)) {\n if (oldCh !== ch) { updateChildren(elm, oldCh, ch, insertedVnodeQueue, removeOnly); }\n } else if (isDef(ch)) {\n if (isDef(oldVnode.text)) { nodeOps.setTextContent(elm, ''); }\n addVnodes(elm, null, ch, 0, ch.length - 1, insertedVnodeQueue);\n } else if (isDef(oldCh)) {\n removeVnodes(elm, oldCh, 0, oldCh.length - 1);\n } else if (isDef(oldVnode.text)) {\n nodeOps.setTextContent(elm, '');\n }\n } else if (oldVnode.text !== vnode.text) {\n nodeOps.setTextContent(elm, vnode.text);\n }\n if (isDef(data)) {\n if (isDef(i = data.hook) && isDef(i = i.postpatch)) { i(oldVnode, vnode); }\n }\n }\n\n function invokeInsertHook (vnode, queue, initial) {\n // delay insert hooks for component root nodes, invoke them after the\n // element is really inserted\n if (isTrue(initial) && isDef(vnode.parent)) {\n vnode.parent.data.pendingInsert = queue;\n } else {\n for (var i = 0; i < queue.length; ++i) {\n queue[i].data.hook.insert(queue[i]);\n }\n }\n }\n\n var bailed = false;\n // list of modules that can skip create hook during hydration because they\n // are already rendered on the client or has no need for initialization\n var isRenderedModule = makeMap('attrs,style,class,staticClass,staticStyle,key');\n\n // Note: this is a browser-only function so we can assume elms are DOM nodes.\n function hydrate (elm, vnode, insertedVnodeQueue) {\n if (isTrue(vnode.isComment) && isDef(vnode.asyncFactory)) {\n vnode.elm = elm;\n vnode.isAsyncPlaceholder = true;\n return true\n }\n if (false) {\n if (!assertNodeMatch(elm, vnode)) {\n return false\n }\n }\n vnode.elm = elm;\n var tag = vnode.tag;\n var data = vnode.data;\n var children = vnode.children;\n if (isDef(data)) {\n if (isDef(i = data.hook) && isDef(i = i.init)) { i(vnode, true /* hydrating */); }\n if (isDef(i = vnode.componentInstance)) {\n // child component. it should have hydrated its own tree.\n initComponent(vnode, insertedVnodeQueue);\n return true\n }\n }\n if (isDef(tag)) {\n if (isDef(children)) {\n // empty element, allow client to pick up and populate children\n if (!elm.hasChildNodes()) {\n createChildren(vnode, children, insertedVnodeQueue);\n } else {\n // v-html and domProps: innerHTML\n if (isDef(i = data) && isDef(i = i.domProps) && isDef(i = i.innerHTML)) {\n if (i !== elm.innerHTML) {\n /* istanbul ignore if */\n if (false\n ) {\n bailed = true;\n console.warn('Parent: ', elm);\n console.warn('server innerHTML: ', i);\n console.warn('client innerHTML: ', elm.innerHTML);\n }\n return false\n }\n } else {\n // iterate and compare children lists\n var childrenMatch = true;\n var childNode = elm.firstChild;\n for (var i$1 = 0; i$1 < children.length; i$1++) {\n if (!childNode || !hydrate(childNode, children[i$1], insertedVnodeQueue)) {\n childrenMatch = false;\n break\n }\n childNode = childNode.nextSibling;\n }\n // if childNode is not null, it means the actual childNodes list is\n // longer than the virtual children list.\n if (!childrenMatch || childNode) {\n /* istanbul ignore if */\n if (false\n ) {\n bailed = true;\n console.warn('Parent: ', elm);\n console.warn('Mismatching childNodes vs. VNodes: ', elm.childNodes, children);\n }\n return false\n }\n }\n }\n }\n if (isDef(data)) {\n for (var key in data) {\n if (!isRenderedModule(key)) {\n invokeCreateHooks(vnode, insertedVnodeQueue);\n break\n }\n }\n }\n } else if (elm.data !== vnode.text) {\n elm.data = vnode.text;\n }\n return true\n }\n\n function assertNodeMatch (node, vnode) {\n if (isDef(vnode.tag)) {\n return (\n vnode.tag.indexOf('vue-component') === 0 ||\n vnode.tag.toLowerCase() === (node.tagName && node.tagName.toLowerCase())\n )\n } else {\n return node.nodeType === (vnode.isComment ? 8 : 3)\n }\n }\n\n return function patch (oldVnode, vnode, hydrating, removeOnly, parentElm, refElm) {\n if (isUndef(vnode)) {\n if (isDef(oldVnode)) { invokeDestroyHook(oldVnode); }\n return\n }\n\n var isInitialPatch = false;\n var insertedVnodeQueue = [];\n\n if (isUndef(oldVnode)) {\n // empty mount (likely as component), create new root element\n isInitialPatch = true;\n createElm(vnode, insertedVnodeQueue, parentElm, refElm);\n } else {\n var isRealElement = isDef(oldVnode.nodeType);\n if (!isRealElement && sameVnode(oldVnode, vnode)) {\n // patch existing root node\n patchVnode(oldVnode, vnode, insertedVnodeQueue, removeOnly);\n } else {\n if (isRealElement) {\n // mounting to a real element\n // check if this is server-rendered content and if we can perform\n // a successful hydration.\n if (oldVnode.nodeType === 1 && oldVnode.hasAttribute(SSR_ATTR)) {\n oldVnode.removeAttribute(SSR_ATTR);\n hydrating = true;\n }\n if (isTrue(hydrating)) {\n if (hydrate(oldVnode, vnode, insertedVnodeQueue)) {\n invokeInsertHook(vnode, insertedVnodeQueue, true);\n return oldVnode\n } else if (false) {\n warn(\n 'The client-side rendered virtual DOM tree is not matching ' +\n 'server-rendered content. This is likely caused by incorrect ' +\n 'HTML markup, for example nesting block-level elements inside ' +\n '<p>, or missing <tbody>. Bailing hydration and performing ' +\n 'full client-side render.'\n );\n }\n }\n // either not server-rendered, or hydration failed.\n // create an empty node and replace it\n oldVnode = emptyNodeAt(oldVnode);\n }\n // replacing existing element\n var oldElm = oldVnode.elm;\n var parentElm$1 = nodeOps.parentNode(oldElm);\n createElm(\n vnode,\n insertedVnodeQueue,\n // extremely rare edge case: do not insert if old element is in a\n // leaving transition. Only happens when combining transition +\n // keep-alive + HOCs. (#4590)\n oldElm._leaveCb ? null : parentElm$1,\n nodeOps.nextSibling(oldElm)\n );\n\n if (isDef(vnode.parent)) {\n // component root element replaced.\n // update parent placeholder node element, recursively\n var ancestor = vnode.parent;\n var patchable = isPatchable(vnode);\n while (ancestor) {\n for (var i = 0; i < cbs.destroy.length; ++i) {\n cbs.destroy[i](ancestor);\n }\n ancestor.elm = vnode.elm;\n if (patchable) {\n for (var i$1 = 0; i$1 < cbs.create.length; ++i$1) {\n cbs.create[i$1](emptyNode, ancestor);\n }\n // #6513\n // invoke insert hooks that may have been merged by create hooks.\n // e.g. for directives that uses the \"inserted\" hook.\n var insert = ancestor.data.hook.insert;\n if (insert.merged) {\n // start at index 1 to avoid re-invoking component mounted hook\n for (var i$2 = 1; i$2 < insert.fns.length; i$2++) {\n insert.fns[i$2]();\n }\n }\n } else {\n registerRef(ancestor);\n }\n ancestor = ancestor.parent;\n }\n }\n\n if (isDef(parentElm$1)) {\n removeVnodes(parentElm$1, [oldVnode], 0, 0);\n } else if (isDef(oldVnode.tag)) {\n invokeDestroyHook(oldVnode);\n }\n }\n }\n\n invokeInsertHook(vnode, insertedVnodeQueue, isInitialPatch);\n return vnode.elm\n }\n}\n\n/* */\n\nvar directives = {\n create: updateDirectives,\n update: updateDirectives,\n destroy: function unbindDirectives (vnode) {\n updateDirectives(vnode, emptyNode);\n }\n};\n\nfunction updateDirectives (oldVnode, vnode) {\n if (oldVnode.data.directives || vnode.data.directives) {\n _update(oldVnode, vnode);\n }\n}\n\nfunction _update (oldVnode, vnode) {\n var isCreate = oldVnode === emptyNode;\n var isDestroy = vnode === emptyNode;\n var oldDirs = normalizeDirectives$1(oldVnode.data.directives, oldVnode.context);\n var newDirs = normalizeDirectives$1(vnode.data.directives, vnode.context);\n\n var dirsWithInsert = [];\n var dirsWithPostpatch = [];\n\n var key, oldDir, dir;\n for (key in newDirs) {\n oldDir = oldDirs[key];\n dir = newDirs[key];\n if (!oldDir) {\n // new directive, bind\n callHook$1(dir, 'bind', vnode, oldVnode);\n if (dir.def && dir.def.inserted) {\n dirsWithInsert.push(dir);\n }\n } else {\n // existing directive, update\n dir.oldValue = oldDir.value;\n callHook$1(dir, 'update', vnode, oldVnode);\n if (dir.def && dir.def.componentUpdated) {\n dirsWithPostpatch.push(dir);\n }\n }\n }\n\n if (dirsWithInsert.length) {\n var callInsert = function () {\n for (var i = 0; i < dirsWithInsert.length; i++) {\n callHook$1(dirsWithInsert[i], 'inserted', vnode, oldVnode);\n }\n };\n if (isCreate) {\n mergeVNodeHook(vnode.data.hook || (vnode.data.hook = {}), 'insert', callInsert);\n } else {\n callInsert();\n }\n }\n\n if (dirsWithPostpatch.length) {\n mergeVNodeHook(vnode.data.hook || (vnode.data.hook = {}), 'postpatch', function () {\n for (var i = 0; i < dirsWithPostpatch.length; i++) {\n callHook$1(dirsWithPostpatch[i], 'componentUpdated', vnode, oldVnode);\n }\n });\n }\n\n if (!isCreate) {\n for (key in oldDirs) {\n if (!newDirs[key]) {\n // no longer present, unbind\n callHook$1(oldDirs[key], 'unbind', oldVnode, oldVnode, isDestroy);\n }\n }\n }\n}\n\nvar emptyModifiers = Object.create(null);\n\nfunction normalizeDirectives$1 (\n dirs,\n vm\n) {\n var res = Object.create(null);\n if (!dirs) {\n return res\n }\n var i, dir;\n for (i = 0; i < dirs.length; i++) {\n dir = dirs[i];\n if (!dir.modifiers) {\n dir.modifiers = emptyModifiers;\n }\n res[getRawDirName(dir)] = dir;\n dir.def = resolveAsset(vm.$options, 'directives', dir.name, true);\n }\n return res\n}\n\nfunction getRawDirName (dir) {\n return dir.rawName || ((dir.name) + \".\" + (Object.keys(dir.modifiers || {}).join('.')))\n}\n\nfunction callHook$1 (dir, hook, vnode, oldVnode, isDestroy) {\n var fn = dir.def && dir.def[hook];\n if (fn) {\n try {\n fn(vnode.elm, dir, vnode, oldVnode, isDestroy);\n } catch (e) {\n handleError(e, vnode.context, (\"directive \" + (dir.name) + \" \" + hook + \" hook\"));\n }\n }\n}\n\nvar baseModules = [\n ref,\n directives\n];\n\n/* */\n\nfunction updateAttrs (oldVnode, vnode) {\n var opts = vnode.componentOptions;\n if (isDef(opts) && opts.Ctor.options.inheritAttrs === false) {\n return\n }\n if (isUndef(oldVnode.data.attrs) && isUndef(vnode.data.attrs)) {\n return\n }\n var key, cur, old;\n var elm = vnode.elm;\n var oldAttrs = oldVnode.data.attrs || {};\n var attrs = vnode.data.attrs || {};\n // clone observed objects, as the user probably wants to mutate it\n if (isDef(attrs.__ob__)) {\n attrs = vnode.data.attrs = extend({}, attrs);\n }\n\n for (key in attrs) {\n cur = attrs[key];\n old = oldAttrs[key];\n if (old !== cur) {\n setAttr(elm, key, cur);\n }\n }\n // #4391: in IE9, setting type can reset value for input[type=radio]\n // #6666: IE/Edge forces progress value down to 1 before setting a max\n /* istanbul ignore if */\n if ((isIE9 || isEdge) && attrs.value !== oldAttrs.value) {\n setAttr(elm, 'value', attrs.value);\n }\n for (key in oldAttrs) {\n if (isUndef(attrs[key])) {\n if (isXlink(key)) {\n elm.removeAttributeNS(xlinkNS, getXlinkProp(key));\n } else if (!isEnumeratedAttr(key)) {\n elm.removeAttribute(key);\n }\n }\n }\n}\n\nfunction setAttr (el, key, value) {\n if (isBooleanAttr(key)) {\n // set attribute for blank value\n // e.g. <option disabled>Select one</option>\n if (isFalsyAttrValue(value)) {\n el.removeAttribute(key);\n } else {\n // technically allowfullscreen is a boolean attribute for <iframe>,\n // but Flash expects a value of \"true\" when used on <embed> tag\n value = key === 'allowfullscreen' && el.tagName === 'EMBED'\n ? 'true'\n : key;\n el.setAttribute(key, value);\n }\n } else if (isEnumeratedAttr(key)) {\n el.setAttribute(key, isFalsyAttrValue(value) || value === 'false' ? 'false' : 'true');\n } else if (isXlink(key)) {\n if (isFalsyAttrValue(value)) {\n el.removeAttributeNS(xlinkNS, getXlinkProp(key));\n } else {\n el.setAttributeNS(xlinkNS, key, value);\n }\n } else {\n if (isFalsyAttrValue(value)) {\n el.removeAttribute(key);\n } else {\n el.setAttribute(key, value);\n }\n }\n}\n\nvar attrs = {\n create: updateAttrs,\n update: updateAttrs\n};\n\n/* */\n\nfunction updateClass (oldVnode, vnode) {\n var el = vnode.elm;\n var data = vnode.data;\n var oldData = oldVnode.data;\n if (\n isUndef(data.staticClass) &&\n isUndef(data.class) && (\n isUndef(oldData) || (\n isUndef(oldData.staticClass) &&\n isUndef(oldData.class)\n )\n )\n ) {\n return\n }\n\n var cls = genClassForVnode(vnode);\n\n // handle transition classes\n var transitionClass = el._transitionClasses;\n if (isDef(transitionClass)) {\n cls = concat(cls, stringifyClass(transitionClass));\n }\n\n // set the class\n if (cls !== el._prevClass) {\n el.setAttribute('class', cls);\n el._prevClass = cls;\n }\n}\n\nvar klass = {\n create: updateClass,\n update: updateClass\n};\n\n/* */\n\nvar validDivisionCharRE = /[\\w).+\\-_$\\]]/;\n\nfunction parseFilters (exp) {\n var inSingle = false;\n var inDouble = false;\n var inTemplateString = false;\n var inRegex = false;\n var curly = 0;\n var square = 0;\n var paren = 0;\n var lastFilterIndex = 0;\n var c, prev, i, expression, filters;\n\n for (i = 0; i < exp.length; i++) {\n prev = c;\n c = exp.charCodeAt(i);\n if (inSingle) {\n if (c === 0x27 && prev !== 0x5C) { inSingle = false; }\n } else if (inDouble) {\n if (c === 0x22 && prev !== 0x5C) { inDouble = false; }\n } else if (inTemplateString) {\n if (c === 0x60 && prev !== 0x5C) { inTemplateString = false; }\n } else if (inRegex) {\n if (c === 0x2f && prev !== 0x5C) { inRegex = false; }\n } else if (\n c === 0x7C && // pipe\n exp.charCodeAt(i + 1) !== 0x7C &&\n exp.charCodeAt(i - 1) !== 0x7C &&\n !curly && !square && !paren\n ) {\n if (expression === undefined) {\n // first filter, end of expression\n lastFilterIndex = i + 1;\n expression = exp.slice(0, i).trim();\n } else {\n pushFilter();\n }\n } else {\n switch (c) {\n case 0x22: inDouble = true; break // \"\n case 0x27: inSingle = true; break // '\n case 0x60: inTemplateString = true; break // `\n case 0x28: paren++; break // (\n case 0x29: paren--; break // )\n case 0x5B: square++; break // [\n case 0x5D: square--; break // ]\n case 0x7B: curly++; break // {\n case 0x7D: curly--; break // }\n }\n if (c === 0x2f) { // /\n var j = i - 1;\n var p = (void 0);\n // find first non-whitespace prev char\n for (; j >= 0; j--) {\n p = exp.charAt(j);\n if (p !== ' ') { break }\n }\n if (!p || !validDivisionCharRE.test(p)) {\n inRegex = true;\n }\n }\n }\n }\n\n if (expression === undefined) {\n expression = exp.slice(0, i).trim();\n } else if (lastFilterIndex !== 0) {\n pushFilter();\n }\n\n function pushFilter () {\n (filters || (filters = [])).push(exp.slice(lastFilterIndex, i).trim());\n lastFilterIndex = i + 1;\n }\n\n if (filters) {\n for (i = 0; i < filters.length; i++) {\n expression = wrapFilter(expression, filters[i]);\n }\n }\n\n return expression\n}\n\nfunction wrapFilter (exp, filter) {\n var i = filter.indexOf('(');\n if (i < 0) {\n // _f: resolveFilter\n return (\"_f(\\\"\" + filter + \"\\\")(\" + exp + \")\")\n } else {\n var name = filter.slice(0, i);\n var args = filter.slice(i + 1);\n return (\"_f(\\\"\" + name + \"\\\")(\" + exp + \",\" + args)\n }\n}\n\n/* */\n\nfunction baseWarn (msg) {\n console.error((\"[Vue compiler]: \" + msg));\n}\n\nfunction pluckModuleFunction (\n modules,\n key\n) {\n return modules\n ? modules.map(function (m) { return m[key]; }).filter(function (_) { return _; })\n : []\n}\n\nfunction addProp (el, name, value) {\n (el.props || (el.props = [])).push({ name: name, value: value });\n}\n\nfunction addAttr (el, name, value) {\n (el.attrs || (el.attrs = [])).push({ name: name, value: value });\n}\n\nfunction addDirective (\n el,\n name,\n rawName,\n value,\n arg,\n modifiers\n) {\n (el.directives || (el.directives = [])).push({ name: name, rawName: rawName, value: value, arg: arg, modifiers: modifiers });\n}\n\nfunction addHandler (\n el,\n name,\n value,\n modifiers,\n important,\n warn\n) {\n // warn prevent and passive modifier\n /* istanbul ignore if */\n if (\n false\n ) {\n warn(\n 'passive and prevent can\\'t be used together. ' +\n 'Passive handler can\\'t prevent default event.'\n );\n }\n // check capture modifier\n if (modifiers && modifiers.capture) {\n delete modifiers.capture;\n name = '!' + name; // mark the event as captured\n }\n if (modifiers && modifiers.once) {\n delete modifiers.once;\n name = '~' + name; // mark the event as once\n }\n /* istanbul ignore if */\n if (modifiers && modifiers.passive) {\n delete modifiers.passive;\n name = '&' + name; // mark the event as passive\n }\n var events;\n if (modifiers && modifiers.native) {\n delete modifiers.native;\n events = el.nativeEvents || (el.nativeEvents = {});\n } else {\n events = el.events || (el.events = {});\n }\n var newHandler = { value: value, modifiers: modifiers };\n var handlers = events[name];\n /* istanbul ignore if */\n if (Array.isArray(handlers)) {\n important ? handlers.unshift(newHandler) : handlers.push(newHandler);\n } else if (handlers) {\n events[name] = important ? [newHandler, handlers] : [handlers, newHandler];\n } else {\n events[name] = newHandler;\n }\n}\n\nfunction getBindingAttr (\n el,\n name,\n getStatic\n) {\n var dynamicValue =\n getAndRemoveAttr(el, ':' + name) ||\n getAndRemoveAttr(el, 'v-bind:' + name);\n if (dynamicValue != null) {\n return parseFilters(dynamicValue)\n } else if (getStatic !== false) {\n var staticValue = getAndRemoveAttr(el, name);\n if (staticValue != null) {\n return JSON.stringify(staticValue)\n }\n }\n}\n\n// note: this only removes the attr from the Array (attrsList) so that it\n// doesn't get processed by processAttrs.\n// By default it does NOT remove it from the map (attrsMap) because the map is\n// needed during codegen.\nfunction getAndRemoveAttr (\n el,\n name,\n removeFromMap\n) {\n var val;\n if ((val = el.attrsMap[name]) != null) {\n var list = el.attrsList;\n for (var i = 0, l = list.length; i < l; i++) {\n if (list[i].name === name) {\n list.splice(i, 1);\n break\n }\n }\n }\n if (removeFromMap) {\n delete el.attrsMap[name];\n }\n return val\n}\n\n/* */\n\n/**\n * Cross-platform code generation for component v-model\n */\nfunction genComponentModel (\n el,\n value,\n modifiers\n) {\n var ref = modifiers || {};\n var number = ref.number;\n var trim = ref.trim;\n\n var baseValueExpression = '$$v';\n var valueExpression = baseValueExpression;\n if (trim) {\n valueExpression =\n \"(typeof \" + baseValueExpression + \" === 'string'\" +\n \"? \" + baseValueExpression + \".trim()\" +\n \": \" + baseValueExpression + \")\";\n }\n if (number) {\n valueExpression = \"_n(\" + valueExpression + \")\";\n }\n var assignment = genAssignmentCode(value, valueExpression);\n\n el.model = {\n value: (\"(\" + value + \")\"),\n expression: (\"\\\"\" + value + \"\\\"\"),\n callback: (\"function (\" + baseValueExpression + \") {\" + assignment + \"}\")\n };\n}\n\n/**\n * Cross-platform codegen helper for generating v-model value assignment code.\n */\nfunction genAssignmentCode (\n value,\n assignment\n) {\n var res = parseModel(value);\n if (res.key === null) {\n return (value + \"=\" + assignment)\n } else {\n return (\"$set(\" + (res.exp) + \", \" + (res.key) + \", \" + assignment + \")\")\n }\n}\n\n/**\n * Parse a v-model expression into a base path and a final key segment.\n * Handles both dot-path and possible square brackets.\n *\n * Possible cases:\n *\n * - test\n * - test[key]\n * - test[test1[key]]\n * - test[\"a\"][key]\n * - xxx.test[a[a].test1[key]]\n * - test.xxx.a[\"asa\"][test1[key]]\n *\n */\n\nvar len;\nvar str;\nvar chr;\nvar index$1;\nvar expressionPos;\nvar expressionEndPos;\n\n\n\nfunction parseModel (val) {\n len = val.length;\n\n if (val.indexOf('[') < 0 || val.lastIndexOf(']') < len - 1) {\n index$1 = val.lastIndexOf('.');\n if (index$1 > -1) {\n return {\n exp: val.slice(0, index$1),\n key: '\"' + val.slice(index$1 + 1) + '\"'\n }\n } else {\n return {\n exp: val,\n key: null\n }\n }\n }\n\n str = val;\n index$1 = expressionPos = expressionEndPos = 0;\n\n while (!eof()) {\n chr = next();\n /* istanbul ignore if */\n if (isStringStart(chr)) {\n parseString(chr);\n } else if (chr === 0x5B) {\n parseBracket(chr);\n }\n }\n\n return {\n exp: val.slice(0, expressionPos),\n key: val.slice(expressionPos + 1, expressionEndPos)\n }\n}\n\nfunction next () {\n return str.charCodeAt(++index$1)\n}\n\nfunction eof () {\n return index$1 >= len\n}\n\nfunction isStringStart (chr) {\n return chr === 0x22 || chr === 0x27\n}\n\nfunction parseBracket (chr) {\n var inBracket = 1;\n expressionPos = index$1;\n while (!eof()) {\n chr = next();\n if (isStringStart(chr)) {\n parseString(chr);\n continue\n }\n if (chr === 0x5B) { inBracket++; }\n if (chr === 0x5D) { inBracket--; }\n if (inBracket === 0) {\n expressionEndPos = index$1;\n break\n }\n }\n}\n\nfunction parseString (chr) {\n var stringQuote = chr;\n while (!eof()) {\n chr = next();\n if (chr === stringQuote) {\n break\n }\n }\n}\n\n/* */\n\nvar warn$1;\n\n// in some cases, the event used has to be determined at runtime\n// so we used some reserved tokens during compile.\nvar RANGE_TOKEN = '__r';\nvar CHECKBOX_RADIO_TOKEN = '__c';\n\nfunction model (\n el,\n dir,\n _warn\n) {\n warn$1 = _warn;\n var value = dir.value;\n var modifiers = dir.modifiers;\n var tag = el.tag;\n var type = el.attrsMap.type;\n\n if (false) {\n // inputs with type=\"file\" are read only and setting the input's\n // value will throw an error.\n if (tag === 'input' && type === 'file') {\n warn$1(\n \"<\" + (el.tag) + \" v-model=\\\"\" + value + \"\\\" type=\\\"file\\\">:\\n\" +\n \"File inputs are read only. Use a v-on:change listener instead.\"\n );\n }\n }\n\n if (el.component) {\n genComponentModel(el, value, modifiers);\n // component v-model doesn't need extra runtime\n return false\n } else if (tag === 'select') {\n genSelect(el, value, modifiers);\n } else if (tag === 'input' && type === 'checkbox') {\n genCheckboxModel(el, value, modifiers);\n } else if (tag === 'input' && type === 'radio') {\n genRadioModel(el, value, modifiers);\n } else if (tag === 'input' || tag === 'textarea') {\n genDefaultModel(el, value, modifiers);\n } else if (!config.isReservedTag(tag)) {\n genComponentModel(el, value, modifiers);\n // component v-model doesn't need extra runtime\n return false\n } else if (false) {\n warn$1(\n \"<\" + (el.tag) + \" v-model=\\\"\" + value + \"\\\">: \" +\n \"v-model is not supported on this element type. \" +\n 'If you are working with contenteditable, it\\'s recommended to ' +\n 'wrap a library dedicated for that purpose inside a custom component.'\n );\n }\n\n // ensure runtime directive metadata\n return true\n}\n\nfunction genCheckboxModel (\n el,\n value,\n modifiers\n) {\n var number = modifiers && modifiers.number;\n var valueBinding = getBindingAttr(el, 'value') || 'null';\n var trueValueBinding = getBindingAttr(el, 'true-value') || 'true';\n var falseValueBinding = getBindingAttr(el, 'false-value') || 'false';\n addProp(el, 'checked',\n \"Array.isArray(\" + value + \")\" +\n \"?_i(\" + value + \",\" + valueBinding + \")>-1\" + (\n trueValueBinding === 'true'\n ? (\":(\" + value + \")\")\n : (\":_q(\" + value + \",\" + trueValueBinding + \")\")\n )\n );\n addHandler(el, 'change',\n \"var $$a=\" + value + \",\" +\n '$$el=$event.target,' +\n \"$$c=$$el.checked?(\" + trueValueBinding + \"):(\" + falseValueBinding + \");\" +\n 'if(Array.isArray($$a)){' +\n \"var $$v=\" + (number ? '_n(' + valueBinding + ')' : valueBinding) + \",\" +\n '$$i=_i($$a,$$v);' +\n \"if($$el.checked){$$i<0&&(\" + value + \"=$$a.concat([$$v]))}\" +\n \"else{$$i>-1&&(\" + value + \"=$$a.slice(0,$$i).concat($$a.slice($$i+1)))}\" +\n \"}else{\" + (genAssignmentCode(value, '$$c')) + \"}\",\n null, true\n );\n}\n\nfunction genRadioModel (\n el,\n value,\n modifiers\n) {\n var number = modifiers && modifiers.number;\n var valueBinding = getBindingAttr(el, 'value') || 'null';\n valueBinding = number ? (\"_n(\" + valueBinding + \")\") : valueBinding;\n addProp(el, 'checked', (\"_q(\" + value + \",\" + valueBinding + \")\"));\n addHandler(el, 'change', genAssignmentCode(value, valueBinding), null, true);\n}\n\nfunction genSelect (\n el,\n value,\n modifiers\n) {\n var number = modifiers && modifiers.number;\n var selectedVal = \"Array.prototype.filter\" +\n \".call($event.target.options,function(o){return o.selected})\" +\n \".map(function(o){var val = \\\"_value\\\" in o ? o._value : o.value;\" +\n \"return \" + (number ? '_n(val)' : 'val') + \"})\";\n\n var assignment = '$event.target.multiple ? $$selectedVal : $$selectedVal[0]';\n var code = \"var $$selectedVal = \" + selectedVal + \";\";\n code = code + \" \" + (genAssignmentCode(value, assignment));\n addHandler(el, 'change', code, null, true);\n}\n\nfunction genDefaultModel (\n el,\n value,\n modifiers\n) {\n var type = el.attrsMap.type;\n var ref = modifiers || {};\n var lazy = ref.lazy;\n var number = ref.number;\n var trim = ref.trim;\n var needCompositionGuard = !lazy && type !== 'range';\n var event = lazy\n ? 'change'\n : type === 'range'\n ? RANGE_TOKEN\n : 'input';\n\n var valueExpression = '$event.target.value';\n if (trim) {\n valueExpression = \"$event.target.value.trim()\";\n }\n if (number) {\n valueExpression = \"_n(\" + valueExpression + \")\";\n }\n\n var code = genAssignmentCode(value, valueExpression);\n if (needCompositionGuard) {\n code = \"if($event.target.composing)return;\" + code;\n }\n\n addProp(el, 'value', (\"(\" + value + \")\"));\n addHandler(el, event, code, null, true);\n if (trim || number) {\n addHandler(el, 'blur', '$forceUpdate()');\n }\n}\n\n/* */\n\n// normalize v-model event tokens that can only be determined at runtime.\n// it's important to place the event as the first in the array because\n// the whole point is ensuring the v-model callback gets called before\n// user-attached handlers.\nfunction normalizeEvents (on) {\n /* istanbul ignore if */\n if (isDef(on[RANGE_TOKEN])) {\n // IE input[type=range] only supports `change` event\n var event = isIE ? 'change' : 'input';\n on[event] = [].concat(on[RANGE_TOKEN], on[event] || []);\n delete on[RANGE_TOKEN];\n }\n // This was originally intended to fix #4521 but no longer necessary\n // after 2.5. Keeping it for backwards compat with generated code from < 2.4\n /* istanbul ignore if */\n if (isDef(on[CHECKBOX_RADIO_TOKEN])) {\n on.change = [].concat(on[CHECKBOX_RADIO_TOKEN], on.change || []);\n delete on[CHECKBOX_RADIO_TOKEN];\n }\n}\n\nvar target$1;\n\nfunction createOnceHandler (handler, event, capture) {\n var _target = target$1; // save current target element in closure\n return function onceHandler () {\n var res = handler.apply(null, arguments);\n if (res !== null) {\n remove$2(event, onceHandler, capture, _target);\n }\n }\n}\n\nfunction add$1 (\n event,\n handler,\n once$$1,\n capture,\n passive\n) {\n handler = withMacroTask(handler);\n if (once$$1) { handler = createOnceHandler(handler, event, capture); }\n target$1.addEventListener(\n event,\n handler,\n supportsPassive\n ? { capture: capture, passive: passive }\n : capture\n );\n}\n\nfunction remove$2 (\n event,\n handler,\n capture,\n _target\n) {\n (_target || target$1).removeEventListener(\n event,\n handler._withTask || handler,\n capture\n );\n}\n\nfunction updateDOMListeners (oldVnode, vnode) {\n if (isUndef(oldVnode.data.on) && isUndef(vnode.data.on)) {\n return\n }\n var on = vnode.data.on || {};\n var oldOn = oldVnode.data.on || {};\n target$1 = vnode.elm;\n normalizeEvents(on);\n updateListeners(on, oldOn, add$1, remove$2, vnode.context);\n}\n\nvar events = {\n create: updateDOMListeners,\n update: updateDOMListeners\n};\n\n/* */\n\nfunction updateDOMProps (oldVnode, vnode) {\n if (isUndef(oldVnode.data.domProps) && isUndef(vnode.data.domProps)) {\n return\n }\n var key, cur;\n var elm = vnode.elm;\n var oldProps = oldVnode.data.domProps || {};\n var props = vnode.data.domProps || {};\n // clone observed objects, as the user probably wants to mutate it\n if (isDef(props.__ob__)) {\n props = vnode.data.domProps = extend({}, props);\n }\n\n for (key in oldProps) {\n if (isUndef(props[key])) {\n elm[key] = '';\n }\n }\n for (key in props) {\n cur = props[key];\n // ignore children if the node has textContent or innerHTML,\n // as these will throw away existing DOM nodes and cause removal errors\n // on subsequent patches (#3360)\n if (key === 'textContent' || key === 'innerHTML') {\n if (vnode.children) { vnode.children.length = 0; }\n if (cur === oldProps[key]) { continue }\n // #6601 work around Chrome version <= 55 bug where single textNode\n // replaced by innerHTML/textContent retains its parentNode property\n if (elm.childNodes.length === 1) {\n elm.removeChild(elm.childNodes[0]);\n }\n }\n\n if (key === 'value') {\n // store value as _value as well since\n // non-string values will be stringified\n elm._value = cur;\n // avoid resetting cursor position when value is the same\n var strCur = isUndef(cur) ? '' : String(cur);\n if (shouldUpdateValue(elm, strCur)) {\n elm.value = strCur;\n }\n } else {\n elm[key] = cur;\n }\n }\n}\n\n// check platforms/web/util/attrs.js acceptValue\n\n\nfunction shouldUpdateValue (elm, checkVal) {\n return (!elm.composing && (\n elm.tagName === 'OPTION' ||\n isDirty(elm, checkVal) ||\n isInputChanged(elm, checkVal)\n ))\n}\n\nfunction isDirty (elm, checkVal) {\n // return true when textbox (.number and .trim) loses focus and its value is\n // not equal to the updated value\n var notInFocus = true;\n // #6157\n // work around IE bug when accessing document.activeElement in an iframe\n try { notInFocus = document.activeElement !== elm; } catch (e) {}\n return notInFocus && elm.value !== checkVal\n}\n\nfunction isInputChanged (elm, newVal) {\n var value = elm.value;\n var modifiers = elm._vModifiers; // injected by v-model runtime\n if (isDef(modifiers) && modifiers.number) {\n return toNumber(value) !== toNumber(newVal)\n }\n if (isDef(modifiers) && modifiers.trim) {\n return value.trim() !== newVal.trim()\n }\n return value !== newVal\n}\n\nvar domProps = {\n create: updateDOMProps,\n update: updateDOMProps\n};\n\n/* */\n\nvar parseStyleText = cached(function (cssText) {\n var res = {};\n var listDelimiter = /;(?![^(]*\\))/g;\n var propertyDelimiter = /:(.+)/;\n cssText.split(listDelimiter).forEach(function (item) {\n if (item) {\n var tmp = item.split(propertyDelimiter);\n tmp.length > 1 && (res[tmp[0].trim()] = tmp[1].trim());\n }\n });\n return res\n});\n\n// merge static and dynamic style data on the same vnode\nfunction normalizeStyleData (data) {\n var style = normalizeStyleBinding(data.style);\n // static style is pre-processed into an object during compilation\n // and is always a fresh object, so it's safe to merge into it\n return data.staticStyle\n ? extend(data.staticStyle, style)\n : style\n}\n\n// normalize possible array / string values into Object\nfunction normalizeStyleBinding (bindingStyle) {\n if (Array.isArray(bindingStyle)) {\n return toObject(bindingStyle)\n }\n if (typeof bindingStyle === 'string') {\n return parseStyleText(bindingStyle)\n }\n return bindingStyle\n}\n\n/**\n * parent component style should be after child's\n * so that parent component's style could override it\n */\nfunction getStyle (vnode, checkChild) {\n var res = {};\n var styleData;\n\n if (checkChild) {\n var childNode = vnode;\n while (childNode.componentInstance) {\n childNode = childNode.componentInstance._vnode;\n if (childNode.data && (styleData = normalizeStyleData(childNode.data))) {\n extend(res, styleData);\n }\n }\n }\n\n if ((styleData = normalizeStyleData(vnode.data))) {\n extend(res, styleData);\n }\n\n var parentNode = vnode;\n while ((parentNode = parentNode.parent)) {\n if (parentNode.data && (styleData = normalizeStyleData(parentNode.data))) {\n extend(res, styleData);\n }\n }\n return res\n}\n\n/* */\n\nvar cssVarRE = /^--/;\nvar importantRE = /\\s*!important$/;\nvar setProp = function (el, name, val) {\n /* istanbul ignore if */\n if (cssVarRE.test(name)) {\n el.style.setProperty(name, val);\n } else if (importantRE.test(val)) {\n el.style.setProperty(name, val.replace(importantRE, ''), 'important');\n } else {\n var normalizedName = normalize(name);\n if (Array.isArray(val)) {\n // Support values array created by autoprefixer, e.g.\n // {display: [\"-webkit-box\", \"-ms-flexbox\", \"flex\"]}\n // Set them one by one, and the browser will only set those it can recognize\n for (var i = 0, len = val.length; i < len; i++) {\n el.style[normalizedName] = val[i];\n }\n } else {\n el.style[normalizedName] = val;\n }\n }\n};\n\nvar vendorNames = ['Webkit', 'Moz', 'ms'];\n\nvar emptyStyle;\nvar normalize = cached(function (prop) {\n emptyStyle = emptyStyle || document.createElement('div').style;\n prop = camelize(prop);\n if (prop !== 'filter' && (prop in emptyStyle)) {\n return prop\n }\n var capName = prop.charAt(0).toUpperCase() + prop.slice(1);\n for (var i = 0; i < vendorNames.length; i++) {\n var name = vendorNames[i] + capName;\n if (name in emptyStyle) {\n return name\n }\n }\n});\n\nfunction updateStyle (oldVnode, vnode) {\n var data = vnode.data;\n var oldData = oldVnode.data;\n\n if (isUndef(data.staticStyle) && isUndef(data.style) &&\n isUndef(oldData.staticStyle) && isUndef(oldData.style)\n ) {\n return\n }\n\n var cur, name;\n var el = vnode.elm;\n var oldStaticStyle = oldData.staticStyle;\n var oldStyleBinding = oldData.normalizedStyle || oldData.style || {};\n\n // if static style exists, stylebinding already merged into it when doing normalizeStyleData\n var oldStyle = oldStaticStyle || oldStyleBinding;\n\n var style = normalizeStyleBinding(vnode.data.style) || {};\n\n // store normalized style under a different key for next diff\n // make sure to clone it if it's reactive, since the user likely wants\n // to mutate it.\n vnode.data.normalizedStyle = isDef(style.__ob__)\n ? extend({}, style)\n : style;\n\n var newStyle = getStyle(vnode, true);\n\n for (name in oldStyle) {\n if (isUndef(newStyle[name])) {\n setProp(el, name, '');\n }\n }\n for (name in newStyle) {\n cur = newStyle[name];\n if (cur !== oldStyle[name]) {\n // ie9 setting to null has no effect, must use empty string\n setProp(el, name, cur == null ? '' : cur);\n }\n }\n}\n\nvar style = {\n create: updateStyle,\n update: updateStyle\n};\n\n/* */\n\n/**\n * Add class with compatibility for SVG since classList is not supported on\n * SVG elements in IE\n */\nfunction addClass (el, cls) {\n /* istanbul ignore if */\n if (!cls || !(cls = cls.trim())) {\n return\n }\n\n /* istanbul ignore else */\n if (el.classList) {\n if (cls.indexOf(' ') > -1) {\n cls.split(/\\s+/).forEach(function (c) { return el.classList.add(c); });\n } else {\n el.classList.add(cls);\n }\n } else {\n var cur = \" \" + (el.getAttribute('class') || '') + \" \";\n if (cur.indexOf(' ' + cls + ' ') < 0) {\n el.setAttribute('class', (cur + cls).trim());\n }\n }\n}\n\n/**\n * Remove class with compatibility for SVG since classList is not supported on\n * SVG elements in IE\n */\nfunction removeClass (el, cls) {\n /* istanbul ignore if */\n if (!cls || !(cls = cls.trim())) {\n return\n }\n\n /* istanbul ignore else */\n if (el.classList) {\n if (cls.indexOf(' ') > -1) {\n cls.split(/\\s+/).forEach(function (c) { return el.classList.remove(c); });\n } else {\n el.classList.remove(cls);\n }\n if (!el.classList.length) {\n el.removeAttribute('class');\n }\n } else {\n var cur = \" \" + (el.getAttribute('class') || '') + \" \";\n var tar = ' ' + cls + ' ';\n while (cur.indexOf(tar) >= 0) {\n cur = cur.replace(tar, ' ');\n }\n cur = cur.trim();\n if (cur) {\n el.setAttribute('class', cur);\n } else {\n el.removeAttribute('class');\n }\n }\n}\n\n/* */\n\nfunction resolveTransition (def) {\n if (!def) {\n return\n }\n /* istanbul ignore else */\n if (typeof def === 'object') {\n var res = {};\n if (def.css !== false) {\n extend(res, autoCssTransition(def.name || 'v'));\n }\n extend(res, def);\n return res\n } else if (typeof def === 'string') {\n return autoCssTransition(def)\n }\n}\n\nvar autoCssTransition = cached(function (name) {\n return {\n enterClass: (name + \"-enter\"),\n enterToClass: (name + \"-enter-to\"),\n enterActiveClass: (name + \"-enter-active\"),\n leaveClass: (name + \"-leave\"),\n leaveToClass: (name + \"-leave-to\"),\n leaveActiveClass: (name + \"-leave-active\")\n }\n});\n\nvar hasTransition = inBrowser && !isIE9;\nvar TRANSITION = 'transition';\nvar ANIMATION = 'animation';\n\n// Transition property/event sniffing\nvar transitionProp = 'transition';\nvar transitionEndEvent = 'transitionend';\nvar animationProp = 'animation';\nvar animationEndEvent = 'animationend';\nif (hasTransition) {\n /* istanbul ignore if */\n if (window.ontransitionend === undefined &&\n window.onwebkittransitionend !== undefined\n ) {\n transitionProp = 'WebkitTransition';\n transitionEndEvent = 'webkitTransitionEnd';\n }\n if (window.onanimationend === undefined &&\n window.onwebkitanimationend !== undefined\n ) {\n animationProp = 'WebkitAnimation';\n animationEndEvent = 'webkitAnimationEnd';\n }\n}\n\n// binding to window is necessary to make hot reload work in IE in strict mode\nvar raf = inBrowser\n ? window.requestAnimationFrame\n ? window.requestAnimationFrame.bind(window)\n : setTimeout\n : /* istanbul ignore next */ function (fn) { return fn(); };\n\nfunction nextFrame (fn) {\n raf(function () {\n raf(fn);\n });\n}\n\nfunction addTransitionClass (el, cls) {\n var transitionClasses = el._transitionClasses || (el._transitionClasses = []);\n if (transitionClasses.indexOf(cls) < 0) {\n transitionClasses.push(cls);\n addClass(el, cls);\n }\n}\n\nfunction removeTransitionClass (el, cls) {\n if (el._transitionClasses) {\n remove(el._transitionClasses, cls);\n }\n removeClass(el, cls);\n}\n\nfunction whenTransitionEnds (\n el,\n expectedType,\n cb\n) {\n var ref = getTransitionInfo(el, expectedType);\n var type = ref.type;\n var timeout = ref.timeout;\n var propCount = ref.propCount;\n if (!type) { return cb() }\n var event = type === TRANSITION ? transitionEndEvent : animationEndEvent;\n var ended = 0;\n var end = function () {\n el.removeEventListener(event, onEnd);\n cb();\n };\n var onEnd = function (e) {\n if (e.target === el) {\n if (++ended >= propCount) {\n end();\n }\n }\n };\n setTimeout(function () {\n if (ended < propCount) {\n end();\n }\n }, timeout + 1);\n el.addEventListener(event, onEnd);\n}\n\nvar transformRE = /\\b(transform|all)(,|$)/;\n\nfunction getTransitionInfo (el, expectedType) {\n var styles = window.getComputedStyle(el);\n var transitionDelays = styles[transitionProp + 'Delay'].split(', ');\n var transitionDurations = styles[transitionProp + 'Duration'].split(', ');\n var transitionTimeout = getTimeout(transitionDelays, transitionDurations);\n var animationDelays = styles[animationProp + 'Delay'].split(', ');\n var animationDurations = styles[animationProp + 'Duration'].split(', ');\n var animationTimeout = getTimeout(animationDelays, animationDurations);\n\n var type;\n var timeout = 0;\n var propCount = 0;\n /* istanbul ignore if */\n if (expectedType === TRANSITION) {\n if (transitionTimeout > 0) {\n type = TRANSITION;\n timeout = transitionTimeout;\n propCount = transitionDurations.length;\n }\n } else if (expectedType === ANIMATION) {\n if (animationTimeout > 0) {\n type = ANIMATION;\n timeout = animationTimeout;\n propCount = animationDurations.length;\n }\n } else {\n timeout = Math.max(transitionTimeout, animationTimeout);\n type = timeout > 0\n ? transitionTimeout > animationTimeout\n ? TRANSITION\n : ANIMATION\n : null;\n propCount = type\n ? type === TRANSITION\n ? transitionDurations.length\n : animationDurations.length\n : 0;\n }\n var hasTransform =\n type === TRANSITION &&\n transformRE.test(styles[transitionProp + 'Property']);\n return {\n type: type,\n timeout: timeout,\n propCount: propCount,\n hasTransform: hasTransform\n }\n}\n\nfunction getTimeout (delays, durations) {\n /* istanbul ignore next */\n while (delays.length < durations.length) {\n delays = delays.concat(delays);\n }\n\n return Math.max.apply(null, durations.map(function (d, i) {\n return toMs(d) + toMs(delays[i])\n }))\n}\n\nfunction toMs (s) {\n return Number(s.slice(0, -1)) * 1000\n}\n\n/* */\n\nfunction enter (vnode, toggleDisplay) {\n var el = vnode.elm;\n\n // call leave callback now\n if (isDef(el._leaveCb)) {\n el._leaveCb.cancelled = true;\n el._leaveCb();\n }\n\n var data = resolveTransition(vnode.data.transition);\n if (isUndef(data)) {\n return\n }\n\n /* istanbul ignore if */\n if (isDef(el._enterCb) || el.nodeType !== 1) {\n return\n }\n\n var css = data.css;\n var type = data.type;\n var enterClass = data.enterClass;\n var enterToClass = data.enterToClass;\n var enterActiveClass = data.enterActiveClass;\n var appearClass = data.appearClass;\n var appearToClass = data.appearToClass;\n var appearActiveClass = data.appearActiveClass;\n var beforeEnter = data.beforeEnter;\n var enter = data.enter;\n var afterEnter = data.afterEnter;\n var enterCancelled = data.enterCancelled;\n var beforeAppear = data.beforeAppear;\n var appear = data.appear;\n var afterAppear = data.afterAppear;\n var appearCancelled = data.appearCancelled;\n var duration = data.duration;\n\n // activeInstance will always be the <transition> component managing this\n // transition. One edge case to check is when the <transition> is placed\n // as the root node of a child component. In that case we need to check\n // <transition>'s parent for appear check.\n var context = activeInstance;\n var transitionNode = activeInstance.$vnode;\n while (transitionNode && transitionNode.parent) {\n transitionNode = transitionNode.parent;\n context = transitionNode.context;\n }\n\n var isAppear = !context._isMounted || !vnode.isRootInsert;\n\n if (isAppear && !appear && appear !== '') {\n return\n }\n\n var startClass = isAppear && appearClass\n ? appearClass\n : enterClass;\n var activeClass = isAppear && appearActiveClass\n ? appearActiveClass\n : enterActiveClass;\n var toClass = isAppear && appearToClass\n ? appearToClass\n : enterToClass;\n\n var beforeEnterHook = isAppear\n ? (beforeAppear || beforeEnter)\n : beforeEnter;\n var enterHook = isAppear\n ? (typeof appear === 'function' ? appear : enter)\n : enter;\n var afterEnterHook = isAppear\n ? (afterAppear || afterEnter)\n : afterEnter;\n var enterCancelledHook = isAppear\n ? (appearCancelled || enterCancelled)\n : enterCancelled;\n\n var explicitEnterDuration = toNumber(\n isObject(duration)\n ? duration.enter\n : duration\n );\n\n if (false) {\n checkDuration(explicitEnterDuration, 'enter', vnode);\n }\n\n var expectsCSS = css !== false && !isIE9;\n var userWantsControl = getHookArgumentsLength(enterHook);\n\n var cb = el._enterCb = once(function () {\n if (expectsCSS) {\n removeTransitionClass(el, toClass);\n removeTransitionClass(el, activeClass);\n }\n if (cb.cancelled) {\n if (expectsCSS) {\n removeTransitionClass(el, startClass);\n }\n enterCancelledHook && enterCancelledHook(el);\n } else {\n afterEnterHook && afterEnterHook(el);\n }\n el._enterCb = null;\n });\n\n if (!vnode.data.show) {\n // remove pending leave element on enter by injecting an insert hook\n mergeVNodeHook(vnode.data.hook || (vnode.data.hook = {}), 'insert', function () {\n var parent = el.parentNode;\n var pendingNode = parent && parent._pending && parent._pending[vnode.key];\n if (pendingNode &&\n pendingNode.tag === vnode.tag &&\n pendingNode.elm._leaveCb\n ) {\n pendingNode.elm._leaveCb();\n }\n enterHook && enterHook(el, cb);\n });\n }\n\n // start enter transition\n beforeEnterHook && beforeEnterHook(el);\n if (expectsCSS) {\n addTransitionClass(el, startClass);\n addTransitionClass(el, activeClass);\n nextFrame(function () {\n addTransitionClass(el, toClass);\n removeTransitionClass(el, startClass);\n if (!cb.cancelled && !userWantsControl) {\n if (isValidDuration(explicitEnterDuration)) {\n setTimeout(cb, explicitEnterDuration);\n } else {\n whenTransitionEnds(el, type, cb);\n }\n }\n });\n }\n\n if (vnode.data.show) {\n toggleDisplay && toggleDisplay();\n enterHook && enterHook(el, cb);\n }\n\n if (!expectsCSS && !userWantsControl) {\n cb();\n }\n}\n\nfunction leave (vnode, rm) {\n var el = vnode.elm;\n\n // call enter callback now\n if (isDef(el._enterCb)) {\n el._enterCb.cancelled = true;\n el._enterCb();\n }\n\n var data = resolveTransition(vnode.data.transition);\n if (isUndef(data)) {\n return rm()\n }\n\n /* istanbul ignore if */\n if (isDef(el._leaveCb) || el.nodeType !== 1) {\n return\n }\n\n var css = data.css;\n var type = data.type;\n var leaveClass = data.leaveClass;\n var leaveToClass = data.leaveToClass;\n var leaveActiveClass = data.leaveActiveClass;\n var beforeLeave = data.beforeLeave;\n var leave = data.leave;\n var afterLeave = data.afterLeave;\n var leaveCancelled = data.leaveCancelled;\n var delayLeave = data.delayLeave;\n var duration = data.duration;\n\n var expectsCSS = css !== false && !isIE9;\n var userWantsControl = getHookArgumentsLength(leave);\n\n var explicitLeaveDuration = toNumber(\n isObject(duration)\n ? duration.leave\n : duration\n );\n\n if (false) {\n checkDuration(explicitLeaveDuration, 'leave', vnode);\n }\n\n var cb = el._leaveCb = once(function () {\n if (el.parentNode && el.parentNode._pending) {\n el.parentNode._pending[vnode.key] = null;\n }\n if (expectsCSS) {\n removeTransitionClass(el, leaveToClass);\n removeTransitionClass(el, leaveActiveClass);\n }\n if (cb.cancelled) {\n if (expectsCSS) {\n removeTransitionClass(el, leaveClass);\n }\n leaveCancelled && leaveCancelled(el);\n } else {\n rm();\n afterLeave && afterLeave(el);\n }\n el._leaveCb = null;\n });\n\n if (delayLeave) {\n delayLeave(performLeave);\n } else {\n performLeave();\n }\n\n function performLeave () {\n // the delayed leave may have already been cancelled\n if (cb.cancelled) {\n return\n }\n // record leaving element\n if (!vnode.data.show) {\n (el.parentNode._pending || (el.parentNode._pending = {}))[(vnode.key)] = vnode;\n }\n beforeLeave && beforeLeave(el);\n if (expectsCSS) {\n addTransitionClass(el, leaveClass);\n addTransitionClass(el, leaveActiveClass);\n nextFrame(function () {\n addTransitionClass(el, leaveToClass);\n removeTransitionClass(el, leaveClass);\n if (!cb.cancelled && !userWantsControl) {\n if (isValidDuration(explicitLeaveDuration)) {\n setTimeout(cb, explicitLeaveDuration);\n } else {\n whenTransitionEnds(el, type, cb);\n }\n }\n });\n }\n leave && leave(el, cb);\n if (!expectsCSS && !userWantsControl) {\n cb();\n }\n }\n}\n\n// only used in dev mode\nfunction checkDuration (val, name, vnode) {\n if (typeof val !== 'number') {\n warn(\n \"<transition> explicit \" + name + \" duration is not a valid number - \" +\n \"got \" + (JSON.stringify(val)) + \".\",\n vnode.context\n );\n } else if (isNaN(val)) {\n warn(\n \"<transition> explicit \" + name + \" duration is NaN - \" +\n 'the duration expression might be incorrect.',\n vnode.context\n );\n }\n}\n\nfunction isValidDuration (val) {\n return typeof val === 'number' && !isNaN(val)\n}\n\n/**\n * Normalize a transition hook's argument length. The hook may be:\n * - a merged hook (invoker) with the original in .fns\n * - a wrapped component method (check ._length)\n * - a plain function (.length)\n */\nfunction getHookArgumentsLength (fn) {\n if (isUndef(fn)) {\n return false\n }\n var invokerFns = fn.fns;\n if (isDef(invokerFns)) {\n // invoker\n return getHookArgumentsLength(\n Array.isArray(invokerFns)\n ? invokerFns[0]\n : invokerFns\n )\n } else {\n return (fn._length || fn.length) > 1\n }\n}\n\nfunction _enter (_, vnode) {\n if (vnode.data.show !== true) {\n enter(vnode);\n }\n}\n\nvar transition = inBrowser ? {\n create: _enter,\n activate: _enter,\n remove: function remove$$1 (vnode, rm) {\n /* istanbul ignore else */\n if (vnode.data.show !== true) {\n leave(vnode, rm);\n } else {\n rm();\n }\n }\n} : {};\n\nvar platformModules = [\n attrs,\n klass,\n events,\n domProps,\n style,\n transition\n];\n\n/* */\n\n// the directive module should be applied last, after all\n// built-in modules have been applied.\nvar modules = platformModules.concat(baseModules);\n\nvar patch = createPatchFunction({ nodeOps: nodeOps, modules: modules });\n\n/**\n * Not type checking this file because flow doesn't like attaching\n * properties to Elements.\n */\n\n/* istanbul ignore if */\nif (isIE9) {\n // http://www.matts411.com/post/internet-explorer-9-oninput/\n document.addEventListener('selectionchange', function () {\n var el = document.activeElement;\n if (el && el.vmodel) {\n trigger(el, 'input');\n }\n });\n}\n\nvar model$1 = {\n inserted: function inserted (el, binding, vnode) {\n if (vnode.tag === 'select') {\n setSelected(el, binding, vnode.context);\n el._vOptions = [].map.call(el.options, getValue);\n } else if (vnode.tag === 'textarea' || isTextInputType(el.type)) {\n el._vModifiers = binding.modifiers;\n if (!binding.modifiers.lazy) {\n // Safari < 10.2 & UIWebView doesn't fire compositionend when\n // switching focus before confirming composition choice\n // this also fixes the issue where some browsers e.g. iOS Chrome\n // fires \"change\" instead of \"input\" on autocomplete.\n el.addEventListener('change', onCompositionEnd);\n if (!isAndroid) {\n el.addEventListener('compositionstart', onCompositionStart);\n el.addEventListener('compositionend', onCompositionEnd);\n }\n /* istanbul ignore if */\n if (isIE9) {\n el.vmodel = true;\n }\n }\n }\n },\n componentUpdated: function componentUpdated (el, binding, vnode) {\n if (vnode.tag === 'select') {\n setSelected(el, binding, vnode.context);\n // in case the options rendered by v-for have changed,\n // it's possible that the value is out-of-sync with the rendered options.\n // detect such cases and filter out values that no longer has a matching\n // option in the DOM.\n var prevOptions = el._vOptions;\n var curOptions = el._vOptions = [].map.call(el.options, getValue);\n if (curOptions.some(function (o, i) { return !looseEqual(o, prevOptions[i]); })) {\n // trigger change event if\n // no matching option found for at least one value\n var needReset = el.multiple\n ? binding.value.some(function (v) { return hasNoMatchingOption(v, curOptions); })\n : binding.value !== binding.oldValue && hasNoMatchingOption(binding.value, curOptions);\n if (needReset) {\n trigger(el, 'change');\n }\n }\n }\n }\n};\n\nfunction setSelected (el, binding, vm) {\n actuallySetSelected(el, binding, vm);\n /* istanbul ignore if */\n if (isIE || isEdge) {\n setTimeout(function () {\n actuallySetSelected(el, binding, vm);\n }, 0);\n }\n}\n\nfunction actuallySetSelected (el, binding, vm) {\n var value = binding.value;\n var isMultiple = el.multiple;\n if (isMultiple && !Array.isArray(value)) {\n \"production\" !== 'production' && warn(\n \"<select multiple v-model=\\\"\" + (binding.expression) + \"\\\"> \" +\n \"expects an Array value for its binding, but got \" + (Object.prototype.toString.call(value).slice(8, -1)),\n vm\n );\n return\n }\n var selected, option;\n for (var i = 0, l = el.options.length; i < l; i++) {\n option = el.options[i];\n if (isMultiple) {\n selected = looseIndexOf(value, getValue(option)) > -1;\n if (option.selected !== selected) {\n option.selected = selected;\n }\n } else {\n if (looseEqual(getValue(option), value)) {\n if (el.selectedIndex !== i) {\n el.selectedIndex = i;\n }\n return\n }\n }\n }\n if (!isMultiple) {\n el.selectedIndex = -1;\n }\n}\n\nfunction hasNoMatchingOption (value, options) {\n return options.every(function (o) { return !looseEqual(o, value); })\n}\n\nfunction getValue (option) {\n return '_value' in option\n ? option._value\n : option.value\n}\n\nfunction onCompositionStart (e) {\n e.target.composing = true;\n}\n\nfunction onCompositionEnd (e) {\n // prevent triggering an input event for no reason\n if (!e.target.composing) { return }\n e.target.composing = false;\n trigger(e.target, 'input');\n}\n\nfunction trigger (el, type) {\n var e = document.createEvent('HTMLEvents');\n e.initEvent(type, true, true);\n el.dispatchEvent(e);\n}\n\n/* */\n\n// recursively search for possible transition defined inside the component root\nfunction locateNode (vnode) {\n return vnode.componentInstance && (!vnode.data || !vnode.data.transition)\n ? locateNode(vnode.componentInstance._vnode)\n : vnode\n}\n\nvar show = {\n bind: function bind (el, ref, vnode) {\n var value = ref.value;\n\n vnode = locateNode(vnode);\n var transition$$1 = vnode.data && vnode.data.transition;\n var originalDisplay = el.__vOriginalDisplay =\n el.style.display === 'none' ? '' : el.style.display;\n if (value && transition$$1) {\n vnode.data.show = true;\n enter(vnode, function () {\n el.style.display = originalDisplay;\n });\n } else {\n el.style.display = value ? originalDisplay : 'none';\n }\n },\n\n update: function update (el, ref, vnode) {\n var value = ref.value;\n var oldValue = ref.oldValue;\n\n /* istanbul ignore if */\n if (value === oldValue) { return }\n vnode = locateNode(vnode);\n var transition$$1 = vnode.data && vnode.data.transition;\n if (transition$$1) {\n vnode.data.show = true;\n if (value) {\n enter(vnode, function () {\n el.style.display = el.__vOriginalDisplay;\n });\n } else {\n leave(vnode, function () {\n el.style.display = 'none';\n });\n }\n } else {\n el.style.display = value ? el.__vOriginalDisplay : 'none';\n }\n },\n\n unbind: function unbind (\n el,\n binding,\n vnode,\n oldVnode,\n isDestroy\n ) {\n if (!isDestroy) {\n el.style.display = el.__vOriginalDisplay;\n }\n }\n};\n\nvar platformDirectives = {\n model: model$1,\n show: show\n};\n\n/* */\n\n// Provides transition support for a single element/component.\n// supports transition mode (out-in / in-out)\n\nvar transitionProps = {\n name: String,\n appear: Boolean,\n css: Boolean,\n mode: String,\n type: String,\n enterClass: String,\n leaveClass: String,\n enterToClass: String,\n leaveToClass: String,\n enterActiveClass: String,\n leaveActiveClass: String,\n appearClass: String,\n appearActiveClass: String,\n appearToClass: String,\n duration: [Number, String, Object]\n};\n\n// in case the child is also an abstract component, e.g. <keep-alive>\n// we want to recursively retrieve the real component to be rendered\nfunction getRealChild (vnode) {\n var compOptions = vnode && vnode.componentOptions;\n if (compOptions && compOptions.Ctor.options.abstract) {\n return getRealChild(getFirstComponentChild(compOptions.children))\n } else {\n return vnode\n }\n}\n\nfunction extractTransitionData (comp) {\n var data = {};\n var options = comp.$options;\n // props\n for (var key in options.propsData) {\n data[key] = comp[key];\n }\n // events.\n // extract listeners and pass them directly to the transition methods\n var listeners = options._parentListeners;\n for (var key$1 in listeners) {\n data[camelize(key$1)] = listeners[key$1];\n }\n return data\n}\n\nfunction placeholder (h, rawChild) {\n if (/\\d-keep-alive$/.test(rawChild.tag)) {\n return h('keep-alive', {\n props: rawChild.componentOptions.propsData\n })\n }\n}\n\nfunction hasParentTransition (vnode) {\n while ((vnode = vnode.parent)) {\n if (vnode.data.transition) {\n return true\n }\n }\n}\n\nfunction isSameChild (child, oldChild) {\n return oldChild.key === child.key && oldChild.tag === child.tag\n}\n\nvar Transition = {\n name: 'transition',\n props: transitionProps,\n abstract: true,\n\n render: function render (h) {\n var this$1 = this;\n\n var children = this.$options._renderChildren;\n if (!children) {\n return\n }\n\n // filter out text nodes (possible whitespaces)\n children = children.filter(function (c) { return c.tag || isAsyncPlaceholder(c); });\n /* istanbul ignore if */\n if (!children.length) {\n return\n }\n\n // warn multiple elements\n if (false) {\n warn(\n '<transition> can only be used on a single element. Use ' +\n '<transition-group> for lists.',\n this.$parent\n );\n }\n\n var mode = this.mode;\n\n // warn invalid mode\n if (false\n ) {\n warn(\n 'invalid <transition> mode: ' + mode,\n this.$parent\n );\n }\n\n var rawChild = children[0];\n\n // if this is a component root node and the component's\n // parent container node also has transition, skip.\n if (hasParentTransition(this.$vnode)) {\n return rawChild\n }\n\n // apply transition data to child\n // use getRealChild() to ignore abstract components e.g. keep-alive\n var child = getRealChild(rawChild);\n /* istanbul ignore if */\n if (!child) {\n return rawChild\n }\n\n if (this._leaving) {\n return placeholder(h, rawChild)\n }\n\n // ensure a key that is unique to the vnode type and to this transition\n // component instance. This key will be used to remove pending leaving nodes\n // during entering.\n var id = \"__transition-\" + (this._uid) + \"-\";\n child.key = child.key == null\n ? child.isComment\n ? id + 'comment'\n : id + child.tag\n : isPrimitive(child.key)\n ? (String(child.key).indexOf(id) === 0 ? child.key : id + child.key)\n : child.key;\n\n var data = (child.data || (child.data = {})).transition = extractTransitionData(this);\n var oldRawChild = this._vnode;\n var oldChild = getRealChild(oldRawChild);\n\n // mark v-show\n // so that the transition module can hand over the control to the directive\n if (child.data.directives && child.data.directives.some(function (d) { return d.name === 'show'; })) {\n child.data.show = true;\n }\n\n if (\n oldChild &&\n oldChild.data &&\n !isSameChild(child, oldChild) &&\n !isAsyncPlaceholder(oldChild)\n ) {\n // replace old child transition data with fresh one\n // important for dynamic transitions!\n var oldData = oldChild.data.transition = extend({}, data);\n // handle transition mode\n if (mode === 'out-in') {\n // return placeholder node and queue update when leave finishes\n this._leaving = true;\n mergeVNodeHook(oldData, 'afterLeave', function () {\n this$1._leaving = false;\n this$1.$forceUpdate();\n });\n return placeholder(h, rawChild)\n } else if (mode === 'in-out') {\n if (isAsyncPlaceholder(child)) {\n return oldRawChild\n }\n var delayedLeave;\n var performLeave = function () { delayedLeave(); };\n mergeVNodeHook(data, 'afterEnter', performLeave);\n mergeVNodeHook(data, 'enterCancelled', performLeave);\n mergeVNodeHook(oldData, 'delayLeave', function (leave) { delayedLeave = leave; });\n }\n }\n\n return rawChild\n }\n};\n\n/* */\n\n// Provides transition support for list items.\n// supports move transitions using the FLIP technique.\n\n// Because the vdom's children update algorithm is \"unstable\" - i.e.\n// it doesn't guarantee the relative positioning of removed elements,\n// we force transition-group to update its children into two passes:\n// in the first pass, we remove all nodes that need to be removed,\n// triggering their leaving transition; in the second pass, we insert/move\n// into the final desired state. This way in the second pass removed\n// nodes will remain where they should be.\n\nvar props = extend({\n tag: String,\n moveClass: String\n}, transitionProps);\n\ndelete props.mode;\n\nvar TransitionGroup = {\n props: props,\n\n render: function render (h) {\n var tag = this.tag || this.$vnode.data.tag || 'span';\n var map = Object.create(null);\n var prevChildren = this.prevChildren = this.children;\n var rawChildren = this.$slots.default || [];\n var children = this.children = [];\n var transitionData = extractTransitionData(this);\n\n for (var i = 0; i < rawChildren.length; i++) {\n var c = rawChildren[i];\n if (c.tag) {\n if (c.key != null && String(c.key).indexOf('__vlist') !== 0) {\n children.push(c);\n map[c.key] = c\n ;(c.data || (c.data = {})).transition = transitionData;\n } else if (false) {\n var opts = c.componentOptions;\n var name = opts ? (opts.Ctor.options.name || opts.tag || '') : c.tag;\n warn((\"<transition-group> children must be keyed: <\" + name + \">\"));\n }\n }\n }\n\n if (prevChildren) {\n var kept = [];\n var removed = [];\n for (var i$1 = 0; i$1 < prevChildren.length; i$1++) {\n var c$1 = prevChildren[i$1];\n c$1.data.transition = transitionData;\n c$1.data.pos = c$1.elm.getBoundingClientRect();\n if (map[c$1.key]) {\n kept.push(c$1);\n } else {\n removed.push(c$1);\n }\n }\n this.kept = h(tag, null, kept);\n this.removed = removed;\n }\n\n return h(tag, null, children)\n },\n\n beforeUpdate: function beforeUpdate () {\n // force removing pass\n this.__patch__(\n this._vnode,\n this.kept,\n false, // hydrating\n true // removeOnly (!important, avoids unnecessary moves)\n );\n this._vnode = this.kept;\n },\n\n updated: function updated () {\n var children = this.prevChildren;\n var moveClass = this.moveClass || ((this.name || 'v') + '-move');\n if (!children.length || !this.hasMove(children[0].elm, moveClass)) {\n return\n }\n\n // we divide the work into three loops to avoid mixing DOM reads and writes\n // in each iteration - which helps prevent layout thrashing.\n children.forEach(callPendingCbs);\n children.forEach(recordPosition);\n children.forEach(applyTranslation);\n\n // force reflow to put everything in position\n // assign to this to avoid being removed in tree-shaking\n // $flow-disable-line\n this._reflow = document.body.offsetHeight;\n\n children.forEach(function (c) {\n if (c.data.moved) {\n var el = c.elm;\n var s = el.style;\n addTransitionClass(el, moveClass);\n s.transform = s.WebkitTransform = s.transitionDuration = '';\n el.addEventListener(transitionEndEvent, el._moveCb = function cb (e) {\n if (!e || /transform$/.test(e.propertyName)) {\n el.removeEventListener(transitionEndEvent, cb);\n el._moveCb = null;\n removeTransitionClass(el, moveClass);\n }\n });\n }\n });\n },\n\n methods: {\n hasMove: function hasMove (el, moveClass) {\n /* istanbul ignore if */\n if (!hasTransition) {\n return false\n }\n /* istanbul ignore if */\n if (this._hasMove) {\n return this._hasMove\n }\n // Detect whether an element with the move class applied has\n // CSS transitions. Since the element may be inside an entering\n // transition at this very moment, we make a clone of it and remove\n // all other transition classes applied to ensure only the move class\n // is applied.\n var clone = el.cloneNode();\n if (el._transitionClasses) {\n el._transitionClasses.forEach(function (cls) { removeClass(clone, cls); });\n }\n addClass(clone, moveClass);\n clone.style.display = 'none';\n this.$el.appendChild(clone);\n var info = getTransitionInfo(clone);\n this.$el.removeChild(clone);\n return (this._hasMove = info.hasTransform)\n }\n }\n};\n\nfunction callPendingCbs (c) {\n /* istanbul ignore if */\n if (c.elm._moveCb) {\n c.elm._moveCb();\n }\n /* istanbul ignore if */\n if (c.elm._enterCb) {\n c.elm._enterCb();\n }\n}\n\nfunction recordPosition (c) {\n c.data.newPos = c.elm.getBoundingClientRect();\n}\n\nfunction applyTranslation (c) {\n var oldPos = c.data.pos;\n var newPos = c.data.newPos;\n var dx = oldPos.left - newPos.left;\n var dy = oldPos.top - newPos.top;\n if (dx || dy) {\n c.data.moved = true;\n var s = c.elm.style;\n s.transform = s.WebkitTransform = \"translate(\" + dx + \"px,\" + dy + \"px)\";\n s.transitionDuration = '0s';\n }\n}\n\nvar platformComponents = {\n Transition: Transition,\n TransitionGroup: TransitionGroup\n};\n\n/* */\n\n// install platform specific utils\nVue$3.config.mustUseProp = mustUseProp;\nVue$3.config.isReservedTag = isReservedTag;\nVue$3.config.isReservedAttr = isReservedAttr;\nVue$3.config.getTagNamespace = getTagNamespace;\nVue$3.config.isUnknownElement = isUnknownElement;\n\n// install platform runtime directives & components\nextend(Vue$3.options.directives, platformDirectives);\nextend(Vue$3.options.components, platformComponents);\n\n// install platform patch function\nVue$3.prototype.__patch__ = inBrowser ? patch : noop;\n\n// public mount method\nVue$3.prototype.$mount = function (\n el,\n hydrating\n) {\n el = el && inBrowser ? query(el) : undefined;\n return mountComponent(this, el, hydrating)\n};\n\n// devtools global hook\n/* istanbul ignore next */\nVue$3.nextTick(function () {\n if (config.devtools) {\n if (devtools) {\n devtools.emit('init', Vue$3);\n } else if (false) {\n console[console.info ? 'info' : 'log'](\n 'Download the Vue Devtools extension for a better development experience:\\n' +\n 'https://github.com/vuejs/vue-devtools'\n );\n }\n }\n if (false\n ) {\n console[console.info ? 'info' : 'log'](\n \"You are running Vue in development mode.\\n\" +\n \"Make sure to turn on production mode when deploying for production.\\n\" +\n \"See more tips at https://vuejs.org/guide/deployment.html\"\n );\n }\n}, 0);\n\n/* */\n\n// check whether current browser encodes a char inside attribute values\nfunction shouldDecode (content, encoded) {\n var div = document.createElement('div');\n div.innerHTML = \"<div a=\\\"\" + content + \"\\\"/>\";\n return div.innerHTML.indexOf(encoded) > 0\n}\n\n// #3663\n// IE encodes newlines inside attribute values while other browsers don't\nvar shouldDecodeNewlines = inBrowser ? shouldDecode('\\n', '&#10;') : false;\n\n/* */\n\nvar defaultTagRE = /\\{\\{((?:.|\\n)+?)\\}\\}/g;\nvar regexEscapeRE = /[-.*+?^${}()|[\\]\\/\\\\]/g;\n\nvar buildRegex = cached(function (delimiters) {\n var open = delimiters[0].replace(regexEscapeRE, '\\\\$&');\n var close = delimiters[1].replace(regexEscapeRE, '\\\\$&');\n return new RegExp(open + '((?:.|\\\\n)+?)' + close, 'g')\n});\n\nfunction parseText (\n text,\n delimiters\n) {\n var tagRE = delimiters ? buildRegex(delimiters) : defaultTagRE;\n if (!tagRE.test(text)) {\n return\n }\n var tokens = [];\n var lastIndex = tagRE.lastIndex = 0;\n var match, index;\n while ((match = tagRE.exec(text))) {\n index = match.index;\n // push text token\n if (index > lastIndex) {\n tokens.push(JSON.stringify(text.slice(lastIndex, index)));\n }\n // tag token\n var exp = parseFilters(match[1].trim());\n tokens.push((\"_s(\" + exp + \")\"));\n lastIndex = index + match[0].length;\n }\n if (lastIndex < text.length) {\n tokens.push(JSON.stringify(text.slice(lastIndex)));\n }\n return tokens.join('+')\n}\n\n/* */\n\nfunction transformNode (el, options) {\n var warn = options.warn || baseWarn;\n var staticClass = getAndRemoveAttr(el, 'class');\n if (false) {\n var expression = parseText(staticClass, options.delimiters);\n if (expression) {\n warn(\n \"class=\\\"\" + staticClass + \"\\\": \" +\n 'Interpolation inside attributes has been removed. ' +\n 'Use v-bind or the colon shorthand instead. For example, ' +\n 'instead of <div class=\"{{ val }}\">, use <div :class=\"val\">.'\n );\n }\n }\n if (staticClass) {\n el.staticClass = JSON.stringify(staticClass);\n }\n var classBinding = getBindingAttr(el, 'class', false /* getStatic */);\n if (classBinding) {\n el.classBinding = classBinding;\n }\n}\n\nfunction genData (el) {\n var data = '';\n if (el.staticClass) {\n data += \"staticClass:\" + (el.staticClass) + \",\";\n }\n if (el.classBinding) {\n data += \"class:\" + (el.classBinding) + \",\";\n }\n return data\n}\n\nvar klass$1 = {\n staticKeys: ['staticClass'],\n transformNode: transformNode,\n genData: genData\n};\n\n/* */\n\nfunction transformNode$1 (el, options) {\n var warn = options.warn || baseWarn;\n var staticStyle = getAndRemoveAttr(el, 'style');\n if (staticStyle) {\n /* istanbul ignore if */\n if (false) {\n var expression = parseText(staticStyle, options.delimiters);\n if (expression) {\n warn(\n \"style=\\\"\" + staticStyle + \"\\\": \" +\n 'Interpolation inside attributes has been removed. ' +\n 'Use v-bind or the colon shorthand instead. For example, ' +\n 'instead of <div style=\"{{ val }}\">, use <div :style=\"val\">.'\n );\n }\n }\n el.staticStyle = JSON.stringify(parseStyleText(staticStyle));\n }\n\n var styleBinding = getBindingAttr(el, 'style', false /* getStatic */);\n if (styleBinding) {\n el.styleBinding = styleBinding;\n }\n}\n\nfunction genData$1 (el) {\n var data = '';\n if (el.staticStyle) {\n data += \"staticStyle:\" + (el.staticStyle) + \",\";\n }\n if (el.styleBinding) {\n data += \"style:(\" + (el.styleBinding) + \"),\";\n }\n return data\n}\n\nvar style$1 = {\n staticKeys: ['staticStyle'],\n transformNode: transformNode$1,\n genData: genData$1\n};\n\n/* */\n\nvar decoder;\n\nvar he = {\n decode: function decode (html) {\n decoder = decoder || document.createElement('div');\n decoder.innerHTML = html;\n return decoder.textContent\n }\n};\n\n/* */\n\nvar isUnaryTag = makeMap(\n 'area,base,br,col,embed,frame,hr,img,input,isindex,keygen,' +\n 'link,meta,param,source,track,wbr'\n);\n\n// Elements that you can, intentionally, leave open\n// (and which close themselves)\nvar canBeLeftOpenTag = makeMap(\n 'colgroup,dd,dt,li,options,p,td,tfoot,th,thead,tr,source'\n);\n\n// HTML5 tags https://html.spec.whatwg.org/multipage/indices.html#elements-3\n// Phrasing Content https://html.spec.whatwg.org/multipage/dom.html#phrasing-content\nvar isNonPhrasingTag = makeMap(\n 'address,article,aside,base,blockquote,body,caption,col,colgroup,dd,' +\n 'details,dialog,div,dl,dt,fieldset,figcaption,figure,footer,form,' +\n 'h1,h2,h3,h4,h5,h6,head,header,hgroup,hr,html,legend,li,menuitem,meta,' +\n 'optgroup,option,param,rp,rt,source,style,summary,tbody,td,tfoot,th,thead,' +\n 'title,tr,track'\n);\n\n/**\n * Not type-checking this file because it's mostly vendor code.\n */\n\n/*!\n * HTML Parser By John Resig (ejohn.org)\n * Modified by Juriy \"kangax\" Zaytsev\n * Original code by Erik Arvidsson, Mozilla Public License\n * http://erik.eae.net/simplehtmlparser/simplehtmlparser.js\n */\n\n// Regular Expressions for parsing tags and attributes\nvar attribute = /^\\s*([^\\s\"'<>\\/=]+)(?:\\s*(=)\\s*(?:\"([^\"]*)\"+|'([^']*)'+|([^\\s\"'=<>`]+)))?/;\n// could use https://www.w3.org/TR/1999/REC-xml-names-19990114/#NT-QName\n// but for Vue templates we can enforce a simple charset\nvar ncname = '[a-zA-Z_][\\\\w\\\\-\\\\.]*';\nvar qnameCapture = \"((?:\" + ncname + \"\\\\:)?\" + ncname + \")\";\nvar startTagOpen = new RegExp((\"^<\" + qnameCapture));\nvar startTagClose = /^\\s*(\\/?)>/;\nvar endTag = new RegExp((\"^<\\\\/\" + qnameCapture + \"[^>]*>\"));\nvar doctype = /^<!DOCTYPE [^>]+>/i;\nvar comment = /^<!--/;\nvar conditionalComment = /^<!\\[/;\n\nvar IS_REGEX_CAPTURING_BROKEN = false;\n'x'.replace(/x(.)?/g, function (m, g) {\n IS_REGEX_CAPTURING_BROKEN = g === '';\n});\n\n// Special Elements (can contain anything)\nvar isPlainTextElement = makeMap('script,style,textarea', true);\nvar reCache = {};\n\nvar decodingMap = {\n '&lt;': '<',\n '&gt;': '>',\n '&quot;': '\"',\n '&amp;': '&',\n '&#10;': '\\n'\n};\nvar encodedAttr = /&(?:lt|gt|quot|amp);/g;\nvar encodedAttrWithNewLines = /&(?:lt|gt|quot|amp|#10);/g;\n\n// #5992\nvar isIgnoreNewlineTag = makeMap('pre,textarea', true);\nvar shouldIgnoreFirstNewline = function (tag, html) { return tag && isIgnoreNewlineTag(tag) && html[0] === '\\n'; };\n\nfunction decodeAttr (value, shouldDecodeNewlines) {\n var re = shouldDecodeNewlines ? encodedAttrWithNewLines : encodedAttr;\n return value.replace(re, function (match) { return decodingMap[match]; })\n}\n\nfunction parseHTML (html, options) {\n var stack = [];\n var expectHTML = options.expectHTML;\n var isUnaryTag$$1 = options.isUnaryTag || no;\n var canBeLeftOpenTag$$1 = options.canBeLeftOpenTag || no;\n var index = 0;\n var last, lastTag;\n while (html) {\n last = html;\n // Make sure we're not in a plaintext content element like script/style\n if (!lastTag || !isPlainTextElement(lastTag)) {\n var textEnd = html.indexOf('<');\n if (textEnd === 0) {\n // Comment:\n if (comment.test(html)) {\n var commentEnd = html.indexOf('-->');\n\n if (commentEnd >= 0) {\n if (options.shouldKeepComment) {\n options.comment(html.substring(4, commentEnd));\n }\n advance(commentEnd + 3);\n continue\n }\n }\n\n // http://en.wikipedia.org/wiki/Conditional_comment#Downlevel-revealed_conditional_comment\n if (conditionalComment.test(html)) {\n var conditionalEnd = html.indexOf(']>');\n\n if (conditionalEnd >= 0) {\n advance(conditionalEnd + 2);\n continue\n }\n }\n\n // Doctype:\n var doctypeMatch = html.match(doctype);\n if (doctypeMatch) {\n advance(doctypeMatch[0].length);\n continue\n }\n\n // End tag:\n var endTagMatch = html.match(endTag);\n if (endTagMatch) {\n var curIndex = index;\n advance(endTagMatch[0].length);\n parseEndTag(endTagMatch[1], curIndex, index);\n continue\n }\n\n // Start tag:\n var startTagMatch = parseStartTag();\n if (startTagMatch) {\n handleStartTag(startTagMatch);\n if (shouldIgnoreFirstNewline(lastTag, html)) {\n advance(1);\n }\n continue\n }\n }\n\n var text = (void 0), rest = (void 0), next = (void 0);\n if (textEnd >= 0) {\n rest = html.slice(textEnd);\n while (\n !endTag.test(rest) &&\n !startTagOpen.test(rest) &&\n !comment.test(rest) &&\n !conditionalComment.test(rest)\n ) {\n // < in plain text, be forgiving and treat it as text\n next = rest.indexOf('<', 1);\n if (next < 0) { break }\n textEnd += next;\n rest = html.slice(textEnd);\n }\n text = html.substring(0, textEnd);\n advance(textEnd);\n }\n\n if (textEnd < 0) {\n text = html;\n html = '';\n }\n\n if (options.chars && text) {\n options.chars(text);\n }\n } else {\n var endTagLength = 0;\n var stackedTag = lastTag.toLowerCase();\n var reStackedTag = reCache[stackedTag] || (reCache[stackedTag] = new RegExp('([\\\\s\\\\S]*?)(</' + stackedTag + '[^>]*>)', 'i'));\n var rest$1 = html.replace(reStackedTag, function (all, text, endTag) {\n endTagLength = endTag.length;\n if (!isPlainTextElement(stackedTag) && stackedTag !== 'noscript') {\n text = text\n .replace(/<!--([\\s\\S]*?)-->/g, '$1')\n .replace(/<!\\[CDATA\\[([\\s\\S]*?)]]>/g, '$1');\n }\n if (shouldIgnoreFirstNewline(stackedTag, text)) {\n text = text.slice(1);\n }\n if (options.chars) {\n options.chars(text);\n }\n return ''\n });\n index += html.length - rest$1.length;\n html = rest$1;\n parseEndTag(stackedTag, index - endTagLength, index);\n }\n\n if (html === last) {\n options.chars && options.chars(html);\n if (false) {\n options.warn((\"Mal-formatted tag at end of template: \\\"\" + html + \"\\\"\"));\n }\n break\n }\n }\n\n // Clean up any remaining tags\n parseEndTag();\n\n function advance (n) {\n index += n;\n html = html.substring(n);\n }\n\n function parseStartTag () {\n var start = html.match(startTagOpen);\n if (start) {\n var match = {\n tagName: start[1],\n attrs: [],\n start: index\n };\n advance(start[0].length);\n var end, attr;\n while (!(end = html.match(startTagClose)) && (attr = html.match(attribute))) {\n advance(attr[0].length);\n match.attrs.push(attr);\n }\n if (end) {\n match.unarySlash = end[1];\n advance(end[0].length);\n match.end = index;\n return match\n }\n }\n }\n\n function handleStartTag (match) {\n var tagName = match.tagName;\n var unarySlash = match.unarySlash;\n\n if (expectHTML) {\n if (lastTag === 'p' && isNonPhrasingTag(tagName)) {\n parseEndTag(lastTag);\n }\n if (canBeLeftOpenTag$$1(tagName) && lastTag === tagName) {\n parseEndTag(tagName);\n }\n }\n\n var unary = isUnaryTag$$1(tagName) || !!unarySlash;\n\n var l = match.attrs.length;\n var attrs = new Array(l);\n for (var i = 0; i < l; i++) {\n var args = match.attrs[i];\n // hackish work around FF bug https://bugzilla.mozilla.org/show_bug.cgi?id=369778\n if (IS_REGEX_CAPTURING_BROKEN && args[0].indexOf('\"\"') === -1) {\n if (args[3] === '') { delete args[3]; }\n if (args[4] === '') { delete args[4]; }\n if (args[5] === '') { delete args[5]; }\n }\n var value = args[3] || args[4] || args[5] || '';\n attrs[i] = {\n name: args[1],\n value: decodeAttr(\n value,\n options.shouldDecodeNewlines\n )\n };\n }\n\n if (!unary) {\n stack.push({ tag: tagName, lowerCasedTag: tagName.toLowerCase(), attrs: attrs });\n lastTag = tagName;\n }\n\n if (options.start) {\n options.start(tagName, attrs, unary, match.start, match.end);\n }\n }\n\n function parseEndTag (tagName, start, end) {\n var pos, lowerCasedTagName;\n if (start == null) { start = index; }\n if (end == null) { end = index; }\n\n if (tagName) {\n lowerCasedTagName = tagName.toLowerCase();\n }\n\n // Find the closest opened tag of the same type\n if (tagName) {\n for (pos = stack.length - 1; pos >= 0; pos--) {\n if (stack[pos].lowerCasedTag === lowerCasedTagName) {\n break\n }\n }\n } else {\n // If no tag name is provided, clean shop\n pos = 0;\n }\n\n if (pos >= 0) {\n // Close all the open elements, up the stack\n for (var i = stack.length - 1; i >= pos; i--) {\n if (false\n ) {\n options.warn(\n (\"tag <\" + (stack[i].tag) + \"> has no matching end tag.\")\n );\n }\n if (options.end) {\n options.end(stack[i].tag, start, end);\n }\n }\n\n // Remove the open elements from the stack\n stack.length = pos;\n lastTag = pos && stack[pos - 1].tag;\n } else if (lowerCasedTagName === 'br') {\n if (options.start) {\n options.start(tagName, [], true, start, end);\n }\n } else if (lowerCasedTagName === 'p') {\n if (options.start) {\n options.start(tagName, [], false, start, end);\n }\n if (options.end) {\n options.end(tagName, start, end);\n }\n }\n }\n}\n\n/* */\n\nvar onRE = /^@|^v-on:/;\nvar dirRE = /^v-|^@|^:/;\nvar forAliasRE = /(.*?)\\s+(?:in|of)\\s+(.*)/;\nvar forIteratorRE = /\\((\\{[^}]*\\}|[^,]*),([^,]*)(?:,([^,]*))?\\)/;\n\nvar argRE = /:(.*)$/;\nvar bindRE = /^:|^v-bind:/;\nvar modifierRE = /\\.[^.]+/g;\n\nvar decodeHTMLCached = cached(he.decode);\n\n// configurable state\nvar warn$2;\nvar delimiters;\nvar transforms;\nvar preTransforms;\nvar postTransforms;\nvar platformIsPreTag;\nvar platformMustUseProp;\nvar platformGetTagNamespace;\n\n\n\nfunction createASTElement (\n tag,\n attrs,\n parent\n) {\n return {\n type: 1,\n tag: tag,\n attrsList: attrs,\n attrsMap: makeAttrsMap(attrs),\n parent: parent,\n children: []\n }\n}\n\n/**\n * Convert HTML string to AST.\n */\nfunction parse (\n template,\n options\n) {\n warn$2 = options.warn || baseWarn;\n\n platformIsPreTag = options.isPreTag || no;\n platformMustUseProp = options.mustUseProp || no;\n platformGetTagNamespace = options.getTagNamespace || no;\n\n transforms = pluckModuleFunction(options.modules, 'transformNode');\n preTransforms = pluckModuleFunction(options.modules, 'preTransformNode');\n postTransforms = pluckModuleFunction(options.modules, 'postTransformNode');\n\n delimiters = options.delimiters;\n\n var stack = [];\n var preserveWhitespace = options.preserveWhitespace !== false;\n var root;\n var currentParent;\n var inVPre = false;\n var inPre = false;\n var warned = false;\n\n function warnOnce (msg) {\n if (!warned) {\n warned = true;\n warn$2(msg);\n }\n }\n\n function endPre (element) {\n // check pre state\n if (element.pre) {\n inVPre = false;\n }\n if (platformIsPreTag(element.tag)) {\n inPre = false;\n }\n }\n\n parseHTML(template, {\n warn: warn$2,\n expectHTML: options.expectHTML,\n isUnaryTag: options.isUnaryTag,\n canBeLeftOpenTag: options.canBeLeftOpenTag,\n shouldDecodeNewlines: options.shouldDecodeNewlines,\n shouldKeepComment: options.comments,\n start: function start (tag, attrs, unary) {\n // check namespace.\n // inherit parent ns if there is one\n var ns = (currentParent && currentParent.ns) || platformGetTagNamespace(tag);\n\n // handle IE svg bug\n /* istanbul ignore if */\n if (isIE && ns === 'svg') {\n attrs = guardIESVGBug(attrs);\n }\n\n var element = createASTElement(tag, attrs, currentParent);\n if (ns) {\n element.ns = ns;\n }\n\n if (isForbiddenTag(element) && !isServerRendering()) {\n element.forbidden = true;\n \"production\" !== 'production' && warn$2(\n 'Templates should only be responsible for mapping the state to the ' +\n 'UI. Avoid placing tags with side-effects in your templates, such as ' +\n \"<\" + tag + \">\" + ', as they will not be parsed.'\n );\n }\n\n // apply pre-transforms\n for (var i = 0; i < preTransforms.length; i++) {\n element = preTransforms[i](element, options) || element;\n }\n\n if (!inVPre) {\n processPre(element);\n if (element.pre) {\n inVPre = true;\n }\n }\n if (platformIsPreTag(element.tag)) {\n inPre = true;\n }\n if (inVPre) {\n processRawAttrs(element);\n } else if (!element.processed) {\n // structural directives\n processFor(element);\n processIf(element);\n processOnce(element);\n // element-scope stuff\n processElement(element, options);\n }\n\n function checkRootConstraints (el) {\n if (false) {\n if (el.tag === 'slot' || el.tag === 'template') {\n warnOnce(\n \"Cannot use <\" + (el.tag) + \"> as component root element because it may \" +\n 'contain multiple nodes.'\n );\n }\n if (el.attrsMap.hasOwnProperty('v-for')) {\n warnOnce(\n 'Cannot use v-for on stateful component root element because ' +\n 'it renders multiple elements.'\n );\n }\n }\n }\n\n // tree management\n if (!root) {\n root = element;\n checkRootConstraints(root);\n } else if (!stack.length) {\n // allow root elements with v-if, v-else-if and v-else\n if (root.if && (element.elseif || element.else)) {\n checkRootConstraints(element);\n addIfCondition(root, {\n exp: element.elseif,\n block: element\n });\n } else if (false) {\n warnOnce(\n \"Component template should contain exactly one root element. \" +\n \"If you are using v-if on multiple elements, \" +\n \"use v-else-if to chain them instead.\"\n );\n }\n }\n if (currentParent && !element.forbidden) {\n if (element.elseif || element.else) {\n processIfConditions(element, currentParent);\n } else if (element.slotScope) { // scoped slot\n currentParent.plain = false;\n var name = element.slotTarget || '\"default\"';(currentParent.scopedSlots || (currentParent.scopedSlots = {}))[name] = element;\n } else {\n currentParent.children.push(element);\n element.parent = currentParent;\n }\n }\n if (!unary) {\n currentParent = element;\n stack.push(element);\n } else {\n endPre(element);\n }\n // apply post-transforms\n for (var i$1 = 0; i$1 < postTransforms.length; i$1++) {\n postTransforms[i$1](element, options);\n }\n },\n\n end: function end () {\n // remove trailing whitespace\n var element = stack[stack.length - 1];\n var lastNode = element.children[element.children.length - 1];\n if (lastNode && lastNode.type === 3 && lastNode.text === ' ' && !inPre) {\n element.children.pop();\n }\n // pop stack\n stack.length -= 1;\n currentParent = stack[stack.length - 1];\n endPre(element);\n },\n\n chars: function chars (text) {\n if (!currentParent) {\n if (false) {\n if (text === template) {\n warnOnce(\n 'Component template requires a root element, rather than just text.'\n );\n } else if ((text = text.trim())) {\n warnOnce(\n (\"text \\\"\" + text + \"\\\" outside root element will be ignored.\")\n );\n }\n }\n return\n }\n // IE textarea placeholder bug\n /* istanbul ignore if */\n if (isIE &&\n currentParent.tag === 'textarea' &&\n currentParent.attrsMap.placeholder === text\n ) {\n return\n }\n var children = currentParent.children;\n text = inPre || text.trim()\n ? isTextTag(currentParent) ? text : decodeHTMLCached(text)\n // only preserve whitespace if its not right after a starting tag\n : preserveWhitespace && children.length ? ' ' : '';\n if (text) {\n var expression;\n if (!inVPre && text !== ' ' && (expression = parseText(text, delimiters))) {\n children.push({\n type: 2,\n expression: expression,\n text: text\n });\n } else if (text !== ' ' || !children.length || children[children.length - 1].text !== ' ') {\n children.push({\n type: 3,\n text: text\n });\n }\n }\n },\n comment: function comment (text) {\n currentParent.children.push({\n type: 3,\n text: text,\n isComment: true\n });\n }\n });\n return root\n}\n\nfunction processPre (el) {\n if (getAndRemoveAttr(el, 'v-pre') != null) {\n el.pre = true;\n }\n}\n\nfunction processRawAttrs (el) {\n var l = el.attrsList.length;\n if (l) {\n var attrs = el.attrs = new Array(l);\n for (var i = 0; i < l; i++) {\n attrs[i] = {\n name: el.attrsList[i].name,\n value: JSON.stringify(el.attrsList[i].value)\n };\n }\n } else if (!el.pre) {\n // non root node in pre blocks with no attributes\n el.plain = true;\n }\n}\n\nfunction processElement (element, options) {\n processKey(element);\n\n // determine whether this is a plain element after\n // removing structural attributes\n element.plain = !element.key && !element.attrsList.length;\n\n processRef(element);\n processSlot(element);\n processComponent(element);\n for (var i = 0; i < transforms.length; i++) {\n element = transforms[i](element, options) || element;\n }\n processAttrs(element);\n}\n\nfunction processKey (el) {\n var exp = getBindingAttr(el, 'key');\n if (exp) {\n if (false) {\n warn$2(\"<template> cannot be keyed. Place the key on real elements instead.\");\n }\n el.key = exp;\n }\n}\n\nfunction processRef (el) {\n var ref = getBindingAttr(el, 'ref');\n if (ref) {\n el.ref = ref;\n el.refInFor = checkInFor(el);\n }\n}\n\nfunction processFor (el) {\n var exp;\n if ((exp = getAndRemoveAttr(el, 'v-for'))) {\n var inMatch = exp.match(forAliasRE);\n if (!inMatch) {\n \"production\" !== 'production' && warn$2(\n (\"Invalid v-for expression: \" + exp)\n );\n return\n }\n el.for = inMatch[2].trim();\n var alias = inMatch[1].trim();\n var iteratorMatch = alias.match(forIteratorRE);\n if (iteratorMatch) {\n el.alias = iteratorMatch[1].trim();\n el.iterator1 = iteratorMatch[2].trim();\n if (iteratorMatch[3]) {\n el.iterator2 = iteratorMatch[3].trim();\n }\n } else {\n el.alias = alias;\n }\n }\n}\n\nfunction processIf (el) {\n var exp = getAndRemoveAttr(el, 'v-if');\n if (exp) {\n el.if = exp;\n addIfCondition(el, {\n exp: exp,\n block: el\n });\n } else {\n if (getAndRemoveAttr(el, 'v-else') != null) {\n el.else = true;\n }\n var elseif = getAndRemoveAttr(el, 'v-else-if');\n if (elseif) {\n el.elseif = elseif;\n }\n }\n}\n\nfunction processIfConditions (el, parent) {\n var prev = findPrevElement(parent.children);\n if (prev && prev.if) {\n addIfCondition(prev, {\n exp: el.elseif,\n block: el\n });\n } else if (false) {\n warn$2(\n \"v-\" + (el.elseif ? ('else-if=\"' + el.elseif + '\"') : 'else') + \" \" +\n \"used on element <\" + (el.tag) + \"> without corresponding v-if.\"\n );\n }\n}\n\nfunction findPrevElement (children) {\n var i = children.length;\n while (i--) {\n if (children[i].type === 1) {\n return children[i]\n } else {\n if (false) {\n warn$2(\n \"text \\\"\" + (children[i].text.trim()) + \"\\\" between v-if and v-else(-if) \" +\n \"will be ignored.\"\n );\n }\n children.pop();\n }\n }\n}\n\nfunction addIfCondition (el, condition) {\n if (!el.ifConditions) {\n el.ifConditions = [];\n }\n el.ifConditions.push(condition);\n}\n\nfunction processOnce (el) {\n var once$$1 = getAndRemoveAttr(el, 'v-once');\n if (once$$1 != null) {\n el.once = true;\n }\n}\n\nfunction processSlot (el) {\n if (el.tag === 'slot') {\n el.slotName = getBindingAttr(el, 'name');\n if (false) {\n warn$2(\n \"`key` does not work on <slot> because slots are abstract outlets \" +\n \"and can possibly expand into multiple elements. \" +\n \"Use the key on a wrapping element instead.\"\n );\n }\n } else {\n var slotScope;\n if (el.tag === 'template') {\n slotScope = getAndRemoveAttr(el, 'scope');\n /* istanbul ignore if */\n if (false) {\n warn$2(\n \"the \\\"scope\\\" attribute for scoped slots have been deprecated and \" +\n \"replaced by \\\"slot-scope\\\" since 2.5. The new \\\"slot-scope\\\" attribute \" +\n \"can also be used on plain elements in addition to <template> to \" +\n \"denote scoped slots.\",\n true\n );\n }\n el.slotScope = slotScope || getAndRemoveAttr(el, 'slot-scope');\n } else if ((slotScope = getAndRemoveAttr(el, 'slot-scope'))) {\n el.slotScope = slotScope;\n }\n var slotTarget = getBindingAttr(el, 'slot');\n if (slotTarget) {\n el.slotTarget = slotTarget === '\"\"' ? '\"default\"' : slotTarget;\n // preserve slot as an attribute for native shadow DOM compat\n // only for non-scoped slots.\n if (!el.slotScope) {\n addAttr(el, 'slot', slotTarget);\n }\n }\n }\n}\n\nfunction processComponent (el) {\n var binding;\n if ((binding = getBindingAttr(el, 'is'))) {\n el.component = binding;\n }\n if (getAndRemoveAttr(el, 'inline-template') != null) {\n el.inlineTemplate = true;\n }\n}\n\nfunction processAttrs (el) {\n var list = el.attrsList;\n var i, l, name, rawName, value, modifiers, isProp;\n for (i = 0, l = list.length; i < l; i++) {\n name = rawName = list[i].name;\n value = list[i].value;\n if (dirRE.test(name)) {\n // mark element as dynamic\n el.hasBindings = true;\n // modifiers\n modifiers = parseModifiers(name);\n if (modifiers) {\n name = name.replace(modifierRE, '');\n }\n if (bindRE.test(name)) { // v-bind\n name = name.replace(bindRE, '');\n value = parseFilters(value);\n isProp = false;\n if (modifiers) {\n if (modifiers.prop) {\n isProp = true;\n name = camelize(name);\n if (name === 'innerHtml') { name = 'innerHTML'; }\n }\n if (modifiers.camel) {\n name = camelize(name);\n }\n if (modifiers.sync) {\n addHandler(\n el,\n (\"update:\" + (camelize(name))),\n genAssignmentCode(value, \"$event\")\n );\n }\n }\n if (isProp || (\n !el.component && platformMustUseProp(el.tag, el.attrsMap.type, name)\n )) {\n addProp(el, name, value);\n } else {\n addAttr(el, name, value);\n }\n } else if (onRE.test(name)) { // v-on\n name = name.replace(onRE, '');\n addHandler(el, name, value, modifiers, false, warn$2);\n } else { // normal directives\n name = name.replace(dirRE, '');\n // parse arg\n var argMatch = name.match(argRE);\n var arg = argMatch && argMatch[1];\n if (arg) {\n name = name.slice(0, -(arg.length + 1));\n }\n addDirective(el, name, rawName, value, arg, modifiers);\n if (false) {\n checkForAliasModel(el, value);\n }\n }\n } else {\n // literal attribute\n if (false) {\n var expression = parseText(value, delimiters);\n if (expression) {\n warn$2(\n name + \"=\\\"\" + value + \"\\\": \" +\n 'Interpolation inside attributes has been removed. ' +\n 'Use v-bind or the colon shorthand instead. For example, ' +\n 'instead of <div id=\"{{ val }}\">, use <div :id=\"val\">.'\n );\n }\n }\n addAttr(el, name, JSON.stringify(value));\n }\n }\n}\n\nfunction checkInFor (el) {\n var parent = el;\n while (parent) {\n if (parent.for !== undefined) {\n return true\n }\n parent = parent.parent;\n }\n return false\n}\n\nfunction parseModifiers (name) {\n var match = name.match(modifierRE);\n if (match) {\n var ret = {};\n match.forEach(function (m) { ret[m.slice(1)] = true; });\n return ret\n }\n}\n\nfunction makeAttrsMap (attrs) {\n var map = {};\n for (var i = 0, l = attrs.length; i < l; i++) {\n if (\n false\n ) {\n warn$2('duplicate attribute: ' + attrs[i].name);\n }\n map[attrs[i].name] = attrs[i].value;\n }\n return map\n}\n\n// for script (e.g. type=\"x/template\") or style, do not decode content\nfunction isTextTag (el) {\n return el.tag === 'script' || el.tag === 'style'\n}\n\nfunction isForbiddenTag (el) {\n return (\n el.tag === 'style' ||\n (el.tag === 'script' && (\n !el.attrsMap.type ||\n el.attrsMap.type === 'text/javascript'\n ))\n )\n}\n\nvar ieNSBug = /^xmlns:NS\\d+/;\nvar ieNSPrefix = /^NS\\d+:/;\n\n/* istanbul ignore next */\nfunction guardIESVGBug (attrs) {\n var res = [];\n for (var i = 0; i < attrs.length; i++) {\n var attr = attrs[i];\n if (!ieNSBug.test(attr.name)) {\n attr.name = attr.name.replace(ieNSPrefix, '');\n res.push(attr);\n }\n }\n return res\n}\n\nfunction checkForAliasModel (el, value) {\n var _el = el;\n while (_el) {\n if (_el.for && _el.alias === value) {\n warn$2(\n \"<\" + (el.tag) + \" v-model=\\\"\" + value + \"\\\">: \" +\n \"You are binding v-model directly to a v-for iteration alias. \" +\n \"This will not be able to modify the v-for source array because \" +\n \"writing to the alias is like modifying a function local variable. \" +\n \"Consider using an array of objects and use v-model on an object property instead.\"\n );\n }\n _el = _el.parent;\n }\n}\n\n/* */\n\n/**\n * Expand input[v-model] with dyanmic type bindings into v-if-else chains\n * Turn this:\n * <input v-model=\"data[type]\" :type=\"type\">\n * into this:\n * <input v-if=\"type === 'checkbox'\" type=\"checkbox\" v-model=\"data[type]\">\n * <input v-else-if=\"type === 'radio'\" type=\"radio\" v-model=\"data[type]\">\n * <input v-else :type=\"type\" v-model=\"data[type]\">\n */\n\nfunction preTransformNode (el, options) {\n if (el.tag === 'input') {\n var map = el.attrsMap;\n if (map['v-model'] && (map['v-bind:type'] || map[':type'])) {\n var typeBinding = getBindingAttr(el, 'type');\n var ifCondition = getAndRemoveAttr(el, 'v-if', true);\n var ifConditionExtra = ifCondition ? (\"&&(\" + ifCondition + \")\") : \"\";\n // 1. checkbox\n var branch0 = cloneASTElement(el);\n // process for on the main node\n processFor(branch0);\n addRawAttr(branch0, 'type', 'checkbox');\n processElement(branch0, options);\n branch0.processed = true; // prevent it from double-processed\n branch0.if = \"(\" + typeBinding + \")==='checkbox'\" + ifConditionExtra;\n addIfCondition(branch0, {\n exp: branch0.if,\n block: branch0\n });\n // 2. add radio else-if condition\n var branch1 = cloneASTElement(el);\n getAndRemoveAttr(branch1, 'v-for', true);\n addRawAttr(branch1, 'type', 'radio');\n processElement(branch1, options);\n addIfCondition(branch0, {\n exp: \"(\" + typeBinding + \")==='radio'\" + ifConditionExtra,\n block: branch1\n });\n // 3. other\n var branch2 = cloneASTElement(el);\n getAndRemoveAttr(branch2, 'v-for', true);\n addRawAttr(branch2, ':type', typeBinding);\n processElement(branch2, options);\n addIfCondition(branch0, {\n exp: ifCondition,\n block: branch2\n });\n return branch0\n }\n }\n}\n\nfunction cloneASTElement (el) {\n return createASTElement(el.tag, el.attrsList.slice(), el.parent)\n}\n\nfunction addRawAttr (el, name, value) {\n el.attrsMap[name] = value;\n el.attrsList.push({ name: name, value: value });\n}\n\nvar model$2 = {\n preTransformNode: preTransformNode\n};\n\nvar modules$1 = [\n klass$1,\n style$1,\n model$2\n];\n\n/* */\n\nfunction text (el, dir) {\n if (dir.value) {\n addProp(el, 'textContent', (\"_s(\" + (dir.value) + \")\"));\n }\n}\n\n/* */\n\nfunction html (el, dir) {\n if (dir.value) {\n addProp(el, 'innerHTML', (\"_s(\" + (dir.value) + \")\"));\n }\n}\n\nvar directives$1 = {\n model: model,\n text: text,\n html: html\n};\n\n/* */\n\nvar baseOptions = {\n expectHTML: true,\n modules: modules$1,\n directives: directives$1,\n isPreTag: isPreTag,\n isUnaryTag: isUnaryTag,\n mustUseProp: mustUseProp,\n canBeLeftOpenTag: canBeLeftOpenTag,\n isReservedTag: isReservedTag,\n getTagNamespace: getTagNamespace,\n staticKeys: genStaticKeys(modules$1)\n};\n\n/* */\n\nvar isStaticKey;\nvar isPlatformReservedTag;\n\nvar genStaticKeysCached = cached(genStaticKeys$1);\n\n/**\n * Goal of the optimizer: walk the generated template AST tree\n * and detect sub-trees that are purely static, i.e. parts of\n * the DOM that never needs to change.\n *\n * Once we detect these sub-trees, we can:\n *\n * 1. Hoist them into constants, so that we no longer need to\n * create fresh nodes for them on each re-render;\n * 2. Completely skip them in the patching process.\n */\nfunction optimize (root, options) {\n if (!root) { return }\n isStaticKey = genStaticKeysCached(options.staticKeys || '');\n isPlatformReservedTag = options.isReservedTag || no;\n // first pass: mark all non-static nodes.\n markStatic$1(root);\n // second pass: mark static roots.\n markStaticRoots(root, false);\n}\n\nfunction genStaticKeys$1 (keys) {\n return makeMap(\n 'type,tag,attrsList,attrsMap,plain,parent,children,attrs' +\n (keys ? ',' + keys : '')\n )\n}\n\nfunction markStatic$1 (node) {\n node.static = isStatic(node);\n if (node.type === 1) {\n // do not make component slot content static. this avoids\n // 1. components not able to mutate slot nodes\n // 2. static slot content fails for hot-reloading\n if (\n !isPlatformReservedTag(node.tag) &&\n node.tag !== 'slot' &&\n node.attrsMap['inline-template'] == null\n ) {\n return\n }\n for (var i = 0, l = node.children.length; i < l; i++) {\n var child = node.children[i];\n markStatic$1(child);\n if (!child.static) {\n node.static = false;\n }\n }\n if (node.ifConditions) {\n for (var i$1 = 1, l$1 = node.ifConditions.length; i$1 < l$1; i$1++) {\n var block = node.ifConditions[i$1].block;\n markStatic$1(block);\n if (!block.static) {\n node.static = false;\n }\n }\n }\n }\n}\n\nfunction markStaticRoots (node, isInFor) {\n if (node.type === 1) {\n if (node.static || node.once) {\n node.staticInFor = isInFor;\n }\n // For a node to qualify as a static root, it should have children that\n // are not just static text. Otherwise the cost of hoisting out will\n // outweigh the benefits and it's better off to just always render it fresh.\n if (node.static && node.children.length && !(\n node.children.length === 1 &&\n node.children[0].type === 3\n )) {\n node.staticRoot = true;\n return\n } else {\n node.staticRoot = false;\n }\n if (node.children) {\n for (var i = 0, l = node.children.length; i < l; i++) {\n markStaticRoots(node.children[i], isInFor || !!node.for);\n }\n }\n if (node.ifConditions) {\n for (var i$1 = 1, l$1 = node.ifConditions.length; i$1 < l$1; i$1++) {\n markStaticRoots(node.ifConditions[i$1].block, isInFor);\n }\n }\n }\n}\n\nfunction isStatic (node) {\n if (node.type === 2) { // expression\n return false\n }\n if (node.type === 3) { // text\n return true\n }\n return !!(node.pre || (\n !node.hasBindings && // no dynamic bindings\n !node.if && !node.for && // not v-if or v-for or v-else\n !isBuiltInTag(node.tag) && // not a built-in\n isPlatformReservedTag(node.tag) && // not a component\n !isDirectChildOfTemplateFor(node) &&\n Object.keys(node).every(isStaticKey)\n ))\n}\n\nfunction isDirectChildOfTemplateFor (node) {\n while (node.parent) {\n node = node.parent;\n if (node.tag !== 'template') {\n return false\n }\n if (node.for) {\n return true\n }\n }\n return false\n}\n\n/* */\n\nvar fnExpRE = /^\\s*([\\w$_]+|\\([^)]*?\\))\\s*=>|^function\\s*\\(/;\nvar simplePathRE = /^\\s*[A-Za-z_$][\\w$]*(?:\\.[A-Za-z_$][\\w$]*|\\['.*?']|\\[\".*?\"]|\\[\\d+]|\\[[A-Za-z_$][\\w$]*])*\\s*$/;\n\n// keyCode aliases\nvar keyCodes = {\n esc: 27,\n tab: 9,\n enter: 13,\n space: 32,\n up: 38,\n left: 37,\n right: 39,\n down: 40,\n 'delete': [8, 46]\n};\n\n// #4868: modifiers that prevent the execution of the listener\n// need to explicitly return null so that we can determine whether to remove\n// the listener for .once\nvar genGuard = function (condition) { return (\"if(\" + condition + \")return null;\"); };\n\nvar modifierCode = {\n stop: '$event.stopPropagation();',\n prevent: '$event.preventDefault();',\n self: genGuard(\"$event.target !== $event.currentTarget\"),\n ctrl: genGuard(\"!$event.ctrlKey\"),\n shift: genGuard(\"!$event.shiftKey\"),\n alt: genGuard(\"!$event.altKey\"),\n meta: genGuard(\"!$event.metaKey\"),\n left: genGuard(\"'button' in $event && $event.button !== 0\"),\n middle: genGuard(\"'button' in $event && $event.button !== 1\"),\n right: genGuard(\"'button' in $event && $event.button !== 2\")\n};\n\nfunction genHandlers (\n events,\n isNative,\n warn\n) {\n var res = isNative ? 'nativeOn:{' : 'on:{';\n for (var name in events) {\n var handler = events[name];\n // #5330: warn click.right, since right clicks do not actually fire click events.\n if (false\n ) {\n warn(\n \"Use \\\"contextmenu\\\" instead of \\\"click.right\\\" since right clicks \" +\n \"do not actually fire \\\"click\\\" events.\"\n );\n }\n res += \"\\\"\" + name + \"\\\":\" + (genHandler(name, handler)) + \",\";\n }\n return res.slice(0, -1) + '}'\n}\n\nfunction genHandler (\n name,\n handler\n) {\n if (!handler) {\n return 'function(){}'\n }\n\n if (Array.isArray(handler)) {\n return (\"[\" + (handler.map(function (handler) { return genHandler(name, handler); }).join(',')) + \"]\")\n }\n\n var isMethodPath = simplePathRE.test(handler.value);\n var isFunctionExpression = fnExpRE.test(handler.value);\n\n if (!handler.modifiers) {\n return isMethodPath || isFunctionExpression\n ? handler.value\n : (\"function($event){\" + (handler.value) + \"}\") // inline statement\n } else {\n var code = '';\n var genModifierCode = '';\n var keys = [];\n for (var key in handler.modifiers) {\n if (modifierCode[key]) {\n genModifierCode += modifierCode[key];\n // left/right\n if (keyCodes[key]) {\n keys.push(key);\n }\n } else if (key === 'exact') {\n var modifiers = (handler.modifiers);\n genModifierCode += genGuard(\n ['ctrl', 'shift', 'alt', 'meta']\n .filter(function (keyModifier) { return !modifiers[keyModifier]; })\n .map(function (keyModifier) { return (\"$event.\" + keyModifier + \"Key\"); })\n .join('||')\n );\n } else {\n keys.push(key);\n }\n }\n if (keys.length) {\n code += genKeyFilter(keys);\n }\n // Make sure modifiers like prevent and stop get executed after key filtering\n if (genModifierCode) {\n code += genModifierCode;\n }\n var handlerCode = isMethodPath\n ? handler.value + '($event)'\n : isFunctionExpression\n ? (\"(\" + (handler.value) + \")($event)\")\n : handler.value;\n return (\"function($event){\" + code + handlerCode + \"}\")\n }\n}\n\nfunction genKeyFilter (keys) {\n return (\"if(!('button' in $event)&&\" + (keys.map(genFilterCode).join('&&')) + \")return null;\")\n}\n\nfunction genFilterCode (key) {\n var keyVal = parseInt(key, 10);\n if (keyVal) {\n return (\"$event.keyCode!==\" + keyVal)\n }\n var code = keyCodes[key];\n return (\n \"_k($event.keyCode,\" +\n (JSON.stringify(key)) + \",\" +\n (JSON.stringify(code)) + \",\" +\n \"$event.key)\"\n )\n}\n\n/* */\n\nfunction on (el, dir) {\n if (false) {\n warn(\"v-on without argument does not support modifiers.\");\n }\n el.wrapListeners = function (code) { return (\"_g(\" + code + \",\" + (dir.value) + \")\"); };\n}\n\n/* */\n\nfunction bind$1 (el, dir) {\n el.wrapData = function (code) {\n return (\"_b(\" + code + \",'\" + (el.tag) + \"',\" + (dir.value) + \",\" + (dir.modifiers && dir.modifiers.prop ? 'true' : 'false') + (dir.modifiers && dir.modifiers.sync ? ',true' : '') + \")\")\n };\n}\n\n/* */\n\nvar baseDirectives = {\n on: on,\n bind: bind$1,\n cloak: noop\n};\n\n/* */\n\nvar CodegenState = function CodegenState (options) {\n this.options = options;\n this.warn = options.warn || baseWarn;\n this.transforms = pluckModuleFunction(options.modules, 'transformCode');\n this.dataGenFns = pluckModuleFunction(options.modules, 'genData');\n this.directives = extend(extend({}, baseDirectives), options.directives);\n var isReservedTag = options.isReservedTag || no;\n this.maybeComponent = function (el) { return !isReservedTag(el.tag); };\n this.onceId = 0;\n this.staticRenderFns = [];\n};\n\n\n\nfunction generate (\n ast,\n options\n) {\n var state = new CodegenState(options);\n var code = ast ? genElement(ast, state) : '_c(\"div\")';\n return {\n render: (\"with(this){return \" + code + \"}\"),\n staticRenderFns: state.staticRenderFns\n }\n}\n\nfunction genElement (el, state) {\n if (el.staticRoot && !el.staticProcessed) {\n return genStatic(el, state)\n } else if (el.once && !el.onceProcessed) {\n return genOnce(el, state)\n } else if (el.for && !el.forProcessed) {\n return genFor(el, state)\n } else if (el.if && !el.ifProcessed) {\n return genIf(el, state)\n } else if (el.tag === 'template' && !el.slotTarget) {\n return genChildren(el, state) || 'void 0'\n } else if (el.tag === 'slot') {\n return genSlot(el, state)\n } else {\n // component or element\n var code;\n if (el.component) {\n code = genComponent(el.component, el, state);\n } else {\n var data = el.plain ? undefined : genData$2(el, state);\n\n var children = el.inlineTemplate ? null : genChildren(el, state, true);\n code = \"_c('\" + (el.tag) + \"'\" + (data ? (\",\" + data) : '') + (children ? (\",\" + children) : '') + \")\";\n }\n // module transforms\n for (var i = 0; i < state.transforms.length; i++) {\n code = state.transforms[i](el, code);\n }\n return code\n }\n}\n\n// hoist static sub-trees out\nfunction genStatic (el, state) {\n el.staticProcessed = true;\n state.staticRenderFns.push((\"with(this){return \" + (genElement(el, state)) + \"}\"));\n return (\"_m(\" + (state.staticRenderFns.length - 1) + (el.staticInFor ? ',true' : '') + \")\")\n}\n\n// v-once\nfunction genOnce (el, state) {\n el.onceProcessed = true;\n if (el.if && !el.ifProcessed) {\n return genIf(el, state)\n } else if (el.staticInFor) {\n var key = '';\n var parent = el.parent;\n while (parent) {\n if (parent.for) {\n key = parent.key;\n break\n }\n parent = parent.parent;\n }\n if (!key) {\n \"production\" !== 'production' && state.warn(\n \"v-once can only be used inside v-for that is keyed. \"\n );\n return genElement(el, state)\n }\n return (\"_o(\" + (genElement(el, state)) + \",\" + (state.onceId++) + \",\" + key + \")\")\n } else {\n return genStatic(el, state)\n }\n}\n\nfunction genIf (\n el,\n state,\n altGen,\n altEmpty\n) {\n el.ifProcessed = true; // avoid recursion\n return genIfConditions(el.ifConditions.slice(), state, altGen, altEmpty)\n}\n\nfunction genIfConditions (\n conditions,\n state,\n altGen,\n altEmpty\n) {\n if (!conditions.length) {\n return altEmpty || '_e()'\n }\n\n var condition = conditions.shift();\n if (condition.exp) {\n return (\"(\" + (condition.exp) + \")?\" + (genTernaryExp(condition.block)) + \":\" + (genIfConditions(conditions, state, altGen, altEmpty)))\n } else {\n return (\"\" + (genTernaryExp(condition.block)))\n }\n\n // v-if with v-once should generate code like (a)?_m(0):_m(1)\n function genTernaryExp (el) {\n return altGen\n ? altGen(el, state)\n : el.once\n ? genOnce(el, state)\n : genElement(el, state)\n }\n}\n\nfunction genFor (\n el,\n state,\n altGen,\n altHelper\n) {\n var exp = el.for;\n var alias = el.alias;\n var iterator1 = el.iterator1 ? (\",\" + (el.iterator1)) : '';\n var iterator2 = el.iterator2 ? (\",\" + (el.iterator2)) : '';\n\n if (false\n ) {\n state.warn(\n \"<\" + (el.tag) + \" v-for=\\\"\" + alias + \" in \" + exp + \"\\\">: component lists rendered with \" +\n \"v-for should have explicit keys. \" +\n \"See https://vuejs.org/guide/list.html#key for more info.\",\n true /* tip */\n );\n }\n\n el.forProcessed = true; // avoid recursion\n return (altHelper || '_l') + \"((\" + exp + \"),\" +\n \"function(\" + alias + iterator1 + iterator2 + \"){\" +\n \"return \" + ((altGen || genElement)(el, state)) +\n '})'\n}\n\nfunction genData$2 (el, state) {\n var data = '{';\n\n // directives first.\n // directives may mutate the el's other properties before they are generated.\n var dirs = genDirectives(el, state);\n if (dirs) { data += dirs + ','; }\n\n // key\n if (el.key) {\n data += \"key:\" + (el.key) + \",\";\n }\n // ref\n if (el.ref) {\n data += \"ref:\" + (el.ref) + \",\";\n }\n if (el.refInFor) {\n data += \"refInFor:true,\";\n }\n // pre\n if (el.pre) {\n data += \"pre:true,\";\n }\n // record original tag name for components using \"is\" attribute\n if (el.component) {\n data += \"tag:\\\"\" + (el.tag) + \"\\\",\";\n }\n // module data generation functions\n for (var i = 0; i < state.dataGenFns.length; i++) {\n data += state.dataGenFns[i](el);\n }\n // attributes\n if (el.attrs) {\n data += \"attrs:{\" + (genProps(el.attrs)) + \"},\";\n }\n // DOM props\n if (el.props) {\n data += \"domProps:{\" + (genProps(el.props)) + \"},\";\n }\n // event handlers\n if (el.events) {\n data += (genHandlers(el.events, false, state.warn)) + \",\";\n }\n if (el.nativeEvents) {\n data += (genHandlers(el.nativeEvents, true, state.warn)) + \",\";\n }\n // slot target\n // only for non-scoped slots\n if (el.slotTarget && !el.slotScope) {\n data += \"slot:\" + (el.slotTarget) + \",\";\n }\n // scoped slots\n if (el.scopedSlots) {\n data += (genScopedSlots(el.scopedSlots, state)) + \",\";\n }\n // component v-model\n if (el.model) {\n data += \"model:{value:\" + (el.model.value) + \",callback:\" + (el.model.callback) + \",expression:\" + (el.model.expression) + \"},\";\n }\n // inline-template\n if (el.inlineTemplate) {\n var inlineTemplate = genInlineTemplate(el, state);\n if (inlineTemplate) {\n data += inlineTemplate + \",\";\n }\n }\n data = data.replace(/,$/, '') + '}';\n // v-bind data wrap\n if (el.wrapData) {\n data = el.wrapData(data);\n }\n // v-on data wrap\n if (el.wrapListeners) {\n data = el.wrapListeners(data);\n }\n return data\n}\n\nfunction genDirectives (el, state) {\n var dirs = el.directives;\n if (!dirs) { return }\n var res = 'directives:[';\n var hasRuntime = false;\n var i, l, dir, needRuntime;\n for (i = 0, l = dirs.length; i < l; i++) {\n dir = dirs[i];\n needRuntime = true;\n var gen = state.directives[dir.name];\n if (gen) {\n // compile-time directive that manipulates AST.\n // returns true if it also needs a runtime counterpart.\n needRuntime = !!gen(el, dir, state.warn);\n }\n if (needRuntime) {\n hasRuntime = true;\n res += \"{name:\\\"\" + (dir.name) + \"\\\",rawName:\\\"\" + (dir.rawName) + \"\\\"\" + (dir.value ? (\",value:(\" + (dir.value) + \"),expression:\" + (JSON.stringify(dir.value))) : '') + (dir.arg ? (\",arg:\\\"\" + (dir.arg) + \"\\\"\") : '') + (dir.modifiers ? (\",modifiers:\" + (JSON.stringify(dir.modifiers))) : '') + \"},\";\n }\n }\n if (hasRuntime) {\n return res.slice(0, -1) + ']'\n }\n}\n\nfunction genInlineTemplate (el, state) {\n var ast = el.children[0];\n if (false) {\n state.warn('Inline-template components must have exactly one child element.');\n }\n if (ast.type === 1) {\n var inlineRenderFns = generate(ast, state.options);\n return (\"inlineTemplate:{render:function(){\" + (inlineRenderFns.render) + \"},staticRenderFns:[\" + (inlineRenderFns.staticRenderFns.map(function (code) { return (\"function(){\" + code + \"}\"); }).join(',')) + \"]}\")\n }\n}\n\nfunction genScopedSlots (\n slots,\n state\n) {\n return (\"scopedSlots:_u([\" + (Object.keys(slots).map(function (key) {\n return genScopedSlot(key, slots[key], state)\n }).join(',')) + \"])\")\n}\n\nfunction genScopedSlot (\n key,\n el,\n state\n) {\n if (el.for && !el.forProcessed) {\n return genForScopedSlot(key, el, state)\n }\n var fn = \"function(\" + (String(el.slotScope)) + \"){\" +\n \"return \" + (el.tag === 'template'\n ? el.if\n ? ((el.if) + \"?\" + (genChildren(el, state) || 'undefined') + \":undefined\")\n : genChildren(el, state) || 'undefined'\n : genElement(el, state)) + \"}\";\n return (\"{key:\" + key + \",fn:\" + fn + \"}\")\n}\n\nfunction genForScopedSlot (\n key,\n el,\n state\n) {\n var exp = el.for;\n var alias = el.alias;\n var iterator1 = el.iterator1 ? (\",\" + (el.iterator1)) : '';\n var iterator2 = el.iterator2 ? (\",\" + (el.iterator2)) : '';\n el.forProcessed = true; // avoid recursion\n return \"_l((\" + exp + \"),\" +\n \"function(\" + alias + iterator1 + iterator2 + \"){\" +\n \"return \" + (genScopedSlot(key, el, state)) +\n '})'\n}\n\nfunction genChildren (\n el,\n state,\n checkSkip,\n altGenElement,\n altGenNode\n) {\n var children = el.children;\n if (children.length) {\n var el$1 = children[0];\n // optimize single v-for\n if (children.length === 1 &&\n el$1.for &&\n el$1.tag !== 'template' &&\n el$1.tag !== 'slot'\n ) {\n return (altGenElement || genElement)(el$1, state)\n }\n var normalizationType = checkSkip\n ? getNormalizationType(children, state.maybeComponent)\n : 0;\n var gen = altGenNode || genNode;\n return (\"[\" + (children.map(function (c) { return gen(c, state); }).join(',')) + \"]\" + (normalizationType ? (\",\" + normalizationType) : ''))\n }\n}\n\n// determine the normalization needed for the children array.\n// 0: no normalization needed\n// 1: simple normalization needed (possible 1-level deep nested array)\n// 2: full normalization needed\nfunction getNormalizationType (\n children,\n maybeComponent\n) {\n var res = 0;\n for (var i = 0; i < children.length; i++) {\n var el = children[i];\n if (el.type !== 1) {\n continue\n }\n if (needsNormalization(el) ||\n (el.ifConditions && el.ifConditions.some(function (c) { return needsNormalization(c.block); }))) {\n res = 2;\n break\n }\n if (maybeComponent(el) ||\n (el.ifConditions && el.ifConditions.some(function (c) { return maybeComponent(c.block); }))) {\n res = 1;\n }\n }\n return res\n}\n\nfunction needsNormalization (el) {\n return el.for !== undefined || el.tag === 'template' || el.tag === 'slot'\n}\n\nfunction genNode (node, state) {\n if (node.type === 1) {\n return genElement(node, state)\n } if (node.type === 3 && node.isComment) {\n return genComment(node)\n } else {\n return genText(node)\n }\n}\n\nfunction genText (text) {\n return (\"_v(\" + (text.type === 2\n ? text.expression // no need for () because already wrapped in _s()\n : transformSpecialNewlines(JSON.stringify(text.text))) + \")\")\n}\n\nfunction genComment (comment) {\n return (\"_e(\" + (JSON.stringify(comment.text)) + \")\")\n}\n\nfunction genSlot (el, state) {\n var slotName = el.slotName || '\"default\"';\n var children = genChildren(el, state);\n var res = \"_t(\" + slotName + (children ? (\",\" + children) : '');\n var attrs = el.attrs && (\"{\" + (el.attrs.map(function (a) { return ((camelize(a.name)) + \":\" + (a.value)); }).join(',')) + \"}\");\n var bind$$1 = el.attrsMap['v-bind'];\n if ((attrs || bind$$1) && !children) {\n res += \",null\";\n }\n if (attrs) {\n res += \",\" + attrs;\n }\n if (bind$$1) {\n res += (attrs ? '' : ',null') + \",\" + bind$$1;\n }\n return res + ')'\n}\n\n// componentName is el.component, take it as argument to shun flow's pessimistic refinement\nfunction genComponent (\n componentName,\n el,\n state\n) {\n var children = el.inlineTemplate ? null : genChildren(el, state, true);\n return (\"_c(\" + componentName + \",\" + (genData$2(el, state)) + (children ? (\",\" + children) : '') + \")\")\n}\n\nfunction genProps (props) {\n var res = '';\n for (var i = 0; i < props.length; i++) {\n var prop = props[i];\n res += \"\\\"\" + (prop.name) + \"\\\":\" + (transformSpecialNewlines(prop.value)) + \",\";\n }\n return res.slice(0, -1)\n}\n\n// #3895, #4268\nfunction transformSpecialNewlines (text) {\n return text\n .replace(/\\u2028/g, '\\\\u2028')\n .replace(/\\u2029/g, '\\\\u2029')\n}\n\n/* */\n\n// these keywords should not appear inside expressions, but operators like\n// typeof, instanceof and in are allowed\nvar prohibitedKeywordRE = new RegExp('\\\\b' + (\n 'do,if,for,let,new,try,var,case,else,with,await,break,catch,class,const,' +\n 'super,throw,while,yield,delete,export,import,return,switch,default,' +\n 'extends,finally,continue,debugger,function,arguments'\n).split(',').join('\\\\b|\\\\b') + '\\\\b');\n\n// these unary operators should not be used as property/method names\nvar unaryOperatorsRE = new RegExp('\\\\b' + (\n 'delete,typeof,void'\n).split(',').join('\\\\s*\\\\([^\\\\)]*\\\\)|\\\\b') + '\\\\s*\\\\([^\\\\)]*\\\\)');\n\n// check valid identifier for v-for\nvar identRE = /[A-Za-z_$][\\w$]*/;\n\n// strip strings in expressions\nvar stripStringRE = /'(?:[^'\\\\]|\\\\.)*'|\"(?:[^\"\\\\]|\\\\.)*\"|`(?:[^`\\\\]|\\\\.)*\\$\\{|\\}(?:[^`\\\\]|\\\\.)*`|`(?:[^`\\\\]|\\\\.)*`/g;\n\n// detect problematic expressions in a template\nfunction detectErrors (ast) {\n var errors = [];\n if (ast) {\n checkNode(ast, errors);\n }\n return errors\n}\n\nfunction checkNode (node, errors) {\n if (node.type === 1) {\n for (var name in node.attrsMap) {\n if (dirRE.test(name)) {\n var value = node.attrsMap[name];\n if (value) {\n if (name === 'v-for') {\n checkFor(node, (\"v-for=\\\"\" + value + \"\\\"\"), errors);\n } else if (onRE.test(name)) {\n checkEvent(value, (name + \"=\\\"\" + value + \"\\\"\"), errors);\n } else {\n checkExpression(value, (name + \"=\\\"\" + value + \"\\\"\"), errors);\n }\n }\n }\n }\n if (node.children) {\n for (var i = 0; i < node.children.length; i++) {\n checkNode(node.children[i], errors);\n }\n }\n } else if (node.type === 2) {\n checkExpression(node.expression, node.text, errors);\n }\n}\n\nfunction checkEvent (exp, text, errors) {\n var stipped = exp.replace(stripStringRE, '');\n var keywordMatch = stipped.match(unaryOperatorsRE);\n if (keywordMatch && stipped.charAt(keywordMatch.index - 1) !== '$') {\n errors.push(\n \"avoid using JavaScript unary operator as property name: \" +\n \"\\\"\" + (keywordMatch[0]) + \"\\\" in expression \" + (text.trim())\n );\n }\n checkExpression(exp, text, errors);\n}\n\nfunction checkFor (node, text, errors) {\n checkExpression(node.for || '', text, errors);\n checkIdentifier(node.alias, 'v-for alias', text, errors);\n checkIdentifier(node.iterator1, 'v-for iterator', text, errors);\n checkIdentifier(node.iterator2, 'v-for iterator', text, errors);\n}\n\nfunction checkIdentifier (ident, type, text, errors) {\n if (typeof ident === 'string' && !identRE.test(ident)) {\n errors.push((\"invalid \" + type + \" \\\"\" + ident + \"\\\" in expression: \" + (text.trim())));\n }\n}\n\nfunction checkExpression (exp, text, errors) {\n try {\n new Function((\"return \" + exp));\n } catch (e) {\n var keywordMatch = exp.replace(stripStringRE, '').match(prohibitedKeywordRE);\n if (keywordMatch) {\n errors.push(\n \"avoid using JavaScript keyword as property name: \" +\n \"\\\"\" + (keywordMatch[0]) + \"\\\"\\n Raw expression: \" + (text.trim())\n );\n } else {\n errors.push(\n \"invalid expression: \" + (e.message) + \" in\\n\\n\" +\n \" \" + exp + \"\\n\\n\" +\n \" Raw expression: \" + (text.trim()) + \"\\n\"\n );\n }\n }\n}\n\n/* */\n\nfunction createFunction (code, errors) {\n try {\n return new Function(code)\n } catch (err) {\n errors.push({ err: err, code: code });\n return noop\n }\n}\n\nfunction createCompileToFunctionFn (compile) {\n var cache = Object.create(null);\n\n return function compileToFunctions (\n template,\n options,\n vm\n ) {\n options = extend({}, options);\n var warn$$1 = options.warn || warn;\n delete options.warn;\n\n /* istanbul ignore if */\n if (false) {\n // detect possible CSP restriction\n try {\n new Function('return 1');\n } catch (e) {\n if (e.toString().match(/unsafe-eval|CSP/)) {\n warn$$1(\n 'It seems you are using the standalone build of Vue.js in an ' +\n 'environment with Content Security Policy that prohibits unsafe-eval. ' +\n 'The template compiler cannot work in this environment. Consider ' +\n 'relaxing the policy to allow unsafe-eval or pre-compiling your ' +\n 'templates into render functions.'\n );\n }\n }\n }\n\n // check cache\n var key = options.delimiters\n ? String(options.delimiters) + template\n : template;\n if (cache[key]) {\n return cache[key]\n }\n\n // compile\n var compiled = compile(template, options);\n\n // check compilation errors/tips\n if (false) {\n if (compiled.errors && compiled.errors.length) {\n warn$$1(\n \"Error compiling template:\\n\\n\" + template + \"\\n\\n\" +\n compiled.errors.map(function (e) { return (\"- \" + e); }).join('\\n') + '\\n',\n vm\n );\n }\n if (compiled.tips && compiled.tips.length) {\n compiled.tips.forEach(function (msg) { return tip(msg, vm); });\n }\n }\n\n // turn code into functions\n var res = {};\n var fnGenErrors = [];\n res.render = createFunction(compiled.render, fnGenErrors);\n res.staticRenderFns = compiled.staticRenderFns.map(function (code) {\n return createFunction(code, fnGenErrors)\n });\n\n // check function generation errors.\n // this should only happen if there is a bug in the compiler itself.\n // mostly for codegen development use\n /* istanbul ignore if */\n if (false) {\n if ((!compiled.errors || !compiled.errors.length) && fnGenErrors.length) {\n warn$$1(\n \"Failed to generate render function:\\n\\n\" +\n fnGenErrors.map(function (ref) {\n var err = ref.err;\n var code = ref.code;\n\n return ((err.toString()) + \" in\\n\\n\" + code + \"\\n\");\n }).join('\\n'),\n vm\n );\n }\n }\n\n return (cache[key] = res)\n }\n}\n\n/* */\n\nfunction createCompilerCreator (baseCompile) {\n return function createCompiler (baseOptions) {\n function compile (\n template,\n options\n ) {\n var finalOptions = Object.create(baseOptions);\n var errors = [];\n var tips = [];\n finalOptions.warn = function (msg, tip) {\n (tip ? tips : errors).push(msg);\n };\n\n if (options) {\n // merge custom modules\n if (options.modules) {\n finalOptions.modules =\n (baseOptions.modules || []).concat(options.modules);\n }\n // merge custom directives\n if (options.directives) {\n finalOptions.directives = extend(\n Object.create(baseOptions.directives),\n options.directives\n );\n }\n // copy other options\n for (var key in options) {\n if (key !== 'modules' && key !== 'directives') {\n finalOptions[key] = options[key];\n }\n }\n }\n\n var compiled = baseCompile(template, finalOptions);\n if (false) {\n errors.push.apply(errors, detectErrors(compiled.ast));\n }\n compiled.errors = errors;\n compiled.tips = tips;\n return compiled\n }\n\n return {\n compile: compile,\n compileToFunctions: createCompileToFunctionFn(compile)\n }\n }\n}\n\n/* */\n\n// `createCompilerCreator` allows creating compilers that use alternative\n// parser/optimizer/codegen, e.g the SSR optimizing compiler.\n// Here we just export a default compiler using the default parts.\nvar createCompiler = createCompilerCreator(function baseCompile (\n template,\n options\n) {\n var ast = parse(template.trim(), options);\n optimize(ast, options);\n var code = generate(ast, options);\n return {\n ast: ast,\n render: code.render,\n staticRenderFns: code.staticRenderFns\n }\n});\n\n/* */\n\nvar ref$1 = createCompiler(baseOptions);\nvar compileToFunctions = ref$1.compileToFunctions;\n\n/* */\n\nvar idToTemplate = cached(function (id) {\n var el = query(id);\n return el && el.innerHTML\n});\n\nvar mount = Vue$3.prototype.$mount;\nVue$3.prototype.$mount = function (\n el,\n hydrating\n) {\n el = el && query(el);\n\n /* istanbul ignore if */\n if (el === document.body || el === document.documentElement) {\n \"production\" !== 'production' && warn(\n \"Do not mount Vue to <html> or <body> - mount to normal elements instead.\"\n );\n return this\n }\n\n var options = this.$options;\n // resolve template/el and convert to render function\n if (!options.render) {\n var template = options.template;\n if (template) {\n if (typeof template === 'string') {\n if (template.charAt(0) === '#') {\n template = idToTemplate(template);\n /* istanbul ignore if */\n if (false) {\n warn(\n (\"Template element not found or is empty: \" + (options.template)),\n this\n );\n }\n }\n } else if (template.nodeType) {\n template = template.innerHTML;\n } else {\n if (false) {\n warn('invalid template option:' + template, this);\n }\n return this\n }\n } else if (el) {\n template = getOuterHTML(el);\n }\n if (template) {\n /* istanbul ignore if */\n if (false) {\n mark('compile');\n }\n\n var ref = compileToFunctions(template, {\n shouldDecodeNewlines: shouldDecodeNewlines,\n delimiters: options.delimiters,\n comments: options.comments\n }, this);\n var render = ref.render;\n var staticRenderFns = ref.staticRenderFns;\n options.render = render;\n options.staticRenderFns = staticRenderFns;\n\n /* istanbul ignore if */\n if (false) {\n mark('compile end');\n measure((\"vue \" + (this._name) + \" compile\"), 'compile', 'compile end');\n }\n }\n }\n return mount.call(this, el, hydrating)\n};\n\n/**\n * Get outerHTML of elements, taking care\n * of SVG elements in IE as well.\n */\nfunction getOuterHTML (el) {\n if (el.outerHTML) {\n return el.outerHTML\n } else {\n var container = document.createElement('div');\n container.appendChild(el.cloneNode(true));\n return container.innerHTML\n }\n}\n\nVue$3.compile = compileToFunctions;\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Vue$3);\n\n/* WEBPACK VAR INJECTION */}.call(__webpack_exports__, __webpack_require__(0), __webpack_require__(4).setImmediate))\n\n/***/ }),\n/* 4 */\n/***/ (function(module, exports, __webpack_require__) {\n\nvar apply = Function.prototype.apply;\n\n// DOM APIs, for completeness\n\nexports.setTimeout = function() {\n return new Timeout(apply.call(setTimeout, window, arguments), clearTimeout);\n};\nexports.setInterval = function() {\n return new Timeout(apply.call(setInterval, window, arguments), clearInterval);\n};\nexports.clearTimeout =\nexports.clearInterval = function(timeout) {\n if (timeout) {\n timeout.close();\n }\n};\n\nfunction Timeout(id, clearFn) {\n this._id = id;\n this._clearFn = clearFn;\n}\nTimeout.prototype.unref = Timeout.prototype.ref = function() {};\nTimeout.prototype.close = function() {\n this._clearFn.call(window, this._id);\n};\n\n// Does not start the time, just sets up the members needed.\nexports.enroll = function(item, msecs) {\n clearTimeout(item._idleTimeoutId);\n item._idleTimeout = msecs;\n};\n\nexports.unenroll = function(item) {\n clearTimeout(item._idleTimeoutId);\n item._idleTimeout = -1;\n};\n\nexports._unrefActive = exports.active = function(item) {\n clearTimeout(item._idleTimeoutId);\n\n var msecs = item._idleTimeout;\n if (msecs >= 0) {\n item._idleTimeoutId = setTimeout(function onTimeout() {\n if (item._onTimeout)\n item._onTimeout();\n }, msecs);\n }\n};\n\n// setimmediate attaches itself to the global object\n__webpack_require__(5);\nexports.setImmediate = setImmediate;\nexports.clearImmediate = clearImmediate;\n\n\n/***/ }),\n/* 5 */\n/***/ (function(module, exports, __webpack_require__) {\n\n/* WEBPACK VAR INJECTION */(function(global, process) {(function (global, undefined) {\n \"use strict\";\n\n if (global.setImmediate) {\n return;\n }\n\n var nextHandle = 1; // Spec says greater than zero\n var tasksByHandle = {};\n var currentlyRunningATask = false;\n var doc = global.document;\n var registerImmediate;\n\n function setImmediate(callback) {\n // Callback can either be a function or a string\n if (typeof callback !== \"function\") {\n callback = new Function(\"\" + callback);\n }\n // Copy function arguments\n var args = new Array(arguments.length - 1);\n for (var i = 0; i < args.length; i++) {\n args[i] = arguments[i + 1];\n }\n // Store and register the task\n var task = { callback: callback, args: args };\n tasksByHandle[nextHandle] = task;\n registerImmediate(nextHandle);\n return nextHandle++;\n }\n\n function clearImmediate(handle) {\n delete tasksByHandle[handle];\n }\n\n function run(task) {\n var callback = task.callback;\n var args = task.args;\n switch (args.length) {\n case 0:\n callback();\n break;\n case 1:\n callback(args[0]);\n break;\n case 2:\n callback(args[0], args[1]);\n break;\n case 3:\n callback(args[0], args[1], args[2]);\n break;\n default:\n callback.apply(undefined, args);\n break;\n }\n }\n\n function runIfPresent(handle) {\n // From the spec: \"Wait until any invocations of this algorithm started before this one have completed.\"\n // So if we're currently running a task, we'll need to delay this invocation.\n if (currentlyRunningATask) {\n // Delay by doing a setTimeout. setImmediate was tried instead, but in Firefox 7 it generated a\n // \"too much recursion\" error.\n setTimeout(runIfPresent, 0, handle);\n } else {\n var task = tasksByHandle[handle];\n if (task) {\n currentlyRunningATask = true;\n try {\n run(task);\n } finally {\n clearImmediate(handle);\n currentlyRunningATask = false;\n }\n }\n }\n }\n\n function installNextTickImplementation() {\n registerImmediate = function(handle) {\n process.nextTick(function () { runIfPresent(handle); });\n };\n }\n\n function canUsePostMessage() {\n // The test against `importScripts` prevents this implementation from being installed inside a web worker,\n // where `global.postMessage` means something completely different and can't be used for this purpose.\n if (global.postMessage && !global.importScripts) {\n var postMessageIsAsynchronous = true;\n var oldOnMessage = global.onmessage;\n global.onmessage = function() {\n postMessageIsAsynchronous = false;\n };\n global.postMessage(\"\", \"*\");\n global.onmessage = oldOnMessage;\n return postMessageIsAsynchronous;\n }\n }\n\n function installPostMessageImplementation() {\n // Installs an event handler on `global` for the `message` event: see\n // * https://developer.mozilla.org/en/DOM/window.postMessage\n // * http://www.whatwg.org/specs/web-apps/current-work/multipage/comms.html#crossDocumentMessages\n\n var messagePrefix = \"setImmediate$\" + Math.random() + \"$\";\n var onGlobalMessage = function(event) {\n if (event.source === global &&\n typeof event.data === \"string\" &&\n event.data.indexOf(messagePrefix) === 0) {\n runIfPresent(+event.data.slice(messagePrefix.length));\n }\n };\n\n if (global.addEventListener) {\n global.addEventListener(\"message\", onGlobalMessage, false);\n } else {\n global.attachEvent(\"onmessage\", onGlobalMessage);\n }\n\n registerImmediate = function(handle) {\n global.postMessage(messagePrefix + handle, \"*\");\n };\n }\n\n function installMessageChannelImplementation() {\n var channel = new MessageChannel();\n channel.port1.onmessage = function(event) {\n var handle = event.data;\n runIfPresent(handle);\n };\n\n registerImmediate = function(handle) {\n channel.port2.postMessage(handle);\n };\n }\n\n function installReadyStateChangeImplementation() {\n var html = doc.documentElement;\n registerImmediate = function(handle) {\n // Create a <script> element; its readystatechange event will be fired asynchronously once it is inserted\n // into the document. Do so, thus queuing up the task. Remember to clean up once it's been called.\n var script = doc.createElement(\"script\");\n script.onreadystatechange = function () {\n runIfPresent(handle);\n script.onreadystatechange = null;\n html.removeChild(script);\n script = null;\n };\n html.appendChild(script);\n };\n }\n\n function installSetTimeoutImplementation() {\n registerImmediate = function(handle) {\n setTimeout(runIfPresent, 0, handle);\n };\n }\n\n // If supported, we should attach to the prototype of global, since that is where setTimeout et al. live.\n var attachTo = Object.getPrototypeOf && Object.getPrototypeOf(global);\n attachTo = attachTo && attachTo.setTimeout ? attachTo : global;\n\n // Don't get fooled by e.g. browserify environments.\n if ({}.toString.call(global.process) === \"[object process]\") {\n // For Node.js before 0.9\n installNextTickImplementation();\n\n } else if (canUsePostMessage()) {\n // For non-IE10 modern browsers\n installPostMessageImplementation();\n\n } else if (global.MessageChannel) {\n // For web workers, where supported\n installMessageChannelImplementation();\n\n } else if (doc && \"onreadystatechange\" in doc.createElement(\"script\")) {\n // For IE 6–8\n installReadyStateChangeImplementation();\n\n } else {\n // For older browsers\n installSetTimeoutImplementation();\n }\n\n attachTo.setImmediate = setImmediate;\n attachTo.clearImmediate = clearImmediate;\n}(typeof self === \"undefined\" ? typeof global === \"undefined\" ? this : global : self));\n\n/* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(0), __webpack_require__(6)))\n\n/***/ }),\n/* 6 */\n/***/ (function(module, exports) {\n\n// shim for using process in browser\nvar process = module.exports = {};\n\n// cached from whatever global is present so that test runners that stub it\n// don't break things. But we need to wrap it in a try catch in case it is\n// wrapped in strict mode code which doesn't define any globals. It's inside a\n// function because try/catches deoptimize in certain engines.\n\nvar cachedSetTimeout;\nvar cachedClearTimeout;\n\nfunction defaultSetTimout() {\n throw new Error('setTimeout has not been defined');\n}\nfunction defaultClearTimeout () {\n throw new Error('clearTimeout has not been defined');\n}\n(function () {\n try {\n if (typeof setTimeout === 'function') {\n cachedSetTimeout = setTimeout;\n } else {\n cachedSetTimeout = defaultSetTimout;\n }\n } catch (e) {\n cachedSetTimeout = defaultSetTimout;\n }\n try {\n if (typeof clearTimeout === 'function') {\n cachedClearTimeout = clearTimeout;\n } else {\n cachedClearTimeout = defaultClearTimeout;\n }\n } catch (e) {\n cachedClearTimeout = defaultClearTimeout;\n }\n} ())\nfunction runTimeout(fun) {\n if (cachedSetTimeout === setTimeout) {\n //normal enviroments in sane situations\n return setTimeout(fun, 0);\n }\n // if setTimeout wasn't available but was latter defined\n if ((cachedSetTimeout === defaultSetTimout || !cachedSetTimeout) && setTimeout) {\n cachedSetTimeout = setTimeout;\n return setTimeout(fun, 0);\n }\n try {\n // when when somebody has screwed with setTimeout but no I.E. maddness\n return cachedSetTimeout(fun, 0);\n } catch(e){\n try {\n // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally\n return cachedSetTimeout.call(null, fun, 0);\n } catch(e){\n // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error\n return cachedSetTimeout.call(this, fun, 0);\n }\n }\n\n\n}\nfunction runClearTimeout(marker) {\n if (cachedClearTimeout === clearTimeout) {\n //normal enviroments in sane situations\n return clearTimeout(marker);\n }\n // if clearTimeout wasn't available but was latter defined\n if ((cachedClearTimeout === defaultClearTimeout || !cachedClearTimeout) && clearTimeout) {\n cachedClearTimeout = clearTimeout;\n return clearTimeout(marker);\n }\n try {\n // when when somebody has screwed with setTimeout but no I.E. maddness\n return cachedClearTimeout(marker);\n } catch (e){\n try {\n // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally\n return cachedClearTimeout.call(null, marker);\n } catch (e){\n // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error.\n // Some versions of I.E. have different rules for clearTimeout vs setTimeout\n return cachedClearTimeout.call(this, marker);\n }\n }\n\n\n\n}\nvar queue = [];\nvar draining = false;\nvar currentQueue;\nvar queueIndex = -1;\n\nfunction cleanUpNextTick() {\n if (!draining || !currentQueue) {\n return;\n }\n draining = false;\n if (currentQueue.length) {\n queue = currentQueue.concat(queue);\n } else {\n queueIndex = -1;\n }\n if (queue.length) {\n drainQueue();\n }\n}\n\nfunction drainQueue() {\n if (draining) {\n return;\n }\n var timeout = runTimeout(cleanUpNextTick);\n draining = true;\n\n var len = queue.length;\n while(len) {\n currentQueue = queue;\n queue = [];\n while (++queueIndex < len) {\n if (currentQueue) {\n currentQueue[queueIndex].run();\n }\n }\n queueIndex = -1;\n len = queue.length;\n }\n currentQueue = null;\n draining = false;\n runClearTimeout(timeout);\n}\n\nprocess.nextTick = function (fun) {\n var args = new Array(arguments.length - 1);\n if (arguments.length > 1) {\n for (var i = 1; i < arguments.length; i++) {\n args[i - 1] = arguments[i];\n }\n }\n queue.push(new Item(fun, args));\n if (queue.length === 1 && !draining) {\n runTimeout(drainQueue);\n }\n};\n\n// v8 likes predictible objects\nfunction Item(fun, array) {\n this.fun = fun;\n this.array = array;\n}\nItem.prototype.run = function () {\n this.fun.apply(null, this.array);\n};\nprocess.title = 'browser';\nprocess.browser = true;\nprocess.env = {};\nprocess.argv = [];\nprocess.version = ''; // empty string to avoid regexp issues\nprocess.versions = {};\n\nfunction noop() {}\n\nprocess.on = noop;\nprocess.addListener = noop;\nprocess.once = noop;\nprocess.off = noop;\nprocess.removeListener = noop;\nprocess.removeAllListeners = noop;\nprocess.emit = noop;\nprocess.prependListener = noop;\nprocess.prependOnceListener = noop;\n\nprocess.listeners = function (name) { return [] }\n\nprocess.binding = function (name) {\n throw new Error('process.binding is not supported');\n};\n\nprocess.cwd = function () { return '/' };\nprocess.chdir = function (dir) {\n throw new Error('process.chdir is not supported');\n};\nprocess.umask = function() { return 0; };\n\n\n/***/ }),\n/* 7 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__babel_loader_node_modules_vue_loader_lib_selector_type_script_index_0_Geshem_vue__ = __webpack_require__(14);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__node_modules_vue_loader_lib_template_compiler_index_id_data_v_7d220ade_hasScoped_false_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_Geshem_vue__ = __webpack_require__(16);\nfunction injectStyle (ssrContext) {\n __webpack_require__(8)\n}\nvar normalizeComponent = __webpack_require__(13)\n/* script */\n\n/* template */\n\n/* template functional */\n var __vue_template_functional__ = false\n/* styles */\nvar __vue_styles__ = injectStyle\n/* scopeId */\nvar __vue_scopeId__ = null\n/* moduleIdentifier (server only) */\nvar __vue_module_identifier__ = null\nvar Component = normalizeComponent(\n __WEBPACK_IMPORTED_MODULE_0__babel_loader_node_modules_vue_loader_lib_selector_type_script_index_0_Geshem_vue__[\"a\" /* default */],\n __WEBPACK_IMPORTED_MODULE_1__node_modules_vue_loader_lib_template_compiler_index_id_data_v_7d220ade_hasScoped_false_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_Geshem_vue__[\"a\" /* default */],\n __vue_template_functional__,\n __vue_styles__,\n __vue_scopeId__,\n __vue_module_identifier__\n)\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Component.exports);\n\n\n/***/ }),\n/* 8 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// style-loader: Adds some css to the DOM by adding a <style> tag\n\n// load the styles\nvar content = __webpack_require__(9);\nif(typeof content === 'string') content = [[module.i, content, '']];\nif(content.locals) module.exports = content.locals;\n// add the styles to the DOM\nvar update = __webpack_require__(11)(\"1cc1a7d4\", content, true);\n\n/***/ }),\n/* 9 */\n/***/ (function(module, exports, __webpack_require__) {\n\nexports = module.exports = __webpack_require__(10)(undefined);\n// imports\n\n\n// module\nexports.push([module.i, \"#geshem #datetime{position:absolute;margin:20px 0 0 20px;color:#fff;font-family:monospace}#geshem #datetime #date{font-size:1.4em}#geshem #datetime #time{font-size:1.8em}#geshem #slider{position:absolute;bottom:8vh;width:30vw;margin-left:35vw}@media only screen and (max-device-width:812px){#geshem #slider{width:80vw;margin-left:8vw}}\", \"\"]);\n\n// exports\n\n\n/***/ }),\n/* 10 */\n/***/ (function(module, exports) {\n\n/*\n\tMIT License http://www.opensource.org/licenses/mit-license.php\n\tAuthor Tobias Koppers @sokra\n*/\n// css base code, injected by the css-loader\nmodule.exports = function(useSourceMap) {\n\tvar list = [];\n\n\t// return the list of modules as css string\n\tlist.toString = function toString() {\n\t\treturn this.map(function (item) {\n\t\t\tvar content = cssWithMappingToString(item, useSourceMap);\n\t\t\tif(item[2]) {\n\t\t\t\treturn \"@media \" + item[2] + \"{\" + content + \"}\";\n\t\t\t} else {\n\t\t\t\treturn content;\n\t\t\t}\n\t\t}).join(\"\");\n\t};\n\n\t// import a list of modules into the list\n\tlist.i = function(modules, mediaQuery) {\n\t\tif(typeof modules === \"string\")\n\t\t\tmodules = [[null, modules, \"\"]];\n\t\tvar alreadyImportedModules = {};\n\t\tfor(var i = 0; i < this.length; i++) {\n\t\t\tvar id = this[i][0];\n\t\t\tif(typeof id === \"number\")\n\t\t\t\talreadyImportedModules[id] = true;\n\t\t}\n\t\tfor(i = 0; i < modules.length; i++) {\n\t\t\tvar item = modules[i];\n\t\t\t// skip already imported module\n\t\t\t// this implementation is not 100% perfect for weird media query combinations\n\t\t\t// when a module is imported multiple times with different media queries.\n\t\t\t// I hope this will never occur (Hey this way we have smaller bundles)\n\t\t\tif(typeof item[0] !== \"number\" || !alreadyImportedModules[item[0]]) {\n\t\t\t\tif(mediaQuery && !item[2]) {\n\t\t\t\t\titem[2] = mediaQuery;\n\t\t\t\t} else if(mediaQuery) {\n\t\t\t\t\titem[2] = \"(\" + item[2] + \") and (\" + mediaQuery + \")\";\n\t\t\t\t}\n\t\t\t\tlist.push(item);\n\t\t\t}\n\t\t}\n\t};\n\treturn list;\n};\n\nfunction cssWithMappingToString(item, useSourceMap) {\n\tvar content = item[1] || '';\n\tvar cssMapping = item[3];\n\tif (!cssMapping) {\n\t\treturn content;\n\t}\n\n\tif (useSourceMap && typeof btoa === 'function') {\n\t\tvar sourceMapping = toComment(cssMapping);\n\t\tvar sourceURLs = cssMapping.sources.map(function (source) {\n\t\t\treturn '/*# sourceURL=' + cssMapping.sourceRoot + source + ' */'\n\t\t});\n\n\t\treturn [content].concat(sourceURLs).concat([sourceMapping]).join('\\n');\n\t}\n\n\treturn [content].join('\\n');\n}\n\n// Adapted from convert-source-map (MIT)\nfunction toComment(sourceMap) {\n\t// eslint-disable-next-line no-undef\n\tvar base64 = btoa(unescape(encodeURIComponent(JSON.stringify(sourceMap))));\n\tvar data = 'sourceMappingURL=data:application/json;charset=utf-8;base64,' + base64;\n\n\treturn '/*# ' + data + ' */';\n}\n\n\n/***/ }),\n/* 11 */\n/***/ (function(module, exports, __webpack_require__) {\n\n/*\n MIT License http://www.opensource.org/licenses/mit-license.php\n Author Tobias Koppers @sokra\n Modified by Evan You @yyx990803\n*/\n\nvar hasDocument = typeof document !== 'undefined'\n\nif (typeof DEBUG !== 'undefined' && DEBUG) {\n if (!hasDocument) {\n throw new Error(\n 'vue-style-loader cannot be used in a non-browser environment. ' +\n \"Use { target: 'node' } in your Webpack config to indicate a server-rendering environment.\"\n ) }\n}\n\nvar listToStyles = __webpack_require__(12)\n\n/*\ntype StyleObject = {\n id: number;\n parts: Array<StyleObjectPart>\n}\n\ntype StyleObjectPart = {\n css: string;\n media: string;\n sourceMap: ?string\n}\n*/\n\nvar stylesInDom = {/*\n [id: number]: {\n id: number,\n refs: number,\n parts: Array<(obj?: StyleObjectPart) => void>\n }\n*/}\n\nvar head = hasDocument && (document.head || document.getElementsByTagName('head')[0])\nvar singletonElement = null\nvar singletonCounter = 0\nvar isProduction = false\nvar noop = function () {}\n\n// Force single-tag solution on IE6-9, which has a hard limit on the # of <style>\n// tags it will allow on a page\nvar isOldIE = typeof navigator !== 'undefined' && /msie [6-9]\\b/.test(navigator.userAgent.toLowerCase())\n\nmodule.exports = function (parentId, list, _isProduction) {\n isProduction = _isProduction\n\n var styles = listToStyles(parentId, list)\n addStylesToDom(styles)\n\n return function update (newList) {\n var mayRemove = []\n for (var i = 0; i < styles.length; i++) {\n var item = styles[i]\n var domStyle = stylesInDom[item.id]\n domStyle.refs--\n mayRemove.push(domStyle)\n }\n if (newList) {\n styles = listToStyles(parentId, newList)\n addStylesToDom(styles)\n } else {\n styles = []\n }\n for (var i = 0; i < mayRemove.length; i++) {\n var domStyle = mayRemove[i]\n if (domStyle.refs === 0) {\n for (var j = 0; j < domStyle.parts.length; j++) {\n domStyle.parts[j]()\n }\n delete stylesInDom[domStyle.id]\n }\n }\n }\n}\n\nfunction addStylesToDom (styles /* Array<StyleObject> */) {\n for (var i = 0; i < styles.length; i++) {\n var item = styles[i]\n var domStyle = stylesInDom[item.id]\n if (domStyle) {\n domStyle.refs++\n for (var j = 0; j < domStyle.parts.length; j++) {\n domStyle.parts[j](item.parts[j])\n }\n for (; j < item.parts.length; j++) {\n domStyle.parts.push(addStyle(item.parts[j]))\n }\n if (domStyle.parts.length > item.parts.length) {\n domStyle.parts.length = item.parts.length\n }\n } else {\n var parts = []\n for (var j = 0; j < item.parts.length; j++) {\n parts.push(addStyle(item.parts[j]))\n }\n stylesInDom[item.id] = { id: item.id, refs: 1, parts: parts }\n }\n }\n}\n\nfunction createStyleElement () {\n var styleElement = document.createElement('style')\n styleElement.type = 'text/css'\n head.appendChild(styleElement)\n return styleElement\n}\n\nfunction addStyle (obj /* StyleObjectPart */) {\n var update, remove\n var styleElement = document.querySelector('style[data-vue-ssr-id~=\"' + obj.id + '\"]')\n\n if (styleElement) {\n if (isProduction) {\n // has SSR styles and in production mode.\n // simply do nothing.\n return noop\n } else {\n // has SSR styles but in dev mode.\n // for some reason Chrome can't handle source map in server-rendered\n // style tags - source maps in <style> only works if the style tag is\n // created and inserted dynamically. So we remove the server rendered\n // styles and inject new ones.\n styleElement.parentNode.removeChild(styleElement)\n }\n }\n\n if (isOldIE) {\n // use singleton mode for IE9.\n var styleIndex = singletonCounter++\n styleElement = singletonElement || (singletonElement = createStyleElement())\n update = applyToSingletonTag.bind(null, styleElement, styleIndex, false)\n remove = applyToSingletonTag.bind(null, styleElement, styleIndex, true)\n } else {\n // use multi-style-tag mode in all other cases\n styleElement = createStyleElement()\n update = applyToTag.bind(null, styleElement)\n remove = function () {\n styleElement.parentNode.removeChild(styleElement)\n }\n }\n\n update(obj)\n\n return function updateStyle (newObj /* StyleObjectPart */) {\n if (newObj) {\n if (newObj.css === obj.css &&\n newObj.media === obj.media &&\n newObj.sourceMap === obj.sourceMap) {\n return\n }\n update(obj = newObj)\n } else {\n remove()\n }\n }\n}\n\nvar replaceText = (function () {\n var textStore = []\n\n return function (index, replacement) {\n textStore[index] = replacement\n return textStore.filter(Boolean).join('\\n')\n }\n})()\n\nfunction applyToSingletonTag (styleElement, index, remove, obj) {\n var css = remove ? '' : obj.css\n\n if (styleElement.styleSheet) {\n styleElement.styleSheet.cssText = replaceText(index, css)\n } else {\n var cssNode = document.createTextNode(css)\n var childNodes = styleElement.childNodes\n if (childNodes[index]) styleElement.removeChild(childNodes[index])\n if (childNodes.length) {\n styleElement.insertBefore(cssNode, childNodes[index])\n } else {\n styleElement.appendChild(cssNode)\n }\n }\n}\n\nfunction applyToTag (styleElement, obj) {\n var css = obj.css\n var media = obj.media\n var sourceMap = obj.sourceMap\n\n if (media) {\n styleElement.setAttribute('media', media)\n }\n\n if (sourceMap) {\n // https://developer.chrome.com/devtools/docs/javascript-debugging\n // this makes source maps inside style tags work properly in Chrome\n css += '\\n/*# sourceURL=' + sourceMap.sources[0] + ' */'\n // http://stackoverflow.com/a/26603875\n css += '\\n/*# sourceMappingURL=data:application/json;base64,' + btoa(unescape(encodeURIComponent(JSON.stringify(sourceMap)))) + ' */'\n }\n\n if (styleElement.styleSheet) {\n styleElement.styleSheet.cssText = css\n } else {\n while (styleElement.firstChild) {\n styleElement.removeChild(styleElement.firstChild)\n }\n styleElement.appendChild(document.createTextNode(css))\n }\n}\n\n\n/***/ }),\n/* 12 */\n/***/ (function(module, exports) {\n\n/**\n * Translates the list format produced by css-loader into something\n * easier to manipulate.\n */\nmodule.exports = function listToStyles (parentId, list) {\n var styles = []\n var newStyles = {}\n for (var i = 0; i < list.length; i++) {\n var item = list[i]\n var id = item[0]\n var css = item[1]\n var media = item[2]\n var sourceMap = item[3]\n var part = {\n id: parentId + ':' + i,\n css: css,\n media: media,\n sourceMap: sourceMap\n }\n if (!newStyles[id]) {\n styles.push(newStyles[id] = { id: id, parts: [part] })\n } else {\n newStyles[id].parts.push(part)\n }\n }\n return styles\n}\n\n\n/***/ }),\n/* 13 */\n/***/ (function(module, exports) {\n\n/* globals __VUE_SSR_CONTEXT__ */\n\n// IMPORTANT: Do NOT use ES2015 features in this file.\n// This module is a runtime utility for cleaner component module output and will\n// be included in the final webpack user bundle.\n\nmodule.exports = function normalizeComponent (\n rawScriptExports,\n compiledTemplate,\n functionalTemplate,\n injectStyles,\n scopeId,\n moduleIdentifier /* server only */\n) {\n var esModule\n var scriptExports = rawScriptExports = rawScriptExports || {}\n\n // ES6 modules interop\n var type = typeof rawScriptExports.default\n if (type === 'object' || type === 'function') {\n esModule = rawScriptExports\n scriptExports = rawScriptExports.default\n }\n\n // Vue.extend constructor export interop\n var options = typeof scriptExports === 'function'\n ? scriptExports.options\n : scriptExports\n\n // render functions\n if (compiledTemplate) {\n options.render = compiledTemplate.render\n options.staticRenderFns = compiledTemplate.staticRenderFns\n options._compiled = true\n }\n\n // functional template\n if (functionalTemplate) {\n options.functional = true\n }\n\n // scopedId\n if (scopeId) {\n options._scopeId = scopeId\n }\n\n var hook\n if (moduleIdentifier) { // server build\n hook = function (context) {\n // 2.3 injection\n context =\n context || // cached call\n (this.$vnode && this.$vnode.ssrContext) || // stateful\n (this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext) // functional\n // 2.2 with runInNewContext: true\n if (!context && typeof __VUE_SSR_CONTEXT__ !== 'undefined') {\n context = __VUE_SSR_CONTEXT__\n }\n // inject component styles\n if (injectStyles) {\n injectStyles.call(this, context)\n }\n // register component module identifier for async chunk inferrence\n if (context && context._registeredComponents) {\n context._registeredComponents.add(moduleIdentifier)\n }\n }\n // used by ssr in case component is cached and beforeCreate\n // never gets called\n options._ssrRegister = hook\n } else if (injectStyles) {\n hook = injectStyles\n }\n\n if (hook) {\n var functional = options.functional\n var existing = functional\n ? options.render\n : options.beforeCreate\n\n if (!functional) {\n // inject component registration as beforeCreate hook\n options.beforeCreate = existing\n ? [].concat(existing, hook)\n : [hook]\n } else {\n // for template-only hot-reload because in that case the render fn doesn't\n // go through the normalizer\n options._injectStyles = hook\n // register for functioal component in vue file\n options.render = function renderWithStyleInjection (h, context) {\n hook.call(context)\n return existing(h, context)\n }\n }\n }\n\n return {\n esModule: esModule,\n exports: scriptExports,\n options: options\n }\n}\n\n\n/***/ }),\n/* 14 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_vue_slider_component__ = __webpack_require__(15);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_vue_slider_component___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_vue_slider_component__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_mapbox_gl__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_mapbox_gl___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_mapbox_gl__);\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'geshem',\n components: {\n 'vue-slider': __WEBPACK_IMPORTED_MODULE_0_vue_slider_component___default.a\n },\n data: function data() {\n var _ref;\n\n return {\n imgs: window.imgs,\n res: 280,\n slider: 7,\n rasterCoords: {\n 140: [[33.35317413, 33.27232471], [36.32243686, 33.27232471], [36.32243686, 30.72293428], [33.35317413, 30.72293428]],\n 280: [[31.93095218, 34.5156862], [37.86644267, 34.5156862], [37.86644267, 29.42911589], [31.93095218, 29.42911589]]\n },\n map: new __WEBPACK_IMPORTED_MODULE_1_mapbox_gl___default.a.Map((_ref = {\n container: 'map',\n style: 'mapbox://styles/mapbox/dark-v9'\n }, _defineProperty(_ref, 'container', 'map'), _defineProperty(_ref, 'maxZoom', 10), _defineProperty(_ref, 'minZoom', 5), _defineProperty(_ref, 'zoom', 6.3), _defineProperty(_ref, 'center', [35, 31.9]), _defineProperty(_ref, 'hash', false), _ref))\n };\n },\n computed: {\n date: function date() {\n var d = this.imgs[this.res][7 - this.slider].substr(0, 8);\n return d.substr(6, 2) + '-' + d.substr(4, 2) + '-' + d.substr(0, 4);\n },\n time: function time() {\n var t = this.imgs[this.res][7 - this.slider].substr(9, 6);\n return t.substr(0, 2) + ':' + t.substr(2, 2);\n },\n curImg: function curImg() {\n return 7 - this.slider;\n }\n },\n created: function created() {\n var vm = this;\n this.map.on('style.load', function () {\n var i = 0;\n while (i < vm.imgs['140'].length) {\n vm.addRadarSource('140', i, vm.imgs['140'][i++]);\n }\n var i = 0;\n while (i < vm.imgs['280'].length) {\n vm.addRadarSource('280', i, vm.imgs['280'][i++]);\n }\n vm.addRadarLayer('280', 0);\n });\n this.map.on('zoom', function () {\n var zoomIn = vm.map.getZoom() > 7;\n var from = zoomIn ? '280' : '140';\n var to = zoomIn ? '140' : '280';\n if (to != vm.res) {\n console.log('Zoom event from ' + from + ' to ' + to);\n vm.removeRadarLayer(from, vm.curImg);\n vm.addRadarLayer(to, vm.curImg);\n vm.res = to;\n }\n });\n },\n methods: {\n addRadarSource: function addRadarSource(res, i, url) {\n this.map.addSource('radar-' + res + '-' + i, {\n type: 'image',\n url: '/static/img/' + url,\n coordinates: this.rasterCoords[res]\n });\n },\n addRadarLayer: function addRadarLayer(res, i) {\n this.map.addLayer({\n id: 'radar-' + res + '-' + i,\n source: 'radar-' + res + '-' + i,\n type: 'raster',\n paint: {\n 'raster-opacity': 0.85\n }\n });\n },\n removeRadarLayer: function removeRadarLayer(res, i) {\n this.map.removeLayer('radar-' + res + '-' + i);\n }\n },\n watch: {\n slider: function slider(to, from) {\n this.removeRadarLayer(this.res, 7 - from);\n this.addRadarLayer(this.res, 7 - to);\n }\n }\n});\n\n/***/ }),\n/* 15 */\n/***/ (function(module, exports, __webpack_require__) {\n\n!function(t,e){ true?module.exports=e():\"function\"==typeof define&&define.amd?define(\"vue-slider-component\",[],e):\"object\"==typeof exports?exports[\"vue-slider-component\"]=e():t[\"vue-slider-component\"]=e()}(this,function(){return function(t){function e(s){if(i[s])return i[s].exports;var r=i[s]={i:s,l:!1,exports:{}};return t[s].call(r.exports,r,r.exports,e),r.l=!0,r.exports}var i={};return e.m=t,e.c=i,e.i=function(t){return t},e.d=function(t,i,s){e.o(t,i)||Object.defineProperty(t,i,{configurable:!1,enumerable:!0,get:s})},e.n=function(t){var i=t&&t.__esModule?function(){return t.default}:function(){return t};return e.d(i,\"a\",i),i},e.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},e.p=\"\",e(e.s=2)}([function(t,e,i){i(7);var s=i(5)(i(1),i(6),null,null);t.exports=s.exports},function(t,e,i){\"use strict\";Object.defineProperty(e,\"__esModule\",{value:!0}),e.default={data:function(){return{flag:!1,size:0,currentValue:0,currentSlider:0,dotWidthVal:\"number\"==typeof this.dotWidth?this.dotWidth:this.dotSize,dotHeightVal:\"number\"==typeof this.dotHeight?this.dotHeight:this.dotSize}},props:{width:{type:[Number,String],default:\"auto\"},height:{type:[Number,String],default:6},data:{type:Array,default:null},dotSize:{type:Number,default:16},dotWidth:{type:Number,required:!1},dotHeight:{type:Number,required:!1},min:{type:Number,default:0},max:{type:Number,default:100},interval:{type:Number,default:1},show:{type:Boolean,default:!0},disabled:{type:Boolean,default:!1},piecewise:{type:Boolean,default:!1},tooltip:{type:[String,Boolean],default:\"always\"},eventType:{type:String,default:\"auto\"},direction:{type:String,default:\"horizontal\"},reverse:{type:Boolean,default:!1},lazy:{type:Boolean,default:!1},clickable:{type:Boolean,default:!0},speed:{type:Number,default:.5},realTime:{type:Boolean,default:!1},value:{type:[String,Number,Array],default:0},piecewiseLabel:{type:Boolean,default:!1},sliderStyle:[Array,Object],tooltipDir:[Array,String],formatter:[String,Function],piecewiseStyle:Object,piecewiseActiveStyle:Object,processStyle:Object,bgStyle:Object,tooltipStyle:[Array,Object],labelStyle:Object,labelActiveStyle:Object},computed:{flowDirection:function(){return\"vue-slider-\"+this.direction+(this.reverse?\"-reverse\":\"\")},tooltipDirection:function(){var t=this.tooltipDir||(\"vertical\"===this.direction?\"left\":\"top\");return Array.isArray(t)?this.isRange?t:t[1]:this.isRange?[t,t]:t},tooltipStatus:function(){return\"hover\"===this.tooltip&&this.flag?\"vue-slider-always\":this.tooltip?\"vue-slider-\"+this.tooltip:\"\"},tooltipClass:function(){return[\"vue-slider-tooltip-\"+this.tooltipDirection,\"vue-slider-tooltip\"]},isDisabled:function(){return\"none\"===this.eventType||this.disabled},disabledClass:function(){return this.disabled?\"vue-slider-disabled\":\"\"},isRange:function(){return Array.isArray(this.value)},slider:function(){return this.isRange?[this.$refs.dot0,this.$refs.dot1]:this.$refs.dot},minimum:function(){return this.data?0:this.min},val:{get:function(){return this.data?this.isRange?[this.data[this.currentValue[0]],this.data[this.currentValue[1]]]:this.data[this.currentValue]:this.currentValue},set:function(t){if(this.data)if(this.isRange){var e=this.data.indexOf(t[0]),i=this.data.indexOf(t[1]);e>-1&&i>-1&&(this.currentValue=[e,i])}else{var s=this.data.indexOf(t);s>-1&&(this.currentValue=s)}else this.currentValue=t}},currentIndex:function(){return this.isRange?this.data?this.currentValue:[(this.currentValue[0]-this.minimum)/this.spacing,(this.currentValue[1]-this.minimum)/this.spacing]:(this.currentValue-this.minimum)/this.spacing},indexRange:function(){return this.isRange?this.currentIndex:[0,this.currentIndex]},maximum:function(){return this.data?this.data.length-1:this.max},multiple:function(){var t=(\"\"+this.interval).split(\".\")[1];return t?Math.pow(10,t.length):1},spacing:function(){return this.data?1:this.interval},total:function(){return this.data?this.data.length-1:(~~((this.maximum-this.minimum)*this.multiple)%(this.interval*this.multiple)!=0&&console.error(\"[Vue-slider warn]: Prop[interval] is illegal, Please make sure that the interval can be divisible\"),(this.maximum-this.minimum)/this.interval)},gap:function(){return this.size/this.total},position:function(){return this.isRange?[(this.currentValue[0]-this.minimum)/this.spacing*this.gap,(this.currentValue[1]-this.minimum)/this.spacing*this.gap]:(this.currentValue-this.minimum)/this.spacing*this.gap},limit:function(){return this.isRange?[[0,this.position[1]],[this.position[0],this.size]]:[0,this.size]},valueLimit:function(){return this.isRange?[[this.minimum,this.currentValue[1]],[this.currentValue[0],this.maximum]]:[this.minimum,this.maximum]},wrapStyles:function(){return\"vertical\"===this.direction?{height:\"number\"==typeof this.height?this.height+\"px\":this.height,padding:this.dotHeightVal/2+\"px \"+this.dotWidthVal/2+\"px\"}:{width:\"number\"==typeof this.width?this.width+\"px\":this.width,padding:this.dotHeightVal/2+\"px \"+this.dotWidthVal/2+\"px\"}},sliderStyles:function(){return Array.isArray(this.sliderStyle)?this.isRange?this.sliderStyle:this.sliderStyle[1]:this.isRange?[this.sliderStyle,this.sliderStyle]:this.sliderStyle},tooltipStyles:function(){return Array.isArray(this.tooltipStyle)?this.isRange?this.tooltipStyle:this.tooltipStyle[1]:this.isRange?[this.tooltipStyle,this.tooltipStyle]:this.tooltipStyle},elemStyles:function(){return\"vertical\"===this.direction?{width:this.width+\"px\",height:\"100%\"}:{height:this.height+\"px\"}},dotStyles:function(){return\"vertical\"===this.direction?{width:this.dotWidthVal+\"px\",height:this.dotHeightVal+\"px\",left:-(this.dotWidthVal-this.width)/2+\"px\"}:{width:this.dotWidthVal+\"px\",height:this.dotHeightVal+\"px\",top:-(this.dotHeightVal-this.height)/2+\"px\"}},piecewiseDotStyle:function(){return\"vertical\"===this.direction?{width:this.width+\"px\",height:this.width+\"px\"}:{width:this.height+\"px\",height:this.height+\"px\"}},piecewiseDotWrap:function(){if(!this.piecewise&&!this.piecewiseLabel)return!1;for(var t=[],e=0;e<=this.total;e++){var i=\"vertical\"===this.direction?{bottom:this.gap*e-this.width/2+\"px\",left:0}:{left:this.gap*e-this.height/2+\"px\",top:0},s=this.reverse?this.total-e:e,r=this.data?this.data[s]:this.spacing*s+this.min;t.push({style:i,label:this.formatter?this.formatting(r):r,inRange:s>=this.indexRange[0]&&s<=this.indexRange[1]})}return t}},watch:{value:function(t){this.flag||this.setValue(t,!0)},max:function(t){var e=this.limitValue(this.val);!1!==e&&this.setValue(e),this.refresh()},min:function(t){var e=this.limitValue(this.val);!1!==e&&this.setValue(e),this.refresh()},show:function(t){var e=this;t&&!this.size&&this.$nextTick(function(){e.refresh()})}},methods:{bindEvents:function(){document.addEventListener(\"touchmove\",this.moving,{passive:!1}),document.addEventListener(\"touchend\",this.moveEnd,{passive:!1}),document.addEventListener(\"mousemove\",this.moving),document.addEventListener(\"mouseup\",this.moveEnd),document.addEventListener(\"mouseleave\",this.moveEnd),window.addEventListener(\"resize\",this.refresh)},unbindEvents:function(){window.removeEventListener(\"resize\",this.refresh),document.removeEventListener(\"touchmove\",this.moving),document.removeEventListener(\"touchend\",this.moveEnd),document.removeEventListener(\"mousemove\",this.moving),document.removeEventListener(\"mouseup\",this.moveEnd),document.removeEventListener(\"mouseleave\",this.moveEnd)},formatting:function(t){return\"string\"==typeof this.formatter?this.formatter.replace(/\\{value\\}/,t):this.formatter(t)},getPos:function(t){return this.realTime&&this.getStaticData(),\"vertical\"===this.direction?this.reverse?t.pageY-this.offset:this.size-(t.pageY-this.offset):this.reverse?this.size-(t.clientX-this.offset):t.clientX-this.offset},wrapClick:function(t){if(this.isDisabled||!this.clickable)return!1;var e=this.getPos(t);this.isRange&&(this.currentSlider=e>(this.position[1]-this.position[0])/2+this.position[0]?1:0),this.setValueOnPos(e)},moveStart:function(t){if(this.isDisabled)return!1;this.isRange&&(this.currentSlider=t),this.flag=!0,this.$emit(\"drag-start\",this)},moving:function(t){if(!this.flag)return!1;t.preventDefault(),t.targetTouches&&t.targetTouches[0]&&(t=t.targetTouches[0]),this.setValueOnPos(this.getPos(t),!0)},moveEnd:function(t){if(!this.flag)return!1;this.$emit(\"drag-end\",this),this.lazy&&this.isDiff(this.val,this.value)&&this.syncValue(),this.flag=!1,this.setPosition()},setValueOnPos:function(t,e){var i=this.isRange?this.limit[this.currentSlider]:this.limit,s=this.isRange?this.valueLimit[this.currentSlider]:this.valueLimit;if(t>=i[0]&&t<=i[1]){this.setTransform(t);var r=(Math.round(t/this.gap)*(this.spacing*this.multiple)+this.minimum*this.multiple)/this.multiple;this.setCurrentValue(r,e)}else t<i[0]?(this.setTransform(i[0]),this.setCurrentValue(s[0]),1===this.currentSlider&&(this.currentSlider=0)):(this.setTransform(i[1]),this.setCurrentValue(s[1]),0===this.currentSlider&&(this.currentSlider=1))},isDiff:function(t,e){return Object.prototype.toString.call(t)!==Object.prototype.toString.call(e)||(Array.isArray(t)&&t.length===e.length?t.some(function(t,i){return t!==e[i]}):t!==e)},setCurrentValue:function(t,e){if(t<this.minimum||t>this.maximum)return!1;this.isRange?this.isDiff(this.currentValue[this.currentSlider],t)&&(this.currentValue.splice(this.currentSlider,1,t),this.lazy&&this.flag||this.syncValue()):this.isDiff(this.currentValue,t)&&(this.currentValue=t,this.lazy&&this.flag||this.syncValue()),e||this.setPosition()},setIndex:function(t){if(Array.isArray(t)&&this.isRange){var e=void 0;e=this.data?[this.data[t[0]],this.data[t[1]]]:[this.spacing*t[0]+this.minimum,this.spacing*t[1]+this.minimum],this.setValue(e)}else t=this.spacing*t+this.minimum,this.isRange&&(this.currentSlider=t>(this.currentValue[1]-this.currentValue[0])/2+this.currentValue[0]?1:0),this.setCurrentValue(t)},setValue:function(t,e,i){var s=this;if(this.isDiff(this.val,t)){var r=this.limitValue(t);this.val=!1!==r?this.isRange?r.concat():r:this.isRange?t.concat():t,this.syncValue(e)}this.$nextTick(function(){return s.setPosition(i)})},setPosition:function(t){this.flag||this.setTransitionTime(void 0===t?this.speed:t),this.isRange?(this.currentSlider=0,this.setTransform(this.position[this.currentSlider]),this.currentSlider=1,this.setTransform(this.position[this.currentSlider])):this.setTransform(this.position),this.flag||this.setTransitionTime(0)},setTransform:function(t){var e=(\"vertical\"===this.direction?this.dotHeightVal/2-t:t-this.dotWidthVal/2)*(this.reverse?-1:1),i=\"vertical\"===this.direction?\"translateY(\"+e+\"px)\":\"translateX(\"+e+\"px)\",s=(0===this.currentSlider?this.position[1]-t:t-this.position[0])+\"px\",r=(0===this.currentSlider?t:this.position[0])+\"px\";this.isRange?(this.slider[this.currentSlider].style.transform=i,this.slider[this.currentSlider].style.WebkitTransform=i,this.slider[this.currentSlider].style.msTransform=i,\"vertical\"===this.direction?(this.$refs.process.style.height=s,this.$refs.process.style[this.reverse?\"top\":\"bottom\"]=r):(this.$refs.process.style.width=s,this.$refs.process.style[this.reverse?\"right\":\"left\"]=r)):(this.slider.style.transform=i,this.slider.style.WebkitTransform=i,this.slider.style.msTransform=i,\"vertical\"===this.direction?(this.$refs.process.style.height=t+\"px\",this.$refs.process.style[this.reverse?\"top\":\"bottom\"]=0):(this.$refs.process.style.width=t+\"px\",this.$refs.process.style[this.reverse?\"right\":\"left\"]=0))},setTransitionTime:function(t){if(t||this.$refs.process.offsetWidth,this.isRange){for(var e=0;e<this.slider.length;e++)this.slider[e].style.transitionDuration=t+\"s\",this.slider[e].style.WebkitTransitionDuration=t+\"s\";this.$refs.process.style.transitionDuration=t+\"s\",this.$refs.process.style.WebkitTransitionDuration=t+\"s\"}else this.slider.style.transitionDuration=t+\"s\",this.slider.style.WebkitTransitionDuration=t+\"s\",this.$refs.process.style.transitionDuration=t+\"s\",this.$refs.process.style.WebkitTransitionDuration=t+\"s\"},limitValue:function(t){var e=this;if(this.data)return t;var i=!1;return this.isRange?t=t.map(function(t){return t<e.min?(i=!0,e.min):t>e.max?(i=!0,e.max):t}):t>this.max?(i=!0,t=this.max):t<this.min&&(i=!0,t=this.min),i&&t},syncValue:function(t){t||this.$emit(\"callback\",this.val),this.$emit(\"input\",this.isRange?this.val.concat():this.val)},getValue:function(){return this.val},getIndex:function(){return this.currentIndex},getStaticData:function(){this.$refs.elem&&(this.size=\"vertical\"===this.direction?this.$refs.elem.offsetHeight:this.$refs.elem.offsetWidth,this.offset=\"vertical\"===this.direction?this.$refs.elem.getBoundingClientRect().top+window.pageYOffset||document.documentElement.scrollTop:this.$refs.elem.getBoundingClientRect().left)},refresh:function(){this.$refs.elem&&(this.getStaticData(),this.setPosition())}},mounted:function(){var t=this;\"undefined\"!=typeof window&&\"undefined\"!=typeof document&&this.$nextTick(function(){t.getStaticData(),t.setValue(t.value,!0,0),t.bindEvents()})},beforeDestroy:function(){this.unbindEvents()}}},function(t,e,i){\"use strict\";var s=i(0);t.exports=s},function(t,e,i){e=t.exports=i(4)(),e.push([t.i,'.vue-slider-component{position:relative;-webkit-box-sizing:border-box;box-sizing:border-box;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.vue-slider-component.vue-slider-disabled{opacity:.5;cursor:not-allowed}.vue-slider-component.vue-slider-has-label{margin-bottom:15px}.vue-slider-component.vue-slider-disabled .vue-slider-dot{cursor:not-allowed}.vue-slider-component .vue-slider{position:relative;display:block;border-radius:15px;background-color:#ccc}.vue-slider-component .vue-slider:after{content:\"\";position:absolute;left:0;top:0;width:100%;height:100%;z-index:2}.vue-slider-component .vue-slider-process{position:absolute;border-radius:15px;background-color:#3498db;-webkit-transition:all 0s;transition:all 0s;z-index:1}.vue-slider-component.vue-slider-horizontal .vue-slider-process{width:0;height:100%;top:0;left:0;will-change:width}.vue-slider-component.vue-slider-vertical .vue-slider-process{width:100%;height:0;bottom:0;left:0;will-change:height}.vue-slider-component.vue-slider-horizontal-reverse .vue-slider-process{width:0;height:100%;top:0;right:0}.vue-slider-component.vue-slider-vertical-reverse .vue-slider-process{width:100%;height:0;top:0;left:0}.vue-slider-component .vue-slider-dot{position:absolute;border-radius:50%;background-color:#fff;-webkit-box-shadow:.5px .5px 2px 1px rgba(0,0,0,.32);box-shadow:.5px .5px 2px 1px rgba(0,0,0,.32);-webkit-transition:all 0s;transition:all 0s;will-change:transform;cursor:pointer;z-index:3}.vue-slider-component.vue-slider-horizontal .vue-slider-dot{left:0}.vue-slider-component.vue-slider-vertical .vue-slider-dot{bottom:0}.vue-slider-component.vue-slider-horizontal-reverse .vue-slider-dot{right:0}.vue-slider-component.vue-slider-vertical-reverse .vue-slider-dot{top:0}.vue-slider-component .vue-slider-tooltip-wrap{display:none;position:absolute;z-index:9}.vue-slider-component .vue-slider-tooltip{display:block;font-size:14px;white-space:nowrap;padding:2px 5px;min-width:20px;text-align:center;color:#fff;border-radius:5px;border:1px solid #3498db;background-color:#3498db}.vue-slider-component .vue-slider-tooltip-wrap.vue-slider-tooltip-top{top:-9px;left:50%;-webkit-transform:translate(-50%,-100%);transform:translate(-50%,-100%)}.vue-slider-component .vue-slider-tooltip-wrap.vue-slider-tooltip-bottom{bottom:-9px;left:50%;-webkit-transform:translate(-50%,100%);transform:translate(-50%,100%)}.vue-slider-component .vue-slider-tooltip-wrap.vue-slider-tooltip-left{top:50%;left:-9px;-webkit-transform:translate(-100%,-50%);transform:translate(-100%,-50%)}.vue-slider-component .vue-slider-tooltip-wrap.vue-slider-tooltip-right{top:50%;right:-9px;-webkit-transform:translate(100%,-50%);transform:translate(100%,-50%)}.vue-slider-component .vue-slider-tooltip-wrap.vue-slider-tooltip-top .vue-slider-tooltip:before{content:\"\";position:absolute;bottom:-10px;left:50%;width:0;height:0;border:5px solid transparent;border:6px solid transparent\\\\0;border-top-color:inherit;-webkit-transform:translate(-50%);transform:translate(-50%)}.vue-slider-component .vue-slider-tooltip-wrap.vue-slider-tooltip-bottom .vue-slider-tooltip:before{content:\"\";position:absolute;top:-10px;left:50%;width:0;height:0;border:5px solid transparent;border:6px solid transparent\\\\0;border-bottom-color:inherit;-webkit-transform:translate(-50%);transform:translate(-50%)}.vue-slider-component .vue-slider-tooltip-wrap.vue-slider-tooltip-left .vue-slider-tooltip:before{content:\"\";position:absolute;top:50%;right:-10px;width:0;height:0;border:5px solid transparent;border:6px solid transparent\\\\0;border-left-color:inherit;-webkit-transform:translateY(-50%);transform:translateY(-50%)}.vue-slider-component .vue-slider-tooltip-wrap.vue-slider-tooltip-right .vue-slider-tooltip:before{content:\"\";position:absolute;top:50%;left:-10px;width:0;height:0;border:5px solid transparent;border:6px solid transparent\\\\0;border-right-color:inherit;-webkit-transform:translateY(-50%);transform:translateY(-50%)}.vue-slider-component .vue-slider-dot.vue-slider-hover:hover .vue-slider-tooltip-wrap{display:block}.vue-slider-component .vue-slider-dot.vue-slider-always .vue-slider-tooltip-wrap{display:block!important}.vue-slider-component .vue-slider-piecewise{position:absolute;width:100%;padding:0;margin:0;left:0;top:0;height:100%;list-style:none}.vue-slider-component .vue-slider-piecewise-item{position:absolute;width:8px;height:8px}.vue-slider-component .vue-slider-piecewise-dot{position:absolute;left:50%;top:50%;width:100%;height:100%;display:inline-block;background-color:rgba(0,0,0,.16);border-radius:50%;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%);z-index:2;-webkit-transition:all .3s;transition:all .3s}.vue-slider-component .vue-slider-piecewise-item:first-child .vue-slider-piecewise-dot,.vue-slider-component .vue-slider-piecewise-item:last-child .vue-slider-piecewise-dot{visibility:hidden}.vue-slider-component.vue-slider-horizontal-reverse .vue-slider-piecewise-label,.vue-slider-component.vue-slider-horizontal .vue-slider-piecewise-label{position:absolute;display:inline-block;top:100%;left:50%;white-space:nowrap;font-size:12px;color:#333;-webkit-transform:translate(-50%,8px);transform:translate(-50%,8px);visibility:visible}.vue-slider-component.vue-slider-vertical-reverse .vue-slider-piecewise-label,.vue-slider-component.vue-slider-vertical .vue-slider-piecewise-label{position:absolute;display:inline-block;top:50%;left:100%;white-space:nowrap;font-size:12px;color:#333;-webkit-transform:translate(8px,-50%);transform:translate(8px,-50%);visibility:visible}.vue-slider-component .vue-slider-sr-only{clip:rect(1px,1px,1px,1px);height:1px;width:1px;overflow:hidden;position:absolute!important}',\"\"])},function(t,e){t.exports=function(){var t=[];return t.toString=function(){for(var t=[],e=0;e<this.length;e++){var i=this[e];i[2]?t.push(\"@media \"+i[2]+\"{\"+i[1]+\"}\"):t.push(i[1])}return t.join(\"\")},t.i=function(e,i){\"string\"==typeof e&&(e=[[null,e,\"\"]]);for(var s={},r=0;r<this.length;r++){var n=this[r][0];\"number\"==typeof n&&(s[n]=!0)}for(r=0;r<e.length;r++){var o=e[r];\"number\"==typeof o[0]&&s[o[0]]||(i&&!o[2]?o[2]=i:i&&(o[2]=\"(\"+o[2]+\") and (\"+i+\")\"),t.push(o))}},t}},function(t,e){t.exports=function(t,e,i,s){var r,n=t=t||{},o=typeof t.default;\"object\"!==o&&\"function\"!==o||(r=t,n=t.default);var l=\"function\"==typeof n?n.options:n;if(e&&(l.render=e.render,l.staticRenderFns=e.staticRenderFns),i&&(l._scopeId=i),s){var a=Object.create(l.computed||null);Object.keys(s).forEach(function(t){var e=s[t];a[t]=function(){return e}}),l.computed=a}return{esModule:r,exports:n,options:l}}},function(t,e){t.exports={render:function(){var t=this,e=t.$createElement,i=t._self._c||e;return i(\"div\",{directives:[{name:\"show\",rawName:\"v-show\",value:t.show,expression:\"show\"}],ref:\"wrap\",class:[\"vue-slider-component\",t.flowDirection,t.disabledClass,{\"vue-slider-has-label\":t.piecewiseLabel}],style:t.wrapStyles,on:{click:t.wrapClick}},[i(\"div\",{ref:\"elem\",staticClass:\"vue-slider\",style:[t.elemStyles,t.bgStyle],attrs:{\"aria-hidden\":\"true\"}},[t.isRange?[i(\"div\",{ref:\"dot0\",class:[t.tooltipStatus,\"vue-slider-dot\"],style:[t.dotStyles,t.sliderStyles[0]],on:{mousedown:function(e){t.moveStart(0)},touchstart:function(e){t.moveStart(0)}}},[i(\"span\",{class:[\"vue-slider-tooltip-\"+t.tooltipDirection[0],\"vue-slider-tooltip-wrap\"]},[t._t(\"tooltip\",[i(\"span\",{staticClass:\"vue-slider-tooltip\",style:t.tooltipStyles[0]},[t._v(t._s(t.formatter?t.formatting(t.val[0]):t.val[0]))])],{value:t.val[0],index:0})],2)]),t._v(\" \"),i(\"div\",{ref:\"dot1\",class:[t.tooltipStatus,\"vue-slider-dot\"],style:[t.dotStyles,t.sliderStyles[1]],on:{mousedown:function(e){t.moveStart(1)},touchstart:function(e){t.moveStart(1)}}},[i(\"span\",{class:[\"vue-slider-tooltip-\"+t.tooltipDirection[1],\"vue-slider-tooltip-wrap\"]},[t._t(\"tooltip\",[i(\"span\",{staticClass:\"vue-slider-tooltip\",style:t.tooltipStyles[1]},[t._v(t._s(t.formatter?t.formatting(t.val[1]):t.val[1]))])],{value:t.val[1],index:1})],2)])]:[i(\"div\",{ref:\"dot\",class:[t.tooltipStatus,\"vue-slider-dot\"],style:[t.dotStyles,t.sliderStyles],on:{mousedown:t.moveStart,touchstart:t.moveStart}},[i(\"span\",{class:[\"vue-slider-tooltip-\"+t.tooltipDirection,\"vue-slider-tooltip-wrap\"]},[t._t(\"tooltip\",[i(\"span\",{staticClass:\"vue-slider-tooltip\",style:t.tooltipStyles},[t._v(t._s(t.formatter?t.formatting(t.val):t.val))])],{value:t.val})],2)])],t._v(\" \"),i(\"ul\",{staticClass:\"vue-slider-piecewise\"},t._l(t.piecewiseDotWrap,function(e,s){return i(\"li\",{key:s,staticClass:\"vue-slider-piecewise-item\",style:[t.piecewiseDotStyle,e.style]},[t._t(\"piecewise\",[t.piecewise?i(\"span\",{staticClass:\"vue-slider-piecewise-dot\",style:[t.piecewiseStyle,e.inRange?t.piecewiseActiveStyle:null]}):t._e()],{label:e.label,index:s,first:0===s,last:s===t.piecewiseDotWrap.length-1}),t._v(\" \"),t._t(\"label\",[t.piecewiseLabel?i(\"span\",{staticClass:\"vue-slider-piecewise-label\",style:[t.labelStyle,e.inRange?t.labelActiveStyle:null]},[t._v(\"\\n\\t\\t\\t\\t\\t\\t\"+t._s(e.label)+\"\\n\\t\\t\\t\\t\\t\")]):t._e()],{label:e.label,index:s,first:0===s,last:s===t.piecewiseDotWrap.length-1})],2)})),t._v(\" \"),i(\"div\",{ref:\"process\",staticClass:\"vue-slider-process\",style:t.processStyle})],2),t._v(\" \"),t.isRange||t.data?t._e():i(\"input\",{directives:[{name:\"model\",rawName:\"v-model\",value:t.val,expression:\"val\"}],staticClass:\"vue-slider-sr-only\",attrs:{type:\"range\",min:t.min,max:t.max},domProps:{value:t.val},on:{__r:function(e){t.val=e.target.value}}})])},staticRenderFns:[]}},function(t,e,i){var s=i(3);\"string\"==typeof s&&(s=[[t.i,s,\"\"]]),s.locals&&(t.exports=s.locals);i(8)(\"743d98f5\",s,!0)},function(t,e,i){function s(t){for(var e=0;e<t.length;e++){var i=t[e],s=h[i.id];if(s){s.refs++;for(var r=0;r<s.parts.length;r++)s.parts[r](i.parts[r]);for(;r<i.parts.length;r++)s.parts.push(n(i.parts[r]));s.parts.length>i.parts.length&&(s.parts.length=i.parts.length)}else{for(var o=[],r=0;r<i.parts.length;r++)o.push(n(i.parts[r]));h[i.id]={id:i.id,refs:1,parts:o}}}}function r(){var t=document.createElement(\"style\");return t.type=\"text/css\",d.appendChild(t),t}function n(t){var e,i,s=document.querySelector('style[data-vue-ssr-id~=\"'+t.id+'\"]');if(s){if(f)return v;s.parentNode.removeChild(s)}if(m){var n=c++;s=p||(p=r()),e=o.bind(null,s,n,!1),i=o.bind(null,s,n,!0)}else s=r(),e=l.bind(null,s),i=function(){s.parentNode.removeChild(s)};return e(t),function(s){if(s){if(s.css===t.css&&s.media===t.media&&s.sourceMap===t.sourceMap)return;e(t=s)}else i()}}function o(t,e,i,s){var r=i?\"\":s.css;if(t.styleSheet)t.styleSheet.cssText=g(e,r);else{var n=document.createTextNode(r),o=t.childNodes;o[e]&&t.removeChild(o[e]),o.length?t.insertBefore(n,o[e]):t.appendChild(n)}}function l(t,e){var i=e.css,s=e.media,r=e.sourceMap;if(s&&t.setAttribute(\"media\",s),r&&(i+=\"\\n/*# sourceURL=\"+r.sources[0]+\" */\",i+=\"\\n/*# sourceMappingURL=data:application/json;base64,\"+btoa(unescape(encodeURIComponent(JSON.stringify(r))))+\" */\"),t.styleSheet)t.styleSheet.cssText=i;else{for(;t.firstChild;)t.removeChild(t.firstChild);t.appendChild(document.createTextNode(i))}}var a=\"undefined\"!=typeof document;if(\"undefined\"!=typeof DEBUG&&DEBUG&&!a)throw new Error(\"vue-style-loader cannot be used in a non-browser environment. Use { target: 'node' } in your Webpack config to indicate a server-rendering environment.\");var u=i(9),h={},d=a&&(document.head||document.getElementsByTagName(\"head\")[0]),p=null,c=0,f=!1,v=function(){},m=\"undefined\"!=typeof navigator&&/msie [6-9]\\b/.test(navigator.userAgent.toLowerCase());t.exports=function(t,e,i){f=i;var r=u(t,e);return s(r),function(e){for(var i=[],n=0;n<r.length;n++){var o=r[n],l=h[o.id];l.refs--,i.push(l)}e?(r=u(t,e),s(r)):r=[];for(var n=0;n<i.length;n++){var l=i[n];if(0===l.refs){for(var a=0;a<l.parts.length;a++)l.parts[a]();delete h[l.id]}}}};var g=function(){var t=[];return function(e,i){return t[e]=i,t.filter(Boolean).join(\"\\n\")}}()},function(t,e){t.exports=function(t,e){for(var i=[],s={},r=0;r<e.length;r++){var n=e[r],o=n[0],l=n[1],a=n[2],u=n[3],h={id:t+\":\"+r,css:l,media:a,sourceMap:u};s[o]?s[o].parts.push(h):i.push(s[o]={id:o,parts:[h]})}return i}}])});\n\n/***/ }),\n/* 16 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\nvar render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{attrs:{\"id\":\"geshem\"}},[_c('div',{attrs:{\"id\":\"datetime\"}},[_c('div',{attrs:{\"id\":\"date\"}},[_vm._v(_vm._s(_vm.date))]),_vm._v(\" \"),_c('div',{attrs:{\"id\":\"time\"}},[_vm._v(_vm._s(_vm.time))])]),_vm._v(\" \"),_c('div',{attrs:{\"id\":\"slider\"}},[_c('vue-slider',{ref:\"slider\",attrs:{\"min\":1,\"max\":7,\"height\":20,\"dot-size\":45,\"tooltip\":false},model:{value:(_vm.slider),callback:function ($$v) {_vm.slider=$$v},expression:\"slider\"}})],1)])}\nvar staticRenderFns = []\nvar esExports = { render: render, staticRenderFns: staticRenderFns }\n/* harmony default export */ __webpack_exports__[\"a\"] = (esExports);\n\n/***/ })\n/******/ ]);\n\n\n// WEBPACK FOOTER //\n// build.js"," \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// 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 = \"/static/js/\";\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = 2);\n\n\n\n// WEBPACK FOOTER //\n// webpack/bootstrap 28c446f8136708d15869","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","(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;o<r.length;o++)s(r[o]);return s})({1:[function(_dereq_,module,exports){\n!function(t,n){\"object\"==typeof exports&&\"undefined\"!=typeof module?module.exports=n():\"function\"==typeof define&&define.amd?define(n):t.glMatrix=n()}(this,function(){\"use strict\";function t(t,n,r){var e=n[0],a=n[1],o=n[2];return t[0]=e*r[0]+a*r[3]+o*r[6],t[1]=e*r[1]+a*r[4]+o*r[7],t[2]=e*r[2]+a*r[5]+o*r[8],t}function n(t,n,r){var e=n[0],a=n[1],o=n[2],u=n[3];return t[0]=r[0]*e+r[4]*a+r[8]*o+r[12]*u,t[1]=r[1]*e+r[5]*a+r[9]*o+r[13]*u,t[2]=r[2]*e+r[6]*a+r[10]*o+r[14]*u,t[3]=r[3]*e+r[7]*a+r[11]*o+r[15]*u,t}function r(){var t=new Float32Array(4);return t[0]=1,t[1]=0,t[2]=0,t[3]=1,t}function e(t,n,r){var e=n[0],a=n[1],o=n[2],u=n[3],i=Math.sin(r),c=Math.cos(r);return t[0]=e*c+o*i,t[1]=a*c+u*i,t[2]=e*-i+o*c,t[3]=a*-i+u*c,t}function a(t,n,r){var e=n[0],a=n[1],o=n[2],u=n[3],i=r[0],c=r[1];return t[0]=e*i,t[1]=a*i,t[2]=o*c,t[3]=u*c,t}function o(){var t=new Float32Array(9);return t[0]=1,t[1]=0,t[2]=0,t[3]=0,t[4]=1,t[5]=0,t[6]=0,t[7]=0,t[8]=1,t}function u(t,n){var r=Math.sin(n),e=Math.cos(n);return t[0]=e,t[1]=r,t[2]=0,t[3]=-r,t[4]=e,t[5]=0,t[6]=0,t[7]=0,t[8]=1,t}function i(){var t=new Float32Array(16);return t[0]=1,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=1,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[10]=1,t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,t}function c(t){return t[0]=1,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=1,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[10]=1,t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,t}function f(t,n){var r=n[0],e=n[1],a=n[2],o=n[3],u=n[4],i=n[5],c=n[6],f=n[7],v=n[8],s=n[9],l=n[10],M=n[11],h=n[12],m=n[13],y=n[14],d=n[15],p=r*i-e*u,w=r*c-a*u,A=r*f-o*u,F=e*c-a*i,x=e*f-o*i,b=a*f-o*c,g=v*m-s*h,j=v*y-l*h,R=v*d-M*h,X=s*y-l*m,Z=s*d-M*m,k=l*d-M*y,q=p*k-w*Z+A*X+F*R-x*j+b*g;return q?(q=1/q,t[0]=(i*k-c*Z+f*X)*q,t[1]=(a*Z-e*k-o*X)*q,t[2]=(m*b-y*x+d*F)*q,t[3]=(l*x-s*b-M*F)*q,t[4]=(c*R-u*k-f*j)*q,t[5]=(r*k-a*R+o*j)*q,t[6]=(y*A-h*b-d*w)*q,t[7]=(v*b-l*A+M*w)*q,t[8]=(u*Z-i*R+f*g)*q,t[9]=(e*R-r*Z-o*g)*q,t[10]=(h*x-m*A+d*p)*q,t[11]=(s*A-v*x-M*p)*q,t[12]=(i*j-u*X-c*g)*q,t[13]=(r*X-e*j+a*g)*q,t[14]=(m*w-h*F-y*p)*q,t[15]=(v*F-s*w+l*p)*q,t):null}function v(t,n,r){var e=n[0],a=n[1],o=n[2],u=n[3],i=n[4],c=n[5],f=n[6],v=n[7],s=n[8],l=n[9],M=n[10],h=n[11],m=n[12],y=n[13],d=n[14],p=n[15],w=r[0],A=r[1],F=r[2],x=r[3];return t[0]=w*e+A*i+F*s+x*m,t[1]=w*a+A*c+F*l+x*y,t[2]=w*o+A*f+F*M+x*d,t[3]=w*u+A*v+F*h+x*p,w=r[4],A=r[5],F=r[6],x=r[7],t[4]=w*e+A*i+F*s+x*m,t[5]=w*a+A*c+F*l+x*y,t[6]=w*o+A*f+F*M+x*d,t[7]=w*u+A*v+F*h+x*p,w=r[8],A=r[9],F=r[10],x=r[11],t[8]=w*e+A*i+F*s+x*m,t[9]=w*a+A*c+F*l+x*y,t[10]=w*o+A*f+F*M+x*d,t[11]=w*u+A*v+F*h+x*p,w=r[12],A=r[13],F=r[14],x=r[15],t[12]=w*e+A*i+F*s+x*m,t[13]=w*a+A*c+F*l+x*y,t[14]=w*o+A*f+F*M+x*d,t[15]=w*u+A*v+F*h+x*p,t}function s(t,n,r){var e,a,o,u,i,c,f,v,s,l,M,h,m=r[0],y=r[1],d=r[2];return n===t?(t[12]=n[0]*m+n[4]*y+n[8]*d+n[12],t[13]=n[1]*m+n[5]*y+n[9]*d+n[13],t[14]=n[2]*m+n[6]*y+n[10]*d+n[14],t[15]=n[3]*m+n[7]*y+n[11]*d+n[15]):(e=n[0],a=n[1],o=n[2],u=n[3],i=n[4],c=n[5],f=n[6],v=n[7],s=n[8],l=n[9],M=n[10],h=n[11],t[0]=e,t[1]=a,t[2]=o,t[3]=u,t[4]=i,t[5]=c,t[6]=f,t[7]=v,t[8]=s,t[9]=l,t[10]=M,t[11]=h,t[12]=e*m+i*y+s*d+n[12],t[13]=a*m+c*y+l*d+n[13],t[14]=o*m+f*y+M*d+n[14],t[15]=u*m+v*y+h*d+n[15]),t}function l(t,n,r){var e=r[0],a=r[1],o=r[2];return t[0]=n[0]*e,t[1]=n[1]*e,t[2]=n[2]*e,t[3]=n[3]*e,t[4]=n[4]*a,t[5]=n[5]*a,t[6]=n[6]*a,t[7]=n[7]*a,t[8]=n[8]*o,t[9]=n[9]*o,t[10]=n[10]*o,t[11]=n[11]*o,t[12]=n[12],t[13]=n[13],t[14]=n[14],t[15]=n[15],t}function M(t,n,r){var e=Math.sin(r),a=Math.cos(r),o=n[4],u=n[5],i=n[6],c=n[7],f=n[8],v=n[9],s=n[10],l=n[11];return n!==t&&(t[0]=n[0],t[1]=n[1],t[2]=n[2],t[3]=n[3],t[12]=n[12],t[13]=n[13],t[14]=n[14],t[15]=n[15]),t[4]=o*a+f*e,t[5]=u*a+v*e,t[6]=i*a+s*e,t[7]=c*a+l*e,t[8]=f*a-o*e,t[9]=v*a-u*e,t[10]=s*a-i*e,t[11]=l*a-c*e,t}function h(t,n,r){var e=Math.sin(r),a=Math.cos(r),o=n[0],u=n[1],i=n[2],c=n[3],f=n[4],v=n[5],s=n[6],l=n[7];return n!==t&&(t[8]=n[8],t[9]=n[9],t[10]=n[10],t[11]=n[11],t[12]=n[12],t[13]=n[13],t[14]=n[14],t[15]=n[15]),t[0]=o*a+f*e,t[1]=u*a+v*e,t[2]=i*a+s*e,t[3]=c*a+l*e,t[4]=f*a-o*e,t[5]=v*a-u*e,t[6]=s*a-i*e,t[7]=l*a-c*e,t}function m(t,n,r,e,a){var o=1/Math.tan(n/2),u=1/(e-a);return t[0]=o/r,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=o,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[10]=(a+e)*u,t[11]=-1,t[12]=0,t[13]=0,t[14]=2*a*e*u,t[15]=0,t}function y(t,n,r,e,a,o,u){var i=1/(n-r),c=1/(e-a),f=1/(o-u);return t[0]=-2*i,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=-2*c,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[10]=2*f,t[11]=0,t[12]=(n+r)*i,t[13]=(a+e)*c,t[14]=(u+o)*f,t[15]=1,t}(function(){var t=new Float32Array(3);t[0]=0,t[1]=0,t[2]=0})(),function(){var t=new Float32Array(4);t[0]=0,t[1]=0,t[2]=0,t[3]=0}();return{vec3:{transformMat3:t},vec4:{transformMat4:n},mat2:{create:r,rotate:e,scale:a},mat3:{create:o,fromRotation:u},mat4:{create:i,identity:c,translate:s,scale:l,multiply:v,perspective:m,rotateX:M,rotateZ:h,invert:f,ortho:y}}});\n},{}],2:[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)},multByPoint:function(t){return this.clone()._multByPoint(t)},divByPoint:function(t){return this.clone()._divByPoint(t)},mult:function(t){return this.clone()._mult(t)},div:function(t){return this.clone()._div(t)},rotate:function(t){return this.clone()._rotate(t)},rotateAround:function(t,n){return this.clone()._rotateAround(t,n)},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},_multByPoint:function(t){return this.x*=t.x,this.y*=t.y,this},_divByPoint:function(t){return this.x/=t.x,this.y/=t.y,this},_unit:function(){return this._div(this.mag()),this},_perp:function(){var t=this.y;return this.y=this.x,this.x=-t,this},_rotate:function(t){var 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},_rotateAround:function(t,n){var i=Math.cos(t),s=Math.sin(t),r=n.x+i*(this.x-n.x)-s*(this.y-n.y),h=n.y+s*(this.x-n.x)+i*(this.y-n.y);return this.x=r,this.y=h,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},{}],3:[function(_dereq_,module,exports){\n!function(t,e){\"object\"==typeof exports&&\"undefined\"!=typeof module?module.exports=e():\"function\"==typeof define&&define.amd?define(e):t.ShelfPack=e()}(this,function(){function t(t,e,i){i=i||{},this.w=t||64,this.h=e||64,this.autoResize=!!i.autoResize,this.shelves=[],this.freebins=[],this.stats={},this.bins={},this.maxId=0}function e(t,e,i){this.x=0,this.y=t,this.w=this.free=e,this.h=i}function i(t,e,i,s,h,n,r){this.id=t,this.x=e,this.y=i,this.w=s,this.h=h,this.maxw=n||s,this.maxh=r||h,this.refcount=0}return t.prototype.pack=function(t,e){t=[].concat(t),e=e||{};for(var i,s,h,n,r=[],f=0;f<t.length;f++)if(i=t[f].w||t[f].width,s=t[f].h||t[f].height,h=t[f].id,i&&s){if(!(n=this.packOne(i,s,h)))continue;e.inPlace&&(t[f].x=n.x,t[f].y=n.y,t[f].id=n.id),r.push(n)}return this.shrink(),r},t.prototype.packOne=function(t,i,s){var h,n,r,f,o={freebin:-1,shelf:-1,waste:1/0},a=0;if(\"string\"==typeof s||\"number\"==typeof s){if(h=this.getBin(s))return this.ref(h),h;\"number\"==typeof s&&(this.maxId=Math.max(s,this.maxId))}else s=++this.maxId;for(f=0;f<this.freebins.length;f++){if(h=this.freebins[f],i===h.maxh&&t===h.maxw)return this.allocFreebin(f,t,i,s);i>h.maxh||t>h.maxw||i<=h.maxh&&t<=h.maxw&&(r=h.maxw*h.maxh-t*i)<o.waste&&(o.waste=r,o.freebin=f)}for(f=0;f<this.shelves.length;f++)if(n=this.shelves[f],a+=n.h,!(t>n.free)){if(i===n.h)return this.allocShelf(f,t,i,s);i>n.h||i<n.h&&(r=(n.h-i)*t)<o.waste&&(o.freebin=-1,o.waste=r,o.shelf=f)}if(-1!==o.freebin)return this.allocFreebin(o.freebin,t,i,s);if(-1!==o.shelf)return this.allocShelf(o.shelf,t,i,s);if(i<=this.h-a&&t<=this.w)return n=new e(a,this.w,i),this.allocShelf(this.shelves.push(n)-1,t,i,s);if(this.autoResize){var u,l,c,p;return u=l=this.h,c=p=this.w,(c<=u||t>c)&&(p=2*Math.max(t,c)),(u<c||i>u)&&(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.shrink=function(){if(this.shelves.length>0){for(var t=0,e=0,i=0;i<this.shelves.length;i++){var s=this.shelves[i];e+=s.h,t=Math.max(s.w-s.free,t)}this.resize(t,e)}},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;i<this.shelves.length;i++)this.shelves[i].resize(t);return!0},e.prototype.alloc=function(t,e,s){if(t>this.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},{}],4:[function(_dereq_,module,exports){\n\"use strict\";function TinySDF(t,i,s,e,h,r){this.fontSize=t||24,this.buffer=void 0===i?3:i,this.cutoff=e||.25,this.fontFamily=h||\"sans-serif\",this.fontWeight=r||\"normal\",this.radius=s||8;var a=this.size=this.fontSize+2*this.buffer;this.canvas=document.createElement(\"canvas\"),this.canvas.width=this.canvas.height=a,this.ctx=this.canvas.getContext(\"2d\"),this.ctx.font=this.fontWeight+\" \"+this.fontSize+\"px \"+this.fontFamily,this.ctx.textBaseline=\"middle\",this.ctx.fillStyle=\"black\",this.gridOuter=new Float64Array(a*a),this.gridInner=new Float64Array(a*a),this.f=new Float64Array(a),this.d=new Float64Array(a),this.z=new Float64Array(a+1),this.v=new Int16Array(a),this.middle=Math.round(a/2*(navigator.userAgent.indexOf(\"Gecko/\")>=0?1.2:1))}function edt(t,i,s,e,h,r,a){for(var n=0;n<i;n++){for(var o=0;o<s;o++)e[o]=t[o*i+n];for(edt1d(e,h,r,a,s),o=0;o<s;o++)t[o*i+n]=h[o]}for(o=0;o<s;o++){for(n=0;n<i;n++)e[n]=t[o*i+n];for(edt1d(e,h,r,a,i),n=0;n<i;n++)t[o*i+n]=Math.sqrt(h[n])}}function edt1d(t,i,s,e,h){s[0]=0,e[0]=-INF,e[1]=+INF;for(var r=1,a=0;r<h;r++){for(var n=(t[r]+r*r-(t[s[a]]+s[a]*s[a]))/(2*r-2*s[a]);n<=e[a];)a--,n=(t[r]+r*r-(t[s[a]]+s[a]*s[a]))/(2*r-2*s[a]);a++,s[a]=r,e[a]=n,e[a+1]=+INF}for(r=0,a=0;r<h;r++){for(;e[a+1]<r;)a++;i[r]=(r-s[a])*(r-s[a])+t[s[a]]}}module.exports=TinySDF;var INF=1e20;TinySDF.prototype.draw=function(t){this.ctx.clearRect(0,0,this.size,this.size),this.ctx.fillText(t,this.buffer,this.middle);for(var i=this.ctx.getImageData(0,0,this.size,this.size),s=new Uint8ClampedArray(this.size*this.size),e=0;e<this.size*this.size;e++){var h=i.data[4*e+3]/255;this.gridOuter[e]=1===h?0:0===h?INF:Math.pow(Math.max(0,.5-h),2),this.gridInner[e]=1===h?INF:0===h?0:Math.pow(Math.max(0,h-.5),2)}for(edt(this.gridOuter,this.size,this.size,this.f,this.d,this.v,this.z),edt(this.gridInner,this.size,this.size,this.f,this.d,this.v,this.z),e=0;e<this.size*this.size;e++){var r=this.gridOuter[e]-this.gridInner[e];s[e]=Math.max(0,Math.min(255,Math.round(255-255*(r/this.radius+this.cutoff))))}return s};\n},{}],5:[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){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)<i)return s;var u=this.sampleCurveDerivativeX(s);if(Math.abs(u)<1e-6)break;s-=h/u}if(e=0,r=1,(s=t)<e)return e;if(s>r)return r;for(;e<r;){if(h=this.sampleCurveX(s),Math.abs(h-t)<i)return s;t>h?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},{}],6:[function(_dereq_,module,exports){\nmodule.exports.VectorTile=_dereq_(\"./lib/vectortile.js\"),module.exports.VectorTileFeature=_dereq_(\"./lib/vectortilefeature.js\"),module.exports.VectorTileLayer=_dereq_(\"./lib/vectortilelayer.js\");\n},{\"./lib/vectortile.js\":7,\"./lib/vectortilefeature.js\":8,\"./lib/vectortilelayer.js\":9}],7:[function(_dereq_,module,exports){\n\"use strict\";function VectorTile(e,r){this.layers=e.readFields(readTile,{},r)}function readTile(e,r,i){if(3===e){var t=new VectorTileLayer(i,i.readVarint()+i.pos);t.length&&(r[t.name]=t)}}var VectorTileLayer=_dereq_(\"./vectortilelayer\");module.exports=VectorTile;\n},{\"./vectortilelayer\":9}],8:[function(_dereq_,module,exports){\n\"use strict\";function VectorTileFeature(e,t,r,a,i){this.properties={},this.extent=r,this.type=0,this._pbf=e,this._geometry=-1,this._keys=a,this._values=i,e.readFields(readFeature,this,t)}function readFeature(e,t,r){1==e?t.id=r.readVarint():2==e?readTag(r,t):3==e?t.type=r.readVarint():4==e&&(t._geometry=r.pos)}function readTag(e,t){for(var r=e.readVarint()+e.pos;e.pos<r;){var a=t._keys[e.readVarint()],i=t._values[e.readVarint()];t.properties[a]=i}}function classifyRings(e){var t=e.length;if(t<=1)return[e];for(var r,a,i=[],o=0;o<t;o++){var n=signedArea(e[o]);0!==n&&(void 0===a&&(a=n<0),a===n<0?(r&&i.push(r),r=[e[o]]):r.push(e[o]))}return r&&i.push(r),i}function signedArea(e){for(var t,r,a=0,i=0,o=e.length,n=o-1;i<o;n=i++)t=e[i],r=e[n],a+=(r.x-t.x)*(t.y+r.y);return a}var Point=_dereq_(\"@mapbox/point-geometry\");module.exports=VectorTileFeature,VectorTileFeature.types=[\"Unknown\",\"Point\",\"LineString\",\"Polygon\"],VectorTileFeature.prototype.loadGeometry=function(){var e=this._pbf;e.pos=this._geometry;for(var t,r=e.readVarint()+e.pos,a=1,i=0,o=0,n=0,s=[];e.pos<r;){if(!i){var p=e.readVarint();a=7&p,i=p>>3}if(i--,1===a||2===a)o+=e.readSVarint(),n+=e.readSVarint(),1===a&&(t&&s.push(t),t=[]),t.push(new Point(o,n));else{if(7!==a)throw new Error(\"unknown command \"+a);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,a=0,i=0,o=0,n=1/0,s=-1/0,p=1/0,h=-1/0;e.pos<t;){if(!a){var u=e.readVarint();r=7&u,a=u>>3}if(a--,1===r||2===r)i+=e.readSVarint(),o+=e.readSVarint(),i<n&&(n=i),i>s&&(s=i),o<p&&(p=o),o>h&&(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 a(e){for(var t=0;t<e.length;t++){var r=e[t],a=180-360*(r.y+p)/n;e[t]=[360*(r.x+s)/n-180,360/Math.PI*Math.atan(Math.exp(a*Math.PI/180))-90]}}var i,o,n=this.extent*Math.pow(2,r),s=this.extent*e,p=this.extent*t,h=this.loadGeometry(),u=VectorTileFeature.types[this.type];switch(this.type){case 1:var d=[];for(i=0;i<h.length;i++)d[i]=h[i][0];h=d,a(h);break;case 2:for(i=0;i<h.length;i++)a(h[i]);break;case 3:for(h=classifyRings(h),i=0;i<h.length;i++)for(o=0;o<h[i].length;o++)a(h[i][o])}1===h.length?h=h[0]:u=\"Multi\"+u;var f={type:\"Feature\",geometry:{type:u,coordinates:h},properties:this.properties};return\"id\"in this&&(f.id=this.id),f};\n},{\"@mapbox/point-geometry\":2}],9:[function(_dereq_,module,exports){\n\"use strict\";function VectorTileLayer(e,t){this.version=1,this.name=null,this.extent=4096,this.length=0,this._pbf=e,this._keys=[],this._values=[],this._features=[],e.readFields(readLayer,this,t),this.length=this._features.length}function readLayer(e,t,r){15===e?t.version=r.readVarint():1===e?t.name=r.readString():5===e?t.extent=r.readVarint():2===e?t._features.push(r.pos):3===e?t._keys.push(r.readString()):4===e&&t._values.push(readValueMessage(r))}function readValueMessage(e){for(var t=null,r=e.readVarint()+e.pos;e.pos<r;){var a=e.readVarint()>>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\":8}],10:[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){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){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);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})});\n},{}],11:[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;d<i;d+=r)v=e[d],f=e[d+1],v<o&&(o=v),f<l&&(l=f),v>u&&(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<r;x+=t)a=insertNode(x,e[x],e[x+1],a);else for(x=r-t;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.x<x.x?i.x<a.x?i.x:a.x:x.x<a.x?x.x:a.x,l=i.y<x.y?i.y<a.y?i.y:a.y:x.y<a.y?x.y:a.y,u=i.x>x.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<x;i++)a=n[i]*t,o=i<x-1?n[i+1]*t:e.length,l=linkedList(e,a,o,t,!1),l===l.next&&(l.steiner=!0),u.push(getLeftmost(l));for(u.sort(compareX),i=0;i<u.length;i++)eliminateHole(u[i],r),r=filterPoints(r,r.next);return r}function compareX(e,n){return e.x-n.x}function eliminateHole(e,n){if(n=findHoleBridge(e,n)){var r=splitPolygon(n,e);filterPoints(r,r.next)}}function findHoleBridge(e,n){var r,t=n,i=e.x,x=e.y,a=-1/0;do{if(x<=t.y&&x>=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.next.x?t:t.next}}t=t.next}while(t!==n);if(!r)return null;if(i===a)return r.prev;var l,u=r,s=r.x,v=r.y,f=1/0;for(t=r.next;t!==u;)i>=t.x&&t.x>=s&&pointInTriangle(x<v?i:a,x,s,v,x<v?a:i,x,t.x,t.y)&&((l=Math.abs(x-t.y)/(i-t.x))<f||l===f&&t.x>r.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;n<u&&(o++,t=t.nextZ);n++);for(l=u;o>0||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<r.x&&(r=n),n=n.next}while(n!==e);return r}function pointInTriangle(e,n,r,t,i,x,a,o){return(i-a)*(n-o)-(e-a)*(x-o)>=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;x<r;x+=t)i+=(e[a]-e[x])*(e[x+1]+e[a+1]),a=x;return i}module.exports=earcut,earcut.deviation=function(e,n,r,t){var i=n&&n.length,x=i?n[0]*r:e.length,a=Math.abs(signedArea(e,0,x,r));if(i)for(var o=0,l=n.length;o<l;o++){var u=n[o]*r,s=o<l-1?n[o+1]*r:e.length;a-=Math.abs(signedArea(e,u,s,r))}var v=0;for(o=0;o<t.length;o+=3){var f=t[o]*r,y=t[o+1]*r,d=t[o+2]*r;v+=Math.abs((e[f]-e[d])*(e[y+1]-e[f+1])-(e[f]-e[y])*(e[d+1]-e[f+1]))}return 0===a&&0===v?0:Math.abs((v-a)/a)},earcut.flatten=function(e){for(var n=e[0][0].length,r={vertices:[],holes:[],dimensions:n},t=0,i=0;i<e.length;i++){for(var x=0;x<e[i].length;x++)for(var a=0;a<n;a++)r.vertices.push(e[i][x][a]);i>0&&(t+=e[i-1].length,r.holes.push(t))}return r};\n},{}],12:[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;n<r.coordinates.length;n++)e+=polygonArea(r.coordinates[n]);return e}return null}function polygonArea(r){var e=0;if(r&&r.length>0){e+=Math.abs(ringArea(r[0]));for(var n=1;n<r.length;n++)e-=Math.abs(ringArea(r[n]))}return e}function ringArea(r){var e=0;if(r.length>2){for(var n,t,o=0;o<r.length-1;o++)n=r[o],t=r[o+1],e+=rad(t[0]-n[0])*(2+Math.sin(rad(n[1]))+Math.sin(rad(t[1])));e=e*wgs84.RADIUS*wgs84.RADIUS/2}return e}function rad(r){return r*Math.PI/180}var wgs84=_dereq_(\"wgs84\");module.exports.geometry=geometry,module.exports.ring=ringArea;\n},{\"wgs84\":40}],13:[function(_dereq_,module,exports){\nfunction rewind(r,e){switch(r&&r.type||null){case\"FeatureCollection\":return r.features=r.features.map(curryOuter(rewind,e)),r;case\"Feature\":return r.geometry=rewind(r.geometry,e),r;case\"Polygon\":case\"MultiPolygon\":return correct(r,e);default:return r}}function curryOuter(r,e){return function(n){return r(n,e)}}function correct(r,e){return\"Polygon\"===r.type?r.coordinates=correctRings(r.coordinates,e):\"MultiPolygon\"===r.type&&(r.coordinates=r.coordinates.map(curryOuter(correctRings,e))),r}function correctRings(r,e){e=!!e,r[0]=wind(r[0],e);for(var n=1;n<r.length;n++)r[n]=wind(r[n],!e);return r}function wind(r,e){return cw(r)===e?r:r.reverse()}function cw(r){return geojsonArea.ring(r)>=0}var geojsonArea=_dereq_(\"geojson-area\");module.exports=rewind;\n},{\"geojson-area\":12}],14:[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)return null;for(var h=[],p=0;p<e.length;p++){var a,c,o=e[p],f=o.geometry,g=o.type;if(a=o.min[u],c=o.max[u],a>=t&&c<=n)h.push(o);else if(!(a>n||c<t)){var v=1===g?clipPoints(f,t,n,u):clipGeometry(f,t,n,u,i,3===g);v.length&&h.push(createFeature(o.tags,g,v,o.id))}}return h.length?h:null}function clipPoints(e,r,t,n){for(var u=[],i=0;i<e.length;i++){var l=e[i],s=l[n];s>=r&&s<=t&&u.push(l)}return u}function clipGeometry(e,r,t,n,u,i){for(var l=[],s=0;s<e.length;s++){var h,p,a,c=0,o=0,f=null,g=e[s],v=g.area,m=g.dist,w=g.outer,S=g.length,d=[];for(p=0;p<S-1;p++)h=f||g[p],f=g[p+1],c=o||h[n],o=f[n],c<r?o>t?(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?o<r?(d.push(u(h,f,t),u(h,f,r)),i||(d=newSlice(l,d,v,m,w))):o<=t&&d.push(u(h,f,t)):(d.push(h),o<r?(d.push(u(h,f,r)),i||(d=newSlice(l,d,v,m,w))):o>t&&(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\":16}],15:[function(_dereq_,module,exports){\n\"use strict\";function convert(e,t){var r=[];if(\"FeatureCollection\"===e.type)for(var o=0;o<e.features.length;o++)convertFeature(r,e.features[o],t);else\"Feature\"===e.type?convertFeature(r,e,t):convertFeature(r,{geometry:e},t);return r}function convertFeature(e,t,r){if(null!==t.geometry){var o,a,i,n,u=t.geometry,c=u.type,l=u.coordinates,s=t.properties,p=t.id;if(\"Point\"===c)e.push(createFeature(s,1,[projectPoint(l)],p));else if(\"MultiPoint\"===c)e.push(createFeature(s,1,project(l),p));else if(\"LineString\"===c)e.push(createFeature(s,2,[project(l,r)],p));else if(\"MultiLineString\"===c||\"Polygon\"===c){for(i=[],o=0;o<l.length;o++)n=project(l[o],r),\"Polygon\"===c&&(n.outer=0===o),i.push(n);e.push(createFeature(s,\"Polygon\"===c?3:2,i,p))}else if(\"MultiPolygon\"===c){for(i=[],o=0;o<l.length;o++)for(a=0;a<l[o].length;a++)n=project(l[o][a],r),n.outer=0===a,i.push(n);e.push(createFeature(s,3,i,p))}else{if(\"GeometryCollection\"!==c)throw new Error(\"Input data is not a valid GeoJSON object.\");for(o=0;o<u.geometries.length;o++)convertFeature(e,{geometry:u.geometries[o],properties:s},r)}}}function project(e,t){for(var r=[],o=0;o<e.length;o++)r.push(projectPoint(e[o]));return t&&(simplify(r,t),calcSize(r)),r}function projectPoint(e){var t=Math.sin(e[1]*Math.PI/180),r=e[0]/360+.5,o=.5-.25*Math.log((1+t)/(1-t))/Math.PI;return o=o<0?0:o>1?1:o,[r,o,0]}function calcSize(e){for(var t,r,o=0,a=0,i=0;i<e.length-1;i++)t=r||e[i],r=e[i+1],o+=t[0]*r[1]-r[0]*t[1],a+=Math.abs(r[0]-t[0])+Math.abs(r[1]-t[1]);e.area=Math.abs(o/2),e.dist=a}module.exports=convert;var simplify=_dereq_(\"./simplify\"),createFeature=_dereq_(\"./feature\");\n},{\"./feature\":16,\"./simplify\":18}],16:[function(_dereq_,module,exports){\n\"use strict\";function createFeature(e,t,a,n){var r={id:n||null,type:t,geometry:a,tags:e||null,min:[1/0,1/0],max:[-1/0,-1/0]};return calcBBox(r),r}function calcBBox(e){var t=e.geometry,a=e.min,n=e.max;if(1===e.type)calcRingBBox(a,n,t);else for(var r=0;r<t.length;r++)calcRingBBox(a,n,t[r]);return e}function calcRingBBox(e,t,a){for(var n,r=0;r<a.length;r++)n=a[r],e[0]=Math.min(n[0],e[0]),t[0]=Math.max(n[0],t[0]),e[1]=Math.min(n[1],e[1]),t[1]=Math.max(n[1],t[1])}module.exports=createFeature;\n},{}],17:[function(_dereq_,module,exports){\n\"use strict\";function geojsonvt(e,t){return new GeoJSONVT(e,t)}function GeoJSONVT(e,t){t=this.options=extend(Object.create(this.options),t);var i=t.debug;i&&console.time(\"preprocess data\");var o=1<<t.maxZoom,n=convert(e,t.tolerance/(o*t.extent));this.tiles={},this.tileCoords=[],i&&(console.timeEnd(\"preprocess data\"),console.log(\"index: maxZoom: %d, maxPoints: %d\",t.indexMaxZoom,t.indexMaxPoints),console.time(\"generate tiles\"),this.stats={},this.total=0),n=wrap(n,t.buffer/t.extent,intersectX),n.length&&this.splitTile(n,0,0,0),i&&(n.length&&console.log(\"features: %d, points: %d\",this.tiles[0].numFeatures,this.tiles[0].numPoints),console.timeEnd(\"generate tiles\"),console.log(\"tiles generated:\",this.total,JSON.stringify(this.stats)))}function toID(e,t,i){return 32*((1<<e)*i+t)+e}function intersectX(e,t,i){return[i,(i-e[0])*(t[1]-e[1])/(t[0]-e[0])+e[1],1]}function intersectY(e,t,i){return[(i-e[1])*(t[0]-e[0])/(t[1]-e[1])+e[0],i,1]}function extend(e,t){for(var i in t)e[i]=t[i];return e}function isClippedSquare(e,t,i){var o=e.source;if(1!==o.length)return!1;var n=o[0];if(3!==n.type||n.geometry.length>1)return!1;var r=n.geometry[0].length;if(5!==r)return!1;for(var s=0;s<r;s++){var l=transform.point(n.geometry[0][s],t,e.z2,e.x,e.y);if(l[0]!==-i&&l[0]!==t+i||l[1]!==-i&&l[1]!==t+i)return!1}return!0}module.exports=geojsonvt;var convert=_dereq_(\"./convert\"),transform=_dereq_(\"./transform\"),clip=_dereq_(\"./clip\"),wrap=_dereq_(\"./wrap\"),createTile=_dereq_(\"./tile\");GeoJSONVT.prototype.options={maxZoom:14,indexMaxZoom:5,indexMaxPoints:1e5,solidChildren:!1,tolerance:3,extent:4096,buffer:64,debug:0},GeoJSONVT.prototype.splitTile=function(e,t,i,o,n,r,s){for(var l=[e,t,i,o],a=this.options,u=a.debug,c=null;l.length;){o=l.pop(),i=l.pop(),t=l.pop(),e=l.pop();var p=1<<t,d=toID(t,i,o),m=this.tiles[d],f=t===a.maxZoom?0:a.tolerance/(p*a.extent);if(!m&&(u>1&&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<<n-t;if(i!==Math.floor(r/x)||o!==Math.floor(s/x))continue}else if(t===a.indexMaxZoom||m.numPoints<=a.indexMaxPoints)continue;if(a.solidChildren||!isClippedSquare(m,a.extent,a.buffer)){m.source=null,u>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<<e;t=(t%s+s)%s;var l=toID(e,t,i);if(this.tiles[l])return transform.tile(this.tiles[l],n);r>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<<e-d;l=toID(d,Math.floor(t/m),Math.floor(i/m))}return this.tiles[l]?transform.tile(this.tiles[l],n):null};\n},{\"./clip\":14,\"./convert\":15,\"./tile\":19,\"./transform\":20,\"./wrap\":21}],18:[function(_dereq_,module,exports){\n\"use strict\";function simplify(t,i){var e,p,r,s,o=i*i,f=t.length,u=0,n=f-1,g=[];for(t[u][2]=1,t[n][2]=1;n;){for(p=0,e=u+1;e<n;e++)(r=getSqSegDist(t[e],t[u],t[n]))>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},{}],19:[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;m<e.length;m++){a.numFeatures++,addFeature(a,e[m],t,u);var s=e[m].min,l=e[m].max;s[0]<a.min[0]&&(a.min[0]=s[0]),s[1]<a.min[1]&&(a.min[1]=s[1]),l[0]>a.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;t<s.length;t++)o.push(s[t]),e.numPoints++,e.numSimplified++;else for(t=0;t<s.length;t++)if(a=s[t],i||!(2===l&&a.dist<r||3===l&&a.area<f)){var d=[];for(u=0;u<a.length;u++)m=a[u],(i||m[2]>f)&&(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<u;a=t++)n=e[t],r=e[a],i+=(r[0]-n[0])*(n[1]+r[1]);return i}module.exports=createTile;\n},{}],20:[function(_dereq_,module,exports){\n\"use strict\";function transformTile(r,t){if(r.transformed)return r;var n,e,o,f=r.z2,a=r.x,s=r.y;for(n=0;n<r.features.length;n++){var i=r.features[n],u=i.geometry;if(1===i.type)for(e=0;e<u.length;e++)u[e]=transformPoint(u[e],t,f,a,s);else for(e=0;e<u.length;e++){var m=u[e];for(o=0;o<m.length;o++)m[o]=transformPoint(m[o],t,f,a,s)}}return r.transformed=!0,r}function transformPoint(r,t,n,e,o){return[Math.round(t*(r[0]*n-e)),Math.round(t*(r[1]*n-o))]}exports.tile=transformTile,exports.point=transformPoint;\n},{}],21:[function(_dereq_,module,exports){\n\"use strict\";function wrap(r,e,t){var o=r,a=clip(r,1,-1-e,e,0,t,-1,2),s=clip(r,1,1-e,2+e,0,t,-1,2);return(a||s)&&(o=clip(r,1,-e,1+e,0,t,-1,2)||[],a&&(o=shiftFeatureCoords(a,1).concat(o)),s&&(o=o.concat(shiftFeatureCoords(s,-1)))),o}function shiftFeatureCoords(r,e){for(var t=[],o=0;o<r.length;o++){var a,s=r[o],i=s.type;if(1===i)a=shiftCoords(s.geometry,e);else{a=[];for(var u=0;u<s.geometry.length;u++)a.push(shiftCoords(s.geometry[u],e))}t.push(createFeature(s.tags,i,a,s.id))}return t}function shiftCoords(r,e){var t=[];t.area=r.area,t.dist=r.dist;for(var o=0;o<r.length;o++)t.push([r[o][0]+e,r[o][1],r[o][2]]);return t}var clip=_dereq_(\"./clip\"),createFeature=_dereq_(\"./feature\");module.exports=wrap;\n},{\"./clip\":14,\"./feature\":16}],22:[function(_dereq_,module,exports){\n\"use strict\";function GridIndex(t,r,e){var s=this.cells=[];if(t instanceof ArrayBuffer){this.arrayBuffer=t;var i=new Int32Array(this.arrayBuffer);t=i[0],r=i[1],e=i[2],this.d=r+2*e;for(var h=0;h<this.d*this.d;h++){var n=i[NUM_PARAMS+h],o=i[NUM_PARAMS+h+1];s.push(n===o?null:i.subarray(n,o))}var l=i[NUM_PARAMS+s.length],a=i[NUM_PARAMS+s.length+1];this.keys=i.subarray(l,a),this.bboxes=i.subarray(a),this.insert=this._insertReadonly}else{this.d=r+2*e;for(var d=0;d<this.d*this.d;d++)s.push([]);this.keys=[],this.bboxes=[]}this.n=r,this.extent=t,this.padding=e,this.scale=r/t,this.uid=0;var f=e/r*t;this.min=-f,this.max=t+f}module.exports=GridIndex;var NUM_PARAMS=3;GridIndex.prototype.insert=function(t,r,e,s,i){this._forEachCell(r,e,s,i,this._insertCell,this.uid++),this.keys.push(t),this.bboxes.push(r),this.bboxes.push(e),this.bboxes.push(s),this.bboxes.push(i)},GridIndex.prototype._insertReadonly=function(){throw\"Cannot insert into a GridIndex created from an ArrayBuffer.\"},GridIndex.prototype._insertCell=function(t,r,e,s,i,h){this.cells[i].push(h)},GridIndex.prototype.query=function(t,r,e,s){var i=this.min,h=this.max;if(t<=i&&r<=i&&h<=e&&h<=s)return Array.prototype.slice.call(this.keys);var n=[],o={};return this._forEachCell(t,r,e,s,this._queryCell,n,o),n},GridIndex.prototype._queryCell=function(t,r,e,s,i,h,n){var o=this.cells[i];if(null!==o)for(var l=this.keys,a=this.bboxes,d=0;d<o.length;d++){var f=o[d];if(void 0===n[f]){var u=4*f;t<=a[u+2]&&r<=a[u+3]&&e>=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<this.cells.length;s++)e+=this.cells[s].length;var i=new Int32Array(r+e+this.keys.length+this.bboxes.length);i[0]=this.extent,i[1]=this.n,i[2]=this.padding;for(var h=r,n=0;n<t.length;n++){var o=t[n];i[NUM_PARAMS+n]=h,i.set(o,h),h+=o.length}return i[NUM_PARAMS+t.length]=h,i.set(this.keys,h),h+=this.keys.length,i[NUM_PARAMS+t.length+1]=h,i.set(this.bboxes,h),h+=this.bboxes.length,i.buffer};\n},{}],23:[function(_dereq_,module,exports){\nexports.read=function(a,o,t,r,h){var M,p,w=8*h-r-1,f=(1<<w)-1,e=f>>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<<e)-1,N=i>>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<<h|w,e+=h;e>0;a[t+s]=255&p,s+=u,p/=256,e-=8);a[t+s-u]|=128*l};\n},{}],24:[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<t.length;r++)this.ids[r]=r,this.coords[2*r]=i(t[r]),this.coords[2*r+1]=e(t[r]);sort(this.ids,this.coords,this.nodeSize,0,this.ids.length-1,0)}function defaultGetX(t){return t[0]}function defaultGetY(t){return t[1]}var sort=_dereq_(\"./sort\"),range=_dereq_(\"./range\"),within=_dereq_(\"./within\");module.exports=kdbush,KDBush.prototype={range:function(t,i,e,s){return range(this.ids,this.coords,t,i,e,s,this.nodeSize)},within:function(t,i,e){return within(this.ids,this.coords,t,i,e,this.nodeSize)}};\n},{\"./range\":25,\"./sort\":26,\"./within\":27}],25:[function(_dereq_,module,exports){\n\"use strict\";function range(p,r,s,u,h,e,o){for(var a,t,n=[0,p.length-1,0],f=[];n.length;){var l=n.pop(),v=n.pop(),g=n.pop();if(v-g<=o)for(var i=g;i<=v;i++)a=r[2*i],t=r[2*i+1],a>=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},{}],26:[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);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 c=a[2*o+e],h=s,i=r;for(swapItem(t,a,s,o),a[2*r+e]>c&&swapItem(t,a,s,r);h<i;){for(swapItem(t,a,h,i),h++,i--;a[2*h+e]<c;)h++;for(;a[2*i+e]>c;)i--}a[2*s+e]===c?swapItem(t,a,s,i):(i++,swapItem(t,a,i,r)),i<=o&&(s=i+1),o<=i&&(r=i-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},{}],27:[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},{}],28:[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},{}],29:[function(_dereq_,module,exports){\n\"use strict\";function Pbf(t){this.buf=ArrayBuffer.isView&&ArrayBuffer.isView(t)?t:new Uint8Array(t||0),this.pos=0,this.type=0,this.length=this.buf.length}function readVarintRemainder(t,i,e){var r,s,n=e.buf;if(s=n[e.pos++],r=(112&s)>>4,s<128)return toNum(t,r,i);if(s=n[e.pos++],r|=(127&s)<<3,s<128)return toNum(t,r,i);if(s=n[e.pos++],r|=(127&s)<<10,s<128)return toNum(t,r,i);if(s=n[e.pos++],r|=(127&s)<<17,s<128)return toNum(t,r,i);if(s=n[e.pos++],r|=(127&s)<<24,s<128)return toNum(t,r,i);if(s=n[e.pos++],r|=(1&s)<<31,s<128)return toNum(t,r,i);throw new Error(\"Expected varint not more than 10 bytes\")}function readPackedEnd(t){return t.type===Pbf.Bytes?t.readVarint()+t.pos:t.pos+1}function toNum(t,i,e){return e?4294967296*i+(t>>>0):4294967296*(i>>>0)+(t>>>0)}function writeBigVarint(t,i){var e,r;if(t>=0?(e=t%4294967296|0,r=t/4294967296|0):(e=~(-t%4294967296),r=~(-t/4294967296),4294967295^e?e=e+1|0:(e=0,r=r+1|0)),t>=0x10000000000000000||t<-0x10000000000000000)throw new Error(\"Given varint doesn't fit into 10 bytes\");i.realloc(10),writeBigVarintLow(e,r,i),writeBigVarintHigh(r,i)}function writeBigVarintLow(t,i,e){e.buf[e.pos++]=127&t|128,t>>>=7,e.buf[e.pos++]=127&t|128,t>>>=7,e.buf[e.pos++]=127&t|128,t>>>=7,e.buf[e.pos++]=127&t|128,t>>>=7,e.buf[e.pos]=127&t}function writeBigVarintHigh(t,i){var e=(7&t)<<4;i.buf[i.pos++]|=e|((t>>>=3)?128:0),t&&(i.buf[i.pos++]=127&t|((t>>>=7)?128:0),t&&(i.buf[i.pos++]=127&t|((t>>>=7)?128:0),t&&(i.buf[i.pos++]=127&t|((t>>>=7)?128:0),t&&(i.buf[i.pos++]=127&t|((t>>>=7)?128:0),t&&(i.buf[i.pos++]=127&t)))))}function makeRoomForExtraLength(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<t.length;e++)i.writeVarint(t[e])}function writePackedSVarint(t,i){for(var e=0;e<t.length;e++)i.writeSVarint(t[e])}function writePackedFloat(t,i){for(var e=0;e<t.length;e++)i.writeFloat(t[e])}function writePackedDouble(t,i){for(var e=0;e<t.length;e++)i.writeDouble(t[e])}function writePackedBoolean(t,i){for(var e=0;e<t.length;e++)i.writeBoolean(t[e])}function writePackedFixed32(t,i){for(var e=0;e<t.length;e++)i.writeFixed32(t[e])}function writePackedSFixed32(t,i){for(var e=0;e<t.length;e++)i.writeSFixed32(t[e])}function writePackedFixed64(t,i){for(var e=0;e<t.length;e++)i.writeFixed64(t[e])}function writePackedSFixed64(t,i){for(var e=0;e<t.length;e++)i.writeSFixed64(t[e])}function readUInt32(t,i){return(t[i]|t[i+1]<<8|t[i+2]<<16)+16777216*t[i+3]}function writeInt32(t,i,e){t[e]=i,t[e+1]=i>>>8,t[e+2]=i>>>16,t[e+3]=i>>>24}function readInt32(t,i){return(t[i]|t[i+1]<<8|t[i+2]<<16)+(t[i+3]<<24)}function readUtf8(t,i,e){for(var r=\"\",s=i;s<e;){var n=t[s],o=null,a=n>239?4:n>223?3:n>191?2:1;if(s+a>e)break;var h,u,f;1===a?n<128&&(o=n):2===a?128==(192&(h=t[s+1]))&&(o=(31&n)<<6|63&h)<=127&&(o=null):3===a?(h=t[s+1],u=t[s+2],128==(192&h)&&128==(192&u)&&((o=(15&n)<<12|(63&h)<<6|63&u)<=2047||o>=55296&&o<=57343)&&(o=null)):4===a&&(h=t[s+1],u=t[s+2],f=t[s+3],128==(192&h)&&128==(192&u)&&128==(192&f)&&((o=(15&n)<<18|(63&h)<<12|(63&u)<<6|63&f)<=65535||o>=1114112)&&(o=null)),null===o?(o=65533,a=1):o>65535&&(o-=65536,r+=String.fromCharCode(o>>>10&1023|55296),o=56320|1023&o),r+=String.fromCharCode(o),s+=a}return r}function writeUtf8(t,i,e){for(var r,s,n=0;n<i.length;n++){if((r=i.charCodeAt(n))>55295&&r<57344){if(!s){r>56319||n+1===i.length?(t[e++]=239,t[e++]=191,t[e++]=189):s=r;continue}if(r<56320){t[e++]=239,t[e++]=191,t[e++]=189,s=r;continue}r=s-55296<<10|r-56320|65536,s=null}else s&&(t[e++]=239,t[e++]=191,t[e++]=189,s=null);r<128?t[e++]=r:(r<2048?t[e++]=r>>6|192:(r<65536?t[e++]=r>>12|224:(t[e++]=r>>18|240,t[e++]=r>>12&63|128),t[e++]=r>>6&63|128),t[e++]=63&r|128)}return e}module.exports=Pbf;var ieee754=_dereq_(\"ieee754\");Pbf.Varint=0,Pbf.Fixed64=1,Pbf.Bytes=2,Pbf.Fixed32=5;var SHIFT_LEFT_32=4294967296,SHIFT_RIGHT_32=1/SHIFT_LEFT_32;Pbf.prototype={destroy:function(){this.buf=null},readFields:function(t,i,e){for(e=e||this.length;this.pos<e;){var r=this.readVarint(),s=r>>3,n=this.pos;this.type=7&r,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=readUInt32(this.buf,this.pos);return this.pos+=4,t},readSFixed32:function(){var t=readInt32(this.buf,this.pos);return this.pos+=4,t},readFixed64:function(){var t=readUInt32(this.buf,this.pos)+readUInt32(this.buf,this.pos+4)*SHIFT_LEFT_32;return this.pos+=8,t},readSFixed64:function(){var t=readUInt32(this.buf,this.pos)+readInt32(this.buf,this.pos+4)*SHIFT_LEFT_32;return this.pos+=8,t},readFloat:function(){var t=ieee754.read(this.buf,this.pos,!0,23,4);return this.pos+=4,t},readDouble:function(){var t=ieee754.read(this.buf,this.pos,!0,52,8);return this.pos+=8,t},readVarint:function(t){var i,e,r=this.buf;return e=r[this.pos++],i=127&e,e<128?i:(e=r[this.pos++],i|=(127&e)<<7,e<128?i:(e=r[this.pos++],i|=(127&e)<<14,e<128?i:(e=r[this.pos++],i|=(127&e)<<21,e<128?i:(e=r[this.pos],i|=(15&e)<<28,readVarintRemainder(i,t,this)))))},readVarint64:function(){return this.readVarint(!0)},readSVarint:function(){var t=this.readVarint();return t%2==1?(t+1)/-2:t/2},readBoolean:function(){return Boolean(this.readVarint())},readString:function(){var t=this.readVarint()+this.pos,i=readUtf8(this.buf,this.pos,t);return this.pos=t,i},readBytes:function(){var t=this.readVarint()+this.pos,i=this.buf.subarray(this.pos,t);return this.pos=t,i},readPackedVarint:function(t,i){var e=readPackedEnd(this);for(t=t||[];this.pos<e;)t.push(this.readVarint(i));return t},readPackedSVarint:function(t){var i=readPackedEnd(this);for(t=t||[];this.pos<i;)t.push(this.readSVarint());return t},readPackedBoolean:function(t){var i=readPackedEnd(this);for(t=t||[];this.pos<i;)t.push(this.readBoolean());return t},readPackedFloat:function(t){var i=readPackedEnd(this);for(t=t||[];this.pos<i;)t.push(this.readFloat());return t},readPackedDouble:function(t){var i=readPackedEnd(this);for(t=t||[];this.pos<i;)t.push(this.readDouble());return t},readPackedFixed32:function(t){var i=readPackedEnd(this);for(t=t||[];this.pos<i;)t.push(this.readFixed32());return t},readPackedSFixed32:function(t){var i=readPackedEnd(this);for(t=t||[];this.pos<i;)t.push(this.readSFixed32());return t},readPackedFixed64:function(t){var i=readPackedEnd(this);for(t=t||[];this.pos<i;)t.push(this.readFixed64());return t},readPackedSFixed64:function(t){var i=readPackedEnd(this);for(t=t||[];this.pos<i;)t.push(this.readSFixed64());return t},skip:function(t){var i=7&t;if(i===Pbf.Varint)for(;this.buf[this.pos++]>127;);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;i<this.pos+t;)i*=2;if(i!==this.length){var e=new Uint8Array(i);e.set(this.buf),this.buf=e,this.length=i}},finish:function(){return this.length=this.pos,this.pos=0,this.buf.subarray(0,this.length)},writeFixed32:function(t){this.realloc(4),writeInt32(this.buf,t,this.pos),this.pos+=4},writeSFixed32:function(t){this.realloc(4),writeInt32(this.buf,t,this.pos),this.pos+=4},writeFixed64:function(t){this.realloc(8),writeInt32(this.buf,-1&t,this.pos),writeInt32(this.buf,Math.floor(t*SHIFT_RIGHT_32),this.pos+4),this.pos+=8},writeSFixed64:function(t){this.realloc(8),writeInt32(this.buf,-1&t,this.pos),writeInt32(this.buf,Math.floor(t*SHIFT_RIGHT_32),this.pos+4),this.pos+=8},writeVarint:function(t){if((t=+t||0)>268435455||t<0)return void writeBigVarint(t,this);this.realloc(4),this.buf[this.pos++]=127&t|(t>127?128:0),t<=127||(this.buf[this.pos++]=127&(t>>>=7)|(t>127?128:0),t<=127||(this.buf[this.pos++]=127&(t>>>=7)|(t>127?128:0),t<=127||(this.buf[this.pos++]=t>>>7&127)))},writeSVarint:function(t){this.writeVarint(t<0?2*-t-1:2*t)},writeBoolean:function(t){this.writeVarint(Boolean(t))},writeString:function(t){t=String(t),this.realloc(4*t.length),this.pos++;var i=this.pos;this.pos=writeUtf8(this.buf,t,this.pos);var e=this.pos-i;e>=128&&makeRoomForExtraLength(i,e,this),this.pos=i-1,this.writeVarint(e),this.pos+=e},writeFloat:function(t){this.realloc(4),ieee754.write(this.buf,t,this.pos,!0,23,4),this.pos+=4},writeDouble:function(t){this.realloc(8),ieee754.write(this.buf,t,this.pos,!0,52,8),this.pos+=8},writeBytes:function(t){var i=t.length;this.writeVarint(i),this.realloc(i);for(var e=0;e<i;e++)this.buf[this.pos++]=t[e]},writeRawMessage:function(t,i){this.pos++;var e=this.pos;t(i,this);var r=this.pos-e;r>=128&&makeRoomForExtraLength(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},{\"ieee754\":23}],30:[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&&currentQueue&&(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=[];++queueIndex<t;)currentQueue&&currentQueue[queueIndex].run();queueIndex=-1,t=queue.length}currentQueue=null,draining=!1,runClearTimeout(e)}}function Item(e,t){this.fun=e,this.array=t}function noop(){}var process=module.exports={},cachedSetTimeout,cachedClearTimeout;!function(){try{cachedSetTimeout=\"function\"==typeof setTimeout?setTimeout:defaultSetTimout}catch(e){cachedSetTimeout=defaultSetTimout}try{cachedClearTimeout=\"function\"==typeof clearTimeout?clearTimeout:defaultClearTimeout}catch(e){cachedClearTimeout=defaultClearTimeout}}();var queue=[],draining=!1,currentQueue,queueIndex=-1;process.nextTick=function(e){var t=new Array(arguments.length-1);if(arguments.length>1)for(var r=1;r<arguments.length;r++)t[r-1]=arguments[r];queue.push(new Item(e,t)),1!==queue.length||draining||runTimeout(drainQueue)},Item.prototype.run=function(){this.fun.apply(null,this.array)},process.title=\"browser\",process.browser=!0,process.env={},process.argv=[],process.version=\"\",process.versions={},process.on=noop,process.addListener=noop,process.once=noop,process.off=noop,process.removeListener=noop,process.removeAllListeners=noop,process.emit=noop,process.prependListener=noop,process.prependOnceListener=noop,process.listeners=function(e){return[]},process.binding=function(e){throw new Error(\"process.binding is not supported\")},process.cwd=function(){return\"/\"},process.chdir=function(e){throw new Error(\"process.chdir is not supported\")},process.umask=function(){return 0};\n},{}],31:[function(_dereq_,module,exports){\n\"use strict\";function partialSort(a,t,r,o,p){for(r=r||0,o=o||a.length-1,p=p||defaultCompare;o>r;){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 n=a[t],h=r,u=o;for(swap(a,r,t),p(a[o],n)>0&&swap(a,r,o);h<u;){for(swap(a,h,u),h++,u--;p(a[h],n)<0;)h++;for(;p(a[u],n)>0;)u--}0===p(a[r],n)?swap(a,r,u):(u++,swap(a,u,o)),u<=t&&(r=u+1),t<=u&&(o=u-1)}}function swap(a,t,r){var o=a[t];a[t]=a[r],a[r]=o}function defaultCompare(a,t){return a<t?-1:a>t?1:0}module.exports=partialSort;\n},{}],32:[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,n,o,i){return{x:t,y:e,zoom:1/0,id:o,properties:i,parentId:-1,numPoints:n}}function createPointCluster(t,e){var n=t.geometry.coordinates;return{x:lngX(n[0]),y:latY(n[1]),zoom:1/0,id:e,parentId:-1}}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,n=e>=1e4?Math.round(e/1e3)+\"k\":e>=1e3?Math.round(e/100)/10+\"k\":e;return extend(extend({},t.properties),{cluster:!0,cluster_id:t.id,point_count:e,point_count_abbreviated:n})}function lngX(t){return t/360+.5}function latY(t){var e=Math.sin(t*Math.PI/180),n=.5-.25*Math.log((1+e)/(1-e))/Math.PI;return n<0?0:n>1?1:n}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 n in e)t[n]=e[n];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,reduce:null,initial:function(){return{}},map:function(t){return t}},load:function(t){var e=this.options.log;e&&console.time(\"total time\");var n=\"prepare \"+t.length+\" points\";e&&console.time(n),this.points=t;var o=t.map(createPointCluster);e&&console.timeEnd(n);for(var i=this.options.maxZoom;i>=this.options.minZoom;i--){var r=+Date.now();this.trees[i+1]=kdbush(o,getX,getY,this.options.nodeSize,Float32Array),o=this._cluster(o,i),e&&console.log(\"z%d: %d clusters in %dms\",i,o.length,+Date.now()-r)}return this.trees[this.options.minZoom]=kdbush(o,getX,getY,this.options.nodeSize,Float32Array),e&&console.timeEnd(\"total time\"),this},getClusters:function(t,e){for(var n=this.trees[this._limitZoom(e)],o=n.range(lngX(t[0]),latY(t[3]),lngX(t[2]),latY(t[1])),i=[],r=0;r<o.length;r++){var s=n.points[o[r]];i.push(s.numPoints?getClusterJSON(s):this.points[s.id])}return i},getChildren:function(t,e){for(var n=this.trees[e+1].points[t],o=this.options.radius/(this.options.extent*Math.pow(2,e)),i=this.trees[e+1].within(n.x,n.y,o),r=[],s=0;s<i.length;s++){var u=this.trees[e+1].points[i[s]];u.parentId===t&&r.push(u.numPoints?getClusterJSON(u):this.points[u.id])}return r},getLeaves:function(t,e,n,o){n=n||10,o=o||0;var i=[];return this._appendLeaves(i,t,e,n,o,0),i},getTile:function(t,e,n){var o=this.trees[this._limitZoom(t)],i=Math.pow(2,t),r=this.options.extent,s=this.options.radius,u=s/r,a=(n-u)/i,p=(n+1+u)/i,h={features:[]};return this._addTileFeatures(o.range((e-u)/i,a,(e+1+u)/i,p),o.points,e,n,i,h),0===e&&this._addTileFeatures(o.range(1-u/i,a,1,p),o.points,i,n,i,h),e===i-1&&this._addTileFeatures(o.range(0,a,u/i,p),o.points,-1,n,i,h),h.features.length?h:null},getClusterExpansionZoom:function(t,e){for(;e<this.options.maxZoom;){var n=this.getChildren(t,e);if(e++,1!==n.length)break;t=n[0].properties.cluster_id}return e},_appendLeaves:function(t,e,n,o,i,r){for(var s=this.getChildren(e,n),u=0;u<s.length;u++){var a=s[u].properties;if(a.cluster?r+a.point_count<=i?r+=a.point_count:r=this._appendLeaves(t,a.cluster_id,n+1,o,i,r):r<i?r++:t.push(s[u]),t.length===o)break}return r},_addTileFeatures:function(t,e,n,o,i,r){for(var s=0;s<t.length;s++){var u=e[t[s]];r.features.push({type:1,geometry:[[Math.round(this.options.extent*(u.x*i-n)),Math.round(this.options.extent*(u.y*i-o))]],tags:u.numPoints?getClusterProperties(u):this.points[u.id].properties})}},_limitZoom:function(t){return Math.max(this.options.minZoom,Math.min(t,this.options.maxZoom+1))},_cluster:function(t,e){for(var n=[],o=this.options.radius/(this.options.extent*Math.pow(2,e)),i=0;i<t.length;i++){var r=t[i];if(!(r.zoom<=e)){r.zoom=e;var s=this.trees[e+1],u=s.within(r.x,r.y,o),a=r.numPoints||1,p=r.x*a,h=r.y*a,l=null;this.options.reduce&&(l=this.options.initial(),this._accumulate(l,r));for(var c=0;c<u.length;c++){var d=s.points[u[c]];if(e<d.zoom){var m=d.numPoints||1;d.zoom=e,p+=d.x*m,h+=d.y*m,a+=m,d.parentId=i,this.options.reduce&&this._accumulate(l,d)}}1===a?n.push(r):(r.parentId=i,n.push(createCluster(p/a,h/a,a,i,l)))}}return n},_accumulate:function(t,e){var n=e.numPoints?e.properties:this.options.map(this.points[e.id].properties);this.options.reduce(t,n)}};\n},{\"kdbush\":24}],33:[function(_dereq_,module,exports){\n\"use strict\";function TinyQueue(t,i){if(!(this instanceof TinyQueue))return new TinyQueue(t,i);if(this.data=t||[],this.length=this.data.length,this.compare=i||defaultCompare,this.length>0)for(var e=this.length>>1;e>=0;e--)this._down(e)}function defaultCompare(t,i){return t<i?-1:t>i?1:0}module.exports=TinyQueue,TinyQueue.prototype={push:function(t){this.data.push(t),this.length++,this._up(this.length-1)},pop:function(){if(0!==this.length){var t=this.data[0];return this.length--,this.length>0&&(this.data[0]=this.data[this.length],this._down(0)),this.data.pop(),t}},peek:function(){return this.data[0]},_up:function(t){for(var i=this.data,e=this.compare,h=i[t];t>0;){var n=t-1>>1,a=i[n];if(e(h,a)>=0)break;i[t]=a,t=n}i[t]=h},_down:function(t){for(var i=this.data,e=this.compare,h=this.length,n=h>>1,a=i[t];t<n;){var s=1+(t<<1),u=s+1,r=i[s];if(u<h&&e(i[u],r)<0&&(s=u,r=i[u]),e(r,a)>=0)break;i[t]=r,t=s}i[t]=a}};\n},{}],34:[function(_dereq_,module,exports){\n\"function\"==typeof Object.create?module.exports=function(t,e){t.super_=e,t.prototype=Object.create(e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}})}:module.exports=function(t,e){t.super_=e;var o=function(){};o.prototype=e.prototype,t.prototype=new o,t.prototype.constructor=t};\n},{}],35:[function(_dereq_,module,exports){\nmodule.exports=function(o){return o&&\"object\"==typeof o&&\"function\"==typeof o.copy&&\"function\"==typeof o.fill&&\"function\"==typeof o.readUInt8};\n},{}],36:[function(_dereq_,module,exports){\n(function (process,global){\nfunction inspect(e,r){var t={seen:[],stylize:stylizeNoColor};return arguments.length>=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)){c=\" [Function\"+(r.name?\": \"+r.name:\"\")+\"]\"}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 p;return p=a?formatArray(e,r,t,s,o):o.map(function(n){return formatProperty(e,r,t,s,n,a)}),e.seen.pop(),reduceToSingleString(p,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<u;++s)hasOwnProperty(r,String(s))?o.push(formatProperty(e,r,t,n,String(s),!0)):o.push(\"\");return i.forEach(function(i){i.match(/^\\d+$/)||o.push(formatProperty(e,r,t,n,i,!0))}),o}function formatProperty(e,r,t,n,i,o){var s,u,c;if(c=Object.getOwnPropertyDescriptor(r,i)||{value:r[i]},c.get?u=c.set?e.stylize(\"[Getter/Setter]\",\"special\"):e.stylize(\"[Getter]\",\"special\"):c.set&&(u=e.stylize(\"[Setter]\",\"special\")),hasOwnProperty(n,i)||(s=\"[\"+i+\"]\"),u||(e.seen.indexOf(c.value)<0?(u=isNull(t)?formatValue(e,c.value,null):formatValue(e,c.value,t-1),u.indexOf(\"\\n\")>-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;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<arguments.length;t++)r.push(inspect(arguments[t]));return r.join(\" \")}for(var t=1,n=arguments,i=n.length,o=String(e).replace(formatRegExp,function(e){if(\"%%\"===e)return\"%\";if(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<i;s=n[++t])isNull(s)||!isObject(s)?o+=\" \"+s:o+=\" \"+inspect(s);return o},exports.deprecate=function(e,r){function t(){if(!n){if(process.throwDeprecation)throw new Error(r);process.traceDeprecation?console.trace(r):console.error(r),n=!0}return e.apply(this,arguments)}if(isUndefined(global.process))return function(){return exports.deprecate(e,r).apply(this,arguments)};if(!0===process.noDeprecation)return e;var n=!1;return t};var debugs={},debugEnviron;exports.debuglog=function(e){if(isUndefined(debugEnviron)&&(debugEnviron=process.env.NODE_DEBUG||\"\"),e=e.toUpperCase(),!debugs[e])if(new RegExp(\"\\\\b\"+e+\"\\\\b\",\"i\").test(debugEnviron)){var r=process.pid;debugs[e]=function(){var t=exports.format.apply(exports,arguments);console.error(\"%s %d: %s\",e,r,t)}}else debugs[e]=function(){};return debugs[e]},exports.inspect=inspect,inspect.colors={bold:[1,22],italic:[3,23],underline:[4,24],inverse:[7,27],white:[37,39],grey:[90,39],black:[30,39],blue:[34,39],cyan:[36,39],green:[32,39],magenta:[35,39],red:[31,39],yellow:[33,39]},inspect.styles={special:\"cyan\",number:\"yellow\",boolean:\"yellow\",undefined:\"grey\",null:\"bold\",string:\"green\",date:\"magenta\",regexp:\"red\"},exports.isArray=isArray,exports.isBoolean=isBoolean,exports.isNull=isNull,exports.isNullOrUndefined=isNullOrUndefined,exports.isNumber=isNumber,exports.isString=isString,exports.isSymbol=isSymbol,exports.isUndefined=isUndefined,exports.isRegExp=isRegExp,exports.isObject=isObject,exports.isDate=isDate,exports.isError=isError,exports.isFunction=isFunction,exports.isPrimitive=isPrimitive,exports.isBuffer=_dereq_(\"./support/isBuffer\");var months=[\"Jan\",\"Feb\",\"Mar\",\"Apr\",\"May\",\"Jun\",\"Jul\",\"Aug\",\"Sep\",\"Oct\",\"Nov\",\"Dec\"];exports.log=function(){console.log(\"%s - %s\",timestamp(),exports.format.apply(exports,arguments))},exports.inherits=_dereq_(\"inherits\"),exports._extend=function(e,r){if(!r||!isObject(r))return e;for(var t=Object.keys(r),n=t.length;n--;)e[t[n]]=r[t[n]];return e};\n}).call(this,_dereq_('_process'),typeof global !== \"undefined\" ? global : typeof self !== \"undefined\" ? self : typeof window !== \"undefined\" ? window : {})\n\n},{\"./support/isBuffer\":35,\"_process\":30,\"inherits\":34}],37:[function(_dereq_,module,exports){\nfunction fromVectorTileJs(e){var r=new Pbf;return writeTile(e,r),r.finish()}function fromGeojsonVt(e){var r={};for(var t in e)r[t]=new GeoJSONWrapper(e[t].features),r[t].name=t;return fromVectorTileJs({layers:r})}function writeTile(e,r){for(var t in e.layers)r.writeMessage(3,writeLayer,e.layers[t])}function writeLayer(e,r){r.writeVarintField(15,e.version||1),r.writeStringField(1,e.name||\"\"),r.writeVarintField(5,e.extent||4096);var t,i={keys:[],values:[],keycache:{},valuecache:{}};for(t=0;t<e.length;t++)i.feature=e.feature(t),r.writeMessage(2,writeFeature,i);var a=i.keys;for(t=0;t<a.length;t++)r.writeStringField(3,a[t]);var o=i.values;for(t=0;t<o.length;t++)r.writeMessage(4,writeValue,o[t])}function writeFeature(e,r){var t=e.feature;void 0!==t.id&&r.writeVarintField(1,t.id),r.writeMessage(2,writeProperties,e),r.writeVarintField(3,t.type),r.writeMessage(4,writeGeometry,t)}function writeProperties(e,r){var t=e.feature,i=e.keys,a=e.values,o=e.keycache,n=e.valuecache;for(var l in t.properties){var s=o[l];void 0===s&&(i.push(l),s=i.length-1,o[l]=s),r.writeVarint(s);var u=t.properties[l],f=typeof u;\"string\"!==f&&\"boolean\"!==f&&\"number\"!==f&&(u=JSON.stringify(u));var w=f+\":\"+u,v=n[w];void 0===v&&(a.push(u),v=a.length-1,n[w]=v),r.writeVarint(v)}}function command(e,r){return(r<<3)+(7&e)}function zigzag(e){return e<<1^e>>31}function writeGeometry(e,r){for(var t=e.loadGeometry(),i=e.type,a=0,o=0,n=t.length,l=0;l<n;l++){var s=t[l],u=1;1===i&&(u=s.length),r.writeVarint(command(1,u));for(var f=0;f<s.length;f++){1===f&&1!==i&&r.writeVarint(command(2,s.length-1));var w=s[f].x-a,v=s[f].y-o;r.writeVarint(zigzag(w)),r.writeVarint(zigzag(v)),a+=w,o+=v}}}function writeValue(e,r){var t=typeof e;\"string\"===t?r.writeStringField(1,e):\"boolean\"===t?r.writeBooleanField(7,e):\"number\"===t&&(e%1!=0?r.writeDoubleField(3,e):e<0?r.writeSVarintField(6,e):r.writeVarintField(5,e))}var Pbf=_dereq_(\"pbf\"),GeoJSONWrapper=_dereq_(\"./lib/geojson_wrapper\");module.exports=fromVectorTileJs,module.exports.fromVectorTileJs=fromVectorTileJs,module.exports.fromGeojsonVt=fromGeojsonVt,module.exports.GeoJSONWrapper=GeoJSONWrapper;\n},{\"./lib/geojson_wrapper\":38,\"pbf\":29}],38:[function(_dereq_,module,exports){\n\"use strict\";function GeoJSONWrapper(e){this.features=e,this.length=e.length}function FeatureWrapper(e){this.id=\"number\"==typeof e.id?e.id:void 0,this.type=e.type,this.rawGeometry=1===e.type?[e.geometry]:e.geometry,this.properties=e.tags,this.extent=4096}var Point=_dereq_(\"@mapbox/point-geometry\"),VectorTileFeature=_dereq_(\"@mapbox/vector-tile\").VectorTileFeature;module.exports=GeoJSONWrapper,GeoJSONWrapper.prototype.feature=function(e){return new FeatureWrapper(this.features[e])},FeatureWrapper.prototype.loadGeometry=function(){var e=this.rawGeometry;this.geometry=[];for(var t=0;t<e.length;t++){for(var r=e[t],o=[],a=0;a<r.length;a++)o.push(new Point(r[a][0],r[a][1]));this.geometry.push(o)}return this.geometry},FeatureWrapper.prototype.bbox=function(){this.geometry||this.loadGeometry();for(var e=this.geometry,t=1/0,r=-1/0,o=1/0,a=-1/0,p=0;p<e.length;p++)for(var i=e[p],n=0;n<i.length;n++){var h=i[n];t=Math.min(t,h.x),r=Math.max(r,h.x),o=Math.min(o,h.y),a=Math.max(a,h.y)}return[t,o,r,a]},FeatureWrapper.prototype.toGeoJSON=VectorTileFeature.prototype.toGeoJSON;\n},{\"@mapbox/point-geometry\":2,\"@mapbox/vector-tile\":6}],39:[function(_dereq_,module,exports){\nvar bundleFn=arguments[3],sources=arguments[4],cache=arguments[5],stringify=JSON.stringify;module.exports=function(r,e){function t(r){d[r]=!0;for(var e in sources[r][1]){var n=sources[r][1][e];d[n]||t(n)}}for(var n,o=Object.keys(cache),a=0,i=o.length;a<i;a++){var s=o[a],u=cache[s].exports;if(u===r||u&&u.default===r){n=s;break}}if(!n){n=Math.floor(Math.pow(16,8)*Math.random()).toString(16);for(var f={},a=0,i=o.length;a<i;a++){var s=o[a];f[s]=s}sources[n]=[Function([\"require\",\"module\",\"exports\"],\"(\"+r+\")(self)\"),f]}var c=Math.floor(Math.pow(16,8)*Math.random()).toString(16),l={};l[n]=n,sources[c]=[Function([\"require\"],\"var f = require(\"+stringify(n)+\");(f.default ? f.default : f)(self);\"),l];var d={};t(c);var g=\"(\"+bundleFn+\")({\"+Object.keys(d).map(function(r){return stringify(r)+\":[\"+sources[r][0]+\",\"+stringify(sources[r][1])+\"]\"}).join(\",\")+\"},{},[\"+stringify(c)+\"])\",v=window.URL||window.webkitURL||window.mozURL||window.msURL,w=new Blob([g],{type:\"text/javascript\"});if(e&&e.bare)return w;var h=v.createObjectURL(w),b=new Worker(h);return b.objectURL=h,b};\n},{}],40:[function(_dereq_,module,exports){\nmodule.exports.RADIUS=6378137,module.exports.FLATTENING=1/298.257223563,module.exports.POLAR_RADIUS=6356752.3142;\n},{}],41:[function(_dereq_,module,exports){\nmodule.exports={\"version\":\"0.40.1\"}\n},{}],42:[function(_dereq_,module,exports){\n\"use strict\";var util=_dereq_(\"../util/util\");module.exports={deserialize:function(e,r){var t={};if(!r)return t;for(var i=0,a=e;i<a.length;i+=1){var l=a[i],u=l.layerIds.map(function(e){return r.getLayer(e)}).filter(Boolean);if(0!==u.length)for(var n=u[0].createBucket(util.extend({layers:u},l)),o=0,f=u;o<f.length;o+=1){var s=f[o];t[s.id]=n}}return t}};\n},{\"../util/util\":223}],43:[function(_dereq_,module,exports){\n\"use strict\";function addCircleVertex(e,r,t,i,a){e.emplaceBack(2*r+(i+1)/2,2*t+(a+1)/2)}var ref=_dereq_(\"../segment\"),SegmentVector=ref.SegmentVector,VertexBuffer=_dereq_(\"../../gl/vertex_buffer\"),IndexBuffer=_dereq_(\"../../gl/index_buffer\"),ref$1=_dereq_(\"../program_configuration\"),ProgramConfigurationSet=ref$1.ProgramConfigurationSet,createVertexArrayType=_dereq_(\"../vertex_array_type\"),ref$2=_dereq_(\"../index_array_type\"),TriangleIndexArray=ref$2.TriangleIndexArray,loadGeometry=_dereq_(\"../load_geometry\"),EXTENT=_dereq_(\"../extent\"),circleInterface={layoutAttributes:[{name:\"a_pos\",components:2,type:\"Int16\"}],indexArrayType:TriangleIndexArray,paintAttributes:[{property:\"circle-color\"},{property:\"circle-radius\"},{property:\"circle-blur\"},{property:\"circle-opacity\"},{property:\"circle-stroke-color\"},{property:\"circle-stroke-width\"},{property:\"circle-stroke-opacity\"}]},LayoutVertexArrayType=createVertexArrayType(circleInterface.layoutAttributes),CircleBucket=function(e){this.zoom=e.zoom,this.overscaling=e.overscaling,this.layers=e.layers,this.index=e.index,this.layoutVertexArray=new LayoutVertexArrayType(e.layoutVertexArray),this.indexArray=new TriangleIndexArray(e.indexArray),this.programConfigurations=new ProgramConfigurationSet(circleInterface,e.layers,e.zoom,e.programConfigurations),this.segments=new SegmentVector(e.segments)};CircleBucket.prototype.populate=function(e,r){for(var t=this,i=0,a=e;i<a.length;i+=1){var o=a[i],n=o.feature,y=o.index,u=o.sourceLayerIndex;if(t.layers[0].filter(n)){var s=loadGeometry(n);t.addFeature(n,s),r.featureIndex.insert(n,s,y,u,t.index)}}},CircleBucket.prototype.isEmpty=function(){return 0===this.layoutVertexArray.length},CircleBucket.prototype.serialize=function(e){return{zoom:this.zoom,layerIds:this.layers.map(function(e){return e.id}),layoutVertexArray:this.layoutVertexArray.serialize(e),indexArray:this.indexArray.serialize(e),programConfigurations:this.programConfigurations.serialize(e),segments:this.segments.get()}},CircleBucket.prototype.upload=function(e){this.layoutVertexBuffer=new VertexBuffer(e,this.layoutVertexArray),this.indexBuffer=new IndexBuffer(e,this.indexArray),this.programConfigurations.upload(e)},CircleBucket.prototype.destroy=function(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.programConfigurations.destroy(),this.segments.destroy())},CircleBucket.prototype.addFeature=function(e,r){for(var t=this,i=0,a=r;i<a.length;i+=1)for(var o=a[i],n=0,y=o;n<y.length;n+=1){var u=y[n],s=u.x,c=u.y;if(!(s<0||s>=EXTENT||c<0||c>=EXTENT)){var l=t.segments.prepareSegment(4,t.layoutVertexArray,t.indexArray),p=l.vertexLength;addCircleVertex(t.layoutVertexArray,s,c,-1,-1),addCircleVertex(t.layoutVertexArray,s,c,1,-1),addCircleVertex(t.layoutVertexArray,s,c,1,1),addCircleVertex(t.layoutVertexArray,s,c,-1,1),t.indexArray.emplaceBack(p,p+1,p+2),t.indexArray.emplaceBack(p,p+3,p+2),l.vertexLength+=4,l.primitiveLength+=2}}this.programConfigurations.populatePaintArrays(this.layoutVertexArray.length,e.properties)},CircleBucket.programInterface=circleInterface,module.exports=CircleBucket;\n},{\"../../gl/index_buffer\":61,\"../../gl/vertex_buffer\":62,\"../extent\":48,\"../index_array_type\":50,\"../load_geometry\":51,\"../program_configuration\":53,\"../segment\":55,\"../vertex_array_type\":56}],44:[function(_dereq_,module,exports){\n\"use strict\";var ref=_dereq_(\"../segment\"),SegmentVector=ref.SegmentVector,VertexBuffer=_dereq_(\"../../gl/vertex_buffer\"),IndexBuffer=_dereq_(\"../../gl/index_buffer\"),ref$1=_dereq_(\"../program_configuration\"),ProgramConfigurationSet=ref$1.ProgramConfigurationSet,createVertexArrayType=_dereq_(\"../vertex_array_type\"),ref$2=_dereq_(\"../index_array_type\"),LineIndexArray=ref$2.LineIndexArray,TriangleIndexArray=ref$2.TriangleIndexArray,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\"}],indexArrayType:TriangleIndexArray,indexArrayType2:LineIndexArray,paintAttributes:[{property:\"fill-color\"},{property:\"fill-outline-color\"},{property:\"fill-opacity\"}]},LayoutVertexArrayType=createVertexArrayType(fillInterface.layoutAttributes),FillBucket=function(e){this.zoom=e.zoom,this.overscaling=e.overscaling,this.layers=e.layers,this.index=e.index,this.layoutVertexArray=new LayoutVertexArrayType(e.layoutVertexArray),this.indexArray=new TriangleIndexArray(e.indexArray),this.indexArray2=new LineIndexArray(e.indexArray2),this.programConfigurations=new ProgramConfigurationSet(fillInterface,e.layers,e.zoom,e.programConfigurations),this.segments=new SegmentVector(e.segments),this.segments2=new SegmentVector(e.segments2)};FillBucket.prototype.populate=function(e,r){for(var t=this,i=0,a=e;i<a.length;i+=1){var n=a[i],o=n.feature,s=n.index,y=n.sourceLayerIndex;if(t.layers[0].filter(o)){var l=loadGeometry(o);t.addFeature(o,l),r.featureIndex.insert(o,l,s,y,t.index)}}},FillBucket.prototype.isEmpty=function(){return 0===this.layoutVertexArray.length},FillBucket.prototype.serialize=function(e){return{zoom:this.zoom,layerIds:this.layers.map(function(e){return e.id}),layoutVertexArray:this.layoutVertexArray.serialize(e),indexArray:this.indexArray.serialize(e),indexArray2:this.indexArray2.serialize(e),programConfigurations:this.programConfigurations.serialize(e),segments:this.segments.get(),segments2:this.segments2.get()}},FillBucket.prototype.upload=function(e){this.layoutVertexBuffer=new VertexBuffer(e,this.layoutVertexArray),this.indexBuffer=new IndexBuffer(e,this.indexArray),this.indexBuffer2=new IndexBuffer(e,this.indexArray2),this.programConfigurations.upload(e)},FillBucket.prototype.destroy=function(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.indexBuffer2.destroy(),this.programConfigurations.destroy(),this.segments.destroy(),this.segments2.destroy())},FillBucket.prototype.addFeature=function(e,r){for(var t=this,i=0,a=classifyRings(r,EARCUT_MAX_RINGS);i<a.length;i+=1){for(var n=a[i],o=0,s=0,y=n;s<y.length;s+=1){o+=y[s].length}for(var l=t.segments.prepareSegment(o,t.layoutVertexArray,t.indexArray),u=l.vertexLength,f=[],g=[],x=0,p=n;x<p.length;x+=1){var h=p[x];if(0!==h.length){h!==n[0]&&g.push(f.length/2);var d=t.segments2.prepareSegment(h.length,t.layoutVertexArray,t.indexArray2),c=d.vertexLength;t.layoutVertexArray.emplaceBack(h[0].x,h[0].y),t.indexArray2.emplaceBack(c+h.length-1,c),f.push(h[0].x),f.push(h[0].y);for(var m=1;m<h.length;m++)t.layoutVertexArray.emplaceBack(h[m].x,h[m].y),t.indexArray2.emplaceBack(c+m-1,c+m),f.push(h[m].x),f.push(h[m].y);d.vertexLength+=h.length,d.primitiveLength+=h.length}}for(var A=earcut(f,g),B=0;B<A.length;B+=3)t.indexArray.emplaceBack(u+A[B],u+A[B+1],u+A[B+2]);l.vertexLength+=o,l.primitiveLength+=A.length/3}this.programConfigurations.populatePaintArrays(this.layoutVertexArray.length,e.properties)},FillBucket.programInterface=fillInterface,module.exports=FillBucket;\n},{\"../../gl/index_buffer\":61,\"../../gl/vertex_buffer\":62,\"../../util/classify_rings\":205,\"../index_array_type\":50,\"../load_geometry\":51,\"../program_configuration\":53,\"../segment\":55,\"../vertex_array_type\":56,\"earcut\":11}],45:[function(_dereq_,module,exports){\n\"use strict\";function addVertex(e,r,t,a,i,n,o,s){e.emplaceBack(r,t,2*Math.floor(a*FACTOR)+o,i*FACTOR*2,n*FACTOR*2,Math.round(s))}function isBoundaryEdge(e,r){return e.x===r.x&&(e.x<0||e.x>EXTENT)||e.y===r.y&&(e.y<0||e.y>EXTENT)}var ref=_dereq_(\"../segment\"),SegmentVector=ref.SegmentVector,MAX_VERTEX_ARRAY_LENGTH=ref.MAX_VERTEX_ARRAY_LENGTH,VertexBuffer=_dereq_(\"../../gl/vertex_buffer\"),IndexBuffer=_dereq_(\"../../gl/index_buffer\"),ref$1=_dereq_(\"../program_configuration\"),ProgramConfigurationSet=ref$1.ProgramConfigurationSet,createVertexArrayType=_dereq_(\"../vertex_array_type\"),ref$2=_dereq_(\"../index_array_type\"),TriangleIndexArray=ref$2.TriangleIndexArray,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\"}],indexArrayType:TriangleIndexArray,paintAttributes:[{property:\"fill-extrusion-base\"},{property:\"fill-extrusion-height\"},{property:\"fill-extrusion-color\"}]},FACTOR=Math.pow(2,13),LayoutVertexArrayType=createVertexArrayType(fillExtrusionInterface.layoutAttributes),FillExtrusionBucket=function(e){this.zoom=e.zoom,this.overscaling=e.overscaling,this.layers=e.layers,this.index=e.index,this.layoutVertexArray=new LayoutVertexArrayType(e.layoutVertexArray),this.indexArray=new TriangleIndexArray(e.indexArray),this.programConfigurations=new ProgramConfigurationSet(fillExtrusionInterface,e.layers,e.zoom,e.programConfigurations),this.segments=new SegmentVector(e.segments)};FillExtrusionBucket.prototype.populate=function(e,r){for(var t=this,a=0,i=e;a<i.length;a+=1){var n=i[a],o=n.feature,s=n.index,u=n.sourceLayerIndex;if(t.layers[0].filter(o)){var y=loadGeometry(o);t.addFeature(o,y),r.featureIndex.insert(o,y,s,u,t.index)}}},FillExtrusionBucket.prototype.isEmpty=function(){return 0===this.layoutVertexArray.length},FillExtrusionBucket.prototype.serialize=function(e){return{zoom:this.zoom,layerIds:this.layers.map(function(e){return e.id}),layoutVertexArray:this.layoutVertexArray.serialize(e),indexArray:this.indexArray.serialize(e),programConfigurations:this.programConfigurations.serialize(e),segments:this.segments.get()}},FillExtrusionBucket.prototype.upload=function(e){this.layoutVertexBuffer=new VertexBuffer(e,this.layoutVertexArray),this.indexBuffer=new IndexBuffer(e,this.indexArray),this.programConfigurations.upload(e)},FillExtrusionBucket.prototype.destroy=function(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.programConfigurations.destroy(),this.segments.destroy())},FillExtrusionBucket.prototype.addFeature=function(e,r){for(var t=this,a=0,i=classifyRings(r,EARCUT_MAX_RINGS);a<i.length;a+=1){for(var n=i[a],o=0,s=0,u=n;s<u.length;s+=1){o+=u[s].length}for(var y=t.segments.prepareSegment(4,t.layoutVertexArray,t.indexArray),l=0,x=n;l<x.length;l+=1){var f=x[l];if(0!==f.length)for(var g=0,p=0;p<f.length;p++){var d=f[p];if(p>=1){var h=f[p-1];if(!isBoundaryEdge(d,h)){y.vertexLength+4>MAX_VERTEX_ARRAY_LENGTH&&(y=t.segments.prepareSegment(4,t.layoutVertexArray,t.indexArray));var A=d.sub(h)._perp()._unit();addVertex(t.layoutVertexArray,d.x,d.y,A.x,A.y,0,0,g),addVertex(t.layoutVertexArray,d.x,d.y,A.x,A.y,0,1,g),g+=h.dist(d),addVertex(t.layoutVertexArray,h.x,h.y,A.x,A.y,0,0,g),addVertex(t.layoutVertexArray,h.x,h.y,A.x,A.y,0,1,g);var c=y.vertexLength;t.indexArray.emplaceBack(c,c+1,c+2),t.indexArray.emplaceBack(c+1,c+2,c+3),y.vertexLength+=4,y.primitiveLength+=2}}}}y.vertexLength+o>MAX_VERTEX_ARRAY_LENGTH&&(y=t.segments.prepareSegment(o,t.layoutVertexArray,t.indexArray));for(var m=[],V=[],E=y.vertexLength,v=0,_=n;v<_.length;v+=1){var T=_[v];if(0!==T.length){T!==n[0]&&V.push(m.length/2);for(var B=0;B<T.length;B++){var R=T[B];addVertex(t.layoutVertexArray,R.x,R.y,0,0,1,1,0),m.push(R.x),m.push(R.y)}}}for(var I=earcut(m,V),C=0;C<I.length;C+=3)t.indexArray.emplaceBack(E+I[C],E+I[C+1],E+I[C+2]);y.primitiveLength+=I.length/3,y.vertexLength+=o}this.programConfigurations.populatePaintArrays(this.layoutVertexArray.length,e.properties)},FillExtrusionBucket.programInterface=fillExtrusionInterface,module.exports=FillExtrusionBucket;\n},{\"../../gl/index_buffer\":61,\"../../gl/vertex_buffer\":62,\"../../util/classify_rings\":205,\"../extent\":48,\"../index_array_type\":50,\"../load_geometry\":51,\"../program_configuration\":53,\"../segment\":55,\"../vertex_array_type\":56,\"earcut\":11}],46:[function(_dereq_,module,exports){\n\"use strict\";function addLineVertex(e,t,r,i,a,n,s){e.emplaceBack(t.x,t.y,i?1:0,a?1:-1,Math.round(EXTRUDE_SCALE*r.x)+128,Math.round(EXTRUDE_SCALE*r.y)+128,1+(0===n?0:n<0?-1:1)|(s*LINE_DISTANCE_SCALE&63)<<2,s*LINE_DISTANCE_SCALE>>6)}var ref=_dereq_(\"../segment\"),SegmentVector=ref.SegmentVector,VertexBuffer=_dereq_(\"../../gl/vertex_buffer\"),IndexBuffer=_dereq_(\"../../gl/index_buffer\"),ref$1=_dereq_(\"../program_configuration\"),ProgramConfigurationSet=ref$1.ProgramConfigurationSet,createVertexArrayType=_dereq_(\"../vertex_array_type\"),ref$2=_dereq_(\"../index_array_type\"),TriangleIndexArray=ref$2.TriangleIndexArray,loadGeometry=_dereq_(\"../load_geometry\"),EXTENT=_dereq_(\"../extent\"),vectorTileFeatureTypes=_dereq_(\"@mapbox/vector-tile\").VectorTileFeature.types,EXTRUDE_SCALE=63,COS_HALF_SHARP_CORNER=Math.cos(Math.PI/180*37.5),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_normal\",components:4,type:\"Int16\"},{name:\"a_data\",components:4,type:\"Uint8\"}],paintAttributes:[{property:\"line-color\"},{property:\"line-blur\"},{property:\"line-opacity\"},{property:\"line-gap-width\",name:\"gapwidth\"},{property:\"line-offset\"},{property:\"line-width\"},{property:\"line-width\",name:\"floorwidth\",useIntegerZoom:!0}],indexArrayType:TriangleIndexArray},LayoutVertexArrayType=createVertexArrayType(lineInterface.layoutAttributes),LineBucket=function(e){this.zoom=e.zoom,this.overscaling=e.overscaling,this.layers=e.layers,this.index=e.index,this.layoutVertexArray=new LayoutVertexArrayType(e.layoutVertexArray),this.indexArray=new TriangleIndexArray(e.indexArray),this.programConfigurations=new ProgramConfigurationSet(lineInterface,e.layers,e.zoom,e.programConfigurations),this.segments=new SegmentVector(e.segments)};LineBucket.prototype.populate=function(e,t){for(var r=this,i=0,a=e;i<a.length;i+=1){var n=a[i],s=n.feature,o=n.index,u=n.sourceLayerIndex;if(r.layers[0].filter(s)){var d=loadGeometry(s);r.addFeature(s,d),t.featureIndex.insert(s,d,o,u,r.index)}}},LineBucket.prototype.isEmpty=function(){return 0===this.layoutVertexArray.length},LineBucket.prototype.serialize=function(e){return{zoom:this.zoom,layerIds:this.layers.map(function(e){return e.id}),layoutVertexArray:this.layoutVertexArray.serialize(e),indexArray:this.indexArray.serialize(e),programConfigurations:this.programConfigurations.serialize(e),segments:this.segments.get()}},LineBucket.prototype.upload=function(e){this.layoutVertexBuffer=new VertexBuffer(e,this.layoutVertexArray),this.indexBuffer=new IndexBuffer(e,this.indexArray),this.programConfigurations.upload(e)},LineBucket.prototype.destroy=function(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.programConfigurations.destroy(),this.segments.destroy())},LineBucket.prototype.addFeature=function(e,t){for(var r=this,i=this.layers[0].layout,a=this.layers[0].getLayoutValue(\"line-join\",{zoom:this.zoom},e.properties),n=i[\"line-cap\"],s=i[\"line-miter-limit\"],o=i[\"line-round-limit\"],u=0,d=t;u<d.length;u+=1){var l=d[u];r.addLine(l,e,a,n,s,o)}},LineBucket.prototype.addLine=function(e,t,r,i,a,n){for(var s=this,o=t.properties,u=\"Polygon\"===vectorTileFeatureTypes[t.type],d=e.length;d>=2&&e[d-1].equals(e[d-2]);)d--;for(var l=0;l<d-1&&e[l].equals(e[l+1]);)l++;if(!(d<(u?3:2))){\"bevel\"===r&&(a=1.05);var y=SHARP_CORNER_OFFSET*(EXTENT/(512*this.overscaling)),h=e[l],p=this.segments.prepareSegment(10*d,this.layoutVertexArray,this.indexArray);this.distance=0;var c,f,x,m=i,g=u?\"butt\":i,_=!0,A=void 0,v=void 0,V=void 0,C=void 0;this.e1=this.e2=this.e3=-1,u&&(c=e[d-2],C=h.sub(c)._unit()._perp());for(var L=l;L<d;L++)if(!(v=u&&L===d-1?e[l+1]:e[L+1])||!e[L].equals(v)){C&&(V=C),c&&(A=c),c=e[L],C=v?v.sub(c)._unit()._perp():V,V=V||C;var E=V.add(C);0===E.x&&0===E.y||E._unit();var S=E.x*C.x+E.y*C.y,I=0!==S?1/S:1/0,T=S<COS_HALF_SHARP_CORNER&&A&&v;if(T&&L>l){var B=c.dist(A);if(B>2*y){var b=c.sub(c.sub(A)._mult(y/B)._round());s.distance+=b.dist(A),s.addCurrentVertex(b,s.distance,V.mult(1),0,0,!1,p),A=b}}var N=A&&v,k=N?r:v?m:g;if(N&&\"round\"===k&&(I<n?k=\"miter\":I<=2&&(k=\"fakeround\")),\"miter\"===k&&I>a&&(k=\"bevel\"),\"bevel\"===k&&(I>2&&(k=\"flipbevel\"),I<a&&(k=\"miter\")),A&&(s.distance+=c.dist(A)),\"miter\"===k)E._mult(I),s.addCurrentVertex(c,s.distance,E,0,0,!1,p);else if(\"flipbevel\"===k){if(I>100)E=C.clone().mult(-1);else{var R=V.x*C.y-V.y*C.x>0?-1:1,F=I*V.add(C).mag()/V.sub(C).mag();E._perp()._mult(F*R)}s.addCurrentVertex(c,s.distance,E,0,0,!1,p),s.addCurrentVertex(c,s.distance,E.mult(-1),0,0,!1,p)}else if(\"bevel\"===k||\"fakeround\"===k){var q=V.x*C.y-V.y*C.x>0,P=-Math.sqrt(I*I-1);if(q?(x=0,f=P):(f=0,x=P),_||s.addCurrentVertex(c,s.distance,V,f,x,!1,p),\"fakeround\"===k){for(var w=Math.floor(8*(.5-(S-.5))),z=void 0,D=0;D<w;D++)z=C.mult((D+1)/(w+1))._add(V)._unit(),s.addPieSliceVertex(c,s.distance,z,q,p);s.addPieSliceVertex(c,s.distance,E,q,p);for(var M=w-1;M>=0;M--)z=V.mult((M+1)/(w+1))._add(C)._unit(),s.addPieSliceVertex(c,s.distance,z,q,p)}v&&s.addCurrentVertex(c,s.distance,C,-f,-x,!1,p)}else\"butt\"===k?(_||s.addCurrentVertex(c,s.distance,V,0,0,!1,p),v&&s.addCurrentVertex(c,s.distance,C,0,0,!1,p)):\"square\"===k?(_||(s.addCurrentVertex(c,s.distance,V,1,1,!1,p),s.e1=s.e2=-1),v&&s.addCurrentVertex(c,s.distance,C,-1,-1,!1,p)):\"round\"===k&&(_||(s.addCurrentVertex(c,s.distance,V,0,0,!1,p),s.addCurrentVertex(c,s.distance,V,1,1,!0,p),s.e1=s.e2=-1),v&&(s.addCurrentVertex(c,s.distance,C,-1,-1,!0,p),s.addCurrentVertex(c,s.distance,C,0,0,!1,p)));if(T&&L<d-1){var O=c.dist(v);if(O>2*y){var X=c.add(v.sub(c)._mult(y/O)._round());s.distance+=X.dist(c),s.addCurrentVertex(X,s.distance,C.mult(1),0,0,!1,p),c=X}}_=!1}this.programConfigurations.populatePaintArrays(this.layoutVertexArray.length,o)}},LineBucket.prototype.addCurrentVertex=function(e,t,r,i,a,n,s){var o,u=this.layoutVertexArray,d=this.indexArray;o=r.clone(),i&&o._sub(r.perp()._mult(i)),addLineVertex(u,e,o,n,!1,i,t),this.e3=s.vertexLength++,this.e1>=0&&this.e2>=0&&(d.emplaceBack(this.e1,this.e2,this.e3),s.primitiveLength++),this.e1=this.e2,this.e2=this.e3,o=r.mult(-1),a&&o._sub(r.perp()._mult(a)),addLineVertex(u,e,o,n,!0,-a,t),this.e3=s.vertexLength++,this.e1>=0&&this.e2>=0&&(d.emplaceBack(this.e1,this.e2,this.e3),s.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,s))},LineBucket.prototype.addPieSliceVertex=function(e,t,r,i,a){r=r.mult(i?-1:1);var n=this.layoutVertexArray,s=this.indexArray;addLineVertex(n,e,r,!1,i,0,t),this.e3=a.vertexLength++,this.e1>=0&&this.e2>=0&&(s.emplaceBack(this.e1,this.e2,this.e3),a.primitiveLength++),i?this.e2=this.e3:this.e1=this.e3},LineBucket.programInterface=lineInterface,module.exports=LineBucket;\n},{\"../../gl/index_buffer\":61,\"../../gl/vertex_buffer\":62,\"../extent\":48,\"../index_array_type\":50,\"../load_geometry\":51,\"../program_configuration\":53,\"../segment\":55,\"../vertex_array_type\":56,\"@mapbox/vector-tile\":6}],47:[function(_dereq_,module,exports){\n\"use strict\";function addVertex(e,t,o,r,a,i,n,s){e.emplaceBack(t,o,Math.round(64*r),Math.round(64*a),i,n,s?s[0]:void 0,s?s[1]:void 0)}function addDynamicAttributes(e,t,o,r){var a=2*Math.PI,i=packUint8ToFloat((o+a)%a/a*255,10*r);e.emplaceBack(t.x,t.y,i),e.emplaceBack(t.x,t.y,i),e.emplaceBack(t.x,t.y,i),e.emplaceBack(t.x,t.y,i)}function addCollisionBoxVertex(e,t,o,r,a,i){return e.emplaceBack(t.x,t.y,o.x,o.y,Math.round(r.x),Math.round(r.y),10*a,10*i)}function getSizeData(e,t,o){var r={};if(r.isFeatureConstant=t.isLayoutValueFeatureConstant(o),r.isZoomConstant=t.isLayoutValueZoomConstant(o),r.isFeatureConstant&&(r.layoutSize=t.getLayoutValue(o,{zoom:e+1})),!r.isZoomConstant){for(var a=t.getLayoutValueStopZoomLevels(o),i=0;i<a.length&&a[i]<=e;)i++;i=Math.max(0,i-1);for(var n=i;n<a.length&&a[n]<e+1;)n++;n=Math.min(a.length-1,n),r.coveringZoomRange=[a[i],a[n]],t.isLayoutValueFeatureConstant(o)&&(r.coveringStopValues=[t.getLayoutValue(o,{zoom:a[i]}),t.getLayoutValue(o,{zoom:a[n]})]),r.functionBase=t.getLayoutProperty(o).base,void 0===r.functionBase&&(r.functionBase=1),r.functionType=t.getLayoutProperty(o).type||\"exponential\"}return r}function getSizeVertexData(e,t,o,r,a){return e.isLayoutValueZoomConstant(r)&&!e.isLayoutValueFeatureConstant(r)?[10*e.getLayoutValue(r,{},a)]:e.isLayoutValueZoomConstant(r)||e.isLayoutValueFeatureConstant(r)?null:[10*e.getLayoutValue(r,{zoom:o[0]},a),10*e.getLayoutValue(r,{zoom:o[1]},a)]}var Point=_dereq_(\"@mapbox/point-geometry\"),ref=_dereq_(\"../segment\"),SegmentVector=ref.SegmentVector,VertexBuffer=_dereq_(\"../../gl/vertex_buffer\"),IndexBuffer=_dereq_(\"../../gl/index_buffer\"),ref$1=_dereq_(\"../program_configuration\"),ProgramConfigurationSet=ref$1.ProgramConfigurationSet,createVertexArrayType=_dereq_(\"../vertex_array_type\"),ref$2=_dereq_(\"../index_array_type\"),TriangleIndexArray=ref$2.TriangleIndexArray,LineIndexArray=ref$2.LineIndexArray,EXTENT=_dereq_(\"../extent\"),ref$3=_dereq_(\"../../shaders/encode_attribute\"),packUint8ToFloat=ref$3.packUint8ToFloat,Anchor=_dereq_(\"../../symbol/anchor\"),getAnchors=_dereq_(\"../../symbol/get_anchors\"),resolveTokens=_dereq_(\"../../util/token\"),ref$4=_dereq_(\"../../symbol/quads\"),getGlyphQuads=ref$4.getGlyphQuads,getIconQuads=ref$4.getIconQuads,ref$5=_dereq_(\"../../symbol/shaping\"),shapeText=ref$5.shapeText,shapeIcon=ref$5.shapeIcon,WritingMode=ref$5.WritingMode,transformText=_dereq_(\"../../symbol/transform_text\"),mergeLines=_dereq_(\"../../symbol/mergelines\"),clipLine=_dereq_(\"../../symbol/clip_line\"),util=_dereq_(\"../../util/util\"),scriptDetection=_dereq_(\"../../util/script_detection\"),loadGeometry=_dereq_(\"../load_geometry\"),CollisionFeature=_dereq_(\"../../symbol/collision_feature\"),findPoleOfInaccessibility=_dereq_(\"../../util/find_pole_of_inaccessibility\"),classifyRings=_dereq_(\"../../util/classify_rings\"),vectorTileFeatureTypes=_dereq_(\"@mapbox/vector-tile\").VectorTileFeature.types,createStructArrayType=_dereq_(\"../../util/struct_array\"),verticalizePunctuation=_dereq_(\"../../util/verticalize_punctuation\"),PlacedSymbolArray=createStructArrayType({members:[{type:\"Int16\",name:\"anchorX\"},{type:\"Int16\",name:\"anchorY\"},{type:\"Uint16\",name:\"glyphStartIndex\"},{type:\"Uint16\",name:\"numGlyphs\"},{type:\"Uint32\",name:\"lineStartIndex\"},{type:\"Uint32\",name:\"lineLength\"},{type:\"Uint16\",name:\"segment\"},{type:\"Uint16\",name:\"lowerSize\"},{type:\"Uint16\",name:\"upperSize\"},{type:\"Float32\",name:\"lineOffsetX\"},{type:\"Float32\",name:\"lineOffsetY\"},{type:\"Float32\",name:\"placementZoom\"},{type:\"Uint8\",name:\"vertical\"}]}),GlyphOffsetArray=createStructArrayType({members:[{type:\"Float32\",name:\"offsetX\"}]}),LineVertexArray=createStructArrayType({members:[{type:\"Int16\",name:\"x\"},{type:\"Int16\",name:\"y\"}]}),layoutAttributes=[{name:\"a_pos_offset\",components:4,type:\"Int16\"},{name:\"a_data\",components:4,type:\"Uint16\"}],dynamicLayoutAttributes=[{name:\"a_projected_pos\",components:3,type:\"Float32\"}],symbolInterfaces={text:{layoutAttributes:layoutAttributes,dynamicLayoutAttributes:dynamicLayoutAttributes,indexArrayType:TriangleIndexArray,paintAttributes:[{property:\"text-color\",name:\"fill_color\"},{property:\"text-halo-color\",name:\"halo_color\"},{property:\"text-halo-width\",name:\"halo_width\"},{property:\"text-halo-blur\",name:\"halo_blur\"},{property:\"text-opacity\",name:\"opacity\"}]},icon:{layoutAttributes:layoutAttributes,dynamicLayoutAttributes:dynamicLayoutAttributes,indexArrayType:TriangleIndexArray,paintAttributes:[{property:\"icon-color\",name:\"fill_color\"},{property:\"icon-halo-color\",name:\"halo_color\"},{property:\"icon-halo-width\",name:\"halo_width\"},{property:\"icon-halo-blur\",name:\"halo_blur\"},{property:\"icon-opacity\",name:\"opacity\"}]},collisionBox:{layoutAttributes:[{name:\"a_pos\",components:2,type:\"Int16\"},{name:\"a_anchor_pos\",components:2,type:\"Int16\"},{name:\"a_extrude\",components:2,type:\"Int16\"},{name:\"a_data\",components:2,type:\"Uint8\"}],indexArrayType:LineIndexArray}},SymbolBuffers=function(e,t,o,r){this.programInterface=e;var a=createVertexArrayType(e.layoutAttributes),i=e.indexArrayType;if(this.layoutVertexArray=new a(r&&r.layoutVertexArray),this.indexArray=new i(r&&r.indexArray),this.programConfigurations=new ProgramConfigurationSet(e,t,o,r&&r.programConfigurations),this.segments=new SegmentVector(r&&r.segments),e.dynamicLayoutAttributes){var n=createVertexArrayType(e.dynamicLayoutAttributes);this.dynamicLayoutVertexArray=new n(r&&r.dynamicLayoutVertexArray)}};SymbolBuffers.prototype.serialize=function(e){return{layoutVertexArray:this.layoutVertexArray.serialize(e),indexArray:this.indexArray.serialize(e),programConfigurations:this.programConfigurations.serialize(e),segments:this.segments.get(),dynamicLayoutVertexArray:this.dynamicLayoutVertexArray&&this.dynamicLayoutVertexArray.serialize(e)}},SymbolBuffers.prototype.upload=function(e){this.layoutVertexBuffer=new VertexBuffer(e,this.layoutVertexArray),this.indexBuffer=new IndexBuffer(e,this.indexArray),this.programConfigurations.upload(e),this.programInterface.dynamicLayoutAttributes&&(this.dynamicLayoutVertexBuffer=new VertexBuffer(e,this.dynamicLayoutVertexArray,!0))},SymbolBuffers.prototype.destroy=function(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.programConfigurations.destroy(),this.segments.destroy(),this.dynamicLayoutVertexBuffer&&this.dynamicLayoutVertexBuffer.destroy())};var SymbolBucket=function(e){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.pixelRatio=e.pixelRatio,e.text)this.text=new SymbolBuffers(symbolInterfaces.text,e.layers,e.zoom,e.text),this.icon=new SymbolBuffers(symbolInterfaces.icon,e.layers,e.zoom,e.icon),this.collisionBox=new SymbolBuffers(symbolInterfaces.collisionBox,e.layers,e.zoom,e.collisionBox),this.textSizeData=e.textSizeData,this.iconSizeData=e.iconSizeData,this.placedGlyphArray=new PlacedSymbolArray(e.placedGlyphArray),this.placedIconArray=new PlacedSymbolArray(e.placedIconArray),this.glyphOffsetArray=new GlyphOffsetArray(e.glyphOffsetArray),this.lineVertexArray=new LineVertexArray(e.lineVertexArray);else{var t=this.layers[0];this.textSizeData=getSizeData(this.zoom,t,\"text-size\"),this.iconSizeData=getSizeData(this.zoom,t,\"icon-size\")}};SymbolBucket.prototype.populate=function(e,t){var o=this,r=this.layers[0],a=r.layout,i=a[\"text-font\"],n=(!r.isLayoutValueFeatureConstant(\"text-field\")||a[\"text-field\"])&&i,s=!r.isLayoutValueFeatureConstant(\"icon-image\")||a[\"icon-image\"];if(this.features=[],n||s){for(var l=t.iconDependencies,y=t.glyphDependencies,c=y[i]=y[i]||{},u={zoom:this.zoom},p=0,x=e;p<x.length;p+=1){var m=x[p],h=m.feature,d=m.index,f=m.sourceLayerIndex;if(r.filter(h)){var g=void 0;n&&(g=r.getLayoutValue(\"text-field\",u,h.properties),r.isLayoutValueFeatureConstant(\"text-field\")&&(g=resolveTokens(h.properties,g)),g=transformText(g,r,u,h.properties));var b=void 0;if(s&&(b=r.getLayoutValue(\"icon-image\",u,h.properties),r.isLayoutValueFeatureConstant(\"icon-image\")&&(b=resolveTokens(h.properties,b))),(g||b)&&(o.features.push({text:g,icon:b,index:d,sourceLayerIndex:f,geometry:loadGeometry(h),properties:h.properties,type:vectorTileFeatureTypes[h.type]}),b&&(l[b]=!0),g))for(var A=\"map\"===a[\"text-rotation-alignment\"]&&\"line\"===a[\"symbol-placement\"],v=scriptDetection.allowsVerticalWritingMode(g),S=0;S<g.length;S++)if(c[g.charCodeAt(S)]=!0,A&&v){var I=verticalizePunctuation.lookup[g.charAt(S)];I&&(c[I.charCodeAt(0)]=!0)}}}\"line\"===a[\"symbol-placement\"]&&(this.features=mergeLines(this.features))}},SymbolBucket.prototype.isEmpty=function(){return 0===this.icon.layoutVertexArray.length&&0===this.text.layoutVertexArray.length&&0===this.collisionBox.layoutVertexArray.length},SymbolBucket.prototype.serialize=function(e){return{zoom:this.zoom,layerIds:this.layers.map(function(e){return e.id}),sdfIcons:this.sdfIcons,iconsNeedLinear:this.iconsNeedLinear,textSizeData:this.textSizeData,iconSizeData:this.iconSizeData,placedGlyphArray:this.placedGlyphArray.serialize(e),placedIconArray:this.placedIconArray.serialize(e),glyphOffsetArray:this.glyphOffsetArray.serialize(e),lineVertexArray:this.lineVertexArray.serialize(e),text:this.text.serialize(e),icon:this.icon.serialize(e),collisionBox:this.collisionBox.serialize(e)}},SymbolBucket.prototype.upload=function(e){this.text.upload(e),this.icon.upload(e),this.collisionBox.upload(e)},SymbolBucket.prototype.destroy=function(){this.text.destroy(),this.icon.destroy(),this.collisionBox.destroy()},SymbolBucket.prototype.prepare=function(e,t,o,r){var a=this;this.symbolInstances=[];var i=512*this.overscaling;this.tilePixelRatio=EXTENT/i,this.compareText={},this.iconsNeedLinear=!1;for(var n=this.layers[0].layout,s=24*n[\"text-line-height\"],l=n[\"text-font\"].join(\",\"),y=\"map\"===n[\"text-rotation-alignment\"]&&\"line\"===n[\"symbol-placement\"],c=e[l]||{},u=t[l]||{},p=0,x=a.features;p<x.length;p+=1){var m=x[p],h={},d=m.text;if(d){var f=a.layers[0].getLayoutValue(\"text-offset\",{zoom:a.zoom},m.properties).map(function(e){return 24*e}),g=24*a.layers[0].getLayoutValue(\"text-letter-spacing\",{zoom:a.zoom},m.properties),b=scriptDetection.allowsLetterSpacing(d)?g:0,A=a.layers[0].getLayoutValue(\"text-anchor\",{zoom:a.zoom},m.properties),v=a.layers[0].getLayoutValue(\"text-justify\",{zoom:a.zoom},m.properties),S=\"line\"!==n[\"symbol-placement\"]?24*a.layers[0].getLayoutValue(\"text-max-width\",{zoom:a.zoom},m.properties):0,I=function(e,t){return shapeText(e,c,S,s,A,v,b,f,24,t)};h[WritingMode.horizontal]=I(d,WritingMode.horizontal),scriptDetection.allowsVerticalWritingMode(d)&&y&&(h[WritingMode.vertical]=I(d,WritingMode.vertical))}var B=void 0;if(m.icon){var z=o[m.icon];z&&(B=shapeIcon(r[m.icon],a.layers[0].getLayoutValue(\"icon-offset\",{zoom:a.zoom},m.properties),a.layers[0].getLayoutValue(\"icon-anchor\",{zoom:a.zoom},m.properties)),void 0===a.sdfIcons?a.sdfIcons=z.sdf:a.sdfIcons!==z.sdf&&util.warnOnce(\"Style sheet warning: Cannot mix SDF and non-SDF icons in one buffer\"),z.pixelRatio!==a.pixelRatio?a.iconsNeedLinear=!0:0===n[\"icon-rotate\"]&&a.layers[0].isLayoutValueFeatureConstant(\"icon-rotate\")||(a.iconsNeedLinear=!0))}(h[WritingMode.horizontal]||B)&&a.addFeature(m,h,B,u)}},SymbolBucket.prototype.addFeature=function(e,t,o,r){var a=this,i=this.layers[0].getLayoutValue(\"text-size\",{zoom:this.zoom+1},e.properties),n=this.layers[0].getLayoutValue(\"icon-size\",{zoom:this.zoom+1},e.properties),s=this.layers[0].getLayoutValue(\"text-offset\",{zoom:this.zoom},e.properties),l=this.layers[0].getLayoutValue(\"icon-offset\",{zoom:this.zoom},e.properties),y=this.layers[0].getLayoutValue(\"text-size\",{zoom:18},e.properties);void 0===y&&(y=i);var c=this.layers[0].layout,u=i/24,p=this.tilePixelRatio*u,x=this.tilePixelRatio*y/24,m=this.tilePixelRatio*n,h=this.tilePixelRatio*c[\"symbol-spacing\"],d=c[\"symbol-avoid-edges\"],f=c[\"text-padding\"]*this.tilePixelRatio,g=c[\"icon-padding\"]*this.tilePixelRatio,b=c[\"text-max-angle\"]/180*Math.PI,A=\"map\"===c[\"text-rotation-alignment\"]&&\"line\"===c[\"symbol-placement\"],v=\"map\"===c[\"icon-rotation-alignment\"]&&\"line\"===c[\"symbol-placement\"],S=c[\"text-allow-overlap\"]||c[\"icon-allow-overlap\"]||c[\"text-ignore-placement\"]||c[\"icon-ignore-placement\"],I=c[\"symbol-placement\"],B=h/2,z=function(i,n){var y=!(n.x<0||n.x>EXTENT||n.y<0||n.y>EXTENT);if(!d||y){var c=y||S;a.addSymbolInstance(n,i,t,o,a.layers[0],c,a.collisionBoxArray,e.index,e.sourceLayerIndex,a.index,p,f,A,s,m,g,v,l,{zoom:a.zoom},e.properties,r)}};if(\"line\"===I)for(var V=0,L=clipLine(e.geometry,0,0,EXTENT,EXTENT);V<L.length;V+=1)for(var T=L[V],w=getAnchors(T,h,b,t[WritingMode.vertical]||t[WritingMode.horizontal],o,24,x,a.overscaling,EXTENT),M=0,C=w;M<C.length;M+=1){var _=C[M],k=t[WritingMode.horizontal];k&&a.anchorIsTooClose(k.text,B,_)||z(T,_)}else if(\"Polygon\"===e.type)for(var P=0,F=classifyRings(e.geometry,0);P<F.length;P+=1){var E=F[P],D=findPoleOfInaccessibility(E,16);z(E[0],new Anchor(D.x,D.y,0))}else if(\"LineString\"===e.type)for(var q=0,O=e.geometry;q<O.length;q+=1){var N=O[q];z(N,new Anchor(N[0].x,N[0].y,0))}else if(\"Point\"===e.type)for(var W=0,R=e.geometry;W<R.length;W+=1)for(var G=R[W],$=0,U=G;$<U.length;$+=1){var X=U[$];z([X],new Anchor(X.x,X.y,0))}},SymbolBucket.prototype.anchorIsTooClose=function(e,t,o){var r=this.compareText;if(e in r){for(var a=r[e],i=a.length-1;i>=0;i--)if(o.dist(a[i])<t)return!0}else r[e]=[];return r[e].push(o),!1},SymbolBucket.prototype.place=function(e,t){var o=this;this.text=new SymbolBuffers(symbolInterfaces.text,this.layers,this.zoom),this.icon=new SymbolBuffers(symbolInterfaces.icon,this.layers,this.zoom),this.collisionBox=new SymbolBuffers(symbolInterfaces.collisionBox,this.layers,this.zoom),this.placedGlyphArray=new PlacedSymbolArray,this.placedIconArray=new PlacedSymbolArray,this.glyphOffsetArray=new GlyphOffsetArray,this.lineVertexArray=new LineVertexArray;var r=this.layers[0],a=r.layout,i=e.maxScale,n=\"map\"===a[\"text-rotation-alignment\"]&&\"line\"===a[\"symbol-placement\"],s=\"map\"===a[\"icon-rotation-alignment\"]&&\"line\"===a[\"symbol-placement\"];if(a[\"text-allow-overlap\"]||a[\"icon-allow-overlap\"]||a[\"text-ignore-placement\"]||a[\"icon-ignore-placement\"]){var l=e.angle,y=Math.sin(l),c=Math.cos(l);this.symbolInstances.sort(function(e,t){return(y*e.anchor.x+c*e.anchor.y|0)-(y*t.anchor.x+c*t.anchor.y|0)||t.featureIndex-e.featureIndex})}for(var u=0,p=o.symbolInstances;u<p.length;u+=1){var x=p[u],m={boxStartIndex:x.textBoxStartIndex,boxEndIndex:x.textBoxEndIndex},h={boxStartIndex:x.iconBoxStartIndex,boxEndIndex:x.iconBoxEndIndex},d=!(x.textBoxStartIndex===x.textBoxEndIndex),f=!(x.iconBoxStartIndex===x.iconBoxEndIndex),g=a[\"text-optional\"]||!d,b=a[\"icon-optional\"]||!f,A=d?e.placeCollisionFeature(m,a[\"text-allow-overlap\"],a[\"symbol-avoid-edges\"]):e.minScale,v=f?e.placeCollisionFeature(h,a[\"icon-allow-overlap\"],a[\"symbol-avoid-edges\"]):e.minScale;if(g||b?!b&&A?A=Math.max(v,A):!g&&v&&(v=Math.max(v,A)):v=A=Math.max(v,A),d||f){for(var S=x.line,I=o.lineVertexArray.length,B=0;B<S.length;B++)o.lineVertexArray.emplaceBack(S[B].x,S[B].y);var z=o.lineVertexArray.length-I;if(d&&(e.insertCollisionFeature(m,A,a[\"text-ignore-placement\"]),A<=i)){var V=getSizeVertexData(r,o.zoom,o.textSizeData.coveringZoomRange,\"text-size\",x.featureProperties);o.addSymbols(o.text,x.glyphQuads,A,V,a[\"text-keep-upright\"],x.textOffset,n,e.angle,x.featureProperties,x.writingModes,x.anchor,I,z,o.placedGlyphArray)}if(f&&(e.insertCollisionFeature(h,v,a[\"icon-ignore-placement\"]),v<=i)){var L=getSizeVertexData(r,o.zoom,o.iconSizeData.coveringZoomRange,\"icon-size\",x.featureProperties);o.addSymbols(o.icon,x.iconQuads,v,L,a[\"icon-keep-upright\"],x.iconOffset,s,e.angle,x.featureProperties,0,x.anchor,I,z,o.placedIconArray)}}}t&&this.addToDebugBuffers(e)},SymbolBucket.prototype.addSymbols=function(e,t,o,r,a,i,n,s,l,y,c,u,p,x){for(var m=this,h=e.indexArray,d=e.layoutVertexArray,f=e.dynamicLayoutVertexArray,g=this.zoom,b=Math.max(Math.log(o)/Math.LN2+g,0),A=this.glyphOffsetArray.length,v=(c.angle+s+2*Math.PI)%(2*Math.PI),S=v>1*Math.PI/4&&v<=3*Math.PI/4||v>5*Math.PI/4&&v<=7*Math.PI/4,I=Boolean(y&WritingMode.vertical)&&S,B=0,z=t;B<z.length;B+=1){var V=z[B];if(!n||!a||V.writingMode===WritingMode.vertical===I){var L=V.tl,T=V.tr,w=V.bl,M=V.br,C=V.tex,_=e.segments.prepareSegment(4,e.layoutVertexArray,e.indexArray),k=_.vertexLength,P=V.glyphOffset[1];addVertex(d,c.x,c.y,L.x,P+L.y,C.x,C.y,r),addVertex(d,c.x,c.y,T.x,P+T.y,C.x+C.w,C.y,r),addVertex(d,c.x,c.y,w.x,P+w.y,C.x,C.y+C.h,r),addVertex(d,c.x,c.y,M.x,P+M.y,C.x+C.w,C.y+C.h,r),addDynamicAttributes(f,c,0,b),h.emplaceBack(k,k+1,k+2),h.emplaceBack(k+1,k+2,k+3),_.vertexLength+=4,_.primitiveLength+=2,m.glyphOffsetArray.emplaceBack(V.glyphOffset[0])}}x.emplaceBack(c.x,c.y,A,this.glyphOffsetArray.length-A,u,p,c.segment,r?r[0]:0,r?r[1]:0,i[0],i[1],b,I),e.programConfigurations.populatePaintArrays(e.layoutVertexArray.length,l)},SymbolBucket.prototype.addToDebugBuffers=function(e){for(var t=this,o=this.collisionBox,r=o.layoutVertexArray,a=o.indexArray,i=-e.angle,n=e.yStretch,s=0,l=t.symbolInstances;s<l.length;s+=1){var y=l[s];y.textCollisionFeature={boxStartIndex:y.textBoxStartIndex,boxEndIndex:y.textBoxEndIndex},y.iconCollisionFeature={boxStartIndex:y.iconBoxStartIndex,boxEndIndex:y.iconBoxEndIndex};for(var c=0;c<2;c++){var u=y[0===c?\"textCollisionFeature\":\"iconCollisionFeature\"];if(u)for(var p=u.boxStartIndex;p<u.boxEndIndex;p++){var x=t.collisionBoxArray.get(p);if(!(1===e.perspectiveRatio&&x.maxScale<1)){var m=x.anchorPoint,h=new Point(x.x1,x.y1*n)._rotate(i),d=new Point(x.x2,x.y1*n)._rotate(i),f=new Point(x.x1,x.y2*n)._rotate(i),g=new Point(x.x2,x.y2*n)._rotate(i),b=Math.max(0,Math.min(25,t.zoom+Math.log(x.maxScale)/Math.LN2)),A=Math.max(0,Math.min(25,t.zoom+Math.log(x.placementScale)/Math.LN2)),v=o.segments.prepareSegment(4,o.layoutVertexArray,o.indexArray),S=v.vertexLength;addCollisionBoxVertex(r,m,y.anchor,h,b,A),addCollisionBoxVertex(r,m,y.anchor,d,b,A),addCollisionBoxVertex(r,m,y.anchor,g,b,A),addCollisionBoxVertex(r,m,y.anchor,f,b,A),a.emplaceBack(S,S+1),a.emplaceBack(S+1,S+2),a.emplaceBack(S+2,S+3),a.emplaceBack(S+3,S),v.vertexLength+=4,v.primitiveLength+=4}}}}},SymbolBucket.prototype.addSymbolInstance=function(e,t,o,r,a,i,n,s,l,y,c,u,p,x,m,h,d,f,g,b,A){var v,S,I=[],B=[];for(var z in o){var V=parseInt(z,10);o[V]&&(B=B.concat(i?getGlyphQuads(e,o[V],a,p,g,b,A):[]),v=new CollisionFeature(n,t,e,s,l,y,o[V],c,u,p,!1))}var L=v?v.boxStartIndex:this.collisionBoxArray.length,T=v?v.boxEndIndex:this.collisionBoxArray.length;r&&(I=i?getIconQuads(e,r,a,d,o[WritingMode.horizontal],g,b):[],S=new CollisionFeature(n,t,e,s,l,y,r,m,h,d,!0));var w=S?S.boxStartIndex:this.collisionBoxArray.length,M=S?S.boxEndIndex:this.collisionBoxArray.length;T>SymbolBucket.MAX_INSTANCES&&util.warnOnce(\"Too many symbols being rendered in a tile. See https://github.com/mapbox/mapbox-gl-js/issues/2907\"),M>SymbolBucket.MAX_INSTANCES&&util.warnOnce(\"Too many glyphs being rendered in a tile. See https://github.com/mapbox/mapbox-gl-js/issues/2907\");var C=(o[WritingMode.vertical]?WritingMode.vertical:0)|(o[WritingMode.horizontal]?WritingMode.horizontal:0);this.symbolInstances.push({textBoxStartIndex:L,textBoxEndIndex:T,iconBoxStartIndex:w,iconBoxEndIndex:M,glyphQuads:B,iconQuads:I,textOffset:x,iconOffset:f,anchor:e,line:t,featureIndex:s,featureProperties:b,writingModes:C})},SymbolBucket.programInterfaces=symbolInterfaces,SymbolBucket.MAX_INSTANCES=65535,SymbolBucket.addDynamicAttributes=addDynamicAttributes,module.exports=SymbolBucket;\n},{\"../../gl/index_buffer\":61,\"../../gl/vertex_buffer\":62,\"../../shaders/encode_attribute\":85,\"../../symbol/anchor\":167,\"../../symbol/clip_line\":169,\"../../symbol/collision_feature\":171,\"../../symbol/get_anchors\":173,\"../../symbol/mergelines\":174,\"../../symbol/quads\":176,\"../../symbol/shaping\":177,\"../../symbol/transform_text\":179,\"../../util/classify_rings\":205,\"../../util/find_pole_of_inaccessibility\":211,\"../../util/script_detection\":218,\"../../util/struct_array\":220,\"../../util/token\":222,\"../../util/util\":223,\"../../util/verticalize_punctuation\":225,\"../extent\":48,\"../index_array_type\":50,\"../load_geometry\":51,\"../program_configuration\":53,\"../segment\":55,\"../vertex_array_type\":56,\"@mapbox/point-geometry\":2,\"@mapbox/vector-tile\":6}],48:[function(_dereq_,module,exports){\n\"use strict\";module.exports=8192;\n},{}],49:[function(_dereq_,module,exports){\n\"use strict\";function topDownFeatureComparator(e,r){return r-e}var Point=_dereq_(\"@mapbox/point-geometry\"),loadGeometry=_dereq_(\"./load_geometry\"),EXTENT=_dereq_(\"./extent\"),featureFilter=_dereq_(\"../style-spec/feature_filter\"),createStructArrayType=_dereq_(\"../util/struct_array\"),Grid=_dereq_(\"grid-index\"),DictionaryCoder=_dereq_(\"../util/dictionary_coder\"),vt=_dereq_(\"@mapbox/vector-tile\"),Protobuf=_dereq_(\"pbf\"),GeoJSONFeature=_dereq_(\"../util/vectortile_to_geojson\"),arraysIntersect=_dereq_(\"../util/util\").arraysIntersect,FeatureIndexArray=createStructArrayType({members:[{type:\"Uint32\",name:\"featureIndex\"},{type:\"Uint16\",name:\"sourceLayerIndex\"},{type:\"Uint16\",name:\"bucketIndex\"}]}),FeatureIndex=function(e,r,t,a){this.coord=e,this.overscaling=r,this.x=e.x,this.y=e.y,this.z=e.z-Math.log(r)/Math.LN2,this.grid=t||new Grid(EXTENT,16,0),this.featureIndexArray=a||new FeatureIndexArray};FeatureIndex.deserialize=function(e,r,t){var a=new FeatureIndex(e.coord,e.overscaling,new Grid(e.grid),new FeatureIndexArray(e.featureIndexArray));return a.rawTileData=r,a.bucketLayerIDs=e.bucketLayerIDs,a.setCollisionTile(t),a},FeatureIndex.prototype.insert=function(e,r,t,a,i){var n=this,o=this.featureIndexArray.length;this.featureIndexArray.emplaceBack(t,a,i);for(var s=0;s<r.length;s++){for(var u=r[s],y=[1/0,1/0,-1/0,-1/0],l=0;l<u.length;l++){var d=u[l];y[0]=Math.min(y[0],d.x),y[1]=Math.min(y[1],d.y),y[2]=Math.max(y[2],d.x),y[3]=Math.max(y[3],d.y)}n.grid.insert(o,y[0],y[1],y[2],y[3])}},FeatureIndex.prototype.setCollisionTile=function(e){this.collisionTile=e},FeatureIndex.prototype.serialize=function(e){var r=this.grid.toArrayBuffer();return e&&e.push(r),{coord:this.coord,overscaling:this.overscaling,grid:r,featureIndexArray:this.featureIndexArray.serialize(e),bucketLayerIDs:this.bucketLayerIDs}},FeatureIndex.prototype.query=function(e,r){this.vtLayers||(this.vtLayers=new vt.VectorTile(new Protobuf(this.rawTileData)).layers,this.sourceLayerCoder=new DictionaryCoder(this.vtLayers?Object.keys(this.vtLayers).sort():[\"_geojsonTileLayer\"]));for(var t={},a=e.params||{},i=EXTENT/e.tileSize/e.scale,n=featureFilter(a.filter),o=e.queryGeometry,s=e.additionalRadius*i,u=1/0,y=1/0,l=-1/0,d=-1/0,c=0;c<o.length;c++)for(var h=o[c],f=0;f<h.length;f++){var x=h[f];u=Math.min(u,x.x),y=Math.min(y,x.y),l=Math.max(l,x.x),d=Math.max(d,x.y)}var v=this.grid.query(u-s,y-s,l+s,d+s);v.sort(topDownFeatureComparator),this.filterMatching(t,v,this.featureIndexArray,o,n,a.layers,r,e.bearing,i);var I=this.collisionTile.queryRenderedSymbols(o,e.scale);return I.sort(),this.filterMatching(t,I,this.collisionTile.collisionBoxArray,o,n,a.layers,r,e.bearing,i),t},FeatureIndex.prototype.filterMatching=function(e,r,t,a,i,n,o,s,u){for(var y,l=this,d=0;d<r.length;d++){var c=r[d];if(c!==y){y=c;var h=t.get(c),f=l.bucketLayerIDs[h.bucketIndex];if(!n||arraysIntersect(n,f)){var x=l.sourceLayerCoder.decode(h.sourceLayerIndex),v=l.vtLayers[x],I=v.feature(h.featureIndex);if(i(I))for(var p=null,g=0;g<f.length;g++){var m=f[g];if(!(n&&n.indexOf(m)<0)){var F=o[m];if(F&&(\"symbol\"===F.type||(p||(p=loadGeometry(I)),F.queryIntersectsFeature(a,I,p,l.z,s,u)))){var b=new GeoJSONFeature(I,l.z,l.x,l.y);b.layer=F.serialize();var L=e[m];void 0===L&&(L=e[m]=[]),L.push({featureIndex:c,feature:b})}}}}}}},FeatureIndex.prototype.hasLayer=function(e){for(var r=this,t=0,a=r.bucketLayerIDs;t<a.length;t+=1)for(var i=a[t],n=0,o=i;n<o.length;n+=1){var s=o[n];if(e===s)return!0}return!1},module.exports=FeatureIndex;\n},{\"../style-spec/feature_filter\":110,\"../util/dictionary_coder\":207,\"../util/struct_array\":220,\"../util/util\":223,\"../util/vectortile_to_geojson\":224,\"./extent\":48,\"./load_geometry\":51,\"@mapbox/point-geometry\":2,\"@mapbox/vector-tile\":6,\"grid-index\":22,\"pbf\":29}],50:[function(_dereq_,module,exports){\n\"use strict\";function createIndexArrayType(e){return createStructArrayType({members:[{type:\"Uint16\",name:\"vertices\",components:e}]})}var createStructArrayType=_dereq_(\"../util/struct_array\");module.exports={LineIndexArray:createIndexArrayType(2),TriangleIndexArray:createIndexArrayType(3)};\n},{\"../util/struct_array\":220}],51:[function(_dereq_,module,exports){\n\"use strict\";function createBounds(e){return{min:-1*Math.pow(2,e-1),max:Math.pow(2,e-1)-1}}var util=_dereq_(\"../util/util\"),EXTENT=_dereq_(\"./extent\"),bounds=createBounds(16);module.exports=function(e){for(var t=EXTENT/e.extent,r=e.loadGeometry(),n=0;n<r.length;n++)for(var u=r[n],o=0;o<u.length;o++){var a=u[o];a.x=Math.round(a.x*t),a.y=Math.round(a.y*t),(a.x<bounds.min||a.x>bounds.max||a.y<bounds.min||a.y>bounds.max)&&util.warnOnce(\"Geometry exceeds allowed extent, reduce your vector tile buffer size\")}return r};\n},{\"../util/util\":223,\"./extent\":48}],52:[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\":220}],53:[function(_dereq_,module,exports){\n\"use strict\";function packColor(r){return[packUint8ToFloat(255*r[0],255*r[1]),packUint8ToFloat(255*r[2],255*r[3])]}var createVertexArrayType=_dereq_(\"./vertex_array_type\"),interpolationFactor=_dereq_(\"../style-spec/function\").interpolationFactor,packUint8ToFloat=_dereq_(\"../shaders/encode_attribute\").packUint8ToFloat,VertexBuffer=_dereq_(\"../gl/vertex_buffer\"),ConstantBinder=function(r,t,o,e){this.name=r,this.type=t,this.property=o,this.useIntegerZoom=e};ConstantBinder.prototype.defines=function(){return[\"#define HAS_UNIFORM_u_\"+this.name]},ConstantBinder.prototype.populatePaintArray=function(){},ConstantBinder.prototype.setUniforms=function(r,t,o,e){var i=e.zoom,n=o.getPaintValue(this.property,{zoom:this.useIntegerZoom?Math.floor(i):i});\"color\"===this.type?r.uniform4fv(t.uniforms[\"u_\"+this.name],n):r.uniform1f(t.uniforms[\"u_\"+this.name],n)};var SourceFunctionBinder=function(r,t,o){this.name=r,this.type=t,this.property=o};SourceFunctionBinder.prototype.defines=function(){return[]},SourceFunctionBinder.prototype.populatePaintArray=function(r,t,o,e,i,n){var a=this,s=r.getPaintValue(this.property,void 0,n);if(\"color\"===this.type)for(var p=packColor(s),u=e;u<i;u++){var f=t.get(u);f[\"a_\"+a.name+\"0\"]=p[0],f[\"a_\"+a.name+\"1\"]=p[1]}else{for(var c=e;c<i;c++){t.get(c)[\"a_\"+a.name]=s}var m=o[this.property];m.max=Math.max(m.max,s)}},SourceFunctionBinder.prototype.setUniforms=function(r,t){r.uniform1f(t.uniforms[\"a_\"+this.name+\"_t\"],0)};var CompositeFunctionBinder=function(r,t,o,e,i){this.name=r,this.type=t,this.property=o,this.useIntegerZoom=e,this.zoom=i};CompositeFunctionBinder.prototype.defines=function(){return[]},CompositeFunctionBinder.prototype.populatePaintArray=function(r,t,o,e,i,n){var a=this,s=r.getPaintValue(this.property,{zoom:this.zoom},n),p=r.getPaintValue(this.property,{zoom:this.zoom+1},n);if(\"color\"===this.type)for(var u=packColor(s),f=packColor(p),c=e;c<i;c++){var m=t.get(c);m[\"a_\"+a.name+\"0\"]=u[0],m[\"a_\"+a.name+\"1\"]=u[1],m[\"a_\"+a.name+\"2\"]=f[0],m[\"a_\"+a.name+\"3\"]=f[1]}else{for(var y=e;y<i;y++){var g=t.get(y);g[\"a_\"+a.name+\"0\"]=s,g[\"a_\"+a.name+\"1\"]=p}var h=o[this.property];h.max=Math.max(h.max,s,p)}},CompositeFunctionBinder.prototype.setUniforms=function(r,t,o,e){var i=e.zoom,n=interpolationFactor(this.useIntegerZoom?Math.floor(i):i,1,this.zoom,this.zoom+1);r.uniform1f(t.uniforms[\"a_\"+this.name+\"_t\"],n)};var ProgramConfiguration=function(){this.binders={},this.cacheKey=\"\"};ProgramConfiguration.createDynamic=function(r,t,o){for(var e=new ProgramConfiguration,i=[],n=0,a=r.paintAttributes||[];n<a.length;n+=1){var s=a[n],p=s.property,u=s.useIntegerZoom||!1,f=s.name||p.replace(t.type+\"-\",\"\").replace(/-/g,\"_\"),c=t._paintSpecifications[p].type;t.isPaintValueFeatureConstant(p)?(e.binders[f]=new ConstantBinder(f,c,p,u),e.cacheKey+=\"/u_\"+f):t.isPaintValueZoomConstant(p)?(e.binders[f]=new SourceFunctionBinder(f,c,p),e.cacheKey+=\"/a_\"+f,i.push({name:\"a_\"+f,type:\"Float32\",components:\"color\"===c?2:1})):(e.binders[f]=new CompositeFunctionBinder(f,c,p,u,o),e.cacheKey+=\"/z_\"+f,i.push({name:\"a_\"+f,type:\"Float32\",components:\"color\"===c?4:2}))}return e.PaintVertexArray=createVertexArrayType(i),e.interface=r,e.layer=t,e},ProgramConfiguration.createBasicFill=function(){var r=new ProgramConfiguration;return r.binders.color=new ConstantBinder(\"color\",\"color\",\"fill-color\",!1),r.cacheKey+=\"/u_color\",r.binders.opacity=new ConstantBinder(\"opacity\",\"number\",\"fill-opacity\",!1),r.cacheKey+=\"/u_opacity\",r},ProgramConfiguration.prototype.createPaintPropertyStatistics=function(){var r=this,t={};for(var o in r.binders)t[r.binders[o].property]={max:-1/0};return t},ProgramConfiguration.prototype.populatePaintArray=function(r,t){var o=this,e=this.paintVertexArray;if(0!==e.bytesPerElement){var i=e.length;e.resize(r);for(var n in o.binders)o.binders[n].populatePaintArray(o.layer,e,o.paintPropertyStatistics,i,r,t)}},ProgramConfiguration.prototype.defines=function(){var r=this,t=[];for(var o in r.binders)t.push.apply(t,r.binders[o].defines());return t},ProgramConfiguration.prototype.setUniforms=function(r,t,o,e){var i=this;for(var n in i.binders)i.binders[n].setUniforms(r,t,o,e)},ProgramConfiguration.prototype.serialize=function(r){return 0===this.paintVertexArray.length?null:{array:this.paintVertexArray.serialize(r),type:this.paintVertexArray.constructor.serialize(),statistics:this.paintPropertyStatistics}},ProgramConfiguration.deserialize=function(r,t,o,e){var i=ProgramConfiguration.createDynamic(r,t,o);return e&&(i.PaintVertexArray=createVertexArrayType(e.type.members),i.paintVertexArray=new i.PaintVertexArray(e.array),i.paintPropertyStatistics=e.statistics),i},ProgramConfiguration.prototype.upload=function(r){this.paintVertexArray&&(this.paintVertexBuffer=new VertexBuffer(r,this.paintVertexArray))},ProgramConfiguration.prototype.destroy=function(){this.paintVertexBuffer&&this.paintVertexBuffer.destroy()};var ProgramConfigurationSet=function(r,t,o,e){var i=this;if(this.programConfigurations={},e)for(var n=0,a=t;n<a.length;n+=1){var s=a[n];i.programConfigurations[s.id]=ProgramConfiguration.deserialize(r,s,o,e[s.id])}else for(var p=0,u=t;p<u.length;p+=1){var f=u[p],c=ProgramConfiguration.createDynamic(r,f,o);c.paintVertexArray=new c.PaintVertexArray,c.paintPropertyStatistics=c.createPaintPropertyStatistics(),i.programConfigurations[f.id]=c}};ProgramConfigurationSet.prototype.populatePaintArrays=function(r,t){var o=this;for(var e in o.programConfigurations)o.programConfigurations[e].populatePaintArray(r,t)},ProgramConfigurationSet.prototype.serialize=function(r){var t=this,o={};for(var e in t.programConfigurations){var i=t.programConfigurations[e].serialize(r);i&&(o[e]=i)}return o},ProgramConfigurationSet.prototype.get=function(r){return this.programConfigurations[r]},ProgramConfigurationSet.prototype.upload=function(r){var t=this;for(var o in t.programConfigurations)t.programConfigurations[o].upload(r)},ProgramConfigurationSet.prototype.destroy=function(){var r=this;for(var t in r.programConfigurations)r.programConfigurations[t].destroy()},module.exports={ProgramConfiguration:ProgramConfiguration,ProgramConfigurationSet:ProgramConfigurationSet};\n},{\"../gl/vertex_buffer\":62,\"../shaders/encode_attribute\":85,\"../style-spec/function\":112,\"./vertex_array_type\":56}],54:[function(_dereq_,module,exports){\n\"use strict\";var createStructArrayType=_dereq_(\"../util/struct_array\"),RasterBoundsArray=createStructArrayType({members:[{name:\"a_pos\",type:\"Int16\",components:2},{name:\"a_texture_pos\",type:\"Int16\",components:2}]});module.exports=RasterBoundsArray;\n},{\"../util/struct_array\":220}],55:[function(_dereq_,module,exports){\n\"use strict\";var ref=_dereq_(\"../util/util\"),warnOnce=ref.warnOnce,MAX_VERTEX_ARRAY_LENGTH=Math.pow(2,16)-1,SegmentVector=function(e){void 0===e&&(e=[]),this.segments=e};SegmentVector.prototype.prepareSegment=function(e,t,r){var n=this.segments[this.segments.length-1];return e>MAX_VERTEX_ARRAY_LENGTH&&warnOnce(\"Max vertices per segment is \"+MAX_VERTEX_ARRAY_LENGTH+\": bucket requested \"+e),(!n||n.vertexLength+e>module.exports.MAX_VERTEX_ARRAY_LENGTH)&&(n={vertexOffset:t.length,primitiveOffset:r.length,vertexLength:0,primitiveLength:0},this.segments.push(n)),n},SegmentVector.prototype.get=function(){return this.segments},SegmentVector.prototype.destroy=function(){for(var e=this,t=0,r=e.segments;t<r.length;t+=1){var n=r[t];for(var s in n.vaos)n.vaos[s].destroy()}},module.exports={SegmentVector:SegmentVector,MAX_VERTEX_ARRAY_LENGTH:MAX_VERTEX_ARRAY_LENGTH};\n},{\"../util/util\":223}],56:[function(_dereq_,module,exports){\n\"use strict\";function createVertexArrayType(r){return createStructArrayType({members:r,alignment:4})}var createStructArrayType=_dereq_(\"../util/struct_array\");module.exports=createVertexArrayType;\n},{\"../util/struct_array\":220}],57:[function(_dereq_,module,exports){\n\"use strict\";var Coordinate=function(o,t,n){this.column=o,this.row=t,this.zoom=n};Coordinate.prototype.clone=function(){return new Coordinate(this.column,this.row,this.zoom)},Coordinate.prototype.zoomTo=function(o){return this.clone()._zoomTo(o)},Coordinate.prototype.sub=function(o){return this.clone()._sub(o)},Coordinate.prototype._zoomTo=function(o){var t=Math.pow(2,o-this.zoom);return this.column*=t,this.row*=t,this.zoom=o,this},Coordinate.prototype._sub=function(o){return o=o.zoomTo(this.zoom),this.column-=o.column,this.row-=o.row,this},module.exports=Coordinate;\n},{}],58:[function(_dereq_,module,exports){\n\"use strict\";var wrap=_dereq_(\"../util/util\").wrap,LngLat=function(t,n){if(isNaN(t)||isNaN(n))throw new Error(\"Invalid LngLat object: (\"+t+\", \"+n+\")\");if(this.lng=+t,this.lat=+n,this.lat>90||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.prototype.toBounds=function(t){var n=360*t/40075017,r=n/Math.cos(Math.PI/180*this.lat);return new(_dereq_(\"./lng_lat_bounds\"))(new LngLat(this.lng-r,this.lat-n),new LngLat(this.lng+r,this.lat+n))},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: <lng>, lat: <lat>}, or an array of [<lng>, <lat>]\")},module.exports=LngLat;\n},{\"../util/util\":223,\"./lng_lat_bounds\":59}],59:[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=t instanceof LngLat?new LngLat(t.lng,t.lat):LngLat.convert(t),this},LngLatBounds.prototype.setSouthWest=function(t){return this._sw=t instanceof LngLat?new LngLat(t.lng,t.lat):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\":58}],60:[function(_dereq_,module,exports){\n\"use strict\";var LngLat=_dereq_(\"./lng_lat\"),Point=_dereq_(\"@mapbox/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,o,i){this.tileSize=512,this._renderWorldCopies=void 0===i||i,this._minZoom=t||0,this._maxZoom=o||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 o=-util.wrap(t,-180,180)*Math.PI/180;this.angle!==o&&(this._unmodified=!1,this.angle=o,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 o=util.clamp(t,0,60)/180*Math.PI;this._pitch!==o&&(this._unmodified=!1,this._pitch=o,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 o=Math.min(Math.max(t,this.minZoom),this.maxZoom);this._zoom!==o&&(this._unmodified=!1,this._zoom=o,this.scale=this.zoomScale(o),this.tileZoom=Math.floor(o),this.zoomFraction=o-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 o=this.pointCoordinate(new Point(0,0),0),i=this.pointCoordinate(new Point(this.width,0),0),e=Math.floor(o.column),r=Math.floor(i.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 o=this.coveringZoomLevel(t),i=o;if(void 0!==t.minzoom&&o<t.minzoom)return[];void 0!==t.maxzoom&&o>t.maxzoom&&(o=t.maxzoom);var e=this.pointCoordinate(this.centerPoint,o),r=new Point(e.column-.5,e.row-.5),n=[this.pointCoordinate(new Point(0,0),o),this.pointCoordinate(new Point(this.width,0),o),this.pointCoordinate(new Point(this.width,this.height),o),this.pointCoordinate(new Point(0,this.height),o)];return TileCoord.cover(o,n,t.reparseOverscaled?i:o,this._renderWorldCopies).sort(function(t,o){return r.dist(t)-r.dist(o)})},Transform.prototype.resize=function(t,o){this.width=t,this.height=o,this.pixelsToGLUnits=[2/t,-2/o],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 o=180-360*t/this.worldSize;return 360/Math.PI*Math.atan(Math.exp(o*Math.PI/180))-90},Transform.prototype.setLocationAtPoint=function(t,o){var i=this.pointCoordinate(o)._sub(this.pointCoordinate(this.centerPoint));this.center=this.coordinateLocation(this.locationCoordinate(t)._sub(i)),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 o=t.zoomTo(this.zoom);return new LngLat(this.xLng(o.column*this.tileSize),this.yLat(o.row*this.tileSize))},Transform.prototype.pointCoordinate=function(t,o){void 0===o&&(o=this.tileZoom);var i=[t.x,t.y,0,1],e=[t.x,t.y,1,1];vec4.transformMat4(i,i,this.pixelMatrixInverse),vec4.transformMat4(e,e,this.pixelMatrixInverse);var r=i[3],n=e[3],s=i[0]/r,a=e[0]/n,h=i[1]/r,c=e[1]/n,m=i[2]/r,p=e[2]/n,l=m===p?0:(0-m)/(p-m);return new Coordinate(interp(s,a,l)/this.tileSize,interp(h,c,l)/this.tileSize,this.zoom)._zoomTo(o)},Transform.prototype.coordinatePoint=function(t){var o=t.zoomTo(this.zoom),i=[o.column*this.tileSize,o.row*this.tileSize,0,1];return vec4.transformMat4(i,i,this.pixelMatrix),new Point(i[0]/i[3],i[1]/i[3])},Transform.prototype.calculatePosMatrix=function(t,o){var i=t.toCoordinate(o),e=this.worldSize/this.zoomScale(i.zoom),r=mat4.identity(new Float64Array(16));return mat4.translate(r,r,[i.column*e,i.row*e,0]),mat4.scale(r,r,[e/EXTENT,e/EXTENT,1]),mat4.multiply(r,this.projMatrix,r),new Float32Array(r)},Transform.prototype.cameraToTileDistance=function(t){var o=this.calculatePosMatrix(t.coord,t.sourceMaxZoom),i=[t.tileSize/2,t.tileSize/2,0,1];return vec4.transformMat4(i,i,o),i[3]},Transform.prototype._constrain=function(){if(this.center&&this.width&&this.height&&!this._constraining){this._constraining=!0;var t,o,i,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-r<h.y?h.y/(n-r):0}if(this.lngRange){var p=this.lngRange;s=this.lngX(p[0]),a=this.lngX(p[1]),o=a-s<h.x?h.x/(a-s):0}var l=Math.max(o||0,t||0);if(l)return this.center=this.unproject(new Point(o?(a+s)/2:this.x,t?(n+r)/2:this.y)),this.zoom+=this.scaleZoom(l),this._unmodified=c,void(this._constraining=!1);if(this.latRange){var u=this.y,f=h.y/2;u-f<r&&(e=r+f),u+f>n&&(e=n-f)}if(this.lngRange){var d=this.x,g=h.x/2;d-g<s&&(i=s+g),d+g>a&&(i=a-g)}void 0===i&&void 0===e||(this.center=this.unproject(new Point(void 0!==i?i: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,o=Math.PI/2+this._pitch,i=Math.sin(t)*this.cameraToCenterDistance/Math.sin(Math.PI-o-t),e=Math.cos(Math.PI/2-this._pitch)*i+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)))throw new Error(\"failed to invert matrix\");this.pixelMatrixInverse=n}},Object.defineProperties(Transform.prototype,prototypeAccessors),module.exports=Transform;\n},{\"../data/extent\":48,\"../source/tile_coord\":101,\"../style-spec/util/interpolate\":127,\"../util/util\":223,\"./coordinate\":57,\"./lng_lat\":58,\"@mapbox/gl-matrix\":1,\"@mapbox/point-geometry\":2}],61:[function(_dereq_,module,exports){\n\"use strict\";var IndexBuffer=function(e,r){this.gl=e,this.buffer=e.createBuffer(),void 0===e.extVertexArrayObject&&(e.extVertexArrayObject=e.getExtension(\"OES_vertex_array_object\")),e.extVertexArrayObject&&e.extVertexArrayObject.bindVertexArrayOES(null),e.bindBuffer(e.ELEMENT_ARRAY_BUFFER,this.buffer),e.bufferData(e.ELEMENT_ARRAY_BUFFER,r.arrayBuffer,e.STATIC_DRAW),delete r.arrayBuffer};IndexBuffer.prototype.bind=function(){this.gl.bindBuffer(this.gl.ELEMENT_ARRAY_BUFFER,this.buffer)},IndexBuffer.prototype.destroy=function(){this.buffer&&(this.gl.deleteBuffer(this.buffer),delete this.buffer)},module.exports=IndexBuffer;\n},{}],62:[function(_dereq_,module,exports){\n\"use strict\";var AttributeType={Int8:\"BYTE\",Uint8:\"UNSIGNED_BYTE\",Int16:\"SHORT\",Uint16:\"UNSIGNED_SHORT\",Int32:\"INT\",Uint32:\"UNSIGNED_INT\",Float32:\"FLOAT\"},VertexBuffer=function(t,e,r){this.length=e.length,this.attributes=e.members,this.itemSize=e.bytesPerElement,this.dynamicDraw=r,this.gl=t,this.buffer=t.createBuffer(),this.gl.bindBuffer(t.ARRAY_BUFFER,this.buffer),this.gl.bufferData(t.ARRAY_BUFFER,e.arrayBuffer,this.dynamicDraw?t.DYNAMIC_DRAW:t.STATIC_DRAW),this.dynamicDraw||delete e.arrayBuffer};VertexBuffer.prototype.bind=function(){this.gl.bindBuffer(this.gl.ARRAY_BUFFER,this.buffer)},VertexBuffer.prototype.updateData=function(t){this.bind(),this.gl.bufferSubData(this.gl.ARRAY_BUFFER,0,t.arrayBuffer)},VertexBuffer.prototype.enableAttributes=function(t,e){for(var r=this,i=0;i<this.attributes.length;i++){var f=r.attributes[i],s=e.attributes[f.name];void 0!==s&&t.enableVertexAttribArray(s)}},VertexBuffer.prototype.setVertexAttribPointers=function(t,e,r){for(var i=this,f=0;f<this.attributes.length;f++){var s=i.attributes[f],u=e.attributes[s.name];void 0!==u&&t.vertexAttribPointer(u,s.components,t[AttributeType[s.type]],!1,i.itemSize,s.offset+i.itemSize*(r||0))}},VertexBuffer.prototype.destroy=function(){this.buffer&&(this.gl.deleteBuffer(this.buffer),delete this.buffer)},module.exports=VertexBuffer;\n},{}],63:[function(_dereq_,module,exports){\n\"use strict\";var supported=_dereq_(\"mapbox-gl-supported\"),browser=_dereq_(\"./util/browser\"),version=_dereq_(\"../package.json\").version,Map=_dereq_(\"./ui/map\"),NavigationControl=_dereq_(\"./ui/control/navigation_control\"),GeolocateControl=_dereq_(\"./ui/control/geolocate_control\"),AttributionControl=_dereq_(\"./ui/control/attribution_control\"),ScaleControl=_dereq_(\"./ui/control/scale_control\"),FullscreenControl=_dereq_(\"./ui/control/fullscreen_control\"),Popup=_dereq_(\"./ui/popup\"),Marker=_dereq_(\"./ui/marker\"),Style=_dereq_(\"./style/style\"),LngLat=_dereq_(\"./geo/lng_lat\"),LngLatBounds=_dereq_(\"./geo/lng_lat_bounds\"),Point=_dereq_(\"@mapbox/point-geometry\"),Evented=_dereq_(\"./util/evented\"),config=_dereq_(\"./util/config\"),rtlTextPlugin=_dereq_(\"./source/rtl_text_plugin\");module.exports={version:version,supported:supported,workerCount:Math.max(Math.floor(browser.hardwareConcurrency/2),1),setRTLTextPlugin:rtlTextPlugin.setRTLTextPlugin,Map:Map,NavigationControl:NavigationControl,GeolocateControl:GeolocateControl,AttributionControl:AttributionControl,ScaleControl:ScaleControl,FullscreenControl:FullscreenControl,Popup:Popup,Marker:Marker,Style:Style,LngLat:LngLat,LngLatBounds:LngLatBounds,Point:Point,Evented:Evented,config:config,get accessToken(){return config.ACCESS_TOKEN},set accessToken(o){config.ACCESS_TOKEN=o}};\n},{\"../package.json\":41,\"./geo/lng_lat\":58,\"./geo/lng_lat_bounds\":59,\"./source/rtl_text_plugin\":96,\"./style/style\":156,\"./ui/control/attribution_control\":182,\"./ui/control/fullscreen_control\":183,\"./ui/control/geolocate_control\":184,\"./ui/control/navigation_control\":186,\"./ui/control/scale_control\":187,\"./ui/map\":197,\"./ui/marker\":198,\"./ui/popup\":199,\"./util/browser\":202,\"./util/config\":206,\"./util/evented\":210,\"@mapbox/point-geometry\":2,\"mapbox-gl-supported\":28}],64:[function(_dereq_,module,exports){\n\"use strict\";function drawBackground(r,t,e){var i=r.gl,a=r.transform,n=a.tileSize,o=e.paint[\"background-color\"],l=e.paint[\"background-pattern\"],u=e.paint[\"background-opacity\"],f=l||1!==o[3]||1!==u?\"translucent\":\"opaque\";if(r.renderPass===f){i.disable(i.STENCIL_TEST),r.setDepthSublayer(0);var s;if(l){if(pattern.isPatternMissing(l,r))return;s=r.useProgram(\"fillPattern\",r.basicFillProgramConfiguration),pattern.prepare(l,r,s),r.tileExtentPatternVAO.bind(i,s,r.tileExtentBuffer)}else s=r.useProgram(\"fill\",r.basicFillProgramConfiguration),i.uniform4fv(s.uniforms.u_color,o),r.tileExtentVAO.bind(i,s,r.tileExtentBuffer);i.uniform1f(s.uniforms.u_opacity,u);for(var c=a.coveringTiles({tileSize:n}),g=0,p=c;g<p.length;g+=1){var d=p[g];l&&pattern.setTile({coord:d,tileSize:n},r,s),i.uniformMatrix4fv(s.uniforms.u_matrix,!1,r.transform.calculatePosMatrix(d)),i.drawArrays(i.TRIANGLE_STRIP,0,r.tileExtentBuffer.length)}}}var pattern=_dereq_(\"./pattern\");module.exports=drawBackground;\n},{\"./pattern\":80}],65:[function(_dereq_,module,exports){\n\"use strict\";function drawCircles(r,i,e,t){if(\"translucent\"===r.renderPass){var a=r.gl;r.setDepthSublayer(0),r.depthMask(!1),a.disable(a.STENCIL_TEST);for(var s=0;s<t.length;s++){var o=t[s],n=i.getTile(o),u=n.getBucket(e);if(u){var m=u.programConfigurations.get(e.id),f=r.useProgram(\"circle\",m);if(m.setUniforms(a,f,e,{zoom:r.transform.zoom}),a.uniform1f(f.uniforms.u_camera_to_center_distance,r.transform.cameraToCenterDistance),a.uniform1i(f.uniforms.u_scale_with_map,\"map\"===e.paint[\"circle-pitch-scale\"]?1:0),\"map\"===e.paint[\"circle-pitch-alignment\"]){a.uniform1i(f.uniforms.u_pitch_with_map,1);var l=pixelsToTileUnits(n,1,r.transform.zoom);a.uniform2f(f.uniforms.u_extrude_scale,l,l)}else a.uniform1i(f.uniforms.u_pitch_with_map,0),a.uniform2fv(f.uniforms.u_extrude_scale,r.transform.pixelsToGLUnits);a.uniform1f(f.uniforms.u_devicepixelratio,browser.devicePixelRatio),a.uniformMatrix4fv(f.uniforms.u_matrix,!1,r.translatePosMatrix(o.posMatrix,n,e.paint[\"circle-translate\"],e.paint[\"circle-translate-anchor\"])),f.draw(a,a.TRIANGLES,e.id,u.layoutVertexBuffer,u.indexBuffer,u.segments,m)}}}}var browser=_dereq_(\"../util/browser\"),pixelsToTileUnits=_dereq_(\"../source/pixels_to_tile_units\");module.exports=drawCircles;\n},{\"../source/pixels_to_tile_units\":93,\"../util/browser\":202}],66:[function(_dereq_,module,exports){\n\"use strict\";function drawCollisionDebug(o,i,r,e){var n=o.gl;n.enable(n.STENCIL_TEST);var t=o.useProgram(\"collisionBox\");n.activeTexture(n.TEXTURE1),o.frameHistory.bind(n),n.uniform1i(t.uniforms.u_fadetexture,1);for(var a=0;a<e.length;a++){var f=e[a],u=i.getTile(f),m=u.getBucket(r);if(m){n.uniformMatrix4fv(t.uniforms.u_matrix,!1,f.posMatrix),o.enableTileClippingMask(f),o.lineWidth(1),n.uniform1f(t.uniforms.u_scale,Math.pow(2,o.transform.zoom-u.coord.z)),n.uniform1f(t.uniforms.u_zoom,10*o.transform.zoom);var s=Math.max(0,Math.min(25,u.coord.z+Math.log(u.collisionTile.maxScale)/Math.LN2));n.uniform1f(t.uniforms.u_maxzoom,10*s),n.uniform1f(t.uniforms.u_collision_y_stretch,u.collisionTile.yStretch),n.uniform1f(t.uniforms.u_pitch,o.transform.pitch/360*2*Math.PI),n.uniform1f(t.uniforms.u_camera_to_center_distance,o.transform.cameraToCenterDistance),t.draw(n,n.LINES,r.id,m.collisionBox.layoutVertexBuffer,m.collisionBox.indexBuffer,m.collisionBox.segments)}}}module.exports=drawCollisionDebug;\n},{}],67:[function(_dereq_,module,exports){\n\"use strict\";function drawDebug(r,e,t){for(var a=0;a<t.length;a++)drawDebugTile(r,e,t[a])}function drawDebugTile(r,e,t){var a=r.gl;a.disable(a.STENCIL_TEST),r.lineWidth(1*browser.devicePixelRatio);var i=t.posMatrix,u=r.useProgram(\"debug\");a.uniformMatrix4fv(u.uniforms.u_matrix,!1,i),a.uniform4f(u.uniforms.u_color,1,0,0,1),r.debugVAO.bind(a,u,r.debugBuffer),a.drawArrays(a.LINE_STRIP,0,r.debugBuffer.length);for(var o=createTextVerticies(t.toString(),50,200,5),n=new PosArray,f=0;f<o.length;f+=2)n.emplaceBack(o[f],o[f+1]);var l=new VertexBuffer(a,n);(new VertexArrayObject).bind(a,u,l),a.uniform4f(u.uniforms.u_color,1,1,1,1);for(var s=e.getTile(t).tileSize,m=EXTENT/(Math.pow(2,r.transform.zoom-t.z)*s),x=[[-1,-1],[-1,1],[1,-1],[1,1]],g=0;g<x.length;g++){var b=x[g];a.uniformMatrix4fv(u.uniforms.u_matrix,!1,mat4.translate([],i,[m*b[0],m*b[1],0])),a.drawArrays(a.LINES,0,l.length)}a.uniform4f(u.uniforms.u_color,0,0,0,1),a.uniformMatrix4fv(u.uniforms.u_matrix,!1,i),a.drawArrays(a.LINES,0,l.length)}function createTextVerticies(r,e,t,a){a=a||1;var i,u,o,n,f,l,s,m,x=[];for(i=0,u=r.length;i<u;i++)if(f=simplexFont[r[i]]){for(m=null,o=0,n=f[1].length;o<n;o+=2)-1===f[1][o]&&-1===f[1][o+1]?m=null:(l=e+f[1][o]*a,s=t-f[1][o+1]*a,m&&x.push(m.x,m.y,l,s),m={x:l,y:s});e+=f[0]*a}return x}var browser=_dereq_(\"../util/browser\"),mat4=_dereq_(\"@mapbox/gl-matrix\").mat4,EXTENT=_dereq_(\"../data/extent\"),VertexBuffer=_dereq_(\"../gl/vertex_buffer\"),VertexArrayObject=_dereq_(\"./vertex_array_object\"),PosArray=_dereq_(\"../data/pos_array\");module.exports=drawDebug;var simplexFont={\" \":[16,[]],\"!\":[10,[5,21,5,7,-1,-1,5,2,4,1,5,0,6,1,5,2]],'\"':[16,[4,21,4,14,-1,-1,12,21,12,14]],\"#\":[21,[11,25,4,-7,-1,-1,17,25,10,-7,-1,-1,4,12,18,12,-1,-1,3,6,17,6]],$:[20,[8,25,8,-4,-1,-1,12,25,12,-4,-1,-1,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]],\"%\":[24,[21,21,3,0,-1,-1,8,21,10,19,10,17,9,15,7,14,5,14,3,16,3,18,4,20,6,21,8,21,10,20,13,19,16,19,19,20,21,21,-1,-1,17,7,15,6,14,4,14,2,16,0,18,0,20,1,21,3,21,5,19,7,17,7]],\"&\":[26,[23,12,23,13,22,14,21,14,20,13,19,11,17,6,15,3,13,1,11,0,7,0,5,1,4,2,3,4,3,6,4,8,5,9,12,13,13,14,14,16,14,18,13,20,11,21,9,20,8,18,8,16,9,13,11,10,16,3,18,1,20,0,22,0,23,1,23,2]],\"'\":[10,[5,19,4,20,5,21,6,20,6,18,5,16,4,15]],\"(\":[14,[11,25,9,23,7,20,5,16,4,11,4,7,5,2,7,-2,9,-5,11,-7]],\")\":[14,[3,25,5,23,7,20,9,16,10,11,10,7,9,2,7,-2,5,-5,3,-7]],\"*\":[16,[8,21,8,9,-1,-1,3,18,13,12,-1,-1,13,18,3,12]],\"+\":[26,[13,18,13,0,-1,-1,4,9,22,9]],\",\":[10,[6,1,5,0,4,1,5,2,6,1,6,-1,5,-3,4,-4]],\"-\":[26,[4,9,22,9]],\".\":[10,[5,2,4,1,5,0,6,1,5,2]],\"/\":[22,[20,25,2,-7]],0:[20,[9,21,6,20,4,17,3,12,3,9,4,4,6,1,9,0,11,0,14,1,16,4,17,9,17,12,16,17,14,20,11,21,9,21]],1:[20,[6,17,8,18,11,21,11,0]],2:[20,[4,16,4,17,5,19,6,20,8,21,12,21,14,20,15,19,16,17,16,15,15,13,13,10,3,0,17,0]],3:[20,[5,21,16,21,10,13,13,13,15,12,16,11,17,8,17,6,16,3,14,1,11,0,8,0,5,1,4,2,3,4]],4:[20,[13,21,3,7,18,7,-1,-1,13,21,13,0]],5:[20,[15,21,5,21,4,12,5,13,8,14,11,14,14,13,16,11,17,8,17,6,16,3,14,1,11,0,8,0,5,1,4,2,3,4]],6:[20,[16,18,15,20,12,21,10,21,7,20,5,17,4,12,4,7,5,3,7,1,10,0,11,0,14,1,16,3,17,6,17,7,16,10,14,12,11,13,10,13,7,12,5,10,4,7]],7:[20,[17,21,7,0,-1,-1,3,21,17,21]],8:[20,[8,21,5,20,4,18,4,16,5,14,7,13,11,12,14,11,16,9,17,7,17,4,16,2,15,1,12,0,8,0,5,1,4,2,3,4,3,7,4,9,6,11,9,12,13,13,15,14,16,16,16,18,15,20,12,21,8,21]],9:[20,[16,14,15,11,13,9,10,8,9,8,6,9,4,11,3,14,3,15,4,18,6,20,9,21,10,21,13,20,15,18,16,14,16,9,15,4,13,1,10,0,8,0,5,1,4,3]],\":\":[10,[5,14,4,13,5,12,6,13,5,14,-1,-1,5,2,4,1,5,0,6,1,5,2]],\";\":[10,[5,14,4,13,5,12,6,13,5,14,-1,-1,6,1,5,0,4,1,5,2,6,1,6,-1,5,-3,4,-4]],\"<\":[24,[20,18,4,9,20,0]],\"=\":[26,[4,12,22,12,-1,-1,4,6,22,6]],\">\":[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/extent\":48,\"../data/pos_array\":52,\"../gl/vertex_buffer\":62,\"../util/browser\":202,\"./vertex_array_object\":84,\"@mapbox/gl-matrix\":1}],68:[function(_dereq_,module,exports){\n\"use strict\";function drawFill(r,t,e,a){var i=r.gl;i.enable(i.STENCIL_TEST);var l=!e.paint[\"fill-pattern\"]&&e.isPaintValueFeatureConstant(\"fill-color\")&&e.isPaintValueFeatureConstant(\"fill-opacity\")&&1===e.paint[\"fill-color\"][3]&&1===e.paint[\"fill-opacity\"]?\"opaque\":\"translucent\";r.renderPass===l&&(r.setDepthSublayer(1),r.depthMask(\"opaque\"===r.renderPass),drawFillTiles(r,t,e,a,drawFillTile)),\"translucent\"===r.renderPass&&e.paint[\"fill-antialias\"]&&(r.lineWidth(2),r.depthMask(!1),r.setDepthSublayer(e.getPaintProperty(\"fill-outline-color\")?2:0),drawFillTiles(r,t,e,a,drawStrokeTile))}function drawFillTiles(r,t,e,a,i){if(!pattern.isPatternMissing(e.paint[\"fill-pattern\"],r))for(var l=!0,n=0,o=a;n<o.length;n+=1){var s=o[n],f=t.getTile(s),u=f.getBucket(e);u&&(r.enableTileClippingMask(s),i(r,t,e,f,s,u,l),l=!1)}}function drawFillTile(r,t,e,a,i,l,n){var o=r.gl,s=l.programConfigurations.get(e.id);setFillProgram(\"fill\",e.paint[\"fill-pattern\"],r,s,e,a,i,n).draw(o,o.TRIANGLES,e.id,l.layoutVertexBuffer,l.indexBuffer,l.segments,s)}function drawStrokeTile(r,t,e,a,i,l,n){var o=r.gl,s=l.programConfigurations.get(e.id),f=e.paint[\"fill-pattern\"]&&!e.getPaintProperty(\"fill-outline-color\"),u=setFillProgram(\"fillOutline\",f,r,s,e,a,i,n);o.uniform2f(u.uniforms.u_world,o.drawingBufferWidth,o.drawingBufferHeight),u.draw(o,o.LINES,e.id,l.layoutVertexBuffer,l.indexBuffer2,l.segments2,s)}function setFillProgram(r,t,e,a,i,l,n,o){var s,f=e.currentProgram;return t?(s=e.useProgram(r+\"Pattern\",a),(o||s!==f)&&(a.setUniforms(e.gl,s,i,{zoom:e.transform.zoom}),pattern.prepare(i.paint[\"fill-pattern\"],e,s)),pattern.setTile(l,e,s)):(s=e.useProgram(r,a),(o||s!==f)&&a.setUniforms(e.gl,s,i,{zoom:e.transform.zoom})),e.gl.uniformMatrix4fv(s.uniforms.u_matrix,!1,e.translatePosMatrix(n.posMatrix,l,i.paint[\"fill-translate\"],i.paint[\"fill-translate-anchor\"])),s}var pattern=_dereq_(\"./pattern\");module.exports=drawFill;\n},{\"./pattern\":80}],69:[function(_dereq_,module,exports){\n\"use strict\";function draw(r,t,e,i){if(\"3d\"===r.renderPass){var a=r.gl;a.disable(a.STENCIL_TEST),a.enable(a.DEPTH_TEST),r.clearColor(),r.depthMask(!0);for(var n=0;n<i.length;n++)drawExtrusion(r,t,e,i[n])}else\"translucent\"===r.renderPass&&drawExtrusionTexture(r,e)}function drawExtrusionTexture(r,t){var e=r.prerenderedFrames[t.id];if(e){var i=r.gl,a=r.useProgram(\"extrusionTexture\");i.disable(i.STENCIL_TEST),i.disable(i.DEPTH_TEST),i.activeTexture(i.TEXTURE0),i.bindTexture(i.TEXTURE_2D,e.texture),i.uniform1f(a.uniforms.u_opacity,t.paint[\"fill-extrusion-opacity\"]),i.uniform1i(a.uniforms.u_image,0);var n=mat4.create();mat4.ortho(n,0,r.width,r.height,0,0,1),i.uniformMatrix4fv(a.uniforms.u_matrix,!1,n),i.uniform2f(a.uniforms.u_world,i.drawingBufferWidth,i.drawingBufferHeight),e.vao.bind(i,a,e.buffer),i.drawArrays(i.TRIANGLE_STRIP,0,4),r.viewportFrames.push(e),delete r.prerenderedFrames[t.id]}}function drawExtrusion(r,t,e,i){var a=t.getTile(i),n=a.getBucket(e);if(n){var o=r.gl,u=e.paint[\"fill-extrusion-pattern\"],s=n.programConfigurations.get(e.id),f=r.useProgram(u?\"fillExtrusionPattern\":\"fillExtrusion\",s);if(s.setUniforms(o,f,e,{zoom:r.transform.zoom}),u){if(pattern.isPatternMissing(u,r))return;pattern.prepare(u,r,f),pattern.setTile(a,r,f),o.uniform1f(f.uniforms.u_height_factor,-Math.pow(2,i.z)/a.tileSize/8)}r.gl.uniformMatrix4fv(f.uniforms.u_matrix,!1,r.translatePosMatrix(i.posMatrix,a,e.paint[\"fill-extrusion-translate\"],e.paint[\"fill-extrusion-translate-anchor\"])),setLight(f,r),f.draw(o,o.TRIANGLES,e.id,n.layoutVertexBuffer,n.indexBuffer,n.segments,s)}}function setLight(r,t){var e=t.gl,i=t.style.light,a=i.calculated.position,n=[a.x,a.y,a.z],o=mat3.create();\"viewport\"===i.calculated.anchor&&mat3.fromRotation(o,-t.transform.angle),vec3.transformMat3(n,n,o),e.uniform3fv(r.uniforms.u_lightpos,n),e.uniform1f(r.uniforms.u_lightintensity,i.calculated.intensity),e.uniform3fv(r.uniforms.u_lightcolor,i.calculated.color.slice(0,3))}var glMatrix=_dereq_(\"@mapbox/gl-matrix\"),pattern=_dereq_(\"./pattern\"),mat3=glMatrix.mat3,mat4=glMatrix.mat4,vec3=glMatrix.vec3;module.exports=draw;\n},{\"./pattern\":80,\"@mapbox/gl-matrix\":1}],70:[function(_dereq_,module,exports){\n\"use strict\";function drawLineTile(i,r,e,t,n,a,o,u,f){var s,l,m,_,p=r.gl,g=n.paint[\"line-dasharray\"],d=n.paint[\"line-pattern\"];if(u||f){var x=1/pixelsToTileUnits(e,1,r.transform.tileZoom);if(g){s=r.lineAtlas.getDash(g.from,\"round\"===n.layout[\"line-cap\"]),l=r.lineAtlas.getDash(g.to,\"round\"===n.layout[\"line-cap\"]);var T=s.width*g.fromScale,c=l.width*g.toScale;p.uniform2f(i.uniforms.u_patternscale_a,x/T,-s.height/2),p.uniform2f(i.uniforms.u_patternscale_b,x/c,-l.height/2),p.uniform1f(i.uniforms.u_sdfgamma,r.lineAtlas.width/(256*Math.min(T,c)*browser.devicePixelRatio)/2)}else if(d){if(m=r.imageManager.getPattern(d.from),_=r.imageManager.getPattern(d.to),!m||!_)return;p.uniform2f(i.uniforms.u_pattern_size_a,m.displaySize[0]*d.fromScale/x,_.displaySize[1]),p.uniform2f(i.uniforms.u_pattern_size_b,_.displaySize[0]*d.toScale/x,_.displaySize[1]);var h=r.imageManager.getPixelSize(),v=h.width,b=h.height;p.uniform2fv(i.uniforms.u_texsize,[v,b])}p.uniform2f(i.uniforms.u_gl_units_to_pixels,1/r.transform.pixelsToGLUnits[0],1/r.transform.pixelsToGLUnits[1])}u&&(g?(p.uniform1i(i.uniforms.u_image,0),p.activeTexture(p.TEXTURE0),r.lineAtlas.bind(p),p.uniform1f(i.uniforms.u_tex_y_a,s.y),p.uniform1f(i.uniforms.u_tex_y_b,l.y),p.uniform1f(i.uniforms.u_mix,g.t)):d&&(p.uniform1i(i.uniforms.u_image,0),p.activeTexture(p.TEXTURE0),r.imageManager.bind(p),p.uniform2fv(i.uniforms.u_pattern_tl_a,m.tl),p.uniform2fv(i.uniforms.u_pattern_br_a,m.br),p.uniform2fv(i.uniforms.u_pattern_tl_b,_.tl),p.uniform2fv(i.uniforms.u_pattern_br_b,_.br),p.uniform1f(i.uniforms.u_fade,d.t))),r.enableTileClippingMask(a);var y=r.translatePosMatrix(a.posMatrix,e,n.paint[\"line-translate\"],n.paint[\"line-translate-anchor\"]);p.uniformMatrix4fv(i.uniforms.u_matrix,!1,y),p.uniform1f(i.uniforms.u_ratio,1/pixelsToTileUnits(e,1,r.transform.zoom)),i.draw(p,p.TRIANGLES,n.id,t.layoutVertexBuffer,t.indexBuffer,t.segments,o)}var browser=_dereq_(\"../util/browser\"),pixelsToTileUnits=_dereq_(\"../source/pixels_to_tile_units\");module.exports=function(i,r,e,t){if(\"translucent\"===i.renderPass){i.setDepthSublayer(0),i.depthMask(!1);var n=i.gl;if(n.enable(n.STENCIL_TEST),!(e.paint[\"line-width\"]<=0))for(var a,o=e.paint[\"line-dasharray\"]?\"lineSDF\":e.paint[\"line-pattern\"]?\"linePattern\":\"line\",u=!0,f=0,s=t;f<s.length;f+=1){var l=s[f],m=r.getTile(l),_=m.getBucket(e);if(_){var p=_.programConfigurations.get(e.id),g=i.currentProgram,d=i.useProgram(o,p),x=u||d!==g,T=a!==m.coord.z;x&&p.setUniforms(i.gl,d,e,{zoom:i.transform.zoom}),drawLineTile(d,i,m,_,e,l,p,x,T),a=m.coord.z,u=!1}}}};\n},{\"../source/pixels_to_tile_units\":93,\"../util/browser\":202}],71:[function(_dereq_,module,exports){\n\"use strict\";function drawRaster(r,t,e,a){if(\"translucent\"===r.renderPass){var i=r.gl,o=t.getSource(),n=r.useProgram(\"raster\");i.enable(i.DEPTH_TEST),r.depthMask(!0),i.depthFunc(i.LESS),i.disable(i.STENCIL_TEST),i.uniform1f(n.uniforms.u_brightness_low,e.paint[\"raster-brightness-min\"]),i.uniform1f(n.uniforms.u_brightness_high,e.paint[\"raster-brightness-max\"]),i.uniform1f(n.uniforms.u_saturation_factor,saturationFactor(e.paint[\"raster-saturation\"])),i.uniform1f(n.uniforms.u_contrast_factor,contrastFactor(e.paint[\"raster-contrast\"])),i.uniform3fv(n.uniforms.u_spin_weights,spinWeights(e.paint[\"raster-hue-rotate\"])),i.uniform1f(n.uniforms.u_buffer_scale,1),i.uniform1i(n.uniforms.u_image0,0),i.uniform1i(n.uniforms.u_image1,1);for(var u=a.length&&a[0].z,s=0,f=a;s<f.length;s+=1){var m=f[s];r.setDepthSublayer(m.z-u);var d=t.getTile(m),c=r.transform.calculatePosMatrix(m,t.getSource().maxzoom);d.registerFadeDuration(r.style.animationLoop,e.paint[\"raster-fade-duration\"]),i.uniformMatrix4fv(n.uniforms.u_matrix,!1,c);var p=t.findLoadedParent(m,0,{}),_=getFadeValues(d,p,t,e,r.transform),h=void 0,l=void 0;if(i.activeTexture(i.TEXTURE0),i.bindTexture(i.TEXTURE_2D,d.texture),i.activeTexture(i.TEXTURE1),p?(i.bindTexture(i.TEXTURE_2D,p.texture),h=Math.pow(2,p.coord.z-d.coord.z),l=[d.coord.x*h%1,d.coord.y*h%1]):i.bindTexture(i.TEXTURE_2D,d.texture),i.uniform2fv(n.uniforms.u_tl_parent,l||[0,0]),i.uniform1f(n.uniforms.u_scale_parent,h||1),i.uniform1f(n.uniforms.u_fade_t,_.mix),i.uniform1f(n.uniforms.u_opacity,_.opacity*e.paint[\"raster-opacity\"]),o instanceof ImageSource){var g=o.boundsBuffer;o.boundsVAO.bind(i,n,g),i.drawArrays(i.TRIANGLE_STRIP,0,g.length)}else{var T=r.rasterBoundsBuffer;r.rasterBoundsVAO.bind(i,n,T),i.drawArrays(i.TRIANGLE_STRIP,0,T.length)}}i.depthFunc(i.LEQUAL)}}function spinWeights(r){r*=Math.PI/180;var t=Math.sin(r),e=Math.cos(r);return[(2*e+1)/3,(-Math.sqrt(3)*t-e+1)/3,(Math.sqrt(3)*t-e+1)/3]}function contrastFactor(r){return r>0?1/(1-r):1+r}function saturationFactor(r){return r>0?1-1/(1.001-r):-r}function getFadeValues(r,t,e,a,i){var o=a.paint[\"raster-fade-duration\"];if(o>0){var n=Date.now(),u=(n-r.timeAdded)/o,s=t?(n-t.timeAdded)/o:-1,f=e.getSource(),m=i.coveringZoomLevel({tileSize:f.tileSize,roundZoom:f.roundZoom}),d=!t||Math.abs(t.coord.z-m)>Math.abs(r.coord.z-m),c=d&&r.refreshedUponExpiration?1:util.clamp(d?u:1-s,0,1);return r.refreshedUponExpiration&&u>=1&&(r.refreshedUponExpiration=!1),t?{opacity:1,mix:1-c}:{opacity:c,mix:0}}return{opacity:1,mix:0}}var util=_dereq_(\"../util/util\"),ImageSource=_dereq_(\"../source/image_source\");module.exports=drawRaster;\n},{\"../source/image_source\":91,\"../util/util\":223}],72:[function(_dereq_,module,exports){\n\"use strict\";function drawSymbols(t,i,o,e){if(\"translucent\"===t.renderPass){var a=!(o.layout[\"text-allow-overlap\"]||o.layout[\"icon-allow-overlap\"]||o.layout[\"text-ignore-placement\"]||o.layout[\"icon-ignore-placement\"]),r=t.gl;a?r.disable(r.STENCIL_TEST):r.enable(r.STENCIL_TEST),t.setDepthSublayer(0),t.depthMask(!1),drawLayerSymbols(t,i,o,e,!1,o.paint[\"icon-translate\"],o.paint[\"icon-translate-anchor\"],o.layout[\"icon-rotation-alignment\"],o.layout[\"icon-pitch-alignment\"],o.layout[\"icon-keep-upright\"]),drawLayerSymbols(t,i,o,e,!0,o.paint[\"text-translate\"],o.paint[\"text-translate-anchor\"],o.layout[\"text-rotation-alignment\"],o.layout[\"text-pitch-alignment\"],o.layout[\"text-keep-upright\"]),i.map.showCollisionBoxes&&drawCollisionDebug(t,i,o,e)}}function drawLayerSymbols(t,i,o,e,a,r,n,s,u,l){var m=t.gl,f=t.transform,c=\"map\"===s,_=\"map\"===u,y=c&&\"line\"===o.layout[\"symbol-placement\"],p=c&&!_&&!y,x=_;x?m.enable(m.DEPTH_TEST):m.disable(m.DEPTH_TEST);for(var b,d=0,T=e;d<T.length;d+=1){var g=T[d],S=i.getTile(g),h=S.getBucket(o);if(h){var z=a?h.text:h.icon;if(z&&z.segments.get().length){var v=z.programConfigurations.get(o.id),E=a||h.sdfIcons,w=a?h.textSizeData:h.iconSizeData;if(b||(b=t.useProgram(E?\"symbolSDF\":\"symbolIcon\",v),v.setUniforms(m,b,o,{zoom:t.transform.zoom}),setSymbolDrawState(b,t,o,a,p,_,w)),m.activeTexture(m.TEXTURE0),m.uniform1i(b.uniforms.u_texture,0),a)S.glyphAtlasTexture.bind(m.LINEAR,m.CLAMP_TO_EDGE),m.uniform2fv(b.uniforms.u_texsize,S.glyphAtlasTexture.size);else{var M=!o.isLayoutValueFeatureConstant(\"icon-size\")||!o.isLayoutValueZoomConstant(\"icon-size\")||1!==o.getLayoutValue(\"icon-size\",{zoom:f.zoom})||h.iconsNeedLinear,C=_||0!==f.pitch;S.iconAtlasTexture.bind(E||t.options.rotating||t.options.zooming||M||C?m.LINEAR:m.NEAREST,m.CLAMP_TO_EDGE),m.uniform2fv(b.uniforms.u_texsize,S.iconAtlasTexture.size)}t.enableTileClippingMask(g),m.uniformMatrix4fv(b.uniforms.u_matrix,!1,t.translatePosMatrix(g.posMatrix,S,r,n));var L=pixelsToTileUnits(S,1,t.transform.zoom),P=symbolProjection.getLabelPlaneMatrix(g.posMatrix,_,c,t.transform,L),D=symbolProjection.getGlCoordMatrix(g.posMatrix,_,c,t.transform,L);m.uniformMatrix4fv(b.uniforms.u_gl_coord_matrix,!1,t.translatePosMatrix(D,S,r,n,!0)),y?(m.uniformMatrix4fv(b.uniforms.u_label_plane_matrix,!1,identityMat4),symbolProjection.updateLineLabels(h,g.posMatrix,t,a,P,D,_,l,L,o)):m.uniformMatrix4fv(b.uniforms.u_label_plane_matrix,!1,P),m.uniform1f(b.uniforms.u_collision_y_stretch,S.collisionTile.yStretch),drawTileSymbols(b,v,t,o,S,z,a,E,_)}}}x||m.enable(m.DEPTH_TEST)}function setSymbolDrawState(t,i,o,e,a,r,n){var s=i.gl,u=i.transform;s.uniform1i(t.uniforms.u_pitch_with_map,r?1:0),s.uniform1f(t.uniforms.u_is_text,e?1:0),s.activeTexture(s.TEXTURE1),i.frameHistory.bind(s),s.uniform1i(t.uniforms.u_fadetexture,1),s.uniform1f(t.uniforms.u_pitch,u.pitch/360*2*Math.PI),s.uniform1i(t.uniforms.u_is_size_zoom_constant,n.isZoomConstant?1:0),s.uniform1i(t.uniforms.u_is_size_feature_constant,n.isFeatureConstant?1:0),s.uniform1f(t.uniforms.u_camera_to_center_distance,u.cameraToCenterDistance);var l=symbolSize.evaluateSizeForZoom(n,u,o,e);void 0!==l.uSizeT&&s.uniform1f(t.uniforms.u_size_t,l.uSizeT),void 0!==l.uSize&&s.uniform1f(t.uniforms.u_size,l.uSize),s.uniform1f(t.uniforms.u_aspect_ratio,u.width/u.height),s.uniform1i(t.uniforms.u_rotate_symbol,a?1:0)}function drawTileSymbols(t,i,o,e,a,r,n,s,u){var l=o.gl,m=o.transform;if(s){var f=(n?\"text\":\"icon\")+\"-halo-width\",c=!e.isPaintValueFeatureConstant(f)||e.paint[f],_=u?Math.cos(m._pitch)*m.cameraToCenterDistance:1;l.uniform1f(t.uniforms.u_gamma_scale,_),c&&(l.uniform1f(t.uniforms.u_is_halo,1),drawSymbolElements(r,e,l,t)),l.uniform1f(t.uniforms.u_is_halo,0)}drawSymbolElements(r,e,l,t)}function drawSymbolElements(t,i,o,e){e.draw(o,o.TRIANGLES,i.id,t.layoutVertexBuffer,t.indexBuffer,t.segments,t.programConfigurations.get(i.id),t.dynamicLayoutVertexBuffer)}var drawCollisionDebug=_dereq_(\"./draw_collision_debug\"),pixelsToTileUnits=_dereq_(\"../source/pixels_to_tile_units\"),symbolProjection=_dereq_(\"../symbol/projection\"),symbolSize=_dereq_(\"../symbol/symbol_size\"),mat4=_dereq_(\"@mapbox/gl-matrix\").mat4,identityMat4=mat4.identity(new Float32Array(16));module.exports=drawSymbols;\n},{\"../source/pixels_to_tile_units\":93,\"../symbol/projection\":175,\"../symbol/symbol_size\":178,\"./draw_collision_debug\":66,\"@mapbox/gl-matrix\":1}],73:[function(_dereq_,module,exports){\n\"use strict\";var FrameHistory=function(){this.changeTimes=new Float64Array(256),this.changeOpacities=new Uint8Array(256),this.opacities=new Uint8ClampedArray(256),this.array=new Uint8Array(this.opacities.buffer),this.previousZoom=0,this.firstFrame=!0};FrameHistory.prototype.record=function(e,t,i){var r=this;this.firstFrame&&(e=0,this.firstFrame=!1),t=Math.floor(10*t);var a;if(t<this.previousZoom)for(a=t+1;a<=this.previousZoom;a++)r.changeTimes[a]=e,r.changeOpacities[a]=r.opacities[a];else for(a=t;a>this.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.isVisible=function(e){return 0!==this.opacities[Math.floor(10*e)]},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},{}],74:[function(_dereq_,module,exports){\n\"use strict\";function makeGlyphAtlas(a){var e=AlphaImage.create({width:0,height:0}),i={},t=new ShelfPack(0,0,{autoResize:!0});for(var h in a){var p=a[h],r=i[h]={};for(var m in p){var g=p[+m];if(g&&0!==g.bitmap.width&&0!==g.bitmap.height){var l=t.packOne(g.bitmap.width+2*padding,g.bitmap.height+2*padding);AlphaImage.resize(e,{width:t.w,height:t.h}),AlphaImage.copy(g.bitmap,e,{x:0,y:0},{x:l.x+padding,y:l.y+padding},g.bitmap),r[m]={rect:l,metrics:g.metrics}}}}return t.shrink(),AlphaImage.resize(e,{width:t.w,height:t.h}),{image:e,positions:i}}var ShelfPack=_dereq_(\"@mapbox/shelf-pack\"),ref=_dereq_(\"../util/image\"),AlphaImage=ref.AlphaImage,padding=1;module.exports={makeGlyphAtlas:makeGlyphAtlas};\n},{\"../util/image\":213,\"@mapbox/shelf-pack\":3}],75:[function(_dereq_,module,exports){\n\"use strict\";var loadGlyphRange=_dereq_(\"../style/load_glyph_range\"),TinySDF=_dereq_(\"@mapbox/tiny-sdf\"),isChar=_dereq_(\"../util/is_char_in_unicode_block\"),ref=_dereq_(\"../util/util\"),asyncAll=ref.asyncAll,ref$1=_dereq_(\"../util/image\"),AlphaImage=ref$1.AlphaImage,GlyphManager=function(r,e){this.requestTransform=r,this.localIdeographFontFamily=e,this.entries={}};GlyphManager.prototype.setURL=function(r){this.url=r},GlyphManager.prototype.getGlyphs=function(r,e){var t=this,i=[];for(var a in r)for(var l=0,n=r[a];l<n.length;l+=1){var s=n[l];i.push({stack:a,id:s})}asyncAll(i,function(r,e){var i=r.stack,a=r.id,l=t.entries[i];l||(l=t.entries[i]={glyphs:{},requests:{}});var n=l.glyphs[a];if(void 0!==n)return void e(null,{stack:i,id:a,glyph:n});if(n=t._tinySDF(l,i,a))return void e(null,{stack:i,id:a,glyph:n});var s=Math.floor(a/256);if(256*s>65535)return void e(new Error(\"glyphs > 65535 not supported\"));var o=l.requests[s];o||(o=l.requests[s]=[],loadGlyphRange(i,s,t.url,t.requestTransform,function(r,e){if(e)for(var t in e)l.glyphs[+t]=e[+t];for(var i=0,a=o;i<a.length;i+=1){(0,a[i])(r,e)}delete l.requests[s]})),o.push(function(r,t){r?e(r):t&&e(null,{stack:i,id:a,glyph:t[a]||null})})},function(r,t){if(r)e(r);else if(t){for(var i={},a=0,l=t;a<l.length;a+=1){var n=l[a],s=n.stack,o=n.id,h=n.glyph;(i[s]||(i[s]={}))[o]=h}e(null,i)}})},GlyphManager.prototype._tinySDF=function(r,e,t){var i=this.localIdeographFontFamily;if(i&&(isChar[\"CJK Unified Ideographs\"](t)||isChar[\"Hangul Syllables\"](t))){var a=r.tinySDF;if(!a){var l=\"400\";/bold/i.test(e)?l=\"900\":/medium/i.test(e)?l=\"500\":/light/i.test(e)&&(l=\"200\"),a=r.tinySDF=new TinySDF(24,3,8,.25,i,l)}return{id:t,bitmap:AlphaImage.create({width:30,height:30},a.draw(String.fromCharCode(t))),metrics:{width:24,height:24,left:0,top:-8,advance:24}}}},module.exports=GlyphManager;\n},{\"../style/load_glyph_range\":152,\"../util/image\":213,\"../util/is_char_in_unicode_block\":215,\"../util/util\":223,\"@mapbox/tiny-sdf\":4}],76:[function(_dereq_,module,exports){\n\"use strict\";function imagePosition(a,e){var i=e.pixelRatio,t={x:a.x+padding,y:a.y+padding,w:a.w-2*padding,h:a.h-2*padding};return{pixelRatio:i,textureRect:t,tl:[t.x,t.y],br:[t.x+t.w,t.y+t.h],displaySize:[t.w/i,t.h/i]}}function makeImageAtlas(a){var e=RGBAImage.create({width:0,height:0}),i={},t=new ShelfPack(0,0,{autoResize:!0});for(var d in a){var g=a[d],n=t.packOne(g.data.width+2*padding,g.data.height+2*padding);RGBAImage.resize(e,{width:t.w,height:t.h}),RGBAImage.copy(g.data,e,{x:0,y:0},{x:n.x+padding,y:n.y+padding},g.data),i[d]=imagePosition(n,g)}return t.shrink(),RGBAImage.resize(e,{width:t.w,height:t.h}),{image:e,positions:i}}var ShelfPack=_dereq_(\"@mapbox/shelf-pack\"),ref=_dereq_(\"../util/image\"),RGBAImage=ref.RGBAImage,padding=1;module.exports={imagePosition:imagePosition,makeImageAtlas:makeImageAtlas};\n},{\"../util/image\":213,\"@mapbox/shelf-pack\":3}],77:[function(_dereq_,module,exports){\n\"use strict\";var ShelfPack=_dereq_(\"@mapbox/shelf-pack\"),ref=_dereq_(\"../util/image\"),RGBAImage=ref.RGBAImage,ref$1=_dereq_(\"./image_atlas\"),imagePosition=ref$1.imagePosition,Texture=_dereq_(\"./texture\"),padding=1,ImageManager=function(){this.images={},this.loaded=!1,this.requestors=[],this.shelfPack=new ShelfPack(64,64,{autoResize:!0}),this.patterns={},this.atlasImage=RGBAImage.create({width:64,height:64}),this.dirty=!0};ImageManager.prototype.isLoaded=function(){return this.loaded},ImageManager.prototype.setLoaded=function(e){var t=this;if(this.loaded!==e&&(this.loaded=e,e)){for(var a=0,i=t.requestors;a<i.length;a+=1){var r=i[a],s=r.ids,h=r.callback;t._notify(s,h)}this.requestors=[]}},ImageManager.prototype.getImage=function(e){return this.images[e]},ImageManager.prototype.addImage=function(e,t){this.images[e]=t},ImageManager.prototype.removeImage=function(e){delete this.images[e];var t=this.patterns[e];t&&(this.shelfPack.unref(t.bin),delete this.patterns[e])},ImageManager.prototype.getImages=function(e,t){var a=this,i=!0;if(!this.isLoaded())for(var r=0,s=e;r<s.length;r+=1){var h=s[r];a.images[h]||(i=!1)}this.isLoaded()||i?this._notify(e,t):this.requestors.push({ids:e,callback:t})},ImageManager.prototype._notify=function(e,t){for(var a=this,i={},r=0,s=e;r<s.length;r+=1){var h=s[r],g=a.images[h];g&&(i[h]=g)}t(null,i)},ImageManager.prototype.getPixelSize=function(){return{width:this.shelfPack.w,height:this.shelfPack.h}},ImageManager.prototype.getPattern=function(e){var t=this.patterns[e];if(t)return t.position;var a=this.getImage(e);if(!a)return null;var i=a.data.width+2*padding,r=a.data.height+2*padding,s=this.shelfPack.packOne(i,r);if(!s)return null;RGBAImage.resize(this.atlasImage,this.getPixelSize());var h=a.data,g=this.atlasImage,n=s.x+padding,o=s.y+padding,d=h.width,m=h.height;RGBAImage.copy(h,g,{x:0,y:0},{x:n,y:o},{width:d,height:m}),RGBAImage.copy(h,g,{x:0,y:m-1},{x:n,y:o-1},{width:d,height:1}),RGBAImage.copy(h,g,{x:0,y:0},{x:n,y:o+m},{width:d,height:1}),RGBAImage.copy(h,g,{x:d-1,y:0},{x:n-1,y:o},{width:1,height:m}),RGBAImage.copy(h,g,{x:0,y:0},{x:n+d,y:o},{width:1,height:m}),this.dirty=!0;var p=imagePosition(s,a);return this.patterns[e]={bin:s,position:p},p},ImageManager.prototype.bind=function(e){this.atlasTexture?this.dirty&&(this.atlasTexture.update(this.atlasImage),this.dirty=!1):this.atlasTexture=new Texture(e,this.atlasImage,e.RGBA),this.atlasTexture.bind(e.LINEAR,e.CLAMP_TO_EDGE)},module.exports=ImageManager;\n},{\"../util/image\":213,\"./image_atlas\":76,\"./texture\":83,\"@mapbox/shelf-pack\":3}],78:[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.getDash=function(t,i){var e=t.join(\",\")+String(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 a=0,r=0;r<t.length;r++)a+=t[r];for(var n=this.width/a,E=n/2,T=t.length%2==1,o=-h;o<=h;o++)for(var R=e.nextRow+h+o,d=e.width*R,u=T?-t[t.length-1]:0,x=t[0],l=1,_=0;_<this.width;_++){for(;x<_/n;)u=x,x+=t[l],T&&l===t.length-1&&(x+=t[0]),l++;var A=Math.abs(_-u*n),g=Math.abs(_-x*n),w=Math.min(A,g),D=l%2==1,U=void 0;if(i){var f=h?o/h*(E+1):0;if(D){var p=E-Math.abs(f);U=Math.sqrt(w*w+p*p)}else U=E-Math.sqrt(w*w+f*f)}else U=(D?1:-1)*w;e.data[3+4*(d+_)]=Math.max(0,Math.min(255,U+128))}var X={y:(this.nextRow+h+.5)/this.height,height:2*h/this.height,width:a};return this.nextRow+=s,this.dirty=!0,X},LineAtlas.prototype.bind=function(t){this.texture?(t.bindTexture(t.TEXTURE_2D,this.texture),this.dirty&&(this.dirty=!1,t.texSubImage2D(t.TEXTURE_2D,0,0,0,this.width,this.height,t.RGBA,t.UNSIGNED_BYTE,this.data))):(this.texture=t.createTexture(),t.bindTexture(t.TEXTURE_2D,this.texture),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_WRAP_S,t.REPEAT),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_WRAP_T,t.REPEAT),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_MIN_FILTER,t.LINEAR),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_MAG_FILTER,t.LINEAR),t.texImage2D(t.TEXTURE_2D,0,t.RGBA,this.width,this.height,0,t.RGBA,t.UNSIGNED_BYTE,this.data))},module.exports=LineAtlas;\n},{\"../util/util\":223}],79:[function(_dereq_,module,exports){\n\"use strict\";var browser=_dereq_(\"../util/browser\"),mat4=_dereq_(\"@mapbox/gl-matrix\").mat4,FrameHistory=_dereq_(\"./frame_history\"),SourceCache=_dereq_(\"../source/source_cache\"),EXTENT=_dereq_(\"../data/extent\"),pixelsToTileUnits=_dereq_(\"../source/pixels_to_tile_units\"),util=_dereq_(\"../util/util\"),VertexBuffer=_dereq_(\"../gl/vertex_buffer\"),VertexArrayObject=_dereq_(\"./vertex_array_object\"),RasterBoundsArray=_dereq_(\"../data/raster_bounds_array\"),PosArray=_dereq_(\"../data/pos_array\"),ref=_dereq_(\"../data/program_configuration\"),ProgramConfiguration=ref.ProgramConfiguration,shaders=_dereq_(\"../shaders\"),Program=_dereq_(\"./program\"),RenderTexture=_dereq_(\"./render_texture\"),draw={symbol:_dereq_(\"./draw_symbol\"),circle:_dereq_(\"./draw_circle\"),line:_dereq_(\"./draw_line\"),fill:_dereq_(\"./draw_fill\"),\"fill-extrusion\":_dereq_(\"./draw_fill_extrusion\"),raster:_dereq_(\"./draw_raster\"),background:_dereq_(\"./draw_background\"),debug:_dereq_(\"./draw_debug\")},Painter=function(e,r){this.gl=e,this.transform=r,this._tileTextures={},this.prerenderedFrames={},this.viewportFrames=[],this.frameHistory=new FrameHistory,this.setup(),this.numSublayers=SourceCache.maxUnderzooming+SourceCache.maxOverzooming+1,this.depthEpsilon=1/Math.pow(2,16),this.lineWidthRange=e.getParameter(e.ALIASED_LINE_WIDTH_RANGE),this.basicFillProgramConfiguration=ProgramConfiguration.createBasicFill(),this.emptyProgramConfiguration=new ProgramConfiguration};Painter.prototype.resize=function(e,r){var t=this,i=this.gl;this.width=e*browser.devicePixelRatio,this.height=r*browser.devicePixelRatio,i.viewport(0,0,this.width,this.height);for(var a=0,s=t.viewportFrames;a<s.length;a+=1){var n=s[a];t.gl.deleteTexture(n.texture),t.gl.deleteFramebuffer(n.fbo)}this.viewportFrames=[],this.depthRbo&&(this.gl.deleteRenderbuffer(this.depthRbo),this.depthRbo=null)},Painter.prototype.setup=function(){var e=this.gl;e.enable(e.BLEND),e.blendFunc(e.ONE,e.ONE_MINUS_SRC_ALPHA),e.enable(e.STENCIL_TEST),e.enable(e.DEPTH_TEST),e.depthFunc(e.LEQUAL),this._depthMask=!1,e.depthMask(!1);var r=new PosArray;r.emplaceBack(0,0),r.emplaceBack(EXTENT,0),r.emplaceBack(0,EXTENT),r.emplaceBack(EXTENT,EXTENT),this.tileExtentBuffer=new VertexBuffer(e,r),this.tileExtentVAO=new VertexArrayObject,this.tileExtentPatternVAO=new VertexArrayObject;var t=new PosArray;t.emplaceBack(0,0),t.emplaceBack(EXTENT,0),t.emplaceBack(EXTENT,EXTENT),t.emplaceBack(0,EXTENT),t.emplaceBack(0,0),this.debugBuffer=new VertexBuffer(e,t),this.debugVAO=new VertexArrayObject;var i=new RasterBoundsArray;i.emplaceBack(0,0,0,0),i.emplaceBack(EXTENT,0,EXTENT,0),i.emplaceBack(0,EXTENT,0,EXTENT),i.emplaceBack(EXTENT,EXTENT,EXTENT,EXTENT),this.rasterBoundsBuffer=new VertexBuffer(e,i),this.rasterBoundsVAO=new VertexArrayObject,this.extTextureFilterAnisotropic=e.getExtension(\"EXT_texture_filter_anisotropic\")||e.getExtension(\"MOZ_EXT_texture_filter_anisotropic\")||e.getExtension(\"WEBKIT_EXT_texture_filter_anisotropic\"),this.extTextureFilterAnisotropic&&(this.extTextureFilterAnisotropicMax=e.getParameter(this.extTextureFilterAnisotropic.MAX_TEXTURE_MAX_ANISOTROPY_EXT))},Painter.prototype.clearColor=function(){var e=this.gl;e.clearColor(0,0,0,0),e.clear(e.COLOR_BUFFER_BIT)},Painter.prototype.clearStencil=function(){var e=this.gl;e.clearStencil(0),e.stencilMask(255),e.clear(e.STENCIL_BUFFER_BIT)},Painter.prototype.clearDepth=function(){var e=this.gl;e.clearDepth(1),this.depthMask(!0),e.clear(e.DEPTH_BUFFER_BIT)},Painter.prototype._renderTileClippingMasks=function(e){var r=this,t=this.gl;t.colorMask(!1,!1,!1,!1),this.depthMask(!1),t.disable(t.DEPTH_TEST),t.enable(t.STENCIL_TEST),t.stencilMask(255),t.stencilOp(t.KEEP,t.KEEP,t.REPLACE);var i=1;this._tileClippingMaskIDs={};for(var a=0,s=e;a<s.length;a+=1){var n=s[a],o=r._tileClippingMaskIDs[n.id]=i++;t.stencilFunc(t.ALWAYS,o,255);var l=r.useProgram(\"fill\",r.basicFillProgramConfiguration);t.uniformMatrix4fv(l.uniforms.u_matrix,!1,n.posMatrix),r.tileExtentVAO.bind(t,l,r.tileExtentBuffer),t.drawArrays(t.TRIANGLE_STRIP,0,r.tileExtentBuffer.length)}t.stencilMask(0),t.colorMask(!0,!0,!0,!0),this.depthMask(!0),t.enable(t.DEPTH_TEST)},Painter.prototype.enableTileClippingMask=function(e){var r=this.gl;r.stencilFunc(r.EQUAL,this._tileClippingMaskIDs[e.id],255)},Painter.prototype.render=function(e,r){var t=this;this.style=e,this.options=r,this.lineAtlas=e.lineAtlas,this.imageManager=e.imageManager,this.glyphManager=e.glyphManager,this.frameHistory.record(Date.now(),this.transform.zoom,e.getTransition().duration);for(var i in t.style.sourceCaches){var a=t.style.sourceCaches[i];a.used&&a.prepare(t.gl)}var s=this.style._order;this.renderPass=\"3d\";for(var n,o=!0,l=[],h=0;h<s.length;h++){var c=t.style._layers[s[h]];if(c.has3DPass()&&!c.isHidden(t.transform.zoom)&&(c.source!==(n&&n.id)&&(n=t.style.sourceCaches[c.source],l=[],n&&(t.clearStencil(),l=n.getVisibleCoordinates()),l.reverse()),l.length)){t._setup3DRenderbuffer();var u=t.viewportFrames.pop()||new RenderTexture(t);u.bindWithDepth(t.depthRbo),o&&(t.clearDepth(),o=!1),t.renderLayer(t,n,c,l),u.unbind(),t.prerenderedFrames[c.id]=u}}this.clearColor(),this.clearDepth(),this.showOverdrawInspector(r.showOverdrawInspector),this.depthRange=(e._order.length+2)*this.numSublayers*this.depthEpsilon,this.renderPass=\"opaque\";var p,d=[];for(this.currentLayer=s.length-1,this._showOverdrawInspector||this.gl.disable(this.gl.BLEND),this.currentLayer;this.currentLayer>=0;this.currentLayer--){var g=t.style._layers[s[t.currentLayer]];g.source!==(p&&p.id)&&(p=t.style.sourceCaches[g.source],d=[],p&&(t.clearStencil(),d=p.getVisibleCoordinates(),p.getSource().isTileClipped&&t._renderTileClippingMasks(d))),t.renderLayer(t,p,g,d)}this.renderPass=\"translucent\";var f,E=[];for(this.gl.enable(this.gl.BLEND),this.currentLayer=0,this.currentLayer;this.currentLayer<s.length;this.currentLayer++){var T=t.style._layers[s[t.currentLayer]];T.source!==(f&&f.id)&&(f=t.style.sourceCaches[T.source],E=[],f&&(t.clearStencil(),E=f.getVisibleCoordinates(),f.getSource().isTileClipped&&t._renderTileClippingMasks(E)),E.reverse()),t.renderLayer(t,f,T,E)}if(this.options.showTileBoundaries){var _=this.style.sourceCaches[Object.keys(this.style.sourceCaches)[0]];_&&draw.debug(this,_,_.getVisibleCoordinates())}},Painter.prototype._setup3DRenderbuffer=function(){if(!this.depthRbo){var e=this.gl;this.depthRbo=e.createRenderbuffer(),e.bindRenderbuffer(e.RENDERBUFFER,this.depthRbo),e.renderbufferStorage(e.RENDERBUFFER,e.DEPTH_COMPONENT16,this.width,this.height),e.bindRenderbuffer(e.RENDERBUFFER,null)}this.depthRboAttached=!0},Painter.prototype.depthMask=function(e){e!==this._depthMask&&(this._depthMask=e,this.gl.depthMask(e))},Painter.prototype.renderLayer=function(e,r,t,i){t.isHidden(this.transform.zoom)||(\"background\"===t.type||i.length)&&(this.id=t.id,draw[t.type](e,r,t,i))},Painter.prototype.setDepthSublayer=function(e){var r=1-((1+this.currentLayer)*this.numSublayers+e)*this.depthEpsilon,t=r-1+this.depthRange;this.gl.depthRange(t,r)},Painter.prototype.translatePosMatrix=function(e,r,t,i,a){if(!t[0]&&!t[1])return e;var s=a?\"map\"===i?this.transform.angle:0:\"viewport\"===i?-this.transform.angle:0;if(s){var n=Math.sin(s),o=Math.cos(s);t=[t[0]*o-t[1]*n,t[0]*n+t[1]*o]}var l=[a?t[0]:pixelsToTileUnits(r,t[0],this.transform.zoom),a?t[1]:pixelsToTileUnits(r,t[1],this.transform.zoom),0],h=new Float32Array(16);return mat4.translate(h,e,l),h},Painter.prototype.saveTileTexture=function(e){var r=this._tileTextures[e.size];r?r.push(e):this._tileTextures[e.size]=[e]},Painter.prototype.getTileTexture=function(e){var r=this._tileTextures[e];return r&&r.length>0?r.pop():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._createProgramCached=function(e,r){this.cache=this.cache||{};var t=\"\"+e+(r.cacheKey||\"\")+(this._showOverdrawInspector?\"/overdraw\":\"\");return this.cache[t]||(this.cache[t]=new Program(this.gl,shaders[e],r,this._showOverdrawInspector)),this.cache[t]},Painter.prototype.useProgram=function(e,r){var t=this.gl,i=this._createProgramCached(e,r||this.emptyProgramConfiguration);return this.currentProgram!==i&&(t.useProgram(i.program),this.currentProgram=i),i},module.exports=Painter;\n},{\"../data/extent\":48,\"../data/pos_array\":52,\"../data/program_configuration\":53,\"../data/raster_bounds_array\":54,\"../gl/vertex_buffer\":62,\"../shaders\":86,\"../source/pixels_to_tile_units\":93,\"../source/source_cache\":98,\"../util/browser\":202,\"../util/util\":223,\"./draw_background\":64,\"./draw_circle\":65,\"./draw_debug\":67,\"./draw_fill\":68,\"./draw_fill_extrusion\":69,\"./draw_line\":70,\"./draw_raster\":71,\"./draw_symbol\":72,\"./frame_history\":73,\"./program\":81,\"./render_texture\":82,\"./vertex_array_object\":84,\"@mapbox/gl-matrix\":1}],80:[function(_dereq_,module,exports){\n\"use strict\";var pixelsToTileUnits=_dereq_(\"../source/pixels_to_tile_units\");exports.isPatternMissing=function(r,i){if(!r)return!1;var e=i.imageManager.getPattern(r.from),o=i.imageManager.getPattern(r.to);return!e||!o},exports.prepare=function(r,i,e){var o=i.gl,t=i.imageManager.getPattern(r.from),n=i.imageManager.getPattern(r.to);o.uniform1i(e.uniforms.u_image,0),o.uniform2fv(e.uniforms.u_pattern_tl_a,t.tl),o.uniform2fv(e.uniforms.u_pattern_br_a,t.br),o.uniform2fv(e.uniforms.u_pattern_tl_b,n.tl),o.uniform2fv(e.uniforms.u_pattern_br_b,n.br);var u=i.imageManager.getPixelSize(),a=u.width,f=u.height;o.uniform2fv(e.uniforms.u_texsize,[a,f]),o.uniform1f(e.uniforms.u_mix,r.t),o.uniform2fv(e.uniforms.u_pattern_size_a,t.displaySize),o.uniform2fv(e.uniforms.u_pattern_size_b,n.displaySize),o.uniform1f(e.uniforms.u_scale_a,r.fromScale),o.uniform1f(e.uniforms.u_scale_b,r.toScale),o.activeTexture(o.TEXTURE0),i.imageManager.bind(o)},exports.setTile=function(r,i,e){var o=i.gl;o.uniform1f(e.uniforms.u_tile_units_to_pixels,1/pixelsToTileUnits(r,1,i.transform.tileZoom));var t=Math.pow(2,r.coord.z),n=r.tileSize*Math.pow(2,i.transform.tileZoom)/t,u=n*(r.coord.x+r.coord.w*t),a=n*r.coord.y;o.uniform2f(e.uniforms.u_pixel_coord_upper,u>>16,a>>16),o.uniform2f(e.uniforms.u_pixel_coord_lower,65535&u,65535&a)};\n},{\"../source/pixels_to_tile_units\":93}],81:[function(_dereq_,module,exports){\n\"use strict\";var browser=_dereq_(\"../util/browser\"),shaders=_dereq_(\"../shaders\"),ref=_dereq_(\"../data/program_configuration\"),ProgramConfiguration=ref.ProgramConfiguration,VertexArrayObject=_dereq_(\"./vertex_array_object\"),Program=function(r,e,t,a){var o=this;this.gl=r,this.program=r.createProgram();var i=t.defines().concat(\"#define DEVICE_PIXEL_RATIO \"+browser.devicePixelRatio.toFixed(1));a&&i.push(\"#define OVERDRAW_INSPECTOR;\");var n=i.concat(shaders.prelude.fragmentSource,e.fragmentSource).join(\"\\n\"),s=i.concat(shaders.prelude.vertexSource,e.vertexSource).join(\"\\n\"),m=r.createShader(r.FRAGMENT_SHADER);r.shaderSource(m,n),r.compileShader(m),r.attachShader(this.program,m);var g=r.createShader(r.VERTEX_SHADER);r.shaderSource(g,s),r.compileShader(g),r.attachShader(this.program,g);for(var c=t.interface?t.interface.layoutAttributes:[],u=0;u<c.length;u++)r.bindAttribLocation(o.program,u,c[u].name);r.linkProgram(this.program),this.numAttributes=r.getProgramParameter(this.program,r.ACTIVE_ATTRIBUTES),this.attributes={},this.uniforms={};for(var h=0;h<this.numAttributes;h++){var f=r.getActiveAttrib(o.program,h);f&&(o.attributes[f.name]=r.getAttribLocation(o.program,f.name))}for(var d=r.getProgramParameter(this.program,r.ACTIVE_UNIFORMS),p=0;p<d;p++){var v=r.getActiveUniform(o.program,p);v&&(o.uniforms[v.name]=r.getUniformLocation(o.program,v.name))}};Program.prototype.draw=function(r,e,t,a,o,i,n,s){for(var m,g=this,c=(m={},m[r.LINES]=2,m[r.TRIANGLES]=3,m)[e],u=0,h=i.get();u<h.length;u+=1){var f=h[u],d=f.vaos||(f.vaos={});(d[t]||(d[t]=new VertexArrayObject)).bind(r,g,a,o,n&&n.paintVertexBuffer,f.vertexOffset,s),r.drawElements(e,f.primitiveLength*c,r.UNSIGNED_SHORT,f.primitiveOffset*c*2)}},module.exports=Program;\n},{\"../data/program_configuration\":53,\"../shaders\":86,\"../util/browser\":202,\"./vertex_array_object\":84}],82:[function(_dereq_,module,exports){\n\"use strict\";var VertexBuffer=_dereq_(\"../gl/vertex_buffer\"),VertexArrayObject=_dereq_(\"./vertex_array_object\"),PosArray=_dereq_(\"../data/pos_array\"),RenderTexture=function(e){var r=this.gl=e.gl,t=this.texture=r.createTexture();r.bindTexture(r.TEXTURE_2D,t),r.texParameteri(r.TEXTURE_2D,r.TEXTURE_WRAP_S,r.CLAMP_TO_EDGE),r.texParameteri(r.TEXTURE_2D,r.TEXTURE_WRAP_T,r.CLAMP_TO_EDGE),r.texParameteri(r.TEXTURE_2D,r.TEXTURE_MIN_FILTER,r.LINEAR),r.texParameteri(r.TEXTURE_2D,r.TEXTURE_MAG_FILTER,r.LINEAR),r.texImage2D(r.TEXTURE_2D,0,r.RGBA,e.width,e.height,0,r.RGBA,r.UNSIGNED_BYTE,null),r.bindTexture(r.TEXTURE_2D,null);var E=this.fbo=r.createFramebuffer();r.bindFramebuffer(r.FRAMEBUFFER,E),r.framebufferTexture2D(r.FRAMEBUFFER,r.COLOR_ATTACHMENT0,r.TEXTURE_2D,t,0);var a=new PosArray;a.emplaceBack(0,0),a.emplaceBack(1,0),a.emplaceBack(0,1),a.emplaceBack(1,1),this.buffer=new VertexBuffer(r,a),this.vao=new VertexArrayObject};RenderTexture.prototype.bindWithDepth=function(e){var r=this.gl;r.bindFramebuffer(r.FRAMEBUFFER,this.fbo),this.attachedRbo!==e&&(r.framebufferRenderbuffer(r.FRAMEBUFFER,r.DEPTH_ATTACHMENT,r.RENDERBUFFER,e),this.attachedRbo=e)},RenderTexture.prototype.unbind=function(){var e=this.gl;e.bindFramebuffer(e.FRAMEBUFFER,null)},module.exports=RenderTexture;\n},{\"../data/pos_array\":52,\"../gl/vertex_buffer\":62,\"./vertex_array_object\":84}],83:[function(_dereq_,module,exports){\n\"use strict\";var Texture=function(t,e,i){this.gl=t;var r=e.width,T=e.height;this.size=[r,T],this.format=i,this.texture=t.createTexture(),this.update(e)};Texture.prototype.update=function(t){var e=t.width,i=t.height,r=t.data;this.size=[e,i];var T=this,E=T.gl;E.bindTexture(E.TEXTURE_2D,this.texture),E.pixelStorei(E.UNPACK_ALIGNMENT,1),this.format===E.RGBA&&E.pixelStorei(E.UNPACK_PREMULTIPLY_ALPHA_WEBGL,!0),E.texImage2D(E.TEXTURE_2D,0,this.format,e,i,0,this.format,E.UNSIGNED_BYTE,r)},Texture.prototype.bind=function(t,e){var i=this,r=i.gl;r.bindTexture(r.TEXTURE_2D,this.texture),t!==this.filter&&(r.texParameteri(r.TEXTURE_2D,r.TEXTURE_MAG_FILTER,t),r.texParameteri(r.TEXTURE_2D,r.TEXTURE_MIN_FILTER,t),this.filter=t),e!==this.wrap&&(r.texParameteri(r.TEXTURE_2D,r.TEXTURE_WRAP_S,e),r.texParameteri(r.TEXTURE_2D,r.TEXTURE_WRAP_T,e),this.wrap=e)},Texture.prototype.destroy=function(){this.gl.deleteTexture(this.texture),this.texture=null},module.exports=Texture;\n},{}],84:[function(_dereq_,module,exports){\n\"use strict\";var VertexArrayObject=function(){this.boundProgram=null,this.boundVertexBuffer=null,this.boundVertexBuffer2=null,this.boundIndexBuffer=null,this.boundVertexOffset=null,this.boundDynamicVertexBuffer=null,this.vao=null};VertexArrayObject.prototype.bind=function(e,t,r,i,n,s,u){void 0===e.extVertexArrayObject&&(e.extVertexArrayObject=e.getExtension(\"OES_vertex_array_object\"));var b=!this.vao||this.boundProgram!==t||this.boundVertexBuffer!==r||this.boundVertexBuffer2!==n||this.boundIndexBuffer!==i||this.boundVertexOffset!==s||this.boundDynamicVertexBuffer!==u;!e.extVertexArrayObject||b?(this.freshBind(e,t,r,i,n,s,u),this.gl=e):(e.extVertexArrayObject.bindVertexArrayOES(this.vao),u&&u.bind())},VertexArrayObject.prototype.freshBind=function(e,t,r,i,n,s,u){var b,o=t.numAttributes;if(e.extVertexArrayObject)this.vao&&this.destroy(),this.vao=e.extVertexArrayObject.createVertexArrayOES(),e.extVertexArrayObject.bindVertexArrayOES(this.vao),b=0,this.boundProgram=t,this.boundVertexBuffer=r,this.boundVertexBuffer2=n,this.boundIndexBuffer=i,this.boundVertexOffset=s,this.boundDynamicVertexBuffer=u;else{b=e.currentNumAttributes||0;for(var x=o;x<b;x++)e.disableVertexAttribArray(x)}r.enableAttributes(e,t),n&&n.enableAttributes(e,t),u&&u.enableAttributes(e,t),r.bind(),r.setVertexAttribPointers(e,t,s),n&&(n.bind(),n.setVertexAttribPointers(e,t,s)),u&&(u.bind(),u.setVertexAttribPointers(e,t,s)),i&&i.bind(),e.currentNumAttributes=o},VertexArrayObject.prototype.destroy=function(){this.vao&&(this.gl.extVertexArrayObject.deleteVertexArrayOES(this.vao),this.vao=null)},module.exports=VertexArrayObject;\n},{}],85:[function(_dereq_,module,exports){\n\"use strict\";var util=_dereq_(\"../util/util\");exports.packUint8ToFloat=function(t,l){return t=util.clamp(Math.floor(t),0,255),l=util.clamp(Math.floor(l),0,255),256*t+l};\n},{\"../util/util\":223}],86:[function(_dereq_,module,exports){\n\"use strict\";var shaders={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\\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, we encode a 4-component\\n// 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 vec3 v_data;\\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 vec2 extrude = v_data.xy;\\n float extrude_length = length(extrude);\\n\\n lowp float antialiasblur = v_data.z;\\n float antialiased_blur = -max(blur, 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 bool u_pitch_with_map;\\nuniform vec2 u_extrude_scale;\\nuniform highp float u_camera_to_center_distance;\\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 vec3 v_data;\\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 vec2 extrude = vec2(mod(a_pos, 2.0) * 2.0 - 1.0);\\n\\n // multiply a_pos by 0.5, since we had it * 2 in order to sneak\\n // in extrusion data\\n vec2 circle_center = floor(a_pos * 0.5);\\n if (u_pitch_with_map) {\\n vec2 corner_position = circle_center;\\n if (u_scale_with_map) {\\n corner_position += extrude * (radius + stroke_width) * u_extrude_scale;\\n } else {\\n // Pitching the circle with the map effectively scales it with the map\\n // To counteract the effect for pitch-scale: viewport, we rescale the\\n // whole circle based on the pitch scaling effect at its central point\\n vec4 projected_center = u_matrix * vec4(circle_center, 0, 1);\\n corner_position += extrude * (radius + stroke_width) * u_extrude_scale * (projected_center.w / u_camera_to_center_distance);\\n }\\n\\n gl_Position = u_matrix * vec4(corner_position, 0, 1);\\n } else {\\n gl_Position = u_matrix * vec4(circle_center, 0, 1);\\n\\n if (u_scale_with_map) {\\n gl_Position.xy += extrude * (radius + stroke_width) * u_extrude_scale * u_camera_to_center_distance;\\n } else {\\n gl_Position.xy += extrude * (radius + stroke_width) * u_extrude_scale * gl_Position.w;\\n }\\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 lowp float antialiasblur = 1.0 / DEVICE_PIXEL_RATIO / (radius + stroke_width);\\n\\n v_data = vec3(extrude.x, extrude.y, antialiasblur);\\n}\\n\"},collisionBox:{fragmentSource:\"uniform float u_zoom;\\n// u_maxzoom is derived from the maximum scale considered by the CollisionTile\\n// Labels with placement zoom greater than this value will not be placed,\\n// regardless of perspective effects.\\nuniform float u_maxzoom;\\nuniform sampler2D u_fadetexture;\\n\\n// v_max_zoom is a collision-box-specific value that controls when line-following\\n// collision boxes are used.\\nvarying float v_max_zoom;\\nvarying float v_placement_zoom;\\nvarying float v_perspective_zoom_adjust;\\nvarying vec2 v_fade_tex;\\n\\nvoid main() {\\n\\n float alpha = 0.5;\\n\\n // Green = no collisions, label is showing\\n gl_FragColor = vec4(0.0, 1.0, 0.0, 1.0) * alpha;\\n\\n // Red = collision, label hidden\\n if (texture2D(u_fadetexture, v_fade_tex).a < 1.0) {\\n gl_FragColor = vec4(1.0, 0.0, 0.0, 1.0) * alpha;\\n }\\n\\n // Faded black = this collision box is not used at this zoom (for curved labels)\\n if (u_zoom >= v_max_zoom + v_perspective_zoom_adjust) {\\n gl_FragColor = vec4(0.0, 0.0, 0.0, 1.0) * alpha * 0.25;\\n }\\n\\n // Faded blue = the placement scale for this label is beyond the CollisionTile\\n // max scale, so it's impossible for this label to show without collision detection\\n // being run again (the label's glyphs haven't even been added to the symbol bucket)\\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_anchor_pos;\\nattribute vec2 a_extrude;\\nattribute vec2 a_data;\\n\\nuniform mat4 u_matrix;\\nuniform float u_scale;\\nuniform float u_pitch;\\nuniform float u_collision_y_stretch;\\nuniform float u_camera_to_center_distance;\\n\\nvarying float v_max_zoom;\\nvarying float v_placement_zoom;\\nvarying float v_perspective_zoom_adjust;\\nvarying vec2 v_fade_tex;\\n\\nvoid main() {\\n vec4 projectedPoint = u_matrix * vec4(a_anchor_pos, 0, 1);\\n highp float camera_to_anchor_distance = projectedPoint.w;\\n highp float collision_perspective_ratio = 1.0 + 0.5 * ((camera_to_anchor_distance / u_camera_to_center_distance) - 1.0);\\n\\n highp float incidence_stretch = camera_to_anchor_distance / (u_camera_to_center_distance * cos(u_pitch));\\n highp float collision_adjustment = max(1.0, incidence_stretch / u_collision_y_stretch);\\n\\n gl_Position = u_matrix * vec4(a_pos + a_extrude * collision_perspective_ratio * collision_adjustment / u_scale, 0.0, 1.0);\\n\\n v_max_zoom = a_data.x;\\n v_placement_zoom = a_data.y;\\n\\n v_perspective_zoom_adjust = floor(log2(collision_perspective_ratio * collision_adjustment) * 10.0);\\n v_fade_tex = vec2((v_placement_zoom + v_perspective_zoom_adjust) / 255.0, 0.0);\\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 // We are using Int16 for texture position coordinates to give us enough precision for\\n // fractional coordinates. We use 8192 to scale the texture coordinates in the buffer\\n // as an arbitrarily high number to preserve adequate precision when rendering.\\n // This is also the same value as the EXTENT we are using for our tile buffer pos coordinates,\\n // so math for modifying either is consistent.\\n gl_Position = u_matrix * vec4(a_pos, step(8192.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 vec2 u_texsize;\\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_texsize, u_pattern_br_a / u_texsize, 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_texsize, u_pattern_br_b / u_texsize, 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 vec2 u_texsize;\\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_texsize, u_pattern_br_a / u_texsize, 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_texsize, u_pattern_br_b / u_texsize, 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 vec2 u_texsize;\\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_texsize, u_pattern_br_a / u_texsize, 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_texsize, u_pattern_br_b / u_texsize, 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 vec4 a_pos_normal;\\nattribute vec4 a_data;\\n\\nuniform mat4 u_matrix;\\nuniform mediump float u_ratio;\\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#pragma mapbox: define mediump float width\\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 #pragma mapbox: initialize mediump float width\\n\\n vec2 a_extrude = a_data.xy - 128.0;\\n float a_direction = mod(a_data.z, 4.0) - 1.0;\\n\\n vec2 pos = a_pos_normal.xy;\\n\\n // x is 1 if it's a round cap, 0 otherwise\\n // y is 1 if the normal points up, and -1 if it points down\\n mediump vec2 normal = a_pos_normal.zw;\\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 halfwidth = width / 2.0;\\n offset = -1.0 * offset;\\n\\n float inset = gapwidth + (gapwidth > 0.0 ? ANTIALIASING : 0.0);\\n float outset = gapwidth + halfwidth * (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 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 vec2 u_texsize;\\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_texsize, u_pattern_br_a / u_texsize, vec2(x_a, y_a));\\n vec2 pos_b = mix(u_pattern_tl_b / u_texsize, u_pattern_br_b / u_texsize, 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 vec4 a_pos_normal;\\nattribute vec4 a_data;\\n\\nuniform mat4 u_matrix;\\nuniform mediump float u_ratio;\\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#pragma mapbox: define mediump float width\\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 #pragma mapbox: initialize mediump float width\\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 vec2 pos = a_pos_normal.xy;\\n\\n // x is 1 if it's a round cap, 0 otherwise\\n // y is 1 if the normal points up, and -1 if it points down\\n mediump vec2 normal = a_pos_normal.zw;\\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 halfwidth = width / 2.0;\\n offset = -1.0 * offset;\\n\\n float inset = gapwidth + (gapwidth > 0.0 ? ANTIALIASING : 0.0);\\n float outset = gapwidth + halfwidth * (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 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:{\nfragmentSource:\"\\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#pragma mapbox: define mediump float width\\n#pragma mapbox: define lowp float floorwidth\\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 width\\n #pragma mapbox: initialize lowp float floorwidth\\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 / floorwidth, 0.5 + u_sdfgamma / floorwidth, 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 vec4 a_pos_normal;\\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;\\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#pragma mapbox: define mediump float width\\n#pragma mapbox: define lowp float floorwidth\\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 #pragma mapbox: initialize mediump float width\\n #pragma mapbox: initialize lowp float floorwidth\\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 vec2 pos = a_pos_normal.xy;\\n\\n // x is 1 if it's a round cap, 0 otherwise\\n // y is 1 if the normal points up, and -1 if it points down\\n mediump vec2 normal = a_pos_normal.zw;\\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 halfwidth = width / 2.0;\\n offset = -1.0 * offset;\\n\\n float inset = gapwidth + (gapwidth > 0.0 ? ANTIALIASING : 0.0);\\n float outset = gapwidth + halfwidth * (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 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 / floorwidth, normal.y * u_patternscale_a.y + u_tex_y_a);\\n v_tex_b = vec2(a_linesofar * u_patternscale_b.x / floorwidth, 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 if (color0.a > 0.0) {\\n color0.rgb = color0.rgb / color0.a;\\n }\\n if (color1.a > 0.0) {\\n color1.rgb = color1.rgb / color1.a;\\n }\\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 // We are using Int16 for texture position coordinates to give us enough precision for\\n // fractional coordinates. We use 8192 to scale the texture coordinates in the buffer\\n // as an arbitrarily high number to preserve adequate precision when rendering.\\n // This is also the same value as the EXTENT we are using for our tile buffer pos coordinates,\\n // so math for modifying either is consistent.\\n v_pos0 = (((a_texture_pos / 8192.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:\"const float PI = 3.141592653589793;\\n\\nattribute vec4 a_pos_offset;\\nattribute vec4 a_data;\\nattribute vec3 a_projected_pos;\\n\\nuniform bool u_is_size_zoom_constant;\\nuniform bool u_is_size_feature_constant;\\nuniform highp float u_size_t; // used to interpolate between zoom stops when size is a composite function\\nuniform highp float u_size; // used when size is both zoom and feature constant\\nuniform highp float u_camera_to_center_distance;\\nuniform highp float u_pitch;\\nuniform bool u_rotate_symbol;\\nuniform highp float u_aspect_ratio;\\nuniform highp float u_collision_y_stretch;\\n\\n#pragma mapbox: define lowp float opacity\\n\\nuniform mat4 u_matrix;\\nuniform mat4 u_label_plane_matrix;\\nuniform mat4 u_gl_coord_matrix;\\n\\nuniform bool u_is_text;\\nuniform bool u_pitch_with_map;\\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 vec2 a_size = a_data.zw;\\n\\n highp vec2 angle_labelminzoom = unpack_float(a_projected_pos[2]);\\n highp float segment_angle = -angle_labelminzoom[0] / 255.0 * 2.0 * PI;\\n mediump float a_labelminzoom = angle_labelminzoom[1];\\n\\n float size;\\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 } else if (u_is_size_zoom_constant && !u_is_size_feature_constant) {\\n size = a_size[0] / 10.0;\\n } else if (!u_is_size_zoom_constant && u_is_size_feature_constant) {\\n size = u_size;\\n } else {\\n size = u_size;\\n }\\n\\n vec4 projectedPoint = u_matrix * vec4(a_pos, 0, 1);\\n highp float camera_to_anchor_distance = projectedPoint.w;\\n // See comments in symbol_sdf.vertex\\n highp float distance_ratio = u_pitch_with_map ?\\n camera_to_anchor_distance / u_camera_to_center_distance :\\n u_camera_to_center_distance / camera_to_anchor_distance;\\n highp float perspective_ratio = 0.5 + 0.5 * distance_ratio;\\n\\n size *= perspective_ratio;\\n\\n float fontScale = u_is_text ? size / 24.0 : size;\\n\\n highp float symbol_rotation = 0.0;\\n if (u_rotate_symbol) {\\n // See comments in symbol_sdf.vertex\\n vec4 offsetProjectedPoint = u_matrix * vec4(a_pos + vec2(1, 0), 0, 1);\\n\\n vec2 a = projectedPoint.xy / projectedPoint.w;\\n vec2 b = offsetProjectedPoint.xy / offsetProjectedPoint.w;\\n\\n symbol_rotation = atan((b.y - a.y) / u_aspect_ratio, b.x - a.x);\\n }\\n\\n highp float angle_sin = sin(segment_angle + symbol_rotation);\\n highp float angle_cos = cos(segment_angle + symbol_rotation);\\n mat2 rotation_matrix = mat2(angle_cos, -1.0 * angle_sin, angle_sin, angle_cos);\\n\\n vec4 projected_pos = u_label_plane_matrix * vec4(a_projected_pos.xy, 0.0, 1.0);\\n gl_Position = u_gl_coord_matrix * vec4(projected_pos.xy / projected_pos.w + rotation_matrix * (a_offset / 64.0 * fontScale), 0.0, 1.0);\\n\\n v_tex = a_tex / u_texsize;\\n // See comments in symbol_sdf.vertex\\n highp float incidence_stretch = camera_to_anchor_distance / (u_camera_to_center_distance * cos(u_pitch));\\n highp float collision_adjustment = max(1.0, incidence_stretch / u_collision_y_stretch);\\n\\n highp float collision_perspective_ratio = 1.0 + 0.5*((camera_to_anchor_distance / u_camera_to_center_distance) - 1.0);\\n highp float perspective_zoom_adjust = floor(log2(collision_perspective_ratio * collision_adjustment) * 10.0);\\n v_fade_tex = vec2((a_labelminzoom + perspective_zoom_adjust) / 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 vec4 v_data0;\\nvarying vec2 v_data1;\\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 tex = v_data0.xy;\\n vec2 fade_tex = v_data0.zw;\\n float gamma_scale = v_data1.x;\\n float size = v_data1.y;\\n\\n float fontScale = u_is_text ? size / 24.0 : 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, tex).a;\\n lowp float fade_alpha = texture2D(u_fadetexture, fade_tex).a;\\n highp float gamma_scaled = gamma * 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;\\nattribute vec3 a_projected_pos;\\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) ]\\nuniform bool u_is_size_zoom_constant;\\nuniform bool u_is_size_feature_constant;\\nuniform highp float u_size_t; // used to interpolate between zoom stops when size is a composite function\\nuniform highp float u_size; // used when size is both zoom and 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\\nuniform mat4 u_matrix;\\nuniform mat4 u_label_plane_matrix;\\nuniform mat4 u_gl_coord_matrix;\\n\\nuniform bool u_is_text;\\nuniform bool u_pitch_with_map;\\nuniform highp float u_pitch;\\nuniform bool u_rotate_symbol;\\nuniform highp float u_aspect_ratio;\\nuniform highp float u_camera_to_center_distance;\\nuniform highp float u_collision_y_stretch;\\n\\nuniform vec2 u_texsize;\\n\\nvarying vec4 v_data0;\\nvarying vec2 v_data1;\\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 vec2 a_size = a_data.zw;\\n\\n highp vec2 angle_labelminzoom = unpack_float(a_projected_pos[2]);\\n highp float segment_angle = -angle_labelminzoom[0] / 255.0 * 2.0 * PI;\\n mediump float a_labelminzoom = angle_labelminzoom[1];\\n float size;\\n\\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 } else if (u_is_size_zoom_constant && !u_is_size_feature_constant) {\\n size = a_size[0] / 10.0;\\n } else if (!u_is_size_zoom_constant && u_is_size_feature_constant) {\\n size = u_size;\\n } else {\\n size = u_size;\\n }\\n\\n vec4 projectedPoint = u_matrix * vec4(a_pos, 0, 1);\\n highp float camera_to_anchor_distance = projectedPoint.w;\\n // If the label is pitched with the map, layout is done in pitched space,\\n // which makes labels in the distance smaller relative to viewport space.\\n // We counteract part of that effect by multiplying by the perspective ratio.\\n // If the label isn't pitched with the map, we do layout in viewport space,\\n // which makes labels in the distance larger relative to the features around\\n // them. We counteract part of that effect by dividing by the perspective ratio.\\n highp float distance_ratio = u_pitch_with_map ?\\n camera_to_anchor_distance / u_camera_to_center_distance :\\n u_camera_to_center_distance / camera_to_anchor_distance;\\n highp float perspective_ratio = 0.5 + 0.5 * distance_ratio;\\n\\n size *= perspective_ratio;\\n\\n float fontScale = u_is_text ? size / 24.0 : size;\\n\\n highp float symbol_rotation = 0.0;\\n if (u_rotate_symbol) {\\n // Point labels with 'rotation-alignment: map' are horizontal with respect to tile units\\n // To figure out that angle in projected space, we draw a short horizontal line in tile\\n // space, project it, and measure its angle in projected space.\\n vec4 offsetProjectedPoint = u_matrix * vec4(a_pos + vec2(1, 0), 0, 1);\\n\\n vec2 a = projectedPoint.xy / projectedPoint.w;\\n vec2 b = offsetProjectedPoint.xy / offsetProjectedPoint.w;\\n\\n symbol_rotation = atan((b.y - a.y) / u_aspect_ratio, b.x - a.x);\\n }\\n\\n highp float angle_sin = sin(segment_angle + symbol_rotation);\\n highp float angle_cos = cos(segment_angle + symbol_rotation);\\n mat2 rotation_matrix = mat2(angle_cos, -1.0 * angle_sin, angle_sin, angle_cos);\\n\\n vec4 projected_pos = u_label_plane_matrix * vec4(a_projected_pos.xy, 0.0, 1.0);\\n gl_Position = u_gl_coord_matrix * vec4(projected_pos.xy / projected_pos.w + rotation_matrix * (a_offset / 64.0 * fontScale), 0.0, 1.0);\\n float gamma_scale = gl_Position.w;\\n\\n vec2 tex = a_tex / u_texsize;\\n // incidence_stretch is the ratio of how much y space a label takes up on a tile while drawn perpendicular to the viewport vs\\n // how much space it would take up if it were drawn flat on the tile\\n // Using law of sines, camera_to_anchor/sin(ground_angle) = camera_to_center/sin(incidence_angle)\\n // sin(incidence_angle) = 1/incidence_stretch\\n // Incidence angle 90 -> head on, sin(incidence_angle) = 1, no incidence stretch\\n // Incidence angle 1 -> very oblique, sin(incidence_angle) =~ 0, lots of incidence stretch\\n // ground_angle = u_pitch + PI/2 -> sin(ground_angle) = cos(u_pitch)\\n // This 2D calculation is only exactly correct when gl_Position.x is in the center of the viewport,\\n // but it's a close enough approximation for our purposes\\n highp float incidence_stretch = camera_to_anchor_distance / (u_camera_to_center_distance * cos(u_pitch));\\n // incidence_stretch only applies to the y-axis, but without re-calculating the collision tile, we can't\\n // adjust the size of only one axis. So, we do a crude approximation at placement time to get the aspect ratio\\n // about right, and then do the rest of the adjustment here: there will be some extra padding on the x-axis,\\n // but hopefully not too much.\\n // Never make the adjustment less than 1.0: instead of allowing collisions on the x-axis, be conservative on\\n // the y-axis.\\n highp float collision_adjustment = max(1.0, incidence_stretch / u_collision_y_stretch);\\n\\n // Floor to 1/10th zoom to dodge precision issues that can cause partially hidden labels\\n highp float collision_perspective_ratio = 1.0 + 0.5*((camera_to_anchor_distance / u_camera_to_center_distance) - 1.0);\\n highp float perspective_zoom_adjust = floor(log2(collision_perspective_ratio * collision_adjustment) * 10.0);\\n vec2 fade_tex = vec2((a_labelminzoom + perspective_zoom_adjust) / 255.0, 0.0);\\n\\n v_data0 = vec4(tex.x, tex.y, fade_tex.x, fade_tex.y);\\n v_data1 = vec2(gamma_scale, size);\\n}\\n\"}},re=/#pragma mapbox: ([\\w]+) ([\\w]+) ([\\w]+) ([\\w]+)/g,loop=function(e){var n=shaders[e],a={};n.fragmentSource=n.fragmentSource.replace(re,function(e,n,o,t,i){return a[i]=!0,\"define\"===n?\"\\n#ifndef HAS_UNIFORM_u_\"+i+\"\\nvarying \"+o+\" \"+t+\" \"+i+\";\\n#else\\nuniform \"+o+\" \"+t+\" u_\"+i+\";\\n#endif\\n\":\"\\n#ifdef HAS_UNIFORM_u_\"+i+\"\\n \"+o+\" \"+t+\" \"+i+\" = u_\"+i+\";\\n#endif\\n\"}),n.vertexSource=n.vertexSource.replace(re,function(e,n,o,t,i){var r=\"float\"===t?\"vec2\":\"vec4\";return a[i]?\"define\"===n?\"\\n#ifndef HAS_UNIFORM_u_\"+i+\"\\nuniform lowp float a_\"+i+\"_t;\\nattribute \"+o+\" \"+r+\" a_\"+i+\";\\nvarying \"+o+\" \"+t+\" \"+i+\";\\n#else\\nuniform \"+o+\" \"+t+\" u_\"+i+\";\\n#endif\\n\":\"\\n#ifndef HAS_UNIFORM_u_\"+i+\"\\n \"+i+\" = unpack_mix_\"+r+\"(a_\"+i+\", a_\"+i+\"_t);\\n#else\\n \"+o+\" \"+t+\" \"+i+\" = u_\"+i+\";\\n#endif\\n\":\"define\"===n?\"\\n#ifndef HAS_UNIFORM_u_\"+i+\"\\nuniform lowp float a_\"+i+\"_t;\\nattribute \"+o+\" \"+r+\" a_\"+i+\";\\n#else\\nuniform \"+o+\" \"+t+\" u_\"+i+\";\\n#endif\\n\":\"\\n#ifndef HAS_UNIFORM_u_\"+i+\"\\n \"+o+\" \"+t+\" \"+i+\" = unpack_mix_\"+r+\"(a_\"+i+\", a_\"+i+\"_t);\\n#else\\n \"+o+\" \"+t+\" \"+i+\" = u_\"+i+\";\\n#endif\\n\"})};for(var programName in shaders)loop(programName);module.exports=shaders;\n},{}],87:[function(_dereq_,module,exports){\n\"use strict\";var ImageSource=_dereq_(\"./image_source\"),window=_dereq_(\"../util/window\"),CanvasSource=function(t){function i(i,a,e,s){t.call(this,i,a,e,s),this.options=a,this.animate=void 0===a.animate||a.animate}return t&&(i.__proto__=t),i.prototype=Object.create(t&&t.prototype),i.prototype.constructor=i,i.prototype.load=function(){this.canvas=this.canvas||window.document.getElementById(this.options.canvas);var t=this.canvas.getContext(this.options.contextType);if(!t)return this.fire(\"error\",new Error(\"Canvas context not found.\"));if(this.context=t,this.width=this.canvas.width,this.height=this.canvas.height,this._hasInvalidDimensions())return this.fire(\"error\",new Error(\"Canvas dimensions cannot be less than or equal to zero.\"));var i;this.play=function(){void 0===i&&(i=this.map.style.animationLoop.set(1/0),this.map._rerender())},this.pause=function(){void 0!==i&&(i=this.map.style.animationLoop.cancel(i))},this._finishLoading()},i.prototype.getCanvas=function(){return this.canvas},i.prototype.onAdd=function(t){this.map=t,this.load(),this.canvas&&this.animate&&this.play()},i.prototype.onRemove=function(){this.pause()},i.prototype.readCanvas=function(t){var i=this;if(this.context instanceof CanvasRenderingContext2D)this.canvasData=this.context.getImageData(0,0,this.width,this.height);else if(this.context instanceof WebGLRenderingContext){var a=this.context,e=new Uint8Array(this.width*this.height*4);a.readPixels(0,0,this.width,this.height,a.RGBA,a.UNSIGNED_BYTE,e),this.secondaryContext||(this.secondaryContext=window.document.createElement(\"canvas\").getContext(\"2d\")),this.canvasData&&!t||(this.canvasData=this.secondaryContext.createImageData(this.width,this.height));for(var s=this.height-1,n=0;s>=0;s--,n++)i.canvasData.data.set(e.subarray(s*i.width*4,(s+1)*i.width*4),n*i.width*4)}},i.prototype.prepare=function(){var t=!1;if(this.canvas.width!==this.width&&(this.width=this.canvas.width,t=!0),this.canvas.height!==this.height&&(this.height=this.canvas.height,t=!0),!this._hasInvalidDimensions()&&0!==Object.keys(this.tiles).length){if((this.animate||!this.canvasData||t)&&this.readCanvas(t),!this.canvasData)return void this.fire(\"error\",new Error(\"Could not read canvas data.\"));this._prepareImage(this.map.painter.gl,this.canvasData,t)}},i.prototype.serialize=function(){return{type:\"canvas\",canvas:this.canvas,coordinates:this.coordinates}},i.prototype._hasInvalidDimensions=function(){for(var t=this,i=0,a=[t.canvas.width,t.canvas.height];i<a.length;i+=1){var e=a[i];if(isNaN(e)||e<=0)return!0}return!1},i}(ImageSource);module.exports=CanvasSource;\n},{\"../util/window\":204,\"./image_source\":91}],88:[function(_dereq_,module,exports){\n\"use strict\";function resolveURL(t){var e=window.document.createElement(\"a\");return e.href=t,e.href}var Evented=_dereq_(\"../util/evented\"),util=_dereq_(\"../util/util\"),window=_dereq_(\"../util/window\"),EXTENT=_dereq_(\"../data/extent\"),ResourceType=_dereq_(\"../util/ajax\").ResourceType,browser=_dereq_(\"../util/browser\"),GeoJSONSource=function(t){function e(e,o,r,i){t.call(this),this.id=e,this.type=\"geojson\",this.minzoom=0,this.maxzoom=18,this.tileSize=512,this.isTileClipped=!0,this.reparseOverscaled=!0,this.dispatcher=r,this.setEventedParent(i),this._data=o.data,this._options=util.extend({},o),void 0!==o.maxzoom&&(this.maxzoom=o.maxzoom),o.type&&(this.type=o.type);var a=EXTENT/this.tileSize;this.workerOptions=util.extend({source:this.id,cluster:o.cluster||!1,geojsonVtOptions:{buffer:(void 0!==o.buffer?o.buffer:128)*a,tolerance:(void 0!==o.tolerance?o.tolerance:.375)*a,extent:EXTENT,maxZoom:this.maxzoom},superclusterOptions:{maxZoom:void 0!==o.clusterMaxZoom?Math.min(o.clusterMaxZoom,this.maxzoom-1):this.maxzoom-1,extent:EXTENT,radius:(o.clusterRadius||50)*a,log:!1}},o.workerOptions)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.load=function(){var t=this;this.fire(\"dataloading\",{dataType:\"source\"}),this._updateWorkerData(function(e){if(e)return void t.fire(\"error\",{error:e});t.fire(\"data\",{dataType:\"source\",sourceDataType:\"metadata\"})})},e.prototype.onAdd=function(t){this.map=t,this.load()},e.prototype.setData=function(t){var e=this;return this._data=t,this.fire(\"dataloading\",{dataType:\"source\"}),this._updateWorkerData(function(t){if(t)return e.fire(\"error\",{error:t});e.fire(\"data\",{dataType:\"source\",sourceDataType:\"content\"})}),this},e.prototype._updateWorkerData=function(t){var e=this,o=util.extend({},this.workerOptions),r=this._data;\"string\"==typeof r?o.request=this.map._transformRequest(resolveURL(r),ResourceType.Source):o.data=JSON.stringify(r),this.workerID=this.dispatcher.send(this.type+\".loadData\",o,function(o){e._loaded=!0,t(o)},this.workerID)},e.prototype.loadTile=function(t,e){var o=this,r=t.workerID&&\"expired\"!==t.state?\"reloadTile\":\"loadTile\",i={type:this.type,uid:t.uid,coord:t.coord,zoom:t.coord.z,maxZoom:this.maxzoom,tileSize:this.tileSize,source:this.id,pixelRatio:browser.devicePixelRatio,overscaling:t.coord.z>this.maxzoom?Math.pow(2,t.coord.z-this.maxzoom):1,angle:this.map.transform.angle,pitch:this.map.transform.pitch,cameraToCenterDistance:this.map.transform.cameraToCenterDistance,cameraToTileDistance:this.map.transform.cameraToTileDistance(t),showCollisionBoxes:this.map.showCollisionBoxes};t.workerID=this.dispatcher.send(r,i,function(r,i){if(t.unloadVectorData(),!t.aborted)return r?e(r):(t.loadVectorData(i,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 util.extend({},this._options,{type:this.type,data:this._data})},e}(Evented);module.exports=GeoJSONSource;\n},{\"../data/extent\":48,\"../util/ajax\":201,\"../util/browser\":202,\"../util/evented\":210,\"../util/util\":223,\"../util/window\":204}],89:[function(_dereq_,module,exports){\n\"use strict\";function loadGeoJSONTile(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),i=vtpbf(u);0===i.byteOffset&&i.byteLength===i.buffer.byteLength||(i=new Uint8Array(i)),r(null,{vectorTile:u,rawData:i.buffer})}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,loadGeoJSONTile),o&&(this.loadGeoJSON=o),this._geoJSONIndexes={}}return e&&(r.__proto__=e),r.prototype=Object.create(e&&e.prototype),r.prototype.constructor=r,r.prototype.loadData=function(e,r){var t=this;this.loadGeoJSON(e,function(o,n){if(o||!n)return r(o);if(\"object\"!=typeof n)return r(new Error(\"Input data is not a valid GeoJSON object.\"));rewind(n,!0);try{t._geoJSONIndexes[e.source]=e.cluster?supercluster(e.superclusterOptions).load(n.features):geojsonvt(n,e.geojsonVtOptions)}catch(o){return r(o)}t.loaded[e.source]={},r(null)})},r.prototype.reloadTile=function(r,t){var o=this.loaded[r.source],n=r.uid;return o&&o[n]?e.prototype.reloadTile.call(this,r,t):this.loadTile(r,t)},r.prototype.loadGeoJSON=function(e,r){if(e.request)ajax.getJSON(e.request,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}(VectorTileWorkerSource);module.exports=GeoJSONWorkerSource;\n},{\"../util/ajax\":201,\"./geojson_wrapper\":90,\"./vector_tile_worker_source\":103,\"geojson-rewind\":13,\"geojson-vt\":17,\"supercluster\":32,\"vt-pbf\":37}],90:[function(_dereq_,module,exports){\n\"use strict\";var Point=_dereq_(\"@mapbox/point-geometry\"),toGeoJSON=_dereq_(\"@mapbox/vector-tile\").VectorTileFeature.prototype.toGeoJSON,EXTENT=_dereq_(\"../data/extent\"),FeatureWrapper=function(e){this._feature=e,this.extent=EXTENT,this.type=e.type,this.properties=e.tags,\"id\"in e&&!isNaN(e.id)&&(this.id=parseInt(e.id,10))};FeatureWrapper.prototype.loadGeometry=function(){var e=this;if(1===this._feature.type){for(var t=[],r=0,o=e._feature.geometry;r<o.length;r+=1){var a=o[r];t.push([new Point(a[0],a[1])])}return t}for(var i=[],p=0,n=e._feature.geometry;p<n.length;p+=1){for(var s=n[p],u=[],h=0,f=s;h<f.length;h+=1){var l=f[h];u.push(new Point(l[0],l[1]))}i.push(u)}return i},FeatureWrapper.prototype.toGeoJSON=function(e,t,r){return toGeoJSON.call(this,e,t,r)};var GeoJSONWrapper=function(e){this.layers={_geojsonTileLayer:this},this.name=\"_geojsonTileLayer\",this.extent=EXTENT,this.length=e.length,this._features=e};GeoJSONWrapper.prototype.feature=function(e){return new FeatureWrapper(this._features[e])},module.exports=GeoJSONWrapper;\n},{\"../data/extent\":48,\"@mapbox/point-geometry\":2,\"@mapbox/vector-tile\":6}],91:[function(_dereq_,module,exports){\n\"use strict\";var util=_dereq_(\"../util/util\"),window=_dereq_(\"../util/window\"),TileCoord=_dereq_(\"./tile_coord\"),LngLat=_dereq_(\"../geo/lng_lat\"),Point=_dereq_(\"@mapbox/point-geometry\"),Evented=_dereq_(\"../util/evented\"),ajax=_dereq_(\"../util/ajax\"),browser=_dereq_(\"../util/browser\"),EXTENT=_dereq_(\"../data/extent\"),RasterBoundsArray=_dereq_(\"../data/raster_bounds_array\"),VertexBuffer=_dereq_(\"../gl/vertex_buffer\"),VertexArrayObject=_dereq_(\"../render/vertex_array_object\"),ImageSource=function(e){function t(t,r,o,i){e.call(this),this.id=t,this.dispatcher=o,this.coordinates=r.coordinates,this.type=\"image\",this.minzoom=0,this.maxzoom=22,this.tileSize=512,this.tiles={},this.setEventedParent(i),this.options=r,this.textureLoaded=!1}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.load=function(){var e=this;this.fire(\"dataloading\",{dataType:\"source\"}),this.url=this.options.url,ajax.getImage(this.map._transformRequest(this.url,ajax.ResourceType.Image),function(t,r){t?e.fire(\"error\",{error:t}):r&&(e.image=browser.getImageData(r),e._finishLoading())})},t.prototype._finishLoading=function(){this.map&&(this.setCoordinates(this.coordinates),this.fire(\"data\",{dataType:\"source\",sourceDataType:\"metadata\"}))},t.prototype.onAdd=function(e){this.map=e,this.load()},t.prototype.setCoordinates=function(e){this.coordinates=e;var t=this.map,r=e.map(function(e){return t.transform.locationCoordinate(LngLat.convert(e)).zoomTo(0)}),o=this.centerCoord=util.getCoordinatesCenter(r);o.column=Math.floor(o.column),o.row=Math.floor(o.row),this.coord=new TileCoord(o.zoom,o.column,o.row),this.minzoom=this.maxzoom=o.zoom;var i=r.map(function(e){var t=e.zoomTo(o.zoom);return new Point(Math.round((t.column-o.column)*EXTENT),Math.round((t.row-o.row)*EXTENT))});return this._boundsArray=new RasterBoundsArray,this._boundsArray.emplaceBack(i[0].x,i[0].y,0,0),this._boundsArray.emplaceBack(i[1].x,i[1].y,EXTENT,0),this._boundsArray.emplaceBack(i[3].x,i[3].y,0,EXTENT),this._boundsArray.emplaceBack(i[2].x,i[2].y,EXTENT,EXTENT),this.boundsBuffer&&(this.boundsBuffer.destroy(),delete this.boundsBuffer),this.fire(\"data\",{dataType:\"source\",sourceDataType:\"content\"}),this},t.prototype.prepare=function(){0!==Object.keys(this.tiles).length&&this.image&&this._prepareImage(this.map.painter.gl,this.image)},t.prototype._prepareImage=function(e,t,r){var o=this;this.boundsBuffer||(this.boundsBuffer=new VertexBuffer(e,this._boundsArray)),this.boundsVAO||(this.boundsVAO=new VertexArrayObject),this.textureLoaded?r?e.texImage2D(e.TEXTURE_2D,0,e.RGBA,e.RGBA,e.UNSIGNED_BYTE,t):(t instanceof window.HTMLVideoElement||t instanceof window.ImageData)&&(e.bindTexture(e.TEXTURE_2D,this.texture),e.texSubImage2D(e.TEXTURE_2D,0,0,0,e.RGBA,e.UNSIGNED_BYTE,t)):(this.textureLoaded=!0,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.LINEAR),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MAG_FILTER,e.LINEAR),e.texImage2D(e.TEXTURE_2D,0,e.RGBA,e.RGBA,e.UNSIGNED_BYTE,t));for(var i in o.tiles){var a=o.tiles[i];\"loaded\"!==a.state&&(a.state=\"loaded\",a.texture=o.texture)}},t.prototype.loadTile=function(e,t){this.coord&&this.coord.toString()===e.coord.toString()?(this.tiles[String(e.coord.w)]=e,e.buckets={},t(null)):(e.state=\"errored\",t(null))},t.prototype.serialize=function(){return{type:\"image\",url:this.options.url,coordinates:this.coordinates}},t}(Evented);module.exports=ImageSource;\n},{\"../data/extent\":48,\"../data/raster_bounds_array\":54,\"../geo/lng_lat\":58,\"../gl/vertex_buffer\":62,\"../render/vertex_array_object\":84,\"../util/ajax\":201,\"../util/browser\":202,\"../util/evented\":210,\"../util/util\":223,\"../util/window\":204,\"./tile_coord\":101,\"@mapbox/point-geometry\":2}],92:[function(_dereq_,module,exports){\n\"use strict\";var util=_dereq_(\"../util/util\"),ajax=_dereq_(\"../util/ajax\"),browser=_dereq_(\"../util/browser\"),normalizeURL=_dereq_(\"../util/mapbox\").normalizeSourceURL;module.exports=function(r,e,o){var u=function(r,e){if(r)return o(r);if(e){var u=util.pick(e,[\"tiles\",\"minzoom\",\"maxzoom\",\"attribution\",\"mapbox_logo\",\"bounds\"]);e.vector_layers&&(u.vectorLayers=e.vector_layers,u.vectorLayerIds=u.vectorLayers.map(function(r){return r.id})),o(null,u)}};r.url?ajax.getJSON(e(normalizeURL(r.url),ajax.ResourceType.Source),u):browser.frame(function(){return u(null,r)})};\n},{\"../util/ajax\":201,\"../util/browser\":202,\"../util/mapbox\":217,\"../util/util\":223}],93:[function(_dereq_,module,exports){\n\"use strict\";var EXTENT=_dereq_(\"../data/extent\");module.exports=function(e,t,r){return t*(EXTENT/(e.tileSize*Math.pow(2,r-e.coord.z)))};\n},{\"../data/extent\":48}],94:[function(_dereq_,module,exports){\n\"use strict\";function sortTilesIn(e,r){var o=e.coord,t=r.coord;return o.z-t.z||o.y-t.y||o.w-t.w||o.x-t.x}function mergeRenderedFeatureLayers(e){for(var r={},o={},t=0,n=e;t<n.length;t+=1){var u=n[t],a=u.queryResults,d=u.wrappedTileID,s=o[d]=o[d]||{};for(var i in a)for(var l=a[i],c=s[i]=s[i]||{},f=r[i]=r[i]||[],v=0,y=l;v<y.length;v+=1){var p=y[v];c[p.featureIndex]||(c[p.featureIndex]=!0,f.push(p.feature))}}return r}var TileCoord=_dereq_(\"./tile_coord\");exports.rendered=function(e,r,o,t,n,u){var a=e.tilesIn(o);a.sort(sortTilesIn);for(var d=[],s=0,i=a;s<i.length;s+=1){var l=i[s];d.push({wrappedTileID:l.coord.wrapped().id,queryResults:l.tile.queryRenderedFeatures(r,l.queryGeometry,l.scale,t,u)})}return mergeRenderedFeatureLayers(d)},exports.source=function(e,r){for(var o=e.getRenderableIds().map(function(r){return e.getTileByID(r)}),t=[],n={},u=0;u<o.length;u++){var a=o[u],d=new TileCoord(Math.min(a.sourceMaxZoom,a.coord.z),a.coord.x,a.coord.y,0).id;n[d]||(n[d]=!0,a.querySourceFeatures(t,r))}return t};\n},{\"./tile_coord\":101}],95:[function(_dereq_,module,exports){\n\"use strict\";var util=_dereq_(\"../util/util\"),ajax=_dereq_(\"../util/ajax\"),Evented=_dereq_(\"../util/evented\"),loadTileJSON=_dereq_(\"./load_tilejson\"),normalizeURL=_dereq_(\"../util/mapbox\").normalizeTileURL,TileBounds=_dereq_(\"./tile_bounds\"),RasterTileSource=function(e){function t(t,i,r,o){e.call(this),this.id=t,this.dispatcher=r,this.setEventedParent(o),this.type=\"raster\",this.minzoom=0,this.maxzoom=22,this.roundZoom=!0,this.scheme=\"xyz\",this.tileSize=512,this._loaded=!1,this._options=util.extend({},i),util.extend(this,util.pick(i,[\"url\",\"scheme\",\"tileSize\"]))}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.load=function(){var e=this;this.fire(\"dataloading\",{dataType:\"source\"}),loadTileJSON(this._options,this.map._transformRequest,function(t,i){t?e.fire(\"error\",t):i&&(util.extend(e,i),i.bounds&&(e.tileBounds=new TileBounds(i.bounds,e.minzoom,e.maxzoom)),e.fire(\"data\",{dataType:\"source\",sourceDataType:\"metadata\"}),e.fire(\"data\",{dataType:\"source\",sourceDataType:\"content\"}))})},t.prototype.onAdd=function(e){this.map=e,this.load()},t.prototype.serialize=function(){return util.extend({},this._options)},t.prototype.hasTile=function(e){return!this.tileBounds||this.tileBounds.contains(e,this.maxzoom)},t.prototype.loadTile=function(e,t){var i=this,r=normalizeURL(e.coord.url(this.tiles,null,this.scheme),this.url,this.tileSize);e.request=ajax.getImage(this.map._transformRequest(r,ajax.ResourceType.Tile),function(r,o){if(delete e.request,e.aborted)i.state=\"unloaded\",t(null);else if(r)i.state=\"errored\",t(r);else if(o){i.map._refreshExpiredTiles&&e.setExpiryData(o),delete o.cacheControl,delete o.expires;var a=i.map.painter.gl;e.texture=i.map.painter.getTileTexture(o.width),e.texture?(a.bindTexture(a.TEXTURE_2D,e.texture),a.texSubImage2D(a.TEXTURE_2D,0,0,0,a.RGBA,a.UNSIGNED_BYTE,o)):(e.texture=a.createTexture(),a.bindTexture(a.TEXTURE_2D,e.texture),a.texParameteri(a.TEXTURE_2D,a.TEXTURE_MIN_FILTER,a.LINEAR_MIPMAP_NEAREST),a.texParameteri(a.TEXTURE_2D,a.TEXTURE_MAG_FILTER,a.LINEAR),a.texParameteri(a.TEXTURE_2D,a.TEXTURE_WRAP_S,a.CLAMP_TO_EDGE),a.texParameteri(a.TEXTURE_2D,a.TEXTURE_WRAP_T,a.CLAMP_TO_EDGE),a.pixelStorei(a.UNPACK_PREMULTIPLY_ALPHA_WEBGL,!0),i.map.painter.extTextureFilterAnisotropic&&a.texParameterf(a.TEXTURE_2D,i.map.painter.extTextureFilterAnisotropic.TEXTURE_MAX_ANISOTROPY_EXT,i.map.painter.extTextureFilterAnisotropicMax),a.texImage2D(a.TEXTURE_2D,0,a.RGBA,a.RGBA,a.UNSIGNED_BYTE,o),e.texture.size=o.width),a.generateMipmap(a.TEXTURE_2D),e.state=\"loaded\",t(null)}})},t.prototype.abortTile=function(e){e.request&&(e.request.abort(),delete e.request)},t.prototype.unloadTile=function(e){e.texture&&this.map.painter.saveTileTexture(e.texture)},t}(Evented);module.exports=RasterTileSource;\n},{\"../util/ajax\":201,\"../util/evented\":210,\"../util/mapbox\":217,\"../util/util\":223,\"./load_tilejson\":92,\"./tile_bounds\":100}],96:[function(_dereq_,module,exports){\n\"use strict\";var ajax=_dereq_(\"../util/ajax\"),Evented=_dereq_(\"../util/evented\"),window=_dereq_(\"../util/window\"),pluginRequested=!1,pluginBlobURL=null;module.exports.evented=new Evented,module.exports.registerForPluginAvailability=function(e){return pluginBlobURL?e({pluginBlobURL:pluginBlobURL,errorCallback:module.exports.errorCallback}):module.exports.evented.once(\"pluginAvailable\",e),e},module.exports.createBlobURL=function(e){return window.URL.createObjectURL(new window.Blob([e.data],{type:\"text/javascript\"}))},module.exports.clearRTLTextPlugin=function(){pluginRequested=!1,pluginBlobURL=null},module.exports.setRTLTextPlugin=function(e,l){if(pluginRequested)throw new Error(\"setRTLTextPlugin cannot be called multiple times.\");pluginRequested=!0,module.exports.errorCallback=l,ajax.getArrayBuffer({url:e},function(e,t){e?l(e):t&&(pluginBlobURL=module.exports.createBlobURL(t),module.exports.evented.fire(\"pluginAvailable\",{pluginBlobURL:pluginBlobURL,errorCallback:l}))})},module.exports.applyArabicShaping=null,module.exports.processBidirectionalText=null;\n},{\"../util/ajax\":201,\"../util/evented\":210,\"../util/window\":204}],97:[function(_dereq_,module,exports){\n\"use strict\";var util=_dereq_(\"../util/util\"),sourceTypes={vector:_dereq_(\"../source/vector_tile_source\"),raster:_dereq_(\"../source/raster_tile_source\"),geojson:_dereq_(\"../source/geojson_source\"),video:_dereq_(\"../source/video_source\"),image:_dereq_(\"../source/image_source\"),canvas:_dereq_(\"../source/canvas_source\")};exports.create=function(e,r,o,u){var s=new sourceTypes[r.type](e,r,o,u);if(s.id!==e)throw new Error(\"Expected Source id to be \"+e+\" instead of \"+s.id);return util.bindAll([\"load\",\"abort\",\"unload\",\"serialize\",\"prepare\"],s),s},exports.getType=function(e){return sourceTypes[e]},exports.setType=function(e,r){sourceTypes[e]=r};\n},{\"../source/canvas_source\":87,\"../source/geojson_source\":88,\"../source/image_source\":91,\"../source/raster_tile_source\":95,\"../source/vector_tile_source\":102,\"../source/video_source\":104,\"../util/util\":223}],98:[function(_dereq_,module,exports){\n\"use strict\";function coordinateToTilePoint(e,t,o){var i=o.zoomTo(Math.min(e.z,t));return new Point((i.column-(e.x+e.w*Math.pow(2,e.z)))*EXTENT,(i.row-e.y)*EXTENT)}function compareKeyZoom(e,t){return e%32-t%32}function isRasterType(e){return\"raster\"===e||\"image\"===e||\"video\"===e}var createSource=_dereq_(\"./source\").create,Tile=_dereq_(\"./tile\"),Evented=_dereq_(\"../util/evented\"),TileCoord=_dereq_(\"./tile_coord\"),Cache=_dereq_(\"../util/lru_cache\"),Coordinate=_dereq_(\"../geo/coordinate\"),util=_dereq_(\"../util/util\"),EXTENT=_dereq_(\"../data/extent\"),Point=_dereq_(\"@mapbox/point-geometry\"),SourceCache=function(e){function t(t,o,i){var r=this;e.call(this),this.id=t,this.dispatcher=i,this.on(\"data\",function(e){\"source\"===e.dataType&&\"metadata\"===e.sourceDataType&&(r._sourceLoaded=!0),r._sourceLoaded&&!r._paused&&\"source\"===e.dataType&&\"content\"===e.sourceDataType&&(r.reload(),r.transform&&r.update(r.transform))}),this.on(\"error\",function(){r._sourceErrored=!0}),this._source=createSource(t,o,i,this),this._tiles={},this._cache=new Cache(0,this._unloadTile.bind(this)),this._timers={},this._cacheTimers={},this._maxTileCacheSize=null,this._isIdRenderable=this._isIdRenderable.bind(this)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.onAdd=function(e){this.map=e,this._maxTileCacheSize=e?e._maxTileCacheSize:null,this._source&&this._source.onAdd&&this._source.onAdd(e)},t.prototype.onRemove=function(e){this._source&&this._source.onRemove&&this._source.onRemove(e)},t.prototype.loaded=function(){var e=this;if(this._sourceErrored)return!0;if(!this._sourceLoaded)return!1;for(var t in e._tiles){var o=e._tiles[t];if(\"loaded\"!==o.state&&\"errored\"!==o.state)return!1}return!0},t.prototype.getSource=function(){return this._source},t.prototype.pause=function(){this._paused=!0},t.prototype.resume=function(){if(this._paused){var e=this._shouldReloadOnResume;this._paused=!1,this._shouldReloadOnResume=!1,e&&this.reload(),this.transform&&this.update(this.transform)}},t.prototype._loadTile=function(e,t){return this._source.loadTile(e,t)},t.prototype._unloadTile=function(e){if(this._source.unloadTile)return this._source.unloadTile(e)},t.prototype._abortTile=function(e){if(this._source.abortTile)return this._source.abortTile(e)},t.prototype.serialize=function(){return this._source.serialize()},t.prototype.prepare=function(e){var t=this;this._source.prepare&&this._source.prepare();for(var o in t._tiles)t._tiles[o].upload(e)},t.prototype.getIds=function(){return Object.keys(this._tiles).map(Number).sort(compareKeyZoom)},t.prototype.getRenderableIds=function(){return this.getIds().filter(this._isIdRenderable)},t.prototype._isIdRenderable=function(e){return this._tiles[e].hasData()&&!this._coveredTiles[e]},t.prototype.reload=function(){var e=this;if(this._paused)return void(this._shouldReloadOnResume=!0);this._cache.reset();for(var t in e._tiles)e._reloadTile(t,\"reloading\")},t.prototype._reloadTile=function(e,t){var o=this._tiles[e];o&&(\"loading\"!==o.state&&(o.state=t),this._loadTile(o,this._tileLoaded.bind(this,o,e,t)))},t.prototype._tileLoaded=function(e,t,o,i){if(i)return e.state=\"errored\",void(404!==i.status?this._source.fire(\"error\",{tile:e,error:i}):this.update(this.transform));e.timeAdded=(new Date).getTime(),\"expired\"===o&&(e.refreshedUponExpiration=!0),this._setTileReloadTimer(t,e),this._source.fire(\"data\",{dataType:\"source\",tile:e,coord:e.coord}),this.map&&(this.map.painter.tileExtentVAO.vao=null)},t.prototype.getTile=function(e){return this.getTileByID(e.id)},t.prototype.getTileByID=function(e){return this._tiles[e]},t.prototype.getZoom=function(e){return e.zoom+e.scaleZoom(e.tileSize/this._source.tileSize)},t.prototype._findLoadedChildren=function(e,t,o){var i=this,r=!1;for(var s in i._tiles){var a=i._tiles[s];if(!(o[s]||!a.hasData()||a.coord.z<=e.z||a.coord.z>t)){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);if(!d)break;a=i._tiles[d.id],a&&a.hasData()&&(delete o[s],o[d.id]=!0)}}}return r},t.prototype.findLoadedParent=function(e,t,o){for(var i=this,r=e.z-1;r>=t;r--){var s=e.parent(i._source.maxzoom);if(!s)return;e=s;var a=String(e.id),n=i._tiles[a];if(n&&n.hasData())return o[a]=!0,n;if(i._cache.has(a))return o[a]=!0,i._cache.getWithoutRemoving(a)}},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=Math.floor(5*i),s=\"number\"==typeof this._maxTileCacheSize?Math.min(this._maxTileCacheSize,r):r;this._cache.setMaxSize(s)},t.prototype.update=function(e){var o=this;if(this.transform=e,this._sourceLoaded&&!this._paused){this.updateCacheSize(e),this._coveredTiles={};var i;this.used?this._source.coord?i=e.getVisibleWrappedCoordinates(this._source.coord):(i=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&&(i=i.filter(function(e){return o._source.hasTile(e)}))):i=[];var r=(this._source.roundZoom?Math.round:Math.floor)(this.getZoom(e)),s=Math.max(r-t.maxOverzooming,this._source.minzoom),a=Math.max(r+t.maxUnderzooming,this._source.minzoom),n=this._updateRetainedTiles(i,r),d={};if(isRasterType(this._source.type))for(var h=Object.keys(n),u=0;u<h.length;u++){var c=h[u],l=TileCoord.fromID(+c),_=o._tiles[c];if(_&&(void 0===_.fadeEndTime||_.fadeEndTime>=Date.now())){o._findLoadedChildren(l,a,n)&&(n[c]=!0);var m=o.findLoadedParent(l,s,d);m&&o._addTile(m.coord)}}var p;for(p in d)n[p]||(o._coveredTiles[p]=!0);for(p in d)n[p]=!0;for(var f=util.keysDifference(this._tiles,n),T=0;T<f.length;T++)o._removeTile(f[T])}},t.prototype._updateRetainedTiles=function(e,o){var i,r,s,a,n=this,d={},h={},u=Math.max(o-t.maxOverzooming,this._source.minzoom);for(i=0;i<e.length;i++){r=e[i],s=n._addTile(r);var c=!1;if(s.hasData())d[r.id]=!0;else{c=s.wasRequested(),d[r.id]=!0,a=!0;if(o+1>n._source.maxzoom){var l=r.children(n._source.maxzoom)[0],_=n.getTile(l);_&&_.hasData()?d[l.id]=!0:a=!1}else for(var m=r.children(n._source.maxzoom),p=0;p<m.length;p++){var f=m[p],T=f?n.getTile(f):null;T&&T.hasData()?d[f.id]=!0:a=!1}if(!a)for(var v=o-1;v>=u;--v){var y=r.scaledTo(v,n._source.maxzoom);if(h[y.id])break;if(h[y.id]=!0,s=n.getTile(y),!s&&c&&(s=n._addTile(y)),s&&(d[y.id]=!0,c=s.wasRequested(),s.hasData()))break}}}return d},t.prototype._addTile=function(e){var t=this._tiles[e.id];if(t)return t;(t=this._cache.get(e.id))&&(t.redoPlacement(this._source),this._cacheTimers[e.id]&&(clearTimeout(this._cacheTimers[e.id]),delete this._cacheTimers[e.id],this._setTileReloadTimer(e.id,t)));var o=Boolean(t);if(!o){var i=e.z,r=i>this._source.maxzoom?Math.pow(2,i-this._source.maxzoom):1;t=new Tile(e,this._source.tileSize*r,this._source.maxzoom),this._loadTile(t,this._tileLoaded.bind(this,t,e.id,t.state))}return t?(t.uses++,this._tiles[e.id]=t,o||this._source.fire(\"dataloading\",{tile:t,coord:t.coord,dataType:\"source\"}),t):null},t.prototype._setTileReloadTimer=function(e,t){var o=this,i=t.getExpiryTimeout();i&&(this._timers[e]=setTimeout(function(){o._reloadTile(e,\"expired\"),delete o._timers[e]},i))},t.prototype._setCacheInvalidationTimer=function(e,t){var o=this,i=t.getExpiryTimeout();i&&(this._cacheTimers[e]=setTimeout(function(){o._cache.remove(e),delete o._cacheTimers[e]},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]),delete this._timers[e]),!(t.uses>0)))if(t.stopPlacementThrottler(),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;this._shouldReloadOnResume=!1,this._paused=!1;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,h=0;h<e.length;h++){var u=e[h];r=Math.min(r,u.column),s=Math.min(s,u.row),a=Math.max(a,u.column),n=Math.max(n,u.row)}for(var c=0;c<i.length;c++){var l=t._tiles[i[c]],_=TileCoord.fromID(i[c]),m=[coordinateToTilePoint(_,l.sourceMaxZoom,new Coordinate(r,s,d)),coordinateToTilePoint(_,l.sourceMaxZoom,new Coordinate(a,n,d))];if(m[0].x<EXTENT&&m[0].y<EXTENT&&m[1].x>=0&&m[1].y>=0){for(var p=[],f=0;f<e.length;f++)p.push(coordinateToTilePoint(_,l.sourceMaxZoom,e[f]));o.push({tile:l,coord:_,queryGeometry:[p],scale:Math.pow(2,t.transform.zoom-l.coord.z)})}}return o},t.prototype.redoPlacement=function(){for(var e=this,t=this.getIds(),o=0;o<t.length;o++){e.getTileByID(t[o]).redoPlacement(e._source)}},t.prototype.getVisibleCoordinates=function(){for(var e=this,t=this.getRenderableIds().map(TileCoord.fromID),o=0,i=t;o<i.length;o+=1){var r=i[o];r.posMatrix=e.transform.calculatePosMatrix(r,e._source.maxzoom)}return t},t}(Evented);SourceCache.maxOverzooming=10,SourceCache.maxUnderzooming=3,module.exports=SourceCache;\n},{\"../data/extent\":48,\"../geo/coordinate\":57,\"../util/evented\":210,\"../util/lru_cache\":216,\"../util/util\":223,\"./source\":97,\"./tile\":99,\"./tile_coord\":101,\"@mapbox/point-geometry\":2}],99:[function(_dereq_,module,exports){\n\"use strict\";var util=_dereq_(\"../util/util\"),deserializeBucket=_dereq_(\"../data/bucket\").deserialize,SymbolBucket=_dereq_(\"../data/bucket/symbol_bucket\"),FeatureIndex=_dereq_(\"../data/feature_index\"),vt=_dereq_(\"@mapbox/vector-tile\"),Protobuf=_dereq_(\"pbf\"),GeoJSONFeature=_dereq_(\"../util/vectortile_to_geojson\"),featureFilter=_dereq_(\"../style-spec/feature_filter\"),CollisionTile=_dereq_(\"../symbol/collision_tile\"),CollisionBoxArray=_dereq_(\"../symbol/collision_box\"),Throttler=_dereq_(\"../util/throttler\"),Texture=_dereq_(\"../render/texture\"),CLOCK_SKEW_RETRY_TIMEOUT=3e4,Tile=function(e,t,i){this.coord=e,this.uid=util.uniqueId(),this.uses=0,this.tileSize=t,this.sourceMaxZoom=i,this.buckets={},this.expirationTime=null,this.expiredRequestCount=0,this.state=\"loading\",this.placementThrottler=new Throttler(300,this._immediateRedoPlacement.bind(this))};Tile.prototype.registerFadeDuration=function(e,t){var i=t+this.timeAdded;i<Date.now()||this.fadeEndTime&&i<this.fadeEndTime||(this.fadeEndTime=i,e.set(this.fadeEndTime-Date.now()))},Tile.prototype.wasRequested=function(){return\"errored\"===this.state||\"loaded\"===this.state||\"reloading\"===this.state},Tile.prototype.loadVectorData=function(e,t){this.hasData()&&this.unloadVectorData(),this.state=\"loaded\",e&&(e.rawTileData&&(this.rawTileData=e.rawTileData),this.collisionBoxArray=new CollisionBoxArray(e.collisionBoxArray),this.collisionTile=CollisionTile.deserialize(e.collisionTile,this.collisionBoxArray),this.featureIndex=FeatureIndex.deserialize(e.featureIndex,this.rawTileData,this.collisionTile),this.buckets=deserializeBucket(e.buckets,t.style),e.iconAtlasImage&&(this.iconAtlasImage=e.iconAtlasImage),e.glyphAtlasImage&&(this.glyphAtlasImage=e.glyphAtlasImage))},Tile.prototype.reloadSymbolData=function(e,t){var i=this;if(\"unloaded\"!==this.state){this.collisionTile=CollisionTile.deserialize(e.collisionTile,this.collisionBoxArray),this.featureIndex&&this.featureIndex.setCollisionTile(this.collisionTile);for(var a in i.buckets){var s=i.buckets[a];s instanceof SymbolBucket&&(s.destroy(),delete i.buckets[a])}util.extend(this.buckets,deserializeBucket(e.buckets,t)),e.iconAtlasImage&&(this.iconAtlasImage=e.iconAtlasImage),e.glyphAtlasImage&&(this.glyphAtlasImage=e.glyphAtlasImage)}},Tile.prototype.unloadVectorData=function(){var e=this;for(var t in e.buckets)e.buckets[t].destroy();this.buckets={},this.iconAtlasTexture&&this.iconAtlasTexture.destroy(),this.glyphAtlasTexture&&this.glyphAtlasTexture.destroy(),this.collisionBoxArray=null,this.collisionTile=null,this.featureIndex=null,this.state=\"unloaded\"},Tile.prototype.redoPlacement=function(e){if(\"vector\"===e.type||\"geojson\"===e.type){if(\"loaded\"!==this.state)return void(this.redoWhenDone=!0);if(this.collisionTile){var t=e.map.transform.cameraToTileDistance(this);if(this.angle===e.map.transform.angle&&this.pitch===e.map.transform.pitch&&this.showCollisionBoxes===e.map.showCollisionBoxes){if(this.cameraToTileDistance===t&&this.cameraToCenterDistance===e.map.transform.cameraToCenterDistance)return;if(this.pitch<25)return this.cameraToTileDistance=t,void(this.cameraToCenterDistance=e.map.transform.cameraToCenterDistance)}this.angle=e.map.transform.angle,this.pitch=e.map.transform.pitch,this.cameraToCenterDistance=e.map.transform.cameraToCenterDistance,this.cameraToTileDistance=t,this.showCollisionBoxes=e.map.showCollisionBoxes,this.placementSource=e,this.state=\"reloading\",this.placementThrottler.invoke()}}},Tile.prototype._immediateRedoPlacement=function(){var e=this;this.placementSource.dispatcher.send(\"redoPlacement\",{type:this.placementSource.type,uid:this.uid,source:this.placementSource.id,angle:this.angle,pitch:this.pitch,cameraToCenterDistance:this.cameraToCenterDistance,cameraToTileDistance:this.cameraToTileDistance,showCollisionBoxes:this.showCollisionBoxes},function(t,i){\"reloading\"===e.state&&(e.state=\"loaded\",e.reloadSymbolData(i,e.placementSource.map.style),e.placementSource.fire(\"data\",{tile:e,coord:e.coord,dataType:\"source\"}),e.placementSource.map&&(e.placementSource.map.painter.tileExtentVAO.vao=null),e.redoWhenDone&&(e.state=\"reloading\",e.redoWhenDone=!1,e._immediateRedoPlacement()))},this.workerID)},Tile.prototype.getBucket=function(e){return this.buckets[e.id]},Tile.prototype.upload=function(e){var t=this;for(var i in t.buckets){var a=t.buckets[i];a.uploaded||(a.upload(e),a.uploaded=!0)}this.iconAtlasImage&&(this.iconAtlasTexture=new Texture(e,this.iconAtlasImage,e.RGBA),this.iconAtlasImage=null),this.glyphAtlasImage&&(this.glyphAtlasTexture=new Texture(e,this.glyphAtlasImage,e.ALPHA),this.glyphAtlasImage=null)},Tile.prototype.queryRenderedFeatures=function(e,t,i,a,s){var o=this;if(!this.featureIndex)return{};var r=0;for(var l in e){var n=o.getBucket(e[l]);n&&(r=Math.max(r,e[l].queryRadius(n)))}return this.featureIndex.query({queryGeometry:t,bearing:s,params:a,scale:i,additionalRadius:r,tileSize:this.tileSize},e)},Tile.prototype.querySourceFeatures=function(e,t){var i=this;if(this.rawTileData){this.vtLayers||(this.vtLayers=new vt.VectorTile(new Protobuf(this.rawTileData)).layers);var a=t?t.sourceLayer:\"\",s=this.vtLayers._geojsonTileLayer||this.vtLayers[a];if(s)for(var o=featureFilter(t&&t.filter),r={z:this.coord.z,x:this.coord.x,y:this.coord.y},l=0;l<s.length;l++){var n=s.feature(l);if(o(n)){var h=new GeoJSONFeature(n,i.coord.z,i.coord.x,i.coord.y);h.tile=r,e.push(h)}}}},Tile.prototype.hasData=function(){return\"loaded\"===this.state||\"reloading\"===this.state||\"expired\"===this.state},Tile.prototype.setExpiryData=function(e){var t=this.expirationTime;if(e.cacheControl){var i=util.parseCacheControl(e.cacheControl);i[\"max-age\"]&&(this.expirationTime=Date.now()+1e3*i[\"max-age\"])}else e.expires&&(this.expirationTime=new Date(e.expires).getTime());if(this.expirationTime){var a=Date.now(),s=!1;if(this.expirationTime>a)s=!1;else if(t)if(this.expirationTime<t)s=!0;else{var o=this.expirationTime-t;o?this.expirationTime=a+Math.max(o,CLOCK_SKEW_RETRY_TIMEOUT):s=!0}else s=!0;s?(this.expiredRequestCount++,this.state=\"expired\"):this.expiredRequestCount=0}},Tile.prototype.getExpiryTimeout=function(){if(this.expirationTime)return this.expiredRequestCount?1e3*(1<<Math.min(this.expiredRequestCount-1,31)):Math.min(this.expirationTime-(new Date).getTime(),Math.pow(2,31)-1)},Tile.prototype.stopPlacementThrottler=function(){this.placementThrottler.stop(),\"reloading\"===this.state&&(this.state=\"loaded\")},module.exports=Tile;\n},{\"../data/bucket\":42,\"../data/bucket/symbol_bucket\":47,\"../data/feature_index\":49,\"../render/texture\":83,\"../style-spec/feature_filter\":110,\"../symbol/collision_box\":170,\"../symbol/collision_tile\":172,\"../util/throttler\":221,\"../util/util\":223,\"../util/vectortile_to_geojson\":224,\"@mapbox/vector-tile\":6,\"pbf\":29}],100:[function(_dereq_,module,exports){\n\"use strict\";var LngLatBounds=_dereq_(\"../geo/lng_lat_bounds\"),clamp=_dereq_(\"../util/util\").clamp,TileBounds=function(t,n,o){this.bounds=LngLatBounds.convert(this.validateBounds(t)),this.minzoom=n||0,this.maxzoom=o||24};TileBounds.prototype.validateBounds=function(t){return Array.isArray(t)&&4===t.length?[Math.max(-180,t[0]),Math.max(-90,t[1]),Math.min(180,t[2]),Math.min(90,t[3])]:[-180,-90,180,90]},TileBounds.prototype.contains=function(t,n){var o=n?Math.min(t.z,n):t.z,a={minX:Math.floor(this.lngX(this.bounds.getWest(),o)),minY:Math.floor(this.latY(this.bounds.getNorth(),o)),maxX:Math.ceil(this.lngX(this.bounds.getEast(),o)),maxY:Math.ceil(this.latY(this.bounds.getSouth(),o))};return t.x>=a.minX&&t.x<a.maxX&&t.y>=a.minY&&t.y<a.maxY},TileBounds.prototype.lngX=function(t,n){return(t+180)*(Math.pow(2,n)/360)},TileBounds.prototype.latY=function(t,n){var o=clamp(Math.sin(Math.PI/180*t),-.9999,.9999),a=Math.pow(2,n)/(2*Math.PI);return Math.pow(2,n-1)+.5*Math.log((1+o)/(1-o))*-a},module.exports=TileBounds;\n},{\"../geo/lng_lat_bounds\":59,\"../util/util\":223}],101:[function(_dereq_,module,exports){\n\"use strict\";function edge(t,i){if(t.row>i.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 h=Math.max(o,Math.floor(i.y0)),n=Math.min(r,Math.ceil(i.y1));if(t.x0===i.x0&&t.y0===i.y0?t.x0+i.dy/t.dy*t.dx<i.x1:t.x1-i.dy/t.dy*t.dx<i.x0){var s=t;t=i,i=s}for(var a=t.dx/t.dy,d=i.dx/i.dy,l=t.dx>0,y=i.dx<0,x=h;x<n;x++){var u=a*Math.max(0,Math.min(t.dy,x+l-t.y0))+t.x0,c=d*Math.max(0,Math.min(i.dy,x+y-i.y0))+i.x0;e(Math.floor(c),Math.ceil(u),x)}}function scanTriangle(t,i,o,r,e,h){var n,s=edge(t,i),a=edge(i,o),d=edge(o,t);s.dy>a.dy&&(n=s,s=a,a=n),s.dy>d.dy&&(n=s,s=d,d=n),a.dy>d.dy&&(n=a,a=d,d=n),s.dy&&scanSpans(d,s,r,e,h),a.dy&&scanSpans(d,a,r,e,h)}function getQuadkey(t,i,o){for(var r,e=\"\",h=t;h>0;h--)r=1<<h-1,e+=(i&r?1:0)+(o&r?2:0);return e}var WhooTS=_dereq_(\"@mapbox/whoots-js\"),Coordinate=_dereq_(\"../geo/coordinate\"),TileCoord=function(t,i,o,r){(void 0===r||isNaN(r))&&(r=0),this.z=+t,this.x=+i,this.y=+o,this.w=+r,(r*=2)<0&&(r=-1*r-1);var e=1<<this.z;this.id=32*(e*e*r+e*this.y+this.x)+this.z,this.posMatrix=null};TileCoord.prototype.toString=function(){return this.z+\"/\"+this.x+\"/\"+this.y},TileCoord.prototype.toCoordinate=function(t){var i=Math.min(this.z,void 0===t?this.z:t),o=Math.pow(2,i),r=this.y,e=this.x+o*this.w;return new Coordinate(e,r,i)},TileCoord.prototype.url=function(t,i,o){var r=WhooTS.getTileBBox(this.x,this.y,this.z),e=getQuadkey(this.z,this.x,this.y);return t[(this.x+this.y)%t.length].replace(\"{prefix}\",(this.x%16).toString(16)+(this.y%16).toString(16)).replace(\"{z}\",String(Math.min(this.z,i||this.z))).replace(\"{x}\",String(this.x)).replace(\"{y}\",String(\"tms\"===o?Math.pow(2,this.z)-this.y-1:this.y)).replace(\"{quadkey}\",e).replace(\"{bbox-epsg-3857}\",r)},TileCoord.prototype.parent=function(t){return 0===this.z?null:this.z>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.prototype.scaledTo=function(t,i){return this.z>i?new TileCoord(t,this.x,this.y,this.w):t<=this.z?new TileCoord(t,this.x>>this.z-t,this.y>>this.z-t,this.w):new TileCoord(t,this.x<<t-this.z,this.y<<t-this.z,this.w)},TileCoord.cover=function(t,i,o,r){function e(t,i,e){var s,a,d,l;if(e>=0&&e<=h)for(s=t;s<i;s++)a=Math.floor(s/h),d=(s%h+h)%h,0!==a&&!0!==r||(l=new TileCoord(o,d,e,a),n[l.id]=l)}void 0===r&&(r=!0);var h=1<<t,n={};return scanTriangle(i[0],i[1],i[2],0,h,e),scanTriangle(i[2],i[3],i[0],0,h,e),Object.keys(n).map(function(t){return n[t]})},TileCoord.fromID=function(t){var i=t%32,o=1<<i,r=(t-i)/32,e=r%o,h=(r-e)/o%o,n=Math.floor(r/(o*o));return n%2!=0&&(n=-1*n-1),n/=2,new TileCoord(i,e,h,n)},module.exports=TileCoord;\n},{\"../geo/coordinate\":57,\"@mapbox/whoots-js\":10}],102:[function(_dereq_,module,exports){\n\"use strict\";var Evented=_dereq_(\"../util/evented\"),util=_dereq_(\"../util/util\"),loadTileJSON=_dereq_(\"./load_tilejson\"),normalizeURL=_dereq_(\"../util/mapbox\").normalizeTileURL,TileBounds=_dereq_(\"./tile_bounds\"),ResourceType=_dereq_(\"../util/ajax\").ResourceType,browser=_dereq_(\"../util/browser\"),VectorTileSource=function(e){function t(t,i,o,r){if(e.call(this),this.id=t,this.dispatcher=o,this.type=\"vector\",this.minzoom=0,this.maxzoom=22,this.scheme=\"xyz\",this.tileSize=512,this.reparseOverscaled=!0,this.isTileClipped=!0,util.extend(this,util.pick(i,[\"url\",\"scheme\",\"tileSize\"])),this._options=util.extend({type:\"vector\"},i),512!==this.tileSize)throw new Error(\"vector tile sources must have a tileSize of 512\");this.setEventedParent(r)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.load=function(){var e=this;this.fire(\"dataloading\",{dataType:\"source\"}),loadTileJSON(this._options,this.map._transformRequest,function(t,i){t?e.fire(\"error\",t):i&&(util.extend(e,i),i.bounds&&(e.tileBounds=new TileBounds(i.bounds,e.minzoom,e.maxzoom)),e.fire(\"data\",{dataType:\"source\",sourceDataType:\"metadata\"}),e.fire(\"data\",{dataType:\"source\",sourceDataType:\"content\"}))})},t.prototype.hasTile=function(e){return!this.tileBounds||this.tileBounds.contains(e,this.maxzoom)},t.prototype.onAdd=function(e){this.map=e,this.load()},t.prototype.serialize=function(){return util.extend({},this._options)},t.prototype.loadTile=function(e,t){function i(i,o){if(!e.aborted){if(i)return t(i);this.map._refreshExpiredTiles&&e.setExpiryData(o),e.loadVectorData(o,this.map.painter),e.redoWhenDone&&(e.redoWhenDone=!1,e.redoPlacement(this)),t(null),e.reloadCallback&&(this.loadTile(e,e.reloadCallback),e.reloadCallback=null)}}var o=e.coord.z>this.maxzoom?Math.pow(2,e.coord.z-this.maxzoom):1,r=normalizeURL(e.coord.url(this.tiles,this.maxzoom,this.scheme),this.url),s={request:this.map._transformRequest(r,ResourceType.Tile),uid:e.uid,coord:e.coord,zoom:e.coord.z,tileSize:this.tileSize*o,type:this.type,source:this.id,pixelRatio:browser.devicePixelRatio,overscaling:o,angle:this.map.transform.angle,pitch:this.map.transform.pitch,cameraToCenterDistance:this.map.transform.cameraToCenterDistance,cameraToTileDistance:this.map.transform.cameraToTileDistance(e),showCollisionBoxes:this.map.showCollisionBoxes};e.workerID&&\"expired\"!==e.state?\"loading\"===e.state?e.reloadCallback=t:this.dispatcher.send(\"reloadTile\",s,i.bind(this),e.workerID):e.workerID=this.dispatcher.send(\"loadTile\",s,i.bind(this))},t.prototype.abortTile=function(e){this.dispatcher.send(\"abortTile\",{uid:e.uid,type:this.type,source:this.id},void 0,e.workerID)},t.prototype.unloadTile=function(e){e.unloadVectorData(),this.dispatcher.send(\"removeTile\",{uid:e.uid,type:this.type,source:this.id},void 0,e.workerID)},t}(Evented);module.exports=VectorTileSource;\n},{\"../util/ajax\":201,\"../util/browser\":202,\"../util/evented\":210,\"../util/mapbox\":217,\"../util/util\":223,\"./load_tilejson\":92,\"./tile_bounds\":100}],103:[function(_dereq_,module,exports){\n\"use strict\";function loadVectorTile(e,r){var o=ajax.getArrayBuffer(e.request,function(e,o){e?r(e):o&&r(null,{vectorTile:new vt.VectorTile(new Protobuf(o.data)),rawData:o.data,cacheControl:o.cacheControl,expires:o.expires})});return function(){o.abort()}}var ajax=_dereq_(\"../util/ajax\"),vt=_dereq_(\"@mapbox/vector-tile\"),Protobuf=_dereq_(\"pbf\"),WorkerTile=_dereq_(\"./worker_tile\"),util=_dereq_(\"../util/util\"),VectorTileWorkerSource=function(e,r,o){this.actor=e,this.layerIndex=r,this.loadVectorData=o||loadVectorTile,this.loading={},this.loaded={}};VectorTileWorkerSource.prototype.loadTile=function(e,r){var o=this,t=e.source,a=e.uid;this.loading[t]||(this.loading[t]={});var i=this.loading[t][a]=new WorkerTile(e);i.abort=this.loadVectorData(e,function(e,l){if(delete o.loading[t][a],e||!l)return r(e);var c=l.rawData,n={};l.expires&&(n.expires=l.expires),l.cacheControl&&(n.cacheControl=l.cacheControl),i.vectorTile=l.vectorTile,i.parse(l.vectorTile,o.layerIndex,o.actor,function(e,o,t){if(e||!o)return r(e);r(null,util.extend({rawTileData:c},o,n),t)}),o.loaded[t]=o.loaded[t]||{},o.loaded[t][a]=i})},VectorTileWorkerSource.prototype.reloadTile=function(e,r){function o(e,o){if(this.reloadCallback){var t=this.reloadCallback;delete this.reloadCallback,this.parse(this.vectorTile,i.layerIndex,i.actor,t)}r(e,o)}var t=this.loaded[e.source],a=e.uid,i=this;if(t&&t[a]){var l=t[a];\"parsing\"===l.status?l.reloadCallback=r:\"done\"===l.status&&l.parse(l.vectorTile,this.layerIndex,this.actor,o.bind(l))}},VectorTileWorkerSource.prototype.abortTile=function(e){var r=this.loading[e.source],o=e.uid;r&&r[o]&&r[o].abort&&(r[o].abort(),delete r[o])},VectorTileWorkerSource.prototype.removeTile=function(e){var r=this.loaded[e.source],o=e.uid;r&&r[o]&&delete r[o]},VectorTileWorkerSource.prototype.redoPlacement=function(e,r){var o=this.loaded[e.source],t=this.loading[e.source],a=e.uid;if(o&&o[a]){var i=o[a],l=i.redoPlacement(e.angle,e.pitch,e.cameraToCenterDistance,e.cameraToTileDistance,e.showCollisionBoxes);l.result&&r(null,l.result,l.transferables)}else t&&t[a]&&(t[a].angle=e.angle)},module.exports=VectorTileWorkerSource;\n},{\"../util/ajax\":201,\"../util/util\":223,\"./worker_tile\":106,\"@mapbox/vector-tile\":6,\"pbf\":29}],104:[function(_dereq_,module,exports){\n\"use strict\";var ajax=_dereq_(\"../util/ajax\"),ImageSource=_dereq_(\"./image_source\"),VideoSource=function(e){function t(t,o,i,r){e.call(this,t,o,i,r),this.roundZoom=!0,this.type=\"video\",this.options=o}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.load=function(){var e=this,t=this.options;this.urls=t.urls,ajax.getVideo(t.urls,function(t,o){if(t)e.fire(\"error\",{error:t});else if(o){e.video=o,e.video.loop=!0;var i;e.video.addEventListener(\"playing\",function(){i=e.map.style.animationLoop.set(1/0),e.map._rerender()}),e.video.addEventListener(\"pause\",function(){e.map.style.animationLoop.cancel(i)}),e.map&&e.video.play(),e._finishLoading()}})},t.prototype.getVideo=function(){return this.video},t.prototype.onAdd=function(e){this.map||(this.map=e,this.load(),this.video&&(this.video.play(),this.setCoordinates(this.coordinates)))},t.prototype.prepare=function(){0===Object.keys(this.tiles).length||this.video.readyState<2||this._prepareImage(this.map.painter.gl,this.video)},t.prototype.serialize=function(){return{type:\"video\",urls:this.urls,coordinates:this.coordinates}},t}(ImageSource);module.exports=VideoSource;\n},{\"../util/ajax\":201,\"./image_source\":91}],105:[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),globalRTLTextPlugin.applyArabicShaping&&globalRTLTextPlugin.processBidirectionalText||o(new Error(\"RTL Text Plugin failed to import scripts from \"+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\":164,\"../util/actor\":200,\"./geojson_worker_source\":89,\"./rtl_text_plugin\":96,\"./vector_tile_worker_source\":103}],106:[function(_dereq_,module,exports){\n\"use strict\";function recalculateLayers(e,i){for(var r=0,t=e.layers;r<t.length;r+=1){t[r].recalculate(i)}}function serializeBuckets(e,i){return e.filter(function(e){return!e.isEmpty()}).map(function(e){return e.serialize(i)})}var FeatureIndex=_dereq_(\"../data/feature_index\"),CollisionTile=_dereq_(\"../symbol/collision_tile\"),CollisionBoxArray=_dereq_(\"../symbol/collision_box\"),DictionaryCoder=_dereq_(\"../util/dictionary_coder\"),SymbolBucket=_dereq_(\"../data/bucket/symbol_bucket\"),util=_dereq_(\"../util/util\"),ref=_dereq_(\"../render/image_atlas\"),makeImageAtlas=ref.makeImageAtlas,ref$1=_dereq_(\"../render/glyph_atlas\"),makeGlyphAtlas=ref$1.makeGlyphAtlas,WorkerTile=function(e){this.coord=e.coord,this.uid=e.uid,this.zoom=e.zoom,this.pixelRatio=e.pixelRatio,this.tileSize=e.tileSize,this.source=e.source,this.overscaling=e.overscaling,this.angle=e.angle,this.pitch=e.pitch,this.cameraToCenterDistance=e.cameraToCenterDistance,this.cameraToTileDistance=e.cameraToTileDistance,this.showCollisionBoxes=e.showCollisionBoxes};WorkerTile.prototype.parse=function(e,i,r,t){function a(){var e=this;if(D)return t(D);if(A&&C){for(var i=new CollisionTile(this.angle,this.pitch,this.cameraToCenterDistance,this.cameraToTileDistance,this.collisionBoxArray),r=makeGlyphAtlas(A),a=makeImageAtlas(C),o=0,s=e.symbolBuckets;o<s.length;o+=1){var c=s[o];recalculateLayers(c,e.zoom),c.prepare(A,r.positions,C,a.positions),c.place(i,e.showCollisionBoxes)}this.status=\"done\";var u=[r.image.data.buffer,a.image.data.buffer];t(null,{buckets:serializeBuckets(util.values(n),u),featureIndex:l.serialize(u),collisionTile:i.serialize(u),collisionBoxArray:this.collisionBoxArray.serialize(),glyphAtlasImage:r.image,iconAtlasImage:a.image},u)}}var o=this;this.status=\"parsing\",this.data=e,this.collisionBoxArray=new CollisionBoxArray;var s=new DictionaryCoder(Object.keys(e.layers).sort()),l=new FeatureIndex(this.coord,this.overscaling);l.bucketLayerIDs=[];var n={},c={featureIndex:l,iconDependencies:{},glyphDependencies:{}},u=i.familiesBySource[this.source];for(var h in u){var m=e.layers[h];if(m){1===m.version&&util.warnOnce('Vector tile source \"'+o.source+'\" layer \"'+h+'\" does not use vector tile spec v2 and therefore may have some rendering errors.');for(var y=s.encode(h),p=[],d=0;d<m.length;d++){var f=m.feature(d);p.push({feature:f,index:d,sourceLayerIndex:y})}for(var g=0,v=u[h];g<v.length;g+=1){var k=v[g],b=k[0];if(!(b.minzoom&&o.zoom<Math.floor(b.minzoom))&&!(b.maxzoom&&o.zoom>=b.maxzoom||b.layout&&\"none\"===b.layout.visibility)){for(var x=0,T=k;x<T.length;x+=1){T[x].recalculate(o.zoom)}(n[b.id]=b.createBucket({index:l.bucketLayerIDs.length,layers:k,zoom:o.zoom,pixelRatio:o.pixelRatio,overscaling:o.overscaling,collisionBoxArray:o.collisionBoxArray})).populate(p,c),l.bucketLayerIDs.push(k.map(function(e){return e.id}))}}}}this.symbolBuckets=[];for(var z=i.symbolOrder.length-1;z>=0;z--){var B=n[i.symbolOrder[z]];B&&o.symbolBuckets.push(B)}var D,A,C,I=util.mapObject(c.glyphDependencies,function(e){return Object.keys(e).map(Number)});Object.keys(I).length?r.send(\"getGlyphs\",{uid:this.uid,stacks:I},function(e,i){D||(D=e,A=i,a.call(o))}):A={};var w=Object.keys(c.iconDependencies);w.length?r.send(\"getImages\",{icons:w},function(e,i){D||(D=e,C=i,a.call(o))}):C={},a.call(this)},WorkerTile.prototype.redoPlacement=function(e,i,r,t,a){var o=this;if(this.angle=e,this.pitch=i,this.cameraToCenterDistance=r,this.cameraToTileDistance=t,\"done\"!==this.status)return{};for(var s=new CollisionTile(this.angle,this.pitch,this.cameraToCenterDistance,this.cameraToTileDistance,this.collisionBoxArray),l=0,n=o.symbolBuckets;l<n.length;l+=1){var c=n[l];recalculateLayers(c,o.zoom),c.place(s,a)}var u=[];return{result:{buckets:serializeBuckets(this.symbolBuckets,u),collisionTile:s.serialize(u)},transferables:u}},module.exports=WorkerTile;\n},{\"../data/bucket/symbol_bucket\":47,\"../data/feature_index\":49,\"../render/glyph_atlas\":74,\"../render/image_atlas\":76,\"../symbol/collision_box\":170,\"../symbol/collision_tile\":172,\"../util/dictionary_coder\":207,\"../util/util\":223}],107:[function(_dereq_,module,exports){\n\"use strict\";function deref(r,e){var f={};for(var t in r)\"ref\"!==t&&(f[t]=r[t]);return refProperties.forEach(function(r){r in e&&(f[r]=e[r])}),f}function derefLayers(r){r=r.slice();for(var e=Object.create(null),f=0;f<r.length;f++)e[r[f].id]=r[f];for(var t=0;t<r.length;t++)\"ref\"in r[t]&&(r[t]=deref(r[t],e[r[t].ref]));return r}var refProperties=_dereq_(\"./util/ref_properties\");module.exports=derefLayers;\n},{\"./util/ref_properties\":129}],108:[function(_dereq_,module,exports){\n\"use strict\";function diffSources(e,r,o,a){e=e||{},r=r||{};var s;for(s in e)e.hasOwnProperty(s)&&(r.hasOwnProperty(s)||(o.push({command:operations.removeSource,args:[s]}),a[s]=!0));for(s in r)r.hasOwnProperty(s)&&(e.hasOwnProperty(s)?isEqual(e[s],r[s])||(o.push({command:operations.removeSource,args:[s]}),o.push({command:operations.addSource,args:[s,r[s]]}),a[s]=!0):o.push({command:operations.addSource,args:[s,r[s]]}))}function diffLayerPropertyChanges(e,r,o,a,s,t){e=e||{},r=r||{};var n;for(n in e)e.hasOwnProperty(n)&&(isEqual(e[n],r[n])||o.push({command:t,args:[a,n,r[n],s]}));for(n in r)r.hasOwnProperty(n)&&!e.hasOwnProperty(n)&&(isEqual(e[n],r[n])||o.push({command:t,args:[a,n,r[n],s]}))}function pluckId(e){return e.id}function indexById(e,r){return e[r.id]=r,e}function diffLayers(e,r,o){e=e||[],r=r||[];var a,s,t,n,i,p,m,u=e.map(pluckId),l=r.map(pluckId),y=e.reduce(indexById,{}),c=r.reduce(indexById,{}),d=u.slice(),h=Object.create(null);for(a=0,s=0;a<u.length;a++)t=u[a],c.hasOwnProperty(t)?s++:(o.push({command:operations.removeLayer,args:[t]}),d.splice(d.indexOf(t,s),1));for(a=0,s=0;a<l.length;a++)t=l[l.length-1-a],d[d.length-1-a]!==t&&(y.hasOwnProperty(t)?(o.push({command:operations.removeLayer,args:[t]}),d.splice(d.lastIndexOf(t,d.length-s),1)):s++,p=d[d.length-a],o.push({command:operations.addLayer,args:[c[t],p]}),d.splice(d.length-a,0,t),h[t]=!0);for(a=0;a<l.length;a++)if(t=l[a],n=y[t],i=c[t],!h[t]&&!isEqual(n,i))if(isEqual(n.source,i.source)&&isEqual(n[\"source-layer\"],i[\"source-layer\"])&&isEqual(n.type,i.type)){diffLayerPropertyChanges(n.layout,i.layout,o,t,null,operations.setLayoutProperty),diffLayerPropertyChanges(n.paint,i.paint,o,t,null,operations.setPaintProperty),isEqual(n.filter,i.filter)||o.push({command:operations.setFilter,args:[t,i.filter]}),isEqual(n.minzoom,i.minzoom)&&isEqual(n.maxzoom,i.maxzoom)||o.push({command:operations.setLayerZoomRange,args:[t,i.minzoom,i.maxzoom]});for(m in n)n.hasOwnProperty(m)&&\"layout\"!==m&&\"paint\"!==m&&\"filter\"!==m&&\"metadata\"!==m&&\"minzoom\"!==m&&\"maxzoom\"!==m&&(0===m.indexOf(\"paint.\")?diffLayerPropertyChanges(n[m],i[m],o,t,m.slice(6),operations.setPaintProperty):isEqual(n[m],i[m])||o.push({command:operations.setLayerProperty,args:[t,m,i[m]]}));for(m in i)i.hasOwnProperty(m)&&!n.hasOwnProperty(m)&&\"layout\"!==m&&\"paint\"!==m&&\"filter\"!==m&&\"metadata\"!==m&&\"minzoom\"!==m&&\"maxzoom\"!==m&&(0===m.indexOf(\"paint.\")?diffLayerPropertyChanges(n[m],i[m],o,t,m.slice(6),operations.setPaintProperty):isEqual(n[m],i[m])||o.push({command:operations.setLayerProperty,args:[t,m,i[m]]}))}else o.push({command:operations.removeLayer,args:[t]}),p=d[d.lastIndexOf(t)+1],o.push({command:operations.addLayer,args:[i,p]})}function diffStyles(e,r){if(!e)return[{command:operations.setStyle,args:[r]}];var o=[];try{if(!isEqual(e.version,r.version))return[{command:operations.setStyle,args:[r]}];isEqual(e.center,r.center)||o.push({command:operations.setCenter,args:[r.center]}),isEqual(e.zoom,r.zoom)||o.push({command:operations.setZoom,args:[r.zoom]}),isEqual(e.bearing,r.bearing)||o.push({command:operations.setBearing,args:[r.bearing]}),isEqual(e.pitch,r.pitch)||o.push({command:operations.setPitch,args:[r.pitch]}),isEqual(e.sprite,r.sprite)||o.push({command:operations.setSprite,args:[r.sprite]}),isEqual(e.glyphs,r.glyphs)||o.push({command:operations.setGlyphs,args:[r.glyphs]}),isEqual(e.transition,r.transition)||o.push({command:operations.setTransition,args:[r.transition]}),isEqual(e.light,r.light)||o.push({command:operations.setLight,args:[r.light]});var a={},s=[];diffSources(e.sources,r.sources,s,a);var t=[];e.layers&&e.layers.forEach(function(e){a[e.source]?o.push({command:operations.removeLayer,args:[e.id]}):t.push(e)}),o=o.concat(s),diffLayers(t,r.layers,o)}catch(e){console.warn(\"Unable to compute style diff:\",e),o=[{command:operations.setStyle,args:[r]}]}return o}var isEqual=_dereq_(\"lodash.isequal\"),operations={setStyle:\"setStyle\",addLayer:\"addLayer\",removeLayer:\"removeLayer\",setPaintProperty:\"setPaintProperty\",setLayoutProperty:\"setLayoutProperty\",setFilter:\"setFilter\",addSource:\"addSource\",removeSource:\"removeSource\",setLayerZoomRange:\"setLayerZoomRange\",setLayerProperty:\"setLayerProperty\",setCenter:\"setCenter\",setZoom:\"setZoom\",setBearing:\"setBearing\",setPitch:\"setPitch\",setSprite:\"setSprite\",setGlyphs:\"setGlyphs\",setTransition:\"setTransition\",setLight:\"setLight\"};module.exports=diffStyles,module.exports.operations=operations;\n},{\"lodash.isequal\":120}],109:[function(_dereq_,module,exports){\n\"use strict\";function ValidationError(r,i){for(var t=[],o=arguments.length-2;o-- >0;)t[o]=arguments[o+2];this.message=(r?r+\": \":\"\")+format.apply(format,t),null!==i&&void 0!==i&&i.__line__&&(this.line=i.__line__)}var format=_dereq_(\"util\").format;module.exports=ValidationError;\n},{\"util\":36}],110:[function(_dereq_,module,exports){\n\"use strict\";function createFilter(e){return new Function(\"f\",\"var p = (f && f.properties || {}); return \"+compile(e))}function compile(e){if(!e)return\"true\";var i=e[0];return e.length<=1?\"any\"===i?\"false\":\"true\":\"(\"+(\"==\"===i?compileComparisonOp(e[1],e[2],\"===\",!1):\"!=\"===i?compileComparisonOp(e[1],e[2],\"!==\",!1):\"<\"===i||\">\"===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,o){var r=compilePropertyReference(e),p=\"$type\"===e?types.indexOf(i):JSON.stringify(i);return(o?\"typeof \"+r+\"=== typeof \"+p+\"&&\":\"\")+r+n+p}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)),o=compilePropertyReference(e);return i.length<=200?n+\".indexOf(\"+o+\") !== -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; }(\"+o+\", \"+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 e<i?-1:e>i?1:0}module.exports=createFilter;var types=[\"Unknown\",\"Point\",\"LineString\",\"Polygon\"];\n},{}],111:[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);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}};\n},{}],112:[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<f.length;c+=1){var v=f[c];p[v[0]]=v[1]}l=typeof t.stops[0][0]}else{if(\"identity\"!==s)throw new Error('Unknown function type \"'+s+'\"');u=evaluateIdentityFunction}var d;if(t.colorSpace&&\"rgb\"!==t.colorSpace){if(!colorSpaces[t.colorSpace])throw new Error(\"Unknown color space: \"+t.colorSpace);var y=colorSpaces[t.colorSpace];t=JSON.parse(JSON.stringify(t));for(var F=0;F<t.stops.length;F++)t.stops[F]=[t.stops[F][0],y.forward(t.stops[F][1])];d=y.reverse}else d=identityFunction;if(r){for(var h={},g=[],m=0;m<t.stops.length;m++){var C=t.stops[m],S=C[0].zoom;void 0===h[S]&&(h[S]={zoom:S,type:t.type,property:t.property,default:t.default,stops:[]},g.push(S)),h[S].stops.push([C[0].value,C[1]])}for(var T=[],x=0,b=g;x<b.length;x+=1){var q=b[x];T.push([h[q].zoom,createFunction(h[q],e)])}o=function(o,n){return d(evaluateExponentialFunction({stops:T,base:t.base},e,o)(o,n))},o.isFeatureConstant=!1,o.isZoomConstant=!1}else i?(o=function(o){return d(u(t,e,o,p,l))},o.isFeatureConstant=!0,o.isZoomConstant=!1):(o=function(o,n){var r=n[t.property];return void 0===r?coalesce(t.default,e.default):d(u(t,e,r,p,l))},o.isFeatureConstant=!1,o.isZoomConstant=!0)}else n&&t&&(t=parseColor(t)),o=function(){return t},o.isFeatureConstant=!0,o.isZoomConstant=!0;return o}function coalesce(t,e,o){return void 0!==t?t:void 0!==e?e:void 0!==o?o:void 0}function evaluateCategoricalFunction(t,e,o,n,r){return coalesce(typeof o===r?n[o]:void 0,t.default,e.default)}function evaluateIntervalFunction(t,e,o){if(\"number\"!==getType(o))return coalesce(t.default,e.default);var n=t.stops.length;if(1===n)return t.stops[0][1];if(o<=t.stops[0][0])return t.stops[0][1];if(o>=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(){for(var t=[],e=arguments.length;e--;)t[e]=arguments[e];var o=s.apply(void 0,t),n=u.apply(void 0,t);if(void 0!==o&&void 0!==n)return p(o,n,i)}:p(s,u,i)}function evaluateIdentityFunction(t,e,o){return\"color\"===e.type?o=parseColor(o):getType(o)===e.type||\"enum\"===e.type&&e.values[o]||(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&&e<n)return s;o<e?a=s+1:o>e&&(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 0===r?0: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\":125,\"../util/get_type\":126,\"../util/interpolate\":127,\"../util/parse_color\":128,\"./color_spaces\":111}],113:[function(_dereq_,module,exports){\n\"use strict\";function stringify(r){var t=typeof r;if(\"number\"===t||\"boolean\"===t||\"string\"===t||void 0===r||null===r)return JSON.stringify(r);if(Array.isArray(r)){for(var e=\"[\",i=0,n=r;i<n.length;i+=1){e+=stringify(n[i])+\",\"}return e+\"]\"}for(var o=Object.keys(r).sort(),f=\"{\",u=0;u<o.length;u++)f+=JSON.stringify(o[u])+\":\"+stringify(r[o[u]])+\",\";return f+\"}\"}function getKey(r){for(var t=\"\",e=0,i=refProperties;e<i.length;e+=1){t+=\"/\"+stringify(r[i[e]])}return t}function groupByLayout(r){for(var t={},e=0;e<r.length;e++){var i=getKey(r[e]),n=t[i];n||(n=t[i]=[]),n.push(r[e])}var o=[];for(var f in t)o.push(t[f]);return o}var refProperties=_dereq_(\"./util/ref_properties\");module.exports=groupByLayout;\n},{\"./util/ref_properties\":129}],114:[function(_dereq_,module,exports){\nfunction clamp_css_byte(e){return e=Math.round(e),e<0?0:e>255?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(-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){}\n},{}],115:[function(_dereq_,module,exports){\nfunction isObjectLike(r){return!!r&&\"object\"==typeof r}function arraySome(r,e){for(var a=-1,t=r.length;++a<t;)if(e(r[a],a,r))return!0;return!1}function baseIsEqual(r,e,a,t,o,n){return r===e||(null==r||null==e||!isObject(r)&&!isObjectLike(e)?r!==r&&e!==e:baseIsEqualDeep(r,e,baseIsEqual,a,t,o,n))}function baseIsEqualDeep(r,e,a,t,o,n,u){var c=isArray(r),s=isArray(e),i=arrayTag,g=arrayTag;c||(i=objToString.call(r),i==argsTag?i=objectTag:i!=objectTag&&(c=isTypedArray(r))),s||(g=objToString.call(e),g==argsTag?g=objectTag:g!=objectTag&&(s=isTypedArray(e)));var b=i==objectTag,l=g==objectTag,f=i==g;if(f&&!c&&!b)return equalByTag(r,e,i);if(!o){var y=b&&hasOwnProperty.call(r,\"__wrapped__\"),T=l&&hasOwnProperty.call(e,\"__wrapped__\");if(y||T)return a(y?r.value():r,T?e.value():e,t,o,n,u)}if(!f)return!1;n||(n=[]),u||(u=[]);for(var j=n.length;j--;)if(n[j]==r)return u[j]==e;n.push(r),u.push(e);var p=(c?equalArrays:equalObjects)(r,e,a,t,o,n,u);return n.pop(),u.pop(),p}function equalArrays(r,e,a,t,o,n,u){var c=-1,s=r.length,i=e.length;if(s!=i&&!(o&&i>s))return!1;for(;++c<s;){var g=r[c],b=e[c],l=t?t(o?b:g,o?g:b,c):void 0;if(void 0!==l){if(l)continue;return!1}if(o){if(!arraySome(e,function(r){return g===r||a(g,r,t,o,n,u)}))return!1}else if(g!==b&&!a(g,b,t,o,n,u))return!1}return!0}function equalByTag(r,e,a){switch(a){case boolTag:case dateTag:return+r==+e;case errorTag:return r.name==e.name&&r.message==e.message;case numberTag:return r!=+r?e!=+e:r==+e;case regexpTag:case stringTag:return r==e+\"\"}return!1}function equalObjects(r,e,a,t,o,n,u){var c=keys(r),s=c.length;if(s!=keys(e).length&&!o)return!1;for(var i=s;i--;){var g=c[i];if(!(o?g in e:hasOwnProperty.call(e,g)))return!1}for(var b=o;++i<s;){g=c[i];var l=r[g],f=e[g],y=t?t(o?f:l,o?l:f,g):void 0;if(!(void 0===y?a(l,f,t,o,n,u):y))return!1;b||(b=\"constructor\"==g)}if(!b){var T=r.constructor,j=e.constructor;if(T!=j&&\"constructor\"in r&&\"constructor\"in e&&!(\"function\"==typeof T&&T instanceof T&&\"function\"==typeof j&&j instanceof j))return!1}return!0}function isObject(r){var e=typeof r;return!!r&&(\"object\"==e||\"function\"==e)}var isArray=_dereq_(\"lodash.isarray\"),isTypedArray=_dereq_(\"lodash.istypedarray\"),keys=_dereq_(\"lodash.keys\"),argsTag=\"[object Arguments]\",arrayTag=\"[object Array]\",boolTag=\"[object Boolean]\",dateTag=\"[object Date]\",errorTag=\"[object Error]\",numberTag=\"[object Number]\",objectTag=\"[object Object]\",regexpTag=\"[object RegExp]\",stringTag=\"[object String]\",objectProto=Object.prototype,hasOwnProperty=objectProto.hasOwnProperty,objToString=objectProto.toString;module.exports=baseIsEqual;\n},{\"lodash.isarray\":119,\"lodash.istypedarray\":121,\"lodash.keys\":122}],116:[function(_dereq_,module,exports){\nfunction bindCallback(n,t,r){if(\"function\"!=typeof n)return identity;if(void 0===t)return n;switch(r){case 1:return function(r){return n.call(t,r)};case 3:return function(r,e,u){return n.call(t,r,e,u)};case 4:return function(r,e,u,c){return n.call(t,r,e,u,c)};case 5:return function(r,e,u,c,i){return n.call(t,r,e,u,c,i)}}return function(){return n.apply(t,arguments)}}function identity(n){return n}module.exports=bindCallback;\n},{}],117:[function(_dereq_,module,exports){\nfunction isObjectLike(t){return!!t&&\"object\"==typeof t}function getNative(t,o){var e=null==t?void 0:t[o];return isNative(e)?e:void 0}function isFunction(t){return isObject(t)&&objToString.call(t)==funcTag}function isObject(t){var o=typeof t;return!!t&&(\"object\"==o||\"function\"==o)}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.*?\")+\"$\");module.exports=getNative;\n},{}],118:[function(_dereq_,module,exports){\nfunction isArguments(t){return isArrayLikeObject(t)&&hasOwnProperty.call(t,\"callee\")&&(!propertyIsEnumerable.call(t,\"callee\")||objectToString.call(t)==argsTag)}function isArrayLike(t){return null!=t&&isLength(t.length)&&!isFunction(t)}function isArrayLikeObject(t){return isObjectLike(t)&&isArrayLike(t)}function isFunction(t){var e=isObject(t)?objectToString.call(t):\"\";return e==funcTag||e==genTag}function isLength(t){return\"number\"==typeof t&&t>-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},{}],119:[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},{}],120:[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\":115,\"lodash._bindcallback\":116}],121:[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},{}],122:[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<t}function isLength(e){return\"number\"==typeof e&&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=[];++o<r;){var u=t[o];(s&&isIndex(u,n)||hasOwnProperty.call(e,u))&&i.push(u)}return i}function isObject(e){var t=typeof e;return!!e&&(\"object\"==t||\"function\"==t)}function keysIn(e){if(null==e)return[];isObject(e)||(e=Object(e));var t=e.length;t=t&&isLength(t)&&(isArray(e)||isArguments(e))&&t||0;for(var r=e.constructor,n=-1,s=\"function\"==typeof r&&r.prototype===e,o=Array(t),i=t>0;++n<t;)o[n]=n+\"\";for(var u in e)i&&isIndex(u,t)||\"constructor\"==u&&(s||!hasOwnProperty.call(e,u))||o.push(u);return o}var getNative=_dereq_(\"lodash._getnative\"),isArguments=_dereq_(\"lodash.isarguments\"),isArray=_dereq_(\"lodash.isarray\"),reIsUint=/^\\d+$/,objectProto=Object.prototype,hasOwnProperty=objectProto.hasOwnProperty,nativeKeys=getNative(Object,\"keys\"),MAX_SAFE_INTEGER=9007199254740991,getLength=baseProperty(\"length\"),keys=nativeKeys?function(e){var t=null==e?void 0:e.constructor;return\"function\"==typeof t&&t.prototype===e||\"function\"!=typeof e&&isArrayLike(e)?shimKeys(e):isObject(e)?nativeKeys(e):[]}:shimKeys;module.exports=keys;\n},{\"lodash._getnative\":117,\"lodash.isarguments\":118,\"lodash.isarray\":119}],123:[function(_dereq_,module,exports){\n\"use strict\";module.exports=_dereq_(\"./v8.json\");\n},{\"./v8.json\":124}],124:[function(_dereq_,module,exports){\nmodule.exports={\"$version\":8,\"$root\":{\"version\":{\"required\":true,\"type\":\"enum\",\"values\":[8]},\"name\":{\"type\":\"string\"},\"metadata\":{\"type\":\"*\"},\"center\":{\"type\":\"array\",\"value\":\"number\"},\"zoom\":{\"type\":\"number\"},\"bearing\":{\"type\":\"number\",\"default\":0,\"period\":360,\"units\":\"degrees\"},\"pitch\":{\"type\":\"number\",\"default\":0,\"units\":\"degrees\"},\"light\":{\"type\":\"light\"},\"sources\":{\"required\":true,\"type\":\"sources\"},\"sprite\":{\"type\":\"string\"},\"glyphs\":{\"type\":\"string\"},\"transition\":{\"type\":\"transition\"},\"layers\":{\"required\":true,\"type\":\"array\",\"value\":\"layer\"}},\"sources\":{\"*\":{\"type\":\"source\"}},\"source\":[\"source_tile\",\"source_geojson\",\"source_video\",\"source_image\",\"source_canvas\"],\"source_tile\":{\"type\":{\"required\":true,\"type\":\"enum\",\"values\":{\"vector\":{},\"raster\":{}}},\"url\":{\"type\":\"string\"},\"tiles\":{\"type\":\"array\",\"value\":\"string\"},\"bounds\":{\"type\":\"array\",\"value\":\"number\",\"length\":4,\"default\":[-180,-85.0511,180,85.0511]},\"minzoom\":{\"type\":\"number\",\"default\":0},\"maxzoom\":{\"type\":\"number\",\"default\":22},\"tileSize\":{\"type\":\"number\",\"default\":512,\"units\":\"pixels\"},\"*\":{\"type\":\"*\"}},\"source_geojson\":{\"type\":{\"required\":true,\"type\":\"enum\",\"values\":{\"geojson\":{}}},\"data\":{\"type\":\"*\"},\"maxzoom\":{\"type\":\"number\",\"default\":18},\"buffer\":{\"type\":\"number\",\"default\":128,\"maximum\":512,\"minimum\":0},\"tolerance\":{\"type\":\"number\",\"default\":0.375},\"cluster\":{\"type\":\"boolean\",\"default\":false},\"clusterRadius\":{\"type\":\"number\",\"default\":50,\"minimum\":0},\"clusterMaxZoom\":{\"type\":\"number\"}},\"source_video\":{\"type\":{\"required\":true,\"type\":\"enum\",\"values\":{\"video\":{}}},\"urls\":{\"required\":true,\"type\":\"array\",\"value\":\"string\"},\"coordinates\":{\"required\":true,\"type\":\"array\",\"length\":4,\"value\":{\"type\":\"array\",\"length\":2,\"value\":\"number\"}}},\"source_image\":{\"type\":{\"required\":true,\"type\":\"enum\",\"values\":{\"image\":{}}},\"url\":{\"required\":true,\"type\":\"string\"},\"coordinates\":{\"required\":true,\"type\":\"array\",\"length\":4,\"value\":{\"type\":\"array\",\"length\":2,\"value\":\"number\"}}},\"source_canvas\":{\"type\":{\"required\":true,\"type\":\"enum\",\"values\":{\"canvas\":{}}},\"coordinates\":{\"required\":true,\"type\":\"array\",\"length\":4,\"value\":{\"type\":\"array\",\"length\":2,\"value\":\"number\"}},\"animate\":{\"type\":\"boolean\",\"default\":\"true\"},\"canvas\":{\"type\":\"string\",\"required\":true},\"contextType\":{\"required\":true,\"type\":\"enum\",\"values\":{\"2d\":{},\"webgl\":{},\"experimental-webgl\":{},\"webgl2\":{}}}},\"layer\":{\"id\":{\"type\":\"string\",\"required\":true},\"type\":{\"type\":\"enum\",\"values\":{\"fill\":{},\"line\":{},\"symbol\":{},\"circle\":{},\"fill-extrusion\":{},\"raster\":{},\"background\":{}}},\"metadata\":{\"type\":\"*\"},\"ref\":{\"type\":\"string\"},\"source\":{\"type\":\"string\"},\"source-layer\":{\"type\":\"string\"},\"minzoom\":{\"type\":\"number\",\"minimum\":0,\"maximum\":24},\"maxzoom\":{\"type\":\"number\",\"minimum\":0,\"maximum\":24},\"filter\":{\"type\":\"filter\"},\"layout\":{\"type\":\"layout\"},\"paint\":{\"type\":\"paint\"},\"paint.*\":{\"type\":\"paint\"}},\"layout\":[\"layout_fill\",\"layout_line\",\"layout_circle\",\"layout_fill-extrusion\",\"layout_symbol\",\"layout_raster\",\"layout_background\"],\"layout_background\":{\"visibility\":{\"type\":\"enum\",\"values\":{\"visible\":{},\"none\":{}},\"default\":\"visible\"}},\"layout_fill\":{\"visibility\":{\"type\":\"enum\",\"values\":{\"visible\":{},\"none\":{}},\"default\":\"visible\"}},\"layout_circle\":{\"visibility\":{\"type\":\"enum\",\"values\":{\"visible\":{},\"none\":{}},\"default\":\"visible\"}},\"layout_fill-extrusion\":{\"visibility\":{\"type\":\"enum\",\"values\":{\"visible\":{},\"none\":{}},\"default\":\"visible\"}},\"layout_line\":{\"line-cap\":{\"type\":\"enum\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"values\":{\"butt\":{},\"round\":{},\"square\":{}},\"default\":\"butt\"},\"line-join\":{\"type\":\"enum\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"property-function\":true,\"values\":{\"bevel\":{},\"round\":{},\"miter\":{}},\"default\":\"miter\"},\"line-miter-limit\":{\"type\":\"number\",\"default\":2,\"function\":\"interpolated\",\"zoom-function\":true,\"requires\":[{\"line-join\":\"miter\"}]},\"line-round-limit\":{\"type\":\"number\",\"default\":1.05,\"function\":\"interpolated\",\"zoom-function\":true,\"requires\":[{\"line-join\":\"round\"}]},\"visibility\":{\"type\":\"enum\",\"values\":{\"visible\":{},\"none\":{}},\"default\":\"visible\"}},\"layout_symbol\":{\"symbol-placement\":{\"type\":\"enum\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"values\":{\"point\":{},\"line\":{}},\"default\":\"point\"},\"symbol-spacing\":{\"type\":\"number\",\"default\":250,\"minimum\":1,\"function\":\"interpolated\",\"zoom-function\":true,\"units\":\"pixels\",\"requires\":[{\"symbol-placement\":\"line\"}]},\"symbol-avoid-edges\":{\"type\":\"boolean\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"default\":false},\"icon-allow-overlap\":{\"type\":\"boolean\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"default\":false,\"requires\":[\"icon-image\"]},\"icon-ignore-placement\":{\"type\":\"boolean\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"default\":false,\"requires\":[\"icon-image\"]},\"icon-optional\":{\"type\":\"boolean\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"default\":false,\"requires\":[\"icon-image\",\"text-field\"]},\"icon-rotation-alignment\":{\"type\":\"enum\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"values\":{\"map\":{},\"viewport\":{},\"auto\":{}},\"default\":\"auto\",\"requires\":[\"icon-image\"]},\"icon-size\":{\"type\":\"number\",\"default\":1,\"minimum\":0,\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":true,\"units\":\"factor of the original icon size\",\"requires\":[\"icon-image\"]},\"icon-text-fit\":{\"type\":\"enum\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"values\":{\"none\":{},\"width\":{},\"height\":{},\"both\":{}},\"default\":\"none\",\"requires\":[\"icon-image\",\"text-field\"]},\"icon-text-fit-padding\":{\"type\":\"array\",\"value\":\"number\",\"length\":4,\"default\":[0,0,0,0],\"units\":\"pixels\",\"function\":\"interpolated\",\"zoom-function\":true,\"requires\":[\"icon-image\",\"text-field\",{\"icon-text-fit\":[\"both\",\"width\",\"height\"]}]},\"icon-image\":{\"type\":\"string\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"property-function\":true,\"tokens\":true},\"icon-rotate\":{\"type\":\"number\",\"default\":0,\"period\":360,\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":true,\"units\":\"degrees\",\"requires\":[\"icon-image\"]},\"icon-padding\":{\"type\":\"number\",\"default\":2,\"minimum\":0,\"function\":\"interpolated\",\"zoom-function\":true,\"units\":\"pixels\",\"requires\":[\"icon-image\"]},\"icon-keep-upright\":{\"type\":\"boolean\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"default\":false,\"requires\":[\"icon-image\",{\"icon-rotation-alignment\":\"map\"},{\"symbol-placement\":\"line\"}]},\"icon-offset\":{\"type\":\"array\",\"value\":\"number\",\"length\":2,\"default\":[0,0],\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":true,\"requires\":[\"icon-image\"]},\"icon-anchor\":{\"type\":\"enum\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"property-function\":true,\"values\":{\"center\":{},\"left\":{},\"right\":{},\"top\":{},\"bottom\":{},\"top-left\":{},\"top-right\":{},\"bottom-left\":{},\"bottom-right\":{}},\"default\":\"center\",\"requires\":[\"icon-image\"]},\"icon-pitch-alignment\":{\"type\":\"enum\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"values\":{\"map\":{},\"viewport\":{},\"auto\":{}},\"default\":\"auto\",\"requires\":[\"icon-image\"]},\"text-pitch-alignment\":{\"type\":\"enum\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"values\":{\"map\":{},\"viewport\":{},\"auto\":{}},\"default\":\"auto\",\"requires\":[\"text-field\"]},\"text-rotation-alignment\":{\"type\":\"enum\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"values\":{\"map\":{},\"viewport\":{},\"auto\":{}},\"default\":\"auto\",\"requires\":[\"text-field\"]},\"text-field\":{\"type\":\"string\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"property-function\":true,\"default\":\"\",\"tokens\":true},\"text-font\":{\"type\":\"array\",\"value\":\"string\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"default\":[\"Open Sans Regular\",\"Arial Unicode MS Regular\"],\"requires\":[\"text-field\"]},\"text-size\":{\"type\":\"number\",\"default\":16,\"minimum\":0,\"units\":\"pixels\",\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":true,\"requires\":[\"text-field\"]},\"text-max-width\":{\"type\":\"number\",\"default\":10,\"minimum\":0,\"units\":\"ems\",\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":true,\"requires\":[\"text-field\"]},\"text-line-height\":{\"type\":\"number\",\"default\":1.2,\"units\":\"ems\",\"function\":\"interpolated\",\"zoom-function\":true,\"requires\":[\"text-field\"]},\"text-letter-spacing\":{\"type\":\"number\",\"default\":0,\"units\":\"ems\",\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":true,\"requires\":[\"text-field\"]},\"text-justify\":{\"type\":\"enum\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"property-function\":true,\"values\":{\"left\":{},\"center\":{},\"right\":{}},\"default\":\"center\",\"requires\":[\"text-field\"]},\"text-anchor\":{\"type\":\"enum\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"property-function\":true,\"values\":{\"center\":{},\"left\":{},\"right\":{},\"top\":{},\"bottom\":{},\"top-left\":{},\"top-right\":{},\"bottom-left\":{},\"bottom-right\":{}},\"default\":\"center\",\"requires\":[\"text-field\"]},\"text-max-angle\":{\"type\":\"number\",\"default\":45,\"units\":\"degrees\",\"function\":\"interpolated\",\"zoom-function\":true,\"requires\":[\"text-field\",{\"symbol-placement\":\"line\"}]},\"text-rotate\":{\"type\":\"number\",\"default\":0,\"period\":360,\"units\":\"degrees\",\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":true,\"requires\":[\"text-field\"]},\"text-padding\":{\"type\":\"number\",\"default\":2,\"minimum\":0,\"units\":\"pixels\",\"function\":\"interpolated\",\"zoom-function\":true,\"requires\":[\"text-field\"]},\"text-keep-upright\":{\"type\":\"boolean\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"default\":true,\"requires\":[\"text-field\",{\"text-rotation-alignment\":\"map\"},{\"symbol-placement\":\"line\"}]},\"text-transform\":{\"type\":\"enum\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"property-function\":true,\"values\":{\"none\":{},\"uppercase\":{},\"lowercase\":{}},\"default\":\"none\",\"requires\":[\"text-field\"]},\"text-offset\":{\"type\":\"array\",\"value\":\"number\",\"units\":\"ems\",\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":true,\"length\":2,\"default\":[0,0],\"requires\":[\"text-field\"]},\"text-allow-overlap\":{\"type\":\"boolean\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"default\":false,\"requires\":[\"text-field\"]},\"text-ignore-placement\":{\"type\":\"boolean\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"default\":false,\"requires\":[\"text-field\"]},\"text-optional\":{\"type\":\"boolean\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"default\":false,\"requires\":[\"text-field\",\"icon-image\"]},\"visibility\":{\"type\":\"enum\",\"values\":{\"visible\":{},\"none\":{}},\"default\":\"visible\"}},\"layout_raster\":{\"visibility\":{\"type\":\"enum\",\"values\":{\"visible\":{},\"none\":{}},\"default\":\"visible\"}},\"filter\":{\"type\":\"array\",\"value\":\"*\"},\"filter_operator\":{\"type\":\"enum\",\"values\":{\"==\":{},\"!=\":{},\">\":{},\">=\":{},\"<\":{},\"<=\":{},\"in\":{},\"!in\":{},\"all\":{},\"any\":{},\"none\":{},\"has\":{},\"!has\":{}}},\"geometry_type\":{\"type\":\"enum\",\"values\":{\"Point\":{},\"LineString\":{},\"Polygon\":{}}},\"function\":{\"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,\"zoom-function\":true,\"property-function\":false,\"function\":\"piecewise-constant\"},\"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,\"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,\"property-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-pitch-alignment\":{\"type\":\"enum\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"values\":{\"map\":{},\"viewport\":{}},\"default\":\"viewport\"},\"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},{}],125:[function(_dereq_,module,exports){\n\"use strict\";module.exports=function(r){for(var t=[],e=arguments.length-1;e-- >0;)t[e]=arguments[e+1];for(var n=0,o=t;n<o.length;n+=1){var a=o[n];for(var f in a)r[f]=a[f]}return r};\n},{}],126:[function(_dereq_,module,exports){\n\"use strict\";module.exports=function(n){return n instanceof Number?\"number\":n instanceof String?\"string\":n instanceof Boolean?\"boolean\":Array.isArray(n)?\"array\":null===n?\"null\":typeof n};\n},{}],127:[function(_dereq_,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},{}],128:[function(_dereq_,module,exports){\n\"use strict\";var parseColorString=_dereq_(\"csscolorparser\").parseCSSColor;module.exports=function(r){if(\"string\"==typeof r){var e=parseColorString(r);if(!e)return;return[e[0]/255*e[3],e[1]/255*e[3],e[2]/255*e[3],e[3]]}return Array.isArray(r)?r:void 0};\n},{\"csscolorparser\":114}],129:[function(_dereq_,module,exports){\n\"use strict\";module.exports=[\"type\",\"source\",\"source-layer\",\"minzoom\",\"maxzoom\",\"filter\",\"layout\"];\n},{}],130:[function(_dereq_,module,exports){\n\"use strict\";module.exports=function(n){return n instanceof Number||n instanceof String||n instanceof Boolean?n.valueOf():n};\n},{}],131:[function(_dereq_,module,exports){\n\"use strict\";var ValidationError=_dereq_(\"../error/validation_error\"),getType=_dereq_(\"../util/get_type\"),extend=_dereq_(\"../util/extend\");module.exports=function(e){var r=_dereq_(\"./validate_function\"),t=_dereq_(\"./validate_object\"),i={\"*\":function(){return[]},array:_dereq_(\"./validate_array\"),boolean:_dereq_(\"./validate_boolean\"),number:_dereq_(\"./validate_number\"),color:_dereq_(\"./validate_color\"),constants:_dereq_(\"./validate_constants\"),enum:_dereq_(\"./validate_enum\"),filter:_dereq_(\"./validate_filter\"),function:_dereq_(\"./validate_function\"),layer:_dereq_(\"./validate_layer\"),object:_dereq_(\"./validate_object\"),source:_dereq_(\"./validate_source\"),light:_dereq_(\"./validate_light\"),string:_dereq_(\"./validate_string\")},a=e.value,n=e.valueSpec,u=e.key,o=e.styleSpec,l=e.style;if(\"string\"===getType(a)&&\"@\"===a[0]){if(o.$version>7)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\":109,\"../util/extend\":125,\"../util/get_type\":126,\"./validate_array\":132,\"./validate_boolean\":133,\"./validate_color\":134,\"./validate_constants\":135,\"./validate_enum\":136,\"./validate_filter\":137,\"./validate_function\":138,\"./validate_layer\":140,\"./validate_light\":142,\"./validate_number\":143,\"./validate_object\":144,\"./validate_source\":147,\"./validate_string\":148}],132:[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.length<t[\"min-length\"])return[new ValidationError(l,r,\"array length at least %d expected, length %d found\",t[\"min-length\"],r.length)];var o={type:t.value};n.$version<7&&(o.function=t.function),\"object\"===getType(t.value)&&(o=t.value);for(var u=[],d=0;d<r.length;d++)u=u.concat(i({array:r,arrayIndex:d,value:r[d],valueSpec:o,style:a,styleSpec:n,key:l+\"[\"+d+\"]\"}));return u};\n},{\"../error/validation_error\":109,\"../util/get_type\":126,\"./validate\":131}],133:[function(_dereq_,module,exports){\n\"use strict\";var getType=_dereq_(\"../util/get_type\"),ValidationError=_dereq_(\"../error/validation_error\");module.exports=function(e){var r=e.value,o=e.key,t=getType(r);return\"boolean\"!==t?[new ValidationError(o,r,\"boolean expected, %s found\",t)]:[]};\n},{\"../error/validation_error\":109,\"../util/get_type\":126}],134:[function(_dereq_,module,exports){\n\"use strict\";var ValidationError=_dereq_(\"../error/validation_error\"),getType=_dereq_(\"../util/get_type\"),parseCSSColor=_dereq_(\"csscolorparser\").parseCSSColor;module.exports=function(r){var e=r.key,o=r.value,t=getType(o);return\"string\"!==t?[new ValidationError(e,o,\"color expected, %s found\",t)]:null===parseCSSColor(o)?[new ValidationError(e,o,'color expected, \"%s\" found',o)]:[]};\n},{\"../error/validation_error\":109,\"../util/get_type\":126,\"csscolorparser\":114}],135:[function(_dereq_,module,exports){\n\"use strict\";var ValidationError=_dereq_(\"../error/validation_error\"),getType=_dereq_(\"../util/get_type\");module.exports=function(r){var e=r.key,t=r.value;if(r.styleSpec.$version>7)return t?[new ValidationError(e,t,\"constants have been deprecated as of v8\")]:[];var a=getType(t);if(\"object\"!==a)return[new ValidationError(e,t,\"object expected, %s found\",a)];var o=[];for(var n in t)\"@\"!==n[0]&&o.push(new ValidationError(e+\".\"+n,t[n],'constants must start with \"@\"'));return o};\n},{\"../error/validation_error\":109,\"../util/get_type\":126}],136:[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)?-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};\n},{\"../error/validation_error\":109,\"../util/unbundle_jsonlint\":130}],137:[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&&\"string\"!==(t=getType(a[1]))&&s.push(new ValidationError(n+\"[1]\",a[1],\"string expected, %s found\",t));for(var o=2;o<a.length;o++)t=getType(a[o]),\"$type\"===unbundle(a[1])?s=s.concat(validateEnum({key:n+\"[\"+o+\"]\",value:a[o],valueSpec:l.geometry_type,style:r.style,styleSpec:r.styleSpec})):\"string\"!==t&&\"number\"!==t&&\"boolean\"!==t&&s.push(new ValidationError(n+\"[\"+o+\"]\",a[o],\"string, number, or boolean expected, %s found\",t));break;case\"any\":case\"all\":case\"none\":for(var i=1;i<a.length;i++)s=s.concat(e({key:n+\"[\"+i+\"]\",value:a[i],style:r.style,styleSpec:r.styleSpec}));break;case\"has\":case\"!has\":t=getType(a[1]),2!==a.length?s.push(new ValidationError(n,a,'filter array for \"%s\" operator must have 2 elements',a[0])):\"string\"!==t&&s.push(new ValidationError(n+\"[1]\",a[1],\"string expected, %s found\",t))}return s};\n},{\"../error/validation_error\":109,\"../util/get_type\":126,\"../util/unbundle_jsonlint\":130,\"./validate_enum\":136}],138:[function(_dereq_,module,exports){\n\"use strict\";var ValidationError=_dereq_(\"../error/validation_error\"),getType=_dereq_(\"../util/get_type\"),validate=_dereq_(\"./validate\"),validateObject=_dereq_(\"./validate_object\"),validateArray=_dereq_(\"./validate_array\"),validateNumber=_dereq_(\"./validate_number\"),unbundle=_dereq_(\"../util/unbundle_jsonlint\");module.exports=function(e){function t(e){if(\"identity\"===p)return[new ValidationError(e.key,e.value,'identity function may not have a \"stops\" property')];var t=[],a=e.value;return t=t.concat(validateArray({key:e.key,value:a,valueSpec:e.valueSpec,style:e.style,styleSpec:e.styleSpec,arrayElementValidator:r})),\"array\"===getType(a)&&0===a.length&&t.push(new ValidationError(e.key,a,\"array must have at least one stop\")),t}function r(e){var t=[],r=e.value,o=e.key;if(\"array\"!==getType(r))return[new ValidationError(o,r,\"array expected, %s found\",getType(r))];if(2!==r.length)return[new ValidationError(o,r,\"array length %d expected, length %d found\",2,r.length)];if(c){if(\"object\"!==getType(r[0]))return[new ValidationError(o,r,\"object expected, %s found\",getType(r[0]))];if(void 0===r[0].zoom)return[new ValidationError(o,r,\"object stop key must have zoom\")];if(void 0===r[0].value)return[new ValidationError(o,r,\"object stop key must have value\")];if(l&&l>unbundle(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?\"categorical\"!==p&&\"number\"===t&&void 0!==i&&r<i?[new ValidationError(e.key,e.value,\"stop domain values must appear in ascending order\")]:(i=r,\"categorical\"===p&&r in s?[new ValidationError(e.key,e.value,\"stop domain values must be unique\")]:(s[r]=!0,[])):[new ValidationError(e.key,e.value,\"integer expected, found %s\",r)]}function o(e){return validate({key:e.key,value:e.value,valueSpec:u,style:e.style,styleSpec:e.styleSpec})}var n,i,l,u=e.valueSpec,p=unbundle(e.value.type),s={},y=\"categorical\"!==p&&void 0===e.value.property,d=!y,c=\"array\"===getType(e.value.stops)&&\"array\"===getType(e.value.stops[0])&&\"object\"===getType(e.value.stops[0][0]),v=validateObject({key:e.key,value:e.value,valueSpec:e.styleSpec.function,style:e.style,styleSpec:e.styleSpec,objectElementValidators:{stops:t,default:o}});return\"identity\"===p&&y&&v.push(new ValidationError(e.key,e.value,'missing required property \"property\"')),\"identity\"===p||e.value.stops||v.push(new ValidationError(e.key,e.value,'missing required property \"stops\"')),\"exponential\"===p&&\"piecewise-constant\"===e.valueSpec.function&&v.push(new ValidationError(e.key,e.value,\"exponential functions not supported\")),e.styleSpec.$version>=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\":109,\"../util/get_type\":126,\"../util/unbundle_jsonlint\":130,\"./validate\":131,\"./validate_array\":132,\"./validate_number\":143,\"./validate_object\":144}],139:[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:(-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)};\n},{\"../error/validation_error\":109,\"./validate_string\":148}],140:[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;s<e.arrayIndex;s++){var d=i.layers[s];unbundle(d.id)===o&&r.push(new ValidationError(a,t.id,'duplicate layer id \"%s\", previously used at line %d',t.id,d.id.__line__))}if(\"ref\"in t){[\"type\",\"source\",\"source-layer\",\"filter\",\"layout\"].forEach(function(e){e in t&&r.push(new ValidationError(a,t[e],'\"%s\" is prohibited for ref layers',e))});var y;i.layers.forEach(function(e){unbundle(e.id)===n&&(y=e)}),y?y.ref?r.push(new ValidationError(a,t.ref,\"ref cannot reference another ref layer\")):u=unbundle(y.type):r.push(new ValidationError(a,t.ref,'ref layer \"%s\" not found',n))}else if(\"background\"!==u)if(t.source){var c=i.sources&&i.sources[t.source],p=c&&unbundle(c.type);c?\"vector\"===p&&\"raster\"===u?r.push(new ValidationError(a,t.source,'layer \"%s\" requires a raster source',t.id)):\"raster\"===p&&\"raster\"!==u?r.push(new ValidationError(a,t.source,'layer \"%s\" requires a vector source',t.id)):\"vector\"!==p||t[\"source-layer\"]||r.push(new ValidationError(a,t,'layer \"%s\" must specify a \"source-layer\"',t.id)):r.push(new ValidationError(a,t.source,'source \"%s\" not found',t.source))}else r.push(new ValidationError(a,t,'missing required property \"source\"'));return r=r.concat(validateObject({key:a,value:t,valueSpec:l.layer,style:e.style,styleSpec:e.styleSpec,objectElementValidators:{\"*\":function(){return[]},filter:validateFilter,layout:function(e){return validateObject({layer:t,key:e.key,value:e.value,style:e.style,styleSpec:e.styleSpec,objectElementValidators:{\"*\":function(e){return validateLayoutProperty(extend({layerType:u},e))}}})},paint:function(e){return validateObject({layer:t,key:e.key,value:e.value,style:e.style,styleSpec:e.styleSpec,objectElementValidators:{\"*\":function(e){return validatePaintProperty(extend({layerType:u},e))}}})}}}))};\n},{\"../error/validation_error\":109,\"../util/extend\":125,\"../util/unbundle_jsonlint\":130,\"./validate_filter\":137,\"./validate_layout_property\":141,\"./validate_object\":144,\"./validate_paint_property\":145}],141:[function(_dereq_,module,exports){\n\"use strict\";var validateProperty=_dereq_(\"./validate_property\");module.exports=function(r){return validateProperty(r,\"layout\")};\n},{\"./validate_property\":146}],142:[function(_dereq_,module,exports){\n\"use strict\";var ValidationError=_dereq_(\"../error/validation_error\"),getType=_dereq_(\"../util/get_type\"),validate=_dereq_(\"./validate\");module.exports=function(e){var t=e.value,r=e.styleSpec,a=r.light,i=e.style,n=[],o=getType(t);if(void 0===t)return n;if(\"object\"!==o)return n=n.concat([new ValidationError(\"light\",t,\"object expected, %s found\",o)]);for(var l in t){var c=l.match(/^(.*)-transition$/);n=c&&a[c[1]]&&a[c[1]].transition?n.concat(validate({key:l,value:t[l],valueSpec:r.transition,style:i,styleSpec:r})):a[l]?n.concat(validate({key:l,value:t[l],valueSpec:a[l],style:i,styleSpec:r})):n.concat([new ValidationError(l,t[l],'unknown property \"%s\"',l)])}return n};\n},{\"../error/validation_error\":109,\"../util/get_type\":126,\"./validate\":131}],143:[function(_dereq_,module,exports){\n\"use strict\";var getType=_dereq_(\"../util/get_type\"),ValidationError=_dereq_(\"../error/validation_error\");module.exports=function(e){var r=e.key,i=e.value,m=e.valueSpec,a=getType(i);return\"number\"!==a?[new ValidationError(r,i,\"number expected, %s found\",a)]:\"minimum\"in m&&i<m.minimum?[new ValidationError(r,i,\"%s is less than the minimum value %s\",i,m.minimum)]:\"maximum\"in m&&i>m.maximum?[new ValidationError(r,i,\"%s is greater than the maximum value %s\",i,m.maximum)]:[]};\n},{\"../error/validation_error\":109,\"../util/get_type\":126}],144:[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\":109,\"../util/get_type\":126,\"./validate\":131}],145:[function(_dereq_,module,exports){\n\"use strict\";var validateProperty=_dereq_(\"./validate_property\");module.exports=function(r){return validateProperty(r,\"paint\")};\n},{\"./validate_property\":146}],146:[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\":109,\"../util/get_type\":126,\"./validate\":131}],147:[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\":109,\"../util/unbundle_jsonlint\":130,\"./validate_enum\":136,\"./validate_object\":144}],148:[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\":109,\"../util/get_type\":126}],149:[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\":123,\"./validate/validate\":131,\"./validate/validate_constants\":135,\"./validate/validate_filter\":137,\"./validate/validate_glyphs_url\":139,\"./validate/validate_layer\":140,\"./validate/validate_layout_property\":141,\"./validate/validate_light\":142,\"./validate/validate_paint_property\":145,\"./validate/validate_source\":147}],150:[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},{}],151:[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\",properties=[\"anchor\",\"color\",\"position\",\"intensity\"],specifications=styleSpec.light,Light=function(t){function i(i){t.call(this),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:specifications.anchor.default,color:specifications.color.default,position:specifications.position.default,intensity:specifications.intensity.default},t);for(var e=0,o=properties;e<o.length;e+=1){var n=o[e];i._declarations[n]=new StyleDeclaration(specifications[n],t[n])}return this}},i.prototype.getLight=function(){return{anchor:this.getLightProperty(\"anchor\"),color:this.getLightProperty(\"color\"),position:this.getLightProperty(\"position\"),intensity:this.getLightProperty(\"intensity\")}},i.prototype.getLightProperty=function(t){return util.endsWith(t,TRANSITION_SUFFIX)?this._transitionOptions[t]:this._declarations[t]&&this._declarations[t].value},i.prototype.getLightValue=function(t,i){if(\"position\"===t){var e=this._transitions[t].calculate(i),o=util.sphericalToCartesian(e);return{x:o[0],y:o[1],z:o[2]}}return this._transitions[t].calculate(i)},i.prototype.setLight=function(t){var i=this;if(!this._validate(validateStyle.light,t))for(var e in t){var o=t[e];util.endsWith(e,TRANSITION_SUFFIX)?i._transitionOptions[e]=o:null===o||void 0===o?delete i._declarations[e]:i._declarations[e]=new StyleDeclaration(specifications[e],o)}},i.prototype.recalculate=function(t){var i=this;for(var e in i._declarations)i.calculated[e]=i.getLightValue(e,{zoom:t})},i.prototype._applyLightDeclaration=function(t,i,e,o,n){var r=e.transition?this._transitions[t]:void 0,a=specifications[t];if(null!==i&&void 0!==i||(i=new StyleDeclaration(a,a.default)),!r||r.declaration.json!==i.json){var s=util.extend({duration:300,delay:0},o,this.getLightProperty(t+TRANSITION_SUFFIX)),l=this._transitions[t]=new StyleTransition(a,i,r,s);l.instant()||(l.loopID=n.set(l.endTime-Date.now())),r&&n.cancel(r.loopID)}},i.prototype.updateLightTransitions=function(t,i,e){var o,n=this;for(o in n._declarations)n._applyLightDeclaration(o,n._declarations[o],t,i,e)},i.prototype._validate=function(t,i){return validateStyle.emitErrors(this,t.call(validateStyle,util.extend({value:i,style:{glyphs:!0,sprite:!0},styleSpec:styleSpec})))},i}(Evented);module.exports=Light;\n},{\"../style-spec/reference/latest\":123,\"../util/evented\":210,\"../util/util\":223,\"./style_declaration\":157,\"./style_transition\":165,\"./validate_style\":166}],152:[function(_dereq_,module,exports){\n\"use strict\";var ref=_dereq_(\"../util/mapbox\"),normalizeGlyphsURL=ref.normalizeGlyphsURL,ajax=_dereq_(\"../util/ajax\"),parseGlyphPBF=_dereq_(\"./parse_glyph_pbf\");module.exports=function(e,r,a,l,p){var i=256*r,s=i+255,t=l(normalizeGlyphsURL(a).replace(\"{fontstack}\",e).replace(\"{range}\",i+\"-\"+s),ajax.ResourceType.Glyphs);ajax.getArrayBuffer(t,function(e,r){if(e)p(e);else if(r){for(var a={},l=0,i=parseGlyphPBF(r.data);l<i.length;l+=1){var s=i[l];a[s.id]=s}p(null,a)}})};\n},{\"../util/ajax\":201,\"../util/mapbox\":217,\"./parse_glyph_pbf\":154}],153:[function(_dereq_,module,exports){\n\"use strict\";var ajax=_dereq_(\"../util/ajax\"),browser=_dereq_(\"../util/browser\"),ref=_dereq_(\"../util/mapbox\"),normalizeSpriteURL=ref.normalizeSpriteURL,ref$1=_dereq_(\"../util/image\"),RGBAImage=ref$1.RGBAImage;module.exports=function(e,r,i){function a(){if(u)i(u);else if(t&&o){var e=browser.getImageData(o),r={};for(var a in t){var n=t[a],l=n.width,g=n.height,x=n.x,f=n.y,m=n.sdf,p=n.pixelRatio,s=RGBAImage.create({width:l,height:g});RGBAImage.copy(e,s,{x:x,y:f},{x:0,y:0},{width:l,height:g}),r[a]={data:s,pixelRatio:p,sdf:m}}i(null,r)}}if(!e)return void i(null,{});var t,o,u,n=browser.devicePixelRatio>1?\"@2x\":\"\";ajax.getJSON(r(normalizeSpriteURL(e,n,\".json\"),ajax.ResourceType.SpriteJSON),function(e,r){u||(u=e,t=r,a())}),ajax.getImage(r(normalizeSpriteURL(e,n,\".png\"),ajax.ResourceType.SpriteImage),function(e,r){u||(u=e,o=r,a())})};\n},{\"../util/ajax\":201,\"../util/browser\":202,\"../util/image\":213,\"../util/mapbox\":217}],154:[function(_dereq_,module,exports){\n\"use strict\";function readFontstacks(e,a,r){1===e&&r.readMessage(readFontstack,a)}function readFontstack(e,a,r){if(3===e){var t=r.readMessage(readGlyph,{}),d=t.id,i=t.bitmap,n=t.width,o=t.height,h=t.left,s=t.top,p=t.advance;a.push({id:d,bitmap:AlphaImage.create({width:n+2*border,height:o+2*border},i),metrics:{width:n,height:o,left:h,top:s,advance:p}})}}function readGlyph(e,a,r){1===e?a.id=r.readVarint():2===e?a.bitmap=r.readBytes():3===e?a.width=r.readVarint():4===e?a.height=r.readVarint():5===e?a.left=r.readSVarint():6===e?a.top=r.readSVarint():7===e&&(a.advance=r.readVarint())}var ref=_dereq_(\"../util/image\"),AlphaImage=ref.AlphaImage,Protobuf=_dereq_(\"pbf\"),border=3;module.exports=function(e){return new Protobuf(e).readFields(readFontstacks,[])},module.exports.GLYPH_PBF_BORDER=border;\n},{\"../util/image\":213,\"pbf\":29}],155:[function(_dereq_,module,exports){\n\"use strict\";function getMaximumPaintValue(t,a,e){return a.isPaintValueFeatureConstant(t)?a.paint[t]:e.programConfigurations.get(a.id).paintPropertyStatistics[t].max}function translateDistance(t){return Math.sqrt(t[0]*t[0]+t[1]*t[1])}function translate(t,a,e,n,r){if(!a[0]&&!a[1])return t;var i=Point.convert(a);\"viewport\"===e&&i._rotate(-n);for(var u=[],s=0;s<t.length;s++){for(var o=t[s],l=[],m=0;m<o.length;m++)l.push(o[m].sub(i._mult(r)));u.push(l)}return u}var Point=_dereq_(\"@mapbox/point-geometry\");module.exports={getMaximumPaintValue:getMaximumPaintValue,translateDistance:translateDistance,translate:translate};\n},{\"@mapbox/point-geometry\":2}],156:[function(_dereq_,module,exports){\n\"use strict\";var Evented=_dereq_(\"../util/evented\"),StyleLayer=_dereq_(\"./style_layer\"),loadSprite=_dereq_(\"./load_sprite\"),ImageManager=_dereq_(\"../render/image_manager\"),GlyphManager=_dereq_(\"../render/glyph_manager\"),Light=_dereq_(\"./light\"),LineAtlas=_dereq_(\"../render/line_atlas\"),util=_dereq_(\"../util/util\"),ajax=_dereq_(\"../util/ajax\"),mapbox=_dereq_(\"../util/mapbox\"),browser=_dereq_(\"../util/browser\"),Dispatcher=_dereq_(\"../util/dispatcher\"),AnimationLoop=_dereq_(\"./animation_loop\"),validateStyle=_dereq_(\"./validate_style\"),getSourceType=_dereq_(\"../source/source\").getType,setSourceType=_dereq_(\"../source/source\").setType,QueryFeatures=_dereq_(\"../source/query_features\"),SourceCache=_dereq_(\"../source/source_cache\"),styleSpec=_dereq_(\"../style-spec/reference/latest\"),MapboxGLFunction=_dereq_(\"../style-spec/function\"),getWorkerPool=_dereq_(\"../util/global_worker_pool\"),deref=_dereq_(\"../style-spec/deref\"),diff=_dereq_(\"../style-spec/diff\"),rtlTextPlugin=_dereq_(\"../source/rtl_text_plugin\"),supportedDiffOperations=util.pick(diff.operations,[\"addLayer\",\"removeLayer\",\"setPaintProperty\",\"setLayoutProperty\",\"setFilter\",\"addSource\",\"removeSource\",\"setLayerZoomRange\",\"setLight\",\"setTransition\"]),ignoredDiffOperations=util.pick(diff.operations,[\"setCenter\",\"setZoom\",\"setBearing\",\"setPitch\"]),Style=function(e){function t(t,r,a){var i=this;e.call(this),a=util.extend({validate:\"string\"!=typeof t||!mapbox.isMapboxURL(t)},a);var o=function(e,t){return i.map?i.map._transformRequest(e,t):{url:e}};this.map=r,this.animationLoop=r&&r.animationLoop||new AnimationLoop,this.dispatcher=new Dispatcher(getWorkerPool(),this),this.imageManager=new ImageManager,this.glyphManager=new GlyphManager(o,a.localIdeographFontFamily),this.lineAtlas=new LineAtlas(256,512),this._layers={},this._order=[],this.sourceCaches={},this.zoomHistory={},this._loaded=!1,util.bindAll([\"_redoPlacement\"],this),this._resetUpdates(),this.setEventedParent(r),this.fire(\"dataloading\",{dataType:\"style\"});var s=this;this._rtlTextPluginCallback=rtlTextPlugin.registerForPluginAvailability(function(e){s.dispatcher.broadcast(\"loadRTLTextPlugin\",e.pluginBlobURL,e.errorCallback);for(var t in s.sourceCaches)s.sourceCaches[t].reload()});var n=function(e,t){if(e)i.fire(\"error\",{error:e});else if(t){if(a.validate&&validateStyle.emitErrors(i,validateStyle(t)))return;i._loaded=!0,i.stylesheet=t,i.updateClasses();for(var r in t.sources)i.addSource(r,t.sources[r],a);loadSprite(t.sprite,o,function(e,t){if(e)i.fire(\"error\",e);else if(t)for(var r in t)i.imageManager.addImage(r,t[r]);i.imageManager.setLoaded(!0)}),i.glyphManager.setURL(t.glyphs),i._resolve(),i.fire(\"data\",{dataType:\"style\"}),i.fire(\"style.load\")}};\"string\"==typeof t?ajax.getJSON(o(mapbox.normalizeStyleURL(t),ajax.ResourceType.Style),n):browser.frame(function(){return n(null,t)}),this.on(\"data\",function(e){if(\"source\"===e.dataType&&\"metadata\"===e.sourceDataType){var t=i.sourceCaches[e.sourceId];if(t){var r=t.getSource();if(r&&r.vectorLayerIds)for(var a in i._layers){var o=i._layers[a];o.source===r.id&&i._validateLayer(o)}}}})}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype._validateLayer=function(e){var t=this.sourceCaches[e.source];if(t){var r=e.sourceLayer;if(r){var a=t.getSource();(\"geojson\"===a.type||a.vectorLayerIds&&-1===a.vectorLayerIds.indexOf(r))&&this.fire(\"error\",{error:new Error('Source layer \"'+r+'\" does not exist on source \"'+a.id+'\" as specified by style layer \"'+e.id+'\"')})}}},t.prototype.loaded=function(){var e=this;if(!this._loaded)return!1;if(Object.keys(this._updatedSources).length)return!1;for(var t in e.sourceCaches)if(!e.sourceCaches[t].loaded())return!1;return!!this.imageManager.isLoaded()},t.prototype._resolve=function(){var e=this,t=deref(this.stylesheet.layers);this._order=t.map(function(e){return e.id}),this._layers={};for(var r=0,a=t;r<a.length;r+=1){var i=a[r];i=StyleLayer.create(i),i.setEventedParent(e,{layer:{id:i.id}}),e._layers[i.id]=i}this.dispatcher.broadcast(\"setLayers\",this._serializeLayers(this._order)),this.light=new Light(this.stylesheet.light)},t.prototype._serializeLayers=function(e){var t=this;return e.map(function(e){return t._layers[e].serialize()})},t.prototype._applyClasses=function(e,t){var r=this;if(this._loaded){e=e||[],t=t||{transition:!0};var a=this.stylesheet.transition||{},i=this._updatedAllPaintProps?this._layers:this._updatedPaintProps;for(var o in i){var s=r._layers[o],n=r._updatedPaintProps[o];if(r._updatedAllPaintProps||n.all)s.updatePaintTransitions(e,t,a,r.animationLoop,r.zoomHistory);else for(var l in n)r._layers[o].updatePaintTransition(l,e,t,a,r.animationLoop,r.zoomHistory)}this.light.updateLightTransitions(t,a,this.animationLoop)}},t.prototype._recalculate=function(e){var t=this;if(this._loaded){for(var r in t.sourceCaches)t.sourceCaches[r].used=!1;this._updateZoomHistory(e);for(var a=0,i=t._order;a<i.length;a+=1){var o=i[a],s=t._layers[o];s.recalculate(e),!s.isHidden(e)&&s.source&&(t.sourceCaches[s.source].used=!0)}this.light.recalculate(e);Math.floor(this.z)!==Math.floor(e)&&this.animationLoop.set(300),this.z=e}},t.prototype._updateZoomHistory=function(e){var t=this.zoomHistory;void 0===t.lastIntegerZoom&&(t.lastIntegerZoom=Math.floor(e),t.lastIntegerZoomTime=0,t.lastZoom=e),Math.floor(t.lastZoom)<Math.floor(e)?(t.lastIntegerZoom=Math.floor(e),t.lastIntegerZoomTime=Date.now()):Math.floor(t.lastZoom)>Math.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 a=Object.keys(this._updatedLayers),i=Object.keys(this._removedLayers);(a.length||i.length||this._updatedSymbolOrder)&&this._updateWorkerLayers(a,i);for(var o in r._updatedSources){var s=r._updatedSources[o];\"reload\"===s?r._reloadSource(o):\"clear\"===s&&r._clearSource(o)}this._applyClasses(e,t),this._resetUpdates(),this.fire(\"data\",{dataType:\"style\"})}},t.prototype._updateWorkerLayers=function(e,t){var r=this,a=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:a})},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.clone(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 a=r.filter(function(e){return!(e.command in supportedDiffOperations)});if(a.length>0)throw new Error(\"Unimplemented: \"+a.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.addImage=function(e,t){if(this.imageManager.getImage(e))return this.fire(\"error\",{error:new Error(\"An image with this name already exists.\")});this.imageManager.addImage(e,t),this.fire(\"data\",{dataType:\"style\"})},t.prototype.removeImage=function(e){if(!this.imageManager.getImage(e))return this.fire(\"error\",{error:new Error(\"No image with this name exists.\")});this.imageManager.removeImage(e),this.fire(\"data\",{dataType:\"style\"})},t.prototype.addSource=function(e,t,r){var a=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).join(\", \")+\".\");if(!([\"vector\",\"raster\",\"geojson\",\"video\",\"image\",\"canvas\"].indexOf(t.type)>=0&&this._validate(validateStyle.source,\"sources.\"+e,t,null,r))){var i=this.sourceCaches[e]=new SourceCache(e,t,this.dispatcher);i.style=this,i.setEventedParent(this,function(){return{isSourceLoaded:a.loaded(),source:i.serialize(),sourceId:e}}),i.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.fire(\"data\",{sourceDataType:\"metadata\",dataType:\"source\",sourceId: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 a=e.id;if(\"object\"==typeof e.source&&(this.addSource(a,e.source),e=util.clone(e),e=util.extend(e,{source:a})),!this._validate(validateStyle.layer,\"layers.\"+a,e,{arrayIndex:-1},r)){var i=StyleLayer.create(e);this._validateLayer(i),i.setEventedParent(this,{layer:{id:a}});var o=t?this._order.indexOf(t):this._order.length;if(this._order.splice(o,0,a),this._layers[a]=i,this._removedLayers[a]&&i.source){var s=this._removedLayers[a];delete this._removedLayers[a],s.type!==i.type?this._updatedSources[i.source]=\"clear\":(this._updatedSources[i.source]=\"reload\",this.sourceCaches[i.source].pause())}this._updateLayer(i),\"symbol\"===i.type&&(this._updatedSymbolOrder=!0),this.updateClasses(a)}},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 a=this._order.indexOf(e);this._order.splice(a,1);var i=t?this._order.indexOf(t):this._order.length;this._order.splice(i,0,e),\"symbol\"===r.type&&(this._updatedSymbolOrder=!0,r.source&&!this._updatedSources[r.source]&&(this._updatedSources[r.source]=\"reload\",this.sourceCaches[r.source].pause()))},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 a=this.getLayer(e);if(!a)return void this.fire(\"error\",{error:new Error(\"The layer '\"+e+\"' does not exist in the map's style and cannot have zoom extent.\")});a.minzoom===t&&a.maxzoom===r||(null!=t&&(a.minzoom=t),null!=r&&(a.maxzoom=r),this._updateLayer(a))},t.prototype.setFilter=function(e,t){this._checkLoaded();var r=this.getLayer(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 filtered.\")});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))},t.prototype.getFilter=function(e){return util.clone(this.getLayer(e).filter)},t.prototype.setLayoutProperty=function(e,t,r){this._checkLoaded();var a=this.getLayer(e);if(!a)return void this.fire(\"error\",{error:new Error(\"The layer '\"+e+\"' does not exist in the map's style and cannot be styled.\")});util.deepEqual(a.getLayoutProperty(t),r)||(a.setLayoutProperty(t,r),this._updateLayer(a))},t.prototype.getLayoutProperty=function(e,t){return this.getLayer(e).getLayoutProperty(t)},t.prototype.setPaintProperty=function(e,t,r,a){this._checkLoaded();var i=this.getLayer(e);if(!i)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(i.getPaintProperty(t,a),r)){var o=i.isPaintValueFeatureConstant(t);i.setPaintProperty(t,r,a);!(r&&MapboxGLFunction.isFunctionDefinition(r)&&\"$zoom\"!==r.property&&void 0!==r.property)&&o||this._updateLayer(i),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.sourceCaches[e.source].pause()),this._changed=!0},t.prototype._flattenRenderedFeatures=function(e){for(var t=this,r=[],a=this._order.length-1;a>=0;a--)for(var i=t._order[a],o=0,s=e;o<s.length;o+=1){var n=s[o],l=n[i];if(l)for(var u=0,d=l;u<d.length;u+=1){var h=d[u];r.push(h)}}return r},t.prototype.queryRenderedFeatures=function(e,t,r,a){var i=this;t&&t.filter&&this._validate(validateStyle.filter,\"queryRenderedFeatures.filter\",t.filter);var o={};if(t&&t.layers){if(!Array.isArray(t.layers))return this.fire(\"error\",{error:\"parameters.layers must be an Array.\"}),[];for(var s=0,n=t.layers;s<n.length;s+=1){var l=n[s],u=i._layers[l];if(!u)return i.fire(\"error\",{error:\"The layer '\"+l+\"' does not exist in the map's style and cannot be queried for features.\"}),[];o[u.source]=!0}}var d=[];for(var h in i.sourceCaches)if(!t.layers||o[h]){var c=QueryFeatures.rendered(i.sourceCaches[h],i._layers,e,t,r,a);d.push(c)}return this._flattenRenderedFeatures(d)},t.prototype.querySourceFeatures=function(e,t){t&&t.filter&&this._validate(validateStyle.filter,\"querySourceFeatures.filter\",t.filter);var r=this.sourceCaches[e];return r?QueryFeatures.source(r,t):[]},t.prototype.addSourceType=function(e,t,r){return getSourceType(e)?r(new Error('A source type called \"'+e+'\" already exists.')):(setSourceType(e,t),t.workerSourceURL?void this.dispatcher.broadcast(\"loadWorkerSource\",{name:e,url:t.workerSourceURL},r):r(null,null))},t.prototype.getLight=function(){return this.light.getLight()},t.prototype.setLight=function(e,t){this._checkLoaded();var r=this.light.getLight(),a=!1;for(var i in e)if(!util.deepEqual(e[i],r[i])){a=!0;break}if(a){var o=this.stylesheet.transition||{};this.light.setLight(e),this.light.updateLightTransitions(t||{transition:!0},o,this.animationLoop)}},t.prototype._validate=function(e,t,r,a,i){return(!i||!1!==i.validate)&&validateStyle.emitErrors(this,e.call(validateStyle,util.extend({key:t,style:this.serialize(),value:r,styleSpec:styleSpec},a)))},t.prototype._remove=function(){var e=this;rtlTextPlugin.evented.off(\"pluginAvailable\",this._rtlTextPluginCallback);for(var t in e.sourceCaches)e.sourceCaches[t].clearTiles();this.dispatcher.remove()},t.prototype._clearSource=function(e){this.sourceCaches[e].clearTiles()},t.prototype._reloadSource=function(e){this.sourceCaches[e].resume(),this.sourceCaches[e].reload()},t.prototype._updateSources=function(e){var t=this;for(var r in t.sourceCaches)t.sourceCaches[r].update(e)},t.prototype._redoPlacement=function(){var e=this;for(var t in e.sourceCaches)e.sourceCaches[t].redoPlacement()},t.prototype.getImages=function(e,t,r){this.imageManager.getImages(t.icons,r)},t.prototype.getGlyphs=function(e,t,r){this.glyphManager.getGlyphs(t.stacks,r)},t}(Evented);module.exports=Style;\n},{\"../render/glyph_manager\":75,\"../render/image_manager\":77,\"../render/line_atlas\":78,\"../source/query_features\":94,\"../source/rtl_text_plugin\":96,\"../source/source\":97,\"../source/source_cache\":98,\"../style-spec/deref\":107,\"../style-spec/diff\":108,\"../style-spec/function\":112,\"../style-spec/reference/latest\":123,\"../util/ajax\":201,\"../util/browser\":202,\"../util/dispatcher\":208,\"../util/evented\":210,\"../util/global_worker_pool\":212,\"../util/mapbox\":217,\"../util/util\":223,\"./animation_loop\":150,\"./light\":151,\"./load_sprite\":153,\"./style_layer\":158,\"./validate_style\":166}],157:[function(_dereq_,module,exports){\n\"use strict\";var createFunction=_dereq_(\"../style-spec/function\"),util=_dereq_(\"../util/util\"),StyleDeclaration=function(t,i){var o=this;if(this.value=util.clone(i),this.isFunction=createFunction.isFunctionDefinition(i),this.json=JSON.stringify(this.value),this.minimum=t.minimum,this.function=createFunction(this.value,t),this.isFeatureConstant=this.function.isFeatureConstant,this.isZoomConstant=this.function.isZoomConstant,this.isFeatureConstant||this.isZoomConstant){if(!this.isZoomConstant){this.stopZoomLevels=[];for(var n=0,s=o.value.stops;n<s.length;n+=1){var e=s[n];o.stopZoomLevels.indexOf(e[0])<0&&o.stopZoomLevels.push(e[0])}}}else{this.stopZoomLevels=[];for(var a=[],u=0,l=o.value.stops;u<l.length;u+=1){var r=l[u],c=r[0].zoom;o.stopZoomLevels.indexOf(c)<0&&(o.stopZoomLevels.push(c),a.push([c,a.length]))}this._functionInterpolationT=createFunction({type:\"exponential\",stops:a,base:i.base},{type:\"number\"})}};StyleDeclaration.prototype.calculate=function(t,i){var o=this.function(t&&t.zoom,i||{});return void 0!==this.minimum&&o<this.minimum?this.minimum:o},StyleDeclaration.prototype.calculateInterpolationT=function(t){return this.isFeatureConstant||this.isZoomConstant?0:this._functionInterpolationT(t&&t.zoom,{})},module.exports=StyleDeclaration;\n},{\"../style-spec/function\":112,\"../util/util\":223}],158:[function(_dereq_,module,exports){\n\"use strict\";function getDeclarationValue(t){return t.value}var util=_dereq_(\"../util/util\"),StyleTransition=_dereq_(\"./style_transition\"),StyleDeclaration=_dereq_(\"./style_declaration\"),styleSpec=_dereq_(\"../style-spec/reference/latest\"),validateStyle=_dereq_(\"./validate_style\"),parseColor=_dereq_(\"./../style-spec/util/parse_color\"),Evented=_dereq_(\"../util/evented\"),TRANSITION_SUFFIX=\"-transition\",StyleLayer=function(t){function i(i){var e=this;t.call(this),this.id=i.id,this.metadata=i.metadata,this.type=i.type,this.minzoom=i.minzoom,this.maxzoom=i.maxzoom,\"background\"!==i.type&&(this.source=i.source,this.sourceLayer=i[\"source-layer\"],this.filter=i.filter),this.paint={},this.layout={},this._paintSpecifications=styleSpec[\"paint_\"+this.type],this._layoutSpecifications=styleSpec[\"layout_\"+this.type],this._paintTransitions={},this._paintTransitionOptions={},this._paintDeclarations={},this._layoutDeclarations={},this._layoutFunctions={};var a,o,n={validate:!1};for(var r in i){var s=r.match(/^paint(?:\\.(.*))?$/);if(s){var l=s[1]||\"\";for(a in i[r])e.setPaintProperty(a,i[r][a],l,n)}}for(o in i.layout)e.setLayoutProperty(o,i.layout[o],n);for(a in e._paintSpecifications)e.paint[a]=e.getPaintValue(a);for(o in e._layoutSpecifications)e._updateLayoutValue(o)}return t&&(i.__proto__=t),i.prototype=Object.create(t&&t.prototype),i.prototype.constructor=i,i.prototype.setLayoutProperty=function(t,i,e){if(null==i)delete this._layoutDeclarations[t];else{var a=\"layers.\"+this.id+\".layout.\"+t;if(this._validate(validateStyle.layoutProperty,a,t,i,e))return;this._layoutDeclarations[t]=new StyleDeclaration(this._layoutSpecifications[t],i)}this._updateLayoutValue(t)},i.prototype.getLayoutProperty=function(t){return this._layoutDeclarations[t]&&this._layoutDeclarations[t].value},i.prototype.getLayoutValue=function(t,i,e){var a=this._layoutSpecifications[t],o=this._layoutDeclarations[t];return o?o.calculate(i,e):a.default},i.prototype.setPaintProperty=function(t,i,e,a){var o=\"layers.\"+this.id+(e?'[\"paint.'+e+'\"].':\".paint.\")+t;if(util.endsWith(t,TRANSITION_SUFFIX))if(this._paintTransitionOptions[e||\"\"]||(this._paintTransitionOptions[e||\"\"]={}),null===i||void 0===i)delete this._paintTransitionOptions[e||\"\"][t];else{if(this._validate(validateStyle.paintProperty,o,t,i,a))return;this._paintTransitionOptions[e||\"\"][t]=i}else if(this._paintDeclarations[e||\"\"]||(this._paintDeclarations[e||\"\"]={}),null===i||void 0===i)delete this._paintDeclarations[e||\"\"][t];else{if(this._validate(validateStyle.paintProperty,o,t,i,a))return;this._paintDeclarations[e||\"\"][t]=new StyleDeclaration(this._paintSpecifications[t],i)}},i.prototype.getPaintProperty=function(t,i){return i=i||\"\",util.endsWith(t,TRANSITION_SUFFIX)?this._paintTransitionOptions[i]&&this._paintTransitionOptions[i][t]:this._paintDeclarations[i]&&this._paintDeclarations[i][t]&&this._paintDeclarations[i][t].value},i.prototype.getPaintValue=function(t,i,e){var a=this._paintSpecifications[t],o=this._paintTransitions[t];return o?o.calculate(i,e):\"color\"===a.type&&a.default?parseColor(a.default):a.default},i.prototype.getPaintValueStopZoomLevels=function(t){var i=this._paintTransitions[t];return i?i.declaration.stopZoomLevels:[]},i.prototype.getLayoutValueStopZoomLevels=function(t){var i=this._layoutDeclarations[t];return i?i.stopZoomLevels:[]},i.prototype.getPaintInterpolationT=function(t,i){return this._paintTransitions[t].declaration.calculateInterpolationT(i)},i.prototype.getLayoutInterpolationT=function(t,i){return this._layoutDeclarations[t].calculateInterpolationT(i)},i.prototype.isPaintValueFeatureConstant=function(t){var i=this._paintTransitions[t];return!i||i.declaration.isFeatureConstant},i.prototype.isLayoutValueFeatureConstant=function(t){var i=this._layoutDeclarations[t];return!i||i.isFeatureConstant},i.prototype.isPaintValueZoomConstant=function(t){var i=this._paintTransitions[t];return!i||i.declaration.isZoomConstant},i.prototype.isLayoutValueZoomConstant=function(t){var i=this._layoutDeclarations[t];return!i||i.isZoomConstant},i.prototype.isHidden=function(t){return!!(this.minzoom&&t<this.minzoom)||(!!(this.maxzoom&&t>=this.maxzoom)||\"none\"===this.layout.visibility)},i.prototype.updatePaintTransitions=function(t,i,e,a,o){for(var n=this,r=util.extend({},this._paintDeclarations[\"\"]),s=0;s<t.length;s++)util.extend(r,n._paintDeclarations[t[s]]);var l;for(l in r)n._applyPaintDeclaration(l,r[l],i,e,a,o);for(l in n._paintTransitions)l in r||n._applyPaintDeclaration(l,null,i,e,a,o)},i.prototype.updatePaintTransition=function(t,i,e,a,o,n){for(var r=this,s=this._paintDeclarations[\"\"][t],l=0;l<i.length;l++){var u=r._paintDeclarations[i[l]];u&&u[t]&&(s=u[t])}this._applyPaintDeclaration(t,s,e,a,o,n)},i.prototype.recalculate=function(t){var i=this;for(var e in i._paintTransitions)i.paint[e]=i.getPaintValue(e,{zoom:t});for(var a in i._layoutFunctions)i.layout[a]=i.getLayoutValue(a,{zoom:t})},i.prototype.serialize=function(){var t=this,i={id:this.id,type:this.type,source:this.source,\"source-layer\":this.sourceLayer,metadata:this.metadata,minzoom:this.minzoom,maxzoom:this.maxzoom,filter:this.filter,layout:util.mapObject(this._layoutDeclarations,getDeclarationValue)};for(var e in t._paintDeclarations){i[\"\"===e?\"paint\":\"paint.\"+e]=util.mapObject(t._paintDeclarations[e],getDeclarationValue)}return util.filterObject(i,function(t,i){return void 0!==t&&!(\"layout\"===i&&!Object.keys(t).length)})},i.prototype._applyPaintDeclaration=function(t,i,e,a,o,n){var r=e.transition?this._paintTransitions[t]:void 0,s=this._paintSpecifications[t];if(null!==i&&void 0!==i||(i=new StyleDeclaration(s,s.default)),!r||r.declaration.json!==i.json){var l=util.extend({duration:300,delay:0},a,this.getPaintProperty(t+TRANSITION_SUFFIX)),u=this._paintTransitions[t]=new StyleTransition(s,i,r,l,n);u.instant()||(u.loopID=o.set(u.endTime-Date.now())),r&&o.cancel(r.loopID)}},i.prototype._updateLayoutValue=function(t){var i=this._layoutDeclarations[t];i&&i.isFunction?this._layoutFunctions[t]=!0:(delete this._layoutFunctions[t],this.layout[t]=this.getLayoutValue(t))},i.prototype._validate=function(t,i,e,a,o){return(!o||!1!==o.validate)&&validateStyle.emitErrors(this,t.call(validateStyle,{key:i,layerType:this.type,objectKey:e,value:a,styleSpec:styleSpec,style:{glyphs:!0,sprite:!0}}))},i.prototype.has3DPass=function(){return!1},i}(Evented);module.exports=StyleLayer;var subclasses={circle:_dereq_(\"./style_layer/circle_style_layer\"),fill:_dereq_(\"./style_layer/fill_style_layer\"),\"fill-extrusion\":_dereq_(\"./style_layer/fill_extrusion_style_layer\"),line:_dereq_(\"./style_layer/line_style_layer\"),symbol:_dereq_(\"./style_layer/symbol_style_layer\"),background:StyleLayer,raster:StyleLayer};StyleLayer.create=function(t){return new subclasses[t.type](t)};\n},{\"../style-spec/reference/latest\":123,\"../util/evented\":210,\"../util/util\":223,\"./../style-spec/util/parse_color\":128,\"./style_declaration\":157,\"./style_layer/circle_style_layer\":159,\"./style_layer/fill_extrusion_style_layer\":160,\"./style_layer/fill_style_layer\":161,\"./style_layer/line_style_layer\":162,\"./style_layer/symbol_style_layer\":163,\"./style_transition\":165,\"./validate_style\":166}],159:[function(_dereq_,module,exports){\n\"use strict\";var StyleLayer=_dereq_(\"../style_layer\"),CircleBucket=_dereq_(\"../../data/bucket/circle_bucket\"),ref=_dereq_(\"../../util/intersection_tests\"),multiPolygonIntersectsBufferedMultiPoint=ref.multiPolygonIntersectsBufferedMultiPoint,ref$1=_dereq_(\"../query_utils\"),getMaximumPaintValue=ref$1.getMaximumPaintValue,translateDistance=ref$1.translateDistance,translate=ref$1.translate,CircleStyleLayer=function(e){function t(){e.apply(this,arguments)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.createBucket=function(e){return new CircleBucket(e)},t.prototype.queryRadius=function(e){return getMaximumPaintValue(\"circle-radius\",this,e)+translateDistance(this.paint[\"circle-translate\"])},t.prototype.queryIntersectsFeature=function(e,t,r,i,a,n){var u=translate(e,this.getPaintValue(\"circle-translate\",{zoom:i},t.properties),this.getPaintValue(\"circle-translate-anchor\",{zoom:i},t.properties),a,n),l=this.getPaintValue(\"circle-radius\",{zoom:i},t.properties)*n;return multiPolygonIntersectsBufferedMultiPoint(u,r,l)},t}(StyleLayer);module.exports=CircleStyleLayer;\n},{\"../../data/bucket/circle_bucket\":43,\"../../util/intersection_tests\":214,\"../query_utils\":155,\"../style_layer\":158}],160:[function(_dereq_,module,exports){\n\"use strict\";var StyleLayer=_dereq_(\"../style_layer\"),FillExtrusionBucket=_dereq_(\"../../data/bucket/fill_extrusion_bucket\"),ref=_dereq_(\"../../util/intersection_tests\"),multiPolygonIntersectsMultiPolygon=ref.multiPolygonIntersectsMultiPolygon,ref$1=_dereq_(\"../query_utils\"),translateDistance=ref$1.translateDistance,translate=ref$1.translate,FillExtrusionStyleLayer=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.prototype.getPaintValue=function(e,r,i){var o=t.prototype.getPaintValue.call(this,e,r,i);return\"fill-extrusion-color\"===e&&o&&(o[3]=1),o},e.prototype.createBucket=function(t){return new FillExtrusionBucket(t)},e.prototype.queryRadius=function(){return translateDistance(this.paint[\"fill-extrusion-translate\"])},e.prototype.queryIntersectsFeature=function(t,e,r,i,o,n){var l=translate(t,this.getPaintValue(\"fill-extrusion-translate\",{zoom:i},e.properties),this.getPaintValue(\"fill-extrusion-translate-anchor\",{zoom:i},e.properties),o,n);return multiPolygonIntersectsMultiPolygon(l,r)},e.prototype.has3DPass=function(){return 0!==this.paint[\"fill-extrusion-opacity\"]&&\"none\"!==this.layout.visibility},e}(StyleLayer);module.exports=FillExtrusionStyleLayer;\n},{\"../../data/bucket/fill_extrusion_bucket\":45,\"../../util/intersection_tests\":214,\"../query_utils\":155,\"../style_layer\":158}],161:[function(_dereq_,module,exports){\n\"use strict\";var StyleLayer=_dereq_(\"../style_layer\"),FillBucket=_dereq_(\"../../data/bucket/fill_bucket\"),ref=_dereq_(\"../../util/intersection_tests\"),multiPolygonIntersectsMultiPolygon=ref.multiPolygonIntersectsMultiPolygon,ref$1=_dereq_(\"../query_utils\"),translateDistance=ref$1.translateDistance,translate=ref$1.translate,FillStyleLayer=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.prototype.getPaintValue=function(e,o,l){var i=this;if(\"fill-outline-color\"===e){if(void 0===this.getPaintProperty(\"fill-outline-color\"))return t.prototype.getPaintValue.call(this,\"fill-color\",o,l);for(var r=this._paintTransitions[\"fill-outline-color\"];r;){if(!(r&&r.declaration&&r.declaration.value))return t.prototype.getPaintValue.call(i,\"fill-color\",o,l);r=r.oldTransition}}return t.prototype.getPaintValue.call(this,e,o,l)},e.prototype.getPaintValueStopZoomLevels=function(e){return\"fill-outline-color\"===e&&void 0===this.getPaintProperty(\"fill-outline-color\")?t.prototype.getPaintValueStopZoomLevels.call(this,\"fill-color\"):t.prototype.getPaintValueStopZoomLevels.call(this,e)},e.prototype.getPaintInterpolationT=function(e,o){return\"fill-outline-color\"===e&&void 0===this.getPaintProperty(\"fill-outline-color\")?t.prototype.getPaintInterpolationT.call(this,\"fill-color\",o):t.prototype.getPaintInterpolationT.call(this,e,o)},e.prototype.isPaintValueFeatureConstant=function(e){return\"fill-outline-color\"===e&&void 0===this.getPaintProperty(\"fill-outline-color\")?t.prototype.isPaintValueFeatureConstant.call(this,\"fill-color\"):t.prototype.isPaintValueFeatureConstant.call(this,e)},e.prototype.isPaintValueZoomConstant=function(e){return\"fill-outline-color\"===e&&void 0===this.getPaintProperty(\"fill-outline-color\")?t.prototype.isPaintValueZoomConstant.call(this,\"fill-color\"):t.prototype.isPaintValueZoomConstant.call(this,e)},e.prototype.createBucket=function(t){return new FillBucket(t)},e.prototype.queryRadius=function(){return translateDistance(this.paint[\"fill-translate\"])},e.prototype.queryIntersectsFeature=function(t,e,o,l,i,r){var n=translate(t,this.getPaintValue(\"fill-translate\",{zoom:l},e.properties),this.getPaintValue(\"fill-translate-anchor\",{zoom:l},e.properties),i,r);return multiPolygonIntersectsMultiPolygon(n,o)},e}(StyleLayer);module.exports=FillStyleLayer;\n},{\"../../data/bucket/fill_bucket\":44,\"../../util/intersection_tests\":214,\"../query_utils\":155,\"../style_layer\":158}],162:[function(_dereq_,module,exports){\n\"use strict\";function getLineWidth(e,t){return t>0?t+2*e:e}function offsetLine(e,t){for(var i=[],r=new Point(0,0),n=0;n<e.length;n++){for(var a=e[n],u=[],o=0;o<a.length;o++){var s=a[o-1],l=a[o],p=a[o+1],f=0===o?r:l.sub(s)._unit()._perp(),c=o===a.length-1?r:p.sub(l)._unit()._perp(),y=f._add(c)._unit(),h=y.x*c.x+y.y*c.y;y._mult(1/h),u.push(y._mult(t)._add(l))}i.push(u)}return i}var Point=_dereq_(\"@mapbox/point-geometry\"),StyleLayer=_dereq_(\"../style_layer\"),LineBucket=_dereq_(\"../../data/bucket/line_bucket\"),ref=_dereq_(\"../../util/intersection_tests\"),multiPolygonIntersectsBufferedMultiLine=ref.multiPolygonIntersectsBufferedMultiLine,ref$1=_dereq_(\"../query_utils\"),getMaximumPaintValue=ref$1.getMaximumPaintValue,translateDistance=ref$1.translateDistance,translate=ref$1.translate,LineStyleLayer=function(e){function t(){e.apply(this,arguments)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.createBucket=function(e){return new LineBucket(e)},t.prototype.queryRadius=function(e){var t=e,i=getLineWidth(getMaximumPaintValue(\"line-width\",this,t),getMaximumPaintValue(\"line-gap-width\",this,t)),r=getMaximumPaintValue(\"line-offset\",this,t);return i/2+Math.abs(r)+translateDistance(this.paint[\"line-translate\"])},t.prototype.queryIntersectsFeature=function(e,t,i,r,n,a){var u=translate(e,this.getPaintValue(\"line-translate\",{zoom:r},t.properties),this.getPaintValue(\"line-translate-anchor\",{zoom:r},t.properties),n,a),o=a/2*getLineWidth(this.getPaintValue(\"line-width\",{zoom:r},t.properties),this.getPaintValue(\"line-gap-width\",{zoom:r},t.properties)),s=this.getPaintValue(\"line-offset\",{zoom:r},t.properties);return s&&(i=offsetLine(i,s*a)),multiPolygonIntersectsBufferedMultiLine(u,i,o)},t}(StyleLayer);module.exports=LineStyleLayer;\n},{\"../../data/bucket/line_bucket\":46,\"../../util/intersection_tests\":214,\"../query_utils\":155,\"../style_layer\":158,\"@mapbox/point-geometry\":2}],163:[function(_dereq_,module,exports){\n\"use strict\";var StyleLayer=_dereq_(\"../style_layer\"),SymbolBucket=_dereq_(\"../../data/bucket/symbol_bucket\"),SymbolStyleLayer=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.prototype.getLayoutValue=function(e,r,o){var n=t.prototype.getLayoutValue.call(this,e,r,o);if(\"auto\"!==n)return n;switch(e){case\"text-rotation-alignment\":case\"icon-rotation-alignment\":return\"line\"===this.getLayoutValue(\"symbol-placement\",r,o)?\"map\":\"viewport\";case\"text-pitch-alignment\":return this.getLayoutValue(\"text-rotation-alignment\",r,o);case\"icon-pitch-alignment\":return this.getLayoutValue(\"icon-rotation-alignment\",r,o);default:return n}},e.prototype.createBucket=function(t){return new SymbolBucket(t)},e.prototype.queryRadius=function(){return 0},e.prototype.queryIntersectsFeature=function(){return!1},e}(StyleLayer);module.exports=SymbolStyleLayer;\n},{\"../../data/bucket/symbol_bucket\":47,\"../style_layer\":158}],164:[function(_dereq_,module,exports){\n\"use strict\";var StyleLayer=_dereq_(\"./style_layer\"),util=_dereq_(\"../util/util\"),featureFilter=_dereq_(\"../style-spec/feature_filter\"),groupByLayout=_dereq_(\"../style-spec/group_by_layout\"),StyleLayerIndex=function(e){e&&this.replace(e)};StyleLayerIndex.prototype.replace=function(e){var r=this;this.symbolOrder=[];for(var t=0,i=e;t<i.length;t+=1){var a=i[t];\"symbol\"===a.type&&r.symbolOrder.push(a.id)}this._layerConfigs={},this._layers={},this.update(e,[])},StyleLayerIndex.prototype.update=function(e,r,t){for(var i=this,a=0,l=e;a<l.length;a+=1){var y=l[a];i._layerConfigs[y.id]=y;var s=i._layers[y.id]=StyleLayer.create(y);s.updatePaintTransitions({},{transition:!1}),s.filter=featureFilter(s.filter)}for(var o=0,u=r;o<u.length;o+=1){var n=u[o];delete i._layerConfigs[n],delete i._layers[n]}t&&(this.symbolOrder=t),this.familiesBySource={};for(var f=groupByLayout(util.values(this._layerConfigs)),p=0,d=f;p<d.length;p+=1){var h=d[p],c=h.map(function(e){return i._layers[e.id]}),v=c[0];if(!v.layout||\"none\"!==v.layout.visibility){var _=v.source||\"\",g=i.familiesBySource[_];g||(g=i.familiesBySource[_]={});var L=v.sourceLayer||\"_geojsonTileLayer\",m=g[L];m||(m=g[L]=[]),m.push(c)}}},module.exports=StyleLayerIndex;\n},{\"../style-spec/feature_filter\":110,\"../style-spec/group_by_layout\":113,\"../util/util\":223,\"./style_layer\":158}],165:[function(_dereq_,module,exports){\n\"use strict\";function interpZoomTransitioned(t,i,e){if(void 0!==t&&void 0!==i)return{from:t.to,fromScale:t.toScale,to:i.to,toScale:i.toScale,t:e}}var util=_dereq_(\"../util/util\"),interpolate=_dereq_(\"../style-spec/util/interpolate\"),fakeZoomHistory={lastIntegerZoom:0,lastIntegerZoomTime:0,lastZoom:0},StyleTransition=function(t,i,e,o,a){this.declaration=i,this.startTime=this.endTime=(new Date).getTime(),this.oldTransition=e,this.duration=o.duration||0,this.delay=o.delay||0,this.zoomTransitioned=\"piecewise-constant\"===t.function&&t.transition,this.interp=this.zoomTransitioned?interpZoomTransitioned:interpolate[t.type],this.zoomHistory=a||fakeZoomHistory,this.instant()||(this.endTime=this.startTime+this.duration+this.delay),e&&e.endTime<=this.startTime&&delete e.oldTransition};StyleTransition.prototype.instant=function(){return!this.oldTransition||!this.interp||0===this.duration&&0===this.delay},StyleTransition.prototype.calculate=function(t,i,e){var o=this._calculateTargetValue(t,i);if(this.instant())return o;if((e=e||Date.now())>=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\":127,\"../util/util\":223}],166:[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,o=e;t<o.length;t+=1){var s=o[t],i=s.message;r.fire(\"error\",{error:new Error(i)})}return!0}return!1};\n},{\"../style-spec/validate_style.min\":149}],167:[function(_dereq_,module,exports){\n\"use strict\";var Point=_dereq_(\"@mapbox/point-geometry\"),Anchor=function(t){function o(o,e,n,r){t.call(this,o,e),this.angle=n,void 0!==r&&(this.segment=r)}return t&&(o.__proto__=t),o.prototype=Object.create(t&&t.prototype),o.prototype.constructor=o,o.prototype.clone=function(){return new o(this.x,this.y,this.angle,this.segment)},o}(Point);module.exports=Anchor;\n},{\"@mapbox/point-geometry\":2}],168:[function(_dereq_,module,exports){\n\"use strict\";function checkMaxAngle(e,t,a,r,n){if(void 0===t.segment)return!0;for(var i=t,s=t.segment+1,f=0;f>-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<a/2;){var u=e[s-1],c=e[s],g=e[s+1];if(!g)return!1;var h=u.angleTo(c)-c.angleTo(g);for(h=Math.abs((h+3*Math.PI)%(2*Math.PI)-Math.PI),l.push({distance:f,angleDelta:h}),o+=h;f-l[0].distance>r;)o-=l.shift().angleDelta;if(o>n)return!1;s++,f+=c.dist(g)}return!0}module.exports=checkMaxAngle;\n},{}],169:[function(_dereq_,module,exports){\n\"use strict\";function clipLine(n,x,y,o,e){for(var r=[],t=0;t<n.length;t++)for(var i=n[t],u=void 0,d=0;d<i.length-1;d++){var P=i[d],w=i[d+1];P.x<x&&w.x<x||(P.x<x?P=new Point(x,P.y+(w.y-P.y)*((x-P.x)/(w.x-P.x)))._round():w.x<x&&(w=new Point(x,P.y+(w.y-P.y)*((x-P.x)/(w.x-P.x)))._round()),P.y<y&&w.y<y||(P.y<y?P=new Point(P.x+(w.x-P.x)*((y-P.y)/(w.y-P.y)),y)._round():w.y<y&&(w=new Point(P.x+(w.x-P.x)*((y-P.y)/(w.y-P.y)),y)._round()),P.x>=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_(\"@mapbox/point-geometry\");module.exports=clipLine;\n},{\"@mapbox/point-geometry\":2}],170:[function(_dereq_,module,exports){\n\"use strict\";var createStructArrayType=_dereq_(\"../util/struct_array\"),Point=_dereq_(\"@mapbox/point-geometry\"),CollisionBoxArray=createStructArrayType({members:[{type:\"Int16\",name:\"anchorPointX\"},{type:\"Int16\",name:\"anchorPointY\"},{type:\"Int16\",name:\"offsetX\"},{type:\"Int16\",name:\"offsetY\"},{type:\"Int16\",name:\"x1\"},{type:\"Int16\",name:\"y1\"},{type:\"Int16\",name:\"x2\"},{type:\"Int16\",name:\"y2\"},{type:\"Float32\",name:\"unadjustedMaxScale\"},{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\":220,\"@mapbox/point-geometry\":2}],171:[function(_dereq_,module,exports){\n\"use strict\";var CollisionFeature=function(t,e,i,o,a,n,s,l,r,d,u){var h=s.top*l-r,f=s.bottom*l+r,x=s.left*l-r,m=s.right*l+r;if(this.boxStartIndex=t.length,d){var _=f-h,b=m-x;if(_>0)if(_=Math.max(10*l,_),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,a,n)}else this._addLineCollisionBoxes(t,e,i,i.segment,b,_,o,a,n)}else t.emplaceBack(i.x,i.y,0,0,x,h,m,f,1/0,1/0,o,a,n,0,0,0,0,0);this.boxEndIndex=t.length};CollisionFeature.prototype._addLineCollisionBoxes=function(t,e,i,o,a,n,s,l,r){var d=n/2,u=Math.floor(a/d),h=Math.floor(u/2),f=-n/2,x=i,m=o+1,_=f,b=-a/2,v=b-a/8;do{if(--m<0){if(_>b)return;m=0;break}_-=e[m].dist(x),x=e[m]}while(_>v);for(var c=e[m].dist(e[m+1]),g=-h;g<u+h;g++){var p=g*d,C=b+p;if(p<0&&(C+=p),p>a&&(C+=p-a),!(C<_)){for(;_+c<C;){if(_+=c,++m+1>=e.length)return;c=e[m].dist(e[m+1])}var M=C-_,y=e[m],B=e[m+1],k=B.sub(y)._unit()._mult(M)._add(y)._round(),F=Math.max(Math.abs(C-f)-d/2,0),L=a/2/F;(g<0||g>=u)&&(L=Math.min(L,.99)),t.emplaceBack(k.x,k.y,k.x-i.x,k.y-i.y,-n/2,-n/2,n/2,n/2,L,L,s,l,r,0,0,0,0,0)}}},module.exports=CollisionFeature;\n},{}],172:[function(_dereq_,module,exports){\n\"use strict\";var Point=_dereq_(\"@mapbox/point-geometry\"),EXTENT=_dereq_(\"../data/extent\"),Grid=_dereq_(\"grid-index\"),intersectionTests=_dereq_(\"../util/intersection_tests\"),CollisionTile=function(e,t,i,a,r,o,n){void 0===o&&(o=new Grid(EXTENT,12,6)),void 0===n&&(n=new Grid(EXTENT,12,0)),this.angle=e,this.pitch=t,this.cameraToCenterDistance=i,this.cameraToTileDistance=a,this.grid=o,this.ignoredGrid=n,this.perspectiveRatio=1+.5*(a/i-1),this.minScale=.5/this.perspectiveRatio,this.maxScale=2/this.perspectiveRatio;var s=Math.sin(this.angle),l=Math.cos(this.angle);this.rotationMatrix=[l,-s,s,l],this.reverseRotationMatrix=[l,s,-s,l],this.yStretch=Math.max(1,a/(i*Math.cos(t/180*Math.PI))),this.collisionBoxArray=r,0===r.length&&(r.emplaceBack(),r.emplaceBack(0,0,0,0,0,-EXTENT,0,EXTENT,1/0,1/0,0,0,0,0,0,0,0,0,0),r.emplaceBack(EXTENT,0,0,0,0,-EXTENT,0,EXTENT,1/0,1/0,0,0,0,0,0,0,0,0,0),r.emplaceBack(0,0,0,0,-EXTENT,0,EXTENT,0,1/0,1/0,0,0,0,0,0,0,0,0,0),r.emplaceBack(0,EXTENT,0,0,-EXTENT,0,EXTENT,0,1/0,1/0,0,0,0,0,0,0,0,0,0)),this.tempCollisionBox=r.get(0),this.edges=[r.get(1),r.get(2),r.get(3),r.get(4)]};CollisionTile.deserialize=function(e,t){return new CollisionTile(e.angle,e.pitch,e.cameraToCenterDistance,e.cameraToTileDistance,t,new Grid(e.grid),new Grid(e.ignoredGrid))},CollisionTile.prototype.serialize=function(e){var t=this.grid.toArrayBuffer(),i=this.ignoredGrid.toArrayBuffer();return e&&(e.push(t),e.push(i)),{angle:this.angle,pitch:this.pitch,cameraToCenterDistance:this.cameraToCenterDistance,cameraToTileDistance:this.cameraToTileDistance,grid:t,ignoredGrid:i}},CollisionTile.prototype.placeCollisionFeature=function(e,t,i){for(var a=this,r=this.collisionBoxArray,o=this.minScale,n=this.rotationMatrix,s=this.yStretch,l=e.boxStartIndex;l<e.boxEndIndex;l++){var c=r.get(l),h=c.anchorPoint._matMult(n),x=h.x,m=h.y,p=x+c.x1*a.perspectiveRatio,y=m+c.y1*s*a.perspectiveRatio,g=x+c.x2*a.perspectiveRatio,d=m+c.y2*s*a.perspectiveRatio;c.bbox0=p,c.bbox1=y,c.bbox2=g,c.bbox3=d;var T=new Point(c.offsetX,c.offsetY)._matMult(n),u=T.x*T.x,v=T.y*T.y,M=v*s*s,f=Math.sqrt((u+M)/(u+v))||1;if(c.maxScale=c.unadjustedMaxScale*f,!t)for(var E=a.grid.query(p,y,g,d),S=0;S<E.length;S++){var P=r.get(E[S]),b=P.anchorPoint._matMult(n);if((o=a.getPlacementScale(o,h,c,b,P))>=a.maxScale)return o}if(i){var N=void 0;if(a.angle){var C=a.reverseRotationMatrix,w=new Point(c.x1,c.y1).matMult(C),X=new Point(c.x2,c.y1).matMult(C),B=new Point(c.x1,c.y2).matMult(C),G=new Point(c.x2,c.y2).matMult(C);N=a.tempCollisionBox,N.anchorPointX=c.anchorPoint.x,N.anchorPointY=c.anchorPoint.y,N.x1=Math.min(w.x,X.x,B.x,G.x),N.y1=Math.min(w.y,X.x,B.x,G.x),N.x2=Math.max(w.x,X.x,B.x,G.x),N.y2=Math.max(w.y,X.x,B.x,G.x),N.maxScale=c.maxScale}else N=c;for(var R=0;R<this.edges.length;R++){var q=a.edges[R];if((o=a.getPlacementScale(o,c.anchorPoint,N,q.anchorPoint,q))>=a.maxScale)return o}}}return o},CollisionTile.prototype.queryRenderedSymbols=function(e,t){var i={},a=[];if(0===e.length||0===this.grid.keys.length&&0===this.ignoredGrid.keys.length)return a;for(var r=this.collisionBoxArray,o=this.rotationMatrix,n=this.yStretch,s=[],l=1/0,c=1/0,h=-1/0,x=-1/0,m=0;m<e.length;m++)for(var p=e[m],y=0;y<p.length;y++){var g=p[y].matMult(o);l=Math.min(l,g.x),c=Math.min(c,g.y),h=Math.max(h,g.x),x=Math.max(x,g.y),s.push(g)}for(var d=this.grid.query(l,c,h,x),T=this.ignoredGrid.query(l,c,h,x),u=0;u<T.length;u++)d.push(T[u]);for(var v=t/this.perspectiveRatio,M=Math.pow(2,Math.ceil(Math.log(v)/Math.LN2*10)/10),f=0;f<d.length;f++){var E=r.get(d[f]),S=E.sourceLayerIndex,P=E.featureIndex;if(void 0===i[S]&&(i[S]={}),!i[S][P]&&!(M<E.placementScale||M>E.maxScale)){var b=E.anchorPoint.matMult(o),N=b.x+E.x1/v,C=b.y+E.y1/v*n,w=b.x+E.x2/v,X=b.y+E.y2/v*n,B=[new Point(N,C),new Point(w,C),new Point(w,X),new Point(N,X)];intersectionTests.polygonIntersectsPolygon(s,B)&&(i[S][P]=!0,a.push(d[f]))}}return a},CollisionTile.prototype.getPlacementScale=function(e,t,i,a,r){var o=t.x-a.x,n=t.y-a.y,s=(r.x1-i.x2)/o,l=(r.x2-i.x1)/o,c=(r.y1-i.y2)*this.yStretch/n,h=(r.y2-i.y1)*this.yStretch/n;(isNaN(s)||isNaN(l))&&(s=l=1),(isNaN(c)||isNaN(h))&&(c=h=1);var x=Math.min(Math.max(s,l),Math.max(c,h)),m=r.maxScale,p=i.maxScale;return x>m&&(x=m),x>p&&(x=p),x>e&&x>=r.placementScale&&(e=x),e},CollisionTile.prototype.insertCollisionFeature=function(e,t,i){for(var a=this,r=i?this.ignoredGrid:this.grid,o=this.collisionBoxArray,n=e.boxStartIndex;n<e.boxEndIndex;n++){var s=o.get(n);s.placementScale=t,t<a.maxScale&&(1===a.perspectiveRatio||s.maxScale>=1)&&r.insert(n,s.bbox0,s.bbox1,s.bbox2,s.bbox3)}},module.exports=CollisionTile;\n},{\"../data/extent\":48,\"../util/intersection_tests\":214,\"@mapbox/point-geometry\":2,\"grid-index\":22}],173:[function(_dereq_,module,exports){\n\"use strict\";function getAnchors(e,r,t,n,a,l,o,i,c){var h=n?.6*l*o:0,s=Math.max(n?n.right-n.left:0,a?a.right-a.left:0),u=0===e[0].x||e[0].x===c||0===e[0].y||e[0].y===c;r-s*o<r/4&&(r=s*o+r/4);var g=2*l;return resample(e,u?r/2*i%r:(s/2+g)*o*i%r,r,h,t,s*o,u,!1,c)}function resample(e,r,t,n,a,l,o,i,c){for(var h=l/2,s=0,u=0;u<e.length-1;u++)s+=e[u].dist(e[u+1]);for(var g=0,p=r-t,x=[],f=0;f<e.length-1;f++){for(var v=e[f],m=e[f+1],y=v.dist(m),A=m.angleTo(v);p+t<g+y;){p+=t;var d=(p-g)/y,k=interpolate(v.x,m.x,d),q=interpolate(v.y,m.y,d);if(k>=0&&k<c&&q>=0&&q<c&&p-h>=0&&p+h<=s){var M=new Anchor(k,q,A,f);M._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\":127,\"../symbol/anchor\":167,\"./check_max_angle\":168}],174:[function(_dereq_,module,exports){\n\"use strict\";module.exports=function(e){function t(t){g.push(e[t]),l++}function r(e,t,r){var n=u[e];return delete u[e],u[t]=n,g[n].geometry[0].pop(),g[n].geometry[0]=g[n].geometry[0].concat(r[0]),n}function n(e,t,r){var n=i[t];return delete i[t],i[e]=n,g[n].geometry[0].shift(),g[n].geometry[0]=r[0].concat(g[n].geometry[0]),n}function o(e,t,r){var n=r?t[0][t[0].length-1]:t[0][0];return e+\":\"+n.x+\":\"+n.y}for(var i={},u={},g=[],l=0,m=0;m<e.length;m++){var y=e[m],c=y.geometry,f=y.text;if(f){var a=o(f,c),s=o(f,c,!0);if(a in u&&s in i&&u[a]!==i[s]){var v=n(a,s,c),d=r(a,s,g[v].geometry);delete i[a],delete u[s],u[o(f,g[d].geometry,!0)]=d,g[v].geometry=null}else a in u?r(a,s,c):s in i?n(a,s,c):(t(m),i[a]=l-1,u[s]=l-1)}else t(m)}return g.filter(function(e){return e.geometry})};\n},{}],175:[function(_dereq_,module,exports){\n\"use strict\";function getLabelPlaneMatrix(e,t,a,n,r){var i=mat4.identity(new Float32Array(16));return t?(mat4.identity(i),mat4.scale(i,i,[1/r,1/r,1]),a||mat4.rotateZ(i,i,n.angle)):(mat4.scale(i,i,[n.width/2,-n.height/2,1]),mat4.translate(i,i,[1,-1,0]),mat4.multiply(i,i,e)),i}function getGlCoordMatrix(e,t,a,n,r){var i=mat4.identity(new Float32Array(16));return t?(mat4.multiply(i,i,e),mat4.scale(i,i,[r,r,1]),a||mat4.rotateZ(i,i,-n.angle)):(mat4.scale(i,i,[1,-1,1]),mat4.translate(i,i,[-1,-1,0]),mat4.scale(i,i,[2/n.width,2/n.height,1])),i}function project(e,t){var a=[e.x,e.y,0,1];vec4.transformMat4(a,a,t);var n=a[3];return{point:new Point(a[0]/n,a[1]/n),signedDistanceFromCamera:n}}function isVisible(e,t,a,n){var r=e[0]/e[3],i=e[1]/e[3];return r>=-a[0]&&r<=a[0]&&i>=-a[1]&&i<=a[1]&&n.frameHistory.isVisible(t)}function updateLineLabels(e,t,a,n,r,i,o,l,s,p){var m=n?e.textSizeData:e.iconSizeData,c=symbolSize.evaluateSizeForZoom(m,a.transform,p,n),u=[256/a.width*2+1,256/a.height*2+1],y=n?e.text.dynamicLayoutVertexArray:e.icon.dynamicLayoutVertexArray;y.clear();for(var g=e.lineVertexArray,d=n?e.placedGlyphArray:e.placedIconArray,f=0;f<d.length;f++){var h=d.get(f),x=[h.anchorX,h.anchorY,0,1];if(vec4.transformMat4(x,x,t),isVisible(x,h.placementZoom,u,a)){var v=x[3],b=1+.5*(v/a.transform.cameraToCenterDistance-1),L=symbolSize.evaluateSizeForFeature(m,c,h),A=o?L*b:L/b,G=new Point(h.anchorX,h.anchorY),S=project(G,r).point,P={},D=placeGlyphsAlongLine(h,A,!1,l,t,r,i,e.glyphOffsetArray,g,y,S,G,P);(D.notEnoughRoom||D.needsFlipping&&placeGlyphsAlongLine(h,A,!0,l,t,r,i,e.glyphOffsetArray,g,y,S,G,P).notEnoughRoom)&&hideGlyphs(h.numGlyphs,y)}else hideGlyphs(h.numGlyphs,y)}n?e.text.dynamicLayoutVertexBuffer.updateData(y.serialize()):e.icon.dynamicLayoutVertexBuffer.updateData(y.serialize())}function placeGlyphsAlongLine(e,t,a,n,r,i,o,l,s,p,m,c,u){var y,g=t/24,d=e.lineOffsetX*t,f=e.lineOffsetY*t;if(e.numGlyphs>1){var h=e.glyphStartIndex+e.numGlyphs,x=l.get(e.glyphStartIndex).offsetX,v=l.get(h-1).offsetX,b=e.lineStartIndex,L=e.lineStartIndex+e.lineLength,A=placeGlyphAlongLine(g*x,d,f,a,m,c,e.segment,b,L,s,i,u);if(!A)return{notEnoughRoom:!0};var G=placeGlyphAlongLine(g*v,d,f,a,m,c,e.segment,b,L,s,i,u);if(!G)return{notEnoughRoom:!0};var S=project(A.point,o).point,P=project(G.point,o).point;if(n&&!a&&(e.vertical?S.y<P.y:S.x>P.x))return{needsFlipping:!0};y=[A];for(var D=e.glyphStartIndex+1;D<h-1;D++){var I=l.get(D);y.push(placeGlyphAlongLine(g*I.offsetX,d,f,a,m,c,e.segment,b,L,s,i,u))}y.push(G)}else{if(n&&!a){var M=project(c,r).point,j=s.get(e.lineStartIndex+e.segment+1),w=project(j,r),F=w.signedDistanceFromCamera>0?w.point:projectTruncatedLineSegment(c,new Point(j.x,j.y),M,1,r);if(e.vertical?F.y>M.y:F.x<M.x)return{needsFlipping:!0}}var z=l.get(e.glyphStartIndex),_=placeGlyphAlongLine(g*z.offsetX,d,f,a,m,c,e.segment,e.lineStartIndex,e.lineStartIndex+e.lineLength,s,i,u);if(!_)return{notEnoughRoom:!0};y=[_]}for(var V=e.placementZoom,C=0,X=y;C<X.length;C+=1){var E=X[C];addDynamicAttributes(p,E.point,E.angle,V)}return{}}function projectTruncatedLineSegment(e,t,a,n,r){var i=project(e.add(e.sub(t)._unit()),r).point,o=a.sub(i);return a.add(o._mult(n/o.mag()))}function placeGlyphAlongLine(e,t,a,n,r,i,o,l,s,p,m,c){var u=n?e-t:e+t,y=u>0?1:-1,g=0;n&&(y*=-1,g=Math.PI),y<0&&(g+=Math.PI);for(var d=y>0?l+o:l+o+1,f=r,h=r,x=0,v=0,b=Math.abs(u);x+v<=b;){if((d+=y)<l||d>=s)return null;if(h=f,void 0===(f=c[d])){var L=project(p.get(d),m);if(L.signedDistanceFromCamera>0)f=c[d]=L.point;else{f=projectTruncatedLineSegment(0===x?i:new Point(p.get(d-y).x,p.get(d-y).y),new Point(p.get(d).x,p.get(d).y),h,b-x+1,m)}}x+=v,v=h.dist(f)}var A=(b-x)/v,G=f.sub(h),S=G.mult(A)._add(h);return S._add(G._unit()._perp()._mult(a*y)),{point:S,angle:g+Math.atan2(f.y-h.y,f.x-h.x)}}function hideGlyphs(e,t){for(var a=0;a<e;a++)addDynamicAttributes(t,offscreenPoint,0,25)}var Point=_dereq_(\"@mapbox/point-geometry\"),ref=_dereq_(\"@mapbox/gl-matrix\"),mat4=ref.mat4,vec4=ref.vec4,symbolSize=_dereq_(\"./symbol_size\"),ref$1=_dereq_(\"../data/bucket/symbol_bucket\"),addDynamicAttributes=ref$1.addDynamicAttributes;module.exports={updateLineLabels:updateLineLabels,getLabelPlaneMatrix:getLabelPlaneMatrix,getGlCoordMatrix:getGlCoordMatrix};var offscreenPoint=new Point(-1/0,-1/0);\n},{\"../data/bucket/symbol_bucket\":47,\"./symbol_size\":178,\"@mapbox/gl-matrix\":1,\"@mapbox/point-geometry\":2}],176:[function(_dereq_,module,exports){\n\"use strict\";function getIconQuads(t,e,i,o,n,a,r){var u,l,d,f,c=e.image,h=i.layout,x=e.top-1/c.pixelRatio,g=e.left-1/c.pixelRatio,p=e.bottom+1/c.pixelRatio,s=e.right+1/c.pixelRatio;if(\"none\"!==h[\"icon-text-fit\"]&&n){var P=s-g,_=p-x,w=h[\"text-size\"]/24,m=n.left*w,y=n.right*w,M=n.top*w,v=n.bottom*w,R=y-m,b=v-M,G=h[\"icon-text-fit-padding\"][0],B=h[\"icon-text-fit-padding\"][1],I=h[\"icon-text-fit-padding\"][2],L=h[\"icon-text-fit-padding\"][3],Q=\"width\"===h[\"icon-text-fit\"]?.5*(b-_):0,O=\"height\"===h[\"icon-text-fit\"]?.5*(R-P):0,A=\"width\"===h[\"icon-text-fit\"]||\"both\"===h[\"icon-text-fit\"]?R:P,D=\"height\"===h[\"icon-text-fit\"]||\"both\"===h[\"icon-text-fit\"]?b:_;u=new Point(m+O-L,M+Q-G),l=new Point(m+O+B+A,M+Q-G),d=new Point(m+O+B+A,M+Q+I+D),f=new Point(m+O-L,M+Q+I+D)}else u=new Point(g,x),l=new Point(s,x),d=new Point(s,p),f=new Point(g,p);var E=i.getLayoutValue(\"icon-rotate\",a,r)*Math.PI/180;if(E){var F=Math.sin(E),H=Math.cos(E),V=[H,-F,F,H];u._matMult(V),l._matMult(V),f._matMult(V),d._matMult(V)}return[{tl:u,tr:l,bl:f,br:d,tex:{x:c.textureRect.x-1,y:c.textureRect.y-1,w:c.textureRect.w+2,h:c.textureRect.h+2},writingMode:void 0,glyphOffset:[0,0]}]}function getGlyphQuads(t,e,i,o,n,a,r){for(var u=i.getLayoutValue(\"text-rotate\",n,a)*Math.PI/180,l=i.getLayoutValue(\"text-offset\",n,a).map(function(t){return 24*t}),d=e.positionedGlyphs,f=[],c=0;c<d.length;c++){var h=d[c],x=r[h.glyph];if(x){var g=x.rect;if(g){var p=GLYPH_PBF_BORDER+1,s=x.metrics.advance/2,P=o?[h.x+s,h.y]:[0,0],_=o?[0,0]:[h.x+s+l[0],h.y+l[1]],w=x.metrics.left-p-s+_[0],m=-x.metrics.top-p+_[1],y=w+g.w,M=m+g.h,v=new Point(w,m),R=new Point(y,m),b=new Point(w,M),G=new Point(y,M);if(o&&h.vertical){var B=new Point(-s,s),I=-Math.PI/2,L=new Point(5,0);v._rotateAround(I,B)._add(L),R._rotateAround(I,B)._add(L),b._rotateAround(I,B)._add(L),G._rotateAround(I,B)._add(L)}if(u){var Q=Math.sin(u),O=Math.cos(u),A=[O,-Q,Q,O];v._matMult(A),R._matMult(A),b._matMult(A),G._matMult(A)}f.push({tl:v,tr:R,bl:b,br:G,tex:g,writingMode:e.writingMode,glyphOffset:P})}}}return f}var Point=_dereq_(\"@mapbox/point-geometry\"),ref=_dereq_(\"../style/parse_glyph_pbf\"),GLYPH_PBF_BORDER=ref.GLYPH_PBF_BORDER;module.exports={getIconQuads:getIconQuads,getGlyphQuads:getGlyphQuads};\n},{\"../style/parse_glyph_pbf\":154,\"@mapbox/point-geometry\":2}],177:[function(_dereq_,module,exports){\n\"use strict\";function breakLines(e,t){for(var a=[],r=0,i=0,n=t;i<n.length;i+=1){var l=n[i];a.push(e.substring(r,l)),r=l}return r<e.length&&a.push(e.substring(r,e.length)),a}function shapeText(e,t,a,r,i,n,l,c,o,s){var h=e.trim();s===WritingMode.vertical&&(h=verticalizePunctuation(h));var g,u=[],p={positionedGlyphs:u,text:h,top:c[1],bottom:c[1],left:c[0],right:c[0],writingMode:s},b=rtlTextPlugin.processBidirectionalText;return g=b?b(h,determineLineBreaks(h,l,a,t)):breakLines(h,determineLineBreaks(h,l,a,t)),shapeLines(p,t,g,r,i,n,s,l,o),!!u.length&&p}function determineAverageLineWidth(e,t,a,r){for(var i=0,n=0;n<e.length;n++){var l=r[e.charCodeAt(n)];l&&(i+=l.metrics.advance+t)}return i/Math.max(1,Math.ceil(i/a))}function calculateBadness(e,t,a,r){var i=Math.pow(e-t,2);return r?e<t?i/2:2*i:i+Math.abs(a)*a}function calculatePenalty(e,t){var a=0;return 10===e&&(a-=1e4),40!==e&&65288!==e||(a+=50),41!==t&&65289!==t||(a+=50),a}function evaluateBreak(e,t,a,r,i,n){for(var l=null,c=calculateBadness(t,a,i,n),o=0,s=r;o<s.length;o+=1){var h=s[o],g=t-h.x,u=calculateBadness(g,a,i,n)+h.badness;u<=c&&(l=h,c=u)}return{index:e,x:t,priorBreak:l,badness:c}}function leastBadBreaks(e){return e?leastBadBreaks(e.priorBreak).concat(e.index):[]}function determineLineBreaks(e,t,a,r){if(!a)return[];if(!e)return[];for(var i=[],n=determineAverageLineWidth(e,t,a,r),l=0,c=0;c<e.length;c++){var o=e.charCodeAt(c),s=r[o];s&&!whitespace[o]&&(l+=s.metrics.advance+t),c<e.length-1&&(breakable[o]||scriptDetection.charAllowsIdeographicBreaking(o))&&i.push(evaluateBreak(c+1,l,n,i,calculatePenalty(o,e.charCodeAt(c+1)),!1))}return leastBadBreaks(evaluateBreak(e.length,l,n,i,0,!0))}function getAnchorAlignment(e){var t=.5,a=.5;switch(e){case\"right\":case\"top-right\":case\"bottom-right\":t=1;break;case\"left\":case\"top-left\":case\"bottom-left\":t=0}switch(e){case\"bottom\":case\"bottom-right\":case\"bottom-left\":a=1;break;case\"top\":case\"top-right\":case\"top-left\":a=0}return{horizontalAlign:t,verticalAlign:a}}function shapeLines(e,t,a,r,i,n,l,c,o){for(var s=0,h=-17,g=0,u=e.positionedGlyphs,p=\"right\"===n?1:\"left\"===n?0:.5,b=0,v=a;b<v.length;b+=1){var d=v[b];if(d=d.trim(),d.length){for(var f=u.length,k=0;k<d.length;k++){var m=d.charCodeAt(k),x=t[m];x&&(scriptDetection.charHasUprightVerticalOrientation(m)&&l!==WritingMode.horizontal?(u.push({glyph:m,x:s,y:0,vertical:!0}),s+=o+c):(u.push({glyph:m,x:s,y:h,vertical:!1}),s+=x.metrics.advance+c))}if(u.length!==f){var A=s-c;g=Math.max(A,g),justifyLine(u,t,f,u.length-1,p)}s=0,h+=r}else h+=r}var B=getAnchorAlignment(i),y=B.horizontalAlign,w=B.verticalAlign;align(u,p,y,w,g,r,a.length);var z=a.length*r;e.top+=-w*z,e.bottom=e.top+z,e.left+=-y*g,e.right=e.left+g}function justifyLine(e,t,a,r,i){if(i){var n=t[e[r].glyph];if(n)for(var l=n.metrics.advance,c=(e[r].x+l)*i,o=a;o<=r;o++)e[o].x-=c}}function align(e,t,a,r,i,n,l){for(var c=(t-a)*i,o=(-r*l+.5)*n,s=0;s<e.length;s++)e[s].x+=c,e[s].y+=o}function shapeIcon(e,t,a){var r=getAnchorAlignment(a),i=r.horizontalAlign,n=r.verticalAlign,l=t[0],c=t[1],o=l-e.displaySize[0]*i,s=o+e.displaySize[0],h=c-e.displaySize[1]*n;return{image:e,top:h,bottom:h+e.displaySize[1],left:o,right:s}}var scriptDetection=_dereq_(\"../util/script_detection\"),verticalizePunctuation=_dereq_(\"../util/verticalize_punctuation\"),rtlTextPlugin=_dereq_(\"../source/rtl_text_plugin\"),WritingMode={horizontal:1,vertical:2};module.exports={shapeText:shapeText,shapeIcon:shapeIcon,WritingMode:WritingMode};var whitespace={};whitespace[9]=!0,whitespace[10]=!0,whitespace[11]=!0,whitespace[12]=!0,whitespace[13]=!0,whitespace[32]=!0;var breakable={};breakable[10]=!0,breakable[32]=!0,breakable[38]=!0,breakable[40]=!0,breakable[41]=!0,breakable[43]=!0,breakable[45]=!0,breakable[47]=!0,breakable[173]=!0,breakable[183]=!0,breakable[8203]=!0,breakable[8208]=!0,breakable[8211]=!0,breakable[8231]=!0;\n},{\"../source/rtl_text_plugin\":96,\"../util/script_detection\":218,\"../util/verticalize_punctuation\":225}],178:[function(_dereq_,module,exports){\n\"use strict\";function evaluateSizeForFeature(e,o,t){var i=o;return e.isFeatureConstant?i.uSize:e.isZoomConstant?t.lowerSize/10:interpolate.number(t.lowerSize/10,t.upperSize/10,i.uSizeT)}function evaluateSizeForZoom(e,o,t,i){var a={};if(e.isZoomConstant||e.isFeatureConstant)if(e.isFeatureConstant&&!e.isZoomConstant){var n;if(\"interval\"===e.functionType)n=t.getLayoutValue(i?\"text-size\":\"icon-size\",{zoom:o.zoom});else{var r=\"interval\"===e.functionType?0:interpolationFactor(o.zoom,e.functionBase,e.coveringZoomRange[0],e.coveringZoomRange[1]),u=e.coveringStopValues[0],l=e.coveringStopValues[1];n=u+(l-u)*util.clamp(r,0,1)}a.uSize=n}else e.isFeatureConstant&&e.isZoomConstant&&(a.uSize=e.layoutSize);else{var s=interpolationFactor(o.zoom,e.functionBase,e.coveringZoomRange[0],e.coveringZoomRange[1]);a.uSizeT=util.clamp(s,0,1)}return a}var interpolate=_dereq_(\"../style-spec/util/interpolate\"),ref=_dereq_(\"../style-spec/function\"),interpolationFactor=ref.interpolationFactor,util=_dereq_(\"../util/util\");module.exports={evaluateSizeForFeature:evaluateSizeForFeature,evaluateSizeForZoom:evaluateSizeForZoom};\n},{\"../style-spec/function\":112,\"../style-spec/util/interpolate\":127,\"../util/util\":223}],179:[function(_dereq_,module,exports){\n\"use strict\";var rtlTextPlugin=_dereq_(\"../source/rtl_text_plugin\");module.exports=function(e,r,t,a){var l=r.getLayoutValue(\"text-transform\",t,a);return\"uppercase\"===l?e=e.toLocaleUpperCase():\"lowercase\"===l&&(e=e.toLocaleLowerCase()),rtlTextPlugin.applyArabicShaping&&(e=rtlTextPlugin.applyArabicShaping(e)),e};\n},{\"../source/rtl_text_plugin\":96}],180:[function(_dereq_,module,exports){\n\"use strict\";var DOM=_dereq_(\"../util/dom\"),Point=_dereq_(\"@mapbox/point-geometry\"),handlers={scrollZoom:_dereq_(\"./handler/scroll_zoom\"),boxZoom:_dereq_(\"./handler/box_zoom\"),dragRotate:_dereq_(\"./handler/drag_rotate\"),dragPan:_dereq_(\"./handler/drag_pan\"),keyboard:_dereq_(\"./handler/keyboard\"),doubleClickZoom:_dereq_(\"./handler/dblclick_zoom\"),touchZoomRotate:_dereq_(\"./handler/touch_zoom_rotate\")};module.exports=function(e,t){function n(e){h(\"mouseout\",e)}function o(t){e.stop(),L=DOM.mousePos(g,t),h(\"mousedown\",t),E=!0}function r(t){var n=e.dragRotate&&e.dragRotate.isActive();p&&!n&&h(\"contextmenu\",p),p=null,E=!1,h(\"mouseup\",t)}function a(t){if(!(e.dragPan&&e.dragPan.isActive()||e.dragRotate&&e.dragRotate.isActive())){for(var n=t.toElement||t.target;n&&n!==g;)n=n.parentNode;n===g&&h(\"mousemove\",t)}}function u(t){e.stop(),f(\"touchstart\",t),!t.touches||t.touches.length>1||(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 m(e){h(\"dblclick\",e),e.preventDefault()}function v(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\",m,!1),g.addEventListener(\"contextmenu\",v,!1)};\n},{\"../util/dom\":209,\"./handler/box_zoom\":189,\"./handler/dblclick_zoom\":190,\"./handler/drag_pan\":191,\"./handler/drag_rotate\":192,\"./handler/keyboard\":193,\"./handler/scroll_zoom\":194,\"./handler/touch_zoom_rotate\":195,\"@mapbox/point-geometry\":2}],181:[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_(\"@mapbox/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())<this._bearingSnap?this.resetNorth(t,e):this},e.prototype.getPitch=function(){return this.transform.pitch},e.prototype.setPitch=function(t,e){return this.jumpTo({pitch:t},e),this},e.prototype.fitBounds=function(t,e,i){if(e=util.extend({padding:{top:0,bottom:0,right:0,left:0},offset:[0,0],maxZoom:this.transform.maxZoom},e),\"number\"==typeof e.padding){var o=e.padding;e.padding={top:o,bottom:o,right:o,left:o}}if(!util.deepEqual(Object.keys(e.padding).sort(function(t,e){return t<e?-1:t>e?1:0}),[\"bottom\",\"left\",\"right\",\"top\"]))return util.warnOnce(\"options.padding must be a positive number, or an Object with keys 'bottom', 'left', 'right', 'top'\"),this;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),m=(h.width-2*r-2*Math.abs(s.x))/c.x,f=(h.height-2*a-2*Math.abs(s.y))/c.y;return f<0||m<0?(util.warnOnce(\"Map cannot fit within canvas with the given bounds, padding, and/or offset.\"),this):(e.center=h.unproject(p.add(u).div(2)),e.zoom=Math.min(h.scaleZoom(h.scale*Math.min(m,f)),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),void 0!==t.center&&(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),!1===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),m=LngLat.convert(t.center||c);this._normalizeCenter(m);var f,g,d=o.project(c),l=o.project(m).sub(d),v=o.zoomScale(s-n);return t.around&&(f=LngLat.convert(t.around),g=o.locationPoint(f)),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)),f)o.setLocationAtPoint(f,g);else{var i=o.zoomScale(o.zoom-n),c=s>n?Math.min(2,v):Math.max(.5,v),m=Math.pow(c,1-t),b=o.unproject(d.add(l.mult(t*m)).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?util.clamp(+t.zoom,s.minZoom,s.maxZoom):h,m=\"bearing\"in t?this._normalizeBearing(t.bearing,p):p,f=\"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),Z=function(t){return n(j)/n(j+_*t)},w=function(t){return z*((n(j)*r(j+_*t)-o(j))/L)/E},P=(i(1)-j)/_;if(Math.abs(E)<1e-6||isNaN(P)){if(Math.abs(z-M)<1e-6)return this.easeTo(t,e);var q=M<z?-1:1;P=Math.abs(Math.log(M/z))/_,w=function(){return 0},Z=function(t){return Math.exp(q*_*t)}}if(\"duration\"in t)t.duration=+t.duration;else{var B=\"screenSpeed\"in t?+t.screenSpeed/_:+t.speed;t.duration=1e3*P/B}return this.zooming=!0,this.rotating=p!==m,this.pitching=f!==u,this._prepareEase(e,!1),this._ease(function(t){var i=t*P,o=1/Z(i);s.zoom=h+s.scaleZoom(o),this.rotating&&(s.bearing=interpolate(p,m,t)),this.pitching&&(s.pitch=interpolate(u,f,t));var n=s.unproject(b.add(y.mult(w(i))).mult(o));s.setLocationAtPoint(s.renderWorldCopies?n.wrap():n,d),this._fireMoveEvents(e)},function(){return a._easeToEnd(e)},t),this},e.prototype.isEasing=function(){return!!this._abortFn},e.prototype.isMoving=function(){return this.moving},e.prototype.stop=function(){return this._abortFn&&(this._abortFn(),this._finishEase()),this},e.prototype._ease=function(t,e,i){this._finishFn=e,this._abortFn=browser.timed(function(e){t.call(this,i.easing(e)),1===e&&this._finishEase()},!1===i.animate?0:i.duration,this)},e.prototype._finishEase=function(){delete this._abortFn;var t=this._finishFn;delete this._finishFn,t.call(this)},e.prototype._normalizeBearing=function(t,e){t=util.wrap(t,-180,180);var i=Math.abs(t-e);return Math.abs(t-360-e)<i&&(t-=360),Math.abs(t+360-e)<i&&(t+=360),t},e.prototype._normalizeCenter=function(t){var e=this.transform;if(e.renderWorldCopies&&!e.lngRange){var i=t.lng-e.center.lng;t.lng+=i>180?-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\":58,\"../geo/lng_lat_bounds\":59,\"../style-spec/util/interpolate\":127,\"../util/browser\":202,\"../util/evented\":210,\"../util/util\":223,\"@mapbox/point-geometry\":2}],182:[function(_dereq_,module,exports){\n\"use strict\";var DOM=_dereq_(\"../../util/dom\"),util=_dereq_(\"../../util/util\"),config=_dereq_(\"../../util/config\"),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(){DOM.remove(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(){var t=this._editLink;t||(t=this._editLink=this._container.querySelector(\".mapbox-improve-map\"));var i=[{key:\"owner\",value:this.styleOwner},{key:\"id\",value:this.styleId},{key:\"access_token\",value:config.ACCESS_TOKEN}];if(t){var o=i.reduce(function(t,o,e){return o.value&&(t+=o.key+\"=\"+o.value+(e<i.length-1?\"&\":\"\")),t},\"?\");t.href=\"https://www.mapbox.com/feedback/\"+o+(this._map._hash?this._map._hash.getHashString(!0):\"\")}},AttributionControl.prototype._updateData=function(t){t&&\"metadata\"===t.sourceDataType&&(this._updateAttributions(),this._updateEditLink())},AttributionControl.prototype._updateAttributions=function(){if(this._map.style){var t=[];if(this._map.style.stylesheet){var i=this._map.style.stylesheet;this.styleOwner=i.owner,this.styleId=i.id}var o=this._map.style.sourceCaches;for(var e in o){var n=o[e].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 e=o+1;e<t.length;e++)if(t[e].indexOf(i)>=0)return!1;return!0}),this._container.innerHTML=t.join(\" | \"),this._editLink=null}},AttributionControl.prototype._updateCompact=function(){this._map.getCanvasContainer().offsetWidth<=640?this._container.classList.add(\"mapboxgl-compact\"):this._container.classList.remove(\"mapboxgl-compact\")},module.exports=AttributionControl;\n},{\"../../util/config\":206,\"../../util/dom\":209,\"../../util/util\":223}],183:[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\"),this._className=\"mapboxgl-ctrl\"};FullscreenControl.prototype.onAdd=function(e){return this._map=e,this._mapContainer=this._map.getContainer(),this._container=DOM.create(\"div\",this._className+\" mapboxgl-ctrl-group\"),this._checkFullscreenSupport()?this._setupUI():(this._container.style.display=\"none\",util.warnOnce(\"This device does not support fullscreen mode.\")),this._container},FullscreenControl.prototype.onRemove=function(){DOM.remove(this._container),this._map=null,window.document.removeEventListener(this._fullscreenchange,this._changeIcon)},FullscreenControl.prototype._checkFullscreenSupport=function(){return!!(window.document.fullscreenEnabled||window.document.mozFullScreenEnabled||window.document.msFullscreenEnabled||window.document.webkitFullscreenEnabled)},FullscreenControl.prototype._setupUI=function(){var e=this._fullscreenButton=DOM.create(\"button\",this._className+\"-icon \"+this._className+\"-fullscreen\",this._container);e.setAttribute(\"aria-label\",\"Toggle fullscreen\"),e.type=\"button\",this._fullscreenButton.addEventListener(\"click\",this._onClickFullscreen),window.document.addEventListener(this._fullscreenchange,this._changeIcon)},FullscreenControl.prototype._isFullscreen=function(){return this._fullscreen},FullscreenControl.prototype._changeIcon=function(){(window.document.fullscreenElement||window.document.mozFullScreenElement||window.document.webkitFullscreenElement||window.document.msFullscreenElement)===this._mapContainer!==this._fullscreen&&(this._fullscreen=!this._fullscreen,this._fullscreenButton.classList.toggle(this._className+\"-shrink\"),this._fullscreenButton.classList.toggle(this._className+\"-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\":209,\"../../util/util\":223,\"../../util/window\":204}],184:[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\"),LngLat=_dereq_(\"../../geo/lng_lat\"),Marker=_dereq_(\"../marker\"),defaultOptions={positionOptions:{enableHighAccuracy:!1,timeout:6e3},fitBoundsOptions:{maxZoom:15},trackUserLocation:!1,showUserLocation:!0},className=\"mapboxgl-ctrl\",supportsGeolocation,GeolocateControl=function(t){function o(o){t.call(this),this.options=util.extend({},defaultOptions,o),util.bindAll([\"_onSuccess\",\"_onError\",\"_finish\",\"_setupUI\",\"_updateCamera\",\"_updateMarker\",\"_onClickGeolocate\"],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(){void 0!==this._geolocationWatchID&&(window.navigator.geolocation.clearWatch(this._geolocationWatchID),this._geolocationWatchID=void 0),this.options.showUserLocation&&this._userLocationDotMarker.remove(),DOM.remove(this._container),this._map=void 0},o.prototype._onSuccess=function(t){if(this.options.trackUserLocation)switch(this._lastKnownPosition=t,this._watchState){case\"WAITING_ACTIVE\":case\"ACTIVE_LOCK\":case\"ACTIVE_ERROR\":this._watchState=\"ACTIVE_LOCK\",this._geolocateButton.classList.remove(\"mapboxgl-ctrl-geolocate-waiting\"),this._geolocateButton.classList.remove(\"mapboxgl-ctrl-geolocate-active-error\"),this._geolocateButton.classList.add(\"mapboxgl-ctrl-geolocate-active\");break;case\"BACKGROUND\":case\"BACKGROUND_ERROR\":this._watchState=\"BACKGROUND\",this._geolocateButton.classList.remove(\"mapboxgl-ctrl-geolocate-waiting\"),this._geolocateButton.classList.remove(\"mapboxgl-ctrl-geolocate-background-error\"),this._geolocateButton.classList.add(\"mapboxgl-ctrl-geolocate-background\")}this.options.showUserLocation&&\"OFF\"!==this._watchState&&this._updateMarker(t),this.options.trackUserLocation&&\"ACTIVE_LOCK\"!==this._watchState||this._updateCamera(t),this.options.showUserLocation&&this._dotElement.classList.remove(\"mapboxgl-user-location-dot-stale\"),this.fire(\"geolocate\",t),this._finish()},o.prototype._updateCamera=function(t){var o=new LngLat(t.coords.longitude,t.coords.latitude),e=t.coords.accuracy;this._map.fitBounds(o.toBounds(e),this.options.fitBoundsOptions,{geolocateSource:!0})},o.prototype._updateMarker=function(t){t?this._userLocationDotMarker.setLngLat([t.coords.longitude,t.coords.latitude]).addTo(this._map):this._userLocationDotMarker.remove()},o.prototype._onError=function(t){if(this.options.trackUserLocation)if(1===t.code)this._watchState=\"OFF\",this._geolocateButton.classList.remove(\"mapboxgl-ctrl-geolocate-waiting\"),this._geolocateButton.classList.remove(\"mapboxgl-ctrl-geolocate-active\"),this._geolocateButton.classList.remove(\"mapboxgl-ctrl-geolocate-active-error\"),this._geolocateButton.classList.remove(\"mapboxgl-ctrl-geolocate-background\"),this._geolocateButton.classList.remove(\"mapboxgl-ctrl-geolocate-background-error\"),void 0!==this._geolocationWatchID&&this._clearWatch();else switch(this._watchState){case\"WAITING_ACTIVE\":this._watchState=\"ACTIVE_ERROR\",this._geolocateButton.classList.remove(\"mapboxgl-ctrl-geolocate-active\"),this._geolocateButton.classList.add(\"mapboxgl-ctrl-geolocate-active-error\");break;case\"ACTIVE_LOCK\":this._watchState=\"ACTIVE_ERROR\",this._geolocateButton.classList.remove(\"mapboxgl-ctrl-geolocate-active\"),this._geolocateButton.classList.add(\"mapboxgl-ctrl-geolocate-active-error\"),this._geolocateButton.classList.add(\"mapboxgl-ctrl-geolocate-waiting\");break;case\"BACKGROUND\":this._watchState=\"BACKGROUND_ERROR\",this._geolocateButton.classList.remove(\"mapboxgl-ctrl-geolocate-background\"),this._geolocateButton.classList.add(\"mapboxgl-ctrl-geolocate-background-error\"),this._geolocateButton.classList.add(\"mapboxgl-ctrl-geolocate-waiting\")}\"OFF\"!==this._watchState&&this.options.showUserLocation&&this._dotElement.classList.add(\"mapboxgl-user-location-dot-stale\"),this.fire(\"error\",t),this._finish()},o.prototype._finish=function(){this._timeoutId&&clearTimeout(this._timeoutId),this._timeoutId=void 0},o.prototype._setupUI=function(t){var o=this;!1!==t&&(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.trackUserLocation&&(this._geolocateButton.setAttribute(\"aria-pressed\",\"false\"),this._watchState=\"OFF\"),this.options.showUserLocation&&(this._dotElement=DOM.create(\"div\",\"mapboxgl-user-location-dot\"),this._userLocationDotMarker=new Marker(this._dotElement),this.options.trackUserLocation&&(this._watchState=\"OFF\")),this._geolocateButton.addEventListener(\"click\",this._onClickGeolocate.bind(this)),this.options.trackUserLocation&&this._map.on(\"movestart\",function(t){t.geolocateSource||\"ACTIVE_LOCK\"!==o._watchState||(o._watchState=\"BACKGROUND\",o._geolocateButton.classList.add(\"mapboxgl-ctrl-geolocate-background\"),o._geolocateButton.classList.remove(\"mapboxgl-ctrl-geolocate-active\"),o.fire(\"trackuserlocationend\"))}))},o.prototype._onClickGeolocate=function(){if(this.options.trackUserLocation){switch(this._watchState){case\"OFF\":this._watchState=\"WAITING_ACTIVE\",this.fire(\"trackuserlocationstart\");break;case\"WAITING_ACTIVE\":case\"ACTIVE_LOCK\":case\"ACTIVE_ERROR\":case\"BACKGROUND_ERROR\":this._watchState=\"OFF\",this._geolocateButton.classList.remove(\"mapboxgl-ctrl-geolocate-waiting\"),this._geolocateButton.classList.remove(\"mapboxgl-ctrl-geolocate-active\"),this._geolocateButton.classList.remove(\"mapboxgl-ctrl-geolocate-active-error\"),this._geolocateButton.classList.remove(\"mapboxgl-ctrl-geolocate-background\"),this._geolocateButton.classList.remove(\"mapboxgl-ctrl-geolocate-background-error\"),this.fire(\"trackuserlocationend\");break;case\"BACKGROUND\":this._watchState=\"ACTIVE_LOCK\",this._geolocateButton.classList.remove(\"mapboxgl-ctrl-geolocate-background\"),this._lastKnownPosition&&this._updateCamera(this._lastKnownPosition),this.fire(\"trackuserlocationstart\")}switch(this._watchState){case\"WAITING_ACTIVE\":this._geolocateButton.classList.add(\"mapboxgl-ctrl-geolocate-waiting\"),this._geolocateButton.classList.add(\"mapboxgl-ctrl-geolocate-active\");break;case\"ACTIVE_LOCK\":this._geolocateButton.classList.add(\"mapboxgl-ctrl-geolocate-active\");break;case\"ACTIVE_ERROR\":this._geolocateButton.classList.add(\"mapboxgl-ctrl-geolocate-waiting\"),this._geolocateButton.classList.add(\"mapboxgl-ctrl-geolocate-active-error\");break;case\"BACKGROUND\":this._geolocateButton.classList.add(\"mapboxgl-ctrl-geolocate-background\");break;case\"BACKGROUND_ERROR\":this._geolocateButton.classList.add(\"mapboxgl-ctrl-geolocate-waiting\"),this._geolocateButton.classList.add(\"mapboxgl-ctrl-geolocate-background-error\")}\"OFF\"===this._watchState&&void 0!==this._geolocationWatchID?this._clearWatch():void 0===this._geolocationWatchID&&(this._geolocateButton.classList.add(\"mapboxgl-ctrl-geolocate-waiting\"),this._geolocateButton.setAttribute(\"aria-pressed\",\"true\"),this._geolocationWatchID=window.navigator.geolocation.watchPosition(this._onSuccess,this._onError,this.options.positionOptions))}else window.navigator.geolocation.getCurrentPosition(this._onSuccess,this._onError,this.options.positionOptions),this._timeoutId=setTimeout(this._finish,1e4)},o.prototype._clearWatch=function(){window.navigator.geolocation.clearWatch(this._geolocationWatchID),this._geolocationWatchID=void 0,this._geolocateButton.classList.remove(\"mapboxgl-ctrl-geolocate-waiting\"),this._geolocateButton.setAttribute(\"aria-pressed\",\"false\"),this.options.showUserLocation&&this._updateMarker(null)},o}(Evented);module.exports=GeolocateControl;\n},{\"../../geo/lng_lat\":58,\"../../util/dom\":209,\"../../util/evented\":210,\"../../util/util\":223,\"../../util/window\":204,\"../marker\":198}],185:[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){this._map=o,this._container=DOM.create(\"div\",\"mapboxgl-ctrl\");var t=DOM.create(\"a\",\"mapboxgl-ctrl-logo\");return t.target=\"_blank\",t.href=\"https://www.mapbox.com/\",t.setAttribute(\"aria-label\",\"Mapbox logo\"),this._container.appendChild(t),this._container.style.display=\"none\",this._map.on(\"sourcedata\",this._updateLogo),this._updateLogo(),this._container},LogoControl.prototype.onRemove=function(){DOM.remove(this._container),this._map.off(\"sourcedata\",this._updateLogo)},LogoControl.prototype.getDefaultPosition=function(){return\"bottom-left\"},LogoControl.prototype._updateLogo=function(o){o&&\"metadata\"!==o.sourceDataType||(this._container.style.display=this._logoRequired()?\"block\":\"none\")},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;\n},{\"../../util/dom\":209,\"../../util/util\":223}],186:[function(_dereq_,module,exports){\n\"use strict\";var DOM=_dereq_(\"../../util/dom\"),util=_dereq_(\"../../util/util\"),DragRotateHandler=_dereq_(\"../handler/drag_rotate\"),NavigationControl=function(){var t=this;util.bindAll([\"_rotateCompassArrow\"],this),this._container=DOM.create(\"div\",\"mapboxgl-ctrl mapboxgl-ctrl-group\"),this._container.addEventListener(\"contextmenu\",function(t){return t.preventDefault()}),this._zoomInButton=this._createButton(\"mapboxgl-ctrl-icon mapboxgl-ctrl-zoom-in\",\"Zoom In\",function(){return t._map.zoomIn()}),this._zoomOutButton=this._createButton(\"mapboxgl-ctrl-icon mapboxgl-ctrl-zoom-out\",\"Zoom Out\",function(){return t._map.zoomOut()}),this._compass=this._createButton(\"mapboxgl-ctrl-icon mapboxgl-ctrl-compass\",\"Reset North\",function(){return t._map.resetNorth()}),this._compassArrow=DOM.create(\"span\",\"mapboxgl-ctrl-compass-arrow\",this._compass)};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._map.on(\"rotate\",this._rotateCompassArrow),this._rotateCompassArrow(),this._handler=new DragRotateHandler(t,{button:\"left\",element:this._compass,pitchWithRotate:!1}),this._handler.enable(),this._container},NavigationControl.prototype.onRemove=function(){DOM.remove(this._container),this._map.off(\"rotate\",this._rotateCompassArrow),delete this._map,this._handler.disable(),delete this._handler},NavigationControl.prototype._createButton=function(t,o,r){var e=DOM.create(\"button\",t,this._container);return e.type=\"button\",e.setAttribute(\"aria-label\",o),e.addEventListener(\"click\",r),e},module.exports=NavigationControl;\n},{\"../../util/dom\":209,\"../../util/util\":223,\"../handler/drag_rotate\":192}],187:[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 l=3.2808*a;if(l>5280){setScale(e,n,l/5280,\"mi\")}else setScale(e,n,l,\"ft\")}else if(o&&\"nautical\"===o.unit){var r=a/1852;setScale(e,n,r,\"nm\")}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=Math.PI/180,n=t.lat*o,i=e.lat*o,a=Math.sin(n)*Math.sin(i)+Math.cos(n)*Math.cos(i)*Math.cos((e.lng-t.lng)*o);return 6371e3*Math.acos(Math.min(a,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(){DOM.remove(this._container),this._map.off(\"move\",this._onMove),this._map=void 0},module.exports=ScaleControl;\n},{\"../../util/dom\":209,\"../../util/util\":223}],188:[function(_dereq_,module,exports){\n\"use strict\";\n},{}],189:[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&&(DOM.remove(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\":59,\"../../util/dom\":209,\"../../util/util\":223,\"../../util/window\":204}],190:[function(_dereq_,module,exports){\n\"use strict\";var util=_dereq_(\"../../util/util\"),DoubleClickZoomHandler=function(l){this._map=l,util.bindAll([\"_onDblClick\"],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(l){this._map.zoomTo(this._map.getZoom()+(l.originalEvent.shiftKey?-1:1),{around:l.lngLat},l)},module.exports=DoubleClickZoomHandler;\n},{\"../../util/util\":223}],191:[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;return!(!e.boxZoom||!e.boxZoom.isActive())||(!(!e.dragRotate||!e.dragRotate.isActive())||(t.touches?t.touches.length>1:!!t.ctrlKey||\"mousemove\"!==t.type&&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;\n},{\"../../util/dom\":209,\"../../util/util\":223,\"../../util/window\":204}],192:[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=e.element||t.getCanvasContainer(),this._button=e.button||\"right\",this._bearingSnap=e.bearingSnap||0,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){if(!(this._map.boxZoom&&this._map.boxZoom.isActive()||this._map.dragPan&&this._map.dragPan.isActive()||this.isActive())){if(\"right\"===this._button){var e=t.ctrlKey?0:2,i=t.button;if(void 0!==window.InstallTrigger&&2===t.button&&t.ctrlKey&&window.navigator.platform.toUpperCase().indexOf(\"MAC\")>=0&&(i=0),i!==e)return}else if(t.ctrlKey||0!==t.button)return;DOM.disableDrag(),window.document.addEventListener(\"mousemove\",this._onMove,{capture:!0}),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){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(window.document.removeEventListener(\"mousemove\",this._onMove,{capture:!0}),window.document.removeEventListener(\"mouseup\",this._onUp),window.removeEventListener(\"blur\",this._onUp),DOM.enableDrag(),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)<e._bearingSnap?i.resetNorth({noMoveStart:!0},{originalEvent:t}):(e._map.moving=!1,e._fireEvent(\"moveend\",t)),e._pitchWithRotate&&e._fireEvent(\"pitchend\",t)};if(r.length<2)return void a();var o=r[0],s=r[r.length-1],h=r[r.length-2],_=i._normalizeBearing(n,h[1]),p=s[1]-o[1],v=p<0?-1:1,d=(s[0]-o[0])/1e3;if(0===p||0===d)return void a();var l=Math.abs(p*(inertiaLinearity/d));l>inertiaMaxSpeed&&(l=inertiaMaxSpeed);var u=l/(inertiaDeceleration*inertiaLinearity);_+=v*l*(u/2),Math.abs(i._normalizeBearing(_,0))<this._bearingSnap&&(_=i._normalizeBearing(0,_)),i.rotateTo(_,{duration:1e3*u,easing:inertiaEasing,noMoveStart:!0},{originalEvent:t})}},DragRotateHandler.prototype._fireEvent=function(t,e){return this._map.fire(t,{originalEvent:e})},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;\n},{\"../../util/dom\":209,\"../../util/util\":223,\"../../util/window\":204}],193:[function(_dereq_,module,exports){\n\"use strict\";function easeOut(e){return e*(2-e)}var util=_dereq_(\"../../util/util\"),panStep=100,bearingStep=15,pitchStep=10,KeyboardHandler=function(e){this._map=e,this._el=e.getCanvasContainer(),util.bindAll([\"_onKeyDown\"],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(),l={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(l,{originalEvent:e})}},module.exports=KeyboardHandler;\n},{\"../../util/util\":223}],194:[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=-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=0;\"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\":202,\"../../util/dom\":209,\"../../util/util\":223,\"../../util/window\":204}],195:[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=10,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;Math.abs(r)>significantRotateThreshold?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();t.length>2&&e-t[0][0]>160;)t.shift()},module.exports=TouchZoomRotateHandler;\n},{\"../../util/dom\":209,\"../../util/util\":223,\"../../util/window\":204}],196:[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.getHashString=function(t){var a=this._map.getCenter(),h=Math.round(100*this._map.getZoom())/100,e=Math.max(0,Math.ceil(Math.log(h)/Math.LN2)),n=Math.round(a.lng*Math.pow(10,e))/Math.pow(10,e),o=Math.round(a.lat*Math.pow(10,e))/Math.pow(10,e),i=this._map.getBearing(),s=this._map.getPitch(),r=\"\";return r+=t?\"#/\"+n+\"/\"+o+\"/\"+h:\"#\"+h+\"/\"+o+\"/\"+n,(i||s)&&(r+=\"/\"+Math.round(10*i)/10),s&&(r+=\"/\"+Math.round(s)),r},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.getHashString();window.history.replaceState(\"\",\"\",t)},module.exports=Hash;\n},{\"../util/util\":223,\"../util/window\":204}],197:[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\"),ref=_dereq_(\"../util/window\"),HTMLImageElement=ref.HTMLImageElement,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_(\"@mapbox/point-geometry\"),AttributionControl=_dereq_(\"./control/attribution_control\"),LogoControl=_dereq_(\"./control/logo_control\"),isSupported=_dereq_(\"mapbox-gl-supported\");_dereq_(\"./events\");var 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,maxTileCacheSize:null,transformRequest:null},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 r=new Transform(e.minZoom,e.maxZoom,e.renderWorldCopies);t.call(this,r,e),this._interactive=e.interactive,this._maxTileCacheSize=e.maxTileCacheSize,this._failIfMajorPerformanceCaveat=e.failIfMajorPerformanceCaveat,this._preserveDrawingBuffer=e.preserveDrawingBuffer,this._trackResize=e.trackResize,this._bearingSnap=e.bearingSnap,this._refreshExpiredTiles=e.refreshExpiredTiles;var i=e.transformRequest;if(this._transformRequest=i?function(t,e){return i(t,e)||{url:t}}:function(t){return{url:t}},\"string\"==typeof e.container){var s=window.document.getElementById(e.container);if(!s)throw new Error(\"Container '\"+e.container+\"' not found.\");this._container=s}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,{localIdeographFontFamily:e.localIdeographFontFamily}),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),r=this._controlPositions[e];return-1!==e.indexOf(\"bottom\")?r.insertBefore(o,r.firstChild):r.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={},r=0;r<t.length;r++)\"\"!==t[r]&&(o[t[r]]=!0);return this._classes=Object.keys(o),this._classOptions=e,this.style&&this.style.updateClasses(),this._update(!0)},e.prototype.hasClass=function(t){return util.warnOnce(\"Style classes are deprecated and will be removed in an upcoming release of Mapbox GL JS.\"),this._classes.indexOf(t)>=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.getMaxBounds=function(){return this.transform.latRange&&2===this.transform.latRange.length&&this.transform.lngRange&&2===this.transform.lngRange.length?new LngLatBounds([this.transform.lngRange[0],this.transform.latRange[0]],[this.transform.lngRange[1],this.transform.latRange[1]]):null},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=null,this.transform.latRange=null,this._update());return this},e.prototype.setMinZoom=function(t){if((t=null===t||void 0===t?defaultMinZoom:t)>=defaultMinZoom&&t<=this.transform.maxZoom)return this.transform.minZoom=t,this._update(),this.getZoom()<t&&this.setZoom(t),this;throw new Error(\"minZoom must be between \"+defaultMinZoom+\" and the current maxZoom, inclusive\")},e.prototype.getMinZoom=function(){return this.transform.minZoom},e.prototype.setMaxZoom=function(t){if((t=null===t||void 0===t?defaultMaxZoom:t)>=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,r){var i=this;if(void 0===r)return t.prototype.on.call(this,e,o);var s=function(){if(\"mouseenter\"===e||\"mouseover\"===e){var t=!1;return{layer:o,listener:r,delegates:{mousemove:function(s){var n=i.getLayer(o)?i.queryRenderedFeatures(s.point,{layers:[o]}):[];n.length?t||(t=!0,r.call(i,util.extend({features:n},s,{type:e}))):t=!1},mouseout:function(){t=!1}}}}if(\"mouseleave\"===e||\"mouseout\"===e){var s=!1;return{layer:o,listener:r,delegates:{mousemove:function(t){(i.getLayer(o)?i.queryRenderedFeatures(t.point,{layers:[o]}):[]).length?s=!0:s&&(s=!1,r.call(i,util.extend({},t,{type:e})))},mouseout:function(t){s&&(s=!1,r.call(i,util.extend({},t,{type:e})))}}}}var n=function(t){var e=i.getLayer(o)?i.queryRenderedFeatures(t.point,{layers:[o]}):[];e.length&&r.call(i,util.extend({features:e},t))};return{layer:o,listener:r,delegates:(a={},a[e]=n,a)};var a}();this._delegatedListeners=this._delegatedListeners||{},this._delegatedListeners[e]=this._delegatedListeners[e]||[],this._delegatedListeners[e].push(s);for(var n in s.delegates)i.on(n,s.delegates[n]);return this},e.prototype.off=function(e,o,r){var i=this;if(void 0===r)return t.prototype.off.call(this,e,o);if(this._delegatedListeners&&this._delegatedListeners[e])for(var s=this._delegatedListeners[e],n=0;n<s.length;n++){var a=s[n];if(a.layer===o&&a.listener===r){for(var h in a.delegates)i.off(h,a.delegates[h]);return s.splice(n,1),i}}return this},e.prototype.queryRenderedFeatures=function(){for(var t=[],e=arguments.length;e--;)t[e]=arguments[e];var o,r={};return 2===t.length?(o=arguments[0],r=arguments[1]):1===t.length&&function(t){return t instanceof Point||Array.isArray(t)}(t[0])?o=t[0]:1===t.length&&(r=t[0]),this.style?this.style.queryRenderedFeatures(this._makeQueryGeometry(o),r,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;if(t instanceof Point||\"number\"==typeof t[0]){o=[Point.convert(t)]}else{var r=[Point.convert(t[0]),Point.convert(t[1])];o=[r[0],new Point(r[1].x,r[0].y),r[1],new Point(r[0].x,r[1].y),r[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){if((!e||!1!==e.diff&&!e.localIdeographFontFamily)&&this.style&&t&&!(t instanceof Style)&&\"string\"!=typeof t)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),this.off(\"move\",this.style._redoPlacement)),t?(this.style=t instanceof Style?t:new Style(t,this,e||{}),this.style.setEventedParent(this,{style:this.style}),this.on(\"rotate\",this.style._redoPlacement),this.on(\"pitch\",this.style._redoPlacement),this.on(\"move\",this.style._redoPlacement),this):(this.style=null,this)},e.prototype.getStyle=function(){if(this.style)return this.style.serialize()},e.prototype.isStyleLoaded=function(){return this.style?this.style.loaded():util.warnOnce(\"There is no style added to the map.\")},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.areTilesLoaded=function(){var t=this.style&&this.style.sourceCaches;for(var e in t){var o=t[e],r=o._tiles;for(var i in r){var s=r[i];if(\"loaded\"!==s.state&&\"errored\"!==s.state)return!1}}return!0},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){void 0===o&&(o={});var r=o.pixelRatio;void 0===r&&(r=1);var i=o.sdf;if(void 0===i&&(i=!1),e instanceof HTMLImageElement)e=browser.getImageData(e);else if(void 0===e.width||void 0===e.height)return this.fire(\"error\",{error:new Error(\"Invalid arguments to map.addImage(). The second argument must be an `HTMLImageElement`, `ImageData`, or object with `width`, `height`, and `data` properties with the same format as `ImageData`\")});this.style.addImage(t,{data:e,pixelRatio:r,sdf:i})},e.prototype.removeImage=function(t){this.style.removeImage(t)},e.prototype.loadImage=function(t,e){ajax.getImage(this._transformRequest(t,ajax.ResourceType.Image),e)},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,r){return this.style.setPaintProperty(t,e,o,r),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 r=this._controlContainer=DOM.create(\"div\",\"mapboxgl-control-container\",t),i=this._controlPositions={};[\"top-left\",\"top-right\",\"bottom-left\",\"bottom-right\"].forEach(function(t){i[t]=DOM.create(\"div\",\"mapboxgl-ctrl-\"+t,r)})},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);if(!e)return void this.fire(\"error\",{error:new Error(\"Failed to initialize WebGL\")});this.painter=new Painter(e,this.transform)},e.prototype._contextLost=function(t){t.preventDefault(),this._frameId&&(browser.cancelFrame(this._frameId),this._frameId=null),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._frameId=null,this.setStyle(null),void 0!==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\":58,\"../geo/lng_lat_bounds\":59,\"../geo/transform\":60,\"../render/painter\":79,\"../style/animation_loop\":150,\"../style/style\":156,\"../util/ajax\":201,\"../util/browser\":202,\"../util/dom\":209,\"../util/util\":223,\"../util/window\":204,\"./bind_handlers\":180,\"./camera\":181,\"./control/attribution_control\":182,\"./control/logo_control\":185,\"./events\":188,\"./hash\":196,\"@mapbox/point-geometry\":2,\"mapbox-gl-supported\":28}],198:[function(_dereq_,module,exports){\n\"use strict\";var DOM=_dereq_(\"../util/dom\"),LngLat=_dereq_(\"../geo/lng_lat\"),Point=_dereq_(\"@mapbox/point-geometry\"),smartWrap=_dereq_(\"../util/smart_wrap\"),ref=_dereq_(\"../util/util\"),bindAll=ref.bindAll,Marker=function(t,e){this._offset=Point.convert(e&&e.offset||[0,0]),bindAll([\"_update\",\"_onMapClick\"],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),delete this._map),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._pos=null,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&&(\"offset\"in t.options||(t.options.offset=this._offset),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;return t?(t.isOpen()?t.remove():t.addTo(this._map),this):this},Marker.prototype._update=function(t){this._map&&(this._map.transform.renderWorldCopies&&(this._lngLat=smartWrap(this._lngLat,this._pos,this._map.transform)),this._pos=this._map.project(this._lngLat)._add(this._offset),t&&\"moveend\"!==t.type||(this._pos=this._pos.round()),DOM.setTransform(this._element,\"translate(-50%, -50%) translate(\"+this._pos.x+\"px, \"+this._pos.y+\"px)\"))},module.exports=Marker;\n},{\"../geo/lng_lat\":58,\"../util/dom\":209,\"../util/smart_wrap\":219,\"../util/util\":223,\"@mapbox/point-geometry\":2}],199:[function(_dereq_,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(t instanceof Point||Array.isArray(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))}var util=_dereq_(\"../util/util\"),Evented=_dereq_(\"../util/evented\"),DOM=_dereq_(\"../util/dom\"),LngLat=_dereq_(\"../geo/lng_lat\"),Point=_dereq_(\"@mapbox/point-geometry\"),window=_dereq_(\"../util/window\"),smartWrap=_dereq_(\"../util/smart_wrap\"),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&&DOM.remove(this._content),this._container&&(DOM.remove(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._pos=null,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))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&&DOM.remove(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.setAttribute(\"aria-label\",\"Close popup\"),this._closeButton.innerHTML=\"&#215;\",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)),this._map.transform.renderWorldCopies&&(this._lngLat=smartWrap(this._lngLat,this._pos,this._map.transform));var t=this._pos=this._map.project(this._lngLat),o=this.options.anchor,e=normalizeOffset(this.options.offset);if(!o){var n=this._container.offsetWidth,i=this._container.offsetHeight;o=t.y+e.bottom.y<i?[\"top\"]:t.y>this._map.transform.height-i?[\"bottom\"]:[],t.x<n/2?o.push(\"left\"):t.x>this._map.transform.width-n/2&&o.push(\"right\"),o=0===o.length?\"bottom\":o.join(\"-\")}var r=t.add(e[o]).round(),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-\"+o),DOM.setTransform(this._container,s[o]+\" translate(\"+r.x+\"px,\"+r.y+\"px)\")}},o.prototype._onClickClose=function(){this.remove()},o}(Evented);module.exports=Popup;\n},{\"../geo/lng_lat\":58,\"../util/dom\":209,\"../util/evented\":210,\"../util/smart_wrap\":219,\"../util/util\":223,\"../util/window\":204,\"@mapbox/point-geometry\":2}],200:[function(_dereq_,module,exports){\n\"use strict\";var util=_dereq_(\"./util\"),Actor=function(t,e,r){this.target=t,this.parent=e,this.mapId=r,this.callbacks={},this.callbackID=0,util.bindAll([\"receive\"],this),this.target.addEventListener(\"message\",this.receive,!1)};Actor.prototype.send=function(t,e,r,a,i){var s=r?this.mapId+\":\"+this.callbackID++:null;r&&(this.callbacks[s]=r),this.target.postMessage({targetMapId:i,sourceMapId:this.mapId,type:t,id:String(s),data:e},a)},Actor.prototype.receive=function(t){var e,r=this,a=t.data,i=a.id;if(!a.targetMapId||this.mapId===a.targetMapId){var s=function(t,e,a){r.target.postMessage({sourceMapId:r.mapId,type:\"<response>\",id:String(i),error:t?String(t):null,data:e},a)};if(\"<response>\"===a.type)e=this.callbacks[a.id],delete this.callbacks[a.id],e&&a.error?e(new Error(a.error)):e&&e(null,a.data);else if(void 0!==a.id&&this.parent[a.type])this.parent[a.type](a.sourceMapId,a.data,s);else if(void 0!==a.id&&this.parent.getWorkerSource){var o=a.type.split(\".\"),p=this.parent.getWorkerSource(a.sourceMapId,o[0]);p[o[1]](a.data,s)}else this.parent[a.type](a.data)}},Actor.prototype.remove=function(){this.target.removeEventListener(\"message\",this.receive,!1)},module.exports=Actor;\n},{\"./util\":223}],201:[function(_dereq_,module,exports){\n\"use strict\";function makeRequest(e){var t=new window.XMLHttpRequest;t.open(\"GET\",e.url,!0);for(var r in e.headers)t.setRequestHeader(r,e.headers[r]);return t.withCredentials=\"include\"===e.credentials,t}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\"),ResourceType={Unknown:\"Unknown\",Style:\"Style\",Source:\"Source\",Tile:\"Tile\",Glyphs:\"Glyphs\",SpriteImage:\"SpriteImage\",SpriteJSON:\"SpriteJSON\",Image:\"Image\"};exports.ResourceType=ResourceType,\"function\"==typeof Object.freeze&&Object.freeze(ResourceType);var 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=makeRequest(e);return r.setRequestHeader(\"Accept\",\"application/json\"),r.onerror=function(){t(new Error(r.statusText))},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=makeRequest(e);return r.responseType=\"arraybuffer\",r.onerror=function(){t(new Error(r.statusText))},r.onload=function(){var e=r.response;if(0===e.byteLength&&200===r.status)return t(new Error(\"http status 200 returned without content.\"));r.status>=200&&r.status<300&&r.response?t(null,{data:e,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)t(e);else if(r){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<e.length;n++){var o=window.document.createElement(\"source\");sameOrigin(e[n])||(r.crossOrigin=\"Anonymous\"),o.src=e[n],r.appendChild(o)}return r};\n},{\"./window\":204}],202:[function(_dereq_,module,exports){\n\"use strict\";var window=_dereq_(\"./window\"),now=window.performance&&window.performance.now?window.performance.now.bind(window.performance):Date.now.bind(Date),frame=window.requestAnimationFrame||window.mozRequestAnimationFrame||window.webkitRequestAnimationFrame||window.msRequestAnimationFrame,cancel=window.cancelAnimationFrame||window.mozCancelAnimationFrame||window.webkitCancelAnimationFrame||window.msCancelAnimationFrame;module.exports={now:now,frame:function(e){return frame(e)},cancelFrame:function(e){return cancel(e)},timed:function(e,n,t){function a(){if(!i){var r=now();r>=o+n?e.call(t,1):(e.call(t,(r-o)/n),frame(a))}}if(!n)return e.call(t,1),null;var i=!1,o=now();return frame(a),function(){i=!0}},getImageData:function(e){var n=window.document.createElement(\"canvas\"),t=n.getContext(\"2d\");if(!t)throw new Error(\"failed to create canvas 2d context\");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)},hardwareConcurrency:window.navigator.hardwareConcurrency||4,get devicePixelRatio(){return window.devicePixelRatio},supportsWebp:!1};var webpImgTest=window.document.createElement(\"img\");webpImgTest.onload=function(){module.exports.supportsWebp=!0},webpImgTest.src=\"data:image/webp;base64,UklGRh4AAABXRUJQVlA4TBEAAAAvAQAAAAfQ//73v/+BiOh/AAA=\";\n},{\"./window\":204}],203:[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\":105,\"../window\":204,\"webworkify\":39}],204:[function(_dereq_,module,exports){\n\"use strict\";module.exports=self;\n},{}],205:[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;i<a;i++){var l=calculateSignedArea(e[i]);0!==l&&(e[i].area=Math.abs(l),void 0===u&&(u=l<0),u===l<0?(t&&c.push(t),t=[e[i]]):t.push(e[i]))}if(t&&c.push(t),r>1)for(var n=0;n<c.length;n++)c[n].length<=r||(quickselect(c[n],r,1,c[n].length-1,compareAreas),c[n]=c[n].slice(0,r));return c};\n},{\"./util\":223,\"quickselect\":31}],206:[function(_dereq_,module,exports){\n\"use strict\";var config={API_URL:\"https://api.mapbox.com\",REQUIRE_ACCESS_TOKEN:!0,ACCESS_TOKEN:null};module.exports=config;\n},{}],207:[function(_dereq_,module,exports){\n\"use strict\";var DictionaryCoder=function(r){var t=this;this._stringToNumber={},this._numberToString=[];for(var o=0;o<r.length;o++){var i=r[o];t._stringToNumber[i]=o,t._numberToString[o]=i}};DictionaryCoder.prototype.encode=function(r){return this._stringToNumber[r]},DictionaryCoder.prototype.decode=function(r){return this._numberToString[r]},module.exports=DictionaryCoder;\n},{}],208:[function(_dereq_,module,exports){\n\"use strict\";var util=_dereq_(\"./util\"),Actor=_dereq_(\"./actor\"),Dispatcher=function(t,r){var o=this;this.workerPool=t,this.actors=[],this.currentActor=0,this.id=util.uniqueId();for(var i=this.workerPool.acquire(this.id),e=0;e<i.length;e++){var s=i[e],c=new Actor(s,r,o.id);c.name=\"Worker \"+e,o.actors.push(c)}};Dispatcher.prototype.broadcast=function(t,r,o){o=o||function(){},util.asyncAll(this.actors,function(o,i){o.send(t,r,i)},o)},Dispatcher.prototype.send=function(t,r,o,i,e){return(\"number\"!=typeof i||isNaN(i))&&(i=this.currentActor=(this.currentActor+1)%this.actors.length),this.actors[i].send(t,r,o,e),i},Dispatcher.prototype.remove=function(){this.actors.forEach(function(t){t.remove()}),this.actors=[],this.workerPool.release(this.id)},module.exports=Dispatcher;\n},{\"./actor\":200,\"./util\":223}],209:[function(_dereq_,module,exports){\n\"use strict\";function testProp(e){for(var t=0;t<e.length;t++)if(e[t]in docStyle)return e[t];return e[0]}var Point=_dereq_(\"@mapbox/point-geometry\"),window=_dereq_(\"./window\");exports.create=function(e,t,o){var n=window.document.createElement(e);return t&&(n.className=t),o&&o.appendChild(n),n};var docStyle=window.document.documentElement.style,selectProp=testProp([\"userSelect\",\"MozUserSelect\",\"WebkitUserSelect\",\"msUserSelect\"]),userSelect;exports.disableDrag=function(){selectProp&&(userSelect=docStyle[selectProp],docStyle[selectProp]=\"none\")},exports.enableDrag=function(){selectProp&&(docStyle[selectProp]=userSelect)};var transformProp=testProp([\"transform\",\"WebkitTransform\"]);exports.setTransform=function(e,t){e.style[transformProp]=t};var suppressClick=function(e){e.preventDefault(),e.stopPropagation(),window.removeEventListener(\"click\",suppressClick,!0)};exports.suppressClick=function(){window.addEventListener(\"click\",suppressClick,!0),window.setTimeout(function(){window.removeEventListener(\"click\",suppressClick,!0)},0)},exports.mousePos=function(e,t){var o=e.getBoundingClientRect();return t=t.touches?t.touches[0]:t,new Point(t.clientX-o.left-e.clientLeft,t.clientY-o.top-e.clientTop)},exports.touchPos=function(e,t){for(var o=e.getBoundingClientRect(),n=[],r=\"touchend\"===t.type?t.changedTouches:t.touches,s=0;s<r.length;s++)n.push(new Point(r[s].clientX-o.left-e.clientLeft,r[s].clientY-o.top-e.clientTop));return n},exports.remove=function(e){e.parentNode&&e.parentNode.removeChild(e)};\n},{\"./window\":204,\"@mapbox/point-geometry\":2}],210:[function(_dereq_,module,exports){\n\"use strict\";function _addEventListener(e,t,n){n[e]=n[e]||[],n[e].push(t)}function _removeEventListener(e,t,n){if(n&&n[e]){var i=n[e].indexOf(t);-1!==i&&n[e].splice(i,1)}}var util=_dereq_(\"./util\"),Evented=function(){};Evented.prototype.on=function(e,t){return this._listeners=this._listeners||{},_addEventListener(e,t,this._listeners),this},Evented.prototype.off=function(e,t){return _removeEventListener(e,t,this._listeners),_removeEventListener(e,t,this._oneTimeListeners),this},Evented.prototype.once=function(e,t){return this._oneTimeListeners=this._oneTimeListeners||{},_addEventListener(e,t,this._oneTimeListeners),this},Evented.prototype.fire=function(e,t){var n=this;if(this.listens(e)){t=util.extend({},t,{type:e,target:this});for(var i=this._listeners&&this._listeners[e]?this._listeners[e].slice():[],s=0;s<i.length;s++)i[s].call(n,t);for(var r=this._oneTimeListeners&&this._oneTimeListeners[e]?this._oneTimeListeners[e].slice():[],o=0;o<r.length;o++)r[o].call(n,t),_removeEventListener(e,r[o],n._oneTimeListeners);this._eventedParent&&this._eventedParent.fire(e,util.extend({},t,\"function\"==typeof this._eventedParentData?this._eventedParentData():this._eventedParentData))}else util.endsWith(e,\"error\")&&console.error(t&&t.error||t||\"Empty error event\");return this},Evented.prototype.listens=function(e){return this._listeners&&this._listeners[e]&&this._listeners[e].length>0||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\":223}],211:[function(_dereq_,module,exports){\n\"use strict\";function compareMax(e,t){return t.max-e.max}function Cell(e,t,n,o){this.p=new Point(e,t),this.h=n,this.d=pointToPolygonDist(this.p,o),this.max=this.d+this.h*Math.SQRT2}function pointToPolygonDist(e,t){for(var n=!1,o=1/0,r=0;r<t.length;r++)for(var i=t[r],l=0,u=i.length,a=u-1;l<u;a=l++){var s=i[l],p=i[a];s.y>e.y!=p.y>e.y&&e.x<(p.x-s.x)*(e.y-s.y)/(p.y-s.y)+s.x&&(n=!n),o=Math.min(o,distToSegmentSquared(e,s,p))}return(n?1:-1)*Math.sqrt(o)}function getCentroidCell(e){for(var t=0,n=0,o=0,r=e[0],i=0,l=r.length,u=l-1;i<l;u=i++){var a=r[i],s=r[u],p=a.x*s.y-s.x*a.y;n+=(a.x+s.x)*p,o+=(a.y+s.y)*p,t+=3*p}return new Cell(n/t,o/t,0,e)}var Queue=_dereq_(\"tinyqueue\"),Point=_dereq_(\"@mapbox/point-geometry\"),distToSegmentSquared=_dereq_(\"./intersection_tests\").distToSegmentSquared;module.exports=function(e,t,n){void 0===t&&(t=1),void 0===n&&(n=!1);for(var o=1/0,r=1/0,i=-1/0,l=-1/0,u=e[0],a=0;a<u.length;a++){var s=u[a];(!a||s.x<o)&&(o=s.x),(!a||s.y<r)&&(r=s.y),(!a||s.x>i)&&(i=s.x),(!a||s.y>l)&&(l=s.y)}var p=i-o,h=l-r,d=Math.min(p,h),x=d/2,y=new Queue(null,compareMax);if(0===d)return new Point(o,r);for(var g=o;g<i;g+=d)for(var f=r;f<l;f+=d)y.push(new Cell(g+x,f+x,x,e));for(var m=getCentroidCell(e),v=y.length;y.length;){var c=y.pop();(c.d>m.d||!m.d)&&(m=c,n&&console.log(\"found best %d after %d probes\",Math.round(1e4*c.d)/1e4,v)),c.max-m.d<=t||(x=c.h/2,y.push(new Cell(c.p.x-x,c.p.y-x,x,e)),y.push(new Cell(c.p.x+x,c.p.y-x,x,e)),y.push(new Cell(c.p.x-x,c.p.y+x,x,e)),y.push(new Cell(c.p.x+x,c.p.y+x,x,e)),v+=4)}return n&&(console.log(\"num probes: \"+v),console.log(\"best distance: \"+m.d)),m.p};\n},{\"./intersection_tests\":214,\"@mapbox/point-geometry\":2,\"tinyqueue\":33}],212:[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\":226}],213:[function(_dereq_,module,exports){\n\"use strict\";function createImage(e,t,i){var h=e.width,a=e.height;if(i){if(i.length!==h*a*t)throw new RangeError(\"mismatched image size\")}else i=new Uint8Array(h*a*t);return{width:h,height:a,data:i}}function resizeImage(e,t,i){var h=t.width,a=t.height;if(h===e.width&&a===e.height)return e;var r=createImage({width:h,height:a},i);copyImage(e,r,{x:0,y:0},{x:0,y:0},{width:Math.min(e.width,h),height:Math.min(e.height,a)},i),e.width=h,e.height=a,e.data=r.data}function copyImage(e,t,i,h,a,r){if(0===a.width||0===a.height)return t;if(a.width>e.width||a.height>e.height||i.x>e.width-a.width||i.y>e.height-a.height)throw new RangeError(\"out of range source coordinates for image copy\");if(a.width>t.width||a.height>t.height||h.x>t.width-a.width||h.y>t.height-a.height)throw new RangeError(\"out of range destination coordinates for image copy\");for(var g=e.data,n=t.data,o=0;o<a.height;o++)for(var m=((i.y+o)*e.width+i.x)*r,c=((h.y+o)*t.width+h.x)*r,d=0;d<a.width*r;d++)n[c+d]=g[m+d];return t}var AlphaImage=function(){};AlphaImage.create=function(e,t){return createImage(e,1,t)},AlphaImage.resize=function(e,t){resizeImage(e,t,1)},AlphaImage.copy=function(e,t,i,h,a){copyImage(e,t,i,h,a,1)};var RGBAImage=function(){};RGBAImage.create=function(e,t){return createImage(e,4,t)},RGBAImage.resize=function(e,t){resizeImage(e,t,4)},RGBAImage.copy=function(e,t,i,h,a){copyImage(e,t,i,h,a,4)},module.exports={AlphaImage:AlphaImage,RGBAImage:RGBAImage};\n},{}],214:[function(_dereq_,module,exports){\n\"use strict\";function polygonIntersectsPolygon(n,t){for(var e=0;e<n.length;e++)if(polygonContainsPoint(t,n[e]))return!0;for(var r=0;r<t.length;r++)if(polygonContainsPoint(n,t[r]))return!0;return!!lineIntersectsLine(n,t)}function multiPolygonIntersectsBufferedMultiPoint(n,t,e){for(var r=0;r<n.length;r++)for(var o=n[r],i=0;i<t.length;i++)for(var l=t[i],u=0;u<l.length;u++){var s=l[u];if(polygonContainsPoint(o,s))return!0;if(pointIntersectsBufferedLine(s,o,e))return!0}return!1}function multiPolygonIntersectsMultiPolygon(n,t){if(1===n.length&&1===n[0].length)return multiPolygonContainsPoint(t,n[0][0]);for(var e=0;e<t.length;e++)for(var r=t[e],o=0;o<r.length;o++)if(multiPolygonContainsPoint(n,r[o]))return!0;for(var i=0;i<n.length;i++){for(var l=n[i],u=0;u<l.length;u++)if(multiPolygonContainsPoint(t,l[u]))return!0;for(var s=0;s<t.length;s++)if(lineIntersectsLine(l,t[s]))return!0}return!1}function multiPolygonIntersectsBufferedMultiLine(n,t,e){for(var r=0;r<t.length;r++)for(var o=t[r],i=0;i<n.length;i++){var l=n[i];if(l.length>=3)for(var u=0;u<o.length;u++)if(polygonContainsPoint(l,o[u]))return!0;if(lineIntersectsBufferedLine(l,o,e))return!0}return!1}function lineIntersectsBufferedLine(n,t,e){if(n.length>1){if(lineIntersectsLine(n,t))return!0;for(var r=0;r<t.length;r++)if(pointIntersectsBufferedLine(t[r],n,e))return!0}for(var o=0;o<n.length;o++)if(pointIntersectsBufferedLine(n[o],t,e))return!0;return!1}function lineIntersectsLine(n,t){if(0===n.length||0===t.length)return!1;for(var e=0;e<n.length-1;e++)for(var r=n[e],o=n[e+1],i=0;i<t.length-1;i++){var l=t[i],u=t[i+1];if(lineSegmentIntersectsLineSegment(r,o,l,u))return!0}return!1}function lineSegmentIntersectsLineSegment(n,t,e,r){return isCounterClockwise(n,e,r)!==isCounterClockwise(t,e,r)&&isCounterClockwise(n,t,e)!==isCounterClockwise(n,t,r)}function pointIntersectsBufferedLine(n,t,e){var r=e*e;if(1===t.length)return n.distSqr(t[0])<r;for(var o=1;o<t.length;o++){if(distToSegmentSquared(n,t[o-1],t[o])<r)return!0}return!1}function distToSegmentSquared(n,t,e){var r=t.distSqr(e);if(0===r)return n.distSqr(t);var o=((n.x-t.x)*(e.x-t.x)+(n.y-t.y)*(e.y-t.y))/r;return o<0?n.distSqr(t):o>1?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;l<n.length;l++){e=n[l];for(var u=0,s=e.length-1;u<e.length;s=u++)r=e[u],o=e[s],r.y>t.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;r<n.length;o=r++){var i=n[r],l=n[o];i.y>t.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 ref=_dereq_(\"./util\"),isCounterClockwise=ref.isCounterClockwise;module.exports={multiPolygonIntersectsBufferedMultiPoint:multiPolygonIntersectsBufferedMultiPoint,multiPolygonIntersectsMultiPolygon:multiPolygonIntersectsMultiPolygon,multiPolygonIntersectsBufferedMultiLine:multiPolygonIntersectsBufferedMultiLine,polygonIntersectsPolygon:polygonIntersectsPolygon,distToSegmentSquared:distToSegmentSquared};\n},{\"./util\":223}],215:[function(_dereq_,module,exports){\n\"use strict\";var unicodeBlockLookup={\"Latin-1 Supplement\":function(n){return n>=128&&n<=255},Arabic:function(n){return n>=1536&&n<=1791},\"Arabic Supplement\":function(n){return n>=1872&&n<=1919},\"Arabic Extended-A\":function(n){return n>=2208&&n<=2303},\"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},\"Arabic Presentation Forms-A\":function(n){return n>=64336&&n<=65023},\"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},\"Arabic Presentation Forms-B\":function(n){return n>=65136&&n<=65279},\"Halfwidth and Fullwidth Forms\":function(n){return n>=65280&&n<=65519}};module.exports=unicodeBlockLookup;\n},{}],216:[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){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;\n},{}],217:[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,\"/\"!==t.path&&(r.path=\"\"+t.path+r.path),!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<r.length;e++)0===r[e].indexOf(\"access_token=tk.\")&&(r[e]=\"access_token=\"+(config.ACCESS_TOKEN||\"\"))}function parseUrl(r){var e=r.match(urlRe);if(!e)throw new Error(\"Unable to parse URL object\");return{protocol:e[1],authority:e[2],path:e[3]||\"/\",params:e[4]?e[4].split(\"&\"):[]}}function formatUrl(r){var e=r.params.length?\"?\"+r.params.join(\"&\"):\"\";return r.protocol+\"://\"+r.authority+r.path+e}var config=_dereq_(\"./config\"),browser=_dereq_(\"./browser\"),help=\"See https://www.mapbox.com/api-documentation/#access-tokens\";exports.isMapboxURL=isMapboxURL,exports.normalizeStyleURL=function(r,e){if(!isMapboxURL(r))return r;var t=parseUrl(r);return t.path=\"/styles/v1\"+t.path,makeAPIURL(t,e)},exports.normalizeGlyphsURL=function(r,e){if(!isMapboxURL(r))return r;var t=parseUrl(r);return t.path=\"/fonts/v1\"+t.path,makeAPIURL(t,e)},exports.normalizeSourceURL=function(r,e){if(!isMapboxURL(r))return r;var t=parseUrl(r);return t.path=\"/v4/\"+t.authority+\".json\",t.params.push(\"secure\"),makeAPIURL(t,e)},exports.normalizeSpriteURL=function(r,e,t,a){var o=parseUrl(r);return isMapboxURL(r)?(o.path=\"/styles/v1\"+o.path+\"/sprite\"+e+t,makeAPIURL(o,a)):(o.path+=\"\"+e+t,formatUrl(o))};var imageExtensionRe=/(\\.(png|jpg)\\d*)(?=$)/;exports.normalizeTileURL=function(r,e,t){if(!e||!isMapboxURL(e))return r;var a=parseUrl(r),o=browser.devicePixelRatio>=2||512===t?\"@2x\":\"\",p=browser.supportsWebp?\".webp\":\"$1\";return a.path=a.path.replace(imageExtensionRe,\"\"+o+p),replaceTempAccessToken(a.params),formatUrl(a)};var urlRe=/^(\\w+):\\/\\/([^\\/?]*)(\\/[^?]+)?\\??(.+)?/;\n},{\"./browser\":202,\"./config\":206}],218:[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<r.length;i+=1){var s=r[i];if(!exports.charAllowsIdeographicBreaking(s.charCodeAt(0)))return!1}return!0},module.exports.allowsVerticalWritingMode=function(a){for(var i=0,r=a;i<r.length;i+=1){var s=r[i];if(exports.charHasUprightVerticalOrientation(s.charCodeAt(0)))return!0}return!1},module.exports.allowsLetterSpacing=function(a){for(var i=0,r=a;i<r.length;i+=1){var s=r[i];if(!exports.charAllowsLetterSpacing(s.charCodeAt(0)))return!1}return!0},module.exports.charAllowsLetterSpacing=function(a){return!isChar.Arabic(a)&&(!isChar[\"Arabic Supplement\"](a)&&(!isChar[\"Arabic Extended-A\"](a)&&(!isChar[\"Arabic Presentation Forms-A\"](a)&&!isChar[\"Arabic Presentation Forms-B\"](a))))},module.exports.charAllowsIdeographicBreaking=function(a){return!(a<11904)&&(!!isChar[\"Bopomofo Extended\"](a)||(!!isChar.Bopomofo(a)||(!!isChar[\"CJK Compatibility Forms\"](a)||(!!isChar[\"CJK Compatibility Ideographs\"](a)||(!!isChar[\"CJK Compatibility\"](a)||(!!isChar[\"CJK Radicals Supplement\"](a)||(!!isChar[\"CJK Strokes\"](a)||(!!isChar[\"CJK Symbols and Punctuation\"](a)||(!!isChar[\"CJK Unified Ideographs Extension A\"](a)||(!!isChar[\"CJK Unified Ideographs\"](a)||(!!isChar[\"Enclosed CJK Letters and Months\"](a)||(!!isChar[\"Halfwidth and Fullwidth Forms\"](a)||(!!isChar.Hiragana(a)||(!!isChar[\"Ideographic Description Characters\"](a)||(!!isChar[\"Kangxi Radicals\"](a)||(!!isChar[\"Katakana Phonetic Extensions\"](a)||(!!isChar.Katakana(a)||(!!isChar[\"Vertical Forms\"](a)||(!!isChar[\"Yi Radicals\"](a)||!!isChar[\"Yi Syllables\"](a))))))))))))))))))))},exports.charHasUprightVerticalOrientation=function(a){return 746===a||747===a||!(a<4352)&&(!!isChar[\"Bopomofo Extended\"](a)||(!!isChar.Bopomofo(a)||(!(!isChar[\"CJK Compatibility Forms\"](a)||a>=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\":215}],219:[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)<o?n=a:l.locationPoint(i).distSqr(t)<o&&(n=i)}for(;Math.abs(n.lng-l.center.lng)>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\":58}],220:[function(_dereq_,module,exports){\n\"use strict\";function createStructArrayType(t){var r=JSON.stringify(t);if(structArrayTypeCache[r])return structArrayTypeCache[r];var e=void 0===t.alignment?1:t.alignment,i=0,n=0,a=[\"Uint8\"],s=t.members.map(function(t){a.indexOf(t.type)<0&&a.push(t.type);var r=sizeOf(t.type),s=i=align(i,Math.max(e,r)),o=t.components||1;return n=Math.max(n,r),i+=r*o,{name:t.name,type:t.type,components:o,offset:s}}),o=align(i,Math.max(n,e)),p=function(t){function r(){t.apply(this,arguments)}return t&&(r.__proto__=t),r.prototype=Object.create(t&&t.prototype),r.prototype.constructor=r,r}(Struct);p.prototype.alignment=e,p.prototype.size=o;for(var y=0,c=s;y<c.length;y+=1)for(var h=c[y],u=0;u<h.components;u++){var f=h.name;if(h.components>1&&(f+=u),f in p.prototype)throw new Error(f+\" is a reserved name and cannot be used as a member name.\");Object.defineProperty(p.prototype,f,createAccessors(h,u))}var m=function(t){function r(){t.apply(this,arguments)}return t&&(r.__proto__=t),r.prototype=Object.create(t&&t.prototype),r.prototype.constructor=r,r}(StructArray);return m.prototype.members=s,m.prototype.StructType=p,m.prototype.bytesPerElement=o,m.prototype.emplaceBack=createEmplaceBack(s,o),m.prototype._usedTypes=a,structArrayTypeCache[r]=m,m}function align(t,r){return Math.ceil(t/r)*r}function sizeOf(t){return viewTypes[t].BYTES_PER_ELEMENT}function getArrayViewName(t){return t.toLowerCase()}function createEmplaceBack(t,r){for(var e=[],i=[],n=\"var i = this.length;\\nthis.resize(this.length + 1);\\n\",a=0,s=t;a<s.length;a+=1){var o=s[a],p=sizeOf(o.type);e.indexOf(p)<0&&(e.push(p),n+=\"var o\"+p.toFixed(0)+\" = i * \"+(r/p).toFixed(0)+\";\\n\");for(var y=0;y<o.components;y++){var c=\"v\"+i.length,h=\"o\"+p.toFixed(0)+\" + \"+(o.offset/p+y).toFixed(0);n+=\"this.\"+getArrayViewName(o.type)+\"[\"+h+\"] = \"+c+\";\\n\",i.push(c)}}return n+=\"return i;\",new Function(i.toString(),n)}function createMemberComponentString(t,r){var e=\"this._pos\"+sizeOf(t.type).toFixed(0),i=(t.offset/sizeOf(t.type)+r).toFixed(0),n=e+\" + \"+i;return\"this._structArray.\"+getArrayViewName(t.type)+\"[\"+n+\"]\"}function createAccessors(t,r){var e=createMemberComponentString(t,r);return{get:new Function(\"return \"+e+\";\"),set:new Function(\"x\",e+\" = x;\")}}module.exports=createStructArrayType;var viewTypes={Int8:Int8Array,Uint8:Uint8Array,Int16:Int16Array,Uint16:Uint16Array,Int32:Int32Array,Uint32:Uint32Array,Float32:Float32Array},Struct=function(t,r){this._structArray=t,this._pos1=r*this.size,this._pos2=this._pos1/2,this._pos4=this._pos1/4,this._pos8=this._pos1/8},DEFAULT_CAPACITY=128,RESIZE_MULTIPLIER=5,StructArray=function(t){this.isTransferred=!1,void 0!==t?(this.arrayBuffer=t.arrayBuffer,this.length=t.length,this.capacity=this.arrayBuffer.byteLength/this.bytesPerElement,this._refreshViews()):(this.capacity=-1,this.resize(0))};StructArray.serialize=function(){return{members:this.prototype.members,alignment:this.prototype.StructType.prototype.alignment}},StructArray.prototype.serialize=function(t){return this._trim(),t&&(this.isTransferred=!0,t.push(this.arrayBuffer)),{length:this.length,arrayBuffer:this.arrayBuffer}},StructArray.prototype.get=function(t){return new this.StructType(this,t)},StructArray.prototype._trim=function(){this.length!==this.capacity&&(this.capacity=this.length,this.arrayBuffer=this.arrayBuffer.slice(0,this.length*this.bytesPerElement),this._refreshViews())},StructArray.prototype.clear=function(){this.length=0},StructArray.prototype.resize=function(t){if(this.length=t,t>this.capacity){this.capacity=Math.max(t,Math.floor(this.capacity*RESIZE_MULTIPLIER),DEFAULT_CAPACITY),this.arrayBuffer=new ArrayBuffer(this.capacity*this.bytesPerElement);var r=this.uint8;this._refreshViews(),r&&this.uint8.set(r)}},StructArray.prototype._refreshViews=function(){for(var t=this,r=0,e=t._usedTypes;r<e.length;r+=1){var i=e[r];t[getArrayViewName(i)]=new viewTypes[i](t.arrayBuffer)}},StructArray.prototype.toArray=function(t,r){for(var e=this,i=[],n=t;n<r;n++){var a=e.get(n);i.push(a)}return i};var structArrayTypeCache={};\n},{}],221:[function(_dereq_,module,exports){\n\"use strict\";var browser=_dereq_(\"./browser\"),Throttler=function(t,o){this.frequency=t,this.throttledFunction=o,this.lastInvocation=0};Throttler.prototype.invoke=function(){var t=this;if(!this.pendingInvocation){var o=0===this.lastInvocation?0:this.lastInvocation+this.frequency-browser.now();o<=0?(this.lastInvocation=browser.now(),this.throttledFunction()):this.pendingInvocation=setTimeout(function(){t.pendingInvocation=void 0,t.lastInvocation=browser.now(),t.throttledFunction()},o)}},Throttler.prototype.stop=function(){this.pendingInvocation&&(clearTimeout(this.pendingInvocation),this.pendingInvocation=void 0)},module.exports=Throttler;\n},{\"./browser\":202}],222:[function(_dereq_,module,exports){\n\"use strict\";function resolveTokens(e,n){return n.replace(/{([^{}]+)}/g,function(n,r){return r in e?String(e[r]):\"\"})}module.exports=resolveTokens;\n},{}],223:[function(_dereq_,module,exports){\n\"use strict\";var UnitBezier=_dereq_(\"@mapbox/unitbezier\"),Coordinate=_dereq_(\"../geo/coordinate\"),Point=_dereq_(\"@mapbox/point-geometry\");exports.easeCubicInOut=function(r){if(r<=0)return 0;if(r>=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){for(var e=[],t=arguments.length-1;t-- >0;)e[t]=arguments[t+1];for(var n=0,o=e;n<o.length;n+=1){var a=o[n];for(var i in a)r[i]=a[i]}return r},exports.pick=function(r,e){for(var t={},n=0;n<e.length;n++){var o=e[n];o in r&&(t[o]=r[o])}return t};var id=1;exports.uniqueId=function(){return id++},exports.bindAll=function(r,e){r.forEach(function(r){e[r]&&(e[r]=e[r].bind(e))})},exports.getCoordinatesCenter=function(r){for(var e=1/0,t=1/0,n=-1/0,o=-1/0,a=0;a<r.length;a++)e=Math.min(e,r[a].column),t=Math.min(t,r[a].row),n=Math.max(n,r[a].column),o=Math.max(o,r[a].row);var i=n-e,u=o-t,s=Math.max(i,u),c=Math.max(0,Math.floor(-Math.log(s)/Math.LN2));return new Coordinate((e+n)/2,(t+o)/2,0).zoomTo(c)},exports.endsWith=function(r,e){return-1!==r.indexOf(e,r.length-e.length)},exports.mapObject=function(r,e,t){var n=this,o={};for(var a in r)o[a]=e.call(t||n,r[a],a,r);return o},exports.filterObject=function(r,e,t){var n=this,o={};for(var a in r)e.call(t||n,r[a],a,r)&&(o[a]=r[a]);return o},exports.deepEqual=function(r,e){if(Array.isArray(r)){if(!Array.isArray(e)||r.length!==e.length)return!1;for(var t=0;t<r.length;t++)if(!exports.deepEqual(r[t],e[t]))return!1;return!0}if(\"object\"==typeof r&&null!==r&&null!==e){if(\"object\"!=typeof e)return!1;if(Object.keys(r).length!==Object.keys(e).length)return!1;for(var n in r)if(!exports.deepEqual(r[n],e[n]))return!1;return!0}return r===e},exports.clone=function(r){return Array.isArray(r)?r.map(exports.clone):\"object\"==typeof r&&r?exports.mapObject(r,exports.clone):r},exports.arraysIntersect=function(r,e){for(var t=0;t<r.length;t++)if(e.indexOf(r[t])>=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;t<n;o=t++)a=r[t],i=r[o],e+=(i.x-a.x)*(a.y+i.y);return e},exports.isClosedPolygon=function(r){if(r.length<4)return!1;var e=r[0],t=r[r.length-1];return!(Math.abs(e.x-t.x)>0||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\":57,\"@mapbox/point-geometry\":2,\"@mapbox/unitbezier\":5}],224:[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},{}],225:[function(_dereq_,module,exports){\n\"use strict\";var scriptDetection=_dereq_(\"./script_detection\");module.exports=function(t){for(var o=\"\",e=0;e<t.length;e++){var r=t.charCodeAt(e+1)||null,l=t.charCodeAt(e-1)||null;(!r||!scriptDetection.charHasRotatedVerticalOrientation(r)||module.exports.lookup[t[e+1]])&&(!l||!scriptDetection.charHasRotatedVerticalOrientation(l)||module.exports.lookup[t[e-1]])&&module.exports.lookup[t[e]]?o+=module.exports.lookup[t[e]]:o+=t[e]}return o},module.exports.lookup={\"!\":\"︕\",\"#\":\"#\",$:\"$\",\"%\":\"%\",\"&\":\"&\",\"(\":\"︵\",\")\":\"︶\",\"*\":\"*\",\"+\":\"+\",\",\":\"︐\",\"-\":\"︲\",\".\":\"・\",\"/\":\"/\",\":\":\"︓\",\";\":\"︔\",\"<\":\"︿\",\"=\":\"=\",\">\":\"﹀\",\"?\":\"︖\",\"@\":\"@\",\"[\":\"﹇\",\"\\\\\":\"\\",\"]\":\"﹈\",\"^\":\"^\",_:\"︳\",\"`\":\"`\",\"{\":\"︷\",\"|\":\"―\",\"}\":\"︸\",\"~\":\"~\",\"¢\":\"¢\",\"£\":\"£\",\"¥\":\"¥\",\"¦\":\"¦\",\"¬\":\"¬\",\"¯\":\" ̄\",\"–\":\"︲\",\"—\":\"︱\",\"‘\":\"﹃\",\"’\":\"﹄\",\"“\":\"﹁\",\"”\":\"﹂\",\"…\":\"︙\",\"‧\":\"・\",\"₩\":\"₩\",\"、\":\"︑\",\"。\":\"︒\",\"〈\":\"︿\",\"〉\":\"﹀\",\"《\":\"︽\",\"》\":\"︾\",\"「\":\"﹁\",\"」\":\"﹂\",\"『\":\"﹃\",\"』\":\"﹄\",\"【\":\"︻\",\"】\":\"︼\",\"〔\":\"︹\",\"〕\":\"︺\",\"〖\":\"︗\",\"〗\":\"︘\",\"!\":\"︕\",\"(\":\"︵\",\")\":\"︶\",\",\":\"︐\",\"-\":\"︲\",\".\":\"・\",\":\":\"︓\",\";\":\"︔\",\"<\":\"︿\",\">\":\"﹀\",\"?\":\"︖\",\"[\":\"﹇\",\"]\":\"﹈\",\"_\":\"︳\",\"{\":\"︷\",\"|\":\"―\",\"}\":\"︸\",\"⦅\":\"︵\",\"⦆\":\"︶\",\"。\":\"︒\",\"「\":\"﹁\",\"」\":\"﹂\"};\n},{\"./script_detection\":218}],226:[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<o;)e.workers.push(new WebWorker)}return this.active[r]=!0,this.workers.slice()},WorkerPool.prototype.release=function(r){delete this.active[r],0===Object.keys(this.active).length&&(this.workers.forEach(function(r){r.terminate()}),this.workers=null)},module.exports=WorkerPool;\n},{\"../\":63,\"./web_worker\":203}]},{},[63])(63)\n});\n\n\n//# sourceMappingURL=mapbox-gl.js.map\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/mapbox-gl/dist/mapbox-gl.js\n// module id = 1\n// module chunks = 0","import mapboxgl from 'mapbox-gl';\nimport Vue from 'vue';\nimport Geshem from './Geshem.vue';\n\nmapboxgl.accessToken = 'pk.eyJ1IjoieXV2YWRtIiwiYSI6ImNpcnMxbzBuaTAwZWdoa25oczlzZmkwbHcifQ.UHtLngbKm9O8945pJm23Nw';\n\nvar vm = new Vue({\n el: '#app',\n render: h => h(Geshem)\n});\n\n\n\n// WEBPACK FOOTER //\n// ./geshem.js","/*!\n * Vue.js v2.5.2\n * (c) 2014-2017 Evan You\n * Released under the MIT License.\n */\n/* */\n\n// these helpers produces better vm code in JS engines due to their\n// explicitness and function inlining\nfunction isUndef (v) {\n return v === undefined || v === null\n}\n\nfunction isDef (v) {\n return v !== undefined && v !== null\n}\n\nfunction isTrue (v) {\n return v === true\n}\n\nfunction isFalse (v) {\n return v === false\n}\n\n/**\n * Check if value is primitive\n */\nfunction isPrimitive (value) {\n return (\n typeof value === 'string' ||\n typeof value === 'number' ||\n typeof value === 'boolean'\n )\n}\n\n/**\n * Quick object check - this is primarily used to tell\n * Objects from primitive values when we know the value\n * is a JSON-compliant type.\n */\nfunction isObject (obj) {\n return obj !== null && typeof obj === 'object'\n}\n\n/**\n * Get the raw type string of a value e.g. [object Object]\n */\nvar _toString = Object.prototype.toString;\n\nfunction toRawType (value) {\n return _toString.call(value).slice(8, -1)\n}\n\n/**\n * Strict object type check. Only returns true\n * for plain JavaScript objects.\n */\nfunction isPlainObject (obj) {\n return _toString.call(obj) === '[object Object]'\n}\n\nfunction isRegExp (v) {\n return _toString.call(v) === '[object RegExp]'\n}\n\n/**\n * Check if val is a valid array index.\n */\nfunction isValidArrayIndex (val) {\n var n = parseFloat(String(val));\n return n >= 0 && Math.floor(n) === n && isFinite(val)\n}\n\n/**\n * Convert a value to a string that is actually rendered.\n */\nfunction toString (val) {\n return val == null\n ? ''\n : typeof val === 'object'\n ? JSON.stringify(val, null, 2)\n : String(val)\n}\n\n/**\n * Convert a input value to a number for persistence.\n * If the conversion fails, return original string.\n */\nfunction toNumber (val) {\n var n = parseFloat(val);\n return isNaN(n) ? val : n\n}\n\n/**\n * Make a map and return a function for checking if a key\n * is in that map.\n */\nfunction makeMap (\n str,\n expectsLowerCase\n) {\n var map = Object.create(null);\n var list = str.split(',');\n for (var i = 0; i < list.length; i++) {\n map[list[i]] = true;\n }\n return expectsLowerCase\n ? function (val) { return map[val.toLowerCase()]; }\n : function (val) { return map[val]; }\n}\n\n/**\n * Check if a tag is a built-in tag.\n */\nvar isBuiltInTag = makeMap('slot,component', true);\n\n/**\n * Check if a attribute is a reserved attribute.\n */\nvar isReservedAttribute = makeMap('key,ref,slot,slot-scope,is');\n\n/**\n * Remove an item from an array\n */\nfunction remove (arr, item) {\n if (arr.length) {\n var index = arr.indexOf(item);\n if (index > -1) {\n return arr.splice(index, 1)\n }\n }\n}\n\n/**\n * Check whether the object has the property.\n */\nvar hasOwnProperty = Object.prototype.hasOwnProperty;\nfunction hasOwn (obj, key) {\n return hasOwnProperty.call(obj, key)\n}\n\n/**\n * Create a cached version of a pure function.\n */\nfunction cached (fn) {\n var cache = Object.create(null);\n return (function cachedFn (str) {\n var hit = cache[str];\n return hit || (cache[str] = fn(str))\n })\n}\n\n/**\n * Camelize a hyphen-delimited string.\n */\nvar camelizeRE = /-(\\w)/g;\nvar camelize = cached(function (str) {\n return str.replace(camelizeRE, function (_, c) { return c ? c.toUpperCase() : ''; })\n});\n\n/**\n * Capitalize a string.\n */\nvar capitalize = cached(function (str) {\n return str.charAt(0).toUpperCase() + str.slice(1)\n});\n\n/**\n * Hyphenate a camelCase string.\n */\nvar hyphenateRE = /\\B([A-Z])/g;\nvar hyphenate = cached(function (str) {\n return str.replace(hyphenateRE, '-$1').toLowerCase()\n});\n\n/**\n * Simple bind, faster than native\n */\nfunction bind (fn, ctx) {\n function boundFn (a) {\n var l = arguments.length;\n return l\n ? l > 1\n ? fn.apply(ctx, arguments)\n : fn.call(ctx, a)\n : fn.call(ctx)\n }\n // record original fn length\n boundFn._length = fn.length;\n return boundFn\n}\n\n/**\n * Convert an Array-like object to a real Array.\n */\nfunction toArray (list, start) {\n start = start || 0;\n var i = list.length - start;\n var ret = new Array(i);\n while (i--) {\n ret[i] = list[i + start];\n }\n return ret\n}\n\n/**\n * Mix properties into target object.\n */\nfunction extend (to, _from) {\n for (var key in _from) {\n to[key] = _from[key];\n }\n return to\n}\n\n/**\n * Merge an Array of Objects into a single Object.\n */\nfunction toObject (arr) {\n var res = {};\n for (var i = 0; i < arr.length; i++) {\n if (arr[i]) {\n extend(res, arr[i]);\n }\n }\n return res\n}\n\n/**\n * Perform no operation.\n * Stubbing args to make Flow happy without leaving useless transpiled code\n * with ...rest (https://flow.org/blog/2017/05/07/Strict-Function-Call-Arity/)\n */\nfunction noop (a, b, c) {}\n\n/**\n * Always return false.\n */\nvar no = function (a, b, c) { return false; };\n\n/**\n * Return same value\n */\nvar identity = function (_) { return _; };\n\n/**\n * Generate a static keys string from compiler modules.\n */\nfunction genStaticKeys (modules) {\n return modules.reduce(function (keys, m) {\n return keys.concat(m.staticKeys || [])\n }, []).join(',')\n}\n\n/**\n * Check if two values are loosely equal - that is,\n * if they are plain objects, do they have the same shape?\n */\nfunction looseEqual (a, b) {\n if (a === b) { return true }\n var isObjectA = isObject(a);\n var isObjectB = isObject(b);\n if (isObjectA && isObjectB) {\n try {\n var isArrayA = Array.isArray(a);\n var isArrayB = Array.isArray(b);\n if (isArrayA && isArrayB) {\n return a.length === b.length && a.every(function (e, i) {\n return looseEqual(e, b[i])\n })\n } else if (!isArrayA && !isArrayB) {\n var keysA = Object.keys(a);\n var keysB = Object.keys(b);\n return keysA.length === keysB.length && keysA.every(function (key) {\n return looseEqual(a[key], b[key])\n })\n } else {\n /* istanbul ignore next */\n return false\n }\n } catch (e) {\n /* istanbul ignore next */\n return false\n }\n } else if (!isObjectA && !isObjectB) {\n return String(a) === String(b)\n } else {\n return false\n }\n}\n\nfunction looseIndexOf (arr, val) {\n for (var i = 0; i < arr.length; i++) {\n if (looseEqual(arr[i], val)) { return i }\n }\n return -1\n}\n\n/**\n * Ensure a function is called only once.\n */\nfunction once (fn) {\n var called = false;\n return function () {\n if (!called) {\n called = true;\n fn.apply(this, arguments);\n }\n }\n}\n\nvar SSR_ATTR = 'data-server-rendered';\n\nvar ASSET_TYPES = [\n 'component',\n 'directive',\n 'filter'\n];\n\nvar LIFECYCLE_HOOKS = [\n 'beforeCreate',\n 'created',\n 'beforeMount',\n 'mounted',\n 'beforeUpdate',\n 'updated',\n 'beforeDestroy',\n 'destroyed',\n 'activated',\n 'deactivated',\n 'errorCaptured'\n];\n\n/* */\n\nvar config = ({\n /**\n * Option merge strategies (used in core/util/options)\n */\n optionMergeStrategies: Object.create(null),\n\n /**\n * Whether to suppress warnings.\n */\n silent: false,\n\n /**\n * Show production mode tip message on boot?\n */\n productionTip: process.env.NODE_ENV !== 'production',\n\n /**\n * Whether to enable devtools\n */\n devtools: process.env.NODE_ENV !== 'production',\n\n /**\n * Whether to record perf\n */\n performance: false,\n\n /**\n * Error handler for watcher errors\n */\n errorHandler: null,\n\n /**\n * Warn handler for watcher warns\n */\n warnHandler: null,\n\n /**\n * Ignore certain custom elements\n */\n ignoredElements: [],\n\n /**\n * Custom user key aliases for v-on\n */\n keyCodes: Object.create(null),\n\n /**\n * Check if a tag is reserved so that it cannot be registered as a\n * component. This is platform-dependent and may be overwritten.\n */\n isReservedTag: no,\n\n /**\n * Check if an attribute is reserved so that it cannot be used as a component\n * prop. This is platform-dependent and may be overwritten.\n */\n isReservedAttr: no,\n\n /**\n * Check if a tag is an unknown element.\n * Platform-dependent.\n */\n isUnknownElement: no,\n\n /**\n * Get the namespace of an element\n */\n getTagNamespace: noop,\n\n /**\n * Parse the real tag name for the specific platform.\n */\n parsePlatformTagName: identity,\n\n /**\n * Check if an attribute must be bound using property, e.g. value\n * Platform-dependent.\n */\n mustUseProp: no,\n\n /**\n * Exposed for legacy reasons\n */\n _lifecycleHooks: LIFECYCLE_HOOKS\n});\n\n/* */\n\nvar emptyObject = Object.freeze({});\n\n/**\n * Check if a string starts with $ or _\n */\nfunction isReserved (str) {\n var c = (str + '').charCodeAt(0);\n return c === 0x24 || c === 0x5F\n}\n\n/**\n * Define a property.\n */\nfunction def (obj, key, val, enumerable) {\n Object.defineProperty(obj, key, {\n value: val,\n enumerable: !!enumerable,\n writable: true,\n configurable: true\n });\n}\n\n/**\n * Parse simple path.\n */\nvar bailRE = /[^\\w.$]/;\nfunction parsePath (path) {\n if (bailRE.test(path)) {\n return\n }\n var segments = path.split('.');\n return function (obj) {\n for (var i = 0; i < segments.length; i++) {\n if (!obj) { return }\n obj = obj[segments[i]];\n }\n return obj\n }\n}\n\n/* */\n\n// can we use __proto__?\nvar hasProto = '__proto__' in {};\n\n// Browser environment sniffing\nvar inBrowser = typeof window !== 'undefined';\nvar UA = inBrowser && window.navigator.userAgent.toLowerCase();\nvar isIE = UA && /msie|trident/.test(UA);\nvar isIE9 = UA && UA.indexOf('msie 9.0') > 0;\nvar isEdge = UA && UA.indexOf('edge/') > 0;\nvar isAndroid = UA && UA.indexOf('android') > 0;\nvar isIOS = UA && /iphone|ipad|ipod|ios/.test(UA);\nvar isChrome = UA && /chrome\\/\\d+/.test(UA) && !isEdge;\n\n// Firefox has a \"watch\" function on Object.prototype...\nvar nativeWatch = ({}).watch;\n\nvar supportsPassive = false;\nif (inBrowser) {\n try {\n var opts = {};\n Object.defineProperty(opts, 'passive', ({\n get: function get () {\n /* istanbul ignore next */\n supportsPassive = true;\n }\n })); // https://github.com/facebook/flow/issues/285\n window.addEventListener('test-passive', null, opts);\n } catch (e) {}\n}\n\n// this needs to be lazy-evaled because vue may be required before\n// vue-server-renderer can set VUE_ENV\nvar _isServer;\nvar isServerRendering = function () {\n if (_isServer === undefined) {\n /* istanbul ignore if */\n if (!inBrowser && typeof global !== 'undefined') {\n // detect presence of vue-server-renderer and avoid\n // Webpack shimming the process\n _isServer = global['process'].env.VUE_ENV === 'server';\n } else {\n _isServer = false;\n }\n }\n return _isServer\n};\n\n// detect devtools\nvar devtools = inBrowser && window.__VUE_DEVTOOLS_GLOBAL_HOOK__;\n\n/* istanbul ignore next */\nfunction isNative (Ctor) {\n return typeof Ctor === 'function' && /native code/.test(Ctor.toString())\n}\n\nvar hasSymbol =\n typeof Symbol !== 'undefined' && isNative(Symbol) &&\n typeof Reflect !== 'undefined' && isNative(Reflect.ownKeys);\n\nvar _Set;\n/* istanbul ignore if */ // $flow-disable-line\nif (typeof Set !== 'undefined' && isNative(Set)) {\n // use native Set when available.\n _Set = Set;\n} else {\n // a non-standard Set polyfill that only works with primitive keys.\n _Set = (function () {\n function Set () {\n this.set = Object.create(null);\n }\n Set.prototype.has = function has (key) {\n return this.set[key] === true\n };\n Set.prototype.add = function add (key) {\n this.set[key] = true;\n };\n Set.prototype.clear = function clear () {\n this.set = Object.create(null);\n };\n\n return Set;\n }());\n}\n\n/* */\n\nvar warn = noop;\nvar tip = noop;\nvar generateComponentTrace = (noop); // work around flow check\nvar formatComponentName = (noop);\n\nif (process.env.NODE_ENV !== 'production') {\n var hasConsole = typeof console !== 'undefined';\n var classifyRE = /(?:^|[-_])(\\w)/g;\n var classify = function (str) { return str\n .replace(classifyRE, function (c) { return c.toUpperCase(); })\n .replace(/[-_]/g, ''); };\n\n warn = function (msg, vm) {\n var trace = vm ? generateComponentTrace(vm) : '';\n\n if (config.warnHandler) {\n config.warnHandler.call(null, msg, vm, trace);\n } else if (hasConsole && (!config.silent)) {\n console.error((\"[Vue warn]: \" + msg + trace));\n }\n };\n\n tip = function (msg, vm) {\n if (hasConsole && (!config.silent)) {\n console.warn(\"[Vue tip]: \" + msg + (\n vm ? generateComponentTrace(vm) : ''\n ));\n }\n };\n\n formatComponentName = function (vm, includeFile) {\n if (vm.$root === vm) {\n return '<Root>'\n }\n var options = typeof vm === 'function' && vm.cid != null\n ? vm.options\n : vm._isVue\n ? vm.$options || vm.constructor.options\n : vm || {};\n var name = options.name || options._componentTag;\n var file = options.__file;\n if (!name && file) {\n var match = file.match(/([^/\\\\]+)\\.vue$/);\n name = match && match[1];\n }\n\n return (\n (name ? (\"<\" + (classify(name)) + \">\") : \"<Anonymous>\") +\n (file && includeFile !== false ? (\" at \" + file) : '')\n )\n };\n\n var repeat = function (str, n) {\n var res = '';\n while (n) {\n if (n % 2 === 1) { res += str; }\n if (n > 1) { str += str; }\n n >>= 1;\n }\n return res\n };\n\n generateComponentTrace = function (vm) {\n if (vm._isVue && vm.$parent) {\n var tree = [];\n var currentRecursiveSequence = 0;\n while (vm) {\n if (tree.length > 0) {\n var last = tree[tree.length - 1];\n if (last.constructor === vm.constructor) {\n currentRecursiveSequence++;\n vm = vm.$parent;\n continue\n } else if (currentRecursiveSequence > 0) {\n tree[tree.length - 1] = [last, currentRecursiveSequence];\n currentRecursiveSequence = 0;\n }\n }\n tree.push(vm);\n vm = vm.$parent;\n }\n return '\\n\\nfound in\\n\\n' + tree\n .map(function (vm, i) { return (\"\" + (i === 0 ? '---> ' : repeat(' ', 5 + i * 2)) + (Array.isArray(vm)\n ? ((formatComponentName(vm[0])) + \"... (\" + (vm[1]) + \" recursive calls)\")\n : formatComponentName(vm))); })\n .join('\\n')\n } else {\n return (\"\\n\\n(found in \" + (formatComponentName(vm)) + \")\")\n }\n };\n}\n\n/* */\n\n\nvar uid = 0;\n\n/**\n * A dep is an observable that can have multiple\n * directives subscribing to it.\n */\nvar Dep = function Dep () {\n this.id = uid++;\n this.subs = [];\n};\n\nDep.prototype.addSub = function addSub (sub) {\n this.subs.push(sub);\n};\n\nDep.prototype.removeSub = function removeSub (sub) {\n remove(this.subs, sub);\n};\n\nDep.prototype.depend = function depend () {\n if (Dep.target) {\n Dep.target.addDep(this);\n }\n};\n\nDep.prototype.notify = function notify () {\n // stabilize the subscriber list first\n var subs = this.subs.slice();\n for (var i = 0, l = subs.length; i < l; i++) {\n subs[i].update();\n }\n};\n\n// the current target watcher being evaluated.\n// this is globally unique because there could be only one\n// watcher being evaluated at any time.\nDep.target = null;\nvar targetStack = [];\n\nfunction pushTarget (_target) {\n if (Dep.target) { targetStack.push(Dep.target); }\n Dep.target = _target;\n}\n\nfunction popTarget () {\n Dep.target = targetStack.pop();\n}\n\n/* */\n\nvar VNode = function VNode (\n tag,\n data,\n children,\n text,\n elm,\n context,\n componentOptions,\n asyncFactory\n) {\n this.tag = tag;\n this.data = data;\n this.children = children;\n this.text = text;\n this.elm = elm;\n this.ns = undefined;\n this.context = context;\n this.functionalContext = undefined;\n this.functionalOptions = undefined;\n this.functionalScopeId = undefined;\n this.key = data && data.key;\n this.componentOptions = componentOptions;\n this.componentInstance = undefined;\n this.parent = undefined;\n this.raw = false;\n this.isStatic = false;\n this.isRootInsert = true;\n this.isComment = false;\n this.isCloned = false;\n this.isOnce = false;\n this.asyncFactory = asyncFactory;\n this.asyncMeta = undefined;\n this.isAsyncPlaceholder = false;\n};\n\nvar prototypeAccessors = { child: { configurable: true } };\n\n// DEPRECATED: alias for componentInstance for backwards compat.\n/* istanbul ignore next */\nprototypeAccessors.child.get = function () {\n return this.componentInstance\n};\n\nObject.defineProperties( VNode.prototype, prototypeAccessors );\n\nvar createEmptyVNode = function (text) {\n if ( text === void 0 ) text = '';\n\n var node = new VNode();\n node.text = text;\n node.isComment = true;\n return node\n};\n\nfunction createTextVNode (val) {\n return new VNode(undefined, undefined, undefined, String(val))\n}\n\n// optimized shallow clone\n// used for static nodes and slot nodes because they may be reused across\n// multiple renders, cloning them avoids errors when DOM manipulations rely\n// on their elm reference.\nfunction cloneVNode (vnode, deep) {\n var cloned = new VNode(\n vnode.tag,\n vnode.data,\n vnode.children,\n vnode.text,\n vnode.elm,\n vnode.context,\n vnode.componentOptions,\n vnode.asyncFactory\n );\n cloned.ns = vnode.ns;\n cloned.isStatic = vnode.isStatic;\n cloned.key = vnode.key;\n cloned.isComment = vnode.isComment;\n cloned.isCloned = true;\n if (deep && vnode.children) {\n cloned.children = cloneVNodes(vnode.children);\n }\n return cloned\n}\n\nfunction cloneVNodes (vnodes, deep) {\n var len = vnodes.length;\n var res = new Array(len);\n for (var i = 0; i < len; i++) {\n res[i] = cloneVNode(vnodes[i], deep);\n }\n return res\n}\n\n/*\n * not type checking this file because flow doesn't play well with\n * dynamically accessing methods on Array prototype\n */\n\nvar arrayProto = Array.prototype;\nvar arrayMethods = Object.create(arrayProto);[\n 'push',\n 'pop',\n 'shift',\n 'unshift',\n 'splice',\n 'sort',\n 'reverse'\n]\n.forEach(function (method) {\n // cache original method\n var original = arrayProto[method];\n def(arrayMethods, method, function mutator () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n var result = original.apply(this, args);\n var ob = this.__ob__;\n var inserted;\n switch (method) {\n case 'push':\n case 'unshift':\n inserted = args;\n break\n case 'splice':\n inserted = args.slice(2);\n break\n }\n if (inserted) { ob.observeArray(inserted); }\n // notify change\n ob.dep.notify();\n return result\n });\n});\n\n/* */\n\nvar arrayKeys = Object.getOwnPropertyNames(arrayMethods);\n\n/**\n * By default, when a reactive property is set, the new value is\n * also converted to become reactive. However when passing down props,\n * we don't want to force conversion because the value may be a nested value\n * under a frozen data structure. Converting it would defeat the optimization.\n */\nvar observerState = {\n shouldConvert: true\n};\n\n/**\n * Observer class that are attached to each observed\n * object. Once attached, the observer converts target\n * object's property keys into getter/setters that\n * collect dependencies and dispatches updates.\n */\nvar Observer = function Observer (value) {\n this.value = value;\n this.dep = new Dep();\n this.vmCount = 0;\n def(value, '__ob__', this);\n if (Array.isArray(value)) {\n var augment = hasProto\n ? protoAugment\n : copyAugment;\n augment(value, arrayMethods, arrayKeys);\n this.observeArray(value);\n } else {\n this.walk(value);\n }\n};\n\n/**\n * Walk through each property and convert them into\n * getter/setters. This method should only be called when\n * value type is Object.\n */\nObserver.prototype.walk = function walk (obj) {\n var keys = Object.keys(obj);\n for (var i = 0; i < keys.length; i++) {\n defineReactive(obj, keys[i], obj[keys[i]]);\n }\n};\n\n/**\n * Observe a list of Array items.\n */\nObserver.prototype.observeArray = function observeArray (items) {\n for (var i = 0, l = items.length; i < l; i++) {\n observe(items[i]);\n }\n};\n\n// helpers\n\n/**\n * Augment an target Object or Array by intercepting\n * the prototype chain using __proto__\n */\nfunction protoAugment (target, src, keys) {\n /* eslint-disable no-proto */\n target.__proto__ = src;\n /* eslint-enable no-proto */\n}\n\n/**\n * Augment an target Object or Array by defining\n * hidden properties.\n */\n/* istanbul ignore next */\nfunction copyAugment (target, src, keys) {\n for (var i = 0, l = keys.length; i < l; i++) {\n var key = keys[i];\n def(target, key, src[key]);\n }\n}\n\n/**\n * Attempt to create an observer instance for a value,\n * returns the new observer if successfully observed,\n * or the existing observer if the value already has one.\n */\nfunction observe (value, asRootData) {\n if (!isObject(value) || value instanceof VNode) {\n return\n }\n var ob;\n if (hasOwn(value, '__ob__') && value.__ob__ instanceof Observer) {\n ob = value.__ob__;\n } else if (\n observerState.shouldConvert &&\n !isServerRendering() &&\n (Array.isArray(value) || isPlainObject(value)) &&\n Object.isExtensible(value) &&\n !value._isVue\n ) {\n ob = new Observer(value);\n }\n if (asRootData && ob) {\n ob.vmCount++;\n }\n return ob\n}\n\n/**\n * Define a reactive property on an Object.\n */\nfunction defineReactive (\n obj,\n key,\n val,\n customSetter,\n shallow\n) {\n var dep = new Dep();\n\n var property = Object.getOwnPropertyDescriptor(obj, key);\n if (property && property.configurable === false) {\n return\n }\n\n // cater for pre-defined getter/setters\n var getter = property && property.get;\n var setter = property && property.set;\n\n var childOb = !shallow && observe(val);\n Object.defineProperty(obj, key, {\n enumerable: true,\n configurable: true,\n get: function reactiveGetter () {\n var value = getter ? getter.call(obj) : val;\n if (Dep.target) {\n dep.depend();\n if (childOb) {\n childOb.dep.depend();\n if (Array.isArray(value)) {\n dependArray(value);\n }\n }\n }\n return value\n },\n set: function reactiveSetter (newVal) {\n var value = getter ? getter.call(obj) : val;\n /* eslint-disable no-self-compare */\n if (newVal === value || (newVal !== newVal && value !== value)) {\n return\n }\n /* eslint-enable no-self-compare */\n if (process.env.NODE_ENV !== 'production' && customSetter) {\n customSetter();\n }\n if (setter) {\n setter.call(obj, newVal);\n } else {\n val = newVal;\n }\n childOb = !shallow && observe(newVal);\n dep.notify();\n }\n });\n}\n\n/**\n * Set a property on an object. Adds the new property and\n * triggers change notification if the property doesn't\n * already exist.\n */\nfunction set (target, key, val) {\n if (Array.isArray(target) && isValidArrayIndex(key)) {\n target.length = Math.max(target.length, key);\n target.splice(key, 1, val);\n return val\n }\n if (hasOwn(target, key)) {\n target[key] = val;\n return val\n }\n var ob = (target).__ob__;\n if (target._isVue || (ob && ob.vmCount)) {\n process.env.NODE_ENV !== 'production' && warn(\n 'Avoid adding reactive properties to a Vue instance or its root $data ' +\n 'at runtime - declare it upfront in the data option.'\n );\n return val\n }\n if (!ob) {\n target[key] = val;\n return val\n }\n defineReactive(ob.value, key, val);\n ob.dep.notify();\n return val\n}\n\n/**\n * Delete a property and trigger change if necessary.\n */\nfunction del (target, key) {\n if (Array.isArray(target) && isValidArrayIndex(key)) {\n target.splice(key, 1);\n return\n }\n var ob = (target).__ob__;\n if (target._isVue || (ob && ob.vmCount)) {\n process.env.NODE_ENV !== 'production' && warn(\n 'Avoid deleting properties on a Vue instance or its root $data ' +\n '- just set it to null.'\n );\n return\n }\n if (!hasOwn(target, key)) {\n return\n }\n delete target[key];\n if (!ob) {\n return\n }\n ob.dep.notify();\n}\n\n/**\n * Collect dependencies on array elements when the array is touched, since\n * we cannot intercept array element access like property getters.\n */\nfunction dependArray (value) {\n for (var e = (void 0), i = 0, l = value.length; i < l; i++) {\n e = value[i];\n e && e.__ob__ && e.__ob__.dep.depend();\n if (Array.isArray(e)) {\n dependArray(e);\n }\n }\n}\n\n/* */\n\n/**\n * Option overwriting strategies are functions that handle\n * how to merge a parent option value and a child option\n * value into the final value.\n */\nvar strats = config.optionMergeStrategies;\n\n/**\n * Options with restrictions\n */\nif (process.env.NODE_ENV !== 'production') {\n strats.el = strats.propsData = function (parent, child, vm, key) {\n if (!vm) {\n warn(\n \"option \\\"\" + key + \"\\\" can only be used during instance \" +\n 'creation with the `new` keyword.'\n );\n }\n return defaultStrat(parent, child)\n };\n}\n\n/**\n * Helper that recursively merges two data objects together.\n */\nfunction mergeData (to, from) {\n if (!from) { return to }\n var key, toVal, fromVal;\n var keys = Object.keys(from);\n for (var i = 0; i < keys.length; i++) {\n key = keys[i];\n toVal = to[key];\n fromVal = from[key];\n if (!hasOwn(to, key)) {\n set(to, key, fromVal);\n } else if (isPlainObject(toVal) && isPlainObject(fromVal)) {\n mergeData(toVal, fromVal);\n }\n }\n return to\n}\n\n/**\n * Data\n */\nfunction mergeDataOrFn (\n parentVal,\n childVal,\n vm\n) {\n if (!vm) {\n // in a Vue.extend merge, both should be functions\n if (!childVal) {\n return parentVal\n }\n if (!parentVal) {\n return childVal\n }\n // when parentVal & childVal are both present,\n // we need to return a function that returns the\n // merged result of both functions... no need to\n // check if parentVal is a function here because\n // it has to be a function to pass previous merges.\n return function mergedDataFn () {\n return mergeData(\n typeof childVal === 'function' ? childVal.call(this) : childVal,\n typeof parentVal === 'function' ? parentVal.call(this) : parentVal\n )\n }\n } else if (parentVal || childVal) {\n return function mergedInstanceDataFn () {\n // instance merge\n var instanceData = typeof childVal === 'function'\n ? childVal.call(vm)\n : childVal;\n var defaultData = typeof parentVal === 'function'\n ? parentVal.call(vm)\n : parentVal;\n if (instanceData) {\n return mergeData(instanceData, defaultData)\n } else {\n return defaultData\n }\n }\n }\n}\n\nstrats.data = function (\n parentVal,\n childVal,\n vm\n) {\n if (!vm) {\n if (childVal && typeof childVal !== 'function') {\n process.env.NODE_ENV !== 'production' && warn(\n 'The \"data\" option should be a function ' +\n 'that returns a per-instance value in component ' +\n 'definitions.',\n vm\n );\n\n return parentVal\n }\n return mergeDataOrFn.call(this, parentVal, childVal)\n }\n\n return mergeDataOrFn(parentVal, childVal, vm)\n};\n\n/**\n * Hooks and props are merged as arrays.\n */\nfunction mergeHook (\n parentVal,\n childVal\n) {\n return childVal\n ? parentVal\n ? parentVal.concat(childVal)\n : Array.isArray(childVal)\n ? childVal\n : [childVal]\n : parentVal\n}\n\nLIFECYCLE_HOOKS.forEach(function (hook) {\n strats[hook] = mergeHook;\n});\n\n/**\n * Assets\n *\n * When a vm is present (instance creation), we need to do\n * a three-way merge between constructor options, instance\n * options and parent options.\n */\nfunction mergeAssets (\n parentVal,\n childVal,\n vm,\n key\n) {\n var res = Object.create(parentVal || null);\n if (childVal) {\n process.env.NODE_ENV !== 'production' && assertObjectType(key, childVal, vm);\n return extend(res, childVal)\n } else {\n return res\n }\n}\n\nASSET_TYPES.forEach(function (type) {\n strats[type + 's'] = mergeAssets;\n});\n\n/**\n * Watchers.\n *\n * Watchers hashes should not overwrite one\n * another, so we merge them as arrays.\n */\nstrats.watch = function (\n parentVal,\n childVal,\n vm,\n key\n) {\n // work around Firefox's Object.prototype.watch...\n if (parentVal === nativeWatch) { parentVal = undefined; }\n if (childVal === nativeWatch) { childVal = undefined; }\n /* istanbul ignore if */\n if (!childVal) { return Object.create(parentVal || null) }\n if (process.env.NODE_ENV !== 'production') {\n assertObjectType(key, childVal, vm);\n }\n if (!parentVal) { return childVal }\n var ret = {};\n extend(ret, parentVal);\n for (var key$1 in childVal) {\n var parent = ret[key$1];\n var child = childVal[key$1];\n if (parent && !Array.isArray(parent)) {\n parent = [parent];\n }\n ret[key$1] = parent\n ? parent.concat(child)\n : Array.isArray(child) ? child : [child];\n }\n return ret\n};\n\n/**\n * Other object hashes.\n */\nstrats.props =\nstrats.methods =\nstrats.inject =\nstrats.computed = function (\n parentVal,\n childVal,\n vm,\n key\n) {\n if (childVal && process.env.NODE_ENV !== 'production') {\n assertObjectType(key, childVal, vm);\n }\n if (!parentVal) { return childVal }\n var ret = Object.create(null);\n extend(ret, parentVal);\n if (childVal) { extend(ret, childVal); }\n return ret\n};\nstrats.provide = mergeDataOrFn;\n\n/**\n * Default strategy.\n */\nvar defaultStrat = function (parentVal, childVal) {\n return childVal === undefined\n ? parentVal\n : childVal\n};\n\n/**\n * Validate component names\n */\nfunction checkComponents (options) {\n for (var key in options.components) {\n var lower = key.toLowerCase();\n if (isBuiltInTag(lower) || config.isReservedTag(lower)) {\n warn(\n 'Do not use built-in or reserved HTML elements as component ' +\n 'id: ' + key\n );\n }\n }\n}\n\n/**\n * Ensure all props option syntax are normalized into the\n * Object-based format.\n */\nfunction normalizeProps (options, vm) {\n var props = options.props;\n if (!props) { return }\n var res = {};\n var i, val, name;\n if (Array.isArray(props)) {\n i = props.length;\n while (i--) {\n val = props[i];\n if (typeof val === 'string') {\n name = camelize(val);\n res[name] = { type: null };\n } else if (process.env.NODE_ENV !== 'production') {\n warn('props must be strings when using array syntax.');\n }\n }\n } else if (isPlainObject(props)) {\n for (var key in props) {\n val = props[key];\n name = camelize(key);\n res[name] = isPlainObject(val)\n ? val\n : { type: val };\n }\n } else if (process.env.NODE_ENV !== 'production') {\n warn(\n \"Invalid value for option \\\"props\\\": expected an Array or an Object, \" +\n \"but got \" + (toRawType(props)) + \".\",\n vm\n );\n }\n options.props = res;\n}\n\n/**\n * Normalize all injections into Object-based format\n */\nfunction normalizeInject (options, vm) {\n var inject = options.inject;\n var normalized = options.inject = {};\n if (Array.isArray(inject)) {\n for (var i = 0; i < inject.length; i++) {\n normalized[inject[i]] = { from: inject[i] };\n }\n } else if (isPlainObject(inject)) {\n for (var key in inject) {\n var val = inject[key];\n normalized[key] = isPlainObject(val)\n ? extend({ from: key }, val)\n : { from: val };\n }\n } else if (process.env.NODE_ENV !== 'production' && inject) {\n warn(\n \"Invalid value for option \\\"inject\\\": expected an Array or an Object, \" +\n \"but got \" + (toRawType(inject)) + \".\",\n vm\n );\n }\n}\n\n/**\n * Normalize raw function directives into object format.\n */\nfunction normalizeDirectives (options) {\n var dirs = options.directives;\n if (dirs) {\n for (var key in dirs) {\n var def = dirs[key];\n if (typeof def === 'function') {\n dirs[key] = { bind: def, update: def };\n }\n }\n }\n}\n\nfunction assertObjectType (name, value, vm) {\n if (!isPlainObject(value)) {\n warn(\n \"Invalid value for option \\\"\" + name + \"\\\": expected an Object, \" +\n \"but got \" + (toRawType(value)) + \".\",\n vm\n );\n }\n}\n\n/**\n * Merge two option objects into a new one.\n * Core utility used in both instantiation and inheritance.\n */\nfunction mergeOptions (\n parent,\n child,\n vm\n) {\n if (process.env.NODE_ENV !== 'production') {\n checkComponents(child);\n }\n\n if (typeof child === 'function') {\n child = child.options;\n }\n\n normalizeProps(child, vm);\n normalizeInject(child, vm);\n normalizeDirectives(child);\n var extendsFrom = child.extends;\n if (extendsFrom) {\n parent = mergeOptions(parent, extendsFrom, vm);\n }\n if (child.mixins) {\n for (var i = 0, l = child.mixins.length; i < l; i++) {\n parent = mergeOptions(parent, child.mixins[i], vm);\n }\n }\n var options = {};\n var key;\n for (key in parent) {\n mergeField(key);\n }\n for (key in child) {\n if (!hasOwn(parent, key)) {\n mergeField(key);\n }\n }\n function mergeField (key) {\n var strat = strats[key] || defaultStrat;\n options[key] = strat(parent[key], child[key], vm, key);\n }\n return options\n}\n\n/**\n * Resolve an asset.\n * This function is used because child instances need access\n * to assets defined in its ancestor chain.\n */\nfunction resolveAsset (\n options,\n type,\n id,\n warnMissing\n) {\n /* istanbul ignore if */\n if (typeof id !== 'string') {\n return\n }\n var assets = options[type];\n // check local registration variations first\n if (hasOwn(assets, id)) { return assets[id] }\n var camelizedId = camelize(id);\n if (hasOwn(assets, camelizedId)) { return assets[camelizedId] }\n var PascalCaseId = capitalize(camelizedId);\n if (hasOwn(assets, PascalCaseId)) { return assets[PascalCaseId] }\n // fallback to prototype chain\n var res = assets[id] || assets[camelizedId] || assets[PascalCaseId];\n if (process.env.NODE_ENV !== 'production' && warnMissing && !res) {\n warn(\n 'Failed to resolve ' + type.slice(0, -1) + ': ' + id,\n options\n );\n }\n return res\n}\n\n/* */\n\nfunction validateProp (\n key,\n propOptions,\n propsData,\n vm\n) {\n var prop = propOptions[key];\n var absent = !hasOwn(propsData, key);\n var value = propsData[key];\n // handle boolean props\n if (isType(Boolean, prop.type)) {\n if (absent && !hasOwn(prop, 'default')) {\n value = false;\n } else if (!isType(String, prop.type) && (value === '' || value === hyphenate(key))) {\n value = true;\n }\n }\n // check default value\n if (value === undefined) {\n value = getPropDefaultValue(vm, prop, key);\n // since the default value is a fresh copy,\n // make sure to observe it.\n var prevShouldConvert = observerState.shouldConvert;\n observerState.shouldConvert = true;\n observe(value);\n observerState.shouldConvert = prevShouldConvert;\n }\n if (process.env.NODE_ENV !== 'production') {\n assertProp(prop, key, value, vm, absent);\n }\n return value\n}\n\n/**\n * Get the default value of a prop.\n */\nfunction getPropDefaultValue (vm, prop, key) {\n // no default, return undefined\n if (!hasOwn(prop, 'default')) {\n return undefined\n }\n var def = prop.default;\n // warn against non-factory defaults for Object & Array\n if (process.env.NODE_ENV !== 'production' && isObject(def)) {\n warn(\n 'Invalid default value for prop \"' + key + '\": ' +\n 'Props with type Object/Array must use a factory function ' +\n 'to return the default value.',\n vm\n );\n }\n // the raw prop value was also undefined from previous render,\n // return previous default value to avoid unnecessary watcher trigger\n if (vm && vm.$options.propsData &&\n vm.$options.propsData[key] === undefined &&\n vm._props[key] !== undefined\n ) {\n return vm._props[key]\n }\n // call factory function for non-Function types\n // a value is Function if its prototype is function even across different execution context\n return typeof def === 'function' && getType(prop.type) !== 'Function'\n ? def.call(vm)\n : def\n}\n\n/**\n * Assert whether a prop is valid.\n */\nfunction assertProp (\n prop,\n name,\n value,\n vm,\n absent\n) {\n if (prop.required && absent) {\n warn(\n 'Missing required prop: \"' + name + '\"',\n vm\n );\n return\n }\n if (value == null && !prop.required) {\n return\n }\n var type = prop.type;\n var valid = !type || type === true;\n var expectedTypes = [];\n if (type) {\n if (!Array.isArray(type)) {\n type = [type];\n }\n for (var i = 0; i < type.length && !valid; i++) {\n var assertedType = assertType(value, type[i]);\n expectedTypes.push(assertedType.expectedType || '');\n valid = assertedType.valid;\n }\n }\n if (!valid) {\n warn(\n \"Invalid prop: type check failed for prop \\\"\" + name + \"\\\".\" +\n \" Expected \" + (expectedTypes.map(capitalize).join(', ')) +\n \", got \" + (toRawType(value)) + \".\",\n vm\n );\n return\n }\n var validator = prop.validator;\n if (validator) {\n if (!validator(value)) {\n warn(\n 'Invalid prop: custom validator check failed for prop \"' + name + '\".',\n vm\n );\n }\n }\n}\n\nvar simpleCheckRE = /^(String|Number|Boolean|Function|Symbol)$/;\n\nfunction assertType (value, type) {\n var valid;\n var expectedType = getType(type);\n if (simpleCheckRE.test(expectedType)) {\n var t = typeof value;\n valid = t === expectedType.toLowerCase();\n // for primitive wrapper objects\n if (!valid && t === 'object') {\n valid = value instanceof type;\n }\n } else if (expectedType === 'Object') {\n valid = isPlainObject(value);\n } else if (expectedType === 'Array') {\n valid = Array.isArray(value);\n } else {\n valid = value instanceof type;\n }\n return {\n valid: valid,\n expectedType: expectedType\n }\n}\n\n/**\n * Use function string name to check built-in types,\n * because a simple equality check will fail when running\n * across different vms / iframes.\n */\nfunction getType (fn) {\n var match = fn && fn.toString().match(/^\\s*function (\\w+)/);\n return match ? match[1] : ''\n}\n\nfunction isType (type, fn) {\n if (!Array.isArray(fn)) {\n return getType(fn) === getType(type)\n }\n for (var i = 0, len = fn.length; i < len; i++) {\n if (getType(fn[i]) === getType(type)) {\n return true\n }\n }\n /* istanbul ignore next */\n return false\n}\n\n/* */\n\nfunction handleError (err, vm, info) {\n if (vm) {\n var cur = vm;\n while ((cur = cur.$parent)) {\n var hooks = cur.$options.errorCaptured;\n if (hooks) {\n for (var i = 0; i < hooks.length; i++) {\n try {\n var capture = hooks[i].call(cur, err, vm, info) === false;\n if (capture) { return }\n } catch (e) {\n globalHandleError(e, cur, 'errorCaptured hook');\n }\n }\n }\n }\n }\n globalHandleError(err, vm, info);\n}\n\nfunction globalHandleError (err, vm, info) {\n if (config.errorHandler) {\n try {\n return config.errorHandler.call(null, err, vm, info)\n } catch (e) {\n logError(e, null, 'config.errorHandler');\n }\n }\n logError(err, vm, info);\n}\n\nfunction logError (err, vm, info) {\n if (process.env.NODE_ENV !== 'production') {\n warn((\"Error in \" + info + \": \\\"\" + (err.toString()) + \"\\\"\"), vm);\n }\n /* istanbul ignore else */\n if (inBrowser && typeof console !== 'undefined') {\n console.error(err);\n } else {\n throw err\n }\n}\n\n/* */\n/* globals MessageChannel */\n\nvar callbacks = [];\nvar pending = false;\n\nfunction flushCallbacks () {\n pending = false;\n var copies = callbacks.slice(0);\n callbacks.length = 0;\n for (var i = 0; i < copies.length; i++) {\n copies[i]();\n }\n}\n\n// Here we have async deferring wrappers using both micro and macro tasks.\n// In < 2.4 we used micro tasks everywhere, but there are some scenarios where\n// micro tasks have too high a priority and fires in between supposedly\n// sequential events (e.g. #4521, #6690) or even between bubbling of the same\n// event (#6566). However, using macro tasks everywhere also has subtle problems\n// when state is changed right before repaint (e.g. #6813, out-in transitions).\n// Here we use micro task by default, but expose a way to force macro task when\n// needed (e.g. in event handlers attached by v-on).\nvar microTimerFunc;\nvar macroTimerFunc;\nvar useMacroTask = false;\n\n// Determine (macro) Task defer implementation.\n// Technically setImmediate should be the ideal choice, but it's only available\n// in IE. The only polyfill that consistently queues the callback after all DOM\n// events triggered in the same loop is by using MessageChannel.\n/* istanbul ignore if */\nif (typeof setImmediate !== 'undefined' && isNative(setImmediate)) {\n macroTimerFunc = function () {\n setImmediate(flushCallbacks);\n };\n} else if (typeof MessageChannel !== 'undefined' && (\n isNative(MessageChannel) ||\n // PhantomJS\n MessageChannel.toString() === '[object MessageChannelConstructor]'\n)) {\n var channel = new MessageChannel();\n var port = channel.port2;\n channel.port1.onmessage = flushCallbacks;\n macroTimerFunc = function () {\n port.postMessage(1);\n };\n} else {\n /* istanbul ignore next */\n macroTimerFunc = function () {\n setTimeout(flushCallbacks, 0);\n };\n}\n\n// Determine MicroTask defer implementation.\n/* istanbul ignore next, $flow-disable-line */\nif (typeof Promise !== 'undefined' && isNative(Promise)) {\n var p = Promise.resolve();\n microTimerFunc = function () {\n p.then(flushCallbacks);\n // in problematic UIWebViews, Promise.then doesn't completely break, but\n // it can get stuck in a weird state where callbacks are pushed into the\n // microtask queue but the queue isn't being flushed, until the browser\n // needs to do some other work, e.g. handle a timer. Therefore we can\n // \"force\" the microtask queue to be flushed by adding an empty timer.\n if (isIOS) { setTimeout(noop); }\n };\n} else {\n // fallback to macro\n microTimerFunc = macroTimerFunc;\n}\n\n/**\n * Wrap a function so that if any code inside triggers state change,\n * the changes are queued using a Task instead of a MicroTask.\n */\nfunction withMacroTask (fn) {\n return fn._withTask || (fn._withTask = function () {\n useMacroTask = true;\n var res = fn.apply(null, arguments);\n useMacroTask = false;\n return res\n })\n}\n\nfunction nextTick (cb, ctx) {\n var _resolve;\n callbacks.push(function () {\n if (cb) {\n try {\n cb.call(ctx);\n } catch (e) {\n handleError(e, ctx, 'nextTick');\n }\n } else if (_resolve) {\n _resolve(ctx);\n }\n });\n if (!pending) {\n pending = true;\n if (useMacroTask) {\n macroTimerFunc();\n } else {\n microTimerFunc();\n }\n }\n // $flow-disable-line\n if (!cb && typeof Promise !== 'undefined') {\n return new Promise(function (resolve) {\n _resolve = resolve;\n })\n }\n}\n\n/* */\n\nvar mark;\nvar measure;\n\nif (process.env.NODE_ENV !== 'production') {\n var perf = inBrowser && window.performance;\n /* istanbul ignore if */\n if (\n perf &&\n perf.mark &&\n perf.measure &&\n perf.clearMarks &&\n perf.clearMeasures\n ) {\n mark = function (tag) { return perf.mark(tag); };\n measure = function (name, startTag, endTag) {\n perf.measure(name, startTag, endTag);\n perf.clearMarks(startTag);\n perf.clearMarks(endTag);\n perf.clearMeasures(name);\n };\n }\n}\n\n/* not type checking this file because flow doesn't play well with Proxy */\n\nvar initProxy;\n\nif (process.env.NODE_ENV !== 'production') {\n var allowedGlobals = makeMap(\n 'Infinity,undefined,NaN,isFinite,isNaN,' +\n 'parseFloat,parseInt,decodeURI,decodeURIComponent,encodeURI,encodeURIComponent,' +\n 'Math,Number,Date,Array,Object,Boolean,String,RegExp,Map,Set,JSON,Intl,' +\n 'require' // for Webpack/Browserify\n );\n\n var warnNonPresent = function (target, key) {\n warn(\n \"Property or method \\\"\" + key + \"\\\" is not defined on the instance but \" +\n 'referenced during render. Make sure that this property is reactive, ' +\n 'either in the data option, or for class-based components, by ' +\n 'initializing the property. ' +\n 'See: https://vuejs.org/v2/guide/reactivity.html#Declaring-Reactive-Properties.',\n target\n );\n };\n\n var hasProxy =\n typeof Proxy !== 'undefined' &&\n Proxy.toString().match(/native code/);\n\n if (hasProxy) {\n var isBuiltInModifier = makeMap('stop,prevent,self,ctrl,shift,alt,meta,exact');\n config.keyCodes = new Proxy(config.keyCodes, {\n set: function set (target, key, value) {\n if (isBuiltInModifier(key)) {\n warn((\"Avoid overwriting built-in modifier in config.keyCodes: .\" + key));\n return false\n } else {\n target[key] = value;\n return true\n }\n }\n });\n }\n\n var hasHandler = {\n has: function has (target, key) {\n var has = key in target;\n var isAllowed = allowedGlobals(key) || key.charAt(0) === '_';\n if (!has && !isAllowed) {\n warnNonPresent(target, key);\n }\n return has || !isAllowed\n }\n };\n\n var getHandler = {\n get: function get (target, key) {\n if (typeof key === 'string' && !(key in target)) {\n warnNonPresent(target, key);\n }\n return target[key]\n }\n };\n\n initProxy = function initProxy (vm) {\n if (hasProxy) {\n // determine which proxy handler to use\n var options = vm.$options;\n var handlers = options.render && options.render._withStripped\n ? getHandler\n : hasHandler;\n vm._renderProxy = new Proxy(vm, handlers);\n } else {\n vm._renderProxy = vm;\n }\n };\n}\n\n/* */\n\nvar normalizeEvent = cached(function (name) {\n var passive = name.charAt(0) === '&';\n name = passive ? name.slice(1) : name;\n var once$$1 = name.charAt(0) === '~'; // Prefixed last, checked first\n name = once$$1 ? name.slice(1) : name;\n var capture = name.charAt(0) === '!';\n name = capture ? name.slice(1) : name;\n return {\n name: name,\n once: once$$1,\n capture: capture,\n passive: passive\n }\n});\n\nfunction createFnInvoker (fns) {\n function invoker () {\n var arguments$1 = arguments;\n\n var fns = invoker.fns;\n if (Array.isArray(fns)) {\n var cloned = fns.slice();\n for (var i = 0; i < cloned.length; i++) {\n cloned[i].apply(null, arguments$1);\n }\n } else {\n // return handler return value for single handlers\n return fns.apply(null, arguments)\n }\n }\n invoker.fns = fns;\n return invoker\n}\n\nfunction updateListeners (\n on,\n oldOn,\n add,\n remove$$1,\n vm\n) {\n var name, cur, old, event;\n for (name in on) {\n cur = on[name];\n old = oldOn[name];\n event = normalizeEvent(name);\n if (isUndef(cur)) {\n process.env.NODE_ENV !== 'production' && warn(\n \"Invalid handler for event \\\"\" + (event.name) + \"\\\": got \" + String(cur),\n vm\n );\n } else if (isUndef(old)) {\n if (isUndef(cur.fns)) {\n cur = on[name] = createFnInvoker(cur);\n }\n add(event.name, cur, event.once, event.capture, event.passive);\n } else if (cur !== old) {\n old.fns = cur;\n on[name] = old;\n }\n }\n for (name in oldOn) {\n if (isUndef(on[name])) {\n event = normalizeEvent(name);\n remove$$1(event.name, oldOn[name], event.capture);\n }\n }\n}\n\n/* */\n\nfunction mergeVNodeHook (def, hookKey, hook) {\n var invoker;\n var oldHook = def[hookKey];\n\n function wrappedHook () {\n hook.apply(this, arguments);\n // important: remove merged hook to ensure it's called only once\n // and prevent memory leak\n remove(invoker.fns, wrappedHook);\n }\n\n if (isUndef(oldHook)) {\n // no existing hook\n invoker = createFnInvoker([wrappedHook]);\n } else {\n /* istanbul ignore if */\n if (isDef(oldHook.fns) && isTrue(oldHook.merged)) {\n // already a merged invoker\n invoker = oldHook;\n invoker.fns.push(wrappedHook);\n } else {\n // existing plain hook\n invoker = createFnInvoker([oldHook, wrappedHook]);\n }\n }\n\n invoker.merged = true;\n def[hookKey] = invoker;\n}\n\n/* */\n\nfunction extractPropsFromVNodeData (\n data,\n Ctor,\n tag\n) {\n // we are only extracting raw values here.\n // validation and default values are handled in the child\n // component itself.\n var propOptions = Ctor.options.props;\n if (isUndef(propOptions)) {\n return\n }\n var res = {};\n var attrs = data.attrs;\n var props = data.props;\n if (isDef(attrs) || isDef(props)) {\n for (var key in propOptions) {\n var altKey = hyphenate(key);\n if (process.env.NODE_ENV !== 'production') {\n var keyInLowerCase = key.toLowerCase();\n if (\n key !== keyInLowerCase &&\n attrs && hasOwn(attrs, keyInLowerCase)\n ) {\n tip(\n \"Prop \\\"\" + keyInLowerCase + \"\\\" is passed to component \" +\n (formatComponentName(tag || Ctor)) + \", but the declared prop name is\" +\n \" \\\"\" + key + \"\\\". \" +\n \"Note that HTML attributes are case-insensitive and camelCased \" +\n \"props need to use their kebab-case equivalents when using in-DOM \" +\n \"templates. You should probably use \\\"\" + altKey + \"\\\" instead of \\\"\" + key + \"\\\".\"\n );\n }\n }\n checkProp(res, props, key, altKey, true) ||\n checkProp(res, attrs, key, altKey, false);\n }\n }\n return res\n}\n\nfunction checkProp (\n res,\n hash,\n key,\n altKey,\n preserve\n) {\n if (isDef(hash)) {\n if (hasOwn(hash, key)) {\n res[key] = hash[key];\n if (!preserve) {\n delete hash[key];\n }\n return true\n } else if (hasOwn(hash, altKey)) {\n res[key] = hash[altKey];\n if (!preserve) {\n delete hash[altKey];\n }\n return true\n }\n }\n return false\n}\n\n/* */\n\n// The template compiler attempts to minimize the need for normalization by\n// statically analyzing the template at compile time.\n//\n// For plain HTML markup, normalization can be completely skipped because the\n// generated render function is guaranteed to return Array<VNode>. There are\n// two cases where extra normalization is needed:\n\n// 1. When the children contains components - because a functional component\n// may return an Array instead of a single root. In this case, just a simple\n// normalization is needed - if any child is an Array, we flatten the whole\n// thing with Array.prototype.concat. It is guaranteed to be only 1-level deep\n// because functional components already normalize their own children.\nfunction simpleNormalizeChildren (children) {\n for (var i = 0; i < children.length; i++) {\n if (Array.isArray(children[i])) {\n return Array.prototype.concat.apply([], children)\n }\n }\n return children\n}\n\n// 2. When the children contains constructs that always generated nested Arrays,\n// e.g. <template>, <slot>, v-for, or when the children is provided by user\n// with hand-written render functions / JSX. In such cases a full normalization\n// is needed to cater to all possible types of children values.\nfunction normalizeChildren (children) {\n return isPrimitive(children)\n ? [createTextVNode(children)]\n : Array.isArray(children)\n ? normalizeArrayChildren(children)\n : undefined\n}\n\nfunction isTextNode (node) {\n return isDef(node) && isDef(node.text) && isFalse(node.isComment)\n}\n\nfunction normalizeArrayChildren (children, nestedIndex) {\n var res = [];\n var i, c, lastIndex, last;\n for (i = 0; i < children.length; i++) {\n c = children[i];\n if (isUndef(c) || typeof c === 'boolean') { continue }\n lastIndex = res.length - 1;\n last = res[lastIndex];\n // nested\n if (Array.isArray(c)) {\n if (c.length > 0) {\n c = normalizeArrayChildren(c, ((nestedIndex || '') + \"_\" + i));\n // merge adjacent text nodes\n if (isTextNode(c[0]) && isTextNode(last)) {\n res[lastIndex] = createTextVNode(last.text + (c[0]).text);\n c.shift();\n }\n res.push.apply(res, c);\n }\n } else if (isPrimitive(c)) {\n if (isTextNode(last)) {\n // merge adjacent text nodes\n // this is necessary for SSR hydration because text nodes are\n // essentially merged when rendered to HTML strings\n res[lastIndex] = createTextVNode(last.text + c);\n } else if (c !== '') {\n // convert primitive to vnode\n res.push(createTextVNode(c));\n }\n } else {\n if (isTextNode(c) && isTextNode(last)) {\n // merge adjacent text nodes\n res[lastIndex] = createTextVNode(last.text + c.text);\n } else {\n // default key for nested array children (likely generated by v-for)\n if (isTrue(children._isVList) &&\n isDef(c.tag) &&\n isUndef(c.key) &&\n isDef(nestedIndex)) {\n c.key = \"__vlist\" + nestedIndex + \"_\" + i + \"__\";\n }\n res.push(c);\n }\n }\n }\n return res\n}\n\n/* */\n\nfunction ensureCtor (comp, base) {\n if (\n comp.__esModule ||\n (hasSymbol && comp[Symbol.toStringTag] === 'Module')\n ) {\n comp = comp.default;\n }\n return isObject(comp)\n ? base.extend(comp)\n : comp\n}\n\nfunction createAsyncPlaceholder (\n factory,\n data,\n context,\n children,\n tag\n) {\n var node = createEmptyVNode();\n node.asyncFactory = factory;\n node.asyncMeta = { data: data, context: context, children: children, tag: tag };\n return node\n}\n\nfunction resolveAsyncComponent (\n factory,\n baseCtor,\n context\n) {\n if (isTrue(factory.error) && isDef(factory.errorComp)) {\n return factory.errorComp\n }\n\n if (isDef(factory.resolved)) {\n return factory.resolved\n }\n\n if (isTrue(factory.loading) && isDef(factory.loadingComp)) {\n return factory.loadingComp\n }\n\n if (isDef(factory.contexts)) {\n // already pending\n factory.contexts.push(context);\n } else {\n var contexts = factory.contexts = [context];\n var sync = true;\n\n var forceRender = function () {\n for (var i = 0, l = contexts.length; i < l; i++) {\n contexts[i].$forceUpdate();\n }\n };\n\n var resolve = once(function (res) {\n // cache resolved\n factory.resolved = ensureCtor(res, baseCtor);\n // invoke callbacks only if this is not a synchronous resolve\n // (async resolves are shimmed as synchronous during SSR)\n if (!sync) {\n forceRender();\n }\n });\n\n var reject = once(function (reason) {\n process.env.NODE_ENV !== 'production' && warn(\n \"Failed to resolve async component: \" + (String(factory)) +\n (reason ? (\"\\nReason: \" + reason) : '')\n );\n if (isDef(factory.errorComp)) {\n factory.error = true;\n forceRender();\n }\n });\n\n var res = factory(resolve, reject);\n\n if (isObject(res)) {\n if (typeof res.then === 'function') {\n // () => Promise\n if (isUndef(factory.resolved)) {\n res.then(resolve, reject);\n }\n } else if (isDef(res.component) && typeof res.component.then === 'function') {\n res.component.then(resolve, reject);\n\n if (isDef(res.error)) {\n factory.errorComp = ensureCtor(res.error, baseCtor);\n }\n\n if (isDef(res.loading)) {\n factory.loadingComp = ensureCtor(res.loading, baseCtor);\n if (res.delay === 0) {\n factory.loading = true;\n } else {\n setTimeout(function () {\n if (isUndef(factory.resolved) && isUndef(factory.error)) {\n factory.loading = true;\n forceRender();\n }\n }, res.delay || 200);\n }\n }\n\n if (isDef(res.timeout)) {\n setTimeout(function () {\n if (isUndef(factory.resolved)) {\n reject(\n process.env.NODE_ENV !== 'production'\n ? (\"timeout (\" + (res.timeout) + \"ms)\")\n : null\n );\n }\n }, res.timeout);\n }\n }\n }\n\n sync = false;\n // return in case resolved synchronously\n return factory.loading\n ? factory.loadingComp\n : factory.resolved\n }\n}\n\n/* */\n\nfunction isAsyncPlaceholder (node) {\n return node.isComment && node.asyncFactory\n}\n\n/* */\n\nfunction getFirstComponentChild (children) {\n if (Array.isArray(children)) {\n for (var i = 0; i < children.length; i++) {\n var c = children[i];\n if (isDef(c) && (isDef(c.componentOptions) || isAsyncPlaceholder(c))) {\n return c\n }\n }\n }\n}\n\n/* */\n\n/* */\n\nfunction initEvents (vm) {\n vm._events = Object.create(null);\n vm._hasHookEvent = false;\n // init parent attached events\n var listeners = vm.$options._parentListeners;\n if (listeners) {\n updateComponentListeners(vm, listeners);\n }\n}\n\nvar target;\n\nfunction add (event, fn, once) {\n if (once) {\n target.$once(event, fn);\n } else {\n target.$on(event, fn);\n }\n}\n\nfunction remove$1 (event, fn) {\n target.$off(event, fn);\n}\n\nfunction updateComponentListeners (\n vm,\n listeners,\n oldListeners\n) {\n target = vm;\n updateListeners(listeners, oldListeners || {}, add, remove$1, vm);\n}\n\nfunction eventsMixin (Vue) {\n var hookRE = /^hook:/;\n Vue.prototype.$on = function (event, fn) {\n var this$1 = this;\n\n var vm = this;\n if (Array.isArray(event)) {\n for (var i = 0, l = event.length; i < l; i++) {\n this$1.$on(event[i], fn);\n }\n } else {\n (vm._events[event] || (vm._events[event] = [])).push(fn);\n // optimize hook:event cost by using a boolean flag marked at registration\n // instead of a hash lookup\n if (hookRE.test(event)) {\n vm._hasHookEvent = true;\n }\n }\n return vm\n };\n\n Vue.prototype.$once = function (event, fn) {\n var vm = this;\n function on () {\n vm.$off(event, on);\n fn.apply(vm, arguments);\n }\n on.fn = fn;\n vm.$on(event, on);\n return vm\n };\n\n Vue.prototype.$off = function (event, fn) {\n var this$1 = this;\n\n var vm = this;\n // all\n if (!arguments.length) {\n vm._events = Object.create(null);\n return vm\n }\n // array of events\n if (Array.isArray(event)) {\n for (var i = 0, l = event.length; i < l; i++) {\n this$1.$off(event[i], fn);\n }\n return vm\n }\n // specific event\n var cbs = vm._events[event];\n if (!cbs) {\n return vm\n }\n if (arguments.length === 1) {\n vm._events[event] = null;\n return vm\n }\n if (fn) {\n // specific handler\n var cb;\n var i$1 = cbs.length;\n while (i$1--) {\n cb = cbs[i$1];\n if (cb === fn || cb.fn === fn) {\n cbs.splice(i$1, 1);\n break\n }\n }\n }\n return vm\n };\n\n Vue.prototype.$emit = function (event) {\n var vm = this;\n if (process.env.NODE_ENV !== 'production') {\n var lowerCaseEvent = event.toLowerCase();\n if (lowerCaseEvent !== event && vm._events[lowerCaseEvent]) {\n tip(\n \"Event \\\"\" + lowerCaseEvent + \"\\\" is emitted in component \" +\n (formatComponentName(vm)) + \" but the handler is registered for \\\"\" + event + \"\\\". \" +\n \"Note that HTML attributes are case-insensitive and you cannot use \" +\n \"v-on to listen to camelCase events when using in-DOM templates. \" +\n \"You should probably use \\\"\" + (hyphenate(event)) + \"\\\" instead of \\\"\" + event + \"\\\".\"\n );\n }\n }\n var cbs = vm._events[event];\n if (cbs) {\n cbs = cbs.length > 1 ? toArray(cbs) : cbs;\n var args = toArray(arguments, 1);\n for (var i = 0, l = cbs.length; i < l; i++) {\n try {\n cbs[i].apply(vm, args);\n } catch (e) {\n handleError(e, vm, (\"event handler for \\\"\" + event + \"\\\"\"));\n }\n }\n }\n return vm\n };\n}\n\n/* */\n\n/**\n * Runtime helper for resolving raw children VNodes into a slot object.\n */\nfunction resolveSlots (\n children,\n context\n) {\n var slots = {};\n if (!children) {\n return slots\n }\n var defaultSlot = [];\n for (var i = 0, l = children.length; i < l; i++) {\n var child = children[i];\n var data = child.data;\n // remove slot attribute if the node is resolved as a Vue slot node\n if (data && data.attrs && data.attrs.slot) {\n delete data.attrs.slot;\n }\n // named slots should only be respected if the vnode was rendered in the\n // same context.\n if ((child.context === context || child.functionalContext === context) &&\n data && data.slot != null\n ) {\n var name = child.data.slot;\n var slot = (slots[name] || (slots[name] = []));\n if (child.tag === 'template') {\n slot.push.apply(slot, child.children);\n } else {\n slot.push(child);\n }\n } else {\n defaultSlot.push(child);\n }\n }\n // ignore whitespace\n if (!defaultSlot.every(isWhitespace)) {\n slots.default = defaultSlot;\n }\n return slots\n}\n\nfunction isWhitespace (node) {\n return node.isComment || node.text === ' '\n}\n\nfunction resolveScopedSlots (\n fns, // see flow/vnode\n res\n) {\n res = res || {};\n for (var i = 0; i < fns.length; i++) {\n if (Array.isArray(fns[i])) {\n resolveScopedSlots(fns[i], res);\n } else {\n res[fns[i].key] = fns[i].fn;\n }\n }\n return res\n}\n\n/* */\n\nvar activeInstance = null;\nvar isUpdatingChildComponent = false;\n\nfunction initLifecycle (vm) {\n var options = vm.$options;\n\n // locate first non-abstract parent\n var parent = options.parent;\n if (parent && !options.abstract) {\n while (parent.$options.abstract && parent.$parent) {\n parent = parent.$parent;\n }\n parent.$children.push(vm);\n }\n\n vm.$parent = parent;\n vm.$root = parent ? parent.$root : vm;\n\n vm.$children = [];\n vm.$refs = {};\n\n vm._watcher = null;\n vm._inactive = null;\n vm._directInactive = false;\n vm._isMounted = false;\n vm._isDestroyed = false;\n vm._isBeingDestroyed = false;\n}\n\nfunction lifecycleMixin (Vue) {\n Vue.prototype._update = function (vnode, hydrating) {\n var vm = this;\n if (vm._isMounted) {\n callHook(vm, 'beforeUpdate');\n }\n var prevEl = vm.$el;\n var prevVnode = vm._vnode;\n var prevActiveInstance = activeInstance;\n activeInstance = vm;\n vm._vnode = vnode;\n // Vue.prototype.__patch__ is injected in entry points\n // based on the rendering backend used.\n if (!prevVnode) {\n // initial render\n vm.$el = vm.__patch__(\n vm.$el, vnode, hydrating, false /* removeOnly */,\n vm.$options._parentElm,\n vm.$options._refElm\n );\n // no need for the ref nodes after initial patch\n // this prevents keeping a detached DOM tree in memory (#5851)\n vm.$options._parentElm = vm.$options._refElm = null;\n } else {\n // updates\n vm.$el = vm.__patch__(prevVnode, vnode);\n }\n activeInstance = prevActiveInstance;\n // update __vue__ reference\n if (prevEl) {\n prevEl.__vue__ = null;\n }\n if (vm.$el) {\n vm.$el.__vue__ = vm;\n }\n // if parent is an HOC, update its $el as well\n if (vm.$vnode && vm.$parent && vm.$vnode === vm.$parent._vnode) {\n vm.$parent.$el = vm.$el;\n }\n // updated hook is called by the scheduler to ensure that children are\n // updated in a parent's updated hook.\n };\n\n Vue.prototype.$forceUpdate = function () {\n var vm = this;\n if (vm._watcher) {\n vm._watcher.update();\n }\n };\n\n Vue.prototype.$destroy = function () {\n var vm = this;\n if (vm._isBeingDestroyed) {\n return\n }\n callHook(vm, 'beforeDestroy');\n vm._isBeingDestroyed = true;\n // remove self from parent\n var parent = vm.$parent;\n if (parent && !parent._isBeingDestroyed && !vm.$options.abstract) {\n remove(parent.$children, vm);\n }\n // teardown watchers\n if (vm._watcher) {\n vm._watcher.teardown();\n }\n var i = vm._watchers.length;\n while (i--) {\n vm._watchers[i].teardown();\n }\n // remove reference from data ob\n // frozen object may not have observer.\n if (vm._data.__ob__) {\n vm._data.__ob__.vmCount--;\n }\n // call the last hook...\n vm._isDestroyed = true;\n // invoke destroy hooks on current rendered tree\n vm.__patch__(vm._vnode, null);\n // fire destroyed hook\n callHook(vm, 'destroyed');\n // turn off all instance listeners.\n vm.$off();\n // remove __vue__ reference\n if (vm.$el) {\n vm.$el.__vue__ = null;\n }\n // release circular reference (#6759)\n if (vm.$vnode) {\n vm.$vnode.parent = null;\n }\n };\n}\n\nfunction mountComponent (\n vm,\n el,\n hydrating\n) {\n vm.$el = el;\n if (!vm.$options.render) {\n vm.$options.render = createEmptyVNode;\n if (process.env.NODE_ENV !== 'production') {\n /* istanbul ignore if */\n if ((vm.$options.template && vm.$options.template.charAt(0) !== '#') ||\n vm.$options.el || el) {\n warn(\n 'You are using the runtime-only build of Vue where the template ' +\n 'compiler is not available. Either pre-compile the templates into ' +\n 'render functions, or use the compiler-included build.',\n vm\n );\n } else {\n warn(\n 'Failed to mount component: template or render function not defined.',\n vm\n );\n }\n }\n }\n callHook(vm, 'beforeMount');\n\n var updateComponent;\n /* istanbul ignore if */\n if (process.env.NODE_ENV !== 'production' && config.performance && mark) {\n updateComponent = function () {\n var name = vm._name;\n var id = vm._uid;\n var startTag = \"vue-perf-start:\" + id;\n var endTag = \"vue-perf-end:\" + id;\n\n mark(startTag);\n var vnode = vm._render();\n mark(endTag);\n measure((\"vue \" + name + \" render\"), startTag, endTag);\n\n mark(startTag);\n vm._update(vnode, hydrating);\n mark(endTag);\n measure((\"vue \" + name + \" patch\"), startTag, endTag);\n };\n } else {\n updateComponent = function () {\n vm._update(vm._render(), hydrating);\n };\n }\n\n vm._watcher = new Watcher(vm, updateComponent, noop);\n hydrating = false;\n\n // manually mounted instance, call mounted on self\n // mounted is called for render-created child components in its inserted hook\n if (vm.$vnode == null) {\n vm._isMounted = true;\n callHook(vm, 'mounted');\n }\n return vm\n}\n\nfunction updateChildComponent (\n vm,\n propsData,\n listeners,\n parentVnode,\n renderChildren\n) {\n if (process.env.NODE_ENV !== 'production') {\n isUpdatingChildComponent = true;\n }\n\n // determine whether component has slot children\n // we need to do this before overwriting $options._renderChildren\n var hasChildren = !!(\n renderChildren || // has new static slots\n vm.$options._renderChildren || // has old static slots\n parentVnode.data.scopedSlots || // has new scoped slots\n vm.$scopedSlots !== emptyObject // has old scoped slots\n );\n\n vm.$options._parentVnode = parentVnode;\n vm.$vnode = parentVnode; // update vm's placeholder node without re-render\n\n if (vm._vnode) { // update child tree's parent\n vm._vnode.parent = parentVnode;\n }\n vm.$options._renderChildren = renderChildren;\n\n // update $attrs and $listeners hash\n // these are also reactive so they may trigger child update if the child\n // used them during render\n vm.$attrs = (parentVnode.data && parentVnode.data.attrs) || emptyObject;\n vm.$listeners = listeners || emptyObject;\n\n // update props\n if (propsData && vm.$options.props) {\n observerState.shouldConvert = false;\n var props = vm._props;\n var propKeys = vm.$options._propKeys || [];\n for (var i = 0; i < propKeys.length; i++) {\n var key = propKeys[i];\n props[key] = validateProp(key, vm.$options.props, propsData, vm);\n }\n observerState.shouldConvert = true;\n // keep a copy of raw propsData\n vm.$options.propsData = propsData;\n }\n\n // update listeners\n if (listeners) {\n var oldListeners = vm.$options._parentListeners;\n vm.$options._parentListeners = listeners;\n updateComponentListeners(vm, listeners, oldListeners);\n }\n // resolve slots + force update if has children\n if (hasChildren) {\n vm.$slots = resolveSlots(renderChildren, parentVnode.context);\n vm.$forceUpdate();\n }\n\n if (process.env.NODE_ENV !== 'production') {\n isUpdatingChildComponent = false;\n }\n}\n\nfunction isInInactiveTree (vm) {\n while (vm && (vm = vm.$parent)) {\n if (vm._inactive) { return true }\n }\n return false\n}\n\nfunction activateChildComponent (vm, direct) {\n if (direct) {\n vm._directInactive = false;\n if (isInInactiveTree(vm)) {\n return\n }\n } else if (vm._directInactive) {\n return\n }\n if (vm._inactive || vm._inactive === null) {\n vm._inactive = false;\n for (var i = 0; i < vm.$children.length; i++) {\n activateChildComponent(vm.$children[i]);\n }\n callHook(vm, 'activated');\n }\n}\n\nfunction deactivateChildComponent (vm, direct) {\n if (direct) {\n vm._directInactive = true;\n if (isInInactiveTree(vm)) {\n return\n }\n }\n if (!vm._inactive) {\n vm._inactive = true;\n for (var i = 0; i < vm.$children.length; i++) {\n deactivateChildComponent(vm.$children[i]);\n }\n callHook(vm, 'deactivated');\n }\n}\n\nfunction callHook (vm, hook) {\n var handlers = vm.$options[hook];\n if (handlers) {\n for (var i = 0, j = handlers.length; i < j; i++) {\n try {\n handlers[i].call(vm);\n } catch (e) {\n handleError(e, vm, (hook + \" hook\"));\n }\n }\n }\n if (vm._hasHookEvent) {\n vm.$emit('hook:' + hook);\n }\n}\n\n/* */\n\n\nvar MAX_UPDATE_COUNT = 100;\n\nvar queue = [];\nvar activatedChildren = [];\nvar has = {};\nvar circular = {};\nvar waiting = false;\nvar flushing = false;\nvar index = 0;\n\n/**\n * Reset the scheduler's state.\n */\nfunction resetSchedulerState () {\n index = queue.length = activatedChildren.length = 0;\n has = {};\n if (process.env.NODE_ENV !== 'production') {\n circular = {};\n }\n waiting = flushing = false;\n}\n\n/**\n * Flush both queues and run the watchers.\n */\nfunction flushSchedulerQueue () {\n flushing = true;\n var watcher, id;\n\n // Sort queue before flush.\n // This ensures that:\n // 1. Components are updated from parent to child. (because parent is always\n // created before the child)\n // 2. A component's user watchers are run before its render watcher (because\n // user watchers are created before the render watcher)\n // 3. If a component is destroyed during a parent component's watcher run,\n // its watchers can be skipped.\n queue.sort(function (a, b) { return a.id - b.id; });\n\n // do not cache length because more watchers might be pushed\n // as we run existing watchers\n for (index = 0; index < queue.length; index++) {\n watcher = queue[index];\n id = watcher.id;\n has[id] = null;\n watcher.run();\n // in dev build, check and stop circular updates.\n if (process.env.NODE_ENV !== 'production' && has[id] != null) {\n circular[id] = (circular[id] || 0) + 1;\n if (circular[id] > MAX_UPDATE_COUNT) {\n warn(\n 'You may have an infinite update loop ' + (\n watcher.user\n ? (\"in watcher with expression \\\"\" + (watcher.expression) + \"\\\"\")\n : \"in a component render function.\"\n ),\n watcher.vm\n );\n break\n }\n }\n }\n\n // keep copies of post queues before resetting state\n var activatedQueue = activatedChildren.slice();\n var updatedQueue = queue.slice();\n\n resetSchedulerState();\n\n // call component updated and activated hooks\n callActivatedHooks(activatedQueue);\n callUpdatedHooks(updatedQueue);\n\n // devtool hook\n /* istanbul ignore if */\n if (devtools && config.devtools) {\n devtools.emit('flush');\n }\n}\n\nfunction callUpdatedHooks (queue) {\n var i = queue.length;\n while (i--) {\n var watcher = queue[i];\n var vm = watcher.vm;\n if (vm._watcher === watcher && vm._isMounted) {\n callHook(vm, 'updated');\n }\n }\n}\n\n/**\n * Queue a kept-alive component that was activated during patch.\n * The queue will be processed after the entire tree has been patched.\n */\nfunction queueActivatedComponent (vm) {\n // setting _inactive to false here so that a render function can\n // rely on checking whether it's in an inactive tree (e.g. router-view)\n vm._inactive = false;\n activatedChildren.push(vm);\n}\n\nfunction callActivatedHooks (queue) {\n for (var i = 0; i < queue.length; i++) {\n queue[i]._inactive = true;\n activateChildComponent(queue[i], true /* true */);\n }\n}\n\n/**\n * Push a watcher into the watcher queue.\n * Jobs with duplicate IDs will be skipped unless it's\n * pushed when the queue is being flushed.\n */\nfunction queueWatcher (watcher) {\n var id = watcher.id;\n if (has[id] == null) {\n has[id] = true;\n if (!flushing) {\n queue.push(watcher);\n } else {\n // if already flushing, splice the watcher based on its id\n // if already past its id, it will be run next immediately.\n var i = queue.length - 1;\n while (i > index && queue[i].id > watcher.id) {\n i--;\n }\n queue.splice(i + 1, 0, watcher);\n }\n // queue the flush\n if (!waiting) {\n waiting = true;\n nextTick(flushSchedulerQueue);\n }\n }\n}\n\n/* */\n\nvar uid$2 = 0;\n\n/**\n * A watcher parses an expression, collects dependencies,\n * and fires callback when the expression value changes.\n * This is used for both the $watch() api and directives.\n */\nvar Watcher = function Watcher (\n vm,\n expOrFn,\n cb,\n options\n) {\n this.vm = vm;\n vm._watchers.push(this);\n // options\n if (options) {\n this.deep = !!options.deep;\n this.user = !!options.user;\n this.lazy = !!options.lazy;\n this.sync = !!options.sync;\n } else {\n this.deep = this.user = this.lazy = this.sync = false;\n }\n this.cb = cb;\n this.id = ++uid$2; // uid for batching\n this.active = true;\n this.dirty = this.lazy; // for lazy watchers\n this.deps = [];\n this.newDeps = [];\n this.depIds = new _Set();\n this.newDepIds = new _Set();\n this.expression = process.env.NODE_ENV !== 'production'\n ? expOrFn.toString()\n : '';\n // parse expression for getter\n if (typeof expOrFn === 'function') {\n this.getter = expOrFn;\n } else {\n this.getter = parsePath(expOrFn);\n if (!this.getter) {\n this.getter = function () {};\n process.env.NODE_ENV !== 'production' && warn(\n \"Failed watching path: \\\"\" + expOrFn + \"\\\" \" +\n 'Watcher only accepts simple dot-delimited paths. ' +\n 'For full control, use a function instead.',\n vm\n );\n }\n }\n this.value = this.lazy\n ? undefined\n : this.get();\n};\n\n/**\n * Evaluate the getter, and re-collect dependencies.\n */\nWatcher.prototype.get = function get () {\n pushTarget(this);\n var value;\n var vm = this.vm;\n try {\n value = this.getter.call(vm, vm);\n } catch (e) {\n if (this.user) {\n handleError(e, vm, (\"getter for watcher \\\"\" + (this.expression) + \"\\\"\"));\n } else {\n throw e\n }\n } finally {\n // \"touch\" every property so they are all tracked as\n // dependencies for deep watching\n if (this.deep) {\n traverse(value);\n }\n popTarget();\n this.cleanupDeps();\n }\n return value\n};\n\n/**\n * Add a dependency to this directive.\n */\nWatcher.prototype.addDep = function addDep (dep) {\n var id = dep.id;\n if (!this.newDepIds.has(id)) {\n this.newDepIds.add(id);\n this.newDeps.push(dep);\n if (!this.depIds.has(id)) {\n dep.addSub(this);\n }\n }\n};\n\n/**\n * Clean up for dependency collection.\n */\nWatcher.prototype.cleanupDeps = function cleanupDeps () {\n var this$1 = this;\n\n var i = this.deps.length;\n while (i--) {\n var dep = this$1.deps[i];\n if (!this$1.newDepIds.has(dep.id)) {\n dep.removeSub(this$1);\n }\n }\n var tmp = this.depIds;\n this.depIds = this.newDepIds;\n this.newDepIds = tmp;\n this.newDepIds.clear();\n tmp = this.deps;\n this.deps = this.newDeps;\n this.newDeps = tmp;\n this.newDeps.length = 0;\n};\n\n/**\n * Subscriber interface.\n * Will be called when a dependency changes.\n */\nWatcher.prototype.update = function update () {\n /* istanbul ignore else */\n if (this.lazy) {\n this.dirty = true;\n } else if (this.sync) {\n this.run();\n } else {\n queueWatcher(this);\n }\n};\n\n/**\n * Scheduler job interface.\n * Will be called by the scheduler.\n */\nWatcher.prototype.run = function run () {\n if (this.active) {\n var value = this.get();\n if (\n value !== this.value ||\n // Deep watchers and watchers on Object/Arrays should fire even\n // when the value is the same, because the value may\n // have mutated.\n isObject(value) ||\n this.deep\n ) {\n // set new value\n var oldValue = this.value;\n this.value = value;\n if (this.user) {\n try {\n this.cb.call(this.vm, value, oldValue);\n } catch (e) {\n handleError(e, this.vm, (\"callback for watcher \\\"\" + (this.expression) + \"\\\"\"));\n }\n } else {\n this.cb.call(this.vm, value, oldValue);\n }\n }\n }\n};\n\n/**\n * Evaluate the value of the watcher.\n * This only gets called for lazy watchers.\n */\nWatcher.prototype.evaluate = function evaluate () {\n this.value = this.get();\n this.dirty = false;\n};\n\n/**\n * Depend on all deps collected by this watcher.\n */\nWatcher.prototype.depend = function depend () {\n var this$1 = this;\n\n var i = this.deps.length;\n while (i--) {\n this$1.deps[i].depend();\n }\n};\n\n/**\n * Remove self from all dependencies' subscriber list.\n */\nWatcher.prototype.teardown = function teardown () {\n var this$1 = this;\n\n if (this.active) {\n // remove self from vm's watcher list\n // this is a somewhat expensive operation so we skip it\n // if the vm is being destroyed.\n if (!this.vm._isBeingDestroyed) {\n remove(this.vm._watchers, this);\n }\n var i = this.deps.length;\n while (i--) {\n this$1.deps[i].removeSub(this$1);\n }\n this.active = false;\n }\n};\n\n/**\n * Recursively traverse an object to evoke all converted\n * getters, so that every nested property inside the object\n * is collected as a \"deep\" dependency.\n */\nvar seenObjects = new _Set();\nfunction traverse (val) {\n seenObjects.clear();\n _traverse(val, seenObjects);\n}\n\nfunction _traverse (val, seen) {\n var i, keys;\n var isA = Array.isArray(val);\n if ((!isA && !isObject(val)) || !Object.isExtensible(val)) {\n return\n }\n if (val.__ob__) {\n var depId = val.__ob__.dep.id;\n if (seen.has(depId)) {\n return\n }\n seen.add(depId);\n }\n if (isA) {\n i = val.length;\n while (i--) { _traverse(val[i], seen); }\n } else {\n keys = Object.keys(val);\n i = keys.length;\n while (i--) { _traverse(val[keys[i]], seen); }\n }\n}\n\n/* */\n\nvar sharedPropertyDefinition = {\n enumerable: true,\n configurable: true,\n get: noop,\n set: noop\n};\n\nfunction proxy (target, sourceKey, key) {\n sharedPropertyDefinition.get = function proxyGetter () {\n return this[sourceKey][key]\n };\n sharedPropertyDefinition.set = function proxySetter (val) {\n this[sourceKey][key] = val;\n };\n Object.defineProperty(target, key, sharedPropertyDefinition);\n}\n\nfunction initState (vm) {\n vm._watchers = [];\n var opts = vm.$options;\n if (opts.props) { initProps(vm, opts.props); }\n if (opts.methods) { initMethods(vm, opts.methods); }\n if (opts.data) {\n initData(vm);\n } else {\n observe(vm._data = {}, true /* asRootData */);\n }\n if (opts.computed) { initComputed(vm, opts.computed); }\n if (opts.watch && opts.watch !== nativeWatch) {\n initWatch(vm, opts.watch);\n }\n}\n\nfunction initProps (vm, propsOptions) {\n var propsData = vm.$options.propsData || {};\n var props = vm._props = {};\n // cache prop keys so that future props updates can iterate using Array\n // instead of dynamic object key enumeration.\n var keys = vm.$options._propKeys = [];\n var isRoot = !vm.$parent;\n // root instance props should be converted\n observerState.shouldConvert = isRoot;\n var loop = function ( key ) {\n keys.push(key);\n var value = validateProp(key, propsOptions, propsData, vm);\n /* istanbul ignore else */\n if (process.env.NODE_ENV !== 'production') {\n var hyphenatedKey = hyphenate(key);\n if (isReservedAttribute(hyphenatedKey) ||\n config.isReservedAttr(hyphenatedKey)) {\n warn(\n (\"\\\"\" + hyphenatedKey + \"\\\" is a reserved attribute and cannot be used as component prop.\"),\n vm\n );\n }\n defineReactive(props, key, value, function () {\n if (vm.$parent && !isUpdatingChildComponent) {\n warn(\n \"Avoid mutating a prop directly since the value will be \" +\n \"overwritten whenever the parent component re-renders. \" +\n \"Instead, use a data or computed property based on the prop's \" +\n \"value. Prop being mutated: \\\"\" + key + \"\\\"\",\n vm\n );\n }\n });\n } else {\n defineReactive(props, key, value);\n }\n // static props are already proxied on the component's prototype\n // during Vue.extend(). We only need to proxy props defined at\n // instantiation here.\n if (!(key in vm)) {\n proxy(vm, \"_props\", key);\n }\n };\n\n for (var key in propsOptions) loop( key );\n observerState.shouldConvert = true;\n}\n\nfunction initData (vm) {\n var data = vm.$options.data;\n data = vm._data = typeof data === 'function'\n ? getData(data, vm)\n : data || {};\n if (!isPlainObject(data)) {\n data = {};\n process.env.NODE_ENV !== 'production' && warn(\n 'data functions should return an object:\\n' +\n 'https://vuejs.org/v2/guide/components.html#data-Must-Be-a-Function',\n vm\n );\n }\n // proxy data on instance\n var keys = Object.keys(data);\n var props = vm.$options.props;\n var methods = vm.$options.methods;\n var i = keys.length;\n while (i--) {\n var key = keys[i];\n if (process.env.NODE_ENV !== 'production') {\n if (methods && hasOwn(methods, key)) {\n warn(\n (\"Method \\\"\" + key + \"\\\" has already been defined as a data property.\"),\n vm\n );\n }\n }\n if (props && hasOwn(props, key)) {\n process.env.NODE_ENV !== 'production' && warn(\n \"The data property \\\"\" + key + \"\\\" is already declared as a prop. \" +\n \"Use prop default value instead.\",\n vm\n );\n } else if (!isReserved(key)) {\n proxy(vm, \"_data\", key);\n }\n }\n // observe data\n observe(data, true /* asRootData */);\n}\n\nfunction getData (data, vm) {\n try {\n return data.call(vm, vm)\n } catch (e) {\n handleError(e, vm, \"data()\");\n return {}\n }\n}\n\nvar computedWatcherOptions = { lazy: true };\n\nfunction initComputed (vm, computed) {\n var watchers = vm._computedWatchers = Object.create(null);\n // computed properties are just getters during SSR\n var isSSR = isServerRendering();\n\n for (var key in computed) {\n var userDef = computed[key];\n var getter = typeof userDef === 'function' ? userDef : userDef.get;\n if (process.env.NODE_ENV !== 'production' && getter == null) {\n warn(\n (\"Getter is missing for computed property \\\"\" + key + \"\\\".\"),\n vm\n );\n }\n\n if (!isSSR) {\n // create internal watcher for the computed property.\n watchers[key] = new Watcher(\n vm,\n getter || noop,\n noop,\n computedWatcherOptions\n );\n }\n\n // component-defined computed properties are already defined on the\n // component prototype. We only need to define computed properties defined\n // at instantiation here.\n if (!(key in vm)) {\n defineComputed(vm, key, userDef);\n } else if (process.env.NODE_ENV !== 'production') {\n if (key in vm.$data) {\n warn((\"The computed property \\\"\" + key + \"\\\" is already defined in data.\"), vm);\n } else if (vm.$options.props && key in vm.$options.props) {\n warn((\"The computed property \\\"\" + key + \"\\\" is already defined as a prop.\"), vm);\n }\n }\n }\n}\n\nfunction defineComputed (\n target,\n key,\n userDef\n) {\n var shouldCache = !isServerRendering();\n if (typeof userDef === 'function') {\n sharedPropertyDefinition.get = shouldCache\n ? createComputedGetter(key)\n : userDef;\n sharedPropertyDefinition.set = noop;\n } else {\n sharedPropertyDefinition.get = userDef.get\n ? shouldCache && userDef.cache !== false\n ? createComputedGetter(key)\n : userDef.get\n : noop;\n sharedPropertyDefinition.set = userDef.set\n ? userDef.set\n : noop;\n }\n if (process.env.NODE_ENV !== 'production' &&\n sharedPropertyDefinition.set === noop) {\n sharedPropertyDefinition.set = function () {\n warn(\n (\"Computed property \\\"\" + key + \"\\\" was assigned to but it has no setter.\"),\n this\n );\n };\n }\n Object.defineProperty(target, key, sharedPropertyDefinition);\n}\n\nfunction createComputedGetter (key) {\n return function computedGetter () {\n var watcher = this._computedWatchers && this._computedWatchers[key];\n if (watcher) {\n if (watcher.dirty) {\n watcher.evaluate();\n }\n if (Dep.target) {\n watcher.depend();\n }\n return watcher.value\n }\n }\n}\n\nfunction initMethods (vm, methods) {\n var props = vm.$options.props;\n for (var key in methods) {\n if (process.env.NODE_ENV !== 'production') {\n if (methods[key] == null) {\n warn(\n \"Method \\\"\" + key + \"\\\" has an undefined value in the component definition. \" +\n \"Did you reference the function correctly?\",\n vm\n );\n }\n if (props && hasOwn(props, key)) {\n warn(\n (\"Method \\\"\" + key + \"\\\" has already been defined as a prop.\"),\n vm\n );\n }\n if ((key in vm) && isReserved(key)) {\n warn(\n \"Method \\\"\" + key + \"\\\" conflicts with an existing Vue instance method. \" +\n \"Avoid defining component methods that start with _ or $.\"\n );\n }\n }\n vm[key] = methods[key] == null ? noop : bind(methods[key], vm);\n }\n}\n\nfunction initWatch (vm, watch) {\n for (var key in watch) {\n var handler = watch[key];\n if (Array.isArray(handler)) {\n for (var i = 0; i < handler.length; i++) {\n createWatcher(vm, key, handler[i]);\n }\n } else {\n createWatcher(vm, key, handler);\n }\n }\n}\n\nfunction createWatcher (\n vm,\n keyOrFn,\n handler,\n options\n) {\n if (isPlainObject(handler)) {\n options = handler;\n handler = handler.handler;\n }\n if (typeof handler === 'string') {\n handler = vm[handler];\n }\n return vm.$watch(keyOrFn, handler, options)\n}\n\nfunction stateMixin (Vue) {\n // flow somehow has problems with directly declared definition object\n // when using Object.defineProperty, so we have to procedurally build up\n // the object here.\n var dataDef = {};\n dataDef.get = function () { return this._data };\n var propsDef = {};\n propsDef.get = function () { return this._props };\n if (process.env.NODE_ENV !== 'production') {\n dataDef.set = function (newData) {\n warn(\n 'Avoid replacing instance root $data. ' +\n 'Use nested data properties instead.',\n this\n );\n };\n propsDef.set = function () {\n warn(\"$props is readonly.\", this);\n };\n }\n Object.defineProperty(Vue.prototype, '$data', dataDef);\n Object.defineProperty(Vue.prototype, '$props', propsDef);\n\n Vue.prototype.$set = set;\n Vue.prototype.$delete = del;\n\n Vue.prototype.$watch = function (\n expOrFn,\n cb,\n options\n ) {\n var vm = this;\n if (isPlainObject(cb)) {\n return createWatcher(vm, expOrFn, cb, options)\n }\n options = options || {};\n options.user = true;\n var watcher = new Watcher(vm, expOrFn, cb, options);\n if (options.immediate) {\n cb.call(vm, watcher.value);\n }\n return function unwatchFn () {\n watcher.teardown();\n }\n };\n}\n\n/* */\n\nfunction initProvide (vm) {\n var provide = vm.$options.provide;\n if (provide) {\n vm._provided = typeof provide === 'function'\n ? provide.call(vm)\n : provide;\n }\n}\n\nfunction initInjections (vm) {\n var result = resolveInject(vm.$options.inject, vm);\n if (result) {\n observerState.shouldConvert = false;\n Object.keys(result).forEach(function (key) {\n /* istanbul ignore else */\n if (process.env.NODE_ENV !== 'production') {\n defineReactive(vm, key, result[key], function () {\n warn(\n \"Avoid mutating an injected value directly since the changes will be \" +\n \"overwritten whenever the provided component re-renders. \" +\n \"injection being mutated: \\\"\" + key + \"\\\"\",\n vm\n );\n });\n } else {\n defineReactive(vm, key, result[key]);\n }\n });\n observerState.shouldConvert = true;\n }\n}\n\nfunction resolveInject (inject, vm) {\n if (inject) {\n // inject is :any because flow is not smart enough to figure out cached\n var result = Object.create(null);\n var keys = hasSymbol\n ? Reflect.ownKeys(inject).filter(function (key) {\n /* istanbul ignore next */\n return Object.getOwnPropertyDescriptor(inject, key).enumerable\n })\n : Object.keys(inject);\n\n for (var i = 0; i < keys.length; i++) {\n var key = keys[i];\n var provideKey = inject[key].from;\n var source = vm;\n while (source) {\n if (source._provided && provideKey in source._provided) {\n result[key] = source._provided[provideKey];\n break\n }\n source = source.$parent;\n }\n if (!source) {\n if ('default' in inject[key]) {\n var provideDefault = inject[key].default;\n result[key] = typeof provideDefault === 'function'\n ? provideDefault.call(vm)\n : provideDefault;\n } else if (process.env.NODE_ENV !== 'production') {\n warn((\"Injection \\\"\" + key + \"\\\" not found\"), vm);\n }\n }\n }\n return result\n }\n}\n\n/* */\n\n/**\n * Runtime helper for rendering v-for lists.\n */\nfunction renderList (\n val,\n render\n) {\n var ret, i, l, keys, key;\n if (Array.isArray(val) || typeof val === 'string') {\n ret = new Array(val.length);\n for (i = 0, l = val.length; i < l; i++) {\n ret[i] = render(val[i], i);\n }\n } else if (typeof val === 'number') {\n ret = new Array(val);\n for (i = 0; i < val; i++) {\n ret[i] = render(i + 1, i);\n }\n } else if (isObject(val)) {\n keys = Object.keys(val);\n ret = new Array(keys.length);\n for (i = 0, l = keys.length; i < l; i++) {\n key = keys[i];\n ret[i] = render(val[key], key, i);\n }\n }\n if (isDef(ret)) {\n (ret)._isVList = true;\n }\n return ret\n}\n\n/* */\n\n/**\n * Runtime helper for rendering <slot>\n */\nfunction renderSlot (\n name,\n fallback,\n props,\n bindObject\n) {\n var scopedSlotFn = this.$scopedSlots[name];\n if (scopedSlotFn) { // scoped slot\n props = props || {};\n if (bindObject) {\n if (process.env.NODE_ENV !== 'production' && !isObject(bindObject)) {\n warn(\n 'slot v-bind without argument expects an Object',\n this\n );\n }\n props = extend(extend({}, bindObject), props);\n }\n return scopedSlotFn(props) || fallback\n } else {\n var slotNodes = this.$slots[name];\n // warn duplicate slot usage\n if (slotNodes && process.env.NODE_ENV !== 'production') {\n slotNodes._rendered && warn(\n \"Duplicate presence of slot \\\"\" + name + \"\\\" found in the same render tree \" +\n \"- this will likely cause render errors.\",\n this\n );\n slotNodes._rendered = true;\n }\n return slotNodes || fallback\n }\n}\n\n/* */\n\n/**\n * Runtime helper for resolving filters\n */\nfunction resolveFilter (id) {\n return resolveAsset(this.$options, 'filters', id, true) || identity\n}\n\n/* */\n\n/**\n * Runtime helper for checking keyCodes from config.\n * exposed as Vue.prototype._k\n * passing in eventKeyName as last argument separately for backwards compat\n */\nfunction checkKeyCodes (\n eventKeyCode,\n key,\n builtInAlias,\n eventKeyName\n) {\n var keyCodes = config.keyCodes[key] || builtInAlias;\n if (keyCodes) {\n if (Array.isArray(keyCodes)) {\n return keyCodes.indexOf(eventKeyCode) === -1\n } else {\n return keyCodes !== eventKeyCode\n }\n } else if (eventKeyName) {\n return hyphenate(eventKeyName) !== key\n }\n}\n\n/* */\n\n/**\n * Runtime helper for merging v-bind=\"object\" into a VNode's data.\n */\nfunction bindObjectProps (\n data,\n tag,\n value,\n asProp,\n isSync\n) {\n if (value) {\n if (!isObject(value)) {\n process.env.NODE_ENV !== 'production' && warn(\n 'v-bind without argument expects an Object or Array value',\n this\n );\n } else {\n if (Array.isArray(value)) {\n value = toObject(value);\n }\n var hash;\n var loop = function ( key ) {\n if (\n key === 'class' ||\n key === 'style' ||\n isReservedAttribute(key)\n ) {\n hash = data;\n } else {\n var type = data.attrs && data.attrs.type;\n hash = asProp || config.mustUseProp(tag, type, key)\n ? data.domProps || (data.domProps = {})\n : data.attrs || (data.attrs = {});\n }\n if (!(key in hash)) {\n hash[key] = value[key];\n\n if (isSync) {\n var on = data.on || (data.on = {});\n on[(\"update:\" + key)] = function ($event) {\n value[key] = $event;\n };\n }\n }\n };\n\n for (var key in value) loop( key );\n }\n }\n return data\n}\n\n/* */\n\n/**\n * Runtime helper for rendering static trees.\n */\nfunction renderStatic (\n index,\n isInFor\n) {\n // static trees can be rendered once and cached on the contructor options\n // so every instance shares the same cached trees\n var renderFns = this.$options.staticRenderFns;\n var cached = renderFns.cached || (renderFns.cached = []);\n var tree = cached[index];\n // if has already-rendered static tree and not inside v-for,\n // we can reuse the same tree by doing a shallow clone.\n if (tree && !isInFor) {\n return Array.isArray(tree)\n ? cloneVNodes(tree)\n : cloneVNode(tree)\n }\n // otherwise, render a fresh tree.\n tree = cached[index] = renderFns[index].call(this._renderProxy, null, this);\n markStatic(tree, (\"__static__\" + index), false);\n return tree\n}\n\n/**\n * Runtime helper for v-once.\n * Effectively it means marking the node as static with a unique key.\n */\nfunction markOnce (\n tree,\n index,\n key\n) {\n markStatic(tree, (\"__once__\" + index + (key ? (\"_\" + key) : \"\")), true);\n return tree\n}\n\nfunction markStatic (\n tree,\n key,\n isOnce\n) {\n if (Array.isArray(tree)) {\n for (var i = 0; i < tree.length; i++) {\n if (tree[i] && typeof tree[i] !== 'string') {\n markStaticNode(tree[i], (key + \"_\" + i), isOnce);\n }\n }\n } else {\n markStaticNode(tree, key, isOnce);\n }\n}\n\nfunction markStaticNode (node, key, isOnce) {\n node.isStatic = true;\n node.key = key;\n node.isOnce = isOnce;\n}\n\n/* */\n\nfunction bindObjectListeners (data, value) {\n if (value) {\n if (!isPlainObject(value)) {\n process.env.NODE_ENV !== 'production' && warn(\n 'v-on without argument expects an Object value',\n this\n );\n } else {\n var on = data.on = data.on ? extend({}, data.on) : {};\n for (var key in value) {\n var existing = on[key];\n var ours = value[key];\n on[key] = existing ? [].concat(existing, ours) : ours;\n }\n }\n }\n return data\n}\n\n/* */\n\nfunction installRenderHelpers (target) {\n target._o = markOnce;\n target._n = toNumber;\n target._s = toString;\n target._l = renderList;\n target._t = renderSlot;\n target._q = looseEqual;\n target._i = looseIndexOf;\n target._m = renderStatic;\n target._f = resolveFilter;\n target._k = checkKeyCodes;\n target._b = bindObjectProps;\n target._v = createTextVNode;\n target._e = createEmptyVNode;\n target._u = resolveScopedSlots;\n target._g = bindObjectListeners;\n}\n\n/* */\n\nfunction FunctionalRenderContext (\n data,\n props,\n children,\n parent,\n Ctor\n) {\n var options = Ctor.options;\n this.data = data;\n this.props = props;\n this.children = children;\n this.parent = parent;\n this.listeners = data.on || emptyObject;\n this.injections = resolveInject(options.inject, parent);\n this.slots = function () { return resolveSlots(children, parent); };\n\n // ensure the createElement function in functional components\n // gets a unique context - this is necessary for correct named slot check\n var contextVm = Object.create(parent);\n var isCompiled = isTrue(options._compiled);\n var needNormalization = !isCompiled;\n\n // support for compiled functional template\n if (isCompiled) {\n // exposing $options for renderStatic()\n this.$options = options;\n // pre-resolve slots for renderSlot()\n this.$slots = this.slots();\n this.$scopedSlots = data.scopedSlots || emptyObject;\n }\n\n if (options._scopeId) {\n this._c = function (a, b, c, d) {\n var vnode = createElement(contextVm, a, b, c, d, needNormalization);\n if (vnode) {\n vnode.functionalScopeId = options._scopeId;\n vnode.functionalContext = parent;\n }\n return vnode\n };\n } else {\n this._c = function (a, b, c, d) { return createElement(contextVm, a, b, c, d, needNormalization); };\n }\n}\n\ninstallRenderHelpers(FunctionalRenderContext.prototype);\n\nfunction createFunctionalComponent (\n Ctor,\n propsData,\n data,\n contextVm,\n children\n) {\n var options = Ctor.options;\n var props = {};\n var propOptions = options.props;\n if (isDef(propOptions)) {\n for (var key in propOptions) {\n props[key] = validateProp(key, propOptions, propsData || emptyObject);\n }\n } else {\n if (isDef(data.attrs)) { mergeProps(props, data.attrs); }\n if (isDef(data.props)) { mergeProps(props, data.props); }\n }\n\n var renderContext = new FunctionalRenderContext(\n data,\n props,\n children,\n contextVm,\n Ctor\n );\n\n var vnode = options.render.call(null, renderContext._c, renderContext);\n\n if (vnode instanceof VNode) {\n vnode.functionalContext = contextVm;\n vnode.functionalOptions = options;\n if (data.slot) {\n (vnode.data || (vnode.data = {})).slot = data.slot;\n }\n }\n\n return vnode\n}\n\nfunction mergeProps (to, from) {\n for (var key in from) {\n to[camelize(key)] = from[key];\n }\n}\n\n/* */\n\n// hooks to be invoked on component VNodes during patch\nvar componentVNodeHooks = {\n init: function init (\n vnode,\n hydrating,\n parentElm,\n refElm\n ) {\n if (!vnode.componentInstance || vnode.componentInstance._isDestroyed) {\n var child = vnode.componentInstance = createComponentInstanceForVnode(\n vnode,\n activeInstance,\n parentElm,\n refElm\n );\n child.$mount(hydrating ? vnode.elm : undefined, hydrating);\n } else if (vnode.data.keepAlive) {\n // kept-alive components, treat as a patch\n var mountedNode = vnode; // work around flow\n componentVNodeHooks.prepatch(mountedNode, mountedNode);\n }\n },\n\n prepatch: function prepatch (oldVnode, vnode) {\n var options = vnode.componentOptions;\n var child = vnode.componentInstance = oldVnode.componentInstance;\n updateChildComponent(\n child,\n options.propsData, // updated props\n options.listeners, // updated listeners\n vnode, // new parent vnode\n options.children // new children\n );\n },\n\n insert: function insert (vnode) {\n var context = vnode.context;\n var componentInstance = vnode.componentInstance;\n if (!componentInstance._isMounted) {\n componentInstance._isMounted = true;\n callHook(componentInstance, 'mounted');\n }\n if (vnode.data.keepAlive) {\n if (context._isMounted) {\n // vue-router#1212\n // During updates, a kept-alive component's child components may\n // change, so directly walking the tree here may call activated hooks\n // on incorrect children. Instead we push them into a queue which will\n // be processed after the whole patch process ended.\n queueActivatedComponent(componentInstance);\n } else {\n activateChildComponent(componentInstance, true /* direct */);\n }\n }\n },\n\n destroy: function destroy (vnode) {\n var componentInstance = vnode.componentInstance;\n if (!componentInstance._isDestroyed) {\n if (!vnode.data.keepAlive) {\n componentInstance.$destroy();\n } else {\n deactivateChildComponent(componentInstance, true /* direct */);\n }\n }\n }\n};\n\nvar hooksToMerge = Object.keys(componentVNodeHooks);\n\nfunction createComponent (\n Ctor,\n data,\n context,\n children,\n tag\n) {\n if (isUndef(Ctor)) {\n return\n }\n\n var baseCtor = context.$options._base;\n\n // plain options object: turn it into a constructor\n if (isObject(Ctor)) {\n Ctor = baseCtor.extend(Ctor);\n }\n\n // if at this stage it's not a constructor or an async component factory,\n // reject.\n if (typeof Ctor !== 'function') {\n if (process.env.NODE_ENV !== 'production') {\n warn((\"Invalid Component definition: \" + (String(Ctor))), context);\n }\n return\n }\n\n // async component\n var asyncFactory;\n if (isUndef(Ctor.cid)) {\n asyncFactory = Ctor;\n Ctor = resolveAsyncComponent(asyncFactory, baseCtor, context);\n if (Ctor === undefined) {\n // return a placeholder node for async component, which is rendered\n // as a comment node but preserves all the raw information for the node.\n // the information will be used for async server-rendering and hydration.\n return createAsyncPlaceholder(\n asyncFactory,\n data,\n context,\n children,\n tag\n )\n }\n }\n\n data = data || {};\n\n // resolve constructor options in case global mixins are applied after\n // component constructor creation\n resolveConstructorOptions(Ctor);\n\n // transform component v-model data into props & events\n if (isDef(data.model)) {\n transformModel(Ctor.options, data);\n }\n\n // extract props\n var propsData = extractPropsFromVNodeData(data, Ctor, tag);\n\n // functional component\n if (isTrue(Ctor.options.functional)) {\n return createFunctionalComponent(Ctor, propsData, data, context, children)\n }\n\n // extract listeners, since these needs to be treated as\n // child component listeners instead of DOM listeners\n var listeners = data.on;\n // replace with listeners with .native modifier\n // so it gets processed during parent component patch.\n data.on = data.nativeOn;\n\n if (isTrue(Ctor.options.abstract)) {\n // abstract components do not keep anything\n // other than props & listeners & slot\n\n // work around flow\n var slot = data.slot;\n data = {};\n if (slot) {\n data.slot = slot;\n }\n }\n\n // merge component management hooks onto the placeholder node\n mergeHooks(data);\n\n // return a placeholder vnode\n var name = Ctor.options.name || tag;\n var vnode = new VNode(\n (\"vue-component-\" + (Ctor.cid) + (name ? (\"-\" + name) : '')),\n data, undefined, undefined, undefined, context,\n { Ctor: Ctor, propsData: propsData, listeners: listeners, tag: tag, children: children },\n asyncFactory\n );\n return vnode\n}\n\nfunction createComponentInstanceForVnode (\n vnode, // we know it's MountedComponentVNode but flow doesn't\n parent, // activeInstance in lifecycle state\n parentElm,\n refElm\n) {\n var vnodeComponentOptions = vnode.componentOptions;\n var options = {\n _isComponent: true,\n parent: parent,\n propsData: vnodeComponentOptions.propsData,\n _componentTag: vnodeComponentOptions.tag,\n _parentVnode: vnode,\n _parentListeners: vnodeComponentOptions.listeners,\n _renderChildren: vnodeComponentOptions.children,\n _parentElm: parentElm || null,\n _refElm: refElm || null\n };\n // check inline-template render functions\n var inlineTemplate = vnode.data.inlineTemplate;\n if (isDef(inlineTemplate)) {\n options.render = inlineTemplate.render;\n options.staticRenderFns = inlineTemplate.staticRenderFns;\n }\n return new vnodeComponentOptions.Ctor(options)\n}\n\nfunction mergeHooks (data) {\n if (!data.hook) {\n data.hook = {};\n }\n for (var i = 0; i < hooksToMerge.length; i++) {\n var key = hooksToMerge[i];\n var fromParent = data.hook[key];\n var ours = componentVNodeHooks[key];\n data.hook[key] = fromParent ? mergeHook$1(ours, fromParent) : ours;\n }\n}\n\nfunction mergeHook$1 (one, two) {\n return function (a, b, c, d) {\n one(a, b, c, d);\n two(a, b, c, d);\n }\n}\n\n// transform component v-model info (value and callback) into\n// prop and event handler respectively.\nfunction transformModel (options, data) {\n var prop = (options.model && options.model.prop) || 'value';\n var event = (options.model && options.model.event) || 'input';(data.props || (data.props = {}))[prop] = data.model.value;\n var on = data.on || (data.on = {});\n if (isDef(on[event])) {\n on[event] = [data.model.callback].concat(on[event]);\n } else {\n on[event] = data.model.callback;\n }\n}\n\n/* */\n\nvar SIMPLE_NORMALIZE = 1;\nvar ALWAYS_NORMALIZE = 2;\n\n// wrapper function for providing a more flexible interface\n// without getting yelled at by flow\nfunction createElement (\n context,\n tag,\n data,\n children,\n normalizationType,\n alwaysNormalize\n) {\n if (Array.isArray(data) || isPrimitive(data)) {\n normalizationType = children;\n children = data;\n data = undefined;\n }\n if (isTrue(alwaysNormalize)) {\n normalizationType = ALWAYS_NORMALIZE;\n }\n return _createElement(context, tag, data, children, normalizationType)\n}\n\nfunction _createElement (\n context,\n tag,\n data,\n children,\n normalizationType\n) {\n if (isDef(data) && isDef((data).__ob__)) {\n process.env.NODE_ENV !== 'production' && warn(\n \"Avoid using observed data object as vnode data: \" + (JSON.stringify(data)) + \"\\n\" +\n 'Always create fresh vnode data objects in each render!',\n context\n );\n return createEmptyVNode()\n }\n // object syntax in v-bind\n if (isDef(data) && isDef(data.is)) {\n tag = data.is;\n }\n if (!tag) {\n // in case of component :is set to falsy value\n return createEmptyVNode()\n }\n // warn against non-primitive key\n if (process.env.NODE_ENV !== 'production' &&\n isDef(data) && isDef(data.key) && !isPrimitive(data.key)\n ) {\n warn(\n 'Avoid using non-primitive value as key, ' +\n 'use string/number value instead.',\n context\n );\n }\n // support single function children as default scoped slot\n if (Array.isArray(children) &&\n typeof children[0] === 'function'\n ) {\n data = data || {};\n data.scopedSlots = { default: children[0] };\n children.length = 0;\n }\n if (normalizationType === ALWAYS_NORMALIZE) {\n children = normalizeChildren(children);\n } else if (normalizationType === SIMPLE_NORMALIZE) {\n children = simpleNormalizeChildren(children);\n }\n var vnode, ns;\n if (typeof tag === 'string') {\n var Ctor;\n ns = (context.$vnode && context.$vnode.ns) || config.getTagNamespace(tag);\n if (config.isReservedTag(tag)) {\n // platform built-in elements\n vnode = new VNode(\n config.parsePlatformTagName(tag), data, children,\n undefined, undefined, context\n );\n } else if (isDef(Ctor = resolveAsset(context.$options, 'components', tag))) {\n // component\n vnode = createComponent(Ctor, data, context, children, tag);\n } else {\n // unknown or unlisted namespaced elements\n // check at runtime because it may get assigned a namespace when its\n // parent normalizes children\n vnode = new VNode(\n tag, data, children,\n undefined, undefined, context\n );\n }\n } else {\n // direct component options / constructor\n vnode = createComponent(tag, data, context, children);\n }\n if (isDef(vnode)) {\n if (ns) { applyNS(vnode, ns); }\n return vnode\n } else {\n return createEmptyVNode()\n }\n}\n\nfunction applyNS (vnode, ns, force) {\n vnode.ns = ns;\n if (vnode.tag === 'foreignObject') {\n // use default namespace inside foreignObject\n ns = undefined;\n force = true;\n }\n if (isDef(vnode.children)) {\n for (var i = 0, l = vnode.children.length; i < l; i++) {\n var child = vnode.children[i];\n if (isDef(child.tag) && (isUndef(child.ns) || isTrue(force))) {\n applyNS(child, ns, force);\n }\n }\n }\n}\n\n/* */\n\nfunction initRender (vm) {\n vm._vnode = null; // the root of the child tree\n var options = vm.$options;\n var parentVnode = vm.$vnode = options._parentVnode; // the placeholder node in parent tree\n var renderContext = parentVnode && parentVnode.context;\n vm.$slots = resolveSlots(options._renderChildren, renderContext);\n vm.$scopedSlots = emptyObject;\n // bind the createElement fn to this instance\n // so that we get proper render context inside it.\n // args order: tag, data, children, normalizationType, alwaysNormalize\n // internal version is used by render functions compiled from templates\n vm._c = function (a, b, c, d) { return createElement(vm, a, b, c, d, false); };\n // normalization is always applied for the public version, used in\n // user-written render functions.\n vm.$createElement = function (a, b, c, d) { return createElement(vm, a, b, c, d, true); };\n\n // $attrs & $listeners are exposed for easier HOC creation.\n // they need to be reactive so that HOCs using them are always updated\n var parentData = parentVnode && parentVnode.data;\n\n /* istanbul ignore else */\n if (process.env.NODE_ENV !== 'production') {\n defineReactive(vm, '$attrs', parentData && parentData.attrs || emptyObject, function () {\n !isUpdatingChildComponent && warn(\"$attrs is readonly.\", vm);\n }, true);\n defineReactive(vm, '$listeners', options._parentListeners || emptyObject, function () {\n !isUpdatingChildComponent && warn(\"$listeners is readonly.\", vm);\n }, true);\n } else {\n defineReactive(vm, '$attrs', parentData && parentData.attrs || emptyObject, null, true);\n defineReactive(vm, '$listeners', options._parentListeners || emptyObject, null, true);\n }\n}\n\nfunction renderMixin (Vue) {\n // install runtime convenience helpers\n installRenderHelpers(Vue.prototype);\n\n Vue.prototype.$nextTick = function (fn) {\n return nextTick(fn, this)\n };\n\n Vue.prototype._render = function () {\n var vm = this;\n var ref = vm.$options;\n var render = ref.render;\n var _parentVnode = ref._parentVnode;\n\n if (vm._isMounted) {\n // if the parent didn't update, the slot nodes will be the ones from\n // last render. They need to be cloned to ensure \"freshness\" for this render.\n for (var key in vm.$slots) {\n var slot = vm.$slots[key];\n if (slot._rendered) {\n vm.$slots[key] = cloneVNodes(slot, true /* deep */);\n }\n }\n }\n\n vm.$scopedSlots = (_parentVnode && _parentVnode.data.scopedSlots) || emptyObject;\n\n // set parent vnode. this allows render functions to have access\n // to the data on the placeholder node.\n vm.$vnode = _parentVnode;\n // render self\n var vnode;\n try {\n vnode = render.call(vm._renderProxy, vm.$createElement);\n } catch (e) {\n handleError(e, vm, \"render\");\n // return error render result,\n // or previous vnode to prevent render error causing blank component\n /* istanbul ignore else */\n if (process.env.NODE_ENV !== 'production') {\n if (vm.$options.renderError) {\n try {\n vnode = vm.$options.renderError.call(vm._renderProxy, vm.$createElement, e);\n } catch (e) {\n handleError(e, vm, \"renderError\");\n vnode = vm._vnode;\n }\n } else {\n vnode = vm._vnode;\n }\n } else {\n vnode = vm._vnode;\n }\n }\n // return empty vnode in case the render function errored out\n if (!(vnode instanceof VNode)) {\n if (process.env.NODE_ENV !== 'production' && Array.isArray(vnode)) {\n warn(\n 'Multiple root nodes returned from render function. Render function ' +\n 'should return a single root node.',\n vm\n );\n }\n vnode = createEmptyVNode();\n }\n // set parent\n vnode.parent = _parentVnode;\n return vnode\n };\n}\n\n/* */\n\nvar uid$1 = 0;\n\nfunction initMixin (Vue) {\n Vue.prototype._init = function (options) {\n var vm = this;\n // a uid\n vm._uid = uid$1++;\n\n var startTag, endTag;\n /* istanbul ignore if */\n if (process.env.NODE_ENV !== 'production' && config.performance && mark) {\n startTag = \"vue-perf-start:\" + (vm._uid);\n endTag = \"vue-perf-end:\" + (vm._uid);\n mark(startTag);\n }\n\n // a flag to avoid this being observed\n vm._isVue = true;\n // merge options\n if (options && options._isComponent) {\n // optimize internal component instantiation\n // since dynamic options merging is pretty slow, and none of the\n // internal component options needs special treatment.\n initInternalComponent(vm, options);\n } else {\n vm.$options = mergeOptions(\n resolveConstructorOptions(vm.constructor),\n options || {},\n vm\n );\n }\n /* istanbul ignore else */\n if (process.env.NODE_ENV !== 'production') {\n initProxy(vm);\n } else {\n vm._renderProxy = vm;\n }\n // expose real self\n vm._self = vm;\n initLifecycle(vm);\n initEvents(vm);\n initRender(vm);\n callHook(vm, 'beforeCreate');\n initInjections(vm); // resolve injections before data/props\n initState(vm);\n initProvide(vm); // resolve provide after data/props\n callHook(vm, 'created');\n\n /* istanbul ignore if */\n if (process.env.NODE_ENV !== 'production' && config.performance && mark) {\n vm._name = formatComponentName(vm, false);\n mark(endTag);\n measure((\"vue \" + (vm._name) + \" init\"), startTag, endTag);\n }\n\n if (vm.$options.el) {\n vm.$mount(vm.$options.el);\n }\n };\n}\n\nfunction initInternalComponent (vm, options) {\n var opts = vm.$options = Object.create(vm.constructor.options);\n // doing this because it's faster than dynamic enumeration.\n opts.parent = options.parent;\n opts.propsData = options.propsData;\n opts._parentVnode = options._parentVnode;\n opts._parentListeners = options._parentListeners;\n opts._renderChildren = options._renderChildren;\n opts._componentTag = options._componentTag;\n opts._parentElm = options._parentElm;\n opts._refElm = options._refElm;\n if (options.render) {\n opts.render = options.render;\n opts.staticRenderFns = options.staticRenderFns;\n }\n}\n\nfunction resolveConstructorOptions (Ctor) {\n var options = Ctor.options;\n if (Ctor.super) {\n var superOptions = resolveConstructorOptions(Ctor.super);\n var cachedSuperOptions = Ctor.superOptions;\n if (superOptions !== cachedSuperOptions) {\n // super option changed,\n // need to resolve new options.\n Ctor.superOptions = superOptions;\n // check if there are any late-modified/attached options (#4976)\n var modifiedOptions = resolveModifiedOptions(Ctor);\n // update base extend options\n if (modifiedOptions) {\n extend(Ctor.extendOptions, modifiedOptions);\n }\n options = Ctor.options = mergeOptions(superOptions, Ctor.extendOptions);\n if (options.name) {\n options.components[options.name] = Ctor;\n }\n }\n }\n return options\n}\n\nfunction resolveModifiedOptions (Ctor) {\n var modified;\n var latest = Ctor.options;\n var extended = Ctor.extendOptions;\n var sealed = Ctor.sealedOptions;\n for (var key in latest) {\n if (latest[key] !== sealed[key]) {\n if (!modified) { modified = {}; }\n modified[key] = dedupe(latest[key], extended[key], sealed[key]);\n }\n }\n return modified\n}\n\nfunction dedupe (latest, extended, sealed) {\n // compare latest and sealed to ensure lifecycle hooks won't be duplicated\n // between merges\n if (Array.isArray(latest)) {\n var res = [];\n sealed = Array.isArray(sealed) ? sealed : [sealed];\n extended = Array.isArray(extended) ? extended : [extended];\n for (var i = 0; i < latest.length; i++) {\n // push original options and not sealed options to exclude duplicated options\n if (extended.indexOf(latest[i]) >= 0 || sealed.indexOf(latest[i]) < 0) {\n res.push(latest[i]);\n }\n }\n return res\n } else {\n return latest\n }\n}\n\nfunction Vue$3 (options) {\n if (process.env.NODE_ENV !== 'production' &&\n !(this instanceof Vue$3)\n ) {\n warn('Vue is a constructor and should be called with the `new` keyword');\n }\n this._init(options);\n}\n\ninitMixin(Vue$3);\nstateMixin(Vue$3);\neventsMixin(Vue$3);\nlifecycleMixin(Vue$3);\nrenderMixin(Vue$3);\n\n/* */\n\nfunction initUse (Vue) {\n Vue.use = function (plugin) {\n var installedPlugins = (this._installedPlugins || (this._installedPlugins = []));\n if (installedPlugins.indexOf(plugin) > -1) {\n return this\n }\n\n // additional parameters\n var args = toArray(arguments, 1);\n args.unshift(this);\n if (typeof plugin.install === 'function') {\n plugin.install.apply(plugin, args);\n } else if (typeof plugin === 'function') {\n plugin.apply(null, args);\n }\n installedPlugins.push(plugin);\n return this\n };\n}\n\n/* */\n\nfunction initMixin$1 (Vue) {\n Vue.mixin = function (mixin) {\n this.options = mergeOptions(this.options, mixin);\n return this\n };\n}\n\n/* */\n\nfunction initExtend (Vue) {\n /**\n * Each instance constructor, including Vue, has a unique\n * cid. This enables us to create wrapped \"child\n * constructors\" for prototypal inheritance and cache them.\n */\n Vue.cid = 0;\n var cid = 1;\n\n /**\n * Class inheritance\n */\n Vue.extend = function (extendOptions) {\n extendOptions = extendOptions || {};\n var Super = this;\n var SuperId = Super.cid;\n var cachedCtors = extendOptions._Ctor || (extendOptions._Ctor = {});\n if (cachedCtors[SuperId]) {\n return cachedCtors[SuperId]\n }\n\n var name = extendOptions.name || Super.options.name;\n if (process.env.NODE_ENV !== 'production') {\n if (!/^[a-zA-Z][\\w-]*$/.test(name)) {\n warn(\n 'Invalid component name: \"' + name + '\". Component names ' +\n 'can only contain alphanumeric characters and the hyphen, ' +\n 'and must start with a letter.'\n );\n }\n }\n\n var Sub = function VueComponent (options) {\n this._init(options);\n };\n Sub.prototype = Object.create(Super.prototype);\n Sub.prototype.constructor = Sub;\n Sub.cid = cid++;\n Sub.options = mergeOptions(\n Super.options,\n extendOptions\n );\n Sub['super'] = Super;\n\n // For props and computed properties, we define the proxy getters on\n // the Vue instances at extension time, on the extended prototype. This\n // avoids Object.defineProperty calls for each instance created.\n if (Sub.options.props) {\n initProps$1(Sub);\n }\n if (Sub.options.computed) {\n initComputed$1(Sub);\n }\n\n // allow further extension/mixin/plugin usage\n Sub.extend = Super.extend;\n Sub.mixin = Super.mixin;\n Sub.use = Super.use;\n\n // create asset registers, so extended classes\n // can have their private assets too.\n ASSET_TYPES.forEach(function (type) {\n Sub[type] = Super[type];\n });\n // enable recursive self-lookup\n if (name) {\n Sub.options.components[name] = Sub;\n }\n\n // keep a reference to the super options at extension time.\n // later at instantiation we can check if Super's options have\n // been updated.\n Sub.superOptions = Super.options;\n Sub.extendOptions = extendOptions;\n Sub.sealedOptions = extend({}, Sub.options);\n\n // cache constructor\n cachedCtors[SuperId] = Sub;\n return Sub\n };\n}\n\nfunction initProps$1 (Comp) {\n var props = Comp.options.props;\n for (var key in props) {\n proxy(Comp.prototype, \"_props\", key);\n }\n}\n\nfunction initComputed$1 (Comp) {\n var computed = Comp.options.computed;\n for (var key in computed) {\n defineComputed(Comp.prototype, key, computed[key]);\n }\n}\n\n/* */\n\nfunction initAssetRegisters (Vue) {\n /**\n * Create asset registration methods.\n */\n ASSET_TYPES.forEach(function (type) {\n Vue[type] = function (\n id,\n definition\n ) {\n if (!definition) {\n return this.options[type + 's'][id]\n } else {\n /* istanbul ignore if */\n if (process.env.NODE_ENV !== 'production') {\n if (type === 'component' && config.isReservedTag(id)) {\n warn(\n 'Do not use built-in or reserved HTML elements as component ' +\n 'id: ' + id\n );\n }\n }\n if (type === 'component' && isPlainObject(definition)) {\n definition.name = definition.name || id;\n definition = this.options._base.extend(definition);\n }\n if (type === 'directive' && typeof definition === 'function') {\n definition = { bind: definition, update: definition };\n }\n this.options[type + 's'][id] = definition;\n return definition\n }\n };\n });\n}\n\n/* */\n\nfunction getComponentName (opts) {\n return opts && (opts.Ctor.options.name || opts.tag)\n}\n\nfunction matches (pattern, name) {\n if (Array.isArray(pattern)) {\n return pattern.indexOf(name) > -1\n } else if (typeof pattern === 'string') {\n return pattern.split(',').indexOf(name) > -1\n } else if (isRegExp(pattern)) {\n return pattern.test(name)\n }\n /* istanbul ignore next */\n return false\n}\n\nfunction pruneCache (keepAliveInstance, filter) {\n var cache = keepAliveInstance.cache;\n var keys = keepAliveInstance.keys;\n var _vnode = keepAliveInstance._vnode;\n for (var key in cache) {\n var cachedNode = cache[key];\n if (cachedNode) {\n var name = getComponentName(cachedNode.componentOptions);\n if (name && !filter(name)) {\n pruneCacheEntry(cache, key, keys, _vnode);\n }\n }\n }\n}\n\nfunction pruneCacheEntry (\n cache,\n key,\n keys,\n current\n) {\n var cached$$1 = cache[key];\n if (cached$$1 && cached$$1 !== current) {\n cached$$1.componentInstance.$destroy();\n }\n cache[key] = null;\n remove(keys, key);\n}\n\nvar patternTypes = [String, RegExp, Array];\n\nvar KeepAlive = {\n name: 'keep-alive',\n abstract: true,\n\n props: {\n include: patternTypes,\n exclude: patternTypes,\n max: [String, Number]\n },\n\n created: function created () {\n this.cache = Object.create(null);\n this.keys = [];\n },\n\n destroyed: function destroyed () {\n var this$1 = this;\n\n for (var key in this$1.cache) {\n pruneCacheEntry(this$1.cache, key, this$1.keys);\n }\n },\n\n watch: {\n include: function include (val) {\n pruneCache(this, function (name) { return matches(val, name); });\n },\n exclude: function exclude (val) {\n pruneCache(this, function (name) { return !matches(val, name); });\n }\n },\n\n render: function render () {\n var vnode = getFirstComponentChild(this.$slots.default);\n var componentOptions = vnode && vnode.componentOptions;\n if (componentOptions) {\n // check pattern\n var name = getComponentName(componentOptions);\n if (name && (\n (this.include && !matches(this.include, name)) ||\n (this.exclude && matches(this.exclude, name))\n )) {\n return vnode\n }\n\n var ref = this;\n var cache = ref.cache;\n var keys = ref.keys;\n var key = vnode.key == null\n // same constructor may get registered as different local components\n // so cid alone is not enough (#3269)\n ? componentOptions.Ctor.cid + (componentOptions.tag ? (\"::\" + (componentOptions.tag)) : '')\n : vnode.key;\n if (cache[key]) {\n vnode.componentInstance = cache[key].componentInstance;\n // make current key freshest\n remove(keys, key);\n keys.push(key);\n } else {\n cache[key] = vnode;\n keys.push(key);\n // prune oldest entry\n if (this.max && keys.length > parseInt(this.max)) {\n pruneCacheEntry(cache, keys[0], keys, this._vnode);\n }\n }\n\n vnode.data.keepAlive = true;\n }\n return vnode\n }\n};\n\nvar builtInComponents = {\n KeepAlive: KeepAlive\n};\n\n/* */\n\nfunction initGlobalAPI (Vue) {\n // config\n var configDef = {};\n configDef.get = function () { return config; };\n if (process.env.NODE_ENV !== 'production') {\n configDef.set = function () {\n warn(\n 'Do not replace the Vue.config object, set individual fields instead.'\n );\n };\n }\n Object.defineProperty(Vue, 'config', configDef);\n\n // exposed util methods.\n // NOTE: these are not considered part of the public API - avoid relying on\n // them unless you are aware of the risk.\n Vue.util = {\n warn: warn,\n extend: extend,\n mergeOptions: mergeOptions,\n defineReactive: defineReactive\n };\n\n Vue.set = set;\n Vue.delete = del;\n Vue.nextTick = nextTick;\n\n Vue.options = Object.create(null);\n ASSET_TYPES.forEach(function (type) {\n Vue.options[type + 's'] = Object.create(null);\n });\n\n // this is used to identify the \"base\" constructor to extend all plain-object\n // components with in Weex's multi-instance scenarios.\n Vue.options._base = Vue;\n\n extend(Vue.options.components, builtInComponents);\n\n initUse(Vue);\n initMixin$1(Vue);\n initExtend(Vue);\n initAssetRegisters(Vue);\n}\n\ninitGlobalAPI(Vue$3);\n\nObject.defineProperty(Vue$3.prototype, '$isServer', {\n get: isServerRendering\n});\n\nObject.defineProperty(Vue$3.prototype, '$ssrContext', {\n get: function get () {\n /* istanbul ignore next */\n return this.$vnode && this.$vnode.ssrContext\n }\n});\n\nVue$3.version = '2.5.2';\n\n/* */\n\n// these are reserved for web because they are directly compiled away\n// during template compilation\nvar isReservedAttr = makeMap('style,class');\n\n// attributes that should be using props for binding\nvar acceptValue = makeMap('input,textarea,option,select,progress');\nvar mustUseProp = function (tag, type, attr) {\n return (\n (attr === 'value' && acceptValue(tag)) && type !== 'button' ||\n (attr === 'selected' && tag === 'option') ||\n (attr === 'checked' && tag === 'input') ||\n (attr === 'muted' && tag === 'video')\n )\n};\n\nvar isEnumeratedAttr = makeMap('contenteditable,draggable,spellcheck');\n\nvar isBooleanAttr = makeMap(\n 'allowfullscreen,async,autofocus,autoplay,checked,compact,controls,declare,' +\n 'default,defaultchecked,defaultmuted,defaultselected,defer,disabled,' +\n 'enabled,formnovalidate,hidden,indeterminate,inert,ismap,itemscope,loop,multiple,' +\n 'muted,nohref,noresize,noshade,novalidate,nowrap,open,pauseonexit,readonly,' +\n 'required,reversed,scoped,seamless,selected,sortable,translate,' +\n 'truespeed,typemustmatch,visible'\n);\n\nvar xlinkNS = 'http://www.w3.org/1999/xlink';\n\nvar isXlink = function (name) {\n return name.charAt(5) === ':' && name.slice(0, 5) === 'xlink'\n};\n\nvar getXlinkProp = function (name) {\n return isXlink(name) ? name.slice(6, name.length) : ''\n};\n\nvar isFalsyAttrValue = function (val) {\n return val == null || val === false\n};\n\n/* */\n\nfunction genClassForVnode (vnode) {\n var data = vnode.data;\n var parentNode = vnode;\n var childNode = vnode;\n while (isDef(childNode.componentInstance)) {\n childNode = childNode.componentInstance._vnode;\n if (childNode.data) {\n data = mergeClassData(childNode.data, data);\n }\n }\n while (isDef(parentNode = parentNode.parent)) {\n if (parentNode.data) {\n data = mergeClassData(data, parentNode.data);\n }\n }\n return renderClass(data.staticClass, data.class)\n}\n\nfunction mergeClassData (child, parent) {\n return {\n staticClass: concat(child.staticClass, parent.staticClass),\n class: isDef(child.class)\n ? [child.class, parent.class]\n : parent.class\n }\n}\n\nfunction renderClass (\n staticClass,\n dynamicClass\n) {\n if (isDef(staticClass) || isDef(dynamicClass)) {\n return concat(staticClass, stringifyClass(dynamicClass))\n }\n /* istanbul ignore next */\n return ''\n}\n\nfunction concat (a, b) {\n return a ? b ? (a + ' ' + b) : a : (b || '')\n}\n\nfunction stringifyClass (value) {\n if (Array.isArray(value)) {\n return stringifyArray(value)\n }\n if (isObject(value)) {\n return stringifyObject(value)\n }\n if (typeof value === 'string') {\n return value\n }\n /* istanbul ignore next */\n return ''\n}\n\nfunction stringifyArray (value) {\n var res = '';\n var stringified;\n for (var i = 0, l = value.length; i < l; i++) {\n if (isDef(stringified = stringifyClass(value[i])) && stringified !== '') {\n if (res) { res += ' '; }\n res += stringified;\n }\n }\n return res\n}\n\nfunction stringifyObject (value) {\n var res = '';\n for (var key in value) {\n if (value[key]) {\n if (res) { res += ' '; }\n res += key;\n }\n }\n return res\n}\n\n/* */\n\nvar namespaceMap = {\n svg: 'http://www.w3.org/2000/svg',\n math: 'http://www.w3.org/1998/Math/MathML'\n};\n\nvar isHTMLTag = makeMap(\n 'html,body,base,head,link,meta,style,title,' +\n 'address,article,aside,footer,header,h1,h2,h3,h4,h5,h6,hgroup,nav,section,' +\n 'div,dd,dl,dt,figcaption,figure,picture,hr,img,li,main,ol,p,pre,ul,' +\n 'a,b,abbr,bdi,bdo,br,cite,code,data,dfn,em,i,kbd,mark,q,rp,rt,rtc,ruby,' +\n 's,samp,small,span,strong,sub,sup,time,u,var,wbr,area,audio,map,track,video,' +\n 'embed,object,param,source,canvas,script,noscript,del,ins,' +\n 'caption,col,colgroup,table,thead,tbody,td,th,tr,' +\n 'button,datalist,fieldset,form,input,label,legend,meter,optgroup,option,' +\n 'output,progress,select,textarea,' +\n 'details,dialog,menu,menuitem,summary,' +\n 'content,element,shadow,template,blockquote,iframe,tfoot'\n);\n\n// this map is intentionally selective, only covering SVG elements that may\n// contain child elements.\nvar isSVG = makeMap(\n 'svg,animate,circle,clippath,cursor,defs,desc,ellipse,filter,font-face,' +\n 'foreignObject,g,glyph,image,line,marker,mask,missing-glyph,path,pattern,' +\n 'polygon,polyline,rect,switch,symbol,text,textpath,tspan,use,view',\n true\n);\n\nvar isPreTag = function (tag) { return tag === 'pre'; };\n\nvar isReservedTag = function (tag) {\n return isHTMLTag(tag) || isSVG(tag)\n};\n\nfunction getTagNamespace (tag) {\n if (isSVG(tag)) {\n return 'svg'\n }\n // basic support for MathML\n // note it doesn't support other MathML elements being component roots\n if (tag === 'math') {\n return 'math'\n }\n}\n\nvar unknownElementCache = Object.create(null);\nfunction isUnknownElement (tag) {\n /* istanbul ignore if */\n if (!inBrowser) {\n return true\n }\n if (isReservedTag(tag)) {\n return false\n }\n tag = tag.toLowerCase();\n /* istanbul ignore if */\n if (unknownElementCache[tag] != null) {\n return unknownElementCache[tag]\n }\n var el = document.createElement(tag);\n if (tag.indexOf('-') > -1) {\n // http://stackoverflow.com/a/28210364/1070244\n return (unknownElementCache[tag] = (\n el.constructor === window.HTMLUnknownElement ||\n el.constructor === window.HTMLElement\n ))\n } else {\n return (unknownElementCache[tag] = /HTMLUnknownElement/.test(el.toString()))\n }\n}\n\nvar isTextInputType = makeMap('text,number,password,search,email,tel,url');\n\n/* */\n\n/**\n * Query an element selector if it's not an element already.\n */\nfunction query (el) {\n if (typeof el === 'string') {\n var selected = document.querySelector(el);\n if (!selected) {\n process.env.NODE_ENV !== 'production' && warn(\n 'Cannot find element: ' + el\n );\n return document.createElement('div')\n }\n return selected\n } else {\n return el\n }\n}\n\n/* */\n\nfunction createElement$1 (tagName, vnode) {\n var elm = document.createElement(tagName);\n if (tagName !== 'select') {\n return elm\n }\n // false or null will remove the attribute but undefined will not\n if (vnode.data && vnode.data.attrs && vnode.data.attrs.multiple !== undefined) {\n elm.setAttribute('multiple', 'multiple');\n }\n return elm\n}\n\nfunction createElementNS (namespace, tagName) {\n return document.createElementNS(namespaceMap[namespace], tagName)\n}\n\nfunction createTextNode (text) {\n return document.createTextNode(text)\n}\n\nfunction createComment (text) {\n return document.createComment(text)\n}\n\nfunction insertBefore (parentNode, newNode, referenceNode) {\n parentNode.insertBefore(newNode, referenceNode);\n}\n\nfunction removeChild (node, child) {\n node.removeChild(child);\n}\n\nfunction appendChild (node, child) {\n node.appendChild(child);\n}\n\nfunction parentNode (node) {\n return node.parentNode\n}\n\nfunction nextSibling (node) {\n return node.nextSibling\n}\n\nfunction tagName (node) {\n return node.tagName\n}\n\nfunction setTextContent (node, text) {\n node.textContent = text;\n}\n\nfunction setAttribute (node, key, val) {\n node.setAttribute(key, val);\n}\n\n\nvar nodeOps = Object.freeze({\n\tcreateElement: createElement$1,\n\tcreateElementNS: createElementNS,\n\tcreateTextNode: createTextNode,\n\tcreateComment: createComment,\n\tinsertBefore: insertBefore,\n\tremoveChild: removeChild,\n\tappendChild: appendChild,\n\tparentNode: parentNode,\n\tnextSibling: nextSibling,\n\ttagName: tagName,\n\tsetTextContent: setTextContent,\n\tsetAttribute: setAttribute\n});\n\n/* */\n\nvar ref = {\n create: function create (_, vnode) {\n registerRef(vnode);\n },\n update: function update (oldVnode, vnode) {\n if (oldVnode.data.ref !== vnode.data.ref) {\n registerRef(oldVnode, true);\n registerRef(vnode);\n }\n },\n destroy: function destroy (vnode) {\n registerRef(vnode, true);\n }\n};\n\nfunction registerRef (vnode, isRemoval) {\n var key = vnode.data.ref;\n if (!key) { return }\n\n var vm = vnode.context;\n var ref = vnode.componentInstance || vnode.elm;\n var refs = vm.$refs;\n if (isRemoval) {\n if (Array.isArray(refs[key])) {\n remove(refs[key], ref);\n } else if (refs[key] === ref) {\n refs[key] = undefined;\n }\n } else {\n if (vnode.data.refInFor) {\n if (!Array.isArray(refs[key])) {\n refs[key] = [ref];\n } else if (refs[key].indexOf(ref) < 0) {\n // $flow-disable-line\n refs[key].push(ref);\n }\n } else {\n refs[key] = ref;\n }\n }\n}\n\n/**\n * Virtual DOM patching algorithm based on Snabbdom by\n * Simon Friis Vindum (@paldepind)\n * Licensed under the MIT License\n * https://github.com/paldepind/snabbdom/blob/master/LICENSE\n *\n * modified by Evan You (@yyx990803)\n *\n * Not type-checking this because this file is perf-critical and the cost\n * of making flow understand it is not worth it.\n */\n\nvar emptyNode = new VNode('', {}, []);\n\nvar hooks = ['create', 'activate', 'update', 'remove', 'destroy'];\n\nfunction sameVnode (a, b) {\n return (\n a.key === b.key && (\n (\n a.tag === b.tag &&\n a.isComment === b.isComment &&\n isDef(a.data) === isDef(b.data) &&\n sameInputType(a, b)\n ) || (\n isTrue(a.isAsyncPlaceholder) &&\n a.asyncFactory === b.asyncFactory &&\n isUndef(b.asyncFactory.error)\n )\n )\n )\n}\n\nfunction sameInputType (a, b) {\n if (a.tag !== 'input') { return true }\n var i;\n var typeA = isDef(i = a.data) && isDef(i = i.attrs) && i.type;\n var typeB = isDef(i = b.data) && isDef(i = i.attrs) && i.type;\n return typeA === typeB || isTextInputType(typeA) && isTextInputType(typeB)\n}\n\nfunction createKeyToOldIdx (children, beginIdx, endIdx) {\n var i, key;\n var map = {};\n for (i = beginIdx; i <= endIdx; ++i) {\n key = children[i].key;\n if (isDef(key)) { map[key] = i; }\n }\n return map\n}\n\nfunction createPatchFunction (backend) {\n var i, j;\n var cbs = {};\n\n var modules = backend.modules;\n var nodeOps = backend.nodeOps;\n\n for (i = 0; i < hooks.length; ++i) {\n cbs[hooks[i]] = [];\n for (j = 0; j < modules.length; ++j) {\n if (isDef(modules[j][hooks[i]])) {\n cbs[hooks[i]].push(modules[j][hooks[i]]);\n }\n }\n }\n\n function emptyNodeAt (elm) {\n return new VNode(nodeOps.tagName(elm).toLowerCase(), {}, [], undefined, elm)\n }\n\n function createRmCb (childElm, listeners) {\n function remove () {\n if (--remove.listeners === 0) {\n removeNode(childElm);\n }\n }\n remove.listeners = listeners;\n return remove\n }\n\n function removeNode (el) {\n var parent = nodeOps.parentNode(el);\n // element may have already been removed due to v-html / v-text\n if (isDef(parent)) {\n nodeOps.removeChild(parent, el);\n }\n }\n\n var inPre = 0;\n function createElm (vnode, insertedVnodeQueue, parentElm, refElm, nested) {\n vnode.isRootInsert = !nested; // for transition enter check\n if (createComponent(vnode, insertedVnodeQueue, parentElm, refElm)) {\n return\n }\n\n var data = vnode.data;\n var children = vnode.children;\n var tag = vnode.tag;\n if (isDef(tag)) {\n if (process.env.NODE_ENV !== 'production') {\n if (data && data.pre) {\n inPre++;\n }\n if (\n !inPre &&\n !vnode.ns &&\n !(\n config.ignoredElements.length &&\n config.ignoredElements.some(function (ignore) {\n return isRegExp(ignore)\n ? ignore.test(tag)\n : ignore === tag\n })\n ) &&\n config.isUnknownElement(tag)\n ) {\n warn(\n 'Unknown custom element: <' + tag + '> - did you ' +\n 'register the component correctly? For recursive components, ' +\n 'make sure to provide the \"name\" option.',\n vnode.context\n );\n }\n }\n vnode.elm = vnode.ns\n ? nodeOps.createElementNS(vnode.ns, tag)\n : nodeOps.createElement(tag, vnode);\n setScope(vnode);\n\n /* istanbul ignore if */\n {\n createChildren(vnode, children, insertedVnodeQueue);\n if (isDef(data)) {\n invokeCreateHooks(vnode, insertedVnodeQueue);\n }\n insert(parentElm, vnode.elm, refElm);\n }\n\n if (process.env.NODE_ENV !== 'production' && data && data.pre) {\n inPre--;\n }\n } else if (isTrue(vnode.isComment)) {\n vnode.elm = nodeOps.createComment(vnode.text);\n insert(parentElm, vnode.elm, refElm);\n } else {\n vnode.elm = nodeOps.createTextNode(vnode.text);\n insert(parentElm, vnode.elm, refElm);\n }\n }\n\n function createComponent (vnode, insertedVnodeQueue, parentElm, refElm) {\n var i = vnode.data;\n if (isDef(i)) {\n var isReactivated = isDef(vnode.componentInstance) && i.keepAlive;\n if (isDef(i = i.hook) && isDef(i = i.init)) {\n i(vnode, false /* hydrating */, parentElm, refElm);\n }\n // after calling the init hook, if the vnode is a child component\n // it should've created a child instance and mounted it. the child\n // component also has set the placeholder vnode's elm.\n // in that case we can just return the element and be done.\n if (isDef(vnode.componentInstance)) {\n initComponent(vnode, insertedVnodeQueue);\n if (isTrue(isReactivated)) {\n reactivateComponent(vnode, insertedVnodeQueue, parentElm, refElm);\n }\n return true\n }\n }\n }\n\n function initComponent (vnode, insertedVnodeQueue) {\n if (isDef(vnode.data.pendingInsert)) {\n insertedVnodeQueue.push.apply(insertedVnodeQueue, vnode.data.pendingInsert);\n vnode.data.pendingInsert = null;\n }\n vnode.elm = vnode.componentInstance.$el;\n if (isPatchable(vnode)) {\n invokeCreateHooks(vnode, insertedVnodeQueue);\n setScope(vnode);\n } else {\n // empty component root.\n // skip all element-related modules except for ref (#3455)\n registerRef(vnode);\n // make sure to invoke the insert hook\n insertedVnodeQueue.push(vnode);\n }\n }\n\n function reactivateComponent (vnode, insertedVnodeQueue, parentElm, refElm) {\n var i;\n // hack for #4339: a reactivated component with inner transition\n // does not trigger because the inner node's created hooks are not called\n // again. It's not ideal to involve module-specific logic in here but\n // there doesn't seem to be a better way to do it.\n var innerNode = vnode;\n while (innerNode.componentInstance) {\n innerNode = innerNode.componentInstance._vnode;\n if (isDef(i = innerNode.data) && isDef(i = i.transition)) {\n for (i = 0; i < cbs.activate.length; ++i) {\n cbs.activate[i](emptyNode, innerNode);\n }\n insertedVnodeQueue.push(innerNode);\n break\n }\n }\n // unlike a newly created component,\n // a reactivated keep-alive component doesn't insert itself\n insert(parentElm, vnode.elm, refElm);\n }\n\n function insert (parent, elm, ref$$1) {\n if (isDef(parent)) {\n if (isDef(ref$$1)) {\n if (ref$$1.parentNode === parent) {\n nodeOps.insertBefore(parent, elm, ref$$1);\n }\n } else {\n nodeOps.appendChild(parent, elm);\n }\n }\n }\n\n function createChildren (vnode, children, insertedVnodeQueue) {\n if (Array.isArray(children)) {\n for (var i = 0; i < children.length; ++i) {\n createElm(children[i], insertedVnodeQueue, vnode.elm, null, true);\n }\n } else if (isPrimitive(vnode.text)) {\n nodeOps.appendChild(vnode.elm, nodeOps.createTextNode(vnode.text));\n }\n }\n\n function isPatchable (vnode) {\n while (vnode.componentInstance) {\n vnode = vnode.componentInstance._vnode;\n }\n return isDef(vnode.tag)\n }\n\n function invokeCreateHooks (vnode, insertedVnodeQueue) {\n for (var i$1 = 0; i$1 < cbs.create.length; ++i$1) {\n cbs.create[i$1](emptyNode, vnode);\n }\n i = vnode.data.hook; // Reuse variable\n if (isDef(i)) {\n if (isDef(i.create)) { i.create(emptyNode, vnode); }\n if (isDef(i.insert)) { insertedVnodeQueue.push(vnode); }\n }\n }\n\n // set scope id attribute for scoped CSS.\n // this is implemented as a special case to avoid the overhead\n // of going through the normal attribute patching process.\n function setScope (vnode) {\n var i;\n if (isDef(i = vnode.functionalScopeId)) {\n nodeOps.setAttribute(vnode.elm, i, '');\n } else {\n var ancestor = vnode;\n while (ancestor) {\n if (isDef(i = ancestor.context) && isDef(i = i.$options._scopeId)) {\n nodeOps.setAttribute(vnode.elm, i, '');\n }\n ancestor = ancestor.parent;\n }\n }\n // for slot content they should also get the scopeId from the host instance.\n if (isDef(i = activeInstance) &&\n i !== vnode.context &&\n i !== vnode.functionalContext &&\n isDef(i = i.$options._scopeId)\n ) {\n nodeOps.setAttribute(vnode.elm, i, '');\n }\n }\n\n function addVnodes (parentElm, refElm, vnodes, startIdx, endIdx, insertedVnodeQueue) {\n for (; startIdx <= endIdx; ++startIdx) {\n createElm(vnodes[startIdx], insertedVnodeQueue, parentElm, refElm);\n }\n }\n\n function invokeDestroyHook (vnode) {\n var i, j;\n var data = vnode.data;\n if (isDef(data)) {\n if (isDef(i = data.hook) && isDef(i = i.destroy)) { i(vnode); }\n for (i = 0; i < cbs.destroy.length; ++i) { cbs.destroy[i](vnode); }\n }\n if (isDef(i = vnode.children)) {\n for (j = 0; j < vnode.children.length; ++j) {\n invokeDestroyHook(vnode.children[j]);\n }\n }\n }\n\n function removeVnodes (parentElm, vnodes, startIdx, endIdx) {\n for (; startIdx <= endIdx; ++startIdx) {\n var ch = vnodes[startIdx];\n if (isDef(ch)) {\n if (isDef(ch.tag)) {\n removeAndInvokeRemoveHook(ch);\n invokeDestroyHook(ch);\n } else { // Text node\n removeNode(ch.elm);\n }\n }\n }\n }\n\n function removeAndInvokeRemoveHook (vnode, rm) {\n if (isDef(rm) || isDef(vnode.data)) {\n var i;\n var listeners = cbs.remove.length + 1;\n if (isDef(rm)) {\n // we have a recursively passed down rm callback\n // increase the listeners count\n rm.listeners += listeners;\n } else {\n // directly removing\n rm = createRmCb(vnode.elm, listeners);\n }\n // recursively invoke hooks on child component root node\n if (isDef(i = vnode.componentInstance) && isDef(i = i._vnode) && isDef(i.data)) {\n removeAndInvokeRemoveHook(i, rm);\n }\n for (i = 0; i < cbs.remove.length; ++i) {\n cbs.remove[i](vnode, rm);\n }\n if (isDef(i = vnode.data.hook) && isDef(i = i.remove)) {\n i(vnode, rm);\n } else {\n rm();\n }\n } else {\n removeNode(vnode.elm);\n }\n }\n\n function updateChildren (parentElm, oldCh, newCh, insertedVnodeQueue, removeOnly) {\n var oldStartIdx = 0;\n var newStartIdx = 0;\n var oldEndIdx = oldCh.length - 1;\n var oldStartVnode = oldCh[0];\n var oldEndVnode = oldCh[oldEndIdx];\n var newEndIdx = newCh.length - 1;\n var newStartVnode = newCh[0];\n var newEndVnode = newCh[newEndIdx];\n var oldKeyToIdx, idxInOld, vnodeToMove, refElm;\n\n // removeOnly is a special flag used only by <transition-group>\n // to ensure removed elements stay in correct relative positions\n // during leaving transitions\n var canMove = !removeOnly;\n\n while (oldStartIdx <= oldEndIdx && newStartIdx <= newEndIdx) {\n if (isUndef(oldStartVnode)) {\n oldStartVnode = oldCh[++oldStartIdx]; // Vnode has been moved left\n } else if (isUndef(oldEndVnode)) {\n oldEndVnode = oldCh[--oldEndIdx];\n } else if (sameVnode(oldStartVnode, newStartVnode)) {\n patchVnode(oldStartVnode, newStartVnode, insertedVnodeQueue);\n oldStartVnode = oldCh[++oldStartIdx];\n newStartVnode = newCh[++newStartIdx];\n } else if (sameVnode(oldEndVnode, newEndVnode)) {\n patchVnode(oldEndVnode, newEndVnode, insertedVnodeQueue);\n oldEndVnode = oldCh[--oldEndIdx];\n newEndVnode = newCh[--newEndIdx];\n } else if (sameVnode(oldStartVnode, newEndVnode)) { // Vnode moved right\n patchVnode(oldStartVnode, newEndVnode, insertedVnodeQueue);\n canMove && nodeOps.insertBefore(parentElm, oldStartVnode.elm, nodeOps.nextSibling(oldEndVnode.elm));\n oldStartVnode = oldCh[++oldStartIdx];\n newEndVnode = newCh[--newEndIdx];\n } else if (sameVnode(oldEndVnode, newStartVnode)) { // Vnode moved left\n patchVnode(oldEndVnode, newStartVnode, insertedVnodeQueue);\n canMove && nodeOps.insertBefore(parentElm, oldEndVnode.elm, oldStartVnode.elm);\n oldEndVnode = oldCh[--oldEndIdx];\n newStartVnode = newCh[++newStartIdx];\n } else {\n if (isUndef(oldKeyToIdx)) { oldKeyToIdx = createKeyToOldIdx(oldCh, oldStartIdx, oldEndIdx); }\n idxInOld = isDef(newStartVnode.key)\n ? oldKeyToIdx[newStartVnode.key]\n : findIdxInOld(newStartVnode, oldCh, oldStartIdx, oldEndIdx);\n if (isUndef(idxInOld)) { // New element\n createElm(newStartVnode, insertedVnodeQueue, parentElm, oldStartVnode.elm);\n } else {\n vnodeToMove = oldCh[idxInOld];\n /* istanbul ignore if */\n if (process.env.NODE_ENV !== 'production' && !vnodeToMove) {\n warn(\n 'It seems there are duplicate keys that is causing an update error. ' +\n 'Make sure each v-for item has a unique key.'\n );\n }\n if (sameVnode(vnodeToMove, newStartVnode)) {\n patchVnode(vnodeToMove, newStartVnode, insertedVnodeQueue);\n oldCh[idxInOld] = undefined;\n canMove && nodeOps.insertBefore(parentElm, vnodeToMove.elm, oldStartVnode.elm);\n } else {\n // same key but different element. treat as new element\n createElm(newStartVnode, insertedVnodeQueue, parentElm, oldStartVnode.elm);\n }\n }\n newStartVnode = newCh[++newStartIdx];\n }\n }\n if (oldStartIdx > oldEndIdx) {\n refElm = isUndef(newCh[newEndIdx + 1]) ? null : newCh[newEndIdx + 1].elm;\n addVnodes(parentElm, refElm, newCh, newStartIdx, newEndIdx, insertedVnodeQueue);\n } else if (newStartIdx > newEndIdx) {\n removeVnodes(parentElm, oldCh, oldStartIdx, oldEndIdx);\n }\n }\n\n function findIdxInOld (node, oldCh, start, end) {\n for (var i = start; i < end; i++) {\n var c = oldCh[i];\n if (isDef(c) && sameVnode(node, c)) { return i }\n }\n }\n\n function patchVnode (oldVnode, vnode, insertedVnodeQueue, removeOnly) {\n if (oldVnode === vnode) {\n return\n }\n\n var elm = vnode.elm = oldVnode.elm;\n\n if (isTrue(oldVnode.isAsyncPlaceholder)) {\n if (isDef(vnode.asyncFactory.resolved)) {\n hydrate(oldVnode.elm, vnode, insertedVnodeQueue);\n } else {\n vnode.isAsyncPlaceholder = true;\n }\n return\n }\n\n // reuse element for static trees.\n // note we only do this if the vnode is cloned -\n // if the new node is not cloned it means the render functions have been\n // reset by the hot-reload-api and we need to do a proper re-render.\n if (isTrue(vnode.isStatic) &&\n isTrue(oldVnode.isStatic) &&\n vnode.key === oldVnode.key &&\n (isTrue(vnode.isCloned) || isTrue(vnode.isOnce))\n ) {\n vnode.componentInstance = oldVnode.componentInstance;\n return\n }\n\n var i;\n var data = vnode.data;\n if (isDef(data) && isDef(i = data.hook) && isDef(i = i.prepatch)) {\n i(oldVnode, vnode);\n }\n\n var oldCh = oldVnode.children;\n var ch = vnode.children;\n if (isDef(data) && isPatchable(vnode)) {\n for (i = 0; i < cbs.update.length; ++i) { cbs.update[i](oldVnode, vnode); }\n if (isDef(i = data.hook) && isDef(i = i.update)) { i(oldVnode, vnode); }\n }\n if (isUndef(vnode.text)) {\n if (isDef(oldCh) && isDef(ch)) {\n if (oldCh !== ch) { updateChildren(elm, oldCh, ch, insertedVnodeQueue, removeOnly); }\n } else if (isDef(ch)) {\n if (isDef(oldVnode.text)) { nodeOps.setTextContent(elm, ''); }\n addVnodes(elm, null, ch, 0, ch.length - 1, insertedVnodeQueue);\n } else if (isDef(oldCh)) {\n removeVnodes(elm, oldCh, 0, oldCh.length - 1);\n } else if (isDef(oldVnode.text)) {\n nodeOps.setTextContent(elm, '');\n }\n } else if (oldVnode.text !== vnode.text) {\n nodeOps.setTextContent(elm, vnode.text);\n }\n if (isDef(data)) {\n if (isDef(i = data.hook) && isDef(i = i.postpatch)) { i(oldVnode, vnode); }\n }\n }\n\n function invokeInsertHook (vnode, queue, initial) {\n // delay insert hooks for component root nodes, invoke them after the\n // element is really inserted\n if (isTrue(initial) && isDef(vnode.parent)) {\n vnode.parent.data.pendingInsert = queue;\n } else {\n for (var i = 0; i < queue.length; ++i) {\n queue[i].data.hook.insert(queue[i]);\n }\n }\n }\n\n var bailed = false;\n // list of modules that can skip create hook during hydration because they\n // are already rendered on the client or has no need for initialization\n var isRenderedModule = makeMap('attrs,style,class,staticClass,staticStyle,key');\n\n // Note: this is a browser-only function so we can assume elms are DOM nodes.\n function hydrate (elm, vnode, insertedVnodeQueue) {\n if (isTrue(vnode.isComment) && isDef(vnode.asyncFactory)) {\n vnode.elm = elm;\n vnode.isAsyncPlaceholder = true;\n return true\n }\n if (process.env.NODE_ENV !== 'production') {\n if (!assertNodeMatch(elm, vnode)) {\n return false\n }\n }\n vnode.elm = elm;\n var tag = vnode.tag;\n var data = vnode.data;\n var children = vnode.children;\n if (isDef(data)) {\n if (isDef(i = data.hook) && isDef(i = i.init)) { i(vnode, true /* hydrating */); }\n if (isDef(i = vnode.componentInstance)) {\n // child component. it should have hydrated its own tree.\n initComponent(vnode, insertedVnodeQueue);\n return true\n }\n }\n if (isDef(tag)) {\n if (isDef(children)) {\n // empty element, allow client to pick up and populate children\n if (!elm.hasChildNodes()) {\n createChildren(vnode, children, insertedVnodeQueue);\n } else {\n // v-html and domProps: innerHTML\n if (isDef(i = data) && isDef(i = i.domProps) && isDef(i = i.innerHTML)) {\n if (i !== elm.innerHTML) {\n /* istanbul ignore if */\n if (process.env.NODE_ENV !== 'production' &&\n typeof console !== 'undefined' &&\n !bailed\n ) {\n bailed = true;\n console.warn('Parent: ', elm);\n console.warn('server innerHTML: ', i);\n console.warn('client innerHTML: ', elm.innerHTML);\n }\n return false\n }\n } else {\n // iterate and compare children lists\n var childrenMatch = true;\n var childNode = elm.firstChild;\n for (var i$1 = 0; i$1 < children.length; i$1++) {\n if (!childNode || !hydrate(childNode, children[i$1], insertedVnodeQueue)) {\n childrenMatch = false;\n break\n }\n childNode = childNode.nextSibling;\n }\n // if childNode is not null, it means the actual childNodes list is\n // longer than the virtual children list.\n if (!childrenMatch || childNode) {\n /* istanbul ignore if */\n if (process.env.NODE_ENV !== 'production' &&\n typeof console !== 'undefined' &&\n !bailed\n ) {\n bailed = true;\n console.warn('Parent: ', elm);\n console.warn('Mismatching childNodes vs. VNodes: ', elm.childNodes, children);\n }\n return false\n }\n }\n }\n }\n if (isDef(data)) {\n for (var key in data) {\n if (!isRenderedModule(key)) {\n invokeCreateHooks(vnode, insertedVnodeQueue);\n break\n }\n }\n }\n } else if (elm.data !== vnode.text) {\n elm.data = vnode.text;\n }\n return true\n }\n\n function assertNodeMatch (node, vnode) {\n if (isDef(vnode.tag)) {\n return (\n vnode.tag.indexOf('vue-component') === 0 ||\n vnode.tag.toLowerCase() === (node.tagName && node.tagName.toLowerCase())\n )\n } else {\n return node.nodeType === (vnode.isComment ? 8 : 3)\n }\n }\n\n return function patch (oldVnode, vnode, hydrating, removeOnly, parentElm, refElm) {\n if (isUndef(vnode)) {\n if (isDef(oldVnode)) { invokeDestroyHook(oldVnode); }\n return\n }\n\n var isInitialPatch = false;\n var insertedVnodeQueue = [];\n\n if (isUndef(oldVnode)) {\n // empty mount (likely as component), create new root element\n isInitialPatch = true;\n createElm(vnode, insertedVnodeQueue, parentElm, refElm);\n } else {\n var isRealElement = isDef(oldVnode.nodeType);\n if (!isRealElement && sameVnode(oldVnode, vnode)) {\n // patch existing root node\n patchVnode(oldVnode, vnode, insertedVnodeQueue, removeOnly);\n } else {\n if (isRealElement) {\n // mounting to a real element\n // check if this is server-rendered content and if we can perform\n // a successful hydration.\n if (oldVnode.nodeType === 1 && oldVnode.hasAttribute(SSR_ATTR)) {\n oldVnode.removeAttribute(SSR_ATTR);\n hydrating = true;\n }\n if (isTrue(hydrating)) {\n if (hydrate(oldVnode, vnode, insertedVnodeQueue)) {\n invokeInsertHook(vnode, insertedVnodeQueue, true);\n return oldVnode\n } else if (process.env.NODE_ENV !== 'production') {\n warn(\n 'The client-side rendered virtual DOM tree is not matching ' +\n 'server-rendered content. This is likely caused by incorrect ' +\n 'HTML markup, for example nesting block-level elements inside ' +\n '<p>, or missing <tbody>. Bailing hydration and performing ' +\n 'full client-side render.'\n );\n }\n }\n // either not server-rendered, or hydration failed.\n // create an empty node and replace it\n oldVnode = emptyNodeAt(oldVnode);\n }\n // replacing existing element\n var oldElm = oldVnode.elm;\n var parentElm$1 = nodeOps.parentNode(oldElm);\n createElm(\n vnode,\n insertedVnodeQueue,\n // extremely rare edge case: do not insert if old element is in a\n // leaving transition. Only happens when combining transition +\n // keep-alive + HOCs. (#4590)\n oldElm._leaveCb ? null : parentElm$1,\n nodeOps.nextSibling(oldElm)\n );\n\n if (isDef(vnode.parent)) {\n // component root element replaced.\n // update parent placeholder node element, recursively\n var ancestor = vnode.parent;\n var patchable = isPatchable(vnode);\n while (ancestor) {\n for (var i = 0; i < cbs.destroy.length; ++i) {\n cbs.destroy[i](ancestor);\n }\n ancestor.elm = vnode.elm;\n if (patchable) {\n for (var i$1 = 0; i$1 < cbs.create.length; ++i$1) {\n cbs.create[i$1](emptyNode, ancestor);\n }\n // #6513\n // invoke insert hooks that may have been merged by create hooks.\n // e.g. for directives that uses the \"inserted\" hook.\n var insert = ancestor.data.hook.insert;\n if (insert.merged) {\n // start at index 1 to avoid re-invoking component mounted hook\n for (var i$2 = 1; i$2 < insert.fns.length; i$2++) {\n insert.fns[i$2]();\n }\n }\n } else {\n registerRef(ancestor);\n }\n ancestor = ancestor.parent;\n }\n }\n\n if (isDef(parentElm$1)) {\n removeVnodes(parentElm$1, [oldVnode], 0, 0);\n } else if (isDef(oldVnode.tag)) {\n invokeDestroyHook(oldVnode);\n }\n }\n }\n\n invokeInsertHook(vnode, insertedVnodeQueue, isInitialPatch);\n return vnode.elm\n }\n}\n\n/* */\n\nvar directives = {\n create: updateDirectives,\n update: updateDirectives,\n destroy: function unbindDirectives (vnode) {\n updateDirectives(vnode, emptyNode);\n }\n};\n\nfunction updateDirectives (oldVnode, vnode) {\n if (oldVnode.data.directives || vnode.data.directives) {\n _update(oldVnode, vnode);\n }\n}\n\nfunction _update (oldVnode, vnode) {\n var isCreate = oldVnode === emptyNode;\n var isDestroy = vnode === emptyNode;\n var oldDirs = normalizeDirectives$1(oldVnode.data.directives, oldVnode.context);\n var newDirs = normalizeDirectives$1(vnode.data.directives, vnode.context);\n\n var dirsWithInsert = [];\n var dirsWithPostpatch = [];\n\n var key, oldDir, dir;\n for (key in newDirs) {\n oldDir = oldDirs[key];\n dir = newDirs[key];\n if (!oldDir) {\n // new directive, bind\n callHook$1(dir, 'bind', vnode, oldVnode);\n if (dir.def && dir.def.inserted) {\n dirsWithInsert.push(dir);\n }\n } else {\n // existing directive, update\n dir.oldValue = oldDir.value;\n callHook$1(dir, 'update', vnode, oldVnode);\n if (dir.def && dir.def.componentUpdated) {\n dirsWithPostpatch.push(dir);\n }\n }\n }\n\n if (dirsWithInsert.length) {\n var callInsert = function () {\n for (var i = 0; i < dirsWithInsert.length; i++) {\n callHook$1(dirsWithInsert[i], 'inserted', vnode, oldVnode);\n }\n };\n if (isCreate) {\n mergeVNodeHook(vnode.data.hook || (vnode.data.hook = {}), 'insert', callInsert);\n } else {\n callInsert();\n }\n }\n\n if (dirsWithPostpatch.length) {\n mergeVNodeHook(vnode.data.hook || (vnode.data.hook = {}), 'postpatch', function () {\n for (var i = 0; i < dirsWithPostpatch.length; i++) {\n callHook$1(dirsWithPostpatch[i], 'componentUpdated', vnode, oldVnode);\n }\n });\n }\n\n if (!isCreate) {\n for (key in oldDirs) {\n if (!newDirs[key]) {\n // no longer present, unbind\n callHook$1(oldDirs[key], 'unbind', oldVnode, oldVnode, isDestroy);\n }\n }\n }\n}\n\nvar emptyModifiers = Object.create(null);\n\nfunction normalizeDirectives$1 (\n dirs,\n vm\n) {\n var res = Object.create(null);\n if (!dirs) {\n return res\n }\n var i, dir;\n for (i = 0; i < dirs.length; i++) {\n dir = dirs[i];\n if (!dir.modifiers) {\n dir.modifiers = emptyModifiers;\n }\n res[getRawDirName(dir)] = dir;\n dir.def = resolveAsset(vm.$options, 'directives', dir.name, true);\n }\n return res\n}\n\nfunction getRawDirName (dir) {\n return dir.rawName || ((dir.name) + \".\" + (Object.keys(dir.modifiers || {}).join('.')))\n}\n\nfunction callHook$1 (dir, hook, vnode, oldVnode, isDestroy) {\n var fn = dir.def && dir.def[hook];\n if (fn) {\n try {\n fn(vnode.elm, dir, vnode, oldVnode, isDestroy);\n } catch (e) {\n handleError(e, vnode.context, (\"directive \" + (dir.name) + \" \" + hook + \" hook\"));\n }\n }\n}\n\nvar baseModules = [\n ref,\n directives\n];\n\n/* */\n\nfunction updateAttrs (oldVnode, vnode) {\n var opts = vnode.componentOptions;\n if (isDef(opts) && opts.Ctor.options.inheritAttrs === false) {\n return\n }\n if (isUndef(oldVnode.data.attrs) && isUndef(vnode.data.attrs)) {\n return\n }\n var key, cur, old;\n var elm = vnode.elm;\n var oldAttrs = oldVnode.data.attrs || {};\n var attrs = vnode.data.attrs || {};\n // clone observed objects, as the user probably wants to mutate it\n if (isDef(attrs.__ob__)) {\n attrs = vnode.data.attrs = extend({}, attrs);\n }\n\n for (key in attrs) {\n cur = attrs[key];\n old = oldAttrs[key];\n if (old !== cur) {\n setAttr(elm, key, cur);\n }\n }\n // #4391: in IE9, setting type can reset value for input[type=radio]\n // #6666: IE/Edge forces progress value down to 1 before setting a max\n /* istanbul ignore if */\n if ((isIE9 || isEdge) && attrs.value !== oldAttrs.value) {\n setAttr(elm, 'value', attrs.value);\n }\n for (key in oldAttrs) {\n if (isUndef(attrs[key])) {\n if (isXlink(key)) {\n elm.removeAttributeNS(xlinkNS, getXlinkProp(key));\n } else if (!isEnumeratedAttr(key)) {\n elm.removeAttribute(key);\n }\n }\n }\n}\n\nfunction setAttr (el, key, value) {\n if (isBooleanAttr(key)) {\n // set attribute for blank value\n // e.g. <option disabled>Select one</option>\n if (isFalsyAttrValue(value)) {\n el.removeAttribute(key);\n } else {\n // technically allowfullscreen is a boolean attribute for <iframe>,\n // but Flash expects a value of \"true\" when used on <embed> tag\n value = key === 'allowfullscreen' && el.tagName === 'EMBED'\n ? 'true'\n : key;\n el.setAttribute(key, value);\n }\n } else if (isEnumeratedAttr(key)) {\n el.setAttribute(key, isFalsyAttrValue(value) || value === 'false' ? 'false' : 'true');\n } else if (isXlink(key)) {\n if (isFalsyAttrValue(value)) {\n el.removeAttributeNS(xlinkNS, getXlinkProp(key));\n } else {\n el.setAttributeNS(xlinkNS, key, value);\n }\n } else {\n if (isFalsyAttrValue(value)) {\n el.removeAttribute(key);\n } else {\n el.setAttribute(key, value);\n }\n }\n}\n\nvar attrs = {\n create: updateAttrs,\n update: updateAttrs\n};\n\n/* */\n\nfunction updateClass (oldVnode, vnode) {\n var el = vnode.elm;\n var data = vnode.data;\n var oldData = oldVnode.data;\n if (\n isUndef(data.staticClass) &&\n isUndef(data.class) && (\n isUndef(oldData) || (\n isUndef(oldData.staticClass) &&\n isUndef(oldData.class)\n )\n )\n ) {\n return\n }\n\n var cls = genClassForVnode(vnode);\n\n // handle transition classes\n var transitionClass = el._transitionClasses;\n if (isDef(transitionClass)) {\n cls = concat(cls, stringifyClass(transitionClass));\n }\n\n // set the class\n if (cls !== el._prevClass) {\n el.setAttribute('class', cls);\n el._prevClass = cls;\n }\n}\n\nvar klass = {\n create: updateClass,\n update: updateClass\n};\n\n/* */\n\nvar validDivisionCharRE = /[\\w).+\\-_$\\]]/;\n\nfunction parseFilters (exp) {\n var inSingle = false;\n var inDouble = false;\n var inTemplateString = false;\n var inRegex = false;\n var curly = 0;\n var square = 0;\n var paren = 0;\n var lastFilterIndex = 0;\n var c, prev, i, expression, filters;\n\n for (i = 0; i < exp.length; i++) {\n prev = c;\n c = exp.charCodeAt(i);\n if (inSingle) {\n if (c === 0x27 && prev !== 0x5C) { inSingle = false; }\n } else if (inDouble) {\n if (c === 0x22 && prev !== 0x5C) { inDouble = false; }\n } else if (inTemplateString) {\n if (c === 0x60 && prev !== 0x5C) { inTemplateString = false; }\n } else if (inRegex) {\n if (c === 0x2f && prev !== 0x5C) { inRegex = false; }\n } else if (\n c === 0x7C && // pipe\n exp.charCodeAt(i + 1) !== 0x7C &&\n exp.charCodeAt(i - 1) !== 0x7C &&\n !curly && !square && !paren\n ) {\n if (expression === undefined) {\n // first filter, end of expression\n lastFilterIndex = i + 1;\n expression = exp.slice(0, i).trim();\n } else {\n pushFilter();\n }\n } else {\n switch (c) {\n case 0x22: inDouble = true; break // \"\n case 0x27: inSingle = true; break // '\n case 0x60: inTemplateString = true; break // `\n case 0x28: paren++; break // (\n case 0x29: paren--; break // )\n case 0x5B: square++; break // [\n case 0x5D: square--; break // ]\n case 0x7B: curly++; break // {\n case 0x7D: curly--; break // }\n }\n if (c === 0x2f) { // /\n var j = i - 1;\n var p = (void 0);\n // find first non-whitespace prev char\n for (; j >= 0; j--) {\n p = exp.charAt(j);\n if (p !== ' ') { break }\n }\n if (!p || !validDivisionCharRE.test(p)) {\n inRegex = true;\n }\n }\n }\n }\n\n if (expression === undefined) {\n expression = exp.slice(0, i).trim();\n } else if (lastFilterIndex !== 0) {\n pushFilter();\n }\n\n function pushFilter () {\n (filters || (filters = [])).push(exp.slice(lastFilterIndex, i).trim());\n lastFilterIndex = i + 1;\n }\n\n if (filters) {\n for (i = 0; i < filters.length; i++) {\n expression = wrapFilter(expression, filters[i]);\n }\n }\n\n return expression\n}\n\nfunction wrapFilter (exp, filter) {\n var i = filter.indexOf('(');\n if (i < 0) {\n // _f: resolveFilter\n return (\"_f(\\\"\" + filter + \"\\\")(\" + exp + \")\")\n } else {\n var name = filter.slice(0, i);\n var args = filter.slice(i + 1);\n return (\"_f(\\\"\" + name + \"\\\")(\" + exp + \",\" + args)\n }\n}\n\n/* */\n\nfunction baseWarn (msg) {\n console.error((\"[Vue compiler]: \" + msg));\n}\n\nfunction pluckModuleFunction (\n modules,\n key\n) {\n return modules\n ? modules.map(function (m) { return m[key]; }).filter(function (_) { return _; })\n : []\n}\n\nfunction addProp (el, name, value) {\n (el.props || (el.props = [])).push({ name: name, value: value });\n}\n\nfunction addAttr (el, name, value) {\n (el.attrs || (el.attrs = [])).push({ name: name, value: value });\n}\n\nfunction addDirective (\n el,\n name,\n rawName,\n value,\n arg,\n modifiers\n) {\n (el.directives || (el.directives = [])).push({ name: name, rawName: rawName, value: value, arg: arg, modifiers: modifiers });\n}\n\nfunction addHandler (\n el,\n name,\n value,\n modifiers,\n important,\n warn\n) {\n // warn prevent and passive modifier\n /* istanbul ignore if */\n if (\n process.env.NODE_ENV !== 'production' && warn &&\n modifiers && modifiers.prevent && modifiers.passive\n ) {\n warn(\n 'passive and prevent can\\'t be used together. ' +\n 'Passive handler can\\'t prevent default event.'\n );\n }\n // check capture modifier\n if (modifiers && modifiers.capture) {\n delete modifiers.capture;\n name = '!' + name; // mark the event as captured\n }\n if (modifiers && modifiers.once) {\n delete modifiers.once;\n name = '~' + name; // mark the event as once\n }\n /* istanbul ignore if */\n if (modifiers && modifiers.passive) {\n delete modifiers.passive;\n name = '&' + name; // mark the event as passive\n }\n var events;\n if (modifiers && modifiers.native) {\n delete modifiers.native;\n events = el.nativeEvents || (el.nativeEvents = {});\n } else {\n events = el.events || (el.events = {});\n }\n var newHandler = { value: value, modifiers: modifiers };\n var handlers = events[name];\n /* istanbul ignore if */\n if (Array.isArray(handlers)) {\n important ? handlers.unshift(newHandler) : handlers.push(newHandler);\n } else if (handlers) {\n events[name] = important ? [newHandler, handlers] : [handlers, newHandler];\n } else {\n events[name] = newHandler;\n }\n}\n\nfunction getBindingAttr (\n el,\n name,\n getStatic\n) {\n var dynamicValue =\n getAndRemoveAttr(el, ':' + name) ||\n getAndRemoveAttr(el, 'v-bind:' + name);\n if (dynamicValue != null) {\n return parseFilters(dynamicValue)\n } else if (getStatic !== false) {\n var staticValue = getAndRemoveAttr(el, name);\n if (staticValue != null) {\n return JSON.stringify(staticValue)\n }\n }\n}\n\n// note: this only removes the attr from the Array (attrsList) so that it\n// doesn't get processed by processAttrs.\n// By default it does NOT remove it from the map (attrsMap) because the map is\n// needed during codegen.\nfunction getAndRemoveAttr (\n el,\n name,\n removeFromMap\n) {\n var val;\n if ((val = el.attrsMap[name]) != null) {\n var list = el.attrsList;\n for (var i = 0, l = list.length; i < l; i++) {\n if (list[i].name === name) {\n list.splice(i, 1);\n break\n }\n }\n }\n if (removeFromMap) {\n delete el.attrsMap[name];\n }\n return val\n}\n\n/* */\n\n/**\n * Cross-platform code generation for component v-model\n */\nfunction genComponentModel (\n el,\n value,\n modifiers\n) {\n var ref = modifiers || {};\n var number = ref.number;\n var trim = ref.trim;\n\n var baseValueExpression = '$$v';\n var valueExpression = baseValueExpression;\n if (trim) {\n valueExpression =\n \"(typeof \" + baseValueExpression + \" === 'string'\" +\n \"? \" + baseValueExpression + \".trim()\" +\n \": \" + baseValueExpression + \")\";\n }\n if (number) {\n valueExpression = \"_n(\" + valueExpression + \")\";\n }\n var assignment = genAssignmentCode(value, valueExpression);\n\n el.model = {\n value: (\"(\" + value + \")\"),\n expression: (\"\\\"\" + value + \"\\\"\"),\n callback: (\"function (\" + baseValueExpression + \") {\" + assignment + \"}\")\n };\n}\n\n/**\n * Cross-platform codegen helper for generating v-model value assignment code.\n */\nfunction genAssignmentCode (\n value,\n assignment\n) {\n var res = parseModel(value);\n if (res.key === null) {\n return (value + \"=\" + assignment)\n } else {\n return (\"$set(\" + (res.exp) + \", \" + (res.key) + \", \" + assignment + \")\")\n }\n}\n\n/**\n * Parse a v-model expression into a base path and a final key segment.\n * Handles both dot-path and possible square brackets.\n *\n * Possible cases:\n *\n * - test\n * - test[key]\n * - test[test1[key]]\n * - test[\"a\"][key]\n * - xxx.test[a[a].test1[key]]\n * - test.xxx.a[\"asa\"][test1[key]]\n *\n */\n\nvar len;\nvar str;\nvar chr;\nvar index$1;\nvar expressionPos;\nvar expressionEndPos;\n\n\n\nfunction parseModel (val) {\n len = val.length;\n\n if (val.indexOf('[') < 0 || val.lastIndexOf(']') < len - 1) {\n index$1 = val.lastIndexOf('.');\n if (index$1 > -1) {\n return {\n exp: val.slice(0, index$1),\n key: '\"' + val.slice(index$1 + 1) + '\"'\n }\n } else {\n return {\n exp: val,\n key: null\n }\n }\n }\n\n str = val;\n index$1 = expressionPos = expressionEndPos = 0;\n\n while (!eof()) {\n chr = next();\n /* istanbul ignore if */\n if (isStringStart(chr)) {\n parseString(chr);\n } else if (chr === 0x5B) {\n parseBracket(chr);\n }\n }\n\n return {\n exp: val.slice(0, expressionPos),\n key: val.slice(expressionPos + 1, expressionEndPos)\n }\n}\n\nfunction next () {\n return str.charCodeAt(++index$1)\n}\n\nfunction eof () {\n return index$1 >= len\n}\n\nfunction isStringStart (chr) {\n return chr === 0x22 || chr === 0x27\n}\n\nfunction parseBracket (chr) {\n var inBracket = 1;\n expressionPos = index$1;\n while (!eof()) {\n chr = next();\n if (isStringStart(chr)) {\n parseString(chr);\n continue\n }\n if (chr === 0x5B) { inBracket++; }\n if (chr === 0x5D) { inBracket--; }\n if (inBracket === 0) {\n expressionEndPos = index$1;\n break\n }\n }\n}\n\nfunction parseString (chr) {\n var stringQuote = chr;\n while (!eof()) {\n chr = next();\n if (chr === stringQuote) {\n break\n }\n }\n}\n\n/* */\n\nvar warn$1;\n\n// in some cases, the event used has to be determined at runtime\n// so we used some reserved tokens during compile.\nvar RANGE_TOKEN = '__r';\nvar CHECKBOX_RADIO_TOKEN = '__c';\n\nfunction model (\n el,\n dir,\n _warn\n) {\n warn$1 = _warn;\n var value = dir.value;\n var modifiers = dir.modifiers;\n var tag = el.tag;\n var type = el.attrsMap.type;\n\n if (process.env.NODE_ENV !== 'production') {\n // inputs with type=\"file\" are read only and setting the input's\n // value will throw an error.\n if (tag === 'input' && type === 'file') {\n warn$1(\n \"<\" + (el.tag) + \" v-model=\\\"\" + value + \"\\\" type=\\\"file\\\">:\\n\" +\n \"File inputs are read only. Use a v-on:change listener instead.\"\n );\n }\n }\n\n if (el.component) {\n genComponentModel(el, value, modifiers);\n // component v-model doesn't need extra runtime\n return false\n } else if (tag === 'select') {\n genSelect(el, value, modifiers);\n } else if (tag === 'input' && type === 'checkbox') {\n genCheckboxModel(el, value, modifiers);\n } else if (tag === 'input' && type === 'radio') {\n genRadioModel(el, value, modifiers);\n } else if (tag === 'input' || tag === 'textarea') {\n genDefaultModel(el, value, modifiers);\n } else if (!config.isReservedTag(tag)) {\n genComponentModel(el, value, modifiers);\n // component v-model doesn't need extra runtime\n return false\n } else if (process.env.NODE_ENV !== 'production') {\n warn$1(\n \"<\" + (el.tag) + \" v-model=\\\"\" + value + \"\\\">: \" +\n \"v-model is not supported on this element type. \" +\n 'If you are working with contenteditable, it\\'s recommended to ' +\n 'wrap a library dedicated for that purpose inside a custom component.'\n );\n }\n\n // ensure runtime directive metadata\n return true\n}\n\nfunction genCheckboxModel (\n el,\n value,\n modifiers\n) {\n var number = modifiers && modifiers.number;\n var valueBinding = getBindingAttr(el, 'value') || 'null';\n var trueValueBinding = getBindingAttr(el, 'true-value') || 'true';\n var falseValueBinding = getBindingAttr(el, 'false-value') || 'false';\n addProp(el, 'checked',\n \"Array.isArray(\" + value + \")\" +\n \"?_i(\" + value + \",\" + valueBinding + \")>-1\" + (\n trueValueBinding === 'true'\n ? (\":(\" + value + \")\")\n : (\":_q(\" + value + \",\" + trueValueBinding + \")\")\n )\n );\n addHandler(el, 'change',\n \"var $$a=\" + value + \",\" +\n '$$el=$event.target,' +\n \"$$c=$$el.checked?(\" + trueValueBinding + \"):(\" + falseValueBinding + \");\" +\n 'if(Array.isArray($$a)){' +\n \"var $$v=\" + (number ? '_n(' + valueBinding + ')' : valueBinding) + \",\" +\n '$$i=_i($$a,$$v);' +\n \"if($$el.checked){$$i<0&&(\" + value + \"=$$a.concat([$$v]))}\" +\n \"else{$$i>-1&&(\" + value + \"=$$a.slice(0,$$i).concat($$a.slice($$i+1)))}\" +\n \"}else{\" + (genAssignmentCode(value, '$$c')) + \"}\",\n null, true\n );\n}\n\nfunction genRadioModel (\n el,\n value,\n modifiers\n) {\n var number = modifiers && modifiers.number;\n var valueBinding = getBindingAttr(el, 'value') || 'null';\n valueBinding = number ? (\"_n(\" + valueBinding + \")\") : valueBinding;\n addProp(el, 'checked', (\"_q(\" + value + \",\" + valueBinding + \")\"));\n addHandler(el, 'change', genAssignmentCode(value, valueBinding), null, true);\n}\n\nfunction genSelect (\n el,\n value,\n modifiers\n) {\n var number = modifiers && modifiers.number;\n var selectedVal = \"Array.prototype.filter\" +\n \".call($event.target.options,function(o){return o.selected})\" +\n \".map(function(o){var val = \\\"_value\\\" in o ? o._value : o.value;\" +\n \"return \" + (number ? '_n(val)' : 'val') + \"})\";\n\n var assignment = '$event.target.multiple ? $$selectedVal : $$selectedVal[0]';\n var code = \"var $$selectedVal = \" + selectedVal + \";\";\n code = code + \" \" + (genAssignmentCode(value, assignment));\n addHandler(el, 'change', code, null, true);\n}\n\nfunction genDefaultModel (\n el,\n value,\n modifiers\n) {\n var type = el.attrsMap.type;\n var ref = modifiers || {};\n var lazy = ref.lazy;\n var number = ref.number;\n var trim = ref.trim;\n var needCompositionGuard = !lazy && type !== 'range';\n var event = lazy\n ? 'change'\n : type === 'range'\n ? RANGE_TOKEN\n : 'input';\n\n var valueExpression = '$event.target.value';\n if (trim) {\n valueExpression = \"$event.target.value.trim()\";\n }\n if (number) {\n valueExpression = \"_n(\" + valueExpression + \")\";\n }\n\n var code = genAssignmentCode(value, valueExpression);\n if (needCompositionGuard) {\n code = \"if($event.target.composing)return;\" + code;\n }\n\n addProp(el, 'value', (\"(\" + value + \")\"));\n addHandler(el, event, code, null, true);\n if (trim || number) {\n addHandler(el, 'blur', '$forceUpdate()');\n }\n}\n\n/* */\n\n// normalize v-model event tokens that can only be determined at runtime.\n// it's important to place the event as the first in the array because\n// the whole point is ensuring the v-model callback gets called before\n// user-attached handlers.\nfunction normalizeEvents (on) {\n /* istanbul ignore if */\n if (isDef(on[RANGE_TOKEN])) {\n // IE input[type=range] only supports `change` event\n var event = isIE ? 'change' : 'input';\n on[event] = [].concat(on[RANGE_TOKEN], on[event] || []);\n delete on[RANGE_TOKEN];\n }\n // This was originally intended to fix #4521 but no longer necessary\n // after 2.5. Keeping it for backwards compat with generated code from < 2.4\n /* istanbul ignore if */\n if (isDef(on[CHECKBOX_RADIO_TOKEN])) {\n on.change = [].concat(on[CHECKBOX_RADIO_TOKEN], on.change || []);\n delete on[CHECKBOX_RADIO_TOKEN];\n }\n}\n\nvar target$1;\n\nfunction createOnceHandler (handler, event, capture) {\n var _target = target$1; // save current target element in closure\n return function onceHandler () {\n var res = handler.apply(null, arguments);\n if (res !== null) {\n remove$2(event, onceHandler, capture, _target);\n }\n }\n}\n\nfunction add$1 (\n event,\n handler,\n once$$1,\n capture,\n passive\n) {\n handler = withMacroTask(handler);\n if (once$$1) { handler = createOnceHandler(handler, event, capture); }\n target$1.addEventListener(\n event,\n handler,\n supportsPassive\n ? { capture: capture, passive: passive }\n : capture\n );\n}\n\nfunction remove$2 (\n event,\n handler,\n capture,\n _target\n) {\n (_target || target$1).removeEventListener(\n event,\n handler._withTask || handler,\n capture\n );\n}\n\nfunction updateDOMListeners (oldVnode, vnode) {\n if (isUndef(oldVnode.data.on) && isUndef(vnode.data.on)) {\n return\n }\n var on = vnode.data.on || {};\n var oldOn = oldVnode.data.on || {};\n target$1 = vnode.elm;\n normalizeEvents(on);\n updateListeners(on, oldOn, add$1, remove$2, vnode.context);\n}\n\nvar events = {\n create: updateDOMListeners,\n update: updateDOMListeners\n};\n\n/* */\n\nfunction updateDOMProps (oldVnode, vnode) {\n if (isUndef(oldVnode.data.domProps) && isUndef(vnode.data.domProps)) {\n return\n }\n var key, cur;\n var elm = vnode.elm;\n var oldProps = oldVnode.data.domProps || {};\n var props = vnode.data.domProps || {};\n // clone observed objects, as the user probably wants to mutate it\n if (isDef(props.__ob__)) {\n props = vnode.data.domProps = extend({}, props);\n }\n\n for (key in oldProps) {\n if (isUndef(props[key])) {\n elm[key] = '';\n }\n }\n for (key in props) {\n cur = props[key];\n // ignore children if the node has textContent or innerHTML,\n // as these will throw away existing DOM nodes and cause removal errors\n // on subsequent patches (#3360)\n if (key === 'textContent' || key === 'innerHTML') {\n if (vnode.children) { vnode.children.length = 0; }\n if (cur === oldProps[key]) { continue }\n // #6601 work around Chrome version <= 55 bug where single textNode\n // replaced by innerHTML/textContent retains its parentNode property\n if (elm.childNodes.length === 1) {\n elm.removeChild(elm.childNodes[0]);\n }\n }\n\n if (key === 'value') {\n // store value as _value as well since\n // non-string values will be stringified\n elm._value = cur;\n // avoid resetting cursor position when value is the same\n var strCur = isUndef(cur) ? '' : String(cur);\n if (shouldUpdateValue(elm, strCur)) {\n elm.value = strCur;\n }\n } else {\n elm[key] = cur;\n }\n }\n}\n\n// check platforms/web/util/attrs.js acceptValue\n\n\nfunction shouldUpdateValue (elm, checkVal) {\n return (!elm.composing && (\n elm.tagName === 'OPTION' ||\n isDirty(elm, checkVal) ||\n isInputChanged(elm, checkVal)\n ))\n}\n\nfunction isDirty (elm, checkVal) {\n // return true when textbox (.number and .trim) loses focus and its value is\n // not equal to the updated value\n var notInFocus = true;\n // #6157\n // work around IE bug when accessing document.activeElement in an iframe\n try { notInFocus = document.activeElement !== elm; } catch (e) {}\n return notInFocus && elm.value !== checkVal\n}\n\nfunction isInputChanged (elm, newVal) {\n var value = elm.value;\n var modifiers = elm._vModifiers; // injected by v-model runtime\n if (isDef(modifiers) && modifiers.number) {\n return toNumber(value) !== toNumber(newVal)\n }\n if (isDef(modifiers) && modifiers.trim) {\n return value.trim() !== newVal.trim()\n }\n return value !== newVal\n}\n\nvar domProps = {\n create: updateDOMProps,\n update: updateDOMProps\n};\n\n/* */\n\nvar parseStyleText = cached(function (cssText) {\n var res = {};\n var listDelimiter = /;(?![^(]*\\))/g;\n var propertyDelimiter = /:(.+)/;\n cssText.split(listDelimiter).forEach(function (item) {\n if (item) {\n var tmp = item.split(propertyDelimiter);\n tmp.length > 1 && (res[tmp[0].trim()] = tmp[1].trim());\n }\n });\n return res\n});\n\n// merge static and dynamic style data on the same vnode\nfunction normalizeStyleData (data) {\n var style = normalizeStyleBinding(data.style);\n // static style is pre-processed into an object during compilation\n // and is always a fresh object, so it's safe to merge into it\n return data.staticStyle\n ? extend(data.staticStyle, style)\n : style\n}\n\n// normalize possible array / string values into Object\nfunction normalizeStyleBinding (bindingStyle) {\n if (Array.isArray(bindingStyle)) {\n return toObject(bindingStyle)\n }\n if (typeof bindingStyle === 'string') {\n return parseStyleText(bindingStyle)\n }\n return bindingStyle\n}\n\n/**\n * parent component style should be after child's\n * so that parent component's style could override it\n */\nfunction getStyle (vnode, checkChild) {\n var res = {};\n var styleData;\n\n if (checkChild) {\n var childNode = vnode;\n while (childNode.componentInstance) {\n childNode = childNode.componentInstance._vnode;\n if (childNode.data && (styleData = normalizeStyleData(childNode.data))) {\n extend(res, styleData);\n }\n }\n }\n\n if ((styleData = normalizeStyleData(vnode.data))) {\n extend(res, styleData);\n }\n\n var parentNode = vnode;\n while ((parentNode = parentNode.parent)) {\n if (parentNode.data && (styleData = normalizeStyleData(parentNode.data))) {\n extend(res, styleData);\n }\n }\n return res\n}\n\n/* */\n\nvar cssVarRE = /^--/;\nvar importantRE = /\\s*!important$/;\nvar setProp = function (el, name, val) {\n /* istanbul ignore if */\n if (cssVarRE.test(name)) {\n el.style.setProperty(name, val);\n } else if (importantRE.test(val)) {\n el.style.setProperty(name, val.replace(importantRE, ''), 'important');\n } else {\n var normalizedName = normalize(name);\n if (Array.isArray(val)) {\n // Support values array created by autoprefixer, e.g.\n // {display: [\"-webkit-box\", \"-ms-flexbox\", \"flex\"]}\n // Set them one by one, and the browser will only set those it can recognize\n for (var i = 0, len = val.length; i < len; i++) {\n el.style[normalizedName] = val[i];\n }\n } else {\n el.style[normalizedName] = val;\n }\n }\n};\n\nvar vendorNames = ['Webkit', 'Moz', 'ms'];\n\nvar emptyStyle;\nvar normalize = cached(function (prop) {\n emptyStyle = emptyStyle || document.createElement('div').style;\n prop = camelize(prop);\n if (prop !== 'filter' && (prop in emptyStyle)) {\n return prop\n }\n var capName = prop.charAt(0).toUpperCase() + prop.slice(1);\n for (var i = 0; i < vendorNames.length; i++) {\n var name = vendorNames[i] + capName;\n if (name in emptyStyle) {\n return name\n }\n }\n});\n\nfunction updateStyle (oldVnode, vnode) {\n var data = vnode.data;\n var oldData = oldVnode.data;\n\n if (isUndef(data.staticStyle) && isUndef(data.style) &&\n isUndef(oldData.staticStyle) && isUndef(oldData.style)\n ) {\n return\n }\n\n var cur, name;\n var el = vnode.elm;\n var oldStaticStyle = oldData.staticStyle;\n var oldStyleBinding = oldData.normalizedStyle || oldData.style || {};\n\n // if static style exists, stylebinding already merged into it when doing normalizeStyleData\n var oldStyle = oldStaticStyle || oldStyleBinding;\n\n var style = normalizeStyleBinding(vnode.data.style) || {};\n\n // store normalized style under a different key for next diff\n // make sure to clone it if it's reactive, since the user likely wants\n // to mutate it.\n vnode.data.normalizedStyle = isDef(style.__ob__)\n ? extend({}, style)\n : style;\n\n var newStyle = getStyle(vnode, true);\n\n for (name in oldStyle) {\n if (isUndef(newStyle[name])) {\n setProp(el, name, '');\n }\n }\n for (name in newStyle) {\n cur = newStyle[name];\n if (cur !== oldStyle[name]) {\n // ie9 setting to null has no effect, must use empty string\n setProp(el, name, cur == null ? '' : cur);\n }\n }\n}\n\nvar style = {\n create: updateStyle,\n update: updateStyle\n};\n\n/* */\n\n/**\n * Add class with compatibility for SVG since classList is not supported on\n * SVG elements in IE\n */\nfunction addClass (el, cls) {\n /* istanbul ignore if */\n if (!cls || !(cls = cls.trim())) {\n return\n }\n\n /* istanbul ignore else */\n if (el.classList) {\n if (cls.indexOf(' ') > -1) {\n cls.split(/\\s+/).forEach(function (c) { return el.classList.add(c); });\n } else {\n el.classList.add(cls);\n }\n } else {\n var cur = \" \" + (el.getAttribute('class') || '') + \" \";\n if (cur.indexOf(' ' + cls + ' ') < 0) {\n el.setAttribute('class', (cur + cls).trim());\n }\n }\n}\n\n/**\n * Remove class with compatibility for SVG since classList is not supported on\n * SVG elements in IE\n */\nfunction removeClass (el, cls) {\n /* istanbul ignore if */\n if (!cls || !(cls = cls.trim())) {\n return\n }\n\n /* istanbul ignore else */\n if (el.classList) {\n if (cls.indexOf(' ') > -1) {\n cls.split(/\\s+/).forEach(function (c) { return el.classList.remove(c); });\n } else {\n el.classList.remove(cls);\n }\n if (!el.classList.length) {\n el.removeAttribute('class');\n }\n } else {\n var cur = \" \" + (el.getAttribute('class') || '') + \" \";\n var tar = ' ' + cls + ' ';\n while (cur.indexOf(tar) >= 0) {\n cur = cur.replace(tar, ' ');\n }\n cur = cur.trim();\n if (cur) {\n el.setAttribute('class', cur);\n } else {\n el.removeAttribute('class');\n }\n }\n}\n\n/* */\n\nfunction resolveTransition (def) {\n if (!def) {\n return\n }\n /* istanbul ignore else */\n if (typeof def === 'object') {\n var res = {};\n if (def.css !== false) {\n extend(res, autoCssTransition(def.name || 'v'));\n }\n extend(res, def);\n return res\n } else if (typeof def === 'string') {\n return autoCssTransition(def)\n }\n}\n\nvar autoCssTransition = cached(function (name) {\n return {\n enterClass: (name + \"-enter\"),\n enterToClass: (name + \"-enter-to\"),\n enterActiveClass: (name + \"-enter-active\"),\n leaveClass: (name + \"-leave\"),\n leaveToClass: (name + \"-leave-to\"),\n leaveActiveClass: (name + \"-leave-active\")\n }\n});\n\nvar hasTransition = inBrowser && !isIE9;\nvar TRANSITION = 'transition';\nvar ANIMATION = 'animation';\n\n// Transition property/event sniffing\nvar transitionProp = 'transition';\nvar transitionEndEvent = 'transitionend';\nvar animationProp = 'animation';\nvar animationEndEvent = 'animationend';\nif (hasTransition) {\n /* istanbul ignore if */\n if (window.ontransitionend === undefined &&\n window.onwebkittransitionend !== undefined\n ) {\n transitionProp = 'WebkitTransition';\n transitionEndEvent = 'webkitTransitionEnd';\n }\n if (window.onanimationend === undefined &&\n window.onwebkitanimationend !== undefined\n ) {\n animationProp = 'WebkitAnimation';\n animationEndEvent = 'webkitAnimationEnd';\n }\n}\n\n// binding to window is necessary to make hot reload work in IE in strict mode\nvar raf = inBrowser\n ? window.requestAnimationFrame\n ? window.requestAnimationFrame.bind(window)\n : setTimeout\n : /* istanbul ignore next */ function (fn) { return fn(); };\n\nfunction nextFrame (fn) {\n raf(function () {\n raf(fn);\n });\n}\n\nfunction addTransitionClass (el, cls) {\n var transitionClasses = el._transitionClasses || (el._transitionClasses = []);\n if (transitionClasses.indexOf(cls) < 0) {\n transitionClasses.push(cls);\n addClass(el, cls);\n }\n}\n\nfunction removeTransitionClass (el, cls) {\n if (el._transitionClasses) {\n remove(el._transitionClasses, cls);\n }\n removeClass(el, cls);\n}\n\nfunction whenTransitionEnds (\n el,\n expectedType,\n cb\n) {\n var ref = getTransitionInfo(el, expectedType);\n var type = ref.type;\n var timeout = ref.timeout;\n var propCount = ref.propCount;\n if (!type) { return cb() }\n var event = type === TRANSITION ? transitionEndEvent : animationEndEvent;\n var ended = 0;\n var end = function () {\n el.removeEventListener(event, onEnd);\n cb();\n };\n var onEnd = function (e) {\n if (e.target === el) {\n if (++ended >= propCount) {\n end();\n }\n }\n };\n setTimeout(function () {\n if (ended < propCount) {\n end();\n }\n }, timeout + 1);\n el.addEventListener(event, onEnd);\n}\n\nvar transformRE = /\\b(transform|all)(,|$)/;\n\nfunction getTransitionInfo (el, expectedType) {\n var styles = window.getComputedStyle(el);\n var transitionDelays = styles[transitionProp + 'Delay'].split(', ');\n var transitionDurations = styles[transitionProp + 'Duration'].split(', ');\n var transitionTimeout = getTimeout(transitionDelays, transitionDurations);\n var animationDelays = styles[animationProp + 'Delay'].split(', ');\n var animationDurations = styles[animationProp + 'Duration'].split(', ');\n var animationTimeout = getTimeout(animationDelays, animationDurations);\n\n var type;\n var timeout = 0;\n var propCount = 0;\n /* istanbul ignore if */\n if (expectedType === TRANSITION) {\n if (transitionTimeout > 0) {\n type = TRANSITION;\n timeout = transitionTimeout;\n propCount = transitionDurations.length;\n }\n } else if (expectedType === ANIMATION) {\n if (animationTimeout > 0) {\n type = ANIMATION;\n timeout = animationTimeout;\n propCount = animationDurations.length;\n }\n } else {\n timeout = Math.max(transitionTimeout, animationTimeout);\n type = timeout > 0\n ? transitionTimeout > animationTimeout\n ? TRANSITION\n : ANIMATION\n : null;\n propCount = type\n ? type === TRANSITION\n ? transitionDurations.length\n : animationDurations.length\n : 0;\n }\n var hasTransform =\n type === TRANSITION &&\n transformRE.test(styles[transitionProp + 'Property']);\n return {\n type: type,\n timeout: timeout,\n propCount: propCount,\n hasTransform: hasTransform\n }\n}\n\nfunction getTimeout (delays, durations) {\n /* istanbul ignore next */\n while (delays.length < durations.length) {\n delays = delays.concat(delays);\n }\n\n return Math.max.apply(null, durations.map(function (d, i) {\n return toMs(d) + toMs(delays[i])\n }))\n}\n\nfunction toMs (s) {\n return Number(s.slice(0, -1)) * 1000\n}\n\n/* */\n\nfunction enter (vnode, toggleDisplay) {\n var el = vnode.elm;\n\n // call leave callback now\n if (isDef(el._leaveCb)) {\n el._leaveCb.cancelled = true;\n el._leaveCb();\n }\n\n var data = resolveTransition(vnode.data.transition);\n if (isUndef(data)) {\n return\n }\n\n /* istanbul ignore if */\n if (isDef(el._enterCb) || el.nodeType !== 1) {\n return\n }\n\n var css = data.css;\n var type = data.type;\n var enterClass = data.enterClass;\n var enterToClass = data.enterToClass;\n var enterActiveClass = data.enterActiveClass;\n var appearClass = data.appearClass;\n var appearToClass = data.appearToClass;\n var appearActiveClass = data.appearActiveClass;\n var beforeEnter = data.beforeEnter;\n var enter = data.enter;\n var afterEnter = data.afterEnter;\n var enterCancelled = data.enterCancelled;\n var beforeAppear = data.beforeAppear;\n var appear = data.appear;\n var afterAppear = data.afterAppear;\n var appearCancelled = data.appearCancelled;\n var duration = data.duration;\n\n // activeInstance will always be the <transition> component managing this\n // transition. One edge case to check is when the <transition> is placed\n // as the root node of a child component. In that case we need to check\n // <transition>'s parent for appear check.\n var context = activeInstance;\n var transitionNode = activeInstance.$vnode;\n while (transitionNode && transitionNode.parent) {\n transitionNode = transitionNode.parent;\n context = transitionNode.context;\n }\n\n var isAppear = !context._isMounted || !vnode.isRootInsert;\n\n if (isAppear && !appear && appear !== '') {\n return\n }\n\n var startClass = isAppear && appearClass\n ? appearClass\n : enterClass;\n var activeClass = isAppear && appearActiveClass\n ? appearActiveClass\n : enterActiveClass;\n var toClass = isAppear && appearToClass\n ? appearToClass\n : enterToClass;\n\n var beforeEnterHook = isAppear\n ? (beforeAppear || beforeEnter)\n : beforeEnter;\n var enterHook = isAppear\n ? (typeof appear === 'function' ? appear : enter)\n : enter;\n var afterEnterHook = isAppear\n ? (afterAppear || afterEnter)\n : afterEnter;\n var enterCancelledHook = isAppear\n ? (appearCancelled || enterCancelled)\n : enterCancelled;\n\n var explicitEnterDuration = toNumber(\n isObject(duration)\n ? duration.enter\n : duration\n );\n\n if (process.env.NODE_ENV !== 'production' && explicitEnterDuration != null) {\n checkDuration(explicitEnterDuration, 'enter', vnode);\n }\n\n var expectsCSS = css !== false && !isIE9;\n var userWantsControl = getHookArgumentsLength(enterHook);\n\n var cb = el._enterCb = once(function () {\n if (expectsCSS) {\n removeTransitionClass(el, toClass);\n removeTransitionClass(el, activeClass);\n }\n if (cb.cancelled) {\n if (expectsCSS) {\n removeTransitionClass(el, startClass);\n }\n enterCancelledHook && enterCancelledHook(el);\n } else {\n afterEnterHook && afterEnterHook(el);\n }\n el._enterCb = null;\n });\n\n if (!vnode.data.show) {\n // remove pending leave element on enter by injecting an insert hook\n mergeVNodeHook(vnode.data.hook || (vnode.data.hook = {}), 'insert', function () {\n var parent = el.parentNode;\n var pendingNode = parent && parent._pending && parent._pending[vnode.key];\n if (pendingNode &&\n pendingNode.tag === vnode.tag &&\n pendingNode.elm._leaveCb\n ) {\n pendingNode.elm._leaveCb();\n }\n enterHook && enterHook(el, cb);\n });\n }\n\n // start enter transition\n beforeEnterHook && beforeEnterHook(el);\n if (expectsCSS) {\n addTransitionClass(el, startClass);\n addTransitionClass(el, activeClass);\n nextFrame(function () {\n addTransitionClass(el, toClass);\n removeTransitionClass(el, startClass);\n if (!cb.cancelled && !userWantsControl) {\n if (isValidDuration(explicitEnterDuration)) {\n setTimeout(cb, explicitEnterDuration);\n } else {\n whenTransitionEnds(el, type, cb);\n }\n }\n });\n }\n\n if (vnode.data.show) {\n toggleDisplay && toggleDisplay();\n enterHook && enterHook(el, cb);\n }\n\n if (!expectsCSS && !userWantsControl) {\n cb();\n }\n}\n\nfunction leave (vnode, rm) {\n var el = vnode.elm;\n\n // call enter callback now\n if (isDef(el._enterCb)) {\n el._enterCb.cancelled = true;\n el._enterCb();\n }\n\n var data = resolveTransition(vnode.data.transition);\n if (isUndef(data)) {\n return rm()\n }\n\n /* istanbul ignore if */\n if (isDef(el._leaveCb) || el.nodeType !== 1) {\n return\n }\n\n var css = data.css;\n var type = data.type;\n var leaveClass = data.leaveClass;\n var leaveToClass = data.leaveToClass;\n var leaveActiveClass = data.leaveActiveClass;\n var beforeLeave = data.beforeLeave;\n var leave = data.leave;\n var afterLeave = data.afterLeave;\n var leaveCancelled = data.leaveCancelled;\n var delayLeave = data.delayLeave;\n var duration = data.duration;\n\n var expectsCSS = css !== false && !isIE9;\n var userWantsControl = getHookArgumentsLength(leave);\n\n var explicitLeaveDuration = toNumber(\n isObject(duration)\n ? duration.leave\n : duration\n );\n\n if (process.env.NODE_ENV !== 'production' && isDef(explicitLeaveDuration)) {\n checkDuration(explicitLeaveDuration, 'leave', vnode);\n }\n\n var cb = el._leaveCb = once(function () {\n if (el.parentNode && el.parentNode._pending) {\n el.parentNode._pending[vnode.key] = null;\n }\n if (expectsCSS) {\n removeTransitionClass(el, leaveToClass);\n removeTransitionClass(el, leaveActiveClass);\n }\n if (cb.cancelled) {\n if (expectsCSS) {\n removeTransitionClass(el, leaveClass);\n }\n leaveCancelled && leaveCancelled(el);\n } else {\n rm();\n afterLeave && afterLeave(el);\n }\n el._leaveCb = null;\n });\n\n if (delayLeave) {\n delayLeave(performLeave);\n } else {\n performLeave();\n }\n\n function performLeave () {\n // the delayed leave may have already been cancelled\n if (cb.cancelled) {\n return\n }\n // record leaving element\n if (!vnode.data.show) {\n (el.parentNode._pending || (el.parentNode._pending = {}))[(vnode.key)] = vnode;\n }\n beforeLeave && beforeLeave(el);\n if (expectsCSS) {\n addTransitionClass(el, leaveClass);\n addTransitionClass(el, leaveActiveClass);\n nextFrame(function () {\n addTransitionClass(el, leaveToClass);\n removeTransitionClass(el, leaveClass);\n if (!cb.cancelled && !userWantsControl) {\n if (isValidDuration(explicitLeaveDuration)) {\n setTimeout(cb, explicitLeaveDuration);\n } else {\n whenTransitionEnds(el, type, cb);\n }\n }\n });\n }\n leave && leave(el, cb);\n if (!expectsCSS && !userWantsControl) {\n cb();\n }\n }\n}\n\n// only used in dev mode\nfunction checkDuration (val, name, vnode) {\n if (typeof val !== 'number') {\n warn(\n \"<transition> explicit \" + name + \" duration is not a valid number - \" +\n \"got \" + (JSON.stringify(val)) + \".\",\n vnode.context\n );\n } else if (isNaN(val)) {\n warn(\n \"<transition> explicit \" + name + \" duration is NaN - \" +\n 'the duration expression might be incorrect.',\n vnode.context\n );\n }\n}\n\nfunction isValidDuration (val) {\n return typeof val === 'number' && !isNaN(val)\n}\n\n/**\n * Normalize a transition hook's argument length. The hook may be:\n * - a merged hook (invoker) with the original in .fns\n * - a wrapped component method (check ._length)\n * - a plain function (.length)\n */\nfunction getHookArgumentsLength (fn) {\n if (isUndef(fn)) {\n return false\n }\n var invokerFns = fn.fns;\n if (isDef(invokerFns)) {\n // invoker\n return getHookArgumentsLength(\n Array.isArray(invokerFns)\n ? invokerFns[0]\n : invokerFns\n )\n } else {\n return (fn._length || fn.length) > 1\n }\n}\n\nfunction _enter (_, vnode) {\n if (vnode.data.show !== true) {\n enter(vnode);\n }\n}\n\nvar transition = inBrowser ? {\n create: _enter,\n activate: _enter,\n remove: function remove$$1 (vnode, rm) {\n /* istanbul ignore else */\n if (vnode.data.show !== true) {\n leave(vnode, rm);\n } else {\n rm();\n }\n }\n} : {};\n\nvar platformModules = [\n attrs,\n klass,\n events,\n domProps,\n style,\n transition\n];\n\n/* */\n\n// the directive module should be applied last, after all\n// built-in modules have been applied.\nvar modules = platformModules.concat(baseModules);\n\nvar patch = createPatchFunction({ nodeOps: nodeOps, modules: modules });\n\n/**\n * Not type checking this file because flow doesn't like attaching\n * properties to Elements.\n */\n\n/* istanbul ignore if */\nif (isIE9) {\n // http://www.matts411.com/post/internet-explorer-9-oninput/\n document.addEventListener('selectionchange', function () {\n var el = document.activeElement;\n if (el && el.vmodel) {\n trigger(el, 'input');\n }\n });\n}\n\nvar model$1 = {\n inserted: function inserted (el, binding, vnode) {\n if (vnode.tag === 'select') {\n setSelected(el, binding, vnode.context);\n el._vOptions = [].map.call(el.options, getValue);\n } else if (vnode.tag === 'textarea' || isTextInputType(el.type)) {\n el._vModifiers = binding.modifiers;\n if (!binding.modifiers.lazy) {\n // Safari < 10.2 & UIWebView doesn't fire compositionend when\n // switching focus before confirming composition choice\n // this also fixes the issue where some browsers e.g. iOS Chrome\n // fires \"change\" instead of \"input\" on autocomplete.\n el.addEventListener('change', onCompositionEnd);\n if (!isAndroid) {\n el.addEventListener('compositionstart', onCompositionStart);\n el.addEventListener('compositionend', onCompositionEnd);\n }\n /* istanbul ignore if */\n if (isIE9) {\n el.vmodel = true;\n }\n }\n }\n },\n componentUpdated: function componentUpdated (el, binding, vnode) {\n if (vnode.tag === 'select') {\n setSelected(el, binding, vnode.context);\n // in case the options rendered by v-for have changed,\n // it's possible that the value is out-of-sync with the rendered options.\n // detect such cases and filter out values that no longer has a matching\n // option in the DOM.\n var prevOptions = el._vOptions;\n var curOptions = el._vOptions = [].map.call(el.options, getValue);\n if (curOptions.some(function (o, i) { return !looseEqual(o, prevOptions[i]); })) {\n // trigger change event if\n // no matching option found for at least one value\n var needReset = el.multiple\n ? binding.value.some(function (v) { return hasNoMatchingOption(v, curOptions); })\n : binding.value !== binding.oldValue && hasNoMatchingOption(binding.value, curOptions);\n if (needReset) {\n trigger(el, 'change');\n }\n }\n }\n }\n};\n\nfunction setSelected (el, binding, vm) {\n actuallySetSelected(el, binding, vm);\n /* istanbul ignore if */\n if (isIE || isEdge) {\n setTimeout(function () {\n actuallySetSelected(el, binding, vm);\n }, 0);\n }\n}\n\nfunction actuallySetSelected (el, binding, vm) {\n var value = binding.value;\n var isMultiple = el.multiple;\n if (isMultiple && !Array.isArray(value)) {\n process.env.NODE_ENV !== 'production' && warn(\n \"<select multiple v-model=\\\"\" + (binding.expression) + \"\\\"> \" +\n \"expects an Array value for its binding, but got \" + (Object.prototype.toString.call(value).slice(8, -1)),\n vm\n );\n return\n }\n var selected, option;\n for (var i = 0, l = el.options.length; i < l; i++) {\n option = el.options[i];\n if (isMultiple) {\n selected = looseIndexOf(value, getValue(option)) > -1;\n if (option.selected !== selected) {\n option.selected = selected;\n }\n } else {\n if (looseEqual(getValue(option), value)) {\n if (el.selectedIndex !== i) {\n el.selectedIndex = i;\n }\n return\n }\n }\n }\n if (!isMultiple) {\n el.selectedIndex = -1;\n }\n}\n\nfunction hasNoMatchingOption (value, options) {\n return options.every(function (o) { return !looseEqual(o, value); })\n}\n\nfunction getValue (option) {\n return '_value' in option\n ? option._value\n : option.value\n}\n\nfunction onCompositionStart (e) {\n e.target.composing = true;\n}\n\nfunction onCompositionEnd (e) {\n // prevent triggering an input event for no reason\n if (!e.target.composing) { return }\n e.target.composing = false;\n trigger(e.target, 'input');\n}\n\nfunction trigger (el, type) {\n var e = document.createEvent('HTMLEvents');\n e.initEvent(type, true, true);\n el.dispatchEvent(e);\n}\n\n/* */\n\n// recursively search for possible transition defined inside the component root\nfunction locateNode (vnode) {\n return vnode.componentInstance && (!vnode.data || !vnode.data.transition)\n ? locateNode(vnode.componentInstance._vnode)\n : vnode\n}\n\nvar show = {\n bind: function bind (el, ref, vnode) {\n var value = ref.value;\n\n vnode = locateNode(vnode);\n var transition$$1 = vnode.data && vnode.data.transition;\n var originalDisplay = el.__vOriginalDisplay =\n el.style.display === 'none' ? '' : el.style.display;\n if (value && transition$$1) {\n vnode.data.show = true;\n enter(vnode, function () {\n el.style.display = originalDisplay;\n });\n } else {\n el.style.display = value ? originalDisplay : 'none';\n }\n },\n\n update: function update (el, ref, vnode) {\n var value = ref.value;\n var oldValue = ref.oldValue;\n\n /* istanbul ignore if */\n if (value === oldValue) { return }\n vnode = locateNode(vnode);\n var transition$$1 = vnode.data && vnode.data.transition;\n if (transition$$1) {\n vnode.data.show = true;\n if (value) {\n enter(vnode, function () {\n el.style.display = el.__vOriginalDisplay;\n });\n } else {\n leave(vnode, function () {\n el.style.display = 'none';\n });\n }\n } else {\n el.style.display = value ? el.__vOriginalDisplay : 'none';\n }\n },\n\n unbind: function unbind (\n el,\n binding,\n vnode,\n oldVnode,\n isDestroy\n ) {\n if (!isDestroy) {\n el.style.display = el.__vOriginalDisplay;\n }\n }\n};\n\nvar platformDirectives = {\n model: model$1,\n show: show\n};\n\n/* */\n\n// Provides transition support for a single element/component.\n// supports transition mode (out-in / in-out)\n\nvar transitionProps = {\n name: String,\n appear: Boolean,\n css: Boolean,\n mode: String,\n type: String,\n enterClass: String,\n leaveClass: String,\n enterToClass: String,\n leaveToClass: String,\n enterActiveClass: String,\n leaveActiveClass: String,\n appearClass: String,\n appearActiveClass: String,\n appearToClass: String,\n duration: [Number, String, Object]\n};\n\n// in case the child is also an abstract component, e.g. <keep-alive>\n// we want to recursively retrieve the real component to be rendered\nfunction getRealChild (vnode) {\n var compOptions = vnode && vnode.componentOptions;\n if (compOptions && compOptions.Ctor.options.abstract) {\n return getRealChild(getFirstComponentChild(compOptions.children))\n } else {\n return vnode\n }\n}\n\nfunction extractTransitionData (comp) {\n var data = {};\n var options = comp.$options;\n // props\n for (var key in options.propsData) {\n data[key] = comp[key];\n }\n // events.\n // extract listeners and pass them directly to the transition methods\n var listeners = options._parentListeners;\n for (var key$1 in listeners) {\n data[camelize(key$1)] = listeners[key$1];\n }\n return data\n}\n\nfunction placeholder (h, rawChild) {\n if (/\\d-keep-alive$/.test(rawChild.tag)) {\n return h('keep-alive', {\n props: rawChild.componentOptions.propsData\n })\n }\n}\n\nfunction hasParentTransition (vnode) {\n while ((vnode = vnode.parent)) {\n if (vnode.data.transition) {\n return true\n }\n }\n}\n\nfunction isSameChild (child, oldChild) {\n return oldChild.key === child.key && oldChild.tag === child.tag\n}\n\nvar Transition = {\n name: 'transition',\n props: transitionProps,\n abstract: true,\n\n render: function render (h) {\n var this$1 = this;\n\n var children = this.$options._renderChildren;\n if (!children) {\n return\n }\n\n // filter out text nodes (possible whitespaces)\n children = children.filter(function (c) { return c.tag || isAsyncPlaceholder(c); });\n /* istanbul ignore if */\n if (!children.length) {\n return\n }\n\n // warn multiple elements\n if (process.env.NODE_ENV !== 'production' && children.length > 1) {\n warn(\n '<transition> can only be used on a single element. Use ' +\n '<transition-group> for lists.',\n this.$parent\n );\n }\n\n var mode = this.mode;\n\n // warn invalid mode\n if (process.env.NODE_ENV !== 'production' &&\n mode && mode !== 'in-out' && mode !== 'out-in'\n ) {\n warn(\n 'invalid <transition> mode: ' + mode,\n this.$parent\n );\n }\n\n var rawChild = children[0];\n\n // if this is a component root node and the component's\n // parent container node also has transition, skip.\n if (hasParentTransition(this.$vnode)) {\n return rawChild\n }\n\n // apply transition data to child\n // use getRealChild() to ignore abstract components e.g. keep-alive\n var child = getRealChild(rawChild);\n /* istanbul ignore if */\n if (!child) {\n return rawChild\n }\n\n if (this._leaving) {\n return placeholder(h, rawChild)\n }\n\n // ensure a key that is unique to the vnode type and to this transition\n // component instance. This key will be used to remove pending leaving nodes\n // during entering.\n var id = \"__transition-\" + (this._uid) + \"-\";\n child.key = child.key == null\n ? child.isComment\n ? id + 'comment'\n : id + child.tag\n : isPrimitive(child.key)\n ? (String(child.key).indexOf(id) === 0 ? child.key : id + child.key)\n : child.key;\n\n var data = (child.data || (child.data = {})).transition = extractTransitionData(this);\n var oldRawChild = this._vnode;\n var oldChild = getRealChild(oldRawChild);\n\n // mark v-show\n // so that the transition module can hand over the control to the directive\n if (child.data.directives && child.data.directives.some(function (d) { return d.name === 'show'; })) {\n child.data.show = true;\n }\n\n if (\n oldChild &&\n oldChild.data &&\n !isSameChild(child, oldChild) &&\n !isAsyncPlaceholder(oldChild)\n ) {\n // replace old child transition data with fresh one\n // important for dynamic transitions!\n var oldData = oldChild.data.transition = extend({}, data);\n // handle transition mode\n if (mode === 'out-in') {\n // return placeholder node and queue update when leave finishes\n this._leaving = true;\n mergeVNodeHook(oldData, 'afterLeave', function () {\n this$1._leaving = false;\n this$1.$forceUpdate();\n });\n return placeholder(h, rawChild)\n } else if (mode === 'in-out') {\n if (isAsyncPlaceholder(child)) {\n return oldRawChild\n }\n var delayedLeave;\n var performLeave = function () { delayedLeave(); };\n mergeVNodeHook(data, 'afterEnter', performLeave);\n mergeVNodeHook(data, 'enterCancelled', performLeave);\n mergeVNodeHook(oldData, 'delayLeave', function (leave) { delayedLeave = leave; });\n }\n }\n\n return rawChild\n }\n};\n\n/* */\n\n// Provides transition support for list items.\n// supports move transitions using the FLIP technique.\n\n// Because the vdom's children update algorithm is \"unstable\" - i.e.\n// it doesn't guarantee the relative positioning of removed elements,\n// we force transition-group to update its children into two passes:\n// in the first pass, we remove all nodes that need to be removed,\n// triggering their leaving transition; in the second pass, we insert/move\n// into the final desired state. This way in the second pass removed\n// nodes will remain where they should be.\n\nvar props = extend({\n tag: String,\n moveClass: String\n}, transitionProps);\n\ndelete props.mode;\n\nvar TransitionGroup = {\n props: props,\n\n render: function render (h) {\n var tag = this.tag || this.$vnode.data.tag || 'span';\n var map = Object.create(null);\n var prevChildren = this.prevChildren = this.children;\n var rawChildren = this.$slots.default || [];\n var children = this.children = [];\n var transitionData = extractTransitionData(this);\n\n for (var i = 0; i < rawChildren.length; i++) {\n var c = rawChildren[i];\n if (c.tag) {\n if (c.key != null && String(c.key).indexOf('__vlist') !== 0) {\n children.push(c);\n map[c.key] = c\n ;(c.data || (c.data = {})).transition = transitionData;\n } else if (process.env.NODE_ENV !== 'production') {\n var opts = c.componentOptions;\n var name = opts ? (opts.Ctor.options.name || opts.tag || '') : c.tag;\n warn((\"<transition-group> children must be keyed: <\" + name + \">\"));\n }\n }\n }\n\n if (prevChildren) {\n var kept = [];\n var removed = [];\n for (var i$1 = 0; i$1 < prevChildren.length; i$1++) {\n var c$1 = prevChildren[i$1];\n c$1.data.transition = transitionData;\n c$1.data.pos = c$1.elm.getBoundingClientRect();\n if (map[c$1.key]) {\n kept.push(c$1);\n } else {\n removed.push(c$1);\n }\n }\n this.kept = h(tag, null, kept);\n this.removed = removed;\n }\n\n return h(tag, null, children)\n },\n\n beforeUpdate: function beforeUpdate () {\n // force removing pass\n this.__patch__(\n this._vnode,\n this.kept,\n false, // hydrating\n true // removeOnly (!important, avoids unnecessary moves)\n );\n this._vnode = this.kept;\n },\n\n updated: function updated () {\n var children = this.prevChildren;\n var moveClass = this.moveClass || ((this.name || 'v') + '-move');\n if (!children.length || !this.hasMove(children[0].elm, moveClass)) {\n return\n }\n\n // we divide the work into three loops to avoid mixing DOM reads and writes\n // in each iteration - which helps prevent layout thrashing.\n children.forEach(callPendingCbs);\n children.forEach(recordPosition);\n children.forEach(applyTranslation);\n\n // force reflow to put everything in position\n // assign to this to avoid being removed in tree-shaking\n // $flow-disable-line\n this._reflow = document.body.offsetHeight;\n\n children.forEach(function (c) {\n if (c.data.moved) {\n var el = c.elm;\n var s = el.style;\n addTransitionClass(el, moveClass);\n s.transform = s.WebkitTransform = s.transitionDuration = '';\n el.addEventListener(transitionEndEvent, el._moveCb = function cb (e) {\n if (!e || /transform$/.test(e.propertyName)) {\n el.removeEventListener(transitionEndEvent, cb);\n el._moveCb = null;\n removeTransitionClass(el, moveClass);\n }\n });\n }\n });\n },\n\n methods: {\n hasMove: function hasMove (el, moveClass) {\n /* istanbul ignore if */\n if (!hasTransition) {\n return false\n }\n /* istanbul ignore if */\n if (this._hasMove) {\n return this._hasMove\n }\n // Detect whether an element with the move class applied has\n // CSS transitions. Since the element may be inside an entering\n // transition at this very moment, we make a clone of it and remove\n // all other transition classes applied to ensure only the move class\n // is applied.\n var clone = el.cloneNode();\n if (el._transitionClasses) {\n el._transitionClasses.forEach(function (cls) { removeClass(clone, cls); });\n }\n addClass(clone, moveClass);\n clone.style.display = 'none';\n this.$el.appendChild(clone);\n var info = getTransitionInfo(clone);\n this.$el.removeChild(clone);\n return (this._hasMove = info.hasTransform)\n }\n }\n};\n\nfunction callPendingCbs (c) {\n /* istanbul ignore if */\n if (c.elm._moveCb) {\n c.elm._moveCb();\n }\n /* istanbul ignore if */\n if (c.elm._enterCb) {\n c.elm._enterCb();\n }\n}\n\nfunction recordPosition (c) {\n c.data.newPos = c.elm.getBoundingClientRect();\n}\n\nfunction applyTranslation (c) {\n var oldPos = c.data.pos;\n var newPos = c.data.newPos;\n var dx = oldPos.left - newPos.left;\n var dy = oldPos.top - newPos.top;\n if (dx || dy) {\n c.data.moved = true;\n var s = c.elm.style;\n s.transform = s.WebkitTransform = \"translate(\" + dx + \"px,\" + dy + \"px)\";\n s.transitionDuration = '0s';\n }\n}\n\nvar platformComponents = {\n Transition: Transition,\n TransitionGroup: TransitionGroup\n};\n\n/* */\n\n// install platform specific utils\nVue$3.config.mustUseProp = mustUseProp;\nVue$3.config.isReservedTag = isReservedTag;\nVue$3.config.isReservedAttr = isReservedAttr;\nVue$3.config.getTagNamespace = getTagNamespace;\nVue$3.config.isUnknownElement = isUnknownElement;\n\n// install platform runtime directives & components\nextend(Vue$3.options.directives, platformDirectives);\nextend(Vue$3.options.components, platformComponents);\n\n// install platform patch function\nVue$3.prototype.__patch__ = inBrowser ? patch : noop;\n\n// public mount method\nVue$3.prototype.$mount = function (\n el,\n hydrating\n) {\n el = el && inBrowser ? query(el) : undefined;\n return mountComponent(this, el, hydrating)\n};\n\n// devtools global hook\n/* istanbul ignore next */\nVue$3.nextTick(function () {\n if (config.devtools) {\n if (devtools) {\n devtools.emit('init', Vue$3);\n } else if (process.env.NODE_ENV !== 'production' && isChrome) {\n console[console.info ? 'info' : 'log'](\n 'Download the Vue Devtools extension for a better development experience:\\n' +\n 'https://github.com/vuejs/vue-devtools'\n );\n }\n }\n if (process.env.NODE_ENV !== 'production' &&\n config.productionTip !== false &&\n inBrowser && typeof console !== 'undefined'\n ) {\n console[console.info ? 'info' : 'log'](\n \"You are running Vue in development mode.\\n\" +\n \"Make sure to turn on production mode when deploying for production.\\n\" +\n \"See more tips at https://vuejs.org/guide/deployment.html\"\n );\n }\n}, 0);\n\n/* */\n\n// check whether current browser encodes a char inside attribute values\nfunction shouldDecode (content, encoded) {\n var div = document.createElement('div');\n div.innerHTML = \"<div a=\\\"\" + content + \"\\\"/>\";\n return div.innerHTML.indexOf(encoded) > 0\n}\n\n// #3663\n// IE encodes newlines inside attribute values while other browsers don't\nvar shouldDecodeNewlines = inBrowser ? shouldDecode('\\n', '&#10;') : false;\n\n/* */\n\nvar defaultTagRE = /\\{\\{((?:.|\\n)+?)\\}\\}/g;\nvar regexEscapeRE = /[-.*+?^${}()|[\\]\\/\\\\]/g;\n\nvar buildRegex = cached(function (delimiters) {\n var open = delimiters[0].replace(regexEscapeRE, '\\\\$&');\n var close = delimiters[1].replace(regexEscapeRE, '\\\\$&');\n return new RegExp(open + '((?:.|\\\\n)+?)' + close, 'g')\n});\n\nfunction parseText (\n text,\n delimiters\n) {\n var tagRE = delimiters ? buildRegex(delimiters) : defaultTagRE;\n if (!tagRE.test(text)) {\n return\n }\n var tokens = [];\n var lastIndex = tagRE.lastIndex = 0;\n var match, index;\n while ((match = tagRE.exec(text))) {\n index = match.index;\n // push text token\n if (index > lastIndex) {\n tokens.push(JSON.stringify(text.slice(lastIndex, index)));\n }\n // tag token\n var exp = parseFilters(match[1].trim());\n tokens.push((\"_s(\" + exp + \")\"));\n lastIndex = index + match[0].length;\n }\n if (lastIndex < text.length) {\n tokens.push(JSON.stringify(text.slice(lastIndex)));\n }\n return tokens.join('+')\n}\n\n/* */\n\nfunction transformNode (el, options) {\n var warn = options.warn || baseWarn;\n var staticClass = getAndRemoveAttr(el, 'class');\n if (process.env.NODE_ENV !== 'production' && staticClass) {\n var expression = parseText(staticClass, options.delimiters);\n if (expression) {\n warn(\n \"class=\\\"\" + staticClass + \"\\\": \" +\n 'Interpolation inside attributes has been removed. ' +\n 'Use v-bind or the colon shorthand instead. For example, ' +\n 'instead of <div class=\"{{ val }}\">, use <div :class=\"val\">.'\n );\n }\n }\n if (staticClass) {\n el.staticClass = JSON.stringify(staticClass);\n }\n var classBinding = getBindingAttr(el, 'class', false /* getStatic */);\n if (classBinding) {\n el.classBinding = classBinding;\n }\n}\n\nfunction genData (el) {\n var data = '';\n if (el.staticClass) {\n data += \"staticClass:\" + (el.staticClass) + \",\";\n }\n if (el.classBinding) {\n data += \"class:\" + (el.classBinding) + \",\";\n }\n return data\n}\n\nvar klass$1 = {\n staticKeys: ['staticClass'],\n transformNode: transformNode,\n genData: genData\n};\n\n/* */\n\nfunction transformNode$1 (el, options) {\n var warn = options.warn || baseWarn;\n var staticStyle = getAndRemoveAttr(el, 'style');\n if (staticStyle) {\n /* istanbul ignore if */\n if (process.env.NODE_ENV !== 'production') {\n var expression = parseText(staticStyle, options.delimiters);\n if (expression) {\n warn(\n \"style=\\\"\" + staticStyle + \"\\\": \" +\n 'Interpolation inside attributes has been removed. ' +\n 'Use v-bind or the colon shorthand instead. For example, ' +\n 'instead of <div style=\"{{ val }}\">, use <div :style=\"val\">.'\n );\n }\n }\n el.staticStyle = JSON.stringify(parseStyleText(staticStyle));\n }\n\n var styleBinding = getBindingAttr(el, 'style', false /* getStatic */);\n if (styleBinding) {\n el.styleBinding = styleBinding;\n }\n}\n\nfunction genData$1 (el) {\n var data = '';\n if (el.staticStyle) {\n data += \"staticStyle:\" + (el.staticStyle) + \",\";\n }\n if (el.styleBinding) {\n data += \"style:(\" + (el.styleBinding) + \"),\";\n }\n return data\n}\n\nvar style$1 = {\n staticKeys: ['staticStyle'],\n transformNode: transformNode$1,\n genData: genData$1\n};\n\n/* */\n\nvar decoder;\n\nvar he = {\n decode: function decode (html) {\n decoder = decoder || document.createElement('div');\n decoder.innerHTML = html;\n return decoder.textContent\n }\n};\n\n/* */\n\nvar isUnaryTag = makeMap(\n 'area,base,br,col,embed,frame,hr,img,input,isindex,keygen,' +\n 'link,meta,param,source,track,wbr'\n);\n\n// Elements that you can, intentionally, leave open\n// (and which close themselves)\nvar canBeLeftOpenTag = makeMap(\n 'colgroup,dd,dt,li,options,p,td,tfoot,th,thead,tr,source'\n);\n\n// HTML5 tags https://html.spec.whatwg.org/multipage/indices.html#elements-3\n// Phrasing Content https://html.spec.whatwg.org/multipage/dom.html#phrasing-content\nvar isNonPhrasingTag = makeMap(\n 'address,article,aside,base,blockquote,body,caption,col,colgroup,dd,' +\n 'details,dialog,div,dl,dt,fieldset,figcaption,figure,footer,form,' +\n 'h1,h2,h3,h4,h5,h6,head,header,hgroup,hr,html,legend,li,menuitem,meta,' +\n 'optgroup,option,param,rp,rt,source,style,summary,tbody,td,tfoot,th,thead,' +\n 'title,tr,track'\n);\n\n/**\n * Not type-checking this file because it's mostly vendor code.\n */\n\n/*!\n * HTML Parser By John Resig (ejohn.org)\n * Modified by Juriy \"kangax\" Zaytsev\n * Original code by Erik Arvidsson, Mozilla Public License\n * http://erik.eae.net/simplehtmlparser/simplehtmlparser.js\n */\n\n// Regular Expressions for parsing tags and attributes\nvar attribute = /^\\s*([^\\s\"'<>\\/=]+)(?:\\s*(=)\\s*(?:\"([^\"]*)\"+|'([^']*)'+|([^\\s\"'=<>`]+)))?/;\n// could use https://www.w3.org/TR/1999/REC-xml-names-19990114/#NT-QName\n// but for Vue templates we can enforce a simple charset\nvar ncname = '[a-zA-Z_][\\\\w\\\\-\\\\.]*';\nvar qnameCapture = \"((?:\" + ncname + \"\\\\:)?\" + ncname + \")\";\nvar startTagOpen = new RegExp((\"^<\" + qnameCapture));\nvar startTagClose = /^\\s*(\\/?)>/;\nvar endTag = new RegExp((\"^<\\\\/\" + qnameCapture + \"[^>]*>\"));\nvar doctype = /^<!DOCTYPE [^>]+>/i;\nvar comment = /^<!--/;\nvar conditionalComment = /^<!\\[/;\n\nvar IS_REGEX_CAPTURING_BROKEN = false;\n'x'.replace(/x(.)?/g, function (m, g) {\n IS_REGEX_CAPTURING_BROKEN = g === '';\n});\n\n// Special Elements (can contain anything)\nvar isPlainTextElement = makeMap('script,style,textarea', true);\nvar reCache = {};\n\nvar decodingMap = {\n '&lt;': '<',\n '&gt;': '>',\n '&quot;': '\"',\n '&amp;': '&',\n '&#10;': '\\n'\n};\nvar encodedAttr = /&(?:lt|gt|quot|amp);/g;\nvar encodedAttrWithNewLines = /&(?:lt|gt|quot|amp|#10);/g;\n\n// #5992\nvar isIgnoreNewlineTag = makeMap('pre,textarea', true);\nvar shouldIgnoreFirstNewline = function (tag, html) { return tag && isIgnoreNewlineTag(tag) && html[0] === '\\n'; };\n\nfunction decodeAttr (value, shouldDecodeNewlines) {\n var re = shouldDecodeNewlines ? encodedAttrWithNewLines : encodedAttr;\n return value.replace(re, function (match) { return decodingMap[match]; })\n}\n\nfunction parseHTML (html, options) {\n var stack = [];\n var expectHTML = options.expectHTML;\n var isUnaryTag$$1 = options.isUnaryTag || no;\n var canBeLeftOpenTag$$1 = options.canBeLeftOpenTag || no;\n var index = 0;\n var last, lastTag;\n while (html) {\n last = html;\n // Make sure we're not in a plaintext content element like script/style\n if (!lastTag || !isPlainTextElement(lastTag)) {\n var textEnd = html.indexOf('<');\n if (textEnd === 0) {\n // Comment:\n if (comment.test(html)) {\n var commentEnd = html.indexOf('-->');\n\n if (commentEnd >= 0) {\n if (options.shouldKeepComment) {\n options.comment(html.substring(4, commentEnd));\n }\n advance(commentEnd + 3);\n continue\n }\n }\n\n // http://en.wikipedia.org/wiki/Conditional_comment#Downlevel-revealed_conditional_comment\n if (conditionalComment.test(html)) {\n var conditionalEnd = html.indexOf(']>');\n\n if (conditionalEnd >= 0) {\n advance(conditionalEnd + 2);\n continue\n }\n }\n\n // Doctype:\n var doctypeMatch = html.match(doctype);\n if (doctypeMatch) {\n advance(doctypeMatch[0].length);\n continue\n }\n\n // End tag:\n var endTagMatch = html.match(endTag);\n if (endTagMatch) {\n var curIndex = index;\n advance(endTagMatch[0].length);\n parseEndTag(endTagMatch[1], curIndex, index);\n continue\n }\n\n // Start tag:\n var startTagMatch = parseStartTag();\n if (startTagMatch) {\n handleStartTag(startTagMatch);\n if (shouldIgnoreFirstNewline(lastTag, html)) {\n advance(1);\n }\n continue\n }\n }\n\n var text = (void 0), rest = (void 0), next = (void 0);\n if (textEnd >= 0) {\n rest = html.slice(textEnd);\n while (\n !endTag.test(rest) &&\n !startTagOpen.test(rest) &&\n !comment.test(rest) &&\n !conditionalComment.test(rest)\n ) {\n // < in plain text, be forgiving and treat it as text\n next = rest.indexOf('<', 1);\n if (next < 0) { break }\n textEnd += next;\n rest = html.slice(textEnd);\n }\n text = html.substring(0, textEnd);\n advance(textEnd);\n }\n\n if (textEnd < 0) {\n text = html;\n html = '';\n }\n\n if (options.chars && text) {\n options.chars(text);\n }\n } else {\n var endTagLength = 0;\n var stackedTag = lastTag.toLowerCase();\n var reStackedTag = reCache[stackedTag] || (reCache[stackedTag] = new RegExp('([\\\\s\\\\S]*?)(</' + stackedTag + '[^>]*>)', 'i'));\n var rest$1 = html.replace(reStackedTag, function (all, text, endTag) {\n endTagLength = endTag.length;\n if (!isPlainTextElement(stackedTag) && stackedTag !== 'noscript') {\n text = text\n .replace(/<!--([\\s\\S]*?)-->/g, '$1')\n .replace(/<!\\[CDATA\\[([\\s\\S]*?)]]>/g, '$1');\n }\n if (shouldIgnoreFirstNewline(stackedTag, text)) {\n text = text.slice(1);\n }\n if (options.chars) {\n options.chars(text);\n }\n return ''\n });\n index += html.length - rest$1.length;\n html = rest$1;\n parseEndTag(stackedTag, index - endTagLength, index);\n }\n\n if (html === last) {\n options.chars && options.chars(html);\n if (process.env.NODE_ENV !== 'production' && !stack.length && options.warn) {\n options.warn((\"Mal-formatted tag at end of template: \\\"\" + html + \"\\\"\"));\n }\n break\n }\n }\n\n // Clean up any remaining tags\n parseEndTag();\n\n function advance (n) {\n index += n;\n html = html.substring(n);\n }\n\n function parseStartTag () {\n var start = html.match(startTagOpen);\n if (start) {\n var match = {\n tagName: start[1],\n attrs: [],\n start: index\n };\n advance(start[0].length);\n var end, attr;\n while (!(end = html.match(startTagClose)) && (attr = html.match(attribute))) {\n advance(attr[0].length);\n match.attrs.push(attr);\n }\n if (end) {\n match.unarySlash = end[1];\n advance(end[0].length);\n match.end = index;\n return match\n }\n }\n }\n\n function handleStartTag (match) {\n var tagName = match.tagName;\n var unarySlash = match.unarySlash;\n\n if (expectHTML) {\n if (lastTag === 'p' && isNonPhrasingTag(tagName)) {\n parseEndTag(lastTag);\n }\n if (canBeLeftOpenTag$$1(tagName) && lastTag === tagName) {\n parseEndTag(tagName);\n }\n }\n\n var unary = isUnaryTag$$1(tagName) || !!unarySlash;\n\n var l = match.attrs.length;\n var attrs = new Array(l);\n for (var i = 0; i < l; i++) {\n var args = match.attrs[i];\n // hackish work around FF bug https://bugzilla.mozilla.org/show_bug.cgi?id=369778\n if (IS_REGEX_CAPTURING_BROKEN && args[0].indexOf('\"\"') === -1) {\n if (args[3] === '') { delete args[3]; }\n if (args[4] === '') { delete args[4]; }\n if (args[5] === '') { delete args[5]; }\n }\n var value = args[3] || args[4] || args[5] || '';\n attrs[i] = {\n name: args[1],\n value: decodeAttr(\n value,\n options.shouldDecodeNewlines\n )\n };\n }\n\n if (!unary) {\n stack.push({ tag: tagName, lowerCasedTag: tagName.toLowerCase(), attrs: attrs });\n lastTag = tagName;\n }\n\n if (options.start) {\n options.start(tagName, attrs, unary, match.start, match.end);\n }\n }\n\n function parseEndTag (tagName, start, end) {\n var pos, lowerCasedTagName;\n if (start == null) { start = index; }\n if (end == null) { end = index; }\n\n if (tagName) {\n lowerCasedTagName = tagName.toLowerCase();\n }\n\n // Find the closest opened tag of the same type\n if (tagName) {\n for (pos = stack.length - 1; pos >= 0; pos--) {\n if (stack[pos].lowerCasedTag === lowerCasedTagName) {\n break\n }\n }\n } else {\n // If no tag name is provided, clean shop\n pos = 0;\n }\n\n if (pos >= 0) {\n // Close all the open elements, up the stack\n for (var i = stack.length - 1; i >= pos; i--) {\n if (process.env.NODE_ENV !== 'production' &&\n (i > pos || !tagName) &&\n options.warn\n ) {\n options.warn(\n (\"tag <\" + (stack[i].tag) + \"> has no matching end tag.\")\n );\n }\n if (options.end) {\n options.end(stack[i].tag, start, end);\n }\n }\n\n // Remove the open elements from the stack\n stack.length = pos;\n lastTag = pos && stack[pos - 1].tag;\n } else if (lowerCasedTagName === 'br') {\n if (options.start) {\n options.start(tagName, [], true, start, end);\n }\n } else if (lowerCasedTagName === 'p') {\n if (options.start) {\n options.start(tagName, [], false, start, end);\n }\n if (options.end) {\n options.end(tagName, start, end);\n }\n }\n }\n}\n\n/* */\n\nvar onRE = /^@|^v-on:/;\nvar dirRE = /^v-|^@|^:/;\nvar forAliasRE = /(.*?)\\s+(?:in|of)\\s+(.*)/;\nvar forIteratorRE = /\\((\\{[^}]*\\}|[^,]*),([^,]*)(?:,([^,]*))?\\)/;\n\nvar argRE = /:(.*)$/;\nvar bindRE = /^:|^v-bind:/;\nvar modifierRE = /\\.[^.]+/g;\n\nvar decodeHTMLCached = cached(he.decode);\n\n// configurable state\nvar warn$2;\nvar delimiters;\nvar transforms;\nvar preTransforms;\nvar postTransforms;\nvar platformIsPreTag;\nvar platformMustUseProp;\nvar platformGetTagNamespace;\n\n\n\nfunction createASTElement (\n tag,\n attrs,\n parent\n) {\n return {\n type: 1,\n tag: tag,\n attrsList: attrs,\n attrsMap: makeAttrsMap(attrs),\n parent: parent,\n children: []\n }\n}\n\n/**\n * Convert HTML string to AST.\n */\nfunction parse (\n template,\n options\n) {\n warn$2 = options.warn || baseWarn;\n\n platformIsPreTag = options.isPreTag || no;\n platformMustUseProp = options.mustUseProp || no;\n platformGetTagNamespace = options.getTagNamespace || no;\n\n transforms = pluckModuleFunction(options.modules, 'transformNode');\n preTransforms = pluckModuleFunction(options.modules, 'preTransformNode');\n postTransforms = pluckModuleFunction(options.modules, 'postTransformNode');\n\n delimiters = options.delimiters;\n\n var stack = [];\n var preserveWhitespace = options.preserveWhitespace !== false;\n var root;\n var currentParent;\n var inVPre = false;\n var inPre = false;\n var warned = false;\n\n function warnOnce (msg) {\n if (!warned) {\n warned = true;\n warn$2(msg);\n }\n }\n\n function endPre (element) {\n // check pre state\n if (element.pre) {\n inVPre = false;\n }\n if (platformIsPreTag(element.tag)) {\n inPre = false;\n }\n }\n\n parseHTML(template, {\n warn: warn$2,\n expectHTML: options.expectHTML,\n isUnaryTag: options.isUnaryTag,\n canBeLeftOpenTag: options.canBeLeftOpenTag,\n shouldDecodeNewlines: options.shouldDecodeNewlines,\n shouldKeepComment: options.comments,\n start: function start (tag, attrs, unary) {\n // check namespace.\n // inherit parent ns if there is one\n var ns = (currentParent && currentParent.ns) || platformGetTagNamespace(tag);\n\n // handle IE svg bug\n /* istanbul ignore if */\n if (isIE && ns === 'svg') {\n attrs = guardIESVGBug(attrs);\n }\n\n var element = createASTElement(tag, attrs, currentParent);\n if (ns) {\n element.ns = ns;\n }\n\n if (isForbiddenTag(element) && !isServerRendering()) {\n element.forbidden = true;\n process.env.NODE_ENV !== 'production' && warn$2(\n 'Templates should only be responsible for mapping the state to the ' +\n 'UI. Avoid placing tags with side-effects in your templates, such as ' +\n \"<\" + tag + \">\" + ', as they will not be parsed.'\n );\n }\n\n // apply pre-transforms\n for (var i = 0; i < preTransforms.length; i++) {\n element = preTransforms[i](element, options) || element;\n }\n\n if (!inVPre) {\n processPre(element);\n if (element.pre) {\n inVPre = true;\n }\n }\n if (platformIsPreTag(element.tag)) {\n inPre = true;\n }\n if (inVPre) {\n processRawAttrs(element);\n } else if (!element.processed) {\n // structural directives\n processFor(element);\n processIf(element);\n processOnce(element);\n // element-scope stuff\n processElement(element, options);\n }\n\n function checkRootConstraints (el) {\n if (process.env.NODE_ENV !== 'production') {\n if (el.tag === 'slot' || el.tag === 'template') {\n warnOnce(\n \"Cannot use <\" + (el.tag) + \"> as component root element because it may \" +\n 'contain multiple nodes.'\n );\n }\n if (el.attrsMap.hasOwnProperty('v-for')) {\n warnOnce(\n 'Cannot use v-for on stateful component root element because ' +\n 'it renders multiple elements.'\n );\n }\n }\n }\n\n // tree management\n if (!root) {\n root = element;\n checkRootConstraints(root);\n } else if (!stack.length) {\n // allow root elements with v-if, v-else-if and v-else\n if (root.if && (element.elseif || element.else)) {\n checkRootConstraints(element);\n addIfCondition(root, {\n exp: element.elseif,\n block: element\n });\n } else if (process.env.NODE_ENV !== 'production') {\n warnOnce(\n \"Component template should contain exactly one root element. \" +\n \"If you are using v-if on multiple elements, \" +\n \"use v-else-if to chain them instead.\"\n );\n }\n }\n if (currentParent && !element.forbidden) {\n if (element.elseif || element.else) {\n processIfConditions(element, currentParent);\n } else if (element.slotScope) { // scoped slot\n currentParent.plain = false;\n var name = element.slotTarget || '\"default\"';(currentParent.scopedSlots || (currentParent.scopedSlots = {}))[name] = element;\n } else {\n currentParent.children.push(element);\n element.parent = currentParent;\n }\n }\n if (!unary) {\n currentParent = element;\n stack.push(element);\n } else {\n endPre(element);\n }\n // apply post-transforms\n for (var i$1 = 0; i$1 < postTransforms.length; i$1++) {\n postTransforms[i$1](element, options);\n }\n },\n\n end: function end () {\n // remove trailing whitespace\n var element = stack[stack.length - 1];\n var lastNode = element.children[element.children.length - 1];\n if (lastNode && lastNode.type === 3 && lastNode.text === ' ' && !inPre) {\n element.children.pop();\n }\n // pop stack\n stack.length -= 1;\n currentParent = stack[stack.length - 1];\n endPre(element);\n },\n\n chars: function chars (text) {\n if (!currentParent) {\n if (process.env.NODE_ENV !== 'production') {\n if (text === template) {\n warnOnce(\n 'Component template requires a root element, rather than just text.'\n );\n } else if ((text = text.trim())) {\n warnOnce(\n (\"text \\\"\" + text + \"\\\" outside root element will be ignored.\")\n );\n }\n }\n return\n }\n // IE textarea placeholder bug\n /* istanbul ignore if */\n if (isIE &&\n currentParent.tag === 'textarea' &&\n currentParent.attrsMap.placeholder === text\n ) {\n return\n }\n var children = currentParent.children;\n text = inPre || text.trim()\n ? isTextTag(currentParent) ? text : decodeHTMLCached(text)\n // only preserve whitespace if its not right after a starting tag\n : preserveWhitespace && children.length ? ' ' : '';\n if (text) {\n var expression;\n if (!inVPre && text !== ' ' && (expression = parseText(text, delimiters))) {\n children.push({\n type: 2,\n expression: expression,\n text: text\n });\n } else if (text !== ' ' || !children.length || children[children.length - 1].text !== ' ') {\n children.push({\n type: 3,\n text: text\n });\n }\n }\n },\n comment: function comment (text) {\n currentParent.children.push({\n type: 3,\n text: text,\n isComment: true\n });\n }\n });\n return root\n}\n\nfunction processPre (el) {\n if (getAndRemoveAttr(el, 'v-pre') != null) {\n el.pre = true;\n }\n}\n\nfunction processRawAttrs (el) {\n var l = el.attrsList.length;\n if (l) {\n var attrs = el.attrs = new Array(l);\n for (var i = 0; i < l; i++) {\n attrs[i] = {\n name: el.attrsList[i].name,\n value: JSON.stringify(el.attrsList[i].value)\n };\n }\n } else if (!el.pre) {\n // non root node in pre blocks with no attributes\n el.plain = true;\n }\n}\n\nfunction processElement (element, options) {\n processKey(element);\n\n // determine whether this is a plain element after\n // removing structural attributes\n element.plain = !element.key && !element.attrsList.length;\n\n processRef(element);\n processSlot(element);\n processComponent(element);\n for (var i = 0; i < transforms.length; i++) {\n element = transforms[i](element, options) || element;\n }\n processAttrs(element);\n}\n\nfunction processKey (el) {\n var exp = getBindingAttr(el, 'key');\n if (exp) {\n if (process.env.NODE_ENV !== 'production' && el.tag === 'template') {\n warn$2(\"<template> cannot be keyed. Place the key on real elements instead.\");\n }\n el.key = exp;\n }\n}\n\nfunction processRef (el) {\n var ref = getBindingAttr(el, 'ref');\n if (ref) {\n el.ref = ref;\n el.refInFor = checkInFor(el);\n }\n}\n\nfunction processFor (el) {\n var exp;\n if ((exp = getAndRemoveAttr(el, 'v-for'))) {\n var inMatch = exp.match(forAliasRE);\n if (!inMatch) {\n process.env.NODE_ENV !== 'production' && warn$2(\n (\"Invalid v-for expression: \" + exp)\n );\n return\n }\n el.for = inMatch[2].trim();\n var alias = inMatch[1].trim();\n var iteratorMatch = alias.match(forIteratorRE);\n if (iteratorMatch) {\n el.alias = iteratorMatch[1].trim();\n el.iterator1 = iteratorMatch[2].trim();\n if (iteratorMatch[3]) {\n el.iterator2 = iteratorMatch[3].trim();\n }\n } else {\n el.alias = alias;\n }\n }\n}\n\nfunction processIf (el) {\n var exp = getAndRemoveAttr(el, 'v-if');\n if (exp) {\n el.if = exp;\n addIfCondition(el, {\n exp: exp,\n block: el\n });\n } else {\n if (getAndRemoveAttr(el, 'v-else') != null) {\n el.else = true;\n }\n var elseif = getAndRemoveAttr(el, 'v-else-if');\n if (elseif) {\n el.elseif = elseif;\n }\n }\n}\n\nfunction processIfConditions (el, parent) {\n var prev = findPrevElement(parent.children);\n if (prev && prev.if) {\n addIfCondition(prev, {\n exp: el.elseif,\n block: el\n });\n } else if (process.env.NODE_ENV !== 'production') {\n warn$2(\n \"v-\" + (el.elseif ? ('else-if=\"' + el.elseif + '\"') : 'else') + \" \" +\n \"used on element <\" + (el.tag) + \"> without corresponding v-if.\"\n );\n }\n}\n\nfunction findPrevElement (children) {\n var i = children.length;\n while (i--) {\n if (children[i].type === 1) {\n return children[i]\n } else {\n if (process.env.NODE_ENV !== 'production' && children[i].text !== ' ') {\n warn$2(\n \"text \\\"\" + (children[i].text.trim()) + \"\\\" between v-if and v-else(-if) \" +\n \"will be ignored.\"\n );\n }\n children.pop();\n }\n }\n}\n\nfunction addIfCondition (el, condition) {\n if (!el.ifConditions) {\n el.ifConditions = [];\n }\n el.ifConditions.push(condition);\n}\n\nfunction processOnce (el) {\n var once$$1 = getAndRemoveAttr(el, 'v-once');\n if (once$$1 != null) {\n el.once = true;\n }\n}\n\nfunction processSlot (el) {\n if (el.tag === 'slot') {\n el.slotName = getBindingAttr(el, 'name');\n if (process.env.NODE_ENV !== 'production' && el.key) {\n warn$2(\n \"`key` does not work on <slot> because slots are abstract outlets \" +\n \"and can possibly expand into multiple elements. \" +\n \"Use the key on a wrapping element instead.\"\n );\n }\n } else {\n var slotScope;\n if (el.tag === 'template') {\n slotScope = getAndRemoveAttr(el, 'scope');\n /* istanbul ignore if */\n if (process.env.NODE_ENV !== 'production' && slotScope) {\n warn$2(\n \"the \\\"scope\\\" attribute for scoped slots have been deprecated and \" +\n \"replaced by \\\"slot-scope\\\" since 2.5. The new \\\"slot-scope\\\" attribute \" +\n \"can also be used on plain elements in addition to <template> to \" +\n \"denote scoped slots.\",\n true\n );\n }\n el.slotScope = slotScope || getAndRemoveAttr(el, 'slot-scope');\n } else if ((slotScope = getAndRemoveAttr(el, 'slot-scope'))) {\n el.slotScope = slotScope;\n }\n var slotTarget = getBindingAttr(el, 'slot');\n if (slotTarget) {\n el.slotTarget = slotTarget === '\"\"' ? '\"default\"' : slotTarget;\n // preserve slot as an attribute for native shadow DOM compat\n // only for non-scoped slots.\n if (!el.slotScope) {\n addAttr(el, 'slot', slotTarget);\n }\n }\n }\n}\n\nfunction processComponent (el) {\n var binding;\n if ((binding = getBindingAttr(el, 'is'))) {\n el.component = binding;\n }\n if (getAndRemoveAttr(el, 'inline-template') != null) {\n el.inlineTemplate = true;\n }\n}\n\nfunction processAttrs (el) {\n var list = el.attrsList;\n var i, l, name, rawName, value, modifiers, isProp;\n for (i = 0, l = list.length; i < l; i++) {\n name = rawName = list[i].name;\n value = list[i].value;\n if (dirRE.test(name)) {\n // mark element as dynamic\n el.hasBindings = true;\n // modifiers\n modifiers = parseModifiers(name);\n if (modifiers) {\n name = name.replace(modifierRE, '');\n }\n if (bindRE.test(name)) { // v-bind\n name = name.replace(bindRE, '');\n value = parseFilters(value);\n isProp = false;\n if (modifiers) {\n if (modifiers.prop) {\n isProp = true;\n name = camelize(name);\n if (name === 'innerHtml') { name = 'innerHTML'; }\n }\n if (modifiers.camel) {\n name = camelize(name);\n }\n if (modifiers.sync) {\n addHandler(\n el,\n (\"update:\" + (camelize(name))),\n genAssignmentCode(value, \"$event\")\n );\n }\n }\n if (isProp || (\n !el.component && platformMustUseProp(el.tag, el.attrsMap.type, name)\n )) {\n addProp(el, name, value);\n } else {\n addAttr(el, name, value);\n }\n } else if (onRE.test(name)) { // v-on\n name = name.replace(onRE, '');\n addHandler(el, name, value, modifiers, false, warn$2);\n } else { // normal directives\n name = name.replace(dirRE, '');\n // parse arg\n var argMatch = name.match(argRE);\n var arg = argMatch && argMatch[1];\n if (arg) {\n name = name.slice(0, -(arg.length + 1));\n }\n addDirective(el, name, rawName, value, arg, modifiers);\n if (process.env.NODE_ENV !== 'production' && name === 'model') {\n checkForAliasModel(el, value);\n }\n }\n } else {\n // literal attribute\n if (process.env.NODE_ENV !== 'production') {\n var expression = parseText(value, delimiters);\n if (expression) {\n warn$2(\n name + \"=\\\"\" + value + \"\\\": \" +\n 'Interpolation inside attributes has been removed. ' +\n 'Use v-bind or the colon shorthand instead. For example, ' +\n 'instead of <div id=\"{{ val }}\">, use <div :id=\"val\">.'\n );\n }\n }\n addAttr(el, name, JSON.stringify(value));\n }\n }\n}\n\nfunction checkInFor (el) {\n var parent = el;\n while (parent) {\n if (parent.for !== undefined) {\n return true\n }\n parent = parent.parent;\n }\n return false\n}\n\nfunction parseModifiers (name) {\n var match = name.match(modifierRE);\n if (match) {\n var ret = {};\n match.forEach(function (m) { ret[m.slice(1)] = true; });\n return ret\n }\n}\n\nfunction makeAttrsMap (attrs) {\n var map = {};\n for (var i = 0, l = attrs.length; i < l; i++) {\n if (\n process.env.NODE_ENV !== 'production' &&\n map[attrs[i].name] && !isIE && !isEdge\n ) {\n warn$2('duplicate attribute: ' + attrs[i].name);\n }\n map[attrs[i].name] = attrs[i].value;\n }\n return map\n}\n\n// for script (e.g. type=\"x/template\") or style, do not decode content\nfunction isTextTag (el) {\n return el.tag === 'script' || el.tag === 'style'\n}\n\nfunction isForbiddenTag (el) {\n return (\n el.tag === 'style' ||\n (el.tag === 'script' && (\n !el.attrsMap.type ||\n el.attrsMap.type === 'text/javascript'\n ))\n )\n}\n\nvar ieNSBug = /^xmlns:NS\\d+/;\nvar ieNSPrefix = /^NS\\d+:/;\n\n/* istanbul ignore next */\nfunction guardIESVGBug (attrs) {\n var res = [];\n for (var i = 0; i < attrs.length; i++) {\n var attr = attrs[i];\n if (!ieNSBug.test(attr.name)) {\n attr.name = attr.name.replace(ieNSPrefix, '');\n res.push(attr);\n }\n }\n return res\n}\n\nfunction checkForAliasModel (el, value) {\n var _el = el;\n while (_el) {\n if (_el.for && _el.alias === value) {\n warn$2(\n \"<\" + (el.tag) + \" v-model=\\\"\" + value + \"\\\">: \" +\n \"You are binding v-model directly to a v-for iteration alias. \" +\n \"This will not be able to modify the v-for source array because \" +\n \"writing to the alias is like modifying a function local variable. \" +\n \"Consider using an array of objects and use v-model on an object property instead.\"\n );\n }\n _el = _el.parent;\n }\n}\n\n/* */\n\n/**\n * Expand input[v-model] with dyanmic type bindings into v-if-else chains\n * Turn this:\n * <input v-model=\"data[type]\" :type=\"type\">\n * into this:\n * <input v-if=\"type === 'checkbox'\" type=\"checkbox\" v-model=\"data[type]\">\n * <input v-else-if=\"type === 'radio'\" type=\"radio\" v-model=\"data[type]\">\n * <input v-else :type=\"type\" v-model=\"data[type]\">\n */\n\nfunction preTransformNode (el, options) {\n if (el.tag === 'input') {\n var map = el.attrsMap;\n if (map['v-model'] && (map['v-bind:type'] || map[':type'])) {\n var typeBinding = getBindingAttr(el, 'type');\n var ifCondition = getAndRemoveAttr(el, 'v-if', true);\n var ifConditionExtra = ifCondition ? (\"&&(\" + ifCondition + \")\") : \"\";\n // 1. checkbox\n var branch0 = cloneASTElement(el);\n // process for on the main node\n processFor(branch0);\n addRawAttr(branch0, 'type', 'checkbox');\n processElement(branch0, options);\n branch0.processed = true; // prevent it from double-processed\n branch0.if = \"(\" + typeBinding + \")==='checkbox'\" + ifConditionExtra;\n addIfCondition(branch0, {\n exp: branch0.if,\n block: branch0\n });\n // 2. add radio else-if condition\n var branch1 = cloneASTElement(el);\n getAndRemoveAttr(branch1, 'v-for', true);\n addRawAttr(branch1, 'type', 'radio');\n processElement(branch1, options);\n addIfCondition(branch0, {\n exp: \"(\" + typeBinding + \")==='radio'\" + ifConditionExtra,\n block: branch1\n });\n // 3. other\n var branch2 = cloneASTElement(el);\n getAndRemoveAttr(branch2, 'v-for', true);\n addRawAttr(branch2, ':type', typeBinding);\n processElement(branch2, options);\n addIfCondition(branch0, {\n exp: ifCondition,\n block: branch2\n });\n return branch0\n }\n }\n}\n\nfunction cloneASTElement (el) {\n return createASTElement(el.tag, el.attrsList.slice(), el.parent)\n}\n\nfunction addRawAttr (el, name, value) {\n el.attrsMap[name] = value;\n el.attrsList.push({ name: name, value: value });\n}\n\nvar model$2 = {\n preTransformNode: preTransformNode\n};\n\nvar modules$1 = [\n klass$1,\n style$1,\n model$2\n];\n\n/* */\n\nfunction text (el, dir) {\n if (dir.value) {\n addProp(el, 'textContent', (\"_s(\" + (dir.value) + \")\"));\n }\n}\n\n/* */\n\nfunction html (el, dir) {\n if (dir.value) {\n addProp(el, 'innerHTML', (\"_s(\" + (dir.value) + \")\"));\n }\n}\n\nvar directives$1 = {\n model: model,\n text: text,\n html: html\n};\n\n/* */\n\nvar baseOptions = {\n expectHTML: true,\n modules: modules$1,\n directives: directives$1,\n isPreTag: isPreTag,\n isUnaryTag: isUnaryTag,\n mustUseProp: mustUseProp,\n canBeLeftOpenTag: canBeLeftOpenTag,\n isReservedTag: isReservedTag,\n getTagNamespace: getTagNamespace,\n staticKeys: genStaticKeys(modules$1)\n};\n\n/* */\n\nvar isStaticKey;\nvar isPlatformReservedTag;\n\nvar genStaticKeysCached = cached(genStaticKeys$1);\n\n/**\n * Goal of the optimizer: walk the generated template AST tree\n * and detect sub-trees that are purely static, i.e. parts of\n * the DOM that never needs to change.\n *\n * Once we detect these sub-trees, we can:\n *\n * 1. Hoist them into constants, so that we no longer need to\n * create fresh nodes for them on each re-render;\n * 2. Completely skip them in the patching process.\n */\nfunction optimize (root, options) {\n if (!root) { return }\n isStaticKey = genStaticKeysCached(options.staticKeys || '');\n isPlatformReservedTag = options.isReservedTag || no;\n // first pass: mark all non-static nodes.\n markStatic$1(root);\n // second pass: mark static roots.\n markStaticRoots(root, false);\n}\n\nfunction genStaticKeys$1 (keys) {\n return makeMap(\n 'type,tag,attrsList,attrsMap,plain,parent,children,attrs' +\n (keys ? ',' + keys : '')\n )\n}\n\nfunction markStatic$1 (node) {\n node.static = isStatic(node);\n if (node.type === 1) {\n // do not make component slot content static. this avoids\n // 1. components not able to mutate slot nodes\n // 2. static slot content fails for hot-reloading\n if (\n !isPlatformReservedTag(node.tag) &&\n node.tag !== 'slot' &&\n node.attrsMap['inline-template'] == null\n ) {\n return\n }\n for (var i = 0, l = node.children.length; i < l; i++) {\n var child = node.children[i];\n markStatic$1(child);\n if (!child.static) {\n node.static = false;\n }\n }\n if (node.ifConditions) {\n for (var i$1 = 1, l$1 = node.ifConditions.length; i$1 < l$1; i$1++) {\n var block = node.ifConditions[i$1].block;\n markStatic$1(block);\n if (!block.static) {\n node.static = false;\n }\n }\n }\n }\n}\n\nfunction markStaticRoots (node, isInFor) {\n if (node.type === 1) {\n if (node.static || node.once) {\n node.staticInFor = isInFor;\n }\n // For a node to qualify as a static root, it should have children that\n // are not just static text. Otherwise the cost of hoisting out will\n // outweigh the benefits and it's better off to just always render it fresh.\n if (node.static && node.children.length && !(\n node.children.length === 1 &&\n node.children[0].type === 3\n )) {\n node.staticRoot = true;\n return\n } else {\n node.staticRoot = false;\n }\n if (node.children) {\n for (var i = 0, l = node.children.length; i < l; i++) {\n markStaticRoots(node.children[i], isInFor || !!node.for);\n }\n }\n if (node.ifConditions) {\n for (var i$1 = 1, l$1 = node.ifConditions.length; i$1 < l$1; i$1++) {\n markStaticRoots(node.ifConditions[i$1].block, isInFor);\n }\n }\n }\n}\n\nfunction isStatic (node) {\n if (node.type === 2) { // expression\n return false\n }\n if (node.type === 3) { // text\n return true\n }\n return !!(node.pre || (\n !node.hasBindings && // no dynamic bindings\n !node.if && !node.for && // not v-if or v-for or v-else\n !isBuiltInTag(node.tag) && // not a built-in\n isPlatformReservedTag(node.tag) && // not a component\n !isDirectChildOfTemplateFor(node) &&\n Object.keys(node).every(isStaticKey)\n ))\n}\n\nfunction isDirectChildOfTemplateFor (node) {\n while (node.parent) {\n node = node.parent;\n if (node.tag !== 'template') {\n return false\n }\n if (node.for) {\n return true\n }\n }\n return false\n}\n\n/* */\n\nvar fnExpRE = /^\\s*([\\w$_]+|\\([^)]*?\\))\\s*=>|^function\\s*\\(/;\nvar simplePathRE = /^\\s*[A-Za-z_$][\\w$]*(?:\\.[A-Za-z_$][\\w$]*|\\['.*?']|\\[\".*?\"]|\\[\\d+]|\\[[A-Za-z_$][\\w$]*])*\\s*$/;\n\n// keyCode aliases\nvar keyCodes = {\n esc: 27,\n tab: 9,\n enter: 13,\n space: 32,\n up: 38,\n left: 37,\n right: 39,\n down: 40,\n 'delete': [8, 46]\n};\n\n// #4868: modifiers that prevent the execution of the listener\n// need to explicitly return null so that we can determine whether to remove\n// the listener for .once\nvar genGuard = function (condition) { return (\"if(\" + condition + \")return null;\"); };\n\nvar modifierCode = {\n stop: '$event.stopPropagation();',\n prevent: '$event.preventDefault();',\n self: genGuard(\"$event.target !== $event.currentTarget\"),\n ctrl: genGuard(\"!$event.ctrlKey\"),\n shift: genGuard(\"!$event.shiftKey\"),\n alt: genGuard(\"!$event.altKey\"),\n meta: genGuard(\"!$event.metaKey\"),\n left: genGuard(\"'button' in $event && $event.button !== 0\"),\n middle: genGuard(\"'button' in $event && $event.button !== 1\"),\n right: genGuard(\"'button' in $event && $event.button !== 2\")\n};\n\nfunction genHandlers (\n events,\n isNative,\n warn\n) {\n var res = isNative ? 'nativeOn:{' : 'on:{';\n for (var name in events) {\n var handler = events[name];\n // #5330: warn click.right, since right clicks do not actually fire click events.\n if (process.env.NODE_ENV !== 'production' &&\n name === 'click' &&\n handler && handler.modifiers && handler.modifiers.right\n ) {\n warn(\n \"Use \\\"contextmenu\\\" instead of \\\"click.right\\\" since right clicks \" +\n \"do not actually fire \\\"click\\\" events.\"\n );\n }\n res += \"\\\"\" + name + \"\\\":\" + (genHandler(name, handler)) + \",\";\n }\n return res.slice(0, -1) + '}'\n}\n\nfunction genHandler (\n name,\n handler\n) {\n if (!handler) {\n return 'function(){}'\n }\n\n if (Array.isArray(handler)) {\n return (\"[\" + (handler.map(function (handler) { return genHandler(name, handler); }).join(',')) + \"]\")\n }\n\n var isMethodPath = simplePathRE.test(handler.value);\n var isFunctionExpression = fnExpRE.test(handler.value);\n\n if (!handler.modifiers) {\n return isMethodPath || isFunctionExpression\n ? handler.value\n : (\"function($event){\" + (handler.value) + \"}\") // inline statement\n } else {\n var code = '';\n var genModifierCode = '';\n var keys = [];\n for (var key in handler.modifiers) {\n if (modifierCode[key]) {\n genModifierCode += modifierCode[key];\n // left/right\n if (keyCodes[key]) {\n keys.push(key);\n }\n } else if (key === 'exact') {\n var modifiers = (handler.modifiers);\n genModifierCode += genGuard(\n ['ctrl', 'shift', 'alt', 'meta']\n .filter(function (keyModifier) { return !modifiers[keyModifier]; })\n .map(function (keyModifier) { return (\"$event.\" + keyModifier + \"Key\"); })\n .join('||')\n );\n } else {\n keys.push(key);\n }\n }\n if (keys.length) {\n code += genKeyFilter(keys);\n }\n // Make sure modifiers like prevent and stop get executed after key filtering\n if (genModifierCode) {\n code += genModifierCode;\n }\n var handlerCode = isMethodPath\n ? handler.value + '($event)'\n : isFunctionExpression\n ? (\"(\" + (handler.value) + \")($event)\")\n : handler.value;\n return (\"function($event){\" + code + handlerCode + \"}\")\n }\n}\n\nfunction genKeyFilter (keys) {\n return (\"if(!('button' in $event)&&\" + (keys.map(genFilterCode).join('&&')) + \")return null;\")\n}\n\nfunction genFilterCode (key) {\n var keyVal = parseInt(key, 10);\n if (keyVal) {\n return (\"$event.keyCode!==\" + keyVal)\n }\n var code = keyCodes[key];\n return (\n \"_k($event.keyCode,\" +\n (JSON.stringify(key)) + \",\" +\n (JSON.stringify(code)) + \",\" +\n \"$event.key)\"\n )\n}\n\n/* */\n\nfunction on (el, dir) {\n if (process.env.NODE_ENV !== 'production' && dir.modifiers) {\n warn(\"v-on without argument does not support modifiers.\");\n }\n el.wrapListeners = function (code) { return (\"_g(\" + code + \",\" + (dir.value) + \")\"); };\n}\n\n/* */\n\nfunction bind$1 (el, dir) {\n el.wrapData = function (code) {\n return (\"_b(\" + code + \",'\" + (el.tag) + \"',\" + (dir.value) + \",\" + (dir.modifiers && dir.modifiers.prop ? 'true' : 'false') + (dir.modifiers && dir.modifiers.sync ? ',true' : '') + \")\")\n };\n}\n\n/* */\n\nvar baseDirectives = {\n on: on,\n bind: bind$1,\n cloak: noop\n};\n\n/* */\n\nvar CodegenState = function CodegenState (options) {\n this.options = options;\n this.warn = options.warn || baseWarn;\n this.transforms = pluckModuleFunction(options.modules, 'transformCode');\n this.dataGenFns = pluckModuleFunction(options.modules, 'genData');\n this.directives = extend(extend({}, baseDirectives), options.directives);\n var isReservedTag = options.isReservedTag || no;\n this.maybeComponent = function (el) { return !isReservedTag(el.tag); };\n this.onceId = 0;\n this.staticRenderFns = [];\n};\n\n\n\nfunction generate (\n ast,\n options\n) {\n var state = new CodegenState(options);\n var code = ast ? genElement(ast, state) : '_c(\"div\")';\n return {\n render: (\"with(this){return \" + code + \"}\"),\n staticRenderFns: state.staticRenderFns\n }\n}\n\nfunction genElement (el, state) {\n if (el.staticRoot && !el.staticProcessed) {\n return genStatic(el, state)\n } else if (el.once && !el.onceProcessed) {\n return genOnce(el, state)\n } else if (el.for && !el.forProcessed) {\n return genFor(el, state)\n } else if (el.if && !el.ifProcessed) {\n return genIf(el, state)\n } else if (el.tag === 'template' && !el.slotTarget) {\n return genChildren(el, state) || 'void 0'\n } else if (el.tag === 'slot') {\n return genSlot(el, state)\n } else {\n // component or element\n var code;\n if (el.component) {\n code = genComponent(el.component, el, state);\n } else {\n var data = el.plain ? undefined : genData$2(el, state);\n\n var children = el.inlineTemplate ? null : genChildren(el, state, true);\n code = \"_c('\" + (el.tag) + \"'\" + (data ? (\",\" + data) : '') + (children ? (\",\" + children) : '') + \")\";\n }\n // module transforms\n for (var i = 0; i < state.transforms.length; i++) {\n code = state.transforms[i](el, code);\n }\n return code\n }\n}\n\n// hoist static sub-trees out\nfunction genStatic (el, state) {\n el.staticProcessed = true;\n state.staticRenderFns.push((\"with(this){return \" + (genElement(el, state)) + \"}\"));\n return (\"_m(\" + (state.staticRenderFns.length - 1) + (el.staticInFor ? ',true' : '') + \")\")\n}\n\n// v-once\nfunction genOnce (el, state) {\n el.onceProcessed = true;\n if (el.if && !el.ifProcessed) {\n return genIf(el, state)\n } else if (el.staticInFor) {\n var key = '';\n var parent = el.parent;\n while (parent) {\n if (parent.for) {\n key = parent.key;\n break\n }\n parent = parent.parent;\n }\n if (!key) {\n process.env.NODE_ENV !== 'production' && state.warn(\n \"v-once can only be used inside v-for that is keyed. \"\n );\n return genElement(el, state)\n }\n return (\"_o(\" + (genElement(el, state)) + \",\" + (state.onceId++) + \",\" + key + \")\")\n } else {\n return genStatic(el, state)\n }\n}\n\nfunction genIf (\n el,\n state,\n altGen,\n altEmpty\n) {\n el.ifProcessed = true; // avoid recursion\n return genIfConditions(el.ifConditions.slice(), state, altGen, altEmpty)\n}\n\nfunction genIfConditions (\n conditions,\n state,\n altGen,\n altEmpty\n) {\n if (!conditions.length) {\n return altEmpty || '_e()'\n }\n\n var condition = conditions.shift();\n if (condition.exp) {\n return (\"(\" + (condition.exp) + \")?\" + (genTernaryExp(condition.block)) + \":\" + (genIfConditions(conditions, state, altGen, altEmpty)))\n } else {\n return (\"\" + (genTernaryExp(condition.block)))\n }\n\n // v-if with v-once should generate code like (a)?_m(0):_m(1)\n function genTernaryExp (el) {\n return altGen\n ? altGen(el, state)\n : el.once\n ? genOnce(el, state)\n : genElement(el, state)\n }\n}\n\nfunction genFor (\n el,\n state,\n altGen,\n altHelper\n) {\n var exp = el.for;\n var alias = el.alias;\n var iterator1 = el.iterator1 ? (\",\" + (el.iterator1)) : '';\n var iterator2 = el.iterator2 ? (\",\" + (el.iterator2)) : '';\n\n if (process.env.NODE_ENV !== 'production' &&\n state.maybeComponent(el) &&\n el.tag !== 'slot' &&\n el.tag !== 'template' &&\n !el.key\n ) {\n state.warn(\n \"<\" + (el.tag) + \" v-for=\\\"\" + alias + \" in \" + exp + \"\\\">: component lists rendered with \" +\n \"v-for should have explicit keys. \" +\n \"See https://vuejs.org/guide/list.html#key for more info.\",\n true /* tip */\n );\n }\n\n el.forProcessed = true; // avoid recursion\n return (altHelper || '_l') + \"((\" + exp + \"),\" +\n \"function(\" + alias + iterator1 + iterator2 + \"){\" +\n \"return \" + ((altGen || genElement)(el, state)) +\n '})'\n}\n\nfunction genData$2 (el, state) {\n var data = '{';\n\n // directives first.\n // directives may mutate the el's other properties before they are generated.\n var dirs = genDirectives(el, state);\n if (dirs) { data += dirs + ','; }\n\n // key\n if (el.key) {\n data += \"key:\" + (el.key) + \",\";\n }\n // ref\n if (el.ref) {\n data += \"ref:\" + (el.ref) + \",\";\n }\n if (el.refInFor) {\n data += \"refInFor:true,\";\n }\n // pre\n if (el.pre) {\n data += \"pre:true,\";\n }\n // record original tag name for components using \"is\" attribute\n if (el.component) {\n data += \"tag:\\\"\" + (el.tag) + \"\\\",\";\n }\n // module data generation functions\n for (var i = 0; i < state.dataGenFns.length; i++) {\n data += state.dataGenFns[i](el);\n }\n // attributes\n if (el.attrs) {\n data += \"attrs:{\" + (genProps(el.attrs)) + \"},\";\n }\n // DOM props\n if (el.props) {\n data += \"domProps:{\" + (genProps(el.props)) + \"},\";\n }\n // event handlers\n if (el.events) {\n data += (genHandlers(el.events, false, state.warn)) + \",\";\n }\n if (el.nativeEvents) {\n data += (genHandlers(el.nativeEvents, true, state.warn)) + \",\";\n }\n // slot target\n // only for non-scoped slots\n if (el.slotTarget && !el.slotScope) {\n data += \"slot:\" + (el.slotTarget) + \",\";\n }\n // scoped slots\n if (el.scopedSlots) {\n data += (genScopedSlots(el.scopedSlots, state)) + \",\";\n }\n // component v-model\n if (el.model) {\n data += \"model:{value:\" + (el.model.value) + \",callback:\" + (el.model.callback) + \",expression:\" + (el.model.expression) + \"},\";\n }\n // inline-template\n if (el.inlineTemplate) {\n var inlineTemplate = genInlineTemplate(el, state);\n if (inlineTemplate) {\n data += inlineTemplate + \",\";\n }\n }\n data = data.replace(/,$/, '') + '}';\n // v-bind data wrap\n if (el.wrapData) {\n data = el.wrapData(data);\n }\n // v-on data wrap\n if (el.wrapListeners) {\n data = el.wrapListeners(data);\n }\n return data\n}\n\nfunction genDirectives (el, state) {\n var dirs = el.directives;\n if (!dirs) { return }\n var res = 'directives:[';\n var hasRuntime = false;\n var i, l, dir, needRuntime;\n for (i = 0, l = dirs.length; i < l; i++) {\n dir = dirs[i];\n needRuntime = true;\n var gen = state.directives[dir.name];\n if (gen) {\n // compile-time directive that manipulates AST.\n // returns true if it also needs a runtime counterpart.\n needRuntime = !!gen(el, dir, state.warn);\n }\n if (needRuntime) {\n hasRuntime = true;\n res += \"{name:\\\"\" + (dir.name) + \"\\\",rawName:\\\"\" + (dir.rawName) + \"\\\"\" + (dir.value ? (\",value:(\" + (dir.value) + \"),expression:\" + (JSON.stringify(dir.value))) : '') + (dir.arg ? (\",arg:\\\"\" + (dir.arg) + \"\\\"\") : '') + (dir.modifiers ? (\",modifiers:\" + (JSON.stringify(dir.modifiers))) : '') + \"},\";\n }\n }\n if (hasRuntime) {\n return res.slice(0, -1) + ']'\n }\n}\n\nfunction genInlineTemplate (el, state) {\n var ast = el.children[0];\n if (process.env.NODE_ENV !== 'production' && (\n el.children.length !== 1 || ast.type !== 1\n )) {\n state.warn('Inline-template components must have exactly one child element.');\n }\n if (ast.type === 1) {\n var inlineRenderFns = generate(ast, state.options);\n return (\"inlineTemplate:{render:function(){\" + (inlineRenderFns.render) + \"},staticRenderFns:[\" + (inlineRenderFns.staticRenderFns.map(function (code) { return (\"function(){\" + code + \"}\"); }).join(',')) + \"]}\")\n }\n}\n\nfunction genScopedSlots (\n slots,\n state\n) {\n return (\"scopedSlots:_u([\" + (Object.keys(slots).map(function (key) {\n return genScopedSlot(key, slots[key], state)\n }).join(',')) + \"])\")\n}\n\nfunction genScopedSlot (\n key,\n el,\n state\n) {\n if (el.for && !el.forProcessed) {\n return genForScopedSlot(key, el, state)\n }\n var fn = \"function(\" + (String(el.slotScope)) + \"){\" +\n \"return \" + (el.tag === 'template'\n ? el.if\n ? ((el.if) + \"?\" + (genChildren(el, state) || 'undefined') + \":undefined\")\n : genChildren(el, state) || 'undefined'\n : genElement(el, state)) + \"}\";\n return (\"{key:\" + key + \",fn:\" + fn + \"}\")\n}\n\nfunction genForScopedSlot (\n key,\n el,\n state\n) {\n var exp = el.for;\n var alias = el.alias;\n var iterator1 = el.iterator1 ? (\",\" + (el.iterator1)) : '';\n var iterator2 = el.iterator2 ? (\",\" + (el.iterator2)) : '';\n el.forProcessed = true; // avoid recursion\n return \"_l((\" + exp + \"),\" +\n \"function(\" + alias + iterator1 + iterator2 + \"){\" +\n \"return \" + (genScopedSlot(key, el, state)) +\n '})'\n}\n\nfunction genChildren (\n el,\n state,\n checkSkip,\n altGenElement,\n altGenNode\n) {\n var children = el.children;\n if (children.length) {\n var el$1 = children[0];\n // optimize single v-for\n if (children.length === 1 &&\n el$1.for &&\n el$1.tag !== 'template' &&\n el$1.tag !== 'slot'\n ) {\n return (altGenElement || genElement)(el$1, state)\n }\n var normalizationType = checkSkip\n ? getNormalizationType(children, state.maybeComponent)\n : 0;\n var gen = altGenNode || genNode;\n return (\"[\" + (children.map(function (c) { return gen(c, state); }).join(',')) + \"]\" + (normalizationType ? (\",\" + normalizationType) : ''))\n }\n}\n\n// determine the normalization needed for the children array.\n// 0: no normalization needed\n// 1: simple normalization needed (possible 1-level deep nested array)\n// 2: full normalization needed\nfunction getNormalizationType (\n children,\n maybeComponent\n) {\n var res = 0;\n for (var i = 0; i < children.length; i++) {\n var el = children[i];\n if (el.type !== 1) {\n continue\n }\n if (needsNormalization(el) ||\n (el.ifConditions && el.ifConditions.some(function (c) { return needsNormalization(c.block); }))) {\n res = 2;\n break\n }\n if (maybeComponent(el) ||\n (el.ifConditions && el.ifConditions.some(function (c) { return maybeComponent(c.block); }))) {\n res = 1;\n }\n }\n return res\n}\n\nfunction needsNormalization (el) {\n return el.for !== undefined || el.tag === 'template' || el.tag === 'slot'\n}\n\nfunction genNode (node, state) {\n if (node.type === 1) {\n return genElement(node, state)\n } if (node.type === 3 && node.isComment) {\n return genComment(node)\n } else {\n return genText(node)\n }\n}\n\nfunction genText (text) {\n return (\"_v(\" + (text.type === 2\n ? text.expression // no need for () because already wrapped in _s()\n : transformSpecialNewlines(JSON.stringify(text.text))) + \")\")\n}\n\nfunction genComment (comment) {\n return (\"_e(\" + (JSON.stringify(comment.text)) + \")\")\n}\n\nfunction genSlot (el, state) {\n var slotName = el.slotName || '\"default\"';\n var children = genChildren(el, state);\n var res = \"_t(\" + slotName + (children ? (\",\" + children) : '');\n var attrs = el.attrs && (\"{\" + (el.attrs.map(function (a) { return ((camelize(a.name)) + \":\" + (a.value)); }).join(',')) + \"}\");\n var bind$$1 = el.attrsMap['v-bind'];\n if ((attrs || bind$$1) && !children) {\n res += \",null\";\n }\n if (attrs) {\n res += \",\" + attrs;\n }\n if (bind$$1) {\n res += (attrs ? '' : ',null') + \",\" + bind$$1;\n }\n return res + ')'\n}\n\n// componentName is el.component, take it as argument to shun flow's pessimistic refinement\nfunction genComponent (\n componentName,\n el,\n state\n) {\n var children = el.inlineTemplate ? null : genChildren(el, state, true);\n return (\"_c(\" + componentName + \",\" + (genData$2(el, state)) + (children ? (\",\" + children) : '') + \")\")\n}\n\nfunction genProps (props) {\n var res = '';\n for (var i = 0; i < props.length; i++) {\n var prop = props[i];\n res += \"\\\"\" + (prop.name) + \"\\\":\" + (transformSpecialNewlines(prop.value)) + \",\";\n }\n return res.slice(0, -1)\n}\n\n// #3895, #4268\nfunction transformSpecialNewlines (text) {\n return text\n .replace(/\\u2028/g, '\\\\u2028')\n .replace(/\\u2029/g, '\\\\u2029')\n}\n\n/* */\n\n// these keywords should not appear inside expressions, but operators like\n// typeof, instanceof and in are allowed\nvar prohibitedKeywordRE = new RegExp('\\\\b' + (\n 'do,if,for,let,new,try,var,case,else,with,await,break,catch,class,const,' +\n 'super,throw,while,yield,delete,export,import,return,switch,default,' +\n 'extends,finally,continue,debugger,function,arguments'\n).split(',').join('\\\\b|\\\\b') + '\\\\b');\n\n// these unary operators should not be used as property/method names\nvar unaryOperatorsRE = new RegExp('\\\\b' + (\n 'delete,typeof,void'\n).split(',').join('\\\\s*\\\\([^\\\\)]*\\\\)|\\\\b') + '\\\\s*\\\\([^\\\\)]*\\\\)');\n\n// check valid identifier for v-for\nvar identRE = /[A-Za-z_$][\\w$]*/;\n\n// strip strings in expressions\nvar stripStringRE = /'(?:[^'\\\\]|\\\\.)*'|\"(?:[^\"\\\\]|\\\\.)*\"|`(?:[^`\\\\]|\\\\.)*\\$\\{|\\}(?:[^`\\\\]|\\\\.)*`|`(?:[^`\\\\]|\\\\.)*`/g;\n\n// detect problematic expressions in a template\nfunction detectErrors (ast) {\n var errors = [];\n if (ast) {\n checkNode(ast, errors);\n }\n return errors\n}\n\nfunction checkNode (node, errors) {\n if (node.type === 1) {\n for (var name in node.attrsMap) {\n if (dirRE.test(name)) {\n var value = node.attrsMap[name];\n if (value) {\n if (name === 'v-for') {\n checkFor(node, (\"v-for=\\\"\" + value + \"\\\"\"), errors);\n } else if (onRE.test(name)) {\n checkEvent(value, (name + \"=\\\"\" + value + \"\\\"\"), errors);\n } else {\n checkExpression(value, (name + \"=\\\"\" + value + \"\\\"\"), errors);\n }\n }\n }\n }\n if (node.children) {\n for (var i = 0; i < node.children.length; i++) {\n checkNode(node.children[i], errors);\n }\n }\n } else if (node.type === 2) {\n checkExpression(node.expression, node.text, errors);\n }\n}\n\nfunction checkEvent (exp, text, errors) {\n var stipped = exp.replace(stripStringRE, '');\n var keywordMatch = stipped.match(unaryOperatorsRE);\n if (keywordMatch && stipped.charAt(keywordMatch.index - 1) !== '$') {\n errors.push(\n \"avoid using JavaScript unary operator as property name: \" +\n \"\\\"\" + (keywordMatch[0]) + \"\\\" in expression \" + (text.trim())\n );\n }\n checkExpression(exp, text, errors);\n}\n\nfunction checkFor (node, text, errors) {\n checkExpression(node.for || '', text, errors);\n checkIdentifier(node.alias, 'v-for alias', text, errors);\n checkIdentifier(node.iterator1, 'v-for iterator', text, errors);\n checkIdentifier(node.iterator2, 'v-for iterator', text, errors);\n}\n\nfunction checkIdentifier (ident, type, text, errors) {\n if (typeof ident === 'string' && !identRE.test(ident)) {\n errors.push((\"invalid \" + type + \" \\\"\" + ident + \"\\\" in expression: \" + (text.trim())));\n }\n}\n\nfunction checkExpression (exp, text, errors) {\n try {\n new Function((\"return \" + exp));\n } catch (e) {\n var keywordMatch = exp.replace(stripStringRE, '').match(prohibitedKeywordRE);\n if (keywordMatch) {\n errors.push(\n \"avoid using JavaScript keyword as property name: \" +\n \"\\\"\" + (keywordMatch[0]) + \"\\\"\\n Raw expression: \" + (text.trim())\n );\n } else {\n errors.push(\n \"invalid expression: \" + (e.message) + \" in\\n\\n\" +\n \" \" + exp + \"\\n\\n\" +\n \" Raw expression: \" + (text.trim()) + \"\\n\"\n );\n }\n }\n}\n\n/* */\n\nfunction createFunction (code, errors) {\n try {\n return new Function(code)\n } catch (err) {\n errors.push({ err: err, code: code });\n return noop\n }\n}\n\nfunction createCompileToFunctionFn (compile) {\n var cache = Object.create(null);\n\n return function compileToFunctions (\n template,\n options,\n vm\n ) {\n options = extend({}, options);\n var warn$$1 = options.warn || warn;\n delete options.warn;\n\n /* istanbul ignore if */\n if (process.env.NODE_ENV !== 'production') {\n // detect possible CSP restriction\n try {\n new Function('return 1');\n } catch (e) {\n if (e.toString().match(/unsafe-eval|CSP/)) {\n warn$$1(\n 'It seems you are using the standalone build of Vue.js in an ' +\n 'environment with Content Security Policy that prohibits unsafe-eval. ' +\n 'The template compiler cannot work in this environment. Consider ' +\n 'relaxing the policy to allow unsafe-eval or pre-compiling your ' +\n 'templates into render functions.'\n );\n }\n }\n }\n\n // check cache\n var key = options.delimiters\n ? String(options.delimiters) + template\n : template;\n if (cache[key]) {\n return cache[key]\n }\n\n // compile\n var compiled = compile(template, options);\n\n // check compilation errors/tips\n if (process.env.NODE_ENV !== 'production') {\n if (compiled.errors && compiled.errors.length) {\n warn$$1(\n \"Error compiling template:\\n\\n\" + template + \"\\n\\n\" +\n compiled.errors.map(function (e) { return (\"- \" + e); }).join('\\n') + '\\n',\n vm\n );\n }\n if (compiled.tips && compiled.tips.length) {\n compiled.tips.forEach(function (msg) { return tip(msg, vm); });\n }\n }\n\n // turn code into functions\n var res = {};\n var fnGenErrors = [];\n res.render = createFunction(compiled.render, fnGenErrors);\n res.staticRenderFns = compiled.staticRenderFns.map(function (code) {\n return createFunction(code, fnGenErrors)\n });\n\n // check function generation errors.\n // this should only happen if there is a bug in the compiler itself.\n // mostly for codegen development use\n /* istanbul ignore if */\n if (process.env.NODE_ENV !== 'production') {\n if ((!compiled.errors || !compiled.errors.length) && fnGenErrors.length) {\n warn$$1(\n \"Failed to generate render function:\\n\\n\" +\n fnGenErrors.map(function (ref) {\n var err = ref.err;\n var code = ref.code;\n\n return ((err.toString()) + \" in\\n\\n\" + code + \"\\n\");\n }).join('\\n'),\n vm\n );\n }\n }\n\n return (cache[key] = res)\n }\n}\n\n/* */\n\nfunction createCompilerCreator (baseCompile) {\n return function createCompiler (baseOptions) {\n function compile (\n template,\n options\n ) {\n var finalOptions = Object.create(baseOptions);\n var errors = [];\n var tips = [];\n finalOptions.warn = function (msg, tip) {\n (tip ? tips : errors).push(msg);\n };\n\n if (options) {\n // merge custom modules\n if (options.modules) {\n finalOptions.modules =\n (baseOptions.modules || []).concat(options.modules);\n }\n // merge custom directives\n if (options.directives) {\n finalOptions.directives = extend(\n Object.create(baseOptions.directives),\n options.directives\n );\n }\n // copy other options\n for (var key in options) {\n if (key !== 'modules' && key !== 'directives') {\n finalOptions[key] = options[key];\n }\n }\n }\n\n var compiled = baseCompile(template, finalOptions);\n if (process.env.NODE_ENV !== 'production') {\n errors.push.apply(errors, detectErrors(compiled.ast));\n }\n compiled.errors = errors;\n compiled.tips = tips;\n return compiled\n }\n\n return {\n compile: compile,\n compileToFunctions: createCompileToFunctionFn(compile)\n }\n }\n}\n\n/* */\n\n// `createCompilerCreator` allows creating compilers that use alternative\n// parser/optimizer/codegen, e.g the SSR optimizing compiler.\n// Here we just export a default compiler using the default parts.\nvar createCompiler = createCompilerCreator(function baseCompile (\n template,\n options\n) {\n var ast = parse(template.trim(), options);\n optimize(ast, options);\n var code = generate(ast, options);\n return {\n ast: ast,\n render: code.render,\n staticRenderFns: code.staticRenderFns\n }\n});\n\n/* */\n\nvar ref$1 = createCompiler(baseOptions);\nvar compileToFunctions = ref$1.compileToFunctions;\n\n/* */\n\nvar idToTemplate = cached(function (id) {\n var el = query(id);\n return el && el.innerHTML\n});\n\nvar mount = Vue$3.prototype.$mount;\nVue$3.prototype.$mount = function (\n el,\n hydrating\n) {\n el = el && query(el);\n\n /* istanbul ignore if */\n if (el === document.body || el === document.documentElement) {\n process.env.NODE_ENV !== 'production' && warn(\n \"Do not mount Vue to <html> or <body> - mount to normal elements instead.\"\n );\n return this\n }\n\n var options = this.$options;\n // resolve template/el and convert to render function\n if (!options.render) {\n var template = options.template;\n if (template) {\n if (typeof template === 'string') {\n if (template.charAt(0) === '#') {\n template = idToTemplate(template);\n /* istanbul ignore if */\n if (process.env.NODE_ENV !== 'production' && !template) {\n warn(\n (\"Template element not found or is empty: \" + (options.template)),\n this\n );\n }\n }\n } else if (template.nodeType) {\n template = template.innerHTML;\n } else {\n if (process.env.NODE_ENV !== 'production') {\n warn('invalid template option:' + template, this);\n }\n return this\n }\n } else if (el) {\n template = getOuterHTML(el);\n }\n if (template) {\n /* istanbul ignore if */\n if (process.env.NODE_ENV !== 'production' && config.performance && mark) {\n mark('compile');\n }\n\n var ref = compileToFunctions(template, {\n shouldDecodeNewlines: shouldDecodeNewlines,\n delimiters: options.delimiters,\n comments: options.comments\n }, this);\n var render = ref.render;\n var staticRenderFns = ref.staticRenderFns;\n options.render = render;\n options.staticRenderFns = staticRenderFns;\n\n /* istanbul ignore if */\n if (process.env.NODE_ENV !== 'production' && config.performance && mark) {\n mark('compile end');\n measure((\"vue \" + (this._name) + \" compile\"), 'compile', 'compile end');\n }\n }\n }\n return mount.call(this, el, hydrating)\n};\n\n/**\n * Get outerHTML of elements, taking care\n * of SVG elements in IE as well.\n */\nfunction getOuterHTML (el) {\n if (el.outerHTML) {\n return el.outerHTML\n } else {\n var container = document.createElement('div');\n container.appendChild(el.cloneNode(true));\n return container.innerHTML\n }\n}\n\nVue$3.compile = compileToFunctions;\n\nexport default Vue$3;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/vue/dist/vue.esm.js\n// module id = 3\n// module chunks = 0","var apply = Function.prototype.apply;\n\n// DOM APIs, for completeness\n\nexports.setTimeout = function() {\n return new Timeout(apply.call(setTimeout, window, arguments), clearTimeout);\n};\nexports.setInterval = function() {\n return new Timeout(apply.call(setInterval, window, arguments), clearInterval);\n};\nexports.clearTimeout =\nexports.clearInterval = function(timeout) {\n if (timeout) {\n timeout.close();\n }\n};\n\nfunction Timeout(id, clearFn) {\n this._id = id;\n this._clearFn = clearFn;\n}\nTimeout.prototype.unref = Timeout.prototype.ref = function() {};\nTimeout.prototype.close = function() {\n this._clearFn.call(window, this._id);\n};\n\n// Does not start the time, just sets up the members needed.\nexports.enroll = function(item, msecs) {\n clearTimeout(item._idleTimeoutId);\n item._idleTimeout = msecs;\n};\n\nexports.unenroll = function(item) {\n clearTimeout(item._idleTimeoutId);\n item._idleTimeout = -1;\n};\n\nexports._unrefActive = exports.active = function(item) {\n clearTimeout(item._idleTimeoutId);\n\n var msecs = item._idleTimeout;\n if (msecs >= 0) {\n item._idleTimeoutId = setTimeout(function onTimeout() {\n if (item._onTimeout)\n item._onTimeout();\n }, msecs);\n }\n};\n\n// setimmediate attaches itself to the global object\nrequire(\"setimmediate\");\nexports.setImmediate = setImmediate;\nexports.clearImmediate = clearImmediate;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/timers-browserify/main.js\n// module id = 4\n// module chunks = 0","(function (global, undefined) {\n \"use strict\";\n\n if (global.setImmediate) {\n return;\n }\n\n var nextHandle = 1; // Spec says greater than zero\n var tasksByHandle = {};\n var currentlyRunningATask = false;\n var doc = global.document;\n var registerImmediate;\n\n function setImmediate(callback) {\n // Callback can either be a function or a string\n if (typeof callback !== \"function\") {\n callback = new Function(\"\" + callback);\n }\n // Copy function arguments\n var args = new Array(arguments.length - 1);\n for (var i = 0; i < args.length; i++) {\n args[i] = arguments[i + 1];\n }\n // Store and register the task\n var task = { callback: callback, args: args };\n tasksByHandle[nextHandle] = task;\n registerImmediate(nextHandle);\n return nextHandle++;\n }\n\n function clearImmediate(handle) {\n delete tasksByHandle[handle];\n }\n\n function run(task) {\n var callback = task.callback;\n var args = task.args;\n switch (args.length) {\n case 0:\n callback();\n break;\n case 1:\n callback(args[0]);\n break;\n case 2:\n callback(args[0], args[1]);\n break;\n case 3:\n callback(args[0], args[1], args[2]);\n break;\n default:\n callback.apply(undefined, args);\n break;\n }\n }\n\n function runIfPresent(handle) {\n // From the spec: \"Wait until any invocations of this algorithm started before this one have completed.\"\n // So if we're currently running a task, we'll need to delay this invocation.\n if (currentlyRunningATask) {\n // Delay by doing a setTimeout. setImmediate was tried instead, but in Firefox 7 it generated a\n // \"too much recursion\" error.\n setTimeout(runIfPresent, 0, handle);\n } else {\n var task = tasksByHandle[handle];\n if (task) {\n currentlyRunningATask = true;\n try {\n run(task);\n } finally {\n clearImmediate(handle);\n currentlyRunningATask = false;\n }\n }\n }\n }\n\n function installNextTickImplementation() {\n registerImmediate = function(handle) {\n process.nextTick(function () { runIfPresent(handle); });\n };\n }\n\n function canUsePostMessage() {\n // The test against `importScripts` prevents this implementation from being installed inside a web worker,\n // where `global.postMessage` means something completely different and can't be used for this purpose.\n if (global.postMessage && !global.importScripts) {\n var postMessageIsAsynchronous = true;\n var oldOnMessage = global.onmessage;\n global.onmessage = function() {\n postMessageIsAsynchronous = false;\n };\n global.postMessage(\"\", \"*\");\n global.onmessage = oldOnMessage;\n return postMessageIsAsynchronous;\n }\n }\n\n function installPostMessageImplementation() {\n // Installs an event handler on `global` for the `message` event: see\n // * https://developer.mozilla.org/en/DOM/window.postMessage\n // * http://www.whatwg.org/specs/web-apps/current-work/multipage/comms.html#crossDocumentMessages\n\n var messagePrefix = \"setImmediate$\" + Math.random() + \"$\";\n var onGlobalMessage = function(event) {\n if (event.source === global &&\n typeof event.data === \"string\" &&\n event.data.indexOf(messagePrefix) === 0) {\n runIfPresent(+event.data.slice(messagePrefix.length));\n }\n };\n\n if (global.addEventListener) {\n global.addEventListener(\"message\", onGlobalMessage, false);\n } else {\n global.attachEvent(\"onmessage\", onGlobalMessage);\n }\n\n registerImmediate = function(handle) {\n global.postMessage(messagePrefix + handle, \"*\");\n };\n }\n\n function installMessageChannelImplementation() {\n var channel = new MessageChannel();\n channel.port1.onmessage = function(event) {\n var handle = event.data;\n runIfPresent(handle);\n };\n\n registerImmediate = function(handle) {\n channel.port2.postMessage(handle);\n };\n }\n\n function installReadyStateChangeImplementation() {\n var html = doc.documentElement;\n registerImmediate = function(handle) {\n // Create a <script> element; its readystatechange event will be fired asynchronously once it is inserted\n // into the document. Do so, thus queuing up the task. Remember to clean up once it's been called.\n var script = doc.createElement(\"script\");\n script.onreadystatechange = function () {\n runIfPresent(handle);\n script.onreadystatechange = null;\n html.removeChild(script);\n script = null;\n };\n html.appendChild(script);\n };\n }\n\n function installSetTimeoutImplementation() {\n registerImmediate = function(handle) {\n setTimeout(runIfPresent, 0, handle);\n };\n }\n\n // If supported, we should attach to the prototype of global, since that is where setTimeout et al. live.\n var attachTo = Object.getPrototypeOf && Object.getPrototypeOf(global);\n attachTo = attachTo && attachTo.setTimeout ? attachTo : global;\n\n // Don't get fooled by e.g. browserify environments.\n if ({}.toString.call(global.process) === \"[object process]\") {\n // For Node.js before 0.9\n installNextTickImplementation();\n\n } else if (canUsePostMessage()) {\n // For non-IE10 modern browsers\n installPostMessageImplementation();\n\n } else if (global.MessageChannel) {\n // For web workers, where supported\n installMessageChannelImplementation();\n\n } else if (doc && \"onreadystatechange\" in doc.createElement(\"script\")) {\n // For IE 6–8\n installReadyStateChangeImplementation();\n\n } else {\n // For older browsers\n installSetTimeoutImplementation();\n }\n\n attachTo.setImmediate = setImmediate;\n attachTo.clearImmediate = clearImmediate;\n}(typeof self === \"undefined\" ? typeof global === \"undefined\" ? this : global : self));\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/setimmediate/setImmediate.js\n// module id = 5\n// module chunks = 0","// shim for using process in browser\nvar process = module.exports = {};\n\n// cached from whatever global is present so that test runners that stub it\n// don't break things. But we need to wrap it in a try catch in case it is\n// wrapped in strict mode code which doesn't define any globals. It's inside a\n// function because try/catches deoptimize in certain engines.\n\nvar cachedSetTimeout;\nvar cachedClearTimeout;\n\nfunction defaultSetTimout() {\n throw new Error('setTimeout has not been defined');\n}\nfunction defaultClearTimeout () {\n throw new Error('clearTimeout has not been defined');\n}\n(function () {\n try {\n if (typeof setTimeout === 'function') {\n cachedSetTimeout = setTimeout;\n } else {\n cachedSetTimeout = defaultSetTimout;\n }\n } catch (e) {\n cachedSetTimeout = defaultSetTimout;\n }\n try {\n if (typeof clearTimeout === 'function') {\n cachedClearTimeout = clearTimeout;\n } else {\n cachedClearTimeout = defaultClearTimeout;\n }\n } catch (e) {\n cachedClearTimeout = defaultClearTimeout;\n }\n} ())\nfunction runTimeout(fun) {\n if (cachedSetTimeout === setTimeout) {\n //normal enviroments in sane situations\n return setTimeout(fun, 0);\n }\n // if setTimeout wasn't available but was latter defined\n if ((cachedSetTimeout === defaultSetTimout || !cachedSetTimeout) && setTimeout) {\n cachedSetTimeout = setTimeout;\n return setTimeout(fun, 0);\n }\n try {\n // when when somebody has screwed with setTimeout but no I.E. maddness\n return cachedSetTimeout(fun, 0);\n } catch(e){\n try {\n // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally\n return cachedSetTimeout.call(null, fun, 0);\n } catch(e){\n // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error\n return cachedSetTimeout.call(this, fun, 0);\n }\n }\n\n\n}\nfunction runClearTimeout(marker) {\n if (cachedClearTimeout === clearTimeout) {\n //normal enviroments in sane situations\n return clearTimeout(marker);\n }\n // if clearTimeout wasn't available but was latter defined\n if ((cachedClearTimeout === defaultClearTimeout || !cachedClearTimeout) && clearTimeout) {\n cachedClearTimeout = clearTimeout;\n return clearTimeout(marker);\n }\n try {\n // when when somebody has screwed with setTimeout but no I.E. maddness\n return cachedClearTimeout(marker);\n } catch (e){\n try {\n // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally\n return cachedClearTimeout.call(null, marker);\n } catch (e){\n // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error.\n // Some versions of I.E. have different rules for clearTimeout vs setTimeout\n return cachedClearTimeout.call(this, marker);\n }\n }\n\n\n\n}\nvar queue = [];\nvar draining = false;\nvar currentQueue;\nvar queueIndex = -1;\n\nfunction cleanUpNextTick() {\n if (!draining || !currentQueue) {\n return;\n }\n draining = false;\n if (currentQueue.length) {\n queue = currentQueue.concat(queue);\n } else {\n queueIndex = -1;\n }\n if (queue.length) {\n drainQueue();\n }\n}\n\nfunction drainQueue() {\n if (draining) {\n return;\n }\n var timeout = runTimeout(cleanUpNextTick);\n draining = true;\n\n var len = queue.length;\n while(len) {\n currentQueue = queue;\n queue = [];\n while (++queueIndex < len) {\n if (currentQueue) {\n currentQueue[queueIndex].run();\n }\n }\n queueIndex = -1;\n len = queue.length;\n }\n currentQueue = null;\n draining = false;\n runClearTimeout(timeout);\n}\n\nprocess.nextTick = function (fun) {\n var args = new Array(arguments.length - 1);\n if (arguments.length > 1) {\n for (var i = 1; i < arguments.length; i++) {\n args[i - 1] = arguments[i];\n }\n }\n queue.push(new Item(fun, args));\n if (queue.length === 1 && !draining) {\n runTimeout(drainQueue);\n }\n};\n\n// v8 likes predictible objects\nfunction Item(fun, array) {\n this.fun = fun;\n this.array = array;\n}\nItem.prototype.run = function () {\n this.fun.apply(null, this.array);\n};\nprocess.title = 'browser';\nprocess.browser = true;\nprocess.env = {};\nprocess.argv = [];\nprocess.version = ''; // empty string to avoid regexp issues\nprocess.versions = {};\n\nfunction noop() {}\n\nprocess.on = noop;\nprocess.addListener = noop;\nprocess.once = noop;\nprocess.off = noop;\nprocess.removeListener = noop;\nprocess.removeAllListeners = noop;\nprocess.emit = noop;\nprocess.prependListener = noop;\nprocess.prependOnceListener = noop;\n\nprocess.listeners = function (name) { return [] }\n\nprocess.binding = function (name) {\n throw new Error('process.binding is not supported');\n};\n\nprocess.cwd = function () { return '/' };\nprocess.chdir = function (dir) {\n throw new Error('process.chdir is not supported');\n};\nprocess.umask = function() { return 0; };\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/process/browser.js\n// module id = 6\n// module chunks = 0","function injectStyle (ssrContext) {\n require(\"!!vue-style-loader!css-loader!./node_modules/vue-loader/lib/style-compiler/index?{\\\"vue\\\":true,\\\"id\\\":\\\"data-v-7d220ade\\\",\\\"scoped\\\":false,\\\"hasInlineConfig\\\":false}!sass-loader!./node_modules/vue-loader/lib/selector?type=styles&index=0!./Geshem.vue\")\n}\nvar normalizeComponent = require(\"!./node_modules/vue-loader/lib/component-normalizer\")\n/* script */\nimport __vue_script__ from \"!!babel-loader!./node_modules/vue-loader/lib/selector?type=script&index=0!./Geshem.vue\"\n/* template */\nimport __vue_template__ from \"!!./node_modules/vue-loader/lib/template-compiler/index?{\\\"id\\\":\\\"data-v-7d220ade\\\",\\\"hasScoped\\\":false,\\\"buble\\\":{\\\"transforms\\\":{}}}!./node_modules/vue-loader/lib/selector?type=template&index=0!./Geshem.vue\"\n/* template functional */\n var __vue_template_functional__ = false\n/* styles */\nvar __vue_styles__ = injectStyle\n/* scopeId */\nvar __vue_scopeId__ = null\n/* moduleIdentifier (server only) */\nvar __vue_module_identifier__ = null\nvar Component = normalizeComponent(\n __vue_script__,\n __vue_template__,\n __vue_template_functional__,\n __vue_styles__,\n __vue_scopeId__,\n __vue_module_identifier__\n)\n\nexport default Component.exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./Geshem.vue\n// module id = 7\n// module chunks = 0","// style-loader: Adds some css to the DOM by adding a <style> tag\n\n// load the styles\nvar content = require(\"!!./node_modules/css-loader/index.js!./node_modules/vue-loader/lib/style-compiler/index.js?{\\\"vue\\\":true,\\\"id\\\":\\\"data-v-7d220ade\\\",\\\"scoped\\\":false,\\\"hasInlineConfig\\\":false}!./node_modules/sass-loader/lib/loader.js!./node_modules/vue-loader/lib/selector.js?type=styles&index=0!./Geshem.vue\");\nif(typeof content === 'string') content = [[module.id, content, '']];\nif(content.locals) module.exports = content.locals;\n// add the styles to the DOM\nvar update = require(\"!./node_modules/vue-style-loader/lib/addStylesClient.js\")(\"1cc1a7d4\", content, true);\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/vue-style-loader!./node_modules/css-loader!./node_modules/vue-loader/lib/style-compiler?{\"vue\":true,\"id\":\"data-v-7d220ade\",\"scoped\":false,\"hasInlineConfig\":false}!./node_modules/sass-loader/lib/loader.js!./node_modules/vue-loader/lib/selector.js?type=styles&index=0!./Geshem.vue\n// module id = 8\n// module chunks = 0","exports = module.exports = require(\"./node_modules/css-loader/lib/css-base.js\")(undefined);\n// imports\n\n\n// module\nexports.push([module.id, \"#geshem #datetime{position:absolute;margin:20px 0 0 20px;color:#fff;font-family:monospace}#geshem #datetime #date{font-size:1.4em}#geshem #datetime #time{font-size:1.8em}#geshem #slider{position:absolute;bottom:8vh;width:30vw;margin-left:35vw}@media only screen and (max-device-width:812px){#geshem #slider{width:80vw;margin-left:8vw}}\", \"\"]);\n\n// exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/css-loader!./node_modules/vue-loader/lib/style-compiler?{\"vue\":true,\"id\":\"data-v-7d220ade\",\"scoped\":false,\"hasInlineConfig\":false}!./node_modules/sass-loader/lib/loader.js!./node_modules/vue-loader/lib/selector.js?type=styles&index=0!./Geshem.vue\n// module id = 9\n// module chunks = 0","/*\n\tMIT License http://www.opensource.org/licenses/mit-license.php\n\tAuthor Tobias Koppers @sokra\n*/\n// css base code, injected by the css-loader\nmodule.exports = function(useSourceMap) {\n\tvar list = [];\n\n\t// return the list of modules as css string\n\tlist.toString = function toString() {\n\t\treturn this.map(function (item) {\n\t\t\tvar content = cssWithMappingToString(item, useSourceMap);\n\t\t\tif(item[2]) {\n\t\t\t\treturn \"@media \" + item[2] + \"{\" + content + \"}\";\n\t\t\t} else {\n\t\t\t\treturn content;\n\t\t\t}\n\t\t}).join(\"\");\n\t};\n\n\t// import a list of modules into the list\n\tlist.i = function(modules, mediaQuery) {\n\t\tif(typeof modules === \"string\")\n\t\t\tmodules = [[null, modules, \"\"]];\n\t\tvar alreadyImportedModules = {};\n\t\tfor(var i = 0; i < this.length; i++) {\n\t\t\tvar id = this[i][0];\n\t\t\tif(typeof id === \"number\")\n\t\t\t\talreadyImportedModules[id] = true;\n\t\t}\n\t\tfor(i = 0; i < modules.length; i++) {\n\t\t\tvar item = modules[i];\n\t\t\t// skip already imported module\n\t\t\t// this implementation is not 100% perfect for weird media query combinations\n\t\t\t// when a module is imported multiple times with different media queries.\n\t\t\t// I hope this will never occur (Hey this way we have smaller bundles)\n\t\t\tif(typeof item[0] !== \"number\" || !alreadyImportedModules[item[0]]) {\n\t\t\t\tif(mediaQuery && !item[2]) {\n\t\t\t\t\titem[2] = mediaQuery;\n\t\t\t\t} else if(mediaQuery) {\n\t\t\t\t\titem[2] = \"(\" + item[2] + \") and (\" + mediaQuery + \")\";\n\t\t\t\t}\n\t\t\t\tlist.push(item);\n\t\t\t}\n\t\t}\n\t};\n\treturn list;\n};\n\nfunction cssWithMappingToString(item, useSourceMap) {\n\tvar content = item[1] || '';\n\tvar cssMapping = item[3];\n\tif (!cssMapping) {\n\t\treturn content;\n\t}\n\n\tif (useSourceMap && typeof btoa === 'function') {\n\t\tvar sourceMapping = toComment(cssMapping);\n\t\tvar sourceURLs = cssMapping.sources.map(function (source) {\n\t\t\treturn '/*# sourceURL=' + cssMapping.sourceRoot + source + ' */'\n\t\t});\n\n\t\treturn [content].concat(sourceURLs).concat([sourceMapping]).join('\\n');\n\t}\n\n\treturn [content].join('\\n');\n}\n\n// Adapted from convert-source-map (MIT)\nfunction toComment(sourceMap) {\n\t// eslint-disable-next-line no-undef\n\tvar base64 = btoa(unescape(encodeURIComponent(JSON.stringify(sourceMap))));\n\tvar data = 'sourceMappingURL=data:application/json;charset=utf-8;base64,' + base64;\n\n\treturn '/*# ' + data + ' */';\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/css-loader/lib/css-base.js\n// module id = 10\n// module chunks = 0","/*\n MIT License http://www.opensource.org/licenses/mit-license.php\n Author Tobias Koppers @sokra\n Modified by Evan You @yyx990803\n*/\n\nvar hasDocument = typeof document !== 'undefined'\n\nif (typeof DEBUG !== 'undefined' && DEBUG) {\n if (!hasDocument) {\n throw new Error(\n 'vue-style-loader cannot be used in a non-browser environment. ' +\n \"Use { target: 'node' } in your Webpack config to indicate a server-rendering environment.\"\n ) }\n}\n\nvar listToStyles = require('./listToStyles')\n\n/*\ntype StyleObject = {\n id: number;\n parts: Array<StyleObjectPart>\n}\n\ntype StyleObjectPart = {\n css: string;\n media: string;\n sourceMap: ?string\n}\n*/\n\nvar stylesInDom = {/*\n [id: number]: {\n id: number,\n refs: number,\n parts: Array<(obj?: StyleObjectPart) => void>\n }\n*/}\n\nvar head = hasDocument && (document.head || document.getElementsByTagName('head')[0])\nvar singletonElement = null\nvar singletonCounter = 0\nvar isProduction = false\nvar noop = function () {}\n\n// Force single-tag solution on IE6-9, which has a hard limit on the # of <style>\n// tags it will allow on a page\nvar isOldIE = typeof navigator !== 'undefined' && /msie [6-9]\\b/.test(navigator.userAgent.toLowerCase())\n\nmodule.exports = function (parentId, list, _isProduction) {\n isProduction = _isProduction\n\n var styles = listToStyles(parentId, list)\n addStylesToDom(styles)\n\n return function update (newList) {\n var mayRemove = []\n for (var i = 0; i < styles.length; i++) {\n var item = styles[i]\n var domStyle = stylesInDom[item.id]\n domStyle.refs--\n mayRemove.push(domStyle)\n }\n if (newList) {\n styles = listToStyles(parentId, newList)\n addStylesToDom(styles)\n } else {\n styles = []\n }\n for (var i = 0; i < mayRemove.length; i++) {\n var domStyle = mayRemove[i]\n if (domStyle.refs === 0) {\n for (var j = 0; j < domStyle.parts.length; j++) {\n domStyle.parts[j]()\n }\n delete stylesInDom[domStyle.id]\n }\n }\n }\n}\n\nfunction addStylesToDom (styles /* Array<StyleObject> */) {\n for (var i = 0; i < styles.length; i++) {\n var item = styles[i]\n var domStyle = stylesInDom[item.id]\n if (domStyle) {\n domStyle.refs++\n for (var j = 0; j < domStyle.parts.length; j++) {\n domStyle.parts[j](item.parts[j])\n }\n for (; j < item.parts.length; j++) {\n domStyle.parts.push(addStyle(item.parts[j]))\n }\n if (domStyle.parts.length > item.parts.length) {\n domStyle.parts.length = item.parts.length\n }\n } else {\n var parts = []\n for (var j = 0; j < item.parts.length; j++) {\n parts.push(addStyle(item.parts[j]))\n }\n stylesInDom[item.id] = { id: item.id, refs: 1, parts: parts }\n }\n }\n}\n\nfunction createStyleElement () {\n var styleElement = document.createElement('style')\n styleElement.type = 'text/css'\n head.appendChild(styleElement)\n return styleElement\n}\n\nfunction addStyle (obj /* StyleObjectPart */) {\n var update, remove\n var styleElement = document.querySelector('style[data-vue-ssr-id~=\"' + obj.id + '\"]')\n\n if (styleElement) {\n if (isProduction) {\n // has SSR styles and in production mode.\n // simply do nothing.\n return noop\n } else {\n // has SSR styles but in dev mode.\n // for some reason Chrome can't handle source map in server-rendered\n // style tags - source maps in <style> only works if the style tag is\n // created and inserted dynamically. So we remove the server rendered\n // styles and inject new ones.\n styleElement.parentNode.removeChild(styleElement)\n }\n }\n\n if (isOldIE) {\n // use singleton mode for IE9.\n var styleIndex = singletonCounter++\n styleElement = singletonElement || (singletonElement = createStyleElement())\n update = applyToSingletonTag.bind(null, styleElement, styleIndex, false)\n remove = applyToSingletonTag.bind(null, styleElement, styleIndex, true)\n } else {\n // use multi-style-tag mode in all other cases\n styleElement = createStyleElement()\n update = applyToTag.bind(null, styleElement)\n remove = function () {\n styleElement.parentNode.removeChild(styleElement)\n }\n }\n\n update(obj)\n\n return function updateStyle (newObj /* StyleObjectPart */) {\n if (newObj) {\n if (newObj.css === obj.css &&\n newObj.media === obj.media &&\n newObj.sourceMap === obj.sourceMap) {\n return\n }\n update(obj = newObj)\n } else {\n remove()\n }\n }\n}\n\nvar replaceText = (function () {\n var textStore = []\n\n return function (index, replacement) {\n textStore[index] = replacement\n return textStore.filter(Boolean).join('\\n')\n }\n})()\n\nfunction applyToSingletonTag (styleElement, index, remove, obj) {\n var css = remove ? '' : obj.css\n\n if (styleElement.styleSheet) {\n styleElement.styleSheet.cssText = replaceText(index, css)\n } else {\n var cssNode = document.createTextNode(css)\n var childNodes = styleElement.childNodes\n if (childNodes[index]) styleElement.removeChild(childNodes[index])\n if (childNodes.length) {\n styleElement.insertBefore(cssNode, childNodes[index])\n } else {\n styleElement.appendChild(cssNode)\n }\n }\n}\n\nfunction applyToTag (styleElement, obj) {\n var css = obj.css\n var media = obj.media\n var sourceMap = obj.sourceMap\n\n if (media) {\n styleElement.setAttribute('media', media)\n }\n\n if (sourceMap) {\n // https://developer.chrome.com/devtools/docs/javascript-debugging\n // this makes source maps inside style tags work properly in Chrome\n css += '\\n/*# sourceURL=' + sourceMap.sources[0] + ' */'\n // http://stackoverflow.com/a/26603875\n css += '\\n/*# sourceMappingURL=data:application/json;base64,' + btoa(unescape(encodeURIComponent(JSON.stringify(sourceMap)))) + ' */'\n }\n\n if (styleElement.styleSheet) {\n styleElement.styleSheet.cssText = css\n } else {\n while (styleElement.firstChild) {\n styleElement.removeChild(styleElement.firstChild)\n }\n styleElement.appendChild(document.createTextNode(css))\n }\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/vue-style-loader/lib/addStylesClient.js\n// module id = 11\n// module chunks = 0","/**\n * Translates the list format produced by css-loader into something\n * easier to manipulate.\n */\nmodule.exports = function listToStyles (parentId, list) {\n var styles = []\n var newStyles = {}\n for (var i = 0; i < list.length; i++) {\n var item = list[i]\n var id = item[0]\n var css = item[1]\n var media = item[2]\n var sourceMap = item[3]\n var part = {\n id: parentId + ':' + i,\n css: css,\n media: media,\n sourceMap: sourceMap\n }\n if (!newStyles[id]) {\n styles.push(newStyles[id] = { id: id, parts: [part] })\n } else {\n newStyles[id].parts.push(part)\n }\n }\n return styles\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/vue-style-loader/lib/listToStyles.js\n// module id = 12\n// module chunks = 0","/* globals __VUE_SSR_CONTEXT__ */\n\n// IMPORTANT: Do NOT use ES2015 features in this file.\n// This module is a runtime utility for cleaner component module output and will\n// be included in the final webpack user bundle.\n\nmodule.exports = function normalizeComponent (\n rawScriptExports,\n compiledTemplate,\n functionalTemplate,\n injectStyles,\n scopeId,\n moduleIdentifier /* server only */\n) {\n var esModule\n var scriptExports = rawScriptExports = rawScriptExports || {}\n\n // ES6 modules interop\n var type = typeof rawScriptExports.default\n if (type === 'object' || type === 'function') {\n esModule = rawScriptExports\n scriptExports = rawScriptExports.default\n }\n\n // Vue.extend constructor export interop\n var options = typeof scriptExports === 'function'\n ? scriptExports.options\n : scriptExports\n\n // render functions\n if (compiledTemplate) {\n options.render = compiledTemplate.render\n options.staticRenderFns = compiledTemplate.staticRenderFns\n options._compiled = true\n }\n\n // functional template\n if (functionalTemplate) {\n options.functional = true\n }\n\n // scopedId\n if (scopeId) {\n options._scopeId = scopeId\n }\n\n var hook\n if (moduleIdentifier) { // server build\n hook = function (context) {\n // 2.3 injection\n context =\n context || // cached call\n (this.$vnode && this.$vnode.ssrContext) || // stateful\n (this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext) // functional\n // 2.2 with runInNewContext: true\n if (!context && typeof __VUE_SSR_CONTEXT__ !== 'undefined') {\n context = __VUE_SSR_CONTEXT__\n }\n // inject component styles\n if (injectStyles) {\n injectStyles.call(this, context)\n }\n // register component module identifier for async chunk inferrence\n if (context && context._registeredComponents) {\n context._registeredComponents.add(moduleIdentifier)\n }\n }\n // used by ssr in case component is cached and beforeCreate\n // never gets called\n options._ssrRegister = hook\n } else if (injectStyles) {\n hook = injectStyles\n }\n\n if (hook) {\n var functional = options.functional\n var existing = functional\n ? options.render\n : options.beforeCreate\n\n if (!functional) {\n // inject component registration as beforeCreate hook\n options.beforeCreate = existing\n ? [].concat(existing, hook)\n : [hook]\n } else {\n // for template-only hot-reload because in that case the render fn doesn't\n // go through the normalizer\n options._injectStyles = hook\n // register for functioal component in vue file\n options.render = function renderWithStyleInjection (h, context) {\n hook.call(context)\n return existing(h, context)\n }\n }\n }\n\n return {\n esModule: esModule,\n exports: scriptExports,\n options: options\n }\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/vue-loader/lib/component-normalizer.js\n// module id = 13\n// module chunks = 0","<template>\n <div id=\"geshem\">\n <div id=\"datetime\">\n <div id=\"date\">{{ date }}</div>\n <div id=\"time\">{{ time }}</div>\n </div>\n <div id=\"slider\">\n <vue-slider ref=\"slider\" v-model=\"slider\" :min=1 :max=7 :height=20 :dot-size=45 :tooltip=false></vue-slider>\n </div>\n </div>\n</template>\n\n<script>\n import vueSlider from 'vue-slider-component';\n import mapboxgl from 'mapbox-gl';\n export default {\n name: 'geshem',\n components: {\n 'vue-slider': vueSlider\n },\n data: function () {\n return {\n imgs: window.imgs,\n res: 280,\n slider: 7,\n rasterCoords: {\n 140: [\n [33.35317413, 33.27232471],\n [36.32243686, 33.27232471],\n [36.32243686, 30.72293428],\n [33.35317413, 30.72293428]\n ],\n 280: [\n [31.93095218, 34.5156862],\n [37.86644267, 34.5156862],\n [37.86644267, 29.42911589],\n [31.93095218, 29.42911589]\n ]\n },\n map: new mapboxgl.Map({\n container: 'map',\n style: 'mapbox://styles/mapbox/dark-v9',\n container: 'map',\n maxZoom: 10,\n minZoom: 5,\n zoom: 6.3,\n center: [35, 31.9],\n hash: false\n })\n }\n },\n computed: {\n date: function () {\n var d = this.imgs[this.res][7-this.slider].substr(0, 8);\n return `${d.substr(6, 2)}-${d.substr(4, 2)}-${d.substr(0, 4)}`;\n },\n time: function () {\n var t = this.imgs[this.res][7-this.slider].substr(9, 6);\n return `${t.substr(0, 2)}:${t.substr(2, 2)}`;\n },\n curImg: function () {\n return 7 - this.slider;\n }\n },\n created: function () {\n var vm = this;\n this.map.on('style.load', function () {\n var i = 0;\n while (i < vm.imgs['140'].length) {\n vm.addRadarSource('140', i, vm.imgs['140'][i++])\n }\n var i = 0;\n while (i < vm.imgs['280'].length) {\n vm.addRadarSource('280', i, vm.imgs['280'][i++])\n }\n vm.addRadarLayer('280', 0)\n });\n this.map.on('zoom', function () {\n var zoomIn = vm.map.getZoom() > 7;\n var from = zoomIn ? '280' : '140';\n var to = zoomIn ? '140' : '280';\n if (to != vm.res) {\n console.log(`Zoom event from ${from} to ${to}`);\n vm.removeRadarLayer(from, vm.curImg);\n vm.addRadarLayer(to, vm.curImg);\n vm.res = to;\n }\n });\n },\n methods: {\n addRadarSource: function(res, i, url) {\n this.map.addSource(`radar-${res}-${i}`, {\n type: 'image',\n url: '/static/img/' + url,\n coordinates: this.rasterCoords[res]\n })\n },\n addRadarLayer: function(res, i) {\n this.map.addLayer({\n id: `radar-${res}-${i}`,\n source: `radar-${res}-${i}`,\n type: 'raster',\n paint: {\n 'raster-opacity': 0.85\n }\n })\n },\n removeRadarLayer: function(res, i) {\n this.map.removeLayer(`radar-${res}-${i}`)\n }\n },\n watch: {\n slider: function (to, from) {\n this.removeRadarLayer(this.res, 7-from);\n this.addRadarLayer(this.res, 7-to);\n }\n }\n }\n</script>\n\n<style lang=\"scss\">\n #geshem {\n #datetime {\n position: absolute;\n margin: 20px 0px 0px 20px;\n color: white;\n font-family: monospace;\n #date {\n font-size: 1.4em;\n }\n #time {\n font-size: 1.8em;\n }\n }\n #slider {\n position: absolute;\n bottom: 8vh;\n width: 30vw;\n margin-left: 35vw;\n @media only screen and (max-device-width: 812px) {\n width: 80vw;\n margin-left: 8vw;\n }\n }\n }\n</style>\n\n\n\n// WEBPACK FOOTER //\n// Geshem.vue","!function(t,e){\"object\"==typeof exports&&\"object\"==typeof module?module.exports=e():\"function\"==typeof define&&define.amd?define(\"vue-slider-component\",[],e):\"object\"==typeof exports?exports[\"vue-slider-component\"]=e():t[\"vue-slider-component\"]=e()}(this,function(){return function(t){function e(s){if(i[s])return i[s].exports;var r=i[s]={i:s,l:!1,exports:{}};return t[s].call(r.exports,r,r.exports,e),r.l=!0,r.exports}var i={};return e.m=t,e.c=i,e.i=function(t){return t},e.d=function(t,i,s){e.o(t,i)||Object.defineProperty(t,i,{configurable:!1,enumerable:!0,get:s})},e.n=function(t){var i=t&&t.__esModule?function(){return t.default}:function(){return t};return e.d(i,\"a\",i),i},e.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},e.p=\"\",e(e.s=2)}([function(t,e,i){i(7);var s=i(5)(i(1),i(6),null,null);t.exports=s.exports},function(t,e,i){\"use strict\";Object.defineProperty(e,\"__esModule\",{value:!0}),e.default={data:function(){return{flag:!1,size:0,currentValue:0,currentSlider:0,dotWidthVal:\"number\"==typeof this.dotWidth?this.dotWidth:this.dotSize,dotHeightVal:\"number\"==typeof this.dotHeight?this.dotHeight:this.dotSize}},props:{width:{type:[Number,String],default:\"auto\"},height:{type:[Number,String],default:6},data:{type:Array,default:null},dotSize:{type:Number,default:16},dotWidth:{type:Number,required:!1},dotHeight:{type:Number,required:!1},min:{type:Number,default:0},max:{type:Number,default:100},interval:{type:Number,default:1},show:{type:Boolean,default:!0},disabled:{type:Boolean,default:!1},piecewise:{type:Boolean,default:!1},tooltip:{type:[String,Boolean],default:\"always\"},eventType:{type:String,default:\"auto\"},direction:{type:String,default:\"horizontal\"},reverse:{type:Boolean,default:!1},lazy:{type:Boolean,default:!1},clickable:{type:Boolean,default:!0},speed:{type:Number,default:.5},realTime:{type:Boolean,default:!1},value:{type:[String,Number,Array],default:0},piecewiseLabel:{type:Boolean,default:!1},sliderStyle:[Array,Object],tooltipDir:[Array,String],formatter:[String,Function],piecewiseStyle:Object,piecewiseActiveStyle:Object,processStyle:Object,bgStyle:Object,tooltipStyle:[Array,Object],labelStyle:Object,labelActiveStyle:Object},computed:{flowDirection:function(){return\"vue-slider-\"+this.direction+(this.reverse?\"-reverse\":\"\")},tooltipDirection:function(){var t=this.tooltipDir||(\"vertical\"===this.direction?\"left\":\"top\");return Array.isArray(t)?this.isRange?t:t[1]:this.isRange?[t,t]:t},tooltipStatus:function(){return\"hover\"===this.tooltip&&this.flag?\"vue-slider-always\":this.tooltip?\"vue-slider-\"+this.tooltip:\"\"},tooltipClass:function(){return[\"vue-slider-tooltip-\"+this.tooltipDirection,\"vue-slider-tooltip\"]},isDisabled:function(){return\"none\"===this.eventType||this.disabled},disabledClass:function(){return this.disabled?\"vue-slider-disabled\":\"\"},isRange:function(){return Array.isArray(this.value)},slider:function(){return this.isRange?[this.$refs.dot0,this.$refs.dot1]:this.$refs.dot},minimum:function(){return this.data?0:this.min},val:{get:function(){return this.data?this.isRange?[this.data[this.currentValue[0]],this.data[this.currentValue[1]]]:this.data[this.currentValue]:this.currentValue},set:function(t){if(this.data)if(this.isRange){var e=this.data.indexOf(t[0]),i=this.data.indexOf(t[1]);e>-1&&i>-1&&(this.currentValue=[e,i])}else{var s=this.data.indexOf(t);s>-1&&(this.currentValue=s)}else this.currentValue=t}},currentIndex:function(){return this.isRange?this.data?this.currentValue:[(this.currentValue[0]-this.minimum)/this.spacing,(this.currentValue[1]-this.minimum)/this.spacing]:(this.currentValue-this.minimum)/this.spacing},indexRange:function(){return this.isRange?this.currentIndex:[0,this.currentIndex]},maximum:function(){return this.data?this.data.length-1:this.max},multiple:function(){var t=(\"\"+this.interval).split(\".\")[1];return t?Math.pow(10,t.length):1},spacing:function(){return this.data?1:this.interval},total:function(){return this.data?this.data.length-1:(~~((this.maximum-this.minimum)*this.multiple)%(this.interval*this.multiple)!=0&&console.error(\"[Vue-slider warn]: Prop[interval] is illegal, Please make sure that the interval can be divisible\"),(this.maximum-this.minimum)/this.interval)},gap:function(){return this.size/this.total},position:function(){return this.isRange?[(this.currentValue[0]-this.minimum)/this.spacing*this.gap,(this.currentValue[1]-this.minimum)/this.spacing*this.gap]:(this.currentValue-this.minimum)/this.spacing*this.gap},limit:function(){return this.isRange?[[0,this.position[1]],[this.position[0],this.size]]:[0,this.size]},valueLimit:function(){return this.isRange?[[this.minimum,this.currentValue[1]],[this.currentValue[0],this.maximum]]:[this.minimum,this.maximum]},wrapStyles:function(){return\"vertical\"===this.direction?{height:\"number\"==typeof this.height?this.height+\"px\":this.height,padding:this.dotHeightVal/2+\"px \"+this.dotWidthVal/2+\"px\"}:{width:\"number\"==typeof this.width?this.width+\"px\":this.width,padding:this.dotHeightVal/2+\"px \"+this.dotWidthVal/2+\"px\"}},sliderStyles:function(){return Array.isArray(this.sliderStyle)?this.isRange?this.sliderStyle:this.sliderStyle[1]:this.isRange?[this.sliderStyle,this.sliderStyle]:this.sliderStyle},tooltipStyles:function(){return Array.isArray(this.tooltipStyle)?this.isRange?this.tooltipStyle:this.tooltipStyle[1]:this.isRange?[this.tooltipStyle,this.tooltipStyle]:this.tooltipStyle},elemStyles:function(){return\"vertical\"===this.direction?{width:this.width+\"px\",height:\"100%\"}:{height:this.height+\"px\"}},dotStyles:function(){return\"vertical\"===this.direction?{width:this.dotWidthVal+\"px\",height:this.dotHeightVal+\"px\",left:-(this.dotWidthVal-this.width)/2+\"px\"}:{width:this.dotWidthVal+\"px\",height:this.dotHeightVal+\"px\",top:-(this.dotHeightVal-this.height)/2+\"px\"}},piecewiseDotStyle:function(){return\"vertical\"===this.direction?{width:this.width+\"px\",height:this.width+\"px\"}:{width:this.height+\"px\",height:this.height+\"px\"}},piecewiseDotWrap:function(){if(!this.piecewise&&!this.piecewiseLabel)return!1;for(var t=[],e=0;e<=this.total;e++){var i=\"vertical\"===this.direction?{bottom:this.gap*e-this.width/2+\"px\",left:0}:{left:this.gap*e-this.height/2+\"px\",top:0},s=this.reverse?this.total-e:e,r=this.data?this.data[s]:this.spacing*s+this.min;t.push({style:i,label:this.formatter?this.formatting(r):r,inRange:s>=this.indexRange[0]&&s<=this.indexRange[1]})}return t}},watch:{value:function(t){this.flag||this.setValue(t,!0)},max:function(t){var e=this.limitValue(this.val);!1!==e&&this.setValue(e),this.refresh()},min:function(t){var e=this.limitValue(this.val);!1!==e&&this.setValue(e),this.refresh()},show:function(t){var e=this;t&&!this.size&&this.$nextTick(function(){e.refresh()})}},methods:{bindEvents:function(){document.addEventListener(\"touchmove\",this.moving,{passive:!1}),document.addEventListener(\"touchend\",this.moveEnd,{passive:!1}),document.addEventListener(\"mousemove\",this.moving),document.addEventListener(\"mouseup\",this.moveEnd),document.addEventListener(\"mouseleave\",this.moveEnd),window.addEventListener(\"resize\",this.refresh)},unbindEvents:function(){window.removeEventListener(\"resize\",this.refresh),document.removeEventListener(\"touchmove\",this.moving),document.removeEventListener(\"touchend\",this.moveEnd),document.removeEventListener(\"mousemove\",this.moving),document.removeEventListener(\"mouseup\",this.moveEnd),document.removeEventListener(\"mouseleave\",this.moveEnd)},formatting:function(t){return\"string\"==typeof this.formatter?this.formatter.replace(/\\{value\\}/,t):this.formatter(t)},getPos:function(t){return this.realTime&&this.getStaticData(),\"vertical\"===this.direction?this.reverse?t.pageY-this.offset:this.size-(t.pageY-this.offset):this.reverse?this.size-(t.clientX-this.offset):t.clientX-this.offset},wrapClick:function(t){if(this.isDisabled||!this.clickable)return!1;var e=this.getPos(t);this.isRange&&(this.currentSlider=e>(this.position[1]-this.position[0])/2+this.position[0]?1:0),this.setValueOnPos(e)},moveStart:function(t){if(this.isDisabled)return!1;this.isRange&&(this.currentSlider=t),this.flag=!0,this.$emit(\"drag-start\",this)},moving:function(t){if(!this.flag)return!1;t.preventDefault(),t.targetTouches&&t.targetTouches[0]&&(t=t.targetTouches[0]),this.setValueOnPos(this.getPos(t),!0)},moveEnd:function(t){if(!this.flag)return!1;this.$emit(\"drag-end\",this),this.lazy&&this.isDiff(this.val,this.value)&&this.syncValue(),this.flag=!1,this.setPosition()},setValueOnPos:function(t,e){var i=this.isRange?this.limit[this.currentSlider]:this.limit,s=this.isRange?this.valueLimit[this.currentSlider]:this.valueLimit;if(t>=i[0]&&t<=i[1]){this.setTransform(t);var r=(Math.round(t/this.gap)*(this.spacing*this.multiple)+this.minimum*this.multiple)/this.multiple;this.setCurrentValue(r,e)}else t<i[0]?(this.setTransform(i[0]),this.setCurrentValue(s[0]),1===this.currentSlider&&(this.currentSlider=0)):(this.setTransform(i[1]),this.setCurrentValue(s[1]),0===this.currentSlider&&(this.currentSlider=1))},isDiff:function(t,e){return Object.prototype.toString.call(t)!==Object.prototype.toString.call(e)||(Array.isArray(t)&&t.length===e.length?t.some(function(t,i){return t!==e[i]}):t!==e)},setCurrentValue:function(t,e){if(t<this.minimum||t>this.maximum)return!1;this.isRange?this.isDiff(this.currentValue[this.currentSlider],t)&&(this.currentValue.splice(this.currentSlider,1,t),this.lazy&&this.flag||this.syncValue()):this.isDiff(this.currentValue,t)&&(this.currentValue=t,this.lazy&&this.flag||this.syncValue()),e||this.setPosition()},setIndex:function(t){if(Array.isArray(t)&&this.isRange){var e=void 0;e=this.data?[this.data[t[0]],this.data[t[1]]]:[this.spacing*t[0]+this.minimum,this.spacing*t[1]+this.minimum],this.setValue(e)}else t=this.spacing*t+this.minimum,this.isRange&&(this.currentSlider=t>(this.currentValue[1]-this.currentValue[0])/2+this.currentValue[0]?1:0),this.setCurrentValue(t)},setValue:function(t,e,i){var s=this;if(this.isDiff(this.val,t)){var r=this.limitValue(t);this.val=!1!==r?this.isRange?r.concat():r:this.isRange?t.concat():t,this.syncValue(e)}this.$nextTick(function(){return s.setPosition(i)})},setPosition:function(t){this.flag||this.setTransitionTime(void 0===t?this.speed:t),this.isRange?(this.currentSlider=0,this.setTransform(this.position[this.currentSlider]),this.currentSlider=1,this.setTransform(this.position[this.currentSlider])):this.setTransform(this.position),this.flag||this.setTransitionTime(0)},setTransform:function(t){var e=(\"vertical\"===this.direction?this.dotHeightVal/2-t:t-this.dotWidthVal/2)*(this.reverse?-1:1),i=\"vertical\"===this.direction?\"translateY(\"+e+\"px)\":\"translateX(\"+e+\"px)\",s=(0===this.currentSlider?this.position[1]-t:t-this.position[0])+\"px\",r=(0===this.currentSlider?t:this.position[0])+\"px\";this.isRange?(this.slider[this.currentSlider].style.transform=i,this.slider[this.currentSlider].style.WebkitTransform=i,this.slider[this.currentSlider].style.msTransform=i,\"vertical\"===this.direction?(this.$refs.process.style.height=s,this.$refs.process.style[this.reverse?\"top\":\"bottom\"]=r):(this.$refs.process.style.width=s,this.$refs.process.style[this.reverse?\"right\":\"left\"]=r)):(this.slider.style.transform=i,this.slider.style.WebkitTransform=i,this.slider.style.msTransform=i,\"vertical\"===this.direction?(this.$refs.process.style.height=t+\"px\",this.$refs.process.style[this.reverse?\"top\":\"bottom\"]=0):(this.$refs.process.style.width=t+\"px\",this.$refs.process.style[this.reverse?\"right\":\"left\"]=0))},setTransitionTime:function(t){if(t||this.$refs.process.offsetWidth,this.isRange){for(var e=0;e<this.slider.length;e++)this.slider[e].style.transitionDuration=t+\"s\",this.slider[e].style.WebkitTransitionDuration=t+\"s\";this.$refs.process.style.transitionDuration=t+\"s\",this.$refs.process.style.WebkitTransitionDuration=t+\"s\"}else this.slider.style.transitionDuration=t+\"s\",this.slider.style.WebkitTransitionDuration=t+\"s\",this.$refs.process.style.transitionDuration=t+\"s\",this.$refs.process.style.WebkitTransitionDuration=t+\"s\"},limitValue:function(t){var e=this;if(this.data)return t;var i=!1;return this.isRange?t=t.map(function(t){return t<e.min?(i=!0,e.min):t>e.max?(i=!0,e.max):t}):t>this.max?(i=!0,t=this.max):t<this.min&&(i=!0,t=this.min),i&&t},syncValue:function(t){t||this.$emit(\"callback\",this.val),this.$emit(\"input\",this.isRange?this.val.concat():this.val)},getValue:function(){return this.val},getIndex:function(){return this.currentIndex},getStaticData:function(){this.$refs.elem&&(this.size=\"vertical\"===this.direction?this.$refs.elem.offsetHeight:this.$refs.elem.offsetWidth,this.offset=\"vertical\"===this.direction?this.$refs.elem.getBoundingClientRect().top+window.pageYOffset||document.documentElement.scrollTop:this.$refs.elem.getBoundingClientRect().left)},refresh:function(){this.$refs.elem&&(this.getStaticData(),this.setPosition())}},mounted:function(){var t=this;\"undefined\"!=typeof window&&\"undefined\"!=typeof document&&this.$nextTick(function(){t.getStaticData(),t.setValue(t.value,!0,0),t.bindEvents()})},beforeDestroy:function(){this.unbindEvents()}}},function(t,e,i){\"use strict\";var s=i(0);t.exports=s},function(t,e,i){e=t.exports=i(4)(),e.push([t.i,'.vue-slider-component{position:relative;-webkit-box-sizing:border-box;box-sizing:border-box;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.vue-slider-component.vue-slider-disabled{opacity:.5;cursor:not-allowed}.vue-slider-component.vue-slider-has-label{margin-bottom:15px}.vue-slider-component.vue-slider-disabled .vue-slider-dot{cursor:not-allowed}.vue-slider-component .vue-slider{position:relative;display:block;border-radius:15px;background-color:#ccc}.vue-slider-component .vue-slider:after{content:\"\";position:absolute;left:0;top:0;width:100%;height:100%;z-index:2}.vue-slider-component .vue-slider-process{position:absolute;border-radius:15px;background-color:#3498db;-webkit-transition:all 0s;transition:all 0s;z-index:1}.vue-slider-component.vue-slider-horizontal .vue-slider-process{width:0;height:100%;top:0;left:0;will-change:width}.vue-slider-component.vue-slider-vertical .vue-slider-process{width:100%;height:0;bottom:0;left:0;will-change:height}.vue-slider-component.vue-slider-horizontal-reverse .vue-slider-process{width:0;height:100%;top:0;right:0}.vue-slider-component.vue-slider-vertical-reverse .vue-slider-process{width:100%;height:0;top:0;left:0}.vue-slider-component .vue-slider-dot{position:absolute;border-radius:50%;background-color:#fff;-webkit-box-shadow:.5px .5px 2px 1px rgba(0,0,0,.32);box-shadow:.5px .5px 2px 1px rgba(0,0,0,.32);-webkit-transition:all 0s;transition:all 0s;will-change:transform;cursor:pointer;z-index:3}.vue-slider-component.vue-slider-horizontal .vue-slider-dot{left:0}.vue-slider-component.vue-slider-vertical .vue-slider-dot{bottom:0}.vue-slider-component.vue-slider-horizontal-reverse .vue-slider-dot{right:0}.vue-slider-component.vue-slider-vertical-reverse .vue-slider-dot{top:0}.vue-slider-component .vue-slider-tooltip-wrap{display:none;position:absolute;z-index:9}.vue-slider-component .vue-slider-tooltip{display:block;font-size:14px;white-space:nowrap;padding:2px 5px;min-width:20px;text-align:center;color:#fff;border-radius:5px;border:1px solid #3498db;background-color:#3498db}.vue-slider-component .vue-slider-tooltip-wrap.vue-slider-tooltip-top{top:-9px;left:50%;-webkit-transform:translate(-50%,-100%);transform:translate(-50%,-100%)}.vue-slider-component .vue-slider-tooltip-wrap.vue-slider-tooltip-bottom{bottom:-9px;left:50%;-webkit-transform:translate(-50%,100%);transform:translate(-50%,100%)}.vue-slider-component .vue-slider-tooltip-wrap.vue-slider-tooltip-left{top:50%;left:-9px;-webkit-transform:translate(-100%,-50%);transform:translate(-100%,-50%)}.vue-slider-component .vue-slider-tooltip-wrap.vue-slider-tooltip-right{top:50%;right:-9px;-webkit-transform:translate(100%,-50%);transform:translate(100%,-50%)}.vue-slider-component .vue-slider-tooltip-wrap.vue-slider-tooltip-top .vue-slider-tooltip:before{content:\"\";position:absolute;bottom:-10px;left:50%;width:0;height:0;border:5px solid transparent;border:6px solid transparent\\\\0;border-top-color:inherit;-webkit-transform:translate(-50%);transform:translate(-50%)}.vue-slider-component .vue-slider-tooltip-wrap.vue-slider-tooltip-bottom .vue-slider-tooltip:before{content:\"\";position:absolute;top:-10px;left:50%;width:0;height:0;border:5px solid transparent;border:6px solid transparent\\\\0;border-bottom-color:inherit;-webkit-transform:translate(-50%);transform:translate(-50%)}.vue-slider-component .vue-slider-tooltip-wrap.vue-slider-tooltip-left .vue-slider-tooltip:before{content:\"\";position:absolute;top:50%;right:-10px;width:0;height:0;border:5px solid transparent;border:6px solid transparent\\\\0;border-left-color:inherit;-webkit-transform:translateY(-50%);transform:translateY(-50%)}.vue-slider-component .vue-slider-tooltip-wrap.vue-slider-tooltip-right .vue-slider-tooltip:before{content:\"\";position:absolute;top:50%;left:-10px;width:0;height:0;border:5px solid transparent;border:6px solid transparent\\\\0;border-right-color:inherit;-webkit-transform:translateY(-50%);transform:translateY(-50%)}.vue-slider-component .vue-slider-dot.vue-slider-hover:hover .vue-slider-tooltip-wrap{display:block}.vue-slider-component .vue-slider-dot.vue-slider-always .vue-slider-tooltip-wrap{display:block!important}.vue-slider-component .vue-slider-piecewise{position:absolute;width:100%;padding:0;margin:0;left:0;top:0;height:100%;list-style:none}.vue-slider-component .vue-slider-piecewise-item{position:absolute;width:8px;height:8px}.vue-slider-component .vue-slider-piecewise-dot{position:absolute;left:50%;top:50%;width:100%;height:100%;display:inline-block;background-color:rgba(0,0,0,.16);border-radius:50%;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%);z-index:2;-webkit-transition:all .3s;transition:all .3s}.vue-slider-component .vue-slider-piecewise-item:first-child .vue-slider-piecewise-dot,.vue-slider-component .vue-slider-piecewise-item:last-child .vue-slider-piecewise-dot{visibility:hidden}.vue-slider-component.vue-slider-horizontal-reverse .vue-slider-piecewise-label,.vue-slider-component.vue-slider-horizontal .vue-slider-piecewise-label{position:absolute;display:inline-block;top:100%;left:50%;white-space:nowrap;font-size:12px;color:#333;-webkit-transform:translate(-50%,8px);transform:translate(-50%,8px);visibility:visible}.vue-slider-component.vue-slider-vertical-reverse .vue-slider-piecewise-label,.vue-slider-component.vue-slider-vertical .vue-slider-piecewise-label{position:absolute;display:inline-block;top:50%;left:100%;white-space:nowrap;font-size:12px;color:#333;-webkit-transform:translate(8px,-50%);transform:translate(8px,-50%);visibility:visible}.vue-slider-component .vue-slider-sr-only{clip:rect(1px,1px,1px,1px);height:1px;width:1px;overflow:hidden;position:absolute!important}',\"\"])},function(t,e){t.exports=function(){var t=[];return t.toString=function(){for(var t=[],e=0;e<this.length;e++){var i=this[e];i[2]?t.push(\"@media \"+i[2]+\"{\"+i[1]+\"}\"):t.push(i[1])}return t.join(\"\")},t.i=function(e,i){\"string\"==typeof e&&(e=[[null,e,\"\"]]);for(var s={},r=0;r<this.length;r++){var n=this[r][0];\"number\"==typeof n&&(s[n]=!0)}for(r=0;r<e.length;r++){var o=e[r];\"number\"==typeof o[0]&&s[o[0]]||(i&&!o[2]?o[2]=i:i&&(o[2]=\"(\"+o[2]+\") and (\"+i+\")\"),t.push(o))}},t}},function(t,e){t.exports=function(t,e,i,s){var r,n=t=t||{},o=typeof t.default;\"object\"!==o&&\"function\"!==o||(r=t,n=t.default);var l=\"function\"==typeof n?n.options:n;if(e&&(l.render=e.render,l.staticRenderFns=e.staticRenderFns),i&&(l._scopeId=i),s){var a=Object.create(l.computed||null);Object.keys(s).forEach(function(t){var e=s[t];a[t]=function(){return e}}),l.computed=a}return{esModule:r,exports:n,options:l}}},function(t,e){t.exports={render:function(){var t=this,e=t.$createElement,i=t._self._c||e;return i(\"div\",{directives:[{name:\"show\",rawName:\"v-show\",value:t.show,expression:\"show\"}],ref:\"wrap\",class:[\"vue-slider-component\",t.flowDirection,t.disabledClass,{\"vue-slider-has-label\":t.piecewiseLabel}],style:t.wrapStyles,on:{click:t.wrapClick}},[i(\"div\",{ref:\"elem\",staticClass:\"vue-slider\",style:[t.elemStyles,t.bgStyle],attrs:{\"aria-hidden\":\"true\"}},[t.isRange?[i(\"div\",{ref:\"dot0\",class:[t.tooltipStatus,\"vue-slider-dot\"],style:[t.dotStyles,t.sliderStyles[0]],on:{mousedown:function(e){t.moveStart(0)},touchstart:function(e){t.moveStart(0)}}},[i(\"span\",{class:[\"vue-slider-tooltip-\"+t.tooltipDirection[0],\"vue-slider-tooltip-wrap\"]},[t._t(\"tooltip\",[i(\"span\",{staticClass:\"vue-slider-tooltip\",style:t.tooltipStyles[0]},[t._v(t._s(t.formatter?t.formatting(t.val[0]):t.val[0]))])],{value:t.val[0],index:0})],2)]),t._v(\" \"),i(\"div\",{ref:\"dot1\",class:[t.tooltipStatus,\"vue-slider-dot\"],style:[t.dotStyles,t.sliderStyles[1]],on:{mousedown:function(e){t.moveStart(1)},touchstart:function(e){t.moveStart(1)}}},[i(\"span\",{class:[\"vue-slider-tooltip-\"+t.tooltipDirection[1],\"vue-slider-tooltip-wrap\"]},[t._t(\"tooltip\",[i(\"span\",{staticClass:\"vue-slider-tooltip\",style:t.tooltipStyles[1]},[t._v(t._s(t.formatter?t.formatting(t.val[1]):t.val[1]))])],{value:t.val[1],index:1})],2)])]:[i(\"div\",{ref:\"dot\",class:[t.tooltipStatus,\"vue-slider-dot\"],style:[t.dotStyles,t.sliderStyles],on:{mousedown:t.moveStart,touchstart:t.moveStart}},[i(\"span\",{class:[\"vue-slider-tooltip-\"+t.tooltipDirection,\"vue-slider-tooltip-wrap\"]},[t._t(\"tooltip\",[i(\"span\",{staticClass:\"vue-slider-tooltip\",style:t.tooltipStyles},[t._v(t._s(t.formatter?t.formatting(t.val):t.val))])],{value:t.val})],2)])],t._v(\" \"),i(\"ul\",{staticClass:\"vue-slider-piecewise\"},t._l(t.piecewiseDotWrap,function(e,s){return i(\"li\",{key:s,staticClass:\"vue-slider-piecewise-item\",style:[t.piecewiseDotStyle,e.style]},[t._t(\"piecewise\",[t.piecewise?i(\"span\",{staticClass:\"vue-slider-piecewise-dot\",style:[t.piecewiseStyle,e.inRange?t.piecewiseActiveStyle:null]}):t._e()],{label:e.label,index:s,first:0===s,last:s===t.piecewiseDotWrap.length-1}),t._v(\" \"),t._t(\"label\",[t.piecewiseLabel?i(\"span\",{staticClass:\"vue-slider-piecewise-label\",style:[t.labelStyle,e.inRange?t.labelActiveStyle:null]},[t._v(\"\\n\\t\\t\\t\\t\\t\\t\"+t._s(e.label)+\"\\n\\t\\t\\t\\t\\t\")]):t._e()],{label:e.label,index:s,first:0===s,last:s===t.piecewiseDotWrap.length-1})],2)})),t._v(\" \"),i(\"div\",{ref:\"process\",staticClass:\"vue-slider-process\",style:t.processStyle})],2),t._v(\" \"),t.isRange||t.data?t._e():i(\"input\",{directives:[{name:\"model\",rawName:\"v-model\",value:t.val,expression:\"val\"}],staticClass:\"vue-slider-sr-only\",attrs:{type:\"range\",min:t.min,max:t.max},domProps:{value:t.val},on:{__r:function(e){t.val=e.target.value}}})])},staticRenderFns:[]}},function(t,e,i){var s=i(3);\"string\"==typeof s&&(s=[[t.i,s,\"\"]]),s.locals&&(t.exports=s.locals);i(8)(\"743d98f5\",s,!0)},function(t,e,i){function s(t){for(var e=0;e<t.length;e++){var i=t[e],s=h[i.id];if(s){s.refs++;for(var r=0;r<s.parts.length;r++)s.parts[r](i.parts[r]);for(;r<i.parts.length;r++)s.parts.push(n(i.parts[r]));s.parts.length>i.parts.length&&(s.parts.length=i.parts.length)}else{for(var o=[],r=0;r<i.parts.length;r++)o.push(n(i.parts[r]));h[i.id]={id:i.id,refs:1,parts:o}}}}function r(){var t=document.createElement(\"style\");return t.type=\"text/css\",d.appendChild(t),t}function n(t){var e,i,s=document.querySelector('style[data-vue-ssr-id~=\"'+t.id+'\"]');if(s){if(f)return v;s.parentNode.removeChild(s)}if(m){var n=c++;s=p||(p=r()),e=o.bind(null,s,n,!1),i=o.bind(null,s,n,!0)}else s=r(),e=l.bind(null,s),i=function(){s.parentNode.removeChild(s)};return e(t),function(s){if(s){if(s.css===t.css&&s.media===t.media&&s.sourceMap===t.sourceMap)return;e(t=s)}else i()}}function o(t,e,i,s){var r=i?\"\":s.css;if(t.styleSheet)t.styleSheet.cssText=g(e,r);else{var n=document.createTextNode(r),o=t.childNodes;o[e]&&t.removeChild(o[e]),o.length?t.insertBefore(n,o[e]):t.appendChild(n)}}function l(t,e){var i=e.css,s=e.media,r=e.sourceMap;if(s&&t.setAttribute(\"media\",s),r&&(i+=\"\\n/*# sourceURL=\"+r.sources[0]+\" */\",i+=\"\\n/*# sourceMappingURL=data:application/json;base64,\"+btoa(unescape(encodeURIComponent(JSON.stringify(r))))+\" */\"),t.styleSheet)t.styleSheet.cssText=i;else{for(;t.firstChild;)t.removeChild(t.firstChild);t.appendChild(document.createTextNode(i))}}var a=\"undefined\"!=typeof document;if(\"undefined\"!=typeof DEBUG&&DEBUG&&!a)throw new Error(\"vue-style-loader cannot be used in a non-browser environment. Use { target: 'node' } in your Webpack config to indicate a server-rendering environment.\");var u=i(9),h={},d=a&&(document.head||document.getElementsByTagName(\"head\")[0]),p=null,c=0,f=!1,v=function(){},m=\"undefined\"!=typeof navigator&&/msie [6-9]\\b/.test(navigator.userAgent.toLowerCase());t.exports=function(t,e,i){f=i;var r=u(t,e);return s(r),function(e){for(var i=[],n=0;n<r.length;n++){var o=r[n],l=h[o.id];l.refs--,i.push(l)}e?(r=u(t,e),s(r)):r=[];for(var n=0;n<i.length;n++){var l=i[n];if(0===l.refs){for(var a=0;a<l.parts.length;a++)l.parts[a]();delete h[l.id]}}}};var g=function(){var t=[];return function(e,i){return t[e]=i,t.filter(Boolean).join(\"\\n\")}}()},function(t,e){t.exports=function(t,e){for(var i=[],s={},r=0;r<e.length;r++){var n=e[r],o=n[0],l=n[1],a=n[2],u=n[3],h={id:t+\":\"+r,css:l,media:a,sourceMap:u};s[o]?s[o].parts.push(h):i.push(s[o]={id:o,parts:[h]})}return i}}])});\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/vue-slider-component/dist/index.js\n// module id = 15\n// module chunks = 0","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{attrs:{\"id\":\"geshem\"}},[_c('div',{attrs:{\"id\":\"datetime\"}},[_c('div',{attrs:{\"id\":\"date\"}},[_vm._v(_vm._s(_vm.date))]),_vm._v(\" \"),_c('div',{attrs:{\"id\":\"time\"}},[_vm._v(_vm._s(_vm.time))])]),_vm._v(\" \"),_c('div',{attrs:{\"id\":\"slider\"}},[_c('vue-slider',{ref:\"slider\",attrs:{\"min\":1,\"max\":7,\"height\":20,\"dot-size\":45,\"tooltip\":false},model:{value:(_vm.slider),callback:function ($$v) {_vm.slider=$$v},expression:\"slider\"}})],1)])}\nvar staticRenderFns = []\nvar esExports = { render: render, staticRenderFns: staticRenderFns }\nexport default esExports\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/vue-loader/lib/template-compiler?{\"id\":\"data-v-7d220ade\",\"hasScoped\":false,\"buble\":{\"transforms\":{}}}!./node_modules/vue-loader/lib/selector.js?type=template&index=0!./Geshem.vue\n// module id = 16\n// module chunks = 0"],"sourceRoot":""} \ No newline at end of file
diff --git a/webpack.config.js b/webpack.config.js
index 62d5f06..6998c8f 100644
--- a/webpack.config.js
+++ b/webpack.config.js
@@ -61,7 +61,8 @@ if (process.env.NODE_ENV === 'production') {
new webpack.optimize.UglifyJsPlugin({
sourceMap: true,
compress: {
- warnings: false
+ warnings: false,
+ comparisons: false // workaround for https://github.com/mapbox/mapbox-gl-js/issues/4359
}
}),
new webpack.LoaderOptionsPlugin({