diff options
Diffstat (limited to 'static/js/build.js.map')
| -rw-r--r-- | static/js/build.js.map | 2 |
1 files changed, 1 insertions, 1 deletions
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","<",">",""","&"," ","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&¤tQueue&&(draining=!1,currentQueue.length?queue=currentQueue.concat(queue):queueIndex=-1,queue.length&&drainQueue())}function drainQueue(){if(!draining){var e=runTimeout(cleanUpNextTick);draining=!0;for(var t=queue.length;t;){for(currentQueue=queue,queue=[];++queueIndex<t;)currentQueue&¤tQueue[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=\"×\",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', ' ') : 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 '<': '<',\n '>': '>',\n '"': '\"',\n '&': '&',\n ' ': '\\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&¤tQueue&&(draining=!1,currentQueue.length?queue=currentQueue.concat(queue):queueIndex=-1,queue.length&&drainQueue())}function drainQueue(){if(!draining){var e=runTimeout(cleanUpNextTick);draining=!0;for(var t=queue.length;t;){for(currentQueue=queue,queue=[];++queueIndex<t;)currentQueue&¤tQueue[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=\"×\",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', ' ') : 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 '<': '<',\n '>': '>',\n '"': '\"',\n '&': '&',\n ' ': '\\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","<",">",""","&"," ","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":"CAAS,SAAUA,GCInB,QAAAC,GAAAC,GAGA,GAAAC,EAAAD,GACA,MAAAC,GAAAD,GAAAE,OAGA,IAAAC,GAAAF,EAAAD,IACAI,EAAAJ,EACAK,GAAA,EACAH,WAUA,OANAJ,GAAAE,GAAAM,KAAAH,EAAAD,QAAAC,IAAAD,QAAAH,GAGAI,EAAAE,GAAA,EAGAF,EAAAD,QAvBA,GAAAD,KA4BAF,GAAAQ,EAAAT,EAGAC,EAAAS,EAAAP,EAGAF,EAAAU,EAAA,SAAAP,EAAAQ,EAAAC,GACAZ,EAAAa,EAAAV,EAAAQ,IACAG,OAAAC,eAAAZ,EAAAQ,GACAK,cAAA,EACAC,YAAA,EACAC,IAAAN,KAMAZ,EAAAmB,EAAA,SAAAf,GACA,GAAAQ,GAAAR,KAAAgB,WACA,WAA2B,MAAAhB,GAAA,SAC3B,WAAiC,MAAAA,GAEjC,OADAJ,GAAAU,EAAAE,EAAA,IAAAA,GACAA,GAIAZ,EAAAa,EAAA,SAAAQ,EAAAC,GAAsD,MAAAR,QAAAS,UAAAC,eAAAjB,KAAAc,EAAAC,IAGtDtB,EAAAyB,EAAA,cAGAzB,IAAA0B,EAAA,KDMM,SAAUtB,EAAQD,GEnExB,GAAAwB,EAGAA,GAAA,WACA,MAAAC,QAGA,KAEAD,KAAAE,SAAA,qBAAAC,MAAA,QACC,MAAAC,GAED,iBAAAC,UACAL,EAAAK,QAOA5B,EAAAD,QAAAwB,GF0EM,SAAUvB,EAAQD,EAASH,IAEL,SAASiC,GAAS,GAAIC,GGhGlDA,GAAA,SAAAC,GAAwE/B,EAAAD,QAAAgC,KAA0P,WAAa,GAAAC,EAA0B,gBAAAL,GAAAM,EAAAlB,EAAAmB,GAA0B,QAAAZ,GAAAb,EAAA0B,GAAgB,IAAApB,EAAAN,GAAA,CAAU,IAAAwB,EAAAxB,GAAA,CAAU,GAAA2B,GAAA,kBAAAN,KAA0C,KAAAK,GAAAC,EAAA,MAAAN,GAAArB,GAAA,EAAwB,IAAAR,EAAA,MAAAA,GAAAQ,GAAA,EAAoB,IAAAsB,GAAA,GAAAM,OAAA,uBAAA5B,EAAA,IAA8C,MAAAsB,GAAAO,KAAA,mBAAAP,EAAkC,GAAA7B,GAAAa,EAAAN,IAAYV,WAAYkC,GAAAxB,GAAA,GAAAN,KAAAD,EAAAH,QAAA,SAAA4B,GAAmC,GAAAZ,GAAAkB,EAAAxB,GAAA,GAAAkB,EAAiB,OAAAL,GAAAP,GAAAY,IAAgBzB,IAAAH,QAAA4B,EAAAM,EAAAlB,EAAAmB,GAAsB,MAAAnB,GAAAN,GAAAV,QAA8D,OAA1CE,GAAA,kBAAA6B,MAA0CrB,EAAA,EAAYA,EAAAyB,EAAAK,OAAW9B,IAAAa,EAAAY,EAAAzB,GAAY,OAAAa,KAAYkB,GAAA,SAAAC,EAAAzC,EAAAD,IAC5yB,SAAAkC,EAAAlB,GAAe,gBAAAhB,IAAA,mBAAAC,KAAAD,QAAAgB,IAAA,kBAAAiB,MAAAU,IAAAV,EAAAjB,GAAAkB,EAAAU,SAAA5B,KAAuIS,KAAA,WAAiB,YAAa,SAAAS,KAAAlB,EAAAmB,GAAkB,GAAAP,GAAAZ,EAAA,GAAAqB,EAAArB,EAAA,GAAAN,EAAAM,EAAA,EAAyB,OAAAkB,GAAA,GAAAN,EAAAO,EAAA,GAAAE,EAAAF,EAAA,GAAAzB,EAAAyB,EAAA,GAAAD,EAAA,GAAAN,EAAAO,EAAA,GAAAE,EAAAF,EAAA,GAAAzB,EAAAyB,EAAA,GAAAD,EAAA,GAAAN,EAAAO,EAAA,GAAAE,EAAAF,EAAA,GAAAzB,EAAAyB,EAAA,GAAAD,EAAuF,QAAAlB,GAAAkB,EAAAlB,EAAAmB,GAAkB,GAAAP,GAAAZ,EAAA,GAAAqB,EAAArB,EAAA,GAAAN,EAAAM,EAAA,GAAAoB,EAAApB,EAAA,EAAgC,OAAAkB,GAAA,GAAAC,EAAA,GAAAP,EAAAO,EAAA,GAAAE,EAAAF,EAAA,GAAAzB,EAAAyB,EAAA,IAAAC,EAAAF,EAAA,GAAAC,EAAA,GAAAP,EAAAO,EAAA,GAAAE,EAAAF,EAAA,GAAAzB,EAAAyB,EAAA,IAAAC,EAAAF,EAAA,GAAAC,EAAA,GAAAP,EAAAO,EAAA,GAAAE,EAAAF,EAAA,IAAAzB,EAAAyB,EAAA,IAAAC,EAAAF,EAAA,GAAAC,EAAA,GAAAP,EAAAO,EAAA,GAAAE,EAAAF,EAAA,IAAAzB,EAAAyB,EAAA,IAAAC,EAAAF,EAAmJ,QAAAC,KAAa,GAAAD,GAAA,GAAAW,cAAA,EAA0B,OAAAX,GAAA,KAAAA,EAAA,KAAAA,EAAA,KAAAA,EAAA,KAAAA,EAAqC,QAAAN,GAAAM,EAAAlB,EAAAmB,GAAkB,GAAAP,GAAAZ,EAAA,GAAAqB,EAAArB,EAAA,GAAAN,EAAAM,EAAA,GAAAoB,EAAApB,EAAA,GAAAd,EAAA4C,KAAAC,IAAAZ,GAAA7B,EAAAwC,KAAAE,IAAAb,EAA4D,OAAAD,GAAA,GAAAN,EAAAtB,EAAAI,EAAAR,EAAAgC,EAAA,GAAAG,EAAA/B,EAAA8B,EAAAlC,EAAAgC,EAAA,GAAAN,GAAA1B,EAAAQ,EAAAJ,EAAA4B,EAAA,GAAAG,GAAAnC,EAAAkC,EAAA9B,EAAA4B,EAA+D,QAAAG,GAAAH,EAAAlB,EAAAmB,GAAkB,GAAAP,GAAAZ,EAAA,GAAAqB,EAAArB,EAAA,GAAAN,EAAAM,EAAA,GAAAoB,EAAApB,EAAA,GAAAd,EAAAiC,EAAA,GAAA7B,EAAA6B,EAAA,EAA8C,OAAAD,GAAA,GAAAN,EAAA1B,EAAAgC,EAAA,GAAAG,EAAAnC,EAAAgC,EAAA,GAAAxB,EAAAJ,EAAA4B,EAAA,GAAAE,EAAA9B,EAAA4B,EAA6C,QAAAxB,KAAa,GAAAwB,GAAA,GAAAW,cAAA,EAA0B,OAAAX,GAAA,KAAAA,EAAA,KAAAA,EAAA,KAAAA,EAAA,KAAAA,EAAA,KAAAA,EAAA,KAAAA,EAAA,KAAAA,EAAA,KAAAA,EAAA,KAAAA,EAAwE,QAAAE,GAAAF,EAAAlB,GAAgB,GAAAmB,GAAAW,KAAAC,IAAA/B,GAAAY,EAAAkB,KAAAE,IAAAhC,EAAgC,OAAAkB,GAAA,GAAAN,EAAAM,EAAA,GAAAC,EAAAD,EAAA,KAAAA,EAAA,IAAAC,EAAAD,EAAA,GAAAN,EAAAM,EAAA,KAAAA,EAAA,KAAAA,EAAA,KAAAA,EAAA,KAAAA,EAAyE,QAAAhC,KAAa,GAAAgC,GAAA,GAAAW,cAAA,GAA2B,OAAAX,GAAA,KAAAA,EAAA,KAAAA,EAAA,KAAAA,EAAA,KAAAA,EAAA,KAAAA,EAAA,KAAAA,EAAA,KAAAA,EAAA,KAAAA,EAAA,KAAAA,EAAA,KAAAA,EAAA,MAAAA,EAAA,MAAAA,EAAA,MAAAA,EAAA,MAAAA,EAAA,MAAAA,EAAA,MAAAA,EAA+H,QAAA5B,GAAA4B,GAAc,MAAAA,GAAA,KAAAA,EAAA,KAAAA,EAAA,KAAAA,EAAA,KAAAA,EAAA,KAAAA,EAAA,KAAAA,EAAA,KAAAA,EAAA,KAAAA,EAAA,KAAAA,EAAA,KAAAA,EAAA,MAAAA,EAAA,MAAAA,EAAA,MAAAA,EAAA,MAAAA,EAAA,MAAAA,EAAA,MAAAA,EAA+H,QAAAF,GAAAE,EAAAlB,GAAgB,GAAAmB,GAAAnB,EAAA,GAAAY,EAAAZ,EAAA,GAAAqB,EAAArB,EAAA,GAAAN,EAAAM,EAAA,GAAAoB,EAAApB,EAAA,GAAAd,EAAAc,EAAA,GAAAV,EAAAU,EAAA,GAAAgB,EAAAhB,EAAA,GAAAiC,EAAAjC,EAAA,GAAAO,EAAAP,EAAA,GAAAb,EAAAa,EAAA,IAAAkC,EAAAlC,EAAA,IAAAmC,EAAAnC,EAAA,IAAAX,EAAAW,EAAA,IAAAoC,EAAApC,EAAA,IAAAT,EAAAS,EAAA,IAAAM,EAAAa,EAAAjC,EAAA0B,EAAAQ,EAAAiB,EAAAlB,EAAA7B,EAAA+B,EAAAD,EAAAkB,EAAAnB,EAAAH,EAAAtB,EAAA0B,EAAAmB,EAAA3B,EAAAtB,EAAA+B,EAAAnC,EAAAsD,EAAA5B,EAAAI,EAAAtB,EAAAR,EAAAuD,EAAApB,EAAAL,EAAAtB,EAAAJ,EAAAkB,EAAAyB,EAAA5C,EAAAkB,EAAA4B,EAAAO,EAAAT,EAAAG,EAAAjD,EAAAgD,EAAAQ,EAAAV,EAAA1C,EAAA2C,EAAAC,EAAAS,EAAArC,EAAA6B,EAAAjD,EAAAE,EAAAwD,EAAAtC,EAAAhB,EAAA2C,EAAA7C,EAAAyD,EAAA3D,EAAAI,EAAA2C,EAAAE,EAAAW,EAAAzC,EAAAwC,EAAAT,EAAAQ,EAAAP,EAAAM,EAAAL,EAAAI,EAAAH,EAAAE,EAAAD,EAAAjC,CAA4Q,OAAAuC,MAAA,EAAAA,EAAA7B,EAAA,IAAAhC,EAAA4D,EAAAxD,EAAAuD,EAAA7B,EAAA4B,GAAAG,EAAA7B,EAAA,IAAAG,EAAAwB,EAAAjC,EAAAkC,EAAApD,EAAAkD,GAAAG,EAAA7B,EAAA,IAAA7B,EAAAoD,EAAAL,EAAAI,EAAAjD,EAAAgD,GAAAQ,EAAA7B,EAAA,IAAA/B,EAAAqD,EAAAjC,EAAAkC,EAAAP,EAAAK,GAAAQ,EAAA7B,EAAA,IAAA5B,EAAAqD,EAAAvB,EAAA0B,EAAA9B,EAAA0B,GAAAK,EAAA7B,EAAA,IAAAC,EAAA2B,EAAAzB,EAAAsB,EAAAjD,EAAAgD,GAAAK,EAAA7B,EAAA,IAAAkB,EAAAE,EAAAH,EAAAM,EAAAlD,EAAA8C,GAAAU,EAAA7B,EAAA,IAAAe,EAAAQ,EAAAtD,EAAAmD,EAAAJ,EAAAG,GAAAU,EAAA7B,EAAA,IAAAE,EAAAyB,EAAA3D,EAAAyD,EAAA3B,EAAAR,GAAAuC,EAAA7B,EAAA,IAAAN,EAAA+B,EAAAxB,EAAA0B,EAAAnD,EAAAc,GAAAuC,EAAA7B,EAAA,KAAAiB,EAAAK,EAAAnD,EAAAiD,EAAA/C,EAAAe,GAAAyC,EAAA7B,EAAA,KAAAX,EAAA+B,EAAAL,EAAAO,EAAAN,EAAA5B,GAAAyC,EAAA7B,EAAA,KAAAhC,EAAAwD,EAAAtB,EAAAwB,EAAAtD,EAAAkB,GAAAuC,EAAA7B,EAAA,KAAAC,EAAAyB,EAAAhC,EAAA8B,EAAArB,EAAAb,GAAAuC,EAAA7B,EAAA,KAAA7B,EAAAgD,EAAAF,EAAAI,EAAAH,EAAA9B,GAAAyC,EAAA7B,EAAA,KAAAe,EAAAM,EAAAhC,EAAA8B,EAAAlD,EAAAmB,GAAAyC,EAAA7B,GAAA,KAA8W,QAAAe,GAAAf,EAAAlB,EAAAmB,GAAkB,GAAAP,GAAAZ,EAAA,GAAAqB,EAAArB,EAAA,GAAAN,EAAAM,EAAA,GAAAoB,EAAApB,EAAA,GAAAd,EAAAc,EAAA,GAAAV,EAAAU,EAAA,GAAAgB,EAAAhB,EAAA,GAAAiC,EAAAjC,EAAA,GAAAO,EAAAP,EAAA,GAAAb,EAAAa,EAAA,GAAAkC,EAAAlC,EAAA,IAAAmC,EAAAnC,EAAA,IAAAX,EAAAW,EAAA,IAAAoC,EAAApC,EAAA,IAAAT,EAAAS,EAAA,IAAAM,EAAAN,EAAA,IAAAqC,EAAAlB,EAAA,GAAAmB,EAAAnB,EAAA,GAAAoB,EAAApB,EAAA,GAAAqB,EAAArB,EAAA,EAAsJ,OAAAD,GAAA,GAAAmB,EAAAzB,EAAA0B,EAAApD,EAAAqD,EAAAhC,EAAAiC,EAAAnD,EAAA6B,EAAA,GAAAmB,EAAAhB,EAAAiB,EAAAhD,EAAAiD,EAAApD,EAAAqD,EAAAJ,EAAAlB,EAAA,GAAAmB,EAAA3C,EAAA4C,EAAAtB,EAAAuB,EAAAL,EAAAM,EAAAjD,EAAA2B,EAAA,GAAAmB,EAAAjB,EAAAkB,EAAAL,EAAAM,EAAAJ,EAAAK,EAAAlC,EAAA+B,EAAAlB,EAAA,GAAAmB,EAAAnB,EAAA,GAAAoB,EAAApB,EAAA,GAAAqB,EAAArB,EAAA,GAAAD,EAAA,GAAAmB,EAAAzB,EAAA0B,EAAApD,EAAAqD,EAAAhC,EAAAiC,EAAAnD,EAAA6B,EAAA,GAAAmB,EAAAhB,EAAAiB,EAAAhD,EAAAiD,EAAApD,EAAAqD,EAAAJ,EAAAlB,EAAA,GAAAmB,EAAA3C,EAAA4C,EAAAtB,EAAAuB,EAAAL,EAAAM,EAAAjD,EAAA2B,EAAA,GAAAmB,EAAAjB,EAAAkB,EAAAL,EAAAM,EAAAJ,EAAAK,EAAAlC,EAAA+B,EAAAlB,EAAA,GAAAmB,EAAAnB,EAAA,GAAAoB,EAAApB,EAAA,IAAAqB,EAAArB,EAAA,IAAAD,EAAA,GAAAmB,EAAAzB,EAAA0B,EAAApD,EAAAqD,EAAAhC,EAAAiC,EAAAnD,EAAA6B,EAAA,GAAAmB,EAAAhB,EAAAiB,EAAAhD,EAAAiD,EAAApD,EAAAqD,EAAAJ,EAAAlB,EAAA,IAAAmB,EAAA3C,EAAA4C,EAAAtB,EAAAuB,EAAAL,EAAAM,EAAAjD,EAAA2B,EAAA,IAAAmB,EAAAjB,EAAAkB,EAAAL,EAAAM,EAAAJ,EAAAK,EAAAlC,EAAA+B,EAAAlB,EAAA,IAAAmB,EAAAnB,EAAA,IAAAoB,EAAApB,EAAA,IAAAqB,EAAArB,EAAA,IAAAD,EAAA,IAAAmB,EAAAzB,EAAA0B,EAAApD,EAAAqD,EAAAhC,EAAAiC,EAAAnD,EAAA6B,EAAA,IAAAmB,EAAAhB,EAAAiB,EAAAhD,EAAAiD,EAAApD,EAAAqD,EAAAJ,EAAAlB,EAAA,IAAAmB,EAAA3C,EAAA4C,EAAAtB,EAAAuB,EAAAL,EAAAM,EAAAjD,EAAA2B,EAAA,IAAAmB,EAAAjB,EAAAkB,EAAAL,EAAAM,EAAAJ,EAAAK,EAAAlC,EAAAY,EAAyb,QAAAX,GAAAW,EAAAlB,EAAAmB,GAAkB,GAAAP,GAAAS,EAAA3B,EAAA0B,EAAAlC,EAAAI,EAAA0B,EAAAiB,EAAA1B,EAAApB,EAAA+C,EAAAC,EAAA9C,EAAA8B,EAAA,GAAAiB,EAAAjB,EAAA,GAAA5B,EAAA4B,EAAA,EAAiD,OAAAnB,KAAAkB,KAAA,IAAAlB,EAAA,GAAAX,EAAAW,EAAA,GAAAoC,EAAApC,EAAA,GAAAT,EAAAS,EAAA,IAAAkB,EAAA,IAAAlB,EAAA,GAAAX,EAAAW,EAAA,GAAAoC,EAAApC,EAAA,GAAAT,EAAAS,EAAA,IAAAkB,EAAA,IAAAlB,EAAA,GAAAX,EAAAW,EAAA,GAAAoC,EAAApC,EAAA,IAAAT,EAAAS,EAAA,IAAAkB,EAAA,IAAAlB,EAAA,GAAAX,EAAAW,EAAA,GAAAoC,EAAApC,EAAA,IAAAT,EAAAS,EAAA,MAAAY,EAAAZ,EAAA,GAAAqB,EAAArB,EAAA,GAAAN,EAAAM,EAAA,GAAAoB,EAAApB,EAAA,GAAAd,EAAAc,EAAA,GAAAV,EAAAU,EAAA,GAAAgB,EAAAhB,EAAA,GAAAiC,EAAAjC,EAAA,GAAAO,EAAAP,EAAA,GAAAb,EAAAa,EAAA,GAAAkC,EAAAlC,EAAA,IAAAmC,EAAAnC,EAAA,IAAAkB,EAAA,GAAAN,EAAAM,EAAA,GAAAG,EAAAH,EAAA,GAAAxB,EAAAwB,EAAA,GAAAE,EAAAF,EAAA,GAAAhC,EAAAgC,EAAA,GAAA5B,EAAA4B,EAAA,GAAAF,EAAAE,EAAA,GAAAe,EAAAf,EAAA,GAAAX,EAAAW,EAAA,GAAA/B,EAAA+B,EAAA,IAAAgB,EAAAhB,EAAA,IAAAiB,EAAAjB,EAAA,IAAAN,EAAAvB,EAAAH,EAAAkD,EAAA7B,EAAAhB,EAAAS,EAAA,IAAAkB,EAAA,IAAAG,EAAAhC,EAAAC,EAAA8C,EAAAjD,EAAAI,EAAAS,EAAA,IAAAkB,EAAA,IAAAxB,EAAAL,EAAA2B,EAAAoB,EAAAF,EAAA3C,EAAAS,EAAA,IAAAkB,EAAA,IAAAE,EAAA/B,EAAA4C,EAAAG,EAAAD,EAAA5C,EAAAS,EAAA,KAAAkB,EAAqa,QAAA/B,GAAA+B,EAAAlB,EAAAmB,GAAkB,GAAAP,GAAAO,EAAA,GAAAE,EAAAF,EAAA,GAAAzB,EAAAyB,EAAA,EAAyB,OAAAD,GAAA,GAAAlB,EAAA,GAAAY,EAAAM,EAAA,GAAAlB,EAAA,GAAAY,EAAAM,EAAA,GAAAlB,EAAA,GAAAY,EAAAM,EAAA,GAAAlB,EAAA,GAAAY,EAAAM,EAAA,GAAAlB,EAAA,GAAAqB,EAAAH,EAAA,GAAAlB,EAAA,GAAAqB,EAAAH,EAAA,GAAAlB,EAAA,GAAAqB,EAAAH,EAAA,GAAAlB,EAAA,GAAAqB,EAAAH,EAAA,GAAAlB,EAAA,GAAAN,EAAAwB,EAAA,GAAAlB,EAAA,GAAAN,EAAAwB,EAAA,IAAAlB,EAAA,IAAAN,EAAAwB,EAAA,IAAAlB,EAAA,IAAAN,EAAAwB,EAAA,IAAAlB,EAAA,IAAAkB,EAAA,IAAAlB,EAAA,IAAAkB,EAAA,IAAAlB,EAAA,IAAAkB,EAAA,IAAAlB,EAAA,IAAAkB,EAA6M,QAAAgB,GAAAhB,EAAAlB,EAAAmB,GAAkB,GAAAP,GAAAkB,KAAAC,IAAAZ,GAAAE,EAAAS,KAAAE,IAAAb,GAAAzB,EAAAM,EAAA,GAAAoB,EAAApB,EAAA,GAAAd,EAAAc,EAAA,GAAAV,EAAAU,EAAA,GAAAgB,EAAAhB,EAAA,GAAAiC,EAAAjC,EAAA,GAAAO,EAAAP,EAAA,IAAAb,EAAAa,EAAA,GAA0F,OAAAA,KAAAkB,MAAA,GAAAlB,EAAA,GAAAkB,EAAA,GAAAlB,EAAA,GAAAkB,EAAA,GAAAlB,EAAA,GAAAkB,EAAA,GAAAlB,EAAA,GAAAkB,EAAA,IAAAlB,EAAA,IAAAkB,EAAA,IAAAlB,EAAA,IAAAkB,EAAA,IAAAlB,EAAA,IAAAkB,EAAA,IAAAlB,EAAA,KAAAkB,EAAA,GAAAxB,EAAA2B,EAAAL,EAAAJ,EAAAM,EAAA,GAAAE,EAAAC,EAAAY,EAAArB,EAAAM,EAAA,GAAAhC,EAAAmC,EAAAd,EAAAK,EAAAM,EAAA,GAAA5B,EAAA+B,EAAAlC,EAAAyB,EAAAM,EAAA,GAAAF,EAAAK,EAAA3B,EAAAkB,EAAAM,EAAA,GAAAe,EAAAZ,EAAAD,EAAAR,EAAAM,EAAA,IAAAX,EAAAc,EAAAnC,EAAA0B,EAAAM,EAAA,IAAA/B,EAAAkC,EAAA/B,EAAAsB,EAAAM,EAAoN,QAAAiB,GAAAjB,EAAAlB,EAAAmB,GAAkB,GAAAP,GAAAkB,KAAAC,IAAAZ,GAAAE,EAAAS,KAAAE,IAAAb,GAAAzB,EAAAM,EAAA,GAAAoB,EAAApB,EAAA,GAAAd,EAAAc,EAAA,GAAAV,EAAAU,EAAA,GAAAgB,EAAAhB,EAAA,GAAAiC,EAAAjC,EAAA,GAAAO,EAAAP,EAAA,GAAAb,EAAAa,EAAA,EAAwF,OAAAA,KAAAkB,MAAA,GAAAlB,EAAA,GAAAkB,EAAA,GAAAlB,EAAA,GAAAkB,EAAA,IAAAlB,EAAA,IAAAkB,EAAA,IAAAlB,EAAA,IAAAkB,EAAA,IAAAlB,EAAA,IAAAkB,EAAA,IAAAlB,EAAA,IAAAkB,EAAA,IAAAlB,EAAA,IAAAkB,EAAA,IAAAlB,EAAA,KAAAkB,EAAA,GAAAxB,EAAA2B,EAAAL,EAAAJ,EAAAM,EAAA,GAAAE,EAAAC,EAAAY,EAAArB,EAAAM,EAAA,GAAAhC,EAAAmC,EAAAd,EAAAK,EAAAM,EAAA,GAAA5B,EAAA+B,EAAAlC,EAAAyB,EAAAM,EAAA,GAAAF,EAAAK,EAAA3B,EAAAkB,EAAAM,EAAA,GAAAe,EAAAZ,EAAAD,EAAAR,EAAAM,EAAA,GAAAX,EAAAc,EAAAnC,EAAA0B,EAAAM,EAAA,GAAA/B,EAAAkC,EAAA/B,EAAAsB,EAAAM,EAAsN,QAAA7B,GAAA6B,EAAAlB,EAAAmB,EAAAP,EAAAS,GAAsB,GAAA3B,GAAA,EAAAoC,KAAAkB,IAAAhD,EAAA,GAAAoB,EAAA,GAAAR,EAAAS,EAAgC,OAAAH,GAAA,GAAAxB,EAAAyB,EAAAD,EAAA,KAAAA,EAAA,KAAAA,EAAA,KAAAA,EAAA,KAAAA,EAAA,GAAAxB,EAAAwB,EAAA,KAAAA,EAAA,KAAAA,EAAA,KAAAA,EAAA,KAAAA,EAAA,KAAAG,EAAAT,GAAAQ,EAAAF,EAAA,OAAAA,EAAA,MAAAA,EAAA,MAAAA,EAAA,MAAAG,EAAAT,EAAAQ,EAAAF,EAAA,MAAAA,EAA8I,QAAAkB,GAAAlB,EAAAlB,EAAAmB,EAAAP,EAAAS,EAAA3B,EAAA0B,GAA0B,GAAAlC,GAAA,GAAAc,EAAAmB,GAAA7B,EAAA,GAAAsB,EAAAS,GAAAL,EAAA,GAAAtB,EAAA0B,EAAkC,OAAAF,GAAA,MAAAhC,EAAAgC,EAAA,KAAAA,EAAA,KAAAA,EAAA,KAAAA,EAAA,KAAAA,EAAA,MAAA5B,EAAA4B,EAAA,KAAAA,EAAA,KAAAA,EAAA,KAAAA,EAAA,KAAAA,EAAA,MAAAF,EAAAE,EAAA,MAAAA,EAAA,KAAAlB,EAAAmB,GAAAjC,EAAAgC,EAAA,KAAAG,EAAAT,GAAAtB,EAAA4B,EAAA,KAAAE,EAAA1B,GAAAsB,EAAAE,EAAA,MAAAA,EAA4R,MAAnI,YAAY,GAAAA,GAAA,GAAAW,cAAA,EAA0BX,GAAA,KAAAA,EAAA,KAAAA,EAAA,QAAqB,WAAe,GAAAA,GAAA,GAAAW,cAAA,EAA0BX,GAAA,KAAAA,EAAA,KAAAA,EAAA,KAAAA,EAAA,SAAsC+B,MAAMC,cAAAhC,GAAgBiC,MAAOC,cAAApD,GAAgBqD,MAAOC,OAAAnC,EAAAoC,OAAA3C,EAAA4C,MAAAnC,GAA0BoC,MAAOH,OAAA5D,EAAAgE,aAAAtC,GAAwBuC,MAAOL,OAAApE,EAAA0E,SAAAtE,EAAAuE,UAAAtD,EAAAiD,MAAArE,EAAA2E,SAAA7B,EAAA8B,YAAA1E,EAAA2E,QAAA9B,EAAA+B,QAAA9B,EAAA+B,OAAAlD,EAAAmD,MAAA/B,WAC3jJgC,GAAA,SAAA1C,EAAAzC,EAAAD,GACJ,YAAa,SAAAqF,GAAAnD,EAAAlB,GAAoBS,KAAA+B,EAAAtB,EAAAT,KAAA2B,EAAApC,EAAkBf,EAAAD,QAAAqF,IAAAjE,WAAsCkE,MAAA,WAAiB,UAAAD,GAAA5D,KAAA+B,EAAA/B,KAAA2B,IAAgCmC,IAAA,SAAArD,GAAiB,MAAAT,MAAA6D,QAAAE,KAAAtD,IAA4BuD,IAAA,SAAAvD,GAAiB,MAAAT,MAAA6D,QAAAI,KAAAxD,IAA4ByD,YAAA,SAAAzD,GAAyB,MAAAT,MAAA6D,QAAAM,aAAA1D,IAAoC2D,WAAA,SAAA3D,GAAwB,MAAAT,MAAA6D,QAAAQ,YAAA5D,IAAmC6D,KAAA,SAAA7D,GAAkB,MAAAT,MAAA6D,QAAAU,MAAA9D,IAA6B+D,IAAA,SAAA/D,GAAiB,MAAAT,MAAA6D,QAAAY,KAAAhE,IAA4BqC,OAAA,SAAArC,GAAoB,MAAAT,MAAA6D,QAAAa,QAAAjE,IAA+BkE,aAAA,SAAAlE,EAAAlB,GAA4B,MAAAS,MAAA6D,QAAAe,cAAAnE,EAAAlB,IAAuCsF,QAAA,SAAApE,GAAqB,MAAAT,MAAA6D,QAAAiB,SAAArE,IAAgCsE,KAAA,WAAiB,MAAA/E,MAAA6D,QAAAmB,SAA4BC,KAAA,WAAiB,MAAAjF,MAAA6D,QAAAqB,SAA4BC,MAAA,WAAkB,MAAAnF,MAAA6D,QAAAuB,UAA6BC,IAAA,WAAgB,MAAAhE,MAAAiE,KAAAtF,KAAA+B,EAAA/B,KAAA+B,EAAA/B,KAAA2B,EAAA3B,KAAA2B,IAA8C4D,OAAA,SAAA9E,GAAoB,MAAAT,MAAA+B,IAAAtB,EAAAsB,GAAA/B,KAAA2B,IAAAlB,EAAAkB,GAAkC6D,KAAA,SAAA/E,GAAkB,MAAAY,MAAAiE,KAAAtF,KAAAyF,QAAAhF,KAAkCgF,QAAA,SAAAhF,GAAqB,GAAAlB,GAAAkB,EAAAsB,EAAA/B,KAAA+B,EAAAtD,EAAAgC,EAAAkB,EAAA3B,KAAA2B,CAA8B,OAAApC,KAAAd,KAAeiH,MAAA,WAAkB,MAAArE,MAAAsE,MAAA3F,KAAA2B,EAAA3B,KAAA+B,IAAiC6D,QAAA,SAAAnF,GAAqB,MAAAY,MAAAsE,MAAA3F,KAAA2B,EAAAlB,EAAAkB,EAAA3B,KAAA+B,EAAAtB,EAAAsB,IAAyC8D,UAAA,SAAApF,GAAuB,MAAAT,MAAA8F,aAAArF,EAAAsB,EAAAtB,EAAAkB,IAAkCmE,aAAA,SAAArF,EAAAlB,GAA4B,MAAA8B,MAAAsE,MAAA3F,KAAA+B,EAAAxC,EAAAS,KAAA2B,EAAAlB,EAAAT,KAAA+B,EAAAtB,EAAAT,KAAA2B,EAAApC,IAAuDuF,SAAA,SAAArE,GAAsB,GAAAlB,GAAAkB,EAAA,GAAAT,KAAA+B,EAAAtB,EAAA,GAAAT,KAAA2B,EAAAlD,EAAAgC,EAAA,GAAAT,KAAA+B,EAAAtB,EAAA,GAAAT,KAAA2B,CAAwD,OAAA3B,MAAA+B,EAAAxC,EAAAS,KAAA2B,EAAAlD,EAAAuB,MAA8B+D,KAAA,SAAAtD,GAAkB,MAAAT,MAAA+B,GAAAtB,EAAAsB,EAAA/B,KAAA2B,GAAAlB,EAAAkB,EAAA3B,MAAoCiE,KAAA,SAAAxD,GAAkB,MAAAT,MAAA+B,GAAAtB,EAAAsB,EAAA/B,KAAA2B,GAAAlB,EAAAkB,EAAA3B,MAAoCuE,MAAA,SAAA9D,GAAmB,MAAAT,MAAA+B,GAAAtB,EAAAT,KAAA2B,GAAAlB,EAAAT,MAAgCyE,KAAA,SAAAhE,GAAkB,MAAAT,MAAA+B,GAAAtB,EAAAT,KAAA2B,GAAAlB,EAAAT,MAAgCmE,aAAA,SAAA1D,GAA0B,MAAAT,MAAA+B,GAAAtB,EAAAsB,EAAA/B,KAAA2B,GAAAlB,EAAAkB,EAAA3B,MAAoCqE,YAAA,SAAA5D,GAAyB,MAAAT,MAAA+B,GAAAtB,EAAAsB,EAAA/B,KAAA2B,GAAAlB,EAAAkB,EAAA3B,MAAoCgF,MAAA,WAAkB,MAAAhF,MAAAyE,KAAAzE,KAAAqF,OAAArF,MAAkCkF,MAAA,WAAkB,GAAAzE,GAAAT,KAAA2B,CAAa,OAAA3B,MAAA2B,EAAA3B,KAAA+B,EAAA/B,KAAA+B,GAAAtB,EAAAT,MAAoC0E,QAAA,SAAAjE,GAAqB,GAAAlB,GAAA8B,KAAAE,IAAAd,GAAAhC,EAAA4C,KAAAC,IAAAb,GAAAX,EAAAP,EAAAS,KAAA+B,EAAAtD,EAAAuB,KAAA2B,EAAAjB,EAAAjC,EAAAuB,KAAA+B,EAAAxC,EAAAS,KAAA2B,CAAwE,OAAA3B,MAAA+B,EAAAjC,EAAAE,KAAA2B,EAAAjB,EAAAV,MAA8B4E,cAAA,SAAAnE,EAAAlB,GAA6B,GAAAd,GAAA4C,KAAAE,IAAAd,GAAAX,EAAAuB,KAAAC,IAAAb,GAAAC,EAAAnB,EAAAwC,EAAAtD,GAAAuB,KAAA+B,EAAAxC,EAAAwC,GAAAjC,GAAAE,KAAA2B,EAAApC,EAAAoC,GAAAD,EAAAnC,EAAAoC,EAAA7B,GAAAE,KAAA+B,EAAAxC,EAAAwC,GAAAtD,GAAAuB,KAAA2B,EAAApC,EAAAoC,EAAwG,OAAA3B,MAAA+B,EAAArB,EAAAV,KAAA2B,EAAAD,EAAA1B,MAA8BoF,OAAA,WAAmB,MAAApF,MAAA+B,EAAAV,KAAA8D,MAAAnF,KAAA+B,GAAA/B,KAAA2B,EAAAN,KAAA8D,MAAAnF,KAAA2B,GAAA3B,OAAiE4D,EAAAmC,QAAA,SAAAtF,GAA2B,MAAAA,aAAAmD,GAAAnD,EAAAuF,MAAAC,QAAAxF,GAAA,GAAAmD,GAAAnD,EAAA,GAAAA,EAAA,IAAAA,QAC3oEyF,GAAA,SAAAjF,EAAAzC,EAAAD,IACJ,SAAAkC,EAAAN,GAAe,gBAAA5B,IAAA,mBAAAC,KAAAD,QAAA4B,IAAA,kBAAAK,MAAAU,IAAAV,EAAAL,GAAAM,EAAA0F,UAAAhG,KAAwIH,KAAA,WAAiB,QAAAS,KAAAN,EAAA1B,GAAkBA,QAAOuB,KAAA4B,EAAAnB,GAAA,GAAAT,KAAA0B,EAAAvB,GAAA,GAAAH,KAAAoG,aAAA3H,EAAA2H,WAAApG,KAAAqG,WAAArG,KAAAsG,YAAAtG,KAAAuG,SAAwGvG,KAAAwG,QAAaxG,KAAAyG,MAAA,EAAc,QAAAtG,GAAAM,EAAAN,EAAA1B,GAAkBuB,KAAA+B,EAAA,EAAA/B,KAAA2B,EAAAlB,EAAAT,KAAA4B,EAAA5B,KAAA0G,KAAAvG,EAAAH,KAAA0B,EAAAjD,EAA8C,QAAAA,GAAAgC,EAAAN,EAAA1B,EAAAqB,EAAA4B,EAAAnC,EAAAmB,GAA0BV,KAAA2G,GAAAlG,EAAAT,KAAA+B,EAAA5B,EAAAH,KAAA2B,EAAAlD,EAAAuB,KAAA4B,EAAA9B,EAAAE,KAAA0B,IAAA1B,KAAA4G,KAAArH,GAAAO,EAAAE,KAAA6G,KAAAnG,GAAAgB,EAAA1B,KAAA8G,SAAA,EAA4F,MAAArG,GAAAd,UAAAoH,KAAA,SAAAtG,EAAAN,GAAsCM,KAAAuG,OAAAvG,GAAAN,OAAuB,QAAA1B,GAAAqB,EAAA4B,EAAAnC,EAAAmB,KAAAH,EAAA,EAAyBA,EAAAE,EAAAM,OAAWR,IAAA,GAAA9B,EAAAgC,EAAAF,GAAAqB,GAAAnB,EAAAF,GAAA0G,MAAAnH,EAAAW,EAAAF,GAAAmB,GAAAjB,EAAAF,GAAA2G,OAAAxF,EAAAjB,EAAAF,GAAAoG,GAAAlI,GAAAqB,EAAA,CAAkE,KAAAP,EAAAS,KAAAmH,QAAA1I,EAAAqB,EAAA4B,IAAA,QAAqCvB,GAAAiH,UAAA3G,EAAAF,GAAAwB,EAAAxC,EAAAwC,EAAAtB,EAAAF,GAAAoB,EAAApC,EAAAoC,EAAAlB,EAAAF,GAAAoG,GAAApH,EAAAoH,IAAAjG,EAAA2G,KAAA9H,GAA0D,MAAAS,MAAAsH,SAAA5G,GAAuBD,EAAAd,UAAAwH,QAAA,SAAA1G,EAAAhC,EAAAqB,GAAqC,GAAA4B,GAAAnC,EAAAmB,EAAAH,EAAAtB,GAAesI,SAAA,EAAAC,OAAA,EAAAC,MAAA,KAA8B7G,EAAA,CAAK,oBAAAd,IAAA,gBAAAA,GAAA,CAA2C,GAAA4B,EAAA1B,KAAA0H,OAAA5H,GAAA,MAAAE,MAAA2H,IAAAjG,IAAyC,iBAAA5B,KAAAE,KAAAyG,MAAApF,KAAAuG,IAAA9H,EAAAE,KAAAyG,YAAwD3G,KAAAE,KAAAyG,KAAoB,KAAAlG,EAAA,EAAQA,EAAAP,KAAAsG,SAAAvF,OAAuBR,IAAA,CAAK,GAAAmB,EAAA1B,KAAAsG,SAAA/F,GAAA9B,IAAAiD,EAAAmF,MAAApG,IAAAiB,EAAAkF,KAAA,MAAA5G,MAAA6H,aAAAtH,EAAAE,EAAAhC,EAAAqB,EAA+ErB,GAAAiD,EAAAmF,MAAApG,EAAAiB,EAAAkF,MAAAnI,GAAAiD,EAAAmF,MAAApG,GAAAiB,EAAAkF,OAAAlG,EAAAgB,EAAAkF,KAAAlF,EAAAmF,KAAApG,EAAAhC,GAAAQ,EAAAwI,QAAAxI,EAAAwI,MAAA/G,EAAAzB,EAAAsI,QAAAhH,GAAiG,IAAAA,EAAA,EAAQA,EAAAP,KAAAqG,QAAAtF,OAAsBR,IAAA,GAAAhB,EAAAS,KAAAqG,QAAA9F,GAAAK,GAAArB,EAAAmC,IAAAjB,EAAAlB,EAAAmH,MAAA,CAA6C,GAAAjI,IAAAc,EAAAmC,EAAA,MAAA1B,MAAA8H,WAAAvH,EAAAE,EAAAhC,EAAAqB,EAA2CrB,GAAAc,EAAAmC,GAAAjD,EAAAc,EAAAmC,IAAAhB,GAAAnB,EAAAmC,EAAAjD,GAAAgC,GAAAxB,EAAAwI,QAAAxI,EAAAsI,SAAA,EAAAtI,EAAAwI,MAAA/G,EAAAzB,EAAAuI,MAAAjH,GAAwE,QAAAtB,EAAAsI,QAAA,MAAAvH,MAAA6H,aAAA5I,EAAAsI,QAAA9G,EAAAhC,EAAAqB,EAA4D,SAAAb,EAAAuI,MAAA,MAAAxH,MAAA8H,WAAA7I,EAAAuI,MAAA/G,EAAAhC,EAAAqB,EAAsD,IAAArB,GAAAuB,KAAA0B,EAAAd,GAAAH,GAAAT,KAAA4B,EAAA,MAAArC,GAAA,GAAAY,GAAAS,EAAAZ,KAAA4B,EAAAnD,GAAAuB,KAAA8H,WAAA9H,KAAAqG,QAAAgB,KAAA9H,GAAA,EAAAkB,EAAAhC,EAAAqB,EAAmG,IAAAE,KAAAoG,WAAA,CAAoB,GAAAzF,GAAAjC,EAAAG,EAAAgB,CAAY,OAAAc,GAAAjC,EAAAsB,KAAA0B,EAAA7C,EAAAgB,EAAAG,KAAA4B,GAAA/C,GAAA8B,GAAAF,EAAA5B,KAAAgB,EAAA,EAAAwB,KAAAuG,IAAAnH,EAAA5B,KAAA8B,EAAA9B,GAAAJ,EAAAkC,KAAAjC,EAAA,EAAA2C,KAAAuG,IAAAnJ,EAAAkC,IAAAX,KAAA+H,OAAAlI,EAAAnB,GAAAsB,KAAAmH,QAAA1G,EAAAhC,EAAAqB,GAAmI,aAAYW,EAAAd,UAAAkI,aAAA,SAAApH,EAAAN,EAAA1B,EAAAqB,GAA4C,GAAA4B,GAAA1B,KAAAsG,SAAA0B,OAAAvH,EAAA,KAAmC,OAAAiB,GAAAiF,GAAA7G,EAAA4B,EAAAE,EAAAzB,EAAAuB,IAAAjD,EAAAiD,EAAAoF,SAAA,EAAA9G,KAAAwG,KAAA1G,GAAA4B,EAAA1B,KAAA2H,IAAAjG,MAAoEjB,EAAAd,UAAAmI,WAAA,SAAArH,EAAAN,EAAA1B,EAAAqB,GAA0C,GAAA4B,GAAA1B,KAAAqG,QAAA5F,GAAAlB,EAAAmC,EAAAuG,MAAA9H,EAAA1B,EAAAqB,EAAuC,OAAAE,MAAAwG,KAAA1G,GAAAP,EAAAS,KAAA2H,IAAApI,MAAoCkB,EAAAd,UAAA2H,OAAA,WAA+B,GAAAtH,KAAAqG,QAAAtF,OAAA,GAA0B,OAAAN,GAAA,EAAAN,EAAA,EAAA1B,EAAA,EAAoBA,EAAAuB,KAAAqG,QAAAtF,OAAsBtC,IAAA,CAAK,GAAAqB,GAAAE,KAAAqG,QAAA5H,EAAsB0B,IAAAL,EAAA4B,EAAAjB,EAAAY,KAAAuG,IAAA9H,EAAA8B,EAAA9B,EAAA4G,KAAAjG,GAAgCT,KAAA+H,OAAAtH,EAAAN,KAAkBM,EAAAd,UAAA+H,OAAA,SAAAjH,GAAgC,MAAAT,MAAAwG,KAAA/F,IAAoBA,EAAAd,UAAAgI,IAAA,SAAAlH,GAA6B,QAAAA,EAAAqG,SAAA,CAAoB,GAAA3G,GAAAM,EAAAiB,CAAU1B,MAAAuG,MAAApG,GAAA,KAAAH,KAAAuG,MAAApG,IAAkC,MAAAM,GAAAqG,UAAkBrG,EAAAd,UAAAuI,MAAA,SAAAzH,GAA+B,WAAAA,EAAAqG,SAAA,QAAArG,EAAAqG,WAAA9G,KAAAuG,MAAA9F,EAAAiB,WAAA1B,MAAAwG,KAAA/F,EAAAkG,IAAA3G,KAAAsG,SAAAe,KAAA5G,MAAAqG,WAAuHrG,EAAAd,UAAAwI,MAAA,WAA8BnI,KAAAqG,WAAArG,KAAAsG,YAAAtG,KAAAuG,SAA8CvG,KAAAwG,QAAaxG,KAAAyG,MAAA,GAAchG,EAAAd,UAAAoI,OAAA,SAAAtH,EAAAN,GAAkCH,KAAA4B,EAAAnB,EAAAT,KAAA0B,EAAAvB,CAAkB,QAAA1B,GAAA,EAAYA,EAAAuB,KAAAqG,QAAAtF,OAAsBtC,IAAAuB,KAAAqG,QAAA5H,GAAAsJ,OAAAtH,EAA8B,WAASN,EAAAR,UAAAsI,MAAA,SAAAxH,EAAAN,EAAAL,GAAmC,GAAAW,EAAAT,KAAA0G,MAAAvG,EAAAH,KAAA0B,EAAA,WAAqC,IAAAA,GAAA1B,KAAA+B,CAAa,OAAA/B,MAAA+B,GAAAtB,EAAAT,KAAA0G,MAAAjG,EAAA,GAAAhC,GAAAqB,EAAA4B,EAAA1B,KAAA2B,EAAAlB,EAAAN,EAAAM,EAAAT,KAAA0B,IAA6DvB,EAAAR,UAAAoI,OAAA,SAAAtH,GAAgC,MAAAT,MAAA0G,MAAAjG,EAAAT,KAAA4B,EAAA5B,KAAA4B,EAAAnB,GAAA,GAAuCA,SAC18F2H,GAAA,SAAAnH,EAAAzC,EAAAD,GACJ,YAAa,SAAA8J,GAAA5H,EAAAhC,EAAAqB,EAAAK,EAAAuB,EAAAhB,GAA8BV,KAAAsI,SAAA7H,GAAA,GAAAT,KAAAuI,WAAA,KAAA9J,EAAA,EAAAA,EAAAuB,KAAAwI,OAAArI,GAAA,IAAAH,KAAAyI,WAAA/G,GAAA,aAAA1B,KAAA0I,WAAAhI,GAAA,SAAAV,KAAA2I,OAAA7I,GAAA,CAA+I,IAAAc,GAAAZ,KAAA4I,KAAA5I,KAAAsI,SAAA,EAAAtI,KAAAuI,MAA4CvI,MAAA6I,OAAAC,SAAAC,cAAA,UAAA/I,KAAA6I,OAAA5B,MAAAjH,KAAA6I,OAAA3B,OAAAtG,EAAAZ,KAAAgJ,IAAAhJ,KAAA6I,OAAAI,WAAA,MAAAjJ,KAAAgJ,IAAAE,KAAAlJ,KAAA0I,WAAA,IAAA1I,KAAAsI,SAAA,MAAAtI,KAAAyI,WAAAzI,KAAAgJ,IAAAG,aAAA,SAAAnJ,KAAAgJ,IAAAI,UAAA,QAAApJ,KAAAqJ,UAAA,GAAAC,cAAA1I,KAAAZ,KAAAuJ,UAAA,GAAAD,cAAA1I,KAAAZ,KAAAO,EAAA,GAAA+I,cAAA1I,GAAAZ,KAAAlB,EAAA,GAAAwK,cAAA1I,GAAAZ,KAAAwJ,EAAA,GAAAF,cAAA1I,EAAA,GAAAZ,KAAAwB,EAAA,GAAAiI,YAAA7I,GAAAZ,KAAA0J,OAAArI,KAAA8D,MAAAvE,EAAA,GAAA+I,UAAAC,UAAAC,QAAA,qBAA6f,QAAAC,GAAArJ,EAAAhC,EAAAqB,EAAAK,EAAAuB,EAAAhB,EAAAE,GAA4B,OAAArB,GAAA,EAAYA,EAAAd,EAAIc,IAAA,CAAK,OAAAN,GAAA,EAAYA,EAAAa,EAAIb,IAAAkB,EAAAlB,GAAAwB,EAAAxB,EAAAR,EAAAc,EAAkB,KAAAwK,EAAA5J,EAAAuB,EAAAhB,EAAAE,EAAAd,GAAAb,EAAA,EAAyBA,EAAAa,EAAIb,IAAAwB,EAAAxB,EAAAR,EAAAc,GAAAmC,EAAAzC,GAAkB,IAAAA,EAAA,EAAQA,EAAAa,EAAIb,IAAA,CAAK,IAAAM,EAAA,EAAQA,EAAAd,EAAIc,IAAAY,EAAAZ,GAAAkB,EAAAxB,EAAAR,EAAAc,EAAkB,KAAAwK,EAAA5J,EAAAuB,EAAAhB,EAAAE,EAAAnC,GAAAc,EAAA,EAAyBA,EAAAd,EAAIc,IAAAkB,EAAAxB,EAAAR,EAAAc,GAAA8B,KAAAiE,KAAA5D,EAAAnC,KAA8B,QAAAwK,GAAAtJ,EAAAhC,EAAAqB,EAAAK,EAAAuB,GAA0B5B,EAAA,KAAAK,EAAA,IAAA6J,EAAA7J,EAAA,IAAA6J,CAA2B,QAAAtJ,GAAA,EAAAE,EAAA,EAAgBF,EAAAgB,EAAIhB,IAAA,CAAK,OAAAnB,IAAAkB,EAAAC,QAAAD,EAAAX,EAAAc,IAAAd,EAAAc,GAAAd,EAAAc,MAAA,EAAAF,EAAA,EAAAZ,EAAAc,IAAsDrB,GAAAY,EAAAS,IAAQA,IAAArB,GAAAkB,EAAAC,QAAAD,EAAAX,EAAAc,IAAAd,EAAAc,GAAAd,EAAAc,MAAA,EAAAF,EAAA,EAAAZ,EAAAc,GAAmDA,KAAAd,EAAAc,GAAAF,EAAAP,EAAAS,GAAArB,EAAAY,EAAAS,EAAA,IAAAoJ,EAA8B,IAAAtJ,EAAA,EAAAE,EAAA,EAAYF,EAAAgB,EAAIhB,IAAA,CAAK,KAAKP,EAAAS,EAAA,GAAAF,GAASE,GAAKnC,GAAAiC,MAAAZ,EAAAc,KAAAF,EAAAZ,EAAAc,IAAAH,EAAAX,EAAAc,KAAgCpC,EAAAD,QAAA8J,CAAuB,IAAA2B,GAAA,IAAa3B,GAAA1I,UAAAsK,KAAA,SAAAxJ,GAAmCT,KAAAgJ,IAAAkB,UAAA,IAAAlK,KAAA4I,KAAA5I,KAAA4I,MAAA5I,KAAAgJ,IAAAmB,SAAA1J,EAAAT,KAAAuI,OAAAvI,KAAA0J,OAAyF,QAAAjL,GAAAuB,KAAAgJ,IAAAoB,aAAA,IAAApK,KAAA4I,KAAA5I,KAAA4I,MAAA9I,EAAA,GAAAuK,mBAAArK,KAAA4I,KAAA5I,KAAA4I,MAAAzI,EAAA,EAA0GA,EAAAH,KAAA4I,KAAA5I,KAAA4I,KAAsBzI,IAAA,CAAK,GAAAuB,GAAAjD,EAAA6L,KAAA,EAAAnK,EAAA,MAAwBH,MAAAqJ,UAAAlJ,GAAA,IAAAuB,EAAA,MAAAA,EAAAsI,EAAA3I,KAAAkJ,IAAAlJ,KAAAuG,IAAA,KAAAlG,GAAA,GAAA1B,KAAAuJ,UAAApJ,GAAA,IAAAuB,EAAAsI,EAAA,IAAAtI,EAAA,EAAAL,KAAAkJ,IAAAlJ,KAAAuG,IAAA,EAAAlG,EAAA,OAAkI,IAAAoI,EAAA9J,KAAAqJ,UAAArJ,KAAA4I,KAAA5I,KAAA4I,KAAA5I,KAAAO,EAAAP,KAAAlB,EAAAkB,KAAAwB,EAAAxB,KAAAwJ,GAAAM,EAAA9J,KAAAuJ,UAAAvJ,KAAA4I,KAAA5I,KAAA4I,KAAA5I,KAAAO,EAAAP,KAAAlB,EAAAkB,KAAAwB,EAAAxB,KAAAwJ,GAAArJ,EAAA,EAAgJA,EAAAH,KAAA4I,KAAA5I,KAAA4I,KAAsBzI,IAAA,CAAK,GAAAO,GAAAV,KAAAqJ,UAAAlJ,GAAAH,KAAAuJ,UAAApJ,EAA0CL,GAAAK,GAAAkB,KAAAuG,IAAA,EAAAvG,KAAAmJ,IAAA,IAAAnJ,KAAA8D,MAAA,SAAAzE,EAAAV,KAAA2I,OAAA3I,KAAAwI,WAA+E,MAAA1I,SACn9D2K,GAAA,SAAAxJ,EAAAzC,EAAAD,GACJ,QAAAmM,GAAAjK,EAAAhC,EAAA0B,EAAAO,GAA6BV,KAAA2K,GAAA,EAAAlK,EAAAT,KAAA4K,GAAA,GAAAzK,EAAAM,GAAAT,KAAA2K,GAAA3K,KAAA6K,GAAA,EAAA7K,KAAA2K,GAAA3K,KAAA4K,GAAA5K,KAAA8K,GAAA,EAAArM,EAAAuB,KAAA+K,GAAA,GAAArK,EAAAjC,GAAAuB,KAAA8K,GAAA9K,KAAAgL,GAAA,EAAAhL,KAAA8K,GAAA9K,KAAA+K,GAAA/K,KAAAiL,IAAAxK,EAAAT,KAAAkL,IAAAxK,EAAAV,KAAAmL,IAAAhL,EAAAH,KAAAoL,IAAA1K,EAAwKlC,EAAAD,QAAAmM,IAAA/K,UAAA0L,aAAA,SAAA5K,GAAwE,QAAAT,KAAA6K,GAAApK,EAAAT,KAAA4K,IAAAnK,EAAAT,KAAA2K,IAAAlK,GAAwCiK,EAAA/K,UAAA2L,aAAA,SAAA7K,GAA+C,QAAAT,KAAAgL,GAAAvK,EAAAT,KAAA+K,IAAAtK,EAAAT,KAAA8K,IAAArK,GAAwCiK,EAAA/K,UAAA4L,uBAAA,SAAA9K,GAAyD,SAAAT,KAAA6K,GAAApK,EAAA,EAAAT,KAAA4K,IAAAnK,EAAAT,KAAA2K,IAAwCD,EAAA/K,UAAA6L,YAAA,SAAA/K,EAAAhC,OAAgD,KAAAA,MAAA,KAAqB,IAAA0B,GAAAO,EAAAZ,EAAA4B,EAAAnC,CAAc,KAAAO,EAAAW,EAAAlB,EAAA,EAAYA,EAAA,EAAIA,IAAA,CAAK,GAAAmC,EAAA1B,KAAAqL,aAAAvL,GAAAW,EAAAY,KAAAoK,IAAA/J,GAAAjD,EAAA,MAAAqB,EAAmD,IAAAa,GAAAX,KAAAuL,uBAAAzL,EAAqC,IAAAuB,KAAAoK,IAAA9K,GAAA,UAA0Bb,IAAA4B,EAAAf,EAAO,GAAAR,EAAA,EAAAO,EAAA,GAAAZ,EAAAW,GAAAN,EAAA,MAAAA,EAA4B,IAAAL,EAAAY,EAAA,MAAAA,EAAgB,MAAKP,EAAAO,GAAI,CAAE,GAAAgB,EAAA1B,KAAAqL,aAAAvL,GAAAuB,KAAAoK,IAAA/J,EAAAjB,GAAAhC,EAAA,MAAAqB,EAAmDW,GAAAiB,EAAAvB,EAAAL,EAAAY,EAAAZ,IAAA,IAAAY,EAAAP,KAAyB,MAAAL,IAAS4K,EAAA/K,UAAA+L,MAAA,SAAAjL,EAAAhC,GAA0C,MAAAuB,MAAAsL,aAAAtL,KAAAwL,YAAA/K,EAAAhC,UACh4BkN,GAAA,SAAA1K,EAAAzC,EAAAD,GACJC,EAAAD,QAAAqN,WAAA3K,EAAA,uBAAAzC,EAAAD,QAAAsN,kBAAA5K,EAAA,8BAAAzC,EAAAD,QAAAuN,gBAAA7K,EAAA,8BACG8K,sBAAA,EAAAC,6BAAA,EAAAC,2BAAA,IAAoFC,GAAA,SAAAjL,EAAAzC,EAAAD,GACvF,YAAa,SAAAqN,GAAAzL,EAAAO,GAAyBV,KAAAmM,OAAAhM,EAAAiM,WAAAC,KAAoC3L,GAAI,QAAA2L,GAAAlM,EAAAO,EAAAjC,GAAyB,OAAA0B,EAAA,CAAU,GAAAM,GAAA,GAAAqL,GAAArN,IAAA6N,aAAA7N,EAAA8N,IAAkD9L,GAAAM,SAAAL,EAAAD,EAAA1B,MAAA0B,IAAyB,GAAAqL,GAAA7K,EAAA,oBAAiDzC,GAAAD,QAAAqN,IAC1OY,oBAAA,IAAsBC,GAAA,SAAAxL,EAAAzC,EAAAD,GACzB,YAAa,SAAAsN,GAAA1L,EAAAM,EAAAC,EAAAE,EAAAnC,GAAsCuB,KAAA0M,cAAkB1M,KAAA2M,OAAAjM,EAAAV,KAAA4M,KAAA,EAAA5M,KAAA6M,KAAA1M,EAAAH,KAAA8M,WAAA,EAAA9M,KAAA+M,MAAAnM,EAAAZ,KAAAgN,QAAAvO,EAAA0B,EAAAiM,WAAAa,EAAAjN,KAAAS,GAAsH,QAAAwM,GAAA9M,EAAAM,EAAAC,GAA4B,GAAAP,EAAAM,EAAAkG,GAAAjG,EAAA4L,aAAA,GAAAnM,EAAA+M,EAAAxM,EAAAD,GAAA,GAAAN,EAAAM,EAAAmM,KAAAlM,EAAA4L,aAAA,GAAAnM,IAAAM,EAAAqM,UAAApM,EAAA6L,KAAgG,QAAAW,GAAA/M,EAAAM,GAAsB,OAAAC,GAAAP,EAAAmM,aAAAnM,EAAAoM,IAA+BpM,EAAAoM,IAAA7L,GAAQ,CAAE,GAAAE,GAAAH,EAAAsM,MAAA5M,EAAAmM,cAAA7N,EAAAgC,EAAAuM,QAAA7M,EAAAmM,aAA0D7L,GAAAiM,WAAA9L,GAAAnC,GAAmB,QAAA0O,GAAAhN,GAA0B,GAAAM,GAAAN,EAAAY,MAAe,IAAAN,GAAA,SAAAN,EAAkB,QAAAO,GAAAE,EAAAnC,KAAAQ,EAAA,EAAqBA,EAAAwB,EAAIxB,IAAA,CAAK,GAAAM,GAAA6N,EAAAjN,EAAAlB,GAAuB,KAAAM,QAAA,KAAAqB,MAAArB,EAAA,GAAAqB,IAAArB,EAAA,GAAAmB,GAAAjC,EAAA4I,KAAA3G,MAAAP,EAAAlB,KAAAyB,EAAA2G,KAAAlH,EAAAlB,KAA0E,MAAAyB,IAAAjC,EAAA4I,KAAA3G,GAAAjC,EAAsB,QAAA2O,GAAAjN,GAAuB,OAAAM,GAAAC,EAAAE,EAAA,EAAAnC,EAAA,EAAAQ,EAAAkB,EAAAY,OAAAxB,EAAAN,EAAA,EAAqCR,EAAAQ,EAAIM,EAAAd,IAAAgC,EAAAN,EAAA1B,GAAAiC,EAAAP,EAAAZ,GAAAqB,IAAAF,EAAAqB,EAAAtB,EAAAsB,IAAAtB,EAAAkB,EAAAjB,EAAAiB,EAA2C,OAAAf,GAAS,GAAAgD,GAAA3C,EAAA,yBAA4CzC,GAAAD,QAAAsN,IAAAwB,OAAA,0CAAAxB,EAAAlM,UAAA2N,aAAA,WAAwJ,GAAAnN,GAAAH,KAAA6M,IAAgB1M,GAAAoM,IAAAvM,KAAA8M,SAAqB,QAAArM,GAAAC,EAAAP,EAAAmM,aAAAnM,EAAAoM,IAAA3L,EAAA,EAAAnC,EAAA,EAAAQ,EAAA,EAAAM,EAAA,EAAAO,KAAsDK,EAAAoM,IAAA7L,GAAQ,CAAE,IAAAjC,EAAA,CAAO,GAAAoB,GAAAM,EAAAmM,YAAqB1L,GAAA,EAAAf,EAAApB,EAAAoB,GAAA,EAAa,GAAApB,IAAA,IAAAmC,GAAA,IAAAA,EAAA3B,GAAAkB,EAAAoN,cAAAhO,GAAAY,EAAAoN,cAAA,IAAA3M,IAAAH,GAAAX,EAAAuH,KAAA5G,WAAA4G,KAAA,GAAAzD,GAAA3E,EAAAM,QAA4G,CAAK,OAAAqB,EAAA,SAAAC,OAAA,mBAAAD,EAA+CH,MAAA4G,KAAA5G,EAAA,GAAAoD,UAAyB,MAAApD,IAAAX,EAAAuH,KAAA5G,GAAAX,GAAsB+L,EAAAlM,UAAA6N,KAAA,WAA6C,GAAArN,GAAAH,KAAA6M,IAAgB1M,GAAAoM,IAAAvM,KAAA8M,SAAqB,QAAArM,GAAAN,EAAAmM,aAAAnM,EAAAoM,IAAA7L,EAAA,EAAAE,EAAA,EAAAnC,EAAA,EAAAQ,EAAA,EAAAM,EAAA,IAAAO,GAAA,IAAAD,EAAA,IAAA6B,GAAA,IAAyEvB,EAAAoM,IAAA9L,GAAQ,CAAE,IAAAG,EAAA,CAAO,GAAAD,GAAAR,EAAAmM,YAAqB5L,GAAA,EAAAC,EAAAC,EAAAD,GAAA,EAAa,GAAAC,IAAA,IAAAF,GAAA,IAAAA,EAAAjC,GAAA0B,EAAAoN,cAAAtO,GAAAkB,EAAAoN,cAAA9O,EAAAc,MAAAd,KAAAqB,MAAArB,GAAAQ,EAAAY,MAAAZ,KAAAyC,MAAAzC,OAAsG,QAAAyB,EAAA,SAAAG,OAAA,mBAAAH,GAAoD,OAAAnB,EAAAM,EAAAC,EAAA4B,IAAgBmK,EAAAlM,UAAA8N,UAAA,SAAAtN,EAAAM,EAAAC,GAAuD,QAAAE,GAAAT,GAAc,OAAAM,GAAA,EAAYA,EAAAN,EAAAY,OAAWN,IAAA,CAAK,GAAAC,GAAAP,EAAAM,GAAAG,EAAA,SAAAF,EAAAiB,EAAA9B,GAAAN,CAA+BY,GAAAM,IAAA,KAAAC,EAAAqB,EAAAjC,GAAAP,EAAA,QAAA8B,KAAAqM,GAAArM,KAAAsM,KAAAtM,KAAAuM,IAAAhN,EAAAS,KAAAqM,GAAA,WAA4E,GAAAjP,GAAAQ,EAAAM,EAAAS,KAAA2M,OAAAtL,KAAAkJ,IAAA,EAAA7J,GAAAZ,EAAAE,KAAA2M,OAAAxM,EAAAN,EAAAG,KAAA2M,OAAAlM,EAAAiB,EAAA1B,KAAAsN,eAAA3M,EAAAkL,EAAAwB,MAAArN,KAAA4M,KAA+H,QAAA5M,KAAA4M,MAAkB,UAAA9N,KAAgB,KAAAL,EAAA,EAAQA,EAAAiD,EAAAX,OAAWtC,IAAAK,EAAAL,GAAAiD,EAAAjD,GAAA,EAAiBiD,GAAA5C,EAAA8B,EAAAc,EAAS,MAAM,YAAAjD,EAAA,EAAeA,EAAAiD,EAAAX,OAAWtC,IAAAmC,EAAAc,EAAAjD,GAAY,MAAM,YAAAiD,EAAAyL,EAAAzL,GAAAjD,EAAA,EAAkCA,EAAAiD,EAAAX,OAAWtC,IAAA,IAAAQ,EAAA,EAAYA,EAAAyC,EAAAjD,GAAAsC,OAAc9B,IAAA2B,EAAAc,EAAAjD,GAAAQ,IAAe,IAAAyC,EAAAX,OAAAW,IAAA,GAAAf,EAAA,QAAAA,CAAgC,IAAAJ,IAAOqM,KAAA,UAAAiB,UAAyBjB,KAAAjM,EAAAmN,YAAApM,GAAqBgL,WAAA1M,KAAA0M,WAA6B,aAAA1M,QAAAO,EAAAoG,GAAA3G,KAAA2G,IAAApG,KACjzEwN,yBAAA,IAA2BC,GAAA,SAAA/M,EAAAzC,EAAAD,GAC9B,YAAa,SAAAuN,GAAA3L,EAAAM,GAA8BT,KAAAiO,QAAA,EAAAjO,KAAAjB,KAAA,KAAAiB,KAAA2M,OAAA,KAAA3M,KAAAe,OAAA,EAAAf,KAAA6M,KAAA1M,EAAAH,KAAA+M,SAAA/M,KAAAgN,WAAAhN,KAAAkO,aAAA/N,EAAAiM,WAAA+B,EAAAnO,KAAAS,GAAAT,KAAAe,OAAAf,KAAAkO,UAAAnN,OAA0L,QAAAoN,GAAAhO,EAAAM,EAAAC,GAA0B,KAAAP,EAAAM,EAAAwN,QAAAvN,EAAA4L,aAAA,IAAAnM,EAAAM,EAAA1B,KAAA2B,EAAA0N,aAAA,IAAAjO,EAAAM,EAAAkM,OAAAjM,EAAA4L,aAAA,IAAAnM,EAAAM,EAAAyN,UAAA7G,KAAA3G,EAAA6L,KAAA,IAAApM,EAAAM,EAAAsM,MAAA1F,KAAA3G,EAAA0N,cAAA,IAAAjO,GAAAM,EAAAuM,QAAA3F,KAAAgH,EAAA3N,IAAsM,QAAA2N,GAAAlO,GAA6B,OAAAM,GAAA,KAAAC,EAAAP,EAAAmM,aAAAnM,EAAAoM,IAAsCpM,EAAAoM,IAAA7L,GAAQ,CAAE,GAAAE,GAAAT,EAAAmM,cAAA,CAAwB7L,GAAA,IAAAG,EAAAT,EAAAiO,aAAA,IAAAxN,EAAAT,EAAAmO,YAAA,IAAA1N,EAAAT,EAAAoO,aAAA,IAAA3N,EAAAT,EAAAqO,eAAA,IAAA5N,EAAAT,EAAAmM,aAAA,IAAA1L,EAAAT,EAAAoN,cAAA,IAAA3M,EAAAT,EAAAsO,cAAA,KAA6J,MAAAhO,GAAS,GAAAoL,GAAA5K,EAAA,yBAAwDzC,GAAAD,QAAAuN,IAAAnM,UAAA+O,QAAA,SAAAvO,GAA6E,GAAAA,EAAA,GAAAA,GAAAH,KAAAkO,UAAAnN,OAAA,SAAAF,OAAA,8BAAgFb,MAAA6M,KAAAN,IAAAvM,KAAAkO,UAAA/N,EAAgC,IAAAM,GAAAT,KAAA6M,KAAAP,aAAAtM,KAAA6M,KAAAN,GAA2C,WAAAV,GAAA7L,KAAA6M,KAAApM,EAAAT,KAAA2M,OAAA3M,KAAA+M,MAAA/M,KAAAgN,YAC7+B2B,yBAAA,IAA2BC,IAAA,SAAA3N,EAAAzC,EAAAD,IAC9B,SAAA4B,EAAAM,GAAe,gBAAAlC,IAAA,mBAAAC,GAAAiC,EAAAlC,GAAA,kBAAAiC,MAAAU,IAAAV,GAAA,WAAAC,KAAAN,EAAA0O,OAAA1O,EAAA0O,aAAqJ7O,KAAA,SAAAG,GAAkB,QAAAM,GAAAN,EAAAM,EAAAC,EAAAnB,EAAAd,EAAAqB,GAAwB,MAAAA,SAAcK,EAAA,aAAAlB,EAAAyB,EAAAnB,EAAAd,GAAA,WAAAqB,EAAAgP,QAAA,yBAAAhP,EAAAiP,SAAA,mBAAAjP,EAAAmO,SAAA,qBAAAnO,EAAAkP,SAAA,kBAAAlP,EAAAmP,KAAA,uBAAAnP,EAAAmH,OAAA,gBAAAnH,EAAAoH,QAAA,eAAAzG,GAAAyO,KAAA,KAA+P,QAAAjQ,GAAAkB,EAAAM,EAAAxB,GAAkBwB,EAAAY,KAAAkJ,IAAA,EAAAtL,GAAAwB,EAAA,CAAoB,IAAAlB,GAAAmB,EAAA,IAAAP,EAAA,IAAAM,EAAAxB,GAAAR,EAAAiC,EAAA,KAAAP,EAAA,QAAAM,EAAA,GAAAxB,EAAkD,OAAAM,GAAA,OAAAA,EAAA,OAAAd,EAAA,OAAAA,EAAA,GAAuC,QAAAiC,GAAAP,EAAAM,EAAAxB,GAAkB,GAAAyB,GAAA,EAAAW,KAAAqM,GAAA,YAAArM,KAAAkJ,IAAA,EAAAtL,EAA0C,QAAAkB,EAAAO,EAAA,EAAAW,KAAAqM,GAAA,UAAAjN,EAAAC,EAAA,EAAAW,KAAAqM,GAAA,WAAwDvN,EAAAgP,OAAA1O,EAAAN,EAAAiP,YAAAnQ,EAAAkB,EAAAkP,cAAA3O,EAAAxB,OAAAC,eAAAgB,EAAA,cAAmFmP,OAAA,WAC7xBC,IAAA,SAAAtO,EAAAzC,EAAAD,GACJ,YAAa,SAAAiR,GAAArP,EAAAZ,EAAAmB,GAAuBA,KAAA,CAAO,IAAAD,GAAAlB,KAAAwB,OAAAtC,EAAAgC,EAAAlB,EAAA,GAAAmB,EAAAP,EAAAY,OAAAgB,EAAA0N,EAAAtP,EAAA,EAAA1B,EAAAiC,GAAA,GAAAE,IAAoE,KAAAmB,EAAA,MAAAnB,EAAe,IAAA3B,GAAAP,EAAAiC,EAAAb,EAAA0B,EAAAjB,EAAAoB,CAAkB,IAAAlB,IAAAsB,EAAA2N,EAAAvP,EAAAZ,EAAAwC,EAAArB,IAAAP,EAAAY,OAAA,GAAAL,EAAA,CAAiDzB,EAAA0B,EAAAR,EAAA,GAAAzB,EAAAoB,EAAAK,EAAA,EAAkB,QAAArB,GAAA4B,EAAY5B,EAAAL,EAAIK,GAAA4B,EAAAc,EAAArB,EAAArB,GAAAyB,EAAAJ,EAAArB,EAAA,GAAA0C,EAAAvC,MAAAuC,GAAAjB,EAAA7B,MAAA6B,GAAAiB,EAAAb,MAAAa,GAAAjB,EAAAT,MAAAS,EAAiEoB,GAAAN,KAAAuG,IAAAjH,EAAA1B,EAAAa,EAAApB,GAAoB,MAAAiR,GAAA5N,EAAAnB,EAAAF,EAAAzB,EAAAP,EAAAiD,GAAAf,EAAmC,QAAA6O,GAAAtP,EAAAZ,EAAAmB,EAAAD,EAAAhC,GAA+B,GAAAsD,GAAAnB,CAAQ,IAAAnC,IAAA2O,EAAAjN,EAAAZ,EAAAmB,EAAAD,GAAA,MAAAsB,EAAAxC,EAAqCwC,EAAArB,EAAIqB,GAAAtB,EAAAG,EAAAgP,EAAA7N,EAAA5B,EAAA4B,GAAA5B,EAAA4B,EAAA,GAAAnB,OAAmC,KAAAmB,EAAArB,EAAAD,EAAesB,GAAAxC,EAAKwC,GAAAtB,EAAAG,EAAAgP,EAAA7N,EAAA5B,EAAA4B,GAAA5B,EAAA4B,EAAA,GAAAnB,EAAmC,OAAAA,IAAA2E,EAAA3E,IAAAiP,QAAAC,EAAAlP,OAAAiP,MAAAjP,EAAuD,QAAAmP,GAAA5P,EAAAZ,GAA2B,IAAAY,EAAA,MAAAA,EAAeZ,OAAAY,EAAS,IAAAO,GAAAD,EAAAN,CAAU,IAAG,GAAAO,GAAA,EAAAD,EAAAuP,UAAAzK,EAAA9E,IAAAoP,OAAA,IAAAI,EAAAxP,EAAAyP,KAAAzP,IAAAoP,MAAApP,IAAAoP,SAAyE,CAAK,GAAAC,EAAArP,MAAAlB,EAAAkB,EAAAyP,QAAAzP,EAAAoP,KAAA,WAAmDnP,IAAA,SAAMA,GAAAD,IAAAlB,EAAgB,OAAAA,GAAS,QAAAoQ,GAAAxP,EAAAZ,EAAAmB,EAAAD,EAAAhC,EAAAsD,EAAAnB,GAAqC,GAAAT,EAAA,EAAMS,GAAAmB,GAAAoO,EAAAhQ,EAAAM,EAAAhC,EAAAsD,EAA2B,QAAA9C,GAAAP,EAAAiC,EAAAR,EAAgBA,EAAA+P,OAAA/P,EAAA0P,MAAgB,GAAA5Q,EAAAkB,EAAA+P,KAAAxR,EAAAyB,EAAA0P,KAAA9N,EAAAqO,EAAAjQ,EAAAM,EAAAhC,EAAAsD,GAAAsO,EAAAlQ,GAAAZ,EAAA8H,KAAApI,EAAAR,EAAAiC,GAAAnB,EAAA8H,KAAAlH,EAAA1B,EAAAiC,GAAAnB,EAAA8H,KAAA3I,EAAAD,EAAAiC,GAAAoP,EAAA3P,KAAAzB,EAAAmR,KAAAlP,EAAAjC,EAAAmR,SAAgI,KAAA1P,EAAAzB,KAAAiC,EAAA,CAAmBC,EAAA,IAAAA,GAAAT,EAAAmQ,EAAAnQ,EAAAZ,EAAAmB,GAAAiP,EAAAxP,EAAAZ,EAAAmB,EAAAD,EAAAhC,EAAAsD,EAAA,QAAAnB,GAAA2P,EAAApQ,EAAAZ,EAAAmB,EAAAD,EAAAhC,EAAAsD,GAAA4N,EAAAI,EAAA5P,GAAAZ,EAAAmB,EAAAD,EAAAhC,EAAAsD,EAAA,EAAgJ,SAAQ,QAAAsO,GAAAlQ,GAAkB,GAAAZ,GAAAY,EAAA+P,KAAAxP,EAAAP,EAAAM,EAAAN,EAAA0P,IAA0B,IAAAI,EAAA1Q,EAAAmB,EAAAD,IAAA,UAA2B,QAAAhC,GAAA0B,EAAA0P,UAAsBpR,IAAA0B,EAAA+P,MAAW,CAAE,GAAAM,EAAAjR,EAAAwC,EAAAxC,EAAAoC,EAAAjB,EAAAqB,EAAArB,EAAAiB,EAAAlB,EAAAsB,EAAAtB,EAAAkB,EAAAlD,EAAAsD,EAAAtD,EAAAkD,IAAAsO,EAAAxR,EAAAyR,KAAAzR,IAAAoR,OAAA,UAAuFpR,KAAAoR,KAAS,SAAS,QAAAO,GAAAjQ,EAAAZ,EAAAmB,EAAAD,GAA8B,GAAAhC,GAAA0B,EAAA+P,KAAAnO,EAAA5B,EAAAS,EAAAT,EAAA0P,IAA0B,IAAAI,EAAAxR,EAAAsD,EAAAnB,IAAA,UAA2B,QAAA3B,GAAAR,EAAAsD,MAAAtD,EAAAsD,EAAAnB,EAAAmB,EAAAtD,EAAAsD,EAAAnB,EAAAmB,MAAAnB,EAAAmB,MAAAnB,EAAAmB,EAAArD,EAAAD,EAAAkD,EAAAI,EAAAJ,EAAAlD,EAAAkD,EAAAf,EAAAe,EAAAlD,EAAAkD,EAAAf,EAAAe,EAAAI,EAAAJ,EAAAf,EAAAe,EAAAI,EAAAJ,EAAAf,EAAAe,EAAAhB,EAAAlC,EAAAsD,MAAAtD,EAAAsD,EAAAnB,EAAAmB,EAAAtD,EAAAsD,EAAAnB,EAAAmB,MAAAnB,EAAAmB,MAAAnB,EAAAmB,EAAAjC,EAAArB,EAAAkD,EAAAI,EAAAJ,EAAAlD,EAAAkD,EAAAf,EAAAe,EAAAlD,EAAAkD,EAAAf,EAAAe,EAAAI,EAAAJ,EAAAf,EAAAe,EAAAI,EAAAJ,EAAAf,EAAAe,EAAAH,EAAAiP,EAAAxR,EAAAP,EAAAa,EAAAmB,EAAAD,GAAAF,EAAAkQ,EAAA9P,EAAAb,EAAAP,EAAAmB,EAAAD,GAAAkB,EAAAxB,EAAAuQ,MAAkO/O,KAAA6H,GAAAjJ,GAAU,CAAE,GAAAoB,IAAAxB,EAAA+P,MAAAvO,IAAAxB,EAAA0P,MAAAW,EAAA/R,EAAAsD,EAAAtD,EAAAkD,EAAAI,MAAAJ,EAAAf,EAAAmB,EAAAnB,EAAAe,IAAAI,EAAAJ,MAAAsO,EAAAtO,EAAAuO,KAAAvO,IAAAkO,OAAA,UAA+GlO,KAAA+O,MAAU,IAAA/O,EAAAxB,EAAAwQ,MAAchP,KAAA6H,GAAAhI,GAAU,CAAE,GAAAG,IAAAxB,EAAA+P,MAAAvO,IAAAxB,EAAA0P,MAAAW,EAAA/R,EAAAsD,EAAAtD,EAAAkD,EAAAI,MAAAJ,EAAAf,EAAAmB,EAAAnB,EAAAe,IAAAI,EAAAJ,MAAAsO,EAAAtO,EAAAuO,KAAAvO,IAAAkO,OAAA,UAA+GlO,KAAAgP,MAAU,SAAS,QAAAL,GAAAnQ,EAAAZ,EAAAmB,GAAuC,GAAAD,GAAAN,CAAQ,IAAG,GAAA1B,GAAAgC,EAAAyP,KAAAnO,EAAAtB,EAAAoP,WAA2BtK,EAAA9G,EAAAsD,IAAA6O,EAAAnS,EAAAgC,IAAAoP,KAAA9N,IAAA8O,EAAApS,EAAAsD,IAAA8O,EAAA9O,EAAAtD,KAAAc,EAAA8H,KAAA5I,IAAAiC,GAAAnB,EAAA8H,KAAA5G,EAAAhC,EAAAiC,GAAAnB,EAAA8H,KAAAtF,EAAAtD,EAAAiC,GAAAoP,EAAArP,GAAAqP,EAAArP,EAAAoP,MAAApP,EAAAN,EAAA4B,GAAAtB,IAAAoP,WAA4KpP,IAAAN,EAAa,OAAAM,GAAS,QAAA8P,GAAApQ,EAAAZ,EAAAmB,EAAAD,EAAAhC,EAAAsD,GAAkC,GAAAnB,GAAAT,CAAQ,IAAG,OAAAlB,GAAA2B,EAAAiP,UAAsB5Q,IAAA2B,EAAAsP,MAAW,CAAE,GAAAtP,EAAAnC,IAAAQ,EAAAR,GAAAqS,EAAAlQ,EAAA3B,GAAA,CAAoC,GAAAP,GAAAqS,EAAAnQ,EAAA3B,EAAwB,OAAA2B,GAAAmP,EAAAnP,IAAAiP,MAAAnR,EAAAqR,EAAArR,IAAAmR,MAAAF,EAAA/O,EAAArB,EAAAmB,EAAAD,EAAAhC,EAAAsD,OAAA4N,GAAAjR,EAAAa,EAAAmB,EAAAD,EAAAhC,EAAAsD,GAAkH9C,IAAA4Q,KAASjP,IAAAiP,WAASjP,IAAAT,GAAa,QAAAuP,GAAAvP,EAAAZ,EAAAmB,EAAAD,GAAiC,GAAAhC,GAAAsD,EAAAnB,EAAA3B,EAAAP,EAAAiC,IAAmB,KAAAlC,EAAA,EAAAsD,EAAAxC,EAAAwB,OAAmBtC,EAAAsD,EAAItD,IAAAmC,EAAArB,EAAAd,GAAAgC,EAAAxB,EAAAR,EAAAsD,EAAA,EAAAxC,EAAAd,EAAA,GAAAgC,EAAAN,EAAAY,OAAArC,EAAA+Q,EAAAtP,EAAAS,EAAA3B,EAAAwB,GAAA,GAAA/B,MAAAmR,OAAAnR,EAAAsR,SAAA,GAAArP,EAAA0G,KAAA2J,EAAAtS,GAAkH,KAAAiC,EAAAsQ,KAAAC,GAAAzS,EAAA,EAAyBA,EAAAkC,EAAAI,OAAWtC,IAAA0S,EAAAxQ,EAAAlC,GAAAiC,KAAAqP,EAAArP,IAAAmP,KAAmD,OAAAnP,GAAS,QAAAwQ,GAAA/Q,EAAAZ,GAAuB,MAAAY,GAAA4B,EAAAxC,EAAAwC,EAAe,QAAAoP,GAAAhR,EAAAZ,GAA4B,GAAAA,EAAA6R,EAAAjR,EAAAZ,GAAA,CAA0B,GAAAmB,GAAAqQ,EAAAxR,EAAAY,EAAwB4P,GAAArP,IAAAmP,OAAwB,QAAAuB,GAAAjR,EAAAZ,GAA6B,GAAAmB,GAAAD,EAAAlB,EAAAd,EAAA0B,EAAA4B,IAAA5B,EAAAwB,EAAAf,GAAA,GAA6B,IAAG,GAAAmB,GAAAtB,EAAAkB,GAAAI,GAAAtB,EAAAoP,KAAAlO,EAAA,CAAwB,GAAA1C,GAAAwB,EAAAsB,KAAAtB,EAAAkB,IAAAlB,EAAAoP,KAAA9N,EAAAtB,EAAAsB,IAAAtB,EAAAoP,KAAAlO,EAAAlB,EAAAkB,EAAgD,IAAA1C,GAAAR,GAAAQ,EAAA2B,EAAA,CAAc,GAAAA,EAAA3B,MAAAR,EAAA,CAAc,GAAAsD,IAAAtB,EAAAkB,EAAA,MAAAlB,EAAoB,IAAAsB,IAAAtB,EAAAoP,KAAAlO,EAAA,MAAAlB,GAAAoP,KAA8BnP,EAAAD,EAAAsB,EAAAtB,EAAAoP,KAAA9N,EAAAtB,IAAAoP,MAAyBpP,IAAAoP,WAASpP,IAAAlB,EAAa,KAAAmB,EAAA,WAAkB,IAAAjC,IAAAmC,EAAA,MAAAF,GAAAwP,IAAuB,IAAAxR,GAAAiC,EAAAD,EAAAZ,EAAAY,EAAAqB,EAAAP,EAAAd,EAAAiB,EAAApB,EAAA,GAA4B,KAAAE,EAAAC,EAAAmP,KAAapP,IAAAE,GAAMlC,GAAAgC,EAAAsB,GAAAtB,EAAAsB,GAAAjC,GAAA0Q,EAAAzO,EAAAP,EAAA/C,EAAAmC,EAAAmB,EAAAjC,EAAA0B,EAAAO,EAAAP,EAAAZ,EAAAnC,EAAAsD,EAAAtB,EAAAsB,EAAAtB,EAAAkB,MAAAjD,EAAA2C,KAAAoK,IAAA1J,EAAAtB,EAAAkB,IAAAlD,EAAAgC,EAAAsB,IAAAxB,GAAA7B,IAAA6B,GAAAE,EAAAsB,EAAArB,EAAAqB,IAAA8O,EAAApQ,EAAAN,KAAAO,EAAAD,EAAAF,EAAA7B,GAAA+B,IAAAoP,IAA2J,OAAAnP,GAAS,QAAAyP,GAAAhQ,EAAAZ,EAAAmB,EAAAD,GAA6B,GAAAhC,GAAA0B,CAAQ,IAAG,OAAA1B,EAAA+K,IAAA/K,EAAA+K,EAAAiH,EAAAhS,EAAAsD,EAAAtD,EAAAkD,EAAApC,EAAAmB,EAAAD,IAAAhC,EAAAkS,MAAAlS,EAAAyR,KAAAzR,EAAAiS,MAAAjS,EAAAoR,KAAApR,IAAAoR,WAA+EpR,IAAA0B,EAAa1B,GAAAkS,MAAAD,MAAA,KAAAjS,EAAAkS,MAAA,KAAAU,EAAA5S,GAA8C,QAAA4S,GAAAlR,GAAuB,GAAAZ,GAAAmB,EAAAD,EAAAhC,EAAAsD,EAAAnB,EAAA3B,EAAAP,EAAAiC,EAAA,CAAwB,IAAG,IAAAD,EAAAP,IAAA,KAAA4B,EAAA,KAAAnB,EAAA,EAA0BF,GAAE,CAAE,IAAAE,IAAAH,EAAAC,EAAAzB,EAAA,EAAAM,EAAA,EAAoBA,EAAAoB,IAAA1B,IAAAwB,IAAAiQ,OAAqBnR,KAAK,IAAAb,EAAAiC,EAAQ1B,EAAA,GAAAP,EAAA,GAAA+B,GAAY,IAAAxB,GAAAR,EAAAgC,MAAAiQ,MAAAhS,KAAA,IAAAA,GAAA+B,EAAAC,EAAA8I,GAAA/I,EAAA+I,GAAA/K,EAAAiC,MAAAgQ,MAAAzR,MAAAR,EAAAgC,MAAAiQ,MAAAhS,MAAAD,EAAAiC,MAAAgQ,MAAAzR,KAAA8C,IAAA2O,MAAAjS,EAAA0B,EAAA1B,IAAAkS,MAAA5O,IAAAtD,CAAuIiC,GAAAD,EAAIsB,EAAA2O,MAAA,KAAA/P,GAAA,QAAkBC,EAAA,EAAW,OAAAT,GAAS,QAAAsQ,GAAAtQ,EAAAZ,EAAAmB,EAAAD,EAAAhC,GAA2B,MAAA0B,GAAA,OAAAA,EAAAO,GAAAjC,EAAAc,EAAA,OAAAA,EAAAkB,GAAAhC,EAAA0B,EAAA,UAAAA,KAAA,GAAAA,EAAA,WAAAA,KAAA,GAAAA,EAAA,WAAAA,KAAA,GAAAA,EAAA,YAAAA,KAAA,GAAAZ,EAAA,UAAAA,KAAA,GAAAA,EAAA,WAAAA,KAAA,GAAAA,EAAA,WAAAA,KAAA,GAAAA,EAAA,YAAAA,KAAA,GAAAY,EAAAZ,GAAA,EAAsN,QAAAyR,GAAA7Q,GAAwB,GAAAZ,GAAAY,EAAAO,EAAAP,CAAY,IAAGZ,EAAAwC,EAAArB,EAAAqB,IAAArB,EAAAnB,OAAAsQ,WAAwBtQ,IAAAY,EAAa,OAAAO,GAAS,QAAA8P,GAAArQ,EAAAZ,EAAAmB,EAAAD,EAAAhC,EAAAsD,EAAAnB,EAAA3B,GAA0C,OAAAR,EAAAmC,IAAArB,EAAAN,IAAAkB,EAAAS,IAAAmB,EAAA9C,IAAA,IAAAkB,EAAAS,IAAAH,EAAAxB,IAAAyB,EAAAE,IAAArB,EAAAN,IAAA,IAAAyB,EAAAE,IAAAmB,EAAA9C,IAAAR,EAAAmC,IAAAH,EAAAxB,IAAA,EAAyF,QAAA6R,GAAA3Q,EAAAZ,GAA8B,MAAAY,GAAA0P,KAAApR,IAAAc,EAAAd,GAAA0B,EAAA+P,KAAAzR,IAAAc,EAAAd,IAAA6S,EAAAnR,EAAAZ,IAAAsR,EAAA1Q,EAAAZ,IAAAsR,EAAAtR,EAAAY,IAAAoR,EAAApR,EAAAZ,GAA0H,QAAA0Q,GAAA9P,EAAAZ,EAAAmB,GAAqB,OAAAnB,EAAAoC,EAAAxB,EAAAwB,IAAAjB,EAAAqB,EAAAxC,EAAAwC,IAAAxC,EAAAwC,EAAA5B,EAAA4B,IAAArB,EAAAiB,EAAApC,EAAAoC,GAA8C,QAAA4D,GAAApF,EAAAZ,GAAqB,MAAAY,GAAA4B,IAAAxC,EAAAwC,GAAA5B,EAAAwB,IAAApC,EAAAoC,EAA4B,QAAAiP,GAAAzQ,EAAAZ,EAAAmB,EAAAD,GAA6B,SAAA8E,EAAApF,EAAAZ,IAAAgG,EAAA7E,EAAAD,IAAA8E,EAAApF,EAAAM,IAAA8E,EAAA7E,EAAAnB,KAAA0Q,EAAA9P,EAAAZ,EAAAmB,GAAA,GAAAuP,EAAA9P,EAAAZ,EAAAkB,GAAA,GAAAwP,EAAAvP,EAAAD,EAAAN,GAAA,GAAA8P,EAAAvP,EAAAD,EAAAlB,GAAA,EAAyH,QAAA+R,GAAAnR,EAAAZ,GAAgC,GAAAmB,GAAAP,CAAQ,IAAG,GAAAO,EAAAjC,IAAA0B,EAAA1B,GAAAiC,EAAAmP,KAAApR,IAAA0B,EAAA1B,GAAAiC,EAAAjC,IAAAc,EAAAd,GAAAiC,EAAAmP,KAAApR,IAAAc,EAAAd,GAAAmS,EAAAlQ,IAAAmP,KAAA1P,EAAAZ,GAAA,QAA2FmB,KAAAmP,WAASnP,IAAAP,EAAa,UAAS,QAAA0Q,GAAA1Q,EAAAZ,GAA4B,MAAA0Q,GAAA9P,EAAA+P,KAAA/P,IAAA0P,MAAA,EAAAI,EAAA9P,EAAAZ,EAAAY,EAAA0P,OAAA,GAAAI,EAAA9P,IAAA+P,KAAA3Q,IAAA,EAAA0Q,EAAA9P,EAAAZ,EAAAY,EAAA+P,MAAA,GAAAD,EAAA9P,IAAA0P,KAAAtQ,GAAA,EAA+G,QAAAgS,GAAApR,EAAAZ,GAA2B,GAAAmB,GAAAP,EAAAM,GAAA,EAAAhC,GAAA0B,EAAA4B,EAAAxC,EAAAwC,GAAA,EAAAA,GAAA5B,EAAAwB,EAAApC,EAAAoC,GAAA,CAAyC,IAAGjB,EAAAiB,EAAAI,GAAArB,EAAAmP,KAAAlO,EAAAI,GAAAtD,GAAAiC,EAAAmP,KAAA9N,EAAArB,EAAAqB,MAAArB,EAAAiB,IAAAjB,EAAAmP,KAAAlO,EAAAjB,EAAAiB,GAAAjB,EAAAqB,IAAAtB,MAAAC,IAAAmP,WAAgFnP,IAAAP,EAAa,OAAAM,GAAS,QAAAsQ,GAAA5Q,EAAAZ,GAA2B,GAAAmB,GAAA,GAAA8Q,GAAArR,EAAA1B,EAAA0B,EAAA4B,EAAA5B,EAAAwB,GAAAlB,EAAA,GAAA+Q,GAAAjS,EAAAd,EAAAc,EAAAwC,EAAAxC,EAAAoC,GAAAlD,EAAA0B,EAAA0P,KAAA9N,EAAAxC,EAAA2Q,IAAsE,OAAA/P,GAAA0P,KAAAtQ,IAAA2Q,KAAA/P,EAAAO,EAAAmP,KAAApR,IAAAyR,KAAAxP,EAAAD,EAAAoP,KAAAnP,IAAAwP,KAAAzP,EAAAsB,EAAA8N,KAAApP,IAAAyP,KAAAnO,EAAAtB,EAAiF,QAAAmP,GAAAzP,EAAAZ,EAAAmB,EAAAD,GAA6B,GAAAhC,GAAA,GAAA+S,GAAArR,EAAAZ,EAAAmB,EAAsB,OAAAD,IAAAhC,EAAAoR,KAAApP,EAAAoP,KAAApR,EAAAyR,KAAAzP,IAAAoP,KAAAK,KAAAzR,EAAAgC,EAAAoP,KAAApR,MAAAyR,KAAAzR,IAAAoR,KAAApR,KAA+E,QAAAqR,GAAA3P,GAAuBA,EAAA0P,KAAAK,KAAA/P,EAAA+P,KAAA/P,EAAA+P,KAAAL,KAAA1P,EAAA0P,KAAA1P,EAAAwQ,QAAAxQ,EAAAwQ,MAAAD,MAAAvQ,EAAAuQ,OAAAvQ,EAAAuQ,QAAAvQ,EAAAuQ,MAAAC,MAAAxQ,EAAAwQ,OAAwG,QAAAa,GAAArR,EAAAZ,EAAAmB,GAAqBV,KAAAvB,EAAA0B,EAAAH,KAAA+B,EAAAxC,EAAAS,KAAA2B,EAAAjB,EAAAV,KAAAkQ,KAAA,KAAAlQ,KAAA6P,KAAA,KAAA7P,KAAAwJ,EAAA,KAAAxJ,KAAA2Q,MAAA,KAAA3Q,KAAA0Q,MAAA,KAAA1Q,KAAAgQ,SAAA,EAAqH,QAAA5C,GAAAjN,EAAAZ,EAAAmB,EAAAD,GAA6B,OAAAhC,GAAA,EAAAsD,EAAAxC,EAAAqB,EAAAF,EAAAD,EAAsBsB,EAAArB,EAAIqB,GAAAtB,EAAAhC,IAAA0B,EAAAS,GAAAT,EAAA4B,KAAA5B,EAAA4B,EAAA,GAAA5B,EAAAS,EAAA,IAAAA,EAAAmB,CAAwC,OAAAtD,GAASD,EAAAD,QAAAiR,IAAAiC,UAAA,SAAAtR,EAAAZ,EAAAmB,EAAAD,GAAyD,GAAAhC,GAAAc,KAAAwB,OAAAgB,EAAAtD,EAAAc,EAAA,GAAAmB,EAAAP,EAAAY,OAAAH,EAAAS,KAAAoK,IAAA2B,EAAAjN,EAAA,EAAA4B,EAAArB,GAAsE,IAAAjC,EAAA,OAAAQ,GAAA,EAAAP,EAAAa,EAAAwB,OAA4B9B,EAAAP,EAAIO,IAAA,CAAK,GAAA0B,GAAApB,EAAAN,GAAAyB,EAAAZ,EAAAb,EAAAP,EAAA,EAAAa,EAAAN,EAAA,GAAAyB,EAAAP,EAAAY,MAAuCH,IAAAS,KAAAoK,IAAA2B,EAAAjN,EAAAQ,EAAAb,EAAAY,IAAiC,GAAAc,GAAA,CAAQ,KAAAvC,EAAA,EAAQA,EAAAwB,EAAAM,OAAW9B,GAAA,GAAM,GAAAsB,GAAAE,EAAAxB,GAAAyB,EAAAiB,EAAAlB,EAAAxB,EAAA,GAAAyB,EAAA5B,EAAA2B,EAAAxB,EAAA,GAAAyB,CAAmCc,IAAAH,KAAAoK,KAAAtL,EAAAI,GAAAJ,EAAArB,KAAAqB,EAAAwB,EAAA,GAAAxB,EAAAI,EAAA,KAAAJ,EAAAI,GAAAJ,EAAAwB,KAAAxB,EAAArB,EAAA,GAAAqB,EAAAI,EAAA,KAAqE,WAAAK,GAAA,IAAAY,EAAA,EAAAH,KAAAoK,KAAAjK,EAAAZ,OAAwC4O,EAAAkC,QAAA,SAAAvR,GAA4B,OAAAZ,GAAAY,EAAA,MAAAY,OAAAL,GAA4BiR,YAAAC,SAAAC,WAAAtS,GAAkCkB,EAAA,EAAAhC,EAAA,EAASA,EAAA0B,EAAAY,OAAWtC,IAAA,CAAK,OAAAsD,GAAA,EAAYA,EAAA5B,EAAA1B,GAAAsC,OAAcgB,IAAA,OAAAnB,GAAA,EAAgBA,EAAArB,EAAIqB,IAAAF,EAAAiR,SAAAtK,KAAAlH,EAAA1B,GAAAsD,GAAAnB,GAAgCnC,GAAA,IAAAgC,GAAAN,EAAA1B,EAAA,GAAAsC,OAAAL,EAAAkR,MAAAvK,KAAA5G,IAAwC,MAAAC,SAC7gNoR,IAAA,SAAA7Q,EAAAzC,EAAAD,GACJ,QAAAsP,GAAAnN,GAAqB,eAAAA,EAAAkM,KAAA,MAAAmF,GAAArR,EAAAoN,YAAwD,qBAAApN,EAAAkM,KAAA,CAA4B,OAAAzM,GAAA,EAAAZ,EAAA,EAAgBA,EAAAmB,EAAAoN,YAAA/M,OAAuBxB,IAAAY,GAAA4R,EAAArR,EAAAoN,YAAAvO,GAAqC,OAAAY,GAAS,YAAY,QAAA4R,GAAArR,GAAwB,GAAAP,GAAA,CAAQ,IAAAO,KAAAK,OAAA,GAAkBZ,GAAAkB,KAAAoK,IAAAuG,EAAAtR,EAAA,IAA4B,QAAAnB,GAAA,EAAYA,EAAAmB,EAAAK,OAAWxB,IAAAY,GAAAkB,KAAAoK,IAAAuG,EAAAtR,EAAAnB,KAAgC,MAAAY,GAAS,QAAA6R,GAAAtR,GAAqB,GAAAP,GAAA,CAAQ,IAAAO,EAAAK,OAAA,GAAe,OAAAxB,GAAAkB,EAAAxB,EAAA,EAAgBA,EAAAyB,EAAAK,OAAA,EAAa9B,IAAAM,EAAAmB,EAAAzB,GAAAwB,EAAAC,EAAAzB,EAAA,GAAAkB,GAAA8R,EAAAxR,EAAA,GAAAlB,EAAA,OAAA8B,KAAAC,IAAA2Q,EAAA1S,EAAA,KAAA8B,KAAAC,IAAA2Q,EAAAxR,EAAA,KAAkFN,KAAA+R,EAAAC,OAAAD,EAAAC,OAAA,EAAgC,MAAAhS,GAAS,QAAA8R,GAAAvR,GAAgB,MAAAA,GAAAW,KAAAqM,GAAA,IAAqB,GAAAwE,GAAAjR,EAAA,QAA2BzC,GAAAD,QAAAsP,WAAArP,EAAAD,QAAA6T,KAAAJ,IACzlBE,MAAA,KAAWG,IAAA,SAAApR,EAAAzC,EAAAD,GACd,QAAA+T,GAAA5R,EAAAP,GAAqB,OAAAO,KAAAkM,MAAA,MAAwB,8BAAAlM,GAAA6R,SAAA7R,EAAA6R,SAAAC,IAAAC,EAAAH,EAAAnS,IAAAO,CAAiF,qBAAAA,GAAAmN,SAAAyE,EAAA5R,EAAAmN,SAAA1N,GAAAO,CAAuD,wCAAAgS,GAAAhS,EAAAP,EAAqD,eAAAO,IAAkB,QAAA+R,GAAA/R,EAAAP,GAAyB,gBAAAZ,GAAmB,MAAAmB,GAAAnB,EAAAY,IAAe,QAAAuS,GAAAhS,EAAAP,GAAsB,kBAAAO,EAAAkM,KAAAlM,EAAAoN,YAAA6E,EAAAjS,EAAAoN,YAAA3N,GAAA,iBAAAO,EAAAkM,OAAAlM,EAAAoN,YAAApN,EAAAoN,YAAA0E,IAAAC,EAAAE,EAAAxS,KAAAO,EAA8J,QAAAiS,GAAAjS,EAAAP,GAA2BA,MAAAO,EAAA,GAAAkS,EAAAlS,EAAA,GAAAP,EAAwB,QAAAZ,GAAA,EAAYA,EAAAmB,EAAAK,OAAWxB,IAAAmB,EAAAnB,GAAAqT,EAAAlS,EAAAnB,IAAAY,EAAuB,OAAAO,GAAS,QAAAkS,GAAAlS,EAAAP,GAAmB,MAAA0S,GAAAnS,KAAAP,EAAAO,IAAAoS,UAA+B,QAAAD,GAAAnS,GAAe,MAAAqS,GAAAX,KAAA1R,IAAA,EAA8B,GAAAqS,GAAA9R,EAAA,eAAwCzC,GAAAD,QAAA+T,IACztBU,eAAA,KAAkBC,IAAA,SAAAhS,EAAAzC,EAAAD,GACrB,YAAa,SAAA2U,GAAA/S,EAAAO,EAAAD,EAAAlB,EAAAoB,EAAAlC,EAAAC,EAAAoB,GAA+B,GAAAW,GAAAC,EAAAnB,GAAAmB,EAAAhC,GAAA+B,GAAAX,GAAAP,EAAA,MAAAY,EAAiC,IAAAzB,EAAAa,GAAAO,EAAAW,EAAA,WAAwB,QAAAiB,MAAA7B,EAAA,EAAiBA,EAAAM,EAAAY,OAAWlB,IAAA,CAAK,GAAAe,GAAA/B,EAAAI,EAAAkB,EAAAN,GAAAU,EAAAtB,EAAA4O,SAAA9N,EAAAd,EAAA2N,IAAqC,IAAAhM,EAAA3B,EAAAuL,IAAA7J,GAAA9B,EAAAI,EAAA2I,IAAAjH,GAAAC,GAAAH,GAAA5B,GAAAU,EAAAmC,EAAA2F,KAAApI,OAA8C,MAAA2B,EAAArB,GAAAV,EAAA4B,GAAA,CAAqB,GAAAe,GAAA,IAAAzB,EAAAoT,EAAA5S,EAAAE,EAAAlB,EAAAoB,GAAAyS,EAAA7S,EAAAE,EAAAlB,EAAAoB,EAAAlC,EAAA,IAAAsB,EAA8DyB,GAAAT,QAAAW,EAAA2F,KAAAgM,EAAApU,EAAAqU,KAAAvT,EAAAyB,EAAAvC,EAAA0H,MAAkD,MAAAjF,GAAAX,OAAAW,EAAA,KAAuB,QAAAyR,GAAAhT,EAAAO,EAAAD,EAAAlB,GAA6B,OAAAoB,MAAAlC,EAAA,EAAiBA,EAAA0B,EAAAY,OAAWtC,IAAA,CAAK,GAAAC,GAAAyB,EAAA1B,GAAAqB,EAAApB,EAAAa,EAAkBO,IAAAY,GAAAZ,GAAAW,GAAAE,EAAA0G,KAAA3I,GAAsB,MAAAiC,GAAS,QAAAyS,GAAAjT,EAAAO,EAAAD,EAAAlB,EAAAoB,EAAAlC,GAAmC,OAAAC,MAAAoB,EAAA,EAAiBA,EAAAK,EAAAY,OAAWjB,IAAA,CAAK,GAAA4B,GAAA7B,EAAAe,EAAA/B,EAAA,EAAAI,EAAA,EAAAsB,EAAA,KAAAR,EAAAI,EAAAL,GAAA0B,EAAAzB,EAAAkQ,KAAArR,EAAAmB,EAAAyF,KAAA5D,EAAA7B,EAAAwT,MAAAC,EAAAzT,EAAAgB,OAAAjC,IAA4E,KAAAe,EAAA,EAAQA,EAAA2T,EAAA,EAAM3T,IAAA6B,EAAAnB,GAAAR,EAAAF,GAAAU,EAAAR,EAAAF,EAAA,GAAAhB,EAAAI,GAAAyC,EAAAnC,GAAAN,EAAAsB,EAAAhB,GAAAV,EAAA6B,EAAAzB,EAAAwB,GAAA3B,EAAAuI,KAAA1G,EAAAe,EAAAnB,EAAAG,GAAAC,EAAAe,EAAAnB,EAAAE,IAAAhC,IAAAK,EAAA2U,EAAA/U,EAAAI,EAAA0C,EAAA5C,EAAAgD,KAAA3C,GAAAyB,GAAA5B,EAAAuI,KAAA1G,EAAAe,EAAAnB,EAAAG,IAAA7B,EAAA4B,EAAAxB,EAAAyB,GAAA5B,EAAAuI,KAAA1G,EAAAe,EAAAnB,EAAAE,GAAAE,EAAAe,EAAAnB,EAAAG,IAAAjC,IAAAK,EAAA2U,EAAA/U,EAAAI,EAAA0C,EAAA5C,EAAAgD,KAAA3C,GAAAwB,GAAA3B,EAAAuI,KAAA1G,EAAAe,EAAAnB,EAAAE,KAAA3B,EAAAuI,KAAA3F,GAAAzC,EAAAyB,GAAA5B,EAAAuI,KAAA1G,EAAAe,EAAAnB,EAAAG,IAAAjC,IAAAK,EAAA2U,EAAA/U,EAAAI,EAAA0C,EAAA5C,EAAAgD,KAAA3C,EAAAwB,IAAA3B,EAAAuI,KAAA1G,EAAAe,EAAAnB,EAAAE,IAAAhC,IAAAK,EAAA2U,EAAA/U,EAAAI,EAAA0C,EAAA5C,EAAAgD,KAAqUF,GAAA3B,EAAAyT,EAAA,GAAA3U,EAAA6C,EAAAnC,GAAAV,GAAA6B,GAAA7B,GAAA4B,GAAA3B,EAAAuI,KAAA3F,GAAAd,EAAA9B,IAAAiC,OAAA,GAAAtC,GAAAmC,IAAA9B,EAAA,QAAA8B,EAAA,IAAA9B,EAAA,QAAA8B,EAAA,KAAA9B,EAAAuI,KAAAvI,EAAA,IAAA2U,EAAA/U,EAAAI,EAAA0C,EAAA5C,EAAAgD,GAA+H,MAAAlD,GAAS,QAAA+U,GAAAtT,EAAAO,EAAAD,EAAAlB,EAAAoB,GAA6B,MAAAD,GAAAK,SAAAL,EAAAuP,KAAAxP,EAAAC,EAAA8E,KAAAjG,MAAA,KAAAoB,IAAAD,EAAA6S,MAAA5S,GAAAR,EAAAkH,KAAA3G,OAA0ElC,EAAAD,QAAA2U,CAAoB,IAAAG,GAAApS,EAAA,eACvsCyS,YAAA,KAAeC,IAAA,SAAA1S,EAAAzC,EAAAD,GAClB,YAAa,SAAAwH,GAAA5F,EAAAM,GAAsB,GAAAC,KAAS,0BAAAP,EAAAyM,KAAA,OAAA3N,GAAA,EAA4CA,EAAAkB,EAAAoS,SAAAxR,OAAoB9B,IAAA2U,EAAAlT,EAAAP,EAAAoS,SAAAtT,GAAAwB,OAAsC,YAAAN,EAAAyM,KAAAgH,EAAAlT,EAAAP,EAAAM,GAAAmT,EAAAlT,GAA+DmN,SAAA1N,GAAWM,EAAI,OAAAC,GAAS,QAAAkT,GAAAzT,EAAAM,EAAAC,GAA+B,UAAAD,EAAAoN,SAAA,CAAsB,GAAA5O,GAAA2B,EAAAnC,EAAAc,EAAAoB,EAAAF,EAAAoN,SAAAhP,EAAA8B,EAAAiM,KAAAlO,EAAAiC,EAAAmN,YAAAhO,EAAAW,EAAAiM,WAAA7M,EAAAY,EAAAkG,EAAwE,cAAA9H,EAAAsB,EAAAkH,KAAAgM,EAAAvT,EAAA,GAAA+T,EAAAnV,IAAAmB,QAA8D,mBAAAhB,EAAAsB,EAAAkH,KAAAgM,EAAAvT,EAAA,EAAAgU,EAAApV,GAAAmB,QAAiE,mBAAAhB,EAAAsB,EAAAkH,KAAAgM,EAAAvT,EAAA,GAAAgU,EAAApV,EAAAgC,IAAAb,QAAqE,wBAAAhB,GAAA,YAAAA,EAAA,CAA8C,IAAAJ,KAAAQ,EAAA,EAAaA,EAAAP,EAAAqC,OAAW9B,IAAAM,EAAAuU,EAAApV,EAAAO,GAAAyB,GAAA,YAAA7B,IAAAU,EAAAgU,MAAA,IAAAtU,GAAAR,EAAA4I,KAAA9H,EAA+DY,GAAAkH,KAAAgM,EAAAvT,EAAA,YAAAjB,EAAA,IAAAJ,EAAAoB,QAA+C,qBAAAhB,EAAA,CAA4B,IAAAJ,KAAAQ,EAAA,EAAaA,EAAAP,EAAAqC,OAAW9B,IAAA,IAAA2B,EAAA,EAAYA,EAAAlC,EAAAO,GAAA8B,OAAcH,IAAArB,EAAAuU,EAAApV,EAAAO,GAAA2B,GAAAF,GAAAnB,EAAAgU,MAAA,IAAA3S,EAAAnC,EAAA4I,KAAA9H,EAAiDY,GAAAkH,KAAAgM,EAAAvT,EAAA,EAAArB,EAAAoB,QAA+B,CAAK,0BAAAhB,EAAA,SAAAgC,OAAA,4CAAyF,KAAA5B,EAAA,EAAQA,EAAA0B,EAAAoT,WAAAhT,OAAsB9B,IAAA2U,EAAAzT,GAAsB0N,SAAAlN,EAAAoT,WAAA9U,GAAAyN,WAAA5M,GAAsCY,KAAM,QAAAoT,GAAA3T,EAAAM,GAAsB,OAAAC,MAAAzB,EAAA,EAAiBA,EAAAkB,EAAAY,OAAW9B,IAAAyB,EAAA2G,KAAAwM,EAAA1T,EAAAlB,IAA+B,OAAAwB,KAAAuT,EAAAtT,EAAAD,GAAAwT,EAAAvT,MAAwC,QAAAmT,GAAA1T,GAAyB,GAAAM,GAAAY,KAAAC,IAAAnB,EAAA,GAAAkB,KAAAqM,GAAA,KAAAhN,EAAAP,EAAA,UAAAlB,EAAA,OAAAoC,KAAA6S,KAAA,EAAAzT,IAAA,EAAAA,IAAAY,KAAAqM,EAAsF,OAAAzO,KAAA,IAAAA,EAAA,IAAAA,GAAAyB,EAAAzB,EAAA,GAA+B,QAAAgV,GAAA9T,GAAqB,OAAAM,GAAAC,EAAAzB,EAAA,EAAA2B,EAAA,EAAAnC,EAAA,EAAwBA,EAAA0B,EAAAY,OAAA,EAAatC,IAAAgC,EAAAC,GAAAP,EAAA1B,GAAAiC,EAAAP,EAAA1B,EAAA,GAAAQ,GAAAwB,EAAA,GAAAC,EAAA,GAAAA,EAAA,GAAAD,EAAA,GAAAG,GAAAS,KAAAoK,IAAA/K,EAAA,GAAAD,EAAA,IAAAY,KAAAoK,IAAA/K,EAAA,GAAAD,EAAA,GAAyFN,GAAA8P,KAAA5O,KAAAoK,IAAAxM,EAAA,GAAAkB,EAAAqF,KAAA5E,EAA8BpC,EAAAD,QAAAwH,CAAuB,IAAAiO,GAAA/S,EAAA,cAAAoS,EAAApS,EAAA,eACtgDyS,YAAA,GAAAS,aAAA,KAA+BC,IAAA,SAAAnT,EAAAzC,EAAAD,GAClC,YAAa,SAAA8U,GAAAlT,EAAAM,EAAAG,EAAArB,GAAgC,GAAAmB,IAAOiG,GAAApH,GAAA,KAAAqN,KAAAnM,EAAAoN,SAAAjN,EAAA0S,KAAAnT,GAAA,KAAAqK,KAAA,SAAA5C,MAAA,UAAyE,OAAAyM,GAAA3T,KAAqB,QAAA2T,GAAAlU,GAAqB,GAAAM,GAAAN,EAAA0N,SAAAjN,EAAAT,EAAAqK,IAAAjL,EAAAY,EAAAyH,GAAiC,QAAAzH,EAAAyM,KAAA0H,EAAA1T,EAAArB,EAAAkB,OAAkC,QAAAC,GAAA,EAAiBA,EAAAD,EAAAM,OAAWL,IAAA4T,EAAA1T,EAAArB,EAAAkB,EAAAC,GAA2B,OAAAP,GAAS,QAAAmU,GAAAnU,EAAAM,EAAAG,GAA6B,OAAArB,GAAAmB,EAAA,EAAcA,EAAAE,EAAAG,OAAWL,IAAAnB,EAAAqB,EAAAF,GAAAP,EAAA,GAAAkB,KAAAmJ,IAAAjL,EAAA,GAAAY,EAAA,IAAAM,EAAA,GAAAY,KAAAuG,IAAArI,EAAA,GAAAkB,EAAA,IAAAN,EAAA,GAAAkB,KAAAmJ,IAAAjL,EAAA,GAAAY,EAAA,IAAAM,EAAA,GAAAY,KAAAuG,IAAArI,EAAA,GAAAkB,EAAA,IAA+GjC,EAAAD,QAAA8U,OAC3ckB,IAAA,SAAAtT,EAAAzC,EAAAD,GACJ,YAAa,SAAAiW,GAAArU,EAAAM,GAAwB,UAAAgU,GAAAtU,EAAAM,GAA0B,QAAAgU,GAAAtU,EAAAM,GAAwBA,EAAAT,KAAA0U,QAAAC,EAAAzV,OAAA2D,OAAA7C,KAAA0U,SAAAjU,EAAqD,IAAAhC,GAAAgC,EAAAmU,KAAcnW,IAAAoW,QAAAC,KAAA,kBAAmC,IAAA7V,GAAA,GAAAwB,EAAAsU,QAAAxV,EAAAwG,EAAA5F,EAAAM,EAAAuU,WAAA/V,EAAAwB,EAAAkM,QAAyD3M,MAAAiV,SAAajV,KAAAkV,cAAAzW,IAAAoW,QAAAM,QAAA,mBAAAN,QAAAX,IAAA,oCAAAzT,EAAA2U,aAAA3U,EAAA4U,gBAAAR,QAAAC,KAAA,kBAAA9U,KAAAuG,SAAwLvG,KAAAsV,MAAA,GAAA/V,EAAAgW,EAAAhW,EAAAkB,EAAA8H,OAAA9H,EAAAkM,OAAA6I,GAAAjW,EAAAwB,QAAAf,KAAAyV,UAAAlW,EAAA,OAAAd,IAAAc,EAAAwB,QAAA8T,QAAAX,IAAA,2BAAAlU,KAAAiV,MAAA,GAAAS,YAAA1V,KAAAiV,MAAA,GAAAU,WAAAd,QAAAM,QAAA,kBAAAN,QAAAX,IAAA,mBAAAlU,KAAAsV,MAAAM,KAAAC,UAAA7V,KAAAuG,SAAyS,QAAAuP,GAAA3V,EAAAM,EAAAhC,GAAqB,eAAA0B,GAAA1B,EAAAgC,GAAAN,EAAyB,QAAAqV,GAAArV,EAAAM,EAAAhC,GAA2B,OAAAA,KAAA0B,EAAA,KAAAM,EAAA,GAAAN,EAAA,KAAAM,EAAA,GAAAN,EAAA,IAAAA,EAAA,MAAkD,QAAA4V,GAAA5V,EAAAM,EAAAhC,GAA2B,QAAAA,EAAA0B,EAAA,KAAAM,EAAA,GAAAN,EAAA,KAAAM,EAAA,GAAAN,EAAA,IAAAA,EAAA,GAAA1B,EAAA,GAAkD,QAAAkW,GAAAxU,EAAAM,GAAqB,OAAAhC,KAAAgC,GAAAN,EAAA1B,GAAAgC,EAAAhC,EAAyB,OAAA0B,GAAS,QAAA6V,GAAA7V,EAAAM,EAAAhC,GAAgC,GAAAQ,GAAAkB,EAAA8V,MAAe,QAAAhX,EAAA8B,OAAA,QAAyB,IAAAxB,GAAAN,EAAA,EAAW,QAAAM,EAAAqN,MAAArN,EAAAsO,SAAA9M,OAAA,UAA4C,IAAAL,GAAAnB,EAAAsO,SAAA,GAAA9M,MAA2B,QAAAL,EAAA,QAAkB,QAAAZ,GAAA,EAAYA,EAAAY,EAAIZ,IAAA,CAAK,GAAApB,GAAAwX,EAAAC,MAAA5W,EAAAsO,SAAA,GAAA/N,GAAAW,EAAAN,EAAAiW,GAAAjW,EAAA4B,EAAA5B,EAAAwB,EAAuD,IAAAjD,EAAA,MAAAD,GAAAC,EAAA,KAAA+B,EAAAhC,GAAAC,EAAA,MAAAD,GAAAC,EAAA,KAAA+B,EAAAhC,EAAA,SAAyD,SAASD,EAAAD,QAAAiW,CAAyB,IAAAzO,GAAA9E,EAAA,aAAAiV,EAAAjV,EAAA,eAAAiS,EAAAjS,EAAA,UAAAsU,EAAAtU,EAAA,UAAAoV,EAAApV,EAAA,SAA6IwT,GAAA9U,UAAA+U,SAA6BK,QAAA,GAAAK,aAAA,EAAAC,eAAA,IAAAiB,eAAA,EAAAtB,UAAA,EAAArI,OAAA,KAAApE,OAAA,GAAAqM,MAAA,GAAwGH,EAAA9U,UAAA8V,UAAA,SAAAtV,EAAAM,EAAAhC,EAAAQ,EAAAM,EAAAmB,EAAAZ,GAAuD,OAAApB,IAAAyB,EAAAM,EAAAhC,EAAAQ,GAAA2B,EAAAZ,KAAA0U,QAAA/T,EAAAC,EAAAgU,MAAA/V,EAAA,KAAoDH,EAAAqC,QAAS,CAAE9B,EAAAP,EAAA6X,MAAA9X,EAAAC,EAAA6X,MAAA9V,EAAA/B,EAAA6X,MAAApW,EAAAzB,EAAA6X,KAAwC,IAAA1W,GAAA,GAAAY,EAAA3B,EAAAgX,EAAArV,EAAAhC,EAAAQ,GAAAL,EAAAoB,KAAAiV,MAAAnW,GAAAyB,EAAAE,IAAAG,EAAAmU,QAAA,EAAAnU,EAAAoU,WAAAnV,EAAAe,EAAA+L,OAAoF,KAAA/N,IAAA+B,EAAA,GAAAkU,QAAAC,KAAA,YAAAlW,EAAAoB,KAAAiV,MAAAnW,GAAAuX,EAAAlW,EAAAN,EAAApB,EAAAQ,EAAAsB,EAAAE,IAAAG,EAAAmU,SAAA/U,KAAAkV,WAAA7N,MAAgHmC,EAAA/I,EAAAsB,EAAAtD,EAAAkD,EAAA1C,IAAY0B,GAAA,CAAMA,EAAA,IAAAkU,QAAAX,IAAA,4DAAAzT,EAAAhC,EAAAQ,EAAAL,EAAA8W,YAAA9W,EAAA+W,UAAA/W,EAAA4X,eAAA3B,QAAAM,QAAA,YAA4J,IAAAzT,GAAA,IAAAjB,CAAYT,MAAAuG,MAAA7E,IAAA1B,KAAAuG,MAAA7E,IAAA,KAAA1B,KAAAsV,QAAgD,GAAA1W,EAAAqX,OAAA9V,EAAAZ,EAAA,CAAiB,GAAAkB,IAAAG,EAAAmU,SAAAtU,IAAAlB,EAAA,QAAiC,IAAAwC,GAAA,GAAAxC,EAAAkB,CAAa,IAAAhC,IAAA4C,KAAAoV,MAAA/V,EAAAqB,IAAA9C,IAAAoC,KAAAoV,MAAA3W,EAAAiC,GAAA,aAAqD,IAAAtB,IAAAG,EAAAwU,cAAAxW,EAAA+W,WAAA/U,EAAAyU,eAAA,QAAmE,IAAAzU,EAAA0V,gBAAAN,EAAApX,EAAAgC,EAAA+L,OAAA/L,EAAA2H,QAAA,CAA2D3J,EAAAqX,OAAA,KAAAtV,EAAA,GAAAkU,QAAAC,KAAA,WAA4C,IAAA/U,GAAAyB,EAAAC,EAAAiV,EAAA1U,EAAAL,EAAA6R,EAAA,GAAA5S,EAAA2H,OAAA3H,EAAA+L,OAAAvK,EAAA,GAAAoR,EAAAlR,EAAA,GAAAkR,EAAA5R,EAAA,EAAA4R,CAA2DzT,GAAAyB,EAAAC,EAAAiV,EAAA,KAAA1U,EAAAkR,EAAA/S,EAAAN,EAAApB,EAAA+U,EAAA/U,EAAA6D,EAAA,EAAAkT,EAAA5W,EAAA4L,IAAA,GAAA5L,EAAAgJ,IAAA,IAAAjG,EAAAuR,EAAA/S,EAAAN,EAAApB,EAAA2D,EAAA3D,EAAAmD,EAAA,EAAA4T,EAAA5W,EAAA4L,IAAA,GAAA5L,EAAAgJ,IAAA,IAAA5F,IAAAjC,EAAAmT,EAAAlR,EAAAnC,EAAAZ,EAAAuU,EAAAvU,EAAAqD,EAAA,EAAAyT,EAAAnX,EAAA4L,IAAA,GAAA5L,EAAAgJ,IAAA,IAAApG,EAAA0R,EAAAlR,EAAAnC,EAAAZ,EAAAmD,EAAAnD,EAAA2C,EAAA,EAAAmU,EAAAnX,EAAA4L,IAAA,GAAA5L,EAAAgJ,IAAA,KAAAjG,IAAAF,EAAAyR,EAAAvR,EAAA9B,EAAAZ,EAAAuU,EAAAvU,EAAAqD,EAAA,EAAAyT,EAAAnX,EAAA4L,IAAA,GAAA5L,EAAAgJ,IAAA,IAAA8O,EAAAxD,EAAAvR,EAAA9B,EAAAZ,EAAAmD,EAAAnD,EAAA2C,EAAA,EAAAmU,EAAAnX,EAAA4L,IAAA,GAAA5L,EAAAgJ,IAAA,KAAAjH,EAAA,GAAAkU,QAAAM,QAAA,YAAAhV,EAAAY,SAAArC,EAAA2I,KAAAtH,MAAAU,EAAA,IAAAhC,EAAA,EAAAQ,GAAAP,EAAA2I,KAAA7F,MAAAf,EAAA,IAAAhC,EAAA,EAAAQ,EAAA,GAAAP,EAAA2I,KAAA5F,MAAAhB,EAAA,IAAAhC,EAAA,IAAAQ,GAAAP,EAAA2I,KAAAqP,MAAAjW,EAAA,IAAAhC,EAAA,IAAAQ,EAAA,QAAseM,KAAAV,EAAA4B,GAAc,MAAA5B,IAAS4V,EAAA9U,UAAAgX,QAAA,SAAAxW,EAAAM,EAAAhC,GAA6C,GAAAQ,GAAAe,KAAA0U,QAAAnV,EAAAN,EAAA0N,OAAAjM,EAAAzB,EAAA2V,MAAA9U,EAAA,GAAAK,CAA+CM,MAAAX,MAAY,IAAApB,GAAAoX,EAAA3V,EAAAM,EAAAhC,EAAkB,IAAAuB,KAAAiV,MAAAvW,GAAA,MAAAwX,GAAAU,KAAA5W,KAAAiV,MAAAvW,GAAAa,EAAwDmB,GAAA,GAAAmU,QAAAX,IAAA,6BAAA/T,EAAAM,EAAAhC,EAAqD,QAAAmC,GAAAD,EAAAR,EAAAtB,EAAA4B,EAAAZ,EAAApB,GAAsBmC,GAAAD,EAAA,GAAQA,IAAA9B,EAAAwC,KAAAoV,MAAA5X,EAAA,GAAAgB,EAAAwB,KAAAoV,MAAA5W,EAAA,GAAAe,EAAAZ,KAAAiV,MAAAa,EAAAnV,EAAA9B,EAAAgB,GAAmE,KAAAe,MAAAqV,OAAA,WAA6B,IAAAvV,EAAA,GAAAmU,QAAAX,IAAA,8BAAAvT,EAAA9B,EAAAgB,GAAAmW,EAAApV,EAAArB,EAAAN,EAAAsJ,QAAA,MAAA2N,GAAAU,KAAAhW,EAAArB,EAAkHmB,GAAA,GAAAmU,QAAAC,KAAA,gBAAmC,IAAAhW,GAAAkB,KAAAyV,UAAA7U,EAAAqV,OAAAtV,EAAA9B,EAAAgB,EAAAM,EAAAM,EAAAhC,EAA2C,IAAAiC,EAAA,GAAAmU,QAAAM,QAAA,wBAAArW,EAAA,CAAmD,GAAAF,GAAA,GAAAuB,EAAArB,CAAaJ,GAAAoX,EAAAhX,EAAAuC,KAAAoV,MAAAhW,EAAA7B,GAAAyC,KAAAoV,MAAAhY,EAAAG,IAA0C,MAAAoB,MAAAiV,MAAAvW,GAAAwX,EAAAU,KAAA5W,KAAAiV,MAAAvW,GAAAa,GAAA,QACtnHsX,SAAA,GAAAC,YAAA,GAAAC,SAAA,GAAAC,cAAA,GAAAC,SAAA,KAAoEC,IAAA,SAAAjW,EAAAzC,EAAAD,GACvE,YAAa,SAAAyV,GAAAvT,EAAAhC,GAAuB,GAAA0B,GAAAN,EAAAa,EAAAZ,EAAAb,EAAAR,IAAA8B,EAAAE,EAAAM,OAAAJ,EAAA,EAAApB,EAAAgB,EAAA,EAAAR,IAA4C,KAAAU,EAAAE,GAAA,KAAAF,EAAAlB,GAAA,KAAwBA,GAAE,CAAE,IAAAM,EAAA,EAAAM,EAAAQ,EAAA,EAAcR,EAAAZ,EAAIY,KAAAO,EAAAyW,EAAA1W,EAAAN,GAAAM,EAAAE,GAAAF,EAAAlB,KAAAM,IAAAC,EAAAK,EAAAN,EAAAa,EAAkDb,GAAAZ,GAAAwB,EAAAX,GAAA,GAAAD,EAAAE,EAAAsH,KAAA1G,GAAAZ,EAAAsH,KAAAvH,GAAAa,EAAAb,IAAAP,EAAAQ,EAAAwW,MAAA5V,EAAAZ,EAAAwW,QAA+D,QAAAY,GAAA1W,EAAAhC,EAAA0B,GAA6B,GAAAN,GAAApB,EAAA,GAAAiC,EAAAjC,EAAA,GAAAqB,EAAAK,EAAA,GAAAlB,EAAAkB,EAAA,GAAAI,EAAAE,EAAA,GAAAE,EAAAF,EAAA,GAAAlB,EAAAO,EAAAD,EAAAE,EAAAd,EAAAyB,CAA0D,QAAAnB,GAAA,IAAAQ,EAAA,CAAiB,GAAArB,KAAA6B,EAAAV,GAAAN,GAAAoB,EAAAD,GAAAX,IAAAR,IAAAQ,IAAkCrB,GAAA,GAAAmB,EAAAC,EAAAY,EAAAzB,GAAAP,EAAA,IAAAmB,GAAAN,EAAAb,EAAAgC,GAAAX,EAAArB,GAAmC,MAAAa,GAAAgB,EAAAV,EAAAE,EAAAY,EAAAD,EAAAnB,IAAAQ,IAA2BvB,EAAAD,QAAAyV,OACnboD,IAAA,SAAAnW,EAAAzC,EAAAD,GACJ,YAAa,SAAA8X,GAAAlW,EAAAZ,EAAAmB,EAAAjC,EAAAgC,EAAAE,GAAiC,OAAAC,IAAW2R,YAAAoD,UAAA,EAAAa,cAAA,EAAAd,YAAA,EAAAO,OAAA,KAAAlU,EAAArB,EAAAiB,EAAAlD,EAAA2X,GAAA7W,EAAA8X,aAAA,EAAA7M,KAAA,KAAA5C,MAAA,MAAmHhJ,EAAA,EAAKA,EAAAuB,EAAAY,OAAWnC,IAAA,CAAKgC,EAAA8U,cAAA4B,EAAA1W,EAAAT,EAAAvB,GAAA6B,EAAAE,EAAuC,IAAAb,GAAAK,EAAAvB,GAAA4L,IAAA9L,EAAAyB,EAAAvB,GAAAgJ,GAA0B9H,GAAA,GAAAc,EAAA4J,IAAA,KAAA5J,EAAA4J,IAAA,GAAA1K,EAAA,IAAAA,EAAA,GAAAc,EAAA4J,IAAA,KAAA5J,EAAA4J,IAAA,GAAA1K,EAAA,IAAApB,EAAA,GAAAkC,EAAAgH,IAAA,KAAAhH,EAAAgH,IAAA,GAAAlJ,EAAA,IAAAA,EAAA,GAAAkC,EAAAgH,IAAA,KAAAhH,EAAAgH,IAAA,GAAAlJ,EAAA,IAA4H,MAAAkC,GAAS,QAAA0W,GAAAnX,EAAAZ,EAAAmB,EAAAjC,GAA6B,GAAAgC,GAAAE,EAAAC,EAAAhC,EAAAkB,EAAAP,EAAAsO,SAAAnP,EAAAa,EAAAqN,KAAA3N,KAAAsB,EAAAG,GAA6C,QAAAhC,EAAA,IAAA+B,EAAA,EAAiBA,EAAAX,EAAAiB,OAAWN,IAAAxB,EAAAoI,KAAAvH,EAAAW,IAAAN,EAAAwV,YAAAxV,EAAAqW,oBAAiD,KAAA/V,EAAA,EAAaA,EAAAX,EAAAiB,OAAWN,IAAA,GAAAG,EAAAd,EAAAW,GAAAhC,KAAA,IAAAC,GAAAkC,EAAA4E,KAAA9E,GAAA,IAAAhC,GAAAkC,EAAAqP,KAAA1P,GAAA,CAAsD,GAAAzB,KAAS,KAAA6B,EAAA,EAAQA,EAAAC,EAAAG,OAAWJ,IAAA/B,EAAAgC,EAAAD,IAAAlC,GAAAG,EAAA,GAAA2B,KAAAzB,EAAAuI,KAAAzI,GAAAuB,EAAAqW,iBAAArW,EAAAwV,WAAoE,KAAAjX,GAAA4T,EAAAxT,EAAA8B,EAAA2S,OAAAtU,EAAAoI,KAAAvI,OAAmCqB,GAAAwV,WAAA/U,EAAAG,MAA2B,IAAA9B,EAAA8B,OAAA,CAAa,GAAAhB,IAAO8N,SAAA5O,EAAA2N,KAAAlO,EAAA4U,KAAA/T,EAAA+T,MAAA,KAAqC,QAAA/T,EAAAoH,KAAA5G,EAAA4G,GAAApH,EAAAoH,IAAAxG,EAAAoS,SAAAlL,KAAAtH,IAA6C,QAAAuS,GAAAnS,EAAAZ,GAAqB6N,EAAAjN,GAAA,IAAAZ,GAAAY,EAAA2S,UAAiC,QAAA1F,GAAAjN,GAAuB,OAAAZ,GAAAmB,EAAAjC,EAAA,EAAAgC,EAAA,EAAAE,EAAAR,EAAAY,OAAAH,EAAAD,EAAA,EAAqCF,EAAAE,EAAIC,EAAAH,IAAAlB,EAAAY,EAAAM,GAAAC,EAAAP,EAAAS,GAAAnC,IAAAiC,EAAA,GAAAnB,EAAA,KAAAA,EAAA,GAAAmB,EAAA,GAA+C,OAAAjC,GAASD,EAAAD,QAAA8X,OAC1hCkB,IAAA,SAAAtW,EAAAzC,EAAAD,GACJ,YAAa,SAAAiZ,GAAA9W,EAAAD,GAA4B,GAAAC,EAAA2W,YAAA,MAAA3W,EAA0B,IAAAnB,GAAAY,EAAAlB,EAAAsB,EAAAG,EAAA0V,GAAAxV,EAAAF,EAAAqB,EAAAjC,EAAAY,EAAAiB,CAA6B,KAAApC,EAAA,EAAQA,EAAAmB,EAAA6R,SAAAxR,OAAoBxB,IAAA,CAAK,GAAAd,GAAAiC,EAAA6R,SAAAhT,GAAAoB,EAAAlC,EAAAoP,QAAiC,QAAApP,EAAAmO,KAAA,IAAAzM,EAAA,EAAsBA,EAAAQ,EAAAI,OAAWZ,IAAAQ,EAAAR,GAAAsX,EAAA9W,EAAAR,GAAAM,EAAAF,EAAAK,EAAAd,OAAsC,KAAAK,EAAA,EAAaA,EAAAQ,EAAAI,OAAWZ,IAAA,CAAK,GAAAvB,GAAA+B,EAAAR,EAAW,KAAAlB,EAAA,EAAQA,EAAAL,EAAAmC,OAAW9B,IAAAL,EAAAK,GAAAwY,EAAA7Y,EAAAK,GAAAwB,EAAAF,EAAAK,EAAAd,IAAuC,MAAAY,GAAA2W,aAAA,EAAA3W,EAA0B,QAAA+W,GAAA/W,EAAAD,EAAAlB,EAAAY,EAAAlB,GAAmC,OAAAoC,KAAA8D,MAAA1E,GAAAC,EAAA,GAAAnB,EAAAY,IAAAkB,KAAA8D,MAAA1E,GAAAC,EAAA,GAAAnB,EAAAN,KAA0DV,EAAAqY,KAAAY,EAAAjZ,EAAA4X,MAAAsB,OAC9bC,IAAA,SAAAzW,EAAAzC,EAAAD,GACJ,YAAa,SAAAgX,GAAA7U,EAAAP,EAAAM,GAAqB,GAAAxB,GAAAyB,EAAAE,EAAAsS,EAAAxS,EAAA,KAAAP,IAAA,EAAAM,GAAA,KAAAX,EAAAoT,EAAAxS,EAAA,IAAAP,EAAA,EAAAA,EAAA,EAAAM,GAAA,IAAiE,QAAAG,GAAAd,KAAAb,EAAAiU,EAAAxS,EAAA,GAAAP,EAAA,EAAAA,EAAA,EAAAM,GAAA,SAAAG,IAAA3B,EAAA0Y,EAAA/W,EAAA,GAAAoG,OAAA/H,IAAAa,IAAAb,IAAA+H,OAAA2Q,EAAA7X,GAAA,MAAAb,EAAqI,QAAA0Y,GAAAjX,EAAAP,GAAiC,OAAAM,MAAAxB,EAAA,EAAiBA,EAAAyB,EAAAK,OAAW9B,IAAA,CAAK,GAAA2B,GAAAd,EAAAY,EAAAzB,GAAAR,EAAAqB,EAAA8M,IAAsB,QAAAnO,EAAAmC,EAAAgX,EAAA9X,EAAA+N,SAAA1N,OAAqC,CAAKS,IAAK,QAAAD,GAAA,EAAYA,EAAAb,EAAA+N,SAAA9M,OAAoBJ,IAAAC,EAAAyG,KAAAuQ,EAAA9X,EAAA+N,SAAAlN,GAAAR,IAAyCM,EAAA4G,KAAAgM,EAAAvT,EAAAwT,KAAA7U,EAAAmC,EAAAd,EAAA6G,KAAuC,MAAAlG,GAAS,QAAAmX,GAAAlX,EAAAP,GAA0B,GAAAM,KAASA,GAAAwP,KAAAvP,EAAAuP,KAAAxP,EAAA+E,KAAA9E,EAAA8E,IAA4B,QAAAvG,GAAA,EAAYA,EAAAyB,EAAAK,OAAW9B,IAAAwB,EAAA4G,MAAA3G,EAAAzB,GAAA,GAAAkB,EAAAO,EAAAzB,GAAA,GAAAyB,EAAAzB,GAAA,IAAwC,OAAAwB,GAAS,GAAAyS,GAAAjS,EAAA,UAAAoS,EAAApS,EAAA,YAA8DzC,GAAAD,QAAAgX,IAC1qBsB,SAAA,GAAAnD,YAAA,KAA2BmE,IAAA,SAAA5W,EAAAzC,EAAAD,GAC9B,YAAa,SAAAuZ,GAAArX,EAAAC,EAAAP,GAA0B,GAAAL,GAAAE,KAAA+X,QAAoB,IAAAtX,YAAAuX,aAAA,CAA6BhY,KAAAiY,YAAAxX,CAAmB,IAAAhC,GAAA,GAAAyZ,YAAAlY,KAAAiY,YAAuCxX,GAAAhC,EAAA,GAAAiC,EAAAjC,EAAA,GAAA0B,EAAA1B,EAAA,GAAAuB,KAAAlB,EAAA4B,EAAA,EAAAP,CAAkC,QAAAuB,GAAA,EAAYA,EAAA1B,KAAAlB,EAAAkB,KAAAlB,EAAgB4C,IAAA,CAAK,GAAAnC,GAAAd,EAAA0Z,EAAAzW,GAAAzC,EAAAR,EAAA0Z,EAAAzW,EAAA,EAA0C5B,GAAAuH,KAAA9H,IAAAN,EAAA,KAAAR,EAAA2Z,SAAA7Y,EAAAN,IAAmC,GAAAP,GAAAD,EAAA0Z,EAAArY,EAAAiB,QAAAH,EAAAnC,EAAA0Z,EAAArY,EAAAiB,OAAA,EAAwDf,MAAAqY,KAAA5Z,EAAA2Z,SAAA1Z,EAAAkC,GAAAZ,KAAAsY,OAAA7Z,EAAA2Z,SAAAxX,GAAAZ,KAAAuY,OAAAvY,KAAAwY,oBAAqF,CAAKxY,KAAAlB,EAAA4B,EAAA,EAAAP,CAAa,QAAArB,GAAA,EAAYA,EAAAkB,KAAAlB,EAAAkB,KAAAlB,EAAgBA,IAAAgB,EAAAuH,QAAerH,MAAAqY,QAAArY,KAAAsY,UAA4BtY,KAAAT,EAAAmB,EAAAV,KAAA2M,OAAAlM,EAAAT,KAAAyY,QAAAtY,EAAAH,KAAA+C,MAAArC,EAAAD,EAAAT,KAAA0Y,IAAA,CAAgE,IAAAnY,GAAAJ,EAAAO,EAAAD,CAAYT,MAAAwK,KAAAjK,EAAAP,KAAA4H,IAAAnH,EAAAF,EAAyB/B,EAAAD,QAAAuZ,CAAyB,IAAAK,GAAA,CAAiBL,GAAAnY,UAAA4Y,OAAA,SAAA9X,EAAAC,EAAAP,EAAAL,EAAArB,GAA+CuB,KAAA2Y,aAAAjY,EAAAP,EAAAL,EAAArB,EAAAuB,KAAA4Y,YAAA5Y,KAAA0Y,OAAA1Y,KAAAqY,KAAAhR,KAAA5G,GAAAT,KAAAsY,OAAAjR,KAAA3G,GAAAV,KAAAsY,OAAAjR,KAAAlH,GAAAH,KAAAsY,OAAAjR,KAAAvH,GAAAE,KAAAsY,OAAAjR,KAAA5I,IAAyJqZ,EAAAnY,UAAA6Y,gBAAA,WAAgD,oEAAmEV,EAAAnY,UAAAiZ,YAAA,SAAAnY,EAAAC,EAAAP,EAAAL,EAAArB,EAAAiD,GAAuD1B,KAAA+X,MAAAtZ,GAAA4I,KAAA3F,IAAsBoW,EAAAnY,UAAAkZ,MAAA,SAAApY,EAAAC,EAAAP,EAAAL,GAA6C,GAAArB,GAAAuB,KAAAwK,IAAA9I,EAAA1B,KAAA4H,GAA0B,IAAAnH,GAAAhC,GAAAiC,GAAAjC,GAAAiD,GAAAvB,GAAAuB,GAAA5B,EAAA,MAAAkG,OAAArG,UAAAmZ,MAAAna,KAAAqB,KAAAqY,KAAuE,IAAA9Y,MAAAN,IAAc,OAAAe,MAAA2Y,aAAAlY,EAAAC,EAAAP,EAAAL,EAAAE,KAAA+Y,WAAAxZ,EAAAN,GAAAM,GAAwDuY,EAAAnY,UAAAoZ,WAAA,SAAAtY,EAAAC,EAAAP,EAAAL,EAAArB,EAAAiD,EAAAnC,GAAwD,GAAAN,GAAAe,KAAA+X,MAAAtZ,EAAoB,WAAAQ,EAAA,OAAAP,GAAAsB,KAAAqY,KAAAzX,EAAAZ,KAAAsY,OAAAxZ,EAAA,EAAkDA,EAAAG,EAAA8B,OAAWjC,IAAA,CAAK,GAAAyB,GAAAtB,EAAAH,EAAW,aAAAS,EAAAgB,GAAA,CAAkB,GAAAI,GAAA,EAAAJ,CAAUE,IAAAG,EAAAD,EAAA,IAAAD,GAAAE,EAAAD,EAAA,IAAAR,GAAAS,EAAAD,EAAA,IAAAb,GAAAc,EAAAD,EAAA,IAAApB,EAAAgB,IAAA,EAAAmB,EAAA2F,KAAA3I,EAAA6B,KAAAhB,EAAAgB,IAAA,KAA4EuX,EAAAnY,UAAAgZ,aAAA,SAAAlY,EAAAC,EAAAP,EAAAL,EAAArB,EAAAiD,EAAAnC,GAA0D,OAAAN,GAAAe,KAAAgZ,oBAAAvY,GAAA/B,EAAAsB,KAAAgZ,oBAAAtY,GAAAE,EAAAZ,KAAAgZ,oBAAA7Y,GAAArB,EAAAkB,KAAAgZ,oBAAAlZ,GAAAS,EAAAtB,EAAoIsB,GAAAK,EAAKL,IAAA,OAAAI,GAAAjC,EAAgBiC,GAAA7B,EAAK6B,IAAA,CAAK,GAAAgB,GAAA3B,KAAAlB,EAAA6B,EAAAJ,CAAiB,IAAA9B,EAAAE,KAAAqB,KAAAS,EAAAC,EAAAP,EAAAL,EAAA6B,EAAAD,EAAAnC,GAAA,SAAsCuY,EAAAnY,UAAAqZ,oBAAA,SAAAvY,GAAqD,MAAAY,MAAAuG,IAAA,EAAAvG,KAAAmJ,IAAAxK,KAAAlB,EAAA,EAAAuC,KAAAoV,MAAAhW,EAAAT,KAAA+C,OAAA/C,KAAAyY,WAA4EX,EAAAnY,UAAAsZ,cAAA,WAA8C,GAAAjZ,KAAAiY,YAAA,MAAAjY,MAAAiY,WAA4C,QAAAxX,GAAAT,KAAA+X,MAAArX,EAAAyX,EAAAnY,KAAA+X,MAAAhX,OAAA,IAAAZ,EAAA,EAAAL,EAAA,EAAgEA,EAAAE,KAAA+X,MAAAhX,OAAoBjB,IAAAK,GAAAH,KAAA+X,MAAAjY,GAAAiB,MAA4B,IAAAtC,GAAA,GAAAyZ,YAAAxX,EAAAP,EAAAH,KAAAqY,KAAAtX,OAAAf,KAAAsY,OAAAvX,OAA8DtC,GAAA,GAAAuB,KAAA2M,OAAAlO,EAAA,GAAAuB,KAAAT,EAAAd,EAAA,GAAAuB,KAAAyY,OAA+C,QAAA/W,GAAAhB,EAAAnB,EAAA,EAAgBA,EAAAkB,EAAAM,OAAWxB,IAAA,CAAK,GAAAN,GAAAwB,EAAAlB,EAAWd,GAAA0Z,EAAA5Y,GAAAmC,EAAAjD,EAAAya,IAAAja,EAAAyC,MAAAzC,EAAA8B,OAAyC,MAAAtC,GAAA0Z,EAAA1X,EAAAM,QAAAW,EAAAjD,EAAAya,IAAAlZ,KAAAqY,KAAA3W,MAAA1B,KAAAqY,KAAAtX,OAAAtC,EAAA0Z,EAAA1X,EAAAM,OAAA,GAAAW,EAAAjD,EAAAya,IAAAlZ,KAAAsY,OAAA5W,MAAA1B,KAAAsY,OAAAvX,OAAAtC,EAAA8J,aAChxE4Q,IAAA,SAAAlY,EAAAzC,EAAAD,GACJA,EAAA6a,KAAA,SAAAxY,EAAA3B,EAAAwB,EAAAC,EAAAgB,GAAiC,GAAAD,GAAA5B,EAAA+B,EAAA,EAAAF,EAAAhB,EAAA,EAAAH,GAAA,GAAAqB,GAAA,EAAAzB,EAAAI,GAAA,EAAA9B,GAAA,EAAA4a,EAAA5Y,EAAAiB,EAAA,IAAAnC,EAAAkB,GAAA,IAAAX,EAAAc,EAAA3B,EAAAoa,EAAqE,KAAAA,GAAA9Z,EAAAkC,EAAA3B,GAAA,IAAArB,GAAA,EAAAqB,KAAArB,KAAAmD,EAAmCnD,EAAA,EAAIgD,EAAA,IAAAA,EAAAb,EAAA3B,EAAAoa,MAAA9Z,EAAAd,GAAA,GAA0B,IAAAoB,EAAA4B,GAAA,IAAAhD,GAAA,EAAAgD,KAAAhD,KAAAiC,EAA8BjC,EAAA,EAAIoB,EAAA,IAAAA,EAAAe,EAAA3B,EAAAoa,MAAA9Z,EAAAd,GAAA,GAA0B,OAAAgD,IAAA,EAAAtB,MAAe,CAAK,GAAAsB,IAAAlB,EAAA,MAAAV,GAAAyZ,IAAA,KAAAxZ,GAAA,IAAmCD,IAAAwB,KAAAkJ,IAAA,EAAA7J,GAAAe,GAAAtB,EAAsB,OAAAL,GAAA,KAAAD,EAAAwB,KAAAkJ,IAAA,EAAA9I,EAAAf,IAAiCnC,EAAAgb,MAAA,SAAA3Y,EAAA3B,EAAAwB,EAAAC,EAAAgB,EAAAD,GAAqC,GAAA5B,GAAA+B,EAAArB,EAAAJ,EAAA,EAAAsB,EAAAC,EAAA,EAAAjD,GAAA,GAAA0B,GAAA,EAAAkZ,EAAA5a,GAAA,EAAAc,EAAA,KAAAmC,EAAAL,KAAAkJ,IAAA,OAAAlJ,KAAAkJ,IAAA,SAAAzK,EAAAY,EAAA,EAAAe,EAAA,EAAAd,EAAAD,EAAA,KAAAhC,EAAAO,EAAA,OAAAA,GAAA,EAAAA,EAAA,KAA4H,KAAAA,EAAAoC,KAAAoK,IAAAxM,GAAAua,MAAAva,QAAA,KAAA2C,EAAA4X,MAAAva,GAAA,IAAAY,EAAApB,IAAAoB,EAAAwB,KAAAoV,MAAApV,KAAA6S,IAAAjV,GAAAoC,KAAAoY,KAAAxa,GAAAsB,EAAAc,KAAAkJ,IAAA,GAAA1K,IAAA,IAAAA,IAAAU,GAAA,GAAAtB,GAAAY,EAAAwZ,GAAA,EAAA9Z,EAAAgB,EAAAhB,EAAA8B,KAAAkJ,IAAA,IAAA8O,GAAApa,EAAAsB,GAAA,IAAAV,IAAAU,GAAA,GAAAV,EAAAwZ,GAAA5a,GAAAmD,EAAA,EAAA/B,EAAApB,GAAAoB,EAAAwZ,GAAA,GAAAzX,GAAA3C,EAAAsB,EAAA,GAAAc,KAAAkJ,IAAA,EAAA7I,GAAA7B,GAAAwZ,IAAAzX,EAAA3C,EAAAoC,KAAAkJ,IAAA,EAAA8O,EAAA,GAAAhY,KAAAkJ,IAAA,EAAA7I,GAAA7B,EAAA,IAAmR6B,GAAA,EAAKd,EAAAH,EAAAX,GAAA,IAAA8B,EAAA9B,GAAAa,EAAAiB,GAAA,IAAAF,GAAA,GAA+B,IAAA7B,KAAA6B,EAAAE,EAAAzB,GAAAuB,EAAkBvB,EAAA,EAAIS,EAAAH,EAAAX,GAAA,IAAAD,EAAAC,GAAAa,EAAAd,GAAA,IAAAM,GAAA,GAA+BS,EAAAH,EAAAX,EAAAa,IAAA,IAAAjC,QAC11Bgb,IAAA,SAAAzY,EAAAzC,EAAAD,GACJ,YAAa,SAAAob,GAAAlZ,EAAAhC,EAAA0B,EAAAL,EAAAP,GAA2B,UAAAqa,GAAAnZ,EAAAhC,EAAA0B,EAAAL,EAAAP,GAA6B,QAAAqa,GAAAnZ,EAAAhC,EAAA0B,EAAAL,EAAAP,GAA2Bd,KAAAob,EAAA1Z,KAAA2Z,EAAAva,KAAAyG,MAAAhG,KAAA+Z,SAAAja,GAAA,GAAAE,KAAAga,OAAAvZ,EAAAT,KAAAia,IAAA,GAAA1a,GAAAkB,EAAAM,QAAAf,KAAAka,OAAA,GAAA3a,GAAA,EAAAkB,EAAAM,OAAsI,QAAAL,GAAA,EAAYA,EAAAD,EAAAM,OAAWL,IAAAV,KAAAia,IAAAvZ,KAAAV,KAAAka,OAAA,EAAAxZ,GAAAjC,EAAAgC,EAAAC,IAAAV,KAAAka,OAAA,EAAAxZ,EAAA,GAAAP,EAAAM,EAAAC,GAAsEuQ,GAAAjR,KAAAia,IAAAja,KAAAka,OAAAla,KAAA+Z,SAAA,EAAA/Z,KAAAia,IAAAlZ,OAAA,KAA+D,QAAA8Y,GAAApZ,GAAwB,MAAAA,GAAA,GAAY,QAAAqZ,GAAArZ,GAAwB,MAAAA,GAAA,GAAY,GAAAwQ,GAAAhQ,EAAA,UAAAkZ,EAAAlZ,EAAA,WAAAmZ,EAAAnZ,EAAA,WAA+EzC,GAAAD,QAAAob,EAAAC,EAAAja,WAAwCwa,MAAA,SAAA1Z,EAAAhC,EAAA0B,EAAAL,GAAwB,MAAAqa,GAAAna,KAAAia,IAAAja,KAAAka,OAAAzZ,EAAAhC,EAAA0B,EAAAL,EAAAE,KAAA+Z,WAAyDK,OAAA,SAAA3Z,EAAAhC,EAAA0B,GAAwB,MAAAia,GAAApa,KAAAia,IAAAja,KAAAka,OAAAzZ,EAAAhC,EAAA0B,EAAAH,KAAA+Z,cACvqBM,UAAA,GAAAC,SAAA,GAAAC,WAAA,KAAuCC,IAAA,SAAAvZ,EAAAzC,EAAAD,GAC1C,YAAa,SAAA4b,GAAAta,EAAAa,EAAAZ,EAAAa,EAAAe,EAAAvB,EAAAlB,GAA8B,OAAA2B,GAAAH,EAAAlB,GAAA,EAAAM,EAAAkB,OAAA,KAAAR,KAAoChB,EAAAwB,QAAS,CAAE,GAAArC,GAAAa,EAAAgX,MAAA/U,EAAAjC,EAAAgX,MAAAxW,EAAAR,EAAAgX,KAAkC,IAAA/U,EAAAzB,GAAAd,EAAA,OAAAR,GAAAsB,EAAsBtB,GAAA+C,EAAK/C,IAAAmC,EAAAF,EAAA,EAAAjC,GAAAgC,EAAAC,EAAA,EAAAjC,EAAA,GAAAmC,GAAAd,GAAAc,GAAAc,GAAAjB,GAAAE,GAAAF,GAAAN,GAAAI,EAAA8G,KAAAxH,EAAApB,QAA6D,CAAK,GAAAI,GAAAwC,KAAAoV,OAAA1W,EAAAyB,GAAA,EAA0BZ,GAAAF,EAAA,EAAA7B,GAAA4B,EAAAC,EAAA,EAAA7B,EAAA,GAAA+B,GAAAd,GAAAc,GAAAc,GAAAjB,GAAAE,GAAAF,GAAAN,GAAAI,EAAA8G,KAAAxH,EAAAhB,GAAyD,IAAAC,IAAAJ,EAAA,MAAc,IAAAA,EAAAoB,GAAAc,EAAAD,GAAAF,KAAAlB,EAAA8H,KAAAtH,GAAAR,EAAA8H,KAAAxI,EAAA,GAAAU,EAAA8H,KAAAvI,KAAA,IAAAJ,EAAAgD,GAAAd,EAAAT,GAAAM,KAAAlB,EAAA8H,KAAAxI,EAAA,GAAAU,EAAA8H,KAAA7F,GAAAjC,EAAA8H,KAAAvI,KAA2G,MAAAyB,GAAS/B,EAAAD,QAAA4b,OAC1aM,IAAA,SAAAxZ,EAAAzC,EAAAD,GACJ,YAAa,SAAAmc,GAAAja,EAAAG,EAAA3B,EAAAa,EAAAY,EAAAP,GAA6B,KAAAO,EAAAZ,GAAAb,GAAA,CAAc,GAAAsB,GAAAc,KAAAoV,OAAA3W,EAAAY,GAAA,EAA0Bia,GAAAla,EAAAG,EAAAL,EAAAT,EAAAY,EAAAP,EAAA,GAAAua,EAAAja,EAAAG,EAAA3B,EAAAa,EAAAS,EAAA,EAAAJ,EAAA,GAAAua,EAAAja,EAAAG,EAAA3B,EAAAsB,EAAA,EAAAG,EAAAP,EAAA,IAAuE,QAAAwa,GAAAla,EAAAG,EAAA3B,EAAAa,EAAAY,EAAAP,GAA6B,KAAKO,EAAAZ,GAAI,CAAE,GAAAY,EAAAZ,EAAA,KAAY,GAAAS,GAAAG,EAAAZ,EAAA,EAAAD,EAAAZ,EAAAa,EAAA,EAAA8B,EAAAP,KAAA6S,IAAA3T,GAAA3B,EAAA,GAAAyC,KAAAuM,IAAA,EAAAhM,EAAA,GAAArC,EAAA,GAAA8B,KAAAiE,KAAA1D,EAAAhD,GAAA2B,EAAA3B,GAAA2B,IAAAV,EAAAU,EAAA,SAAkGoa,GAAAla,EAAAG,EAAA3B,EAAAoC,KAAAuG,IAAA9H,EAAAuB,KAAAoV,MAAAxX,EAAAY,EAAAjB,EAAA2B,EAAAhB,IAAA8B,KAAAmJ,IAAA9J,EAAAW,KAAAoV,MAAAxX,GAAAsB,EAAAV,GAAAjB,EAAA2B,EAAAhB,IAAAY,GAAwF,GAAAtB,GAAA+B,EAAA,EAAA3B,EAAAkB,GAAAuB,EAAA5B,EAAArB,EAAAiC,CAAuB,KAAAka,EAAAna,EAAAG,EAAAd,EAAAb,GAAA2B,EAAA,EAAAF,EAAAP,GAAAtB,GAAA+b,EAAAna,EAAAG,EAAAd,EAAAY,GAAoDgB,EAAAjD,GAAI,CAAE,IAAAmc,EAAAna,EAAAG,EAAAc,EAAAjD,GAAAiD,IAAAjD,IAA8BmC,EAAA,EAAAc,EAAAvB,GAAAtB,GAAW6C,GAAK,MAAKd,EAAA,EAAAnC,EAAA0B,GAAAtB,GAAWJ,IAAKmC,EAAA,EAAAd,EAAAK,KAAAtB,EAAA+b,EAAAna,EAAAG,EAAAd,EAAArB,QAAAmc,EAAAna,EAAAG,EAAAnC,EAAAiC,IAAAjC,GAAAQ,IAAAa,EAAArB,EAAA,GAAAQ,GAAAR,IAAAiC,EAAAjC,EAAA,IAAoF,QAAAmc,GAAAna,EAAAG,EAAA3B,EAAAa,GAA2B+a,EAAApa,EAAAxB,EAAAa,GAAA+a,EAAAja,EAAA,EAAA3B,EAAA,EAAAa,GAAA+a,EAAAja,EAAA,EAAA3B,EAAA,IAAAa,EAAA,GAAgD,QAAA+a,GAAApa,EAAAG,EAAA3B,GAAqB,GAAAa,GAAAW,EAAAG,EAAWH,GAAAG,GAAAH,EAAAxB,GAAAwB,EAAAxB,GAAAa,EAAiBtB,EAAAD,QAAAmc,OACvuBI,IAAA,SAAA7Z,EAAAzC,EAAAD,GACJ,YAAa,SAAA6b,GAAAta,EAAAD,EAAAa,EAAAD,EAAAE,EAAAe,GAA6B,OAAAjD,IAAA,EAAAqB,EAAAiB,OAAA,KAAA9B,KAAAM,EAAAoB,IAAsClC,EAAAsC,QAAS,CAAE,GAAAZ,GAAA1B,EAAA8X,MAAA3V,EAAAnC,EAAA8X,MAAAhW,EAAA9B,EAAA8X,KAAkC,IAAA3V,EAAAL,GAAAmB,EAAA,OAAAF,GAAAjB,EAAsBiB,GAAAZ,EAAKY,IAAAuZ,EAAAlb,EAAA,EAAA2B,GAAA3B,EAAA,EAAA2B,EAAA,GAAAd,EAAAD,IAAAlB,GAAAN,EAAAoI,KAAAvH,EAAA0B,QAAiD,CAAK,GAAA9C,GAAA2C,KAAAoV,OAAAlW,EAAAK,GAAA,GAAA/B,EAAAgB,EAAA,EAAAnB,GAAA4D,EAAAzC,EAAA,EAAAnB,EAAA,EAA8Cqc,GAAAlc,EAAAyD,EAAA5B,EAAAD,IAAAlB,GAAAN,EAAAoI,KAAAvH,EAAApB,GAAiC,IAAAsc,IAAA7a,EAAA,MAAc,IAAAA,EAAAO,EAAAC,GAAA9B,EAAA4B,EAAAE,GAAA2B,KAAA7D,EAAA4I,KAAA9G,GAAA9B,EAAA4I,KAAA3I,EAAA,GAAAD,EAAA4I,KAAA2T,KAAA,IAAA7a,EAAAO,EAAAC,GAAA9B,EAAA4B,EAAAE,GAAA2B,KAAA7D,EAAA4I,KAAA3I,EAAA,GAAAD,EAAA4I,KAAAzG,GAAAnC,EAAA4I,KAAA2T,KAAmH,MAAA/b,GAAS,QAAA8b,GAAAjb,EAAAD,EAAAa,EAAAD,GAAyB,GAAAE,GAAAb,EAAAY,EAAAgB,EAAA7B,EAAAY,CAAgB,OAAAE,KAAAe,IAAelD,EAAAD,QAAA6b,OAC3da,IAAA,SAAAha,EAAAzC,EAAAD,GACJ,YAAa,SAAA2c,GAAA/a,GAAwB,SAAAgb,KAAAC,KAAAC,KAAAC,KAAAC,KAAAC,KAAAC,KAAAC,EAAAvb,KAAAwb,+BAAyN,QAAAR,KAAqB,yBAAA/a,SAAA,mBAAA0I,UAA+D,QAAAsS,KAA4B,MAAApV,OAAArG,WAAAqG,MAAArG,UAAAic,OAAA5V,MAAArG,UAAAkc,QAAA7V,MAAArG,UAAAmc,SAAA9V,MAAArG,UAAAkK,SAAA7D,MAAArG,UAAAoc,aAAA/V,MAAArG,UAAA6S,KAAAxM,MAAArG,UAAAqc,MAAAhW,MAAArG,UAAAsc,QAAAjW,MAAArG,UAAAuc,aAAAlW,MAAAC,QAAoQ,QAAAoV,KAA+B,MAAApb,UAAAN,WAAAM,SAAAN,UAAAwc,KAAmD,QAAAb,KAA6B,MAAApc,QAAAmZ,MAAAnZ,OAAA2D,QAAA3D,OAAAkd,gBAAAld,OAAAmd,qBAAAnd,OAAAod,UAAApd,OAAAqd,UAAArd,OAAAsd,cAAAtd,OAAAud,0BAAAvd,OAAAC,gBAAAD,OAAAwd,kBAAAxd,OAAAyd,MAAAzd,OAAA0d,QAAA1d,OAAA2d,kBAAmR,QAAAtB,KAA2B,cAAAnb,SAAA,SAAAwV,OAAA,aAAAA,MAA0D,QAAA4F,KAA6B,gBAAApb,QAAwB,QAAAqb,KAAwC,2BAAArb,QAAmC,QAAAsb,GAAAvb,GAAmC,gBAAA2c,EAAA3c,KAAA2c,EAAA3c,GAAA4c,EAAA5c,IAAA2c,EAAA3c,GAAkH,QAAA4c,GAAA5c,GAA6B,GAAAM,GAAAqI,SAAAC,cAAA,UAAArI,EAAAxB,OAAA2D,OAAAqY,EAAA8B,uBAA2F,OAAAtc,GAAAib,6BAAAxb,EAAAM,EAAAwc,wBAAAxc,EAAAwc,wBAAA,QAAAvc,IAAAD,EAAAwc,wBAAA,qBAAAvc,GAAAD,EAAAyc,gBAAAzc,EAAAyc,gBAAA,QAAAxc,IAAAD,EAAAyc,gBAAA,qBAAAxc,GAAAD,EAAAwI,WAAA,QAAAvI,IAAAD,EAAAwI,WAAA,qBAAAvI,GAAkT,mBAAAlC,MAAAD,QAAAC,EAAAD,QAAA2c,EAAA9a,gBAAA+c,SAAA/c,OAAA+c,aAAkH/c,OAAA+c,SAAAC,UAAAlC,EAAwC,IAAA4B,KAA6B5B,GAAA8B,wBAAoCK,WAAA,EAAAC,OAAA,EAAAC,SAAA,EAAAC,OAAA,QAC/9DC,IAAA,SAAAxc,EAAAzC,EAAAD,GACJ,YAAa,SAAAmf,GAAAjd,GAAgBT,KAAA2d,IAAA3F,YAAA4F,QAAA5F,YAAA4F,OAAAnd,KAAA,GAAAod,YAAApd,GAAA,GAAAT,KAAAuM,IAAA,EAAAvM,KAAA4M,KAAA,EAAA5M,KAAAe,OAAAf,KAAA2d,IAAA5c,OAA6H,QAAA+c,GAAArd,EAAAhC,EAAA0B,GAAoC,GAAAO,GAAAZ,EAAAP,EAAAY,EAAAwd,GAAgB,IAAA7d,EAAAP,EAAAY,EAAAoM,OAAA7L,GAAA,IAAAZ,IAAA,EAAAA,EAAA,UAAAie,GAAAtd,EAAAC,EAAAjC,EAAuD,IAAAqB,EAAAP,EAAAY,EAAAoM,OAAA7L,IAAA,IAAAZ,IAAA,EAAAA,EAAA,UAAAie,GAAAtd,EAAAC,EAAAjC,EAAwD,IAAAqB,EAAAP,EAAAY,EAAAoM,OAAA7L,IAAA,IAAAZ,IAAA,GAAAA,EAAA,UAAAie,GAAAtd,EAAAC,EAAAjC,EAAyD,IAAAqB,EAAAP,EAAAY,EAAAoM,OAAA7L,IAAA,IAAAZ,IAAA,GAAAA,EAAA,UAAAie,GAAAtd,EAAAC,EAAAjC,EAAyD,IAAAqB,EAAAP,EAAAY,EAAAoM,OAAA7L,IAAA,IAAAZ,IAAA,GAAAA,EAAA,UAAAie,GAAAtd,EAAAC,EAAAjC,EAAyD,IAAAqB,EAAAP,EAAAY,EAAAoM,OAAA7L,IAAA,EAAAZ,IAAA,GAAAA,EAAA,UAAAie,GAAAtd,EAAAC,EAAAjC,EAAuD,UAAAoC,OAAA,0CAA0D,QAAAmd,GAAAvd,GAA0B,MAAAA,GAAAmM,OAAA8Q,EAAAO,MAAAxd,EAAA6L,aAAA7L,EAAA8L,IAAA9L,EAAA8L,IAAA,EAAuD,QAAAwR,GAAAtd,EAAAhC,EAAA0B,GAAsB,MAAAA,GAAA,WAAA1B,GAAAgC,IAAA,eAAAhC,IAAA,IAAAgC,IAAA,GAAyD,QAAAyd,GAAAzd,EAAAhC,GAA6B,GAAA0B,GAAAO,CAAQ,IAAAD,GAAA,GAAAN,EAAAM,EAAA,aAAAC,EAAAD,EAAA,eAAAN,KAAAM,EAAA,YAAAC,KAAAD,EAAA,uBAAAN,MAAA,KAAAA,EAAA,EAAAO,IAAA,MAAAD,GAAA,qBAAAA,GAAA,6BAAAI,OAAA,yCAAgOpC,GAAA0f,QAAA,IAAAC,EAAAje,EAAAO,EAAAjC,GAAA4f,EAAA3d,EAAAjC,GAA+D,QAAA2f,GAAA3d,EAAAhC,EAAA0B,GAAkCA,EAAAwd,IAAAxd,EAAAoM,OAAA,IAAA9L,EAAA,IAAAA,KAAA,EAAAN,EAAAwd,IAAAxd,EAAAoM,OAAA,IAAA9L,EAAA,IAAAA,KAAA,EAAAN,EAAAwd,IAAAxd,EAAAoM,OAAA,IAAA9L,EAAA,IAAAA,KAAA,EAAAN,EAAAwd,IAAAxd,EAAAoM,OAAA,IAAA9L,EAAA,IAAAA,KAAA,EAAAN,EAAAwd,IAAAxd,EAAAoM,KAAA,IAAA9L,EAAmJ,QAAA4d,GAAA5d,EAAAhC,GAAiC,GAAA0B,IAAA,EAAAM,IAAA,CAAehC,GAAAkf,IAAAlf,EAAA8N,QAAApM,IAAAM,KAAA,UAAAA,IAAAhC,EAAAkf,IAAAlf,EAAA8N,OAAA,IAAA9L,SAAA,UAAAA,IAAAhC,EAAAkf,IAAAlf,EAAA8N,OAAA,IAAA9L,SAAA,UAAAA,IAAAhC,EAAAkf,IAAAlf,EAAA8N,OAAA,IAAA9L,SAAA,UAAAA,IAAAhC,EAAAkf,IAAAlf,EAAA8N,OAAA,IAAA9L,SAAA,UAAAA,IAAAhC,EAAAkf,IAAAlf,EAAA8N,OAAA,IAAA9L,OAAyO,QAAA6d,GAAA7d,EAAAhC,EAAA0B,GAAuC,GAAAO,GAAAjC,GAAA,QAAAA,GAAA,UAAAA,GAAA,YAAA4C,KAAAkd,KAAAld,KAAA6S,IAAAzV,IAAA,EAAA4C,KAAAoY,KAAiFtZ,GAAAge,QAAAzd,EAAa,QAAAZ,GAAAK,EAAAoM,IAAA,EAAkBzM,GAAAW,EAAKX,IAAAK,EAAAwd,IAAA7d,EAAAY,GAAAP,EAAAwd,IAAA7d,GAAwB,QAAA0e,GAAA/d,EAAAhC,GAAgC,OAAA0B,GAAA,EAAYA,EAAAM,EAAAM,OAAWZ,IAAA1B,EAAAggB,YAAAhe,EAAAN,IAAwB,QAAAue,GAAAje,EAAAhC,GAAiC,OAAA0B,GAAA,EAAYA,EAAAM,EAAAM,OAAWZ,IAAA1B,EAAAkgB,aAAAle,EAAAN,IAAyB,QAAAye,GAAAne,EAAAhC,GAA+B,OAAA0B,GAAA,EAAYA,EAAAM,EAAAM,OAAWZ,IAAA1B,EAAAogB,WAAApe,EAAAN,IAAuB,QAAA2e,GAAAre,EAAAhC,GAAgC,OAAA0B,GAAA,EAAYA,EAAAM,EAAAM,OAAWZ,IAAA1B,EAAAsgB,YAAAte,EAAAN,IAAwB,QAAA6e,GAAAve,EAAAhC,GAAiC,OAAA0B,GAAA,EAAYA,EAAAM,EAAAM,OAAWZ,IAAA1B,EAAAwgB,aAAAxe,EAAAN,IAAyB,QAAA+e,GAAAze,EAAAhC,GAAiC,OAAA0B,GAAA,EAAYA,EAAAM,EAAAM,OAAWZ,IAAA1B,EAAA0gB,aAAA1e,EAAAN,IAAyB,QAAAif,GAAA3e,EAAAhC,GAAkC,OAAA0B,GAAA,EAAYA,EAAAM,EAAAM,OAAWZ,IAAA1B,EAAA4gB,cAAA5e,EAAAN,IAA0B,QAAAmf,GAAA7e,EAAAhC,GAAiC,OAAA0B,GAAA,EAAYA,EAAAM,EAAAM,OAAWZ,IAAA1B,EAAA8gB,aAAA9e,EAAAN,IAAyB,QAAAqf,GAAA/e,EAAAhC,GAAkC,OAAA0B,GAAA,EAAYA,EAAAM,EAAAM,OAAWZ,IAAA1B,EAAAghB,cAAAhf,EAAAN,IAA0B,QAAAuf,GAAAjf,EAAAhC,GAAyB,OAAAgC,EAAAhC,GAAAgC,EAAAhC,EAAA,MAAAgC,EAAAhC,EAAA,iBAAAgC,EAAAhC,EAAA,GAAkD,QAAAkhB,GAAAlf,EAAAhC,EAAA0B,GAA2BM,EAAAN,GAAA1B,EAAAgC,EAAAN,EAAA,GAAA1B,IAAA,EAAAgC,EAAAN,EAAA,GAAA1B,IAAA,GAAAgC,EAAAN,EAAA,GAAA1B,IAAA,GAAgD,QAAAmhB,GAAAnf,EAAAhC,GAAwB,OAAAgC,EAAAhC,GAAAgC,EAAAhC,EAAA,MAAAgC,EAAAhC,EAAA,SAAAgC,EAAAhC,EAAA,QAA+C,QAAAohB,GAAApf,EAAAhC,EAAA0B,GAAyB,OAAAO,GAAA,GAAAZ,EAAArB,EAAiBqB,EAAAK,GAAI,CAAE,GAAAZ,GAAAkB,EAAAX,GAAAb,EAAA,KAAA2B,EAAArB,EAAA,MAAAA,EAAA,MAAAA,EAAA,OAA8C,IAAAO,EAAAc,EAAAT,EAAA,KAAe,IAAAuB,GAAAf,EAAAJ,CAAU,KAAAK,EAAArB,EAAA,MAAAN,EAAAM,GAAA,IAAAqB,EAAA,WAAAc,EAAAjB,EAAAX,EAAA,OAAAb,GAAA,GAAAM,IAAA,KAAAmC,IAAA,MAAAzC,EAAA,UAAA2B,GAAAc,EAAAjB,EAAAX,EAAA,GAAAa,EAAAF,EAAAX,EAAA,aAAA4B,IAAA,UAAAf,MAAA1B,GAAA,GAAAM,IAAA,OAAAmC,IAAA,KAAAf,IAAA,MAAA1B,GAAA,OAAAA,GAAA,SAAAA,EAAA,WAAA2B,IAAAc,EAAAjB,EAAAX,EAAA,GAAAa,EAAAF,EAAAX,EAAA,GAAAS,EAAAE,EAAAX,EAAA,aAAA4B,IAAA,UAAAf,IAAA,UAAAJ,MAAAtB,GAAA,GAAAM,IAAA,OAAAmC,IAAA,OAAAf,IAAA,KAAAJ,IAAA,OAAAtB,GAAA,WAAAA,EAAA,cAAAA,KAAA,MAAA2B,EAAA,GAAA3B,EAAA,QAAAA,GAAA,MAAAyB,GAAAof,OAAAC,aAAA9gB,IAAA,eAAAA,EAAA,WAAAA,GAAAyB,GAAAof,OAAAC,aAAA9gB,GAAAa,GAAAc,EAAqe,MAAAF,GAAS,QAAAsf,GAAAvf,EAAAhC,EAAA0B,GAA0B,OAAAO,GAAAZ,EAAAP,EAAA,EAAgBA,EAAAd,EAAAsC,OAAWxB,IAAA,CAAK,IAAAmB,EAAAjC,EAAAwhB,WAAA1gB,IAAA,OAAAmB,EAAA,OAAuC,IAAAZ,EAAA,CAAOY,EAAA,OAAAnB,EAAA,IAAAd,EAAAsC,QAAAN,EAAAN,KAAA,IAAAM,EAAAN,KAAA,IAAAM,EAAAN,KAAA,KAAAL,EAAAY,CAA+D,UAAS,GAAAA,EAAA,OAAYD,EAAAN,KAAA,IAAAM,EAAAN,KAAA,IAAAM,EAAAN,KAAA,IAAAL,EAAAY,CAAqC,UAASA,EAAAZ,EAAA,UAAAY,EAAA,YAAAZ,EAAA,SAAmCA,KAAAW,EAAAN,KAAA,IAAAM,EAAAN,KAAA,IAAAM,EAAAN,KAAA,IAAAL,EAAA,KAAkDY,GAAA,IAAAD,EAAAN,KAAAO,KAAA,KAAAD,EAAAN,KAAAO,GAAA,OAAAA,EAAA,MAAAD,EAAAN,KAAAO,GAAA,QAAAD,EAAAN,KAAAO,GAAA,OAAAD,EAAAN,KAAAO,GAAA,WAAAD,EAAAN,KAAAO,GAAA,UAAAD,EAAAN,KAAA,GAAAO,EAAA,KAA6I,MAAAP,GAAS3B,EAAAD,QAAAmf,CAAmB,IAAAwC,GAAAjf,EAAA,UAA+Byc,GAAAyC,OAAA,EAAAzC,EAAA0C,QAAA,EAAA1C,EAAAO,MAAA,EAAAP,EAAA2C,QAAA,CAAiH3C,GAAA/d,WAAe2gB,QAAA,WAAmBtgB,KAAA2d,IAAA,MAAcvR,WAAA,SAAA3L,EAAAhC,EAAA0B,GAA4B,IAAAA,KAAAH,KAAAe,OAAqBf,KAAAuM,IAAApM,GAAW,CAAE,GAAAO,GAAAV,KAAAsM,aAAAxM,EAAAY,GAAA,EAAAnB,EAAAS,KAAAuM,GAA0CvM,MAAA4M,KAAA,EAAAlM,EAAAD,EAAAX,EAAArB,EAAAuB,WAAAuM,MAAAhN,GAAAS,KAAAugB,KAAA7f,GAAqD,MAAAjC,IAAS+hB,YAAA,SAAA/f,EAAAhC,GAA2B,MAAAuB,MAAAoM,WAAA3L,EAAAhC,EAAAuB,KAAAsM,aAAAtM,KAAAuM,MAAuDkU,YAAA,WAAwB,GAAAhgB,GAAAif,EAAA1f,KAAA2d,IAAA3d,KAAAuM,IAAoC,OAAAvM,MAAAuM,KAAA,EAAA9L,GAAqBigB,aAAA,WAAyB,GAAAjgB,GAAAmf,EAAA5f,KAAA2d,IAAA3d,KAAAuM,IAAmC,OAAAvM,MAAAuM,KAAA,EAAA9L,GAAqBkgB,YAAA,WAAwB,GAAAlgB,GAAAif,EAAA1f,KAAA2d,IAAA3d,KAAAuM,KAA9hB,WAA8hBmT,EAAA1f,KAAA2d,IAAA3d,KAAAuM,IAAA,EAAkF,OAAAvM,MAAAuM,KAAA,EAAA9L,GAAqBmgB,aAAA,WAAyB,GAAAngB,GAAAif,EAAA1f,KAAA2d,IAAA3d,KAAAuM,KAA9pB,WAA8pBqT,EAAA5f,KAAA2d,IAAA3d,KAAAuM,IAAA,EAAiF,OAAAvM,MAAAuM,KAAA,EAAA9L,GAAqB6N,UAAA,WAAsB,GAAA7N,GAAAyf,EAAA9G,KAAApZ,KAAA2d,IAAA3d,KAAAuM,KAAA,OAA8C,OAAAvM,MAAAuM,KAAA,EAAA9L,GAAqB8N,WAAA,WAAuB,GAAA9N,GAAAyf,EAAA9G,KAAApZ,KAAA2d,IAAA3d,KAAAuM,KAAA,OAA8C,OAAAvM,MAAAuM,KAAA,EAAA9L,GAAqB6L,WAAA,SAAA7L,GAAwB,GAAAhC,GAAA0B,EAAAO,EAAAV,KAAA2d,GAAmB,OAAAxd,GAAAO,EAAAV,KAAAuM,OAAA9N,EAAA,IAAA0B,IAAA,IAAA1B,GAAA0B,EAAAO,EAAAV,KAAAuM,OAAA9N,IAAA,IAAA0B,IAAA,EAAAA,EAAA,IAAA1B,GAAA0B,EAAAO,EAAAV,KAAAuM,OAAA9N,IAAA,IAAA0B,IAAA,GAAAA,EAAA,IAAA1B,GAAA0B,EAAAO,EAAAV,KAAAuM,OAAA9N,IAAA,IAAA0B,IAAA,GAAAA,EAAA,IAAA1B,GAAA0B,EAAAO,EAAAV,KAAAuM,KAAA9N,IAAA,GAAA0B,IAAA,GAAA2d,EAAArf,EAAAgC,EAAAT,WAA6NwO,aAAA,WAAyB,MAAAxO,MAAAsM,YAAA,IAA2BiB,YAAA,WAAwB,GAAA9M,GAAAT,KAAAsM,YAAwB,OAAA7L,GAAA,MAAAA,EAAA,MAAAA,EAAA,GAA2BgO,YAAA,WAAwB,MAAAoS,SAAA7gB,KAAAsM,eAAkC8B,WAAA,WAAuB,GAAA3N,GAAAT,KAAAsM,aAAAtM,KAAAuM,IAAA9N,EAAAohB,EAAA7f,KAAA2d,IAAA3d,KAAAuM,IAAA9L,EAAiE,OAAAT,MAAAuM,IAAA9L,EAAAhC,GAAoBqiB,UAAA,WAAsB,GAAArgB,GAAAT,KAAAsM,aAAAtM,KAAAuM,IAAA9N,EAAAuB,KAAA2d,IAAAvF,SAAApY,KAAAuM,IAAA9L,EAAiE,OAAAT,MAAAuM,IAAA9L,EAAAhC,GAAoBsiB,iBAAA,SAAAtgB,EAAAhC,GAAgC,GAAA0B,GAAA6d,EAAAhe,KAA0B,KAAAS,QAAYT,KAAAuM,IAAApM,GAAWM,EAAA4G,KAAArH,KAAAsM,WAAA7N,GAA4B,OAAAgC,IAASugB,kBAAA,SAAAvgB,GAA+B,GAAAhC,GAAAuf,EAAAhe,KAA0B,KAAAS,QAAYT,KAAAuM,IAAA9N,GAAWgC,EAAA4G,KAAArH,KAAAuN,cAA4B,OAAA9M,IAASwgB,kBAAA,SAAAxgB,GAA+B,GAAAhC,GAAAuf,EAAAhe,KAA0B,KAAAS,QAAYT,KAAAuM,IAAA9N,GAAWgC,EAAA4G,KAAArH,KAAAyO,cAA4B,OAAAhO,IAASygB,gBAAA,SAAAzgB,GAA6B,GAAAhC,GAAAuf,EAAAhe,KAA0B,KAAAS,QAAYT,KAAAuM,IAAA9N,GAAWgC,EAAA4G,KAAArH,KAAAsO,YAA0B,OAAA7N,IAAS0gB,iBAAA,SAAA1gB,GAA8B,GAAAhC,GAAAuf,EAAAhe,KAA0B,KAAAS,QAAYT,KAAAuM,IAAA9N,GAAWgC,EAAA4G,KAAArH,KAAAuO,aAA2B,OAAA9N,IAAS2gB,kBAAA,SAAA3gB,GAA+B,GAAAhC,GAAAuf,EAAAhe,KAA0B,KAAAS,QAAYT,KAAAuM,IAAA9N,GAAWgC,EAAA4G,KAAArH,KAAAygB,cAA4B,OAAAhgB,IAAS4gB,mBAAA,SAAA5gB,GAAgC,GAAAhC,GAAAuf,EAAAhe,KAA0B,KAAAS,QAAYT,KAAAuM,IAAA9N,GAAWgC,EAAA4G,KAAArH,KAAA0gB,eAA6B,OAAAjgB,IAAS6gB,kBAAA,SAAA7gB,GAA+B,GAAAhC,GAAAuf,EAAAhe,KAA0B,KAAAS,QAAYT,KAAAuM,IAAA9N,GAAWgC,EAAA4G,KAAArH,KAAA2gB,cAA4B,OAAAlgB,IAAS8gB,mBAAA,SAAA9gB,GAAgC,GAAAhC,GAAAuf,EAAAhe,KAA0B,KAAAS,QAAYT,KAAAuM,IAAA9N,GAAWgC,EAAA4G,KAAArH,KAAA4gB,eAA6B,OAAAngB,IAAS8f,KAAA,SAAA9f,GAAkB,GAAAhC,GAAA,EAAAgC,CAAU,IAAAhC,IAAAif,EAAAyC,OAAA,KAAuBngB,KAAA2d,IAAA3d,KAAAuM,OAAA,UAA2B,IAAA9N,IAAAif,EAAAO,MAAAje,KAAAuM,IAAAvM,KAAAsM,aAAAtM,KAAAuM,QAA0D,IAAA9N,IAAAif,EAAA2C,QAAArgB,KAAAuM,KAAA,MAAoC,CAAK,GAAA9N,IAAAif,EAAA0C,QAAA,SAAAvf,OAAA,uBAAApC,EAA6DuB,MAAAuM,KAAA,IAAaiV,SAAA,SAAA/gB,EAAAhC,GAAwBuB,KAAAye,YAAAhe,GAAA,EAAAhC,IAAyB0f,QAAA,SAAA1d,GAAqB,OAAAhC,GAAAuB,KAAAe,QAAA,GAA0BtC,EAAAuB,KAAAuM,IAAA9L,GAAahC,GAAA,CAAM,IAAAA,IAAAuB,KAAAe,OAAA,CAAoB,GAAAZ,GAAA,GAAA0d,YAAApf,EAAwB0B,GAAA+Y,IAAAlZ,KAAA2d,KAAA3d,KAAA2d,IAAAxd,EAAAH,KAAAe,OAAAtC,IAA0CgjB,OAAA,WAAmB,MAAAzhB,MAAAe,OAAAf,KAAAuM,IAAAvM,KAAAuM,IAAA,EAAAvM,KAAA2d,IAAAvF,SAAA,EAAApY,KAAAe,SAAwEoe,aAAA,SAAA1e,GAA0BT,KAAAme,QAAA,GAAAwB,EAAA3f,KAAA2d,IAAAld,EAAAT,KAAAuM,KAAAvM,KAAAuM,KAAA,GAA4D8S,cAAA,SAAA5e,GAA2BT,KAAAme,QAAA,GAAAwB,EAAA3f,KAAA2d,IAAAld,EAAAT,KAAAuM,KAAAvM,KAAAuM,KAAA,GAA4DgT,aAAA,SAAA9e,GAA0BT,KAAAme,QAAA,GAAAwB,EAAA3f,KAAA2d,KAAA,EAAAld,EAAAT,KAAAuM,KAAAoT,EAAA3f,KAAA2d,IAAAtc,KAAAoV,MAAAhW,GAAj1G,eAAi1GT,KAAAuM,IAAA,GAAAvM,KAAAuM,KAAA,GAA4HkT,cAAA,SAAAhf,GAA2BT,KAAAme,QAAA,GAAAwB,EAAA3f,KAAA2d,KAAA,EAAAld,EAAAT,KAAAuM,KAAAoT,EAAA3f,KAAA2d,IAAAtc,KAAAoV,MAAAhW,GAAx+G,eAAw+GT,KAAAuM,IAAA,GAAAvM,KAAAuM,KAAA,GAA4HkS,YAAA,SAAAhe,GAAyB,IAAAA,MAAA,cAAAA,EAAA,aAAAyd,GAAAzd,EAAAT,KAA+DA,MAAAme,QAAA,GAAAne,KAAA2d,IAAA3d,KAAAuM,OAAA,IAAA9L,KAAA,WAAAA,GAAA,MAAAT,KAAA2d,IAAA3d,KAAAuM,OAAA,KAAA9L,KAAA,IAAAA,EAAA,WAAAA,GAAA,MAAAT,KAAA2d,IAAA3d,KAAAuM,OAAA,KAAA9L,KAAA,IAAAA,EAAA,WAAAA,GAAA,MAAAT,KAAA2d,IAAA3d,KAAAuM,OAAA9L,IAAA,UAAsNke,aAAA,SAAAle,GAA0BT,KAAAye,YAAAhe,EAAA,KAAAA,EAAA,IAAAA,IAAiCwe,aAAA,SAAAxe,GAA0BT,KAAAye,YAAAoC,QAAApgB,KAA6BihB,YAAA,SAAAjhB,GAAyBA,EAAAqf,OAAArf,GAAAT,KAAAme,QAAA,EAAA1d,EAAAM,QAAAf,KAAAuM,KAAgD,IAAA9N,GAAAuB,KAAAuM,GAAevM,MAAAuM,IAAAyT,EAAAhgB,KAAA2d,IAAAld,EAAAT,KAAAuM,IAAwC,IAAApM,GAAAH,KAAAuM,IAAA9N,CAAiB0B,IAAA,KAAAme,EAAA7f,EAAA0B,EAAAH,WAAAuM,IAAA9N,EAAA,EAAAuB,KAAAye,YAAAte,GAAAH,KAAAuM,KAAApM,GAAsF0e,WAAA,SAAApe,GAAwBT,KAAAme,QAAA,GAAA+B,EAAA3G,MAAAvZ,KAAA2d,IAAAld,EAAAT,KAAAuM,KAAA,QAAAvM,KAAAuM,KAAA,GAAuEwS,YAAA,SAAAte,GAAyBT,KAAAme,QAAA,GAAA+B,EAAA3G,MAAAvZ,KAAA2d,IAAAld,EAAAT,KAAAuM,KAAA,QAAAvM,KAAAuM,KAAA,GAAuEoV,WAAA,SAAAlhB,GAAwB,GAAAhC,GAAAgC,EAAAM,MAAef,MAAAye,YAAAhgB,GAAAuB,KAAAme,QAAA1f,EAAoC,QAAA0B,GAAA,EAAYA,EAAA1B,EAAI0B,IAAAH,KAAA2d,IAAA3d,KAAAuM,OAAA9L,EAAAN,IAA8ByhB,gBAAA,SAAAnhB,EAAAhC,GAA+BuB,KAAAuM,KAAW,IAAApM,GAAAH,KAAAuM,GAAe9L,GAAAhC,EAAAuB,KAAU,IAAAU,GAAAV,KAAAuM,IAAApM,CAAiBO,IAAA,KAAA4d,EAAAne,EAAAO,EAAAV,WAAAuM,IAAApM,EAAA,EAAAH,KAAAye,YAAA/d,GAAAV,KAAAuM,KAAA7L,GAAsFmhB,aAAA,SAAAphB,EAAAhC,EAAA0B,GAA8BH,KAAAwhB,SAAA/gB,EAAAid,EAAAO,OAAAje,KAAA4hB,gBAAAnjB,EAAA0B,IAAqDqe,kBAAA,SAAA/d,EAAAhC,GAAiCuB,KAAA6hB,aAAAphB,EAAA+d,EAAA/f,IAAyCigB,mBAAA,SAAAje,EAAAhC,GAAkCuB,KAAA6hB,aAAAphB,EAAAie,EAAAjgB,IAA0CugB,mBAAA,SAAAve,EAAAhC,GAAkCuB,KAAA6hB,aAAAphB,EAAAue,EAAAvgB,IAA0CmgB,iBAAA,SAAAne,EAAAhC,GAAgCuB,KAAA6hB,aAAAphB,EAAAme,EAAAngB,IAAwCqgB,kBAAA,SAAAre,EAAAhC,GAAiCuB,KAAA6hB,aAAAphB,EAAAqe,EAAArgB,IAAyCygB,mBAAA,SAAAze,EAAAhC,GAAkCuB,KAAA6hB,aAAAphB,EAAAye,EAAAzgB,IAA0C2gB,oBAAA,SAAA3e,EAAAhC,GAAmCuB,KAAA6hB,aAAAphB,EAAA2e,EAAA3gB,IAA2C6gB,mBAAA,SAAA7e,EAAAhC,GAAkCuB,KAAA6hB,aAAAphB,EAAA6e,EAAA7gB,IAA0C+gB,oBAAA,SAAA/e,EAAAhC,GAAmCuB,KAAA6hB,aAAAphB,EAAA+e,EAAA/gB,IAA2CqjB,gBAAA,SAAArhB,EAAAhC,GAA+BuB,KAAAwhB,SAAA/gB,EAAAid,EAAAO,OAAAje,KAAA2hB,WAAAljB,IAA8CsjB,kBAAA,SAAAthB,EAAAhC,GAAiCuB,KAAAwhB,SAAA/gB,EAAAid,EAAA2C,SAAArgB,KAAAmf,aAAA1gB,IAAkDujB,mBAAA,SAAAvhB,EAAAhC,GAAkCuB,KAAAwhB,SAAA/gB,EAAAid,EAAA2C,SAAArgB,KAAAqf,cAAA5gB,IAAmDwjB,kBAAA,SAAAxhB,EAAAhC,GAAiCuB,KAAAwhB,SAAA/gB,EAAAid,EAAA0C,SAAApgB,KAAAuf,aAAA9gB,IAAkDyjB,mBAAA,SAAAzhB,EAAAhC,GAAkCuB,KAAAwhB,SAAA/gB,EAAAid,EAAA0C,SAAApgB,KAAAyf,cAAAhhB,IAAmD0jB,iBAAA,SAAA1hB,EAAAhC,GAAgCuB,KAAAwhB,SAAA/gB,EAAAid,EAAAyC,QAAAngB,KAAAye,YAAAhgB,IAAgD2jB,kBAAA,SAAA3hB,EAAAhC,GAAiCuB,KAAAwhB,SAAA/gB,EAAAid,EAAAyC,QAAAngB,KAAA2e,aAAAlgB,IAAiD4jB,iBAAA,SAAA5hB,EAAAhC,GAAgCuB,KAAAwhB,SAAA/gB,EAAAid,EAAAO,OAAAje,KAAA0hB,YAAAjjB,IAA+C6jB,gBAAA,SAAA7hB,EAAAhC,GAA+BuB,KAAAwhB,SAAA/gB,EAAAid,EAAA2C,SAAArgB,KAAA6e,WAAApgB,IAAgD8jB,iBAAA,SAAA9hB,EAAAhC,GAAgCuB,KAAAwhB,SAAA/gB,EAAAid,EAAA0C,SAAApgB,KAAA+e,YAAAtgB,IAAiD+jB,kBAAA,SAAA/hB,EAAAhC,GAAiCuB,KAAAmiB,iBAAA1hB,EAAAogB,QAAApiB,QACtiUyhB,QAAA,KAAauC,IAAA,SAAAxhB,EAAAzC,EAAAD,GAChB,QAAAmkB,KAA4B,SAAA7hB,OAAA,mCAAmD,QAAA8hB,KAA+B,SAAA9hB,OAAA,qCAAqD,QAAA+hB,GAAAziB,GAAuB,GAAA0iB,IAAAC,WAAA,MAAAA,YAAA3iB,EAAA,EAAwD,KAAA0iB,IAAAH,IAAAG,IAAAC,WAAA,MAAAD,GAAAC,sBAAA3iB,EAAA,EAA2H,KAAI,MAAA0iB,GAAA1iB,EAAA,GAA6B,MAAAM,GAAS,IAAI,MAAAoiB,GAAAlkB,KAAA,KAAAwB,EAAA,GAAuC,MAAAM,GAAS,MAAAoiB,GAAAlkB,KAAAqB,KAAAG,EAAA,KAAyC,QAAA4iB,GAAA5iB,GAA4B,GAAA6iB,IAAAC,aAAA,MAAAA,cAAA9iB,EAA4D,KAAA6iB,IAAAL,IAAAK,IAAAC,aAAA,MAAAD,GAAAC,0BAAA9iB,EAAwI,KAAI,MAAA6iB,GAAA7iB,GAA6B,MAAAM,GAAS,IAAI,MAAAuiB,GAAArkB,KAAA,KAAAwB,GAAuC,MAAAM,GAAS,MAAAuiB,GAAArkB,KAAAqB,KAAAG,KAAyC,QAAA+iB,KAA2BC,GAAAC,IAAAD,GAAA,EAAAC,EAAAriB,OAAAsiB,EAAAD,EAAApc,OAAAqc,GAAAC,GAAA,EAAAD,EAAAtiB,QAAAwiB,KAAoI,QAAAA,KAAsB,IAAAJ,EAAA,CAAc,GAAAhjB,GAAAyiB,EAAAM,EAAkCC,IAAA,CAAY,QAAA1iB,GAAA4iB,EAAAtiB,OAAuBN,GAAE,CAAE,IAAA2iB,EAAAC,SAAgCC,EAAA7iB,GAAe2iB,KAAAE,GAAAE,KAA8CF,IAAA,EAAA7iB,EAAA4iB,EAAAtiB,OAA6BqiB,EAAA,KAAAD,GAAA,EAAAJ,EAAA5iB,IAAkD,QAAAsjB,GAAAtjB,EAAAM,GAAmBT,KAAA0jB,IAAAvjB,EAAAH,KAAA2jB,MAAAljB,EAAwB,QAAAmjB,MAAiB,GAA6Bf,GAAAG,EAA7Ba,EAAArlB,EAAAD,YAAkE,WAAY,IAAIskB,EAAA,kBAAAC,uBAAAJ,EAA2E,MAAAviB,GAAS0iB,EAAAH,EAAkC,IAAIM,EAAA,kBAAAC,2BAAAN,EAAoF,MAAAxiB,GAAS6iB,EAAAL,KAA2C,IAAAS,GAAAC,KAAAF,GAAA,EAAAG,GAAA,CAAoDO,GAAAC,SAAA,SAAA3jB,GAA6B,GAAAM,GAAA,GAAAuF,OAAA+d,UAAAhjB,OAAA,EAAoC,IAAAgjB,UAAAhjB,OAAA,SAAAL,GAAA,EAAkCA,EAAAqjB,UAAAhjB,OAAmBL,IAAAD,EAAAC,EAAA,GAAAqjB,UAAArjB,EAAwB2iB,GAAAhc,KAAA,GAAAoc,GAAAtjB,EAAAM,IAAA,IAAA4iB,EAAAtiB,QAAAoiB,GAAAP,EAAAW,IAA6EE,EAAA9jB,UAAA6jB,IAAA,WAA+BxjB,KAAA0jB,IAAAM,MAAA,KAAAhkB,KAAA2jB,QAAgCE,EAAAI,MAAA,UAAAJ,EAAAK,SAAA,EAAAL,EAAAM,OAA0DN,EAAAO,QAAAP,EAAA5V,QAAA,GAAA4V,EAAAQ,YAAuDR,EAAAS,GAAAV,EAAAC,EAAAU,YAAAX,EAAAC,EAAAW,KAAAZ,EAAAC,EAAAY,IAAAb,EAAAC,EAAAa,eAAAd,EAAAC,EAAAc,mBAAAf,EAAAC,EAAAe,KAAAhB,EAAAC,EAAAgB,gBAAAjB,EAAAC,EAAAiB,oBAAAlB,EAAAC,EAAAkB,UAAA,SAAA5kB,GAAuP,UAAS0jB,EAAAmB,QAAA,SAAA7kB,GAA6B,SAAAU,OAAA,qCAAoDgjB,EAAAoB,IAAA,WAAwB,WAAUpB,EAAAqB,MAAA,SAAA/kB,GAA2B,SAAAU,OAAA,mCAAkDgjB,EAAAsB,MAAA,WAA0B,eACxjFC,IAAA,SAAAnkB,EAAAzC,EAAAD,GACJ,YAAa,SAAA8mB,GAAAzkB,EAAAH,EAAAC,EAAAzB,EAAAY,GAAgC,IAAAa,KAAA,EAAAzB,KAAA2B,EAAAG,OAAA,EAAAlB,KAAAylB,EAA+CrmB,EAAAyB,GAAI,CAAE,GAAAzB,EAAAyB,EAAA,KAAY,GAAAH,GAAAtB,EAAAyB,EAAA,EAAAP,EAAAM,EAAAC,EAAA,EAAAhC,EAAA2C,KAAA6S,IAAA3T,GAAAT,EAAA,GAAAuB,KAAAuM,IAAA,EAAAlP,EAAA,GAAAD,EAAA,GAAA4C,KAAAiE,KAAA5G,EAAAoB,GAAAS,EAAAT,GAAAS,IAAAJ,EAAAI,EAAA,SAAkG8kB,GAAAzkB,EAAAH,EAAAY,KAAAuG,IAAAlH,EAAAW,KAAAoV,MAAAhW,EAAAN,EAAAL,EAAAS,EAAA9B,IAAA4C,KAAAmJ,IAAAvL,EAAAoC,KAAAoV,MAAAhW,GAAAF,EAAAJ,GAAAL,EAAAS,EAAA9B,IAAAoB,GAA2F,GAAAN,GAAAqB,EAAAH,GAAAiB,EAAAhB,EAAAC,EAAA1B,CAAmB,KAAA4b,EAAAja,EAAAF,EAAAD,GAAAZ,EAAAe,EAAA3B,GAAAM,GAAA,GAAAsb,EAAAja,EAAAF,EAAAzB,GAAyCyC,EAAAf,GAAI,CAAE,IAAAka,EAAAja,EAAAc,EAAAf,GAAAe,IAAAf,IAAwBd,EAAAe,EAAAc,GAAAnC,GAAA,GAAYmC,GAAK,MAAK7B,EAAAe,EAAAD,GAAApB,GAAA,GAAYoB,IAAK,IAAAd,EAAAe,EAAAF,GAAAnB,GAAAsb,EAAAja,EAAAF,EAAAC,QAAAka,EAAAja,EAAAD,EAAA1B,IAAA0B,GAAAF,IAAAC,EAAAC,EAAA,GAAAF,GAAAE,IAAA1B,EAAA0B,EAAA,IAAyE,QAAAka,GAAAja,EAAAH,EAAAC,GAAqB,GAAAzB,GAAA2B,EAAAH,EAAWG,GAAAH,GAAAG,EAAAF,GAAAE,EAAAF,GAAAzB,EAAiB,QAAAqmB,GAAA1kB,EAAAH,GAA6B,MAAAG,GAAAH,GAAA,EAAAG,EAAAH,EAAA,IAAsBjC,EAAAD,QAAA8mB,OACrlBE,IAAA,SAAAtkB,EAAAzC,EAAAD,GACJ,YAAa,SAAAinB,GAAA/kB,GAAyB,UAAAglB,GAAAhlB,GAA2B,QAAAglB,GAAAhlB,GAAyBT,KAAA0U,QAAAC,EAAAzV,OAAA2D,OAAA7C,KAAA0U,SAAAjU,GAAAT,KAAA0lB,MAAA,GAAA1f,OAAAhG,KAAA0U,QAAAK,QAAA,GAAgG,QAAA4Q,GAAAllB,EAAAN,EAAAZ,EAAAN,EAAAR,GAAkC,OAAOsD,EAAAtB,EAAAkB,EAAAxB,EAAAylB,KAAA,IAAAjf,GAAA1H,EAAAyN,WAAAjO,EAAAonB,UAAA,EAAAlQ,UAAApW,GAA4D,QAAAumB,GAAArlB,EAAAN,GAAiC,GAAAZ,GAAAkB,EAAAoN,SAAAC,WAA6B,QAAO/L,EAAAgkB,EAAAxmB,EAAA,IAAAoC,EAAAqkB,EAAAzmB,EAAA,IAAAqmB,KAAA,IAAAjf,GAAAxG,EAAA0lB,UAAA,GAAqD,QAAAI,GAAAxlB,GAA2B,OAAOmM,KAAA,UAAAF,WAAAwZ,EAAAzlB,GAAAoN,UAA4DjB,KAAA,QAAAkB,aAAAqY,EAAA1lB,EAAAsB,GAAAqkB,EAAA3lB,EAAAkB,MAAiD,QAAAukB,GAAAzlB,GAAiC,GAAAN,GAAAM,EAAAkV,UAAApW,EAAAY,GAAA,IAAAkB,KAAA8D,MAAAhF,EAAA,SAAAA,GAAA,IAAAkB,KAAA8D,MAAAhF,EAAA,YAAAA,CAAmF,OAAAwU,QAAuBlU,EAAAiM,aAAgB2Z,SAAA,EAAAC,WAAA7lB,EAAAkG,GAAA4f,YAAApmB,EAAAqmB,wBAAAjnB,IAAqE,QAAAwmB,GAAAtlB,GAAiB,MAAAA,GAAA,OAAgB,QAAAulB,GAAAvlB,GAAiB,GAAAN,GAAAkB,KAAAC,IAAAb,EAAAY,KAAAqM,GAAA,KAAAnO,EAAA,OAAA8B,KAAA6S,KAAA,EAAA/T,IAAA,EAAAA,IAAAkB,KAAAqM,EAAqE,OAAAnO,GAAA,IAAAA,EAAA,IAAAA,EAAqB,QAAA4mB,GAAA1lB,GAAiB,YAAAA,EAAA,IAAkB,QAAA2lB,GAAA3lB,GAAiB,GAAAN,IAAA,QAAAM,GAAAY,KAAAqM,GAAA,GAA8B,YAAArM,KAAAsM,KAAAtM,KAAAuM,IAAAzN,IAAAkB,KAAAqM,GAAA,GAA6C,QAAAiH,GAAAlU,EAAAN,GAAqB,OAAAZ,KAAAY,GAAAM,EAAAlB,GAAAY,EAAAZ,EAAyB,OAAAkB,GAAS,QAAAgmB,GAAAhmB,GAAiB,MAAAA,GAAAsB,EAAW,QAAA2kB,GAAAjmB,GAAiB,MAAAA,GAAAkB,EAAW,GAAAgY,GAAA1Y,EAAA,SAA6BzC,GAAAD,QAAAinB,EAAAC,EAAA9lB,WAAoD+U,SAASiS,QAAA,EAAA5R,QAAA,GAAApM,OAAA,GAAAgE,OAAA,IAAAoN,SAAA,GAAA7F,KAAA,EAAA+H,OAAA,KAAA2K,QAAA,WAA4F,UAASpU,IAAA,SAAA/R,GAAiB,MAAAA,KAAUomB,KAAA,SAAApmB,GAAkB,GAAAN,GAAAH,KAAA0U,QAAAR,GAAuB/T,IAAA0U,QAAAC,KAAA,aAA8B,IAAAvV,GAAA,WAAAkB,EAAAM,OAAA,SAAoCZ,IAAA0U,QAAAC,KAAAvV,GAAAS,KAAAga,OAAAvZ,CAAiC,IAAAxB,GAAAwB,EAAA+R,IAAAsT,EAAgC3lB,IAAA0U,QAAAM,QAAA5V,EAAsB,QAAAd,GAAAuB,KAAA0U,QAAAK,QAA+BtW,GAAAuB,KAAA0U,QAAAiS,QAAwBloB,IAAA,CAAK,GAAAiC,IAAAomB,KAAAC,KAAkB/mB,MAAA0lB,MAAAjnB,EAAA,GAAAkb,EAAA1a,EAAAwnB,EAAAC,EAAA1mB,KAAA0U,QAAAqF,SAAA3Y,cAAAnC,EAAAe,KAAAgnB,SAAA/nB,EAAAR,GAAA0B,GAAA0U,QAAAX,IAAA,2BAAAzV,EAAAQ,EAAA8B,QAAA+lB,KAAAC,MAAArmB,GAAgK,MAAAV,MAAA0lB,MAAA1lB,KAAA0U,QAAAiS,SAAAhN,EAAA1a,EAAAwnB,EAAAC,EAAA1mB,KAAA0U,QAAAqF,SAAA3Y,cAAAjB,GAAA0U,QAAAM,QAAA,cAAAnV,MAAqIinB,YAAA,SAAAxmB,EAAAN,GAA2B,OAAAZ,GAAAS,KAAA0lB,MAAA1lB,KAAAknB,WAAA/mB,IAAAlB,EAAAM,EAAA4a,MAAA4L,EAAAtlB,EAAA,IAAAulB,EAAAvlB,EAAA,IAAAslB,EAAAtlB,EAAA,IAAAulB,EAAAvlB,EAAA,KAAAhC,KAAAiC,EAAA,EAAyGA,EAAAzB,EAAA8B,OAAWL,IAAA,CAAK,GAAAZ,GAAAP,EAAAya,OAAA/a,EAAAyB,GAAqBjC,GAAA4I,KAAAvH,EAAA6V,UAAAsQ,EAAAnmB,GAAAE,KAAAga,OAAAla,EAAA6G,KAAwD,MAAAlI,IAAS0oB,YAAA,SAAA1mB,EAAAN,GAA2B,OAAAZ,GAAAS,KAAA0lB,MAAAvlB,EAAA,GAAA6Z,OAAAvZ,GAAAxB,EAAAe,KAAA0U,QAAA/L,QAAA3I,KAAA0U,QAAA/H,OAAAtL,KAAAkJ,IAAA,EAAApK,IAAA1B,EAAAuB,KAAA0lB,MAAAvlB,EAAA,GAAAia,OAAA7a,EAAAwC,EAAAxC,EAAAoC,EAAA1C,GAAAyB,KAAAZ,EAAA,EAA2IA,EAAArB,EAAAsC,OAAWjB,IAAA,CAAK,GAAAa,GAAAX,KAAA0lB,MAAAvlB,EAAA,GAAA6Z,OAAAvb,EAAAqB,GAAmCa,GAAAklB,WAAAplB,GAAAC,EAAA2G,KAAA1G,EAAAgV,UAAAsQ,EAAAtlB,GAAAX,KAAAga,OAAArZ,EAAAgG,KAAwE,MAAAjG,IAAS0mB,UAAA,SAAA3mB,EAAAN,EAAAZ,EAAAN,GAA6BM,KAAA,GAAAN,KAAA,CAAe,IAAAR,KAAS,OAAAuB,MAAAqnB,cAAA5oB,EAAAgC,EAAAN,EAAAZ,EAAAN,EAAA,GAAAR,GAAyCkY,QAAA,SAAAlW,EAAAN,EAAAZ,GAAyB,GAAAN,GAAAe,KAAA0lB,MAAA1lB,KAAAknB,WAAAzmB,IAAAhC,EAAA4C,KAAAkJ,IAAA,EAAA9J,GAAAC,EAAAV,KAAA0U,QAAA/H,OAAA7M,EAAAE,KAAA0U,QAAA/L,OAAAhI,EAAAb,EAAAY,EAAAE,GAAArB,EAAAoB,GAAAlC,EAAAoB,GAAAN,EAAA,EAAAoB,GAAAlC,EAAAiD,GAAgI6Q,YAAa,OAAAvS,MAAAsnB,iBAAAroB,EAAAkb,OAAAha,EAAAQ,GAAAlC,EAAAmC,GAAAT,EAAA,EAAAQ,GAAAlC,EAAAoB,GAAAZ,EAAA+a,OAAA7Z,EAAAZ,EAAAd,EAAAiD,GAAA,IAAAvB,GAAAH,KAAAsnB,iBAAAroB,EAAAkb,MAAA,EAAAxZ,EAAAlC,EAAAmC,EAAA,EAAAf,GAAAZ,EAAA+a,OAAAvb,EAAAc,EAAAd,EAAAiD,GAAAvB,IAAA1B,EAAA,GAAAuB,KAAAsnB,iBAAAroB,EAAAkb,MAAA,EAAAvZ,EAAAD,EAAAlC,EAAAoB,GAAAZ,EAAA+a,QAAA,EAAAza,EAAAd,EAAAiD,KAAA6Q,SAAAxR,OAAAW,EAAA,MAAgP6lB,wBAAA,SAAA9mB,EAAAN,GAAuC,KAAKA,EAAAH,KAAA0U,QAAAK,SAAuB,CAAE,GAAAxV,GAAAS,KAAAmnB,YAAA1mB,EAAAN,EAA4B,IAAAA,IAAA,IAAAZ,EAAAwB,OAAA,KAA0BN,GAAAlB,EAAA,GAAAmN,WAAA4Z,WAA6B,MAAAnmB,IAASknB,cAAA,SAAA5mB,EAAAN,EAAAZ,EAAAN,EAAAR,EAAAiC,GAAqC,OAAAZ,GAAAE,KAAAmnB,YAAAhnB,EAAAZ,GAAAoB,EAAA,EAAoCA,EAAAb,EAAAiB,OAAWJ,IAAA,CAAK,GAAAC,GAAAd,EAAAa,GAAA+L,UAAsB,IAAA9L,EAAAylB,QAAA3lB,EAAAE,EAAA2lB,aAAA9nB,EAAAiC,GAAAE,EAAA2lB,YAAA7lB,EAAAV,KAAAqnB,cAAA5mB,EAAAG,EAAA0lB,WAAA/mB,EAAA,EAAAN,EAAAR,EAAAiC,KAAAjC,EAAAiC,IAAAD,EAAA4G,KAAAvH,EAAAa,IAAAF,EAAAM,SAAA9B,EAAA,MAAwI,MAAAyB,IAAS4mB,iBAAA,SAAA7mB,EAAAN,EAAAZ,EAAAN,EAAAR,EAAAiC,GAAwC,OAAAZ,GAAA,EAAYA,EAAAW,EAAAM,OAAWjB,IAAA,CAAK,GAAAa,GAAAR,EAAAM,EAAAX,GAAcY,GAAA6R,SAAAlL,MAAiBuF,KAAA,EAAAiB,WAAAxM,KAAA8D,MAAAnF,KAAA0U,QAAA/H,QAAAhM,EAAAoB,EAAAtD,EAAAc,IAAA8B,KAAA8D,MAAAnF,KAAA0U,QAAA/H,QAAAhM,EAAAgB,EAAAlD,EAAAQ,MAAAqU,KAAA3S,EAAAgV,UAAAuQ,EAAAvlB,GAAAX,KAAAga,OAAArZ,EAAAgG,IAAA+F,eAAiLwa,WAAA,SAAAzmB,GAAwB,MAAAY,MAAAuG,IAAA5H,KAAA0U,QAAAiS,QAAAtlB,KAAAmJ,IAAA/J,EAAAT,KAAA0U,QAAAK,QAAA,KAAyEiS,SAAA,SAAAvmB,EAAAN,GAAwB,OAAAZ,MAAAN,EAAAe,KAAA0U,QAAA/L,QAAA3I,KAAA0U,QAAA/H,OAAAtL,KAAAkJ,IAAA,EAAApK,IAAA1B,EAAA,EAA2EA,EAAAgC,EAAAM,OAAWtC,IAAA,CAAK,GAAAiC,GAAAD,EAAAhC,EAAW,MAAAiC,EAAAklB,MAAAzlB,GAAA,CAAiBO,EAAAklB,KAAAzlB,CAAS,IAAAL,GAAAE,KAAA0lB,MAAAvlB,EAAA,GAAAQ,EAAAb,EAAAsa,OAAA1Z,EAAAqB,EAAArB,EAAAiB,EAAA1C,GAAA2B,EAAAF,EAAAiV,WAAA,EAAA9V,EAAAa,EAAAqB,EAAAnB,EAAAc,EAAAhB,EAAAiB,EAAAf,EAAAlC,EAAA,IAAoFsB,MAAA0U,QAAAuH,SAAAvd,EAAAsB,KAAA0U,QAAAkS,UAAA5mB,KAAAwnB,YAAA9oB,EAAAgC,GAAsE,QAAA7B,GAAA,EAAYA,EAAA8B,EAAAI,OAAWlC,IAAA,CAAK,GAAAC,GAAAgB,EAAAka,OAAArZ,EAAA9B,GAAqB,IAAAsB,EAAArB,EAAA8mB,KAAA,CAAa,GAAAhnB,GAAAE,EAAA6W,WAAA,CAAqB7W,GAAA8mB,KAAAzlB,EAAAN,GAAAf,EAAAiD,EAAAnD,EAAA8C,GAAA5C,EAAA6C,EAAA/C,EAAAgC,GAAAhC,EAAAE,EAAA+mB,SAAApnB,EAAAuB,KAAA0U,QAAAuH,QAAAjc,KAAAwnB,YAAA9oB,EAAAI,IAAyF,IAAA8B,EAAArB,EAAA8H,KAAA3G,MAAAmlB,SAAApnB,EAAAc,EAAA8H,KAAAse,EAAA9lB,EAAAe,EAAAc,EAAAd,IAAAnC,EAAAC,MAAqE,MAAAa,IAASioB,YAAA,SAAA/mB,EAAAN,GAA2B,GAAAZ,GAAAY,EAAAwV,UAAAxV,EAAAuM,WAAA1M,KAAA0U,QAAAlC,IAAAxS,KAAAga,OAAA7Z,EAAAwG,IAAA+F,WAA8E1M,MAAA0U,QAAAuH,OAAAxb,EAAAlB,OACj0Ioa,OAAA,KAAY8N,IAAA,SAAAxmB,EAAAzC,EAAAD,GACf,YAAa,SAAAmpB,GAAAjnB,EAAAhC,GAAwB,KAAAuB,eAAA0nB,IAAA,UAAAA,GAAAjnB,EAAAhC,EAA0D,IAAAuB,KAAAsK,KAAA7J,MAAAT,KAAAe,OAAAf,KAAAsK,KAAAvJ,OAAAf,KAAA2nB,QAAAlpB,GAAA6mB,EAAAtlB,KAAAe,OAAA,SAAAZ,GAAAH,KAAAe,QAAA,EAAsHZ,GAAA,EAAKA,IAAAH,KAAA4nB,MAAAznB,GAAkB,QAAAmlB,GAAA7kB,EAAAhC,GAA6B,MAAAgC,GAAAhC,GAAA,EAAAgC,EAAAhC,EAAA,IAAsBD,EAAAD,QAAAmpB,IAAA/nB,WAA8C0H,KAAA,SAAA5G,GAAiBT,KAAAsK,KAAAjD,KAAA5G,GAAAT,KAAAe,SAAAf,KAAA6nB,IAAA7nB,KAAAe,OAAA,IAAwDwV,IAAA,WAAgB,OAAAvW,KAAAe,OAAA,CAAoB,GAAAN,GAAAT,KAAAsK,KAAA,EAAmB,OAAAtK,MAAAe,SAAAf,KAAAe,OAAA,IAAAf,KAAAsK,KAAA,GAAAtK,KAAAsK,KAAAtK,KAAAe,QAAAf,KAAA4nB,MAAA,IAAA5nB,KAAAsK,KAAAiM,MAAA9V,IAA2GqnB,KAAA,WAAiB,MAAA9nB,MAAAsK,KAAA,IAAoBud,IAAA,SAAApnB,GAAiB,OAAAhC,GAAAuB,KAAAsK,KAAAnK,EAAAH,KAAA2nB,QAAAjmB,EAAAjD,EAAAgC,GAA0CA,EAAA,GAAI,CAAE,GAAAlB,GAAAkB,EAAA,KAAAG,EAAAnC,EAAAc,EAAoB,IAAAY,EAAAuB,EAAAd,IAAA,OAAmBnC,GAAAgC,GAAAG,EAAAH,EAAAlB,EAAWd,EAAAgC,GAAAiB,GAAOkmB,MAAA,SAAAnnB,GAAmB,OAAAhC,GAAAuB,KAAAsK,KAAAnK,EAAAH,KAAA2nB,QAAAjmB,EAAA1B,KAAAe,OAAAxB,EAAAmC,GAAA,EAAAd,EAAAnC,EAAAgC,GAA+DA,EAAAlB,GAAI,CAAE,GAAAO,GAAA,GAAAW,GAAA,GAAAE,EAAAb,EAAA,EAAAY,EAAAjC,EAAAqB,EAA4B,IAAAa,EAAAe,GAAAvB,EAAA1B,EAAAkC,GAAAD,GAAA,IAAAZ,EAAAa,EAAAD,EAAAjC,EAAAkC,IAAAR,EAAAO,EAAAE,IAAA,OAAkDnC,GAAAgC,GAAAC,EAAAD,EAAAX,EAAWrB,EAAAgC,GAAAG,SACp4BmnB,IAAA,SAAA9mB,EAAAzC,EAAAD,GACJ,kBAAAW,QAAA2D,OAAArE,EAAAD,QAAA,SAAAkC,EAAAN,GAA8DM,EAAAunB,OAAA7nB,EAAAM,EAAAd,UAAAT,OAAA2D,OAAA1C,EAAAR,WAAkDsoB,aAAa3Y,MAAA7O,EAAApB,YAAA,EAAA6oB,UAAA,EAAA9oB,cAAA,MAAqDZ,EAAAD,QAAA,SAAAkC,EAAAN,GAA8BM,EAAAunB,OAAA7nB,CAAW,IAAAlB,GAAA,YAAmBA,GAAAU,UAAAQ,EAAAR,UAAAc,EAAAd,UAAA,GAAAV,GAAAwB,EAAAd,UAAAsoB,YAAAxnB,QAC1O0nB,IAAA,SAAAlnB,EAAAzC,EAAAD,GACJC,EAAAD,QAAA,SAAAU,GAA2B,MAAAA,IAAA,gBAAAA,IAAA,kBAAAA,GAAAmpB,MAAA,kBAAAnpB,GAAAopB,MAAA,kBAAAppB,GAAAqpB,gBACvBC,IAAA,SAAAtnB,EAAAzC,EAAAD,IACJ,SAAAslB,EAAAxjB,GACA,QAAAmoB,GAAAroB,EAAAO,GAAsB,GAAAD,IAAOgoB,QAAAC,QAAAC,EAAgC,OAAA5E,WAAAhjB,QAAA,IAAAN,EAAA+c,MAAAuG,UAAA,IAAAA,UAAAhjB,QAAA,IAAAN,EAAAmoB,OAAA7E,UAAA,IAAA8E,EAAAnoB,GAAAD,EAAAqoB,WAAApoB,KAAAnC,EAAAwqB,QAAAtoB,EAAAC,GAAAsoB,EAAAvoB,EAAAqoB,cAAAroB,EAAAqoB,YAAA,GAAAE,EAAAvoB,EAAA+c,SAAA/c,EAAA+c,MAAA,GAAAwL,EAAAvoB,EAAAmoB,UAAAnoB,EAAAmoB,QAAA,GAAAI,EAAAvoB,EAAAwoB,iBAAAxoB,EAAAwoB,eAAA,GAAAxoB,EAAAmoB,SAAAnoB,EAAAioB,QAAAQ,GAAAC,EAAA1oB,EAAAN,EAAAM,EAAA+c,OAA2X,QAAA0L,GAAA/oB,EAAAO,GAA+B,GAAAD,GAAA+nB,EAAAY,OAAA1oB,EAAwB,OAAAD,GAAA,KAAA+nB,EAAAI,OAAAnoB,GAAA,OAAAN,EAAA,KAAAqoB,EAAAI,OAAAnoB,GAAA,OAAAN,EAAyE,QAAAwoB,GAAAxoB,EAAAO,GAA6B,MAAAP,GAAS,QAAAkpB,GAAAlpB,GAAwB,GAAAO,KAAS,OAAAP,GAAA2b,QAAA,SAAA3b,EAAAM,GAA+BC,EAAAP,IAAA,IAAQO,EAAI,QAAAyoB,GAAAhpB,EAAAO,EAAAD,GAA4B,GAAAN,EAAA8oB,eAAAvoB,GAAA4oB,EAAA5oB,EAAA8nB,UAAA9nB,EAAA8nB,UAAAjqB,EAAAiqB,WAAA9nB,EAAAunB,aAAAvnB,EAAAunB,YAAAtoB,YAAAe,GAAA,CAA0H,GAAAnB,GAAAmB,EAAA8nB,QAAA/nB,EAAAN,EAAqB,OAAAopB,GAAAhqB,OAAA4pB,EAAAhpB,EAAAZ,EAAAkB,IAAAlB,EAA6C,GAAAd,GAAA+qB,EAAArpB,EAAAO,EAA2B,IAAAjC,EAAA,MAAAA,EAAc,IAAAQ,GAAAC,OAAAmZ,KAAA3X,GAAAZ,EAAAupB,EAAApqB,EAAsC,IAAAkB,EAAA2oB,aAAA7pB,EAAAC,OAAAmd,oBAAA3b,IAAA+oB,EAAA/oB,KAAAzB,EAAA4K,QAAA,eAAA5K,EAAA4K,QAAA,yBAAA6f,GAAAhpB,EAA4I,QAAAzB,EAAA8B,OAAA,CAAiB,GAAAuoB,EAAA5oB,GAAA,CAAkB,GAAAC,GAAAD,EAAA3B,KAAA,KAAA2B,EAAA3B,KAAA,EAA4B,OAAAoB,GAAAuoB,QAAA,YAAA/nB,EAAA,eAA8C,GAAAgpB,EAAAjpB,GAAA,MAAAP,GAAAuoB,QAAAkB,OAAAjqB,UAAAkqB,SAAAlrB,KAAA+B,GAAA,SAA4E,IAAAopB,EAAAppB,GAAA,MAAAP,GAAAuoB,QAAA5B,KAAAnnB,UAAAkqB,SAAAlrB,KAAA+B,GAAA,OAAsE,IAAA+oB,EAAA/oB,GAAA,MAAAgpB,GAAAhpB,GAAoC,GAAA7B,GAAA,GAAA+B,GAAA,EAAAlC,GAAA,IAAmB,IAAmG,IAA5FuH,EAAAvF,KAAAE,GAAA,EAAAlC,GAAA,UAAA4qB,EAAA5oB,KAAiD7B,EAAA,cAAA6B,EAAA3B,KAAA,KAAA2B,EAAA3B,KAAA,SAA2C4qB,EAAAjpB,KAAA7B,EAAA,IAAA+qB,OAAAjqB,UAAAkqB,SAAAlrB,KAAA+B,IAAAopB,EAAAppB,KAAA7B,EAAA,IAAAioB,KAAAnnB,UAAAoqB,YAAAprB,KAAA+B,IAAA+oB,EAAA/oB,KAAA7B,EAAA,IAAA6qB,EAAAhpB,IAAA,IAAAzB,EAAA8B,UAAAH,GAAA,GAAAF,EAAAK,QAAA,MAAArC,GAAA,GAAAG,EAAAH,EAAA,EAAsM,IAAA+B,EAAA,QAAAkpB,GAAAjpB,GAAAP,EAAAuoB,QAAAkB,OAAAjqB,UAAAkqB,SAAAlrB,KAAA+B,GAAA,UAAAP,EAAAuoB,QAAA,qBAAgHvoB,GAAAsoB,KAAAphB,KAAA3G,EAAe,IAAAb,EAAM,OAAAA,GAAAe,EAAAopB,EAAA7pB,EAAAO,EAAAD,EAAAX,EAAAb,KAAAuT,IAAA,SAAAjT,GAAoD,MAAA0qB,GAAA9pB,EAAAO,EAAAD,EAAAX,EAAAP,EAAAqB,KAAmCT,EAAAsoB,KAAAlS,MAAA2T,EAAArqB,EAAAhB,EAAAH,GAA2C,QAAA8qB,GAAArpB,EAAAO,GAA8B,GAAAsoB,EAAAtoB,GAAA,MAAAP,GAAAuoB,QAAA,wBAA4D,IAAAa,EAAA7oB,GAAA,CAAgB,GAAAD,GAAA,IAAAmV,KAAAC,UAAAnV,GAAAypB,QAAA,aAAAA,QAAA,YAAAA,QAAA,eAA6F,OAAAhqB,GAAAuoB,QAAAjoB,EAAA,UAA6B,MAAA2pB,GAAA1pB,GAAAP,EAAAuoB,QAAA,GAAAhoB,EAAA,UAAAmoB,EAAAnoB,GAAAP,EAAAuoB,QAAA,GAAAhoB,EAAA,WAAA2pB,EAAA3pB,GAAAP,EAAAuoB,QAAA,sBAA6H,QAAAgB,GAAAvpB,GAAwB,UAAAU,MAAAlB,UAAAkqB,SAAAlrB,KAAAwB,GAAA,IAA+C,QAAA6pB,GAAA7pB,EAAAO,EAAAD,EAAAlB,EAAAd,GAAgC,OAAAQ,MAAAa,EAAA,EAAAa,EAAAD,EAAAK,OAA4BjB,EAAAa,IAAIb,EAAAF,EAAAc,EAAAof,OAAAhgB,IAAAb,EAAAoI,KAAA4iB,EAAA9pB,EAAAO,EAAAD,EAAAlB,EAAAugB,OAAAhgB,IAAA,IAAAb,EAAAoI,KAAA,GAAwF,OAAA5I,GAAAqd,QAAA,SAAArd,GAA6BA,EAAA6rB,MAAA,UAAArrB,EAAAoI,KAAA4iB,EAAA9pB,EAAAO,EAAAD,EAAAlB,EAAAd,GAAA,MAAuDQ,EAAI,QAAAgrB,GAAA9pB,EAAAO,EAAAD,EAAAlB,EAAAd,EAAAQ,GAAqC,GAAAa,GAAAa,EAAA9B,CAAU,IAAAA,EAAAK,OAAAud,yBAAA/b,EAAAjC,KAA4C6Q,MAAA5O,EAAAjC,IAAWI,EAAAS,IAAAqB,EAAA9B,EAAAqa,IAAA/Y,EAAAuoB,QAAA,6BAAAvoB,EAAAuoB,QAAA,sBAAA7pB,EAAAqa,MAAAvY,EAAAR,EAAAuoB,QAAA,uBAAA9oB,EAAAL,EAAAd,KAAAqB,EAAA,IAAArB,EAAA,KAAAkC,IAAAR,EAAAsoB,KAAA5e,QAAAhL,EAAAyQ,OAAA,GAAA3O,EAAA0pB,EAAA5pB,GAAA0oB,EAAAhpB,EAAAtB,EAAAyQ,MAAA,MAAA6Z,EAAAhpB,EAAAtB,EAAAyQ,MAAA7O,EAAA,GAAAE,EAAAkJ,QAAA,WAAAlJ,EAAA1B,EAAA0B,EAAA4pB,MAAA,MAAA/X,IAAA,SAAArS,GAA6T,WAAAA,IAAa+O,KAAA,MAAAsb,OAAA,QAAA7pB,EAAA4pB,MAAA,MAAA/X,IAAA,SAAArS,GAA0D,YAAAA,IAAc+O,KAAA,QAAAvO,EAAAR,EAAAuoB,QAAA,yBAAAM,EAAAlpB,GAAA,CAAoE,GAAAb,GAAAR,EAAA6rB,MAAA,eAAA3pB,EAAgCb,GAAA8V,KAAAC,UAAA,GAAApX,GAAAqB,EAAAwqB,MAAA,iCAAAxqB,IAAA0qB,OAAA,EAAA1qB,EAAAiB,OAAA,GAAAjB,EAAAK,EAAAuoB,QAAA5oB,EAAA,UAAAA,IAAAqqB,QAAA,YAAAA,QAAA,YAAAA,QAAA,gBAAArqB,EAAAK,EAAAuoB,QAAA5oB,EAAA,WAA8M,MAAAA,GAAA,KAAAa,EAAgB,QAAAupB,GAAA/pB,EAAAO,EAAAD,GAAqC,GAAAlB,GAAA,CAAQ,OAAAY,GAAA8b,OAAA,SAAA9b,EAAAO,GAA8B,MAAAnB,KAAAmB,EAAAmJ,QAAA,UAAAtK,IAAAY,EAAAO,EAAAypB,QAAA,sBAAAppB,OAAA,GAA8E,MAAAN,EAAA,SAAAC,EAAA,GAAAA,EAAA,WAAAP,EAAA+O,KAAA,aAAAzO,EAAA,GAAAA,EAAA,GAAAC,EAAA,IAAAP,EAAA+O,KAAA,UAAAzO,EAAA,GAA8F,QAAAwF,GAAA9F,GAAoB,MAAA6F,OAAAC,QAAA9F,GAAwB,QAAA0oB,GAAA1oB,GAAsB,uBAAAA,GAA0B,QAAAkqB,GAAAlqB,GAAmB,cAAAA,EAAgB,QAAAsqB,GAAAtqB,GAA8B,aAAAA,EAAe,QAAAiqB,GAAAjqB,GAAqB,sBAAAA,GAAyB,QAAAopB,GAAAppB,GAAqB,sBAAAA,GAAyB,QAAAuqB,GAAAvqB,GAAqB,sBAAAA,GAAyB,QAAA6oB,GAAA7oB,GAAwB,gBAAAA,EAAkB,QAAAwpB,GAAAxpB,GAAqB,MAAAwqB,GAAAxqB,IAAA,oBAAAyqB,EAAAzqB,GAA0D,QAAAwqB,GAAAxqB,GAAqB,sBAAAA,IAAA,OAAAA,EAAmC,QAAA2pB,GAAA3pB,GAAmB,MAAAwqB,GAAAxqB,IAAA,kBAAAyqB,EAAAzqB,GAAwD,QAAAspB,GAAAtpB,GAAoB,MAAAwqB,GAAAxqB,KAAA,mBAAAyqB,EAAAzqB,gBAAAU,QAA+E,QAAAyoB,GAAAnpB,GAAuB,wBAAAA,GAA2B,QAAA0qB,GAAA1qB,GAAwB,cAAAA,GAAA,iBAAAA,IAAA,gBAAAA,IAAA,gBAAAA,IAAA,gBAAAA,QAAA,KAAAA,EAA6G,QAAAyqB,GAAAzqB,GAA2B,MAAAjB,QAAAS,UAAAkqB,SAAAlrB,KAAAwB,GAAyC,QAAA2qB,GAAA3qB,GAAgB,MAAAA,GAAA,OAAAA,EAAA0pB,SAAA,IAAA1pB,EAAA0pB,SAAA,IAA8C,QAAAkB,KAAqB,GAAA5qB,GAAA,GAAA2mB,MAAApmB,GAAAoqB,EAAA3qB,EAAA6qB,YAAAF,EAAA3qB,EAAA8qB,cAAAH,EAAA3qB,EAAA+qB,eAAAhc,KAAA,IAAuF,QAAA/O,EAAAgrB,UAAAC,EAAAjrB,EAAAkrB,YAAA3qB,GAAAwO,KAAA,KAAqD,QAAAtP,GAAAO,EAAAO,GAA6B,MAAAxB,QAAAS,UAAAC,eAAAjB,KAAAwB,EAAAO,GAAiD,GAAA4qB,GAAA,UAA4B/sB,GAAAuQ,OAAA,SAAA3O,GAA2B,IAAAopB,EAAAppB,GAAA,CAAiB,OAAAO,MAAAD,EAAA,EAAiBA,EAAAsjB,UAAAhjB,OAAmBN,IAAAC,EAAA2G,KAAAmhB,EAAAzE,UAAAtjB,IAAkC,OAAAC,GAAAwO,KAAA,KAAmB,OAAAzO,GAAA,EAAAlB,EAAAwkB,UAAAtlB,EAAAc,EAAAwB,OAAA9B,EAAA6gB,OAAA3f,GAAAgqB,QAAAmB,EAAA,SAAAnrB,GAAgF,UAAAA,EAAA,SAAsB,IAAAM,GAAAhC,EAAA,MAAA0B,EAAiB,QAAAA,GAAU,eAAA2f,QAAAvgB,EAAAkB,KAA+B,gBAAA8qB,QAAAhsB,EAAAkB,KAA+B,cAAa,MAAAmV,MAAAC,UAAAtW,EAAAkB,MAA8B,MAAAN,GAAS,mBAAmB,cAAAA,MAAkBL,EAAAP,EAAAkB,GAASA,EAAAhC,EAAIqB,EAAAP,IAAAkB,GAAA4pB,EAAAvqB,KAAA6qB,EAAA7qB,GAAAb,GAAA,IAAAa,EAAAb,GAAA,IAAAupB,EAAA1oB,EAA4D,OAAAb,IAASV,EAAAitB,UAAA,SAAArrB,EAAAO,GAAiC,QAAAD,KAAa,IAAAlB,EAAA,CAAO,GAAAskB,EAAA4H,iBAAA,SAAA5qB,OAAAH,EAA+CmjB,GAAA6H,iBAAA7W,QAAA8W,MAAAjrB,GAAAmU,QAAA+W,MAAAlrB,GAAAnB,GAAA,EAAgE,MAAAY,GAAA6jB,MAAAhkB,KAAA+jB,WAA+B,GAAAiF,EAAA3oB,EAAAwjB,SAAA,kBAAiD,MAAAtlB,GAAAitB,UAAArrB,EAAAO,GAAAsjB,MAAAhkB,KAAA+jB,WAAqD,SAAAF,EAAAgI,cAAA,MAAA1rB,EAAuC,IAAAZ,IAAA,CAAS,OAAAkB,GAAU,IAAaqrB,GAAbC,IAA2BxtB,GAAAytB,SAAA,SAAA7rB,GAA6B,GAAA6oB,EAAA8C,OAAAjI,EAAAM,IAAA8H,YAAA,IAAA9rB,IAAA+rB,eAAAH,EAAA5rB,GAAA,MAAAypB,QAAA,MAAAzpB,EAAA,WAAAgsB,KAAAL,GAAA,CAA0J,GAAAprB,GAAAmjB,EAAAuI,GAAkBL,GAAA5rB,GAAA,WAAqB,GAAAM,GAAAlC,EAAAuQ,OAAAkV,MAAAzlB,EAAAwlB,UAA8ClP,SAAA+W,MAAA,YAAAzrB,EAAAO,EAAAD,QAAkCsrB,GAAA5rB,GAAA,YAA4B,OAAA4rB,GAAA5rB,IAAiB5B,EAAAiqB,YAAAI,QAAyCyD,MAAA,MAAAC,QAAA,MAAAC,WAAA,MAAAC,SAAA,MAAAC,OAAA,OAAAC,MAAA,OAAAC,OAAA,OAAAC,MAAA,OAAAC,MAAA,OAAAC,OAAA,OAAAC,SAAA,OAAAC,KAAA,OAAAC,QAAA,QAAsLzE,EAAAY,QAAiB8D,QAAA,OAAAC,OAAA,SAAAC,QAAA,SAAAC,UAAA,OAAAC,KAAA,OAAAC,OAAA,QAAAC,KAAA,UAAAC,OAAA,OAAwHlvB,EAAA0H,UAAA1H,EAAAsqB,YAAAtqB,EAAA8rB,SAAA9rB,EAAAksB,oBAAAlsB,EAAA6rB,WAAA7rB,EAAAgrB,WAAAhrB,EAAAmsB,WAAAnsB,EAAAyqB,cAAAzqB,EAAAorB,WAAAprB,EAAAosB,WAAApsB,EAAAurB,SAAAvrB,EAAAkrB,UAAAlrB,EAAA+qB,aAAA/qB,EAAAssB,cAAAtsB,EAAAmvB,SAAAzsB,EAAA,qBAAob,IAAAmqB,IAAA,wEAAqF7sB,GAAA2V,IAAA,WAAuBW,QAAAX,IAAA,UAAA6W,IAAAxsB,EAAAuQ,OAAAkV,MAAAzlB,EAAAwlB,aAA2ExlB,EAAAovB,SAAA1sB,EAAA,YAAA1C,EAAAwqB,QAAA,SAAA5oB,EAAAO,GAAoE,IAAAA,IAAAiqB,EAAAjqB,GAAA,MAAAP,EAA6B,QAAAM,GAAAvB,OAAAmZ,KAAA3X,GAAAnB,EAAAkB,EAAAM,OAAoCxB,KAAIY,EAAAM,EAAAlB,IAAAmB,EAAAD,EAAAlB,GAAiB,OAAAY,MACzpOxB,KAAAqB,KAAAiB,EAAA,gCAAAZ,KAAA,oBAAAutB,WAAA,oBAAAxtB,qBAEEytB,qBAAA,GAAAC,SAAA,GAAAH,SAAA,KAAoDI,IAAA,SAAA9sB,EAAAzC,EAAAD,GACvD,QAAAyvB,GAAA7tB,GAA6B,GAAAO,GAAA,GAAAgd,EAAc,OAAAuQ,GAAA9tB,EAAAO,KAAA+gB,SAAiC,QAAAyM,GAAA/tB,GAA0B,GAAAO,KAAS,QAAAD,KAAAN,GAAAO,EAAAD,GAAA,GAAA0tB,GAAAhuB,EAAAM,GAAA8R,UAAA7R,EAAAD,GAAA1B,KAAA0B,CAAkE,OAAAutB,IAAyB7hB,OAAAzL,IAAW,QAAAutB,GAAA9tB,EAAAO,GAAwB,OAAAD,KAAAN,GAAAgM,OAAAzL,EAAAmhB,aAAA,EAAAuM,EAAAjuB,EAAAgM,OAAA1L,IAA+D,QAAA2tB,GAAAjuB,EAAAO,GAAyBA,EAAAyhB,iBAAA,GAAAhiB,EAAA8N,SAAA,GAAAvN,EAAA2hB,iBAAA,EAAAliB,EAAApB,MAAA,IAAA2B,EAAAyhB,iBAAA,EAAAhiB,EAAAwM,QAAA,KAA0G,IAAAlM,GAAAhC,GAAS4Z,QAAAgW,UAAAC,YAA6BC,cAAgB,KAAA9tB,EAAA,EAAQA,EAAAN,EAAAY,OAAWN,IAAAhC,EAAAiQ,QAAAvO,EAAAuO,QAAAjO,GAAAC,EAAAmhB,aAAA,EAAA2M,EAAA/vB,EAA4D,IAAAmC,GAAAnC,EAAA4Z,IAAa,KAAA5X,EAAA,EAAQA,EAAAG,EAAAG,OAAWN,IAAAC,EAAA2hB,iBAAA,EAAAzhB,EAAAH,GAA+B,IAAAxB,GAAAR,EAAA4vB,MAAe,KAAA5tB,EAAA,EAAQA,EAAAxB,EAAA8B,OAAWN,IAAAC,EAAAmhB,aAAA,EAAA4M,EAAAxvB,EAAAwB,IAAsC,QAAA+tB,GAAAruB,EAAAO,GAA2B,GAAAD,GAAAN,EAAAuO,YAAgB,KAAAjO,EAAAkG,IAAAjG,EAAAyhB,iBAAA,EAAA1hB,EAAAkG,IAAAjG,EAAAmhB,aAAA,EAAA6M,EAAAvuB,GAAAO,EAAAyhB,iBAAA,EAAA1hB,EAAAmM,MAAAlM,EAAAmhB,aAAA,EAAA8M,EAAAluB,GAA6I,QAAAiuB,GAAAvuB,EAAAO,GAA8B,GAAAD,GAAAN,EAAAuO,QAAAjQ,EAAA0B,EAAAkY,KAAAzX,EAAAT,EAAAkuB,OAAApvB,EAAAkB,EAAAmuB,SAAA/uB,EAAAY,EAAAouB,UAAgE,QAAA7vB,KAAA+B,GAAAiM,WAAA,CAA2B,GAAA5M,GAAAb,EAAAP,OAAW,KAAAoB,IAAArB,EAAA4I,KAAA3I,GAAAoB,EAAArB,EAAAsC,OAAA,EAAA9B,EAAAP,GAAAoB,GAAAY,EAAA+d,YAAA3e,EAA6D,IAAAa,GAAAF,EAAAiM,WAAAhO,GAAA6B,QAAAI,EAAiC,YAAAJ,GAAA,YAAAA,GAAA,WAAAA,IAAAI,EAAAiV,KAAAC,UAAAlV,GAAiE,IAAAiB,GAAArB,EAAA,IAAAI,EAAAa,EAAAjC,EAAAqC,OAAqB,KAAAJ,IAAAZ,EAAAyG,KAAA1G,GAAAa,EAAAZ,EAAAG,OAAA,EAAAxB,EAAAqC,GAAAJ,GAAAd,EAAA+d,YAAAjd,IAA8D,QAAAotB,GAAAzuB,EAAAO,GAAsB,OAAAA,GAAA,MAAAP,GAAmB,QAAA0uB,GAAA1uB,GAAmB,MAAAA,IAAA,EAAAA,GAAA,GAAkB,QAAAwuB,GAAAxuB,EAAAO,GAA4B,OAAAD,GAAAN,EAAAmN,eAAA7O,EAAA0B,EAAAyM,KAAAhM,EAAA,EAAA3B,EAAA,EAAAM,EAAAkB,EAAAM,OAAArC,EAAA,EAA2DA,EAAAa,EAAIb,IAAA,CAAK,GAAAoB,GAAAW,EAAA/B,GAAAiC,EAAA,CAAe,KAAAlC,IAAAkC,EAAAb,EAAAiB,QAAAL,EAAA+d,YAAAmQ,EAAA,EAAAjuB,GAAgD,QAAAJ,GAAA,EAAYA,EAAAT,EAAAiB,OAAWR,IAAA,CAAK,IAAAA,GAAA,IAAA9B,GAAAiC,EAAA+d,YAAAmQ,EAAA,EAAA9uB,EAAAiB,OAAA,GAAmD,IAAAa,GAAA9B,EAAAS,GAAAwB,EAAAnB,EAAAY,EAAA1B,EAAAS,GAAAoB,EAAA1C,CAA0ByB,GAAA+d,YAAAoQ,EAAAjtB,IAAAlB,EAAA+d,YAAAoQ,EAAArtB,IAAAZ,GAAAgB,EAAA3C,GAAAuC,IAA8D,QAAAitB,GAAAtuB,EAAAO,GAAyB,GAAAD,SAAAN,EAAe,YAAAM,EAAAC,EAAA2hB,iBAAA,EAAAliB,GAAA,YAAAM,EAAAC,EAAA8hB,kBAAA,EAAAriB,GAAA,WAAAM,IAAAN,EAAA,KAAAO,EAAA6hB,iBAAA,EAAApiB,KAAA,EAAAO,EAAA0hB,kBAAA,EAAAjiB,GAAAO,EAAAyhB,iBAAA,EAAAhiB,IAAgL,GAAAud,GAAAzc,EAAA,OAAAktB,EAAAltB,EAAA,wBAAuEzC,GAAAD,QAAAyvB,EAAAxvB,EAAAD,QAAAyvB,mBAAAxvB,EAAAD,QAAA2vB,gBAAA1vB,EAAAD,QAAA4vB,mBACz5DW,wBAAA,GAAAC,IAAA,KAAoCC,IAAA,SAAA/tB,EAAAzC,EAAAD,GACvC,YAAa,SAAA4vB,GAAAhuB,GAA2BH,KAAAuS,SAAApS,EAAAH,KAAAe,OAAAZ,EAAAY,OAAqC,QAAAkuB,GAAA9uB,GAA2BH,KAAA2G,GAAA,gBAAAxG,GAAAwG,GAAAxG,EAAAwG,OAAA,GAAA3G,KAAA4M,KAAAzM,EAAAyM,KAAA5M,KAAAkvB,YAAA,IAAA/uB,EAAAyM,MAAAzM,EAAA0N,UAAA1N,EAAA0N,SAAA7N,KAAA0M,WAAAvM,EAAAmT,KAAAtT,KAAA2M,OAAA,KAAuJ,GAAA/I,GAAA3C,EAAA,0BAAA4K,EAAA5K,EAAA,uBAAA4K,iBAA+GrN,GAAAD,QAAA4vB,IAAAxuB,UAAA+O,QAAA,SAAAvO,GAA2E,UAAA8uB,GAAAjvB,KAAAuS,SAAApS,KAA4C8uB,EAAAtvB,UAAA2N,aAAA,WAAkD,GAAAnN,GAAAH,KAAAkvB,WAAuBlvB,MAAA6N,WAAiB,QAAApN,GAAA,EAAYA,EAAAN,EAAAY,OAAWN,IAAA,CAAK,OAAAC,GAAAP,EAAAM,GAAAxB,KAAA2B,EAAA,EAAwBA,EAAAF,EAAAK,OAAWH,IAAA3B,EAAAoI,KAAA,GAAAzD,GAAAlD,EAAAE,GAAA,GAAAF,EAAAE,GAAA,IAAuCZ,MAAA6N,SAAAxG,KAAApI,GAAsB,MAAAe,MAAA6N,UAAqBohB,EAAAtvB,UAAA6N,KAAA,WAA0CxN,KAAA6N,UAAA7N,KAAAsN,cAAmC,QAAAnN,GAAAH,KAAA6N,SAAApN,EAAA,IAAAC,GAAA,IAAAzB,EAAA,IAAA2B,GAAA,IAAAf,EAAA,EAAsDA,EAAAM,EAAAY,OAAWlB,IAAA,OAAApB,GAAA0B,EAAAN,GAAAN,EAAA,EAAuBA,EAAAd,EAAAsC,OAAWxB,IAAA,CAAK,GAAAmC,GAAAjD,EAAAc,EAAWkB,GAAAY,KAAAmJ,IAAA/J,EAAAiB,EAAAK,GAAArB,EAAAW,KAAAuG,IAAAlH,EAAAgB,EAAAK,GAAA9C,EAAAoC,KAAAmJ,IAAAvL,EAAAyC,EAAAC,GAAAf,EAAAS,KAAAuG,IAAAhH,EAAAc,EAAAC,GAAwE,OAAAlB,EAAAxB,EAAAyB,EAAAE,IAAgBquB,EAAAtvB,UAAA8N,UAAA5B,EAAAlM,UAAA8N,YACr+BM,yBAAA,EAAAohB,sBAAA,IAAmDC,IAAA,SAAAnuB,EAAAzC,EAAAD,GACtD,GAAA8wB,GAAAtL,UAAA,GAAAuL,EAAAvL,UAAA,GAAAwL,EAAAxL,UAAA,GAAAlO,EAAAD,KAAAC,SAA2FrX,GAAAD,QAAA,SAAAmC,EAAAP,GAA6B,QAAAM,GAAAC,GAAc5B,EAAA4B,IAAA,CAAQ,QAAAP,KAAAmvB,GAAA5uB,GAAA,IAA4B,GAAAnB,GAAA+vB,EAAA5uB,GAAA,GAAAP,EAAuBrB,GAAAS,IAAAkB,EAAAlB,IAAY,OAAAA,GAAAN,EAAAC,OAAAmZ,KAAAkX,GAAA3uB,EAAA,EAAAnC,EAAAQ,EAAA8B,OAA8CH,EAAAnC,EAAImC,IAAA,CAAK,GAAAd,GAAAb,EAAA2B,GAAAD,EAAA4uB,EAAAzvB,GAAAvB,OAA8B,IAAAoC,IAAAD,GAAAC,KAAA6uB,UAAA9uB,EAAA,CAA4BnB,EAAAO,CAAI,QAAO,IAAAP,EAAA,CAAOA,EAAA8B,KAAAoV,MAAApV,KAAAkJ,IAAA,MAAAlJ,KAAAouB,UAAA5F,SAAA,GAAwD,QAAAtpB,MAAYK,EAAA,EAAAnC,EAAAQ,EAAA8B,OAAgBH,EAAAnC,EAAImC,IAAA,CAAK,GAAAd,GAAAb,EAAA2B,EAAWL,GAAAT,KAAOwvB,EAAA/vB,IAAAU,UAAA,kCAAAS,EAAA,WAAAH,GAAwE,GAAA1B,GAAAwC,KAAAoV,MAAApV,KAAAkJ,IAAA,MAAAlJ,KAAAouB,UAAA5F,SAAA,IAAAnrB,IAAiEA,GAAAa,KAAA+vB,EAAAzwB,IAAAoB,UAAA,8BAAA4V,EAAAtW,GAAA,wCAA6Gb,EAAM,IAAAI,KAAS2B,GAAA5B,EAAK,IAAAkB,GAAA,IAAAsvB,EAAA,MAAuBnwB,OAAAmZ,KAAAvZ,GAAA0T,IAAA,SAAA9R,GAAiC,MAAAmV,GAAAnV,GAAA,KAAA4uB,EAAA5uB,GAAA,OAAAmV,EAAAyZ,EAAA5uB,GAAA,UAAwEwO,KAAA,cAAiB2G,EAAAhX,GAAA,KAAA2C,EAAApB,OAAAsvB,KAAAtvB,OAAAuvB,WAAAvvB,OAAAwvB,QAAAxvB,OAAAyvB,MAAAjuB,EAAA,GAAAkuB,OAAA/vB,IAAkG6M,KAAA,mBAAyB,IAAAzM,KAAA4vB,KAAA,MAAAnuB,EAAsB,IAAAF,GAAAF,EAAAwuB,gBAAApuB,GAAAI,EAAA,GAAAiuB,QAAAvuB,EAA2C,OAAAM,GAAAkuB,UAAAxuB,EAAAM,QAClhCmuB,IAAA,SAAAlvB,EAAAzC,EAAAD,GACJC,EAAAD,QAAA4T,OAAA,QAAA3T,EAAAD,QAAA6xB,WAAA,gBAAA5xB,EAAAD,QAAA8xB,aAAA,kBACIC,IAAA,SAAArvB,EAAAzC,EAAAD,GACJC,EAAAD,SAAgB0P,QAAA,eACZsiB,IAAA,SAAAtvB,EAAAzC,EAAAD,GACJ,YAAa,IAAAiyB,GAAAvvB,EAAA,eAAiCzC,GAAAD,SAAgBkyB,YAAA,SAAAtwB,EAAAO,GAA0B,GAAAD,KAAS,KAAAC,EAAA,MAAAD,EAAe,QAAAhC,GAAA,EAAAmC,EAAAT,EAAgB1B,EAAAmC,EAAAG,OAAWtC,GAAA,GAAM,GAAAC,GAAAkC,EAAAnC,GAAAkC,EAAAjC,EAAAgyB,SAAAle,IAAA,SAAArS,GAAwC,MAAAO,GAAAiwB,SAAAxwB,KAAqB0b,OAAAgF,QAAkB,QAAAlgB,EAAAI,OAAA,OAAAxB,GAAAoB,EAAA,GAAAiwB,aAAAJ,EAAA7b,QAAyDxI,OAAAxL,GAASjC,IAAAO,EAAA,EAAAsB,EAAAI,EAAa1B,EAAAsB,EAAAQ,OAAW9B,GAAA,GAAM,GAAAa,GAAAS,EAAAtB,EAAWwB,GAAAX,EAAA6G,IAAApH,GAAW,MAAAkB,OACnVowB,eAAA,MAAmBC,IAAA,SAAA7vB,EAAAzC,EAAAD,GACtB,YAAa,SAAAwyB,GAAA5wB,EAAAO,EAAAD,EAAAhC,EAAAmC,GAAoCT,EAAA6wB,YAAA,EAAAtwB,GAAAjC,EAAA,OAAAgC,GAAAG,EAAA,MAAuC,GAAA+G,GAAA1G,EAAA,cAAAgwB,EAAAtpB,EAAAspB,cAAAC,EAAAjwB,EAAA,0BAAAkwB,EAAAlwB,EAAA,yBAAAmwB,EAAAnwB,EAAA,4BAAAowB,EAAAD,EAAAC,wBAAAC,EAAArwB,EAAA,wBAAAswB,EAAAtwB,EAAA,uBAAAuwB,EAAAD,EAAAC,mBAAAlkB,EAAArM,EAAA,oBAAAwwB,EAAAxwB,EAAA,aAAAywB,GAAudC,mBAAmB5yB,KAAA,QAAA6yB,WAAA,EAAAhlB,KAAA,UAAuCilB,eAAAL,EAAAM,kBAAsDpyB,SAAA,iBAA0BA,SAAA,kBAA2BA,SAAA,gBAAyBA,SAAA,mBAA4BA,SAAA,wBAAiCA,SAAA,wBAAiCA,SAAA,2BAAmCqyB,EAAAT,EAAAI,EAAAC,kBAAAK,EAAA,SAAA7xB,GAAwGH,KAAA4lB,KAAAzlB,EAAAylB,KAAA5lB,KAAAiyB,YAAA9xB,EAAA8xB,YAAAjyB,KAAAmM,OAAAhM,EAAAgM,OAAAnM,KAAAkyB,MAAA/xB,EAAA+xB,MAAAlyB,KAAAmyB,kBAAA,GAAAJ,GAAA5xB,EAAAgyB,mBAAAnyB,KAAAoyB,WAAA,GAAAZ,GAAArxB,EAAAiyB,YAAApyB,KAAAqyB,sBAAA,GAAAhB,GAAAK,EAAAvxB,EAAAgM,OAAAhM,EAAAylB,KAAAzlB,EAAAkyB,uBAAAryB,KAAAsyB,SAAA,GAAArB,GAAA9wB,EAAAmyB,UAAgXN,GAAAryB,UAAA4yB,SAAA,SAAApyB,EAAAO,GAA8C,OAAAD,GAAAT,KAAAvB,EAAA,EAAAmC,EAAAT,EAAuB1B,EAAAmC,EAAAG,OAAWtC,GAAA,GAAM,GAAAQ,GAAA2B,EAAAnC,GAAAc,EAAAN,EAAAyP,QAAA/M,EAAA1C,EAAAizB,MAAAvxB,EAAA1B,EAAAuzB,gBAAsD,IAAA/xB,EAAA0L,OAAA,GAAA0P,OAAAtc,GAAA,CAA0B,GAAAO,GAAAwN,EAAA/N,EAAsBkB,GAAA6W,WAAA/X,EAAAO,GAAAY,EAAA+xB,aAAAla,OAAAhZ,EAAAO,EAAA6B,EAAAhB,EAAAF,EAAAyxB,UAA2DF,EAAAryB,UAAA+yB,QAAA,WAA2C,WAAA1yB,KAAAmyB,kBAAApxB,QAAyCixB,EAAAryB,UAAAgzB,UAAA,SAAAxyB,GAA8C,OAAOylB,KAAA5lB,KAAA4lB,KAAA8K,SAAA1wB,KAAAmM,OAAAqG,IAAA,SAAArS,GAAoD,MAAAA,GAAAwG,KAAYwrB,kBAAAnyB,KAAAmyB,kBAAAQ,UAAAxyB,GAAAiyB,WAAApyB,KAAAoyB,WAAAO,UAAAxyB,GAAAkyB,sBAAAryB,KAAAqyB,sBAAAM,UAAAxyB,GAAAmyB,SAAAtyB,KAAAsyB,SAAAhzB,QAA4L0yB,EAAAryB,UAAAizB,OAAA,SAAAzyB,GAA2CH,KAAA6yB,mBAAA,GAAA3B,GAAA/wB,EAAAH,KAAAmyB,mBAAAnyB,KAAA8yB,YAAA,GAAA3B,GAAAhxB,EAAAH,KAAAoyB,YAAApyB,KAAAqyB,sBAAAO,OAAAzyB,IAA4J6xB,EAAAryB,UAAA2gB,QAAA,WAA2CtgB,KAAA6yB,qBAAA7yB,KAAA6yB,mBAAAvS,UAAAtgB,KAAA8yB,YAAAxS,UAAAtgB,KAAAqyB,sBAAA/R,UAAAtgB,KAAAsyB,SAAAhS,YAAqJ0R,EAAAryB,UAAA2X,WAAA,SAAAnX,EAAAO,GAAiD,OAAAD,GAAAT,KAAAvB,EAAA,EAAAmC,EAAAF,EAAuBjC,EAAAmC,EAAAG,OAAWtC,GAAA,SAAAQ,GAAA2B,EAAAnC,GAAAc,EAAA,EAAAoC,EAAA1C,EAA4BM,EAAAoC,EAAAZ,OAAWxB,GAAA,GAAM,GAAAoB,GAAAgB,EAAApC,GAAAO,EAAAa,EAAAoB,EAAAlD,EAAA8B,EAAAgB,CAAuB,MAAA7B,EAAA,GAAAA,GAAA2xB,GAAA5yB,EAAA,GAAAA,GAAA4yB,GAAA,CAAsC,GAAA/yB,GAAA+B,EAAA6xB,SAAAS,eAAA,EAAAtyB,EAAA0xB,kBAAA1xB,EAAA2xB,YAAAvyB,EAAAnB,EAAAs0B,YAAqFjC,GAAAtwB,EAAA0xB,kBAAAryB,EAAAjB,GAAA,MAAAkyB,EAAAtwB,EAAA0xB,kBAAAryB,EAAAjB,EAAA,MAAAkyB,EAAAtwB,EAAA0xB,kBAAAryB,EAAAjB,EAAA,KAAAkyB,EAAAtwB,EAAA0xB,kBAAAryB,EAAAjB,GAAA,KAAA4B,EAAA2xB,WAAApB,YAAAnxB,IAAA,EAAAA,EAAA,GAAAY,EAAA2xB,WAAApB,YAAAnxB,IAAA,EAAAA,EAAA,GAAAnB,EAAAs0B,cAAA,EAAAt0B,EAAAu0B,iBAAA,GAAwSjzB,KAAAqyB,sBAAAa,oBAAAlzB,KAAAmyB,kBAAApxB,OAAAZ,EAAAuM,aAA2FslB,EAAAmB,iBAAAzB,EAAAlzB,EAAAD,QAAAyzB,IAC39FoB,wBAAA,GAAAC,yBAAA,GAAAC,YAAA,GAAAC,sBAAA,GAAAC,mBAAA,GAAAC,2BAAA,GAAAC,aAAA,GAAAC,uBAAA,KAA6LC,IAAA,SAAA3yB,EAAAzC,EAAAD,GAChM,YAAa,IAAAoJ,GAAA1G,EAAA,cAAAgwB,EAAAtpB,EAAAspB,cAAAC,EAAAjwB,EAAA,0BAAAkwB,EAAAlwB,EAAA,yBAAAmwB,EAAAnwB,EAAA,4BAAAowB,EAAAD,EAAAC,wBAAAC,EAAArwB,EAAA,wBAAAswB,EAAAtwB,EAAA,uBAAA4yB,EAAAtC,EAAAsC,eAAArC,EAAAD,EAAAC,mBAAAlkB,EAAArM,EAAA,oBAAAuO,EAAAvO,EAAA,UAAAkM,EAAAlM,EAAA,6BAAA6yB,GAA8jBnC,mBAAmB5yB,KAAA,QAAA6yB,WAAA,EAAAhlB,KAAA,UAAuCilB,eAAAL,EAAAuC,gBAAAF,EAAA/B,kBAAqFpyB,SAAA,eAAwBA,SAAA,uBAAgCA,SAAA,kBAA0BqyB,EAAAT,EAAAwC,EAAAnC,kBAAAqC,EAAA,SAAA7zB,GAAoGH,KAAA4lB,KAAAzlB,EAAAylB,KAAA5lB,KAAAiyB,YAAA9xB,EAAA8xB,YAAAjyB,KAAAmM,OAAAhM,EAAAgM,OAAAnM,KAAAkyB,MAAA/xB,EAAA+xB,MAAAlyB,KAAAmyB,kBAAA,GAAAJ,GAAA5xB,EAAAgyB,mBAAAnyB,KAAAoyB,WAAA,GAAAZ,GAAArxB,EAAAiyB,YAAApyB,KAAAi0B,YAAA,GAAAJ,GAAA1zB,EAAA8zB,aAAAj0B,KAAAqyB,sBAAA,GAAAhB,GAAAyC,EAAA3zB,EAAAgM,OAAAhM,EAAAylB,KAAAzlB,EAAAkyB,uBAAAryB,KAAAsyB,SAAA,GAAArB,GAAA9wB,EAAAmyB,UAAAtyB,KAAAk0B,UAAA,GAAAjD,GAAA9wB,EAAA+zB,WAA+cF,GAAAr0B,UAAA4yB,SAAA,SAAApyB,EAAAO,GAA4C,OAAAD,GAAAT,KAAAvB,EAAA,EAAAmC,EAAAT,EAAuB1B,EAAAmC,EAAAG,OAAWtC,GAAA,GAAM,GAAAc,GAAAqB,EAAAnC,GAAAQ,EAAAM,EAAAmP,QAAA5O,EAAAP,EAAA2yB,MAAAvwB,EAAApC,EAAAizB,gBAAsD,IAAA/xB,EAAA0L,OAAA,GAAA0P,OAAA5c,GAAA,CAA0B,GAAAP,GAAA4O,EAAArO,EAAsBwB,GAAA6W,WAAArY,EAAAP,GAAAgC,EAAA+xB,aAAAla,OAAAtZ,EAAAP,EAAAoB,EAAA6B,EAAAlB,EAAAyxB,UAA2D8B,EAAAr0B,UAAA+yB,QAAA,WAAyC,WAAA1yB,KAAAmyB,kBAAApxB,QAAyCizB,EAAAr0B,UAAAgzB,UAAA,SAAAxyB,GAA4C,OAAOylB,KAAA5lB,KAAA4lB,KAAA8K,SAAA1wB,KAAAmM,OAAAqG,IAAA,SAAArS,GAAoD,MAAAA,GAAAwG,KAAYwrB,kBAAAnyB,KAAAmyB,kBAAAQ,UAAAxyB,GAAAiyB,WAAApyB,KAAAoyB,WAAAO,UAAAxyB,GAAA8zB,YAAAj0B,KAAAi0B,YAAAtB,UAAAxyB,GAAAkyB,sBAAAryB,KAAAqyB,sBAAAM,UAAAxyB,GAAAmyB,SAAAtyB,KAAAsyB,SAAAhzB,MAAA40B,UAAAl0B,KAAAk0B,UAAA50B,QAAqQ00B,EAAAr0B,UAAAizB,OAAA,SAAAzyB,GAAyCH,KAAA6yB,mBAAA,GAAA3B,GAAA/wB,EAAAH,KAAAmyB,mBAAAnyB,KAAA8yB,YAAA,GAAA3B,GAAAhxB,EAAAH,KAAAoyB,YAAApyB,KAAAm0B,aAAA,GAAAhD,GAAAhxB,EAAAH,KAAAi0B,aAAAj0B,KAAAqyB,sBAAAO,OAAAzyB,IAAkN6zB,EAAAr0B,UAAA2gB,QAAA,WAAyCtgB,KAAA6yB,qBAAA7yB,KAAA6yB,mBAAAvS,UAAAtgB,KAAA8yB,YAAAxS,UAAAtgB,KAAAm0B,aAAA7T,UAAAtgB,KAAAqyB,sBAAA/R,UAAAtgB,KAAAsyB,SAAAhS,UAAAtgB,KAAAk0B,UAAA5T,YAA0M0T,EAAAr0B,UAAA2X,WAAA,SAAAnX,EAAAO,GAA+C,OAAAD,GAAAT,KAAAvB,EAAA,EAAAmC,EAAAuM,EAAAzM,EAA9iF,KAAqmFjC,EAAAmC,EAAAG,OAAWtC,GAAA,GAAM,OAAAc,GAAAqB,EAAAnC,GAAAQ,EAAA,EAAAa,EAAA,EAAA6B,EAAApC,EAA2BO,EAAA6B,EAAAZ,OAAWjB,GAAA,EAAMb,GAAA0C,EAAA7B,GAAAiB,MAAe,QAAArC,GAAA+B,EAAA6xB,SAAAS,eAAA9zB,EAAAwB,EAAA0xB,kBAAA1xB,EAAA2xB,YAAAzxB,EAAAjC,EAAAs0B,aAAAzyB,KAAAR,KAAAgC,EAAA,EAAAlC,EAAAN,EAA2GwC,EAAAlC,EAAAkB,OAAWgB,GAAA,GAAM,GAAAL,GAAA7B,EAAAkC,EAAW,QAAAL,EAAAX,OAAA,CAAiBW,IAAAnC,EAAA,IAAAQ,EAAAsH,KAAA9G,EAAAQ,OAAA,EAA6B,IAAAjC,GAAA2B,EAAAyzB,UAAAnB,eAAArxB,EAAAX,OAAAN,EAAA0xB,kBAAA1xB,EAAAwzB,aAAAp1B,EAAAC,EAAAk0B,YAA8FvyB,GAAA0xB,kBAAAnB,YAAAtvB,EAAA,GAAAK,EAAAL,EAAA,GAAAC,GAAAlB,EAAAwzB,YAAAjD,YAAAnyB,EAAA6C,EAAAX,OAAA,EAAAlC,GAAA0B,EAAA8G,KAAA3F,EAAA,GAAAK,GAAAxB,EAAA8G,KAAA3F,EAAA,GAAAC,EAAuH,QAAA/C,GAAA,EAAYA,EAAA8C,EAAAX,OAAWnC,IAAA6B,EAAA0xB,kBAAAnB,YAAAtvB,EAAA9C,GAAAmD,EAAAL,EAAA9C,GAAA+C,GAAAlB,EAAAwzB,YAAAjD,YAAAnyB,EAAAD,EAAA,EAAAC,EAAAD,GAAA2B,EAAA8G,KAAA3F,EAAA9C,GAAAmD,GAAAxB,EAAA8G,KAAA3F,EAAA9C,GAAA+C,EAAsH7C,GAAAk0B,cAAAtxB,EAAAX,OAAAjC,EAAAm0B,iBAAAvxB,EAAAX,QAAsD,OAAAc,GAAA2N,EAAAjP,EAAAR,GAAAq0B,EAAA,EAA0BA,EAAAvyB,EAAAd,OAAWqzB,GAAA,EAAA3zB,EAAA2xB,WAAApB,YAAArwB,EAAAkB,EAAAuyB,GAAAzzB,EAAAkB,EAAAuyB,EAAA,GAAAzzB,EAAAkB,EAAAuyB,EAAA,GAAwD11B,GAAAs0B,cAAA/zB,EAAAP,EAAAu0B,iBAAApxB,EAAAd,OAAA,EAAgDf,KAAAqyB,sBAAAa,oBAAAlzB,KAAAmyB,kBAAApxB,OAAAZ,EAAAuM,aAA2FsnB,EAAAb,iBAAAW,EAAAt1B,EAAAD,QAAAy1B,IACh/GZ,wBAAA,GAAAC,yBAAA,GAAAgB,4BAAA,IAAAd,sBAAA,GAAAC,mBAAA,GAAAC,2BAAA,GAAAC,aAAA,GAAAC,uBAAA,GAAAnkB,OAAA,KAA0N8kB,IAAA,SAAArzB,EAAAzC,EAAAD,GAC7N,YAAa,SAAAg2B,GAAAp0B,EAAAO,EAAAD,EAAAG,EAAAnC,EAAAc,EAAAN,EAAAa,GAAoCK,EAAA6wB,YAAAtwB,EAAAD,EAAA,EAAAY,KAAAoV,MAAA7V,EAAA4zB,GAAAv1B,EAAAR,EAAA+1B,EAAA,EAAAj1B,EAAAi1B,EAAA,EAAAnzB,KAAA8D,MAAArF,IAAgF,QAAA20B,GAAAt0B,EAAAO,GAA6B,MAAAP,GAAA4B,IAAArB,EAAAqB,IAAA5B,EAAA4B,EAAA,GAAA5B,EAAA4B,EAAA0vB,IAAAtxB,EAAAwB,IAAAjB,EAAAiB,IAAAxB,EAAAwB,EAAA,GAAAxB,EAAAwB,EAAA8vB,GAAsE,GAAA9pB,GAAA1G,EAAA,cAAAgwB,EAAAtpB,EAAAspB,cAAAyD,EAAA/sB,EAAA+sB,wBAAAxD,EAAAjwB,EAAA,0BAAAkwB,EAAAlwB,EAAA,yBAAAmwB,EAAAnwB,EAAA,4BAAAowB,EAAAD,EAAAC,wBAAAC,EAAArwB,EAAA,wBAAAswB,EAAAtwB,EAAA,uBAAAuwB,EAAAD,EAAAC,mBAAAlkB,EAAArM,EAAA,oBAAAwwB,EAAAxwB,EAAA,aAAAuO,EAAAvO,EAAA,UAAAkM,EAAAlM,EAAA,6BAAA0zB,GAAmnBhD,mBAAmB5yB,KAAA,QAAA6yB,WAAA,EAAAhlB,KAAA,UAAyC7N,KAAA,WAAA6yB,WAAA,EAAAhlB,KAAA,UAA4C7N,KAAA,iBAAA6yB,WAAA,EAAAhlB,KAAA,UAAgDilB,eAAAL,EAAAM,kBAAsDpyB,SAAA,wBAAiCA,SAAA,0BAAmCA,SAAA,0BAAkC80B,EAAAnzB,KAAAkJ,IAAA,MAAAwnB,EAAAT,EAAAqD,EAAAhD,kBAAAiD,EAAA,SAAAz0B,GAA4IH,KAAA4lB,KAAAzlB,EAAAylB,KAAA5lB,KAAAiyB,YAAA9xB,EAAA8xB,YAAAjyB,KAAAmM,OAAAhM,EAAAgM,OAAAnM,KAAAkyB,MAAA/xB,EAAA+xB,MAAAlyB,KAAAmyB,kBAAA,GAAAJ,GAAA5xB,EAAAgyB,mBAAAnyB,KAAAoyB,WAAA,GAAAZ,GAAArxB,EAAAiyB,YAAApyB,KAAAqyB,sBAAA,GAAAhB,GAAAsD,EAAAx0B,EAAAgM,OAAAhM,EAAAylB,KAAAzlB,EAAAkyB,uBAAAryB,KAAAsyB,SAAA,GAAArB,GAAA9wB,EAAAmyB,UAAuXsC,GAAAj1B,UAAA4yB,SAAA,SAAApyB,EAAAO,GAAqD,OAAAD,GAAAT,KAAAY,EAAA,EAAAnC,EAAA0B,EAAuBS,EAAAnC,EAAAsC,OAAWH,GAAA,GAAM,GAAArB,GAAAd,EAAAmC,GAAA3B,EAAAM,EAAAmP,QAAA5O,EAAAP,EAAA2yB,MAAAvxB,EAAApB,EAAAizB,gBAAsD,IAAA/xB,EAAA0L,OAAA,GAAA0P,OAAA5c,GAAA,CAA0B,GAAA0C,GAAA2L,EAAArO,EAAsBwB,GAAA6W,WAAArY,EAAA0C,GAAAjB,EAAA+xB,aAAAla,OAAAtZ,EAAA0C,EAAA7B,EAAAa,EAAAF,EAAAyxB,UAA2D0C,EAAAj1B,UAAA+yB,QAAA,WAAkD,WAAA1yB,KAAAmyB,kBAAApxB,QAAyC6zB,EAAAj1B,UAAAgzB,UAAA,SAAAxyB,GAAqD,OAAOylB,KAAA5lB,KAAA4lB,KAAA8K,SAAA1wB,KAAAmM,OAAAqG,IAAA,SAAArS,GAAoD,MAAAA,GAAAwG,KAAYwrB,kBAAAnyB,KAAAmyB,kBAAAQ,UAAAxyB,GAAAiyB,WAAApyB,KAAAoyB,WAAAO,UAAAxyB,GAAAkyB,sBAAAryB,KAAAqyB,sBAAAM,UAAAxyB,GAAAmyB,SAAAtyB,KAAAsyB,SAAAhzB,QAA4Ls1B,EAAAj1B,UAAAizB,OAAA,SAAAzyB,GAAkDH,KAAA6yB,mBAAA,GAAA3B,GAAA/wB,EAAAH,KAAAmyB,mBAAAnyB,KAAA8yB,YAAA,GAAA3B,GAAAhxB,EAAAH,KAAAoyB,YAAApyB,KAAAqyB,sBAAAO,OAAAzyB,IAA4Jy0B,EAAAj1B,UAAA2gB,QAAA,WAAkDtgB,KAAA6yB,qBAAA7yB,KAAA6yB,mBAAAvS,UAAAtgB,KAAA8yB,YAAAxS,UAAAtgB,KAAAqyB,sBAAA/R,UAAAtgB,KAAAsyB,SAAAhS,YAAqJsU,EAAAj1B,UAAA2X,WAAA,SAAAnX,EAAAO,GAAwD,OAAAD,GAAAT,KAAAY,EAAA,EAAAnC,EAAA0O,EAAAzM,EAAxgF,KAA+jFE,EAAAnC,EAAAsC,OAAWH,GAAA,GAAM,OAAArB,GAAAd,EAAAmC,GAAA3B,EAAA,EAAAa,EAAA,EAAAa,EAAApB,EAA2BO,EAAAa,EAAAI,OAAWjB,GAAA,EAAMb,GAAA0B,EAAAb,GAAAiB,MAAe,QAAAY,GAAAlB,EAAA6xB,SAAAS,eAAA,EAAAtyB,EAAA0xB,kBAAA1xB,EAAA2xB,YAAA1zB,EAAA,EAAAqD,EAAAxC,EAAgFb,EAAAqD,EAAAhB,OAAWrC,GAAA,GAAM,GAAA6B,GAAAwB,EAAArD,EAAW,QAAA6B,EAAAQ,OAAA,OAAAhB,GAAA,EAAAF,EAAA,EAAgCA,EAAAU,EAAAQ,OAAWlB,IAAA,CAAK,GAAAf,GAAAyB,EAAAV,EAAW,IAAAA,GAAA,GAAS,GAAA6B,GAAAnB,EAAAV,EAAA,EAAa,KAAA40B,EAAA31B,EAAA4C,GAAA,CAAyBC,EAAAqxB,aAAA,EAAA0B,IAAA/yB,EAAAlB,EAAA6xB,SAAAS,eAAA,EAAAtyB,EAAA0xB,kBAAA1xB,EAAA2xB,YAA4G,IAAAvwB,GAAA/C,EAAAkF,IAAAtC,GAAAwD,QAAAF,OAA+BuvB,GAAA9zB,EAAA0xB,kBAAArzB,EAAAiD,EAAAjD,EAAA6C,EAAAE,EAAAE,EAAAF,EAAAF,EAAA,IAAA5B,GAAAw0B,EAAA9zB,EAAA0xB,kBAAArzB,EAAAiD,EAAAjD,EAAA6C,EAAAE,EAAAE,EAAAF,EAAAF,EAAA,IAAA5B,MAAA2B,EAAA8D,KAAA1G,GAAAy1B,EAAA9zB,EAAA0xB,kBAAAzwB,EAAAK,EAAAL,EAAAC,EAAAE,EAAAE,EAAAF,EAAAF,EAAA,IAAA5B,GAAAw0B,EAAA9zB,EAAA0xB,kBAAAzwB,EAAAK,EAAAL,EAAAC,EAAAE,EAAAE,EAAAF,EAAAF,EAAA,IAAA5B,EAAiO,IAAAlB,GAAA8C,EAAAqxB,YAAqBvyB,GAAA2xB,WAAApB,YAAAnyB,IAAA,EAAAA,EAAA,GAAA4B,EAAA2xB,WAAApB,YAAAnyB,EAAA,EAAAA,EAAA,EAAAA,EAAA,GAAA8C,EAAAqxB,cAAA,EAAArxB,EAAAsxB,iBAAA,KAAoHtxB,EAAAqxB,aAAA/zB,EAAAy1B,IAAA/yB,EAAAlB,EAAA6xB,SAAAS,eAAA9zB,EAAAwB,EAAA0xB,kBAAA1xB,EAAA2xB,YAA4G,QAAAxzB,MAAAi2B,KAAAC,EAAAnzB,EAAAqxB,aAAAxxB,EAAA,EAAAuzB,EAAAx1B,EAA2CiC,EAAAuzB,EAAAh0B,OAAWS,GAAA,GAAM,GAAAkV,GAAAqe,EAAAvzB,EAAW,QAAAkV,EAAA3V,OAAA,CAAiB2V,IAAAnX,EAAA,IAAAs1B,EAAAxtB,KAAAzI,EAAAmC,OAAA,EAA6B,QAAAqzB,GAAA,EAAYA,EAAA1d,EAAA3V,OAAWqzB,IAAA,CAAK,GAAAlyB,GAAAwU,EAAA0d,EAAWG,GAAA9zB,EAAA0xB,kBAAAjwB,EAAAH,EAAAG,EAAAP,EAAA,WAAA/C,EAAAyI,KAAAnF,EAAAH,GAAAnD,EAAAyI,KAAAnF,EAAAP,KAA2E,OAAAqzB,GAAAxlB,EAAA5Q,EAAAi2B,GAAAI,EAAA,EAA0BA,EAAAD,EAAAj0B,OAAWk0B,GAAA,EAAAx0B,EAAA2xB,WAAApB,YAAA8D,EAAAE,EAAAC,GAAAH,EAAAE,EAAAC,EAAA,GAAAH,EAAAE,EAAAC,EAAA,GAAwDtzB,GAAAsxB,iBAAA+B,EAAAj0B,OAAA,EAAAY,EAAAqxB,cAAA/zB,EAAgDe,KAAAqyB,sBAAAa,oBAAAlzB,KAAAmyB,kBAAApxB,OAAAZ,EAAAuM,aAA2FkoB,EAAAzB,iBAAAwB,EAAAn2B,EAAAD,QAAAq2B,IAClnIxB,wBAAA,GAAAC,yBAAA,GAAAgB,4BAAA,IAAAf,YAAA,GAAAC,sBAAA,GAAAC,mBAAA,GAAAC,2BAAA,GAAAC,aAAA,GAAAC,uBAAA,GAAAnkB,OAAA,KAAyO0lB,IAAA,SAAAj0B,EAAAzC,EAAAD,GAC5O,YAAa,SAAA42B,GAAAh1B,EAAAM,EAAAC,EAAAjC,EAAAmC,EAAArB,EAAAO,GAAsCK,EAAA6wB,YAAAvwB,EAAAsB,EAAAtB,EAAAkB,EAAAlD,EAAA,IAAAmC,EAAA,KAAAS,KAAA8D,MAAAiwB,EAAA10B,EAAAqB,GAAA,IAAAV,KAAA8D,MAAAiwB,EAAA10B,EAAAiB,GAAA,WAAApC,EAAA,EAAAA,EAAA,SAAAO,EAAAu1B,EAAA,OAAAv1B,EAAAu1B,GAAA,GAAoL,GAAA1tB,GAAA1G,EAAA,cAAAgwB,EAAAtpB,EAAAspB,cAAAC,EAAAjwB,EAAA,0BAAAkwB,EAAAlwB,EAAA,yBAAAmwB,EAAAnwB,EAAA,4BAAAowB,EAAAD,EAAAC,wBAAAC,EAAArwB,EAAA,wBAAAswB,EAAAtwB,EAAA,uBAAAuwB,EAAAD,EAAAC,mBAAAlkB,EAAArM,EAAA,oBAAAwwB,EAAAxwB,EAAA,aAAAq0B,EAAAr0B,EAAA,uBAAA4K,kBAAAwB,MAAA+nB,EAAA,GAAAG,EAAAl0B,KAAAE,IAAAF,KAAAqM,GAAA,UAAA2nB,EAAA,GAAAG,EAAAn0B,KAAAkJ,IAAA,EAAAkrB,IAAAJ,EAAAK,GAA8vB/D,mBAAmB5yB,KAAA,eAAA6yB,WAAA,EAAAhlB,KAAA,UAAgD7N,KAAA,SAAA6yB,WAAA,EAAAhlB,KAAA,UAAwCklB,kBAAoBpyB,SAAA,eAAwBA,SAAA,cAAuBA,SAAA,iBAA0BA,SAAA,iBAAAX,KAAA,aAA4CW,SAAA,gBAAyBA,SAAA,eAAwBA,SAAA,aAAAX,KAAA,aAAA42B,gBAAA,IAA0D9D,eAAAL,GAAoCO,EAAAT,EAAAoE,EAAA/D,kBAAAiE,EAAA,SAAAz1B,GAAoGH,KAAA4lB,KAAAzlB,EAAAylB,KAAA5lB,KAAAiyB,YAAA9xB,EAAA8xB,YAAAjyB,KAAAmM,OAAAhM,EAAAgM,OAAAnM,KAAAkyB,MAAA/xB,EAAA+xB,MAAAlyB,KAAAmyB,kBAAA,GAAAJ,GAAA5xB,EAAAgyB,mBAAAnyB,KAAAoyB,WAAA,GAAAZ,GAAArxB,EAAAiyB,YAAApyB,KAAAqyB,sBAAA,GAAAhB,GAAAqE,EAAAv1B,EAAAgM,OAAAhM,EAAAylB,KAAAzlB,EAAAkyB,uBAAAryB,KAAAsyB,SAAA,GAAArB,GAAA9wB,EAAAmyB,UAA8WsD,GAAAj2B,UAAA4yB,SAAA,SAAApyB,EAAAM,GAA4C,OAAAC,GAAAV,KAAAvB,EAAA,EAAAmC,EAAAT,EAAuB1B,EAAAmC,EAAAG,OAAWtC,GAAA,GAAM,GAAAc,GAAAqB,EAAAnC,GAAAqB,EAAAP,EAAAmP,QAAAzP,EAAAM,EAAA2yB,MAAAvxB,EAAApB,EAAAizB,gBAAsD,IAAA9xB,EAAAyL,OAAA,GAAA0P,OAAA/b,GAAA,CAA0B,GAAAhB,GAAAwO,EAAAxN,EAAsBY,GAAA4W,WAAAxX,EAAAhB,GAAA2B,EAAAgyB,aAAAla,OAAAzY,EAAAhB,EAAAG,EAAA0B,EAAAD,EAAAwxB,UAA2D0D,EAAAj2B,UAAA+yB,QAAA,WAAyC,WAAA1yB,KAAAmyB,kBAAApxB,QAAyC60B,EAAAj2B,UAAAgzB,UAAA,SAAAxyB,GAA4C,OAAOylB,KAAA5lB,KAAA4lB,KAAA8K,SAAA1wB,KAAAmM,OAAAqG,IAAA,SAAArS,GAAoD,MAAAA,GAAAwG,KAAYwrB,kBAAAnyB,KAAAmyB,kBAAAQ,UAAAxyB,GAAAiyB,WAAApyB,KAAAoyB,WAAAO,UAAAxyB,GAAAkyB,sBAAAryB,KAAAqyB,sBAAAM,UAAAxyB,GAAAmyB,SAAAtyB,KAAAsyB,SAAAhzB,QAA4Ls2B,EAAAj2B,UAAAizB,OAAA,SAAAzyB,GAAyCH,KAAA6yB,mBAAA,GAAA3B,GAAA/wB,EAAAH,KAAAmyB,mBAAAnyB,KAAA8yB,YAAA,GAAA3B,GAAAhxB,EAAAH,KAAAoyB,YAAApyB,KAAAqyB,sBAAAO,OAAAzyB,IAA4Jy1B,EAAAj2B,UAAA2gB,QAAA,WAAyCtgB,KAAA6yB,qBAAA7yB,KAAA6yB,mBAAAvS,UAAAtgB,KAAA8yB,YAAAxS,UAAAtgB,KAAAqyB,sBAAA/R,UAAAtgB,KAAAsyB,SAAAhS,YAAqJsV,EAAAj2B,UAAA2X,WAAA,SAAAnX,EAAAM,GAA+C,OAAAC,GAAAV,KAAAvB,EAAAuB,KAAAmM,OAAA,GAAA0pB,OAAAj1B,EAAAZ,KAAAmM,OAAA,GAAA2pB,eAAA,aAAoFlQ,KAAA5lB,KAAA4lB,MAAezlB,EAAAuM,YAAAnN,EAAAd,EAAA,YAAAqB,EAAArB,EAAA,oBAAAQ,EAAAR,EAAA,oBAAAkC,EAAA,EAAA7B,EAAA2B,EAAuFE,EAAA7B,EAAAiC,OAAWJ,GAAA,GAAM,GAAAjC,GAAAI,EAAA6B,EAAWD,GAAAq1B,QAAAr3B,EAAAyB,EAAAS,EAAArB,EAAAO,EAAAb,KAAwB22B,EAAAj2B,UAAAo2B,QAAA,SAAA51B,EAAAM,EAAAC,EAAAjC,EAAAmC,EAAArB,GAAoD,OAAAO,GAAAE,KAAAf,EAAAwB,EAAAiM,WAAA/L,EAAA,YAAA20B,EAAA70B,EAAAmM,MAAA9N,EAAAqB,EAAAY,OAAsFjC,GAAA,GAAAqB,EAAArB,EAAA,GAAAyG,OAAApF,EAAArB,EAAA,KAA4BA,GAAK,QAAAJ,GAAA,EAAYA,EAAAI,EAAA,GAAAqB,EAAAzB,GAAA6G,OAAApF,EAAAzB,EAAA,KAA2BA,GAAK,MAAAI,GAAA6B,EAAA,OAAiB,UAAAD,IAAAE,EAAA,KAAsB,IAAAe,GAAA8vB,GAAA,IAAAzxB,KAAAiyB,aAAvmG,GAAumGvwB,EAAAvB,EAAAzB,GAAAmB,EAAAG,KAAAsyB,SAAAS,eAAA,GAAAj0B,EAAAkB,KAAAmyB,kBAAAnyB,KAAAoyB,WAA6IpyB,MAAAg2B,SAAA,CAAgB,IAAAn3B,GAAA0B,EAAAwB,EAAAnD,EAAAH,EAAAsB,EAAAY,EAAA,OAAAlC,EAAAs2B,GAAA,EAAAlzB,MAAA,GAAAL,MAAA,GAAAqzB,MAAA,GAAAI,MAAA,EAAoEj1B,MAAAi2B,GAAAj2B,KAAAk2B,GAAAl2B,KAAAm2B,IAAA,EAAAx1B,IAAA9B,EAAAsB,EAAArB,EAAA,GAAAm2B,EAAAvzB,EAAAsC,IAAAnF,GAAAmG,QAAAE,QAAoE,QAAAkxB,GAAA13B,EAAY03B,EAAAt3B,EAAIs3B,IAAA,KAAA50B,EAAAb,GAAAy1B,IAAAt3B,EAAA,EAAAqB,EAAAzB,EAAA,GAAAyB,EAAAi2B,EAAA,MAAAj2B,EAAAi2B,GAAA7wB,OAAA/D,GAAA,CAAuDyzB,IAAAJ,EAAAI,GAAAp2B,IAAAgD,EAAAhD,KAAAsB,EAAAi2B,GAAAnB,EAAAzzB,IAAAwC,IAAAnF,GAAAmG,QAAAE,QAAA2vB,OAAAI,CAA+D,IAAAH,GAAAD,EAAA/wB,IAAAmxB,EAAe,KAAAH,EAAA/yB,GAAA,IAAA+yB,EAAAnzB,GAAAmzB,EAAA9vB,OAA4B,IAAAwO,GAAAshB,EAAA/yB,EAAAkzB,EAAAlzB,EAAA+yB,EAAAnzB,EAAAszB,EAAAtzB,EAAAqzB,EAAA,IAAAxhB,EAAA,EAAAA,EAAA,IAAAkD,EAAAlD,EAAA+hB,GAAA1zB,GAAAL,CAAsE,IAAAkV,GAAA0f,EAAA13B,EAAA,CAAW,GAAA01B,GAAAv1B,EAAA2G,KAAA3D,EAAgB,IAAAuyB,EAAA,EAAAzyB,EAAA,CAAU,GAAAK,GAAAnD,EAAAmF,IAAAnF,EAAAmF,IAAAnC,GAAA0C,MAAA5C,EAAAyyB,GAAAhvB,SAA0CtF,GAAAk2B,UAAAh0B,EAAAwD,KAAA3D,GAAA/B,EAAAu2B,iBAAAr0B,EAAAlC,EAAAk2B,SAAAnB,EAAAvwB,KAAA,UAAAzE,GAAAgC,EAAAG,GAA+E,GAAAqX,GAAAxX,GAAAL,EAAAa,EAAAgX,EAAA3Y,EAAAc,EAAA5C,EAAAmB,CAAuB,IAAAsZ,GAAA,UAAAhX,IAAA2yB,EAAAz1B,EAAA8C,EAAA,QAAA2yB,GAAA,IAAA3yB,EAAA,wBAAAA,GAAA2yB,EAAAp0B,IAAAyB,EAAA,mBAAAA,IAAA2yB,EAAA,IAAA3yB,EAAA,aAAA2yB,EAAAp0B,IAAAyB,EAAA,UAAAR,IAAA/B,EAAAk2B,UAAAn3B,EAAA2G,KAAA3D,IAAA,UAAAQ,EAAAyyB,EAAAvwB,MAAAywB,GAAAl1B,EAAAu2B,iBAAAx3B,EAAAiB,EAAAk2B,SAAAlB,EAAA,OAAAj1B,OAA0O,kBAAAwC,EAAA,CAAyB,GAAA2yB,EAAA,IAAAF,EAAAG,EAAApxB,QAAAS,MAAA,OAA8B,CAAK,GAAApC,GAAA2yB,EAAA9yB,EAAAkzB,EAAAtzB,EAAAkzB,EAAAlzB,EAAAszB,EAAAlzB,EAAA,OAAAD,EAAAkzB,EAAAH,EAAA/wB,IAAAmxB,GAAA5vB,MAAAwvB,EAAA7wB,IAAAixB,GAAA5vB,KAA+DyvB,GAAA5vB,QAAAX,MAAAzC,EAAAI,GAAqBpC,EAAAu2B,iBAAAx3B,EAAAiB,EAAAk2B,SAAAlB,EAAA,OAAAj1B,GAAAC,EAAAu2B,iBAAAx3B,EAAAiB,EAAAk2B,SAAAlB,EAAAxwB,MAAA,UAAAzE,OAAiG,cAAAwC,GAAA,cAAAA,EAAA,CAAsC,GAAAC,GAAAuyB,EAAA9yB,EAAAkzB,EAAAtzB,EAAAkzB,EAAAlzB,EAAAszB,EAAAlzB,EAAA,EAAAu0B,GAAAj1B,KAAAiE,KAAA0vB,IAAA,EAA4C,IAAA1yB,GAAAP,EAAA,EAAAxB,EAAA+1B,IAAA/1B,EAAA,EAAAwB,EAAAu0B,GAAAvB,GAAAj1B,EAAAu2B,iBAAAx3B,EAAAiB,EAAAk2B,SAAAnB,EAAAt0B,EAAAwB,GAAA,EAAAlC,GAAA,cAAAwC,EAAA,CAAyF,OAAAT,GAAAP,KAAAoV,MAAA,OAAAjD,EAAA,MAAAhK,MAAA,GAAAwR,EAAA,EAAiDA,EAAApZ,EAAIoZ,IAAAxR,EAAAyrB,EAAA3wB,MAAA0W,EAAA,IAAApZ,EAAA,IAAAmC,KAAA8wB,GAAA7vB,QAAAlF,EAAAy2B,kBAAA13B,EAAAiB,EAAAk2B,SAAAxsB,EAAAlH,EAAAzC,EAAkFC,GAAAy2B,kBAAA13B,EAAAiB,EAAAk2B,SAAAlB,EAAAxyB,EAAAzC,EAAwC,QAAA4B,GAAAG,EAAA,EAAcH,GAAA,EAAKA,IAAA+H,EAAAqrB,EAAAvwB,MAAA7C,EAAA,IAAAG,EAAA,IAAAmC,KAAAkxB,GAAAjwB,QAAAlF,EAAAy2B,kBAAA13B,EAAAiB,EAAAk2B,SAAAxsB,EAAAlH,EAAAzC,GAAkF2B,GAAA1B,EAAAu2B,iBAAAx3B,EAAAiB,EAAAk2B,SAAAf,GAAA10B,GAAAwB,GAAA,EAAAlC,OAAiD,SAAAwC,GAAA0yB,GAAAj1B,EAAAu2B,iBAAAx3B,EAAAiB,EAAAk2B,SAAAnB,EAAA,OAAAh1B,GAAA2B,GAAA1B,EAAAu2B,iBAAAx3B,EAAAiB,EAAAk2B,SAAAf,EAAA,OAAAp1B,IAAA,WAAAwC,GAAA0yB,IAAAj1B,EAAAu2B,iBAAAx3B,EAAAiB,EAAAk2B,SAAAnB,EAAA,OAAAh1B,GAAAC,EAAAm2B,GAAAn2B,EAAAo2B,IAAA,GAAA10B,GAAA1B,EAAAu2B,iBAAAx3B,EAAAiB,EAAAk2B,SAAAf,GAAA,QAAAp1B,IAAA,UAAAwC,IAAA0yB,IAAAj1B,EAAAu2B,iBAAAx3B,EAAAiB,EAAAk2B,SAAAnB,EAAA,OAAAh1B,GAAAC,EAAAu2B,iBAAAx3B,EAAAiB,EAAAk2B,SAAAnB,EAAA,OAAAh1B,GAAAC,EAAAm2B,GAAAn2B,EAAAo2B,IAAA,GAAA10B,IAAA1B,EAAAu2B,iBAAAx3B,EAAAiB,EAAAk2B,SAAAf,GAAA,QAAAp1B,GAAAC,EAAAu2B,iBAAAx3B,EAAAiB,EAAAk2B,SAAAf,EAAA,OAAAp1B,IAAqc,IAAA6W,GAAA0f,EAAAt3B,EAAA,GAAa,GAAA03B,GAAA33B,EAAA2G,KAAAhE,EAAgB,IAAAg1B,EAAA,EAAA70B,EAAA,CAAU,GAAAQ,GAAAtD,EAAAiF,IAAAtC,EAAAwC,IAAAnF,GAAA0F,MAAA5C,EAAA60B,GAAApxB,SAA0CtF,GAAAk2B,UAAA7zB,EAAAqD,KAAA3G,GAAAiB,EAAAu2B,iBAAAl0B,EAAArC,EAAAk2B,SAAAf,EAAA3wB,KAAA,UAAAzE,GAAAhB,EAAAsD,GAA+E4yB,GAAA,EAAK/0B,KAAAqyB,sBAAAa,oBAAAlzB,KAAAmyB,kBAAApxB,OAAA9B,KAAiF22B,EAAAj2B,UAAA02B,iBAAA,SAAAl2B,EAAAM,EAAAC,EAAAjC,EAAAmC,EAAArB,EAAAO,GAA+D,GAAAb,GAAA0B,EAAAX,KAAAmyB,kBAAArzB,EAAAkB,KAAAoyB,UAAiDnzB,GAAAyB,EAAAmD,QAAApF,GAAAQ,EAAAgF,KAAAvD,EAAAuE,OAAAV,MAAA9F,IAAA02B,EAAAx0B,EAAAR,EAAAlB,EAAAM,GAAA,EAAAd,EAAAgC,GAAAT,KAAAm2B,GAAAr2B,EAAAkzB,eAAAhzB,KAAAi2B,IAAA,GAAAj2B,KAAAk2B,IAAA,IAAAp3B,EAAAkyB,YAAAhxB,KAAAi2B,GAAAj2B,KAAAk2B,GAAAl2B,KAAAm2B,IAAAr2B,EAAAmzB,mBAAAjzB,KAAAi2B,GAAAj2B,KAAAk2B,GAAAl2B,KAAAk2B,GAAAl2B,KAAAm2B,GAAAl3B,EAAAyB,EAAA4D,MAAA,GAAA1D,GAAA3B,EAAAgF,KAAAvD,EAAAuE,OAAAV,MAAA3D,IAAAu0B,EAAAx0B,EAAAR,EAAAlB,EAAAM,GAAA,GAAAqB,EAAAH,GAAAT,KAAAm2B,GAAAr2B,EAAAkzB,eAAAhzB,KAAAi2B,IAAA,GAAAj2B,KAAAk2B,IAAA,IAAAp3B,EAAAkyB,YAAAhxB,KAAAi2B,GAAAj2B,KAAAk2B,GAAAl2B,KAAAm2B,IAAAr2B,EAAAmzB,mBAAAjzB,KAAAi2B,GAAAj2B,KAAAk2B,GAAAl2B,KAAAk2B,GAAAl2B,KAAAm2B,GAAA11B,EAAA+0B,EAAA,IAAAx1B,KAAAg2B,SAAA,EAAAh2B,KAAAq2B,iBAAAl2B,EAAAH,KAAAg2B,SAAAt1B,EAAAjC,EAAAmC,EAAArB,EAAAO,KAAsgB81B,EAAAj2B,UAAA42B,kBAAA,SAAAp2B,EAAAM,EAAAC,EAAAjC,EAAAmC,GAA4DF,IAAA4D,KAAA7F,GAAA,IAAiB,IAAAc,GAAAS,KAAAmyB,kBAAAryB,EAAAE,KAAAoyB,UAA+C+C,GAAA51B,EAAAY,EAAAO,GAAA,EAAAjC,EAAA,EAAAgC,GAAAT,KAAAm2B,GAAAv1B,EAAAoyB,eAAAhzB,KAAAi2B,IAAA,GAAAj2B,KAAAk2B,IAAA,IAAAp2B,EAAAkxB,YAAAhxB,KAAAi2B,GAAAj2B,KAAAk2B,GAAAl2B,KAAAm2B,IAAAv1B,EAAAqyB,mBAAAx0B,EAAAuB,KAAAk2B,GAAAl2B,KAAAm2B,GAAAn2B,KAAAi2B,GAAAj2B,KAAAm2B,IAA8KP,EAAAzC,iBAAAuC,EAAAl3B,EAAAD,QAAAq3B,IAClkNxC,wBAAA,GAAAC,yBAAA,GAAAC,YAAA,GAAAC,sBAAA,GAAAC,mBAAA,GAAAC,2BAAA,GAAAC,aAAA,GAAAC,uBAAA,GAAAxE,sBAAA,IAAqNsH,IAAA,SAAAx1B,EAAAzC,EAAAD,GACxN,YAAa,SAAAg2B,GAAAp0B,EAAAM,EAAAxB,EAAAyB,EAAAE,EAAAnC,EAAAc,EAAAO,GAAoCK,EAAA6wB,YAAAvwB,EAAAxB,EAAAoC,KAAA8D,MAAA,GAAAzE,GAAAW,KAAA8D,MAAA,GAAAvE,GAAAnC,EAAAc,EAAAO,IAAA,UAAAA,IAAA,WAAqF,QAAA42B,GAAAv2B,EAAAM,EAAAxB,EAAAyB,GAAuC,GAAAE,GAAA,EAAAS,KAAAqM,GAAAjP,EAAAk4B,GAAA13B,EAAA2B,OAAA,OAAAF,EAAuDP,GAAA6wB,YAAAvwB,EAAAsB,EAAAtB,EAAAkB,EAAAlD,GAAA0B,EAAA6wB,YAAAvwB,EAAAsB,EAAAtB,EAAAkB,EAAAlD,GAAA0B,EAAA6wB,YAAAvwB,EAAAsB,EAAAtB,EAAAkB,EAAAlD,GAAA0B,EAAA6wB,YAAAvwB,EAAAsB,EAAAtB,EAAAkB,EAAAlD,GAAoG,QAAAm4B,GAAAz2B,EAAAM,EAAAxB,EAAAyB,EAAAE,EAAAnC,GAA4C,MAAA0B,GAAA6wB,YAAAvwB,EAAAsB,EAAAtB,EAAAkB,EAAA1C,EAAA8C,EAAA9C,EAAA0C,EAAAN,KAAA8D,MAAAzE,EAAAqB,GAAAV,KAAA8D,MAAAzE,EAAAiB,GAAA,GAAAf,EAAA,GAAAnC,GAAgF,QAAAo4B,GAAA12B,EAAAM,EAAAxB,GAA4B,GAAAyB,KAAS,IAAAA,EAAAo2B,kBAAAr2B,EAAAs2B,6BAAA93B,GAAAyB,EAAAs2B,eAAAv2B,EAAAw2B,0BAAAh4B,GAAAyB,EAAAo2B,oBAAAp2B,EAAAw2B,WAAAz2B,EAAAq1B,eAAA72B,GAAgK2mB,KAAAzlB,EAAA,MAASO,EAAAs2B,eAAA,CAAsB,OAAAp2B,GAAAH,EAAA02B,6BAAAl4B,GAAAR,EAAA,EAAgDA,EAAAmC,EAAAG,QAAAH,EAAAnC,IAAA0B,GAAoB1B,GAAKA,GAAA4C,KAAAuG,IAAA,EAAAnJ,EAAA,EAAkB,QAAAc,GAAAd,EAAYc,EAAAqB,EAAAG,QAAAH,EAAArB,GAAAY,EAAA,GAAqBZ,GAAKA,GAAA8B,KAAAmJ,IAAA5J,EAAAG,OAAA,EAAAxB,GAAAmB,EAAA02B,mBAAAx2B,EAAAnC,GAAAmC,EAAArB,IAAAkB,EAAAs2B,6BAAA93B,KAAAyB,EAAA22B,oBAAA52B,EAAAq1B,eAAA72B,GAAuI2mB,KAAAhlB,EAAAnC,KAAUgC,EAAAq1B,eAAA72B,GAAsB2mB,KAAAhlB,EAAArB,OAAUmB,EAAA42B,aAAA72B,EAAA82B,kBAAAt4B,GAAAu4B,SAAA,KAAA92B,EAAA42B,eAAA52B,EAAA42B,aAAA,GAAA52B,EAAA+2B,aAAAh3B,EAAA82B,kBAAAt4B,GAAA2N,MAAA,cAAqJ,MAAAlM,GAAS,QAAAg3B,GAAAv3B,EAAAM,EAAAxB,EAAAyB,EAAAE,GAAsC,MAAAT,GAAA82B,0BAAAv2B,KAAAP,EAAA42B,6BAAAr2B,IAAA,GAAAP,EAAA21B,eAAAp1B,KAAmGE,IAAAT,EAAA82B,0BAAAv2B,IAAAP,EAAA42B,6BAAAr2B,GAAA,SAAAP,EAAA21B,eAAAp1B,GAAoGklB,KAAA3mB,EAAA,IAAU2B,GAAA,GAAAT,EAAA21B,eAAAp1B,GAA2BklB,KAAA3mB,EAAA,IAAU2B,IAAK,GAAAgD,GAAA3C,EAAA,0BAAA0G,EAAA1G,EAAA,cAAAgwB,EAAAtpB,EAAAspB,cAAAC,EAAAjwB,EAAA,0BAAAkwB,EAAAlwB,EAAA,yBAAAmwB,EAAAnwB,EAAA,4BAAAowB,EAAAD,EAAAC,wBAAAC,EAAArwB,EAAA,wBAAAswB,EAAAtwB,EAAA,uBAAAuwB,EAAAD,EAAAC,mBAAAqC,EAAAtC,EAAAsC,eAAApC,EAAAxwB,EAAA,aAAA02B,EAAA12B,EAAA,kCAAA01B,EAAAgB,EAAAhB,iBAAAiB,EAAA32B,EAAA,uBAAA42B,EAAA52B,EAAA,4BAAA62B,EAAA72B,EAAA,oBAAA82B,EAAA92B,EAAA,sBAAA+2B,EAAAD,EAAAC,cAAAC,EAAAF,EAAAE,aAAAC,EAAAj3B,EAAA,wBAAAk3B,EAAAD,EAAAC,UAAAC,EAAAF,EAAAE,UAAAC,EAAAH,EAAAG,YAAAC,EAAAr3B,EAAA,+BAAAs3B,EAAAt3B,EAAA,2BAAAu3B,EAAAv3B,EAAA,0BAAAuvB,EAAAvvB,EAAA,mBAAAw3B,EAAAx3B,EAAA,+BAAAqM,EAAArM,EAAA,oBAAAy3B,EAAAz3B,EAAA,kCAAA03B,EAAA13B,EAAA,2CAAAkM,EAAAlM,EAAA,6BAAAq0B,EAAAr0B,EAAA,uBAAA4K,kBAAAwB,MAAAurB,EAAA33B,EAAA,2BAAA43B,EAAA53B,EAAA,sCAAA63B,EAAAF,GAA4lDG,UAAUnsB,KAAA,QAAA7N,KAAA,YAA8B6N,KAAA,QAAA7N,KAAA,YAA8B6N,KAAA,SAAA7N,KAAA,oBAAuC6N,KAAA,SAAA7N,KAAA,cAAiC6N,KAAA,SAAA7N,KAAA,mBAAsC6N,KAAA,SAAA7N,KAAA,eAAkC6N,KAAA,SAAA7N,KAAA,YAA+B6N,KAAA,SAAA7N,KAAA,cAAiC6N,KAAA,SAAA7N,KAAA,cAAiC6N,KAAA,UAAA7N,KAAA,gBAAoC6N,KAAA,UAAA7N,KAAA,gBAAoC6N,KAAA,UAAA7N,KAAA,kBAAsC6N,KAAA,QAAA7N,KAAA,eAA+Bi6B,EAAAJ,GAA0CG,UAAUnsB,KAAA,UAAA7N,KAAA,cAAgCk6B,EAAAL,GAAyCG,UAAUnsB,KAAA,QAAA7N,KAAA,MAAwB6N,KAAA,QAAA7N,KAAA,QAAwB4yB,IAAqB5yB,KAAA,eAAA6yB,WAAA,EAAAhlB,KAAA,UAAgD7N,KAAA,SAAA6yB,WAAA,EAAAhlB,KAAA,WAAyCssB,IAA4Bn6B,KAAA,kBAAA6yB,WAAA,EAAAhlB,KAAA,YAAmDusB,GAAoBC,MAAMzH,mBAAAuH,0BAAArH,eAAAL,EAAAM,kBAAsIpyB,SAAA,aAAAX,KAAA,eAA0CW,SAAA,kBAAAX,KAAA,eAA+CW,SAAA,kBAAAX,KAAA,eAA+CW,SAAA,iBAAAX,KAAA,cAA6CW,SAAA,eAAAX,KAAA,aAAyCs6B,MAAO1H,mBAAAuH,0BAAArH,eAAAL,EAAAM,kBAAsIpyB,SAAA,aAAAX,KAAA,eAA0CW,SAAA,kBAAAX,KAAA,eAA+CW,SAAA,kBAAAX,KAAA,eAA+CW,SAAA,iBAAAX,KAAA,cAA6CW,SAAA,eAAAX,KAAA,aAAyCu6B,cAAe3H,mBAAmB5yB,KAAA,QAAA6yB,WAAA,EAAAhlB,KAAA,UAAyC7N,KAAA,eAAA6yB,WAAA,EAAAhlB,KAAA,UAAgD7N,KAAA,YAAA6yB,WAAA,EAAAhlB,KAAA,UAA6C7N,KAAA,SAAA6yB,WAAA,EAAAhlB,KAAA,UAAwCilB,eAAAgC,IAAiC0F,EAAA,SAAAp5B,EAAAM,EAAAxB,EAAAyB,GAAiCV,KAAAmzB,iBAAAhzB,CAAwB,IAAAS,GAAA0wB,EAAAnxB,EAAAwxB,kBAAAlzB,EAAA0B,EAAA0xB,cAAmE,IAAA7xB,KAAAmyB,kBAAA,GAAAvxB,GAAAF,KAAAyxB,mBAAAnyB,KAAAoyB,WAAA,GAAA3zB,GAAAiC,KAAA0xB,YAAApyB,KAAAqyB,sBAAA,GAAAhB,GAAAlxB,EAAAM,EAAAxB,EAAAyB,KAAA2xB,uBAAAryB,KAAAsyB,SAAA,GAAArB,GAAAvwB,KAAA4xB,UAAAnyB,EAAA+4B,wBAAA,CAAkQ,GAAA35B,GAAA+xB,EAAAnxB,EAAA+4B,wBAAuDl5B,MAAAw5B,yBAAA,GAAAj6B,GAAAmB,KAAA84B,2BAAqED,GAAA55B,UAAAgzB,UAAA,SAAAxyB,GAA8C,OAAOgyB,kBAAAnyB,KAAAmyB,kBAAAQ,UAAAxyB,GAAAiyB,WAAApyB,KAAAoyB,WAAAO,UAAAxyB,GAAAkyB,sBAAAryB,KAAAqyB,sBAAAM,UAAAxyB,GAAAmyB,SAAAtyB,KAAAsyB,SAAAhzB,MAAAk6B,yBAAAx5B,KAAAw5B,0BAAAx5B,KAAAw5B,yBAAA7G,UAAAxyB,KAA6Ro5B,EAAA55B,UAAAizB,OAAA,SAAAzyB,GAA4CH,KAAA6yB,mBAAA,GAAA3B,GAAA/wB,EAAAH,KAAAmyB,mBAAAnyB,KAAA8yB,YAAA,GAAA3B,GAAAhxB,EAAAH,KAAAoyB,YAAApyB,KAAAqyB,sBAAAO,OAAAzyB,GAAAH,KAAAmzB,iBAAA+F,0BAAAl5B,KAAAy5B,0BAAA,GAAAvI,GAAA/wB,EAAAH,KAAAw5B,0BAAA,KAAiSD,EAAA55B,UAAA2gB,QAAA,WAA4CtgB,KAAA6yB,qBAAA7yB,KAAA6yB,mBAAAvS,UAAAtgB,KAAA8yB,YAAAxS,UAAAtgB,KAAAqyB,sBAAA/R,UAAAtgB,KAAAsyB,SAAAhS,UAAAtgB,KAAAy5B,2BAAAz5B,KAAAy5B,0BAAAnZ,WAA+N,IAAAoZ,GAAA,SAAAv5B,GAA6B,GAAAH,KAAA25B,kBAAAx5B,EAAAw5B,kBAAA35B,KAAA4lB,KAAAzlB,EAAAylB,KAAA5lB,KAAAiyB,YAAA9xB,EAAA8xB,YAAAjyB,KAAAmM,OAAAhM,EAAAgM,OAAAnM,KAAAkyB,MAAA/xB,EAAA+xB,MAAAlyB,KAAA45B,SAAAz5B,EAAAy5B,SAAA55B,KAAA65B,gBAAA15B,EAAA05B,gBAAA75B,KAAA85B,WAAA35B,EAAA25B,WAAA35B,EAAAi5B,KAAAp5B,KAAAo5B,KAAA,GAAAG,GAAAJ,EAAAC,KAAAj5B,EAAAgM,OAAAhM,EAAAylB,KAAAzlB,EAAAi5B,MAAAp5B,KAAAq5B,KAAA,GAAAE,GAAAJ,EAAAE,KAAAl5B,EAAAgM,OAAAhM,EAAAylB,KAAAzlB,EAAAk5B,MAAAr5B,KAAAs5B,aAAA,GAAAC,GAAAJ,EAAAG,aAAAn5B,EAAAgM,OAAAhM,EAAAylB,KAAAzlB,EAAAm5B,cAAAt5B,KAAA+5B,aAAA55B,EAAA45B,aAAA/5B,KAAAg6B,aAAA75B,EAAA65B,aAAAh6B,KAAAi6B,iBAAA,GAAAnB,GAAA34B,EAAA85B,kBAAAj6B,KAAAk6B,gBAAA,GAAApB,GAAA34B,EAAA+5B,iBAAAl6B,KAAAm6B,iBAAA,GAAAnB,GAAA74B,EAAAg6B,kBAAAn6B,KAAAo6B,gBAAA,GAAAnB,GAAA94B,EAAAi6B,qBAA2xB,CAAK,GAAA35B,GAAAT,KAAAmM,OAAA,EAAqBnM,MAAA+5B,aAAAlD,EAAA72B,KAAA4lB,KAAAnlB,EAAA,aAAAT,KAAAg6B,aAAAnD,EAAA72B,KAAA4lB,KAAAnlB,EAAA,cAAgHi5B,GAAA/5B,UAAA4yB,SAAA,SAAApyB,EAAAM,GAA8C,GAAAxB,GAAAe,KAAAU,EAAAV,KAAAmM,OAAA,GAAAvL,EAAAF,EAAAm1B,OAAAp3B,EAAAmC,EAAA,aAAArB,IAAAmB,EAAAq2B,6BAAA,eAAAn2B,EAAA,gBAAAnC,EAAAqB,GAAAY,EAAAq2B,6BAAA,eAAAn2B,EAAA,aAA+L,IAAAZ,KAAAuS,YAAAhT,GAAAO,EAAA,CAA0B,OAAApB,GAAA+B,EAAA45B,iBAAA14B,EAAAlB,EAAA65B,kBAAAz7B,EAAA8C,EAAAlD,GAAAkD,EAAAlD,OAAkEkC,GAAIilB,KAAA5lB,KAAA4lB,MAAe/lB,EAAA,EAAAkC,EAAA5B,EAASN,EAAAkC,EAAAhB,OAAWlB,GAAA,GAAM,GAAAjB,GAAAmD,EAAAlC,GAAA6B,EAAA9C,EAAA8P,QAAA5P,EAAAF,EAAAszB,MAAA3xB,EAAA3B,EAAA4zB,gBAAsD,IAAA9xB,EAAAmb,OAAAna,GAAA,CAAgB,GAAA3B,OAAA,EAAaR,KAAAQ,EAAAW,EAAAo1B,eAAA,aAAAn1B,EAAAe,EAAAgL,YAAAhM,EAAAq2B,6BAAA,gBAAAh3B,EAAA+3B,EAAAp2B,EAAAgL,WAAA3M,MAAAu4B,EAAAv4B,EAAAW,EAAAC,EAAAe,EAAAgL,YAAyK,IAAA1K,OAAA,EAAa,IAAAlC,IAAAkC,EAAAtB,EAAAo1B,eAAA,aAAAn1B,EAAAe,EAAAgL,YAAAhM,EAAAq2B,6BAAA,gBAAA/0B,EAAA81B,EAAAp2B,EAAAgL,WAAA1K,MAAAjC,GAAAiC,KAAA/C,EAAAsT,SAAAlL,MAAkK+xB,KAAAr5B,EAAAs5B,KAAAr3B,EAAAkwB,MAAApzB,EAAA0zB,iBAAAjyB,EAAAsN,SAAAP,EAAA5L,GAAAgL,WAAAhL,EAAAgL,WAAAE,KAAA0oB,EAAA5zB,EAAAkL,QAA8H5K,IAAAtD,EAAAsD,IAAA,GAAAjC,GAAA,OAAA8B,GAAA,QAAAjB,EAAA,qCAAAA,EAAA,oBAAAY,EAAAi3B,EAAA8B,0BAAAx6B,GAAAyT,EAAA,EAAoJA,EAAAzT,EAAAgB,OAAWyS,IAAA,GAAA3U,EAAAkB,EAAAkgB,WAAAzM,KAAA,EAAA3R,GAAAL,EAAA,CAAmC,GAAAwzB,GAAA6D,EAAA2B,OAAAz6B,EAAA06B,OAAAjnB,GAAiDwhB,KAAAn2B,EAAAm2B,EAAA/U,WAAA,UAA6B,SAAArf,EAAA,sBAAAZ,KAAAuS,SAAAgmB,EAAAv4B,KAAAuS,aAA2EmnB,EAAA/5B,UAAA+yB,QAAA,WAA2C,WAAA1yB,KAAAq5B,KAAAlH,kBAAApxB,QAAA,IAAAf,KAAAo5B,KAAAjH,kBAAApxB,QAAA,IAAAf,KAAAs5B,aAAAnH,kBAAApxB,QAAsI24B,EAAA/5B,UAAAgzB,UAAA,SAAAxyB,GAA8C,OAAOylB,KAAA5lB,KAAA4lB,KAAA8K,SAAA1wB,KAAAmM,OAAAqG,IAAA,SAAArS,GAAoD,MAAAA,GAAAwG,KAAYizB,SAAA55B,KAAA45B,SAAAC,gBAAA75B,KAAA65B,gBAAAE,aAAA/5B,KAAA+5B,aAAAC,aAAAh6B,KAAAg6B,aAAAC,iBAAAj6B,KAAAi6B,iBAAAtH,UAAAxyB,GAAA+5B,gBAAAl6B,KAAAk6B,gBAAAvH,UAAAxyB,GAAAg6B,iBAAAn6B,KAAAm6B,iBAAAxH,UAAAxyB,GAAAi6B,gBAAAp6B,KAAAo6B,gBAAAzH,UAAAxyB,GAAAi5B,KAAAp5B,KAAAo5B,KAAAzG,UAAAxyB,GAAAk5B,KAAAr5B,KAAAq5B,KAAA1G,UAAAxyB,GAAAm5B,aAAAt5B,KAAAs5B,aAAA3G,UAAAxyB,KAA6au5B,EAAA/5B,UAAAizB,OAAA,SAAAzyB,GAA2CH,KAAAo5B,KAAAxG,OAAAzyB,GAAAH,KAAAq5B,KAAAzG,OAAAzyB,GAAAH,KAAAs5B,aAAA1G,OAAAzyB,IAAoEu5B,EAAA/5B,UAAA2gB,QAAA,WAA2CtgB,KAAAo5B,KAAA9Y,UAAAtgB,KAAAq5B,KAAA/Y,UAAAtgB,KAAAs5B,aAAAhZ,WAAoEoZ,EAAA/5B,UAAA+6B,QAAA,SAAAv6B,EAAAM,EAAAxB,EAAAyB,GAAkD,GAAAE,GAAAZ,IAAWA,MAAA26B,kBAAwB,IAAAl8B,GAAA,IAAAuB,KAAAiyB,WAA2BjyB,MAAA46B,eAAAnJ,EAAAhzB,EAAAuB,KAAA66B,eAAgD76B,KAAA65B,iBAAA,CAAyB,QAAAt6B,GAAAS,KAAAmM,OAAA,GAAA0pB,OAAA/1B,EAAA,GAAAP,EAAA,oBAAAb,EAAAa,EAAA,aAAA2P,KAAA,KAAAvN,EAAA,QAAApC,EAAA,qCAAAA,EAAA,oBAAAV,EAAAsB,EAAAzB,OAAuKiC,EAAAF,EAAA/B,OAAWmB,EAAA,EAAAkC,EAAAnB,EAAA2R,SAAkB1S,EAAAkC,EAAAhB,OAAWlB,GAAA,GAAM,GAAAjB,GAAAmD,EAAAlC,GAAA6B,KAAe5C,EAAAF,EAAAw6B,IAAU,IAAAt6B,EAAA,CAAM,GAAAyB,GAAAK,EAAAuL,OAAA,GAAA2pB,eAAA,eAAgDlQ,KAAAhlB,EAAAglB,MAAYhnB,EAAA8N,YAAA8F,IAAA,SAAArS,GAA+B,UAAAA,IAAYJ,EAAA,GAAAa,EAAAuL,OAAA,GAAA2pB,eAAA,uBAAyDlQ,KAAAhlB,EAAAglB,MAAYhnB,EAAA8N,YAAA1K,EAAAy2B,EAAAqC,oBAAAh8B,GAAAiB,EAAA,EAAA8B,EAAAjB,EAAAuL,OAAA,GAAA2pB,eAAA,eAAwGlQ,KAAAhlB,EAAAglB,MAAYhnB,EAAA8N,YAAAlL,EAAAZ,EAAAuL,OAAA,GAAA2pB,eAAA,gBAA4DlQ,KAAAhlB,EAAAglB,MAAYhnB,EAAA8N,YAAA8G,EAAA,SAAAjU,EAAA,uBAAAqB,EAAAuL,OAAA,GAAA2pB,eAAA,kBAAgGlQ,KAAAhlB,EAAAglB,MAAYhnB,EAAA8N,YAAA,EAAAsoB,EAAA,SAAA70B,EAAAM,GAAiC,MAAA03B,GAAAh4B,EAAAtB,EAAA2U,EAAA1T,EAAA+B,EAAAL,EAAAQ,EAAAzB,EAAA,GAAAE,GAAwCiB,GAAA22B,EAAA0C,YAAA/F,EAAAl2B,EAAAu5B,EAAA0C,YAAAtC,EAAA8B,0BAAAz7B,IAAA6C,IAAAD,EAAA22B,EAAA2C,UAAAhG,EAAAl2B,EAAAu5B,EAAA2C,WAA2J,GAAA5G,OAAA,EAAa,IAAAx1B,EAAAy6B,KAAA,CAAW,GAAA7vB,GAAAvK,EAAAL,EAAAy6B,KAAgB7vB,KAAA4qB,EAAAgE,EAAA13B,EAAA9B,EAAAy6B,MAAAz4B,EAAAuL,OAAA,GAAA2pB,eAAA,eAAoElQ,KAAAhlB,EAAAglB,MAAYhnB,EAAA8N,YAAA9L,EAAAuL,OAAA,GAAA2pB,eAAA,eAAyDlQ,KAAAhlB,EAAAglB,MAAYhnB,EAAA8N,iBAAA,KAAA9L,EAAAg5B,SAAAh5B,EAAAg5B,SAAApwB,EAAAyxB,IAAAr6B,EAAAg5B,WAAApwB,EAAAyxB,KAAAzK,EAAA0K,SAAA,uEAAA1xB,EAAAswB,aAAAl5B,EAAAk5B,WAAAl5B,EAAAi5B,iBAAA,MAAAt6B,EAAA,gBAAAqB,EAAAuL,OAAA,GAAA4qB,6BAAA,iBAAAn2B,EAAAi5B,iBAAA,KAAsTn4B,EAAA22B,EAAA0C,aAAA3G,IAAAxzB,EAAA0W,WAAA1Y,EAAA8C,EAAA0yB,EAAAzzB,KAAuD+4B,EAAA/5B,UAAA2X,WAAA,SAAAnX,EAAAM,EAAAxB,EAAAyB,GAAqD,GAAAE,GAAAZ,KAAAvB,EAAAuB,KAAAmM,OAAA,GAAA2pB,eAAA,aAAwDlQ,KAAA5lB,KAAA4lB,KAAA,GAAiBzlB,EAAAuM,YAAAnN,EAAAS,KAAAmM,OAAA,GAAA2pB,eAAA,aAA4DlQ,KAAA5lB,KAAA4lB,KAAA,GAAiBzlB,EAAAuM,YAAA5M,EAAAE,KAAAmM,OAAA,GAAA2pB,eAAA,eAA8DlQ,KAAA5lB,KAAA4lB,MAAezlB,EAAAuM,YAAAhO,EAAAsB,KAAAmM,OAAA,GAAA2pB,eAAA,eAA8DlQ,KAAA5lB,KAAA4lB,MAAezlB,EAAAuM,YAAA/K,EAAA3B,KAAAmM,OAAA,GAAA2pB,eAAA,aAA4DlQ,KAAA,IAAQzlB,EAAAuM,gBAAe,KAAA/K,MAAAlD,EAAkB,IAAAI,GAAAmB,KAAAmM,OAAA,GAAA0pB,OAAAl1B,EAAAlC,EAAA,GAAAoB,EAAAG,KAAA46B,eAAAj6B,EAAAoB,EAAA/B,KAAA46B,eAAAj5B,EAAA,GAAA/C,EAAAoB,KAAA46B,eAAAr7B,EAAAmC,EAAA1B,KAAA46B,eAAA/7B,EAAA,kBAAAC,EAAAD,EAAA,sBAAA0B,EAAA1B,EAAA,gBAAAmB,KAAA46B,eAAA76B,EAAAlB,EAAA,gBAAAmB,KAAA46B,eAAA54B,EAAAnD,EAAA,sBAAAwC,KAAAqM,GAAA7L,EAAA,QAAAhD,EAAA,qCAAAA,EAAA,oBAAA2C,EAAA,QAAA3C,EAAA,qCAAAA,EAAA,oBAAA2U,EAAA3U,EAAA,uBAAAA,EAAA,uBAAAA,EAAA,0BAAAA,EAAA,yBAAAm2B,EAAAn2B,EAAA,oBAAAu1B,EAAA1yB,EAAA,EAAA8H,EAAA,SAAA/K,EAAAc,GAA2kB,GAAAoC,KAAApC,EAAAwC,EAAA,GAAAxC,EAAAwC,EAAA0vB,GAAAlyB,EAAAoC,EAAA,GAAApC,EAAAoC,EAAA8vB,EAA8C,KAAA3yB,GAAA6C,EAAA,CAAU,GAAA9C,GAAA8C,GAAA6R,CAAW5S,GAAAu6B,kBAAA57B,EAAAd,EAAAgC,EAAAxB,EAAA2B,EAAAuL,OAAA,GAAAtN,EAAA+B,EAAA+4B,kBAAAx5B,EAAA+xB,MAAA/xB,EAAAqyB,iBAAA5xB,EAAAsxB,MAAAryB,EAAAU,EAAAsB,EAAA/B,EAAAlB,EAAAmB,EAAAyB,EAAA9C,GAAkHknB,KAAAhlB,EAAAglB,MAAYzlB,EAAAuM,WAAAhM,IAAmB,aAAAs0B,EAAA,OAAAH,GAAA,EAAAuB,EAAAoC,EAAAr4B,EAAA0N,SAAA,IAAA4jB,KAAmEoD,EAAAuB,EAAAr1B,OAAW8zB,GAAA,SAAAne,GAAA0f,EAAAvB,GAAAjzB,EAAAi2B,EAAAnhB,EAAAhV,EAAAM,EAAAvB,EAAA43B,EAAA2C,WAAAv6B,EAAA43B,EAAA0C,YAAA97B,EAAA,GAAA8C,EAAAnB,EAAAqxB,YAAAR,GAAAhwB,EAAA,EAAAwzB,EAAArzB,EAA+HH,EAAAwzB,EAAAl0B,OAAWU,GAAA,GAAM,GAAAszB,GAAAE,EAAAxzB,GAAAY,EAAA5B,EAAA43B,EAAA0C,WAAuC14B,IAAAzB,EAAAw6B,iBAAA/4B,EAAA+2B,KAAAhF,EAAAW,IAAAvrB,EAAAkN,EAAAqe,OAA0C,gBAAA50B,EAAAyM,KAAA,OAAA0pB,GAAA,EAAAx0B,EAAAqL,EAAAhN,EAAA0N,SAAA,GAAqEyoB,EAAAx0B,EAAAf,OAAWu1B,GAAA,GAAM,GAAAxB,GAAAhzB,EAAAw0B,GAAAtb,EAAA2d,EAAA7D,EAAA,GAA6CtrB,GAAAsrB,EAAA,MAAA8C,GAAA5c,EAAAjZ,EAAAiZ,EAAArZ,EAAA,QAA8B,mBAAAxB,EAAAyM,KAAA,OAAAtK,GAAA,EAAAk0B,EAAAr2B,EAAA0N,SAAuDvL,EAAAk0B,EAAAz1B,OAAWuB,GAAA,GAAM,GAAA+W,GAAAmd,EAAAl0B,EAAWkH,GAAA6P,EAAA,GAAAue,GAAAve,EAAA,GAAAtX,EAAAsX,EAAA,GAAA1X,EAAA,QAAiC,cAAAxB,EAAAyM,KAAA,OAAAyuB,GAAA,EAAAn5B,EAAA/B,EAAA0N,SAAkDwtB,EAAAn5B,EAAAnB,OAAWs6B,GAAA,SAAAC,GAAAp5B,EAAAm5B,GAAAE,EAAA,EAAAC,EAAAF,EAA4BC,EAAAC,EAAAz6B,OAAWw6B,GAAA,GAAM,GAAAp5B,GAAAq5B,EAAAD,EAAW/xB,IAAArH,GAAA,GAAAy1B,GAAAz1B,EAAAJ,EAAAI,EAAAR,EAAA,MAA8B+3B,EAAA/5B,UAAAy7B,iBAAA,SAAAj7B,EAAAM,EAAAxB,GAAyD,GAAAyB,GAAAV,KAAA66B,WAAuB,IAAA16B,IAAAO,IAAW,OAAAE,GAAAF,EAAAP,GAAA1B,EAAAmC,EAAAG,OAAA,EAA4BtC,GAAA,EAAKA,IAAA,GAAAQ,EAAAuG,KAAA5E,EAAAnC,IAAAgC,EAAA,aAA+BC,GAAAP,KAAa,OAAAO,GAAAP,GAAAkH,KAAApI,IAAA,GAAuBy6B,EAAA/5B,UAAA87B,MAAA,SAAAt7B,EAAAM,GAA4C,GAAAxB,GAAAe,IAAWA,MAAAo5B,KAAA,GAAAG,GAAAJ,EAAAC,KAAAp5B,KAAAmM,OAAAnM,KAAA4lB,MAAA5lB,KAAAq5B,KAAA,GAAAE,GAAAJ,EAAAE,KAAAr5B,KAAAmM,OAAAnM,KAAA4lB,MAAA5lB,KAAAs5B,aAAA,GAAAC,GAAAJ,EAAAG,aAAAt5B,KAAAmM,OAAAnM,KAAA4lB,MAAA5lB,KAAAi6B,iBAAA,GAAAnB,GAAA94B,KAAAk6B,gBAAA,GAAApB,GAAA94B,KAAAm6B,iBAAA,GAAAnB,GAAAh5B,KAAAo6B,gBAAA,GAAAnB,EAAsZ,IAAAv4B,GAAAV,KAAAmM,OAAA,GAAAvL,EAAAF,EAAAm1B,OAAAp3B,EAAA0B,EAAAu7B,SAAAn8B,EAAA,QAAAqB,EAAA,qCAAAA,EAAA,oBAAAd,EAAA,QAAAc,EAAA,qCAAAA,EAAA,mBAA2L,IAAAA,EAAA,uBAAAA,EAAA,uBAAAA,EAAA,0BAAAA,EAAA,0BAA6G,GAAAlC,GAAAyB,EAAAuF,MAAA/D,EAAAN,KAAAC,IAAA5C,GAAAG,EAAAwC,KAAAE,IAAA7C,EAA0CsB,MAAA26B,gBAAA1pB,KAAA,SAAA9Q,EAAAM,GAAwC,OAAAkB,EAAAxB,EAAAw7B,OAAA55B,EAAAlD,EAAAsB,EAAAw7B,OAAAh6B,EAAA,IAAAA,EAAAlB,EAAAk7B,OAAA55B,EAAAlD,EAAA4B,EAAAk7B,OAAAh6B,EAAA,IAAAlB,EAAAgyB,aAAAtyB,EAAAsyB,eAAmG,OAAA9xB,GAAA,EAAAd,EAAAZ,EAAA07B,gBAAgCh6B,EAAAd,EAAAkB,OAAWJ,GAAA,GAAM,GAAAoB,GAAAlC,EAAAc,GAAA/B,GAAcg9B,cAAA75B,EAAA85B,kBAAAC,YAAA/5B,EAAAg6B,iBAAgEr6B,GAAIk6B,cAAA75B,EAAAi6B,kBAAAF,YAAA/5B,EAAAk6B,iBAAgEn9B,IAAAiD,EAAA85B,oBAAA95B,EAAAg6B,iBAAAx7B,IAAAwB,EAAAi6B,oBAAAj6B,EAAAk6B,iBAAAl8B,EAAAa,EAAA,mBAAA9B,EAAAkD,EAAApB,EAAA,mBAAAL,EAAAsB,EAAA/C,EAAAqB,EAAA+7B,sBAAAt9B,EAAAgC,EAAA,sBAAAA,EAAA,uBAAAT,EAAAg8B,SAAA36B,EAAAjB,EAAAJ,EAAA+7B,sBAAAx6B,EAAAd,EAAA,sBAAAA,EAAA,uBAAAT,EAAAg8B,QAAiU,IAAAp8B,GAAAiC,MAAAH,IAAAR,KAAAuG,IAAApG,EAAAK,IAAA9B,GAAAyB,MAAAH,KAAAuG,IAAApG,EAAAK,IAAAL,EAAAK,EAAAR,KAAAuG,IAAApG,EAAAK,GAAA/C,GAAAyB,EAAA,CAA+E,OAAAiT,GAAAzR,EAAAq6B,KAAApH,EAAA/1B,EAAAm7B,gBAAAr5B,OAAAqzB,EAAA,EAAgDA,EAAA5gB,EAAAzS,OAAWqzB,IAAAn1B,EAAAm7B,gBAAApJ,YAAAxd,EAAA4gB,GAAAryB,EAAAyR,EAAA4gB,GAAAzyB,EAAiD,IAAA6H,GAAAvK,EAAAm7B,gBAAAr5B,OAAAi0B,CAAiC,IAAAl2B,IAAAqB,EAAAk8B,uBAAAz9B,EAAAiD,EAAAjB,EAAA,0BAAAiB,GAAApD,GAAA,CAAuE,GAAAo2B,GAAA6C,EAAAh3B,EAAAzB,EAAA2mB,KAAA3mB,EAAA86B,aAAA3C,kBAAA,YAAAr1B,EAAAu6B,kBAAmGr9B,GAAAs9B,WAAAt9B,EAAAm6B,KAAAr3B,EAAAy6B,WAAA36B,EAAAgzB,EAAAj0B,EAAA,qBAAAmB,EAAA06B,WAAAl9B,EAAAY,EAAAuF,MAAA3D,EAAAu6B,kBAAAv6B,EAAA26B,aAAA36B,EAAA45B,OAAA3G,EAAAxrB,EAAAvK,EAAAg7B,kBAAuJ,GAAA15B,IAAAJ,EAAAk8B,uBAAA36B,EAAAF,EAAAZ,EAAA,0BAAAY,GAAA/C,GAAA,CAAuE,GAAA23B,GAAAsB,EAAAh3B,EAAAzB,EAAA2mB,KAAA3mB,EAAA+6B,aAAA5C,kBAAA,YAAAr1B,EAAAu6B,kBAAmGr9B,GAAAs9B,WAAAt9B,EAAAo6B,KAAAt3B,EAAA46B,UAAAn7B,EAAA40B,EAAAx1B,EAAA,qBAAAmB,EAAA66B,WAAA98B,EAAAK,EAAAuF,MAAA3D,EAAAu6B,kBAAA,EAAAv6B,EAAA45B,OAAA3G,EAAAxrB,EAAAvK,EAAAi7B,mBAA0Iz5B,GAAAT,KAAA68B,kBAAA18B,IAA6Bu5B,EAAA/5B,UAAA48B,WAAA,SAAAp8B,EAAAM,EAAAxB,EAAAyB,EAAAE,EAAAnC,EAAAc,EAAAO,EAAApB,EAAAiD,EAAA9C,EAAA8B,EAAAd,EAAAkC,GAAyE,OAAAnD,GAAAoB,KAAA0B,EAAAvB,EAAAiyB,WAAAtzB,EAAAqB,EAAAgyB,kBAAA5xB,EAAAJ,EAAAq5B,yBAAAz5B,EAAAC,KAAA4lB,KAAA5jB,EAAAX,KAAAuG,IAAAvG,KAAA6S,IAAAjV,GAAAoC,KAAAoY,IAAA1Z,EAAA,GAAA8B,EAAA7B,KAAAm6B,iBAAAp5B,OAAAS,GAAA3C,EAAA6G,MAAA5F,EAAA,EAAAuB,KAAAqM,KAAA,EAAArM,KAAAqM,IAAA8F,EAAAhS,EAAA,EAAAH,KAAAqM,GAAA,GAAAlM,GAAA,EAAAH,KAAAqM,GAAA,GAAAlM,EAAA,EAAAH,KAAAqM,GAAA,GAAAlM,GAAA,EAAAH,KAAAqM,GAAA,EAAAsnB,EAAAnU,QAAAlf,EAAA02B,EAAA2C,WAAAxnB,EAAA4gB,EAAA,EAAA5qB,EAAA/I,EAAiT2zB,EAAA5qB,EAAAzI,OAAWqzB,GAAA,GAAM,GAAAS,GAAArrB,EAAA4qB,EAAW,KAAA70B,IAAAqB,GAAAi0B,EAAAiI,cAAAzE,EAAA2C,WAAAhG,EAAA,CAAqD,GAAAoB,GAAAvB,EAAAkI,GAAArmB,EAAAme,EAAAmI,GAAAp7B,EAAAizB,EAAAoI,GAAAx7B,EAAAozB,EAAAqI,GAAAjI,EAAAJ,EAAAsI,IAAApI,EAAA50B,EAAAmyB,SAAAS,eAAA,EAAA5yB,EAAAgyB,kBAAAhyB,EAAAiyB,YAAA/vB,EAAA0yB,EAAA/B,aAAAsD,EAAAzB,EAAAuI,YAAA,EAA4I7I,GAAAz1B,EAAAD,EAAAkD,EAAAlD,EAAA8C,EAAAy0B,EAAAr0B,EAAAu0B,EAAAF,EAAAz0B,EAAAszB,EAAAlzB,EAAAkzB,EAAAtzB,EAAAjB,GAAA6zB,EAAAz1B,EAAAD,EAAAkD,EAAAlD,EAAA8C,EAAA+U,EAAA3U,EAAAu0B,EAAA5f,EAAA/U,EAAAszB,EAAAlzB,EAAAkzB,EAAArzB,EAAAqzB,EAAAtzB,EAAAjB,GAAA6zB,EAAAz1B,EAAAD,EAAAkD,EAAAlD,EAAA8C,EAAAC,EAAAG,EAAAu0B,EAAA10B,EAAAD,EAAAszB,EAAAlzB,EAAAkzB,EAAAtzB,EAAAszB,EAAAvzB,EAAAhB,GAAA6zB,EAAAz1B,EAAAD,EAAAkD,EAAAlD,EAAA8C,EAAAF,EAAAM,EAAAu0B,EAAA70B,EAAAE,EAAAszB,EAAAlzB,EAAAkzB,EAAArzB,EAAAqzB,EAAAtzB,EAAAszB,EAAAvzB,EAAAhB,GAAAg2B,EAAAn2B,EAAA1B,EAAA,EAAAmD,GAAAN,EAAAsvB,YAAA3uB,IAAA,EAAAA,EAAA,GAAAX,EAAAsvB,YAAA3uB,EAAA,EAAAA,EAAA,EAAAA,EAAA,GAAA0yB,EAAA/B,cAAA,EAAA+B,EAAA9B,iBAAA,EAAAr0B,EAAAu7B,iBAAAnJ,YAAA6D,EAAAuI,YAAA,KAA+Vr7B,EAAAivB,YAAAnyB,EAAAkD,EAAAlD,EAAA8C,EAAAE,EAAA7B,KAAAm6B,iBAAAp5B,OAAAc,EAAAlB,EAAAd,EAAAhB,EAAAw+B,QAAA38B,IAAA,KAAAA,IAAA,KAAAjC,EAAA,GAAAA,EAAA,GAAAuD,EAAAgzB,GAAA70B,EAAAkyB,sBAAAa,oBAAA/yB,EAAAgyB,kBAAApxB,OAAArC,IAAgLg7B,EAAA/5B,UAAAk9B,kBAAA,SAAA18B,GAAsD,OAAAM,GAAAT,KAAAf,EAAAe,KAAAs5B,aAAA54B,EAAAzB,EAAAkzB,kBAAAvxB,EAAA3B,EAAAmzB,WAAA3zB,GAAA0B,EAAAuF,MAAAnG,EAAAY,EAAAm9B,SAAAx9B,EAAA,EAAApB,EAAA+B,EAAAk6B,gBAAwH76B,EAAApB,EAAAqC,OAAWjB,GAAA,GAAM,GAAA6B,GAAAjD,EAAAoB,EAAW6B,GAAA47B,sBAAwB3B,cAAAj6B,EAAAk6B,kBAAAC,YAAAn6B,EAAAo6B,iBAAgEp6B,EAAA67B,sBAAyB5B,cAAAj6B,EAAAq6B,kBAAAF,YAAAn6B,EAAAs6B,gBAAiE,QAAAp9B,GAAA,EAAYA,EAAA,EAAIA,IAAA,CAAK,GAAA8B,GAAAgB,EAAA,IAAA9C,EAAA,8CAA6D,IAAA8B,EAAA,OAAAd,GAAAc,EAAAi7B,cAA+B/7B,EAAAc,EAAAm7B,YAAgBj8B,IAAA,CAAK,GAAAkC,GAAAtB,EAAAk5B,kBAAAr6B,IAAAO,EAAiC,UAAAM,EAAAs9B,kBAAA17B,EAAA25B,SAAA,IAA4C,GAAA98B,GAAAmD,EAAA27B,YAAAh8B,EAAA,GAAAkC,GAAA7B,EAAA47B,GAAA57B,EAAA67B,GAAAr+B,GAAAmF,QAAAjG,GAAAK,EAAA,GAAA8E,GAAA7B,EAAA87B,GAAA97B,EAAA67B,GAAAr+B,GAAAmF,QAAAjG,GAAA8B,EAAA,GAAAqD,GAAA7B,EAAA47B,GAAA57B,EAAA+7B,GAAAv+B,GAAAmF,QAAAjG,GAAAsB,EAAA,GAAA6D,GAAA7B,EAAA87B,GAAA97B,EAAA+7B,GAAAv+B,GAAAmF,QAAAjG,GAAAuD,EAAAX,KAAAuG,IAAA,EAAAvG,KAAAmJ,IAAA,GAAA/J,EAAAmlB,KAAAvkB,KAAA6S,IAAAnS,EAAA25B,UAAAr6B,KAAAoY,MAAA5X,EAAAR,KAAAuG,IAAA,EAAAvG,KAAAmJ,IAAA,GAAA/J,EAAAmlB,KAAAvkB,KAAA6S,IAAAnS,EAAAg8B,gBAAA18B,KAAAoY,MAAAjY,EAAAvC,EAAAqzB,SAAAS,eAAA,EAAA9zB,EAAAkzB,kBAAAlzB,EAAAmzB,YAAA5e,EAAAhS,EAAAwxB,YAA2X4D,GAAAl2B,EAAA9B,EAAA+C,EAAAg6B,OAAAj6B,EAAAM,EAAAH,GAAA+0B,EAAAl2B,EAAA9B,EAAA+C,EAAAg6B,OAAA78B,EAAAkD,EAAAH,GAAA+0B,EAAAl2B,EAAA9B,EAAA+C,EAAAg6B,OAAA57B,EAAAiC,EAAAH,GAAA+0B,EAAAl2B,EAAA9B,EAAA+C,EAAAg6B,OAAAp7B,EAAAyB,EAAAH,GAAAjB,EAAAowB,YAAAxd,IAAA,GAAA5S,EAAAowB,YAAAxd,EAAA,EAAAA,EAAA,GAAA5S,EAAAowB,YAAAxd,EAAA,EAAAA,EAAA,GAAA5S,EAAAowB,YAAAxd,EAAA,EAAAA,GAAAhS,EAAAwxB,cAAA,EAAAxxB,EAAAyxB,iBAAA,OAA2SyG,EAAA/5B,UAAAw7B,kBAAA,SAAAh7B,EAAAM,EAAAxB,EAAAyB,EAAAE,EAAAnC,EAAAc,EAAAO,EAAApB,EAAAiD,EAAA9C,EAAA8B,EAAAd,EAAAkC,EAAAnD,EAAA8C,EAAA5C,EAAAyB,EAAAR,EAAAiC,EAAAH,GAA8F,GAAAL,GAAAgS,EAAAwhB,KAAAZ,IAAkB,QAAA5qB,KAAAvK,GAAA,CAAgB,GAAA41B,GAAAmJ,SAAAx0B,EAAA,GAAqBvK,GAAA41B,KAAAT,IAAAptB,OAAAvI,EAAAu5B,EAAA73B,EAAAlB,EAAA41B,GAAAj0B,EAAAf,EAAAE,EAAAiC,EAAAH,OAAAL,EAAA,GAAAk3B,GAAAn5B,EAAAkB,EAAAN,EAAAL,EAAApB,EAAAiD,EAAA1C,EAAA41B,GAAAh2B,EAAA8B,EAAAd,GAAA,IAA2G,GAAAu2B,GAAA50B,IAAAo6B,cAAA57B,KAAA25B,kBAAA54B,OAAA2V,EAAAlV,IAAAs6B,YAAA97B,KAAA25B,kBAAA54B,MAAsGL,KAAAs0B,EAAAv2B,EAAAw5B,EAAA93B,EAAAO,EAAAE,EAAA9B,EAAAG,EAAAo5B,EAAA0C,YAAAh7B,EAAAiC,MAAAwR,EAAA,GAAAklB,GAAAn5B,EAAAkB,EAAAN,EAAAL,EAAApB,EAAAiD,EAAAjB,EAAA9B,EAAA8C,EAAA5C,GAAA,GAA+G,IAAA8C,GAAA4R,IAAAooB,cAAA57B,KAAA25B,kBAAA54B,OAAAU,EAAA+R,IAAAsoB,YAAA97B,KAAA25B,kBAAA54B,MAAsG2V,GAAAgjB,EAAAuE,eAAAzN,EAAA0K,SAAA,qGAAAz5B,EAAAi4B,EAAAuE,eAAAzN,EAAA0K,SAAA,mGAAiS,IAAAjG,IAAAh2B,EAAAo5B,EAAA2C,UAAA3C,EAAA2C,SAAA,IAAA/7B,EAAAo5B,EAAA0C,YAAA1C,EAAA0C,WAAA,EAA4G/6B,MAAA26B,gBAAAtzB,MAA2Bw0B,kBAAAzF,EAAA2F,gBAAArlB,EAAAslB,kBAAAp6B,EAAAq6B,gBAAAx6B,EAAA+6B,WAAApI,EAAAuI,UAAA3H,EAAAyH,WAAA16B,EAAA66B,WAAAr8B,EAAAo7B,OAAAx7B,EAAAi8B,KAAA37B,EAAAgyB,aAAA3yB,EAAAw8B,kBAAAt6B,EAAA06B,aAAAzH,KAAmMyE,EAAAwE,kBAAA/E,EAAAO,EAAAuE,cAAA,MAAAvE,EAAAhD,uBAAAl4B,EAAAD,QAAAm7B,IACh0lBtG,wBAAA,GAAAC,yBAAA,GAAA8K,iCAAA,GAAAC,sBAAA,IAAAC,yBAAA,IAAAC,iCAAA,IAAAC,2BAAA,IAAAC,0BAAA,IAAAC,qBAAA,IAAAC,uBAAA,IAAAC,8BAAA,IAAAtK,4BAAA,IAAAuK,0CAAA,IAAAC,8BAAA,IAAAC,0BAAA,IAAAC,mBAAA,IAAAC,kBAAA,IAAAC,qCAAA,IAAA3L,YAAA,GAAAC,sBAAA,GAAAC,mBAAA,GAAAC,2BAAA,GAAAC,aAAA,GAAAC,uBAAA,GAAA5lB,yBAAA,EAAAohB,sBAAA,IAAuuB+P,IAAA,SAAAj+B,EAAAzC,EAAAD,GAC1uB,YAAaC,GAAAD,QAAA,UACT4gC,IAAA,SAAAl+B,EAAAzC,EAAAD,GACJ,YAAa,SAAA6gC,GAAAj/B,EAAAO,GAAuC,MAAAA,GAAAP,EAAW,GAAAmN,IAAArM,EAAA,0BAAAA,EAAA,oBAAAwwB,EAAAxwB,EAAA,YAAAo+B,EAAAp+B,EAAA,gCAAA23B,EAAA33B,EAAA,wBAAAq+B,EAAAr+B,EAAA,cAAAs+B,EAAAt+B,EAAA,4BAAAu+B,EAAAv+B,EAAA,uBAAAw+B,EAAAx+B,EAAA,OAAAy+B,EAAAz+B,EAAA,iCAAA0+B,EAAA1+B,EAAA,gBAAA0+B,gBAAAC,EAAAhH,GAA6fG,UAAUnsB,KAAA,SAAA7N,KAAA,iBAAoC6N,KAAA,SAAA7N,KAAA,qBAAwC6N,KAAA,SAAA7N,KAAA,kBAAmC8gC,EAAA,SAAA1/B,EAAAO,EAAAD,EAAAG,GAAiCZ,KAAA8/B,MAAA3/B,EAAAH,KAAAiyB,YAAAvxB,EAAAV,KAAA+B,EAAA5B,EAAA4B,EAAA/B,KAAA2B,EAAAxB,EAAAwB,EAAA3B,KAAAwJ,EAAArJ,EAAAqJ,EAAAnI,KAAA6S,IAAAxT,GAAAW,KAAAoY,IAAAzZ,KAAA+/B,KAAAt/B,GAAA,GAAA6+B,GAAA7N,EAAA,MAAAzxB,KAAAggC,kBAAAp/B,GAAA,GAAAg/B,GAA0KC,GAAApP,YAAA,SAAAtwB,EAAAO,EAAAD,GAAyC,GAAAG,GAAA,GAAAi/B,GAAA1/B,EAAA2/B,MAAA3/B,EAAA8xB,YAAA,GAAAqN,GAAAn/B,EAAA4/B,MAAA,GAAAH,GAAAz/B,EAAA6/B,mBAA0G,OAAAp/B,GAAAq/B,YAAAv/B,EAAAE,EAAAs/B,eAAA//B,EAAA+/B,eAAAt/B,EAAAu/B,iBAAA1/B,GAAAG,GAAiFi/B,EAAAlgC,UAAA4Y,OAAA,SAAApY,EAAAO,EAAAD,EAAAG,EAAAnC,GAAmD,GAAAc,GAAAS,KAAAf,EAAAe,KAAAggC,kBAAAj/B,MAA2Cf,MAAAggC,kBAAAhP,YAAAvwB,EAAAG,EAAAnC,EAA0C,QAAAqB,GAAA,EAAYA,EAAAY,EAAAK,OAAWjB,IAAA,CAAK,OAAAa,GAAAD,EAAAZ,GAAA6B,GAAA,mBAAAjD,EAAA,EAAyCA,EAAAiC,EAAAI,OAAWrC,IAAA,CAAK,GAAAI,GAAA6B,EAAAjC,EAAWiD,GAAA,GAAAN,KAAAmJ,IAAA7I,EAAA,GAAA7C,EAAAiD,GAAAJ,EAAA,GAAAN,KAAAmJ,IAAA7I,EAAA,GAAA7C,EAAA6C,KAAA,GAAAN,KAAAuG,IAAAjG,EAAA,GAAA7C,EAAAiD,GAAAJ,EAAA,GAAAN,KAAAuG,IAAAjG,EAAA,GAAA7C,EAAA6C,GAAgGpC,EAAAwgC,KAAAxnB,OAAAtZ,EAAA0C,EAAA,GAAAA,EAAA,GAAAA,EAAA,GAAAA,EAAA,MAAsCk+B,EAAAlgC,UAAAwgC,iBAAA,SAAAhgC,GAAqDH,KAAAogC,cAAAjgC,GAAqB0/B,EAAAlgC,UAAAgzB,UAAA,SAAAxyB,GAA8C,GAAAO,GAAAV,KAAA+/B,KAAA9mB,eAAgC,OAAA9Y,MAAAkH,KAAA3G,IAAqBo/B,MAAA9/B,KAAA8/B,MAAA7N,YAAAjyB,KAAAiyB,YAAA8N,KAAAr/B,EAAAs/B,kBAAAhgC,KAAAggC,kBAAArN,UAAAxyB,GAAA+/B,eAAAlgC,KAAAkgC,iBAA+IL,EAAAlgC,UAAAkZ,MAAA,SAAA1Y,EAAAO,GAA4CV,KAAAqgC,WAAArgC,KAAAqgC,SAAA,GAAAb,GAAA5zB,WAAA,GAAA6zB,GAAAz/B,KAAAigC,cAAA9zB,OAAAnM,KAAAsgC,iBAAA,GAAAf,GAAAv/B,KAAAqgC,SAAAnhC,OAAAmZ,KAAArY,KAAAqgC,UAAApvB,QAAA,sBAAyM,QAAAxQ,MAAYG,EAAAT,EAAAogC,WAAe9hC,EAAAgzB,EAAAtxB,EAAAqgC,SAAArgC,EAAA4C,MAAAxD,EAAA8/B,EAAAz+B,EAAAib,QAAA5c,EAAAkB,EAAAsgC,cAAA3gC,EAAAK,EAAAugC,iBAAAjiC,EAAAkC,EAAA,IAAAgB,EAAA,IAAAjD,GAAA,IAAAI,GAAA,IAAAD,EAAA,EAA8HA,EAAAI,EAAA8B,OAAWlC,IAAA,OAAA6C,GAAAzC,EAAAJ,GAAA0B,EAAA,EAAuBA,EAAAmB,EAAAX,OAAWR,IAAA,CAAK,GAAAwB,GAAAL,EAAAnB,EAAWI,GAAAU,KAAAmJ,IAAA7J,EAAAoB,KAAAJ,EAAAN,KAAAmJ,IAAA7I,EAAAI,EAAAJ,GAAAjD,EAAA2C,KAAAuG,IAAAlJ,EAAAqD,KAAAjD,EAAAuC,KAAAuG,IAAA9I,EAAAiD,EAAAJ,GAAwE,GAAAH,GAAAxB,KAAA+/B,KAAAlnB,MAAAlY,EAAAb,EAAA6B,EAAA7B,EAAApB,EAAAoB,EAAAhB,EAAAgB,EAAuC0B,GAAAyP,KAAAmuB,GAAAp/B,KAAA2gC,eAAAlgC,EAAAe,EAAAxB,KAAAggC,kBAAA/gC,EAAAM,EAAAqB,EAAAuL,OAAAzL,EAAAP,EAAAygC,QAAAniC,EAA4G,IAAAu2B,GAAAh1B,KAAAogC,cAAAS,qBAAA5hC,EAAAkB,EAAA4C,MAAyD,OAAAiyB,GAAA/jB,OAAAjR,KAAA2gC,eAAAlgC,EAAAu0B,EAAAh1B,KAAAogC,cAAAzG,kBAAA16B,EAAAM,EAAAqB,EAAAuL,OAAAzL,EAAAP,EAAAygC,QAAAniC,GAAAgC,GAA2Go/B,EAAAlgC,UAAAghC,eAAA,SAAAxgC,EAAAO,EAAAD,EAAAG,EAAAnC,EAAAc,EAAAN,EAAAa,EAAAa,GAAmE,OAAAgB,GAAAjD,EAAAsB,KAAAlB,EAAA,EAAqBA,EAAA4B,EAAAK,OAAWjC,IAAA,CAAK,GAAAD,GAAA6B,EAAA5B,EAAW,IAAAD,IAAA8C,EAAA,CAAUA,EAAA9C,CAAI,IAAA6C,GAAAjB,EAAAnB,IAAAT,GAAA0B,EAAA7B,EAAAwhC,eAAAx+B,EAAAo/B,YAAiD,KAAAvhC,GAAAogC,EAAApgC,EAAAgB,GAAA,CAA6B,GAAAwB,GAAArD,EAAA4hC,iBAAAS,OAAAr/B,EAAA8wB,kBAAAhxB,EAAA9C,EAAA2hC,SAAAt+B,GAAAizB,EAAAxzB,EAAAkN,QAAAhN,EAAA+wB,aAAgG,IAAAh0B,EAAAu2B,GAAA,OAAAn1B,GAAA,KAAAE,EAAA,EAA2BA,EAAAQ,EAAAQ,OAAWhB,IAAA,CAAK,GAAAnB,GAAA2B,EAAAR,EAAW,MAAAR,KAAAsK,QAAAjL,GAAA,IAAyB,GAAAkD,GAAA7C,EAAAL,EAAW,IAAAkD,IAAA,WAAAA,EAAA8K,OAAA/M,MAAAyN,EAAA0nB,IAAAlzB,EAAAk/B,uBAAApgC,EAAAo0B,EAAAn1B,EAAAnB,EAAA8K,EAAA1J,EAAAa,KAAA,CAA6F,GAAAqB,GAAA,GAAA09B,GAAA1K,EAAAt2B,EAAA8K,EAAA9K,EAAAqD,EAAArD,EAAAiD,EAAwCK,GAAAi/B,MAAAn/B,EAAA6wB,WAAsB,IAAAyD,GAAAj2B,EAAAvB,OAAW,KAAAw3B,MAAAj2B,EAAAvB,OAAAw3B,EAAA/uB,MAAgCorB,aAAA5zB,EAAA6P,QAAA1M,WAAiC69B,EAAAlgC,UAAAuhC,SAAA,SAAA/gC,GAA6C,OAAAO,GAAAV,KAAAS,EAAA,EAAAG,EAAAF,EAAAw/B,eAAsCz/B,EAAAG,EAAAG,OAAWN,GAAA,SAAAhC,GAAAmC,EAAAH,GAAAlB,EAAA,EAAAN,EAAAR,EAA4Bc,EAAAN,EAAA8B,OAAWxB,GAAA,GAAM,GAAAO,GAAAb,EAAAM,EAAW,IAAAY,IAAAL,EAAA,SAAkB,UAAStB,EAAAD,QAAAshC,IACt3GsB,+BAAA,IAAAC,2BAAA,IAAAC,uBAAA,IAAAxQ,eAAA,IAAAyQ,gCAAA,IAAAC,WAAA,GAAAC,kBAAA,GAAAzzB,yBAAA,EAAAohB,sBAAA,EAAAsS,aAAA,GAAA1S,IAAA,KAAmQ2S,IAAA,SAAAzgC,EAAAzC,EAAAD,GACtQ,YAAa,SAAAojC,GAAAxhC,GAAiC,MAAAy4B,IAA8BG,UAAUnsB,KAAA,SAAA7N,KAAA,WAAA6yB,WAAAzxB,MAA+C,GAAAy4B,GAAA33B,EAAA,uBAA0DzC,GAAAD,SAAgBs1B,eAAA8N,EAAA,GAAAnQ,mBAAAmQ,EAAA,MAC5MN,uBAAA,MAA2BO,IAAA,SAAA3gC,EAAAzC,EAAAD,GAC9B,YAA2F,IAAAiyB,GAAAvvB,EAAA,gBAAAwwB,EAAAxwB,EAAA,YAAA4gC,EAA9E,SAAA1hC,GAAyB,OAAOqK,KAAA,EAAAnJ,KAAAkJ,IAAA,EAAApK,EAAA,GAAAyH,IAAAvG,KAAAkJ,IAAA,EAAApK,EAAA,OAA8C,GAAoF3B,GAAAD,QAAA,SAAA4B,GAA2B,OAAAM,GAAAgxB,EAAAtxB,EAAAwM,OAAAjM,EAAAP,EAAAmN,eAAA/N,EAAA,EAAiDA,EAAAmB,EAAAK,OAAWxB,IAAA,OAAAoB,GAAAD,EAAAnB,GAAAN,EAAA,EAAuBA,EAAA0B,EAAAI,OAAW9B,IAAA,CAAK,GAAA2B,GAAAD,EAAA1B,EAAW2B,GAAAmB,EAAAV,KAAA8D,MAAAvE,EAAAmB,EAAAtB,GAAAG,EAAAe,EAAAN,KAAA8D,MAAAvE,EAAAe,EAAAlB,IAAAG,EAAAmB,EAAA8/B,EAAAr3B,KAAA5J,EAAAmB,EAAA8/B,EAAAj6B,KAAAhH,EAAAe,EAAAkgC,EAAAr3B,KAAA5J,EAAAe,EAAAkgC,EAAAj6B,MAAA4oB,EAAA0K,SAAA,wEAAoM,MAAAx6B,MACzfmwB,eAAA,IAAA0Q,WAAA,KAAiCO,IAAA,SAAA7gC,EAAAzC,EAAAD,GACpC,YAAa,IAAAq6B,GAAA33B,EAAA,wBAAA8gC,EAAAnJ,GAA0FG,UAAUh6B,KAAA,QAAA6N,KAAA,QAAAglB,WAAA,KAA2CpzB,GAAAD,QAAAwjC,IACzJV,uBAAA,MAA2BW,IAAA,SAAA/gC,EAAAzC,EAAAD,GAC9B,YAAa,SAAA0jC,GAAAvhC,GAAsB,OAAAi2B,EAAA,IAAAj2B,EAAA,OAAAA,EAAA,IAAAi2B,EAAA,IAAAj2B,EAAA,OAAAA,EAAA,KAAgF,GAAA4wB,GAAArwB,EAAA,uBAAAihC,EAAAjhC,EAAA,0BAAAihC,oBAAAvL,EAAA11B,EAAA,+BAAA01B,iBAAAzF,EAAAjwB,EAAA,uBAAAkhC,EAAA,SAAAzhC,EAAAD,EAAAxB,EAAAkB,GAAyRH,KAAAjB,KAAA2B,EAAAV,KAAA4M,KAAAnM,EAAAT,KAAAN,SAAAT,EAAAe,KAAA21B,eAAAx1B,EAA+DgiC,GAAAxiC,UAAAyiC,QAAA,WAA4C,gCAAApiC,KAAAjB,OAA2CojC,EAAAxiC,UAAA0iC,mBAAA,aAAyDF,EAAAxiC,UAAA2iC,YAAA,SAAA5hC,EAAAD,EAAAxB,EAAAkB,GAAwD,GAAA1B,GAAA0B,EAAAylB,KAAArmB,EAAAN,EAAAsjC,cAAAviC,KAAAN,UAA8CkmB,KAAA5lB,KAAA21B,eAAAt0B,KAAAoV,MAAAhY,MAA2C,WAAAuB,KAAA4M,KAAAlM,EAAA8hC,WAAA/hC,EAAAgiC,SAAA,KAAAziC,KAAAjB,MAAAQ,GAAAmB,EAAAgiC,UAAAjiC,EAAAgiC,SAAA,KAAAziC,KAAAjB,MAAAQ,GAA0G,IAAAojC,GAAA,SAAAjiC,EAAAD,EAAAxB,GAAyCe,KAAAjB,KAAA2B,EAAAV,KAAA4M,KAAAnM,EAAAT,KAAAN,SAAAT,EAAyC0jC,GAAAhjC,UAAAyiC,QAAA,WAAkD,UAASO,EAAAhjC,UAAA0iC,mBAAA,SAAA3hC,EAAAD,EAAAxB,EAAAkB,EAAA1B,EAAAc,GAAyE,GAAAqB,GAAAZ,KAAAF,EAAAY,EAAA6hC,cAAAviC,KAAAN,aAAA,GAAAH,EAAqD,cAAAS,KAAA4M,KAAA,OAAA/M,GAAAoiC,EAAAniC,GAAAa,EAAAR,EAAkDQ,EAAAlC,EAAIkC,IAAA,CAAK,GAAAJ,GAAAE,EAAAnB,IAAAqB,EAAeJ,GAAA,KAAAK,EAAA7B,KAAA,KAAAc,EAAA,GAAAU,EAAA,KAAAK,EAAA7B,KAAA,KAAAc,EAAA,OAAgD,CAAK,OAAAhB,GAAAsB,EAAYtB,EAAAJ,EAAII,IAAK4B,EAAAnB,IAAAT,GAAA,KAAA+B,EAAA7B,MAAAe,CAAwB,IAAAlB,GAAAK,EAAAe,KAAAN,SAAuBd,GAAAgJ,IAAAvG,KAAAuG,IAAAhJ,EAAAgJ,IAAA9H,KAAyB6iC,EAAAhjC,UAAA2iC,YAAA,SAAA5hC,EAAAD,GAA0DC,EAAAgiC,UAAAjiC,EAAAgiC,SAAA,KAAAziC,KAAAjB,KAAA,SAAgD,IAAA6jC,GAAA,SAAAliC,EAAAD,EAAAxB,EAAAkB,EAAA1B,GAAgDuB,KAAAjB,KAAA2B,EAAAV,KAAA4M,KAAAnM,EAAAT,KAAAN,SAAAT,EAAAe,KAAA21B,eAAAx1B,EAAAH,KAAA4lB,KAAAnnB,EAA2EmkC,GAAAjjC,UAAAyiC,QAAA,WAAqD,UAASQ,EAAAjjC,UAAA0iC,mBAAA,SAAA3hC,EAAAD,EAAAxB,EAAAkB,EAAA1B,EAAAc,GAA4E,GAAAqB,GAAAZ,KAAAF,EAAAY,EAAA6hC,cAAAviC,KAAAN,UAA4CkmB,KAAA5lB,KAAA4lB,MAAermB,GAAAM,EAAAa,EAAA6hC,cAAAviC,KAAAN,UAAqCkmB,KAAA5lB,KAAA4lB,KAAA,GAAiBrmB,EAAI,cAAAS,KAAA4M,KAAA,OAAAjM,GAAAshC,EAAAniC,GAAAS,EAAA0hC,EAAApiC,GAAAhB,EAAAsB,EAAiEtB,EAAAJ,EAAII,IAAA,CAAK,GAAAD,GAAA6B,EAAAnB,IAAAT,EAAeD,GAAA,KAAAgC,EAAA7B,KAAA,KAAA4B,EAAA,GAAA/B,EAAA,KAAAgC,EAAA7B,KAAA,KAAA4B,EAAA,GAAA/B,EAAA,KAAAgC,EAAA7B,KAAA,KAAAwB,EAAA,GAAA3B,EAAA,KAAAgC,EAAA7B,KAAA,KAAAwB,EAAA,OAAgG,CAAK,OAAAoB,GAAAxB,EAAYwB,EAAAlD,EAAIkD,IAAA,CAAK,GAAA5B,GAAAU,EAAAnB,IAAAqC,EAAe5B,GAAA,KAAAa,EAAA7B,KAAA,KAAAe,EAAAC,EAAA,KAAAa,EAAA7B,KAAA,KAAAc,EAA0C,GAAA6B,GAAAzC,EAAAe,KAAAN,SAAuBgC,GAAAkG,IAAAvG,KAAAuG,IAAAlG,EAAAkG,IAAA9H,EAAAD,KAA2B+iC,EAAAjjC,UAAA2iC,YAAA,SAAA5hC,EAAAD,EAAAxB,EAAAkB,GAAiE,GAAA1B,GAAA0B,EAAAylB,KAAArmB,EAAA2iC,EAAAliC,KAAA21B,eAAAt0B,KAAAoV,MAAAhY,KAAA,EAAAuB,KAAA4lB,KAAA5lB,KAAA4lB,KAAA,EAAgGllB,GAAAgiC,UAAAjiC,EAAAgiC,SAAA,KAAAziC,KAAAjB,KAAA,MAAAQ,GAAgD,IAAAsjC,GAAA,WAAoC7iC,KAAA8iC,WAAe9iC,KAAA+iC,SAAA,GAAmBF,GAAAG,cAAA,SAAAtiC,EAAAD,EAAAxB,GAAmD,OAAAkB,GAAA,GAAA0iC,GAAApkC,KAAAc,EAAA,EAAAqB,EAAAF,EAAAoxB,oBAAoEvyB,EAAAqB,EAAAG,OAAWxB,GAAA,GAAM,GAAAO,GAAAc,EAAArB,GAAAM,EAAAC,EAAAJ,SAAAiB,EAAAb,EAAA61B,iBAAA,EAAAp1B,EAAAT,EAAAf,MAAAc,EAAAsqB,QAAA1pB,EAAAmM,KAAA,QAAAud,QAAA,UAAAtrB,EAAA4B,EAAAwiC,qBAAApjC,GAAA+M,IAAqInM,GAAAyiC,4BAAArjC,IAAAM,EAAA2iC,QAAAviC,GAAA,GAAA4hC,GAAA5hC,EAAA1B,EAAAgB,EAAAc,GAAAR,EAAA4iC,UAAA,MAAAxiC,GAAAE,EAAA0iC,yBAAAtjC,IAAAM,EAAA2iC,QAAAviC,GAAA,GAAAoiC,GAAApiC,EAAA1B,EAAAgB,GAAAM,EAAA4iC,UAAA,MAAAxiC,EAAA9B,EAAA4I,MAAwMtI,KAAA,KAAAwB,EAAAqM,KAAA,UAAAglB,WAAA,UAAA/yB,EAAA,QAAsDsB,EAAA2iC,QAAAviC,GAAA,GAAAqiC,GAAAriC,EAAA1B,EAAAgB,EAAAc,EAAA1B,GAAAkB,EAAA4iC,UAAA,MAAAxiC,EAAA9B,EAAA4I,MAAoFtI,KAAA,KAAAwB,EAAAqM,KAAA,UAAAglB,WAAA,UAAA/yB,EAAA,OAAyD,MAAAsB,GAAAijC,iBAAA9R,EAAA7yB,GAAA0B,EAAAkjC,UAAA3iC,EAAAP,EAAA8gC,MAAAxgC,EAAAN,GAA6E0iC,EAAAS,gBAAA,WAAiD,GAAA5iC,GAAA,GAAAmiC,EAA+B,OAAAniC,GAAAoiC,QAAAS,MAAA,GAAApB,GAAA,iCAAAzhC,EAAAqiC,UAAA,WAAAriC,EAAAoiC,QAAAU,QAAA,GAAArB,GAAA,sCAAAzhC,EAAAqiC,UAAA,aAAAriC,GAAwMmiC,EAAAljC,UAAA8jC,8BAAA,WAAyE,GAAA/iC,GAAAV,KAAAS,IAAgB,QAAAxB,KAAAyB,GAAAoiC,QAAAriC,EAAAC,EAAAoiC,QAAA7jC,GAAAS,WAAiDkI,KAAA,IAAU,OAAAnH,IAASoiC,EAAAljC,UAAA0iC,mBAAA,SAAA3hC,EAAAD,GAAiE,GAAAxB,GAAAe,KAAAG,EAAAH,KAAA0jC,gBAAmC,QAAAvjC,EAAAwjC,gBAAA,CAA0B,GAAAllC,GAAA0B,EAAAY,MAAeZ,GAAA4H,OAAArH,EAAY,QAAAnB,KAAAN,GAAA6jC,QAAA7jC,EAAA6jC,QAAAvjC,GAAA8iC,mBAAApjC,EAAAgiC,MAAA9gC,EAAAlB,EAAA2kC,wBAAAnlC,EAAAiC,EAAAD,KAAmGoiC,EAAAljC,UAAAyiC,QAAA,WAAmD,GAAA1hC,GAAAV,KAAAS,IAAgB,QAAAxB,KAAAyB,GAAAoiC,QAAAriC,EAAA4G,KAAA2c,MAAAvjB,EAAAC,EAAAoiC,QAAA7jC,GAAAmjC,UAA8D,OAAA3hC,IAASoiC,EAAAljC,UAAA2iC,YAAA,SAAA5hC,EAAAD,EAAAxB,EAAAkB,GAA8D,GAAA1B,GAAAuB,IAAW,QAAAT,KAAAd,GAAAqkC,QAAArkC,EAAAqkC,QAAAvjC,GAAA+iC,YAAA5hC,EAAAD,EAAAxB,EAAAkB,IAAyD0iC,EAAAljC,UAAAgzB,UAAA,SAAAjyB,GAAsD,WAAAV,KAAA0jC,iBAAA3iC,OAAA,MAA8C4iB,MAAA3jB,KAAA0jC,iBAAA/Q,UAAAjyB,GAAAkM,KAAA5M,KAAA0jC,iBAAAzb,YAAA0K,YAAAkR,WAAA7jC,KAAA4jC,0BAAqIf,EAAApS,YAAA,SAAA/vB,EAAAD,EAAAxB,EAAAkB,GAAoD,GAAA1B,GAAAokC,EAAAG,cAAAtiC,EAAAD,EAAAxB,EAAgD,OAAAkB,KAAA1B,EAAA2kC,iBAAA9R,EAAAnxB,EAAAyM,KAAAmsB,SAAAt6B,EAAAilC,iBAAA,GAAAjlC,GAAA2kC,iBAAAjjC,EAAAwjB,OAAAllB,EAAAmlC,wBAAAzjC,EAAA0jC,YAAAplC,GAAiKokC,EAAAljC,UAAAizB,OAAA,SAAAlyB,GAAmDV,KAAA0jC,mBAAA1jC,KAAA8jC,kBAAA,GAAA5S,GAAAxwB,EAAAV,KAAA0jC,oBAA0Fb,EAAAljC,UAAA2gB,QAAA,WAAmDtgB,KAAA8jC,mBAAA9jC,KAAA8jC,kBAAAxjB,UAA0D,IAAA+Q,GAAA,SAAA3wB,EAAAD,EAAAxB,EAAAkB,GAA8C,GAAA1B,GAAAuB,IAAW,IAAAA,KAAAqyB,yBAAgClyB,EAAA,OAAAZ,GAAA,EAAAqB,EAAAH,EAAmBlB,EAAAqB,EAAAG,OAAWxB,GAAA,GAAM,GAAAO,GAAAc,EAAArB,EAAWd,GAAA4zB,sBAAAvyB,EAAA6G,IAAAk8B,EAAApS,YAAA/vB,EAAAZ,EAAAb,EAAAkB,EAAAL,EAAA6G,SAA8E,QAAA9G,GAAA,EAAAc,EAAAF,EAAqBZ,EAAAc,EAAAI,OAAWlB,GAAA,GAAM,GAAAU,GAAAI,EAAAd,GAAAhB,EAAAgkC,EAAAG,cAAAtiC,EAAAH,EAAAtB,EAAuDJ,GAAA6kC,iBAAA,GAAA7kC,GAAAukC,iBAAAvkC,EAAA+kC,wBAAA/kC,EAAA4kC,gCAAAhlC,EAAA4zB,sBAAA9xB,EAAAoG,IAAA9H,GAAwIwyB,GAAA1xB,UAAAuzB,oBAAA,SAAAxyB,EAAAD,GAAoE,GAAAxB,GAAAe,IAAW,QAAAG,KAAAlB,GAAAozB,sBAAApzB,EAAAozB,sBAAAlyB,GAAAkiC,mBAAA3hC,EAAAD,IAAwF4wB,EAAA1xB,UAAAgzB,UAAA,SAAAjyB,GAAyD,GAAAD,GAAAT,KAAAf,IAAgB,QAAAkB,KAAAM,GAAA4xB,sBAAA,CAAsC,GAAA5zB,GAAAgC,EAAA4xB,sBAAAlyB,GAAAwyB,UAAAjyB,EAA8CjC,KAAAQ,EAAAkB,GAAA1B,GAAY,MAAAQ,IAASoyB,EAAA1xB,UAAAL,IAAA,SAAAoB,GAAmD,MAAAV,MAAAqyB,sBAAA3xB,IAAqC2wB,EAAA1xB,UAAAizB,OAAA,SAAAlyB,GAAsD,GAAAD,GAAAT,IAAW,QAAAf,KAAAwB,GAAA4xB,sBAAA5xB,EAAA4xB,sBAAApzB,GAAA2zB,OAAAlyB,IAA0E2wB,EAAA1xB,UAAA2gB,QAAA,WAAsD,GAAA5f,GAAAV,IAAW,QAAAS,KAAAC,GAAA2xB,sBAAA3xB,EAAA2xB,sBAAA5xB,GAAA6f,WAA0E9hB,EAAAD,SAAiBskC,uBAAAxR,6BACh5L0S,sBAAA,GAAAC,8BAAA,GAAAC,yBAAA,IAAAC,sBAAA,KAAgHC,IAAA,SAAAljC,EAAAzC,EAAAD,GACnH,YAAa,IAAAq6B,GAAA33B,EAAA,wBAAAmjC,EAAAxL,GAAmGG,UAAUh6B,KAAA,QAAA6N,KAAA,QAAAglB,WAAA,IAAyC7yB,KAAA,gBAAA6N,KAAA,QAAAglB,WAAA,KAAmDpzB,GAAAD,QAAA6lC,IACnN/C,uBAAA,MAA2BgD,IAAA,SAAApjC,EAAAzC,EAAAD,GAC9B,YAAa,IAAAoJ,GAAA1G,EAAA,gBAAAi6B,EAAAvzB,EAAAuzB,SAAAxG,EAAArzB,KAAAkJ,IAAA,QAAA0mB,EAAA,SAAA9wB,OAAyH,KAAAA,UAAAH,KAAAsyB,SAAAnyB,EAAoC8wB,GAAAtxB,UAAAozB,eAAA,SAAA5yB,EAAAM,EAAAC,GAAuD,GAAAnB,GAAAS,KAAAsyB,SAAAtyB,KAAAsyB,SAAAvxB,OAAA,EAA4C,OAAAZ,GAAAu0B,GAAAwG,EAAA,+BAAAxG,EAAA,sBAAAv0B,KAAAZ,KAAAyzB,aAAA7yB,EAAA3B,EAAAD,QAAAm2B,2BAAAn1B,GAA8L+kC,aAAA7jC,EAAAM,OAAAwjC,gBAAA7jC,EAAAK,OAAAiyB,aAAA,EAAAC,gBAAA,GAAgFjzB,KAAAsyB,SAAAjrB,KAAA9H,OAA0B0xB,EAAAtxB,UAAAL,IAAA,WAAwC,MAAAU,MAAAsyB,UAAqBrB,EAAAtxB,UAAA2gB,QAAA,WAA4C,OAAAngB,GAAAH,KAAAS,EAAA,EAAAC,EAAAP,EAAAmyB,SAAgC7xB,EAAAC,EAAAK,OAAWN,GAAA,GAAM,GAAAlB,GAAAmB,EAAAD,EAAW,QAAAX,KAAAP,GAAAilC,KAAAjlC,EAAAilC,KAAA1kC,GAAAwgB,YAAyC9hB,EAAAD,SAAiB0yB,gBAAAyD,6BACjxB7D,eAAA,MAAmB4T,IAAA,SAAAxjC,EAAAzC,EAAAD,GACtB,YAAa,SAAA+yB,GAAA5wB,GAAkC,MAAAk4B,IAA8BG,QAAAr4B,EAAAgkC,UAAA,IAAwB,GAAA9L,GAAA33B,EAAA,uBAA0DzC,GAAAD,QAAA+yB,IAC5J+P,uBAAA,MAA2BsD,IAAA,SAAA1jC,EAAAzC,EAAAD,GAC9B,YAAa,IAAAqmC,GAAA,SAAA3lC,EAAAwB,EAAAlB,GAA+BS,KAAA6kC,OAAA5lC,EAAAe,KAAA8kC,IAAArkC,EAAAT,KAAA4lB,KAAArmB,EAAsCqlC,GAAAjlC,UAAAkE,MAAA,WAAsC,UAAA+gC,GAAA5kC,KAAA6kC,OAAA7kC,KAAA8kC,IAAA9kC,KAAA4lB,OAAsDgf,EAAAjlC,UAAAolC,OAAA,SAAA9lC,GAAyC,MAAAe,MAAA6D,QAAAmhC,QAAA/lC,IAA+B2lC,EAAAjlC,UAAAqE,IAAA,SAAA/E,GAAsC,MAAAe,MAAA6D,QAAAI,KAAAhF,IAA4B2lC,EAAAjlC,UAAAqlC,QAAA,SAAA/lC,GAA0C,GAAAwB,GAAAY,KAAAkJ,IAAA,EAAAtL,EAAAe,KAAA4lB,KAA8B,OAAA5lB,MAAA6kC,QAAApkC,EAAAT,KAAA8kC,KAAArkC,EAAAT,KAAA4lB,KAAA3mB,EAAAe,MAAmD4kC,EAAAjlC,UAAAsE,KAAA,SAAAhF,GAAuC,MAAAA,KAAA8lC,OAAA/kC,KAAA4lB,MAAA5lB,KAAA6kC,QAAA5lC,EAAA4lC,OAAA7kC,KAAA8kC,KAAA7lC,EAAA6lC,IAAA9kC,MAAwExB,EAAAD,QAAAqmC,OAC9hBK,IAAA,SAAAhkC,EAAAzC,EAAAD,GACJ,YAAa,IAAAgX,GAAAtU,EAAA,gBAAAsU,KAAA2vB,EAAA,SAAAzkC,EAAAlB,GAA2D,GAAAia,MAAA/Y,IAAA+Y,MAAAja,GAAA,SAAAsB,OAAA,2BAAAJ,EAAA,KAAAlB,EAAA,IAA+E,IAAAS,KAAAmlC,KAAA1kC,EAAAT,KAAAolC,KAAA7lC,EAAAS,KAAAolC,IAAA,IAAAplC,KAAAolC,KAAA,YAAAvkC,OAAA,6DAAmIqkC,GAAAvlC,UAAA4V,KAAA,WAAiC,UAAA2vB,GAAA3vB,EAAAvV,KAAAmlC,KAAA,SAAAnlC,KAAAolC,MAAoDF,EAAAvlC,UAAA0lC,QAAA,WAAqC,OAAArlC,KAAAmlC,IAAAnlC,KAAAolC,MAA0BF,EAAAvlC,UAAAkqB,SAAA,WAAsC,gBAAA7pB,KAAAmlC,IAAA,KAAAnlC,KAAAolC,IAAA,KAA2CF,EAAAvlC,UAAA2lC,SAAA,SAAA7kC,GAAuC,GAAAlB,GAAA,IAAAkB,EAAA,SAAAC,EAAAnB,EAAA8B,KAAAE,IAAAF,KAAAqM,GAAA,IAAA1N,KAAAolC,IAAwD,YAAAnkC,EAAA,wBAAAikC,GAAAllC,KAAAmlC,IAAAzkC,EAAAV,KAAAolC,IAAA7lC,GAAA,GAAA2lC,GAAAllC,KAAAmlC,IAAAzkC,EAAAV,KAAAolC,IAAA7lC,KAA6G2lC,EAAAn/B,QAAA,SAAAtF,GAA4B,GAAAA,YAAAykC,GAAA,MAAAzkC,EAAgC,IAAAuF,MAAAC,QAAAxF,IAAA,IAAAA,EAAAM,OAAA,UAAAmkC,GAAA3Z,OAAA9qB,EAAA,IAAA8qB,OAAA9qB,EAAA,IAA+E,KAAAuF,MAAAC,QAAAxF,IAAA,gBAAAA,IAAA,OAAAA,EAAA,UAAAykC,GAAA3Z,OAAA9qB,EAAA0kC,KAAA5Z,OAAA9qB,EAAA2kC,KAAkG,UAAAvkC,OAAA,oIAAmJrC,EAAAD,QAAA2mC,IACxkCrU,eAAA,IAAA0U,mBAAA,KAAyCC,IAAA,SAAAvkC,EAAAzC,EAAAD,GAC5C,YAAa,IAAA2mC,GAAAjkC,EAAA,aAAAwkC,EAAA,SAAAhlC,EAAAlB,GAA2DkB,IAAAlB,EAAAS,KAAA0lC,aAAAjlC,GAAAklC,aAAApmC,GAAA,IAAAkB,EAAAM,OAAAf,KAAA0lC,cAAAjlC,EAAA,GAAAA,EAAA,KAAAklC,cAAAllC,EAAA,GAAAA,EAAA,KAAAT,KAAA0lC,aAAAjlC,EAAA,IAAAklC,aAAAllC,EAAA,KAA8JglC,GAAA9lC,UAAAgmC,aAAA,SAAAllC,GAAgD,MAAAT,MAAA4lC,IAAAnlC,YAAAykC,GAAA,GAAAA,GAAAzkC,EAAA0kC,IAAA1kC,EAAA2kC,KAAAF,EAAAn/B,QAAAtF,GAAAT,MAAmFylC,EAAA9lC,UAAA+lC,aAAA,SAAAjlC,GAAiD,MAAAT,MAAA6lC,IAAAplC,YAAAykC,GAAA,GAAAA,GAAAzkC,EAAA0kC,IAAA1kC,EAAA2kC,KAAAF,EAAAn/B,QAAAtF,GAAAT,MAAmFylC,EAAA9lC,UAAAgV,OAAA,SAAAlU,GAA2C,GAAAlB,GAAAY,EAAAL,EAAAE,KAAA6lC,IAAA5mC,EAAAe,KAAA4lC,GAA8B,IAAAnlC,YAAAykC,GAAA3lC,EAAAkB,EAAAN,EAAAM,MAA+B,CAAK,KAAAA,YAAAglC,IAAA,MAAAz/B,OAAAC,QAAAxF,KAAAmb,MAAA5V,MAAAC,SAAAjG,KAAA2U,OAAA8wB,EAAA1/B,QAAAtF,IAAAT,KAAA2U,OAAAuwB,EAAAn/B,QAAAtF,IAAAT,IAAwJ,IAAAT,EAAAkB,EAAAolC,IAAA1lC,EAAAM,EAAAmlC,KAAArmC,IAAAY,EAAA,MAAAH,MAAsC,MAAAF,IAAAb,GAAAa,EAAAqlC,IAAA9jC,KAAAmJ,IAAAjL,EAAA4lC,IAAArlC,EAAAqlC,KAAArlC,EAAAslC,IAAA/jC,KAAAmJ,IAAAjL,EAAA6lC,IAAAtlC,EAAAslC,KAAAnmC,EAAAkmC,IAAA9jC,KAAAuG,IAAAzH,EAAAglC,IAAAlmC,EAAAkmC,KAAAlmC,EAAAmmC,IAAA/jC,KAAAuG,IAAAzH,EAAAilC,IAAAnmC,EAAAmmC,OAAAplC,KAAA6lC,IAAA,GAAAX,GAAA3lC,EAAA4lC,IAAA5lC,EAAA6lC,KAAAplC,KAAA4lC,IAAA,GAAAV,GAAA/kC,EAAAglC,IAAAhlC,EAAAilC,MAAAplC,MAAuMylC,EAAA9lC,UAAAmmC,UAAA,WAA6C,UAAAZ,IAAAllC,KAAA6lC,IAAAV,IAAAnlC,KAAA4lC,IAAAT,KAAA,GAAAnlC,KAAA6lC,IAAAT,IAAAplC,KAAA4lC,IAAAR,KAAA,IAA+EK,EAAA9lC,UAAAomC,aAAA,WAAgD,MAAA/lC,MAAA6lC,KAAgBJ,EAAA9lC,UAAAqmC,aAAA,WAAgD,MAAAhmC,MAAA4lC,KAAgBH,EAAA9lC,UAAAsmC,aAAA,WAAgD,UAAAf,GAAAllC,KAAAkmC,UAAAlmC,KAAAmmC,aAAkDV,EAAA9lC,UAAAymC,aAAA,WAAgD,UAAAlB,GAAAllC,KAAAqmC,UAAArmC,KAAAsmC,aAAkDb,EAAA9lC,UAAAumC,QAAA,WAA2C,MAAAlmC,MAAA6lC,IAAAV,KAAoBM,EAAA9lC,UAAA2mC,SAAA,WAA4C,MAAAtmC,MAAA6lC,IAAAT,KAAoBK,EAAA9lC,UAAA0mC,QAAA,WAA2C,MAAArmC,MAAA4lC,IAAAT,KAAoBM,EAAA9lC,UAAAwmC,SAAA,WAA4C,MAAAnmC,MAAA4lC,IAAAR,KAAoBK,EAAA9lC,UAAA0lC,QAAA,WAA2C,OAAArlC,KAAA6lC,IAAAR,UAAArlC,KAAA4lC,IAAAP,YAA8CI,EAAA9lC,UAAAkqB,SAAA,WAA4C,sBAAA7pB,KAAA6lC,IAAAhc,WAAA,KAAA7pB,KAAA4lC,IAAA/b,WAAA,KAAuE4b,EAAA1/B,QAAA,SAAAtF,GAAkC,OAAAA,eAAAglC,GAAAhlC,EAAA,GAAAglC,GAAAhlC,IAA0DjC,EAAAD,QAAAknC,IACl8Dc,YAAA,KAAeC,IAAA,SAAAvlC,EAAAzC,EAAAD,GAClB,YAAa,IAAA2mC,GAAAjkC,EAAA,aAAA2C,EAAA3C,EAAA,0BAAA2jC,EAAA3jC,EAAA,gBAAAuvB,EAAAvvB,EAAA,gBAAAwlC,EAAAxlC,EAAA,kCAAAylC,EAAAzlC,EAAA,wBAAAwwB,EAAAxwB,EAAA,kBAAA0lC,EAAA1lC,EAAA,qBAAAyB,EAAAikC,EAAAjkC,KAAAQ,EAAAyjC,EAAAzjC,KAAAN,EAAA+jC,EAAA/jC,KAAAgkC,EAAA,SAAAnmC,EAAAxB,EAAAR,GAA6XuB,KAAAwgC,SAAA,IAAAxgC,KAAA6mC,uBAAA,KAAApoC,KAAAuB,KAAA8mC,SAAArmC,GAAA,EAAAT,KAAA+mC,SAAA9nC,GAAA,GAAAe,KAAAgnC,WAAA,mBAAAhnC,KAAAiH,MAAA,EAAAjH,KAAAkH,OAAA,EAAAlH,KAAAinC,QAAA,GAAA/B,GAAA,KAAAllC,KAAA4lB,KAAA,EAAA5lB,KAAA0F,MAAA,EAAA1F,KAAAknC,KAAA,kBAAAlnC,KAAAmnC,OAAA,EAAAnnC,KAAAonC,aAAA,GAAiRC,GAAqB1gB,WAAU5R,WAAWuyB,qBAAqBC,aAAaC,eAAe5+B,QAAQg4B,WAAW6G,SAASC,OAAO9hB,QAAQ+hB,UAAUC,cAAc7lC,KAAKJ,KAAKwU,SAAWkxB,GAAA1gB,QAAArnB,IAAA,WAA0C,MAAAU,MAAA8mC,UAAqBO,EAAA1gB,QAAAzN,IAAA,SAAAzY,GAA4CT,KAAA8mC,WAAArmC,IAAAT,KAAA8mC,SAAArmC,EAAAT,KAAA4lB,KAAAvkB,KAAAuG,IAAA5H,KAAA4lB,KAAAnlB,KAAqE4mC,EAAAtyB,QAAAzV,IAAA,WAA2C,MAAAU,MAAA+mC,UAAqBM,EAAAtyB,QAAAmE,IAAA,SAAAzY,GAA4CT,KAAA+mC,WAAAtmC,IAAAT,KAAA+mC,SAAAtmC,EAAAT,KAAA4lB,KAAAvkB,KAAAmJ,IAAAxK,KAAA4lB,KAAAnlB,KAAqE4mC,EAAAC,kBAAAhoC,IAAA,WAAqD,MAAAU,MAAA6mC,oBAA+BQ,EAAAE,UAAAjoC,IAAA,WAA6C,MAAAU,MAAAwgC,SAAAxgC,KAAA+C,OAAgCskC,EAAAG,YAAAloC,IAAA,WAA+C,MAAAU,MAAA4I,KAAAnE,KAAA,IAAyB4iC,EAAAz+B,KAAAtJ,IAAA,WAAwC,UAAAsE,GAAA5D,KAAAiH,MAAAjH,KAAAkH,SAAyCmgC,EAAAzG,QAAAthC,IAAA,WAA2C,OAAAU,KAAA0F,MAAArE,KAAAqM,GAAA,KAA8B25B,EAAAzG,QAAA1nB,IAAA,SAAAzY,GAA4C,GAAAxB,IAAAuxB,EAAAjb,KAAA9U,GAAA,SAAAY,KAAAqM,GAAA,GAAyC1N,MAAA0F,QAAAzG,IAAAe,KAAAonC,aAAA,EAAApnC,KAAA0F,MAAAzG,EAAAe,KAAA6nC,gBAAA7nC,KAAA8nC,eAAAllC,EAAAC,SAAAD,EAAAE,OAAA9C,KAAA8nC,eAAA9nC,KAAA8nC,eAAA9nC,KAAA0F,SAA0K2hC,EAAAI,MAAAnoC,IAAA,WAAyC,MAAAU,MAAAmnC,OAAA9lC,KAAAqM,GAAA,KAA+B25B,EAAAI,MAAAvuB,IAAA,SAAAzY,GAA0C,GAAAxB,GAAAuxB,EAAAuX,MAAAtnC,EAAA,UAAAY,KAAAqM,EAAqC1N,MAAAmnC,SAAAloC,IAAAe,KAAAonC,aAAA,EAAApnC,KAAAmnC,OAAAloC,EAAAe,KAAA6nC,kBAA0ER,EAAAK,IAAApoC,IAAA,WAAuC,MAAAU,MAAAknC,KAAA7lC,KAAAqM,GAAA,KAA6B25B,EAAAK,IAAAxuB,IAAA,SAAAzY,GAAwCA,EAAAY,KAAAuG,IAAA,IAAAvG,KAAAmJ,IAAA,GAAA/J,IAAAT,KAAAknC,OAAAzmC,IAAAT,KAAAonC,aAAA,EAAApnC,KAAAknC,KAAAzmC,EAAA,IAAAY,KAAAqM,GAAA1N,KAAA6nC,kBAAiHR,EAAAzhB,KAAAtmB,IAAA,WAAwC,MAAAU,MAAAgoC,OAAkBX,EAAAzhB,KAAA1M,IAAA,SAAAzY,GAAyC,GAAAxB,GAAAoC,KAAAmJ,IAAAnJ,KAAAuG,IAAAnH,EAAAT,KAAA2mB,SAAA3mB,KAAA+U,QAAsD/U,MAAAgoC,QAAA/oC,IAAAe,KAAAonC,aAAA,EAAApnC,KAAAgoC,MAAA/oC,EAAAe,KAAA+C,MAAA/C,KAAAioC,UAAAhpC,GAAAe,KAAAkoC,SAAA7mC,KAAAoV,MAAAxX,GAAAe,KAAAmoC,aAAAlpC,EAAAe,KAAAkoC,SAAAloC,KAAAooC,aAAApoC,KAAA6nC,kBAAqLR,EAAAM,OAAAroC,IAAA,WAA0C,MAAAU,MAAAinC,SAAoBI,EAAAM,OAAAzuB,IAAA,SAAAzY,GAA2CA,EAAA2kC,MAAAplC,KAAAinC,QAAA7B,KAAA3kC,EAAA0kC,MAAAnlC,KAAAinC,QAAA9B,MAAAnlC,KAAAonC,aAAA,EAAApnC,KAAAinC,QAAAxmC,EAAAT,KAAAooC,aAAApoC,KAAA6nC,kBAAgIjB,EAAAjnC,UAAA0oC,kBAAA,SAAA5nC,GAAmD,OAAAA,EAAA6nC,UAAAjnC,KAAA8D,MAAA9D,KAAAoV,OAAAzW,KAAA4lB,KAAA5lB,KAAAuoC,UAAAvoC,KAAAwgC,SAAA//B,EAAA+/B,YAA8FoG,EAAAjnC,UAAA6oC,6BAAA,SAAA/nC,GAA8D,OAAAxB,GAAAe,KAAAyoC,gBAAA,GAAA7kC,GAAA,QAAAnF,EAAAuB,KAAAyoC,gBAAA,GAAA7kC,GAAA5D,KAAAiH,MAAA,MAAA9G,EAAAkB,KAAAoV,MAAAxX,EAAA4lC,QAAAnkC,EAAAW,KAAAoV,MAAAhY,EAAAomC,QAAAtlC,GAAAkB,GAAAX,EAAAK,EAA2JL,GAAAY,EAAKZ,IAAA,IAAAA,GAAAP,EAAA8H,KAAA,GAAAq/B,GAAAjmC,EAAA+I,EAAA/I,EAAAsB,EAAAtB,EAAAkB,EAAA7B,GAAgD,OAAAP,IAASqnC,EAAAjnC,UAAA+oC,cAAA,SAAAjoC,GAA+C,GAAAxB,GAAAe,KAAAqoC,kBAAA5nC,GAAAhC,EAAAQ,CAAoC,aAAAwB,EAAAkoC,SAAA1pC,EAAAwB,EAAAkoC,QAAA,aAA4C,KAAAloC,EAAAmoC,SAAA3pC,EAAAwB,EAAAmoC,UAAA3pC,EAAAwB,EAAAmoC,QAA+C,IAAAzoC,GAAAH,KAAAyoC,gBAAAzoC,KAAAwnC,YAAAvoC,GAAAyB,EAAA,GAAAkD,GAAAzD,EAAA0kC,OAAA,GAAA1kC,EAAA2kC,IAAA,IAAAvlC,GAAAS,KAAAyoC,gBAAA,GAAA7kC,GAAA,KAAA3E,GAAAe,KAAAyoC,gBAAA,GAAA7kC,GAAA5D,KAAAiH,MAAA,GAAAhI,GAAAe,KAAAyoC,gBAAA,GAAA7kC,GAAA5D,KAAAiH,MAAAjH,KAAAkH,QAAAjI,GAAAe,KAAAyoC,gBAAA,GAAA7kC,GAAA,EAAA5D,KAAAkH,QAAAjI,GAAuR,OAAAynC,GAAAmC,MAAA5pC,EAAAM,EAAAkB,EAAAqoC,kBAAArqC,EAAAQ,EAAAe,KAAA6mC,oBAAA51B,KAAA,SAAAxQ,EAAAxB,GAA+F,MAAAyB,GAAA8E,KAAA/E,GAAAC,EAAA8E,KAAAvG,MAA6B2nC,EAAAjnC,UAAAoI,OAAA,SAAAtH,EAAAxB,GAA0Ce,KAAAiH,MAAAxG,EAAAT,KAAAkH,OAAAjI,EAAAe,KAAA+oC,iBAAA,EAAAtoC,GAAA,EAAAxB,GAAAe,KAAAooC,aAAApoC,KAAA6nC,iBAAkGR,EAAAO,WAAAtoC,IAAA,WAA8C,MAAAU,MAAAonC,aAAwBR,EAAAjnC,UAAAsoC,UAAA,SAAAxnC,GAA2C,MAAAY,MAAAkJ,IAAA,EAAA9J,IAAqBmmC,EAAAjnC,UAAA4oC,UAAA,SAAA9nC,GAA2C,MAAAY,MAAA6S,IAAAzT,GAAAY,KAAAoY,KAA4BmtB,EAAAjnC,UAAAmU,QAAA,SAAArT,GAAyC,UAAAmD,GAAA5D,KAAA+lB,KAAAtlB,EAAA0kC,KAAAnlC,KAAAgmB,KAAAvlB,EAAA2kC,OAAoDwB,EAAAjnC,UAAAqpC,UAAA,SAAAvoC,GAA2C,UAAAykC,GAAAllC,KAAAmmB,KAAA1lB,EAAAsB,GAAA/B,KAAAomB,KAAA3lB,EAAAkB,KAAiD0lC,EAAAtlC,EAAAzC,IAAA,WAAqC,MAAAU,MAAA+lB,KAAA/lB,KAAA2nC,OAAAxC,MAAkCkC,EAAA1lC,EAAArC,IAAA,WAAqC,MAAAU,MAAAgmB,KAAAhmB,KAAA2nC,OAAAvC,MAAkCiC,EAAAlxB,MAAA7W,IAAA,WAAyC,UAAAsE,GAAA5D,KAAA+B,EAAA/B,KAAA2B,IAAgCilC,EAAAjnC,UAAAomB,KAAA,SAAAtlB,GAAsC,WAAAA,GAAAT,KAAAunC,UAAA,KAAiCX,EAAAjnC,UAAAqmB,KAAA,SAAAvlB,GAAsC,eAAAY,KAAAqM,GAAArM,KAAA6S,IAAA7S,KAAAkB,IAAAlB,KAAAqM,GAAA,EAAAjN,EAAAY,KAAAqM,GAAA,OAAA1N,KAAAunC,UAAA,KAAuFX,EAAAjnC,UAAAwmB,KAAA,SAAA1lB,GAAsC,WAAAA,EAAAT,KAAAunC,UAAA,KAAgCX,EAAAjnC,UAAAymB,KAAA,SAAA3lB,GAAsC,GAAAxB,GAAA,QAAAwB,EAAAT,KAAAunC,SAA+B,YAAAlmC,KAAAqM,GAAArM,KAAAsM,KAAAtM,KAAAuM,IAAA3O,EAAAoC,KAAAqM,GAAA,UAAyDk5B,EAAAjnC,UAAAspC,mBAAA,SAAAxoC,EAAAxB,GAAsD,GAAAR,GAAAuB,KAAAyoC,gBAAAxpC,GAAAgF,KAAAjE,KAAAyoC,gBAAAzoC,KAAAwnC,aAA2ExnC,MAAA2nC,OAAA3nC,KAAAkpC,mBAAAlpC,KAAAmpC,mBAAA1oC,GAAAwD,KAAAxF,IAAAuB,KAAA6mC,qBAAA7mC,KAAA2nC,OAAA3nC,KAAA2nC,OAAApyB,SAAkIqxB,EAAAjnC,UAAAypC,cAAA,SAAA3oC,GAA+C,MAAAT,MAAAqpC,gBAAArpC,KAAAmpC,mBAAA1oC,KAAwDmmC,EAAAjnC,UAAA2pC,cAAA,SAAA7oC,GAA+C,MAAAT,MAAAkpC,mBAAAlpC,KAAAyoC,gBAAAhoC,KAAwDmmC,EAAAjnC,UAAAwpC,mBAAA,SAAA1oC,GAAoD,UAAAmkC,GAAA5kC,KAAA+lB,KAAAtlB,EAAA0kC,KAAAnlC,KAAAwgC,SAAAxgC,KAAAgmB,KAAAvlB,EAAA2kC,KAAAplC,KAAAwgC,SAAAxgC,KAAA4lB,MAAAmf,OAAA/kC,KAAAkoC,WAAqHtB,EAAAjnC,UAAAupC,mBAAA,SAAAzoC,GAAoD,GAAAxB,GAAAwB,EAAAskC,OAAA/kC,KAAA4lB,KAA0B,WAAAsf,GAAAllC,KAAAmmB,KAAAlnB,EAAA4lC,OAAA7kC,KAAAwgC,UAAAxgC,KAAAomB,KAAAnnB,EAAA6lC,IAAA9kC,KAAAwgC,YAAoFoG,EAAAjnC,UAAA8oC,gBAAA,SAAAhoC,EAAAxB,OAAmD,KAAAA,MAAAe,KAAAkoC,SAA8B,IAAAzpC,IAAAgC,EAAAsB,EAAAtB,EAAAkB,EAAA,KAAAxB,GAAAM,EAAAsB,EAAAtB,EAAAkB,EAAA,IAAoCe,GAAAC,cAAAlE,IAAAuB,KAAAupC,oBAAA7mC,EAAAC,cAAAxC,IAAAH,KAAAupC,mBAAgG,IAAA7oC,GAAAjC,EAAA,GAAAc,EAAAY,EAAA,GAAAL,EAAArB,EAAA,GAAAiC,EAAAE,EAAAT,EAAA,GAAAZ,EAAAmC,EAAAjD,EAAA,GAAAiC,EAAA7B,EAAAsB,EAAA,GAAAZ,EAAAX,EAAAH,EAAA,GAAAiC,EAAAb,EAAAM,EAAA,GAAAZ,EAAAb,EAAAE,IAAAiB,EAAA,KAAAjB,IAAAiB,EAAAjB,EAA8F,WAAAgmC,GAAA6B,EAAA3mC,EAAAc,EAAAlC,GAAAsB,KAAAwgC,SAAAiG,EAAA/kC,EAAA7C,EAAAH,GAAAsB,KAAAwgC,SAAAxgC,KAAA4lB,MAAAof,QAAA/lC,IAAoG2nC,EAAAjnC,UAAA0pC,gBAAA,SAAA5oC,GAAiD,GAAAxB,GAAAwB,EAAAskC,OAAA/kC,KAAA4lB,MAAAnnB,GAAAQ,EAAA4lC,OAAA7kC,KAAAwgC,SAAAvhC,EAAA6lC,IAAA9kC,KAAAwgC,SAAA,IAA6E,OAAA99B,GAAAC,cAAAlE,IAAAuB,KAAAwpC,aAAA,GAAA5lC,GAAAnF,EAAA,GAAAA,EAAA,GAAAA,EAAA,GAAAA,EAAA,KAA+EmoC,EAAAjnC,UAAA8pC,mBAAA,SAAAhpC,EAAAxB,GAAsD,GAAAR,GAAAgC,EAAAipC,aAAAzqC,GAAAkB,EAAAH,KAAAunC,UAAAvnC,KAAAioC,UAAAxpC,EAAAmnB,MAAAllB,EAAAwC,EAAAC,SAAA,GAAAmG,cAAA,IAAsG,OAAApG,GAAAE,UAAA1C,KAAAjC,EAAAomC,OAAA1kC,EAAA1B,EAAAqmC,IAAA3kC,EAAA,IAAA+C,EAAAH,MAAArC,KAAAP,EAAAsxB,EAAAtxB,EAAAsxB,EAAA,IAAAvuB,EAAAG,SAAA3C,EAAAV,KAAA2pC,WAAAjpC,GAAA,GAAAU,cAAAV,IAA+IkmC,EAAAjnC,UAAAiqC,qBAAA,SAAAnpC,GAAsD,GAAAxB,GAAAe,KAAAypC,mBAAAhpC,EAAAq/B,MAAAr/B,EAAAopC,eAAAprC,GAAAgC,EAAA+/B,SAAA,EAAA//B,EAAA+/B,SAAA,MAAyF,OAAA99B,GAAAC,cAAAlE,IAAAQ,GAAAR,EAAA,IAAsCmoC,EAAAjnC,UAAAyoC,WAAA,WAA2C,GAAApoC,KAAA2nC,QAAA3nC,KAAAiH,OAAAjH,KAAAkH,SAAAlH,KAAA8pC,cAAA,CAA8D9pC,KAAA8pC,eAAA,CAAsB,IAAArpC,GAAAxB,EAAAR,EAAA0B,EAAAO,GAAA,GAAAnB,EAAA,GAAAO,GAAA,IAAAc,EAAA,IAAAc,EAAA1B,KAAA4I,KAAA/J,EAAAmB,KAAAonC,WAAmE,IAAApnC,KAAAgnC,SAAA,CAAkB,GAAApoC,GAAAoB,KAAAgnC,QAAoBtmC,GAAAV,KAAAgmB,KAAApnB,EAAA,IAAAW,EAAAS,KAAAgmB,KAAApnB,EAAA,IAAA6B,EAAAlB,EAAAmB,EAAAgB,EAAAC,EAAAD,EAAAC,GAAApC,EAAAmB,GAAA,EAA0D,GAAAV,KAAA+pC,SAAA,CAAkB,GAAAlqC,GAAAG,KAAA+pC,QAAoBjqC,GAAAE,KAAA+lB,KAAAlmB,EAAA,IAAAe,EAAAZ,KAAA+lB,KAAAlmB,EAAA,IAAAZ,EAAA2B,EAAAd,EAAA4B,EAAAK,EAAAL,EAAAK,GAAAnB,EAAAd,GAAA,EAA0D,GAAApB,GAAA2C,KAAAuG,IAAA3I,GAAA,EAAAwB,GAAA,EAA0B,IAAA/B,EAAA,MAAAsB,MAAA2nC,OAAA3nC,KAAAgpC,UAAA,GAAAplC,GAAA3E,GAAA2B,EAAAd,GAAA,EAAAE,KAAA+B,EAAAtB,GAAAlB,EAAAmB,GAAA,EAAAV,KAAA2B,IAAA3B,KAAA4lB,MAAA5lB,KAAAuoC,UAAA7pC,GAAAsB,KAAAonC,YAAAvoC,OAAAmB,KAAA8pC,eAAA,EAAiK,IAAA9pC,KAAAgnC,SAAA,CAAkB,GAAArmC,GAAAX,KAAA2B,EAAApB,EAAAmB,EAAAC,EAAA,CAAqBhB,GAAAJ,EAAAG,IAAAP,EAAAO,EAAAH,GAAAI,EAAAJ,EAAAhB,IAAAY,EAAAZ,EAAAgB,GAA8B,GAAAP,KAAA+pC,SAAA,CAAkB,GAAAjrC,GAAAkB,KAAA+B,EAAAhC,EAAA2B,EAAAK,EAAA,CAAqBjD,GAAAiB,EAAAD,IAAArB,EAAAqB,EAAAC,GAAAjB,EAAAiB,EAAAa,IAAAnC,EAAAmC,EAAAb,OAA8B,KAAAtB,OAAA,KAAA0B,IAAAH,KAAA2nC,OAAA3nC,KAAAgpC,UAAA,GAAAplC,OAAA,KAAAnF,IAAAuB,KAAA+B,MAAA,KAAA5B,IAAAH,KAAA2B,KAAA3B,KAAAonC,YAAAvoC,EAAAmB,KAAA8pC,eAAA,IAAmJlD,EAAAjnC,UAAAkoC,cAAA,WAA8C,GAAA7nC,KAAAkH,OAAA,CAAgBlH,KAAAgqC,uBAAA,GAAA3oC,KAAAkB,IAAAvC,KAAAknC,KAAA,GAAAlnC,KAAAkH,MAAiE,IAAAzG,GAAAT,KAAAknC,KAAA,EAAAjoC,EAAAoC,KAAAqM,GAAA,EAAA1N,KAAAmnC,OAAA1oC,EAAA4C,KAAAC,IAAAb,GAAAT,KAAAgqC,uBAAA3oC,KAAAC,IAAAD,KAAAqM,GAAAzO,EAAAwB,GAAAN,EAAAkB,KAAAE,IAAAF,KAAAqM,GAAA,EAAA1N,KAAAmnC,QAAA1oC,EAAAuB,KAAAgqC,uBAAAtpC,EAAA,KAAAP,EAAAZ,EAAA,GAAA+J,cAAA,GAA0MpG,GAAAI,YAAA/D,EAAAS,KAAAknC,KAAAlnC,KAAAiH,MAAAjH,KAAAkH,OAAA,EAAAxG,GAAAwC,EAAAH,MAAAxD,KAAA,SAAA2D,EAAAE,UAAA7D,KAAA,KAAAS,KAAAgqC,yBAAA9mC,EAAAK,QAAAhE,IAAAS,KAAAmnC,QAAAjkC,EAAAM,QAAAjE,IAAAS,KAAA0F,OAAAxC,EAAAE,UAAA7D,MAAAS,KAAA+B,GAAA/B,KAAA2B,EAAA,GAA4O,IAAA7B,GAAAE,KAAAunC,WAAA,EAAAlmC,KAAAqM,GAAA,QAAArM,KAAAoK,IAAApK,KAAAE,IAAAvB,KAAA2nC,OAAAvC,KAAA/jC,KAAAqM,GAAA,OAA2F,IAAAxK,EAAAH,MAAAxD,KAAA,IAAAO,EAAA,IAAAE,KAAA2pC,WAAApqC,IAAA2D,EAAAL,SAAAK,EAAAH,MAAAxD,KAAAS,KAAAiH,MAAA,GAAAjH,KAAAkH,OAAA,MAAAhE,EAAAE,UAAA7D,KAAA,SAAAS,KAAAwpC,YAAAtmC,EAAAG,SAAA,GAAAiG,cAAA,IAAA/J,EAAAS,KAAA2pC,cAAApqC,EAAA2D,EAAAO,OAAA,GAAA6F,cAAA,IAAAtJ,KAAAwpC,cAAA,SAAA3oC,OAAA,0BAAsTb,MAAAupC,mBAAAhqC,IAA2BL,OAAAwd,iBAAAkqB,EAAAjnC,UAAA0nC,GAAA7oC,EAAAD,QAAAqoC,IACxhRqD,iBAAA,GAAAC,uBAAA,IAAAC,iCAAA,IAAAtZ,eAAA,IAAAuZ,eAAA,GAAA7D,YAAA,GAAA8D,oBAAA,EAAAt8B,yBAAA,IAAyLu8B,IAAA,SAAArpC,EAAAzC,EAAAD,GAC5L,YAAa,IAAA4yB,GAAA,SAAAhxB,EAAAO,GAA8BV,KAAAuqC,GAAApqC,EAAAH,KAAAuI,OAAApI,EAAAqqC,mBAAA,KAAArqC,EAAAsqC,uBAAAtqC,EAAAsqC,qBAAAtqC,EAAAuqC,aAAA,4BAAAvqC,EAAAsqC,sBAAAtqC,EAAAsqC,qBAAAE,mBAAA,MAAAxqC,EAAAyqC,WAAAzqC,EAAA0qC,qBAAA7qC,KAAAuI,QAAApI,EAAA2qC,WAAA3qC,EAAA0qC,qBAAAnqC,EAAAuX,YAAA9X,EAAA4qC,mBAAArqC,GAAAuX,YAA2VkZ,GAAAxxB,UAAAwc,KAAA,WAAsCnc,KAAAuqC,GAAAK,WAAA5qC,KAAAuqC,GAAAM,qBAAA7qC,KAAAuI,SAA6D4oB,EAAAxxB,UAAA2gB,QAAA,WAA0CtgB,KAAAuI,SAAAvI,KAAAuqC,GAAAS,aAAAhrC,KAAAuI,cAAAvI,MAAAuI,SAAoE/J,EAAAD,QAAA4yB,OACnlB8Z,IAAA,SAAAhqC,EAAAzC,EAAAD,GACJ,YAAa,IAAA2sC,IAAmBC,KAAA,OAAAC,MAAA,gBAAAC,MAAA,QAAAC,OAAA,iBAAAC,MAAA,MAAAC,OAAA,eAAAC,QAAA,SAA0Hva,EAAA,SAAAzwB,EAAAN,EAAAO,GAA8BV,KAAAe,OAAAZ,EAAAY,OAAAf,KAAA0rC,WAAAvrC,EAAA44B,QAAA/4B,KAAA2rC,SAAAxrC,EAAAwjC,gBAAA3jC,KAAA4rC,YAAAlrC,EAAAV,KAAAuqC,GAAA9pC,EAAAT,KAAAuI,OAAA9H,EAAA+pC,eAAAxqC,KAAAuqC,GAAAK,WAAAnqC,EAAAorC,aAAA7rC,KAAAuI,QAAAvI,KAAAuqC,GAAAO,WAAArqC,EAAAorC,aAAA1rC,EAAA8X,YAAAjY,KAAA4rC,YAAAnrC,EAAAqrC,aAAArrC,EAAAsqC,aAAA/qC,KAAA4rC,mBAAAzrC,GAAA8X,YAA+TiZ,GAAAvxB,UAAAwc,KAAA,WAAuCnc,KAAAuqC,GAAAK,WAAA5qC,KAAAuqC,GAAAsB,aAAA7rC,KAAAuI,SAAqD2oB,EAAAvxB,UAAAosC,WAAA,SAAAtrC,GAA+CT,KAAAmc,OAAAnc,KAAAuqC,GAAAyB,cAAAhsC,KAAAuqC,GAAAsB,aAAA,EAAAprC,EAAAwX,cAAwEiZ,EAAAvxB,UAAAssC,iBAAA,SAAAxrC,EAAAN,GAAuD,OAAAO,GAAAV,KAAAvB,EAAA,EAAmBA,EAAAuB,KAAA0rC,WAAA3qC,OAAyBtC,IAAA,CAAK,GAAA8B,GAAAG,EAAAgrC,WAAAjtC,GAAAqB,EAAAK,EAAAurC,WAAAnrC,EAAAxB,UAA6C,KAAAe,GAAAW,EAAAyrC,wBAAApsC,KAA0CoxB,EAAAvxB,UAAAwsC,wBAAA,SAAA1rC,EAAAN,EAAAO,GAAgE,OAAAjC,GAAAuB,KAAAO,EAAA,EAAmBA,EAAAP,KAAA0rC,WAAA3qC,OAAyBR,IAAA,CAAK,GAAAT,GAAArB,EAAAitC,WAAAnrC,GAAAI,EAAAR,EAAAurC,WAAA5rC,EAAAf,UAA6C,KAAA4B,GAAAF,EAAA2rC,oBAAAzrC,EAAAb,EAAA8xB,WAAAnxB,EAAAyqC,EAAAprC,EAAA8M,QAAA,EAAAnO,EAAAktC,SAAA7rC,EAAAusC,OAAA5tC,EAAAktC,UAAAjrC,GAAA,MAAqHwwB,EAAAvxB,UAAA2gB,QAAA,WAA2CtgB,KAAAuI,SAAAvI,KAAAuqC,GAAAS,aAAAhrC,KAAAuI,cAAAvI,MAAAuI,SAAoE/J,EAAAD,QAAA2yB,OACvwCob,IAAA,SAAArrC,EAAAzC,EAAAD,GACJ,YAAa,IAAA6e,GAAAnc,EAAA,uBAAAijB,EAAAjjB,EAAA,kBAAAgN,EAAAhN,EAAA,mBAAAgN,QAAAs+B,EAAAtrC,EAAA,YAAAurC,EAAAvrC,EAAA,mCAAAwrC,EAAAxrC,EAAA,kCAAAyrC,EAAAzrC,EAAA,oCAAA0rC,EAAA1rC,EAAA,8BAAA2rC,EAAA3rC,EAAA,mCAAA4rC,EAAA5rC,EAAA,cAAA6rC,EAAA7rC,EAAA,eAAA8rC,EAAA9rC,EAAA,iBAAAikC,EAAAjkC,EAAA,iBAAAwkC,EAAAxkC,EAAA,wBAAA2C,EAAA3C,EAAA,0BAAA+rC,EAAA/rC,EAAA,kBAAAgsC,EAAAhsC,EAAA,iBAAAisC,EAAAjsC,EAAA,2BAA2vBzC,GAAAD,SAAgB0P,UAAAmP,YAAA+vB,YAAA9rC,KAAAuG,IAAAvG,KAAAoV,MAAAyN,EAAAkpB,oBAAA,MAAAC,iBAAAH,EAAAG,iBAAAd,MAAAC,oBAAAC,mBAAAC,qBAAAC,eAAAC,oBAAAC,QAAAC,SAAAC,QAAA7H,SAAAO,eAAA7hC,QAAAopC,UAAAC,SAAAK,kBAAkd,MAAAL,GAAAM,cAA2BD,gBAAAruC,GAAoBguC,EAAAM,aAAAtuC,MACtxCuuC,kBAAA,GAAAC,gBAAA,GAAAC,uBAAA,GAAAC,2BAAA,GAAAC,gBAAA,IAAAC,mCAAA,IAAAC,kCAAA,IAAAC,iCAAA,IAAAC,kCAAA,IAAAC,6BAAA,IAAAC,WAAA,IAAAC,cAAA,IAAAC,aAAA,IAAAC,iBAAA,IAAAC,gBAAA,IAAAC,iBAAA,IAAAxgC,yBAAA,EAAAygC,sBAAA,KAAidC,IAAA,SAAAxtC,EAAAzC,EAAAD,GACpd,YAAa,SAAAmwC,GAAAhuC,EAAAD,EAAAN,GAA+B,GAAA1B,GAAAiC,EAAA6pC,GAAA3pC,EAAAF,EAAAwV,UAAA3W,EAAAqB,EAAA4/B,SAAAvhC,EAAAkB,EAAAwuC,MAAA,oBAAAjwC,EAAAyB,EAAAwuC,MAAA,sBAAAhuC,EAAAR,EAAAwuC,MAAA,sBAAApuC,EAAA7B,GAAA,IAAAO,EAAA,QAAA0B,EAAA,sBAAgL,IAAAD,EAAAkuC,aAAAruC,EAAA,CAAqB9B,EAAAowC,QAAApwC,EAAAqwC,cAAApuC,EAAAquC,iBAAA,EAAgD,IAAAjvC,EAAM,IAAApB,EAAA,CAAM,GAAAswC,EAAAC,iBAAAvwC,EAAAgC,GAAA,MAAwCZ,GAAAY,EAAAwuC,WAAA,cAAAxuC,EAAAyuC,+BAAAH,EAAAtU,QAAAh8B,EAAAgC,EAAAZ,GAAAY,EAAA0uC,qBAAAjzB,KAAA1d,EAAAqB,EAAAY,EAAA2uC,sBAAyIvvC,GAAAY,EAAAwuC,WAAA,OAAAxuC,EAAAyuC,+BAAA1wC,EAAA+jC,WAAA1iC,EAAA2iC,SAAA6M,QAAArwC,GAAAyB,EAAA6uC,cAAApzB,KAAA1d,EAAAqB,EAAAY,EAAA2uC,iBAA4I5wC,GAAAikC,UAAA5iC,EAAA2iC,SAAA+M,UAAA7uC,EAAoC,QAAA9B,GAAA+B,EAAA8nC,eAA2BlI,SAAAjhC,IAAWQ,EAAA,EAAAF,EAAAhB,EAAUkB,EAAAF,EAAAkB,OAAWhB,GAAA,GAAM,GAAAjB,GAAAe,EAAAE,EAAWrB,IAAAswC,EAAAS,SAAoB3P,MAAAhhC,EAAA0hC,SAAAjhC,GAAmBmB,EAAAZ,GAAArB,EAAAixC,iBAAA5vC,EAAA2iC,SAAAkN,UAAA,EAAAjvC,EAAAwV,UAAAuzB,mBAAA3qC,IAAAL,EAAAmxC,WAAAnxC,EAAAoxC,eAAA,EAAAnvC,EAAA2uC,iBAAAtuC,UAAgJ,GAAAiuC,GAAA/tC,EAAA,YAAiCzC,GAAAD,QAAAmwC,IAC/6BoB,YAAA,KAAeC,IAAA,SAAA9uC,EAAAzC,EAAAD,GAClB,YAAa,SAAAyxC,GAAAtvC,EAAAjC,EAAA0B,EAAAM,GAA8B,mBAAAC,EAAAkuC,WAAA,CAAiC,GAAAhuC,GAAAF,EAAA6pC,EAAW7pC,GAAAquC,iBAAA,GAAAruC,EAAAuvC,WAAA,GAAArvC,EAAAiuC,QAAAjuC,EAAAkuC,aAAgE,QAAAhvC,GAAA,EAAYA,EAAAW,EAAAM,OAAWjB,IAAA,CAAK,GAAAb,GAAAwB,EAAAX,GAAAP,EAAAd,EAAAkY,QAAA1X,GAAA0B,EAAApB,EAAA2wC,UAAA/vC,EAA2C,IAAAQ,EAAA,CAAM,GAAA/B,GAAA+B,EAAA0xB,sBAAA/yB,IAAAa,EAAAwG,IAAApG,EAAAG,EAAAwuC,WAAA,SAAAtwC,EAAmE,IAAAA,EAAA0jC,YAAA1hC,EAAAL,EAAAJ,GAAwBylB,KAAAllB,EAAAwV,UAAA0P,OAAsBhlB,EAAA8hC,UAAAniC,EAAAkiC,SAAA0N,4BAAAzvC,EAAAwV,UAAA8zB,wBAAAppC,EAAAwvC,UAAA7vC,EAAAkiC,SAAA4N,iBAAA,QAAAlwC,EAAAwuC,MAAA,mCAAAxuC,EAAAwuC,MAAA,2BAAuN/tC,EAAAwvC,UAAA7vC,EAAAkiC,SAAA6N,iBAAA,EAA2C,IAAA5xC,GAAA6xC,EAAAhxC,EAAA,EAAAmB,EAAAwV,UAAA0P,KAA8ChlB,GAAA4vC,UAAAjwC,EAAAkiC,SAAAgO,gBAAA/xC,SAA4CkC,GAAAwvC,UAAA7vC,EAAAkiC,SAAA6N,iBAAA,GAAA1vC,EAAA8vC,WAAAnwC,EAAAkiC,SAAAgO,gBAAA/vC,EAAAwV,UAAA6yB,gBAAqHnoC,GAAA8hC,UAAAniC,EAAAkiC,SAAAkO,mBAAAzsB,EAAA0sB,kBAAAhwC,EAAA8uC,iBAAAnvC,EAAAkiC,SAAAkN,UAAA,EAAAjvC,EAAAmwC,mBAAA5xC,EAAA6xC,UAAAvxC,EAAAY,EAAAwuC,MAAA,oBAAAxuC,EAAAwuC,MAAA,6BAAApuC,EAAA0J,KAAArJ,IAAAmwC,UAAA5wC,EAAAwG,GAAAhG,EAAAkyB,mBAAAlyB,EAAAmyB,YAAAnyB,EAAA2xB,SAAA1zB,MAAgS,GAAAslB,GAAAjjB,EAAA,mBAAAsvC,EAAAtvC,EAAA,iCAAmGzC,GAAAD,QAAAyxC,IACtqCgB,iCAAA,GAAAC,kBAAA,MAA0DC,IAAA,SAAAjwC,EAAAzC,EAAAD,GAC7D,YAAa,SAAA4yC,GAAAlyC,EAAAR,EAAAiC,EAAAP,GAAqC,GAAAZ,GAAAN,EAAAsrC,EAAWhrC,GAAA6xC,OAAA7xC,EAAAuvC,aAAyB,IAAAruC,GAAAxB,EAAAiwC,WAAA,eAAmC3vC,GAAA8xC,cAAA9xC,EAAA+xC,UAAAryC,EAAAsyC,aAAAp1B,KAAA5c,KAAA6wC,UAAA3vC,EAAAgiC,SAAA+O,cAAA,EAA2F,QAAA5wC,GAAA,EAAYA,EAAAT,EAAAY,OAAWH,IAAA,CAAK,GAAAL,GAAAJ,EAAAS,GAAAD,EAAAlC,EAAAkY,QAAApW,GAAA3B,EAAA+B,EAAAuvC,UAAAxvC,EAA2C,IAAA9B,EAAA,CAAMW,EAAAmwC,iBAAAjvC,EAAAgiC,SAAAkN,UAAA,EAAApvC,EAAAuwC,WAAA7xC,EAAAwyC,uBAAAlxC,GAAAtB,EAAAyyC,UAAA,GAAAnyC,EAAAmjC,UAAAjiC,EAAAgiC,SAAAkP,QAAAtwC,KAAAkJ,IAAA,EAAAtL,EAAAiX,UAAA0P,KAAAjlB,EAAAm/B,MAAAt2B,IAAAjK,EAAAmjC,UAAAjiC,EAAAgiC,SAAAmP,OAAA,GAAA3yC,EAAAiX,UAAA0P,KAA4N,IAAA9lB,GAAAuB,KAAAuG,IAAA,EAAAvG,KAAAmJ,IAAA,GAAA7J,EAAAm/B,MAAAt2B,EAAAnI,KAAA6S,IAAAvT,EAAAy/B,cAAA1E,UAAAr6B,KAAAoY,KAAqFla,GAAAmjC,UAAAjiC,EAAAgiC,SAAAoP,UAAA,GAAA/xC,GAAAP,EAAAmjC,UAAAjiC,EAAAgiC,SAAAqP,sBAAAnxC,EAAAy/B,cAAA9C,UAAA/9B,EAAAmjC,UAAAjiC,EAAAgiC,SAAAsP,QAAA9yC,EAAAiX,UAAAuxB,MAAA,MAAApmC,KAAAqM,IAAAnO,EAAAmjC,UAAAjiC,EAAAgiC,SAAA0N,4BAAAlxC,EAAAiX,UAAA8zB,wBAAAvpC,EAAAwJ,KAAA1K,IAAAyyC,MAAAtxC,EAAAiG,GAAA/H,EAAA06B,aAAAzG,mBAAAj0B,EAAA06B,aAAAxG,YAAAl0B,EAAA06B,aAAAhH,YAAmX9zB,EAAAD,QAAA4yC,OACj8Bc,IAAA,SAAAhxC,EAAAzC,EAAAD,GACJ,YAAa,SAAA2zC,GAAAxxC,EAAAP,EAAAM,GAA0B,OAAAG,GAAA,EAAYA,EAAAH,EAAAM,OAAWH,IAAAuxC,EAAAzxC,EAAAP,EAAAM,EAAAG,IAA4B,QAAAuxC,GAAAzxC,EAAAP,EAAAM,GAA8B,GAAAG,GAAAF,EAAA6pC,EAAW3pC,GAAAiuC,QAAAjuC,EAAAkuC,cAAApuC,EAAAgxC,UAAA,EAAAxtB,EAAA0sB,iBAAkE,IAAAnyC,GAAAgC,EAAAqwC,UAAAnwC,EAAAD,EAAAwuC,WAAA,QAA0CtuC,GAAA8uC,iBAAA/uC,EAAA8hC,SAAAkN,UAAA,EAAAlxC,GAAAmC,EAAAwxC,UAAAzxC,EAAA8hC,SAAA6M,QAAA,SAAA5uC,EAAA2xC,SAAAl2B,KAAAvb,EAAAD,EAAAD,EAAA4xC,aAAA1xC,EAAAgvC,WAAAhvC,EAAA2xC,WAAA,EAAA7xC,EAAA4xC,YAAAvxC,OAA0K,QAAA9B,GAAAuzC,EAAA/xC,EAAAopB,WAAA,UAAAtqB,EAAA,GAAAwiC,GAAAxhC,EAAA,EAAwEA,EAAAtB,EAAA8B,OAAWR,GAAA,EAAAhB,EAAAyxB,YAAA/xB,EAAAsB,GAAAtB,EAAAsB,EAAA,GAAgC,IAAA7B,GAAA,GAAAwyB,GAAAtwB,EAAArB,IAA4B,GAAAkzC,IAAAt2B,KAAAvb,EAAAD,EAAAjC,GAAAkC,EAAAwxC,UAAAzxC,EAAA8hC,SAAA6M,QAAA,QAA4E,QAAAxvC,GAAAK,EAAAwW,QAAAlW,GAAA+/B,SAAA5hC,EAAA6yB,GAAApwB,KAAAkJ,IAAA,EAAA7J,EAAAwV,UAAA0P,KAAAnlB,EAAA+I,GAAA1J,GAAAiC,KAAA,2BAAAhC,EAAA,EAAkHA,EAAAgC,EAAAhB,OAAWhB,IAAA,CAAK,GAAAiC,GAAAD,EAAAhC,EAAWa,GAAA8uC,iBAAA/uC,EAAA8hC,SAAAkN,UAAA,EAAAzsC,EAAAE,aAAA3E,GAAAG,EAAAoD,EAAA,GAAApD,EAAAoD,EAAA,QAAApB,EAAAgvC,WAAAhvC,EAAAoxC,MAAA,EAAAtzC,EAAAqC,QAAmHH,EAAAwxC,UAAAzxC,EAAA8hC,SAAA6M,QAAA,SAAA1uC,EAAA8uC,iBAAA/uC,EAAA8hC,SAAAkN,UAAA,EAAAlxC,GAAAmC,EAAAgvC,WAAAhvC,EAAAoxC,MAAA,EAAAtzC,EAAAqC,QAAsH,QAAAyxC,GAAA9xC,EAAAP,EAAAM,EAAAG,GAAsCA,KAAA,CAAO,IAAAnC,GAAAkC,EAAA1B,EAAAM,EAAAgB,EAAA7B,EAAAoB,EAAAlB,EAAAmD,IAAyB,KAAAtD,EAAA,EAAAkC,EAAAD,EAAAK,OAAmBtC,EAAAkC,EAAIlC,IAAA,GAAA8B,EAAAmyC,EAAAhyC,EAAAjC,IAAA,CAA4B,IAAAG,EAAA,KAAAK,EAAA,EAAAM,EAAAgB,EAAA,GAAAQ,OAA6B9B,EAAAM,EAAIN,GAAA,OAAAsB,EAAA,GAAAtB,KAAA,IAAAsB,EAAA,GAAAtB,EAAA,GAAAL,EAAA,MAAAF,EAAAyB,EAAAI,EAAA,GAAAtB,GAAA2B,EAAAd,EAAAW,EAAAF,EAAA,GAAAtB,EAAA,GAAA2B,EAAAhC,GAAAmD,EAAAsF,KAAAzI,EAAAmD,EAAAnD,EAAA+C,EAAAjD,EAAAoB,GAAAlB,GAAkGmD,EAAArD,EAAAiD,EAAA7B,GAAUK,IAAAI,EAAA,GAAAK,EAAU,MAAAmB,GAAS,GAAAmiB,GAAAjjB,EAAA,mBAAAiC,EAAAjC,EAAA,qBAAAiC,KAAAuuB,EAAAxwB,EAAA,kBAAAiwB,EAAAjwB,EAAA,uBAAAwxC,EAAAxxC,EAAA,yBAAA8gC,EAAA9gC,EAAA,oBAAoPzC,GAAAD,QAAA2zC,CAAyB,IAAAQ,IAAiBC,KAAA,OAAAC,KAAA,yCAAAC,KAAA,kCAAAC,KAAA,mEAAAvX,GAAA,6IAAAwX,KAAA,0KAAAC,KAAA,sLAAAC,KAAA,yCAAAC,KAAA,wDAAAC,KAAA,wDAAAC,KAAA,iDAAAC,KAAA,gCAAAC,KAAA,yCAAAC,KAAA,eAAAC,KAAA,0BAAAC,KAAA,iBAAAC,GAAA,2FAAA1yC,GAAA,2BAAA2C,GAAA,kFAAAuC,GAAA,kFAAAkC,GAAA,sCAAAqC,GAAA,2FAAAkB,GAAA,6HAAAO,GAAA,iCAAAO,GAAA,yJAAAuB,GAAA,0HAAA2lC,KAAA,yDAAAC,KAAu8D,wEAAAC,KAAA,qBAAAC,KAAA,gCAAAC,KAAA,oBAAAC,KAAA,6GAAAC,KAAA,qSAAApyC,GAAA,8CAAAuyB,GAAA,mIAAAa,GAAA,+FAAAja,GAAA,qFAAA8Z,GAAA,gEAAAhzB,GAAA,iDAAAw5B,GAAA,oHAAA4Y,GAAA,iDAAAlf,GAAA,cAAAmf,GAAA,mDAAAC,GAAA,+CAAAhe,GAAA,8BAAA30B,GAAA,iEAAA4X,GAAA,gDAAAmd,GAAA,+GAAAF,GAAA,+EAAA+d,GAAA,gIAAAnyC,GAAA,gGAAAsR,GAAA,2GAAAkD,GAAA,gCAAA8kB,GAAA,sDAAA3G,GAAA,+BAAAwG,GAAA,iEAAAl5B,GAAA,gCAAAmyC,GAAA,qCAAAlyC,GAAA,gDAAAmyC,KAAA,kEAAAC,MAAA,iBAAAC,KAAA,oEAAAC,KAAA,2DAAA3f,GAAA,iBAAA4f,KAAA,yCAAA/zC,GAAA,2FAAAoB,GAAA,2FAAAnD,GAAA,0EAAAC,GAAA,2FAAAqB,GAAA,yFAAAI,GAAA,+CAAAR,GAAA,wHAAA2B,GAAA,2DAAAjD,GAAA,6CAAAwD,GAAA,8DAAAI,GAAA,8CAAA3D,GAAA,cAAAE,GAAA,0GAAAW,GAAA,2DAAAN,GAAA,yFAAAY,GAAA,4FAAAyC,GAAA,4FAAA5B,GAAA,8CAAAZ,GAAA,yFAAAW,GAAA,4CAAAE,GAAA,uDAAAa,GAAA,+BAAAI,GAAA,iEAAAG,GAAA,gCAAAJ,GAAA,mDAAA6H,GAAA,gDAAAorC,KAAo3I,gMAAAC,KAAA,eAAAC,KAAyN,iMAAAC,KAAA,+HACljQ9K,iBAAA,GAAA+K,oBAAA,GAAAjR,sBAAA,GAAAkN,kBAAA,IAAAgE,wBAAA,GAAA5K,oBAAA,IAA2I6K,IAAA,SAAAj0C,EAAAzC,EAAAD,GAC9I,YAAa,SAAA42C,GAAAz0C,EAAAD,EAAAN,EAAAS,GAA2B,GAAAnC,GAAAiC,EAAA6pC,EAAW9rC,GAAA2yC,OAAA3yC,EAAAqwC,aAAyB,IAAApwC,IAAAyB,EAAAwuC,MAAA,iBAAAxuC,EAAA+iC,4BAAA,eAAA/iC,EAAA+iC,4BAAA,qBAAA/iC,EAAAwuC,MAAA,sBAAAxuC,EAAAwuC,MAAA,sCAA6MjuC,GAAAkuC,aAAAlwC,IAAAgC,EAAAquC,iBAAA,GAAAruC,EAAAuvC,UAAA,WAAAvvC,EAAAkuC,YAAAwG,EAAA10C,EAAAD,EAAAN,EAAAS,EAAAy0C,IAAA,gBAAA30C,EAAAkuC,YAAAzuC,EAAAwuC,MAAA,oBAAAjuC,EAAAgxC,UAAA,GAAAhxC,EAAAuvC,WAAA,GAAAvvC,EAAAquC,iBAAA5uC,EAAAm1C,iBAAA,2BAAAF,EAAA10C,EAAAD,EAAAN,EAAAS,EAAA20C,IAAoT,QAAAH,GAAA10C,EAAAD,EAAAN,EAAAS,EAAAnC,GAAkC,IAAAuwC,EAAAC,iBAAA9uC,EAAAwuC,MAAA,gBAAAjuC,GAAA,OAAAhC,IAAA,EAAAa,EAAA,EAAAN,EAAA2B,EAA6ErB,EAAAN,EAAA8B,OAAWxB,GAAA,GAAM,GAAAO,GAAAb,EAAAM,GAAAgB,EAAAE,EAAAkW,QAAA7W,GAAAa,EAAAJ,EAAA2vC,UAAA/vC,EAA2CQ,KAAAD,EAAA+wC,uBAAA3xC,GAAArB,EAAAiC,EAAAD,EAAAN,EAAAI,EAAAT,EAAAa,EAAAjC,MAAA,IAAwD,QAAA22C,GAAA30C,EAAAD,EAAAN,EAAAS,EAAAnC,EAAAC,EAAAa,GAAqC,GAAAN,GAAAyB,EAAA6pC,GAAAzqC,EAAApB,EAAA2zB,sBAAA/yB,IAAAa,EAAAwG,GAA+C6uC,GAAA,OAAAr1C,EAAAwuC,MAAA,gBAAAjuC,EAAAZ,EAAAK,EAAAS,EAAAnC,EAAAc,GAAA0K,KAAAhL,IAAA8xC,UAAA5wC,EAAAwG,GAAAjI,EAAAm0B,mBAAAn0B,EAAAo0B,YAAAp0B,EAAA4zB,SAAAxyB,GAAoI,QAAAy1C,GAAA70C,EAAAD,EAAAN,EAAAS,EAAAnC,EAAAC,EAAAa,GAAuC,GAAAN,GAAAyB,EAAA6pC,GAAAzqC,EAAApB,EAAA2zB,sBAAA/yB,IAAAa,EAAAwG,IAAApG,EAAAJ,EAAAwuC,MAAA,kBAAAxuC,EAAAm1C,iBAAA,sBAAA30C,EAAA60C,EAAA,cAAAj1C,EAAAG,EAAAZ,EAAAK,EAAAS,EAAAnC,EAAAc,EAAkKN,GAAAuxC,UAAA7vC,EAAA8hC,SAAAgT,QAAAx2C,EAAAy2C,mBAAAz2C,EAAA02C,qBAAAh1C,EAAAsJ,KAAAhL,IAAA+yC,MAAA7xC,EAAAwG,GAAAjI,EAAAm0B,mBAAAn0B,EAAAy1B,aAAAz1B,EAAAw1B,UAAAp0B,GAAoJ,QAAA01C,GAAA90C,EAAAD,EAAAN,EAAAS,EAAAnC,EAAAC,EAAAa,EAAAN,GAAyC,GAAAa,GAAAS,EAAAJ,EAAAy1C,cAAyB,OAAAn1C,IAAAX,EAAAK,EAAA+uC,WAAAxuC,EAAA,UAAAE,IAAA3B,GAAAa,IAAAS,KAAAK,EAAA0hC,YAAAniC,EAAAoqC,GAAAzqC,EAAArB,GAA6EmnB,KAAAzlB,EAAA+V,UAAA0P,OAAsBopB,EAAAtU,QAAAj8B,EAAAkwC,MAAA,gBAAAxuC,EAAAL,IAAAkvC,EAAAS,QAAA/wC,EAAAyB,EAAAL,OAAAK,EAAA+uC,WAAAxuC,EAAAE,IAAA3B,GAAAa,IAAAS,IAAAK,EAAA0hC,YAAAniC,EAAAoqC,GAAAzqC,EAAArB,GAAiImnB,KAAAzlB,EAAA+V,UAAA0P,QAAsBzlB,EAAAoqC,GAAAmF,iBAAA5vC,EAAA2iC,SAAAkN,UAAA,EAAAxvC,EAAA0wC,mBAAAtxC,EAAAuxC,UAAApyC,EAAAD,EAAAkwC,MAAA,kBAAAlwC,EAAAkwC,MAAA,2BAAA7uC,EAAkJ,GAAAkvC,GAAA/tC,EAAA,YAAiCzC,GAAAD,QAAA42C,IACj1DrF,YAAA,KAAe+F,IAAA,SAAA50C,EAAAzC,EAAAD,GAClB,YAAa,SAAA0L,GAAAvJ,EAAAD,EAAAN,EAAA1B,GAAuB,UAAAiC,EAAAkuC,WAAA,CAAwB,GAAAhuC,GAAAF,EAAA6pC,EAAW3pC,GAAAiuC,QAAAjuC,EAAAkuC,cAAAluC,EAAAwwC,OAAAxwC,EAAAk1C,YAAAp1C,EAAAq1C,aAAAr1C,EAAAuvC,WAAA,EAAgF,QAAA1wC,GAAA,EAAYA,EAAAd,EAAAsC,OAAWxB,IAAAy2C,EAAAt1C,EAAAD,EAAAN,EAAA1B,EAAAc,QAA8B,gBAAAmB,EAAAkuC,YAAAqH,EAAAv1C,EAAAP,GAA4D,QAAA81C,GAAAv1C,EAAAD,GAAmC,GAAAN,GAAAO,EAAAw1C,kBAAAz1C,EAAAkG,GAAgC,IAAAxG,EAAA,CAAM,GAAA1B,GAAAiC,EAAA6pC,GAAA3pC,EAAAF,EAAAwuC,WAAA,mBAA8CzwC,GAAAowC,QAAApwC,EAAAqwC,cAAArwC,EAAAowC,QAAApwC,EAAAq3C,YAAAr3C,EAAA4yC,cAAA5yC,EAAA03C,UAAA13C,EAAA23C,YAAA33C,EAAA43C,WAAAl2C,EAAAm2C,SAAA73C,EAAAikC,UAAA9hC,EAAA6hC,SAAA+M,UAAA/uC,EAAAkuC,MAAA,2BAAAlwC,EAAA2xC,UAAAxvC,EAAA6hC,SAAA8T,QAAA,EAA0N,IAAAh3C,GAAA2D,EAAAL,QAAoBK,GAAAQ,MAAAnE,EAAA,EAAAmB,EAAAuG,MAAAvG,EAAAwG,OAAA,OAAAzI,EAAAixC,iBAAA9uC,EAAA6hC,SAAAkN,UAAA,EAAApwC,GAAAd,EAAA+xC,UAAA5vC,EAAA6hC,SAAAgT,QAAAh3C,EAAAi3C,mBAAAj3C,EAAAk3C,qBAAAx1C,EAAAq2C,IAAAr6B,KAAA1d,EAAAmC,EAAAT,EAAAoI,QAAA9J,EAAAmxC,WAAAnxC,EAAAoxC,eAAA,KAAAnvC,EAAA+1C,eAAApvC,KAAAlH,SAAAO,GAAAw1C,kBAAAz1C,EAAAkG,KAAsR,QAAAqvC,GAAAt1C,EAAAD,EAAAN,EAAA1B,GAAgC,GAAAmC,GAAAH,EAAAkW,QAAAlY,GAAAc,EAAAqB,EAAAsvC,UAAA/vC,EAAoC,IAAAZ,EAAA,CAAM,GAAAN,GAAAyB,EAAA6pC,GAAA5pC,EAAAR,EAAAwuC,MAAA,0BAAA7uC,EAAAP,EAAA8yB,sBAAA/yB,IAAAa,EAAAwG,IAAApG,EAAAG,EAAAwuC,WAAAvuC,EAAA,uCAAAb,EAA8I,IAAAA,EAAAwiC,YAAArjC,EAAAsB,EAAAJ,GAAwBylB,KAAAllB,EAAAwV,UAAA0P,OAAsBjlB,EAAA,CAAK,GAAAquC,EAAAC,iBAAAtuC,EAAAD,GAAA,MAAwCsuC,GAAAtU,QAAA/5B,EAAAD,EAAAH,GAAAyuC,EAAAS,QAAA7uC,EAAAF,EAAAH,GAAAtB,EAAAyjC,UAAAniC,EAAAkiC,SAAAiU,iBAAAr1C,KAAAkJ,IAAA,EAAA9L,EAAA+K,GAAA5I,EAAA4/B,SAAA,GAAoH9/B,EAAA6pC,GAAAmF,iBAAAnvC,EAAAkiC,SAAAkN,UAAA,EAAAjvC,EAAAmwC,mBAAApyC,EAAAqyC,UAAAlwC,EAAAT,EAAAwuC,MAAA,4BAAAxuC,EAAAwuC,MAAA,qCAAAgI,EAAAp2C,EAAAG,GAAAH,EAAA0J,KAAAhL,IAAA8xC,UAAA5wC,EAAAwG,GAAApH,EAAAszB,mBAAAtzB,EAAAuzB,YAAAvzB,EAAA+yB,SAAAxyB,IAA2P,QAAA62C,GAAAj2C,EAAAD,GAAuB,GAAAN,GAAAM,EAAA8pC,GAAA9rC,EAAAgC,EAAAm2C,MAAAC,MAAAj2C,EAAAnC,EAAAq4C,WAAAC,SAAAx3C,GAAAqB,EAAAmB,EAAAnB,EAAAe,EAAAf,EAAA4I,GAAAvK,EAAA+D,EAAAH,QAAmF,cAAApE,EAAAq4C,WAAAnb,QAAA34B,EAAAC,aAAAhE,GAAAwB,EAAAyV,UAAAxQ,OAAAlD,EAAAC,cAAAlD,IAAAN,GAAAkB,EAAA62C,WAAAt2C,EAAA+hC,SAAAwU,WAAA13C,GAAAY,EAAAuiC,UAAAhiC,EAAA+hC,SAAAyU,iBAAAz4C,EAAAq4C,WAAAK,WAAAh3C,EAAA62C,WAAAt2C,EAAA+hC,SAAA2U,aAAA34C,EAAAq4C,WAAAvT,MAAAzqB,MAAA,MAA8Q,GAAA3X,GAAAF,EAAA,qBAAA+tC,EAAA/tC,EAAA,aAAA+B,EAAA7B,EAAA6B,KAAAE,EAAA/B,EAAA+B,KAAAV,EAAArB,EAAAqB,IAAgIhE,GAAAD,QAAA0L,IAC1hE6lC,YAAA,GAAAzF,oBAAA,IAAqCgN,IAAA,SAAAp2C,EAAAzC,EAAAD,GACxC,YAAa,SAAA+4C,GAAA74C,EAAAiC,EAAAP,EAAAM,EAAAlB,EAAAqB,EAAA3B,EAAA0B,EAAAJ,GAAyC,GAAAT,GAAApB,EAAAE,EAAAm2B,EAAAl1B,EAAAa,EAAA6pC,GAAAxqC,EAAAR,EAAAovC,MAAA,kBAAA7vC,EAAAS,EAAAovC,MAAA,eAAyE,IAAAhuC,GAAAJ,EAAA,CAAS,GAAAwB,GAAA,EAAAwuC,EAAApwC,EAAA,EAAAO,EAAAwV,UAAAgyB,SAAoD,IAAAnoC,EAAA,CAAMD,EAAAY,EAAA62C,UAAAC,QAAAz3C,EAAA03C,KAAA,UAAAl4C,EAAAs2B,OAAA,aAAAn3B,EAAAgC,EAAA62C,UAAAC,QAAAz3C,EAAA23C,GAAA,UAAAn4C,EAAAs2B,OAAA,YAAwH,IAAAnf,GAAA5W,EAAAmH,MAAAlH,EAAA43C,UAAA94C,EAAAH,EAAAuI,MAAAlH,EAAA63C,OAA8C/3C,GAAA2wC,UAAA/xC,EAAAgkC,SAAAoV,iBAAA91C,EAAA2U,GAAA5W,EAAAoH,OAAA,GAAArH,EAAA2wC,UAAA/xC,EAAAgkC,SAAAqV,iBAAA/1C,EAAAlD,GAAAH,EAAAwI,OAAA,GAAArH,EAAA6iC,UAAAjkC,EAAAgkC,SAAAsV,WAAAr3C,EAAA62C,UAAAtwC,OAAA,IAAA5F,KAAAmJ,IAAAkM,EAAA7X,GAAAqlB,EAAA0sB,kBAAA,OAAsN,IAAA9xC,EAAA,CAAW,GAAAF,EAAA8B,EAAAs3C,aAAAC,WAAAn5C,EAAA24C,MAAA1iB,EAAAr0B,EAAAs3C,aAAAC,WAAAn5C,EAAA44C,KAAA94C,IAAAm2B,EAAA,MAAuFl1B,GAAA2wC,UAAA/xC,EAAAgkC,SAAAyV,iBAAAt5C,EAAAu5C,YAAA,GAAAr5C,EAAA64C,UAAA51C,EAAAgzB,EAAAojB,YAAA,IAAAt4C,EAAA2wC,UAAA/xC,EAAAgkC,SAAA2V,iBAAArjB,EAAAojB,YAAA,GAAAr5C,EAAA84C,QAAA71C,EAAAgzB,EAAAojB,YAAA,GAAgL,IAAAz2C,GAAAhB,EAAAs3C,aAAAK,eAAA72C,EAAAE,EAAAuF,MAAAjF,EAAAN,EAAAwF,MAAyDrH,GAAA6wC,WAAAjyC,EAAAgkC,SAAA6V,WAAA92C,EAAAQ,IAAyCnC,EAAA2wC,UAAA/xC,EAAAgkC,SAAA8V,qBAAA,EAAA73C,EAAAwV,UAAA6yB,gBAAA,KAAAroC,EAAAwV,UAAA6yB,gBAAA,IAA+GpoC,IAAAZ,GAAAF,EAAAuwC,UAAA3xC,EAAAgkC,SAAA8T,QAAA,GAAA12C,EAAAwxC,cAAAxxC,EAAAs2C,UAAAz1C,EAAA62C,UAAAp7B,KAAAtc,KAAA6iC,UAAAjkC,EAAAgkC,SAAA+V,UAAA14C,EAAA6B,GAAA9B,EAAA6iC,UAAAjkC,EAAAgkC,SAAAgW,UAAA/5C,EAAAiD,GAAA9B,EAAA6iC,UAAAjkC,EAAAgkC,SAAAiW,MAAA34C,EAAAU,IAAA3B,IAAAe,EAAAuwC,UAAA3xC,EAAAgkC,SAAA8T,QAAA,GAAA12C,EAAAwxC,cAAAxxC,EAAAs2C,UAAAz1C,EAAAs3C,aAAA77B,KAAAtc,KAAA6wC,WAAAjyC,EAAAgkC,SAAAkW,eAAA/5C,EAAAm+B,IAAAl9B,EAAA6wC,WAAAjyC,EAAAgkC,SAAAmW,eAAAh6C,EAAAs+B,IAAAr9B,EAAA6wC,WAAAjyC,EAAAgkC,SAAAoW,eAAA9jB,EAAAgI,IAAAl9B,EAAA6wC,WAAAjyC,EAAAgkC,SAAAqW,eAAA/jB,EAAAmI,IAAAr9B,EAAA6iC,UAAAjkC,EAAAgkC,SAAAsW,OAAAj6C,EAAA2B,KAAAC,EAAA+wC,uBAAA7wC,EAAshB,IAAAe,GAAAjB,EAAAmwC,mBAAAjwC,EAAAkwC,UAAA3wC,EAAAZ,EAAAovC,MAAA,kBAAApvC,EAAAovC,MAAA,yBAAqG9uC,GAAA6vC,iBAAAjxC,EAAAgkC,SAAAkN,UAAA,EAAAhuC,GAAA9B,EAAA6iC,UAAAjkC,EAAAgkC,SAAAuW,QAAA,EAAAzI,EAAApwC,EAAA,EAAAO,EAAAwV,UAAA0P,OAAAnnB,EAAAwL,KAAApK,IAAAkxC,UAAAxxC,EAAAoH,GAAAlG,EAAAoyB,mBAAApyB,EAAAqyB,YAAAryB,EAAA6xB,SAAArzB,GAAkM,GAAAilB,GAAAjjB,EAAA,mBAAAsvC,EAAAtvC,EAAA,iCAAmGzC,GAAAD,QAAA,SAAAE,EAAAiC,EAAAP,EAAAM,GAAiC,mBAAAhC,EAAAmwC,WAAA,CAAiCnwC,EAAAswC,iBAAA,GAAAtwC,EAAAwxC,WAAA,EAAsC,IAAA1wC,GAAAd,EAAA8rC,EAAW,IAAAhrC,EAAA6xC,OAAA7xC,EAAAuvC,gBAAA3uC,EAAAwuC,MAAA,yBAAA/tC,GAAA3B,EAAAkB,EAAAwuC,MAAA,4BAAAxuC,EAAAwuC,MAAA,qCAAAhuC,GAAA,EAAAJ,EAAA,EAAAT,EAAAW,EAAkKF,EAAAT,EAAAiB,OAAWR,GAAA,GAAM,GAAA7B,GAAAoB,EAAAS,GAAA3B,EAAA8B,EAAAiW,QAAAjY,GAAAq2B,EAAAn2B,EAAAsxC,UAAA/vC,EAA2C,IAAA40B,EAAA,CAAM,GAAAl1B,GAAAk1B,EAAA1C,sBAAA/yB,IAAAa,EAAAwG,IAAA5G,EAAAtB,EAAAm3C,eAAA92C,EAAAL,EAAAywC,WAAAjwC,EAAAY,GAAAkC,EAAApB,GAAA7B,IAAAiB,EAAA2W,EAAA9V,IAAAhC,EAAAkhC,MAAAt2B,CAA0GzH,IAAAlC,EAAAyiC,YAAA7jC,EAAA8rC,GAAAzrC,EAAAqB,GAA2BylB,KAAAnnB,EAAAyX,UAAA0P,OAAsB0xB,EAAAx4C,EAAAL,EAAAG,EAAAm2B,EAAA50B,EAAAzB,EAAAmB,EAAAkC,EAAA2U,GAAA9V,EAAAhC,EAAAkhC,MAAAt2B,EAAA7I,GAAA,QACh7EqwC,iCAAA,GAAAC,kBAAA,MAA0DgI,IAAA,SAAAh4C,EAAAzC,EAAAD,GAC7D,YAAa,SAAA26C,GAAAx4C,EAAAD,EAAAN,EAAAS,GAA6B,mBAAAF,EAAAkuC,WAAA,CAAiC,GAAAnwC,GAAAiC,EAAA6pC,GAAAtrC,EAAAwB,EAAA04C,YAAA55C,EAAAmB,EAAAwuC,WAAA,SAAoDzwC,GAAA2yC,OAAA3yC,EAAAq3C,YAAAp1C,EAAAuvC,WAAA,GAAAxxC,EAAA26C,UAAA36C,EAAA46C,MAAA56C,EAAAowC,QAAApwC,EAAAqwC,cAAArwC,EAAAikC,UAAAnjC,EAAAkjC,SAAA6W,iBAAAn5C,EAAAwuC,MAAA,0BAAAlwC,EAAAikC,UAAAnjC,EAAAkjC,SAAA8W,kBAAAp5C,EAAAwuC,MAAA,0BAAAlwC,EAAAikC,UAAAnjC,EAAAkjC,SAAA+W,oBAAAC,EAAAt5C,EAAAwuC,MAAA,uBAAAlwC,EAAAikC,UAAAnjC,EAAAkjC,SAAAiX,kBAAAC,EAAAx5C,EAAAwuC,MAAA,qBAAAlwC,EAAAu4C,WAAAz3C,EAAAkjC,SAAAmX,eAAAC,EAAA15C,EAAAwuC,MAAA,uBAAAlwC,EAAAikC,UAAAnjC,EAAAkjC,SAAAqX,eAAA,GAAAr7C,EAAA2xC,UAAA7wC,EAAAkjC,SAAAsX,SAAA,GAAAt7C,EAAA2xC,UAAA7wC,EAAAkjC,SAAAuX,SAAA,EAA2lB,QAAAr5C,GAAAC,EAAAG,QAAAH,EAAA,GAAA4I,EAAA1J,EAAA,EAAAS,EAAAK,EAAmCd,EAAAS,EAAAQ,OAAWjB,GAAA,GAAM,GAAAlB,GAAA2B,EAAAT,EAAWY,GAAAquC,iBAAAnwC,EAAA4K,EAAA7I,EAA0B,IAAA7B,GAAA2B,EAAAkW,QAAA/X,GAAAC,EAAA6B,EAAAwV,UAAAuzB,mBAAA7qC,EAAA6B,EAAA04C,YAAAvQ,QAA6E9pC,GAAAm7C,qBAAAv5C,EAAAk2C,MAAAsD,cAAA/5C,EAAAwuC,MAAA,yBAAAlwC,EAAAixC,iBAAAnwC,EAAAkjC,SAAAkN,UAAA,EAAA9wC,EAA2H,IAAAgB,GAAAY,EAAA05C,iBAAAv7C,EAAA,MAA+Bm2B,EAAAqlB,EAAAt7C,EAAAe,EAAAY,EAAAN,EAAAO,EAAAwV,WAAAxU,MAAA,GAAAhD,MAAA,EAAyD,IAAAD,EAAA4yC,cAAA5yC,EAAA03C,UAAA13C,EAAA23C,YAAA33C,EAAA43C,WAAAv3C,EAAAw3C,SAAA73C,EAAA4yC,cAAA5yC,EAAA6yC,UAAAzxC,GAAApB,EAAA23C,YAAA33C,EAAA43C,WAAAx2C,EAAAy2C,SAAA50C,EAAAL,KAAAkJ,IAAA,EAAA1K,EAAAigC,MAAAt2B,EAAA1K,EAAAghC,MAAAt2B,GAAA9K,GAAAI,EAAAghC,MAAA/9B,EAAAL,EAAA,EAAA5C,EAAAghC,MAAAn+B,EAAAD,EAAA,IAAAjD,EAAA23C,YAAA33C,EAAA43C,WAAAv3C,EAAAw3C,SAAA73C,EAAAiyC,WAAAnxC,EAAAkjC,SAAA4X,YAAA37C,IAAA,MAAAD,EAAAikC,UAAAnjC,EAAAkjC,SAAA6X,eAAA54C,GAAA,GAAAjD,EAAAikC,UAAAnjC,EAAAkjC,SAAA8X,SAAAxlB,EAAAylB,KAAA/7C,EAAAikC,UAAAnjC,EAAAkjC,SAAA+M,UAAAza,EAAAyO,QAAArjC,EAAAwuC,MAAA,mBAAA1vC,YAAAw7C,GAAA,CAAod,GAAA16C,GAAAd,EAAAy7C,YAAqBz7C,GAAA07C,UAAAx+B,KAAA1d,EAAAc,EAAAQ,GAAAtB,EAAAmxC,WAAAnxC,EAAAoxC,eAAA,EAAA9vC,EAAAgB,YAAkE,CAAK,GAAA2V,GAAAhW,EAAAk6C,kBAA2Bl6C,GAAAm6C,gBAAA1+B,KAAA1d,EAAAc,EAAAmX,GAAAjY,EAAAmxC,WAAAnxC,EAAAoxC,eAAA,EAAAn5B,EAAA3V,SAAyEtC,EAAA26C,UAAA36C,EAAAq8C,SAAuB,QAAAjB,GAAAn5C,GAAwBA,GAAAW,KAAAqM,GAAA,GAAe,IAAAjN,GAAAY,KAAAC,IAAAZ,GAAAP,EAAAkB,KAAAE,IAAAb,EAAgC,WAAAP,EAAA,OAAAkB,KAAAiE,KAAA,GAAA7E,EAAAN,EAAA,MAAAkB,KAAAiE,KAAA,GAAA7E,EAAAN,EAAA,MAAiE,QAAAw5C,GAAAj5C,GAA2B,MAAAA,GAAA,OAAAA,GAAA,EAAAA,EAAuB,QAAA+4C,GAAA/4C,GAA6B,MAAAA,GAAA,aAAAA,MAA4B,QAAA05C,GAAA15C,EAAAD,EAAAN,EAAAS,EAAAnC,GAAkC,GAAAQ,GAAA2B,EAAA+tC,MAAA,uBAAsC,IAAA1vC,EAAA,GAAQ,GAAAM,GAAAunB,KAAAC,MAAApmB,GAAApB,EAAAmB,EAAAq6C,WAAA97C,EAAAa,EAAAW,GAAAlB,EAAAkB,EAAAs6C,WAAA97C,GAAA,EAAAsB,EAAAJ,EAAAg5C,YAAAv6C,EAAAH,EAAA4pC,mBAAqG7H,SAAAjgC,EAAAigC,SAAA8H,UAAA/nC,EAAA+nC,YAA0CxpC,GAAA2B,GAAAY,KAAAoK,IAAAhL,EAAAq/B,MAAAt2B,EAAA5K,GAAAyC,KAAAoK,IAAA/K,EAAAo/B,MAAAt2B,EAAA5K,GAAAC,EAAAC,GAAA4B,EAAAs6C,wBAAA,EAAAxqB,EAAAuX,MAAAjpC,EAAA6B,EAAA,EAAAb,EAAA,IAA6G,OAAAY,GAAAs6C,yBAAAr6C,GAAA,IAAAD,EAAAs6C,yBAAA,GAAAv6C,GAA0E+iC,QAAA,EAAAgX,IAAA,EAAA37C,IAAoB2kC,QAAA3kC,EAAA27C,IAAA,GAAiB,OAAOhX,QAAA,EAAAgX,IAAA,GAAiB,GAAAhqB,GAAAvvB,EAAA,gBAAAw5C,EAAAx5C,EAAA,yBAA+EzC,GAAAD,QAAA26C,IAChhF+B,yBAAA,GAAApqB,eAAA,MAA+CqqB,IAAA,SAAAj6C,EAAAzC,EAAAD,GAClD,YAAa,SAAA48C,GAAA16C,EAAAhC,EAAAQ,EAAAkB,GAA8B,mBAAAM,EAAAmuC,WAAA,CAAiC,GAAAhuC,KAAA3B,EAAA42B,OAAA,uBAAA52B,EAAA42B,OAAA,uBAAA52B,EAAA42B,OAAA,0BAAA52B,EAAA42B,OAAA,0BAAAn1B,EAAAD,EAAA8pC,EAAqJ3pC,GAAAF,EAAAmuC,QAAAnuC,EAAAouC,cAAApuC,EAAA0wC,OAAA1wC,EAAAouC,cAAAruC,EAAAsuC,iBAAA,GAAAtuC,EAAAwvC,WAAA,GAAAmL,EAAA36C,EAAAhC,EAAAQ,EAAAkB,GAAA,EAAAlB,EAAA0vC,MAAA,kBAAA1vC,EAAA0vC,MAAA,yBAAA1vC,EAAA42B,OAAA,2BAAA52B,EAAA42B,OAAA,wBAAA52B,EAAA42B,OAAA,sBAAAulB,EAAA36C,EAAAhC,EAAAQ,EAAAkB,GAAA,EAAAlB,EAAA0vC,MAAA,kBAAA1vC,EAAA0vC,MAAA,yBAAA1vC,EAAA42B,OAAA,2BAAA52B,EAAA42B,OAAA,wBAAA52B,EAAA42B,OAAA,sBAAAp3B,EAAA+T,IAAA6oC,oBAAAlK,EAAA1wC,EAAAhC,EAAAQ,EAAAkB,IAAwgB,QAAAi7C,GAAA36C,EAAAhC,EAAAQ,EAAAkB,EAAAS,EAAAF,EAAAnB,EAAAO,EAAAa,EAAAjC,GAA+C,GAAAE,GAAA6B,EAAA8pC,GAAAhqC,EAAAE,EAAAyV,UAAArX,EAAA,QAAAiB,EAAAi1B,EAAA,QAAAp0B,EAAAgB,EAAA9C,GAAA,SAAAI,EAAA42B,OAAA,oBAAAh2B,EAAAhB,IAAAk2B,IAAApzB,EAAAI,EAAAgzB,CAA4GhzB,GAAAnD,EAAAwyC,OAAAxyC,EAAAk3C,YAAAl3C,EAAAiwC,QAAAjwC,EAAAk3C,WAAiD,QAAA9zC,GAAAlD,EAAA,EAAA4X,EAAAvW,EAAkBrB,EAAA4X,EAAA3V,OAAWjC,GAAA,GAAM,GAAAiB,GAAA2W,EAAA5X,GAAA0U,EAAA/U,EAAAkY,QAAA5W,GAAA2B,EAAA8R,EAAA08B,UAAAjxC,EAA2C,IAAAyC,EAAA,CAAM,GAAA8H,GAAA5I,EAAAc,EAAA03B,KAAA13B,EAAA23B,IAAsB,IAAA7vB,KAAA8oB,SAAAhzB,MAAAyB,OAAA,CAA+B,GAAAS,GAAAgI,EAAA6oB,sBAAA/yB,IAAAL,EAAA0H,IAAAmuB,EAAAl0B,GAAAc,EAAAk4B,SAAAh4B,EAAAhB,EAAAc,EAAAq4B,aAAAr4B,EAAAs4B,YAA0F,IAAAh4B,MAAAvB,EAAAyuC,WAAApa,EAAA,yBAAAtzB,KAAA8gC,YAAA1jC,EAAAoD,EAAA/C,GAAyE2mB,KAAAnlB,EAAAyV,UAAA0P,OAAsB01B,EAAAt5C,EAAAvB,EAAAxB,EAAA2B,EAAAf,EAAAk1B,EAAAnzB,IAAAhD,EAAAyyC,cAAAzyC,EAAAu3C,UAAAv3C,EAAAwxC,UAAApuC,EAAAygC,SAAA8Y,UAAA,GAAA36C,EAAA4S,EAAAgoC,kBAAAr/B,KAAAvd,EAAA68C,OAAA78C,EAAA88C,eAAA98C,EAAA8xC,WAAA1uC,EAAAygC,SAAA6V,UAAA9kC,EAAAgoC,kBAAA5yC,UAAsN,CAAK,GAAAnH,IAAAxC,EAAA83B,6BAAA,eAAA93B,EAAAg4B,0BAAA,kBAAAh4B,EAAA62B,eAAA,aAAiIlQ,KAAArlB,EAAAqlB,QAAYlkB,EAAAm4B,gBAAA5E,EAAAF,GAAA,IAAAx0B,EAAAknC,KAAsCj0B,GAAAmoC,iBAAAx/B,KAAA2Y,GAAAr0B,EAAAiU,QAAAknC,UAAAn7C,EAAAiU,QAAAmnC,SAAAp6C,GAAAwzB,EAAAr2B,EAAA68C,OAAA78C,EAAAk9C,QAAAl9C,EAAA88C,eAAA98C,EAAA8xC,WAAA1uC,EAAAygC,SAAA6V,UAAA9kC,EAAAmoC,iBAAA/yC,MAAsKnI,EAAAgxC,uBAAA1xC,GAAAnB,EAAA8wC,iBAAA1tC,EAAAygC,SAAAkN,UAAA,EAAAlvC,EAAAowC,mBAAA9wC,EAAA+wC,UAAAt9B,EAAA9S,EAAAnB,GAA+G,IAAA62B,GAAAma,EAAA/8B,EAAA,EAAA/S,EAAAyV,UAAA0P,MAAA0Q,EAAAylB,EAAAC,oBAAAj8C,EAAA+wC,UAAA/b,EAAAl2B,EAAA4B,EAAAyV,UAAAkgB,GAAApb,EAAA+gC,EAAAE,iBAAAl8C,EAAA+wC,UAAA/b,EAAAl2B,EAAA4B,EAAAyV,UAAAkgB,EAAuLx3B,GAAA8wC,iBAAA1tC,EAAAygC,SAAAyZ,mBAAA,EAAAz7C,EAAAowC,mBAAA71B,EAAAxH,EAAA9S,EAAAnB,GAAA,IAAAoC,GAAA/C,EAAA8wC,iBAAA1tC,EAAAygC,SAAA0Z,sBAAA,EAAAC,GAAAL,EAAAM,iBAAA36C,EAAA3B,EAAA+wC,UAAArwC,EAAAG,EAAA01B,EAAAtb,EAAA+Z,EAAAr2B,EAAA03B,EAAAn3B,IAAAL,EAAA8wC,iBAAA1tC,EAAAygC,SAAA0Z,sBAAA,EAAA7lB,GAAA13B,EAAA8jC,UAAA1gC,EAAAygC,SAAAqP,sBAAAt+B,EAAA4sB,cAAA9C,UAAAgf,EAAAt6C,EAAAR,EAAAf,EAAAxB,EAAAuU,EAAAhK,EAAA5I,EAAAk0B,EAAAC,KAAmYhzB,GAAAnD,EAAAwyC,OAAAxyC,EAAAk3C,YAA0B,QAAAwF,GAAA76C,EAAAhC,EAAAQ,EAAAkB,EAAAS,EAAAF,EAAAnB,GAA2C,GAAAO,GAAArB,EAAA8rC,GAAA5pC,EAAAlC,EAAAyX,SAAyBpW,GAAAswC,UAAA3vC,EAAAgiC,SAAA6N,iBAAA5vC,EAAA,KAAAZ,EAAA4iC,UAAAjiC,EAAAgiC,SAAA8Z,UAAAp8C,EAAA,KAAAL,EAAAuxC,cAAAvxC,EAAAwxC,UAAA7yC,EAAA8yC,aAAAp1B,KAAArc,KAAAswC,UAAA3vC,EAAAgiC,SAAA+O,cAAA,GAAA1xC,EAAA4iC,UAAAjiC,EAAAgiC,SAAAsP,QAAApxC,EAAA8mC,MAAA,MAAApmC,KAAAqM,IAAA5N,EAAAswC,UAAA3vC,EAAAgiC,SAAA+Z,wBAAAj9C,EAAAy3B,eAAA,KAAAl3B,EAAAswC,UAAA3vC,EAAAgiC,SAAAga,2BAAAl9C,EAAAu3B,kBAAA,KAAAh3B,EAAA4iC,UAAAjiC,EAAAgiC,SAAA0N,4BAAAxvC,EAAAqpC,uBAAqc,IAAAtrC,GAAAg+C,EAAAC,oBAAAp9C,EAAAoB,EAAA1B,EAAAkB,OAA8C,KAAAzB,EAAAk+C,QAAA98C,EAAA4iC,UAAAjiC,EAAAgiC,SAAAoa,SAAAn+C,EAAAk+C,YAAA,KAAAl+C,EAAAo+C,OAAAh9C,EAAA4iC,UAAAjiC,EAAAgiC,SAAAsa,OAAAr+C,EAAAo+C,OAAAh9C,EAAA4iC,UAAAjiC,EAAAgiC,SAAAua,eAAAr8C,EAAAsG,MAAAtG,EAAAuG,QAAApH,EAAAswC,UAAA3vC,EAAAgiC,SAAAwa,gBAAAr8C,EAAA,KAA4N,QAAA07C,GAAA77C,EAAAhC,EAAAQ,EAAAkB,EAAAS,EAAAF,EAAAnB,EAAAO,EAAAa,GAA4C,GAAAjC,GAAAO,EAAAsrC,GAAA3rC,EAAAK,EAAAiX,SAAyB,IAAApW,EAAA,CAAM,GAAAS,IAAAhB,EAAA,6BAAAV,GAAAsB,EAAA+iC,4BAAA3iC,IAAAJ,EAAAwuC,MAAApuC,GAAAw0B,EAAAp0B,EAAAU,KAAAE,IAAA3C,EAAAuoC,QAAAvoC,EAAAorC,uBAAA,CAAwItrC,GAAAgkC,UAAAjiC,EAAAgiC,SAAAya,cAAAnoB,GAAAl2B,IAAAH,EAAAgkC,UAAAjiC,EAAAgiC,SAAA0a,UAAA,GAAAC,EAAA18C,EAAAP,EAAAzB,EAAA+B,IAAA/B,EAAAgkC,UAAAjiC,EAAAgiC,SAAA0a,UAAA,GAAiJC,EAAA18C,EAAAP,EAAAzB,EAAA+B,GAA4B,QAAA28C,GAAA38C,EAAAhC,EAAAQ,EAAAkB,GAAqCA,EAAA8J,KAAAhL,IAAA8xC,UAAAtyC,EAAAkI,GAAAlG,EAAAoyB,mBAAApyB,EAAAqyB,YAAAryB,EAAA6xB,SAAA7xB,EAAA4xB,sBAAA/yB,IAAAb,EAAAkI,IAAAlG,EAAAg5B,2BAAuI,GAAA0X,GAAAlwC,EAAA,0BAAAsvC,EAAAtvC,EAAA,kCAAA86C,EAAA96C,EAAA,wBAAAy7C,EAAAz7C,EAAA,yBAAAiC,EAAAjC,EAAA,qBAAAiC,KAAAk5C,EAAAl5C,EAAAC,SAAA,GAAA/B,cAAA,IAA0S5C,GAAAD,QAAA48C,IACplInK,iCAAA,GAAAqM,uBAAA,IAAAC,wBAAA,IAAAC,yBAAA,GAAAlT,oBAAA,IAA6ImT,IAAA,SAAAv8C,EAAAzC,EAAAD,GAChJ,YAAa,IAAAk/C,GAAA,WAA4Bz9C,KAAA09C,YAAA,GAAAp0C,cAAA,KAAAtJ,KAAA29C,gBAAA,GAAA9/B,YAAA,KAAA7d,KAAA49C,UAAA,GAAAvzC,mBAAA,KAAArK,KAAA2jB,MAAA,GAAA9F,YAAA7d,KAAA49C,UAAAr1C,QAAAvI,KAAA69C,aAAA,EAAA79C,KAAA89C,YAAA,EAAmNL,GAAA99C,UAAAo+C,OAAA,SAAA59C,EAAAM,EAAAhC,GAA8C,GAAAiC,GAAAV,IAAWA,MAAA89C,aAAA39C,EAAA,EAAAH,KAAA89C,YAAA,GAAAr9C,EAAAY,KAAAoV,MAAA,GAAAhW,EAA6D,IAAAG,EAAM,IAAAH,EAAAT,KAAA69C,aAAA,IAAAj9C,EAAAH,EAAA,EAAiCG,GAAAZ,KAAA69C,aAAqBj9C,IAAAF,EAAAg9C,YAAA98C,GAAAT,EAAAO,EAAAi9C,gBAAA/8C,GAAAF,EAAAk9C,UAAAh9C,OAA2D,KAAAA,EAAAH,EAAaG,EAAAZ,KAAA69C,aAAoBj9C,IAAAF,EAAAg9C,YAAA98C,GAAAT,EAAAO,EAAAi9C,gBAAA/8C,GAAAF,EAAAk9C,UAAAh9C,EAA2D,KAAAA,EAAA,EAAQA,EAAA,IAAMA,IAAA,CAAK,GAAAd,GAAAK,EAAAO,EAAAg9C,YAAA98C,GAAA3B,EAAA,KAAAR,EAAAqB,EAAArB,EAAA,EAAyCiC,GAAAk9C,UAAAh9C,MAAAH,EAAAC,EAAAi9C,gBAAA/8C,GAAA3B,EAAAyB,EAAAi9C,gBAAA/8C,GAAA3B,EAAkEe,KAAAg+C,SAAA,EAAAh+C,KAAA69C,aAAAp9C,GAAoCg9C,EAAA99C,UAAAs+C,UAAA,SAAA99C,GAA8C,WAAAH,KAAA49C,UAAAv8C,KAAAoV,MAAA,GAAAtW,KAA4Cs9C,EAAA99C,UAAAwc,KAAA,SAAAhc,GAAyCH,KAAAs2C,SAAAn2C,EAAAi2C,YAAAj2C,EAAAk2C,WAAAr2C,KAAAs2C,SAAAt2C,KAAAg+C,UAAA79C,EAAA+9C,cAAA/9C,EAAAk2C,WAAA,YAAAl2C,EAAAg+C,MAAAh+C,EAAAi+C,cAAAp+C,KAAA2jB,OAAA3jB,KAAAg+C,SAAA,KAAAh+C,KAAAs2C,QAAAn2C,EAAAk+C,gBAAAl+C,EAAAi2C,YAAAj2C,EAAAk2C,WAAAr2C,KAAAs2C,SAAAn2C,EAAAm+C,cAAAn+C,EAAAk2C,WAAAl2C,EAAAo+C,eAAAp+C,EAAAu7C,eAAAv7C,EAAAm+C,cAAAn+C,EAAAk2C,WAAAl2C,EAAAq+C,eAAAr+C,EAAAu7C,eAAAv7C,EAAAm+C,cAAAn+C,EAAAk2C,WAAAl2C,EAAAs+C,mBAAAt+C,EAAA27C,SAAA37C,EAAAm+C,cAAAn+C,EAAAk2C,WAAAl2C,EAAAu+C,mBAAAv+C,EAAA27C,SAAA37C,EAAAw+C,WAAAx+C,EAAAk2C,WAAA,EAAAl2C,EAAAg+C,MAAA,QAAAh+C,EAAAg+C,MAAAh+C,EAAAi+C,cAAAp+C,KAAA2jB,SAAujBnlB,EAAAD,QAAAk/C,OAC75CmB,IAAA,SAAA39C,EAAAzC,EAAAD,GACJ,YAAa,SAAAsgD,GAAAj+C,GAA2B,GAAAT,GAAA2+C,EAAAj8C,QAAyBoE,MAAA,EAAAC,OAAA,IAAiBzI,KAAMgC,EAAA,GAAA0F,GAAA,KAAsBC,YAAA,GAAgB,QAAA1E,KAAAd,GAAA,CAAgB,GAAAf,GAAAe,EAAAc,GAAAhB,EAAAjC,EAAAiD,KAAqB,QAAA9C,KAAAiB,GAAA,CAAgB,GAAAE,GAAAF,GAAAjB,EAAY,IAAAmB,GAAA,IAAAA,EAAAg/C,OAAA93C,OAAA,IAAAlH,EAAAg/C,OAAA73C,OAAA,CAA+C,GAAAxI,GAAA+B,EAAA0G,QAAApH,EAAAg/C,OAAA93C,MAAA,EAAAwR,EAAA1Y,EAAAg/C,OAAA73C,OAAA,EAAAuR,EAAoEqmC,GAAA/2C,OAAA5H,GAAqB8G,MAAAxG,EAAAmB,EAAAsF,OAAAzG,EAAAiB,IAAqBo9C,EAAA12B,KAAAroB,EAAAg/C,OAAA5+C,GAA8B4B,EAAA,EAAAJ,EAAA,IAAUI,EAAArD,EAAAqD,EAAA0W,EAAA9W,EAAAjD,EAAAiD,EAAA8W,GAA4B1Y,EAAAg/C,QAAAr+C,EAAA9B,IAAiBogD,KAAAtgD,EAAAugD,QAAAl/C,EAAAk/C,WAA4B,MAAAx+C,GAAA6G,SAAAw3C,EAAA/2C,OAAA5H,GAAuC8G,MAAAxG,EAAAmB,EAAAsF,OAAAzG,EAAAiB,KAAwBw9C,MAAA/+C,EAAAg/C,UAAA1gD,GAAqB,GAAA0H,GAAAlF,EAAA,sBAAA0G,EAAA1G,EAAA,iBAAA69C,EAAAn3C,EAAAm3C,WAAArmC,EAAA,CAA6Gja,GAAAD,SAAgBsgD,oBAC3pBO,gBAAA,IAAAC,qBAAA,IAA2CC,IAAA,SAAAr+C,EAAAzC,EAAAD,GAC9C,YAAa,IAAAghD,GAAAt+C,EAAA,6BAAAoH,EAAApH,EAAA,oBAAAu+C,EAAAv+C,EAAA,oCAAA0G,EAAA1G,EAAA,gBAAAw+C,EAAA93C,EAAA83C,SAAAruB,EAAAnwB,EAAA,iBAAA69C,EAAA1tB,EAAA0tB,WAAAY,EAAA,SAAAh/C,EAAAP,GAAuRH,KAAA2/C,iBAAAj/C,EAAAV,KAAA4/C,yBAAAz/C,EAAAH,KAAA6/C,WAAyEH,GAAA//C,UAAAmgD,OAAA,SAAAp/C,GAA0CV,KAAA+/C,IAAAr/C,GAAWg/C,EAAA//C,UAAAqgD,UAAA,SAAAt/C,EAAAP,GAAgD,GAAAM,GAAAT,KAAAvB,IAAgB,QAAAmC,KAAAF,GAAA,OAAAhC,GAAA,EAAAa,EAAAmB,EAAAE,GAAkClC,EAAAa,EAAAwB,OAAWrC,GAAA,GAAM,GAAAoB,GAAAP,EAAAb,EAAWD,GAAA4I,MAAQ44C,MAAAr/C,EAAA+F,GAAA7G,IAAe2/C,EAAAhhD,EAAA,SAAAiC,EAAAP,GAAyB,GAAA1B,GAAAiC,EAAAu/C,MAAAr/C,EAAAF,EAAAiG,GAAAjI,EAAA+B,EAAAo/C,QAAAphD,EAAoCC,OAAA+B,EAAAo/C,QAAAphD,IAAoByhD,UAASC,aAAe,IAAA5gD,GAAAb,EAAAwhD,OAAAt/C,EAAkB,aAAArB,EAAA,WAAAY,GAAA,MAAkC8/C,MAAAxhD,EAAAkI,GAAA/F,EAAAw/C,MAAA7gD,GAAuB,IAAAA,EAAAkB,EAAA4/C,SAAA3hD,EAAAD,EAAAmC,GAAA,WAAAT,GAAA,MAA2C8/C,MAAAxhD,EAAAkI,GAAA/F,EAAAw/C,MAAA7gD,GAAuB,IAAAO,GAAAuB,KAAAoV,MAAA7V,EAAA,IAAwB,QAAAd,EAAA,iBAAAK,GAAA,GAAAU,OAAA,gCAAwE,IAAA5B,GAAAP,EAAAyhD,SAAArgD,EAAoBb,OAAAP,EAAAyhD,SAAArgD,MAAAy/C,EAAA9gD,EAAAqB,EAAAW,EAAAs/C,IAAAt/C,EAAAk/C,iBAAA,SAAAj/C,EAAAP,GAAiF,GAAAA,EAAA,OAAAM,KAAAN,GAAAzB,EAAAwhD,QAAAz/C,GAAAN,GAAAM,EAAuC,QAAAhC,GAAA,EAAAmC,EAAA3B,EAAgBR,EAAAmC,EAAAG,OAAWtC,GAAA,GAAM,EAAAmC,EAAAnC,IAAAiC,EAAAP,SAAczB,GAAAyhD,SAAArgD,MAAqBb,EAAAoI,KAAA,SAAA3G,EAAAD,GAAwBC,EAAAP,EAAAO,GAAAD,GAAAN,EAAA,MAAkB8/C,MAAAxhD,EAAAkI,GAAA/F,EAAAw/C,MAAA3/C,EAAAG,IAAA,UAAkC,SAAAF,EAAAD,GAAe,GAAAC,EAAAP,EAAAO,OAAU,IAAAD,EAAA,CAAW,OAAAhC,MAAYmC,EAAA,EAAAlC,EAAA+B,EAASG,EAAAlC,EAAAqC,OAAWH,GAAA,GAAM,GAAArB,GAAAb,EAAAkC,GAAAd,EAAAP,EAAA0gD,MAAAhhD,EAAAM,EAAAoH,GAAAjF,EAAAnC,EAAA6gD,OAAsC3hD,EAAAqB,KAAArB,EAAAqB,QAAeb,GAAAyC,EAAQvB,EAAA,KAAA1B,OAAaihD,EAAA//C,UAAA0gD,SAAA,SAAA3/C,EAAAP,EAAAM,GAAiD,GAAAhC,GAAAuB,KAAA4/C,wBAAoC,IAAAnhD,IAAA+gD,EAAA,0BAAA/+C,IAAA++C,EAAA,oBAAA/+C,IAAA,CAA4E,GAAAG,GAAAF,EAAA4/C,OAAgB,KAAA1/C,EAAA,CAAO,GAAAlC,GAAA,KAAY,SAAAytB,KAAAhsB,GAAAzB,EAAA,gBAAAytB,KAAAhsB,GAAAzB,EAAA,eAAAytB,KAAAhsB,KAAAzB,EAAA,OAAAkC,EAAAF,EAAA4/C,QAAA,GAAAj4C,GAAA,WAAA5J,EAAAC,GAAsH,OAAOiI,GAAAlG,EAAAs+C,OAAAD,EAAAj8C,QAA+BoE,MAAA,GAAAC,OAAA,IAAmBtG,EAAAqJ,KAAA6V,OAAAC,aAAAtf,KAAAw+C,SAA0Ch4C,MAAA,GAAAC,OAAA,GAAAq5C,KAAA,EAAAC,KAAA,EAAAC,QAAA,OAA+CjiD,EAAAD,QAAAmhD,IACtwDgB,4BAAA,IAAAtB,gBAAA,IAAAuB,mCAAA,IAAA9vB,eAAA,IAAA+vB,mBAAA,IAAmIC,IAAA,SAAA5/C,EAAAzC,EAAAD,GACtI,YAAa,SAAAuiD,GAAAlgD,EAAAT,GAA4B,GAAA1B,GAAA0B,EAAA25B,WAAAr5B,GAAsBsB,EAAAnB,EAAAmB,EAAA0W,EAAA9W,EAAAf,EAAAe,EAAA8W,EAAA7W,EAAAhB,EAAAgB,EAAA,EAAA6W,EAAA/W,EAAAd,EAAAc,EAAA,EAAA+W,EAA6D,QAAOqhB,WAAAr7B,EAAAsiD,YAAAtgD,EAAAs8B,IAAAt8B,EAAAsB,EAAAtB,EAAAkB,GAAAu7B,IAAAz8B,EAAAsB,EAAAtB,EAAAmB,EAAAnB,EAAAkB,EAAAlB,EAAAiB,GAAAy2C,aAAA13C,EAAAmB,EAAAnD,EAAAgC,EAAAiB,EAAAjD,IAAwF,QAAAuiD,GAAApgD,GAA2B,GAAAT,GAAA8gD,EAAAp+C,QAAwBoE,MAAA,EAAAC,OAAA,IAAiBzI,KAAMgC,EAAA,GAAA0F,GAAA,KAAsBC,YAAA,GAAgB,QAAAtH,KAAA8B,GAAA,CAAgB,GAAAb,GAAAa,EAAA9B,GAAAS,EAAAkB,EAAA0G,QAAApH,EAAAuK,KAAArD,MAAA,EAAAwR,EAAA1Y,EAAAuK,KAAApD,OAAA,EAAAuR,EAAuEwoC,GAAAl5C,OAAA5H,GAAoB8G,MAAAxG,EAAAmB,EAAAsF,OAAAzG,EAAAiB,IAAqBu/C,EAAA74B,KAAAroB,EAAAuK,KAAAnK,GAA2B4B,EAAA,EAAAJ,EAAA,IAAUI,EAAAxC,EAAAwC,EAAA0W,EAAA9W,EAAApC,EAAAoC,EAAA8W,GAA4B1Y,EAAAuK,MAAA7L,EAAAK,GAAAgiD,EAAAvhD,EAAAQ,GAAiC,MAAAU,GAAA6G,SAAA25C,EAAAl5C,OAAA5H,GAAsC8G,MAAAxG,EAAAmB,EAAAsF,OAAAzG,EAAAiB,KAAwBw9C,MAAA/+C,EAAAg/C,UAAA1gD,GAAqB,GAAA0H,GAAAlF,EAAA,sBAAA0G,EAAA1G,EAAA,iBAAAggD,EAAAt5C,EAAAs5C,UAAAxoC,EAAA,CAA2Gja,GAAAD,SAAgBuiD,gBAAAE,oBACxvB5B,gBAAA,IAAAC,qBAAA,IAA2C6B,IAAA,SAAAjgD,EAAAzC,EAAAD,GAC9C,YAAa,IAAA4H,GAAAlF,EAAA,sBAAA0G,EAAA1G,EAAA,iBAAAggD,EAAAt5C,EAAAs5C,UAAA7vB,EAAAnwB,EAAA,iBAAA6/C,EAAA1vB,EAAA0vB,cAAAK,EAAAlgD,EAAA,aAAAmgD,EAAA,WAAiOphD,KAAAqhD,UAAcrhD,KAAAshD,QAAA,EAAAthD,KAAAuhD,cAAAvhD,KAAAwhD,UAAA,GAAAr7C,GAAA,OAAuEC,YAAA,IAAcpG,KAAAyhD,YAAkBzhD,KAAA0hD,WAAAT,EAAAp+C,QAAmCoE,MAAA,GAAAC,OAAA,KAAmBlH,KAAA2hD,OAAA,EAAiBP,GAAAzhD,UAAAiiD,SAAA,WAA2C,MAAA5hD,MAAAshD,QAAmBF,EAAAzhD,UAAAkiD,UAAA,SAAA1hD,GAA8C,GAAAM,GAAAT,IAAW,IAAAA,KAAAshD,SAAAnhD,IAAAH,KAAAshD,OAAAnhD,KAAA,CAAuC,OAAAS,GAAA,EAAAnC,EAAAgC,EAAA8gD,WAA2B3gD,EAAAnC,EAAAsC,OAAWH,GAAA,GAAM,GAAAF,GAAAjC,EAAAmC,GAAAd,EAAAY,EAAAuZ,IAAAvY,EAAAhB,EAAAohD,QAAgCrhD,GAAAshD,QAAAjiD,EAAA4B,GAAe1B,KAAAuhD,gBAAoBH,EAAAzhD,UAAAqiD,SAAA,SAAA7hD,GAA6C,MAAAH,MAAAqhD,OAAAlhD,IAAsBihD,EAAAzhD,UAAAsiD,SAAA,SAAA9hD,EAAAM,GAA+CT,KAAAqhD,OAAAlhD,GAAAM,GAAiB2gD,EAAAzhD,UAAAuiD,YAAA,SAAA/hD,SAAgDH,MAAAqhD,OAAAlhD,EAAsB,IAAAM,GAAAT,KAAAyhD,SAAAthD,EAAuBM,KAAAT,KAAAwhD,UAAAt5C,MAAAzH,EAAA0hD,WAAAniD,MAAAyhD,SAAAthD,KAAyDihD,EAAAzhD,UAAAyiD,UAAA,SAAAjiD,EAAAM,GAAgD,GAAAG,GAAAZ,KAAAvB,GAAA,CAAgB,KAAAuB,KAAA4hD,WAAA,OAAAlhD,GAAA,EAAAZ,EAAAK,EAAoCO,EAAAZ,EAAAiB,OAAWL,GAAA,GAAM,GAAAgB,GAAA5B,EAAAY,EAAWE,GAAAygD,OAAA3/C,KAAAjD,GAAA,GAAoBuB,KAAA4hD,YAAAnjD,EAAAuB,KAAA+hD,QAAA5hD,EAAAM,GAAAT,KAAAuhD,WAAAl6C,MAA2D4S,IAAA9Z,EAAA2hD,SAAArhD,KAAmB2gD,EAAAzhD,UAAAoiD,QAAA,SAAA5hD,EAAAM,GAA8C,OAAAG,GAAAZ,KAAAvB,KAAmBiC,EAAA,EAAAZ,EAAAK,EAASO,EAAAZ,EAAAiB,OAAWL,GAAA,GAAM,GAAAgB,GAAA5B,EAAAY,GAAAX,EAAAa,EAAAygD,OAAA3/C,EAAyB3B,KAAAtB,EAAAiD,GAAA3B,GAAYU,EAAA,KAAAhC,IAAU2iD,EAAAzhD,UAAA04C,aAAA,WAAgD,OAAOpxC,MAAAjH,KAAAwhD,UAAA5/C,EAAAsF,OAAAlH,KAAAwhD,UAAA9/C,IAAgD0/C,EAAAzhD,UAAAs4C,WAAA,SAAA93C,GAA+C,GAAAM,GAAAT,KAAAyhD,SAAAthD,EAAuB,IAAAM,EAAA,MAAAA,GAAAs2C,QAAuB,IAAAn2C,GAAAZ,KAAAgiD,SAAA7hD,EAAuB,KAAAS,EAAA,WAAkB,IAAAnC,GAAAmC,EAAA0J,KAAArD,MAAA,EAAAvG,EAAAE,EAAA0J,KAAApD,OAAA,EAAApH,EAAAE,KAAAwhD,UAAAr6C,QAAA1I,EAAAiC,EAAqF,KAAAZ,EAAA,WAAkBmhD,GAAAl5C,OAAA/H,KAAA0hD,WAAA1hD,KAAAq4C,eAAsD,IAAA32C,GAAAd,EAAA0J,KAAAvK,EAAAC,KAAA0hD,WAAAniD,EAAAO,EAAAiC,EAAzrD,EAAyrD9C,EAAAa,EAAA6B,EAAzrD,EAAyrD7C,EAAA4C,EAAAuF,MAAArI,EAAA8C,EAAAwF,MAAgF+5C,GAAA74B,KAAA1mB,EAAA3B,GAAoBgC,EAAA,EAAAJ,EAAA,IAAUI,EAAAxC,EAAAoC,EAAA1C,IAAUgI,MAAAnI,EAAAoI,OAAAtI,IAAiBqiD,EAAA74B,KAAA1mB,EAAA3B,GAAsBgC,EAAA,EAAAJ,EAAA/C,EAAA,IAAYmD,EAAAxC,EAAAoC,EAAA1C,EAAA,IAAYgI,MAAAnI,EAAAoI,OAAA,IAAiB+5C,EAAA74B,KAAA1mB,EAAA3B,GAAsBgC,EAAA,EAAAJ,EAAA,IAAUI,EAAAxC,EAAAoC,EAAA1C,EAAAL,IAAYqI,MAAAnI,EAAAoI,OAAA,IAAiB+5C,EAAA74B,KAAA1mB,EAAA3B,GAAsBgC,EAAAjD,EAAA,EAAA6C,EAAA,IAAYI,EAAAxC,EAAA,EAAAoC,EAAA1C,IAAYgI,MAAA,EAAAC,OAAAtI,IAAiBqiD,EAAA74B,KAAA1mB,EAAA3B,GAAsBgC,EAAA,EAAAJ,EAAA,IAAUI,EAAAxC,EAAAT,EAAA6C,EAAA1C,IAAYgI,MAAA,EAAAC,OAAAtI,IAAiBoB,KAAA2hD,OAAA,CAAgB,IAAA9hD,GAAAihD,EAAAhhD,EAAAc,EAAyB,OAAAZ,MAAAyhD,SAAAthD,IAAyBgiD,IAAAriD,EAAAi3C,SAAAl3C,GAAiBA,GAAGuhD,EAAAzhD,UAAAwc,KAAA,SAAAhc,GAAyCH,KAAAqiD,aAAAriD,KAAA2hD,QAAA3hD,KAAAqiD,aAAAC,OAAAtiD,KAAA0hD,YAAA1hD,KAAA2hD,OAAA,GAAA3hD,KAAAqiD,aAAA,GAAAlB,GAAAhhD,EAAAH,KAAA0hD,WAAAvhD,EAAAoiD,MAAAviD,KAAAqiD,aAAAlmC,KAAAhc,EAAAs7C,OAAAt7C,EAAAu7C,gBAAiMl9C,EAAAD,QAAA6iD,IACp4EhC,gBAAA,IAAAoD,gBAAA,GAAAC,YAAA,GAAApD,qBAAA,IAA6EqD,IAAA,SAAAzhD,EAAAzC,EAAAD,GAChF,YAAa,IAAAiyB,GAAAvvB,EAAA,gBAAA0hD,EAAA,SAAAliD,EAAAhC,GAAyDuB,KAAAiH,MAAAxG,EAAAT,KAAAkH,OAAAzI,EAAAuB,KAAA4iD,QAAA,EAAA5iD,KAAA6iD,MAAA,EAAA7iD,KAAAsK,KAAA,GAAAuT,YAAA7d,KAAAiH,MAAAjH,KAAAkH,OAAAlH,KAAA6iD,OAAA7iD,KAAAm/C,aAAsIwD,GAAAhjD,UAAA63C,QAAA,SAAA/2C,EAAAhC,GAA0C,GAAA0B,GAAAM,EAAAyO,KAAA,KAAA4Q,OAAArhB,EAA4B,OAAAuB,MAAAm/C,UAAAh/C,KAAAH,KAAAm/C,UAAAh/C,GAAAH,KAAA8iD,QAAAriD,EAAAhC,IAAAuB,KAAAm/C,UAAAh/C,IAAkFwiD,EAAAhjD,UAAAmjD,QAAA,SAAAriD,EAAAhC,GAA2C,GAAA0B,GAAAH,KAAA0B,EAAAjD,EAAA,IAAAqB,EAAA,EAAA4B,EAAA,CAA2B,IAAA1B,KAAA4iD,QAAA9iD,EAAAE,KAAAkH,OAAA,MAAAspB,GAAA0K,SAAA,8BAAkF,QAAAt6B,GAAA,EAAAF,EAAA,EAAgBA,EAAAD,EAAAM,OAAWL,IAAAE,GAAAH,EAAAC,EAAY,QAAAnB,GAAAS,KAAAiH,MAAArG,EAAAk0B,EAAAv1B,EAAA,EAAAmX,EAAAjW,EAAAM,OAAA,KAAA9B,GAAAyC,EAAkDzC,GAAAyC,EAAKzC,IAAA,OAAAiD,GAAA/B,EAAAyiD,QAAAlhD,EAAAzC,EAAAH,EAAAqB,EAAA8G,MAAA/E,EAAAvB,EAAA+V,GAAAjW,IAAAM,OAAA,KAAAgB,EAAAtB,EAAA,GAAA/B,EAAA,EAAAq2B,EAAA,EAA4EA,EAAA/0B,KAAAiH,MAAa8tB,IAAA,CAAK,KAAKhzB,EAAAgzB,EAAAx1B,GAAMoB,EAAAoB,KAAAtB,EAAA/B,GAAAgY,GAAAhY,IAAA+B,EAAAM,OAAA,IAAAgB,GAAAtB,EAAA,IAAA/B,GAA8C,IAAAmD,GAAAR,KAAAoK,IAAAspB,EAAAp0B,EAAApB,GAAAQ,EAAAsB,KAAAoK,IAAAspB,EAAAhzB,EAAAxC,GAAAqC,EAAAP,KAAAmJ,IAAA3I,EAAA9B,GAAAib,EAAAtc,EAAA,KAAA88B,MAAA,EAA0E,IAAA/8B,EAAA,CAAM,GAAA8B,GAAAmB,EAAAzC,EAAAyC,GAAAozB,EAAA,IAAoB,IAAA9Z,EAAA,CAAM,GAAAnb,GAAAi1B,EAAAzzB,KAAAoK,IAAAlL,EAAoBi7B,GAAAn6B,KAAAiE,KAAA1D,IAAA/B,SAAqB27B,GAAA1G,EAAAzzB,KAAAiE,KAAA1D,IAAArB,SAA4Bi7B,IAAAxgB,EAAA,MAAApZ,CAAkBzB,GAAAmK,KAAA,KAAAxL,EAAAi2B,IAAA1zB,KAAAuG,IAAA,EAAAvG,KAAAmJ,IAAA,IAAAgxB,EAAA,MAAkD,GAAAr5B,IAAOR,GAAA3B,KAAA4iD,QAAAlhD,EAAA,IAAA1B,KAAAkH,cAAA,EAAAxF,EAAA1B,KAAAkH,OAAAD,MAAArG,EAAkE,OAAAZ,MAAA4iD,SAAA9iD,EAAAE,KAAA2hD,OAAA,EAAAx/C,GAAuCwgD,EAAAhjD,UAAAwc,KAAA,SAAA1b,GAAsCT,KAAAs2C,SAAA71C,EAAA21C,YAAA31C,EAAA41C,WAAAr2C,KAAAs2C,SAAAt2C,KAAA2hD,QAAA3hD,KAAA2hD,OAAA,EAAAlhD,EAAAy9C,cAAAz9C,EAAA41C,WAAA,MAAAr2C,KAAAiH,MAAAjH,KAAAkH,OAAAzG,EAAA8hD,KAAA9hD,EAAA29C,cAAAp+C,KAAAsK,SAAAtK,KAAAs2C,QAAA71C,EAAA49C,gBAAA59C,EAAA21C,YAAA31C,EAAA41C,WAAAr2C,KAAAs2C,SAAA71C,EAAA69C,cAAA79C,EAAA41C,WAAA51C,EAAA89C,eAAA99C,EAAAsiD,QAAAtiD,EAAA69C,cAAA79C,EAAA41C,WAAA51C,EAAA+9C,eAAA/9C,EAAAsiD,QAAAtiD,EAAA69C,cAAA79C,EAAA41C,WAAA51C,EAAAg+C,mBAAAh+C,EAAAg7C,QAAAh7C,EAAA69C,cAAA79C,EAAA41C,WAAA51C,EAAAi+C,mBAAAj+C,EAAAg7C,QAAAh7C,EAAAk+C,WAAAl+C,EAAA41C,WAAA,EAAA51C,EAAA8hD,KAAAviD,KAAAiH,MAAAjH,KAAAkH,OAAA,EAAAzG,EAAA8hD,KAAA9hD,EAAA29C,cAAAp+C,KAAAsK,QAAgkB9L,EAAAD,QAAAokD,IACvrD9xB,eAAA,MAAmBmyB,IAAA,SAAA/hD,EAAAzC,EAAAD,GACtB,YAAa,IAAA2lB,GAAAjjB,EAAA,mBAAAiC,EAAAjC,EAAA,qBAAAiC,KAAAu6C,EAAAx8C,EAAA,mBAAAgiD,EAAAhiD,EAAA,0BAAAwwB,EAAAxwB,EAAA,kBAAAsvC,EAAAtvC,EAAA,kCAAAuvB,EAAAvvB,EAAA,gBAAAiwB,EAAAjwB,EAAA,uBAAAwxC,EAAAxxC,EAAA,yBAAAmjC,EAAAnjC,EAAA,+BAAA8gC,EAAA9gC,EAAA,qBAAA0G,EAAA1G,EAAA,iCAAA4hC,EAAAl7B,EAAAk7B,qBAAAqgB,EAAAjiD,EAAA,cAAAkiD,EAAAliD,EAAA,aAAAmiD,EAAAniD,EAAA,oBAAAgJ,GAAkqBo5C,OAAApiD,EAAA,iBAAAqiD,OAAAriD,EAAA,iBAAAm7B,KAAAn7B,EAAA,eAAAonB,KAAApnB,EAAA,eAAAsiD,iBAAAtiD,EAAA,yBAAAuiD,OAAAviD,EAAA,iBAAAwiD,WAAAxiD,EAAA,qBAAA2T,MAAA3T,EAAA,iBAAgRyiD,EAAA,SAAAvjD,EAAAO,GAAuBV,KAAAuqC,GAAApqC,EAAAH,KAAAkW,UAAAxV,EAAAV,KAAA2jD,iBAAgD3jD,KAAAk2C,qBAA0Bl2C,KAAAy2C,kBAAAz2C,KAAAuxC,aAAA,GAAAkM,GAAAz9C,KAAA4jD,QAAA5jD,KAAA6jD,aAAAZ,EAAAa,gBAAAb,EAAAc,eAAA,EAAA/jD,KAAAgkD,aAAA,EAAA3iD,KAAAkJ,IAAA,MAAAvK,KAAAikD,eAAA9jD,EAAA+jD,aAAA/jD,EAAAgkD,0BAAAnkD,KAAAmvC,8BAAAtM,EAAAS,kBAAAtjC,KAAAokD,0BAAA,GAAAvhB,GAAwX6gB,GAAA/jD,UAAAoI,OAAA,SAAA5H,EAAAO,GAAuC,GAAAD,GAAAT,KAAAvB,EAAAuB,KAAAuqC,EAAqBvqC,MAAAiH,MAAA9G,EAAA+jB,EAAA0sB,iBAAA5wC,KAAAkH,OAAAxG,EAAAwjB,EAAA0sB,iBAAAnyC,EAAA4lD,SAAA,IAAArkD,KAAAiH,MAAAjH,KAAAkH,OAAoH,QAAAtG,GAAA,EAAAd,EAAAW,EAAAg2C,eAA+B71C,EAAAd,EAAAiB,OAAWH,GAAA,GAAM,GAAArB,GAAAO,EAAAc,EAAWH,GAAA8pC,GAAA+Z,cAAA/kD,EAAA+2C,SAAA71C,EAAA8pC,GAAAga,kBAAAhlD,EAAAilD,KAA4DxkD,KAAAy2C,kBAAAz2C,KAAAykD,WAAAzkD,KAAAuqC,GAAAma,mBAAA1kD,KAAAykD,UAAAzkD,KAAAykD,SAAA,OAAqGf,EAAA/jD,UAAAikD,MAAA,WAAoC,GAAAzjD,GAAAH,KAAAuqC,EAAcpqC,GAAAixC,OAAAjxC,EAAAwkD,OAAAxkD,EAAAykD,UAAAzkD,EAAA0kD,IAAA1kD,EAAA2kD,qBAAA3kD,EAAAixC,OAAAjxC,EAAA2uC,cAAA3uC,EAAAixC,OAAAjxC,EAAA21C,YAAA31C,EAAAi5C,UAAAj5C,EAAA26C,QAAA96C,KAAA+kD,YAAA,EAAA5kD,EAAA8vC,WAAA,EAAoK,IAAAvvC,GAAA,GAAAqhC,EAAmBrhC,GAAAswB,YAAA,KAAAtwB,EAAAswB,YAAAS,EAAA,GAAA/wB,EAAAswB,YAAA,EAAAS,GAAA/wB,EAAAswB,YAAAS,KAAAzxB,KAAAqvC,iBAAA,GAAAne,GAAA/wB,EAAAO,GAAAV,KAAAuvC,cAAA,GAAAkD,GAAAzyC,KAAAovC,qBAAA,GAAAqD,EAAqO,IAAAhyC,GAAA,GAAAshC,EAAmBthC,GAAAuwB,YAAA,KAAAvwB,EAAAuwB,YAAAS,EAAA,GAAAhxB,EAAAuwB,YAAAS,KAAAhxB,EAAAuwB,YAAA,EAAAS,GAAAhxB,EAAAuwB,YAAA,KAAAhxB,KAAAsyC,YAAA,GAAAphB,GAAA/wB,EAAAM,GAAAT,KAAAqyC,SAAA,GAAAI,EAA8L,IAAAh0C,GAAA,GAAA2lC,EAA4B3lC,GAAAuyB,YAAA,SAAAvyB,EAAAuyB,YAAAS,EAAA,EAAAA,EAAA,GAAAhzB,EAAAuyB,YAAA,EAAAS,EAAA,EAAAA,GAAAhzB,EAAAuyB,YAAAS,SAAAzxB,KAAA46C,mBAAA,GAAA1pB,GAAA/wB,EAAA1B,GAAAuB,KAAA66C,gBAAA,GAAApI,GAAAzyC,KAAAglD,4BAAA7kD,EAAAuqC,aAAA,mCAAAvqC,EAAAuqC,aAAA,uCAAAvqC,EAAAuqC,aAAA,yCAAA1qC,KAAAglD,8BAAAhlD,KAAAilD,+BAAA9kD,EAAA+jD,aAAAlkD,KAAAglD,4BAAAE,kCAAsjBxB,EAAA/jD,UAAAo2C,WAAA,WAAyC,GAAA51C,GAAAH,KAAAuqC,EAAcpqC,GAAA41C,WAAA,SAAA51C,EAAAgI,MAAAhI,EAAAglD,mBAAkDzB,EAAA/jD,UAAAylD,aAAA,WAA2C,GAAAjlD,GAAAH,KAAAuqC,EAAcpqC,GAAAilD,aAAA,GAAAjlD,EAAAklD,YAAA,KAAAllD,EAAAgI,MAAAhI,EAAAmlD,qBAAmE5B,EAAA/jD,UAAA4lD,WAAA,WAAyC,GAAAplD,GAAAH,KAAAuqC,EAAcpqC,GAAAolD,WAAA,GAAAvlD,KAAAiwC,WAAA,GAAA9vC,EAAAgI,MAAAhI,EAAAqlD,mBAA+D9B,EAAA/jD,UAAA8lD,yBAAA,SAAAtlD,GAAwD,GAAAO,GAAAV,KAAAS,EAAAT,KAAAuqC,EAAqB9pC,GAAAilD,WAAA,YAAA1lD,KAAAiwC,WAAA,GAAAxvC,EAAAouC,QAAApuC,EAAAq1C,YAAAr1C,EAAA2wC,OAAA3wC,EAAAquC,cAAAruC,EAAA4kD,YAAA,KAAA5kD,EAAAklD,UAAAllD,EAAAmlD,KAAAnlD,EAAAmlD,KAAAnlD,EAAAolD,QAAqJ,IAAApnD,GAAA,CAAQuB,MAAA8lD,uBAA6B,QAAAllD,GAAA,EAAAd,EAAAK,EAAgBS,EAAAd,EAAAiB,OAAWH,GAAA,GAAM,GAAArB,GAAAO,EAAAc,GAAA3B,EAAAyB,EAAAolD,qBAAAvmD,EAAAoH,IAAAlI,GAA8CgC,GAAAslD,YAAAtlD,EAAAulD,OAAA/mD,EAAA,IAA8B,IAAAP,GAAAgC,EAAAwuC,WAAA,OAAAxuC,EAAAyuC,8BAA2D1uC,GAAAivC,iBAAAhxC,EAAA+jC,SAAAkN,UAAA,EAAApwC,EAAAuxC,WAAApwC,EAAA6uC,cAAApzB,KAAA1b,EAAA/B,EAAAgC,EAAA2uC,kBAAA5uC,EAAAmvC,WAAAnvC,EAAAovC,eAAA,EAAAnvC,EAAA2uC,iBAAAtuC,QAA+JN,EAAA4kD,YAAA,GAAA5kD,EAAAilD,WAAA,YAAA1lD,KAAAiwC,WAAA,GAAAxvC,EAAA2wC,OAAA3wC,EAAAq1C,aAAoF4N,EAAA/jD,UAAA8xC,uBAAA,SAAAtxC,GAAsD,GAAAO,GAAAV,KAAAuqC,EAAc7pC,GAAAqlD,YAAArlD,EAAAulD,MAAAjmD,KAAA8lD,qBAAA3lD,EAAAwG,IAAA,MAA2D+8C,EAAA/jD,UAAAumD,OAAA,SAAA/lD,EAAAO,GAAwC,GAAAD,GAAAT,IAAWA,MAAA42C,MAAAz2C,EAAAH,KAAA0U,QAAAhU,EAAAV,KAAAu3C,UAAAp3C,EAAAo3C,UAAAv3C,KAAAg4C,aAAA73C,EAAA63C,aAAAh4C,KAAAmmD,aAAAhmD,EAAAgmD,aAAAnmD,KAAAuxC,aAAAwM,OAAAj3B,KAAAC,MAAA/mB,KAAAkW,UAAA0P,KAAAzlB,EAAAimD,gBAAAC,SAA6M,QAAA5nD,KAAAgC,GAAAm2C,MAAA0P,aAAA,CAAmC,GAAA1lD,GAAAH,EAAAm2C,MAAA0P,aAAA7nD,EAA8BmC,GAAA2lD,MAAA3lD,EAAA85B,QAAAj6B,EAAA8pC,IAAwB,GAAAzqC,GAAAE,KAAA42C,MAAA4P,MAAwBxmD,MAAA4uC,WAAA,IAAqB,QAAArvC,GAAAN,GAAA,EAAAP,KAAAgD,EAAA,EAAwBA,EAAA5B,EAAAiB,OAAWW,IAAA,CAAK,GAAA7C,GAAA4B,EAAAm2C,MAAA6P,QAAA3mD,EAAA4B,GAA4B,IAAA7C,EAAA6nD,cAAA7nD,EAAA8nD,SAAAlmD,EAAAyV,UAAA0P,QAAA/mB,EAAAoX,UAAA1W,KAAAoH,MAAApH,EAAAkB,EAAAm2C,MAAA0P,aAAAznD,EAAAoX,QAAAvX,KAAAa,IAAAkB,EAAA2kD,eAAA1mD,EAAAa,EAAAqnD,yBAAAloD,EAAAoU,WAAApU,EAAAqC,QAAA,CAAyLN,EAAAomD,sBAAyB,IAAAlmD,GAAAF,EAAAg2C,eAAAlgC,OAAA,GAAA6sC,GAAA3iD,EAAmDE,GAAAmmD,cAAArmD,EAAAgkD,UAAAxlD,IAAAwB,EAAA8kD,aAAAtmD,GAAA,GAAAwB,EAAAsmD,YAAAtmD,EAAAlB,EAAAV,EAAAH,GAAAiC,EAAAqmD,SAAAvmD,EAAAy1C,kBAAAr3C,EAAA8H,IAAAhG,GAAoHX,KAAA+1C,aAAA/1C,KAAAulD,aAAAvlD,KAAAinD,sBAAAvmD,EAAAumD,uBAAAjnD,KAAAknD,YAAA/mD,EAAAqmD,OAAAzlD,OAAA,GAAAf,KAAA6jD,aAAA7jD,KAAAgkD,aAAAhkD,KAAA4uC,WAAA,QAAyL,IAAA/uC,GAAAf,IAAW,KAAAkB,KAAAmnD,aAAArnD,EAAAiB,OAAA,EAAAf,KAAAonD,wBAAApnD,KAAAuqC,GAAAsE,QAAA7uC,KAAAuqC,GAAAoa,OAAA3kD,KAAAmnD,aAA+GnnD,KAAAmnD,cAAA,EAAqBnnD,KAAAmnD,eAAA,CAAqB,GAAApnD,GAAAU,EAAAm2C,MAAA6P,QAAA3mD,EAAAW,EAAA0mD,cAAyCpnD,GAAAkW,UAAApW,KAAA8G,MAAA9G,EAAAY,EAAAm2C,MAAA0P,aAAAvmD,EAAAkW,QAAAnX,KAAAe,IAAAY,EAAA2kD,eAAAtmD,EAAAe,EAAA+mD,wBAAA/mD,EAAAs5C,YAAAkO,eAAA5mD,EAAAglD,yBAAA3mD,KAAA2B,EAAAsmD,YAAAtmD,EAAAZ,EAAAE,EAAAjB,GAAkMkB,KAAA4uC,WAAA,aAA8B,IAAAruC,GAAAu0B,IAAW,KAAA90B,KAAAuqC,GAAA6G,OAAApxC,KAAAuqC,GAAAoa,OAAA3kD,KAAAmnD,aAAA,EAAAnnD,KAAAmnD,aAAwEnnD,KAAAmnD,aAAArnD,EAAAiB,OAA2Bf,KAAAmnD,eAAA,CAAqB,GAAAzwC,GAAAjW,EAAAm2C,MAAA6P,QAAA3mD,EAAAW,EAAA0mD,cAAyCzwC,GAAAT,UAAA1V,KAAAoG,MAAApG,EAAAE,EAAAm2C,MAAA0P,aAAA5vC,EAAAT,QAAA6e,KAAAv0B,IAAAE,EAAA2kD,eAAAtwB,EAAAv0B,EAAAqmD,wBAAArmD,EAAA44C,YAAAkO,eAAA5mD,EAAAglD,yBAAA3wB,MAAAhiB,WAAArS,EAAAsmD,YAAAtmD,EAAAF,EAAAmW,EAAAoe,GAA8M,GAAA90B,KAAA0U,QAAA4yC,mBAAA,CAAoC,GAAAvyB,GAAA/0B,KAAA42C,MAAA0P,aAAApnD,OAAAmZ,KAAArY,KAAA42C,MAAA0P,cAAA,GAAuEvxB,IAAA9qB,EAAA2K,MAAA5U,KAAA+0B,IAAA6xB,2BAAiDlD,EAAA/jD,UAAAknD,qBAAA,WAAmD,IAAA7mD,KAAAykD,SAAA,CAAmB,GAAAtkD,GAAAH,KAAAuqC,EAAcvqC,MAAAykD,SAAAtkD,EAAAonD,qBAAApnD,EAAAqnD,iBAAArnD,EAAAsnD,aAAAznD,KAAAykD,UAAAtkD,EAAAunD,oBAAAvnD,EAAAsnD,aAAAtnD,EAAAwnD,kBAAA3nD,KAAAiH,MAAAjH,KAAAkH,QAAA/G,EAAAqnD,iBAAArnD,EAAAsnD,aAAA,MAA+MznD,KAAA4nD,kBAAA,GAAyBlE,EAAA/jD,UAAAswC,UAAA,SAAA9vC,GAAyCA,IAAAH,KAAA+kD,aAAA/kD,KAAA+kD,WAAA5kD,EAAAH,KAAAuqC,GAAA0F,UAAA9vC,KAA8DujD,EAAA/jD,UAAAonD,YAAA,SAAA5mD,EAAAO,EAAAD,EAAAhC,GAAiDgC,EAAAkmD,SAAA3mD,KAAAkW,UAAA0P,QAAA,eAAAnlB,EAAAmM,MAAAnO,EAAAsC,UAAAf,KAAA2G,GAAAlG,EAAAkG,GAAAsD,EAAAxJ,EAAAmM,MAAAzM,EAAAO,EAAAD,EAAAhC,KAAyGilD,EAAA/jD,UAAAovC,iBAAA,SAAA5uC,GAAgD,GAAAO,GAAA,MAAAV,KAAAmnD,cAAAnnD,KAAA6jD,aAAA1jD,GAAAH,KAAAgkD,aAAAvjD,EAAAC,EAAA,EAAAV,KAAAknD,UAA4FlnD,MAAAuqC,GAAA2c,WAAAzmD,EAAAC,IAAwBgjD,EAAA/jD,UAAAkxC,mBAAA,SAAA1wC,EAAAO,EAAAD,EAAAhC,EAAAmC,GAA0D,IAAAH,EAAA,KAAAA,EAAA,SAAAN,EAAyB,IAAAL,GAAAc,EAAA,QAAAnC,EAAAuB,KAAAkW,UAAAxQ,MAAA,eAAAjH,GAAAuB,KAAAkW,UAAAxQ,MAAA,CAAgF,IAAA5F,EAAA,CAAM,GAAAP,GAAA8B,KAAAC,IAAAxB,GAAAb,EAAAoC,KAAAE,IAAAzB,EAAgCW,MAAA,GAAAxB,EAAAwB,EAAA,GAAAlB,EAAAkB,EAAA,GAAAlB,EAAAkB,EAAA,GAAAxB,GAAgC,GAAAP,IAAAkC,EAAAH,EAAA,GAAA8vC,EAAA7vC,EAAAD,EAAA,GAAAT,KAAAkW,UAAA0P,MAAAhlB,EAAAH,EAAA,GAAA8vC,EAAA7vC,EAAAD,EAAA,GAAAT,KAAAkW,UAAA0P,MAAA,GAAAlkB,EAAA,GAAAN,cAAA,GAA2I,OAAA8B,GAAAE,UAAA1B,EAAAvB,EAAAzB,GAAAgD,GAA+BgiD,EAAA/jD,UAAAkoD,gBAAA,SAAA1nD,GAA+C,GAAAO,GAAAV,KAAA2jD,cAAAxjD,EAAAyI,KAAiClI,KAAA2G,KAAAlH,GAAAH,KAAA2jD,cAAAxjD,EAAAyI,OAAAzI,IAA2CujD,EAAA/jD,UAAAmoD,eAAA,SAAA3nD,GAA8C,GAAAO,GAAAV,KAAA2jD,cAAAxjD,EAA4B,OAAAO,MAAAK,OAAA,EAAAL,EAAA6V,MAAA,MAAkCmtC,EAAA/jD,UAAA+xC,UAAA,SAAAvxC,GAAyCH,KAAAuqC,GAAAmH,UAAAlhB,EAAAuX,MAAA5nC,EAAAH,KAAAikD,eAAA,GAAAjkD,KAAAikD,eAAA,MAA+EP,EAAA/jD,UAAAsnD,sBAAA,SAAA9mD,GAAqD,GAAAA,GAAAH,KAAAonD,uBAAA,CAAmCpnD,KAAAonD,uBAAAjnD,CAA8B,IAAAO,GAAAV,KAAAuqC,EAAcpqC,IAAMO,EAAAkkD,UAAAlkD,EAAAqnD,eAAArnD,EAAAmkD,KAAoCnkD,EAAAsnD,WAAA,eAAAtnD,EAAAq1C,WAAA,SAAAr1C,EAAAyH,MAAAzH,EAAAykD,mBAA8EzkD,EAAAkkD,UAAAlkD,EAAAmkD,IAAAnkD,EAAAokD,uBAA+CpB,EAAA/jD,UAAAsoD,qBAAA,SAAA9nD,EAAAO,GAAsDV,KAAAuvB,MAAAvvB,KAAAuvB,SAA0B,IAAA9uB,GAAA,GAAAN,GAAAO,EAAAqiC,UAAA,KAAA/iC,KAAAonD,uBAAA,eAAyE,OAAApnD,MAAAuvB,MAAA9uB,KAAAT,KAAAuvB,MAAA9uB,GAAA,GAAA0iD,GAAAnjD,KAAAuqC,GAAA2Y,EAAA/iD,GAAAO,EAAAV,KAAAonD,yBAAApnD,KAAAuvB,MAAA9uB,IAAkHijD,EAAA/jD,UAAAuvC,WAAA,SAAA/uC,EAAAO,GAA4C,GAAAD,GAAAT,KAAAuqC,GAAA9rC,EAAAuB,KAAAioD,qBAAA9nD,EAAAO,GAAAV,KAAAokD,0BAA+E,OAAApkD,MAAA41C,iBAAAn3C,IAAAgC,EAAAyuC,WAAAzwC,EAAAypD,SAAAloD,KAAA41C,eAAAn3C,MAAkFD,EAAAD,QAAAmlD,IACnyQzZ,iBAAA,GAAA+K,oBAAA,GAAAmT,gCAAA,GAAAC,8BAAA,GAAArkB,sBAAA,GAAAskB,aAAA,GAAArX,iCAAA,GAAAsX,yBAAA,GAAArX,kBAAA,IAAApgB,eAAA,IAAA03B,oBAAA,GAAAC,gBAAA,GAAAC,eAAA,GAAAC,cAAA,GAAAC,wBAAA,GAAAC,cAAA,GAAAC,gBAAA,GAAAC,gBAAA,GAAAC,kBAAA,GAAAC,YAAA,GAAAC,mBAAA,GAAAhU,wBAAA,GAAA5K,oBAAA,IAA2gB6e,IAAA,SAAAjoD,EAAAzC,EAAAD,GAC9gB,YAAa,IAAAgyC,GAAAtvC,EAAA,iCAAgE1C,GAAA0wC,iBAAA,SAAAvuC,EAAAjC,GAAuC,IAAAiC,EAAA,QAAe,IAAAP,GAAA1B,EAAAu5C,aAAAC,WAAAv3C,EAAA+2C,MAAAx4C,EAAAR,EAAAu5C,aAAAC,WAAAv3C,EAAAg3C,GAA0E,QAAAv3C,IAAAlB,GAAaV,EAAAm8B,QAAA,SAAAh6B,EAAAjC,EAAA0B,GAAiC,GAAAlB,GAAAR,EAAA8rC,GAAA9pC,EAAAhC,EAAAu5C,aAAAC,WAAAv3C,EAAA+2C,MAAAl4C,EAAAd,EAAAu5C,aAAAC,WAAAv3C,EAAAg3C,GAAiFz4C,GAAAmxC,UAAAjwC,EAAAsiC,SAAA8T,QAAA,GAAAt3C,EAAAyxC,WAAAvwC,EAAAsiC,SAAAkW,eAAAl4C,EAAAs8B,IAAA99B,EAAAyxC,WAAAvwC,EAAAsiC,SAAAmW,eAAAn4C,EAAAy8B,IAAAj+B,EAAAyxC,WAAAvwC,EAAAsiC,SAAAoW,eAAAt5C,EAAAw9B,IAAA99B,EAAAyxC,WAAAvwC,EAAAsiC,SAAAqW,eAAAv5C,EAAA29B,GAAsN,IAAAv8B,GAAAlC,EAAAu5C,aAAAK,eAAAz3C,EAAAD,EAAAsG,MAAA1G,EAAAI,EAAAuG,MAAyDjI,GAAAyxC,WAAAvwC,EAAAsiC,SAAA6V,WAAA13C,EAAAL,IAAAtB,EAAAyjC,UAAAviC,EAAAsiC,SAAAiW,MAAAh4C,EAAAD,GAAAxB,EAAAyxC,WAAAvwC,EAAAsiC,SAAAyV,iBAAAz3C,EAAA03C,aAAAl5C,EAAAyxC,WAAAvwC,EAAAsiC,SAAA2V,iBAAA74C,EAAA44C,aAAAl5C,EAAAyjC,UAAAviC,EAAAsiC,SAAA0mB,UAAAzoD,EAAAi3C,WAAA14C,EAAAyjC,UAAAviC,EAAAsiC,SAAA2mB,UAAA1oD,EAAAk3C,SAAA34C,EAAAoyC,cAAApyC,EAAAk3C,UAAA13C,EAAAu5C,aAAA77B,KAAAld,IAAwUV,EAAAkxC,QAAA,SAAA/uC,EAAAjC,EAAA0B,GAAiC,GAAAlB,GAAAR,EAAA8rC,EAAWtrC,GAAAyjC,UAAAviC,EAAAsiC,SAAA4mB,uBAAA,EAAA9Y,EAAA7vC,EAAA,EAAAjC,EAAAyX,UAAAgyB,UAA6F,IAAAznC,GAAAY,KAAAkJ,IAAA,EAAA7J,EAAAo/B,MAAAt2B,GAAAjK,EAAAmB,EAAA8/B,SAAAn/B,KAAAkJ,IAAA,EAAA9L,EAAAyX,UAAAgyB,UAAAznC,EAAAE,EAAApB,GAAAmB,EAAAo/B,MAAA/9B,EAAArB,EAAAo/B,MAAAl+B,EAAAnB,GAAAG,EAAArB,EAAAmB,EAAAo/B,MAAAn+B,CAAsH1C,GAAAuxC,UAAArwC,EAAAsiC,SAAA6mB,oBAAA3oD,GAAA,GAAAC,GAAA,IAAA3B,EAAAuxC,UAAArwC,EAAAsiC,SAAA8mB,oBAAA,MAAA5oD,EAAA,MAAAC,MAC/pCowC,iCAAA,KAAoCwY,IAAA,SAAAvoD,EAAAzC,EAAAD,GACvC,YAAa,IAAA2lB,GAAAjjB,EAAA,mBAAAiiD,EAAAjiD,EAAA,cAAA0G,EAAA1G,EAAA,iCAAAwxC,GAAA9qC,EAAAk7B,qBAAA5hC,EAAA,0BAAAkiD,EAAA,SAAAziD,EAAAP,EAAAM,EAAAG,GAA6O,GAAA3B,GAAAe,IAAWA,MAAAuqC,GAAA7pC,EAAAV,KAAAkoD,QAAAxnD,EAAA+oD,eAAyC,IAAAhrD,GAAAgC,EAAA2hC,UAAAp7B,OAAA,8BAAAkd,EAAA0sB,iBAAA8Y,QAAA,GAA4F9oD,IAAAnC,EAAA4I,KAAA,8BAAyC,IAAA9H,GAAAd,EAAAuI,OAAAk8C,EAAAyG,QAAAC,eAAAzpD,EAAAypD,gBAAA16C,KAAA,MAAApP,EAAArB,EAAAuI,OAAAk8C,EAAAyG,QAAAE,aAAA1pD,EAAA0pD,cAAA36C,KAAA,MAAAtQ,EAAA8B,EAAAopD,aAAAppD,EAAAqpD,gBAAkLrpD,GAAAspD,aAAAprD,EAAAW,GAAAmB,EAAAupD,cAAArrD,GAAA8B,EAAAwpD,aAAAlqD,KAAAkoD,QAAAtpD,EAAsE,IAAAmB,GAAAW,EAAAopD,aAAAppD,EAAAypD,cAAsCzpD,GAAAspD,aAAAjqD,EAAAD,GAAAY,EAAAupD,cAAAlqD,GAAAW,EAAAwpD,aAAAlqD,KAAAkoD,QAAAnoD,EAAsE,QAAAlB,GAAA4B,EAAA4iC,UAAA5iC,EAAA4iC,UAAA1R,oBAAAhxB,EAAA,EAA0DA,EAAA9B,EAAAkC,OAAWJ,IAAAD,EAAA0pD,mBAAAnrD,EAAAipD,QAAAvnD,EAAA9B,EAAA8B,GAAA5B,KAAgD2B,GAAA2pD,YAAArqD,KAAAkoD,SAAAloD,KAAAsqD,cAAA5pD,EAAA6pD,oBAAAvqD,KAAAkoD,QAAAxnD,EAAA8pD,mBAAAxqD,KAAA0rC,cAAyH1rC,KAAAyiC,WAAkB,QAAA/gC,GAAA,EAAYA,EAAA1B,KAAAsqD,cAAqB5oD,IAAA,CAAK,GAAAnB,GAAAG,EAAA+pD,gBAAAxrD,EAAAipD,QAAAxmD,EAAqCnB,KAAAtB,EAAAysC,WAAAnrC,EAAAxB,MAAA2B,EAAAgqD,kBAAAzrD,EAAAipD,QAAA3nD,EAAAxB,OAAgE,OAAAD,GAAA4B,EAAA6pD,oBAAAvqD,KAAAkoD,QAAAxnD,EAAAiqD,iBAAA9qD,EAAA,EAAoEA,EAAAf,EAAIe,IAAA,CAAK,GAAA2B,GAAAd,EAAAkqD,iBAAA3rD,EAAAipD,QAAAroD,EAAsC2B,KAAAvC,EAAAwjC,SAAAjhC,EAAAzC,MAAA2B,EAAAmqD,mBAAA5rD,EAAAipD,QAAA1mD,EAAAzC,QAAiEokD,GAAAxjD,UAAAsK,KAAA,SAAAvJ,EAAAP,EAAAM,EAAAG,EAAA3B,EAAAR,EAAAc,EAAAO,GAAiD,OAAAlB,GAAAmB,EAAAC,KAAAnB,GAAAD,KAAwBA,EAAA8B,EAAAsxC,OAAA,EAAApzC,EAAA8B,EAAAqwC,WAAA,EAAAnyC,GAAAuB,GAAAQ,EAAA,EAAAe,EAAAjD,EAAAa,MAAmDqB,EAAAe,EAAAX,OAAWJ,GAAA,GAAM,GAAAJ,GAAAmB,EAAAf,GAAA7B,EAAAyB,EAAAikC,OAAAjkC,EAAAikC,UAAiC1lC,EAAA2B,KAAA3B,EAAA2B,GAAA,GAAAgyC,KAAAt2B,KAAAzb,EAAAX,EAAAa,EAAA3B,EAAAM,KAAAukC,kBAAAvjC,EAAA+jC,aAAAxkC,GAAAY,EAAAoqD,aAAA3qD,EAAAI,EAAA0yB,gBAAAp0B,EAAA6B,EAAAqqD,eAAAxqD,EAAAgkC,gBAAA1lC,EAAA,KAAyKL,EAAAD,QAAA4kD,IAC1qDgF,gCAAA,GAAAE,aAAA,GAAApX,kBAAA,IAAAgE,wBAAA,KAAoG+V,IAAA,SAAA/pD,EAAAzC,EAAAD,GACvG,YAAa,IAAA2yB,GAAAjwB,EAAA,uBAAAwxC,EAAAxxC,EAAA,yBAAA8gC,EAAA9gC,EAAA,qBAAAmiD,EAAA,SAAAjjD,GAAmK,GAAAO,GAAAV,KAAAuqC,GAAApqC,EAAAoqC,GAAA9pC,EAAAT,KAAAs2C,QAAA51C,EAAA29C,eAAoD39C,GAAA01C,YAAA11C,EAAA21C,WAAA51C,GAAAC,EAAA49C,cAAA59C,EAAA21C,WAAA31C,EAAA69C,eAAA79C,EAAAg7C,eAAAh7C,EAAA49C,cAAA59C,EAAA21C,WAAA31C,EAAA89C,eAAA99C,EAAAg7C,eAAAh7C,EAAA49C,cAAA59C,EAAA21C,WAAA31C,EAAA+9C,mBAAA/9C,EAAA+6C,QAAA/6C,EAAA49C,cAAA59C,EAAA21C,WAAA31C,EAAAg+C,mBAAAh+C,EAAA+6C,QAAA/6C,EAAAi+C,WAAAj+C,EAAA21C,WAAA,EAAA31C,EAAA6hD,KAAApiD,EAAA8G,MAAA9G,EAAA+G,OAAA,EAAAxG,EAAA6hD,KAAA7hD,EAAA09C,cAAA,MAAA19C,EAAA01C,YAAA11C,EAAA21C,WAAA,KAAwY,IAAAvhB,GAAA90B,KAAAwkD,IAAA9jD,EAAAuqD,mBAAqCvqD,GAAAwqD,gBAAAxqD,EAAAyqD,YAAAr2B,GAAAp0B,EAAA0qD,qBAAA1qD,EAAAyqD,YAAAzqD,EAAA2qD,kBAAA3qD,EAAA21C,WAAA51C,EAAA,EAA8G,IAAAG,GAAA,GAAAmhC,EAAmBnhC,GAAAowB,YAAA,KAAApwB,EAAAowB,YAAA,KAAApwB,EAAAowB,YAAA,KAAApwB,EAAAowB,YAAA,KAAAhxB,KAAAuI,OAAA,GAAA2oB,GAAAxwB,EAAAE,GAAAZ,KAAAw2C,IAAA,GAAA/D,GAA8I2Q,GAAAzjD,UAAAmnD,cAAA,SAAA3mD,GAAkD,GAAAO,GAAAV,KAAAuqC,EAAc7pC,GAAAwqD,gBAAAxqD,EAAAyqD,YAAAnrD,KAAAwkD,KAAAxkD,KAAAsrD,cAAAnrD,IAAAO,EAAA6qD,wBAAA7qD,EAAAyqD,YAAAzqD,EAAA8qD,iBAAA9qD,EAAA+mD,aAAAtnD,GAAAH,KAAAsrD,YAAAnrD,IAAkKijD,EAAAzjD,UAAAqnD,OAAA,WAA2C,GAAA7mD,GAAAH,KAAAuqC,EAAcpqC,GAAA+qD,gBAAA/qD,EAAAgrD,YAAA,OAAsC3sD,EAAAD,QAAA6kD,IAC9tCpO,oBAAA,GAAAjR,sBAAA,GAAAkR,wBAAA,KAA2EwW,IAAA,SAAAxqD,EAAAzC,EAAAD,GAC9E,YAAa,IAAA4iD,GAAA,SAAA1gD,EAAAN,EAAA1B,GAA4BuB,KAAAuqC,GAAA9pC,CAAU,IAAAC,GAAAP,EAAA8G,MAAAyP,EAAAvW,EAAA+G,MAAyBlH,MAAA4I,MAAAlI,EAAAgW,GAAA1W,KAAA8O,OAAArQ,EAAAuB,KAAAs2C,QAAA71C,EAAA49C,gBAAAr+C,KAAAsiD,OAAAniD,GAA6EghD,GAAAxhD,UAAA2iD,OAAA,SAAA7hD,GAAqC,GAAAN,GAAAM,EAAAwG,MAAAxI,EAAAgC,EAAAyG,OAAAxG,EAAAD,EAAA6J,IAAkCtK,MAAA4I,MAAAzI,EAAA1B,EAAgB,IAAAiY,GAAA1W,KAAA80B,EAAApe,EAAA6zB,EAAkBzV,GAAAshB,YAAAthB,EAAAuhB,WAAAr2C,KAAAs2C,SAAAxhB,EAAA42B,YAAA52B,EAAA62B,iBAAA,GAAA3rD,KAAA8O,SAAAgmB,EAAAytB,MAAAztB,EAAA42B,YAAA52B,EAAA82B,gCAAA,GAAA92B,EAAA6pB,WAAA7pB,EAAAuhB,WAAA,EAAAr2C,KAAA8O,OAAA3O,EAAA1B,EAAA,EAAAuB,KAAA8O,OAAAgmB,EAAAspB,cAAA19C,IAAmOygD,EAAAxhD,UAAAwc,KAAA,SAAA1b,EAAAN,GAAsC,GAAA1B,GAAAuB,KAAAU,EAAAjC,EAAA8rC,EAAkB7pC,GAAA01C,YAAA11C,EAAA21C,WAAAr2C,KAAAs2C,SAAA71C,IAAAT,KAAA6b,SAAAnb,EAAA49C,cAAA59C,EAAA21C,WAAA31C,EAAAg+C,mBAAAj+C,GAAAC,EAAA49C,cAAA59C,EAAA21C,WAAA31C,EAAA+9C,mBAAAh+C,GAAAT,KAAA6b,OAAApb,GAAAN,IAAAH,KAAAuV,OAAA7U,EAAA49C,cAAA59C,EAAA21C,WAAA31C,EAAA69C,eAAAp+C,GAAAO,EAAA49C,cAAA59C,EAAA21C,WAAA31C,EAAA89C,eAAAr+C,GAAAH,KAAAuV,KAAApV,IAAmTghD,EAAAxhD,UAAA2gB,QAAA,WAAsCtgB,KAAAuqC,GAAA+Z,cAAAtkD,KAAAs2C,SAAAt2C,KAAAs2C,QAAA,MAAsD93C,EAAAD,QAAA4iD,OACx6B0K,IAAA,SAAA5qD,EAAAzC,EAAAD,GACJ,YAAa,IAAAk0C,GAAA,WAAiCzyC,KAAA8rD,aAAA,KAAA9rD,KAAA+rD,kBAAA,KAAA/rD,KAAAgsD,mBAAA,KAAAhsD,KAAAisD,iBAAA,KAAAjsD,KAAAksD,kBAAA,KAAAlsD,KAAAmsD,yBAAA,KAAAnsD,KAAAw2C,IAAA,KAAyL/D,GAAA9yC,UAAAwc,KAAA,SAAAhc,EAAAM,EAAAC,EAAAjC,EAAAc,EAAAO,EAAAa,OAAyD,KAAAR,EAAAsqC,uBAAAtqC,EAAAsqC,qBAAAtqC,EAAAuqC,aAAA,2BAAoG,IAAA1oC,IAAAhC,KAAAw2C,KAAAx2C,KAAA8rD,eAAArrD,GAAAT,KAAA+rD,oBAAArrD,GAAAV,KAAAgsD,qBAAAzsD,GAAAS,KAAAisD,mBAAAxtD,GAAAuB,KAAAksD,oBAAApsD,GAAAE,KAAAmsD,2BAAAxrD,GAA0LR,EAAAsqC,sBAAAzoC,GAAAhC,KAAAosD,UAAAjsD,EAAAM,EAAAC,EAAAjC,EAAAc,EAAAO,EAAAa,GAAAX,KAAAuqC,GAAApqC,MAAAsqC,qBAAAE,mBAAA3qC,KAAAw2C,KAAA71C,KAAAwb,SAAuIs2B,EAAA9yC,UAAAysD,UAAA,SAAAjsD,EAAAM,EAAAC,EAAAjC,EAAAc,EAAAO,EAAAa,GAA+D,GAAAqB,GAAA/C,EAAAwB,EAAA6pD,aAAwB,IAAAnqD,EAAAsqC,qBAAAzqC,KAAAw2C,KAAAx2C,KAAAsgB,UAAAtgB,KAAAw2C,IAAAr2C,EAAAsqC,qBAAA4hB,uBAAAlsD,EAAAsqC,qBAAAE,mBAAA3qC,KAAAw2C,KAAAx0C,EAAA,EAAAhC,KAAA8rD,aAAArrD,EAAAT,KAAA+rD,kBAAArrD,EAAAV,KAAAgsD,mBAAAzsD,EAAAS,KAAAisD,iBAAAxtD,EAAAuB,KAAAksD,kBAAApsD,EAAAE,KAAAmsD,yBAAAxrD,MAA0T,CAAKqB,EAAA7B,EAAAmsD,sBAAA,CAA4B,QAAAvqD,GAAA9C,EAAY8C,EAAAC,EAAID,IAAA5B,EAAAosD,yBAAAxqD,GAAkCrB,EAAAurC,iBAAA9rC,EAAAM,GAAAlB,KAAA0sC,iBAAA9rC,EAAAM,GAAAE,KAAAsrC,iBAAA9rC,EAAAM,GAAAC,EAAAyb,OAAAzb,EAAAyrC,wBAAAhsC,EAAAM,EAAAX,GAAAP,MAAA4c,OAAA5c,EAAA4sC,wBAAAhsC,EAAAM,EAAAX,IAAAa,MAAAwb,OAAAxb,EAAAwrC,wBAAAhsC,EAAAM,EAAAX,IAAArB,KAAA0d,OAAAhc,EAAAmsD,qBAAArtD,GAA2PwzC,EAAA9yC,UAAA2gB,QAAA,WAAgDtgB,KAAAw2C,MAAAx2C,KAAAuqC,GAAAE,qBAAA+hB,qBAAAxsD,KAAAw2C,KAAAx2C,KAAAw2C,IAAA,OAAsFh4C,EAAAD,QAAAk0C,OACtiDga,IAAA,SAAAxrD,EAAAzC,EAAAD,GACJ,YAAa,IAAAiyB,GAAAvvB,EAAA,eAAiC1C,GAAAo4B,iBAAA,SAAAl2B,EAAA/B,GAAuC,MAAA+B,GAAA+vB,EAAAuX,MAAA1mC,KAAAoV,MAAAhW,GAAA,OAAA/B,EAAA8xB,EAAAuX,MAAA1mC,KAAAoV,MAAA/X,GAAA,WAAA+B,EAAA/B,KAClFmyB,eAAA,MAAmB67B,IAAA,SAAAzrD,EAAAzC,EAAAD,GACtB,YAAa,IAAA2kD,IAAayG,SAASC,eAAA,wMAAsDC,aAAA,g6EAA6kFvG,QAASsG,eAAA,uzCAAk0CC,aAAA,+oFAA+pFvwB,cAAeswB,eAAA,05CAAq6CC,aAAA,4uCAA4vCj1C,OAAQg1C,eAAA,iFAA4FC,aAAA,kjBAAkkBxhC,MAAOuhC,eAAA,0TAAqUC,aAAA,sTAAsU8C,aAAc/C,eAAA,2dAAseC,aAAA,ybAAyc+C,oBAAqBhD,eAAA,whCAAmiCC,aAAA,g3BAAg4BgD,aAAcjD,eAAA,o1BAA+1BC,aAAA,6vBAA6wBiD,eAAgBlD,eAAA,+ZAA0aC,aAAA,w1EAAw2EkD,sBAAuBnD,eAAA,4+BAAu/BC,aAAA,83DAA84DmD,kBAAmBpD,eAAA,iOAA4OC,aAAA,sOAAsPztB,MAAOwtB,eAAA,27BAAs8BC,aAAA,mqGAAmrGoD,aAAcrD,eAAA,kqDAA6qDC,aAAA,25GAA26GqD,SAChg9BtD,eAAA,ogDAA+gDC,aAAA,85HAA86HrG,QAASoG,eAAA,k7CAA67CC,aAAA,q0BAAq1BsD,YAAavD,eAAA,ibAA4bC,aAAA,4jHAA4kHuD,WAAYxD,eAAA,+qDAA0rDC,aAAA,k7MAAk8MwD,EAAA,kDAAykC,QAAAC,KAAApK,IAAzkC,SAAA/iD,GAAwE,GAAAZ,GAAA2jD,EAAA/iD,GAAAS,IAAsBrB,GAAAqqD,eAAArqD,EAAAqqD,eAAAz/B,QAAAkjC,EAAA,SAAAltD,EAAAZ,EAAAN,EAAAwB,EAAAhC,GAAiE,MAAAmC,GAAAnC,IAAA,aAAAc,EAAA,2BAAAd,EAAA,aAAAQ,EAAA,IAAAwB,EAAA,IAAAhC,EAAA,qBAAsFQ,EAAA,IAAAwB,EAAA,MAAAhC,EAAA,cAAqC,0BAAAA,EAAA,SAAAQ,EAAA,IAAAwB,EAAA,IAAAhC,EAAA,QAAAA,EAAA,gBAAuFc,EAAAsqD,aAAAtqD,EAAAsqD,aAAA1/B,QAAAkjC,EAAA,SAAAltD,EAAAZ,EAAAN,EAAAwB,EAAAhC,GAA+D,GAAAiC,GAAA,UAAAD,EAAA,aAAgC,OAAAG,GAAAnC,GAAA,WAAAc,EAAA,2BAAAd,EAAA,0BAAAA,EAAA,kBAAsFQ,EAAA,IAAAyB,EAAA,MAAAjC,EAAA,cAAgCQ,EAAA,IAAAwB,EAAA,IAAAhC,EAAA,qBAA4BQ,EAAA,IAAAwB,EAAA,MAAAhC,EAAA,cAAqC,2BAAAA,EAAA,SAAAA,EAAA,iBAAAiC,EAAA,MAAAjC,EAAA,OAAAA,EAAA,oBAA6FQ,EAAA,IAAAwB,EAAA,IAAAhC,EAAA,QAAAA,EAAA,cAAyC,WAAAc,EAAA,2BAAAd,EAAA,0BAAAA,EAAA,kBAAsFQ,EAAA,IAAAyB,EAAA,MAAAjC,EAAA,qBAAgCQ,EAAA,IAAAwB,EAAA,MAAAhC,EAAA,cAAqC,2BAAAA,EAAA,SAAAQ,EAAA,IAAAwB,EAAA,IAAAhC,EAAA,iBAAAiC,EAAA,MAAAjC,EAAA,OAAAA,EAAA,oBAAyGQ,EAAA,IAAAwB,EAAA,IAAAhC,EAAA,QAAAA,EAAA,iBAAwD6uD,EAAiD9uD,GAAAD,QAAA2kD,OAC3+pBqK,IAAA,SAAAtsD,EAAAzC,EAAAD,GACJ,YAAa,IAAAk8C,GAAAx5C,EAAA,kBAAAb,EAAAa,EAAA,kBAAAusD,EAAA,SAAA/sD,GAAoG,QAAAhC,KAAAmC,EAAAT,EAAAL,GAAoBW,EAAA9B,KAAAqB,KAAAvB,EAAAmC,EAAAT,EAAAL,GAAAE,KAAA0U,QAAA9T,EAAAZ,KAAAytD,YAAA,KAAA7sD,EAAA6sD,SAAA7sD,EAAA6sD,QAA+E,MAAAhtD,KAAAhC,EAAAivD,UAAAjtD,GAAAhC,EAAAkB,UAAAT,OAAA2D,OAAApC,KAAAd,WAAAlB,EAAAkB,UAAAsoB,YAAAxpB,IAAAkB,UAAAknB,KAAA,WAA0H7mB,KAAA6I,OAAA7I,KAAA6I,QAAAzI,EAAA0I,SAAA6kD,eAAA3tD,KAAA0U,QAAA7L,OAA6E,IAAApI,GAAAT,KAAA6I,OAAAI,WAAAjJ,KAAA0U,QAAAk5C,YAAuD,KAAAntD,EAAA,MAAAT,MAAA6tD,KAAA,WAAAhtD,OAAA,6BAAuE,IAAAb,KAAA8tD,QAAArtD,EAAAT,KAAAiH,MAAAjH,KAAA6I,OAAA5B,MAAAjH,KAAAkH,OAAAlH,KAAA6I,OAAA3B,OAAAlH,KAAA+tD,wBAAA,MAAA/tD,MAAA6tD,KAAA,WAAAhtD,OAAA,2DAA0M,IAAApC,EAAMuB,MAAAguD,KAAA,eAAqB,KAAAvvD,MAAAuB,KAAAwS,IAAAokC,MAAAsD,cAAAhhC,IAAA,KAAAlZ,KAAAwS,IAAAy7C,cAA2EjuD,KAAAkuD,MAAA,eAAuB,KAAAzvD,MAAAuB,KAAAwS,IAAAokC,MAAAsD,cAAAiU,OAAA1vD,KAAuDuB,KAAAouD,kBAAuB3vD,EAAAkB,UAAA0uD,UAAA,WAAkC,MAAAruD,MAAA6I,QAAmBpK,EAAAkB,UAAA2uD,MAAA,SAAA7tD,GAA+BT,KAAAwS,IAAA/R,EAAAT,KAAA6mB,OAAA7mB,KAAA6I,QAAA7I,KAAAytD,SAAAztD,KAAAguD,QAA8DvvD,EAAAkB,UAAA4uD,SAAA,WAAiCvuD,KAAAkuD,SAAazvD,EAAAkB,UAAA6uD,WAAA,SAAA/tD,GAAoC,GAAAhC,GAAAuB,IAAW,IAAAA,KAAA8tD,kBAAAW,0BAAAzuD,KAAA0uD,WAAA1uD,KAAA8tD,QAAA1jD,aAAA,IAAApK,KAAAiH,MAAAjH,KAAAkH,YAA0H,IAAAlH,KAAA8tD,kBAAAa,uBAAA,CAAuD,GAAA/tD,GAAAZ,KAAA8tD,QAAA3tD,EAAA,GAAA0d,YAAA7d,KAAAiH,MAAAjH,KAAAkH,OAAA,EAA8DtG,GAAAguD,WAAA,IAAA5uD,KAAAiH,MAAAjH,KAAAkH,OAAAtG,EAAA2hD,KAAA3hD,EAAAw9C,cAAAj+C,GAAAH,KAAA6uD,mBAAA7uD,KAAA6uD,iBAAAzuD,EAAA0I,SAAAC,cAAA,UAAAE,WAAA,OAAAjJ,KAAA0uD,aAAAjuD,IAAAT,KAAA0uD,WAAA1uD,KAAA6uD,iBAAAC,gBAAA9uD,KAAAiH,MAAAjH,KAAAkH,QAA+Q,QAAApH,GAAAE,KAAAkH,OAAA,EAAA3H,EAAA,EAA4BO,GAAA,EAAKA,IAAAP,IAAAd,EAAAiwD,WAAApkD,KAAA4O,IAAA/Y,EAAAiY,SAAAtY,EAAArB,EAAAwI,MAAA,GAAAnH,EAAA,GAAArB,EAAAwI,MAAA,GAAA1H,EAAAd,EAAAwI,MAAA,KAAoFxI,EAAAkB,UAAA+6B,QAAA,WAAgC,GAAAj6B,IAAA,CAAS,IAAAT,KAAA6I,OAAA5B,QAAAjH,KAAAiH,QAAAjH,KAAAiH,MAAAjH,KAAA6I,OAAA5B,MAAAxG,GAAA,GAAAT,KAAA6I,OAAA3B,SAAAlH,KAAAkH,SAAAlH,KAAAkH,OAAAlH,KAAA6I,OAAA3B,OAAAzG,GAAA,IAAAT,KAAA+tD,yBAAA,IAAA7uD,OAAAmZ,KAAArY,KAAAiV,OAAAlU,OAAA,CAAkN,IAAAf,KAAAytD,UAAAztD,KAAA0uD,YAAAjuD,IAAAT,KAAAwuD,WAAA/tD,IAAAT,KAAA0uD,WAAA,WAAA1uD,MAAA6tD,KAAA,WAAAhtD,OAAA,+BAAoJb,MAAA+uD,cAAA/uD,KAAAwS,IAAAw8C,QAAAzkB,GAAAvqC,KAAA0uD,WAAAjuD,KAA2DhC,EAAAkB,UAAAgzB,UAAA,WAAkC,OAAO/lB,KAAA,SAAA/D,OAAA7I,KAAA6I,OAAAiF,YAAA9N,KAAA8N,cAA+DrP,EAAAkB,UAAAouD,sBAAA,WAA8C,OAAAttD,GAAAT,KAAAvB,EAAA,EAAAmC,GAAAH,EAAAoI,OAAA5B,MAAAxG,EAAAoI,OAAA3B,QAAsDzI,EAAAmC,EAAAG,OAAWtC,GAAA,GAAM,GAAA0B,GAAAS,EAAAnC,EAAW,IAAA+a,MAAArZ,OAAA,WAA2B,UAAS1B,GAAGg8C,EAAcj8C,GAAAD,QAAAivD,IACp/EyB,iBAAA,IAAAC,iBAAA,KAAyCC,IAAA,SAAAluD,EAAAzC,EAAAD,GAC5C,YAAa,SAAA6wD,GAAA3uD,GAAuB,GAAAN,GAAAC,EAAA0I,SAAAC,cAAA,IAAyC,OAAA5I,GAAAkvD,KAAA5uD,EAAAN,EAAAkvD,KAAuB,GAAAriB,GAAA/rC,EAAA,mBAAAuvB,EAAAvvB,EAAA,gBAAAb,EAAAa,EAAA,kBAAAwwB,EAAAxwB,EAAA,kBAAAquD,EAAAruD,EAAA,gBAAAquD,aAAAprC,EAAAjjB,EAAA,mBAAAsuD,EAAA,SAAA9uD,GAAqP,QAAAN,KAAAlB,EAAAyB,EAAAjC,GAAoBgC,EAAA9B,KAAAqB,WAAA2G,GAAAxG,EAAAH,KAAA4M,KAAA,UAAA5M,KAAA2oC,QAAA,EAAA3oC,KAAA4oC,QAAA,GAAA5oC,KAAAwgC,SAAA,IAAAxgC,KAAAqnD,eAAA,EAAArnD,KAAA8oC,mBAAA,EAAA9oC,KAAAwvD,WAAA9uD,EAAAV,KAAAyvD,iBAAAhxD,GAAAuB,KAAA0vD,MAAAzwD,EAAAqL,KAAAtK,KAAA2vD,SAAAn/B,EAAA7b,UAAqO1V,OAAA,KAAAA,EAAA2pC,UAAA5oC,KAAA4oC,QAAA3pC,EAAA2pC,SAAA3pC,EAAA2N,OAAA5M,KAAA4M,KAAA3N,EAAA2N,KAA4E,IAAAhM,GAAA6wB,EAAAzxB,KAAAwgC,QAA2BxgC,MAAA4vD,cAAAp/B,EAAA7b,QAAgCsB,OAAAjW,KAAA2G,GAAA0f,QAAApnB,EAAAonB,UAAA,EAAAwpC,kBAAuDtnD,YAAA,KAAAtJ,EAAAsJ,OAAAtJ,EAAAsJ,OAAA,KAAA3H,EAAAoU,eAAA,KAAA/V,EAAA+V,UAAA/V,EAAA+V,UAAA,MAAApU,EAAA+L,OAAA8kB,EAAA1c,QAAA/U,KAAA4oC,SAAiIknB,qBAAsB/6C,YAAA,KAAA9V,EAAA8wD,eAAA1uD,KAAAmJ,IAAAvL,EAAA8wD,eAAA/vD,KAAA4oC,QAAA,GAAA5oC,KAAA4oC,QAAA,EAAAj8B,OAAA8kB,EAAA9oB,QAAA1J,EAAA+wD,eAAA,IAAApvD,EAAAsT,KAAA,IAAgJjV,EAAA2wD,eAAkB,MAAAnvD,KAAAN,EAAAutD,UAAAjtD,GAAAN,EAAAR,UAAAT,OAAA2D,OAAApC,KAAAd,WAAAQ,EAAAR,UAAAsoB,YAAA9nB,IAAAR,UAAAknB,KAAA,WAA0H,GAAApmB,GAAAT,IAAWA,MAAA6tD,KAAA,eAAyBoC,SAAA,WAAkBjwD,KAAAkwD,kBAAA,SAAA/vD,GAAqC,GAAAA,EAAA,WAAAM,GAAAotD,KAAA,SAAiCjiC,MAAAzrB,GAAUM,GAAAotD,KAAA,QAAeoC,SAAA,SAAAE,eAAA,gBAAgDhwD,EAAAR,UAAA2uD,MAAA,SAAA7tD,GAA+BT,KAAAwS,IAAA/R,EAAAT,KAAA6mB,QAAuB1mB,EAAAR,UAAAywD,QAAA,SAAA3vD,GAAiC,GAAAN,GAAAH,IAAW,OAAAA,MAAA0vD,MAAAjvD,EAAAT,KAAA6tD,KAAA,eAA6CoC,SAAA,WAAkBjwD,KAAAkwD,kBAAA,SAAAzvD,GAAqC,GAAAA,EAAA,MAAAN,GAAA0tD,KAAA,SAA4BjiC,MAAAnrB,GAAUN,GAAA0tD,KAAA,QAAeoC,SAAA,SAAAE,eAAA,cAA6CnwD,MAAOG,EAAAR,UAAAuwD,kBAAA,SAAAzvD,GAA2C,GAAAN,GAAAH,KAAAf,EAAAuxB,EAAA7b,UAA2B3U,KAAA4vD,eAAAlvD,EAAAV,KAAA0vD,KAAkC,iBAAAhvD,GAAAzB,EAAA+P,QAAAhP,KAAAwS,IAAA69C,kBAAAjB,EAAA1uD,GAAA4uD,EAAAgB,QAAArxD,EAAAqL,KAAAsL,KAAAC,UAAAnV,GAAAV,KAAAuwD,SAAAvwD,KAAAwvD,WAAAgB,KAAAxwD,KAAA4M,KAAA,YAAA3N,EAAA,SAAAA,GAA2LkB,EAAAswD,SAAA,EAAAhwD,EAAAxB,IAAkBe,KAAAuwD,WAAgBpwD,EAAAR,UAAA+wD,SAAA,SAAAjwD,EAAAN,GAAoC,GAAAlB,GAAAe,KAAAU,EAAAD,EAAA8vD,UAAA,YAAA9vD,EAAAkwD,MAAA,wBAAAlyD,GAAwEmO,KAAA5M,KAAA4M,KAAA8L,IAAAjY,EAAAiY,IAAAonB,MAAAr/B,EAAAq/B,MAAAla,KAAAnlB,EAAAq/B,MAAAt2B,EAAAuL,QAAA/U,KAAA4oC,QAAApI,SAAAxgC,KAAAwgC,SAAAvqB,OAAAjW,KAAA2G,GAAAmzB,WAAA5V,EAAA0sB,iBAAA3e,YAAAxxB,EAAAq/B,MAAAt2B,EAAAxJ,KAAA4oC,QAAAvnC,KAAAkJ,IAAA,EAAA9J,EAAAq/B,MAAAt2B,EAAAxJ,KAAA4oC,SAAA,EAAAljC,MAAA1F,KAAAwS,IAAA0D,UAAAxQ,MAAA+hC,MAAAznC,KAAAwS,IAAA0D,UAAAuxB,MAAAuC,uBAAAhqC,KAAAwS,IAAA0D,UAAA8zB,uBAAAJ,qBAAA5pC,KAAAwS,IAAA0D,UAAA0zB,qBAAAnpC,GAAA46C,mBAAAr7C,KAAAwS,IAAA6oC,mBAA4c56C,GAAA8vD,SAAAvwD,KAAAwvD,WAAAgB,KAAA9vD,EAAAjC,EAAA,SAAAiC,EAAAjC,GAAkD,GAAAgC,EAAAmwD,oBAAAnwD,EAAAowD,QAAA,MAAAnwD,GAAAP,EAAAO,IAAAD,EAAAqwD,eAAAryD,EAAAQ,EAAAuT,IAAAw8C,SAAAvuD,EAAAswD,eAAAtwD,EAAAswD,cAAA,EAAAtwD,EAAAuwD,cAAA/xD,IAAAkB,EAAA,QAAoJH,KAAAuwD,WAAgBpwD,EAAAR,UAAAsxD,UAAA,SAAAxwD,GAAmCA,EAAAowD,SAAA,GAAa1wD,EAAAR,UAAAuxD,WAAA,SAAAzwD,GAAoCA,EAAAmwD,mBAAA5wD,KAAAwvD,WAAAgB,KAAA,cAAwD93C,IAAAjY,EAAAiY,IAAA9L,KAAA5M,KAAA4M,KAAAqJ,OAAAjW,KAAA2G,IAAwC,aAAalG,EAAA8vD,WAAapwD,EAAAR,UAAA4uD,SAAA,WAAiCvuD,KAAAwvD,WAAA2B,UAAA,gBAA0CvkD,KAAA5M,KAAA4M,KAAAqJ,OAAAjW,KAAA2G,IAA8B,eAAexG,EAAAR,UAAAgzB,UAAA,WAAkC,MAAAnC,GAAA7b,UAAqB3U,KAAA2vD,UAAgB/iD,KAAA5M,KAAA4M,KAAAtC,KAAAtK,KAAA0vD,SAAiCvvD,GAAG6sC,EAAUxuC,GAAAD,QAAAgxD,IAClsGtlB,iBAAA,GAAAmnB,eAAA,IAAAngB,kBAAA,IAAAogB,kBAAA,IAAAxgC,eAAA,IAAAo+B,iBAAA,MAA2HqC,IAAA,SAAArwD,EAAAzC,EAAAD,GAC9H,YAAa,SAAAgzD,GAAApxD,EAAAO,GAA8B,GAAAD,GAAAN,EAAA8V,OAAAhX,EAAAkB,EAAA2/B,KAAyB,KAAA9/B,KAAAwxD,gBAAA/wD,GAAA,MAAAC,GAAA,UAAgD,IAAAnB,GAAAS,KAAAwxD,gBAAA/wD,GAAAkW,QAAAtV,KAAAmJ,IAAAvL,EAAAuK,EAAArJ,EAAA4U,SAAA9V,EAAA8C,EAAA9C,EAAA0C,EAAuE,KAAApC,EAAA,MAAAmB,GAAA,UAA0B,IAAAC,GAAA,GAAAwtB,GAAA5uB,EAAAgT,UAAA9T,EAAAgzD,EAAA9wD,EAAgD,KAAAlC,EAAAizD,YAAAjzD,EAAAkzD,aAAAlzD,EAAA8J,OAAAopD,aAAAlzD,EAAA,GAAAof,YAAApf,IAAAiC,EAAA,MAAoFkxD,WAAAjxD,EAAAkxD,QAAApzD,EAAA8J,SAAgC,GAAAupD,GAAA7wD,EAAA,gBAAAqR,EAAArR,EAAA,kBAAAktB,EAAAltB,EAAA,qBAAAwwD,EAAAxwD,EAAA,UAAAukB,EAAAvkB,EAAA,gBAAAuT,EAAAvT,EAAA,cAAA8wD,EAAA9wD,EAAA,+BAAA+wD,EAAA,SAAA7xD,GAAyS,QAAAO,KAAAD,EAAAxB,GAAkBkB,EAAAxB,KAAAqB,KAAAU,EAAAD,EAAA8wD,GAAAtyD,IAAAe,KAAAiyD,YAAAhzD,GAAAe,KAAAwxD,mBAAiF,MAAArxD,KAAAO,EAAAgtD,UAAAvtD,GAAAO,EAAAf,UAAAT,OAAA2D,OAAA1C,KAAAR,WAAAe,EAAAf,UAAAsoB,YAAAvnB,IAAAf,UAAAuyD,SAAA,SAAA/xD,EAAAO,GAAiI,GAAAD,GAAAT,IAAWA,MAAAiyD,YAAA9xD,EAAA,SAAAlB,EAAAM,GAAiC,GAAAN,IAAAM,EAAA,MAAAmB,GAAAzB,EAAqB,oBAAAM,GAAA,MAAAmB,GAAA,GAAAG,OAAA,6CAAuFyR,GAAA/S,GAAA,EAAa,KAAIkB,EAAA+wD,gBAAArxD,EAAA8V,QAAA9V,EAAAkmB,QAAAb,EAAArlB,EAAA2vD,qBAAAjpC,KAAAtnB,EAAAgT,UAAAiC,EAAAjV,EAAAY,EAAA0vD,kBAA2H,MAAA5wD,GAAS,MAAAyB,GAAAzB,GAAYwB,EAAA6gD,OAAAnhD,EAAA8V,WAAqBvV,EAAA,SAAWA,EAAAf,UAAAwyD,WAAA,SAAAzxD,EAAAD,GAAsC,GAAAxB,GAAAe,KAAAshD,OAAA5gD,EAAAuV,QAAA1W,EAAAmB,EAAAgY,GAAoC,OAAAzZ,MAAAM,GAAAY,EAAAR,UAAAwyD,WAAAxzD,KAAAqB,KAAAU,EAAAD,GAAAT,KAAA0wD,SAAAhwD,EAAAD,IAAwEC,EAAAf,UAAAsyD,YAAA,SAAA9xD,EAAAO,GAAuC,GAAAP,EAAA6O,QAAA8iD,EAAAM,QAAAjyD,EAAA6O,QAAAtO,OAAuC,CAAK,mBAAAP,GAAAmK,KAAA,MAAA5J,GAAA,GAAAG,OAAA,6CAA4F,KAAI,MAAAH,GAAA,KAAAkV,KAAAy8C,MAAAlyD,EAAAmK,OAAkC,MAAAnK,GAAS,MAAAO,GAAA,GAAAG,OAAA,iDAAmEH,EAAAf,UAAA2yD,aAAA,SAAAnyD,GAAsCH,KAAAwxD,gBAAArxD,EAAA8V,eAAAjW,MAAAwxD,gBAAArxD,EAAA8V,SAAsEvV,GAAGqxD,EAAyBvzD,GAAAD,QAAAyzD,IACvxDZ,eAAA,IAAAmB,oBAAA,GAAAC,8BAAA,IAAAC,iBAAA,GAAAC,aAAA,GAAAltC,aAAA,GAAAmtC,SAAA,KAA8IC,IAAA,SAAA3xD,EAAAzC,EAAAD,GACjJ,YAAa,IAAAqF,GAAA3C,EAAA,0BAAAwM,EAAAxM,EAAA,uBAAA4K,kBAAAlM,UAAA8N,UAAAgkB,EAAAxwB,EAAA,kBAAAguB,EAAA,SAAA9uB,GAAuLH,KAAA6yD,SAAA1yD,EAAAH,KAAA2M,OAAA8kB,EAAAzxB,KAAA4M,KAAAzM,EAAAyM,KAAA5M,KAAA0M,WAAAvM,EAAAmT,KAAA,MAAAnT,KAAAqZ,MAAArZ,EAAAwG,MAAA3G,KAAA2G,GAAAq3B,SAAA79B,EAAAwG,GAAA,KAAgIsoB,GAAAtvB,UAAA2N,aAAA,WAAiD,GAAAnN,GAAAH,IAAW,QAAAA,KAAA6yD,SAAAjmD,KAAA,CAA2B,OAAAnM,MAAAC,EAAA,EAAAzB,EAAAkB,EAAA0yD,SAAAhlD,SAAuCnN,EAAAzB,EAAA8B,OAAWL,GAAA,GAAM,GAAAE,GAAA3B,EAAAyB,EAAWD,GAAA4G,MAAA,GAAAzD,GAAAhD,EAAA,GAAAA,EAAA,MAA+B,MAAAH,GAAS,OAAAhC,MAAAoB,EAAA,EAAAN,EAAAY,EAAA0yD,SAAAhlD,SAAuChO,EAAAN,EAAAwB,OAAWlB,GAAA,GAAM,OAAAC,GAAAP,EAAAM,GAAAc,KAAAe,EAAA,EAAAnB,EAAAT,EAA4B4B,EAAAnB,EAAAQ,OAAWW,GAAA,GAAM,GAAAhD,GAAA6B,EAAAmB,EAAWf,GAAA0G,KAAA,GAAAzD,GAAAlF,EAAA,GAAAA,EAAA,KAA6BD,EAAA4I,KAAA1G,GAAU,MAAAlC,IAASwwB,EAAAtvB,UAAA8N,UAAA,SAAAtN,EAAAM,EAAAC,GAAoD,MAAA+M,GAAA9O,KAAAqB,KAAAG,EAAAM,EAAAC,GAAmC,IAAAytB,GAAA,SAAAhuB,GAA+BH,KAAAmM,QAAa2mD,kBAAA9yD,MAAuBA,KAAAjB,KAAA,oBAAAiB,KAAA2M,OAAA8kB,EAAAzxB,KAAAe,OAAAZ,EAAAY,OAAAf,KAAAkO,UAAA/N,EAAyFguB,GAAAxuB,UAAA+O,QAAA,SAAAvO,GAA6C,UAAA8uB,GAAAjvB,KAAAkO,UAAA/N,KAA6C3B,EAAAD,QAAA4vB,IACh/B8b,iBAAA,GAAAl8B,yBAAA,EAAAohB,sBAAA,IAAuE4jC,IAAA,SAAA9xD,EAAAzC,EAAAD,GAC1E,YAAa,IAAAiyB,GAAAvvB,EAAA,gBAAAb,EAAAa,EAAA,kBAAAylC,EAAAzlC,EAAA,gBAAAikC,EAAAjkC,EAAA,kBAAA2C,EAAA3C,EAAA,0BAAA+rC,EAAA/rC,EAAA,mBAAA6wD,EAAA7wD,EAAA,gBAAAijB,EAAAjjB,EAAA,mBAAAwwB,EAAAxwB,EAAA,kBAAAmjC,EAAAnjC,EAAA,+BAAAiwB,EAAAjwB,EAAA,uBAAAwxC,EAAAxxC,EAAA,iCAAAw5C,EAAA,SAAAt6C,GAAye,QAAAM,KAAAC,EAAAzB,EAAAR,GAAoB0B,EAAAxB,KAAAqB,WAAA2G,GAAAlG,EAAAT,KAAAwvD,WAAAvwD,EAAAe,KAAA8N,YAAApN,EAAAoN,YAAA9N,KAAA4M,KAAA,QAAA5M,KAAA2oC,QAAA,EAAA3oC,KAAA4oC,QAAA,GAAA5oC,KAAAwgC,SAAA,IAAAxgC,KAAAiV,SAAwJjV,KAAAyvD,iBAAAhxD,GAAAuB,KAAA0U,QAAAhU,EAAAV,KAAAgzD,eAAA,EAA+D,MAAA7yD,KAAAM,EAAAitD,UAAAvtD,GAAAM,EAAAd,UAAAT,OAAA2D,OAAA1C,KAAAR,WAAAc,EAAAd,UAAAsoB,YAAAxnB,IAAAd,UAAAknB,KAAA,WAA0H,GAAA1mB,GAAAH,IAAWA,MAAA6tD,KAAA,eAAyBoC,SAAA,WAAkBjwD,KAAA+/C,IAAA//C,KAAA0U,QAAAqrC,IAAA+R,EAAA9P,SAAAhiD,KAAAwS,IAAA69C,kBAAArwD,KAAA+/C,IAAA+R,EAAAxC,aAAA2D,OAAA,SAAAxyD,EAAAC,GAAqHD,EAAAN,EAAA0tD,KAAA,SAAkBjiC,MAAAnrB,IAAQC,IAAAP,EAAA++C,MAAAh7B,EAAA9Z,aAAA1J,GAAAP,EAAAiuD,qBAA4D3tD,EAAAd,UAAAyuD,eAAA,WAAuCpuD,KAAAwS,MAAAxS,KAAAkzD,eAAAlzD,KAAA8N,aAAA9N,KAAA6tD,KAAA,QAAmEoC,SAAA,SAAAE,eAAA,eAA+C1vD,EAAAd,UAAA2uD,MAAA,SAAAnuD,GAA+BH,KAAAwS,IAAArS,EAAAH,KAAA6mB,QAAuBpmB,EAAAd,UAAAuzD,eAAA,SAAA/yD,GAAwCH,KAAA8N,YAAA3N,CAAmB,IAAAM,GAAAT,KAAAwS,IAAA9R,EAAAP,EAAAqS,IAAA,SAAArS,GAAmC,MAAAM,GAAAyV,UAAAizB,mBAAAjE,EAAAn/B,QAAA5F,IAAA4kC,OAAA,KAAmE9lC,EAAAe,KAAAmzD,YAAA3iC,EAAA4iC,qBAAA1yD,EAAkDzB,GAAA4lC,OAAAxjC,KAAAoV,MAAAxX,EAAA4lC,QAAA5lC,EAAA6lC,IAAAzjC,KAAAoV,MAAAxX,EAAA6lC,KAAA9kC,KAAA8/B,MAAA,GAAA4G,GAAAznC,EAAA2mB,KAAA3mB,EAAA4lC,OAAA5lC,EAAA6lC,KAAA9kC,KAAA2oC,QAAA3oC,KAAA4oC,QAAA3pC,EAAA2mB,IAAuI,IAAAnnB,GAAAiC,EAAA8R,IAAA,SAAArS,GAAwB,GAAAM,GAAAN,EAAA4kC,OAAA9lC,EAAA2mB,KAAuB,WAAAhiB,GAAAvC,KAAA8D,OAAA1E,EAAAokC,OAAA5lC,EAAA4lC,QAAApT,GAAApwB,KAAA8D,OAAA1E,EAAAqkC,IAAA7lC,EAAA6lC,KAAArT,KAA4F,OAAAzxB,MAAAqzD,aAAA,GAAAjvB,GAAApkC,KAAAqzD,aAAAriC,YAAAvyB,EAAA,GAAAsD,EAAAtD,EAAA,GAAAkD,EAAA,KAAA3B,KAAAqzD,aAAAriC,YAAAvyB,EAAA,GAAAsD,EAAAtD,EAAA,GAAAkD,EAAA8vB,EAAA,GAAAzxB,KAAAqzD,aAAAriC,YAAAvyB,EAAA,GAAAsD,EAAAtD,EAAA,GAAAkD,EAAA,EAAA8vB,GAAAzxB,KAAAqzD,aAAAriC,YAAAvyB,EAAA,GAAAsD,EAAAtD,EAAA,GAAAkD,EAAA8vB,KAAAzxB,KAAA06C,eAAA16C,KAAA06C,aAAAp6B,gBAAAtgB,MAAA06C,cAAA16C,KAAA6tD,KAAA,QAAmWoC,SAAA,SAAAE,eAAA,YAA2CnwD,MAAOS,EAAAd,UAAA+6B,QAAA,WAAgC,IAAAx7B,OAAAmZ,KAAArY,KAAAiV,OAAAlU,QAAAf,KAAAk/C,OAAAl/C,KAAA+uD,cAAA/uD,KAAAwS,IAAAw8C,QAAAzkB,GAAAvqC,KAAAk/C,QAAmGz+C,EAAAd,UAAAovD,cAAA,SAAA5uD,EAAAM,EAAAC,GAA2C,GAAAzB,GAAAe,IAAWA,MAAA06C,eAAA16C,KAAA06C,aAAA,GAAAxpB,GAAA/wB,EAAAH,KAAAqzD,eAAArzD,KAAA26C,YAAA36C,KAAA26C,UAAA,GAAAlI,IAAAzyC,KAAAgzD,cAAAtyD,EAAAP,EAAAw+C,WAAAx+C,EAAAk2C,WAAA,EAAAl2C,EAAAoiD,KAAApiD,EAAAoiD,KAAApiD,EAAAi+C,cAAA39C,gBAAAL,GAAAkzD,kBAAA7yD,YAAAL,GAAAmzD,aAAApzD,EAAAi2C,YAAAj2C,EAAAk2C,WAAAr2C,KAAAs2C,SAAAn2C,EAAA+9C,cAAA/9C,EAAAk2C,WAAA,MAAAl2C,EAAAoiD,KAAApiD,EAAAi+C,cAAA39C,KAAAT,KAAAgzD,eAAA,EAAAhzD,KAAAs2C,QAAAn2C,EAAAk+C,gBAAAl+C,EAAAi2C,YAAAj2C,EAAAk2C,WAAAr2C,KAAAs2C,SAAAn2C,EAAAm+C,cAAAn+C,EAAAk2C,WAAAl2C,EAAAo+C,eAAAp+C,EAAAu7C,eAAAv7C,EAAAm+C,cAAAn+C,EAAAk2C,WAAAl2C,EAAAq+C,eAAAr+C,EAAAu7C,eAAAv7C,EAAAm+C,cAAAn+C,EAAAk2C,WAAAl2C,EAAAs+C,mBAAAt+C,EAAAs7C,QAAAt7C,EAAAm+C,cAAAn+C,EAAAk2C,WAAAl2C,EAAAu+C,mBAAAv+C,EAAAs7C,QAAAt7C,EAAAw+C,WAAAx+C,EAAAk2C,WAAA,EAAAl2C,EAAAoiD,KAAApiD,EAAAoiD,KAAApiD,EAAAi+C,cAAA39C,GAAwxB,QAAAhC,KAAAQ,GAAAgW,MAAA,CAAsB,GAAArU,GAAA3B,EAAAgW,MAAAxW,EAAiB,YAAAmC,EAAA+vD,QAAA/vD,EAAA+vD,MAAA,SAAA/vD,EAAA01C,QAAAr3C,EAAAq3C,WAA4D71C,EAAAd,UAAA+wD,SAAA,SAAAvwD,EAAAM,GAAoCT,KAAA8/B,OAAA9/B,KAAA8/B,MAAAjW,aAAA1pB,EAAA2/B,MAAAjW,YAAA7pB,KAAAiV,MAAA6K,OAAA3f,EAAA2/B,MAAAl+B,IAAAzB,IAAAqzD,WAAoG/yD,EAAA,QAAAN,EAAAwwD,MAAA,UAAAlwD,EAAA,QAAsCA,EAAAd,UAAAgzB,UAAA,WAAkC,OAAO/lB,KAAA,QAAAmzC,IAAA//C,KAAA0U,QAAAqrC,IAAAjyC,YAAA9N,KAAA8N,cAAgErN,GAAGusC,EAAUxuC,GAAAD,QAAAk8C,IAC1/GxQ,iBAAA,GAAAme,8BAAA,GAAAqL,iBAAA,GAAA1vB,sBAAA,GAAA2vB,gCAAA,GAAAtC,eAAA,IAAAngB,kBAAA,IAAAogB,kBAAA,IAAAxgC,eAAA,IAAAo+B,iBAAA,IAAA0E,eAAA,IAAA5lD,yBAAA,IAA0R6lD,IAAA,SAAA3yD,EAAAzC,EAAAD,GAC7R,YAAa,IAAAiyB,GAAAvvB,EAAA,gBAAA6wD,EAAA7wD,EAAA,gBAAAijB,EAAAjjB,EAAA,mBAAA4yD,EAAA5yD,EAAA,kBAAA6yD,kBAA2Jt1D,GAAAD,QAAA,SAAAmC,EAAAP,EAAAlB,GAA+B,GAAA0B,GAAA,SAAAD,EAAAP,GAAoB,GAAAO,EAAA,MAAAzB,GAAAyB,EAAiB,IAAAP,EAAA,CAAM,GAAAQ,GAAA6vB,EAAAujC,KAAA5zD,GAAA,kEAAsFA,GAAA6zD,gBAAArzD,EAAAszD,aAAA9zD,EAAA6zD,cAAArzD,EAAAuzD,eAAAvzD,EAAAszD,aAAAzhD,IAAA,SAAA9R,GAAiG,MAAAA,GAAAiG,MAAY1H,EAAA,KAAA0B,IAAeD,GAAAq/C,IAAA+R,EAAAM,QAAAjyD,EAAA0zD,EAAAnzD,EAAAq/C,KAAA+R,EAAAxC,aAAAgB,QAAA3vD,GAAAujB,EAAAiwC,MAAA,WAA+F,MAAAxzD,GAAA,KAAAD,QAChiB0wD,eAAA,IAAAngB,kBAAA,IAAAmjB,iBAAA,IAAAvjC,eAAA,MAAiFwjC,IAAA,SAAApzD,EAAAzC,EAAAD,GACpF,YAAa,IAAAkzB,GAAAxwB,EAAA,iBAAqCzC,GAAAD,QAAA,SAAA4B,EAAAM,EAAAC,GAA+B,MAAAD,IAAAgxB,GAAAtxB,EAAAqgC,SAAAn/B,KAAAkJ,IAAA,EAAA7J,EAAAP,EAAA2/B,MAAAt2B,QAC9EygC,iBAAA,KAAoBqqB,IAAA,SAAArzD,EAAAzC,EAAAD,GACvB,YAAa,SAAAg2D,GAAAp0D,EAAAO,GAA0B,GAAAzB,GAAAkB,EAAA2/B,MAAAr/B,EAAAC,EAAAo/B,KAAwB,OAAA7gC,GAAAuK,EAAA/I,EAAA+I,GAAAvK,EAAA0C,EAAAlB,EAAAkB,GAAA1C,EAAA2C,EAAAnB,EAAAmB,GAAA3C,EAAA8C,EAAAtB,EAAAsB,EAA0C,QAAAyyD,GAAAr0D,GAAuC,OAAAO,MAAYzB,KAAKwB,EAAA,EAAAlB,EAAAY,EAASM,EAAAlB,EAAAwB,OAAWN,GAAA,GAAM,GAAAE,GAAApB,EAAAkB,GAAAG,EAAAD,EAAA8zD,aAAA31D,EAAA6B,EAAA+zD,cAAA50D,EAAAb,EAAAH,GAAAG,EAAAH,MAA8D,QAAAL,KAAAmC,GAAA,OAAAlC,GAAAkC,EAAAnC,GAAAI,EAAAiB,EAAArB,GAAAqB,EAAArB,OAA6C8B,EAAAG,EAAAjC,GAAAiC,EAAAjC,OAAA+C,EAAA,EAAAG,EAAAjD,EAAyB8C,EAAAG,EAAAZ,OAAWS,GAAA,GAAM,GAAA3B,GAAA8B,EAAAH,EAAW3C,GAAAgB,EAAA4yB,gBAAA5zB,EAAAgB,EAAA4yB,eAAA,EAAAlyB,EAAA8G,KAAAxH,EAAA6O,WAA6D,MAAAhO,GAAS,GAAAgmC,GAAAzlC,EAAA,eAAsC1C,GAAAo2D,SAAA,SAAAx0D,EAAAO,EAAAzB,EAAAwB,EAAAlB,EAAAoB,GAAuC,GAAAC,GAAAT,EAAAy0D,QAAA31D,EAAmB2B,GAAAqQ,KAAAsjD,EAAoB,QAAAz1D,MAAAgB,EAAA,EAAArB,EAAAmC,EAAqBd,EAAArB,EAAAsC,OAAWjB,GAAA,GAAM,GAAApB,GAAAD,EAAAqB,EAAWhB,GAAAuI,MAAQqtD,cAAAh2D,EAAAohC,MAAA+0B,UAAAluD,GAAA8tD,aAAA/1D,EAAAkY,KAAAk+C,sBAAAp0D,EAAAhC,EAAA+hC,cAAA/hC,EAAAqE,MAAAtC,EAAAE,KAA8G,MAAA6zD,GAAA11D,IAAqCP,EAAA0X,OAAA,SAAA9V,EAAAO,GAA8B,OAAAzB,GAAAkB,EAAA40D,mBAAAviD,IAAA,SAAA9R,GAA+C,MAAAP,GAAA60D,YAAAt0D,KAAwBD,KAAAlB,KAAWoB,EAAA,EAAKA,EAAA1B,EAAA8B,OAAWJ,IAAA,CAAK,GAAAC,GAAA3B,EAAA0B,GAAA7B,EAAA,GAAA4nC,GAAArlC,KAAAmJ,IAAA5J,EAAAipC,cAAAjpC,EAAAk/B,MAAAt2B,GAAA5I,EAAAk/B,MAAA/9B,EAAAnB,EAAAk/B,MAAAn+B,EAAA,GAAAgF,EAAyFpH,GAAAT,KAAAS,EAAAT,IAAA,EAAA8B,EAAAq0D,oBAAAx0D,EAAAC,IAA2C,MAAAD,MACv+BkzD,eAAA,MAAmBuB,IAAA,SAAAj0D,EAAAzC,EAAAD,GACtB,YAAa,IAAAiyB,GAAAvvB,EAAA,gBAAA6wD,EAAA7wD,EAAA,gBAAA+rC,EAAA/rC,EAAA,mBAAAk0D,EAAAl0D,EAAA,mBAAA4yD,EAAA5yD,EAAA,kBAAAm0D,iBAAAC,EAAAp0D,EAAA,iBAAAq0D,EAAA,SAAAn1D,GAAkQ,QAAAM,KAAAhC,EAAAiC,EAAAzB,GAAoBkB,EAAAxB,KAAAqB,WAAA2G,GAAAlG,EAAAT,KAAAwvD,WAAA9uD,EAAAV,KAAAyvD,iBAAAxwD,GAAAe,KAAA4M,KAAA,SAAA5M,KAAA2oC,QAAA,EAAA3oC,KAAA4oC,QAAA,GAAA5oC,KAAAsoC,WAAA,EAAAtoC,KAAAu1D,OAAA,MAAAv1D,KAAAwgC,SAAA,IAAAxgC,KAAAywD,SAAA,EAAAzwD,KAAA2vD,SAAAn/B,EAAA7b,UAAsNlW,GAAA+xB,EAAA7b,OAAA3U,KAAAwwB,EAAAujC,KAAAt1D,GAAA,6BAA+D,MAAA0B,KAAAM,EAAAitD,UAAAvtD,GAAAM,EAAAd,UAAAT,OAAA2D,OAAA1C,KAAAR,WAAAc,EAAAd,UAAAsoB,YAAAxnB,IAAAd,UAAAknB,KAAA,WAA0H,GAAA1mB,GAAAH,IAAWA,MAAA6tD,KAAA,eAAyBoC,SAAA,WAAkBkF,EAAAn1D,KAAA2vD,SAAA3vD,KAAAwS,IAAA69C,kBAAA,SAAA5vD,EAAAhC,GAAsEgC,EAAAN,EAAA0tD,KAAA,QAAAptD,GAAAhC,IAAA+xB,EAAA7b,OAAAxU,EAAA1B,KAAAojC,SAAA1hC,EAAAq1D,WAAA,GAAAH,GAAA52D,EAAAojC,OAAA1hC,EAAAwoC,QAAAxoC,EAAAyoC,UAAAzoC,EAAA0tD,KAAA,QAA8HoC,SAAA,SAAAE,eAAA,aAA4ChwD,EAAA0tD,KAAA,QAAiBoC,SAAA,SAAAE,eAAA,gBAAgD1vD,EAAAd,UAAA2uD,MAAA,SAAAnuD,GAA+BH,KAAAwS,IAAArS,EAAAH,KAAA6mB,QAAuBpmB,EAAAd,UAAAgzB,UAAA,WAAkC,MAAAnC,GAAA7b,UAAqB3U,KAAA2vD,WAAgBlvD,EAAAd,UAAA81D,QAAA,SAAAt1D,GAAiC,OAAAH,KAAAw1D,YAAAx1D,KAAAw1D,WAAAE,SAAAv1D,EAAAH,KAAA4oC,UAAiEnoC,EAAAd,UAAA+wD,SAAA,SAAAvwD,EAAAM,GAAoC,GAAAhC,GAAAuB,KAAAU,EAAAmzD,EAAA1zD,EAAA2/B,MAAAigB,IAAA//C,KAAAiV,MAAA,KAAAjV,KAAAu1D,QAAAv1D,KAAA+/C,IAAA//C,KAAAwgC,SAA2FrgC,GAAA6O,QAAA8iD,EAAA9P,SAAAhiD,KAAAwS,IAAA69C,kBAAA3vD,EAAAoxD,EAAAxC,aAAAqG,MAAA,SAAAj1D,EAAAzB,GAA2F,SAAAkB,GAAA6O,QAAA7O,EAAA0wD,QAAApyD,EAAAkyD,MAAA,WAAAlwD,EAAA,UAAyD,IAAAC,EAAAjC,EAAAkyD,MAAA,UAAAlwD,EAAAC,OAAiC,IAAAzB,EAAA,CAAWR,EAAA+T,IAAAojD,sBAAAz1D,EAAA01D,cAAA52D,YAAA62D,mBAAA72D,GAAA82D,OAAsF,IAAAn1D,GAAAnC,EAAA+T,IAAAw8C,QAAAzkB,EAAuBpqC,GAAAm2C,QAAA73C,EAAA+T,IAAAw8C,QAAAlH,eAAA7oD,EAAAgI,OAAA9G,EAAAm2C,SAAA11C,EAAAw1C,YAAAx1C,EAAAy1C,WAAAl2C,EAAAm2C,SAAA11C,EAAAs9C,cAAAt9C,EAAAy1C,WAAA,MAAAz1C,EAAA2hD,KAAA3hD,EAAAw9C,cAAAn/C,KAAAkB,EAAAm2C,QAAA11C,EAAAy9C,gBAAAz9C,EAAAw1C,YAAAx1C,EAAAy1C,WAAAl2C,EAAAm2C,SAAA11C,EAAA09C,cAAA19C,EAAAy1C,WAAAz1C,EAAA69C,mBAAA79C,EAAAo1D,uBAAAp1D,EAAA09C,cAAA19C,EAAAy1C,WAAAz1C,EAAA89C,mBAAA99C,EAAA66C,QAAA76C,EAAA09C,cAAA19C,EAAAy1C,WAAAz1C,EAAA29C,eAAA39C,EAAA86C,eAAA96C,EAAA09C,cAAA19C,EAAAy1C,WAAAz1C,EAAA49C,eAAA59C,EAAA86C,eAAA96C,EAAA8qD,YAAA9qD,EAAAgrD,gCAAA,GAAAntD,EAAA+T,IAAAw8C,QAAAhK,6BAAApkD,EAAAq1D,cAAAr1D,EAAAy1C,WAAA53C,EAAA+T,IAAAw8C,QAAAhK,4BAAAkR,2BAAAz3D,EAAA+T,IAAAw8C,QAAA/J,gCAAArkD,EAAA+9C,WAAA/9C,EAAAy1C,WAAA,EAAAz1C,EAAA2hD,KAAA3hD,EAAA2hD,KAAA3hD,EAAAw9C,cAAAn/C,GAAAkB,EAAAm2C,QAAA1tC,KAAA3J,EAAAgI,OAAArG,EAAAu1D,eAAAv1D,EAAAy1C,YAAAl2C,EAAAwwD,MAAA,SAAAlwD,EAAA,UAAq2BA,EAAAd,UAAAsxD,UAAA,SAAA9wD,GAAmCA,EAAA6O,UAAA7O,EAAA6O,QAAAonD,cAAAj2D,GAAA6O,UAAgDvO,EAAAd,UAAAuxD,WAAA,SAAA/wD,GAAoCA,EAAAm2C,SAAAt2C,KAAAwS,IAAAw8C,QAAAnH,gBAAA1nD,EAAAm2C,UAAuD71C,GAAGusC,EAAUxuC,GAAAD,QAAA+2D,IACjsFlE,eAAA,IAAAC,kBAAA,IAAA+C,iBAAA,IAAAvjC,eAAA,IAAAwlC,kBAAA,GAAAC,gBAAA,MAA0HC,IAAA,SAAAt1D,EAAAzC,EAAAD,GAC7H,YAAa,IAAAuzD,GAAA7wD,EAAA,gBAAA+rC,EAAA/rC,EAAA,mBAAAb,EAAAa,EAAA,kBAAAu1D,GAAA,EAAAC,EAAA,IAA2Ij4D,GAAAD,QAAAm4D,QAAA,GAAA1pB,GAAAxuC,EAAAD,QAAAo4D,8BAAA,SAAAx2D,GAA4F,MAAAs2D,GAAAt2D,GAAwBs2D,gBAAAG,cAAAp4D,EAAAD,QAAAq4D,gBAAuEp4D,EAAAD,QAAAm4D,QAAAlyC,KAAA,kBAAArkB,MAAqD3B,EAAAD,QAAAs4D,cAAA,SAAA12D,GAA0C,MAAAC,GAAAsvB,IAAAM,gBAAA,GAAA5vB,GAAA0vB,MAAA3vB,EAAAmK,OAA4DsC,KAAA,sBAA0BpO,EAAAD,QAAAu4D,mBAAA,WAA8CN,GAAA,EAAAC,EAAA,MAAsCj4D,EAAAD,QAAA8uC,iBAAA,SAAAltC,EAAAzB,GAA+C,GAAA83D,EAAA,SAAA31D,OAAA,oDAAwF21D,IAAA,EAAAh4D,EAAAD,QAAAq4D,cAAAl4D,EAAAozD,EAAAiF,gBAAuEhX,IAAA5/C,GAAM,SAAAA,EAAAM,GAAeN,EAAAzB,EAAAyB,GAAAM,IAAAg2D,EAAAj4D,EAAAD,QAAAs4D,cAAAp2D,GAAAjC,EAAAD,QAAAm4D,QAAA7I,KAAA,mBAAwG4I,gBAAAG,cAAAl4D,QAAiDF,EAAAD,QAAAy4D,mBAAA,KAAAx4D,EAAAD,QAAA04D,yBAAA,OACr9B7F,eAAA,IAAAC,kBAAA,IAAApC,iBAAA,MAA8DiI,IAAA,SAAAj2D,EAAAzC,EAAAD,GACjE,YAAa,IAAAiyB,GAAAvvB,EAAA,gBAAAk2D,GAA8CC,OAAAn2D,EAAA,gCAAAuiD,OAAAviD,EAAA,gCAAAo2D,QAAAp2D,EAAA,4BAAAq2D,MAAAr2D,EAAA,0BAAAi+C,MAAAj+C,EAAA,0BAAA4H,OAAA5H,EAAA,2BAAqQ1C,GAAAsE,OAAA,SAAA1C,EAAAO,EAAAzB,EAAA0B,GAAiC,GAAAb,GAAA,GAAAq3D,GAAAz2D,EAAAkM,MAAAzM,EAAAO,EAAAzB,EAAA0B,EAAuC,IAAAb,EAAA6G,KAAAxG,EAAA,SAAAU,OAAA,4BAAAV,EAAA,eAAAL,EAAA6G,GAA+E,OAAA6pB,GAAA+mC,SAAA,+CAAAz3D,MAAyEvB,EAAAi5D,QAAA,SAAAr3D,GAA6B,MAAAg3D,GAAAh3D,IAAsB5B,EAAAk5D,QAAA,SAAAt3D,EAAAO,GAA+By2D,EAAAh3D,GAAAO,KAC/mBg3D,0BAAA,GAAAC,2BAAA,GAAA1c,yBAAA,GAAA2c,+BAAA,GAAAC,+BAAA,IAAAC,yBAAA,IAAAjnC,eAAA,MAA4MknC,IAAA,SAAA92D,EAAAzC,EAAAD,GAC/M,YAAa,SAAAy5D,GAAA73D,EAAAM,EAAAxB,GAAsC,GAAAR,GAAAQ,EAAA8lC,OAAA1jC,KAAAmJ,IAAArK,EAAAqJ,EAAA/I,GAAgC,WAAAmD,IAAAnF,EAAAomC,QAAA1kC,EAAA4B,EAAA5B,EAAAyB,EAAAP,KAAAkJ,IAAA,EAAApK,EAAAqJ,KAAAioB,GAAAhzB,EAAAqmC,IAAA3kC,EAAAwB,GAAA8vB,GAAiF,QAAAwmC,GAAA93D,EAAAM,GAA6B,MAAAN,GAAA,GAAAM,EAAA,GAAiB,QAAAy3D,GAAA/3D,GAAyB,iBAAAA,GAAA,UAAAA,GAAA,UAAAA,EAA6C,GAAAg4D,GAAAl3D,EAAA,YAAA4B,OAAA8yD,EAAA10D,EAAA,UAAA+rC,EAAA/rC,EAAA,mBAAAylC,EAAAzlC,EAAA,gBAAAm3D,EAAAn3D,EAAA,qBAAA2jC,EAAA3jC,EAAA,qBAAAuvB,EAAAvvB,EAAA,gBAAAwwB,EAAAxwB,EAAA,kBAAA2C,EAAA3C,EAAA,0BAAAgiD,EAAA,SAAA9iD,GAAiV,QAAAM,KAAAxB,EAAAR,GAAkB,GAAAiC,GAAAV,IAAWG,GAAAxB,KAAAqB,WAAA2G,GAAAlG,EAAAT,KAAAwvD,WAAA/wD,EAAAuB,KAAAskB,GAAA,gBAAAnkB,GAAoE,WAAAA,EAAA8vD,UAAA,aAAA9vD,EAAAgwD,iBAAAzvD,EAAA23D,eAAA,GAAA33D,EAAA23D,gBAAA33D,EAAA43D,SAAA,WAAAn4D,EAAA8vD,UAAA,YAAA9vD,EAAAgwD,iBAAAzvD,EAAA63D,SAAA73D,EAAAwV,WAAAxV,EAAA4hD,OAAA5hD,EAAAwV,cAA6MlW,KAAAskB,GAAA,mBAA6B5jB,EAAA83D,gBAAA,IAAoBx4D,KAAAy4D,QAAAN,EAAA13D,EAAAxB,EAAAR,EAAAuB,WAAA04D,UAAsD14D,KAAA24D,OAAA,GAAAP,GAAA,EAAAp4D,KAAA44D,YAAAz8C,KAAAnc,YAAA64D,WAAqE74D,KAAA84D,gBAAqB94D,KAAA+4D,kBAAA,KAAA/4D,KAAAg5D,gBAAAh5D,KAAAg5D,gBAAA78C,KAAAnc,MAAkF,MAAAG,KAAAM,EAAAitD,UAAAvtD,GAAAM,EAAAd,UAAAT,OAAA2D,OAAA1C,KAAAR,WAAAc,EAAAd,UAAAsoB,YAAAxnB,IAAAd,UAAA2uD,MAAA,SAAAnuD,GAA4HH,KAAAwS,IAAArS,EAAAH,KAAA+4D,kBAAA54D,IAAA44D,kBAAA,KAAA/4D,KAAAy4D,SAAAz4D,KAAAy4D,QAAAnK,OAAAtuD,KAAAy4D,QAAAnK,MAAAnuD,IAAqHM,EAAAd,UAAA4uD,SAAA,SAAApuD,GAAkCH,KAAAy4D,SAAAz4D,KAAAy4D,QAAAlK,UAAAvuD,KAAAy4D,QAAAlK,SAAApuD,IAA8DM,EAAAd,UAAA2hD,OAAA,WAA+B,GAAAnhD,GAAAH,IAAW,IAAAA,KAAAw4D,eAAA,QAAgC,KAAAx4D,KAAAq4D,cAAA,QAAgC,QAAA53D,KAAAN,GAAAu4D,OAAA,CAAuB,GAAAz5D,GAAAkB,EAAAu4D,OAAAj4D,EAAkB,eAAAxB,EAAA0xD,OAAA,YAAA1xD,EAAA0xD,MAAA,SAAoD,UAASlwD,EAAAd,UAAAw5C,UAAA,WAAkC,MAAAn5C,MAAAy4D,SAAoBh4D,EAAAd,UAAAuuD,MAAA,WAA8BluD,KAAAs4D,SAAA,GAAgB73D,EAAAd,UAAAs5D,OAAA,WAA+B,GAAAj5D,KAAAs4D,QAAA,CAAiB,GAAAn4D,GAAAH,KAAAk5D,qBAAiCl5D,MAAAs4D,SAAA,EAAAt4D,KAAAk5D,uBAAA,EAAA/4D,GAAAH,KAAAu4D,SAAAv4D,KAAAkW,WAAAlW,KAAAsiD,OAAAtiD,KAAAkW,aAA4GzV,EAAAd,UAAAw5D,UAAA,SAAAh5D,EAAAM,GAAqC,MAAAT,MAAAy4D,QAAA/H,SAAAvwD,EAAAM,IAAkCA,EAAAd,UAAAi5D,YAAA,SAAAz4D,GAAqC,GAAAH,KAAAy4D,QAAAvH,WAAA,MAAAlxD,MAAAy4D,QAAAvH,WAAA/wD,IAA6DM,EAAAd,UAAAy5D,WAAA,SAAAj5D,GAAoC,GAAAH,KAAAy4D,QAAAxH,UAAA,MAAAjxD,MAAAy4D,QAAAxH,UAAA9wD,IAA2DM,EAAAd,UAAAgzB,UAAA,WAAkC,MAAA3yB,MAAAy4D,QAAA9lC,aAAgClyB,EAAAd,UAAA+6B,QAAA,SAAAv6B,GAAiC,GAAAM,GAAAT,IAAWA,MAAAy4D,QAAA/9B,SAAA16B,KAAAy4D,QAAA/9B,SAA6C,QAAAz7B,KAAAwB,GAAAi4D,OAAAj4D,EAAAi4D,OAAAz5D,GAAA2zB,OAAAzyB,IAA4CM,EAAAd,UAAA05D,OAAA,WAA+B,MAAAn6D,QAAAmZ,KAAArY,KAAA04D,QAAAlmD,IAAA+Y,QAAAta,KAAAgnD,IAAiEx3D,EAAAd,UAAAo1D,iBAAA,WAAyC,MAAA/0D,MAAAq5D,SAAAx9C,OAAA7b,KAAAg5D,kBAAkDv4D,EAAAd,UAAAq5D,gBAAA,SAAA74D,GAAyC,MAAAH,MAAA04D,OAAAv4D,GAAAm5D,YAAAt5D,KAAAu5D,cAAAp5D,IAAwDM,EAAAd,UAAA44D,OAAA,WAA+B,GAAAp4D,GAAAH,IAAW,IAAAA,KAAAs4D,QAAA,YAAAt4D,KAAAk5D,uBAAA,EAA2Dl5D,MAAA24D,OAAAa,OAAoB,QAAA/4D,KAAAN,GAAAu4D,OAAAv4D,EAAAs5D,YAAAh5D,EAAA,cAAmDA,EAAAd,UAAA85D,YAAA,SAAAt5D,EAAAM,GAAuC,GAAAxB,GAAAe,KAAA04D,OAAAv4D,EAAqBlB,KAAA,YAAAA,EAAA0xD,QAAA1xD,EAAA0xD,MAAAlwD,GAAAT,KAAAm5D,UAAAl6D,EAAAe,KAAA05D,YAAAv9C,KAAAnc,KAAAf,EAAAkB,EAAAM,MAA0FA,EAAAd,UAAA+5D,YAAA,SAAAv5D,EAAAM,EAAAxB,EAAAR,GAA2C,GAAAA,EAAA,MAAA0B,GAAAwwD,MAAA,qBAAAlyD,EAAAk7D,OAAA35D,KAAAy4D,QAAA5K,KAAA,SAA6Ej3C,KAAAzW,EAAAyrB,MAAAntB,IAAeuB,KAAAsiD,OAAAtiD,KAAAkW,WAA+B/V,GAAA46C,WAAA,GAAAj0B,OAAA8yC,UAAA,YAAA36D,IAAAkB,EAAA66C,yBAAA,GAAAh7C,KAAA65D,oBAAAp5D,EAAAN,GAAAH,KAAAy4D,QAAA5K,KAAA,QAAuIoC,SAAA,SAAAr5C,KAAAzW,EAAA2/B,MAAA3/B,EAAA2/B,QAAuC9/B,KAAAwS,MAAAxS,KAAAwS,IAAAw8C,QAAAzf,cAAAiH,IAAA,OAAsD/1C,EAAAd,UAAAgX,QAAA,SAAAxW,GAAiC,MAAAH,MAAAg1D,YAAA70D,EAAAwG,KAA8BlG,EAAAd,UAAAq1D,YAAA,SAAA70D,GAAqC,MAAAH,MAAA04D,OAAAv4D,IAAsBM,EAAAd,UAAAm6D,QAAA,SAAA35D,GAAiC,MAAAA,GAAAylB,KAAAzlB,EAAAooC,UAAApoC,EAAAqgC,SAAAxgC,KAAAy4D,QAAAj4B,WAA4D//B,EAAAd,UAAAo6D,oBAAA,SAAA55D,EAAAM,EAAAxB,GAAiD,GAAAR,GAAAuB,KAAAU,GAAA,CAAgB,QAAAZ,KAAArB,GAAAi6D,OAAA,CAAuB,GAAA93D,GAAAnC,EAAAi6D,OAAA54D,EAAkB,MAAAb,EAAAa,KAAAc,EAAA04D,WAAA14D,EAAAk/B,MAAAt2B,GAAArJ,EAAAqJ,GAAA5I,EAAAk/B,MAAAt2B,EAAA/I,GAAA,CAAuD,GAAAlB,GAAA8B,KAAAkJ,IAAA,EAAAlJ,KAAAmJ,IAAA5J,EAAAk/B,MAAAt2B,EAAA/K,EAAAg6D,QAAA7vB,SAAAvnC,KAAAmJ,IAAArK,EAAAqJ,EAAA/K,EAAAg6D,QAAA7vB,SAAwF,IAAAvnC,KAAAoV,MAAA7V,EAAAk/B,MAAA/9B,EAAAxC,KAAAY,EAAA4B,GAAAV,KAAAoV,MAAA7V,EAAAk/B,MAAAn+B,EAAApC,KAAAY,EAAAwB,EAAA,IAAA1C,EAAAa,IAAA,EAAAY,GAAA,EAAiFE,KAAAk/B,MAAAt2B,EAAA,EAAArJ,EAAAqJ,GAAmB,CAAE,GAAA1K,GAAA8B,EAAAk/B,MAAAk6B,OAAAv7D,EAAAg6D,QAAA7vB,QAAwC,KAAA9pC,EAAA,OAAY8B,EAAAnC,EAAAi6D,OAAA55D,EAAA6H,MAAA/F,EAAA04D,kBAAAr6D,GAAAa,GAAAb,EAAAH,EAAA6H,KAAA,KAA4D,MAAAjG,IAASD,EAAAd,UAAAw6C,iBAAA,SAAAh6C,EAAAM,EAAAxB,GAA8C,OAAAR,GAAAuB,KAAAU,EAAAP,EAAAqJ,EAAA,EAAuB9I,GAAAD,EAAKC,IAAA,CAAK,GAAAZ,GAAAK,EAAA65D,OAAAv7D,EAAAg6D,QAAA7vB,QAAkC,KAAA9oC,EAAA,MAAaK,GAAAL,CAAI,IAAAc,GAAAkf,OAAA3f,EAAAwG,IAAApH,EAAAd,EAAAi6D,OAAA93D,EAAiC,IAAArB,KAAA+5D,UAAA,MAAAr6D,GAAA2B,IAAA,EAAArB,CAAmC,IAAAd,EAAAk6D,OAAAsB,IAAAr5D,GAAA,MAAA3B,GAAA2B,IAAA,EAAAnC,EAAAk6D,OAAAuB,mBAAAt5D,KAAkEH,EAAAd,UAAAw6D,gBAAA,SAAAh6D,GAAyC,GAAAM,GAAAY,KAAAkd,KAAApe,EAAA8G,MAAA9G,EAAAqgC,UAAA,EAAAvhC,EAAAoC,KAAAkd,KAAApe,EAAA+G,OAAA/G,EAAAqgC,UAAA,EAAA/hC,EAAAgC,EAAAxB,EAAAyB,EAAAW,KAAAoV,MAAA,EAAAhY,GAAAqB,EAAA,gBAAAE,MAAA+4D,kBAAA13D,KAAAmJ,IAAAxK,KAAA+4D,kBAAAr4D,IAAgLV,MAAA24D,OAAAyB,WAAAt6D,IAA0BW,EAAAd,UAAA2iD,OAAA,SAAAniD,GAAgC,GAAAlB,GAAAe,IAAW,IAAAA,KAAAkW,UAAA/V,EAAAH,KAAAq4D,gBAAAr4D,KAAAs4D,QAAA,CAAuDt4D,KAAAm6D,gBAAAh6D,GAAAH,KAAAu5D,gBAA8C,IAAA96D,EAAMuB,MAAAumD,KAAAvmD,KAAAy4D,QAAA34B,MAAArhC,EAAA0B,EAAAqoC,6BAAAxoC,KAAAy4D,QAAA34B,QAAArhC,EAAA0B,EAAAuoC,eAAsGlI,SAAAxgC,KAAAy4D,QAAAj4B,SAAAmI,QAAA3oC,KAAAy4D,QAAA9vB,QAAAC,QAAA5oC,KAAAy4D,QAAA7vB,QAAAN,UAAAtoC,KAAAy4D,QAAAnwB,UAAAQ,kBAAA9oC,KAAAy4D,QAAA3vB,oBAA2K9oC,KAAAy4D,QAAAhD,UAAAh3D,IAAAod,OAAA,SAAA1b,GAAgD,MAAAlB,GAAAw5D,QAAAhD,QAAAt1D,OAA4B1B,IAAS,IAAAiC,IAAAV,KAAAy4D,QAAAnwB,UAAAjnC,KAAA8D,MAAA9D,KAAAoV,OAAAzW,KAAA85D,QAAA35D,IAAAL,EAAAuB,KAAAuG,IAAAlH,EAAAD,EAAAsjD,eAAA/jD,KAAAy4D,QAAA9vB,SAAA/nC,EAAAS,KAAAuG,IAAAlH,EAAAD,EAAAqjD,gBAAA9jD,KAAAy4D,QAAA9vB,SAAAppC,EAAAS,KAAAq6D,qBAAA57D,EAAAiC,GAAA5B,IAAqN,IAAAo5D,EAAAl4D,KAAAy4D,QAAA7rD,MAAA,OAAAlL,GAAAxC,OAAAmZ,KAAA9Y,GAAAoB,EAAA,EAAgEA,EAAAe,EAAAX,OAAWJ,IAAA,CAAK,GAAA9B,GAAA6C,EAAAf,GAAAjC,EAAAgoC,EAAA4zB,QAAAz7D,GAAAk2B,EAAA91B,EAAAy5D,OAAA75D,EAAgD,IAAAk2B,QAAA,KAAAA,EAAAwlC,aAAAxlC,EAAAwlC,aAAAzzC,KAAAC,OAAA,CAA2D9nB,EAAA86D,oBAAAr7D,EAAAkC,EAAArB,OAAAV,IAAA,EAAwC,IAAAD,GAAAK,EAAAk7C,iBAAAz7C,EAAAoB,EAAAhB,EAAgCF,IAAAK,EAAAu7D,SAAA57D,EAAAkhC,QAAwB,GAAAjgC,EAAM,KAAAA,IAAAf,GAAAS,EAAAM,KAAAZ,EAAAs6D,cAAA15D,IAAA,EAAyC,KAAAA,IAAAf,GAAAS,EAAAM,IAAA,CAAmB,QAAAU,GAAAiwB,EAAAiqC,eAAAz6D,KAAA04D,OAAAn5D,GAAAmX,EAAA,EAAiDA,EAAAnW,EAAAQ,OAAW2V,IAAAzX,EAAAy7D,YAAAn6D,EAAAmW,MAAyBjW,EAAAd,UAAA06D,qBAAA,SAAAl6D,EAAAlB,GAAgD,GAAAR,GAAAiC,EAAAZ,EAAAc,EAAArB,EAAAS,KAAAlB,KAAuB4C,KAAKf,EAAAU,KAAAuG,IAAA3I,EAAAwB,EAAAsjD,eAAA/jD,KAAAy4D,QAAA9vB,QAAqD,KAAAlqC,EAAA,EAAQA,EAAA0B,EAAAY,OAAWtC,IAAA,CAAKiC,EAAAP,EAAA1B,GAAAqB,EAAAP,EAAAi7D,SAAA95D,EAAuB,IAAA7B,IAAA,CAAS,IAAAiB,EAAAw5D,UAAAx6D,EAAA4B,EAAAiG,KAAA,MAA0B,CAAwC,GAAnC9H,EAAAiB,EAAA66D,eAAA77D,EAAA4B,EAAAiG,KAAA,EAAA/F,GAAA,EAAmC3B,EAAA,EAAAM,EAAAk5D,QAAA7vB,QAAA,CAA0B,GAAAlqC,GAAAgC,EAAAk6D,SAAAr7D,EAAAk5D,QAAA7vB,SAAA,GAAA7T,EAAAx1B,EAAAoX,QAAAjY,EAAsDq2B,MAAAukC,UAAAx6D,EAAAJ,EAAAiI,KAAA,EAAA/F,GAAA,MAA+B,QAAAhC,GAAA8B,EAAAk6D,SAAAr7D,EAAAk5D,QAAA7vB,SAAA/oC,EAAA,EAAiDA,EAAAjB,EAAAmC,OAAWlB,IAAA,CAAK,GAAAU,GAAA3B,EAAAiB,GAAA6W,EAAAnW,EAAAhB,EAAAoX,QAAApW,GAAA,IAAiCmW,MAAA4iD,UAAAx6D,EAAAyB,EAAAoG,KAAA,EAAA/F,GAAA,EAA+B,IAAAA,EAAA,OAAAY,GAAAvC,EAAA,EAAoBuC,GAAAb,IAAKa,EAAA,CAAK,GAAAG,GAAAjB,EAAAm6D,SAAAr5D,EAAAjC,EAAAk5D,QAAA7vB,QAAsC,IAAAlnC,EAAAC,EAAAgF,IAAA,KAAiB,IAAAjF,EAAAC,EAAAgF,KAAA,EAAA7G,EAAAP,EAAAoX,QAAAhV,IAAA7B,GAAAjB,IAAAiB,EAAAP,EAAAi7D,SAAA74D,IAAA7B,IAAAhB,EAAA6C,EAAAgF,KAAA,EAAA9H,EAAAiB,EAAA66D,eAAA76D,EAAAw5D,WAAA,QAA6G,MAAAx6D,IAAS2B,EAAAd,UAAA66D,SAAA,SAAAr6D,GAAkC,GAAAM,GAAAT,KAAA04D,OAAAv4D,EAAAwG,GAAwB,IAAAlG,EAAA,MAAAA,IAAcA,EAAAT,KAAA24D,OAAAr5D,IAAAa,EAAAwG,OAAAlG,EAAAuwD,cAAAhxD,KAAAy4D,SAAAz4D,KAAA84D,aAAA34D,EAAAwG,MAAAsc,aAAAjjB,KAAA84D,aAAA34D,EAAAwG,WAAA3G,MAAA84D,aAAA34D,EAAAwG,IAAA3G,KAAA65D,oBAAA15D,EAAAwG,GAAAlG,IAA4L,IAAAxB,GAAA4hB,QAAApgB,EAAiB,KAAAxB,EAAA,CAAO,GAAAR,GAAA0B,EAAAqJ,EAAA9I,EAAAjC,EAAAuB,KAAAy4D,QAAA7vB,QAAAvnC,KAAAkJ,IAAA,EAAA9L,EAAAuB,KAAAy4D,QAAA7vB,SAAA,CAAwEnoC,GAAA,GAAAk1D,GAAAx1D,EAAAH,KAAAy4D,QAAAj4B,SAAA9/B,EAAAV,KAAAy4D,QAAA7vB,SAAA5oC,KAAAm5D,UAAA14D,EAAAT,KAAA05D,YAAAv9C,KAAAnc,KAAAS,EAAAN,EAAAwG,GAAAlG,EAAAkwD,QAAwH,MAAAlwD,MAAAq6D,OAAA96D,KAAA04D,OAAAv4D,EAAAwG,IAAAlG,EAAAxB,GAAAe,KAAAy4D,QAAA5K,KAAA,eAA2Ej3C,KAAAnW,EAAAq/B,MAAAr/B,EAAAq/B,MAAAmwB,SAAA,WAAuCxvD,GAAA,MAAUA,EAAAd,UAAAk6D,oBAAA,SAAA15D,EAAAM,GAA+C,GAAAxB,GAAAe,KAAAvB,EAAAgC,EAAAs6D,kBAAkCt8D,KAAAuB,KAAA64D,QAAA14D,GAAA2iB,WAAA,WAA0C7jB,EAAAw6D,YAAAt5D,EAAA,iBAAAlB,GAAA45D,QAAA14D,IAA+C1B,KAAKgC,EAAAd,UAAAq7D,2BAAA,SAAA76D,EAAAM,GAAsD,GAAAxB,GAAAe,KAAAvB,EAAAgC,EAAAs6D,kBAAkCt8D,KAAAuB,KAAA84D,aAAA34D,GAAA2iB,WAAA,WAA+C7jB,EAAA05D,OAAAsC,OAAA96D,SAAAlB,GAAA65D,aAAA34D,IAA4C1B,KAAKgC,EAAAd,UAAA+6D,YAAA,SAAAv6D,GAAqC,GAAAM,GAAAT,KAAA04D,OAAAv4D,EAAqB,IAAAM,MAAAq6D,aAAA96D,MAAA04D,OAAAv4D,GAAAH,KAAA64D,QAAA14D,KAAA8iB,aAAAjjB,KAAA64D,QAAA14D,UAAAH,MAAA64D,QAAA14D,MAAAM,EAAAq6D,KAAA,OAAAr6D,EAAAy6D,yBAAAz6D,EAAA64D,UAAA,CAAsK,GAAAr6D,GAAAwB,EAAAq/B,MAAA+0B,UAAAluD,EAA2B3G,MAAA24D,OAAA70D,IAAA7E,EAAAwB,GAAAT,KAAAg7D,2BAAA/7D,EAAAwB,OAA0DA,GAAAowD,SAAA,EAAA7wD,KAAAo5D,WAAA34D,GAAAT,KAAA44D,YAAAn4D,IAAyDA,EAAAd,UAAAw7D,WAAA,WAAmC,GAAAh7D,GAAAH,IAAWA,MAAAk5D,uBAAA,EAAAl5D,KAAAs4D,SAAA,CAA8C,QAAA73D,KAAAN,GAAAu4D,OAAAv4D,EAAAu6D,YAAAj6D,EAAuCT,MAAA24D,OAAAa,SAAoB/4D,EAAAd,UAAAi1D,QAAA,SAAAz0D,GAAiC,OAAAM,GAAAT,KAAAf,KAAAR,EAAAuB,KAAAq5D,SAAA34D,EAAA,IAAAZ,EAAA,IAAAc,GAAA,IAAArB,GAAA,IAAAT,EAAAqB,EAAA,GAAAylB,KAAAlkB,EAAA,EAA8EA,EAAAvB,EAAAY,OAAWW,IAAA,CAAK,GAAAf,GAAAR,EAAAuB,EAAWhB,GAAAW,KAAAmJ,IAAA9J,EAAAC,EAAAkkC,QAAA/kC,EAAAuB,KAAAmJ,IAAA1K,EAAAa,EAAAmkC,KAAAlkC,EAAAS,KAAAuG,IAAAhH,EAAAD,EAAAkkC,QAAAtlC,EAAA8B,KAAAuG,IAAArI,EAAAoB,EAAAmkC,KAAsF,OAAAjmC,GAAA,EAAYA,EAAAJ,EAAAsC,OAAWlC,IAAA,CAAK,GAAAH,GAAA+B,EAAAi4D,OAAAj6D,EAAAI,IAAAk2B,EAAA2R,EAAA4zB,OAAA77D,EAAAI,IAAAD,GAAAo5D,EAAAjjC,EAAAr2B,EAAAmrC,cAAA,GAAAjF,GAAAlkC,EAAAZ,EAAAhB,IAAAk5D,EAAAjjC,EAAAr2B,EAAAmrC,cAAA,GAAAjF,GAAAhkC,EAAArB,EAAAT,IAAgL,IAAAF,EAAA,GAAAmD,EAAA0vB,GAAA7yB,EAAA,GAAA+C,EAAA8vB,GAAA7yB,EAAA,GAAAmD,GAAA,GAAAnD,EAAA,GAAA+C,GAAA,GAAuD,OAAA9B,MAAAU,EAAA,EAAiBA,EAAAJ,EAAAY,OAAWR,IAAAV,EAAAwH,KAAA2wD,EAAAjjC,EAAAr2B,EAAAmrC,cAAA1pC,EAAAI,IAA0DtB,GAAAoI,MAAQuP,KAAAlY,EAAAohC,MAAA/K,EAAA0L,eAAA5gC,GAAAkD,MAAA1B,KAAAkJ,IAAA,EAAA9J,EAAAyV,UAAA0P,KAAAlnB,EAAAohC,MAAAt2B,MAAiF,MAAAvK,IAASwB,EAAAd,UAAAqxD,cAAA,WAAsC,OAAA7wD,GAAAH,KAAAS,EAAAT,KAAAq5D,SAAAp6D,EAAA,EAAmCA,EAAAwB,EAAAM,OAAW9B,IAAKkB,EAAA60D,YAAAv0D,EAAAxB,IAAA+xD,cAAA7wD,EAAAs4D,UAA8Ch4D,EAAAd,UAAAinD,sBAAA,WAA8C,OAAAzmD,GAAAH,KAAAS,EAAAT,KAAA+0D,mBAAAviD,IAAAk0B,EAAA4zB,QAAAr7D,EAAA,EAAAR,EAAAgC,EAAuExB,EAAAR,EAAAsC,OAAW9B,GAAA,GAAM,GAAAyB,GAAAjC,EAAAQ,EAAWyB,GAAAowC,UAAA3wC,EAAA+V,UAAAuzB,mBAAA/oC,EAAAP,EAAAs4D,QAAA7vB,SAAgE,MAAAnoC,IAASA,GAAGusC,EAAUiW,GAAAc,eAAA,GAAAd,EAAAa,gBAAA,EAAAtlD,EAAAD,QAAA0kD,IACh1RhZ,iBAAA,GAAAmxB,oBAAA,GAAA/J,kBAAA,IAAAgK,oBAAA,IAAAxqC,eAAA,IAAAyqC,WAAA,GAAAvkD,SAAA,GAAA48C,eAAA,IAAA5lD,yBAAA,IAAoLwtD,IAAA,SAAAt6D,EAAAzC,EAAAD,GACvL,YAAa,IAAAiyB,GAAAvvB,EAAA,gBAAAu6D,EAAAv6D,EAAA,kBAAAwvB,YAAAiJ,EAAAz4B,EAAA,gCAAA4+B,EAAA5+B,EAAA,yBAAAu+B,EAAAv+B,EAAA,uBAAAw+B,EAAAx+B,EAAA,OAAAy+B,EAAAz+B,EAAA,iCAAAo+B,EAAAp+B,EAAA,gCAAAw6D,EAAAx6D,EAAA,4BAAAy6D,EAAAz6D,EAAA,2BAAA06D,EAAA16D,EAAA,qBAAAkgD,EAAAlgD,EAAA,qBAAA00D,EAAA,SAAAx1D,EAAAM,EAAAhC,GAAykBuB,KAAA8/B,MAAA3/B,EAAAH,KAAA0Y,IAAA8X,EAAAorC,WAAA57D,KAAA86D,KAAA,EAAA96D,KAAAwgC,SAAA//B,EAAAT,KAAA6pC,cAAAprC,EAAAuB,KAAAwzD,WAAsGxzD,KAAA67D,eAAA,KAAA77D,KAAA87D,oBAAA,EAAA97D,KAAA2wD,MAAA,UAAA3wD,KAAA+7D,mBAAA,GAAAJ,GAAA,IAAA37D,KAAAg8D,wBAAA7/C,KAAAnc,OAA8J21D,GAAAh2D,UAAAs6C,qBAAA,SAAA95C,EAAAM,GAAkD,GAAAhC,GAAAgC,EAAAT,KAAA+6C,SAAuBt8C,GAAAqoB,KAAAC,OAAA/mB,KAAAu6D,aAAA97D,EAAAuB,KAAAu6D,cAAAv6D,KAAAu6D,YAAA97D,EAAA0B,EAAA+Y,IAAAlZ,KAAAu6D,YAAAzzC,KAAAC,SAA4G4uC,EAAAh2D,UAAAg7D,aAAA,WAAwC,kBAAA36D,KAAA2wD,OAAA,WAAA3wD,KAAA2wD,OAAA,cAAA3wD,KAAA2wD,OAA8EgF,EAAAh2D,UAAAmxD,eAAA,SAAA3wD,EAAAM,GAA6CT,KAAAs5D,WAAAt5D,KAAA4wD,mBAAA5wD,KAAA2wD,MAAA,SAAAxwD,MAAA8/B,cAAAjgC,KAAAigC,YAAA9/B,EAAA8/B,aAAAjgC,KAAA25B,kBAAA,GAAA+hC,GAAAv7D,EAAAw5B,mBAAA35B,KAAAogC,cAAAq7B,EAAAhrC,YAAAtwB,EAAAigC,cAAApgC,KAAA25B,mBAAA35B,KAAAyyB,aAAAoN,EAAApP,YAAAtwB,EAAAsyB,aAAAzyB,KAAAigC,YAAAjgC,KAAAogC,eAAApgC,KAAAwzD,QAAAgI,EAAAr7D,EAAAqzD,QAAA/yD,EAAAm2C,OAAAz2C,EAAA87D,iBAAAj8D,KAAAi8D,eAAA97D,EAAA87D,gBAAA97D,EAAA+7D,kBAAAl8D,KAAAk8D,gBAAA/7D,EAAA+7D,mBAA8gBvG,EAAAh2D,UAAAw8D,iBAAA,SAAAh8D,EAAAM,GAA+C,GAAAhC,GAAAuB,IAAW,iBAAAA,KAAA2wD,MAAA,CAA4B3wD,KAAAogC,cAAAq7B,EAAAhrC,YAAAtwB,EAAAigC,cAAApgC,KAAA25B,mBAAA35B,KAAAyyB,cAAAzyB,KAAAyyB,aAAA0N,iBAAAngC,KAAAogC,cAA+J,QAAAx/B,KAAAnC,GAAA+0D,QAAA,CAAwB,GAAA1zD,GAAArB,EAAA+0D,QAAA5yD,EAAmBd,aAAA45B,KAAA55B,EAAAwgB,gBAAA7hB,GAAA+0D,QAAA5yD,IAA6D4vB,EAAA7b,OAAA3U,KAAAwzD,QAAAgI,EAAAr7D,EAAAqzD,QAAA/yD,IAAAN,EAAA87D,iBAAAj8D,KAAAi8D,eAAA97D,EAAA87D,gBAAA97D,EAAA+7D,kBAAAl8D,KAAAk8D,gBAAA/7D,EAAA+7D,mBAA+KvG,EAAAh2D,UAAAixD,iBAAA,WAA4C,GAAAzwD,GAAAH,IAAW,QAAAS,KAAAN,GAAAqzD,QAAArzD,EAAAqzD,QAAA/yD,GAAA6f,SAA8CtgB,MAAAwzD,WAAexzD,KAAA27C,kBAAA37C,KAAA27C,iBAAAr7B,UAAAtgB,KAAAw7C,mBAAAx7C,KAAAw7C,kBAAAl7B,UAAAtgB,KAAA25B,kBAAA,KAAA35B,KAAAogC,cAAA,KAAApgC,KAAAyyB,aAAA,KAAAzyB,KAAA2wD,MAAA,YAAkNgF,EAAAh2D,UAAAqxD,cAAA,SAAA7wD,GAA0C,cAAAA,EAAAyM,MAAA,YAAAzM,EAAAyM,KAAA,CAA0C,cAAA5M,KAAA2wD,MAAA,YAAA3wD,KAAA+wD,cAAA,EAA2D,IAAA/wD,KAAAogC,cAAA,CAAuB,GAAA3/B,GAAAN,EAAAqS,IAAA0D,UAAA0zB,qBAAA5pC,KAAiD,IAAAA,KAAA0F,QAAAvF,EAAAqS,IAAA0D,UAAAxQ,OAAA1F,KAAAynC,QAAAtnC,EAAAqS,IAAA0D,UAAAuxB,OAAAznC,KAAAq7C,qBAAAl7C,EAAAqS,IAAA6oC,mBAAA,CAA+H,GAAAr7C,KAAA4pC,uBAAAnpC,GAAAT,KAAAgqC,yBAAA7pC,EAAAqS,IAAA0D,UAAA8zB,uBAAA,MAA8G,IAAAhqC,KAAAynC,MAAA,SAAAznC,MAAA4pC,qBAAAnpC,OAAAT,KAAAgqC,uBAAA7pC,EAAAqS,IAAA0D,UAAA8zB,wBAA6HhqC,KAAA0F,MAAAvF,EAAAqS,IAAA0D,UAAAxQ,MAAA1F,KAAAynC,MAAAtnC,EAAAqS,IAAA0D,UAAAuxB,MAAAznC,KAAAgqC,uBAAA7pC,EAAAqS,IAAA0D,UAAA8zB,uBAAAhqC,KAAA4pC,qBAAAnpC,EAAAT,KAAAq7C,mBAAAl7C,EAAAqS,IAAA6oC,mBAAAr7C,KAAAo8D,gBAAAj8D,EAAAH,KAAA2wD,MAAA,YAAA3wD,KAAA+7D,mBAAAM,YAAmS1G,EAAAh2D,UAAAq8D,wBAAA,WAAmD,GAAA77D,GAAAH,IAAWA,MAAAo8D,gBAAA5M,WAAAgB,KAAA,iBAAsD5jD,KAAA5M,KAAAo8D,gBAAAxvD,KAAA8L,IAAA1Y,KAAA0Y,IAAAzC,OAAAjW,KAAAo8D,gBAAAz1D,GAAAjB,MAAA1F,KAAA0F,MAAA+hC,MAAAznC,KAAAynC,MAAAuC,uBAAAhqC,KAAAgqC,uBAAAJ,qBAAA5pC,KAAA4pC,qBAAAyR,mBAAAr7C,KAAAq7C,oBAA0P,SAAA56C,EAAAhC,GAAe,cAAA0B,EAAAwwD,QAAAxwD,EAAAwwD,MAAA,SAAAxwD,EAAAg8D,iBAAA19D,EAAA0B,EAAAi8D,gBAAA5pD,IAAAokC,OAAAz2C,EAAAi8D,gBAAAvO,KAAA,QAA0Hj3C,KAAAzW,EAAA2/B,MAAA3/B,EAAA2/B,MAAAmwB,SAAA,WAAuC9vD,EAAAi8D,gBAAA5pD,MAAArS,EAAAi8D,gBAAA5pD,IAAAw8C,QAAAzf,cAAAiH,IAAA,MAAAr2C,EAAA4wD,eAAA5wD,EAAAwwD,MAAA,YAAAxwD,EAAA4wD,cAAA,EAAA5wD,EAAA67D,6BAAqKh8D,KAAAuwD,WAAgBoF,EAAAh2D,UAAAuwC,UAAA,SAAA/vC,GAAsC,MAAAH,MAAAwzD,QAAArzD,EAAAwG,KAA0BgvD,EAAAh2D,UAAAizB,OAAA,SAAAzyB,GAAmC,GAAAM,GAAAT,IAAW,QAAAvB,KAAAgC,GAAA+yD,QAAA,CAAwB,GAAA5yD,GAAAH,EAAA+yD,QAAA/0D,EAAmBmC,GAAA07D,WAAA17D,EAAAgyB,OAAAzyB,GAAAS,EAAA07D,UAAA,GAAwCt8D,KAAAi8D,iBAAAj8D,KAAA27C,iBAAA,GAAAwF,GAAAhhD,EAAAH,KAAAi8D,eAAA97D,EAAAoiD,MAAAviD,KAAAi8D,eAAA,MAAAj8D,KAAAk8D,kBAAAl8D,KAAAw7C,kBAAA,GAAA2F,GAAAhhD,EAAAH,KAAAk8D,gBAAA/7D,EAAAg+C,OAAAn+C,KAAAk8D,gBAAA,OAAqOvG,EAAAh2D,UAAAm1D,sBAAA,SAAA30D,EAAAM,EAAAhC,EAAAmC,EAAAd,GAA0D,GAAAb,GAAAe,IAAW,KAAAA,KAAAyyB,aAAA,QAA+B,IAAA/xB,GAAA,CAAQ,QAAAhC,KAAAyB,GAAA,CAAgB,GAAAZ,GAAAN,EAAAixC,UAAA/vC,EAAAzB,GAAwBa,KAAAmB,EAAAW,KAAAuG,IAAAlH,EAAAP,EAAAzB,GAAA69D,YAAAh9D,KAAuC,MAAAS,MAAAyyB,aAAA5Z,OAAgC4nB,cAAAhgC,EAAAmgC,QAAA9gC,EAAAygC,OAAA3/B,EAAAmC,MAAAtE,EAAAiiC,iBAAAhgC,EAAA8/B,SAAAxgC,KAAAwgC,UAAqFrgC,IAAIw1D,EAAAh2D,UAAAs1D,oBAAA,SAAA90D,EAAAM,GAAkD,GAAAhC,GAAAuB,IAAW,IAAAA,KAAAigC,YAAA,CAAqBjgC,KAAAqgC,WAAArgC,KAAAqgC,SAAA,GAAAb,GAAA5zB,WAAA,GAAA6zB,GAAAz/B,KAAAigC,cAAA9zB,OAAwF,IAAAvL,GAAAH,IAAA+7D,YAAA,GAAA18D,EAAAE,KAAAqgC,SAAAyyB,mBAAA9yD,KAAAqgC,SAAAz/B,EAA6E,IAAAd,EAAA,OAAAb,GAAAogC,EAAA5+B,KAAAob,QAAAnb,GAA6C8I,EAAAxJ,KAAA8/B,MAAAt2B,EAAAzH,EAAA/B,KAAA8/B,MAAA/9B,EAAAJ,EAAA3B,KAAA8/B,MAAAn+B,GAA6CjD,EAAA,EAAKA,EAAAoB,EAAAiB,OAAWrC,IAAA,CAAK,GAAAa,GAAAO,EAAA4O,QAAAhQ,EAAmB,IAAAO,EAAAM,GAAA,CAAS,GAAAmC,GAAA,GAAAg+B,GAAAngC,EAAAd,EAAAqhC,MAAAt2B,EAAA/K,EAAAqhC,MAAA/9B,EAAAtD,EAAAqhC,MAAAn+B,EAA0DD,GAAAkV,KAAAlW,EAAAP,EAAAkH,KAAA3F,OAAsBi0D,EAAAh2D,UAAA25D,QAAA,WAAmC,iBAAAt5D,KAAA2wD,OAAA,cAAA3wD,KAAA2wD,OAAA,YAAA3wD,KAAA2wD,OAA8EgF,EAAAh2D,UAAAk2D,cAAA,SAAA11D,GAA0C,GAAAM,GAAAT,KAAA67D,cAA0B,IAAA17D,EAAA21D,aAAA,CAAmB,GAAAr3D,GAAA+xB,EAAAisC,kBAAAt8D,EAAA21D,aAA6Cr3D,GAAA,aAAAuB,KAAA67D,eAAA/0C,KAAAC,MAAA,IAAAtoB,EAAA,gBAAgE0B,GAAA41D,UAAA/1D,KAAA67D,eAAA,GAAA/0C,MAAA3mB,EAAA41D,SAAA6D,UAAoE,IAAA55D,KAAA67D,eAAA,CAAwB,GAAAj7D,GAAAkmB,KAAAC,MAAAjnB,GAAA,CAAsB,IAAAE,KAAA67D,eAAAj7D,EAAAd,GAAA,MAA8B,IAAAW,EAAA,GAAAT,KAAA67D,eAAAp7D,EAAAX,GAAA,MAAwC,CAAK,GAAAb,GAAAe,KAAA67D,eAAAp7D,CAA4BxB,GAAAe,KAAA67D,eAAAj7D,EAAAS,KAAAuG,IAAA3I,EAAtvL,KAAsvLa,GAAA,MAAkEA,IAAA,CAAUA,IAAAE,KAAA87D,sBAAA97D,KAAA2wD,MAAA,WAAA3wD,KAAA87D,oBAAA,IAAgFnG,EAAAh2D,UAAAo7D,iBAAA,WAA4C,GAAA/6D,KAAA67D,eAAA,MAAA77D,MAAA87D,oBAAA,QAAAz6D,KAAAmJ,IAAAxK,KAAA87D,oBAAA,OAAAz6D,KAAAmJ,IAAAxK,KAAA67D,gBAAA,GAAA/0C,OAAA8yC,UAAAv4D,KAAAkJ,IAAA,UAA4KorD,EAAAh2D,UAAAu7D,uBAAA,WAAkDl7D,KAAA+7D,mBAAAW,OAAA,cAAA18D,KAAA2wD,QAAA3wD,KAAA2wD,MAAA,WAA+EnyD,EAAAD,QAAAo3D,IACrvMgH,iBAAA,GAAAC,+BAAA,GAAAC,wBAAA,GAAAC,oBAAA,GAAA37B,+BAAA,IAAA47B,0BAAA,IAAAC,2BAAA,IAAAC,oBAAA,IAAApsC,eAAA,IAAAyQ,gCAAA,IAAAnS,sBAAA,EAAAJ,IAAA,KAAwTmuC,KAAA,SAAAj8D,EAAAzC,EAAAD,GAC3T,YAAa,IAAAknC,GAAAxkC,EAAA,yBAAA8mC,EAAA9mC,EAAA,gBAAA8mC,MAAAstB,EAAA,SAAA50D,EAAAlB,EAAAN,GAAiHe,KAAA6hC,OAAA4D,EAAA1/B,QAAA/F,KAAAm9D,eAAA18D,IAAAT,KAAA2oC,QAAAppC,GAAA,EAAAS,KAAA4oC,QAAA3pC,GAAA,GAA+Fo2D,GAAA11D,UAAAw9D,eAAA,SAAA18D,GAAgD,MAAAuF,OAAAC,QAAAxF,IAAA,IAAAA,EAAAM,QAAAM,KAAAuG,KAAA,IAAAnH,EAAA,IAAAY,KAAAuG,KAAA,GAAAnH,EAAA,IAAAY,KAAAmJ,IAAA,IAAA/J,EAAA,IAAAY,KAAAmJ,IAAA,GAAA/J,EAAA,wBAAsI40D,EAAA11D,UAAA+1D,SAAA,SAAAj1D,EAAAlB,GAA6C,GAAAN,GAAAM,EAAA8B,KAAAmJ,IAAA/J,EAAA+I,EAAAjK,GAAAkB,EAAA+I,EAAA5I,GAA+Bw8D,KAAA/7D,KAAAoV,MAAAzW,KAAA+lB,KAAA/lB,KAAA6hC,OAAAqE,UAAAjnC,IAAAo+D,KAAAh8D,KAAAoV,MAAAzW,KAAAgmB,KAAAhmB,KAAA6hC,OAAAsE,WAAAlnC,IAAAq+D,KAAAj8D,KAAAkd,KAAAve,KAAA+lB,KAAA/lB,KAAA6hC,OAAAwE,UAAApnC,IAAAs+D,KAAAl8D,KAAAkd,KAAAve,KAAAgmB,KAAAhmB,KAAA6hC,OAAAyE,WAAArnC,IAAiN,OAAAwB,GAAAsB,GAAAnB,EAAAw8D,MAAA38D,EAAAsB,EAAAnB,EAAA08D,MAAA78D,EAAAkB,GAAAf,EAAAy8D,MAAA58D,EAAAkB,EAAAf,EAAA28D,MAAwDlI,EAAA11D,UAAAomB,KAAA,SAAAtlB,EAAAlB,GAAyC,OAAAkB,EAAA,MAAAY,KAAAkJ,IAAA,EAAAhL,GAAA,MAAkC81D,EAAA11D,UAAAqmB,KAAA,SAAAvlB,EAAAlB,GAAyC,GAAAN,GAAA8oC,EAAA1mC,KAAAC,IAAAD,KAAAqM,GAAA,IAAAjN,IAAA,aAAAG,EAAAS,KAAAkJ,IAAA,EAAAhL,IAAA,EAAA8B,KAAAqM,GAA8E,OAAArM,MAAAkJ,IAAA,EAAAhL,EAAA,MAAA8B,KAAA6S,KAAA,EAAAjV,IAAA,EAAAA,KAAA2B,GAAmDpC,EAAAD,QAAA82D,IAC19BmI,wBAAA,GAAA3sC,eAAA,MAA8C4sC,KAAA,SAAAx8D,EAAAzC,EAAAD,GACjD,YAAa,SAAAm/D,GAAAj9D,EAAAhC,GAAmB,GAAAgC,EAAAqkC,IAAArmC,EAAAqmC,IAAA,CAAgB,GAAA7lC,GAAAwB,CAAQA,GAAAhC,IAAAQ,EAAQ,OAAO0+D,GAAAl9D,EAAAokC,OAAA+4B,GAAAn9D,EAAAqkC,IAAAnH,GAAAl/B,EAAAomC,OAAAjH,GAAAn/B,EAAAqmC,IAAA+4B,GAAAp/D,EAAAomC,OAAApkC,EAAAokC,OAAAi5B,GAAAr/D,EAAAqmC,IAAArkC,EAAAqkC,KAA+E,QAAAi5B,GAAAt9D,EAAAhC,EAAAQ,EAAAyB,EAAAP,GAA8B,GAAAuB,GAAAL,KAAAuG,IAAA3I,EAAAoC,KAAAoV,MAAAhY,EAAAm/D,KAAAr+D,EAAA8B,KAAAmJ,IAAA9J,EAAAW,KAAAkd,KAAA9f,EAAAm/B,IAAiE,IAAAn9B,EAAAk9D,KAAAl/D,EAAAk/D,IAAAl9D,EAAAm9D,KAAAn/D,EAAAm/D,GAAAn9D,EAAAk9D,GAAAl/D,EAAAq/D,GAAAr9D,EAAAq9D,GAAAr9D,EAAAo9D,GAAAp/D,EAAAk/B,GAAAl9B,EAAAk9B,GAAAl/B,EAAAq/D,GAAAr9D,EAAAq9D,GAAAr9D,EAAAo9D,GAAAp/D,EAAAk/D,GAAA,CAA+E,GAAA79D,GAAAW,CAAQA,GAAAhC,IAAAqB,EAAQ,OAAAc,GAAAH,EAAAo9D,GAAAp9D,EAAAq9D,GAAAh/D,EAAAL,EAAAo/D,GAAAp/D,EAAAq/D,GAAAp/D,EAAA+B,EAAAo9D,GAAA,EAAAl8D,EAAAlD,EAAAo/D,GAAA,EAAA97D,EAAAL,EAAsDK,EAAAxC,EAAIwC,IAAA,CAAK,GAAApB,GAAAC,EAAAS,KAAAuG,IAAA,EAAAvG,KAAAmJ,IAAA/J,EAAAq9D,GAAA/7D,EAAArD,EAAA+B,EAAAm9D,KAAAn9D,EAAAk9D,GAAA9+D,EAAAC,EAAAuC,KAAAuG,IAAA,EAAAvG,KAAAmJ,IAAA/L,EAAAq/D,GAAA/7D,EAAAJ,EAAAlD,EAAAm/D,KAAAn/D,EAAAk/D,EAA8Fx9D,GAAAkB,KAAAoV,MAAA5X,GAAAwC,KAAAkd,KAAA5d,GAAAoB,IAAiC,QAAAi8D,GAAAv9D,EAAAhC,EAAAQ,EAAAyB,EAAAP,EAAAuB,GAAmC,GAAAnC,GAAAO,EAAA49D,EAAAj9D,EAAAhC,GAAAmC,EAAA88D,EAAAj/D,EAAAQ,GAAAH,EAAA4+D,EAAAz+D,EAAAwB,EAA0CX,GAAAg+D,GAAAl9D,EAAAk9D,KAAAv+D,EAAAO,IAAAc,IAAArB,GAAAO,EAAAg+D,GAAAh/D,EAAAg/D,KAAAv+D,EAAAO,IAAAhB,IAAAS,GAAAqB,EAAAk9D,GAAAh/D,EAAAg/D,KAAAv+D,EAAAqB,IAAA9B,IAAAS,GAAAO,EAAAg+D,IAAAC,EAAAj/D,EAAAgB,EAAAY,EAAAP,EAAAuB,GAAAd,EAAAk9D,IAAAC,EAAAj/D,EAAA8B,EAAAF,EAAAP,EAAAuB,GAAiI,QAAAu8D,GAAAx9D,EAAAhC,EAAAQ,GAA2B,OAAAyB,GAAAP,EAAA,GAAAuB,EAAAjB,EAAmBiB,EAAA,EAAIA,IAAAhB,EAAA,GAAAgB,EAAA,EAAAvB,IAAA1B,EAAAiC,EAAA,MAAAzB,EAAAyB,EAAA,IAAoC,OAAAP,GAAS,GAAA0O,GAAA5N,EAAA,qBAAA2jC,EAAA3jC,EAAA,qBAAAylC,EAAA,SAAAjmC,EAAAhC,EAAAQ,EAAAyB,QAA4G,KAAAA,GAAA8Y,MAAA9Y,QAAA,GAAAV,KAAAwJ,GAAA/I,EAAAT,KAAA+B,GAAAtD,EAAAuB,KAAA2B,GAAA1C,EAAAe,KAAA4B,GAAAlB,MAAA,OAAAA,GAAA,EAAAA,EAAA,EAA2F,IAAAP,GAAA,GAAAH,KAAAwJ,CAAgBxJ,MAAA2G,GAAA,IAAAxG,IAAAO,EAAAP,EAAAH,KAAA2B,EAAA3B,KAAA+B,GAAA/B,KAAAwJ,EAAAxJ,KAAA8wC,UAAA,KAA+DpK,GAAA/mC,UAAAkqB,SAAA,WAAwC,MAAA7pB,MAAAwJ,EAAA,IAAAxJ,KAAA+B,EAAA,IAAA/B,KAAA2B,GAAoC+kC,EAAA/mC,UAAA+pC,aAAA,SAAAjpC,GAA8C,GAAAhC,GAAA4C,KAAAmJ,IAAAxK,KAAAwJ,MAAA,KAAA/I,EAAAT,KAAAwJ,EAAA/I,GAAAxB,EAAAoC,KAAAkJ,IAAA,EAAA9L,GAAAiC,EAAAV,KAAA2B,EAAAxB,EAAAH,KAAA+B,EAAA9C,EAAAe,KAAA4B,CAAsF,WAAAgjC,GAAAzkC,EAAAO,EAAAjC,IAA6BioC,EAAA/mC,UAAAogD,IAAA,SAAAt/C,EAAAhC,EAAAQ,GAAyC,GAAAyB,GAAAmO,EAAAO,YAAApP,KAAA+B,EAAA/B,KAAA2B,EAAA3B,KAAAwJ,GAAArJ,EAAA89D,EAAAj+D,KAAAwJ,EAAAxJ,KAAA+B,EAAA/B,KAAA2B,EAAkF,OAAAlB,IAAAT,KAAA+B,EAAA/B,KAAA2B,GAAAlB,EAAAM,QAAAopB,QAAA,YAAoDnqB,KAAA+B,EAAA,IAAA8nB,SAAA,KAAA7pB,KAAA2B,EAAA,IAAAkoB,SAAA,KAAAM,QAAA,MAAiErK,OAAAze,KAAAmJ,IAAAxK,KAAAwJ,EAAA/K,GAAAuB,KAAAwJ,KAAA2gB,QAAA,MAAkDrK,OAAA9f,KAAA+B,IAAAooB,QAAA,MAA8BrK,OAAA,QAAA7gB,EAAAoC,KAAAkJ,IAAA,EAAAvK,KAAAwJ,GAAAxJ,KAAA2B,EAAA,EAAA3B,KAAA2B,IAAAwoB,QAAA,YAA0EhqB,GAAAgqB,QAAA,mBAA8BzpB,IAAKgmC,EAAA/mC,UAAAq6D,OAAA,SAAAv5D,GAAwC,WAAAT,KAAAwJ,EAAA,KAAAxJ,KAAAwJ,EAAA/I,EAAA,GAAAimC,GAAA1mC,KAAAwJ,EAAA,EAAAxJ,KAAA+B,EAAA/B,KAAA2B,EAAA3B,KAAA4B,GAAA,GAAA8kC,GAAA1mC,KAAAwJ,EAAA,EAAAnI,KAAAoV,MAAAzW,KAAA+B,EAAA,GAAAV,KAAAoV,MAAAzW,KAAA2B,EAAA,GAAA3B,KAAA4B,IAAsJ8kC,EAAA/mC,UAAAk1D,QAAA,WAAwC,UAAAnuB,GAAA1mC,KAAAwJ,EAAAxJ,KAAA+B,EAAA/B,KAAA2B,EAAA,IAA6C+kC,EAAA/mC,UAAAi7D,SAAA,SAAAn6D,GAA0C,GAAAT,KAAAwJ,GAAA/I,EAAA,UAAAimC,GAAA1mC,KAAAwJ,EAAA,EAAAxJ,KAAA+B,EAAA/B,KAAA2B,EAAA3B,KAAA4B,GAAkE,IAAAnD,GAAAuB,KAAAwJ,EAAA,EAAAvK,EAAA,EAAAe,KAAA+B,EAAArB,EAAA,EAAAV,KAAA2B,CAAqC,WAAA+kC,GAAAjoC,EAAAQ,EAAAyB,EAAAV,KAAA4B,GAAA,GAAA8kC,GAAAjoC,EAAAQ,EAAA,EAAAyB,EAAAV,KAAA4B,GAAA,GAAA8kC,GAAAjoC,EAAAQ,EAAAyB,EAAA,EAAAV,KAAA4B,GAAA,GAAA8kC,GAAAjoC,EAAAQ,EAAA,EAAAyB,EAAA,EAAAV,KAAA4B,KAAgI8kC,EAAA/mC,UAAAk7D,SAAA,SAAAp6D,EAAAhC,GAA4C,MAAAuB,MAAAwJ,EAAA/K,EAAA,GAAAioC,GAAAjmC,EAAAT,KAAA+B,EAAA/B,KAAA2B,EAAA3B,KAAA4B,GAAAnB,GAAAT,KAAAwJ,EAAA,GAAAk9B,GAAAjmC,EAAAT,KAAA+B,GAAA/B,KAAAwJ,EAAA/I,EAAAT,KAAA2B,GAAA3B,KAAAwJ,EAAA/I,EAAAT,KAAA4B,GAAA,GAAA8kC,GAAAjmC,EAAAT,KAAA+B,GAAAtB,EAAAT,KAAAwJ,EAAAxJ,KAAA2B,GAAAlB,EAAAT,KAAAwJ,EAAAxJ,KAAA4B,IAAoL8kC,EAAAmC,MAAA,SAAApoC,EAAAhC,EAAAQ,EAAAyB,GAAmC,QAAAP,GAAAM,EAAAhC,EAAA0B,GAAkB,GAAAL,GAAAc,EAAA9B,EAAAJ,CAAY,IAAAyB,GAAA,GAAAA,GAAAuB,EAAA,IAAA5B,EAAAW,EAAsBX,EAAArB,EAAIqB,IAAAc,EAAAS,KAAAoV,MAAA3W,EAAA4B,GAAA5C,GAAAgB,EAAA4B,OAAA,IAAAd,IAAA,IAAAF,IAAAhC,EAAA,GAAAgoC,GAAAznC,EAAAH,EAAAqB,EAAAS,GAAArB,EAAAb,EAAAiI,IAAAjI,OAAsF,KAAAgC,OAAA,EAAmB,IAAAgB,GAAA,GAAAjB,EAAAlB,IAAgB,OAAAy+D,GAAAv/D,EAAA,GAAAA,EAAA,GAAAA,EAAA,KAAAiD,EAAAvB,GAAA69D,EAAAv/D,EAAA,GAAAA,EAAA,GAAAA,EAAA,KAAAiD,EAAAvB,GAAAjB,OAAAmZ,KAAA9Y,GAAAiT,IAAA,SAAA/R,GAA4G,MAAAlB,GAAAkB,MAAcimC,EAAA4zB,OAAA,SAAA75D,GAA8B,GAAAhC,GAAAgC,EAAA,GAAAxB,EAAA,GAAAR,EAAAiC,GAAAD,EAAAhC,GAAA,GAAA0B,EAAAO,EAAAzB,EAAAyC,GAAAhB,EAAAP,GAAAlB,IAAAM,EAAA8B,KAAAoV,MAAA/V,GAAAzB,KAAqE,OAAAM,GAAA,OAAAA,GAAA,EAAAA,EAAA,GAAAA,GAAA,KAAAmnC,GAAAjoC,EAAA0B,EAAAuB,EAAAnC,IAAsDf,EAAAD,QAAAmoC,IACv9F00B,oBAAA,GAAA8C,oBAAA,KAA8CC,KAAA,SAAAl9D,EAAAzC,EAAAD,GACjD,YAAa,IAAAyuC,GAAA/rC,EAAA,mBAAAuvB,EAAAvvB,EAAA,gBAAAk0D,EAAAl0D,EAAA,mBAAA4yD,EAAA5yD,EAAA,kBAAAm0D,iBAAAC,EAAAp0D,EAAA,iBAAAquD,EAAAruD,EAAA,gBAAAquD,aAAAprC,EAAAjjB,EAAA,mBAAAm9D,EAAA,SAAAj+D,GAA0T,QAAAM,KAAAhC,EAAAQ,EAAAyB,GAAoB,GAAAP,EAAAxB,KAAAqB,WAAA2G,GAAAlG,EAAAT,KAAAwvD,WAAAvwD,EAAAe,KAAA4M,KAAA,SAAA5M,KAAA2oC,QAAA,EAAA3oC,KAAA4oC,QAAA,GAAA5oC,KAAAu1D,OAAA,MAAAv1D,KAAAwgC,SAAA,IAAAxgC,KAAA8oC,mBAAA,EAAA9oC,KAAAqnD,eAAA,EAAA72B,EAAA7b,OAAA3U,KAAAwwB,EAAAujC,KAAAt1D,GAAA,6BAAAuB,KAAA2vD,SAAAn/B,EAAA7b,QAAwQ/H,KAAA,UAAcnO,GAAA,MAAAuB,KAAAwgC,SAAA,SAAA3/B,OAAA,kDAA2Fb,MAAAyvD,iBAAA/uD,GAAyB,MAAAP,KAAAM,EAAAitD,UAAAvtD,GAAAM,EAAAd,UAAAT,OAAA2D,OAAA1C,KAAAR,WAAAc,EAAAd,UAAAsoB,YAAAxnB,IAAAd,UAAAknB,KAAA,WAA0H,GAAA1mB,GAAAH,IAAWA,MAAA6tD,KAAA,eAAyBoC,SAAA,WAAkBkF,EAAAn1D,KAAA2vD,SAAA3vD,KAAAwS,IAAA69C,kBAAA,SAAA5vD,EAAAhC,GAAsEgC,EAAAN,EAAA0tD,KAAA,QAAAptD,GAAAhC,IAAA+xB,EAAA7b,OAAAxU,EAAA1B,KAAAojC,SAAA1hC,EAAAq1D,WAAA,GAAAH,GAAA52D,EAAAojC,OAAA1hC,EAAAwoC,QAAAxoC,EAAAyoC,UAAAzoC,EAAA0tD,KAAA,QAA8HoC,SAAA,SAAAE,eAAA,aAA4ChwD,EAAA0tD,KAAA,QAAiBoC,SAAA,SAAAE,eAAA,gBAAgD1vD,EAAAd,UAAA81D,QAAA,SAAAt1D,GAAiC,OAAAH,KAAAw1D,YAAAx1D,KAAAw1D,WAAAE,SAAAv1D,EAAAH,KAAA4oC,UAAiEnoC,EAAAd,UAAA2uD,MAAA,SAAAnuD,GAA+BH,KAAAwS,IAAArS,EAAAH,KAAA6mB,QAAuBpmB,EAAAd,UAAAgzB,UAAA,WAAkC,MAAAnC,GAAA7b,UAAqB3U,KAAA2vD,WAAgBlvD,EAAAd,UAAA+wD,SAAA,SAAAvwD,EAAAM,GAAoC,QAAAhC,KAAAQ,GAAgB,IAAAkB,EAAA0wD,QAAA,CAAe,GAAApyD,EAAA,MAAAgC,GAAAhC,EAAiBuB,MAAAwS,IAAAojD,sBAAAz1D,EAAA01D,cAAA52D,GAAAkB,EAAA2wD,eAAA7xD,EAAAe,KAAAwS,IAAAw8C,SAAA7uD,EAAA4wD,eAAA5wD,EAAA4wD,cAAA,EAAA5wD,EAAA6wD,cAAAhxD,OAAAS,EAAA,MAAAN,EAAAk+D,iBAAAr+D,KAAA0wD,SAAAvwD,IAAAk+D,gBAAAl+D,EAAAk+D,eAAA,OAAsO,GAAAp/D,GAAAkB,EAAA2/B,MAAAt2B,EAAAxJ,KAAA4oC,QAAAvnC,KAAAkJ,IAAA,EAAApK,EAAA2/B,MAAAt2B,EAAAxJ,KAAA4oC,SAAA,EAAAloC,EAAAmzD,EAAA1zD,EAAA2/B,MAAAigB,IAAA//C,KAAAiV,MAAAjV,KAAA4oC,QAAA5oC,KAAAu1D,QAAAv1D,KAAA+/C,KAAAjgD,GAA+IkP,QAAAhP,KAAAwS,IAAA69C,kBAAA3vD,EAAA4uD,EAAAqG,MAAAj9C,IAAAvY,EAAAuY,IAAAonB,MAAA3/B,EAAA2/B,MAAAla,KAAAzlB,EAAA2/B,MAAAt2B,EAAAg3B,SAAAxgC,KAAAwgC,SAAAvhC,EAAA2N,KAAA5M,KAAA4M,KAAAqJ,OAAAjW,KAAA2G,GAAAmzB,WAAA5V,EAAA0sB,iBAAA3e,YAAAhzB,EAAAyG,MAAA1F,KAAAwS,IAAA0D,UAAAxQ,MAAA+hC,MAAAznC,KAAAwS,IAAA0D,UAAAuxB,MAAAuC,uBAAAhqC,KAAAwS,IAAA0D,UAAA8zB,uBAAAJ,qBAAA5pC,KAAAwS,IAAA0D,UAAA0zB,qBAAAzpC,GAAAk7C,mBAAAr7C,KAAAwS,IAAA6oC,mBAAubl7C,GAAAowD,UAAA,YAAApwD,EAAAwwD,MAAA,YAAAxwD,EAAAwwD,MAAAxwD,EAAAk+D,eAAA59D,EAAAT,KAAAwvD,WAAAgB,KAAA,aAAA1wD,EAAArB,EAAA0d,KAAAnc,MAAAG,EAAAowD,UAAApwD,EAAAowD,SAAAvwD,KAAAwvD,WAAAgB,KAAA,WAAA1wD,EAAArB,EAAA0d,KAAAnc,QAA+LS,EAAAd,UAAAsxD,UAAA,SAAA9wD,GAAmCH,KAAAwvD,WAAAgB,KAAA,aAAkC93C,IAAAvY,EAAAuY,IAAA9L,KAAA5M,KAAA4M,KAAAqJ,OAAAjW,KAAA2G,QAAwC,GAAAxG,EAAAowD,WAAoB9vD,EAAAd,UAAAuxD,WAAA,SAAA/wD,GAAoCA,EAAAywD,mBAAA5wD,KAAAwvD,WAAAgB,KAAA,cAAwD93C,IAAAvY,EAAAuY,IAAA9L,KAAA5M,KAAA4M,KAAAqJ,OAAAjW,KAAA2G,QAAwC,GAAAxG,EAAAowD,WAAoB9vD,GAAGusC,EAAUxuC,GAAAD,QAAA6/D,IACvwFhN,eAAA,IAAAngB,kBAAA,IAAAogB,kBAAA,IAAA+C,iBAAA,IAAAvjC,eAAA,IAAAwlC,kBAAA,GAAAC,gBAAA,MAAgJgI,KAAA,SAAAr9D,EAAAzC,EAAAD,GACnJ,YAAa,SAAAggE,GAAAp+D,EAAAO,GAA6B,GAAAzB,GAAA6yD,EAAAiF,eAAA52D,EAAA6O,QAAA,SAAA7O,EAAAlB,GAAkDkB,EAAAO,EAAAP,GAAAlB,GAAAyB,EAAA,MAAkBkxD,WAAA,GAAApyB,GAAA5zB,WAAA,GAAA6zB,GAAAxgC,EAAAqL,OAAAunD,QAAA5yD,EAAAqL,KAAAwrD,aAAA72D,EAAA62D,aAAAC,QAAA92D,EAAA82D,WAAoH,mBAAkB92D,EAAAm3D,SAAW,GAAAtE,GAAA7wD,EAAA,gBAAAu+B,EAAAv+B,EAAA,uBAAAw+B,EAAAx+B,EAAA,OAAAu9D,EAAAv9D,EAAA,iBAAAuvB,EAAAvvB,EAAA,gBAAA8wD,EAAA,SAAA5xD,EAAAO,EAAAzB,GAAmMe,KAAAy+D,MAAAt+D,EAAAH,KAAA0+D,WAAAh+D,EAAAV,KAAA8wD,eAAA7xD,GAAAs/D,EAAAv+D,KAAA2+D,WAAoF3+D,KAAAshD,UAAiByQ,GAAApyD,UAAA+wD,SAAA,SAAAvwD,EAAAO,GAAwD,GAAAzB,GAAAe,KAAAS,EAAAN,EAAA8V,OAAArV,EAAAT,EAAAuY,GAA8B1Y,MAAA2+D,QAAAl+D,KAAAT,KAAA2+D,QAAAl+D,MAAsC,IAAAhC,GAAAuB,KAAA2+D,QAAAl+D,GAAAG,GAAA,GAAA49D,GAAAr+D,EAA2C1B,GAAA23D,MAAAp2D,KAAA8wD,eAAA3wD,EAAA,SAAAA,EAAAzB,GAA4C,SAAAO,GAAA0/D,QAAAl+D,GAAAG,GAAAT,IAAAzB,EAAA,MAAAgC,GAAAP,EAA4C,IAAAtB,GAAAH,EAAAmzD,QAAAtyD,IAAqBb,GAAAq3D,UAAAx2D,EAAAw2D,QAAAr3D,EAAAq3D,SAAAr3D,EAAAo3D,eAAAv2D,EAAAu2D,aAAAp3D,EAAAo3D,cAAAr3D,EAAAmzD,WAAAlzD,EAAAkzD,WAAAnzD,EAAA4zD,MAAA3zD,EAAAkzD,WAAA3yD,EAAAy/D,WAAAz/D,EAAAw/D,MAAA,SAAAt+D,EAAAlB,EAAAwB,GAAqK,GAAAN,IAAAlB,EAAA,MAAAyB,GAAAP,EAAqBO,GAAA,KAAA8vB,EAAA7b,QAAoBsrB,YAAAphC,GAAcI,EAAAM,GAAAkB,KAASxB,EAAAqiD,OAAA7gD,GAAAxB,EAAAqiD,OAAA7gD,OAA6BxB,EAAAqiD,OAAA7gD,GAAAG,GAAAnC,KAAoBszD,EAAApyD,UAAAwyD,WAAA,SAAAhyD,EAAAO,GAA2D,QAAAzB,GAAAkB,EAAAlB,GAAgB,GAAAe,KAAAq+D,eAAA,CAAwB,GAAA59D,GAAAT,KAAAq+D,qBAA0Br+D,MAAAq+D,eAAAr+D,KAAAqyD,MAAAryD,KAAA4xD,WAAAnzD,EAAAigE,WAAAjgE,EAAAggE,MAAAh+D,GAA8EC,EAAAP,EAAAlB,GAAO,GAAAwB,GAAAT,KAAAshD,OAAAnhD,EAAA8V,QAAArV,EAAAT,EAAAuY,IAAAja,EAAAuB,IAA2C,IAAAS,KAAAG,GAAA,CAAY,GAAAlC,GAAA+B,EAAAG,EAAW,aAAAlC,EAAAi7D,OAAAj7D,EAAA2/D,eAAA39D,EAAA,SAAAhC,EAAAi7D,QAAAj7D,EAAA2zD,MAAA3zD,EAAAkzD,WAAA5xD,KAAA0+D,WAAA1+D,KAAAy+D,MAAAx/D,EAAAkd,KAAAzd,MAAuHqzD,EAAApyD,UAAAsxD,UAAA,SAAA9wD,GAAwD,GAAAO,GAAAV,KAAA2+D,QAAAx+D,EAAA8V,QAAAhX,EAAAkB,EAAAuY,GAAqChY,MAAAzB,IAAAyB,EAAAzB,GAAAm3D,QAAA11D,EAAAzB,GAAAm3D,cAAA11D,GAAAzB,KAAgD8yD,EAAApyD,UAAAi/D,WAAA,SAAAz+D,GAAyD,GAAAO,GAAAV,KAAAshD,OAAAnhD,EAAA8V,QAAAhX,EAAAkB,EAAAuY,GAAoChY,MAAAzB,UAAAyB,GAAAzB,IAAqB8yD,EAAApyD,UAAAqxD,cAAA,SAAA7wD,EAAAO,GAA8D,GAAAzB,GAAAe,KAAAshD,OAAAnhD,EAAA8V,QAAAxV,EAAAT,KAAA2+D,QAAAx+D,EAAA8V,QAAArV,EAAAT,EAAAuY,GAA6D,IAAAzZ,KAAA2B,GAAA,CAAY,GAAAnC,GAAAQ,EAAA2B,GAAAlC,EAAAD,EAAAuyD,cAAA7wD,EAAAuF,MAAAvF,EAAAsnC,MAAAtnC,EAAA6pC,uBAAA7pC,EAAAypC,qBAAAzpC,EAAAk7C,mBAAmH38C,GAAAmgE,QAAAn+D,EAAA,KAAAhC,EAAAmgE,OAAAngE,EAAAogE,mBAA2Cr+D,MAAAG,KAAAH,EAAAG,GAAA8E,MAAAvF,EAAAuF,QAAmClH,EAAAD,QAAAwzD,IAChiEX,eAAA,IAAAvgC,eAAA,IAAAkuC,gBAAA,IAAA5vC,sBAAA,EAAAJ,IAAA,KAA2FiwC,KAAA,SAAA/9D,EAAAzC,EAAAD,GAC9F,YAAa,IAAAuzD,GAAA7wD,EAAA,gBAAAw5C,EAAAx5C,EAAA,kBAAAg+D,EAAA,SAAA9+D,GAA+F,QAAAM,KAAAxB,EAAAR,EAAAiC,GAAoBP,EAAAxB,KAAAqB,KAAAS,EAAAxB,EAAAR,EAAAiC,GAAAV,KAAAsoC,WAAA,EAAAtoC,KAAA4M,KAAA,QAAA5M,KAAA0U,QAAAzV,EAAwE,MAAAkB,KAAAM,EAAAitD,UAAAvtD,GAAAM,EAAAd,UAAAT,OAAA2D,OAAA1C,KAAAR,WAAAc,EAAAd,UAAAsoB,YAAAxnB,IAAAd,UAAAknB,KAAA,WAA0H,GAAA1mB,GAAAH,KAAAS,EAAAT,KAAA0U,OAA0B1U,MAAAk/D,KAAAz+D,EAAAy+D,KAAApN,EAAAqN,SAAA1+D,EAAAy+D,KAAA,SAAAz+D,EAAAxB,GAAoD,GAAAwB,EAAAN,EAAA0tD,KAAA,SAAqBjiC,MAAAnrB,QAAU,IAAAxB,EAAA,CAAWkB,EAAAm3D,MAAAr4D,EAAAkB,EAAAm3D,MAAA8H,MAAA,CAA0B,IAAA3gE,EAAM0B,GAAAm3D,MAAA+H,iBAAA,qBAA8C5gE,EAAA0B,EAAAqS,IAAAokC,MAAAsD,cAAAhhC,IAAA,KAAA/Y,EAAAqS,IAAAy7C,cAAuD9tD,EAAAm3D,MAAA+H,iBAAA,mBAA8Cl/D,EAAAqS,IAAAokC,MAAAsD,cAAAiU,OAAA1vD,KAAoC0B,EAAAqS,KAAArS,EAAAm3D,MAAAtJ,OAAA7tD,EAAAiuD,qBAA8C3tD,EAAAd,UAAAw/D,SAAA,WAAiC,MAAAn/D,MAAAs3D,OAAkB72D,EAAAd,UAAA2uD,MAAA,SAAAnuD,GAA+BH,KAAAwS,MAAAxS,KAAAwS,IAAArS,EAAAH,KAAA6mB,OAAA7mB,KAAAs3D,QAAAt3D,KAAAs3D,MAAAtJ,OAAAhuD,KAAAkzD,eAAAlzD,KAAA8N,gBAAyGrN,EAAAd,UAAA+6B,QAAA,WAAgC,IAAAx7B,OAAAmZ,KAAArY,KAAAiV,OAAAlU,QAAAf,KAAAs3D,MAAAgI,WAAA,GAAAt/D,KAAA+uD,cAAA/uD,KAAAwS,IAAAw8C,QAAAzkB,GAAAvqC,KAAAs3D,QAAgH72D,EAAAd,UAAAgzB,UAAA,WAAkC,OAAO/lB,KAAA,QAAAsyD,KAAAl/D,KAAAk/D,KAAApxD,YAAA9N,KAAA8N,cAA0DrN,GAAGg6C,EAAcj8C,GAAAD,QAAA0gE,IAC3nC7N,eAAA,IAAAlC,iBAAA,KAAuCqQ,KAAA,SAAAt+D,EAAAzC,EAAAD,GAC1C,YAAa,IAAAihE,GAAAv+D,EAAA,iBAAAw+D,EAAAx+D,EAAA,8BAAA8wD,EAAA9wD,EAAA,+BAAA+wD,EAAA/wD,EAAA,2BAAAy+D,EAAAz+D,EAAA,qBAAAgvB,EAAA,SAAA9vB,GAAkR,GAAAO,GAAAV,IAAWA,MAAA4tB,KAAAztB,EAAAH,KAAAy+D,MAAA,GAAAe,GAAAr/D,EAAAH,WAAA2/D,gBAA6D3/D,KAAA4/D,mBAAyBxI,OAAArF,EAAAsF,QAAArF,GAA0DhyD,KAAA6/D,iBAAsB7/D,KAAA4tB,KAAAkyC,qBAAA,SAAA3/D,EAAAlB,GAA8C,GAAAyB,EAAAk/D,kBAAAz/D,GAAA,SAAAU,OAAA,4BAAAV,EAAA,wBAAiGO,GAAAk/D,kBAAAz/D,GAAAlB,GAAyBe,KAAA4tB,KAAAmyC,sBAAA,SAAA5/D,GAA6C,GAAAu/D,EAAA1I,oBAAA0I,EAAAzI,yBAAA,SAAAp2D,OAAA,sCAA+I6+D,GAAA1I,mBAAA72D,EAAA62D,mBAAA0I,EAAAzI,yBAAA92D,EAAA82D,0BAAsIhnC,GAAAtwB,UAAAqgE,UAAA,SAAA7/D,EAAAO,GAAyCV,KAAAigE,cAAA9/D,GAAAgqB,QAAAzpB,IAAiCuvB,EAAAtwB,UAAAugE,aAAA,SAAA//D,EAAAO,GAA6CV,KAAAigE,cAAA9/D,GAAAmiD,OAAA5hD,EAAAyL,OAAAzL,EAAAy/D,WAAAz/D,EAAA0/D,cAAkEnwC,EAAAtwB,UAAA+wD,SAAA,SAAAvwD,EAAAO,EAAAzB,GAA2Ce,KAAAqgE,gBAAAlgE,EAAAO,EAAAkM,MAAA8jD,SAAAhwD,EAAAzB,IAA6CgxB,EAAAtwB,UAAAwyD,WAAA,SAAAhyD,EAAAO,EAAAzB,GAA6Ce,KAAAqgE,gBAAAlgE,EAAAO,EAAAkM,MAAAulD,WAAAzxD,EAAAzB,IAA+CgxB,EAAAtwB,UAAAsxD,UAAA,SAAA9wD,EAAAO,GAA0CV,KAAAqgE,gBAAAlgE,EAAAO,EAAAkM,MAAAqkD,UAAAvwD,IAA4CuvB,EAAAtwB,UAAAi/D,WAAA,SAAAz+D,EAAAO,GAA2CV,KAAAqgE,gBAAAlgE,EAAAO,EAAAkM,MAAAgyD,WAAAl+D,IAA6CuvB,EAAAtwB,UAAA2yD,aAAA,SAAAnyD,EAAAO,GAA6C,GAAAzB,GAAAe,KAAAqgE,gBAAAlgE,EAAAO,EAAAkM,UAAqC,KAAA3N,EAAAqzD,cAAArzD,EAAAqzD,aAAA5xD,IAA2CuvB,EAAAtwB,UAAAqxD,cAAA,SAAA7wD,EAAAO,EAAAzB,GAAgDe,KAAAqgE,gBAAAlgE,EAAAO,EAAAkM,MAAAokD,cAAAtwD,EAAAzB,IAAkDgxB,EAAAtwB,UAAA2gE,iBAAA,SAAAngE,EAAAO,EAAAzB,GAAmD,IAAIe,KAAA4tB,KAAA2yC,cAAA7/D,EAAAq/C,KAAA9gD,IAAmC,MAAAkB,GAASlB,EAAAkB,KAAM8vB,EAAAtwB,UAAA6gE,kBAAA,SAAArgE,EAAAO,EAAAzB,GAAoD,IAAIygE,EAAA1I,oBAAA0I,EAAAzI,2BAAAj3D,KAAA4tB,KAAA2yC,cAAA7/D,GAAAg/D,EAAA1I,oBAAA0I,EAAAzI,0BAAAh4D,EAAA,GAAA4B,OAAA,iDAAAH,KAA0Q,MAAAP,GAASlB,EAAAkB,KAAM8vB,EAAAtwB,UAAAsgE,cAAA,SAAA9/D,GAA4C,GAAAO,GAAAV,KAAA2/D,aAAAx/D,EAA2B,OAAAO,OAAAV,KAAA2/D,aAAAx/D,GAAA,GAAAs/D,IAAA/+D,GAAyDuvB,EAAAtwB,UAAA0gE,gBAAA,SAAAlgE,EAAAO,GAAgD,GAAAzB,GAAAe,IAAW,IAAAA,KAAA6/D,cAAA1/D,KAAAH,KAAA6/D,cAAA1/D,QAAmDH,KAAA6/D,cAAA1/D,GAAAO,GAAA,CAA6B,GAAAD,IAAO+vD,KAAA,SAAA9vD,EAAAD,EAAAhC,EAAAc,GAAuBN,EAAAw/D,MAAAjO,KAAA9vD,EAAAD,EAAAhC,EAAAc,EAAAY,IAA0BH,MAAA6/D,cAAA1/D,GAAAO,GAAA,GAAAV,MAAA4/D,kBAAAl/D,GAAAD,EAAAT,KAAAigE,cAAA9/D,IAAgF,MAAAH,MAAA6/D,cAAA1/D,GAAAO,IAAgClC,EAAAD,QAAA,SAAA4B,GAA4B,UAAA8vB,GAAA9vB,MAC1jFsgE,6BAAA,IAAAC,gBAAA,IAAAC,0BAAA,GAAAC,oBAAA,GAAApO,8BAAA,MAA2IqO,KAAA,SAAA5/D,EAAAzC,EAAAD,GAC9I,YAAa,SAAAuiE,GAAA3gE,EAAA1B,GAAgC,OAAAiC,GAAA,EAAAD,EAAAN,EAAAgM,OAAuBzL,EAAAD,EAAAM,OAAWL,GAAA,EAAMD,EAAAC,GAAAqgE,YAAAtiE,GAAqB,QAAAuiE,GAAA7gE,EAAA1B,GAA+B,MAAA0B,GAAA0b,OAAA,SAAA1b,GAA4B,OAAAA,EAAAuyB,YAAmBlgB,IAAA,SAAArS,GAAkB,MAAAA,GAAAwyB,UAAAl0B,KAAwB,GAAAohC,GAAA5+B,EAAA,yBAAAw6D,EAAAx6D,EAAA,4BAAAy6D,EAAAz6D,EAAA,2BAAAs+B,EAAAt+B,EAAA,4BAAAuvB,GAAAvvB,EAAA,gCAAAA,EAAA,iBAAA0G,EAAA1G,EAAA,yBAAA+/C,EAAAr5C,EAAAq5C,eAAA5vB,EAAAnwB,EAAA,yBAAA49C,EAAAztB,EAAAytB,eAAA2f,EAAA,SAAAr+D,GAAwcH,KAAA8/B,MAAA3/B,EAAA2/B,MAAA9/B,KAAA0Y,IAAAvY,EAAAuY,IAAA1Y,KAAA4lB,KAAAzlB,EAAAylB,KAAA5lB,KAAA85B,WAAA35B,EAAA25B,WAAA95B,KAAAwgC,SAAArgC,EAAAqgC,SAAAxgC,KAAAiW,OAAA9V,EAAA8V,OAAAjW,KAAAiyB,YAAA9xB,EAAA8xB,YAAAjyB,KAAA0F,MAAAvF,EAAAuF,MAAA1F,KAAAynC,MAAAtnC,EAAAsnC,MAAAznC,KAAAgqC,uBAAA7pC,EAAA6pC,uBAAAhqC,KAAA4pC,qBAAAzpC,EAAAypC,qBAAA5pC,KAAAq7C,mBAAAl7C,EAAAk7C,mBAAuVmjB,GAAA7+D,UAAA0yD,MAAA,SAAAlyD,EAAA1B,EAAAiC,EAAAD,GAA6C,QAAAG,KAAa,GAAAT,GAAAH,IAAW,IAAAgb,EAAA,MAAAva,GAAAua,EAAiB,IAAAnZ,GAAAozB,EAAA,CAAS,OAAAx2B,GAAA,GAAAg9D,GAAAz7D,KAAA0F,MAAA1F,KAAAynC,MAAAznC,KAAAgqC,uBAAAhqC,KAAA4pC,qBAAA5pC,KAAA25B,mBAAAj5B,EAAAm+C,EAAAh9C,GAAAjB,EAAAogD,EAAA/rB,GAAAh2B,EAAA,EAAAa,EAAAK,EAAA8gE,cAA8LhiE,EAAAa,EAAAiB,OAAW9B,GAAA,GAAM,GAAAJ,GAAAiB,EAAAb,EAAW6hE,GAAAjiE,EAAAsB,EAAAylB,MAAA/mB,EAAA67B,QAAA74B,EAAAnB,EAAAy+C,UAAAlqB,EAAAr0B,EAAAu+C,WAAAtgD,EAAA48B,MAAAh9B,EAAA0B,EAAAk7C,oBAAmGr7C,KAAA25D,OAAA,MAAmB,IAAAh5D,IAAAD,EAAAw+C,MAAA50C,KAAA/B,OAAA3H,EAAAs+C,MAAA50C,KAAA/B,OAAgD9H,GAAA,MAAQ+yD,QAAAwN,EAAAxwC,EAAAnC,OAAA9uB,GAAAoB,GAAA8xB,aAAA/zB,EAAAi0B,UAAAhyB,GAAAy/B,cAAA3hC,EAAAk0B,UAAAhyB,GAAAg5B,kBAAA35B,KAAA25B,kBAAAhH,YAAAupC,gBAAAx7D,EAAAw+C,MAAA+c,eAAAr7D,EAAAs+C,OAAwMv+C,IAAK,GAAA1B,GAAAe,IAAWA,MAAA25D,OAAA,UAAA35D,KAAAsK,KAAAnK,EAAAH,KAAA25B,kBAAA,GAAA+hC,EAA+E,IAAA57D,GAAA,GAAAy/B,GAAArgC,OAAAmZ,KAAAlY,EAAAgM,QAAA8E,QAAAvS,EAAA,GAAAmhC,GAAA7/B,KAAA8/B,MAAA9/B,KAAAiyB,YAAwGvzB,GAAAwhC,iBAAoB,IAAA3gC,MAAQV,GAAI4zB,aAAA/zB,EAAA27B,oBAAkCC,sBAAsB35B,EAAAlC,EAAAyiE,iBAAAlhE,KAAAiW,OAAmC,QAAAvU,KAAAf,GAAA,CAAgB,GAAA/B,GAAAuB,EAAAgM,OAAAzK,EAAkB,IAAA9C,EAAA,CAAM,IAAAA,EAAAqP,SAAAuiB,EAAA0K,SAAA,uBAAAj8B,EAAAgX,OAAA,YAAAvU,EAAA,mFAA+J,QAAAC,GAAA7B,EAAAqhE,OAAAz/D,GAAA7B,KAAAf,EAAA,EAA+BA,EAAAF,EAAAmC,OAAWjC,IAAA,CAAK,GAAAyB,GAAA3B,EAAA8P,QAAA5P,EAAmBe,GAAAwH,MAAQqH,QAAAnO,EAAA2xB,MAAApzB,EAAA0zB,iBAAA7wB,IAAuC,OAAA5B,GAAA,EAAAyB,EAAAb,EAAAe,GAAmB3B,EAAAyB,EAAAT,OAAWhB,GAAA,GAAM,GAAAsC,GAAAb,EAAAzB,GAAAiC,EAAAK,EAAA,EAAkB,MAAAL,EAAA2mC,SAAA1pC,EAAA2mB,KAAAvkB,KAAAoV,MAAAzU,EAAA2mC,aAAA3mC,EAAA4mC,SAAA3pC,EAAA2mB,MAAA5jB,EAAA4mC,SAAA5mC,EAAA6zB,QAAA,SAAA7zB,EAAA6zB,OAAAurC,YAAA,CAAwH,OAAAr/D,GAAA,EAAA2U,EAAArU,EAAgBN,EAAA2U,EAAA3V,OAAWgB,GAAA,EAAM2U,EAAA3U,GAAAg/D,YAAA9hE,EAAA2mB,OAAyBrmB,EAAAyC,EAAA2E,IAAA3E,EAAA4uB,cAAyBsB,MAAAxzB,EAAAwhC,eAAAn/B,OAAAoL,OAAA9J,EAAAujB,KAAA3mB,EAAA2mB,KAAAkU,WAAA76B,EAAA66B,WAAA7H,YAAAhzB,EAAAgzB,YAAA0H,kBAAA16B,EAAA06B,qBAA2IpH,SAAA1yB,EAAAhB,GAAAH,EAAAwhC,eAAA74B,KAAAhF,EAAAmQ,IAAA,SAAArS,GAAyD,MAAAA,GAAAwG,SAAkB3G,KAAAihE,gBAAsB,QAAAz3D,GAAA/K,EAAA2hE,YAAAr/D,OAAA,EAAiCyI,GAAA,EAAKA,IAAA,CAAK,GAAA4qB,GAAA70B,EAAAd,EAAA2hE,YAAA52D,GAA0B4qB,IAAAn1B,EAAAgiE,cAAA55D,KAAA+sB,GAA2B,GAAApZ,GAAAnZ,EAAAozB,EAAAD,EAAAxE,EAAA6wC,UAAAxiE,EAAAy7B,kBAAA,SAAAn6B,GAA2D,MAAAjB,QAAAmZ,KAAAlY,GAAAqS,IAAA+Y,SAAoCrsB,QAAAmZ,KAAA2c,GAAAj0B,OAAAL,EAAA8vD,KAAA,aAA0C93C,IAAA1Y,KAAA0Y,IAAA4oD,OAAAtsC,GAAsB,SAAA70B,EAAA1B,GAAeuc,MAAA7a,EAAA0B,EAAApD,EAAAmC,EAAAjC,KAAAM,MAAuB4C,IAAO,IAAAD,GAAA1C,OAAAmZ,KAAAxZ,EAAAw7B,iBAAsCz4B,GAAAb,OAAAL,EAAA8vD,KAAA,aAA6B+Q,MAAA3/D,GAAQ,SAAAzB,EAAA1B,GAAeuc,MAAA7a,EAAA80B,EAAAx2B,EAAAmC,EAAAjC,KAAAM,MAAuBg2B,KAAMr0B,EAAAjC,KAAAqB,OAAcw+D,EAAA7+D,UAAAqxD,cAAA,SAAA7wD,EAAA1B,EAAAiC,EAAAD,EAAAG,GAAwD,GAAA3B,GAAAe,IAAW,IAAAA,KAAA0F,MAAAvF,EAAAH,KAAAynC,MAAAhpC,EAAAuB,KAAAgqC,uBAAAtpC,EAAAV,KAAA4pC,qBAAAnpC,EAAA,SAAAT,KAAA25D,OAAA,QAAqH,QAAA75D,GAAA,GAAA27D,GAAAz7D,KAAA0F,MAAA1F,KAAAynC,MAAAznC,KAAAgqC,uBAAAhqC,KAAA4pC,qBAAA5pC,KAAA25B,mBAAAj7B,EAAA,EAAAa,EAAAN,EAAAgiE,cAAsJviE,EAAAa,EAAAwB,OAAWrC,GAAA,GAAM,GAAAG,GAAAU,EAAAb,EAAWoiE,GAAAjiE,EAAAI,EAAA2mB,MAAA/mB,EAAA48B,MAAA37B,EAAAc,GAAyC,GAAAD,KAAS,QAAOk+D,QAAQrL,QAAAwN,EAAAhhE,KAAAihE,cAAAtgE,GAAAy/B,cAAAtgC,EAAA6yB,UAAAhyB,IAA4Em+D,cAAAn+D,IAAkBnC,EAAAD,QAAAigE,IAC9sH5B,+BAAA,GAAAC,wBAAA,GAAA2E,wBAAA,GAAAC,wBAAA,GAAA1E,0BAAA,IAAAC,2BAAA,IAAA57B,2BAAA,IAAAvQ,eAAA,MAAkO6wC,KAAA,SAAAzgE,EAAAzC,EAAAD,GACrO,YAAa,SAAAojE,GAAAjhE,EAAAP,GAAoB,GAAAI,KAAS,QAAAE,KAAAC,GAAA,QAAAD,IAAAF,EAAAE,GAAAC,EAAAD,GAAsC,OAAAmhE,GAAA9lD,QAAA,SAAApb,GAAyCA,IAAAP,KAAAI,EAAAG,GAAAP,EAAAO,MAAoBH,EAAI,QAAAshE,GAAAnhE,GAAwBA,IAAAoY,OAAY,QAAA3Y,GAAAjB,OAAA2D,OAAA,MAAAtC,EAAA,EAAkCA,EAAAG,EAAAK,OAAWR,IAAAJ,EAAAO,EAAAH,GAAAoG,IAAAjG,EAAAH,EAAoB,QAAAE,GAAA,EAAYA,EAAAC,EAAAK,OAAWN,IAAA,OAAAC,GAAAD,KAAAC,EAAAD,GAAAkhE,EAAAjhE,EAAAD,GAAAN,EAAAO,EAAAD,GAAAkH,MAAiD,OAAAjH,GAAS,GAAAkhE,GAAA3gE,EAAA,wBAAmDzC,GAAAD,QAAAsjE,IACvXC,wBAAA,MAA4BC,KAAA,SAAA9gE,EAAAzC,EAAAD,GAC/B,YAAa,SAAAyjE,GAAA7hE,EAAAO,EAAAzB,EAAA2B,GAA8BT,QAAOO,OAAS,IAAAZ,EAAM,KAAAA,IAAAK,KAAAP,eAAAE,KAAAY,EAAAd,eAAAE,KAAAb,EAAAoI,MAA+DunB,QAAAqzC,EAAA3P,aAAA4P,MAAApiE,KAAyCc,EAAAd,IAAA,GAAY,KAAAA,IAAAY,KAAAd,eAAAE,KAAAK,EAAAP,eAAAE,GAAAqiE,EAAAhiE,EAAAL,GAAAY,EAAAZ,MAAAb,EAAAoI,MAAkFunB,QAAAqzC,EAAA3P,aAAA4P,MAAApiE,KAAyCb,EAAAoI,MAAUunB,QAAAqzC,EAAAG,UAAAF,MAAApiE,EAAAY,EAAAZ,MAA2Cc,EAAAd,IAAA,GAAAb,EAAAoI,MAAmBunB,QAAAqzC,EAAAG,UAAAF,MAAApiE,EAAAY,EAAAZ,OAA8C,QAAAuiE,GAAAliE,EAAAO,EAAAzB,EAAA2B,EAAAd,EAAAW,GAA+CN,QAAOO,OAAS,IAAAnB,EAAM,KAAAA,IAAAY,KAAAP,eAAAL,KAAA4iE,EAAAhiE,EAAAZ,GAAAmB,EAAAnB,KAAAN,EAAAoI,MAA6DunB,QAAAnuB,EAAAyhE,MAAAthE,EAAArB,EAAAmB,EAAAnB,GAAAO,KAA+B,KAAAP,IAAAmB,KAAAd,eAAAL,KAAAY,EAAAP,eAAAL,KAAA4iE,EAAAhiE,EAAAZ,GAAAmB,EAAAnB,KAAAN,EAAAoI,MAAmFunB,QAAAnuB,EAAAyhE,MAAAthE,EAAArB,EAAAmB,EAAAnB,GAAAO,MAA+B,QAAAwiE,GAAAniE,GAAoB,MAAAA,GAAAwG,GAAY,QAAA47D,GAAApiE,EAAAO,GAAwB,MAAAP,GAAAO,EAAAiG,IAAAjG,EAAAP,EAAmB,QAAAqiE,GAAAriE,EAAAO,EAAAzB,GAA2BkB,QAAAO,OAAgB,IAAAE,GAAAd,EAAAW,EAAAlB,EAAAd,EAAAoB,EAAAjB,EAAA+B,EAAAR,EAAAqS,IAAA8vD,GAAA5jE,EAAAgC,EAAA8R,IAAA8vD,GAAA3gE,EAAAxB,EAAA8b,OAAAsmD,MAA2E1jE,EAAA6B,EAAAub,OAAAsmD,MAAyBzjE,EAAA6B,EAAAmY,QAAApX,EAAAxC,OAAA2D,OAAA,KAAoC,KAAAjC,EAAA,EAAAd,EAAA,EAAYc,EAAAD,EAAAI,OAAWH,IAAAH,EAAAE,EAAAC,GAAA/B,EAAAe,eAAAa,GAAAX,KAAAb,EAAAoI,MAA4CunB,QAAAqzC,EAAAQ,YAAAP,MAAAzhE,KAAwC3B,EAAAkJ,OAAAlJ,EAAA+K,QAAApJ,EAAAX,GAAA,GAA8B,KAAAc,EAAA,EAAAd,EAAA,EAAYc,EAAAlC,EAAAqC,OAAWH,IAAAH,EAAA/B,IAAAqC,OAAA,EAAAH,GAAA9B,IAAAiC,OAAA,EAAAH,KAAAH,IAAAkB,EAAA/B,eAAAa,IAAAxB,EAAAoI,MAAyEunB,QAAAqzC,EAAAQ,YAAAP,MAAAzhE,KAAwC3B,EAAAkJ,OAAAlJ,EAAAid,YAAAtb,EAAA3B,EAAAiC,OAAAjB,GAAA,IAAAA,IAAAD,EAAAf,IAAAiC,OAAAH,GAAA3B,EAAAoI,MAAuEunB,QAAAqzC,EAAAS,SAAAR,MAAArjE,EAAA4B,GAAAZ,KAA0Cf,EAAAkJ,OAAAlJ,EAAAiC,OAAAH,EAAA,EAAAH,GAAAiB,EAAAjB,IAAA,EAAoC,KAAAG,EAAA,EAAQA,EAAAlC,EAAAqC,OAAWH,IAAA,GAAAH,EAAA/B,EAAAkC,GAAArB,EAAAoC,EAAAlB,GAAAhC,EAAAI,EAAA4B,IAAAiB,EAAAjB,KAAA0hE,EAAA5iE,EAAAd,GAAA,GAAA0jE,EAAA5iE,EAAA0W,OAAAxX,EAAAwX,SAAAksD,EAAA5iE,EAAA,gBAAAd,EAAA,kBAAA0jE,EAAA5iE,EAAAqN,KAAAnO,EAAAmO,MAAA,CAAsJy1D,EAAA9iE,EAAAs2B,OAAAp3B,EAAAo3B,OAAA52B,EAAAwB,EAAA,KAAAwhE,EAAAU,mBAAAN,EAAA9iE,EAAAovC,MAAAlwC,EAAAkwC,MAAA1vC,EAAAwB,EAAA,KAAAwhE,EAAAW,kBAAAT,EAAA5iE,EAAAsc,OAAApd,EAAAod,SAAA5c,EAAAoI,MAAqMunB,QAAAqzC,EAAAY,UAAAX,MAAAzhE,EAAAhC,EAAAod,UAA+CsmD,EAAA5iE,EAAAopC,QAAAlqC,EAAAkqC,UAAAw5B,EAAA5iE,EAAAqpC,QAAAnqC,EAAAmqC,UAAA3pC,EAAAoI,MAAsEunB,QAAAqzC,EAAAa,kBAAAZ,MAAAzhE,EAAAhC,EAAAkqC,QAAAlqC,EAAAmqC,UAAoE,KAAAhqC,IAAAW,KAAAK,eAAAhB,IAAA,WAAAA,GAAA,UAAAA,GAAA,WAAAA,GAAA,aAAAA,GAAA,YAAAA,GAAA,YAAAA,IAAA,IAAAA,EAAAiL,QAAA,UAAAw4D,EAAA9iE,EAAAX,GAAAH,EAAAG,GAAAK,EAAAwB,EAAA7B,EAAAka,MAAA,GAAAmpD,EAAAW,kBAAAT,EAAA5iE,EAAAX,GAAAH,EAAAG,KAAAK,EAAAoI,MAA2PunB,QAAAqzC,EAAAc,iBAAAb,MAAAzhE,EAAA7B,EAAAH,EAAAG,MAAuD,KAAAA,IAAAH,KAAAmB,eAAAhB,KAAAW,EAAAK,eAAAhB,IAAA,WAAAA,GAAA,UAAAA,GAAA,WAAAA,GAAA,aAAAA,GAAA,YAAAA,GAAA,YAAAA,IAAA,IAAAA,EAAAiL,QAAA,UAAAw4D,EAAA9iE,EAAAX,GAAAH,EAAAG,GAAAK,EAAAwB,EAAA7B,EAAAka,MAAA,GAAAmpD,EAAAW,kBAAAT,EAAA5iE,EAAAX,GAAAH,EAAAG,KAAAK,EAAAoI,MAAiRunB,QAAAqzC,EAAAc,iBAAAb,MAAAzhE,EAAA7B,EAAAH,EAAAG,WAAuDK,GAAAoI,MAAaunB,QAAAqzC,EAAAQ,YAAAP,MAAAzhE,KAAwCZ,EAAAf,IAAAid,YAAAtb,GAAA,GAAAxB,EAAAoI,MAAkCunB,QAAAqzC,EAAAS,SAAAR,MAAAzjE,EAAAoB,KAAyC,QAAAmjE,GAAA7iE,EAAAO,GAAyB,IAAAP,EAAA,QAAcyuB,QAAAqzC,EAAAgB,SAAAf,MAAAxhE,IAAuC,IAAAzB,KAAS,KAAI,IAAAkjE,EAAAhiE,EAAA8N,QAAAvN,EAAAuN,SAAA,QAAyC2gB,QAAAqzC,EAAAgB,SAAAf,MAAAxhE,IAAuCyhE,GAAAhiE,EAAAwnC,OAAAjnC,EAAAinC,SAAA1oC,EAAAoI,MAAoCunB,QAAAqzC,EAAAiB,UAAAhB,MAAAxhE,EAAAinC,UAA6Cw6B,EAAAhiE,EAAAylB,KAAAllB,EAAAklB,OAAA3mB,EAAAoI,MAAkCunB,QAAAqzC,EAAAkB,QAAAjB,MAAAxhE,EAAAklB,QAAyCu8C,EAAAhiE,EAAAygC,QAAAlgC,EAAAkgC,UAAA3hC,EAAAoI,MAAwCunB,QAAAqzC,EAAAmB,WAAAlB,MAAAxhE,EAAAkgC,WAA+CuhC,EAAAhiE,EAAAsnC,MAAA/mC,EAAA+mC,QAAAxoC,EAAAoI,MAAoCunB,QAAAqzC,EAAAoB,SAAAnB,MAAAxhE,EAAA+mC,SAA2C06B,EAAAhiE,EAAAmjE,OAAA5iE,EAAA4iE,SAAArkE,EAAAoI,MAAsCunB,QAAAqzC,EAAAsB,UAAArB,MAAAxhE,EAAA4iE,UAA6CnB,EAAAhiE,EAAA+/C,OAAAx/C,EAAAw/C,SAAAjhD,EAAAoI,MAAsCunB,QAAAqzC,EAAAuB,UAAAtB,MAAAxhE,EAAAw/C,UAA6CiiB,EAAAhiE,EAAAsjE,WAAA/iE,EAAA+iE,aAAAxkE,EAAAoI,MAA8CunB,QAAAqzC,EAAAyB,cAAAxB,MAAAxhE,EAAA+iE,cAAqDtB,EAAAhiE,EAAA02C,MAAAn2C,EAAAm2C,QAAA53C,EAAAoI,MAAoCunB,QAAAqzC,EAAAtrB,SAAAurB,MAAAxhE,EAAAm2C,QAA6C,IAAAj2C,MAAQd,IAAMkiE,GAAA7hE,EAAAmvB,QAAA5uB,EAAA4uB,QAAAxvB,EAAAc,EAAqC,IAAAH,KAASN,GAAAgM,QAAAhM,EAAAgM,OAAA2P,QAAA,SAAA3b,GAAuCS,EAAAT,EAAA8V,QAAAhX,EAAAoI,MAAoBunB,QAAAqzC,EAAAQ,YAAAP,MAAA/hE,EAAAwG,MAA2ClG,EAAA4G,KAAAlH,KAAYlB,IAAA+H,OAAAlH,GAAA0iE,EAAA/hE,EAAAC,EAAAyL,OAAAlN,GAAyC,MAAAkB,GAAS0U,QAAA8uD,KAAA,gCAAAxjE,GAAAlB,IAAoD2vB,QAAAqzC,EAAAgB,SAAAf,MAAAxhE,KAAuC,MAAAzB,GAAS,GAAAkjE,GAAAlhE,EAAA,kBAAAghE,GAAkDgB,SAAA,WAAAP,SAAA,WAAAD,YAAA,cAAAG,iBAAA,mBAAAD,kBAAA,oBAAAE,UAAA,YAAAT,UAAA,YAAA9P,aAAA,eAAAwQ,kBAAA,oBAAAC,iBAAA,mBAAAG,UAAA,YAAAC,QAAA,UAAAC,WAAA,aAAAC,SAAA,WAAAE,UAAA,YAAAC,UAAA,YAAAE,cAAA,gBAAA/sB,SAAA,WAAidn4C,GAAAD,QAAAykE,EAAAxkE,EAAAD,QAAA0jE,eACzwI2B,iBAAA,MAAqBC,KAAA,SAAA5iE,EAAAzC,EAAAD,GACxB,YAAa,SAAAulE,GAAApjE,EAAAjC,GAA8B,OAAAgC,MAAAxB,EAAA8kB,UAAAhjB,OAAA,EAAkC9B,KAAA,GAAOwB,EAAAxB,GAAA8kB,UAAA9kB,EAAA,EAAqBe,MAAA+jE,SAAArjE,IAAA,SAAAoO,EAAAkV,MAAAlV,EAAArO,GAAA,OAAAhC,OAAA,KAAAA,KAAAulE,WAAAhkE,KAAAo8B,KAAA39B,EAAAulE,UAA2G,GAAAl1D,GAAA7N,EAAA,QAAA6N,MAAkCtQ,GAAAD,QAAAulE,IACnPtzC,KAAA,KAAUyzC,KAAA,SAAAhjE,EAAAzC,EAAAD,GACb,YAAa,SAAA2lE,GAAA/jE,GAAyB,UAAAF,UAAA,iDAA2DkkE,EAAAhkE,IAAsB,QAAAgkE,GAAAhkE,GAAoB,IAAAA,EAAA,YAAmB,IAAA1B,GAAA0B,EAAA,EAAW,OAAAA,GAAAY,QAAA,UAAAtC,EAAA,2BAAAA,EAAA2lE,EAAAjkE,EAAA,GAAAA,EAAA,oBAAA1B,EAAA2lE,EAAAjkE,EAAA,GAAAA,EAAA,mBAAA1B,GAAA,MAAAA,GAAA,OAAAA,GAAA,OAAAA,EAAA2lE,EAAAjkE,EAAA,GAAAA,EAAA,GAAA1B,GAAA,WAAAA,EAAA4lE,EAAAlkE,EAAA2Y,MAAA,iBAAAra,EAAA4lE,EAAAlkE,EAAA2Y,MAAA,kBAAAra,EAAA6lE,EAAAD,EAAAlkE,EAAA2Y,MAAA,iBAAAra,EAAA8lE,EAAApkE,EAAA,GAAAA,EAAA2Y,MAAA,YAAAra,EAAA6lE,EAAAC,EAAApkE,EAAA,GAAAA,EAAA2Y,MAAA,aAAAra,EAAA+lE,EAAArkE,EAAA,aAAA1B,EAAA6lE,EAAAE,EAAArkE,EAAA,iBAAwiB,QAAAskE,GAAAtkE,GAAqC,gBAAAA,EAAA,iBAAAA,EAAA,YAAAyV,KAAAC,UAAA1V,GAAA,IAAuE,QAAAikE,GAAAjkE,EAAA1B,EAAAc,EAAAN,GAAsC,GAAAyB,GAAA+jE,EAAAtkE,GAAAN,EAAA,UAAAM,EAAAkN,EAAAxD,QAAApL,GAAAmX,KAAAC,UAAApX,EAAmF,QAAAQ,EAAA,UAAAyB,EAAA,cAAAb,EAAA,SAAAa,EAAAnB,EAAAM,EAAoD,QAAAwkE,GAAAlkE,EAAA1B,GAA+B,MAAA0B,GAAAqS,IAAA2xD,GAAAj1D,KAAAzQ,GAA8B,QAAA8lE,GAAApkE,EAAA1B,GAA0B,UAAA0B,IAAA1B,IAAA+T,IAAA,SAAArS,GAAkC,MAAAkN,GAAAxD,QAAA1J,KAA2B,IAAAZ,GAAAqW,KAAAC,UAAApX,EAAAwS,KAAA0W,IAAA1oB,EAAAwlE,EAAAtkE,EAAoE,OAAA1B,GAAAsC,QAAA,IAAAxB,EAAA,YAAAN,EAAA,oKAAsMA,EAAA,KAAAM,EAAA,OAAAd,EAAAsC,OAAA,OAAmC,QAAAyjE,GAAArkE,GAAyB,cAAAA,EAAA,YAAAyV,KAAAC,UAAA1V,GAAA,QAAsD,QAAAmkE,GAAAnkE,GAA4B,WAAAA,EAAA,IAAiB,QAAAwnB,GAAAxnB,EAAA1B,GAAsB,MAAA0B,GAAA1B,GAAA,EAAA0B,EAAA1B,EAAA,IAAsBD,EAAAD,QAAA2lE,CAA4B,IAAA72D,IAAA,+CAC3mDq3D,KAAA,SAAAzjE,EAAAzC,EAAAD,GACJ,YAAa,SAAAomE,GAAAjkE,GAAoB,MAAAA,GAAAkkE,EAAAvjE,KAAAkJ,IAAA7J,EAAA,KAAAA,EAAAmkE,EAAAC,EAAoC,QAAAC,GAAArkE,GAAoB,MAAAA,GAAAskE,EAAAtkE,MAAAmkE,GAAAnkE,EAAAokE,GAA4B,QAAAG,GAAAvkE,GAAoB,YAAAA,GAAA,eAAAA,EAAA,MAAAW,KAAAkJ,IAAA7J,EAAA,aAA8D,QAAAwkE,GAAAxkE,GAAoB,MAAAA,IAAA,IAAAA,GAAA,OAAAA,EAAA,MAAAW,KAAAkJ,KAAA7J,EAAA,iBAA6D,QAAAykE,GAAAzkE,GAAqB,GAAAD,GAAAykE,EAAAxkE,EAAA,IAAAE,EAAAskE,EAAAxkE,EAAA,IAAAnB,EAAA2lE,EAAAxkE,EAAA,IAAAsB,EAAA2iE,GAAA,SAAAlkE,EAAA,SAAAG,EAAA,SAAArB,GAAA6lE,GAAAnmE,EAAA0lE,GAAA,SAAAlkE,EAAA,SAAAG,EAAA,QAAArB,GAAA8lE,EAAqJ,YAAApmE,EAAA,QAAA+C,EAAA/C,GAAA,KAAAA,EAAA0lE,GAAA,SAAAlkE,EAAA,QAAAG,EAAA,SAAArB,GAAA+lE,IAAA5kE,EAAA,IAAsF,QAAA6kE,GAAA7kE,GAAqB,GAAAD,IAAAC,EAAA,WAAAE,EAAA4Y,MAAA9Y,EAAA,IAAAD,IAAAC,EAAA,OAAAnB,EAAAia,MAAA9Y,EAAA,IAAAD,IAAAC,EAAA,MAA0E,OAAAD,GAAA4kE,EAAAN,EAAAtkE,GAAAG,EAAAwkE,EAAAL,EAAAnkE,GAAArB,EAAA+lE,EAAAP,EAAAxlE,IAAA0lE,EAAA,UAAArkE,EAAA,UAAAH,EAAA,SAAAlB,GAAA0lE,GAAA,QAAArkE,EAAA,UAAAH,EAAA,QAAAlB,GAAA0lE,EAAA,SAAArkE,EAAA,SAAAH,EAAA,UAAAlB,GAAAmB,EAAA,IAA+L,QAAA8kE,GAAA9kE,GAAqB,GAAAD,GAAA0kE,EAAAzkE,GAAAE,EAAAH,EAAA,GAAAlB,EAAAkB,EAAA,GAAAuB,EAAAvB,EAAA,GAAAxB,EAAAoC,KAAAsE,MAAA3D,EAAAzC,GAAAkmE,CAAiE,QAAAxmE,EAAA,EAAAA,EAAA,IAAAA,EAAAoC,KAAAiE,KAAA/F,IAAAyC,KAAApB,EAAAF,EAAA,IAA8C,QAAAglE,GAAAhlE,GAAqB,GAAAD,GAAAC,EAAA,GAAAilE,EAAA/kE,EAAAF,EAAA,EAA0B,OAAA6kE,IAAA7kE,EAAA,GAAAW,KAAAE,IAAAd,GAAAG,EAAAS,KAAAC,IAAAb,GAAAG,EAAAF,EAAA,KAAyD,GAAA0kE,GAAA,OAAAC,EAAA,EAAAC,EAAA,QAAAR,EAAA,KAAAE,EAAA,KAAAH,EAAA,EAAAG,IAAAJ,EAAAI,MAAAW,EAAAtkE,KAAAqM,GAAA,IAAA+3D,EAAA,IAAApkE,KAAAqM,EAA6GlP,GAAAD,SAAgBqnE,KAAKC,QAAAV,EAAAryD,QAAAyyD,GAAkCO,KAAMD,QAAAL,EAAA1yD,QAAA4yD,SACxsCK,KAAA,SAAA9kE,EAAAzC,EAAAD,GACJ,YAAa,SAAAynE,GAAAvlE,GAA6B,MAAAA,GAAS,QAAAwlE,GAAAxlE,EAAAN,GAA6B,GAAAlB,GAAAM,EAAA,UAAAY,EAAAyM,IAAyB,IAAAs5D,EAAAzlE,GAAA,CAA4B,GAAAC,GAAAD,EAAA0lE,OAAA,gBAAA1lE,GAAA0lE,MAAA,MAAAvlE,EAAAF,OAAA,KAAAD,EAAAf,SAAAjB,EAAAiC,IAAAE,EAAAd,EAAAW,EAAAmM,OAAA,iBAAAzM,EAAAimE,SAAA,yBAAgJ7mE,KAAAkB,EAAAkU,KAAelU,KAAA0lE,QAAA1lE,EAAA0lE,MAAA1lE,EAAA0lE,MAAA3zD,IAAA,SAAA/R,GAA8C,OAAAA,EAAA,GAAA4lE,EAAA5lE,EAAA,QAA8BA,EAAA+uB,QAAA/uB,EAAA+uB,QAAA62C,EAAA5lE,EAAA+uB,SAAA/uB,EAAA+uB,QAAA62C,EAAAlmE,EAAAqvB,SAA8E,IAAA7uB,GAAAd,EAAAnB,CAAU,oBAAAoB,EAAAa,EAAA2lE,MAAmD,iBAAAxmE,EAAAa,EAAA4lE,MAAkD,oBAAAzmE,EAAA,CAA2Ba,EAAA6lE,EAAA3mE,EAAAX,OAAA2D,OAAA,KAAoD,QAAAhE,GAAA,EAAA0B,EAAAE,EAAA0lE,MAAsBtnE,EAAA0B,EAAAQ,OAAWlC,GAAA,GAAM,GAAA2C,GAAAjB,EAAA1B,EAAWgB,GAAA2B,EAAA,IAAAA,EAAA,GAAa9C,QAAA+B,GAAA0lE,MAAA,UAAuB,CAAK,gBAAArmE,EAAA,SAAAe,OAAA,0BAAAf,EAAA,IAAmEa,GAAA8lE,EAA2B,GAAA3nE,EAAM,IAAA2B,EAAAimE,YAAA,QAAAjmE,EAAAimE,WAAA,CAAuC,IAAAC,EAAAlmE,EAAAimE,YAAA,SAAA7lE,OAAA,wBAAAJ,EAAAimE,WAAoF,IAAA/kE,GAAAglE,EAAAlmE,EAAAimE,WAAgCjmE,GAAAmV,KAAAy8C,MAAAz8C,KAAAC,UAAApV,GAAgC,QAAAqB,GAAA,EAAYA,EAAArB,EAAA0lE,MAAAplE,OAAiBe,IAAArB,EAAA0lE,MAAArkE,IAAArB,EAAA0lE,MAAArkE,GAAA,GAAAH,EAAAkkE,QAAAplE,EAAA0lE,MAAArkE,GAAA,IAAwDhD,GAAA6C,EAAAmR,YAAYhU,GAAAknE,CAAwB,IAAAtlE,EAAA,CAAM,OAAAgB,MAAY3B,KAAAnB,EAAA,EAAUA,EAAA6B,EAAA0lE,MAAAplE,OAAiBnC,IAAA,CAAK,GAAAq2B,GAAAx0B,EAAA0lE,MAAAvnE,GAAA4U,EAAAyhB,EAAA,GAAArP,SAA6B,KAAAlkB,EAAA8R,KAAA9R,EAAA8R,IAAsBoS,KAAApS,EAAA5G,KAAAnM,EAAAmM,KAAAlN,SAAAe,EAAAf,SAAA8vB,QAAA/uB,EAAA+uB,QAAA22C,UAAkEpmE,EAAAsH,KAAAmM,IAAA9R,EAAA8R,GAAA2yD,MAAA9+D,MAAA4tB,EAAA,GAAA3lB,MAAA2lB,EAAA,KAA+C,OAAAve,MAAA3U,EAAA,EAAAC,EAAAjC,EAAqBgC,EAAAC,EAAAjB,OAAWgB,GAAA,GAAM,GAAAO,GAAAN,EAAAD,EAAW2U,GAAArP,MAAA3F,EAAAY,GAAAsjB,KAAAqgD,EAAAvkE,EAAAY,GAAAnC,KAA2ClB,EAAA,SAAAA,EAAAM,GAAgB,MAAAT,GAAAwnE,GAAsCH,MAAAzvD,EAAA8gB,KAAA/2B,EAAA+2B,MAAoBr3B,EAAAlB,KAAAM,KAAYN,EAAA63B,mBAAA,EAAA73B,EAAA+3B,gBAAA,MAA4Cv4B,IAAAQ,EAAA,SAAAA,GAAsB,MAAAH,GAAA6B,EAAAF,EAAAN,EAAAlB,EAAAY,EAAAnB,KAAuBO,EAAA63B,mBAAA,EAAA73B,EAAA+3B,gBAAA,IAAA/3B,EAAA,SAAAA,EAAAM,GAA8D,GAAAmB,GAAAnB,EAAAkB,EAAAf,SAAoB,iBAAAgB,EAAAkmE,EAAAnmE,EAAA+uB,QAAArvB,EAAAqvB,SAAA1wB,EAAA6B,EAAAF,EAAAN,EAAAO,EAAAb,EAAAnB,KAAgEO,EAAA63B,mBAAA,EAAA73B,EAAA+3B,gBAAA,OAA6Cz3B,IAAAkB,MAAA4lE,EAAA5lE,IAAAxB,EAAA,WAA0C,MAAAwB,IAASxB,EAAA63B,mBAAA,EAAA73B,EAAA+3B,gBAAA,CAA4C,OAAA/3B,GAAS,QAAA2nE,GAAAnmE,EAAAN,EAAAlB,GAAyB,gBAAAwB,QAAA,KAAAN,QAAA,KAAAlB,QAAA,GAAqD,QAAAunE,GAAA/lE,EAAAN,EAAAlB,EAAAM,EAAAmB,GAAgD,MAAAkmE,SAAA3nE,KAAAyB,EAAAnB,EAAAN,OAAA,GAAAwB,EAAA+uB,QAAArvB,EAAAqvB,SAA8D,QAAA+2C,GAAA9lE,EAAAN,EAAAlB,GAAyC,cAAAu4D,EAAAv4D,GAAA,MAAA2nE,GAAAnmE,EAAA+uB,QAAArvB,EAAAqvB,QAA8D,IAAAjwB,GAAAkB,EAAA0lE,MAAAplE,MAAqB,QAAAxB,EAAA,MAAAkB,GAAA0lE,MAAA,KAA8B,IAAAlnE,GAAAwB,EAAA0lE,MAAA,YAAA1lE,GAAA0lE,MAAA,KAAyC,IAAAlnE,GAAAwB,EAAA0lE,MAAA5mE,EAAA,YAAAkB,GAAA0lE,MAAA5mE,EAAA,KAA6C,IAAAmB,GAAAmmE,EAAApmE,EAAA0lE,MAAAlnE,EAA2C,OAAAwB,GAAA0lE,MAAAzlE,GAAA,GAAqB,QAAA4lE,GAAA7lE,EAAAN,EAAAlB,GAA4C,GAAAM,OAAA,KAAAkB,EAAA+2B,KAAA/2B,EAAA+2B,KAAA,CAA+B,eAAAggC,EAAAv4D,GAAA,MAAA2nE,GAAAnmE,EAAA+uB,QAAArvB,EAAAqvB,QAA8D,IAAA9uB,GAAAD,EAAA0lE,MAAAplE,MAAqB,QAAAL,EAAA,MAAAD,GAAA0lE,MAAA,KAA8B,IAAAlnE,GAAAwB,EAAA0lE,MAAA,YAAA1lE,GAAA0lE,MAAA,KAAyC,IAAAlnE,GAAAwB,EAAA0lE,MAAAzlE,EAAA,YAAAD,GAAA0lE,MAAAzlE,EAAA,KAA6C,IAAAE,GAAAimE,EAAApmE,EAAA0lE,MAAAlnE,GAAAR,EAAAyjC,EAAAjjC,EAAAM,EAAAkB,EAAA0lE,MAAAvlE,GAAA,GAAAH,EAAA0lE,MAAAvlE,EAAA,OAAAd,EAAAW,EAAA0lE,MAAAvlE,GAAA,GAAAD,EAAAF,EAAA0lE,MAAAvlE,EAAA,MAAAf,EAAAinE,EAAA3mE,EAAAyM,OAAAo5D,CAA8K,yBAAAlmE,GAAA,WAAsC,OAAAW,MAAAN,EAAA4jB,UAAAhjB,OAAgCZ,KAAIM,EAAAN,GAAA4jB,UAAA5jB,EAAmB,IAAAlB,GAAAa,EAAAkkB,UAAA,GAAAvjB,GAAAlB,EAAAoB,EAAAqjB,UAAA,GAAAvjB,EAA4C,aAAAxB,OAAA,KAAAM,EAAA,MAAAM,GAAAZ,EAAAM,EAAAd,IAA0CoB,EAAAC,EAAAa,EAAAlC,GAAU,QAAAgoE,GAAAhmE,EAAAN,EAAAlB,GAAyC,gBAAAkB,EAAAyM,KAAA3N,EAAAonE,EAAApnE,GAAAu4D,EAAAv4D,KAAAkB,EAAAyM,MAAA,SAAAzM,EAAAyM,MAAAzM,EAAAkuB,OAAApvB,WAAA,IAAA2nE,EAAA3nE,EAAAwB,EAAA+uB,QAAArvB,EAAAqvB,SAAqI,QAAAq3C,GAAApmE,EAAAN,GAAwC,OAAAlB,GAAAM,EAAAmB,EAAAD,EAAAM,OAAAH,EAAA,EAAAnC,EAAAiC,EAAA,EAAAZ,EAAA,EAAqCc,GAAAnC,GAAK,CAAE,GAAAqB,EAAAuB,KAAAoV,OAAA7V,EAAAnC,GAAA,GAAAQ,EAAAwB,EAAAX,GAAA,GAAAP,EAAAkB,EAAAX,EAAA,MAAAK,IAAAlB,GAAAkB,EAAAlB,GAAAkB,EAAAZ,EAAA,MAAAO,EAAwEb,GAAAkB,EAAAS,EAAAd,EAAA,EAAAb,EAAAkB,IAAA1B,EAAAqB,EAAA,GAAuB,MAAAuB,MAAAuG,IAAA9H,EAAA,KAAuB,QAAAomE,GAAAzlE,GAAiC,sBAAAA,OAAA0lE,OAAA,aAAA1lE,EAAAmM,MAAyD,QAAAs1B,GAAAzhC,EAAAN,EAAAlB,EAAAM,GAAsC,GAAAmB,GAAAnB,EAAAN,EAAA2B,EAAAH,EAAAxB,CAAgB,YAAAyB,EAAA,MAAAP,EAAAS,EAAAF,GAAAW,KAAAkJ,IAAApK,EAAAS,GAAA,IAAAS,KAAAkJ,IAAApK,EAAAO,GAAA,GAA6D,GAAAimE,GAAA1lE,EAAA,kBAAAolE,EAAAplE,EAAA,uBAAA0T,EAAA1T,EAAA,kBAAAu2D,EAAAv2D,EAAA,oBAAA6lE,EAAA7lE,EAAA,sBAAoMzC,GAAAD,QAAA0nE,EAAAznE,EAAAD,QAAA2nE,uBAAA1nE,EAAAD,QAAA2jC,sBAAA1jC,EAAAD,QAAAsoE,8BACtuHE,iBAAA,IAAAC,mBAAA,IAAAC,sBAAA,IAAAC,sBAAA,IAAAC,iBAAA,MAAqHC,KAAA,SAAAnmE,EAAAzC,EAAAD,GACxH,YAAa,SAAAsX,GAAAnV,GAAsB,GAAAD,SAAAC,EAAe,eAAAD,GAAA,YAAAA,GAAA,WAAAA,OAAA,KAAAC,GAAA,OAAAA,EAAA,MAAAkV,MAAAC,UAAAnV,EAA4F,IAAAsF,MAAAC,QAAAvF,GAAA,CAAqB,OAAAP,GAAA,IAAA1B,EAAA,EAAAc,EAAAmB,EAAsBjC,EAAAc,EAAAwB,OAAWtC,GAAA,EAAM0B,GAAA0V,EAAAtW,EAAAd,IAAA,GAAuB,OAAA0B,GAAA,IAAa,OAAAlB,GAAAC,OAAAmZ,KAAA3X,GAAAuQ,OAAA1Q,EAAA,IAAoCI,EAAA,EAAMA,EAAA1B,EAAA8B,OAAWJ,IAAAJ,GAAAqV,KAAAC,UAAA5W,EAAA0B,IAAA,IAAAkV,EAAAnV,EAAAzB,EAAA0B,KAAA,GAAuD,OAAAJ,GAAA,IAAa,QAAA8mE,GAAA3mE,GAAmB,OAAAD,GAAA,GAAAN,EAAA,EAAA1B,EAAAmjE,EAAiCzhE,EAAA1B,EAAAsC,OAAWZ,GAAA,EAAMM,GAAA,IAAAoV,EAAAnV,EAAAjC,EAAA0B,IAA0B,OAAAM,GAAS,QAAA6mE,GAAA5mE,GAA0B,OAAAD,MAAYN,EAAA,EAAKA,EAAAO,EAAAK,OAAWZ,IAAA,CAAK,GAAA1B,GAAA4oE,EAAA3mE,EAAAP,IAAAZ,EAAAkB,EAAAhC,EAA0Bc,OAAAkB,EAAAhC,OAAAc,EAAA8H,KAAA3G,EAAAP,IAA4B,GAAAlB,KAAS,QAAAsB,KAAAE,GAAAxB,EAAAoI,KAAA5G,EAAAF,GAA4B,OAAAtB,GAAS,GAAA2iE,GAAA3gE,EAAA,wBAAmDzC,GAAAD,QAAA+oE,IAC9pBxF,wBAAA,MAA4ByF,KAAA,SAAAtmE,EAAAzC,EAAAD,GAC/B,QAAAipE,GAAArnE,GAA2B,MAAAA,GAAAkB,KAAA8D,MAAAhF,KAAA,IAAAA,EAAA,QAAAA,EAAyC,QAAAsnE,GAAAtnE,GAA4B,MAAAA,GAAA,IAAAA,EAAA,IAAAA,EAAqB,QAAAunE,GAAAvnE,GAA0B,MAAAqnE,GAAA,MAAArnE,IAAAY,OAAA,GAAA4mE,WAAAxnE,GAAA,QAAA69B,SAAA79B,IAA6E,QAAAynE,GAAAznE,GAA4B,MAAAsnE,GAAA,MAAAtnE,IAAAY,OAAA,GAAA4mE,WAAAxnE,GAAA,IAAAwnE,WAAAxnE,IAA4E,QAAA0nE,GAAA1nE,EAAAO,EAAAhC,GAA+B,MAAAA,GAAA,EAAAA,GAAA,EAAAA,EAAA,IAAAA,GAAA,KAAAA,EAAA,EAAAyB,GAAAO,EAAAP,GAAAzB,EAAA,IAAAA,EAAA,EAAAgC,EAAA,EAAAhC,EAAA,EAAAyB,GAAAO,EAAAP,IAAA,IAAAzB,GAAA,EAAAyB,EAAgF,QAAA2nE,GAAA3nE,GAA0B,GAAAO,GAAAP,EAAAgqB,QAAA,SAAA49C,aAAuC,IAAArnE,IAAAsnE,GAAA,MAAAA,GAAAtnE,GAAAoY,OAAwD,UAAApY,EAAA,IAAe,OAAAA,EAAAK,OAAA,CAAiB,GAAArC,GAAAs/B,SAAAt9B,EAAA8pB,OAAA,MAA+B,OAAA9rB,IAAA,GAAAA,GAAA,YAAAA,IAAA,QAAAA,IAAA,MAAAA,GAAA,IAAAA,IAAA,KAAAA,GAAA,GAAAA,IAAA,UAAsF,OAAAgC,EAAAK,OAAA,CAAiB,GAAArC,GAAAs/B,SAAAt9B,EAAA8pB,OAAA,MAA+B,OAAA9rB,IAAA,GAAAA,GAAA,oBAAAA,IAAA,UAAAA,IAAA,MAAAA,EAAA,QAAsE,YAAY,GAAAkC,GAAAF,EAAAmJ,QAAA,KAAApJ,EAAAC,EAAAmJ,QAAA,IAAsC,SAAAjJ,GAAAH,EAAA,IAAAC,EAAAK,OAAA,CAA2B,GAAAxB,GAAAmB,EAAA8pB,OAAA,EAAA5pB,GAAAd,EAAAY,EAAA8pB,OAAA5pB,EAAA,EAAAH,GAAAG,EAAA,IAAA2pB,MAAA,KAAAtrB,EAAA,CAA2D,QAAAM,GAAU,kBAAAO,EAAAiB,OAAA,WAAuC9B,GAAA2oE,EAAA9nE,EAAAyW,MAA2B,sBAAAzW,EAAAiB,OAAA,MAAA2mE,EAAA5nE,EAAA,IAAA4nE,EAAA5nE,EAAA,IAAA4nE,EAAA5nE,EAAA,IAAAb,EAAmG,mBAAAa,EAAAiB,OAAA,WAAuC9B,GAAA2oE,EAAA9nE,EAAAyW,MAA2B,kBAAAzW,EAAAiB,OAAA,WAAsC,IAAAtC,IAAAkpE,WAAA7nE,EAAA,qBAAAa,EAAAinE,EAAA9nE,EAAA,IAAAC,EAAA6nE,EAAA9nE,EAAA,IAAAhB,EAAAiB,GAAA,GAAAA,GAAAY,EAAA,GAAAZ,EAAAY,EAAAZ,EAAAY,EAAA9B,EAAA,EAAAkB,EAAAjB,CAAyH,QAAA0oE,EAAA,IAAAK,EAAAhpE,EAAAC,EAAAL,EAAA,MAAA+oE,EAAA,IAAAK,EAAAhpE,EAAAC,EAAAL,IAAA+oE,EAAA,IAAAK,EAAAhpE,EAAAC,EAAAL,EAAA,MAAAQ,EAAgJ,sBAAqB,YAAY,GAAA+oE,IAAoBC,aAAA,SAAAC,WAAA,eAAAC,cAAA,eAAAC,MAAA,aAAAC,YAAA,eAAAC,OAAA,eAAAC,OAAA,eAAAC,QAAA,eAAA77C,OAAA,SAAA87C,gBAAA,eAAA77C,MAAA,WAAA87C,YAAA,cAAAC,OAAA,aAAAC,WAAA,eAAAC,WAAA,cAAAC,YAAA,aAAAC,WAAA,cAAAC,OAAA,cAAAC,gBAAA,eAAAC,UAAA,eAAAC,SAAA,aAAAt8C,MAAA,aAAAu8C,UAAA,WAAAC,UAAA,aAAAC,eAAA,cAAAC,UAAA,eAAAC,WAAA,WAAAC,UAAA,eAAAC,WAAA,eAAAC,aAAA,aAAAC,gBAAA,aAAAC,YAAA,aAAAC,YAAA,cAAAC,SAAA,WAAAC,YAAA,eAAAC,cAAA,eAAAC,eAAA,aAAAC,eAAA,YAAAC,eAAA,YAAAC,eAAA,aAAAC,YAAA,aAAAC,UAAA,cAAAC,aAAA,aAAAC,SAAA,eAAAC,SAAA,eAAAC,YAAA,cAAAC,WAAA,aAAAC,aAAA,eAAAC,aAAA,aAAAC,SAAA,aAAAC,WAAA,eAAAC,YAAA,eAAAC,MAAA,aAAAC,WAAA,cAAAC,MAAA,eAAAt+C,OAAA,WAAAu+C,aAAA,cAAA3+C,MAAA,eAAA4+C,UAAA,eAAAC,SAAA,eAAAC,WAAA,aAAAC,QAAA,YAAAC,OAAA,eAAAC,OAAA,eAAAC,UAAA,eAAAC,eAAA,eAAAC,WAAA,aAAAC,cAAA,eAAAC,WAAA,eAAAC,YAAA,eAAAC,WAAA,eAAAC,sBAAA,eAAAC,WAAA,eAAAC,YAAA,eAAAC,WAAA,eAAAC,WAAA,eAAAC,aAAA,eAAAC,eAAA,cAAAC,cAAA,eAAAC,gBAAA,eAAAC,gBAAA,eAAAC,gBAAA,eAAAC,aAAA,eAAAC,MAAA,WAAAC,WAAA,aAAAC,OAAA,eAAAlgD,SAAA,aAAAmgD,QAAA,WAAAC,kBAAA,eAAAC,YAAA,WAAAC,cAAA,cAAAC,cAAA,eAAAC,gBAAA,cAAAC,iBAAA,eAAAC,mBAAA,aAAAC,iBAAA,cAAAC,iBAAA,cAAAC,cAAA,aAAAC,WAAA,eAAAC,WAAA,eAAAC,UAAA,eAAAC,aAAA,eAAAC,MAAA,WAAAC,SAAA,eAAAC,OAAA,aAAAC,WAAA,cAAAC,QAAA,aAAAC,WAAA,YAAAC,QAAA,eAAAC,eAAA,eAAAC,WAAA,eAAAC,eAAA,eAAAC,eAAA,eAAAC,YAAA,eAAAC,WAAA,eAAAC,MAAA,cAAAC,MAAA,eAAAC,MAAA,eAAAC,YAAA,eAAAC,QAAA,aAAAC,eAAA,cAAAniD,KAAA,WAAAoiD,WAAA,eAAAC,WAAA,cAAAC,aAAA,aAAAC,QAAA,eAAAC,YAAA,cAAAC,UAAA,aAAAC,UAAA,eAAAC,QAAA,aAAAC,QAAA,eAAAC,SAAA,eAAAC,WAAA,cAAAC,WAAA,eAAAC,WAAA,eAAAC,MAAA,eAAAC,aAAA,aAAAC,WAAA,cAAA5tE,KAAA,eAAA6tE,MAAA,aAAAC,SAAA,eAAAC,QAAA,aAAAC,WAAA,cAAAC,QAAA,eAAAC,OAAA,eAAAhkD,OAAA,eAAAikD,YAAA,eAAAzjD,QAAA,aAAA0jD,aAAA,cAAioH,KAAIpyE,EAAAupE,gBAAoC,MAAA3nE,UACzrKywE,KAAA,SAAA3vE,EAAAzC,EAAAD,GACJ,QAAAsyE,GAAAnwE,GAAyB,QAAAA,GAAA,gBAAAA,GAA8B,QAAAowE,GAAApwE,EAAAP,GAAwB,OAAAS,IAAA,EAAAH,EAAAC,EAAAK,SAAwBH,EAAAH,GAAM,GAAAN,EAAAO,EAAAE,KAAAF,GAAA,QAAyB,UAAS,QAAAqwE,GAAArwE,EAAAP,EAAAS,EAAAH,EAAAxB,EAAAM,GAAkC,MAAAmB,KAAAP,IAAA,MAAAO,GAAA,MAAAP,IAAAwqB,EAAAjqB,KAAAmwE,EAAA1wE,GAAAO,OAAAP,MAAA6wE,EAAAtwE,EAAAP,EAAA4wE,EAAAnwE,EAAAH,EAAAxB,EAAAM,IAAuH,QAAAyxE,GAAAtwE,EAAAP,EAAAS,EAAAH,EAAAxB,EAAAM,EAAAoB,GAAwC,GAAA9B,GAAAoH,EAAAvF,GAAAZ,EAAAmG,EAAA9F,GAAA1B,EAAAwyE,EAAAlxE,EAAAkxE,CAAoDpyE,KAAAJ,EAAAyyE,EAAAvyE,KAAA+B,GAAAjC,GAAA0yE,EAAA1yE,EAAA2yE,EAAA3yE,GAAA2yE,IAAAvyE,EAAAwyE,EAAA3wE,KAAAZ,IAAAC,EAAAmxE,EAAAvyE,KAAAwB,GAAAJ,GAAAoxE,EAAApxE,EAAAqxE,EAAArxE,GAAAqxE,IAAAtxE,EAAAuxE,EAAAlxE,IAAwK,IAAA6B,GAAAvD,GAAA2yE,EAAA1yE,EAAAqB,GAAAqxE,EAAA7wE,EAAA9B,GAAAsB,CAAyC,IAAAQ,IAAA1B,IAAAmD,EAAA,MAAAsvE,GAAA5wE,EAAAP,EAAA1B,EAAsC,KAAAQ,EAAA,CAAO,GAAA0C,GAAAK,GAAApC,EAAAjB,KAAA+B,EAAA,eAAAgW,EAAAhY,GAAAkB,EAAAjB,KAAAwB,EAAA,cAAwF,IAAAwB,GAAA+U,EAAA,MAAA9V,GAAAe,EAAAjB,EAAA4O,QAAA5O,EAAAgW,EAAAvW,EAAAmP,QAAAnP,EAAAM,EAAAxB,EAAAM,EAAAoB,GAAsD,IAAAJ,EAAA,QAAehB,WAAAoB,SAAoB,QAAAsB,GAAA1C,EAAAwB,OAAmBkB,KAAI,GAAA1C,EAAA0C,IAAAvB,EAAA,MAAAC,GAAAsB,IAAA9B,CAA2BZ,GAAA8H,KAAA3G,GAAAC,EAAA0G,KAAAlH,EAAoB,IAAAN,IAAAhB,EAAA0yE,EAAAC,GAAA9wE,EAAAP,EAAAS,EAAAH,EAAAxB,EAAAM,EAAAoB,EAAkD,OAAApB,GAAAgX,MAAA5V,EAAA4V,MAAA1W,EAAyB,QAAA0xE,GAAA7wE,EAAAP,EAAAS,EAAAH,EAAAxB,EAAAM,EAAAoB,GAAoC,GAAA9B,IAAA,EAAAiB,EAAAY,EAAAK,OAAAtC,EAAA0B,EAAAY,MAA+B,IAAAjB,GAAArB,KAAAQ,GAAAR,EAAAqB,GAAA,QAA4B,QAAKjB,EAAAiB,GAAM,CAAE,GAAAC,GAAAW,EAAA7B,GAAAmD,EAAA7B,EAAAtB,GAAAH,EAAA+B,IAAAxB,EAAA+C,EAAAjC,EAAAd,EAAAc,EAAAiC,EAAAnD,OAAA,EAA8C,aAAAH,EAAA,CAAe,GAAAA,EAAA,QAAc,UAAS,GAAAO,GAAM,IAAA6xE,EAAA3wE,EAAA,SAAAO,GAA4B,MAAAX,KAAAW,GAAAE,EAAAb,EAAAW,EAAAD,EAAAxB,EAAAM,EAAAoB,KAA6B,aAAW,IAAAZ,IAAAiC,IAAApB,EAAAb,EAAAiC,EAAAvB,EAAAxB,EAAAM,EAAAoB,GAAA,SAAwC,SAAS,QAAA2wE,GAAA5wE,EAAAP,EAAAS,GAA2B,OAAAA,GAAU,IAAA6wE,GAAA,IAAAC,GAAA,OAAAhxE,IAAAP,CAAuC,KAAAwxE,GAAA,MAAAjxE,GAAA3B,MAAAoB,EAAApB,MAAA2B,EAAAqjE,SAAA5jE,EAAA4jE,OAA0D,KAAA6N,GAAA,MAAAlxE,OAAAP,MAAAO,IAAAP,CAAwC,KAAA0xE,GAAA,IAAAC,GAAA,MAAApxE,IAAAP,EAAA,GAA6C,SAAS,QAAAqxE,GAAA9wE,EAAAP,EAAAS,EAAAH,EAAAxB,EAAAM,EAAAoB,GAAqC,GAAA9B,GAAAwZ,EAAA3X,GAAAZ,EAAAjB,EAAAkC,MAAyB,IAAAjB,GAAAuY,EAAAlY,GAAAY,SAAA9B,EAAA,QAAkC,QAAAR,GAAAqB,EAAYrB,KAAI,CAAE,GAAAsB,GAAAlB,EAAAJ,EAAW,MAAAQ,EAAAc,IAAAI,GAAAP,EAAAjB,KAAAwB,EAAAJ,IAAA,SAAiD,OAAAiC,GAAA/C,IAAYR,EAAAqB,GAAM,CAAEC,EAAAlB,EAAAJ,EAAO,IAAAC,GAAAgC,EAAAX,GAAAQ,EAAAJ,EAAAJ,GAAA4B,EAAAlB,IAAAxB,EAAAsB,EAAA7B,EAAAO,EAAAP,EAAA6B,EAAAR,OAAA,EAA8C,eAAA4B,EAAAf,EAAAlC,EAAA6B,EAAAE,EAAAxB,EAAAM,EAAAoB,GAAAgB,GAAA,QAA2CK,OAAA,eAAAjC,GAAwB,IAAAiC,EAAA,CAAO,GAAA0U,GAAAhW,EAAAunB,YAAAhmB,EAAA9B,EAAA8nB,WAAoC,IAAAvR,GAAAzU,GAAA,eAAAvB,IAAA,eAAAP,MAAA,kBAAAuW,oBAAA,kBAAAzU,oBAAA,SAAsI,SAAS,QAAA0oB,GAAAjqB,GAAqB,GAAAP,SAAAO,EAAe,SAAAA,IAAA,UAAAP,GAAA,YAAAA,GAAwC,GAAA8F,GAAAhF,EAAA,kBAAAowE,EAAApwE,EAAA,uBAAAoX,EAAApX,EAAA,eAAAkwE,EAAA,qBAAAF,EAAA,iBAAAQ,EAAA,mBAAAC,EAAA,gBAAAC,EAAA,iBAAAC,EAAA,kBAAAR,EAAA,kBAAAS,EAAA,kBAAAC,EAAA,kBAAAC,EAAA7yE,OAAAS,UAAAC,EAAAmyE,EAAAnyE,eAAAsxE,EAAAa,EAAAloD,QAA0crrB,GAAAD,QAAAwyE,IAC1+EiB,iBAAA,IAAAC,sBAAA,IAAAC,cAAA,MAAiEC,KAAA,SAAAlxE,EAAAzC,EAAAD,GACpE,QAAA6zE,GAAA7yE,EAAAkB,EAAAC,GAA6B,qBAAAnB,GAAA,MAAA4D,EAAwC,aAAA1C,EAAA,MAAAlB,EAAuB,QAAAmB,GAAU,uBAAAA,GAA0B,MAAAnB,GAAAZ,KAAA8B,EAAAC,GAAoB,wBAAAA,EAAAP,EAAAQ,GAA8B,MAAApB,GAAAZ,KAAA8B,EAAAC,EAAAP,EAAAQ,GAAwB,wBAAAD,EAAAP,EAAAQ,EAAA9B,GAAgC,MAAAU,GAAAZ,KAAA8B,EAAAC,EAAAP,EAAAQ,EAAA9B,GAA0B,wBAAA6B,EAAAP,EAAAQ,EAAA9B,EAAAJ,GAAkC,MAAAc,GAAAZ,KAAA8B,EAAAC,EAAAP,EAAAQ,EAAA9B,EAAAJ,IAA4B,kBAAkB,MAAAc,GAAAykB,MAAAvjB,EAAAsjB,YAA6B,QAAA5gB,GAAA5D,GAAqB,MAAAA,GAASf,EAAAD,QAAA6zE,OAC3YC,KAAA,SAAApxE,EAAAzC,EAAAD,GACJ,QAAAsyE,GAAApwE,GAAyB,QAAAA,GAAA,gBAAAA,GAA8B,QAAA6xE,GAAA7xE,EAAAxB,GAAwB,GAAAkB,GAAA,MAAAM,MAAA,GAAAA,EAAAxB,EAA0B,OAAAszE,GAAApyE,SAAA,GAA4B,QAAAmpB,GAAA7oB,GAAuB,MAAAkqB,GAAAlqB,IAAAywE,EAAAvyE,KAAA8B,IAAA+xE,EAAiD,QAAA7nD,GAAAlqB,GAAqB,GAAAxB,SAAAwB,EAAe,SAAAA,IAAA,UAAAxB,GAAA,YAAAA,GAAwC,QAAAszE,GAAA9xE,GAAqB,aAAAA,IAAA6oB,EAAA7oB,GAAAgyE,EAAAtmD,KAAAumD,EAAA/zE,KAAA8B,IAAAowE,EAAApwE,IAAAkyE,EAAAxmD,KAAA1rB,IAA0G,GAAA+xE,GAAA,oBAAAG,EAAA,8BAAAZ,EAAA7yE,OAAAS,UAAA+yE,EAAAzyE,SAAAN,UAAAkqB,SAAAjqB,EAAAmyE,EAAAnyE,eAAAsxE,EAAAa,EAAAloD,SAAA4oD,EAAA7oD,OAAA,IAAA8oD,EAAA/zE,KAAAiB,GAAAuqB,QAAA,sBAAyS,QAAAA,QAAA,sEAA4F3rB,GAAAD,QAAA+zE,OACzxBM,KAAA,SAAA3xE,EAAAzC,EAAAD,GACJ,QAAAs0E,GAAApyE,GAAwB,MAAAqyE,GAAAryE,IAAAb,EAAAjB,KAAA8B,EAAA,aAAAsyE,EAAAp0E,KAAA8B,EAAA,WAAAmqB,EAAAjsB,KAAA8B,IAAA0wE,GAAwI,QAAA6B,GAAAvyE,GAAwB,aAAAA,GAAAwyE,EAAAxyE,EAAAM,UAAAuoB,EAAA7oB,GAAmD,QAAAqyE,GAAAryE,GAA8B,MAAAowE,GAAApwE,IAAAuyE,EAAAvyE,GAAuC,QAAA6oB,GAAA7oB,GAAuB,GAAAN,GAAAwqB,EAAAlqB,GAAAmqB,EAAAjsB,KAAA8B,GAAA,EAA4C,OAAAN,IAAAqyE,GAAAryE,GAAA+yE,EAA6B,QAAAD,GAAAxyE,GAAqB,sBAAAA,OAAA,GAAAA,EAAA,MAAAA,GAAA0yE,EAA4D,QAAAxoD,GAAAlqB,GAAqB,GAAAN,SAAAM,EAAe,SAAAA,IAAA,UAAAN,GAAA,YAAAA,GAAwC,QAAA0wE,GAAApwE,GAAyB,QAAAA,GAAA,gBAAAA,GAA8B,GAAA0yE,GAAA,iBAAAhC,EAAA,qBAAAqB,EAAA,oBAAAU,EAAA,6BAAAnB,EAAA7yE,OAAAS,UAAAC,EAAAmyE,EAAAnyE,eAAAgrB,EAAAmnD,EAAAloD,SAAAkpD,EAAAhB,EAAAgB,oBAAoSv0E,GAAAD,QAAAs0E,OACp4BO,KAAA,SAAAnyE,EAAAzC,EAAAD,GACJ,QAAAsyE,GAAApwE,GAAyB,QAAAA,GAAA,gBAAAA,GAA4G,QAAAwyE,GAAAxyE,GAAqB,sBAAAA,OAAA,GAAAA,EAAA,MAAAA,GAAA0yE,EAA4D,QAAA7pD,GAAA7oB,GAAuB,MAAAkqB,GAAAlqB,IAAAywE,EAAAvyE,KAAA8B,IAAA+xE,EAAiD,QAAA7nD,GAAAlqB,GAAqB,GAAAC,SAAAD,EAAe,SAAAA,IAAA,UAAAC,GAAA,YAAAA,GAAwC,QAAA6xE,GAAA9xE,GAAqB,aAAAA,IAAA6oB,EAAA7oB,GAAAgyE,EAAAtmD,KAAAumD,EAAA/zE,KAAA8B,IAAAowE,EAAApwE,IAAAkyE,EAAAxmD,KAAA1rB,IAA0G,GAAA+xE,GAAA,oBAAAG,EAAA,8BAAAZ,EAAA7yE,OAAAS,UAAA+yE,EAAAzyE,SAAAN,UAAAkqB,SAAAjqB,EAAAmyE,EAAAnyE,eAAAsxE,EAAAa,EAAAloD,SAAA4oD,EAAA7oD,OAAA,IAAA8oD,EAAA/zE,KAAAiB,GAAAuqB,QAAA,sBAAmU,QAAAA,QAAA,uEAAAkpD,EAArvB,SAAA5yE,EAAAC,GAAwB,GAAAP,GAAA,MAAAM,MAAA,GAAAA,EAAAC,EAA0B,OAAA6xE,GAAApyE,SAAA,IAAmsB6F,MAAA,WAAAmtE,EAAA,iBAAAltE,EAAAotE,GAAA,SAAA5yE,GAA0M,MAAAowE,GAAApwE,IAAAwyE,EAAAxyE,EAAAM,SAA7gB,kBAA6gBmwE,EAAAvyE,KAAA8B,GAA2EjC,GAAAD,QAAA0H,OAC7jCqtE,KAAA,SAAAryE,EAAAzC,EAAAD,GACJ,QAAA4jE,GAAAvhE,EAAAlC,EAAAD,EAAA0B,GAA0B1B,EAAA,kBAAAA,GAAA2zE,EAAA3zE,EAAA0B,EAAA,SAAkD,IAAAL,GAAArB,IAAAmC,EAAAlC,OAAA,EAAsB,iBAAAoB,EAAAixE,EAAAnwE,EAAAlC,EAAAD,KAAAqB,EAAyC,GAAAixE,GAAA9vE,EAAA,uBAAAmxE,EAAAnxE,EAAA,uBAA4FzC,GAAAD,QAAA4jE,IACpOoR,sBAAA,IAAAC,uBAAA,MAAqDC,KAAA,SAAAxyE,EAAAzC,EAAAD,GACxD,QAAA00E,GAAAryE,GAAqB,sBAAAA,OAAA,GAAAA,EAAA,MAAAA,GAAAuyE,EAA4D,QAAAtC,GAAAjwE,GAAyB,QAAAA,GAAA,gBAAAA,GAA8B,QAAAywE,GAAAzwE,GAAyB,MAAAiwE,GAAAjwE,IAAAqyE,EAAAryE,EAAAG,WAAA2yE,EAAA9oD,EAAAjsB,KAAAiC,IAAqF,GAAAuyE,GAAA,iBAAAO,IAAuwBA,GAAvwB,yBAAuwBA,EAAvwB,yBAAuwBA,EAAvwB,sBAAuwBA,EAAvwB,uBAAuwBA,EAAvwB,uBAAuwBA,EAAvwB,uBAAuwBA,EAAvwB,8BAAuwBA,EAAvwB,wBAAuwBA,EAAvwB,yBAAuwB,EAAAA,EAAvwB,sBAAuwBA,EAAvwB,kBAAuwBA,EAAvwB,wBAAuwBA,EAAvwB,oBAAuwBA,EAAvwB,qBAAuwBA,EAAvwB,iBAAuwBA,EAAvwB,kBAAuwBA,EAAvwB,qBAAuwBA,EAAvwB,gBAAuwBA,EAAvwB,mBAAuwBA,EAAvwB,mBAAuwBA,EAAvwB,mBAAuwBA,EAAvwB,gBAAuwBA,EAAvwB,mBAAuwBA,EAAvwB,qBAAuwB,CAAinB,IAAA3B,GAAA7yE,OAAAS,UAAAirB,EAAAmnD,EAAAloD,QAAqErrB,GAAAD,QAAA8yE,OAC/qDsC,KAAA,SAAA1yE,EAAAzC,EAAAD,GACoE,QAAAy0E,GAAA7yE,GAAwB,aAAAA,GAAA8yE,EAAAW,EAAAzzE,IAAuC,QAAA0zE,GAAA1zE,EAAAM,GAAsB,MAAAN,GAAA,gBAAAA,IAAA2zE,EAAA3nD,KAAAhsB,OAAA,EAAAM,EAAA,MAAAA,EAAA0yE,EAAA1yE,EAAAN,GAAA,GAAAA,EAAA,MAAAA,EAAAM,EAAmG,QAAAwyE,GAAA9yE,GAAqB,sBAAAA,OAAA,GAAAA,EAAA,MAAAA,GAAAgzE,EAA4D,QAAAY,GAAA5zE,GAAqB,OAAAM,GAAAuzE,EAAA7zE,GAAAO,EAAAD,EAAAM,OAAAxB,EAAAmB,GAAAP,EAAAY,OAAAjB,IAAAP,GAAA0zE,EAAA1zE,KAAA0G,EAAA9F,IAAA0yE,EAAA1yE,IAAAlB,GAAA,EAAAR,OAAwGQ,EAAAyB,GAAM,CAAE,GAAAC,GAAAF,EAAAxB,IAAWa,GAAA+zE,EAAAlzE,EAAApB,IAAAK,EAAAjB,KAAAwB,EAAAQ,KAAAlC,EAAA4I,KAAA1G,GAAuD,MAAAlC,GAAS,QAAAksB,GAAAxqB,GAAqB,GAAAM,SAAAN,EAAe,SAAAA,IAAA,UAAAM,GAAA,YAAAA,GAAwC,QAAAuzE,GAAA7zE,GAAmB,SAAAA,EAAA,QAAoBwqB,GAAAxqB,OAAAjB,OAAAiB,GAA2B,IAAAM,GAAAN,EAAAY,MAAeN,MAAAwyE,EAAAxyE,KAAAwF,EAAA9F,IAAA0yE,EAAA1yE,KAAAM,GAAA,CAAqD,QAAAC,GAAAP,EAAA8nB,YAAA1oB,GAAA,EAAAO,EAAA,kBAAAY,MAAAf,YAAAQ,EAAAlB,EAAA+G,MAAAvF,GAAAhC,EAAAgC,EAAA,IAAsFlB,EAAAkB,GAAMxB,EAAAM,KAAA,EAAW,QAAAoB,KAAAR,GAAA1B,GAAAo1E,EAAAlzE,EAAAF,IAAA,eAAAE,IAAAb,IAAAF,EAAAjB,KAAAwB,EAAAQ,KAAA1B,EAAAoI,KAAA1G,EAA4F,OAAA1B,GAAS,GAAAqzE,GAAArxE,EAAA,qBAAA4xE,EAAA5xE,EAAA,sBAAAgF,EAAAhF,EAAA,kBAAA6yE,EAAA,QAAA/B,EAAA7yE,OAAAS,UAAAC,EAAAmyE,EAAAnyE,eAAAq0E,EAAA3B,EAAApzE,OAAA,QAAAi0E,EAAA,iBAAAS,EAA/7B,SAAAzzE,GAAyB,gBAAAM,GAAmB,aAAAA,MAAA,GAAAA,EAAAN,KAAm5B,UAAAkY,EAAA47D,EAAA,SAAA9zE,GAAkV,GAAAM,GAAA,MAAAN,MAAA,GAAAA,EAAA8nB,WAAmC,yBAAAxnB,MAAAd,YAAAQ,GAAA,kBAAAA,IAAA6yE,EAAA7yE,GAAA4zE,EAAA5zE,GAAAwqB,EAAAxqB,GAAA8zE,EAAA9zE,OAA2H4zE,CAAUv1E,GAAAD,QAAA8Z,IACt7C67D,oBAAA,IAAAC,qBAAA,IAAAnC,iBAAA,MAAsEoC,KAAA,SAAAnzE,EAAAzC,EAAAD,GACzE,YAAaC,GAAAD,QAAA0C,EAAA,eACVozE,YAAA,MAAgBC,KAAA,SAAArzE,EAAAzC,EAAAD,GACnBC,EAAAD,SAAgBg2E,SAAA,EAAAC,OAAsBvmE,SAAWwmE,UAAA,EAAA7nE,KAAA,OAAAyhB,QAAA,IAA2CtvB,MAAS6N,KAAA,UAAgB8nE,UAAa9nE,KAAA,KAAW+6B,QAAW/6B,KAAA,QAAA0C,MAAA,UAAgCsW,MAAShZ,KAAA,UAAgBg0B,SAAYh0B,KAAA,SAAA4iB,QAAA,EAAAmlD,OAAA,IAAAC,MAAA,WAA2DntC,OAAU76B,KAAA,SAAA4iB,QAAA,EAAAolD,MAAA,WAA8C/9B,OAAUjqC,KAAA,SAAe0iB,SAAYmlD,UAAA,EAAA7nE,KAAA,WAAiC02D,QAAW12D,KAAA,UAAgBszC,QAAWtzC,KAAA,UAAgB62D,YAAe72D,KAAA,cAAoBT,QAAWsoE,UAAA,EAAA7nE,KAAA,QAAA0C,MAAA,UAAgDggB,SAAY8jB,KAAKxmC,KAAA,WAAiBqJ,QAAA,8EAAA4+D,aAAwGjoE,MAAQ6nE,UAAA,EAAA7nE,KAAA,OAAAyhB,QAAwC+oC,UAAW5T,YAAczD,KAAQnzC,KAAA,UAAgBqI,OAAUrI,KAAA,QAAA0C,MAAA,UAAgCuyB,QAAWj1B,KAAA,QAAA0C,MAAA,SAAAvO,OAAA,EAAAyuB,UAAA,2BAAiFmZ,SAAY/7B,KAAA,SAAA4iB,QAAA,GAA4BoZ,SAAYh8B,KAAA,SAAA4iB,QAAA,IAA6BgR,UAAa5zB,KAAA,SAAA4iB,QAAA,IAAAolD,MAAA,UAA+CxhC,KAAMxmC,KAAA,MAAYkoE,gBAAmBloE,MAAQ6nE,UAAA,EAAA7nE,KAAA,OAAAyhB,QAAwCgpC,aAAc/sD,MAASsC,KAAA,KAAWg8B,SAAYh8B,KAAA,SAAA4iB,QAAA,IAA6BjnB,QAAWqE,KAAA,SAAA4iB,QAAA,IAAAulD,QAAA,IAAAC,QAAA,GAAwDhgE,WAAcpI,KAAA,SAAA4iB,QAAA,MAAgCnJ,SAAYzZ,KAAA,UAAA4iB,SAAA,GAAiCwgC,eAAkBpjD,KAAA,SAAA4iB,QAAA,GAAAwlD,QAAA,GAAyCjlB,gBAAmBnjD,KAAA,WAAiBqoE,cAAiBroE,MAAQ6nE,UAAA,EAAA7nE,KAAA,OAAAyhB,QAAwCipC,WAAY4H,MAASuV,UAAA,EAAA7nE,KAAA,QAAA0C,MAAA,UAAgDxB,aAAgB2mE,UAAA,EAAA7nE,KAAA,QAAA7L,OAAA,EAAAuO,OAAmD1C,KAAA,QAAA7L,OAAA,EAAAuO,MAAA,YAA6C4lE,cAAiBtoE,MAAQ6nE,UAAA,EAAA7nE,KAAA,OAAAyhB,QAAwC6wB,WAAYa,KAAQ00B,UAAA,EAAA7nE,KAAA,UAAgCkB,aAAgB2mE,UAAA,EAAA7nE,KAAA,QAAA7L,OAAA,EAAAuO,OAAmD1C,KAAA,QAAA7L,OAAA,EAAAuO,MAAA,YAA6C6lE,eAAkBvoE,MAAQ6nE,UAAA,EAAA7nE,KAAA,OAAAyhB,QAAwCxlB,YAAaiF,aAAgB2mE,UAAA,EAAA7nE,KAAA,QAAA7L,OAAA,EAAAuO,OAAmD1C,KAAA,QAAA7L,OAAA,EAAAuO,MAAA,WAA4Cm+C,SAAY7gD,KAAA,UAAA4iB,QAAA,QAAkC3mB,QAAW+D,KAAA,SAAA6nE,UAAA,GAAgC7mB,aAAgB6mB,UAAA,EAAA7nE,KAAA,OAAAyhB,QAAwC+mD,QAAOC,SAAWC,wBAAwBC,aAAet0C,OAAUt6B,IAAMiG,KAAA,SAAA6nE,UAAA,GAAgC7nE,MAASA,KAAA,OAAAyhB,QAAwBhG,QAAS+T,QAAUinB,UAAYC,UAAYC,oBAAoBC,UAAYC,gBAAkBixB,UAAa9nE,KAAA,KAAWjF,KAAQiF,KAAA,UAAgBqJ,QAAWrJ,KAAA,UAAgB4oE,gBAAiB5oE,KAAA,UAAgB+7B,SAAY/7B,KAAA,SAAAooE,QAAA,EAAAD,QAAA,IAAyCnsC,SAAYh8B,KAAA,SAAAooE,QAAA,EAAAD,QAAA,IAAyCl5D,QAAWjP,KAAA,UAAgBipB,QAAWjpB,KAAA,UAAgB+hC,OAAU/hC,KAAA,SAAe6oE,WAAY7oE,KAAA,UAAgBipB,QAAA,yHAAA6/C,mBAAyJtU,YAAcx0D,KAAA,OAAAyhB,QAAwBsnD,WAAYC,SAAWpmD,QAAA,YAAsBqmD,aAAgBzU,YAAcx0D,KAAA,OAAAyhB,QAAwBsnD,WAAYC,SAAWpmD,QAAA,YAAsBsmD,eAAkB1U,YAAcx0D,KAAA,OAAAyhB,QAAwBsnD,WAAYC,SAAWpmD,QAAA,YAAsBumD,yBAA0B3U,YAAcx0D,KAAA,OAAAyhB,QAAwBsnD,WAAYC,SAAWpmD,QAAA,YAAsBwmD,aAAgBC,YAAYrpE,KAAA,OAAAw5D,SAAA,qBAAA8P,iBAAA,EAAA7nD,QAA6E8nD,QAAShxE,SAAWixE,WAAa5mD,QAAA,QAAkB6mD,aAAczpE,KAAA,OAAAw5D,SAAA,qBAAA8P,iBAAA,EAAAI,qBAAA,EAAAjoD,QAAsGkoD,SAAUpxE,SAAWqxE,UAAYhnD,QAAA,SAAmBinD,oBAAqB7pE,KAAA,SAAA4iB,QAAA,EAAA42C,SAAA,eAAA8P,iBAAA,EAAAQ,WAAwFL,YAAA,WAAsBM,oBAAqB/pE,KAAA,SAAA4iB,QAAA,KAAA42C,SAAA,eAAA8P,iBAAA,EAAAQ,WAA2FL,YAAA,WAAsBjV,YAAex0D,KAAA,OAAAyhB,QAAwBsnD,WAAYC,SAAWpmD,QAAA,YAAsBonD,eAAkBC,oBAAoBjqE,KAAA,OAAAw5D,SAAA,qBAAA8P,iBAAA,EAAA7nD,QAA6ElY,SAAUimB,SAAW5M,QAAA,SAAmBsnD,kBAAmBlqE,KAAA,SAAA4iB,QAAA,IAAAwlD,QAAA,EAAA5O,SAAA,eAAA8P,iBAAA,EAAAtB,MAAA,SAAA8B,WAAuHG,mBAAA,UAA4BE,sBAAuBnqE,KAAA,UAAAw5D,SAAA,qBAAA8P,iBAAA,EAAA1mD,SAAA,GAAsFwnD,sBAAuBpqE,KAAA,UAAAw5D,SAAA,qBAAA8P,iBAAA,EAAA1mD,SAAA,EAAAknD,UAAA,eAAgHO,yBAA0BrqE,KAAA,UAAAw5D,SAAA,qBAAA8P,iBAAA,EAAA1mD,SAAA,EAAAknD,UAAA,eAAgHQ,iBAAkBtqE,KAAA,UAAAw5D,SAAA,qBAAA8P,iBAAA,EAAA1mD,SAAA,EAAAknD,UAAA,4BAA6HS,2BAA4BvqE,KAAA,OAAAw5D,SAAA,qBAAA8P,iBAAA,EAAA7nD,QAA6E7b,OAAQ6xC,YAAc+yB,SAAW5nD,QAAA,OAAAknD,UAAA,eAA4CW,aAAczqE,KAAA,SAAA4iB,QAAA,EAAAwlD,QAAA,EAAA5O,SAAA,eAAA8P,iBAAA,EAAAI,qBAAA,EAAA1B,MAAA,mCAAA8B,UAAA,eAAqLY,iBAAkB1qE,KAAA,OAAAw5D,SAAA,qBAAA8P,iBAAA,EAAA7nD,QAA6EunD,QAAS3uE,SAAWC,UAAYqwE,SAAW/nD,QAAA,OAAAknD,UAAA,4BAAyDc,yBAA0B5qE,KAAA,QAAA0C,MAAA,SAAAvO,OAAA,EAAAyuB,SAAA,SAAAolD,MAAA,SAAAxO,SAAA,eAAA8P,iBAAA,EAAAQ,UAAA,2BAAsKY,iBAAA,4BAA4CG,cAAe7qE,KAAA,SAAAw5D,SAAA,qBAAA8P,iBAAA,EAAAI,qBAAA,EAAAoB,QAAA,GAA4GC,eAAgB/qE,KAAA,SAAA4iB,QAAA,EAAAmlD,OAAA,IAAAvO,SAAA,eAAA8P,iBAAA,EAAAI,qBAAA,EAAA1B,MAAA,UAAA8B,UAAA,eAA6JkB,gBAAiBhrE,KAAA,SAAA4iB,QAAA,EAAAwlD,QAAA,EAAA5O,SAAA,eAAA8P,iBAAA,EAAAtB,MAAA,SAAA8B,UAAA,eAAkImB,qBAAsBjrE,KAAA,UAAAw5D,SAAA,qBAAA8P,iBAAA,EAAA1mD,SAAA,EAAAknD,UAAA,cAAgHS,0BAAA,QAAkCN,mBAAA,UAA4BiB,eAAgBlrE,KAAA,QAAA0C,MAAA,SAAAvO,OAAA,EAAAyuB,SAAA,KAAA42C,SAAA,eAAA8P,iBAAA,EAAAI,qBAAA,EAAAI,UAAA,eAA6JqB,eAAgBnrE,KAAA,OAAAw5D,SAAA,qBAAA8P,iBAAA,EAAAI,qBAAA,EAAAjoD,QAAsGsZ,UAAW4Y,QAAUy3B,SAAWx3B,OAASy3B,UAAYC,cAAcC,eAAeC,iBAAiBC,mBAAmB7oD,QAAA,SAAAknD,UAAA,eAA8C4B,wBAAyB1rE,KAAA,OAAAw5D,SAAA,qBAAA8P,iBAAA,EAAA7nD,QAA6E7b,OAAQ6xC,YAAc+yB,SAAW5nD,QAAA,OAAAknD,UAAA,eAA4C6B,wBAAyB3rE,KAAA,OAAAw5D,SAAA,qBAAA8P,iBAAA,EAAA7nD,QAA6E7b,OAAQ6xC,YAAc+yB,SAAW5nD,QAAA,OAAAknD,UAAA,eAA4C8B,2BAA4B5rE,KAAA,OAAAw5D,SAAA,qBAAA8P,iBAAA,EAAA7nD,QAA6E7b,OAAQ6xC,YAAc+yB,SAAW5nD,QAAA,OAAAknD,UAAA,eAA4C+B,cAAe7rE,KAAA,SAAAw5D,SAAA,qBAAA8P,iBAAA,EAAAI,qBAAA,EAAA9mD,QAAA,GAAAkoD,QAAA,GAAyHgB,aAAc9rE,KAAA,QAAA0C,MAAA,SAAA82D,SAAA,qBAAA8P,iBAAA,EAAA1mD,SAAA,gDAAAknD,UAAA,eAA0KiC,aAAc/rE,KAAA,SAAA4iB,QAAA,GAAAwlD,QAAA,EAAAJ,MAAA,SAAAxO,SAAA,eAAA8P,iBAAA,EAAAI,qBAAA,EAAAI,UAAA,eAA4JkC,kBAAmBhsE,KAAA,SAAA4iB,QAAA,GAAAwlD,QAAA,EAAAJ,MAAA,MAAAxO,SAAA,eAAA8P,iBAAA,EAAAI,qBAAA,EAAAI,UAAA,eAAyJmC,oBAAqBjsE,KAAA,SAAA4iB,QAAA,IAAAolD,MAAA,MAAAxO,SAAA,eAAA8P,iBAAA,EAAAQ,UAAA,eAAqHoC,uBAAwBlsE,KAAA,SAAA4iB,QAAA,EAAAolD,MAAA,MAAAxO,SAAA,eAAA8P,iBAAA,EAAAI,qBAAA,EAAAI,UAAA,eAA4IqC,gBAAiBnsE,KAAA,OAAAw5D,SAAA,qBAAA8P,iBAAA,EAAAI,qBAAA,EAAAjoD,QAAsGkyB,QAAS5Y,UAAYqwC,UAAYxoD,QAAA,SAAAknD,UAAA,eAA8CsC,eAAgBpsE,KAAA,OAAAw5D,SAAA,qBAAA8P,iBAAA,EAAAI,qBAAA,EAAAjoD,QAAsGsZ,UAAW4Y,QAAUy3B,SAAWx3B,OAASy3B,UAAYC,cAAcC,eAAeC,iBAAiBC,mBAAmB7oD,QAAA,SAAAknD,UAAA,eAA8CuC,kBAAmBrsE,KAAA,SAAA4iB,QAAA,GAAAolD,MAAA,UAAAxO,SAAA,eAAA8P,iBAAA,EAAAQ,UAAA,cAAwHG,mBAAA,UAA4BqC,eAAgBtsE,KAAA,SAAA4iB,QAAA,EAAAmlD,OAAA,IAAAC,MAAA,UAAAxO,SAAA,eAAA8P,iBAAA,EAAAI,qBAAA,EAAAI,UAAA,eAA6JyC,gBAAiBvsE,KAAA,SAAA4iB,QAAA,EAAAwlD,QAAA,EAAAJ,MAAA,SAAAxO,SAAA,eAAA8P,iBAAA,EAAAQ,UAAA,eAAkI0C,qBAAsBxsE,KAAA,UAAAw5D,SAAA,qBAAA8P,iBAAA,EAAA1mD,SAAA,EAAAknD,UAAA,cAA+G8B,0BAAA,QAAkC3B,mBAAA,UAA4BwC,kBAAmBzsE,KAAA,OAAAw5D,SAAA,qBAAA8P,iBAAA,EAAAI,qBAAA,EAAAjoD,QAAsGunD,QAAS0D,aAAeC,cAAgB/pD,QAAA,OAAAknD,UAAA,eAA4C8C,eAAgB5sE,KAAA,QAAA0C,MAAA,SAAAslE,MAAA,MAAAxO,SAAA,eAAA8P,iBAAA,EAAAI,qBAAA,EAAAv1E,OAAA,EAAAyuB,SAAA,KAAAknD,UAAA,eAA2K+C,sBAAuB7sE,KAAA,UAAAw5D,SAAA,qBAAA8P,iBAAA,EAAA1mD,SAAA,EAAAknD,UAAA,eAAgHgD,yBAA0B9sE,KAAA,UAAAw5D,SAAA,qBAAA8P,iBAAA,EAAA1mD,SAAA,EAAAknD,UAAA,eAAgHiD,iBAAkB/sE,KAAA,UAAAw5D,SAAA,qBAAA8P,iBAAA,EAAA1mD,SAAA,EAAAknD,UAAA,4BAA6HtV,YAAex0D,KAAA,OAAAyhB,QAAwBsnD,WAAYC,SAAWpmD,QAAA,YAAsBoqD,eAAkBxY,YAAcx0D,KAAA,OAAAyhB,QAAwBsnD,WAAYC,SAAWpmD,QAAA,YAAsB3T,QAAWjP,KAAA,QAAA0C,MAAA,KAA2BuqE,iBAAoBjtE,KAAA,OAAAyhB,QAAwByrD,QAAOC,QAAQhmC,OAAOimC,QAAQnmC,OAAOomC,QAAQC,MAAQC,SAASC,OAASC,OAASzE,QAAU3b,OAASqgB,YAAYC,eAAkB3tE,KAAA,OAAAyhB,QAAwBzqB,SAAU42E,cAAgBC,aAAerU,UAAaD,OAASv5D,KAAA,QAAA0C,MAAA,iBAAuCkoB,MAAS5qB,KAAA,SAAA4iB,QAAA,EAAAwlD,QAAA,GAAwCt1E,UAAakN,KAAA,SAAA4iB,QAAA,SAAkC5iB,MAASA,KAAA,OAAAyhB,QAAwBlrB,YAAau3E,eAAiBC,YAAcC,gBAAkBprD,QAAA,eAAyBk3C,YAAe95D,KAAA,OAAAyhB,QAAwBwsD,OAAQjV,OAASE,QAAUt2C,QAAA,OAAiBA,SAAY5iB,KAAA,IAAA6nE,UAAA,IAA6BqG,eAAkBluE,KAAA,QAAAooE,QAAA,EAAAD,QAAA,GAAAzlE,OAAA,kBAAAvO,OAAA,GAA8E81C,OAAUlb,QAAU/uB,KAAA,OAAA4iB,QAAA,WAAAnB,QAA6C7b,OAAQ6xC,aAAeof,YAAA,EAAAyS,iBAAA,EAAAI,qBAAA,EAAAlQ,SAAA,sBAAmGrvB,UAAanqC,KAAA,QAAA4iB,SAAA,aAAAzuB,OAAA,EAAAuO,MAAA,SAAAm0D,YAAA,EAAA2C,SAAA,eAAA8P,iBAAA,EAAAI,qBAAA,GAA8J/yC,OAAU32B,KAAA,QAAA4iB,QAAA,UAAA42C,SAAA,eAAA8P,iBAAA,EAAAI,qBAAA,EAAA7S,YAAA,GAA8HtsB,WAAcvqC,KAAA,SAAA4iB,QAAA,GAAAwlD,QAAA,EAAAD,QAAA,EAAA3O,SAAA,eAAA8P,iBAAA,EAAAI,qBAAA,EAAA7S,YAAA,IAAkJ90B,OAAA,kHAAAosC,YAA0IC,kBAAkBpuE,KAAA,UAAAw5D,SAAA,qBAAA8P,iBAAA,EAAA1mD,SAAA,GAAqFyrD,gBAAiBruE,KAAA,SAAAw5D,SAAA,eAAA8P,iBAAA,EAAAI,qBAAA,EAAA9mD,QAAA,EAAAwlD,QAAA,EAAAD,QAAA,EAAAtR,YAAA,GAA8IyX,cAAetuE,KAAA,QAAA4iB,QAAA,UAAA42C,SAAA,eAAA8P,iBAAA,EAAAI,qBAAA,EAAA7S,YAAA,EAAAiT,WAA0I9jC,IAAA,kBAAqBuoC,sBAAuBvuE,KAAA,QAAAw5D,SAAA,eAAA8P,iBAAA,EAAAI,qBAAA,EAAA7S,YAAA,EAAAiT,WAAsH9jC,IAAA,iBAAqBooC,kBAAA,KAAwBI,kBAAmBxuE,KAAA,QAAA0C,MAAA,SAAAvO,OAAA,EAAAyuB,SAAA,KAAA42C,SAAA,eAAA8P,iBAAA,EAAAzS,YAAA,EAAAmR,MAAA,UAA6IyG,yBAA0BzuE,KAAA,OAAAw5D,SAAA,qBAAA8P,iBAAA,EAAA7nD,QAA6E7b,OAAQ6xC,aAAe70B,QAAA,MAAAknD,UAAA,mBAA+C4E,gBAAiB1uE,KAAA,SAAAw5D,SAAA,qBAAA8P,iBAAA,EAAAzS,YAAA,IAAwF8X,wBAAyBC,0BAA0B5uE,KAAA,SAAAw5D,SAAA,eAAA8P,iBAAA,EAAAI,qBAAA,EAAA9mD,QAAA,EAAAwlD,QAAA,EAAAD,QAAA,EAAAtR,YAAA,GAA+IgY,wBAAyB7uE,KAAA,QAAA4iB,QAAA,UAAA42C,SAAA,eAAA8P,iBAAA,EAAAI,qBAAA,EAAA7S,YAAA,EAAAiT,WAA0I9jC,IAAA,4BAA+B8oC,4BAA6B9uE,KAAA,QAAA0C,MAAA,SAAAvO,OAAA,EAAAyuB,SAAA,KAAA42C,SAAA,eAAA8P,iBAAA,EAAAzS,YAAA,EAAAmR,MAAA,UAA6I+G,mCAAoC/uE,KAAA,OAAAw5D,SAAA,qBAAA8P,iBAAA,EAAA7nD,QAA6E7b,OAAQ6xC,aAAe70B,QAAA,MAAAknD,UAAA,6BAAyDkF,0BAA2BhvE,KAAA,SAAAw5D,SAAA,qBAAA8P,iBAAA,EAAAzS,YAAA,GAAuFoY,yBAA0BjvE,KAAA,SAAAw5D,SAAA,eAAA8P,iBAAA,EAAAI,qBAAA,EAAA9mD,QAAA,EAAAwlD,QAAA,EAAAJ,MAAA,SAAAnR,YAAA,GAAmJqY,uBAAwBlvE,KAAA,SAAAw5D,SAAA,eAAA8P,iBAAA,EAAAI,qBAAA,EAAA9mD,QAAA,EAAAwlD,QAAA,EAAAD,QAAA,MAAAH,MAAA,SAAAnR,YAAA,EAAAiT,UAAA,2BAAyMqF,YAAeC,gBAAgBpvE,KAAA,SAAAw5D,SAAA,eAAA8P,iBAAA,EAAAI,qBAAA,EAAA9mD,QAAA,EAAAwlD,QAAA,EAAAD,QAAA,EAAAtR,YAAA,GAA8IwY,cAAervE,KAAA,QAAA4iB,QAAA,UAAA42C,SAAA,eAAA8P,iBAAA,EAAAI,qBAAA,EAAA7S,YAAA,EAAAiT,WAA0I9jC,IAAA,kBAAqBspC,kBAAmBtvE,KAAA,QAAA0C,MAAA,SAAAvO,OAAA,EAAAyuB,SAAA,KAAA42C,SAAA,eAAA8P,iBAAA,EAAAzS,YAAA,EAAAmR,MAAA,UAA6IuH,yBAA0BvvE,KAAA,OAAAw5D,SAAA,qBAAA8P,iBAAA,EAAA7nD,QAA6E7b,OAAQ6xC,aAAe70B,QAAA,MAAAknD,UAAA,mBAA+C0F,cAAexvE,KAAA,SAAA4iB,QAAA,EAAAwlD,QAAA,EAAA5O,SAAA,eAAA8P,iBAAA,EAAAI,qBAAA,EAAA7S,YAAA,EAAAmR,MAAA,UAAmJyH,kBAAmBzvE,KAAA,SAAA4iB,QAAA,EAAAwlD,QAAA,EAAA5O,SAAA,eAAA8P,iBAAA,EAAAI,qBAAA,EAAA7S,YAAA,EAAAmR,MAAA,UAAmJ0H,eAAgB1vE,KAAA,SAAA4iB,QAAA,EAAA42C,SAAA,eAAA8P,iBAAA,EAAAI,qBAAA,EAAA7S,YAAA,EAAAmR,MAAA,UAAuI2H,aAAc3vE,KAAA,SAAA4iB,QAAA,EAAAwlD,QAAA,EAAA5O,SAAA,eAAA8P,iBAAA,EAAAI,qBAAA,EAAA7S,YAAA,EAAAmR,MAAA,UAAmJ4H,kBAAmB5vE,KAAA,QAAA0C,MAAA,SAAA82D,SAAA,qBAAA8P,iBAAA,EAAAlB,QAAA,EAAAvR,YAAA,EAAAmR,MAAA,cAAA8B,WAAsJ9jC,IAAA,kBAAqB6pC,gBAAiB7vE,KAAA,SAAAw5D,SAAA,qBAAA8P,iBAAA,EAAAzS,YAAA,IAAwFiZ,cAAiBC,iBAAiB/vE,KAAA,SAAA4iB,QAAA,EAAAwlD,QAAA,EAAA5O,SAAA,eAAA8P,iBAAA,EAAAI,qBAAA,EAAA7S,YAAA,EAAAmR,MAAA,UAAmJgI,gBAAiBhwE,KAAA,QAAA4iB,QAAA,UAAA42C,SAAA,eAAA8P,iBAAA,EAAAI,qBAAA,EAAA7S,YAAA,GAA6HoZ,eAAgBjwE,KAAA,SAAA4iB,QAAA,EAAA42C,SAAA,eAAA8P,iBAAA,EAAAI,qBAAA,EAAA7S,YAAA,GAAsHqZ,kBAAmBlwE,KAAA,SAAA4iB,QAAA,EAAAwlD,QAAA,EAAAD,QAAA,EAAA3O,SAAA,eAAA8P,iBAAA,EAAAI,qBAAA,EAAA7S,YAAA,GAA8IsZ,oBAAqBnwE,KAAA,QAAA0C,MAAA,SAAAvO,OAAA,EAAAyuB,SAAA,KAAA42C,SAAA,eAAA8P,iBAAA,EAAAzS,YAAA,EAAAmR,MAAA,UAA6IoI,2BAA4BpwE,KAAA,OAAAw5D,SAAA,qBAAA8P,iBAAA,EAAA7nD,QAA6E7b,OAAQ6xC,aAAe70B,QAAA,MAAAknD,UAAA,qBAAiDuG,sBAAuBrwE,KAAA,OAAAw5D,SAAA,qBAAA8P,iBAAA,EAAA7nD,QAA6E7b,OAAQ6xC,aAAe70B,QAAA,OAAiB0tD,0BAA2BtwE,KAAA,OAAAw5D,SAAA,qBAAA8P,iBAAA,EAAA7nD,QAA6E7b,OAAQ6xC,aAAe70B,QAAA,YAAsB2tD,uBAAwBvwE,KAAA,SAAA4iB,QAAA,EAAAwlD,QAAA,EAAA5O,SAAA,eAAA8P,iBAAA,EAAAI,qBAAA,EAAA7S,YAAA,EAAAmR,MAAA,UAAmJwI,uBAAwBxwE,KAAA,QAAA4iB,QAAA,UAAA42C,SAAA,eAAA8P,iBAAA,EAAAI,qBAAA,EAAA7S,YAAA,GAA6H4Z,yBAA0BzwE,KAAA,SAAA4iB,QAAA,EAAAwlD,QAAA,EAAAD,QAAA,EAAA3O,SAAA,eAAA8P,iBAAA,EAAAI,qBAAA,EAAA7S,YAAA,IAA+I6Z,cAAiBC,gBAAgB3wE,KAAA,SAAA4iB,QAAA,EAAAwlD,QAAA,EAAAD,QAAA,EAAA3O,SAAA,eAAA8P,iBAAA,EAAAI,qBAAA,EAAA7S,YAAA,EAAAiT,UAAA,eAAwK8G,cAAe5wE,KAAA,QAAA4iB,QAAA,UAAA42C,SAAA,eAAA8P,iBAAA,EAAAI,qBAAA,EAAA7S,YAAA,EAAAiT,UAAA,eAAuJ+G,mBAAoB7wE,KAAA,QAAA4iB,QAAA,mBAAA42C,SAAA,eAAA8P,iBAAA,EAAAI,qBAAA,EAAA7S,YAAA,EAAAiT,UAAA,eAAgKgH,mBAAoB9wE,KAAA,SAAA4iB,QAAA,EAAAwlD,QAAA,EAAA5O,SAAA,eAAA8P,iBAAA,EAAAI,qBAAA,EAAA7S,YAAA,EAAAmR,MAAA,SAAA8B,UAAA,eAA6KiH,kBAAmB/wE,KAAA,SAAA4iB,QAAA,EAAAwlD,QAAA,EAAA5O,SAAA,eAAA8P,iBAAA,EAAAI,qBAAA,EAAA7S,YAAA,EAAAmR,MAAA,SAAA8B,UAAA,eAA6KkH,kBAAmBhxE,KAAA,QAAA0C,MAAA,SAAAvO,OAAA,EAAAyuB,SAAA,KAAA42C,SAAA,eAAA8P,iBAAA,EAAAzS,YAAA,EAAAmR,MAAA,SAAA8B,UAAA,eAAuKmH,yBAA0BjxE,KAAA,OAAAw5D,SAAA,qBAAA8P,iBAAA,EAAA7nD,QAA6E7b,OAAQ6xC,aAAe70B,QAAA,MAAAknD,UAAA,gCAA4DoH,gBAAiBlxE,KAAA,SAAA4iB,QAAA,EAAAwlD,QAAA,EAAAD,QAAA,EAAA3O,SAAA,eAAA8P,iBAAA,EAAAI,qBAAA,EAAA7S,YAAA,EAAAiT,UAAA,eAAwKqH,cAAenxE,KAAA,QAAA4iB,QAAA,UAAA42C,SAAA,eAAA8P,iBAAA,EAAAI,qBAAA,EAAA7S,YAAA,EAAAiT,UAAA,eAAuJsH,mBAAoBpxE,KAAA,QAAA4iB,QAAA,mBAAA42C,SAAA,eAAA8P,iBAAA,EAAAI,qBAAA,EAAA7S,YAAA,EAAAiT,UAAA,eAAgKuH,mBAAoBrxE,KAAA,SAAA4iB,QAAA,EAAAwlD,QAAA,EAAA5O,SAAA,eAAA8P,iBAAA,EAAAI,qBAAA,EAAA7S,YAAA,EAAAmR,MAAA,SAAA8B,UAAA,eAA6KwH,kBAAmBtxE,KAAA,SAAA4iB,QAAA,EAAAwlD,QAAA,EAAA5O,SAAA,eAAA8P,iBAAA,EAAAI,qBAAA,EAAA7S,YAAA,EAAAmR,MAAA,SAAA8B,UAAA,eAA6KyH,kBAAmBvxE,KAAA,QAAA0C,MAAA,SAAAvO,OAAA,EAAAyuB,SAAA,KAAA42C,SAAA,eAAA8P,iBAAA,EAAAzS,YAAA,EAAAmR,MAAA,SAAA8B,UAAA,eAAuK0H,yBAA0BxxE,KAAA,OAAAw5D,SAAA,qBAAA8P,iBAAA,EAAA7nD,QAA6E7b,OAAQ6xC,aAAe70B,QAAA,MAAAknD,UAAA,iCAA6D2H,cAAiBC,kBAAkB1xE,KAAA,SAAA4iB,QAAA,EAAAwlD,QAAA,EAAAD,QAAA,EAAA3O,SAAA,eAAA8P,iBAAA,EAAAzS,YAAA,GAAqH8a,qBAAsB3xE,KAAA,SAAA4iB,QAAA,EAAAmlD,OAAA,IAAAvO,SAAA,eAAA8P,iBAAA,EAAAzS,YAAA,EAAAmR,MAAA,WAA4H4J,yBAA0B5xE,KAAA,SAAAw5D,SAAA,eAAA8P,iBAAA,EAAA1mD,QAAA,EAAAwlD,QAAA,EAAAD,QAAA,EAAAtR,YAAA,GAAqHgb,yBAA0B7xE,KAAA,SAAAw5D,SAAA,eAAA8P,iBAAA,EAAA1mD,QAAA,EAAAwlD,QAAA,EAAAD,QAAA,EAAAtR,YAAA,GAAqHib,qBAAsB9xE,KAAA,SAAA4iB,QAAA,EAAAwlD,SAAA,EAAAD,QAAA,EAAA3O,SAAA,eAAA8P,iBAAA,EAAAzS,YAAA,GAAsHkb,mBAAoB/xE,KAAA,SAAA4iB,QAAA,EAAAwlD,SAAA,EAAAD,QAAA,EAAA3O,SAAA,eAAA8P,iBAAA,EAAAzS,YAAA,GAAsHmb,wBAAyBhyE,KAAA,SAAA4iB,QAAA,IAAAwlD,QAAA,EAAA5O,SAAA,eAAA8P,iBAAA,EAAAzS,YAAA,EAAAmR,MAAA,iBAAmIiK,kBAAqBC,oBAAoBlyE,KAAA,QAAA4iB,QAAA,UAAA42C,SAAA,eAAA8P,iBAAA,EAAAzS,YAAA,EAAAiT,WAAiH9jC,IAAA,wBAA2BmsC,sBAAuBnyE,KAAA,SAAAw5D,SAAA,qBAAA8P,iBAAA,EAAAzS,YAAA,GAAuFub,sBAAuBpyE,KAAA,SAAA4iB,QAAA,EAAAwlD,QAAA,EAAAD,QAAA,EAAA3O,SAAA,eAAA8P,iBAAA,EAAAzS,YAAA,IAAsHA,YAAepd,UAAYz5C,KAAA,SAAA4iB,QAAA,IAAAwlD,QAAA,EAAAJ,MAAA,gBAAiEqK,OAAUryE,KAAA,SAAA4iB,QAAA,EAAAwlD,QAAA,EAAAJ,MAAA,uBACn1qBsK,KAAA,SAAAj+E,EAAAzC,EAAAD,GACJ,YAAaC,GAAAD,QAAA,SAAAmC,GAA2B,OAAAD,MAAAN,EAAA4jB,UAAAhjB,OAAA,EAAkCZ,KAAA,GAAOM,EAAAN,GAAA4jB,UAAA5jB,EAAA,EAAqB,QAAAZ,GAAA,EAAAN,EAAAwB,EAAgBlB,EAAAN,EAAA8B,OAAWxB,GAAA,GAAM,GAAAqB,GAAA3B,EAAAM,EAAW,QAAAgB,KAAAK,GAAAF,EAAAH,GAAAK,EAAAL,GAAyB,MAAAG,SACvKy+E,KAAA,SAAAl+E,EAAAzC,EAAAD,GACJ,YAAaC,GAAAD,QAAA,SAAAgB,GAA2B,MAAAA,aAAAgsB,QAAA,SAAAhsB,YAAAugB,QAAA,SAAAvgB,YAAAshB,SAAA,UAAA7a,MAAAC,QAAA1G,GAAA,eAAAA,EAAA,aAAAA,SACpC6/E,KAAA,SAAAn+E,EAAAzC,EAAAD,GACJ,YAAa,SAAAuoE,GAAArmE,EAAAN,EAAAZ,GAA4B,MAAAkB,IAAA,EAAAlB,GAAAY,EAAAZ,EAAmBf,EAAAD,QAAAuoE,IAAA35C,OAAA25C,IAAAuY,KAAA,SAAA5+E,EAAAN,EAAAZ,GAA2F,OAAAunE,EAAArmE,EAAA,GAAAN,EAAA,GAAAZ,GAAAunE,EAAArmE,EAAA,GAAAN,EAAA,GAAAZ,KAA0DunE,EAAAvjC,MAAA,SAAA9iC,EAAAN,EAAAZ,GAAmC,OAAAunE,EAAArmE,EAAA,GAAAN,EAAA,GAAAZ,GAAAunE,EAAArmE,EAAA,GAAAN,EAAA,GAAAZ,GAAAunE,EAAArmE,EAAA,GAAAN,EAAA,GAAAZ,GAAAunE,EAAArmE,EAAA,GAAAN,EAAA,GAAAZ,KAA4GunE,EAAAnjD,MAAA,SAAAljB,EAAAN,EAAAZ,GAAmC,MAAAkB,GAAA+R,IAAA,SAAA/R,EAAAC,GAA2B,MAAAomE,GAAArmE,EAAAN,EAAAO,GAAAnB,WAC1Z+/E,KAAA,SAAAr+E,EAAAzC,EAAAD,GACJ,YAAa,IAAAghF,GAAAt+E,EAAA,kBAAA6mE,aAA6DtpE,GAAAD,QAAA,SAAAmC,GAA2B,mBAAAA,GAAA,CAAuB,GAAAP,GAAAo/E,EAAA7+E,EAA0B,KAAAP,EAAA,MAAa,QAAAA,EAAA,OAAAA,EAAA,GAAAA,EAAA,OAAAA,EAAA,GAAAA,EAAA,OAAAA,EAAA,GAAAA,EAAA,IAAuD,MAAA6F,OAAAC,QAAAvF,SAAA,MACvN8+E,eAAA,MAAqBC,KAAA,SAAAx+E,EAAAzC,EAAAD,GACxB,YAAaC,GAAAD,SAAA,2EACTmhF,KAAA,SAAAz+E,EAAAzC,EAAAD,GACJ,YAAaC,GAAAD,QAAA,SAAAgB,GAA2B,MAAAA,aAAAgsB,SAAAhsB,YAAAugB,SAAAvgB,YAAAshB,SAAAthB,EAAAogF,UAAApgF,QACpCqgF,KAAA,SAAA3+E,EAAAzC,EAAAD,GACJ,YAAa,IAAAulE,GAAA7iE,EAAA,6BAAAu2D,EAAAv2D,EAAA,oBAAA0T,EAAA1T,EAAA,iBAA8HzC,GAAAD,QAAA,SAAA4B,GAA2B,GAAAO,GAAAO,EAAA,uBAAAR,EAAAQ,EAAA,qBAAAxC,GAAuE20C,IAAA,WAAe,UAASzvB,MAAA1iB,EAAA,oBAAAmsB,QAAAnsB,EAAA,sBAAAksB,OAAAlsB,EAAA,qBAAAsiC,MAAAtiC,EAAA,oBAAA4+E,UAAA5+E,EAAA,wBAAA6+E,KAAA7+E,EAAA,mBAAA4a,OAAA5a,EAAA,qBAAAmlE,SAAAnlE,EAAA,uBAAAggC,MAAAhgC,EAAA,oBAAAxB,OAAAwB,EAAA,qBAAAgV,OAAAhV,EAAA,qBAAA41C,MAAA51C,EAAA,oBAAAssB,OAAAtsB,EAAA,sBAAqdL,EAAAT,EAAAmP,MAAA/P,EAAAY,EAAA4/E,UAAAp/E,EAAAR,EAAA6/E,IAAA/gF,EAAAkB,EAAA8/E,UAAAvhF,EAAAyB,EAAAy2C,KAAyD,eAAA4gB,EAAA52D,IAAA,MAAAA,EAAA,IAAsC,GAAA3B,EAAAs1E,SAAA,YAAAzQ,GAAAnjE,EAAAC,EAAA,2CAA2F,MAAAA,IAAAlC,GAAAmhF,WAAA,UAAA/b,GAAAnjE,EAAAC,EAAA,0BAAAA,GAAoFT,GAAAwU,KAAWxU,GAAImP,MAAA5Q,EAAAmhF,UAAAj/E,KAAuB,MAAArB,GAAA6mE,UAAA,WAAA5O,EAAA52D,GAAAF,EAAAP,GAAAZ,EAAAqN,MAAAnO,EAAAc,EAAAqN,MAAAnO,EAAAc,EAAAqN,MAAAzM,GAAAM,EAAAkU,KAAwFxU,GAAI4/E,UAAAxgF,EAAAqN,KAAA3N,EAAAM,EAAAqN,MAAArN,QACvmC2gF,4BAAA,IAAAnZ,iBAAA,IAAAC,mBAAA,IAAAmZ,mBAAA,IAAAC,qBAAA,IAAAC,mBAAA,IAAAC,uBAAA,IAAAC,kBAAA,IAAAC,oBAAA,IAAAC,sBAAA,IAAAC,mBAAA,IAAAC,mBAAA,IAAAC,oBAAA,IAAAC,oBAAA,IAAAC,oBAAA,IAAAC,oBAAA,MAAoYC,KAAA,SAAA//E,EAAAzC,EAAAD,GACvY,YAAa,IAAAi5D,GAAAv2D,EAAA,oBAAAggF,EAAAhgF,EAAA,cAAA6iE,EAAA7iE,EAAA,4BAA4HzC,GAAAD,QAAA,SAAA4B,GAA2B,GAAAO,GAAAP,EAAAmP,MAAA7O,EAAAN,EAAA4/E,UAAAn/E,EAAAT,EAAAy2C,MAAAr3C,EAAAY,EAAA8/E,UAAAvhF,EAAAyB,EAAA6/E,IAAAvhF,EAAA0B,EAAA+gF,uBAAAD,CAAgG,cAAAzpB,EAAA92D,GAAA,UAAAojE,GAAAplE,EAAAgC,EAAA,2BAAA82D,EAAA92D,IAA+F,IAAAD,EAAAM,QAAAL,EAAAK,SAAAN,EAAAM,OAAA,UAAA+iE,GAAAplE,EAAAgC,EAAA,4CAAAD,EAAAM,OAAAL,EAAAK,QAAgI,IAAAN,EAAA,eAAAC,EAAAK,OAAAN,EAAA,wBAAAqjE,GAAAplE,EAAAgC,EAAA,qDAAAD,EAAA,cAAAC,EAAAK,QAA4J,IAAA9B,IAAO2N,KAAAnM,EAAA6O,MAAc/P,GAAAg1E,SAAA,IAAAt1E,EAAAmnE,SAAA3lE,EAAA2lE,UAAA,WAAA5O,EAAA/2D,EAAA6O,SAAArQ,EAAAwB,EAAA6O,MAA+E,QAAA3O,MAAA7B,EAAA,EAAiBA,EAAA4B,EAAAK,OAAWjC,IAAA6B,IAAAqG,OAAAvI,GAAkBklB,MAAAjjB,EAAAygF,WAAAriF,EAAAwQ,MAAA5O,EAAA5B,GAAAihF,UAAA9gF,EAAA23C,MAAAh2C,EAAAq/E,UAAA1gF,EAAAygF,IAAAthF,EAAA,IAAAI,EAAA,MAAmF,OAAA6B,MACj2Bu/E,4BAAA,IAAAlZ,mBAAA,IAAAoa,aAAA,MAAwEC,KAAA,SAAApgF,EAAAzC,EAAAD,GAC3E,YAAa,IAAAi5D,GAAAv2D,EAAA,oBAAA6iE,EAAA7iE,EAAA,4BAA6FzC,GAAAD,QAAA,SAAA4B,GAA2B,GAAAO,GAAAP,EAAAmP,MAAArQ,EAAAkB,EAAA6/E,IAAAv/E,EAAA+2D,EAAA92D,EAAmC,mBAAAD,GAAA,GAAAqjE,GAAA7kE,EAAAyB,EAAA,6BAAAD,UACrKy/E,4BAAA,IAAAlZ,mBAAA,MAAuDsa,KAAA,SAAArgF,EAAAzC,EAAAD,GAC1D,YAAa,IAAAulE,GAAA7iE,EAAA,6BAAAu2D,EAAAv2D,EAAA,oBAAA6mE,EAAA7mE,EAAA,kBAAA6mE,aAAmJtpE,GAAAD,QAAA,SAAAmC,GAA2B,GAAAP,GAAAO,EAAAs/E,IAAA/gF,EAAAyB,EAAA4O,MAAA7O,EAAA+2D,EAAAv4D,EAAmC,kBAAAwB,GAAA,GAAAqjE,GAAA3jE,EAAAlB,EAAA,2BAAAwB,IAAA,OAAAqnE,EAAA7oE,IAAA,GAAA6kE,GAAA3jE,EAAAlB,EAAA,6BAAAA,UAC3NihF,4BAAA,IAAAlZ,mBAAA,IAAAwY,eAAA,MAA4E+B,KAAA,SAAAtgF,EAAAzC,EAAAD,GAC/E,YAAa,IAAAulE,GAAA7iE,EAAA,6BAAAu2D,EAAAv2D,EAAA,mBAA6FzC,GAAAD,QAAA,SAAAmC,GAA2B,GAAAP,GAAAO,EAAAs/E,IAAAv/E,EAAAC,EAAA4O,KAAsB,IAAA5O,EAAAu/E,UAAA1L,SAAA,QAAA9zE,IAAA,GAAAqjE,GAAA3jE,EAAAM,EAAA,8CAA2G,IAAAG,GAAA42D,EAAA/2D,EAAiB,eAAAG,EAAA,UAAAkjE,GAAA3jE,EAAAM,EAAA,4BAAAG,GAA+E,IAAA3B,KAAS,QAAAM,KAAAkB,GAAA,MAAAlB,EAAA,IAAAN,EAAAoI,KAAA,GAAAy8D,GAAA3jE,EAAA,IAAAZ,EAAAkB,EAAAlB,GAAA,iCAAqG,OAAAN,MACjdihF,4BAAA,IAAAlZ,mBAAA,MAAuDwa,KAAA,SAAAvgF,EAAAzC,EAAAD,GAC1D,YAAa,IAAAulE,GAAA7iE,EAAA,6BAAAwgF,EAAAxgF,EAAA,4BAAuGzC,GAAAD,QAAA,SAAA4B,GAA2B,GAAAO,GAAAP,EAAA6/E,IAAAzgF,EAAAY,EAAAmP,MAAA3O,EAAAR,EAAA4/E,UAAA9gF,IAAyC,OAAA+G,OAAAC,QAAAtF,EAAA0tB,SAAA,IAAA1tB,EAAA0tB,OAAAxkB,QAAA43E,EAAAliF,KAAAN,EAAAoI,KAAA,GAAAy8D,GAAApjE,EAAAnB,EAAA,iCAAAoB,EAAA0tB,OAAAnf,KAAA,MAAA3P,KAAA,IAAAL,OAAAmZ,KAAA1X,EAAA0tB,QAAAxkB,QAAA43E,EAAAliF,KAAAN,EAAAoI,KAAA,GAAAy8D,GAAApjE,EAAAnB,EAAA,iCAAAL,OAAAmZ,KAAA1X,EAAA0tB,QAAAnf,KAAA,MAAA3P,IAAAN,KACrLihF,4BAAA,IAAAwB,4BAAA,MAAgEC,KAAA,SAAA1gF,EAAAzC,EAAAD,GACnE,YAAa,IAAAulE,GAAA7iE,EAAA,6BAAA2gF,EAAA3gF,EAAA,mBAAAu2D,EAAAv2D,EAAA,oBAAAwgF,EAAAxgF,EAAA,4BAAmLzC,GAAAD,QAAA,QAAA4B,GAAAO,GAA6B,GAAAD,GAAAG,EAAAF,EAAA4O,MAAA/P,EAAAmB,EAAAs/E,IAAAthF,EAAAgC,EAAAu/E,UAAAngF,IAA2C,cAAA03D,EAAA52D,GAAA,UAAAkjE,GAAAvkE,EAAAqB,EAAA,2BAAA42D,EAAA52D,IAA+F,IAAAA,EAAAG,OAAA,YAAA+iE,GAAAvkE,EAAAqB,EAAA,6CAA2F,QAAAd,IAAAkH,OAAA46E,GAAgC5B,IAAAzgF,EAAA,MAAA+P,MAAA1O,EAAA,GAAAm/E,UAAArhF,EAAAm7E,gBAAAjjC,MAAAl2C,EAAAk2C,MAAAqpC,UAAAv/E,EAAAu/E,aAAuFwB,EAAA7gF,EAAA,KAAmB,kCAAAA,EAAAG,QAAA,aAAA0gF,EAAA7gF,EAAA,KAAAd,EAAAuH,KAAA,GAAAy8D,GAAAvkE,EAAAqB,EAAA,2CAAAA,EAAA,IAA0J,uBAAAA,EAAAG,QAAAjB,EAAAuH,KAAA,GAAAy8D,GAAAvkE,EAAAqB,EAAA,sDAAAA,EAAA,IAA4H,oBAAAA,EAAAG,QAAA,eAAAN,EAAA+2D,EAAA52D,EAAA,MAAAd,EAAAuH,KAAA,GAAAy8D,GAAAvkE,EAAA,MAAAqB,EAAA,+BAAAH,GAAsI,QAAAxB,GAAA,EAAYA,EAAA2B,EAAAG,OAAW9B,IAAAwB,EAAA+2D,EAAA52D,EAAA3B,IAAA,UAAAwiF,EAAA7gF,EAAA,IAAAd,IAAAkH,OAAA46E,GAAsE5B,IAAAzgF,EAAA,IAAAN,EAAA,IAAAqQ,MAAA1O,EAAA3B,GAAA8gF,UAAArhF,EAAA67E,cAAA3jC,MAAAl2C,EAAAk2C,MAAAqpC,UAAAv/E,EAAAu/E,aAAyF,WAAAx/E,GAAA,WAAAA,GAAA,YAAAA,GAAAX,EAAAuH,KAAA,GAAAy8D,GAAAvkE,EAAA,IAAAN,EAAA,IAAA2B,EAAA3B,GAAA,gDAAAwB,GAA8I,MAAM,uCAAAhC,GAAA,EAA2CA,EAAAmC,EAAAG,OAAWtC,IAAAqB,IAAAkH,OAAA7G,GAAkB6/E,IAAAzgF,EAAA,IAAAd,EAAA,IAAA6Q,MAAA1O,EAAAnC,GAAAm4C,MAAAl2C,EAAAk2C,MAAAqpC,UAAAv/E,EAAAu/E,YAAkE,MAAM,sBAAAx/E,EAAA+2D,EAAA52D,EAAA,QAAAA,EAAAG,OAAAjB,EAAAuH,KAAA,GAAAy8D,GAAAvkE,EAAAqB,EAAA,sDAAAA,EAAA,gBAAAH,GAAAX,EAAAuH,KAAA,GAAAy8D,GAAAvkE,EAAA,MAAAqB,EAAA,+BAAAH,IAAoO,MAAAX,MACnqDogF,4BAAA,IAAAlZ,mBAAA,IAAA0a,4BAAA,IAAAnB,kBAAA,MAA6GsB,KAAA,SAAA5gF,EAAAzC,EAAAD,GAChH,YAAa,IAAAulE,GAAA7iE,EAAA,6BAAAu2D,EAAAv2D,EAAA,oBAAAggF,EAAAhgF,EAAA,cAAA6gF,EAAA7gF,EAAA,qBAAA8gF,EAAA9gF,EAAA,oBAAA+gF,EAAA/gF,EAAA,qBAAAwgF,EAAAxgF,EAAA,4BAA4SzC,GAAAD,QAAA,SAAA4B,GAA2B,QAAAM,GAAAN,GAAc,gBAAAN,EAAA,UAAAikE,GAAA3jE,EAAA6/E,IAAA7/E,EAAAmP,MAAA,qDAAiH,IAAA7O,MAAAG,EAAAT,EAAAmP,KAAmB,OAAA7O,KAAAuG,OAAA+6E,GAAiC/B,IAAA7/E,EAAA6/E,IAAA1wE,MAAA1O,EAAAm/E,UAAA5/E,EAAA4/E,UAAAnpC,MAAAz2C,EAAAy2C,MAAAqpC,UAAA9/E,EAAA8/E,UAAAiB,sBAAAxgF,KAAoG,UAAA82D,EAAA52D,IAAA,IAAAA,EAAAG,QAAAN,EAAA4G,KAAA,GAAAy8D,GAAA3jE,EAAA6/E,IAAAp/E,EAAA,sCAAAH,EAAkH,QAAAC,GAAAP,GAAc,GAAAM,MAAAC,EAAAP,EAAAmP,MAAArQ,EAAAkB,EAAA6/E,GAA2B,cAAAxoB,EAAA92D,GAAA,UAAAojE,GAAA7kE,EAAAyB,EAAA,2BAAA82D,EAAA92D,IAA+F,QAAAA,EAAAK,OAAA,UAAA+iE,GAAA7kE,EAAAyB,EAAA,8CAAAA,EAAAK,QAAwG,IAAAlC,EAAA,CAAM,cAAA24D,EAAA92D,EAAA,cAAAojE,GAAA7kE,EAAAyB,EAAA,4BAAA82D,EAAA92D,EAAA,KAAuG,aAAAA,EAAA,GAAAklB,KAAA,UAAAk+C,GAAA7kE,EAAAyB,EAAA,kCAAwF,aAAAA,EAAA,GAAA4O,MAAA,UAAAw0D,GAAA7kE,EAAAyB,EAAA,mCAA0F,IAAAhC,KAAA+iF,EAAA/gF,EAAA,GAAAklB,MAAA,UAAAk+C,GAAA7kE,EAAAyB,EAAA,GAAAklB,KAAA,mDAAuH67D,GAAA/gF,EAAA,GAAAklB,QAAAlnB,MAAA+iF,EAAA/gF,EAAA,GAAAklB,MAAAnnB,MAAA,GAAAqB,MAA6DW,IAAAuG,OAAA86E,GAA6B9B,IAAA/gF,EAAA,MAAAqQ,MAAA5O,EAAA,GAAAq/E,WAAkCn6D,SAAQgxB,MAAAz2C,EAAAy2C,MAAAqpC,UAAA9/E,EAAA8/E,UAAAgC,yBAA8Dr8D,KAAAo8D,EAAA1yE,MAAA1O,UAAgCH,KAAAuG,OAAApG,GAAmBo/E,IAAA/gF,EAAA,MAAAqQ,MAAA5O,EAAA,GAAAq/E,aAAmCnpC,MAAAz2C,EAAAy2C,MAAAqpC,UAAA9/E,EAAA8/E,YAAwC,OAAAx/E,GAAAuG,OAAAi6E,GAA0BjB,IAAA/gF,EAAA,MAAAqQ,MAAA5O,EAAA,GAAAq/E,UAAAp/E,EAAAi2C,MAAAz2C,EAAAy2C,MAAAqpC,UAAA9/E,EAAA8/E,aAA0E,QAAAr/E,GAAAT,GAAc,GAAAM,GAAA+2D,EAAAr3D,EAAAmP,OAAA5O,EAAA+gF,EAAAthF,EAAAmP,MAA2C,IAAA/P,GAAM,GAAAkB,IAAAlB,EAAA,UAAAukE,GAAA3jE,EAAA6/E,IAAA7/E,EAAAmP,MAAA,8DAAA7O,EAAAlB,QAAsHA,GAAAkB,CAAS,eAAAA,GAAA,WAAAA,GAAA,YAAAA,EAAA,UAAAqjE,GAAA3jE,EAAA6/E,IAAA7/E,EAAAmP,MAAA,0DAAiJ,eAAA7O,GAAA,gBAAAZ,EAAA,CAAoC,GAAAe,GAAA,2BAAkC,OAAAD,GAAA,+BAAAd,IAAAe,GAAA,yFAAAkjE,GAAA3jE,EAAA6/E,IAAA7/E,EAAAmP,MAAA1O,EAAAH,IAA6K,sBAAAZ,GAAA,WAAAY,GAAAyhF,SAAAxhF,IAAAW,KAAAoV,MAAA/V,OAAA,gBAAAb,GAAA,WAAAY,OAAA,KAAAhC,GAAAiC,EAAAjC,GAAA,GAAAqlE,GAAA3jE,EAAA6/E,IAAA7/E,EAAAmP,MAAA,uDAAA7Q,EAAAiC,EAAA,gBAAAb,GAAAa,IAAAZ,IAAA,GAAAgkE,GAAA3jE,EAAA6/E,IAAA7/E,EAAAmP,MAAA,uCAAAxP,EAAAY,IAAA,WAAAojE,GAAA3jE,EAAA6/E,IAAA7/E,EAAAmP,MAAA,6BAAA5O,IAA0Y,QAAAzB,GAAAkB,GAAc,MAAA8gF,IAAiBjB,IAAA7/E,EAAA6/E,IAAA1wE,MAAAnP,EAAAmP,MAAAywE,UAAAp/E,EAAAi2C,MAAAz2C,EAAAy2C,MAAAqpC,UAAA9/E,EAAA8/E,YAA0E,GAAA1gF,GAAAd,EAAAC,EAAAiC,EAAAR,EAAA4/E,UAAAlgF,EAAA4hF,EAAAthF,EAAAmP,MAAA1C,MAAA9M,KAAqD6B,EAAA,gBAAA9B,OAAA,KAAAM,EAAAmP,MAAA5P,SAAAZ,GAAA6C,EAAA9C,EAAA,UAAA24D,EAAAr3D,EAAAmP,MAAA62D,QAAA,UAAA3O,EAAAr3D,EAAAmP,MAAA62D,MAAA,gBAAA3O,EAAAr3D,EAAAmP,MAAA62D,MAAA,OAAA3kE,EAAAsgF,GAAwL9B,IAAA7/E,EAAA6/E,IAAA1wE,MAAAnP,EAAAmP,MAAAywE,UAAA5/E,EAAA8/E,UAAA7Z,SAAAxvB,MAAAz2C,EAAAy2C,MAAAqpC,UAAA9/E,EAAA8/E,UAAAgC,yBAAoH9b,MAAA1lE,EAAA+uB,QAAAvwB,IAAqB,oBAAAY,GAAA8B,GAAAH,EAAA6F,KAAA,GAAAy8D,GAAA3jE,EAAA6/E,IAAA7/E,EAAAmP,MAAA,sDAAAzP,GAAAM,EAAAmP,MAAA62D,OAAA3kE,EAAA6F,KAAA,GAAAy8D,GAAA3jE,EAAA6/E,IAAA7/E,EAAAmP,MAAA,sDAAAzP,GAAA,uBAAAM,EAAA4/E,UAAA3Z,UAAA5kE,EAAA6F,KAAA,GAAAy8D,GAAA3jE,EAAA6/E,IAAA7/E,EAAAmP,MAAA,wCAAAnP,EAAA8/E,UAAA1L,UAAA,IAAAz1E,IAAAqB,EAAA4/E,UAAA,qBAAAv+E,EAAA6F,KAAA,GAAAy8D,GAAA3jE,EAAA6/E,IAAA7/E,EAAAmP,MAAA,qCAAA3N,IAAAxB,EAAA4/E,UAAA,kBAAAv+E,EAAA6F,KAAA,GAAAy8D,GAAA3jE,EAAA6/E,IAAA7/E,EAAAmP,MAAA,kDAAAzP,IAAAhB,OAAA,KAAAsB,EAAAmP,MAAA5P,UAAA8B,EAAA6F,KAAA,GAAAy8D,GAAA3jE,EAAA6/E,IAAA7/E,EAAAmP,MAAA,oCAAA9N,KAC/qG0+E,4BAAA,IAAAlZ,mBAAA,IAAA0a,4BAAA,IAAAN,aAAA,IAAAjB,mBAAA,IAAAS,oBAAA,IAAAC,oBAAA,MAA+KsB,KAAA,SAAAlhF,EAAAzC,EAAAD,GAClL,YAAa,IAAAulE,GAAA7iE,EAAA,6BAAAmhF,EAAAnhF,EAAA,oBAAqGzC,GAAAD,QAAA,SAAAmC,GAA2B,GAAAP,GAAAO,EAAA4O,MAAA7O,EAAAC,EAAAs/E,IAAAp/E,EAAAwhF,EAAA1hF,EAA0C,OAAAE,GAAAG,OAAAH,IAAA,IAAAT,EAAA0J,QAAA,gBAA8CjJ,EAAAyG,KAAA,GAAAy8D,GAAArjE,EAAAN,EAAA,qDAA4E,IAAAA,EAAA0J,QAAA,YAAkCjJ,EAAAyG,KAAA,GAAAy8D,GAAArjE,EAAAN,EAAA,gDAAwES,MACxZs/E,4BAAA,IAAAa,oBAAA,MAAwDsB,KAAA,SAAAphF,EAAAzC,EAAAD,GAC3D,YAAa,IAAAulE,GAAA7iE,EAAA,6BAAAwgF,EAAAxgF,EAAA,6BAAA6gF,EAAA7gF,EAAA,qBAAAqhF,EAAArhF,EAAA,qBAAAshF,EAAAthF,EAAA,6BAAAuhF,EAAAvhF,EAAA,8BAAA0T,EAAA1T,EAAA,iBAAwVzC,GAAAD,QAAA,SAAA4B,GAA2B,GAAAO,MAAAD,EAAAN,EAAAmP,MAAA1O,EAAAT,EAAA6/E,IAAAvhF,EAAA0B,EAAAy2C,MAAAl4C,EAAAyB,EAAA8/E,SAAmDx/E,GAAAmM,MAAAnM,EAAAkH,KAAAjH,EAAA2G,KAAA,GAAAy8D,GAAAljE,EAAAH,EAAA,sCAAqF,IAAAE,GAAA8gF,EAAAhhF,EAAAmM,MAAArN,EAAAkiF,EAAAhhF,EAAAkH,IAAyC,IAAAlH,EAAAkG,GAAA,OAAA1H,GAAAwiF,EAAAhhF,EAAAkG,IAAA7G,EAAA,EAAqCA,EAAAK,EAAAghF,WAAerhF,IAAA,CAAK,GAAAhB,GAAAL,EAAA0N,OAAArM,EAAkB2hF,GAAA3iF,EAAA6H,MAAA1H,GAAAyB,EAAA2G,KAAA,GAAAy8D,GAAAljE,EAAAH,EAAAkG,GAAA,sDAAAlG,EAAAkG,GAAA7H,EAAA6H,GAAAq9D,WAAiI,UAAAvjE,GAAA,EAAc,kDAAAqb,QAAA,SAAA3b,GAAuEA,IAAAM,IAAAC,EAAA2G,KAAA,GAAAy8D,GAAAljE,EAAAH,EAAAN,GAAA,oCAAAA,KAAoF,IAAAwB,EAAMlD,GAAA0N,OAAA2P,QAAA,SAAA3b,GAA6BshF,EAAAthF,EAAAwG,MAAApH,IAAAoC,EAAAxB,KAA0BwB,IAAAgG,IAAAjH,EAAA2G,KAAA,GAAAy8D,GAAAljE,EAAAH,EAAAkH,IAAA,2CAAAhH,EAAA8gF,EAAA9/E,EAAAiL,MAAAlM,EAAA2G,KAAA,GAAAy8D,GAAAljE,EAAAH,EAAAkH,IAAA,2BAAApI,QAA6K,mBAAAoB,EAAA,GAAAF,EAAAwV,OAAA,CAAsC,GAAApX,GAAAJ,EAAA6wB,SAAA7wB,EAAA6wB,QAAA7uB,EAAAwV,QAAApW,EAAAhB,GAAA4iF,EAAA5iF,EAAA+N,KAA2D/N,GAAA,WAAAgB,GAAA,WAAAc,EAAAD,EAAA2G,KAAA,GAAAy8D,GAAAljE,EAAAH,EAAAwV,OAAA,sCAAAxV,EAAAkG,KAAA,WAAA9G,GAAA,WAAAc,EAAAD,EAAA2G,KAAA,GAAAy8D,GAAAljE,EAAAH,EAAAwV,OAAA,sCAAAxV,EAAAkG,KAAA,WAAA9G,GAAAY,EAAA,iBAAAC,EAAA2G,KAAA,GAAAy8D,GAAAljE,EAAAH,EAAA,2CAAAA,EAAAkG,KAAAjG,EAAA2G,KAAA,GAAAy8D,GAAAljE,EAAAH,EAAAwV,OAAA,wBAAAxV,EAAAwV,aAAyZvV,GAAA2G,KAAA,GAAAy8D,GAAAljE,EAAAH,EAAA,sCAA2E,OAAAC,KAAAsG,OAAA86E,GAAkC9B,IAAAp/E,EAAA0O,MAAA7O,EAAAs/E,UAAArhF,EAAAuiC,MAAA2V,MAAAz2C,EAAAy2C,MAAAqpC,UAAA9/E,EAAA8/E,UAAAgC,yBAA6F7uC,IAAA,WAAe,UAASv3B,OAAAymE,EAAAzsD,OAAA,SAAA11B,GAA0C,MAAA2hF,IAAuB7gD,MAAAxgC,EAAAu/E,IAAA7/E,EAAA6/E,IAAA1wE,MAAAnP,EAAAmP,MAAAsnC,MAAAz2C,EAAAy2C,MAAAqpC,UAAA9/E,EAAA8/E,UAAAgC,yBAA6F7uC,IAAA,SAAAjzC,GAAgB,MAAAqiF,GAAA7tE,GAAsC8tE,UAAA9hF,GAAYR,SAASwuC,MAAA,SAAAxuC,GAAmB,MAAA2hF,IAAuB7gD,MAAAxgC,EAAAu/E,IAAA7/E,EAAA6/E,IAAA1wE,MAAAnP,EAAAmP,MAAAsnC,MAAAz2C,EAAAy2C,MAAAqpC,UAAA9/E,EAAA8/E,UAAAgC,yBAA6F7uC,IAAA,SAAAjzC,GAAgB,MAAAoiF,GAAA5tE,GAAqC8tE,UAAA9hF,GAAYR,gBAC1xE+/E,4BAAA,IAAAnZ,iBAAA,IAAA2a,4BAAA,IAAAlB,oBAAA,IAAAkC,6BAAA,IAAA7B,oBAAA,IAAA8B,4BAAA,MAAsMC,KAAA,SAAA3hF,EAAAzC,EAAAD,GACzM,YAAa,IAAAskF,GAAA5hF,EAAA,sBAAoDzC,GAAAD,QAAA,SAAAmC,GAA2B,MAAAmiF,GAAAniF,EAAA,aACzFoiF,sBAAA,MAA0BC,KAAA,SAAA9hF,EAAAzC,EAAAD,GAC7B,YAAa,IAAAulE,GAAA7iE,EAAA,6BAAAu2D,EAAAv2D,EAAA,oBAAAggF,EAAAhgF,EAAA,aAA4HzC,GAAAD,QAAA,SAAA4B,GAA2B,GAAAM,GAAAN,EAAAmP,MAAA5O,EAAAP,EAAA8/E,UAAAr/E,EAAAF,EAAAm2C,MAAAp4C,EAAA0B,EAAAy2C,MAAAr3C,KAAAN,EAAAu4D,EAAA/2D,EAAkE,aAAAA,EAAA,MAAAlB,EAAuB,eAAAN,EAAA,MAAAM,KAAAyH,QAAA,GAAA88D,GAAA,QAAArjE,EAAA,4BAAAxB,IAAkG,QAAAP,KAAA+B,GAAA,CAAgB,GAAA5B,GAAAH,EAAA4rB,MAAA,oBAAmC/qB,GAAAV,GAAA+B,EAAA/B,EAAA,KAAA+B,EAAA/B,EAAA,IAAA4kE,WAAAlkE,EAAAyH,OAAAi6E,GAAoDjB,IAAAthF,EAAA4Q,MAAA7O,EAAA/B,GAAAqhF,UAAAr/E,EAAA+iE,WAAA7sB,MAAAn4C,EAAAwhF,UAAAv/E,KAA4DE,EAAAlC,GAAAa,EAAAyH,OAAAi6E,GAA2BjB,IAAAthF,EAAA4Q,MAAA7O,EAAA/B,GAAAqhF,UAAAn/E,EAAAlC,GAAAk4C,MAAAn4C,EAAAwhF,UAAAv/E,KAAoDnB,EAAAyH,QAAA,GAAA88D,GAAAplE,EAAA+B,EAAA/B,GAAA,wBAAAA,KAAqE,MAAAa,MACnpB2gF,4BAAA,IAAAlZ,mBAAA,IAAAoa,aAAA,MAAwE4B,KAAA,SAAA/hF,EAAAzC,EAAAD,GAC3E,YAAa,IAAAi5D,GAAAv2D,EAAA,oBAAA6iE,EAAA7iE,EAAA,4BAA6FzC,GAAAD,QAAA,SAAA4B,GAA2B,GAAAO,GAAAP,EAAA6/E,IAAAvhF,EAAA0B,EAAAmP,MAAA1Q,EAAAuB,EAAA4/E,UAAAn/E,EAAA42D,EAAA/4D,EAAiD,kBAAAmC,GAAA,GAAAkjE,GAAApjE,EAAAjC,EAAA,4BAAAmC,IAAA,WAAAhC,IAAAH,EAAAG,EAAAo2E,SAAA,GAAAlR,GAAApjE,EAAAjC,EAAA,uCAAAA,EAAAG,EAAAo2E,UAAA,WAAAp2E,IAAAH,EAAAG,EAAAm2E,SAAA,GAAAjR,GAAApjE,EAAAjC,EAAA,0CAAAA,EAAAG,EAAAm2E,gBACnLmL,4BAAA,IAAAlZ,mBAAA,MAAuDic,KAAA,SAAAhiF,EAAAzC,EAAAD,GAC1D,YAAa,IAAAulE,GAAA7iE,EAAA,6BAAAu2D,EAAAv2D,EAAA,oBAAAiiF,EAAAjiF,EAAA,aAAgIzC,GAAAD,QAAA,SAAA4B,GAA2B,GAAAO,GAAAP,EAAA6/E,IAAAv/E,EAAAN,EAAAmP,MAAA7Q,EAAA0B,EAAA4/E,cAAuCn/E,EAAAT,EAAA8hF,4BAAgChjF,EAAAkB,EAAAy2C,MAAAl4C,EAAAyB,EAAA8/E,UAAA1gF,KAAAoB,EAAA62D,EAAA/2D,EAA2C,eAAAE,EAAA,UAAAmjE,GAAApjE,EAAAD,EAAA,4BAAAE,GAA+E,QAAA7B,KAAA2B,GAAA,CAAgB,GAAAZ,GAAAf,EAAAyrB,MAAA,QAAAzqB,EAAArB,EAAAoB,IAAApB,EAAA,KAAAI,MAAA,EAA8C,IAAA+B,EAAAf,GAAAhB,EAAA+B,EAAAf,OAAe,IAAApB,EAAAoB,GAAAhB,EAAAqkF,MAA4B,IAAAtiF,EAAA,KAAA/B,EAAA+B,EAAA,SAAwB,CAAK,IAAAnC,EAAA,MAAYc,EAAA8H,KAAA,GAAAy8D,GAAApjE,EAAAD,EAAA3B,GAAA,wBAAAA,GAA8D,UAASD,EAAAqkF,EAAe3jF,IAAAyH,OAAAnI,GAAcmhF,KAAAt/E,IAAA,IAAAA,GAAA5B,EAAAwQ,MAAA7O,EAAA3B,GAAAihF,UAAAjgF,EAAA82C,MAAA33C,EAAAghF,UAAAvhF,EAAAe,OAAAgB,EAAA0iF,UAAArkF,KAAqF,OAAA0C,KAAA/C,KAAA+C,GAAAizE,cAAA,KAAAh2E,EAAA+C,GAAAguB,aAAA,KAAA/uB,EAAAe,IAAAjC,EAAA8H,KAAA,GAAAy8D,GAAApjE,EAAAD,EAAA,iCAAAe,GAAwI,OAAAjC,MACzzB2gF,4BAAA,IAAAlZ,mBAAA,IAAAoa,aAAA,MAAwEgC,KAAA,SAAAniF,EAAAzC,EAAAD,GAC3E,YAAa,IAAAskF,GAAA5hF,EAAA,sBAAoDzC,GAAAD,QAAA,SAAAmC,GAA2B,MAAAmiF,GAAAniF,EAAA,YACzFoiF,sBAAA,MAA0BO,KAAA,SAAApiF,EAAAzC,EAAAD,GAC7B,YAAa,IAAA0iF,GAAAhgF,EAAA,cAAA6iE,EAAA7iE,EAAA,6BAAAu2D,EAAAv2D,EAAA,mBAA4HzC,GAAAD,QAAA,SAAA4B,EAAAM,GAA6B,GAAAC,GAAAP,EAAA6/E,IAAAvhF,EAAA0B,EAAAy2C,MAAAh2C,EAAAT,EAAA8/E,UAAA1gF,EAAAY,EAAAmP,MAAArQ,EAAAkB,EAAAgjF,UAAAzkF,EAAAkC,EAAAH,EAAA,IAAAN,EAAAsiF,UAAmF,KAAA/jF,EAAA,QAAe,IAAAiD,GAAA1C,EAAAqrB,MAAA,oBAAmC,cAAA7pB,GAAAkB,GAAAjD,EAAAiD,EAAA,KAAAjD,EAAAiD,EAAA,IAAA8hE,WAAA,MAAAwd,IAAgEjB,IAAAt/E,EAAA4O,MAAA/P,EAAAwgF,UAAAn/E,EAAA6iE,WAAA7sB,MAAAn4C,EAAAwhF,UAAAr/E,GAA2D,IAAAf,GAAAM,EAAA4/E,WAAArhF,EAAAO,EAAwB,KAAAY,EAAA,UAAAikE,GAAApjE,EAAAnB,EAAA,wBAAAN,GAAiE,IAAAa,EAAM,eAAA03D,EAAAj4D,IAAAM,EAAA,uBAAAA,EAAA63E,SAAA53E,EAAA,cAA2EwjF,KAAA/jF,IAAA,UAAAukE,GAAApjE,EAAAnB,EAAA,oIAA2KN,EAAA2W,KAAAC,UAAA/V,EAAA,KAA6B,IAAAa,KAAS,kBAAAR,EAAAsiF,WAAA,eAAAxjF,GAAAR,MAAAyhD,QAAAv/C,EAAA0G,KAAA,GAAAy8D,GAAApjE,EAAAnB,EAAA,2DAAAoB,EAAAqG,OAAAi6E,GAA2KjB,IAAA7/E,EAAA6/E,IAAA1wE,MAAA/P,EAAAwgF,UAAAlgF,EAAA+2C,MAAAn4C,EAAAwhF,UAAAr/E,QACz8Bs/E,4BAAA,IAAAlZ,mBAAA,IAAAoa,aAAA,MAAwEmC,KAAA,SAAAtiF,EAAAzC,EAAAD,GAC3E,YAAa,IAAAulE,GAAA7iE,EAAA,6BAAAwgF,EAAAxgF,EAAA,6BAAA6gF,EAAA7gF,EAAA,qBAAA2gF,EAAA3gF,EAAA,kBAA2LzC,GAAAD,QAAA,SAAA4B,GAA2B,GAAAS,GAAAT,EAAAmP,MAAA7O,EAAAN,EAAA6/E,IAAAt/E,EAAAP,EAAA8/E,UAAAvhF,EAAAyB,EAAAy2C,KAA8C,KAAAh2C,EAAAgM,KAAA,UAAAk3D,GAAArjE,EAAAG,EAAA,sBAAiE,IAAAD,GAAA8gF,EAAA7gF,EAAAgM,MAAAnO,IAA4B,QAAAkC,GAAU,6BAAAlC,IAAAuI,OAAA86E,GAAwD9B,IAAAv/E,EAAA6O,MAAA1O,EAAAm/E,UAAAr/E,EAAAm0E,YAAAj+B,MAAAz2C,EAAAy2C,MAAAqpC,UAAAv/E,KAAgE,OAAAE,GAAA,OAAAd,KAAAc,IAAA,yBAAAiJ,QAAA/J,GAAA,GAAArB,EAAA4I,KAAA,GAAAy8D,GAAArjE,EAAA,IAAAX,EAAAc,EAAAd,GAAA,iEAAAA,GAAiL,OAAArB,EAAS,qBAAAqjF,IAAqC9B,IAAAv/E,EAAA6O,MAAA1O,EAAAm/E,UAAAr/E,EAAAo0E,eAAAl+B,MAAAl4C,EAAAuhF,UAAAv/E,GAA+D,mBAAAohF,IAAmC9B,IAAAv/E,EAAA6O,MAAA1O,EAAAm/E,UAAAr/E,EAAAu0E,aAAAr+B,MAAAl4C,EAAAuhF,UAAAv/E,GAA6D,mBAAAohF,IAAmC9B,IAAAv/E,EAAA6O,MAAA1O,EAAAm/E,UAAAr/E,EAAAw0E,aAAAt+B,MAAAl4C,EAAAuhF,UAAAv/E,GAA6D,oBAAAohF,IAAoC9B,IAAAv/E,EAAA6O,MAAA1O,EAAAm/E,UAAAr/E,EAAAy0E,cAAAv+B,MAAAl4C,EAAAuhF,UAAAv/E,GAA8D,eAAAkhF,IAA6B5B,IAAAv/E,EAAA,QAAA6O,MAAA1O,EAAAgM,KAAAmzE,WAAsC1xD,QAAA,uDAA8DuoB,MAAAl4C,EAAAuhF,UAAAv/E,QAC9qCw/E,4BAAA,IAAAwB,4BAAA,IAAAnB,kBAAA,IAAAM,oBAAA,MAA8G2C,KAAA,SAAAviF,EAAAzC,EAAAD,GACjH,YAAa,IAAAi5D,GAAAv2D,EAAA,oBAAA6iE,EAAA7iE,EAAA,4BAA6FzC,GAAAD,QAAA,SAAAmC,GAA2B,GAAAP,GAAAO,EAAA4O,MAAA7O,EAAAC,EAAAs/E,IAAAvhF,EAAA+4D,EAAAr3D,EAAmC,kBAAA1B,GAAA,GAAAqlE,GAAArjE,EAAAN,EAAA,4BAAA1B,UACrKyhF,4BAAA,IAAAlZ,mBAAA,MAAuDyc,KAAA,SAAAxiF,EAAAzC,EAAAD,GAC1D,YAAa,SAAAmlF,GAAAvjF,EAAAS,GAA+BA,KAAA+iF,CAAqB,IAAAljF,KAAS,OAAAA,KAAAuG,OAAAi6E,GAA4BjB,IAAA,GAAA1wE,MAAAnP,EAAA4/E,UAAAn/E,EAAA4zE,MAAAyL,UAAAr/E,EAAAg2C,MAAAz2C,EAAA8hF,yBAA8E/hC,OAAA0jC,EAAAxwC,IAAA,WAAwC,cAAWxyC,EAAA2zE,SAAA,GAAAp0E,EAAA0/E,YAAAp/E,IAAAuG,OAAA68E,GAA6D7D,IAAA,YAAA1wE,MAAAnP,EAAA0/E,UAAAjpC,MAAAz2C,EAAA8/E,UAAAr/E,MAAsDkjF,EAAArjF,GAAkB,QAAAqjF,GAAA3jF,GAAuB,SAAA6G,OAAA7G,GAAA8Q,KAAA,SAAA9Q,EAAAS,GAAsC,MAAAT,GAAAi8B,KAAAx7B,EAAAw7B,OAAuB,QAAA2nD,GAAA5jF,GAA4B,kBAAkB,MAAA2jF,GAAA3jF,EAAA6jB,MAAAhkB,KAAA+jB,aAA4C,GAAA8/D,GAAA5iF,EAAA,iCAAAggF,EAAAhgF,EAAA,uBAAA0iF,EAAA1iF,EAAA,sBAAA2iF,EAAA3iF,EAAA,iCAAiNyiF,GAAAztE,OAAA8tE,EAAA9iF,EAAA,+BAAAyiF,EAAA7sC,MAAAktC,EAAA9iF,EAAA,8BAAAyiF,EAAAziD,MAAA8iD,EAAA9iF,EAAA,8BAAAyiF,EAAA7nE,OAAAkoE,EAAA9iF,EAAA,+BAAAyiF,EAAAM,cAAAD,EAAA9iF,EAAA,uCAAAyiF,EAAAO,eAAAF,EAAA9iF,EAAA,wCAAAzC,EAAAD,QAAAmlF,IACxuBQ,qBAAA,IAAAC,sBAAA,IAAAC,gCAAA,IAAAC,6BAAA,IAAAC,iCAAA,IAAAC,4BAAA,IAAAC,sCAAA,IAAAC,4BAAA,IAAAC,qCAAA,IAAAC,6BAAA,MAAiVC,KAAA,SAAA3jF,EAAAzC,EAAAD,GACpV,YAAa,IAAAsmF,GAAA,WAA6B7kF,KAAAT,EAAA,EAAAS,KAAA8kF,SAAwBD,GAAAllF,UAAAolF,QAAA,WAA2C,MAAA/kF,MAAA8kF,MAAA9kF,KAAA8kF,MAAAjpE,OAAA,SAAApb,GAAgD,MAAAA,GAAAqU,OAAA,GAAAgS,OAAA8yC,aAAoC55D,KAAA8kF,MAAA/jF,QAAqB8jF,EAAAllF,UAAAuZ,IAAA,SAAAzY,GAAyC,MAAAT,MAAA8kF,MAAAz9E,MAAwBV,GAAA3G,KAAAT,EAAAuV,KAAArU,GAAA,GAAAqmB,OAAA8yC,YAAsC55D,KAAAT,KAAWslF,EAAAllF,UAAAwuD,OAAA,SAAA1tD,GAA4CT,KAAA8kF,MAAA9kF,KAAA8kF,MAAAjpE,OAAA,SAAApd,GAAyC,MAAAA,GAAAkI,KAAAlG,KAAkBjC,EAAAD,QAAAsmF,OAC3aG,KAAA,SAAA/jF,EAAAzC,EAAAD,GACJ,YAAa,IAAA0hF,GAAAh/E,EAAA,kCAAAuvB,EAAAvvB,EAAA,gBAAA+rC,EAAA/rC,EAAA,mBAAAgkF,EAAAhkF,EAAA,oBAAAikF,EAAAjkF,EAAA,uBAAAkkF,EAAAlkF,EAAA,sBAAAyL,GAAA,yCAAA04E,EAAAnF,EAAAppC,MAAAwuC,EAAA,SAAA5kF,GAAsY,QAAAhC,MAAcgC,EAAA9B,KAAAqB,WAAAkZ,IAAAza,GAAyB,MAAAgC,KAAAhC,EAAAivD,UAAAjtD,GAAAhC,EAAAkB,UAAAT,OAAA2D,OAAApC,KAAAd,WAAAlB,EAAAkB,UAAAsoB,YAAAxpB,IAAAkB,UAAAuZ,IAAA,SAAAzY,GAA0H,GAAAhC,GAAAuB,IAAW,KAAAA,KAAAslF,UAAAL,EAAApuC,MAAAp2C,GAAA,CAA2CT,KAAAulF,iBAAqBvlF,KAAAwlF,gBAAqBxlF,KAAAylF,sBAA2BzlF,KAAA82C,cAAmBr2C,EAAA+vB,EAAA7b,QAAgBgnB,OAAAypD,EAAAzpD,OAAAnM,QAAA+T,MAAA6hD,EAAA7hD,MAAA/T,QAAAunB,SAAAquC,EAAAruC,SAAAvnB,QAAA2nB,UAAAiuC,EAAAjuC,UAAA3nB,SAA4J/uB,EAAI,QAAAN,GAAA,EAAAlB,EAAAyN,EAAyBvM,EAAAlB,EAAA8B,OAAWZ,GAAA,GAAM,GAAAZ,GAAAN,EAAAkB,EAAW1B,GAAA8mF,cAAAhmF,GAAA,GAAA2lF,GAAAE,EAAA7lF,GAAAkB,EAAAlB,IAAgE,MAAAS,QAAavB,EAAAkB,UAAA+lF,SAAA,WAAiC,OAAO/pD,OAAA37B,KAAA2lF,iBAAA,UAAApiD,MAAAvjC,KAAA2lF,iBAAA,SAAA5uC,SAAA/2C,KAAA2lF,iBAAA,YAAAxuC,UAAAn3C,KAAA2lF,iBAAA,eAAqKlnF,EAAAkB,UAAAgmF,iBAAA,SAAAllF,GAA0C,MAAA+vB,GAAAo1D,SAAAnlF,EAA9tC,eAA8tCT,KAAAylF,mBAAAhlF,GAAAT,KAAAulF,cAAA9kF,IAAAT,KAAAulF,cAAA9kF,GAAA6O,OAAwH7Q,EAAAkB,UAAAkmF,cAAA,SAAAplF,EAAAhC,GAAyC,gBAAAgC,EAAA,CAAmB,GAAAN,GAAAH,KAAAwlF,aAAA/kF,GAAAqlF,UAAArnF,GAAAQ,EAAAuxB,EAAAu1D,qBAAA5lF,EAAuE,QAAO4B,EAAA9C,EAAA,GAAA0C,EAAA1C,EAAA,GAAAuK,EAAAvK,EAAA,IAAsB,MAAAe,MAAAwlF,aAAA/kF,GAAAqlF,UAAArnF,IAAyCA,EAAAkB,UAAAg3C,SAAA,SAAAl2C,GAAkC,GAAAhC,GAAAuB,IAAW,KAAAA,KAAAslF,UAAAL,EAAApuC,MAAAp2C,GAAA,OAAAN,KAAAM,GAAA,CAA0D,GAAAxB,GAAAwB,EAAAN,EAAWqwB,GAAAo1D,SAAAzlF,EAAjpD,eAAipD1B,EAAAgnF,mBAAAtlF,GAAAlB,EAAA,OAAAA,OAAA,KAAAA,QAAAR,GAAA8mF,cAAAplF,GAAA1B,EAAA8mF,cAAAplF,GAAA,GAAA+kF,GAAAE,EAAAjlF,GAAAlB,KAA0KR,EAAAkB,UAAAohE,YAAA,SAAAtgE,GAAqC,GAAAhC,GAAAuB,IAAW,QAAAG,KAAA1B,GAAA8mF,cAAA9mF,EAAAq4C,WAAA32C,GAAA1B,EAAAonF,cAAA1lF,GAAgEylB,KAAAnlB,KAAShC,EAAAkB,UAAAqmF,uBAAA,SAAAvlF,EAAAhC,EAAA0B,EAAAlB,EAAAM,GAAwD,GAAAmB,GAAAP,EAAAsjE,WAAAzjE,KAAAwlF,aAAA/kF,OAAA,GAAAG,EAAAwkF,EAAA3kF,EAAmE,WAAAhC,OAAA,KAAAA,MAAA,GAAAymF,GAAAtkF,IAAA4uB,WAAA9uB,KAAAulF,YAAAC,OAAAznF,EAAAynF,KAAA,CAAgG,GAAApmF,GAAA0wB,EAAA7b,QAAmB0xC,SAAA,IAAA44B,MAAA,GAAqBhgF,EAAAe,KAAA2lF,iBAAAllF,EAAvrE,gBAAurE/B,EAAAsB,KAAAwlF,aAAA/kF,GAAA,GAAA0kF,GAAAvkF,EAAAnC,EAAAiC,EAAAZ,EAAmGpB,GAAAynF,YAAAznF,EAAA0nF,OAAA7mF,EAAA2Z,IAAAxa,EAAA2nF,QAAAv/D,KAAAC,QAAArmB,GAAAnB,EAAA4uD,OAAAztD,EAAA0lF,UAA2E3nF,EAAAkB,UAAA2mF,uBAAA,SAAA7lF,EAAAhC,EAAA0B,GAAoD,GAAAlB,GAAAM,EAAAS,IAAa,KAAAf,IAAAM,GAAAgmF,cAAAhmF,EAAAymF,uBAAA/mF,EAAAM,EAAAgmF,cAAAtmF,GAAAwB,EAAAhC,EAAA0B,IAA8E1B,EAAAkB,UAAA2lF,UAAA,SAAA7kF,EAAAhC,GAAqC,MAAAwmF,GAAAsB,WAAAvmF,KAAAS,EAAA9B,KAAAsmF,EAAAz0D,EAAA7b,QAAuErF,MAAA7Q,EAAAm4C,OAAesJ,QAAA,EAAAojB,QAAA,GAAoB2c,iBAAyBxhF,GAAGuuC,EAAUxuC,GAAAD,QAAA8mF,IACnrFmB,iCAAA,IAAAn1B,kBAAA,IAAAxgC,eAAA,IAAA41D,sBAAA,IAAAC,qBAAA,IAAAC,mBAAA,MAAwJC,KAAA,SAAA3lF,EAAAzC,EAAAD,GAC3J,YAAa,IAAAoJ,GAAA1G,EAAA,kBAAA4lF,EAAAl/E,EAAAk/E,mBAAA/0B,EAAA7wD,EAAA,gBAAA6lF,EAAA7lF,EAAA,oBAAoJzC,GAAAD,QAAA,SAAA4B,EAAAO,EAAAE,EAAAlC,EAAAmB,GAAmC,GAAApB,GAAA,IAAAiC,EAAAZ,EAAArB,EAAA,IAAAgC,EAAA/B,EAAAmoF,EAAAjmF,GAAAupB,QAAA,cAAkEhqB,GAAAgqB,QAAA,UAAqB1rB,EAAA,IAAAqB,GAAAgyD,EAAAxC,aAAAy3B,OAAqCj1B,GAAAiF,eAAAt2D,EAAA,SAAAN,EAAAO,GAAoC,GAAAP,EAAAN,EAAAM,OAAU,IAAAO,EAAA,CAAW,OAAAE,MAAYlC,EAAA,EAAAD,EAAAqoF,EAAApmF,EAAA4J,MAA6B5L,EAAAD,EAAAsC,OAAWrC,GAAA,GAAM,GAAAoB,GAAArB,EAAAC,EAAWkC,GAAAd,EAAA6G,IAAA7G,EAAUD,EAAA,KAAAe,SACrcwwD,eAAA,IAAAgD,iBAAA,IAAA4yB,oBAAA,MAAgEC,KAAA,SAAAhmF,EAAAzC,EAAAD,GACnE,YAAa,IAAAuzD,GAAA7wD,EAAA,gBAAAijB,EAAAjjB,EAAA,mBAAA0G,EAAA1G,EAAA,kBAAAimF,EAAAv/E,EAAAu/E,mBAAA91D,EAAAnwB,EAAA,iBAAAggD,EAAA7vB,EAAA6vB,SAAqMziD,GAAAD,QAAA,SAAA4B,EAAAO,EAAAjC,GAA+B,QAAAmC,KAAa,GAAAD,EAAAlC,EAAAkC,OAAU,IAAAF,GAAAxB,EAAA,CAAc,GAAAkB,GAAA+jB,EAAA9Z,aAAAnL,GAAAyB,IAAmC,QAAAE,KAAAH,GAAA,CAAgB,GAAAlB,GAAAkB,EAAAG,GAAAlC,EAAAa,EAAA0H,MAAAlH,EAAAR,EAAA2H,OAAAnF,EAAAxC,EAAAwC,EAAAxB,EAAAhB,EAAAoC,EAAA/C,EAAAW,EAAA07B,IAAAp7B,EAAAN,EAAAu6B,WAAAh6B,EAAAmhD,EAAAp+C,QAAuFoE,MAAAvI,EAAAwI,OAAAnH,GAAmBkhD,GAAA74B,KAAAjoB,EAAAL,GAAoBiC,IAAAJ,EAAApB,IAAUwB,EAAA,EAAAJ,EAAA,IAAUsF,MAAAvI,EAAAwI,OAAAnH,IAAiBW,EAAAE,IAAQ0J,KAAAxK,EAAAg6B,WAAAj6B,EAAAo7B,IAAAr8B,GAA2BH,EAAA,KAAAiC,IAAW,IAAAP,EAAA,WAAA1B,GAAA,QAA6B,IAAAgC,GAAAxB,EAAA0B,EAAApB,EAAA2kB,EAAA0sB,iBAAA,UAAgDkhB,GAAAM,QAAA1xD,EAAAwmF,EAAA/mF,EAAAZ,EAAA,SAAAuyD,EAAAxC,aAAA63B,YAAA,SAAAhnF,EAAAO,GAA2FC,MAAAR,EAAAM,EAAAC,EAAAE,OAAiBkxD,EAAA9P,SAAAthD,EAAAwmF,EAAA/mF,EAAAZ,EAAA,QAAAuyD,EAAAxC,aAAA83B,aAAA,SAAAjnF,EAAAO,GAA8FC,MAAAR,EAAAlB,EAAAyB,EAAAE,UAC9yBwwD,eAAA,IAAAngB,kBAAA,IAAAmO,gBAAA,IAAAgV,iBAAA,MAAkFizB,KAAA,SAAApmF,EAAAzC,EAAAD,GACrF,YAAa,SAAA+oF,GAAAnnF,EAAAS,EAAAF,GAA+B,IAAAP,GAAAO,EAAA8f,YAAA+mE,EAAA3mF,GAAsC,QAAA2mF,GAAApnF,EAAAS,EAAAF,GAA8B,OAAAP,EAAA,CAAU,GAAAM,GAAAC,EAAA8f,YAAAgnE,MAAgC1oF,EAAA2B,EAAAkG,GAAAlI,EAAAgC,EAAAs+C,OAAAx/C,EAAAkB,EAAAwG,MAAAhI,EAAAwB,EAAAyG,OAAAxF,EAAAjB,EAAA8/C,KAAAzgD,EAAAW,EAAA+/C,IAAA3gD,EAAAY,EAAAggD,OAAsE7/C,GAAAyG,MAAQV,GAAA7H,EAAAigD,OAAAD,EAAAj8C,QAA+BoE,MAAA1H,EAAA,EAAAkoF,EAAAvgF,OAAAjI,EAAA,EAAAwoF,GAAmChpF,GAAAwgD,SAAah4C,MAAA1H,EAAA2H,OAAAjI,EAAAshD,KAAA7+C,EAAA8+C,IAAA1gD,EAAA2gD,QAAA5gD,MAA4C,QAAA2nF,GAAArnF,EAAAS,EAAAF,GAA0B,IAAAP,EAAAS,EAAA+F,GAAAjG,EAAA4L,aAAA,IAAAnM,EAAAS,EAAAm+C,OAAAr+C,EAAAogB,YAAA,IAAA3gB,EAAAS,EAAAqG,MAAAvG,EAAA4L,aAAA,IAAAnM,EAAAS,EAAAsG,OAAAxG,EAAA4L,aAAA,IAAAnM,EAAAS,EAAA2/C,KAAA7/C,EAAA6M,cAAA,IAAApN,EAAAS,EAAA4/C,IAAA9/C,EAAA6M,cAAA,IAAApN,IAAAS,EAAA6/C,QAAA//C,EAAA4L,cAA6M,GAAA3E,GAAA1G,EAAA,iBAAA69C,EAAAn3C,EAAAm3C,WAAArf,EAAAx+B,EAAA,OAAAwmF,EAAA,CAA4FjpF,GAAAD,QAAA,SAAA4B,GAA2B,UAAAs/B,GAAAt/B,GAAAiM,WAAAk7E,OAAqD9oF,EAAAD,QAAAmpF,iBAAAD,IACnvBroC,gBAAA,IAAArwB,IAAA,KAA6B44D,KAAA,SAAA1mF,EAAAzC,EAAAD,GAChC,YAAa,SAAAqpF,GAAAnnF,EAAAG,EAAAT,GAAqC,MAAAS,GAAAsiC,4BAAAziC,GAAAG,EAAA+tC,MAAAluC,GAAAN,EAAAkyB,sBAAA/yB,IAAAsB,EAAA+F,IAAAi9B,wBAAAnjC,GAAAmH,IAAoH,QAAAigF,GAAApnF,GAA8B,MAAAY,MAAAiE,KAAA7E,EAAA,GAAAA,EAAA,GAAAA,EAAA,GAAAA,EAAA,IAAsC,QAAA2C,GAAA3C,EAAAG,EAAAT,EAAAZ,EAAAmB,GAA8B,IAAAE,EAAA,KAAAA,EAAA,SAAAH,EAAyB,IAAAhC,GAAAmF,EAAAmC,QAAAnF,EAAuB,cAAAT,GAAA1B,EAAAiG,SAAAnF,EAA8B,QAAAoB,MAAAb,EAAA,EAAiBA,EAAAW,EAAAM,OAAWjB,IAAA,CAAK,OAAAb,GAAAwB,EAAAX,GAAApB,KAAAE,EAAA,EAAwBA,EAAAK,EAAA8B,OAAWnC,IAAAF,EAAA2I,KAAApI,EAAAL,GAAAoF,IAAAvF,EAAA8F,MAAA7D,IAAiCC,GAAA0G,KAAA3I,GAAU,MAAAiC,GAAS,GAAAiD,GAAA3C,EAAA,yBAA4CzC,GAAAD,SAAgBqpF,uBAAAC,oBAAAzkF,eACvgB2K,yBAAA,IAA2B+5E,KAAA,SAAA7mF,EAAAzC,EAAAD,GAC9B,YAAa,IAAAyuC,GAAA/rC,EAAA,mBAAA8mF,EAAA9mF,EAAA,iBAAA+mF,EAAA/mF,EAAA,iBAAAmgD,EAAAngD,EAAA,2BAAAy+C,EAAAz+C,EAAA,2BAAAokF,EAAApkF,EAAA,WAAA0hD,EAAA1hD,EAAA,wBAAAuvB,EAAAvvB,EAAA,gBAAA6wD,EAAA7wD,EAAA,gBAAAgnF,EAAAhnF,EAAA,kBAAAijB,EAAAjjB,EAAA,mBAAAinF,EAAAjnF,EAAA,sBAAA4jF,EAAA5jF,EAAA,oBAAAgkF,EAAAhkF,EAAA,oBAAAknF,EAAAlnF,EAAA,oBAAAu2D,QAAA4wB,EAAAnnF,EAAA,oBAAAw2D,QAAA4wB,EAAApnF,EAAA,4BAAAgiD,EAAAhiD,EAAA,0BAAAg/E,EAAAh/E,EAAA,kCAAAqnF,EAAArnF,EAAA,0BAAAsnF,EAAAtnF,EAAA,8BAAA0gE,EAAA1gE,EAAA,uBAAAunF,EAAAvnF,EAAA,sBAAAisC,EAAAjsC,EAAA,6BAAAwnF,EAAAj4D,EAAAujC,KAAAy0B,EAAAvmB,YAAA,wJAAAymB,EAAAl4D,EAAAujC,KAAAy0B,EAAAvmB,YAAA,gDAAAl1B,EAAA,SAAA5sC,GAAqyC,QAAAM,KAAAC,EAAAE,GAAkB,GAAAnC,GAAAuB,IAAWG,GAAAxB,KAAAqB,MAAAY,EAAA4vB,EAAA7b,QAA4BssE,SAAA,gBAAAxgF,KAAAwnF,EAAAU,YAAAloF,IAAoDG,EAAI,IAAA3B,GAAA,SAAAkB,EAAAM,GAAoB,MAAAhC,GAAA+T,IAAA/T,EAAA+T,IAAA69C,kBAAAlwD,EAAAM,IAA2Cs/C,IAAA5/C,GAAQH,MAAAwS,IAAA9R,EAAAV,KAAAk6C,cAAAx5C,KAAAw5C,eAAA,GAAA2qC,GAAA7kF,KAAAwvD,WAAA,GAAA04B,GAAAK,IAAAvoF,WAAAg4C,aAAA,GAAAoJ,GAAAphD,KAAAmmD,aAAA,GAAAzG,GAAAzgD,EAAA2B,EAAAg/C,0BAAA5/C,KAAAu3C,UAAA,GAAAoL,GAAA,SAAA3iD,KAAAymD,WAAkRzmD,KAAAwmD,UAAAxmD,KAAAsmD,gBAAoCtmD,KAAA4oF,eAAoB5oF,KAAAywD,SAAA,EAAAjgC,EAAA+mC,SAAA,kBAAAv3D,WAAA6oF,gBAAA7oF,KAAAyvD,iBAAA/uD,GAAAV,KAAA6tD,KAAA,eAA8HoC,SAAA,SAAmB,IAAAnwD,GAAAE,IAAWA,MAAA8oF,uBAAA57C,EAAAypB,8BAAA,SAAAx2D,GAAoFL,EAAA0vD,WAAA2B,UAAA,oBAAAhxD,EAAAs2D,cAAAt2D,EAAAy2D,cAA4E,QAAAn2D,KAAAX,GAAAwmD,aAAAxmD,EAAAwmD,aAAA7lD,GAAA83D,UAAyD,IAAAh5D,GAAA,SAAAY,EAAAM,GAAoB,GAAAN,EAAA1B,EAAAovD,KAAA,SAAqBjiC,MAAAzrB,QAAU,IAAAM,EAAA,CAAW,GAAAG,EAAAqgF,UAAAgE,EAAAsB,WAAA9nF,EAAAwmF,EAAAxkF,IAAA,MAAmEhC,GAAAgyD,SAAA,EAAAhyD,EAAAsqF,WAAAtoF,EAAAhC,EAAAuqF,eAA8C,QAAAtoF,KAAAD,GAAA6uB,QAAA7wB,EAAA2jE,UAAA1hE,EAAAD,EAAA6uB,QAAA5uB,GAAAE,EAAqDonF,GAAAvnF,EAAA6iE,OAAArkE,EAAA,SAAAkB,EAAAM,GAAoC,GAAAN,EAAA1B,EAAAovD,KAAA,QAAA1tD,OAAuB,IAAAM,EAAA,OAAAC,KAAAD,GAAAhC,EAAAu5C,aAAAiK,SAAAvhD,EAAAD,EAAAC,GAAyDjC,GAAAu5C,aAAA6J,WAAA,KAA6BpjD,EAAA0nD,aAAArG,OAAAr/C,EAAAy/C,QAAAzhD,EAAAwqF,WAAAxqF,EAAAovD,KAAA,QAA8DoC,SAAA,UAAiBxxD,EAAAovD,KAAA,eAAyB,iBAAAptD,GAAAqxD,EAAAM,QAAAnzD,EAAAgpF,EAAAiB,kBAAAzoF,GAAAqxD,EAAAxC,aAAAviB,OAAAxtC,GAAA2kB,EAAAiwC,MAAA,WAAmH,MAAA50D,GAAA,KAAAkB,KAAiBT,KAAAskB,GAAA,gBAAAnkB,GAA6B,cAAAA,EAAA8vD,UAAA,aAAA9vD,EAAAgwD,eAAA,CAAyD,GAAA1vD,GAAAhC,EAAA6nD,aAAAnmD,EAAAgpF,SAAiC,IAAA1oF,EAAA,CAAM,GAAAC,GAAAD,EAAA04C,WAAoB,IAAAz4C,KAAAwzD,eAAA,OAAAtzD,KAAAnC,GAAAgoD,QAAA,CAA+C,GAAAxnD,GAAAR,EAAAgoD,QAAA7lD,EAAmB3B,GAAAgX,SAAAvV,EAAAiG,IAAAlI,EAAA2qF,eAAAnqF,QAA0C,MAAAkB,KAAAM,EAAAitD,UAAAvtD,GAAAM,EAAAd,UAAAT,OAAA2D,OAAA1C,KAAAR,WAAAc,EAAAd,UAAAsoB,YAAAxnB,IAAAd,UAAAypF,eAAA,SAAAjpF,GAAqI,GAAAM,GAAAT,KAAAsmD,aAAAnmD,EAAA8V,OAAkC,IAAAxV,EAAA,CAAM,GAAAC,GAAAP,EAAAq8D,WAAoB,IAAA97D,EAAA,CAAM,GAAAE,GAAAH,EAAA04C,aAAoB,YAAAv4C,EAAAgM,MAAAhM,EAAAszD,iBAAA,IAAAtzD,EAAAszD,eAAArqD,QAAAnJ,KAAAV,KAAA6tD,KAAA,SAA6FjiC,MAAA,GAAA/qB,OAAA,iBAAAH,EAAA,+BAAAE,EAAA+F,GAAA,kCAAAxG,EAAAwG,GAAA,UAAuHlG,EAAAd,UAAA2hD,OAAA,WAA+B,GAAAnhD,GAAAH,IAAW,KAAAA,KAAAywD,QAAA,QAA0B,IAAAvxD,OAAAmZ,KAAArY,KAAAqpF,iBAAAtoF,OAAA,QAAqD,QAAAN,KAAAN,GAAAmmD,aAAA,IAAAnmD,EAAAmmD,aAAA7lD,GAAA6gD,SAAA,QAAoE,SAAAthD,KAAAg4C,aAAA4J,YAAqCnhD,EAAAd,UAAAspF,SAAA,WAAiC,GAAA9oF,GAAAH,KAAAS,EAAAkhE,EAAA3hE,KAAA+oF,WAAA58E,OAA2CnM,MAAAwmD,OAAA/lD,EAAA+R,IAAA,SAAArS,GAA8B,MAAAA,GAAAwG,KAAY3G,KAAAymD,UAAkB,QAAA/lD,GAAA,EAAAE,EAAAH,EAAgBC,EAAAE,EAAAG,OAAWL,GAAA,GAAM,GAAAjC,GAAAmC,EAAAF,EAAWjC,GAAAspF,EAAAllF,OAAApE,KAAAgxD,iBAAAtvD,GAA6C8gC,OAAOt6B,GAAAlI,EAAAkI,MAASxG,EAAAsmD,QAAAhoD,EAAAkI,IAAAlI,EAAoBuB,KAAAwvD,WAAA2B,UAAA,YAAAnxD,KAAAspF,iBAAAtpF,KAAAwmD,SAAAxmD,KAAA62C,MAAA,GAAAwuC,GAAArlF,KAAA+oF,WAAAlyC,QAAsHp2C,EAAAd,UAAA2pF,iBAAA,SAAAnpF,GAA0C,GAAAM,GAAAT,IAAW,OAAAG,GAAAqS,IAAA,SAAArS,GAAyB,MAAAM,GAAAgmD,QAAAtmD,GAAAwyB,eAAkClyB,EAAAd,UAAA4pF,cAAA,SAAAppF,EAAAM,GAAyC,GAAAC,GAAAV,IAAW,IAAAA,KAAAywD,QAAA,CAAiBtwD,QAAAM,MAAcgjE,YAAA,EAAe,IAAA7iE,GAAAZ,KAAA+oF,WAAAtlB,eAAoChlE,EAAAuB,KAAAwpF,sBAAAxpF,KAAAymD,QAAAzmD,KAAAypF,kBAAmE,QAAAxqF,KAAAR,GAAA,CAAgB,GAAAqB,GAAAY,EAAA+lD,QAAAxnD,GAAAM,EAAAmB,EAAA+oF,mBAAAxqF,EAA6C,IAAAyB,EAAA8oF,uBAAAjqF,EAAA66E,IAAAt6E,EAAA4pF,uBAAAvpF,EAAAM,EAAAG,EAAAF,EAAAw5C,cAAAx5C,EAAAkoF,iBAAgG,QAAAlqF,KAAAa,GAAAmB,EAAA+lD,QAAAxnD,GAAA0qF,sBAAAjrF,EAAAyB,EAAAM,EAAAG,EAAAF,EAAAw5C,cAAAx5C,EAAAkoF,aAA8F5oF,KAAA62C,MAAAyvC,uBAAA7lF,EAAAG,EAAAZ,KAAAk6C,iBAA2Dz5C,EAAAd,UAAAiqF,aAAA,SAAAzpF,GAAsC,GAAAM,GAAAT,IAAW,IAAAA,KAAAywD,QAAA,CAAiB,OAAA/vD,KAAAD,GAAA6lD,aAAA7lD,EAAA6lD,aAAA5lD,GAAA6lD,MAAA,CAAsDvmD,MAAA6pF,mBAAA1pF,EAA2B,QAAAS,GAAA,EAAAnC,EAAAgC,EAAA+lD,OAAuB5lD,EAAAnC,EAAAsC,OAAWH,GAAA,GAAM,GAAA3B,GAAAR,EAAAmC,GAAAd,EAAAW,EAAAgmD,QAAAxnD,EAA0Ba,GAAAihE,YAAA5gE,IAAAL,EAAA6mD,SAAAxmD,IAAAL,EAAAmW,SAAAxV,EAAA6lD,aAAAxmD,EAAAmW,QAAAswC,MAAA,GAA8EvmD,KAAA62C,MAAAkqB,YAAA5gE,GAA0BkB,KAAAoV,MAAAzW,KAAAwJ,KAAAnI,KAAAoV,MAAAtW,IAAAH,KAAAk6C,cAAAhhC,IAAA,KAAAlZ,KAAAwJ,EAAArJ,IAA0EM,EAAAd,UAAAkqF,mBAAA,SAAA1pF,GAA4C,GAAAM,GAAAT,KAAA4oF,gBAAuB,KAAAnoF,EAAAqpF,kBAAArpF,EAAAqpF,gBAAAzoF,KAAAoV,MAAAtW,GAAAM,EAAAspF,oBAAA,EAAAtpF,EAAAupF,SAAA7pF,GAAAkB,KAAAoV,MAAAhW,EAAAupF,UAAA3oF,KAAAoV,MAAAtW,IAAAM,EAAAqpF,gBAAAzoF,KAAAoV,MAAAtW,GAAAM,EAAAspF,oBAAAjjE,KAAAC,OAAA1lB,KAAAoV,MAAAhW,EAAAupF,UAAA3oF,KAAAoV,MAAAtW,KAAAM,EAAAqpF,gBAAAzoF,KAAAoV,MAAAtW,EAAA,GAAAM,EAAAspF,oBAAAjjE,KAAAC,OAAAtmB,EAAAupF,SAAA7pF,GAAmUM,EAAAd,UAAAsqF,aAAA,WAAqC,IAAAjqF,KAAAywD,QAAA,SAAA5vD,OAAA,8BAA8DJ,EAAAd,UAAA2iD,OAAA,SAAAniD,EAAAM,GAAkC,GAAAC,GAAAV,IAAW,IAAAA,KAAAkqF,SAAA,CAAkB,GAAAtpF,GAAA1B,OAAAmZ,KAAArY,KAAAmqF,gBAAA1rF,EAAAS,OAAAmZ,KAAArY,KAAAoqF,iBAA0ExpF,EAAAG,QAAAtC,EAAAsC,QAAAf,KAAAqqF,sBAAArqF,KAAAsqF,oBAAA1pF,EAAAnC,EAA8E,QAAAQ,KAAAyB,GAAA2oF,gBAAA,CAAgC,GAAAvpF,GAAAY,EAAA2oF,gBAAApqF,EAA2B,YAAAa,EAAAY,EAAA6pF,cAAAtrF,GAAA,UAAAa,GAAAY,EAAA8pF,aAAAvrF,GAA+De,KAAAupF,cAAAppF,EAAAM,GAAAT,KAAA6oF,gBAAA7oF,KAAA6tD,KAAA,QAA+DoC,SAAA,YAAoBxvD,EAAAd,UAAA2qF,oBAAA,SAAAnqF,EAAAM,GAA+C,GAAAC,GAAAV,KAAAY,EAAAZ,KAAAqqF,oBAAArqF,KAAAwmD,OAAA3qC,OAAA,SAAA1b,GAAqE,iBAAAO,EAAA+lD,QAAAtmD,GAAAyM,OAAmC,IAAO5M,MAAAwvD,WAAA2B,UAAA,gBAA0ChlD,OAAAnM,KAAAspF,iBAAAnpF,GAAAggE,WAAA1/D,EAAA2/D,YAAAx/D,KAA6DH,EAAAd,UAAAkpF,cAAA,WAAsC7oF,KAAAkqF,UAAA,EAAAlqF,KAAAmqF,kBAAuCnqF,KAAAoqF,kBAAuBpqF,KAAAqqF,qBAAA,EAAArqF,KAAAqpF,mBAAoDrpF,KAAAypF,sBAA2BzpF,KAAAwpF,uBAAA,GAA+B/oF,EAAAd,UAAA8qF,SAAA,SAAAtqF,GAAkC,GAAAM,GAAAT,IAAW,IAAAA,KAAAiqF,eAAAhF,EAAAsB,WAAAvmF,KAAAilF,EAAA9kF,IAAA,QAAgFA,GAAAqwB,EAAA3sB,MAAA1D,KAAAgM,OAAAw1D,EAAAxhE,EAAAgM,OAAyC,IAAAzL,GAAA8nF,EAAAxoF,KAAA2yB,YAAAxyB,GAAA0b,OAAA,SAAA1b,GAAkD,QAAAA,EAAAyuB,UAAA85D,KAA8C,QAAAhoF,EAAAK,OAAA,QAAyB,IAAAH,GAAAF,EAAAmb,OAAA,SAAA1b,GAA2B,QAAAA,EAAAyuB,UAAA65D,KAAgD,IAAA7nF,EAAAG,OAAA,WAAAF,OAAA,kBAAAD,EAAA4R,IAAA,SAAArS,GAAkE,MAAAA,GAAAyuB,UAAiB1f,KAAA,UAAkB,OAAAxO,GAAAob,QAAA,SAAA3b,GAA6B,kBAAAA,EAAAyuB,SAAAnuB,EAAAN,EAAAyuB,SAAA5K,MAAAvjB,EAAAN,EAAA+hE,QAA0DliE,KAAA+oF,WAAA5oF,GAAA,GAAuBM,EAAAd,UAAAsiD,SAAA,SAAA9hD,EAAAM,GAAoC,GAAAT,KAAAg4C,aAAAgK,SAAA7hD,GAAA,MAAAH,MAAA6tD,KAAA,SAA2DjiC,MAAA,GAAA/qB,OAAA,4CAA6Db,MAAAg4C,aAAAiK,SAAA9hD,EAAAM,GAAAT,KAAA6tD,KAAA,QAAkDoC,SAAA,WAAmBxvD,EAAAd,UAAAuiD,YAAA,SAAA/hD,GAAqC,IAAAH,KAAAg4C,aAAAgK,SAAA7hD,GAAA,MAAAH,MAAA6tD,KAAA,SAA4DjiC,MAAA,GAAA/qB,OAAA,oCAAqDb,MAAAg4C,aAAAkK,YAAA/hD,GAAAH,KAAA6tD,KAAA,QAAmDoC,SAAA,WAAmBxvD,EAAAd,UAAAyiE,UAAA,SAAAjiE,EAAAM,EAAAC,GAAuC,GAAAE,GAAAZ,IAAW,IAAAA,KAAAiqF,mBAAA,KAAAjqF,KAAAsmD,aAAAnmD,GAAA,SAAAU,OAAA,yCAA+G,KAAAJ,EAAAmM,KAAA,SAAA/L,OAAA,wFAAA3B,OAAAmZ,KAAA5X,GAAAyO,KAAA,UAAkJ,6DAAArF,QAAApJ,EAAAmM,OAAA,GAAA5M,KAAAslF,UAAAL,EAAAhvE,OAAA,WAAA9V,EAAAM,EAAA,KAAAC,IAAA,CAA6I,GAAAjC,GAAAuB,KAAAsmD,aAAAnmD,GAAA,GAAA8iD,GAAA9iD,EAAAM,EAAAT,KAAAwvD,WAAgE/wD,GAAAm4C,MAAA52C,KAAAvB,EAAAgxD,iBAAAzvD,KAAA,WAAgD,OAAO0qF,eAAA9pF,EAAA0gD,SAAArrC,OAAAxX,EAAAk0B,YAAAw2D,SAAAhpF,KAA2D1B,EAAA6vD,MAAAtuD,KAAAwS,KAAAxS,KAAAkqF,UAAA,IAAsCzpF,EAAAd,UAAA2yD,aAAA,SAAAnyD,GAAsC,GAAAH,KAAAiqF,mBAAA,KAAAjqF,KAAAsmD,aAAAnmD,GAAA,SAAAU,OAAA,kCAAwG,IAAAJ,GAAAT,KAAAsmD,aAAAnmD,SAA2BH,MAAAsmD,aAAAnmD,SAAAH,MAAAqpF,gBAAAlpF,GAAAM,EAAAotD,KAAA,QAA0EsC,eAAA,WAAAF,SAAA,SAAAk5B,SAAAhpF,IAAuDM,EAAAgvD,iBAAA,MAAAhvD,EAAA06D,aAAA16D,EAAA8tD,UAAA9tD,EAAA8tD,SAAAvuD,KAAAwS,KAAAxS,KAAAkqF,UAAA,GAA4FzpF,EAAAd,UAAAw5C,UAAA,SAAAh5C,GAAmC,MAAAH,MAAAsmD,aAAAnmD,IAAAH,KAAAsmD,aAAAnmD,GAAAg5C,aAA8D14C,EAAAd,UAAA+iE,SAAA,SAAAviE,EAAAM,EAAAC,GAAsCV,KAAAiqF,cAAoB,IAAArpF,GAAAT,EAAAwG,EAAW,oBAAAxG,GAAA8V,SAAAjW,KAAAoiE,UAAAxhE,EAAAT,EAAA8V,QAAA9V,EAAAqwB,EAAA3sB,MAAA1D,KAAAqwB,EAAA7b,OAAAxU,GAA2F8V,OAAArV,MAASZ,KAAAslF,UAAAL,EAAAhkD,MAAA,UAAArgC,EAAAT,GAAsDghF,YAAA,GAAczgF,GAAA,CAAK,GAAAjC,GAAAspF,EAAAllF,OAAA1C,EAA2BH,MAAAopF,eAAA3qF,KAAAgxD,iBAAAzvD,MAAgDihC,OAAOt6B,GAAA/F,IAAQ,IAAA3B,GAAAwB,EAAAT,KAAAwmD,OAAA38C,QAAApJ,GAAAT,KAAAwmD,OAAAzlD,MAAkD,IAAAf,KAAAwmD,OAAAx+C,OAAA/I,EAAA,EAAA2B,GAAAZ,KAAAymD,QAAA7lD,GAAAnC,EAAAuB,KAAAoqF,eAAAxpF,IAAAnC,EAAAwX,OAAA,CAAiF,GAAAnW,GAAAE,KAAAoqF,eAAAxpF,SAA6BZ,MAAAoqF,eAAAxpF,GAAAd,EAAA8M,OAAAnO,EAAAmO,KAAA5M,KAAAqpF,gBAAA5qF,EAAAwX,QAAA,SAAAjW,KAAAqpF,gBAAA5qF,EAAAwX,QAAA,SAAAjW,KAAAsmD,aAAA7nD,EAAAwX,QAAAi4C,SAAmKluD,KAAA2qF,aAAAlsF,GAAA,WAAAA,EAAAmO,OAAA5M,KAAAqqF,qBAAA,GAAArqF,KAAAgpF,cAAApoF,KAA6FH,EAAAd,UAAAirF,UAAA,SAAAzqF,EAAAM,GAAqCT,KAAAiqF,eAAAjqF,KAAAkqF,UAAA,CAAqC,IAAAxpF,GAAAV,KAAAymD,QAAAtmD,EAAsB,KAAAO,EAAA,WAAAV,MAAA6tD,KAAA,SAAqCjiC,MAAA,GAAA/qB,OAAA,cAAAV,EAAA,6DAA8F,IAAAS,GAAAZ,KAAAwmD,OAAA38C,QAAA1J,EAA6BH,MAAAwmD,OAAAx+C,OAAApH,EAAA,EAAwB,IAAAnC,GAAAgC,EAAAT,KAAAwmD,OAAA38C,QAAApJ,GAAAT,KAAAwmD,OAAAzlD,MAAkDf,MAAAwmD,OAAAx+C,OAAAvJ,EAAA,EAAA0B,GAAA,WAAAO,EAAAkM,OAAA5M,KAAAqqF,qBAAA,EAAA3pF,EAAAuV,SAAAjW,KAAAqpF,gBAAA3oF,EAAAuV,UAAAjW,KAAAqpF,gBAAA3oF,EAAAuV,QAAA,SAAAjW,KAAAsmD,aAAA5lD,EAAAuV,QAAAi4C,WAAoMztD,EAAAd,UAAA8iE,YAAA,SAAAtiE,GAAqCH,KAAAiqF,cAAoB,IAAAxpF,GAAAT,KAAAymD,QAAAtmD,EAAsB,KAAAM,EAAA,WAAAT,MAAA6tD,KAAA,SAAqCjiC,MAAA,GAAA/qB,OAAA,cAAAV,EAAA,+DAAgGM,GAAAgvD,iBAAA,KAAyB,IAAA/uD,GAAAV,KAAAwmD,OAAA38C,QAAA1J,EAA6BH,MAAAwmD,OAAAx+C,OAAAtH,EAAA,cAAAD,EAAAmM,OAAA5M,KAAAqqF,qBAAA,GAAArqF,KAAAkqF,UAAA,EAAAlqF,KAAAoqF,eAAAjqF,GAAAM,QAAAT,MAAAymD,QAAAtmD,SAAAH,MAAAmqF,eAAAhqF,SAAAH,MAAAypF,mBAAAtpF,IAA0MM,EAAAd,UAAAgxB,SAAA,SAAAxwB,GAAkC,MAAAH,MAAAymD,QAAAtmD,IAAuBM,EAAAd,UAAAmjE,kBAAA,SAAA3iE,EAAAM,EAAAC,GAA+CV,KAAAiqF,cAAoB,IAAArpF,GAAAZ,KAAA2wB,SAAAxwB,EAAuB,KAAAS,EAAA,WAAAZ,MAAA6tD,KAAA,SAAqCjiC,MAAA,GAAA/qB,OAAA,cAAAV,EAAA,qEAAsGS,GAAA+nC,UAAAloC,GAAAG,EAAAgoC,UAAAloC,IAAA,MAAAD,IAAAG,EAAA+nC,QAAAloC,GAAA,MAAAC,IAAAE,EAAAgoC,QAAAloC,GAAAV,KAAA2qF,aAAA/pF,KAAmGH,EAAAd,UAAAkjE,UAAA,SAAA1iE,EAAAM,GAAqCT,KAAAiqF,cAAoB,IAAAvpF,GAAAV,KAAA2wB,SAAAxwB,EAAuB,KAAAO,EAAA,WAAAV,MAAA6tD,KAAA,SAAqCjiC,MAAA,GAAA/qB,OAAA,cAAAV,EAAA,gEAAiG,QAAAM,OAAA,KAAAA,GAAAT,KAAAslF,UAAAL,EAAAppE,OAAA,UAAAnb,EAAAiG,GAAA,UAAAlG,IAAA+vB,EAAAq6D,UAAAnqF,EAAAmb,OAAApb,KAAAC,EAAAmb,OAAA2U,EAAA3sB,MAAApD,GAAAT,KAAA2qF,aAAAjqF,KAAiKD,EAAAd,UAAAmrF,UAAA,SAAA3qF,GAAmC,MAAAqwB,GAAA3sB,MAAA7D,KAAA2wB,SAAAxwB,GAAA0b,SAA2Cpb,EAAAd,UAAAgjE,kBAAA,SAAAxiE,EAAAM,EAAAC,GAA+CV,KAAAiqF,cAAoB,IAAArpF,GAAAZ,KAAA2wB,SAAAxwB,EAAuB,KAAAS,EAAA,WAAAZ,MAAA6tD,KAAA,SAAqCjiC,MAAA,GAAA/qB,OAAA,cAAAV,EAAA,8DAA+FqwB,GAAAq6D,UAAAjqF,EAAA22B,kBAAA92B,GAAAC,KAAAE,EAAA+hE,kBAAAliE,EAAAC,GAAAV,KAAA2qF,aAAA/pF,KAA0FH,EAAAd,UAAA43B,kBAAA,SAAAp3B,EAAAM,GAA6C,MAAAT,MAAA2wB,SAAAxwB,GAAAo3B,kBAAA92B,IAA6CA,EAAAd,UAAAijE,iBAAA,SAAAziE,EAAAM,EAAAC,EAAAE,GAAgDZ,KAAAiqF,cAAoB,IAAAxrF,GAAAuB,KAAA2wB,SAAAxwB,EAAuB,KAAA1B,EAAA,WAAAuB,MAAA6tD,KAAA,SAAqCjiC,MAAA,GAAA/qB,OAAA,cAAAV,EAAA,8DAA+F,KAAAqwB,EAAAq6D,UAAApsF,EAAA62C,iBAAA70C,EAAAG,GAAAF,GAAA,CAA+C,GAAAzB,GAAAR,EAAAykC,4BAAAziC,EAAuChC,GAAAmkE,iBAAAniE,EAAAC,EAAAE,KAA0BF,GAAA4nF,EAAApiB,qBAAAxlE,IAAA,UAAAA,EAAAhB,cAAA,KAAAgB,EAAAhB,WAAAT,GAAAe,KAAA2qF,aAAAlsF,GAAAuB,KAAAgpF,cAAA7oF,EAAAM,KAA4IA,EAAAd,UAAA21C,iBAAA,SAAAn1C,EAAAM,EAAAC,GAA8C,MAAAV,MAAA2wB,SAAAxwB,GAAAm1C,iBAAA70C,EAAAC,IAA8CD,EAAAd,UAAAymD,cAAA,WAAsC,MAAA51B,GAAA7b,QAAoB0xC,SAAA,IAAA44B,MAAA,GAAqBj/E,KAAA+oF,YAAA/oF,KAAA+oF,WAAAtlB,aAA8ChjE,EAAAd,UAAAqpF,cAAA,SAAA7oF,EAAAM,GAAyC,GAAAT,KAAAkqF,UAAA,EAAA/pF,EAAA,CAAuB,GAAAO,GAAAV,KAAAypF,kBAA8B/oF,GAAAP,KAAAO,EAAAP,OAAcO,EAAAP,GAAAM,GAAA,cAAoBT,MAAAwpF,uBAAA,GAAmC/oF,EAAAd,UAAAgzB,UAAA,WAAkC,GAAAxyB,GAAAH,IAAW,OAAAwwB,GAAAu6D,cAA0B98E,QAAAjO,KAAA+oF,WAAA96E,QAAAlP,KAAAiB,KAAA+oF,WAAAhqF,KAAA21E,SAAA10E,KAAA+oF,WAAArU,SAAA79B,MAAA72C,KAAA+oF,WAAAlyC,MAAAlP,OAAA3nC,KAAA+oF,WAAAphD,OAAA/hB,KAAA5lB,KAAA+oF,WAAAnjE,KAAAgb,QAAA5gC,KAAA+oF,WAAAnoD,QAAA6G,MAAAznC,KAAA+oF,WAAAthD,MAAA67B,OAAAtjE,KAAA+oF,WAAAzlB,OAAApjB,OAAAlgD,KAAA+oF,WAAA7oC,OAAAujB,WAAAzjE,KAAA+oF,WAAAtlB,WAAAn0C,QAAAkB,EAAA6wC,UAAArhE,KAAAsmD,aAAA,SAAAnmD,GAAmY,MAAAA,GAAAwyB,cAAqBxmB,OAAAnM,KAAAwmD,OAAAh0C,IAAA,SAAA/R,GAAqC,MAAAN,GAAAsmD,QAAAhmD,GAAAkyB,eAAkC,SAAAxyB,GAAa,gBAAAA,KAAoBM,EAAAd,UAAAgrF,aAAA,SAAAxqF,GAAsCH,KAAAmqF,eAAAhqF,EAAAwG,KAAA,EAAAxG,EAAA8V,SAAAjW,KAAAqpF,gBAAAlpF,EAAA8V,UAAAjW,KAAAqpF,gBAAAlpF,EAAA8V,QAAA,SAAAjW,KAAAsmD,aAAAnmD,EAAA8V,QAAAi4C,SAAAluD,KAAAkqF,UAAA,GAAuKzpF,EAAAd,UAAAqrF,yBAAA,SAAA7qF,GAAkD,OAAAM,GAAAT,KAAAU,KAAAE,EAAAZ,KAAAwmD,OAAAzlD,OAAA,EAA2CH,GAAA,EAAKA,IAAA,OAAAnC,GAAAgC,EAAA+lD,OAAA5lD,GAAA3B,EAAA,EAAAa,EAAAK,EAAkClB,EAAAa,EAAAiB,OAAW9B,GAAA,GAAM,GAAAM,GAAAO,EAAAb,GAAAP,EAAAa,EAAAd,EAAkB,IAAAC,EAAA,OAAAiC,GAAA,EAAA7B,EAAAJ,EAAqBiC,EAAA7B,EAAAiC,OAAWJ,GAAA,GAAM,GAAAe,GAAA5C,EAAA6B,EAAWD,GAAA2G,KAAA3F,IAAW,MAAAhB,IAASD,EAAAd,UAAAm1D,sBAAA,SAAA30D,EAAAM,EAAAC,EAAAE,GAAqD,GAAAnC,GAAAuB,IAAWS,MAAAob,QAAA7b,KAAAslF,UAAAL,EAAAppE,OAAA,+BAAApb,EAAAob,OAA0F,IAAA5c,KAAS,IAAAwB,KAAA0L,OAAA,CAAgB,IAAAnG,MAAAC,QAAAxF,EAAA0L,QAAA,MAAAnM,MAAA6tD,KAAA,SAAsDjiC,MAAA,0CAAiD,QAAA9rB,GAAA,EAAAP,EAAAkB,EAAA0L,OAAuBrM,EAAAP,EAAAwB,OAAWjB,GAAA,GAAM,GAAApB,GAAAa,EAAAO,GAAAa,EAAAlC,EAAAgoD,QAAA/nD,EAA0B,KAAAiC,EAAA,MAAAlC,GAAAovD,KAAA,SAA6BjiC,MAAA,cAAAltB,EAAA,8EAAqGO,GAAA0B,EAAAsV,SAAA,GAAgB,GAAAnX,KAAS,QAAA4C,KAAAjD,GAAA6nD,aAAA,IAAA7lD,EAAA0L,QAAAlN,EAAAyC,GAAA,CAAgD,GAAA7C,GAAAwpF,EAAA1zB,SAAAl2D,EAAA6nD,aAAA5kD,GAAAjD,EAAAgoD,QAAAtmD,EAAAM,EAAAC,EAAAE,EAAkE9B,GAAAuI,KAAAxI,GAAU,MAAAmB,MAAAgrF,yBAAAlsF,IAAwC2B,EAAAd,UAAAs1D,oBAAA,SAAA90D,EAAAM,GAA+CA,KAAAob,QAAA7b,KAAAslF,UAAAL,EAAAppE,OAAA,6BAAApb,EAAAob,OAAwF,IAAAnb,GAAAV,KAAAsmD,aAAAnmD,EAA2B,OAAAO,GAAA2nF,EAAApyE,OAAAvV,EAAAD,OAAsCA,EAAAd,UAAAsrF,cAAA,SAAA9qF,EAAAM,EAAAC,GAA2C,MAAAynF,GAAAhoF,GAAAO,EAAA,GAAAG,OAAA,yBAAAV,EAAA,uBAAAioF,EAAAjoF,EAAAM,KAAAyqF,oBAAAlrF,MAAAwvD,WAAA2B,UAAA,oBAA8KpyD,KAAAoB,EAAA4/C,IAAAt/C,EAAAyqF,iBAA6BxqF,KAAA,aAAkBD,EAAAd,UAAA+lF,SAAA,WAAiC,MAAA1lF,MAAA62C,MAAA6uC,YAA6BjlF,EAAAd,UAAAg3C,SAAA,SAAAx2C,EAAAM,GAAoCT,KAAAiqF,cAAoB,IAAAvpF,GAAAV,KAAA62C,MAAA6uC,WAAA9kF,GAAA,CAAiC,QAAAnC,KAAA0B,GAAA,IAAAqwB,EAAAq6D,UAAA1qF,EAAA1B,GAAAiC,EAAAjC,IAAA,CAA8CmC,GAAA,CAAK,OAAM,GAAAA,EAAA,CAAM,GAAA3B,GAAAe,KAAA+oF,WAAAtlB,cAAqCzjE,MAAA62C,MAAAF,SAAAx2C,GAAAH,KAAA62C,MAAAyvC,uBAAA7lF,IAA6DgjE,YAAA,GAAcxkE,EAAAe,KAAAk6C,iBAAwBz5C,EAAAd,UAAA2lF,UAAA,SAAAnlF,EAAAM,EAAAC,EAAAE,EAAAnC,GAA2C,QAAAA,IAAA,IAAAA,EAAAwiF,WAAAgE,EAAAsB,WAAAvmF,KAAAG,EAAAxB,KAAAsmF,EAAAz0D,EAAA7b,QAA6FqrE,IAAAv/E,EAAAm2C,MAAA52C,KAAA2yB,YAAArjB,MAAA5O,EAAAu/E,aAAyDr/E,MAAMH,EAAAd,UAAAwrF,QAAA,WAAgC,GAAAhrF,GAAAH,IAAWktC,GAAAwpB,QAAAjyC,IAAA,kBAAAzkB,KAAA8oF,uBAAyE,QAAAroF,KAAAN,GAAAmmD,aAAAnmD,EAAAmmD,aAAA7lD,GAAA06D,YAA2Dn7D,MAAAwvD,WAAAyL,UAAyBx6D,EAAAd,UAAA6qF,aAAA,SAAArqF,GAAsCH,KAAAsmD,aAAAnmD,GAAAg7D,cAAkC16D,EAAAd,UAAA4qF,cAAA,SAAApqF,GAAuCH,KAAAsmD,aAAAnmD,GAAA84D,SAAAj5D,KAAAsmD,aAAAnmD,GAAAo4D,UAA4D93D,EAAAd,UAAAyrF,eAAA,SAAAjrF,GAAwC,GAAAM,GAAAT,IAAW,QAAAU,KAAAD,GAAA6lD,aAAA7lD,EAAA6lD,aAAA5lD,GAAA4hD,OAAAniD,IAAwDM,EAAAd,UAAA0rF,eAAA,WAAuC,GAAAlrF,GAAAH,IAAW,QAAAS,KAAAN,GAAAmmD,aAAAnmD,EAAAmmD,aAAA7lD,GAAAuwD,iBAA8DvwD,EAAAd,UAAAyiD,UAAA,SAAAjiD,EAAAM,EAAAC,GAAuCV,KAAAg4C,aAAAoK,UAAA3hD,EAAA8gE,MAAA7gE,IAAuCD,EAAAd,UAAAqgD,UAAA,SAAA7/C,EAAAM,EAAAC,GAAuCV,KAAAmmD,aAAAnG,UAAAv/C,EAAA6gE,OAAA5gE,IAAwCD,GAAGusC,EAAUxuC,GAAAD,QAAAwuC,IACxmfu+C,0BAAA,GAAAC,0BAAA,GAAAC,uBAAA,GAAAC,2BAAA,GAAAC,4BAAA,GAAAC,mBAAA,GAAArjC,yBAAA,GAAAsjC,sBAAA,IAAAC,qBAAA,IAAA5nD,yBAAA,IAAAuiD,iCAAA,IAAAp1B,eAAA,IAAAngB,kBAAA,IAAA66C,qBAAA,IAAAz6B,kBAAA,IAAA06B,6BAAA,IAAA33B,iBAAA,IAAAvjC,eAAA,IAAAm7D,mBAAA,IAAAC,UAAA,IAAAC,gBAAA,IAAAC,gBAAA,IAAAxF,mBAAA,MAA6jByF,KAAA,SAAAnrF,EAAAzC,EAAAD,GAChkB,YAAa,IAAA0nE,GAAAhlE,EAAA,0BAAAuvB,EAAAvvB,EAAA,gBAAAikF,EAAA,SAAAzkF,EAAAhC,GAAiH,GAAAQ,GAAAe,IAAW,IAAAA,KAAAsP,MAAAkhB,EAAA3sB,MAAApF,GAAAuB,KAAAspB,WAAA28C,EAAAC,qBAAAznE,GAAAuB,KAAAkmF,KAAAtwE,KAAAC,UAAA7V,KAAAsP,OAAAtP,KAAAg1E,QAAAv0E,EAAAu0E,QAAAh1E,KAAAomE,SAAAH,EAAAjmE,KAAAsP,MAAA7O,GAAAT,KAAA82B,kBAAA92B,KAAAomE,SAAAtvC,kBAAA92B,KAAAg3B,eAAAh3B,KAAAomE,SAAApvC,eAAAh3B,KAAA82B,mBAAA92B,KAAAg3B,gBAA+U,IAAAh3B,KAAAg3B,eAAA,CAAyBh3B,KAAAqsF,iBAAuB,QAAA9sF,GAAA,EAAAO,EAAAb,EAAAqQ,MAAA62D,MAA4B5mE,EAAAO,EAAAiB,OAAWxB,GAAA,GAAM,GAAAY,GAAAL,EAAAP,EAAWN,GAAAotF,eAAAxiF,QAAA1J,EAAA,OAAAlB,EAAAotF,eAAAhlF,KAAAlH,EAAA,UAAgE,CAAKH,KAAAqsF,iBAAuB,QAAAzrF,MAAAD,EAAA,EAAAjC,EAAAO,EAAAqQ,MAAA62D,MAAiCxlE,EAAAjC,EAAAqC,OAAWJ,GAAA,GAAM,GAAAD,GAAAhC,EAAAiC,GAAA9B,EAAA6B,EAAA,GAAAklB,IAAuB3mB,GAAAotF,eAAAxiF,QAAAhL,GAAA,IAAAI,EAAAotF,eAAAhlF,KAAAxI,GAAA+B,EAAAyG,MAAAxI,EAAA+B,EAAAG,UAA+Ef,KAAAssF,wBAAArmB,GAA6Cr5D,KAAA,cAAAu5D,MAAAvlE,EAAA42B,KAAA/4B,EAAA+4B,OAAyC5qB,KAAA,YAAkBs4E,GAAAvlF,UAAAmmF,UAAA,SAAArlF,EAAAhC,GAAmD,GAAAQ,GAAAe,KAAAomE,SAAA3lE,KAAAmlB,KAAAnnB,MAAqC,iBAAAuB,KAAAg1E,SAAA/1E,EAAAe,KAAAg1E,QAAAh1E,KAAAg1E,QAAA/1E,GAA4DimF,EAAAvlF,UAAA4sF,wBAAA,SAAA9rF,GAAgE,MAAAT,MAAA82B,mBAAA92B,KAAAg3B,eAAA,EAAAh3B,KAAAssF,wBAAA7rF,KAAAmlB,UAAgGpnB,EAAAD,QAAA2mF,IAC7sCjhD,yBAAA,IAAApT,eAAA,MAAgD27D,KAAA,SAAAvrF,EAAAzC,EAAAD,GACnD,YAAa,SAAAkuF,GAAAhsF,GAAgC,MAAAA,GAAA6O,MAAe,GAAAkhB,GAAAvvB,EAAA,gBAAAkkF,EAAAlkF,EAAA,sBAAAikF,EAAAjkF,EAAA,uBAAAg/E,EAAAh/E,EAAA,kCAAAgkF,EAAAhkF,EAAA,oBAAAolE,EAAAplE,EAAA,oCAAA+rC,EAAA/rC,EAAA,mBAAA8mF,EAAA,SAAAtnF,GAA8W,QAAAhC,MAAc,GAAA0B,GAAAH,IAAWS,GAAA9B,KAAAqB,WAAA2G,GAAAlI,EAAAkI,GAAA3G,KAAA00E,SAAAj2E,EAAAi2E,SAAA10E,KAAA4M,KAAAnO,EAAAmO,KAAA5M,KAAA2oC,QAAAlqC,EAAAkqC,QAAA3oC,KAAA4oC,QAAAnqC,EAAAmqC,QAAA,eAAAnqC,EAAAmO,OAAA5M,KAAAiW,OAAAxX,EAAAwX,OAAAjW,KAAAw8D,YAAA/9D,EAAA,gBAAAuB,KAAA6b,OAAApd,EAAAod,QAAA7b,KAAA2uC,SAAqO3uC,KAAA61B,UAAe71B,KAAAijC,qBAAAg9C,EAAA,SAAAjgF,KAAA4M,MAAA5M,KAAA0sF,sBAAAzM,EAAA,UAAAjgF,KAAA4M,MAAA5M,KAAA2sF,qBAA4I3sF,KAAA4sF,2BAAgC5sF,KAAA6sF,sBAA2B7sF,KAAA8sF,uBAA4B9sF,KAAA+sF,mBAA0B,IAAAnsF,GAAA3B,EAAAM,GAAW0hF,UAAA,EAAa,QAAAvgF,KAAAjC,GAAA,CAAgB,GAAAqB,GAAAY,EAAA4pB,MAAA,qBAAoC,IAAAxqB,EAAA,CAAM,GAAApB,GAAAoB,EAAA,MAAe,KAAAc,IAAAnC,GAAAiC,GAAAP,EAAAyiE,iBAAAhiE,EAAAnC,EAAAiC,GAAAE,GAAAlC,EAAAa,IAAiD,IAAAN,IAAAR,GAAAo3B,OAAA11B,EAAAwiE,kBAAA1jE,EAAAR,EAAAo3B,OAAA52B,GAAAM,EAAuD,KAAAqB,IAAAT,GAAA8iC,qBAAA9iC,EAAAwuC,MAAA/tC,GAAAT,EAAAoiC,cAAA3hC,EAA8D,KAAA3B,IAAAkB,GAAAusF,sBAAAvsF,EAAA6sF,mBAAA/tF,GAAyD,MAAAwB,KAAAhC,EAAAivD,UAAAjtD,GAAAhC,EAAAkB,UAAAT,OAAA2D,OAAApC,KAAAd,WAAAlB,EAAAkB,UAAAsoB,YAAAxpB,IAAAkB,UAAAgjE,kBAAA,SAAAliE,EAAAhC,EAAA0B,GAA4I,SAAA1B,QAAAuB,MAAA8sF,oBAAArsF,OAA8C,CAAK,GAAAG,GAAA,UAAAZ,KAAA2G,GAAA,WAAAlG,CAAqC,IAAAT,KAAAslF,UAAAL,EAAAhB,eAAArjF,EAAAH,EAAAhC,EAAA0B,GAAA,MAA+DH,MAAA8sF,oBAAArsF,GAAA,GAAAykF,GAAAllF,KAAA0sF,sBAAAjsF,GAAAhC,GAAkFuB,KAAAgtF,mBAAAvsF,IAA2BhC,EAAAkB,UAAA43B,kBAAA,SAAA92B,GAA2C,MAAAT,MAAA8sF,oBAAArsF,IAAAT,KAAA8sF,oBAAArsF,GAAA6O,OAAsE7Q,EAAAkB,UAAAm2B,eAAA,SAAAr1B,EAAAhC,EAAA0B,GAA4C,GAAAS,GAAAZ,KAAA0sF,sBAAAjsF,GAAAxB,EAAAe,KAAA8sF,oBAAArsF,EAAkE,OAAAxB,KAAA6mF,UAAArnF,EAAA0B,GAAAS,EAAA4uB,SAAoC/wB,EAAAkB,UAAAijE,iBAAA,SAAAniE,EAAAhC,EAAA0B,EAAAS,GAAgD,GAAA3B,GAAA,UAAAe,KAAA2G,IAAAxG,EAAA,WAAAA,EAAA,iBAAAM,CAA2D,IAAA+vB,EAAAo1D,SAAAnlF,EAAt7D,eAAs7D,GAAAT,KAAA4sF,wBAAAzsF,GAAA,MAAAH,KAAA4sF,wBAAAzsF,GAAA,QAAqH,OAAA1B,OAAA,KAAAA,QAAAuB,MAAA4sF,wBAAAzsF,GAAA,IAAAM,OAAqE,CAAK,GAAAT,KAAAslF,UAAAL,EAAAjB,cAAA/kF,EAAAwB,EAAAhC,EAAAmC,GAAA,MAA8DZ,MAAA4sF,wBAAAzsF,GAAA,IAAAM,GAAAhC,MAAyC,IAAAuB,KAAA6sF,mBAAA1sF,GAAA,MAAAH,KAAA6sF,mBAAA1sF,GAAA,QAA0E,OAAA1B,OAAA,KAAAA,QAAAuB,MAAA6sF,mBAAA1sF,GAAA,IAAAM,OAAgE,CAAK,GAAAT,KAAAslF,UAAAL,EAAAjB,cAAA/kF,EAAAwB,EAAAhC,EAAAmC,GAAA,MAA8DZ,MAAA6sF,mBAAA1sF,GAAA,IAAAM,GAAA,GAAAykF,GAAAllF,KAAAijC,qBAAAxiC,GAAAhC,KAAwFA,EAAAkB,UAAA21C,iBAAA,SAAA70C,EAAAhC,GAA4C,MAAAA,MAAA,GAAA+xB,EAAAo1D,SAAAnlF,EAA7iF,eAA6iFT,KAAA4sF,wBAAAnuF,IAAAuB,KAAA4sF,wBAAAnuF,GAAAgC,GAAAT,KAAA6sF,mBAAApuF,IAAAuB,KAAA6sF,mBAAApuF,GAAAgC,IAAAT,KAAA6sF,mBAAApuF,GAAAgC,GAAA6O,OAAqN7Q,EAAAkB,UAAA4iC,cAAA,SAAA9hC,EAAAhC,EAAA0B,GAA2C,GAAAS,GAAAZ,KAAAijC,qBAAAxiC,GAAAxB,EAAAe,KAAA2sF,kBAAAlsF,EAA+D,OAAAxB,KAAA6mF,UAAArnF,EAAA0B,GAAA,UAAAS,EAAAgM,MAAAhM,EAAA4uB,QAAA62C,EAAAzlE,EAAA4uB,SAAA5uB,EAAA4uB,SAAsF/wB,EAAAkB,UAAAstF,4BAAA,SAAAxsF,GAAqD,GAAAhC,GAAAuB,KAAA2sF,kBAAAlsF,EAAgC,OAAAhC,KAAAwnF,YAAAoG,mBAAyC5tF,EAAAkB,UAAAw3B,6BAAA,SAAA12B,GAAsD,GAAAhC,GAAAuB,KAAA8sF,oBAAArsF,EAAkC,OAAAhC,KAAA4tF,mBAA6B5tF,EAAAkB,UAAAutF,uBAAA,SAAAzsF,EAAAhC,GAAkD,MAAAuB,MAAA2sF,kBAAAlsF,GAAAwlF,YAAAsG,wBAAA9tF,IAAwEA,EAAAkB,UAAAwtF,wBAAA,SAAA1sF,EAAAhC,GAAmD,MAAAuB,MAAA8sF,oBAAArsF,GAAA8rF,wBAAA9tF,IAA8DA,EAAAkB,UAAAujC,4BAAA,SAAAziC,GAAqD,GAAAhC,GAAAuB,KAAA2sF,kBAAAlsF,EAAgC,QAAAhC,KAAAwnF,YAAAnvD,mBAA0Cr4B,EAAAkB,UAAAo3B,6BAAA,SAAAt2B,GAAsD,GAAAhC,GAAAuB,KAAA8sF,oBAAArsF,EAAkC,QAAAhC,KAAAq4B,mBAA8Br4B,EAAAkB,UAAAwjC,yBAAA,SAAA1iC,GAAkD,GAAAhC,GAAAuB,KAAA2sF,kBAAAlsF,EAAgC,QAAAhC,KAAAwnF,YAAAjvD,gBAAuCv4B,EAAAkB,UAAAs3B,0BAAA,SAAAx2B,GAAmD,GAAAhC,GAAAuB,KAAA8sF,oBAAArsF,EAAkC,QAAAhC,KAAAu4B,gBAA2Bv4B,EAAAkB,UAAAgnD,SAAA,SAAAlmD,GAAkC,SAAAT,KAAA2oC,SAAAloC,EAAAT,KAAA2oC,aAAA3oC,KAAA4oC,SAAAnoC,GAAAT,KAAA4oC,UAAA,SAAA5oC,KAAA61B,OAAAurC,YAA6G3iE,EAAAkB,UAAA+pF,uBAAA,SAAAjpF,EAAAhC,EAAA0B,EAAAS,EAAA3B,GAAwD,OAAAM,GAAAS,KAAAU,EAAA8vB,EAAA7b,UAA+B3U,KAAA6sF,mBAAA,KAAA/sF,EAAA,EAAkCA,EAAAW,EAAAM,OAAWjB,IAAA0wB,EAAA7b,OAAAjU,EAAAnB,EAAAstF,mBAAApsF,EAAAX,IAA8C,IAAApB,EAAM,KAAAA,IAAAgC,GAAAnB,EAAA6tF,uBAAA1uF,EAAAgC,EAAAhC,GAAAD,EAAA0B,EAAAS,EAAA3B,EAAoD,KAAAP,IAAAa,GAAAotF,kBAAAjuF,IAAAgC,IAAAnB,EAAA6tF,uBAAA1uF,EAAA,KAAAD,EAAA0B,EAAAS,EAAA3B,IAA8ER,EAAAkB,UAAAgqF,sBAAA,SAAAlpF,EAAAhC,EAAA0B,EAAAS,EAAA3B,EAAAM,GAAyD,OAAAmB,GAAAV,KAAAF,EAAAE,KAAA6sF,mBAAA,IAAApsF,GAAA/B,EAAA,EAAoDA,EAAAD,EAAAsC,OAAWrC,IAAA,CAAK,GAAAiC,GAAAD,EAAAmsF,mBAAApuF,EAAAC,GAAiCiC,MAAAF,KAAAX,EAAAa,EAAAF,IAAkBT,KAAAotF,uBAAA3sF,EAAAX,EAAAK,EAAAS,EAAA3B,EAAAM,IAAyCd,EAAAkB,UAAAohE,YAAA,SAAAtgE,GAAqC,GAAAhC,GAAAuB,IAAW,QAAAG,KAAA1B,GAAAkuF,kBAAAluF,EAAAkwC,MAAAxuC,GAAA1B,EAAA8jC,cAAApiC,GAA+DylB,KAAAnlB,GAAS,QAAAG,KAAAnC,GAAAsuF,iBAAAtuF,EAAAo3B,OAAAj1B,GAAAnC,EAAAq3B,eAAAl1B,GAAgEglB,KAAAnlB,KAAShC,EAAAkB,UAAAgzB,UAAA,WAAkC,GAAAlyB,GAAAT,KAAAvB,GAAckI,GAAA3G,KAAA2G,GAAAiG,KAAA5M,KAAA4M,KAAAqJ,OAAAjW,KAAAiW,OAAAu/D,eAAAx1E,KAAAw8D,YAAAkY,SAAA10E,KAAA00E,SAAA/rC,QAAA3oC,KAAA2oC,QAAAC,QAAA5oC,KAAA4oC,QAAA/sB,OAAA7b,KAAA6b,OAAAga,OAAArF,EAAA6wC,UAAArhE,KAAA8sF,oBAAAL,GAAsO,QAAAtsF,KAAAM,GAAAosF,mBAAmCpuF,EAAA,KAAA0B,EAAA,iBAAAA,GAAAqwB,EAAA6wC,UAAA5gE,EAAAosF,mBAAA1sF,GAAAssF,EAAyF,OAAAj8D,GAAAu6D,aAAAtsF,EAAA,SAAAgC,EAAAhC,GAAyC,gBAAAgC,KAAA,WAAAhC,IAAAS,OAAAmZ,KAAA5X,GAAAM,WAA6DtC,EAAAkB,UAAAytF,uBAAA,SAAA3sF,EAAAhC,EAAA0B,EAAAS,EAAA3B,EAAAM,GAA0D,GAAAmB,GAAAP,EAAAsjE,WAAAzjE,KAAA2sF,kBAAAlsF,OAAA,GAAAX,EAAAE,KAAAijC,qBAAAxiC,EAAmF,WAAAhC,OAAA,KAAAA,MAAA,GAAAymF,GAAAplF,IAAA0vB,WAAA9uB,KAAAulF,YAAAC,OAAAznF,EAAAynF,KAAA,CAAgG,GAAAxnF,GAAA8xB,EAAA7b,QAAmB0xC,SAAA,IAAA44B,MAAA,GAAqBr+E,EAAAZ,KAAAs1C,iBAAA70C,EAA9+K,gBAA8+KE,EAAAX,KAAA2sF,kBAAAlsF,GAAA,GAAA0kF,GAAArlF,EAAArB,EAAAiC,EAAAhC,EAAAa,EAA0GoB,GAAAwlF,YAAAxlF,EAAAylF,OAAAnnF,EAAAia,IAAAvY,EAAA0lF,QAAAv/D,KAAAC,QAAArmB,GAAAzB,EAAAkvD,OAAAztD,EAAA0lF,UAA2E3nF,EAAAkB,UAAAqtF,mBAAA,SAAAvsF,GAA4C,GAAAhC,GAAAuB,KAAA8sF,oBAAArsF,EAAkChC,MAAA6qB,WAAAtpB,KAAA+sF,iBAAAtsF,IAAA,SAAAT,MAAA+sF,iBAAAtsF,GAAAT,KAAA61B,OAAAp1B,GAAAT,KAAA81B,eAAAr1B,KAAoHhC,EAAAkB,UAAA2lF,UAAA,SAAA7kF,EAAAhC,EAAA0B,EAAAS,EAAA3B,GAA2C,QAAAA,IAAA,IAAAA,EAAAgiF,WAAAgE,EAAAsB,WAAAvmF,KAAAS,EAAA9B,KAAAsmF,GAAiFjF,IAAAvhF,EAAAgkF,UAAAziF,KAAA4M,KAAAu2E,UAAAhjF,EAAAmP,MAAA1O,EAAAq/E,YAAArpC,OAAyEsJ,QAAA,EAAAojB,QAAA,OAAwB7kE,EAAAkB,UAAA+mD,UAAA,WAAkC,UAASjoD,GAAGuuC,EAAUxuC,GAAAD,QAAAwpF,CAA0B,IAAAsF,IAAgB/pC,OAAAriD,EAAA,oCAAAonB,KAAApnB,EAAA,kCAAAsiD,iBAAAtiD,EAAA,4CAAAm7B,KAAAn7B,EAAA,kCAAAoiD,OAAApiD,EAAA,oCAAAwiD,WAAAskC,EAAAvkC,OAAAukC,EAAkTA,GAAAllF,OAAA,SAAApC,GAA8B,UAAA4sF,GAAA5sF,EAAAmM,MAAAnM,MAC7iN+lF,iCAAA,IAAAn1B,kBAAA,IAAAxgC,eAAA,IAAAy8D,mCAAA,IAAA7G,sBAAA,IAAA8G,mCAAA,IAAAC,2CAAA,IAAAC,iCAAA,IAAAC,iCAAA,IAAAC,mCAAA,IAAAjH,qBAAA,IAAAC,mBAAA,MAAsYiH,KAAA,SAAA3sF,EAAAzC,EAAAD,GACzY,YAAa,IAAAwpF,GAAA9mF,EAAA,kBAAA+wB,EAAA/wB,EAAA,mCAAA0G,EAAA1G,EAAA,iCAAA4sF,EAAAlmF,EAAAkmF,yCAAAz8D,EAAAnwB,EAAA,kBAAA2mF,EAAAx2D,EAAAw2D,qBAAAC,EAAAz2D,EAAAy2D,kBAAAzkF,EAAAguB,EAAAhuB,UAAA0qF,EAAA,SAAA3tF,GAAqZ,QAAAM,KAAaN,EAAA6jB,MAAAhkB,KAAA+jB,WAAwB,MAAA5jB,KAAAM,EAAAitD,UAAAvtD,GAAAM,EAAAd,UAAAT,OAAA2D,OAAA1C,KAAAR,WAAAc,EAAAd,UAAAsoB,YAAAxnB,IAAAd,UAAAixB,aAAA,SAAAzwB,GAAmI,UAAA6xB,GAAA7xB,IAA2BM,EAAAd,UAAA48D,YAAA,SAAAp8D,GAAqC,MAAAynF,GAAA,gBAAA5nF,KAAAG,GAAA0nF,EAAA7nF,KAAA2uC,MAAA,sBAAsGluC,EAAAd,UAAAqhC,uBAAA,SAAA7gC,EAAAM,EAAAC,EAAAjC,EAAAmC,EAAArB,GAA0D,GAAAoB,GAAAyC,EAAAjD,EAAAH,KAAAuiC,cAAA,oBAAyD3c,KAAAnnB,GAAOgC,EAAAiM,YAAA1M,KAAAuiC,cAAA,2BAA6D3c,KAAAnnB,GAAOgC,EAAAiM,YAAA9L,EAAArB,GAAAb,EAAAsB,KAAAuiC,cAAA,iBAA0D3c,KAAAnnB,GAAOgC,EAAAiM,YAAAnN,CAAiB,OAAAsuF,GAAAltF,EAAAD,EAAAhC,IAAuD+B,GAAGsnF,EAAavpF,GAAAD,QAAAuvF,IACpkCC,kCAAA,GAAAC,gCAAA,IAAAC,iBAAA,IAAAC,iBAAA,MAAmHC,KAAA,SAAAltF,EAAAzC,EAAAD,GACtH,YAAa,IAAAwpF,GAAA9mF,EAAA,kBAAA2zB,EAAA3zB,EAAA,2CAAA0G,EAAA1G,EAAA,iCAAAmtF,EAAAzmF,EAAAymF,mCAAAh9D,EAAAnwB,EAAA,kBAAA4mF,EAAAz2D,EAAAy2D,kBAAAzkF,EAAAguB,EAAAhuB,UAAAirF,EAAA,SAAA5tF,GAA+W,QAAAN,KAAaM,EAAAujB,MAAAhkB,KAAA+jB,WAAwB,MAAAtjB,KAAAN,EAAAutD,UAAAjtD,GAAAN,EAAAR,UAAAT,OAAA2D,OAAApC,KAAAd,WAAAQ,EAAAR,UAAAsoB,YAAA9nB,IAAAR,UAAA4iC,cAAA,SAAApiC,EAAAO,EAAAjC,GAAwI,GAAAQ,GAAAwB,EAAAd,UAAA4iC,cAAA5jC,KAAAqB,KAAAG,EAAAO,EAAAjC,EAAiD,gCAAA0B,GAAAlB,MAAA,MAAAA,GAAgDkB,EAAAR,UAAAixB,aAAA,SAAAnwB,GAAsC,UAAAm0B,GAAAn0B,IAAkCN,EAAAR,UAAA48D,YAAA,WAAoC,MAAAsrB,GAAA7nF,KAAA2uC,MAAA,8BAAiExuC,EAAAR,UAAAqhC,uBAAA,SAAAvgC,EAAAN,EAAAO,EAAAjC,EAAAQ,EAAAM,GAA0D,GAAAb,GAAA0E,EAAA3C,EAAAT,KAAAuiC,cAAA,4BAAiE3c,KAAAnnB,GAAO0B,EAAAuM,YAAA1M,KAAAuiC,cAAA,mCAAqE3c,KAAAnnB,GAAO0B,EAAAuM,YAAAzN,EAAAM,EAAoB,OAAA6uF,GAAA1vF,EAAAgC,IAA+CP,EAAAR,UAAA+mD,UAAA,WAAkC,WAAA1mD,KAAA2uC,MAAA,oCAAA3uC,KAAA61B,OAAAurC,YAAiFjhE,GAAG4nF,EAAavpF,GAAAD,QAAA8vF,IACxsCC,0CAAA,GAAAN,gCAAA,IAAAC,iBAAA,IAAAC,iBAAA,MAA2HK,KAAA,SAAAttF,EAAAzC,EAAAD,GAC9H,YAAa,IAAAwpF,GAAA9mF,EAAA,kBAAA+yB,EAAA/yB,EAAA,iCAAA0G,EAAA1G,EAAA,iCAAAmtF,EAAAzmF,EAAAymF,mCAAAh9D,EAAAnwB,EAAA,kBAAA4mF,EAAAz2D,EAAAy2D,kBAAAzkF,EAAAguB,EAAAhuB,UAAAorF,EAAA,SAAA/tF,GAAmV,QAAAN,KAAaM,EAAAujB,MAAAhkB,KAAA+jB,WAAwB,MAAAtjB,KAAAN,EAAAutD,UAAAjtD,GAAAN,EAAAR,UAAAT,OAAA2D,OAAApC,KAAAd,WAAAQ,EAAAR,UAAAsoB,YAAA9nB,IAAAR,UAAA4iC,cAAA,SAAApiC,EAAAlB,EAAAP,GAAwI,GAAAD,GAAAuB,IAAW,2BAAAG,EAAA,CAA6B,YAAAH,KAAAs1C,iBAAA,4BAAA70C,GAAAd,UAAA4iC,cAAA5jC,KAAAqB,KAAA,aAAAf,EAAAP,EAAqH,QAAAgC,GAAAV,KAAA2sF,kBAAA,sBAAuDjsF,GAAE,CAAE,KAAAA,KAAAulF,aAAAvlF,EAAAulF,YAAA32E,OAAA,MAAA7O,GAAAd,UAAA4iC,cAAA5jC,KAAAF,EAAA,aAAAQ,EAAAP,EAAsGgC,KAAA+tF,eAAmB,MAAAhuF,GAAAd,UAAA4iC,cAAA5jC,KAAAqB,KAAAG,EAAAlB,EAAAP,IAAkDyB,EAAAR,UAAAstF,4BAAA,SAAA9sF,GAAqD,6BAAAA,OAAA,KAAAH,KAAAs1C,iBAAA,sBAAA70C,EAAAd,UAAAstF,4BAAAtuF,KAAAqB,KAAA,cAAAS,EAAAd,UAAAstF,4BAAAtuF,KAAAqB,KAAAG,IAA0MA,EAAAR,UAAAutF,uBAAA,SAAA/sF,EAAAlB,GAAkD,6BAAAkB,OAAA,KAAAH,KAAAs1C,iBAAA,sBAAA70C,EAAAd,UAAAutF,uBAAAvuF,KAAAqB,KAAA,aAAAf,GAAAwB,EAAAd,UAAAutF,uBAAAvuF,KAAAqB,KAAAG,EAAAlB,IAAoMkB,EAAAR,UAAAujC,4BAAA,SAAA/iC,GAAqD,6BAAAA,OAAA,KAAAH,KAAAs1C,iBAAA,sBAAA70C,EAAAd,UAAAujC,4BAAAvkC,KAAAqB,KAAA,cAAAS,EAAAd,UAAAujC,4BAAAvkC,KAAAqB,KAAAG,IAA0MA,EAAAR,UAAAwjC,yBAAA,SAAAhjC,GAAkD,6BAAAA,OAAA,KAAAH,KAAAs1C,iBAAA,sBAAA70C,EAAAd,UAAAwjC,yBAAAxkC,KAAAqB,KAAA,cAAAS,EAAAd,UAAAwjC,yBAAAxkC,KAAAqB,KAAAG,IAAoMA,EAAAR,UAAAixB,aAAA,SAAAnwB,GAAsC,UAAAuzB,GAAAvzB,IAAyBN,EAAAR,UAAA48D,YAAA,WAAoC,MAAAsrB,GAAA7nF,KAAA2uC,MAAA,oBAAuDxuC,EAAAR,UAAAqhC,uBAAA,SAAAvgC,EAAAN,EAAAlB,EAAAP,EAAAD,EAAAiC,GAA0D,GAAAnB,GAAA6D,EAAA3C,EAAAT,KAAAuiC,cAAA,kBAAuD3c,KAAAlnB,GAAOyB,EAAAuM,YAAA1M,KAAAuiC,cAAA,yBAA2D3c,KAAAlnB,GAAOyB,EAAAuM,YAAAjO,EAAAiC,EAAoB,OAAA0tF,GAAA7uF,EAAAN,IAA+CkB,GAAG4nF,EAAavpF,GAAAD,QAAAiwF,IAC9xEE,gCAAA,GAAAV,gCAAA,IAAAC,iBAAA,IAAAC,iBAAA,MAAiHS,KAAA,SAAA1tF,EAAAzC,EAAAD,GACpH,YAAa,SAAAqwF,GAAAzuF,EAAAM,GAA2B,MAAAA,GAAA,EAAAA,EAAA,EAAAN,IAAmB,QAAA0uF,GAAA1uF,EAAAM,GAAyB,OAAAhC,MAAAiC,EAAA,GAAAkD,GAAA,KAAArE,EAAA,EAAkCA,EAAAY,EAAAY,OAAWxB,IAAA,CAAK,OAAAqB,GAAAT,EAAAZ,GAAAoB,KAAA1B,EAAA,EAAwBA,EAAA2B,EAAAG,OAAW9B,IAAA,CAAK,GAAAa,GAAAc,EAAA3B,EAAA,GAAAP,EAAAkC,EAAA3B,GAAAY,EAAAe,EAAA3B,EAAA,GAAAsB,EAAA,IAAAtB,EAAAyB,EAAAhC,EAAAsF,IAAAlE,GAAAkF,QAAAE,QAAArG,EAAAI,IAAA2B,EAAAG,OAAA,EAAAL,EAAAb,EAAAmE,IAAAtF,GAAAsG,QAAAE,QAAAvD,EAAApB,EAAAwD,KAAAlF,GAAAmG,QAAAtD,EAAAC,EAAAI,EAAAlD,EAAAkD,EAAAJ,IAAA9C,EAAA8C,CAAkJA,GAAA4C,MAAA,EAAA7C,GAAAf,EAAA0G,KAAA1F,EAAA4C,MAAA9D,GAAAsD,KAAArF,IAAwCD,EAAA4I,KAAA1G,GAAU,MAAAlC,GAAS,GAAAmF,GAAA3C,EAAA,0BAAA8mF,EAAA9mF,EAAA,kBAAA20B,EAAA30B,EAAA,iCAAA0G,EAAA1G,EAAA,iCAAA6tF,EAAAnnF,EAAAmnF,wCAAA19D,EAAAnwB,EAAA,kBAAA2mF,EAAAx2D,EAAAw2D,qBAAAC,EAAAz2D,EAAAy2D,kBAAAzkF,EAAAguB,EAAAhuB,UAAA2rF,EAAA,SAAA5uF,GAAqb,QAAAM,KAAaN,EAAA6jB,MAAAhkB,KAAA+jB,WAAwB,MAAA5jB,KAAAM,EAAAitD,UAAAvtD,GAAAM,EAAAd,UAAAT,OAAA2D,OAAA1C,KAAAR,WAAAc,EAAAd,UAAAsoB,YAAAxnB,IAAAd,UAAAixB,aAAA,SAAAzwB,GAAmI,UAAAy1B,GAAAz1B,IAAyBM,EAAAd,UAAA48D,YAAA,SAAAp8D,GAAqC,GAAAM,GAAAN,EAAA1B,EAAAmwF,EAAAhH,EAAA,aAAA5nF,KAAAS,GAAAmnF,EAAA,iBAAA5nF,KAAAS,IAAAC,EAAAknF,EAAA,cAAA5nF,KAAAS,EAA6J,OAAAhC,GAAA,EAAA4C,KAAAoK,IAAA/K,GAAAmnF,EAAA7nF,KAAA2uC,MAAA,oBAAuEluC,EAAAd,UAAAqhC,uBAAA,SAAA7gC,EAAAM,EAAAhC,EAAAiC,EAAAnB,EAAAqB,GAA0D,GAAAD,GAAAyC,EAAAjD,EAAAH,KAAAuiC,cAAA,kBAAuD3c,KAAAllB,GAAOD,EAAAiM,YAAA1M,KAAAuiC,cAAA,yBAA2D3c,KAAAllB,GAAOD,EAAAiM,YAAAnN,EAAAqB,GAAA3B,EAAA2B,EAAA,EAAAguF,EAAA5uF,KAAAuiC,cAAA,cAAwE3c,KAAAllB,GAAOD,EAAAiM,YAAA1M,KAAAuiC,cAAA,kBAAoD3c,KAAAllB,GAAOD,EAAAiM,aAAA5M,EAAAE,KAAAuiC,cAAA,eAAoD3c,KAAAllB,GAAOD,EAAAiM,WAAe,OAAA5M,KAAArB,EAAAowF,EAAApwF,EAAAqB,EAAAc,IAAAkuF,EAAAnuF,EAAAlC,EAAAQ,IAA+EwB,GAAGsnF,EAAavpF,GAAAD,QAAAwwF,IACpuDC,gCAAA,GAAAhB,gCAAA,IAAAC,iBAAA,IAAAC,iBAAA,IAAAngF,yBAAA,IAA4IkhF,KAAA,SAAAhuF,EAAAzC,EAAAD,GAC/I,YAAa,IAAAwpF,GAAA9mF,EAAA,kBAAAy4B,EAAAz4B,EAAA,mCAAAiuF,EAAA,SAAAzuF,GAA8H,QAAAN,KAAaM,EAAAujB,MAAAhkB,KAAA+jB,WAAwB,MAAAtjB,KAAAN,EAAAutD,UAAAjtD,GAAAN,EAAAR,UAAAT,OAAA2D,OAAApC,KAAAd,WAAAQ,EAAAR,UAAAsoB,YAAA9nB,IAAAR,UAAAm2B,eAAA,SAAA31B,EAAAO,EAAAzB,GAAyI,GAAAM,GAAAkB,EAAAd,UAAAm2B,eAAAn3B,KAAAqB,KAAAG,EAAAO,EAAAzB,EAAkD,aAAAM,EAAA,MAAAA,EAAuB,QAAAY,GAAU,2EAAAH,KAAA81B,eAAA,mBAAAp1B,EAAAzB,GAAA,gBAAwI,kCAAAe,MAAA81B,eAAA,0BAAAp1B,EAAAzB,EAAqF,kCAAAe,MAAA81B,eAAA,0BAAAp1B,EAAAzB,EAAqF,eAAAM,KAAkBY,EAAAR,UAAAixB,aAAA,SAAAnwB,GAAsC,UAAAi5B,GAAAj5B,IAA2BN,EAAAR,UAAA48D,YAAA,WAAoC,UAASp8D,EAAAR,UAAAqhC,uBAAA,WAA+C,UAAS7gC,GAAG4nF,EAAavpF,GAAAD,QAAA2wF,IACn4BC,kCAAA,GAAAjB,iBAAA,MAA0DkB,KAAA,SAAAnuF,EAAAzC,EAAAD,GAC7D,YAAa,IAAAwpF,GAAA9mF,EAAA,iBAAAuvB,EAAAvvB,EAAA,gBAAAo+B,EAAAp+B,EAAA,gCAAAqmE,EAAArmE,EAAA,iCAAAw+D,EAAA,SAAAt/D,GAA8MA,GAAAH,KAAAmqB,QAAAhqB,GAAoBs/D,GAAA9/D,UAAAwqB,QAAA,SAAAhqB,GAA8C,GAAAO,GAAAV,IAAWA,MAAAogE,cAAoB,QAAA3/D,GAAA,EAAAhC,EAAA0B,EAAgBM,EAAAhC,EAAAsC,OAAWN,GAAA,GAAM,GAAAG,GAAAnC,EAAAgC,EAAW,YAAAG,EAAAgM,MAAAlM,EAAA0/D,YAAA/4D,KAAAzG,EAAA+F,IAA4C3G,KAAAqvF,iBAAqBrvF,KAAAymD,WAAgBzmD,KAAAsiD,OAAAniD,OAAmBs/D,EAAA9/D,UAAA2iD,OAAA,SAAAniD,EAAAO,EAAAD,GAAkD,OAAAhC,GAAAuB,KAAAY,EAAA,EAAAlC,EAAAyB,EAAuBS,EAAAlC,EAAAqC,OAAWH,GAAA,GAAM,GAAAe,GAAAjD,EAAAkC,EAAWnC,GAAA4wF,cAAA1tF,EAAAgF,IAAAhF,CAAwB,IAAA7B,GAAArB,EAAAgoD,QAAA9kD,EAAAgF,IAAAohF,EAAAllF,OAAAlB,EAA2C7B,GAAA4pF,2BAA6BjmB,YAAA,IAAc3jE,EAAA+b,OAAAwjB,EAAAv/B,EAAA+b,QAAmC,OAAA5c,GAAA,EAAA0B,EAAAD,EAAgBzB,EAAA0B,EAAAI,OAAW9B,GAAA,GAAM,GAAAM,GAAAoB,EAAA1B,SAAWR,GAAA4wF,cAAA9vF,SAAAd,GAAAgoD,QAAAlnD,GAA8CkB,IAAAT,KAAAogE,YAAA3/D,GAAAT,KAAAkhE,mBAAiD,QAAA3gE,GAAA+mE,EAAA92C,EAAAnC,OAAAruB,KAAAqvF,gBAAAxvF,EAAA,EAAAf,EAAAyB,EAAiEV,EAAAf,EAAAiC,OAAWlB,GAAA,GAAM,GAAA6B,GAAA5C,EAAAe,GAAAhB,EAAA6C,EAAA8Q,IAAA,SAAArS,GAA+B,MAAA1B,GAAAgoD,QAAAtmD,EAAAwG,MAAuBnF,EAAA3C,EAAA,EAAS,KAAA2C,EAAAq0B,QAAA,SAAAr0B,EAAAq0B,OAAAurC,WAAA,CAA4C,GAAArsC,GAAAvzB,EAAAyU,QAAA,GAAAlW,EAAAtB,EAAAyiE,iBAAAnsC,EAA2Ch1B,OAAAtB,EAAAyiE,iBAAAnsC,MAAgC,IAAAqB,GAAA50B,EAAAg7D,aAAA,oBAAA59D,EAAAmB,EAAAq2B,EAAgDx3B,OAAAmB,EAAAq2B,OAAAx3B,EAAAyI,KAAAxI,MAA2BL,EAAAD,QAAAkhE,IAC7pCt+B,+BAAA,IAAAmuD,gCAAA,IAAAz+D,eAAA,IAAAs7D,gBAAA,MAA8GoD,KAAA,SAAAtuF,EAAAzC,EAAAD,GACjH,YAAa,SAAAixF,GAAA/uF,EAAAhC,EAAA0B,GAAuC,YAAAM,OAAA,KAAAhC,EAAA,OAAiCg5C,KAAAh3C,EAAAi3C,GAAAC,UAAAl3C,EAAAm3C,QAAAF,GAAAj5C,EAAAi5C,GAAAE,QAAAn5C,EAAAm5C,QAAAn3C,EAAAN,GAA6D,GAAAqwB,GAAAvvB,EAAA,gBAAA6lE,EAAA7lE,EAAA,kCAAAwuF,GAAwG3F,gBAAA,EAAAC,oBAAA,EAAAC,SAAA,GAAmD7E,EAAA,SAAA1kF,EAAAhC,EAAA0B,EAAAlB,EAAA2B,GAAqCZ,KAAAimF,YAAAxnF,EAAAuB,KAAA0vF,UAAA1vF,KAAAqmF,SAAA,GAAAv/D,OAAA8yC,UAAA55D,KAAAyuF,cAAAtuF,EAAAH,KAAAqmD,SAAApnD,EAAAonD,UAAA,EAAArmD,KAAAi/E,MAAAhgF,EAAAggF,OAAA,EAAAj/E,KAAA2vF,iBAAA,uBAAAlvF,EAAA2lE,UAAA3lE,EAAAgjE,WAAAzjE,KAAAymC,OAAAzmC,KAAA2vF,iBAAAH,EAAA1oB,EAAArmE,EAAAmM,MAAA5M,KAAA4oF,YAAAhoF,GAAA6uF,EAAAzvF,KAAAmmF,YAAAnmF,KAAAqmF,QAAArmF,KAAA0vF,UAAA1vF,KAAAqmD,SAAArmD,KAAAi/E,OAAA9+E,KAAAkmF,SAAArmF,KAAA0vF,iBAAAvvF,GAAAsuF,cAA+btJ,GAAAxlF,UAAAwmF,QAAA,WAA6C,OAAAnmF,KAAAyuF,gBAAAzuF,KAAAymC,QAAA,IAAAzmC,KAAAqmD,UAAA,IAAArmD,KAAAi/E,OAA2EkG,EAAAxlF,UAAAmmF,UAAA,SAAArlF,EAAAhC,EAAA0B,GAAqD,GAAAlB,GAAAe,KAAA4vF,sBAAAnvF,EAAAhC,EAAsC,IAAAuB,KAAAmmF,UAAA,MAAAlnF,EAA2B,KAAAkB,KAAA2mB,KAAAC,QAAA/mB,KAAAqmF,QAAA,MAAApnF,EAA4C,IAAA2B,GAAAZ,KAAAyuF,cAAA3I,UAAArlF,EAAAhC,EAAAuB,KAAA0vF,WAAAnwF,EAAAixB,EAAAq/D,gBAAA1vF,EAAAH,KAAA0vF,UAAA1vF,KAAAi/E,OAAAj/E,KAAAqmD,SAA0H,OAAArmD,MAAAymC,OAAA7lC,EAAA3B,EAAAM,IAA0B4lF,EAAAxlF,UAAAiwF,sBAAA,SAAAnvF,EAAAhC,GAA+D,IAAAuB,KAAA2vF,iBAAA,MAAA3vF,MAAAimF,YAAAH,UAAArlF,EAAAhC,EAAiE,IAAA0B,GAAAM,EAAAmlB,KAAA3mB,EAAAe,KAAA4oF,YAAAkB,gBAAAlpF,EAAAT,EAAAlB,EAAA,KAAAM,EAAAS,KAAAimF,YAAAH,WAAyFlgE,KAAAzlB,EAAAlB,EAAAkB,EAAA,EAAAA,EAAA,GAAiB1B,GAAAiC,EAAAV,KAAAimF,YAAAH,WAAkClgE,KAAAzlB,GAAO1B,GAAAqB,EAAAuB,KAAAmJ,KAAAsc,KAAAC,MAAA/mB,KAAA4oF,YAAAmB,qBAAA/pF,KAAAqmD,SAAA,GAAA3nD,EAAA2C,KAAAoK,IAAAtL,EAAAlB,GAAA0B,EAAAmmE,EAAAhnE,EAAA,EAAApB,EAAuH,iBAAAa,OAAA,KAAAmB,GAA+B+2C,KAAAl4C,EAAAo4C,UAAA/2C,EAAA82C,GAAAh3C,EAAAk3C,QAAA,EAAAn3C,EAAAE,OAAsC,IAAQnC,EAAAD,QAAA4mF,IACnpDh7C,iCAAA,IAAAtZ,eAAA,MAAwDi/D,KAAA,SAAA7uF,EAAAzC,EAAAD,GAC3D,YAAaC,GAAAD,QAAA0C,EAAA,oCAAAzC,EAAAD,QAAAgoF,WAAA,SAAA7lF,EAAAP,GAAmG,GAAAA,KAAAY,OAAA,CAAgB,OAAAN,GAAA,EAAAxB,EAAAkB,EAAgBM,EAAAxB,EAAA8B,OAAWN,GAAA,GAAM,GAAAX,GAAAb,EAAAwB,GAAAhC,EAAAqB,EAAAikE,OAAuBrjE,GAAAmtD,KAAA,SAAgBjiC,MAAA,GAAA/qB,OAAApC,KAAqB,SAAS,YACnOsxF,mCAAA,MAAuCC,KAAA,SAAA/uF,EAAAzC,EAAAD,GAC1C,YAAa,IAAAqF,GAAA3C,EAAA,0BAAA22B,EAAA,SAAAn3B,GAA+D,QAAAxB,KAAAkB,EAAAZ,EAAAmB,GAAoBD,EAAA9B,KAAAqB,KAAAf,EAAAkB,GAAAH,KAAA0F,MAAAnG,MAAA,KAAAmB,IAAAV,KAAAq9B,QAAA38B,GAA2D,MAAAD,KAAAxB,EAAAyuD,UAAAjtD,GAAAxB,EAAAU,UAAAT,OAAA2D,OAAApC,KAAAd,WAAAV,EAAAU,UAAAsoB,YAAAhpB,IAAAU,UAAAkE,MAAA,WAA2H,UAAA5E,GAAAe,KAAA+B,EAAA/B,KAAA2B,EAAA3B,KAAA0F,MAAA1F,KAAAq9B,UAAoDp+B,GAAG2E,EAAQpF,GAAAD,QAAAq5B,IAClV7pB,yBAAA,IAA2BkiF,KAAA,SAAAhvF,EAAAzC,EAAAD,GAC9B,YAAa,SAAA2xF,GAAA/vF,EAAAM,EAAAG,EAAAF,EAAAnB,GAAkC,YAAAkB,EAAA48B,QAAA,QAA+B,QAAA5+B,GAAAgC,EAAAX,EAAAW,EAAA48B,QAAA,EAAA98B,EAAA,EAA8BA,GAAAK,EAAA,GAAO,CAAE,KAAAd,EAAA,UAAkBS,IAAAJ,EAAAL,GAAA0F,KAAA/G,KAAA0B,EAAAL,GAAuBS,GAAAJ,EAAAL,GAAA0F,KAAArF,EAAAL,EAAA,IAAAA,GAAyB,QAAApB,MAAAO,EAAA,EAAiBsB,EAAAK,EAAA,GAAM,CAAE,GAAAD,GAAAR,EAAAL,EAAA,GAAAjB,EAAAsB,EAAAL,GAAAC,EAAAI,EAAAL,EAAA,EAA6B,KAAAC,EAAA,QAAe,IAAA2B,GAAAf,EAAAiF,QAAA/G,KAAA+G,QAAA7F,EAAgC,KAAA2B,EAAAL,KAAAoK,KAAA/J,EAAA,EAAAL,KAAAqM,KAAA,EAAArM,KAAAqM,IAAArM,KAAAqM,IAAAhP,EAAA2I,MAA0D2uB,SAAAz1B,EAAA4vF,WAAAzuF,IAAwBzC,GAAAyC,EAAOnB,EAAA7B,EAAA,GAAAs3B,SAAAt1B,GAAkBzB,GAAAP,EAAA0xF,QAAAD,UAAyB,IAAAlxF,EAAAM,EAAA,QAAgBO,KAAAS,GAAA1B,EAAA2G,KAAAzF,GAAiB,SAASvB,EAAAD,QAAA2xF,OACtcG,KAAA,SAAApvF,EAAAzC,EAAAD,GACJ,YAAa,SAAAi6B,GAAAj5B,EAAAwC,EAAAJ,EAAA1C,EAAAkB,GAA6B,OAAAO,MAAAD,EAAA,EAAiBA,EAAAlB,EAAAwB,OAAWN,IAAA,OAAAhC,GAAAc,EAAAkB,GAAAE,MAAA,GAAA7B,EAAA,EAAgCA,EAAAL,EAAAsC,OAAA,EAAajC,IAAA,CAAK,GAAAw3B,GAAA73B,EAAAK,GAAA8C,EAAAnD,EAAAK,EAAA,EAAoBw3B,GAAAv0B,KAAAH,EAAAG,MAAAu0B,EAAAv0B,IAAAu0B,EAAA,GAAA1yB,GAAA7B,EAAAu0B,EAAA30B,GAAAC,EAAAD,EAAA20B,EAAA30B,KAAAI,EAAAu0B,EAAAv0B,IAAAH,EAAAG,EAAAu0B,EAAAv0B,KAAAqD,SAAAxD,EAAAG,MAAAH,EAAA,GAAAgC,GAAA7B,EAAAu0B,EAAA30B,GAAAC,EAAAD,EAAA20B,EAAA30B,KAAAI,EAAAu0B,EAAAv0B,IAAAH,EAAAG,EAAAu0B,EAAAv0B,KAAAqD,UAAAkxB,EAAA30B,KAAAC,EAAAD,MAAA20B,EAAA30B,IAAA20B,EAAA,GAAA1yB,GAAA0yB,EAAAv0B,GAAAH,EAAAG,EAAAu0B,EAAAv0B,KAAAJ,EAAA20B,EAAA30B,IAAAC,EAAAD,EAAA20B,EAAA30B,OAAAyD,SAAAxD,EAAAD,MAAAC,EAAA,GAAAgC,GAAA0yB,EAAAv0B,GAAAH,EAAAG,EAAAu0B,EAAAv0B,KAAAJ,EAAA20B,EAAA30B,IAAAC,EAAAD,EAAA20B,EAAA30B,OAAAyD,UAAAkxB,EAAAv0B,GAAA9C,GAAA2C,EAAAG,GAAA9C,IAAAq3B,EAAAv0B,GAAA9C,EAAAq3B,EAAA,GAAA1yB,GAAA3E,EAAAq3B,EAAA30B,GAAAC,EAAAD,EAAA20B,EAAA30B,KAAA1C,EAAAq3B,EAAAv0B,IAAAH,EAAAG,EAAAu0B,EAAAv0B,KAAAqD,SAAAxD,EAAAG,GAAA9C,IAAA2C,EAAA,GAAAgC,GAAA3E,EAAAq3B,EAAA30B,GAAAC,EAAAD,EAAA20B,EAAA30B,KAAA1C,EAAAq3B,EAAAv0B,IAAAH,EAAAG,EAAAu0B,EAAAv0B,KAAAqD,UAAAkxB,EAAA30B,GAAAxB,GAAAyB,EAAAD,GAAAxB,IAAAm2B,EAAA30B,GAAAxB,EAAAm2B,EAAA,GAAA1yB,GAAA0yB,EAAAv0B,GAAAH,EAAAG,EAAAu0B,EAAAv0B,KAAA5B,EAAAm2B,EAAA30B,IAAAC,EAAAD,EAAA20B,EAAA30B,IAAAxB,GAAAiF,SAAAxD,EAAAD,GAAAxB,IAAAyB,EAAA,GAAAgC,GAAA0yB,EAAAv0B,GAAAH,EAAAG,EAAAu0B,EAAAv0B,KAAA5B,EAAAm2B,EAAA30B,IAAAC,EAAAD,EAAA20B,EAAA30B,IAAAxB,GAAAiF,UAAAzE,GAAA21B,EAAA/wB,OAAA5E,IAAAI,OAAA,MAAAJ,GAAA21B,GAAA51B,EAAA2G,KAAA1G,MAAA0G,KAAAzF,OAA4oB,MAAAlB,GAAS,GAAAkD,GAAA3C,EAAA,yBAA4CzC,GAAAD,QAAAi6B,IAC10BzqB,yBAAA,IAA2BuiF,KAAA,SAAArvF,EAAAzC,EAAAD,GAC9B,YAAa,IAAAq6B,GAAA33B,EAAA,wBAAA2C,EAAA3C,EAAA,0BAAAy6D,EAAA9iC,GAA2IG,UAAUnsB,KAAA,QAAA7N,KAAA,iBAAmC6N,KAAA,QAAA7N,KAAA,iBAAmC6N,KAAA,QAAA7N,KAAA,YAA8B6N,KAAA,QAAA7N,KAAA,YAA8B6N,KAAA,QAAA7N,KAAA,OAAyB6N,KAAA,QAAA7N,KAAA,OAAyB6N,KAAA,QAAA7N,KAAA,OAAyB6N,KAAA,QAAA7N,KAAA,OAAyB6N,KAAA,UAAA7N,KAAA,uBAA2C6N,KAAA,UAAA7N,KAAA,aAAiC6N,KAAA,SAAA7N,KAAA,iBAAoC6N,KAAA,SAAA7N,KAAA,qBAAwC6N,KAAA,SAAA7N,KAAA,gBAAmC6N,KAAA,QAAA7N,KAAA,UAA4B6N,KAAA,QAAA7N,KAAA,UAA4B6N,KAAA,QAAA7N,KAAA,UAA4B6N,KAAA,QAAA7N,KAAA,UAA4B6N,KAAA,UAAA7N,KAAA,oBAAyCG,QAAAC,eAAAu8D,EAAA/7D,UAAA4wF,WAAA5wF,UAAA,eAAsFL,IAAA,WAAe,UAAAsE,GAAA5D,KAAAwwF,aAAAxwF,KAAAywF,iBAAuDjyF,EAAAD,QAAAm9D,IACr3Br6B,uBAAA,IAAAtzB,yBAAA,IAAsD2iF,KAAA,SAAAzvF,EAAAzC,EAAAD,GACzD,YAAa,IAAAm6B,GAAA,SAAAj4B,EAAAN,EAAA1B,EAAAQ,EAAA2B,EAAArB,EAAAO,EAAApB,EAAAgC,EAAA5B,EAAA6B,GAAqD,GAAAe,GAAA5B,EAAA0gD,IAAA9hD,EAAAgC,EAAAH,EAAAT,EAAAm4E,OAAAv5E,EAAAgC,EAAAqB,EAAAjC,EAAAygD,KAAA7hD,EAAAgC,EAAA9B,EAAAkB,EAAAk4E,MAAAt5E,EAAAgC,CAA0D,IAAAV,KAAA47B,cAAAn7B,EAAAM,OAAAjC,EAAA,CAAkC,GAAAi2B,GAAAx0B,EAAAmB,EAAAM,EAAApD,EAAAmD,CAAgB,IAAAgzB,EAAA,KAAAA,EAAA1zB,KAAAuG,IAAA,GAAAlJ,EAAAq2B,GAAAp0B,EAAA,CAAgC,GAAAa,GAAArB,EAAA1B,EAAA4+B,QAAA,GAAAr5B,IAAA7D,EAAA1B,EAAA4+B,UAAAr4B,QAAAT,MAAAvC,GAAAnD,GAAAJ,EAAAuF,IAAAxC,GAAA/C,EAAAqF,IAAAtC,GAA8ExB,MAAA2wF,uBAAAlwF,EAAA5B,EAAAJ,EAAA,EAAAuD,EAAA+yB,EAAA91B,EAAA2B,EAAArB,OAA+CS,MAAA2wF,uBAAAlwF,EAAAN,EAAA1B,IAAA4+B,QAAAr7B,EAAA+yB,EAAA91B,EAAA2B,EAAArB,OAA4DkB,GAAAuwB,YAAAvyB,EAAAsD,EAAAtD,EAAAkD,EAAA,IAAAI,EAAAL,EAAA9C,EAAA2B,EAAA,QAAAtB,EAAA2B,EAAArB,EAAA,UAAgES,MAAA87B,YAAAr7B,EAAAM,OAA2B23B,GAAA/4B,UAAAgxF,uBAAA,SAAAlwF,EAAAN,EAAA1B,EAAAQ,EAAA2B,EAAArB,EAAAO,EAAApB,EAAAgC,GAA8E,GAAA5B,GAAAS,EAAA,EAAAoB,EAAAU,KAAAoV,MAAA7V,EAAA9B,GAAA4C,EAAAL,KAAAoV,MAAA9V,EAAA,GAAAJ,GAAAhB,EAAA,EAAAwC,EAAAtD,EAAAG,EAAAK,EAAA,EAAA81B,EAAAx0B,EAAAyB,GAAApB,EAAA,EAAAY,EAAAQ,EAAApB,EAAA,CAAkF,IAAG,KAAAhC,EAAA,GAAU,GAAAm2B,EAAA/yB,EAAA,MAAcpD,GAAA,CAAI,OAAMm2B,GAAA50B,EAAAvB,GAAA4G,KAAAzD,KAAA5B,EAAAvB,SAAuBm2B,EAAAvzB,EAAW,QAAA3C,GAAAsB,EAAAvB,GAAA4G,KAAArF,EAAAvB,EAAA,IAAAmB,GAAA2B,EAAiC3B,EAAAY,EAAAe,EAAM3B,IAAA,CAAK,GAAAF,GAAAE,EAAAjB,EAAAm2B,EAAAjzB,EAAAnC,CAAgB,IAAAA,EAAA,IAAAo1B,GAAAp1B,KAAAe,IAAAq0B,GAAAp1B,EAAAe,KAAAq0B,EAAAF,GAAA,CAAqC,KAAKA,EAAAl2B,EAAAo2B,GAAM,CAAE,GAAAF,GAAAl2B,IAAAD,EAAA,GAAAuB,EAAAY,OAAA,MAA+BlC,GAAAsB,EAAAvB,GAAA4G,KAAArF,EAAAvB,EAAA,IAAoB,GAAA6C,GAAAwzB,EAAAF,EAAApzB,EAAAxB,EAAAvB,GAAAw1B,EAAAj0B,EAAAvB,EAAA,GAAAyD,EAAA+xB,EAAApwB,IAAArC,GAAAqD,QAAAT,MAAA9C,GAAAsC,KAAApC,GAAAyD,SAAAtD,EAAAT,KAAAuG,IAAAvG,KAAAoK,IAAAwpB,EAAA10B,GAAAzB,EAAA,KAAAs3B,EAAAx1B,EAAA,EAAAkB,GAA+G/B,EAAA,GAAAA,GAAAY,KAAAy1B,EAAA/0B,KAAAmJ,IAAA4rB,EAAA,MAAA31B,EAAAuwB,YAAA3uB,EAAAN,EAAAM,EAAAV,EAAAU,EAAAN,EAAAtD,EAAAsD,EAAAM,EAAAV,EAAAlD,EAAAkD,GAAApC,EAAA,GAAAA,EAAA,EAAAA,EAAA,EAAAA,EAAA,EAAA62B,IAAAt2B,EAAApB,EAAAgC,EAAA,cAAgHlC,EAAAD,QAAAm6B,OACrkCk4D,KAAA,SAAA3vF,EAAAzC,EAAAD,GACJ,YAAa,IAAAqF,GAAA3C,EAAA,0BAAAwwB,EAAAxwB,EAAA,kBAAAq+B,EAAAr+B,EAAA,cAAA4vF,EAAA5vF,EAAA,8BAAAw6D,EAAA,SAAAt7D,EAAAM,EAAAhC,EAAAmC,EAAAF,EAAAzB,EAAAM,OAAsM,KAAAN,MAAA,GAAAqgC,GAAA7N,EAAA,gBAAAlyB,MAAA,GAAA+/B,GAAA7N,EAAA,OAAAzxB,KAAA0F,MAAAvF,EAAAH,KAAAynC,MAAAhnC,EAAAT,KAAAgqC,uBAAAvrC,EAAAuB,KAAA4pC,qBAAAhpC,EAAAZ,KAAA+/B,KAAA9gC,EAAAe,KAAA8wF,YAAAvxF,EAAAS,KAAAy9B,iBAAA,MAAA78B,EAAAnC,EAAA,GAAAuB,KAAAm8B,SAAA,GAAAn8B,KAAAy9B,iBAAAz9B,KAAA07B,SAAA,EAAA17B,KAAAy9B,gBAA+S,IAAA39B,GAAAuB,KAAAC,IAAAtB,KAAA0F,OAAAhH,EAAA2C,KAAAE,IAAAvB,KAAA0F,MAAkD1F,MAAA8nC,gBAAAppC,GAAAoB,IAAApB,GAAAsB,KAAA+wF,uBAAAryF,EAAAoB,KAAApB,GAAAsB,KAAAs9B,SAAAj8B,KAAAuG,IAAA,EAAAhH,GAAAnC,EAAA4C,KAAAE,IAAAd,EAAA,IAAAY,KAAAqM,MAAA1N,KAAA25B,kBAAAj5B,EAAA,IAAAA,EAAAK,SAAAL,EAAAswB,cAAAtwB,EAAAswB,YAAA,WAAAS,EAAA,EAAAA,EAAA,2BAAA/wB,EAAAswB,YAAAS,EAAA,SAAAA,EAAA,EAAAA,EAAA,2BAAA/wB,EAAAswB,YAAA,SAAAS,EAAA,EAAAA,EAAA,6BAAA/wB,EAAAswB,YAAA,EAAAS,EAAA,KAAAA,EAAA,EAAAA,EAAA,8BAAAzxB,KAAAgxF,iBAAAtwF,EAAApB,IAAA,GAAAU,KAAAixF,OAAAvwF,EAAApB,IAAA,GAAAoB,EAAApB,IAAA,GAAAoB,EAAApB,IAAA,GAAAoB,EAAApB,IAAA,IAAiiBm8D,GAAAhrC,YAAA,SAAAtwB,EAAAM,GAAwC,UAAAg7D,GAAAt7D,EAAAuF,MAAAvF,EAAAsnC,MAAAtnC,EAAA6pC,uBAAA7pC,EAAAypC,qBAAAnpC,EAAA,GAAA6+B,GAAAn/B,EAAA4/B,MAAA,GAAAT,GAAAn/B,EAAA2wF,eAAqIr1B,EAAA97D,UAAAgzB,UAAA,SAAAxyB,GAA+C,GAAAM,GAAAT,KAAA+/B,KAAA9mB,gBAAAxa,EAAAuB,KAAA8wF,YAAA73E,eAAmE,OAAA9Y,OAAAkH,KAAA5G,GAAAN,EAAAkH,KAAA5I,KAAiCiH,MAAA1F,KAAA0F,MAAA+hC,MAAAznC,KAAAynC,MAAAuC,uBAAAhqC,KAAAgqC,uBAAAJ,qBAAA5pC,KAAA4pC,qBAAA7J,KAAAt/B,EAAAqwF,YAAAryF,IAA0Jg9D,EAAA97D,UAAAu8B,sBAAA,SAAA/7B,EAAAM,EAAAhC,GAA+D,OAAAmC,GAAAZ,KAAAU,EAAAV,KAAA25B,kBAAA16B,EAAAe,KAAAm8B,SAAA58B,EAAAS,KAAA8nC,eAAAhoC,EAAAE,KAAAs9B,SAAA5+B,EAAAyB,EAAAy7B,cAAgHl9B,EAAAyB,EAAA27B,YAAgBp9B,IAAA,CAAK,GAAAG,GAAA6B,EAAApB,IAAAZ,GAAAgD,EAAA7C,EAAA6+B,YAAA54B,SAAAvF,GAAAwC,EAAAL,EAAAK,EAAAnD,EAAA8C,EAAAC,EAAA9B,EAAAkC,EAAAlD,EAAA8+B,GAAA/8B,EAAA68B,iBAAA97B,EAAA/C,EAAAC,EAAA++B,GAAA99B,EAAAc,EAAA68B,iBAAA19B,EAAAgC,EAAAlD,EAAAg/B,GAAAj9B,EAAA68B,iBAAA3+B,EAAAF,EAAAC,EAAAi/B,GAAAh+B,EAAAc,EAAA68B,gBAA2K5+B,GAAAqyF,MAAArxF,EAAAhB,EAAAsyF,MAAAxvF,EAAA9C,EAAAuyF,MAAArxF,EAAAlB,EAAAwyF,MAAAvyF,CAAwC,IAAA4X,GAAA,GAAA9S,GAAA/E,EAAAyyF,QAAAzyF,EAAA0yF,SAAAzsF,SAAAvF,GAAAoB,EAAA+V,EAAA3U,EAAA2U,EAAA3U,EAAAP,EAAAkV,EAAA/U,EAAA+U,EAAA/U,EAAAF,EAAAD,EAAA1B,IAAAS,EAAAc,KAAAiE,MAAA3E,EAAAc,IAAAd,EAAAa,KAAA,CAAyG,IAAA3C,EAAA68B,SAAA78B,EAAA2yF,mBAAAjxF,GAAAE,EAAA,OAAAq0B,GAAAl0B,EAAAm/B,KAAAlnB,MAAAhZ,EAAA8B,EAAA5B,EAAAjB,GAAA0U,EAAA,EAA4EA,EAAAshB,EAAA/zB,OAAWyS,IAAA,CAAK,GAAA8iB,GAAA51B,EAAApB,IAAAw1B,EAAAthB,IAAAxR,EAAAs0B,EAAAoH,YAAA54B,SAAAvF,EAA8C,KAAAN,EAAA2B,EAAA6wF,kBAAAxyF,EAAAyC,EAAA7C,EAAAmD,EAAAs0B,KAAA11B,EAAA86B,SAAA,MAAAz8B,GAA2D,GAAAR,EAAA,CAAM,GAAA4a,OAAA,EAAa,IAAAzY,EAAA8E,MAAA,CAAY,GAAAuvB,GAAAr0B,EAAAmwF,sBAAAnvF,EAAA,GAAAgC,GAAA/E,EAAA8+B,GAAA9+B,EAAA++B,IAAA/4B,QAAAowB,GAAA9yB,EAAA,GAAAyB,GAAA/E,EAAAg/B,GAAAh/B,EAAA++B,IAAA/4B,QAAAowB,GAAAb,EAAA,GAAAxwB,GAAA/E,EAAA8+B,GAAA9+B,EAAAi/B,IAAAj5B,QAAAowB,GAAAqG,EAAA,GAAA13B,GAAA/E,EAAAg/B,GAAAh/B,EAAAi/B,IAAAj5B,QAAAowB,EAAsK5b,GAAAzY,EAAAowF,iBAAA33E,EAAAm3E,aAAA3xF,EAAA6+B,YAAA37B,EAAAsX,EAAAo3E,aAAA5xF,EAAA6+B,YAAA/7B,EAAA0X,EAAAskB,GAAAt8B,KAAAmJ,IAAA5I,EAAAG,EAAAI,EAAAJ,EAAAqyB,EAAAryB,EAAAu5B,EAAAv5B,GAAAsX,EAAAukB,GAAAv8B,KAAAmJ,IAAA5I,EAAAD,EAAAQ,EAAAJ,EAAAqyB,EAAAryB,EAAAu5B,EAAAv5B,GAAAsX,EAAAwkB,GAAAx8B,KAAAuG,IAAAhG,EAAAG,EAAAI,EAAAJ,EAAAqyB,EAAAryB,EAAAu5B,EAAAv5B,GAAAsX,EAAAykB,GAAAz8B,KAAAuG,IAAAhG,EAAAD,EAAAQ,EAAAJ,EAAAqyB,EAAAryB,EAAAu5B,EAAAv5B,GAAAsX,EAAAqiB,SAAA78B,EAAA68B,aAAqOriB,GAAAxa,CAAS,QAAAqD,GAAA,EAAYA,EAAAlC,KAAAixF,MAAAlwF,OAAoBmB,IAAA,CAAK,GAAAI,GAAA1B,EAAAqwF,MAAA/uF,EAAiB,KAAAjD,EAAA2B,EAAA6wF,kBAAAxyF,EAAAJ,EAAA6+B,YAAArkB,EAAA/W,EAAAo7B,YAAAp7B,KAAA1B,EAAA86B,SAAA,MAAAz8B,KAAqF,MAAAA,IAASw8D,EAAA97D,UAAAkhC,qBAAA,SAAA1gC,EAAAM,GAA4D,GAAAhC,MAAQmC,IAAM,QAAAT,EAAAY,QAAA,IAAAf,KAAA+/B,KAAA1nB,KAAAtX,QAAA,IAAAf,KAAA8wF,YAAAz4E,KAAAtX,OAAA,MAAAH,EAAsF,QAAAF,GAAAV,KAAA25B,kBAAA16B,EAAAe,KAAA8nC,eAAAvoC,EAAAS,KAAAs9B,SAAAx9B,KAAApB,EAAA,IAAAG,EAAA,IAAA6C,GAAA,IAAAK,GAAA,IAAAnD,EAAA,EAA0GA,EAAAuB,EAAAY,OAAWnC,IAAA,OAAAiB,GAAAM,EAAAvB,GAAA+C,EAAA,EAAuBA,EAAA9B,EAAAkB,OAAWY,IAAA,CAAK,GAAA5B,GAAAF,EAAA8B,GAAAkD,QAAA5F,EAAsBP,GAAA2C,KAAAmJ,IAAA9L,EAAAqB,EAAAgC,GAAAlD,EAAAwC,KAAAmJ,IAAA3L,EAAAkB,EAAA4B,GAAAD,EAAAL,KAAAuG,IAAAlG,EAAA3B,EAAAgC,KAAAV,KAAAuG,IAAA7F,EAAAhC,EAAA4B,GAAA7B,EAAAuH,KAAAtH,GAAkF,OAAAjB,GAAAkB,KAAA+/B,KAAAlnB,MAAAna,EAAAG,EAAA6C,EAAAK,GAAA2U,EAAA1W,KAAA8wF,YAAAj4E,MAAAna,EAAAG,EAAA6C,EAAAK,GAAApB,EAAA,EAAyEA,EAAA+V,EAAA3V,OAAWJ,IAAA7B,EAAAuI,KAAAqP,EAAA/V,GAAiB,QAAAa,GAAAf,EAAAT,KAAAy9B,iBAAAh8B,EAAAJ,KAAAkJ,IAAA,EAAAlJ,KAAAkd,KAAAld,KAAA6S,IAAA1S,GAAAH,KAAAoY,IAAA,QAAAlZ,EAAA,EAA0FA,EAAAzB,EAAAiC,OAAWR,IAAA,CAAK,GAAAu0B,GAAAp0B,EAAApB,IAAAR,EAAAyB,IAAAiT,EAAAshB,EAAAtC,iBAAA8D,EAAAxB,EAAArC,YAAwD,aAAAh0B,EAAA+U,KAAA/U,EAAA+U,QAA0B/U,EAAA+U,GAAA8iB,MAAA70B,EAAAqzB,EAAAiJ,gBAAAt8B,EAAAqzB,EAAA4G,UAAA,CAAiD,GAAA15B,GAAA8yB,EAAA4I,YAAA74B,QAAA5F,GAAAoa,EAAArX,EAAAD,EAAA+yB,EAAA6I,GAAAn8B,EAAAyzB,EAAAjzB,EAAAL,EAAAmzB,EAAA8I,GAAAp8B,EAAAjC,EAAAqC,EAAAI,EAAAD,EAAA+yB,EAAA+I,GAAAr8B,EAAAW,EAAAH,EAAAL,EAAAmzB,EAAAgJ,GAAAt8B,EAAAjC,EAAA60B,GAAA,GAAAxwB,GAAAyV,EAAA4b,GAAA,GAAArxB,GAAAhC,EAAAqzB,GAAA,GAAArxB,GAAAhC,EAAAO,GAAA,GAAAyB,GAAAyV,EAAAlX,GAAuJ0uF,GAAAa,yBAAA5xF,EAAAs0B,KAAA31B,EAAA+U,GAAA8iB,IAAA,EAAA11B,EAAAyG,KAAAvI,EAAAyB,MAA4E,MAAAK,IAAS66D,EAAA97D,UAAA8xF,kBAAA,SAAAtxF,EAAAM,EAAAhC,EAAAmC,EAAAF,GAA+D,GAAAzB,GAAAwB,EAAAsB,EAAAnB,EAAAmB,EAAAxC,EAAAkB,EAAAkB,EAAAf,EAAAe,EAAA7B,GAAAY,EAAAi9B,GAAAl/B,EAAAo/B,IAAA5+B,EAAAP,GAAAgC,EAAAm9B,GAAAp/B,EAAAk/B,IAAA1+B,EAAAJ,GAAA6B,EAAAk9B,GAAAn/B,EAAAq/B,IAAA99B,KAAAs9B,SAAA/9B,EAAAmC,GAAAhB,EAAAo9B,GAAAr/B,EAAAm/B,IAAA59B,KAAAs9B,SAAA/9B,GAAoHia,MAAA1Z,IAAA0Z,MAAA9a,MAAAoB,EAAApB,EAAA,IAAA8a,MAAA3a,IAAA2a,MAAA9X,MAAA7C,EAAA6C,EAAA,EAA4D,IAAAK,GAAAV,KAAAmJ,IAAAnJ,KAAAuG,IAAA9H,EAAApB,GAAA2C,KAAAuG,IAAA/I,EAAA6C,IAAA9C,EAAA8B,EAAAg7B,SAAA77B,EAAApB,EAAAi9B,QAAsE,OAAA35B,GAAAnD,IAAAmD,EAAAnD,GAAAmD,EAAAlC,IAAAkC,EAAAlC,GAAAkC,EAAA5B,GAAA4B,GAAArB,EAAAq9B,iBAAA59B,EAAA4B,GAAA5B,GAA+Ds7D,EAAA97D,UAAA08B,uBAAA,SAAAl8B,EAAAM,EAAAhC,GAAgE,OAAAmC,GAAAZ,KAAAU,EAAAjC,EAAAuB,KAAA8wF,YAAA9wF,KAAA+/B,KAAA9gC,EAAAe,KAAA25B,kBAAAp6B,EAAAY,EAAAy7B,cAAyFr8B,EAAAY,EAAA27B,YAAgBv8B,IAAA,CAAK,GAAAO,GAAAb,EAAAK,IAAAC,EAAeO,GAAAi+B,eAAAt9B,IAAAG,EAAA86B,WAAA,IAAA96B,EAAA68B,kBAAA39B,EAAA47B,UAAA,IAAAh7B,EAAA6X,OAAAhZ,EAAAO,EAAAoxF,MAAApxF,EAAAqxF,MAAArxF,EAAAsxF,MAAAtxF,EAAAuxF,SAAuH7yF,EAAAD,QAAAk9D,IACl8IxxB,iBAAA,GAAA0nD,6BAAA,IAAA5jF,yBAAA,EAAA0zB,aAAA,KAAgGmwD,KAAA,SAAA3wF,EAAAzC,EAAAD,GACnG,YAAa,SAAAs5B,GAAA13B,EAAAO,EAAAD,EAAAlB,EAAAqB,EAAAlC,EAAAO,EAAAR,EAAAI,GAAuC,GAAA6C,GAAAnC,EAAA,GAAAb,EAAAO,EAAA,EAAAa,EAAAuB,KAAAuG,IAAArI,IAAAy4E,MAAAz4E,EAAAghD,KAAA,EAAA3/C,IAAAo3E,MAAAp3E,EAAA2/C,KAAA,GAAA5/C,EAAA,IAAAR,EAAA,GAAA4B,GAAA5B,EAAA,GAAA4B,IAAAlD,GAAA,IAAAsB,EAAA,GAAAwB,GAAAxB,EAAA,GAAAwB,IAAA9C,CAAoH6B,GAAAZ,EAAAb,EAAAyB,EAAA,IAAAA,EAAAZ,EAAAb,EAAAyB,EAAA,EAAuB,IAAAX,GAAA,EAAArB,CAAU,OAAAmzF,GAAA1xF,EAAAQ,EAAAD,EAAA,EAAAjC,EAAAiC,GAAAZ,EAAA,EAAAC,GAAAd,EAAAR,EAAAiC,IAAAgB,EAAAjB,EAAAX,EAAAb,EAAA0B,GAAA,EAAA9B,GAA4D,QAAAgzF,GAAA1xF,EAAAO,EAAAD,EAAAlB,EAAAqB,EAAAlC,EAAAO,EAAAR,EAAAI,GAAqC,OAAA6C,GAAAhD,EAAA,EAAAoB,EAAA,EAAAa,EAAA,EAAsBA,EAAAR,EAAAY,OAAA,EAAaJ,IAAAb,GAAAK,EAAAQ,GAAA6E,KAAArF,EAAAQ,EAAA,GAAyB,QAAAZ,GAAA,EAAAF,EAAAa,EAAAD,EAAAsB,KAAAxB,EAAA,EAA2BA,EAAAJ,EAAAY,OAAA,EAAaR,IAAA,CAAK,OAAAiB,GAAArB,EAAAI,GAAA3B,EAAAuB,EAAAI,EAAA,GAAAoB,EAAAH,EAAAgE,KAAA5G,GAAAiD,EAAAjD,EAAAgH,QAAApE,GAAmD3B,EAAAY,EAAAV,EAAA4B,GAAQ,CAAE9B,GAAAY,CAAK,IAAA3B,IAAAe,EAAAE,GAAA4B,EAAAU,EAAAykE,EAAAtlE,EAAAO,EAAAnD,EAAAmD,EAAAjD,GAAAwD,EAAAwkE,EAAAtlE,EAAAG,EAAA/C,EAAA+C,EAAA7C,EAAgE,IAAAuD,GAAA,GAAAA,EAAAxD,GAAAyD,GAAA,GAAAA,EAAAzD,GAAAgB,EAAA6B,GAAA,GAAA7B,EAAA6B,GAAA5B,EAAA,CAAyC,GAAA2B,GAAA,GAAAm2B,GAAAv1B,EAAAC,EAAAT,EAAAtB,EAA0BkB,GAAA2D,SAAA7F,IAAA2wF,EAAA/vF,EAAAsB,EAAA/C,EAAAa,EAAAqB,IAAAmB,EAAAsF,KAAA5F,IAAoD1B,GAAA4B,EAAK,MAAAlD,IAAAsD,EAAAhB,QAAA9B,IAAA8C,EAAA8vF,EAAA1xF,EAAAJ,EAAA,EAAAU,EAAAlB,EAAAqB,EAAAlC,EAAAO,GAAA,EAAAJ,IAAAkD,EAA4D,GAAA+kE,GAAA7lE,EAAA,kCAAA22B,EAAA32B,EAAA,oBAAAivF,EAAAjvF,EAAA,oBAAwIzC,GAAAD,QAAAs5B,IACl1BsS,iCAAA,IAAA2nD,mBAAA,IAAAC,oBAAA,MAAoFC,KAAA,SAAA/wF,EAAAzC,EAAAD,GACvF,YAAaC,GAAAD,QAAA,SAAA4B,GAA2B,QAAAM,MAAcV,EAAAsH,KAAAlH,EAAAM,IAAA/B,IAAiB,QAAAgC,GAAAP,EAAAM,EAAAC,GAAkB,GAAAnB,GAAAoB,EAAAR,EAAW,cAAAQ,GAAAR,GAAAQ,EAAAF,GAAAlB,EAAAQ,EAAAR,GAAAsO,SAAA,GAAA0I,MAAAxW,EAAAR,GAAAsO,SAAA,GAAA9N,EAAAR,GAAAsO,SAAA,GAAA7G,OAAAtG,EAAA,IAAAnB,EAAkG,QAAAA,GAAAY,EAAAM,EAAAC,GAAkB,GAAAnB,GAAAd,EAAAgC,EAAW,cAAAhC,GAAAgC,GAAAhC,EAAA0B,GAAAZ,EAAAQ,EAAAR,GAAAsO,SAAA,GAAAuiF,QAAArwF,EAAAR,GAAAsO,SAAA,GAAAnN,EAAA,GAAAsG,OAAAjH,EAAAR,GAAAsO,SAAA,IAAAtO,EAAoG,QAAAN,GAAAkB,EAAAM,EAAAC,GAAkB,GAAAnB,GAAAmB,EAAAD,EAAA,GAAAA,EAAA,GAAAM,OAAA,GAAAN,EAAA,KAAoC,OAAAN,GAAA,IAAAZ,EAAAwC,EAAA,IAAAxC,EAAAoC,EAAyB,OAAAlD,MAAYkC,KAAKZ,KAAArB,EAAA,EAAAE,EAAA,EAAcA,EAAAuB,EAAAY,OAAWnC,IAAA,CAAK,GAAA+C,GAAAxB,EAAAvB,GAAAC,EAAA8C,EAAAkM,SAAAtN,EAAAoB,EAAAy3B,IAAiC,IAAA74B,EAAA,CAAM,GAAAK,GAAA3B,EAAAsB,EAAA1B,GAAAiB,EAAAb,EAAAsB,EAAA1B,GAAA,EAAyB,IAAA+B,IAAAD,IAAAb,IAAArB,IAAAkC,EAAAC,KAAAnC,EAAAqB,GAAA,CAAgC,GAAA0B,GAAAjC,EAAAqB,EAAAd,EAAAjB,GAAAC,EAAA4B,EAAAE,EAAAd,EAAAC,EAAAyB,GAAAqM,gBAAsCpP,GAAAmC,SAAAD,GAAAb,GAAAa,EAAA1B,EAAAsB,EAAAR,EAAAjB,GAAA+O,UAAA,IAAA/O,EAAAiB,EAAAyB,GAAAqM,SAAA,SAAsEjN,KAAAD,GAAAD,EAAAE,EAAAd,EAAAjB,GAAAiB,IAAArB,GAAAc,EAAAqB,EAAAd,EAAAjB,IAAA4B,EAAA7B,GAAAH,EAAAmC,GAAAlC,EAAA,EAAAiC,EAAAb,GAAApB,EAAA,OAA8D+B,GAAA7B,GAAU,MAAAmB,GAAA8b,OAAA,SAAA1b,GAA4B,MAAAA,GAAA0N,iBACjvBokF,KAAA,SAAAhxF,EAAAzC,EAAAD,GACJ,YAAa,SAAAy9C,GAAA77C,EAAAM,EAAAG,EAAArB,EAAAmB,GAAwC,GAAAjC,GAAAyE,EAAAC,SAAA,GAAA/B,cAAA,IAA0C,OAAAX,IAAAyC,EAAAC,SAAA1E,GAAAyE,EAAAH,MAAAtE,KAAA,EAAAiC,EAAA,EAAAA,EAAA,IAAAE,GAAAsC,EAAAM,QAAA/E,IAAAc,EAAAmG,SAAAxC,EAAAH,MAAAtE,KAAAc,EAAA0H,MAAA,GAAA1H,EAAA2H,OAAA,MAAAhE,EAAAE,UAAA3E,KAAA,SAAAyE,EAAAG,SAAA5E,IAAA0B,IAAA1B,EAAqL,QAAAw9C,GAAA97C,EAAAM,EAAAG,EAAArB,EAAAmB,GAAqC,GAAAjC,GAAAyE,EAAAC,SAAA,GAAA/B,cAAA,IAA0C,OAAAX,IAAAyC,EAAAG,SAAA5E,IAAA0B,GAAA+C,EAAAH,MAAAtE,KAAAiC,IAAA,IAAAE,GAAAsC,EAAAM,QAAA/E,KAAAc,EAAAmG,SAAAxC,EAAAH,MAAAtE,KAAA,SAAAyE,EAAAE,UAAA3E,MAAA,SAAAyE,EAAAH,MAAAtE,KAAA,EAAAc,EAAA0H,MAAA,EAAA1H,EAAA2H,OAAA,KAAAzI,EAA0L,QAAAqV,GAAA3T,EAAAM,GAAsB,GAAAG,IAAAT,EAAA4B,EAAA5B,EAAAwB,EAAA,IAAoBe,GAAAC,cAAA/B,IAAAH,EAA0B,IAAAlB,GAAAqB,EAAA,EAAW,QAAOuV,MAAA,GAAAvS,GAAAhD,EAAA,GAAArB,EAAAqB,EAAA,GAAArB,GAAA2yF,yBAAA3yF,GAA2D,QAAA0+C,GAAA99C,EAAAM,EAAAG,EAAArB,GAA4B,GAAAmB,GAAAP,EAAA,GAAAA,EAAA,GAAA1B,EAAA0B,EAAA,GAAAA,EAAA,EAA4B,OAAAO,KAAAE,EAAA,IAAAF,GAAAE,EAAA,IAAAnC,IAAAmC,EAAA,IAAAnC,GAAAmC,EAAA,IAAArB,EAAAgyC,aAAA0M,UAAAx9C,GAAyE,QAAA47C,GAAAl8C,EAAAM,EAAAG,EAAArB,EAAAmB,EAAAjC,EAAAQ,EAAAP,EAAAoB,EAAAD,GAA+C,GAAAjB,GAAAW,EAAAY,EAAA45B,aAAA55B,EAAA65B,aAAAn7B,EAAA69C,EAAAC,oBAAA/9C,EAAAgC,EAAAsV,UAAArW,EAAAN,GAAAoB,GAAA,IAAAC,EAAAqG,MAAA,QAAArG,EAAAsG,OAAA,KAAAvF,EAAApC,EAAAY,EAAAi5B,KAAAI,yBAAAr5B,EAAAk5B,KAAAG,wBAAmM73B,GAAAwG,OAAU,QAAApI,GAAAI,EAAAi6B,gBAAAt7B,EAAAS,EAAAY,EAAA85B,iBAAA95B,EAAA+5B,gBAAA35B,EAAA,EAAyEA,EAAAzB,EAAAiC,OAAWR,IAAA,CAAK,GAAAmB,GAAA5C,EAAAQ,IAAAiB,GAAAwB,GAAAL,EAAAywF,QAAAzwF,EAAA0wF,QAAA,IAA2C,IAAA1vF,EAAAC,cAAAZ,IAAAtB,GAAAw9C,EAAAl8C,EAAAL,EAAA2wF,cAAA1xF,EAAAC,GAAA,CAA+D,GAAAY,GAAAO,EAAA,GAAAC,EAAA,MAAAR,EAAAZ,EAAAsV,UAAA8zB,uBAAA,GAAA5T,EAAAsmB,EAAA41C,uBAAA1zF,EAAAC,EAAA6C,GAAAG,EAAA5C,EAAAm3B,EAAAp0B,EAAAo0B,EAAAp0B,EAAAs5B,EAAA,GAAA13B,GAAAlC,EAAAywF,QAAAzwF,EAAA0wF,SAAA5+E,EAAAM,EAAAwnB,EAAA56B,GAAAyV,MAAAmgB,KAA4Ktb,EAAAu3E,EAAA7wF,EAAAG,GAAA,EAAAnD,EAAA+B,EAAAC,EAAAjC,EAAA0B,EAAAg6B,iBAAAp6B,EAAA4B,EAAA6R,EAAA8nB,EAAAhF,IAAqEtb,EAAAw3E,eAAAx3E,EAAAy3E,eAAAF,EAAA7wF,EAAAG,GAAA,EAAAnD,EAAA+B,EAAAC,EAAAjC,EAAA0B,EAAAg6B,iBAAAp6B,EAAA4B,EAAA6R,EAAA8nB,EAAAhF,GAAAk8D,gBAAAE,EAAAhxF,EAAAixF,UAAAhxF,OAA+I+wF,GAAAhxF,EAAAixF,UAAAhxF,GAA+BpC,EAAAY,EAAAi5B,KAAAK,0BAAAsS,WAAApqC,EAAAgxB,aAAAxyB,EAAAk5B,KAAAI,0BAAAsS,WAAApqC,EAAAgxB,aAAwH,QAAA4/D,GAAApyF,EAAAM,EAAAG,EAAArB,EAAAmB,EAAAjC,EAAAQ,EAAAP,EAAAoB,EAAAD,EAAAjB,EAAAC,EAAA8B,GAAyD,GAAAgB,GAAA5B,EAAAU,EAAA,GAAA3B,EAAAqB,EAAAyyF,YAAAnyF,EAAAF,EAAAJ,EAAA0yF,YAAApyF,CAAiD,IAAAN,EAAAwyF,UAAA,GAAkB,GAAAjxF,GAAAvB,EAAA2yF,gBAAA3yF,EAAAwyF,UAAA5wF,EAAArD,EAAAY,IAAAa,EAAA2yF,iBAAAxB,QAAA9vF,EAAA9C,EAAAY,IAAAoC,EAAA,GAAA4vF,QAAAtvF,EAAA7B,EAAA4yF,eAAA38D,EAAAj2B,EAAA4yF,eAAA5yF,EAAA6yF,WAAAnxF,EAAAoxF,EAAAlzF,EAAAgC,EAAAjD,EAAAyB,EAAAK,EAAAhC,EAAAC,EAAAsB,EAAAk9B,QAAAr7B,EAAAo0B,EAAAt2B,EAAArB,EAAAkC,EAAwM,KAAAkB,EAAA,OAAa2wF,eAAA,EAAkB,IAAAl3D,GAAA23D,EAAAlzF,EAAAyB,EAAA1C,EAAAyB,EAAAK,EAAAhC,EAAAC,EAAAsB,EAAAk9B,QAAAr7B,EAAAo0B,EAAAt2B,EAAArB,EAAAkC,EAA6D,KAAA26B,EAAA,OAAak3D,eAAA,EAAkB,IAAAh/E,GAAAM,EAAAjS,EAAAsU,MAAAlX,GAAAkX,MAAAmgB,EAAAxiB,EAAAwnB,EAAAnlB,MAAAlX,GAAAkX,KAA0D,IAAA5W,IAAAqB,IAAAT,EAAA66B,SAAAxnB,EAAA7R,EAAA20B,EAAA30B,EAAA6R,EAAAzR,EAAAu0B,EAAAv0B,GAAA,OAA8C0wF,eAAA,EAAkB9wF,IAAAE,EAAM,QAAAmZ,GAAA7a,EAAA2yF,gBAAA,EAA8B93E,EAAAtZ,EAAA,EAAMsZ,IAAA,CAAK,GAAAga,GAAAt2B,EAAAY,IAAA0b,EAAerZ,GAAA0F,KAAA4rF,EAAAlzF,EAAAi1B,EAAAs8D,QAAAxyF,EAAAyB,EAAAK,EAAAhC,EAAAC,EAAAsB,EAAAk9B,QAAAr7B,EAAAo0B,EAAAt2B,EAAArB,EAAAkC,IAAuEgB,EAAA0F,KAAAi0B,OAAU,CAAK,GAAA/7B,IAAAqB,EAAA,CAAU,GAAAa,GAAAqS,EAAAjV,EAAA6B,GAAAyV,MAAAlU,EAAAnC,EAAAR,IAAAa,EAAA4yF,eAAA5yF,EAAAk9B,QAAA,GAAAz7B,EAAAkS,EAAA7R,EAAAvB,GAAAoB,EAAAF,EAAAswF,yBAAA,EAAAtwF,EAAAuU,MAAA+8E,EAAAr0F,EAAA,GAAA+E,GAAA3B,EAAAF,EAAAE,EAAAN,GAAAF,EAAA,EAAAf,EAA6K,IAAAP,EAAA66B,SAAAl5B,EAAAH,EAAAF,EAAAE,EAAAG,EAAAC,EAAAN,EAAAM,EAAA,OAAqC0wF,eAAA,GAAkB,GAAAjpF,GAAA9K,EAAAY,IAAAa,EAAA2yF,iBAAA/9D,EAAAk+D,EAAAlzF,EAAAyJ,EAAA8nF,QAAAxyF,EAAAyB,EAAAK,EAAAhC,EAAAC,EAAAsB,EAAAk9B,QAAAl9B,EAAA4yF,eAAA5yF,EAAA4yF,eAAA5yF,EAAA6yF,WAAAlzF,EAAArB,EAAAkC,EAA2I,KAAAo0B,EAAA,OAAay9D,eAAA,EAAkB7wF,IAAAozB,GAAM,OAAAF,GAAA10B,EAAAkyF,cAAAp9D,EAAA,EAAA9yB,EAAAR,EAAkCszB,EAAA9yB,EAAApB,OAAWk0B,GAAA,GAAM,GAAAH,GAAA3yB,EAAA8yB,EAAWyB,GAAA72B,EAAAi1B,EAAA3e,MAAA2e,EAAApvB,MAAAmvB,GAA0C,SAAS,QAAAq+D,GAAA/yF,EAAAM,EAAAG,EAAArB,EAAAmB,GAAgD,GAAAjC,GAAAqV,EAAA3T,EAAA2D,IAAA3D,EAAA6D,IAAAvD,GAAAuE,SAAAtE,GAAAyV,MAAAlX,EAAA2B,EAAAoD,IAAAvF,EAA0D,OAAAmC,GAAAkD,IAAA7E,EAAAsF,MAAAhF,EAAAN,EAAAoG,QAAiC,QAAA4tF,GAAA9yF,EAAAM,EAAAG,EAAArB,EAAAmB,EAAAjC,EAAAQ,EAAAP,EAAAoB,EAAAD,EAAAjB,EAAAC,GAAsD,GAAA8B,GAAApB,EAAAY,EAAAM,EAAAN,EAAAM,EAAAkB,EAAAhB,EAAA,OAAAZ,EAAA,CAA+BR,KAAAoC,IAAA,EAAA5B,EAAAsB,KAAAqM,IAAA/L,EAAA,IAAA5B,GAAAsB,KAAAqM,GAAuC,QAAA5O,GAAA6C,EAAA,EAAAjD,EAAAO,EAAAP,EAAAO,EAAA,EAAAsB,EAAAG,EAAAgB,EAAAhB,EAAAqB,EAAA,EAAAP,EAAA,EAAAQ,EAAAX,KAAAoK,IAAA9K,GAAsDoB,EAAAP,GAAAQ,GAAO,CAAE,IAAAlD,GAAA6C,GAAAjD,GAAAI,GAAAgB,EAAA,WAA8B,IAAA4B,EAAAnB,MAAA,MAAAA,EAAA1B,EAAAC,IAAA,CAA0B,GAAAs3B,GAAAtiB,EAAAjU,EAAAP,IAAAR,GAAAF,EAA0B2B,GAAA61B,EAAA87D,yBAAA,EAAArzF,EAAAC,GAAAs3B,EAAAjgB,MAAoD+8E,EAAA,IAAAnxF,EAAAtD,EAAA,GAAAmF,GAAA/D,EAAAP,IAAAR,EAAA6C,GAAAI,EAAAlC,EAAAP,IAAAR,EAAA6C,MAAA,GAAAiC,GAAA/D,EAAAP,IAAAR,GAAAiD,EAAAlC,EAAAP,IAAAR,GAAA6C,GAAAD,EAAAM,EAAAD,EAAA,EAAAnD,GAAwHmD,GAAAP,IAAAE,EAAA8D,KAAAjF,GAAiB,GAAAsB,IAAAG,EAAAD,GAAAP,EAAA85B,EAAA/6B,EAAAyD,IAAAtC,GAAA8R,EAAA8nB,EAAAh3B,KAAAzC,GAAAkC,KAAArC,EAA6C,OAAA8R,GAAAzP,KAAAu3B,EAAAt2B,QAAAE,QAAAX,MAAA3D,EAAAe,KAA6CwU,MAAA3C,EAAA9N,MAAA3F,EAAAsB,KAAAsE,MAAApF,EAAAoB,EAAAD,EAAAC,EAAApB,EAAAwB,EAAAL,EAAAK,IAA6C,QAAA2wF,GAAAvyF,EAAAM,GAAyB,OAAAG,GAAA,EAAYA,EAAAT,EAAIS,IAAA81B,EAAAj2B,EAAA0yF,EAAA,MAAgD,GAAAvvF,GAAA3C,EAAA,0BAAA0G,EAAA1G,EAAA,qBAAAiC,EAAAyE,EAAAzE,KAAAR,EAAAiF,EAAAjF,KAAAg6C,EAAAz7C,EAAA,iBAAAmwB,EAAAnwB,EAAA,gCAAAy1B,EAAAtF,EAAAsF,oBAA2Ol4B,GAAAD,SAAgB89C,mBAAAL,sBAAAC,mBAA6G,IAAAk3C,GAAA,GAAAvvF,IAAA,YAC3nIg5D,+BAAA,GAAAw2B,gBAAA,IAAA/oD,oBAAA,EAAAt8B,yBAAA,IAAuGslF,KAAA,SAAApyF,EAAAzC,EAAAD,GAC1G,YAAa,SAAA05B,GAAAx3B,EAAAN,EAAA1B,EAAAQ,EAAAM,EAAAqB,EAAAF,GAAqC,GAAAC,GAAAjC,EAAAI,EAAAyB,EAAA1B,EAAAsB,EAAA++C,MAAAx9C,EAAAjD,EAAAo3B,OAAA9zB,EAAA5B,EAAAqgD,IAAA,EAAA3hD,EAAAi7B,WAAA/5B,EAAAI,EAAAogD,KAAA,EAAA1hD,EAAAi7B,WAAAj6B,EAAAM,EAAA83E,OAAA,EAAAp5E,EAAAi7B,WAAAh6B,EAAAK,EAAA63E,MAAA,EAAAn5E,EAAAi7B,UAAmI,aAAAp4B,EAAA,kBAAAnC,EAAA,CAAmC,GAAA+2B,GAAAx2B,EAAAC,EAAAg1B,EAAAl1B,EAAAkC,EAAAH,EAAAF,EAAA,gBAAA9C,EAAAW,EAAAghD,KAAA3+C,EAAAD,EAAApC,EAAAy4E,MAAAp2E,EAAAH,EAAAlC,EAAAihD,IAAA5+C,EAAAJ,EAAAjC,EAAA04E,OAAAr2E,EAAAM,EAAAP,EAAA/C,EAAAoD,EAAAR,EAAAC,EAAA65B,EAAA55B,EAAA,4BAAA0yB,EAAA1yB,EAAA,4BAAAszB,EAAAtzB,EAAA,4BAAA00B,EAAA10B,EAAA,4BAAA2yC,EAAA,UAAA3yC,EAAA,qBAAAM,EAAA+yB,GAAA,EAAAyB,EAAA,WAAA90B,EAAA,qBAAAQ,EAAAo0B,GAAA,EAAAz0B,EAAA,UAAAH,EAAA,2BAAAA,EAAA,iBAAAQ,EAAAo0B,EAAAtb,EAAA,WAAAtZ,EAAA,2BAAAA,EAAA,iBAAAM,EAAA+yB,CAAobp0B,GAAA,GAAAiD,GAAAhF,EAAA43B,EAAAJ,EAAA30B,EAAA4yC,EAAA/Y,GAAA58B,EAAA,GAAAkF,GAAAhF,EAAA43B,EAAApC,EAAAvyB,EAAAJ,EAAA4yC,EAAA/Y,GAAAx8B,EAAA,GAAA8E,GAAAhF,EAAA43B,EAAApC,EAAAvyB,EAAAJ,EAAA4yC,EAAArf,EAAAha,GAAAza,EAAA,GAAAqD,GAAAhF,EAAA43B,EAAAJ,EAAA30B,EAAA4yC,EAAArf,EAAAha,OAA4Gra,GAAA,GAAAiD,GAAA7D,EAAAgC,GAAArD,EAAA,GAAAkF,GAAA9D,EAAAiC,GAAAjD,EAAA,GAAA8E,GAAA9D,EAAAD,GAAAU,EAAA,GAAAqD,GAAA7D,EAAAF,EAAyE,IAAAi1B,GAAAr2B,EAAAq3B,eAAA,cAAAl1B,EAAAF,GAAAW,KAAAqM,GAAA,GAAsD,IAAAonB,EAAA,CAAM,GAAAhzB,GAAAT,KAAAC,IAAAwzB,GAAAof,EAAA7yC,KAAAE,IAAAuzB,GAAAD,GAAAqf,GAAApyC,IAAAoyC,EAA6CvzC,GAAAmE,SAAA+vB,GAAAn2B,EAAAoG,SAAA+vB,GAAAt0B,EAAAuE,SAAA+vB,GAAA/1B,EAAAgG,SAAA+vB,GAAwD,QAAQkI,GAAAp8B,EAAAq8B,GAAAt+B,EAAAu+B,GAAA18B,EAAA28B,GAAAp+B,EAAAq+B,KAAyBp7B,EAAAlD,EAAAkiD,YAAAh/C,EAAA,EAAAJ,EAAA9C,EAAAkiD,YAAAp/C,EAAA,EAAAC,EAAA/C,EAAAkiD,YAAAn/C,EAAA,EAAAF,EAAA7C,EAAAkiD,YAAAr/C,EAAA,GAAgFo7B,gBAAA,GAAAM,aAAA,OAAwC,QAAApF,GAAAv3B,EAAAN,EAAA1B,EAAAQ,EAAAM,EAAAqB,EAAAF,GAAsC,OAAAC,GAAAlC,EAAAq3B,eAAA,cAAAv2B,EAAAqB,GAAAS,KAAAqM,GAAA,IAAAhP,EAAAD,EAAAq3B,eAAA,cAAAv2B,EAAAqB,GAAA4R,IAAA,SAAA/R,GAAgH,UAAAA,IAAY3B,EAAAqB,EAAAmzF,iBAAA/yF,KAAA1B,EAAA,EAAgCA,EAAAC,EAAAiC,OAAWlC,IAAA,CAAK,GAAA6C,GAAA5C,EAAAD,GAAAkD,EAAArB,EAAAgB,EAAA0+C,MAAwB,IAAAr+C,EAAA,CAAM,GAAAhC,GAAAgC,EAAAi9C,IAAa,IAAAj/C,EAAA,CAAM,GAAAF,GAAA6nF,EAAA,EAAA5nF,EAAAiC,EAAAk9C,QAAAwB,QAAA,EAAAnqB,EAAAr3B,GAAAyC,EAAAK,EAAAjC,EAAA4B,EAAAC,IAAA,KAAAozB,EAAA91B,GAAA,MAAAyC,EAAAK,EAAAjC,EAAApB,EAAA,GAAAgD,EAAAC,EAAAjD,EAAA,IAAAkD,EAAAG,EAAAk9C,QAAAsB,KAAA1gD,EAAAC,EAAAi1B,EAAA,GAAAn2B,GAAAmD,EAAAk9C,QAAAuB,IAAA3gD,EAAAk1B,EAAA,GAAApzB,EAAAC,EAAA7B,EAAA6B,EAAAH,EAAA7C,EAAAmB,EAAA2B,EAAAF,EAAA,GAAAoC,GAAAhC,EAAAhD,GAAAsD,EAAA,GAAA0B,GAAAjC,EAAA/C,GAAAoD,EAAA,GAAA4B,GAAAhC,EAAAH,GAAA65B,EAAA,GAAA13B,GAAAjC,EAAAF,EAA2O,IAAAxC,GAAAyC,EAAAs5B,SAAA,CAAkB,GAAA5G,GAAA,GAAAxwB,IAAA9D,KAAAk1B,GAAA3zB,KAAAqM,GAAA,EAAA0oB,EAAA,GAAAxyB,GAAA,IAAoDpC,GAAAoD,cAAAowB,EAAAZ,GAAArwB,KAAAqyB,GAAAl0B,EAAA0C,cAAAowB,EAAAZ,GAAArwB,KAAAqyB,GAAAp0B,EAAA4C,cAAAowB,EAAAZ,GAAArwB,KAAAqyB,GAAAkF,EAAA12B,cAAAowB,EAAAZ,GAAArwB,KAAAqyB,GAAoH,GAAAz1B,EAAA,CAAM,GAAA0zC,GAAAhzC,KAAAC,IAAAX,GAAA61B,EAAAn1B,KAAAE,IAAAZ,GAAAkB,GAAA20B,GAAA6d,IAAA7d,EAA6Ch1B,GAAAsD,SAAAjD,GAAAK,EAAA4C,SAAAjD,GAAAG,EAAA8C,SAAAjD,GAAAy5B,EAAAx2B,SAAAjD,GAAwDtB,EAAA8G,MAAQ01B,GAAAv7B,EAAAw7B,GAAA96B,EAAA+6B,GAAAj7B,EAAAk7B,GAAA5B,EAAA6B,IAAAp9B,EAAA+8B,YAAA38B,EAAA28B,YAAAM,YAAA9G,MAAsE,MAAA/1B,GAAS,GAAAqD,GAAA3C,EAAA,0BAAA0G,EAAA1G,EAAA,4BAAAymF,EAAA//E,EAAA+/E,gBAA0HlpF,GAAAD,SAAgB05B,eAAAD,mBAC5mEu7D,2BAAA,IAAAxlF,yBAAA,IAA0DylF,KAAA,SAAAvyF,EAAAzC,EAAAD,GAC7D,YAAa,SAAAk1F,GAAAtzF,EAAAM,GAAyB,OAAAG,MAAAF,EAAA,EAAAjC,EAAA,EAAAc,EAAAkB,EAAyBhC,EAAAc,EAAAwB,OAAWtC,GAAA,GAAM,GAAAC,GAAAa,EAAAd,EAAWmC,GAAAyG,KAAAlH,EAAAuzF,UAAAhzF,EAAAhC,IAAAgC,EAAAhC,EAA6B,MAAAgC,GAAAP,EAAAY,QAAAH,EAAAyG,KAAAlH,EAAAuzF,UAAAhzF,EAAAP,EAAAY,SAAAH,EAAqD,QAAAu3B,GAAAh4B,EAAAM,EAAAG,EAAAF,EAAAjC,EAAAc,EAAAb,EAAAG,EAAAI,EAAAa,GAAwC,GAAA4B,GAAAvB,EAAAwzF,MAAe7zF,KAAAu4B,EAAA2C,WAAAt5B,EAAAm3B,EAAAn3B,GAAwD,IAAA3B,GAAAY,KAAAd,GAAcyzF,iBAAA3yF,EAAAy4B,KAAA13B,EAAA8+C,IAAA3hD,EAAA,GAAAo5E,OAAAp5E,EAAA,GAAA0hD,KAAA1hD,EAAA,GAAAm5E,MAAAn5E,EAAA,GAAAi+B,YAAAh9B,GAAkFkC,EAAAkrC,EAAA+pB,wBAA0C,OAAAl3D,GAAAiC,IAAAN,EAAAkyF,EAAAlyF,EAAAhD,EAAAkC,EAAAH,IAAAgzF,EAAA/xF,EAAAkyF,EAAAlyF,EAAAhD,EAAAkC,EAAAH,IAAAozF,EAAAh0F,EAAAY,EAAAV,EAAAW,EAAAjC,EAAAc,EAAAO,EAAApB,EAAAO,KAAA0B,EAAAI,QAAAlB,EAAoI,QAAAi0F,GAAA3zF,EAAAM,EAAAG,EAAAF,GAA4C,OAAAjC,GAAA,EAAAc,EAAA,EAAgBA,EAAAY,EAAAY,OAAWxB,IAAA,CAAK,GAAAb,GAAAgC,EAAAP,EAAA8f,WAAA1gB,GAAyBb,KAAAD,GAAAC,EAAAugD,QAAAwB,QAAAhgD,GAA4B,MAAAhC,GAAA4C,KAAAuG,IAAA,EAAAvG,KAAAkd,KAAA9f,EAAAmC,IAAoC,QAAAmzF,GAAA5zF,EAAAM,EAAAG,EAAAF,GAAmC,GAAAjC,GAAA4C,KAAAkJ,IAAApK,EAAAM,EAAA,EAAsB,OAAAC,GAAAP,EAAAM,EAAAhC,EAAA,IAAAA,IAAA4C,KAAAoK,IAAA7K,KAAqC,QAAAozF,GAAA7zF,EAAAM,GAA+B,GAAAG,GAAA,CAAQ,aAAAT,IAAAS,GAAA,UAAAT,GAAA,QAAAA,IAAAS,GAAA,SAAAH,GAAA,QAAAA,IAAAG,GAAA,IAAAA,EAAgF,QAAAqzF,GAAA9zF,EAAAM,EAAAG,EAAAF,EAAAjC,EAAAc,GAAoC,OAAAb,GAAA,KAAAG,EAAAk1F,EAAAtzF,EAAAG,EAAAnC,EAAAc,GAAAN,EAAA,EAAAa,EAAAY,EAAmDzB,EAAAa,EAAAiB,OAAW9B,GAAA,GAAM,GAAAyC,GAAA5B,EAAAb,GAAAc,EAAAU,EAAAiB,EAAAK,EAAApB,EAAAozF,EAAAh0F,EAAAa,EAAAnC,EAAAc,GAAAmC,EAAAwyF,OAAyDvzF,IAAA9B,IAAAH,EAAAgD,EAAA7C,EAAA8B,GAAgB,OAAOuxB,MAAA/xB,EAAA4B,EAAAtB,EAAA0zF,WAAAz1F,EAAAw1F,QAAAr1F,GAAoC,QAAAu1F,GAAAj0F,GAA2B,MAAAA,GAAAi0F,EAAAj0F,EAAAg0F,YAAAntF,OAAA7G,EAAA+xB,UAAyD,QAAA0hE,GAAAzzF,EAAAM,EAAAG,EAAAF,GAAsC,IAAAE,EAAA,QAAe,KAAAT,EAAA,QAAe,QAAA1B,MAAAc,EAAAu0F,EAAA3zF,EAAAM,EAAAG,EAAAF,GAAAhC,EAAA,EAAAG,EAAA,EAA0DA,EAAAsB,EAAAY,OAAWlC,IAAA,CAAK,GAAAI,GAAAkB,EAAA8f,WAAAphB,GAAAiB,EAAAY,EAAAzB,EAA6Ba,KAAAu0F,EAAAp1F,KAAAP,GAAAoB,EAAAm/C,QAAAwB,QAAAhgD,GAAA5B,EAAAsB,EAAAY,OAAA,IAAAuzF,EAAAr1F,IAAAw5B,EAAA87D,8BAAAt1F,KAAAR,EAAA4I,KAAA4sF,EAAAp1F,EAAA,EAAAH,EAAAa,EAAAd,EAAAu1F,EAAA/0F,EAAAkB,EAAA8f,WAAAphB,EAAA,SAAsM,MAAAu1F,GAAAH,EAAA9zF,EAAAY,OAAArC,EAAAa,EAAAd,EAAA,OAA0D,QAAA+1F,GAAAr0F,GAA+B,GAAAM,GAAA,GAAAG,EAAA,EAAc,QAAAT,GAAU,+CAAAM,EAAA,CAAmD,MAAM,6CAAAA,EAAA,EAAgD,OAAAN,GAAU,kDAAAS,EAAA,CAAsD,MAAM,0CAAAA,EAAA,EAA6C,OAAO6zF,gBAAAh0F,EAAAi0F,cAAA9zF,GAAmC,QAAAizF,GAAA1zF,EAAAM,EAAAG,EAAAF,EAAAjC,EAAAc,EAAAb,EAAAG,EAAAI,GAAuC,OAAAa,GAAA,EAAA4B,GAAA,GAAA3B,EAAA,EAAAY,EAAAR,EAAAmzF,iBAAAzzF,EAAA,UAAAN,EAAA,WAAAA,EAAA,KAAAyC,EAAA,EAAAR,EAAAZ,EAAmFoB,EAAAR,EAAAT,OAAWiB,GAAA,GAAM,GAAAlD,GAAA0C,EAAAQ,EAAW,IAAAlD,IAAA60F,OAAA70F,EAAAiC,OAAA,CAAwB,OAAAR,GAAAI,EAAAI,OAAAsB,EAAA,EAAuBA,EAAAvD,EAAAiC,OAAWsB,IAAA,CAAK,GAAAzD,GAAAE,EAAAmhB,WAAA5d,GAAAN,EAAAtB,EAAA7B,EAA6BmD,KAAA02B,EAAAk8D,kCAAA/1F,IAAAF,IAAA25B,EAAA0C,YAAAp6B,EAAA0G,MAA8F+4C,MAAAxhD,EAAAmD,EAAAjC,EAAA6B,EAAA,EAAAq5B,UAAA,IAA4Bl7B,GAAAb,EAAAJ,IAAA8B,EAAA0G,MAAmB+4C,MAAAxhD,EAAAmD,EAAAjC,EAAA6B,EAAAD,EAAAs5B,UAAA,IAA4Bl7B,GAAAiC,EAAAk9C,QAAAwB,QAAA5hD,IAA2B,GAAA8B,EAAAI,SAAAR,EAAA,CAAiB,GAAAsB,GAAA/B,EAAAjB,CAAUkB,GAAAsB,KAAAuG,IAAA/F,EAAA9B,GAAA60F,EAAAj0F,EAAAF,EAAAF,EAAAI,EAAAI,OAAA,EAAAlB,GAAgDC,EAAA,EAAA4B,GAAAhB,MAASgB,IAAAhB,EAAU,GAAA0zB,GAAAogE,EAAA/1F,GAAAkD,EAAAyyB,EAAAqgE,gBAAA7yF,EAAAwyB,EAAAsgE,aAAkEG,GAAAl0F,EAAAd,EAAA8B,EAAAC,EAAA7B,EAAAW,EAAAE,EAAAG,OAA4B,IAAAyI,GAAA5I,EAAAG,OAAAL,CAAiBP,GAAAqgD,MAAA5+C,EAAA4H,EAAArJ,EAAA83E,OAAA93E,EAAAqgD,IAAAh3C,EAAArJ,EAAAogD,OAAA5+C,EAAA5B,EAAAI,EAAA63E,MAAA73E,EAAAogD,KAAAxgD,EAA2D,QAAA60F,GAAAz0F,EAAAM,EAAAG,EAAAF,EAAAjC,GAAgC,GAAAA,EAAA,CAAM,GAAAc,GAAAkB,EAAAN,EAAAO,GAAA0/C,MAAoB,IAAA7gD,EAAA,OAAAb,GAAAa,EAAA0/C,QAAAwB,QAAA5hD,GAAAsB,EAAAO,GAAAqB,EAAArD,GAAAD,EAAAQ,EAAA2B,EAAoD3B,GAAAyB,EAAKzB,IAAAkB,EAAAlB,GAAA8C,GAAAlD,GAAe,QAAAg2F,GAAA10F,EAAAM,EAAAG,EAAAF,EAAAjC,EAAAc,EAAAb,GAA8B,OAAAG,IAAA4B,EAAAG,GAAAnC,EAAAQ,IAAAyB,EAAAhC,EAAA,IAAAa,EAAAO,EAAA,EAAoCA,EAAAK,EAAAY,OAAWjB,IAAAK,EAAAL,GAAAiC,GAAAlD,EAAAsB,EAAAL,GAAA6B,GAAA1C,EAAwB,QAAAm5B,GAAAj4B,EAAAM,EAAAG,GAA0B,GAAAF,GAAA8zF,EAAA5zF,GAAAnC,EAAAiC,EAAA+zF,gBAAAl1F,EAAAmB,EAAAg0F,cAAAh2F,EAAA+B,EAAA,GAAA5B,EAAA4B,EAAA,GAAAxB,EAAAP,EAAAyB,EAAAg4C,YAAA,GAAA15C,EAAAqB,EAAAb,EAAAkB,EAAAg4C,YAAA,GAAAz2C,EAAA7C,EAAAsB,EAAAg4C,YAAA,GAAA54C,CAAmJ,QAAO2/C,MAAA/+C,EAAAqgD,IAAA9+C,EAAAu2E,OAAAv2E,EAAAvB,EAAAg4C,YAAA,GAAAoI,KAAAthD,EAAA+4E,MAAAl4E,GAAwD,GAAA24B,GAAAx3B,EAAA,4BAAA43B,EAAA53B,EAAA,mCAAAisC,EAAAjsC,EAAA,6BAAAo3B,GAA0L0C,WAAA,EAAAC,SAAA,EAAyBx8B,GAAAD,SAAgB45B,YAAAC,YAAAC,cAAiE,IAAAg8D,KAAkBA,GAAA,MAAAA,EAAA,OAAAA,EAAA,OAAAA,EAAA,OAAAA,EAAA,OAAAA,EAAA,MAA2G,IAAAC,KAAiBA,GAAA,OAAAA,EAAA,OAAAA,EAAA,OAAAA,EAAA,OAAAA,EAAA,OAAAA,EAAA,OAAAA,EAAA,OAAAA,EAAA,OAAAA,EAAA,QAAAA,EAAA,QAAAA,EAAA,SAAAA,EAAA,SAAAA,EAAA,SAAAA,EAAA,WAC5/G5I,4BAAA,GAAAoJ,2BAAA,IAAAC,kCAAA,MAAoGC,KAAA,SAAA/zF,EAAAzC,EAAAD,GACvG,YAAa,SAAA+zF,GAAAnyF,EAAAlB,EAAAwB,GAAuC,GAAAhC,GAAAQ,CAAQ,OAAAkB,GAAA22B,kBAAAr4B,EAAAq+C,MAAA38C,EAAA62B,eAAAv2B,EAAAw0F,UAAA,GAAAnuB,EAAA35C,OAAA1sB,EAAAw0F,UAAA,GAAAx0F,EAAAy0F,UAAA,GAAAz2F,EAAAm+C,QAA8H,QAAAD,GAAAx8C,EAAAlB,EAAAwB,EAAAhC,GAAsC,GAAAmC,KAAS,IAAAT,EAAA62B,gBAAA72B,EAAA22B,kBAAA,GAAA32B,EAAA22B,oBAAA32B,EAAA62B,eAAA,CAAoF,GAAAz3B,EAAM,iBAAAY,EAAAs3B,aAAAl4B,EAAAkB,EAAAq1B,eAAAr3B,EAAA,yBAA6EmnB,KAAA3mB,EAAA2mB,WAAc,CAAK,GAAAllB,GAAA,aAAAP,EAAAs3B,aAAA,EAAAyK,EAAAjjC,EAAA2mB,KAAAzlB,EAAAm3B,aAAAn3B,EAAAi3B,kBAAA,GAAAj3B,EAAAi3B,kBAAA,IAAAz2B,EAAAR,EAAAk3B,mBAAA,GAAA34B,EAAAyB,EAAAk3B,mBAAA,EAAiL93B,GAAAoB,GAAAjC,EAAAiC,GAAA6vB,EAAAuX,MAAArnC,EAAA,KAA4BE,EAAAk8C,MAAAv9C,MAAUY,GAAA22B,mBAAA32B,EAAA62B,iBAAAp2B,EAAAk8C,MAAA38C,EAAA+2B,gBAAmE,CAAK,GAAAp3B,GAAAoiC,EAAAjjC,EAAA2mB,KAAAzlB,EAAAm3B,aAAAn3B,EAAAi3B,kBAAA,GAAAj3B,EAAAi3B,kBAAA,GAA+Fx2B,GAAAg8C,OAAApsB,EAAAuX,MAAAjoC,EAAA,KAA2B,MAAAc,GAAS,GAAAkmE,GAAA7lE,EAAA,kCAAA0G,EAAA1G,EAAA,0BAAAihC,EAAAv6B,EAAAu6B,oBAAA1R,EAAAvvB,EAAA,eAAyKzC,GAAAD,SAAgB+zF,yBAAA31C,yBAC3/B1Y,yBAAA,IAAAkG,iCAAA,IAAAtZ,eAAA,MAAqFskE,KAAA,SAAAl0F,EAAAzC,EAAAD,GACxF,YAAa,IAAA2uC,GAAAjsC,EAAA,4BAAuDzC,GAAAD,QAAA,SAAA4B,EAAAO,EAAAD,EAAAG,GAAiC,GAAAlC,GAAAgC,EAAAo1B,eAAA,iBAAAr1B,EAAAG,EAA6C,qBAAAlC,EAAAyB,IAAAi1F,oBAAA,cAAA12F,IAAAyB,IAAAk1F,qBAAAnoD,EAAA8pB,qBAAA72D,EAAA+sC,EAAA8pB,mBAAA72D,SAC/IurF,4BAAA,KAA+B4J,KAAA,SAAAr0F,EAAAzC,EAAAD,GAClC,YAAa,IAAAg3F,GAAAt0F,EAAA,eAAA2C,EAAA3C,EAAA,0BAAAu0F,GAAiFC,WAAAx0F,EAAA,yBAAAy0F,QAAAz0F,EAAA,sBAAA00F,WAAA10F,EAAA,yBAAA20F,QAAA30F,EAAA,sBAAA40F,SAAA50F,EAAA,sBAAA60F,gBAAA70F,EAAA,2BAAA80F,gBAAA90F,EAAA,+BAAsTzC,GAAAD,QAAA,SAAA4B,EAAAM,GAA6B,QAAAlB,GAAAY,GAAcuB,EAAA,WAAAvB,GAAgB,QAAAlB,GAAAwB,GAAcN,EAAAu8D,OAAAtmC,EAAAm/D,EAAAS,SAAAj2F,EAAAU,GAAAiB,EAAA,YAAAjB,GAAAq0B,GAAA,EAAmD,QAAAp0B,GAAAD,GAAc,GAAAlB,GAAAY,EAAAw1F,YAAAx1F,EAAAw1F,WAAAM,UAA4Cp2F,KAAAN,GAAAmC,EAAA,cAAA7B,KAAA,KAAAi1B,GAAA,EAAApzB,EAAA,UAAAjB,GAAqD,QAAAG,GAAAH,GAAc,KAAAN,EAAAy1F,SAAAz1F,EAAAy1F,QAAAK,YAAA91F,EAAAw1F,YAAAx1F,EAAAw1F,WAAAM,YAAA,CAA8E,OAAA12F,GAAAkB,EAAAy1F,WAAAz1F,EAAA01F,OAAgC52F,OAAAQ,GAASR,IAAA62F,UAAgB72F,KAAAQ,GAAA2B,EAAA,YAAAjB,IAAyB,QAAAE,GAAAF,GAAcN,EAAAu8D,OAAAn8D,EAAA,aAAAE,MAAA41F,SAAA51F,EAAA41F,QAAAt1F,OAAA,IAAAiB,GAAAihB,aAAAjhB,KAAA,KAAAN,EAAA,WAAAjB,IAAAuB,EAAA8gB,WAAApkB,EAAA,MAA4H,QAAAD,GAAA0B,GAAcI,EAAA,YAAAJ,GAAiB,QAAAtB,GAAAsB,GAAcI,EAAA,WAAAJ,GAAgB,QAAArB,GAAAqB,GAAcI,EAAA,cAAAJ,GAAmB,QAAAzB,KAAasD,EAAA,KAAO,QAAAlC,GAAAK,GAAco1F,EAAAS,SAAAj2F,EAAAI,GAAAoF,OAAA6wB,IAAA10B,EAAA,QAAAvB,GAA0C,QAAAvB,GAAAuB,GAAcuB,EAAA,WAAAvB,KAAAm2F,iBAAmC,QAAA90F,GAAAf,GAAc,GAAAlB,GAAAY,EAAAw1F,YAAAx1F,EAAAw1F,WAAAM,UAA4CnhE,IAAAv1B,EAAAu1B,IAAAj1B,EAAAY,GAAAiB,EAAA,cAAAjB,KAAA61F,iBAAoD,QAAA50F,GAAAjB,EAAAlB,GAAgB,GAAAN,GAAAs2F,EAAAS,SAAAj2F,EAAAR,EAAwB,OAAAY,GAAA0tD,KAAAptD,GAAiB81F,OAAAp2F,EAAA6oC,UAAA/pC,GAAAkX,MAAAlX,EAAAu3F,cAAAj3F,IAAgD,QAAAgB,GAAAE,EAAAlB,GAAgB,GAAAN,GAAAs2F,EAAAkB,SAAA12F,EAAAR,GAAAmB,EAAAzB,EAAAgd,OAAA,SAAA9b,EAAAM,EAAAlB,EAAAN,GAAqD,MAAAkB,GAAA2D,IAAArD,EAAA+D,IAAAvF,EAAA8B,UAA8B,GAAA6C,GAAA,KAAiB,OAAAzD,GAAA0tD,KAAAptD,GAAiB81F,OAAAp2F,EAAA6oC,UAAAtoC,GAAAyV,MAAAzV,EAAAg2F,QAAAz3F,EAAAuT,IAAA,SAAA/R,GAAwD,MAAAN,GAAA6oC,UAAAvoC,IAAsBT,MAAAga,OAAA/a,EAAAu3F,cAAAj3F,IAAkC,GAAAQ,GAAAI,EAAAw2F,qBAAA92F,EAAA,KAAAi1B,GAAA,EAAAsB,EAAA,KAAAp0B,EAAA,IAAuD,QAAAM,KAAAkzF,GAAAr1F,EAAAmC,GAAA,GAAAkzF,GAAAlzF,GAAAnC,EAAAM,KAAAm2F,aAAAn2F,EAAA6B,IAAAnC,EAAAmC,GAAA8uC,OAAA3wC,EAAA6B,GAAuFvC,GAAAs/D,iBAAA,WAAA9/D,GAAA,GAAAQ,EAAAs/D,iBAAA,YAAApgE,GAAA,GAAAc,EAAAs/D,iBAAA,UAAA3+D,GAAA,GAAAX,EAAAs/D,iBAAA,YAAAz+D,GAAA,GAAAb,EAAAs/D,iBAAA,aAAA1+D,GAAA,GAAAZ,EAAAs/D,iBAAA,WAAAxgE,GAAA,GAAAkB,EAAAs/D,iBAAA,YAAA5gE,GAAA,GAAAsB,EAAAs/D,iBAAA,cAAAvgE,GAAA,GAAAiB,EAAAs/D,iBAAA,QAAAv/D,GAAA,GAAAC,EAAAs/D,iBAAA,WAAAzgE,GAAA,GAAAmB,EAAAs/D,iBAAA,cAAA79D,GAAA,MACzuDq1F,cAAA,IAAAC,qBAAA,IAAAC,0BAAA,IAAAC,qBAAA,IAAAC,wBAAA,IAAAC,qBAAA,IAAAC,wBAAA,IAAAC,8BAAA,IAAArpF,yBAAA,IAAgPspF,KAAA,SAAAp2F,EAAAzC,EAAAD,GACnP,YAAa,IAAAiyB,GAAAvvB,EAAA,gBAAA6lE,EAAA7lE,EAAA,kCAAAijB,EAAAjjB,EAAA,mBAAAikC,EAAAjkC,EAAA,kBAAAwkC,EAAAxkC,EAAA,yBAAA2C,EAAA3C,EAAA,0BAAA+rC,EAAA/rC,EAAA,mBAAAq2F,EAAA,SAAA72F,GAAuS,QAAAN,KAAA1B,GAAgBgC,EAAA9B,KAAAqB,WAAAu3F,QAAA,EAAAv3F,KAAAkW,UAAA/V,EAAAH,KAAAw3F,aAAA/4F,EAAAg5F,YAA6E,MAAAh3F,KAAAN,EAAAutD,UAAAjtD,GAAAN,EAAAR,UAAAT,OAAA2D,OAAApC,KAAAd,WAAAQ,EAAAR,UAAAsoB,YAAA9nB,IAAAR,UAAAmmC,UAAA,WAA+H,MAAA9lC,MAAAkW,UAAAyxB,QAA6BxnC,EAAAR,UAAAujE,UAAA,SAAAziE,EAAAN,GAAqC,MAAAH,MAAA03F,QAAoB/vD,OAAAlnC,GAASN,IAAIA,EAAAR,UAAAg4F,MAAA,SAAAl3F,EAAAN,EAAA1B,GAAmC,MAAAgC,GAAAmD,EAAAmC,QAAAtF,GAAA6D,MAAA,GAAAtE,KAAA43F,MAAA53F,KAAAkW,UAAAyxB,OAAAnX,EAAA7b,QAAiF03B,OAAA5rC,GAASN,GAAA1B,IAAO0B,EAAAR,UAAAi4F,MAAA,SAAAn3F,EAAAN,EAAA1B,GAAmC,MAAAuB,MAAA63F,OAAArnE,EAAA7b,QAAgCgzB,OAAAlnC,GAASN,GAAA1B,IAAO0B,EAAAR,UAAAm6D,QAAA,WAAgC,MAAA95D,MAAAkW,UAAA0P,MAA2BzlB,EAAAR,UAAAwjE,QAAA,SAAA1iE,EAAAN,GAAmC,MAAAH,MAAA03F,QAAoB9xE,KAAAnlB,GAAON,GAAAH,MAASG,EAAAR,UAAAolC,OAAA,SAAAtkC,EAAAN,EAAA1B,GAAoC,MAAAuB,MAAA63F,OAAArnE,EAAA7b,QAAgCiR,KAAAnlB,GAAON,GAAA1B,IAAO0B,EAAAR,UAAAm4F,OAAA,SAAAr3F,EAAAN,GAAkC,MAAAH,MAAA+kC,OAAA/kC,KAAA85D,UAAA,EAAAr5D,EAAAN,GAAAH,MAA8CG,EAAAR,UAAAo4F,QAAA,SAAAt3F,EAAAN,GAAmC,MAAAH,MAAA+kC,OAAA/kC,KAAA85D,UAAA,EAAAr5D,EAAAN,GAAAH,MAA8CG,EAAAR,UAAAq4F,WAAA,WAAmC,MAAAh4F,MAAAkW,UAAA0qB,SAA8BzgC,EAAAR,UAAAyjE,WAAA,SAAA3iE,EAAAN,GAAsC,MAAAH,MAAA03F,QAAoB92D,QAAAngC,GAAUN,GAAAH,MAASG,EAAAR,UAAAs4F,SAAA,SAAAx3F,EAAAN,EAAA1B,GAAsC,MAAAuB,MAAA63F,OAAArnE,EAAA7b,QAAgCisB,QAAAngC,GAAUN,GAAA1B,IAAO0B,EAAAR,UAAAu4F,WAAA,SAAAz3F,EAAAN,GAAsC,MAAAH,MAAAi4F,SAAA,EAAAznE,EAAA7b,QAAoC0xC,SAAA,KAAa5lD,GAAAN,GAAAH,MAAYG,EAAAR,UAAAw4F,YAAA,SAAA13F,EAAAN,GAAuC,MAAAkB,MAAAoK,IAAAzL,KAAAg4F,cAAAh4F,KAAAw3F,aAAAx3F,KAAAk4F,WAAAz3F,EAAAN,GAAAH,MAA+EG,EAAAR,UAAAy4F,SAAA,WAAiC,MAAAp4F,MAAAkW,UAAAuxB,OAA4BtnC,EAAAR,UAAA0jE,SAAA,SAAA5iE,EAAAN,GAAoC,MAAAH,MAAA03F,QAAoBjwD,MAAAhnC,GAAQN,GAAAH,MAASG,EAAAR,UAAA04F,UAAA,SAAA53F,EAAAN,EAAA1B,GAAuC,GAAA0B,EAAAqwB,EAAA7b,QAAkB8D,SAAS+nC,IAAA,EAAAy3B,OAAA,EAAAD,MAAA,EAAAz3B,KAAA,GAA8BlU,QAAA,KAAAt3B,QAAA/U,KAAAkW,UAAAnB,SAA6C5U,GAAA,gBAAAA,GAAAsY,QAAA,CAAgC,GAAAxZ,GAAAkB,EAAAsY,OAAgBtY,GAAAsY,SAAW+nC,IAAAvhD,EAAAg5E,OAAAh5E,EAAA+4E,MAAA/4E,EAAAshD,KAAAthD,GAA+B,IAAAuxB,EAAAq6D,UAAA3rF,OAAAmZ,KAAAlY,EAAAsY,SAAAxH,KAAA,SAAAxQ,EAAAN,GAA6D,MAAAM,GAAAN,GAAA,EAAAM,EAAAN,EAAA,OAAsB,sCAAAqwB,GAAA0K,SAAA,sGAAAl7B,IAAmKS,GAAAglC,EAAA1/B,QAAAtF,EAA0B,IAAAlB,IAAAY,EAAAsY,QAAA8nC,KAAApgD,EAAAsY,QAAAu/D,MAAA73E,EAAAsY,QAAA+nC,IAAArgD,EAAAsY,QAAAw/D,QAAAv3E,EAAAW,KAAAmJ,IAAArK,EAAAsY,QAAAu/D,MAAA73E,EAAAsY,QAAA8nC,MAAA3/C,EAAAS,KAAAmJ,IAAArK,EAAAsY,QAAA+nC,IAAArgD,EAAAsY,QAAAw/D,OAA4J93E,GAAAksC,QAAAlsC,EAAAksC,OAAA,GAAA9sC,EAAA,GAAAY,EAAAksC,OAAA,GAAA9sC,EAAA,GAA6C,IAAAO,GAAA8D,EAAAmC,QAAA5F,EAAAksC,QAAA3qC,EAAA1B,KAAAkW,UAAArW,EAAA6B,EAAAoS,QAAArT,EAAAwlC,gBAAAtlC,EAAAe,EAAAoS,QAAArT,EAAA2lC,gBAAAvnC,EAAA8B,EAAAqD,IAAAnE,GAAAjB,GAAA8C,EAAAuF,MAAA,EAAAvG,EAAA,EAAAW,KAAAoK,IAAA3L,EAAAiC,IAAAlD,EAAAkD,EAAAxB,GAAAmB,EAAAwF,OAAA,EAAAtG,EAAA,EAAAS,KAAAoK,IAAA3L,EAAA6B,IAAA9C,EAAA8C,CAA+L,OAAApB,GAAA,GAAA3B,EAAA,GAAA4xB,EAAA0K,SAAA,+EAAAl7B,OAAAG,EAAAwnC,OAAAjmC,EAAAsnC,UAAAnpC,EAAAiE,IAAAnD,GAAA6D,IAAA,IAAArE,EAAAylB,KAAAvkB,KAAAmJ,IAAA9I,EAAA6mC,UAAA7mC,EAAAqB,MAAA1B,KAAAmJ,IAAA5L,EAAA2B,IAAAJ,EAAA4U,SAAA5U,EAAAygC,QAAA,EAAAzgC,EAAAm4F,OAAAt4F,KAAA63F,OAAA13F,EAAA1B,GAAAuB,KAAAu4F,MAAAp4F,EAAA1B,KAAgR0B,EAAAR,UAAA+3F,OAAA,SAAAj3F,EAAAN,GAAkCH,KAAA08D,MAAY,IAAAj+D,GAAAuB,KAAAkW,UAAAjX,GAAA,EAAAM,GAAA,EAAAmB,GAAA,CAAoC,eAAAD,IAAAhC,EAAAmnB,QAAAnlB,EAAAmlB,OAAA3mB,GAAA,EAAAR,EAAAmnB,MAAAnlB,EAAAmlB,UAAA,KAAAnlB,EAAAknC,SAAAlpC,EAAAkpC,OAAAzC,EAAAn/B,QAAAtF,EAAAknC,SAAA,WAAAlnC,IAAAhC,EAAAmiC,WAAAngC,EAAAmgC,UAAArhC,GAAA,EAAAd,EAAAmiC,SAAAngC,EAAAmgC,SAAA,SAAAngC,IAAAhC,EAAAgpC,SAAAhnC,EAAAgnC,QAAA/mC,GAAA,EAAAjC,EAAAgpC,OAAAhnC,EAAAgnC,OAAAznC,KAAA6tD,KAAA,YAAA1tD,GAAA0tD,KAAA,OAAA1tD,GAAAlB,GAAAe,KAAA6tD,KAAA,YAAA1tD,GAAA0tD,KAAA,OAAA1tD,GAAA0tD,KAAA,UAAA1tD,GAAAZ,GAAAS,KAAA6tD,KAAA,SAAA1tD,GAAAO,GAAAV,KAAA6tD,KAAA,aAAA1tD,GAAA0tD,KAAA,QAAA1tD,GAAA0tD,KAAA,WAAA1tD,GAAAH,KAAA6tD,KAAA,UAAA1tD,IAAkcA,EAAAR,UAAAk4F,OAAA,SAAAp3F,EAAAN,GAAkC,GAAA1B,GAAAuB,IAAWA,MAAA08D,OAAAj8D,EAAA+vB,EAAA7b,QAA2B03B,QAAA,KAAAga,SAAA,IAAAmyC,OAAAhoE,EAAAioE,MAA2Ch4F,IAAA,IAAAA,EAAAgtD,UAAAhtD,EAAA4lD,SAAA,GAAA5lD,EAAAi4F,cAAA,IAAAj4F,EAAA4lD,WAAA5lD,EAAA+3F,OAAAx4F,KAAA24F,iBAAAl4F,EAAA4lD,UAAgH,IAAApnD,GAAAe,KAAAkW,UAAA3W,EAAAS,KAAA85D,UAAAp5D,EAAAV,KAAAg4F,aAAAp3F,EAAAZ,KAAAo4F,WAAAt4F,EAAA,QAAAW,MAAAmlB,KAAArmB,EAAAmC,EAAA,WAAAjB,GAAAT,KAAA44F,kBAAAn4F,EAAAmgC,QAAAlgC,KAAAb,EAAA,SAAAY,MAAAgnC,MAAA7mC,EAAAD,EAAA1B,EAAAuoC,YAAA1jC,IAAAF,EAAAmC,QAAAtF,EAAA4rC,SAAAxtC,EAAAI,EAAAqqC,cAAA3oC,GAAA/B,EAAAsmC,EAAAn/B,QAAAtF,EAAAknC,QAAA9oC,EAAkRmB,MAAA64F,iBAAAj6F,EAAyB,IAAA2B,GAAAR,EAAAjB,EAAAG,EAAA6U,QAAAjV,GAAAH,EAAAO,EAAA6U,QAAAlV,GAAAoF,IAAAlF,GAAA0C,EAAAvC,EAAAgpC,UAAAnoC,EAAAP,EAAgE,OAAAkB,GAAAq4F,SAAAv4F,EAAA2kC,EAAAn/B,QAAAtF,EAAAq4F,QAAA/4F,EAAAd,EAAAmqC,cAAA7oC,IAAAP,KAAA67C,QAAA/7C,IAAAP,EAAAS,KAAA47C,SAAAl7C,IAAAgB,EAAA1B,KAAA+4F,SAAAl5F,IAAAe,EAAAZ,KAAAg5F,aAAA74F,EAAAM,EAAAw4F,aAAAh2E,aAAAjjB,KAAAk5F,YAAAl5F,KAAAm5F,MAAA,SAAA14F,GAAsN,GAAAT,KAAA67C,UAAA58C,EAAA2mB,KAAAkhD,EAAAvnE,EAAAO,EAAAW,IAAAT,KAAA47C,WAAA38C,EAAA2hC,QAAAkmC,EAAApmE,EAAAgB,EAAAjB,IAAAT,KAAA+4F,WAAA95F,EAAAwoC,MAAAq/B,EAAAlmE,EAAAf,EAAAY,IAAAF,EAAAtB,EAAAgqC,mBAAA1oC,EAAAR,OAAmK,CAAK,GAAAtB,GAAAQ,EAAAgpC,UAAAhpC,EAAA2mB,KAAArmB,GAAAV,EAAAiB,EAAAP,EAAA8B,KAAAmJ,IAAA,EAAAhJ,GAAAH,KAAAuG,IAAA,GAAApG,GAAA5C,EAAAyC,KAAAkJ,IAAA1L,EAAA,EAAA4B,GAAAuB,EAAA/C,EAAA+pC,UAAAlqC,EAAAgF,IAAApF,EAAA4F,KAAA7D,EAAA7B,IAAA0F,KAAA7F,GAA2HQ,GAAAgqC,mBAAAhqC,EAAAqoC,kBAAAtlC,EAAAuT,OAAAvT,EAAArB,GAAuDX,KAAAo5F,gBAAAj5F,IAAwB,WAAYM,EAAA44F,eAAA56F,EAAAy6F,WAAAp2E,WAAA,WAAoD,MAAArkB,GAAA66F,WAAAn5F,IAAuBM,EAAA44F,gBAAA56F,EAAA66F,WAAAn5F,IAAmCM,GAAAT,MAASG,EAAAR,UAAAq5F,aAAA,SAAAv4F,EAAAN,GAAwCH,KAAAu3F,QAAA,EAAAp3F,GAAAH,KAAA6tD,KAAA,YAAAptD,GAAAT,KAAA67C,SAAA77C,KAAA6tD,KAAA,YAAAptD,GAAAT,KAAA+4F,UAAA/4F,KAAA6tD,KAAA,aAAAptD,IAA2HN,EAAAR,UAAAy5F,gBAAA,SAAA34F,GAAyCT,KAAA6tD,KAAA,OAAAptD,GAAAT,KAAA67C,SAAA77C,KAAA6tD,KAAA,OAAAptD,GAAAT,KAAA47C,UAAA57C,KAAA6tD,KAAA,SAAAptD,GAAAT,KAAA+4F,UAAA/4F,KAAA6tD,KAAA,QAAAptD,IAA+HN,EAAAR,UAAA25F,WAAA,SAAA74F,GAAoC,GAAAN,GAAAH,KAAA67C,QAAAp9C,EAAAuB,KAAA+4F,QAAmC/4F,MAAAu3F,QAAA,EAAAv3F,KAAA67C,SAAA,EAAA77C,KAAA47C,UAAA,EAAA57C,KAAA+4F,UAAA,EAAA54F,GAAAH,KAAA6tD,KAAA,UAAAptD,GAAAhC,GAAAuB,KAAA6tD,KAAA,WAAAptD,GAAAT,KAAA6tD,KAAA,UAAAptD,IAA6IN,EAAAR,UAAA44F,MAAA,SAAA93F,EAAAN,GAAiC,QAAA1B,GAAAgC,GAAc,GAAAN,IAAAsB,IAAA+H,KAAA/I,GAAA,KAAA21B,IAAAtB,MAAA,GAAAr0B,EAAAgB,EAAA+H,GAAA4sB,EAAAtB,EAAiD,OAAAzzB,MAAA6S,IAAA7S,KAAAiE,KAAAnF,IAAA,GAAAA,GAAoC,QAAAlB,GAAAwB,GAAc,OAAAY,KAAAuM,IAAAnN,GAAAY,KAAAuM,KAAAnN,IAAA,EAAmC,QAAAlB,GAAAkB,GAAc,OAAAY,KAAAuM,IAAAnN,GAAAY,KAAAuM,KAAAnN,IAAA,EAAmC,QAAAC,GAAAD,GAAc,MAAAxB,GAAAwB,GAAAlB,EAAAkB,GAAiB,GAAAG,GAAAZ,IAAWA,MAAA08D,OAAAj8D,EAAA+vB,EAAA7b,QAA2B03B,QAAA,KAAAktD,MAAA,IAAAC,MAAA,KAAAhB,OAAAhoE,EAAAioE,MAAmDh4F,EAAI,IAAAX,GAAAE,KAAAkW,UAAAxU,EAAA1B,KAAA85D,UAAAj6D,EAAAG,KAAAg4F,aAAAr3F,EAAAX,KAAAo4F,WAAAv5F,EAAA,QAAA4B,GAAA+vB,EAAAuX,OAAAtnC,EAAAmlB,KAAA9lB,EAAA6mB,QAAA7mB,EAAAiV,SAAArT,EAAA9C,EAAA,WAAA6B,GAAAT,KAAA44F,kBAAAn4F,EAAAmgC,QAAA/gC,KAAAU,EAAA,SAAAE,MAAAgnC,MAAA9mC,EAAAZ,EAAAD,EAAAmoC,UAAAppC,EAAA6C,GAAA5C,EAAAgB,EAAA0nC,YAAA1jC,IAAAF,EAAAmC,QAAAtF,EAAA4rC,SAAA3tC,EAAAoB,EAAAwpC,cAAAxqC,GAAA0C,EAAA0jC,EAAAn/B,QAAAtF,EAAAknC,QAAAjpC,EAAqUsB,MAAA64F,iBAAAr3F,EAAyB,IAAAQ,GAAAlC,EAAAgU,QAAApV,GAAAiD,EAAA7B,EAAAgU,QAAAtS,GAAAwC,IAAAhC,GAAA+yB,EAAAt0B,EAAA+4F,MAAAhwF,EAAAnI,KAAAuG,IAAA9H,EAAAmH,MAAAnH,EAAAoH,QAAAzF,EAAA+H,EAAAzJ,EAAA+0B,EAAAnzB,EAAA0D,KAAgG,eAAA5E,GAAA,CAAkB,GAAAiW,GAAA8Z,EAAAuX,MAAA1mC,KAAAmJ,IAAA/J,EAAAkmB,QAAAjlB,EAAA7C,GAAAiB,EAAA6mB,QAAA7mB,EAAAiV,SAAAhT,EAAAyH,EAAA1J,EAAAmoC,UAAAvxB,EAAAhV,EAAmFqzB,GAAA1zB,KAAAiE,KAAAvD,EAAA+yB,EAAA,GAAmB,GAAAsB,GAAArB,IAAA9yB,EAAAxD,EAAA,GAAA2D,EAAA,SAAA3B,GAA+B,MAAAlB,GAAA0C,GAAA1C,EAAA0C,EAAA8yB,EAAAt0B,IAAqBmB,EAAA,SAAAnB,GAAe,MAAA+I,KAAAjK,EAAA0C,GAAAvB,EAAAuB,EAAA8yB,EAAAt0B,GAAAxB,EAAAgD,IAAAm0B,GAAAtB,GAAoCwB,GAAA73B,EAAA,GAAAwD,GAAA8yB,CAAc,IAAA1zB,KAAAoK,IAAAqpB,GAAA,MAAAtb,MAAA8c,GAAA,CAA+B,GAAAj1B,KAAAoK,IAAAjC,EAAA/H,GAAA,WAAAzB,MAAA63F,OAAAp3F,EAAAN,EAA8C,IAAAmC,GAAAb,EAAA+H,GAAA,GAAe8sB,GAAAj1B,KAAAoK,IAAApK,KAAA6S,IAAAzS,EAAA+H,IAAAurB,EAAAnzB,EAAA,WAAyC,UAASQ,EAAA,SAAA3B,GAAe,MAAAY,MAAAuM,IAAAtL,EAAAyyB,EAAAt0B,IAAwB,eAAAA,KAAA4lD,UAAA5lD,EAAA4lD,aAAyC,CAAK,GAAAjyB,GAAA,eAAA3zB,MAAAg5F,YAAA1kE,GAAAt0B,EAAA84F,KAAkD94F,GAAA4lD,SAAA,IAAA/vB,EAAAlC,EAAmB,MAAAp0B,MAAA67C,SAAA,EAAA77C,KAAA47C,SAAA/7C,IAAAjB,EAAAoB,KAAA+4F,SAAAx4F,IAAAI,EAAAX,KAAAg5F,aAAA74F,GAAA,GAAAH,KAAAm5F,MAAA,SAAA14F,GAA8G,GAAAhC,GAAAgC,EAAA61B,EAAAr3B,EAAA,EAAAmD,EAAA3D,EAAmBqB,GAAA8lB,KAAAlkB,EAAA5B,EAAAyoC,UAAAtpC,GAAAe,KAAA47C,WAAA97C,EAAA8gC,QAAAkmC,EAAAjnE,EAAAjB,EAAA6B,IAAAT,KAAA+4F,WAAAj5F,EAAA2nC,MAAAq/B,EAAAnmE,EAAAJ,EAAAE,GAAkH,IAAAlB,GAAAO,EAAAkpC,UAAAhnC,EAAA8B,IAAAnC,EAAA2C,KAAA1C,EAAAnD,KAAA6F,KAAArF,GAA+Ca,GAAAmpC,mBAAAnpC,EAAAwnC,kBAAA/nC,EAAAgW,OAAAhW,EAAAT,GAAAkB,KAAAo5F,gBAAAj5F,IAA+E,WAAY,MAAAS,GAAA04F,WAAAn5F,IAAuBM,GAAAT,MAASG,EAAAR,UAAA+5F,SAAA,WAAiC,QAAA15F,KAAA25F,UAAsBx5F,EAAAR,UAAAi6F,SAAA,WAAiC,MAAA55F,MAAAu3F,QAAmBp3F,EAAAR,UAAA+8D,KAAA,WAA6B,MAAA18D,MAAA25F,WAAA35F,KAAA25F,WAAA35F,KAAA65F,eAAA75F,MAAgEG,EAAAR,UAAAw5F,MAAA,SAAA14F,EAAAN,EAAA1B,GAAmCuB,KAAA85F,UAAA35F,EAAAH,KAAA25F,SAAAz1E,EAAA61E,MAAA,SAAA55F,GAAyDM,EAAA9B,KAAAqB,KAAAvB,EAAA+5F,OAAAr4F,IAAA,IAAAA,GAAAH,KAAA65F,gBAAmD,IAAAp7F,EAAAgvD,QAAA,EAAAhvD,EAAA4nD,SAAArmD,OAAmCG,EAAAR,UAAAk6F,YAAA,iBAAoC75F,MAAA25F,QAAqB,IAAAl5F,GAAAT,KAAA85F,gBAAqB95F,MAAA85F,UAAAr5F,EAAA9B,KAAAqB,OAAmCG,EAAAR,UAAAi5F,kBAAA,SAAAn4F,EAAAN,GAA6CM,EAAA+vB,EAAAjb,KAAA9U,GAAA,QAAwB,IAAAhC,GAAA4C,KAAAoK,IAAAhL,EAAAN,EAAoB,OAAAkB,MAAAoK,IAAAhL,EAAA,IAAAN,GAAA1B,IAAAgC,GAAA,KAAAY,KAAAoK,IAAAhL,EAAA,IAAAN,GAAA1B,IAAAgC,GAAA,KAAAA,GAAqEN,EAAAR,UAAAk5F,iBAAA,SAAAp4F,GAA0C,GAAAN,GAAAH,KAAAkW,SAAqB,IAAA/V,EAAAmnC,oBAAAnnC,EAAA4pC,SAAA,CAAqC,GAAAtrC,GAAAgC,EAAA0kC,IAAAhlC,EAAAwnC,OAAAxC,GAAyB1kC,GAAA0kC,KAAA1mC,EAAA,SAAAA,GAAA,YAAgC0B,EAAAR,UAAAg5F,iBAAA,SAAAl4F,GAA0C,GAAAN,GAAAqwB,EAAAioE,IAAgB,IAAAz4F,KAAAg6F,UAAA,CAAmB,GAAAv7F,GAAAuB,KAAAg6F,UAAA/6F,GAAA6nB,KAAAC,MAAAtoB,EAAAw7F,OAAAx7F,EAAA4nD,SAAA9mD,EAAAd,EAAA+5F,OAAAv5F,EAAA,KAAAR,EAAA+5F,OAAAv5F,GAAAyB,EAAA,IAAAW,KAAAiE,KAAA/F,IAAA,UAAAqB,EAAAS,KAAAiE,KAAA,MAAA5E,IAA0IP,GAAAqwB,EAAA0pE,OAAAx5F,EAAAE,EAAA,OAAyB,MAAAZ,MAAAg6F,WAAuBC,OAAA,GAAAnzE,OAAA8yC,UAAAvT,SAAA5lD,EAAA+3F,OAAAr4F,GAA+CA,GAAGA,GAAG6sC,EAAUxuC,GAAAD,QAAA+4F,IACzhQ7jC,iBAAA,GAAA+J,wBAAA,GAAArzB,iCAAA,IAAA8G,kBAAA,IAAAogB,kBAAA,IAAAxgC,eAAA,IAAA9iB,yBAAA,IAA8KosF,KAAA,SAAAl5F,EAAAzC,EAAAD,GACjL,YAAa,IAAAg3F,GAAAt0F,EAAA,kBAAAuvB,EAAAvvB,EAAA,mBAAAgsC,EAAAhsC,EAAA,qBAAAyrC,EAAA,SAAAjsC,GAAqIT,KAAA0U,QAAAjU,EAAA+vB,EAAA+mC,SAAA,kDAAAv3D,MAAsF0sC,GAAA/sC,UAAAy6F,mBAAA,WAA2D,sBAAqB1tD,EAAA/sC,UAAA2uD,MAAA,SAAA7tD,GAAgD,GAAAhC,GAAAuB,KAAA0U,SAAA1U,KAAA0U,QAAA2lF,OAAyC,OAAAr6F,MAAAs6F,KAAA75F,EAAAT,KAAAu6F,WAAAhF,EAAA1yF,OAAA,4CAAApE,GAAAuB,KAAAu6F,WAAAC,UAAA12F,IAAA,oBAAA9D,KAAAy6F,sBAAAz6F,KAAA06F,kBAAA16F,KAAAs6F,KAAAh2E,GAAA,aAAAtkB,KAAA26F,aAAA36F,KAAAs6F,KAAAh2E,GAAA,UAAAtkB,KAAA06F,qBAAA,KAAAj8F,IAAAuB,KAAAs6F,KAAAh2E,GAAA,SAAAtkB,KAAA46F,gBAAA56F,KAAA46F,kBAAA56F,KAAAu6F,YAAyX7tD,EAAA/sC,UAAA4uD,SAAA,WAAkDgnC,EAAAt6B,OAAAj7D,KAAAu6F,YAAAv6F,KAAAs6F,KAAA71E,IAAA,aAAAzkB,KAAA26F,aAAA36F,KAAAs6F,KAAA71E,IAAA,UAAAzkB,KAAA06F,iBAAA16F,KAAAs6F,KAAA71E,IAAA,SAAAzkB,KAAA46F,gBAAA56F,KAAAs6F,SAAA,IAAoL5tD,EAAA/sC,UAAA+6F,gBAAA,WAAyD,GAAAj6F,GAAAT,KAAA66F,SAAqBp6F,OAAAT,KAAA66F,UAAA76F,KAAAu6F,WAAAO,cAAA,uBAA2E,IAAAr8F,KAAQuhF,IAAA,QAAA1wE,MAAAtP,KAAA+6F,aAAoC/a,IAAA,KAAA1wE,MAAAtP,KAAAg7F,UAA8Bhb,IAAA,eAAA1wE,MAAA29B,EAAAM,cAA+C,IAAA9sC,EAAA,CAAM,GAAAxB,GAAAR,EAAAwd,OAAA,SAAAxb,EAAAxB,EAAAkB,GAA+B,MAAAlB,GAAAqQ,QAAA7O,GAAAxB,EAAA+gF,IAAA,IAAA/gF,EAAAqQ,OAAAnP,EAAA1B,EAAAsC,OAAA,WAAAN,GAA+D,IAAMA,GAAA4uD,KAAA,mCAAApwD,GAAAe,KAAAs6F,KAAAW,MAAAj7F,KAAAs6F,KAAAW,MAAAC,eAAA,SAAoGxuD,EAAA/sC,UAAAg7F,YAAA,SAAAl6F,GAAsDA,GAAA,aAAAA,EAAA0vD,iBAAAnwD,KAAAy6F,sBAAAz6F,KAAA06F,oBAAsFhuD,EAAA/sC,UAAA86F,oBAAA,WAA6D,GAAAz6F,KAAAs6F,KAAA1jD,MAAA,CAAoB,GAAAn2C,KAAS,IAAAT,KAAAs6F,KAAA1jD,MAAAmyC,WAAA,CAA+B,GAAAtqF,GAAAuB,KAAAs6F,KAAA1jD,MAAAmyC,UAAiC/oF,MAAA+6F,WAAAt8F,EAAA08F,MAAAn7F,KAAAg7F,QAAAv8F,EAAAkI,GAA0C,GAAA1H,GAAAe,KAAAs6F,KAAA1jD,MAAA0P,YAAmC,QAAAnmD,KAAAlB,GAAA,CAAgB,GAAAM,GAAAN,EAAAkB,GAAAg5C,WAAuB55C,GAAA67F,aAAA36F,EAAAoJ,QAAAtK,EAAA67F,aAAA,GAAA36F,EAAA4G,KAAA9H,EAAA67F,aAAiE36F,EAAAwQ,KAAA,SAAAxQ,EAAAhC,GAAqB,MAAAgC,GAAAM,OAAAtC,EAAAsC,SAAyBN,IAAAob,OAAA,SAAApd,EAAAQ,GAA2B,OAAAkB,GAAAlB,EAAA,EAAckB,EAAAM,EAAAM,OAAWZ,IAAA,GAAAM,EAAAN,GAAA0J,QAAApL,IAAA,UAAmC,YAASuB,KAAAu6F,WAAAc,UAAA56F,EAAAyO,KAAA,OAAAlP,KAAA66F,UAAA,OAA+DnuD,EAAA/sC,UAAAi7F,eAAA,WAAwD56F,KAAAs6F,KAAA3D,qBAAA2E,aAAA,IAAAt7F,KAAAu6F,WAAAC,UAAA12F,IAAA,oBAAA9D,KAAAu6F,WAAAC,UAAAv/B,OAAA,qBAAuJz8D,EAAAD,QAAAmuC,IACp0E6uD,oBAAA,IAAAC,iBAAA,IAAAx8D,kBAAA,MAAmEy8D,KAAA,SAAAx6F,EAAAzC,EAAAD,GACtE,YAAa,IAAAg3F,GAAAt0F,EAAA,kBAAAuvB,EAAAvvB,EAAA,mBAAAb,EAAAa,EAAA,qBAAA2rC,EAAA,WAAmI5sC,KAAA07F,aAAA,EAAAlrE,EAAA+mC,SAAA,oCAAAv3D,MAAA,sBAAAI,GAAA0I,SAAA9I,KAAA27F,kBAAA,4CAAAv7F,GAAA0I,SAAA9I,KAAA27F,kBAAA,kDAAAv7F,GAAA0I,SAAA9I,KAAA27F,kBAAA,iDAAAv7F,GAAA0I,WAAA9I,KAAA27F,kBAAA,sBAAA37F,KAAA47F,WAAA,gBAA0chvD,GAAAjtC,UAAA2uD,MAAA,SAAAnuD,GAA8C,MAAAH,MAAAs6F,KAAAn6F,EAAAH,KAAA67F,cAAA77F,KAAAs6F,KAAAwB,eAAA97F,KAAAu6F,WAAAhF,EAAA1yF,OAAA,MAAA7C,KAAA47F,WAAA,wBAAA57F,KAAA+7F,0BAAA/7F,KAAAg8F,YAAAh8F,KAAAu6F,WAAA3jD,MAAAqlD,QAAA,OAAAzrE,EAAA0K,SAAA,kDAAAl7B,KAAAu6F,YAA6S3tD,EAAAjtC,UAAA4uD,SAAA,WAAiDgnC,EAAAt6B,OAAAj7D,KAAAu6F,YAAAv6F,KAAAs6F,KAAA,KAAAl6F,EAAA0I,SAAAozF,oBAAAl8F,KAAA27F,kBAAA37F,KAAAm8F,cAAwHvvD,EAAAjtC,UAAAo8F,wBAAA,WAAgE,SAAA37F,EAAA0I,SAAAszF,mBAAAh8F,EAAA0I,SAAAuzF,sBAAAj8F,EAAA0I,SAAAwzF,qBAAAl8F,EAAA0I,SAAAyzF,0BAAgK3vD,EAAAjtC,UAAAq8F,SAAA,WAAiD,GAAA77F,GAAAH,KAAAw8F,kBAAAjH,EAAA1yF,OAAA,SAAA7C,KAAA47F,WAAA,SAAA57F,KAAA47F,WAAA,cAAA57F,KAAAu6F,WAAyHp6F,GAAAs8F,aAAA,kCAAAt8F,EAAAyM,KAAA,SAAA5M,KAAAw8F,kBAAAn9B,iBAAA,QAAAr/D,KAAA08F,oBAAAt8F,EAAA0I,SAAAu2D,iBAAAr/D,KAAA27F,kBAAA37F,KAAAm8F,cAAoNvvD,EAAAjtC,UAAAg9F,cAAA,WAAsD,MAAA38F,MAAA07F,aAAwB9uD,EAAAjtC,UAAAw8F,YAAA,YAAoD/7F,EAAA0I,SAAA8zF,mBAAAx8F,EAAA0I,SAAA+zF,sBAAAz8F,EAAA0I,SAAAg0F,yBAAA18F,EAAA0I,SAAAi0F,uBAAA/8F,KAAA67F,gBAAA77F,KAAA07F,cAAA17F,KAAA07F,aAAA17F,KAAA07F,YAAA17F,KAAAw8F,kBAAAhC,UAAAwC,OAAAh9F,KAAA47F,WAAA,WAAA57F,KAAAw8F,kBAAAhC,UAAAwC,OAAAh9F,KAAA47F,WAAA,iBAAgXhvD,EAAAjtC,UAAA+8F,mBAAA,WAA2D18F,KAAA28F,gBAAAv8F,EAAA0I,SAAAm0F,eAAA78F,EAAA0I,SAAAm0F,iBAAA78F,EAAA0I,SAAAo0F,oBAAA98F,EAAA0I,SAAAo0F,sBAAA98F,EAAA0I,SAAAq0F,iBAAA/8F,EAAA0I,SAAAq0F,mBAAA/8F,EAAA0I,SAAAs0F,wBAAAh9F,EAAA0I,SAAAs0F,yBAAAp9F,KAAA67F,cAAAwB,kBAAAr9F,KAAA67F,cAAAwB,oBAAAr9F,KAAA67F,cAAAyB,qBAAAt9F,KAAA67F,cAAAyB,uBAAAt9F,KAAA67F,cAAA0B,oBAAAv9F,KAAA67F,cAAA0B,sBAAAv9F,KAAA67F,cAAA2B,yBAAAx9F,KAAA67F,cAAA2B,2BAA2nBh/F,EAAAD,QAAAquC,IACj2F4uD,iBAAA,IAAAx8D,kBAAA,IAAAy+D,oBAAA,MAAmEC,KAAA,SAAAz8F,EAAAzC,EAAAD,GACtE,YAAa,SAAAo/F,GAAAl9F,OAAoC,KAAAm9F,EAAAn9F,EAAAm9F,OAAA,KAAAx9F,EAAAuJ,UAAAk0F,YAAAz9F,EAAAuJ,UAAAk0F,YAAAhlF,OAA8H9Z,KAAA,gBAAmB++F,KAAA,SAAA7+F,GAAmB2+F,EAAA,WAAA3+F,EAAA0xD,MAAAlwD,EAAAm9F,MAA8DA,IAAAx9F,EAAAuJ,UAAAo0F,YAAAt9F,EAAAm9F,IAA8E,GAAuVA,GAAvV5wD,EAAA/rC,EAAA,sBAAAs0F,EAAAt0F,EAAA,kBAAAb,EAAAa,EAAA,qBAAAuvB,EAAAvvB,EAAA,mBAAAikC,EAAAjkC,EAAA,qBAAA6rC,EAAA7rC,EAAA,aAAA+8F,GAA4NC,iBAAiBC,oBAAA,EAAAC,QAAA,KAAkCC,kBAAmBrpF,QAAA,IAAWspF,mBAAA,EAAAC,kBAAA,GAA0C7xD,EAAA,SAAAhsC,GAA4E,QAAAxB,MAAcwB,EAAA9B,KAAAqB,WAAA0U,QAAA8b,EAAA7b,UAAwCqpF,EAAA/+F,GAAAuxB,EAAA+mC,SAAA,kGAAAv3D,MAAyI,MAAAS,KAAAxB,EAAAyuD,UAAAjtD,GAAAxB,EAAAU,UAAAT,OAAA2D,OAAApC,KAAAd,WAAAV,EAAAU,UAAAsoB,YAAAhpB,IAAAU,UAAA2uD,MAAA,SAAA7tD,GAA4H,MAAAT,MAAAs6F,KAAA75F,EAAAT,KAAAu6F,WAAAhF,EAAA1yF,OAAA,MAAA07F,qCAAAZ,EAAA39F,KAAAg8F,UAAAh8F,KAAAu6F,YAA6It7F,EAAAU,UAAA4uD,SAAA,eAAiC,KAAAvuD,KAAAw+F,sBAAAp+F,EAAAuJ,UAAAo0F,YAAAU,WAAAz+F,KAAAw+F,qBAAAx+F,KAAAw+F,wBAAA,IAAAx+F,KAAA0U,QAAA4pF,kBAAAt+F,KAAA0+F,uBAAAzjC,SAAAs6B,EAAAt6B,OAAAj7D,KAAAu6F,YAAAv6F,KAAAs6F,SAAA,IAAwPr7F,EAAAU,UAAAg/F,WAAA,SAAAl+F,GAAoC,GAAAT,KAAA0U,QAAA2pF,kBAAA,OAAAr+F,KAAA4+F,mBAAAn+F,EAAAT,KAAA6+F,aAAqF,0DAAA7+F,KAAA6+F,YAAA,cAAA7+F,KAAA8+F,iBAAAtE,UAAAv/B,OAAA,mCAAAj7D,KAAA8+F,iBAAAtE,UAAAv/B,OAAA,wCAAAj7D,KAAA8+F,iBAAAtE,UAAA12F,IAAA,iCAAwT,MAAM,yCAAA9D,KAAA6+F,YAAA,aAAA7+F,KAAA8+F,iBAAAtE,UAAAv/B,OAAA,mCAAAj7D,KAAA8+F,iBAAAtE,UAAAv/B,OAAA,4CAAAj7D,KAAA8+F,iBAAAtE,UAAA12F,IAAA,sCAA6S9D,KAAA0U,QAAA4pF,kBAAA,QAAAt+F,KAAA6+F,aAAA7+F,KAAA++F,cAAAt+F,GAAAT,KAAA0U,QAAA2pF,mBAAA,gBAAAr+F,KAAA6+F,aAAA7+F,KAAAg/F,cAAAv+F,GAAAT,KAAA0U,QAAA4pF,kBAAAt+F,KAAAi/F,YAAAzE,UAAAv/B,OAAA,oCAAAj7D,KAAA6tD,KAAA,YAAAptD,GAAAT,KAAAk/F,WAAoTjgG,EAAAU,UAAAq/F,cAAA,SAAAv+F,GAAuC,GAAAxB,GAAA,GAAAimC,GAAAzkC,EAAAyZ,OAAAilF,UAAA1+F,EAAAyZ,OAAAklF,UAAAj/F,EAAAM,EAAAyZ,OAAAmlF,QAA2Er/F,MAAAs6F,KAAAjC,UAAAp5F,EAAAqmC,SAAAnlC,GAAAH,KAAA0U,QAAA0pF,kBAAiEkB,iBAAA,KAAqBrgG,EAAAU,UAAAo/F,cAAA,SAAAt+F,GAAuCA,EAAAT,KAAA0+F,uBAAAa,WAAA9+F,EAAAyZ,OAAAilF,UAAA1+F,EAAAyZ,OAAAklF,WAAAI,MAAAx/F,KAAAs6F,MAAAt6F,KAAA0+F,uBAAAzjC,UAAsIh8D,EAAAU,UAAA8/F,SAAA,SAAAh/F,GAAkC,GAAAT,KAAA0U,QAAA2pF,kBAAA,OAAA59F,EAAAK,KAAAd,KAAA6+F,YAAA,MAAA7+F,KAAA8+F,iBAAAtE,UAAAv/B,OAAA,mCAAAj7D,KAAA8+F,iBAAAtE,UAAAv/B,OAAA,kCAAAj7D,KAAA8+F,iBAAAtE,UAAAv/B,OAAA,wCAAAj7D,KAAA8+F,iBAAAtE,UAAAv/B,OAAA,sCAAAj7D,KAAA8+F,iBAAAtE,UAAAv/B,OAAA,qDAAAj7D,KAAAw+F,qBAAAx+F,KAAA0/F,kBAA+f,QAAA1/F,KAAA6+F,aAA8B,qBAAA7+F,KAAA6+F,YAAA,eAAA7+F,KAAA8+F,iBAAAtE,UAAAv/B,OAAA,kCAAAj7D,KAAA8+F,iBAAAtE,UAAA12F,IAAA,uCAA0M,MAAM,mBAAA9D,KAAA6+F,YAAA,eAAA7+F,KAAA8+F,iBAAAtE,UAAAv/B,OAAA,kCAAAj7D,KAAA8+F,iBAAAtE,UAAA12F,IAAA,wCAAA9D,KAAA8+F,iBAAAtE,UAAA12F,IAAA,kCAA8Q,MAAM,kBAAA9D,KAAA6+F,YAAA,mBAAA7+F,KAAA8+F,iBAAAtE,UAAAv/B,OAAA,sCAAAj7D,KAAA8+F,iBAAAtE,UAAA12F,IAAA,4CAAA9D,KAAA8+F,iBAAAtE,UAAA12F,IAAA,mCAAyR,QAAA9D,KAAA6+F,aAAA7+F,KAAA0U,QAAA4pF,kBAAAt+F,KAAAi/F,YAAAzE,UAAA12F,IAAA,oCAAA9D,KAAA6tD,KAAA,QAAAptD,GAAAT,KAAAk/F,WAAgKjgG,EAAAU,UAAAu/F,QAAA,WAAgCl/F,KAAA2/F,YAAA18E,aAAAjjB,KAAA2/F,YAAA3/F,KAAA2/F,eAAA,IAAsE1gG,EAAAU,UAAAq8F,SAAA,SAAAv7F,GAAkC,GAAAxB,GAAAe,MAAW,IAAAS,IAAAT,KAAAu6F,WAAAl7B,iBAAA,uBAAA5+D,GAAoE,MAAAA,GAAA61F,mBAA0Bt2F,KAAA8+F,iBAAAvJ,EAAA1yF,OAAA,SAAA07F,6CAAAv+F,KAAAu6F,YAAAv6F,KAAA8+F,iBAAAlyF,KAAA,SAAA5M,KAAA8+F,iBAAArC,aAAA,0BAAAz8F,KAAA0U,QAAA2pF,oBAAAr+F,KAAA8+F,iBAAArC,aAAA,wBAAAz8F,KAAA6+F,YAAA,OAAA7+F,KAAA0U,QAAA4pF,mBAAAt+F,KAAAi/F,YAAA1J,EAAA1yF,OAAA,oCAAA7C,KAAA0+F,uBAAA,GAAA5xD,GAAA9sC,KAAAi/F,aAAAj/F,KAAA0U,QAAA2pF,oBAAAr+F,KAAA6+F,YAAA,QAAA7+F,KAAA8+F,iBAAAz/B,iBAAA,QAAAr/D,KAAA4/F,kBAAAzjF,KAAAnc,YAAA0U,QAAA2pF,mBAAAr+F,KAAAs6F,KAAAh2E,GAAA,qBAAA7jB,GAAsqBA,EAAA6+F,iBAAA,gBAAArgG,EAAA4/F,cAAA5/F,EAAA4/F,YAAA,aAAA5/F,EAAA6/F,iBAAAtE,UAAA12F,IAAA,sCAAA7E,EAAA6/F,iBAAAtE,UAAAv/B,OAAA,kCAAAh8D,EAAA4uD,KAAA,6BAA8P5uD,EAAAU,UAAAigG,kBAAA,WAA0C,GAAA5/F,KAAA0U,QAAA2pF,kBAAA,CAAmC,OAAAr+F,KAAA6+F,aAAyB,UAAA7+F,KAAA6+F,YAAA,iBAAA7+F,KAAA6tD,KAAA,yBAAgF,MAAM,kFAAA7tD,KAAA6+F,YAAA,MAAA7+F,KAAA8+F,iBAAAtE,UAAAv/B,OAAA,mCAAAj7D,KAAA8+F,iBAAAtE,UAAAv/B,OAAA,kCAAAj7D,KAAA8+F,iBAAAtE,UAAAv/B,OAAA,wCAAAj7D,KAAA8+F,iBAAAtE,UAAAv/B,OAAA,sCAAAj7D,KAAA8+F,iBAAAtE,UAAAv/B,OAAA,4CAAAj7D,KAAA6tD,KAAA,uBAA4gB,MAAM,kBAAA7tD,KAAA6+F,YAAA,cAAA7+F,KAAA8+F,iBAAAtE,UAAAv/B,OAAA,sCAAAj7D,KAAA4+F,oBAAA5+F,KAAAg/F,cAAAh/F,KAAA4+F,oBAAA5+F,KAAA6tD,KAAA,0BAAsO,OAAA7tD,KAAA6+F,aAAyB,qBAAA7+F,KAAA8+F,iBAAAtE,UAAA12F,IAAA,mCAAA9D,KAAA8+F,iBAAAtE,UAAA12F,IAAA,iCAAkK,MAAM,mBAAA9D,KAAA8+F,iBAAAtE,UAAA12F,IAAA,iCAAwF,MAAM,oBAAA9D,KAAA8+F,iBAAAtE,UAAA12F,IAAA,mCAAA9D,KAAA8+F,iBAAAtE,UAAA12F,IAAA,uCAAsK,MAAM,kBAAA9D,KAAA8+F,iBAAAtE,UAAA12F,IAAA,qCAA2F,MAAM,wBAAA9D,KAAA8+F,iBAAAtE,UAAA12F,IAAA,mCAAA9D,KAAA8+F,iBAAAtE,UAAA12F,IAAA,4CAA8K,QAAA9D,KAAA6+F,iBAAA,KAAA7+F,KAAAw+F,oBAAAx+F,KAAA0/F,kBAAA,KAAA1/F,KAAAw+F,sBAAAx+F,KAAA8+F,iBAAAtE,UAAA12F,IAAA,mCAAA9D,KAAA8+F,iBAAArC,aAAA,uBAAAz8F,KAAAw+F,oBAAAp+F,EAAAuJ,UAAAo0F,YAAA8B,cAAA7/F,KAAA2+F,WAAA3+F,KAAAy/F,SAAAz/F,KAAA0U,QAAAupF,sBAAqX79F,GAAAuJ,UAAAo0F,YAAA+B,mBAAA9/F,KAAA2+F,WAAA3+F,KAAAy/F,SAAAz/F,KAAA0U,QAAAupF,iBAAAj+F,KAAA2/F,WAAA78E,WAAA9iB,KAAAk/F,QAAA,MAA8JjgG,EAAAU,UAAA+/F,YAAA,WAAoCt/F,EAAAuJ,UAAAo0F,YAAAU,WAAAz+F,KAAAw+F,qBAAAx+F,KAAAw+F,wBAAA,GAAAx+F,KAAA8+F,iBAAAtE,UAAAv/B,OAAA,mCAAAj7D,KAAA8+F,iBAAArC,aAAA,wBAAAz8F,KAAA0U,QAAA4pF,kBAAAt+F,KAAA++F,cAAA,OAA+R9/F,GAAG+tC,EAAUxuC,GAAAD,QAAAkuC,IACj9PszD,oBAAA,GAAAvE,iBAAA,IAAAwE,qBAAA,IAAAhhE,kBAAA,IAAAy+D,oBAAA,IAAAwC,YAAA,MAAmIC,KAAA,SAAAj/F,EAAAzC,EAAAD,GACtI,YAAa,IAAAg3F,GAAAt0F,EAAA,kBAAAuvB,EAAAvvB,EAAA,mBAAAk/F,EAAA,WAAyF3vE,EAAA+mC,SAAA,eAAAv3D,MAAoCmgG,GAAAxgG,UAAA2uD,MAAA,SAAArvD,GAAwCe,KAAAs6F,KAAAr7F,EAAAe,KAAAu6F,WAAAhF,EAAA1yF,OAAA,sBAA8D,IAAApC,GAAA80F,EAAA1yF,OAAA,yBAA2C,OAAApC,GAAA01F,OAAA,SAAA11F,EAAA4uD,KAAA,0BAAA5uD,EAAAg8F,aAAA,4BAAAz8F,KAAAu6F,WAAA6F,YAAA3/F,GAAAT,KAAAu6F,WAAA3jD,MAAAqlD,QAAA,OAAAj8F,KAAAs6F,KAAAh2E,GAAA,aAAAtkB,KAAAqgG,aAAArgG,KAAAqgG,cAAArgG,KAAAu6F,YAAwP4F,EAAAxgG,UAAA4uD,SAAA,WAA2CgnC,EAAAt6B,OAAAj7D,KAAAu6F,YAAAv6F,KAAAs6F,KAAA71E,IAAA,aAAAzkB,KAAAqgG,cAAyEF,EAAAxgG,UAAAy6F,mBAAA,WAAqD,qBAAoB+F,EAAAxgG,UAAA0gG,YAAA,SAAAphG,GAA+CA,GAAA,aAAAA,EAAAkxD,iBAAAnwD,KAAAu6F,WAAA3jD,MAAAqlD,QAAAj8F,KAAAsgG,gBAAA,iBAAsGH,EAAAxgG,UAAA2gG,cAAA,WAAgD,GAAAtgG,KAAAs6F,KAAA1jD,MAAA,CAAoB,GAAA33C,GAAAe,KAAAs6F,KAAA1jD,MAAA0P,YAAmC,QAAA7lD,KAAAxB,GAAgB,GAAAA,EAAAwB,GAAA04C,YAAAonD,YAAA,QAAyC,YAAU/hG,EAAAD,QAAA4hG,IAC5gC3E,iBAAA,IAAAx8D,kBAAA,MAA2CwhE,KAAA,SAAAv/F,EAAAzC,EAAAD,GAC9C,YAAa,IAAAg3F,GAAAt0F,EAAA,kBAAAuvB,EAAAvvB,EAAA,mBAAAw/F,EAAAx/F,EAAA,0BAAAurC,EAAA,WAAmJ,GAAA/rC,GAAAT,IAAWwwB,GAAA+mC,SAAA,uBAAAv3D,WAAAu6F,WAAAhF,EAAA1yF,OAAA,2CAAA7C,KAAAu6F,WAAAl7B,iBAAA,uBAAA5+D,GAA4K,MAAAA,GAAA61F,mBAA0Bt2F,KAAA0gG,cAAA1gG,KAAA2gG,cAAA,gEAAwG,MAAAlgG,GAAA65F,KAAAxC,WAAuB93F,KAAA4gG,eAAA5gG,KAAA2gG,cAAA,kEAA2G,MAAAlgG,GAAA65F,KAAAvC,YAAwB/3F,KAAA6gG,SAAA7gG,KAAA2gG,cAAA,oEAAuG,MAAAlgG,GAAA65F,KAAApC,eAA2Bl4F,KAAA8gG,cAAAvL,EAAA1yF,OAAA,qCAAA7C,KAAA6gG,UAAqFr0D,GAAA7sC,UAAAohG,oBAAA,WAA2D,GAAAtgG,GAAA,UAAAT,KAAAs6F,KAAApkF,UAAAxQ,OAAA,IAAArE,KAAAqM,IAAA,MAA+D1N,MAAA8gG,cAAAlqD,MAAA1gC,UAAAzV,GAAqC+rC,EAAA7sC,UAAA2uD,MAAA,SAAA7tD,GAA+C,MAAAT,MAAAs6F,KAAA75F,EAAAT,KAAAs6F,KAAAh2E,GAAA,SAAAtkB,KAAA+gG,qBAAA/gG,KAAA+gG,sBAAA/gG,KAAAghG,SAAA,GAAAP,GAAAhgG,GAAqIwgG,OAAA,OAAAC,QAAAlhG,KAAA6gG,SAAAM,iBAAA,IAAuDnhG,KAAAghG,SAAA5vD,SAAApxC,KAAAu6F,YAAyC/tD,EAAA7sC,UAAA4uD,SAAA,WAAiDgnC,EAAAt6B,OAAAj7D,KAAAu6F,YAAAv6F,KAAAs6F,KAAA71E,IAAA,SAAAzkB,KAAA+gG,2BAAA/gG,MAAAs6F,KAAAt6F,KAAAghG,SAAAnyD,gBAAA7uC,MAAAghG,UAA2Ix0D,EAAA7sC,UAAAghG,cAAA,SAAAlgG,EAAAxB,EAAAyB,GAA2D,GAAAP,GAAAo1F,EAAA1yF,OAAA,SAAApC,EAAAT,KAAAu6F,WAA6C,OAAAp6F,GAAAyM,KAAA,SAAAzM,EAAAs8F,aAAA,aAAAx9F,GAAAkB,EAAAk/D,iBAAA,QAAA3+D,GAAAP,GAAsF3B,EAAAD,QAAAiuC,IACpnDgvD,iBAAA,IAAAx8D,kBAAA,IAAAoiE,yBAAA,MAAwEC,KAAA,SAAApgG,EAAAzC,EAAAD,GAC3E,YAAa,SAAA+iG,GAAA7gG,EAAAN,EAAAlB,GAA4B,GAAAM,GAAAN,KAAAsiG,UAAA,IAAA9iG,EAAAgC,EAAA85F,WAAAiH,aAAA,EAAA5gG,EAAA6gG,EAAAhhG,EAAAuoC,WAAA,EAAAvqC,IAAAgC,EAAAuoC,WAAAzpC,EAAAd,IAA4G,IAAAQ,GAAA,aAAAA,EAAA8F,KAAA,CAA2B,GAAArG,GAAA,OAAAkC,CAAelC,GAAA,KAAWgjG,EAAAvhG,EAAAZ,EAAAb,EAAA,WAA0BgjG,EAAAvhG,EAAAZ,EAAAb,EAAA,UAA0B,IAAAO,GAAA,aAAAA,EAAA8F,KAAA,CAAgC,GAAArE,GAAAE,EAAA,IAAa8gG,GAAAvhG,EAAAZ,EAAAmB,EAAA,UAAqBghG,GAAAvhG,EAAAZ,EAAAqB,EAAA,KAAyB,QAAA8gG,GAAAjhG,EAAAN,EAAAlB,EAAAM,GAA2B,GAAAd,GAAAkjG,EAAA1iG,GAAA2B,EAAAnC,EAAAQ,CAA2B,OAAAM,GAAAd,GAAA,MAAAA,GAAA,IAAAc,EAAA,MAAAkB,EAAAm2C,MAAA3vC,MAAA9G,EAAAS,EAAA,KAAAH,EAAA46F,UAAA58F,EAAAc,EAAwE,QAAAkiG,GAAAhhG,EAAAN,GAA0B,GAAAlB,GAAAoC,KAAAqM,GAAA,IAAAnO,EAAAkB,EAAA2kC,IAAAnmC,EAAAR,EAAA0B,EAAAilC,IAAAnmC,EAAA2B,EAAAS,KAAAC,IAAA/B,GAAA8B,KAAAC,IAAA7C,GAAA4C,KAAAE,IAAAhC,GAAA8B,KAAAE,IAAA9C,GAAA4C,KAAAE,KAAApB,EAAAglC,IAAA1kC,EAAA0kC,KAAAlmC,EAAkH,eAAAoC,KAAAugG,KAAAvgG,KAAAmJ,IAAA5J,EAAA,IAAuC,QAAA+gG,GAAAlhG,GAAwB,GAAAN,GAAAkB,KAAAkJ,IAAA,OAAAlJ,KAAAoV,MAAAhW,IAAAM,OAAA,GAAA9B,EAAAwB,EAAAN,CAAqD,OAAAlB,MAAA,MAAAA,GAAA,IAAAA,GAAA,IAAAA,GAAA,MAAAkB,EAAAlB,EAA6C,GAAAs2F,GAAAt0F,EAAA,kBAAAuvB,EAAAvvB,EAAA,mBAAA0rC,EAAA,SAAAlsC,GAA2FT,KAAA0U,QAAAjU,EAAA+vB,EAAA+mC,SAAA,WAAAv3D,MAA+C2sC,GAAAhtC,UAAAy6F,mBAAA,WAAqD,qBAAoBztD,EAAAhtC,UAAAkiG,QAAA,WAA2CP,EAAAthG,KAAAs6F,KAAAt6F,KAAAu6F,WAAAv6F,KAAA0U,UAAoDi4B,EAAAhtC,UAAA2uD,MAAA,SAAA7tD,GAA0C,MAAAT,MAAAs6F,KAAA75F,EAAAT,KAAAu6F,WAAAhF,EAAA1yF,OAAA,0CAAApC,EAAAq7F,gBAAA97F,KAAAs6F,KAAAh2E,GAAA,OAAAtkB,KAAA6hG,SAAA7hG,KAAA6hG,UAAA7hG,KAAAu6F,YAA2K5tD,EAAAhtC,UAAA4uD,SAAA,WAA4CgnC,EAAAt6B,OAAAj7D,KAAAu6F,YAAAv6F,KAAAs6F,KAAA71E,IAAA,OAAAzkB,KAAA6hG,SAAA7hG,KAAAs6F,SAAA,IAAgF97F,EAAAD,QAAAouC,IACp4C6uD,iBAAA,IAAAx8D,kBAAA,MAA2C8iE,KAAA,SAAA7gG,EAAAzC,EAAAD,GAC9C,kBACIwjG,KAAA,SAAA9gG,EAAAzC,EAAAD,GACJ,YAAa,IAAAg3F,GAAAt0F,EAAA,kBAAAwkC,EAAAxkC,EAAA,4BAAAuvB,EAAAvvB,EAAA,mBAAAb,EAAAa,EAAA,qBAAA+gG,EAAA,SAAA/iG,GAAkLe,KAAAs6F,KAAAr7F,EAAAe,KAAAiiG,IAAAhjG,EAAA03F,qBAAA32F,KAAAu6F,WAAAt7F,EAAA68F,eAAAtrE,EAAA+mC,SAAA,yDAAAv3D,MAA2JgiG,GAAAriG,UAAAuiG,UAAA,WAA8C,QAAAliG,KAAAmiG,UAAsBH,EAAAriG,UAAAs2F,SAAA,WAA8C,QAAAj2F,KAAAoiG,SAAqBJ,EAAAriG,UAAAyxC,OAAA,WAA4CpxC,KAAAkiG,cAAAliG,KAAAs6F,KAAA1E,SAAA51F,KAAAs6F,KAAA1E,QAAA/mD,UAAA7uC,KAAAiiG,IAAA5iC,iBAAA,YAAAr/D,KAAAqiG,cAAA,GAAAriG,KAAAs6F,KAAA1E,SAAA51F,KAAAs6F,KAAA1E,QAAAxkD,SAAApxC,KAAAmiG,UAAA,IAA8LH,EAAAriG,UAAAkvC,QAAA,WAA6C7uC,KAAAkiG,cAAAliG,KAAAiiG,IAAA/F,oBAAA,YAAAl8F,KAAAqiG,cAAAriG,KAAAmiG,UAAA,IAAiGH,EAAAriG,UAAA0iG,aAAA,SAAApjG,GAAmDA,EAAAqjG,UAAA,IAAArjG,EAAAgiG,SAAA7gG,EAAA0I,SAAAu2D,iBAAA,YAAAr/D,KAAAuiG,cAAA,GAAAniG,EAAA0I,SAAAu2D,iBAAA,UAAAr/D,KAAAwiG,YAAA,GAAApiG,EAAA0I,SAAAu2D,iBAAA,UAAAr/D,KAAAyiG,YAAA,GAAAlN,EAAAmN,cAAA1iG,KAAA2iG,UAAApN,EAAAS,SAAAh2F,KAAAiiG,IAAAhjG,GAAAe,KAAAoiG,SAAA,IAAuSJ,EAAAriG,UAAA4iG,aAAA,SAAAtjG,GAAmD,GAAAkB,GAAAH,KAAA2iG,UAAAliG,EAAA80F,EAAAS,SAAAh2F,KAAAiiG,IAAAhjG,EAAgDe,MAAA4iG,OAAA5iG,KAAA4iG,KAAArN,EAAA1yF,OAAA,yBAAA7C,KAAAu6F,YAAAv6F,KAAAu6F,WAAAC,UAAA12F,IAAA,sBAAA9D,KAAA6iG,WAAA,eAAA5jG,GAAkK,IAAAM,GAAA8B,KAAAmJ,IAAArK,EAAA4B,EAAAtB,EAAAsB,GAAAtD,EAAA4C,KAAAuG,IAAAzH,EAAA4B,EAAAtB,EAAAsB,GAAAjC,EAAAuB,KAAAmJ,IAAArK,EAAAwB,EAAAlB,EAAAkB,GAAAf,EAAAS,KAAAuG,IAAAzH,EAAAwB,EAAAlB,EAAAkB,EAAoF4zF,GAAAuN,aAAA9iG,KAAA4iG,KAAA,aAAArjG,EAAA,MAAAO,EAAA,OAAAE,KAAA4iG,KAAAhsD,MAAA3vC,MAAAxI,EAAAc,EAAA,KAAAS,KAAA4iG,KAAAhsD,MAAA1vC,OAAAtG,EAAAd,EAAA,MAAwHkiG,EAAAriG,UAAA8iG,WAAA,SAAAxjG,GAAiD,OAAAA,EAAAgiG,OAAA,CAAiB,GAAA9gG,GAAAH,KAAA2iG,UAAAliG,EAAA80F,EAAAS,SAAAh2F,KAAAiiG,IAAAhjG,GAAAM,GAAA,GAAAkmC,IAAA9wB,OAAA3U,KAAAs6F,KAAAtxD,UAAA7oC,IAAAwU,OAAA3U,KAAAs6F,KAAAtxD,UAAAvoC,GAAmIT,MAAAk/F,UAAA/+F,EAAA4B,IAAAtB,EAAAsB,GAAA5B,EAAAwB,IAAAlB,EAAAkB,EAAA3B,KAAA6iG,WAAA,gBAAA5jG,GAAAe,KAAAs6F,KAAAjC,UAAA94F,GAA8F+4F,QAAA,IAAUzqC,KAAA,cAAqB2oC,cAAAv3F,EAAA8jG,cAAAxjG,MAAmCyiG,EAAAriG,UAAA6iG,WAAA,SAAAvjG,GAAiD,KAAAA,EAAA+jG,UAAAhjG,KAAAk/F,UAAAl/F,KAAA6iG,WAAA,gBAAA5jG,KAAoE+iG,EAAAriG,UAAAu/F,QAAA,WAA6Cl/F,KAAAoiG,SAAA,EAAAhiG,EAAA0I,SAAAozF,oBAAA,YAAAl8F,KAAAuiG,cAAA,GAAAniG,EAAA0I,SAAAozF,oBAAA,UAAAl8F,KAAAwiG,YAAA,GAAApiG,EAAA0I,SAAAozF,oBAAA,UAAAl8F,KAAAyiG,YAAA,GAAAziG,KAAAu6F,WAAAC,UAAAv/B,OAAA,sBAAAj7D,KAAA4iG,OAAArN,EAAAt6B,OAAAj7D,KAAA4iG,MAAA5iG,KAAA4iG,KAAA,MAAArN,EAAA0N,cAAoVjB,EAAAriG,UAAAkjG,WAAA,SAAA5jG,EAAAkB,GAAmD,MAAAH,MAAAs6F,KAAAzsC,KAAA5uD,GAAyBu3F,cAAAr2F,KAAkB3B,EAAAD,QAAAyjG,IAC1jFkB,2BAAA,GAAA1H,iBAAA,IAAAx8D,kBAAA,IAAAy+D,oBAAA,MAAiG0F,KAAA,SAAAliG,EAAAzC,EAAAD,GACpG,YAAa,IAAAiyB,GAAAvvB,EAAA,mBAAAmiG,EAAA,SAAA1kG,GAAuEsB,KAAAs6F,KAAA57F,EAAA8xB,EAAA+mC,SAAA,eAAAv3D,MAAgDojG,GAAAzjG,UAAAuiG,UAAA,WAAsD,QAAAliG,KAAAmiG,UAAsBiB,EAAAzjG,UAAAyxC,OAAA,WAAoDpxC,KAAAkiG,cAAAliG,KAAAs6F,KAAAh2E,GAAA,WAAAtkB,KAAAqjG,aAAArjG,KAAAmiG,UAAA,IAA+EiB,EAAAzjG,UAAAkvC,QAAA,WAAqD7uC,KAAAkiG,cAAAliG,KAAAs6F,KAAA71E,IAAA,WAAAzkB,KAAAqjG,aAAArjG,KAAAmiG,UAAA,IAAgFiB,EAAAzjG,UAAA0jG,YAAA,SAAA3kG,GAA0DsB,KAAAs6F,KAAAv1D,OAAA/kC,KAAAs6F,KAAAxgC,WAAAp7D,EAAA83F,cAAA8L,UAAA,MAAsExJ,OAAAp6F,EAAA63F,QAAgB73F,IAAIF,EAAAD,QAAA6kG,IACzmBpkE,kBAAA,MAAsBskE,KAAA,SAAAriG,EAAAzC,EAAAD,GACzB,YAAa,IAAAg3F,GAAAt0F,EAAA,kBAAAuvB,EAAAvvB,EAAA,mBAAAb,EAAAa,EAAA,qBAAAsiG,EAAA/yE,EAAA0pE,OAAA,UAAAsJ,EAAA,SAAA/iG,GAAqPT,KAAAs6F,KAAA75F,EAAAT,KAAAiiG,IAAAxhG,EAAAk2F,qBAAAnmE,EAAA+mC,SAAA,wDAAAv3D,MAAyHwjG,GAAA7jG,UAAAuiG,UAAA,WAA8C,QAAAliG,KAAAmiG,UAAsBqB,EAAA7jG,UAAAs2F,SAAA,WAA8C,QAAAj2F,KAAAoiG,SAAqBoB,EAAA7jG,UAAAyxC,OAAA,WAA4CpxC,KAAAkiG,cAAAliG,KAAAiiG,IAAAzH,UAAA12F,IAAA,2BAAA9D,KAAAiiG,IAAA5iC,iBAAA,YAAAr/D,KAAAyjG,SAAAzjG,KAAAiiG,IAAA5iC,iBAAA,aAAAr/D,KAAAyjG,SAAAzjG,KAAAmiG,UAAA,IAAgMqB,EAAA7jG,UAAAkvC,QAAA,WAA6C7uC,KAAAkiG,cAAAliG,KAAAiiG,IAAAzH,UAAAv/B,OAAA,2BAAAj7D,KAAAiiG,IAAA/F,oBAAA,YAAAl8F,KAAAyjG,SAAAzjG,KAAAiiG,IAAA/F,oBAAA,aAAAl8F,KAAAyjG,SAAAzjG,KAAAmiG,UAAA,IAAyMqB,EAAA7jG,UAAA8jG,QAAA,SAAAhjG,GAA8CT,KAAA0jG,aAAAjjG,IAAAT,KAAAi2F,aAAAx1F,EAAA41F,SAAAj2F,EAAA0I,SAAAu2D,iBAAA,YAAAr/D,KAAA6hG,SAAAzhG,EAAA0I,SAAAu2D,iBAAA,WAAAr/D,KAAA2jG,eAAAvjG,EAAA0I,SAAAu2D,iBAAA,YAAAr/D,KAAA6hG,SAAAzhG,EAAA0I,SAAAu2D,iBAAA,UAAAr/D,KAAAyiG,aAAAriG,EAAAi/D,iBAAA,OAAAr/D,KAAAyiG,YAAAziG,KAAAoiG,SAAA,EAAApiG,KAAA2iG,UAAA3iG,KAAA4jG,KAAArO,EAAAS,SAAAh2F,KAAAiiG,IAAAxhG,GAAAT,KAAA6jG,WAAA/8E,KAAAC,MAAA/mB,KAAA4jG,SAAgcJ,EAAA7jG,UAAAkiG,QAAA,SAAAphG,GAA8C,IAAAT,KAAA0jG,aAAAjjG,GAAA,CAA0BT,KAAAi2F,aAAAj2F,KAAAoiG,SAAA,EAAApiG,KAAAs6F,KAAA/C,QAAA,EAAAv3F,KAAA6iG,WAAA,YAAApiG,GAAAT,KAAA6iG,WAAA,YAAApiG,GAAqH,IAAAN,GAAAo1F,EAAAS,SAAAh2F,KAAAiiG,IAAAxhG,GAAAlB,EAAAS,KAAAs6F,IAA2C/6F,GAAAm9D,OAAA18D,KAAA8jG,sBAAA9jG,KAAA6jG,SAAAx8F,MAAAyf,KAAAC,MAAA5mB,IAAAZ,EAAA2W,UAAA+yB,mBAAA1pC,EAAA2W,UAAAozB,cAAAtpC,KAAA4jG,MAAAzjG,GAAAH,KAAA6iG,WAAA,OAAApiG,GAAAT,KAAA6iG,WAAA,OAAApiG,GAAAT,KAAA4jG,KAAAzjG,EAAAM,EAAA61F,mBAAkOkN,EAAA7jG,UAAAokG,MAAA,SAAAtjG,GAA4C,GAAAN,GAAAH,IAAW,IAAAA,KAAAi2F,WAAA,CAAoBj2F,KAAAoiG,SAAA,EAAApiG,KAAA6iG,WAAA,UAAApiG,GAAAT,KAAA8jG,qBAAwE,IAAAvkG,GAAA,WAAiBY,EAAAm6F,KAAA/C,QAAA,EAAAp3F,EAAA0iG,WAAA,UAAApiG,IAA2ChC,EAAAuB,KAAA6jG,QAAiB,IAAAplG,EAAAsC,OAAA,aAAAxB,IAA8B,IAAAN,GAAAR,IAAAsC,OAAA,GAAAL,EAAAjC,EAAA,GAAAmC,EAAA3B,EAAA,GAAA+E,IAAAtD,EAAA,IAAAZ,GAAAb,EAAA,GAAAyB,EAAA,OAA8D,QAAAZ,GAAAb,EAAA,GAAAsG,OAAA7E,EAAA,eAAAnB,IAA4C,IAAAoB,GAAAC,EAAA0D,KAAvvE,GAAuvExE,GAAAhB,EAAA6B,EAAA0E,KAA2CvG,GAAlyE,OAAkyEA,EAAlyE,KAAkyE6B,EAAAqE,QAAAT,MAAAzF,GAA0D,IAAA4C,GAAA5C,EAAA,IAAA0C,EAAAb,EAAA2D,MAAA5C,EAAA,EAA8D1B,MAAAs6F,KAAA3C,MAAAn2F,GAAmB6kD,SAAA,IAAA3kD,EAAA82F,OAAA+K,EAAAtK,aAAA,IAAqDzC,cAAA/1F,MAAmB+iG,EAAA7jG,UAAA8iG,WAAA,SAAAhiG,GAAiDT,KAAA0jG,aAAAjjG,KAAAT,KAAA+jG,MAAAtjG,GAAAL,EAAA0I,SAAAozF,oBAAA,YAAAl8F,KAAA6hG,SAAAzhG,EAAA0I,SAAAozF,oBAAA,UAAAl8F,KAAAyiG,YAAAriG,EAAA87F,oBAAA,OAAAl8F,KAAAyiG,cAAsNe,EAAA7jG,UAAAgkG,YAAA,SAAAljG,GAAkDT,KAAA0jG,aAAAjjG,KAAAT,KAAA+jG,MAAAtjG,GAAAL,EAAA0I,SAAAozF,oBAAA,YAAAl8F,KAAA6hG,SAAAzhG,EAAA0I,SAAAozF,oBAAA,WAAAl8F,KAAA2jG,eAAqKH,EAAA7jG,UAAAkjG,WAAA,SAAApiG,EAAAN,GAAmD,MAAAH,MAAAs6F,KAAAzsC,KAAAptD,GAAyB+1F,cAAAr2F,KAAkBqjG,EAAA7jG,UAAA+jG,aAAA,SAAAjjG,GAAmD,GAAAN,GAAAH,KAAAs6F,IAAgB,UAAAn6F,EAAAu1F,UAAAv1F,EAAAu1F,QAAAO,gBAAA91F,EAAAw1F,aAAAx1F,EAAAw1F,WAAAM,cAAAx1F,EAAA41F,QAAA51F,EAAA41F,QAAAt1F,OAAA,IAAAN,EAAAujG,SAAA,cAAAvjG,EAAAmM,MAAAnM,EAAAwgG,QAAA,IAAAxgG,EAAAwgG,SAAmLuC,EAAA7jG,UAAAmkG,oBAAA,WAAyD,OAAArjG,GAAAT,KAAA6jG,SAAA1jG,EAAA2mB,KAAAC,MAAqCtmB,EAAAM,OAAA,GAAAZ,EAAAM,EAAA,WAA0BA,EAAA2vF,SAAW5xF,EAAAD,QAAAilG,IACp7GhI,iBAAA,IAAAx8D,kBAAA,IAAAy+D,oBAAA,MAAmEwG,KAAA,SAAAhjG,EAAAzC,EAAAD,GACtE,YAAa,IAAAg3F,GAAAt0F,EAAA,kBAAAuvB,EAAAvvB,EAAA,mBAAAb,EAAAa,EAAA,qBAAAsiG,EAAA/yE,EAAA0pE,OAAA,WAAAuG,EAAA,SAAAhgG,EAAAN,GAAyPH,KAAAs6F,KAAA75F,EAAAT,KAAAiiG,IAAA9hG,EAAA+gG,SAAAzgG,EAAAk2F,qBAAA32F,KAAAkkG,QAAA/jG,EAAA8gG,QAAA,QAAAjhG,KAAAw3F,aAAAr3F,EAAAs3F,aAAA,EAAAz3F,KAAAmkG,kBAAA,IAAAhkG,EAAAghG,gBAAA3wE,EAAA+mC,SAAA,6BAAAv3D,MAAwNygG,GAAA9gG,UAAAuiG,UAAA,WAAiD,QAAAliG,KAAAmiG,UAAsB1B,EAAA9gG,UAAAs2F,SAAA,WAAiD,QAAAj2F,KAAAoiG,SAAqB3B,EAAA9gG,UAAAyxC,OAAA,WAA+CpxC,KAAAkiG,cAAAliG,KAAAiiG,IAAA5iC,iBAAA,YAAAr/D,KAAAyjG,SAAAzjG,KAAAmiG,UAAA,IAAyF1B,EAAA9gG,UAAAkvC,QAAA,WAAgD7uC,KAAAkiG,cAAAliG,KAAAiiG,IAAA/F,oBAAA,YAAAl8F,KAAAyjG,SAAAzjG,KAAAmiG,UAAA,IAA4F1B,EAAA9gG,UAAA8jG,QAAA,SAAAhjG,GAAiD,KAAAT,KAAAs6F,KAAA5E,SAAA11F,KAAAs6F,KAAA5E,QAAAO,YAAAj2F,KAAAs6F,KAAA1E,SAAA51F,KAAAs6F,KAAA1E,QAAAK,YAAAj2F,KAAAi2F,YAAA,CAAyH,aAAAj2F,KAAAkkG,QAAA,CAA2B,GAAA/jG,GAAAM,EAAAujG,QAAA,IAAAvlG,EAAAgC,EAAAwgG,MAA+B,aAAA7gG,EAAAgkG,gBAAA,IAAA3jG,EAAAwgG,QAAAxgG,EAAAujG,SAAA5jG,EAAAuJ,UAAA06F,SAAAn4E,cAAAriB,QAAA,YAAApL,EAAA,GAAAA,IAAA0B,EAAA,WAA0I,IAAAM,EAAAujG,SAAA,IAAAvjG,EAAAwgG,OAAA,MAAuC1L,GAAAmN,cAAAtiG,EAAA0I,SAAAu2D,iBAAA,YAAAr/D,KAAA6hG,SAA6EyC,SAAA,IAAWlkG,EAAA0I,SAAAu2D,iBAAA,UAAAr/D,KAAA+jG,OAAA3jG,EAAAi/D,iBAAA,OAAAr/D,KAAA+jG,OAAA/jG,KAAAoiG,SAAA,EAAApiG,KAAA6jG,WAAA/8E,KAAAC,MAAA/mB,KAAAs6F,KAAAtC,eAAAh4F,KAAA2iG,UAAA3iG,KAAA4jG,KAAArO,EAAAS,SAAAh2F,KAAAiiG,IAAAxhG,GAAAT,KAAAinC,QAAAjnC,KAAAs6F,KAAApkF,UAAAsxB,YAAA/mC,EAAA61F,mBAA2RmK,EAAA9gG,UAAAkiG,QAAA,SAAAphG,GAAiDT,KAAAi2F,aAAAj2F,KAAAoiG,SAAA,EAAApiG,KAAAs6F,KAAA/C,QAAA,EAAAv3F,KAAA6iG,WAAA,cAAApiG,GAAAT,KAAA6iG,WAAA,YAAApiG,GAAAT,KAAAmkG,kBAAAnkG,KAAA6iG,WAAA,aAAApiG,GAA8K,IAAAN,GAAAH,KAAAs6F,IAAgBn6F,GAAAu8D,MAAS,IAAAj+D,GAAAuB,KAAA4jG,KAAArkG,EAAAg2F,EAAAS,SAAAh2F,KAAAiiG,IAAAxhG,GAAAC,EAAA,IAAAjC,EAAAsD,EAAAxC,EAAAwC,GAAAnB,GAAA,IAAAnC,EAAAkD,EAAApC,EAAAoC,GAAA1C,EAAAkB,EAAA63F,aAAAt3F,EAAAZ,EAAAK,EAAAi4F,WAAAx3F,EAAAc,EAAA1B,KAAA6jG,SAAA9uE,EAAArzB,IAAAX,OAAA,EAA8If,MAAA8jG,sBAAApiG,EAAA2F,MAAAyf,KAAAC,MAAA5mB,EAAAy4F,kBAAA35F,EAAA81B,EAAA,MAAA50B,EAAA+V,UAAA0qB,QAAA3hC,EAAAe,KAAAmkG,mBAAAnkG,KAAA6iG,WAAA,QAAApiG,GAAAN,EAAA+V,UAAAuxB,MAAA3nC,GAAAE,KAAA6iG,WAAA,SAAApiG,GAAAT,KAAA6iG,WAAA,OAAApiG,GAAAT,KAAA4jG,KAAArkG,GAA4OkhG,EAAA9gG,UAAAokG,MAAA,SAAAtjG,GAA+C,GAAAN,GAAAH,IAAW,IAAAI,EAAA0I,SAAAozF,oBAAA,YAAAl8F,KAAA6hG,SAAiEyC,SAAA,IAAWlkG,EAAA0I,SAAAozF,oBAAA,UAAAl8F,KAAA+jG,OAAA3jG,EAAA87F,oBAAA,OAAAl8F,KAAA+jG,OAAAxO,EAAA0N,aAAAjjG,KAAAi2F,WAAA,CAA4Ij2F,KAAAoiG,SAAA,EAAApiG,KAAA6iG,WAAA,YAAApiG,GAAAT,KAAA8jG,qBAA0E,IAAArlG,GAAAuB,KAAAs6F,KAAA/6F,EAAAd,EAAAu5F,aAAAt3F,EAAAV,KAAA6jG,SAAAjjG,EAAA,WAA8DS,KAAAoK,IAAAlM,GAAAY,EAAAq3F,aAAA/4F,EAAAy5F,YAAyCe,aAAA,IAAiBzC,cAAA/1F,KAAgBN,EAAAm6F,KAAA/C,QAAA,EAAAp3F,EAAA0iG,WAAA,UAAApiG,IAAAN,EAAAgkG,kBAAAhkG,EAAA0iG,WAAA,WAAApiG,GAA+F,IAAAC,EAAAK,OAAA,aAAAH,IAA8B,IAAA3B,GAAAyB,EAAA,GAAAZ,EAAAY,IAAAK,OAAA,GAAAW,EAAAhB,IAAAK,OAAA,GAAAg0B,EAAAt2B,EAAAm6F,kBAAAr5F,EAAAmC,EAAA,IAAA7B,EAAAC,EAAA,GAAAb,EAAA,GAAAuC,EAAA3B,EAAA,OAAAf,GAAAgB,EAAA,GAAAb,EAAA,OAAkH,QAAAY,GAAA,IAAAf,EAAA,WAAA8B,IAAgC,IAAAlC,GAAA2C,KAAAoK,IAAA5L,GAA/9F,IAA+9Ff,GAAuCJ,GAAtgG,MAAsgGA,EAAtgG,IAA6iG,IAAAiC,GAAAjC,EAAA,GAA+Cq2B,IAAAvzB,EAAA9C,GAAAiC,EAAA,GAAAU,KAAAoK,IAAAhN,EAAAm6F,kBAAA7jE,EAAA,IAAA/0B,KAAAw3F,eAAAziE,EAAAt2B,EAAAm6F,kBAAA,EAAA7jE,IAAAt2B,EAAAw5F,SAAAljE,GAA8GsxB,SAAA,IAAA1lD,EAAA63F,OAAA+K,EAAAtK,aAAA,IAAqDzC,cAAA/1F,MAAmBggG,EAAA9gG,UAAAkjG,WAAA,SAAApiG,EAAAN,GAAsD,MAAAH,MAAAs6F,KAAAzsC,KAAAptD,GAAyB+1F,cAAAr2F,KAAkBsgG,EAAA9gG,UAAAmkG,oBAAA,WAA4D,OAAArjG,GAAAT,KAAA6jG,SAAA1jG,EAAA2mB,KAAAC,MAAqCtmB,EAAAM,OAAA,GAAAZ,EAAAM,EAAA,WAA0BA,EAAA2vF,SAAW5xF,EAAAD,QAAAkiG,IACngHjF,iBAAA,IAAAx8D,kBAAA,IAAAy+D,oBAAA,MAAmE8G,KAAA,SAAAtjG,EAAAzC,EAAAD,GACtE,YAAa,SAAAimG,GAAArkG,GAAoB,MAAAA,IAAA,EAAAA,GAAe,GAAAqwB,GAAAvvB,EAAA,mBAAAwjG,EAAA,SAAAtkG,GAAwGH,KAAAs6F,KAAAn6F,EAAAH,KAAAiiG,IAAA9hG,EAAAw2F,qBAAAnmE,EAAA+mC,SAAA,cAAAv3D,MAA+EykG,GAAA9kG,UAAAuiG,UAAA,WAA+C,QAAAliG,KAAAmiG,UAAsBsC,EAAA9kG,UAAAyxC,OAAA,WAA6CpxC,KAAAkiG,cAAAliG,KAAAiiG,IAAA5iC,iBAAA,UAAAr/D,KAAAwiG,YAAA,GAAAxiG,KAAAmiG,UAAA,IAA6FsC,EAAA9kG,UAAAkvC,QAAA,WAA8C7uC,KAAAkiG,cAAAliG,KAAAiiG,IAAA/F,oBAAA,UAAAl8F,KAAAwiG,YAAAxiG,KAAAmiG,UAAA,IAA6FsC,EAAA9kG,UAAA6iG,WAAA,SAAAriG,GAAkD,KAAAA,EAAAukG,QAAAvkG,EAAA6jG,SAAA7jG,EAAAwkG,SAAA,CAAsC,GAAAlkG,GAAA,EAAAG,EAAA,EAAArB,EAAA,EAAAmB,EAAA,EAAAjC,EAAA,CAAwB,QAAA0B,EAAA6iG,SAAkB,mCAAAviG,EAAA,CAAuC,MAAM,4BAAAA,GAAA,CAAgC,MAAM,SAAAN,EAAAmiG,SAAA1hG,GAAA,GAAAT,EAAAm2F,iBAAA51F,GAAA,EAAkD,MAAM,SAAAP,EAAAmiG,SAAA1hG,EAAA,GAAAT,EAAAm2F,iBAAA51F,EAAA,EAAgD,MAAM,SAAAP,EAAAmiG,SAAA/iG,EAAA,GAAAY,EAAAm2F,iBAAA73F,GAAA,EAAiD,MAAM,SAAA0B,EAAAmiG,SAAA/iG,GAAA,GAAAd,EAAA,EAAA0B,EAAAm2F,iBAAiD,MAAM,gBAAe,GAAAx2F,GAAAE,KAAAs6F,KAAAr7F,EAAAa,EAAAg6D,UAAAp7D,GAAiC2nD,SAAA,IAAAgzC,eAAA,IAAAb,OAAAgM,EAAA5+E,KAAAnlB,EAAAY,KAAA8D,MAAAlG,GAAAwB,GAAAN,EAAAmiG,SAAA,KAAArjG,EAAA2hC,QAAA9gC,EAAAk4F,aAAl/B,GAAk/Bp3F,EAAA6mC,MAAA3nC,EAAAs4F,WAAl/B,GAAk/B74F,EAAA8sC,QAAl/B,KAAk/B3rC,EAAl/B,KAAk/BjC,GAAAkpC,OAAA7nC,EAAAgmC,YAAkNhmC,GAAA+3F,OAAAn5F,GAAY83F,cAAAr2F,MAAmB3B,EAAAD,QAAAkmG,IAChxCzlE,kBAAA,MAAsB4lE,KAAA,SAAA3jG,EAAAzC,EAAAD,GACzB,YAAa,IAAAg3F,GAAAt0F,EAAA,kBAAAuvB,EAAAvvB,EAAA,mBAAAijB,EAAAjjB,EAAA,sBAAAb,EAAAa,EAAA,qBAAA4jG,EAAAzkG,EAAAuJ,UAAAC,UAAAm+D,cAAA+8B,GAAA,IAAAD,EAAAh7F,QAAA,WAAAk7F,GAAA,IAAAF,EAAAh7F,QAAA,gBAAAg7F,EAAAh7F,QAAA,SAAAm7F,EAAA,SAAA7kG,GAAoTH,KAAAs6F,KAAAn6F,EAAAH,KAAAiiG,IAAA9hG,EAAAw2F,qBAAAnmE,EAAA+mC,SAAA,yBAAAv3D,MAA0FglG,GAAArlG,UAAAuiG,UAAA,WAAiD,QAAAliG,KAAAmiG,UAAsB6C,EAAArlG,UAAAyxC,OAAA,SAAAjxC,GAAgDH,KAAAkiG,cAAAliG,KAAAiiG,IAAA5iC,iBAAA,QAAAr/D,KAAAilG,UAAA,GAAAjlG,KAAAiiG,IAAA5iC,iBAAA,aAAAr/D,KAAAilG,UAAA,GAAAjlG,KAAAmiG,UAAA,EAAAniG,KAAAklG,cAAA/kG,GAAA,WAAAA,EAAA24F,SAA4LkM,EAAArlG,UAAAkvC,QAAA,WAAgD7uC,KAAAkiG,cAAAliG,KAAAiiG,IAAA/F,oBAAA,QAAAl8F,KAAAilG,UAAAjlG,KAAAiiG,IAAA/F,oBAAA,aAAAl8F,KAAAilG,UAAAjlG,KAAAmiG,UAAA,IAAkJ6C,EAAArlG,UAAAslG,SAAA,SAAA9kG,GAAkD,GAAAM,GAAA,CAAQ,WAAAN,EAAAyM,MAAAnM,EAAAN,EAAAglG,OAAAL,GAAA3kG,EAAAilG,YAAAhlG,EAAAilG,WAAAC,kBAAA7kG,GAAAyjB,EAAA0sB,kBAAAzwC,EAAAilG,YAAAhlG,EAAAilG,WAAAE,iBAAA9kG,GAAA,oBAAAN,EAAAyM,OAAAnM,GAAAN,EAAAqlG,YAAAT,IAAAtkG,GAAA,GAAuO,IAAAxB,GAAAilB,EAAA6C,MAAAtoB,EAAAQ,GAAAe,KAAAylG,OAAA,EAAwCzlG,MAAA4jG,KAAArO,EAAAS,SAAAh2F,KAAAiiG,IAAA9hG,GAAAH,KAAAylG,MAAAxmG,EAAA,IAAAwB,KAAA,kBAAAT,KAAA0lG,MAAA,YAAAjlG,GAAAY,KAAAoK,IAAAhL,GAAA,EAAAT,KAAA0lG,MAAA,WAAAjnG,EAAA,KAAAuB,KAAA0lG,MAAA,KAAA1lG,KAAA2lG,WAAAllG,EAAAT,KAAA4lG,SAAA9iF,WAAA9iB,KAAA6lG,WAAA,KAAA7lG,KAAA0lG,QAAA1lG,KAAA0lG,MAAArkG,KAAAoK,IAAAhN,EAAAgC,GAAA,uBAAAT,KAAA4lG,WAAA3iF,aAAAjjB,KAAA4lG,UAAA5lG,KAAA4lG,SAAA,KAAAnlG,GAAAT,KAAA2lG,aAAAxlG,EAAAmiG,UAAA7hG,OAAA,GAAAT,KAAA0lG,OAAA1lG,KAAAgoC,OAAAvnC,EAAAN,KAAAm2F,kBAAub0O,EAAArlG,UAAAkmG,WAAA,WAAmD7lG,KAAA0lG,MAAA,QAAA1lG,KAAAgoC,OAAAhoC,KAAA2lG,aAAgDX,EAAArlG,UAAAqoC,MAAA,SAAA7nC,EAAAM,GAAiD,OAAAN,EAAA,CAAU,GAAAlB,GAAAe,KAAAs6F,KAAA77F,EAAA,KAAA4C,KAAAuM,KAAAvM,KAAAoK,IAAAtL,EAAA,MAAmDA,GAAA,OAAA1B,MAAA,EAAAA,EAAoB,IAAAC,GAAAO,EAAAw5F,KAAAx5F,EAAAw5F,KAAA/gD,GAAAz4C,EAAAiX,UAAAnT,MAAAjD,EAAAb,EAAAiX,UAAAqyB,UAAA7pC,EAAAD,EAAsEQ,GAAA8lC,OAAAjlC,GAAYumD,SAAA,UAAArmD,KAAA0lG,MAAA,MAAA5M,OAAA94F,KAAAklG,cAAAjmG,EAAA6mC,YAAA7mC,EAAA+pC,UAAAhpC,KAAA4jG,MAAAvK,eAAA,IAAAX,cAAA,IAAwIlC,cAAA/1F,MAAmBjC,EAAAD,QAAAymG,IAC/lEc,qBAAA,IAAAtK,iBAAA,IAAAx8D,kBAAA,IAAAy+D,oBAAA,MAA4FsI,KAAA,SAAA9kG,EAAAzC,EAAAD,GAC/F,YAAa,IAAAg3F,GAAAt0F,EAAA,kBAAAuvB,EAAAvvB,EAAA,mBAAAb,EAAAa,EAAA,qBAAAsiG,EAAA/yE,EAAA0pE,OAAA,WAAA8L,EAAA,SAAAvlG,GAAuTT,KAAAs6F,KAAA75F,EAAAT,KAAAiiG,IAAAxhG,EAAAk2F,qBAAAnmE,EAAA+mC,SAAA,+BAAAv3D,MAAgGgmG,GAAArmG,UAAAuiG,UAAA,WAAsD,QAAAliG,KAAAmiG,UAAsB6D,EAAArmG,UAAAyxC,OAAA,SAAA3wC,GAAqDT,KAAAkiG,cAAAliG,KAAAiiG,IAAAzH,UAAA12F,IAAA,8BAAA9D,KAAAiiG,IAAA5iC,iBAAA,aAAAr/D,KAAAimG,UAAA,GAAAjmG,KAAAmiG,UAAA,EAAAniG,KAAAklG,cAAAzkG,GAAA,WAAAA,EAAAq4F,SAA6LkN,EAAArmG,UAAAkvC,QAAA,WAAqD7uC,KAAAkiG,cAAAliG,KAAAiiG,IAAAzH,UAAAv/B,OAAA,8BAAAj7D,KAAAiiG,IAAA/F,oBAAA,aAAAl8F,KAAAimG,UAAAjmG,KAAAmiG,UAAA,IAAsJ6D,EAAArmG,UAAAumG,gBAAA,WAA6DlmG,KAAAmmG,mBAAA,GAA0BH,EAAArmG,UAAAymG,eAAA,WAA4DpmG,KAAAmmG,mBAAA,GAA0BH,EAAArmG,UAAAsmG,SAAA,SAAAxlG,GAAuD,OAAAA,EAAA41F,QAAAt1F,OAAA,CAAyB,GAAAZ,GAAAo1F,EAAAS,SAAAh2F,KAAAiiG,IAAAxhG,EAAA41F,QAAA,IAAAp3F,EAAAs2F,EAAAS,SAAAh2F,KAAAiiG,IAAAxhG,EAAA41F,QAAA,GAAgFr2F,MAAAqmG,UAAAlmG,EAAA6D,IAAA/E,GAAAe,KAAAsmG,YAAAtmG,KAAAs6F,KAAApkF,UAAAnT,MAAA/C,KAAAumG,cAAAvmG,KAAAs6F,KAAApkF,UAAA0qB,QAAA5gC,KAAAwmG,mBAAA,GAAAxmG,KAAA6jG,YAAAzjG,EAAA0I,SAAAu2D,iBAAA,YAAAr/D,KAAA6hG,SAAA,GAAAzhG,EAAA0I,SAAAu2D,iBAAA,WAAAr/D,KAAAymG,QAAA,KAAyRT,EAAArmG,UAAAkiG,QAAA,SAAAphG,GAAsD,OAAAA,EAAA41F,QAAAt1F,OAAA,CAAyB,GAAAZ,GAAAo1F,EAAAS,SAAAh2F,KAAAiiG,IAAAxhG,EAAA41F,QAAA,IAAAp3F,EAAAs2F,EAAAS,SAAAh2F,KAAAiiG,IAAAxhG,EAAA41F,QAAA,IAAA53F,EAAA0B,EAAA2D,IAAA7E,GAAAuF,IAAA,GAAAjF,EAAAY,EAAA6D,IAAA/E,GAAA2B,EAAArB,EAAA8F,MAAArF,KAAAqmG,UAAAhhG,MAAA3E,EAAAV,KAAAmmG,kBAAA,MAAA5mG,EAAAsG,UAAA7F,KAAAqmG,WAAAhlG,KAAAqM,GAAA5N,EAAAE,KAAAs6F,IAA2N,IAAAt6F,KAAAwmG,eAAA,CAAwB,GAAA9kG,IAAO2kD,SAAA,EAAAyyC,OAAAh5F,EAAAkpC,UAAAvqC,GAAkC,YAAAuB,KAAAwmG,iBAAA9kG,EAAAk/B,QAAA5gC,KAAAumG,cAAA7lG,GAAA,SAAAV,KAAAwmG,gBAAA,WAAAxmG,KAAAwmG,iBAAA9kG,EAAAkkB,KAAA9lB,EAAAoW,UAAAqyB,UAAAvoC,KAAAsmG,YAAA1lG,IAAAd,EAAA48D,OAAA18D,KAAA8jG,sBAAA9jG,KAAA6jG,SAAAx8F,MAAAyf,KAAAC,MAAAnmB,EAAAnC,IAAAqB,EAAA+3F,OAAAn2F,GAAuQ80F,cAAA/1F,QAAkB,CAAK,GAAAE,GAAAU,KAAAoK,IAAA,EAAA7K,GAA/oE,GAA6rES,MAAAoK,IAAA/K,GAA7rE,GAA6rEV,KAAAwmG,eAAA,SAAA7lG,IAAAX,KAAAwmG,eAAA,QAAAxmG,KAAAwmG,iBAAAxmG,KAAAqmG,UAAA9mG,EAAAS,KAAAsmG,YAAAxmG,EAAAoW,UAAAnT,MAAA/C,KAAAumG,cAAAzmG,EAAAoW,UAAA0qB,SAAsNngC,EAAA61F,mBAAoB0P,EAAArmG,UAAA8mG,OAAA,SAAAhmG,GAAqDL,EAAA0I,SAAAozF,oBAAA,YAAAl8F,KAAA6hG,SAAAzhG,EAAA0I,SAAAozF,oBAAA,WAAAl8F,KAAAymG,QAAAzmG,KAAA8jG,qBAAqJ,IAAA3jG,GAAAH,KAAA6jG,SAAA5kG,EAAAe,KAAAs6F,IAAgC,IAAAn6F,EAAAY,OAAA,aAAA9B,GAAAk5F,gBAA4C3B,cAAA/1F,GAAkB,IAAAhC,GAAA0B,IAAAY,OAAA,GAAAxB,EAAAY,EAAA,GAAAS,EAAA3B,EAAAiX,UAAAqyB,UAAAvoC,KAAAsmG,YAAA7nG,EAAA,IAAAiC,EAAAzB,EAAAiX,UAAAqyB,UAAAvoC,KAAAsmG,YAAA/mG,EAAA,IAAAO,EAAAc,EAAAF,EAAAgB,GAAAjD,EAAA,GAAAc,EAAA,QAAAoB,EAAAlC,EAAA,EAAwJ,QAAAiD,GAAAd,IAAAF,EAAA,WAAAzB,GAAAk5F,gBAA8C3B,cAAA/1F,GAAkB,IAAA/B,GAAv6F,IAAu6FoB,EAAA4B,CAA2BL,MAAAoK,IAAA/M,GAAl8F,MAAk8FA,IAAA,EAAl8F,SAAwgG,IAAAI,GAAA,IAAAuC,KAAAoK,IAAA/M,GAAxgG,SAAwgGG,EAAA+B,EAAAlC,EAAAI,EAAA,GAAyED,GAAA,IAAAA,EAAA,GAAAI,EAAA44F,QAAqBjyE,KAAA/mB,EAAAwnD,SAAAvnD,EAAA05F,OAAA+K,EAAAzK,OAAA94F,KAAAklG,cAAAjmG,EAAA6mC,YAAA7mC,EAAA+pC,UAAAroC,KAAgG61F,cAAA/1F,KAAkBulG,EAAArmG,UAAAmkG,oBAAA,WAAiE,OAAArjG,GAAAT,KAAA6jG,SAAA1jG,EAAA2mB,KAAAC,MAAqCtmB,EAAAM,OAAA,GAAAZ,EAAAM,EAAA,WAA0BA,EAAA2vF,SAAW5xF,EAAAD,QAAAynG,IAC72GxK,iBAAA,IAAAx8D,kBAAA,IAAAy+D,oBAAA,MAAmEiJ,KAAA,SAAAzlG,EAAAzC,EAAAD,GACtE,YAAa,IAAAiyB,GAAAvvB,EAAA,gBAAAb,EAAAa,EAAA,kBAAA0lG,EAAA,WAAkFn2E,EAAA+mC,SAAA,+BAAAv3D,MAAoD2mG,GAAAhnG,UAAA6/F,MAAA,SAAA/+F,GAAiC,MAAAT,MAAAs6F,KAAA75F,EAAAL,EAAAi/D,iBAAA,aAAAr/D,KAAA4mG,eAAA,GAAA5mG,KAAAs6F,KAAAh2E,GAAA,UAAAtkB,KAAA6mG,aAAA7mG,MAA6H2mG,EAAAhnG,UAAAs7D,OAAA,WAAkC,MAAA76D,GAAA87F,oBAAA,aAAAl8F,KAAA4mG,eAAA,GAAA5mG,KAAAs6F,KAAA71E,IAAA,UAAAzkB,KAAA6mG,mBAAA7mG,MAAAs6F,KAAAt6F,MAAsI2mG,EAAAhnG,UAAAu7F,cAAA,SAAAz6F,GAA0C,GAAAG,GAAAZ,KAAAs6F,KAAAx0D,YAAApkC,EAAAL,KAAA8D,MAAA,IAAAnF,KAAAs6F,KAAAxgC,WAAA,IAAA35D,EAAAkB,KAAAuG,IAAA,EAAAvG,KAAAkd,KAAAld,KAAA6S,IAAAxS,GAAAL,KAAAoY,MAAAla,EAAA8B,KAAA8D,MAAAvE,EAAAukC,IAAA9jC,KAAAkJ,IAAA,GAAApK,IAAAkB,KAAAkJ,IAAA,GAAApK,GAAAlB,EAAAoC,KAAA8D,MAAAvE,EAAAwkC,IAAA/jC,KAAAkJ,IAAA,GAAApK,IAAAkB,KAAAkJ,IAAA,GAAApK,GAAA1B,EAAAuB,KAAAs6F,KAAAtC,aAAAl4F,EAAAE,KAAAs6F,KAAAlC,WAAA13F,EAAA,EAA6Q,OAAAA,IAAAD,EAAA,KAAAlB,EAAA,IAAAN,EAAA,IAAAyC,EAAA,IAAAA,EAAA,IAAAzC,EAAA,IAAAM,GAAAd,GAAAqB,KAAAY,GAAA,IAAAW,KAAA8D,MAAA,GAAA1G,GAAA,IAAAqB,IAAAY,GAAA,IAAAW,KAAA8D,MAAArF,IAAAY,GAAkHimG,EAAAhnG,UAAAinG,cAAA,WAAyC,GAAAnmG,GAAAL,EAAA0mG,SAAAC,KAAA58E,QAAA,QAAAI,MAAA,IAAsD,OAAA9pB,GAAAM,QAAA,IAAAf,KAAAs6F,KAAA5C,QAAuC/vD,SAAAlnC,EAAA,IAAAA,EAAA,IAAAmlB,MAAAnlB,EAAA,GAAAmgC,UAAAngC,EAAA,OAAAgnC,QAAAhnC,EAAA,UAAoE,IAAMkmG,EAAAhnG,UAAAknG,YAAA,WAAuC,GAAApmG,GAAAT,KAAAk7F,eAA2B96F,GAAA4mG,QAAAC,aAAA,MAAAxmG,IAAqCjC,EAAAD,QAAAooG,IACtrC91E,eAAA,IAAAo+B,iBAAA,MAAwCi4C,KAAA,SAAAjmG,EAAAzC,EAAAD,GAC3C,YAAa,SAAAuR,GAAArP,GAAuBA,EAAA21F,YAAA31F,EAAA21F,WAAA+Q,YAAA1mG,GAA0C,GAAA+vB,GAAAvvB,EAAA,gBAAAijB,EAAAjjB,EAAA,mBAAAb,EAAAa,EAAA,kBAAA0G,EAAA1G,EAAA,kBAAAmmG,EAAAz/F,EAAAy/F,iBAAA7R,EAAAt0F,EAAA,eAAA6wD,EAAA7wD,EAAA,gBAAA8rC,EAAA9rC,EAAA,kBAAA4jF,EAAA5jF,EAAA,2BAAAyiD,EAAAziD,EAAA,qBAAA2lC,EAAA3lC,EAAA,oBAAA0lG,EAAA1lG,EAAA,UAAAomG,EAAApmG,EAAA,mBAAAq2F,EAAAr2F,EAAA,YAAAikC,EAAAjkC,EAAA,kBAAAwkC,EAAAxkC,EAAA,yBAAA2C,EAAA3C,EAAA,0BAAAyrC,EAAAzrC,EAAA,iCAAAk/F,EAAAl/F,EAAA,0BAAAia,EAAAja,EAAA,sBAAmuBA,GAAA,WAAoB,IAAA+8F,IAAuDr2D,QAAA,KAAA/hB,KAAA,EAAAgb,QAAA,EAAA6G,MAAA,EAAA9gB,QAAvD,EAAuD5R,QAAvD,GAAuD6hF,aAAA,EAAAnB,YAAA,EAAAC,SAAA,EAAAC,YAAA,EAAAC,SAAA,EAAAC,UAAA,EAAAC,iBAAA,EAAAC,iBAAA,EAAA0B,YAAA,EAAAsP,MAAA,EAAAO,oBAAA,EAAA3rF,8BAAA,EAAA4rF,uBAAA,EAAAC,aAAA,EAAAlgE,mBAAA,EAAAmgE,qBAAA,EAAAC,iBAAA,KAAAC,iBAAA,MAAmZp7D,EAAA,SAAA9rC,GAAiB,QAAAN,MAAc,GAAAlB,GAAAe,IAAW,IAAAG,EAAAqwB,EAAA7b,UAAmBqpF,EAAA79F,GAAA,MAAAA,EAAAwmB,SAAA,MAAAxmB,EAAA4U,SAAA5U,EAAAwmB,QAAAxmB,EAAA4U,QAAA,SAAAlU,OAAA,uCAAiI,IAAAH,GAAA,GAAAkmC,GAAAzmC,EAAAwmB,QAAAxmB,EAAA4U,QAAA5U,EAAAmnC,kBAA6D7mC,GAAA9B,KAAAqB,KAAAU,EAAAP,GAAAH,KAAA4nG,aAAAznG,EAAAy2F,YAAA52F,KAAA+4D,kBAAA54D,EAAAunG,iBAAA1nG,KAAA6nG,8BAAA1nG,EAAAwb,6BAAA3b,KAAA8nG,uBAAA3nG,EAAAonG,sBAAAvnG,KAAA+nG,aAAA5nG,EAAAqnG,YAAAxnG,KAAAw3F,aAAAr3F,EAAAs3F,YAAAz3F,KAAA41D,qBAAAz1D,EAAAsnG,mBAAiU,IAAAhpG,GAAA0B,EAAAwnG,gBAAyB,IAAA3nG,KAAAqwD,kBAAA5xD,EAAA,SAAAgC,EAAAN,GAA0C,MAAA1B,GAAAgC,EAAAN,KAAgB4/C,IAAAt/C,IAAO,SAAAA,GAAa,OAAOs/C,IAAAt/C,IAAO,gBAAAN,GAAA6nG,UAAA,CAA+B,GAAAloG,GAAAM,EAAA0I,SAAA6kD,eAAAxtD,EAAA6nG,UAAkD,KAAAloG,EAAA,SAAAe,OAAA,cAAAV,EAAA6nG,UAAA,eAAgEhoG,MAAAu6F,WAAAz6F,MAAkBE,MAAAu6F,WAAAp6F,EAAA6nG,SAAiChoG,MAAAk6C,cAAA,GAAA2qC,GAAA1kF,EAAA8nG,WAAAjoG,KAAAkoG,aAAA/nG,EAAA8nG,WAAAz3E,EAAA+mC,SAAA,sHAAAv3D,WAAAmoG,kBAAAnoG,KAAAooG,gBAAApoG,KAAAskB,GAAA,OAAAtkB,KAAAqoG,QAAAlsF,KAAAnc,MAAA,IAAAA,KAAAskB,GAAA,OAAAtkB,KAAAqoG,QAAAlsF,KAAAnc,MAAA,IAAAA,KAAAskB,GAAA,qBAA0XrlB,EAAAi7C,cAAAhhC,IAAA,KAAAja,EAAAgvD,kBAAuC,KAAA7tD,MAAAi/D,iBAAA,SAAAr/D,KAAAsoG,iBAAA,GAAAloG,EAAAi/D,iBAAA,SAAAr/D,KAAAuoG,iBAAA,IAAAlB,EAAArnG,KAAAG,GAAAH,KAAAi7F,MAAA96F,EAAA4mG,OAAA,GAAAJ,IAAAnH,MAAAx/F,WAAAi7F,OAAAj7F,KAAAi7F,MAAA2L,iBAAA5mG,KAAA03F,QAA6P/vD,OAAAxnC,EAAAwnC,OAAA/hB,KAAAzlB,EAAAylB,KAAAgb,QAAAzgC,EAAAygC,QAAA6G,MAAAtnC,EAAAsnC,QAA4DznC,KAAAwoG,YAAAxoG,KAAA+H,SAAA5H,EAAAsoG,SAAAzoG,KAAA0oG,WAAAvoG,EAAAsoG,SAAAtoG,EAAAy2C,OAAA52C,KAAAijE,SAAA9iE,EAAAy2C,OAAuGgJ,yBAAAz/C,EAAAy/C,2BAAoDz/C,EAAAmnG,oBAAAtnG,KAAA2oG,WAAA,GAAAj8D,IAAA1sC,KAAA2oG,WAAA,GAAAxI,GAAAhgG,EAAAyoG,cAAA5oG,KAAAskB,GAAA,wBAAgJtkB,KAAAkW,UAAA0xB,YAAA5nC,KAAA03F,OAAA13F,KAAA42C,MAAAmyC,YAAA/oF,KAAA42C,MAAA0L,OAAAtiD,KAAAwoG,UAA+F/kC,YAAA,MAAgBzjE,KAAAskB,GAAA,OAAAtkB,KAAA6oG,SAAA7oG,KAAAskB,GAAA,cAAAtkB,KAAA8oG,gBAA0EroG,IAAAN,EAAAutD,UAAAjtD,GAAAN,EAAAR,UAAAT,OAAA2D,OAAApC,KAAAd,WAAAQ,EAAAR,UAAAsoB,YAAA9nB,CAAuF,IAAAlB,IAAOqoD,sBAAqBjM,sBAAsB4L,yBAAyB8hD,WAAWp3F,YAAc,OAAAxR,GAAAR,UAAAgpG,WAAA,SAAAloG,EAAAN,OAA4C,KAAAA,GAAAM,EAAA25F,qBAAAj6F,EAAAM,EAAA25F,0BAAA,KAAAj6F,MAAA,YAAyF,IAAAlB,GAAAwB,EAAA6tD,MAAAtuD,MAAAU,EAAAV,KAAAgpG,kBAAA7oG,EAAgD,YAAAA,EAAA0J,QAAA,UAAAnJ,EAAAuoG,aAAAhqG,EAAAyB,EAAAwoG,YAAAxoG,EAAA0/F,YAAAnhG,GAAAe,MAAoFG,EAAAR,UAAAwpG,cAAA,SAAA1oG,GAAuC,MAAAA,GAAA8tD,SAAAvuD,YAA6BG,EAAAR,UAAAypG,SAAA,SAAA3oG,EAAAN,GAAoC,MAAAqwB,GAAA0K,SAAA,4FAAAl7B,KAAAwoG,SAAA3+F,QAAApJ,IAAA,QAAAA,EAAAT,WAAAwoG,SAAAnhG,KAAA5G,GAAAT,KAAAqpG,cAAAlpG,EAAAH,KAAA42C,OAAA52C,KAAA42C,MAAAoyC,gBAAAhpF,KAAAqoG,SAAA,KAA+PloG,EAAAR,UAAA2pG,YAAA,SAAA7oG,EAAAN,GAAuCqwB,EAAA0K,SAAA,2FAA0G,IAAAj8B,GAAAe,KAAAwoG,SAAA3+F,QAAApJ,EAA+B,OAAAxB,GAAA,QAAAwB,EAAAT,WAAAwoG,SAAAxgG,OAAA/I,EAAA,GAAAe,KAAAqpG,cAAAlpG,EAAAH,KAAA42C,OAAA52C,KAAA42C,MAAAoyC,gBAAAhpF,KAAAqoG,SAAA,KAAiIloG,EAAAR,UAAA+oG,WAAA,SAAAjoG,EAAAN,GAAsCqwB,EAAA0K,SAAA,2FAA0G,QAAAj8B,MAAYyB,EAAA,EAAKA,EAAAD,EAAAM,OAAWL,IAAA,KAAAD,EAAAC,KAAAzB,EAAAwB,EAAAC,KAAA,EAA4B,OAAAV,MAAAwoG,SAAAtpG,OAAAmZ,KAAApZ,GAAAe,KAAAqpG,cAAAlpG,EAAAH,KAAA42C,OAAA52C,KAAA42C,MAAAoyC,gBAAAhpF,KAAAqoG,SAAA,IAAiHloG,EAAAR,UAAA4pG,SAAA,SAAA9oG,GAAkC,MAAA+vB,GAAA0K,SAAA,4FAAAl7B,KAAAwoG,SAAA3+F,QAAApJ,IAAA,GAA6IN,EAAAR,UAAA6pG,WAAA,WAAmC,MAAAh5E,GAAA0K,SAAA,4FAAAl7B,KAAAwoG,UAA+HroG,EAAAR,UAAAoI,OAAA,WAA+B,GAAAtH,GAAAT,KAAAypG,uBAAAtpG,EAAAM,EAAA,GAAAxB,EAAAwB,EAAA,EAAgD,OAAAT,MAAA0pG,cAAAvpG,EAAAlB,GAAAe,KAAAkW,UAAAnO,OAAA5H,EAAAlB,GAAAe,KAAAgvD,QAAAjnD,OAAA5H,EAAAlB,GAAAe,KAAA6tD,KAAA,aAAAA,KAAA,QAAAA,KAAA,UAAAA,KAAA,YAAsJ1tD,EAAAR,UAAAgqG,UAAA,WAAkC,GAAAlpG,GAAA,GAAAglC,GAAAzlC,KAAAkW,UAAAozB,cAAA,GAAA1lC,GAAA,EAAA5D,KAAAkW,UAAAhP,SAAAlH,KAAAkW,UAAAozB,cAAA,GAAA1lC,GAAA5D,KAAAkW,UAAAjP,MAAA,IAAyJ,QAAAjH,KAAAkW,UAAAxQ,OAAA1F,KAAAkW,UAAAuxB,SAAAhnC,EAAAkU,OAAA3U,KAAAkW,UAAAozB,cAAA,GAAA1lC,GAAA5D,KAAAkW,UAAAtN,KAAA7G,EAAA,KAAAtB,EAAAkU,OAAA3U,KAAAkW,UAAAozB,cAAA,GAAA1lC,GAAA,EAAA5D,KAAAkW,UAAAtN,KAAAjH,MAAAlB,GAA8MN,EAAAR,UAAAiqG,aAAA,WAAqC,MAAA5pG,MAAAkW,UAAA8wB,UAAA,IAAAhnC,KAAAkW,UAAA8wB,SAAAjmC,QAAAf,KAAAkW,UAAA6zB,UAAA,IAAA/pC,KAAAkW,UAAA6zB,SAAAhpC,OAAA,GAAA0kC,IAAAzlC,KAAAkW,UAAA6zB,SAAA,GAAA/pC,KAAAkW,UAAA8wB,SAAA,KAAAhnC,KAAAkW,UAAA6zB,SAAA,GAAA/pC,KAAAkW,UAAA8wB,SAAA,WAAuQ7mC,EAAAR,UAAAuoG,aAAA,SAAAznG,GAAsC,GAAAA,EAAA,CAAM,GAAAN,GAAAslC,EAAA1/B,QAAAtF,EAA8BT,MAAAkW,UAAA6zB,UAAA5pC,EAAA+lC,UAAA/lC,EAAAkmC,WAAArmC,KAAAkW,UAAA8wB,UAAA7mC,EAAAmmC,WAAAnmC,EAAAgmC,YAAAnmC,KAAAkW,UAAAkyB,aAAApoC,KAAAqoG,cAAiJ,QAAA5nG,OAAA,KAAAA,IAAAT,KAAAkW,UAAA6zB,SAAA,KAAA/pC,KAAAkW,UAAA8wB,SAAA,KAAAhnC,KAAAqoG,UAAsG,OAAAroG,OAAYG,EAAAR,UAAAkqG,WAAA,SAAAppG,GAAoC,IAAAA,EAAA,OAAAA,OAAA,KAAAA,EAA9+K,EAA8+KA,IAA9+K,GAA8+KA,GAAAT,KAAAkW,UAAAnB,QAAA,MAAA/U,MAAAkW,UAAAyQ,QAAAlmB,EAAAT,KAAAqoG,UAAAroG,KAAA85D,UAAAr5D,GAAAT,KAAAmjE,QAAA1iE,GAAAT,IAA8K,UAAAa,OAAA,iEAAiGV,EAAAR,UAAAmqG,WAAA,WAAmC,MAAA9pG,MAAAkW,UAAAyQ,SAA8BxmB,EAAAR,UAAAoqG,WAAA,SAAAtpG,GAAoC,IAAAA,EAAA,OAAAA,OAAA,KAAAA,EAAl2L,GAAk2LA,IAAAT,KAAAkW,UAAAyQ,QAAA,MAAA3mB,MAAAkW,UAAAnB,QAAAtU,EAAAT,KAAAqoG,UAAAroG,KAAA85D,UAAAr5D,GAAAT,KAAAmjE,QAAA1iE,GAAAT,IAA2J,UAAAa,OAAA,qDAAoEV,EAAAR,UAAAqqG,WAAA,WAAmC,MAAAhqG,MAAAkW,UAAAnB,SAA8B5U,EAAAR,UAAAmU,QAAA,SAAArT,GAAiC,MAAAT,MAAAkW,UAAAkzB,cAAAlE,EAAAn/B,QAAAtF,KAAuDN,EAAAR,UAAAqpC,UAAA,SAAAvoC,GAAmC,MAAAT,MAAAkW,UAAAozB,cAAA1lC,EAAAmC,QAAAtF,KAAsDN,EAAAR,UAAA2kB,GAAA,SAAAnkB,EAAAlB,EAAAyB,GAAgC,GAAAjC,GAAAuB,IAAW,aAAAU,EAAA,MAAAD,GAAAd,UAAA2kB,GAAA3lB,KAAAqB,KAAAG,EAAAlB,EAAmD,IAAAa,GAAA,WAAiB,kBAAAK,GAAA,cAAAA,EAAA,CAAsC,GAAAM,IAAA,CAAS,QAAOwgC,MAAAhiC,EAAAgrG,SAAAvpG,EAAAwpG,WAA8BC,UAAA,SAAArqG,GAAsB,GAAAP,GAAAd,EAAAkyB,SAAA1xB,GAAAR,EAAAq2D,sBAAAh1D,EAAAqW,OAAqDhK,QAAAlN,OAAgBM,GAAAwB,OAAAN,OAAA,EAAAC,EAAA/B,KAAAF,EAAA+xB,EAAA7b,QAAwCpC,SAAAhT,GAAWO,GAAI8M,KAAAzM,MAAOM,GAAA,GAAS2pG,SAAA,WAAqB3pG,GAAA,KAAQ,kBAAAN,GAAA,aAAAA,EAAA,CAAqC,GAAAL,IAAA,CAAS,QAAOmhC,MAAAhiC,EAAAgrG,SAAAvpG,EAAAwpG,WAA8BC,UAAA,SAAA1pG,IAAsBhC,EAAAkyB,SAAA1xB,GAAAR,EAAAq2D,sBAAAr0D,EAAA0V,OAAgDhK,QAAAlN,SAAW8B,OAAAjB,GAAA,EAAAA,OAAA,EAAAY,EAAA/B,KAAAF,EAAA+xB,EAAA7b,UAAkDlU,GAAImM,KAAAzM,OAAWiqG,SAAA,SAAA3pG,GAAsBX,OAAA,EAAAY,EAAA/B,KAAAF,EAAA+xB,EAAA7b,UAAgClU,GAAImM,KAAAzM,SAAc,GAAAZ,GAAA,SAAAkB,GAAkB,GAAAN,GAAA1B,EAAAkyB,SAAA1xB,GAAAR,EAAAq2D,sBAAAr0D,EAAA0V,OAAqDhK,QAAAlN,OAAgBkB,GAAAY,QAAAL,EAAA/B,KAAAF,EAAA+xB,EAAA7b,QAAgCpC,SAAApS,GAAWM,IAAM,QAAOwgC,MAAAhiC,EAAAgrG,SAAAvpG,EAAAwpG,WAAAtpG,KAAkCA,EAAAT,GAAAZ,EAAAqB,GAAY,IAAAA,KAASZ,MAAAqqG,oBAAArqG,KAAAqqG,wBAAqDrqG,KAAAqqG,oBAAAlqG,GAAAH,KAAAqqG,oBAAAlqG,OAAAH,KAAAqqG,oBAAAlqG,GAAAkH,KAAAvH,EAAiG,QAAAP,KAAAO,GAAAoqG,UAAAzrG,EAAA6lB,GAAA/kB,EAAAO,EAAAoqG,UAAA3qG,GAAgD,OAAAS,OAAYG,EAAAR,UAAA8kB,IAAA,SAAAtkB,EAAAlB,EAAAyB,GAAiC,GAAAjC,GAAAuB,IAAW,aAAAU,EAAA,MAAAD,GAAAd,UAAA8kB,IAAA9lB,KAAAqB,KAAAG,EAAAlB,EAAoD,IAAAe,KAAAqqG,qBAAArqG,KAAAqqG,oBAAAlqG,GAAA,OAAAL,GAAAE,KAAAqqG,oBAAAlqG,GAAAZ,EAAA,EAAmGA,EAAAO,EAAAiB,OAAWxB,IAAA,CAAK,GAAAqB,GAAAd,EAAAP,EAAW,IAAAqB,EAAAqgC,QAAAhiC,GAAA2B,EAAAqpG,WAAAvpG,EAAA,CAAgC,OAAAgB,KAAAd,GAAAspG,UAAAzrG,EAAAgmB,IAAA/iB,EAAAd,EAAAspG,UAAAxoG,GAAiD,OAAA5B,GAAAkI,OAAAzI,EAAA,GAAAd,GAAwB,MAAAuB,OAAYG,EAAAR,UAAAm1D,sBAAA,WAA8C,OAAAr0D,MAAAN,EAAA4jB,UAAAhjB,OAAgCZ,KAAIM,EAAAN,GAAA4jB,UAAA5jB,EAAmB,IAAAlB,GAAAyB,IAAW,YAAAD,EAAAM,QAAA9B,EAAA8kB,UAAA,GAAArjB,EAAAqjB,UAAA,QAAAtjB,EAAAM,QAAA,SAAAN,GAA8E,MAAAA,aAAAmD,IAAAoC,MAAAC,QAAAxF,IAA4CA,EAAA,IAAAxB,EAAAwB,EAAA,OAAAA,EAAAM,SAAAL,EAAAD,EAAA,IAAAT,KAAA42C,MAAA52C,KAAA42C,MAAAke,sBAAA90D,KAAAsqG,mBAAArrG,GAAAyB,EAAAV,KAAAkW,UAAA0P,KAAA5lB,KAAAkW,UAAAxQ,WAA2JvF,EAAAR,UAAA2qG,mBAAA,SAAA7pG,GAA4C,GAAAN,GAAAH,SAAW,KAAAS,OAAAmD,EAAAmC,SAAA,MAAAnC,EAAAmC,SAAA/F,KAAAkW,UAAAjP,MAAAjH,KAAAkW,UAAAhP,UAAmG,IAAAjI,EAAM,IAAAwB,YAAAmD,IAAA,gBAAAnD,GAAA,GAA8CxB,GAAA2E,EAAAmC,QAAAtF,QAAqB,CAAK,GAAAC,IAAAkD,EAAAmC,QAAAtF,EAAA,IAAAmD,EAAAmC,QAAAtF,EAAA,IAAgDxB,IAAAyB,EAAA,MAAAkD,GAAAlD,EAAA,GAAAqB,EAAArB,EAAA,GAAAiB,GAAAjB,EAAA,MAAAkD,GAAAlD,EAAA,GAAAqB,EAAArB,EAAA,GAAAiB,GAAAjB,EAAA,IAAqE,MAAAzB,KAAAuT,IAAA,SAAA/R,GAA2B,MAAAN,GAAA+V,UAAAuyB,gBAAAhoC,MAAwCN,EAAAR,UAAAs1D,oBAAA,SAAAx0D,EAAAN,GAA+C,MAAAH,MAAA42C,MAAAqe,oBAAAx0D,EAAAN,IAA2CA,EAAAR,UAAAsjE,SAAA,SAAAxiE,EAAAN,GAAoC,KAAAA,IAAA,IAAAA,EAAAqoF,OAAAroF,EAAAy/C,2BAAA5/C,KAAA42C,OAAAn2C,iBAAAssC,KAAA,gBAAAtsC,GAAA,IAAgH,MAAAT,MAAA42C,MAAA6zC,SAAAhqF,IAAAT,KAAAqoG,SAAA,GAAAroG,KAAqD,MAAAS,GAAS+vB,EAAA0K,SAAA,kCAAAz6B,EAAAsjE,SAAAtjE,EAAAmrB,OAAAnrB,GAAA,yCAAgH,MAAAT,MAAA42C,QAAA52C,KAAA42C,MAAA6Y,iBAAA,MAAAzvD,KAAA42C,MAAAu0C,UAAAnrF,KAAAykB,IAAA,SAAAzkB,KAAA42C,MAAAy0C,gBAAArrF,KAAAykB,IAAA,QAAAzkB,KAAA42C,MAAAy0C,gBAAArrF,KAAAykB,IAAA,OAAAzkB,KAAA42C,MAAAy0C,iBAAA5qF,GAAAT,KAAA42C,MAAAn2C,YAAAssC,GAAAtsC,EAAA,GAAAssC,GAAAtsC,EAAAT,KAAAG,OAAyQH,KAAA42C,MAAA6Y,iBAAAzvD,MAAoC42C,MAAA52C,KAAA42C,QAAiB52C,KAAAskB,GAAA,SAAAtkB,KAAA42C,MAAAy0C,gBAAArrF,KAAAskB,GAAA,QAAAtkB,KAAA42C,MAAAy0C,gBAAArrF,KAAAskB,GAAA,OAAAtkB,KAAA42C,MAAAy0C,gBAAArrF,YAAA42C,MAAA,KAAA52C,OAAgKG,EAAAR,UAAA4qG,SAAA,WAAiC,GAAAvqG,KAAA42C,MAAA,MAAA52C,MAAA42C,MAAAjkB,aAA4CxyB,EAAAR,UAAA6qG,cAAA,WAAsC,MAAAxqG,MAAA42C,MAAA52C,KAAA42C,MAAA0K,SAAA9wB,EAAA0K,SAAA,wCAA2F/6B,EAAAR,UAAAyiE,UAAA,SAAA3hE,EAAAN,GAAqC,MAAAH,MAAA42C,MAAAwrB,UAAA3hE,EAAAN,GAAAH,KAAAqoG,SAAA,GAAAroG,MAAuDG,EAAAR,UAAA+qF,eAAA,SAAAjqF,GAAwC,GAAAN,GAAAH,KAAA42C,OAAA52C,KAAA42C,MAAA0P,aAAA7lD,EAA6C,iBAAAN,MAAAH,MAAA6tD,KAAA,SAA0CjiC,MAAA,GAAA/qB,OAAA,+BAAAJ,EAAA,OAAsDN,EAAAmhD,UAAanhD,EAAAR,UAAA8qG,eAAA,WAAuC,GAAAhqG,GAAAT,KAAA42C,OAAA52C,KAAA42C,MAAA0P,YAA0C,QAAAnmD,KAAAM,GAAA,CAAgB,GAAAxB,GAAAwB,EAAAN,GAAAO,EAAAzB,EAAAy5D,MAAsB,QAAAj6D,KAAAiC,GAAA,CAAgB,GAAAZ,GAAAY,EAAAjC,EAAW,eAAAqB,EAAA6wD,OAAA,YAAA7wD,EAAA6wD,MAAA,UAAqD,UAASxwD,EAAAR,UAAAsrF,cAAA,SAAAxqF,EAAAN,EAAAlB,GAA2C,MAAAe,MAAA42C,MAAAq0C,cAAAxqF,EAAAN,EAAAlB,IAAuCkB,EAAAR,UAAA2yD,aAAA,SAAA7xD,GAAsC,MAAAT,MAAA42C,MAAA0b,aAAA7xD,GAAAT,KAAAqoG,SAAA,GAAAroG,MAAwDG,EAAAR,UAAAw5C,UAAA,SAAA14C,GAAmC,MAAAT,MAAA42C,MAAAuC,UAAA14C,IAA+BN,EAAAR,UAAAsiD,SAAA,SAAAxhD,EAAAN,EAAAlB,OAAsC,KAAAA,SAAmB,IAAAyB,GAAAzB,EAAA66B,eAAmB,KAAAp5B,MAAA,EAAkB,IAAAjC,GAAAQ,EAAAg8B,GAAY,aAAAx8B,OAAA,GAAA0B,YAAAinG,GAAAjnG,EAAA+jB,EAAA9Z,aAAAjK,OAA8E,aAAAA,EAAA8G,WAAA,KAAA9G,EAAA+G,OAAA,MAAAlH,MAAA6tD,KAAA,SAAsEjiC,MAAA,GAAA/qB,OAAA,qMAAsNb,MAAA42C,MAAAqL,SAAAxhD,GAAuB6J,KAAAnK,EAAA25B,WAAAp5B,EAAAu6B,IAAAx8B,KAA4B0B,EAAAR,UAAAuiD,YAAA,SAAAzhD,GAAqCT,KAAA42C,MAAAsL,YAAAzhD,IAA0BN,EAAAR,UAAA+qG,UAAA,SAAAjqG,EAAAN,GAAqC2xD,EAAA9P,SAAAhiD,KAAAqwD,kBAAA5vD,EAAAqxD,EAAAxC,aAAA2D,OAAA9yD,IAAmEA,EAAAR,UAAA+iE,SAAA,SAAAjiE,EAAAN,GAAoC,MAAAH,MAAA42C,MAAA8rB,SAAAjiE,EAAAN,GAAAH,KAAAqoG,SAAA,GAAAroG,MAAsDG,EAAAR,UAAAirF,UAAA,SAAAnqF,EAAAN,GAAqC,MAAAH,MAAA42C,MAAAg0C,UAAAnqF,EAAAN,GAAAH,KAAAqoG,SAAA,GAAAroG,MAAuDG,EAAAR,UAAA8iE,YAAA,SAAAhiE,GAAqC,MAAAT,MAAA42C,MAAA6rB,YAAAhiE,GAAAT,KAAAqoG,SAAA,GAAAroG,MAAuDG,EAAAR,UAAAgxB,SAAA,SAAAlwB,GAAkC,MAAAT,MAAA42C,MAAAjmB,SAAAlwB,IAA8BN,EAAAR,UAAAkjE,UAAA,SAAApiE,EAAAN,GAAqC,MAAAH,MAAA42C,MAAAisB,UAAApiE,EAAAN,GAAAH,KAAAqoG,SAAA,GAAAroG,MAAuDG,EAAAR,UAAAmjE,kBAAA,SAAAriE,EAAAN,EAAAlB,GAA+C,MAAAe,MAAA42C,MAAAksB,kBAAAriE,EAAAN,EAAAlB,GAAAe,KAAAqoG,SAAA,GAAAroG,MAAiEG,EAAAR,UAAAmrF,UAAA,SAAArqF,GAAmC,MAAAT,MAAA42C,MAAAk0C,UAAArqF,IAA+BN,EAAAR,UAAAijE,iBAAA,SAAAniE,EAAAN,EAAAlB,EAAAyB,GAAgD,MAAAV,MAAA42C,MAAAgsB,iBAAAniE,EAAAN,EAAAlB,EAAAyB,GAAAV,KAAAqoG,SAAA,GAAAroG,MAAkEG,EAAAR,UAAA21C,iBAAA,SAAA70C,EAAAN,EAAAlB,GAA8C,MAAAe,MAAA42C,MAAAtB,iBAAA70C,EAAAN,EAAAlB,IAA0CkB,EAAAR,UAAAgjE,kBAAA,SAAAliE,EAAAN,EAAAlB,GAA+C,MAAAe,MAAA42C,MAAA+rB,kBAAAliE,EAAAN,EAAAlB,GAAAe,KAAAqoG,SAAA,GAAAroG,MAAiEG,EAAAR,UAAA43B,kBAAA,SAAA92B,EAAAN,GAA6C,MAAAH,MAAA42C,MAAArf,kBAAA92B,EAAAN,IAAyCA,EAAAR,UAAAg3C,SAAA,SAAAl2C,GAAkC,MAAAT,MAAA42C,MAAAD,SAAAl2C,GAAAT,KAAAqoG,SAAA,GAAAroG,MAAoDG,EAAAR,UAAA+lF,SAAA,WAAiC,MAAA1lF,MAAA42C,MAAA8uC,YAA6BvlF,EAAAR,UAAAm8F,aAAA,WAAqC,MAAA97F,MAAAu6F,YAAuBp6F,EAAAR,UAAAg3F,mBAAA,WAA2C,MAAA32F,MAAA2qG,kBAA6BxqG,EAAAR,UAAA0uD,UAAA,WAAkC,MAAAruD,MAAA4qG,SAAoBzqG,EAAAR,UAAA8pG,qBAAA,WAA6C,GAAAhpG,GAAA,EAAAN,EAAA,CAAY,OAAAH,MAAAu6F,aAAA95F,EAAAT,KAAAu6F,WAAAe,aAAA,IAAAn7F,EAAAH,KAAAu6F,WAAAsQ,cAAA,MAAApqG,EAAAN,IAAuGA,EAAAR,UAAAwoG,gBAAA,WAAwC,GAAA1nG,GAAAT,KAAAu6F,UAAsB95F,GAAA+5F,UAAA12F,IAAA,eAAgC,IAAA3D,GAAAH,KAAA2qG,iBAAApV,EAAA1yF,OAAA,kCAAApC,EAA4ET,MAAA4nG,cAAAznG,EAAAq6F,UAAA12F,IAAA,wBAAA9D,KAAA4qG,QAAArV,EAAA1yF,OAAA,2BAAA1C,GAAAH,KAAA4qG,QAAAh0D,MAAAG,SAAA,WAAA/2C,KAAA4qG,QAAAvrC,iBAAA,mBAAAr/D,KAAA8qG,cAAA,GAAA9qG,KAAA4qG,QAAAvrC,iBAAA,uBAAAr/D,KAAA+qG,kBAAA,GAAA/qG,KAAA4qG,QAAAnO,aAAA,gBAAAz8F,KAAA4qG,QAAAnO,aAAA,mBAAsY,IAAAx9F,GAAAe,KAAAypG,sBAAkCzpG,MAAA0pG,cAAAzqG,EAAA,GAAAA,EAAA,GAA8B,IAAAyB,GAAAV,KAAAgrG,kBAAAzV,EAAA1yF,OAAA,mCAAApC,GAAAhC,EAAAuB,KAAAgpG,sBAA0G,qDAAAltF,QAAA,SAAArb,GAA0EhC,EAAAgC,GAAA80F,EAAA1yF,OAAA,uBAAApC,EAAAC,MAA8CP,EAAAR,UAAA+pG,cAAA,SAAAjpG,EAAAN,GAAyC,GAAAlB,GAAAmB,EAAAwwC,kBAAA,CAAiC5wC,MAAA4qG,QAAA3jG,MAAAhI,EAAAwB,EAAAT,KAAA4qG,QAAA1jG,OAAAjI,EAAAkB,EAAAH,KAAA4qG,QAAAh0D,MAAA3vC,MAAAxG,EAAA,KAAAT,KAAA4qG,QAAAh0D,MAAA1vC,OAAA/G,EAAA,MAAgHA,EAAAR,UAAAyoG,cAAA,WAAsC,GAAA3nG,GAAA+vB,EAAA7b,QAAmBgH,6BAAA3b,KAAA6nG,8BAAAN,sBAAAvnG,KAAA8nG,wBAAkH5sF,EAAA8B,wBAAA7c,EAAAH,KAAA4qG,QAAA3hG,WAAA,QAAAxI,IAAAT,KAAA4qG,QAAA3hG,WAAA,qBAAAxI,EAA2H,KAAAN,EAAA,WAAAH,MAAA6tD,KAAA,SAAqCjiC,MAAA,GAAA/qB,OAAA,+BAAgDb,MAAAgvD,QAAA,GAAAtL,GAAAvjD,EAAAH,KAAAkW,YAA2C/V,EAAAR,UAAAmrG,aAAA,SAAArqG,GAAsCA,EAAA61F,iBAAAt2F,KAAAirG,WAAA/mF,EAAAgnF,YAAAlrG,KAAAirG,UAAAjrG,KAAAirG,SAAA,MAAAjrG,KAAA6tD,KAAA,oBAAwH2oC,cAAA/1F,KAAkBN,EAAAR,UAAAorG,iBAAA,SAAAtqG,GAA0CT,KAAAooG,gBAAApoG,KAAA+H,SAAA/H,KAAAqoG,UAAAroG,KAAA6tD,KAAA,wBAAoF2oC,cAAA/1F,KAAkBN,EAAAR,UAAA2hD,OAAA,WAA+B,OAAAthD,KAAAmrG,cAAAnrG,KAAAorG,kBAAAprG,KAAA42C,QAAA52C,KAAA42C,MAAA0K,WAAmFnhD,EAAAR,UAAA0oG,QAAA,SAAA5nG,GAAiC,MAAAT,MAAA42C,OAAA52C,KAAAmrG,YAAAnrG,KAAAmrG,aAAA1qG,EAAAT,KAAAorG,eAAA,EAAAprG,KAAAiuD,YAAAjuD,YAA0GG,EAAAR,UAAA0rG,QAAA,WAAgC,MAAArrG,MAAA42C,OAAA52C,KAAAmrG,cAAAnrG,KAAAmrG,aAAA,EAAAnrG,KAAA42C,MAAA0L,OAAAtiD,KAAAwoG,SAAAxoG,KAAAqpG,eAAArpG,KAAAqpG,cAAA,KAAArpG,KAAA42C,MAAAgzC,aAAA5pF,KAAAkW,UAAA0P,OAAA5lB,KAAA42C,OAAA52C,KAAAorG,gBAAAprG,KAAAorG,eAAA,EAAAprG,KAAA42C,MAAAw0C,eAAAprF,KAAAkW,YAAAlW,KAAAgvD,QAAA9I,OAAAlmD,KAAA42C,OAAsT0Q,mBAAAtnD,KAAAsnD,mBAAAL,sBAAAjnD,KAAAonD,uBAAAxL,SAAA57C,KAAA47C,SAAAC,QAAA77C,KAAA67C,UAAyI77C,KAAA6tD,KAAA,UAAA7tD,KAAAshD,WAAAthD,KAAAywD,UAAAzwD,KAAAywD,SAAA,EAAAzwD,KAAA6tD,KAAA,SAAA7tD,KAAAirG,SAAA,KAAAjrG,KAAAk6C,cAAA6qC,YAAA/kF,KAAAmrG,aAAA,IAAAnrG,KAAAorG,eAAAprG,KAAAsrG,UAAAtrG,KAAAmrG,cAAAnrG,KAAAiuD,YAAAjuD,MAA4OG,EAAAR,UAAAs7D,OAAA,WAA+Bj7D,KAAAi7F,OAAAj7F,KAAAi7F,MAAAhgC,SAAA/2C,EAAAgnF,YAAAlrG,KAAAirG,UAAAjrG,KAAAirG,SAAA,KAAAjrG,KAAAijE,SAAA,eAAA7iE,MAAA87F,oBAAA,SAAAl8F,KAAAuoG,iBAAA,GAAAnoG,EAAA87F,oBAAA,SAAAl8F,KAAAsoG,iBAAA,GAAuP,IAAA7nG,GAAAT,KAAAgvD,QAAAzkB,GAAAG,aAAA,qBAAyDjqC,MAAA8qG,cAAAz7F,EAAA9P,KAAA2qG,kBAAA76F,EAAA9P,KAAAgrG,mBAAAhrG,KAAAu6F,WAAAC,UAAAv/B,OAAA,gBAAAj7D,KAAA6tD,KAAA,WAA6J1tD,EAAAR,UAAAsuD,UAAA,WAAkCjuD,KAAA42C,QAAA52C,KAAAirG,WAAAjrG,KAAAirG,SAAA/mF,EAAAiwC,MAAAn0D,KAAAqrG,WAAwElrG,EAAAR,UAAA2oG,gBAAA,WAAwCtoG,KAAAqoG,WAAeloG,EAAAR,UAAA4oG,gBAAA,WAAwCvoG,KAAA+nG,cAAA/nG,KAAA08D,OAAA30D,SAAAsgG,WAAkDppG,EAAAqoD,mBAAAhoD,IAAA,WAAqC,QAAAU,KAAAwrG,qBAAiCvsG,EAAAqoD,mBAAApuC,IAAA,SAAAzY,GAAsCT,KAAAwrG,sBAAA/qG,IAAAT,KAAAwrG,oBAAA/qG,EAAAT,KAAAqoG,YAA0EppG,EAAAo8C,mBAAA/7C,IAAA,WAAqC,QAAAU,KAAAyrG,qBAAiCxsG,EAAAo8C,mBAAAniC,IAAA,SAAAzY,GAAsCT,KAAAyrG,sBAAAhrG,IAAAT,KAAAyrG,oBAAAhrG,EAAAT,KAAA42C,MAAAy0C,mBAAuFpsF,EAAAgoD,sBAAA3nD,IAAA,WAAwC,QAAAU,KAAAonD,wBAAoCnoD,EAAAgoD,sBAAA/tC,IAAA,SAAAzY,GAAyCT,KAAAonD,yBAAA3mD,IAAAT,KAAAonD,uBAAA3mD,EAAAT,KAAAqoG,YAAgFppG,EAAA8pG,QAAAzpG,IAAA,WAA0B,QAAAU,KAAAsrG,UAAsBrsG,EAAA8pG,QAAA7vF,IAAA,SAAAzY,GAA2BT,KAAAsrG,SAAA7qG,EAAAT,KAAAqoG,WAA+BppG,EAAA0S,SAAArS,IAAA,WAA2B,QAAAU,KAAA0rG,WAAuBzsG,EAAA0S,SAAAuH,IAAA,SAAAzY,GAA4BT,KAAA0rG,UAAAjrG,EAAAT,KAAAqoG,WAAgCloG,EAAAR,UAAAkpG,QAAA,SAAApoG,GAAiCT,KAAAqoG,QAAA,UAAA5nG,EAAAwvD,UAAAjwD,KAAA6tD,KAAAptD,EAAAwvD,SAAA,OAAAxvD,IAAkEN,EAAAR,UAAAmpG,eAAA,SAAAroG,GAAwCT,KAAA6tD,KAAAptD,EAAAwvD,SAAA,cAAAxvD,IAAsCvB,OAAAwd,iBAAAvc,EAAAR,UAAAV,GAAAkB,GAA0Cm3F,EAAS94F,GAAAD,QAAAguC,IACnojBknB,iBAAA,GAAA+J,wBAAA,GAAAmuC,mBAAA,GAAAC,oBAAA,GAAAC,0BAAA,IAAAC,iBAAA,IAAA16C,eAAA,IAAAngB,kBAAA,IAAA4lD,cAAA,IAAAhmE,eAAA,IAAAo+B,iBAAA,IAAA88C,kBAAA,IAAAC,WAAA,IAAAC,gCAAA,IAAAC,yBAAA,IAAAC,WAAA,IAAAC,SAAA,IAAAr+F,yBAAA,EAAAygC,sBAAA,KAAwa69D,KAAA,SAAAprG,EAAAzC,EAAAD,GAC3a,YAAa,IAAAg3F,GAAAt0F,EAAA,eAAAikC,EAAAjkC,EAAA,kBAAA2C,EAAA3C,EAAA,0BAAAqrG,EAAArrG,EAAA,sBAAA0G,EAAA1G,EAAA,gBAAAs2D,EAAA5vD,EAAA4vD,QAAAzqB,EAAA,SAAArsC,EAAAN,GAAqNH,KAAAusG,QAAA3oG,EAAAmC,QAAA5F,KAAAksC,SAAA,MAAAkrB,GAAA,yBAAAv3D,MAAAS,MAAA80F,EAAA1yF,OAAA,QAAApC,EAAA+5F,UAAA12F,IAAA,mBAAA9D,KAAAwsG,SAAA/rG,EAAAT,KAAAysG,OAAA,KAAqL3/D,GAAAntC,UAAA6/F,MAAA,SAAA/+F,GAAmC,MAAAT,MAAAi7D,SAAAj7D,KAAAs6F,KAAA75F,IAAAk2F,qBAAAyJ,YAAApgG,KAAAwsG,UAAA/rG,EAAA6jB,GAAA,OAAAtkB,KAAAqoG,SAAA5nG,EAAA6jB,GAAA,UAAAtkB,KAAAqoG,SAAAroG,KAAAqoG,UAAAroG,KAAAs6F,KAAAh2E,GAAA,QAAAtkB,KAAA0sG,aAAA1sG,MAAqM8sC,EAAAntC,UAAAs7D,OAAA,WAAoC,MAAAj7D,MAAAs6F,OAAAt6F,KAAAs6F,KAAA71E,IAAA,QAAAzkB,KAAA0sG,aAAA1sG,KAAAs6F,KAAA71E,IAAA,OAAAzkB,KAAAqoG,SAAAroG,KAAAs6F,KAAA71E,IAAA,UAAAzkB,KAAAqoG,eAAAroG,MAAAs6F,MAAA/E,EAAAt6B,OAAAj7D,KAAAwsG,UAAAxsG,KAAAysG,QAAAzsG,KAAAysG,OAAAxxC,SAAAj7D,MAAuN8sC,EAAAntC,UAAAgtG,UAAA,WAAuC,MAAA3sG,MAAA4sG,SAAoB9/D,EAAAntC,UAAA4/F,UAAA,SAAA9+F,GAAwC,MAAAT,MAAA4sG,QAAA1nE,EAAAn/B,QAAAtF,GAAAT,KAAA4jG,KAAA,KAAA5jG,KAAAysG,QAAAzsG,KAAAysG,OAAAlN,UAAAv/F,KAAA4sG,SAAA5sG,KAAAqoG,UAAAroG,MAA0H8sC,EAAAntC,UAAAktG,WAAA,WAAwC,MAAA7sG,MAAAwsG,UAAqB1/D,EAAAntC,UAAAmtG,SAAA,SAAArsG,GAAuC,MAAAT,MAAAysG,SAAAzsG,KAAAysG,OAAAxxC,SAAAj7D,KAAAysG,OAAA,MAAAhsG,IAAA,UAAAA,GAAAiU,UAAAjU,EAAAiU,QAAA23B,OAAArsC,KAAAusG,SAAAvsG,KAAAysG,OAAAhsG,EAAAT,KAAAysG,OAAAlN,UAAAv/F,KAAA4sG,UAAA5sG,MAA8K8sC,EAAAntC,UAAA+sG,YAAA,SAAAjsG,GAA0C,GAAAN,GAAAM,EAAA+1F,cAAAL,OAAAt2F,EAAAG,KAAAwsG,QAA6CxsG,MAAAysG,SAAAtsG,IAAAN,KAAA61D,SAAAv1D,KAAAH,KAAA+sG,eAAwDjgE,EAAAntC,UAAAqtG,SAAA,WAAsC,MAAAhtG,MAAAysG,QAAmB3/D,EAAAntC,UAAAotG,YAAA,WAAyC,GAAAtsG,GAAAT,KAAAysG,MAAkB,OAAAhsG,MAAAwsG,SAAAxsG,EAAAw6D,SAAAx6D,EAAA++F,MAAAx/F,KAAAs6F,MAAAt6F,YAA8D8sC,EAAAntC,UAAA0oG,QAAA,SAAA5nG,GAAsCT,KAAAs6F,OAAAt6F,KAAAs6F,KAAApkF,UAAAoxB,oBAAAtnC,KAAA4sG,QAAAN,EAAAtsG,KAAA4sG,QAAA5sG,KAAA4jG,KAAA5jG,KAAAs6F,KAAApkF,YAAAlW,KAAA4jG,KAAA5jG,KAAAs6F,KAAAxmF,QAAA9T,KAAA4sG,SAAA7oG,KAAA/D,KAAAusG,SAAA9rG,GAAA,YAAAA,EAAAmM,OAAA5M,KAAA4jG,KAAA5jG,KAAA4jG,KAAAz+F,SAAAowF,EAAAuN,aAAA9iG,KAAAwsG,SAAA,mCAAAxsG,KAAA4jG,KAAA7hG,EAAA,OAAA/B,KAAA4jG,KAAAjiG,EAAA,SAAmVnD,EAAAD,QAAAuuC,IAChiE2mB,iBAAA,GAAAojC,cAAA,IAAAqW,qBAAA,IAAAr8E,eAAA,IAAA9iB,yBAAA,IAA6Go/F,KAAA,SAAAlsG,EAAAzC,EAAAD,GAChH,YAAa,SAAA6uG,GAAA3sG,GAA4B,GAAAA,EAAA,CAAM,mBAAAA,GAAA,CAAuB,GAAAxB,GAAAoC,KAAA8D,MAAA9D,KAAAiE,KAAA,GAAAjE,KAAAkJ,IAAA9J,EAAA,IAA8C,QAAO+/C,IAAA,GAAA58C,GAAA,EAAAnD,GAAAy3E,WAAA,GAAAt0E,GAAA3E,KAAAk5E,YAAA,GAAAv0E,IAAA3E,KAAAg5E,OAAA,GAAAr0E,GAAA,GAAAnD,GAAA23E,cAAA,GAAAx0E,GAAA3E,MAAAo5E,eAAA,GAAAz0E,IAAA3E,MAAAshD,KAAA,GAAA38C,GAAAnD,EAAA,GAAAu3E,MAAA,GAAAp0E,IAAAnD,EAAA,IAAyM,GAAAA,YAAAmD,IAAAoC,MAAAC,QAAAxF,GAAA,CAAyC,GAAAN,GAAAyD,EAAAmC,QAAAtF,EAAuB,QAAO+/C,IAAArgD,EAAA+3E,WAAA/3E,EAAAg4E,YAAAh4E,EAAA83E,OAAA93E,EAAAi4E,cAAAj4E,EAAAk4E,eAAAl4E,EAAAogD,KAAApgD,EAAA63E,MAAA73E,GAA2F,OAAOqgD,IAAA58C,EAAAmC,QAAAtF,EAAA+/C,MAAA,MAAA03B,WAAAt0E,EAAAmC,QAAAtF,EAAA,oBAAA03E,YAAAv0E,EAAAmC,QAAAtF,EAAA,qBAAAw3E,OAAAr0E,EAAAmC,QAAAtF,EAAAw3E,SAAA,MAAAG,cAAAx0E,EAAAmC,QAAAtF,EAAA,uBAAA43E,eAAAz0E,EAAAmC,QAAAtF,EAAA,wBAAA8/C,KAAA38C,EAAAmC,QAAAtF,EAAA8/C,OAAA,MAAAy3B,MAAAp0E,EAAAmC,QAAAtF,EAAAu3E,QAAA,OAAyV,MAAAo1B,GAAA,GAAAxpG,GAAA,MAAuC,GAAA4sB,GAAAvvB,EAAA,gBAAA+rC,EAAA/rC,EAAA,mBAAAs0F,EAAAt0F,EAAA,eAAAikC,EAAAjkC,EAAA,kBAAA2C,EAAA3C,EAAA,0BAAAb,EAAAa,EAAA,kBAAAqrG,EAAArrG,EAAA,sBAAA+8F,GAAiQqP,aAAA,EAAAC,cAAA,GAA+BzgE,EAAA,SAAApsC,GAAmB,QAAAxB,MAAcwB,EAAA9B,KAAAqB,WAAA0U,QAAA8b,EAAA7b,OAAAzV,OAAA2D,OAAAm7F,GAAA/+F,GAAAuxB,EAAA+mC,SAAA,2BAAAv3D,MAAsH,MAAAS,KAAAxB,EAAAyuD,UAAAjtD,GAAAxB,EAAAU,UAAAT,OAAA2D,OAAApC,KAAAd,WAAAV,EAAAU,UAAAsoB,YAAAhpB,IAAAU,UAAA6/F,MAAA,SAAA/+F,GAA4H,MAAAT,MAAAs6F,KAAA75F,EAAAT,KAAAs6F,KAAAh2E,GAAA,OAAAtkB,KAAAqoG,SAAAroG,KAAA0U,QAAA44F,cAAAttG,KAAAs6F,KAAAh2E,GAAA,QAAAtkB,KAAAutG,eAAAvtG,KAAAqoG,UAAAroG,MAA6If,EAAAU,UAAAstG,OAAA,WAA+B,QAAAjtG,KAAAs6F,MAAkBr7F,EAAAU,UAAAs7D,OAAA,WAA+B,MAAAj7D,MAAAwtG,UAAAjY,EAAAt6B,OAAAj7D,KAAAwtG,UAAAxtG,KAAAu6F,aAAAhF,EAAAt6B,OAAAj7D,KAAAu6F,kBAAAv6F,MAAAu6F,YAAAv6F,KAAAs6F,OAAAt6F,KAAAs6F,KAAA71E,IAAA,OAAAzkB,KAAAqoG,SAAAroG,KAAAs6F,KAAA71E,IAAA,QAAAzkB,KAAAutG,qBAAAvtG,MAAAs6F,MAAAt6F,KAAA6tD,KAAA,SAAA7tD,MAAyPf,EAAAU,UAAAgtG,UAAA,WAAkC,MAAA3sG,MAAA4sG,SAAoB3tG,EAAAU,UAAA4/F,UAAA,SAAA9+F,GAAmC,MAAAT,MAAA4sG,QAAA1nE,EAAAn/B,QAAAtF,GAAAT,KAAA4jG,KAAA,KAAA5jG,KAAAqoG,UAAAroG,MAAyEf,EAAAU,UAAA8tG,QAAA,SAAAhtG,GAAiC,MAAAT,MAAA0tG,cAAAttG,EAAA0I,SAAA6kG,eAAAltG,KAA6DxB,EAAAU,UAAAiuG,QAAA,SAAAntG,GAAiC,GAAAxB,GAAAkB,EAAAC,EAAA0I,SAAA+kG,yBAAAtuG,EAAAa,EAAA0I,SAAAC,cAAA,OAAyF,KAAAxJ,EAAA87F,UAAA56F,EAAqBxB,EAAAM,EAAA2pG,YAA2B/oG,EAAAigG,YAAAnhG,EAAiB,OAAAe,MAAA0tG,cAAAvtG,IAA6BlB,EAAAU,UAAA+tG,cAAA,SAAAjtG,GAAuC,MAAAT,MAAA8tG,iBAAA9tG,KAAAwtG,SAAApN,YAAA3/F,GAAAT,KAAAqoG,UAAAroG,MAA8Ef,EAAAU,UAAAmuG,eAAA,WAAuC9tG,KAAAwtG,UAAAjY,EAAAt6B,OAAAj7D,KAAAwtG,UAAAxtG,KAAAwtG,SAAAjY,EAAA1yF,OAAA,+BAAA7C,KAAAu6F,YAAAv6F,KAAA0U,QAAA24F,cAAArtG,KAAA+tG,aAAAxY,EAAA1yF,OAAA,uCAAA7C,KAAAwtG,UAAAxtG,KAAA+tG,aAAAnhG,KAAA,SAAA5M,KAAA+tG,aAAAtR,aAAA,4BAAAz8F,KAAA+tG,aAAA1S,UAAA,SAA8Vr7F,KAAA+tG,aAAA1uC,iBAAA,QAAAr/D,KAAAutG,iBAAkEtuG,EAAAU,UAAA0oG,QAAA,WAAgC,GAAAroG,KAAAs6F,MAAAt6F,KAAA4sG,SAAA5sG,KAAAwtG,SAAA,CAA2CxtG,KAAAu6F,aAAAv6F,KAAAu6F,WAAAhF,EAAA1yF,OAAA,uBAAA7C,KAAAs6F,KAAAwB,gBAAA97F,KAAAguG,KAAAzY,EAAA1yF,OAAA,2BAAA7C,KAAAu6F,YAAAv6F,KAAAu6F,WAAA6F,YAAApgG,KAAAwtG,WAAAxtG,KAAAs6F,KAAApkF,UAAAoxB,oBAAAtnC,KAAA4sG,QAAAN,EAAAtsG,KAAA4sG,QAAA5sG,KAAA4jG,KAAA5jG,KAAAs6F,KAAApkF,WAAuT,IAAAzV,GAAAT,KAAA4jG,KAAA5jG,KAAAs6F,KAAAxmF,QAAA9T,KAAA4sG,SAAA3tG,EAAAe,KAAA0U,QAAAinB,OAAAx7B,EAAAitG,EAAAptG,KAAA0U,QAAA23B,OAA6G,KAAAptC,EAAA,CAAO,GAAAM,GAAAS,KAAAu6F,WAAAe,YAAA78F,EAAAuB,KAAAu6F,WAAAsQ,YAAiE5rG,GAAAwB,EAAAkB,EAAAxB,EAAA83E,OAAAt2E,EAAAlD,GAAA,OAAAgC,EAAAkB,EAAA3B,KAAAs6F,KAAApkF,UAAAhP,OAAAzI,GAAA,aAAAgC,EAAAsB,EAAAxC,EAAA,EAAAN,EAAAoI,KAAA,QAAA5G,EAAAsB,EAAA/B,KAAAs6F,KAAApkF,UAAAjP,MAAA1H,EAAA,GAAAN,EAAAoI,KAAA,SAAApI,EAAA,IAAAA,EAAA8B,OAAA,SAAA9B,EAAAiQ,KAAA,KAAwL,GAAAxO,GAAAD,EAAAqD,IAAA3D,EAAAlB,IAAAkG,QAAArF,GAA6B0gD,IAAA,oBAAA03B,WAAA,iBAAAC,YAAA,qBAAAF,OAAA,wBAAAG,cAAA,qBAAAC,eAAA,yBAAA93B,KAAA,oBAAAy3B,MAAA,yBAAsPn4E,EAAAG,KAAAu6F,WAAAC,SAA6B,QAAA55F,KAAAd,GAAAD,EAAAo7D,OAAA,yBAAAr6D,EAAoDf,GAAAiE,IAAA,yBAAA7E,GAAAs2F,EAAAuN,aAAA9iG,KAAAu6F,WAAAz6F,EAAAb,GAAA,cAAAyB,EAAAqB,EAAA,MAAArB,EAAAiB,EAAA,SAA4G1C,EAAAU,UAAA4tG,cAAA,WAAsCvtG,KAAAi7D,UAAch8D,GAAG+tC,EAAUxuC,GAAAD,QAAAsuC,IACvoI4mB,iBAAA,GAAAojC,cAAA,IAAAxlC,kBAAA,IAAA67C,qBAAA,IAAAr8E,eAAA,IAAAo+B,iBAAA,IAAAlhD,yBAAA,IAAwJkgG,KAAA,SAAAhtG,EAAAzC,EAAAD,GAC3J,YAAa,IAAAiyB,GAAAvvB,EAAA,UAAAu+D,EAAA,SAAA/+D,EAAAN,EAAAO,GAAiDV,KAAAm2F,OAAA11F,EAAAT,KAAAg6D,OAAA75D,EAAAH,KAAAkuG,MAAAxtG,EAAAV,KAAAmuG,aAA0DnuG,KAAAouG,WAAA,EAAA59E,EAAA+mC,SAAA,WAAAv3D,WAAAm2F,OAAA92B,iBAAA,UAAAr/D,KAAAquG,SAAA,GAA2G7uC,GAAA7/D,UAAA6wD,KAAA,SAAA/vD,EAAAN,EAAAO,EAAAE,EAAAnC,GAAyC,GAAAqB,GAAAY,EAAAV,KAAAkuG,MAAA,IAAAluG,KAAAouG,aAAA,IAA8C1tG,KAAAV,KAAAmuG,UAAAruG,GAAAY,GAAAV,KAAAm2F,OAAAmY,aAAkDC,YAAA9vG,EAAA+vG,YAAAxuG,KAAAkuG,MAAAthG,KAAAnM,EAAAkG,GAAAmZ,OAAAhgB,GAAAwK,KAAAnK,GAAgES,IAAI4+D,EAAA7/D,UAAA0uG,QAAA,SAAA5tG,GAAqC,GAAAN,GAAAO,EAAAV,KAAAY,EAAAH,EAAA6J,KAAA7L,EAAAmC,EAAA+F,EAA6B,KAAA/F,EAAA2tG,aAAAvuG,KAAAkuG,QAAAttG,EAAA2tG,YAAA,CAA+C,GAAAzuG,GAAA,SAAAW,EAAAN,EAAAS,GAAsBF,EAAAy1F,OAAAmY,aAAsBE,YAAA9tG,EAAAwtG,MAAAthG,KAAA,aAAAjG,GAAAmZ,OAAArhB,GAAAmtB,MAAAnrB,EAAAqf,OAAArf,GAAA,KAAA6J,KAAAnK,GAAiFS,GAAK,mBAAAA,EAAAgM,KAAAzM,EAAAH,KAAAmuG,UAAAvtG,EAAA+F,UAAA3G,MAAAmuG,UAAAvtG,EAAA+F,IAAAxG,GAAAS,EAAAgrB,MAAAzrB,EAAA,GAAAU,OAAAD,EAAAgrB,QAAAzrB,KAAA,KAAAS,EAAA0J,UAA+H,aAAA1J,EAAA+F,IAAA3G,KAAAg6D,OAAAp5D,EAAAgM,MAAA5M,KAAAg6D,OAAAp5D,EAAAgM,MAAAhM,EAAA4tG,YAAA5tG,EAAA0J,KAAAxK,OAAuF,aAAAc,EAAA+F,IAAA3G,KAAAg6D,OAAAqG,gBAAA,CAAoD,GAAAphE,GAAA2B,EAAAgM,KAAA2d,MAAA,KAAA1qB,EAAAG,KAAAg6D,OAAAqG,gBAAAz/D,EAAA4tG,YAAAvvG,EAAA,GAA0EY,GAAAZ,EAAA,IAAA2B,EAAA0J,KAAAxK,OAAkBE,MAAAg6D,OAAAp5D,EAAAgM,MAAAhM,EAAA0J,QAAkCk1D,EAAA7/D,UAAAs7D,OAAA,WAAmCj7D,KAAAm2F,OAAA+F,oBAAA,UAAAl8F,KAAAquG,SAAA,IAA2D7vG,EAAAD,QAAAihE,IACtoCivC,SAAA,MAAaC,KAAA,SAAAztG,EAAAzC,EAAAD,GAChB,YAAa,SAAAowG,GAAAxuG,GAAwB,GAAAM,GAAA,GAAAL,GAAAwuG,cAAgCnuG,GAAAouG,KAAA,MAAA1uG,EAAA4/C,KAAA,EAAuB,QAAAr/C,KAAAP,GAAA2uG,QAAAruG,EAAAsuG,iBAAAruG,EAAAP,EAAA2uG,QAAApuG,GAA0D,OAAAD,GAAAuuG,gBAAA,YAAA7uG,EAAA8uG,YAAAxuG,EAAqD,QAAAyuG,GAAA/uG,GAAuB,GAAAM,GAAAL,EAAA0I,SAAAC,cAAA,IAAyC,OAAAtI,GAAA4uD,KAAAlvD,EAAAM,EAAA0uG,WAAA/uG,EAAA0I,SAAAg+F,SAAAqI,UAAA1uG,EAAA2uG,OAAAhvG,EAAA0I,SAAAg+F,SAAAsI,KAAuG,GAAAhvG,GAAAa,EAAA,YAAAquD,GAA6C+/C,QAAA,UAAAtiE,MAAA,QAAAujB,OAAA,SAAAqF,KAAA,OAAAoxB,OAAA,SAAAK,YAAA,cAAAD,WAAA,aAAAl0B,MAAA,QAA6I10D,GAAA+wD,eAAA,kBAAApwD,QAAA0d,QAAA1d,OAAA0d,OAAA0yC,EAAgG,IAAAggD,GAAA,SAAAnvG,GAA0B,QAAAM,KAAAC,GAAgBP,EAAAxB,KAAAqB,KAAAS,GAAAT,KAAA25D,OAAAj5D,EAA6B,MAAAP,KAAAM,EAAAitD,UAAAvtD,GAAAM,EAAAd,UAAAT,OAAA2D,OAAA1C,KAAAR,WAAAc,EAAAd,UAAAsoB,YAAAxnB,KAAgGI,MAAQtC,GAAA6zD,QAAA,SAAAjyD,EAAAM,GAA8B,GAAAC,GAAAiuG,EAAAxuG,EAAqB,OAAAO,GAAAquG,iBAAA,6BAAAruG,EAAA6uG,QAAA,WAA4E9uG,EAAA,GAAAI,OAAAH,EAAA8uG,cAA2B9uG,EAAA+uG,OAAA,WAAqB,GAAA/uG,EAAAi5D,QAAA,KAAAj5D,EAAAi5D,OAAA,KAAAj5D,EAAAgvG,SAAA,CAA4C,GAAAvvG,EAAM,KAAIA,EAAAyV,KAAAy8C,MAAA3xD,EAAAgvG,UAAyB,MAAAvvG,GAAS,MAAAM,GAAAN,GAAYM,EAAA,KAAAN,OAAUM,GAAA,GAAA6uG,GAAA5uG,EAAA8uG,WAAA9uG,EAAAi5D,UAA6Cj5D,EAAA8vD,OAAA9vD,GAAYnC,EAAAw4D,eAAA,SAAA52D,EAAAM,GAAsC,GAAAC,GAAAiuG,EAAAxuG,EAAqB,OAAAO,GAAAivG,aAAA,cAAAjvG,EAAA6uG,QAAA,WAAyD9uG,EAAA,GAAAI,OAAAH,EAAA8uG,cAA2B9uG,EAAA+uG,OAAA,WAAqB,GAAAtvG,GAAAO,EAAAgvG,QAAiB,QAAAvvG,EAAAwxD,YAAA,MAAAjxD,EAAAi5D,OAAA,MAAAl5D,GAAA,GAAAI,OAAA,6CAAqGH,GAAAi5D,QAAA,KAAAj5D,EAAAi5D,OAAA,KAAAj5D,EAAAgvG,SAAAjvG,EAAA,MAAgD6J,KAAAnK,EAAA21D,aAAAp1D,EAAAkvG,kBAAA,iBAAA75C,QAAAr1D,EAAAkvG,kBAAA,aAAgGnvG,EAAA,GAAA6uG,GAAA5uG,EAAA8uG,WAAA9uG,EAAAi5D,UAA0Cj5D,EAAA8vD,OAAA9vD,EAAwJnC,GAAAyjD,SAAA,SAAA7hD,EAAAM,GAA+B,MAAAlC,GAAAw4D,eAAA52D,EAAA,SAAAA,EAAAO,GAA8C,GAAAP,EAAAM,EAAAN,OAAU,IAAAO,EAAA,CAAW,GAAAnB,GAAA,GAAAa,GAAA6yD,MAAAh0D,EAAAmB,EAAAsvB,KAAAtvB,EAAAuvB,SAAsDpwB,GAAAkwG,OAAA,WAAoBhvG,EAAA,KAAAlB,GAAAN,EAAA4wG,gBAAAtwG,EAAAuwG,KAAoC,IAAAhwG,GAAA,GAAAM,GAAA0vB,MAAA,GAAAjS,YAAAnd,EAAA4J,QAAgDsC,KAAA,aAAmBrN,GAAAu2D,aAAAp1D,EAAAo1D,aAAAv2D,EAAAw2D,QAAAr1D,EAAAq1D,QAAAx2D,EAAAuwG,IAAApvG,EAAA4J,KAAAqnD,WAAA1yD,EAAA+wB,gBAAAlwB,GAA9Z,yHAAkhBvB,EAAA4gE,SAAA,SAAAh/D,EAAAM,GAAgC,GAAAC,GAAAN,EAAA0I,SAAAC,cAAA,QAA6CrI,GAAAqvG,YAAA,WAAyBtvG,EAAA,KAAAC,GAAW,QAAAnB,GAAA,EAAYA,EAAAY,EAAAY,OAAWxB,IAAA,CAAK,GAAAN,GAAAmB,EAAA0I,SAAAC,cAAA,SAA8CmmG,GAAA/uG,EAAAZ,MAAAmB,EAAAsvG,YAAA,aAAA/wG,EAAA6wG,IAAA3vG,EAAAZ,GAAAmB,EAAA0/F,YAAAnhG,GAA0E,MAAAyB,MACt4EuvG,WAAA,MAAeC,KAAA,SAAAjvG,EAAAzC,EAAAD,GAClB,YAAa,IAAA6B,GAAAa,EAAA,YAAA8lB,EAAA3mB,EAAA+vG,aAAA/vG,EAAA+vG,YAAAppF,IAAA3mB,EAAA+vG,YAAAppF,IAAA5K,KAAA/b,EAAA+vG,aAAArpF,KAAAC,IAAA5K,KAAA2K,MAAAqtC,EAAA/zD,EAAAgwG,uBAAAhwG,EAAAiwG,0BAAAjwG,EAAAkwG,6BAAAlwG,EAAAmwG,wBAAApiD,EAAA/tD,EAAAowG,sBAAApwG,EAAAqwG,yBAAArwG,EAAAswG,4BAAAtwG,EAAAuwG,sBAA+ZnyG,GAAAD,SAAgBwoB,MAAAotC,MAAA,SAAAh0D,GAA0B,MAAAg0D,GAAAh0D,IAAgB+qG,YAAA,SAAA/qG,GAAyB,MAAAguD,GAAAhuD,IAAiB45F,MAAA,SAAA55F,EAAAZ,EAAAkB,GAAuB,QAAAG,KAAa,IAAAnC,EAAA,CAAO,GAAAiC,GAAAqmB,GAAYrmB,IAAAzB,EAAAM,EAAAY,EAAAxB,KAAA8B,EAAA,IAAAN,EAAAxB,KAAA8B,GAAAC,EAAAzB,GAAAM,GAAA40D,EAAAvzD,KAAiD,IAAArB,EAAA,MAAAY,GAAAxB,KAAA8B,EAAA,OAA8B,IAAAhC,IAAA,EAAAQ,EAAA8nB,GAAiB,OAAAotC,GAAAvzD,GAAA,WAA2BnC,GAAA,IAAM2L,aAAA,SAAAjK,GAA0B,GAAAZ,GAAAa,EAAA0I,SAAAC,cAAA,UAAAtI,EAAAlB,EAAA0J,WAAA,KAAmE,KAAAxI,EAAA,SAAAI,OAAA,qCAA4D,OAAAtB,GAAA0H,MAAA9G,EAAA8G,MAAA1H,EAAA2H,OAAA/G,EAAA+G,OAAAzG,EAAAmwG,UAAAzwG,EAAA,IAAAA,EAAA8G,MAAA9G,EAAA+G,QAAAzG,EAAA2J,aAAA,IAAAjK,EAAA8G,MAAA9G,EAAA+G,SAAkHkmC,oBAAAhtC,EAAAuJ,UAAAyjC,qBAAA,EAAAwD,uBAAoF,MAAAxwC,GAAAwwC,kBAA+BigE,cAAA,EAAkB,IAAAC,GAAA1wG,EAAA0I,SAAAC,cAAA,MAAqD+nG,GAAArB,OAAA,WAA8BjxG,EAAAD,QAAAsyG,cAAA,GAA+BC,EAAAhB,IAAA,gFACvsCG,WAAA,MAAec,KAAA,SAAA9vG,EAAAzC,EAAAD,GAClB,YAAa,IAAAyyG,GAAA/vG,EAAA,cAAAb,EAAAa,EAAA,aAAAgwG,EAAA7wG,EAAAsvB,IAAAM,gBAAA,GAAAghF,GAAA/vG,EAAA,wBAAqJ8uB,MAAA,IAAWvxB,GAAAD,QAAA,WAA0B,UAAA6B,GAAA6vB,OAAAghF,MACpMC,sBAAA,IAAAC,YAAA,IAAAC,WAAA,KAA0DC,KAAA,SAAApwG,EAAAzC,EAAAD,GAC7D,YAAaC,GAAAD,QAAAqvB,UACT0jF,KAAA,SAAArwG,EAAAzC,EAAAD,GACJ,YAAa,SAAAgzG,GAAApxG,EAAAO,GAA2B,MAAAA,GAAAuP,KAAA9P,EAAA8P,KAAqB,GAAAuhG,GAAAvwG,EAAA,eAAAwwG,EAAAxwG,EAAA,UAAAwwG,mBAAiGjzG,GAAAD,QAAA,SAAA4B,EAAAO,GAA6B,GAAAE,GAAAT,EAAAY,MAAe,IAAAH,GAAA,SAAAT,EAAkB,QAAAM,GAAAE,EAAA9B,KAAAJ,EAAA,EAAqBA,EAAAmC,EAAInC,IAAA,CAAK,GAAAC,GAAA+yG,EAAAtxG,EAAA1B,GAAgC,KAAAC,IAAAyB,EAAA1B,GAAAwR,KAAA5O,KAAAoK,IAAA/M,OAAA,KAAAiC,MAAAjC,EAAA,GAAAiC,IAAAjC,EAAA,GAAA+B,GAAA5B,EAAAwI,KAAA5G,MAAAN,EAAA1B,KAAAgC,EAAA4G,KAAAlH,EAAA1B,KAAgG,GAAAgC,GAAA5B,EAAAwI,KAAA5G,GAAAC,EAAA,SAAAnB,GAAA,EAAgCA,EAAAV,EAAAkC,OAAWxB,IAAAV,EAAAU,GAAAwB,QAAAL,IAAA8wG,EAAA3yG,EAAAU,GAAAmB,EAAA,EAAA7B,EAAAU,GAAAwB,OAAA,EAAAwwG,GAAA1yG,EAAAU,GAAAV,EAAAU,GAAAuZ,MAAA,EAAApY,GAA4F,OAAA7B,MAC9f4vG,SAAA,IAAA+C,YAAA,KAA8BE,KAAA,SAAAzwG,EAAAzC,EAAAD,GACjC,YAAa,IAAA0uC,IAAY0kE,QAAA,yBAAAC,sBAAA,EAAArkE,aAAA,KAA4E/uC,GAAAD,QAAA0uC,OACjG4kE,KAAA,SAAA5wG,EAAAzC,EAAAD,GACJ,YAAa,IAAAghC,GAAA,SAAA7+B,GAAgC,GAAAD,GAAAT,IAAWA,MAAA8xG,mBAAuB9xG,KAAA+xG,kBAAyB,QAAA9yG,GAAA,EAAYA,EAAAyB,EAAAK,OAAW9B,IAAA,CAAK,GAAAR,GAAAiC,EAAAzB,EAAWwB,GAAAqxG,gBAAArzG,GAAAQ,EAAAwB,EAAAsxG,gBAAA9yG,GAAAR,GAAgD8gC,GAAA5/B,UAAAwhE,OAAA,SAAAzgE,GAA6C,MAAAV,MAAA8xG,gBAAApxG,IAA+B6+B,EAAA5/B,UAAAohC,OAAA,SAAArgC,GAA8C,MAAAV,MAAA+xG,gBAAArxG,IAA+BlC,EAAAD,QAAAghC,OACpVyyE,KAAA,SAAA/wG,EAAAzC,EAAAD,GACJ,YAAa,IAAAiyB,GAAAvvB,EAAA,UAAAu+D,EAAAv+D,EAAA,WAAAinF,EAAA,SAAAznF,EAAAC,GAA6E,GAAAzB,GAAAe,IAAWA,MAAAiyG,WAAAxxG,EAAAT,KAAAkyG,UAAAlyG,KAAAmyG,aAAA,EAAAnyG,KAAA2G,GAAA6pB,EAAAorC,UAA6E,QAAAn9D,GAAAuB,KAAAiyG,WAAAG,QAAApyG,KAAA2G,IAAAxG,EAAA,EAA+CA,EAAA1B,EAAAsC,OAAWZ,IAAA,CAAK,GAAAL,GAAArB,EAAA0B,GAAAtB,EAAA,GAAA2gE,GAAA1/D,EAAAY,EAAAzB,EAAA0H,GAAiC9H,GAAAE,KAAA,UAAAoB,EAAAlB,EAAAizG,OAAA7qG,KAAAxI,IAAsCqpF,GAAAvoF,UAAAwxD,UAAA,SAAA1wD,EAAAC,EAAAzB,GAA+CA,KAAA,aAAiBuxB,EAAAivB,SAAAz/C,KAAAkyG,OAAA,SAAAjzG,EAAAR,GAAyCQ,EAAAuxD,KAAA/vD,EAAAC,EAAAjC,IAAcQ,IAAIipF,EAAAvoF,UAAA6wD,KAAA,SAAA/vD,EAAAC,EAAAzB,EAAAR,EAAA0B,GAA+C,uBAAA1B,IAAA+a,MAAA/a,QAAAuB,KAAAmyG,cAAAnyG,KAAAmyG,aAAA,GAAAnyG,KAAAkyG,OAAAnxG,QAAAf,KAAAkyG,OAAAzzG,GAAA+xD,KAAA/vD,EAAAC,EAAAzB,EAAAkB,GAAA1B,GAAoIypF,EAAAvoF,UAAAs7D,OAAA,WAAwCj7D,KAAAkyG,OAAAp2F,QAAA,SAAArb,GAAgCA,EAAAw6D,WAAWj7D,KAAAkyG,UAAAlyG,KAAAiyG,WAAAI,QAAAryG,KAAA2G,KAAkDnI,EAAAD,QAAA2pF,IACxuBoqB,UAAA,IAAA7D,SAAA,MAA2B8D,KAAA,SAAAtxG,EAAAzC,EAAAD,GAC9B,YAAa,SAAAi0G,GAAAryG,GAAqB,OAAAM,GAAA,EAAYA,EAAAN,EAAAY,OAAWN,IAAA,GAAAN,EAAAM,IAAAgyG,GAAA,MAAAtyG,GAAAM,EAAmC,OAAAN,GAAA,GAAY,GAAAyD,GAAA3C,EAAA,0BAAAb,EAAAa,EAAA,WAAuE1C,GAAAsE,OAAA,SAAA1C,EAAAM,EAAAxB,GAA+B,GAAAM,GAAAa,EAAA0I,SAAAC,cAAA5I,EAAuC,OAAAM,KAAAlB,EAAAg/F,UAAA99F,GAAAxB,KAAAmhG,YAAA7gG,KAAiD,IAAAmzG,GAAAD,EAAAryG,EAAA0I,SAAA6pG,gBAAA/7D,MAAAg8D,EAAAJ,GAAA,gEAAoJj0G,GAAAmkG,YAAA,WAA+BkQ,IAAAF,EAAAD,EAAAG,GAAAH,EAAAG,GAAA,SAA0Er0G,EAAA0kG,WAAA,WAA+B2P,IAAAH,EAAAG,GAAAF,GAA+C,IAAAG,GAAAL,GAAA,+BAA4Dj0G,GAAAukG,aAAA,SAAA3iG,EAAAM,GAAmCN,EAAAy2C,MAAAi8D,GAAApyG,EAA0B,IAAAqyG,GAAA,SAAA3yG,GAA8BA,EAAAm2F,iBAAAn2F,EAAA4yG,kBAAA3yG,EAAA87F,oBAAA,QAAA4W,GAAA,GAA6Fv0G,GAAAu0G,cAAA,WAAiC1yG,EAAAi/D,iBAAA,QAAAyzC,GAAA,GAAA1yG,EAAA0iB,WAAA,WAA+E1iB,EAAA87F,oBAAA,QAAA4W,GAAA,IAAqD,IAAIv0G,EAAAy3F,SAAA,SAAA71F,EAAAM,GAAgC,GAAAxB,GAAAkB,EAAA6yG,uBAAgC,OAAAvyG,KAAA41F,QAAA51F,EAAA41F,QAAA,GAAA51F,EAAA,GAAAmD,GAAAnD,EAAAwyG,QAAAh0G,EAAAshD,KAAApgD,EAAA+yG,WAAAzyG,EAAA0yG,QAAAl0G,EAAAuhD,IAAArgD,EAAAizG,YAAuG70G,EAAAk4F,SAAA,SAAAt2F,EAAAM,GAAgC,OAAAxB,GAAAkB,EAAA6yG,wBAAAzzG,KAAAmB,EAAA,aAAAD,EAAAmM,KAAAnM,EAAA4yG,eAAA5yG,EAAA41F,QAAAv2F,EAAA,EAA8FA,EAAAY,EAAAK,OAAWjB,IAAAP,EAAA8H,KAAA,GAAAzD,GAAAlD,EAAAZ,GAAAmzG,QAAAh0G,EAAAshD,KAAApgD,EAAA+yG,WAAAxyG,EAAAZ,GAAAqzG,QAAAl0G,EAAAuhD,IAAArgD,EAAAizG,WAAuF,OAAA7zG,IAAShB,EAAA08D,OAAA,SAAA96D,GAA4BA,EAAAi2F,YAAAj2F,EAAAi2F,WAAA+Q,YAAAhnG,MACv7C8vG,WAAA,IAAAliG,yBAAA,IAA0CulG,KAAA,SAAAryG,EAAAzC,EAAAD,GAC7C,YAAa,SAAAg1G,GAAApzG,EAAAM,EAAAlB,GAAkCA,EAAAY,GAAAZ,EAAAY,OAAAZ,EAAAY,GAAAkH,KAAA5G,GAA2B,QAAA+yG,GAAArzG,EAAAM,EAAAlB,GAAqC,GAAAA,KAAAY,GAAA,CAAY,GAAA1B,GAAAc,EAAAY,GAAA0J,QAAApJ,IAAsB,IAAAhC,GAAAc,EAAAY,GAAA6H,OAAAvJ,EAAA,IAA0B,GAAA+xB,GAAAvvB,EAAA,UAAA+rC,EAAA,YAAgDA,GAAArtC,UAAA2kB,GAAA,SAAAnkB,EAAAM,GAAmC,MAAAT,MAAAyzG,WAAAzzG,KAAAyzG,eAA0CF,EAAApzG,EAAAM,EAAAT,KAAAyzG,YAAAzzG,MAA6CgtC,EAAArtC,UAAA8kB,IAAA,SAAAtkB,EAAAM,GAAqC,MAAA+yG,GAAArzG,EAAAM,EAAAT,KAAAyzG,YAAAD,EAAArzG,EAAAM,EAAAT,KAAA0zG,mBAAA1zG,MAAuGgtC,EAAArtC,UAAA6kB,KAAA,SAAArkB,EAAAM,GAAsC,MAAAT,MAAA0zG,kBAAA1zG,KAAA0zG,sBAAwDH,EAAApzG,EAAAM,EAAAT,KAAA0zG,mBAAA1zG,MAAoDgtC,EAAArtC,UAAAkuD,KAAA,SAAA1tD,EAAAM,GAAsC,GAAAlB,GAAAS,IAAW,IAAAA,KAAA2zG,QAAAxzG,GAAA,CAAoBM,EAAA+vB,EAAA7b,UAAgBlU,GAAImM,KAAAzM,EAAAg2F,OAAAn2F,MAAqB,QAAAvB,GAAAuB,KAAAyzG,YAAAzzG,KAAAyzG,WAAAtzG,GAAAH,KAAAyzG,WAAAtzG,GAAA2Y,WAAAhZ,EAAA,EAAgFA,EAAArB,EAAAsC,OAAWjB,IAAArB,EAAAqB,GAAAnB,KAAAY,EAAAkB,EAAmB,QAAAC,GAAAV,KAAA0zG,mBAAA1zG,KAAA0zG,kBAAAvzG,GAAAH,KAAA0zG,kBAAAvzG,GAAA2Y,WAAA7Z,EAAA,EAAqGA,EAAAyB,EAAAK,OAAW9B,IAAAyB,EAAAzB,GAAAN,KAAAY,EAAAkB,GAAA+yG,EAAArzG,EAAAO,EAAAzB,GAAAM,EAAAm0G,kBAAoE1zG,MAAA4zG,gBAAA5zG,KAAA4zG,eAAA/lD,KAAA1tD,EAAAqwB,EAAA7b,UAA8DlU,EAAA,kBAAAT,MAAA6zG,mBAAA7zG,KAAA6zG,qBAAA7zG,KAAA6zG,yBAAkGrjF,GAAAo1D,SAAAzlF,EAAA,UAAA0U,QAAA+W,MAAAnrB,KAAAmrB,OAAAnrB,GAAA,oBAAiF,OAAAT,OAAYgtC,EAAArtC,UAAAg0G,QAAA,SAAAxzG,GAAuC,MAAAH,MAAAyzG,YAAAzzG,KAAAyzG,WAAAtzG,IAAAH,KAAAyzG,WAAAtzG,GAAAY,OAAA,GAAAf,KAAA0zG,mBAAA1zG,KAAA0zG,kBAAAvzG,IAAAH,KAAA0zG,kBAAAvzG,GAAAY,OAAA,GAAAf,KAAA4zG,gBAAA5zG,KAAA4zG,eAAAD,QAAAxzG,IAAoN6sC,EAAArtC,UAAA8vD,iBAAA,SAAAtvD,EAAAM,GAAkD,MAAAT,MAAA4zG,eAAAzzG,EAAAH,KAAA6zG,mBAAApzG,EAAAT,MAA4DxB,EAAAD,QAAAyuC,IACtmDyhE,SAAA,MAAaqF,KAAA,SAAA7yG,EAAAzC,EAAAD,GAChB,YAAa,SAAAw1G,GAAA5zG,EAAAM,GAAyB,MAAAA,GAAAmH,IAAAzH,EAAAyH,IAAmB,QAAAosG,GAAA7zG,EAAAM,EAAAlB,EAAAN,GAAuBe,KAAAH,EAAA,GAAA+D,GAAAzD,EAAAM,GAAAT,KAAA0B,EAAAnC,EAAAS,KAAAlB,EAAAm1G,EAAAj0G,KAAAH,EAAAZ,GAAAe,KAAA4H,IAAA5H,KAAAlB,EAAAkB,KAAA0B,EAAAL,KAAA6yG,MAAqG,QAAAD,GAAA9zG,EAAAM,GAAiC,OAAAlB,IAAA,EAAAN,EAAA,IAAAyB,EAAA,EAAuBA,EAAAD,EAAAM,OAAWL,IAAA,OAAAjC,GAAAgC,EAAAC,GAAAhC,EAAA,EAAAiC,EAAAlC,EAAAsC,OAAAH,EAAAD,EAAA,EAAwCjC,EAAAiC,EAAIC,EAAAlC,IAAA,CAAO,GAAAoB,GAAArB,EAAAC,GAAAmB,EAAApB,EAAAmC,EAAkBd,GAAA6B,EAAAxB,EAAAwB,GAAA9B,EAAA8B,EAAAxB,EAAAwB,GAAAxB,EAAA4B,GAAAlC,EAAAkC,EAAAjC,EAAAiC,IAAA5B,EAAAwB,EAAA7B,EAAA6B,IAAA9B,EAAA8B,EAAA7B,EAAA6B,GAAA7B,EAAAiC,IAAAxC,MAAAN,EAAAoC,KAAAmJ,IAAAvL,EAAAk1G,EAAAh0G,EAAAL,EAAAD,IAA0G,OAAAN,EAAA,MAAA8B,KAAAiE,KAAArG,GAA4B,QAAAm1G,GAAAj0G,GAA4B,OAAAM,GAAA,EAAAlB,EAAA,EAAAN,EAAA,EAAAyB,EAAAP,EAAA,GAAA1B,EAAA,EAAAC,EAAAgC,EAAAK,OAAAJ,EAAAjC,EAAA,EAAgDD,EAAAC,EAAIiC,EAAAlC,IAAA,CAAO,GAAAmC,GAAAF,EAAAjC,GAAAqB,EAAAY,EAAAC,GAAAd,EAAAe,EAAAmB,EAAAjC,EAAA6B,EAAA7B,EAAAiC,EAAAnB,EAAAe,CAAoCpC,KAAAqB,EAAAmB,EAAAjC,EAAAiC,GAAAlC,EAAAZ,IAAA2B,EAAAe,EAAA7B,EAAA6B,GAAA9B,EAAAY,GAAA,EAAAZ,EAAqC,UAAAm0G,GAAAz0G,EAAAkB,EAAAxB,EAAAwB,EAAA,EAAAN,GAA6B,GAAAk0G,GAAApzG,EAAA,aAAA2C,EAAA3C,EAAA,0BAAAkzG,EAAAlzG,EAAA,wBAAAkzG,oBAAiJ31G,GAAAD,QAAA,SAAA4B,EAAAM,EAAAlB,OAA+B,KAAAkB,MAAA,YAAAlB,OAAA,EAAqC,QAAAN,GAAA,IAAAyB,EAAA,IAAAjC,GAAA,IAAAC,GAAA,IAAAiC,EAAAR,EAAA,GAAAS,EAAA,EAA6CA,EAAAD,EAAAI,OAAWH,IAAA,CAAK,GAAAd,GAAAa,EAAAC,KAAWA,GAAAd,EAAAiC,EAAA9C,OAAAa,EAAAiC,KAAAnB,GAAAd,EAAA6B,EAAAjB,OAAAZ,EAAA6B,KAAAf,GAAAd,EAAAiC,EAAAtD,OAAAqB,EAAAiC,KAAAnB,GAAAd,EAAA6B,EAAAjD,OAAAoB,EAAA6B,GAAoF,GAAA9B,GAAApB,EAAAQ,EAAAyC,EAAAhD,EAAAgC,EAAA5B,EAAAuC,KAAAmJ,IAAA3K,EAAA6B,GAAAK,EAAAjD,EAAA,EAAA6C,EAAA,GAAA0yG,GAAA,KAAAN,EAAmE,QAAAj1G,EAAA,UAAA8E,GAAA3E,EAAAyB,EAA+B,QAAAX,GAAAd,EAAYc,EAAAtB,EAAIsB,GAAAjB,EAAA,OAAAyB,GAAAG,EAAiBH,EAAA7B,EAAI6B,GAAAzB,EAAA6C,EAAA0F,KAAA,GAAA2sG,GAAAj0G,EAAAgC,EAAAxB,EAAAwB,IAAA5B,GAAmC,QAAAvB,GAAAw1G,EAAAj0G,GAAAqB,EAAAG,EAAAZ,OAAwCY,EAAAZ,QAAS,CAAE,GAAAlC,GAAA8C,EAAA4U,OAAc1X,EAAAC,EAAAF,EAAAE,IAAAF,EAAAE,KAAAF,EAAAC,EAAAU,GAAAsV,QAAAX,IAAA,gCAAA7S,KAAA8D,MAAA,IAAAtG,EAAAC,GAAA,IAAA0C,IAAA3C,EAAA+I,IAAAhJ,EAAAE,GAAA2B,IAAAsB,EAAAlD,EAAA6C,EAAA,EAAAC,EAAA0F,KAAA,GAAA2sG,GAAAn1G,EAAAgB,EAAAkC,IAAAlD,EAAAgB,EAAA8B,EAAAI,IAAA5B,IAAAwB,EAAA0F,KAAA,GAAA2sG,GAAAn1G,EAAAgB,EAAAkC,IAAAlD,EAAAgB,EAAA8B,EAAAI,IAAA5B,IAAAwB,EAAA0F,KAAA,GAAA2sG,GAAAn1G,EAAAgB,EAAAkC,IAAAlD,EAAAgB,EAAA8B,EAAAI,IAAA5B,IAAAwB,EAAA0F,KAAA,GAAA2sG,GAAAn1G,EAAAgB,EAAAkC,IAAAlD,EAAAgB,EAAA8B,EAAAI,IAAA5B,IAAAqB,GAAA,GAAsR,MAAAjC,KAAAsV,QAAAX,IAAA,eAAA1S,GAAAqT,QAAAX,IAAA,kBAAAtV,EAAAE,IAAAF,EAAAiB,KAC/+Cy0G,uBAAA,IAAAvmG,yBAAA,EAAAwmG,UAAA,KAAqEC,KAAA,SAAAvzG,EAAAzC,EAAAD,GACxE,YAAa,IAAAk2G,GAAAC,EAAAzzG,EAAA,gBAAyDzC,GAAAD,QAAA,WAA0B,MAAAk2G,OAAA,GAAAC,IAAAD,KAC7FE,gBAAA,MAAoBC,KAAA,SAAA3zG,EAAAzC,EAAAD,GACvB,YAAa,SAAAs2G,GAAA10G,EAAAM,EAAAhC,GAA4B,GAAAiD,GAAAvB,EAAA8G,MAAArG,EAAAT,EAAA+G,MAAyB,IAAAzI,GAAM,GAAAA,EAAAsC,SAAAW,EAAAd,EAAAH,EAAA,SAAAq0G,YAAA,6BAAkEr2G,GAAA,GAAAof,YAAAnc,EAAAd,EAAAH,EAA6B,QAAOwG,MAAAvF,EAAAwF,OAAAtG,EAAA0J,KAAA7L,GAAyB,QAAAs2G,GAAA50G,EAAAM,EAAAhC,GAA4B,GAAAiD,GAAAjB,EAAAwG,MAAArG,EAAAH,EAAAyG,MAAyB,IAAAxF,IAAAvB,EAAA8G,OAAArG,IAAAT,EAAA+G,OAAA,MAAA/G,EAAsC,IAAAO,GAAAm0G,GAAmB5tG,MAAAvF,EAAAwF,OAAAtG,GAAiBnC,EAAIu2G,GAAA70G,EAAAO,GAAeqB,EAAA,EAAAJ,EAAA,IAAUI,EAAA,EAAAJ,EAAA,IAAUsF,MAAA5F,KAAAmJ,IAAArK,EAAA8G,MAAAvF,GAAAwF,OAAA7F,KAAAmJ,IAAArK,EAAA+G,OAAAtG,IAAsDnC,GAAA0B,EAAA8G,MAAAvF,EAAAvB,EAAA+G,OAAAtG,EAAAT,EAAAmK,KAAA5J,EAAA4J,KAAuC,QAAA0qG,GAAA70G,EAAAM,EAAAhC,EAAAiD,EAAAd,EAAAF,GAAgC,OAAAE,EAAAqG,OAAA,IAAArG,EAAAsG,OAAA,MAAAzG,EAAsC,IAAAG,EAAAqG,MAAA9G,EAAA8G,OAAArG,EAAAsG,OAAA/G,EAAA+G,QAAAzI,EAAAsD,EAAA5B,EAAA8G,MAAArG,EAAAqG,OAAAxI,EAAAkD,EAAAxB,EAAA+G,OAAAtG,EAAAsG,OAAA,SAAA4tG,YAAA,iDAAyJ,IAAAl0G,EAAAqG,MAAAxG,EAAAwG,OAAArG,EAAAsG,OAAAzG,EAAAyG,QAAAxF,EAAAK,EAAAtB,EAAAwG,MAAArG,EAAAqG,OAAAvF,EAAAC,EAAAlB,EAAAyG,OAAAtG,EAAAsG,OAAA,SAAA4tG,YAAA,sDAA8J,QAAA/0G,GAAAI,EAAAmK,KAAA/K,EAAAkB,EAAA6J,KAAArL,EAAA,EAA8BA,EAAA2B,EAAAsG,OAAWjI,IAAA,OAAAL,KAAAH,EAAAkD,EAAA1C,GAAAkB,EAAA8G,MAAAxI,EAAAsD,GAAArB,EAAA7B,IAAA6C,EAAAC,EAAA1C,GAAAwB,EAAAwG,MAAAvF,EAAAK,GAAArB,EAAA5B,EAAA,EAAoEA,EAAA8B,EAAAqG,MAAAvG,EAAY5B,IAAAS,EAAAV,EAAAC,GAAAiB,EAAAnB,EAAAE,EAAkB,OAAA2B,GAAS,GAAAq+C,GAAA,YAA4BA,GAAAj8C,OAAA,SAAA1C,EAAAM,GAAgC,MAAAo0G,GAAA10G,EAAA,EAAAM,IAA0Bq+C,EAAA/2C,OAAA,SAAA5H,EAAAM,GAAiCs0G,EAAA50G,EAAAM,EAAA,IAAmBq+C,EAAA12B,KAAA,SAAAjoB,EAAAM,EAAAhC,EAAAiD,EAAAd,GAAqCo0G,EAAA70G,EAAAM,EAAAhC,EAAAiD,EAAAd,EAAA,GAAwB,IAAAqgD,GAAA,YAA2BA,GAAAp+C,OAAA,SAAA1C,EAAAM,GAA+B,MAAAo0G,GAAA10G,EAAA,EAAAM,IAA0BwgD,EAAAl5C,OAAA,SAAA5H,EAAAM,GAAgCs0G,EAAA50G,EAAAM,EAAA,IAAmBwgD,EAAA74B,KAAA,SAAAjoB,EAAAM,EAAAhC,EAAAiD,EAAAd,GAAoCo0G,EAAA70G,EAAAM,EAAAhC,EAAAiD,EAAAd,EAAA,IAAuBpC,EAAAD,SAAiBugD,aAAAmC,kBACj3Cg0D,KAAA,SAAAh0G,EAAAzC,EAAAD,GACJ,YAAa,SAAAmzF,GAAAnyF,EAAAkB,GAAuC,OAAAN,GAAA,EAAYA,EAAAZ,EAAAwB,OAAWZ,IAAA,GAAA+0G,EAAAz0G,EAAAlB,EAAAY,IAAA,QAA6C,QAAAO,GAAA,EAAYA,EAAAD,EAAAM,OAAWL,IAAA,GAAAw0G,EAAA31G,EAAAkB,EAAAC,IAAA,QAA6C,SAAAy0G,EAAA51G,EAAAkB,GAAgC,QAAAotF,GAAAtuF,EAAAkB,EAAAN,GAAyD,OAAAO,GAAA,EAAYA,EAAAnB,EAAAwB,OAAWL,IAAA,OAAAzB,GAAAM,EAAAmB,GAAAjC,EAAA,EAAuBA,EAAAgC,EAAAM,OAAWtC,IAAA,OAAAC,GAAA+B,EAAAhC,GAAAkC,EAAA,EAAuBA,EAAAjC,EAAAqC,OAAWJ,IAAA,CAAK,GAAAb,GAAApB,EAAAiC,EAAW,IAAAu0G,EAAAj2G,EAAAa,GAAA,QAAsC,IAAAs1G,EAAAt1G,EAAAb,EAAAkB,GAAA,SAA+C,SAAS,QAAAiuF,GAAA7uF,EAAAkB,GAAiD,OAAAlB,EAAAwB,QAAA,IAAAxB,EAAA,GAAAwB,OAAA,MAAAs0G,GAAA50G,EAAAlB,EAAA,MAA6E,QAAAY,GAAA,EAAYA,EAAAM,EAAAM,OAAWZ,IAAA,OAAAO,GAAAD,EAAAN,GAAAlB,EAAA,EAAuBA,EAAAyB,EAAAK,OAAW9B,IAAA,GAAAo2G,EAAA91G,EAAAmB,EAAAzB,IAAA,QAAkD,QAAAR,GAAA,EAAYA,EAAAc,EAAAwB,OAAWtC,IAAA,CAAK,OAAAC,GAAAa,EAAAd,GAAAkC,EAAA,EAAmBA,EAAAjC,EAAAqC,OAAWJ,IAAA,GAAA00G,EAAA50G,EAAA/B,EAAAiC,IAAA,QAAkD,QAAAb,GAAA,EAAYA,EAAAW,EAAAM,OAAWjB,IAAA,GAAAq1G,EAAAz2G,EAAA+B,EAAAX,IAAA,SAA2C,SAAS,QAAAgvF,GAAAvvF,EAAAkB,EAAAN,GAAwD,OAAAO,GAAA,EAAYA,EAAAD,EAAAM,OAAWL,IAAA,OAAAzB,GAAAwB,EAAAC,GAAAjC,EAAA,EAAuBA,EAAAc,EAAAwB,OAAWtC,IAAA,CAAK,GAAAC,GAAAa,EAAAd,EAAW,IAAAC,EAAAqC,QAAA,SAAAJ,GAAA,EAA2BA,EAAA1B,EAAA8B,OAAWJ,IAAA,GAAAu0G,EAAAx2G,EAAAO,EAAA0B,IAAA,QAA6C,IAAA20G,EAAA52G,EAAAO,EAAAkB,GAAA,SAA8C,SAAS,QAAAm1G,GAAA/1G,EAAAkB,EAAAN,GAA2C,GAAAZ,EAAAwB,OAAA,GAAe,GAAAo0G,EAAA51G,EAAAkB,GAAA,QAAoC,QAAAC,GAAA,EAAYA,EAAAD,EAAAM,OAAWL,IAAA,GAAA00G,EAAA30G,EAAAC,GAAAnB,EAAAY,GAAA,SAAsD,OAAAlB,GAAA,EAAYA,EAAAM,EAAAwB,OAAW9B,IAAA,GAAAm2G,EAAA71G,EAAAN,GAAAwB,EAAAN,GAAA,QAAsD,UAAS,QAAAg1G,GAAA51G,EAAAkB,GAAiC,OAAAlB,EAAAwB,QAAA,IAAAN,EAAAM,OAAA,QAAuC,QAAAZ,GAAA,EAAYA,EAAAZ,EAAAwB,OAAA,EAAaZ,IAAA,OAAAO,GAAAnB,EAAAY,GAAAlB,EAAAM,EAAAY,EAAA,GAAA1B,EAAA,EAAgCA,EAAAgC,EAAAM,OAAA,EAAatC,IAAA,CAAK,GAAAC,GAAA+B,EAAAhC,GAAAkC,EAAAF,EAAAhC,EAAA,EAAoB,IAAA82G,EAAA70G,EAAAzB,EAAAP,EAAAiC,GAAA,SAAsD,SAAS,QAAA40G,GAAAh2G,EAAAkB,EAAAN,EAAAO,GAAmD,MAAA80G,GAAAj2G,EAAAY,EAAAO,KAAA80G,EAAA/0G,EAAAN,EAAAO,IAAA80G,EAAAj2G,EAAAkB,EAAAN,KAAAq1G,EAAAj2G,EAAAkB,EAAAC,GAAoH,QAAA00G,GAAA71G,EAAAkB,EAAAN,GAA4C,GAAAO,GAAAP,GAAU,QAAAM,EAAAM,OAAA,MAAAxB,GAAAkG,QAAAhF,EAAA,IAAAC,CAAyC,QAAAzB,GAAA,EAAYA,EAAAwB,EAAAM,OAAW9B,IAAK,GAAAk1G,EAAA50G,EAAAkB,EAAAxB,EAAA,GAAAwB,EAAAxB,IAAAyB,EAAA,QAAkD,UAAS,QAAAyzG,GAAA50G,EAAAkB,EAAAN,GAAqC,GAAAO,GAAAD,EAAAgF,QAAAtF,EAAmB,QAAAO,EAAA,MAAAnB,GAAAkG,QAAAhF,EAA6B,IAAAxB,KAAAM,EAAAwC,EAAAtB,EAAAsB,IAAA5B,EAAA4B,EAAAtB,EAAAsB,IAAAxC,EAAAoC,EAAAlB,EAAAkB,IAAAxB,EAAAwB,EAAAlB,EAAAkB,IAAAjB,CAAkD,OAAAzB,GAAA,EAAAM,EAAAkG,QAAAhF,GAAAxB,EAAA,EAAAM,EAAAkG,QAAAtF,GAAAZ,EAAAkG,QAAAtF,EAAA6D,IAAAvD,GAAA8D,MAAAtF,GAAA8E,KAAAtD,IAA8E,QAAA40G,GAAA91G,EAAAkB,GAAwC,OAAAN,GAAAO,EAAAzB,EAAAR,GAAA,EAAAC,EAAA,EAAuBA,EAAAa,EAAAwB,OAAWrC,IAAA,CAAKyB,EAAAZ,EAAAb,EAAO,QAAAiC,GAAA,EAAAb,EAAAK,EAAAY,OAAA,EAAyBJ,EAAAR,EAAAY,OAAWjB,EAAAa,IAAAD,EAAAP,EAAAQ,GAAA1B,EAAAkB,EAAAL,GAAAY,EAAAiB,EAAAlB,EAAAkB,GAAA1C,EAAA0C,EAAAlB,EAAAkB,GAAAlB,EAAAsB,GAAA9C,EAAA8C,EAAArB,EAAAqB,IAAAtB,EAAAkB,EAAAjB,EAAAiB,IAAA1C,EAAA0C,EAAAjB,EAAAiB,GAAAjB,EAAAqB,IAAAtD,MAAoF,MAAAA,GAAS,QAAAy2G,GAAA31G,EAAAkB,GAAmC,OAAAN,IAAA,EAAAO,EAAA,EAAAzB,EAAAM,EAAAwB,OAAA,EAA8BL,EAAAnB,EAAAwB,OAAW9B,EAAAyB,IAAA,CAAO,GAAAjC,GAAAc,EAAAmB,GAAAhC,EAAAa,EAAAN,EAAkBR,GAAAkD,EAAAlB,EAAAkB,GAAAjD,EAAAiD,EAAAlB,EAAAkB,GAAAlB,EAAAsB,GAAArD,EAAAqD,EAAAtD,EAAAsD,IAAAtB,EAAAkB,EAAAlD,EAAAkD,IAAAjD,EAAAiD,EAAAlD,EAAAkD,GAAAlD,EAAAsD,IAAA5B,MAAgE,MAAAA,GAAS,GAAAwH,GAAA1G,EAAA,UAAAu0G,EAAA7tG,EAAA6tG,kBAAoEh3G,GAAAD,SAAgBsvF,2CAAAO,qCAAAU,0CAAA4C,2BAAAyiB,0BACxnF1F,SAAA,MAAagH,KAAA,SAAAx0G,EAAAzC,EAAAD,GAChB,YAAa,IAAAm3G,IAAwBC,qBAAA,SAAAp2G,GAAiC,MAAAA,IAAA,KAAAA,GAAA,KAAsBq2G,OAAA,SAAAr2G,GAAoB,MAAAA,IAAA,MAAAA,GAAA,MAAwBs2G,oBAAA,SAAAt2G,GAAiC,MAAAA,IAAA,MAAAA,GAAA,MAAwBu2G,oBAAA,SAAAv2G,GAAiC,MAAAA,IAAA,MAAAA,GAAA,MAAwBw2G,cAAA,SAAAx2G,GAA2B,MAAAA,IAAA,MAAAA,GAAA,MAAwBy2G,wCAAA,SAAAz2G,GAAqD,MAAAA,IAAA,MAAAA,GAAA,MAAwB02G,iDAAA,SAAA12G,GAA8D,MAAAA,IAAA,MAAAA,GAAA,MAAwB22G,sBAAA,SAAA32G,GAAmC,MAAAA,IAAA,MAAAA,GAAA,MAAwB42G,qBAAA,SAAA52G,GAAkC,MAAAA,IAAA,MAAAA,GAAA,MAAwB62G,eAAA,SAAA72G,GAA4B,MAAAA,IAAA,MAAAA,GAAA,MAAwB82G,0BAAA,SAAA92G,GAAuC,MAAAA,IAAA,MAAAA,GAAA,MAAwB+2G,mBAAA,SAAA/2G,GAAgC,MAAAA,IAAA,MAAAA,GAAA,MAAwBg3G,gCAAA,SAAAh3G,GAA6C,MAAAA,IAAA,MAAAA,GAAA,MAAwBi3G,yBAAA,SAAAj3G,GAAsC,MAAAA,IAAA,MAAAA,GAAA,MAAwBk3G,mBAAA,SAAAl3G,GAAgC,MAAAA,IAAA,MAAAA,GAAA,MAAwBm3G,wBAAA,SAAAn3G,GAAqC,MAAAA,IAAA,MAAAA,GAAA,MAAwBo3G,mCAAA,SAAAp3G,GAAgD,MAAAA,IAAA,OAAAA,GAAA,OAA0Bq3G,0BAAA,SAAAr3G,GAAuC,MAAAA,IAAA,OAAAA,GAAA,OAA0Bs3G,kBAAA,SAAAt3G,GAA+B,MAAAA,IAAA,OAAAA,GAAA,OAA0Bu3G,qCAAA,SAAAv3G,GAAkD,MAAAA,IAAA,OAAAA,GAAA,OAA0Bw3G,8BAAA,SAAAx3G,GAA2C,MAAAA,IAAA,OAAAA,GAAA,OAA0By3G,SAAA,SAAAz3G,GAAsB,MAAAA,IAAA,OAAAA,GAAA,OAA0B03G,SAAA,SAAA13G,GAAsB,MAAAA,IAAA,OAAAA,GAAA,OAA0B23G,SAAA,SAAA33G,GAAsB,MAAAA,IAAA,OAAAA,GAAA,OAA0B43G,4BAAA,SAAA53G,GAAyC,MAAAA,IAAA,OAAAA,GAAA,OAA0B63G,OAAA,SAAA73G,GAAoB,MAAAA,IAAA,OAAAA,GAAA,OAA0B83G,oBAAA,SAAA93G,GAAiC,MAAAA,IAAA,OAAAA,GAAA,OAA0B+3G,cAAA,SAAA/3G,GAA2B,MAAAA,IAAA,OAAAA,GAAA,OAA0Bg4G,+BAAA,SAAAh4G,GAA4C,MAAAA,IAAA,OAAAA,GAAA,OAA0Bi4G,kCAAA,SAAAj4G,GAA+C,MAAAA,IAAA,OAAAA,GAAA,OAA0Bk4G,oBAAA,SAAAl4G,GAAiC,MAAAA,IAAA,OAAAA,GAAA,OAA0Bm4G,qCAAA,SAAAn4G,GAAkD,MAAAA,IAAA,OAAAA,GAAA,OAA0Bo4G,0BAAA,SAAAp4G,GAAuC,MAAAA,IAAA,OAAAA,GAAA,OAA0Bq4G,yBAAA,SAAAr4G,GAAsC,MAAAA,IAAA,OAAAA,GAAA,OAA0Bs4G,eAAA,SAAAt4G,GAA4B,MAAAA,IAAA,OAAAA,GAAA,OAA0Bu4G,cAAA,SAAAv4G,GAA2B,MAAAA,IAAA,OAAAA,GAAA,OAA0Bw4G,yBAAA,SAAAx4G,GAAsC,MAAAA,IAAA,OAAAA,GAAA,OAA0By4G,mBAAA,SAAAz4G,GAAgC,MAAAA,IAAA,OAAAA,GAAA,OAA0B04G,yBAAA,SAAA14G,GAAsC,MAAAA,IAAA,OAAAA,GAAA,OAA0B24G,mBAAA,SAAA34G,GAAgC,MAAAA,IAAA,OAAAA,GAAA,OAA0B44G,+BAAA,SAAA54G,GAA4C,MAAAA,IAAA,OAAAA,GAAA,OAA0B64G,8BAAA,SAAA74G,GAA2C,MAAAA,IAAA,OAAAA,GAAA,OAA0B84G,iBAAA,SAAA94G,GAA8B,MAAAA,IAAA,OAAAA,GAAA,OAA0B+4G,0BAAA,SAAA/4G,GAAuC,MAAAA,IAAA,OAAAA,GAAA,OAA0Bg5G,sBAAA,SAAAh5G,GAAmC,MAAAA,IAAA,OAAAA,GAAA,OAA0Bi5G,8BAAA,SAAAj5G,GAA2C,MAAAA,IAAA,OAAAA,GAAA,OAA0Bk5G,gCAAA,SAAAl5G,GAA6C,MAAAA,IAAA,OAAAA,GAAA,OAA4Bf,GAAAD,QAAAm3G,OAC/2FgD,KAAA,SAAAz3G,EAAAzC,EAAAD,GACJ,YAAa,IAAAo6G,GAAA,SAAAl4G,EAAAN,GAA2BH,KAAA4H,IAAAnH,EAAAT,KAAAuuD,SAAApuD,EAAAH,KAAAw5D,QAAyCm/C,GAAAh5G,UAAA65D,MAAA,WAAoC,GAAA/4D,GAAAT,IAAW,QAAAG,KAAAM,GAAA6J,KAAA7J,EAAA8tD,SAAA9tD,EAAA6J,KAAAnK,GAA0C,OAAAH,MAAAsK,QAAmBtK,KAAA44G,SAAA54G,MAAoB24G,EAAAh5G,UAAAmE,IAAA,SAAArD,EAAAN,GAAsC,GAAAH,KAAAi6D,IAAAx5D,GAAAT,KAAA44G,MAAA5wG,OAAAhI,KAAA44G,MAAA/uG,QAAApJ,GAAA,GAAAT,KAAAsK,KAAA7J,GAAAN,EAAAH,KAAA44G,MAAAvxG,KAAA5G,OAA4F,IAAAT,KAAAsK,KAAA7J,GAAAN,EAAAH,KAAA44G,MAAAvxG,KAAA5G,GAAAT,KAAA44G,MAAA73G,OAAAf,KAAA4H,IAAA,CAAsE,GAAAlH,GAAAV,KAAAV,IAAAU,KAAA44G,MAAA,GAA8Bl4G,IAAAV,KAAAuuD,SAAA7tD,GAAoB,MAAAV,OAAY24G,EAAAh5G,UAAAs6D,IAAA,SAAAx5D,GAAoC,MAAAA,KAAAT,MAAAsK,MAAsBquG,EAAAh5G,UAAA0Y,KAAA,WAAoC,MAAArY,MAAA44G,OAAkBD,EAAAh5G,UAAAL,IAAA,SAAAmB,GAAoC,IAAAT,KAAAi6D,IAAAx5D,GAAA,WAA4B,IAAAN,GAAAH,KAAAsK,KAAA7J,EAAmB,cAAAT,MAAAsK,KAAA7J,GAAAT,KAAA44G,MAAA5wG,OAAAhI,KAAA44G,MAAA/uG,QAAApJ,GAAA,GAAAN,GAAwEw4G,EAAAh5G,UAAAu6D,mBAAA,SAAAz5D,GAAmD,MAAAT,MAAAi6D,IAAAx5D,GAAAT,KAAAsK,KAAA7J,GAAA,MAAqCk4G,EAAAh5G,UAAAs7D,OAAA,SAAAx6D,GAAuC,IAAAT,KAAAi6D,IAAAx5D,GAAA,MAAAT,KAA4B,IAAAG,GAAAH,KAAAsK,KAAA7J,EAAmB,cAAAT,MAAAsK,KAAA7J,GAAAT,KAAAuuD,SAAApuD,GAAAH,KAAA44G,MAAA5wG,OAAAhI,KAAA44G,MAAA/uG,QAAApJ,GAAA,GAAAT,MAA4F24G,EAAAh5G,UAAAy6D,WAAA,SAAA35D,GAA2C,GAAAN,GAAAH,IAAW,KAAAA,KAAA4H,IAAAnH,EAAeT,KAAA44G,MAAA73G,OAAAf,KAAA4H,KAA2B,CAAE,GAAAlH,GAAAP,EAAAb,IAAAa,EAAAy4G,MAAA,GAAwBl4G,IAAAP,EAAAouD,SAAA7tD,GAAiB,MAAAV,OAAYxB,EAAAD,QAAAo6G,OAC/nCE,KAAA,SAAA53G,EAAAzC,EAAAD,GACJ,YAAa,SAAAu6G,GAAAp4G,EAAAP,GAAyB,GAAAM,GAAAs4G,EAAA9rE,EAAA0kE,QAA+B,IAAAjxG,EAAAyuG,SAAA1uG,EAAA0uG,SAAAzuG,EAAAs4G,UAAAv4G,EAAAu4G,UAAA,MAAAv4G,EAAAw4G,OAAAv4G,EAAAu4G,KAAA,GAAAx4G,EAAAw4G,KAAAv4G,EAAAu4G,OAAAhsE,EAAA2kE,qBAAA,MAAAsH,GAAAx4G,EAA0I,MAAAP,KAAA8sC,EAAAM,cAAA,SAAA1sC,OAAA,qDAAAs4G,EAA0G,UAAAh5G,EAAA,YAAAU,OAAA,sFAAAs4G,EAA0H,OAAAz4G,GAAA6/B,OAAAl5B,KAAA,gBAAAlH,GAAA+4G,EAAAx4G,GAAqD,QAAAioF,GAAAjoF,GAAwB,WAAAA,EAAAmJ,QAAA,WAAgC,QAAAuvG,GAAA14G,GAAmC,OAAAP,GAAA,EAAYA,EAAAO,EAAAK,OAAWZ,IAAA,IAAAO,EAAAP,GAAA0J,QAAA,sBAAAnJ,EAAAP,GAAA,iBAAA8sC,EAAAM,cAAA,KAA2F,QAAAwrE,GAAAr4G,GAAqB,GAAAP,GAAAO,EAAA4pB,MAAA+uF,EAAqB,KAAAl5G,EAAA,SAAAU,OAAA,6BAAoD,QAAOsuG,SAAAhvG,EAAA,GAAA64G,UAAA74G,EAAA,GAAA84G,KAAA94G,EAAA,QAAAogC,OAAApgC,EAAA,GAAAA,EAAA,GAAAoqB,MAAA,SAA4E,QAAA2uF,GAAAx4G,GAAsB,GAAAP,GAAAO,EAAA6/B,OAAAx/B,OAAA,IAAAL,EAAA6/B,OAAArxB,KAAA,OAAgD,OAAAxO,GAAAyuG,SAAA,MAAAzuG,EAAAs4G,UAAAt4G,EAAAu4G,KAAA94G,EAA6C,GAAA8sC,GAAAhsC,EAAA,YAAAijB,EAAAjjB,EAAA,aAAAk4G,EAAA,6DAA+H56G,GAAAoqF,cAAApqF,EAAA2qF,kBAAA,SAAAxoF,EAAAP,GAAwE,IAAAwoF,EAAAjoF,GAAA,MAAAA,EAA4B,IAAAD,GAAAs4G,EAAAr4G,EAAkB,OAAAD,GAAAw4G,KAAA,aAAAx4G,EAAAw4G,KAAAH,EAAAr4G,EAAAN,IAAkD5B,EAAAsoF,mBAAA,SAAAnmF,EAAAP,GAA0C,IAAAwoF,EAAAjoF,GAAA,MAAAA,EAA4B,IAAAD,GAAAs4G,EAAAr4G,EAAkB,OAAAD,GAAAw4G,KAAA,YAAAx4G,EAAAw4G,KAAAH,EAAAr4G,EAAAN,IAAiD5B,EAAAu1D,mBAAA,SAAApzD,EAAAP,GAA0C,IAAAwoF,EAAAjoF,GAAA,MAAAA,EAA4B,IAAAD,GAAAs4G,EAAAr4G,EAAkB,OAAAD,GAAAw4G,KAAA,OAAAx4G,EAAAu4G,UAAA,QAAAv4G,EAAA8/B,OAAAl5B,KAAA,UAAAyxG,EAAAr4G,EAAAN,IAAiF5B,EAAA2oF,mBAAA,SAAAxmF,EAAAP,EAAAM,EAAAG,GAA8C,GAAA3B,GAAA85G,EAAAr4G,EAAkB,OAAAioF,GAAAjoF,IAAAzB,EAAAg6G,KAAA,aAAAh6G,EAAAg6G,KAAA,UAAA94G,EAAAM,EAAAq4G,EAAA75G,EAAA2B,KAAA3B,EAAAg6G,MAAA,GAAA94G,EAAAM,EAAAy4G,EAAAj6G,IAAgH,IAAAq6G,GAAA,uBAA6C/6G,GAAA62D,iBAAA,SAAA10D,EAAAP,EAAAM,GAAyC,IAAAN,IAAAwoF,EAAAxoF,GAAA,MAAAO,EAAgC,IAAAE,GAAAm4G,EAAAr4G,GAAAzB,EAAAilB,EAAA0sB,kBAAA,SAAAnwC,EAAA,SAAAZ,EAAAqkB,EAAA2sF,aAAA,YAAsG,OAAAjwG,GAAAq4G,KAAAr4G,EAAAq4G,KAAA9uF,QAAAmvF,EAAA,GAAAr6G,EAAAY,GAAAu5G,EAAAx4G,EAAA2/B,QAAA24E,EAAAt4G,GAAqG,IAAAy4G,GAAA,2CAChiEE,YAAA,IAAAC,WAAA,MAA+BC,KAAA,SAAAx4G,EAAAzC,EAAAD,GAClC,YAAa,IAAAihD,GAAAv+C,EAAA,6BAAiDzC,GAAAD,QAAAm7G,0BAAA,SAAA94G,GAAqD,OAAAnC,GAAA,EAAAiC,EAAAE,EAAgBnC,EAAAiC,EAAAK,OAAWtC,GAAA,GAAM,GAAAqB,GAAAY,EAAAjC,EAAW,KAAAF,EAAAg2F,8BAAAz0F,EAAAmgB,WAAA,aAAoE,UAASzhB,EAAAD,QAAAg8B,0BAAA,SAAA35B,GAAsD,OAAAnC,GAAA,EAAAiC,EAAAE,EAAgBnC,EAAAiC,EAAAK,OAAWtC,GAAA,GAAM,GAAAqB,GAAAY,EAAAjC,EAAW,IAAAF,EAAAo2F,kCAAA70F,EAAAmgB,WAAA,aAAuE,UAASzhB,EAAAD,QAAAu8B,oBAAA,SAAAl6B,GAAgD,OAAAnC,GAAA,EAAAiC,EAAAE,EAAgBnC,EAAAiC,EAAAK,OAAWtC,GAAA,GAAM,GAAAqB,GAAAY,EAAAjC,EAAW,KAAAF,EAAAo7G,wBAAA75G,EAAAmgB,WAAA,aAA8D,UAASzhB,EAAAD,QAAAo7G,wBAAA,SAAA/4G,GAAoD,OAAA4+C,EAAAo2D,OAAAh1G,KAAA4+C,EAAA,qBAAA5+C,KAAA4+C,EAAA,qBAAA5+C,KAAA4+C,EAAA,+BAAA5+C,KAAA4+C,EAAA,+BAAA5+C,IAAsLpC,EAAAD,QAAAg2F,8BAAA,SAAA3zF,GAA0D,QAAAA,EAAA,WAAA4+C,EAAA,qBAAA5+C,MAAA4+C,EAAA03D,SAAAt2G,MAAA4+C,EAAA,2BAAA5+C,MAAA4+C,EAAA,gCAAA5+C,MAAA4+C,EAAA,qBAAA5+C,MAAA4+C,EAAA,2BAAA5+C,MAAA4+C,EAAA,eAAA5+C,MAAA4+C,EAAA,+BAAA5+C,MAAA4+C,EAAA,sCAAA5+C,MAAA4+C,EAAA,0BAAA5+C,MAAA4+C,EAAA,mCAAA5+C,MAAA4+C,EAAA,iCAAA5+C,MAAA4+C,EAAAw3D,SAAAp2G,MAAA4+C,EAAA,sCAAA5+C,MAAA4+C,EAAA,mBAAA5+C,MAAA4+C,EAAA,gCAAA5+C,MAAA4+C,EAAAy3D,SAAAr2G,MAAA4+C,EAAA,kBAAA5+C,MAAA4+C,EAAA,eAAA5+C,MAAA4+C,EAAA,gBAAA5+C,KAAkxBrC,EAAAo2F,kCAAA,SAAA/zF,GAAuD,aAAAA,GAAA,MAAAA,OAAA,UAAA4+C,EAAA,qBAAA5+C,MAAA4+C,EAAA03D,SAAAt2G,OAAA4+C,EAAA,2BAAA5+C,OAAA,OAAAA,GAAA,UAAA4+C,EAAA,gCAAA5+C,MAAA4+C,EAAA,qBAAA5+C,MAAA4+C,EAAA,2BAAA5+C,MAAA4+C,EAAA,eAAA5+C,OAAA4+C,EAAA,+BAAA5+C,OAAA,OAAAA,GAAA,OAAAA,GAAA,OAAAA,GAAA,eAAAA,MAAA4+C,EAAA,sCAAA5+C,MAAA4+C,EAAA,0BAAA5+C,MAAA4+C,EAAA,mCAAA5+C,MAAA4+C,EAAA,6BAAA5+C,MAAA4+C,EAAA,0BAAA5+C,MAAA4+C,EAAA,0BAAA5+C,MAAA4+C,EAAA,eAAA5+C,MAAA4+C,EAAA,oBAAA5+C,MAAA4+C,EAAAw3D,SAAAp2G,MAAA4+C,EAAA,sCAAA5+C,MAAA4+C,EAAA43D,OAAAx2G,MAAA4+C,EAAA,mBAAA5+C,MAAA4+C,EAAA,gCAAA5+C,OAAA4+C,EAAAy3D,SAAAr2G,IAAA,QAAAA,OAAA4+C,EAAA,iCAAA5+C,IAAA,QAAAA,GAAA,QAAAA,GAAA,QAAAA,MAAA,OAAAA,GAAA,eAAAA,GAAA,QAAAA,GAAA,QAAAA,MAAA,OAAAA,GAAA,eAAAA,MAAA,OAAAA,GAAA,WAAA4+C,EAAA,uBAAA5+C,OAAA,OAAAA,GAAA,OAAAA,GAAA,OAAAA,GAAA,UAAA4+C,EAAA,yCAAA5+C,MAAA4+C,EAAA,kDAAA5+C,MAAA4+C,EAAA,kBAAA5+C,MAAA4+C,EAAA,2BAAA5+C,MAAA4+C,EAAA,gBAAA5+C,MAAA4+C,EAAA,eAAA5+C,KAA+8CrC,EAAAq7G,kCAAA,SAAAh5G,GAAuD,SAAA4+C,EAAA,sBAAA5+C,IAAA,MAAAA,GAAA,MAAAA,GAAA,MAAAA,GAAA,MAAAA,GAAA,MAAAA,GAAA,MAAAA,GAAA,MAAAA,GAAA,MAAAA,GAAA,MAAAA,OAAA4+C,EAAA,uBAAA5+C,IAAA,OAAAA,GAAA,OAAAA,GAAA,OAAAA,GAAA,OAAAA,GAAA,OAAAA,GAAA,OAAAA,GAAA,OAAAA,GAAA,OAAAA,GAAA,OAAAA,GAAA,OAAAA,GAAA,OAAAA,GAAA,OAAAA,MAAA4+C,EAAA,sBAAA5+C,MAAA4+C,EAAA,gBAAA5+C,OAAA4+C,EAAA,2BAAA5+C,SAAA,MAAAA,GAAA,MAAAA,GAAA,MAAAA,GAAA,MAAAA,GAAA,MAAAA,GAAA,YAAAA,MAAA,MAAAA,GAAA,MAAAA,GAAA,MAAAA,GAAA,aAAAA,MAAA,MAAAA,GAAA,MAAAA,GAAA,MAAAA,GAAA,WAAA4+C,EAAA,oBAAA5+C,IAAA,OAAAA,MAAA4+C,EAAA,iCAAA5+C,MAAA4+C,EAAA,0BAAA5+C,MAAA4+C,EAAA,oBAAA5+C,OAAA4+C,EAAA,yBAAA5+C,OAAA,MAAAA,GAAA,UAAA4+C,EAAA,oCAAA5+C,SAAA,OAAAA,GAAA,OAAAA,GAAA,OAAAA,GAAA,OAAAA,GAAA,OAAAA,GAAA,WAAA4+C,EAAA,+BAAA5+C,MAAA4+C,EAAAy3D,SAAAr2G,MAAA4+C,EAAA,oBAAA5+C,MAAA4+C,EAAA,2BAAA5+C,MAAA4+C,EAAA,uBAAA5+C,MAAA4+C,EAAA,iCAAA5+C,IAAA,OAAAA,GAAA,OAAAA,GAAA,OAAAA,MAAA,MAAAA,GAAA,OAAAA,GAAA,OAAAA,GAAA,eAAAA,GAAA,QAAAA,GAAgsCrC,EAAAs7G,kCAAA,SAAAj5G,GAAuD,QAAArC,EAAAo2F,kCAAA/zF,IAAArC,EAAAq7G,kCAAAh5G,OACx6Ik5G,6BAAA,MAAiCC,KAAA,SAAA94G,EAAAzC,EAAAD,GACpC,YAAa,IAAA2mC,GAAAjkC,EAAA,iBAAqCzC,GAAAD,QAAA,SAAAgB,EAAAkB,EAAA/B,GAA+B,GAAAa,EAAA,GAAA2lC,GAAA3lC,EAAA4lC,IAAA5lC,EAAA6lC,KAAA3kC,EAAA,CAAgC,GAAAG,GAAA,GAAAskC,GAAA3lC,EAAA4lC,IAAA,IAAA5lC,EAAA6lC,KAAA3mC,EAAA,GAAAymC,GAAA3lC,EAAA4lC,IAAA,IAAA5lC,EAAA6lC,KAAAnmC,EAAAP,EAAA0qC,cAAA7pC,GAAAkG,QAAAhF,EAAgG/B,GAAA0qC,cAAAxoC,GAAA6E,QAAAhF,GAAAxB,EAAAM,EAAAqB,EAAAlC,EAAA0qC,cAAA3qC,GAAAgH,QAAAhF,GAAAxB,IAAAM,EAAAd,GAA2E,KAAK4C,KAAAoK,IAAAlM,EAAA4lC,IAAAzmC,EAAAipC,OAAAxC,KAAA,KAAiC,CAAE,GAAAhlC,GAAAzB,EAAA0qC,cAAA7pC,EAAyB,IAAAY,EAAA4B,GAAA,GAAA5B,EAAAwB,GAAA,GAAAxB,EAAA4B,GAAArD,EAAAuI,OAAA9G,EAAAwB,GAAAjD,EAAAwI,OAAA,KAAqD3H,GAAA4lC,IAAAzmC,EAAAipC,OAAAxC,IAAA5lC,EAAA4lC,KAAA,IAAA5lC,EAAA4lC,KAAA,IAAyC,MAAA5lC,MACxbk0D,iBAAA,KAAoBumD,KAAA,SAAA/4G,EAAAzC,EAAAD,GACvB,YAAa,SAAAq6B,GAAAn4B,GAAkC,GAAAC,GAAAkV,KAAAC,UAAApV,EAAwB,IAAAw5G,EAAAv5G,GAAA,MAAAu5G,GAAAv5G,EAA0D,IAAAP,OAAA,KAAAM,EAAAikC,UAAA,EAAAjkC,EAAAikC,UAAAjmC,EAAA,EAAAc,EAAA,EAAAqB,GAAA,SAAAd,EAAAW,EAAAs4B,QAAAvmB,IAAA,SAAA/R,GAAyFG,EAAAiJ,QAAApJ,EAAAmM,MAAA,GAAAhM,EAAAyG,KAAA5G,EAAAmM,KAAoC,IAAAlM,GAAAw5G,EAAAz5G,EAAAmM,MAAA9M,EAAArB,EAAAo2F,EAAAp2F,EAAA4C,KAAAuG,IAAAzH,EAAAO,IAAAzB,EAAAwB,EAAAmxB,YAAA,CAAkE,OAAAryB,GAAA8B,KAAAuG,IAAArI,EAAAmB,GAAAjC,GAAAiC,EAAAzB,GAA+BF,KAAA0B,EAAA1B,KAAA6N,KAAAnM,EAAAmM,KAAAglB,WAAA3yB,EAAAotC,OAAAvsC,KAA+Cb,EAAA41F,EAAAp2F,EAAA4C,KAAAuG,IAAArI,EAAAY,IAAAN,EAAA,SAAAY,GAAyC,QAAAC,KAAaD,EAAAujB,MAAAhkB,KAAA+jB,WAAwB,MAAAtjB,KAAAC,EAAAgtD,UAAAjtD,GAAAC,EAAAf,UAAAT,OAAA2D,OAAApC,KAAAd,WAAAe,EAAAf,UAAAsoB,YAAAvnB,KAAgGy5G,EAASt6G,GAAAF,UAAA+kC,UAAAvkC,EAAAN,EAAAF,UAAAiJ,KAAA3J,CAA2C,QAAA0C,GAAA,EAAA9C,EAAAiB,EAAgB6B,EAAA9C,EAAAkC,OAAWY,GAAA,SAAAD,GAAA7C,EAAA8C,GAAAhB,EAAA,EAAwBA,EAAAe,EAAAkwB,WAAejxB,IAAA,CAAK,GAAAJ,GAAAmB,EAAA3C,IAAa,IAAA2C,EAAAkwB,WAAA,IAAArxB,GAAAI,GAAAJ,IAAAV,GAAAF,UAAA,SAAAkB,OAAAN,EAAA,2DAAyHrB,QAAAC,eAAAU,EAAAF,UAAAY,EAAA65G,EAAA14G,EAAAf,IAA0D,GAAA/B,GAAA,SAAA6B,GAAkB,QAAAC,KAAaD,EAAAujB,MAAAhkB,KAAA+jB,WAAwB,MAAAtjB,KAAAC,EAAAgtD,UAAAjtD,GAAAC,EAAAf,UAAAT,OAAA2D,OAAApC,KAAAd,WAAAe,EAAAf,UAAAsoB,YAAAvnB,KAAgG25G,EAAc,OAAAz7G,GAAAe,UAAAo5B,QAAAj5B,EAAAlB,EAAAe,UAAA4wF,WAAA1wF,EAAAjB,EAAAe,UAAAgkC,gBAAA1kC,EAAAL,EAAAe,UAAAqxB,YAAAspF,EAAAx6G,EAAAb,GAAAL,EAAAe,UAAA46G,WAAA35G,EAAAq5G,EAAAv5G,GAAA9B,IAAwL,QAAAi2F,GAAAp0F,EAAAC,GAAoB,MAAAW,MAAAkd,KAAA9d,EAAAC,KAAwB,QAAAw5G,GAAAz5G,GAAmB,MAAA+5G,GAAA/5G,GAAAg6G,kBAAsC,QAAAC,GAAAj6G,GAA6B,MAAAA,GAAAsnE,cAAuB,QAAAuyC,GAAA75G,EAAAC,GAAgC,OAAAP,MAAA1B,KAAAc,EAAA,wDAAwEqB,EAAA,EAAAd,EAAAW,EAAYG,EAAAd,EAAAiB,OAAWH,GAAA,GAAM,GAAA3B,GAAAa,EAAAc,GAAAf,EAAAq6G,EAAAj7G,EAAA2N,KAA4BzM,GAAA0J,QAAAhK,GAAA,IAAAM,EAAAkH,KAAAxH,GAAAN,GAAA,QAAAM,EAAA6pD,QAAA,cAAAhpD,EAAAb,GAAA6pD,QAAA,SAAqF,QAAA/nD,GAAA,EAAYA,EAAA1C,EAAA2yB,WAAejwB,IAAA,CAAK,GAAA9C,GAAA,IAAAJ,EAAAsC,OAAAW,EAAA,IAAA7B,EAAA6pD,QAAA,UAAAzqD,EAAAotC,OAAAxsC,EAAA8B,GAAA+nD,QAAA,EAAsEnqD,IAAA,QAAAm7G,EAAAz7G,EAAA2N,MAAA,IAAAlL,EAAA,OAAA7C,EAAA,MAAqDJ,EAAA4I,KAAAxI,IAAe,MAAAU,IAAA,YAAoB,GAAAU,UAAAxB,EAAAorB,WAAAtqB,GAA+B,QAAAo7G,GAAAl6G,EAAAC,GAA0C,GAAAP,GAAA,YAAA+5G,EAAAz5G,EAAAmM,MAAA88C,QAAA,GAAAjrD,GAAAgC,EAAA4rC,OAAA6tE,EAAAz5G,EAAAmM,MAAAlM,GAAAgpD,QAAA,GAAAnqD,EAAAY,EAAA,MAAA1B,CAAiG,4BAAAi8G,EAAAj6G,EAAAmM,MAAA,IAAArN,EAAA,IAA8D,QAAA66G,GAAA35G,EAAAC,GAA8B,GAAAP,GAAAw6G,EAAAl6G,EAAAC,EAAuC,QAAOpB,IAAA,GAAAW,UAAA,UAAAE,EAAA,KAA+B+Y,IAAA,GAAAjZ,UAAA,IAAAE,EAAA,UAAoC3B,EAAAD,QAAAq6B,CAAqC,IAAA4hF,IAAervE,KAAAyvE,UAAAxvE,MAAAvtB,WAAAwtB,MAAA5hC,WAAA6hC,OAAAuvE,YAAAtvE,MAAArzB,WAAAszB,OAAAsvE,YAAArvE,QAAArqC,cAA6H+4G,EAAA,SAAA15G,EAAAC,GAAsBV,KAAA+6G,aAAAt6G,EAAAT,KAAAg7G,MAAAt6G,EAAAV,KAAA4I,KAAA5I,KAAAi7G,MAAAj7G,KAAAg7G,MAAA,EAAAh7G,KAAAk7G,MAAAl7G,KAAAg7G,MAAA,EAAAh7G,KAAAm7G,MAAAn7G,KAAAg7G,MAAA,GAAmHX,EAAA,SAAA55G,GAAkET,KAAAo7G,eAAA,WAAA36G,GAAAT,KAAAiY,YAAAxX,EAAAwX,YAAAjY,KAAAe,OAAAN,EAAAM,OAAAf,KAAAq7G,SAAAr7G,KAAAiY,YAAA05C,WAAA3xD,KAAA2jC,gBAAA3jC,KAAAs7G,kBAAAt7G,KAAAq7G,UAAA,EAAAr7G,KAAA+H,OAAA,IAA8MsyG,GAAA1nF,UAAA,WAAiC,OAAOoG,QAAA/4B,KAAAL,UAAAo5B,QAAA2L,UAAA1kC,KAAAL,UAAA4wF,WAAA5wF,UAAA+kC,YAAwF21E,EAAA16G,UAAAgzB,UAAA,SAAAlyB,GAA6C,MAAAT,MAAAu7G,QAAA96G,IAAAT,KAAAo7G,eAAA,EAAA36G,EAAA4G,KAAArH,KAAAiY,eAAyElX,OAAAf,KAAAe,OAAAkX,YAAAjY,KAAAiY,cAAiDoiG,EAAA16G,UAAAL,IAAA,SAAAmB,GAAuC,UAAAT,MAAAuwF,WAAAvwF,KAAAS,IAAmC45G,EAAA16G,UAAA47G,MAAA,WAAwCv7G,KAAAe,SAAAf,KAAAq7G,WAAAr7G,KAAAq7G,SAAAr7G,KAAAe,OAAAf,KAAAiY,YAAAjY,KAAAiY,YAAAa,MAAA,EAAA9Y,KAAAe,OAAAf,KAAA2jC,iBAAA3jC,KAAAs7G,kBAA0JjB,EAAA16G,UAAAwI,MAAA,WAAwCnI,KAAAe,OAAA,GAAcs5G,EAAA16G,UAAAoI,OAAA,SAAAtH,GAA0C,GAAAT,KAAAe,OAAAN,IAAAT,KAAAq7G,SAAA,CAAkCr7G,KAAAq7G,SAAAh6G,KAAAuG,IAAAnH,EAAAY,KAAAoV,MAAr8B,EAAq8BzW,KAAAq7G,UAAr8B,KAAq8Br7G,KAAAiY,YAAA,GAAAD,aAAAhY,KAAAq7G,SAAAr7G,KAAA2jC,gBAA4J,IAAAjjC,GAAAV,KAAAw7G,KAAiBx7G,MAAAs7G,gBAAA56G,GAAAV,KAAAw7G,MAAAtiG,IAAAxY,KAA2C25G,EAAA16G,UAAA27G,cAAA,WAAgD,OAAA76G,GAAAT,KAAAU,EAAA,EAAAP,EAAAM,EAAA85G,WAAkC75G,EAAAP,EAAAY,OAAWL,GAAA,GAAM,GAAAjC,GAAA0B,EAAAO,EAAWD,GAAAi6G,EAAAj8G,IAAA,GAAA+7G,GAAA/7G,GAAAgC,EAAAwX,eAAwDoiG,EAAA16G,UAAA0lC,QAAA,SAAA5kC,EAAAC,GAA6C,OAAAP,GAAAH,KAAAvB,KAAAc,EAAAkB,EAAwBlB,EAAAmB,EAAInB,IAAA,CAAK,GAAAqB,GAAAT,EAAAb,IAAAC,EAAed,GAAA4I,KAAAzG,GAAU,MAAAnC,GAAU,IAAAw7G,WACl4HwB,KAAA,SAAAx6G,EAAAzC,EAAAD,GACJ,YAAa,IAAA2lB,GAAAjjB,EAAA,aAAA06D,EAAA,SAAAl7D,EAAAxB,GAAyDe,KAAA07G,UAAAj7G,EAAAT,KAAA27G,kBAAA18G,EAAAe,KAAA47G,eAAA,EAAiEjgD,GAAAh8D,UAAA08D,OAAA,WAAsC,GAAA57D,GAAAT,IAAW,KAAAA,KAAA67G,kBAAA,CAA4B,GAAA58G,GAAA,IAAAe,KAAA47G,eAAA,EAAA57G,KAAA47G,eAAA57G,KAAA07G,UAAAx3F,EAAA6C,KAAiF9nB,IAAA,GAAAe,KAAA47G,eAAA13F,EAAA6C,MAAA/mB,KAAA27G,qBAAA37G,KAAA67G,kBAAA/4F,WAAA,WAA+GriB,EAAAo7G,sBAAA,GAAAp7G,EAAAm7G,eAAA13F,EAAA6C,MAAAtmB,EAAAk7G,qBAAgF18G,KAAK08D,EAAAh8D,UAAA+8D,KAAA,WAAqC18D,KAAA67G,oBAAA54F,aAAAjjB,KAAA67G,mBAAA77G,KAAA67G,sBAAA,KAA6Fr9G,EAAAD,QAAAo9D,IACxmB49C,YAAA,MAAgBuC,KAAA,SAAA76G,EAAAzC,EAAAD,GACnB,YAAa,SAAAu5B,GAAA33B,EAAAZ,GAA4B,MAAAA,GAAA4qB,QAAA,cAA4B,SAAA5qB,EAAAmB,GAAiB,MAAAA,KAAAP,GAAA2f,OAAA3f,EAAAO,IAAA,KAAgClC,EAAAD,QAAAu5B,OAClHikF,KAAA,SAAA96G,EAAAzC,EAAAD,GACJ,YAAa,IAAAmM,GAAAzJ,EAAA,sBAAA2jC,EAAA3jC,EAAA,oBAAAA,GAAA,yBAA6H1C,GAAAsxF,eAAA,SAAAnvF,GAAmC,GAAAA,GAAA,UAAiB,IAAAA,GAAA,UAAiB,IAAAP,GAAAO,IAAAD,EAAAN,EAAAO,CAAgB,WAAAA,EAAA,GAAAD,EAAA,GAAAC,EAAAP,GAAAM,EAAA,MAAgClC,EAAA27F,OAAA,SAAAx5F,EAAAP,EAAAM,EAAAlB,GAAkC,GAAAN,GAAA,GAAAyL,GAAAhK,EAAAP,EAAAM,EAAAlB,EAA8B,iBAAAmB,GAAmB,MAAAzB,GAAAyM,MAAAhL,KAAmBnC,EAAAk6F,KAAAl6F,EAAA27F,OAAA,cAAA37F,EAAAwpC,MAAA,SAAArnC,EAAAP,EAAAM,GAAyE,MAAAY,MAAAmJ,IAAA/J,EAAAY,KAAAuG,IAAAzH,EAAAO,KAAiCnC,EAAAgX,KAAA,SAAA7U,EAAAP,EAAAM,GAA8B,GAAAlB,GAAAkB,EAAAN,EAAAlB,IAAAyB,EAAAP,GAAAZ,OAAAY,CAA4B,OAAAlB,KAAAkB,EAAAM,EAAAxB,GAAiBV,EAAAkhD,SAAA,SAAA/+C,EAAAP,EAAAM,GAAkC,IAAAC,EAAAK,OAAA,MAAAN,GAAA,QAA+B,IAAAlB,GAAAmB,EAAAK,OAAA9B,EAAA,GAAA+G,OAAAtF,EAAAK,QAAAH,EAAA,IAA4CF,GAAAob,QAAA,SAAApb,EAAAjC,GAAwB0B,EAAAO,EAAA,SAAAA,EAAAP,GAAkBO,IAAAE,EAAAF,GAAAzB,EAAAR,GAAA0B,EAAA,KAAAZ,GAAAkB,EAAAG,EAAA3B,QAAmCV,EAAA8vB,OAAA,SAAA3tB,GAA4B,GAAAP,KAAS,QAAAM,KAAAC,GAAAP,EAAAkH,KAAA3G,EAAAD,GAA4B,OAAAN,IAAS5B,EAAAk8D,eAAA,SAAA/5D,EAAAP,GAAsC,GAAAM,KAAS,QAAAlB,KAAAmB,GAAAnB,IAAAY,IAAAM,EAAA4G,KAAA9H,EAAiC,OAAAkB,IAASlC,EAAAoW,OAAA,SAAAjU,GAA4B,OAAAP,MAAAM,EAAAsjB,UAAAhjB,OAAA,EAAkCN,KAAA,GAAON,EAAAM,GAAAsjB,UAAAtjB,EAAA,EAAqB,QAAAlB,GAAA,EAAAN,EAAAkB,EAAgBZ,EAAAN,EAAA8B,OAAWxB,GAAA,GAAM,GAAAqB,GAAA3B,EAAAM,EAAW,QAAAd,KAAAmC,GAAAF,EAAAjC,GAAAmC,EAAAnC,GAAyB,MAAAiC,IAASnC,EAAAw1D,KAAA,SAAArzD,EAAAP,GAA4B,OAAAM,MAAYlB,EAAA,EAAKA,EAAAY,EAAAY,OAAWxB,IAAA,CAAK,GAAAN,GAAAkB,EAAAZ,EAAWN,KAAAyB,KAAAD,EAAAxB,GAAAyB,EAAAzB,IAAoB,MAAAwB,GAAU,IAAAkG,GAAA,CAASpI,GAAAq9D,SAAA,WAA4B,MAAAj1D,MAAYpI,EAAAg5D,QAAA,SAAA72D,EAAAP,GAA+BO,EAAAob,QAAA,SAAApb,GAAsBP,EAAAO,KAAAP,EAAAO,GAAAP,EAAAO,GAAAyb,KAAAhc,OAA4B5B,EAAA60D,qBAAA,SAAA1yD,GAA0C,OAAAP,GAAA,IAAAM,EAAA,IAAAlB,GAAA,IAAAN,GAAA,IAAA2B,EAAA,EAAsCA,EAAAF,EAAAK,OAAWH,IAAAT,EAAAkB,KAAAmJ,IAAArK,EAAAO,EAAAE,GAAAikC,QAAApkC,EAAAY,KAAAmJ,IAAA/J,EAAAC,EAAAE,GAAAkkC,KAAAvlC,EAAA8B,KAAAuG,IAAArI,EAAAmB,EAAAE,GAAAikC,QAAA5lC,EAAAoC,KAAAuG,IAAA3I,EAAAyB,EAAAE,GAAAkkC,IAAsG,IAAArmC,GAAAc,EAAAY,EAAAQ,EAAA1B,EAAAwB,EAAAX,EAAAuB,KAAAuG,IAAAnJ,EAAAkC,GAAA9B,EAAAwC,KAAAuG,IAAA,EAAAvG,KAAAoV,OAAApV,KAAA6S,IAAApU,GAAAuB,KAAAoY,KAAgF,WAAAmrB,IAAAzkC,EAAAZ,GAAA,GAAAkB,EAAAxB,GAAA,KAAA8lC,OAAAlmC,IAAmDN,EAAAqnF,SAAA,SAAAllF,EAAAP,GAAgC,WAAAO,EAAAmJ,QAAA1J,EAAAO,EAAAK,OAAAZ,EAAAY,SAA0CxC,EAAA8iE,UAAA,SAAA3gE,EAAAP,EAAAM,GAAmC,GAAAlB,GAAAS,KAAAf,IAAgB,QAAA2B,KAAAF,GAAAzB,EAAA2B,GAAAT,EAAAxB,KAAA8B,GAAAlB,EAAAmB,EAAAE,KAAAF,EAA0C,OAAAzB,IAASV,EAAAwsF,aAAA,SAAArqF,EAAAP,EAAAM,GAAsC,GAAAlB,GAAAS,KAAAf,IAAgB,QAAA2B,KAAAF,GAAAP,EAAAxB,KAAA8B,GAAAlB,EAAAmB,EAAAE,KAAAF,KAAAzB,EAAA2B,GAAAF,EAAAE,GAAkD,OAAA3B,IAASV,EAAAssF,UAAA,SAAAnqF,EAAAP,GAAiC,GAAA6F,MAAAC,QAAAvF,GAAA,CAAqB,IAAAsF,MAAAC,QAAA9F,IAAAO,EAAAK,SAAAZ,EAAAY,OAAA,QAAmD,QAAAN,GAAA,EAAYA,EAAAC,EAAAK,OAAWN,IAAA,IAAAlC,EAAAssF,UAAAnqF,EAAAD,GAAAN,EAAAM,IAAA,QAA8C,UAAS,mBAAAC,IAAA,OAAAA,GAAA,OAAAP,EAAA,CAA2C,mBAAAA,GAAA,QAA+B,IAAAjB,OAAAmZ,KAAA3X,GAAAK,SAAA7B,OAAAmZ,KAAAlY,GAAAY,OAAA,QAA0D,QAAAxB,KAAAmB,GAAA,IAAAnC,EAAAssF,UAAAnqF,EAAAnB,GAAAY,EAAAZ,IAAA,QAAyD,UAAS,MAAAmB,KAAAP,GAAa5B,EAAAsF,MAAA,SAAAnD,GAA2B,MAAAsF,OAAAC,QAAAvF,KAAA8R,IAAAjU,EAAAsF,OAAA,gBAAAnD,MAAAnC,EAAA8iE,UAAA3gE,EAAAnC,EAAAsF,OAAAnD,GAAwGnC,EAAAohC,gBAAA,SAAAj/B,EAAAP,GAAuC,OAAAM,GAAA,EAAYA,EAAAC,EAAAK,OAAWN,IAAA,GAAAN,EAAA0J,QAAAnJ,EAAAD,KAAA,UAAmC,UAAU,IAAAu7G,KAAuBz9G,GAAA28B,SAAA,SAAAx6B,GAA6Bs7G,EAAAt7G,KAAA,mBAAAmU,kBAAA8uD,KAAAjjE,GAAAs7G,EAAAt7G,IAAA,IAAyFnC,EAAAi3G,mBAAA,SAAA90G,EAAAP,EAAAM,GAA4C,OAAAA,EAAAkB,EAAAjB,EAAAiB,IAAAxB,EAAA4B,EAAArB,EAAAqB,IAAA5B,EAAAwB,EAAAjB,EAAAiB,IAAAlB,EAAAsB,EAAArB,EAAAqB,IAA8CxD,EAAAkzG,oBAAA,SAAA/wG,GAAyC,OAAAP,GAAA,EAAAM,EAAA,EAAAlB,EAAAmB,EAAAK,OAAA9B,EAAAM,EAAA,EAAAqB,MAAA,GAAAnC,MAAA,GAAmDgC,EAAAlB,EAAIN,EAAAwB,IAAAG,EAAAF,EAAAD,GAAAhC,EAAAiC,EAAAzB,GAAAkB,IAAA1B,EAAAsD,EAAAnB,EAAAmB,IAAAnB,EAAAe,EAAAlD,EAAAkD,EAA2C,OAAAxB,IAAS5B,EAAA09G,gBAAA,SAAAv7G,GAAqC,GAAAA,EAAAK,OAAA,UAAuB,IAAAZ,GAAAO,EAAA,GAAAD,EAAAC,IAAAK,OAAA,EAA2B,SAAAM,KAAAoK,IAAAtL,EAAA4B,EAAAtB,EAAAsB,GAAA,GAAAV,KAAAoK,IAAAtL,EAAAwB,EAAAlB,EAAAkB,GAAA,IAAAN,KAAAoK,IAAAlN,EAAAkzG,oBAAA/wG,IAAA,KAAgGnC,EAAAwnF,qBAAA,SAAArlF,GAA0C,GAAAP,GAAAO,EAAA,GAAAD,EAAAC,EAAA,GAAAnB,EAAAmB,EAAA,EAAyB,OAAAD,IAAA,GAAAA,GAAAY,KAAAqM,GAAA,IAAAnO,GAAA8B,KAAAqM,GAAA,KAAAvN,EAAAkB,KAAAE,IAAAd,GAAAY,KAAAC,IAAA/B,GAAAY,EAAAkB,KAAAC,IAAAb,GAAAY,KAAAC,IAAA/B,GAAAY,EAAAkB,KAAAE,IAAAhC,KAA+GhB,EAAAk+D,kBAAA,SAAA/7D,GAAuC,GAAAP,GAAA,2JAA0HM,IAA4C,IAAAC,EAAAypB,QAAAhqB,EAAA,SAAAO,EAAAP,EAAAZ,EAAAN,GAAiC,GAAA2B,GAAArB,GAAAN,CAAW,OAAAwB,GAAAN,IAAAS,KAAAmnE,cAAA,KAAmCtnE,EAAA,YAAgB,GAAAlB,GAAAy+B,SAAAv9B,EAAA,cAAgC+Y,OAAAja,SAAAkB,GAAA,WAAAA,EAAA,WAAAlB,EAA4C,MAAAkB,MAC7jH26D,oBAAA,GAAArtD,yBAAA,EAAAmuG,qBAAA,IAAyEC,KAAA,SAAAl7G,EAAAzC,EAAAD,GAC5E,YAAa,IAAA69G,GAAA,SAAAj8G,EAAAM,EAAAC,EAAAzB,GAA8Be,KAAA4M,KAAA,UAAA5M,KAAAq8G,mBAAAl8G,IAAAm8G,GAAA77G,EAAAN,EAAAo8G,GAAA77G,EAAAP,EAAAq8G,GAAAv9G,EAAAe,KAAA0M,WAAAvM,EAAAuM,WAAA,MAAAvM,EAAAwG,KAAA3G,KAAA2G,GAAAxG,EAAAwG,KAA2H0gC,GAAqBx5B,YAAaw5B,GAAAx5B,SAAAvO,IAAA,WAA2C,gBAAAU,KAAA8M,YAAA9M,KAAA8M,UAAA9M,KAAAq8G,mBAAA5uG,UAAAzN,KAAAq8G,mBAAAE,GAAAv8G,KAAAq8G,mBAAAG,GAAAx8G,KAAAq8G,mBAAAC,IAAAzuG,UAAA7N,KAAA8M,WAA6Lu6B,EAAAx5B,SAAAqL,IAAA,SAAA/Y,GAA6CH,KAAA8M,UAAA3M,GAAiBi8G,EAAAz8G,UAAA88G,OAAA,WAAqC,GAAAt8G,GAAAH,KAAAS,GAAcoN,SAAA7N,KAAA6N,SAAwB,QAAAnN,KAAAP,GAAA,cAAAO,GAAA,uBAAAA,IAAAD,EAAAC,GAAAP,EAAAO,GAAsE,OAAAD,IAASvB,OAAAwd,iBAAA0/F,EAAAz8G,UAAA0nC,GAAA7oC,EAAAD,QAAA69G,OACpoBM,KAAA,SAAAz7G,EAAAzC,EAAAD,GACJ,YAAa,IAAAk6B,GAAAx3B,EAAA,qBAAkDzC,GAAAD,QAAA,SAAAkC,GAA2B,OAAAxB,GAAA,GAAAkB,EAAA,EAAiBA,EAAAM,EAAAM,OAAWZ,IAAA,CAAK,GAAAO,GAAAD,EAAAwf,WAAA9f,EAAA,SAAAzB,EAAA+B,EAAAwf,WAAA9f,EAAA,QAAwDO,IAAA+3B,EAAAohF,kCAAAn5G,KAAAlC,EAAAD,QAAAi8B,OAAA/5B,EAAAN,EAAA,KAAAzB,GAAA+5B,EAAAohF,kCAAAn7G,KAAAF,EAAAD,QAAAi8B,OAAA/5B,EAAAN,EAAA,MAAA3B,EAAAD,QAAAi8B,OAAA/5B,EAAAN,IAAAlB,GAAAwB,EAAAN,GAAAlB,GAAAT,EAAAD,QAAAi8B,OAAA/5B,EAAAN,IAA2P,MAAAlB,IAAST,EAAAD,QAAAi8B,QAAwBoY,IAAA,IAAAE,IAAA,IAAAvX,EAAA,IAAAwX,IAAA,IAAAC,IAAA,IAAAE,IAAA,IAAAC,IAAA,IAAAC,IAAA,IAAAC,IAAA,IAAAC,IAAA,IAAAC,IAAA,IAAAC,IAAA,IAAAC,IAAA,IAAAE,IAAA,IAAAC,IAAgH,IAAAC,IAAA,IAAAC,IAAA,IAAAC,IAAA,IAAAC,IAAA,IAAAC,IAAA,IAAAM,IAAA,IAAAC,KAAA,IAAAC,IAAA,IAAAC,IAAA,IAAA3f,EAAA,IAAA4f,IAAA,IAAAC,IAA+F,IAAAC,IAAA,IAAAC,IAAgB,IAAAC,IAAA,IAAA4nE,IAAA,IAAAC,IAAA,IAAAC,IAAA,IAAAC,IAAA,IAAAC,IAAA,IAAAC,IAAA,IAAAC,IAAA,IAAAC,IAAA,IAAAC,IAAA,IAAAC,IAAA,IAAAC,IAAA,IAAAC,IAAA,IAAAC,IAAA,IAAAC,IAAA,IAAAC,IAAA,IAAAC,IAAA,IAAAC,IAAA,IAAAC,IAAA,IAAAC,IAAA,IAAAC,IAAA,IAAAC,IAAA,IAAAC,IAAA,IAAAC,IAAA,IAAAC,IAAA,IAAAC,IAAA,IAAAC,IAAA,IAAAC,IAAA,IAAAC,IAAA,IAAAC,IAAA,IAAAC,IAAA,IAAAC,IAAA,IAAAC,IAAA,IAAAC,IAAA,IAAAC,IAAA,IAAAC,IAAA,IAAAC,IAAA,IAAAC,IAAA,IAAAC,IAAA,IAAAC,IAAA,IAAAC,IAAA,IAAAC,IAAA,IAAAC,IAAA,IAAAC,IAAA,IAAAC,IAAA,IAAAC,IAAA,IAAAC,IAAA,IAAAC,IAAA,IAAAC,IAAA,IAAAC,IAAA,IAAAC,IAAA,IAAAC,IAAA,IAAAC,IAAA,IAAAC,IAAA,OAC3qBC,qBAAA,MAAyBC,KAAA,SAAAh/G,EAAAzC,EAAAD,GAC5B,YAAa,IAAA2hH,GAAAj/G,EAAA,gBAAAyzG,EAAA,WAA4D10G,KAAAmgH,UAAgBzL,GAAA/0G,UAAAyyG,QAAA,SAAA1xG,GAAyC,GAAAP,GAAAH,IAAW,KAAAA,KAAAogH,QAAA,CAAkB,GAAAnhH,GAAAgC,EAAA,OAAAksC,WAAiC,KAAAntC,KAAAogH,WAAoBpgH,KAAAogH,QAAAr/G,OAAA9B,GAAsBkB,EAAAigH,QAAA/4G,KAAA,GAAA64G,IAA+B,MAAAlgH,MAAAmgH,OAAAz/G,IAAA,EAAAV,KAAAogH,QAAAtnG,SAA8C47F,EAAA/0G,UAAA0yG,QAAA,SAAA3xG,SAA0CV,MAAAmgH,OAAAz/G,GAAA,IAAAxB,OAAAmZ,KAAArY,KAAAmgH,QAAAp/G,SAAAf,KAAAogH,QAAAtkG,QAAA,SAAApb,GAA6FA,EAAA2/G,cAAcrgH,KAAAogH,QAAA,OAAqB5hH,EAAAD,QAAAm2G,IAC9d4L,MAAA,GAAAC,eAAA,WAAiC,aHqGP5hH,KAAKJ,EAASH,EAAoB,KAIzD,SAAUI,EAAQgiH,EAAqBpiH,GAE7C,YACAc,QAAOC,eAAeqhH,EAAqB,cAAgBlxG,OAAO,GAC7C,IAAImxG,GAA0CriH,EAAoB,GAC9DsiH,EAAkDtiH,EAAoBmB,EAAEkhH,GACxEE,EAAoCviH,EAAoB,GACxDwiH,EAA4CxiH,EAAoB,EIpjBzFsiH,GAAA9/G,EAAS0sC,YAAc,0FAEd,IAAIqzE,GAAA,GACXE,GAAI,OACJ36D,OAAQ,SAAAxkD,GAAA,MAAKA,GAAEk/G,EAAA,OJgkBX,SAAUpiH,EAAQgiH,EAAqBpiH,GAE7C,cK1kBA,SAAAiC,EAAAygH;;;;;AASA,QAAAC,GAAAv/G,GACA,WAAA6rB,KAAA7rB,GAAA,OAAAA,EAGA,QAAAw/G,GAAAx/G,GACA,WAAA6rB,KAAA7rB,GAAA,OAAAA,EAGA,QAAAy/G,GAAAz/G,GACA,WAAAA,EAGA,QAAA0/G,GAAA1/G,GACA,WAAAA,EAMA,QAAAqpB,GAAAvb,GACA,MACA,iBAAAA,IACA,iBAAAA,IACA,kBAAAA,GASA,QAAAqb,GAAAw2F,GACA,cAAAA,GAAA,iBAAAA,GAgBA,QAAAC,GAAAD,GACA,0BAAAE,GAAA1iH,KAAAwiH,GAGA,QAAAx3F,GAAAnoB,GACA,0BAAA6/G,GAAA1iH,KAAA6C,GAMA,QAAA8/G,GAAAC,GACA,GAAAhiH,GAAAooE,WAAA7nD,OAAAyhG,GACA,OAAAhiH,IAAA,GAAA8B,KAAAoV,MAAAlX,QAAA2iF,SAAAq/B,GAMA,QAAA13F,GAAA03F,GACA,aAAAA,EACA,GACA,iBAAAA,GACA3rG,KAAAC,UAAA0rG,EAAA,QACAzhG,OAAAyhG,GAOA,QAAAC,GAAAD,GACA,GAAAhiH,GAAAooE,WAAA45C,EACA,OAAA/nG,OAAAja,GAAAgiH,EAAAhiH,EAOA,QAAAkiH,GACAC,EACAC,GAIA,OAFAnvG,GAAAtT,OAAA2D,OAAA,MACA++G,EAAAF,EAAAn3F,MAAA,KACA9rB,EAAA,EAAiBA,EAAAmjH,EAAA7gH,OAAiBtC,IAClC+T,EAAAovG,EAAAnjH,KAAA,CAEA,OAAAkjH,GACA,SAAAJ,GAAsB,MAAA/uG,GAAA+uG,EAAAx5C,gBACtB,SAAAw5C,GAAsB,MAAA/uG,GAAA+uG,IAgBtB,QAAAtmD,GAAA4mD,EAAAC,GACA,GAAAD,EAAA9gH,OAAA,CACA,GAAAmxB,GAAA2vF,EAAAh4G,QAAAi4G,EACA,IAAA5vF,GAAA,EACA,MAAA2vF,GAAA75G,OAAAkqB,EAAA,IASA,QAAA6vF,GAAAZ,EAAAnhC,GACA,MAAApgF,IAAAjB,KAAAwiH,EAAAnhC,GAMA,QAAAgiC,GAAAC,GACA,GAAA1yF,GAAArwB,OAAA2D,OAAA,KACA,iBAAA6+G,GAEA,MADAnyF,GAAAmyF,KACAnyF,EAAAmyF,GAAAO,EAAAP,KA8BA,QAAAvlG,GAAA8lG,EAAAj5G,GACA,QAAAk5G,GAAAthH,GACA,GAAAlC,GAAAqlB,UAAAhjB,MACA,OAAArC,GACAA,EAAA,EACAujH,EAAAj+F,MAAAhb,EAAA+a,WACAk+F,EAAAtjH,KAAAqK,EAAApI,GACAqhH,EAAAtjH,KAAAqK,GAIA,MADAk5G,GAAAC,QAAAF,EAAAlhH,OACAmhH,EAMA,QAAA78E,GAAAu8E,EAAA3nB,GACAA,KAAA,CAGA,KAFA,GAAAx7F,GAAAmjH,EAAA7gH,OAAAk5F,EACAmoB,EAAA,GAAAp8G,OAAAvH,GACAA,KACA2jH,EAAA3jH,GAAAmjH,EAAAnjH,EAAAw7F,EAEA,OAAAmoB,GAMA,QAAAztG,GAAA+iC,EAAA2qE,GACA,OAAAriC,KAAAqiC,GACA3qE,EAAAsoC,GAAAqiC,EAAAriC,EAEA,OAAAtoC,GAMA,QAAA4qE,GAAAT,GAEA,OADAU,MACA9jH,EAAA,EAAiBA,EAAAojH,EAAA9gH,OAAgBtC,IACjCojH,EAAApjH,IACAkW,EAAA4tG,EAAAV,EAAApjH,GAGA,OAAA8jH,GAQA,QAAA3+F,GAAAhjB,EAAAoB,EAAAnD,IAyBA,QAAA2jH,GAAA5hH,EAAAoB,GACA,GAAApB,IAAAoB,EAAgB,QAChB,IAAAygH,GAAA93F,EAAA/pB,GACA8hH,EAAA/3F,EAAA3oB,EACA,KAAAygH,IAAAC,EAsBG,OAAAD,IAAAC,GACH5iG,OAAAlf,KAAAkf,OAAA9d,EAtBA,KACA,GAAA2gH,GAAA38G,MAAAC,QAAArF,GACAgiH,EAAA58G,MAAAC,QAAAjE,EACA,IAAA2gH,GAAAC,EACA,MAAAhiH,GAAAG,SAAAiB,EAAAjB,QAAAH,EAAAgb,MAAA,SAAAzb,EAAA1B,GACA,MAAA+jH,GAAAriH,EAAA6B,EAAAvD,KAEO,IAAAkkH,GAAAC,EAQP,QAPA,IAAAC,GAAA3jH,OAAAmZ,KAAAzX,GACAkiH,EAAA5jH,OAAAmZ,KAAArW,EACA,OAAA6gH,GAAA9hH,SAAA+hH,EAAA/hH,QAAA8hH,EAAAjnG,MAAA,SAAAokE,GACA,MAAAwiC,GAAA5hH,EAAAo/E,GAAAh+E,EAAAg+E,MAMK,MAAA7/E,GAEL,UASA,QAAA4iH,GAAAlB,EAAAN,GACA,OAAA9iH,GAAA,EAAiBA,EAAAojH,EAAA9gH,OAAgBtC,IACjC,GAAA+jH,EAAAX,EAAApjH,GAAA8iH,GAAkC,MAAA9iH,EAElC,UAMA,QAAA+lB,GAAAy9F,GACA,GAAAe,IAAA,CACA,mBACAA,IACAA,GAAA,EACAf,EAAAj+F,MAAAhkB,KAAA+jB,aA0HA,QAAAk/F,GAAAvB,GACA,GAAA7iH,IAAA6iH,EAAA,IAAAzhG,WAAA,EACA,aAAAphB,GAAA,KAAAA,EAMA,QAAAqkH,GAAA/B,EAAAnhC,EAAAuhC,EAAAliH,GACAH,OAAAC,eAAAgiH,EAAAnhC,GACA1wE,MAAAiyG,EACAliH,eACA6oB,UAAA,EACA9oB,cAAA,IAQA,QAAA+jH,GAAAlK,GACA,IAAAmK,GAAAj3F,KAAA8sF,GAAA,CAGA,GAAA3mF,GAAA2mF,EAAA1uF,MAAA,IACA,iBAAA42F,GACA,OAAA1iH,GAAA,EAAmBA,EAAA6zB,EAAAvxB,OAAqBtC,IAAA,CACxC,IAAA0iH,EAAiB,MACjBA,KAAA7uF,EAAA7zB,IAEA,MAAA0iH,KAyDA,QAAA5uC,GAAA8wC,GACA,yBAAAA,IAAA,cAAAl3F,KAAAk3F,EAAAx5F,YAwKA,QAAAy5F,GAAAC,GACAC,GAAArtB,QAAmBstB,GAAAp8G,KAAAm8G,GAAArtB,QACnBqtB,GAAArtB,OAAAotB,EAGA,QAAAG,KACAF,GAAArtB,OAAAstB,GAAAltG,MA2DA,QAAAotG,GAAApC,GACA,UAAAqC,QAAAv2F,iBAAAvN,OAAAyhG,IAOA,QAAAsC,GAAAC,EAAAC,GACA,GAAAC,GAAA,GAAAJ,IACAE,EAAAG,IACAH,EAAAx5G,KACAw5G,EAAAlpD,SACAkpD,EAAA1qF,KACA0qF,EAAAI,IACAJ,EAAAh2D,QACAg2D,EAAAK,iBACAL,EAAAM,aAUA,OARAJ,GAAAK,GAAAP,EAAAO,GACAL,EAAAM,SAAAR,EAAAQ,SACAN,EAAAhkC,IAAA8jC,EAAA9jC,IACAgkC,EAAAO,UAAAT,EAAAS,UACAP,EAAAQ,UAAA,EACAT,GAAAD,EAAAlpD,WACAopD,EAAAppD,SAAA6pD,EAAAX,EAAAlpD,WAEAopD,EAGA,QAAAS,GAAAC,EAAAX,GAGA,OAFAY,GAAAD,EAAA3jH,OACAwhH,EAAA,GAAAv8G,OAAA2+G,GACAlmH,EAAA,EAAiBA,EAAAkmH,EAASlmH,IAC1B8jH,EAAA9jH,GAAAolH,EAAAa,EAAAjmH,GAAAslH,EAEA,OAAAxB,GA2GA,QAAAqC,GAAAzuB,EAAA2Z,EAAAz3F,GAEA89E,EAAAzoC,UAAAoiD,EASA,QAAA+U,GAAA1uB,EAAA2Z,EAAAz3F,GACA,OAAA5Z,GAAA,EAAAC,EAAA2Z,EAAAtX,OAAkCtC,EAAAC,EAAOD,IAAA,CACzC,GAAAuhF,GAAA3nE,EAAA5Z,EACAykH,GAAA/sB,EAAAnW,EAAA8vB,EAAA9vB,KASA,QAAA8kC,GAAAx1G,EAAAy1G,GACA,GAAAp6F,EAAArb,kBAAAs0G,KAAA,CAGA,GAAAoB,EAeA,OAdAjD,GAAAzyG,EAAA,WAAAA,EAAA21G,iBAAAC,IACAF,EAAA11G,EAAA21G,OAEAE,GAAAC,gBACAC,OACAr/G,MAAAC,QAAAqJ,IAAA8xG,EAAA9xG,KACApQ,OAAAsd,aAAAlN,KACAA,EAAAg2G,SAEAN,EAAA,GAAAE,IAAA51G,IAEAy1G,GAAAC,GACAA,EAAAO,UAEAP,GAMA,QAAAQ,GACArE,EACAnhC,EACAuhC,EACAkE,EACAC,GAEA,GAAAC,GAAA,GAAAnC,IAEA9jH,EAAAR,OAAAud,yBAAA0kG,EAAAnhC,EACA,KAAAtgF,IAAA,IAAAA,EAAAN,aAAA,CAKA,GAAAJ,GAAAU,KAAAJ,IACAsmH,EAAAlmH,KAAAwZ,IAEA2sG,GAAAH,GAAAZ,EAAAvD,EACAriH,QAAAC,eAAAgiH,EAAAnhC,GACA3gF,YAAA,EACAD,cAAA,EACAE,IAAA,WACA,GAAAgQ,GAAAtQ,IAAAL,KAAAwiH,GAAAI,CAUA,OATAiC,IAAArtB,SACAwvB,EAAAG,SACAD,IACAA,EAAAF,IAAAG,SACA9/G,MAAAC,QAAAqJ,IACAy2G,EAAAz2G,KAIAA,GAEA4J,IAAA,SAAA8sG,GACA,GAAA12G,GAAAtQ,IAAAL,KAAAwiH,GAAAI,CAEAyE,KAAA12G,GAAA02G,OAAA12G,QAOAs2G,EACAA,EAAAjnH,KAAAwiH,EAAA6E,GAEAzE,EAAAyE,EAEAH,GAAAH,GAAAZ,EAAAkB,GACAL,EAAAM,cAUA,QAAA/sG,GAAAi9E,EAAAnW,EAAAuhC,GACA,GAAAv7G,MAAAC,QAAAkwF,IAAAmrB,EAAAthC,GAGA,MAFAmW,GAAAp1F,OAAAM,KAAAuG,IAAAuuF,EAAAp1F,OAAAi/E,GACAmW,EAAAnuF,OAAAg4E,EAAA,EAAAuhC,GACAA,CAEA,IAAAQ,EAAA5rB,EAAAnW,GAEA,MADAmW,GAAAnW,GAAAuhC,EACAA,CAEA,IAAAyD,GAAA,EAAAC,MACA,OAAA9uB,GAAAmvB,QAAAN,KAAAO,QAKAhE,EAEAyD,GAIAQ,EAAAR,EAAA11G,MAAA0wE,EAAAuhC,GACAyD,EAAAW,IAAAM,SACA1E,IALAprB,EAAAnW,GAAAuhC,EACAA,GAUA,QAAA2E,GAAA/vB,EAAAnW,GACA,GAAAh6E,MAAAC,QAAAkwF,IAAAmrB,EAAAthC,GAEA,WADAmW,GAAAnuF,OAAAg4E,EAAA,EAGA,IAAAglC,GAAA,EAAAC,MACA9uB,GAAAmvB,QAAAN,KAAAO,SAOAxD,EAAA5rB,EAAAnW,WAGAmW,GAAAnW,GACAglC,GAGAA,EAAAW,IAAAM,UAOA,QAAAF,GAAAz2G,GACA,OAAAnP,OAAA,GAAA1B,EAAA,EAAAC,EAAA4Q,EAAAvO,OAAiDtC,EAAAC,EAAOD,IACxD0B,EAAAmP,EAAA7Q,GACA0B,KAAA8kH,QAAA9kH,EAAA8kH,OAAAU,IAAAG,SACA9/G,MAAAC,QAAA9F,IACA4lH,EAAA5lH,GAgCA,QAAAgmH,GAAAzuE,EAAAD,GACA,IAAAA,EAAc,MAAAC,EAGd,QAFAsoC,GAAAomC,EAAAC,EACAhuG,EAAAnZ,OAAAmZ,KAAAo/B,GACAh5C,EAAA,EAAiBA,EAAA4Z,EAAAtX,OAAiBtC,IAClCuhF,EAAA3nE,EAAA5Z,GACA2nH,EAAA1uE,EAAAsoC,GACAqmC,EAAA5uE,EAAAuoC,GACA+hC,EAAArqE,EAAAsoC,GAEKohC,EAAAgF,IAAAhF,EAAAiF,IACLF,EAAAC,EAAAC,GAFAntG,EAAAw+B,EAAAsoC,EAAAqmC,EAKA,OAAA3uE,GAMA,QAAA4uE,GACAC,EACAC,EACAC,GAEA,MAAAA,GAmBGF,GAAAC,EACH,WAEA,GAAAE,GAAA,mBAAAF,GACAA,EAAA7nH,KAAA8nH,GACAD,EACAG,EAAA,mBAAAJ,GACAA,EAAA5nH,KAAA8nH,GACAF,CACA,OAAAG,GACAP,EAAAO,EAAAC,GAEAA,OAZG,GAjBHH,EAGAD,EAQA,WACA,MAAAJ,GACA,mBAAAK,KAAA7nH,KAAAqB,MAAAwmH,EACA,mBAAAD,KAAA5nH,KAAAqB,MAAAumH,IAVAC,EAHAD,EA2DA,QAAAK,GACAL,EACAC,GAEA,MAAAA,GACAD,EACAA,EAAAv/G,OAAAw/G,GACAxgH,MAAAC,QAAAugH,GACAA,GACAA,GACAD,EAcA,QAAAM,GACAN,EACAC,EACAC,EACAzmC,GAEA,GAAAuiC,GAAArjH,OAAA2D,OAAA0jH,GAAA,KACA,OAAAC,GAEA7xG,EAAA4tG,EAAAiE,GAEAjE,EA+FA,QAAAuE,GAAApyG,EAAA+xG,GACA,GAAAM,GAAAryG,EAAAqyG,KACA,IAAAA,EAAA,CACA,GACAtoH,GAAA8iH,EAAAxiH,EADAwjH,IAEA,IAAAv8G,MAAAC,QAAA8gH,GAEA,IADAtoH,EAAAsoH,EAAAhmH,OACAtC,KAEA,kBADA8iH,EAAAwF,EAAAtoH,MAEAM,EAAAioH,GAAAzF,GACAgB,EAAAxjH,IAAqB6N,KAAA,WAKlB,IAAAw0G,EAAA2F,GACH,OAAA/mC,KAAA+mC,GACAxF,EAAAwF,EAAA/mC,GACAjhF,EAAAioH,GAAAhnC,GACAuiC,EAAAxjH,GAAAqiH,EAAAG,GACAA,GACW30G,KAAA20G,EASX7sG,GAAAqyG,MAAAxE,GAMA,QAAA0E,GAAAvyG,EAAA+xG,GACA,GAAAS,GAAAxyG,EAAAwyG,OACAC,EAAAzyG,EAAAwyG,SACA,IAAAlhH,MAAAC,QAAAihH,GACA,OAAAzoH,GAAA,EAAmBA,EAAAyoH,EAAAnmH,OAAmBtC,IACtC0oH,EAAAD,EAAAzoH,KAA+Bg5C,KAAAyvE,EAAAzoH,QAE5B,IAAA2iH,EAAA8F,GACH,OAAAlnC,KAAAknC,GAAA,CACA,GAAA3F,GAAA2F,EAAAlnC,EACAmnC,GAAAnnC,GAAAohC,EAAAG,GACA5sG,GAAkB8iC,KAAAuoC,GAAYuhC,IACnB9pE,KAAA8pE,IAcX,QAAA6F,GAAA1yG,GACA,GAAA2yG,GAAA3yG,EAAA4yG,UACA,IAAAD,EACA,OAAArnC,KAAAqnC,GAAA,CACA,GAAAnE,GAAAmE,EAAArnC,EACA,oBAAAkjC,KACAmE,EAAArnC,IAAqB7jE,KAAA+mG,EAAA5gE,OAAA4gE,KAoBrB,QAAAqE,GACAvtD,EACAwtD,EACAf,GAgCA,QAAAgB,GAAAznC,GACA,GAAA0nC,GAAAC,GAAA3nC,IAAA4nC,EACAlzG,GAAAsrE,GAAA0nC,EAAA1tD,EAAAgmB,GAAAwnC,EAAAxnC,GAAAymC,EAAAzmC,GA5BA,mBAAAwnC,KACAA,IAAA9yG,SAGAoyG,EAAAU,EAAAf,GACAQ,EAAAO,EAAAf,GACAW,EAAAI,EACA,IAAAK,GAAAL,EAAAM,OAIA,IAHAD,IACA7tD,EAAAutD,EAAAvtD,EAAA6tD,EAAApB,IAEAe,EAAAO,OACA,OAAAtpH,GAAA,EAAAC,EAAA8oH,EAAAO,OAAAhnH,OAA4CtC,EAAAC,EAAOD,IACnDu7D,EAAAutD,EAAAvtD,EAAAwtD,EAAAO,OAAAtpH,GAAAgoH,EAGA,IACAzmC,GADAtrE,IAEA,KAAAsrE,IAAAhmB,GACAytD,EAAAznC,EAEA,KAAAA,IAAAwnC,GACAzF,EAAA/nD,EAAAgmB,IACAynC,EAAAznC,EAOA,OAAAtrE,GAQA,QAAAszG,GACAtzG,EACA9H,EACAjG,EACAshH,GAGA,oBAAAthH,GAAA,CAGA,GAAAuhH,GAAAxzG,EAAA9H,EAEA,IAAAm1G,EAAAmG,EAAAvhH,GAA2B,MAAAuhH,GAAAvhH,EAC3B,IAAAwhH,GAAAnB,GAAArgH,EACA,IAAAo7G,EAAAmG,EAAAC,GAAoC,MAAAD,GAAAC,EACpC,IAAAC,GAAAC,GAAAF,EACA,IAAApG,EAAAmG,EAAAE,GAAqC,MAAAF,GAAAE,EASrC,OAPAF,GAAAvhH,IAAAuhH,EAAAC,IAAAD,EAAAE,IAYA,QAAAE,GACAtoC,EACAuoC,EACAC,EACA/B,GAEA,GAAAgC,GAAAF,EAAAvoC,GACA0oC,GAAA3G,EAAAyG,EAAAxoC,GACA1wE,EAAAk5G,EAAAxoC,EAUA,IARA2oC,GAAA9nG,QAAA4nG,EAAA77G,QACA87G,IAAA3G,EAAA0G,EAAA,WACAn5G,GAAA,EACKq5G,GAAA7oG,OAAA2oG,EAAA77G,OAAA,KAAA0C,OAAAs5G,GAAA5oC,KACL1wE,GAAA,QAIA+d,KAAA/d,EAAA,CACAA,EAAAu5G,EAAApC,EAAAgC,EAAAzoC,EAGA,IAAA8oC,GAAA3D,GAAAC,aACAD,IAAAC,eAAA,EACAN,EAAAx1G,GACA61G,GAAAC,cAAA0D,EAKA,MAAAx5G,GAMA,QAAAu5G,GAAApC,EAAAgC,EAAAzoC,GAEA,GAAA+hC,EAAA0G,EAAA,YAGA,GAAAvF,GAAAuF,EAAAj5F,OAYA,OAAAi3F,MAAAsC,SAAAP,eACAn7F,KAAAo5F,EAAAsC,SAAAP,UAAAxoC,QACA3yD,KAAAo5F,EAAAuC,OAAAhpC,GAEAymC,EAAAuC,OAAAhpC,GAIA,mBAAAkjC,IAAA,aAAA1rD,EAAAixD,EAAA77G,MACAs2G,EAAAvkH,KAAA8nH,GACAvD,GAsFA,QAAA1rD,GAAAyqD,GACA,GAAA33F,GAAA23F,KAAAp4F,WAAAS,MAAA,qBACA,OAAAA,KAAA,MAGA,QAAAq+F,IAAA/7G,EAAAq1G,GACA,IAAAj8G,MAAAC,QAAAg8G,GACA,MAAAzqD,GAAAyqD,KAAAzqD,EAAA5qD,EAEA,QAAAnO,GAAA,EAAAkmH,EAAA1C,EAAAlhH,OAAkCtC,EAAAkmH,EAASlmH,IAC3C,GAAA+4D,EAAAyqD,EAAAxjH,MAAA+4D,EAAA5qD,GACA,QAIA,UAKA,QAAAq8G,IAAAC,EAAAzC,EAAA0C,GACA,GAAA1C,EAEA,IADA,GAAA2C,GAAA3C,EACA2C,IAAAC,SAAA,CACA,GAAAC,GAAAF,EAAAL,SAAAQ,aACA,IAAAD,EACA,OAAA7qH,GAAA,EAAuBA,EAAA6qH,EAAAvoH,OAAkBtC,IACzC,IACA,GAAA6lG,IAAA,IAAAglB,EAAA7qH,GAAAE,KAAAyqH,EAAAF,EAAAzC,EAAA0C,EACA,IAAA7kB,EAA0B,OACf,MAAAnkG,GACXqpH,GAAArpH,EAAAipH,EAAA,uBAMAI,GAAAN,EAAAzC,EAAA0C,GAGA,QAAAK,IAAAN,EAAAzC,EAAA0C,GACA,GAAAl8E,GAAAw8E,aACA,IACA,MAAAx8E,IAAAw8E,aAAA9qH,KAAA,KAAAuqH,EAAAzC,EAAA0C,GACK,MAAAhpH,GACLupH,GAAAvpH,EAAA,4BAGAupH,GAAAR,EAAAzC,EAAA0C,GAGA,QAAAO,IAAAR,EAAAzC,EAAA0C,GAKA,IAAAQ,IAAA,oBAAA90G,SAGA,KAAAq0G,EAFAr0G,SAAA+W,MAAAs9F,GAYA,QAAAU,MACAC,IAAA,CACA,IAAAC,GAAA3b,GAAAr1F,MAAA,EACAq1F,IAAAptG,OAAA,CACA,QAAAtC,GAAA,EAAiBA,EAAAqrH,EAAA/oH,OAAmBtC,IACpCqrH,EAAArrH,KAiEA,QAAAsrH,IAAA9H,GACA,MAAAA,GAAA+H,YAAA/H,EAAA+H,UAAA,WACAC,IAAA,CACA,IAAA1H,GAAAN,EAAAj+F,MAAA,KAAAD,UAEA,OADAkmG,KAAA,EACA1H,IAIA,QAAAz+F,IAAAomG,EAAAlhH,GACA,GAAAigF,EAqBA,IApBAklB,GAAA9mG,KAAA,WACA,GAAA6iH,EACA,IACAA,EAAAvrH,KAAAqK,GACO,MAAA7I,GACP8oH,GAAA9oH,EAAA6I,EAAA,gBAEKigF,IACLA,EAAAjgF,KAGA6gH,KACAA,IAAA,EACAI,GACAE,KAEAC,OAIAF,GAAA,oBAAAG,SACA,UAAAA,SAAA,SAAAC,GACArhC,EAAAqhC,IA2HA,QAAAC,IAAAC,GACA,QAAAC,KACA,GAAAC,GAAA3mG,UAEAymG,EAAAC,EAAAD,GACA,KAAAxkH,MAAAC,QAAAukH,GAOA,MAAAA,GAAAxmG,MAAA,KAAAD,UALA,QADAigG,GAAAwG,EAAA1xG,QACAra,EAAA,EAAqBA,EAAAulH,EAAAjjH,OAAmBtC,IACxCulH,EAAAvlH,GAAAulB,MAAA,KAAA0mG,GAQA,MADAD,GAAAD,MACAC,EAGA,QAAAE,IACArmG,EACAsmG,EACA9mH,EACA+mH,EACApE,GAEA,GAAA1nH,GAAAqqH,EAAA0B,EAAAC,CACA,KAAAhsH,IAAAulB,GACA8kG,EAAA9kG,EAAAvlB,GACA+rH,EAAAF,EAAA7rH,GACAgsH,EAAAC,GAAAjsH,GACAgiH,EAAAqI,KAKKrI,EAAA+J,IACL/J,EAAAqI,EAAAoB,OACApB,EAAA9kG,EAAAvlB,GAAAwrH,GAAAnB,IAEAtlH,EAAAinH,EAAAhsH,KAAAqqH,EAAA2B,EAAAvmG,KAAAumG,EAAAzmB,QAAAymB,EAAAE,UACK7B,IAAA0B,IACLA,EAAAN,IAAApB,EACA9kG,EAAAvlB,GAAA+rH,GAGA,KAAA/rH,IAAA6rH,GACA7J,EAAAz8F,EAAAvlB,MACAgsH,EAAAC,GAAAjsH,GACA8rH,EAAAE,EAAAhsH,KAAA6rH,EAAA7rH,GAAAgsH,EAAAzmB,UAOA,QAAA4mB,IAAAhI,EAAAiI,EAAAC,GAIA,QAAAC,KACAD,EAAApnG,MAAAhkB,KAAA+jB,WAGAk3C,EAAAwvD,EAAAD,IAAAa,GAPA,GAAAZ,GACAa,EAAApI,EAAAiI,EASApK,GAAAuK,GAEAb,EAAAF,IAAAc,IAGArK,EAAAsK,EAAAd,MAAAvJ,EAAAqK,EAAAC,SAEAd,EAAAa,EACAb,EAAAD,IAAAnjH,KAAAgkH,IAGAZ,EAAAF,IAAAe,EAAAD,IAIAZ,EAAAc,QAAA,EACArI,EAAAiI,GAAAV,EAKA,QAAAe,IACAlhH,EACA+4G,EACAY,GAKA,GAAAsE,GAAAlF,EAAA3uG,QAAAqyG,KACA,KAAAhG,EAAAwH,GAAA,CAGA,GAAAhG,MACAkJ,EAAAnhH,EAAAmhH,MACA1E,EAAAz8G,EAAAy8G,KACA,IAAA/F,EAAAyK,IAAAzK,EAAA+F,GACA,OAAA/mC,KAAAuoC,GAAA,CACA,GAAA7jB,GAAAkkB,GAAA5oC,EAiBA0rC,IAAAnJ,EAAAwE,EAAA/mC,EAAA0kB,GAAA,IACAgnB,GAAAnJ,EAAAkJ,EAAAzrC,EAAA0kB,GAAA,GAGA,MAAA6d,IAGA,QAAAmJ,IACAnJ,EACAxb,EACA/mB,EACA0kB,EACAinB,GAEA,GAAA3K,EAAAja,GAAA,CACA,GAAAgb,EAAAhb,EAAA/mB,GAKA,MAJAuiC,GAAAviC,GAAA+mB,EAAA/mB,GACA2rC,SACA5kB,GAAA/mB,IAEA,CACK,IAAA+hC,EAAAhb,EAAArC,GAKL,MAJA6d,GAAAviC,GAAA+mB,EAAArC,GACAinB,SACA5kB,GAAArC,IAEA,EAGA,SAiBA,QAAAknB,IAAAhxD,GACA,OAAAn8D,GAAA,EAAiBA,EAAAm8D,EAAA75D,OAAqBtC,IACtC,GAAAuH,MAAAC,QAAA20D,EAAAn8D,IACA,MAAAuH,OAAArG,UAAAqH,OAAAgd,SAAA42C,EAGA,OAAAA,GAOA,QAAAixD,IAAAjxD,GACA,MAAA/vC,GAAA+vC,IACA+oD,EAAA/oD,IACA50D,MAAAC,QAAA20D,GACAkxD,GAAAlxD,OACAvtC,GAGA,QAAA0+F,IAAAC,GACA,MAAAhL,GAAAgL,IAAAhL,EAAAgL,EAAA5yF,OAAA8nF,EAAA8K,EAAAzH,WAGA,QAAAuH,IAAAlxD,EAAAqxD,GACA,GACAxtH,GAAAI,EAAAqtH,EAAAC,EADA5J,IAEA,KAAA9jH,EAAA,EAAaA,EAAAm8D,EAAA75D,OAAqBtC,IAClCI,EAAA+7D,EAAAn8D,GACAsiH,EAAAliH,IAAA,kBAAAA,KACAqtH,EAAA3J,EAAAxhH,OAAA,EACAorH,EAAA5J,EAAA2J,GAEAlmH,MAAAC,QAAApH,GACAA,EAAAkC,OAAA,IACAlC,EAAAitH,GAAAjtH,GAAAotH,GAAA,QAAAxtH,GAEAstH,GAAAltH,EAAA,KAAAktH,GAAAI,KACA5J,EAAA2J,GAAAvI,EAAAwI,EAAA/yF,KAAAv6B,EAAA,GAAAu6B,MACAv6B,EAAAuxF,SAEAmyB,EAAAl7G,KAAA2c,MAAAu+F,EAAA1jH,IAEKgsB,EAAAhsB,GACLktH,GAAAI,GAIA5J,EAAA2J,GAAAvI,EAAAwI,EAAA/yF,KAAAv6B,GACO,KAAAA,GAEP0jH,EAAAl7G,KAAAs8G,EAAA9kH,IAGAktH,GAAAltH,IAAAktH,GAAAI,GAEA5J,EAAA2J,GAAAvI,EAAAwI,EAAA/yF,KAAAv6B,EAAAu6B,OAGA6nF,EAAArmD,EAAAwxD,WACApL,EAAAniH,EAAAolH,MACAlD,EAAAliH,EAAAmhF,MACAghC,EAAAiL,KACAptH,EAAAmhF,IAAA,UAAAisC,EAAA,IAAAxtH,EAAA,MAEA8jH,EAAAl7G,KAAAxI,IAIA,OAAA0jH,GAKA,QAAA8J,IAAAC,EAAA90F,GAOA,OALA80F,EAAA9sH,YACA+sH,IAAA,WAAAD,EAAAE,OAAAC,gBAEAH,IAAA98F,SAEA7E,EAAA2hG,GACA90F,EAAA7iB,OAAA23G,GACAA,EAGA,QAAAI,IACAC,EACAriH,EACAwjD,EACA8M,EACAqpD,GAEA,GAAA+H,GAAAY,IAGA,OAFAZ,GAAA5H,aAAAuI,EACAX,EAAAa,WAAoBviH,OAAAwjD,UAAA8M,WAAAqpD,OACpB+H,EAGA,QAAAc,IACAH,EACAI,EACAj/D,GAEA,GAAAmzD,EAAA0L,EAAA/gG,QAAAo1F,EAAA2L,EAAAK,WACA,MAAAL,GAAAK,SAGA,IAAAhM,EAAA2L,EAAAM,UACA,MAAAN,GAAAM,QAGA,IAAAhM,EAAA0L,EAAAhuD,UAAAqiD,EAAA2L,EAAAO,aACA,MAAAP,GAAAO,WAGA,KAAAlM,EAAA2L,EAAAQ,UAGG,CACH,GAAAA,GAAAR,EAAAQ,UAAAr/D,GACAs/D,GAAA,EAEAC,EAAA,WACA,OAAA5uH,GAAA,EAAAC,EAAAyuH,EAAApsH,OAA0CtC,EAAAC,EAAOD,IACjD0uH,EAAA1uH,GAAA6uH,gBAIAhD,EAAA9lG,EAAA,SAAA+9F,GAEAoK,EAAAM,SAAAZ,GAAA9J,EAAAwK,GAGAK,GACAC,MAIAE,EAAA/oG,EAAA,SAAAgpG,GAKAxM,EAAA2L,EAAAK,aACAL,EAAA/gG,OAAA,EACAyhG,OAIA9K,EAAAoK,EAAArC,EAAAiD,EA6CA,OA3CA5iG,GAAA43F,KACA,mBAAAA,GAAAzkB,KAEAijB,EAAA4L,EAAAM,WACA1K,EAAAzkB,KAAAwsB,EAAAiD,GAEOvM,EAAAuB,EAAAkL,YAAA,mBAAAlL,GAAAkL,UAAA3vB,OACPykB,EAAAkL,UAAA3vB,KAAAwsB,EAAAiD,GAEAvM,EAAAuB,EAAA32F,SACA+gG,EAAAK,UAAAX,GAAA9J,EAAA32F,MAAAmhG,IAGA/L,EAAAuB,EAAA5jD,WACAguD,EAAAO,YAAAb,GAAA9J,EAAA5jD,QAAAouD,GACA,IAAAxK,EAAAtjC,MACA0tC,EAAAhuD,SAAA,EAEA77C,WAAA,WACAi+F,EAAA4L,EAAAM,WAAAlM,EAAA4L,EAAA/gG,SACA+gG,EAAAhuD,SAAA,EACA0uD,MAEa9K,EAAAtjC,OAAA,MAIb+hC,EAAAuB,EAAApkB,UACAr7E,WAAA,WACAi+F,EAAA4L,EAAAM,WACAM,EAGA,OAGWhL,EAAApkB,WAKXivB,GAAA,EAEAT,EAAAhuD,QACAguD,EAAAO,YACAP,EAAAM,SA/EAN,EAAAQ,SAAA9lH,KAAAymD,GAqFA,QAAA4/D,IAAA1B,GACA,MAAAA,GAAAzH,WAAAyH,EAAA5H,aAKA,QAAAuJ,IAAA/yD,GACA,GAAA50D,MAAAC,QAAA20D,GACA,OAAAn8D,GAAA,EAAmBA,EAAAm8D,EAAA75D,OAAqBtC,IAAA,CACxC,GAAAI,GAAA+7D,EAAAn8D,EACA,IAAAuiH,EAAAniH,KAAAmiH,EAAAniH,EAAAslH,mBAAAuJ,GAAA7uH,IACA,MAAAA,IAUA,QAAA+uH,IAAAnH,GACAA,EAAAoH,QAAA3uH,OAAA2D,OAAA,MACA4jH,EAAAqH,eAAA,CAEA,IAAA/oG,GAAA0hG,EAAAsC,SAAAgF,gBACAhpG,IACAipG,GAAAvH,EAAA1hG,GAMA,QAAAjhB,IAAAinH,EAAA9I,EAAAz9F,GACAA,EACA2xE,GAAA83B,MAAAlD,EAAA9I,GAEA9rB,GAAA+3B,IAAAnD,EAAA9I,GAIA,QAAAkM,IAAApD,EAAA9I,GACA9rB,GAAAi4B,KAAArD,EAAA9I,GAGA,QAAA+L,IACAvH,EACA1hG,EACAspG,GAEAl4B,GAAAswB,EACAkE,GAAA5lG,EAAAspG,MAA+CvqH,GAAAqqH,GAAA1H,GA8G/C,QAAA6H,IACA1zD,EACA9M,GAEA,GAAAygE,KACA,KAAA3zD,EACA,MAAA2zD,EAGA,QADAC,MACA/vH,EAAA,EAAAC,EAAAk8D,EAAA75D,OAAsCtC,EAAAC,EAAOD,IAAA,CAC7C,GAAA+oH,GAAA5sD,EAAAn8D,GACA6L,EAAAk9G,EAAAl9G,IAOA,IALAA,KAAAmhH,OAAAnhH,EAAAmhH,MAAAgD,YACAnkH,GAAAmhH,MAAAgD,KAIAjH,EAAA15D,aAAA05D,EAAAkH,oBAAA5gE,IACAxjD,GAAA,MAAAA,EAAAmkH,KAUAD,EAAAnnH,KAAAmgH,OATA,CACA,GAAAzoH,GAAAyoH,EAAAl9G,KAAAmkH,KACAA,EAAAF,EAAAxvH,KAAAwvH,EAAAxvH,MACA,cAAAyoH,EAAAvD,IACAwK,EAAApnH,KAAA2c,MAAAyqG,EAAAjH,EAAA5sD,UAEA6zD,EAAApnH,KAAAmgH,IAUA,MAHAgH,GAAA5yG,MAAA+yG,MACAJ,EAAA/+F,QAAAg/F,GAEAD,EAGA,QAAAI,IAAA3C,GACA,MAAAA,GAAAzH,WAAA,MAAAyH,EAAA5yF,KAGA,QAAAw1F,IACApE,EACAjI,GAEAA,OACA,QAAA9jH,GAAA,EAAiBA,EAAA+rH,EAAAzpH,OAAgBtC,IACjCuH,MAAAC,QAAAukH,EAAA/rH,IACAmwH,GAAApE,EAAA/rH,GAAA8jH,GAEAA,EAAAiI,EAAA/rH,GAAAuhF,KAAAwqC,EAAA/rH,GAAAwjH,EAGA,OAAAM,GAQA,QAAAsM,IAAApI,GACA,GAAA/xG,GAAA+xG,EAAAsC,SAGA/uD,EAAAtlD,EAAAslD,MACA,IAAAA,IAAAtlD,EAAAo6G,SAAA,CACA,KAAA90D,EAAA+uD,SAAA+F,UAAA90D,EAAAqvD,SACArvD,IAAAqvD,OAEArvD,GAAA+0D,UAAA1nH,KAAAo/G,GAGAA,EAAA4C,QAAArvD,EACAysD,EAAAjyC,MAAAxa,IAAAwa,MAAAiyC,EAEAA,EAAAsI,aACAtI,EAAAuI,SAEAvI,EAAAwI,SAAA,KACAxI,EAAAyI,UAAA,KACAzI,EAAA0I,iBAAA,EACA1I,EAAA2I,YAAA,EACA3I,EAAA4I,cAAA,EACA5I,EAAA6I,mBAAA,EAiGA,QAAAC,IACA9I,EACA5F,EACA2O,GAEA/I,EAAAgJ,IAAA5O,EACA4F,EAAAsC,SAAA7iE,SACAugE,EAAAsC,SAAA7iE,OAAA0mE,IAmBA8C,GAAAjJ,EAAA,cAEA,IAAAkJ,EAkCA,OAdAA,GAAA,WACAlJ,EAAApe,QAAAoe,EAAApb,UAAAmkB,IAIA/I,EAAAwI,SAAA,GAAAW,IAAAnJ,EAAAkJ,EAAA/rG,GACA4rG,GAAA,EAIA,MAAA/I,EAAAoJ,SACApJ,EAAA2I,YAAA,EACAM,GAAAjJ,EAAA,YAEAA,EAGA,QAAAqJ,IACArJ,EACA+B,EACAzjG,EACAgrG,EACAC,GAQA,GAAAC,MACAD,GACAvJ,EAAAsC,SAAAmH,iBACAH,EAAAzlH,KAAA6lH,aACA1J,EAAA2J,eAAAC,GAkBA,IAfA5J,EAAAsC,SAAAuH,aAAAP,EACAtJ,EAAAoJ,OAAAE,EAEAtJ,EAAA8J,SACA9J,EAAA8J,OAAAv2D,OAAA+1D,GAEAtJ,EAAAsC,SAAAmH,gBAAAF,EAKAvJ,EAAA+J,OAAAT,EAAAzlH,MAAAylH,EAAAzlH,KAAAmhH,OAAA4E,GACA5J,EAAAgK,WAAA1rG,GAAAsrG,GAGA7H,GAAA/B,EAAAsC,SAAAhC,MAAA,CACA5B,GAAAC,eAAA,CAGA,QAFA2B,GAAAN,EAAAuC,OACA0H,EAAAjK,EAAAsC,SAAA4H,cACAlyH,EAAA,EAAmBA,EAAAiyH,EAAA3vH,OAAqBtC,IAAA,CACxC,GAAAuhF,GAAA0wC,EAAAjyH,EACAsoH,GAAA/mC,GAAAsoC,EAAAtoC,EAAAymC,EAAAsC,SAAAhC,MAAAyB,EAAA/B,GAEAtB,GAAAC,eAAA,EAEAqB,EAAAsC,SAAAP,YAIA,GAAAzjG,EAAA,CACA,GAAAspG,GAAA5H,EAAAsC,SAAAgF,gBACAtH,GAAAsC,SAAAgF,iBAAAhpG,EACAipG,GAAAvH,EAAA1hG,EAAAspG,GAGA4B,IACAxJ,EAAAmK,OAAAtC,GAAA0B,EAAAD,EAAAjiE,SACA24D,EAAA6G,gBAQA,QAAAuD,IAAApK,GACA,KAAAA,QAAA4C,UACA,GAAA5C,EAAAyI,UAAuB,QAEvB,UAGA,QAAA4B,IAAArK,EAAAsK,GACA,GAAAA,GAEA,GADAtK,EAAA0I,iBAAA,EACA0B,GAAApK,GACA,WAEG,IAAAA,EAAA0I,gBACH,MAEA,IAAA1I,EAAAyI,WAAA,OAAAzI,EAAAyI,UAAA,CACAzI,EAAAyI,WAAA,CACA,QAAAzwH,GAAA,EAAmBA,EAAAgoH,EAAAsI,UAAAhuH,OAAyBtC,IAC5CqyH,GAAArK,EAAAsI,UAAAtwH,GAEAixH,IAAAjJ,EAAA,cAIA,QAAAuK,IAAAvK,EAAAsK,GACA,KAAAA,IACAtK,EAAA0I,iBAAA,GACA0B,GAAApK,OAIAA,EAAAyI,UAAA,CACAzI,EAAAyI,WAAA,CACA,QAAAzwH,GAAA,EAAmBA,EAAAgoH,EAAAsI,UAAAhuH,OAAyBtC,IAC5CuyH,GAAAvK,EAAAsI,UAAAtwH,GAEAixH,IAAAjJ,EAAA,gBAIA,QAAAiJ,IAAAjJ,EAAA2E,GACA,GAAA51B,GAAAixB,EAAAsC,SAAAqC,EACA,IAAA51B,EACA,OAAA/2F,GAAA,EAAAwD,EAAAuzF,EAAAz0F,OAAwCtC,EAAAwD,EAAOxD,IAC/C,IACA+2F,EAAA/2F,GAAAE,KAAA8nH,GACO,MAAAtmH,GACP8oH,GAAA9oH,EAAAsmH,EAAA2E,EAAA,SAIA3E,EAAAqH,eACArH,EAAAwK,MAAA,QAAA7F,GAoBA,QAAA8F,MACAh/F,GAAA7O,GAAAtiB,OAAAowH,GAAApwH,OAAA,EACAk5D,MAIAm3D,GAAAC,IAAA,EAMA,QAAAC,MACAD,IAAA,CACA,IAAAE,GAAA5qH,CAcA,KAJA0c,GAAApS,KAAA,SAAArQ,EAAAoB,GAA8B,MAAApB,GAAA+F,GAAA3E,EAAA2E,KAI9BurB,GAAA,EAAiBA,GAAA7O,GAAAtiB,OAAsBmxB,KACvCq/F,EAAAluG,GAAA6O,IACAvrB,EAAA4qH,EAAA5qH,GACAszD,GAAAtzD,GAAA,KACA4qH,EAAA/tG,KAmBA,IAAAguG,GAAAL,GAAAr4G,QACA24G,EAAApuG,GAAAvK,OAEAo4G,MAGAQ,GAAAF,GACAG,GAAAF,GAIAG,IAAA3kF,GAAA2kF,UACAA,GAAAhtG,KAAA,SAIA,QAAA+sG,IAAAtuG,GAEA,IADA,GAAA5kB,GAAA4kB,EAAAtiB,OACAtC,KAAA,CACA,GAAA8yH,GAAAluG,EAAA5kB,GACAgoH,EAAA8K,EAAA9K,EACAA,GAAAwI,WAAAsC,GAAA9K,EAAA2I,YACAM,GAAAjJ,EAAA,YASA,QAAAoL,IAAApL,GAGAA,EAAAyI,WAAA,EACAiC,GAAA9pH,KAAAo/G,GAGA,QAAAiL,IAAAruG,GACA,OAAA5kB,GAAA,EAAiBA,EAAA4kB,EAAAtiB,OAAkBtC,IACnC4kB,EAAA5kB,GAAAywH,WAAA,EACA4B,GAAAztG,EAAA5kB,IAAA,GASA,QAAAqzH,IAAAP,GACA,GAAA5qH,GAAA4qH,EAAA5qH,EACA,UAAAszD,GAAAtzD,GAAA,CAEA,GADAszD,GAAAtzD,IAAA,EACA0qH,GAEK,CAIL,IADA,GAAA5yH,GAAA4kB,GAAAtiB,OAAA,EACAtC,EAAAyzB,IAAA7O,GAAA5kB,GAAAkI,GAAA4qH,EAAA5qH,IACAlI,GAEA4kB,IAAArb,OAAAvJ,EAAA,IAAA8yH,OARAluG,IAAAhc,KAAAkqH,EAWAH,MACAA,IAAA,EACAttG,GAAAwtG,MA4NA,QAAAS,IAAAxQ,GACAyQ,GAAA7pH,QACA8pH,GAAA1Q,EAAAyQ,IAGA,QAAAC,IAAA1Q,EAAA94F,GACA,GAAAhqB,GAAA4Z,EACA65G,EAAAlsH,MAAAC,QAAAs7G,EACA,KAAA2Q,GAAAvnG,EAAA42F,KAAAriH,OAAAsd,aAAA+kG,GAAA,CAGA,GAAAA,EAAA0D,OAAA,CACA,GAAAkN,GAAA5Q,EAAA0D,OAAAU,IAAAh/G,EACA,IAAA8hB,EAAAwxC,IAAAk4D,GACA,MAEA1pG,GAAA3kB,IAAAquH,GAEA,GAAAD,EAEA,IADAzzH,EAAA8iH,EAAAxgH,OACAtC,KAAiBwzH,GAAA1Q,EAAA9iH,GAAAgqB,OAIjB,KAFApQ,EAAAnZ,OAAAmZ,KAAAkpG,GACA9iH,EAAA4Z,EAAAtX,OACAtC,KAAiBwzH,GAAA1Q,EAAAlpG,EAAA5Z,IAAAgqB,IAajB,QAAA2pG,IAAAj8B,EAAAk8B,EAAAryC,GACAsyC,GAAAhzH,IAAA,WACA,MAAAU,MAAAqyH,GAAAryC,IAEAsyC,GAAAp5G,IAAA,SAAAqoG,GACAvhH,KAAAqyH,GAAAryC,GAAAuhC,GAEAriH,OAAAC,eAAAg3F,EAAAnW,EAAAsyC,IAGA,QAAAC,IAAA9L,GACAA,EAAA+L,YACA,IAAAC,GAAAhM,EAAAsC,QACA0J,GAAA1L,OAAmB2L,GAAAjM,EAAAgM,EAAA1L,OACnB0L,EAAAE,SAAqBC,GAAAnM,EAAAgM,EAAAE,SACrBF,EAAAnoH,KACAuoH,GAAApM,GAEA3B,EAAA2B,EAAA/2D,UAAyB,GAEzB+iE,EAAAK,UAAsBC,GAAAtM,EAAAgM,EAAAK,UACtBL,EAAAO,OAAAP,EAAAO,QAAAC,IACAC,GAAAzM,EAAAgM,EAAAO,OAIA,QAAAN,IAAAjM,EAAA0M,GACA,GAAA3K,GAAA/B,EAAAsC,SAAAP,cACAzB,EAAAN,EAAAuC,UAGA3wG,EAAAouG,EAAAsC,SAAA4H,aACAyC,GAAA3M,EAAA4C,OAEAlE,IAAAC,cAAAgO,CAoCA,QAAApzC,KAAAmzC,IAnCA,SAAAnzC,GACA3nE,EAAAhR,KAAA24E,EACA,IAAA1wE,GAAAg5G,EAAAtoC,EAAAmzC,EAAA3K,EAAA/B,EAuBAjB,GAAAuB,EAAA/mC,EAAA1wE,GAKA0wE,IAAAymC,IACA2L,GAAA3L,EAAA,SAAAzmC,IAIAA,EACAmlC,IAAAC,eAAA,EAGA,QAAAyN,IAAApM,GACA,GAAAn8G,GAAAm8G,EAAAsC,SAAAz+G,IACAA,GAAAm8G,EAAA/2D,MAAA,mBAAAplD,GACA+oH,GAAA/oH,EAAAm8G,GACAn8G,MACA82G,EAAA92G,KACAA,KAYA,KAJA,GAAA+N,GAAAnZ,OAAAmZ,KAAA/N,GACAy8G,EAAAN,EAAAsC,SAAAhC,MAEAtoH,GADAgoH,EAAAsC,SAAA4J,QACAt6G,EAAAtX,QACAtC,KAAA,CACA,GAAAuhF,GAAA3nE,EAAA5Z,EASAsoH,IAAAhF,EAAAgF,EAAA/mC,IAMKijC,EAAAjjC,IACLoyC,GAAA3L,EAAA,QAAAzmC,GAIA8kC,EAAAx6G,GAAA,GAGA,QAAA+oH,IAAA/oH,EAAAm8G,GACA,IACA,MAAAn8G,GAAA3L,KAAA8nH,KACG,MAAAtmH,GAEH,MADA8oH,IAAA9oH,EAAAsmH,EAAA,cAOA,QAAAsM,IAAAtM,EAAAqM,GACA,GAAAQ,GAAA7M,EAAA8M,kBAAAr0H,OAAA2D,OAAA,MAEA2wH,EAAAnO,IAEA,QAAArlC,KAAA8yC,GAAA,CACA,GAAAW,GAAAX,EAAA9yC,GACAhhF,EAAA,mBAAAy0H,OAAAn0H,GAQAk0H,KAEAF,EAAAtzC,GAAA,GAAA4vC,IACAnJ,EACAznH,GAAA4kB,EACAA,EACA8vG,KAOA1zC,IAAAymC,IACAkN,GAAAlN,EAAAzmC,EAAAyzC,IAWA,QAAAE,IACAx9B,EACAnW,EACAyzC,GAEA,GAAAG,IAAAvO,IACA,oBAAAoO,IACAnB,GAAAhzH,IAAAs0H,EACAC,GAAA7zC,GACAyzC,EACAnB,GAAAp5G,IAAA0K,IAEA0uG,GAAAhzH,IAAAm0H,EAAAn0H,IACAs0H,IAAA,IAAAH,EAAAlkG,MACAskG,GAAA7zC,GACAyzC,EAAAn0H,IACAskB,EACA0uG,GAAAp5G,IAAAu6G,EAAAv6G,IACAu6G,EAAAv6G,IACA0K,GAWA1kB,OAAAC,eAAAg3F,EAAAnW,EAAAsyC,IAGA,QAAAuB,IAAA7zC,GACA,kBACA,GAAAuxC,GAAAvxH,KAAAuzH,mBAAAvzH,KAAAuzH,kBAAAvzC,EACA,IAAAuxC,EAOA,MANAA,GAAA5vE,OACA4vE,EAAAuC,WAEAtQ,GAAArtB,QACAo7B,EAAAzL,SAEAyL,EAAAjiH,OAKA,QAAAsjH,IAAAnM,EAAAkM,GACAlM,EAAAsC,SAAAhC,KACA,QAAA/mC,KAAA2yC,GAsBAlM,EAAAzmC,GAAA,MAAA2yC,EAAA3yC,GAAAp8D,EAAAzH,EAAAw2G,EAAA3yC,GAAAymC,GAIA,QAAAyM,IAAAzM,EAAAuM,GACA,OAAAhzC,KAAAgzC,GAAA,CACA,GAAAe,GAAAf,EAAAhzC,EACA,IAAAh6E,MAAAC,QAAA8tH,GACA,OAAAt1H,GAAA,EAAqBA,EAAAs1H,EAAAhzH,OAAoBtC,IACzCu1H,GAAAvN,EAAAzmC,EAAA+zC,EAAAt1H,QAGAu1H,IAAAvN,EAAAzmC,EAAA+zC,IAKA,QAAAC,IACAvN,EACAwN,EACAF,EACAr/G,GASA,MAPA0sG,GAAA2S,KACAr/G,EAAAq/G,EACAA,aAEA,iBAAAA,KACAA,EAAAtN,EAAAsN,IAEAtN,EAAAyN,OAAAD,EAAAF,EAAAr/G,GAoDA,QAAAy/G,IAAA1N,GACA,GAAA2N,GAAA3N,EAAAsC,SAAAqL,OACAA,KACA3N,EAAA4N,UAAA,mBAAAD,GACAA,EAAAz1H,KAAA8nH,GACA2N,GAIA,QAAAE,IAAA7N,GACA,GAAA5nD,GAAA01D,GAAA9N,EAAAsC,SAAA7B,OAAAT,EACA5nD,KACAsmD,GAAAC,eAAA,EACAlmH,OAAAmZ,KAAAwmD,GAAA/iD,QAAA,SAAAkkE,GAYAwlC,EAAAiB,EAAAzmC,EAAAnhB,EAAAmhB,MAGAmlC,GAAAC,eAAA,GAIA,QAAAmP,IAAArN,EAAAT,GACA,GAAAS,EAAA,CAUA,OARAroD,GAAA3/D,OAAA2D,OAAA,MACAwV,EAAAk0G,GACAiI,QAAAC,QAAAvN,GAAArrG,OAAA,SAAAmkE,GAEA,MAAA9gF,QAAAud,yBAAAyqG,EAAAlnC,GAAA3gF,aAEAH,OAAAmZ,KAAA6uG,GAEAzoH,EAAA,EAAmBA,EAAA4Z,EAAAtX,OAAiBtC,IAAA,CAIpC,IAHA,GAAAuhF,GAAA3nE,EAAA5Z,GACAi2H,EAAAxN,EAAAlnC,GAAAvoC,KACAxhC,EAAAwwG,EACAxwG,GAAA,CACA,GAAAA,EAAAo+G,WAAAK,IAAAz+G,GAAAo+G,UAAA,CACAx1D,EAAAmhB,GAAA/pE,EAAAo+G,UAAAK,EACA,OAEAz+G,IAAAozG,QAEA,IAAApzG,GACA,WAAAixG,GAAAlnC,GAAA,CACA,GAAA20C,GAAAzN,EAAAlnC,GAAAxwD,OACAqvC,GAAAmhB,GAAA,mBAAA20C,GACAA,EAAAh2H,KAAA8nH,GACAkO,GAMA,MAAA91D,IASA,QAAA+1D,IACArT,EACAr7D,GAEA,GAAAk8D,GAAA3jH,EAAAC,EAAA2Z,EAAA2nE,CACA,IAAAh6E,MAAAC,QAAAs7G,IAAA,iBAAAA,GAEA,IADAa,EAAA,GAAAp8G,OAAAu7G,EAAAxgH,QACAtC,EAAA,EAAAC,EAAA6iH,EAAAxgH,OAA+BtC,EAAAC,EAAOD,IACtC2jH,EAAA3jH,GAAAynD,EAAAq7D,EAAA9iH,UAEG,qBAAA8iH,GAEH,IADAa,EAAA,GAAAp8G,OAAAu7G,GACA9iH,EAAA,EAAeA,EAAA8iH,EAAS9iH,IACxB2jH,EAAA3jH,GAAAynD,EAAAznD,EAAA,EAAAA,OAEG,IAAAksB,EAAA42F,GAGH,IAFAlpG,EAAAnZ,OAAAmZ,KAAAkpG,GACAa,EAAA,GAAAp8G,OAAAqS,EAAAtX,QACAtC,EAAA,EAAAC,EAAA2Z,EAAAtX,OAAgCtC,EAAAC,EAAOD,IACvCuhF,EAAA3nE,EAAA5Z,GACA2jH,EAAA3jH,GAAAynD,EAAAq7D,EAAAvhC,KAAAvhF,EAMA,OAHAuiH,GAAAoB,KACA,EAAAgK,UAAA,GAEAhK,EAQA,QAAAyS,IACA91H,EACA+1H,EACA/N,EACAgO,GAEA,GAAAC,GAAAh1H,KAAAowH,aAAArxH,EACA,IAAAi2H,EAWA,MAVAjO,SACAgO,IAOAhO,EAAApyG,OAA8BogH,GAAAhO,IAE9BiO,EAAAjO,IAAA+N,CAEA,IAAAG,GAAAj1H,KAAA4wH,OAAA7xH,EAUA,OAAAk2H,IAAAH,EASA,QAAAI,IAAAvuH,GACA,MAAAqhH,GAAAhoH,KAAA+oH,SAAA,UAAApiH,GAAA,IAAAxD,GAUA,QAAAgyH,IACAC,EACAp1C,EACAq1C,EACAC,GAEA,GAAAC,GAAAtoF,GAAAsoF,SAAAv1C,IAAAq1C,CACA,OAAAE,GACAvvH,MAAAC,QAAAsvH,IACA,IAAAA,EAAA1rH,QAAAurH,GAEAG,IAAAH,EAEGE,EACH1M,GAAA0M,KAAAt1C,MADG,GAUH,QAAAw1C,IACAlrH,EACA25G,EACA30G,EACAmmH,EACAC,GAEA,GAAApmH,EACA,GAAAqb,EAAArb,GAKK,CACLtJ,MAAAC,QAAAqJ,KACAA,EAAAgzG,EAAAhzG,GAEA,IAAAy3F,EA0BA,QAAA/mB,KAAA1wE,IAzBA,SAAA0wE,GACA,GACA,UAAAA,GACA,UAAAA,GACA21C,GAAA31C,GAEA+mB,EAAAz8F,MACS,CACT,GAAAsC,GAAAtC,EAAAmhH,OAAAnhH,EAAAmhH,MAAA7+G,IACAm6F,GAAA0uB,GAAAxoF,GAAA2oF,YAAA3R,EAAAr3G,EAAAozE,GACA11E,EAAAurH,WAAAvrH,EAAAurH,aACAvrH,EAAAmhH,QAAAnhH,EAAAmhH,UAEA,KAAAzrC,IAAA+mB,MACAA,EAAA/mB,GAAA1wE,EAAA0wE,GAEA01C,GAAA,EACAprH,EAAAga,KAAAha,EAAAga,QACA,UAAA07D,GAAA,SAAA81C,GACAxmH,EAAA0wE,GAAA81C,KAMA91C,QAGA,MAAA11E,GAQA,QAAAyrH,IACA7jG,EACA8jG,GAIA,GAAAC,GAAAj2H,KAAA+oH,SAAAmN,gBACAlU,EAAAiU,EAAAjU,SAAAiU,EAAAjU,WACAmU,EAAAnU,EAAA9vF,EAGA,OAAAikG,KAAAH,EACAhwH,MAAAC,QAAAkwH,GACA1R,EAAA0R,GACAtS,EAAAsS,IAGAA,EAAAnU,EAAA9vF,GAAA+jG,EAAA/jG,GAAAvzB,KAAAqB,KAAAo2H,aAAA,KAAAp2H,MACAq2H,GAAAF,EAAA,aAAAjkG,GAAA,GACAikG,GAOA,QAAAG,IACAH,EACAjkG,EACA8tD,GAGA,MADAq2C,IAAAF,EAAA,WAAAjkG,GAAA8tD,EAAA,IAAAA,EAAA,QACAm2C,EAGA,QAAAE,IACAF,EACAn2C,EACAu2C,GAEA,GAAAvwH,MAAAC,QAAAkwH,GACA,OAAA13H,GAAA,EAAmBA,EAAA03H,EAAAp1H,OAAiBtC,IACpC03H,EAAA13H,IAAA,iBAAA03H,GAAA13H,IACA+3H,GAAAL,EAAA13H,GAAAuhF,EAAA,IAAAvhF,EAAA83H,OAIAC,IAAAL,EAAAn2C,EAAAu2C,GAIA,QAAAC,IAAAxK,EAAAhsC,EAAAu2C,GACAvK,EAAA1H,UAAA,EACA0H,EAAAhsC,MACAgsC,EAAAuK,SAKA,QAAAE,IAAAnsH,EAAAgF,GACA,GAAAA,EACA,GAAA8xG,EAAA9xG,GAKK,CACL,GAAAgV,GAAAha,EAAAga,GAAAha,EAAAga,GAAA3P,KAA4CrK,EAAAga,MAC5C,QAAA07D,KAAA1wE,GAAA,CACA,GAAAonH,GAAApyG,EAAA07D,GACA22C,EAAArnH,EAAA0wE,EACA17D,GAAA07D,GAAA02C,KAAA1vH,OAAA0vH,EAAAC,WAIA,MAAArsH,GAKA,QAAAssH,IAAAzgC,GACAA,EAAA0gC,GAAAP,GACAngC,EAAA2gC,GAAAtV,EACArrB,EAAA4gC,GAAAltG,EACAssE,EAAA6gC,GAAApC,GACAz+B,EAAA8gC,GAAApC,GACA1+B,EAAA+gC,GAAA1U,EACArsB,EAAAghC,GAAApU,EACA5sB,EAAAihC,GAAArB,GACA5/B,EAAAkhC,GAAAnC,GACA/+B,EAAAmhC,GAAAnC,GACAh/B,EAAAohC,GAAA/B,GACAr/B,EAAAqhC,GAAA7T,EACAxtB,EAAAshC,GAAA7K,GACAz2B,EAAAuhC,GAAA9I,GACAz4B,EAAAwhC,GAAAlB,GAKA,QAAAmB,IACAttH,EACAy8G,EACAnsD,EACAZ,EACAqpD,GAEA,GAAA3uG,GAAA2uG,EAAA3uG,OACA1U,MAAAsK,OACAtK,KAAA+mH,QACA/mH,KAAA46D,WACA56D,KAAAg6D,SACAh6D,KAAA+kB,UAAAza,EAAAga,IAAA+rG,GACArwH,KAAA63H,WAAAtD,GAAA7/G,EAAAwyG,OAAAltD,GACAh6D,KAAAuuH,MAAA,WAA4B,MAAAD,IAAA1zD,EAAAZ,GAI5B,IAAA89D,GAAA54H,OAAA2D,OAAAm3D,GACA+9D,EAAA9W,EAAAvsG,EAAAsjH,WACAC,GAAAF,CAGAA,KAEA/3H,KAAA+oH,SAAAr0G,EAEA1U,KAAA4wH,OAAA5wH,KAAAuuH,QACAvuH,KAAAowH,aAAA9lH,EAAA6lH,aAAAE,IAGA37G,EAAAwjH,SACAl4H,KAAAm4H,GAAA,SAAAv3H,EAAAoB,EAAAnD,EAAAC,GACA,GAAAglH,GAAA/6G,GAAA+uH,EAAAl3H,EAAAoB,EAAAnD,EAAAC,EAAAm5H,EAKA,OAJAnU,KACAA,EAAAsU,kBAAA1jH,EAAAwjH,SACApU,EAAA4K,kBAAA10D,GAEA8pD,GAGA9jH,KAAAm4H,GAAA,SAAAv3H,EAAAoB,EAAAnD,EAAAC,GAAqC,MAAAiK,IAAA+uH,EAAAl3H,EAAAoB,EAAAnD,EAAAC,EAAAm5H,IAMrC,QAAAI,IACAhV,EACAmF,EACAl+G,EACAwtH,EACAl9D,GAEA,GAAAlmD,GAAA2uG,EAAA3uG,QACAqyG,KACAwB,EAAA7zG,EAAAqyG,KACA,IAAA/F,EAAAuH,GACA,OAAAvoC,KAAAuoC,GACAxB,EAAA/mC,GAAAsoC,EAAAtoC,EAAAuoC,EAAAC,GAAA6H,QAGArP,GAAA12G,EAAAmhH,QAA4B6M,GAAAvR,EAAAz8G,EAAAmhH,OAC5BzK,EAAA12G,EAAAy8G,QAA4BuR,GAAAvR,EAAAz8G,EAAAy8G,MAG5B,IAAAwR,GAAA,GAAAX,IACAttH,EACAy8G,EACAnsD,EACAk9D,EACAzU,GAGAS,EAAApvG,EAAAwxC,OAAAvnD,KAAA,KAAA45H,EAAAJ,GAAAI,EAUA,OARAzU,aAAAF,MACAE,EAAA4K,kBAAAoJ,EACAhU,EAAA0U,kBAAA9jH,EACApK,EAAAmkH,QACA3K,EAAAx5G,OAAAw5G,EAAAx5G,UAAqCmkH,KAAAnkH,EAAAmkH,OAIrC3K,EAGA,QAAAwU,IAAA5gF,EAAAD,GACA,OAAAuoC,KAAAvoC,GACAC,EAAAsvE,GAAAhnC,IAAAvoC,EAAAuoC,GA4EA,QAAAy4C,IACApV,EACA/4G,EACAwjD,EACA8M,EACAqpD,GAEA,IAAAlD,EAAAsC,GAAA,CAIA,GAAA0J,GAAAj/D,EAAAi7D,SAAA2P,KASA,IANA/tG,EAAA04F,KACAA,EAAA0J,EAAAp4G,OAAA0uG,IAKA,mBAAAA,GAAA,CAQA,GAAAe,EACA,IAAArD,EAAAsC,EAAAsV,OACAvU,EAAAf,MAEAh2F,MADAg2F,EAAAyJ,GAAA1I,EAAA2I,EAAAj/D,KAKA,MAAA4+D,IACAtI,EACA95G,EACAwjD,EACA8M,EACAqpD,EAKA35G,SAIAsuH,GAAAvV,GAGArC,EAAA12G,EAAAuuH,QACAC,GAAAzV,EAAA3uG,QAAApK,EAIA,IAAAk+G,GAAAgD,GAAAlhH,EAAA+4G,EAAAY,EAGA,IAAAhD,EAAAoC,EAAA3uG,QAAAqkH,YACA,MAAAV,IAAAhV,EAAAmF,EAAAl+G,EAAAwjD,EAAA8M,EAKA,IAAA71C,GAAAza,EAAAga,EAKA,IAFAha,EAAAga,GAAAha,EAAA0uH,SAEA/X,EAAAoC,EAAA3uG,QAAAo6G,UAAA,CAKA,GAAAL,GAAAnkH,EAAAmkH,IACAnkH,MACAmkH,IACAnkH,EAAAmkH,QAKAwK,GAAA3uH,EAGA,IAAAvL,GAAAskH,EAAA3uG,QAAA3V,MAAAklH,CAOA,OANA,IAAAL,IACA,iBAAAP,EAAA,KAAAtkH,EAAA,IAAAA,EAAA,IACAuL,MAAA+iB,iBAAAygC,GACKu1D,OAAAmF,YAAAzjG,YAAAk/F,MAAArpD,YACLwpD,KAKA,QAAA8U,IACApV,EACA9pD,EACAm/D,EACAC,GAEA,GAAAC,GAAAvV,EAAAK,iBACAzvG,GACA4kH,cAAA,EACAt/D,SACAwuD,UAAA6Q,EAAA7Q,UACA+Q,cAAAF,EAAApV,IACAqM,aAAAxM,EACAiK,iBAAAsL,EAAAt0G,UACAmrG,gBAAAmJ,EAAAz+D,SACA4+D,WAAAL,GAAA,KACAM,QAAAL,GAAA,MAGAM,EAAA5V,EAAAx5G,KAAAovH,cAKA,OAJA1Y,GAAA0Y,KACAhlH,EAAAwxC,OAAAwzE,EAAAxzE,OACAxxC,EAAAwhH,gBAAAwD,EAAAxD,iBAEA,GAAAmD,GAAAhW,KAAA3uG,GAGA,QAAAukH,IAAA3uH,GACAA,EAAA8gH,OACA9gH,EAAA8gH,QAEA,QAAA3sH,GAAA,EAAiBA,EAAAk7H,GAAA54H,OAAyBtC,IAAA,CAC1C,GAAAuhF,GAAA25C,GAAAl7H,GACAm7H,EAAAtvH,EAAA8gH,KAAAprC,GACA22C,EAAAkD,GAAA75C,EACA11E,GAAA8gH,KAAAprC,GAAA45C,EAAAE,GAAAnD,EAAAiD,GAAAjD,GAIA,QAAAmD,IAAAC,EAAAC,GACA,gBAAAp5H,EAAAoB,EAAAnD,EAAAC,GACAi7H,EAAAn5H,EAAAoB,EAAAnD,EAAAC,GACAk7H,EAAAp5H,EAAAoB,EAAAnD,EAAAC,IAMA,QAAAg6H,IAAApkH,EAAApK,GACA,GAAAm+G,GAAA/zG,EAAAmkH,OAAAnkH,EAAAmkH,MAAApQ,MAAA,QACAsC,EAAAr2G,EAAAmkH,OAAAnkH,EAAAmkH,MAAA9N,OAAA,SAAgEzgH,EAAAy8G,QAAAz8G,EAAAy8G,WAA+B0B,GAAAn+G,EAAAuuH,MAAAvpH,KAC/F,IAAAgV,GAAAha,EAAAga,KAAAha,EAAAga,MACA08F,GAAA18F,EAAAymG,IACAzmG,EAAAymG,IAAAzgH,EAAAuuH,MAAA/2E,UAAA96C,OAAAsd,EAAAymG,IAEAzmG,EAAAymG,GAAAzgH,EAAAuuH,MAAA/2E,SAWA,QAAA/4C,IACA+kD,EACAm2D,EACA35G,EACAswD,EACAq/D,EACAC,GAUA,OARAl0H,MAAAC,QAAAqE,IAAAugB,EAAAvgB,MACA2vH,EAAAr/D,EACAA,EAAAtwD,EACAA,MAAA+iB,IAEA4zF,EAAAiZ,KACAD,EAAAE,IAEAC,GAAAtsE,EAAAm2D,EAAA35G,EAAAswD,EAAAq/D,GAGA,QAAAG,IACAtsE,EACAm2D,EACA35G,EACAswD,EACAq/D,GAEA,GAAAjZ,EAAA12G,IAAA02G,EAAA,EAAAiE,QAMA,MAAA2H,KAMA,IAHA5L,EAAA12G,IAAA02G,EAAA12G,EAAA+vH,MACApW,EAAA35G,EAAA+vH,KAEApW,EAEA,MAAA2I,KAaA5mH,OAAAC,QAAA20D,IACA,mBAAAA,GAAA,KAEAtwD,QACAA,EAAA6lH,aAAwB3gG,QAAAorC,EAAA,IACxBA,EAAA75D,OAAA,GAEAk5H,IAAAE,GACAv/D,EAAAixD,GAAAjxD,GACGq/D,IAAAK,KACH1/D,EAAAgxD,GAAAhxD,GAEA,IAAAkpD,GAAAO,CACA,qBAAAJ,GAAA,CACA,GAAAZ,EACAgB,GAAAv2D,EAAA+hE,QAAA/hE,EAAA+hE,OAAAxL,IAAAp3E,GAAAstF,gBAAAtW,GAGAH,EAFA72E,GAAAutF,cAAAvW,GAEA,GAAAL,IACA32E,GAAAwtF,qBAAAxW,GAAA35G,EAAAswD,MACAvtC,UAAAygC,GAEKkzD,EAAAqC,EAAA2E,EAAAl6D,EAAAi7D,SAAA,aAAA9E,IAELwU,GAAApV,EAAA/4G,EAAAwjD,EAAA8M,EAAAqpD,GAKA,GAAAL,IACAK,EAAA35G,EAAAswD,MACAvtC,UAAAygC,OAKAg2D,GAAA2U,GAAAxU,EAAA35G,EAAAwjD,EAAA8M,EAEA,OAAAomD,GAAA8C,IACAO,GAAaqW,GAAA5W,EAAAO,GACbP,GAEA8I,KAIA,QAAA8N,IAAA5W,EAAAO,EAAAsW,GAOA,GANA7W,EAAAO,KACA,kBAAAP,EAAAG,MAEAI,MAAAh3F,GACAstG,GAAA,GAEA3Z,EAAA8C,EAAAlpD,UACA,OAAAn8D,GAAA,EAAAC,EAAAolH,EAAAlpD,SAAA75D,OAA8CtC,EAAAC,EAAOD,IAAA,CACrD,GAAA+oH,GAAA1D,EAAAlpD,SAAAn8D,EACAuiH,GAAAwG,EAAAvD,OAAAlD,EAAAyG,EAAAnD,KAAApD,EAAA0Z,KACAD,GAAAlT,EAAAnD,EAAAsW,IAQA,QAAAC,IAAAnU,GACAA,EAAA8J,OAAA,IACA,IAAA77G,GAAA+xG,EAAAsC,SACAgH,EAAAtJ,EAAAoJ,OAAAn7G,EAAA47G,aACAiI,EAAAxI,KAAAjiE,OACA24D,GAAAmK,OAAAtC,GAAA55G,EAAAw7G,gBAAAqI,GACA9R,EAAA2J,aAAAC,GAKA5J,EAAA0R,GAAA,SAAAv3H,EAAAoB,EAAAnD,EAAAC,GAAiC,MAAAiK,IAAA09G,EAAA7lH,EAAAoB,EAAAnD,EAAAC,GAAA,IAGjC2nH,EAAAoU,eAAA,SAAAj6H,EAAAoB,EAAAnD,EAAAC,GAA6C,MAAAiK,IAAA09G,EAAA7lH,EAAAoB,EAAAnD,EAAAC,GAAA,GAI7C,IAAAg8H,GAAA/K,KAAAzlH,IAWAk7G,GAAAiB,EAAA,SAAAqU,KAAArP,OAAA4E,GAAA,SACA7K,EAAAiB,EAAA,aAAA/xG,EAAAq5G,kBAAAsC,GAAA,SA0IA,QAAA0K,IAAAtU,EAAA/xG,GACA,GAAA+9G,GAAAhM,EAAAsC,SAAA7pH,OAAA2D,OAAA4jH,EAAAx+F,YAAAvT,QAEA+9G,GAAAz4D,OAAAtlD,EAAAslD,OACAy4D,EAAAjK,UAAA9zG,EAAA8zG,UACAiK,EAAAnC,aAAA57G,EAAA47G,aACAmC,EAAA1E,iBAAAr5G,EAAAq5G,iBACA0E,EAAAvC,gBAAAx7G,EAAAw7G,gBACAuC,EAAA8G,cAAA7kH,EAAA6kH,cACA9G,EAAA+G,WAAA9kH,EAAA8kH,WACA/G,EAAAgH,QAAA/kH,EAAA+kH,QACA/kH,EAAAwxC,SACAusE,EAAAvsE,OAAAxxC,EAAAwxC,OACAusE,EAAAyD,gBAAAxhH,EAAAwhH,iBAIA,QAAA0C,IAAAvV,GACA,GAAA3uG,GAAA2uG,EAAA3uG,OACA,IAAA2uG,EAAA2X,MAAA,CACA,GAAAC,GAAArC,GAAAvV,EAAA2X,MAEA,IAAAC,IADA5X,EAAA4X,aACA,CAGA5X,EAAA4X,cAEA,IAAAC,GAAAC,GAAA9X,EAEA6X,IACAvmH,EAAA0uG,EAAA+X,cAAAF,GAEAxmH,EAAA2uG,EAAA3uG,QAAA6yG,EAAA0T,EAAA5X,EAAA+X,eACA1mH,EAAA3V,OACA2V,EAAAkd,WAAAld,EAAA3V,MAAAskH,IAIA,MAAA3uG,GAGA,QAAAymH,IAAA9X,GACA,GAAAgY,GACAC,EAAAjY,EAAA3uG,QACA6mH,EAAAlY,EAAA+X,cACAI,EAAAnY,EAAAoY,aACA,QAAAz7C,KAAAs7C,GACAA,EAAAt7C,KAAAw7C,EAAAx7C,KACAq7C,IAAsBA,MACtBA,EAAAr7C,GAAA07C,GAAAJ,EAAAt7C,GAAAu7C,EAAAv7C,GAAAw7C,EAAAx7C,IAGA,OAAAq7C,GAGA,QAAAK,IAAAJ,EAAAC,EAAAC,GAGA,GAAAx1H,MAAAC,QAAAq1H,GAAA,CACA,GAAA/Y,KACAiZ,GAAAx1H,MAAAC,QAAAu1H,SACAD,EAAAv1H,MAAAC,QAAAs1H,QACA,QAAA98H,GAAA,EAAmBA,EAAA68H,EAAAv6H,OAAmBtC,KAEtC88H,EAAA1xH,QAAAyxH,EAAA78H,KAAA,GAAA+8H,EAAA3xH,QAAAyxH,EAAA78H,IAAA,IACA8jH,EAAAl7G,KAAAi0H,EAAA78H,GAGA,OAAA8jH,GAEA,MAAA+Y,GAIA,QAAAK,IAAAjnH,GAMA1U,KAAA47H,MAAAlnH,GAWA,QAAAmnH,IAAAC,GACAA,EAAAC,IAAA,SAAAC,GACA,GAAAC,GAAAj8H,KAAAk8H,oBAAAl8H,KAAAk8H,qBACA,IAAAD,EAAApyH,QAAAmyH,IAAA,EACA,MAAAh8H,KAIA,IAAAkiE,GAAA78B,EAAAthB,UAAA,EAQA,OAPAm+C,GAAAi6D,QAAAn8H,MACA,mBAAAg8H,GAAAI,QACAJ,EAAAI,QAAAp4G,MAAAg4G,EAAA95D,GACK,mBAAA85D,IACLA,EAAAh4G,MAAA,KAAAk+C,GAEA+5D,EAAA50H,KAAA20H,GACAh8H,MAMA,QAAAq8H,IAAAP,GACAA,EAAAQ,MAAA,SAAAA,GAEA,MADAt8H,MAAA0U,QAAA6yG,EAAAvnH,KAAA0U,QAAA4nH,GACAt8H,MAMA,QAAAu8H,IAAAT,GAMAA,EAAAnD,IAAA,CACA,IAAAA,GAAA,CAKAmD,GAAAnnH,OAAA,SAAAymH,GACAA,OACA,IAAAoB,GAAAx8H,KACAy8H,EAAAD,EAAA7D,IACA+D,EAAAtB,EAAAuB,QAAAvB,EAAAuB,SACA,IAAAD,EAAAD,GACA,MAAAC,GAAAD,EAGA,IAAA19H,GAAAq8H,EAAAr8H,MAAAy9H,EAAA9nH,QAAA3V,KAWA69H,EAAA,SAAAloH,GACA1U,KAAA47H,MAAAlnH,GA6CA,OA3CAkoH,GAAAj9H,UAAAT,OAAA2D,OAAA25H,EAAA78H,WACAi9H,EAAAj9H,UAAAsoB,YAAA20G,EACAA,EAAAjE,QACAiE,EAAAloH,QAAA6yG,EACAiV,EAAA9nH,QACA0mH,GAEAwB,EAAA,MAAAJ,EAKAI,EAAAloH,QAAAqyG,OACA8V,GAAAD,GAEAA,EAAAloH,QAAAo+G,UACAgK,GAAAF,GAIAA,EAAAjoH,OAAA6nH,EAAA7nH,OACAioH,EAAAN,MAAAE,EAAAF,MACAM,EAAAb,IAAAS,EAAAT,IAIAgB,GAAAjhH,QAAA,SAAAlP,GACAgwH,EAAAhwH,GAAA4vH,EAAA5vH,KAGA7N,IACA69H,EAAAloH,QAAAkd,WAAA7yB,GAAA69H,GAMAA,EAAA3B,aAAAuB,EAAA9nH,QACAkoH,EAAAxB,gBACAwB,EAAAnB,cAAA9mH,KAAiCioH,EAAAloH,SAGjCgoH,EAAAD,GAAAG,EACAA,GAIA,QAAAC,IAAAG,GACA,GAAAjW,GAAAiW,EAAAtoH,QAAAqyG,KACA,QAAA/mC,KAAA+mC,GACAqL,GAAA4K,EAAAr9H,UAAA,SAAAqgF,GAIA,QAAA88C,IAAAE,GACA,GAAAlK,GAAAkK,EAAAtoH,QAAAo+G,QACA,QAAA9yC,KAAA8yC,GACAa,GAAAqJ,EAAAr9H,UAAAqgF,EAAA8yC,EAAA9yC,IAMA,QAAAi9C,IAAAnB,GAIAiB,GAAAjhH,QAAA,SAAAlP,GACAkvH,EAAAlvH,GAAA,SACAjG,EACAu2H,GAEA,MAAAA,IAYA,cAAAtwH,GAAAw0G,EAAA8b,KACAA,EAAAn+H,KAAAm+H,EAAAn+H,MAAA4H,EACAu2H,EAAAl9H,KAAA0U,QAAAgkH,MAAA/jH,OAAAuoH,IAEA,cAAAtwH,GAAA,mBAAAswH,KACAA,GAAwB/gH,KAAA+gH,EAAA56E,OAAA46E,IAExBl9H,KAAA0U,QAAA9H,EAAA,KAAAjG,GAAAu2H,EACAA,GAnBAl9H,KAAA0U,QAAA9H,EAAA,KAAAjG,MA2BA,QAAAw2H,IAAA1K,GACA,MAAAA,OAAApP,KAAA3uG,QAAA3V,MAAA0zH,EAAAxO,KAGA,QAAAmZ,IAAApuF,EAAAjwC,GACA,MAAAiH,OAAAC,QAAA+oC,GACAA,EAAAnlC,QAAA9K,IAAA,EACG,iBAAAiwC,GACHA,EAAAzkB,MAAA,KAAA1gB,QAAA9K,IAAA,IACG4qB,EAAAqlB,IACHA,EAAA7iB,KAAAptB,GAMA,QAAAs+H,IAAAC,EAAAzhH,GACA,GAAA0T,GAAA+tG,EAAA/tG,MACAlX,EAAAilH,EAAAjlH,KACAk4G,EAAA+M,EAAA/M,MACA,QAAAvwC,KAAAzwD,GAAA,CACA,GAAAguG,GAAAhuG,EAAAywD,EACA,IAAAu9C,EAAA,CACA,GAAAx+H,GAAAo+H,GAAAI,EAAApZ,iBACAplH,KAAA8c,EAAA9c,IACAy+H,GAAAjuG,EAAAywD,EAAA3nE,EAAAk4G,KAMA,QAAAiN,IACAjuG,EACAywD,EACA3nE,EACAolH,GAEA,GAAAC,GAAAnuG,EAAAywD,EACA09C,QAAAD,GACAC,EAAAC,kBAAAC,WAEAruG,EAAAywD,GAAA,KACA/kB,EAAA5iD,EAAA2nE,GA2LA,QAAA69C,IAAA/Z,GAIA,IAHA,GAAAx5G,GAAAw5G,EAAAx5G,KACA8rF,EAAA0tB,EACAga,EAAAha,EACA9C,EAAA8c,EAAAH,oBACAG,IAAAH,kBAAApN,OACAuN,EAAAxzH,OACAA,EAAAyzH,GAAAD,EAAAxzH,QAGA,MAAA02G,EAAA5qB,IAAAp8B,SACAo8B,EAAA9rF,OACAA,EAAAyzH,GAAAzzH,EAAA8rF,EAAA9rF,MAGA,OAAA0zH,IAAA1zH,EAAA2zH,YAAA3zH,EAAA4zH,OAGA,QAAAH,IAAAvW,EAAAxtD,GACA,OACAikE,YAAAj3H,GAAAwgH,EAAAyW,YAAAjkE,EAAAikE,aACAC,MAAAld,EAAAwG,EAAA0W,QACA1W,EAAA0W,MAAAlkE,EAAAkkE,OACAlkE,EAAAkkE,OAIA,QAAAF,IACAC,EACAE,GAEA,MAAAnd,GAAAid,IAAAjd,EAAAmd,GACAn3H,GAAAi3H,EAAAG,GAAAD,IAGA,GAGA,QAAAn3H,IAAApG,EAAAoB,GACA,MAAApB,GAAAoB,EAAApB,EAAA,IAAAoB,EAAApB,EAAAoB,GAAA,GAGA,QAAAo8H,IAAA9uH,GACA,MAAAtJ,OAAAC,QAAAqJ,GACA+uH,GAAA/uH,GAEAqb,EAAArb,GACAgvH,GAAAhvH,GAEA,iBAAAA,GACAA,EAGA,GAGA,QAAA+uH,IAAA/uH,GAGA,OADAivH,GADAhc,EAAA,GAEA9jH,EAAA,EAAAC,EAAA4Q,EAAAvO,OAAmCtC,EAAAC,EAAOD,IAC1CuiH,EAAAud,EAAAH,GAAA9uH,EAAA7Q,MAAA,KAAA8/H,IACAhc,IAAgBA,GAAA,KAChBA,GAAAgc,EAGA,OAAAhc,GAGA,QAAA+b,IAAAhvH,GACA,GAAAizG,GAAA,EACA,QAAAviC,KAAA1wE,GACAA,EAAA0wE,KACAuiC,IAAgBA,GAAA,KAChBA,GAAAviC,EAGA,OAAAuiC,GAuCA,QAAAgY,IAAAtW,GACA,MAAAua,IAAAva,GACA,MAIA,SAAAA,EACA,WADA,GAMA,QAAAwa,IAAAxa,GAEA,IAAA0F,GACA,QAEA,IAAA6Q,GAAAvW,GACA,QAIA,IAFAA,IAAAl8C,cAEA,MAAA22D,GAAAza,GACA,MAAAya,IAAAza,EAEA,IAAApD,GAAA/3G,SAAAC,cAAAk7G,EACA,OAAAA,GAAAp6G,QAAA,QAEA60H,GAAAza,GACApD,EAAA54F,cAAA7nB,OAAAu+H,oBACA9d,EAAA54F,cAAA7nB,OAAAw+H,YAGAF,GAAAza,GAAA,qBAAA93F,KAAA00F,EAAAh3F,YAWA,QAAAhR,IAAAgoG,GACA,oBAAAA,GAAA,CACA,GAAAge,GAAA/1H,SAAAgyF,cAAA+lB,EACA,OAAAge,IAIA/1H,SAAAC,cAAA,OAIA,MAAA83G,GAMA,QAAAie,IAAAC,EAAAjb,GACA,GAAAI,GAAAp7G,SAAAC,cAAAg2H,EACA,kBAAAA,EACA7a,GAGAJ,EAAAx5G,MAAAw5G,EAAAx5G,KAAAmhH,WAAAp+F,KAAAy2F,EAAAx5G,KAAAmhH,MAAAuT,UACA9a,EAAAznB,aAAA,uBAEAynB,GAGA,QAAA+a,IAAAC,EAAAH,GACA,MAAAj2H,UAAAm2H,gBAAAE,GAAAD,GAAAH,GAGA,QAAApxB,IAAAv0E,GACA,MAAAtwB,UAAA6kG,eAAAv0E,GAGA,QAAAgmG,IAAAhmG,GACA,MAAAtwB,UAAAs2H,cAAAhmG,GAGA,QAAA6vE,IAAA7S,EAAAipC,EAAAC,GACAlpC,EAAA6S,aAAAo2B,EAAAC,GAGA,QAAAn4B,IAAA6kB,EAAAxE,GACAwE,EAAA7kB,YAAAqgB,GAGA,QAAApnB,IAAA4rB,EAAAxE,GACAwE,EAAA5rB,YAAAonB,GAGA,QAAApxB,IAAA41B,GACA,MAAAA,GAAA51B,WAGA,QAAAmpC,IAAAvT,GACA,MAAAA,GAAAuT,YAGA,QAAAR,IAAA/S,GACA,MAAAA,GAAA+S,QAGA,QAAAS,IAAAxT,EAAA5yF,GACA4yF,EAAAyT,YAAArmG,EAGA,QAAAqjE,IAAAuvB,EAAAhsC,EAAAuhC,GACAyK,EAAAvvB,aAAAzc,EAAAuhC,GAoCA,QAAAme,IAAA5b,EAAA6b,GACA,GAAA3/C,GAAA8jC,EAAAx5G,KAAA3C,GACA,IAAAq4E,EAAA,CAEA,GAAAymC,GAAA3C,EAAAh2D,QACAnmD,EAAAm8G,EAAA6Z,mBAAA7Z,EAAAI,IACA0b,EAAAnZ,EAAAuI,KACA2Q,GACA35H,MAAAC,QAAA25H,EAAA5/C,IACA/kB,EAAA2kE,EAAA5/C,GAAAr4E,GACKi4H,EAAA5/C,KAAAr4E,IACLi4H,EAAA5/C,OAAA3yD,IAGAy2F,EAAAx5G,KAAAu1H,SACA75H,MAAAC,QAAA25H,EAAA5/C,IAEO4/C,EAAA5/C,GAAAn2E,QAAAlC,GAAA,GAEPi4H,EAAA5/C,GAAA34E,KAAAM,GAHAi4H,EAAA5/C,IAAAr4E,GAMAi4H,EAAA5/C,GAAAr4E,GAqBA,QAAAm4H,IAAAl/H,EAAAoB,GACA,MACApB,GAAAo/E,MAAAh+E,EAAAg+E,MAEAp/E,EAAAqjH,MAAAjiH,EAAAiiH,KACArjH,EAAA2jH,YAAAviH,EAAAuiH,WACAvD,EAAApgH,EAAA0J,QAAA02G,EAAAh/G,EAAAsI,OACAy1H,GAAAn/H,EAAAoB,IAEAi/G,EAAArgH,EAAA8sH,qBACA9sH,EAAAwjH,eAAApiH,EAAAoiH,cACArD,EAAA/+G,EAAAoiH,aAAAx4F,QAMA,QAAAm0G,IAAAn/H,EAAAoB,GACA,aAAApB,EAAAqjH,IAA0B,QAC1B,IAAAxlH,GACAuhI,EAAAhf,EAAAviH,EAAAmC,EAAA0J,OAAA02G,EAAAviH,IAAAgtH,QAAAhtH,EAAAmO,KACAqzH,EAAAjf,EAAAviH,EAAAuD,EAAAsI,OAAA02G,EAAAviH,IAAAgtH,QAAAhtH,EAAAmO,IACA,OAAAozH,KAAAC,GAAAC,GAAAF,IAAAE,GAAAD,GAGA,QAAAE,IAAAvlE,EAAAwlE,EAAAC,GACA,GAAA5hI,GAAAuhF,EACAxtE,IACA,KAAA/T,EAAA2hI,EAAoB3hI,GAAA4hI,IAAa5hI,EACjCuhF,EAAAplB,EAAAn8D,GAAAuhF,IACAghC,EAAAhhC,KAAqBxtE,EAAAwtE,GAAAvhF,EAErB,OAAA+T,GAspBA,QAAA8tH,IAAAC,EAAAzc,IACAyc,EAAAj2H,KAAAg9G,YAAAxD,EAAAx5G,KAAAg9G,aACAjf,GAAAk4B,EAAAzc,GAIA,QAAAzb,IAAAk4B,EAAAzc,GACA,GAQA9jC,GAAAwgD,EAAAC,EARAC,EAAAH,IAAAI,GACAC,EAAA9c,IAAA6c,GACAE,EAAAC,GAAAP,EAAAj2H,KAAAg9G,WAAAiZ,EAAAzyE,SACAizE,EAAAD,GAAAhd,EAAAx5G,KAAAg9G,WAAAxD,EAAAh2D,SAEAkzE,KACAC,IAGA,KAAAjhD,IAAA+gD,GACAP,EAAAK,EAAA7gD,GACAygD,EAAAM,EAAA/gD,GACAwgD,GAQAC,EAAAS,SAAAV,EAAAlxH,MACA6xH,GAAAV,EAAA,SAAA3c,EAAAyc,GACAE,EAAAvd,KAAAud,EAAAvd,IAAAke,kBACAH,EAAA55H,KAAAo5H,KATAU,GAAAV,EAAA,OAAA3c,EAAAyc,GACAE,EAAAvd,KAAAud,EAAAvd,IAAAme,UACAL,EAAA35H,KAAAo5H,GAYA,IAAAO,EAAAjgI,OAAA,CACA,GAAAugI,GAAA,WACA,OAAA7iI,GAAA,EAAqBA,EAAAuiI,EAAAjgI,OAA2BtC,IAChD0iI,GAAAH,EAAAviI,GAAA,WAAAqlH,EAAAyc,GAGAG,GACAxV,GAAApH,EAAAx5G,KAAA8gH,OAAAtH,EAAAx5G,KAAA8gH,SAA6D,SAAAkW,GAE7DA,IAYA,GARAL,EAAAlgI,QACAmqH,GAAApH,EAAAx5G,KAAA8gH,OAAAtH,EAAAx5G,KAAA8gH,SAA2D,uBAC3D,OAAA3sH,GAAA,EAAqBA,EAAAwiI,EAAAlgI,OAA8BtC,IACnD0iI,GAAAF,EAAAxiI,GAAA,mBAAAqlH,EAAAyc,MAKAG,EACA,IAAA1gD,IAAA6gD,GACAE,EAAA/gD,IAEAmhD,GAAAN,EAAA7gD,GAAA,SAAAugD,IAAAK,GAQA,QAAAE,IACAzZ,EACAZ,GAEA,GAAAlE,GAAArjH,OAAA2D,OAAA,KACA,KAAAwkH,EACA,MAAA9E,EAEA,IAAA9jH,GAAAgiI,CACA,KAAAhiI,EAAA,EAAaA,EAAA4oH,EAAAtmH,OAAiBtC,IAC9BgiI,EAAApZ,EAAA5oH,GACAgiI,EAAAc,YACAd,EAAAc,UAAAC,IAEAjf,EAAAkf,GAAAhB,MACAA,EAAAvd,IAAA8E,EAAAvB,EAAAsC,SAAA,aAAA0X,EAAA1hI,MAAA,EAEA,OAAAwjH,GAGA,QAAAkf,IAAAhB,GACA,MAAAA,GAAAiB,SAAAjB,EAAA,SAAAvhI,OAAAmZ,KAAAooH,EAAAc,eAA4EryH,KAAA,KAG5E,QAAAiyH,IAAAV,EAAArV,EAAAtH,EAAAyc,EAAAK,GACA,GAAA3e,GAAAwe,EAAAvd,KAAAud,EAAAvd,IAAAkI,EACA,IAAAnJ,EACA,IACAA,EAAA6B,EAAAI,IAAAuc,EAAA3c,EAAAyc,EAAAK,GACK,MAAAzgI,GACL8oH,GAAA9oH,EAAA2jH,EAAAh2D,QAAA,aAAA2yE,EAAA,SAAArV,EAAA,UAYA,QAAAuW,IAAApB,EAAAzc,GACA,GAAA2O,GAAA3O,EAAAK,gBACA,MAAAnD,EAAAyR,KAAA,IAAAA,EAAApP,KAAA3uG,QAAAktH,iBAGA7gB,EAAAwf,EAAAj2H,KAAAmhH,SAAA1K,EAAA+C,EAAAx5G,KAAAmhH,QAAA,CAGA,GAAAzrC,GAAAopC,EACAlF,EAAAJ,EAAAI,IACA2d,EAAAtB,EAAAj2H,KAAAmhH,UACAA,EAAA3H,EAAAx5G,KAAAmhH,SAEAzK,GAAAyK,EAAAxG,UACAwG,EAAA3H,EAAAx5G,KAAAmhH,MAAA92G,KAAwC82G,GAGxC,KAAAzrC,IAAAyrC,GACArC,EAAAqC,EAAAzrC,GACA6hD,EAAA7hD,KACAopC,GACA0Y,GAAA5d,EAAAlkC,EAAAopC,IAMA2Y,IAAAC,KAAAvW,EAAAn8G,QAAAuyH,EAAAvyH,OACAwyH,GAAA5d,EAAA,QAAAuH,EAAAn8G,MAEA,KAAA0wE,IAAA6hD,GACA9gB,EAAA0K,EAAAzrC,MACAiiD,GAAAjiD,GACAkkC,EAAAge,kBAAAC,GAAAC,GAAApiD,IACOqiD,GAAAriD,IACPkkC,EAAAoe,gBAAAtiD,KAMA,QAAA8hD,IAAAjhB,EAAA7gC,EAAA1wE,GACAizH,GAAAviD,GAGAwiD,GAAAlzH,GACAuxG,EAAAyhB,gBAAAtiD,IAIA1wE,EAAA,oBAAA0wE,GAAA,UAAA6gC,EAAAke,QACA,OACA/+C,EACA6gC,EAAApkB,aAAAzc,EAAA1wE,IAEG+yH,GAAAriD,GACH6gC,EAAApkB,aAAAzc,EAAAwiD,GAAAlzH,IAAA,UAAAA,EAAA,gBACG2yH,GAAAjiD,GACHwiD,GAAAlzH,GACAuxG,EAAAqhB,kBAAAC,GAAAC,GAAApiD,IAEA6gC,EAAA4hB,eAAAN,GAAAniD,EAAA1wE,GAGAkzH,GAAAlzH,GACAuxG,EAAAyhB,gBAAAtiD,GAEA6gC,EAAApkB,aAAAzc,EAAA1wE,GAYA,QAAAozH,IAAAnC,EAAAzc,GACA,GAAAjD,GAAAiD,EAAAI,IACA55G,EAAAw5G,EAAAx5G,KACAq4H,EAAApC,EAAAj2H,IACA,MACAy2G,EAAAz2G,EAAA2zH,cACAld,EAAAz2G,EAAA4zH,SACAnd,EAAA4hB,IACA5hB,EAAA4hB,EAAA1E,cACAld,EAAA4hB,EAAAzE,SALA,CAYA,GAAA0E,GAAA/E,GAAA/Z,GAGA+e,EAAAhiB,EAAAiiB,kBACA9hB,GAAA6hB,KACAD,EAAA57H,GAAA47H,EAAAxE,GAAAyE,KAIAD,IAAA/hB,EAAAkiB,aACAliB,EAAApkB,aAAA,QAAAmmC,GACA/hB,EAAAkiB,WAAAH,IAaA,QAAAI,IAAAp1H,GAoEA,QAAAq1H,MACAC,WAAA77H,KAAAuG,EAAAkL,MAAAqqH,EAAA1kI,GAAAk1F,QACAwvC,EAAA1kI,EAAA,EArEA,GAQAI,GAAAqR,EAAAzR,EAAA2kI,EAAAF,EARAG,GAAA,EACAC,GAAA,EACAC,GAAA,EACAC,GAAA,EACAC,EAAA,EACArtD,EAAA,EACAstD,EAAA,EACAP,EAAA,CAGA,KAAA1kI,EAAA,EAAaA,EAAAmP,EAAA7M,OAAgBtC,IAG7B,GAFAyR,EAAArR,EACAA,EAAA+O,EAAAqS,WAAAxhB,GACA4kI,EACA,KAAAxkI,GAAA,KAAAqR,IAAwCmzH,GAAA,OACnC,IAAAC,EACL,KAAAzkI,GAAA,KAAAqR,IAAwCozH,GAAA,OACnC,IAAAC,EACL,KAAA1kI,GAAA,KAAAqR,IAAwCqzH,GAAA,OACnC,IAAAC,EACL,KAAA3kI,GAAA,KAAAqR,IAAwCszH,GAAA,OACnC,IACL,MAAA3kI,GACA,MAAA+O,EAAAqS,WAAAxhB,EAAA,IACA,MAAAmP,EAAAqS,WAAAxhB,EAAA,IACAglI,GAAArtD,GAAAstD,EASK,CACL,OAAA7kI,GACA,QAAAykI,GAAA,CAAmC,MACnC,SAAAD,GAAA,CAAmC,MACnC,SAAAE,GAAA,CAA2C,MAC3C,SAAAG,GAA2B,MAC3B,SAAAA,GAA2B,MAC3B,SAAAttD,GAA4B,MAC5B,SAAAA,GAA4B,MAC5B,UAAAqtD,GAA2B,MAC3B,UAAAA,IAEA,QAAA5kI,EAAA,CAIA,IAHA,GAAAoD,GAAAxD,EAAA,EACAoB,MAAA,GAEcoC,GAAA,GAEd,OADApC,EAAA+N,EAAA6sB,OAAAx4B,IADsBA,KAItBpC,GAAA8jI,GAAAx3G,KAAAtsB,KACA2jI,GAAA,aA5BAn2G,KAAA+1G,GAEAD,EAAA1kI,EAAA,EACA2kI,EAAAx1H,EAAAkL,MAAA,EAAAra,GAAAk1F,QAEAsvC,GAwCA,QAXA51G,KAAA+1G,EACAA,EAAAx1H,EAAAkL,MAAA,EAAAra,GAAAk1F,OACG,IAAAwvC,GACHF,IAQAC,EACA,IAAAzkI,EAAA,EAAeA,EAAAykI,EAAAniI,OAAoBtC,IACnC2kI,EAAAQ,GAAAR,EAAAF,EAAAzkI,GAIA,OAAA2kI,GAGA,QAAAQ,IAAAh2H,EAAAiO,GACA,GAAApd,GAAAod,EAAAhS,QAAA,IACA,OAAApL,GAAA,EAEA,OAAAod,EAAA,MAAAjO,EAAA,IAIA,OAFAiO,EAAA/C,MAAA,EAAAra,GAEA,MAAAmP,EAAA,IADAiO,EAAA/C,MAAAra,EAAA,GAOA,QAAAolI,IAAAC,GACAjvH,QAAA+W,MAAA,mBAAAk4G,GAGA,QAAAC,IACA5lI,EACA6hF,GAEA,MAAA7hF,GACAA,EAAAqU,IAAA,SAAA5T,GAAgC,MAAAA,GAAAohF,KAAiBnkE,OAAA,SAAAkZ,GAAuB,MAAAA,QAIxE,QAAAivG,IAAAnjB,EAAA9hH,EAAAuQ,IACAuxG,EAAAkG,QAAAlG,EAAAkG,WAAA1/G,MAAsCtI,OAAAuQ,UAGtC,QAAA20H,IAAApjB,EAAA9hH,EAAAuQ,IACAuxG,EAAA4K,QAAA5K,EAAA4K,WAAApkH,MAAsCtI,OAAAuQ,UAGtC,QAAA40H,IACArjB,EACA9hH,EACA2iI,EACApyH,EACA60H,EACA5C,IAEA1gB,EAAAyG,aAAAzG,EAAAyG,gBAAAjgH,MAAgDtI,OAAA2iI,UAAApyH,QAAA60H,MAAA5C,cAGhD,QAAA6C,IACAvjB,EACA9hH,EACAuQ,EACAiyH,EACA8C,EACA1gE,GAcA49D,KAAAj9B,gBACAi9B,GAAAj9B,QACAvlG,EAAA,IAAAA,GAEAwiI,KAAA/8G,aACA+8G,GAAA/8G,KACAzlB,EAAA,IAAAA,GAGAwiI,KAAAtW,gBACAsW,GAAAtW,QACAlsH,EAAA,IAAAA,EAEA,IAAAulI,EACA/C,MAAAgD,cACAhD,GAAAgD,OACAD,EAAAzjB,EAAA2jB,eAAA3jB,EAAA2jB,kBAEAF,EAAAzjB,EAAAyjB,SAAAzjB,EAAAyjB,UAEA,IAAAG,IAAoBn1H,QAAAiyH,aACpB/rC,EAAA8uC,EAAAvlI,EAEAiH,OAAAC,QAAAuvF,GACA6uC,EAAA7uC,EAAA2mC,QAAAsI,GAAAjvC,EAAAnuF,KAAAo9H,GAEAH,EAAAvlI,GADGy2F,EACH6uC,GAAAI,EAAAjvC,MAAAivC,GAEAA,EAIA,QAAAC,IACA7jB,EACA9hH,EACA4lI,GAEA,GAAAC,GACAC,GAAAhkB,EAAA,IAAA9hH,IACA8lI,GAAAhkB,EAAA,UAAA9hH,EACA,UAAA6lI,EACA,MAAA5B,IAAA4B,EACG,SAAAD,EAAA,CACH,GAAAG,GAAAD,GAAAhkB,EAAA9hH,EACA,UAAA+lI,EACA,MAAAlvH,MAAAC,UAAAivH,IASA,QAAAD,IACAhkB,EACA9hH,EACAgmI,GAEA,GAAAxjB,EACA,WAAAA,EAAAV,EAAAmkB,SAAAjmI,IAEA,OADA6iH,GAAAf,EAAAokB,UACAxmI,EAAA,EAAAC,EAAAkjH,EAAA7gH,OAAoCtC,EAAAC,EAAOD,IAC3C,GAAAmjH,EAAAnjH,GAAAM,SAAA,CACA6iH,EAAA55G,OAAAvJ,EAAA,EACA,OAOA,MAHAsmI,UACAlkB,GAAAmkB,SAAAjmI,GAEAwiH,EAQA,QAAA2jB,IACArkB,EACAvxG,EACAiyH,GAEA,GAAA55H,GAAA45H,MACAp0G,EAAAxlB,EAAAwlB,OACAwmE,EAAAhsF,EAAAgsF,KAGAwxC,EADA,KAEAxxC,KACAwxC,EACA,8CAIAh4G,IACAg4G,EAAA,MAAAA,EAAA,IAEA,IAAAC,GAAAC,GAAA/1H,EAAA61H,EAEAtkB,GAAAgY,OACAvpH,MAAA,IAAAA,EAAA,IACA8zH,WAAA,IAAA9zH,EAAA,IACAwyC,SAAA,mBAAwDsjF,EAAA,KAOxD,QAAAC,IACA/1H,EACA81H,GAEA,GAAA7iB,GAAA+iB,GAAAh2H,EACA,eAAAizG,EAAAviC,IACA1wE,EAAA,IAAA81H,EAEA,QAAA7iB,EAAA,SAAAA,EAAA,SAAA6iB,EAAA,IA4BA,QAAAE,IAAA/jB,GAGA,GAFAoD,GAAApD,EAAAxgH,OAEAwgH,EAAA13G,QAAA,QAAA03G,EAAAxlG,YAAA,KAAA4oG,GAAA,EAEA,MADA4gB,IAAAhkB,EAAAxlG,YAAA,KACAwpH,IAAA,GAEA33H,IAAA2zG,EAAAzoG,MAAA,EAAAysH,IACAvlD,IAAA,IAAAuhC,EAAAzoG,MAAAysH,GAAA,SAIA33H,IAAA2zG,EACAvhC,IAAA,KAQA,KAHA0hC,GAAAH,EACAgkB,GAAAC,GAAAC,GAAA,GAEAC,MACAC,GAAA91H,KAEA+1H,GAAAD,IACAE,GAAAF,IACK,KAAAA,IACLG,GAAAH,GAIA,QACA/3H,IAAA2zG,EAAAzoG,MAAA,EAAA0sH,IACAxlD,IAAAuhC,EAAAzoG,MAAA0sH,GAAA,EAAAC,KAIA,QAAA51H,MACA,MAAA6xG,IAAAzhG,aAAAslH,IAGA,QAAAG,MACA,MAAAH,KAAA5gB,GAGA,QAAAihB,IAAAD,GACA,YAAAA,GAAA,KAAAA,EAGA,QAAAG,IAAAH,GACA,GAAAI,GAAA,CAEA,KADAP,GAAAD,IACAG,MAEA,GADAC,EAAA91H,KACA+1H,GAAAD,GACAE,GAAAF,OAKA,IAFA,KAAAA,GAAuBI,IACvB,KAAAJ,GAAuBI,IACvB,IAAAA,EAAA,CACAN,GAAAF,EACA,QAKA,QAAAM,IAAAF,GAEA,IADA,GAAAK,GAAAL,GACAD,OACAC,EAAA91H,QACAm2H,KAeA,QAAAnN,IACAhY,EACA4f,EACAwF,GAEAC,GAAAD,CACA,IAAA32H,GAAAmxH,EAAAnxH,MACAiyH,EAAAd,EAAAc,UACAtd,EAAApD,EAAAoD,IACAr3G,EAAAi0G,EAAAmkB,SAAAp4H,IAaA,IAAAi0G,EAAA4M,UAGA,MAFAyX,IAAArkB,EAAAvxG,EAAAiyH,IAEA,CACG,eAAAtd,EACHkiB,GAAAtlB,EAAAvxG,EAAAiyH,OACG,cAAAtd,GAAA,aAAAr3G,EACHw5H,GAAAvlB,EAAAvxG,EAAAiyH,OACG,cAAAtd,GAAA,UAAAr3G,EACHy5H,GAAAxlB,EAAAvxG,EAAAiyH,OACG,cAAAtd,GAAA,aAAAA,EACHqiB,GAAAzlB,EAAAvxG,EAAAiyH,OACG,KAAAt0F,GAAAutF,cAAAvW,GAGH,MAFAihB,IAAArkB,EAAAvxG,EAAAiyH,IAEA,CAWA,UAGA,QAAA6E,IACAvlB,EACAvxG,EACAiyH,GAEA,GAAAp0G,GAAAo0G,KAAAp0G,OACAo5G,EAAA7B,GAAA7jB,EAAA,iBACA2lB,EAAA9B,GAAA7jB,EAAA,sBACA4lB,EAAA/B,GAAA7jB,EAAA,uBACAmjB,IAAAnjB,EAAA,UACA,iBAAAvxG,EAAA,QACAA,EAAA,IAAAi3H,EAAA,QACA,SAAAC,EACA,KAAAl3H,EAAA,IACA,OAAAA,EAAA,IAAAk3H,EAAA,MAGApC,GAAAvjB,EAAA,SACA,WAAAvxG,EAAA,yCAEAk3H,EAAA,MAAAC,EAAA,qCAEAt5G,EAAA,MAAAo5G,EAAA,IAAAA,GAAA,6CAEwBj3H,EAAA,qCACZA,EAAA,qDACD+1H,GAAA/1H,EAAA,WACX,SAIA,QAAA+2H,IACAxlB,EACAvxG,EACAiyH,GAEA,GAAAp0G,GAAAo0G,KAAAp0G,OACAo5G,EAAA7B,GAAA7jB,EAAA,gBACA0lB,GAAAp5G,EAAA,MAAAo5G,EAAA,IAAAA,EACAvC,GAAAnjB,EAAA,gBAAAvxG,EAAA,IAAAi3H,EAAA,KACAnC,GAAAvjB,EAAA,SAAAwkB,GAAA/1H,EAAAi3H,GAAA,SAGA,QAAAJ,IACAtlB,EACAvxG,EACAiyH,GAEA,GAAAp0G,GAAAo0G,KAAAp0G,OACAu5G,EAAA,0JAGAv5G,EAAA,sBAGArsB,EAAA,uBAAA4lI,EAAA,GACA5lI,KAAA,IAAAukI,GAAA/1H,EAFA,6DAGA80H,GAAAvjB,EAAA,SAAA//G,EAAA,SAGA,QAAAwlI,IACAzlB,EACAvxG,EACAiyH,GAEA,GAAA30H,GAAAi0G,EAAAmkB,SAAAp4H,KACAjF,EAAA45H,MACAoF,EAAAh/H,EAAAg/H,KACAx5G,EAAAxlB,EAAAwlB,OACAwmE,EAAAhsF,EAAAgsF,KACAizC,GAAAD,GAAA,UAAA/5H,EACAm+G,EAAA4b,EACA,SACA,UAAA/5H,EACAi6H,GACA,QAEA1B,EAAA,qBACAxxC,KACAwxC,EAAA,8BAEAh4G,IACAg4G,EAAA,MAAAA,EAAA,IAGA,IAAArkI,GAAAukI,GAAA/1H,EAAA61H,EACAyB,KACA9lI,EAAA,qCAA8CA,GAG9CkjI,GAAAnjB,EAAA,YAAAvxG,EAAA,KACA80H,GAAAvjB,EAAAkK,EAAAjqH,EAAA,UACA6yF,GAAAxmE,IACAi3G,GAAAvjB,EAAA,yBAUA,QAAAimB,IAAAxiH,GAEA,GAAA08F,EAAA18F,EAAAuiH,KAAA,CAEA,GAAA9b,GAAAgc,GAAA,gBACAziH,GAAAymG,MAAA/jH,OAAAsd,EAAAuiH,IAAAviH,EAAAymG,cACAzmG,GAAAuiH,IAKA7lB,EAAA18F,EAAA0iH,OACA1iH,EAAA2iH,UAAAjgI,OAAAsd,EAAA0iH,IAAA1iH,EAAA2iH,kBACA3iH,GAAA0iH,KAMA,QAAAE,IAAAnT,EAAAhJ,EAAAzmB,GACA,GAAAif,GAAA4jB,EACA,gBAAAC,KAEA,OADArT,EAAA/vG,MAAA,KAAAD,YAEAsjH,GAAAtc,EAAAqc,EAAA9iC,EAAAif,IAKA,QAAA+jB,IACAvc,EACAgJ,EACAwT,EACAjjC,EACA2mB,GAEA8I,EAAAhK,GAAAgK,GACAwT,IAAgBxT,EAAAmT,GAAAnT,EAAAhJ,EAAAzmB,IAChB6iC,GAAA9nE,iBACA0rD,EACAgJ,EACAyT,IACSljC,UAAA2mB,WACT3mB,GAIA,QAAA+iC,IACAtc,EACAgJ,EACAzvB,EACAif,IAEAA,GAAA4jB,IAAAjrC,oBACA6uB,EACAgJ,EAAA/J,WAAA+J,EACAzvB,GAIA,QAAAmjC,IAAAlH,EAAAzc,GACA,IAAA/C,EAAAwf,EAAAj2H,KAAAga,MAAAy8F,EAAA+C,EAAAx5G,KAAAga,IAAA,CAGA,GAAAA,GAAAw/F,EAAAx5G,KAAAga,OACAsmG,EAAA2V,EAAAj2H,KAAAga,MACA6iH,IAAArjB,EAAAI,IACA4iB,GAAAxiH,GACAqmG,GAAArmG,EAAAsmG,EAAA0c,GAAAD,GAAAvjB,EAAAh2D,UAUA,QAAA45E,IAAAnH,EAAAzc,GACA,IAAA/C,EAAAwf,EAAAj2H,KAAAurH,YAAA9U,EAAA+C,EAAAx5G,KAAAurH,UAAA,CAGA,GAAA71C,GAAAopC,EACAlF,EAAAJ,EAAAI,IACAyjB,EAAApH,EAAAj2H,KAAAurH,aACA9O,EAAAjD,EAAAx5G,KAAAurH,YAEA7U,GAAA+F,EAAA9B,UACA8B,EAAAjD,EAAAx5G,KAAAurH,SAAAlhH,KAA2CoyG,GAG3C,KAAA/mC,IAAA2nD,GACA5mB,EAAAgG,EAAA/mC,MACAkkC,EAAAlkC,GAAA,GAGA,KAAAA,IAAA+mC,GAAA,CAKA,GAJAqC,EAAArC,EAAA/mC,GAIA,gBAAAA,GAAA,cAAAA,EAAA,CAEA,GADA8jC,EAAAlpD,WAA2BkpD,EAAAlpD,SAAA75D,OAAA,GAC3BqoH,IAAAue,EAAA3nD,GAAkC,QAGlC,KAAAkkC,EAAA0jB,WAAA7mI,QACAmjH,EAAA/c,YAAA+c,EAAA0jB,WAAA,IAIA,aAAA5nD,EAAA,CAGAkkC,EAAA2jB,OAAAze,CAEA,IAAA0e,GAAA/mB,EAAAqI,GAAA,GAAAtpG,OAAAspG,EACA2e,IAAA7jB,EAAA4jB,KACA5jB,EAAA50G,MAAAw4H,OAGA5jB,GAAAlkC,GAAAopC,IAQA,QAAA2e,IAAA7jB,EAAA8jB,GACA,OAAA9jB,EAAA+jB,YACA,WAAA/jB,EAAA6a,SACAmJ,GAAAhkB,EAAA8jB,IACAG,GAAAjkB,EAAA8jB,IAIA,QAAAE,IAAAhkB,EAAA8jB,GAGA,GAAAI,IAAA,CAGA,KAAOA,EAAAt/H,SAAAu/H,gBAAAnkB,EAA+C,MAAA/jH,IACtD,MAAAioI,IAAAlkB,EAAA50G,QAAA04H,EAGA,QAAAG,IAAAjkB,EAAA8B,GACA,GAAA12G,GAAA40G,EAAA50G,MACAiyH,EAAArd,EAAAokB,WACA,OAAAtnB,GAAAugB,MAAAp0G,OACAq0F,EAAAlyG,KAAAkyG,EAAAwE,GAEAhF,EAAAugB,MAAA5tC,KACArkF,EAAAqkF,SAAAqyB,EAAAryB,OAEArkF,IAAA02G,EAwBA,QAAAuiB,IAAAj+H,GACA,GAAAssC,GAAA4xF,GAAAl+H,EAAAssC,MAGA,OAAAtsC,GAAAm+H,YACA9zH,EAAArK,EAAAm+H,YAAA7xF,GACAA,EAIA,QAAA4xF,IAAAE,GACA,MAAA1iI,OAAAC,QAAAyiI,GACApmB,EAAAomB,GAEA,iBAAAA,GACAC,GAAAD,GAEAA,EAOA,QAAAn+B,IAAAuZ,EAAA8kB,GACA,GACAC,GADAtmB,IAGA,IAAAqmB,EAEA,IADA,GAAA9K,GAAAha,EACAga,EAAAH,mBACAG,IAAAH,kBAAApN,OACAuN,EAAAxzH,OAAAu+H,EAAAN,GAAAzK,EAAAxzH,QACAqK,EAAA4tG,EAAAsmB,IAKAA,EAAAN,GAAAzkB,EAAAx5G,QACAqK,EAAA4tG,EAAAsmB,EAIA,KADA,GAAAzyC,GAAA0tB,EACA1tB,IAAAp8B,QACAo8B,EAAA9rF,OAAAu+H,EAAAN,GAAAnyC,EAAA9rF,QACAqK,EAAA4tG,EAAAsmB,EAGA,OAAAtmB,GA8CA,QAAAumB,IAAAvI,EAAAzc,GACA,GAAAx5G,GAAAw5G,EAAAx5G,KACAq4H,EAAApC,EAAAj2H,IAEA,MAAAy2G,EAAAz2G,EAAAm+H,cAAA1nB,EAAAz2G,EAAAssC,QACAmqE,EAAA4hB,EAAA8F,cAAA1nB,EAAA4hB,EAAA/rF,QADA,CAMA,GAAAwyE,GAAArqH,EACA8hH,EAAAiD,EAAAI,IACA6kB,EAAApG,EAAA8F,YACAO,EAAArG,EAAAsG,iBAAAtG,EAAA/rF,UAGAsyF,EAAAH,GAAAC,EAEApyF,EAAA4xF,GAAA1kB,EAAAx5G,KAAAssC,UAKAktE,GAAAx5G,KAAA2+H,gBAAAjoB,EAAApqE,EAAAquE,QACAtwG,KAAeiiC,GACfA,CAEA,IAAAuyF,GAAA5+B,GAAAuZ,GAAA,EAEA,KAAA/kH,IAAAmqI,GACAnoB,EAAAooB,EAAApqI,KACAqqI,GAAAvoB,EAAA9hH,EAAA,GAGA,KAAAA,IAAAoqI,IACA/f,EAAA+f,EAAApqI,MACAmqI,EAAAnqI,IAEAqqI,GAAAvoB,EAAA9hH,EAAA,MAAAqqH,EAAA,GAAAA,IAgBA,QAAAhgB,IAAAyX,EAAA+hB,GAEA,GAAAA,QAAAjvC,QAKA,GAAAktB,EAAArmB,UACAooC,EAAA/4H,QAAA,QACA+4H,EAAAr4G,MAAA,OAAAzO,QAAA,SAAAjd,GAA6C,MAAAgiH,GAAArmB,UAAA12F,IAAAjF,KAE7CgiH,EAAArmB,UAAA12F,IAAA8+H,OAEG,CACH,GAAAxZ,GAAA,KAAAvI,EAAAwoB,aAAA,iBACAjgB,GAAAv/G,QAAA,IAAA+4H,EAAA,QACA/hB,EAAApkB,aAAA,SAAA2sB,EAAAwZ,GAAAjvC,SASA,QAAA2V,IAAAuX,EAAA+hB,GAEA,GAAAA,QAAAjvC,QAKA,GAAAktB,EAAArmB,UACAooC,EAAA/4H,QAAA,QACA+4H,EAAAr4G,MAAA,OAAAzO,QAAA,SAAAjd,GAA6C,MAAAgiH,GAAArmB,UAAAv/B,OAAAp8D,KAE7CgiH,EAAArmB,UAAAv/B,OAAA2nE,GAEA/hB,EAAArmB,UAAAz5F,QACA8/G,EAAAyhB,gBAAA,aAEG,CAGH,IAFA,GAAAlZ,GAAA,KAAAvI,EAAAwoB,aAAA,kBACAC,EAAA,IAAA1G,EAAA,IACAxZ,EAAAv/G,QAAAy/H,IAAA,GACAlgB,IAAAj/F,QAAAm/G,EAAA,IAEAlgB,KAAAz1B,OACAy1B,EACAvI,EAAApkB,aAAA,QAAA2sB,GAEAvI,EAAAyhB,gBAAA,UAOA,QAAAiH,IAAArmB,GACA,GAAAA,EAAA,CAIA,oBAAAA,GAAA,CACA,GAAAX,KAKA,QAJA,IAAAW,EAAAsmB,KACA70H,EAAA4tG,EAAAknB,GAAAvmB,EAAAnkH,MAAA,MAEA4V,EAAA4tG,EAAAW,GACAX,EACG,uBAAAW,GACHumB,GAAAvmB,OADG,IAgDH,QAAAwmB,IAAAznB,GACA0nB,GAAA,WACAA,GAAA1nB,KAIA,QAAA2nB,IAAA/oB,EAAA+hB,GACA,GAAAiH,GAAAhpB,EAAAiiB,qBAAAjiB,EAAAiiB,sBACA+G,GAAAhgI,QAAA+4H,GAAA,IACAiH,EAAAxiI,KAAAu7H,GACAx5B,GAAAyX,EAAA+hB,IAIA,QAAAkH,IAAAjpB,EAAA+hB,GACA/hB,EAAAiiB,oBACA7nE,EAAA4lD,EAAAiiB,mBAAAF,GAEAt5B,GAAAuX,EAAA+hB,GAGA,QAAAmH,IACAlpB,EACAmpB,EACA9f,GAEA,GAAAviH,GAAAsiI,GAAAppB,EAAAmpB,GACAp9H,EAAAjF,EAAAiF,KACAuxF,EAAAx2F,EAAAw2F,QACA+rC,EAAAviI,EAAAuiI,SACA,KAAAt9H,EAAc,MAAAs9G,IACd,IAAAa,GAAAn+G,IAAAu9H,GAAAC,GAAAC,GACAC,EAAA,EACAC,EAAA,WACA1pB,EAAA3kB,oBAAA6uB,EAAAyf,GACAtgB,KAEAsgB,EAAA,SAAArqI,GACAA,EAAAg2F,SAAA0qB,KACAypB,GAAAJ,GACAK,IAIAznH,YAAA,WACAwnH,EAAAJ,GACAK,KAEGpsC,EAAA,GACH0iB,EAAAxhD,iBAAA0rD,EAAAyf,GAKA,QAAAP,IAAAppB,EAAAmpB,GACA,GAQAp9H,GARAwc,EAAAhpB,OAAAqqI,iBAAA5pB,GACA6pB,EAAAthH,EAAAuhH,GAAA,SAAApgH,MAAA,MACAqgH,EAAAxhH,EAAAuhH,GAAA,YAAApgH,MAAA,MACAsgH,EAAAC,GAAAJ,EAAAE,GACAG,EAAA3hH,EAAA4hH,GAAA,SAAAzgH,MAAA,MACA0gH,EAAA7hH,EAAA4hH,GAAA,YAAAzgH,MAAA,MACA2gH,EAAAJ,GAAAC,EAAAE,GAGA9sC,EAAA,EACA+rC,EAAA,CA8BA,OA5BAF,KAAAG,GACAU,EAAA,IACAj+H,EAAAu9H,GACAhsC,EAAA0sC,EACAX,EAAAU,EAAA7pI,QAEGipI,IAAAmB,GACHD,EAAA,IACAt+H,EAAAu+H,GACAhtC,EAAA+sC,EACAhB,EAAAe,EAAAlqI,SAGAo9F,EAAA98F,KAAAuG,IAAAijI,EAAAK,GACAt+H,EAAAuxF,EAAA,EACA0sC,EAAAK,EACAf,GACAgB,GACA,KACAjB,EAAAt9H,EACAA,IAAAu9H,GACAS,EAAA7pI,OACAkqI,EAAAlqI,OACA,IAMA6L,OACAuxF,UACA+rC,YACAkB,aANAx+H,IAAAu9H,IACAkB,GAAAl/G,KAAA/C,EAAAuhH,GAAA,cASA,QAAAG,IAAAQ,EAAAC,GAEA,KAAAD,EAAAvqI,OAAAwqI,EAAAxqI,QACAuqI,IAAAtkI,OAAAskI,EAGA,OAAAjqI,MAAAuG,IAAAoc,MAAA,KAAAunH,EAAA/4H,IAAA,SAAA1T,EAAAL,GACA,MAAA+sI,IAAA1sI,GAAA0sI,GAAAF,EAAA7sI,OAIA,QAAA+sI,IAAA1rI,GACA,WAAAyrB,OAAAzrB,EAAAgZ,MAAA,OAKA,QAAA2yH,IAAA3nB,EAAA4nB,GACA,GAAA7qB,GAAAiD,EAAAI,GAGAlD,GAAAH,EAAA8qB,YACA9qB,EAAA8qB,SAAAC,WAAA,EACA/qB,EAAA8qB,WAGA,IAAArhI,GAAAi/H,GAAAzlB,EAAAx5G,KAAAm5D,WACA,KAAAs9C,EAAAz2G,KAKA02G,EAAAH,EAAAgrB,WAAA,IAAAhrB,EAAAirB,SAAA,CA4BA,IAxBA,GAAAtC,GAAAl/H,EAAAk/H,IACA58H,EAAAtC,EAAAsC,KACAm/H,EAAAzhI,EAAAyhI,WACAC,EAAA1hI,EAAA0hI,aACAC,EAAA3hI,EAAA2hI,iBACAC,EAAA5hI,EAAA4hI,YACAC,EAAA7hI,EAAA6hI,cACAC,EAAA9hI,EAAA8hI,kBACAC,EAAA/hI,EAAA+hI,YACAZ,EAAAnhI,EAAAmhI,MACAa,EAAAhiI,EAAAgiI,WACAC,EAAAjiI,EAAAiiI,eACAC,EAAAliI,EAAAkiI,aACAC,EAAAniI,EAAAmiI,OACAC,EAAApiI,EAAAoiI,YACAC,EAAAriI,EAAAqiI,gBACAtmF,EAAA/7C,EAAA+7C,SAMAyH,EAAA8+E,GACAC,EAAAD,GAAA/c,OACAgd,KAAA7yE,QACA6yE,IAAA7yE,OACAlM,EAAA++E,EAAA/+E,OAGA,IAAAg/E,IAAAh/E,EAAAshE,aAAAtL,EAAAipB,YAEA,KAAAD,GAAAL,GAAA,KAAAA,EAAA,CAIA,GAAAO,GAAAF,GAAAZ,EACAA,EACAH,EACAkB,EAAAH,GAAAV,EACAA,EACAH,EACAiB,EAAAJ,GAAAX,EACAA,EACAH,EAEAmB,EAAAL,EACAN,GAAAH,EACAA,EACAe,EAAAN,GACA,mBAAAL,KACAhB,EACA4B,EAAAP,EACAJ,GAAAJ,EACAA,EACAgB,EAAAR,EACAH,GAAAJ,EACAA,EAEAgB,EAAA/rB,EACA72F,EAAA07B,GACAA,EAAAolF,MACAplF,GAOAmnF,GAAA,IAAAhE,IAAAzH,GACA0L,EAAAC,GAAAN,GAEAljB,EAAArJ,EAAAgrB,SAAArnH,EAAA,WACAgpH,IACA1D,GAAAjpB,EAAAqsB,GACApD,GAAAjpB,EAAAosB,IAEA/iB,EAAA0hB,WACA4B,GACA1D,GAAAjpB,EAAAmsB,GAEAM,KAAAzsB,IAEAwsB,KAAAxsB,GAEAA,EAAAgrB,SAAA,MAGA/nB,GAAAx5G,KAAAqjI,MAEAziB,GAAApH,EAAAx5G,KAAA8gH,OAAAtH,EAAAx5G,KAAA8gH,SAA2D,oBAC3D,GAAApxD,GAAA6mD,EAAAzqB,WACAw3C,EAAA5zE,KAAA6zE,UAAA7zE,EAAA6zE,SAAA/pB,EAAA9jC,IACA4tD,IACAA,EAAA3pB,MAAAH,EAAAG,KACA2pB,EAAA1pB,IAAAynB,UAEAiC,EAAA1pB,IAAAynB,WAEAyB,KAAAvsB,EAAAqJ,KAKAijB,KAAAtsB,GACA2sB,IACA5D,GAAA/oB,EAAAmsB,GACApD,GAAA/oB,EAAAosB,GACAvD,GAAA,WACAE,GAAA/oB,EAAAqsB,GACApD,GAAAjpB,EAAAmsB,GACA9iB,EAAA0hB,WAAA6B,IACAK,GAAAP,GACAzqH,WAAAonG,EAAAqjB,GAEAxD,GAAAlpB,EAAAj0G,EAAAs9G,OAMApG,EAAAx5G,KAAAqjI,OACAjC,OACA0B,KAAAvsB,EAAAqJ,IAGAsjB,GAAAC,GACAvjB,MAIA,QAAA6jB,IAAAjqB,EAAAkqB,GAsEA,QAAAC,KAEA/jB,EAAA0hB,YAIA9nB,EAAAx5G,KAAAqjI,QACA9sB,EAAAzqB,WAAAy3C,WAAAhtB,EAAAzqB,WAAAy3C,cAA6D/pB,EAAA,KAAAA,GAE7DoqB,KAAArtB,GACA2sB,IACA5D,GAAA/oB,EAAAstB,GACAvE,GAAA/oB,EAAAutB,GACA1E,GAAA,WACAE,GAAA/oB,EAAAwtB,GACAvE,GAAAjpB,EAAAstB,GACAjkB,EAAA0hB,WAAA6B,IACAK,GAAAQ,GACAxrH,WAAAonG,EAAAokB,GAEAvE,GAAAlpB,EAAAj0G,EAAAs9G,OAKA6jB,KAAAltB,EAAAqJ,GACAsjB,GAAAC,GACAvjB,KAhGA,GAAArJ,GAAAiD,EAAAI,GAGAlD,GAAAH,EAAAgrB,YACAhrB,EAAAgrB,SAAAD,WAAA,EACA/qB,EAAAgrB,WAGA,IAAAvhI,GAAAi/H,GAAAzlB,EAAAx5G,KAAAm5D,WACA,IAAAs9C,EAAAz2G,GACA,MAAA0jI,IAIA,KAAAhtB,EAAAH,EAAA8qB,WAAA,IAAA9qB,EAAAirB,SAAA,CAIA,GAAAtC,GAAAl/H,EAAAk/H,IACA58H,EAAAtC,EAAAsC,KACAuhI,EAAA7jI,EAAA6jI,WACAE,EAAA/jI,EAAA+jI,aACAD,EAAA9jI,EAAA8jI,iBACAF,EAAA5jI,EAAA4jI,YACAH,EAAAzjI,EAAAyjI,MACAQ,EAAAjkI,EAAAikI,WACAC,EAAAlkI,EAAAkkI,eACAC,EAAAnkI,EAAAmkI,WACApoF,EAAA/7C,EAAA+7C,SAEAmnF,GAAA,IAAAhE,IAAAzH,GACA0L,EAAAC,GAAAK,GAEAO,EAAA9sB,EACA72F,EAAA07B,GACAA,EAAA0nF,MACA1nF,GAOA6jE,EAAArJ,EAAA8qB,SAAAnnH,EAAA,WACAq8F,EAAAzqB,YAAAyqB,EAAAzqB,WAAAy3C,WACAhtB,EAAAzqB,WAAAy3C,SAAA/pB,EAAA9jC,KAAA,MAEAwtD,IACA1D,GAAAjpB,EAAAwtB,GACAvE,GAAAjpB,EAAAutB,IAEAlkB,EAAA0hB,WACA4B,GACA1D,GAAAjpB,EAAAstB,GAEAK,KAAA3tB,KAEAmtB,IACAO,KAAA1tB,IAEAA,EAAA8qB,SAAA,MAGA8C,GACAA,EAAAR,GAEAA,KAoDA,QAAAH,IAAAvsB,GACA,uBAAAA,KAAA/nG,MAAA+nG,GASA,QAAAmsB,IAAAzrB,GACA,GAAAlB,EAAAkB,GACA,QAEA,IAAAysB,GAAAzsB,EAAAuI,GACA,OAAAxJ,GAAA0tB,GAEAhB,GACA1nI,MAAAC,QAAAyoI,GACAA,EAAA,GACAA,IAGAzsB,EAAAE,SAAAF,EAAAlhH,QAAA,EAIA,QAAA4tI,IAAA55G,EAAA+uF,IACA,IAAAA,EAAAx5G,KAAAqjI,MACAlC,GAAA3nB,GAiGA,QAAA8qB,IAAA/tB,EAAA77F,EAAAyhG,GACAooB,GAAAhuB,EAAA77F,EAAAyhG,IAEAsgB,IAAA/E,KACAl/G,WAAA,WACA+rH,GAAAhuB,EAAA77F,EAAAyhG,IACK,GAIL,QAAAooB,IAAAhuB,EAAA77F,EAAAyhG,GACA,GAAAn3G,GAAA0V,EAAA1V,MACAw/H,EAAAjuB,EAAAme,QACA,KAAA8P,GAAA9oI,MAAAC,QAAAqJ,GAAA,CASA,OADAuvH,GAAAkQ,EACAtwI,EAAA,EAAAC,EAAAmiH,EAAAnsG,QAAA3T,OAAwCtC,EAAAC,EAAOD,IAE/C,GADAswI,EAAAluB,EAAAnsG,QAAAjW,GACAqwI,EACAjQ,EAAA9b,EAAAzzG,EAAA0/H,GAAAD,KAAA,EACAA,EAAAlQ,eACAkQ,EAAAlQ,gBAGA,IAAArc,EAAAwsB,GAAAD,GAAAz/H,GAIA,YAHAuxG,EAAAouB,gBAAAxwI,IACAoiH,EAAAouB,cAAAxwI,GAMAqwI,KACAjuB,EAAAouB,eAAA,IAIA,QAAAC,IAAA5/H,EAAAoF,GACA,MAAAA,GAAAkH,MAAA,SAAA3c,GAAqC,OAAAujH,EAAAvjH,EAAAqQ,KAGrC,QAAA0/H,IAAAD,GACA,gBAAAA,GACAA,EAAAlH,OACAkH,EAAAz/H,MAGA,QAAA6/H,IAAAhvI,GACAA,EAAAg2F,OAAA8xC,WAAA,EAGA,QAAAmH,IAAAjvI,GAEAA,EAAAg2F,OAAA8xC,YACA9nI,EAAAg2F,OAAA8xC,WAAA,EACAoH,GAAAlvI,EAAAg2F,OAAA,UAGA,QAAAk5C,IAAAxuB,EAAAj0G,GACA,GAAAzM,GAAA2I,SAAAwmI,YAAA,aACAnvI,GAAAovI,UAAA3iI,GAAA,MACAi0G,EAAA2uB,cAAArvI,GAMA,QAAAsvI,IAAA3rB,GACA,OAAAA,EAAA6Z,mBAAA7Z,EAAAx5G,MAAAw5G,EAAAx5G,KAAAm5D,WAEAqgD,EADA2rB,GAAA3rB,EAAA6Z,kBAAApN,QAyFA,QAAAmf,IAAA5rB,GACA,GAAA6rB,GAAA7rB,KAAAK,gBACA,OAAAwrB,MAAAtsB,KAAA3uG,QAAAo6G,SACA4gB,GAAA/hB,GAAAgiB,EAAA/0E,WAEAkpD,EAIA,QAAA8rB,IAAAtjB,GACA,GAAAhiH,MACAoK,EAAA43G,EAAAvD,QAEA,QAAA/oC,KAAAtrE,GAAA8zG,UACAl+G,EAAA01E,GAAAssC,EAAAtsC,EAIA,IAAAj7D,GAAArQ,EAAAq5G,gBACA,QAAA8hB,KAAA9qH,GACAza,EAAA08G,GAAA6oB,IAAA9qH,EAAA8qH,EAEA,OAAAvlI,GAGA,QAAAwlI,IAAApuI,EAAAquI,GACA,oBAAA5jH,KAAA4jH,EAAA9rB,KACA,MAAAviH,GAAA,cACAqlH,MAAAgpB,EAAA5rB,iBAAAqE,YAKA,QAAAwnB,IAAAlsB,GACA,KAAAA,IAAA9pD,QACA,GAAA8pD,EAAAx5G,KAAAm5D,WACA,SAKA,QAAAwsE,IAAAzoB,EAAA0oB,GACA,MAAAA,GAAAlwD,MAAAwnC,EAAAxnC,KAAAkwD,EAAAjsB,MAAAuD,EAAAvD,IAqQA,QAAAksB,IAAAtxI,GAEAA,EAAAqlH,IAAAksB,SACAvxI,EAAAqlH,IAAAksB,UAGAvxI,EAAAqlH,IAAA2nB,UACAhtI,EAAAqlH,IAAA2nB,WAIA,QAAAwE,IAAAxxI,GACAA,EAAAyL,KAAAgmI,OAAAzxI,EAAAqlH,IAAAlR,wBAGA,QAAAu9B,IAAA1xI,GACA,GAAA2xI,GAAA3xI,EAAAyL,KAAAiC,IACA+jI,EAAAzxI,EAAAyL,KAAAgmI,OACAzyE,EAAA2yE,EAAAjwF,KAAA+vF,EAAA/vF,KACAud,EAAA0yE,EAAAhwF,IAAA8vF,EAAA9vF,GACA,IAAAqd,GAAAC,EAAA,CACAj/D,EAAAyL,KAAAmmI,OAAA,CACA,IAAA3wI,GAAAjB,EAAAqlH,IAAAttE,KACA92C,GAAAoW,UAAApW,EAAA4wI,gBAAA,aAAA7yE,EAAA,MAAAC,EAAA,MACAh+D,EAAA6wI,mBAAA,MAmFA,QAAAC,IACAx3G,EACAy3G,GAEA,GAAAC,GAAAD,EAAAE,GAAAF,GAAAG,EACA,IAAAF,EAAA3kH,KAAAiN,GAAA,CAMA,IAHA,GAEA9O,GAAA4H,EAFAwlD,KACAw0C,EAAA4kB,EAAA5kB,UAAA,EAEA5hG,EAAAwmH,EAAAxtD,KAAAlqD,IAAA,CACAlH,EAAA5H,EAAA4H,MAEAA,EAAAg6F,GACAx0C,EAAArwE,KAAAuO,KAAAC,UAAAujB,EAAAtgB,MAAAozG,EAAAh6F,IAGA,IAAAtkB,GAAAo1H,GAAA14G,EAAA,GAAAqpE,OACAjc,GAAArwE,KAAA,MAAAuG,EAAA,KACAs+G,EAAAh6F,EAAA5H,EAAA,GAAAvpB,OAKA,MAHAmrH,GAAA9yF,EAAAr4B,QACA22E,EAAArwE,KAAAuO,KAAAC,UAAAujB,EAAAtgB,MAAAozG,KAEAx0C,EAAAxoE,KAAA,MAKA,QAAA+hI,IAAApwB,EAAAnsG,GACA,GACAupH,IADAvpH,EAAAivD,KACAkhE,GAAAhkB,EAAA,SAYAod,KACApd,EAAAod,YAAAroH,KAAAC,UAAAooH,GAEA,IAAAiT,GAAAxM,GAAA7jB,EAAA,WACAqwB,KACArwB,EAAAqwB,gBAIA,QAAAC,IAAAtwB,GACA,GAAAv2G,GAAA,EAOA,OANAu2G,GAAAod,cACA3zH,GAAA,eAAAu2G,EAAA,iBAEAA,EAAAqwB,eACA5mI,GAAA,SAAAu2G,EAAA,kBAEAv2G,EAWA,QAAA8mI,IAAAvwB,EAAAnsG,GACA,GACA+zH,IADA/zH,EAAAivD,KACAkhE,GAAAhkB,EAAA,SACA,IAAA4nB,EAAA,CAaA5nB,EAAA4nB,YAAA7yH,KAAAC,UAAA8yH,GAAAF,IAGA,GAAA4I,GAAA3M,GAAA7jB,EAAA,WACAwwB,KACAxwB,EAAAwwB,gBAIA,QAAAC,IAAAzwB,GACA,GAAAv2G,GAAA,EAOA,OANAu2G,GAAA4nB,cACAn+H,GAAA,eAAAu2G,EAAA,iBAEAA,EAAAwwB,eACA/mI,GAAA,UAAAu2G,EAAA,mBAEAv2G,EA2FA,QAAAinI,IAAAjiI,EAAAkiI,GACA,GAAAnkF,GAAAmkF,EAAAC,GAAAC,EACA,OAAApiI,GAAA6a,QAAAkjC,EAAA,SAAA/iC,GAA6C,MAAAqnH,IAAArnH,KAG7C,QAAAsnH,IAAAC,EAAAn9H,GA8HA,QAAA+rC,GAAAlhD,GACA2yB,GAAA3yB,EACAsyI,IAAAn+C,UAAAn0F,GAuEA,QAAAuyI,GAAA/S,EAAA9kC,EAAAswC,GACA,GAAAh+H,GAAAwlI,CASA,IARA,MAAA93C,IAAwBA,EAAA/nE,GACxB,MAAAq4G,IAAsBA,EAAAr4G,GAEtB6sG,IACAgT,EAAAhT,EAAAh3D,eAIAg3D,EACA,IAAAxyH,EAAA0zC,EAAAl/C,OAAA,EAAkCwL,GAAA,GAClC0zC,EAAA1zC,GAAAylI,gBAAAD,EAD4CxlI,SAO5CA,GAAA,CAGA,IAAAA,GAAA,GAEA,OAAA9N,GAAAwhD,EAAAl/C,OAAA,EAAoCtC,GAAA8N,EAAU9N,IAS9CiW,EAAA61H,KACA71H,EAAA61H,IAAAtqF,EAAAxhD,GAAAwlH,IAAAhqB,EAAAswC,EAKAtqF,GAAAl/C,OAAAwL,EACA0lI,EAAA1lI,GAAA0zC,EAAA1zC,EAAA,GAAA03G,QACK,OAAA8tB,EACLr9H,EAAAulF,OACAvlF,EAAAulF,MAAA8kC,MAAA,EAAA9kC,EAAAswC,GAEK,MAAAwH,IACLr9H,EAAAulF,OACAvlF,EAAAulF,MAAA8kC,MAAA,EAAA9kC,EAAAswC,GAEA71H,EAAA61H,KACA71H,EAAA61H,IAAAxL,EAAA9kC,EAAAswC,IAjPA,IANA,GAKApe,GAAA8lB,EALAhyF,KACAiyF,EAAAx9H,EAAAw9H,WACAC,EAAAz9H,EAAA09H,YAAAC,GACAC,EAAA59H,EAAA69H,kBAAAF,GACAngH,EAAA,EAEA2/G,GAAA,CAGA,GAFA1lB,EAAA0lB,EAEAI,GAAAO,GAAAP,GAgFK,CACL,GAAAQ,GAAA,EACAC,EAAAT,EAAAlqE,cACA4qE,EAAAC,GAAAF,KAAAE,GAAAF,GAAA,GAAA9oH,QAAA,kBAAA8oH,EAAA,gBACAG,EAAAhB,EAAA1nH,QAAAwoH,EAAA,SAAAv4D,EAAAhhD,EAAA05G,GAaA,MAZAL,GAAAK,EAAA/xI,OACAyxI,GAAAE,IAAA,aAAAA,IACAt5G,IACAjP,QAAA,2BACAA,QAAA,mCAEA4oH,GAAAL,EAAAt5G,KACAA,IAAAtgB,MAAA,IAEApE,EAAAs+H,OACAt+H,EAAAs+H,MAAA55G,GAEA,IAEAlH,IAAA2/G,EAAA9wI,OAAA8xI,EAAA9xI,OACA8wI,EAAAgB,EACAf,EAAAY,EAAAxgH,EAAAugH,EAAAvgH,OArGA,CACA,GAAA+gH,GAAApB,EAAAhoI,QAAA,IACA,QAAAopI,EAAA,CAEA,GAAAC,GAAA/mH,KAAA0lH,GAAA,CACA,GAAAsB,GAAAtB,EAAAhoI,QAAA,SAEA,IAAAspI,GAAA,GACAz+H,EAAA0+H,mBACA1+H,EAAAw+H,QAAArB,EAAAn+C,UAAA,EAAAy/C,IAEA1yF,EAAA0yF,EAAA,EACA,WAKA,GAAAE,GAAAlnH,KAAA0lH,GAAA,CACA,GAAAyB,GAAAzB,EAAAhoI,QAAA,KAEA,IAAAypI,GAAA,GACA7yF,EAAA6yF,EAAA,EACA,WAKA,GAAAC,GAAA1B,EAAAvnH,MAAAkpH,GACA,IAAAD,EAAA,CACA9yF,EAAA8yF,EAAA,GAAAxyI,OACA,UAIA,GAAA0yI,GAAA5B,EAAAvnH,MAAAwoH,GACA,IAAAW,EAAA,CACA,GAAAC,GAAAxhH,CACAuuB,GAAAgzF,EAAA,GAAA1yI,QACA+wI,EAAA2B,EAAA,GAAAC,EAAAxhH,EACA,UAIA,GAAAyhH,GA8EA,WACA,GAAA15C,GAAA43C,EAAAvnH,MAAAspH,GACA,IAAA35C,EAAA,CACA,GAAA3vE,IACAy0G,QAAA9kC,EAAA,GACAwxB,SACAxxB,MAAA/nE,EAEAuuB,GAAAw5C,EAAA,GAAAl5F,OAEA,KADA,GAAAwpI,GAAAsJ,IACAtJ,EAAAsH,EAAAvnH,MAAAwpH,OAAAD,EAAAhC,EAAAvnH,MAAAypH,MACAtzF,EAAAozF,EAAA,GAAA9yI,QACAupB,EAAAmhG,MAAApkH,KAAAwsI,EAEA,IAAAtJ,EAIA,MAHAjgH,GAAA0pH,WAAAzJ,EAAA,GACA9pF,EAAA8pF,EAAA,GAAAxpI,QACAupB,EAAAigH,IAAAr4G,EACA5H,KA/FA,IAAAqpH,EAAA,EAoGA,SAAArpH,GACA,GAAAy0G,GAAAz0G,EAAAy0G,QACAiV,EAAA1pH,EAAA0pH,UAEA9B,KACA,MAAAD,GAAAgC,GAAAlV,IACA+S,EAAAG,GAEAK,EAAAvT,IAAAkT,IAAAlT,GACA+S,EAAA/S,GAQA,QAJAmV,GAAA/B,EAAApT,MAAAiV,EAEAt1I,EAAA4rB,EAAAmhG,MAAA1qH,OACA0qH,EAAA,GAAAzlH,OAAAtH,GACAD,EAAA,EAAmBA,EAAAC,EAAOD,IAAA,CAC1B,GAAAyjE,GAAA53C,EAAAmhG,MAAAhtH,EAEA01I,MAAA,IAAAjyE,EAAA,GAAAr4D,QAAA,QACA,KAAAq4D,EAAA,UAA6BA,GAAA,GAC7B,KAAAA,EAAA,UAA6BA,GAAA,GAC7B,KAAAA,EAAA,UAA6BA,GAAA,GAE7B,IAAA5yD,GAAA4yD,EAAA,IAAAA,EAAA,IAAAA,EAAA,MACAupD,GAAAhtH,IACAM,KAAAmjE,EAAA,GACA5yD,MAAAiiI,GACAjiI,EACAoF,EAAA88H,uBAKA0C,IACAj0F,EAAA54C,MAAkB48G,IAAA8a,EAAAiT,cAAAjT,EAAAh3D,cAAA0jD,UAClBwmB,EAAAlT,GAGArqH,EAAAulF,OACAvlF,EAAAulF,MAAA8kC,EAAAtT,EAAAyoB,EAAA5pH,EAAA2vE,MAAA3vE,EAAAigH,MA5IAoJ,GACAZ,GAAAd,EAAAJ,IACApxF,EAAA,EAEA,WAIA,GAAArnB,OAAA,GAAAg7G,MAAA,GAAAvkI,MAAA,EACA,IAAAojI,GAAA,GAEA,IADAmB,EAAAvC,EAAA/4H,MAAAm6H,IAEAH,GAAA3mH,KAAAioH,KACAR,GAAAznH,KAAAioH,KACAlB,GAAA/mH,KAAAioH,KACAf,GAAAlnH,KAAAioH,OAGAvkI,EAAAukI,EAAAvqI,QAAA,QACA,IACAopI,GAAApjI,EACAukI,EAAAvC,EAAA/4H,MAAAm6H,EAEA75G,GAAAy4G,EAAAn+C,UAAA,EAAAu/C,GACAxyF,EAAAwyF,GAGAA,EAAA,IACA75G,EAAAy4G,EACAA,EAAA,IAGAn9H,EAAAs+H,OAAA55G,GACA1kB,EAAAs+H,MAAA55G,GA0BA,GAAAy4G,IAAA1lB,EAAA,CACAz3G,EAAAs+H,OAAAt+H,EAAAs+H,MAAAnB,EAIA,QAKAC,IA2JA,QAAAuC,IACApwB,EACAwH,EACAzxD,GAEA,OACAptD,KAAA,EACAq3G,MACAghB,UAAAxZ,EACAuZ,SAAAsP,GAAA7oB,GACAzxD,SACAY,aAOA,QAAAvI,IACAkiF,EACA7/H,GA6BA,QAAA8/H,GAAAtzC,GAEAA,EAAAuzC,MACAC,GAAA,GAEAC,GAAAzzC,EAAA+iB,OACA2wB,GAAA,GAjCAC,GAAAngI,EAAAivD,MAAAkgE,GAEA8Q,GAAAjgI,EAAAogI,UAAAzC,GACA0C,GAAArgI,EAAAkhH,aAAAyc,GACA2C,GAAAtgI,EAAA6lH,iBAAA8X,GAEA4C,GAAAlR,GAAArvH,EAAAvW,QAAA,iBACA+2I,GAAAnR,GAAArvH,EAAAvW,QAAA,oBACAg3I,GAAApR,GAAArvH,EAAAvW,QAAA,qBAEA0yI,GAAAn8H,EAAAm8H,UAEA,IAEAuE,GACAC,EAHAp1F,KACAq1F,GAAA,IAAA5gI,EAAA4gI,mBAGAZ,GAAA,EACAE,GAAA,CA0MA,OAtLAhD,IAAA2C,GACA5wE,KAAAkxE,GACA3C,WAAAx9H,EAAAw9H,WACAE,WAAA19H,EAAA09H,WACAG,iBAAA79H,EAAA69H,iBACAf,qBAAA98H,EAAA88H,qBACA4B,kBAAA1+H,EAAA6gI,SACAt7C,MAAA,SAAAgqB,EAAAwH,EAAAyoB,GAGA,GAAA7vB,GAAAgxB,KAAAhxB,IAAA2wB,GAAA/wB,EAIA8iB,KAAA,QAAA1iB,IACAoH,EAAA+pB,GAAA/pB,GAGA,IAAAvqB,GAAAmzC,GAAApwB,EAAAwH,EAAA4pB,EACAhxB,KACAnjB,EAAAmjB,MAGAoxB,GAAAv0C,KAAAmkB,OACAnkB,EAAAw0C,WAAA,EASA,QAAAj3I,GAAA,EAAqBA,EAAAy2I,GAAAn0I,OAA0BtC,IAC/CyiG,EAAAg0C,GAAAz2I,GAAAyiG,EAAAxsF,IAAAwsF,CA4DA,IAzDAwzC,IACAiB,GAAAz0C,GACAA,EAAAuzC,MACAC,GAAA,IAGAC,GAAAzzC,EAAA+iB,OACA2wB,GAAA,GAEAF,EACAkB,GAAA10C,GACOA,EAAA20C,YAEPC,GAAA50C,GACA60C,GAAA70C,GACA80C,GAAA90C,GAEA+0C,GAAA/0C,EAAAxsF,IAqBA0gI,EAGOn1F,EAAAl/C,QAEPq0I,EAAAc,KAAAh1C,EAAAi1C,QAAAj1C,EAAAk1C,OAEAC,GAAAjB,GACAxnI,IAAAszF,EAAAi1C,OACAG,MAAAp1C,IARAk0C,EAAAl0C,EAkBAm0C,IAAAn0C,EAAAw0C,UACA,GAAAx0C,EAAAi1C,QAAAj1C,EAAAk1C,KACAG,GAAAr1C,EAAAm0C,OACS,IAAAn0C,EAAAs1C,UAAA,CACTnB,EAAAoB,OAAA,CACA,IAAA13I,GAAAmiG,EAAAw1C,YAAA,aAAuDrB,EAAAllB,cAAAklB,EAAAllB,iBAA6DpxH,GAAAmiG,MAEpHm0C,GAAAz6E,SAAAvzD,KAAA65F,GACAA,EAAAlnC,OAAAq7E,CAGAnB,GAIAM,EAAAtzC,IAHAm0C,EAAAn0C,EACAjhD,EAAA54C,KAAA65F,GAKA,QAAAy1C,GAAA,EAAuBA,EAAAxB,GAAAp0I,OAA6B41I,IACpDxB,GAAAwB,GAAAz1C,EAAAxsF,IAIA61H,IAAA,WAEA,GAAArpC,GAAAjhD,IAAAl/C,OAAA,GACA61I,EAAA11C,EAAAtmC,SAAAsmC,EAAAtmC,SAAA75D,OAAA,EACA61I,IAAA,IAAAA,EAAAhqI,MAAA,MAAAgqI,EAAAx9G,OAAAw7G,GACA1zC,EAAAtmC,SAAArkD,MAGA0pC,EAAAl/C,QAAA,EACAs0I,EAAAp1F,IAAAl/C,OAAA,GACAyzI,EAAAtzC,IAGA8xC,MAAA,SAAA55G,GACA,GAAAi8G,KAgBAtO,IACA,aAAAsO,EAAApxB,KACAoxB,EAAArQ,SAAA8K,cAAA12G,GAFA,CAMA,GAAAwhC,GAAAy6E,EAAAz6E,QAKA,IAJAxhC,EAAAw7G,GAAAx7G,EAAAu6D,OACAkjD,GAAAxB,GAAAj8G,EAAA09G,GAAA19G,GAEAk8G,GAAA16E,EAAA75D,OAAA,OACA,CACA,GAAAqiI,IACAsR,GAAA,MAAAt7G,IAAAgqG,EAAAwN,GAAAx3G,EAAAy3G,KACAj2E,EAAAvzD,MACAuF,KAAA,EACAw2H,aACAhqG,SAES,MAAAA,GAAAwhC,EAAA75D,QAAA,MAAA65D,IAAA75D,OAAA,GAAAq4B,MACTwhC,EAAAvzD,MACAuF,KAAA,EACAwsB,YAKA85G,QAAA,SAAA95G,GACAi8G,EAAAz6E,SAAAvzD,MACAuF,KAAA,EACAwsB,OACAmrF,WAAA,OAIA6wB,EAGA,QAAAO,IAAA90B,GACA,MAAAgkB,GAAAhkB,EAAA,WACAA,EAAA4zB,KAAA,GAIA,QAAAmB,IAAA/0B,GACA,GAAAniH,GAAAmiH,EAAAokB,UAAAlkI,MACA,IAAArC,EAEA,OADA+sH,GAAA5K,EAAA4K,MAAA,GAAAzlH,OAAAtH,GACAD,EAAA,EAAmBA,EAAAC,EAAOD,IAC1BgtH,EAAAhtH,IACAM,KAAA8hH,EAAAokB,UAAAxmI,GAAAM,KACAuQ,MAAAsG,KAAAC,UAAAgrG,EAAAokB,UAAAxmI,GAAA6Q,YAGGuxG,GAAA4zB,MAEH5zB,EAAA41B,OAAA,GAIA,QAAAR,IAAA/0C,EAAAxsF,GACAqiI,GAAA71C,GAIAA,EAAAu1C,OAAAv1C,EAAAlhB,MAAAkhB,EAAA+jC,UAAAlkI,OAEAi2I,GAAA91C,GACA+1C,GAAA/1C,GACAg2C,GAAAh2C,EACA,QAAAziG,GAAA,EAAiBA,EAAAw2I,GAAAl0I,OAAuBtC,IACxCyiG,EAAA+zC,GAAAx2I,GAAAyiG,EAAAxsF,IAAAwsF,CAEAi2C,IAAAj2C,GAGA,QAAA61C,IAAAl2B,GACA,GAAAjzG,GAAA82H,GAAA7jB,EAAA,MACAjzG,KAIAizG,EAAA7gC,IAAApyE,GAIA,QAAAopI,IAAAn2B,GACA,GAAAl5G,GAAA+8H,GAAA7jB,EAAA,MACAl5G,KACAk5G,EAAAl5G,MACAk5G,EAAAgf,SAAAuX,GAAAv2B,IAIA,QAAAi1B,IAAAj1B,GACA,GAAAjzG,EACA,IAAAA,EAAAi3H,GAAAhkB,EAAA,UACA,GAAAw2B,GAAAzpI,EAAA0c,MAAAgtH,GACA,KAAAD,EAIA,MAEAx2B,GAAA02B,IAAAF,EAAA,GAAA1jD,MACA,IAAA6jD,GAAAH,EAAA,GAAA1jD,OACA8jD,EAAAD,EAAAltH,MAAAotH,GACAD,IACA52B,EAAA22B,MAAAC,EAAA,GAAA9jD,OACAktB,EAAA82B,UAAAF,EAAA,GAAA9jD,OACA8jD,EAAA,KACA52B,EAAA+2B,UAAAH,EAAA,GAAA9jD,SAGAktB,EAAA22B,SAKA,QAAAzB,IAAAl1B,GACA,GAAAjzG,GAAAi3H,GAAAhkB,EAAA,OACA,IAAAjzG,EACAizG,EAAAq1B,GAAAtoI,EACAyoI,GAAAx1B,GACAjzG,MACA0oI,MAAAz1B,QAEG,CACH,MAAAgkB,GAAAhkB,EAAA,YACAA,EAAAu1B,MAAA,EAEA,IAAAD,GAAAtR,GAAAhkB,EAAA,YACAs1B,KACAt1B,EAAAs1B,WAKA,QAAAI,IAAA11B,EAAA7mD,GACA,GAAA9pD,GAAA2nI,GAAA79E,EAAAY,SACA1qD,MAAAgmI,IACAG,GAAAnmI,GACAtC,IAAAizG,EAAAs1B,OACAG,MAAAz1B,IAUA,QAAAg3B,IAAAj9E,GAEA,IADA,GAAAn8D,GAAAm8D,EAAA75D,OACAtC,KAAA,CACA,OAAAm8D,EAAAn8D,GAAAmO,KACA,MAAAguD,GAAAn8D,EAQAm8D,GAAArkD,OAKA,QAAA8/H,IAAAx1B,EAAAi3B,GACAj3B,EAAAk3B,eACAl3B,EAAAk3B,iBAEAl3B,EAAAk3B,aAAA1wI,KAAAywI,GAGA,QAAA9B,IAAAn1B,GAEA,MADAgkB,GAAAhkB,EAAA,YAEAA,EAAAr8F,MAAA,GAIA,QAAAyyH,IAAAp2B,GACA,YAAAA,EAAAoD,IACApD,EAAAm3B,SAAAtT,GAAA7jB,EAAA,YAQG,CACH,GAAA21B,EACA,cAAA31B,EAAAoD,KACAuyB,EAAA3R,GAAAhkB,EAAA,SAWAA,EAAA21B,aAAA3R,GAAAhkB,EAAA,gBACK21B,EAAA3R,GAAAhkB,EAAA,iBACLA,EAAA21B,YAEA,IAAAE,GAAAhS,GAAA7jB,EAAA,OACA61B,KACA71B,EAAA61B,WAAA,OAAAA,EAAA,YAAAA,EAGA71B,EAAA21B,WACAvS,GAAApjB,EAAA,OAAA61B,KAMA,QAAAQ,IAAAr2B,GACA,GAAA77F,IACAA,EAAA0/G,GAAA7jB,EAAA,SACAA,EAAA4M,UAAAzoG,GAEA,MAAA6/G,GAAAhkB,EAAA,qBACAA,EAAA6Y,gBAAA,GAIA,QAAAyd,IAAAt2B,GACA,GACApiH,GAAAC,EAAAK,EAAA2iI,EAAApyH,EAAAiyH,EAAA0W,EADAr2B,EAAAf,EAAAokB,SAEA,KAAAxmI,EAAA,EAAAC,EAAAkjH,EAAA7gH,OAA8BtC,EAAAC,EAAOD,IAGrC,GAFAM,EAAA2iI,EAAA9f,EAAAnjH,GAAAM,KACAuQ,EAAAsyG,EAAAnjH,GAAA6Q,MACA4oI,GAAA/rH,KAAAptB,GAQA,GANA8hH,EAAAs3B,aAAA,EAEA5W,EAAA6W,GAAAr5I,GACAwiI,IACAxiI,IAAAorB,QAAAkuH,GAAA,KAEAC,GAAAnsH,KAAAptB,GACAA,IAAAorB,QAAAmuH,GAAA,IACAhpI,EAAA0zH,GAAA1zH,GACA2oI,GAAA,EACA1W,IACAA,EAAA9Y,OACAwvB,GAAA,EAEA,eADAl5I,EAAAioH,GAAAjoH,MACuCA,EAAA,cAEvCwiI,EAAAgX,QACAx5I,EAAAioH,GAAAjoH,IAEAwiI,EAAAnU,MACAgX,GACAvjB,EACA,UAAAmG,GAAAjoH,GACAsmI,GAAA/1H,EAAA,YAIA2oI,IACAp3B,EAAA4M,WAAAsnB,GAAAl0B,EAAAoD,IAAApD,EAAAmkB,SAAAp4H,KAAA7N,GAEAilI,GAAAnjB,EAAA9hH,EAAAuQ,GAEA20H,GAAApjB,EAAA9hH,EAAAuQ,OAEO,IAAAkpI,GAAArsH,KAAAptB,GACPA,IAAAorB,QAAAquH,GAAA,IACApU,GAAAvjB,EAAA9hH,EAAAuQ,EAAAiyH,GAAA,EAAAsT,QACO,CACP91I,IAAAorB,QAAA+tH,GAAA,GAEA,IAAAO,GAAA15I,EAAAurB,MAAAouH,IACAvU,EAAAsU,KAAA,EACAtU,KACAplI,IAAA+Z,MAAA,IAAAqrH,EAAApjI,OAAA,KAEAmjI,GAAArjB,EAAA9hH,EAAA2iI,EAAApyH,EAAA60H,EAAA5C,OAKK,CAaL0C,GAAApjB,EAAA9hH,EAAA6W,KAAAC,UAAAvG,KAKA,QAAA8nI,IAAAv2B,GAEA,IADA,GAAA7mD,GAAA6mD,EACA7mD,GAAA,CACA,OAAA3sC,KAAA2sC,EAAAu9E,IACA,QAEAv9E,YAEA,SAGA,QAAAo+E,IAAAr5I,GACA,GAAAurB,GAAAvrB,EAAAurB,MAAA+tH,GACA,IAAA/tH,EAAA,CACA,GAAA83F,KAEA,OADA93F,GAAAxO,QAAA,SAAAld,GAAgCwjH,EAAAxjH,EAAAka,MAAA,SAChCspG,GAIA,QAAAkyB,IAAA7oB,GAEA,OADAj5G,MACA/T,EAAA,EAAAC,EAAA+sH,EAAA1qH,OAAmCtC,EAAAC,EAAOD,IAO1C+T,EAAAi5G,EAAAhtH,GAAAM,MAAA0sH,EAAAhtH,GAAA6Q,KAEA,OAAAkD,GAIA,QAAAqkI,IAAAh2B,GACA,iBAAAA,EAAAoD,KAAA,UAAApD,EAAAoD,IAGA,QAAAwxB,IAAA50B,GACA,MACA,UAAAA,EAAAoD,KACA,WAAApD,EAAAoD,OACApD,EAAAmkB,SAAAp4H,MACA,oBAAAi0G,EAAAmkB,SAAAp4H,MASA,QAAA4oI,IAAA/pB,GAEA,OADAlJ,MACA9jH,EAAA,EAAiBA,EAAAgtH,EAAA1qH,OAAkBtC,IAAA,CACnC,GAAAo1I,GAAApoB,EAAAhtH,EACAk6I,IAAAxsH,KAAA0nH,EAAA90I,QACA80I,EAAA90I,KAAA80I,EAAA90I,KAAAorB,QAAAyuH,GAAA,IACAr2B,EAAAl7G,KAAAwsI,IAGA,MAAAtxB,GA+BA,QAAAs2B,IAAAh4B,EAAAnsG,GACA,aAAAmsG,EAAAoD,IAAA,CACA,GAAAzxG,GAAAquG,EAAAmkB,QACA,IAAAxyH,EAAA,aAAAA,EAAA,gBAAAA,EAAA,WACA,GAAAsmI,GAAApU,GAAA7jB,EAAA,QACAk4B,EAAAlU,GAAAhkB,EAAA,WACAm4B,EAAAD,EAAA,MAAAA,EAAA,OAEAE,EAAAC,GAAAr4B,EAEAi1B,IAAAmD,GACAE,GAAAF,EAAA,mBACAhD,GAAAgD,EAAAvkI,GACAukI,EAAApD,WAAA,EACAoD,EAAA/C,GAAA,IAAA4C,EAAA,iBAAAE,EACA3C,GAAA4C,GACArrI,IAAAqrI,EAAA/C,GACAI,MAAA2C,GAGA,IAAAG,GAAAF,GAAAr4B,EACAgkB,IAAAuU,EAAA,YACAD,GAAAC,EAAA,gBACAnD,GAAAmD,EAAA1kI,GACA2hI,GAAA4C,GACArrI,IAAA,IAAAkrI,EAAA,cAAAE,EACA1C,MAAA8C,GAGA,IAAAC,GAAAH,GAAAr4B,EAQA,OAPAgkB,IAAAwU,EAAA,YACAF,GAAAE,EAAA,QAAAP,GACA7C,GAAAoD,EAAA3kI,GACA2hI,GAAA4C,GACArrI,IAAAmrI,EACAzC,MAAA+C,IAEAJ,IAKA,QAAAC,IAAAr4B,GACA,MAAAwzB,IAAAxzB,EAAAoD,IAAApD,EAAAokB,UAAAnsH,QAAA+nG,EAAA7mD,QAGA,QAAAm/E,IAAAt4B,EAAA9hH,EAAAuQ,GACAuxG,EAAAmkB,SAAAjmI,GAAAuQ,EACAuxG,EAAAokB,UAAA59H,MAAqBtI,OAAAuQ,UAerB,QAAA8pB,IAAAynF,EAAA4f,GACAA,EAAAnxH,OACA00H,GAAAnjB,EAAA,oBAAA4f,EAAA,WAMA,QAAAoR,IAAAhxB,EAAA4f,GACAA,EAAAnxH,OACA00H,GAAAnjB,EAAA,kBAAA4f,EAAA,WA2CA,QAAA6Y,IAAAlE,EAAA1gI,GACA0gI,IACAmE,GAAAC,GAAA9kI,EAAA+kI,YAAA,IACAC,GAAAhlI,EAAA8lH,eAAA6X,GAEAsH,GAAAvE,GAEAwE,GAAAxE,GAAA,IAGA,QAAAyE,IAAAxhI,GACA,MAAAopG,GACA,2DACAppG,EAAA,IAAAA,EAAA,KAIA,QAAAshI,IAAA3tB,GAEA,GADAA,EAAA8tB,OAAAx1B,GAAA0H,GACA,IAAAA,EAAAp/G,KAAA,CAIA,IACA8sI,GAAA1tB,EAAA/H,MACA,SAAA+H,EAAA/H,KACA,MAAA+H,EAAAgZ,SAAA,mBAEA,MAEA,QAAAvmI,GAAA,EAAAC,EAAAstH,EAAApxD,SAAA75D,OAA6CtC,EAAAC,EAAOD,IAAA,CACpD,GAAA+oH,GAAAwE,EAAApxD,SAAAn8D,EACAk7I,IAAAnyB,GACAA,EAAAsyB,SACA9tB,EAAA8tB,QAAA,GAGA,GAAA9tB,EAAA+rB,aACA,OAAApB,GAAA,EAAAoD,EAAA/tB,EAAA+rB,aAAAh3I,OAAuD41I,EAAAoD,EAAWpD,IAAA,CAClE,GAAAL,GAAAtqB,EAAA+rB,aAAApB,GAAAL,KACAqD,IAAArD,GACAA,EAAAwD,SACA9tB,EAAA8tB,QAAA,KAOA,QAAAF,IAAA5tB,EAAAgK,GACA,OAAAhK,EAAAp/G,KAAA,CAOA,IANAo/G,EAAA8tB,QAAA9tB,EAAAxnG,QACAwnG,EAAAguB,YAAAhkB,GAKAhK,EAAA8tB,QAAA9tB,EAAApxD,SAAA75D,SACA,IAAAirH,EAAApxD,SAAA75D,QACA,IAAAirH,EAAApxD,SAAA,GAAAhuD,MAGA,YADAo/G,EAAAiuB,YAAA,EAKA,IAFAjuB,EAAAiuB,YAAA,EAEAjuB,EAAApxD,SACA,OAAAn8D,GAAA,EAAAC,EAAAstH,EAAApxD,SAAA75D,OAA+CtC,EAAAC,EAAOD,IACtDm7I,GAAA5tB,EAAApxD,SAAAn8D,GAAAu3H,KAAAhK,EAAAurB,IAGA,IAAAvrB,EAAA+rB,aACA,OAAApB,GAAA,EAAAoD,EAAA/tB,EAAA+rB,aAAAh3I,OAAuD41I,EAAAoD,EAAWpD,IAClEiD,GAAA5tB,EAAA+rB,aAAApB,GAAAL,MAAAtgB,IAMA,QAAA1R,IAAA0H,GACA,WAAAA,EAAAp/G,OAGA,IAAAo/G,EAAAp/G,SAGAo/G,EAAAyoB,MACAzoB,EAAAmsB,aACAnsB,EAAAkqB,IAAAlqB,EAAAurB,KACA2C,GAAAluB,EAAA/H,OACAy1B,GAAA1tB,EAAA/H,MACAk2B,GAAAnuB,KACA9sH,OAAAmZ,KAAA2zG,GAAApwG,MAAA29H,OAIA,QAAAY,IAAAnuB,GACA,KAAAA,EAAAhyD,QAAA,CAEA,GADAgyD,IAAAhyD,OACA,aAAAgyD,EAAA/H,IACA,QAEA,IAAA+H,EAAAurB,IACA,SAGA,SAuCA,QAAA6C,IACA9V,EACA/xD,EACA5O,GAEA,GAAA4+C,GAAAhwC,EAAA,aAAkC,MAClC,QAAAxzE,KAAAulI,GAAA,CAYA/hB,GAAA,IAAAxjH,EAAA,KAAAs7I,GAAAt7I,EAXAulI,EAAAvlI,IAWA,IAEA,MAAAwjH,GAAAzpG,MAAA,UAGA,QAAAuhI,IACAt7I,EACAg1H,GAEA,IAAAA,EACA,oBAGA,IAAA/tH,MAAAC,QAAA8tH,GACA,UAAAA,EAAAvhH,IAAA,SAAAuhH,GAAmD,MAAAsmB,IAAAt7I,EAAAg1H,KAAoC7kH,KAAA,QAGvF,IAAAorI,GAAAC,GAAApuH,KAAA4nG,EAAAzkH,OACAkrI,EAAAC,GAAAtuH,KAAA4nG,EAAAzkH,MAEA,IAAAykH,EAAAwN,UAIG,CACH,GAAAzgI,GAAA,GACA45I,EAAA,GACAriI,IACA,QAAA2nE,KAAA+zC,GAAAwN,UACA,GAAAoZ,GAAA36D,GACA06D,GAAAC,GAAA36D,GAEAu1C,GAAAv1C,IACA3nE,EAAAhR,KAAA24E,OAEO,cAAAA,EAAA,CACP,GAAAuhD,GAAAxN,EAAA,SACA2mB,IAAAE,IACA,6BACA/+H,OAAA,SAAAg/H,GAA4C,OAAAtZ,EAAAsZ,KAC5CroI,IAAA,SAAAqoI,GAAyC,gBAAAA,EAAA,QACzC3rI,KAAA,WAGAmJ,GAAAhR,KAAA24E,EAGA3nE,GAAAtX,SACAD,GAAAg6I,GAAAziI,IAGAqiI,IACA55I,GAAA45I,EAOA,2BAA8B55I,GAL9Bw5I,EACAvmB,EAAAzkH,MAAA,WACAkrI,EACA,IAAAzmB,EAAA,kBACAA,EAAAzkH,OAC8B,IAtC9B,MAAAgrI,IAAAE,EACAzmB,EAAAzkH,MACA,oBAA2BykH,EAAA,UAwC3B,QAAA+mB,IAAAziI,GACA,mCAAAA,EAAA7F,IAAAuoI,IAAA7rI,KAAA,sBAGA,QAAA6rI,IAAA/6D,GACA,GAAAg7D,GAAAh9G,SAAAgiD,EAAA,GACA,IAAAg7D,EACA,0BAAAA,CAEA,IAAAl6I,GAAAy0H,GAAAv1C,EACA,OACA,qBACApqE,KAAAC,UAAAmqE,GAAA,IACApqE,KAAAC,UAAA/U,GAAA,eAOA,QAAAwjB,IAAAu8F,EAAA4f,GAIA5f,EAAAo6B,cAAA,SAAAn6I,GAAsC,YAAAA,EAAA,IAAA2/H,EAAA,WAKtC,QAAAya,IAAAr6B,EAAA4f,GACA5f,EAAAs6B,SAAA,SAAAr6I,GACA,YAAAA,EAAA,KAAA+/G,EAAA,SAAA4f,EAAA,WAAAA,EAAAc,WAAAd,EAAAc,UAAA9Y,KAAA,iBAAAgY,EAAAc,WAAAd,EAAAc,UAAAnU,KAAA,iBA4BA,QAAAguB,IACAC,EACA3mI,GAEA,GAAAi8C,GAAA,GAAA2qF,IAAA5mI,EAEA,QACAwxC,OAAA,sBAFAm1F,EAAAE,GAAAF,EAAA1qF,GAAA,aAEyB,IACzBulE,gBAAAvlE,EAAAulE,iBAIA,QAAAqlB,IAAA16B,EAAAlwD,GACA,GAAAkwD,EAAAo5B,aAAAp5B,EAAA26B,gBACA,MAAAC,IAAA56B,EAAAlwD,EACG,IAAAkwD,EAAAr8F,OAAAq8F,EAAA66B,cACH,MAAAC,IAAA96B,EAAAlwD,EACG,IAAAkwD,EAAA02B,MAAA12B,EAAA+6B,aACH,MAAAC,IAAAh7B,EAAAlwD,EACG,IAAAkwD,EAAAq1B,KAAAr1B,EAAAi7B,YACH,MAAAC,IAAAl7B,EAAAlwD,EACG,iBAAAkwD,EAAAoD,KAAApD,EAAA61B,WAEA,aAAA71B,EAAAoD,IACH,MAAA+3B,IAAAn7B,EAAAlwD,EAGA,IAAA7vD,EACA,IAAA+/G,EAAA4M,UACA3sH,EAAAm7I,GAAAp7B,EAAA4M,UAAA5M,EAAAlwD,OACK,CACL,GAAArmD,GAAAu2G,EAAA41B,UAAAppH,GAAA6uH,GAAAr7B,EAAAlwD,GAEAiK,EAAAimD,EAAA6Y,eAAA,KAAAyiB,GAAAt7B,EAAAlwD,GAAA,EACA7vD,GAAA,OAAA+/G,EAAA,SAAAv2G,EAAA,IAAAA,EAAA,KAAAswD,EAAA,IAAAA,EAAA,QAGA,OAAAn8D,GAAA,EAAmBA,EAAAkyD,EAAAskF,WAAAl0I,OAA6BtC,IAChDqC,EAAA6vD,EAAAskF,WAAAx2I,GAAAoiH,EAAA//G,EAEA,OAAAA,GAlBA,MAAAq7I,IAAAt7B,EAAAlwD,IAAA,SAuBA,QAAA8qF,IAAA56B,EAAAlwD,GAGA,MAFAkwD,GAAA26B,iBAAA,EACA7qF,EAAAulE,gBAAA7uH,KAAA,qBAA0Ck0I,GAAA16B,EAAAlwD,GAAA,KAC1C,OAAAA,EAAAulE,gBAAAn1H,OAAA,IAAA8/G,EAAAm5B,YAAA,gBAIA,QAAA2B,IAAA96B,EAAAlwD,GAEA,GADAkwD,EAAA66B,eAAA,EACA76B,EAAAq1B,KAAAr1B,EAAAi7B,YACA,MAAAC,IAAAl7B,EAAAlwD,EACG,IAAAkwD,EAAAm5B,YAAA,CAGH,IAFA,GAAAh6D,GAAA,GACAhmB,EAAA6mD,EAAA7mD,OACAA,GAAA,CACA,GAAAA,EAAAu9E,IAAA,CACAv3D,EAAAhmB,EAAAgmB,GACA,OAEAhmB,WAEA,MAAAgmB,GAMA,MAAAu7D,GAAA16B,EAAAlwD,GAAA,IAAAA,EAAAyrF,SAAA,IAAAp8D,EAAA,IAFAu7D,GAAA16B,EAAAlwD,GAIA,MAAA8qF,IAAA56B,EAAAlwD,GAIA,QAAAorF,IACAl7B,EACAlwD,EACA0rF,EACAC,GAGA,MADAz7B,GAAAi7B,aAAA,EACAS,GAAA17B,EAAAk3B,aAAAj/H,QAAA63C,EAAA0rF,EAAAC,GAGA,QAAAC,IACAC,EACA7rF,EACA0rF,EACAC,GAcA,QAAAG,GAAA57B,GACA,MAAAw7B,GACAA,EAAAx7B,EAAAlwD,GACAkwD,EAAAr8F,KACAm3H,GAAA96B,EAAAlwD,GACA4qF,GAAA16B,EAAAlwD,GAjBA,IAAA6rF,EAAAz7I,OACA,MAAAu7I,IAAA,MAGA,IAAAxE,GAAA0E,EAAApsD,OACA,OAAA0nD,GAAAlqI,IACA,IAAAkqI,EAAA,SAAA2E,EAAA3E,EAAAxB,OAAA,IAAAiG,GAAAC,EAAA7rF,EAAA0rF,EAAAC,GAEA,GAAAG,EAAA3E,EAAAxB,OAaA,QAAAuF,IACAh7B,EACAlwD,EACA0rF,EACAK,GAEA,GAAA9uI,GAAAizG,EAAA02B,IACAC,EAAA32B,EAAA22B,MACAG,EAAA92B,EAAA82B,UAAA,IAAA92B,EAAA,aACA+2B,EAAA/2B,EAAA+2B,UAAA,IAAA/2B,EAAA,YAiBA,OADAA,GAAA+6B,cAAA,GACAc,GAAA,WAAA9uI,EAAA,cACA4pI,EAAAG,EAAAC,EAAA,aACAyE,GAAAd,IAAA16B,EAAAlwD,GACA,KAGA,QAAAurF,IAAAr7B,EAAAlwD,GACA,GAAArmD,GAAA,IAIA+8G,EAAAs1B,GAAA97B,EAAAlwD,EACA02D,KAAa/8G,GAAA+8G,EAAA,KAGbxG,EAAA7gC,MACA11E,GAAA,OAAAu2G,EAAA,SAGAA,EAAAl5G,MACA2C,GAAA,OAAAu2G,EAAA,SAEAA,EAAAgf,WACAv1H,GAAA,kBAGAu2G,EAAA4zB,MACAnqI,GAAA,aAGAu2G,EAAA4M,YACAnjH,GAAA,QAAAu2G,EAAA,SAGA,QAAApiH,GAAA,EAAiBA,EAAAkyD,EAAAisF,WAAA77I,OAA6BtC,IAC9C6L,GAAAqmD,EAAAisF,WAAAn+I,GAAAoiH,EA+BA,IA5BAA,EAAA4K,QACAnhH,GAAA,UAAoBuyI,GAAAh8B,EAAA4K,OAAA,MAGpB5K,EAAAkG,QACAz8G,GAAA,aAAuBuyI,GAAAh8B,EAAAkG,OAAA,MAGvBlG,EAAAyjB,SACAh6H,GAAA8vI,GAAAv5B,EAAAyjB,QAAA,EAAA3zE,EAAAgT,MAAA,KAEAk9C,EAAA2jB,eACAl6H,GAAA8vI,GAAAv5B,EAAA2jB,cAAA,EAAA7zE,EAAAgT,MAAA,KAIAk9C,EAAA61B,aAAA71B,EAAA21B,YACAlsI,GAAA,QAAAu2G,EAAA,gBAGAA,EAAAsP,cACA7lH,GAAAwyI,GAAAj8B,EAAAsP,YAAAx/D,GAAA,KAGAkwD,EAAAgY,QACAvuH,GAAA,gBAAoBu2G,EAAAgY,MAAA,mBAAAhY,EAAAgY,MAAA,wBAAAhY,EAAAgY,MAAA,iBAGpBhY,EAAA6Y,eAAA,CACA,GAAAA,GAAAqjB,GAAAl8B,EAAAlwD,EACA+oE,KACApvH,GAAAovH,EAAA,KAYA,MATApvH,KAAA6f,QAAA,aAEA02F,EAAAs6B,WACA7wI,EAAAu2G,EAAAs6B,SAAA7wI,IAGAu2G,EAAAo6B,gBACA3wI,EAAAu2G,EAAAo6B,cAAA3wI,IAEAA,EAGA,QAAAqyI,IAAA97B,EAAAlwD,GACA,GAAA02D,GAAAxG,EAAAyG,UACA,IAAAD,EAAA,CACA,GAEA5oH,GAAAC,EAAA+hI,EAAAuc,EAFAz6B,EAAA,eACA06B,GAAA,CAEA,KAAAx+I,EAAA,EAAAC,EAAA2oH,EAAAtmH,OAA8BtC,EAAAC,EAAOD,IAAA,CACrCgiI,EAAApZ,EAAA5oH,GACAu+I,GAAA,CACA,IAAAE,GAAAvsF,EAAA22D,WAAAmZ,EAAA1hI,KACAm+I,KAGAF,IAAAE,EAAAr8B,EAAA4f,EAAA9vE,EAAAgT,OAEAq5E,IACAC,GAAA,EACA16B,GAAA,UAAeke,EAAA,mBAAAA,EAAA,aAAAA,EAAAnxH,MAAA,WAAAmxH,EAAA,sBAAA7qH,KAAAC,UAAA4qH,EAAAnxH,OAAA,KAAAmxH,EAAA0D,IAAA,SAAA1D,EAAA,aAAAA,EAAAc,UAAA,cAAA3rH,KAAAC,UAAA4qH,EAAAc,WAAA,UAGf,MAAA0b,GACA16B,EAAAzpG,MAAA,cADA,IAKA,QAAAikI,IAAAl8B,EAAAlwD,GACA,GAAA0qF,GAAAx6B,EAAAjmD,SAAA,EAMA,QAAAygF,EAAAzuI,KAAA,CACA,GAAAuwI,GAAA/B,GAAAC,EAAA1qF,EAAAj8C,QACA,4CAA+CyoI,EAAA,6BAAiCA,EAAAjnB,gBAAA1jH,IAAA,SAAA1R,GAA4E,oBAAqBA,EAAA,MAAkBoO,KAAA,WAInM,QAAA4tI,IACAvuB,EACA59D,GAEA,yBAAAzxD,OAAAmZ,KAAAk2G,GAAA/7G,IAAA,SAAAwtE,GACA,MAAAo9D,IAAAp9D,EAAAuuC,EAAAvuC,GAAArvB,KACKzhD,KAAA,UAGL,QAAAkuI,IACAp9D,EACA6gC,EACAlwD,GAEA,MAAAkwD,GAAA02B,MAAA12B,EAAA+6B,aACAyB,GAAAr9D,EAAA6gC,EAAAlwD,GAQA,QAAYqvB,EAAA,gBANZlgE,OAAA+gG,EAAA21B,WAAA,aACA,aAAA31B,EAAAoD,IACApD,EAAAq1B,GACAr1B,EAAA,QAAAs7B,GAAAt7B,EAAAlwD,IAAA,0BACAwrF,GAAAt7B,EAAAlwD,IAAA,YACA4qF,GAAA16B,EAAAlwD,IAAA,KAIA,QAAA0sF,IACAr9D,EACA6gC,EACAlwD,GAEA,GAAA/iD,GAAAizG,EAAA02B,IACAC,EAAA32B,EAAA22B,MACAG,EAAA92B,EAAA82B,UAAA,IAAA92B,EAAA,aACA+2B,EAAA/2B,EAAA+2B,UAAA,IAAA/2B,EAAA,YAEA,OADAA,GAAA+6B,cAAA,EACA,OAAAhuI,EAAA,cACA4pI,EAAAG,EAAAC,EAAA,YACAwF,GAAAp9D,EAAA6gC,EAAAlwD,GACA,KAGA,QAAAwrF,IACAt7B,EACAlwD,EACA2sF,EACAC,EACAC,GAEA,GAAA5iF,GAAAimD,EAAAjmD,QACA,IAAAA,EAAA75D,OAAA,CACA,GAAA08I,GAAA7iF,EAAA,EAEA,QAAAA,EAAA75D,QACA08I,EAAAlG,KACA,aAAAkG,EAAAx5B,KACA,SAAAw5B,EAAAx5B,IAEA,OAAAs5B,GAAAhC,IAAAkC,EAAA9sF,EAEA,IAAAspE,GAAAqjB,EACAI,GAAA9iF,EAAAjK,EAAAgtF,gBACA,EACAT,EAAAM,GAAAI,EACA,WAAAhjF,EAAApoD,IAAA,SAAA3T,GAA8C,MAAAq+I,GAAAr+I,EAAA8xD,KAAwBzhD,KAAA,UAAA+qH,EAAA,IAAAA,EAAA,KAQtE,QAAAyjB,IACA9iF,EACA+iF,GAGA,OADAp7B,GAAA,EACA9jH,EAAA,EAAiBA,EAAAm8D,EAAA75D,OAAqBtC,IAAA,CACtC,GAAAoiH,GAAAjmD,EAAAn8D,EACA,QAAAoiH,EAAAj0G,KAAA,CAGA,GAAAixI,GAAAh9B,IACAA,EAAAk3B,cAAAl3B,EAAAk3B,aAAA/7H,KAAA,SAAAnd,GAA+D,MAAAg/I,IAAAh/I,EAAAy3I,SAAsC,CACrG/zB,EAAA,CACA,QAEAo7B,EAAA98B,IACAA,EAAAk3B,cAAAl3B,EAAAk3B,aAAA/7H,KAAA,SAAAnd,GAA+D,MAAA8+I,GAAA9+I,EAAAy3I,YAC/D/zB,EAAA,IAGA,MAAAA,GAGA,QAAAs7B,IAAAh9B,GACA,WAAAxzF,KAAAwzF,EAAA02B,KAAA,aAAA12B,EAAAoD,KAAA,SAAApD,EAAAoD,IAGA,QAAA25B,IAAA5xB,EAAAr7D,GACA,WAAAq7D,EAAAp/G,KACA2uI,GAAAvvB,EAAAr7D,GACG,IAAAq7D,EAAAp/G,MAAAo/G,EAAAzH,UACHu5B,GAAA9xB,GAEA+xB,GAAA/xB,GAIA,QAAA+xB,IAAA3kH,GACA,iBAAAA,EAAAxsB,KACAwsB,EAAAgqG,WACA4a,GAAApoI,KAAAC,UAAAujB,UAAA,IAGA,QAAA0kH,IAAA5K,GACA,YAAAt9H,KAAAC,UAAAq9H,EAAA95G,MAAA,IAGA,QAAA4iH,IAAAn7B,EAAAlwD,GACA,GAAAqnF,GAAAn3B,EAAAm3B,UAAA,YACAp9E,EAAAuhF,GAAAt7B,EAAAlwD,GACA4xD,EAAA,MAAAy1B,GAAAp9E,EAAA,IAAAA,EAAA,IACA6wD,EAAA5K,EAAA4K,OAAA,IAA6B5K,EAAA4K,MAAAj5G,IAAA,SAAA5R,GAAgC,MAAAomH,IAAApmH,EAAA7B,MAAA,IAAA6B,EAAA,QAAiDsO,KAAA,SAC9G+uI,EAAAp9B,EAAAmkB,SAAA,SAUA,QATAvZ,IAAAwyB,GAAArjF,IACA2nD,GAAA,SAEAkJ,IACAlJ,GAAA,IAAAkJ,GAEAwyB,IACA17B,IAAAkJ,EAAA,gBAAAwyB,GAEA17B,EAAA,IAIA,QAAA05B,IACAiC,EACAr9B,EACAlwD,GAEA,GAAAiK,GAAAimD,EAAA6Y,eAAA,KAAAyiB,GAAAt7B,EAAAlwD,GAAA,EACA,aAAAutF,EAAA,IAAAhC,GAAAr7B,EAAAlwD,IAAAiK,EAAA,IAAAA,EAAA,QAGA,QAAAiiF,IAAA91B,GAEA,OADAxE,GAAA,GACA9jH,EAAA,EAAiBA,EAAAsoH,EAAAhmH,OAAkBtC,IAAA,CACnC,GAAAgqH,GAAA1B,EAAAtoH,EACA8jH,IAAA,IAAAkG,EAAA,UAAAu1B,GAAAv1B,EAAAn5G,OAAA,IAEA,MAAAizG,GAAAzpG,MAAA,MAIA,QAAAklI,IAAA5kH,GACA,MAAAA,GACAjP,QAAA,qBACAA,QAAA,qBA0GA,QAAA87C,IAAAnlE,EAAAq9I,GACA,IACA,UAAAl+I,UAAAa,GACG,MAAAooH,GAEH,MADAi1B,GAAA92I,MAAiB6hH,MAAApoH,SACjB8iB,GAIA,QAAAw6H,IAAAj6E,GACA,GAAA50C,GAAArwB,OAAA2D,OAAA,KAEA,iBACA0xI,EACA7/H,EACA+xG,GAEA/xG,EAAAC,KAAuBD,EACvBA,GAAAivD,WACAjvD,GAAAivD,IAqBA,IAAAqc,GAAAtrE,EAAAm8H,WACA/wH,OAAApL,EAAAm8H,YAAA0D,EACAA,CACA,IAAAhlH,EAAAywD,GACA,MAAAzwD,GAAAywD,EAIA,IAAAq+D,GAAAl6E,EAAAowE,EAAA7/H,GAiBA6tG,KACA+7B,IAyBA,OAxBA/7B,GAAAr8D,OAAA+f,GAAAo4E,EAAAn4F,OAAAo4F,GACA/7B,EAAA2T,gBAAAmoB,EAAAnoB,gBAAA1jH,IAAA,SAAA1R,GACA,MAAAmlE,IAAAnlE,EAAAw9I,KAsBA/uH,EAAAywD,GAAAuiC,GA+JA,QAAAg8B,IAAA19B,GACA,GAAAA,EAAA29B,UACA,MAAA39B,GAAA29B,SAEA,IAAAx2C,GAAAl/F,SAAAC,cAAA,MAEA,OADAi/F,GAAA5H,YAAAygB,EAAA49B,WAAA,IACAz2C,EAAA3M,UAxwUA,GAAAgmB,IAAAniH,OAAAS,UAAAkqB,SAmEAqwH,GAAAz4B,EAAA,qBAKAkU,GAAAlU,EAAA,8BAiBA7hH,GAAAV,OAAAS,UAAAC,eAmBA8+I,GAAA,SACA13B,GAAAhF,EAAA,SAAAN,GACA,MAAAA,GAAAv3F,QAAAu0H,GAAA,SAAA3pH,EAAAl2B,GAAkD,MAAAA,KAAAqtB,cAAA,OAMlDm8F,GAAArG,EAAA,SAAAN,GACA,MAAAA,GAAAjnF,OAAA,GAAAvO,cAAAw1F,EAAA5oG,MAAA,KAMA6lI,GAAA,aACA/1B,GAAA5G,EAAA,SAAAN,GACA,MAAAA,GAAAv3F,QAAAw0H,GAAA,OAAA52E,gBAkEAsqE,GAAA,SAAAzxI,EAAAoB,EAAAnD,GAA6B,UAK7BsE,GAAA,SAAA4xB,GAA6B,MAAAA,IAoE7B6pH,GAAA,uBAEA7hB,IACA,YACA,YACA,UAGA8hB,IACA,eACA,UACA,cACA,UACA,eACA,UACA,gBACA,YACA,YACA,cACA,iBAKA5xG,IAIA6xG,sBAAA5/I,OAAA2D,OAAA,MAKAk8I,QAAA,EAKAC,eAAA,EAKAptB,UAAA,EAKAzhB,aAAA,EAKAsZ,aAAA,KAKAw1B,YAAA,KAKAC,mBAKA3pB,SAAAr2H,OAAA2D,OAAA,MAMA23H,cAAA6X,GAMA8M,eAAA9M,GAMA5T,iBAAA4T,GAKA9X,gBAAA32G,EAKA62G,qBAAAt3H,GAMAyyH,YAAAyc,GAKA+M,gBAAAP,IAKAxuB,GAAAnxH,OAAA0d,WAyBAwmG,GAAA,UAkBAi8B,GAAA,gBAGA11B,GAAA,oBAAAvpH,QACAk/I,GAAA31B,IAAAvpH,OAAAuJ,UAAAC,UAAAm+D,cACAg/D,GAAAuY,IAAA,eAAAnzH,KAAAmzH,IACAvd,GAAAud,OAAAz1I,QAAA,cACAm4H,GAAAsd,OAAAz1I,QAAA,WACA01I,GAAAD,OAAAz1I,QAAA,aACA21I,GAAAF,IAAA,uBAAAnzH,KAAAmzH,IAIArsB,IAHAqsB,IAAA,cAAAnzH,KAAAmzH,OAGqBtsB,OAErBwU,IAAA,CACA,IAAA7d,GACA,IACA,GAAA8I,MACAvzH,QAAAC,eAAAszH,GAAA,WACAnzH,IAAA,WAEAkoI,IAAA,KAGApnI,OAAAi/D,iBAAA,oBAAAozD,IACG,MAAAtyH,IAKH,GAAAs/I,IA2BAC,GA1BAr6B,GAAA,WAWA,WAVAh4F,KAAAoyH,KAOAA,IALA91B,IAAA,oBAAAtpH,IAGA,WAAAA,EAAA,QAAA8jB,IAAAw7H,SAKAF,IAIA7tB,GAAAjI,IAAAvpH,OAAAw/I,6BAOArzB,GACA,oBAAAC,SAAAj6C,EAAAi6C,SACA,oBAAAgI,UAAAjiD,EAAAiiD,QAAAC,QAMAirB,IAFA,oBAAAG,MAAAttE,EAAAstE,KAEAA,IAGA,WACA,QAAAA,KACA7/I,KAAAkZ,IAAAha,OAAA2D,OAAA,MAYA,MAVAg9I,GAAAlgJ,UAAAs6D,IAAA,SAAA+lB,GACA,WAAAhgF,KAAAkZ,IAAA8mE,IAEA6/D,EAAAlgJ,UAAAmE,IAAA,SAAAk8E,GACAhgF,KAAAkZ,IAAA8mE,IAAA,GAEA6/D,EAAAlgJ,UAAAwI,MAAA,WACAnI,KAAAkZ,IAAAha,OAAA2D,OAAA,OAGAg9I,IAMA,IAAAl8E,IAAA//C,EA+FAlL,GAAA,EAMA8qG,GAAA,WACAxjH,KAAA2G,GAAA+R,KACA1Y,KAAA8/I,QAGAt8B,IAAA7jH,UAAAogJ,OAAA,SAAA/7I,GACAhE,KAAA8/I,KAAAz4I,KAAArD,IAGAw/G,GAAA7jH,UAAAqgJ,UAAA,SAAAh8I,GACAi3D,EAAAj7D,KAAA8/I,KAAA97I,IAGAw/G,GAAA7jH,UAAAmmH,OAAA,WACAtC,GAAArtB,QACAqtB,GAAArtB,OAAA8pD,OAAAjgJ,OAIAwjH,GAAA7jH,UAAAsmH,OAAA,WAGA,OADA65B,GAAA9/I,KAAA8/I,KAAAhnI,QACAra,EAAA,EAAAC,EAAAohJ,EAAA/+I,OAAkCtC,EAAAC,EAAOD,IACzCqhJ,EAAArhJ,GAAA6jD,UAOAkhE,GAAArtB,OAAA,IACA,IAAAstB,OAaAG,GAAA,SACAK,EACA35G,EACAswD,EACAxhC,EACA8qF,EACAp2D,EACAq2D,EACAC,GAEApkH,KAAAikH,MACAjkH,KAAAsK,OACAtK,KAAA46D,WACA56D,KAAAo5B,OACAp5B,KAAAkkH,MACAlkH,KAAAqkH,OAAAh3F,GACArtB,KAAA8tD,UACA9tD,KAAA0uH,sBAAArhG,GACArtB,KAAAw4H,sBAAAnrG,GACArtB,KAAAo4H,sBAAA/qG,GACArtB,KAAAggF,IAAA11E,KAAA01E,IACAhgF,KAAAmkH,mBACAnkH,KAAA29H,sBAAAtwG,GACArtB,KAAAg6D,WAAA3sC,GACArtB,KAAAkgJ,KAAA,EACAlgJ,KAAAskH,UAAA,EACAtkH,KAAA+sI,cAAA,EACA/sI,KAAAukH,WAAA,EACAvkH,KAAAwkH,UAAA,EACAxkH,KAAAu2H,QAAA,EACAv2H,KAAAokH,eACApkH,KAAA6sH,cAAAx/F,GACArtB,KAAA0tH,oBAAA,GAGArmF,IAA0BmgF,OAASpoH,cAAA,GAInCioC,IAAAmgF,MAAAloH,IAAA,WACA,MAAAU,MAAA29H,mBAGAz+H,OAAAwd,iBAAAknG,GAAAjkH,UAAA0nC,GAEA,IAAAulF,IAAA,SAAAxzF,OACA,KAAAA,MAAA,GAEA,IAAA4yF,GAAA,GAAApI,GAGA,OAFAoI,GAAA5yF,OACA4yF,EAAAzH,WAAA,EACAyH,GA+CAm0B,GAAAn6I,MAAArG,UACAygJ,GAAAlhJ,OAAA2D,OAAAs9I,KACA,OACA,MACA,QACA,UACA,SACA,OACA,WAEArkI,QAAA,SAAAukI,GAEA,GAAAC,GAAAH,GAAAE,EACAn9B,GAAAk9B,GAAAC,EAAA,WAEA,IADA,GAAAn+E,MAAAyiD,EAAA5gG,UAAAhjB,OACA4jH,KAAAziD,EAAAyiD,GAAA5gG,UAAA4gG,EAEA,IAEA0c,GAFAxiE,EAAAyhF,EAAAt8H,MAAAhkB,KAAAkiE,GACA8iD,EAAAhlH,KAAAilH,MAEA,QAAAo7B,GACA,WACA,cACAhf,EAAAn/D,CACA,MACA,cACAm/D,EAAAn/D,EAAAppD,MAAA,GAMA,MAHAuoH,IAAmBrc,EAAAu7B,aAAAlf,GAEnBrc,EAAAW,IAAAM,SACApnD,KAMA,IAAA2hF,IAAAthJ,OAAAmd,oBAAA+jI,IAQAj7B,IACAC,eAAA,GASAF,GAAA,SAAA51G,GAKA,GAJAtP,KAAAsP,QACAtP,KAAA2lH,IAAA,GAAAnC,IACAxjH,KAAAulH,QAAA,EACArC,EAAA5zG,EAAA,SAAAtP,MACAgG,MAAAC,QAAAqJ,GAAA,EACA+vI,GACAz6B,EACAC,GACAv1G,EAAA8wI,GAAAI,IACAxgJ,KAAAugJ,aAAAjxI,OAEAtP,MAAAygJ,KAAAnxI,GASA41G,IAAAvlH,UAAA8gJ,KAAA,SAAAt/B,GAEA,OADA9oG,GAAAnZ,OAAAmZ,KAAA8oG,GACA1iH,EAAA,EAAiBA,EAAA4Z,EAAAtX,OAAiBtC,IAClC+mH,EAAArE,EAAA9oG,EAAA5Z,GAAA0iH,EAAA9oG,EAAA5Z,MAOAymH,GAAAvlH,UAAA4gJ,aAAA,SAAAG,GACA,OAAAjiJ,GAAA,EAAAC,EAAAgiJ,EAAA3/I,OAAmCtC,EAAAC,EAAOD,IAC1CqmH,EAAA47B,EAAAjiJ,IAiMA,IAAAkpH,IAAA16E,GAAA6xG,qBAkFAn3B,IAAAr9G,KAAA,SACAi8G,EACAC,EACAC,GAEA,MAAAA,GAcAH,EAAAC,EAAAC,EAAAC,GAbAD,GAAA,mBAAAA,GAQAD,EAEAD,EAAA3nH,KAAAqB,KAAAumH,EAAAC,IAsBAq4B,GAAA/iI,QAAA,SAAAsvG,GACAzD,GAAAyD,GAAAxE,IAyBAmW,GAAAjhH,QAAA,SAAAlP,GACA+6G,GAAA/6G,EAAA,KAAAi6G,IASAc,GAAAqL,MAAA,SACAzM,EACAC,EACAC,EACAzmC,GAMA,GAHAumC,IAAA0M,KAAkC1M,MAAAl5F,IAClCm5F,IAAAyM,KAAiCzM,MAAAn5F,KAEjCm5F,EAAkB,MAAAtnH,QAAA2D,OAAA0jH,GAAA,KAIlB,KAAAA,EAAmB,MAAAC,EACnB,IAAApE,KACAztG,GAAAytG,EAAAmE,EACA,QAAAspB,KAAArpB,GAAA,CACA,GAAAxsD,GAAAooD,EAAAytB,GACAroB,EAAAhB,EAAAqpB,EACA71E,KAAAh0D,MAAAC,QAAA+zD,KACAA,OAEAooD,EAAAytB,GAAA71E,EACAA,EAAAhzD,OAAAwgH,GACAxhH,MAAAC,QAAAuhH,SAEA,MAAApF,IAMAuF,GAAAZ,MACAY,GAAAgL,QACAhL,GAAAT,OACAS,GAAAmL,SAAA,SACAvM,EACAC,EACAC,EACAzmC,GAKA,IAAAumC,EAAmB,MAAAC,EACnB,IAAApE,GAAAljH,OAAA2D,OAAA,KAGA,OAFA8R,GAAAytG,EAAAmE,GACAC,GAAiB7xG,EAAAytG,EAAAoE,GACjBpE,GAEAuF,GAAAyM,QAAA9N,CAKA,IA0aA8D,IACAD,GA3aAvC,GAAA,SAAArB,EAAAC,GACA,WAAAn5F,KAAAm5F,EACAD,EACAC,GAmZArY,MACA0b,IAAA,EAqBAI,IAAA,CAOA,wBAAAnJ,IAAAvuC,EAAAuuC,GACAqJ,GAAA,WACArJ,EAAA8I,SAEC,wBAAA+2B,kBACDpuE,EAAAouE,iBAEA,uCAAAA,eAAA92H,WAUAsgG,GAAA,WACArnG,WAAA8mG,GAAA,QAVA,CACA,GAAAg3B,IAAA,GAAAD,gBACAE,GAAAD,GAAAE,KACAF,IAAAG,MAAAC,UAAAp3B,GACAO,GAAA,WACA02B,GAAAvyC,YAAA,IAWA,uBAAA+b,UAAA93C,EAAA83C,SAAA,CACA,GAAAxqH,IAAAwqH,QAAAC,SACAF,IAAA,WACAvqH,GAAAi+F,KAAA8rB,IAMA41B,IAAgB18H,WAAAc,QAIhBwmG,IAAAD,EA+CA,IAugBAh0B,IAlaA60B,GAAAhJ,EAAA,SAAAjjH,GACA,GAAAksH,GAAA,MAAAlsH,EAAA07B,OAAA,EACA17B,GAAAksH,EAAAlsH,EAAA+Z,MAAA,GAAA/Z,CACA,IAAAwoI,GAAA,MAAAxoI,EAAA07B,OAAA,EACA17B,GAAAwoI,EAAAxoI,EAAA+Z,MAAA,GAAA/Z,CACA,IAAAulG,GAAA,MAAAvlG,EAAA07B,OAAA,EAEA,OADA17B,GAAAulG,EAAAvlG,EAAA+Z,MAAA,GAAA/Z,GAEAA,OACAylB,KAAA+iH,EACAjjC,UACA2mB,aAqlBA2hB,GAAA,KA2TAvpH,MACA8tG,MACAl3D,MAEAm3D,IAAA,EACAC,IAAA,EACAn/F,GAAA,EAmIA+uH,GAAA,EAOArxB,GAAA,SACAnJ,EACAy6B,EACAh3B,EACAx1G,GAEA1U,KAAAymH,KACAA,EAAA+L,UAAAnrH,KAAArH,MAEA0U,GACA1U,KAAA+jH,OAAArvG,EAAAqvG,KACA/jH,KAAAmhJ,OAAAzsI,EAAAysI,KACAnhJ,KAAA2mI,OAAAjyH,EAAAiyH,KACA3mI,KAAAotH,OAAA14G,EAAA04G,MAEAptH,KAAA+jH,KAAA/jH,KAAAmhJ,KAAAnhJ,KAAA2mI,KAAA3mI,KAAAotH,MAAA,EAEAptH,KAAAkqH,KACAlqH,KAAA2G,KAAAs6I,GACAjhJ,KAAAmgH,QAAA,EACAngH,KAAA2hD,MAAA3hD,KAAA2mI,KACA3mI,KAAAohJ,QACAphJ,KAAAqhJ,WACArhJ,KAAAshJ,OAAA,GAAA5B,IACA1/I,KAAAuhJ,UAAA,GAAA7B,IACA1/I,KAAAojI,WAEA,GAEA,mBAAA8d,GACAlhJ,KAAAhB,OAAAkiJ,GAEAlhJ,KAAAhB,OAAAmkH,EAAA+9B,GACAlhJ,KAAAhB,SACAgB,KAAAhB,OAAA,eASAgB,KAAAsP,MAAAtP,KAAA2mI,SACAt5G,GACArtB,KAAAV,MAMAswH,IAAAjwH,UAAAL,IAAA,WACAgkH,EAAAtjH,KACA,IAAAsP,GACAm3G,EAAAzmH,KAAAymH,EACA,KACAn3G,EAAAtP,KAAAhB,OAAAL,KAAA8nH,KACG,MAAAtmH,GACH,IAAAH,KAAAmhJ,KAGA,KAAAhhJ,EAFA8oH,IAAA9oH,EAAAsmH,EAAA,uBAAAzmH,KAAA,gBAIG,QAGHA,KAAA+jH,MACAgO,GAAAziH,GAEAo0G,IACA1jH,KAAAwhJ,cAEA,MAAAlyI,IAMAsgH,GAAAjwH,UAAAsgJ,OAAA,SAAAt6B,GACA,GAAAh/G,GAAAg/G,EAAAh/G,EACA3G,MAAAuhJ,UAAAtnF,IAAAtzD,KACA3G,KAAAuhJ,UAAAz9I,IAAA6C,GACA3G,KAAAqhJ,QAAAh6I,KAAAs+G,GACA3lH,KAAAshJ,OAAArnF,IAAAtzD,IACAg/G,EAAAo6B,OAAA//I,QAQA4vH,GAAAjwH,UAAA6hJ,YAAA,WAIA,IAHA,GAAAC,GAAAzhJ,KAEAvB,EAAAuB,KAAAohJ,KAAArgJ,OACAtC,KAAA,CACA,GAAAknH,GAAA87B,EAAAL,KAAA3iJ,EACAgjJ,GAAAF,UAAAtnF,IAAA0rD,EAAAh/G,KACAg/G,EAAAq6B,UAAAyB,GAGA,GAAAC,GAAA1hJ,KAAAshJ,MACAthJ,MAAAshJ,OAAAthJ,KAAAuhJ,UACAvhJ,KAAAuhJ,UAAAG,EACA1hJ,KAAAuhJ,UAAAp5I,QACAu5I,EAAA1hJ,KAAAohJ,KACAphJ,KAAAohJ,KAAAphJ,KAAAqhJ,QACArhJ,KAAAqhJ,QAAAK,EACA1hJ,KAAAqhJ,QAAAtgJ,OAAA,GAOA6uH,GAAAjwH,UAAA2iD,OAAA,WAEAtiD,KAAA2mI,KACA3mI,KAAA2hD,OAAA,EACG3hD,KAAAotH,KACHptH,KAAAwjB,MAEAsuG,GAAA9xH,OAQA4vH,GAAAjwH,UAAA6jB,IAAA,WACA,GAAAxjB,KAAAmgH,OAAA,CACA,GAAA7wG,GAAAtP,KAAAV,KACA,IACAgQ,IAAAtP,KAAAsP,OAIAqb,EAAArb,IACAtP,KAAA+jH,KACA,CAEA,GAAAmd,GAAAlhI,KAAAsP,KAEA,IADAtP,KAAAsP,QACAtP,KAAAmhJ,KACA,IACAnhJ,KAAAkqH,GAAAvrH,KAAAqB,KAAAymH,GAAAn3G,EAAA4xH,GACS,MAAA/gI,GACT8oH,GAAA9oH,EAAAH,KAAAymH,GAAA,yBAAAzmH,KAAA,oBAGAA,MAAAkqH,GAAAvrH,KAAAqB,KAAAymH,GAAAn3G,EAAA4xH,MAUAtR,GAAAjwH,UAAAm0H,SAAA,WACA9zH,KAAAsP,MAAAtP,KAAAV,MACAU,KAAA2hD,OAAA,GAMAiuE,GAAAjwH,UAAAmmH,OAAA,WAIA,IAHA,GAAA27B,GAAAzhJ,KAEAvB,EAAAuB,KAAAohJ,KAAArgJ,OACAtC,KACAgjJ,EAAAL,KAAA3iJ,GAAAqnH,UAOA8J,GAAAjwH,UAAAgiJ,SAAA,WACA,GAAAF,GAAAzhJ,IAEA,IAAAA,KAAAmgH,OAAA,CAIAngH,KAAAymH,GAAA6I,mBACAr0D,EAAAj7D,KAAAymH,GAAA+L,UAAAxyH,KAGA,KADA,GAAAvB,GAAAuB,KAAAohJ,KAAArgJ,OACAtC,KACAgjJ,EAAAL,KAAA3iJ,GAAAuhJ,UAAAyB,EAEAzhJ,MAAAmgH,QAAA,GASA,IAAA6R,IAAA,GAAA0tB,IA+BAptB,IACAjzH,YAAA,EACAD,cAAA,EACAE,IAAAskB,EACA1K,IAAA0K,GAgIA8vG,IAA8BiT,MAAA,EAgkB9B/P,IAAAgB,GAAAj4H,UAmDA,IAAAk6H,KACA+nB,KAAA,SACA99B,EACA0L,EACA2J,EACAC,GAEA,IAAAtV,EAAA6Z,mBAAA7Z,EAAA6Z,kBAAAtO,aAAA,EACAvL,EAAA6Z,kBAAAzE,GACApV,EACA8oB,GACAzT,EACAC,IAEAyoB,OAAAryB,EAAA1L,EAAAI,QAAA72F,GAAAmiG,OACK,IAAA1L,EAAAx5G,KAAAw3I,UAAA,CAEL,GAAAC,GAAAj+B,CACA+V,IAAAmoB,SAAAD,OAIAC,SAAA,SAAAzhB,EAAAzc,GACA,GAAApvG,GAAAovG,EAAAK,gBAEA2L,IADAhM,EAAA6Z,kBAAA4C,EAAA5C,kBAGAjpH,EAAA8zG,UACA9zG,EAAAqQ,UACA++F,EACApvG,EAAAkmD,WAIAriD,OAAA,SAAAurG,GACA,GAAAh2D,GAAAg2D,EAAAh2D,QACA6vE,EAAA7Z,EAAA6Z,iBACAA,GAAAvO,aACAuO,EAAAvO,YAAA,EACAM,GAAAiO,EAAA,YAEA7Z,EAAAx5G,KAAAw3I,YACAh0F,EAAAshE,WAMAyC,GAAA8L,GAEA7M,GAAA6M,GAAA,KAKAr9G,QAAA,SAAAwjG,GACA,GAAA6Z,GAAA7Z,EAAA6Z,iBACAA,GAAAtO,eACAvL,EAAAx5G,KAAAw3I,UAGA9wB,GAAA2M,GAAA,GAFAA,EAAAC,cAQAjE,GAAAz6H,OAAAmZ,KAAAwhH,IAiKAS,GAAA,EACAH,GAAA,EAqOA8nB,GAAA,GAEA,SAAAnmB,GACAA,EAAAn8H,UAAAi8H,MAAA,SAAAlnH,GACA,GAAA+xG,GAAAzmH,IAEAymH,GAAAy7B,KAAAD,KAWAx7B,EAAAnB,QAAA,EAEA5wG,KAAA4kH,aAIAyB,GAAAtU,EAAA/xG,GAEA+xG,EAAAsC,SAAAxB,EACAqR,GAAAnS,EAAAx+F,aACAvT,MACA+xG,GAOAA,EAAA2P,aAAA3P,EAGAA,EAAA07B,MAAA17B,EACAoI,GAAApI,GACAmH,GAAAnH,GACAmU,GAAAnU,GACAiJ,GAAAjJ,EAAA,gBACA6N,GAAA7N,GACA8L,GAAA9L,GACA0N,GAAA1N,GACAiJ,GAAAjJ,EAAA,WASAA,EAAAsC,SAAAlI,IACA4F,EAAAo7B,OAAAp7B,EAAAsC,SAAAlI,MAwFA8a,IA1jCA,SAAAG,GAIA,GAAAsmB,KACAA,GAAA9iJ,IAAA,WAA6B,MAAAU,MAAA0vD,MAC7B,IAAA2yF,KACAA,GAAA/iJ,IAAA,WAA8B,MAAAU,MAAAgpH,QAa9B9pH,OAAAC,eAAA28H,EAAAn8H,UAAA,QAAAyiJ,GACAljJ,OAAAC,eAAA28H,EAAAn8H,UAAA,SAAA0iJ,GAEAvmB,EAAAn8H,UAAA2iJ,KAAAppI,EACA4iH,EAAAn8H,UAAA4iJ,QAAAr8B,EAEA4V,EAAAn8H,UAAAu0H,OAAA,SACAgtB,EACAh3B,EACAx1G,GAEA,GAAA+xG,GAAAzmH,IACA,IAAAohH,EAAA8I,GACA,MAAA8J,IAAAvN,EAAAy6B,EAAAh3B,EAAAx1G,EAEAA,SACAA,EAAAysI,MAAA,CACA,IAAA5vB,GAAA,GAAA3B,IAAAnJ,EAAAy6B,EAAAh3B,EAAAx1G,EAIA,OAHAA,GAAA8tI,WACAt4B,EAAAvrH,KAAA8nH,EAAA8K,EAAAjiH,OAEA,WACAiiH,EAAAowB,cAihCAhmB,IAhrEA,SAAAG,GACA,GAAA2mB,GAAA,QACA3mB,GAAAn8H,UAAAuuH,IAAA,SAAAnD,EAAA9I,GACA,GAAAw/B,GAAAzhJ,KAEAymH,EAAAzmH,IACA,IAAAgG,MAAAC,QAAA8kH,GACA,OAAAtsH,GAAA,EAAAC,EAAAqsH,EAAAhqH,OAAuCtC,EAAAC,EAAOD,IAC9CgjJ,EAAAvzB,IAAAnD,EAAAtsH,GAAAwjH,QAGAwE,EAAAoH,QAAA9C,KAAAtE,EAAAoH,QAAA9C,QAAA1jH,KAAA46G,GAGAwgC,EAAAt2H,KAAA4+F,KACAtE,EAAAqH,eAAA,EAGA,OAAArH,IAGAqV,EAAAn8H,UAAAsuH,MAAA,SAAAlD,EAAA9I,GAEA,QAAA39F,KACAmiG,EAAA2H,KAAArD,EAAAzmG,GACA29F,EAAAj+F,MAAAyiG,EAAA1iG,WAHA,GAAA0iG,GAAAzmH,IAOA,OAFAskB,GAAA29F,KACAwE,EAAAyH,IAAAnD,EAAAzmG,GACAmiG,GAGAqV,EAAAn8H,UAAAyuH,KAAA,SAAArD,EAAA9I,GACA,GAAAw/B,GAAAzhJ,KAEAymH,EAAAzmH,IAEA,KAAA+jB,UAAAhjB,OAEA,MADA0lH,GAAAoH,QAAA3uH,OAAA2D,OAAA,MACA4jH,CAGA,IAAAzgH,MAAAC,QAAA8kH,GAAA,CACA,OAAAtsH,GAAA,EAAAC,EAAAqsH,EAAAhqH,OAAuCtC,EAAAC,EAAOD,IAC9CgjJ,EAAArzB,KAAArD,EAAAtsH,GAAAwjH,EAEA,OAAAwE,GAGA,GAAAi8B,GAAAj8B,EAAAoH,QAAA9C,EACA,KAAA23B,EACA,MAAAj8B,EAEA,QAAA1iG,UAAAhjB,OAEA,MADA0lH,GAAAoH,QAAA9C,GAAA,KACAtE,CAEA,IAAAxE,EAIA,IAFA,GAAAiI,GACAysB,EAAA+L,EAAA3hJ,OACA41I,KAEA,IADAzsB,EAAAw4B,EAAA/L,MACA10B,GAAAiI,EAAAjI,OAAA,CACAygC,EAAA16I,OAAA2uI,EAAA,EACA,OAIA,MAAAlwB,IAGAqV,EAAAn8H,UAAAsxH,MAAA,SAAAlG,GACA,GAAAtE,GAAAzmH,KAaA0iJ,EAAAj8B,EAAAoH,QAAA9C,EACA,IAAA23B,EAAA,CACAA,IAAA3hJ,OAAA,EAAAskC,EAAAq9G,IAEA,QADAxgF,GAAA78B,EAAAthB,UAAA,GACAtlB,EAAA,EAAAC,EAAAgkJ,EAAA3hJ,OAAqCtC,EAAAC,EAAOD,IAC5C,IACAikJ,EAAAjkJ,GAAAulB,MAAAyiG,EAAAvkD,GACS,MAAA/hE,GACT8oH,GAAA9oH,EAAAsmH,EAAA,sBAAAsE,EAAA,MAIA,MAAAtE,KA+kEAkV,IA7+DA,SAAAG,GACAA,EAAAn8H,UAAA0oG,QAAA,SAAAyb,EAAA0L,GACA,GAAA/I,GAAAzmH,IACAymH,GAAA2I,YACAM,GAAAjJ,EAAA,eAEA,IAAAk8B,GAAAl8B,EAAAgJ,IACAmzB,EAAAn8B,EAAA8J,OACAsyB,EAAAjW,EACAA,IAAAnmB,EACAA,EAAA8J,OAAAzM,EAGA8+B,EAYAn8B,EAAAgJ,IAAAhJ,EAAAq8B,UAAAF,EAAA9+B,IAVA2C,EAAAgJ,IAAAhJ,EAAAq8B,UACAr8B,EAAAgJ,IAAA3L,EAAA0L,GAAA,EACA/I,EAAAsC,SAAAyQ,WACA/S,EAAAsC,SAAA0Q,SAIAhT,EAAAsC,SAAAyQ,WAAA/S,EAAAsC,SAAA0Q,QAAA,MAKAmT,GAAAiW,EAEAF,IACAA,EAAAI,QAAA,MAEAt8B,EAAAgJ,MACAhJ,EAAAgJ,IAAAszB,QAAAt8B,GAGAA,EAAAoJ,QAAApJ,EAAA4C,SAAA5C,EAAAoJ,SAAApJ,EAAA4C,QAAAkH,SACA9J,EAAA4C,QAAAoG,IAAAhJ,EAAAgJ,MAMAqM,EAAAn8H,UAAA2tH,aAAA,WACA,GAAA7G,GAAAzmH,IACAymH,GAAAwI,UACAxI,EAAAwI,SAAA3sE,UAIAw5E,EAAAn8H,UAAAi+H,SAAA,WACA,GAAAnX,GAAAzmH,IACA,KAAAymH,EAAA6I,kBAAA,CAGAI,GAAAjJ,EAAA,iBACAA,EAAA6I,mBAAA,CAEA,IAAAt1D,GAAAysD,EAAA4C,SACArvD,KAAAs1D,mBAAA7I,EAAAsC,SAAA+F,UACA7zD,EAAAjB,EAAA+0D,UAAAtI,GAGAA,EAAAwI,UACAxI,EAAAwI,SAAA0yB,UAGA,KADA,GAAAljJ,GAAAgoH,EAAA+L,UAAAzxH,OACAtC,KACAgoH,EAAA+L,UAAA/zH,GAAAkjJ,UAIAl7B,GAAA/2D,MAAAu1D,QACAwB,EAAA/2D,MAAAu1D,OAAAM,UAGAkB,EAAA4I,cAAA,EAEA5I,EAAAq8B,UAAAr8B,EAAA8J,OAAA,MAEAb,GAAAjJ,EAAA,aAEAA,EAAA2H,OAEA3H,EAAAgJ,MACAhJ,EAAAgJ,IAAAszB,QAAA,MAGAt8B,EAAAoJ,SACApJ,EAAAoJ,OAAA71D,OAAA,SAq5DA2hE,IA5NA,SAAAG,GAEAlF,GAAAkF,EAAAn8H,WAEAm8H,EAAAn8H,UAAAqjJ,UAAA,SAAA/gC,GACA,MAAAn+F,IAAAm+F,EAAAjiH,OAGA87H,EAAAn8H,UAAA0rG,QAAA,WACA,GAAAob,GAAAzmH,KACA2H,EAAA8+G,EAAAsC,SACA7iE,EAAAv+C,EAAAu+C,OACAoqE,EAAA3oH,EAAA2oH,YAEA,IAAA7J,EAAA2I,WAGA,OAAApvC,KAAAymC,GAAAmK,OAAA,CACA,GAAAnC,GAAAhI,EAAAmK,OAAA5wC,EACAyuC,GAAAw0B,YACAx8B,EAAAmK,OAAA5wC,GAAAykC,EAAAgK,GAAA,IAKAhI,EAAA2J,aAAAE,KAAAhmH,KAAA6lH,aAAAE,GAIA5J,EAAAoJ,OAAAS,CAEA,IAAAxM,EACA,KACAA,EAAA59D,EAAAvnD,KAAA8nH,EAAA2P,aAAA3P,EAAAoU,gBACK,MAAA16H,GACL8oH,GAAA9oH,EAAAsmH,EAAA,UAgBA3C,EAAA2C,EAAA8J,OAgBA,MAZAzM,aAAAF,MAQAE,EAAA8I,MAGA9I,EAAA9pD,OAAAs2D,EACAxM,IA0JA6X,GAuNA,IAAAunB,KAAApjI,OAAA8J,OAAA5jB,OAEAm9I,IACApkJ,KAAA,aACA+vH,UAAA,EAEA/H,OACAq8B,QAAAF,GACAG,QAAAH,GACAt7I,KAAAkY,OAAAyL,SAGA+3H,QAAA,WACAtjJ,KAAAuvB,MAAArwB,OAAA2D,OAAA,MACA7C,KAAAqY,SAGAkrI,UAAA,WACA,GAAA9B,GAAAzhJ,IAEA,QAAAggF,KAAAyhE,GAAAlyH,MACAiuG,GAAAikB,EAAAlyH,MAAAywD,EAAAyhE,EAAAppI,OAIA26G,OACAowB,QAAA,SAAA7hC,GACA8b,GAAAr9H,KAAA,SAAAjB,GAAwC,MAAAq+H,IAAA7b,EAAAxiH,MAExCskJ,QAAA,SAAA9hC,GACA8b,GAAAr9H,KAAA,SAAAjB,GAAwC,OAAAq+H,GAAA7b,EAAAxiH,OAIxCmnD,OAAA,WACA,GAAA49D,GAAA6J,GAAA3tH,KAAA4wH,OAAAphG,SACA20F,EAAAL,KAAAK,gBACA,IAAAA,EAAA,CAEA,GAAAplH,GAAAo+H,GAAAhZ,EACA,IAAAplH,IACAiB,KAAAojJ,UAAAhmB,GAAAp9H,KAAAojJ,QAAArkJ,IACAiB,KAAAqjJ,SAAAjmB,GAAAp9H,KAAAqjJ,QAAAtkJ,IAEA,MAAA+kH,EAGA,IAAAn8G,GAAA3H,KACAuvB,EAAA5nB,EAAA4nB,MACAlX,EAAA1Q,EAAA0Q,KACA2nE,EAAA,MAAA8jC,EAAA9jC,IAGAmkC,EAAAd,KAAAsV,KAAAxU,EAAAF,IAAA,KAAAE,EAAA,QACAL,EAAA9jC,GACAzwD,GAAAywD,IACA8jC,EAAA6Z,kBAAApuG,EAAAywD,GAAA29C,kBAEA1iE,EAAA5iD,EAAA2nE,GACA3nE,EAAAhR,KAAA24E,KAEAzwD,EAAAywD,GAAA8jC,EACAzrG,EAAAhR,KAAA24E,GAEAhgF,KAAA4H,KAAAyQ,EAAAtX,OAAAi9B,SAAAh+B,KAAA4H,MACA41H,GAAAjuG,EAAAlX,EAAA,GAAAA,EAAArY,KAAAuwH,SAIAzM,EAAAx5G,KAAAw3I,WAAA,EAEA,MAAAh+B,KAIA0/B,IACAL,eAKA,SAAArnB,GAEA,GAAA2nB,KACAA,GAAAnkJ,IAAA,WAA+B,MAAA2tC,KAQ/B/tC,OAAAC,eAAA28H,EAAA,SAAA2nB,GAKA3nB,EAAAtrG,MACAmzC,QACAhvD,SACA4yG,eACA/B,kBAGAsW,EAAA5iH,MACA4iH,EAAA4nB,OAAAx9B,EACA4V,EAAAh4G,YAEAg4G,EAAApnH,QAAAxV,OAAA2D,OAAA,MACAk6H,GAAAjhH,QAAA,SAAAlP,GACAkvH,EAAApnH,QAAA9H,EAAA,KAAA1N,OAAA2D,OAAA,QAKAi5H,EAAApnH,QAAAgkH,MAAAoD,EAEAnnH,EAAAmnH,EAAApnH,QAAAkd,WAAA4xH,IAEA3nB,GAAAC,GACAO,GAAAP,GACAS,GAAAT,GACAmB,GAAAnB,IAGAH,IAEAz8H,OAAAC,eAAAw8H,GAAAh8H,UAAA,aACAL,IAAA+lH,KAGAnmH,OAAAC,eAAAw8H,GAAAh8H,UAAA,eACAL,IAAA,WAEA,MAAAU,MAAA6vH,QAAA7vH,KAAA6vH,OAAA8zB,cAIAhoB,GAAA1tH,QAAA,OAMA,IAshDA02G,IACAjD,GACAikB,GACAJ,GACAC,GACAC,GAmFAS,GAkLAiB,GAiPAyc,GAjhEAzE,GAAA19B,EAAA,eAGAoiC,GAAApiC,EAAA,yCACAmU,GAAA,SAAA3R,EAAAr3G,EAAAinI,GACA,MACA,UAAAA,GAAAgQ,GAAA5/B,IAAA,WAAAr3G,GACA,aAAAinI,GAAA,WAAA5vB,GACA,YAAA4vB,GAAA,UAAA5vB,GACA,UAAA4vB,GAAA,UAAA5vB,GAIAoe,GAAA5gB,EAAA,wCAEA8gB,GAAA9gB,EACA,wYAQA0gB,GAAA,+BAEAF,GAAA,SAAAljI,GACA,YAAAA,EAAA07B,OAAA,cAAA17B,EAAA+Z,MAAA,MAGAspH,GAAA,SAAArjI,GACA,MAAAkjI,IAAAljI,KAAA+Z,MAAA,EAAA/Z,EAAAgC,QAAA,IAGAyhI,GAAA,SAAAjhB,GACA,aAAAA,IAAA,IAAAA,GAsFA4d,IACA2kB,IAAA,6BACAC,KAAA,sCAGAC,GAAAviC,EACA,snBAeA+c,GAAA/c,EACA,kNAGA,GAGAqzB,GAAA,SAAA7wB,GAA+B,cAAAA,GAE/BuW,GAAA,SAAAvW,GACA,MAAA+/B,IAAA//B,IAAAua,GAAAva,IAcAya,GAAAx/H,OAAA2D,OAAA,MA0BAq9H,GAAAze,EAAA,6CAiFAwiC,GAAA/kJ,OAAA0d,QACA7T,cAAA+1H,GACAG,mBACAtxB,kBACAyxB,iBACAn2B,gBACA9B,eACA/G,eACAhK,cACAmpC,eACAR,WACAS,kBACA/iC,kBAKA90F,IACA9E,OAAA,SAAAkyB,EAAA+uF,GACA4b,GAAA5b,IAEAxhE,OAAA,SAAAi+E,EAAAzc,GACAyc,EAAAj2H,KAAA3C,MAAAm8G,EAAAx5G,KAAA3C,MACA+3H,GAAAa,GAAA,GACAb,GAAA5b,KAGAxjG,QAAA,SAAAwjG,GACA4b,GAAA5b,GAAA,KA2CA6c,GAAA,GAAA/c,IAAA,UAEA0F,IAAA,iDAgrBAhC,IACAzkH,OAAAy9H,GACAh+E,OAAAg+E,GACAhgH,QAAA,SAAAwjG,GACAwc,GAAAxc,EAAA6c,MAsEAa,GAAAtiI,OAAA2D,OAAA,MAqCAqhJ,IACAv8I,GACA2/G,IA6EAmE,IACA5oH,OAAA8+H,GACAr/E,OAAAq/E,IAoCAwiB,IACAthJ,OAAA6/H,GACApgF,OAAAogF,IAKAiB,GAAA,gBA6XAkD,GAAA,MACAG,GAAA,MAmOA1C,IACAzhI,OAAA4kI,GACAnlF,OAAAmlF,IAsFA5R,IACAhzH,OAAA6kI,GACAplF,OAAAolF,IAKAiB,GAAA3mB,EAAA,SAAAoiC,GACA,GAAA7hC,MACA8hC,EAAA,gBACAC,EAAA,OAOA,OANAF,GAAA75H,MAAA85H,GAAAvoI,QAAA,SAAAgmG,GACA,GAAAA,EAAA,CACA,GAAA4/B,GAAA5/B,EAAAv3F,MAAA+5H,EACA5C,GAAA3gJ,OAAA,IAAAwhH,EAAAm/B,EAAA,GAAA/tD,QAAA+tD,EAAA,GAAA/tD,WAGA4uB,IAyDAgiC,GAAA,MACAC,GAAA,iBACApb,GAAA,SAAAvoB,EAAA9hH,EAAAwiH,GAEA,GAAAgjC,GAAAp4H,KAAAptB,GACA8hH,EAAAjqE,MAAA6tG,YAAA1lJ,EAAAwiH,OACG,IAAAijC,GAAAr4H,KAAAo1F,GACHV,EAAAjqE,MAAA6tG,YAAA1lJ,EAAAwiH,EAAAp3F,QAAAq6H,GAAA,qBACG,CACH,GAAAE,GAAAC,GAAA5lJ,EACA,IAAAiH,MAAAC,QAAAs7G,GAIA,OAAA9iH,GAAA,EAAAkmH,EAAApD,EAAAxgH,OAAuCtC,EAAAkmH,EAASlmH,IAChDoiH,EAAAjqE,MAAA8tG,GAAAnjC,EAAA9iH,OAGAoiH,GAAAjqE,MAAA8tG,GAAAnjC,IAKAqjC,IAAA,qBAGAD,GAAA3iC,EAAA,SAAAyG,GAGA,GAFAm7B,OAAA96I,SAAAC,cAAA,OAAA6tC,MAEA,YADA6xE,EAAAzB,GAAAyB,KACAA,IAAAm7B,IACA,MAAAn7B,EAGA,QADAo8B,GAAAp8B,EAAAhuF,OAAA,GAAAvO,cAAAu8F,EAAA3vG,MAAA,GACAra,EAAA,EAAiBA,EAAAmmJ,GAAA7jJ,OAAwBtC,IAAA,CACzC,GAAAM,GAAA6lJ,GAAAnmJ,GAAAomJ,CACA,IAAA9lJ,IAAA6kJ,IACA,MAAA7kJ,MAgDA63C,IACA/zC,OAAAimI,GACAxmF,OAAAwmF,IAoFAW,GAAAznB,EAAA,SAAAjjH,GACA,OACAgtI,WAAAhtI,EAAA,SACAitI,aAAAjtI,EAAA,YACAktI,iBAAAltI,EAAA,gBACAovI,WAAApvI,EAAA,SACAsvI,aAAAtvI,EAAA,YACAqvI,iBAAArvI,EAAA,mBAIA+lJ,GAAAn7B,KAAAoY,GACAoI,GAAA,aACAgB,GAAA,YAGAR,GAAA,aACAP,GAAA,gBACAY,GAAA,YACAX,GAAA,cACAya,UAEAz3H,KAAAjtB,OAAA2kJ,qBACA13H,KAAAjtB,OAAA4kJ,wBAEAra,GAAA,mBACAP,GAAA,2BAEA/8G,KAAAjtB,OAAA6kJ,oBACA53H,KAAAjtB,OAAA8kJ,uBAEAla,GAAA,kBACAX,GAAA,sBAKA,IAAAV,IAAAhgB,GACAvpH,OAAAgwG,sBACAhwG,OAAAgwG,sBAAAj0F,KAAA/b,QACA0iB,WACA,SAAAm/F,GAA8C,MAAAA,MAsD9CopB,GAAA,yBAiXA5nE,GAAAkmD,IACA9mH,OAAA8rI,GACAwW,SAAAxW,GACA1zE,OAAA,SAAA6oD,EAAAkqB,IAEA,IAAAlqB,EAAAx5G,KAAAqjI,KACAI,GAAAjqB,EAAAkqB,GAEAA,SAKAoX,IACA35B,GACA04B,GACA7f,GACAzO,GACAj/E,GACA6sB,IAOAtlE,GAAAinJ,GAAAp+I,OAAAk9I,IAEAmB,GA/wEA,SAAAC,GAgBA,QAAAC,GAAArhC,GACA,UAAAN,IAAAqgC,EAAAllB,QAAA7a,GAAAn8C,wBAA2D16C,GAAA62F,GAG3D,QAAAshC,GAAAC,EAAA1gI,GACA,QAAAk2C,KACA,MAAAA,EAAAl2C,WACAjV,EAAA21I,GAIA,MADAxqF,GAAAl2C,YACAk2C,EAGA,QAAAnrD,GAAA+wG,GACA,GAAA7mD,GAAAiqF,EAAA7tD,WAAAyqB,EAEAG,GAAAhnD,IACAiqF,EAAA98C,YAAAntC,EAAA6mD,GAKA,QAAA6kC,GAAA5hC,EAAA6hC,EAAAxsB,EAAAC,EAAAwsB,GAEA,GADA9hC,EAAAipB,cAAA6Y,GACAntB,EAAA3U,EAAA6hC,EAAAxsB,EAAAC,GAAA,CAIA,GAAA9uH,GAAAw5G,EAAAx5G,KACAswD,EAAAkpD,EAAAlpD,SACAqpD,EAAAH,EAAAG,GACAjD,GAAAiD,IA0BAH,EAAAI,IAAAJ,EAAAO,GACA4/B,EAAAhlB,gBAAAnb,EAAAO,GAAAJ,GACAggC,EAAAl7I,cAAAk7G,EAAAH,GACA+hC,EAAA/hC,GAIAgiC,EAAAhiC,EAAAlpD,EAAA+qF,GACA3kC,EAAA12G,IACAy7I,EAAAjiC,EAAA6hC,GAEAptI,EAAA4gH,EAAArV,EAAAI,IAAAkV,IAMKnY,EAAA6C,EAAAS,YACLT,EAAAI,IAAA+/B,EAAA7kB,cAAAtb,EAAA1qF,MACA7gB,EAAA4gH,EAAArV,EAAAI,IAAAkV,KAEAtV,EAAAI,IAAA+/B,EAAAt2C,eAAAmW,EAAA1qF,MACA7gB,EAAA4gH,EAAArV,EAAAI,IAAAkV,KAIA,QAAAX,GAAA3U,EAAA6hC,EAAAxsB,EAAAC,GACA,GAAA36H,GAAAqlH,EAAAx5G,IACA,IAAA02G,EAAAviH,GAAA,CACA,GAAAunJ,GAAAhlC,EAAA8C,EAAA6Z,oBAAAl/H,EAAAqjJ,SAQA,IAPA9gC,EAAAviH,IAAA2sH,OAAApK,EAAAviH,IAAAmjJ,OACAnjJ,EAAAqlH,GAAA,EAAAqV,EAAAC,GAMApY,EAAA8C,EAAA6Z,mBAKA,MAJAsoB,GAAAniC,EAAA6hC,GACA1kC,EAAA+kC,IACAE,EAAApiC,EAAA6hC,EAAAxsB,EAAAC,IAEA,GAKA,QAAA6sB,GAAAniC,EAAA6hC,GACA3kC,EAAA8C,EAAAx5G,KAAA67I,iBACAR,EAAAt+I,KAAA2c,MAAA2hI,EAAA7hC,EAAAx5G,KAAA67I,eACAriC,EAAAx5G,KAAA67I,cAAA,MAEAriC,EAAAI,IAAAJ,EAAA6Z,kBAAAlO,IACA22B,EAAAtiC,IACAiiC,EAAAjiC,EAAA6hC,GACAE,EAAA/hC,KAIA4b,GAAA5b,GAEA6hC,EAAAt+I,KAAAy8G,IAIA,QAAAoiC,GAAApiC,EAAA6hC,EAAAxsB,EAAAC,GAOA,IANA,GAAA36H,GAKA4nJ,EAAAviC,EACAuiC,EAAA1oB,mBAEA,GADA0oB,IAAA1oB,kBAAApN,OACAvP,EAAAviH,EAAA4nJ,EAAA/7I,OAAA02G,EAAAviH,IAAAglE,YAAA,CACA,IAAAhlE,EAAA,EAAmBA,EAAAikJ,EAAAyC,SAAApkJ,SAAyBtC,EAC5CikJ,EAAAyC,SAAA1mJ,GAAAkiI,GAAA0lB,EAEAV,GAAAt+I,KAAAg/I,EACA,OAKA9tI,EAAA4gH,EAAArV,EAAAI,IAAAkV,GAGA,QAAA7gH,GAAAyhD,EAAAkqD,EAAAoiC,GACAtlC,EAAAhnD,KACAgnD,EAAAslC,GACAA,EAAAlwD,aAAAp8B,GACAiqF,EAAAh7C,aAAAjvC,EAAAkqD,EAAAoiC,GAGArC,EAAA7jD,YAAApmC,EAAAkqD,IAKA,QAAA4hC,GAAAhiC,EAAAlpD,EAAA+qF,GACA,GAAA3/I,MAAAC,QAAA20D,GACA,OAAAn8D,GAAA,EAAqBA,EAAAm8D,EAAA75D,SAAqBtC,EAC1CinJ,EAAA9qF,EAAAn8D,GAAAknJ,EAAA7hC,EAAAI,IAAA,aAEKr5F,GAAAi5F,EAAA1qF,OACL6qH,EAAA7jD,YAAA0jB,EAAAI,IAAA+/B,EAAAt2C,eAAAmW,EAAA1qF,OAIA,QAAAgtH,GAAAtiC,GACA,KAAAA,EAAA6Z,mBACA7Z,IAAA6Z,kBAAApN,MAEA,OAAAvP,GAAA8C,EAAAG,KAGA,QAAA8hC,GAAAjiC,EAAA6hC,GACA,OAAAhP,GAAA,EAAqBA,EAAA+L,EAAA7/I,OAAA9B,SAAyB41I,EAC9C+L,EAAA7/I,OAAA8zI,GAAAhW,GAAA7c,EAEArlH,GAAAqlH,EAAAx5G,KAAA8gH,KACApK,EAAAviH,KACAuiH,EAAAviH,EAAAoE,SAA4BpE,EAAAoE,OAAA89H,GAAA7c,GAC5B9C,EAAAviH,EAAA8Z,SAA4BotI,EAAAt+I,KAAAy8G,IAO5B,QAAA+hC,GAAA/hC,GACA,GAAArlH,EACA,IAAAuiH,EAAAviH,EAAAqlH,EAAAsU,mBACA6rB,EAAAxnD,aAAAqnB,EAAAI,IAAAzlH,EAAA,QAGA,KADA,GAAA8nJ,GAAAziC,EACAyiC,GACAvlC,EAAAviH,EAAA8nJ,EAAAz4F,UAAAkzD,EAAAviH,IAAAsqH,SAAAmP,WACA+rB,EAAAxnD,aAAAqnB,EAAAI,IAAAzlH,EAAA,IAEA8nJ,IAAAvsF,MAIAgnD,GAAAviH,EAAAmuI,KACAnuI,IAAAqlH,EAAAh2D,SACArvD,IAAAqlH,EAAA4K,mBACA1N,EAAAviH,IAAAsqH,SAAAmP,WAEA+rB,EAAAxnD,aAAAqnB,EAAAI,IAAAzlH,EAAA,IAIA,QAAA+nJ,GAAArtB,EAAAC,EAAA1U,EAAA+hC,EAAApmB,EAAAslB,GACA,KAAUc,GAAApmB,IAAoBomB,EAC9Bf,EAAAhhC,EAAA+hC,GAAAd,EAAAxsB,EAAAC,GAIA,QAAAstB,GAAA5iC,GACA,GAAArlH,GAAAwD,EACAqI,EAAAw5G,EAAAx5G,IACA,IAAA02G,EAAA12G,GAEA,IADA02G,EAAAviH,EAAA6L,EAAA8gH,OAAApK,EAAAviH,IAAA6hB,UAAyD7hB,EAAAqlH,GACzDrlH,EAAA,EAAiBA,EAAAikJ,EAAApiI,QAAAvf,SAAwBtC,EAAOikJ,EAAApiI,QAAA7hB,GAAAqlH,EAEhD,IAAA9C,EAAAviH,EAAAqlH,EAAAlpD,UACA,IAAA34D,EAAA,EAAiBA,EAAA6hH,EAAAlpD,SAAA75D,SAA2BkB,EAC5CykJ,EAAA5iC,EAAAlpD,SAAA34D,IAKA,QAAA0kJ,GAAAxtB,EAAAzU,EAAA+hC,EAAApmB,GACA,KAAUomB,GAAApmB,IAAoBomB,EAAA,CAC9B,GAAAG,GAAAliC,EAAA+hC,EACAzlC,GAAA4lC,KACA5lC,EAAA4lC,EAAA3iC,MACA4iC,EAAAD,GACAF,EAAAE,IAEA92I,EAAA82I,EAAA1iC,OAMA,QAAA2iC,GAAA/iC,EAAAkqB,GACA,GAAAhtB,EAAAgtB,IAAAhtB,EAAA8C,EAAAx5G,MAAA,CACA,GAAA7L,GACAsmB,EAAA29H,EAAAznF,OAAAl6D,OAAA,CAaA,KAZAigH,EAAAgtB,GAGAA,EAAAjpH,aAGAipH,EAAAwX,EAAA1hC,EAAAI,IAAAn/F,GAGAi8F,EAAAviH,EAAAqlH,EAAA6Z,oBAAA3c,EAAAviH,IAAA8xH,SAAAvP,EAAAviH,EAAA6L,OACAu8I,EAAApoJ,EAAAuvI,GAEAvvI,EAAA,EAAiBA,EAAAikJ,EAAAznF,OAAAl6D,SAAuBtC,EACxCikJ,EAAAznF,OAAAx8D,GAAAqlH,EAAAkqB,EAEAhtB,GAAAviH,EAAAqlH,EAAAx5G,KAAA8gH,OAAApK,EAAAviH,IAAAw8D,QACAx8D,EAAAqlH,EAAAkqB,GAEAA,QAGAl+H,GAAAg0G,EAAAI,KAIA,QAAA4iC,GAAA3tB,EAAA4tB,EAAAC,EAAArB,EAAAsB,GAgBA,IAfA,GAQAC,GAAAC,EAAAC,EAAAhuB,EARAiuB,EAAA,EACAC,EAAA,EACAC,EAAAR,EAAAhmJ,OAAA,EACAymJ,EAAAT,EAAA,GACAU,EAAAV,EAAAQ,GACAG,EAAAV,EAAAjmJ,OAAA,EACA4mJ,EAAAX,EAAA,GACAY,EAAAZ,EAAAU,GAMAG,GAAAZ,EAEAI,GAAAE,GAAAD,GAAAI,GACA3mC,EAAAymC,GACAA,EAAAT,IAAAM,GACOtmC,EAAA0mC,GACPA,EAAAV,IAAAQ,GACOznB,GAAA0nB,EAAAG,IACPG,EAAAN,EAAAG,EAAAhC,GACA6B,EAAAT,IAAAM,GACAM,EAAAX,IAAAM,IACOxnB,GAAA2nB,EAAAG,IACPE,EAAAL,EAAAG,EAAAjC,GACA8B,EAAAV,IAAAQ,GACAK,EAAAZ,IAAAU,IACO5nB,GAAA0nB,EAAAI,IACPE,EAAAN,EAAAI,EAAAjC,GACAkC,GAAA5D,EAAAh7C,aAAAkwB,EAAAquB,EAAAtjC,IAAA+/B,EAAA1kB,YAAAkoB,EAAAvjC,MACAsjC,EAAAT,IAAAM,GACAO,EAAAZ,IAAAU,IACO5nB,GAAA2nB,EAAAE,IACPG,EAAAL,EAAAE,EAAAhC,GACAkC,GAAA5D,EAAAh7C,aAAAkwB,EAAAsuB,EAAAvjC,IAAAsjC,EAAAtjC,KACAujC,EAAAV,IAAAQ,GACAI,EAAAX,IAAAM,KAEAvmC,EAAAmmC,KAAmCA,EAAA/mB,GAAA4mB,EAAAM,EAAAE,IACnCJ,EAAAnmC,EAAA2mC,EAAA3nE,KACAknE,EAAAS,EAAA3nE,KACA+nE,EAAAJ,EAAAZ,EAAAM,EAAAE,GACAxmC,EAAAomC,GACAzB,EAAAiC,EAAAhC,EAAAxsB,EAAAquB,EAAAtjC,MAEAkjC,EAAAL,EAAAI,GAQArnB,GAAAsnB,EAAAO,IACAG,EAAAV,EAAAO,EAAAhC,GACAoB,EAAAI,OAAA95H,GACAw6H,GAAA5D,EAAAh7C,aAAAkwB,EAAAiuB,EAAAljC,IAAAsjC,EAAAtjC,MAGAwhC,EAAAiC,EAAAhC,EAAAxsB,EAAAquB,EAAAtjC,MAGAyjC,EAAAX,IAAAM,GAGAD,GAAAE,GACAnuB,EAAArY,EAAAimC,EAAAU,EAAA,SAAAV,EAAAU,EAAA,GAAAxjC,IACAsiC,EAAArtB,EAAAC,EAAA4tB,EAAAM,EAAAI,EAAA/B,IACK2B,EAAAI,GACLf,EAAAxtB,EAAA4tB,EAAAM,EAAAE,GAIA,QAAAQ,GAAA/7B,EAAA+6B,EAAA9sD,EAAAswC,GACA,OAAA9rI,GAAAw7F,EAAuBx7F,EAAA8rI,EAAS9rI,IAAA,CAChC,GAAAI,GAAAkoJ,EAAAtoJ,EACA,IAAAuiH,EAAAniH,IAAAihI,GAAA9T,EAAAntH,GAA2C,MAAAJ,IAI3C,QAAAqpJ,GAAAvnB,EAAAzc,EAAA6hC,EAAAsB,GACA,GAAA1mB,IAAAzc,EAAA,CAIA,GAAAI,GAAAJ,EAAAI,IAAAqc,EAAArc,GAEA,IAAAjD,EAAAsf,EAAA7S,oBAMA,YALA1M,EAAA8C,EAAAM,aAAA6I,UACA+6B,EAAAznB,EAAArc,IAAAJ,EAAA6hC,GAEA7hC,EAAA4J,oBAAA,EASA,IAAAzM,EAAA6C,EAAAQ,WACArD,EAAAsf,EAAAjc,WACAR,EAAA9jC,MAAAugD,EAAAvgD,MACAihC,EAAA6C,EAAAU,WAAAvD,EAAA6C,EAAAyS,SAGA,YADAzS,EAAA6Z,kBAAA4C,EAAA5C,kBAIA,IAAAl/H,GACA6L,EAAAw5G,EAAAx5G,IACA02G,GAAA12G,IAAA02G,EAAAviH,EAAA6L,EAAA8gH,OAAApK,EAAAviH,IAAAujJ,WACAvjJ,EAAA8hI,EAAAzc,EAGA,IAAAijC,GAAAxmB,EAAA3lE,SACAgsF,EAAA9iC,EAAAlpD,QACA,IAAAomD,EAAA12G,IAAA87I,EAAAtiC,GAAA,CACA,IAAArlH,EAAA,EAAiBA,EAAAikJ,EAAApgG,OAAAvhD,SAAuBtC,EAAOikJ,EAAApgG,OAAA7jD,GAAA8hI,EAAAzc,EAC/C9C,GAAAviH,EAAA6L,EAAA8gH,OAAApK,EAAAviH,IAAA6jD,SAAwD7jD,EAAA8hI,EAAAzc,GAExD/C,EAAA+C,EAAA1qF,MACA4nF,EAAA+lC,IAAA/lC,EAAA4lC,GACAG,IAAAH,GAA2BE,EAAA5iC,EAAA6iC,EAAAH,EAAAjB,EAAAsB,GACpBjmC,EAAA4lC,IACP5lC,EAAAuf,EAAAnnG,OAAmC6qH,EAAAzkB,eAAAtb,EAAA,IACnCsiC,EAAAtiC,EAAA,KAAA0iC,EAAA,EAAAA,EAAA7lJ,OAAA,EAAA4kJ,IACO3kC,EAAA+lC,GACPJ,EAAAziC,EAAA6iC,EAAA,EAAAA,EAAAhmJ,OAAA,GACOigH,EAAAuf,EAAAnnG,OACP6qH,EAAAzkB,eAAAtb,EAAA,IAEKqc,EAAAnnG,OAAA0qF,EAAA1qF,MACL6qH,EAAAzkB,eAAAtb,EAAAJ,EAAA1qF,MAEA4nF,EAAA12G,IACA02G,EAAAviH,EAAA6L,EAAA8gH,OAAApK,EAAAviH,IAAAwpJ,YAA2DxpJ,EAAA8hI,EAAAzc,IAI3D,QAAAokC,GAAApkC,EAAAzgG,EAAAuD,GAGA,GAAAq6F,EAAAr6F,IAAAo6F,EAAA8C,EAAA9pD,QACA8pD,EAAA9pD,OAAA1vD,KAAA67I,cAAA9iI,MAEA,QAAA5kB,GAAA,EAAqBA,EAAA4kB,EAAAtiB,SAAkBtC,EACvC4kB,EAAA5kB,GAAA6L,KAAA8gH,KAAA7yG,OAAA8K,EAAA5kB,IAWA,QAAAupJ,GAAA9jC,EAAAJ,EAAA6hC,GACA,GAAA1kC,EAAA6C,EAAAS,YAAAvD,EAAA8C,EAAAM,cAGA,MAFAN,GAAAI,MACAJ,EAAA4J,oBAAA,GACA,CAOA5J,GAAAI,KACA,IAAAD,GAAAH,EAAAG,IACA35G,EAAAw5G,EAAAx5G,KACAswD,EAAAkpD,EAAAlpD,QACA,IAAAomD,EAAA12G,KACA02G,EAAAviH,EAAA6L,EAAA8gH,OAAApK,EAAAviH,IAAAmjJ,OAAsDnjJ,EAAAqlH,GAAA,GACtD9C,EAAAviH,EAAAqlH,EAAA6Z,oBAGA,MADAsoB,GAAAniC,EAAA6hC,IACA,CAGA,IAAA3kC,EAAAiD,GAAA,CACA,GAAAjD,EAAApmD,GAEA,GAAAspD,EAAAikC,gBAIA,GAAAnnC,EAAAviH,EAAA6L,IAAA02G,EAAAviH,IAAAo3H,WAAA7U,EAAAviH,IAAA48F,YACA,GAAA58F,IAAAylH,EAAA7oB,UAWA,aAEW,CAIX,OAFA+sD,IAAA,EACAtqB,EAAA5Z,EAAAhb,WACAytC,EAAA,EAA6BA,EAAA/7E,EAAA75D,OAAuB41I,IAAA,CACpD,IAAA7Y,IAAAkqB,EAAAlqB,EAAAljE,EAAA+7E,GAAAgP,GAAA,CACAyC,GAAA,CACA,OAEAtqB,IAAAyB,YAIA,IAAA6oB,GAAAtqB,EAUA,aAxCAgoB,GAAAhiC,EAAAlpD,EAAA+qF,EA6CA,IAAA3kC,EAAA12G,GACA,OAAA01E,KAAA11E,GACA,IAAA+9I,EAAAroE,GAAA,CACA+lE,EAAAjiC,EAAA6hC,EACA,YAIKzhC,GAAA55G,OAAAw5G,EAAA1qF,OACL8qF,EAAA55G,KAAAw5G,EAAA1qF,KAEA,UAphBA,GAAA36B,GAAAwD,EACAygJ,KAEAvkJ,EAAAmnJ,EAAAnnJ,QACA8lJ,EAAAqB,EAAArB,OAEA,KAAAxlJ,EAAA,EAAaA,EAAA6qH,GAAAvoH,SAAkBtC,EAE/B,IADAikJ,EAAAp5B,GAAA7qH,OACAwD,EAAA,EAAeA,EAAA9D,EAAA4C,SAAoBkB,EACnC++G,EAAA7iH,EAAA8D,GAAAqnH,GAAA7qH,MACAikJ,EAAAp5B,GAAA7qH,IAAA4I,KAAAlJ,EAAA8D,GAAAqnH,GAAA7qH,IA2BA,IAyZA4pJ,GAAA5mC,EAAA,gDAoGA,iBAAA8e,EAAAzc,EAAA0L,EAAAy3B,EAAA9tB,EAAAC,GACA,GAAArY,EAAA+C,GAEA,YADA9C,EAAAuf,IAA4BmmB,EAAAnmB,GAI5B,IAAA+nB,IAAA,EACA3C,IAEA,IAAA5kC,EAAAwf,GAEA+nB,GAAA,EACA5C,EAAA5hC,EAAA6hC,EAAAxsB,EAAAC,OACK,CACL,GAAAmvB,GAAAvnC,EAAAuf,EAAAuL,SACA,KAAAyc,GAAAzoB,GAAAS,EAAAzc,GAEAgkC,EAAAvnB,EAAAzc,EAAA6hC,EAAAsB,OACO,CACP,GAAAsB,EAAA,CAQA,GAJA,IAAAhoB,EAAAuL,UAAAvL,EAAAioB,aAAA5J,MACAre,EAAA+B,gBAAAsc,IACApvB,GAAA,GAEAvO,EAAAuO,IACAw4B,EAAAznB,EAAAzc,EAAA6hC,GAEA,MADAuC,GAAApkC,EAAA6hC,GAAA,GACAplB,CAaAA,GAAAglB,EAAAhlB,GAGA,GAAAkoB,GAAAloB,EAAArc,IACAwkC,EAAAzE,EAAA7tD,WAAAqyD,EAWA,IAVA/C,EACA5hC,EACA6hC,EAIA8C,EAAA9c,SAAA,KAAA+c,EACAzE,EAAA1kB,YAAAkpB,IAGAznC,EAAA8C,EAAA9pD,QAKA,IAFA,GAAAusF,GAAAziC,EAAA9pD,OACA2uF,EAAAvC,EAAAtiC,GACAyiC,GAAA,CACA,OAAA9nJ,GAAA,EAA2BA,EAAAikJ,EAAApiI,QAAAvf,SAAwBtC,EACnDikJ,EAAApiI,QAAA7hB,GAAA8nJ,EAGA,IADAA,EAAAriC,IAAAJ,EAAAI,IACAykC,EAAA,CACA,OAAAhS,GAAA,EAA+BA,EAAA+L,EAAA7/I,OAAA9B,SAAyB41I,EACxD+L,EAAA7/I,OAAA8zI,GAAAhW,GAAA4lB,EAKA,IAAAhuI,GAAAguI,EAAAj8I,KAAA8gH,KAAA7yG,MACA,IAAAA,EAAAgzG,OAEA,OAAAq9B,GAAA,EAAiCA,EAAArwI,EAAAiyG,IAAAzpH,OAAyB6nJ,IAC1DrwI,EAAAiyG,IAAAo+B,SAIAlpB,IAAA6mB,EAEAA,KAAAvsF,OAIAgnD,EAAA0nC,GACA/B,EAAA+B,GAAAnoB,GAAA,KACSvf,EAAAuf,EAAAtc,MACTyiC,EAAAnmB,IAMA,MADA2nB,GAAApkC,EAAA6hC,EAAA2C,GACAxkC,EAAAI,OA0oDiC+/B,WAAA9lJ,YAQjC4jI,KAEAj5H,SAAAu2D,iBAAA,6BACA,GAAAwhD,GAAA/3G,SAAAu/H,aACAxnB,MAAAgoC,QACAxZ,GAAAxuB,EAAA,UAKA,IAAAioC,KACAznB,SAAA,SAAAxgB,EAAA77F,EAAA8+F,GACA,WAAAA,EAAAG,KACA2qB,GAAA/tB,EAAA77F,EAAA8+F,EAAAh2D,SACA+yD,EAAAkoC,aAAAv2I,IAAA7T,KAAAkiH,EAAAnsG,QAAAs6H,MACK,aAAAlrB,EAAAG,KAAAic,GAAArf,EAAAj0G,SACLi0G,EAAAynB,YAAAtjH,EAAAu8G,UACAv8G,EAAAu8G,UAAAoF,OAKA9lB,EAAAxhD,iBAAA,SAAA+vE,IACAmQ,KACA1+B,EAAAxhD,iBAAA,mBAAA8vE,IACAtuB,EAAAxhD,iBAAA,iBAAA+vE,KAGArN,KACAlhB,EAAAgoC,QAAA,MAKAznB,iBAAA,SAAAvgB,EAAA77F,EAAA8+F,GACA,cAAAA,EAAAG,IAAA,CACA2qB,GAAA/tB,EAAA77F,EAAA8+F,EAAAh2D,QAKA,IAAAk7F,GAAAnoC,EAAAkoC,UACAE,EAAApoC,EAAAkoC,aAAAv2I,IAAA7T,KAAAkiH,EAAAnsG,QAAAs6H,GACA,IAAAia,EAAAjtI,KAAA,SAAA/c,EAAAR,GAA2C,OAAA+jH,EAAAvjH,EAAA+pJ,EAAAvqJ,MAAyC,EAGpFoiH,EAAAme,SACAh6G,EAAA1V,MAAA0M,KAAA,SAAAxa,GAA6C,MAAA0tI,IAAA1tI,EAAAynJ,KAC7CjkI,EAAA1V,QAAA0V,EAAAk8G,UAAAgO,GAAAlqH,EAAA1V,MAAA25I,KAEA5Z,GAAAxuB,EAAA,cAsFA8sB,IACAxxH,KAAA,SAAA0kG,EAAAl5G,EAAAm8G,GACA,GAAAx0G,GAAA3H,EAAA2H,KAEAw0G,GAAA2rB,GAAA3rB,EACA,IAAAolC,GAAAplC,EAAAx5G,MAAAw5G,EAAAx5G,KAAAm5D,WACA0lF,EAAAtoC,EAAAuoC,mBACA,SAAAvoC,EAAAjqE,MAAAqlD,QAAA,GAAA4kB,EAAAjqE,MAAAqlD,OACA3sF,IAAA45I,GACAplC,EAAAx5G,KAAAqjI,MAAA,EACAlC,GAAA3nB,EAAA,WACAjD,EAAAjqE,MAAAqlD,QAAAktD,KAGAtoC,EAAAjqE,MAAAqlD,QAAA3sF,EAAA65I,EAAA,QAIA7mG,OAAA,SAAAu+D,EAAAl5G,EAAAm8G,GACA,GAAAx0G,GAAA3H,EAAA2H,KAIAA,KAHA3H,EAAAu5H,WAIApd,EAAA2rB,GAAA3rB,GACAA,EAAAx5G,MAAAw5G,EAAAx5G,KAAAm5D,YAEAqgD,EAAAx5G,KAAAqjI,MAAA,EACAr+H,EACAm8H,GAAA3nB,EAAA,WACAjD,EAAAjqE,MAAAqlD,QAAA4kB,EAAAuoC,qBAGArb,GAAAjqB,EAAA,WACAjD,EAAAjqE,MAAAqlD,QAAA,UAIA4kB,EAAAjqE,MAAAqlD,QAAA3sF,EAAAuxG,EAAAuoC,mBAAA,SAIApiG,OAAA,SACA65D,EACA77F,EACA8+F,EACAyc,EACAK,GAEAA,IACA/f,EAAAjqE,MAAAqlD,QAAA4kB,EAAAuoC,sBAKAC,IACAxwB,MAAAiwB,GACAnb,SAQA2b,IACAvqJ,KAAA+gB,OACA2sH,OAAA5rH,QACA2oH,IAAA3oH,QACA0oI,KAAAzpI,OACAlT,KAAAkT,OACAisH,WAAAjsH,OACAquH,WAAAruH,OACAksH,aAAAlsH,OACAuuH,aAAAvuH,OACAmsH,iBAAAnsH,OACAsuH,iBAAAtuH,OACAosH,YAAApsH,OACAssH,kBAAAtsH,OACAqsH,cAAArsH,OACAumC,UAAA96B,OAAAzL,OAAA5gB,SAkDAsqJ,IACAzqJ,KAAA,aACAgoH,MAAAuiC,GACAx6B,UAAA,EAEA5oE,OAAA,SAAAxkD,GACA,GAAA+/I,GAAAzhJ,KAEA46D,EAAA56D,KAAA+oH,SAAAmH,eACA,IAAAt1D,IAKAA,IAAA/+C,OAAA,SAAAhd,GAA6C,MAAAA,GAAAolH,KAAAyJ,GAAA7uH,KAE7C+7D,EAAA75D,QAAA,CAaA,GAAAwoJ,GAAAvpJ,KAAAupJ,KAYAxZ,EAAAn1E,EAAA,EAIA,IAAAo1E,GAAAhwI,KAAA6vH,QACA,MAAAkgB,EAKA,IAAAvoB,GAAAkoB,GAAAK,EAEA,KAAAvoB,EACA,MAAAuoB,EAGA,IAAA/vI,KAAAypJ,SACA,MAAA3Z,IAAApuI,EAAAquI,EAMA,IAAAppI,GAAA,gBAAA3G,KAAA,QACAwnH,GAAAxnC,IAAA,MAAAwnC,EAAAxnC,IACAwnC,EAAAjD,UACA59G,EAAA,UACAA,EAAA6gH,EAAAvD,IACAp5F,EAAA28F,EAAAxnC,KACA,IAAAlgE,OAAA0nG,EAAAxnC,KAAAn2E,QAAAlD,GAAA6gH,EAAAxnC,IAAAr5E,EAAA6gH,EAAAxnC,IACAwnC,EAAAxnC,GAEA,IAAA11E,IAAAk9G,EAAAl9G,OAAAk9G,EAAAl9G,UAA8Cm5D,WAAAmsE,GAAA5vI,MAC9C0pJ,EAAA1pJ,KAAAuwH,OACA2f,EAAAR,GAAAga,EAQA,IAJAliC,EAAAl9G,KAAAg9G,YAAAE,EAAAl9G,KAAAg9G,WAAAtrG,KAAA,SAAAld,GAA0E,eAAAA,EAAAC,SAC1EyoH,EAAAl9G,KAAAqjI,MAAA,GAIAuC,GACAA,EAAA5lI,OACA2lI,GAAAzoB,EAAA0oB,KACAxiB,GAAAwiB,GACA,CAGA,GAAAvN,GAAAuN,EAAA5lI,KAAAm5D,WAAA9uD,KAAwDrK,EAExD,eAAAi/I,EAOA,MALAvpJ,MAAAypJ,UAAA,EACAv+B,GAAAyX,EAAA,wBACA8e,EAAAgI,UAAA,EACAhI,EAAAn0B,iBAEAwiB,GAAApuI,EAAAquI,EACO,eAAAwZ,EAAA,CACP,GAAA77B,GAAAlG,GACA,MAAAkiC,EAEA,IAAAC,GACA1b,EAAA,WAAwC0b,IACxCz+B,IAAA5gH,EAAA,aAAA2jI,GACA/iB,GAAA5gH,EAAA,iBAAA2jI,GACA/iB,GAAAyX,EAAA,sBAAAoL,GAAgE4b,EAAA5b,KAIhE,MAAAgC,MAiBAhpB,GAAApyG,GACAsvG,IAAAnkG,OACA8pI,UAAA9pI,QACCwpI,UAEDviC,IAAAwiC,IAEA,IAAAM,KACA9iC,SAEA7gE,OAAA,SAAAxkD,GAQA,OAPAuiH,GAAAjkH,KAAAikH,KAAAjkH,KAAA6vH,OAAAvlH,KAAA25G,KAAA,OACAzxG,EAAAtT,OAAA2D,OAAA,MACAinJ,EAAA9pJ,KAAA8pJ,aAAA9pJ,KAAA46D,SACAmvF,EAAA/pJ,KAAA4wH,OAAAphG,YACAorC,EAAA56D,KAAA46D,YACAovF,EAAApa,GAAA5vI,MAEAvB,EAAA,EAAmBA,EAAAsrJ,EAAAhpJ,OAAwBtC,IAAA,CAC3C,GAAAI,GAAAkrJ,EAAAtrJ,EACA,IAAAI,EAAAolH,IACA,SAAAplH,EAAAmhF,KAAA,IAAAlgE,OAAAjhB,EAAAmhF,KAAAn2E,QAAA,WACA+wD,EAAAvzD,KAAAxI,GACA2T,EAAA3T,EAAAmhF,KAAAnhF,GACWA,EAAAyL,OAAAzL,EAAAyL,UAAuBm5D,WAAAumF,QASlC,GAAAF,EAAA,CAGA,OAFAG,MACAC,KACAvT,EAAA,EAAuBA,EAAAmT,EAAA/oJ,OAA2B41I,IAAA,CAClD,GAAAwT,GAAAL,EAAAnT,EACAwT,GAAA7/I,KAAAm5D,WAAAumF,EACAG,EAAA7/I,KAAAiC,IAAA49I,EAAAjmC,IAAAlR,wBACAxgG,EAAA23I,EAAAnqE,KACAiqE,EAAA5iJ,KAAA8iJ,GAEAD,EAAA7iJ,KAAA8iJ,GAGAnqJ,KAAAiqJ,KAAAvoJ,EAAAuiH,EAAA,KAAAgmC,GACAjqJ,KAAAkqJ,UAGA,MAAAxoJ,GAAAuiH,EAAA,KAAArpD,IAGAwvF,aAAA,WAEApqJ,KAAA8iJ,UACA9iJ,KAAAuwH,OACAvwH,KAAAiqJ,MACA,GACA,GAEAjqJ,KAAAuwH,OAAAvwH,KAAAiqJ,MAGAI,QAAA,WACA,GAAAzvF,GAAA56D,KAAA8pJ,aACAF,EAAA5pJ,KAAA4pJ,YAAA5pJ,KAAAjB,MAAA,YACA67D,GAAA75D,QAAAf,KAAAsqJ,QAAA1vF,EAAA,GAAAspD,IAAA0lC,KAMAhvF,EAAA9+C,QAAAq0H,IACAv1E,EAAA9+C,QAAAu0H,IACAz1E,EAAA9+C,QAAAy0H,IAKAvwI,KAAAuqJ,QAAAzhJ,SAAA0hJ,KAAA3/C,aAEAjwC,EAAA9+C,QAAA,SAAAjd,GACA,GAAAA,EAAAyL,KAAAmmI,MAAA,CACA,GAAA5vB,GAAAhiH,EAAAqlH,IACApkH,EAAA+gH,EAAAjqE,KACAgzF,IAAA/oB,EAAA+oC,GACA9pJ,EAAAoW,UAAApW,EAAA4wI,gBAAA5wI,EAAA6wI,mBAAA,GACA9vB,EAAAxhD,iBAAA+qE,GAAAvpB,EAAAuvB,QAAA,QAAAlmB,GAAA/pH,GACAA,IAAA,aAAAgsB,KAAAhsB,EAAAsqJ,gBACA5pC,EAAA3kB,oBAAAkuC,GAAAlgB,GACArJ,EAAAuvB,QAAA,KACAtG,GAAAjpB,EAAA+oC,WAOAj3B,SACA23B,QAAA,SAAAzpC,EAAA+oC,GAEA,IAAA9E,GACA,QAGA,IAAA9kJ,KAAA0qJ,SACA,MAAA1qJ,MAAA0qJ,QAOA,IAAA7mJ,GAAAg9G,EAAA49B,WACA59B,GAAAiiB,oBACAjiB,EAAAiiB,mBAAAhnH,QAAA,SAAA8mH,GAAsDt5B,GAAAzlG,EAAA++H,KAEtDx5B,GAAAvlG,EAAA+lJ,GACA/lJ,EAAA+yC,MAAAqlD,QAAA,OACAj8F,KAAAyvH,IAAArvB,YAAAv8F,EACA,IAAAslH,GAAA8gB,GAAApmI,EAEA,OADA7D,MAAAyvH,IAAAtoB,YAAAtjG,GACA7D,KAAA0qJ,SAAAvhC,EAAAiiB,gBAiCAuf,IACAnB,cACAK,mBAMAluB,IAAA1uF,OAAA2oF,eACA+F,GAAA1uF,OAAAutF,iBACAmB,GAAA1uF,OAAAkyG,kBACAxjB,GAAA1uF,OAAAstF,mBACAoB,GAAA1uF,OAAAwxF,oBAGA9pH,EAAAgnH,GAAAjnH,QAAA4yG,WAAA+hC,IACA10I,EAAAgnH,GAAAjnH,QAAAkd,WAAA+4H,IAGAhvB,GAAAh8H,UAAAmjJ,UAAAn5B,GAAA07B,GAAAzhI,EAGA+3G,GAAAh8H,UAAAkiJ,OAAA,SACAhhC,EACA2O,GAGA,MADA3O,MAAA8I,GAAA9wG,GAAAgoG,OAAAxzF,GACAkiG,GAAAvvH,KAAA6gH,EAAA2O,IAKAmM,GAAA73G,SAAA,WACAmpB,GAAA2kF,UACAA,IACAA,GAAAhtG,KAAA,OAAA+2G,KAkBC,EAaD,IAiIAivB,IAjIApZ,KAAA7nB,IARA,SAAAkhC,EAAAC,GACA,GAAAtmJ,GAAAsE,SAAAC,cAAA,MAEA,OADAvE,GAAA62F,UAAA,WAAAwvD,EAAA,MACArmJ,EAAA62F,UAAAxxF,QAAAihJ,GAAA,GAKA,cAIA9Z,GAAA,wBACA+Z,GAAA,yBAEAha,GAAA/uB,EAAA,SAAA6uB,GACA,GAAAhiC,GAAAgiC,EAAA,GAAA1mH,QAAA4gI,GAAA,QACAC,EAAAna,EAAA,GAAA1mH,QAAA4gI,GAAA,OACA,WAAAnhI,QAAAilF,EAAA,gBAAAm8C,EAAA,OAmEAC,IACAxR,YAAA,eACAxI,iBACAE,YAyCA+Z,IACAzR,YAAA,eACAxI,cAAAG,GACAD,QAAAG,IAOA6Z,IACApqH,OAAA,SAAA8wG,GAGA,MAFA+Y,QAAA9hJ,SAAAC,cAAA,OACA6hJ,GAAAvvD,UAAAw2C,EACA+Y,GAAAnrB,cAMA2S,GAAA3wB,EACA,6FAMA8wB,GAAA9wB,EACA,2DAKAwyB,GAAAxyB,EACA,mSAmBAsyB,GAAA,4EAGAqX,GAAA,wBACAC,GAAA,OAAAD,GAAA,QAAAA,GAAA,IACAxX,GAAA,GAAAhqH,QAAA,KAAAyhI,IACAvX,GAAA,aACAhB,GAAA,GAAAlpH,QAAA,QAAAyhI,GAAA,UACA7X,GAAA,qBACAN,GAAA,QACAG,GAAA,QAEAc,IAAA,CACA,KAAAhqH,QAAA,kBAAAvrB,EAAAmB,GACAo0I,GAAA,KAAAp0I,GAIA,IAkSA80I,IACAhE,GACAoE,GACAC,GACAC,GACAR,GACAI,GACAC,GAysBAuE,GACAG,GAn/BAlH,GAAA/wB,EAAA,4BACAmxB,MAEAjB,IACA2Z,OAAO,IACPC,OAAO,IACPC,SAAS,IACTC,QAAQ,IACRC,QAAQ,MAERha,GAAA,wBACAD,GAAA,4BAGAka,GAAAlqC,EAAA,mBACAsxB,GAAA,SAAA9uB,EAAA4tB,GAAqD,MAAA5tB,IAAA0nC,GAAA1nC,IAAA,OAAA4tB,EAAA,IAuQrD2G,GAAA,YACAN,GAAA,YACAZ,GAAA,2BACAI,GAAA,6CAEAgB,GAAA,SACAJ,GAAA,cACAD,GAAA,WAEAvB,GAAA90B,EAAAmpC,GAAApqH,QAmkBA43G,GAAA,eACAC,GAAA,UA8FAgT,IACA/S,qBAGAgT,IACAZ,GACAC,GACAU,IAmBAE,IACAjzB,SACAz/F,QACAy4G,SAKAka,IACA7Z,YAAA,EACA/zI,QAAA0tJ,GACAvkC,WAAAwkC,GACAhX,YACA1C,cACAxc,eACA2c,oBACA/X,iBACAD,mBACAkf,WA5/RA,SAAAt7I,GACA,MAAAA,GAAA8d,OAAA,SAAA5D,EAAAzZ,GACA,MAAAyZ,GAAArR,OAAApI,EAAA66I,qBACGvqI,KAAA,MAy/RH28I,KAQArS,GAAAx3B,EAAA63B,IA4HAY,GAAA,+CACAF,GAAA,+FAGAhlB,IACAy2B,IAAA,GACAC,IAAA,EACAxgB,MAAA,GACAygB,MAAA,GACAC,GAAA,GACA5rG,KAAA,GACAy3B,MAAA,GACAo0E,KAAA,GACA1I,QAAA,OAMA9I,GAAA,SAAA9C,GAAqC,YAAAA,EAAA,iBAErC6C,IACAj+E,KAAA,4BACA2vF,QAAA,2BACAz+H,KAAAgtH,GAAA,0CACA0R,KAAA1R,GAAA,mBACAxqD,MAAAwqD,GAAA,oBACA2R,IAAA3R,GAAA,kBACA4R,KAAA5R,GAAA,mBACAr6F,KAAAq6F,GAAA,6CACAlxI,OAAAkxI,GAAA,6CACA5iE,MAAA4iE,GAAA,8CAyHA6R,IACAnoI,MACAnI,KAAA++H,GACAwR,MAAA9oI,GAKA03H,GAAA,SAAA5mI,GACA1U,KAAA0U,UACA1U,KAAA2jE,KAAAjvD,EAAAivD,MAAAkgE,GACA7jI,KAAAi1I,WAAAlR,GAAArvH,EAAAvW,QAAA,iBACA6B,KAAA48I,WAAA7Y,GAAArvH,EAAAvW,QAAA,WACA6B,KAAAsnH,WAAA3yG,OAAoC83I,IAAA/3I,EAAA4yG,WACpC,IAAAkT,GAAA9lH,EAAA8lH,eAAA6X,EACAryI,MAAA29I,eAAA,SAAA98B,GAAuC,OAAA2Z,EAAA3Z,EAAAoD,MACvCjkH,KAAAo8I,OAAA,EACAp8I,KAAAk2H,oBA8qBAy2B,IA3PA,GAAA/iI,QAAA,uMAIAW,MAAA,KAAArb,KAAA,kBAGA,GAAA0a,QAAA,2BAEAW,MAAA,KAAArb,KAAA,8CA2LA,SAAA09I,GACA,gBAAAb,GACA,QAAA5nF,GACAowE,EACA7/H,GAEA,GAAAm4I,GAAA3tJ,OAAA2D,OAAAkpJ,GACA5N,KACA2O,IAKA,IAJAD,EAAAlpF,KAAA,SAAAmgE,EAAAipB,IACAA,EAAAD,EAAA3O,GAAA92I,KAAAy8H,IAGApvH,EAAA,CAEAA,EAAAvW,UACA0uJ,EAAA1uJ,SACA4tJ,EAAA5tJ,aAAA6I,OAAA0N,EAAAvW,UAGAuW,EAAA4yG,aACAulC,EAAAvlC,WAAA3yG,EACAzV,OAAA2D,OAAAkpJ,EAAAzkC,YACA5yG,EAAA4yG,YAIA,QAAAtnC,KAAAtrE,GACA,YAAAsrE,GAAA,eAAAA,IACA6sE,EAAA7sE,GAAAtrE,EAAAsrE,IAKA,GAAAq+D,GAAAuO,EAAArY,EAAAsY,EAMA,OAFAxO,GAAAF,SACAE,EAAAyO,OACAzO,EAGA,OACAl6E,UACA6oF,mBAAA5O,GAAAj6E,MAUA,SACAowE,EACA7/H,GAEA,GAAA2mI,GAAAhpF,GAAAkiF,EAAA5gD,OAAAj/E,EACA4kI,IAAA+B,EAAA3mI,EACA,IAAA5T,GAAAs6I,GAAAC,EAAA3mI,EACA,QACA2mI,MACAn1F,OAAAplD,EAAAolD,OACAgwE,gBAAAp1H,EAAAo1H,oBAMA9kG,GAAAu7H,GAAAZ,IACAiB,GAAA57H,GAAA47H,mBAIAC,GAAAjrC,EAAA,SAAAr7G,GACA,GAAAk6G,GAAAhoG,GAAAlS,EACA,OAAAk6G,MAAAxlB,YAGA6xD,GAAAvxB,GAAAh8H,UAAAkiJ,MACAlmB,IAAAh8H,UAAAkiJ,OAAA,SACAhhC,EACA2O,GAKA,IAHA3O,KAAAhoG,GAAAgoG,MAGA/3G,SAAA0hJ,MAAA3pC,IAAA/3G,SAAA6pG,gBAIA,MAAA3yG,KAGA,IAAA0U,GAAA1U,KAAA+oH,QAEA,KAAAr0G,EAAAwxC,OAAA,CACA,GAAAquF,GAAA7/H,EAAA6/H,QACA,IAAAA,EACA,oBAAAA,GACA,MAAAA,EAAA95G,OAAA,KACA85G,EAAA0Y,GAAA1Y,QASO,KAAAA,EAAAzI,SAMP,MAAA9rI,KALAu0I,KAAAl5C,cAOKwlB,KACL0zB,EAAAgK,GAAA19B,GAEA,IAAA0zB,EAAA,CAMA,GAAA5sI,GAAAqlJ,GAAAzY,GACA/C,wBACAX,WAAAn8H,EAAAm8H,WACA0E,SAAA7gI,EAAA6gI,UACOv1I,MACPkmD,EAAAv+C,EAAAu+C,OACAgwE,EAAAvuH,EAAAuuH,eACAxhH,GAAAwxC,SACAxxC,EAAAwhH,mBASA,MAAAg3B,IAAAvuJ,KAAAqB,KAAA6gH,EAAA2O,IAiBAmM,GAAAx3D,QAAA6oF,GAEAxsC,EAAA,OLujB6B7hH,KAAK6hH,EAAqBpiH,EAAoB,GAAIA,EAAoB,GAAG0iH,eAIhG,SAAUtiH,EAAQD,EAASH,GMx2VjC,QAAA+uJ,GAAAxmJ,EAAAymJ,GACAptJ,KAAAqtJ,IAAA1mJ,EACA3G,KAAAstJ,SAAAF,EAnBA,GAAAppI,GAAA/jB,SAAAN,UAAAqkB,KAIAzlB,GAAAukB,WAAA,WACA,UAAAqqI,GAAAnpI,EAAArlB,KAAAmkB,WAAA1iB,OAAA2jB,WAAAd,eAEA1kB,EAAAgvJ,YAAA,WACA,UAAAJ,GAAAnpI,EAAArlB,KAAA4uJ,YAAAntJ,OAAA2jB,WAAAypI,gBAEAjvJ,EAAA0kB,aACA1kB,EAAAivJ,cAAA,SAAArvD,GACAA,GACAA,EAAA6sD,SAQAmC,EAAAxtJ,UAAAuI,MAAAilJ,EAAAxtJ,UAAAgI,IAAA,aACAwlJ,EAAAxtJ,UAAAqrJ,MAAA,WACAhrJ,KAAAstJ,SAAA3uJ,KAAAyB,OAAAJ,KAAAqtJ,MAIA9uJ,EAAAkvJ,OAAA,SAAA3rC,EAAA4rC,GACAzqI,aAAA6+F,EAAA6rC,gBACA7rC,EAAA8rC,aAAAF,GAGAnvJ,EAAAsvJ,SAAA,SAAA/rC,GACA7+F,aAAA6+F,EAAA6rC,gBACA7rC,EAAA8rC,cAAA,GAGArvJ,EAAAuvJ,aAAAvvJ,EAAA4hH,OAAA,SAAA2B,GACA7+F,aAAA6+F,EAAA6rC,eAEA,IAAAD,GAAA5rC,EAAA8rC,YACAF,IAAA,IACA5rC,EAAA6rC,eAAA7qI,WAAA,WACAg/F,EAAAjc,YACAic,EAAAjc,cACK6nD,KAKLtvJ,EAAA,GACAG,EAAAuiH,0BACAviH,EAAAwvJ,+BNg4VM,SAAUvvJ,EAAQD,EAASH,IOp7VjC,SAAAiC,EAAAwjB,IAAA,SAAAxjB,EAAAgtB,GACA,YAYA,SAAAyzF,GAAAh/D,GAEA,mBAAAA,KACAA,EAAA,GAAA7hD,UAAA,GAAA6hD,GAIA,QADAogB,GAAA,GAAAl8D,OAAA+d,UAAAhjB,OAAA,GACAtC,EAAA,EAAqBA,EAAAyjE,EAAAnhE,OAAiBtC,IACtCyjE,EAAAzjE,GAAAslB,UAAAtlB,EAAA,EAGA,IAAAuvJ,IAAkBlsG,WAAAogB,OAGlB,OAFA+rF,GAAAC,GAAAF,EACAG,EAAAD,GACAA,IAGA,QAAAH,GAAAK,SACAH,GAAAG,GAGA,QAAA5qI,GAAAwqI,GACA,GAAAlsG,GAAAksG,EAAAlsG,SACAogB,EAAA8rF,EAAA9rF,IACA,QAAAA,EAAAnhE,QACA,OACA+gD,GACA,MACA,QACAA,EAAAogB,EAAA,GACA,MACA,QACApgB,EAAAogB,EAAA,GAAAA,EAAA,GACA,MACA,QACApgB,EAAAogB,EAAA,GAAAA,EAAA,GAAAA,EAAA,GACA,MACA,SACApgB,EAAA99B,MAAAqJ,EAAA60C,IAKA,QAAAmsF,GAAAD,GAGA,GAAAE,EAGAxrI,WAAAurI,EAAA,EAAAD,OACS,CACT,GAAAJ,GAAAC,EAAAG,EACA,IAAAJ,EAAA,CACAM,GAAA,CACA,KACA9qI,EAAAwqI,GACiB,QACjBD,EAAAK,GACAE,GAAA,KApEA,IAAAjuJ,EAAAygH,aAAA,CAIA,GAIAqtC,GAJAD,EAAA,EACAD,KACAK,GAAA,EACAC,EAAAluJ,EAAAyI,SAoJA0lJ,EAAAtvJ,OAAAkd,gBAAAld,OAAAkd,eAAA/b,EACAmuJ,QAAA1rI,WAAA0rI,EAAAnuJ,EAGU,wBAAAwpB,SAAAlrB,KAAA0B,EAAAwjB,SArFV,WACAsqI,EAAA,SAAAC,GACAvqI,EAAAC,SAAA,WAA0CuqI,EAAAD,SAI1C,WAGA,GAAA/tJ,EAAAiuG,cAAAjuG,EAAAkgE,cAAA,CACA,GAAAkuF,IAAA,EACAC,EAAAruJ,EAAA2gJ,SAMA,OALA3gJ,GAAA2gJ,UAAA,WACAyN,GAAA,GAEApuJ,EAAAiuG,YAAA,QACAjuG,EAAA2gJ,UAAA0N,EACAD,MAIA,WAKA,GAAAE,GAAA,gBAAAttJ,KAAAouB,SAAA,IACAm/H,EAAA,SAAA7jC,GACAA,EAAA90G,SAAA5V,GACA,iBAAA0qH,GAAAzgH,MACA,IAAAygH,EAAAzgH,KAAAT,QAAA8kJ,IACAN,GAAAtjC,EAAAzgH,KAAAwO,MAAA61I,EAAA5tJ,SAIAV,GAAAg/D,iBACAh/D,EAAAg/D,iBAAA,UAAAuvF,GAAA,GAEAvuJ,EAAAwuJ,YAAA,YAAAD,GAGAT,EAAA,SAAAC,GACA/tJ,EAAAiuG,YAAAqgD,EAAAP,EAAA,SAmDK/tJ,EAAAsgJ,eA/CL,WACA,GAAAC,GAAA,GAAAD,eACAC,GAAAG,MAAAC,UAAA,SAAAj2B,GAEAsjC,EADAtjC,EAAAzgH,OAIA6jJ,EAAA,SAAAC,GACAxN,EAAAE,MAAAxyC,YAAA8/C,OA2CKG,GAAA,sBAAAA,GAAAxlJ,cAAA,UAvCL,WACA,GAAA8oI,GAAA0c,EAAA57C,eACAw7C,GAAA,SAAAC,GAGA,GAAAU,GAAAP,EAAAxlJ,cAAA,SACA+lJ,GAAAC,mBAAA,WACAV,EAAAD,GACAU,EAAAC,mBAAA,KACAld,EAAA1qC,YAAA2nD,GACAA,EAAA,MAEAjd,EAAAzxC,YAAA0uD,OAIA,WACAX,EAAA,SAAAC,GACAtrI,WAAAurI,EAAA,EAAAD,OA8BAI,EAAA1tC,eACA0tC,EAAAT,mBACC,oBAAAngI,MAAA,oBAAAvtB,GAAAL,KAAAK,EAAAutB,QPw7V4BjvB,KAAKJ,EAASH,EAAoB,GAAIA,EAAoB,KAIjF,SAAUI,EAAQD,GQ1mWxB,QAAAmkB,KACA,SAAA7hB,OAAA,mCAEA,QAAA8hB,KACA,SAAA9hB,OAAA,qCAsBA,QAAA+hB,GAAAc,GACA,GAAAb,IAAAC,WAEA,MAAAA,YAAAY,EAAA,EAGA,KAAAb,IAAAH,IAAAG,IAAAC,WAEA,MADAD,GAAAC,WACAA,WAAAY,EAAA,EAEA,KAEA,MAAAb,GAAAa,EAAA,GACK,MAAAvjB,GACL,IAEA,MAAA0iB,GAAAlkB,KAAA,KAAA+kB,EAAA,GACS,MAAAvjB,GAET,MAAA0iB,GAAAlkB,KAAAqB,KAAA0jB,EAAA,KAMA,QAAAX,GAAAisI,GACA,GAAAhsI,IAAAC,aAEA,MAAAA,cAAA+rI,EAGA,KAAAhsI,IAAAL,IAAAK,IAAAC,aAEA,MADAD,GAAAC,aACAA,aAAA+rI,EAEA,KAEA,MAAAhsI,GAAAgsI,GACK,MAAA7uJ,GACL,IAEA,MAAA6iB,GAAArkB,KAAA,KAAAqwJ,GACS,MAAA7uJ,GAGT,MAAA6iB,GAAArkB,KAAAqB,KAAAgvJ,KAYA,QAAA9rI,KACAC,GAAAC,IAGAD,GAAA,EACAC,EAAAriB,OACAsiB,EAAAD,EAAApc,OAAAqc,GAEAC,GAAA,EAEAD,EAAAtiB,QACAwiB,KAIA,QAAAA,KACA,IAAAJ,EAAA,CAGA,GAAAg7E,GAAAv7E,EAAAM,EACAC,IAAA,CAGA,KADA,GAAAwhG,GAAAthG,EAAAtiB,OACA4jH,GAAA,CAGA,IAFAvhG,EAAAC,EACAA,OACAC,EAAAqhG,GACAvhG,GACAA,EAAAE,GAAAE,KAGAF,IAAA,EACAqhG,EAAAthG,EAAAtiB,OAEAqiB,EAAA,KACAD,GAAA,EACAJ,EAAAo7E,IAiBA,QAAA16E,GAAAC,EAAAC,GACA3jB,KAAA0jB,MACA1jB,KAAA2jB,QAYA,QAAAC,MAhKA,GAOAf,GACAG,EARAa,EAAArlB,EAAAD,YAgBA,WACA,IAEAskB,EADA,mBAAAC,YACAA,WAEAJ,EAEK,MAAAviB,GACL0iB,EAAAH,EAEA,IAEAM,EADA,mBAAAC,cACAA,aAEAN,EAEK,MAAAxiB,GACL6iB,EAAAL,KAuDA,IAEAS,GAFAC,KACAF,GAAA,EAEAG,GAAA,CAyCAO,GAAAC,SAAA,SAAAJ,GACA,GAAAw+C,GAAA,GAAAl8D,OAAA+d,UAAAhjB,OAAA,EACA,IAAAgjB,UAAAhjB,OAAA,EACA,OAAAtC,GAAA,EAAuBA,EAAAslB,UAAAhjB,OAAsBtC,IAC7CyjE,EAAAzjE,EAAA,GAAAslB,UAAAtlB,EAGA4kB,GAAAhc,KAAA,GAAAoc,GAAAC,EAAAw+C,IACA,IAAA7+C,EAAAtiB,QAAAoiB,GACAP,EAAAW,IASAE,EAAA9jB,UAAA6jB,IAAA,WACAxjB,KAAA0jB,IAAAM,MAAA,KAAAhkB,KAAA2jB,QAEAE,EAAAI,MAAA,UACAJ,EAAAK,SAAA,EACAL,EAAAM,OACAN,EAAAO,QACAP,EAAA5V,QAAA,GACA4V,EAAAQ,YAIAR,EAAAS,GAAAV,EACAC,EAAAU,YAAAX,EACAC,EAAAW,KAAAZ,EACAC,EAAAY,IAAAb,EACAC,EAAAa,eAAAd,EACAC,EAAAc,mBAAAf,EACAC,EAAAe,KAAAhB,EACAC,EAAAgB,gBAAAjB,EACAC,EAAAiB,oBAAAlB,EAEAC,EAAAkB,UAAA,SAAAhmB,GAAqC,UAErC8kB,EAAAmB,QAAA,SAAAjmB,GACA,SAAA8B,OAAA,qCAGAgjB,EAAAoB,IAAA,WAA2B,WAC3BpB,EAAAqB,MAAA,SAAAu7G,GACA,SAAA5/H,OAAA,mCAEAgjB,EAAAsB,MAAA,WAA4B,WR4nWtB,SAAU3mB,EAAQgiH,EAAqBpiH,GAE7C,YSrzWA,SAAA6wJ,GAAAtL,GACAvlJ,EAAA,GTqzWqB,GAAI8wJ,GAAkH9wJ,EAAoB,IStzW/J+wJ,EAAA/wJ,EAAA,IAGAgxJ,EAAAhxJ,EAAA,IAQAixJ,EAAAJ,EAKAK,EAAAF,EACAF,EAAA,EACAC,EAAA,GATA,EAWAE,EAPA,KAEA,KAUA7uC,GAAA,EAAA8uC,EAAA,ST6zWM,SAAU9wJ,EAAQD,EAASH,GUn1WjC,GAAAysJ,GAAAzsJ,EAAA,EACA,kBAAAysJ,SAAArsJ,EAAAC,EAAAosJ,EAAA,MACAA,EAAA0E,SAAA/wJ,EAAAD,QAAAssJ,EAAA0E,OAEAnxJ,GAAA,eAAAysJ,GAAA,IV41WM,SAAUrsJ,EAAQD,EAASH,GWn2WjCG,EAAAC,EAAAD,QAAAH,EAAA,QAAAivB,IAKA9uB,EAAA8I,MAAA7I,EAAAC,EAAA,kVAAyW,MX42WnW,SAAUD,EAAQD,GYh0WxB,QAAAixJ,GAAA1tC,EAAA2tC,GACA,GAAA5E,GAAA/oC,EAAA,OACA4tC,EAAA5tC,EAAA,EACA,KAAA4tC,EACA,MAAA7E,EAGA,IAAA4E,GAAA,mBAAAE,MAAA,CACA,GAAAC,GAAAC,EAAAH,EAKA,QAAA7E,GAAA7jJ,OAJA0oJ,EAAApgI,QAAA9c,IAAA,SAAAyD,GACA,uBAAAy5I,EAAAI,WAAA75I,EAAA,SAGAjP,QAAA4oJ,IAAA1gJ,KAAA,MAGA,OAAA27I,GAAA37I,KAAA,MAIA,QAAA2gJ,GAAAE,GAKA,yEAHAJ,KAAAK,SAAAC,mBAAAr6I,KAAAC,UAAAk6I,MAGA,MArEAvxJ,EAAAD,QAAA,SAAAkxJ,GACA,GAAA7tC,KAwCA,OArCAA,GAAA/3F,SAAA,WACA,MAAA7pB,MAAAwS,IAAA,SAAAsvG,GACA,GAAA+oC,GAAA2E,EAAA1tC,EAAA2tC,EACA,OAAA3tC,GAAA,GACA,UAAAA,EAAA,OAAmC+oC,EAAA,IAEnCA,IAEG37I,KAAA,KAIH0yG,EAAAnjH,EAAA,SAAAN,EAAA+xJ,GACA,iBAAA/xJ,KACAA,IAAA,KAAAA,EAAA,KAEA,QADAgyJ,MACA1xJ,EAAA,EAAgBA,EAAAuB,KAAAe,OAAiBtC,IAAA,CACjC,GAAAkI,GAAA3G,KAAAvB,GAAA,EACA,kBAAAkI,KACAwpJ,EAAAxpJ,IAAA,GAEA,IAAAlI,EAAA,EAAYA,EAAAN,EAAA4C,OAAoBtC,IAAA,CAChC,GAAAqjH,GAAA3jH,EAAAM,EAKA,kBAAAqjH,GAAA,IAAAquC,EAAAruC,EAAA,MACAouC,IAAApuC,EAAA,GACAA,EAAA,GAAAouC,EACKA,IACLpuC,EAAA,OAAAA,EAAA,aAAAouC,EAAA,KAEAtuC,EAAAv6G,KAAAy6G,MAIAF,IZq5WM,SAAUpjH,EAAQD,EAASH,Gal3WjC,QAAAgyJ,GAAAhnI,GACA,OAAA3qB,GAAA,EAAiBA,EAAA2qB,EAAAroB,OAAmBtC,IAAA,CACpC,GAAAqjH,GAAA14F,EAAA3qB,GACA4xJ,EAAAC,EAAAxuC,EAAAn7G,GACA,IAAA0pJ,EAAA,CACAA,EAAAzwB,MACA,QAAA39H,GAAA,EAAqBA,EAAAouJ,EAAAE,MAAAxvJ,OAA2BkB,IAChDouJ,EAAAE,MAAAtuJ,GAAA6/G,EAAAyuC,MAAAtuJ,GAEA,MAAYA,EAAA6/G,EAAAyuC,MAAAxvJ,OAAuBkB,IACnCouJ,EAAAE,MAAAlpJ,KAAAmpJ,EAAA1uC,EAAAyuC,MAAAtuJ,IAEAouJ,GAAAE,MAAAxvJ,OAAA+gH,EAAAyuC,MAAAxvJ,SACAsvJ,EAAAE,MAAAxvJ,OAAA+gH,EAAAyuC,MAAAxvJ,YAEK,CAEL,OADAwvJ,MACAtuJ,EAAA,EAAqBA,EAAA6/G,EAAAyuC,MAAAxvJ,OAAuBkB,IAC5CsuJ,EAAAlpJ,KAAAmpJ,EAAA1uC,EAAAyuC,MAAAtuJ,IAEAquJ,GAAAxuC,EAAAn7G,KAA8BA,GAAAm7G,EAAAn7G,GAAAi5H,KAAA,EAAA2wB,WAK9B,QAAAE,KACA,GAAAC,GAAA5nJ,SAAAC,cAAA,QAGA,OAFA2nJ,GAAA9jJ,KAAA,WACA+jJ,EAAAvwD,YAAAswD,GACAA,EAGA,QAAAF,GAAArvC,GACA,GAAA7+D,GAAA2Y,EACAy1F,EAAA5nJ,SAAAgyF,cAAA,2BAAAqmB,EAAAx6G,GAAA,KAEA,IAAA+pJ,EAAA,CACA,GAAAE,EAGA,MAAAhtI,EAOA8sI,GAAAt6D,WAAA+Q,YAAAupD,GAIA,GAAAG,EAAA,CAEA,GAAAC,GAAAC,GACAL,GAAAM,MAAAP,KACAnuG,EAAA2uG,EAAA90I,KAAA,KAAAu0I,EAAAI,GAAA,GACA71F,EAAAg2F,EAAA90I,KAAA,KAAAu0I,EAAAI,GAAA,OAGAJ,GAAAD,IACAnuG,EAAA4uG,EAAA/0I,KAAA,KAAAu0I,GACAz1F,EAAA,WACAy1F,EAAAt6D,WAAA+Q,YAAAupD,GAMA,OAFApuG,GAAA6+D,GAEA,SAAAgwC,GACA,GAAAA,EAAA,CACA,GAAAA,EAAA3nB,MAAAroB,EAAAqoB,KACA2nB,EAAAC,QAAAjwC,EAAAiwC,OACAD,EAAApB,YAAA5uC,EAAA4uC,UACA,MAEAztG,GAAA6+D,EAAAgwC,OAEAl2F,MAcA,QAAAg2F,GAAAP,EAAAx+H,EAAA+oC,EAAAkmD,GACA,GAAAqoB,GAAAvuE,EAAA,GAAAkmD,EAAAqoB,GAEA,IAAAknB,EAAAW,WACAX,EAAAW,WAAAjN,QAAAkN,EAAAp/H,EAAAs3G,OACG,CACH,GAAA+nB,GAAAzoJ,SAAA6kG,eAAA67B,GACA5B,EAAA8oB,EAAA9oB,UACAA,GAAA11G,IAAAw+H,EAAAvpD,YAAAygC,EAAA11G,IACA01G,EAAA7mI,OACA2vJ,EAAAznD,aAAAsoD,EAAA3pB,EAAA11G,IAEAw+H,EAAAtwD,YAAAmxD,IAKA,QAAAL,GAAAR,EAAAvvC,GACA,GAAAqoB,GAAAroB,EAAAqoB,IACA4nB,EAAAjwC,EAAAiwC,MACArB,EAAA5uC,EAAA4uC,SAcA,IAZAqB,GACAV,EAAAj0D,aAAA,QAAA20D,GAGArB,IAGAvmB,GAAA,mBAAAumB,EAAAzgI,QAAA,SAEAk6G,GAAA,uDAAyDmmB,KAAAK,SAAAC,mBAAAr6I,KAAAC,UAAAk6I,MAAA,OAGzDW,EAAAW,WACAX,EAAAW,WAAAjN,QAAA5a,MACG,CACH,KAAAknB,EAAAxnD,YACAwnD,EAAAvpD,YAAAupD,EAAAxnD,WAEAwnD,GAAAtwD,YAAAt3F,SAAA6kG,eAAA67B,KA9MA,GAAAgoB,GAAA,oBAAA1oJ,SAEA,wBAAA2oJ,gBACAD,EACA,SAAA3wJ,OACA,0JAKA,IAAA6wJ,GAAAtzJ,EAAA,IAeAkyJ,KAQAK,EAAAa,IAAA1oJ,SAAA6nJ,MAAA7nJ,SAAA6oJ,qBAAA,YACAX,EAAA,KACAD,EAAA,EACAH,GAAA,EACAhtI,EAAA,aAIAitI,EAAA,oBAAAlnJ,YAAA,eAAAwiB,KAAAxiB,UAAAC,UAAAm+D,cAEAvpE,GAAAD,QAAA,SAAAsnB,EAAA+7F,EAAAgwC,GACAhB,EAAAgB,CAEA,IAAAxoI,GAAAsoI,EAAA7rI,EAAA+7F,EAGA,OAFAwuC,GAAAhnI,GAEA,SAAAyoI,GAEA,OADAC,MACArzJ,EAAA,EAAmBA,EAAA2qB,EAAAroB,OAAmBtC,IAAA,CACtC,GAAAqjH,GAAA14F,EAAA3qB,GACA4xJ,EAAAC,EAAAxuC,EAAAn7G,GACA0pJ,GAAAzwB,OACAkyB,EAAAzqJ,KAAAgpJ,GAEAwB,GACAzoI,EAAAsoI,EAAA7rI,EAAAgsI,GACAzB,EAAAhnI,IAEAA,IAEA,QAAA3qB,GAAA,EAAmBA,EAAAqzJ,EAAA/wJ,OAAsBtC,IAAA,CACzC,GAAA4xJ,GAAAyB,EAAArzJ,EACA,QAAA4xJ,EAAAzwB,KAAA,CACA,OAAA39H,GAAA,EAAuBA,EAAAouJ,EAAAE,MAAAxvJ,OAA2BkB,IAClDouJ,EAAAE,MAAAtuJ,WAEAquJ,GAAAD,EAAA1pJ,OAwFA,IAAA2qJ,GAAA,WACA,GAAAS,KAEA,iBAAA7/H,EAAA8/H,GAEA,MADAD,GAAA7/H,GAAA8/H,EACAD,EAAAl2I,OAAAgF,SAAA3R,KAAA,Wbw/WM,SAAU1Q,EAAQD,Gc5pXxBC,EAAAD,QAAA,SAAAsnB,EAAA+7F,GAGA,OAFAx4F,MACA6oI,KACAxzJ,EAAA,EAAiBA,EAAAmjH,EAAA7gH,OAAiBtC,IAAA,CAClC,GAAAqjH,GAAAF,EAAAnjH,GACAkI,EAAAm7G,EAAA,GACA0nB,EAAA1nB,EAAA,GACAsvC,EAAAtvC,EAAA,GACAiuC,EAAAjuC,EAAA,GACAowC,GACAvrJ,GAAAkf,EAAA,IAAApnB,EACA+qI,MACA4nB,QACArB,YAEAkC,GAAAtrJ,GAGAsrJ,EAAAtrJ,GAAA4pJ,MAAAlpJ,KAAA6qJ,GAFA9oI,EAAA/hB,KAAA4qJ,EAAAtrJ,IAAmCA,KAAA4pJ,OAAA2B,KAKnC,MAAA9oI,KdwqXM,SAAU5qB,EAAQD,Ge3rXxBC,EAAAD,QAAA,SACA4zJ,EACAC,EACAC,EACAC,EACAC,EACAC,GAEA,GAAAC,GACAC,EAAAP,QAGAvlJ,QAAAulJ,GAAA3iI,OACA,YAAA5iB,GAAA,aAAAA,IACA6lJ,EAAAN,EACAO,EAAAP,EAAA3iI,QAIA,IAAA9a,GAAA,mBAAAg+I,GACAA,EAAAh+I,QACAg+I,CAGAN,KACA19I,EAAAwxC,OAAAksG,EAAAlsG,OACAxxC,EAAAwhH,gBAAAk8B,EAAAl8B,gBACAxhH,EAAAsjH,WAAA,GAIAq6B,IACA39I,EAAAqkH,YAAA,GAIAw5B,IACA79I,EAAAwjH,SAAAq6B,EAGA,IAAAnnC,EA4BA,IA3BAonC,GACApnC,EAAA,SAAAt9D,GAEAA,EACAA,GACA9tD,KAAA6vH,QAAA7vH,KAAA6vH,OAAA8zB,YACA3jJ,KAAAg6D,QAAAh6D,KAAAg6D,OAAA61D,QAAA7vH,KAAAg6D,OAAA61D,OAAA8zB,WAEA71F,GAAA,oBAAA6kG,uBACA7kG,EAAA6kG,qBAGAL,GACAA,EAAA3zJ,KAAAqB,KAAA8tD,GAGAA,KAAA8kG,uBACA9kG,EAAA8kG,sBAAA9uJ,IAAA0uJ,IAKA99I,EAAAm+I,aAAAznC,GACGknC,IACHlnC,EAAAknC,GAGAlnC,EAAA,CACA,GAAA2N,GAAArkH,EAAAqkH,WACArC,EAAAqC,EACArkH,EAAAwxC,OACAxxC,EAAAo+I,YAEA/5B,IAQArkH,EAAAq+I,cAAA3nC,EAEA12G,EAAAwxC,OAAA,SAAAxkD,EAAAosD,GAEA,MADAs9D,GAAAzsH,KAAAmvD,GACA4oE,EAAAh1H,EAAAosD,KAVAp5C,EAAAo+I,aAAAp8B,KACA1vH,OAAA0vH,EAAAtL,IACAA,GAaA,OACAqnC,WACAl0J,QAAAm0J,EACAh+I,af0sXM,SAAUlW,EAAQgiH,EAAqBpiH,GAE7C,YAKA,SAAS40J,GAAgB7xC,EAAKnhC,EAAK1wE,GAAiK,MAApJ0wE,KAAOmhC,GAAOjiH,OAAOC,eAAegiH,EAAKnhC,GAAO1wE,MAAOA,EAAOjQ,YAAY,EAAMD,cAAc,EAAM8oB,UAAU,IAAkBi5F,EAAInhC,GAAO1wE,EAAgB6xG,EAJtL,GAAI8xC,GAAqD70J,EAAoB,IACzE80J,EAA6D90J,EAAoBmB,EAAE0zJ,GACnFE,EAA0C/0J,EAAoB,GAC9Dg1J,EAAkDh1J,EAAoBmB,EAAE4zJ,EgBryXjG3yC,GAAA,GhBwzXEzhH,KgBtzXF,ShBuzXE6yB,YACEyhI,agBrzXJH,EAAAtyJ,GhBuzXE0J,KAAM,WgBtzXR,GAAAgpJ,EhByzXI,QACEC,KAAMnzJ,OgBxzXZmzJ,KhByzXMhxC,IgBxzXN,IhByzXMixC,OgBxzXN,EhByzXMC,cACEpxE,MgBxzXR,YACA,0BACA,0BACA,0BAEA,chBozXQqxE,MgBnzXR,YACA,yBACA,yBACA,0BAGA,ehB+yXMlhJ,IAAK,GAAI4gJ,GAAgDxyJ,EgB9yX/D2rC,KAAA+mH,GhB+yXQtrD,UgB9yXR,MhB+yXQpxD,MgB9yXR,kChB+yXSo8G,EAAgBM,EAAM,YgB9yX/B,OAAAN,EAAAM,EAAA,UACA,IAAAN,EAAAM,EAAA,UACA,GAAAN,EAAAM,EAAA,OACA,KAAAN,EAAAM,EAAA,aACA,OAAAN,EAAAM,EAAA,QAGA,GAAAA,MhB0yXExgC,UACEtlG,KAAM,WACJ,GAAI1uB,GAAIkB,KAAKuzJ,KAAKvzJ,KAAKuiH,KAAK,EAAIviH,KAAKwzJ,QAAQhpI,OAAO,EgBxyX1D,EhByyXM,OAAO1rB,GAAE0rB,OAAO,EAAG,GAAK,IAAM1rB,EAAE0rB,OAAO,EAAG,GAAK,IAAM1rB,EAAE0rB,OAAO,EgBxyXpE,IhB0yXI1V,KAAM,WACJ,GAAIrU,GAAIT,KAAKuzJ,KAAKvzJ,KAAKuiH,KAAK,EAAIviH,KAAKwzJ,QAAQhpI,OAAO,EgBxyX1D,EhByyXM,OAAO/pB,GAAE+pB,OAAO,EAAG,GAAK,IAAM/pB,EAAE+pB,OAAO,EgBxyX7C,IhB0yXImpI,OAAQ,WACN,MAAO,GAAI3zJ,KgBxyXjBwzJ,ShB2yXElQ,QAAS,WACP,GAAI78B,GgBxyXRzmH,IhByyXIA,MAAKwS,IAAI8R,GAAG,aAAc,WAExB,IADA,GAAI7lB,GgBxyXV,EhByyXaA,EAAIgoH,EAAG8sC,KAAK,KAAOxyJ,QACxB0lH,EAAGmtC,eAAe,MAAOn1J,EAAGgoH,EAAG8sC,KAAK,KgBxyX5C90J,KhB2yXM,KADA,GAAIA,GgBxyXV,EhByyXaA,EAAIgoH,EAAG8sC,KAAK,KAAOxyJ,QACxB0lH,EAAGmtC,eAAe,MAAOn1J,EAAGgoH,EAAG8sC,KAAK,KgBxyX5C90J,KhB0yXMgoH,GAAGotC,cAAc,MgBxyXvB,KhB0yXI7zJ,KAAKwS,IAAI8R,GAAG,OAAQ,WAClB,GAAIwzE,GAAS2uB,EAAGj0G,IAAIsnD,UgBxyX1B,EhByyXUriB,EAAOqgD,EAAS,MgBxyX1B,MhByyXUpgD,EAAKogD,EAAS,MgBxyXxB,KhByyXUpgD,IAAM+uE,EAAGlE,MACX1tG,QAAQX,IAAI,mBAAqBujC,EAAO,OgBxyXhDC,GhByyXQ+uE,EAAGqtC,iBAAiBr8G,EAAMgvE,EgBxyXlCktC,QhByyXQltC,EAAGotC,cAAcn8G,EAAI+uE,EgBxyX7BktC,QhByyXQltC,EAAGlE,IgBxyXX7qE,MhB4yXEi7E,SACEihC,eAAgB,SAAwBrxC,EAAK9jH,EAAGshD,GAC9C//C,KAAKwS,IAAI4vD,UAAU,SAAWmgD,EAAM,IAAM9jH,GACxCmO,KgBxyXR,QhByyXQmzC,IAAK,egBxyXbA,EhByyXQjyC,YAAa9N,KAAKyzJ,agBvyX1BlxC,MhB0yXIsxC,cAAe,SAAuBtxC,EAAK9jH,GACzCuB,KAAKwS,IAAIkwD,UACP/7D,GAAI,SAAW47G,EAAM,IgBxyX7B9jH,EhByyXQwX,OAAQ,SAAWssG,EAAM,IgBxyXjC9jH,EhByyXQmO,KgBxyXR,ShByyXQ+hC,OACE2vC,iBgBtyXV,QhB0yXIw1E,iBAAkB,SAA0BvxC,EAAK9jH,GAC/CuB,KAAKwS,IAAIiwD,YAAY,SAAW8/C,EAAM,IgBxyX5C9jH,KhB2yXEu0H,OACEwgC,OAAQ,SAAgB97G,EAAID,GAC1Bz3C,KAAK8zJ,iBAAiB9zJ,KAAKuiH,IAAK,EgBxyXtC9qE,GhByyXMz3C,KAAK6zJ,cAAc7zJ,KAAKuiH,IAAK,EgBxyXnC7qE,OhB+yXM,SAAUl5C,EAAQD,EAASH,IiBl6XjC,SAAAqC,EAAAN,GAAe3B,EAAAD,QAAA4B,KAA0OH,EAAA,WAAiB,gBAAAS,GAAmB,QAAAN,GAAAL,GAAc,GAAArB,EAAAqB,GAAA,MAAArB,GAAAqB,GAAAvB,OAA4B,IAAAmC,GAAAjC,EAAAqB,IAAYrB,EAAAqB,EAAApB,GAAA,EAAAH,WAAqB,OAAAkC,GAAAX,GAAAnB,KAAA+B,EAAAnC,QAAAmC,IAAAnC,QAAA4B,GAAAO,EAAAhC,GAAA,EAAAgC,EAAAnC,QAA2D,GAAAE,KAAS,OAAA0B,GAAAvB,EAAA6B,EAAAN,EAAAtB,EAAAJ,EAAA0B,EAAA1B,EAAA,SAAAgC,GAAmC,MAAAA,IAASN,EAAArB,EAAA,SAAA2B,EAAAhC,EAAAqB,GAAqBK,EAAAlB,EAAAwB,EAAAhC,IAAAS,OAAAC,eAAAsB,EAAAhC,GAAqCW,cAAA,EAAAC,YAAA,EAAAC,IAAAQ,KAAsCK,EAAAZ,EAAA,SAAAkB,GAAiB,GAAAhC,GAAAgC,KAAAjB,WAAA,WAAiC,MAAAiB,GAAA+uB,SAAiB,WAAY,MAAA/uB,GAAU,OAAAN,GAAArB,EAAAL,EAAA,IAAAA,MAAsB0B,EAAAlB,EAAA,SAAAwB,EAAAN,GAAmB,MAAAjB,QAAAS,UAAAC,eAAAjB,KAAA8B,EAAAN,IAAiDA,EAAAN,EAAA,GAAAM,IAAAL,EAAA,KAAiB,SAAAW,EAAAN,EAAA1B,GAAkBA,EAAA,EAAK,IAAAqB,GAAArB,EAAA,GAAAA,EAAA,GAAAA,EAAA,aAAgCgC,GAAAlC,QAAAuB,EAAAvB,SAAoB,SAAAkC,EAAAN,EAAA1B,GAAiB,YAAaS,QAAAC,eAAAgB,EAAA,cAAsCmP,OAAA,IAASnP,EAAAqvB,SAAallB,KAAA,WAAgB,OAAOypJ,MAAA,EAAAnrJ,KAAA,EAAAorJ,aAAA,EAAAC,cAAA,EAAAC,YAAA,gBAAAl0J,MAAAm0J,SAAAn0J,KAAAm0J,SAAAn0J,KAAAo0J,QAAAC,aAAA,gBAAAr0J,MAAAs0J,UAAAt0J,KAAAs0J,UAAAt0J,KAAAo0J,UAA8LrtC,OAAQ9/G,OAAO2F,MAAA2e,OAAAzL,QAAA0P,QAAA,QAAoCtoB,QAAS0F,MAAA2e,OAAAzL,QAAA0P,QAAA,GAA+BllB,MAAOsC,KAAA5G,MAAAwpB,QAAA,MAAwB4kI,SAAUxnJ,KAAA2e,OAAAiE,QAAA,IAAuB2kI,UAAWvnJ,KAAA2e,OAAAkpD,UAAA,GAAwB6/E,WAAY1nJ,KAAA2e,OAAAkpD,UAAA,GAAwBjqE,KAAMoC,KAAA2e,OAAAiE,QAAA,GAAsB5nB,KAAMgF,KAAA2e,OAAAiE,QAAA,KAAwBmrD,UAAW/tE,KAAA2e,OAAAiE,QAAA,GAAsBm+G,MAAO/gI,KAAAiU,QAAA2O,SAAA,GAAwB+kI,UAAW3nJ,KAAAiU,QAAA2O,SAAA,GAAwBglI,WAAY5nJ,KAAAiU,QAAA2O,SAAA,GAAwBilI,SAAU7nJ,MAAAkT,OAAAe,SAAA2O,QAAA,UAAuCklI,WAAY9nJ,KAAAkT,OAAA0P,QAAA,QAA2BmlI,WAAY/nJ,KAAAkT,OAAA0P,QAAA,cAAiC1c,SAAUlG,KAAAiU,QAAA2O,SAAA,GAAwBm3G,MAAO/5H,KAAAiU,QAAA2O,SAAA,GAAwBolI,WAAYhoJ,KAAAiU,QAAA2O,SAAA,GAAwB+pE,OAAQ3sF,KAAA2e,OAAAiE,QAAA,IAAuBqlI,UAAWjoJ,KAAAiU,QAAA2O,SAAA,GAAwBlgB,OAAQ1C,MAAAkT,OAAAyL,OAAAvlB,OAAAwpB,QAAA,GAAqCslI,gBAAiBloJ,KAAAiU,QAAA2O,SAAA,GAAwBulI,aAAA/uJ,MAAA9G,QAAA81J,YAAAhvJ,MAAA8Z,QAAAm1I,WAAAn1I,OAAA7f,UAAAi1J,eAAAh2J,OAAAi2J,qBAAAj2J,OAAAk2J,aAAAl2J,OAAAm2J,QAAAn2J,OAAAo2J,cAAAtvJ,MAAA9G,QAAAq2J,WAAAr2J,OAAAs2J,iBAAAt2J,QAA6O4zH,UAAW2iC,cAAA,WAAyB,oBAAAz1J,KAAA20J,WAAA30J,KAAA8S,QAAA,gBAAgE4iJ,iBAAA,WAA6B,GAAAj1J,GAAAT,KAAAg1J,aAAA,aAAAh1J,KAAA20J,UAAA,aAAkE,OAAA3uJ,OAAAC,QAAAxF,GAAAT,KAAA21J,QAAAl1J,IAAA,GAAAT,KAAA21J,SAAAl1J,QAAiEm1J,cAAA,WAA0B,gBAAA51J,KAAAy0J,SAAAz0J,KAAA+zJ,KAAA,oBAAA/zJ,KAAAy0J,QAAA,cAAAz0J,KAAAy0J,QAAA,IAAuGoB,aAAA,WAAyB,6BAAA71J,KAAA01J,iBAAA,uBAAyEI,WAAA,WAAuB,eAAA91J,KAAA00J,WAAA10J,KAAAu0J,UAA6CwB,cAAA,WAA0B,MAAA/1J,MAAAu0J,SAAA,0BAA8CoB,QAAA,WAAoB,MAAA3vJ,OAAAC,QAAAjG,KAAAsP,QAAiCkkJ,OAAA,WAAmB,MAAAxzJ,MAAA21J,SAAA31J,KAAAgvH,MAAAgnC,KAAAh2J,KAAAgvH,MAAAinC,MAAAj2J,KAAAgvH,MAAAknC,KAAqElhF,QAAA,WAAoB,MAAAh1E,MAAAsK,KAAA,EAAAtK,KAAAwK,KAA4B+2G,KAAMjiH,IAAA,WAAe,MAAAU,MAAAsK,KAAAtK,KAAA21J,SAAA31J,KAAAsK,KAAAtK,KAAAg0J,aAAA,IAAAh0J,KAAAsK,KAAAtK,KAAAg0J,aAAA,KAAAh0J,KAAAsK,KAAAtK,KAAAg0J,cAAAh0J,KAAAg0J,cAA+I96I,IAAA,SAAAzY,GAAiB,GAAAT,KAAAsK,KAAA,GAAAtK,KAAA21J,QAAA,CAA8B,GAAAx1J,GAAAH,KAAAsK,KAAAT,QAAApJ,EAAA,IAAAhC,EAAAuB,KAAAsK,KAAAT,QAAApJ,EAAA,GAAwDN,IAAA,GAAA1B,GAAA,IAAAuB,KAAAg0J,cAAA7zJ,EAAA1B,QAAsC,CAAK,GAAAqB,GAAAE,KAAAsK,KAAAT,QAAApJ,EAA2BX,IAAA,IAAAE,KAAAg0J,aAAAl0J,OAA4BE,MAAAg0J,aAAAvzJ,IAA0B01J,aAAA,WAAyB,MAAAn2J,MAAA21J,QAAA31J,KAAAsK,KAAAtK,KAAAg0J,eAAAh0J,KAAAg0J,aAAA,GAAAh0J,KAAAg1E,SAAAh1E,KAAAo2J,SAAAp2J,KAAAg0J,aAAA,GAAAh0J,KAAAg1E,SAAAh1E,KAAAo2J,UAAAp2J,KAAAg0J,aAAAh0J,KAAAg1E,SAAAh1E,KAAAo2J,SAAkMC,WAAA,WAAuB,MAAAr2J,MAAA21J,QAAA31J,KAAAm2J,cAAA,EAAAn2J,KAAAm2J,eAA4DphF,QAAA,WAAoB,MAAA/0E,MAAAsK,KAAAtK,KAAAsK,KAAAvJ,OAAA,EAAAf,KAAA4H,KAA6Co3H,SAAA,WAAqB,GAAAv+H,IAAA,GAAAT,KAAA26E,UAAApwD,MAAA,OAAuC,OAAA9pB,GAAAY,KAAAkJ,IAAA,GAAA9J,EAAAM,QAAA,GAAiCq1J,QAAA,WAAoB,MAAAp2J,MAAAsK,KAAA,EAAAtK,KAAA26E,UAAiCrlE,MAAA,WAAkB,MAAAtV,MAAAsK,KAAAtK,KAAAsK,KAAAvJ,OAAA,OAAAf,KAAA+0E,QAAA/0E,KAAAg1E,SAAAh1E,KAAAg/H,WAAAh/H,KAAA26E,SAAA36E,KAAAg/H,WAAA,GAAAnqH,QAAA+W,MAAA,sGAAA5rB,KAAA+0E,QAAA/0E,KAAAg1E,SAAAh1E,KAAA26E,WAAmR27E,IAAA,WAAgB,MAAAt2J,MAAA4I,KAAA5I,KAAAsV,OAA4ByhC,SAAA,WAAqB,MAAA/2C,MAAA21J,UAAA31J,KAAAg0J,aAAA,GAAAh0J,KAAAg1E,SAAAh1E,KAAAo2J,QAAAp2J,KAAAs2J,KAAAt2J,KAAAg0J,aAAA,GAAAh0J,KAAAg1E,SAAAh1E,KAAAo2J,QAAAp2J,KAAAs2J,MAAAt2J,KAAAg0J,aAAAh0J,KAAAg1E,SAAAh1E,KAAAo2J,QAAAp2J,KAAAs2J,KAAiMC,MAAA,WAAkB,MAAAv2J,MAAA21J,UAAA,EAAA31J,KAAA+2C,SAAA,KAAA/2C,KAAA+2C,SAAA,GAAA/2C,KAAA4I,QAAA,EAAA5I,KAAA4I,OAAsF4tJ,WAAA,WAAuB,MAAAx2J,MAAA21J,UAAA31J,KAAAg1E,QAAAh1E,KAAAg0J,aAAA,KAAAh0J,KAAAg0J,aAAA,GAAAh0J,KAAA+0E,WAAA/0E,KAAAg1E,QAAAh1E,KAAA+0E,UAA0H0hF,WAAA,WAAuB,mBAAAz2J,KAAA20J,WAAmCztJ,OAAA,gBAAAlH,MAAAkH,OAAAlH,KAAAkH,OAAA,KAAAlH,KAAAkH,OAAAuR,QAAAzY,KAAAq0J,aAAA,QAAAr0J,KAAAk0J,YAAA,SAA6HjtJ,MAAA,gBAAAjH,MAAAiH,MAAAjH,KAAAiH,MAAA,KAAAjH,KAAAiH,MAAAwR,QAAAzY,KAAAq0J,aAAA,QAAAr0J,KAAAk0J,YAAA,SAAwHwC,aAAA,WAAyB,MAAA1wJ,OAAAC,QAAAjG,KAAA+0J,aAAA/0J,KAAA21J,QAAA31J,KAAA+0J,YAAA/0J,KAAA+0J,YAAA,GAAA/0J,KAAA21J,SAAA31J,KAAA+0J,YAAA/0J,KAAA+0J,aAAA/0J,KAAA+0J,aAA2J4B,cAAA,WAA0B,MAAA3wJ,OAAAC,QAAAjG,KAAAs1J,cAAAt1J,KAAA21J,QAAA31J,KAAAs1J,aAAAt1J,KAAAs1J,aAAA,GAAAt1J,KAAA21J,SAAA31J,KAAAs1J,aAAAt1J,KAAAs1J,cAAAt1J,KAAAs1J,cAAiKsB,WAAA,WAAuB,mBAAA52J,KAAA20J,WAAmC1tJ,MAAAjH,KAAAiH,MAAA,KAAAC,OAAA,SAAsCA,OAAAlH,KAAAkH,OAAA,OAAyB2vJ,UAAA,WAAsB,mBAAA72J,KAAA20J,WAAmC1tJ,MAAAjH,KAAAk0J,YAAA,KAAAhtJ,OAAAlH,KAAAq0J,aAAA,KAAA9zG,OAAAvgD,KAAAk0J,YAAAl0J,KAAAiH,OAAA,SAAuGA,MAAAjH,KAAAk0J,YAAA,KAAAhtJ,OAAAlH,KAAAq0J,aAAA,KAAA7zG,MAAAxgD,KAAAq0J,aAAAr0J,KAAAkH,QAAA,SAAuG4vJ,kBAAA,WAA8B,mBAAA92J,KAAA20J,WAAmC1tJ,MAAAjH,KAAAiH,MAAA,KAAAC,OAAAlH,KAAAiH,MAAA,OAA+CA,MAAAjH,KAAAkH,OAAA,KAAAA,OAAAlH,KAAAkH,OAAA,OAAgD6vJ,iBAAA,WAA6B,IAAA/2J,KAAAw0J,YAAAx0J,KAAA80J,eAAA,QAAkD,QAAAr0J,MAAAN,EAAA,EAAiBA,GAAAH,KAAAsV,MAAcnV,IAAA,CAAK,GAAA1B,GAAA,aAAAuB,KAAA20J,WAAmC18E,OAAAj4E,KAAAs2J,IAAAn2J,EAAAH,KAAAiH,MAAA,OAAAs5C,KAAA,IAA6CA,KAAAvgD,KAAAs2J,IAAAn2J,EAAAH,KAAAkH,OAAA,OAAAs5C,IAAA,GAAyC1gD,EAAAE,KAAA8S,QAAA9S,KAAAsV,MAAAnV,IAAAO,EAAAV,KAAAsK,KAAAtK,KAAAsK,KAAAxK,GAAAE,KAAAo2J,QAAAt2J,EAAAE,KAAAwK,GAAgF/J,GAAA4G,MAAQuvC,MAAAn4C,EAAAu4J,MAAAh3J,KAAAi1J,UAAAj1J,KAAAi3J,WAAAv2J,KAAAw2J,QAAAp3J,GAAAE,KAAAq2J,WAAA,IAAAv2J,GAAAE,KAAAq2J,WAAA,KAAyG,MAAA51J,KAAUuyH,OAAQ1jH,MAAA,SAAA7O,GAAkBT,KAAA+zJ,MAAA/zJ,KAAAm3J,SAAA12J,GAAA,IAA+BmH,IAAA,SAAAnH,GAAiB,GAAAN,GAAAH,KAAAo3J,WAAAp3J,KAAAuhH,MAAgC,IAAAphH,GAAAH,KAAAm3J,SAAAh3J,GAAAH,KAAAq3J,WAAwC7sJ,IAAA,SAAA/J,GAAiB,GAAAN,GAAAH,KAAAo3J,WAAAp3J,KAAAuhH,MAAgC,IAAAphH,GAAAH,KAAAm3J,SAAAh3J,GAAAH,KAAAq3J,WAAwC1pB,KAAA,SAAAltI,GAAkB,GAAAN,GAAAH,IAAWS,KAAAT,KAAA4I,MAAA5I,KAAAgjJ,UAAA,WAAyC7iJ,EAAAk3J,cAAe1kC,SAAU2kC,WAAA,WAAsBxuJ,SAAAu2D,iBAAA,YAAAr/D,KAAAu3F,QAAmD0zB,SAAA,IAAWniH,SAAAu2D,iBAAA,WAAAr/D,KAAAu3J,SAAqDtsC,SAAA,IAAWniH,SAAAu2D,iBAAA,YAAAr/D,KAAAu3F,QAAAzuF,SAAAu2D,iBAAA,UAAAr/D,KAAAu3J,SAAAzuJ,SAAAu2D,iBAAA,aAAAr/D,KAAAu3J,SAAAn3J,OAAAi/D,iBAAA,SAAAr/D,KAAAq3J,UAA2MG,aAAA,WAAyBp3J,OAAA87F,oBAAA,SAAAl8F,KAAAq3J,SAAAvuJ,SAAAozF,oBAAA,YAAAl8F,KAAAu3F,QAAAzuF,SAAAozF,oBAAA,WAAAl8F,KAAAu3J,SAAAzuJ,SAAAozF,oBAAA,YAAAl8F,KAAAu3F,QAAAzuF,SAAAozF,oBAAA,UAAAl8F,KAAAu3J,SAAAzuJ,SAAAozF,oBAAA,aAAAl8F,KAAAu3J,UAAiUN,WAAA,SAAAx2J,GAAwB,sBAAAT,MAAAi1J,UAAAj1J,KAAAi1J,UAAA9qI,QAAA,YAAuE1pB,GAAAT,KAAAi1J,UAAAx0J,IAAuBg3J,OAAA,SAAAh3J,GAAoB,MAAAT,MAAA60J,UAAA70J,KAAA03J,gBAAA,aAAA13J,KAAA20J,UAAA30J,KAAA8S,QAAArS,EAAAk3J,MAAA33J,KAAAqsC,OAAArsC,KAAA4I,MAAAnI,EAAAk3J,MAAA33J,KAAAqsC,QAAArsC,KAAA8S,QAAA9S,KAAA4I,MAAAnI,EAAAwyG,QAAAjzG,KAAAqsC,QAAA5rC,EAAAwyG,QAAAjzG,KAAAqsC,QAA6MurH,UAAA,SAAAn3J,GAAuB,GAAAT,KAAA81J,aAAA91J,KAAA40J,UAAA,QAA6C,IAAAz0J,GAAAH,KAAAy3J,OAAAh3J,EAAqBT,MAAA21J,UAAA31J,KAAAi0J,cAAA9zJ,GAAAH,KAAA+2C,SAAA,GAAA/2C,KAAA+2C,SAAA,MAAA/2C,KAAA+2C,SAAA,QAAA/2C,KAAA63J,cAAA13J,IAAsH23J,UAAA,SAAAr3J,GAAuB,GAAAT,KAAA81J,WAAA,QAA4B91J,MAAA21J,UAAA31J,KAAAi0J,cAAAxzJ,GAAAT,KAAA+zJ,MAAA,EAAA/zJ,KAAAixH,MAAA,aAAAjxH,OAAgFu3F,OAAA,SAAA92F,GAAoB,IAAAT,KAAA+zJ,KAAA,QAAuBtzJ,GAAA61F,iBAAA71F,EAAAs3J,eAAAt3J,EAAAs3J,cAAA,KAAAt3J,IAAAs3J,cAAA,IAAA/3J,KAAA63J,cAAA73J,KAAAy3J,OAAAh3J,IAAA,IAAqH82J,QAAA,SAAA92J,GAAqB,IAAAT,KAAA+zJ,KAAA,QAAuB/zJ,MAAAixH,MAAA,WAAAjxH,WAAA2mI,MAAA3mI,KAAAg4J,OAAAh4J,KAAAuhH,IAAAvhH,KAAAsP,QAAAtP,KAAAi4J,YAAAj4J,KAAA+zJ,MAAA,EAAA/zJ,KAAAk4J,eAA0HL,cAAA,SAAAp3J,EAAAN,GAA6B,GAAA1B,GAAAuB,KAAA21J,QAAA31J,KAAAu2J,MAAAv2J,KAAAi0J,eAAAj0J,KAAAu2J,MAAAz2J,EAAAE,KAAA21J,QAAA31J,KAAAw2J,WAAAx2J,KAAAi0J,eAAAj0J,KAAAw2J,UAAgI,IAAA/1J,GAAAhC,EAAA,IAAAgC,GAAAhC,EAAA,IAAqBuB,KAAA8iG,aAAAriG,EAAqB,IAAAC,IAAAW,KAAA8D,MAAA1E,EAAAT,KAAAs2J,MAAAt2J,KAAAo2J,QAAAp2J,KAAAg/H,UAAAh/H,KAAAg1E,QAAAh1E,KAAAg/H,UAAAh/H,KAAAg/H,QAAqGh/H,MAAAm4J,gBAAAz3J,EAAAP,OAA0BM,GAAAhC,EAAA,IAAAuB,KAAA8iG,aAAArkG,EAAA,IAAAuB,KAAAm4J,gBAAAr4J,EAAA,QAAAE,KAAAi0J,gBAAAj0J,KAAAi0J,cAAA,KAAAj0J,KAAA8iG,aAAArkG,EAAA,IAAAuB,KAAAm4J,gBAAAr4J,EAAA,QAAAE,KAAAi0J,gBAAAj0J,KAAAi0J,cAAA,KAAoN+D,OAAA,SAAAv3J,EAAAN,GAAsB,MAAAjB,QAAAS,UAAAkqB,SAAAlrB,KAAA8B,KAAAvB,OAAAS,UAAAkqB,SAAAlrB,KAAAwB,KAAA6F,MAAAC,QAAAxF,MAAAM,SAAAZ,EAAAY,OAAAN,EAAAub,KAAA,SAAAvb,EAAAhC,GAA0I,MAAAgC,KAAAN,EAAA1B,KAAgBgC,IAAAN,IAASg4J,gBAAA,SAAA13J,EAAAN,GAA+B,GAAAM,EAAAT,KAAAg1E,SAAAv0E,EAAAT,KAAA+0E,QAAA,QAA2C/0E,MAAA21J,QAAA31J,KAAAg4J,OAAAh4J,KAAAg0J,aAAAh0J,KAAAi0J,eAAAxzJ,KAAAT,KAAAg0J,aAAAhsJ,OAAAhI,KAAAi0J,cAAA,EAAAxzJ,GAAAT,KAAA2mI,MAAA3mI,KAAA+zJ,MAAA/zJ,KAAAi4J,aAAAj4J,KAAAg4J,OAAAh4J,KAAAg0J,aAAAvzJ,KAAAT,KAAAg0J,aAAAvzJ,EAAAT,KAAA2mI,MAAA3mI,KAAA+zJ,MAAA/zJ,KAAAi4J,aAAA93J,GAAAH,KAAAk4J,eAAkRE,SAAA,SAAA33J,GAAsB,GAAAuF,MAAAC,QAAAxF,IAAAT,KAAA21J,QAAA,CAAmC,GAAAx1J,OAAA,EAAaA,GAAAH,KAAAsK,MAAAtK,KAAAsK,KAAA7J,EAAA,IAAAT,KAAAsK,KAAA7J,EAAA,MAAAT,KAAAo2J,QAAA31J,EAAA,GAAAT,KAAAg1E,QAAAh1E,KAAAo2J,QAAA31J,EAAA,GAAAT,KAAAg1E,SAAAh1E,KAAAm3J,SAAAh3J,OAA+HM,GAAAT,KAAAo2J,QAAA31J,EAAAT,KAAAg1E,QAAAh1E,KAAA21J,UAAA31J,KAAAi0J,cAAAxzJ,GAAAT,KAAAg0J,aAAA,GAAAh0J,KAAAg0J,aAAA,MAAAh0J,KAAAg0J,aAAA,QAAAh0J,KAAAm4J,gBAAA13J,IAAuK02J,SAAA,SAAA12J,EAAAN,EAAA1B,GAA0B,GAAAqB,GAAAE,IAAW,IAAAA,KAAAg4J,OAAAh4J,KAAAuhH,IAAA9gH,GAAA,CAA4B,GAAAC,GAAAV,KAAAo3J,WAAA32J,EAAyBT,MAAAuhH,KAAA,IAAA7gH,EAAAV,KAAA21J,QAAAj1J,EAAAsG,SAAAtG,EAAAV,KAAA21J,QAAAl1J,EAAAuG,SAAAvG,EAAAT,KAAAi4J,UAAA93J,GAAsFH,KAAAgjJ,UAAA,WAA0B,MAAAljJ,GAAAo4J,YAAAz5J,MAA0By5J,YAAA,SAAAz3J,GAAyBT,KAAA+zJ,MAAA/zJ,KAAAq4J,sBAAA,KAAA53J,EAAAT,KAAAu5F,MAAA94F,GAAAT,KAAA21J,SAAA31J,KAAAi0J,cAAA,EAAAj0J,KAAA8iG,aAAA9iG,KAAA+2C,SAAA/2C,KAAAi0J,gBAAAj0J,KAAAi0J,cAAA,EAAAj0J,KAAA8iG,aAAA9iG,KAAA+2C,SAAA/2C,KAAAi0J,iBAAAj0J,KAAA8iG,aAAA9iG,KAAA+2C,UAAA/2C,KAAA+zJ,MAAA/zJ,KAAAq4J,kBAAA,IAAoSv1D,aAAA,SAAAriG,GAA0B,GAAAN,IAAA,aAAAH,KAAA20J,UAAA30J,KAAAq0J,aAAA,EAAA5zJ,IAAAT,KAAAk0J,YAAA,IAAAl0J,KAAA8S,SAAA,KAAArU,EAAA,aAAAuB,KAAA20J,UAAA,cAAAx0J,EAAA,oBAAAA,EAAA,MAAAL,GAAA,IAAAE,KAAAi0J,cAAAj0J,KAAA+2C,SAAA,GAAAt2C,IAAAT,KAAA+2C,SAAA,SAAAr2C,GAAA,IAAAV,KAAAi0J,cAAAxzJ,EAAAT,KAAA+2C,SAAA,QAAsS/2C,MAAA21J,SAAA31J,KAAAwzJ,OAAAxzJ,KAAAi0J,eAAAr9G,MAAA1gC,UAAAzX,EAAAuB,KAAAwzJ,OAAAxzJ,KAAAi0J,eAAAr9G,MAAA85F,gBAAAjyI,EAAAuB,KAAAwzJ,OAAAxzJ,KAAAi0J,eAAAr9G,MAAA0hH,YAAA75J,EAAA,aAAAuB,KAAA20J,WAAA30J,KAAAgvH,MAAAnrG,QAAA+yB,MAAA1vC,OAAApH,EAAAE,KAAAgvH,MAAAnrG,QAAA+yB,MAAA52C,KAAA8S,QAAA,gBAAApS,IAAAV,KAAAgvH,MAAAnrG,QAAA+yB,MAAA3vC,MAAAnH,EAAAE,KAAAgvH,MAAAnrG,QAAA+yB,MAAA52C,KAAA8S,QAAA,gBAAApS,KAAAV,KAAAwzJ,OAAA58G,MAAA1gC,UAAAzX,EAAAuB,KAAAwzJ,OAAA58G,MAAA85F,gBAAAjyI,EAAAuB,KAAAwzJ,OAAA58G,MAAA0hH,YAAA75J,EAAA,aAAAuB,KAAA20J,WAAA30J,KAAAgvH,MAAAnrG,QAAA+yB,MAAA1vC,OAAAzG,EAAA,KAAAT,KAAAgvH,MAAAnrG,QAAA+yB,MAAA52C,KAAA8S,QAAA,oBAAA9S,KAAAgvH,MAAAnrG,QAAA+yB,MAAA3vC,MAAAxG,EAAA,KAAAT,KAAAgvH,MAAAnrG,QAAA+yB,MAAA52C,KAAA8S,QAAA,qBAAisBulJ,kBAAA,SAAA53J,GAA+B,GAAAA,GAAAT,KAAAgvH,MAAAnrG,QAAAy3E,YAAAt7F,KAAA21J,QAAA,CAAmD,OAAAx1J,GAAA,EAAYA,EAAAH,KAAAwzJ,OAAAzyJ,OAAqBZ,IAAAH,KAAAwzJ,OAAArzJ,GAAAy2C,MAAA+5F,mBAAAlwI,EAAA,IAAAT,KAAAwzJ,OAAArzJ,GAAAy2C,MAAA2hH,yBAAA93J,EAAA,GAAsGT,MAAAgvH,MAAAnrG,QAAA+yB,MAAA+5F,mBAAAlwI,EAAA,IAAAT,KAAAgvH,MAAAnrG,QAAA+yB,MAAA2hH,yBAAA93J,EAAA,QAA0GT,MAAAwzJ,OAAA58G,MAAA+5F,mBAAAlwI,EAAA,IAAAT,KAAAwzJ,OAAA58G,MAAA2hH,yBAAA93J,EAAA,IAAAT,KAAAgvH,MAAAnrG,QAAA+yB,MAAA+5F,mBAAAlwI,EAAA,IAAAT,KAAAgvH,MAAAnrG,QAAA+yB,MAAA2hH,yBAAA93J,EAAA,KAA2M22J,WAAA,SAAA32J,GAAwB,GAAAN,GAAAH,IAAW,IAAAA,KAAAsK,KAAA,MAAA7J,EAAsB,IAAAhC,IAAA,CAAS,OAAAuB,MAAA21J,QAAAl1J,IAAA+R,IAAA,SAAA/R,GAAwC,MAAAA,GAAAN,EAAAqK,KAAA/L,GAAA,EAAA0B,EAAAqK,KAAA/J,EAAAN,EAAAyH,KAAAnJ,GAAA,EAAA0B,EAAAyH,KAAAnH,IAAmDA,EAAAT,KAAA4H,KAAAnJ,GAAA,EAAAgC,EAAAT,KAAA4H,KAAAnH,EAAAT,KAAAwK,MAAA/L,GAAA,EAAAgC,EAAAT,KAAAwK,KAAA/L,GAAAgC,GAAkEw3J,UAAA,SAAAx3J,GAAuBA,GAAAT,KAAAixH,MAAA,WAAAjxH,KAAAuhH,KAAAvhH,KAAAixH,MAAA,QAAAjxH,KAAA21J,QAAA31J,KAAAuhH,IAAAv6G,SAAAhH,KAAAuhH,MAA+FytB,SAAA,WAAqB,MAAAhvI,MAAAuhH,KAAgBi3C,SAAA,WAAqB,MAAAx4J,MAAAm2J,cAAyBuB,cAAA,WAA0B13J,KAAAgvH,MAAAypC,OAAAz4J,KAAA4I,KAAA,aAAA5I,KAAA20J,UAAA30J,KAAAgvH,MAAAypC,KAAA5tD,aAAA7qG,KAAAgvH,MAAAypC,KAAAn9D,YAAAt7F,KAAAqsC,OAAA,aAAArsC,KAAA20J,UAAA30J,KAAAgvH,MAAAypC,KAAAzlD,wBAAAxyD,IAAApgD,OAAAs4J,aAAA5vJ,SAAA6pG,gBAAAgmD,UAAA34J,KAAAgvH,MAAAypC,KAAAzlD,wBAAAzyD,OAA0S82G,QAAA,WAAoBr3J,KAAAgvH,MAAAypC,OAAAz4J,KAAA03J,gBAAA13J,KAAAk4J,iBAA4DU,QAAA,WAAoB,GAAAn4J,GAAAT,IAAW,oBAAAI,SAAA,mBAAA0I,WAAA9I,KAAAgjJ,UAAA,WAAoFviJ,EAAAi3J,gBAAAj3J,EAAA02J,SAAA12J,EAAA6O,OAAA,KAAA7O,EAAA62J,gBAA4DuB,cAAA,WAA0B74J,KAAAw3J,kBAAsB,SAAA/2J,EAAAN,EAAA1B,GAAiB,YAAa,IAAAqB,GAAArB,EAAA,EAAWgC,GAAAlC,QAAAuB,GAAY,SAAAW,EAAAN,EAAA1B,GAAiB0B,EAAAM,EAAAlC,QAAAE,EAAA,KAAA0B,EAAAkH,MAAA5G,EAAAhC,EAAA,olLAAinL,MAAO,SAAAgC,EAAAN,GAAeM,EAAAlC,QAAA,WAAqB,GAAAkC,KAAS,OAAAA,GAAAopB,SAAA,WAA6B,OAAAppB,MAAAN,EAAA,EAAiBA,EAAAH,KAAAe,OAAcZ,IAAA,CAAK,GAAA1B,GAAAuB,KAAAG,EAAc1B,GAAA,GAAAgC,EAAA4G,KAAA,UAAA5I,EAAA,OAA6BA,EAAA,QAASgC,EAAA4G,KAAA5I,EAAA,IAAgB,MAAAgC,GAAAyO,KAAA,KAAkBzO,EAAAhC,EAAA,SAAA0B,EAAA1B,GAAmB,gBAAA0B,SAAA,KAAAA,EAAA,KAAsC,QAAAL,MAAYY,EAAA,EAAKA,EAAAV,KAAAe,OAAcL,IAAA,CAAK,GAAAnB,GAAAS,KAAAU,GAAA,EAAiB,iBAAAnB,KAAAO,EAAAP,IAAA,GAA8B,IAAAmB,EAAA,EAAQA,EAAAP,EAAAY,OAAWL,IAAA,CAAK,GAAAzB,GAAAkB,EAAAO,EAAW,iBAAAzB,GAAA,IAAAa,EAAAb,EAAA,MAAAR,IAAAQ,EAAA,GAAAA,EAAA,GAAAR,MAAAQ,EAAA,OAAAA,EAAA,aAAAR,EAAA,KAAAgC,EAAA4G,KAAApI,MAAgGwB,IAAI,SAAAA,EAAAN,GAAeM,EAAAlC,QAAA,SAAAkC,EAAAN,EAAA1B,EAAAqB,GAA4B,GAAAY,GAAAnB,EAAAkB,QAAexB,QAAAwB,GAAA+uB,OAAoB,YAAAvwB,GAAA,aAAAA,IAAAyB,EAAAD,EAAAlB,EAAAkB,EAAA+uB,QAAgD,IAAA9wB,GAAA,kBAAAa,KAAAmV,QAAAnV,CAAuC,IAAAY,IAAAzB,EAAAwnD,OAAA/lD,EAAA+lD,OAAAxnD,EAAAw3H,gBAAA/1H,EAAA+1H,iBAAAz3H,IAAAC,EAAAw5H,SAAAz5H,GAAAqB,EAAA,CAAmF,GAAAc,GAAA1B,OAAA2D,OAAAnE,EAAAo0H,UAAA,KAAsC5zH,QAAAmZ,KAAAvY,GAAAgc,QAAA,SAAArb,GAAmC,GAAAN,GAAAL,EAAAW,EAAWG,GAAAH,GAAA,WAAgB,MAAAN,MAAUzB,EAAAo0H,SAAAlyH,EAAe,OAAO6xJ,SAAA/xJ,EAAAnC,QAAAgB,EAAAmV,QAAAhW,KAAiC,SAAA+B,EAAAN,GAAeM,EAAAlC,SAAW2nD,OAAA,WAAkB,GAAAzlD,GAAAT,KAAAG,EAAAM,EAAAo6H,eAAAp8H,EAAAgC,EAAA0hJ,MAAAhqB,IAAAh4H,CAA8C,OAAA1B,GAAA,OAAgB6oH,aAAavoH,KAAA,OAAA2iI,QAAA,SAAApyH,MAAA7O,EAAAktI,KAAAvK,WAAA,SAA4Dz7H,IAAA,OAAAu2H,OAAA,uBAAAz9H,EAAAg1J,cAAAh1J,EAAAs1J,eAA4E+C,uBAAAr4J,EAAAq0J,iBAAwCl+G,MAAAn2C,EAAAg2J,WAAAnyI,IAAyBy0I,MAAAt4J,EAAAm3J,aAAmBn5J,EAAA,OAAWkJ,IAAA,OAAAs2H,YAAA,aAAArnF,OAAAn2C,EAAAm2J,WAAAn2J,EAAA40J,SAAA5pC,OAA0EutC,cAAA,UAAsBv4J,EAAAk1J,SAAAl3J,EAAA,OAAsBkJ,IAAA,OAAAu2H,OAAAz9H,EAAAm1J,cAAA,kBAAAh/G,OAAAn2C,EAAAo2J,UAAAp2J,EAAAi2J,aAAA,IAAApyI,IAA8F20I,UAAA,SAAA94J,GAAsBM,EAAAq3J,UAAA,IAAeoB,WAAA,SAAA/4J,GAAwBM,EAAAq3J,UAAA,OAAiBr5J,EAAA,QAAYy/H,OAAA,sBAAAz9H,EAAAi1J,iBAAA,gCAA8Ej1J,EAAAw2H,GAAA,WAAAx4H,EAAA,QAA4Bw/H,YAAA,qBAAArnF,MAAAn2C,EAAAk2J,cAAA,KAA0Dl2J,EAAA+2H,GAAA/2H,EAAAs2H,GAAAt2H,EAAAw0J,UAAAx0J,EAAAw2J,WAAAx2J,EAAA8gH,IAAA,IAAA9gH,EAAA8gH,IAAA,SAA8DjyG,MAAA7O,EAAA8gH,IAAA,GAAArvF,MAAA,KAAuB,KAAAzxB,EAAA+2H,GAAA,KAAA/4H,EAAA,OAA2BkJ,IAAA,OAAAu2H,OAAAz9H,EAAAm1J,cAAA,kBAAAh/G,OAAAn2C,EAAAo2J,UAAAp2J,EAAAi2J,aAAA,IAAApyI,IAA8F20I,UAAA,SAAA94J,GAAsBM,EAAAq3J,UAAA,IAAeoB,WAAA,SAAA/4J,GAAwBM,EAAAq3J,UAAA,OAAiBr5J,EAAA,QAAYy/H,OAAA,sBAAAz9H,EAAAi1J,iBAAA,gCAA8Ej1J,EAAAw2H,GAAA,WAAAx4H,EAAA,QAA4Bw/H,YAAA,qBAAArnF,MAAAn2C,EAAAk2J,cAAA,KAA0Dl2J,EAAA+2H,GAAA/2H,EAAAs2H,GAAAt2H,EAAAw0J,UAAAx0J,EAAAw2J,WAAAx2J,EAAA8gH,IAAA,IAAA9gH,EAAA8gH,IAAA,SAA8DjyG,MAAA7O,EAAA8gH,IAAA,GAAArvF,MAAA,KAAuB,OAAAzzB,EAAA,OAAmBkJ,IAAA,MAAAu2H,OAAAz9H,EAAAm1J,cAAA,kBAAAh/G,OAAAn2C,EAAAo2J,UAAAp2J,EAAAi2J,cAAApyI,IAA0F20I,UAAAx4J,EAAAq3J,UAAAoB,WAAAz4J,EAAAq3J,aAA8Cr5J,EAAA,QAAYy/H,OAAA,sBAAAz9H,EAAAi1J,iBAAA,6BAA2Ej1J,EAAAw2H,GAAA,WAAAx4H,EAAA,QAA4Bw/H,YAAA,qBAAArnF,MAAAn2C,EAAAk2J,gBAAuDl2J,EAAA+2H,GAAA/2H,EAAAs2H,GAAAt2H,EAAAw0J,UAAAx0J,EAAAw2J,WAAAx2J,EAAA8gH,KAAA9gH,EAAA8gH,UAAwDjyG,MAAA7O,EAAA8gH,OAAY,MAAA9gH,EAAA+2H,GAAA,KAAA/4H,EAAA,MAA2Bw/H,YAAA,wBAAmCx9H,EAAAu2H,GAAAv2H,EAAAs2J,iBAAA,SAAA52J,EAAAL,GAAuC,MAAArB,GAAA,MAAeuhF,IAAAlgF,EAAAm+H,YAAA,4BAAArnF,OAAAn2C,EAAAq2J,kBAAA32J,EAAAy2C,SAAkFn2C,EAAAw2H,GAAA,aAAAx2H,EAAA+zJ,UAAA/1J,EAAA,QAA0Cw/H,YAAA,2BAAArnF,OAAAn2C,EAAAy0J,eAAA/0J,EAAA+2J,QAAAz2J,EAAA00J,qBAAA,QAAsG10J,EAAAg3H,OAAWu/B,MAAA72J,EAAA62J,MAAA9kI,MAAApyB,EAAAq5J,MAAA,IAAAr5J,EAAAqsH,KAAArsH,IAAAW,EAAAs2J,iBAAAh2J,OAAA,IAAuEN,EAAA+2H,GAAA,KAAA/2H,EAAAw2H,GAAA,SAAAx2H,EAAAq0J,eAAAr2J,EAAA,QAAqDw/H,YAAA,6BAAArnF,OAAAn2C,EAAA80J,WAAAp1J,EAAA+2J,QAAAz2J,EAAA+0J,iBAAA,QAAgG/0J,EAAA+2H,GAAA,iBAAA/2H,EAAAs2H,GAAA52H,EAAA62J,OAAA,kBAAAv2J,EAAAg3H,OAAiEu/B,MAAA72J,EAAA62J,MAAA9kI,MAAApyB,EAAAq5J,MAAA,IAAAr5J,EAAAqsH,KAAArsH,IAAAW,EAAAs2J,iBAAAh2J,OAAA,KAAuE,MAAMN,EAAA+2H,GAAA,KAAA/4H,EAAA,OAAsBkJ,IAAA,UAAAs2H,YAAA,qBAAArnF,MAAAn2C,EAAA20J,gBAAoE,GAAA30J,EAAA+2H,GAAA,KAAA/2H,EAAAk1J,SAAAl1J,EAAA6J,KAAA7J,EAAAg3H,KAAAh5H,EAAA,SAAoD6oH,aAAavoH,KAAA,QAAA2iI,QAAA,UAAApyH,MAAA7O,EAAA8gH,IAAA6hB,WAAA,QAA4DnF,YAAA,qBAAAxS,OAA0C7+G,KAAA,QAAApC,IAAA/J,EAAA+J,IAAA5C,IAAAnH,EAAAmH,KAAiCiuH,UAAWvmH,MAAA7O,EAAA8gH,KAAYj9F,IAAK80I,IAAA,SAAAj5J,GAAgBM,EAAA8gH,IAAAphH,EAAAg2F,OAAA7mF,aAA2B4mH,qBAAqB,SAAAz1H,EAAAN,EAAA1B,GAAiB,GAAAqB,GAAArB,EAAA,EAAW,iBAAAqB,SAAAW,EAAAhC,EAAAqB,EAAA,MAAAA,EAAAyvJ,SAAA9uJ,EAAAlC,QAAAuB,EAAAyvJ,QAAoE9wJ,EAAA,cAAAqB,GAAA,IAAsB,SAAAW,EAAAN,EAAA1B,GAAiB,QAAAqB,GAAAW,GAAc,OAAAN,GAAA,EAAYA,EAAAM,EAAAM,OAAWZ,IAAA,CAAK,GAAA1B,GAAAgC,EAAAN,GAAAL,EAAA4B,EAAAjD,EAAAkI,GAAqB,IAAA7G,EAAA,CAAMA,EAAA8/H,MAAS,QAAAl/H,GAAA,EAAYA,EAAAZ,EAAAywJ,MAAAxvJ,OAAiBL,IAAAZ,EAAAywJ,MAAA7vJ,GAAAjC,EAAA8xJ,MAAA7vJ,GAA2B,MAAKA,EAAAjC,EAAA8xJ,MAAAxvJ,OAAiBL,IAAAZ,EAAAywJ,MAAAlpJ,KAAA9H,EAAAd,EAAA8xJ,MAAA7vJ,IAAgCZ,GAAAywJ,MAAAxvJ,OAAAtC,EAAA8xJ,MAAAxvJ,SAAAjB,EAAAywJ,MAAAxvJ,OAAAtC,EAAA8xJ,MAAAxvJ,YAA+D,CAAK,OAAA9B,MAAAyB,EAAA,EAAiBA,EAAAjC,EAAA8xJ,MAAAxvJ,OAAiBL,IAAAzB,EAAAoI,KAAA9H,EAAAd,EAAA8xJ,MAAA7vJ,IAA0BgB,GAAAjD,EAAAkI,KAASA,GAAAlI,EAAAkI,GAAAi5H,KAAA,EAAA2wB,MAAAtxJ,KAA0B,QAAAyB,KAAa,GAAAD,GAAAqI,SAAAC,cAAA,QAAsC,OAAAtI,GAAAmM,KAAA,WAAA9N,EAAAshG,YAAA3/F,KAA4C,QAAAlB,GAAAkB,GAAc,GAAAN,GAAA1B,EAAAqB,EAAAgJ,SAAAgyF,cAAA,2BAAAr6F,EAAAkG,GAAA,KAAuE,IAAA7G,EAAA,CAAM,GAAAS,EAAA,MAAAiB,EAAc1B,GAAAs2F,WAAA+Q,YAAArnG,GAA4B,GAAAlB,EAAA,CAAM,GAAAW,GAAAV,GAAUiB,GAAAD,MAAAa,KAAAP,EAAAlB,EAAAkd,KAAA,KAAArc,EAAAP,GAAA,GAAAd,EAAAQ,EAAAkd,KAAA,KAAArc,EAAAP,GAAA,OAAyDO,GAAAY,IAAAP,EAAAzB,EAAAyd,KAAA,KAAArc,GAAArB,EAAA,WAAyCqB,EAAAs2F,WAAA+Q,YAAArnG,GAA6B,OAAAK,GAAAM,GAAA,SAAAX,GAAwB,GAAAA,EAAA,CAAM,GAAAA,EAAA0pI,MAAA/oI,EAAA+oI,KAAA1pI,EAAAsxJ,QAAA3wJ,EAAA2wJ,OAAAtxJ,EAAAiwJ,YAAAtvJ,EAAAsvJ,UAAA,MAAsE5vJ,GAAAM,EAAAX,OAAOrB,MAAU,QAAAQ,GAAAwB,EAAAN,EAAA1B,EAAAqB,GAAoB,GAAAY,GAAAjC,EAAA,GAAAqB,EAAA0pI,GAAiB,IAAA/oI,EAAA4wJ,WAAA5wJ,EAAA4wJ,WAAAjN,QAAArkJ,EAAAI,EAAAO,OAA4C,CAAK,GAAAnB,GAAAuJ,SAAA6kG,eAAAjtG,GAAAzB,EAAAwB,EAAAmnI,UAAgD3oI,GAAAkB,IAAAM,EAAA0mG,YAAAloG,EAAAkB,IAAAlB,EAAA8B,OAAAN,EAAAwoG,aAAA1pG,EAAAN,EAAAkB,IAAAM,EAAA2/F,YAAA7gG,IAA4E,QAAAb,GAAA+B,EAAAN,GAAgB,GAAA1B,GAAA0B,EAAAqpI,IAAA1pI,EAAAK,EAAAixJ,MAAA1wJ,EAAAP,EAAA4vJ,SAAoC,IAAAjwJ,GAAAW,EAAAg8F,aAAA,QAAA38F,GAAAY,IAAAjC,GAAA,mBAAAiC,EAAA4uB,QAAA,SAAA7wB,GAAA,uDAA8HkxJ,KAAAK,SAAAC,mBAAAr6I,KAAAC,UAAAnV,MAAA,OAAAD,EAAA4wJ,WAAA5wJ,EAAA4wJ,WAAAjN,QAAA3lJ,MAA0G,CAAK,KAAKgC,EAAAyoG,YAAazoG,EAAA0mG,YAAA1mG,EAAAyoG,WAA6BzoG,GAAA2/F,YAAAt3F,SAAA6kG,eAAAlvG,KAA2C,GAAAmC,GAAA,mBAAAkI,SAAmC,uBAAA2oJ,gBAAA7wJ,EAAA,SAAAC,OAAA,0JAAmN,IAAAF,GAAAlC,EAAA,GAAAiD,KAAe5C,EAAA8B,IAAAkI,SAAA6nJ,MAAA7nJ,SAAA6oJ,qBAAA,YAAA9xJ,EAAA,KAAAhB,EAAA,EAAA0B,GAAA,EAAAiB,EAAA,aAA8F5C,EAAA,mBAAA+K,YAAA,eAAAwiB,KAAAxiB,UAAAC,UAAAm+D,cAAyFtnE,GAAAlC,QAAA,SAAAkC,EAAAN,EAAA1B,GAA0B8B,EAAA9B,CAAI,IAAAiC,GAAAC,EAAAF,EAAAN,EAAa,OAAAL,GAAAY,GAAA,SAAAP,GAAwB,OAAA1B,MAAAc,EAAA,EAAiBA,EAAAmB,EAAAK,OAAWxB,IAAA,CAAK,GAAAN,GAAAyB,EAAAnB,GAAAb,EAAAgD,EAAAzC,EAAA0H,GAAqBjI,GAAAkhI,OAAAnhI,EAAA4I,KAAA3I,GAAmByB,GAAAO,EAAAC,EAAAF,EAAAN,GAAAL,EAAAY,QAAuB,QAAAnB,GAAA,EAAYA,EAAAd,EAAAsC,OAAWxB,IAAA,CAAK,GAAAb,GAAAD,EAAAc,EAAW,QAAAb,EAAAkhI,KAAA,CAAe,OAAAh/H,GAAA,EAAYA,EAAAlC,EAAA6xJ,MAAAxvJ,OAAiBH,IAAAlC,EAAA6xJ,MAAA3vJ,WAAiBc,GAAAhD,EAAAiI,OAAmB,IAAA5G,GAAA,WAAiB,GAAAU,KAAS,iBAAAN,EAAA1B,GAAqB,MAAAgC,GAAAN,GAAA1B,EAAAgC,EAAAob,OAAAgF,SAAA3R,KAAA,WAA+C,SAAAzO,EAAAN,GAAeM,EAAAlC,QAAA,SAAAkC,EAAAN,GAAwB,OAAA1B,MAAAqB,KAAiBY,EAAA,EAAKA,EAAAP,EAAAY,OAAWL,IAAA,CAAK,GAAAnB,GAAAY,EAAAO,GAAAzB,EAAAM,EAAA,GAAAb,EAAAa,EAAA,GAAAqB,EAAArB,EAAA,GAAAoB,EAAApB,EAAA,GAAAmC,GAA0CiF,GAAAlG,EAAA,IAAAC,EAAA8oI,IAAA9qI,EAAA0yJ,MAAAxwJ,EAAAmvJ,UAAApvJ,EAAsCb,GAAAb,GAAAa,EAAAb,GAAAsxJ,MAAAlpJ,KAAA3F,GAAAjD,EAAA4I,KAAAvH,EAAAb,IAAqC0H,GAAA1H,EAAAsxJ,OAAA7uJ,KAAiB,MAAAjD,UjBw6X9hxB,SAAUD,EAAQgiH,EAAqBpiH,GAE7C,YkB16XA,IAAA8nD,GAAA,WAA0B,GAAAmzG,GAAAr5J,KAAas5J,EAAAD,EAAAx+B,eAA0B1C,EAAAkhC,EAAAlX,MAAAhqB,IAAAmhC,CAAwB,OAAAnhC,GAAA,OAAiB1M,OAAO9kH,GAAA,YAAewxH,EAAA,OAAY1M,OAAO9kH,GAAA,cAAiBwxH,EAAA,OAAY1M,OAAO9kH,GAAA,UAAa0yJ,EAAA7hC,GAAA6hC,EAAAtiC,GAAAsiC,EAAA7rI,SAAA6rI,EAAA7hC,GAAA,KAAAW,EAAA,OAAmD1M,OAAO9kH,GAAA,UAAa0yJ,EAAA7hC,GAAA6hC,EAAAtiC,GAAAsiC,EAAAvkJ,WAAAukJ,EAAA7hC,GAAA,KAAAW,EAAA,OAAqD1M,OAAO9kH,GAAA,YAAewxH,EAAA,cAAmBxwH,IAAA,SAAA8jH,OAAoBjhH,IAAA,EAAA5C,IAAA,EAAAV,OAAA,GAAAqyJ,WAAA,GAAA9E,SAAA,GAA0D57B,OAAQvpH,MAAA+pJ,EAAA,OAAAv3G,SAAA,SAAA03G,GAA4CH,EAAA7F,OAAAgG,GAAep2B,WAAA,aAAsB,MAChhBlN,KACAujC,GAAiBvzG,SAAAgwE,kBACjB1V,GAAA","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&¤tQueue&&(draining=!1,currentQueue.length?queue=currentQueue.concat(queue):queueIndex=-1,queue.length&&drainQueue())}function drainQueue(){if(!draining){var e=runTimeout(cleanUpNextTick);draining=!0;for(var t=queue.length;t;){for(currentQueue=queue,queue=[];++queueIndex<t;)currentQueue&¤tQueue[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=\"×\",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', ' ') : 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 '<': '<',\n '>': '>',\n '"': '\"',\n '&': '&',\n ' ': '\\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&¤tQueue&&(draining=!1,currentQueue.length?queue=currentQueue.concat(queue):queueIndex=-1,queue.length&&drainQueue())}function drainQueue(){if(!draining){var e=runTimeout(cleanUpNextTick);draining=!0;for(var t=queue.length;t;){for(currentQueue=queue,queue=[];++queueIndex<t;)currentQueue&¤tQueue[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=\"×\",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', ' ') : 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 '<': '<',\n '>': '>',\n '"': '\"',\n '&': '&',\n ' ': '\\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 |
