torque/dist/torque.full.js
2017-11-16 11:14:54 +01:00

18 lines
568 KiB
JavaScript
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

!function(e){if("object"==typeof exports&&"undefined"!=typeof module)module.exports=e();else if("function"==typeof define&&define.amd)define([],e);else{var t;"undefined"!=typeof window?t=window:"undefined"!=typeof global?t=global:"undefined"!=typeof self&&(t=self),t.torque=e()}}(function(){var define,module,exports;return function e(t,n,r){function i(o,u){if(!n[o]){if(!t[o]){var a=typeof require=="function"&&require;if(!u&&a)return a(o,!0);if(s)return s(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 i(n?n:e)},l,l.exports,e,t,n,r)}return n[o].exports}var s=typeof require=="function"&&require;for(var o=0;o<r.length;o++)i(r[o]);return i}({1:[function(e,t,n){var r=function(e,t){if(e<0)throw new Error("start must be a positive number");if(e>=t)throw new Error("start must be smaller than end");this.start=e,this.end=t};r.prototype={diff:function(){return this.end-this.start},isLast:function(e){return(e|0)===this.end}},t.exports=r},{}],2:[function(e,t,n){(function(n){function u(e,t){if(!t.steps)throw new Error("steps option missing");this.options=t,this.running=!1,this._tick=this._tick.bind(this),this._t0=+(new Date),this.callback=e,this._time=0,this.itemsReady=!1,this.options=r.extend({animationDelay:0,maxDelta:.2,loop:t.loop===undefined?!0:t.loop},this.options),this.steps(t.steps)}var r=e("./"),i=e("./animator-steps-range"),s=n.requestAnimationFrame||n.mozRequestAnimationFrame||n.webkitRequestAnimationFrame||n.msRequestAnimationFrame||function(e){return n.setTimeout(e,1e3/60)},o=n.cancelAnimationFrame||n.mozCancelAnimationFrame||n.webkitCancelAnimationFrame||n.msCancelAnimationFrame||function(e){clearTimeout(e)};u.prototype={start:function(){this.running=!0,s(this._tick),this.options.onStart&&this.options.onStart(),this.stepsRange().diff()===1&&(this.running=!1)},isRunning:function(){return this.running},stop:function(){this.pause(),this.time(this.stepsRange().start),this.options.onStop&&this.options.onStop()},time:function(e){if(!arguments.length)return this._time;this._time=e;var t=this.range(this.domain(this._time));this.callback(t)},toggle:function(){this.running?this.pause():this.start()},rescale:function(){return this.domainInv=r.math.linear(this.options.animationDelay,this.options.animationDelay+this.options.animationDuration),this.domain=this.domainInv.invert(),this.range=r.math.linear(0,this._defaultStepsRange.end),this.rangeInv=this.range.invert(),this.time(this._time),this.running?this.start():this.pause(),this},duration:function(e){return arguments.length?(this.options.animationDuration=e,this.time()>e&&this.time(0),this.rescale(),this):this.options.animationDuration},steps:function(e){return this.options.steps=e,this._defaultStepsRange=new i(0,e),this.rescale()},stepsRange:function(e,t){if(arguments.length===2){if(e<this._defaultStepsRange.start)throw new Error("start must be within default steps range");if(t>this._defaultStepsRange.end)throw new Error("end must be within default steps range");this._customStepsRange=new i(e,t),this.options.onStepsRange&&this.options.onStepsRange();var n=this.step()|0;(n<e||n>t)&&this.step(e)}return this._customStepsRange||this._defaultStepsRange},removeCustomStepsRange:function(){this._customStepsRange=undefined,this.options.onStepsRange&&this.options.onStepsRange()},step:function(e){if(arguments.length===0)return this.range(this.domain(this._time));this._time=this.domainInv(this.rangeInv(e))},pause:function(){this.running=!1,o(this._tick),this.options.onPause&&this.options.onPause()},_tick:function(){var e=+(new Date),t=(e-this._t0)*.001;t=Math.min(this.options.maxDelta,t),this._t0=e,this._time+=t;var n=this.stepsRange();n.isLast(this.step())&&(this.options.loop?this.step(n.start):(this.time(this.options.animationDuration),this.pause())),this.running&&(this.time(this._time),s(this._tick))}},t.exports=u}).call(this,typeof global!="undefined"?global:typeof self!="undefined"?self:typeof window!="undefined"?window:{})},{"./":11,"./animator-steps-range":1}],3:[function(e,t,n){var r={version:"1.0.0",style:{"comp-op":{css:"comp-op","default-value":"src-over","default-meaning":"add the current layer on top of other layers",doc:"Composite operation. This defines how this layer should behave relative to layers atop or below it.",type:["src","src-over","dst-over","src-in","dst-in","src-out","dst-out","src-atop","dst-atop","xor","darken","lighten"]}},layer:{"buffer-size":{"default-value":"0",type:"float","default-meaning":"No buffer will be used",doc:"Extra tolerance around the Layer extent (in pixels) used to when querying and (potentially) clipping the layer data during rendering"},"-torque-clear-color":{css:"-torque-clear-color",type:"color","default-value":"rgba(255, 255, 255, 0)","default-meaning":"full clear",doc:"color used to clear canvas on each frame"},"-torque-frame-count":{css:"-torque-frame-count","default-value":"128",type:"number","default-meaning":"the data is broken into 128 time frames",doc:"Number of animation steps/frames used in the animation. If the data contains a fewere number of total frames, the lesser value will be used."},"-torque-resolution":{css:"-torque-resolution","default-value":"2",type:"number","default-meaning":"",doc:"Spatial resolution in pixels. A resolution of 1 means no spatial aggregation of the data. Any other resolution of N results in spatial aggregation into cells of NxN pixels. The value N must be power of 2"},"-torque-animation-duration":{css:"-torque-animation-duration","default-value":"30",type:"number","default-meaning":"the animation lasts 30 seconds",doc:"Animation duration in seconds"},"-torque-aggregation-function":{css:"-torque-aggregation-function","default-value":"count(cartodb_id)",type:"string","default-meaning":"the value for each cell is the count of points in that cell",doc:"A function used to calculate a value from the aggregate data for each cell. See -torque-resolution"},"-torque-time-attribute":{css:"-torque-time-attribute","default-value":"time",type:"string","default-meaning":"the data column in your table that is of a time based type",doc:"The table column that contains the time information used create the animation"},"-torque-data-aggregation":{css:"-torque-data-aggregation","default-value":"linear",type:["cumulative"],"default-meaning":"previous values are discarded",doc:"A linear animation will discard previous values while a cumulative animation will accumulate them until it restarts"}},symbolizers:{"*":{"comp-op":{css:"comp-op","default-value":"src-over","default-meaning":"add the current layer on top of other layers",doc:"Composite operation. This defines how this layer should behave relative to layers atop or below it.",type:["src","src-over","dst-over","src-in","dst-in","src-out","dst-out","src-atop","dst-atop","xor","darken","lighten"]},opacity:{css:"opacity",type:"float",doc:"An alpha value for the style (which means an alpha applied to all features in separate buffer and then composited back to main buffer)","default-value":1,"default-meaning":"no separate buffer will be used and no alpha will be applied to the style after rendering"}},trail:{steps:{css:"trail-steps",type:"float","default-value":1,"default-meaning":"no trail steps",doc:"How many steps of trails are going to be rendered"}},polygon:{fill:{css:"polygon-fill",type:"color","default-value":"rgba(128,128,128,1)","default-meaning":"gray and fully opaque (alpha = 1), same as rgb(128,128,128)",doc:"Fill color to assign to a polygon"},"fill-opacity":{css:"polygon-opacity",type:"float",doc:"The opacity of the polygon","default-value":1,"default-meaning":"opaque"}},line:{stroke:{css:"line-color","default-value":"rgba(0,0,0,1)",type:"color","default-meaning":"black and fully opaque (alpha = 1), same as rgb(0,0,0)",doc:"The color of a drawn line"},"stroke-width":{css:"line-width","default-value":1,type:"float",doc:"The width of a line in pixels"},"stroke-opacity":{css:"line-opacity","default-value":1,type:"float","default-meaning":"opaque",doc:"The opacity of a line"},"stroke-linejoin":{css:"line-join","default-value":"miter",type:["miter","round","bevel"],doc:"The behavior of lines when joining"},"stroke-linecap":{css:"line-cap","default-value":"butt",type:["butt","round","square"],doc:"The display of line endings"}},markers:{file:{css:"marker-file",doc:"An SVG file that this marker shows at each placement. If no file is given, the marker will show an ellipse.","default-value":"","default-meaning":"An ellipse or circle, if width equals height",type:"uri"},opacity:{css:"marker-opacity",doc:"The overall opacity of the marker, if set, overrides both the opacity of both the fill and stroke","default-value":1,"default-meaning":"The stroke-opacity and fill-opacity will be used",type:"float"},"fill-opacity":{css:"marker-fill-opacity",doc:"The fill opacity of the marker","default-value":1,"default-meaning":"opaque",type:"float"},stroke:{css:"marker-line-color",doc:"The color of the stroke around a marker shape.","default-value":"black",type:"color"},"stroke-width":{css:"marker-line-width",doc:"The width of the stroke around a marker shape, in pixels. This is positioned on the boundary, so high values can cover the area itself.",type:"float"},"stroke-opacity":{css:"marker-line-opacity","default-value":1,"default-meaning":"opaque",doc:"The opacity of a line",type:"float"},fill:{css:"marker-fill","default-value":"blue",doc:"The color of the area of the marker.",type:"color"},"marker-type":{css:"marker-type",type:["rectangle","ellipse"],"default-value":"ellipse",doc:"The default marker-type. If a SVG file is not given as the marker-file parameter, the renderer provides either an rectangle or an ellipse (a circle if height is equal to width)"},width:{css:"marker-width","default-value":10,doc:"The width of the marker, if using one of the default types.",type:"float"}},point:{file:{css:"point-file",type:"uri",required:!1,"default-value":"none",doc:"Image file to represent a point"},opacity:{css:"point-opacity",type:"float","default-value":1,"default-meaning":"Fully opaque",doc:"A value from 0 to 1 to control the opacity of the point"}}},colors:{aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,134,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,250,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],grey:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,221],powderblue:[176,224,230],purple:[128,0,128],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[112,128,144],slategrey:[112,128,144],snow:[255,250,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,50],transparent:[0,0,0,0]}};t.exports={version:{latest:r,"1.0.0":r}}},{}],4:[function(e,t,n){(function(n){function i(){}var r=n.carto||e("carto");i.prototype={},i.optionsFromLayer=function(e){var t={};if(!e)return t;var n={"buffer-size":"buffer-size","-torque-frame-count":"steps","-torque-resolution":"resolution","-torque-animation-duration":"animationDuration","-torque-aggregation-function":"countby","-torque-time-attribute":"column","-torque-data-aggregation":"data_aggregation"};for(var r in n){var i=e.eval(r);if(i!==undefined){var s=n[r];t[s]=i}}return t},i.optionsFromCartoCSS=function(e){var t=(new r.RendererJS).render(e),n=t.findLayer({name:"Map"});return i.optionsFromLayer(n)},t.exports.TorqueLayer=i}).call(this,typeof global!="undefined"?global:typeof self!="undefined"?self:typeof window!="undefined"?window:{})},{carto:40}],5:[function(e,t,n){(function(e){function r(){var e=arguments,t=e[0];for(var n=1;n<e.length;++n){var r=e[n];for(var i in r)t[i]=r[i]}return t}function i(e){return r({},e)}function s(e){return typeof e=="function"||!1}function o(e){return e&&typeof e=="object"&&Object.prototype.toString.call(e)=="[object Array]"}function a(){return!!document.createElement("canvas")}function f(){return typeof navigator!="undefined"?navigator.userAgent:""}var n={};n.on=function(e,t){var n=this._evt_callbacks=this._evt_callbacks||{},r=n[e]||(n[e]=[]);return r.push(t),this},n.trigger=function(e){var t=this._evt_callbacks&&this._evt_callbacks[e];for(var n=0;t&&n<t.length;++n)t[n].apply(this,Array.prototype.slice.call(arguments,1));return this},n.fire=n.trigger,n.off=function(e,t){var n=this._evt_callbacks&&this._evt_callbacks[e];if(n&&!t)return delete this._evt_callbacks[e],this;var r=[];for(var i=0;n&&i<n.length;++i)n[i]===t&&r.push(i);while((i=r.pop())!==undefined)n.splice(i,1);return this},n.callbacks=function(e){return this._evt_callbacks&&this._evt_callbacks[e]||[]};var u={Uint8Array:typeof e.Uint8Array!="undefined"?e.Uint8Array:Array,Uint8ClampedArray:typeof e.Uint8ClampedArray!="undefined"?e.Uint8ClampedArray:Array,Uint32Array:typeof e.Uint32Array!="undefined"?e.Uint32Array:Array,Int16Array:typeof e.Int16Array!="undefined"?e.Int16Array:Array,Int32Array:typeof e.Int32Array!="undefined"?e.Int32Array:Array},l={sprites_to_images:f().indexOf("Safari")===-1&&f().indexOf("Firefox")===-1};t.exports={Event:n,extend:r,clone:i,isFunction:s,isArray:o,types:u,isBrowserSupported:a,flags:l}}).call(this,typeof global!="undefined"?global:typeof self!="undefined"?self:typeof window!="undefined"?window:{})},{}],6:[function(e,t,n){function r(e){function n(e,t){return function(){t.apply(e)}}this.isAdded_=!1,this.isAnimated_=!1,this.paneName_=r.DEFAULT_PANE_NAME_,this.updateHandler_=null,this.resizeHandler_=null,this.topLeft_=null,this.centerListener_=null,this.resizeListener_=null,this.needsResize_=!0,this.requestAnimationFrameId_=null;var t=document.createElement("canvas");t.style.position="absolute",t.style.top=0,t.style.left=0,t.style.pointerEvents="none",this.canvas=t,this.repositionFunction_=n(this,this.repositionCanvas_),this.resizeFunction_=n(this,this.resize_),this.requestUpdateFunction_=n(this,this.update_),e&&this.setOptions(e)}r.prototype=new google.maps.OverlayView,r.DEFAULT_PANE_NAME_="overlayLayer",r.CSS_TRANSFORM_=function(){var e=document.createElement("div"),t=["transform","WebkitTransform","MozTransform","OTransform","msTransform"];for(var n=0;n<t.length;n++){var r=t[n];if(e.style[r]!==undefined)return r}return t[0]}(),r.prototype.requestAnimFrame_=window.requestAnimationFrame||window.webkitRequestAnimationFrame||window.mozRequestAnimationFrame||window.oRequestAnimationFrame||window.msRequestAnimationFrame||function(e){return window.setTimeout(e,1e3/60)},r.prototype.cancelAnimFrame_=window.cancelAnimationFrame||window.webkitCancelAnimationFrame||window.mozCancelAnimationFrame||window.oCancelAnimationFrame||window.msCancelAnimationFrame||function(e){},r.prototype.setOptions=function(e){e.animate!==undefined&&this.setAnimate(e.animate),e.paneName!==undefined&&this.setPane(e.paneName),e.updateHandler!==undefined&&this.setUpdateHandler(e.updateHandler),e.resizeHandler!==undefined&&this.setResizeHandler(e.resizeHandler),e.readyHandler&&(this.readyHandler=e.readyHandler)},r.prototype.setAnimate=function(e){this.isAnimated_=!!e,this.isAnimated_&&this.scheduleUpdate()},r.prototype.isAnimated=function(){return this.isAnimated_},r.prototype.setPaneName=function(e){this.paneName_=e,this.setPane_()},r.prototype.setOpacity=function(e){this.canvas.style.opacity=e},r.prototype.getOpacity=function(){return this.canvas.style.opacity},r.prototype.getPaneName=function(){return this.paneName_},r.prototype.setPane_=function(){if(!this.isAdded_)return;var e=this.getPanes();if(!e[this.paneName_])throw new Error('"'+this.paneName_+'" is not a valid MapPane name.');e[this.paneName_].appendChild(this.canvas)},r.prototype.setResizeHandler=function(e){this.resizeHandler_=e},r.prototype.setUpdateHandler=function(e){this.updateHandler_=e},r.prototype.onAdd=function(){if(this.isAdded_)return;this.isAdded_=!0,this.setPane_(),this.resizeListener_=google.maps.event.addListener(this.getMap(),"resize",this.resizeFunction_),this.centerListener_=google.maps.event.addListener(this.getMap(),"center_changed",this.repositionFunction_),this.resize_(),this.repositionCanvas_(),this.readyHandler&&this.readyHandler()},r.prototype.onRemove=function(){if(!this.isAdded_)return;this.isAdded_=!1,this.topLeft_=null,this.canvas.parentElement.removeChild(this.canvas),this.centerListener_&&(google.maps.event.removeListener(this.centerListener_),this.centerListener_=null),this.resizeListener_&&(google.maps.event.removeListener(this.resizeListener_),this.resizeListener_=null),this.requestAnimationFrameId_&&(this.cancelAnimFrame_.call(window,this.requestAnimationFrameId_),this.requestAnimationFrameId_=null)},r.prototype.resize_=function(){if(!this.isAdded_)return;var e=this.getMap(),t=e.getDiv().offsetWidth,n=e.getDiv().offsetHeight,r=this.canvas.width,i=this.canvas.height;if(r!==t||i!==n)this.canvas.width=t,this.canvas.height=n,this.canvas.style.width=t+"px",this.canvas.style.height=n+"px",this.needsResize_=!0,this.scheduleUpdate()},r.prototype.draw=function(){this.repositionCanvas_()},r.prototype.repositionCanvas_=function(){var e=this.getMap().getBounds();this.topLeft_=new google.maps.LatLng(e.getNorthEast().lat(),e.getSouthWest().lng());var t=this.getProjection(),n=t.fromLatLngToDivPixel(this.topLeft_),i=(1<<this.getMap().getZoom())*256;Math.abs(n.x)>i&&(n.x-=i),this.canvas.style[r.CSS_TRANSFORM_]="translate("+Math.round(n.x)+"px,"+Math.round(n.y)+"px)",this.scheduleUpdate()},r.prototype.update_=function(){this.requestAnimationFrameId_=null;if(!this.isAdded_)return;this.isAnimated_&&this.scheduleUpdate(),this.needsResize_&&this.resizeHandler_&&(this.needsResize_=!1,this.resizeHandler_()),this.updateHandler_&&this.updateHandler_()},r.prototype.getTopLeft=function(){return this.topLeft_},r.prototype.scheduleUpdate=function(){this.isAdded_&&!this.requestAnimationFrameId_&&(this.requestAnimationFrameId_=this.requestAnimFrame_.call(window,this.requestUpdateFunction_))},t.exports=r},{}],7:[function(e,t,n){function r(e,t){this.tileSize=new google.maps.Size(256,256),this.maxZoom=19,this.name="Tile #s",this.alt="Canvas tile layer",this.tiles={},this.canvas_setup=e,this.render=t,t||(this.render=e)}r.prototype.create_tile_canvas=function(e,t,n){var r=n.createElement("canvas"),i=n.createElement("canvas");r.style.border=i.style.border="none",r.style.margin=i.style.margin="0",r.style.padding=i.style.padding="0";var s=r.getContext("2d");s.width=r.width=this.tileSize.width,s.height=r.height=this.tileSize.height;var o=i.getContext("2d");i.width=o.width=this.tileSize.width,i.height=o.height=this.tileSize.height;var u=e.x+"_"+e.y+"_"+t;return r.setAttribute("id",u),i.setAttribute("id",u),u in this.tiles&&delete this.tiles[u],this.tiles[u]={canvas:r,ctx:s,hit_canvas:i,hit_ctx:o,coord:e,zoom:t,primitives:null},this.canvas_setup&&this.canvas_setup(this.tiles[u],e,t),r},r.prototype.each=function(e){for(var t in this.tiles){var n=this.tiles[t];e(n)}},r.prototype.recreate=function(){for(var e in this.tiles){var t=this.tiles[e];this.canvas_setup(t,t.coord,t.zoom)}},r.prototype.redraw_tile=function(e){this.render(e,e.coord,e.zoom)},r.prototype.redraw=function(){for(var e in this.tiles){var t=this.tiles[e];this.render(t,t.coord,t.zoom)}},r.prototype.getTile=function(e,t,n){return this.create_tile_canvas(e,t,n)},r.prototype.releaseTile=function(e){var t=e.getAttribute("id");delete this.tiles[t]},t.exports=r},{}],8:[function(e,t,n){function r(){}r.prototype={_initTileLoader:function(e,t){this._map=e,this._projection=t,this._tiles={},this._tilesLoading={},this._tilesToLoad=0,this._updateTiles=this._updateTiles.bind(this),this._listeners=[],this._listeners.push(google.maps.event.addListener(this._map,"dragend",this._updateTiles),google.maps.event.addListener(this._map,"zoom_changed",this._updateTiles)),this.tileSize=256,this._updateTiles()},_removeTileLoader:function(){this._listeners.forEach(function(e){google.maps.event.removeListener(e)}),this._removeTiles()},_removeTiles:function(){for(var e in this._tiles)this._removeTile(e)},_reloadTiles:function(){this._removeTiles(),this._updateTiles()},_updateTiles:function(){if(!this._map)return;var e=this._map.getBounds(),t=this._map.getZoom(),n=this.tileSize,r=1<<t,i=new google.maps.LatLng(e.getNorthEast().lat(),e.getSouthWest().lng()),s=new google.maps.LatLng(e.getSouthWest().lat(),e.getNorthEast().lng());this._projection=this._map.getProjection();var o=this._projection.fromLatLngToPoint(i),u=this._projection.fromLatLngToPoint(s),a=new google.maps.Point(Math.floor(o.x*r/n),Math.floor(o.y*r/n)),f=new google.maps.Point(Math.floor(u.x*r/n),Math.floor(u.y*r/n));this._addTilesFromCenterOut(a,f),this._removeOtherTiles(a,f)},_removeOtherTiles:function(e,t){var n,r,i,s,o=this._map.getZoom();for(s in this._tiles)this._tiles.hasOwnProperty(s)&&(n=s.split(":"),r=parseInt(n[0],10),i=parseInt(n[1],10),z=parseInt(n[2],10),(z!==o||r<e.x||r>t.x||i<e.y||i>t.y)&&this._removeTile(s))},_removeTile:function(e){this.onTileRemoved&&this.onTileRemoved(this._tiles[e]),delete this._tiles[e],delete this._tilesLoading[e]},_tileKey:function(e){return e.x+":"+e.y+":"+e.zoom},_tileShouldBeLoaded:function(e){var t=this._tileKey(e);return!(t in this._tiles)&&!(t in this._tilesLoading)},_tileLoaded:function(e,t){this._tilesToLoad--;var n=e.x+":"+e.y+":"+e.zoom;this._tiles[n]=t,delete this._tilesLoading[n],this._tilesToLoad===0&&this.onTilesLoaded&&this.onTilesLoaded()},getTilePos:function(e){var t=1<<this._map.getZoom();e={x:(e.x%t+t)%t,y:e.y},e=new google.maps.Point(e.x*this.tileSize,e.y*this.tileSize);var n=this._map.getBounds(),r=new google.maps.LatLng(n.getNorthEast().lat(),n.getSouthWest().lng()),i=this._map.getProjection().fromLatLngToPoint(r);return zoom=1<<this._map.getZoom(),i.x=i.x*zoom,i.y=i.y*zoom,new google.maps.Point(e.x-i.x,e.y-i.y)},_addTilesFromCenterOut:function(e,t){function f(e){var t=e.x-r.x,n=e.y-r.y;return t*t+n*n}var n=[],r=new google.maps.Point((e.x+t.x)*.5,(e.y+t.y)*.5),i=this._map.getZoom(),s,o,u;for(s=e.y;s<=t.y;s++)for(o=e.x;o<=t.x;o++)u=new google.maps.Point(o,s),u.zoom=i,this._tileShouldBeLoaded(u)&&n.push(u);var a=n.length;if(a===0)return;n.sort(function(e,t){return f(e)-f(t)}),this._tilesToLoad+=a;for(o=0;o<a;o++){var l=n[o],c=this._tileKey(l);this._tilesLoading[c]=l,this.onTileAdded&&this.onTileAdded(l)}this.onTilesLoading&&this.onTilesLoading()}},t.exports=r},{}],9:[function(e,t,n){var r={};typeof google!="undefined"&&typeof google.maps!="undefined"&&(r=e("./torque"),r.GMapsTileLoader=e("./gmaps_tileloader_mixin")),t.exports=r},{"./gmaps_tileloader_mixin":8,"./torque":10}],10:[function(e,t,n){(function(n){function a(e){var t=this;if(!i.isBrowserSupported())throw new Error("browser is not supported by torque");this.keys=[0],Object.defineProperty(this,"key",{get:function(){return this.getKey()}}),this.shader=null,this.ready=!1,this.options=i.extend({},e),this.options=i.extend({provider:"windshaft",renderer:"point",resolution:2,steps:100,visible:!0},this.options),e.cartocss&&i.extend(this.options,i.common.TorqueLayer.optionsFromCartoCSS(e.cartocss)),e.tileJSON&&(this.options.provider="tileJSON"),this.hidden=!this.options.visible,this.animator=new i.Animator(function(e){var n=e|0;t.getKey()!==n&&t.setKey(n)},i.extend(i.clone(this.options),{onPause:function(){t.fire("pause")},onStop:function(){t.fire("stop")},onStart:function(){t.fire("play")},onStepsRange:function(){t.fire("change:stepsRange",t.animator.stepsRange())}})),this.play=this.animator.start.bind(this.animator),this.stop=this.animator.stop.bind(this.animator),this.pause=this.animator.pause.bind(this.animator),this.toggle=this.animator.toggle.bind(this.animator),this.setDuration=this.animator.duration.bind(this.animator),this.isRunning=this.animator.isRunning.bind(this.animator),s.call(this,{animate:!1,updateHandler:this.render,readyHandler:this.initialize})}function f(e){this.options=i.extend({},e),o.call(this,this._loadTile.bind(this),this.drawTile.bind(this)),this.initialize(e)}var r=n.carto||e("carto"),i=e("../"),s=e("./CanvasLayer"),o=e("./canvas_tile_layer"),u=e("./gmaps_tileloader_mixin");a.prototype=i.extend({},s.prototype,u.prototype,i.Event,{providers:{sql_api:i.providers.json,url_template:i.providers.JsonArray,windshaft:i.providers.windshaft,tileJSON:i.providers.tileJSON},renderers:{point:i.renderer.Point,pixel:i.renderer.Rectangle},initialize:function(){var e=this;this.onTileAdded=this.onTileAdded.bind(this),this.options.ready=function(){e.fire("change:bounds",{bounds:e.provider.getBounds()}),e.animator.steps(e.provider.getSteps()),e.animator.rescale(),e.fire("change:steps",{steps:e.provider.getSteps()}),e.setKeys(e.getKeys())},this.provider=new this.providers[this.options.provider](this.options),this.renderer=new this.renderers[this.options.renderer](this.getCanvas(),this.options),this.renderer.options.errorCallback=this.options.errorCallback,this._cacheListener=google.maps.event.addListener(this.map,"zoom_changed",function(){e.renderer&&e.renderer.clearSpriteCache()}),this._initTileLoader(this.map,this.getProjection()),this.shader&&this.renderer.setShader(this.shader)},hide:function(){return this.hidden?this:(this.pause(),this.clear(),this.hidden=!0,this)},show:function(){return this.hidden?(this.hidden=!1,this.play(),this.options.steps===1&&this.redraw(),this):this},setSQL:function(e){if(this.provider.options.named_map)throw new Error("SQL queries on named maps are read-only");if(!this.provider||!this.provider.setSQL)throw new Error("this provider does not support SQL");return this.provider.setSQL(e),this._reloadTiles(),this},setBlendMode:function(e){this.renderer&&this.renderer.setBlendMode(e),this.redraw()},setSteps:function(e){this.provider&&this.provider.setSteps(e),this.animator&&this.animator.steps(e),this._reloadTiles()},setColumn:function(e,t){this.provider&&this.provider.setColumn(e,t),this._reloadTiles()},getTimeBounds:function(){return this.provider&&this.provider.getKeySpan()},getCanvas:function(){return this.canvas},onTileAdded:function(e){var t=this,n=function(n,r){if(e.zoom!==t.map.getZoom())return;t._tileLoaded(e,n),n&&t.redraw(),t.fire("tileLoaded"),r&&t.fire("tileError",r)};this.provider.getTileData(e,e.zoom,n)},clear:function(){var e=this.canvas;e.width=e.width},render:function(){if(this.hidden)return;var e,t,n,r=this.canvas;this.renderer.clearCanvas();var i=r.getContext("2d");for(e in this._tiles)t=this._tiles[e],t&&(n=this.getTilePos(t.coord),i.setTransform(1,0,0,1,n.x,n.y),this.renderer.renderTile(t,this.keys));this.renderer.applyFilters()},getActivePointsBBox:function(e){var t=[],n=this.options.resolution*(256/this.options.resolution-1);for(var r in this._tiles){var i=this._tiles[r];t=t.concat(this.renderer.getActivePointsBBox(i,e))}return t},setKey:function(e){this.setKeys([e])},getKeys:function(){return this.keys},setKeys:function(e){this.keys=e,this.animator.step(this.getKey()),this.redraw(),this.fire("change:time",{time:this.getTime(),step:this.getKey()})},getKey:function(){return this.keys[0]},setStep:function(e){if(e===undefined||e.length!==undefined)throw new Error("setTime only accept scalars");this.setKey(e)},renderRange:function(e,t){this.pause();var n=[];for(var r=e;r<=t;r++)n.push(r);this.setKeys(n)},resetRenderRange:function(){this.stop(),this.play()},stepToTime:function(e){if(!this.provider)return 0;var t=this.provider.getKeySpan(),n=t.start+(t.end-t.start)*(e/this.provider.getSteps());return new Date(n)},timeToStep:function(e){typeof e=="Date"&&(e=e.getTime());if(!this.provider)return 0;var t=this.provider.getKeySpan(),n=this.provider.getSteps()*(e-t.start)/(t.end-t.start);return n},getStep:function(){return this.getKey()},getTime:function(){return this.stepToTime(this.getKey())},setCartoCSS:function(e){if(!this.renderer)throw new Error("renderer is not valid");if(this.provider&&this.provider.options.named_map)return console.log("Torque layer: CartoCSS style on named maps is read-only"),!1;var t=(new r.RendererJS).render(e);this.shader=t,this.renderer&&this.renderer.setShader(t);var n=i.common.TorqueLayer.optionsFromLayer(t.findLayer({name:"Map"}));return this.provider&&this.provider.setCartoCSS&&this.provider.setCartoCSS(e),this.provider&&this.provider.setOptions(n)&&this._reloadTiles(),i.extend(this.options,n),n.animationDuration&&this.animator.duration(n.animationDuration),this.redraw(),this},redraw:function(){this.scheduleUpdate()},onRemove:function(){this.fire("remove"),s.prototype.onRemove.call(this),this.animator.stop(),this._removeTileLoader(),google.maps.event.removeListener(this._cacheListener)},getValues:function(e){var t=[];e=e===undefined?this.getKey():e;var n,r;for(n in this._tiles)r=this._tiles[n],this.renderer.getValues(r,e,t);return t},getValueForPos:function(e,t,n){n=n===undefined?this.getKey():n;var r,i,s,o=null,u,a;for(r in this._tiles){i=this._tiles[r],s=this.getTilePos(i.coord),u=e-s.x,a=t-s.y,u>=0&&a>=0&&u<this.renderer.TILE_SIZE&&a<=this.renderer.TILE_SIZE&&(o=this.renderer.getValueFor(i,n,u,a));if(o!==null)return o}return null},pointCount:function(e){var t,n;e=e===undefined?this.key:e;var r=0;for(t in this._tiles)n=this._tiles[t],n&&(r+=n.timeCount[e]);return r},getValueForBBox:function(e,t,n,r){var i=e+n,s=t+r,o=0;for(_y=t;t<s;t+=this.options.resolution)for(_x=e;e<i;e+=this.options.resolution){var u=this.getValueForPos(_x,_y);if(u){var a=u.bbox,f=this.getProjection(),l=f.fromLatLngToContainerPixel(new google.maps.LatLng(a[1].lat,a[1].lon));l.x<i&&l.y<s&&(o+=u.value)}}return o},error:function(e){return this.options.errorCallback=e,this}}),f.prototype=i.extend({},o.prototype,{providers:{sql_api:i.providers.json,url_template:i.providers.JsonArray},renderers:{point:i.renderer.Point,pixel:i.renderer.Rectangle},initialize:function(e){var t=this;this.keys=[0],this.options.renderer=this.options.renderer||"pixel",this.options.provider=this.options.provider||"sql_api",this.provider=new this.providers[this.options.provider](e),this.renderer=new this.renderers[this.options.renderer](null,e)},_tileLoaded:function(e,t){e.data=t,this.drawTile(e)},_loadTile:function(e
,t,n){var r=this,i=1<<n,s={x:(t.x%i+i)%i,y:t.y};this.provider.getTileData(s,n,function(t){r._tileLoaded(e,t)})},drawTile:function(e){var t=e.canvas;if(!e.data)return;t.width=t.width,this.renderer.setCanvas(t);var n=this.renderer.accumulate(e.data,this.getKey());this.renderer.renderTileAccum(n,0,0)},setKey:function(e){this.keys=[e],this.redraw()},setCartoCSS:function(e){if(!this.renderer)throw new Error("renderer is not valid");return this.renderer.setCartoCSS(e)},setStepsRange:function(e,t){this.animator.stepsRange(e,t)},removeStepsRange:function(){this.animator.removeCustomStepsRange()},getStepsRange:function(){return this.animator.stepsRange()}}),t.exports={GMapsTiledTorqueLayer:f,GMapsTorqueLayer:a}}).call(this,typeof global!="undefined"?global:typeof self!="undefined"?self:typeof window!="undefined"?window:{})},{"../":11,"./CanvasLayer":6,"./canvas_tile_layer":7,"./gmaps_tileloader_mixin":8,carto:40}],11:[function(e,t,n){t.exports=e("./core"),t.exports.Animator=e("./animator"),t.exports.cartocss_reference=e("./cartocss_reference"),t.exports.common=e("./common"),t.exports.math=e("./math"),t.exports.Mercator=e("./mercator"),t.exports.net=e("./request"),t.exports.renderer=e("./renderer"),t.exports.providers=e("./provider"),e("./leaflet");var r=e("./gmaps");t.exports.GMapsTileLoader=r.GMapsTileLoader,t.exports.GMapsTorqueLayer=r.GMapsTorqueLayer,t.exports.GMapsTiledTorqueLayer=r.GMapsTiledTorqueLayer,e("./ol")},{"./animator":2,"./cartocss_reference":3,"./common":4,"./core":5,"./gmaps":9,"./leaflet":13,"./math":16,"./mercator":17,"./ol":19,"./provider":23,"./renderer":30,"./request":34}],12:[function(e,t,n){e("./leaflet_tileloader_mixin"),L.CanvasLayer=L.Layer.extend({includes:[L.Mixin.Events,L.Mixin.TileLoader],options:{minZoom:0,maxZoom:28,tileSize:256,subdomains:"abc",errorTileUrl:"",attribution:"",zoomOffset:0,opacity:1,unloadInvisibleTiles:L.Browser.mobile,updateWhenIdle:L.Browser.mobile,tileLoader:!1,zoomAnimation:!0},initialize:function(e){var t=this;e=e||{},this.render=this.render.bind(this),L.Util.setOptions(this,e),this._canvas=this._createCanvas(),this.options.zoomAnimation&&(this._backCanvas=this._createCanvas()),this._ctx=this._canvas.getContext("2d"),this.currentAnimationFrame=-1,this.requestAnimationFrame=window.requestAnimationFrame||window.mozRequestAnimationFrame||window.webkitRequestAnimationFrame||window.msRequestAnimationFrame||function(e){return window.setTimeout(e,1e3/60)},this.cancelAnimationFrame=window.cancelAnimationFrame||window.mozCancelAnimationFrame||window.webkitCancelAnimationFrame||window.msCancelAnimationFrame||function(e){clearTimeout(e)}},_createCanvas:function(){var e;e=document.createElement("canvas"),e.style.position="absolute",e.style.top=0,e.style.left=0,e.style.pointerEvents="none",e.style.zIndex=this.options.zIndex||0;var t="leaflet-tile-container";return this.options.zoomAnimation&&(t+=" leaflet-zoom-animated"),e.setAttribute("class",t),e},onAdd:function(e){this._map=e;var t=this._map._panes.tilePane,n=L.DomUtil.create("div","leaflet-layer");n.appendChild(this._canvas),this.options.zoomAnimation&&(n.appendChild(this._backCanvas),this._backCanvas.style.display="none"),t.appendChild(n),this._container=n,e.dragging._draggable.on("predrag",function(){var t=e.dragging._draggable;L.DomUtil.setPosition(this._canvas,{x:-t._newPos.x,y:-t._newPos.y})},this),e.on({viewreset:this._reset},this),e.on("move",this.redraw,this),e.on("resize",this._reset,this),this.options.zoomAnimation&&e.on({zoomanim:this._animateZoom,zoomend:this._endZoomAnim,moveend:this._reset},this),this.options.tileLoader&&this._initTileLoader(),this._reset()},_animateZoom:function(e){this._animating||(this._animating=!0);var t=this._backCanvas;t.width=this._canvas.width,t.height=this._canvas.height;var n=this._canvas._leaflet_pos||{x:0,y:0};t.getContext("2d").drawImage(this._canvas,0,0),L.DomUtil.setPosition(t,L.DomUtil.getPosition(this._canvas)),this._canvas.style.display="none",t.style.display="block";var r=this._map,i=r.getZoomScale(e.zoom),s=r._latLngToNewLayerPoint(r.getCenter(),e.zoom,e.center),o=r._latLngToNewLayerPoint(e.center,e.zoom,e.center),u={x:s.x-o.x+n.x,y:s.y-o.y+n.y},a=t,f=L.DomUtil.TRANSFORM;setTimeout(function(){a.style[f]="translate("+u.x+"px, "+u.y+"px) scale("+e.scale+") "},0)},_endZoomAnim:function(){this._animating=!1,this._canvas.style.display="block",this._backCanvas.style.display="none",this._backCanvas.style[L.DomUtil.TRANSFORM]=""},getCanvas:function(){return this._canvas},getAttribution:function(){return this.options.attribution},draw:function(){return this._reset()},onRemove:function(e){this._container.parentNode.removeChild(this._container),e.off({viewreset:this._reset,move:this.redraw,moveend:this._reset,resize:this._reset,zoomanim:this._animateZoom,zoomend:this._endZoomAnim},this)},addTo:function(e){return e.addLayer(this),this},error:function(e){return this.provider.options.errorCallback=e,this},setOpacity:function(e){return this.options.opacity=e,this._updateOpacity(),this},setZIndex:function(e){e=e!==void 0?e:1,this._container.style.zIndex=e,this._canvas.style.zIndex=e,this.options.zoomAnimation&&(this._backCanvas.style.zIndex=e)},bringToFront:function(){return this},bringToBack:function(){return this},_reset:function(){var e=this._map.getSize();this._canvas.width=e.x,this._canvas.height=e.y;var t=L.DomUtil.getPosition(this._map.getPanes().mapPane);t&&L.DomUtil.setPosition(this._canvas,{x:-t.x,y:-t.y}),this.onResize(),this._render()},_updateOpacity:function(){},_render:function(){this.currentAnimationFrame>=0&&this.cancelAnimationFrame.call(window,this.currentAnimationFrame),this.currentAnimationFrame=this.requestAnimationFrame.call(window,this.render)},redraw:function(e){var t=L.DomUtil.getPosition(this._map.getPanes().mapPane);t&&L.DomUtil.setPosition(this._canvas,{x:-t.x,y:-t.y}),e?this.render():this._render()},onResize:function(){},render:function(){throw new Error("render function should be implemented")}})},{"./leaflet_tileloader_mixin":14}],13:[function(e,t,n){typeof L!="undefined"&&e("./torque")},{"./torque":15}],14:[function(e,t,n){L.Mixin.TileLoader={_initTileLoader:function(){this._tilesLoading={},this._tilesToLoad=0,this._map.on({moveend:this._updateTiles},this),this._updateTiles()},_removeTileLoader:function(){this._map.off({moveend:this._updateTiles},this),this._removeTiles()},_updateTiles:function(){if(!this._map)return;var e=this._map.getPixelBounds(),t=this._map.getZoom(),n=this.options.tileSize;if(t>this.options.maxZoom||t<this.options.minZoom)return;var r=new L.Point(Math.floor(e.min.x/n),Math.floor(e.min.y/n)),i=new L.Point(Math.floor(e.max.x/n),Math.floor(e.max.y/n)),s=new L.Bounds(r,i);this._addTilesFromCenterOut(s),this._removeOtherTiles(s)},_removeTiles:function(e){for(var t in this._tiles)this._removeTile(t)},_reloadTiles:function(){this._removeTiles(),this._updateTiles()},_removeOtherTiles:function(e){var t,n,r,i,s,o=this._map.getZoom();for(s in this._tiles)this._tiles.hasOwnProperty(s)&&(t=s.split(":"),n=parseInt(t[0],10),r=parseInt(t[1],10),i=parseInt(t[2],10),(o!==i||n<e.min.x||n>e.max.x||r<e.min.y||r>e.max.y)&&this._removeTile(s))},_removeTile:function(e){this.fire("tileRemoved",this._tiles[e]),delete this._tiles[e],delete this._tilesLoading[e]},_tileKey:function(e){return e.x+":"+e.y+":"+e.zoom},_tileShouldBeLoaded:function(e){var t=this._tileKey(e);return!(t in this._tiles)&&!(t in this._tilesLoading)},_tileLoaded:function(e,t){this._tilesToLoad--;var n=e.x+":"+e.y+":"+e.zoom;this._tiles[n]=t,delete this._tilesLoading[n],this._tilesToLoad===0&&this.fire("tilesLoaded")},getTilePos:function(e){e=new L.Point(e.x,e.y);var t=this._map._getTopLeftPoint(this._map.getCenter()),n=this.options.tileSize;return e.multiplyBy(n).subtract(t)},_addTilesFromCenterOut:function(e){var t=[],n=e.getCenter(),r=this._map.getZoom();r=Math.round(r);var i,s,o;for(i=e.min.y;i<=e.max.y;i++)for(s=e.min.x;s<=e.max.x;s++)o=new L.Point(s,i),o.zoom=r,this._tileShouldBeLoaded(o)&&t.push(o);var u=t.length;if(u===0)return;t.sort(function(e,t){return e.distanceTo(n)-t.distanceTo(n)}),this._tilesToLoad+=u;for(s=0;s<u;s++){var a=t[s],f=this._tileKey(a);this._tilesLoading[f]=a,this.fire("tileAdded",a)}this.fire("tilesLoading")}}},{}],15:[function(e,t,n){(function(t){var n=t.carto||e("carto"),r=e("../");e("./canvas_layer"),L.TorqueLayer=L.CanvasLayer.extend({providers:{sql_api:r.providers.json,url_template:r.providers.JsonArray,windshaft:r.providers.windshaft,tileJSON:r.providers.tileJSON},renderers:{point:r.renderer.Point,pixel:r.renderer.Rectangle},initialize:function(e){var t=this;if(!r.isBrowserSupported())throw new Error("browser is not supported by torque");e.tileLoader=!0,this.keys=[0],this._tiles={},Object.defineProperty(this,"key",{get:function(){return this.getKey()}}),this.prevRenderedKey=0;if(e.cartocss){var n=e.cartocss.replace(/\n/g,"").match(/Map\s*?\{.*?}/g)[0];r.extend(e,r.common.TorqueLayer.optionsFromCartoCSS(n))}e.resolution=e.resolution||2,e.steps=e.steps||100,e.visible=e.visible===undefined?!0:e.visible,this.hidden=!e.visible,this.animator=new r.Animator(function(e){var n=e|0;t.getKey()!==n&&t.setKey(n,{direct:!0})},r.extend(r.clone(e),{onPause:function(){t.fire("pause")},onStop:function(){t.fire("stop")},onStart:function(){t.fire("play")},onStepsRange:function(){t.fire("change:stepsRange",t.animator.stepsRange())}})),this.play=this.animator.start.bind(this.animator),this.stop=this.animator.stop.bind(this.animator),this.pause=this.animator.pause.bind(this.animator),this.toggle=this.animator.toggle.bind(this.animator),this.setDuration=this.animator.duration.bind(this.animator),this.isRunning=this.animator.isRunning.bind(this.animator),L.CanvasLayer.prototype.initialize.call(this,e),this.options.renderer=this.options.renderer||"point",this.options.provider=this.options.provider||"windshaft",this.options.tileJSON&&(this.options.provider="tileJSON"),this.showLimitErrors=e.showLimitErrors,this.provider=new this.providers[this.options.provider](e),e.layer=this,this.renderer=new this.renderers[this.options.renderer](this.getCanvas(),e),e.ready=function(){t.fire("change:bounds",{bounds:t.provider.getBounds()}),t.animator.steps(t.provider.getSteps()),t.animator.rescale(),t.fire("change:steps",{steps:t.provider.getSteps()}),t.setKeys(t.getKeys())},this.on("tileLoaded",function(){t.renderer.setCartoCSS(t.renderer.style)}),this.renderer.on("allIconsLoaded",this.render.bind(this)),this.on("tileAdded",function(e){var n=function(n,r){if(e.zoom!==t._map.getZoom())return;t._tileLoaded(e,n),t._clearTileCaches(),n&&t.redraw(),t.fire("tileLoaded"),r&&t.fire("tileError",r)},r=this.provider.getTileData(e,e.zoom,n)},this)},_clearTileCaches:function(){var e,t;for(e in this._tiles)t=this._tiles[e],t&&t._tileCache&&(t._tileCache=null)},_clearCaches:function(){this.renderer&&this.renderer.clearSpriteCache(),this._clearTileCaches()},onAdd:function(e){e.on({zoomend:this._clearCaches,zoomstart:this._pauseOnZoom},this),e.on({zoomend:this._resumeOnZoom},this),L.CanvasLayer.prototype.onAdd.call(this,e)},onRemove:function(e){this.fire("remove"),this._removeTileLoader(),e.off({zoomend:this._clearCaches,zoomstart:this._pauseOnZoom},this),e.off({zoomend:this._resumeOnZoom},this),L.CanvasLayer.prototype.onRemove.call(this,e)},_pauseOnZoom:function(){this.wasRunning=this.isRunning(),this.wasRunning&&this.pause()},_resumeOnZoom:function(){this.wasRunning&&this.play()},hide:function(){return this.hidden?this:(this.pause(),this.clear(),this.hidden=!0,this)},show:function(){return this.hidden?(this.hidden=!1,this.play(),this.options.steps===1&&this.redraw(),this):this},setSQL:function(e){if(this.provider.options.named_map)throw new Error("SQL queries on named maps are read-only");if(!this.provider||!this.provider.setSQL)throw new Error("this provider does not support SQL");return this.provider.setSQL(e),this._reloadTiles(),this},setBlendMode:function(e){this.renderer.setBlendMode(e),this.redraw()},setSteps:function(e){this.provider.setSteps(e),this._reloadTiles()},setColumn:function(e,t){this.provider.setColumn(e,t),this._reloadTiles()},getTimeBounds:function(){return this.provider&&this.provider.getKeySpan()},clear:function(){var e=this.getCanvas();e.width=e.width},render:function(){if(this.hidden)return;var e,t,n,r=this.getCanvas();this.renderer.clearCanvas();var i=r.getContext("2d");for(e in this._tiles)t=this._tiles[e],t&&(this.animator.isRunning()&&(t._tileCache=null),n=this.getTilePos(t.coord),i.setTransform(1,0,0,1,n.x,n.y),t._tileCache?this.renderer._ctx.drawImage(t._tileCache,0,0):this.renderer.renderTile(t,this.keys));this.renderer.applyFilters();if(!this.animator.isRunning()&&this.getKey()===this.prevRenderedKey){var s=this.renderer.TILE_SIZE;for(e in this._tiles){t=this._tiles[e];if(t&&!t._tileCache){var o=t._tileCache=document.createElement("canvas");o.width=o.height=s,n=this.getTilePos(t.coord);var u=Math.max(0,n.x),a=Math.max(0,n.y),f=Math.min(s,this.getCanvas().width-u),l=Math.min(s,this.getCanvas().height-a);f>0&&l>0&&o.getContext("2d").drawImage(this.getCanvas(),u,a,f,l,u-n.x,a-n.y,f,l)}}}this.prevRenderedKey=this.getKey()},setKey:function(e,t){this.setKeys([e],t)},getKeys:function(){return this.keys},setKeys:function(e,t){this.keys=e,this.animator.step(this.getKey()),this._clearTileCaches(),this.redraw(t&&t.direct),this.fire("change:time",{time:this.getTime(),step:this.getKey(),start:this.getKey(),end:this.getLastKey()})},getKey:function(){return this.keys[0]},getLastKey:function(){return this.keys[this.keys.length-1]},setStep:function(e){if(e===undefined||e.length!==undefined)throw new Error("setTime only accept scalars");this.setKey(e)},renderRange:function(e,t){this.pause();var n=[];for(var r=e;r<=t;r++)n.push(r);this.setKeys(n)},resetRenderRange:function(){this.stop(),this.play()},stepToTime:function(e){var t=this.provider.getKeySpan(),n=t.start+(t.end-t.start)*(e/this.provider.getSteps());return new Date(n)},timeToStep:function(e){typeof e=="Date"&&(e=e.getTime());if(!this.provider)return 0;var t=this.provider.getKeySpan(),n=this.provider.getSteps()*(e-t.start)/(t.end-t.start);return n},getStep:function(){return this.getKey()},getTime:function(){return this.stepToTime(this.getKey())},getTimeSpan:function(){return this.provider.getKeySpan()},setCartoCSS:function(e){if(!this.renderer)throw new Error("renderer is not valid");if(this.provider&&this.provider.options.named_map)return console.log("Torque layer: CartoCSS style on named maps is read-only"),!1;this.renderer.setCartoCSS(e,function(){var t=r.common.TorqueLayer.optionsFromLayer(this.renderer._shader.findLayer({name:"Map"}));return this.provider.setCartoCSS&&this.provider.setCartoCSS(e),this.provider.setOptions(t)&&this._reloadTiles(),r.extend(this.options,t),t.animationDuration&&this.animator.duration(t.animationDuration),this._clearCaches(),this.redraw(),this}.bind(this))},getActivePointsBBox:function(e){var t=[];for(var n in this._tiles){var r=this._tiles[n];t=t.concat(this.renderer.getActivePointsBBox(r,e))}return t},getValues:function(e){var t=[];e=e===undefined?this.getKey():e;var n,r;for(n in this._tiles)r=this._tiles[n],this.renderer.getValues(r,e,t);return t},getValueForPos:function(e,t,n){n=n===undefined?this.getKey():n;var r,i,s,o=null,u,a;for(r in this._tiles){i=this._tiles[r],s=this.getTilePos(i.coord),u=e-s.x,a=t-s.y,u>=0&&a>=0&&u<this.renderer.TILE_SIZE&&a<=this.renderer.TILE_SIZE&&(o=this.renderer.getValueFor(i,n,u,a));if(o!==null)return o}return null},getValueForBBox:function(e,t,n,r){var i=e+n,s=t+r,o=e,u=0;for(_y=t;_y<s;_y+=this.options.resolution)for(o=e;o<i;o+=this.options.resolution){var a=this.getValueForPos(o,_y);if(a){var f=a.bbox,l=this._map.latLngToContainerPoint([f[1].lat,f[1].lon]);l.x<i&&l.y<s&&(u+=a.value)}}return u},pointCount:function(e){var t,n;e=e===undefined?this.key:e;var r=0;for(t in this._tiles)n=this._tiles[t],n&&(r+=n.timeCount[e]);return r},invalidate:function(){this.provider.reload()},setStepsRange:function(e,t){this.animator.stepsRange(e,t)},removeStepsRange:function(){this.animator.removeCustomStepsRange()},getStepsRange:function(){return this.animator.stepsRange()},onRemove:function(e){L.CanvasLayer.prototype.onRemove.apply(this,arguments),this.animator.stop()}})}).call(this,typeof global!="undefined"?global:typeof self!="undefined"?self:typeof window!="undefined"?window:{})},{"../":11,"./canvas_layer":12,carto:40}],16:[function(e,t,n){function r(e,t){return function(n){return Math.max(Math.min(n,t),e)}}function i(e,t){var n=r(0,1);return function(r){return n((r-e)/(t-e))}}function s(e,t){function s(r){return n(e*(1-r)+r*t)}var n=r(e,t);return s.invert=function(){return i(e,t)},s}t.exports={clamp:r,linear:s,invLinear:i}},{}],17:[function(e,t,n){function i(e,t,n){return t!==null&&(e=Math.max(e,t)),n!==null&&(e=Math.min(e,n)),e}function s(e){return e*(Math.PI/180)}function o(e){return e/(Math.PI/180)}var r=function(e,t){this.x=e||0,this.y=t||0},u=function(){this._tileSize=256,this._pixelOrigin=new r(this._tileSize/2,this._tileSize/2),this._pixelsPerLonDegree=this._tileSize/360,this._pixelsPerLonRadian=this._tileSize/(2*Math.PI)};u.prototype._fromLatLonToPoint=function(e,t){var n=new r(0,0),o=this._pixelOrigin;n.x=o.x+t*this._pixelsPerLonDegree;var u=i(Math.sin(s(e)),-0.9999,.9999);return n.y=o.y+.5*Math.log((1+u)/(1-u))*-this._pixelsPerLonRadian,n},u.prototype._fromPointToLatLon=function(e){var t=this,n=t._pixelOrigin,r=(e.x-n.x)/t._pixelsPerLonDegree,i=(e.y-n.y)/-t._pixelsPerLonRadian,s=o(2*Math.atan(Math.exp(i))-Math.PI/2);return{lat:s,lon:r}},u.prototype._tilePixelPos=function(e,t){return{x:e*this._tileSize,y:t*this._tileSize}},u.prototype.tilePixelBBox=function(e,t,n,i,s,o){o=o||1;var u=1<<n,a=o/u;return i=(e*this._tileSize+i)/u,s=(t*this._tileSize+s)/u,[this._fromPointToLatLon(new r(i,s+a)),this._fromPointToLatLon(new r(i+a,s))]},u.prototype.tileBBox=function(e,t,n,i){var s=1<<n;i=i||0;var o=(this._tileSize+i*2)/s,u=(e*this._tileSize-i)/s,a=(t*this._tileSize-i)/s;return[this._fromPointToLatLon(new r(u,a+o)),this._fromPointToLatLon(new r(u+o,a))]},u.prototype.latLonToTilePoint=function(e,t,n,i,s){var o=1<<s,u=this._fromLatLonToPoint(e,t),a=new r(u.x*o,u.y*o),f=this._tilePixelPos(n,i);return new r(Math.round(a.x-f.x),Math.round(a.y-f.y))},t.exports=u},{}],18:[function(e,t,n){e("./ol_tileloader_mixin"),ol.CanvasLayer=function(e){this.root_=document.createElement("div"),this.root_.setAttribute("class","ol-heatmap-layer"),this.options={subdomains:"abc",errorTileUrl:"",attribution:"",opacity:1,tileLoader:!1,tileSize:256},e=e||{},torque.extend(this.options,e),ol.TileLoader.call(this,this.options.tileSize,this.options.maxZoom),this.render=this.render.bind(this),this._canvas=this._createCanvas(),this.root_.appendChild(this._canvas),this._ctx=this._canvas.getContext("2d"),this.currentAnimationFrame=-1,this.requestAnimationFrame=window.requestAnimationFrame||window.mozRequestAnimationFrame||window.webkitRequestAnimationFrame||window.msRequestAnimationFrame||function(e){return window.setTimeout(e,1e3/60)},this.cancelAnimationFrame=window.cancelAnimationFrame||window.mozCancelAnimationFrame||window.webkitCancelAnimationFrame||window.msCancelAnimationFrame||function(e){clearTimeout(e)},e.map&&this.setMap(e.map)},ol.inherits(ol.CanvasLayer,ol.TileLoader),ol.CanvasLayer.prototype.setMap=function(e){this._map&&(this._map.unByKey(this.pointdragKey_),this._map.unByKey(this.sizeChangedKey_),this._map.unByKey(this.moveendKey_),this._map.getView().unByKey(this.centerChanged_)),this._map=e;if(e){var t=this._map.getViewport().getElementsByClassName("ol-overlaycontainer")[0];t.appendChild(this.root_),this.pointdragKey_=e.on("pointerdrag",this._render,this),this.moveendKey_=e.on("moveend",this._render,this),this.centerChanged_=e.getView().on("change:center",this._render,this),this.sizeChangedKey_=e.on("change:size",this._reset,this),this.options.tileLoader&&ol.TileLoader.prototype._initTileLoader.call(this,e),this._reset()}},ol.CanvasLayer.prototype._createCanvas=function(){var e;return e=document.createElement("canvas"),e.style.position="absolute",e.style.top=0,e.style.left=0,e.style.pointerEvents="none",e.style.zIndex=this.options.zIndex||0,e},ol.CanvasLayer.prototype._reset=function(){this._resize()},ol.CanvasLayer.prototype._resize=function(){var e=this._map.getSize(),t=e[0],n=e[1],r=this._canvas.width,i=this._canvas.height;if(r!==t||i!==n)this._canvas.width=t,this._canvas.height=n,this._canvas.style.width=t+"px",this._canvas.style.height=n+"px",this.root_.style.width=t+"px",this.root_.style.height=n+"px",this._render()},ol.CanvasLayer.prototype._render=function(){this.currentAnimationFrame>=0&&this.cancelAnimationFrame.call(window,this.currentAnimationFrame),this.currentAnimationFrame=this.requestAnimationFrame.call(window,this.render)},ol.CanvasLayer.prototype.getCanvas=function(){return this._canvas},ol.CanvasLayer.prototype.getAttribution=function(){return this.options.attribution},ol.CanvasLayer.prototype.draw=function(){return this._render()},ol.CanvasLayer.prototype.redraw=function(e){e?this.render():this._render()},t.exports=ol.CanvasLayer},{"./ol_tileloader_mixin":20}],19:[function(e,t,n){typeof ol!="undefined"&&e("./torque")},{"./torque":21}],20:[function(e,t,n){ol.TileLoader=function(e,t){this._tileSize=e,this._tiles={},this._tilesLoading={},this._tilesToLoad=0,this._updateTiles=this._updateTiles.bind(this),this._tileGrid=ol.tilegrid.createXYZ({maxZoom:t,tileSize:e})},ol.TileLoader.prototype._initTileLoader=function(e){this._map=e,this._view=e.getView(),this._centerChangedId=this._view.on("change:center",function(e){this._updateTiles()},this),this._postcomposeKey=undefined,this._resolutionChangedId=this._view.on("change:resolution",function(e){this._currentResolution=this._view.getResolution();if(this._postcomposeKey)return;this.fire("mapZoomStart"),this._postcomposeKey=this._map.on("postcompose",function(e){e.frameState.viewState.resolution===this._currentResolution&&(this._updateTiles(),this._map.unByKey(this._postcomposeKey),this._postcomposeKey=undefined,this.fire("mapZoomEnd"))},this)},this),this._updateTiles()},ol.TileLoader.prototype._removeTileLoader=function(){this._view.unByKey(this._centerChangedId),this._view.unByKey(this._resolutionChangedId),this._removeTiles()},ol.TileLoader.prototype._removeTiles=function(){for(var e in this._tiles)this._removeTile(e)},ol.TileLoader.prototype._reloadTiles=function(){this._removeTiles(),this._updateTiles()},ol.TileLoader.prototype._updateTiles=function(){if(!this._map)return;var e=this._tileGrid.getZForResolution(this._view.getResolution()),t=this._view.calculateExtent(this._map.getSize()),n=this._requestTilesForExtentAndZ(t,e);this._removeOtherTiles(n)},ol.TileLoader.prototype._removeOtherTiles=function(e){var t,n,r,i,s,o=this._tileGrid.getZForResolution(this._view.getResolution());for(s in this._tiles)this._tiles.hasOwnProperty(s)&&(t=s.split(":"),n=parseInt(t[0],10),r=parseInt(t[1],10),i=parseInt(t[2],10),(i!==o||n<e.minX||n>e.maxX||-r-1<e.minY||-r-1>e.maxY)&&this._removeTile(s))},ol.TileLoader.prototype._removeTile=function(e){this.fire("tileRemoved",this._tiles[e]),delete this._tiles[e],delete this._tilesLoading[e]},ol.TileLoader.prototype._tileKey=function(e){return e.x+":"+e.y+":"+e.zoom},ol.TileLoader.prototype._tileShouldBeLoaded=function(e){var t=this._tileKey(e);return!(t in this._tiles)&&!(t in this._tilesLoading)},ol.TileLoader.prototype._removeFromTilesLoading=function(e){this._tilesToLoad--;var t=this._tileKey(e);delete this._tilesLoading[t],this._tilesToLoad===0&&this.fire("tilesLoaded")},ol.TileLoader.prototype._tileLoaded=function(e,t){var n=this._tileKey(e);this._tiles[n]=t},ol.TileLoader.prototype.getTilePos=function(e){var t=this._tileGrid.getZForResolution(this._view.getResolution()),n=this._tileGrid.getTileCoordExtent([t,e.x,-e.y-1]),r=this._map.getPixelFromCoordinate([n[0],n[3]]);return{x:r[0],y:r[1]}},ol.TileLoader.prototype._requestTilesForExtentAndZ=function(e,t){var n=[],r=[];this._tileGrid.forEachTileCoord(e,t,function(e){r.push(e);var t={x:e[1],y:-e[2]-1,zoom:e[0]};this._tileShouldBeLoaded(t)&&n.push(t)}.bind(this));var i=n.length;if(i>0){this._tilesToLoad+=i;for(var s=0;s<i;s++){var o=n[s],u=this._tileKey(o);this._tilesLoading[u]=o,this.fire("tileAdded",o)}this.fire("tilesLoading")}var a={minX:r[0][1],maxX:r[r.length-1][1],minY:r[0][2],maxY:r[r.length-1][2]};return a},t.exports=ol.TileLoader},{}],21:[function(e,t,n){(function(n){var r=n.carto||e("carto"),i=e("../");e("./canvas_layer"),ol.TorqueLayer=function(e){var t=this;if(!i.isBrowserSupported())throw new Error("browser is not supported by torque");e.tileLoader=!0,this.keys=[0],Object.defineProperty(this,"key",{get:function(){return this.getKey()}}),this.prevRenderedKey=0,e.cartocss&&i.extend(e,i.common.TorqueLayer.optionsFromCartoCSS(e.cartocss)),e.resolution=e.resolution||2,e.steps=e.steps||100,e.visible=e.visible===undefined?!0:e.visible,this.hidden=!e.visible,this.animator=new i.Animator(function(e){var n=e|0;t.getKey()!==n&&t.setKey(n,{direct:!0})},i.extend(i.clone(e),{onPause:function(){t.fire("pause")},onStop:function(){t.fire("stop")},onStart:function(){t.fire("play")},onStepsRange:function(){t.fire("change:stepsRange",t.animator.stepsRange())}})),this.play=this.animator.start.bind(this.animator),this.stop=this.animator.stop.bind(this.animator),this.pause=this.animator.pause.bind(this.animator),this.toggle=this.animator.toggle.bind(this.animator),this.setDuration=this.animator.duration.bind(this.animator),this.isRunning=this.animator.isRunning.bind(this.animator),ol.CanvasLayer.call(this,e),this.options.renderer=this.options.renderer||"point",this.options.provider=this.options.provider||"windshaft",this.options.tileJSON&&(this.options.provider="tileJSON"),this.provider=new this.providers[this.options.provider](e),this.renderer=new this.renderers[this.options.renderer](this.getCanvas(),e),e.ready=function(){t.fire("change:bounds",{bounds:t.provider.getBounds()}),t.animator.steps(t.provider.getSteps()),t.animator.rescale(),t.fire("change:steps",{steps:t.provider.getSteps()}),t.setKeys(t.getKeys())},this.renderer.on("allIconsLoaded",this.render.bind(this)),this.on("tileAdded",function(e){var n=this.provider.getTileData(e,e.zoom,function(n){t._removeFromTilesLoading(e);if(e.zoom!==t._tileGrid.getZForResolution(t._view.getResolution()))return;t._tileLoaded(e,n),t.fire("tileLoaded"),n&&t.redraw()})},this),this.on("mapZoomStart",function(){this.getCanvas().style.display="none",this._pauseOnZoom()},this),this.on("mapZoomEnd",function(){this.getCanvas().style.display="block",this._resumeOnZoom()},this)},ol.TorqueLayer.prototype=i.extend({},ol.CanvasLayer.prototype,i.Event,{providers:{sql_api:i.providers.json,url_template:i.providers.JsonArray,windshaft:i.providers.windshaft,tileJSON:i.providers.tileJSON},renderers:{point:i.renderer.Point,pixel:i.renderer.Rectangle},onAdd:function(e){ol.CanvasLayer.prototype.setMap.call(this,e)},onRemove:function(e){this.fire("remove"),this._removeTileLoader()},_pauseOnZoom:function(){this.wasRunning=this.isRunning(),this.wasRunning&&this.pause()},_resumeOnZoom:function(){this.wasRunning&&this.play()},hide:function(){return this.hidden?this:(this.pause(),this.clear(),this.hidden=!0,this)},show:function(){return this.hidden?(this.hidden=!1,this.play(),this.options.steps===1&&this.redraw(),this):this},setSQL:function(e){if(this.provider.options.named_map)throw new Error("SQL queries on named maps are read-only");if(!this.provider||!this.provider.setSQL)throw new Error("this provider does not support SQL");return this.provider.setSQL(e),this._reloadTiles(),this},setBlendMode:function(e){this.renderer.setBlendMode(e),this.redraw()},setSteps:function(e){this.provider.setSteps(e),this._reloadTiles()},setColumn:function(e,t){this.provider.setColumn(e,t),this._reloadTiles()},getTimeBounds:function(){return this.provider&&this.provider.getKeySpan()},clear:function(){var e=this.getCanvas();e.width=e.width},render:function(){if(this.hidden)return;var e,t,n,r=this.getCanvas();this.renderer.clearCanvas();var i=r.getContext("2d");for(e in this._tiles)t=this._tiles[e],t&&(n=this.getTilePos(t.coord),i.setTransform(1,0,0,1,n.x,n.y),this.renderer.renderTile(t,this.keys));this.renderer.applyFilters()},setKey:function(e,t){this.setKeys([e],t)},getKeys:function(){return this.keys},setKeys:function(e,t){this.keys=e,this.animator.step(this.getKey()),this.redraw(t&&t.direct),this.fire("change:time",{time:this.getTime(),step:this.getKey(),start:this.getKey(),end:this.getLastKey()})},getKey:function(){return this.keys[0]},getLastKey:function(){return this.keys[this.keys.length-1]},setStep:function(e){if(e===undefined||e.length!==undefined)throw new Error("setTime only accept scalars");this.setKey(e)},renderRange:function(e,t){this.pause();var n=[];for(var r=e;r<=t;r++)n.push(r);this.setKeys(n)},resetRenderRange:function(){this.stop(),this.play()},stepToTime:function(e){var t=this.provider.getKeySpan(),n=t.start+(t.end-t.start)*(e/this.provider.getSteps());return new Date(n)},timeToStep:function(e){typeof e=="Date"&&(e=e.getTime());if(!this.provider)return 0;var t=this.provider.getKeySpan(),n=this.provider.getSteps()*(e-t.start)/(t.end-t.start);return n},getStep:function(){return this.getKey()},getTime:function(){return this.stepToTime(this.getKey())},getTimeSpan:function(){return this.provider.getKeySpan()},setCartoCSS:function(e){if(this.provider.options.named_map)throw new Error("CartoCSS style on named maps is read-only");if(!this.renderer)throw new Error("renderer is not valid");var t=(new r.RendererJS).render(e);this.renderer.setShader(t);var n=i.common.TorqueLayer.optionsFromLayer(t.findLayer({name:"Map"}));return this.provider.setCartoCSS&&this.provider.setCartoCSS(e),this.provider.setOptions(n)&&this._reloadTiles(),i.extend(this.options,n),n.animationDuration&&this.animator.duration(n.animationDuration),this.redraw(),this},getActivePointsBBox:function(e){var t=[];for(var n in this._tiles){var r=this._tiles[n];t=t.concat(this.renderer.getActivePointsBBox(r,e))}return t},getValues:function(e){var t=[];e=e===undefined?this.getKey():e;var n,r;for(n in this._tiles)r=this._tiles[n],this.renderer.getValues(r,e,t);return t},getValueForPos:function(e,t,n){n=n===undefined?this.getKey():n;var r,i,s,o=null,u,a;for(r in this._tiles){i=this._tiles[r],s=this.getTilePos(i.coord),u=e-s.x,a=t-s.y,u>=0&&a>=0&&u<this.renderer.TILE_SIZE&&a<=this.renderer.TILE_SIZE&&(o=this.renderer.getValueFor(i,n,u,a));if(o!==null)return o}return null},getValueForBBox:function(e,t,n,r){var i=e+n,s=t+r,o=e,u=0;for(_y=t;_y<s;_y+=this.options.resolution)for(o=e;o<i;o+=this.options.resolution){var a=this.getValueForPos(o,_y);if(a){var f=a.bbox,l=this._map.latLngToContainerPoint([f[1].lat,f[1].lon]);l.x<i&&l.y<s&&(u+=a.value)}}return u},pointCount:function(e){var t,n;e=e===undefined?this.key:e;var r=0;for(t in this._tiles)n=this._tiles[t],n&&(r+=n.timeCount[e]);return r},invalidate:function(){this.provider.reload()},setStepsRange:function(e,t){this.animator.stepsRange(e,t)},removeStepsRange:function(){this.animator.removeCustomStepsRange()},getStepsRange:function(){return this.animator.stepsRange()}}),t.exports=ol.TorqueLayer}).call(this,typeof global!="undefined"?global:typeof self!="undefined"?self:typeof window!="undefined"?window:{})},{"../":11,"./canvas_layer":18,carto:40}],22:[function(e,t,n){function i(){}function s(e){this.t0=null,this.name=e,this.count=0}var r=1024;i.metrics={},i.get=function(e){return i.metrics[e]||{max:0,min:Number.MAX_VALUE,avg:0,total:0,count:0,history:typeof Float32Array!="undefined"?new Float32Array(r):[]}},i.new_value=function(e,t){var n=i.metrics[e]=i.get(e);n.max=Math.max(n.max,t),n.min=Math.min(n.min,t),n.total+=t,++n.count,n.avg=n.total/n.count,n.history[n.count%r]=t},i.print_stats=function(){for(k in i.metrics){var e=i.metrics[k];console.log(" === "+k+" === "),console.log(" max: "+e.max),console.log(" min: "+e.min),console.log(" avg: "+e.avg),console.log(" count: "+e.count),console.log(" total: "+e.total)}},s.prototype={start:function(){return this.t0=+(new Date),this},_elapsed:function(){return+(new Date)-this.t0},end:function(){this.t0!==null&&(i.new_value(this.name,this._elapsed()),this.t0=null)},inc:function(e){e=e===undefined?1:e,i.new_value(this.name,i.get(this.name).count+(e?e:0))},dec:function(e){e=e===undefined?1:e,this.inc(-e)},mark:function(){++this.count;if(this.t0===null){this.start();return}var e=this._elapsed();e>1&&(i.new_value(this.name,this.count),this.count=0,this.start())}},i.metric=function(e){return new s(e)},t.exports=i},{}],23:[function(e,t,n){t.exports={json:e("./json"),JsonArray:e("./jsonarray"),windshaft:e("./windshaft"),tileJSON:e("./tilejson")}},{"./json":24,"./jsonarray":25,"./tilejson":26,"./windshaft":27}],24:[function(e,t,n){function a(e
){for(var t=1;t<arguments.length;++t){var n=arguments[t];for(var r in n)e=e.replace(RegExp("\\{"+r+"\\}","g"),n[r])}return e}var r=e("../"),i=e("../profiler"),s=r.types.Uint8Array,o=r.types.Int32Array,u=r.types.Uint32Array,f=function(e){this._ready=!1,this._tileQueue=[],this.options=e,this.options.is_time=this.options.is_time===undefined?!0:this.options.is_time,this.options.tiler_protocol=e.tiler_protocol||"http",this.options.tiler_domain=e.tiler_domain||"cartodb.com",this.options.tiler_port=e.tiler_port||80,this.options.data_aggregation&&(this.options.cumulative=this.options.data_aggregation==="cumulative");if(e.resolution===undefined)throw new Error("resolution should be provided");if(e.steps===undefined)throw new Error("steps should be provided");e.start===undefined?this._fetchKeySpan():this._setReady(!0)};f.prototype={proccessTile:function(e,t,n){var r,a=new s(e.length),f=new s(e.length),l=i.metric("ProviderJSON:mem"),c=i.metric("ProviderJSON:point_count"),h=i.metric("ProviderJSON:process_time").start(),p=0,d=-1;for(r=0;r<e.length;++r){var v=e[r];p+=v.dates__uint16.length;for(var m=0;m<v.dates__uint16.length;++m)d=Math.max(d,v.dates__uint16[m])}this.options.cumulative&&(p=(1+d)*e.length);var g=this.options.cumulative?u:s,y=new o(d+1),b=new o(d+1),w=new(this.options.valueDataType||g)(p),E=new u(p);l.inc(4*d+4*d+p+p*4),c.inc(e.length);var S={};for(var r=0;r<e.length;++r){var v=e[r];a[r]=v.x__uint8*this.options.resolution,v.y__uint8===-1?f[r]=0:f[r]=v.y__uint8*this.options.resolution;var p=v.dates__uint16,x=v.vals__uint8;if(!this.options.cumulative)for(var T=0,N=p.length;T<N;++T){var C=S[p[T]]||(S[p[T]]=[]);this.options.cumulative&&(x[T]+=prev_val),prev_val=x[T],C.push([r,x[T]])}else{var k={};for(var T=0,N=p.length;T<N;++T)k[p[T]]=x[T];var L=0;for(var T=p[0];T<=d;++T){var C=S[T]||(S[T]=[]),A=k[T];A&&(L+=A),C.push([r,L])}}}var O=0,M=0,_=0;for(var _=0;_<=d;++_){var D=0,P=S[_];if(P)for(var r=0;r<P.length;++r){var C=P[r];++D,E[O]=C[0],w[O]=C[1],++O}y[_]=M,b[_]=D,M+=D}return h.end(),{x:a,y:f,z:n,coord:{x:t.x,y:t.y,z:n},timeCount:b,timeIndex:y,renderDataPos:E,renderData:w,maxDate:d}},_host:function(){var e=this.options,t=e.sql_api_port,n=(e.user_name||e.user)+"."+(e.sql_api_domain||"cartodb.com")+(t?":"+t:""),r=e.sql_api_protocol||"http";return this.options.url||r+"://"+n+"/api/v2/sql"},url:function(e){var t=this.options,n=t.sql_api_protocol||"http";if(!this.options.cdn_url)return this._host();var r=n+"://";e&&(r+=e+".");var i=t.cdn_url;if(!i.http&&!i.https)throw new Error("cdn_host should contain http and/or https entries");return r+=i[n]+"/"+(t.user_name||t.user)+"/api/v2/sql",r},_hash:function(e){var t=0;if(!e||e.length==0)return t;for(var n=0,r=e.length;n<r;++n)t=(t<<5)-t+e.charCodeAt(n)|0;return t},_extraParams:function(){if(this.options.extra_params){var e=[];for(var t in this.options.extra_params){var n=this.options.extra_params[t];n&&e.push(t+"="+encodeURIComponent(n))}return e.join("&")}return null},isHttps:function(){return this.options.sql_api_protocol&&this.options.sql_api_protocol==="https"},sql:function(e,t,n){n=n||{};var i=this.options.subdomains||"0123";this.isHttps()&&(i=[null]);var s;n.no_cdn?s=this._host():s=this.url(i[Math.abs(this._hash(e))%i.length]);var o=this._extraParams();r.net.get(s+"?q="+encodeURIComponent(e)+(o?"&"+o:""),function(e){n.parseJSON&&(e=JSON.parse(e&&e.responseText)),t&&t(e)})},getTileData:function(e,t,n){this._ready?this._getTileData(e,t,n):this._tileQueue.push([e,t,n])},_setReady:function(e){this._ready=!0,this._processQueue(),this.options.ready&&this.options.ready()},_processQueue:function(){var e;while(e=this._tileQueue.pop())this._getTileData.apply(this,e)},_getTileData:function(e,t,n){var r=i.metric("ProviderJSON:tile_fetch_time").start();this.table=this.options.table;var s=1<<t,o=this.options.column;this.options.is_time&&(o=a("date_part('epoch', {column})",this.options));var u="WITH par AS ( SELECT CDB_XYZ_Resolution({zoom})*{resolution} as res, 256/{resolution} as tile_size, CDB_XYZ_Extent({x}, {y}, {zoom}) as ext ),cte AS ( SELECT ST_SnapToGrid(i.the_geom_webmercator, p.res) g, {countby} c, floor(({column_conv} - {start})/{step}) d FROM ({_sql}) i, par p WHERE i.the_geom_webmercator && p.ext GROUP BY g, d) SELECT (st_x(g)-st_xmin(p.ext))/p.res x__uint8, (st_y(g)-st_ymin(p.ext))/p.res y__uint8, array_agg(c) vals__uint8, array_agg(d) dates__uint16 FROM cte, par p where (st_y(g)-st_ymin(p.ext))/p.res < tile_size and (st_x(g)-st_xmin(p.ext))/p.res < tile_size GROUP BY x__uint8, y__uint8",f=a(u,this.options,{zoom:t,x:e.x,y:e.y,column_conv:o,_sql:this.getSQL()}),l=this;this.sql(f,function(i){if(i){var s=JSON.parse(i.responseText).rows;n(l.proccessTile(s,e,t))}else n(null);r.end()})},getKeySpan:function(){return{start:this.options.start*1e3,end:this.options.end*1e3,step:this.options.step,steps:this.options.steps,columnType:this.options.is_time?"date":"number"}},setColumn:function(e,t){this.options.column=e,this.options.is_time=t===undefined?!0:!1,this.reload()},setResolution:function(e){this.options.resolution=e},setOptions:function(e){var t=!1;e.resolution!==undefined&&e.resolution!==this.options.resolution&&(this.options.resolution=e.resolution,t=!0),e.steps!==undefined&&e.steps!==this.options.steps&&(this.setSteps(e.steps,{silent:!0}),t=!0),e.column!==undefined&&e.column!==this.options.column&&(this.options.column=e.column,t=!0),e.countby!==undefined&&e.countby!==this.options.countby&&(this.options.countby=e.countby,t=!0);if(e.data_aggregation!==undefined){var n=e.data_aggregation==="cumulative";this.options.cumulative!==n&&(this.options.cumulative=n,t=!0)}return t&&this.reload(),t},reload:function(){this._ready=!1,this._fetchKeySpan()},setSQL:function(e){this.options.sql!=e&&(this.options.sql=e,this.reload())},getSteps:function(){return Math.min(this.options.steps,this.options.data_steps)},setSteps:function(e,t){t=t||{},this.options.steps!==e&&(this.options.steps=e,this.options.step=(this.options.end-this.options.start)/this.getSteps(),this.options.step=this.options.step||1,t.silent||this.reload())},getBounds:function(){return this.options.bounds},getSQL:function(){return this.options.sql||"select * from "+this.options.table},_tilerHost:function(){var e=this.options,t=e.user_name||e.user;return e.tiler_protocol+"://"+(t?t+".":"")+e.tiler_domain+(e.tiler_port!=""?":"+e.tiler_port:"")},_fetchUpdateAt:function(e){var t=this,n={version:"1.0.1",stat_tag:this.options.stat_tag||"torque",layers:[{type:"cartodb",options:{cartocss_version:"2.1.1",cartocss:"#layer {}",sql:this.getSQL()}}]},i=this._tilerHost()+"/tiles/layergroup",s=this._extraParams();s&&(s=s.replace("api_key=","map_key=")),i=i+"?config="+encodeURIComponent(JSON.stringify(n))+"&callback=?"+(s?"&"+s:""),r.net.jsonp(i,function(n){var r=a("select * from ({sql}) __torque_wrap_sql limit 0",{sql:t.getSQL()});t.sql(r,function(t){n&&t&&e({updated_at:n.last_updated,fields:t.fields})},{parseJSON:!0})})},_fetchKeySpan:function(){var e=this,t,n,r,i;this._fetchUpdateAt(function(s){if(!s)return;e.options.extra_params=e.options.extra_params||{},e.options.extra_params.last_updated=s.updated_at||0,e.options.extra_params.cache_policy="persist",e.options.is_time=s.fields[e.options.column].type==="date";var o=e.options.column;e.options.is_time?(r="date_part('epoch', max({column}))",i="date_part('epoch', min({column}))",o=a("date_part('epoch', {column})",e.options)):(r="max({column})",i="min({column})"),t=a(r,{column:e.options.column}),n=a(i,{column:e.options.column});var u=" SELECT st_xmax(st_envelope(st_collect(the_geom))) xmax, st_ymax(st_envelope(st_collect(the_geom))) ymax, st_xmin(st_envelope(st_collect(the_geom))) xmin, st_ymin(st_envelope(st_collect(the_geom))) ymin, count(*) as num_steps, {max_col} max_date, {min_col} min_date FROM ({sql}) __torque_wrap_sql ",f=a(u,{max_col:t,min_col:n,column:o,sql:e.getSQL()});e.sql(f,function(t){t=t.rows[0],e.options.start=t.min_date,e.options.end=t.max_date,e.options.step=(t.max_date-t.min_date)/Math.min(e.options.steps,t.num_steps>>0),e.options.data_steps=t.num_steps>>0,e.options.step=e.options.step||1,e.options.bounds=[[t.ymin,t.xmin],[t.ymax,t.xmax]],e._setReady(!0)},{parseJSON:!0,no_cdn:!0})},{parseJSON:!0,no_cdn:!0})}},t.exports=f},{"../":11,"../profiler":22}],25:[function(e,t,n){function f(e,t){for(var n=1;n<arguments.length;++n){var t=arguments[n];for(var r in t)e=e.replace(RegExp("\\{"+r+"\\}","g"),t[r])}return e}var i=e("../"),s=e("../profiler"),o=i.types.Uint8Array,u=i.types.Int32Array,a=i.types.Uint32Array,l=function(e){this.options=e};l.prototype={aggregateByKey:function(e){function t(e){var t=3,n=e.data[2],r={};for(var i=0;i<n;++i)r[e.data[t+i]]=e.data[t+n+i];return r}var n={};for(r=0;r<e.length;++r){var i=t(e[r]);for(var s in i)n[s]=n[s]||0,n[s]+=i[s]}return n},proccessTile:function(e,t,n){function l(e){var t=3,n={x:e.data[0]*f.options.resolution,y:e.data[1]*f.options.resolution,valuesCount:e.data[2],times:[],values:[]};for(var r=0;r<n.valuesCount;++r)n.times.push(e.data[t+r]),n.values.push(e.data[t+n.valuesCount+r]);if(f.options.cumulative)for(var r=1;r<n.valuesCount;++r)n.values[r]+=n.values[r-1];return n}var r,i=new o(e.length),s=new o(e.length),f=this;for(r=0;r<e.length;++r)e[r]=l(e[r]);var c=0,h=0;for(r=0;r<e.length;++r){var p=e[r];c+=p.times.length;for(var d=0;d<p.times.length;++d)h=Math.max(h,p.times[d])}var v=new u(h+1),m=new u(h+1),g=new(this.options.valueDataType||o)(c),y=new a(c),b={};for(var r=0;r<e.length;++r){var p=e[r];i[r]=p.x,s[r]=p.y;var c=p.times,w=p.values;for(var E=0,S=c.length;E<S;++E){var x=b[c[E]]||(b[c[E]]=[]);x.push([r,w[E]])}}var T=0,N=0,C=0;for(var C=0;C<=h;++C){var k=0,L=b[C];if(L)for(var r=0;r<L.length;++r){var x=L[r];++k,y[T]=x[0],g[T]=x[1],++T}v[C]=N,m[C]=k,N+=k}return{x:i,y:s,coord:{x:t.x,y:t.y,z:n},timeCount:m,timeIndex:v,renderDataPos:y,renderData:g}},url:function(){return this.options.url},tileUrl:function(e,t){var n=this.url(),r=(this.options.subdomains||"abcd")[(e.x+e.y+t)%4];return n.replace("{x}",e.x).replace("{y}",e.y).replace("{z}",t).replace("{s}",r)},getTile:function(e,t,n){var r=this.tileUrl(e,t),o=this,u=s.metric("jsonarray:fetch time");u.start(),i.net.get(r,function(e){u.end(),e&&(e=JSON.parse(e.responseText)),n(e)})},getTileData:function(e,t,n){var r=this.tileUrl(e,t),o=this,u=s.metric("jsonarray:fetch time");u.start(),i.net.get(r,function(r){u.end();var i=null,a=s.metric("jsonarray:processing time"),f=s.metric("jsonarray:parsing time");try{a.start(),f.start();var l=JSON.parse(r.responseText||r.response).rows;f.end(),i=o.proccessTile(l,e,t),a.end()}catch(c){console.error("problem parsing JSON on ",e,t)}n(i)})}},t.exports=l},{"../":11,"../profiler":22}],26:[function(e,t,n){function a(e){for(var t=1;t<arguments.length;++t){var n=arguments[t];for(var r in n)e=e.replace(RegExp("\\{"+r+"\\}","g"),n[r])}return e}var r=e("../"),i=r.types.Uint8Array,s=r.types.Int32Array,o=r.types.Uint32Array,u=r.types.Uint8ClampedArray,f=function(e){this._ready=!1,this._tileQueue=[],this.options=e,this.options.coordinates_data_type=this.options.coordinates_data_type||i,this.options.data_aggregation&&(this.options.cumulative=this.options.data_aggregation==="cumulative");if(this.options.auth_token){var t=this.options.extra_params||(this.options.extra_params={});t.auth_token=this.options.auth_token}this.options.no_fetch_map||this._fetchMap()};f.prototype={NAME:"tileJSON",proccessTile:function(e,t,n){var r,i=new this.options.coordinates_data_type(e.length),a=new this.options.coordinates_data_type(e.length),f=0,l=-1;for(r=0;r<e.length;++r){var c=e[r];f+=c.dates__uint16.length;for(var h=0;h<c.dates__uint16.length;++h)l=Math.max(l,c.dates__uint16[h])}this.options.cumulative&&(f=(1+l)*e.length);var p=this.options.cumulative?o:u,d=new s(l+1),v=new s(l+1),m=new(this.options.valueDataType||p)(f),g=new o(f),y={};for(var r=0;r<e.length;++r){var c=e[r];i[r]=c.x__uint8*this.options.resolution,a[r]=c.y__uint8*this.options.resolution;var f=c.dates__uint16,b=c.vals__uint8;if(!this.options.cumulative)for(var w=0,E=f.length;w<E;++w){var S=y[f[w]]||(y[f[w]]=[]);this.options.cumulative&&(b[w]+=prev_val),prev_val=b[w],S.push([r,b[w]])}else{var x={};for(var w=0,E=f.length;w<E;++w)x[f[w]]=b[w];var T=0;for(var w=f[0];w<=l;++w){var S=y[w]||(y[w]=[]),N=x[w];N&&(T+=N),S.push([r,T])}}}var C=0,k=0,L=0;for(var L=0;L<=l;++L){var A=0,O=y[L];if(O)for(var r=0;r<O.length;++r){var S=O[r];++A,g[C]=S[0],m[C]=S[1],++C}d[L]=k,v[L]=A,k+=A}return{x:i,y:a,z:n,coord:{x:t.x,y:t.y,z:n},timeCount:v,timeIndex:d,renderDataPos:g,renderData:m,maxDate:l}},setSteps:function(e,t){t=t||{},this.options.steps!==e&&(this.options.steps=e,this.options.step=(this.options.end-this.options.start)/this.getSteps(),this.options.step=this.options.step||1,t.silent||this.reload())},setOptions:function(e){var t=!1;e.resolution!==undefined&&e.resolution!==this.options.resolution&&(this.options.resolution=e.resolution,t=!0),e.steps!==undefined&&e.steps!==this.options.steps&&(this.setSteps(e.steps,{silent:!0}),t=!0),e.column!==undefined&&e.column!==this.options.column&&(this.options.column=e.column,t=!0),e.countby!==undefined&&e.countby!==this.options.countby&&(this.options.countby=e.countby,t=!0);if(e.data_aggregation!==undefined){var n=e.data_aggregation==="cumulative";this.options.cumulative!==n&&(this.options.cumulative=n,t=!0)}return t&&this.reload(),t},_extraParams:function(e){e=r.extend(r.extend({},e),this.options.extra_params);if(e){var t=[];for(var n in e){var i=e[n];if(i)if(r.isArray(i))for(var s=0,o=i.length;s<o;s++)t.push(n+"[]="+encodeURIComponent(i[s]));else t.push(n+"="+encodeURIComponent(i))}return t.join("&")}return null},getTileData:function(e,t,n){this._ready?this._getTileData(e,t,n):this._tileQueue.push([e,t,n])},_setReady:function(e){this._ready=!0,this._processQueue(),this.options.ready&&this.options.ready()},_processQueue:function(){var e;while(e=this._tileQueue.pop())this._getTileData.apply(this,e)},_getTileData:function(e,t,n){var i=this,s=this.options.subdomains||"0123",o=Math.pow(2,t),u=(e.x%o+o)%o,a=Math.abs(u+e.y)%s.length,f=this._extraParams(),l=this.templateUrl.replace("{x}",u).replace("{y}",e.y).replace("{z}",t).replace("{s}",s[a]);l+=f,r.net.get(l,function(r){if(r&&r.responseText){var s=JSON.parse(r.responseText);n(i.proccessTile(s,e,t))}else n(null)})},getKeySpan:function(){return{start:this.options.start,end:this.options.end,step:this.options.step,steps:this.options.steps,columnType:this.options.column_type}},setColumn:function(e,t){this.options.column=e,this.options.is_time=t===undefined?!0:!1,this.reload()},reload:function(){this._ready=!1,this._fetchMap()},getSteps:function(){return Math.min(this.options.steps,this.options.data_steps)},getBounds:function(){return this.options.bounds},getSQL:function(){return this.options.sql||"select * from "+this.options.table},setSQL:function(e){this.options.sql!=e&&(this.options.sql=e,this.reload())},_isUserTemplateUrl:function(e){return e&&e.indexOf("{user}")!==-1},isHttps:function(){return this.options.maps_api_template.indexOf("https")===0},_fetchMap:function(e){var t=this;r.net.get(this.options.tileJSON,function(e){e=JSON.parse(e.response);if(e){if(e.errors){t.options.errorCallback&&t.options.errorCallback(e.errors);return}for(var n in e)t.options[n]=e[n];t.templateUrl=e.tiles[0],t.templateUrl.indexOf("http")!==0&&(t.templateUrl=t.options.tileJSON.substring(0,t.options.tileJSON.lastIndexOf("/")+1)+t.templateUrl),t._setReady(!0)}})}},t.exports=f},{"../":11}],27:[function(e,t,n){function f(e){for(var t=1;t<arguments.length;++t){var n=arguments[t];for(var r in n)e=e.replace(RegExp("\\{"+r+"\\}","g"),n[r])}return e}var r=e("../"),i=e("../profiler"),s=r.types.Uint8Array,o=r.types.Int32Array,u=r.types.Uint32Array,a=r.types.Uint8ClampedArray,l=function(e){this._ready=!1,this._tileQueue=[],this.options=e,this.options.is_time=this.options.is_time===undefined?!0:this.options.is_time,this.options.tiler_protocol=e.tiler_protocol||"http",this.options.tiler_domain=e.tiler_domain||"cartodb.com",this.options.tiler_port=e.tiler_port||80,e.maps_api_template?this.options.maps_api_template=e.maps_api_template:this._buildMapsApiTemplate(this.options),this.options.coordinates_data_type=this.options.coordinates_data_type||s,this.options.data_aggregation&&(this.options.cumulative=this.options.data_aggregation==="cumulative");if(this.options.auth_token){var t=this.options.extra_params||(this.options.extra_params={});t.auth_token=this.options.auth_token}this.options.no_fetch_map||this._fetchMap()};l.prototype={proccessTile:function(e,t,n){var r,s=new this.options.coordinates_data_type(e.length),f=new this.options.coordinates_data_type(e.length),l=i.metric("torque.provider.windshaft.mem"),c=i.metric("torque.provider.windshaft.points"),h=i.metric("torque.provider.windshaft.process_time").start(),p=0,d=-1;for(r=0;r<e.length;++r){var v=e[r];p+=v.dates__uint16.length;for(var m=0;m<v.dates__uint16.length;++m)d=Math.max(d,v.dates__uint16[m])}this.options.cumulative&&(p=(1+d)*e.length);var g=this.options.cumulative?u:a,y=new o(d+1),b=new o(d+1),w=new(this.options.valueDataType||g)(p),E=new u(p);l.inc(4*d+4*d+p+p*4),c.inc(e.length);var S={};for(var r=0;r<e.length;++r){var v=e[r];s[r]=v.x__uint8*this.options.resolution,f[r]=v.y__uint8*this.options.resolution;var p=v.dates__uint16,x=v.vals__uint8;if(!this.options.cumulative)for(var T=0,N=p.length;T<N;++T){var C=S[p[T]]||(S[p[T]]=[]);this.options.cumulative&&(x[T]+=prev_val),prev_val=x[T],C.push([r,x[T]])}else{var k={};for(var T=0,N=p.length;T<N;++T)k[p[T]]=x[T];var L=0;for(var T=p[0];T<=d;++T){var C=S[T]||(S[T]=[]),A=k[T];A&&(L+=A),C.push([r,L])}}}var O=0,M=0,_=0;for(var _=0;_<=d;++_){var D=0,P=S[_];if(P)for(var r=0;r<P.length;++r){var C=P[r];++D,E[O]=C[0],w[O]=C[1],++O}y[_]=M,b[_]=D,M+=D}return h.end(),{x:s,y:f,z:n,coord:{x:t.x,y:t.y,z:n},timeCount:b,timeIndex:y,renderDataPos:E,renderData:w,maxDate:d}},proccessTileError:function(e,t,n){return{error:e,coord:{x:t.x,y:t.y,z:n}}},setSteps:function(e,t){t=t||{},this.options.steps!==e&&(this.options.steps=e,this.options.step=(this.options.end-this.options.start)/this.getSteps(),this.options.step=this.options.step||1,t.silent||this.reload())},setOptions:function(e){var t=!1;e.resolution!==undefined&&e.resolution!==this.options.resolution&&(this.options.resolution=e.resolution,t=!0),e.steps!==undefined&&e.steps!==this.options.steps&&(this.setSteps(e.steps,{silent:!0}),t=!0),e.column!==undefined&&e.column!==this.options.column&&(this.options.column=e.column,t=!0),e.countby!==undefined&&e.countby!==this.options.countby&&(this.options.countby=e.countby,t=!0);if(e.data_aggregation!==undefined){var n=e.data_aggregation==="cumulative";this.options.cumulative!==n&&(this.options.cumulative=n,t=!0)}return t&&this.reload(),t},_extraParams:function(e){e=r.extend(r.extend({},e),this.options.extra_params);if(e){var t=[];for(var n in e){var i=e[n];if(i)if(r.isArray(i))for(var s=0,o=i.length;s<o;s++)t.push(n+"[]="+encodeURIComponent(i[s]));else t.push(n+"="+encodeURIComponent(i))}return t.join("&")}return null},getTileData:function(e,t,n){this._ready?this._getTileData(e,t,n):this._tileQueue.push([e,t,n])},_setReady:function(e){this._ready=!0,this._processQueue(),this.options.ready&&this.options.ready()},_processQueue:function(){var e;while(e=this._tileQueue.pop())this._getTileData.apply(this,e)},_getTileData:function(e,t,n){var s=this,o=i.metric("torque.provider.windshaft.tile.fetch").start(),u=this.options.subdomains||"0123",a=Math.pow(2,t),f=(e.x%a+a)%a,l=Math.abs(f+e.y)%u.length,c=this.templateUrl.replace("{x}",f).replace("{y}",e.y).replace("{z}",t).replace("{s}",u[l]),h=this._extraParams();r.net.get(c+(h?"?"+h:""),function(r){o.end();if(r&&r.responseText){var u=JSON.parse(r.responseText);if(r.status===429){var a=u.errors_with_context[0];n(s.proccessTileError(a,e,t),a)}else n(s.proccessTile(u,e,t))}else i.metric("torque.provider.windshaft.tile.error").inc(),n(null)})},getKeySpan:function(){return{start:this.options.start,end:this.options.end,step:this.options.step,steps:this.options.steps,columnType:this.options.column_type}},setColumn:function(e,t){this.options.column=e,this.options.is_time=t===undefined?!0:!1,this.reload()},reload:function(){this._ready=!1,this._fetchMap()},getSteps:function(){return Math.min(this.options.steps,this.options.data_steps)},getBounds:function(){return this.options.bounds},getSQL:function(){return this.options.sql||"select * from "+this.options.table},setSQL:function(e){this.options.sql!=e&&(this.options.sql=e,this.reload())},_buildMapsApiTemplate:function(e){var t=e.user_name||e.user;e.maps_api_template=e.tiler_protocol+"://"+(t?"{user}.":"")+e.tiler_domain+(e.tiler_port!=""?":"+e.tiler_port:"")},_tilerHost:function(){var e=this.options,t=e.user_name||e.user;return e.maps_api_template.replace("{user}",t)},url:function(){var e=this.options,t=e.cdn_url,n=!t||t&&!t.http&&!t.https;if(e.no_cdn||n)return this._tilerHost();var r=this.isHttps()?"https":"http",i=r+"://";this.isHttps()||(i+="{s}.");var s=t[r];this._isUserTemplateUrl(s)||(s+="/{user}");var o=e.user_name||e.user;return i+=s.replace("{user}",o),i},_isUserTemplateUrl:function(e){return e&&e.indexOf("{user}")!==-1},isHttps:function(){return this.options.maps_api_template.indexOf("https")===0},_generateCartoCSS:function(){var e={"-torque-frame-count":this.options.steps,"-torque-resolution":this.options.resolution,"-torque-aggregation-function":"'"+this.options.countby+"'","-torque-time-attribute":"'"+this.options.column+"'","-torque-data-aggregation":this.options.cumulative?"cumulative":"linear"},t="Map{";for(var n in e)t+=n+":"+e[n]+";";return t+"}"},_fetchMap:function(e){var t=this,n={},s=this.options.dynamic_cdn?this.url().replace("{s}","0"):this._tilerHost(),o=s+"/api/v1/map",u=this.options.named_map,a={};u?(o=s+"/api/v1/map/named/"+u.name+"/jsonp",typeof u.params!="undefined"&&(n=u.params)):n={version:"1.0.1",stat_tag:this.options.stat_tag||"torque",layers:[{type:"torque",options:{cartocss_version:"1.0.0",cartocss:this._generateCartoCSS(),sql:this.getSQL()}}]},this.options.stat_tag&&(a.stat_tag=this.options.stat_tag),extra=this._extraParams(a),extra&&(extra=extra.replace("api_key=","map_key=")),o=o+"?config="+encodeURIComponent(JSON.stringify(n))+"&callback=?"+(extra?"&"+extra:"");var f=i.metric("torque.provider.windshaft.layergroup.time").start();r.net.jsonp(o,function(e){f.end();if(e){if(e.errors){t.options.errorCallback&&t.options.errorCallback(e.errors);return}var n=Object.keys(e.metadata.torque)[0],r=e.metadata.torque[n];for(var s in r)t.options[s]=r[s];if(e.cdn_url){var o=t.options.cdn_url=t.options.cdn_url||{};o.http=e.cdn_url.http||o.http,o.https=e.cdn_url.https||o.https}t.templateUrl=t.url()+"/api/v1/map/"+e.layergroupid+"/"+n+"/{z}/{x}/{y}.json.torque",t._setReady(!0)}else i.metric("torque.provider.windshaft.layergroup.error").inc()},{callbackName:t.options.instanciateCallback})}},t.exports=l},{"../":11,"../profiler":22}],28:[function(e,t,n){function o(e,t){e.fillStyle=t["marker-fill"];var n=t["marker-width"];e.beginPath(),e.arc(0,0,n,0,r,!0,!0),e.closePath(),t["marker-opacity"]!==undefined&&(t["marker-fill-opacity"]=t["marker-line-opacity"]=t["marker-opacity"]),t["marker-fill"]&&(e.globalAlpha=t["marker-fill-opacity"]>=0?t["marker-fill-opacity"]:1,e.globalAlpha>0&&e.fill()),t["marker-line-color"]&&t["marker-line-width"]&&t["marker-line-width"]>i&&(e.globalAlpha=t["marker-line-opacity"]>=0?t["marker-line-opacity"]:1,t["marker-line-width"]!==undefined&&(e.lineWidth=t["marker-line-width"]),e.strokeStyle=t["marker-line-color"],e.globalAlpha>0&&e.stroke())}function u(e,t){e.fillStyle=t["marker-fill"];var n=t["marker-width"],r=n*2;if(t["marker-fill"]){if(t["marker-fill-opacity"]!==undefined||t["marker-opacity"]!==undefined)e.globalAlpha=t["marker-fill-opacity"]||t["marker-opacity"];e.fillRect(-n,-n,r,r)}e.globalAlpha=1,t["marker-line-color"]&&t["marker-line-width"]&&(t["marker-line-opacity"]&&(e.globalAlpha=t["marker-line-opacity"]),t["marker-line-width"]&&(e.lineWidth=t["marker-line-width"]),e.strokeStyle=t["marker-line-color"],e.globalAlpha>0&&e.strokeRect(-n,-n,r,r))}function a(e,t,n){if(t.complete){if(n["marker-fill-opacity"]!==undefined||n["marker-opacity"]!==undefined)e.globalAlpha=n["marker-fill-opacity"]||n["marker-opacity"];e.drawImage(t,0,0,Math.min(t.width,s),Math.min(t.height,s))}}var r=Math.PI*2,i=.05,s=255;t.exports={renderPoint:o,renderSprite:a,renderRectangle:u,MAX_SPRITE_RADIUS:s}},{}],29:[function(e,t,n){function s(e){this.tiles=e}var r=e("d3"),i=e("turf-jenks");t.exports=s,s.prototype.getName=function(){return"TorqueDataSource"},s.prototype.getRamp=function(e,t,n,i){var s=[],o=null,u=Object.keys(this.tiles).map(function(e){return this.tiles[e].renderData}.bind(this)).reduce(function(e,t,n){for(var n=0;n<t.length;n++)e.push(t[n]);return e},[]),a=r.extent(u);if(!n||n==="equal"||n==="jenks"){var f=r.scale.linear().domain([0,t]).range(a);s=r.range(t).map(f)}else if(n==="quantiles")s=r.scale.quantile().range(r.range(t)).domain(u).quantiles();else if(n==="headstails"){var l=u.sort(function(e,t){return e-t});if(l.length<t)o="Number of bins should be lower than total number of rows";else if(l.length===t)s=l;else{var c=r.mean(l);s.push(c);for(var h=1;h<t;h++)s.push(r.mean(l.filter(function(e){return e>s[length-1]})))}}else o=new Error("Quantification method "+n+" is not supported");i(o,s)}},{d3:79,"turf-jenks":162}],30:[function(e,t,n){t.exports={cartocss:e("./cartocss_render"),Point:e("./point"),Rectangle:e("./rectangle")}},{"./cartocss_render":28,"./point":31,"./rectangle":32}],31:[function(e,t,n){(function(n){function p(e){return h[e]||e}function d(e,t){if(!e)throw new Error("canvas can't be undefined");this.options=t,this.layer=t.layer,this._canvas=e,this._ctx=e.getContext("2d"),this._sprites=[],this._shader=null,this._icons={},this._iconsToLoad=0,this._filters=new u(this._canvas,{canvasClass:t.canvasClass}),this.style=this.options.cartocss||c,this.setCartoCSS(this.style),this.TILE_SIZE=256,this._style=null,this._gradients={},this._forcePoints=!1}var r=e("../"),i=e("./cartocss_render"),s=e("../profiler"),o=n.carto||e("carto"),u=e("./torque_filters"),a=e("turbo-carto"),f=e("./datasource"),l="http://s3.amazonaws.com/com.cartodb.assets.static/error.svg",c=["#layer {"," marker-fill: #662506;"," marker-width: 4;"," [value > 1] { marker-fill: #FEE391; }"," [value > 2] { marker-fill: #FEC44F; }"," [value > 3] { marker-fill: #FE9929; }"," [value > 4] { marker-fill: #EC7014; }"," [value > 5] { marker-fill: #CC4C02; }"," [value > 6] { marker-fill: #993404; }"," [value > 7] { marker-fill: #662506; }","}"].join("\n"),h={difference:"difference",src:"source-over",exclusion:"exclusion",dst:"destination-in",multiply:"multiply",contrast:"contrast","src-over":"source-over",screen:"screen",invert:"invert","dst-over":"destination-over",overlay:"overlay","invert-rgb":"invert","src-in":"source-in",darken:"darken","dst-in":"destination-in",lighten:"lighten","src-out":"source-out","color-dodge":"color-dodge",hue:"hue","dst-out":"destination-out","color-burn":"color-burn",saturation:"saturation","src-atop":"source-atop","hard-light":"hard-light",color:"color","dst-atop":"destination-atop","soft-light":"soft-light",xor:"xor"};r.extend(d.prototype,r.Event,{clearCanvas:function(){if(this._Map){var e=this._canvas,t=this._Map["-torque-clear-color"],n=this._ctx;if(t==="rgba(255, 255, 255, 0)"||!t)n.save(),n.setTransform(1,0,0,1,0,0),n.clearRect(0,0,e.width,e.height),n.restore();else{n.setTransform(1,0,0,1,0,0);var r=this._Map["comp-op"];n.globalCompositeOperation=p(r)||r,n.fillStyle=t,n.fillRect(0,0,e.width,e.height)}}},setCanvas:function(e){this._canvas=e,this._ctx=e.getContext("2d")},setCartoCSS:function(e,t){var n=this;this.style=e;if(d.isTurboCarto(e)){var r=new f(n.layer._tiles);a(e,r,function(e,r){if(e)return t(e,null);n.setShader((new o.RendererJS).render(r)),n.layer.redraw(),n.layer.animator.start(),t&&t()})}else n.setShader((new o.RendererJS).render(e)),t&&t()},setShader:function(e){this._sprites=[],this._shader=e,this._Map=this._shader.getDefault().getStyle({},{zoom:0});var t=this._shader.getImageURLs();this.layer.showLimitErrors&&t.push(l),this._preloadIcons(t)},clearSpriteCache:function(){this._sprites=[]},generateSprite:function(e,t,n){var o=this,u=s.metric("torque.renderer.point.generateSprite").start(),a=e.getStyle({value:t},n);if(this._style===null||this._style!==a)this._style=a;var f=a["marker-width"];if(!f)return null;if(a["marker-opacity"]===0&&!a["marker-line-opacity"])return null;var l=this._createCanvas(),c=l.getContext("2d"),h=a["marker-file"]||a["point-file"],p=h&&this._qualifyURL(h);if(p&&this._iconsToLoad<=0&&this._icons[p]){var d=this._icons[p],v=Math.min(a["marker-width"]*2||d.width,i.MAX_SPRITE_RADIUS*2),m=Math.min((a["marker-height"]||v)*(d.width/d.height),i.MAX_SPRITE_RADIUS*2);l.width=c.width=v,l.height=c.height=m,c.scale(v/d.width,m/d.height),i.renderSprite(c,d,a)}else{var g=(a["marker-line-width"]||0)+f*2,y=c.width=l.width=c.height=l.height=Math.ceil(g);c.translate(y/2,y/2);var b=a["marker-type"];b&&b==="rectangle"?i.renderRectangle(c,a):i.renderPoint(c,a)}u.end(!0);if(r.flags.sprites_to_images){var w=this._createImage();return w.src=l.toDataURL(),w}return l},renderTile:function(e,t,n){if(e&&e.error)return this._renderErrorTile(e),!1;if(this._iconsToLoad>0)return this.on("allIconsLoaded",function(){this.renderTile.apply(this,[e,t,n])}),!1;typeof t.length=="undefined"&&(t=[t]);var r=s.metric("torque.renderer.point.renderLayers").start(),i=this._shader.getLayers();for(var o=0,u=i.length;o<u;++o){var a=i[o];if(a.name()!=="Map"){var f=this._sprites[o]||(this._sprites[o]={});for(var l=0;l<a.frames().length;++l){var c=a.frames()[l],h=f[c]||(f[c]=[]);for(var p=0,d=t.length;p<d;p++)this._renderTile(e,t[p]-c,c,h,a)}}}return r.end(!0),n&&n(null)},_createCanvas:function(){return this.options.canvasClass?new this.options.canvasClass:document.createElement("canvas")},_createImage:function(){return this.options.imageClass?new this.options.imageClass:new Image},_setImageSrc:function(e,t,n){this.options.setImageSrc?this.options.setImageSrc(e,t,n):(e.onload=function(){n(null)},e.onerror=function(){n(new Error("Could not load image"))},e.src=t)},_qualifyURL:function(e){if(typeof this.options.qualifyURL!="undefined")return this.options.qualifyURL(e);var t=document.createElement("a");return t.href=e,t.href},_renderErrorTile:function(e){if(this.layer.showLimitErrors){var t=this._icons[l];t&&this._ctx.drawImage(t,0,0,this.TILE_SIZE,this.TILE_SIZE)}},_renderTile:function(e,t,n,i,o,u){if(!this._canvas)return;var a=s.metric("torque.renderer.point.renderTile").start(),f=this._ctx,l=p(o.eval("comp-op"))||this.options.blendmode;l&&(f.globalCompositeOperation=l),this.options.cumulative&&t>e.maxDate&&(t=e.maxDate);var c=this.options.resolution*(this.TILE_SIZE/this.options.resolution-1),h=e.timeCount[t],d=this.options.resolution/2;if(h){var v=e.timeIndex[t];for(var m=0;m<h;++m){var g=e.renderDataPos[v+m],y=e.renderData[v+m];if(y){var b=i[y];b===undefined&&(b=i[y]=this.generateSprite(o,y,r.extend({zoom:e.z,"frame-offset":n},u)));if(b){var w=e.x[g]-(b.width>>1)+d,E=c-e.y[g]+d;f.drawImage(b,w,E-(b.height>>1))}}}}a.end(!0)},setBlendMode:function(e){this.options.blendmode=e},getActivePointsBBox:function(e,t){var n=[],i=new r.Mercator,s=this.options.resolution*(this.TILE_SIZE/this.options.resolution-1),o=e.timeCount[t],u=e.timeIndex[t];for(var a=0;a<o;++a){var f=e.renderDataPos[u+a],l=e.renderData[u+a];if(l){var c=e.x[f],h=s-e.y[f];n.push(i.tilePixelBBox(e.coord.x,e.coord.y,e.coord.z,c,h))}}return n},getValues:function(e,t,n){n=n||[];var r=e.timeCount[t],i=e.timeIndex[t];for(var s=0;s<r;++s){var o=e.renderDataPos[i+s];n.push(e.renderData[i+s])}return n},getValueFor:function(e,t,n,i){var s=new r.Mercator,o=this.options.resolution,u=o>>1,a=this.options.resolution*(this.TILE_SIZE/this.options.resolution-1),f=e.timeCount[t],l=e.timeIndex[t];for(var c=0;c<f;++c){var h=e.renderDataPos[l+c],p=e.renderData[l+c];if(p){var d=e.x[h],v=a-e.y[h],m=n+u-d,g=i+u-v;if(m>=0&&m<o&&g>=0&&g<o)return{value:p,bbox:s.tilePixelBBox(e.coord.x,e.coord.y,e.coord.z,d-u,v-u,o)}}}return null},_preloadIcons:function(e){var t=this;if(e.length>0&&!this._forcePoints){var n=Object.keys(e.reduce(function(e,n){var r=t._qualifyURL(n);return t._icons[r]||(e[r]=!0),e},{})),r=t._shader.getLayers().some(function(e){return typeof e.shader["image-filters"]!="undefined"});this._iconsToLoad+=n.length,n.forEach(function(e){t._icons[e]=null;var n=t._createImage();r&&(n.crossOrigin="Anonymous"),t._setImageSrc(n,e,function(i){i?(t._forcePoints=!0,t.clearSpriteCache(),t._iconsToLoad=0,t.fire("allIconsLoaded"),r&&console.info("Only CORS-enabled, or same domain image-files can be used in combination with image-filters"),console.error("Couldn't get marker-file "+e)):(t._icons[e]=n,
t._iconsToLoad--,t._iconsToLoad<=0&&(t.clearSpriteCache(),t.fire("allIconsLoaded")))})})}else this.fire("allIconsLoaded")},applyFilters:function(){if(this._style&&this._style["image-filters"]){function e(e){var t="";for(var n=0;n<e.args.length;n++){var r=e.args[n].rgb;t+=r[0]+":"+r[1]+":"+r[2]}return t}var t=this._gradients[e(this._style["image-filters"])];if(!t){function n(e){var t=e.toString(16);return t.length==1?"0"+t:t}function r(e,t,r){return"#"+n(e)+n(t)+n(r)}t={};var i=this._style["image-filters"].args,s=1/i.length;for(var o=0;o<i.length;o++){var u=s*o+s,a=i[o].rgb,f=r(a[0],a[1],a[2]);t[u]=f}this._gradients[e(this._style["image-filters"])]=t}this._filters.gradient(t),this._filters.draw()}}}),d.isTurboCarto=function(e){var t=["ramp","colorbrewer","buckets"],n=t.map(function(e){return e+"("}).map(String.prototype.indexOf.bind(e)).every(function(e){return e===-1});return!n},t.exports=d}).call(this,typeof global!="undefined"?global:typeof self!="undefined"?self:typeof window!="undefined"?window:{})},{"../":11,"../profiler":22,"./cartocss_render":28,"./datasource":29,"./torque_filters":33,carto:40,"turbo-carto":153}],32:[function(e,t,n){(function(n){function o(e,t){this.options=t,r.tree.Reference.set(torque["torque-reference"]),this.setCanvas(e),this.setCartoCSS(this.options.cartocss||i)}var r=n.carto||e("carto"),i=["#layer {"," polygon-fill: #FFFF00;"," [value > 10] { polygon-fill: #FFFF00; }"," [value > 100] { polygon-fill: #FFCC00; }"," [value > 1000] { polygon-fill: #FE9929; }"," [value > 10000] { polygon-fill: #FF6600; }"," [value > 100000] { polygon-fill: #FF3300; }","}"].join("\n"),s=Math.PI*2;o.prototype={setCartoCSS:function(e){this._cartoCssStyle=(new r.RendererJS).render(e);if(this._cartoCssStyle.getLayers().length>1)throw new Error("only one CartoCSS layer is supported");this._shader=this._cartoCssStyle.getLayers()[0].shader},setCanvas:function(e){if(!e)return;this._canvas=e,this._ctx=e.getContext("2d")},accumulate:function(e,t){var n=Profiler.metric("RectangleRender:accumulate").start(),r,i,s,o,u,a,f,l,c=this.options.resolution,h=256/c,p=new Float32Array(h*h);typeof t!="object"&&(t=[t]);for(u=0;u<t.length;++u){a=t[u],f=e.timeCount[a];if(f){l=e.timeIndex[a];for(o=0;o<f;++o)s=e.renderDataPos[l+o],r=e.x[s]/c,i=e.y[s]/c,p[r*h+i]+=e.renderData[l+o]}}return n.end(),p},renderTileAccum:function(e,t,n){var r=Profiler.metric("RectangleRender:renderTileAccum").start(),i,s,o,u,a=this.options.resolution,f=this._ctx,l=256/a|0,c=l*l,h=this._colors;this.options.blendmode&&(f.globalCompositeOperation=this.options.blendmode);var p=this._shader["polygon-opacity"]||function(){return 1};for(var d=0;d<c;++d){var v=d,m=e[d];m&&(s=v/l|0,o=v%l,i=this._shader["polygon-fill"]({value:m},{zoom:0}),f.fillStyle=i,u=p({value:m},{zoom:0}),u===null&&(u=1),f.globalAlpha=u,f.fillRect(s*a,256-a-o*a,a,a))}r.end()},renderTile:function(e,t,n){if(!this._canvas)return;var r=this.options.resolution,i=this._ctx,s=this._colors,o=e.timeCount[t];if(o){var u=this._canvas.width,a=this._canvas.height,f=e.timeIndex[t];for(var l=0;l<activePixels;++l){var c=e.renderDataPos[f+l],h=e.renderData[f+l];if(h){var p=s[Math.min(h,s.length-1)],d=e.x[c],v=e.y[c];i.fillStyle=p,i.fillRect(d,v,r,r)}}}return n&&n(null)}},t.exports=o}).call(this,typeof global!="undefined"?global:typeof self!="undefined"?self:typeof window!="undefined"?window:{})},{carto:40}],33:[function(e,t,n){"use strict";function r(e,t){if(!(this instanceof r))return new r(e,t);t=t||{},this._canvas=e=typeof e=="string"?document.getElementById(e):e,this._ctx=e.getContext("2d"),this._width=e.width,this._height=e.height,this._max=1,this._data=[],this.canvasClass=t.canvasClass}r.prototype={defaultGradient:{.4:"blue",.6:"cyan",.7:"lime",.8:"yellow",1:"red"},gradient:function(e){var t=this._createCanvas(),n=t.getContext("2d"),r=n.createLinearGradient(0,0,0,256);t.width=1,t.height=256;for(var i in e)r.addColorStop(+i,e[i]);return n.fillStyle=r,n.fillRect(0,0,1,256),this._grad=n.getImageData(0,0,1,256).data,this},draw:function(){this._grad||this.gradient(this.defaultGradient);var e=this._ctx,t=e.getImageData(0,0,this._canvas.width,this._canvas.height);return this._colorize(t.data,this._grad),e.putImageData(t,0,0),this},_colorize:function(e,t){for(var n=3,r=e.length,i;n<r;n+=4)i=e[n]*4,i&&(e[n-3]=t[i],e[n-2]=t[i+1],e[n-1]=t[i+2])},_createCanvas:function(){return this.canvasClass?new this.canvasClass:document.createElement("canvas")}},t.exports=r},{}],34:[function(e,t,n){(function(n){function s(e,t,n){function u(){i.removeChild(s),clearTimeout(a),delete window[o]}n=n||{},n.timeout=n.timeout===undefined?1e4:n.timeout;var i=document.getElementsByTagName("head")[0],s=document.createElement("script"),o=n.callbackName||"torque_"+Date.now();r.isFunction(o)&&(o=o()),window[o]=function(){u(),t.apply(window,arguments)};var a=setTimeout(function(){u(),t.call(window,null)},n.timeout);e=e.replace("callback=?","callback="+o),s.type="text/javascript",s.src=e,s.async=!0,setTimeout(function(){i.appendChild(s)},0)}function o(e,t,r){function u(){var e=o.status,n,i=r.responseType==="arraybuffer"?o.response:o.responseText;!e&&i||e>=200&&e<300||e===304||e===429?t(o):t(null)}r=r||{method:"GET",data:null,responseType:"text"},i={url:e,callback:t};var s=XMLHttpRequest;n.XDomainRequest&&!("withCredentials"in s)&&/^(http(s)?:)?\/\//.test(e)&&(s=XDomainRequest);var o=new s;return o.open(r.method,e,!0),"onload"in o?o.onload=o.onerror=u:o.onreadystatechange=function(){o.readyState>3&&u()},o.onprogress=function(){},o.responseType=r.responseType,r.data&&(o.setRequestHeader("Content-type","application/json"),o.setRequestHeader("Accept","*")),o.send(r.data),o}function u(e,t,n){return o(e,n,{data:t,method:"POST"})}var r=e("./core"),i=null;t.exports={get:o,post:u,jsonp:s,lastCall:function(){return i}}}).call(this,typeof global!="undefined"?global:typeof self!="undefined"?self:typeof window!="undefined"?window:{})},{"./core":5}],35:[function(e,t,n){function u(e,t){return r.isUndefined(t)?""+t:r.isNumber(t)&&(isNaN(t)||!isFinite(t))?t.toString():r.isFunction(t)||r.isRegExp(t)?t.toString():t}function a(e,t){return r.isString(e)?e.length<t?e:e.slice(0,t):e}function f(e){return a(JSON.stringify(e.actual,u),128)+" "+e.operator+" "+a(JSON.stringify(e.expected,u),128)}function l(e,t,n,r,i){throw new o.AssertionError({message:n,actual:e,expected:t,operator:r,stackStartFunction:i})}function c(e,t){e||l(e,!0,t,"==",o.ok)}function h(e,t){if(e===t)return!0;if(r.isBuffer(e)&&r.isBuffer(t)){if(e.length!=t.length)return!1;for(var n=0;n<e.length;n++)if(e[n]!==t[n])return!1;return!0}return r.isDate(e)&&r.isDate(t)?e.getTime()===t.getTime():r.isRegExp(e)&&r.isRegExp(t)?e.source===t.source&&e.global===t.global&&e.multiline===t.multiline&&e.lastIndex===t.lastIndex&&e.ignoreCase===t.ignoreCase:!r.isObject(e)&&!r.isObject(t)?e==t:d(e,t)}function p(e){return Object.prototype.toString.call(e)=="[object Arguments]"}function d(e,t){if(r.isNullOrUndefined(e)||r.isNullOrUndefined(t))return!1;if(e.prototype!==t.prototype)return!1;if(p(e))return p(t)?(e=i.call(e),t=i.call(t),h(e,t)):!1;try{var n=g(e),s=g(t),o,u}catch(a){return!1}if(n.length!=s.length)return!1;n.sort(),s.sort();for(u=n.length-1;u>=0;u--)if(n[u]!=s[u])return!1;for(u=n.length-1;u>=0;u--){o=n[u];if(!h(e[o],t[o]))return!1}return!0}function v(e,t){return!e||!t?!1:Object.prototype.toString.call(t)=="[object RegExp]"?t.test(e):e instanceof t?!0:t.call({},e)===!0?!0:!1}function m(e,t,n,i){var s;r.isString(n)&&(i=n,n=null);try{t()}catch(o){s=o}i=(n&&n.name?" ("+n.name+").":".")+(i?" "+i:"."),e&&!s&&l(s,n,"Missing expected exception"+i),!e&&v(s,n)&&l(s,n,"Got unwanted exception"+i);if(e&&s&&n&&!v(s,n)||!e&&s)throw s}var r=e("util/"),i=Array.prototype.slice,s=Object.prototype.hasOwnProperty,o=t.exports=c;o.AssertionError=function(t){this.name="AssertionError",this.actual=t.actual,this.expected=t.expected,this.operator=t.operator,t.message?(this.message=t.message,this.generatedMessage=!1):(this.message=f(this),this.generatedMessage=!0);var n=t.stackStartFunction||l;if(Error.captureStackTrace)Error.captureStackTrace(this,n);else{var r=new Error;if(r.stack){var i=r.stack,s=n.name,o=i.indexOf("\n"+s);if(o>=0){var u=i.indexOf("\n",o+1);i=i.substring(u+1)}this.stack=i}}},r.inherits(o.AssertionError,Error),o.fail=l,o.ok=c,o.equal=function(t,n,r){t!=n&&l(t,n,r,"==",o.equal)},o.notEqual=function(t,n,r){t==n&&l(t,n,r,"!=",o.notEqual)},o.deepEqual=function(t,n,r){h(t,n)||l(t,n,r,"deepEqual",o.deepEqual)},o.notDeepEqual=function(t,n,r){h(t,n)&&l(t,n,r,"notDeepEqual",o.notDeepEqual)},o.strictEqual=function(t,n,r){t!==n&&l(t,n,r,"===",o.strictEqual)},o.notStrictEqual=function(t,n,r){t===n&&l(t,n,r,"!==",o.notStrictEqual)},o.throws=function(e,t,n){m.apply(this,[!0].concat(i.call(arguments)))},o.doesNotThrow=function(e,t){m.apply(this,[!1].concat(i.call(arguments)))},o.ifError=function(e){if(e)throw e};var g=Object.keys||function(e){var t=[];for(var n in e)s.call(e,n)&&t.push(n);return t}},{"util/":166}],36:[function(e,t,n){var r="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";(function(e){"use strict";function a(e){var t=e.charCodeAt(0);if(t===n)return 62;if(t===i)return 63;if(t<s)return-1;if(t<s+10)return t-s+26+26;if(t<u+26)return t-u;if(t<o+26)return t-o+26}function f(e){function c(e){u[l++]=e}var n,r,i,s,o,u;if(e.length%4>0)throw new Error("Invalid string. Length must be a multiple of 4");var f=e.length;o="="===e.charAt(f-2)?2:"="===e.charAt(f-1)?1:0,u=new t(e.length*3/4-o),i=o>0?e.length-4:e.length;var l=0;for(n=0,r=0;n<i;n+=4,r+=3)s=a(e.charAt(n))<<18|a(e.charAt(n+1))<<12|a(e.charAt(n+2))<<6|a(e.charAt(n+3)),c((s&16711680)>>16),c((s&65280)>>8),c(s&255);return o===2?(s=a(e.charAt(n))<<2|a(e.charAt(n+1))>>4,c(s&255)):o===1&&(s=a(e.charAt(n))<<10|a(e.charAt(n+1))<<4|a(e.charAt(n+2))>>2,c(s>>8&255),c(s&255)),u}function l(e){function u(e){return r.charAt(e)}function a(e){return u(e>>18&63)+u(e>>12&63)+u(e>>6&63)+u(e&63)}var t,n=e.length%3,i="",s,o;for(t=0,o=e.length-n;t<o;t+=3)s=(e[t]<<16)+(e[t+1]<<8)+e[t+2],i+=a(s);switch(n){case 1:s=e[e.length-1],i+=u(s>>2),i+=u(s<<4&63),i+="==";break;case 2:s=(e[e.length-2]<<8)+e[e.length-1],i+=u(s>>10),i+=u(s>>4&63),i+=u(s<<2&63),i+="="}return i}var t=typeof Uint8Array!="undefined"?Uint8Array:Array,n="+".charCodeAt(0),i="/".charCodeAt(0),s="0".charCodeAt(0),o="a".charCodeAt(0),u="A".charCodeAt(0);e.toByteArray=f,e.fromByteArray=l})(typeof n=="undefined"?this.base64js={}:n)},{}],37:[function(e,t,n){},{}],38:[function(e,t,n){function u(e,t,n){if(this instanceof u){var r=typeof e,i;if(r==="number")i=e>0?e>>>0:0;else if(r==="string")t==="base64"&&(e=A(e)),i=u.byteLength(e,t);else{if(r!=="object"||e===null)throw new TypeError("must start with number, buffer, array or string");e.type==="Buffer"&&s(e.data)&&(e=e.data),i=+e.length>0?Math.floor(+e.length):0}if(this.length>o)throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+o.toString(16)+" bytes");var a;u.TYPED_ARRAY_SUPPORT?a=u._augment(new Uint8Array(i)):(a=this,a.length=i,a._isBuffer=!0);var f;if(u.TYPED_ARRAY_SUPPORT&&typeof e.byteLength=="number")a._set(e);else if(M(e))if(u.isBuffer(e))for(f=0;f<i;f++)a[f]=e.readUInt8(f);else for(f=0;f<i;f++)a[f]=(e[f]%256+256)%256;else if(r==="string")a.write(e,0,t);else if(r==="number"&&!u.TYPED_ARRAY_SUPPORT&&!n)for(f=0;f<i;f++)a[f]=0;return a}return new u(e,t,n)}function a(e,t,n,r){n=Number(n)||0;var i=e.length-n;r?(r=Number(r),r>i&&(r=i)):r=i;var s=t.length;if(s%2!==0)throw new Error("Invalid hex string");r>s/2&&(r=s/2);for(var o=0;o<r;o++){var u=parseInt(t.substr(o*2,2),16);if(isNaN(u))throw new Error("Invalid hex string");e[n+o]=u}return o}function f(e,t,n,r){var i=j(D(t),e,n,r);return i}function l(e,t,n,r){var i=j(P(t),e,n,r);return i}function c(e,t,n,r){return l(e,t,n,r)}function h(e,t,n,r){var i=j(B(t),e,n,r);return i}function p(e,t,n,r){var i=j(H(t),e,n,r,2);return i}function d(e,t,n){return t===0&&n===e.length?r.fromByteArray(e):r.fromByteArray(e.slice(t,n))}function v(e,t,n){var r="",i="";n=Math.min(e.length,n);for(var s=t;s<n;s++)e[s]<=127?(r+=F(i)+String.fromCharCode(e[s]),i=""):i+="%"+e[s].toString(16);return r+F(i)}function m(e,t,n){var r="";n=Math.min(e.length,n);for(var i=t;i<n;i++)r+=String.fromCharCode(e[i]);return r}function g(e,t,n){return m(e,t,n)}function y(e,t,n){var r=e.length;if(!t||t<0)t=0;if(!n||n<0||n>r)n=r;var i="";for(var s=t;s<n;s++)i+=_(e[s]);return i}function b(e,t,n){var r=e.slice(t,n),i="";for(var s=0;s<r.length;s+=2)i+=String.fromCharCode(r[s]+r[s+1]*256);return i}function w(e,t,n){if(e%1!==0||e<0)throw new RangeError("offset is not uint");if(e+t>n)throw new RangeError("Trying to access beyond buffer length")}function E(e,t,n,r,i,s){if(!u.isBuffer(e))throw new TypeError("buffer must be a Buffer instance");if(t>i||t<s)throw new TypeError("value is out of bounds");if(n+r>e.length)throw new TypeError("index out of range")}function S(e,t,n,r){t<0&&(t=65535+t+1);for(var i=0,s=Math.min(e.length-n,2);i<s;i++)e[n+i]=(t&255<<8*(r?i:1-i))>>>(r?i:1-i)*8}function x(e,t,n,r){t<0&&(t=4294967295+t+1);for(var i=0,s=Math.min(e.length-n,4);i<s;i++)e[n+i]=t>>>(r?i:3-i)*8&255}function T(e,t,n,r,i,s){if(t>i||t<s)throw new TypeError("value is out of bounds");if(n+r>e.length)throw new TypeError("index out of range")}function N(e,t,n,r,s){return s||T(e,t,n,4,3.4028234663852886e38,-3.4028234663852886e38),i.write(e,t,n,r,23,4),n+4}function C(e,t,n,r,s){return s||T(e,t,n,8,1.7976931348623157e308,-1.7976931348623157e308),i.write(e,t,n,r,52,8),n+8}function A(e){e=O(e).replace(L,"");while(e.length%4!==0)e+="=";return e}function O(e){return e.trim?e.trim():e.replace(/^\s+|\s+$/g,"")}function M(e){return s(e)||u.isBuffer(e)||e&&typeof e=="object"&&typeof e.length=="number"}function _(e){return e<16?"0"+e.toString(16):e.toString(16)}function D(e){var t=[];for(var n=0;n<e.length;n++){var r=e.charCodeAt(n);if(r<=127)t.push(r);else{var i=n;r>=55296&&r<=57343&&n++;var s=encodeURIComponent(e.slice(i,n+1)).substr(1).split("%");for(var o=0;o<s.length;o++)t.push(parseInt(s[o],16))}}return t}function P(e){var t=[];for(var n=0;n<e.length;n++)t.push(e.charCodeAt(n)&255);return t}function H(e){var t,n,r,i=[];for(var s=0;s<e.length;s++)t=e.charCodeAt(s),n=t>>8,r=t%256,i.push(r),i.push(n);return i}function B(e){return r.toByteArray(e)}function j(e,t,n,r,i){i&&(r-=r%i);for(var s=0;s<r;s++){if(s+n>=t.length||s>=e.length)break;t[s+n]=e[s]}return s}function F(e){try{return decodeURIComponent(e)}catch(t){return String.fromCharCode(65533)}}var r=e("base64-js"),i=e("ieee754"),s=e("is-array");n.Buffer=u,n.SlowBuffer=u,n.INSPECT_MAX_BYTES=50,u.poolSize=8192;var o=1073741823;u.TYPED_ARRAY_SUPPORT=function(){try{var e=new ArrayBuffer(0),t=new Uint8Array(e);return t.foo=function(){return 42},42===t.foo()&&typeof t.subarray=="function"&&(new Uint8Array(1)).subarray(1,1).byteLength===0}catch(n){return!1}}(),u.isBuffer=function(e){return e!=null&&!!e._isBuffer},u.compare=function(e,t){if(!u.isBuffer(e)||!u.isBuffer(t))throw new TypeError("Arguments must be Buffers");var n=e.length,r=t.length;for(var i=0,s=Math.min(n,r);i<s&&e[i]===t[i];i++);return i!==s&&(n=e[i],r=t[i]),n<r?-1:r<n?1:0},u.isEncoding=function(e){switch(String(e).toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"binary":case"base64":case"raw":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return!0;default:return!1}},u.concat=function(e,t){if(!s(e))throw new TypeError("Usage: Buffer.concat(list[, length])");if(e.length===0)return new u(0);if(e.length===1)return e[0];var n;if(t===undefined){t=0;for(n=0;n<e.length;n++)t+=e[n].length}var r=new u(t),i=0;for(n=0;n<e.length;n++){var o=e[n];o.copy(r,i),i+=o.length}return r},u.byteLength=function(e,t){var n;e+="";switch(t||"utf8"){case"ascii":case"binary":case"raw":n=e.length;break;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":n=e.length*2;break;case"hex":n=e.length>>>1;break;case"utf8":case"utf-8":n=D(e).length;break;case"base64":n=B(e).length;break;default:n=e.length}return n},u.prototype.length=undefined,u.prototype.parent=undefined,u.prototype.toString=function(e,t,n){var r=!1;t>>>=0,n=n===undefined||n===Infinity?this.length:n>>>0,e||(e="utf8"),t<0&&(t=0),n>this.length&&(n=this.length);if(n<=t)return"";for(;;)switch(e){case"hex":return y(this,t,n);case"utf8":case"utf-8":return v(this,t,n);case"ascii":return m(this,t,n);case"binary":return g(this,t,n);case"base64":return d(this,t,n);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return b(this,t,n);default:if(r)throw new TypeError("Unknown encoding: "+e);e=(e+"").toLowerCase(),r=!0}},u.prototype.equals=function(e){if(!u.isBuffer(e))throw new TypeError("Argument must be a Buffer");return u.compare(this,e)===0},u.prototype.inspect=function(){var e="",t=n.INSPECT_MAX_BYTES;return this.length>0&&(e=this.toString("hex",0,t).match(/.{2}/g).join(" "),this.length>t&&(e+=" ... ")),"<Buffer "+e+">"},u.prototype.compare=function(e){if(!u.isBuffer(e))throw new TypeError("Argument must be a Buffer");return u.compare(this,e)},u.prototype.get=function(e){return console.log(".get() is deprecated. Access using array indexes instead."),this.readUInt8(e)},u.prototype.set=function(e,t){return console.log(".set() is deprecated. Access using array indexes instead."),this.writeUInt8(e,t)},u.prototype.write=function(e,t,n,r){if(isFinite(t))isFinite(n)||(r=n,n=undefined);else{var i=r;r=t,t=n,n=i}t=Number(t)||0;var s=this.length-t;n?(n=Number(n),n>s&&(n=s)):n=s,r=String(r||"utf8").toLowerCase();var o;switch(r){case"hex":o=a(this,e,t,n);break;case"utf8":case"utf-8":o=f(this,e,t,n);break;case"ascii":o=l(this,e,t,n);break;case"binary":o=c(this,e,t,n);break;case"base64":o=h(this,e,t,n);break;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":o=p(this,e,t,n);break;default:throw new TypeError("Unknown encoding: "+r)}return o},u.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}},u.prototype.slice=function(e,t){var n=this.length;e=~~e,t=t===undefined?n:~~t,e<0?(e+=n,e<0&&(e=0)):e>n&&(e=n),t<0?(t+=n,t<0&&(t=0)):t>n&&(t=n),t<e&&(t=e);if(u.TYPED_ARRAY_SUPPORT)return u._augment(this.subarray(e,t));var r=t-e,i=new u(r,undefined,!0);for(var s=0;s<r;s++)i[s]=this[s+e];return i},u.prototype.readUInt8=function(e,t){return t||w(e,1,this.length),this[e]},u.prototype.readUInt16LE=function(e,t){return t||w(e,2,this.length),this[e]|this[e+1]<<8},u.prototype.readUInt16BE=function(e,t){return t||w(e,2,this.length),this[e]<<8|this[e+1]},u.prototype.readUInt32LE=function(e,t){return t||w(e,4,this.length),(this[e]|this[e+1]<<8|this[e+2]<<16)+this[e+3]*16777216},u.prototype.readUInt32BE=function(e,t){return t||w(e,4,this.length),this[e]*16777216+(this[e+1]<<16|this[e+2]<<8|this[e+3])},u.prototype.readInt8=function(e,t){return t||w(e,1,this.length),this[e]&128?(255-this[e]+1)*-1:this[e]},u.prototype.readInt16LE=function(e,t){t||w(e,2,this.length);var n=this[e]|this[e+1]<<8;return n&32768?n|4294901760:n},u.prototype.readInt16BE=function(e,t){t||w(e,2,this.length);var n=this[e+1]|this[e]<<8;return n&32768?n|4294901760:n},u.prototype.readInt32LE=function(e,t){return t||w(e,4,this.length),this[e]|this[e+1]<<8|this[e+2]<<16|this[e+3]<<24},u.prototype.readInt32BE=function(e,t){return t||w(e,4,this.length),this[e]<<24|this[e+1]<<16|this[e+2]<<8|this[e+3]},u.prototype.readFloatLE=function(e,t){return t||w(e,4,this.length),i.read(this,e,!0,23,4)},u.prototype.readFloatBE=function(e,t){return t||w(e,4,this.length),i.read(this,e,!1,23,4)},u.prototype.readDoubleLE=function(e,t){return t||w(e,8,this.length),i.read(this,e,!0,52,8)},u.prototype.readDoubleBE=function(e,t){return t||w(e,8,this.length),i.read(this,e,!1,52,8)},u.prototype.writeUInt8=function(e,t,n){return e=+e,t>>>=0,n||E(this,e,t,1,255,0),u.TYPED_ARRAY_SUPPORT||(e=Math.floor(e)),this[t]=e,t+1},u.prototype.writeUInt16LE=function(e,t,n){return e=+e,t>>>=0,n||E(this,e,t,2,65535,0),u.TYPED_ARRAY_SUPPORT?(this[t]=e,this[t+1]=e>>>8):S(this,e,t,!0),t+2},u.prototype.writeUInt16BE=function(e,t,n){return e=+e,t>>>=0,n||E(this,e,t,2,65535,0),u.TYPED_ARRAY_SUPPORT?(this[t]=e>>>8,this[t+1]=e):S(this,e,t,!1),t+2},u.prototype.writeUInt32LE=function(e,t,n){return e=+e,t>>>=0,n||E(this,e,t,4,4294967295,0),u.TYPED_ARRAY_SUPPORT?(this[t+3]=e>>>24,this[t+2]=e>>>16,this[t+1]=e>>>8,this[t]=e):x(this,e,t,!0),t+4},u.prototype.writeUInt32BE=function(e,t,n){return e=+e,t>>>=0,n||E(this,e,t,4,4294967295,0),u.TYPED_ARRAY_SUPPORT?(this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=e):x(this,e,t,!1),t+4},u.prototype.writeInt8=function(e,t,n){return e=+e,t>>>=0,n||E(this,e,t,1,127,-128),u.TYPED_ARRAY_SUPPORT||(e=Math.floor(e)),e<0&&(e=255+e+1),this[t]=e,t+1},u.prototype.writeInt16LE=function(e,t,n){return e=+e,t>>>=0,n||E(this,e,t,2,32767,-32768),u.TYPED_ARRAY_SUPPORT?(this[t]=e,this[t+1]=e>>>8):S(this,e,t,!0),t+2},u.prototype.writeInt16BE=function(e,t,n){return e=+e,t>>>=0,n||E(this,e,t,2,32767,-32768),u.TYPED_ARRAY_SUPPORT?(this[t]=e>>>8,this[t+1]=e):S(this,e,t,!1),t+2},u.prototype.writeInt32LE=function(e,t,n){return e=+e,t>>>=0,n||E(this,e,t,4,2147483647,-2147483648),u.TYPED_ARRAY_SUPPORT?(this[t]=e,this[t+1]=e>>>8,this[t+2]=e>>>16,this[t+3]=e>>>24):x(this,e,t,!0),t+4},u.prototype.writeInt32BE=function(e,t,n){return e=+e,t>>>=0,n||E(this,e,t,4,2147483647,-2147483648),e<0&&(e=4294967295+e+1),u.TYPED_ARRAY_SUPPORT?(this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=e):x(this,e,t,!1),t+4},u.prototype.writeFloatLE=function(e,t,n){return N(this,e,t,!0,n)},u.prototype.writeFloatBE=function(e,t,n){return N(this,e,t,!1,n)},u.prototype.writeDoubleLE=function(e,t,n){return C(this,e,t,!0,n)},u.prototype.writeDoubleBE=function(e,t,n){return C(this,e,t,!1,n)},u.prototype.copy=function(e,t,n,r){var i=this;n||(n=0),!r&&r!==0&&(r=this.length),t||(t=0);if(r===n)return;if(e.length===0||i.length===0)return;if(r<n)throw new TypeError("sourceEnd < sourceStart");if(t<0||t>=e.length)throw new TypeError("targetStart out of bounds");if(n<0||n>=i.length)throw new TypeError("sourceStart out of bounds");if(r<0||r>i.length)throw new TypeError("sourceEnd out of bounds");r>this.length&&(r=this.length),e.length-t<r-n&&(r=e.length-t+n);var s=r-n;if(s<1e3||!u.TYPED_ARRAY_SUPPORT)for(var o=0;o<s;o++)e[o+t]=this[o+n];else e._set(this.subarray(n,n+s),t)},u.prototype.fill=function(e,t,n){e||(e=0),t||(t=0),n||(n=this.length);if(n<t)throw new TypeError("end < start");if(n===t)return;if(this.length===0)return;if(t<0||t>=this.length)throw new TypeError("start out of bounds");if(n<0||n>this.length)throw new TypeError("end out of bounds");var r;if(typeof e=="number")for(r=t;r<n;r++)this[r]=e;else{var i=D(e.toString()),s=i.length;for(r=t;r<n;r++)this[r]=i[r%s]}return this},u.prototype.toArrayBuffer=function(){if(typeof Uint8Array!="undefined"){if(u.TYPED_ARRAY_SUPPORT)return(new u(this)).buffer;var e=new Uint8Array(this.length);for(var t=0,n=e.length;t<n;t+=1)e[t]=this[t];return e.buffer}throw new TypeError("Buffer.toArrayBuffer not supported in this browser")};var k=u.prototype;u._augment=function(e){return e.constructor=u,e._isBuffer=!0,e._get=e.get,e._set=e.set,e.get=k.get,e.set=k.set,e.write=k.write,e.toString=k.toString,e.toLocaleString=k.toString,e.toJSON=k.toJSON,e.equals=k.equals,e.compare=k.compare,e.copy=k.copy,e.slice=k.slice,e.readUInt8=k.readUInt8,e.readUInt16LE=k.readUInt16LE,e.readUInt16BE=k.readUInt16BE,e.readUInt32LE=k.readUInt32LE,e.readUInt32BE=k.readUInt32BE,e.readInt8=k.readInt8,e.readInt16LE=k.readInt16LE,e.readInt16BE=k.readInt16BE,e.readInt32LE=k.readInt32LE,e.readInt32BE=k.readInt32BE,e.readFloatLE=k.readFloatLE,e.readFloatBE=k.readFloatBE,e.readDoubleLE=k.readDoubleLE,e.readDoubleBE=k.readDoubleBE,e.writeUInt8=k.writeUInt8,e.writeUInt16LE=k.writeUInt16LE,e.writeUInt16BE=k.writeUInt16BE,e.writeUInt32LE=k.writeUInt32LE,e.writeUInt32BE=k.writeUInt32BE,e.writeInt8=k.writeInt8,e.writeInt16LE=k.writeInt16LE,e.writeInt16BE=k.writeInt16BE,e.writeInt32LE=k.writeInt32LE,e.writeInt32BE=k.writeInt32BE,e.writeFloatLE=k.writeFloatLE,e.writeFloatBE=k.writeFloatBE,e.writeDoubleLE=k.writeDoubleLE,e.writeDoubleBE=k.writeDoubleBE,e.fill=k.fill,e.inspect=k.inspect,e.toArrayBuffer=k.toArrayBuffer,e};var L=/[^+\/0-9A-z]/g},{"base64-js":36,ieee754:83,"is-array":84}],39:[function(e,t,n){(function(e){function i(t){return e.functions.hsla(t.h,t.s,t.l,t.a)}function s(t){return t instanceof e.Dimension?parseFloat(t.unit=="%"?t.value/100:t.value):typeof t=="number"?t:NaN}function o(e){return Math.min(1,Math.max(0,e))}e.functions={rgb:function(e,t,n){return this.rgba(e,t,n,1)},rgba:function(t,n,r,i){var o=[t,n,r].map(function(e){return s(e)});return i=s(i),o.some(isNaN)||isNaN(i)?null:new e.Color(o,i)},stop:function(e){var t,n;return arguments.length>1&&(t=arguments[1]),arguments.length>2&&(n=arguments[2]),{is:"tag",val:e,color:t,mode:n,toString:function(r){return'\n <stop value="'+e.ev(r)+'"'+(t?' color="'+t.ev(r)+'" ':"")+(n?' mode="'+n.ev(r)+'" ':"")+"/>"}}},hsl:function(e,t,n){return this.hsla(e,t,n,1)},hsla:function(e,t,n,r){function u(e){return e=e<0?e+1:e>1?e-1:e,e*6<1?o+(i-o)*e*6:e*2<1?i:e*3<2?o+(i-o)*(2/3-e)*6:o}e=s(e)%360/360,t=s(t),n=s(n),r=s(r);if([e,t,n,r].some(isNaN))return null;var i=n<=.5?n*(t+1):n+t-n*t,o=n*2-i;return this.rgba(u(e+1/3)*255,u(e)*255,u(e-1/3)*255,r)},hue:function(t){return"toHSL"in t?new e.Dimension(Math.round(t.toHSL().h)):null},saturation:function(t){return"toHSL"in t?new e.Dimension(Math.round(t.toHSL().s*100),"%"):null},lightness:function(t){return"toHSL"in t?new e.Dimension(Math.round(t.toHSL().l*100),"%"):null},alpha:function(t){return"toHSL"in t?new e.Dimension(t.toHSL().a):null},saturate:function(e,t){if("toHSL"in e){var n=e.toHSL();return n.s+=t.value/100,n.s=o(n.s),i(n)}return null},desaturate:function(e,t){if("toHSL"in e){var n=e.toHSL();return n.s-=t.value/100,n.s=o(n.s),i(n)}return null},lighten:function(e,t){if("toHSL"in e){var n=e.toHSL();return n.l+=t.value/100,n.l=o(n.l),i(n)}return null},darken:function(e,t){if("toHSL"in e){var n=e.toHSL();return n.l-=t.value/100,n.l=o(n.l),i(n)}return null},fadein:function(e,t){if("toHSL"in e){var n=e.toHSL();return n.a+=t.value/100,n.a=o(n.a),i(n)}return null},fadeout:function(e,t){if("toHSL"in e){var n=e.toHSL();return n.a-=t.value/100,n.a=o(n.a),i(n)}return null},spin:function(e,t){if("toHSL"in e){var n=e.toHSL(),r=(n.h+t.value)%360;return n.h=r<0?360+r:r,i(n)}return null},replace:function(e,t,n){return e.is==="field"?e.toString+".replace("+t.toString()+", "+n.toString()+")":e.replace(t,n)},mix:function(t,n,r){var i=r.value/100,s=i*2-1,o=t.toHSL().a-n.toHSL().a,u=((s*o==-1?s:(s+o)/(1+s*o))+1)/2,a=1-u,f=[t.rgb[0]*u+n.rgb[0]*a,t.rgb[1]*u+n.rgb[1]*a,t.rgb[2]*u+n.rgb[2]*a],l=t.alpha*i+n.alpha*(1-i);return new e.Color(f,l)},greyscale:function(t){return this.desaturate(t,new e.Dimension(100))},"%":function(t){var n=Array.prototype.slice.call(arguments,1),r=t.value;for(var i=0;i<n.length;i++)r=r.replace(/%s/,n[i].value).replace(/%[da]/,n[i].toString());return r=r.replace(/%%/g,"%"),new e.Quoted(r)}};var t=["emboss","blur","gray","sobel","edge-detect","x-gradient","y-gradient","sharpen"];for(var n=0;n<t.length;n++){var r=t[n];e.functions[r]=function(t){return function(){return new e.ImageFilter(t)}}(r)}e.functions["agg-stack-blur"]=function(t,n){return new e.ImageFilter("agg-stack-blur",[t,n])},e.functions["scale-hsla"]=function(t,n,r,i,s,o,u,a){return new e.ImageFilter("scale-hsla",[t,n,r,i,s,o,u,a])}})(e("./tree"))},{"./tree":45}],40:[function(e,t,n){(function(t,r){function u(){if(t.browser)return e("../../package.json").version.split(".");if(parseInt(t.version.split(".")[1],10)>4)return e("../../package.json").version.split(".");var n=JSON.parse(s.readFileSync(o.join(r,"../../package.json")));return n.version.split(".")}function l(e,t){var n={bold:[1,22],inverse:[7,27],underline:[4,24],yellow:[33,39],green:[32,39],red:[31,39],grey:[90,39]};return"["+n[t][0]+"m"+e+"["+n[t][1]+"m"}var i=e("util"),s=e("fs"),o=e("path"),a={version:u(),Parser:e("./parser").Parser,Renderer:e("./renderer").Renderer,tree:e("./tree"),RendererJS:e("./renderer_js"),default_reference:e("./torque-reference"),writeError:function(e,t){var n="",r=e.extract,s=[];t=t||{};if(t.silent)return;t.indent=t.indent||"";if(!("index"in e)||!r)return i.error(t.indent+(e.stack||e.message));typeof r[0]=="string"&&s.push(l(e.line-1+" "+r[0],"grey")),r[1]===""&&typeof r[2]=="undefined"&&(r[1]="¶"),s.push(e.line+" "+r[1].slice(0,e.column)+l(l(r[1][e.column],"bold")+r[1].slice(e.column+1),"yellow")),typeof r[2]=="string"&&s.push(l(e.line+1+" "+r[2],"grey")),s=t.indent+s.join("\n"+t.indent)+"\n",n=t.indent+n+l(e.message,"red"),e.filename&&(n+=l(" in ","red")+e.filename),i.error(n,s),e.callLine&&(i.error(l("from ","red")+(e.filename||"")),i.error(l(e.callLine,"grey")+" "+e.callExtract)),e.stack&&i.error(l(e.stack,"red"))}};e("./tree/call"),e("./tree/color"),e("./tree/comment"),e("./tree/definition"),e("./tree/dimension"),e("./tree/element"),e("./tree/expression"),e("./tree/filterset"),e("./tree/filter"),e("./tree/field"),e("./tree/keyword"),e("./tree/layer"),e("./tree/literal"),e("./tree/operation"),e("./tree/quoted"),e("./tree/imagefilter"),e("./tree/reference"),e("./tree/rule"),e("./tree/ruleset"),e("./tree/selector"),e("./tree/style"),e("./tree/url"),e("./tree/value"),e("./tree/variable"),e("./tree/zoom"),e("./tree/invalid"),e("./tree/fontset"),e("./tree/frame_offset"),e("./functions");for(var f in a)n[f]=a[f]}).call(this,e("_process"),"/node_modules/carto/lib/carto")},{"../../package.json":74,"./functions":39,"./parser":41,"./renderer":42,"./renderer_js":43,"./torque-reference":44,"./tree":45,"./tree/call":46,"./tree/color":47,"./tree/comment":48,"./tree/definition":49,"./tree/dimension":50,"./tree/element":51,"./tree/expression":52,"./tree/field":53,"./tree/filter":54,"./tree/filterset":55,"./tree/fontset":56,"./tree/frame_offset":57,"./tree/imagefilter":58,"./tree/invalid":59,"./tree/keyword":60,"./tree/layer":61,"./tree/literal":62,"./tree/operation":63,"./tree/quoted":64,"./tree/reference":65,"./tree/rule":66,"./tree/ruleset":67,"./tree/selector":68,"./tree/style":69,"./tree/url":70,"./tree/value":71,"./tree/variable":72,"./tree/zoom":73,_process:118,fs:37,path:88,util:166}],41:[function(e,t,n){(function(t){var r=n,i=e("./tree"),s=t._||e("underscore");r.Parser=function(t){function v(){u=l[o],a=r,c=r}function m(){l[o]=u,r=a,c=r}function g(){r>c&&(l[o]=l[o].slice(r-c),c=r)}function y(e){var t,i,s,u,a,f,p;if(e instanceof Function)return e.call(h.parsers);if(typeof e=="string")t=n.charAt(r)===e?e:null,s=1,g();else{g(),t=e.exec(l[o]);if(!t)return null;s=t[0].length}if(t){var d=r+=s;f=r+l[o].length-s;while(r<f){u=n.charCodeAt(r);if(u!==32&&u!==10&&u!==9)break;r++}return l[o]=l[o].slice(s+(r-d)),c=r,l[o].length===0&&o<l.length-1&&o++,typeof t=="string"?t:t.length===1?t[0]:t}}function b(e){return typeof e=="string"?n.charAt(r)===e:!!e.test(l[o])}function w(e,t){return(e.slice(0,t).match(/\n/g)||"").length+1}function E(e){var r,i;s.defaults(e,{index:f,filename:t.filename,message:"Parse error.",line:0,column:-1}),e.filename&&p.env.inputs&&p.env.inputs[e.filename]?r=p.env.inputs[e.filename]:r=n,e.line=w(r,e.index);for(var o=e.index;o>=0&&r.charAt(o)!=="\n";o--)e.column++;return i=s.template("<%=filename%>:<%=line%>:<%=column%> <%=message%>"),new Error(i(e))}var n,r,o,u,a,f,l,c,h,p=this,d=function(){};return this.env=t=t||{},this.env.filename=this.env.filename||null,this.env.inputs=this.env.inputs||{},h={extractErrorLine:w,parse:function(e){var s,u,a,h,d,v,m=[],g,b=null;r=o=c=f=0,l=[],n=e.replace(/\r\n/g,"\n"),t.filename&&(p.env.inputs[t.filename]=n);var w=!1;l=function(e){var t=0,r=/(?:@\{[\w-]+\}|[^"'`\{\}\/\(\)\\])+/g,i=/\/\*(?:[^*]|\*+[^\/*])*\*+\/|\/\/.*/g,s=/"((?:[^"\\\r\n]|\\.)*)"|'((?:[^'\\\r\n]|\\.)*)'|`((?:[^`]|\\.)*)`/g,o=0,u,a=e[0],f;for(var l=0,c,h;l<n.length;){r.lastIndex=l,(u=r.exec(n))&&u.index===l&&(l+=u[0].length,a.push(u[0])),c=n.charAt(l),i.lastIndex=s.lastIndex=l;if(u=s.exec(n))if(u.index===l){l+=u[0].length,a.push(u[0]);continue}if(!f&&c==="/"){h=n.charAt(l+1);if(h==="/"||h==="*")if(u=i.exec(n))if(u.index===l){l+=u[0].length,a.push(u[0]);continue}}switch(c){case"{":if(!f){o++,a.push(c);break};case"}":if(!f){o--,a.push(c),e[++t]=a=[];break};case"(":if(!f){f=!0,a.push(c);break};case")":if(f){f=!1,a.push(c);break};default:a.push(c)}l++}return o!==0&&(b={index:l-1,type:"Parse",message:o>0?"missing closing `}`":"missing opening `{`"}),e.map(function(e){return e.join("")})}([[]]);if(b)throw E(b);s=new i.Ruleset([],y(this.parsers.primary)),s.root=!0,s.toList=function(){var e,t,n;return function(e){e.error=function(t){e.errors||(e.errors=new Error("")),e.errors.message?e.errors.message+="\n"+E(t).message:e.errors.message=E(t).message},e.frames=e.frames||[];var t=this.flatten([],[],e);return t.sort(S),t}}();var S=function(e,t){var n=e.specificity,r=t.specificity;return n[0]!=r[0]?r[0]-
n[0]:n[1]!=r[1]?r[1]-n[1]:n[2]!=r[2]?r[2]-n[2]:r[3]-n[3]};return s},parsers:{primary:function(){var e,t=[];while((e=y(this.rule)||y(this.ruleset)||y(this.comment))||y(/^[\s\n]+/)||(e=y(this.invalid)))e&&t.push(e);return t},invalid:function(){var e=y(/^[^;\n]*[;\n]/);if(e)return new i.Invalid(e,a)},comment:function(){var e;if(n.charAt(r)!=="/")return;if(n.charAt(r+1)==="/")return new i.Comment(y(/^\/\/.*/),!0);if(e=y(/^\/\*(?:[^*]|\*+[^\/*])*\*+\/\n?/))return new i.Comment(e)},entities:{quoted:function(){if(n.charAt(r)!=='"'&&n.charAt(r)!=="'")return;var e=y(/^"((?:[^"\\\r\n]|\\.)*)"|'((?:[^'\\\r\n]|\\.)*)'/);if(e)return new i.Quoted(e[1]||e[2])},field:function(){if(!y("["))return;var e=y(/(^[^\]]+)/);if(!y("]"))return;if(e)return new i.Field(e[1])},comparison:function(){var e=y(/^=~|=|!=|<=|>=|<|>/);if(e)return e},keyword:function(){var e=y(/^[A-Za-z-]+[A-Za-z-0-9_]*/);if(e)return new i.Keyword(e)},call:function(){var e,t;if(!(e=/^([\w\-]+|%)\(/.exec(l[o])))return;e=e[1];if(e==="url")return null;r+=e.length,y("("),t=y(this.entities.arguments);if(!y(")"))return;if(e)return new i.Call(e,t,r)},arguments:function(){var e=[],t;while(t=y(this.expression)){e.push(t);if(!y(","))break}return e},literal:function(){return y(this.entities.dimension)||y(this.entities.keywordcolor)||y(this.entities.hexcolor)||y(this.entities.quoted)},url:function(){var e;if(n.charAt(r)!=="u"||!y(/^url\(/))return;return e=y(this.entities.quoted)||y(this.entities.variable)||y(/^[\-\w%@$\/.&=:;#+?~]+/)||"",y(")")?new i.URL(typeof e.value!="undefined"||e instanceof i.Variable?e:new i.Quoted(e)):new i.Invalid(e,a,"Missing closing ) in URL.")},variable:function(){var e,s=r;if(n.charAt(r)==="@"&&(e=y(/^@[\w-]+/)))return new i.Variable(e,s,t.filename)},hexcolor:function(){var e;if(n.charAt(r)==="#"&&(e=y(/^#([a-fA-F0-9]{6}|[a-fA-F0-9]{3})/)))return new i.Color(e[1])},keywordcolor:function(){var e=l[o].match(/^[a-z]+/);if(e&&e[0]in i.Reference.data.colors)return new i.Color(i.Reference.data.colors[y(/^[a-z]+/)])},dimension:function(){var e=n.charCodeAt(r);if(e>57||e<45||e===47)return;var t=y(/^(-?\d*\.?\d+(?:[eE][-+]?\d+)?)(\%|\w+)?/);if(t)return new i.Dimension(t[1],t[2],a)}},variable:function(){var e;if(n.charAt(r)==="@"&&(e=y(/^(@[\w-]+)\s*:/)))return e[1]},entity:function(){return y(this.entities.call)||y(this.entities.literal)||y(this.entities.field)||y(this.entities.variable)||y(this.entities.url)||y(this.entities.keyword)},end:function(){return y(";")||b("}")},element:function(){var e=y(/^(?:[.#][\w\-]+|\*|Map)/);if(e)return new i.Element(e)},attachment:function(){var e=y(/^::([\w\-]+(?:\/[\w\-]+)*)/);if(e)return e[1]},selector:function(){var e,t,s,o=[],u,f=new i.Filterset,l,c=[],h=i.FrameOffset.none;segments=0,conditions=0;while((s=y(this.element))||(l=y(this.zoom))||(fo=y(this.frame_offset))||(u=y(this.filter))||(e=y(this.attachment))){segments++;if(s)o.push(s);else if(l)c.push(l),conditions++;else if(fo)h=fo,conditions++;else if(u){var p=f.add(u);if(p)throw E({message:p,index:r-1});conditions++}else{if(t)throw E({message:"Encountered second attachment name.",index:r-1});t=e}var d=n.charAt(r);if(d==="{"||d==="}"||d===";"||d===",")break}if(segments)return new i.Selector(f,c,h,o,t,conditions,a)},filter:function(){v();var e,n,r;if(!y("["))return;if(e=y(/^[a-zA-Z0-9\-_]+/)||y(this.entities.quoted)||y(this.entities.variable)||y(this.entities.keyword)||y(this.entities.field)){e instanceof i.Quoted&&(e=new i.Field(e.toString()));if((n=y(this.entities.comparison))&&(r=y(this.entities.quoted)||y(this.entities.variable)||y(this.entities.dimension)||y(this.entities.keyword)||y(this.entities.field))){if(!y("]"))throw E({message:"Missing closing ] of filter.",index:a-1});return e.is||(e=new i.Field(e)),new i.Filter(e,n,r,a,t.filename)}}},frame_offset:function(){v();var e,t;if(y(/^\[\s*frame-offset/g)&&(e=y(this.entities.comparison))&&(t=y(/^\d+/))&&y("]"))return i.FrameOffset(e,t,a)},zoom:function(){v();var e,t;if(y(/^\[\s*zoom/g)&&(e=y(this.entities.comparison))&&(t=y(this.entities.variable)||y(this.entities.dimension))&&y("]"))return new i.Zoom(e,t,a);m()},block:function(){var e;if(y("{")&&(e=y(this.primary))&&y("}"))return e},ruleset:function(){var e=[],t,n,r,s,o=[];v();while(t=y(this.selector)){e.push(t);while(y(this.comment));if(!y(","))break;while(y(this.comment));}if(t)while(y(this.comment));if(e.length>0&&(s=y(this.block))){if(e.length===1&&e[0].elements.length&&e[0].elements[0].value==="Map"){var u=new i.Ruleset(e,s);return u.isMap=!0,u}return new i.Ruleset(e,s)}m()},rule:function(){var e,s,o=n.charAt(r);v();if(o==="."||o==="#")return;if(e=y(this.variable)||y(this.property)){s=y(this.value);if(s&&y(this.end))return new i.Rule(e,s,a,t.filename);f=r,m()}},font:function(){var e=[],t=[],n,r,s;while(s=y(this.entity))t.push(s);e.push(new i.Expression(t));if(y(","))while(s=y(this.expression)){e.push(s);if(!y(","))break}return new i.Value(e)},value:function(){var e,t=[];while(e=y(this.expression)){t.push(e);if(!y(","))break}if(t.length>1)return new i.Value(t.map(function(e){return e.value[0]}));if(t.length===1)return new i.Value(t)},sub:function(){var e,t=[];if(y("(")){while(e=y(this.expression)){t.push(e);if(!y(","))break}y(")")}if(t.length>1)return new i.Value(t.map(function(e){return e.value[0]}));if(t.length===1)return new i.Value(t)},multiplication:function(){var e,t,n,r;if(e=y(this.operand)){while((n=y("/")||y("*")||y("%"))&&(t=y(this.operand)))r=new i.Operation(n,[r||e,t],a);return r||e}},addition:function(){var e,t,s,o;if(e=y(this.multiplication)){while((s=y(/^[-+]\s+/)||n.charAt(r-1)!=" "&&(y("+")||y("-")))&&(t=y(this.multiplication)))o=new i.Operation(s,[o||e,t],a);return o||e}},operand:function(){return y(this.sub)||y(this.entity)},expression:function(){var e,t,n=[],r;while(e=y(this.addition)||y(this.entity))n.push(e);if(n.length>0)return new i.Expression(n)},property:function(){var e=y(/^(([a-z][-a-z_0-9]*\/)?\*?-?[-a-z_0-9]+)\s*:/);if(e)return e[1]}}},h}}).call(this,typeof global!="undefined"?global:typeof self!="undefined"?self:typeof window!="undefined"?window:{})},{"./tree":45,underscore:163}],42:[function(e,t,n){(function(n){function s(e,t,n,r){var i=t.filters,s=t.rules,o,u,a;for(var f=0;f<e.length;f++)o=e[f].filters.cloneWith(i),o?(a=n[o],a?a.addRules(s):(u=e[f].clone(o),u.addRules(s)&&(n[o]=u,e.splice(f,0,u),f++))):o===null&&(e[f]=e[f].clone(),e[f].addRules(s));return e}function o(e,t){var n=+(new Date),r={},i={},o=[],u,a,f;e.forEach(function(e){e.filters.ev(t)});for(var l=0;l<e.length;l++){f=e[l].attachment,u=[e[l]],r[f]||(r[f]=[],r[f].attachment=f,i[f]={},o.push(r[f]));for(var c=l+1;c<e.length;c++)e[c].attachment===f&&(u=s(u,e[c],i[f],t));for(var h=0;h<u.length;h++)i[f][u[h].filters]=u[h],r[f].push(u[h])}return t.benchmark&&console.warn("Inheritance time: "+(new Date-n)+"ms"),o}function u(e,t){return t.index-e.index}function a(e,t){for(var n=0;n<e.length;n++){var r=e[n];r.index=Infinity;for(var i=0;i<r.length;i++){var s=r[i].rules;for(var o=0;o<s.length;o++){var a=s[o];a.index<r.index&&(r.index=a.index)}}}var f=e.slice();return f.sort(u),f}function f(e,t,n){var s={},o=i.tree.Reference.data.symbolizers.map;return r(e).each(function(e,t){t in o&&(s[t]=t+'="'+e+'"')}),t.filter(function(e){return e.elements.join("")==="Map"}).forEach(function(e){for(var t=0;t<e.rules.length;t++){var r=e.rules[t].name;r in o||n.error({message:"Rule "+r+" not allowed for Map.",index:e.rules[t].index}),s[r]=e.rules[t].ev(n).toXML(n)}}),s}var r=n._||e("underscore"),i=e("./index");i.Renderer=function(t,n){this.env=t||{},this.options=n||{},this.options.mapnik_version=this.options.mapnik_version||"3.0.0"},i.Renderer.prototype.renderMSS=function(t){var n=r.defaults(this.env,{benchmark:!1,validation_data:!1,effects:[]});if(!i.tree.Reference.setVersion(this.options.mapnik_version))throw new Error("Could not set mapnik version to "+this.options.mapnik_version);var s=[],u=[];n.benchmark&&console.time("Parsing MSS");var f=i.Parser(n).parse(t);n.benchmark&&console.timeEnd("Parsing MSS"),n.benchmark&&console.time("Rule generation");var l=f.toList(n);n.benchmark&&console.timeEnd("Rule generation"),n.benchmark&&console.time("Rule inheritance");var c=o(l,n);n.benchmark&&console.timeEnd("Rule inheritance"),n.benchmark&&console.time("Style sort");var h=a(c,n);n.benchmark&&console.timeEnd("Style sort"),n.benchmark&&console.time("Total Style generation");for(var p=0,d,v;p<h.length;p++){d=h[p],v="style"+(d.attachment!=="__default__"?"-"+d.attachment:""),u.push(v);var m=' Style "'+v+'" (#'+p+") toXML";n.benchmark&&console.time(m),s.push(i.tree.StyleXML(v,d.attachment,d,n)),n.benchmark&&console.timeEnd(m)}n.benchmark&&console.timeEnd("Total Style generation");if(n.errors)throw n.errors;return s.join("\n")},i.Renderer.prototype.render=function(t){function l(e,t){return function(e){return e.appliesTo(h.name,t)}}var n=r.defaults(this.env,{benchmark:!1,validation_data:!1,effects:[],ppi:90.714});if(!i.tree.Reference.setVersion(this.options.mapnik_version))throw new Error("Could not set mapnik version to "+this.options.mapnik_version);var s=[],u=r.chain(t.Stylesheet).map(function(e){if(typeof e=="string")throw new Error("Stylesheet object is expected not a string: '"+e+"'");n=r.extend(n,{filename:e.id});var t=+(new Date),s=i.Parser(n).parse(e.data);return n.benchmark&&console.warn("Parsing time: "+(new Date-t)+"ms"),s.toList(n)}).flatten().value(),c,h,p,d,v,m;for(var g=0;g<t.Layer.length;g++){h=t.Layer[g],c=[],p={},n.benchmark&&console.warn("processing layer: "+h.id);var y=(h["class"]||"").split(/\s+/g);for(var b=0;b<y.length;b++)p[y[b]]=!0;m=u.filter(l(h.name,p)),d=o(m,n),v=a(d,n);for(var w=0,E,S;w<v.length;w++){E=v[w],S=h.name+(E.attachment!=="__default__"?"-"+E.attachment:"");var x=i.tree.StyleXML(S,E.attachment,E,n);x&&(s.push(x),c.push(S))}s.push(i.tree.LayerXML(h,c))}s.unshift(n.effects.map(function(e){return e.toXML(n)}).join("\n"));var T=f(t,u,n);if(n.errors)throw n.errors;var N=r.reduce(t,function(e,t,n){if(!t&&t!==0)return e;switch(n){case"srs":case"Layer":case"Stylesheet":break;case"bounds":case"center":case"minzoom":case"maxzoom":case"version":e.push(' <Parameter name="'+n+'">'+t+"</Parameter>");break;case"name":case"description":case"legend":case"attribution":case"template":e.push(' <Parameter name="'+n+'"><![CDATA['+t+"]]></Parameter>");break;case"format":e.push(' <Parameter name="'+n+'">'+t+"</Parameter>");break;case"interactivity":e.push(' <Parameter name="interactivity_layer">'+t.layer+"</Parameter>"),e.push(' <Parameter name="interactivity_fields">'+t.fields+"</Parameter>");break;default:"string"==typeof t?e.push(' <Parameter name="'+n+'"><![CDATA['+t+"]]></Parameter>"):"number"==typeof t?e.push(' <Parameter name="'+n+'">'+t+"</Parameter>"):"boolean"==typeof t&&e.push(' <Parameter name="'+n+'">'+t+"</Parameter>")}return e},[]);N.length&&s.unshift("<Parameters>\n"+N.join("\n")+"\n</Parameters>\n");var C=r.map(T,function(e){return" "+e}).join("");return s.unshift('<?xml version="1.0" encoding="utf-8"?>\n<!DOCTYPE Map[]>\n<Map'+C+">\n"),s.push("</Map>"),s.join("\n")},t.exports=i,t.exports.addRules=s,t.exports.inheritDefinitions=o,t.exports.sortStyles=a}).call(this,typeof global!="undefined"?global:typeof self!="undefined"?self:typeof window!="undefined"?window:{})},{"./index":40,underscore:163}],43:[function(require,module,exports){(function(global){(function(carto){function CartoCSS(e,t){this.options=t||{},this.imageURLs=[],e&&this.setStyle(e)}var tree=require("./tree"),_=global._||require("underscore");CartoCSS.Layer=function(e,t){this.options=t,this.shader=e},CartoCSS.Layer.prototype={fullName:function(){return this.shader.attachment},name:function(){return this.fullName().split("::")[0]},frames:function(){return this.shader.frames},attachment:function(){return this.fullName().split("::")[1]},eval:function(e){var t=this.shader[e];if(!t||!t.style)return;return t.style({},{zoom:0,"frame-offset":0})},getStyle:function(e,t){var n={};for(var r in this.shader)r!=="attachment"&&r!=="zoom"&&r!=="frames"&&r!=="symbolizers"&&(n[r]=this.shader[r].style(e,t));return n},getSymbolizers:function(){return this.shader.symbolizers},isVariable:function(){for(var e in this.shader)if(e!=="attachment"&&e!=="zoom"&&e!=="frames"&&e!=="symbolizers"&&!this.shader[e].constant)return!0;return!1},getShader:function(){return this.shader},filter:function(e,t,n){for(var r in this.shader){var i=this.shader[r](t,n);if(i)return!0}return!1},transformGeometry:function(e){return e},transformGeometries:function(e){return e}},CartoCSS.prototype={setStyle:function(e){var t=this.parse(e);if(!t)throw new Error(this.parse_env.errors);this.layers=t.map(function(e){return new CartoCSS.Layer(e)})},getLayers:function(){return this.layers},getDefault:function(){return this.findLayer({attachment:"__default__"})},findLayer:function(e){return _.find(this.layers,function(t){for(var n in e){var r=t[n];typeof r=="function"&&(r=r.call(t));if(e[n]!==r)return!1}return!0})},_createFn:function(e){var t=e.join("\n");return this.options.debug&&console.log(t),Function("data","ctx","var _value = null; "+t+"; return _value; ")},_compile:function(shader){typeof shader=="string"&&(shader=eval("(function() { return "+shader+"; })()")),this.shader_src=shader;for(var attr in shader){var c=mapper[attr];c&&(this.compiled[c]=eval("(function() { return shader[attr]; })();"))}},getImageURLs:function(){return this.imageURLs},parse:function(e){var t={frames:[],errors:[],error:function(e){this.errors.push(e)}};this.parse_env=t;var n=null;try{n=(new carto.Parser(t)).parse(e)}catch(r){t.errors.push(r.message);return}if(n){function i(e){return e.elements[0]+"::"+e.attachment}var s=n.toList(t);s.reverse();var o={};for(var u=0;u<s.length;++u){var a=s[u],f=i(a),l=o[f]=o[f]||{symbolizers:[]};for(var c=0;c<a.rules.length;c++){var h=a.rules[c];if(h.name==="marker-file"||h.name==="point-file"){var p=h.value.value[0].value[0].value.value;this.imageURLs.push(p)}}l.frames=[],l.zoom=tree.Zoom.all;var d=a.toJS(t);this.options.debug&&console.log("props",d);for(var v in d){var m=l[v]=l[v]||{constant:!1,symbolizer:null,js:[],index:0};m.js.push(d[v].map(function(e){return e.js}).join("\n")),m.symbolizer=_.first(d[v].map(function(e){return e.symbolizer})),m.index=_.max(d[v].map(function(e){return e.index}).concat(m.index)),m.constant=!_.any(d[v].map(function(e){return!e.constant})),m.filtered=d[v][0].filtered}}var g=[];this.options.debug&&console.log(o);var y={};for(var u=0;u<s.length;++u){var a=s[u];if(this.options.strict){a.toXML(t,{});if(t.errors.message)throw new Error(t.errors.message)}var b=i(a),l=o[b];if(!y[b]){this.options.debug&&console.log("**",b);for(var w in l)w!=="zoom"&&w!=="frames"&&w!=="symbolizers"&&(this.options.debug&&console.log("*",w),l[w].style=this._createFn(l[w].js),l.symbolizers.push(l[w].symbolizer),l.symbolizers=_.uniq(l.symbolizers));l.attachment=b,g.push(l),y[b]=!0}l.zoom|=a.zoom,l.frames.push(a.frame_offset)}for(u=0;u<g.length;++u)g[u].frames=_.uniq(g[u].frames);return g}return null}},carto.RendererJS=function(e){this.options=e||{},this.options.mapnik_version=this.options.mapnik_version||"latest",this.reference=this.options.reference||require("./torque-reference").version.latest,this.options.strict=this.options.hasOwnProperty("strict")?this.options.strict:!1},carto.RendererJS.prototype.render=function(t,n){return tree.Reference.setData(this.reference),new CartoCSS(t,this.options)},typeof module!="undefined"&&(module.exports=carto.RendererJS)})(require("../carto"))}).call(this,typeof global!="undefined"?global:typeof self!="undefined"?self:typeof window!="undefined"?window:{})},{"../carto":40,"./torque-reference":44,"./tree":45,underscore:163}],44:[function(e,t,n){var r={version:"2.1.1",style:{"filter-mode":{type:["all","first"],doc:"Control the processing behavior of Rule filters within a Style. If 'all' is used then all Rules are processed sequentially independent of whether any previous filters matched. If 'first' is used then it means processing ends after the first match (a positive filter evaluation) and no further Rules in the Style are processed ('first' is usually the default for CSS implementations on top of Mapnik to simplify translation from CSS to Mapnik XML)","default-value":"all","default-meaning":"All Rules in a Style are processed whether they have filters or not and whether or not the filter conditions evaluate to true."},"image-filters":{css:"image-filters","default-value":"none","default-meaning":"no filters",type:"functions",functions:[["agg-stack-blur",2],["emboss",0],["blur",0],["gray",0],["sobel",0],["edge-detect",0],["x-gradient",0],["y-gradient",0],["invert",0],["sharpen",0],["colorize-alpha",-1],["color-to-alpha",1],["scale-hsla",8]],doc:"A list of image filters."},"comp-op":{css:"comp-op","default-value":"src-over","default-meaning":"add the current layer on top of other layers",doc:"Composite operation. This defines how this layer should behave relative to layers atop or below it.",type:["clear","src","dst","src-over","source-over","dst-over","src-in","dst-in","src-out","dst-out","src-atop","dst-atop","xor","plus","minus","multiply","screen","overlay","darken","lighten","lighter","color-dodge","color-burn","hard-light","soft-light","difference","exclusion","contrast","invert","invert-rgb","grain-merge","grain-extract","hue","saturation","color","value"]},opacity:{css:"opacity",type:"float",doc:"An alpha value for the style (which means an alpha applied to all features in separate buffer and then composited back to main buffer)","default-value":1,"default-meaning":"no separate buffer will be used and no alpha will be applied to the style after rendering"}},layer:{name:{"default-value":"",type:"string",required:!0,"default-meaning":"No layer name has been provided",doc:"The name of a layer. Can be anything you wish and is not strictly validated, but ideally unique in the map"},srs:{"default-value":"",type:"string","default-meaning":"No srs value is provided and the value will be inherited from the Map's srs",doc:"The spatial reference system definition for the layer, aka the projection. Can either be a proj4 literal string like '+proj=longlat +ellps=WGS84 +datum=WGS84 +no_defs' or, if the proper proj4 epsg/nad/etc identifier files are installed, a string that uses an id like: '+init=epsg:4326'"},status:{"default-value":!0,type:"boolean","default-meaning":"This layer will be marked as active and available for processing",doc:"A property that can be set to false to disable this layer from being processed"},minzoom:{"default-value":"0",type:"float","default-meaning":"The layer will be visible at the minimum possible scale",doc:"The minimum scale denominator that this layer will be visible at. A layer's visibility is determined by whether its status is true and if the Map scale >= minzoom - 1e-6 and scale < maxzoom + 1e-6"},maxzoom:{"default-value":"1.79769e+308",type:"float","default-meaning":"The layer will be visible at the maximum possible scale",doc:"The maximum scale denominator that this layer will be visible at. The default is the numeric limit of the C++ double type, which may vary slightly by system, but is likely a massive number like 1.79769e+308 and ensures that this layer will always be visible unless the value is reduced. A layer's visibility is determined by whether its status is true and if the Map scale >= minzoom - 1e-6 and scale < maxzoom + 1e-6"},queryable:{"default-value":!1,type:"boolean","default-meaning":"The layer will not be available for the direct querying of data values",doc:"This property was added for GetFeatureInfo/WMS compatibility and is rarely used. It is off by default meaning that in a WMS context the layer will not be able to be queried unless the property is explicitly set to true"},"clear-label-cache":{"default-value":!1,type:"boolean","default-meaning":"The renderer's collision detector cache (used for avoiding duplicate labels and overlapping markers) will not be cleared immediately before processing this layer",doc:"This property, by default off, can be enabled to allow a user to clear the collision detector cache before a given layer is processed. This may be desirable to ensure that a given layers data shows up on the map even if it normally would not because of collisions with previously rendered labels or markers"},"group-by":{"default-value":"",type:"string","default-meaning":"No special layer grouping will be used during rendering",doc:"https://github.com/mapnik/mapnik/wiki/Grouped-rendering"},"buffer-size":{"default-value":"0",type:"float","default-meaning":"No buffer will be used",doc:"Extra tolerance around the Layer extent (in pixels) used to when querying and (potentially) clipping the layer data during rendering"},"maximum-extent":{"default-value":"none",type:"bbox","default-meaning":"No clipping extent will be used",doc:"An extent to be used to limit the bounds used to query this specific layer data during rendering. Should be minx, miny, maxx, maxy in the coordinates of the Layer."}},symbolizers:{"*":{"image-filters":{css:"image-filters","default-value":"none","default-meaning":"no filters",type:"functions",functions:[["agg-stack-blur",2],["emboss",0],["blur",0],["gray",0],["sobel",0],["edge-detect",0],["x-gradient",0],["y-gradient",0],["invert",0],["sharpen",0],["colorize-alpha",-1],["color-to-alpha",1],["scale-hsla",8],["buckets",-1],["category",-1],["equal",-1],["headtails",-1],["jenks",-1],["quantiles",-1],["cartocolor",-1],["colorbrewer",-1],["range",-1],["ramp",-1]],doc:"A list of image filters."},"comp-op":{css:"comp-op","default-value":"src-over","default-meaning":"add the current layer on top of other layers",doc:"Composite operation. This defines how this layer should behave relative to layers atop or below it.",type:["clear","src","dst","src-over","source-over","dst-over","src-in","dst-in","src-out","dst-out","src-atop","dst-atop","xor","plus","minus","multiply","screen","overlay","darken","lighten","lighter","color-dodge","color-burn","hard-light","soft-light","difference","exclusion","contrast","invert","invert-rgb","grain-merge","grain-extract","hue","saturation","color","value"]},opacity:{css:"opacity",type:"float",doc:"An alpha value for the style (which means an alpha applied to all features in separate buffer and then composited back to main buffer)","default-value":1,"default-meaning":"no separate buffer will be used and no alpha will be applied to the style after rendering"}},map:{"background-color":{css:"background-color","default-value":"none","default-meaning":"transparent",type:"color",doc:"Map Background color"},"background-image":{css:"background-image",type:"uri","default-value":"","default-meaning":"transparent",doc:"An image that is repeated below all features on a map as a background.",description:"Map Background image"},srs:{css:"srs",type:"string","default-value":"+proj=longlat +ellps=WGS84 +datum=WGS84 +no_defs","default-meaning":"The proj4 literal of EPSG:4326 is assumed to be the Map's spatial reference and all data from layers within this map will be plotted using this coordinate system. If any layers do not declare an srs value then they will be assumed to be in the same srs as the Map and not transformations will be needed to plot them in the Map's coordinate space",doc:"Map spatial reference (proj4 string)"},"buffer-size":{css:"buffer-size","default-value":"0",type:"float","default-meaning":"No buffer will be used",doc:'Extra tolerance around the map (in pixels) used to ensure labels crossing tile boundaries are equally rendered in each tile (e.g. cut in each tile). Not intended to be used in combination with "avoid-edges".'},"maximum-extent":{css:"","default-value":"none",type:"bbox","default-meaning":"No clipping extent will be used",doc:"An extent to be used to limit the bounds used to query all layers during rendering. Should be minx, miny, maxx, maxy in the coordinates of the Map."},base:{css:"base","default-value":"","default-meaning":"This base path defaults to an empty string meaning that any relative paths to files referenced in styles or layers will be interpreted relative to the application process.",type:"string",doc:"Any relative paths used to reference files will be understood as relative to this directory path if the map is loaded from an in memory object rather than from the filesystem. If the map is loaded from the filesystem and this option is not provided it will be set to the directory of the stylesheet."},"paths-from-xml":{css:"","default-value":!0,"default-meaning":"Paths read from XML will be interpreted from the location of the XML",type:"boolean",doc:"value to control whether paths in the XML will be interpreted from the location of the XML or from the working directory of the program that calls load_map()"},"minimum-version":{css:"","default-value":"none","default-meaning":"Mapnik version will not be detected and no error will be thrown about compatibility",type:"string",doc:"The minumum Mapnik version (e.g. 0.7.2) needed to use certain functionality in the stylesheet"},"font-directory":{css:"font-directory",type:"uri","default-value":"none","default-meaning":"No map-specific fonts will be registered",doc:"Path to a directory which holds fonts which should be registered when the Map is loaded (in addition to any fonts that may be automatically registered)."}},polygon:{fill:{css:"polygon-fill",type:"color","default-value":"rgba(128,128,128,1)","default-meaning":"gray and fully opaque (alpha = 1), same as rgb(128,128,128)",doc:"Fill color to assign to a polygon",expression:!0},"fill-opacity":{css:"polygon-opacity",type:"float",doc:"The opacity of the polygon","default-value":1,"default-meaning":"opaque",expression:!0},gamma:{css:"polygon-gamma",type:"float","default-value":1,"default-meaning":"fully antialiased",range:"0-1",doc:"Level of antialiasing of polygon edges"},"gamma-method":{css:"polygon-gamma-method",type:["power","linear","none","threshold","multiply"],"default-value":"power","default-meaning":"pow(x,gamma) is used to calculate pixel gamma, which produces slightly smoother line and polygon antialiasing than the 'linear' method, while other methods are usually only used to disable AA",doc:"An Antigrain Geometry specific rendering hint to control the quality of antialiasing. Under the hood in Mapnik this method is used in combination with the 'gamma' value (which defaults to 1). The methods are in the AGG source at https://github.com/mapnik/mapnik/blob/master/deps/agg/include/agg_gamma_functions.h"},clip:{css:"polygon-clip",type:"boolean","default-value":!0,"default-meaning":"geometry will be clipped to map bounds before rendering",doc:"geometries are clipped to map bounds by default for best rendering performance. In some cases users may wish to disable this to avoid rendering artifacts."},smooth:{css:"polygon-smooth",type:"float","default-value":0,"default-meaning":"no smoothing",range:"0-1",doc:"Smooths out geometry angles. 0 is no smoothing, 1 is fully smoothed. Values greater than 1 will produce wild, looping geometries."},"geometry-transform":{css:"polygon-geometry-transform",type:"functions","default-value":"none","default-meaning":"geometry will not be transformed",doc:"Allows transformation functions to be applied to the geometry.",functions:[["matrix",6],["translate",2],["scale",2],["rotate",3],["skewX",1],["skewY",1]]},"comp-op":{css:"polygon-comp-op","default-value":"src-over","default-meaning":"add the current symbolizer on top of other symbolizer",doc:"Composite operation. This defines how this symbolizer should behave relative to symbolizers atop or below it.",type:["clear","src","dst","src-over","dst-over","src-in","dst-in","src-out","dst-out","src-atop","dst-atop","xor","plus","minus","multiply","screen","overlay","darken","lighten","color-dodge","color-burn","hard-light","soft-light","difference","exclusion","contrast","invert","invert-rgb","grain-merge","grain-extract","hue","saturation","color","value"]}},line:{stroke:{css:"line-color","default-value":"rgba(0,0,0,1)",type:"color","default-meaning":"black and fully opaque (alpha = 1), same as rgb(0,0,0)",doc:"The color of a drawn line",expression:!0},"stroke-width":{css:"line-width","default-value":1,type:"float",doc:"The width of a line in pixels",expression:!0},"stroke-opacity":{css:"line-opacity","default-value":1,type:"float","default-meaning":"opaque",doc:"The opacity of a line"},"stroke-linejoin":{css:"line-join","default-value":"miter",type:["miter","round","bevel"],doc:"The behavior of lines when joining"},"stroke-linecap":{css:"line-cap","default-value":"butt",type:["butt","round","square"],doc:"The display of line endings"},"stroke-gamma":{css:"line-gamma",type:"float","default-value":1,"default-meaning":"fully antialiased",range:"0-1",doc:"Level of antialiasing of stroke line"},"stroke-gamma-method":{css:"line-gamma-method",type:["power","linear","none","threshold","multiply"],"default-value":"power","default-meaning":"pow(x,gamma) is used to calculate pixel gamma, which produces slightly smoother line and polygon antialiasing than the 'linear' method, while other methods are usually only used to disable AA",doc:"An Antigrain Geometry specific rendering hint to control the quality of antialiasing. Under the hood in Mapnik this method is used in combination with the 'gamma' value (which defaults to 1). The methods are in the AGG source at https://github.com/mapnik/mapnik/blob/master/deps/agg/include/agg_gamma_functions.h"},"stroke-dasharray":{css:"line-dasharray",type:"numbers",doc:"A pair of length values [a,b], where (a) is the dash length and (b) is the gap length respectively. More than two values are supported for more complex patterns.","default-value":"none","default-meaning":"solid line"},"stroke-dashoffset":{css:"line-dash-offset",type:"numbers",doc:"valid parameter but not currently used in renderers (only exists for experimental svg support in Mapnik which is not yet enabled)","default-value":"none","default-meaning":"solid line"},"stroke-miterlimit":{css:"line-miterlimit",type:"float",doc:"The limit on the ratio of the miter length to the stroke-width. Used to automatically convert miter joins to bevel joins for sharp angles to avoid the miter extending beyond the thickness of the stroking path. Normally will not need to be set, but a larger value can sometimes help avoid jaggy artifacts.","default-value":4,"default-meaning":"Will auto-convert miters to bevel line joins when theta is less than 29 degrees as per the SVG spec: 'miterLength / stroke-width = 1 / sin ( theta / 2 )'"},clip:{css:"line-clip",type:"boolean","default-value":!0,"default-meaning":"geometry will be clipped to map bounds before rendering",doc:"geometries are clipped to map bounds by default for best rendering performance. In some cases users may wish to disable this to avoid rendering artifacts."},smooth:{css:"line-smooth",type:"float","default-value":0,"default-meaning":"no smoothing",range:"0-1",doc:"Smooths out geometry angles. 0 is no smoothing, 1 is fully smoothed. Values greater than 1 will produce wild, looping geometries."},offset:{css:"line-offset",type:"float","default-value":0,"default-meaning":"no offset",doc:"Offsets a line a number of pixels parallel to its actual path. Postive values move the line left, negative values move it right (relative to the directionality of the line)."},rasterizer:{css:"line-rasterizer",type:["full","fast"],"default-value":"full",doc:"Exposes an alternate AGG rendering method that sacrifices some accuracy for speed."},"geometry-transform":{css:"line-geometry-transform",type:"functions","default-value":"none","default-meaning":"geometry will not be transformed",doc:"Allows transformation functions to be applied to the geometry.",functions:[["matrix",6],["translate",2],["scale",2],["rotate",3],["skewX",1],["skewY",1]]},"comp-op":{css:"line-comp-op","default-value":"src-over","default-meaning":"add the current symbolizer on top of other symbolizer",doc:"Composite operation. This defines how this symbolizer should behave relative to symbolizers atop or below it.",type:["clear","src","dst","src-over","dst-over","src-in","dst-in","src-out","dst-out","src-atop","dst-atop","xor","plus","minus","multiply","screen","overlay","darken","lighten","color-dodge","color-burn","hard-light","soft-light","difference","exclusion","contrast","invert","invert-rgb","grain-merge","grain-extract","hue","saturation","color","value"]}},markers:{file:{css:"marker-file",doc:"An SVG file that this marker shows at each placement. If no file is given, the marker will show an ellipse.","default-value":"","default-meaning":"An ellipse or circle, if width equals height",type:"uri",expression:!0},opacity:{css:"marker-opacity",doc:"The overall opacity of the marker, if set, overrides both the opacity of both the fill and stroke","default-value"
:1,"default-meaning":"The stroke-opacity and fill-opacity will be used",type:"float"},"fill-opacity":{css:"marker-fill-opacity",doc:"The fill opacity of the marker","default-value":1,"default-meaning":"opaque",type:"float"},stroke:{css:"marker-line-color",doc:"The color of the stroke around a marker shape.","default-value":"black",type:"color"},"stroke-width":{css:"marker-line-width",doc:"The width of the stroke around a marker shape, in pixels. This is positioned on the boundary, so high values can cover the area itself.",type:"float"},"stroke-opacity":{css:"marker-line-opacity","default-value":1,"default-meaning":"opaque",doc:"The opacity of a line",type:"float"},placement:{css:"marker-placement",type:["point","line","interior"],"default-value":"point","default-meaning":"Place markers at the center point (centroid) of the geometry",doc:"Attempt to place markers on a point, in the center of a polygon, or if markers-placement:line, then multiple times along a line. 'interior' placement can be used to ensure that points placed on polygons are forced to be inside the polygon interior"},"multi-policy":{css:"marker-multi-policy",type:["each","whole","largest"],"default-value":"each","default-meaning":"If a feature contains multiple geometries and the placement type is either point or interior then a marker will be rendered for each",doc:"A special setting to allow the user to control rendering behavior for 'multi-geometries' (when a feature contains multiple geometries). This setting does not apply to markers placed along lines. The 'each' policy is default and means all geometries will get a marker. The 'whole' policy means that the aggregate centroid between all geometries will be used. The 'largest' policy means that only the largest (by bounding box areas) feature will get a rendered marker (this is how text labeling behaves by default)."},"marker-type":{css:"marker-type",type:["arrow","ellipse","rectangle"],"default-value":"ellipse",doc:"The default marker-type. If a SVG file is not given as the marker-file parameter, the renderer provides either an arrow or an ellipse (a circle if height is equal to width)"},width:{css:"marker-width","default-value":10,doc:"The width of the marker, if using one of the default types.",type:"float",expression:!0},height:{css:"marker-height","default-value":10,doc:"The height of the marker, if using one of the default types.",type:"float",expression:!0},fill:{css:"marker-fill","default-value":"blue",doc:"The color of the area of the marker.",type:"color",expression:!0},"allow-overlap":{css:"marker-allow-overlap",type:"boolean","default-value":!1,doc:"Control whether overlapping markers are shown or hidden.","default-meaning":"Do not allow makers to overlap with each other - overlapping markers will not be shown."},"ignore-placement":{css:"marker-ignore-placement",type:"boolean","default-value":!1,"default-meaning":"do not store the bbox of this geometry in the collision detector cache",doc:"value to control whether the placement of the feature will prevent the placement of other features"},spacing:{css:"marker-spacing",doc:"Space between repeated labels","default-value":100,type:"float"},"max-error":{css:"marker-max-error",type:"float","default-value":.2,doc:"The maximum difference between actual marker placement and the marker-spacing parameter. Setting a high value can allow the renderer to try to resolve placement conflicts with other symbolizers."},transform:{css:"marker-transform",type:"functions",functions:[["matrix",6],["translate",2],["scale",2],["rotate",3],["skewX",1],["skewY",1]],"default-value":"","default-meaning":"No transformation",doc:"SVG transformation definition"},clip:{css:"marker-clip",type:"boolean","default-value":!0,"default-meaning":"geometry will be clipped to map bounds before rendering",doc:"geometries are clipped to map bounds by default for best rendering performance. In some cases users may wish to disable this to avoid rendering artifacts."},smooth:{css:"marker-smooth",type:"float","default-value":0,"default-meaning":"no smoothing",range:"0-1",doc:"Smooths out geometry angles. 0 is no smoothing, 1 is fully smoothed. Values greater than 1 will produce wild, looping geometries."},"geometry-transform":{css:"marker-geometry-transform",type:"functions","default-value":"none","default-meaning":"geometry will not be transformed",doc:"Allows transformation functions to be applied to the geometry.",functions:[["matrix",6],["translate",2],["scale",2],["rotate",3],["skewX",1],["skewY",1]]},"comp-op":{css:"marker-comp-op","default-value":"src-over","default-meaning":"add the current symbolizer on top of other symbolizer",doc:"Composite operation. This defines how this symbolizer should behave relative to symbolizers atop or below it.",type:["clear","src","dst","src-over","dst-over","src-in","dst-in","src-out","dst-out","src-atop","dst-atop","xor","plus","minus","multiply","screen","overlay","darken","lighten","color-dodge","color-burn","hard-light","soft-light","difference","exclusion","contrast","invert","invert-rgb","grain-merge","grain-extract","hue","saturation","color","value"]}},shield:{name:{css:"shield-name",type:"string",expression:!0,serialization:"content",doc:'Value to use for a shield"s text label. Data columns are specified using brackets like [column_name]'},file:{css:"shield-file",required:!0,type:"uri","default-value":"none",doc:"Image file to render behind the shield text"},"face-name":{css:"shield-face-name",type:"string",validate:"font",doc:"Font name and style to use for the shield text","default-value":"",required:!0},"unlock-image":{css:"shield-unlock-image",type:"boolean",doc:"This parameter should be set to true if you are trying to position text beside rather than on top of the shield image","default-value":!1,"default-meaning":"text alignment relative to the shield image uses the center of the image as the anchor for text positioning."},size:{css:"shield-size",type:"float",doc:"The size of the shield text in pixels"},fill:{css:"shield-fill",type:"color",doc:"The color of the shield text"},placement:{css:"shield-placement",type:["point","line","vertex","interior"],"default-value":"point",doc:"How this shield should be placed. Point placement attempts to place it on top of points, line places along lines multiple times per feature, vertex places on the vertexes of polygons, and interior attempts to place inside of polygons."},"avoid-edges":{css:"shield-avoid-edges",doc:"Tell positioning algorithm to avoid labeling near intersection edges.",type:"boolean","default-value":!1},"allow-overlap":{css:"shield-allow-overlap",type:"boolean","default-value":!1,doc:"Control whether overlapping shields are shown or hidden.","default-meaning":"Do not allow shields to overlap with other map elements already placed."},"minimum-distance":{css:"shield-min-distance",type:"float","default-value":0,doc:"Minimum distance to the next shield symbol, not necessarily the same shield."},spacing:{css:"shield-spacing",type:"float","default-value":0,doc:"The spacing between repeated occurrences of the same shield on a line"},"minimum-padding":{css:"shield-min-padding","default-value":0,doc:"Determines the minimum amount of padding that a shield gets relative to other shields",type:"float"},"wrap-width":{css:"shield-wrap-width",type:"unsigned","default-value":0,doc:"Length of a chunk of text in characters before wrapping text"},"wrap-before":{css:"shield-wrap-before",type:"boolean","default-value":!1,doc:"Wrap text before wrap-width is reached. If false, wrapped lines will be a bit longer than wrap-width."},"wrap-character":{css:"shield-wrap-character",type:"string","default-value":" ",doc:"Use this character instead of a space to wrap long names."},"halo-fill":{css:"shield-halo-fill",type:"color","default-value":"#FFFFFF","default-meaning":"white",doc:"Specifies the color of the halo around the text."},"halo-radius":{css:"shield-halo-radius",doc:"Specify the radius of the halo in pixels","default-value":0,"default-meaning":"no halo",type:"float"},"character-spacing":{css:"shield-character-spacing",type:"unsigned","default-value":0,doc:"Horizontal spacing between characters (in pixels). Currently works for point placement only, not line placement."},"line-spacing":{css:"shield-line-spacing",doc:"Vertical spacing between lines of multiline labels (in pixels)",type:"unsigned"},dx:{css:"shield-text-dx",type:"float",doc:"Displace text within shield by fixed amount, in pixels, +/- along the X axis. A positive value will shift the text right","default-value":0},dy:{css:"shield-text-dy",type:"float",doc:"Displace text within shield by fixed amount, in pixels, +/- along the Y axis. A positive value will shift the text down","default-value":0},"shield-dx":{css:"shield-dx",type:"float",doc:"Displace shield by fixed amount, in pixels, +/- along the X axis. A positive value will shift the text right","default-value":0},"shield-dy":{css:"shield-dy",type:"float",doc:"Displace shield by fixed amount, in pixels, +/- along the Y axis. A positive value will shift the text down","default-value":0},opacity:{css:"shield-opacity",type:"float",doc:"(Default 1.0) - opacity of the image used for the shield","default-value":1},"text-opacity":{css:"shield-text-opacity",type:"float",doc:"(Default 1.0) - opacity of the text placed on top of the shield","default-value":1},"horizontal-alignment":{css:"shield-horizontal-alignment",type:["left","middle","right","auto"],doc:"The shield's horizontal alignment from its centerpoint","default-value":"auto"},"vertical-alignment":{css:"shield-vertical-alignment",type:["top","middle","bottom","auto"],doc:"The shield's vertical alignment from its centerpoint","default-value":"middle"},"text-transform":{css:"shield-text-transform",type:["none","uppercase","lowercase","capitalize"],doc:"Transform the case of the characters","default-value":"none"},"justify-alignment":{css:"shield-justify-alignment",type:["left","center","right","auto"],doc:"Define how text in a shield's label is justified","default-value":"auto"},clip:{css:"shield-clip",type:"boolean","default-value":!0,"default-meaning":"geometry will be clipped to map bounds before rendering",doc:"geometries are clipped to map bounds by default for best rendering performance. In some cases users may wish to disable this to avoid rendering artifacts."},"comp-op":{css:"shield-comp-op","default-value":"src-over","default-meaning":"add the current symbolizer on top of other symbolizer",doc:"Composite operation. This defines how this symbolizer should behave relative to symbolizers atop or below it.",type:["clear","src","dst","src-over","dst-over","src-in","dst-in","src-out","dst-out","src-atop","dst-atop","xor","plus","minus","multiply","screen","overlay","darken","lighten","color-dodge","color-burn","hard-light","soft-light","difference","exclusion","contrast","invert","invert-rgb","grain-merge","grain-extract","hue","saturation","color","value"]}},"line-pattern":{file:{css:"line-pattern-file",type:"uri","default-value":"none",required:!0,doc:"An image file to be repeated and warped along a line",expression:!0},clip:{css:"line-pattern-clip",type:"boolean","default-value":!0,"default-meaning":"geometry will be clipped to map bounds before rendering",doc:"geometries are clipped to map bounds by default for best rendering performance. In some cases users may wish to disable this to avoid rendering artifacts."},smooth:{css:"line-pattern-smooth",type:"float","default-value":0,"default-meaning":"no smoothing",range:"0-1",doc:"Smooths out geometry angles. 0 is no smoothing, 1 is fully smoothed. Values greater than 1 will produce wild, looping geometries."},"geometry-transform":{css:"line-pattern-geometry-transform",type:"functions","default-value":"none","default-meaning":"geometry will not be transformed",doc:"Allows transformation functions to be applied to the geometry.",functions:[["matrix",6],["translate",2],["scale",2],["rotate",3],["skewX",1],["skewY",1]]},"comp-op":{css:"line-pattern-comp-op","default-value":"src-over","default-meaning":"add the current symbolizer on top of other symbolizer",doc:"Composite operation. This defines how this symbolizer should behave relative to symbolizers atop or below it.",type:["clear","src","dst","src-over","dst-over","src-in","dst-in","src-out","dst-out","src-atop","dst-atop","xor","plus","minus","multiply","screen","overlay","darken","lighten","color-dodge","color-burn","hard-light","soft-light","difference","exclusion","contrast","invert","invert-rgb","grain-merge","grain-extract","hue","saturation","color","value"]}},"polygon-pattern":{file:{css:"polygon-pattern-file",type:"uri","default-value":"none",required:!0,doc:"Image to use as a repeated pattern fill within a polygon",expression:!0},alignment:{css:"polygon-pattern-alignment",type:["local","global"],"default-value":"local",doc:"Specify whether to align pattern fills to the layer or to the map."},gamma:{css:"polygon-pattern-gamma",type:"float","default-value":1,"default-meaning":"fully antialiased",range:"0-1",doc:"Level of antialiasing of polygon pattern edges"},opacity:{css:"polygon-pattern-opacity",type:"float",doc:"(Default 1.0) - Apply an opacity level to the image used for the pattern","default-value":1,"default-meaning":"The image is rendered without modifications"},clip:{css:"polygon-pattern-clip",type:"boolean","default-value":!0,"default-meaning":"geometry will be clipped to map bounds before rendering",doc:"geometries are clipped to map bounds by default for best rendering performance. In some cases users may wish to disable this to avoid rendering artifacts."},smooth:{css:"polygon-pattern-smooth",type:"float","default-value":0,"default-meaning":"no smoothing",range:"0-1",doc:"Smooths out geometry angles. 0 is no smoothing, 1 is fully smoothed. Values greater than 1 will produce wild, looping geometries."},"geometry-transform":{css:"polygon-pattern-geometry-transform",type:"functions","default-value":"none","default-meaning":"geometry will not be transformed",doc:"Allows transformation functions to be applied to the geometry.",functions:[["matrix",6],["translate",2],["scale",2],["rotate",3],["skewX",1],["skewY",1]]},"comp-op":{css:"polygon-pattern-comp-op","default-value":"src-over","default-meaning":"add the current symbolizer on top of other symbolizer",doc:"Composite operation. This defines how this symbolizer should behave relative to symbolizers atop or below it.",type:["clear","src","dst","src-over","dst-over","src-in","dst-in","src-out","dst-out","src-atop","dst-atop","xor","plus","minus","multiply","screen","overlay","darken","lighten","color-dodge","color-burn","hard-light","soft-light","difference","exclusion","contrast","invert","invert-rgb","grain-merge","grain-extract","hue","saturation","color","value"]}},raster:{opacity:{css:"raster-opacity","default-value":1,"default-meaning":"opaque",type:"float",doc:"The opacity of the raster symbolizer on top of other symbolizers."},"filter-factor":{css:"raster-filter-factor","default-value":-1,"default-meaning":"Allow the datasource to choose appropriate downscaling.",type:"float",doc:"This is used by the Raster or Gdal datasources to pre-downscale images using overviews. Higher numbers can sometimes cause much better scaled image output, at the cost of speed."},scaling:{css:"raster-scaling",type:["near","fast","bilinear","bilinear8","bicubic","spline16","spline36","hanning","hamming","hermite","kaiser","quadric","catrom","gaussian","bessel","mitchell","sinc","lanczos","blackman"],"default-value":"near",doc:"The scaling algorithm used to making different resolution versions of this raster layer. Bilinear is a good compromise between speed and accuracy, while lanczos gives the highest quality."},"mesh-size":{css:"raster-mesh-size","default-value":16,"default-meaning":"Reprojection mesh will be 1/16 of the resolution of the source image",type:"unsigned",doc:"A reduced resolution mesh is used for raster reprojection, and the total image size is divided by the mesh-size to determine the quality of that mesh. Values for mesh-size larger than the default will result in faster reprojection but might lead to distortion."},"comp-op":{css:"raster-comp-op","default-value":"src-over","default-meaning":"add the current symbolizer on top of other symbolizer",doc:"Composite operation. This defines how this symbolizer should behave relative to symbolizers atop or below it.",type:["clear","src","dst","src-over","dst-over","src-in","dst-in","src-out","dst-out","src-atop","dst-atop","xor","plus","minus","multiply","screen","overlay","darken","lighten","color-dodge","color-burn","hard-light","soft-light","difference","exclusion","contrast","invert","invert-rgb","grain-merge","grain-extract","hue","saturation","color","value"]}},point:{file:{css:"point-file",type:"uri",required:!1,"default-value":"none",doc:"Image file to represent a point"},"allow-overlap":{css:"point-allow-overlap",type:"boolean","default-value":!1,doc:"Control whether overlapping points are shown or hidden.","default-meaning":"Do not allow points to overlap with each other - overlapping markers will not be shown."},"ignore-placement":{css:"point-ignore-placement",type:"boolean","default-value":!1,"default-meaning":"do not store the bbox of this geometry in the collision detector cache",doc:"value to control whether the placement of the feature will prevent the placement of other features"},opacity:{css:"point-opacity",type:"float","default-value":1,"default-meaning":"Fully opaque",doc:"A value from 0 to 1 to control the opacity of the point"},placement:{css:"point-placement",type:["centroid","interior"],doc:"How this point should be placed. Centroid calculates the geometric center of a polygon, which can be outside of it, while interior always places inside of a polygon.","default-value":"centroid"},transform:{css:"point-transform",type:"functions",functions:[["matrix",6],["translate",2],["scale",2],["rotate",3],["skewX",1],["skewY",1]],"default-value":"","default-meaning":"No transformation",doc:"SVG transformation definition"},"comp-op":{css:"point-comp-op","default-value":"src-over","default-meaning":"add the current symbolizer on top of other symbolizer",doc:"Composite operation. This defines how this symbolizer should behave relative to symbolizers atop or below it.",type:["clear","src","dst","src-over","dst-over","src-in","dst-in","src-out","dst-out","src-atop","dst-atop","xor","plus","minus","multiply","screen","overlay","darken","lighten","color-dodge","color-burn","hard-light","soft-light","difference","exclusion","contrast","invert","invert-rgb","grain-merge","grain-extract","hue","saturation","color","value"]}},text:{name:{css:"text-name",type:"string",expression:!0,required:!0,"default-value":"",serialization:"content",doc:"Value to use for a text label. Data columns are specified using brackets like [column_name]"},"face-name":{css:"text-face-name",type:"string",validate:"font",doc:"Font name and style to render a label in",required:!0},size:{css:"text-size",type:"float","default-value":10,doc:"Text size in pixels"},"text-ratio":{css:"text-ratio",doc:"Define the amount of text (of the total) present on successive lines when wrapping occurs","default-value":0,type:"unsigned"},"wrap-width":{css:"text-wrap-width",doc:"Length of a chunk of text in characters before wrapping text","default-value":0,type:"unsigned"},"wrap-before":{css:"text-wrap-before",type:"boolean","default-value":!1,doc:"Wrap text before wrap-width is reached. If false, wrapped lines will be a bit longer than wrap-width."},"wrap-character":{css:"text-wrap-character",type:"string","default-value":" ",doc:"Use this character instead of a space to wrap long text."},spacing:{css:"text-spacing",type:"unsigned",doc:"Distance between repeated text labels on a line (aka. label-spacing)"},"character-spacing":{css:"text-character-spacing",type:"float","default-value":0,doc:"Horizontal spacing adjustment between characters in pixels"},"line-spacing":{css:"text-line-spacing","default-value":0,type:"unsigned",doc:"Vertical spacing adjustment between lines in pixels"},"label-position-tolerance":{css:"text-label-position-tolerance","default-value":0,type:"unsigned",doc:"Allows the label to be displaced from its ideal position by a number of pixels (only works with placement:line)"},"max-char-angle-delta":{css:"text-max-char-angle-delta",type:"float","default-value":"22.5",doc:"The maximum angle change, in degrees, allowed between adjacent characters in a label. This value internally is converted to radians to the default is 22.5*math.pi/180.0. The higher the value the fewer labels will be placed around around sharp corners."},fill:{css:"text-fill",doc:"Specifies the color for the text","default-value":"#000000",type:"color"},opacity:{css:"text-opacity",doc:"A number from 0 to 1 specifying the opacity for the text","default-value":1,"default-meaning":"Fully opaque",type:"float"},"halo-fill":{css:"text-halo-fill",type:"color","default-value":"#FFFFFF","default-meaning":"white",doc:"Specifies the color of the halo around the text."},"halo-radius":{css:"text-halo-radius",doc:"Specify the radius of the halo in pixels","default-value":0,"default-meaning":"no halo",type:"float"},dx:{css:"text-dx",type:"float",doc:"Displace text by fixed amount, in pixels, +/- along the X axis. A positive value will shift the text right","default-value":0},dy:{css:"text-dy",type:"float",doc:"Displace text by fixed amount, in pixels, +/- along the Y axis. A positive value will shift the text down","default-value":0},"vertical-alignment":{css:"text-vertical-alignment",type:["top","middle","bottom","auto"],doc:"Position of label relative to point position.","default-value":"auto","default-meaning":'Default affected by value of dy; "bottom" for dy>0, "top" for dy<0.'},"avoid-edges":{css:"text-avoid-edges",doc:"Tell positioning algorithm to avoid labeling near intersection edges.","default-value":!1,type:"boolean"},"minimum-distance":{css:"text-min-distance",doc:"Minimum permitted distance to the next text symbolizer.",type:"float"},"minimum-padding":{css:"text-min-padding",doc:"Determines the minimum amount of padding that a text symbolizer gets relative to other text",type:"float"},"minimum-path-length":{css:"text-min-path-length",type:"float","default-value":0,"default-meaning":"place labels on all paths",doc:"Place labels only on paths longer than this value."},"allow-overlap":{css:"text-allow-overlap",type:"boolean","default-value":!1,doc:"Control whether overlapping text is shown or hidden.","default-meaning":"Do not allow text to overlap with other text - overlapping markers will not be shown."},orientation:{css:"text-orientation",type:"float",expression:!0,doc:"Rotate the text."},placement:{css:"text-placement",type:["point","line","vertex","interior"],"default-value":"point",doc:"Control the style of placement of a point versus the geometry it is attached to."},"placement-type":{css:"text-placement-type",doc:'Re-position and/or re-size text to avoid overlaps. "simple" for basic algorithm (using text-placements string,) "dummy" to turn this feature off.',type:["dummy","simple"],"default-value":"dummy"},placements:{css:"text-placements",type:"string","default-value":"",doc:'If "placement-type" is set to "simple", use this "POSITIONS,[SIZES]" string. An example is `text-placements: "E,NE,SE,W,NW,SW";` '},"text-transform":{css:"text-transform",type:["none","uppercase","lowercase","capitalize"],doc:"Transform the case of the characters","default-value":"none"},"horizontal-alignment":{css:"text-horizontal-alignment",type:["left","middle","right","auto"],doc:"The text's horizontal alignment from its centerpoint","default-value":"auto"},"justify-alignment":{css:"text-align",type:["left","right","center","auto"],doc:"Define how text is justified","default-value":"auto","default-meaning":"Auto alignment means that text will be centered by default except when using the `placement-type` parameter - in that case either right or left justification will be used automatically depending on where the text could be fit given the `text-placements` directives"},clip:{css:"text-clip",type:"boolean","default-value":!0,"default-meaning":"geometry will be clipped to map bounds before rendering",doc:"geometries are clipped to map bounds by default for best rendering performance. In some cases users may wish to disable this to avoid rendering artifacts."},"comp-op":{css:"text-comp-op","default-value":"src-over","default-meaning":"add the current symbolizer on top of other symbolizer",doc:"Composite operation. This defines how this symbolizer should behave relative to symbolizers atop or below it.",type:["clear","src","dst","src-over","dst-over","src-in","dst-in","src-out","dst-out","src-atop","dst-atop","xor","plus","minus","multiply","screen","overlay","darken","lighten","color-dodge","color-burn","hard-light","soft-light","difference","exclusion","contrast","invert","invert-rgb","grain-merge","grain-extract","hue","saturation","color","value"]}},building:{fill:{css:"building-fill","default-value":"#FFFFFF",doc:"The color of the buildings walls.",type:"color"},"fill-opacity":{css:"building-fill-opacity",type:"float",doc:"The opacity of the building as a whole, including all walls.","default-value":1},height:{css:"building-height",doc:"The height of the building in pixels.",type:"float",expression:!0,"default-value":"0"}},torque:{"-torque-clear-color":{css:"-torque-clear-color",type:"color","default-value":"rgba(255, 255, 255, 0)","default-meaning":"full clear",doc:"color used to clear canvas on each frame"},"-torque-frame-count":{css:"-torque-frame-count","default-value":"128",type:"float","default-meaning":"the data is broken into 128 time frames",doc:"Number of animation steps/frames used in the animation. If the data contains a fewere number of total frames, the lesser value will be used."},"-torque-resolution":{css:"-torque-resolution","default-value":"2",type:"float","default-meaning":"",doc:"Spatial resolution in pixels. A resolution of 1 means no spatial aggregation of the data. Any other resolution of N results in spatial aggregation into cells of NxN pixels. The value N must be power of 2"},"-torque-animation-duration":{css:"-torque-animation-duration","default-value":"30",type:"float","default-meaning":"the animation lasts 30 seconds",doc:"Animation duration in seconds"},"-torque-aggregation-function":{css:"-torque-aggregation-function","default-value":"count(cartodb_id)",type:"string","default-meaning":"the value for each cell is the count of points in that cell",doc:"A function used to calculate a value from the aggregate data for each cell. See -torque-resolution"},"-torque-time-attribute":{css:"-torque-time-attribute","default-value":"time",type:"string","default-meaning":"the data column in your table that is of a time based type",doc:"The table column that contains the time information used create the animation"},"-torque-data-aggregation":{css:"-torque-data-aggregation","default-value":"linear",type:["linear","cumulative"],"default-meaning":"previous values are discarded",doc:"A linear animation will discard previous values while a cumulative animation will accumulate them until it restarts"}}},colors:{aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,134,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,250,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],grey:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,221],powderblue:[176,224,230],purple:[128,0,128],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[112,128,144],slategrey:[112,128,144],snow:[255,250,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,50],transparent:[0,0,0,0]},filter:{value:["true","false","null","point","linestring","polygon","collection"]}};t.exports={version:{latest:r,"2.1.1":r}}},{}],45:[function(e,t,n){typeof t!="undefined"&&(t.exports.find=function(e,t){for(var n=0,r;n<e.length;n++)if(r=t.call(e,e[n]))return r;return null})},{}],46:[function(e,t,n){(function(t){(function(n){var r=t._||e("underscore");n.Call=function(t,n,r){this.name=t,this.args=n,this.index=r},n.Call.prototype={is:"call",ev:function(e){var t=this.args.map(function(t){return t.ev(e)});for(var i=0;i<t.length;i++)if(t[i].is==="undefined")return{is:"undefined",value:"undefined"};if(this.name in n.functions){if(n.functions[this.name].length<=t.length){var s=n.functions[this.name].apply(n.functions,t);return s===null?(e.error({message:"incorrect arguments given to "+this.name+"()",index:this.index,type:"runtime",filename:this.filename}),{is:"undefined",value:"undefined"}):s}return e.error({message:"incorrect number of arguments for "+this.name+"(). "+n.functions[this.name].length+" expected.",index:this.index,type:"runtime",filename:this.filename}),{is:"undefined",value:"undefined"}}var o=n.Reference.mapnikFunctions[this.name];if(o===undefined){var u=r.pairs(n.Reference.mapnikFunctions),a=this.name,f=u.map(function(e){return[e[0],n.Reference.editDistance(a,e[0]),e[1]]}).sort(function(e,t){return e[1]-t[1]});return e.error({message:"unknown function "+this.name+"(), did you mean "+f[0][0]+"("+f[0][2]+")",index:this.index,type:"runtime",filename:this.filename}),{is:"undefined",value:"undefined"}}return o!==t.length&&(!Array.isArray(o)||!r.include(o,t.length))&&o!==-1?(e.error({message:"function "+this.name+"() takes "+o+" arguments and was given "+t.length,index:this.index,type:"runtime",filename:this.filename}),{is:"undefined",value:"undefined"}):(this.args=t,this)},toString:function(e,t){return this.args.length?this.name+"("+this.args.join(",")+")":this.name}}})(e("../tree"))}).call(this,typeof global!="undefined"?global:typeof self!="undefined"?self:typeof window!="undefined"?window:{})},{"../tree":45,underscore:163}],47:[function(e,t,n){(function(e){e.Color=function(t,n){Array
.isArray(t)?this.rgb=t.slice(0,3):t.length==6?this.rgb=t.match(/.{2}/g).map(function(e){return parseInt(e,16)}):this.rgb=t.split("").map(function(e){return parseInt(e+e,16)}),typeof n=="number"?this.alpha=n:t.length===4?this.alpha=t[3]:this.alpha=1},e.Color.prototype={is:"color",ev:function(){return this},toString:function(){return this.alpha<1?"rgba("+this.rgb.map(function(e){return Math.round(e)}).concat(this.alpha).join(", ")+")":"#"+this.rgb.map(function(e){return e=Math.round(e),e=(e>255?255:e<0?0:e).toString(16),e.length===1?"0"+e:e}).join("")},operate:function(t,n,r){var i=[];r instanceof e.Color||(r=r.toColor());for(var s=0;s<3;s++)i[s]=e.operate(n,this.rgb[s],r.rgb[s]);return new e.Color(i)},toHSL:function(){var e=this.rgb[0]/255,t=this.rgb[1]/255,n=this.rgb[2]/255,r=this.alpha,i=Math.max(e,t,n),s=Math.min(e,t,n),o,u,a=(i+s)/2,f=i-s;if(i===s)o=u=0;else{u=a>.5?f/(2-i-s):f/(i+s);switch(i){case e:o=(t-n)/f+(t<n?6:0);break;case t:o=(n-e)/f+2;break;case n:o=(e-t)/f+4}o/=6}return{h:o*360,s:u,l:a,a:r}}}})(e("../tree"))},{"../tree":45}],48:[function(e,t,n){(function(e){e.Comment=function(t,n){this.value=t,this.silent=!!n},e.Comment.prototype={toString:function(e){return"<!--"+this.value+"-->"},ev:function(){return this}}})(e("../tree"))},{"../tree":45}],49:[function(e,t,n){(function(t){(function(n){function s(e){function t(e){return e[1].toUpperCase()}return e.charAt(0).toUpperCase()+e.slice(1).replace(/\-./,t)+"Symbolizer"}function o(e){return e.sort(function(e,t){return e[1]-t[1]}).map(function(e){return e[0]})}var r=e("assert"),i=t._||e("underscore");n.Definition=function(t,i){this.elements=t.elements,r.ok(t.filters instanceof n.Filterset),this.rules=i,this.ruleIndex={};for(var s=0;s<this.rules.length;s++)"zoom"in this.rules[s]&&(this.rules[s]=this.rules[s].clone()),this.rules[s].zoom=t.zoom,this.ruleIndex[this.rules[s].updateID()]=!0;this.filters=t.filters,this.zoom=t.zoom,this.frame_offset=t.frame_offset,this.attachment=t.attachment||"__default__",this.specificity=t.specificity()},n.Definition.prototype.toString=function(){var e=this.filters.toString();for(var t=0;t<this.rules.length;t++)e+="\n "+this.rules[t];return e},n.Definition.prototype.clone=function(e){e&&r.ok(e instanceof n.Filterset);var t=Object.create(n.Definition.prototype);return t.rules=this.rules.slice(),t.ruleIndex=i.clone(this.ruleIndex),t.filters=e?e:this.filters.clone(),t.attachment=this.attachment,t},n.Definition.prototype.addRules=function(e){var t=0;for(var n=0;n<e.length;n++)this.ruleIndex[e[n].id]||(this.rules.push(e[n]),this.ruleIndex[e[n].id]=!0,t++);return t},n.Definition.prototype.appliesTo=function(e,t){for(var n=0,r=this.elements.length;n<r;n++){var i=this.elements[n];if(!(i.wildcard||i.type==="class"&&t[i.clean]||i.type==="id"&&e===i.clean))return!1}return!0},n.Definition.prototype.symbolizersToXML=function(e,t,r){var i=r.toXML(e).join("")+this.filters.toXML(e),u=[],a=[];for(var f in t){a=[];for(var l in t[f])a.push(t[f][l].index);var c=Math.min.apply(Math,a);u.push([f,c])}u=o(u);var h=0;for(var p=0;p<u.length;p++){var d=t[u[p]],v=u[p].split("/").pop();if(v==="*")continue;h++;var m=n.Reference.requiredProperties(v,d);if(m){var g=d[Object.keys(d).shift()];e.error({message:m,index:g.index,filename:g.filename})}var y=s(v),b=!0,w;i+=" <"+y+" ";for(var E in d){v==="map"&&e.error({message:"Map properties are not permitted in other rules",index:d[E].index,filename:d[E].filename});var S=n.Reference.selector(d[E].name);S&&S.serialization&&S.serialization==="content"?(b=!1,w=d[E].ev(e).toXML(e,!0)):S&&S.serialization&&S.serialization==="tag"?(b=!1,w=d[E].ev(e).toXML(e,!0)):i+=d[E].ev(e).toXML(e)+" "}b?i+="/>\n":typeof w!="undefined"&&(w.indexOf("<")!=-1?i+=">"+w+"</"+y+">\n":i+="><![CDATA["+w+"]]></"+y+">\n")}return!h||!i?"":" <Rule>\n"+i+" </Rule>\n"},n.Definition.prototype.collectSymbolizers=function(e,t){var n={},r;for(var i=t;i<this.rules.length;i++){r=this.rules[i];var s=r.instance+"/"+r.symbolizer;e.current&r.zoom&&(!(s in n)||!(r.name in n[s]))&&(e.current&=r.zoom,s in n||(n[s]={}),n[s][r.name]=r)}if(Object.keys(n).length)return e.rule&=e.available&=~e.current,n},n.Definition.prototype.toXML=function(e,t){var r=this.filters.toString();r in t||(t[r]=n.Zoom.all);var i=n.Zoom.all,s="",o,u,a={available:n.Zoom.all};for(var f=0;f<this.rules.length&&i;f++){a.rule=this.rules[f].zoom;if(!(t[r]&a.rule))continue;while(a.current=a.rule&i)if(u=this.collectSymbolizers(a,f)){if(!(t[r]&a.current))continue;s+=this.symbolizersToXML(e,u,(new n.Zoom).setZoom(t[r]&a.current)),t[r]&=~a.current}}return s},n.Definition.prototype.toJS=function(e){var t={},r=this.frame_offset,s="("+this.zoom+" & (1 << ctx.zoom))",o=[s],u=this.filters.toJS(e),a=this.zoom!==n.Zoom.all;return u&&o.push(u),r&&o.push('ctx["frame-offset"] === '+r),i.each(this.rules,function(r){var i={};if(!r instanceof n.Rule)throw new Error("Ruleset not supported");i.index=r.index,i.symbolizer=r.symbolizer,i.js="if("+o.join(" && ")+"){"+r.value.toJS(e)+"}",i.constant=r.value.ev(e).is!=="field",i.filtered=a||u!=="",t[r.name]=t[r.name]||[],t[r.name].push(i)}),t}})(e("../tree"))}).call(this,typeof global!="undefined"?global:typeof self!="undefined"?self:typeof window!="undefined"?window:{})},{"../tree":45,assert:35,underscore:163}],50:[function(e,t,n){(function(t){(function(n){var r=t._||e("underscore");n.Dimension=function(t,n,r){this.value=parseFloat(t),this.unit=n||null,this.index=r},n.Dimension.prototype={is:"float",physical_units:["m","cm","in","mm","pt","pc"],screen_units:["px","%"],all_units:["m","cm","in","mm","pt","pc","px","%"],densities:{m:.0254,mm:25.4,cm:2.54,pt:72,pc:6},ev:function(e){if(this.unit&&!r.contains(this.all_units,this.unit))return e.error({message:"Invalid unit: '"+this.unit+"'",index:this.index}),{is:"undefined",value:"undefined"};if(this.unit&&r.contains(this.physical_units,this.unit)){if(!e.ppi)return e.error({message:"ppi is not set, so metric units can't be used",index:this.index}),{is:"undefined",value:"undefined"};this.value=this.value/this.densities[this.unit]*e.ppi,this.unit="px"}return this},round:function(){return this.value=Math.round(this.value),this},toColor:function(){return new n.Color([this.value,this.value,this.value])},round:function(){return this.value=Math.round(this.value),this},toString:function(){return this.value.toString()},operate:function(e,t,r){return this.unit==="%"&&r.unit!=="%"?(e.error({message:"If two operands differ, the first must not be %",index:this.index}),{is:"undefined",value:"undefined"}):this.unit!=="%"&&r.unit==="%"?t==="*"||t==="/"||t==="%"?(e.error({message:"Percent values can only be added or subtracted from other values",index:this.index}),{is:"undefined",value:"undefined"}):new n.Dimension(n.operate(t,this.value,this.value*r.value*.01),this.unit):new n.Dimension(n.operate(t,this.value,r.value),this.unit||r.unit)}}})(e("../tree"))}).call(this,typeof global!="undefined"?global:typeof self!="undefined"?self:typeof window!="undefined"?window:{})},{"../tree":45,underscore:163}],51:[function(e,t,n){(function(e){e.Element=function(t){this.value=t.trim(),this.value[0]==="#"&&(this.type="id",this.clean=this.value.replace(/^#/,"")),this.value[0]==="."&&(this.type="class",this.clean=this.value.replace(/^\./,"")),this.value.indexOf("*")!==-1&&(this.type="wildcard")},e.Element.prototype.specificity=function(){return[this.type==="id"?1:0,this.type==="class"?1:0]},e.Element.prototype.toString=function(){return this.value}})(e("../tree"))},{"../tree":45}],52:[function(e,t,n){(function(e){e.Expression=function(t){this.value=t},e.Expression.prototype={is:"expression",ev:function(t){return this.value.length>1?new e.Expression(this.value.map(function(e){return e.ev(t)})):this.value[0].ev(t)},toString:function(e){return this.value.map(function(t){return t.toString(e)}).join(" ")}}})(e("../tree"))},{"../tree":45}],53:[function(e,t,n){(function(e){e.Field=function(t){this.value=t||""},e.Field.prototype={is:"field",toString:function(){return"["+this.value+"]"},ev:function(){return this}}})(e("../tree"))},{"../tree":45}],54:[function(e,t,n){(function(e){e.Filter=function(t,n,r,i,s){this.key=t,this.op=n,this.val=r,this.index=i,this.filename=s,this.id=this.key+this.op+this.val};var t={"<":[" &lt; ","numeric"],">":[" &gt; ","numeric"],"=":[" = ","both"],"!=":[" != ","both"],"<=":[" &lt;= ","numeric"],">=":[" &gt;= ","numeric"],"=~":[".match(","string",")"]};e.Filter.prototype.ev=function(e){return this.key=this.key.ev(e),this.val=this.val.ev(e),this},e.Filter.prototype.toXML=function(n){e.Reference.data.filter&&(this.key.is==="keyword"&&-1===e.Reference.data.filter.value.indexOf(this.key.toString())&&n.error({message:this.key.toString()+" is not a valid keyword in a filter expression",index:this.index,filename:this.filename}),this.val.is==="keyword"&&-1===e.Reference.data.filter.value.indexOf(this.val.toString())&&n.error({message:this.val.toString()+" is not a valid keyword in a filter expression",index:this.index,filename:this.filename}));var r=this.key.toString(!1),i=this.val.toString(this.val.is=="string");return(t[this.op][1]=="numeric"&&isNaN(i)&&this.val.is!=="field"||t[this.op][1]=="string"&&i[0]!="'")&&n.error({message:'Cannot use operator "'+this.op+'" with value '+this.val,index:this.index,filename:this.filename}),r+t[this.op][0]+i+(t[this.op][2]||"")},e.Filter.prototype.toString=function(){return"["+this.id+"]"}})(e("../tree"))},{"../tree":45}],55:[function(e,t,n){(function(t){var n=e("../tree"),r=t._||e("underscore");n.Filterset=function(){this.filters={}},n.Filterset.prototype.toXML=function(e){var t=[];for(var n in this.filters)t.push("("+this.filters[n].toXML(e).trim()+")");return t.length?" <Filter>"+t.join(" and ")+"</Filter>\n":""},n.Filterset.prototype.toString=function(){var e=[];for(var t in this.filters)e.push(this.filters[t].id);return e.sort().join(" ")},n.Filterset.prototype.ev=function(e){for(var t in this.filters)this.filters[t].ev(e);return this},n.Filterset.prototype.clone=function(){var e=new n.Filterset;for(var t in this.filters)e.filters[t]=this.filters[t];return e},n.Filterset.prototype.cloneWith=function(e){var t=[];for(var r in e.filters){var i=this.addable(e.filters[r]);if(i===!1)return!1;i===!0&&t.push(e.filters[r])}if(!t.length)return null;var s=new n.Filterset;for(r in this.filters)s.filters[r]=this.filters[r];while(r=t.shift())s.add(r);return s},n.Filterset.prototype.toJS=function(e){var t={"=":"==="};return r.map(this.filters,function(e){var n=e.op;n in t&&(n=t[n]);var r=e.val;e._val!==undefined&&(r=e._val.toString(!0));var i="data";return n==="=~"?"("+i+"['"+e.key.value+"'] + '').match("+(r.is==="string"?"'"+r.toString().replace(/'/g,"\\'")+"'":r)+")":i+"['"+e.key.value+"'] "+n+" "+(r.is==="string"?"'"+r.toString().replace(/'/g,"\\'")+"'":r)}).join(" && ")},n.Filterset.prototype.addable=function(e){var t=e.key.toString(),n=e.val.toString();n.match(/^[0-9]+(\.[0-9]*)?$/)&&(n=parseFloat(n));switch(e.op){case"=":if(this.filters[t+"="]!==undefined)return this.filters[t+"="].val.toString()!=n?!1:null;if(this.filters[t+"!="+n]!==undefined)return!1;if(this.filters[t+">"]!==undefined&&this.filters[t+">"].val>=n)return!1;if(this.filters[t+"<"]!==undefined&&this.filters[t+"<"].val<=n)return!1;if(this.filters[t+">="]!==undefined&&this.filters[t+">="].val>n)return!1;if(this.filters[t+"<="]!==undefined&&this.filters[t+"<="].val<n)return!1;return!0;case"=~":return!0;case"!=":if(this.filters[t+"="]!==undefined)return this.filters[t+"="].val==n?!1:null;if(this.filters[t+"!="+n]!==undefined)return null;if(this.filters[t+">"]!==undefined&&this.filters[t+">"].val>=n)return null;if(this.filters[t+"<"]!==undefined&&this.filters[t+"<"].val<=n)return null;if(this.filters[t+">="]!==undefined&&this.filters[t+">="].val>n)return null;if(this.filters[t+"<="]!==undefined&&this.filters[t+"<="].val<n)return null;return!0;case">":if(t+"="in this.filters)return this.filters[t+"="].val<=n?!1:null;if(this.filters[t+"<"]!==undefined&&this.filters[t+"<"].val<=n)return!1;if(this.filters[t+"<="]!==undefined&&this.filters[t+"<="].val<=n)return!1;if(this.filters[t+">"]!==undefined&&this.filters[t+">"].val>=n)return null;if(this.filters[t+">="]!==undefined&&this.filters[t+">="].val>n)return null;return!0;case">=":if(this.filters[t+"="]!==undefined)return this.filters[t+"="].val<n?!1:null;if(this.filters[t+"<"]!==undefined&&this.filters[t+"<"].val<=n)return!1;if(this.filters[t+"<="]!==undefined&&this.filters[t+"<="].val<n)return!1;if(this.filters[t+">"]!==undefined&&this.filters[t+">"].val>=n)return null;if(this.filters[t+">="]!==undefined&&this.filters[t+">="].val>=n)return null;return!0;case"<":if(this.filters[t+"="]!==undefined)return this.filters[t+"="].val>=n?!1:null;if(this.filters[t+">"]!==undefined&&this.filters[t+">"].val>=n)return!1;if(this.filters[t+">="]!==undefined&&this.filters[t+">="].val>=n)return!1;if(this.filters[t+"<"]!==undefined&&this.filters[t+"<"].val<=n)return null;if(this.filters[t+"<="]!==undefined&&this.filters[t+"<="].val<n)return null;return!0;case"<=":if(this.filters[t+"="]!==undefined)return this.filters[t+"="].val>n?!1:null;if(this.filters[t+">"]!==undefined&&this.filters[t+">"].val>=n)return!1;if(this.filters[t+">="]!==undefined&&this.filters[t+">="].val>n)return!1;if(this.filters[t+"<"]!==undefined&&this.filters[t+"<"].val<=n)return null;if(this.filters[t+"<="]!==undefined&&this.filters[t+"<="].val<=n)return null;return!0}},n.Filterset.prototype.conflict=function(e){var t=e.key.toString(),n=e.val.toString();return isNaN(parseFloat(n))||(n=parseFloat(n)),e.op==="="&&this.filters[t+"="]!==undefined&&n!=this.filters[t+"="].val.toString()||e.op==="!="&&this.filters[t+"="]!==undefined&&n==this.filters[t+"="].val.toString()||e.op==="="&&this.filters[t+"!="]!==undefined&&n==this.filters[t+"!="].val.toString()?e.toString()+" added to "+this.toString()+" produces an invalid filter":!1},n.Filterset.prototype.add=function(e,t){var n=e.key.toString(),r,i=e.op,s=this.conflict(e),o;if(s)return s;if(i==="="){for(var u in this.filters)this.filters[u].key==n&&delete this.filters[u];this.filters[n+"="]=e}else if(i==="!=")this.filters[n+"!="+e.val]=e;else if(i==="=~")this.filters[n+"=~"+e.val]=e;else if(i===">"){for(var a in this.filters)this.filters[a].key==n&&this.filters[a].val<=e.val&&delete this.filters[a];this.filters[n+">"]=e}else if(i===">="){for(var f in this.filters)o=+this.filters[f].val.toString(),this.filters[f].key==n&&o<e.val&&delete this.filters[f];this.filters[n+"!="+e.val]!==undefined?(delete this.filters[n+"!="+e.val],e.op=">",this.filters[n+">"]=e):this.filters[n+">="]=e}else if(i==="<"){for(var l in this.filters)o=+this.filters[l].val.toString(),this.filters[l].key==n&&o>=e.val&&delete this.filters[l];this.filters[n+"<"]=e}else if(i==="<="){for(var c in this.filters)o=+this.filters[c].val.toString(),this.filters[c].key==n&&o>e.val&&delete this.filters[c];this.filters[n+"!="+e.val]!==undefined?(delete this.filters[n+"!="+e.val],e.op="<",this.filters[n+"<"]=e):this.filters[n+"<="]=e}}}).call(this,typeof global!="undefined"?global:typeof self!="undefined"?self:typeof window!="undefined"?window:{})},{"../tree":45,underscore:163}],56:[function(e,t,n){(function(e){e._getFontSet=function(t,n){var r=n.join("");if(t._fontMap&&t._fontMap[r])return t._fontMap[r];var i=new e.FontSet(t,n);return t.effects.push(i),t._fontMap||(t._fontMap={}),t._fontMap[r]=i,i},e.FontSet=function(t,n){this.fonts=n,this.name="fontset-"+t.effects.length},e.FontSet.prototype.toXML=function(e){return'<FontSet name="'+this.name+'">\n'+this.fonts.map(function(e){return' <Font face-name="'+e+'"/>'}).join("\n")+"\n</FontSet>"}})(e("../tree"))},{"../tree":45}],57:[function(e,t,n){var r=e("../tree");r.FrameOffset=function(e,t,n){t=parseInt(t,10);if(t>r.FrameOffset.max||t<=0)throw{message:"Only frame-offset levels between 1 and "+r.FrameOffset.max+" supported.",index:n};if(e!=="=")throw{message:"only = operator is supported for frame-offset",index:n};return t},r.FrameOffset.max=32,r.FrameOffset.none=0},{"../tree":45}],58:[function(e,t,n){(function(e){e.ImageFilter=function(t,n){this.filter=t,this.args=n||null},e.ImageFilter.prototype={is:"imagefilter",ev:function(){return this},toString:function(){return this.args?this.filter+"("+this.args.join(",")+")":this.filter}}})(e("../tree"))},{"../tree":45}],59:[function(e,t,n){(function(e){e.Invalid=function(t,n,r){this.chunk=t,this.index=n,this.type="syntax",this.message=r||"Invalid code: "+this.chunk},e.Invalid.prototype.is="invalid",e.Invalid.prototype.ev=function(e){return e.error({chunk:this.chunk,index:this.index,type:"syntax",message:this.message||"Invalid code: "+this.chunk}),{is:"undefined"}}})(e("../tree"))},{"../tree":45}],60:[function(e,t,n){(function(e){e.Keyword=function(t){this.value=t;var n={transparent:"color","true":"boolean","false":"boolean"};this.is=n[t]?n[t]:"keyword"},e.Keyword.prototype={ev:function(){return this},toString:function(){return this.value}}})(e("../tree"))},{"../tree":45}],61:[function(e,t,n){(function(e){e.LayerXML=function(t,n){var r=[];for(var i in t.Datasource)r.push('<Parameter name="'+i+'"><![CDATA['+t.Datasource[i]+"]]></Parameter>");var s="";for(var o in t.properties)o==="minzoom"?s+=' maxzoom="'+e.Zoom.ranges[t.properties[o]]+'"\n':o==="maxzoom"?s+=' minzoom="'+e.Zoom.ranges[t.properties[o]+1]+'"\n':s+=" "+o+'="'+t.properties[o]+'"\n';return'<Layer name="'+t.name+'"\n'+s+(typeof t.status=="undefined"?"":' status="'+t.status+'"\n')+(typeof t.srs=="undefined"?"":' srs="'+t.srs+'"')+">\n "+n.reverse().map(function(e){return"<StyleName>"+e+"</StyleName>"}).join("\n ")+(r.length?"\n <Datasource>\n "+r.join("\n ")+"\n </Datasource>\n":"")+" </Layer>\n"}})(e("../tree"))},{"../tree":45}],62:[function(e,t,n){(function(e){e.Literal=function(t){this.value=t||"",this.is="field"},e.Literal.prototype={toString:function(){return this.value},ev:function(){return this}}})(e("../tree"))},{"../tree":45}],63:[function(e,t,n){(function(e){e.Operation=function(t,n,r){this.op=t.trim(),this.operands=n,this.index=r},e.Operation.prototype.is="operation",e.Operation.prototype.ev=function(t){var n=this.operands[0].ev(t),r=this.operands[1].ev(t),i;return n.is==="undefined"||r.is==="undefined"?{is:"undefined",value:"undefined"}:(n instanceof e.Dimension&&r instanceof e.Color&&(this.op==="*"||this.op==="+"?(i=r,r=n,n=i):t.error({name:"OperationError",message:"Can't substract or divide a color from a number",index:this.index})),n instanceof e.Quoted&&r instanceof e.Quoted&&this.op!=="+"?(t.error({message:"Can't subtract, divide, or multiply strings.",index:this.index,type:"runtime",filename:this.filename}),{is:"undefined",value:"undefined"}):n instanceof e.Field||r instanceof e.Field||n instanceof e.Literal||r instanceof e.Literal?n.is==="color"||r.is==="color"?(t.error({message:"Can't subtract, divide, or multiply colors in expressions.",index:this.index,type:"runtime",filename:this.filename}),{is:"undefined",value:"undefined"}):new e.Literal(n.ev(t).toString(!0)+this.op+r.ev(t).toString(!0)):n.operate===undefined?(t.error({message:"Cannot do math with type "+n.is+".",index:this.index,type:"runtime",filename:this.filename}),{is:"undefined",value:"undefined"}):n.operate(t,this.op,r))},e.operate=function(e,t,n){switch(e){case"+":return t+n;case"-":return t-n;case"*":return t*n;case"%":return t%n;case"/":return t/n}}})(e("../tree"))},{"../tree":45}],64:[function(e,t,n){(function(e){e.Quoted=function(t){this.value=t||""},e.Quoted.prototype={is:"string",toString:function(e){var t=this.value.replace(/&/g,"&amp;"),n=t.replace(/\'/g,"\\'").replace(/\"/g,"&quot;").replace(/</g,"&lt;").replace(/\>/g,"&gt;");return e===!0?"'"+n+"'":t},ev:function(){return this},operate:function(t,n,r){return new e.Quoted(e.operate(n,this.toString(),r.toString(this.contains_field)))}}})(e("../tree"))},{"../tree":45}],65:[function(e,t,n){(function(t){(function(n){function s(e){var t={};for(var n in e.symbolizers)for(var r in e.symbolizers[n])e.symbolizers[n][r].hasOwnProperty("css")&&(t[e.symbolizers[n][r].css]=[e.symbolizers[n][r],n,r]);return t}function o(e){var t={};for(var n in e.symbolizers)for(var r in e.symbolizers[n])if(e.symbolizers[n][r].type==="functions")for(var i=0;i<e.symbolizers[n][r].functions.length;i++){var s=e.symbolizers[n][r].functions[i];t[s[0]]=s[1]}return t}function u(e){var t={};for(var n in e.symbolizers){t[n]=[];for(var r in e.symbolizers[n])e.symbolizers[n][r].required&&t[n].push(e.symbolizers[n][r].css)}return t}function a(e,t){if(e.value[0].is==="string")return!0;for(var n in e.value)for(var s in e.value[n].value){if(e.value[n].value[s].is!=="call")return!1;var o=r.find(i.selector(t).functions,function(t){return t[0]==e.value[n].value[s].name});if(!o||o[1]!=-1)if(!o||o[1]!==e.value[n].value[s].args.length)return!1}return!0}function f(e,t){return typeof i.selector(t).type=="object"?i.selector(t).type.indexOf(e.value[0].value)!==-1:i.selector(t).type==="string"}var r=t._||e("underscore"),i={};i.setData=function(e){i.data=e,i.selector_cache=s(e),i.mapnikFunctions=o(e),i.mapnikFunctions.matrix=[6],i.mapnikFunctions.translate=[1,2],i.mapnikFunctions.scale=[1,2],i.mapnikFunctions.rotate=[1,3],i.mapnikFunctions.skewX=[1],i.mapnikFunctions.skewY=[1],i.required_cache=u(e)},i.setVersion=function(t){var n=e("mapnik-reference");return n.version.hasOwnProperty(t)?(i.setData(n.version[t]),!0):!1},i.selectorData=function(e,t){if(i.selector_cache[e])return i.selector_cache[e][t]},i.validSelector=function(e){return!!i.selector_cache[e]},i.selectorName=function(e){return i.selectorData(e,2)},i.selector=function(e){return i.selectorData(e,0)},i.symbolizer=function(e){return i.selectorData(e,1)},i.requiredProperties=function(e,t){var n=i.required_cache[e];for(var r in n)if(!(n[r]in t))return"Property "+n[r]+" required for defining "+e+" styles."},i._validateValue={font:function(e,t){return e.validation_data&&e.validation_data.fonts?e.validation_data.fonts.indexOf(t)!=-1:!0}},i.isFont=function(e){return i.selector(e).validate=="font"},i.editDistance=function(e,t){if(e.length===0)return t.length;if(t.length===0)return e.length;var n=[];for(var r=0;r<=t.length;r++)n[r]=[r];for(var i=0;i<=e.length;i++)n[0][i]=i;for(r=1;r<=t.length;r++)for(i=1;i<=e.length;i++)t.charAt(r-1)==e.charAt(i-1)?n[r][i]=n[r-1][i-1]:n[r][i]=Math.min(n[r-1][i-1]+1,Math.min(n[r][i-1]+1,n[r-1][i]+1));return n[t.length][e.length]},i.validValue=function(e,t,n){var r,s;if(!i.selector(t))return!1;if(n.value[0].is=="keyword")return f(n,t);if(n.value[0].is=="undefined")return!0;if(i.selector(t).type=="numbers"){for(r in n.value)if(n.value[r].is!=="float")return!1;return!0}if(i.selector(t).type=="tags"){if(!n.value)return!1;if(!n.value[0].value)return n.value[0].is==="tag";for(r=0;r<n.value[0].value.length;r++)if(n.value[0].value[r].is!=="tag")return!1;return!0}if(i.selector(t).type=="functions")return a(n,t);if(i.selector(t).type==="unsigned")return n.value[0].is==="float"?(n.value[0].round(),!0):!1;if(i.selector(t).expression)return!0;if(i.selector(t).validate){var o=!1;for(r=0;r<n.value.length;r++)if(i.selector(t).type==n.value[r].is&&i._validateValue[i.selector(t).validate](e,n.value[r].value))return!0;return o}return i.selector(t).type==n.value[0].is},n.Reference=i})(e("../tree"))}).call(this,typeof global!="undefined"?global:typeof self!="undefined"?self:typeof window!="undefined"?window:{})},{"../tree":45,"mapnik-reference":86,underscore:163}],66:[function(e,t,n){(function(e){function t(t){return Object.keys(e.Reference.selector_cache).map(function(n){return[n,e.Reference.editDistance(t,n)]}).sort(function(e,t){return e[1]-t[1]})}e.Rule=function(n,r,i,s){var o=n.split("/");this.name=o.pop(),this.instance=o.length?o[0]:"__default__",this.value=r instanceof e.Value?r:new e.Value([r]),this.index=i,this.symbolizer=e.Reference.symbolizer(this.name),this.filename=s,this.variable=n.charAt(0)==="@"},e.Rule.prototype.is="rule",e.Rule.prototype.clone=function(){var t=Object.create(e.Rule.prototype);return t.name=this.name,t.value=this.value,t.index=this.index,t.instance=this.instance,t.symbolizer=this.symbolizer,t.filename=this.filename,t.variable=this.variable,t},e.Rule.prototype.updateID=function(){return this.id=this.zoom+"#"+this.instance+"#"+this.name},e.Rule.prototype.toString=function(){return"["+e.Zoom.toString(this.zoom)+"] "+this.name+": "+this.value},e.Rule.prototype.toXML=function(n,r,i,s){if(!e.Reference.validSelector(this.name)){var o=t(this.name),u="";return o[0][1]<3&&(u=". Did you mean "+o[0][0]+"?"),n.error({message:"Unrecognized rule: "+this.name+u,index:this.index,type:"syntax",filename:this.filename})}if(this.value instanceof e.Value&&!e.Reference.validValue(n,this.name,this.value)){if(!e.Reference.selector(this.name))return n.error({message:"Unrecognized property: "+this.name,index:this.index,type:"syntax",filename:this.filename});var a;return e.Reference.selector(this.name).validate?a=e.Reference.selector(this.name).validate:typeof e.Reference.selector(this.name).type=="object"?a="keyword (options: "+e.Reference.selector(this.name).type.join(", ")+")":a=e.Reference.selector(this.name).type,n.error({message:"Invalid value for "+this.name+", the type "+a+" is expected. "+this.value+" (of type "+this.value.value[0].is+") "+" was given.",index:this.index,type:"syntax",filename:this.filename})}if(this.variable)return"";if(e.Reference.isFont(this.name)&&this.value.value.length>1){var f=e._getFontSet(n,this.value.value);return'fontset-name="'+f.name+'"'}return r?this.value.toString(n,this.name,i):e.Reference.selectorName(this.name)+'="'+this.value.toString(n,this.name)+'"'},e.Rule.prototype.ev=function(t){return new e.Rule(this.name,this.value.ev(t),this.index,this.filename)}})(e("../tree"))},{"../tree":45}],67:[function(e,t,n){(function(e){e.Ruleset=function(t,n){this.selectors=t,this.rules=n,this._lookups={}},e.Ruleset.prototype={is:"ruleset",ev:function(t){var n,r=new e.Ruleset(this.selectors,this.rules.slice(0));r.root=this.root,t.frames.unshift(r);for(n=0,rule;n<r.rules.length;n++)rule=r.rules[n],r.rules[n]=rule.ev?rule.ev(t):rule;return t.frames.shift(),r},match:function(e){return!e||e.length===0},variables:function(){return this._variables?this._variables:this._variables=this.rules.reduce(function(t,n){return n instanceof e.Rule&&n.variable===!0&&(t[n.name]=n),t},{})},variable:function(e){return this.variables()[e]},rulesets:function(){return this._rulesets?this._rulesets:this._rulesets=this.rules.filter(function(t){return t instanceof e.Ruleset})},find:function(t,n){n=n||this;var r=[],i,s,o=t.toString();return o in this._lookups?this._lookups[o]:(this.rulesets().forEach(function(i){if(i!==n)for(var o=0;o<i.selectors.length;o++){s=t.match(i.selectors[o]);if(s){t.elements.length>1?Array.prototype.push.apply(r,i.find(new e.Selector(null,null,null,t.elements.slice(1)),n)):r.push(i);break}}}),this._lookups[o]=r)},evZooms:function(t){for(var n=0;n<this.selectors.length;n++){var r=e.Zoom.all;for(var i=0;i<this.selectors[n].zoom.length;i++)r&=this.selectors[n].zoom[i].ev(t).zoom;this.selectors[n].zoom=r}},flatten:function(t,n,r){var i=[],s,o;this.selectors.length===0&&(r.frames=r.frames.concat(this.rules)),this.evZooms(r);for(s=0;s<this.selectors.length;s++){var u=this.selectors[s];if(!u.filters)continue;if(n.length)for(o=0;o<n.length;o++){var a=n[o],f=a.filters.cloneWith(u.filters);if(f===null){if(a.zoom===(a.zoom&u.zoom)&&a.frame_offset===u.frame_offset&&a.attachment===u.attachment&&a.elements.join()===u.elements.join()){i.push(a);continue}f=a.filters}else if(!f)continue;var l=Object.create(e.Selector.prototype);l.filters=f,l.zoom=a.zoom&u.zoom,l.frame_offset=u.frame_offset,l.elements=a.elements.concat(u.elements),a.attachment&&u.attachment?l.attachment=a.attachment+"/"+u.attachment:l.attachment=u.attachment||a.attachment,l.conditions=a.conditions+u.conditions,l.index=u.index,i.push(l)}else i.push(u)}var c=[];for(s=0;s<this.rules.length;s++){var h=this.rules[s];h instanceof e.Ruleset?h.flatten(t,i,r):h instanceof e.Rule?c.push(h):h instanceof e.Invalid&&r.error(h)}var p=c.length?c[0].index:!1;for(s=0;s<i.length;s++)p!==!1&&(i[s].index=p),t.push(new e.Definition(i[s],c.slice()));return t}}})(e("../tree"))},{"../tree":45}],68:[function(e,t,n){(function(e){e.Selector=function(n,r,i,s,o,u,a){this.elements=s||[],this.attachment=o,this.filters=n||{},this.frame_offset=i,this.zoom=typeof r!="undefined"?r:e.Zoom.all,this.conditions=u,this.index=a},e.Selector.prototype.specificity=function(){return this.elements.reduce(function(e,t){var n=t.specificity();return e[0]+=n[0],e[1]+=n[1],e},[0,0,this.conditions,this.index])}})(e("../tree"))},{"../tree":45}],69:[function(e,t,n){(function(t){(function(n){var r=t._||e("underscore");n.StyleXML=function(e,t,n,i){var s={},o=[],u=[],a=[],f=[],l=[];for(var c=0;c<n.length;c++)for(var h=0;h<n[c].rules.length;h++)n[c].rules[h].name==="image-filters"&&o.push(n[c].rules[h]),n[c].rules[h].name==="image-filters-inflate"&&u.push(n[c].rules[h]),n[c].rules[h].name==="direct-image-filters"&&a.push(n[c].rules[h]),n[c].rules[h].name==="comp-op"&&f.push(n[c].rules[h]),n[c].rules[h].name==="opacity"&&l.push(n[c].rules[h]);var p=n.map(function(e){return e.toXML(i,s)}),d="";o.length&&(d+=' image-filters="'+r.chain(o).uniq(function(e){return e.id}).map(function(e){return e.ev(i).toXML(i,!0,",","image-filter")}).value().join(",")+'"'),u.length&&(d+=' image-filters-inflate="'+u[0].value.ev(i).toString()+'"'),a.length&&(d+=' direct-image-filters="'+r.chain(a).uniq(function(e){return e.id}).map(function(e){return e.ev(i).toXML(i,!0,",","direct-image-filter")}).value().join(",")+'"'),f.length&&f[0].value.ev(i).value!="src-over"&&(d+=' comp-op="'+f[0].value.ev(i).toString()+'"'),l.length&&l[0].value.ev(i).value!=1&&(d+=' opacity="'+l[0].value.ev(i).toString()+'"');var v=p.join("");return!d&&!v?"":'<Style name="'+e+'" filter-mode="first"'+d+">\n"+v+"</Style>"}})(e("../tree"))}).call(this,typeof global!="undefined"?global:typeof self!="undefined"?self:typeof window!="undefined"?window:{})},{"../tree":45,underscore:163}],70:[function(e,t,n){(function(e){e.URL=function(t,n){this.value=t,this.paths=n},e.URL.prototype={is:"uri",toString:function(){return this.value.toString()},ev:function(t){return new e.URL(this.value.ev(t),this.paths)}}})(e("../tree"))},{"../tree":45}],71:[function(e,t,n){(function(e){e.Value=function(t){this.value=t},e.Value.prototype={is:"value",ev:function(t){return this.value.length===1?this.value[0].ev(t):new e.Value(this.value.map(function(e){return e.ev(t)}))},toString:function(e,t,n,r){return this.value.map(function(t){return t.toString(e,r)}).join(n||", ")},clone:function(){var t=Object.create(e.Value.prototype);return Array.isArray(t)?t.value=this.value.slice():t.value=this.value,t.is=this.is,t},toJS:function(e){var t=this.ev(e),n=t.toString();return t.is==="color"||t.is==="uri"||t.is==="string"||t.is==="keyword"?n="'"+n+"'":Array.isArray(this.value)&&this.value.length>1?n="["+this.value.join(",")+"]":t.is==="field"?n=n.replace(/\[([^\]]*)\]/g,function(e){return e.replace(/\[(.*)\]/g,"data['$1']")}):t.is==="call"&&(n=JSON.stringify({name:t.name,args:t.args})),"_value = "+n+";"}}})(e("../tree"))},{"../tree":45}],72:[function(e,t,n){(function(e){e.Variable=function(t,n,r){this.name=t,this.index=n,this.filename=r},e.Variable.prototype={is:"variable",toString:function(){return this.name},ev:function(e){var t,n,r=this.name;if(this._css)return this._css;var i=e.frames.filter(function(e){return e.name==this.name}.bind(this));return i.length?i[0].value.ev(e):(e.error({message:"variable "+this.name+" is undefined",index:this.index,type:"runtime",filename:this.filename}),{is:"undefined",value:"undefined"})}}})(e("../tree"))},{"../tree":45}],73:[function(e,t,n){var r=e("../tree");r.Zoom=function(e,t,n){this.op=e,this.value=t,this.index=n},r.Zoom.prototype.setZoom=function(e){return this.zoom=e,this},r.Zoom.prototype.ev=function(e){var t=0,n=Infinity,i=parseInt(this.value.ev(e).toString(),10),s=0;(i>r.Zoom.maxZoom||i<0)&&e.error({message:"Only zoom levels between 0 and "+r.Zoom.maxZoom+" supported.",index:this.index});switch(this.op){case"=":return this.zoom=1<<i,this;case">":t=i+1;break;case">=":t=i;break;case"<":n=i-1;break;case"<=":n=i}for(var o=0;o<=r.Zoom.maxZoom;o++)o>=t&&o<=n&&(s|=1<<o);return this.zoom=s,this},r.Zoom.prototype.toString=function(){return this.zoom},r.Zoom.all=8388607,r.Zoom.maxZoom=22,r.Zoom.ranges={0:1e9,1:5e8,2:2e8,3:1e8,4:5e7,5:25e6,6:125e5,7:65e5,8:3e6,9:15e5,10:75e4,11:4e5,12:2e5,13:1e5,14:5e4,15:25e3,16:12500,17:5e3,18:2500,19:1500,20:750,21:500,22:250,23:100},r.Zoom.prototype.toXML=function(){var e=[];if(this.zoom!=r.Zoom.all){var t=null,n=null;for(var i=0;i<=r.Zoom.maxZoom;i++)this.zoom&1<<i&&(t===null&&(t=i),n=i);t>0&&e.push(" <MaxScaleDenominator>"+r.Zoom.ranges[t]+"</MaxScaleDenominator>\n"
),n<22&&e.push(" <MinScaleDenominator>"+r.Zoom.ranges[n+1]+"</MinScaleDenominator>\n")}return e},r.Zoom.prototype.toString=function(){var e="";for(var t=0;t<=r.Zoom.maxZoom;t++)e+=this.zoom&1<<t?"X":".";return e}},{"../tree":45}],74:[function(e,t,n){t.exports={_args:[[{raw:"carto@github:cartodb/carto#master",scope:null,escapedName:"carto",name:"carto",rawSpec:"github:cartodb/carto#master",spec:"github:cartodb/carto#master",type:"hosted",hosted:{type:"github",ssh:"git@github.com:cartodb/carto.git#master",sshUrl:"git+ssh://git@github.com/cartodb/carto.git#master",httpsUrl:"git+https://github.com/cartodb/carto.git#master",gitUrl:"git://github.com/cartodb/carto.git#master",shortcut:"github:cartodb/carto#master",directUrl:"https://raw.githubusercontent.com/cartodb/carto/master/package.json"}},"/Users/ruben/Projects/Carto/torque"]],_from:"cartodb/carto#master",_id:"carto@0.15.1-cdb4",_inCache:!0,_location:"/carto",_phantomChildren:{},_requested:{raw:"carto@github:cartodb/carto#master",scope:null,escapedName:"carto",name:"carto",rawSpec:"github:cartodb/carto#master",spec:"github:cartodb/carto#master",type:"hosted",hosted:{type:"github",ssh:"git@github.com:cartodb/carto.git#master",sshUrl:"git+ssh://git@github.com/cartodb/carto.git#master",httpsUrl:"git+https://github.com/cartodb/carto.git#master",gitUrl:"git://github.com/cartodb/carto.git#master",shortcut:"github:cartodb/carto#master",directUrl:"https://raw.githubusercontent.com/cartodb/carto/master/package.json"}},_requiredBy:["/"],_resolved:"git://github.com/cartodb/carto.git#cbe66020f98647429d2bb04b7cf73dcf194f2abf",_shasum:"81502a07a925021884ef159715147788290f7910",_shrinkwrap:null,_spec:"carto@github:cartodb/carto#master",_where:"/Users/ruben/Projects/Carto/torque",author:{name:"CartoDB",url:"http://cartodb.com/"},bin:{carto:"./bin/carto"},bugs:{url:"https://github.com/cartodb/carto/issues"},contributors:[{name:"Tom MacWright",email:"macwright@gmail.com"},{name:"Konstantin Käfer"},{name:"Alexis Sellier",email:"self@cloudhead.net"},{name:"Raul Ochoa",email:"rochoa@cartodb.com"},{name:"Javi Santana",email:"jsantana@cartodb.com"}],dependencies:{"mapnik-reference":"~6.0.2",optimist:"~0.6.0",underscore:"1.8.3"},description:"CartoCSS Stylesheet Compiler",devDependencies:{browserify:"~7.0.0",coveralls:"~2.10.1",istanbul:"~0.2.14",jshint:"0.2.x",mocha:"1.12.x",sax:"0.1.x","uglify-js":"1.3.3"},engines:{node:">=0.4.x"},gitHead:"cbe66020f98647429d2bb04b7cf73dcf194f2abf",homepage:"https://github.com/cartodb/carto#readme",keywords:["maps","css","stylesheets"],licenses:[{type:"Apache"}],main:"./lib/carto/index",man:["./man/carto.1"],name:"carto",optionalDependencies:{},readme:"# CartoCSS\n\n[![Build Status](https://travis-ci.org/CartoDB/carto.png?branch=master)](https://travis-ci.org/CartoDB/carto)\n\nIs as stylesheet renderer for javascript, It's an evolution of the Mapnik renderer from Mapbox.\nPlease, see original [Mapbox repo](http://github.com/mapbox/carto) for more information and credits\n\n## Quick Start\n\n```javascript\n// shader is a CartoCSS object\n\nvar cartocss = [\n '#layer {',\n ' marker-width: [property]',\n ' marker-fill: red',\n '}'\n].join('')\nvar shader = new carto.RendererJS().render(cartocss);\nvar layers = shader.getLayers()\nfor (var i = 0; i < layers.length; ++i) {\n var layer = layers[i];\n console.log(\"layer name: \", layer.fullName())\n console.log(\"- frames: \", layer.frames())\n console.log(\"- attachment: \", layer.attachment())\n\n var layerShader = layer.getStyle({ property: 1 }, { zoom: 10 })\n console.log(layerShader['marker-width']) // 1\n console.log(layerShader['marker-fill']) // #FF0000\n}\n\n```\n\n# API\n\n## RendererJS\n\n### render(cartocss)\n\n## CartoCSS\n\ncompiled cartocss object\n\n### getLayers\n\nreturn the layers, an array of ``CartoCSS.Layer`` object\n\n### getDefault\n\nreturn the default layer (``CartoCSS.Layer``), usually the Map layer\n\n\n### findLayer(where)\n\nfind a layer using where object.\n\n```\nshader.findLayer({ name: 'test' })\n```\n\n## CartoCSS.Layer\n\n### getStyle(props, context)\n\nreturn the evaluated style:\n - props: object containing properties needed to render the style. If the cartocss style uses\n some variables they should be passed in this object\n - context: rendering context variables like ``zoom`` or animation ``frame``\n\n\n\n\n\n\n\n\n\n\n## Reference Documentation\n\n* [mapbox.com/carto](http://mapbox.com/carto/)\n\n\n",readmeFilename:"README.md",repository:{type:"git",url:"git+ssh://git@github.com/cartodb/carto.git"},scripts:{coverage:"istanbul cover ./node_modules/.bin/_mocha && coveralls < ./coverage/lcov.info",pretest:"npm install",tdd:"env HIDE_LOGS=true mocha -w -R spec",test:"mocha -R spec"},url:"https://github.com/cartodb/carto",version:"0.15.1-cdb4"}},{}],75:[function(e,t,n){!function(){var n={Burg:{2:["#ffc6c4","#672044"],3:["#ffc6c4","#cc607d","#672044"],4:["#ffc6c4","#e38191","#ad466c","#672044"],5:["#ffc6c4","#ee919b","#cc607d","#9e3963","#672044"],6:["#ffc6c4","#f29ca3","#da7489","#b95073","#93345d","#672044"],7:["#ffc6c4","#f4a3a8","#e38191","#cc607d","#ad466c","#8b3058","#672044"],tags:["quantitative"]},BurgYl:{2:["#fbe6c5","#70284a"],3:["#fbe6c5","#dc7176","#70284a"],4:["#fbe6c5","#ee8a82","#c8586c","#70284a"],5:["#fbe6c5","#f2a28a","#dc7176","#b24b65","#70284a"],6:["#fbe6c5","#f4b191","#e7807d","#d06270","#a44360","#70284a"],7:["#fbe6c5","#f5ba98","#ee8a82","#dc7176","#c8586c","#9c3f5d","#70284a"],tags:["quantitative"]},RedOr:{2:["#f6d2a9","#b13f64"],3:["#f6d2a9","#ea8171","#b13f64"],4:["#f6d2a9","#f19c7c","#dd686c","#b13f64"],5:["#f6d2a9","#f3aa84","#ea8171","#d55d6a","#b13f64"],6:["#f6d2a9","#f4b28a","#ef9177","#e3726d","#cf5669","#b13f64"],7:["#f6d2a9","#f5b78e","#f19c7c","#ea8171","#dd686c","#ca5268","#b13f64"],tags:["quantitative"]},OrYel:{2:["#ecda9a","#ee4d5a"],3:["#ecda9a","#f7945d","#ee4d5a"],4:["#ecda9a","#f3ad6a","#f97b57","#ee4d5a"],5:["#ecda9a","#f1b973","#f7945d","#f86f56","#ee4d5a"],6:["#ecda9a","#f0c079","#f5a363","#f98558","#f76856","#ee4d5a"],7:["#ecda9a","#efc47e","#f3ad6a","#f7945d","#f97b57","#f66356","#ee4d5a"],tags:["quantitative"]},Peach:{2:["#fde0c5","#eb4a40"],3:["#fde0c5","#f59e72","#eb4a40"],4:["#fde0c5","#f8b58b","#f2855d","#eb4a40"],5:["#fde0c5","#f9c098","#f59e72","#f17854","#eb4a40"],6:["#fde0c5","#fac7a1","#f7ac80","#f38f65","#f0704f","#eb4a40"],7:["#fde0c5","#facba6","#f8b58b","#f59e72","#f2855d","#ef6a4c","#eb4a40"],tags:["quantitative"]},PinkYl:{2:["#fef6b5","#e15383"],3:["#fef6b5","#ffa679","#e15383"],4:["#fef6b5","#ffc285","#fa8a76","#e15383"],5:["#fef6b5","#ffd08e","#ffa679","#f67b77","#e15383"],6:["#fef6b5","#ffd795","#ffb77f","#fd9576","#f37378","#e15383"],7:["#fef6b5","#ffdd9a","#ffc285","#ffa679","#fa8a76","#f16d7a","#e15383"],tags:["quantitative"]},Mint:{2:["#e4f1e1","#0d585f"],3:["#e4f1e1","#63a6a0","#0d585f"],4:["#e4f1e1","#89c0b6","#448c8a","#0d585f"],5:["#E4F1E1","#9CCDC1","#63A6A0","#337F7F","#0D585F"],6:["#e4f1e1","#abd4c7","#7ab5ad","#509693","#2c7778","#0d585f"],7:["#e4f1e1","#b4d9cc","#89c0b6","#63a6a0","#448c8a","#287274","#0d585f"],tags:["quantitative"]},BluGrn:{2:["#c4e6c3","#1d4f60"],3:["#c4e6c3","#4da284","#1d4f60"],4:["#c4e6c3","#6dbc90","#36877a","#1d4f60"],5:["#c4e6c3","#80c799","#4da284","#2d7974","#1d4f60"],6:["#c4e6c3","#8dce9f","#5fb28b","#3e927e","#297071","#1d4f60"],7:["#c4e6c3","#96d2a4","#6dbc90","#4da284","#36877a","#266b6e","#1d4f60"],tags:["quantitative"]},DarkMint:{2:["#d2fbd4","#123f5a"],3:["#d2fbd4","#559c9e","#123f5a"],4:["#d2fbd4","#7bbcb0","#3a7c89","#123f5a"],5:["#d2fbd4","#8eccb9","#559c9e","#2b6c7f","#123f5a"],6:["#d2fbd4","#9cd5be","#6cafa9","#458892","#266377","#123f5a"],7:["#d2fbd4","#a5dbc2","#7bbcb0","#559c9e","#3a7c89","#235d72","#123f5a"],tags:["quantitative"]},Emrld:{2:["#d3f2a3","#074050"],3:["#d3f2a3","#4c9b82","#074050"],4:["#d3f2a3","#6cc08b","#217a79","#074050"],5:["#d3f2a3","#82d091","#4c9b82","#19696f","#074050"],6:["#d3f2a3","#8fda94","#60b187","#35877d","#145f69","#074050"],7:["#d3f2a3","#97e196","#6cc08b","#4c9b82","#217a79","#105965","#074050"],tags:["quantitative"]},ag_GrnYl:{2:["#245668","#EDEF5D"],3:["#245668","#39AB7E","#EDEF5D"],4:["#245668","#0D8F81","#6EC574","#EDEF5D"],5:["#245668","#04817E","#39AB7E","#8BD16D","#EDEF5D"],6:["#245668","#09787C","#1D9A81","#58BB79","#9DD869","#EDEF5D"],7:["#245668","#0F7279","#0D8F81","#39AB7E","#6EC574","#A9DC67","#EDEF5D"],tags:["aggregation"]},BluYl:{2:["#f7feae","#045275"],3:["#f7feae","#46aea0","#045275"],4:["#f7feae","#7ccba2","#089099","#045275"],5:["#f7feae","#9bd8a4","#46aea0","#058092","#045275"],6:["#f7feae","#ace1a4","#68bfa1","#2a9c9c","#02778e","#045275"],7:["#f7feae","#b7e6a5","#7ccba2","#46aea0","#089099","#00718b","#045275"],tags:["quantitative"]},Teal:{2:["#d1eeea","#2a5674"],3:["#d1eeea","#68abb8","#2a5674"],4:["#d1eeea","#85c4c9","#4f90a6","#2a5674"],5:["#d1eeea","#96d0d1","#68abb8","#45829b","#2a5674"],6:["#d1eeea","#a1d7d6","#79bbc3","#599bae","#3f7994","#2a5674"],7:["#d1eeea","#a8dbd9","#85c4c9","#68abb8","#4f90a6","#3b738f","#2a5674"],tags:["quantitative"]},TealGrn:{2:["#b0f2bc","#257d98"],3:["#b0f2bc","#4cc8a3","#257d98"],4:["#b0f2bc","#67dba5","#38b2a3","#257d98"],5:["#b0f2bc","#77e2a8","#4cc8a3","#31a6a2","#257d98"],6:["#b0f2bc","#82e6aa","#5bd4a4","#3fbba3","#2e9ea1","#257d98"],7:["#b0f2bc","#89e8ac","#67dba5","#4cc8a3","#38b2a3","#2c98a0","#257d98"],tags:["quantitative"]},Purp:{2:["#f3e0f7","#63589f"],3:["#f3e0f7","#b998dd","#63589f"],4:["#f3e0f7","#d1afe8","#9f82ce","#63589f"],5:["#f3e0f7","#dbbaed","#b998dd","#9178c4","#63589f"],6:["#f3e0f7","#e0c2ef","#c8a5e4","#aa8bd4","#8871be","#63589f"],7:["#f3e0f7","#e4c7f1","#d1afe8","#b998dd","#9f82ce","#826dba","#63589f"],tags:["quantitative"]},PurpOr:{3:["#f9ddda","#ce78b3","#573b88"],4:["#f9ddda","#e597b9","#ad5fad","#573b88"],5:["#f9ddda","#eda8bd","#ce78b3","#9955a8","#573b88"],6:["#f9ddda","#f0b2c1","#dd8ab6","#bb69b0","#8c4fa4","#573b88"],7:["#f9ddda","#f2b9c4","#e597b9","#ce78b3","#ad5fad","#834ba0","#573b88"],tags:["quantitative"]},Sunset:{2:["#f3e79b","#5c53a5"],3:["#f3e79b","#eb7f86","#5c53a5"],4:["#f3e79b","#f8a07e","#ce6693","#5c53a5"],5:["#f3e79b","#fab27f","#eb7f86","#b95e9a","#5c53a5"],6:["#f3e79b","#fabc82","#f59280","#dc6f8e","#ab5b9e","#5c53a5"],7:["#f3e79b","#fac484","#f8a07e","#eb7f86","#ce6693","#a059a0","#5c53a5"],tags:["quantitative"]},Magenta:{2:["#f3cbd3","#6c2167"],3:["#f3cbd3","#ca699d","#6c2167"],4:["#f3cbd3","#dd88ac","#b14d8e","#6c2167"],5:["#f3cbd3","#e498b4","#ca699d","#a24186","#6c2167"],6:["#f3cbd3","#e7a2b9","#d67ba5","#bc5894","#983a81","#6c2167"],7:["#f3cbd3","#eaa9bd","#dd88ac","#ca699d","#b14d8e","#91357d","#6c2167"],tags:["quantitative"]},SunsetDark:{2:["#fcde9c","#7c1d6f"],3:["#fcde9c","#e34f6f","#7c1d6f"],4:["#fcde9c","#f0746e","#dc3977","#7c1d6f"],5:["#fcde9c","#f58670","#e34f6f","#d72d7c","#7c1d6f"],6:["#fcde9c","#f89872","#ec666d","#df4273","#c5287b","#7c1d6f"],7:["#fcde9c","#faa476","#f0746e","#e34f6f","#dc3977","#b9257a","#7c1d6f"],tags:["quantitative"]},ag_Sunset:{2:["#4b2991","#edd9a3"],3:["#4b2991","#ea4f88","#edd9a3"],4:["#4b2991","#c0369d","#fa7876","#edd9a3"],5:["#4b2991","#a52fa2","#ea4f88","#fa9074","#edd9a3"],6:["#4b2991","#932da3","#d43f96","#f7667c","#f89f77","#edd9a3"],7:["#4b2991","#872ca2","#c0369d","#ea4f88","#fa7876","#f6a97a","#edd9a3"],tags:["aggregation"]},BrwnYl:{2:["#ede5cf","#541f3f"],3:["#ede5cf","#c1766f","#541f3f"],4:["#ede5cf","#d39c83","#a65461","#541f3f"],5:["#ede5cf","#daaf91","#c1766f","#95455a","#541f3f"],6:["#ede5cf","#ddba9b","#cd8c7a","#b26166","#8a3c56","#541f3f"],7:["#ede5cf","#e0c2a2","#d39c83","#c1766f","#a65461","#813753","#541f3f"],tags:["quantitative"]},ArmyRose:{2:["#929b4f","#db8195"],3:["#a3ad62","#fdfbe4","#df91a3"],4:["#929b4f","#d9dbaf","#f3d1ca","#db8195"],5:["#879043","#c1c68c","#fdfbe4","#ebb4b8","#d8758b"],6:["#7f883b","#b0b874","#e3e4be","#f6ddd1","#e4a0ac","#d66d85"],7:["#798234","#a3ad62","#d0d3a2","#fdfbe4","#f0c6c3","#df91a3","#d46780"],tags:["diverging"]},Fall:{2:["#3d5941","#ca562c"],3:["#3d5941","#f6edbd","#ca562c"],4:["#3d5941","#b5b991","#edbb8a","#ca562c"],5:["#3d5941","#96a07c","#f6edbd","#e6a272","#ca562c"],6:["#3d5941","#839170","#cecea2","#f1cf9e","#e19464","#ca562c"],7:["#3d5941","#778868","#b5b991","#f6edbd","#edbb8a","#de8a5a","#ca562c"],tags:["diverging"]},Geyser:{2:["#008080","#ca562c"],3:["#008080","#f6edbd","#ca562c"],4:["#008080","#b4c8a8","#edbb8a","#ca562c"],5:["#008080","#92b69e","#f6edbd","#e6a272","#ca562c"],6:["#008080","#7eab98","#ced7b1","#f1cf9e","#e19464","#ca562c"],7:["#008080","#70a494","#b4c8a8","#f6edbd","#edbb8a","#de8a5a","#ca562c"],tags:["diverging"]},Temps:{2:["#009392","#cf597e"],3:["#009392","#e9e29c","#cf597e"],4:["#009392","#9ccb86","#eeb479","#cf597e"],5:["#009392","#71be83","#e9e29c","#ed9c72","#cf597e"],6:["#009392","#52b684","#bcd48c","#edc783","#eb8d71","#cf597e"],7:["#009392","#39b185","#9ccb86","#e9e29c","#eeb479","#e88471","#cf597e"],tags:["diverging"]},TealRose:{2:["#009392","#d0587e"],3:["#009392","#f1eac8","#d0587e"],4:["#009392","#91b8aa","#f1eac8","#dfa0a0","#d0587e"],5:["#009392","#91b8aa","#f1eac8","#dfa0a0","#d0587e"],6:["#009392","#72aaa1","#b1c7b3","#e5b9ad","#d98994","#d0587e"],7:["#009392","#72aaa1","#b1c7b3","#f1eac8","#e5b9ad","#d98994","#d0587e"],tags:["diverging"]},Tropic:{2:["#009B9E","#C75DAB"],3:["#009B9E","#F1F1F1","#C75DAB"],4:["#009B9E","#A7D3D4","#E4C1D9","#C75DAB"],5:["#009B9E","#7CC5C6","#F1F1F1","#DDA9CD","#C75DAB"],6:["#009B9E","#5DBCBE","#C6DFDF","#E9D4E2","#D99BC6","#C75DAB"],7:["#009B9E","#42B7B9","#A7D3D4","#F1F1F1","#E4C1D9","#D691C1","#C75DAB"],tags:["diverging"]},Earth:{2:["#A16928","#2887a1"],3:["#A16928","#edeac2","#2887a1"],4:["#A16928","#d6bd8d","#b5c8b8","#2887a1"],5:["#A16928","#caa873","#edeac2","#98b7b2","#2887a1"],6:["#A16928","#c29b64","#e0cfa2","#cbd5bc","#85adaf","#2887a1"],7:["#A16928","#bd925a","#d6bd8d","#edeac2","#b5c8b8","#79a7ac","#2887a1"],tags:["diverging"]},Antique:{2:["#855C75","#D9AF6B","#7C7C7C"],3:["#855C75","#D9AF6B","#AF6458","#7C7C7C"],4:["#855C75","#D9AF6B","#AF6458","#736F4C","#7C7C7C"],5:["#855C75","#D9AF6B","#AF6458","#736F4C","#526A83","#7C7C7C"],6:["#855C75","#D9AF6B","#AF6458","#736F4C","#526A83","#625377","#7C7C7C"],7:["#855C75","#D9AF6B","#AF6458","#736F4C","#526A83","#625377","#68855C","#7C7C7C"],8:["#855C75","#D9AF6B","#AF6458","#736F4C","#526A83","#625377","#68855C","#9C9C5E","#7C7C7C"],9:["#855C75","#D9AF6B","#AF6458","#736F4C","#526A83","#625377","#68855C","#9C9C5E","#A06177","#7C7C7C"],10:["#855C75","#D9AF6B","#AF6458","#736F4C","#526A83","#625377","#68855C","#9C9C5E","#A06177","#8C785D","#7C7C7C"],11:["#855C75","#D9AF6B","#AF6458","#736F4C","#526A83","#625377","#68855C","#9C9C5E","#A06177","#8C785D","#467378","#7C7C7C"],tags:["qualitative"]},Bold:{2:["#7F3C8D","#11A579","#A5AA99"],3:["#7F3C8D","#11A579","#3969AC","#A5AA99"],4:["#7F3C8D","#11A579","#3969AC","#F2B701","#A5AA99"],5:["#7F3C8D","#11A579","#3969AC","#F2B701","#E73F74","#A5AA99"],6:["#7F3C8D","#11A579","#3969AC","#F2B701","#E73F74","#80BA5A","#A5AA99"],7:["#7F3C8D","#11A579","#3969AC","#F2B701","#E73F74","#80BA5A","#E68310","#A5AA99"],8:["#7F3C8D","#11A579","#3969AC","#F2B701","#E73F74","#80BA5A","#E68310","#008695","#A5AA99"],9:["#7F3C8D","#11A579","#3969AC","#F2B701","#E73F74","#80BA5A","#E68310","#008695","#CF1C90","#A5AA99"],10:["#7F3C8D","#11A579","#3969AC","#F2B701","#E73F74","#80BA5A","#E68310","#008695","#CF1C90","#f97b72","#A5AA99"],11:["#7F3C8D","#11A579","#3969AC","#F2B701","#E73F74","#80BA5A","#E68310","#008695","#CF1C90","#f97b72","#4b4b8f","#A5AA99"],tags:["qualitative"]},Pastel:{2:["#66C5CC","#F6CF71","#B3B3B3"],3:["#66C5CC","#F6CF71","#F89C74","#B3B3B3"],4:["#66C5CC","#F6CF71","#F89C74","#DCB0F2","#B3B3B3"],5:["#66C5CC","#F6CF71","#F89C74","#DCB0F2","#87C55F","#B3B3B3"],6:["#66C5CC","#F6CF71","#F89C74","#DCB0F2","#87C55F","#9EB9F3","#B3B3B3"],7:["#66C5CC","#F6CF71","#F89C74","#DCB0F2","#87C55F","#9EB9F3","#FE88B1","#B3B3B3"],8:["#66C5CC","#F6CF71","#F89C74","#DCB0F2","#87C55F","#9EB9F3","#FE88B1","#C9DB74","#B3B3B3"],9:["#66C5CC","#F6CF71","#F89C74","#DCB0F2","#87C55F","#9EB9F3","#FE88B1","#C9DB74","#8BE0A4","#B3B3B3"],10:["#66C5CC","#F6CF71","#F89C74","#DCB0F2","#87C55F","#9EB9F3","#FE88B1","#C9DB74","#8BE0A4","#B497E7","#B3B3B3"],11:["#66C5CC","#F6CF71","#F89C74","#DCB0F2","#87C55F","#9EB9F3","#FE88B1","#C9DB74","#8BE0A4","#B497E7","#D3B484","#B3B3B3"],tags:["qualitative"]},Prism:{2:["#5F4690","#1D6996","#666666"],3:["#5F4690","#1D6996","#38A6A5","#666666"],4:["#5F4690","#1D6996","#38A6A5","#0F8554","#666666"],5:["#5F4690","#1D6996","#38A6A5","#0F8554","#73AF48","#666666"],6:["#5F4690","#1D6996","#38A6A5","#0F8554","#73AF48","#EDAD08","#666666"],7:["#5F4690","#1D6996","#38A6A5","#0F8554","#73AF48","#EDAD08","#E17C05","#666666"],8:["#5F4690","#1D6996","#38A6A5","#0F8554","#73AF48","#EDAD08","#E17C05","#CC503E","#666666"],9:["#5F4690","#1D6996","#38A6A5","#0F8554","#73AF48","#EDAD08","#E17C05","#CC503E","#94346E","#666666"],10:["#5F4690","#1D6996","#38A6A5","#0F8554","#73AF48","#EDAD08","#E17C05","#CC503E","#94346E","#6F4070","#666666"],11:["#5F4690","#1D6996","#38A6A5","#0F8554","#73AF48","#EDAD08","#E17C05","#CC503E","#94346E","#6F4070","#994E95","#666666"],tags:["qualitative"]},Safe:{2:["#88CCEE","#CC6677","#888888"],3:["#88CCEE","#CC6677","#DDCC77","#888888"],4:["#88CCEE","#CC6677","#DDCC77","#117733","#888888"],5:["#88CCEE","#CC6677","#DDCC77","#117733","#332288","#888888"],6:["#88CCEE","#CC6677","#DDCC77","#117733","#332288","#AA4499","#888888"],7:["#88CCEE","#CC6677","#DDCC77","#117733","#332288","#AA4499","#44AA99","#888888"],8:["#88CCEE","#CC6677","#DDCC77","#117733","#332288","#AA4499","#44AA99","#999933","#888888"],9:["#88CCEE","#CC6677","#DDCC77","#117733","#332288","#AA4499","#44AA99","#999933","#882255","#888888"],10:["#88CCEE","#CC6677","#DDCC77","#117733","#332288","#AA4499","#44AA99","#999933","#882255","#661100","#888888"],11:["#88CCEE","#CC6677","#DDCC77","#117733","#332288","#AA4499","#44AA99","#999933","#882255","#661100","#6699CC","#888888"],tags:["qualitative","colorblind"]},Vivid:{2:["#E58606","#5D69B1","#A5AA99"],3:["#E58606","#5D69B1","#52BCA3","#A5AA99"],4:["#E58606","#5D69B1","#52BCA3","#99C945","#A5AA99"],5:["#E58606","#5D69B1","#52BCA3","#99C945","#CC61B0","#A5AA99"],6:["#E58606","#5D69B1","#52BCA3","#99C945","#CC61B0","#24796C","#A5AA99"],7:["#E58606","#5D69B1","#52BCA3","#99C945","#CC61B0","#24796C","#DAA51B","#A5AA99"],8:["#E58606","#5D69B1","#52BCA3","#99C945","#CC61B0","#24796C","#DAA51B","#2F8AC4","#A5AA99"],9:["#E58606","#5D69B1","#52BCA3","#99C945","#CC61B0","#24796C","#DAA51B","#2F8AC4","#764E9F","#A5AA99"],10:["#E58606","#5D69B1","#52BCA3","#99C945","#CC61B0","#24796C","#DAA51B","#2F8AC4","#764E9F","#ED645A","#A5AA99"],11:["#E58606","#5D69B1","#52BCA3","#99C945","#CC61B0","#24796C","#DAA51B","#2F8AC4","#764E9F","#ED645A","#CC3A8E","#A5AA99"],tags:["qualitative"]}},r={Blues:{tags:["quantitative"]},BrBG:{tags:["diverging"]},Greys:{tags:["quantitative"]},PiYG:{tags:["diverging"]},PRGn:{tags:["diverging"]},Purples:{tags:["quantitative"]},RdYlGn:{tags:["diverging"]},Spectral:{tags:["diverging"]},YlOrBr:{tags:["quantitative"]},YlGn:{tags:["quantitative"]},YlGnBu:{tags:["quantitative"]},YlOrRd:{tags:["quantitative"]}},i=e("colorbrewer");for(var s in i){var o=i[s],u={};for(var a in o)u[a]=o[a];s in r&&(u.tags=r[s].tags),n["cb_"+s]=u}typeof define=="function"&&define.amd?define(n):typeof t=="object"&&t.exports?t.exports=n:this.colorbrewer=n}()},{colorbrewer:78}],76:[function(e,t,n){t.exports=e("./cartocolor")},{"./cartocolor":75}],77:[function(e,t,n){!function(){var e={YlGn:{3:["#f7fcb9","#addd8e","#31a354"],4:["#ffffcc","#c2e699","#78c679","#238443"],5:["#ffffcc","#c2e699","#78c679","#31a354","#006837"],6:["#ffffcc","#d9f0a3","#addd8e","#78c679","#31a354","#006837"],7:["#ffffcc","#d9f0a3","#addd8e","#78c679","#41ab5d","#238443","#005a32"],8:["#ffffe5","#f7fcb9","#d9f0a3","#addd8e","#78c679","#41ab5d","#238443","#005a32"],9:["#ffffe5","#f7fcb9","#d9f0a3","#addd8e","#78c679","#41ab5d","#238443","#006837","#004529"]},YlGnBu:{3:["#edf8b1","#7fcdbb","#2c7fb8"],4:["#ffffcc","#a1dab4","#41b6c4","#225ea8"],5:["#ffffcc","#a1dab4","#41b6c4","#2c7fb8","#253494"],6:["#ffffcc","#c7e9b4","#7fcdbb","#41b6c4","#2c7fb8","#253494"],7:["#ffffcc","#c7e9b4","#7fcdbb","#41b6c4","#1d91c0","#225ea8","#0c2c84"],8:["#ffffd9","#edf8b1","#c7e9b4","#7fcdbb","#41b6c4","#1d91c0","#225ea8","#0c2c84"],9:["#ffffd9","#edf8b1","#c7e9b4","#7fcdbb","#41b6c4","#1d91c0","#225ea8","#253494","#081d58"]},GnBu:{3:["#e0f3db","#a8ddb5","#43a2ca"],4:["#f0f9e8","#bae4bc","#7bccc4","#2b8cbe"],5:["#f0f9e8","#bae4bc","#7bccc4","#43a2ca","#0868ac"],6:["#f0f9e8","#ccebc5","#a8ddb5","#7bccc4","#43a2ca","#0868ac"],7:["#f0f9e8","#ccebc5","#a8ddb5","#7bccc4","#4eb3d3","#2b8cbe","#08589e"],8:["#f7fcf0","#e0f3db","#ccebc5","#a8ddb5","#7bccc4","#4eb3d3","#2b8cbe","#08589e"],9:["#f7fcf0","#e0f3db","#ccebc5","#a8ddb5","#7bccc4","#4eb3d3","#2b8cbe","#0868ac","#084081"]},BuGn:{3:["#e5f5f9","#99d8c9","#2ca25f"],4:["#edf8fb","#b2e2e2","#66c2a4","#238b45"],5:["#edf8fb","#b2e2e2","#66c2a4","#2ca25f","#006d2c"],6:["#edf8fb","#ccece6","#99d8c9","#66c2a4","#2ca25f","#006d2c"],7:["#edf8fb","#ccece6","#99d8c9","#66c2a4","#41ae76","#238b45","#005824"],8:["#f7fcfd","#e5f5f9","#ccece6","#99d8c9","#66c2a4","#41ae76","#238b45","#005824"],9:["#f7fcfd","#e5f5f9","#ccece6","#99d8c9","#66c2a4","#41ae76","#238b45","#006d2c","#00441b"]},PuBuGn:{3:["#ece2f0","#a6bddb","#1c9099"],4:["#f6eff7","#bdc9e1","#67a9cf","#02818a"],5:["#f6eff7","#bdc9e1","#67a9cf","#1c9099","#016c59"],6:["#f6eff7","#d0d1e6","#a6bddb","#67a9cf","#1c9099","#016c59"],7:["#f6eff7","#d0d1e6","#a6bddb","#67a9cf","#3690c0","#02818a","#016450"],8:["#fff7fb","#ece2f0","#d0d1e6","#a6bddb","#67a9cf","#3690c0","#02818a","#016450"],9:["#fff7fb","#ece2f0","#d0d1e6","#a6bddb","#67a9cf","#3690c0","#02818a","#016c59","#014636"]},PuBu:{3:["#ece7f2","#a6bddb","#2b8cbe"],4:["#f1eef6","#bdc9e1","#74a9cf","#0570b0"],5:["#f1eef6","#bdc9e1","#74a9cf","#2b8cbe","#045a8d"],6:["#f1eef6","#d0d1e6","#a6bddb","#74a9cf","#2b8cbe","#045a8d"],7:["#f1eef6","#d0d1e6","#a6bddb","#74a9cf","#3690c0","#0570b0","#034e7b"],8:["#fff7fb","#ece7f2","#d0d1e6","#a6bddb","#74a9cf","#3690c0","#0570b0","#034e7b"],9:["#fff7fb","#ece7f2","#d0d1e6","#a6bddb","#74a9cf","#3690c0","#0570b0","#045a8d","#023858"]},BuPu:{3:["#e0ecf4","#9ebcda","#8856a7"],4:["#edf8fb","#b3cde3","#8c96c6","#88419d"],5:["#edf8fb","#b3cde3","#8c96c6","#8856a7","#810f7c"],6:["#edf8fb","#bfd3e6","#9ebcda","#8c96c6","#8856a7","#810f7c"],7:["#edf8fb","#bfd3e6","#9ebcda","#8c96c6","#8c6bb1","#88419d","#6e016b"],8:["#f7fcfd","#e0ecf4","#bfd3e6","#9ebcda","#8c96c6","#8c6bb1","#88419d","#6e016b"],9:["#f7fcfd","#e0ecf4","#bfd3e6","#9ebcda","#8c96c6","#8c6bb1","#88419d","#810f7c","#4d004b"]},RdPu:{3:["#fde0dd","#fa9fb5","#c51b8a"],4:["#feebe2","#fbb4b9","#f768a1","#ae017e"],5:["#feebe2","#fbb4b9","#f768a1","#c51b8a","#7a0177"],6:["#feebe2","#fcc5c0","#fa9fb5","#f768a1","#c51b8a","#7a0177"],7:["#feebe2","#fcc5c0","#fa9fb5","#f768a1","#dd3497","#ae017e","#7a0177"],8:["#fff7f3","#fde0dd","#fcc5c0","#fa9fb5","#f768a1","#dd3497","#ae017e","#7a0177"],9:["#fff7f3","#fde0dd","#fcc5c0","#fa9fb5","#f768a1","#dd3497","#ae017e","#7a0177","#49006a"]},PuRd:{3:["#e7e1ef","#c994c7","#dd1c77"],4:["#f1eef6","#d7b5d8","#df65b0","#ce1256"],5:["#f1eef6","#d7b5d8","#df65b0","#dd1c77","#980043"],6:["#f1eef6","#d4b9da","#c994c7","#df65b0","#dd1c77","#980043"],7:["#f1eef6","#d4b9da","#c994c7","#df65b0","#e7298a","#ce1256","#91003f"],8:["#f7f4f9","#e7e1ef","#d4b9da","#c994c7","#df65b0","#e7298a","#ce1256","#91003f"],9:["#f7f4f9","#e7e1ef","#d4b9da","#c994c7","#df65b0","#e7298a","#ce1256","#980043","#67001f"]},OrRd:{3:["#fee8c8","#fdbb84","#e34a33"],4:["#fef0d9","#fdcc8a","#fc8d59","#d7301f"],5:["#fef0d9","#fdcc8a","#fc8d59","#e34a33","#b30000"],6:["#fef0d9","#fdd49e","#fdbb84","#fc8d59","#e34a33","#b30000"],7:["#fef0d9","#fdd49e","#fdbb84","#fc8d59","#ef6548","#d7301f","#990000"],8:["#fff7ec","#fee8c8","#fdd49e","#fdbb84","#fc8d59","#ef6548","#d7301f","#990000"],9:["#fff7ec","#fee8c8","#fdd49e","#fdbb84","#fc8d59","#ef6548","#d7301f","#b30000","#7f0000"]},YlOrRd:{3:["#ffeda0","#feb24c","#f03b20"],4:["#ffffb2","#fecc5c","#fd8d3c","#e31a1c"],5:["#ffffb2","#fecc5c","#fd8d3c","#f03b20","#bd0026"],6:["#ffffb2","#fed976","#feb24c","#fd8d3c","#f03b20","#bd0026"],7:["#ffffb2","#fed976","#feb24c","#fd8d3c","#fc4e2a","#e31a1c","#b10026"],8:["#ffffcc","#ffeda0","#fed976","#feb24c","#fd8d3c","#fc4e2a","#e31a1c","#b10026"],9:["#ffffcc","#ffeda0","#fed976","#feb24c","#fd8d3c","#fc4e2a","#e31a1c","#bd0026","#800026"]},YlOrBr:{3:["#fff7bc","#fec44f","#d95f0e"],4:["#ffffd4","#fed98e","#fe9929","#cc4c02"],5:["#ffffd4","#fed98e","#fe9929","#d95f0e","#993404"],6:["#ffffd4","#fee391","#fec44f","#fe9929","#d95f0e","#993404"],7:["#ffffd4","#fee391","#fec44f","#fe9929","#ec7014","#cc4c02","#8c2d04"],8:["#ffffe5","#fff7bc","#fee391","#fec44f","#fe9929","#ec7014","#cc4c02","#8c2d04"],9:["#ffffe5","#fff7bc","#fee391","#fec44f","#fe9929","#ec7014","#cc4c02","#993404","#662506"]},Purples:{3:["#efedf5","#bcbddc","#756bb1"],4:["#f2f0f7","#cbc9e2","#9e9ac8","#6a51a3"],5:["#f2f0f7","#cbc9e2","#9e9ac8","#756bb1","#54278f"],6:["#f2f0f7","#dadaeb","#bcbddc","#9e9ac8","#756bb1","#54278f"],7:["#f2f0f7","#dadaeb","#bcbddc","#9e9ac8","#807dba","#6a51a3","#4a1486"],8:["#fcfbfd","#efedf5","#dadaeb","#bcbddc","#9e9ac8","#807dba","#6a51a3","#4a1486"],9:["#fcfbfd","#efedf5","#dadaeb","#bcbddc","#9e9ac8","#807dba","#6a51a3","#54278f","#3f007d"]},Blues:{3:["#deebf7","#9ecae1","#3182bd"],4:["#eff3ff","#bdd7e7","#6baed6","#2171b5"],5:["#eff3ff","#bdd7e7","#6baed6","#3182bd","#08519c"],6:["#eff3ff","#c6dbef","#9ecae1","#6baed6","#3182bd","#08519c"],7:["#eff3ff","#c6dbef","#9ecae1","#6baed6","#4292c6","#2171b5","#084594"],8:["#f7fbff","#deebf7","#c6dbef","#9ecae1","#6baed6","#4292c6","#2171b5","#084594"],9:["#f7fbff","#deebf7","#c6dbef","#9ecae1","#6baed6","#4292c6","#2171b5","#08519c","#08306b"]},Greens:{3:["#e5f5e0","#a1d99b","#31a354"],4:["#edf8e9","#bae4b3","#74c476","#238b45"],5:["#edf8e9","#bae4b3","#74c476","#31a354","#006d2c"],6:["#edf8e9","#c7e9c0","#a1d99b","#74c476","#31a354","#006d2c"],7:["#edf8e9","#c7e9c0","#a1d99b","#74c476","#41ab5d","#238b45","#005a32"],8:["#f7fcf5","#e5f5e0","#c7e9c0","#a1d99b","#74c476","#41ab5d","#238b45","#005a32"],9:["#f7fcf5","#e5f5e0","#c7e9c0","#a1d99b","#74c476","#41ab5d","#238b45","#006d2c","#00441b"]},Oranges:{3:["#fee6ce","#fdae6b","#e6550d"],4:["#feedde","#fdbe85","#fd8d3c","#d94701"],5:["#feedde","#fdbe85","#fd8d3c","#e6550d","#a63603"],6:["#feedde","#fdd0a2","#fdae6b","#fd8d3c","#e6550d","#a63603"],7:["#feedde","#fdd0a2","#fdae6b","#fd8d3c","#f16913","#d94801","#8c2d04"],8:["#fff5eb","#fee6ce","#fdd0a2","#fdae6b","#fd8d3c","#f16913","#d94801","#8c2d04"],9:["#fff5eb","#fee6ce","#fdd0a2","#fdae6b","#fd8d3c","#f16913","#d94801","#a63603","#7f2704"]},Reds:{3:["#fee0d2","#fc9272","#de2d26"],4:["#fee5d9","#fcae91","#fb6a4a","#cb181d"],5:["#fee5d9","#fcae91","#fb6a4a","#de2d26","#a50f15"],6:["#fee5d9","#fcbba1","#fc9272","#fb6a4a","#de2d26","#a50f15"],7:["#fee5d9","#fcbba1","#fc9272","#fb6a4a","#ef3b2c","#cb181d","#99000d"],8:["#fff5f0","#fee0d2","#fcbba1","#fc9272","#fb6a4a","#ef3b2c","#cb181d","#99000d"],9:["#fff5f0","#fee0d2","#fcbba1","#fc9272","#fb6a4a","#ef3b2c","#cb181d","#a50f15","#67000d"]},Greys:{3:["#f0f0f0","#bdbdbd","#636363"],4:["#f7f7f7","#cccccc","#969696","#525252"],5:["#f7f7f7","#cccccc","#969696","#636363","#252525"],6:["#f7f7f7","#d9d9d9","#bdbdbd","#969696","#636363","#252525"],7:["#f7f7f7","#d9d9d9","#bdbdbd","#969696","#737373","#525252","#252525"],8:["#ffffff","#f0f0f0","#d9d9d9","#bdbdbd","#969696","#737373","#525252","#252525"],9:["#ffffff","#f0f0f0","#d9d9d9","#bdbdbd","#969696","#737373","#525252","#252525","#000000"]},PuOr:{3:["#f1a340","#f7f7f7","#998ec3"],4:["#e66101","#fdb863","#b2abd2","#5e3c99"],5:["#e66101","#fdb863","#f7f7f7","#b2abd2","#5e3c99"],6:["#b35806","#f1a340","#fee0b6","#d8daeb","#998ec3","#542788"],7:["#b35806","#f1a340","#fee0b6","#f7f7f7","#d8daeb","#998ec3","#542788"],8:["#b35806","#e08214","#fdb863","#fee0b6","#d8daeb","#b2abd2","#8073ac","#542788"],9:["#b35806","#e08214","#fdb863","#fee0b6","#f7f7f7","#d8daeb","#b2abd2","#8073ac","#542788"],10:["#7f3b08","#b35806","#e08214","#fdb863","#fee0b6","#d8daeb","#b2abd2","#8073ac","#542788","#2d004b"],11:["#7f3b08","#b35806","#e08214","#fdb863","#fee0b6","#f7f7f7","#d8daeb","#b2abd2","#8073ac","#542788","#2d004b"]},BrBG:{3:["#d8b365","#f5f5f5","#5ab4ac"],4:["#a6611a","#dfc27d","#80cdc1","#018571"],5:["#a6611a","#dfc27d","#f5f5f5","#80cdc1","#018571"],6:["#8c510a","#d8b365","#f6e8c3","#c7eae5","#5ab4ac","#01665e"],7:["#8c510a","#d8b365","#f6e8c3","#f5f5f5","#c7eae5","#5ab4ac","#01665e"],8:["#8c510a","#bf812d","#dfc27d","#f6e8c3","#c7eae5","#80cdc1","#35978f","#01665e"],9:["#8c510a","#bf812d","#dfc27d","#f6e8c3","#f5f5f5","#c7eae5","#80cdc1","#35978f","#01665e"],10:["#543005","#8c510a","#bf812d","#dfc27d","#f6e8c3","#c7eae5","#80cdc1","#35978f","#01665e","#003c30"],11:["#543005","#8c510a","#bf812d","#dfc27d","#f6e8c3","#f5f5f5","#c7eae5","#80cdc1","#35978f","#01665e","#003c30"]},PRGn:{3:["#af8dc3","#f7f7f7","#7fbf7b"],4:["#7b3294","#c2a5cf","#a6dba0","#008837"],5:["#7b3294","#c2a5cf","#f7f7f7","#a6dba0","#008837"],6:["#762a83","#af8dc3","#e7d4e8","#d9f0d3","#7fbf7b","#1b7837"],7:["#762a83","#af8dc3","#e7d4e8","#f7f7f7","#d9f0d3","#7fbf7b","#1b7837"],8:["#762a83","#9970ab","#c2a5cf","#e7d4e8","#d9f0d3","#a6dba0","#5aae61","#1b7837"],9:["#762a83","#9970ab","#c2a5cf","#e7d4e8","#f7f7f7","#d9f0d3","#a6dba0","#5aae61","#1b7837"],10:["#40004b","#762a83","#9970ab","#c2a5cf","#e7d4e8","#d9f0d3","#a6dba0","#5aae61","#1b7837","#00441b"],11:["#40004b","#762a83","#9970ab","#c2a5cf","#e7d4e8","#f7f7f7","#d9f0d3","#a6dba0","#5aae61","#1b7837","#00441b"]},PiYG:{3:["#e9a3c9","#f7f7f7","#a1d76a"],4:["#d01c8b","#f1b6da","#b8e186","#4dac26"],5:["#d01c8b","#f1b6da","#f7f7f7","#b8e186","#4dac26"],6:["#c51b7d","#e9a3c9","#fde0ef","#e6f5d0","#a1d76a","#4d9221"],7:["#c51b7d","#e9a3c9","#fde0ef","#f7f7f7","#e6f5d0","#a1d76a","#4d9221"],8:["#c51b7d","#de77ae","#f1b6da","#fde0ef","#e6f5d0","#b8e186","#7fbc41","#4d9221"],9:["#c51b7d","#de77ae","#f1b6da","#fde0ef","#f7f7f7","#e6f5d0","#b8e186","#7fbc41","#4d9221"],10:["#8e0152","#c51b7d","#de77ae","#f1b6da","#fde0ef","#e6f5d0","#b8e186","#7fbc41","#4d9221","#276419"],11:["#8e0152","#c51b7d","#de77ae","#f1b6da","#fde0ef","#f7f7f7","#e6f5d0","#b8e186","#7fbc41","#4d9221","#276419"]},RdBu:{3:["#ef8a62","#f7f7f7","#67a9cf"],4:["#ca0020","#f4a582","#92c5de","#0571b0"],5:["#ca0020","#f4a582","#f7f7f7","#92c5de","#0571b0"],6:["#b2182b","#ef8a62","#fddbc7","#d1e5f0","#67a9cf","#2166ac"],7:["#b2182b","#ef8a62","#fddbc7","#f7f7f7","#d1e5f0","#67a9cf","#2166ac"],8:["#b2182b","#d6604d","#f4a582","#fddbc7","#d1e5f0","#92c5de","#4393c3","#2166ac"],9:["#b2182b","#d6604d","#f4a582","#fddbc7","#f7f7f7","#d1e5f0","#92c5de","#4393c3","#2166ac"],10:["#67001f","#b2182b","#d6604d","#f4a582","#fddbc7","#d1e5f0","#92c5de","#4393c3","#2166ac","#053061"],11:["#67001f","#b2182b","#d6604d","#f4a582","#fddbc7","#f7f7f7","#d1e5f0","#92c5de","#4393c3","#2166ac","#053061"]},RdGy:{3:["#ef8a62","#ffffff","#999999"],4:["#ca0020","#f4a582","#bababa","#404040"],5:["#ca0020","#f4a582","#ffffff","#bababa","#404040"],6:["#b2182b","#ef8a62","#fddbc7","#e0e0e0","#999999","#4d4d4d"],7:["#b2182b","#ef8a62","#fddbc7","#ffffff","#e0e0e0","#999999","#4d4d4d"],8:["#b2182b","#d6604d","#f4a582","#fddbc7","#e0e0e0","#bababa","#878787","#4d4d4d"],9:["#b2182b","#d6604d","#f4a582","#fddbc7","#ffffff","#e0e0e0","#bababa","#878787","#4d4d4d"],10:["#67001f","#b2182b","#d6604d","#f4a582","#fddbc7","#e0e0e0","#bababa","#878787","#4d4d4d","#1a1a1a"],11:["#67001f","#b2182b","#d6604d","#f4a582","#fddbc7","#ffffff","#e0e0e0","#bababa","#878787","#4d4d4d","#1a1a1a"]},RdYlBu:{3:["#fc8d59","#ffffbf","#91bfdb"],4:["#d7191c","#fdae61","#abd9e9","#2c7bb6"],5:["#d7191c","#fdae61","#ffffbf","#abd9e9","#2c7bb6"],6:["#d73027","#fc8d59","#fee090","#e0f3f8","#91bfdb","#4575b4"],7:["#d73027","#fc8d59","#fee090","#ffffbf","#e0f3f8","#91bfdb","#4575b4"],8:["#d73027","#f46d43","#fdae61","#fee090","#e0f3f8","#abd9e9","#74add1","#4575b4"],9:["#d73027","#f46d43","#fdae61","#fee090","#ffffbf","#e0f3f8","#abd9e9","#74add1","#4575b4"],10:["#a50026","#d73027","#f46d43","#fdae61","#fee090","#e0f3f8","#abd9e9","#74add1","#4575b4","#313695"],11:["#a50026","#d73027","#f46d43","#fdae61","#fee090","#ffffbf","#e0f3f8","#abd9e9","#74add1","#4575b4","#313695"]},Spectral:{3:["#fc8d59","#ffffbf","#99d594"],4:["#d7191c","#fdae61","#abdda4","#2b83ba"],5:["#d7191c","#fdae61","#ffffbf","#abdda4","#2b83ba"],6:["#d53e4f","#fc8d59","#fee08b","#e6f598","#99d594","#3288bd"],7:["#d53e4f","#fc8d59","#fee08b","#ffffbf","#e6f598"
,"#99d594","#3288bd"],8:["#d53e4f","#f46d43","#fdae61","#fee08b","#e6f598","#abdda4","#66c2a5","#3288bd"],9:["#d53e4f","#f46d43","#fdae61","#fee08b","#ffffbf","#e6f598","#abdda4","#66c2a5","#3288bd"],10:["#9e0142","#d53e4f","#f46d43","#fdae61","#fee08b","#e6f598","#abdda4","#66c2a5","#3288bd","#5e4fa2"],11:["#9e0142","#d53e4f","#f46d43","#fdae61","#fee08b","#ffffbf","#e6f598","#abdda4","#66c2a5","#3288bd","#5e4fa2"]},RdYlGn:{3:["#fc8d59","#ffffbf","#91cf60"],4:["#d7191c","#fdae61","#a6d96a","#1a9641"],5:["#d7191c","#fdae61","#ffffbf","#a6d96a","#1a9641"],6:["#d73027","#fc8d59","#fee08b","#d9ef8b","#91cf60","#1a9850"],7:["#d73027","#fc8d59","#fee08b","#ffffbf","#d9ef8b","#91cf60","#1a9850"],8:["#d73027","#f46d43","#fdae61","#fee08b","#d9ef8b","#a6d96a","#66bd63","#1a9850"],9:["#d73027","#f46d43","#fdae61","#fee08b","#ffffbf","#d9ef8b","#a6d96a","#66bd63","#1a9850"],10:["#a50026","#d73027","#f46d43","#fdae61","#fee08b","#d9ef8b","#a6d96a","#66bd63","#1a9850","#006837"],11:["#a50026","#d73027","#f46d43","#fdae61","#fee08b","#ffffbf","#d9ef8b","#a6d96a","#66bd63","#1a9850","#006837"]},Accent:{3:["#7fc97f","#beaed4","#fdc086"],4:["#7fc97f","#beaed4","#fdc086","#ffff99"],5:["#7fc97f","#beaed4","#fdc086","#ffff99","#386cb0"],6:["#7fc97f","#beaed4","#fdc086","#ffff99","#386cb0","#f0027f"],7:["#7fc97f","#beaed4","#fdc086","#ffff99","#386cb0","#f0027f","#bf5b17"],8:["#7fc97f","#beaed4","#fdc086","#ffff99","#386cb0","#f0027f","#bf5b17","#666666"]},Dark2:{3:["#1b9e77","#d95f02","#7570b3"],4:["#1b9e77","#d95f02","#7570b3","#e7298a"],5:["#1b9e77","#d95f02","#7570b3","#e7298a","#66a61e"],6:["#1b9e77","#d95f02","#7570b3","#e7298a","#66a61e","#e6ab02"],7:["#1b9e77","#d95f02","#7570b3","#e7298a","#66a61e","#e6ab02","#a6761d"],8:["#1b9e77","#d95f02","#7570b3","#e7298a","#66a61e","#e6ab02","#a6761d","#666666"]},Paired:{3:["#a6cee3","#1f78b4","#b2df8a"],4:["#a6cee3","#1f78b4","#b2df8a","#33a02c"],5:["#a6cee3","#1f78b4","#b2df8a","#33a02c","#fb9a99"],6:["#a6cee3","#1f78b4","#b2df8a","#33a02c","#fb9a99","#e31a1c"],7:["#a6cee3","#1f78b4","#b2df8a","#33a02c","#fb9a99","#e31a1c","#fdbf6f"],8:["#a6cee3","#1f78b4","#b2df8a","#33a02c","#fb9a99","#e31a1c","#fdbf6f","#ff7f00"],9:["#a6cee3","#1f78b4","#b2df8a","#33a02c","#fb9a99","#e31a1c","#fdbf6f","#ff7f00","#cab2d6"],10:["#a6cee3","#1f78b4","#b2df8a","#33a02c","#fb9a99","#e31a1c","#fdbf6f","#ff7f00","#cab2d6","#6a3d9a"],11:["#a6cee3","#1f78b4","#b2df8a","#33a02c","#fb9a99","#e31a1c","#fdbf6f","#ff7f00","#cab2d6","#6a3d9a","#ffff99"],12:["#a6cee3","#1f78b4","#b2df8a","#33a02c","#fb9a99","#e31a1c","#fdbf6f","#ff7f00","#cab2d6","#6a3d9a","#ffff99","#b15928"]},Pastel1:{3:["#fbb4ae","#b3cde3","#ccebc5"],4:["#fbb4ae","#b3cde3","#ccebc5","#decbe4"],5:["#fbb4ae","#b3cde3","#ccebc5","#decbe4","#fed9a6"],6:["#fbb4ae","#b3cde3","#ccebc5","#decbe4","#fed9a6","#ffffcc"],7:["#fbb4ae","#b3cde3","#ccebc5","#decbe4","#fed9a6","#ffffcc","#e5d8bd"],8:["#fbb4ae","#b3cde3","#ccebc5","#decbe4","#fed9a6","#ffffcc","#e5d8bd","#fddaec"],9:["#fbb4ae","#b3cde3","#ccebc5","#decbe4","#fed9a6","#ffffcc","#e5d8bd","#fddaec","#f2f2f2"]},Pastel2:{3:["#b3e2cd","#fdcdac","#cbd5e8"],4:["#b3e2cd","#fdcdac","#cbd5e8","#f4cae4"],5:["#b3e2cd","#fdcdac","#cbd5e8","#f4cae4","#e6f5c9"],6:["#b3e2cd","#fdcdac","#cbd5e8","#f4cae4","#e6f5c9","#fff2ae"],7:["#b3e2cd","#fdcdac","#cbd5e8","#f4cae4","#e6f5c9","#fff2ae","#f1e2cc"],8:["#b3e2cd","#fdcdac","#cbd5e8","#f4cae4","#e6f5c9","#fff2ae","#f1e2cc","#cccccc"]},Set1:{3:["#e41a1c","#377eb8","#4daf4a"],4:["#e41a1c","#377eb8","#4daf4a","#984ea3"],5:["#e41a1c","#377eb8","#4daf4a","#984ea3","#ff7f00"],6:["#e41a1c","#377eb8","#4daf4a","#984ea3","#ff7f00","#ffff33"],7:["#e41a1c","#377eb8","#4daf4a","#984ea3","#ff7f00","#ffff33","#a65628"],8:["#e41a1c","#377eb8","#4daf4a","#984ea3","#ff7f00","#ffff33","#a65628","#f781bf"],9:["#e41a1c","#377eb8","#4daf4a","#984ea3","#ff7f00","#ffff33","#a65628","#f781bf","#999999"]},Set2:{3:["#66c2a5","#fc8d62","#8da0cb"],4:["#66c2a5","#fc8d62","#8da0cb","#e78ac3"],5:["#66c2a5","#fc8d62","#8da0cb","#e78ac3","#a6d854"],6:["#66c2a5","#fc8d62","#8da0cb","#e78ac3","#a6d854","#ffd92f"],7:["#66c2a5","#fc8d62","#8da0cb","#e78ac3","#a6d854","#ffd92f","#e5c494"],8:["#66c2a5","#fc8d62","#8da0cb","#e78ac3","#a6d854","#ffd92f","#e5c494","#b3b3b3"]},Set3:{3:["#8dd3c7","#ffffb3","#bebada"],4:["#8dd3c7","#ffffb3","#bebada","#fb8072"],5:["#8dd3c7","#ffffb3","#bebada","#fb8072","#80b1d3"],6:["#8dd3c7","#ffffb3","#bebada","#fb8072","#80b1d3","#fdb462"],7:["#8dd3c7","#ffffb3","#bebada","#fb8072","#80b1d3","#fdb462","#b3de69"],8:["#8dd3c7","#ffffb3","#bebada","#fb8072","#80b1d3","#fdb462","#b3de69","#fccde5"],9:["#8dd3c7","#ffffb3","#bebada","#fb8072","#80b1d3","#fdb462","#b3de69","#fccde5","#d9d9d9"],10:["#8dd3c7","#ffffb3","#bebada","#fb8072","#80b1d3","#fdb462","#b3de69","#fccde5","#d9d9d9","#bc80bd"],11:["#8dd3c7","#ffffb3","#bebada","#fb8072","#80b1d3","#fdb462","#b3de69","#fccde5","#d9d9d9","#bc80bd","#ccebc5"],12:["#8dd3c7","#ffffb3","#bebada","#fb8072","#80b1d3","#fdb462","#b3de69","#fccde5","#d9d9d9","#bc80bd","#ccebc5","#ffed6f"]}};typeof define=="function"&&define.amd?define(e):typeof t=="object"&&t.exports?t.exports=e:this.colorbrewer=e}()},{}],78:[function(e,t,n){t.exports=e("./colorbrewer.js")},{"./colorbrewer.js":77}],79:[function(e,t,n){!function(){function s(e){return e&&(e.ownerDocument||e.document||e).documentElement}function o(e){return e&&(e.ownerDocument&&e.ownerDocument.defaultView||e.document&&e||e.defaultView)}function d(e,t){return e<t?-1:e>t?1:e>=t?0:NaN}function v(e){return e===null?NaN:+e}function m(e){return!isNaN(e)}function g(e){return{left:function(t,n,r,i){arguments.length<3&&(r=0),arguments.length<4&&(i=t.length);while(r<i){var s=r+i>>>1;e(t[s],n)<0?r=s+1:i=s}return r},right:function(t,n,r,i){arguments.length<3&&(r=0),arguments.length<4&&(i=t.length);while(r<i){var s=r+i>>>1;e(t[s],n)>0?i=s:r=s+1}return r}}}function b(e){return e.length}function E(e){var t=1;while(e*t%1)t*=10;return t}function S(e,t){for(var n in t)Object.defineProperty(e.prototype,n,{value:t[n],enumerable:!1})}function x(){this._=Object.create(null)}function C(e){return(e+="")===T||e[0]===N?N+e:e}function k(e){return(e+="")[0]===N?e.slice(1):e}function L(e){return C(e)in this._}function A(e){return(e=C(e))in this._&&delete this._[e]}function O(){var e=[];for(var t in this._)e.push(k(t));return e}function M(){var e=0;for(var t in this._)++e;return e}function _(){for(var e in this._)return!1;return!0}function D(){this._=Object.create(null)}function P(e){return e}function H(e,t,n){return function(){var r=n.apply(t,arguments);return r===t?e:r}}function B(e,t){if(t in e)return t;t=t.charAt(0).toUpperCase()+t.slice(1);for(var n=0,r=j.length;n<r;++n){var i=j[n]+t;if(i in e)return i}}function F(){}function I(){}function q(e){function r(){var n=t,r=-1,i=n.length,s;while(++r<i)(s=n[r].on)&&s.apply(this,arguments);return e}var t=[],n=new x;return r.on=function(r,i){var s=n.get(r),o;return arguments.length<2?s&&s.on:(s&&(s.on=null,t=t.slice(0,o=t.indexOf(s)).concat(t.slice(o+1)),n.remove(r)),i&&t.push(n.set(r,{on:i})),e)},r}function R(){e.event.preventDefault()}function U(){var t=e.event,n;while(n=t.sourceEvent)t=n;return t}function z(t){var n=new I,r=0,i=arguments.length;while(++r<i)n[arguments[r]]=q(n);return n.of=function(r,i){return function(s){try{var o=s.sourceEvent=e.event;s.target=t,e.event=s,n[s.type].apply(r,i)}finally{e.event=o}}},n}function V(e){return X(e,Q),e}function G(e){return typeof e=="function"?e:function(){return $(e,this)}}function Y(e){return typeof e=="function"?e:function(){return J(e,this)}}function tt(t,n){function r(){this.removeAttribute(t)}function i(){this.removeAttributeNS(t.space,t.local)}function s(){this.setAttribute(t,n)}function o(){this.setAttributeNS(t.space,t.local,n)}function u(){var e=n.apply(this,arguments);e==null?this.removeAttribute(t):this.setAttribute(t,e)}function a(){var e=n.apply(this,arguments);e==null?this.removeAttributeNS(t.space,t.local):this.setAttributeNS(t.space,t.local,e)}return t=e.ns.qualify(t),n==null?t.local?i:r:typeof n=="function"?t.local?a:u:t.local?o:s}function nt(e){return e.trim().replace(/\s+/g," ")}function rt(t){return new RegExp("(?:^|\\s+)"+e.requote(t)+"(?:\\s+|$)","g")}function it(e){return(e+"").trim().split(/^|\s+/)}function st(e,t){function r(){var r=-1;while(++r<n)e[r](this,t)}function i(){var r=-1,i=t.apply(this,arguments);while(++r<n)e[r](this,i)}e=it(e).map(ot);var n=e.length;return typeof t=="function"?i:r}function ot(e){var t=rt(e);return function(n,r){if(i=n.classList)return r?i.add(e):i.remove(e);var i=n.getAttribute("class")||"";r?(t.lastIndex=0,t.test(i)||n.setAttribute("class",nt(i+" "+e))):n.setAttribute("class",nt(i.replace(t," ")))}}function ut(e,t,n){function r(){this.style.removeProperty(e)}function i(){this.style.setProperty(e,t,n)}function s(){var r=t.apply(this,arguments);r==null?this.style.removeProperty(e):this.style.setProperty(e,r,n)}return t==null?r:typeof t=="function"?s:i}function at(e,t){function n(){delete this[e]}function r(){this[e]=t}function i(){var n=t.apply(this,arguments);n==null?delete this[e]:this[e]=n}return t==null?n:typeof t=="function"?i:r}function ft(t){function n(){var e=this.ownerDocument,n=this.namespaceURI;return n===Z&&e.documentElement.namespaceURI===Z?e.createElement(t):e.createElementNS(n,t)}function r(){return this.ownerDocument.createElementNS(t.space,t.local)}return typeof t=="function"?t:(t=e.ns.qualify(t)).local?r:n}function lt(){var e=this.parentNode;e&&e.removeChild(this)}function ct(e){return{__data__:e}}function ht(e){return function(){return K(this,e)}}function pt(e){return arguments.length||(e=d),function(t,n){return t&&n?e(t.__data__,n.__data__):!t-!n}}function dt(e,t){for(var n=0,r=e.length;n<r;n++)for(var i=e[n],s=0,o=i.length,u;s<o;s++)(u=i[s])&&t(u,s,n);return e}function vt(e){return X(e,mt),e}function gt(e){var t,n;return function(r,i,s){var o=e[s].update,u=o.length,a;s!=n&&(n=s,t=0),i>=t&&(t=i+1);while(!(a=o[t])&&++t<u);return a}}function yt(t,n,i){function f(){var e=this[s];e&&(this.removeEventListener(t,e,e.$),delete this[s])}function l(){var e=u(n,r(arguments));f.call(this),this.addEventListener(t,this[s]=e,e.$=i),e._=n}function c(){var n=new RegExp("^__on([^.]+)"+e.requote(t)+"$"),r;for(var i in this)if(r=i.match(n)){var s=this[i];this.removeEventListener(r[1],s,s.$),delete this[i]}}var s="__on"+t,o=t.indexOf("."),u=wt;o>0&&(t=t.slice(0,o));var a=bt.get(t);return a&&(t=a,u=Et),o?n?l:f:n?F:c}function wt(t,n){return function(r){var i=e.event;e.event=r,n[0]=this.__data__;try{t.apply(this,n)}finally{e.event=i}}}function Et(e,t){var n=wt(e,t);return function(e){var t=this,r=e.relatedTarget;(!r||r!==t&&!(r.compareDocumentPosition(t)&8))&&n.call(t,e)}}function Tt(t){var n=".dragsuppress-"+ ++xt,r="click"+n,i=e.select(o(t)).on("touchmove"+n,R).on("dragstart"+n,R).on("selectstart"+n,R);St==null&&(St="onselectstart"in t?!1:B(t.style,"userSelect"));if(St){var u=s(t).style,a=u[St];u[St]="none"}return function(e){i.on(n,null),St&&(u[St]=a);if(e){var t=function(){i.on(r,null)};i.on(r,function(){R(),t()},!0),setTimeout(t,0)}}}function Ct(t,n){n.changedTouches&&(n=n.changedTouches[0]);var r=t.ownerSVGElement||t;if(r.createSVGPoint){var i=r.createSVGPoint();if(Nt<0){var s=o(t);if(s.scrollX||s.scrollY){r=e.select("body").append("svg").style({position:"absolute",top:0,left:0,margin:0,padding:0,border:"none"},"important");var u=r[0][0].getScreenCTM();Nt=!u.f&&!u.e,r.remove()}}return Nt?(i.x=n.pageX,i.y=n.pageY):(i.x=n.clientX,i.y=n.clientY),i=i.matrixTransform(t.getScreenCTM().inverse()),[i.x,i.y]}var a=t.getBoundingClientRect();return[n.clientX-a.left-t.clientLeft,n.clientY-a.top-t.clientTop]}function kt(){return e.event.changedTouches[0].identifier}function Bt(e){return e>0?1:e<0?-1:0}function jt(e,t,n){return(t[0]-e[0])*(n[1]-e[1])-(t[1]-e[1])*(n[0]-e[0])}function Ft(e){return e>1?0:e<-1?Ot:Math.acos(e)}function It(e){return e>1?Dt:e<-1?-Dt:Math.asin(e)}function qt(e){return((e=Math.exp(e))-1/e)/2}function Rt(e){return((e=Math.exp(e))+1/e)/2}function Ut(e){return((e=Math.exp(2*e))-1)/(e+1)}function zt(e){return(e=Math.sin(e/2))*e}function Qt(){}function Gt(e,t,n){return this instanceof Gt?void (this.h=+e,this.s=+t,this.l=+n):arguments.length<2?e instanceof Gt?new Gt(e.h,e.s,e.l):wn(""+e,En,Gt):new Gt(e,t,n)}function Zt(e,t,n){function s(e){return e>360?e-=360:e<0&&(e+=360),e<60?r+(i-r)*e/60:e<180?i:e<240?r+(i-r)*(240-e)/60:r}function o(e){return Math.round(s(e)*255)}var r,i;return e=isNaN(e)?0:(e%=360)<0?e+360:e,t=isNaN(t)?0:t<0?0:t>1?1:t,n=n<0?0:n>1?1:n,i=n<=.5?n*(1+t):n+t-n*t,r=2*n-i,new vn(o(e+120),o(e),o(e-120))}function en(t,n,r){return this instanceof en?void (this.h=+t,this.c=+n,this.l=+r):arguments.length<2?t instanceof en?new en(t.h,t.c,t.l):t instanceof rn?cn(t.l,t.a,t.b):cn((t=Sn((t=e.rgb(t)).r,t.g,t.b)).l,t.a,t.b):new en(t,n,r)}function nn(e,t,n){return isNaN(e)&&(e=0),isNaN(t)&&(t=0),new rn(n,Math.cos(e*=Pt)*t,Math.sin(e)*t)}function rn(e,t,n){return this instanceof rn?void (this.l=+e,this.a=+t,this.b=+n):arguments.length<2?e instanceof rn?new rn(e.l,e.a,e.b):e instanceof en?nn(e.h,e.c,e.l):Sn((e=vn(e)).r,e.g,e.b):new rn(e,t,n)}function ln(e,t,n){var r=(e+16)/116,i=r+t/500,s=r-n/200;return i=hn(i)*on,r=hn(r)*un,s=hn(s)*an,new vn(dn(3.2404542*i-1.5371385*r-.4985314*s),dn(-0.969266*i+1.8760108*r+.041556*s),dn(.0556434*i-.2040259*r+1.0572252*s))}function cn(e,t,n){return e>0?new en(Math.atan2(n,t)*Ht,Math.sqrt(t*t+n*n),e):new en(NaN,NaN,e)}function hn(e){return e>.206893034?e*e*e:(e-4/29)/7.787037}function pn(e){return e>.008856?Math.pow(e,1/3):7.787037*e+4/29}function dn(e){return Math.round(255*(e<=.00304?12.92*e:1.055*Math.pow(e,1/2.4)-.055))}function vn(e,t,n){return this instanceof vn?void (this.r=~~e,this.g=~~t,this.b=~~n):arguments.length<2?e instanceof vn?new vn(e.r,e.g,e.b):wn(""+e,vn,Zt):new vn(e,t,n)}function mn(e){return new vn(e>>16,e>>8&255,e&255)}function gn(e){return mn(e)+""}function bn(e){return e<16?"0"+Math.max(0,e).toString(16):Math.min(255,e).toString(16)}function wn(e,t,n){var r=0,i=0,s=0,o,u,a;o=/([a-z]+)\((.*)\)/.exec(e=e.toLowerCase());if(o){u=o[2].split(",");switch(o[1]){case"hsl":return n(parseFloat(u[0]),parseFloat(u[1])/100,parseFloat(u[2])/100);case"rgb":return t(Tn(u[0]),Tn(u[1]),Tn(u[2]))}}return(a=Nn.get(e))?t(a.r,a.g,a.b):(e!=null&&e.charAt(0)==="#"&&!isNaN(a=parseInt(e.slice(1),16))&&(e.length===4?(r=(a&3840)>>4,r=r>>4|r,i=a&240,i=i>>4|i,s=a&15,s=s<<4|s):e.length===7&&(r=(a&16711680)>>16,i=(a&65280)>>8,s=a&255)),t(r,i,s))}function En(e,t,n){var r=Math.min(e/=255,t/=255,n/=255),i=Math.max(e,t,n),s=i-r,o,u,a=(i+r)/2;return s?(u=a<.5?s/(i+r):s/(2-i-r),e==i?o=(t-n)/s+(t<n?6:0):t==i?o=(n-e)/s+2:o=(e-t)/s+4,o*=60):(o=NaN,u=a>0&&a<1?0:o),new Gt(o,u,a)}function Sn(e,t,n){e=xn(e),t=xn(t),n=xn(n);var r=pn((.4124564*e+.3575761*t+.1804375*n)/on),i=pn((.2126729*e+.7151522*t+.072175*n)/un),s=pn((.0193339*e+.119192*t+.9503041*n)/an);return rn(116*i-16,500*(r-i),200*(i-s))}function xn(e){return(e/=255)<=.04045?e/12.92:Math.pow((e+.055)/1.055,2.4)}function Tn(e){var t=parseFloat(e);return e.charAt(e.length-1)==="%"?Math.round(t*2.55):t}function Cn(e){return typeof e=="function"?e:function(){return e}}function kn(e){return function(t,n,r){return arguments.length===2&&typeof n=="function"&&(r=n,n=null),Ln(t,n,e,r)}}function Ln(t,n,i,s){function c(){var e=f.status,t;if(!e&&On(f)||e>=200&&e<300||e===304){try{t=i.call(o,f)}catch(n){u.error.call(o,n);return}u.load.call(o,t)}else u.error.call(o,f)}var o={},u=e.dispatch("beforesend","progress","load","error"),a={},f=new XMLHttpRequest,l=null;return this.XDomainRequest&&!("withCredentials"in f)&&/^(http(s)?:)?\/\//.test(t)&&(f=new XDomainRequest),"onload"in f?f.onload=f.onerror=c:f.onreadystatechange=function(){f.readyState>3&&c()},f.onprogress=function(t){var n=e.event;e.event=t;try{u.progress.call(o,f)}finally{e.event=n}},o.header=function(e,t){return e=(e+"").toLowerCase(),arguments.length<2?a[e]:(t==null?delete a[e]:a[e]=t+"",o)},o.mimeType=function(e){return arguments.length?(n=e==null?null:e+"",o):n},o.responseType=function(e){return arguments.length?(l=e,o):l},o.response=function(e){return i=e,o},["get","post"].forEach(function(e){o[e]=function(){return o.send.apply(o,[e].concat(r(arguments)))}}),o.send=function(e,r,i){arguments.length===2&&typeof r=="function"&&(i=r,r=null),f.open(e,t,!0),n!=null&&!("accept"in a)&&(a.accept=n+",*/*");if(f.setRequestHeader)for(var s in a)f.setRequestHeader(s,a[s]);return n!=null&&f.overrideMimeType&&f.overrideMimeType(n),l!=null&&(f.responseType=l),i!=null&&o.on("error",i).on("load",function(e){i(null,e)}),u.beforesend.call(o,f),f.send(r==null?null:r),o},o.abort=function(){return f.abort(),o},e.rebind(o,u,"on"),s==null?o:o.get(An(s))}function An(e){return e.length===1?function(t,n){e(t==null?n:null)}:e}function On(e){var t=e.responseType;return t&&t!=="text"?e.response:e.responseText}function Bn(e,t,n){var r=arguments.length;r<2&&(t=0),r<3&&(n=Date.now());var i=n+t,s={c:e,t:i,n:null};return _n?_n.n=s:Mn=s,_n=s,Dn||(Pn=clearTimeout(Pn),Dn=1,Hn(jn)),s}function jn(){var e=Fn(),t=In()-e;t>24?(isFinite(t)&&(clearTimeout(Pn),Pn=setTimeout(jn,t)),Dn=0):(Dn=1,Hn(jn))}function Fn(){var e=Date.now(),t=Mn;while(t)e>=t.t&&t.c(e-t.t)&&(t.c=null),t=t.n;return e}function In(){var e,t=Mn,n=Infinity;while(t)t.c?(t.t<n&&(n=t.t),t=(e=t).n):t=e?e.n=t.n:Mn=t.n;return _n=e,n}function qn(e,t){return t-(e?Math.ceil(Math.log(e)/Math.LN10):1)}function Un(e,t){var n=Math.pow(10,w(8-t)*3);return{scale:t>8?function(e){return e/n}:function(e){return e*n},symbol:e}}function zn(t){var n=t.decimal,r=t.thousands,i=t.grouping,s=t.currency,o=i&&r?function(e,t){var n=e.length,s=[],o=0,u=i[0],a=0;while(n>0&&u>0){a+u+1>t&&(u=Math.max(1,t-a)),s.push(e.substring(n-=u,n+u));if((a+=u+1)>t)break;u=i[o=(o+1)%i.length]}return s.reverse().join(r)}:P;return function(t){var r=Wn.exec(t),i=r[1]||" ",u=r[2]||">",a=r[3]||"-",f=r[4]||"",l=r[5],c=+r[6],h=r[7],p=r[8],d=r[9],v=1,m="",g="",y=!1,b=!0;p&&(p=+p.substring(1));if(l||i==="0"&&u==="=")l=i="0",u="=";switch(d){case"n":h=!0,d="g";break;case"%":v=100,g="%",d="f";break;case"p":v=100,g="%",d="r";break;case"b":case"o":case"x":case"X":f==="#"&&(m="0"+d.toLowerCase());case"c":b=!1;case"d":y=!0,p=0;break;case"s":v=-1,d="r"}f==="$"&&(m=s[0],g=s[1]),d=="r"&&!p&&(d="g");if(p!=null)if(d=="g")p=Math.max(1,Math.min(21,p));else if(d=="e"||d=="f")p=Math.max(0,Math.min(20,p));d=Xn.get(d)||Vn;var w=l&&h;return function(t){var r=g;if(y&&t%1)return"";var s=t<0||t===0&&1/t<0?(t=-t,"-"):a==="-"?"":a;if(v<0){var f=e.formatPrefix(t,p);t=f.scale(t),r=f.symbol+g}else t*=v;t=d(t,p);var E=t.lastIndexOf("."),S,x;if(E<0){var T=b?t.lastIndexOf("e"):-1;T<0?(S=t,x=""):(S=t.substring(0,T),x=t.substring(T))}else S=t.substring(0,E),x=n+t.substring(E+1);!l&&h&&(S=o(S,Infinity));var N=m.length+S.length+x.length+(w?0:s.length),C=N<c?(new Array(N=c-N+1)).join(i):"";return w&&(S=o(C+S,C.length?c-x.length:Infinity)),s+=m,t=S+x,(u==="<"?s+t+C:u===">"?C+s+t:u==="^"?C.substring(0,N>>=1)+s+t+C.substring(N):s+(w?t:C+t))+r}}}function Vn(e){return e+""}function Kn(){this._=new Date(arguments.length>1?Date.UTC.apply(this,arguments):arguments[0])}function Gn(e,t,n){function r(t){var n=e(t),r=s(n,1);return t-n<r-t?n:r}function i(n){return t(n=e(new Jn(n-1)),1),n}function s(e,n){return t(e=new Jn(+e),n),e}function o(e,r,s){var o=i(e),u=[];if(s>1)while(o<r)n(o)%s||u.push(new Date(+o)),t(o,1);else while(o<r)u.push(new Date(+o)),t(o,1);return u}function u(e,t,n){try{Jn=Kn;var r=new Kn;return r._=e,o(r,t,n)}finally{Jn=Date}}e.floor=e,e.round=r,e.ceil=i,e.offset=s,e.range=o;var a=e.utc=Yn(e);return a.floor=a,a.round=Yn(r),a.ceil=Yn(i),a.offset=Yn(s),a.range=u,e}function Yn(e){return function(t,n){try{Jn=Kn;var r=new Kn;return r._=t,e(r,n)._}finally{Jn=Date}}}function Zn(t){function l(e){function n(n){var r=[],i=-1,s=0,o,u,a;while(++i<t)if(e.charCodeAt(i)===37){r.push(e.slice(s,i)),(u=er[o=e.charAt(++i)])!=null&&(o=e.charAt(++i));if(a=E[o])o=a(n,u==null?o==="e"?" ":"0":u);r.push(o),s=i+1}return r.push(e.slice(s,i)),r.join("")}var t=e.length;return n.parse=function(t){var n={y:1900,m:0,d:1,H:0,M:0,S:0,L:0,Z:null},r=c(n,e,t,0);if(r!=t.length)return null;"p"in n&&(n.H=n.H%12+n.p*12);var i=n.Z!=null&&Jn!==Kn,s=new(i?Kn:Jn);return"j"in n?s.setFullYear(n.y,0,n.j):"W"in n||"U"in n?("w"in n||(n.w="W"in n?1:0),s.setFullYear(n.y,0,1),s.setFullYear(n.y,0,"W"in n?(n.w+6)%7+n.W*7-(s.getDay()+5)%7:n.w+n.U*7-(s.getDay()+6)%7)):s.setFullYear(n.y,n.m,n.d),s.setHours(n.H+(n.Z/100|0),n.M+n.Z%100,n.S,n.L),i?s._:s},n.toString=function(){return e},n}function c(e,t,n,r){var i,s,o,u=0,a=t.length,f=n.length;while(u<a){if(r>=f)return-1;i=t.charCodeAt(u++);if(i===37){o=t.charAt(u++),s=S[o in er?t.charAt(u++):o];if(!s||(r=s(e,n,r))<0)return-1}else if(i!=n.charCodeAt(r++))return-1}return r}function x(e,t,n){v.lastIndex=0;var r=v.exec(t.slice(n));return r?(e.w=m.get(r[0].toLowerCase()),n+r[0].length):-1}function T(e,t,n){p.lastIndex=0;var r=p.exec(t.slice(n));return r?(e.w=d.get(r[0].toLowerCase()),n+r[0].length):-1}function N(e,t,n){b.lastIndex=0;var r=b.exec(t.slice(n));return r?(e.m=w.get(r[0].toLowerCase()),n+r[0].length):-1}function C(e,t,n){g.lastIndex=0;var r=g.exec(t.slice(n));return r?(e.m=y.get(r[0].toLowerCase()),n+r[0].length):-1}function k(e,t,n){return c(e,E.c.toString(),t,n)}function L(e,t,n){return c(e,E.x.toString(),t,n)}function A(e,t,n){return c(e,E.X.toString(),t,n)}function O(e,t,n){var r=h.get(t.slice(n,n+=2).toLowerCase());return r==null?-1:(e.p=r,n)}var n=t.dateTime,r=t.date,i=t.time,s=t.periods,o=t.days,u=t.shortDays,a=t.months,f=t.shortMonths;l.utc=function(e){function n(e){try{Jn=Kn;var n=new Jn;return n._=e,t(n)}finally{Jn=Date}}var t=l(e);return n.parse=function(e){try{Jn=Kn;var n=t.parse(e);return n&&n._}finally{Jn=Date}},n.toString=t.toString,n},l.multi=l.utc.multi=Sr;var h=e.map(),p=ir(o),d=sr(o),v=ir(u),m=sr(u),g=ir(a),y=sr(a),b=ir(f),w=sr(f);s.forEach(function(e,t){h.set(e.toLowerCase(),t)});var E={a:function(e){return u[e.getDay()]},A:function(e){return o[e.getDay()]},b:function(e){return f[e.getMonth()]},B:function(e){return a[e.getMonth()]},c:l(n),d:function(e,t){return rr(e.getDate(),t,2)},e:function(e,t){return rr(e.getDate(),t,2)},H:function(e,t){return rr(e.getHours(),t,2)},I:function(e,t){return rr(e.getHours()%12||12,t,2)},j:function(e,t){return rr(1+$n.dayOfYear(e),t,3)},L:function(e,t){return rr(e.getMilliseconds(),t,3)},m:function(e,t){return rr(e.getMonth()+1,t,2)},M:function(e,t){return rr(e.getMinutes(),t,2)},p:function(e){return s[+(e.getHours()>=12)]},S:function(e,t){return rr(e.getSeconds(),t,2)},U:function(e,t){return rr($n.sundayOfYear(e),t,2)},w:function(e){return e.getDay()},W:function(e,t){return rr($n.mondayOfYear(e),t,2)},x:l(r),X:l(i),y:function(e,t){return rr(e.getFullYear()%100,t,2)},Y:function(e,t){return rr(e.getFullYear()%1e4,t,4)},Z:wr,"%":function(){return"%"}},S={a:x,A:T,b:N,B:C,c:k,d:dr,e:dr,H:mr,I:mr,j:vr,L:br,m:pr,M:gr,p:O,S:yr,U:ur,w:or,W:ar,x:L,X:A,y:lr,Y:fr,Z:cr,"%":Er};return l}function rr(e,t,n){var r=e<0?"-":"",i=(r?-e:e)+"",s=i.length;return r+(s<n?(new Array(n-s+1)).join(t)+i:i)}function ir(t){return new RegExp("^(?:"+t.map(e.requote).join("|")+")","i")}function sr(e){var t=new x,n=-1,r=e.length;while(++n<r)t.set(e[n].toLowerCase(),n);return t}function or(e,t,n){tr.lastIndex=0;var r=tr.exec(t.slice(n,n+1));return r?(e.w=+r[0],n+r[0].length):-1}function ur(e,t,n){tr.lastIndex=0;var r=tr.exec(t.slice(n));return r?(e.U=+r[0],n+r[0].length):-1}function ar(e,t,n){tr.lastIndex=0;var r=tr.exec(t.slice(n));return r?(e.W=+r[0],n+r[0].length):-1}function fr(e,t,n){tr.lastIndex=0;var r=tr.exec(t.slice(n,n+4));return r?(e.y=+r[0],n+r[0].length):-1}function lr(e,t,n){tr.lastIndex=0;var r=tr.exec(t.slice(n,n+2));return r?(e.y=hr(+r[0]),n+r[0].length):-1}function cr(e,t,n){return/^[+-]\d{4}$/.test(t=t.slice(n,n+5))?(e.Z=-t,n+5):-1}function hr(e){return e+(e>68?1900:2e3)}function pr(e,t,n){tr.lastIndex=0;var r=tr.exec(t.slice(n,n+2));return r?(e.m=r[0]-1,n+r[0].length):-1}function dr(e,t,n){tr.lastIndex=0;var r=tr.exec(t.slice(n,n+2));return r?(e.d=+r[0],n+r[0].length):-1}function vr(e,t,n){tr.lastIndex=0;var r=tr.exec(t.slice(n,n+3));return r?(e.j=+r[0],n+r[0].length):-1}function mr(e,t,n){tr.lastIndex=0;var r=tr.exec(t.slice(n,n+2));return r?(e.H=+r[0],n+r[0].length):-1}function gr(e,t,n){tr.lastIndex=0;var r=tr.exec(t.slice(n,n+2));return r?(e.M=+r[0],n+r[0].length):-1}function yr(e,t,n){tr.lastIndex=0;var r=tr.exec(t.slice(n,n+2));return r?(e.S=+r[0],n+r[0].length):-1}function br(e,t,n){tr.lastIndex=0;var r=tr.exec(t.slice(n,n+3));return r?(e.L=+r[0],n+r[0].length):-1}function wr(e){var t=e.getTimezoneOffset(),n=t>0?"-":"+",r=w(t)/60|0,i=w(t)%60;return n+rr(r,"0",2)+rr(i,"0",2)}function Er(e,t,n){nr.lastIndex=0;var r=nr.exec(t.slice(n,n+1));return r?n+r[0].length:-1}function Sr(e){var t=e.length,n=-1;while(++n<t)e[n][0]=this(e[n][0]);return function(t){var n=0,r=e[n];while(!r[1](t))r=e[++n];return r[0](t)}}function Tr(){}function Cr(e,t,n){var r=n.s=e+t,i=r-e,s=r-i;n.t=e-s+(t-i)}function kr(e,t){e&&Ar.hasOwnProperty(e.type)&&Ar[e.type](e,t)}function Or(e,t,n){var r=-1,i=e.length-n,s;t.lineStart();while(++r<i)s=e[r],t.point(s[0],s[1],s[2]);t.lineEnd()}function Mr(e,t){var n=-1,r=e.length;t.polygonStart();while(++n<r)Or(e[n],t,1);t.polygonEnd()}function Hr(){function s(e,t){e*=Pt,t=t*Pt/2+Ot/4;var s=e-n,o=s>=0?1:-1,u=o*s,a=Math.cos(t),f=Math.sin(t),l=i*f,c=r*a+l*Math.cos(u),h=l*o*Math.sin(u);Dr.add(Math.atan2(h,c)),n=e,r=a,i=f}var e,t,n,r,i;Pr.point=function(o,u){Pr.point=s,n=(e=o)*Pt,r=Math.cos(u=(t=u)*Pt/2+Ot/4),i=Math.sin(u)},Pr.lineEnd=function(){s(e,t)}}function Br(e){var t=e[0],n=e[1],r=Math.cos(n);return[r*Math.cos(t),r*Math.sin(t),Math.sin(n)]}function jr(e,t){return e[0]*t[0]+e[1]*t[1]+e[2]*t[2]}function Fr(e,t){return[e[1]*t[2]-e[2]*t[1],e[2]*t[0]-e[0]*t[2],e[0]*t[1]-e[1]*t[0]]}function Ir(e,t){e[0]+=t[0],e[1]+=t[1],e[2]+=t[2]}function qr(e,t){return[e[0]*t,e[1]*t,e[2]*t]}function Rr(e){var t=Math.sqrt(e[0]*e[0]+e[1]*e[1]+e[2]*e[2]);e[0]/=t,e[1]/=t,e[2]/=t}function Ur(e){return[Math.atan2(e[1],e[0]),It(e[2])]}function zr(e,t){return w(e[0]-t[0])<Lt&&w(e[1]-t[1])<Lt}function ni(e,t){e*=Pt;var n=Math.cos(t*=Pt);ri(n*Math.cos(e),n*Math.sin(e),Math.sin(t))}function ri(e,t,n){++Wr,Vr+=(e-Vr)/Wr,$r+=(t-$r)/Wr,Jr+=(n-Jr)/Wr}function ii(){function r(r,i){r*=Pt;var s=Math.cos(i*=Pt),o=s*Math.cos(r),u=s*Math.sin(r),a=Math.sin(i),f=Math.atan2(Math.sqrt((f=t*a-n*u)*f+(f=n*o-e*a)*f+(f=e*u-t*o)*f),e*o+t*u+n*a);Xr+=f,Kr+=f*(e+(e=o)),Qr+=f*(t+(t=u)),Gr+=f*(n+(n=a)),ri(e,t,n)}var e,t,n;ti.point=function(i,s){i*=Pt;var o=Math.cos(s*=Pt);e=o*Math.cos(i),t=o*Math.sin(i),n=Math.sin(s),ti.point=r,ri(e,t,n)}}function si(){ti.point=ni}function oi(){function s(e,t){e*=Pt;var s=Math.cos(t*=Pt),o=s*Math.cos(e),u=s*Math.sin(e),a=Math.sin(t),f=r*a-i*u,l=i*o-n*a,c=n*u-r*o,h=Math.sqrt(f*f+l*l+c*c),p=n*o+r*u+i*a,d=h&&-Ft(p)/h,v=Math.atan2(h,p);Yr+=d*f,Zr+=d*l,ei+=d*c,Xr+=v,Kr+=v*(n+(n=o)),Qr+=v*(r+(r=u)),Gr+=v*(i+(i=a)),ri(n,r,i)}var e,t,n,r,i;ti.point=function(o,u){e=o,t=u,ti.point=s,o*=Pt;var a=Math.cos(u*=Pt);n=a*Math.cos(o),r=a*Math.sin(o),i=Math.sin(u),ri(n,r,i)},ti.lineEnd=function(){s(e,t),ti.lineEnd=si,ti.point=ni}}function ui(e,t){function n(n,r){return n=e(n,r),t(n[0],n[1])}return e.invert&&t.invert&&(n.invert=function(n,r){return n=t.invert(n,r),n&&e.invert(n[0],n[1])}),n}function ai(){return!0}function fi(e,t,n,r,i){var s=[],o=[];e.forEach(function(e){if((t=e.length-1)<=0)return;var t,n=e[0],r=e[t];if(zr(n,r)){i.lineStart();for(var u=0;u<t;++u)i.point((n=e[u])[0],n[1]);i.lineEnd();return}var a=new ci(n,e,null,!0),f=new ci(n,null,a,!1);a.o=f,s.push(a),o.push(f),a=new ci(r,e,null,!1),f=new ci(r,null,a,!0),a.o=f,s.push(a),o.push(f)}),o.sort(t),li(s),li(o);if(!s.length)return;for(var u=0,a=n,f=o.length;u<f;++u)o[u].e=a=!a;var l=s[0],c,h;for(;;){var p=l,d=!0;while(p.v)if((p=p.n)===l)return;c=p.z,i.lineStart();do{p.v=p.o.v=!0;if(p.e){if(d)for(var u=0,f=c.length;u<f;++u)i.point((h=c[u])[0],h[1]);else r(p.x,p.n.x,1,i);p=p.n}else{if(d){c=p.p.z;for(var u=c.length-1;u>=0;--u)i.point((h=c[u])[0],h[1])}else r(p.x,p.p.x,-1,i);p=p.p}p=p.o,c=p.z,d=!d}while(!p.v);i.lineEnd()}}function li(e){if(!(t=e.length))return;var t,n=0,r=e[0],i;while(++n<t)r.n=i=e[n],i.p=r,r=i;r.n=i=e[0],i.p=r}function ci(e,t,n,r){this.x=e,this.z=t,this.o=n,this.e=r,this.v=!1,this.n=this.p=null}function hi(t,n,r,i){return function(s,o){function l(e,n){var r=s(e,n);t(e=r[0],n=r[1])&&o.point(e,n)}function c(e,t){var n=s(e,t);u.point(n[0],n[1])}function h(){f.point=c,u.lineStart()}function p(){f.point=l,u.lineEnd()}function w(e,t){b.push([e,t]);var n=s(e,t);m.point(n[0],n[1])}function E(){m.lineStart(),b=[]}function S(){w(b[0][0],b[0][1]),m.lineEnd();var e=m.clean(),t=v.buffer(),n,r=t.length;b.pop(),y.push(b),b=null;if(!r)return;if(e&1){n=t[0];var r=n.length-1,i=-1,s;if(r>0){g||(o.polygonStart(),g=!0),o.lineStart();while(++i<r)o.point((s=n[i])[0],s[1]);o.lineEnd()}return}r>1&&e&2&&t.push(t.pop().concat(t.shift())),d.push(t.filter(pi))}var u=n(o),a=s.invert(i[0],i[1]),f={point:l,lineStart:h,lineEnd:p,polygonStart:function(){f.point=w,f.lineStart=E,f.lineEnd=S,d=[],y=[]},polygonEnd:function(){f.point=l,f.lineStart=h,f.lineEnd=p,d=e.merge(d);var t=wi(a,y);d.length?(g||(o.polygonStart(),g=!0),fi(d,vi,t,r,o)):t&&(g||(o.polygonStart(),g=!0),o.lineStart(),r(null,null,1,o),o.lineEnd()),g&&(o.polygonEnd(),g=!1),d=y=null},sphere:function(){o.polygonStart(),o.lineStart(),r(null,null,1,o),o.lineEnd(),o.polygonEnd()}},d,v=di(),m=n(v),g=!1,y,b;return f}}function pi(e){return e.length>1}function di(){var e=[],t;return{lineStart:function(){e.push(t=[])},point:function(e,n){t.push([e,n])},lineEnd:F,buffer:function(){var n=e;return e=[],t=null,n},rejoin:function(){e.length>1&&e.push(e.pop().concat(e.shift()))}}}function vi(e,t){return((e=e.x)[0]<0?e[1]-Dt-Lt:Dt-e[1])-((t=t.x)[0]<0?t[1]-Dt-Lt:Dt-t[1])}function gi(e){var t=NaN,n=NaN,r=NaN,i;return{lineStart:function(){e.lineStart(),i=1},point:function(s,o){var u=s>0?Ot:-Ot,a=w(s-t);w(a-Ot)<Lt?(e.point(t,n=(n+o)/2>0?Dt:-Dt),e.point(r,n),e.lineEnd(),e.lineStart(),e.point(u,n),e.point(s,n),i=0):r!==u&&a>=Ot&&(w(t-r)<Lt&&(t-=r*Lt),w(s-u)<Lt&&(s-=u*Lt),n=yi(t,n,s,o),e.point(r,n),e.lineEnd(),e.lineStart(),e.point(u,n),i=0),e.point(t=s,n=o),r=u},lineEnd:function(){e.lineEnd(),t=n=NaN},clean:function(){return 2-i}}}function yi(e,t,n,r){var i,s,o=Math.sin(e-n);return w(o)>Lt?Math.atan((Math.sin(t)*(s=Math.cos(r))*Math.sin(n)-Math.sin(r)*(i=Math.cos(t))*Math.sin(e))/(i*s*o)):(t+r)/2}function bi(e,t,n,r){var i;if(e==null)i=n*Dt,r.point(-Ot,i),r.point(0,i),r.point(Ot,i),r.point(Ot,0),r.point(Ot,-i),r.point(0,-i),r.point(-Ot,-i),r.point(-Ot,0),r.point(-Ot,i);else if(w(e[0]-t[0])>Lt){var s=e[0]<t[0]?Ot:-Ot;i=n*s/2,r.point(-s,i),r.point(0,i),r.point(s,i)}else r.point(t[0],t[1])}function wi(e,t){var n=e[0],r=e[1],i=[Math.sin(n),-Math.cos(n),0],s=0,o=0;Dr.reset();for(var u=0,a=t.length;u<a;++u){var f=t[u],l=f.length;if(!l)continue;var c=f[0],h=c[0],p=c[1]/2+Ot/4,d=Math.sin(p),v=Math.cos(p),m=1;for(;;){m===l&&(m=0),e=f[m];var g=e[0],y=e[1]/2+Ot/4,b=Math.sin(y),w=Math.cos(y),E=g-h,S=E>=0?1:-1,x=S*E,T=x>Ot,N=d*b;Dr.add(Math.atan2(N*S*Math.sin(x),v*w+N*Math.cos(x))),s+=T?E+S*Mt:E;if(T^h>=n^g>=n){var C=Fr(Br(c),Br(e));Rr(C);var k=Fr(i,C);Rr(k);var L=(T^E>=0?-1:1)*It(k[2]);if(r>L||r===L&&(C[0]||C[1]))o+=T^E>=0?1:-1}if(!(m++))break;h=g,d=b,v=w,c=e}}return(s<-Lt||s<Lt&&Dr<-Lt)^o&1}function Ei(e){function s(e,n){return Math.cos(e)*Math.cos(n)>t}function o(e){var t,i,o,f,l;return{lineStart:function(){f=o=!1,l=1},point:function(c,h){var p=[c,h],d,v=s(c,h),m=n?v?0:a(c,h):v?a(c+(c<0?Ot:-Ot),h):0;!t&&(f=o=v)&&e.lineStart();if(v!==o){d=u(t,p);if(zr(t,d)||zr(p,d))p[0]+=Lt,p[1]+=Lt,v=s(p[0],p[1])}if(v!==o)l=0,v?(e.lineStart(),d=u(p,t),e.point(d[0],d[1])):(d=u(t,p),e.point(d[0],d[1]),e.lineEnd()),t=d;else if(r&&t&&n^v){var g;!(m&i)&&(g=u(p,t,!0))&&(l=0,n?(e.lineStart(),e.point(g[0][0],g[0][1]),e.point(g[1][0],g[1][1]),e.lineEnd()):(e.point(g[1][0],g[1][1]),e.lineEnd(),e.lineStart(),e.point(g[0][0],g[0][1])))}v&&(!t||!zr(t,p))&&e.point(p[0],p[1]),t=p,o=v,i=m},lineEnd:function(){o&&e.lineEnd(),t=null},clean:function(){return l|(f&&o)<<1}}}function u(e,n,r){var i=Br(e),s=Br(n),o=[1,0,0],u=Fr(i,s),a=jr(u,u),f=u[0],l=a-f*f;if(!l)return!r&&e;var c=t*a/l,h=-t*f/l,p=Fr(o,u),d=qr(o,c),v=qr(u,h);Ir(d,v);var m=p,g=jr(d,m),y=jr(m,m),b=g*g-y*(jr(d,d)-1);if(b<0)return;var E=Math.sqrt(b),S=qr(m,(-g-E)/y);Ir(S,d),S=Ur(S);if(!r)return S;var x=e[0],T=n[0],N=e[1],C=n[1],k;T<x&&(k=x,x=T,T=k);var L=T-x,A=w(L-Ot)<Lt,O=A||L<Lt;!A&&C<N&&(k=N,N=C,C=k);if(O?A?N+C>0^S[1]<(w(S[0]-x)<Lt?N:C):N<=S[1]&&S[1]<=C:L>Ot^(x<=S[0]&&S[0]<=T)){var M=qr(m,(-g+E)/y);return Ir(M,d),[S,Ur(M)]}}function a(t,r){var i=n?e:Ot-e,s=0;return t<-i?s|=1:t>i&&(s|=2),r<-i?s|=4:r>i&&(s|=8),s}var t=Math.cos(e),
n=t>0,r=w(t)>Lt,i=is(e,6*Pt);return hi(s,o,i,n?[0,-e]:[-Ot,e-Ot])}function Si(e,t,n,r){return function(i){var s=i.a,o=i.b,u=s.x,a=s.y,f=o.x,l=o.y,c=0,h=1,p=f-u,d=l-a,v;v=e-u;if(!p&&v>0)return;v/=p;if(p<0){if(v<c)return;v<h&&(h=v)}else if(p>0){if(v>h)return;v>c&&(c=v)}v=n-u;if(!p&&v<0)return;v/=p;if(p<0){if(v>h)return;v>c&&(c=v)}else if(p>0){if(v<c)return;v<h&&(h=v)}v=t-a;if(!d&&v>0)return;v/=d;if(d<0){if(v<c)return;v<h&&(h=v)}else if(d>0){if(v>h)return;v>c&&(c=v)}v=r-a;if(!d&&v<0)return;v/=d;if(d<0){if(v>h)return;v>c&&(c=v)}else if(d>0){if(v<c)return;v<h&&(h=v)}return c>0&&(i.a={x:u+c*p,y:a+c*d}),h<1&&(i.b={x:u+h*p,y:a+h*d}),i}}function Ti(t,n,r,i){function s(e,i){return w(e[0]-t)<Lt?i>0?0:3:w(e[0]-r)<Lt?i>0?2:1:w(e[1]-n)<Lt?i>0?1:0:i>0?3:2}function o(e,t){return u(e.x,t.x)}function u(e,t){var n=s(e,1),r=s(t,1);return n!==r?n-r:n===0?t[1]-e[1]:n===1?e[0]-t[0]:n===2?e[1]-t[1]:t[0]-e[0]}return function(a){function m(e){var t=0,n=p.length,r=e[1];for(var i=0;i<n;++i)for(var s=1,o=p[i],u=o.length,a=o[0],f;s<u;++s)f=o[s],a[1]<=r?f[1]>r&&jt(a,f,e)>0&&++t:f[1]<=r&&jt(a,f,e)<0&&--t,a=f;return t!==0}function g(e,o,a,f){var l=0,c=0;if(e==null||(l=s(e,a))!==(c=s(o,a))||u(e,o)<0^a>0){do f.point(l===0||l===3?t:r,l>1?i:n);while((l=(l+a+4)%4)!==c)}else f.point(o[0],o[1])}function y(e,s){return t<=e&&e<=r&&n<=s&&s<=i}function b(e,t){y(e,t)&&a.point(e,t)}function L(){v.point=O,p&&p.push(d=[]),C=!0,N=!1,x=T=NaN}function A(){h&&(O(w,E),S&&N&&l.rejoin(),h.push(l.buffer())),v.point=b,N&&a.lineEnd()}function O(e,t){e=Math.max(-xi,Math.min(xi,e)),t=Math.max(-xi,Math.min(xi,t));var n=y(e,t);p&&d.push([e,t]);if(C)w=e,E=t,S=n,C=!1,n&&(a.lineStart(),a.point(e,t));else if(n&&N)a.point(e,t);else{var r={a:{x:x,y:T},b:{x:e,y:t}};c(r)?(N||(a.lineStart(),a.point(r.a.x,r.a.y)),a.point(r.b.x,r.b.y),n||a.lineEnd(),k=!1):n&&(a.lineStart(),a.point(e,t),k=!1)}x=e,T=t,N=n}var f=a,l=di(),c=Si(t,n,r,i),h,p,d,v={point:b,lineStart:L,lineEnd:A,polygonStart:function(){a=l,h=[],p=[],k=!0},polygonEnd:function(){a=f,h=e.merge(h);var n=m([t,i]),r=k&&n,s=h.length;if(r||s)a.polygonStart(),r&&(a.lineStart(),g(null,null,1,a),a.lineEnd()),s&&fi(h,o,n,g,a),a.polygonEnd();h=p=d=null}},w,E,S,x,T,N,C,k;return v}}function Ni(e){var t=0,n=Ot/3,r=Qi(e),i=r(t,n);return i.parallels=function(e){return arguments.length?r(t=e[0]*Ot/180,n=e[1]*Ot/180):[t/Ot*180,n/Ot*180]},i}function Ci(e,t){function o(e,t){var n=Math.sqrt(i-2*r*Math.sin(t))/r;return[n*Math.sin(e*=r),s-n*Math.cos(e)]}var n=Math.sin(e),r=(n+Math.sin(t))/2,i=1+n*(2*r-n),s=Math.sqrt(i)/r;return o.invert=function(e,t){var n=s-t;return[Math.atan2(e,n)/r,It((i-(e*e+n*n)*r*r)/(2*r))]},o}function Oi(){function i(e,t){Li+=r*e-n*t,n=e,r=t}var e,t,n,r;Ai.point=function(s,o){Ai.point=i,e=n=s,t=r=o},Ai.lineEnd=function(){i(e,t)}}function Bi(e,t){e<Mi&&(Mi=e),e>Di&&(Di=e),t<_i&&(_i=t),t>Pi&&(Pi=t)}function ji(){function r(n,r){t.push("M",n,",",r,e)}function i(e,r){t.push("M",e,",",r),n.point=s}function s(e,n){t.push("L",e,",",n)}function o(){n.point=r}function u(){t.push("Z")}var e=Fi(4.5),t=[],n={point:r,lineStart:function(){n.point=i},lineEnd:o,polygonStart:function(){n.lineEnd=u},polygonEnd:function(){n.lineEnd=o,n.point=r},pointRadius:function(t){return e=Fi(t),n},result:function(){if(t.length){var e=t.join("");return t=[],e}}};return n}function Fi(e){return"m0,"+e+"a"+e+","+e+" 0 1,1 0,"+ -2*e+"a"+e+","+e+" 0 1,1 0,"+2*e+"z"}function qi(e,t){Vr+=e,$r+=t,++Jr}function Ri(){function n(n,r){var i=n-e,s=r-t,o=Math.sqrt(i*i+s*s);Kr+=o*(e+n)/2,Qr+=o*(t+r)/2,Gr+=o,qi(e=n,t=r)}var e,t;Ii.point=function(r,i){Ii.point=n,qi(e=r,t=i)}}function Ui(){Ii.point=qi}function zi(){function i(e,t){var i=e-n,s=t-r,o=Math.sqrt(i*i+s*s);Kr+=o*(n+e)/2,Qr+=o*(r+t)/2,Gr+=o,o=r*e-n*t,Yr+=o*(n+e),Zr+=o*(r+t),ei+=o*3,qi(n=e,r=t)}var e,t,n,r;Ii.point=function(s,o){Ii.point=i,qi(e=n=s,t=r=o)},Ii.lineEnd=function(){i(e,t)}}function Wi(e){function r(n,r){e.moveTo(n+t,r),e.arc(n,r,t,0,Mt)}function i(t,r){e.moveTo(t,r),n.point=s}function s(t,n){e.lineTo(t,n)}function o(){n.point=r}function u(){e.closePath()}var t=4.5,n={point:r,lineStart:function(){n.point=i},lineEnd:o,polygonStart:function(){n.lineEnd=u},polygonEnd:function(){n.lineEnd=o,n.point=r},pointRadius:function(e){return t=e,n},result:F};return n}function Xi(e){function i(e){return(r?o:s)(e)}function s(t){return Ji(t,function(n,r){n=e(n,r),t.point(n[0],n[1])})}function o(t){function y(n,r){n=e(n,r),t.point(n[0],n[1])}function b(){h=NaN,g.point=w,t.lineStart()}function w(n,i){var s=Br([n,i]),o=e(n,i);u(h,p,c,d,v,m,h=o[0],p=o[1],c=n,d=s[0],v=s[1],m=s[2],r,t),t.point(h,p)}function E(){g.point=y,t.lineEnd()}function S(){b(),g.point=x,g.lineEnd=T}function x(e,t){w(n=e,i=t),s=h,o=p,a=d,f=v,l=m,g.point=w}function T(){u(h,p,c,d,v,m,s,o,n,a,f,l,r,t),g.lineEnd=E,E()}var n,i,s,o,a,f,l,c,h,p,d,v,m,g={point:y,lineStart:b,lineEnd:E,polygonStart:function(){t.polygonStart(),g.lineStart=S},polygonEnd:function(){t.polygonEnd(),g.lineStart=b}};return g}function u(r,i,s,o,a,f,l,c,h,p,d,v,m,g){var y=l-r,b=c-i,E=y*y+b*b;if(E>4*t&&m--){var S=o+p,x=a+d,T=f+v,N=Math.sqrt(S*S+x*x+T*T),C=Math.asin(T/=N),k=w(w(T)-1)<Lt||w(s-h)<Lt?(s+h)/2:Math.atan2(x,S),L=e(k,C),A=L[0],O=L[1],M=A-r,_=O-i,D=b*M-y*_;if(D*D/E>t||w((y*M+b*_)/E-.5)>.3||o*p+a*d+f*v<n)u(r,i,s,o,a,f,A,O,k,S/=N,x/=N,T,m,g),g.point(A,O),u(A,O,k,S,x,T,l,c,h,p,d,v,m,g)}}var t=.5,n=Math.cos(30*Pt),r=16;return i.precision=function(e){return arguments.length?(r=(t=e*e)>0&&16,i):Math.sqrt(t)},i}function Vi(e){var t=Xi(function(t,n){return e([t*Ht,n*Ht])});return function(e){return Gi(t(e))}}function $i(e){this.stream=e}function Ji(e,t){return{point:t,sphere:function(){e.sphere()},lineStart:function(){e.lineStart()},lineEnd:function(){e.lineEnd()},polygonStart:function(){e.polygonStart()},polygonEnd:function(){e.polygonEnd()}}}function Ki(e){return Qi(function(){return e})()}function Qi(t){function E(e){return e=i(e[0]*Pt,e[1]*Pt),[e[0]*o+d,v-e[1]*o]}function S(e){return e=i.invert((e[0]-d)/o,(v-e[1])/o),e&&[e[0]*Ht,e[1]*Ht]}function x(){i=ui(r=es(c,h,p),n);var e=n(f,l);return d=u-e[0]*o,v=a+e[1]*o,T()}function T(){return w&&(w.valid=!1,w=null),E}var n,r,i,s=Xi(function(e,t){return e=n(e,t),[e[0]*o+d,v-e[1]*o]}),o=150,u=480,a=250,f=0,l=0,c=0,h=0,p=0,d,v,m=mi,g=P,y=null,b=null,w;return E.stream=function(e){return w&&(w.valid=!1),w=Gi(m(r,s(g(e)))),w.valid=!0,w},E.clipAngle=function(e){return arguments.length?(m=e==null?(y=e,mi):Ei((y=+e)*Pt),T()):y},E.clipExtent=function(e){return arguments.length?(b=e,g=e?Ti(e[0][0],e[0][1],e[1][0],e[1][1]):P,T()):b},E.scale=function(e){return arguments.length?(o=+e,x()):o},E.translate=function(e){return arguments.length?(u=+e[0],a=+e[1],x()):[u,a]},E.center=function(e){return arguments.length?(f=e[0]%360*Pt,l=e[1]%360*Pt,x()):[f*Ht,l*Ht]},E.rotate=function(e){return arguments.length?(c=e[0]%360*Pt,h=e[1]%360*Pt,p=e.length>2?e[2]%360*Pt:0,x()):[c*Ht,h*Ht,p*Ht]},e.rebind(E,s,"precision"),function(){return n=t.apply(this,arguments),E.invert=n.invert&&S,x()}}function Gi(e){return Ji(e,function(t,n){e.point(t*Pt,n*Pt)})}function Yi(e,t){return[e,t]}function Zi(e,t){return[e>Ot?e-Mt:e<-Ot?e+Mt:e,t]}function es(e,t,n){return e?t||n?ui(ns(e),rs(t,n)):ns(e):t||n?rs(t,n):Zi}function ts(e){return function(t,n){return t+=e,[t>Ot?t-Mt:t<-Ot?t+Mt:t,n]}}function ns(e){var t=ts(e);return t.invert=ts(-e),t}function rs(e,t){function o(e,t){var o=Math.cos(t),u=Math.cos(e)*o,a=Math.sin(e)*o,f=Math.sin(t),l=f*n+u*r;return[Math.atan2(a*i-l*s,u*n-f*r),It(l*i+a*s)]}var n=Math.cos(e),r=Math.sin(e),i=Math.cos(t),s=Math.sin(t);return o.invert=function(e,t){var o=Math.cos(t),u=Math.cos(e)*o,a=Math.sin(e)*o,f=Math.sin(t),l=f*i-a*s;return[Math.atan2(a*i+f*s,u*n+l*r),It(l*n-u*r)]},o}function is(e,t){var n=Math.cos(e),r=Math.sin(e);return function(i,s,o,u){var a=o*t;if(i!=null){i=ss(n,i),s=ss(n,s);if(o>0?i<s:i>s)i+=o*Mt}else i=e+o*Mt,s=e-.5*a;for(var f,l=i;o>0?l>s:l<s;l-=a)u.point((f=Ur([n,-r*Math.cos(l),-r*Math.sin(l)]))[0],f[1])}}function ss(e,t){var n=Br(t);n[0]-=e,Rr(n);var r=Ft(-n[1]);return((-n[2]<0?-r:r)+2*Math.PI-Lt)%(2*Math.PI)}function os(t,n,r){var i=e.range(t,n-Lt,r).concat(n);return function(e){return i.map(function(t){return[e,t]})}}function us(t,n,r){var i=e.range(t,n-Lt,r).concat(n);return function(e){return i.map(function(t){return[t,e]})}}function as(e){return e.source}function fs(e){return e.target}function ls(e,t,n,r){var i=Math.cos(t),s=Math.sin(t),o=Math.cos(r),u=Math.sin(r),a=i*Math.cos(e),f=i*Math.sin(e),l=o*Math.cos(n),c=o*Math.sin(n),h=2*Math.asin(Math.sqrt(zt(r-t)+i*o*zt(n-e))),p=1/Math.sin(h),d=h?function(e){var t=Math.sin(e*=h)*p,n=Math.sin(h-e)*p,r=n*a+t*l,i=n*f+t*c,o=n*s+t*u;return[Math.atan2(i,r)*Ht,Math.atan2(o,Math.sqrt(r*r+i*i))*Ht]}:function(){return[e*Ht,t*Ht]};return d.distance=h,d}function ps(){function r(r,i){var s=Math.sin(i*=Pt),o=Math.cos(i),u=w((r*=Pt)-e),a=Math.cos(u);cs+=Math.atan2(Math.sqrt((u=o*Math.sin(u))*u+(u=n*s-t*o*a)*u),t*s+n*o*a),e=r,t=s,n=o}var e,t,n;hs.point=function(i,s){e=i*Pt,t=Math.sin(s*=Pt),n=Math.cos(s),hs.point=r},hs.lineEnd=function(){hs.point=hs.lineEnd=F}}function ds(e,t){function n(t,n){var r=Math.cos(t),i=Math.cos(n),s=e(r*i);return[s*i*Math.sin(t),s*Math.sin(n)]}return n.invert=function(e,n){var r=Math.sqrt(e*e+n*n),i=t(r),s=Math.sin(i),o=Math.cos(i);return[Math.atan2(e*s,r*o),Math.asin(r&&n*s/r)]},n}function gs(e,t){function o(e,t){s>0?t<-Dt+Lt&&(t=-Dt+Lt):t>Dt-Lt&&(t=Dt-Lt);var n=s/Math.pow(r(t),i);return[n*Math.sin(i*e),s-n*Math.cos(i*e)]}var n=Math.cos(e),r=function(e){return Math.tan(Ot/4+e/2)},i=e===t?Math.sin(e):Math.log(n/Math.cos(t))/Math.log(r(t)/r(e)),s=n*Math.pow(r(e),i)/i;return i?(o.invert=function(e,t){var n=s-t,r=Bt(i)*Math.sqrt(e*e+n*n);return[Math.atan2(e,n)/i,2*Math.atan(Math.pow(s/r,1/i))-Dt]},o):ws}function ys(e,t){function s(e,t){var n=i-t;return[n*Math.sin(r*e),i-n*Math.cos(r*e)]}var n=Math.cos(e),r=e===t?Math.sin(e):(n-Math.cos(t))/(t-e),i=n/r+e;return w(r)<Lt?Yi:(s.invert=function(e,t){var n=i-t;return[Math.atan2(e,n)/r,i-Bt(r)*Math.sqrt(e*e+n*n)]},s)}function ws(e,t){return[e,Math.log(Math.tan(Ot/4+t/2))]}function Es(e){var t=Ki(e),n=t.scale,r=t.translate,i=t.clipExtent,s;return t.scale=function(){var e=n.apply(t,arguments);return e===t?s?t.clipExtent(null):t:e},t.translate=function(){var e=r.apply(t,arguments);return e===t?s?t.clipExtent(null):t:e},t.clipExtent=function(e){var o=i.apply(t,arguments);if(o===t){if(s=e==null){var u=Ot*n(),a=r();i([[a[0]-u,a[1]-u],[a[0]+u,a[1]+u]])}}else s&&(o=null);return o},t.clipExtent(null)}function Ts(e,t){return[Math.log(Math.tan(Ot/4+t/2)),-e]}function Ns(e){return e[0]}function Cs(e){return e[1]}function ks(e){var t=e.length,n=[0,1],r=2;for(var i=2;i<t;i++){while(r>1&&jt(e[n[r-2]],e[n[r-1]],e[i])<=0)--r;n[r++]=i}return n.slice(0,r)}function Ls(e,t){return e[0]-t[0]||e[1]-t[1]}function Os(e,t,n){return(n[0]-t[0])*(e[1]-t[1])<(n[1]-t[1])*(e[0]-t[0])}function Ms(e,t,n,r){var i=e[0],s=n[0],o=t[0]-i,u=r[0]-s,a=e[1],f=n[1],l=t[1]-a,c=r[1]-f,h=(u*(a-f)-c*(i-s))/(c*o-u*l);return[i+h*o,a+h*l]}function _s(e){var t=e[0],n=e[e.length-1];return!(t[0]-n[0]||t[1]-n[1])}function qs(){uo(this),this.edge=this.site=this.circle=null}function Rs(e){var t=Bs.pop()||new qs;return t.site=e,t}function Us(e){Ys(e),Hs.remove(e),Bs.push(e),uo(e)}function zs(e){var t=e.circle,n=t.x,r=t.cy,i={x:n,y:r},s=e.P,o=e.N,u=[e];Us(e);var a=s;while(a.circle&&w(n-a.circle.x)<Lt&&w(r-a.circle.cy)<Lt)s=a.P,u.unshift(a),Us(a),a=s;u.unshift(a),Ys(a);var f=o;while(f.circle&&w(n-f.circle.x)<Lt&&w(r-f.circle.cy)<Lt)o=f.N,u.push(f),Us(f),f=o;u.push(f),Ys(f);var l=u.length,c;for(c=1;c<l;++c)f=u[c],a=u[c-1],io(f.edge,a.site,f.site,i);a=u[0],f=u[l-1],f.edge=no(a.site,f.site,null,i),Gs(a),Gs(f)}function Ws(e){var t=e.x,n=e.y,r,i,s,o,u=Hs._;while(u){s=Xs(u,n)-t;if(s>Lt)u=u.L;else{o=t-Vs(u,n);if(!(o>Lt)){s>-Lt?(r=u.P,i=u):o>-Lt?(r=u,i=u.N):r=i=u;break}if(!u.R){r=u;break}u=u.R}}var a=Rs(e);Hs.insert(r,a);if(!r&&!i)return;if(r===i){Ys(r),i=Rs(r.site),Hs.insert(a,i),a.edge=i.edge=no(r.site,a.site),Gs(r),Gs(i);return}if(!i){a.edge=no(r.site,a.site);return}Ys(r),Ys(i);var f=r.site,l=f.x,c=f.y,h=e.x-l,p=e.y-c,d=i.site,v=d.x-l,m=d.y-c,g=2*(h*m-p*v),y=h*h+p*p,b=v*v+m*m,w={x:(m*y-p*b)/g+l,y:(h*b-v*y)/g+c};io(i.edge,f,d,w),a.edge=no(f,e,null,w),i.edge=no(e,d,null,w),Gs(r),Gs(i)}function Xs(e,t){var n=e.site,r=n.x,i=n.y,s=i-t;if(!s)return r;var o=e.P;if(!o)return-Infinity;n=o.site;var u=n.x,a=n.y,f=a-t;if(!f)return u;var l=u-r,c=1/s-1/f,h=l/f;return c?(-h+Math.sqrt(h*h-2*c*(l*l/(-2*f)-a+f/2+i-s/2)))/c+r:(r+u)/2}function Vs(e,t){var n=e.N;if(n)return Xs(n,t);var r=e.site;return r.y===t?r.x:Infinity}function $s(e){this.site=e,this.edges=[]}function Js(e){var t=e[0][0],n=e[1][0],r=e[0][1],i=e[1][1],s,o,u,a,f=Ps,l=f.length,c,h,p,d,v,m;while(l--){c=f[l];if(!c||!c.prepare())continue;p=c.edges,d=p.length,h=0;while(h<d){m=p[h].end(),u=m.x,a=m.y,v=p[++h%d].start(),s=v.x,o=v.y;if(w(u-s)>Lt||w(a-o)>Lt)p.splice(h,0,new so(ro(c.site,m,w(u-t)<Lt&&i-a>Lt?{x:t,y:w(s-t)<Lt?o:i}:w(a-i)<Lt&&n-u>Lt?{x:w(o-i)<Lt?s:n,y:i}:w(u-n)<Lt&&a-r>Lt?{x:n,y:w(s-n)<Lt?o:r}:w(a-r)<Lt&&u-t>Lt?{x:w(o-r)<Lt?s:t,y:r}:null),c.site,null)),++d}}}function Ks(e,t){return t.angle-e.angle}function Qs(){uo(this),this.x=this.y=this.arc=this.site=this.cy=null}function Gs(e){var t=e.P,n=e.N;if(!t||!n)return;var r=t.site,i=e.site,s=n.site;if(r===s)return;var o=i.x,u=i.y,a=r.x-o,f=r.y-u,l=s.x-o,c=s.y-u,h=2*(a*c-f*l);if(h>=-At)return;var p=a*a+f*f,d=l*l+c*c,v=(c*p-f*d)/h,m=(a*d-l*p)/h,c=m+u,g=Is.pop()||new Qs;g.arc=e,g.site=i,g.x=v+o,g.y=c+Math.sqrt(v*v+m*m),g.cy=c,e.circle=g;var y=null,b=Fs._;while(b)if(g.y<b.y||g.y===b.y&&g.x<=b.x){if(!b.L){y=b.P;break}b=b.L}else{if(!b.R){y=b;break}b=b.R}Fs.insert(y,g),y||(js=g)}function Ys(e){var t=e.circle;t&&(t.P||(js=t.N),Fs.remove(t),Is.push(t),uo(t),e.circle=null)}function Zs(e){var t=Ds,n=Si(e[0][0],e[0][1],e[1][0],e[1][1]),r=t.length,i;while(r--){i=t[r];if(!eo(i,e)||!n(i)||w(i.a.x-i.b.x)<Lt&&w(i.a.y-i.b.y)<Lt)i.a=i.b=null,t.splice(r,1)}}function eo(e,t){var n=e.b;if(n)return!0;var r=e.a,i=t[0][0],s=t[1][0],o=t[0][1],u=t[1][1],a=e.l,f=e.r,l=a.x,c=a.y,h=f.x,p=f.y,d=(l+h)/2,v=(c+p)/2,m,g;if(p===c){if(d<i||d>=s)return;if(l>h){if(!r)r={x:d,y:o};else if(r.y>=u)return;n={x:d,y:u}}else{if(!r)r={x:d,y:u};else if(r.y<o)return;n={x:d,y:o}}}else{m=(l-h)/(p-c),g=v-m*d;if(m<-1||m>1)if(l>h){if(!r)r={x:(o-g)/m,y:o};else if(r.y>=u)return;n={x:(u-g)/m,y:u}}else{if(!r)r={x:(u-g)/m,y:u};else if(r.y<o)return;n={x:(o-g)/m,y:o}}else if(c<p){if(!r)r={x:i,y:m*i+g};else if(r.x>=s)return;n={x:s,y:m*s+g}}else{if(!r)r={x:s,y:m*s+g};else if(r.x<i)return;n={x:i,y:m*i+g}}}return e.a=r,e.b=n,!0}function to(e,t){this.l=e,this.r=t,this.a=this.b=null}function no(e,t,n,r){var i=new to(e,t);return Ds.push(i),n&&io(i,e,t,n),r&&io(i,t,e,r),Ps[e.i].edges.push(new so(i,e,t)),Ps[t.i].edges.push(new so(i,t,e)),i}function ro(e,t,n){var r=new to(e,null);return r.a=t,r.b=n,Ds.push(r),r}function io(e,t,n,r){!e.a&&!e.b?(e.a=r,e.l=t,e.r=n):e.l===n?e.b=r:e.a=r}function so(e,t,n){var r=e.a,i=e.b;this.edge=e,this.site=t,this.angle=n?Math.atan2(n.y-t.y,n.x-t.x):e.l===t?Math.atan2(i.x-r.x,r.y-i.y):Math.atan2(r.x-i.x,i.y-r.y)}function oo(){this._=null}function uo(e){e.U=e.C=e.L=e.R=e.P=e.N=null}function ao(e,t){var n=t,r=t.R,i=n.U;i?i.L===n?i.L=r:i.R=r:e._=r,r.U=i,n.U=r,n.R=r.L,n.R&&(n.R.U=n),r.L=n}function fo(e,t){var n=t,r=t.L,i=n.U;i?i.L===n?i.L=r:i.R=r:e._=r,r.U=i,n.U=r,n.L=r.R,n.L&&(n.L.U=n),r.R=n}function lo(e){while(e.L)e=e.L;return e}function co(e,t){var n=e.sort(ho).pop(),r,i,s;Ds=[],Ps=new Array(e.length),Hs=new oo,Fs=new oo;for(;;){s=js;if(n&&(!s||n.y<s.y||n.y===s.y&&n.x<s.x)){if(n.x!==r||n.y!==i)Ps[n.i]=new $s(n),Ws(n),r=n.x,i=n.y;n=e.pop()}else{if(!s)break;zs(s.arc)}}t&&(Zs(t),Js(t));var o={cells:Ps,edges:Ds};return Hs=Fs=Ds=Ps=null,o}function ho(e,t){return t.y-e.y||t.x-e.x}function vo(e,t,n){return(e.x-n.x)*(t.y-e.y)-(e.x-t.x)*(n.y-e.y)}function mo(e){return e.x}function go(e){return e.y}function yo(){return{leaf:!0,nodes:[],point:null,x:null,y:null}}function bo(e,t,n,r,i,s){if(!e(t,n,r,i,s)){var o=(n+i)*.5,u=(r+s)*.5,a=t.nodes;a[0]&&bo(e,a[0],n,r,o,u),a[1]&&bo(e,a[1],o,r,i,u),a[2]&&bo(e,a[2],n,u,o,s),a[3]&&bo(e,a[3],o,u,i,s)}}function wo(e,t,n,r,i,s,o){var u=Infinity,a;return function f(e,l,c,h,p){if(l>s||c>o||h<r||p<i)return;if(d=e.point){var d,v=t-e.x,m=n-e.y,g=v*v+m*m;if(g<u){var y=Math.sqrt(u=g);r=t-y,i=n-y,s=t+y,o=n+y,a=d}}var b=e.nodes,w=(l+h)*.5,E=(c+p)*.5,S=t>=w,x=n>=E;for(var T=x<<1|S,N=T+4;T<N;++T)if(e=b[T&3])switch(T&3){case 0:f(e,l,c,w,E);break;case 1:f(e,w,c,h,E);break;case 2:f(e,l,E,w,p);break;case 3:f(e,w,E,h,p)}}(e,r,i,s,o),a}function Eo(t,n){t=e.rgb(t),n=e.rgb(n);var r=t.r,i=t.g,s=t.b,o=n.r-r,u=n.g-i,a=n.b-s;return function(e){return"#"+bn(Math.round(r+o*e))+bn(Math.round(i+u*e))+bn(Math.round(s+a*e))}}function So(e,t){var n={},r={},i;for(i in e)i in t?n[i]=ko(e[i],t[i]):r[i]=e[i];for(i in t)i in e||(r[i]=t[i]);return function(e){for(i in n)r[i]=n[i](e);return r}}function xo(e,t){return e=+e,t=+t,function(n){return e*(1-n)+t*n}}function To(e,t){var n=No.lastIndex=Co.lastIndex=0,r,i,s,o=-1,u=[],a=[];e+="",t+="";while((r=No.exec(e))&&(i=Co.exec(t)))(s=i.index)>n&&(s=t.slice(n,s),u[o]?u[o]+=s:u[++o]=s),(r=r[0])===(i=i[0])?u[o]?u[o]+=i:u[++o]=i:(u[++o]=null,a.push({i:o,x:xo(r,i)})),n=Co.lastIndex;return n<t.length&&(s=t.slice(n),u[o]?u[o]+=s:u[++o]=s),u.length<2?a[0]?(t=a[0].x,function(e){return t(e)+""}):function(){return t}:(t=a.length,function(e){for(var n=0,r;n<t;++n)u[(r=a[n]).i]=r.x(e);return u.join("")})}function ko(t,n){var r=e.interpolators.length,i;while(--r>=0&&!(i=e.interpolators[r](t,n)));return i}function Lo(e,t){var n=[],r=[],i=e.length,s=t.length,o=Math.min(e.length,t.length),u;for(u=0;u<o;++u)n.push(ko(e[u],t[u]));for(;u<i;++u)r[u]=e[u];for(;u<s;++u)r[u]=t[u];return function(e){for(u=0;u<o;++u)r[u]=n[u](e);return r}}function _o(e){return function(t){return t<=0?0:t>=1?1:e(t)}}function Do(e){return function(t){return 1-e(1-t)}}function Po(e){return function(t){return.5*(t<.5?e(2*t):2-e(2-2*t))}}function Ho(e){return e*e}function Bo(e){return e*e*e}function jo(e){if(e<=0)return 0;if(e>=1)return 1;var t=e*e,n=t*e;return 4*(e<.5?n:3*(e-t)+n-.75)}function Fo(e){return function(t){return Math.pow(t,e)}}function Io(e){return 1-Math.cos(e*Dt)}function qo(e){return Math.pow(2,10*(e-1))}function Ro(e){return 1-Math.sqrt(1-e*e)}function Uo(e,t){var n;return arguments.length<2&&(t=.45),arguments.length?n=t/Mt*Math.asin(1/e):(e=1,n=t/4),function(r){return 1+e*Math.pow(2,-10*r)*Math.sin((r-n)*Mt/t)}}function zo(e){return e||(e=1.70158),function(t){return t*t*((e+1)*t-e)}}function Wo(e){return e<1/2.75?7.5625*e*e:e<2/2.75?7.5625*(e-=1.5/2.75)*e+.75:e<2.5/2.75?7.5625*(e-=2.25/2.75)*e+.9375:7.5625*(e-=2.625/2.75)*e+.984375}function Xo(t,n){t=e.hcl(t),n=e.hcl(n);var r=t.h,i=t.c,s=t.l,o=n.h-r,u=n.c-i,a=n.l-s;return isNaN(u)&&(u=0,i=isNaN(i)?n.c:i),isNaN(o)?(o=0,r=isNaN(r)?n.h:r):o>180?o-=360:o<-180&&(o+=360),function(e){return nn(r+o*e,i+u*e,s+a*e)+""}}function Vo(t,n){t=e.hsl(t),n=e.hsl(n);var r=t.h,i=t.s,s=t.l,o=n.h-r,u=n.s-i,a=n.l-s;return isNaN(u)&&(u=0,i=isNaN(i)?n.s:i),isNaN(o)?(o=0,r=isNaN(r)?n.h:r):o>180?o-=360:o<-180&&(o+=360),function(e){return Zt(r+o*e,i+u*e,s+a*e)+""}}function $o(t,n){t=e.lab(t),n=e.lab(n);var r=t.l,i=t.a,s=t.b,o=n.l-r,u=n.a-i,a=n.b-s;return function(e){return ln(r+o*e,i+u*e,s+a*e)+""}}function Jo(e,t){return t-=e,function(n){return Math.round(e+t*n)}}function Ko(e){var t=[e.a,e.b],n=[e.c,e.d],r=Go(t),i=Qo(t,n),s=Go(Yo(n,t,-i))||0;t[0]*n[1]<n[0]*t[1]&&(t[0]*=-1,t[1]*=-1,r*=-1,i*=-1),this.rotate=(r?Math.atan2(t[1],t[0]):Math.atan2(-n[0],n[1]))*Ht,this.translate=[e.e,e.f],this.scale=[r,s],this.skew=s?Math.atan2(i,s)*Ht:0}function Qo(e,t){return e[0]*t[0]+e[1]*t[1]}function Go(e){var t=Math.sqrt(Qo(e,e));return t&&(e[0]/=t,e[1]/=t),t}function Yo(e,t,n){return e[0]+=n*t[0],e[1]+=n*t[1],e}function eu(e){return e.length?e.pop()+",":""}function tu(e,t,n,r){if(e[0]!==t[0]||e[1]!==t[1]){var i=n.push("translate(",null,",",null,")");r.push({i:i-4,x:xo(e[0],t[0])},{i:i-2,x:xo(e[1],t[1])})}else(t[0]||t[1])&&n.push("translate("+t+")")}function nu(e,t,n,r){e!==t?(e-t>180?t+=360:t-e>180&&(e+=360),r.push({i:n.push(eu(n)+"rotate(",null,")")-2,x:xo(e,t)})):t&&n.push(eu(n)+"rotate("+t+")")}function ru(e,t,n,r){e!==t?r.push({i:n.push(eu(n)+"skewX(",null,")")-2,x:xo(e,t)}):t&&n.push(eu(n)+"skewX("+t+")")}function iu(e,t,n,r){if(e[0]!==t[0]||e[1]!==t[1]){var i=n.push(eu(n)+"scale(",null,",",null,")");r.push({i:i-4,x:xo(e[0],t[0])},{i:i-2,x:xo(e[1],t[1])})}else(t[0]!==1||t[1]!==1)&&n.push(eu(n)+"scale("+t+")")}function su(t,n){var r=[],i=[];return t=e.transform(t),n=e.transform(n),tu(t.translate,n.translate,r,i),nu(t.rotate,n.rotate,r,i),ru(t.skew,n.skew,r,i),iu(t.scale,n.scale,r,i),t=n=null,function(e){var t=-1,n=i.length,s;while(++t<n)r[(s=i[t]).i]=s.x(e);return r.join("")}}function ou(e,t){return t=(t-=e=+e)||1/t,function(n){return(n-e)/t}}function uu(e,t){return t=(t-=e=+e)||1/t,function(n){return Math.max(0,Math.min(1,(n-e)/t))}}function au(e){var t=e.source,n=e.target,r=lu(t,n),i=[t];while(t!==r)t=t.parent,i.push(t);var s=i.length;while(n!==r)i.splice(s,0,n),n=n.parent;return i}function fu(e){var t=[],n=e.parent;while(n!=null)t.push(e),e=n,n=n.parent;return t.push(e),t}function lu(e,t){if(e===t)return e;var n=fu(e),r=fu(t),i=n.pop(),s=r.pop(),o=null;while(i===s)o=i,i=n.pop(),s=r.pop();return o}function cu(e){e.fixed|=2}function hu(e){e.fixed&=-7}function pu(e){e.fixed|=4,e.px=e.x,e.py=e.y}function du(e){e.fixed&=-5}function vu(e,t,n){var r=0,i=0;e.charge=0;if(!e.leaf){var s=e.nodes,o=s.length,u=-1,a;while(++u<o){a=s[u];if(a==null)continue;vu(a,t,n),e.charge+=a.charge,r+=a.charge*a.cx,i+=a.charge*a.cy}}if(e.point){e.leaf||(e.point.x+=Math.random()-.5,e.point.y+=Math.random()-.5);var f=t*n[e.point.index];e.charge+=e.pointCharge=f,r+=f*e.point.x,i+=f*e.point.y}e.cx=r/e.charge,e.cy=i/e.charge}function bu(t,n){return e.rebind(t,n,"sort","children","value"),t.nodes=t,t.links=Nu,t}function wu(e,t){var n=[e];while((e=n.pop())!=null){t(e);if((i=e.children)&&(r=i.length)){var r,i;while(--r>=0)n.push(i[r])}}}function Eu(e,t){var n=[e],r=[];while((e=n.pop())!=null){r.push(e);if((o=e.children)&&(s=o.length)){var i=-1,s,o;while(++i<s)n.push(o[i])}}while((e=r.pop())!=null)t(e)}function Su(e){return e.children}function xu(e){return e.value}function Tu(e,t){return t.value-e.value}function Nu(t){return e.merge(t.map(function(e){return(e.children||[]).map(function(t){return{source:e,target:t}})}))}function ku(e){return e.x}function Lu(e){return e.y}function Au(e,t,n){e.y0=t,e.y=n}function _u(t){return e.range(t.length)}function Du(e){var t=-1,n=e[0].length,r=[];while(++t<n)r[t]=0;return r}function Pu(e){var t=1,n=0,r=e[0][1],i,s=e.length;for(;t<s;++t)(i=e[t][1])>r&&(n=t,r=i);return n}function Hu(e){return e.reduce(Bu,0)}function Bu(e,t){return e+t[1]}function ju(e,t){return Fu(e,Math.ceil(Math.log(t.length)/Math.LN2+1))}function Fu(e,t){var n=-1,r=+e[0],i=(e[1]-r)/t,s=[];while(++n<=t)s[n]=i*n+r;return s}function Iu(t){return[e.min(t),e.max(t)]}function qu(e,t){return e.value-t.value}function Ru(e,t){var n=e._pack_next;e._pack_next=t,t._pack_prev=e,t._pack_next=n,n._pack_prev=t}function Uu(e,t){e._pack_next=t,t._pack_prev=e}function zu(e,t){var n=t.x-e.x,r=t.y-e.y,i=e.r+t.r;return.999*i*i>n*n+r*r}function Wu(e){function p(e){n=Math.min(e.x-e.r,n),r=Math.max(e.x+e.r,r),i=Math.min(e.y-e.r,i),s=Math.max(e.y+e.r,s)}if(!(t=e.children)||!(h=t.length))return;var t,n=Infinity,r=-Infinity,i=Infinity,s=-Infinity,o,u,a,f,l,c,h;t.forEach(Xu),o=t[0],o.x=-o.r,o.y=0,p(o);if(h>1){u=t[1],u.x=u.r,u.y=0,p(u);if(h>2){a=t[2],Ju(o,u,a),p(a),Ru(o,a),o._pack_prev=a,Ru(a,u),u=o._pack_next;for(f=3;f<h;f++){Ju(o,u,a=t[f]);var d=0,v=1,m=1;for(l=u._pack_next;l!==u;l=l._pack_next,v++)if(zu(l,a)){d=1;break}if(d==1)for(c=o._pack_prev;c!==l._pack_prev;c=c._pack_prev,m++)if(zu(c,a))break;d?(v<m||v==m&&u.r<o.r?Uu(o,u=l):Uu(o=c,u),f--):(Ru(o,a),u=a,p(a))}}}var g=(n+r)/2,y=(i+s)/2,b=0;for(f=0;f<h;f++)a=t[f],a.x-=g,a.y-=y,b=Math.max(b,a.r+Math.sqrt(a.x*a.x+a.y*a.y));e.r=b,t.forEach(Vu)}function Xu(e){e._pack_next=e._pack_prev=e}function Vu(e){delete e._pack_next,delete e._pack_prev}function $u(e,t,n,r){var i=e.children;e.x=t+=r*e.x,e.y=n+=r*e.y,e.r*=r;if(i){var s=-1,o=i.length;while(++s<o)$u(i[s],t,n,r)}}function Ju(e,t,n){var r=e.r+n.r,i=t.x-e.x,s=t.y-e.y;if(r&&(i||s)){var o=t.r+n.r,u=i*i+s*s;o*=o,r*=r;var a=.5+(r-o)/(2*u),f=Math.sqrt(Math.max(0,2*o*(r+u)-(r-=u)*r-o*o))/(2*u);n.x=e.x+a*i+f*s,n.y=e.y+a*s-f*i}else n.x=e.x+r,n.y=e.y}function Ku(e,t){return e.parent==t.parent?1:2}function Qu(e){var t=e.children;return t.length?t[0]:e.t}function Gu(e){var t=e.children,n;return(n=t.length)?t[n-1]:e.t}function Yu(e,t,n){var r=n/(t.i-e.i);t.c-=r,t.s+=n,e.c+=r,t.z+=n,t.m+=n}function Zu(e){var t=0,n=0,r=e.children,i=r.length,s;while(--i>=0)s=r[i],s.z+=t,s.m+=t,t+=s.s+(n+=s.c)}function ea(e,t,n){return e.a.parent===t.parent?e.a:n}function ta(t){return 1+e.max(t,function(e){return e.y})}function na(e){return e.reduce(function(e,t){return e+t.x},0)/e.length}function ra(e){var t=e.children;return t&&t.length?ra(t[0]):e}function ia(e){var t=e.children,n;return t&&(n=t.length)?ia(t[n-1]):e}function sa(e){return{x:e.x,y:e.y,dx:e.dx,dy:e.dy}}function oa(e,t){var n=e.x+t[3],r=e.y+t[0],i=e.dx-t[1]-t[3],s=e.dy-t[0]-t[2];return i<0&&(n+=i/2,i=0),s<0&&(r+=s/2,s=0),{x:n,y:r,dx:i,dy:s}}function ua(e){var t=e[0],n=e[e.length-1];return t<n?[t,n]:[n,t]}function aa(e){return e.rangeExtent?e.rangeExtent():ua(e.range())}function fa(e,t,n,r){var i=n(e[0],e[1]),s=r(t[0],t[1]);return function(e){return s(i(e))}}function la(e,t){var n=0,r=e.length-1,i=e[n],s=e[r],o;return s<i&&(o=n,n=r,r=o,o=i,i=s,s=o),e[n]=t.floor(i),e[r]=t.ceil(s),e}function ca(e){return e?{floor:function(t){return Math.floor(t/e)*e},ceil:function(t){return Math.ceil(t/e)*e}}:ha}function pa(t,n,r,i){var s=[],o=[],u=0,a=Math.min(t.length,n.length)-1;t[a]<t[0]&&(t=t.slice().reverse(),n=n.slice().reverse());while(++u<=a)s.push(r(t[u-1],t[u])),o.push(i(n[u-1],n[u]));return function(n){var r=e.bisect(t,n,1,a)-1;return o[r](s[r](n))}}function da(e,t,n,r){function o(){var o=Math.min(e.length,t.length)>2?pa:fa,a=r?uu:ou;return i=o(e,t,a,n),s=o(t,e,a,ko),u}function u(e){return i(e)}var i,s;return u.invert=function(e){return s(e)},u.domain=function(t){return arguments.length?(e=t.map(Number),o()):e},u.range=function(e){return arguments.length?(t=e,o()):t},u.rangeRound=function(e){return u.range(e).interpolate(Jo)},u.clamp=function(e){return arguments.length?(r=e,o()):r},u.interpolate=function(e){return arguments.length?(n=e,o()):n},u.ticks=function(t){return ya(e,t)},u.tickFormat=function(t,n){return ba(e,t,n)},u.nice=function(t){return ma(e,t),o()},u.copy=function(){return da(e,t,n,r)},o()}function va(t,n){return e.rebind(t,n,"range","rangeRound","interpolate","clamp")}function ma(e,t){return la(e,ca(ga(e,t)[2])),la(e,ca(ga(e,t)[2])),e}function ga(e,t){t==null&&(t=10);var n=ua(e),r=n[1]-n[0],i=Math.pow(10,Math.floor(Math.log(r/t)/Math.LN10)),s=t/r*i;return s<=.15?i*=10:s<=.35?i*=5:s<=.75&&(i*=2),n[0]=Math.ceil(n[0]/i)*i,n[1]=Math.floor(n[1]/i)*i+i*.5,n[2]=i,n}function ya(t,n){return e.range.apply(e,ga(t,n))}function ba(t,n,r){var i=ga(t,n);if(r){var s=Wn.exec(r);s.shift();if(s[8]==="s"){var o=e.formatPrefix(Math.max(w(i[0]),w(i[1])));return s[7]||(s[7]="."+Ea(o.scale(i[2]))),s[8]="f",r=e.format(s.join("")),function(e){return r(o.scale(e))+o.symbol}}s[7]||(s[7]="."+Sa(s[8],i)),r=s.join("")}else r=",."+Ea(i[2])+"f";return e.format(r)}function Ea(e){return-Math.floor(Math.log(e)/Math.LN10+.01)}function Sa(e,t){var n=Ea(t[2]);return e in wa?Math.abs(n-Ea(Math.max(w(t[0]),w(t[1]))))+ +(e!=="e"):n-(e==="%")*2}function xa(t,n,r,i){function s(e){return(r?Math.log(e<0?0:e):-Math.log(e>0?0:-e))/Math.log(n)}function o(e){return r?Math.pow(n,e):-Math.pow(n,-e)}function u(e){return t(s(e))}return u.invert=function(e){return o(t.invert(e))},u.domain=function(e){return arguments.length?(r=e[0]>=0,t.domain((i=e.map(Number)).map(s)),u):i},u.base=function(e){return arguments.length?(n=+e,t.domain(i.map(s)),u):n},u.nice=function(){var e=la(i.map(s),r?Math:Na);return t.domain(e),i=e.map(o),u},u.ticks=function(){var e=ua(i),t=[],u=e[0],a=e[1],f=Math.floor(s(u)),l=Math.ceil(s(a)),c=n%1?2:n;if(isFinite(l-f)){if(r){for(;f<l;f++)for(var h=1;h<c;h++)t.push(o(f)*h);t.push(o(f))}else{t.push(o(f));for(;f++<l;)for(var h=c-1;h>0;h--)t.push(o(f)*h)}for(f=0;t[f]<u;f++);for(l=t.length;t[l-1]>a;l--);t=t.slice(f,l)}return t},u.tickFormat=function(t,r){if(!arguments.length)return Ta;arguments.length<2?r=Ta:typeof r!="function"&&(r=e.format(r));var i=Math.max(1,n*t/u.ticks().length);return function(e){var t=e/o(Math.round(s(e)));return t*n<n-.5&&(t*=n),t<=i?r(e):""}},u.copy=function(){return xa(t.copy(),n,r,i)},va(u,t)}function Ca(e,t,n){function s(t){return e(r(t))}var r=ka(t),i=ka(1/t);return s.invert=function(t){return i(e.invert(t))},s.domain=function(t){return arguments.length?(e.domain((n=t.map(Number)).map(r)),s):n},s.ticks=function(e){return ya(n,e)},s.tickFormat=function(e,t){return ba(n,e,t)},s.nice=function(e){return s.domain(ma(n,e))},s.exponent=function(o){return arguments.length?(r=ka(t=o),i=ka(1/t),e.domain(n.map(r)),s):t},s.copy=function(){return Ca(e.copy(),t,n)},va(s,e)}function ka(e){return function(t){return t<0?-Math.pow(-t,e):Math.pow(t,e)}}function La(t,n){function o(e){return i[((r.get(e)||(n.t==="range"?r.set(e,t.push(e)):NaN))-1)%i.length]}function u(n,r){return e.range(t.length).map(function(e){return n+r*e})}var r,i,s;return o.domain=function(e){if(!arguments.length)return t;t=[],r=new x;var i=-1,s=e.length,u;while(++i<s)r.has(u=e[i])||r.set(u,t.push(u));return o[n.t].apply(o,n.a)},o.range=function(e){return arguments.length?(i=e,s=0,n={t:"range",a:arguments},o):i},o.rangePoints=function(e,r){arguments.length<2&&(r=0);var a=e[0],f=e[1],l=t.length<2?(a=(a+f)/2,0):(f-a)/(t.length-1+r);return i=u(a+l*r/2,l),s=0,n={t:"rangePoints",a:arguments},o},o.rangeRoundPoints=function(e,r){arguments.length<2&&(r=0);var a=e[0],f=e[1],l=t.length<2?(a=f=Math.round((a+f)/2),0):(f-a)/(t.length-1+r)|0;return i=u(a+Math.round(l*r/2+(f-a-(t.length-1+r)*l)/2),l),s=0,n={t:"rangeRoundPoints",a:arguments},o},o.rangeBands=function(e,r,a){arguments.length<2&&(r=0),arguments.length<3&&(a=r);var f=e[1]<e[0],l=e[f-0],c=e[1-f],h=(c-l)/(t.length-r+2*a);return i=u(l+h*a,h),f&&i.reverse(),s=h*(1-r),n={t:"rangeBands",a:arguments},o},o.rangeRoundBands=function(e,r,a){arguments.length<2&&(r=0),arguments.length<3&&(a=r);var f=e[1]<e[0],l=e[f-0],c=e[1-f],h=Math.floor((c-l)/(t.length-r+2*a));return i=u(l+Math.round((c-l-(t.length-r)*h)/2),h),f&&i.reverse(),s=Math.round(h*(1-r)),n={t:"rangeRoundBands",a:arguments},o},o.rangeBand=function(){return s},o.rangeExtent=function(){return ua(n.a[0])},o.copy=function(){return La(t,n)},o.domain(t)}function Da(t,n){function i(){var i=0,o=n.length;r=[];while(++i<o)r[i-1]=e.quantile(t,i/o);return s}function s(t){if(!isNaN(t=+t))return n[e.bisect(r,t)]}var r;return s.domain=function(e){return arguments.length?(t=e.map(v).filter(m).sort(d),i()):t},s.range=function(e){return arguments.length?(n=e,i()):n},s.quantiles=function(){return r},s.invertExtent=function(e){return e=n.indexOf(e),e<0?[NaN,NaN]:[e>0?r[e-1]:t[0],e<r.length?r[e]:t[t.length-1]]},s.copy=function(){return Da(t,n)},i()}function Pa(e,t,n){function s(t){return n[Math.max(0,Math.min(i,Math.floor(r*(t-e))))]}function o(){return r=n.length/(t-e),i=n.length-1,s}var r,i;return s.domain=function(n){return arguments.length?(e=+n[0],t=+n[n.length-1],o()):[e,t]},s.range=function(e){return arguments.length?(n=e,o()):n},s.invertExtent=function(t){return t=n.indexOf(t),t=t<0?NaN:t/r+e,[t,t+1/r]},s.copy=function(){return Pa(e,t,n)},o()}function Ha(t,n){function r(r){if(r<=r)return n[e.bisect(t,r)]}return r.domain=function(e){return arguments.length?(t=e,r):t},r.range=function(e){return arguments.length?(n=e,r):n},r.invertExtent=function(e){return e=n.indexOf(e),[t[e-1],t[e]]},r.copy=function(){return Ha(t,n)},r}function Ba(e){function t(e){return+e}return t.invert=t,t.domain=t.range=function(n){return arguments.length?(e=n.map(t),t):e},t.ticks=function(t){return ya(e,t)},t.tickFormat=function(t,n){return ba(e,t,n)},t.copy=function(){return Ba(e)},t}function ja(){return 0}function Ia(e){return e.innerRadius}function qa(e){return e.outerRadius}function Ra(e){return e.startAngle}function Ua(e){return e.endAngle}function za(e){return e&&e.padAngle}function Wa(e,t,n,r){return(e-n)*t-(t-r)*e>0?0:1}function Xa(e,t,n,r,i){var s=e[0]-t[0],o=e[1]-t[1],u=(i?r:-r)/Math.sqrt(s*s+o*o),a=u*o,f=-u*s,l=e[0]+a,c=e[1]+f,h=t[0]+a,p=t[1]+f,d=(l+h)/2,v=(c+p)/2,m=h-l,g=p-c,y=m*m+g*g,b=n-r,w=l*p-h*c,E=(g<0?-1:1)*Math.sqrt(Math.max(0,b*b*y-w*w)),S=(w*g-m*E)/y,x=(-w*m-g*E)/y,T=(w*g+m*E)/y,N=(-w*m+g*E)/y,C=S-d,k=x-v,L=T-d,A=N-v;return C*C+k*k>L*L+A*A&&(S=T,x=N),[[S-a,x-f],[S*
n/b,x*n/b]]}function Va(e){function u(s){function d(){u.push("M",i(e(a),o))}var u=[],a=[],f=-1,l=s.length,c,h=Cn(t),p=Cn(n);while(++f<l)r.call(this,c=s[f],f)?a.push([+h.call(this,c,f),+p.call(this,c,f)]):a.length&&(d(),a=[]);return a.length&&d(),u.length?u.join(""):null}var t=Ns,n=Cs,r=ai,i=Ja,s=i.key,o=.7;return u.x=function(e){return arguments.length?(t=e,u):t},u.y=function(e){return arguments.length?(n=e,u):n},u.defined=function(e){return arguments.length?(r=e,u):r},u.interpolate=function(e){return arguments.length?(typeof e=="function"?s=i=e:s=(i=$a.get(e)||Ja).key,u):s},u.tension=function(e){return arguments.length?(o=e,u):o},u}function Ja(e){return e.length>1?e.join("L"):e+"Z"}function Ka(e){return e.join("L")+"Z"}function Qa(e){var t=0,n=e.length,r=e[0],i=[r[0],",",r[1]];while(++t<n)i.push("H",(r[0]+(r=e[t])[0])/2,"V",r[1]);return n>1&&i.push("H",r[0]),i.join("")}function Ga(e){var t=0,n=e.length,r=e[0],i=[r[0],",",r[1]];while(++t<n)i.push("V",(r=e[t])[1],"H",r[0]);return i.join("")}function Ya(e){var t=0,n=e.length,r=e[0],i=[r[0],",",r[1]];while(++t<n)i.push("H",(r=e[t])[0],"V",r[1]);return i.join("")}function Za(e,t){return e.length<4?Ja(e):e[1]+nf(e.slice(1,-1),rf(e,t))}function ef(e,t){return e.length<3?Ka(e):e[0]+nf((e.push(e[0]),e),rf([e[e.length-2]].concat(e,[e[1]]),t))}function tf(e,t){return e.length<3?Ja(e):e[0]+nf(e,rf(e,t))}function nf(e,t){if(t.length<1||e.length!=t.length&&e.length!=t.length+2)return Ja(e);var n=e.length!=t.length,r="",i=e[0],s=e[1],o=t[0],u=o,a=1;n&&(r+="Q"+(s[0]-o[0]*2/3)+","+(s[1]-o[1]*2/3)+","+s[0]+","+s[1],i=e[1],a=2);if(t.length>1){u=t[1],s=e[a],a++,r+="C"+(i[0]+o[0])+","+(i[1]+o[1])+","+(s[0]-u[0])+","+(s[1]-u[1])+","+s[0]+","+s[1];for(var f=2;f<t.length;f++,a++)s=e[a],u=t[f],r+="S"+(s[0]-u[0])+","+(s[1]-u[1])+","+s[0]+","+s[1]}if(n){var l=e[a];r+="Q"+(s[0]+u[0]*2/3)+","+(s[1]+u[1]*2/3)+","+l[0]+","+l[1]}return r}function rf(e,t){var n=[],r=(1-t)/2,i,s=e[0],o=e[1],u=1,a=e.length;while(++u<a)i=s,s=o,o=e[u],n.push([r*(o[0]-i[0]),r*(o[1]-i[1])]);return n}function sf(e){if(e.length<3)return Ja(e);var t=1,n=e.length,r=e[0],i=r[0],s=r[1],o=[i,i,i,(r=e[1])[0]],u=[s,s,s,r[1]],a=[i,",",s,"L",ff(hf,o),",",ff(hf,u)];e.push(e[n-1]);while(++t<=n)r=e[t],o.shift(),o.push(r[0]),u.shift(),u.push(r[1]),pf(a,o,u);return e.pop(),a.push("L",r),a.join("")}function of(e){if(e.length<4)return Ja(e);var t=[],n=-1,r=e.length,i,s=[0],o=[0];while(++n<3)i=e[n],s.push(i[0]),o.push(i[1]);t.push(ff(hf,s)+","+ff(hf,o)),--n;while(++n<r)i=e[n],s.shift(),s.push(i[0]),o.shift(),o.push(i[1]),pf(t,s,o);return t.join("")}function uf(e){var t,n=-1,r=e.length,i=r+4,s,o=[],u=[];while(++n<4)s=e[n%r],o.push(s[0]),u.push(s[1]);t=[ff(hf,o),",",ff(hf,u)],--n;while(++n<i)s=e[n%r],o.shift(),o.push(s[0]),u.shift(),u.push(s[1]),pf(t,o,u);return t.join("")}function af(e,t){var n=e.length-1;if(n){var r=e[0][0],i=e[0][1],s=e[n][0]-r,o=e[n][1]-i,u=-1,a,f;while(++u<=n)a=e[u],f=u/n,a[0]=t*a[0]+(1-t)*(r+f*s),a[1]=t*a[1]+(1-t)*(i+f*o)}return sf(e)}function ff(e,t){return e[0]*t[0]+e[1]*t[1]+e[2]*t[2]+e[3]*t[3]}function pf(e,t,n){e.push("C",ff(lf,t),",",ff(lf,n),",",ff(cf,t),",",ff(cf,n),",",ff(hf,t),",",ff(hf,n))}function df(e,t){return(t[1]-e[1])/(t[0]-e[0])}function vf(e){var t=0,n=e.length-1,r=[],i=e[0],s=e[1],o=r[0]=df(i,s);while(++t<n)r[t]=(o+(o=df(i=s,s=e[t+1])))/2;return r[t]=o,r}function mf(e){var t=[],n,r,i,s,o=vf(e),u=-1,a=e.length-1;while(++u<a)n=df(e[u],e[u+1]),w(n)<Lt?o[u]=o[u+1]=0:(r=o[u]/n,i=o[u+1]/n,s=r*r+i*i,s>9&&(s=n*3/Math.sqrt(s),o[u]=s*r,o[u+1]=s*i));u=-1;while(++u<=a)s=(e[Math.min(a,u+1)][0]-e[Math.max(0,u-1)][0])/(6*(1+o[u]*o[u])),t.push([s||0,o[u]*s||0]);return t}function gf(e){return e.length<3?Ja(e):e[0]+nf(e,mf(e))}function yf(e){var t,n=-1,r=e.length,i,s;while(++n<r)t=e[n],i=t[0],s=t[1]-Dt,t[0]=i*Math.cos(s),t[1]=i*Math.sin(s);return e}function bf(e){function c(u){function x(){c.push("M",o(e(p),l),f,a(e(h.reverse()),l),"Z")}var c=[],h=[],p=[],d=-1,v=u.length,m,g=Cn(t),y=Cn(r),b=t===n?function(){return E}:Cn(n),w=r===i?function(){return S}:Cn(i),E,S;while(++d<v)s.call(this,m=u[d],d)?(h.push([E=+g.call(this,m,d),S=+y.call(this,m,d)]),p.push([+b.call(this,m,d),+w.call(this,m,d)])):h.length&&(x(),h=[],p=[]);return h.length&&x(),c.length?c.join(""):null}var t=Ns,n=Ns,r=0,i=Cs,s=ai,o=Ja,u=o.key,a=o,f="L",l=.7;return c.x=function(e){return arguments.length?(t=n=e,c):n},c.x0=function(e){return arguments.length?(t=e,c):t},c.x1=function(e){return arguments.length?(n=e,c):n},c.y=function(e){return arguments.length?(r=i=e,c):i},c.y0=function(e){return arguments.length?(r=e,c):r},c.y1=function(e){return arguments.length?(i=e,c):i},c.defined=function(e){return arguments.length?(s=e,c):s},c.interpolate=function(e){return arguments.length?(typeof e=="function"?u=o=e:u=(o=$a.get(e)||Ja).key,a=o.reverse||o,f=o.closed?"M":"L",c):u},c.tension=function(e){return arguments.length?(l=e,c):l},c}function wf(e){return e.radius}function Ef(e){return[e.x,e.y]}function Sf(e){return function(){var t=e.apply(this,arguments),n=t[0],r=t[1]-Dt;return[n*Math.cos(r),n*Math.sin(r)]}}function xf(){return 64}function Tf(){return"circle"}function Nf(e){var t=Math.sqrt(e/Ot);return"M0,"+t+"A"+t+","+t+" 0 1,1 0,"+ -t+"A"+t+","+t+" 0 1,1 0,"+t+"Z"}function Of(e){return function(){var t,n,r;(t=this[e])&&(r=t[n=t.active])&&(r.timer.c=null,r.timer.t=NaN,--t.count?delete t[n]:delete this[e],t.active+=.5,r.event&&r.event.interrupt.call(this,this.__data__,r.index))}}function Mf(e,t,n){return X(e,_f),e.namespace=t,e.id=n,e}function Bf(e,t,n,r){var i=e.id,s=e.namespace;return dt(e,typeof n=="function"?function(e,o,u){e[s][i].tween.set(t,r(n.call(e,e.__data__,o,u)))}:(n=r(n),function(e){e[s][i].tween.set(t,n)}))}function jf(e){return e==null&&(e=""),function(){this.textContent=e}}function Ff(e){return e==null?"__transition__":"__transition_"+e+"__"}function If(e,t,n,r,i){function h(e){var t=o.delay;a.t=t+u;if(t<=e)return p(e-t);a.c=p}function p(n){var i=s.active,h=s[i];h&&(h.timer.c=null,h.timer.t=NaN,--s.count,delete s[i],h.event&&h.event.interrupt.call(e,e.__data__,h.index));for(var p in s)if(+p<r){var v=s[p];v.timer.c=null,v.timer.t=NaN,--s.count,delete s[p]}a.c=d,Bn(function(){return a.c&&d(n||1)&&(a.c=null,a.t=NaN),1},0,u),s.active=r,o.event&&o.event.start.call(e,e.__data__,t),c=[],o.tween.forEach(function(n,r){(r=r.call(e,e.__data__,t))&&c.push(r)}),l=o.ease,f=o.duration}function d(i){var u=i/f,a=l(u),h=c.length;while(h>0)c[--h].call(e,a);if(u>=1)return o.event&&o.event.end.call(e,e.__data__,t),--s.count?delete s[r]:delete e[n],1}var s=e[n]||(e[n]={active:0,count:0}),o=s[r],u,a,f,l,c;o||(u=i.time,a=Bn(h,0,u),o=s[r]={tween:new x,time:u,timer:a,delay:i.delay,duration:i.duration,ease:i.ease,index:t},i=null,++s.count)}function Uf(e,t,n){e.attr("transform",function(e){var r=t(e);return"translate("+(isFinite(r)?r:n(e))+",0)"})}function zf(e,t,n){e.attr("transform",function(e){var r=t(e);return"translate(0,"+(isFinite(r)?r:n(e))+")"})}function Kf(e){return e.toISOString()}function Qf(t,n,r){function i(e){return t(e)}function s(t,r){var i=t[1]-t[0],s=i/r,o=e.bisect(Yf,s);return o==Yf.length?[n.year,ga(t.map(function(e){return e/31536e6}),r)[2]]:o?n[s/Yf[o-1]<Yf[o]/s?o-1:o]:[tl,ga(t,r)[2]]}return i.invert=function(e){return Gf(t.invert(e))},i.domain=function(e){return arguments.length?(t.domain(e),i):t.domain().map(Gf)},i.nice=function(e,t){function u(n){return!isNaN(n)&&!e.range(n,Gf(+n+1),t).length}var n=i.domain(),r=ua(n),o=e==null?s(r,10):typeof e=="number"&&s(r,e);return o&&(e=o[0],t=o[1]),i.domain(la(n,t>1?{floor:function(t){while(u(t=e.floor(t)))t=Gf(t-1);return t},ceil:function(t){while(u(t=e.ceil(t)))t=Gf(+t+1);return t}}:e))},i.ticks=function(e,t){var n=ua(i.domain()),r=e==null?s(n,10):typeof e=="number"?s(n,e):!e.range&&[{range:e},t];return r&&(e=r[0],t=r[1]),e.range(n[0],Gf(+n[1]+1),t<1?1:t)},i.tickFormat=function(){return r},i.copy=function(){return Qf(t.copy(),n,r)},va(i,t)}function Gf(e){return new Date(e)}function il(e){return JSON.parse(e.responseText)}function sl(e){var t=i.createRange();return t.selectNode(i.body),t.createContextualFragment(e.responseText)}var e={version:"3.5.17"},n=[].slice,r=function(e){return n.call(e)},i=this.document;if(i)try{r(i.documentElement.childNodes)[0].nodeType}catch(u){r=function(e){var t=e.length,n=new Array(t);while(t--)n[t]=e[t];return n}}Date.now||(Date.now=function(){return+(new Date)});if(i)try{i.createElement("DIV").style.setProperty("opacity",0,"")}catch(a){var f=this.Element.prototype,l=f.setAttribute,c=f.setAttributeNS,h=this.CSSStyleDeclaration.prototype,p=h.setProperty;f.setAttribute=function(e,t){l.call(this,e,t+"")},f.setAttributeNS=function(e,t,n){c.call(this,e,t,n+"")},h.setProperty=function(e,t,n){p.call(this,e,t+"",n)}}e.ascending=d,e.descending=function(e,t){return t<e?-1:t>e?1:t>=e?0:NaN},e.min=function(e,t){var n=-1,r=e.length,i,s;if(arguments.length===1){while(++n<r)if((s=e[n])!=null&&s>=s){i=s;break}while(++n<r)(s=e[n])!=null&&i>s&&(i=s)}else{while(++n<r)if((s=t.call(e,e[n],n))!=null&&s>=s){i=s;break}while(++n<r)(s=t.call(e,e[n],n))!=null&&i>s&&(i=s)}return i},e.max=function(e,t){var n=-1,r=e.length,i,s;if(arguments.length===1){while(++n<r)if((s=e[n])!=null&&s>=s){i=s;break}while(++n<r)(s=e[n])!=null&&s>i&&(i=s)}else{while(++n<r)if((s=t.call(e,e[n],n))!=null&&s>=s){i=s;break}while(++n<r)(s=t.call(e,e[n],n))!=null&&s>i&&(i=s)}return i},e.extent=function(e,t){var n=-1,r=e.length,i,s,o;if(arguments.length===1){while(++n<r)if((s=e[n])!=null&&s>=s){i=o=s;break}while(++n<r)(s=e[n])!=null&&(i>s&&(i=s),o<s&&(o=s))}else{while(++n<r)if((s=t.call(e,e[n],n))!=null&&s>=s){i=o=s;break}while(++n<r)(s=t.call(e,e[n],n))!=null&&(i>s&&(i=s),o<s&&(o=s))}return[i,o]},e.sum=function(e,t){var n=0,r=e.length,i,s=-1;if(arguments.length===1)while(++s<r)m(i=+e[s])&&(n+=i);else while(++s<r)m(i=+t.call(e,e[s],s))&&(n+=i);return n},e.mean=function(e,t){var n=0,r=e.length,i,s=-1,o=r;if(arguments.length===1)while(++s<r)m(i=v(e[s]))?n+=i:--o;else while(++s<r)m(i=v(t.call(e,e[s],s)))?n+=i:--o;if(o)return n/o},e.quantile=function(e,t){var n=(e.length-1)*t+1,r=Math.floor(n),i=+e[r-1],s=n-r;return s?i+s*(e[r]-i):i},e.median=function(t,n){var r=[],i=t.length,s,o=-1;if(arguments.length===1)while(++o<i)m(s=v(t[o]))&&r.push(s);else while(++o<i)m(s=v(n.call(t,t[o],o)))&&r.push(s);if(r.length)return e.quantile(r.sort(d),.5)},e.variance=function(e,t){var n=e.length,r=0,i,s,o=0,u=-1,a=0;if(arguments.length===1)while(++u<n)m(i=v(e[u]))&&(s=i-r,r+=s/++a,o+=s*(i-r));else while(++u<n)m(i=v(t.call(e,e[u],u)))&&(s=i-r,r+=s/++a,o+=s*(i-r));if(a>1)return o/(a-1)},e.deviation=function(){var t=e.variance.apply(this,arguments);return t?Math.sqrt(t):t};var y=g(d);e.bisectLeft=y.left,e.bisect=e.bisectRight=y.right,e.bisector=function(e){return g(e.length===1?function(t,n){return d(e(t),n)}:e)},e.shuffle=function(e,t,n){(r=arguments.length)<3&&(n=e.length,r<2&&(t=0));var r=n-t,i,s;while(r)s=Math.random()*r--|0,i=e[r+t],e[r+t]=e[s+t],e[s+t]=i;return e},e.permute=function(e,t){var n=t.length,r=new Array(n);while(n--)r[n]=e[t[n]];return r},e.pairs=function(e){var t=0,n=e.length-1,r,i=e[0],s=new Array(n<0?0:n);while(t<n)s[t]=[r=i,i=e[++t]];return s},e.transpose=function(t){if(!(o=t.length))return[];for(var n=-1,r=e.min(t,b),i=new Array(r);++n<r;)for(var s=-1,o,u=i[n]=new Array(o);++s<o;)u[s]=t[s][n];return i},e.zip=function(){return e.transpose(arguments)},e.keys=function(e){var t=[];for(var n in e)t.push(n);return t},e.values=function(e){var t=[];for(var n in e)t.push(e[n]);return t},e.entries=function(e){var t=[];for(var n in e)t.push({key:n,value:e[n]});return t},e.merge=function(e){var t=e.length,n,r=-1,i=0,s,o;while(++r<t)i+=e[r].length;s=new Array(i);while(--t>=0){o=e[t],n=o.length;while(--n>=0)s[--i]=o[n]}return s};var w=Math.abs;e.range=function(e,t,n){arguments.length<3&&(n=1,arguments.length<2&&(t=e,e=0));if((t-e)/n===Infinity)throw new Error("infinite range");var r=[],i=E(w(n)),s=-1,o;e*=i,t*=i,n*=i;if(n<0)while((o=e+n*++s)>t)r.push(o/i);else while((o=e+n*++s)<t)r.push(o/i);return r},e.map=function(e,t){var n=new x;if(e instanceof x)e.forEach(function(e,t){n.set(e,t)});else if(Array.isArray(e)){var r=-1,i=e.length,s;if(arguments.length===1)while(++r<i)n.set(r,e[r]);else while(++r<i)n.set(t.call(e,s=e[r],r),s)}else for(var o in e)n.set(o,e[o]);return n};var T="__proto__",N="\0";S(x,{has:L,get:function(e){return this._[C(e)]},set:function(e,t){return this._[C(e)]=t},remove:A,keys:O,values:function(){var e=[];for(var t in this._)e.push(this._[t]);return e},entries:function(){var e=[];for(var t in this._)e.push({key:k(t),value:this._[t]});return e},size:M,empty:_,forEach:function(e){for(var t in this._)e.call(this,k(t),this._[t])}}),e.nest=function(){function o(e,r,u){if(u>=n.length)return s?s.call(t,r):i?r.sort(i):r;var a=-1,f=r.length,l=n[u++],c,h,p,d=new x,v;while(++a<f)(v=d.get(c=l(h=r[a])))?v.push(h):d.set(c,[h]);return e?(h=e(),p=function(t,n){h.set(t,o(e,n,u))}):(h={},p=function(t,n){h[t]=o(e,n,u)}),d.forEach(p),h}function u(e,t){if(t>=n.length)return e;var i=[],s=r[t++];return e.forEach(function(e,n){i.push({key:e,values:u(n,t)})}),s?i.sort(function(e,t){return s(e.key,t.key)}):i}var t={},n=[],r=[],i,s;return t.map=function(e,t){return o(t,e,0)},t.entries=function(t){return u(o(e.map,t,0),0)},t.key=function(e){return n.push(e),t},t.sortKeys=function(e){return r[n.length-1]=e,t},t.sortValues=function(e){return i=e,t},t.rollup=function(e){return s=e,t},t},e.set=function(e){var t=new D;if(e)for(var n=0,r=e.length;n<r;++n)t.add(e[n]);return t},S(D,{has:L,add:function(e){return this._[C(e+="")]=!0,e},remove:A,values:O,size:M,empty:_,forEach:function(e){for(var t in this._)e.call(this,k(t))}}),e.behavior={},e.rebind=function(e,t){var n=1,r=arguments.length,i;while(++n<r)e[i=arguments[n]]=H(e,t,t[i]);return e};var j=["webkit","ms","moz","Moz","o","O"];e.dispatch=function(){var e=new I,t=-1,n=arguments.length;while(++t<n)e[arguments[t]]=q(e);return e},I.prototype.on=function(e,t){var n=e.indexOf("."),r="";n>=0&&(r=e.slice(n+1),e=e.slice(0,n));if(e)return arguments.length<2?this[e].on(r):this[e].on(r,t);if(arguments.length===2){if(t==null)for(e in this)this.hasOwnProperty(e)&&this[e].on(r,null);return this}},e.event=null,e.requote=function(e){return e.replace(W,"\\$&")};var W=/[\\\^\$\*\+\?\|\[\]\(\)\.\{\}]/g,X={}.__proto__?function(e,t){e.__proto__=t}:function(e,t){for(var n in t)e[n]=t[n]},$=function(e,t){return t.querySelector(e)},J=function(e,t){return t.querySelectorAll(e)},K=function(e,t){var n=e.matches||e[B(e,"matchesSelector")];return K=function(e,t){return n.call(e,t)},K(e,t)};typeof Sizzle=="function"&&($=function(e,t){return Sizzle(e,t)[0]||null},J=Sizzle,K=Sizzle.matchesSelector),e.selection=function(){return e.select(i.documentElement)};var Q=e.selection.prototype=[];Q.select=function(e){var t=[],n,r,i,s;e=G(e);for(var o=-1,u=this.length;++o<u;){t.push(n=[]),n.parentNode=(i=this[o]).parentNode;for(var a=-1,f=i.length;++a<f;)(s=i[a])?(n.push(r=e.call(s,s.__data__,a,o)),r&&"__data__"in s&&(r.__data__=s.__data__)):n.push(null)}return V(t)},Q.selectAll=function(e){var t=[],n,i;e=Y(e);for(var s=-1,o=this.length;++s<o;)for(var u=this[s],a=-1,f=u.length;++a<f;)if(i=u[a])t.push(n=r(e.call(i,i.__data__,a,s))),n.parentNode=i;return V(t)};var Z="http://www.w3.org/1999/xhtml",et={svg:"http://www.w3.org/2000/svg",xhtml:Z,xlink:"http://www.w3.org/1999/xlink",xml:"http://www.w3.org/XML/1998/namespace",xmlns:"http://www.w3.org/2000/xmlns/"};e.ns={prefix:et,qualify:function(e){var t=e.indexOf(":"),n=e;return t>=0&&(n=e.slice(0,t))!=="xmlns"&&(e=e.slice(t+1)),et.hasOwnProperty(n)?{space:et[n],local:e}:e}},Q.attr=function(t,n){if(arguments.length<2){if(typeof t=="string"){var r=this.node();return t=e.ns.qualify(t),t.local?r.getAttributeNS(t.space,t.local):r.getAttribute(t)}for(n in t)this.each(tt(n,t[n]));return this}return this.each(tt(t,n))},Q.classed=function(e,t){if(arguments.length<2){if(typeof e=="string"){var n=this.node(),r=(e=it(e)).length,i=-1;if(t=n.classList){while(++i<r)if(!t.contains(e[i]))return!1}else{t=n.getAttribute("class");while(++i<r)if(!rt(e[i]).test(t))return!1}return!0}for(t in e)this.each(st(t,e[t]));return this}return this.each(st(e,t))},Q.style=function(e,t,n){var r=arguments.length;if(r<3){if(typeof e!="string"){r<2&&(t="");for(n in e)this.each(ut(n,e[n],t));return this}if(r<2){var i=this.node();return o(i).getComputedStyle(i,null).getPropertyValue(e)}n=""}return this.each(ut(e,t,n))},Q.property=function(e,t){if(arguments.length<2){if(typeof e=="string")return this.node()[e];for(t in e)this.each(at(t,e[t]));return this}return this.each(at(e,t))},Q.text=function(e){return arguments.length?this.each(typeof e=="function"?function(){var t=e.apply(this,arguments);this.textContent=t==null?"":t}:e==null?function(){this.textContent=""}:function(){this.textContent=e}):this.node().textContent},Q.html=function(e){return arguments.length?this.each(typeof e=="function"?function(){var t=e.apply(this,arguments);this.innerHTML=t==null?"":t}:e==null?function(){this.innerHTML=""}:function(){this.innerHTML=e}):this.node().innerHTML},Q.append=function(e){return e=ft(e),this.select(function(){return this.appendChild(e.apply(this,arguments))})},Q.insert=function(e,t){return e=ft(e),t=G(t),this.select(function(){return this.insertBefore(e.apply(this,arguments),t.apply(this,arguments)||null)})},Q.remove=function(){return this.each(lt)},Q.data=function(e,t){function o(e,n){var r,i=e.length,s=n.length,o=Math.min(i,s),l=new Array(s),c=new Array(s),h=new Array(i),p,d;if(t){var v=new x,m=new Array(i),g;for(r=-1;++r<i;)if(p=e[r])v.has(g=t.call(p,p.__data__,r))?h[r]=p:v.set(g,p),m[r]=g;for(r=-1;++r<s;)(p=v.get(g=t.call(n,d=n[r],r)))?p!==!0&&(l[r]=p,p.__data__=d):c[r]=ct(d),v.set(g,!0);for(r=-1;++r<i;)r in m&&v.get(m[r])!==!0&&(h[r]=e[r])}else{for(r=-1;++r<o;)p=e[r],d=n[r],p?(p.__data__=d,l[r]=p):c[r]=ct(d);for(;r<s;++r)c[r]=ct(n[r]);for(;r<i;++r)h[r]=e[r]}c.update=l,c.parentNode=l.parentNode=h.parentNode=e.parentNode,u.push(c),a.push(l),f.push(h)}var n=-1,r=this.length,i,s;if(!arguments.length){e=new Array(r=(i=this[0]).length);while(++n<r)if(s=i[n])e[n]=s.__data__;return e}var u=vt([]),a=V([]),f=V([]);if(typeof e=="function")while(++n<r)o(i=this[n],e.call(i,i.parentNode.__data__,n));else while(++n<r)o(i=this[n],e);return a.enter=function(){return u},a.exit=function(){return f},a},Q.datum=function(e){return arguments.length?this.property("__data__",e):this.property("__data__")},Q.filter=function(e){var t=[],n,r,i;typeof e!="function"&&(e=ht(e));for(var s=0,o=this.length;s<o;s++){t.push(n=[]),n.parentNode=(r=this[s]).parentNode;for(var u=0,a=r.length;u<a;u++)(i=r[u])&&e.call(i,i.__data__,u,s)&&n.push(i)}return V(t)},Q.order=function(){for(var e=-1,t=this.length;++e<t;)for(var n=this[e],r=n.length-1,i=n[r],s;--r>=0;)if(s=n[r])i&&i!==s.nextSibling&&i.parentNode.insertBefore(s,i),i=s;return this},Q.sort=function(e){e=pt.apply(this,arguments);for(var t=-1,n=this.length;++t<n;)this[t].sort(e);return this.order()},Q.each=function(e){return dt(this,function(t,n,r){e.call(t,t.__data__,n,r)})},Q.call=function(e){var t=r(arguments);return e.apply(t[0]=this,t),this},Q.empty=function(){return!this.node()},Q.node=function(){for(var e=0,t=this.length;e<t;e++)for(var n=this[e],r=0,i=n.length;r<i;r++){var s=n[r];if(s)return s}return null},Q.size=function(){var e=0;return dt(this,function(){++e}),e};var mt=[];e.selection.enter=vt,e.selection.enter.prototype=mt,mt.append=Q.append,mt.empty=Q.empty,mt.node=Q.node,mt.call=Q.call,mt.size=Q.size,mt.select=function(e){var t=[],n,r,i,s,o;for(var u=-1,a=this.length;++u<a;){i=(s=this[u]).update,t.push(n=[]),n.parentNode=s.parentNode;for(var f=-1,l=s.length;++f<l;)(o=s[f])?(n.push(i[f]=r=e.call(s.parentNode,o.__data__,f,u)),r.__data__=o.__data__):n.push(null)}return V(t)},mt.insert=function(e,t){return arguments.length<2&&(t=gt(this)),Q.insert.call(this,e,t)},e.select=function(e){var t;return typeof e=="string"?(t=[$(e,i)],t.parentNode=i.documentElement):(t=[e],t.parentNode=s(e)),V([t])},e.selectAll=function(e){var t;return typeof e=="string"?(t=r(J(e,i)),t.parentNode=i.documentElement):(t=r(e),t.parentNode=null),V([t])},Q.on=function(e,t,n){var r=arguments.length;if(r<3){if(typeof e!="string"){r<2&&(t=!1);for(n in e)this.each(yt(n,e[n],t));return this}if(r<2)return(r=this.node()["__on"+e])&&r._;n=!1}return this.each(yt(e,t,n))};var bt=e.map({mouseenter:"mouseover",mouseleave:"mouseout"});i&&bt.forEach(function(e){"on"+e in i&&bt.remove(e)});var St,xt=0;e.mouse=function(e){return Ct(e,U())};var Nt=this.navigator&&/WebKit/.test(this.navigator.userAgent)?-1:0;e.touch=function(e,t,n){arguments.length<3&&(n=t,t=U().changedTouches);if(t)for(var r=0,i=t.length,s;r<i;++r)if((s=t[r]).identifier===n)return Ct(e,s)},e.behavior.drag=function(){function s(){this.on("mousedown.drag",r).on("touchstart.drag",i)}function u(r,i,s,o,u){return function(){function b(){var e=i(l,p),t,n;if(!e)return;t=e[0]-y[0],n=e[1]-y[1],h|=t|n,y=e,c({type:"drag",x:e[0]+v[0],y:e[1]+v[1],dx:t,dy:n})}function w(){if(!i(l,p))return;m.on(o+d,null).on(u+d,null),g(h),c({type:"dragend"})}var a=this,f=e.event.target.correspondingElement||e.event.target,l=a.parentNode,c=t.of(a,arguments),h=0,p=r(),d=".drag"+(p==null?"":"-"+p),v,m=e.select(s(f)).on(o+d,b).on(u+d,w),g=Tt(f),y=i(l,p);n?(v=n.apply(a,arguments),v=[v.x-y[0],v.y-y[1]]):v=[0,0],c({type:"dragstart"})}}var t=z(s,"drag","dragstart","dragend"),n=null,r=u(F,e.mouse,o,"mousemove","mouseup"),i=u(kt,e.touch,P,"touchmove","touchend");return s.origin=function(e){return arguments.length?(n=e,s):n},e.rebind(s,t,"on")},e.touches=function(e,t){return arguments.length<2&&(t=U().touches),t?r(t).map(function(t){var n=Ct(e,t);return n.identifier=t.identifier,n}):[]};var Lt=1e-6,At=Lt*Lt,Ot=Math.PI,Mt=2*Ot,_t=Mt-Lt,Dt=Ot/2,Pt=Ot/180,Ht=180/Ot,Wt=Math.SQRT2,Xt=2,Vt=4;e.interpolateZoom=function(e,t){var n=e[0],r=e[1],i=e[2],s=t[0],o=t[1],u=t[2],a=s-n,f=o-r,l=a*a+f*f,c,h;if(l<At)h=Math.log(u/i)/Wt,c=function(e){return[n+e*a,r+e*f,i*Math.exp(Wt*e*h)]};else{var p=Math.sqrt(l),d=(u*u-i*i+Vt*l)/(2*i*Xt*p),v=(u*u-i*i-Vt*l)/(2*u*Xt*p),m=Math.log(Math.sqrt(d*d+1)-d),g=Math.log(Math.sqrt(v*v+1)-v);h=(g-m)/Wt,c=function(e){var t=e*h,s=Rt(m),o=i/(Xt*p)*(s*Ut(Wt*t+m)-qt(m));return[n+o*a,r+o*f,i*s/Rt(Wt*t+m)]}}return c.duration=h*1e3,c},e.behavior.zoom=function(){function S(e){e.on(c,_).on(Kt+".zoom",P).on("dblclick.zoom",H).on(v,D)}function x(e){return[(e[0]-t.x)/t.k,(e[1]-t.y)/t.k]}function T(e){return[e[0]*t.k+t.x,e[1]*t.k+t.y]}function N(e){t.k=Math.max(a[0],Math.min(a[1],e))}function C(e,n){n=T(n),t.x+=e[0]-n[0],t.y+=e[1]-n[1]}function k(n,i,s,o){n.__chart__={x:t.x,y:t.y,k:t.k},N(Math.pow(2,o)),C(r=i,s),n=e.select(n),f>0&&(n=n.transition().duration(f)),n.call(S.event)}function L(){b&&b.domain(y.range().map(function(e){return(e-t.x)/t.k}).map(y.invert)),E&&E.domain(w.range().map(function(e){return(e-t.y)/t.k}).map(w.invert))}function A(e){l++||e({type:"zoomstart"})}function O(e){L(),e({type:"zoom",scale:t.k,translate:[t.x,t.y]})}function M(e){--l||(e({type:"zoomend"}),r=null)}function _(){function a(){r=1,C(e.mouse(t),s),O(n)}function f(){i.on(h,null).on(p,null),u(r),M(n)}var t=this,n=g.of(t,arguments),r=0,i=e.select(o(t)).on(h,a).on(p,f),s=x(e.mouse(t)),u=Tt(t);Af.call(t),A(n)}function D(){function d(){var r=e.touches(n);return o=t.k,r.forEach(function(e){e.identifier in i&&(i[e.identifier]=x(e))}),r}function y(){var r=e.event.target;e.select(r).on(a,b).on(f,w),l.push(r);var o=e.event.changedTouches;for(var u=0,c=o.length;u<c;++u)i[o[u].identifier]=null;var h=d(),p=Date.now();if(h.length===1){if(p-m<500){var v=h[0];k(n,v,i[v.identifier],Math.floor(Math.log(t.k)/Math.LN2)+1),R()}m=p}else if(h.length>1){var v=h[0],g=h[1],y=v[0]-g[0],E=v[1]-g[1];s=y*y+E*E}}function b(){var t=e.touches(n),u,a,f,l;Af.call(n);for(var c=0,h=t.length;c<h;++c,l=null){f=t[c];if(l=i[f.identifier]){if(a)break;u=f,a=l}}if(l){var p=(p=f[0]-u[0])*p+(p=f[1]-u[1])*p,d=s&&Math.sqrt(p/s);u=[(u[0]+f[0])/2,(u[1]+f[1])/2],a=[(a[0]+l[0])/2,(a[1]+l[1])/2],N(d*o)}m=null,C(u,a),O(r)}function w(){if(e.event.touches.length){var t=e.event.changedTouches;for(var n=0,s=t.length;n<s;++n)delete i[t[n].identifier];for(var o in i)return void d()}e.selectAll(l).on(u,null),h.on(c,_).on(v,D),p(),M(r)}var n=this,r=g.of(n,arguments),i={},s=0,o,u=".zoom-"+e.event.changedTouches[0].identifier,a="touchmove"+u,f="touchend"+u,l=[],h=e.select(n),p=Tt(n);y(),A(r),h.on(c,null).on(v,y)}function P(){var i=g.of(this,arguments);d?clearTimeout(d):(Af.call(this),n=x(r=s||e.mouse(this)),A(i)),d=setTimeout(function(){d=null,M(i)},50),R(),N(Math.pow(2,Jt()*.002)*t.k),C(r,n),O(i)}function H(){var n=e.mouse(this),r=Math.log(t.k)/Math.LN2;k(this,n,x(n),e.event.shiftKey?Math.ceil(r)-1:Math.floor(r)+1)}var t={x:0,y:0,k:1},n,r,s,u=[960,500],a=$t,f=250,l=0,c="mousedown.zoom",h="mousemove.zoom",p="mouseup.zoom",d,v="touchstart.zoom",m,g=z(S,"zoomstart","zoom","zoomend"),y,b,w,E;return Kt||(Kt="onwheel"in i?(Jt=function(){return-e.event.deltaY*(e.event.deltaMode?120:1)},"wheel"):"onmousewheel"in i?(Jt=function(){return e.event.wheelDelta},"mousewheel"):(Jt=function(){return-e.event.detail},"MozMousePixelScroll")),S.event=function(n){n.each(function(){var n=g.of(this,arguments),i=t;Pf?e.select(this).transition().each("start.zoom",function(){t=this.__chart__||{x:0,y:0,k:1},A(n)}).tween("zoom:zoom",function(){var s=u[0],o=u[1],a=r?r[0]:s/2,f=r?r[1]:o/2,l=e.interpolateZoom([(a-t.x)/t.k,(f-t.y)/t.k,s/t.k],[(a-i.x)/i.k,(f-i.y)/i.k,s/i.k]);return function(e){var r=l(e),i=s/r[2];this.__chart__=t={x:a-r[0]*i,y:f-r[1]*i,k:i},O(n)}}).each("interrupt.zoom",function(){M(n)}).each("end.zoom",function(){M(n)}):(this.__chart__=t,A(n),O(n),M(n))})},S.translate=function(e){return arguments.length?(t={x:+e[0],y:+e[1],k:t.k},L(),S):[t.x,t.y]},S.scale=function(e){return arguments.length?(t={x:t.x,y:t.y,k:null},N(+e),L(),S):t.k},S.scaleExtent=function(e){return arguments.length?(a=e==null?$t:[+e[0],+e[1]],S):a},S.center=function(e){return arguments.length?(s=e&&[+e[0],+e[1]],S):s},S.size=function(e){return arguments.length?(u=e&&[+e[0],+e[1]],S):u},S.duration=function(e){return arguments.length?(f=+e,S):f},S.x=function(e){return arguments.length?(b=e,y=e.copy(),t={x:0,y:0,k:1},S):b},S.y=function(e){return arguments.length?(E=e,w=e.copy(),t={x:0,y:0,k:1},S):E},e.rebind(S,g,"on")};var $t=[0,Infinity],Jt,Kt;e.color=Qt,Qt.prototype.toString=function(){return this.rgb()+""},e.hsl=Gt;var Yt=Gt.prototype=new Qt;Yt.brighter=function(e){return e=Math.pow(.7,arguments.length?e:1),new Gt(this.h,this.s,this.l/e)},Yt.darker=function(e){return e=Math.pow(.7,arguments.length?e:1),new Gt(this.h,this.s,e*this.l)},Yt.rgb=function(){return Zt(this.h,this.s,this.l)},e.hcl=en;var tn=en.prototype=new Qt;tn.brighter=function(e){return new en(this.h,this.c,Math.min(100,this.l+sn*(arguments.length?e:1)))},tn.darker=function(e){return new en(this.h,this.c,Math.max(0,this.l-sn*(arguments.length?e:1)))},tn.rgb=function(){return nn(this.h,this.c,this.l).rgb()},e.lab=rn;var sn=18,on=.95047,un=1,an=1.08883,fn=rn.prototype=new Qt;fn.brighter=function(e){return new rn(Math.min(100,this.l+sn*(arguments.length?e:1)),this.a,this.b)},fn.darker=function(e){return new rn(Math.max(0,this.l-sn*(arguments.length?e:1)),this.a,this.b)},fn.rgb=function(){return ln(this.l,this.a,this.b)},e.rgb=vn;var yn=vn.prototype=new Qt;yn.brighter=function(e){e=Math.pow(.7,arguments.length?e:1);var t=this.r,n=this.g,r=this.b,i=30;return!t&&!n&&!r?new vn(i,i,i):(t&&t<i&&(t=i),n&&n<i&&(n=i),r&&r<i&&(r=i),new vn(Math.min(255,t/e),Math.min(255,n/e),Math.min(255,r/e)))},yn.darker=function(e){return e=Math.pow(.7,arguments.length?e:1),new vn(e*this.r,e*this.g,e*this.b)},yn.hsl=function(){return En(this.r,this.g,this.b)},yn.toString=function(){return"#"+bn(this.r)+bn(this.g)+bn(this.b)};var Nn=e.map({aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,rebeccapurple:6697881,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074});Nn.forEach(function(e,t){Nn.set(e,mn(t))}),e.functor=Cn,e.xhr=kn(P),e.dsv=function(e,t){function i(e,n,r){arguments.length<3&&(r=n,n=null);var i=Ln(e,t,n==null?s:o(n),r);return i.row=function(e){return arguments.length?i.response((n=e)==null?s:o(e)):n},i}function s(e){return i.parse(e.responseText)}function o(e){return function(t){return i.parse(t.responseText,e)}}function u(t){return t.map(a).join(e)}function a(e){return n.test(e)?'"'+e.replace(/\"/g,'""')+'"':e}var n=new RegExp('["'+e+"\n]"),r=e.charCodeAt(0);return i.parse=function(e,t){var n;return i.parseRows(e,function(e,r){if(n)return n(e,r-1);var i=new Function("d","return {"+e.map(function(e,t){return JSON.stringify(e)+": d["+t+"]"}).join(",")+"}");n=t?function(e,n){return t(i(e),n)}:i})},i.parseRows=function(e,t){function c(){if(u>=o)return i;if(l)return l=!1,n;var t=u;if(e.charCodeAt(t)===34){var s=t;while(s++<o)if(e.charCodeAt(s)===34){if(e.charCodeAt(s+1)!==34)break;++s}u=s+2;var a=e.charCodeAt(s+1);return a===13?(l=!0,e.charCodeAt(s+2)===10&&++u):a===10&&(l=!0),e.slice(t+1,s).replace(/""/g,'"')}while(u<o){var a=e.charCodeAt(u++),f=1;if(a===10)l=!0;else if(a===13)l=!0,e.charCodeAt(u)===10&&(++u,++f);else if(a!==r)continue;return e.slice(t,u-f)}return e.slice(t)}var n={},i={},s=[],o=e.length,u=0,a=0,f,l;while((f=c())!==i){var h=[];while(f!==n&&f!==i)h.push(f),f=c();if(t&&(h=t(h,a++))==null)continue;s.push(h)}return s},i.format=function(t){if(Array.isArray(t[0]))return i.formatRows(t);var n=new D,r=[];return t.forEach(function(e){for(var t in e)n.has(t)||r.push(n.add(t))}),[r.map(a).join(e)].concat(t.map(function(t){return r.map(function(e){return a(t[e])}).join(e)})).join("\n")},i.formatRows=function(e){return e.map(u).join("\n")},i},e.csv=e.dsv(",","text/csv"),e.tsv=e.dsv(" ","text/tab-separated-values");var Mn,_n,Dn,Pn,Hn=this[B(this,"requestAnimationFrame")]||function(e){setTimeout(e,17)};e.timer=function(){Bn.apply(this,arguments)},e.timer.flush=function(){Fn(),In()},e.round=function(e,t){return t?Math.round(e*(t=Math.pow(10,t)))/t:Math.round(e)};var Rn=["y","z","a","f","p","n","µ","m","","k","M","G","T","P","E","Z","Y"].map(Un);e.formatPrefix=function(t,n){var r=0;if(t=+t)t<0&&(t*=-1),n&&(t=e.round(t,qn(t,n))),r=1+Math.floor(1e-12+Math.log(t)/Math.LN10),r=Math.max(-24,Math.min(24,Math.floor((r-1)/3)*3));return Rn[8+r/3
]};var Wn=/(?:([^{])?([<>=^]))?([+\- ])?([$#])?(0)?(\d+)?(,)?(\.-?\d+)?([a-z%])?/i,Xn=e.map({b:function(e){return e.toString(2)},c:function(e){return String.fromCharCode(e)},o:function(e){return e.toString(8)},x:function(e){return e.toString(16)},X:function(e){return e.toString(16).toUpperCase()},g:function(e,t){return e.toPrecision(t)},e:function(e,t){return e.toExponential(t)},f:function(e,t){return e.toFixed(t)},r:function(t,n){return(t=e.round(t,qn(t,n))).toFixed(Math.max(0,Math.min(20,qn(t*(1+1e-15),n))))}}),$n=e.time={},Jn=Date;Kn.prototype={getDate:function(){return this._.getUTCDate()},getDay:function(){return this._.getUTCDay()},getFullYear:function(){return this._.getUTCFullYear()},getHours:function(){return this._.getUTCHours()},getMilliseconds:function(){return this._.getUTCMilliseconds()},getMinutes:function(){return this._.getUTCMinutes()},getMonth:function(){return this._.getUTCMonth()},getSeconds:function(){return this._.getUTCSeconds()},getTime:function(){return this._.getTime()},getTimezoneOffset:function(){return 0},valueOf:function(){return this._.valueOf()},setDate:function(){Qn.setUTCDate.apply(this._,arguments)},setDay:function(){Qn.setUTCDay.apply(this._,arguments)},setFullYear:function(){Qn.setUTCFullYear.apply(this._,arguments)},setHours:function(){Qn.setUTCHours.apply(this._,arguments)},setMilliseconds:function(){Qn.setUTCMilliseconds.apply(this._,arguments)},setMinutes:function(){Qn.setUTCMinutes.apply(this._,arguments)},setMonth:function(){Qn.setUTCMonth.apply(this._,arguments)},setSeconds:function(){Qn.setUTCSeconds.apply(this._,arguments)},setTime:function(){Qn.setTime.apply(this._,arguments)}};var Qn=Date.prototype;$n.year=Gn(function(e){return e=$n.day(e),e.setMonth(0,1),e},function(e,t){e.setFullYear(e.getFullYear()+t)},function(e){return e.getFullYear()}),$n.years=$n.year.range,$n.years.utc=$n.year.utc.range,$n.day=Gn(function(e){var t=new Jn(2e3,0);return t.setFullYear(e.getFullYear(),e.getMonth(),e.getDate()),t},function(e,t){e.setDate(e.getDate()+t)},function(e){return e.getDate()-1}),$n.days=$n.day.range,$n.days.utc=$n.day.utc.range,$n.dayOfYear=function(e){var t=$n.year(e);return Math.floor((e-t-(e.getTimezoneOffset()-t.getTimezoneOffset())*6e4)/864e5)},["sunday","monday","tuesday","wednesday","thursday","friday","saturday"].forEach(function(e,t){t=7-t;var n=$n[e]=Gn(function(e){return(e=$n.day(e)).setDate(e.getDate()-(e.getDay()+t)%7),e},function(e,t){e.setDate(e.getDate()+Math.floor(t)*7)},function(e){var n=$n.year(e).getDay();return Math.floor(($n.dayOfYear(e)+(n+t)%7)/7)-(n!==t)});$n[e+"s"]=n.range,$n[e+"s"].utc=n.utc.range,$n[e+"OfYear"]=function(e){var n=$n.year(e).getDay();return Math.floor(($n.dayOfYear(e)+(n+t)%7)/7)}}),$n.week=$n.sunday,$n.weeks=$n.sunday.range,$n.weeks.utc=$n.sunday.utc.range,$n.weekOfYear=$n.sundayOfYear;var er={"-":"",_:" ",0:"0"},tr=/^\s*\d+/,nr=/^%/;e.locale=function(e){return{numberFormat:zn(e),timeFormat:Zn(e)}};var xr=e.locale({decimal:".",thousands:",",grouping:[3],currency:["$",""],dateTime:"%a %b %e %X %Y",date:"%m/%d/%Y",time:"%H:%M:%S",periods:["AM","PM"],days:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],shortDays:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],months:["January","February","March","April","May","June","July","August","September","October","November","December"],shortMonths:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"]});e.format=xr.numberFormat,e.geo={},Tr.prototype={s:0,t:0,add:function(e){Cr(e,this.t,Nr),Cr(Nr.s,this.s,this),this.s?this.t+=Nr.t:this.s=Nr.t},reset:function(){this.s=this.t=0},valueOf:function(){return this.s}};var Nr=new Tr;e.geo.stream=function(e,t){e&&Lr.hasOwnProperty(e.type)?Lr[e.type](e,t):kr(e,t)};var Lr={Feature:function(e,t){kr(e.geometry,t)},FeatureCollection:function(e,t){var n=e.features,r=-1,i=n.length;while(++r<i)kr(n[r].geometry,t)}},Ar={Sphere:function(e,t){t.sphere()},Point:function(e,t){e=e.coordinates,t.point(e[0],e[1],e[2])},MultiPoint:function(e,t){var n=e.coordinates,r=-1,i=n.length;while(++r<i)e=n[r],t.point(e[0],e[1],e[2])},LineString:function(e,t){Or(e.coordinates,t,0)},MultiLineString:function(e,t){var n=e.coordinates,r=-1,i=n.length;while(++r<i)Or(n[r],t,0)},Polygon:function(e,t){Mr(e.coordinates,t)},MultiPolygon:function(e,t){var n=e.coordinates,r=-1,i=n.length;while(++r<i)Mr(n[r],t)},GeometryCollection:function(e,t){var n=e.geometries,r=-1,i=n.length;while(++r<i)kr(n[r],t)}};e.geo.area=function(t){return _r=0,e.geo.stream(t,Pr),_r};var _r,Dr=new Tr,Pr={sphere:function(){_r+=4*Ot},point:F,lineStart:F,lineEnd:F,polygonStart:function(){Dr.reset(),Pr.lineStart=Hr},polygonEnd:function(){var e=2*Dr;_r+=e<0?4*Ot+e:e,Pr.lineStart=Pr.lineEnd=Pr.point=F}};e.geo.bounds=function(){function p(e,s){l.push(c=[t=e,r=e]),s<n&&(n=s),s>i&&(i=s)}function d(e,o){var u=Br([e*Pt,o*Pt]);if(a){var f=Fr(a,u),l=[f[1],-f[0],0],c=Fr(l,f);Rr(c),c=Ur(c);var h=e-s,d=h>0?1:-1,v=c[0]*Ht*d,m=w(h)>180;if(m^(d*s<v&&v<d*e)){var g=c[1]*Ht;g>i&&(i=g)}else if(v=(v+360)%360-180,m^(d*s<v&&v<d*e)){var g=-c[1]*Ht;g<n&&(n=g)}else o<n&&(n=o),o>i&&(i=o);m?e<s?E(t,e)>E(t,r)&&(r=e):E(e,r)>E(t,r)&&(t=e):r>=t?(e<t&&(t=e),e>r&&(r=e)):e>s?E(t,e)>E(t,r)&&(r=e):E(e,r)>E(t,r)&&(t=e)}else p(e,o);a=u,s=e}function v(){h.point=d}function m(){c[0]=t,c[1]=r,h.point=p,a=null}function g(e,t){if(a){var n=e-s;f+=w(n)>180?n+(n>0?360:-360):n}else o=e,u=t;Pr.point(e,t),d(e,t)}function y(){Pr.lineStart()}function b(){g(o,u),Pr.lineEnd(),w(f)>Lt&&(t=-(r=180)),c[0]=t,c[1]=r,a=null}function E(e,t){return(t-=e)<0?t+360:t}function S(e,t){return e[0]-t[0]}function x(e,t){return t[0]<=t[1]?t[0]<=e&&e<=t[1]:e<t[0]||t[1]<e}var t,n,r,i,s,o,u,a,f,l,c,h={point:p,lineStart:v,lineEnd:m,polygonStart:function(){h.point=g,h.lineStart=y,h.lineEnd=b,f=0,Pr.polygonStart()},polygonEnd:function(){Pr.polygonEnd(),h.point=p,h.lineStart=v,h.lineEnd=m,Dr<0?(t=-(r=180),n=-(i=90)):f>Lt?i=90:f<-Lt&&(n=-90),c[0]=t,c[1]=r}};return function(s){i=r=-(t=n=Infinity),l=[],e.geo.stream(s,h);var o=l.length;if(o){l.sort(S);for(var u=1,a=l[0],f,p=[a];u<o;++u)f=l[u],x(f[0],a)||x(f[1],a)?(E(a[0],f[1])>E(a[0],a[1])&&(a[1]=f[1]),E(f[0],a[1])>E(a[0],a[1])&&(a[0]=f[0])):p.push(a=f);var d=-Infinity,v;for(var o=p.length-1,u=0,a=p[o],f;u<=o;a=f,++u)f=p[u],(v=E(a[1],f[0]))>d&&(d=v,t=f[0],r=a[1])}return l=c=null,t===Infinity||n===Infinity?[[NaN,NaN],[NaN,NaN]]:[[t,n],[r,i]]}}(),e.geo.centroid=function(t){Wr=Xr=Vr=$r=Jr=Kr=Qr=Gr=Yr=Zr=ei=0,e.geo.stream(t,ti);var n=Yr,r=Zr,i=ei,s=n*n+r*r+i*i;if(s<At){n=Kr,r=Qr,i=Gr,Xr<Lt&&(n=Vr,r=$r,i=Jr),s=n*n+r*r+i*i;if(s<At)return[NaN,NaN]}return[Math.atan2(r,n)*Ht,It(i/Math.sqrt(s))*Ht]};var Wr,Xr,Vr,$r,Jr,Kr,Qr,Gr,Yr,Zr,ei,ti={sphere:F,point:ni,lineStart:ii,lineEnd:si,polygonStart:function(){ti.lineStart=oi},polygonEnd:function(){ti.lineStart=ii}},mi=hi(ai,gi,bi,[-Ot,-Ot/2]),xi=1e9;e.geo.clipExtent=function(){var e,t,n,r,i,s,o={stream:function(e){return i&&(i.valid=!1),i=s(e),i.valid=!0,i},extent:function(u){return arguments.length?(s=Ti(e=+u[0][0],t=+u[0][1],n=+u[1][0],r=+u[1][1]),i&&(i.valid=!1,i=null),o):[[e,t],[n,r]]}};return o.extent([[0,0],[960,500]])},(e.geo.conicEqualArea=function(){return Ni(Ci)}).raw=Ci,e.geo.albers=function(){return e.geo.conicEqualArea().rotate([96,0]).center([-0.6,38.7]).parallels([29.5,45.5]).scale(1070)},e.geo.albersUsa=function(){function f(e){var t=e[0],n=e[1];return i=null,(o(t,n),i)||(u(t,n),i)||a(t,n),i}var t=e.geo.albers(),n=e.geo.conicEqualArea().rotate([154,0]).center([-2,58.5]).parallels([55,65]),r=e.geo.conicEqualArea().rotate([157,0]).center([-3,19.9]).parallels([8,18]),i,s={point:function(e,t){i=[e,t]}},o,u,a;return f.invert=function(e){var i=t.scale(),s=t.translate(),o=(e[0]-s[0])/i,u=(e[1]-s[1])/i;return(u>=.12&&u<.234&&o>=-0.425&&o<-0.214?n:u>=.166&&u<.234&&o>=-0.214&&o<-0.115?r:t).invert(e)},f.stream=function(e){var i=t.stream(e),s=n.stream(e),o=r.stream(e);return{point:function(e,t){i.point(e,t),s.point(e,t),o.point(e,t)},sphere:function(){i.sphere(),s.sphere(),o.sphere()},lineStart:function(){i.lineStart(),s.lineStart(),o.lineStart()},lineEnd:function(){i.lineEnd(),s.lineEnd(),o.lineEnd()},polygonStart:function(){i.polygonStart(),s.polygonStart(),o.polygonStart()},polygonEnd:function(){i.polygonEnd(),s.polygonEnd(),o.polygonEnd()}}},f.precision=function(e){return arguments.length?(t.precision(e),n.precision(e),r.precision(e),f):t.precision()},f.scale=function(e){return arguments.length?(t.scale(e),n.scale(e*.35),r.scale(e),f.translate(t.translate())):t.scale()},f.translate=function(e){if(!arguments.length)return t.translate();var i=t.scale(),l=+e[0],c=+e[1];return o=t.translate(e).clipExtent([[l-.455*i,c-.238*i],[l+.455*i,c+.238*i]]).stream(s).point,u=n.translate([l-.307*i,c+.201*i]).clipExtent([[l-.425*i+Lt,c+.12*i+Lt],[l-.214*i-Lt,c+.234*i-Lt]]).stream(s).point,a=r.translate([l-.205*i,c+.212*i]).clipExtent([[l-.214*i+Lt,c+.166*i+Lt],[l-.115*i-Lt,c+.234*i-Lt]]).stream(s).point,f},f.scale(1070)};var ki,Li,Ai={point:F,lineStart:F,lineEnd:F,polygonStart:function(){Li=0,Ai.lineStart=Oi},polygonEnd:function(){Ai.lineStart=Ai.lineEnd=Ai.point=F,ki+=w(Li/2)}},Mi,_i,Di,Pi,Hi={point:Bi,lineStart:F,lineEnd:F,polygonStart:F,polygonEnd:F},Ii={point:qi,lineStart:Ri,lineEnd:Ui,polygonStart:function(){Ii.lineStart=zi},polygonEnd:function(){Ii.point=qi,Ii.lineStart=Ri,Ii.lineEnd=Ui}};e.geo.path=function(){function u(n){if(n){typeof t=="function"&&s.pointRadius(+t.apply(this,arguments));if(!o||!o.valid)o=i(s);e.geo.stream(n,o)}return s.result()}function a(){return o=null,u}var t=4.5,n,r,i,s,o;return u.area=function(t){return ki=0,e.geo.stream(t,i(Ai)),ki},u.centroid=function(t){return Vr=$r=Jr=Kr=Qr=Gr=Yr=Zr=ei=0,e.geo.stream(t,i(Ii)),ei?[Yr/ei,Zr/ei]:Gr?[Kr/Gr,Qr/Gr]:Jr?[Vr/Jr,$r/Jr]:[NaN,NaN]},u.bounds=function(t){return Di=Pi=-(Mi=_i=Infinity),e.geo.stream(t,i(Hi)),[[Mi,_i],[Di,Pi]]},u.projection=function(e){return arguments.length?(i=(n=e)?e.stream||Vi(e):P,a()):n},u.context=function(e){return arguments.length?(s=(r=e)==null?new ji:new Wi(e),typeof t!="function"&&s.pointRadius(t),a()):r},u.pointRadius=function(e){return arguments.length?(t=typeof e=="function"?e:(s.pointRadius(+e),+e),u):t},u.projection(e.geo.albersUsa()).context(null)},e.geo.transform=function(e){return{stream:function(t){var n=new $i(t);for(var r in e)n[r]=e[r];return n}}},$i.prototype={point:function(e,t){this.stream.point(e,t)},sphere:function(){this.stream.sphere()},lineStart:function(){this.stream.lineStart()},lineEnd:function(){this.stream.lineEnd()},polygonStart:function(){this.stream.polygonStart()},polygonEnd:function(){this.stream.polygonEnd()}},e.geo.projection=Ki,e.geo.projectionMutator=Qi,(e.geo.equirectangular=function(){return Ki(Yi)}).raw=Yi.invert=Yi,e.geo.rotation=function(e){function t(t){return t=e(t[0]*Pt,t[1]*Pt),t[0]*=Ht,t[1]*=Ht,t}return e=es(e[0]%360*Pt,e[1]*Pt,e.length>2?e[2]*Pt:0),t.invert=function(t){return t=e.invert(t[0]*Pt,t[1]*Pt),t[0]*=Ht,t[1]*=Ht,t},t},Zi.invert=Yi,e.geo.circle=function(){function i(){var t=typeof e=="function"?e.apply(this,arguments):e,n=es(-t[0]*Pt,-t[1]*Pt,0).invert,i=[];return r(null,null,1,{point:function(e,t){i.push(e=n(e,t)),e[0]*=Ht,e[1]*=Ht}}),{type:"Polygon",coordinates:[i]}}var e=[0,0],t,n=6,r;return i.origin=function(t){return arguments.length?(e=t,i):e},i.angle=function(e){return arguments.length?(r=is((t=+e)*Pt,n*Pt),i):t},i.precision=function(e){return arguments.length?(r=is(t*Pt,(n=+e)*Pt),i):n},i.angle(90)},e.geo.distance=function(e,t){var n=(t[0]-e[0])*Pt,r=e[1]*Pt,i=t[1]*Pt,s=Math.sin(n),o=Math.cos(n),u=Math.sin(r),a=Math.cos(r),f=Math.sin(i),l=Math.cos(i),c;return Math.atan2(Math.sqrt((c=l*s)*c+(c=a*f-u*l*o)*c),u*f+a*l*o)},e.geo.graticule=function(){function y(){return{type:"MultiLineString",coordinates:b()}}function b(){return e.range(Math.ceil(i/c)*c,r,c).map(v).concat(e.range(Math.ceil(a/h)*h,u,h).map(m)).concat(e.range(Math.ceil(n/f)*f,t,f).filter(function(e){return w(e%c)>Lt}).map(p)).concat(e.range(Math.ceil(o/l)*l,s,l).filter(function(e){return w(e%h)>Lt}).map(d))}var t,n,r,i,s,o,u,a,f=10,l=f,c=90,h=360,p,d,v,m,g=2.5;return y.lines=function(){return b().map(function(e){return{type:"LineString",coordinates:e}})},y.outline=function(){return{type:"Polygon",coordinates:[v(i).concat(m(u).slice(1),v(r).reverse().slice(1),m(a).reverse().slice(1))]}},y.extent=function(e){return arguments.length?y.majorExtent(e).minorExtent(e):y.minorExtent()},y.majorExtent=function(e){return arguments.length?(i=+e[0][0],r=+e[1][0],a=+e[0][1],u=+e[1][1],i>r&&(e=i,i=r,r=e),a>u&&(e=a,a=u,u=e),y.precision(g)):[[i,a],[r,u]]},y.minorExtent=function(e){return arguments.length?(n=+e[0][0],t=+e[1][0],o=+e[0][1],s=+e[1][1],n>t&&(e=n,n=t,t=e),o>s&&(e=o,o=s,s=e),y.precision(g)):[[n,o],[t,s]]},y.step=function(e){return arguments.length?y.majorStep(e).minorStep(e):y.minorStep()},y.majorStep=function(e){return arguments.length?(c=+e[0],h=+e[1],y):[c,h]},y.minorStep=function(e){return arguments.length?(f=+e[0],l=+e[1],y):[f,l]},y.precision=function(e){return arguments.length?(g=+e,p=os(o,s,90),d=us(n,t,g),v=os(a,u,90),m=us(i,r,g),y):g},y.majorExtent([[-180,-90+Lt],[180,90-Lt]]).minorExtent([[-180,-80-Lt],[180,80+Lt]])},e.geo.greatArc=function(){function s(){return{type:"LineString",coordinates:[n||t.apply(this,arguments),i||r.apply(this,arguments)]}}var t=as,n,r=fs,i;return s.distance=function(){return e.geo.distance(n||t.apply(this,arguments),i||r.apply(this,arguments))},s.source=function(e){return arguments.length?(t=e,n=typeof e=="function"?null:e,s):t},s.target=function(e){return arguments.length?(r=e,i=typeof e=="function"?null:e,s):r},s.precision=function(){return arguments.length?s:0},s},e.geo.interpolate=function(e,t){return ls(e[0]*Pt,e[1]*Pt,t[0]*Pt,t[1]*Pt)},e.geo.length=function(t){return cs=0,e.geo.stream(t,hs),cs};var cs,hs={sphere:F,point:F,lineStart:ps,lineEnd:F,polygonStart:F,polygonEnd:F},vs=ds(function(e){return Math.sqrt(2/(1+e))},function(e){return 2*Math.asin(e/2)});(e.geo.azimuthalEqualArea=function(){return Ki(vs)}).raw=vs;var ms=ds(function(e){var t=Math.acos(e);return t&&t/Math.sin(t)},P);(e.geo.azimuthalEquidistant=function(){return Ki(ms)}).raw=ms,(e.geo.conicConformal=function(){return Ni(gs)}).raw=gs,(e.geo.conicEquidistant=function(){return Ni(ys)}).raw=ys;var bs=ds(function(e){return 1/e},Math.atan);(e.geo.gnomonic=function(){return Ki(bs)}).raw=bs,ws.invert=function(e,t){return[e,2*Math.atan(Math.exp(t))-Dt]},(e.geo.mercator=function(){return Es(ws)}).raw=ws;var Ss=ds(function(){return 1},Math.asin);(e.geo.orthographic=function(){return Ki(Ss)}).raw=Ss;var xs=ds(function(e){return 1/(1+e)},function(e){return 2*Math.atan(e)});(e.geo.stereographic=function(){return Ki(xs)}).raw=xs,Ts.invert=function(e,t){return[-t,2*Math.atan(Math.exp(e))-Dt]},(e.geo.transverseMercator=function(){var e=Es(Ts),t=e.center,n=e.rotate;return e.center=function(e){return e?t([-e[1],e[0]]):(e=t(),[e[1],-e[0]])},e.rotate=function(e){return e?n([e[0],e[1],e.length>2?e[2]+90:90]):(e=n(),[e[0],e[1],e[2]-90])},n([0,0,90])}).raw=Ts,e.geom={},e.geom.hull=function(e){function r(e){if(e.length<3)return[];var r=Cn(t),i=Cn(n),s,o=e.length,u=[],a=[];for(s=0;s<o;s++)u.push([+r.call(this,e[s],s),+i.call(this,e[s],s),s]);u.sort(Ls);for(s=0;s<o;s++)a.push([u[s][0],-u[s][1]]);var f=ks(u),l=ks(a),c=l[0]===f[0],h=l[l.length-1]===f[f.length-1],p=[];for(s=f.length-1;s>=0;--s)p.push(e[u[f[s]][2]]);for(s=+c;s<l.length-h;++s)p.push(e[u[l[s]][2]]);return p}var t=Ns,n=Cs;return arguments.length?r(e):(r.x=function(e){return arguments.length?(t=e,r):t},r.y=function(e){return arguments.length?(n=e,r):n},r)},e.geom.polygon=function(e){return X(e,As),e};var As=e.geom.polygon.prototype=[];As.area=function(){var e=-1,t=this.length,n,r=this[t-1],i=0;while(++e<t)n=r,r=this[e],i+=n[1]*r[0]-n[0]*r[1];return i*.5},As.centroid=function(e){var t=-1,n=this.length,r=0,i=0,s,o=this[n-1],u;arguments.length||(e=-1/(6*this.area()));while(++t<n)s=o,o=this[t],u=s[0]*o[1]-o[0]*s[1],r+=(s[0]+o[0])*u,i+=(s[1]+o[1])*u;return[r*e,i*e]},As.clip=function(e){var t,n=_s(e),r=-1,i=this.length-_s(this),s,o,u=this[i-1],a,f,l;while(++r<i){t=e.slice(),e.length=0,a=this[r],f=t[(o=t.length-n)-1],s=-1;while(++s<o)l=t[s],Os(l,u,a)?(Os(f,u,a)||e.push(Ms(f,l,u,a)),e.push(l)):Os(f,u,a)&&e.push(Ms(f,l,u,a)),f=l;n&&e.push(e[0]),u=a}return e};var Ds,Ps,Hs,Bs=[],js,Fs,Is=[];$s.prototype.prepare=function(){var e=this.edges,t=e.length,n;while(t--)n=e[t].edge,(!n.b||!n.a)&&e.splice(t,1);return e.sort(Ks),e.length},so.prototype={start:function(){return this.edge.l===this.site?this.edge.a:this.edge.b},end:function(){return this.edge.l===this.site?this.edge.b:this.edge.a}},oo.prototype={insert:function(e,t){var n,r,i;if(e){t.P=e,t.N=e.N,e.N&&(e.N.P=t),e.N=t;if(e.R){e=e.R;while(e.L)e=e.L;e.L=t}else e.R=t;n=e}else this._?(e=lo(this._),t.P=null,t.N=e,e.P=e.L=t,n=e):(t.P=t.N=null,this._=t,n=null);t.L=t.R=null,t.U=n,t.C=!0,e=t;while(n&&n.C)r=n.U,n===r.L?(i=r.R,i&&i.C?(n.C=i.C=!1,r.C=!0,e=r):(e===n.R&&(ao(this,n),e=n,n=e.U),n.C=!1,r.C=!0,fo(this,r))):(i=r.L,i&&i.C?(n.C=i.C=!1,r.C=!0,e=r):(e===n.L&&(fo(this,n),e=n,n=e.U),n.C=!1,r.C=!0,ao(this,r))),n=e.U;this._.C=!1},remove:function(e){e.N&&(e.N.P=e.P),e.P&&(e.P.N=e.N),e.N=e.P=null;var t=e.U,n,r=e.L,i=e.R,s,o;r?i?s=lo(i):s=r:s=i,t?t.L===e?t.L=s:t.R=s:this._=s,r&&i?(o=s.C,s.C=e.C,s.L=r,r.U=s,s!==i?(t=s.U,s.U=e.U,e=s.R,t.L=e,s.R=i,i.U=s):(s.U=t,t=s,e=s.R)):(o=e.C,e=s),e&&(e.U=t);if(o)return;if(e&&e.C){e.C=!1;return}do{if(e===this._)break;if(e===t.L){n=t.R,n.C&&(n.C=!1,t.C=!0,ao(this,t),n=t.R);if(n.L&&n.L.C||n.R&&n.R.C){if(!n.R||!n.R.C)n.L.C=!1,n.C=!0,fo(this,n),n=t.R;n.C=t.C,t.C=n.R.C=!1,ao(this,t),e=this._;break}}else{n=t.L,n.C&&(n.C=!1,t.C=!0,fo(this,t),n=t.L);if(n.L&&n.L.C||n.R&&n.R.C){if(!n.L||!n.L.C)n.R.C=!1,n.C=!0,ao(this,n),n=t.L;n.C=t.C,t.C=n.L.C=!1,fo(this,t),e=this._;break}}n.C=!0,e=t,t=t.U}while(!e.C);e&&(e.C=!1)}},e.geom.voronoi=function(e){function o(e){var t=new Array(e.length),n=s[0][0],r=s[0][1],i=s[1][0],o=s[1][1];return co(u(e),s).cells.forEach(function(s,u){var a=s.edges,f=s.site,l=t[u]=a.length?a.map(function(e){var t=e.start();return[t.x,t.y]}):f.x>=n&&f.x<=i&&f.y>=r&&f.y<=o?[[n,o],[i,o],[i,r],[n,r]]:[];l.point=e[u]}),t}function u(e){return e.map(function(e,t){return{x:Math.round(r(e,t)/Lt)*Lt,y:Math.round(i(e,t)/Lt)*Lt,i:t}})}var t=Ns,n=Cs,r=t,i=n,s=po;return e?o(e):(o.links=function(e){return co(u(e)).edges.filter(function(e){return e.l&&e.r}).map(function(t){return{source:e[t.l.i],target:e[t.r.i]}})},o.triangles=function(e){var t=[];return co(u(e)).cells.forEach(function(n,r){var i=n.site,s=n.edges.sort(Ks),o=-1,u=s.length,a,f,l=s[u-1].edge,c=l.l===i?l.r:l.l;while(++o<u)a=l,f=c,l=s[o].edge,c=l.l===i?l.r:l.l,r<f.i&&r<c.i&&vo(i,f,c)<0&&t.push([e[r],e[f.i],e[c.i]])}),t},o.x=function(e){return arguments.length?(r=Cn(t=e),o):t},o.y=function(e){return arguments.length?(i=Cn(n=e),o):n},o.clipExtent=function(e){return arguments.length?(s=e==null?po:e,o):s===po?null:s},o.size=function(e){return arguments.length?o.clipExtent(e&&[[0,0],e]):s===po?null:s&&s[1]},o)};var po=[[-1e6,-1e6],[1e6,1e6]];e.geom.delaunay=function(t){return e.geom.voronoi().triangles(t)},e.geom.quadtree=function(e,t,n,r,i){function a(e){function T(e,t,n,r,i,s,o,u){if(isNaN(n)||isNaN(r))return;if(e.leaf){var a=e.x,f=e.y;if(a!=null)if(w(a-n)+w(f-r)<.01)N(e,t,n,r,i,s,o,u);else{var l=e.point;e.x=e.y=e.point=null,N(e,l,a,f,i,s,o,u),N(e,t,n,r,i,s,o,u)}else e.x=n,e.y=r,e.point=t}else N(e,t,n,r,i,s,o,u)}function N(e,t,n,r,i,s,o,u){var a=(i+o)*.5,f=(s+u)*.5,l=n>=a,c=r>=f,h=c<<1|l;e.leaf=!1,e=e.nodes[h]||(e.nodes[h]=yo()),l?i=a:o=a,c?s=f:u=f,T(e,t,n,r,i,s,o,u)}var a,f=Cn(s),l=Cn(o),c,h,p,d,v,m,g,y;if(t!=null)v=t,m=n,g=r,y=i;else{g=y=-(v=m=Infinity),c=[],h=[],d=e.length;if(u)for(p=0;p<d;++p)a=e[p],a.x<v&&(v=a.x),a.y<m&&(m=a.y),a.x>g&&(g=a.x),a.y>y&&(y=a.y),c.push(a.x),h.push(a.y);else for(p=0;p<d;++p){var b=+f(a=e[p],p),E=+l(a,p);b<v&&(v=b),E<m&&(m=E),b>g&&(g=b),E>y&&(y=E),c.push(b),h.push(E)}}var S=g-v,x=y-m;S>x?y=m+S:g=v+x;var C=yo();C.add=function(e){T(C,e,+f(e,++p),+l(e,p),v,m,g,y)},C.visit=function(e){bo(e,C,v,m,g,y)},C.find=function(e){return wo(C,e[0],e[1],v,m,g,y)},p=-1;if(t==null){while(++p<d)T(C,e[p],c[p],h[p],v,m,g,y);--p}else e.forEach(C.add);return c=h=e=a=null,C}var s=Ns,o=Cs,u;return(u=arguments.length)?(s=mo,o=go,u===3&&(i=n,r=t,n=t=0),a(e)):(a.x=function(e){return arguments.length?(s=e,a):s},a.y=function(e){return arguments.length?(o=e,a):o},a.extent=function(e){return arguments.length?(e==null?t=n=r=i=null:(t=+e[0][0],n=+e[0][1],r=+e[1][0],i=+e[1][1]),a):t==null?null:[[t,n],[r,i]]},a.size=function(e){return arguments.length?(e==null?t=n=r=i=null:(t=n=0,r=+e[0],i=+e[1]),a):t==null?null:[r-t,i-n]},a)},e.interpolateRgb=Eo,e.interpolateObject=So,e.interpolateNumber=xo,e.interpolateString=To;var No=/[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g,Co=new RegExp(No.source,"g");e.interpolate=ko,e.interpolators=[function(e,t){var n=typeof t;return(n==="string"?Nn.has(t.toLowerCase())||/^(#|rgb\(|hsl\()/i.test(t)?Eo:To:t instanceof Qt?Eo:Array.isArray(t)?Lo:n==="object"&&isNaN(t)?So:xo)(e,t)}],e.interpolateArray=Lo;var Ao=function(){return P},Oo=e.map({linear:Ao,poly:Fo,quad:function(){return Ho},cubic:function(){return Bo},sin:function(){return Io},exp:function(){return qo},circle:function(){return Ro},elastic:Uo,back:zo,bounce:function(){return Wo}}),Mo=e.map({"in":P,out:Do,"in-out":Po,"out-in":function(e){return Po(Do(e))}});e.ease=function(e){var t=e.indexOf("-"),r=t>=0?e.slice(0,t):e,i=t>=0?e.slice(t+1):"in";return r=Oo.get(r)||Ao,i=Mo.get(i)||P,_o(i(r.apply(null,n.call(arguments,1))))},e.interpolateHcl=Xo,e.interpolateHsl=Vo,e.interpolateLab=$o,e.interpolateRound=Jo,e.transform=function(t){var n=i.createElementNS(e.ns.prefix.svg,"g");return(e.transform=function(e){if(e!=null){n.setAttribute("transform",e);var t=n.transform.baseVal.consolidate()}return new Ko(t?t.matrix:Zo)})(t)},Ko.prototype.toString=function(){return"translate("+this.translate+")rotate("+this.rotate+")skewX("+this.skew+")scale("+this.scale+")"};var Zo={a:1,b:0,c:0,d:1,e:0,f:0};e.interpolateTransform=su,e.layout={},e.layout.bundle=function(){return function(e){var t=[],n=-1,r=e.length;while(++n<r)t.push(au(e[n]));return t}},e.layout.chord=function(){function l(){var t={},l=[],h=e.range(s),p=[],d,v,m,g,y;n=[],r=[],d=0,g=-1;while(++g<s){v=0,y=-1;while(++y<s)v+=i[g][y];l.push(v),p.push(e.range(s)),d+=v}u&&h.sort(function(e,t){return u(l[e],l[t])}),a&&p.forEach(function(e,t){e.sort(function(e,n){return a(i[t][e],i[t][n])})}),d=(Mt-o*s)/d,v=0,g=-1;while(++g<s){m=v,y=-1;while(++y<s){var b=h[g],w=p[b][y],E=i[b][w],S=v,x=v+=E*d;t[b+"-"+w]={index:b,subindex:w,startAngle:S,endAngle:x,value:E}}r[b]={index:b,startAngle:m,endAngle:v,value:l[b]},v+=o}g=-1;while(++g<s){y=g-1;while(++y<s){var T=t[g+"-"+y],N=t[y+"-"+g];(T.value||N.value)&&n.push(T.value<N.value?{source:N,target:T}:{source:T,target:N})}}f&&c()}function c(){n.sort(function(e,t){return f((e.source.value+e.target.value)/2,(t.source.value+t.target.value)/2)})}var t={},n,r,i,s,o=0,u,a,f;return t.matrix=function(e){return arguments.length?(s=(i=e)&&i.length,n=r=null,t):i},t.padding=function(e){return arguments.length?(o=e,n=r=null,t):o},t.sortGroups=function(e){return arguments.length?(u=e,n=r=null,t):u},t.sortSubgroups=function(e){return arguments.length?(a=e,n=null,t):a},t.sortChords=function(e){return arguments.length?(f=e,n&&c(),t):f},t.chords=function(){return n||l(),n},t.groups=function(){return r||l(),r},t},e.layout.force=function(){function b(e){return function(t,n,r,i){if(t.point!==e){var s=t.cx-e.x,o=t.cy-e.y,u=i-n,a=s*s+o*o;if(u*u/p<a){if(a<c){var f=t.charge/a;e.px-=s*f,e.py-=o*f}return!0}if(t.point&&a&&a<c){var f=t.pointCharge/a;e.px-=s*f,e.py-=o*f}}return!t.charge}}function w(n){n.px=e.event.x,n.py=e.event.y,t.resume()}var t={},n=e.dispatch("start","tick","end"),r,i=[1,1],s,o,u=.9,a=mu,f=gu,l=-30,c=yu,h=.1,p=.64,d=[],v=[],m,g,y;return t.tick=function(){if((o*=.99)<.005)return r=null,n.end({type:"end",alpha:o=0}),!0;var t=d.length,s=v.length,a,f,c,p,w,E,S,x,T;for(f=0;f<s;++f){c=v[f],p=c.source,w=c.target,x=w.x-p.x,T=w.y-p.y;if(E=x*x+T*T)E=o*g[f]*((E=Math.sqrt(E))-m[f])/E,x*=E,T*=E,w.x-=x*(S=p.weight+w.weight?p.weight/(p.weight+w.weight):.5),w.y-=T*S,p.x+=x*(S=1-S),p.y+=T*S}if(S=o*h){x=i[0]/2,T=i[1]/2,f=-1;if(S)while(++f<t)c=d[f],c.x+=(x-c.x)*S,c.y+=(T-c.y)*S}if(l){vu(a=e.geom.quadtree(d),o,y),f=-1;while(++f<t)(c=d[f]).fixed||a.visit(b(c))}f=-1;while(++f<t)c=d[f],c.fixed?(c.x=c.px,c.y=c.py):(c.x-=(c.px-(c.px=c.x))*u,c.y-=(c.py-(c.py=c.y))*u);n.tick({type:"tick",alpha:o})},t.nodes=function(e){return arguments.length?(d=e,t):d},t.links=function(e){return arguments.length?(v=e,t):v},t.size=function(e){return arguments.length?(i=e,t):i},t.linkDistance=function(e){return arguments.length?(a=typeof e=="function"?e:+e,t):a},t.distance=t.linkDistance,t.linkStrength=function(e){return arguments.length?(f=typeof e=="function"?e:+e,t):f},t.friction=function(e){return arguments.length?(u=+e,t):u},t.charge=function(e){return arguments.length?(l=typeof e=="function"?e:+e,t):l},t.chargeDistance=function(e){return arguments.length?(c=e*e,t):Math.sqrt(c)},t.gravity=function(e){return arguments.length?(h=+e,t):h},t.theta=function(e){return arguments.length?(p=e*e,t):Math.sqrt(p)},t.alpha=function(e){return arguments.length?(e=+e,o?e>0?o=e:(r.c=null,r.t=NaN,r=null,n.end({type:"end",alpha:o=0})):e>0&&(n.start({type:"start",alpha:o=e}),r=Bn(t.tick)),t):o},t.start=function(){function h(t,i){if(!u){u=new Array(n);for(a=0;a<n;++a)u[a]=[];for(a=0;a<r;++a){var s=v[a];u[s.source.index].push(s.target),u[s.target.index].push(s.source)}}var o=u[e],a=-1,f=o.length,l;while(++a<f)if(!isNaN(l=o[a][t]))return l;return Math.random()*i}var e,n=d.length,r=v.length,s=i[0],o=i[1],u,c;for(e=0;e<n;++e)(c=d[e]).index=e,c.weight=0;for(e=0;e<r;++e)c=v[e],typeof c.source=="number"&&(c.source=d[c.source]),typeof c.target=="number"&&(c.target=d[c.target]),++c.source.weight,++c.target.weight;for(e=0;e<n;++e)c=d[e],isNaN(c.x)&&(c.x=h("x",s)),isNaN(c.y)&&(c.y=h("y",o)),isNaN(c.px)&&(c.px=c.x),isNaN(c.py)&&(c.py=c.y);m=[];if(typeof a=="function")for(e=0;e<r;++e)m[e]=+a.call(this,v[e],e);else for(e=0;e<r;++e)m[e]=a;g=[];if(typeof f=="function")for(e=0;e<r;++e)g[e]=+f.call(this,v[e],e);else for(e=0;e<r;++e)g[e]=f;y=[];if(typeof l=="function")for(e=0;e<n;++e)y[e]=+l.call(this,d[e],e);else for(e=0;e<n;++e)y[e]=l;return t.resume()},t.resume=function(){return t.alpha(.1)},t.stop=function(){return t.alpha(0)},t.drag=function(){s||(s=e.behavior.drag().origin(P).on("dragstart.force",cu).on("drag.force",w).on("dragend.force",hu));if(!arguments.length)return s;this.on("mouseover.force",pu).on("mouseout.force",du).call(s)},e.rebind(t,n,"on")};var mu=20,gu=1,yu=Infinity;e.layout.hierarchy=function(){function r(i){var s=[i],o=[],u;i.depth=0;while((u=s.pop())!=null){o.push(u);if((f=t.call(r,u,u.depth))&&(a=f.length)){var a,f,l;while(--a>=0)s.push(l=f[a]),l.parent=u,l.depth=u.depth+1;n&&(u.value=0),u.children=f}else n&&(u.value=+n.call(r,u,u.depth)||0),delete u.children}return Eu(i,function(t){var r,i;e&&(r=t.children)&&r.sort(e),n&&(i=t.parent)&&(i.value+=t.value)}),o}var e=Tu,t=Su,n=xu;return r.sort=function(t){return arguments.length?(e=t,r):e},r.children=function(e){return arguments.length?(t=e,r):t},r.value=function(e){return arguments.length?(n=e,r):n},r.revalue=function(e){return n&&(wu(e,function(e){e.children&&(e.value=0)}),Eu(e,function(e){var t;e.children||(e.value=+n.call(r,e,e.depth)||0);if(t=e.parent)t.value+=e.value})),e},r},e.layout.partition=function(){function r(e,t,n,i){var s=e.children;e.x=t,e.y=e.depth*i,e.dx=n,e.dy=i;if(s&&(u=s.length)){var o=-1,u,a,f;n=e.value?n/e.value:0;while(++o<u)r(a=s[o],t,f=a.value*n,i),t+=f}}function i(e){var t=e.children,n=0;if(t&&(s=t.length)){var r=-1,s;while(++r<s)n=Math.max(n,i(t[r]))}return 1+n}function s(e,s){var o=t.call(this,e,s);return r(o[0],0,n[0],n[1]/i(o[0])),o}var t=e.layout.hierarchy(),n=[1,1];return s.size=function(e){return arguments.length?(n=e,s):n},bu(s,t)},e.layout.pie=function(){function o(u){var a=u.length,f=u.map(function(e,n){return+t.call(o,e,n)}),l=+(typeof r=="function"?r.apply(this,arguments):r),c=(typeof i=="function"?i.apply(this,arguments):i)-l,h=Math.min(Math.abs(c)/a,+(typeof s=="function"?s.apply(this,arguments):s)),p=h*(c<0?-1:1),d=e.sum(f),v=d?(c-a*p)/d:0,m=e.range(a),g=[],y;return n!=null&&m.sort(n===Cu?function(e,t){return f[t]-f[e]}:function(e,t){return n(u[e],u[t])}),m.forEach(function(e){g[e]={data:u[e],value:y=f[e],startAngle:l,endAngle:l+=y*v+p,padAngle:h}}),g}var t=Number,n=Cu,r=0,i=Mt,s=0;return o.value=function(e){return arguments.length?(t=e,o):t},o.sort=function(e){return arguments.length?(n=e,o):n},o.startAngle=function(e){return arguments.length?(r=e,o):r},o.endAngle=function(e){return arguments.length?(i=e,o):i},o.padAngle=function(e){return arguments.length?(s=e,o):s},o};var Cu={};e.layout.stack=function(){function u(a,f){if(!(v=a.length))return a;var l=a.map(function(e,n){return t.call(u,e,n)}),c=l.map(function(e){return e.map(function(e,t){return[s.call(u,e,t),o.call(u,e,t)]})}),h=n.call(u,c,f);l=e.permute(l,h),c=e.permute(c,h);var p=r.call(u,c,f),d=l[0].length,v,m,g,y;for(g=0;g<d;++g){i.call(u,l[0][g],y=p[g],c[0][g][1]);for(m=1;m<v;++m)i.call(u,l[m][g],y+=c[m-1][g][1],c[m][g][1])}return a}var t=P,n=_u,r=Du,i=Au,s=ku,o=Lu;return u.values=function(e){return arguments.length?(t=e,u):t},u.order=function(e){return arguments.length?(n=typeof e=="function"?e:Ou.get(e)||_u,u):n},u.offset=function(e){return arguments.length?(r=typeof e=="function"?e:Mu.get(e)||Du,u):r},u.x=function(e){return arguments.length?(s=e,u):s},u.y=function(e){return arguments.length?(o=e,u):o},u.out=function(e){return arguments.length?(i=e,u):i},u};var Ou=e.map({"inside-out":function(t){var n=t.length,r,i,s=t.map(Pu),o=t.map(Hu),u=e.range(n).sort(function(e,t){return s[e]-s[t]}),a=0,f=0,l=[],c=[];for(r=0;r<n;++r)i=u[r],a<f?(a+=o[i],l.push(i)):(f+=o[i],c.push(i));return c.reverse().concat(l)},reverse:function(t){return e.range(t.length).reverse()},"default":_u}),Mu=e.map({silhouette:function(e){var t=e.length,n=e[0].length,r=[],i=0,s,o,u,a=[];for(o=0;o<n;++o){for(s=0,u=0;s<t;s++)u+=e[s][o][1];u>i&&(i=u),r.push(u)}for(o=0;o<n;++o)a[o]=(i-r[o])/2;return a},wiggle:function(e){var t=e.length,n=e[0],r=n.length,i,s,o,u,a,f,l,c,h,p=[];p[0]=c=h=0;for(s=1;s<r;++s){for(i=0,u=0;i<t;++i)u+=e[i][s][1];for(i=0,a=0,l=n[s][0]-n[s-1][0];i<t;++i){for(o=0,f=(e[i][s][1]-e[i][s-1][1])/(2*l);o<i;++o)f+=(e[o][s][1]-e[o][s-1][1])/l;a+=f*e[i][s][1]}p[s]=c-=u?a/u*l:0,c<h&&(h=c)}for(s=0;s<r;++s)p[s]-=h;return p},expand:function(e){var t=e.length,n=e[0].length,r=1/t,i,s,o,u=[];for(s=0;s<n;++s){for(i=0,o=0;i<t;i++)o+=e[i][s][1];if(o)for(i=0;i<t;i++)e[i][s][1]/=o;else for(i=0;i<t;i++)e[i][s][1]=r}for(s=0;s<n;++s)u[s]=0;return u},zero:Du});e.layout.histogram=function(){function s(s,o){var u=[],a=s.map(n,this),f=r.call(this,a,o),l=i.call(this,f,a,o),c,o=-1,h=a.length,p=l.length-1,d=t?1:1/h,v;while(++o<p)c=u[o]=[],c.dx=l[o+1]-(c.x=l[o]),c.y=0;if(p>0){o=-1;while(++o<h)v=a[o],v>=f[0]&&v<=f[1]&&(c=u[e.bisect(l,v,1,p)-1],c.y+=d,c.push(s[o]))}return u}var t=!0,n=Number,r=Iu,i=ju;return s.value=function(e){return arguments.length?(n=e,s):n},s.range=function(e){return arguments.length?(r=Cn(e),s):r},s.bins=function(e){return arguments.length?(i=typeof e=="number"?function(t){return Fu(t,e)}:Cn(e),s):i},s.frequency=function(e){return arguments.length?(t=!!e,s):t},s},e.layout.pack=function(){function s(e,s){var o=t.call(this,e,s),u=o[0],a=r[0],f=r[1],l=i==null?Math.sqrt:typeof i=="function"?i:function(){return i};u.x=u.y=0,Eu(u,function(e){e.r=+l(e.value)}),Eu(u,Wu);if(n){var c=n*(i?1:Math.max(2*u.r/a,2*u.r/f))/2;Eu(u,function(e){e.r+=c}),Eu(u,Wu),Eu(u,function(e){e.r-=c})}return $u(u,a/2,f/2,i?1:1/Math.max(2*u.r/a,2*u.r/f)),o}var t=e.layout.hierarchy().sort(qu),n=0,r=[1,1],i;return s.size=function(e){return arguments.length?(r=e,s):r},s.radius=function(e){return arguments.length?(i=e==null||typeof e=="function"?e:+e,s):i},s.padding=function(e){return arguments.length?(n=+e,s):n},bu(s,t)},e.layout.tree=function(){function s(e,s){var f=t.call(this,e,s),c=f[0],h=o(c);Eu(h,u),h.parent.m=-h.z,wu(h,a);if(i)wu(c,l);else{var p=c,d=c,v=c;wu(c,function(e){e.x<p.x&&(p=e),e.x>d.x&&(d=e),e.depth>v.depth&&(v=e)});var m=n(p,d)/2-p.x,g=r[0]/(d.x+n(d,p)/2+m),y=r[1]/(v.depth||1);wu(c,function(e){e.x=(e.x+m)*g,e.y=e.depth*y})}return f}function o(e){var t={A:null,children:[e]},n=[t],r;while((r=n.pop())!=null)for(var i=r.children,s,o=0,u=i.length;o<u;++o)n.push((i[o]=s={_:i[o],parent:r,children:(s=i[o].children)&&s.slice()||[],A:null,a:null,z:0,m:0,c:0,s:0,t:null,i:o}).a=s);return t.children[0]}function u(e){var t=e.children,r=e.parent.children,i=e.i?r[e.i-1]:null;if(t.length){Zu(e);var s=(t[0].z+t[t.length-1].z)/2;i?(e.z=i.z+n(e._,i._),e.m=e.z-s):e.z=s}else i&&(e.z=i.
z+n(e._,i._));e.parent.A=f(e,i,e.parent.A||r[0])}function a(e){e._.x=e.z+e.parent.m,e.m+=e.parent.m}function f(e,t,r){if(t){var i=e,s=e,o=t,u=i.parent.children[0],a=i.m,f=s.m,l=o.m,c=u.m,h;while(o=Gu(o),i=Qu(i),o&&i)u=Qu(u),s=Gu(s),s.a=e,h=o.z+l-i.z-a+n(o._,i._),h>0&&(Yu(ea(o,e,r),e,h),a+=h,f+=h),l+=o.m,a+=i.m,c+=u.m,f+=s.m;o&&!Gu(s)&&(s.t=o,s.m+=l-f),i&&!Qu(u)&&(u.t=i,u.m+=a-c,r=e)}return r}function l(e){e.x*=r[0],e.y=e.depth*r[1]}var t=e.layout.hierarchy().sort(null).value(null),n=Ku,r=[1,1],i=null;return s.separation=function(e){return arguments.length?(n=e,s):n},s.size=function(e){return arguments.length?(i=(r=e)==null?l:null,s):i?null:r},s.nodeSize=function(e){return arguments.length?(i=(r=e)==null?null:l,s):i?r:null},bu(s,t)},e.layout.cluster=function(){function s(e,s){var o=t.call(this,e,s),u=o[0],a,f=0;Eu(u,function(e){var t=e.children;t&&t.length?(e.x=na(t),e.y=ta(t)):(e.x=a?f+=n(e,a):0,e.y=0,a=e)});var l=ra(u),c=ia(u),h=l.x-n(l,c)/2,p=c.x+n(c,l)/2;return Eu(u,i?function(e){e.x=(e.x-u.x)*r[0],e.y=(u.y-e.y)*r[1]}:function(e){e.x=(e.x-h)/(p-h)*r[0],e.y=(1-(u.y?e.y/u.y:1))*r[1]}),o}var t=e.layout.hierarchy().sort(null).value(null),n=Ku,r=[1,1],i=!1;return s.separation=function(e){return arguments.length?(n=e,s):n},s.size=function(e){return arguments.length?(i=(r=e)==null,s):i?null:r},s.nodeSize=function(e){return arguments.length?(i=(r=e)!=null,s):i?r:null},bu(s,t)},e.layout.treemap=function(){function l(e,t){var n=-1,r=e.length,i,s;while(++n<r)s=(i=e[n]).value*(t<0?0:t),i.area=isNaN(s)||s<=0?0:s}function c(e){var t=e.children;if(t&&t.length){var n=s(e),r=[],i=t.slice(),o,u=Infinity,f,h=a==="slice"?n.dx:a==="dice"?n.dy:a==="slice-dice"?e.depth&1?n.dy:n.dx:Math.min(n.dx,n.dy),v;l(i,n.dx*n.dy/e.value),r.area=0;while((v=i.length)>0)r.push(o=i[v-1]),r.area+=o.area,a!=="squarify"||(f=p(r,h))<=u?(i.pop(),u=f):(r.area-=r.pop().area,d(r,h,n,!1),h=Math.min(n.dx,n.dy),r.length=r.area=0,u=Infinity);r.length&&(d(r,h,n,!0),r.length=r.area=0),t.forEach(c)}}function h(e){var t=e.children;if(t&&t.length){var n=s(e),r=t.slice(),i,o=[];l(r,n.dx*n.dy/e.value),o.area=0;while(i=r.pop())o.push(i),o.area+=i.area,i.z!=null&&(d(o,i.z?n.dx:n.dy,n,!r.length),o.length=o.area=0);t.forEach(h)}}function p(e,t){var n=e.area,r,i=0,s=Infinity,o=-1,u=e.length;while(++o<u){if(!(r=e[o].area))continue;r<s&&(s=r),r>i&&(i=r)}return n*=n,t*=t,n?Math.max(t*i*f/n,n/(t*s*f)):Infinity}function d(e,t,r,i){var s=-1,o=e.length,u=r.x,a=r.y,f=t?n(e.area/t):0,l;if(t==r.dx){if(i||f>r.dy)f=r.dy;while(++s<o)l=e[s],l.x=u,l.y=a,l.dy=f,u+=l.dx=Math.min(r.x+r.dx-u,f?n(l.area/f):0);l.z=!0,l.dx+=r.x+r.dx-u,r.y+=f,r.dy-=f}else{if(i||f>r.dx)f=r.dx;while(++s<o)l=e[s],l.x=u,l.y=a,l.dx=f,a+=l.dy=Math.min(r.y+r.dy-a,f?n(l.area/f):0);l.z=!1,l.dy+=r.y+r.dy-a,r.x+=f,r.dx-=f}}function v(e){var n=u||t(e),i=n[0];return i.x=i.y=0,i.value?(i.dx=r[0],i.dy=r[1]):i.dx=i.dy=0,u&&t.revalue(i),l([i],i.dx*i.dy/i.value),(u?h:c)(i),o&&(u=n),n}var t=e.layout.hierarchy(),n=Math.round,r=[1,1],i=null,s=sa,o=!1,u,a="squarify",f=.5*(1+Math.sqrt(5));return v.size=function(e){return arguments.length?(r=e,v):r},v.padding=function(e){function t(t){var n=e.call(v,t,t.depth);return n==null?sa(t):oa(t,typeof n=="number"?[n,n,n,n]:n)}function n(t){return oa(t,e)}if(!arguments.length)return i;var r;return s=(i=e)==null?sa:(r=typeof e)==="function"?t:r==="number"?(e=[e,e,e,e],n):n,v},v.round=function(e){return arguments.length?(n=e?Math.round:Number,v):n!=Number},v.sticky=function(e){return arguments.length?(o=e,u=null,v):o},v.ratio=function(e){return arguments.length?(f=e,v):f},v.mode=function(e){return arguments.length?(a=e+"",v):a},bu(v,t)},e.random={normal:function(e,t){var n=arguments.length;return n<2&&(t=1),n<1&&(e=0),function(){var n,r,i;do n=Math.random()*2-1,r=Math.random()*2-1,i=n*n+r*r;while(!i||i>1);return e+t*n*Math.sqrt(-2*Math.log(i)/i)}},logNormal:function(){var t=e.random.normal.apply(e,arguments);return function(){return Math.exp(t())}},bates:function(t){var n=e.random.irwinHall(t);return function(){return n()/t}},irwinHall:function(e){return function(){for(var t=0,n=0;n<e;n++)t+=Math.random();return t}}},e.scale={};var ha={floor:P,ceil:P};e.scale.linear=function(){return da([0,1],[0,1],ko,!1)};var wa={s:1,g:1,p:1,r:1,e:1};e.scale.log=function(){return xa(e.scale.linear().domain([0,1]),10,!0,[1,10])};var Ta=e.format(".0e"),Na={floor:function(e){return-Math.ceil(-e)},ceil:function(e){return-Math.floor(-e)}};e.scale.pow=function(){return Ca(e.scale.linear(),1,[0,1])},e.scale.sqrt=function(){return e.scale.pow().exponent(.5)},e.scale.ordinal=function(){return La([],{t:"range",a:[[]]})},e.scale.category10=function(){return e.scale.ordinal().range(Aa)},e.scale.category20=function(){return e.scale.ordinal().range(Oa)},e.scale.category20b=function(){return e.scale.ordinal().range(Ma)},e.scale.category20c=function(){return e.scale.ordinal().range(_a)};var Aa=[2062260,16744206,2924588,14034728,9725885,9197131,14907330,8355711,12369186,1556175].map(gn),Oa=[2062260,11454440,16744206,16759672,2924588,10018698,14034728,16750742,9725885,12955861,9197131,12885140,14907330,16234194,8355711,13092807,12369186,14408589,1556175,10410725].map(gn),Ma=[3750777,5395619,7040719,10264286,6519097,9216594,11915115,13556636,9202993,12426809,15186514,15190932,8666169,11356490,14049643,15177372,8077683,10834324,13528509,14589654].map(gn),_a=[3244733,7057110,10406625,13032431,15095053,16616764,16625259,16634018,3253076,7652470,10607003,13101504,7695281,10394312,12369372,14342891,6513507,9868950,12434877,14277081].map(gn);e.scale.quantile=function(){return Da([],[])},e.scale.quantize=function(){return Pa(0,1,[0,1])},e.scale.threshold=function(){return Ha([.5],[0,1])},e.scale.identity=function(){return Ba([0,1])},e.svg={},e.svg.arc=function(){function u(){var u=Math.max(0,+e.apply(this,arguments)),f=Math.max(0,+t.apply(this,arguments)),l=i.apply(this,arguments)-Dt,c=s.apply(this,arguments)-Dt,h=Math.abs(c-l),p=l>c?0:1;f<u&&(d=f,f=u,u=d);if(h>=_t)return a(f,p)+(u?a(u,1-p):"")+"Z";var d,v,m,g,y=0,b=0,w,E,S,x,T,N,C,k,L=[];if(g=(+o.apply(this,arguments)||0)/2)m=r===Fa?Math.sqrt(u*u+f*f):+r.apply(this,arguments),p||(b*=-1),f&&(b=It(m/f*Math.sin(g))),u&&(y=It(m/u*Math.sin(g)));if(f){w=f*Math.cos(l+b),E=f*Math.sin(l+b),S=f*Math.cos(c-b),x=f*Math.sin(c-b);var A=Math.abs(c-l-2*b)<=Ot?0:1;if(b&&Wa(w,E,S,x)===p^A){var O=(l+c)/2;w=f*Math.cos(O),E=f*Math.sin(O),S=x=null}}else w=E=0;if(u){T=u*Math.cos(c-y),N=u*Math.sin(c-y),C=u*Math.cos(l+y),k=u*Math.sin(l+y);var M=Math.abs(l-c+2*y)<=Ot?0:1;if(y&&Wa(T,N,C,k)===1-p^M){var _=(l+c)/2;T=u*Math.cos(_),N=u*Math.sin(_),C=k=null}}else T=N=0;if(h>Lt&&(d=Math.min(Math.abs(f-u)/2,+n.apply(this,arguments)))>.001){v=u<f^p?0:1;var D=d,P=d;if(h<Ot){var H=C==null?[T,N]:S==null?[w,E]:Ms([w,E],[C,k],[S,x],[T,N]),B=w-H[0],j=E-H[1],F=S-H[0],I=x-H[1],q=1/Math.sin(Math.acos((B*F+j*I)/(Math.sqrt(B*B+j*j)*Math.sqrt(F*F+I*I)))/2),R=Math.sqrt(H[0]*H[0]+H[1]*H[1]);P=Math.min(d,(u-R)/(q-1)),D=Math.min(d,(f-R)/(q+1))}if(S!=null){var U=Xa(C==null?[T,N]:[C,k],[w,E],f,D,p),z=Xa([S,x],[T,N],f,D,p);d===D?L.push("M",U[0],"A",D,",",D," 0 0,",v," ",U[1],"A",f,",",f," 0 ",1-p^Wa(U[1][0],U[1][1],z[1][0],z[1][1]),",",p," ",z[1],"A",D,",",D," 0 0,",v," ",z[0]):L.push("M",U[0],"A",D,",",D," 0 1,",v," ",z[0])}else L.push("M",w,",",E);if(C!=null){var W=Xa([w,E],[C,k],u,-P,p),X=Xa([T,N],S==null?[w,E]:[S,x],u,-P,p);d===P?L.push("L",X[0],"A",P,",",P," 0 0,",v," ",X[1],"A",u,",",u," 0 ",p^Wa(X[1][0],X[1][1],W[1][0],W[1][1]),",",1-p," ",W[1],"A",P,",",P," 0 0,",v," ",W[0]):L.push("L",X[0],"A",P,",",P," 0 0,",v," ",W[0])}else L.push("L",T,",",N)}else L.push("M",w,",",E),S!=null&&L.push("A",f,",",f," 0 ",A,",",p," ",S,",",x),L.push("L",T,",",N),C!=null&&L.push("A",u,",",u," 0 ",M,",",1-p," ",C,",",k);return L.push("Z"),L.join("")}function a(e,t){return"M0,"+e+"A"+e+","+e+" 0 1,"+t+" 0,"+ -e+"A"+e+","+e+" 0 1,"+t+" 0,"+e}var e=Ia,t=qa,n=ja,r=Fa,i=Ra,s=Ua,o=za;return u.innerRadius=function(t){return arguments.length?(e=Cn(t),u):e},u.outerRadius=function(e){return arguments.length?(t=Cn(e),u):t},u.cornerRadius=function(e){return arguments.length?(n=Cn(e),u):n},u.padRadius=function(e){return arguments.length?(r=e==Fa?Fa:Cn(e),u):r},u.startAngle=function(e){return arguments.length?(i=Cn(e),u):i},u.endAngle=function(e){return arguments.length?(s=Cn(e),u):s},u.padAngle=function(e){return arguments.length?(o=Cn(e),u):o},u.centroid=function(){var n=(+e.apply(this,arguments)+ +t.apply(this,arguments))/2,r=(+i.apply(this,arguments)+ +s.apply(this,arguments))/2-Dt;return[Math.cos(r)*n,Math.sin(r)*n]},u};var Fa="auto";e.svg.line=function(){return Va(P)};var $a=e.map({linear:Ja,"linear-closed":Ka,step:Qa,"step-before":Ga,"step-after":Ya,basis:sf,"basis-open":of,"basis-closed":uf,bundle:af,cardinal:tf,"cardinal-open":Za,"cardinal-closed":ef,monotone:gf});$a.forEach(function(e,t){t.key=e,t.closed=/-closed$/.test(e)});var lf=[0,2/3,1/3,0],cf=[0,1/3,2/3,0],hf=[0,1/6,2/3,1/6];e.svg.line.radial=function(){var e=Va(yf);return e.radius=e.x,delete e.x,e.angle=e.y,delete e.y,e},Ga.reverse=Ya,Ya.reverse=Ga,e.svg.area=function(){return bf(P)},e.svg.area.radial=function(){var e=bf(yf);return e.radius=e.x,delete e.x,e.innerRadius=e.x0,delete e.x0,e.outerRadius=e.x1,delete e.x1,e.angle=e.y,delete e.y,e.startAngle=e.y0,delete e.y0,e.endAngle=e.y1,delete e.y1,e},e.svg.chord=function(){function s(n,r){var i=o(this,e,n,r),s=o(this,t,n,r);return"M"+i.p0+a(i.r,i.p1,i.a1-i.a0)+(u(i,s)?f(i.r,i.p1,i.r,i.p0):f(i.r,i.p1,s.r,s.p0)+a(s.r,s.p1,s.a1-s.a0)+f(s.r,s.p1,i.r,i.p0))+"Z"}function o(e,t,s,o){var u=t.call(e,s,o),a=n.call(e,u,o),f=r.call(e,u,o)-Dt,l=i.call(e,u,o)-Dt;return{r:a,a0:f,a1:l,p0:[a*Math.cos(f),a*Math.sin(f)],p1:[a*Math.cos(l),a*Math.sin(l)]}}function u(e,t){return e.a0==t.a0&&e.a1==t.a1}function a(e,t,n){return"A"+e+","+e+" 0 "+ +(n>Ot)+",1 "+t}function f(e,t,n,r){return"Q 0,0 "+r}var e=as,t=fs,n=wf,r=Ra,i=Ua;return s.radius=function(e){return arguments.length?(n=Cn(e),s):n},s.source=function(t){return arguments.length?(e=Cn(t),s):e},s.target=function(e){return arguments.length?(t=Cn(e),s):t},s.startAngle=function(e){return arguments.length?(r=Cn(e),s):r},s.endAngle=function(e){return arguments.length?(i=Cn(e),s):i},s},e.svg.diagonal=function(){function r(r,i){var s=e.call(this,r,i),o=t.call(this,r,i),u=(s.y+o.y)/2,a=[s,{x:s.x,y:u},{x:o.x,y:u},o];return a=a.map(n),"M"+a[0]+"C"+a[1]+" "+a[2]+" "+a[3]}var e=as,t=fs,n=Ef;return r.source=function(t){return arguments.length?(e=Cn(t),r):e},r.target=function(e){return arguments.length?(t=Cn(e),r):t},r.projection=function(e){return arguments.length?(n=e,r):n},r},e.svg.diagonal.radial=function(){var t=e.svg.diagonal(),n=Ef,r=t.projection;return t.projection=function(e){return arguments.length?r(Sf(n=e)):n},t},e.svg.symbol=function(){function n(n,r){return(Cf.get(e.call(this,n,r))||Nf)(t.call(this,n,r))}var e=Tf,t=xf;return n.type=function(t){return arguments.length?(e=Cn(t),n):e},n.size=function(e){return arguments.length?(t=Cn(e),n):t},n};var Cf=e.map({circle:Nf,cross:function(e){var t=Math.sqrt(e/5)/2;return"M"+ -3*t+","+ -t+"H"+ -t+"V"+ -3*t+"H"+t+"V"+ -t+"H"+3*t+"V"+t+"H"+t+"V"+3*t+"H"+ -t+"V"+t+"H"+ -3*t+"Z"},diamond:function(e){var t=Math.sqrt(e/(2*Lf)),n=t*Lf;return"M0,"+ -t+"L"+n+",0"+" 0,"+t+" "+ -n+",0"+"Z"},square:function(e){var t=Math.sqrt(e)/2;return"M"+ -t+","+ -t+"L"+t+","+ -t+" "+t+","+t+" "+ -t+","+t+"Z"},"triangle-down":function(e){var t=Math.sqrt(e/kf),n=t*kf/2;return"M0,"+n+"L"+t+","+ -n+" "+ -t+","+ -n+"Z"},"triangle-up":function(e){var t=Math.sqrt(e/kf),n=t*kf/2;return"M0,"+ -n+"L"+t+","+n+" "+ -t+","+n+"Z"}});e.svg.symbolTypes=Cf.keys();var kf=Math.sqrt(3),Lf=Math.tan(30*Pt);Q.transition=function(e){var t=Pf||++Df,n=Ff(e),r=[],i,s,o=Hf||{time:Date.now(),ease:jo,delay:0,duration:250};for(var u=-1,a=this.length;++u<a;){r.push(i=[]);for(var f=this[u],l=-1,c=f.length;++l<c;)(s=f[l])&&If(s,l,n,t,o),i.push(s)}return Mf(r,n,t)},Q.interrupt=function(e){return this.each(e==null?Af:Of(Ff(e)))};var Af=Of(Ff()),_f=[],Df=0,Pf,Hf;_f.call=Q.call,_f.empty=Q.empty,_f.node=Q.node,_f.size=Q.size,e.transition=function(t,n){return t&&t.transition?Pf?t.transition(n):t:e.selection().transition(t)},e.transition.prototype=_f,_f.select=function(e){var t=this.id,n=this.namespace,r=[],i,s,o;e=G(e);for(var u=-1,a=this.length;++u<a;){r.push(i=[]);for(var f=this[u],l=-1,c=f.length;++l<c;)(o=f[l])&&(s=e.call(o,o.__data__,l,u))?("__data__"in o&&(s.__data__=o.__data__),If(s,l,n,t,o[n][t]),i.push(s)):i.push(null)}return Mf(r,n,t)},_f.selectAll=function(e){var t=this.id,n=this.namespace,r=[],i,s,o,u,a;e=Y(e);for(var f=-1,l=this.length;++f<l;)for(var c=this[f],h=-1,p=c.length;++h<p;)if(o=c[h]){a=o[n][t],s=e.call(o,o.__data__,h,f),r.push(i=[]);for(var d=-1,v=s.length;++d<v;)(u=s[d])&&If(u,d,n,t,a),i.push(u)}return Mf(r,n,t)},_f.filter=function(e){var t=[],n,r,i;typeof e!="function"&&(e=ht(e));for(var s=0,o=this.length;s<o;s++){t.push(n=[]);for(var r=this[s],u=0,a=r.length;u<a;u++)(i=r[u])&&e.call(i,i.__data__,u,s)&&n.push(i)}return Mf(t,this.namespace,this.id)},_f.tween=function(e,t){var n=this.id,r=this.namespace;return arguments.length<2?this.node()[r][n].tween.get(e):dt(this,t==null?function(t){t[r][n].tween.remove(e)}:function(i){i[r][n].tween.set(e,t)})},_f.attr=function(t,n){function s(){this.removeAttribute(i)}function o(){this.removeAttributeNS(i.space,i.local)}function u(e){return e==null?s:(e+="",function(){var t=this.getAttribute(i),n;return t!==e&&(n=r(t,e),function(e){this.setAttribute(i,n(e))})})}function a(e){return e==null?o:(e+="",function(){var t=this.getAttributeNS(i.space,i.local),n;return t!==e&&(n=r(t,e),function(e){this.setAttributeNS(i.space,i.local,n(e))})})}if(arguments.length<2){for(n in t)this.attr(n,t[n]);return this}var r=t=="transform"?su:ko,i=e.ns.qualify(t);return Bf(this,"attr."+t,n,i.local?a:u)},_f.attrTween=function(t,n){function i(e,t){var i=n.call(this,e,t,this.getAttribute(r));return i&&function(e){this.setAttribute(r,i(e))}}function s(e,t){var i=n.call(this,e,t,this.getAttributeNS(r.space,r.local));return i&&function(e){this.setAttributeNS(r.space,r.local,i(e))}}var r=e.ns.qualify(t);return this.tween("attr."+t,r.local?s:i)},_f.style=function(e,t,n){function i(){this.style.removeProperty(e)}function s(t){return t==null?i:(t+="",function(){var r=o(this).getComputedStyle(this,null).getPropertyValue(e),i;return r!==t&&(i=ko(r,t),function(t){this.style.setProperty(e,i(t),n)})})}var r=arguments.length;if(r<3){if(typeof e!="string"){r<2&&(t="");for(n in e)this.style(n,e[n],t);return this}n=""}return Bf(this,"style."+e,t,s)},_f.styleTween=function(e,t,n){function r(r,i){var s=t.call(this,r,i,o(this).getComputedStyle(this,null).getPropertyValue(e));return s&&function(t){this.style.setProperty(e,s(t),n)}}return arguments.length<3&&(n=""),this.tween("style."+e,r)},_f.text=function(e){return Bf(this,"text",e,jf)},_f.remove=function(){var e=this.namespace;return this.each("end.transition",function(){var t;this[e].count<2&&(t=this.parentNode)&&t.removeChild(this)})},_f.ease=function(t){var n=this.id,r=this.namespace;return arguments.length<1?this.node()[r][n].ease:(typeof t!="function"&&(t=e.ease.apply(e,arguments)),dt(this,function(e){e[r][n].ease=t}))},_f.delay=function(e){var t=this.id,n=this.namespace;return arguments.length<1?this.node()[n][t].delay:dt(this,typeof e=="function"?function(r,i,s){r[n][t].delay=+e.call(r,r.__data__,i,s)}:(e=+e,function(r){r[n][t].delay=e}))},_f.duration=function(e){var t=this.id,n=this.namespace;return arguments.length<1?this.node()[n][t].duration:dt(this,typeof e=="function"?function(r,i,s){r[n][t].duration=Math.max(1,e.call(r,r.__data__,i,s))}:(e=Math.max(1,e),function(r){r[n][t].duration=e}))},_f.each=function(t,n){var r=this.id,i=this.namespace;if(arguments.length<2){var s=Hf,o=Pf;try{Pf=r,dt(this,function(e,n,s){Hf=e[i][r],t.call(e,e.__data__,n,s)})}finally{Hf=s,Pf=o}}else dt(this,function(s){var o=s[i][r];(o.event||(o.event=e.dispatch("start","end","interrupt"))).on(t,n)});return this},_f.transition=function(){var e=this.id,t=++Df,n=this.namespace,r=[],i,s,o,u;for(var a=0,f=this.length;a<f;a++){r.push(i=[]);for(var s=this[a],l=0,c=s.length;l<c;l++){if(o=s[l])u=o[n][e],If(o,l,n,t,{time:u.time,ease:u.ease,delay:u.delay+u.duration,duration:u.duration});i.push(o)}}return Mf(r,n,t)},e.svg.axis=function(){function l(r){r.each(function(){var r=e.select(this),l=this.__chart__||t,c=this.__chart__=t.copy(),h=a==null?c.ticks?c.ticks.apply(c,u):c.domain():a,p=f==null?c.tickFormat?c.tickFormat.apply(c,u):P:f,d=r.selectAll(".tick").data(h,c),v=d.enter().insert("g",".domain").attr("class","tick").style("opacity",Lt),m=e.transition(d.exit()).style("opacity",Lt).remove(),g=e.transition(d.order()).style("opacity",1),y=Math.max(i,0)+o,b,w=aa(c),E=r.selectAll(".domain").data([0]),S=(E.enter().append("path").attr("class","domain"),e.transition(E));v.append("line"),v.append("text");var x=v.select("line"),T=g.select("line"),N=d.select("text").text(p),C=v.select("text"),k=g.select("text"),L=n==="top"||n==="left"?-1:1,A,O,M,_;n==="bottom"||n==="top"?(b=Uf,A="x",M="y",O="x2",_="y2",N.attr("dy",L<0?"0em":".71em").style("text-anchor","middle"),S.attr("d","M"+w[0]+","+L*s+"V0H"+w[1]+"V"+L*s)):(b=zf,A="y",M="x",O="y2",_="x2",N.attr("dy",".32em").style("text-anchor",L<0?"end":"start"),S.attr("d","M"+L*s+","+w[0]+"H0V"+w[1]+"H"+L*s)),x.attr(_,L*i),C.attr(M,L*y),T.attr(O,0).attr(_,L*i),k.attr(A,0).attr(M,L*y);if(c.rangeBand){var D=c,H=D.rangeBand()/2;l=c=function(e){return D(e)+H}}else l.rangeBand?l=c:m.call(b,c,l);v.call(b,l,c),g.call(b,c,c)})}var t=e.scale.linear(),n=qf,i=6,s=6,o=3,u=[10],a=null,f;return l.scale=function(e){return arguments.length?(t=e,l):t},l.orient=function(e){return arguments.length?(n=e in Rf?e+"":qf,l):n},l.ticks=function(){return arguments.length?(u=r(arguments),l):u},l.tickValues=function(e){return arguments.length?(a=e,l):a},l.tickFormat=function(e){return arguments.length?(f=e,l):f},l.tickSize=function(e){var t=arguments.length;return t?(i=+e,s=+arguments[t-1],l):i},l.innerTickSize=function(e){return arguments.length?(i=+e,l):i},l.outerTickSize=function(e){return arguments.length?(s=+e,l):s},l.tickPadding=function(e){return arguments.length?(o=+e,l):o},l.tickSubdivide=function(){return arguments.length&&l},l};var qf="bottom",Rf={top:1,right:1,bottom:1,left:1};e.svg.brush=function(){function h(t){t.each(function(){var t=e.select(this).style("pointer-events","all").style("-webkit-tap-highlight-color","rgba(0,0,0,0)").on("mousedown.brush",m).on("touchstart.brush",m),i=t.selectAll(".background").data([0]);i.enter().append("rect").attr("class","background").style("visibility","hidden").style("cursor","crosshair"),t.selectAll(".extent").data([0]).enter().append("rect").attr("class","extent").style("cursor","move");var s=t.selectAll(".resize").data(c,P);s.exit().remove(),s.enter().append("g").attr("class",function(e){return"resize "+e}).style("cursor",function(e){return Wf[e]}).append("rect").attr("x",function(e){return/[ew]$/.test(e)?-3:null}).attr("y",function(e){return/^[ns]/.test(e)?-3:null}).attr("width",6).attr("height",6).style("visibility","hidden"),s.style("display",h.empty()?"none":null);var o=e.transition(t),u=e.transition(i),a;n&&(a=aa(n),u.attr("x",a[0]).attr("width",a[1]-a[0]),d(o)),r&&(a=aa(r),u.attr("y",a[0]).attr("height",a[1]-a[0]),v(o)),p(o)})}function p(e){e.selectAll(".resize").attr("transform",function(e){return"translate("+i[+/e$/.test(e)]+","+s[+/^s/.test(e)]+")"})}function d(e){e.select(".extent").attr("x",i[0]),e.selectAll(".extent,.n>rect,.s>rect").attr("width",i[1]-i[0])}function v(e){e.select(".extent").attr("y",s[0]),e.selectAll(".extent,.e>rect,.w>rect").attr("height",s[1]-s[0])}function m(){function O(){e.event.keyCode==32&&(S||(T=null,N[0]-=i[1],N[1]-=s[1],S=2),R())}function M(){e.event.keyCode==32&&S==2&&(N[0]+=i[1],N[1]+=s[1],S=0,R())}function _(){var t=e.mouse(c),o=!1;C&&(t[0]+=C[0],t[1]+=C[1]),S||(e.event.altKey?(T||(T=[(i[0]+i[1])/2,(s[0]+s[1])/2]),N[0]=i[+(t[0]<T[0])],N[1]=s[+(t[1]<T[1])]):T=null),w&&D(t,n,0)&&(d(y),o=!0),E&&D(t,r,1)&&(v(y),o=!0),o&&(p(y),g({type:"brush",mode:S?"move":"resize"}))}function D(e,t,n){var r=aa(t),o=r[0],c=r[1],h=N[n],p=n?s:i,d=p[1]-p[0],v,m;S&&(o-=h,c-=d+h),v=(n?l:f)?Math.max(o,Math.min(c,e[n])):e[n],S?m=(v+=h)+d:(T&&(h=Math.max(o,Math.min(c,2*T[n]-v))),h<v?(m=v,v=h):m=h);if(p[0]!=v||p[1]!=m)return n?a=null:u=null,p[0]=v,p[1]=m,!0}function P(){_(),y.style("pointer-events","all").selectAll(".resize").style("display",h.empty()?"none":null),e.select("body").style("cursor",null),k.on("mousemove.brush",null).on("mouseup.brush",null).on("touchmove.brush",null).on("touchend.brush",null).on("keydown.brush",null).on("keyup.brush",null),x(),g({type:"brushend"})}var c=this,m=e.select(e.event.target),g=t.of(c,arguments),y=e.select(c),b=m.datum(),w=!/^(n|s)$/.test(b)&&n,E=!/^(e|w)$/.test(b)&&r,S=m.classed("extent"),x=Tt(c),T,N=e.mouse(c),C,k=e.select(o(c)).on("keydown.brush",O).on("keyup.brush",M);e.event.changedTouches?k.on("touchmove.brush",_).on("touchend.brush",P):k.on("mousemove.brush",_).on("mouseup.brush",P),y.interrupt().selectAll("*").interrupt();if(S)N[0]=i[0]-N[0],N[1]=s[0]-N[1];else if(b){var L=+/w$/.test(b),A=+/^n/.test(b);C=[i[1-L]-N[0],s[1-A]-N[1]],N[0]=i[L],N[1]=s[A]}else e.event.altKey&&(T=N.slice());y.style("pointer-events","none").selectAll(".resize").style("display",null),e.select("body").style("cursor",m.style("cursor")),g({type:"brushstart"}),_()}var t=z(h,"brushstart","brush","brushend"),n=null,r=null,i=[0,0],s=[0,0],u,a,f=!0,l=!0,c=Xf[0];return h.event=function(n){n.each(function(){var n=t.of(this,arguments),r={x:i,y:s,i:u,j:a},o=this.__chart__||r;this.__chart__=r,Pf?e.select(this).transition().each("start.brush",function(){u=o.i,a=o.j,i=o.x,s=o.y,n({type:"brushstart"})}).tween("brush:brush",function(){var e=Lo(i,r.x),t=Lo(s,r.y);return u=a=null,function(o){i=r.x=e(o),s=r.y=t(o),n({type:"brush",mode:"resize"})}}).each("end.brush",function(){u=r.i,a=r.j,n({type:"brush",mode:"resize"}),n({type:"brushend"})}):(n({type:"brushstart"}),n({type:"brush",mode:"resize"}),n({type:"brushend"}))})},h.x=function(e){return arguments.length?(n=e,c=Xf[!n<<1|!r],h):n},h.y=function(e){return arguments.length?(r=e,c=Xf[!n<<1|!r],h):r},h.clamp=function(e){return arguments.length?(n&&r?(f=!!e[0],l=!!e[1]):n?f=!!e:r&&(l=!!e),h):n&&r?[f,l]:n?f:r?l:null},h.extent=function(e){var t,o,f,l,c;if(!arguments.length)return n&&(u?(t=u[0],o=u[1]):(t=i[0],o=i[1],n.invert&&(t=n.invert(t),o=n.invert(o)),o<t&&(c=t,t=o,o=c))),r&&(a?(f=a[0],l=a[1]):(f=s[0],l=s[1],r.invert&&(f=r.invert(f),l=r.invert(l)),l<f&&(c=f,f=l,l=c))),n&&r?[[t,f],[o,l]]:n?[t,o]:r&&[f,l];if(n){t=e[0],o=e[1],r&&(t=t[0],o=o[0]),u=[t,o],n.invert&&(t=n(t),o=n(o)),o<t&&(c=t,t=o,o=c);if(t!=i[0]||o!=i[1])i=[t,o]}if(r){f=e[0],l=e[1],n&&(f=f[1],l=l[1]),a=[f,l],r.invert&&(f=r(f),l=r(l)),l<f&&(c=f,f=l,l=c);if(f!=s[0]||l!=s[1])s=[f,l]}return h},h.clear=function(){return h.empty()||(i=[0,0],s=[0,0],u=a=null),h},h.empty=function(){return!!n&&i[0]==i[1]||!!r&&s[0]==s[1]},e.rebind(h,t,"on")};var Wf={n:"ns-resize",e:"ew-resize",s:"ns-resize",w:"ew-resize",nw:"nwse-resize",ne:"nesw-resize",se:"nwse-resize",sw:"nesw-resize"},Xf=[["n","e","s","w","nw","ne","se","sw"],["e","w"],["n","s"],[]],Vf=$n.format=xr.timeFormat,$f=Vf.utc,Jf=$f("%Y-%m-%dT%H:%M:%S.%LZ");Vf.iso=Date.prototype.toISOString&&+(new Date("2000-01-01T00:00:00.000Z"))?Kf:Jf,Kf.parse=function(e){var t=new Date(e);return isNaN(t)?null:t},Kf.toString=Jf.toString,$n.second=Gn(function(e){return new Jn(Math.floor(e/1e3)*1e3)},function(e,t){e.setTime(e.getTime()+Math.floor(t)*1e3)},function(e){return e.getSeconds()}),$n.seconds=$n.second.range,$n.seconds.utc=$n.second.utc.range,$n.minute=Gn(function(e){return new Jn(Math.floor(e/6e4)*6e4)},function(e,t){e.setTime(e.getTime()+Math.floor(t)*6e4)},function(e){return e.getMinutes()}),$n.minutes=$n.minute.range,$n.minutes.utc=$n.minute.utc.range,$n.hour=Gn(function(e){var t=e.getTimezoneOffset()/60;return new Jn((Math.floor(e/36e5-t)+t)*36e5)},function(e,t){e.setTime(e.getTime()+Math.floor(t)*36e5)},function(e){return e.getHours()}),$n.hours=$n.hour.range,$n.hours.utc=$n.hour.utc.range,$n.month=Gn(function(e){return e=$n.day(e),e.setDate(1),e},function(e,t){e.setMonth(e.getMonth()+t)},function(e){return e.getMonth()}),$n.months=$n.month.range,$n.months.utc=$n.month.utc.range;var Yf=[1e3,5e3,15e3,3e4,6e4,3e5,9e5,18e5,36e5,108e5,216e5,432e5,864e5,1728e5,6048e5,2592e6,7776e6,31536e6],Zf=[[$n.second,1],[$n.second,5],[$n.second,15],[$n.second,30],[$n.minute,1],[$n.minute,5],[$n.minute,15],[$n.minute,30],[$n.hour,1],[$n.hour,3],[$n.hour,6],[$n.hour,12],[$n.day,1],[$n.day,2],[$n.week,1],[$n.month,1],[$n.month,3],[$n.year,1]],el=Vf.multi([[".%L",function(e){return e.getMilliseconds()}],[":%S",function(e){return e.getSeconds()}],["%I:%M",function(e){return e.getMinutes()}],["%I %p",function(e){return e.getHours()}],["%a %d",function(e){return e.getDay()&&e.getDate()!=1}],["%b %d",function(e){return e.getDate()!=1}],["%B",function(e){return e.getMonth()}],["%Y",ai]]),tl={range:function(t,n,r){return e.range(Math.ceil(t/r)*r,+n,r).map(Gf)},floor:P,ceil:P};Zf.year=$n.year,$n.scale=function(){return Qf(e.scale.linear(),Zf,el)};var nl=Zf.map(function(e){return[e[0].utc,e[1]]}),rl=$f.multi([[".%L",function(e){return e.getUTCMilliseconds()}],[":%S",function(e){return e.getUTCSeconds()}],["%I:%M",function(e){return e.getUTCMinutes()}],["%I %p",function(e){return e.getUTCHours()}],["%a %d",function(e){return e.getUTCDay()&&e.getUTCDate()!=1}],["%b %d",function(e){return e.getUTCDate()!=1}],["%B",function(e){return e.getUTCMonth()}],["%Y",ai]]);nl.year=$n.year.utc,$n.scale.utc=function(){return Qf(e.scale.linear(),nl,rl)},e.text=kn(function(e){return e.responseText}),e.json=function(e,t){return Ln(e,"application/json",il,t)},e.html=function(e,t){return Ln(e,"text/html",sl,t)},e.xml=kn(function(e){return e.responseXML}),typeof define=="function"&&define.amd?(this.d3=e,define(e)):typeof t=="object"&&t.exports?t.exports=e:this.d3=e}()},{}],80:[function(e,t,n){function r(){return"WebkitAppearance"in document.documentElement.style||window.console&&(console.firebug||console.exception&&console.table)||navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/)&&parseInt(RegExp.$1,10)>=31}function i(){var e=arguments,t=this.useColors;e[0]=(t?"%c":"")+this.namespace+(t?" %c":" ")+e[0]+(t?"%c ":" ")+"+"+n.humanize(this.diff);if(!t)return e;var r="color: "+this.color;e=[e[0],r,"color: inherit"].concat(Array.prototype.slice.call(e,1));var i=0,s=0;return e[0].replace(/%[a-z%]/g,function(e){if("%%"===e)return;i++,"%c"===e&&(s=i)}),e.splice(s,0,r),e}function s(){return"object"==typeof console&&console.log&&Function.prototype.apply.call(console.log,console,arguments)}function o(e){try{null==e?n.storage.removeItem("debug"):n.storage.debug=e}catch(t){}}function u(){var e;try{e=n.storage.debug}catch(t){}return e}function a(){try{return window.localStorage}catch(e){}}n=t.exports=e("./debug"),n.log=s,n.formatArgs=i,n.save=o,n.load=u,n.useColors=r,n.storage="undefined"!=typeof chrome&&"undefined"!=typeof chrome.storage?chrome.storage.local:a(),n.colors=["lightseagreen","forestgreen","goldenrod","dodgerblue","darkorchid","crimson"],n.formatters.j=function(e){return JSON.stringify(e)},n.enable(u())},{"./debug":81}],81:[function(e,t,n){function s(){return n.colors[r++%n.colors.length]}function o(e){function t(){}function r(){var e=r,t=+(new Date),o=t-(i||t);e.diff=o,e.prev=i,e.curr=t,i=t,null==e.useColors&&(e.useColors=n.useColors()),null==e.color&&e.useColors&&(e.color=s());var u=Array.prototype.slice.call(arguments);u[0]=n.coerce(u[0]),"string"!=typeof u[0]&&(u=["%o"].concat(u));var a=0;u[0]=u[0].replace(/%([a-z%])/g,function(t,r){if(t==="%%")return t;a++;var i=n.formatters[r];if("function"==typeof i){var s=u[a];t=i.call(e,s),u.splice(a,1),a--}return t}),"function"==typeof n.formatArgs&&(u=n.formatArgs.apply(e,u));var f=r.log||n.log||console.log.bind(console);f.apply(e,u)}t.enabled=!1,r.enabled=!0;var o=n.enabled(e)?r:t;return o.namespace=e,o}function u(e){n.save(e);var t=(e||"").split(/[\s,]+/),r=t.length;for(var i=0;i<r;i++){if(!t[i])continue;e=t[i].replace(/\*/g,".*?"),e[0]==="-"?n.skips.push(new RegExp("^"+e.substr(1)+"$")):n.names.push(new RegExp("^"+e+"$"))}}function a(){n.enable("")}function f(e){var t,r;for(t=0,r=n.skips.length;t<r;t++)if(n.skips[t].test(e))return!1;for(t=0,r=n.names.length;t<r;t++)if(n.names[t].test(e))return!0;return!1}function l(e){return e instanceof Error?e.stack||e.message:e}n=t.exports=o,n.coerce=l,n.disable=a,n.enable=u,n.enabled=f,n.humanize=e("ms"),n.names=[],n.skips=[],n.formatters={};var r=0,i},{ms:87}],82:[function(e,t,n){(function(n,r){(function(){"use strict";function i(e){return typeof e=="function"||typeof e=="object"&&e!==null}function s(e){return typeof e=="function"}function o(e){return typeof e=="object"&&e!==null}function p(e){c=e}function d(e){h=e}function w(){return function(){n.nextTick(C)}}function E(){return function(){l(C)}}function S(){var e=0,t=new g(C),n=document.createTextNode("");return t.observe(n,{characterData:!0}),function(){n.data=e=++e%2}}function x(){var e=new MessageChannel;return e.port1.onmessage=C,function(){e.port2.postMessage(0)}}function T(){return function(){setTimeout(C,1)}}function C(){for(var e=0;e<f;e+=2){var t=N[e],n=N[e+1];t(n),N[e]=undefined,N[e+1]=undefined}f=0}function k(){try{var t=e,n=t("vertx");return l=n.runOnLoop||n.runOnContext,E()}catch(r){return T()}}function A(e,t){var n=this,r=n._state;if(r===H&&!e||r===B&&!t)return this;var i=new this.constructor(D),s=n._result;if(r){var o=arguments[r-1];h(function(){et(r,i,o,s)})}else K(n,i,e,t);return i}function M(e){var t=this;if(e&&typeof e=="object"&&e.constructor===t)return e;var n=new t(D);return X(n,e),n}function D(){}function F(){return new TypeError("You cannot resolve a promise with itself")}function I(){return new TypeError("A promises callback cannot return that same promise.")}function q(e){try{return e.then}catch(t){return j.error=t,j}}function R(e,t,n,r){try{e.call(t,n,r)}catch(i){return i}}function U(e,t,n){h(function(e){var r=!1,i=R(n,t,function(n){if(r)return;r=!0,t!==n?X(e,n):$(e,n)},function(t){if(r)return;r=!0,J(e,t)},"Settle: "+(e._label||" unknown promise"));!r&&i&&(r=!0,J(e,i))},e)}function z(e,t){t._state===H?$(e,t._result):t._state===B?J(e,t._result):K(t,undefined,function(t){X(e,t)},function(t){J(e,t)})}function W(e,t,n){t.constructor===e.constructor&&n===O&&constructor.resolve===_?z(e,t):n===j?J(e,j.error):n===undefined?$(e,t):s(n)?U(e,t,n):$(e,t)}function X(e,t){e===t?J(e,F()):i(t)?W(e,t,q(t)):$(e,t)}function V(e){e._onerror&&e._onerror(e._result),Q(e)}function $(e,t){if(e._state!==P)return;e._result=t,e._state=H,e._subscribers.length!==0&&h(Q,e)}function J(e,t){if(e._state!==P)return;e._state=B,e._result=t,h(V,e)}function K(e,t,n,r){var i=e._subscribers,s=i.length;e._onerror=null,i[s]=t,i[s+H]=n,i[s+B]=r,s===0&&e._state&&h(Q,e)}function Q(e){var t=e._subscribers,n=e._state;if(t.length===0)return;var r,i,s=e._result;for(var o=0;o<t.length;o+=3)r=t[o],i=t[o+n],r?et(n,r,i,s):i(s);e._subscribers.length=0}function G(){this.error=null}function Z(e,t){try{return e(t)}catch(n){return Y.error=n,Y}}function et(e,t,n,r){var i=s(n),o,u,a,f;if(i){o=Z(n,r),o===Y?(f=!0,u=o.error,o=null):a=!0;if(t===o){J(t,I());return}}else o=r,a=!0;t._state===P&&(i&&a?X(t,o):f?J(t,u):e===H?$(t,o):e===B&&J(t,o))}function tt(e,t){try{t(function(n){X(e,n)},function(n){J(e,n)})}catch(n){J(e,n)}}function nt(e){return(new pt(this,e)).promise}function it(e){function i(e){X(n,e)}function s(e){J(n,e)}var t=this,n=new t(D);if(!a(e))return J(n,new TypeError("You must pass an array to race.")),n;var r=e.length;for(var o=0;n._state===P&&o<r;o++)K(t.resolve(e[o]),undefined,i,s);return n}function ot(e){var t=this,n=new t(D);return J(n,e),n}function ft(){throw new TypeError("You must pass a resolver function as the first argument to the promise constructor")}function lt(){throw new TypeError("Failed to construct 'Promise': Please use the 'new' operator, this object constructor cannot be called as a function.")}function ht(e){this._id=at++,this._state=undefined,this._result=undefined,this._subscribers=[],D!==e&&(typeof e!="function"&&ft(),this instanceof ht?tt(this,e):lt())}function dt(e,t){this._instanceConstructor=e,this.promise=new e(D),Array.isArray(t)?(this._input=t,this.length=t.length,this._remaining=t.length,this._result=new Array(this.length),this.length===0?$(this.promise,this._result):(this.length=this.length||0,this._enumerate(),this._remaining===0&&$(this.promise,this._result))):J(this.promise,this._validationError())}function vt(){var e;if(typeof r!="undefined")e=r;else if(typeof self!="undefined")e=self;else try{e=Function("return this")()}catch(t){throw new Error("polyfill failed because global object is unavailable in this environment"
)}var n=e.Promise;if(n&&Object.prototype.toString.call(n.resolve())==="[object Promise]"&&!n.cast)return;e.Promise=ct}var u;Array.isArray?u=Array.isArray:u=function(e){return Object.prototype.toString.call(e)==="[object Array]"};var a=u,f=0,l,c,h=function(t,n){N[f]=t,N[f+1]=n,f+=2,f===2&&(c?c(C):L())},v=typeof window!="undefined"?window:undefined,m=v||{},g=m.MutationObserver||m.WebKitMutationObserver,y=typeof n!="undefined"&&{}.toString.call(n)==="[object process]",b=typeof Uint8ClampedArray!="undefined"&&typeof importScripts!="undefined"&&typeof MessageChannel!="undefined",N=new Array(1e3),L;y?L=w():g?L=S():b?L=x():v===undefined&&typeof e=="function"?L=k():L=T();var O=A,_=M,P=void 0,H=1,B=2,j=new G,Y=new G,rt=nt,st=it,ut=ot,at=0,ct=ht;ht.all=rt,ht.race=st,ht.resolve=_,ht.reject=ut,ht._setScheduler=p,ht._setAsap=d,ht._asap=h,ht.prototype={constructor:ht,then:O,"catch":function(e){return this.then(null,e)}};var pt=dt;dt.prototype._validationError=function(){return new Error("Array Methods must be provided an Array")},dt.prototype._enumerate=function(){var e=this.length,t=this._input;for(var n=0;this._state===P&&n<e;n++)this._eachEntry(t[n],n)},dt.prototype._eachEntry=function(e,t){var n=this._instanceConstructor,r=n.resolve;if(r===_){var i=q(e);if(i===O&&e._state!==P)this._settledAt(e._state,t,e._result);else if(typeof i!="function")this._remaining--,this._result[t]=e;else if(n===ct){var s=new n(D);W(s,e,i),this._willSettleAt(s,t)}else this._willSettleAt(new n(function(t){t(e)}),t)}else this._willSettleAt(r(e),t)},dt.prototype._settledAt=function(e,t,n){var r=this.promise;r._state===P&&(this._remaining--,e===B?J(r,n):this._result[t]=n),this._remaining===0&&$(r,this._result)},dt.prototype._willSettleAt=function(e,t){var n=this;K(e,undefined,function(e){n._settledAt(H,t,e)},function(e){n._settledAt(B,t,e)})};var mt=vt,gt={Promise:ct,polyfill:mt};typeof define=="function"&&define.amd?define(function(){return gt}):typeof t!="undefined"&&t.exports?t.exports=gt:typeof this!="undefined"&&(this.ES6Promise=gt),mt()}).call(this)}).call(this,e("_process"),typeof global!="undefined"?global:typeof self!="undefined"?self:typeof window!="undefined"?window:{})},{_process:118}],83:[function(e,t,n){n.read=function(e,t,n,r,i){var s,o,u=i*8-r-1,a=(1<<u)-1,f=a>>1,l=-7,c=n?i-1:0,h=n?-1:1,p=e[t+c];c+=h,s=p&(1<<-l)-1,p>>=-l,l+=u;for(;l>0;s=s*256+e[t+c],c+=h,l-=8);o=s&(1<<-l)-1,s>>=-l,l+=r;for(;l>0;o=o*256+e[t+c],c+=h,l-=8);if(s===0)s=1-f;else{if(s===a)return o?NaN:(p?-1:1)*Infinity;o+=Math.pow(2,r),s-=f}return(p?-1:1)*o*Math.pow(2,s-r)},n.write=function(e,t,n,r,i,s){var o,u,a,f=s*8-i-1,l=(1<<f)-1,c=l>>1,h=i===23?Math.pow(2,-24)-Math.pow(2,-77):0,p=r?0:s-1,d=r?1:-1,v=t<0||t===0&&1/t<0?1:0;t=Math.abs(t),isNaN(t)||t===Infinity?(u=isNaN(t)?1:0,o=l):(o=Math.floor(Math.log(t)/Math.LN2),t*(a=Math.pow(2,-o))<1&&(o--,a*=2),o+c>=1?t+=h/a:t+=h*Math.pow(2,1-c),t*a>=2&&(o++,a/=2),o+c>=l?(u=0,o=l):o+c>=1?(u=(t*a-1)*Math.pow(2,i),o+=c):(u=t*Math.pow(2,c-1)*Math.pow(2,i),o=0));for(;i>=8;e[n+p]=u&255,p+=d,u/=256,i-=8);o=o<<i|u,f+=i;for(;f>0;e[n+p]=o&255,p+=d,o/=256,f-=8);e[n+p-d]|=v*128}},{}],84:[function(e,t,n){var r=Array.isArray,i=Object.prototype.toString;t.exports=r||function(e){return!!e&&"[object Array]"==i.call(e)}},{}],85:[function(e,t,n){(function(n){"use strict";var r=n.Base64,i="2.1.9",s;if(typeof t!="undefined"&&t.exports)try{s=e("buffer").Buffer}catch(o){}var u="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",a=function(e){var t={};for(var n=0,r=e.length;n<r;n++)t[e.charAt(n)]=n;return t}(u),f=String.fromCharCode,l=function(e){if(e.length<2){var t=e.charCodeAt(0);return t<128?e:t<2048?f(192|t>>>6)+f(128|t&63):f(224|t>>>12&15)+f(128|t>>>6&63)+f(128|t&63)}var t=65536+(e.charCodeAt(0)-55296)*1024+(e.charCodeAt(1)-56320);return f(240|t>>>18&7)+f(128|t>>>12&63)+f(128|t>>>6&63)+f(128|t&63)},c=/[\uD800-\uDBFF][\uDC00-\uDFFFF]|[^\x00-\x7F]/g,h=function(e){return e.replace(c,l)},p=function(e){var t=[0,2,1][e.length%3],n=e.charCodeAt(0)<<16|(e.length>1?e.charCodeAt(1):0)<<8|(e.length>2?e.charCodeAt(2):0),r=[u.charAt(n>>>18),u.charAt(n>>>12&63),t>=2?"=":u.charAt(n>>>6&63),t>=1?"=":u.charAt(n&63)];return r.join("")},d=n.btoa?function(e){return n.btoa(e)}:function(e){return e.replace(/[\s\S]{1,3}/g,p)},v=s?function(e){return(e.constructor===s.constructor?e:new s(e)).toString("base64")}:function(e){return d(h(e))},m=function(e,t){return t?v(String(e)).replace(/[+\/]/g,function(e){return e=="+"?"-":"_"}).replace(/=/g,""):v(String(e))},g=function(e){return m(e,!0)},y=new RegExp(["[À-ß][€-¿]","[à-ï][€-¿]{2}","[ð-÷][€-¿]{3}"].join("|"),"g"),b=function(e){switch(e.length){case 4:var t=(7&e.charCodeAt(0))<<18|(63&e.charCodeAt(1))<<12|(63&e.charCodeAt(2))<<6|63&e.charCodeAt(3),n=t-65536;return f((n>>>10)+55296)+f((n&1023)+56320);case 3:return f((15&e.charCodeAt(0))<<12|(63&e.charCodeAt(1))<<6|63&e.charCodeAt(2));default:return f((31&e.charCodeAt(0))<<6|63&e.charCodeAt(1))}},w=function(e){return e.replace(y,b)},E=function(e){var t=e.length,n=t%4,r=(t>0?a[e.charAt(0)]<<18:0)|(t>1?a[e.charAt(1)]<<12:0)|(t>2?a[e.charAt(2)]<<6:0)|(t>3?a[e.charAt(3)]:0),i=[f(r>>>16),f(r>>>8&255),f(r&255)];return i.length-=[0,0,2,1][n],i.join("")},S=n.atob?function(e){return n.atob(e)}:function(e){return e.replace(/[\s\S]{1,4}/g,E)},x=s?function(e){return(e.constructor===s.constructor?e:new s(e,"base64")).toString()}:function(e){return w(S(e))},T=function(e){return x(String(e).replace(/[-_]/g,function(e){return e=="-"?"+":"/"}).replace(/[^A-Za-z0-9\+\/]/g,""))},N=function(){var e=n.Base64;return n.Base64=r,e};n.Base64={VERSION:i,atob:S,btoa:d,fromBase64:T,toBase64:m,utob:h,encode:m,encodeURI:g,btou:w,decode:T,noConflict:N};if(typeof Object.defineProperty=="function"){var C=function(e){return{value:e,enumerable:!1,writable:!0,configurable:!0}};n.Base64.extendString=function(){Object.defineProperty(String.prototype,"fromBase64",C(function(){return T(this)})),Object.defineProperty(String.prototype,"toBase64",C(function(e){return m(this,e)})),Object.defineProperty(String.prototype,"toBase64URI",C(function(){return m(this,!0)}))}}n.Meteor&&(Base64=n.Base64)})(this)},{buffer:38}],86:[function(e,t,n){(function(n){var r=e("fs"),i=e("path"),s=e("fs").existsSync||e("path").existsSync;t.exports.version={};var o=["2.0.0","2.0.1","2.0.2","2.1.0","2.1.1","2.2.0","2.3.0","3.0.0"];o.map(function(r){t.exports.version[r]=e(i.join(n,r,"reference.json"));var o=i.join(n,r,"datasources.json");s(o)&&(t.exports.version[r].datasources=e(o).datasources)})}).call(this,"/node_modules/mapnik-reference")},{fs:37,path:88}],87:[function(e,t,n){function a(e){e=""+e;if(e.length>1e4)return;var t=/^((?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|years?|yrs?|y)?$/i.exec(e);if(!t)return;var n=parseFloat(t[1]),a=(t[2]||"ms").toLowerCase();switch(a){case"years":case"year":case"yrs":case"yr":case"y":return n*u;case"days":case"day":case"d":return n*o;case"hours":case"hour":case"hrs":case"hr":case"h":return n*s;case"minutes":case"minute":case"mins":case"min":case"m":return n*i;case"seconds":case"second":case"secs":case"sec":case"s":return n*r;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return n}}function f(e){return e>=o?Math.round(e/o)+"d":e>=s?Math.round(e/s)+"h":e>=i?Math.round(e/i)+"m":e>=r?Math.round(e/r)+"s":e+"ms"}function l(e){return c(e,o,"day")||c(e,s,"hour")||c(e,i,"minute")||c(e,r,"second")||e+" ms"}function c(e,t,n){if(e<t)return;return e<t*1.5?Math.floor(e/t)+" "+n:Math.ceil(e/t)+" "+n+"s"}var r=1e3,i=r*60,s=i*60,o=s*24,u=o*365.25;t.exports=function(e,t){return t=t||{},"string"==typeof e?a(e):t.long?l(e):f(e)}},{}],88:[function(e,t,n){(function(e){function t(e,t){var n=0;for(var r=e.length-1;r>=0;r--){var i=e[r];i==="."?e.splice(r,1):i===".."?(e.splice(r,1),n++):n&&(e.splice(r,1),n--)}if(t)for(;n--;n)e.unshift("..");return e}function s(e,t){if(e.filter)return e.filter(t);var n=[];for(var r=0;r<e.length;r++)t(e[r],r,e)&&n.push(e[r]);return n}var r=/^(\/?|)([\s\S]*?)((?:\.{1,2}|[^\/]+?|)(\.[^.\/]*|))(?:[\/]*)$/,i=function(e){return r.exec(e).slice(1)};n.resolve=function(){var n="",r=!1;for(var i=arguments.length-1;i>=-1&&!r;i--){var o=i>=0?arguments[i]:e.cwd();if(typeof o!="string")throw new TypeError("Arguments to path.resolve must be strings");if(!o)continue;n=o+"/"+n,r=o.charAt(0)==="/"}return n=t(s(n.split("/"),function(e){return!!e}),!r).join("/"),(r?"/":"")+n||"."},n.normalize=function(e){var r=n.isAbsolute(e),i=o(e,-1)==="/";return e=t(s(e.split("/"),function(e){return!!e}),!r).join("/"),!e&&!r&&(e="."),e&&i&&(e+="/"),(r?"/":"")+e},n.isAbsolute=function(e){return e.charAt(0)==="/"},n.join=function(){var e=Array.prototype.slice.call(arguments,0);return n.normalize(s(e,function(e,t){if(typeof e!="string")throw new TypeError("Arguments to path.join must be strings");return e}).join("/"))},n.relative=function(e,t){function r(e){var t=0;for(;t<e.length;t++)if(e[t]!=="")break;var n=e.length-1;for(;n>=0;n--)if(e[n]!=="")break;return t>n?[]:e.slice(t,n-t+1)}e=n.resolve(e).substr(1),t=n.resolve(t).substr(1);var i=r(e.split("/")),s=r(t.split("/")),o=Math.min(i.length,s.length),u=o;for(var a=0;a<o;a++)if(i[a]!==s[a]){u=a;break}var f=[];for(var a=u;a<i.length;a++)f.push("..");return f=f.concat(s.slice(u)),f.join("/")},n.sep="/",n.delimiter=":",n.dirname=function(e){var t=i(e),n=t[0],r=t[1];return!n&&!r?".":(r&&(r=r.substr(0,r.length-1)),n+r)},n.basename=function(e,t){var n=i(e)[2];return t&&n.substr(-1*t.length)===t&&(n=n.substr(0,n.length-t.length)),n},n.extname=function(e){return i(e)[3]};var o="ab".substr(-1)==="b"?function(e,t,n){return e.substr(t,n)}:function(e,t,n){return t<0&&(t=e.length+t),e.substr(t,n)}}).call(this,e("_process"))},{_process:118}],89:[function(e,t,n){function o(e){return this instanceof o?(this.nodes=r(e),this):new o(e)}var r=e("./parse"),i=e("./walk"),s=e("./stringify");o.prototype.toString=function(){return Array.isArray(this.nodes)?s(this.nodes):""},o.prototype.walk=function(e,t){return i(this.nodes,e,t),this},o.unit=e("./unit"),o.walk=i,o.stringify=s,t.exports=o},{"./parse":90,"./stringify":91,"./unit":92,"./walk":93}],90:[function(e,t,n){var r="(".charCodeAt(0),i=")".charCodeAt(0),s="'".charCodeAt(0),o='"'.charCodeAt(0),u="\\".charCodeAt(0),a="/".charCodeAt(0),f=",".charCodeAt(0),l=":".charCodeAt(0),c="*".charCodeAt(0);t.exports=function(e){var t=[],n=e,h,p,d,v,m,g,y,b=0,w=n.charCodeAt(b),E=n.length,S=[{nodes:t}],x=0,T,N="",C="",k="";while(b<E)if(w<=32){h=b;do h+=1,w=n.charCodeAt(h);while(w<=32);v=n.slice(b,h),d=t[t.length-1],w===i&&x?k=v:d&&d.type==="div"?d.after=v:w===f||w===l||w===a&&n.charCodeAt(h+1)!==c?C=v:t.push({type:"space",sourceIndex:b,value:v}),b=h}else if(w===s||w===o){h=b,p=w===s?"'":'"',v={type:"string",sourceIndex:b,quote:p};do{m=!1,h=n.indexOf(p,h+1);if(~h){g=h;while(n.charCodeAt(g-1)===u)g-=1,m=!m}else n+=p,h=n.length-1,v.unclosed=!0}while(m);v.value=n.slice(b+1,h),t.push(v),b=h+1,w=n.charCodeAt(b)}else if(w===a&&n.charCodeAt(b+1)===c)v={type:"comment",sourceIndex:b},h=n.indexOf("*/",b),h===-1&&(v.unclosed=!0,h=n.length),v.value=n.slice(b+2,h),t.push(v),b=h+2,w=n.charCodeAt(b);else if(w===a||w===f||w===l)v=n[b],t.push({type:"div",sourceIndex:b-C.length,value:v,before:C,after:""}),C="",b+=1,w=n.charCodeAt(b);else if(r===w){h=b;do h+=1,w=n.charCodeAt(h);while(w<=32);v={type:"function",sourceIndex:b-N.length,value:N,before:n.slice(b+1,h)},b=h;if(N==="url"&&w!==s&&w!==o){h-=1;do{m=!1,h=n.indexOf(")",h+1);if(~h){g=h;while(n.charCodeAt(g-1)===u)g-=1,m=!m}else n+=")",h=n.length-1,v.unclosed=!0}while(m);y=h;do y-=1,w=n.charCodeAt(y);while(w<=32);b!==y+1?v.nodes=[{type:"word",sourceIndex:b,value:n.slice(b,y+1)}]:v.nodes=[],v.unclosed&&y+1!==h?(v.after="",v.nodes.push({type:"space",sourceIndex:y+1,value:n.slice(y+1,h)})):v.after=n.slice(y+1,h),b=h+1,w=n.charCodeAt(b),t.push(v)}else x+=1,v.after="",t.push(v),S.push(v),t=v.nodes=[],T=v;N=""}else if(i===w&&x)b+=1,w=n.charCodeAt(b),T.after=k,k="",x-=1,S.pop(),T=S[x],t=T.nodes;else{h=b;do w===u&&(h+=1),h+=1,w=n.charCodeAt(h);while(h<E&&!(w<=32||w===s||w===o||w===f||w===l||w===a||w===r||w===i&&x));v=n.slice(b,h),r===w?N=v:t.push({type:"word",sourceIndex:b,value:v}),b=h}for(b=S.length-1;b;b-=1)S[b].unclosed=!0;return S[0].nodes}},{}],91:[function(e,t,n){function r(e,t){var n=e.type,r=e.value,s,o;return t&&(o=t(e))!==undefined?o:n==="word"||n==="space"?r:n==="string"?(s=e.quote||"",s+r+(e.unclosed?"":s)):n==="comment"?"/*"+r+(e.unclosed?"":"*/"):n==="div"?(e.before||"")+r+(e.after||""):Array.isArray(e.nodes)?(s=i(e.nodes),n!=="function"?s:r+"("+(e.before||"")+s+(e.after||"")+(e.unclosed?"":")")):r}function i(e,t){var n,i;if(Array.isArray(e)){n="";for(i=e.length-1;~i;i-=1)n=r(e[i],t)+n;return n}return r(e,t)}t.exports=i},{}],92:[function(e,t,n){var r="-".charCodeAt(0),i="+".charCodeAt(0),s=".".charCodeAt(0);t.exports=function(e){var t=0,n=e.length,o=!1,u=!1,a,f="";while(t<n){a=e.charCodeAt(t);if(a>=48&&a<=57)f+=e[t],u=!0;else if(a===s){if(o)break;o=!0,f+=e[t]}else{if(a!==i&&a!==r)break;if(t!==0)break;f+=e[t]}t+=1}return u?{number:f,unit:e.slice(t)}:!1}},{}],93:[function(e,t,n){t.exports=function r(e,t,n){var i,s,o,u;for(i=0,s=e.length;i<s;i+=1)o=e[i],n||(u=t(o,i,e)),u!==!1&&o.type==="function"&&Array.isArray(o.nodes)&&r(o.nodes,t,n),n&&t(o,i,e)}},{}],94:[function(e,t,n){"use strict";function a(e){return e&&e.__esModule?e:{"default":e}}function f(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function l(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||typeof t!="object"&&typeof t!="function"?e:t}function c(e,t){if(typeof t!="function"&&t!==null)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}n.__esModule=!0;var r=function(){function e(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(t,n,r){return n&&e(t.prototype,n),r&&e(t,r),t}}(),i=e("./container"),s=a(i),o=e("./warn-once"),u=a(o),h=function(e){function t(n){f(this,t);var r=l(this,e.call(this,n));return r.type="atrule",r}return c(t,e),t.prototype.append=function(){var n;this.nodes||(this.nodes=[]);for(var r=arguments.length,i=Array(r),s=0;s<r;s++)i[s]=arguments[s];return(n=e.prototype.append).call.apply(n,[this].concat(i))},t.prototype.prepend=function(){var n;this.nodes||(this.nodes=[]);for(var r=arguments.length,i=Array(r),s=0;s<r;s++)i[s]=arguments[s];return(n=e.prototype.prepend).call.apply(n,[this].concat(i))},r(t,[{key:"afterName",get:function(){return(0,u.default)("AtRule#afterName was deprecated. Use AtRule#raws.afterName"),this.raws.afterName},set:function(t){(0,u.default)("AtRule#afterName was deprecated. Use AtRule#raws.afterName"),this.raws.afterName=t}},{key:"_params",get:function(){return(0,u.default)("AtRule#_params was deprecated. Use AtRule#raws.params"),this.raws.params},set:function(t){(0,u.default)("AtRule#_params was deprecated. Use AtRule#raws.params"),this.raws.params=t}}]),t}(s.default);n.default=h,t.exports=n["default"]},{"./container":96,"./warn-once":116}],95:[function(e,t,n){"use strict";function a(e){return e&&e.__esModule?e:{"default":e}}function f(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function l(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||typeof t!="object"&&typeof t!="function"?e:t}function c(e,t){if(typeof t!="function"&&t!==null)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}n.__esModule=!0;var r=function(){function e(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(t,n,r){return n&&e(t.prototype,n),r&&e(t,r),t}}(),i=e("./warn-once"),s=a(i),o=e("./node"),u=a(o),h=function(e){function t(n){f(this,t);var r=l(this,e.call(this,n));return r.type="comment",r}return c(t,e),r(t,[{key:"left",get:function(){return(0,s.default)("Comment#left was deprecated. Use Comment#raws.left"),this.raws.left},set:function(t){(0,s.default)("Comment#left was deprecated. Use Comment#raws.left"),this.raws.left=t}},{key:"right",get:function(){return(0,s.default)("Comment#right was deprecated. Use Comment#raws.right"),this.raws.right},set:function(t){(0,s.default)("Comment#right was deprecated. Use Comment#raws.right"),this.raws.right=t}}]),t}(u.default);n.default=h,t.exports=n["default"]},{"./node":103,"./warn-once":116}],96:[function(e,t,n){"use strict";function h(e){return e&&e.__esModule?e:{"default":e}}function p(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function d(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||typeof t!="object"&&typeof t!="function"?e:t}function v(e,t){if(typeof t!="function"&&t!==null)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}n.__esModule=!0;var r=function(){function e(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(t,n,r){return n&&e(t.prototype,n),r&&e(t,r),t}}(),i=e("./declaration"),s=h(i),o=e("./warn-once"),u=h(o),a=e("./comment"),f=h(a),l=e("./node"),c=h(l),m=function(t){function n(){return p(this,n),d(this,t.apply(this,arguments))}return v(n,t),n.prototype.push=function(t){return t.parent=this,this.nodes.push(t),this},n.prototype.each=function(t){this.lastEach||(this.lastEach=0),this.indexes||(this.indexes={}),this.lastEach+=1;var n=this.lastEach;this.indexes[n]=0;if(!this.nodes)return undefined;var r=undefined,i=undefined;while(this.indexes[n]<this.nodes.length){r=this.indexes[n],i=t(this.nodes[r],r);if(i===!1)break;this.indexes[n]+=1}return delete this.indexes[n],i},n.prototype.walk=function(t){return this.each(function(e,n){var r=t(e,n);return r!==!1&&e.walk&&(r=e.walk(t)),r})},n.prototype.walkDecls=function(t,n){return n?t instanceof RegExp?this.walk(function(e,r){if(e.type==="decl"&&t.test(e.prop))return n(e,r)}):this.walk(function(e,r){if(e.type==="decl"&&e.prop===t)return n(e,r)}):(n=t,this.walk(function(e,t){if(e.type==="decl")return n(e,t)}))},n.prototype.walkRules=function(t,n){return n?t instanceof RegExp?this.walk(function(e,r){if(e.type==="rule"&&t.test(e.selector))return n(e,r)}):this.walk(function(e,r){if(e.type==="rule"&&e.selector===t)return n(e,r)}):(n=t,this.walk(function(e,t){if(e.type==="rule")return n(e,t)}))},n.prototype.walkAtRules=function(t,n){return n?t instanceof RegExp?this.walk(function(e,r){if(e.type==="atrule"&&t.test(e.name))return n(e,r)}):this.walk(function(e,r){if(e.type==="atrule"&&e.name===t)return n(e,r)}):(n=t,this.walk(function(e,t){if(e.type==="atrule")return n(e,t)}))},n.prototype.walkComments=function(t){return this.walk(function(e,n){if(e.type==="comment")return t(e,n)})},n.prototype.append=function(){for(var t=arguments.length,n=Array(t),r=0;r<t;r++)n[r]=arguments[r];for(var i=n,s=Array.isArray(i),o=0,i=s?i:i[Symbol.iterator]();;){var u;if(s){if(o>=i.length)break;u=i[o++]}else{o=i.next();if(o.done)break;u=o.value}var a=u,f=this.normalize(a,this.last);for(var l=f,c=Array.isArray(l),h=0,l=c?l:l[Symbol.iterator]();;){var p;if(c){if(h>=l.length)break;p=l[h++]}else{h=l.next();if(h.done)break;p=h.value}var d=p;this.nodes.push(d)}}return this},n.prototype.prepend=function(){for(var t=arguments.length,n=Array(t),r=0;r<t;r++)n[r]=arguments[r];n=n.reverse();for(var i=n,s=Array.isArray(i),o=0,i=s?i:i[Symbol.iterator]();;){var u;if(s){if(o>=i.length)break;u=i[o++]}else{o=i.next();if(o.done)break;u=o.value}var a=u,f=this.normalize(a,this.first,"prepend").reverse();for(var l=f,c=Array.isArray(l),h=0,l=c?l:l[Symbol.iterator]();;){var p;if(c){if(h>=l.length)break;p=l[h++]}else{h=l.next();if(h.done)break;p=h.value}var d=p;this.nodes.unshift(d)}for(var v in this.indexes)this.indexes[v]=this.indexes[v]+f.length}return this},n.prototype.cleanRaws=function(n){t.prototype.cleanRaws.call(this,n);if(this.nodes)for(var r=this.nodes,i=Array.isArray(r),s=0,r=i?r:r[Symbol.iterator]();;){var o;if(i){if(s>=r.length)break;o=r[s++]}else{s=r.next();if(s.done)break;o=s.value}var u=o;u.cleanRaws(n)}},n.prototype.insertBefore=function(t,n){t=this.index(t);var r=t===0?"prepend":!1,i=this.normalize(n,this.nodes[t],r).reverse();for(var s=i,o=Array.isArray(s),u=0,s=o?s:s[Symbol.iterator]();;){var a;if(o){if(u>=s.length)break;a=s[u++]}else{u=s.next();if(u.done)break;a=u.value}var f=a;this.nodes.splice(t,0,f)}var l=undefined;for(var c in this.indexes)l=this.indexes[c],t<=l&&(this.indexes[c]=l+i.length);return this},n.prototype.insertAfter=function(t,n){t=this.index(t);var r=this.normalize(n,this.nodes[t]).reverse();for(var i=r,s=Array.isArray(i),o=0,i=s?i:i[Symbol.iterator]();;){var u;if(s){if(o>=i.length)break;u=i[o++]}else{o=i.next();if(o.done)break;u=o.value}var a=u;this.nodes.splice(t+1,0,a)}var f=undefined;for(var l in this.indexes)f=this.indexes[l],t<f&&(this.indexes[l]=f+r.length);return this},n.prototype.remove=function(n){return typeof n!="undefined"?((0,u.default)("Container#remove is deprecated. Use Container#removeChild"),this.removeChild(n)):t.prototype.remove.call(this),this},n.prototype.removeChild=function(t){t=this.index(t),this.nodes[t].parent=undefined,this.nodes.splice(t,1);var n=undefined;for(var r in this.indexes)n=this.indexes[r],n>=t&&(this.indexes[r]=n-1);return this},n.prototype.removeAll=function(){for(var t=this.nodes,n=Array.isArray(t),r=0,t=n?t:t[Symbol.iterator]();;){var i;if(n){if(r>=t.length)break;i=t[r++]}else{r=t.next();if(r.done)break;i=r.value}var s=i;s.parent=undefined}return this.nodes=[],this},n.prototype.replaceValues=function(t,n,r){return r||(r=n,n={}),this.walkDecls(function(e){if(n.props&&n.props.indexOf(e.prop)===-1)return;if(n.fast&&e.value.indexOf(n.fast)===-1)return;e.value=e.value.replace(t,r)}),this},n.prototype.every=function(t){return this.nodes.every(t)},n.prototype.some=function(t){return this.nodes.some(t)},n.prototype.index=function(t){return typeof t=="number"?t:this.nodes.indexOf(t)},n.prototype.normalize=function(n,r){var i=this;if(typeof n=="string"){var o=e("./parse");n=o(n).nodes}else if(!Array.isArray(n))if(n.type==="root")n=n.nodes;else if(n.type)n=[n];else if(n.prop){if(typeof n.value=="undefined")throw new Error("Value field is missed in node creation");n=[new s.default(n)]}else if(n.selector){var u=e("./rule");n=[new u(n)]}else if(n.name){var a=e("./at-rule");n=[new a(n)]}else{if(!n.text)throw new Error("Unknown node type in node creation");n=[new f.default(n)]}var l=n.map(function(e){return typeof e.raws=="undefined"&&(e=i.rebuild(e)),e.parent&&(e=e.clone()),typeof e.raws.before=="undefined"&&r&&typeof r.raws.before!="undefined"&&(e.raws.before=r.raws.before.replace(/[^\s]/g,"")),e.parent=i,e});return l},n.prototype.rebuild=function(n,r){var i=this,o=undefined;if(n.type==="root"){var u=e("./root");o=new u}else if(n.type==="atrule"){var a=e("./at-rule");o=new a}else if(n.type==="rule"){var l=e("./rule");o=new l}else n.type==="decl"?o=new s.default:n.type==="comment"&&(o=new f.default);for(var c in n)c==="nodes"?o.nodes=n.nodes.map(function(e){return i.rebuild(e,o)}):c==="parent"&&r?o.parent=r:n.hasOwnProperty(c)&&(o[c]=n[c]);return o},n.prototype.eachInside=function(t){return(0,u.default)("Container#eachInside is deprecated. Use Container#walk instead."),this.walk(t)},n.prototype.eachDecl=function(t,n){return(0,u.default)("Container#eachDecl is deprecated. Use Container#walkDecls instead."),this.walkDecls(t,n)},n.prototype.eachRule=function(t,n){return(0,u.default)("Container#eachRule is deprecated. Use Container#walkRules instead."),this.walkRules(t,n)},n.prototype.eachAtRule=function(t,n){return(0,u.default)("Container#eachAtRule is deprecated. Use Container#walkAtRules instead."),this.walkAtRules(t,n)},n.prototype.eachComment=function(t){return(0,u.default)("Container#eachComment is deprecated. Use Container#walkComments instead."),this.walkComments(t)},r(n,[{key:"first",get:function(){return this.nodes?this.nodes[0]:undefined}},{key:"last",get:function(){return this.nodes?this.nodes[this.nodes.length-1]:undefined}},{key:"semicolon",get:function(){return(0,u.default)("Node#semicolon is deprecated. Use Node#raws.semicolon"),this.raws.semicolon},set:function(t){(0,u.default)("Node#semicolon is deprecated. Use Node#raws.semicolon"),this.raws.semicolon=t}},{key:"after",get:function(){return(0,u.default)("Node#after is deprecated. Use Node#raws.after"),this.raws.after},set:function(t){(0,u.default)("Node#after is deprecated. Use Node#raws.after"),this.raws.after=t}}]),n}(c.default);n.default=m,t.exports=n["default"]},{"./at-rule":94,"./comment":95,"./declaration":98,"./node":103,"./parse":104,"./root":110,"./rule":111,"./warn-once":116}],97:[function(e,t,n){"use strict";function a(e){return e&&e.__esModule?e:{"default":e}}function f(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}n.__esModule=!0;var r=function(){function e(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(t,n,r){return n&&e(t.prototype,n),r&&e(t,r),t}}(),i=e("supports-color"),s=a(i),o=e("./warn-once"),u=a(o),l=function(){function e(t,n,r,i,s,o){f(this,e),this.name="CssSyntaxError",this.reason=t,s&&(this.file=s),i&&(this.source=i),o&&(this.plugin=o),typeof n!="undefined"&&typeof r!="undefined"&&(this.line=n,this.column=r),this.setMessage(),Error.captureStackTrace&&Error.captureStackTrace(this,e)}return e.prototype.setMessage=function(){this.message=this.plugin?this.plugin+": ":"",this.message+=this.file?this.file:"<css input>",typeof this.line!="undefined"&&(this.message+=":"+this.line+":"+this.column),this.message+=": "+this.reason},e.prototype.showSourceCode=function(t){if(!this.source)return"";var n=this.line-1,r=this.source.split("\n"),i=n>0?r[n-1]+"\n":"",o=r[n],u=n<r.length-1?"\n"+r[n+1]:"",a="\n";for(var f=0;f<this.column-1;f++)a+=" ";return typeof t=="undefined"&&(t=s.default),t?a+="^":a+="^","\n"+i+o+a+u},e.prototype.toString=function t(){return this.name+": "+this.message+this.showSourceCode()},r(e,[{key:"generated",get:function(){return(0,u.default)("CssSyntaxError#generated is depreacted. Use input instead."),this.input}}]),e}();n.default=l,t.exports=n["default"]},{"./warn-once":116,"supports-color":131}],98:[function(e,t,n){"use strict";function a(e){return e&&e.__esModule?e:{"default":e}}function f(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function l(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||typeof t!="object"&&typeof t!="function"?e:t}function c(e,t){if(typeof t!="function"&&t!==null)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}n.__esModule=!0;var r=function(){function e(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(t,n,r){return n&&e(t.prototype,n),r&&e(t,r),t}}(),i=e("./warn-once"),s=a(i),o=e("./node"),u=a(o),h=function(e){function t(n){f(this,t);var r=l(this,e.call(this,n));return r.type="decl",r}return c(t,e),r(t,[{key:"_value",get:function(){return(0,s.default)("Node#_value was deprecated. Use Node#raws.value"),this.raws.value},set:function(t){(0,s.default)("Node#_value was deprecated. Use Node#raws.value"),this.raws.value=t}},{key:"_important",get:function(){return(0,s.default)("Node#_important was deprecated. Use Node#raws.important"),this.raws.important},set:function(t){(0,s.default)("Node#_important was deprecated. Use Node#raws.important"),this.raws.important=t}}]),t}(u.default);n.default=h,t.exports=n["default"]},{"./node":103,"./warn-once":116}],99:[function(e,t,n){"use strict";function l(e){return e&&e.__esModule?e:{"default":e}}function c(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}n.__esModule=!0;var r=function(){function e(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(t,n,r){return n&&e(t.prototype,n),r&&e(t,r),t}}(),i=e("./css-syntax-error"),s=l(i),o=e("./previous-map"),u=l(o),a=e("path"),f=l(a),h=0,p=function(){function e(t){var n=arguments.length<=1||arguments[1]===undefined?{}:arguments[1];c(this,e),this.css=t.toString();if(this.css[0]===""||this.css[0]==="￾")this.css=this.css.slice(1);n.from&&(this.file=f.default.resolve(n.from));var r=new u.default(this.css,n);if(r.text){this.map=r;var i=r.consumer().file;!this.file&&i&&(this.file=this.mapResolve(i))}this.file||(h+=1,this.id="<input css "+h+">"),this.map&&(this.map.file=this.from)}return e.prototype.error=function(t,n,r){var i=arguments.length<=3||arguments[3]===undefined?{}:arguments[3],o=undefined,u=this.origin(n,r);return u?o=new s.default(t,u.line,u.column,u.source,u.file,i.plugin):o=new s.default(t,n,r,this.css,this.file,i.plugin),o.input={line:n,column:r,source:this.css},this.file&&(o.input.file=this.file),o},e.prototype.origin=function(t,n){if(!this.map)return!1;var r=this.map.consumer(),i=r.originalPositionFor({line:t,column:n});if(!i.source)return!1;var s={file:this.mapResolve(i.source),line:i.line,column:i.column},o=r.sourceContentFor(i.source);return o&&(s.source=o),s},e.prototype.mapResolve=function(t){return f.default.resolve(this.map.consumer().sourceRoot||".",t)},r(e,[{key:"from",get:function(){return this.file||this.id}}]),e}();n.default=p,t.exports=n["default"]},{"./css-syntax-error":97,"./previous-map":107,path:88}],100:[function(e,t,n){"use strict";function v(e){return e&&e.__esModule?e:{"default":e}}function m(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function g(e){return(typeof e=="undefined"?"undefined":i(e))==="object"&&typeof e.then=="function"}n.__esModule=!0;var r=function(){function e(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(t,n,r){return n&&e(t.prototype,n),r&&e(t,r),t}}(),i=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(e){return typeof e}:function(e){return e&&typeof Symbol=="function"&&e.constructor===Symbol?"symbol":typeof e},s=e("./map-generator"),o=v(s),u=e("./stringify"),a=v(u),f=e("./warn-once"),l=v(f),c=e("./result"),h=v(c),p=e("./parse"),d=v(p),y=function(){function e(t,n,r){m(this,e),this.stringified=!1,this.processed=!1;var s=undefined;if((typeof n=="undefined"?"undefined":i(n))==="object"&&n.type==="root")s=n;else if(n instanceof e||n instanceof h.default)s=n.root,n.map&&(typeof r.map=="undefined"&&(r.map={}),r.map.inline||(r.map.inline=!1),r.map.prev=n.map);else{var o=d.default;r.syntax&&(o=r.syntax.parse),r.parser&&(o=r.parser),o.parse&&(o=o.parse);try{s=o(n,r)}catch(u){this.error=u}}this.result=new h.default(t,s,r)}return e.prototype.warnings=function(){return this.sync().warnings()},e.prototype.toString=function t(){return this.css},e.prototype.then=function(t,n){return this.async().then(t,n)},e.prototype.catch=function(t){return this.async().catch(t)},e.prototype.handleError=function(t,n){try{this.error=t;if(t.name==="CssSyntaxError"&&!t.plugin)t.plugin=n.postcssPlugin,t.setMessage();else if(n.postcssVersion){var r=n.postcssPlugin,i=n.postcssVersion,s=this.result.processor.version,o=i.split("."),u=s.split(".");(o[0]!==u[0]||parseInt(o[1])>parseInt(u[1]))&&(0,l.default)("Your current PostCSS version is "+s+", but "+r+" "+"uses "+i+". Perhaps this is "+"the source of the error below.")}}catch(a){console&&console.error&&console.error(a)}},e.prototype.asyncTick=function(t,n){var r=this;if(this.plugin>=this.processor.plugins.length)return this.processed=!0,t();try{
(function(){var e=r.processor.plugins[r.plugin],i=r.run(e);r.plugin+=1,g(i)?i.then(function(){r.asyncTick(t,n)}).catch(function(t){r.handleError(t,e),r.processed=!0,n(t)}):r.asyncTick(t,n)})()}catch(i){this.processed=!0,n(i)}},e.prototype.async=function(){var t=this;return this.processed?new Promise(function(e,n){t.error?n(t.error):e(t.stringify())}):this.processing?this.processing:(this.processing=(new Promise(function(e,n){if(t.error)return n(t.error);t.plugin=0,t.asyncTick(e,n)})).then(function(){return t.processed=!0,t.stringify()}),this.processing)},e.prototype.sync=function(){if(this.processed)return this.result;this.processed=!0;if(this.processing)throw new Error("Use process(css).then(cb) to work with async plugins");if(this.error)throw this.error;for(var t=this.result.processor.plugins,n=Array.isArray(t),r=0,t=n?t:t[Symbol.iterator]();;){var i;if(n){if(r>=t.length)break;i=t[r++]}else{r=t.next();if(r.done)break;i=r.value}var s=i,o=this.run(s);if(g(o))throw new Error("Use process(css).then(cb) to work with async plugins")}return this.result},e.prototype.run=function(t){this.result.lastPlugin=t;try{return t(this.result.root,this.result)}catch(n){throw this.handleError(n,t),n}},e.prototype.stringify=function(){if(this.stringified)return this.result;this.stringified=!0,this.sync();var t=this.result.opts,n=a.default;t.syntax&&(n=t.syntax.stringify),t.stringifier&&(n=t.stringifier),n.stringify&&(n=n.stringify);var r=new o.default(n,this.result.root,this.result.opts),i=r.generate();return this.result.css=i[0],this.result.map=i[1],this.result},r(e,[{key:"processor",get:function(){return this.result.processor}},{key:"opts",get:function(){return this.result.opts}},{key:"css",get:function(){return this.stringify().css}},{key:"content",get:function(){return this.stringify().content}},{key:"map",get:function(){return this.stringify().map}},{key:"root",get:function(){return this.sync().root}},{key:"messages",get:function(){return this.sync().messages}}]),e}();n.default=y,t.exports=n["default"]},{"./map-generator":102,"./parse":104,"./result":109,"./stringify":113,"./warn-once":116}],101:[function(e,t,n){"use strict";n.__esModule=!0;var r={split:function i(e,t,n){var r=[],s="",i=!1,o=0,u=!1,a=!1;for(var f=0;f<e.length;f++){var l=e[f];u?a?a=!1:l==="\\"?a=!0:l===u&&(u=!1):l==='"'||l==="'"?u=l:l==="("?o+=1:l===")"?o>0&&(o-=1):o===0&&t.indexOf(l)!==-1&&(i=!0),i?(s!==""&&r.push(s.trim()),s="",i=!1):s+=l}return(n||s!=="")&&r.push(s.trim()),r},space:function(t){var n=[" ","\n"," "];return r.split(t,n)},comma:function s(e){var s=",";return r.split(e,[s],!0)}};n.default=r,t.exports=n["default"]},{}],102:[function(e,t,n){"use strict";function a(e){return e&&e.__esModule?e:{"default":e}}function f(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}n.__esModule=!0;var r=e("js-base64"),i=e("source-map"),s=a(i),o=e("path"),u=a(o),l=function(){function e(t,n,r){f(this,e),this.stringify=t,this.mapOpts=r.map||{},this.root=n,this.opts=r}return e.prototype.isMap=function(){return typeof this.opts.map!="undefined"?!!this.opts.map:this.previous().length>0},e.prototype.previous=function(){var t=this;return this.previousMaps||(this.previousMaps=[],this.root.walk(function(e){if(e.source&&e.source.input.map){var n=e.source.input.map;t.previousMaps.indexOf(n)===-1&&t.previousMaps.push(n)}})),this.previousMaps},e.prototype.isInline=function(){if(typeof this.mapOpts.inline!="undefined")return this.mapOpts.inline;var t=this.mapOpts.annotation;return typeof t!="undefined"&&t!==!0?!1:this.previous().length?this.previous().some(function(e){return e.inline}):!0},e.prototype.isSourcesContent=function(){return typeof this.mapOpts.sourcesContent!="undefined"?this.mapOpts.sourcesContent:this.previous().length?this.previous().some(function(e){return e.withContent()}):!0},e.prototype.clearAnnotation=function(){if(this.mapOpts.annotation===!1)return;var t=undefined;for(var n=this.root.nodes.length-1;n>=0;n--){t=this.root.nodes[n];if(t.type!=="comment")continue;t.text.indexOf("# sourceMappingURL=")===0&&this.root.removeChild(n)}},e.prototype.setSourcesContent=function(){var t=this,n={};this.root.walk(function(e){if(e.source){var r=e.source.input.from;if(r&&!n[r]){n[r]=!0;var i=t.relative(r);t.map.setSourceContent(i,e.source.input.css)}}})},e.prototype.applyPrevMaps=function(){for(var t=this.previous(),n=Array.isArray(t),r=0,t=n?t:t[Symbol.iterator]();;){var i;if(n){if(r>=t.length)break;i=t[r++]}else{r=t.next();if(r.done)break;i=r.value}var o=i,a=this.relative(o.file),f=o.root||u.default.dirname(o.file),l=undefined;this.mapOpts.sourcesContent===!1?(l=new s.default.SourceMapConsumer(o.text),l.sourcesContent&&(l.sourcesContent=l.sourcesContent.map(function(){return null}))):l=o.consumer(),this.map.applySourceMap(l,a,this.relative(f))}},e.prototype.isAnnotation=function(){return this.isInline()?!0:typeof this.mapOpts.annotation!="undefined"?this.mapOpts.annotation:this.previous().length?this.previous().some(function(e){return e.annotation}):!0},e.prototype.addAnnotation=function(){var t=undefined;this.isInline()?t="data:application/json;base64,"+r.Base64.encode(this.map.toString()):typeof this.mapOpts.annotation=="string"?t=this.mapOpts.annotation:t=this.outputFile()+".map";var n="\n";this.css.indexOf("\r\n")!==-1&&(n="\r\n"),this.css+=n+"/*# sourceMappingURL="+t+" */"},e.prototype.outputFile=function(){return this.opts.to?this.relative(this.opts.to):this.opts.from?this.relative(this.opts.from):"to.css"},e.prototype.generateMap=function(){return this.generateString(),this.isSourcesContent()&&this.setSourcesContent(),this.previous().length>0&&this.applyPrevMaps(),this.isAnnotation()&&this.addAnnotation(),this.isInline()?[this.css]:[this.css,this.map]},e.prototype.relative=function(t){var n=this.opts.to?u.default.dirname(this.opts.to):".";return typeof this.mapOpts.annotation=="string"&&(n=u.default.dirname(u.default.resolve(n,this.mapOpts.annotation))),t=u.default.relative(n,t),u.default.sep==="\\"?t.replace(/\\/g,"/"):t},e.prototype.sourcePath=function(t){return this.relative(t.source.input.from)},e.prototype.generateString=function(){var t=this;this.css="",this.map=new s.default.SourceMapGenerator({file:this.outputFile()});var n=1,r=1,i=undefined,o=undefined;this.stringify(this.root,function(e,s,u){t.css+=e,s&&s.source&&s.source.start&&u!=="end"&&t.map.addMapping({source:t.sourcePath(s),original:{line:s.source.start.line,column:s.source.start.column-1},generated:{line:n,column:r-1}}),i=e.match(/\n/g),i?(n+=i.length,o=e.lastIndexOf("\n"),r=e.length-o):r+=e.length,s&&s.source&&s.source.end&&u!=="start"&&t.map.addMapping({source:t.sourcePath(s),original:{line:s.source.end.line,column:s.source.end.column},generated:{line:n,column:r-1}})})},e.prototype.generate=function(){this.clearAnnotation();if(this.isMap())return this.generateMap();var t="";return this.stringify(this.root,function(e){t+=e}),[t]},e}();n.default=l,t.exports=n["default"]},{"js-base64":85,path:88,"source-map":130}],103:[function(e,t,n){"use strict";function d(e){return e&&e.__esModule?e:{"default":e}}function v(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}n.__esModule=!0;var r=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},i=function(){function e(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(t,n,r){return n&&e(t.prototype,n),r&&e(t,r),t}}(),s=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(e){return typeof e}:function(e){return e&&typeof Symbol=="function"&&e.constructor===Symbol?"symbol":typeof e},o=e("./css-syntax-error"),u=d(o),a=e("./stringifier"),f=d(a),l=e("./stringify"),c=d(l),h=e("./warn-once"),p=d(h),m=function y(e,t){var n=new e.constructor;for(var r in e){if(!e.hasOwnProperty(r))continue;var i=e[r],o=typeof i=="undefined"?"undefined":s(i);r==="parent"&&o==="object"?t&&(n[r]=t):r==="source"?n[r]=i:i instanceof Array?n[r]=i.map(function(e){return y(e,n)}):r!=="before"&&r!=="after"&&r!=="between"&&r!=="semicolon"&&(o==="object"&&i!==null&&(i=y(i)),n[r]=i)}return n},g=function(){function e(){var t=arguments.length<=0||arguments[0]===undefined?{}:arguments[0];v(this,e),this.raws={};for(var n in t)this[n]=t[n]}return e.prototype.error=function(t){var n=arguments.length<=1||arguments[1]===undefined?{}:arguments[1];if(this.source){var r=this.positionBy(n);return this.source.input.error(t,r.line,r.column,n)}return new u.default(t)},e.prototype.warn=function(t,n,i){return t.warn(n,r({node:this},i))},e.prototype.remove=function(){return this.parent&&this.parent.removeChild(this),this.parent=undefined,this},e.prototype.toString=function t(){var e=arguments.length<=0||arguments[0]===undefined?c.default:arguments[0];e.stringify&&(e=e.stringify);var t="";return e(this,function(e){t+=e}),t},e.prototype.clone=function(){var t=arguments.length<=0||arguments[0]===undefined?{}:arguments[0],n=m(this);for(var r in t)n[r]=t[r];return n},e.prototype.cloneBefore=function(){var t=arguments.length<=0||arguments[0]===undefined?{}:arguments[0],n=this.clone(t);return this.parent.insertBefore(this,n),n},e.prototype.cloneAfter=function(){var t=arguments.length<=0||arguments[0]===undefined?{}:arguments[0],n=this.clone(t);return this.parent.insertAfter(this,n),n},e.prototype.replaceWith=function(){if(this.parent){for(var t=arguments.length,n=Array(t),r=0;r<t;r++)n[r]=arguments[r];for(var i=n,s=Array.isArray(i),o=0,i=s?i:i[Symbol.iterator]();;){var u;if(s){if(o>=i.length)break;u=i[o++]}else{o=i.next();if(o.done)break;u=o.value}var a=u;this.parent.insertBefore(this,a)}this.remove()}return this},e.prototype.moveTo=function(t){return this.cleanRaws(this.root()===t.root()),this.remove(),t.append(this),this},e.prototype.moveBefore=function(t){return this.cleanRaws(this.root()===t.root()),this.remove(),t.parent.insertBefore(t,this),this},e.prototype.moveAfter=function(t){return this.cleanRaws(this.root()===t.root()),this.remove(),t.parent.insertAfter(t,this),this},e.prototype.next=function(){var t=this.parent.index(this);return this.parent.nodes[t+1]},e.prototype.prev=function(){var t=this.parent.index(this);return this.parent.nodes[t-1]},e.prototype.toJSON=function(){var t={};for(var n in this){if(!this.hasOwnProperty(n))continue;if(n==="parent")continue;var r=this[n];r instanceof Array?t[n]=r.map(function(e){return(typeof e=="undefined"?"undefined":s(e))==="object"&&e.toJSON?e.toJSON():e}):(typeof r=="undefined"?"undefined":s(r))==="object"&&r.toJSON?t[n]=r.toJSON():t[n]=r}return t},e.prototype.raw=function(t,n){var r=new f.default;return r.raw(this,t,n)},e.prototype.root=function(){var t=this;while(t.parent)t=t.parent;return t},e.prototype.cleanRaws=function(t){delete this.raws.before,delete this.raws.after,t||delete this.raws.between},e.prototype.positionInside=function(t){var n=this.toString(),r=this.source.start.column,i=this.source.start.line;for(var s=0;s<t;s++)n[s]==="\n"?(r=1,i+=1):r+=1;return{line:i,column:r}},e.prototype.positionBy=function(t){var n=this.source.start;if(t.index)n=this.positionInside(t.index);else if(t.word){var r=this.toString().indexOf(t.word);r!==-1&&(n=this.positionInside(r))}return n},e.prototype.removeSelf=function(){return(0,p.default)("Node#removeSelf is deprecated. Use Node#remove."),this.remove()},e.prototype.replace=function(t){return(0,p.default)("Node#replace is deprecated. Use Node#replaceWith"),this.replaceWith(t)},e.prototype.style=function(t,n){return(0,p.default)("Node#style() is deprecated. Use Node#raw()"),this.raw(t,n)},e.prototype.cleanStyles=function(t){return(0,p.default)("Node#cleanStyles() is deprecated. Use Node#cleanRaws()"),this.cleanRaws(t)},i(e,[{key:"before",get:function(){return(0,p.default)("Node#before is deprecated. Use Node#raws.before"),this.raws.before},set:function(t){(0,p.default)("Node#before is deprecated. Use Node#raws.before"),this.raws.before=t}},{key:"between",get:function(){return(0,p.default)("Node#between is deprecated. Use Node#raws.between"),this.raws.between},set:function(t){(0,p.default)("Node#between is deprecated. Use Node#raws.between"),this.raws.between=t}}]),e}();n.default=g,t.exports=n["default"]},{"./css-syntax-error":97,"./stringifier":112,"./stringify":113,"./warn-once":116}],104:[function(e,t,n){"use strict";function u(e){return e&&e.__esModule?e:{"default":e}}function a(e,t){if(t&&t.safe)throw new Error('Option safe was removed. Use parser: require("postcss-safe-parser")');var n=new o.default(e,t),r=new i.default(n);return r.tokenize(),r.loop(),r.root}n.__esModule=!0,n.default=a;var r=e("./parser"),i=u(r),s=e("./input"),o=u(s);t.exports=n["default"]},{"./input":99,"./parser":105}],105:[function(e,t,n){"use strict";function v(e){return e&&e.__esModule?e:{"default":e}}function m(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}n.__esModule=!0;var r=e("./declaration"),i=v(r),s=e("./tokenize"),o=v(s),u=e("./comment"),a=v(u),f=e("./at-rule"),l=v(f),c=e("./root"),h=v(c),p=e("./rule"),d=v(p),g=function(){function e(t){m(this,e),this.input=t,this.pos=0,this.root=new h.default,this.current=this.root,this.spaces="",this.semicolon=!1,this.root.source={input:t,start:{line:1,column:1}}}return e.prototype.tokenize=function(){this.tokens=(0,o.default)(this.input)},e.prototype.loop=function(){var t=undefined;while(this.pos<this.tokens.length){t=this.tokens[this.pos];switch(t[0]){case"word":case":":this.word();break;case"}":this.end(t);break;case"comment":this.comment(t);break;case"at-word":this.atrule(t);break;case"{":this.emptyRule(t);break;default:this.spaces+=t[1]}this.pos+=1}this.endFile()},e.prototype.comment=function(t){var n=new a.default;this.init(n,t[2],t[3]),n.source.end={line:t[4],column:t[5]};var r=t[1].slice(2,-2);if(/^\s*$/.test(r))n.text="",n.raws.left=r,n.raws.right="";else{var i=r.match(/^(\s*)([^]*[^\s])(\s*)$/);n.text=i[2],n.raws.left=i[1],n.raws.right=i[3]}},e.prototype.emptyRule=function(t){var n=new d.default;this.init(n,t[2],t[3]),n.selector="",n.raws.between="",this.current=n},e.prototype.word=function(){var t=undefined,n=!1,r=null,i=!1,s=null,o=0,u=this.pos;this.pos+=1;while(this.pos<this.tokens.length){t=this.tokens[this.pos],r=t[0];if(r==="(")s||(s=t),o+=1;else if(o===0){if(r===";"){if(i){this.decl(this.tokens.slice(u,this.pos+1));return}break}if(r==="{"){this.rule(this.tokens.slice(u,this.pos+1));return}if(r==="}"){this.pos-=1,n=!0;break}r===":"&&(i=!0)}else r===")"&&(o-=1,o===0&&(s=null));this.pos+=1}this.pos===this.tokens.length&&(this.pos-=1,n=!0),o>0&&this.unclosedBracket(s);if(n&&i){while(this.pos>u){t=this.tokens[this.pos][0];if(t!=="space"&&t!=="comment")break;this.pos-=1}this.decl(this.tokens.slice(u,this.pos+1));return}this.unknownWord(u)},e.prototype.rule=function(t){t.pop();var n=new d.default;this.init(n,t[0][2],t[0][3]),n.raws.between=this.spacesFromEnd(t),this.raw(n,"selector",t),this.current=n},e.prototype.decl=function(t){var n=new i.default;this.init(n);var r=t[t.length-1];r[0]===";"&&(this.semicolon=!0,t.pop()),r[4]?n.source.end={line:r[4],column:r[5]}:n.source.end={line:r[2],column:r[3]};while(t[0][0]!=="word")n.raws.before+=t.shift()[1];n.source.start={line:t[0][2],column:t[0][3]},n.prop="";while(t.length){var s=t[0][0];if(s===":"||s==="space"||s==="comment")break;n.prop+=t.shift()[1]}n.raws.between="";var o=undefined;while(t.length){o=t.shift();if(o[0]===":"){n.raws.between+=o[1];break}n.raws.between+=o[1]}if(n.prop[0]==="_"||n.prop[0]==="*")n.raws.before+=n.prop[0],n.prop=n.prop.slice(1);n.raws.between+=this.spacesFromStart(t),this.precheckMissedSemicolon(t);for(var u=t.length-1;u>0;u--){o=t[u];if(o[1]==="!important"){n.important=!0;var a=this.stringFrom(t,u);a=this.spacesFromEnd(t)+a,a!==" !important"&&(n.raws.important=a);break}if(o[1]==="important"){var f=t.slice(0),l="";for(var c=u;c>0;c--){var s=f[c][0];if(l.trim().indexOf("!")===0&&s!=="space")break;l=f.pop()[1]+l}l.trim().indexOf("!")===0&&(n.important=!0,n.raws.important=l,t=f)}if(o[0]!=="space"&&o[0]!=="comment")break}this.raw(n,"value",t),n.value.indexOf(":")!==-1&&this.checkMissedSemicolon(t)},e.prototype.atrule=function(t){var n=new l.default;n.name=t[1].slice(1),n.name===""&&this.unnamedAtrule(n,t),this.init(n,t[2],t[3]);var r=!1,i=!1,s=[];this.pos+=1;while(this.pos<this.tokens.length){t=this.tokens[this.pos];if(t[0]===";"){n.source.end={line:t[2],column:t[3]},this.semicolon=!0;break}if(t[0]==="{"){i=!0;break}if(t[0]==="}"){this.end(t);break}s.push(t),this.pos+=1}this.pos===this.tokens.length&&(r=!0),n.raws.between=this.spacesFromEnd(s),s.length?(n.raws.afterName=this.spacesFromStart(s),this.raw(n,"params",s),r&&(t=s[s.length-1],n.source.end={line:t[4],column:t[5]},this.spaces=n.raws.between,n.raws.between="")):(n.raws.afterName="",n.params=""),i&&(n.nodes=[],this.current=n)},e.prototype.end=function(t){this.current.nodes&&this.current.nodes.length&&(this.current.raws.semicolon=this.semicolon),this.semicolon=!1,this.current.raws.after=(this.current.raws.after||"")+this.spaces,this.spaces="",this.current.parent?(this.current.source.end={line:t[2],column:t[3]},this.current=this.current.parent):this.unexpectedClose(t)},e.prototype.endFile=function(){this.current.parent&&this.unclosedBlock(),this.current.nodes&&this.current.nodes.length&&(this.current.raws.semicolon=this.semicolon),this.current.raws.after=(this.current.raws.after||"")+this.spaces},e.prototype.init=function(t,n,r){this.current.push(t),t.source={start:{line:n,column:r},input:this.input},t.raws.before=this.spaces,this.spaces="",t.type!=="comment"&&(this.semicolon=!1)},e.prototype.raw=function t(e,n,r){var i=undefined,s=undefined,o=r.length,u="",a=!0;for(var f=0;f<o;f+=1)i=r[f],s=i[0],s==="comment"||s==="space"&&f===o-1?a=!1:u+=i[1];if(!a){var t=r.reduce(function(e,t){return e+t[1]},"");e.raws[n]={value:u,raw:t}}e[n]=u},e.prototype.spacesFromEnd=function(t){var n=undefined,r="";while(t.length){n=t[t.length-1][0];if(n!=="space"&&n!=="comment")break;r+=t.pop()[1]}return r},e.prototype.spacesFromStart=function(t){var n=undefined,r="";while(t.length){n=t[0][0];if(n!=="space"&&n!=="comment")break;r+=t.shift()[1]}return r},e.prototype.stringFrom=function(t,n){var r="";for(var i=n;i<t.length;i++)r+=t[i][1];return t.splice(n,t.length-n),r},e.prototype.colon=function(t){var n=0,r=undefined,i=undefined,s=undefined;for(var o=0;o<t.length;o++){r=t[o],i=r[0];if(i==="(")n+=1;else if(i===")")n-=1;else if(n===0&&i===":"){if(!!s){if(s[0]==="word"&&s[1]==="progid")continue;return o}this.doubleColon(r)}s=r}return!1},e.prototype.unclosedBracket=function(t){throw this.input.error("Unclosed bracket",t[2],t[3])},e.prototype.unknownWord=function(t){var n=this.tokens[t];throw this.input.error("Unknown word",n[2],n[3])},e.prototype.unexpectedClose=function(t){throw this.input.error("Unexpected }",t[2],t[3])},e.prototype.unclosedBlock=function(){var t=this.current.source.start;throw this.input.error("Unclosed block",t.line,t.column)},e.prototype.doubleColon=function(t){throw this.input.error("Double colon",t[2],t[3])},e.prototype.unnamedAtrule=function(t,n){throw this.input.error("At-rule without name",n[2],n[3])},e.prototype.precheckMissedSemicolon=function(t){t},e.prototype.checkMissedSemicolon=function(t){var n=this.colon(t);if(n===!1)return;var r=0,i=undefined;for(var s=n-1;s>=0;s--){i=t[s];if(i[0]!=="space"){r+=1;if(r===2)break}}throw this.input.error("Missed semicolon",i[2],i[3])},e}();n.default=g,t.exports=n["default"]},{"./at-rule":94,"./comment":95,"./declaration":98,"./root":110,"./rule":111,"./tokenize":114}],106:[function(e,t,n){"use strict";function x(e){return e&&e.__esModule?e:{"default":e}}n.__esModule=!0;var r=e("./declaration"),i=x(r),s=e("./processor"),o=x(s),u=e("./stringify"),a=x(u),f=e("./comment"),l=x(f),c=e("./at-rule"),h=x(c),p=e("./vendor"),d=x(p),v=e("./parse"),m=x(v),g=e("./list"),y=x(g),b=e("./rule"),w=x(b),E=e("./root"),S=x(E),T=function(){for(var t=arguments.length,n=Array(t),r=0;r<t;r++)n[r]=arguments[r];return n.length===1&&Array.isArray(n[0])&&(n=n[0]),new o.default(n)};T.plugin=function(e,t){var n=function(){var r=t.apply(undefined,arguments);return r.postcssPlugin=e,r.postcssVersion=(new o.default).version,r};return n.postcss=n(),n.process=function(e,t){return T([n(t)]).process(e,t)},n},T.stringify=a.default,T.vendor=d.default,T.parse=m.default,T.list=y.default,T.comment=function(e){return new l.default(e)},T.atRule=function(e){return new h.default(e)},T.decl=function(e){return new i.default(e)},T.rule=function(e){return new w.default(e)},T.root=function(e){return new S.default(e)},n.default=T,t.exports=n["default"]},{"./at-rule":94,"./comment":95,"./declaration":98,"./list":101,"./parse":104,"./processor":108,"./root":110,"./rule":111,"./stringify":113,"./vendor":115}],107:[function(e,t,n){"use strict";function c(e){return e&&e.__esModule?e:{"default":e}}function h(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}n.__esModule=!0;var r=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(e){return typeof e}:function(e){return e&&typeof Symbol=="function"&&e.constructor===Symbol?"symbol":typeof e},i=e("js-base64"),s=e("source-map"),o=c(s),u=e("path"),a=c(u),f=e("fs"),l=c(f),p=function(){function e(t,n){h(this,e),this.loadAnnotation(t),this.inline=this.startWith(this.annotation,"data:");var r=n.map?n.map.prev:undefined,i=this.loadMap(n.from,r);i&&(this.text=i)}return e.prototype.consumer=function(){return this.consumerCache||(this.consumerCache=new o.default.SourceMapConsumer(this.text)),this.consumerCache},e.prototype.withContent=function(){return!!(this.consumer().sourcesContent&&this.consumer().sourcesContent.length>0)},e.prototype.startWith=function(t,n){return t?t.substr(0,n.length)===n:!1},e.prototype.loadAnnotation=function(t){var n=t.match(/\/\*\s*# sourceMappingURL=(.*)\s*\*\//);n&&(this.annotation=n[1].trim())},e.prototype.decodeInline=function(t){var n="data:application/json;charset=utf-8;base64,",r="data:application/json;base64,",s="data:application/json,";if(this.startWith(t,s))return decodeURIComponent(t.substr(s.length));if(this.startWith(t,r))return i.Base64.decode(t.substr(r.length));if(this.startWith(t,n))return i.Base64.decode(t.substr(n.length));var o=t.match(/data:application\/json;([^,]+),/)[1];throw new Error("Unsupported source map encoding "+o)},e.prototype.loadMap=function(t,n){if(n===!1)return!1;if(n){if(typeof n=="string")return n;if(n instanceof o.default.SourceMapConsumer)return o.default.SourceMapGenerator.fromSourceMap(n).toString();if(n instanceof o.default.SourceMapGenerator)return n.toString();if(this.isMap(n))return JSON.stringify(n);throw new Error("Unsupported previous source map format: "+n.toString())}if(this.inline)return this.decodeInline(this.annotation);if(this.annotation){var r=this.annotation;return t&&(r=a.default.join(a.default.dirname(t),r)),this.root=a.default.dirname(r),l.default.existsSync&&l.default.existsSync(r)?l.default.readFileSync(r,"utf-8").toString().trim():!1}},e.prototype.isMap=function(t){return(typeof t=="undefined"?"undefined":r(t))!=="object"?!1:typeof t.mappings=="string"||typeof t._mappings=="string"},e}();n.default=p,t.exports=n["default"]},{fs:37,"js-base64":85,path:88,"source-map":130}],108:[function(e,t,n){"use strict";function o(e){return e&&e.__esModule?e:{"default":e}}function u(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}n.__esModule=!0;var r=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(e){return typeof e}:function(e){return e&&typeof Symbol=="function"&&e.constructor===Symbol?"symbol":typeof e},i=e("./lazy-result"),s=o(i),a=function(){function e(){var t=arguments.length<=0||arguments[0]===undefined?[]:arguments[0];u(this,e),this.version="5.0.14",this.plugins=this.normalize(t)}return e.prototype.use=function(t){return this.plugins=this.plugins.concat(this.normalize([t])),this},e.prototype.process=function(t){var n=arguments.length<=1||arguments[1]===undefined?{}:arguments[1];return new s.default(this,t,n)},e.prototype.normalize=function(t){var n=[];for(var i=t,s=Array.isArray(i),o=0,i=s?i:i[Symbol.iterator]();;){var u;if(s){if(o>=i.length)break;u=i[o++]}else{o=i.next();if(o.done)break;u=o.value}var a=u;a.postcss&&(a=a.postcss);if((typeof a=="undefined"?"undefined":r(a))==="object"&&Array.isArray(a.plugins))n=n.concat(a.plugins);else{if(typeof a!="function")throw new Error(a+" is not a PostCSS plugin");n.push(a)}}return n},e}();n.default=a,t.exports=n["default"]},{"./lazy-result":100}],109:[function(e,t,n){"use strict";function o(e){return e&&e.__esModule?e:{"default":e}}function u(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}n.__esModule=!0;var r=function(){function e(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(t,n,r){return n&&e(t.prototype,n),r&&e(t,r),t}}(),i=e("./warning"),s=o(i),a=function(){function e(t,n,r){u(this,e),this.processor=t,this.messages=[],this.root=n,this.opts=r,this.css=undefined,this.map=undefined}return e.prototype.toString=function t(){return this.css},e.prototype.warn=function(t){var n=arguments.length<=1||arguments[1]===undefined?{}:arguments[1];n.plugin||this.lastPlugin&&this.lastPlugin.postcssPlugin&&(n.plugin=this.lastPlugin.postcssPlugin),this.messages.push(new s.default(t,n))},e.prototype.warnings=function(){return this.messages.filter(function(e){return e.type==="warning"})},r(e,[{key:"content",get:function(){return this.css}}]),e}();n.default=a,t.exports=n["default"]},{"./warning":117}],110:[function(e,t,n){"use strict";function u(e){return e&&e.__esModule?e:{"default":e}}function a(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function f(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||typeof t!="object"&&typeof t!="function"?e:t}function l(e,t){if(typeof t!="function"&&t!==null)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}n.__esModule=!0;var r=e("./container"),i=u(r),s=e("./warn-once"),o=u(s),c=function(t){function n(e){a(this,n);var r=f(this,t.call(this,e));return r.type="root",r.nodes||(r.nodes=[]),r}return l(n,t),n.prototype.removeChild=function(n){return n=this.index(n),n===0&&this.nodes.length>1&&(this.nodes[1].raws.before=this.nodes[n].raws.before),t.prototype.removeChild.call(this,n)},n.prototype.normalize=function(n,r,i){var s=t.prototype.normalize.call(this,n);if(r)if(i==="prepend")this.nodes.length>1?r.raws.before=this.nodes[1].raws.before:delete r.raws.before;else if(this.first!==r)for(var o=s,u=Array.isArray(o),a=0,o=u?o:o[Symbol.iterator]();;){var f;if(u){if(a>=o.length)break;f=o[a++]}else{a=o.next();if(a.done)break;f=a.value}var l=f;l.raws.before=r.raws.before}return s},n.prototype.toResult=function(){var n=arguments.length<=0||arguments[0]===undefined?{}:arguments[0],r=e("./lazy-result"),i=e("./processor"),s=new r(new i,this,n);return s.stringify()},n.prototype.remove=function(t){(0,o.default)("Root#remove is deprecated. Use Root#removeChild"),this.removeChild(t)},n.prototype.prevMap=function(){return(0,o.default)("Root#prevMap is deprecated. Use Root#source.input.map"),this.source.input.map},n}(i.default);n.default=c,t.exports=n["default"]},{"./container":96,"./lazy-result":100,"./processor":108,"./warn-once":116}],111:[function(e,t,n){"use strict";function l(e){return e&&e.__esModule?e:{"default":e}}function c(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function h(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||typeof t!="object"&&typeof t!="function"?e:t}function p(e,t){if(typeof t!="function"&&t!==null)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}n.__esModule=!0;var r=function(){function e(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(t,n,r){return n&&e(t.prototype,n),r&&e(t,r),t}}(),i=e("./container"),s=l(i),o=e("./warn-once"),u=l(o),a=e("./list"),f=l(a),d=function(e){function t(n){c(this,t);var r=h(this,e.call(this,n));return r.type="rule",r.nodes||(r.nodes=[]),r}return p(t,e),r(t,[{key:"selectors",get:function(){return f.default.comma(this.selector)},set:function(t){var n=this.selector?this.selector.match(/,\s*/):null,r=n?n[0]:","+this.raw("between","beforeOpen");this.selector=t.join(r)}},{key:"_selector",get:function(){return(0,u.default)("Rule#_selector is deprecated. Use Rule#raws.selector"),this.raws.selector},set:function(t){(0,u.default)("Rule#_selector is deprecated. Use Rule#raws.selector"),this.raws.selector=t}}]),t}(s.default);n.default=d,t.exports=n["default"]},{"./container":96,"./list":101,"./warn-once":116}],112:[function(e,t,n){"use strict";function r(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function s(e){return e[0].toUpperCase()+e.slice(1)}n.__esModule=!0;var i={colon:": ",indent:" ",beforeDecl:"\n",beforeRule:"\n",beforeOpen:" ",beforeClose:"\n",beforeComment:"\n",after:"\n",emptyBody:"",commentLeft:" ",commentRight:" "},o=function(){function e(t){r(this,e),this.builder=t}return e.prototype.stringify=function(t,n){this[t.type](t,n)},e.prototype.root=function(t){this.body(t),t.raws.after&&this.builder(t.raws.after)},e.prototype.comment=function(t){var n=this.raw(t,"left","commentLeft"),r=this.raw(t,"right","commentRight");this.builder("/*"+n+t.text+r+"*/",t)},e.prototype.decl=function(t,n){var r=this.raw(t,"between","colon"),i=t.prop+r+this.rawValue(t,"value");t.important&&(i+=t.raws.important||" !important"),n&&(i+=";"),this.builder(i,t)},e.prototype.rule=function(t){this.block(t,this.rawValue(t,"selector"))},e.prototype.atrule=function(t,n){var r="@"+t.name,i=t.params?this.rawValue(t,"params"):"";typeof t.raws.afterName!="undefined"?r+=t.raws.afterName:i&&(r+=" ");if(t.nodes)this.block(t,r+i);else{var s=(t.raws.between||"")+(n?";":"");this.builder(r+i+s,t)}},e.prototype.body=function(t){var n=t.nodes.length-1;while(n>0){if(t.nodes[n].type!=="comment")break;n-=1}var r=this.raw(t,"semicolon");for(var i=0;i<t.nodes.length;i++){var s=t.nodes[i],o=this.raw(s,"before");o&&this.builder(o),this.stringify(s,n!==i||r)}},e.prototype.block=function(t,n){var r=this.raw(t,"between","beforeOpen");this.builder(n+r+"{",t,"start");var i=undefined;t.nodes&&t.nodes.length?(this.body(t),i=this.raw(t,"after")):i=this.raw(t,"after","emptyBody"),i&&this.builder(i),this.builder("}",t,"end")},e.prototype.raw=function(t,n,r){var o=undefined;r||(r=n);if(n){o=t.raws[n];if(typeof o!="undefined")return o}var u=t.parent;if(r==="before")if(!u||u.type==="root"&&u.first===t)return"";if(!u)return i[r];var a=t.root();a.rawCache||(a.rawCache={});if(typeof a.rawCache[r]!="undefined")return a.rawCache[r];if(r==="before"||r==="after")return this.beforeAfter(t,r);var f="raw"+s(r);return this[f]?o=this[f](a,t):a.walk(function(e){o=e.raws[n];if(typeof o!="undefined")return!1}),typeof o=="undefined"&&(o=i[r]),a.rawCache[r]=o,o},e.prototype.rawSemicolon=function(t){var n=undefined;return t.walk(function(e){if(e.nodes&&e.nodes.length&&e.last.type==="decl"){n=e.raws.semicolon;if(typeof n!="undefined")return!1}}),n},e.prototype.rawEmptyBody=function(t){var n=undefined;return t.walk(function(e){if(e.nodes&&e.nodes.length===0){n=e.raws.after;if(typeof n!="undefined")return!1}}),n},e.prototype.rawIndent=function(t){if(t.raws.indent)return t.raws.indent;var n=undefined;return t.walk(function(e){var r=e.parent;if(r&&r!==t&&r.parent&&r.parent===t&&typeof e.raws.before!="undefined"){var i=e.raws.before.split("\n");return n=i[i.length-1],n=n.replace(/[^\s]/g,""),!1}}),n},e.prototype.rawBeforeComment=function(t,n){var r=undefined;return t.walkComments(function(e){if(typeof e.raws.before!="undefined")return r=e.raws.before,r.indexOf("\n")!==-1&&(r=r.replace(/[^\n]+$/,"")),!1}),typeof r=="undefined"&&(r=this.raw(n,null,"beforeDecl")),r},e.prototype.rawBeforeDecl=function(t,n){var r=undefined;return t.walkDecls(function(e){if(typeof e.raws.before!="undefined")return r=e.raws.before,r.indexOf
("\n")!==-1&&(r=r.replace(/[^\n]+$/,"")),!1}),typeof r=="undefined"&&(r=this.raw(n,null,"beforeRule")),r},e.prototype.rawBeforeRule=function(t){var n=undefined;return t.walk(function(e){if(e.nodes&&(e.parent!==t||t.first!==e)&&typeof e.raws.before!="undefined")return n=e.raws.before,n.indexOf("\n")!==-1&&(n=n.replace(/[^\n]+$/,"")),!1}),n},e.prototype.rawBeforeClose=function(t){var n=undefined;return t.walk(function(e){if(e.nodes&&e.nodes.length>0&&typeof e.raws.after!="undefined")return n=e.raws.after,n.indexOf("\n")!==-1&&(n=n.replace(/[^\n]+$/,"")),!1}),n},e.prototype.rawBeforeOpen=function(t){var n=undefined;return t.walk(function(e){if(e.type!=="decl"){n=e.raws.between;if(typeof n!="undefined")return!1}}),n},e.prototype.rawColon=function(t){var n=undefined;return t.walkDecls(function(e){if(typeof e.raws.between!="undefined")return n=e.raws.between.replace(/[^\s:]/g,""),!1}),n},e.prototype.beforeAfter=function(t,n){var r=undefined;t.type==="decl"?r=this.raw(t,null,"beforeDecl"):t.type==="comment"?r=this.raw(t,null,"beforeComment"):n==="before"?r=this.raw(t,null,"beforeRule"):r=this.raw(t,null,"beforeClose");var i=t.parent,s=0;while(i&&i.type!=="root")s+=1,i=i.parent;if(r.indexOf("\n")!==-1){var o=this.raw(t,null,"indent");if(o.length)for(var u=0;u<s;u++)r+=o}return r},e.prototype.rawValue=function(t,n){var r=t[n],i=t.raws[n];return i&&i.value===r?i.raw:r},e}();n.default=o,t.exports=n["default"]},{}],113:[function(e,t,n){"use strict";function s(e){return e&&e.__esModule?e:{"default":e}}function o(e,t){var n=new i.default(t);n.stringify(e)}n.__esModule=!0,n.default=o;var r=e("./stringifier"),i=s(r);t.exports=n["default"]},{"./stringifier":112}],114:[function(e,t,n){"use strict";function x(e){function q(t){throw e.error("Unclosed "+t,F,I-j)}var t=[],n=e.css.valueOf(),x=undefined,T=undefined,N=undefined,C=undefined,k=undefined,L=undefined,A=undefined,O=undefined,M=undefined,_=undefined,D=undefined,P=undefined,H=undefined,B=n.length,j=-1,F=1,I=0;while(I<B){x=n.charCodeAt(I);if(x===u||x===f||x===c&&n.charCodeAt(I+1)!==u)j=I,F+=1;switch(x){case u:case a:case l:case c:case f:T=I;do T+=1,x=n.charCodeAt(T),x===u&&(j=T,F+=1);while(x===a||x===u||x===l||x===c||x===f);t.push(["space",n.slice(I,T)]),I=T-1;break;case d:t.push(["{","{",F,I-j]);break;case v:t.push(["}","}",F,I-j]);break;case y:t.push([":",":",F,I-j]);break;case m:t.push([";",";",F,I-j]);break;case h:P=t.length?t[t.length-1][1]:"",H=n.charCodeAt(I+1);if(P==="url"&&H!==r&&H!==i&&H!==a&&H!==u&&H!==l&&H!==f&&H!==c){T=I;do{_=!1,T=n.indexOf(")",T+1),T===-1&&q("bracket"),D=T;while(n.charCodeAt(D-1)===s)D-=1,_=!_}while(_);t.push(["brackets",n.slice(I,T+1),F,I-j,F,T-j]),I=T}else T=n.indexOf(")",I+1),L=n.slice(I,T+1),T===-1||S.test(L)?t.push(["(","(",F,I-j]):(t.push(["brackets",L,F,I-j,F,T-j]),I=T);break;case p:t.push([")",")",F,I-j]);break;case r:case i:N=x===r?"'":'"',T=I;do{_=!1,T=n.indexOf(N,T+1),T===-1&&q("quote"),D=T;while(n.charCodeAt(D-1)===s)D-=1,_=!_}while(_);L=n.slice(I,T+1),C=L.split("\n"),k=C.length-1,k>0?(O=F+k,M=T-C[k].length):(O=F,M=j),t.push(["string",n.slice(I,T+1),F,I-j,O,T-M]),j=M,F=O,I=T;break;case b:w.lastIndex=I+1,w.test(n),w.lastIndex===0?T=n.length-1:T=w.lastIndex-2,t.push(["at-word",n.slice(I,T+1),F,I-j,F,T-j]),I=T;break;case s:T=I,A=!0;while(n.charCodeAt(T+1)===s)T+=1,A=!A;x=n.charCodeAt(T+1),A&&x!==o&&x!==a&&x!==u&&x!==l&&x!==c&&x!==f&&(T+=1),t.push(["word",n.slice(I,T+1),F,I-j,F,T-j]),I=T;break;default:x===o&&n.charCodeAt(I+1)===g?(T=n.indexOf("*/",I+2)+1,T===0&&q("comment"),L=n.slice(I,T+1),C=L.split("\n"),k=C.length-1,k>0?(O=F+k,M=T-C[k].length):(O=F,M=j),t.push(["comment",L,F,I-j,O,T-M]),j=M,F=O,I=T):(E.lastIndex=I+1,E.test(n),E.lastIndex===0?T=n.length-1:T=E.lastIndex-2,t.push(["word",n.slice(I,T+1),F,I-j,F,T-j]),I=T)}I++}return t}n.__esModule=!0,n.default=x;var r=39,i=34,s=92,o=47,u=10,a=32,f=12,l=9,c=13,h=40,p=41,d=123,v=125,m=59,g=42,y=58,b=64,w=/[ \n\t\r\f\{\(\)'"\\;/]/g,E=/[ \n\t\r\f\(\)\{\}:;@!'"\\]|\/(?=\*)/g,S=/.[\\\/\("'\n]/;t.exports=n["default"]},{}],115:[function(e,t,n){"use strict";n.__esModule=!0,n.default={prefix:function(t){if(t[0]==="-"){var n=t.indexOf("-",1);return t.substr(0,n+1)}return""},unprefixed:function(t){if(t[0]==="-"){var n=t.indexOf("-",1);return t.substr(n+1)}return t}},t.exports=n["default"]},{}],116:[function(e,t,n){"use strict";function i(e){if(r[e])return;r[e]=!0,typeof console!="undefined"&&console.warn&&console.warn(e)}n.__esModule=!0,n.default=i;var r={};t.exports=n["default"]},{}],117:[function(e,t,n){"use strict";function r(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}n.__esModule=!0;var i=function(){function e(t){var n=arguments.length<=1||arguments[1]===undefined?{}:arguments[1];r(this,e),this.type="warning",this.text=t;if(n.node&&n.node.source){var i=n.node.positionBy(n);this.line=i.line,this.column=i.column}for(var s in n)this[s]=n[s]}return e.prototype.toString=function t(){return this.node?this.node.error(this.text,{plugin:this.plugin,index:this.index,word:this.word}).message:this.plugin?this.plugin+": "+this.text:this.text},e}();n.default=i,t.exports=n["default"]},{}],118:[function(e,t,n){function i(){}var r=t.exports={};r.nextTick=function(){var e=typeof window!="undefined"&&window.setImmediate,t=typeof window!="undefined"&&window.MutationObserver,n=typeof window!="undefined"&&window.postMessage&&window.addEventListener;if(e)return function(e){return window.setImmediate(e)};var r=[];if(t){var i=document.createElement("div"),s=new MutationObserver(function(){var e=r.slice();r.length=0,e.forEach(function(e){e()})});return s.observe(i,{attributes:!0}),function(t){r.length||i.setAttribute("yes","no"),r.push(t)}}return n?(window.addEventListener("message",function(e){var t=e.source;if((t===window||t===null)&&e.data==="process-tick"){e.stopPropagation();if(r.length>0){var n=r.shift();n()}}},!0),function(t){r.push(t),window.postMessage("process-tick","*")}):function(t){setTimeout(t,0)}}(),r.title="browser",r.browser=!0,r.env={},r.argv=[],r.on=i,r.addListener=i,r.once=i,r.off=i,r.removeListener=i,r.removeAllListeners=i,r.emit=i,r.binding=function(e){throw new Error("process.binding is not supported")},r.cwd=function(){return"/"},r.chdir=function(e){throw new Error("process.chdir is not supported")}},{}],119:[function(e,t,n){"use strict";(function(){function n(){var e={},t=[];return e.data=function(n){return arguments.length?(t=n.slice(),e):t},e.mb=function(){var e,n,r=t.length;if(r===1)e=0,n=t[0][1];else{var i=0,s=0,o=0,u=0,a,f,l;for(var c=0;c<r;c++)a=t[c],f=a[0],l=a[1],i+=f,s+=l,o+=f*f,u+=f*l;e=(r*u-i*s)/(r*o-i*i),n=s/r-e*i/r}return{m:e,b:n}},e.m=function(){return e.mb().m},e.b=function(){return e.mb().b},e.line=function(){var t=e.mb(),n=t.m,r=t.b;return function(e){return r+n*e}},e}function r(e,t){if(e.length<2)return 1;var n=0,r;for(var i=0;i<e.length;i++)n+=e[i][1];r=n/e.length;var s=0;for(var o=0;o<e.length;o++)s+=Math.pow(r-e[o][1],2);var u=0;for(var a=0;a<e.length;a++)u+=Math.pow(e[a][1]-t(e[a][0]),2);return 1-u/s}function i(){var e={},t=0,n={};return e.train=function(e,r){n[r]||(n[r]={});for(var i in e){var s=e[i];n[r][i]===undefined&&(n[r][i]={}),n[r][i][s]===undefined&&(n[r][i][s]=0),n[r][i][e[i]]++}t++},e.score=function(e){var r={},i;for(var s in e){var o=e[s];for(i in n)r[i]===undefined&&(r[i]={}),n[i][s]?r[i][s+"_"+o]=(n[i][s][o]||0)/t:r[i][s+"_"+o]=0}var u={};for(i in r)for(var a in r[i])u[i]===undefined&&(u[i]=0),u[i]+=r[i][a];return u},e}function s(e){var t=0;for(var n=0;n<e.length;n++)t+=e[n];return t}function o(e){return e.length===0?null:s(e)/e.length}function u(e){if(e.length===0)return null;var t=1;for(var n=0;n<e.length;n++){if(e[n]<=0)return null;t*=e[n]}return Math.pow(t,1/e.length)}function a(e){if(e.length===0)return null;var t=0;for(var n=0;n<e.length;n++){if(e[n]<=0)return null;t+=1/e[n]}return e.length/t}function f(e){if(e.length===0)return null;var t=0;for(var n=0;n<e.length;n++)t+=Math.pow(e[n],2);return Math.sqrt(t/e.length)}function l(e){var t;for(var n=0;n<e.length;n++)if(e[n]<t||t===undefined)t=e[n];return t}function c(e){var t;for(var n=0;n<e.length;n++)if(e[n]>t||t===undefined)t=e[n];return t}function h(e){if(e.length===0)return null;var t=o(e),n=[];for(var r=0;r<e.length;r++)n.push(Math.pow(e[r]-t,2));return o(n)}function p(e){return e.length===0?null:Math.sqrt(h(e))}function d(e,t){var n=o(e),r=0;for(var i=0;i<e.length;i++)r+=Math.pow(e[i]-n,t);return r}function v(e){if(e.length<=1)return null;var t=d(e,2);return t/(e.length-1)}function m(e){return e.length<=1?null:Math.sqrt(v(e))}function g(e,t){if(e.length<=1||e.length!==t.length)return null;var n=o(e),r=o(t),i=0;for(var s=0;s<e.length;s++)i+=(e[s]-n)*(t[s]-r);return i/(e.length-1)}function y(e,t){var n=g(e,t),r=m(e),i=m(t);return n===null||r===null||i===null?null:n/r/i}function b(e){if(e.length===0)return null;var t=e.slice().sort(function(e,t){return e-t});if(t.length%2===1)return t[(t.length-1)/2];var n=t[t.length/2-1],r=t[t.length/2];return(n+r)/2}function w(e){if(e.length===0)return null;if(e.length===1)return e[0];var t=e.slice().sort(function(e,t){return e-t}),n=t[0],r,i=0,s=1;for(var o=1;o<t.length+1;o++)t[o]!==n?(s>i&&(i=s,r=n),s=1,n=t[o]):s++;return r}function E(e,t){var n=o(e),r=p(e),i=Math.sqrt(e.length);return(n-t)/(r/i)}function S(e,t,n){var r=e.length,i=t.length;if(!r||!i)return null;n||(n=0);var s=o(e),u=o(t),a=((r-1)*v(e)+(i-1)*v(t))/(r+i-2);return(s-u-n)/Math.sqrt(a*(1/r+1/i))}function x(e,t){var n=[];if(t<=0)return null;for(var r=0;r<e.length;r+=t)n.push(e.slice(r,r+t));return n}function T(e,t){t=t||Math.random;var n=e.length,r,i;while(n>0)i=Math.floor(t()*n--),r=e[n],e[n]=e[i],e[i]=r;return e}function N(e,t){return e=e.slice(),T(e.slice(),t)}function C(e,t,n){var r=N(e,n);return r.slice(0,t)}function k(e,t){var n=e.length*t;return t<0||t>1?null:t===1?e[e.length-1]:t===0?e[0]:n%1!==0?e[Math.ceil(n)-1]:e.length%2===0?(e[n-1]+e[n])/2:e[n]}function L(e,t){if(e.length===0)return null;var n=e.slice().sort(function(e,t){return e-t});if(t.length){var r=[];for(var i=0;i<t.length;i++)r[i]=k(n,t[i]);return r}return k(n,t)}function A(e){return e.length===0?null:L(e,.75)-L(e,.25)}function O(e){if(!e||e.length===0)return null;var t=b(e),n=[];for(var r=0;r<e.length;r++)n.push(Math.abs(e[r]-t));return b(n)}function M(e,t){var n=[],r=[],i,s,o=0;for(i=0;i<e.length+1;i++){var u=[],a=[];for(s=0;s<t+1;s++)u.push(0),a.push(0);n.push(u),r.push(a)}for(i=1;i<t+1;i++){n[1][i]=1,r[1][i]=0;for(s=2;s<e.length+1;s++)r[s][i]=Infinity}for(var f=2;f<e.length+1;f++){var l=0,c=0,h=0,p=0;for(var d=1;d<f+1;d++){var v=f-d+1,m=e[v-1];h++,l+=m,c+=m*m,o=c-l*l/h,p=v-1;if(p!==0)for(s=2;s<t+1;s++)r[f][s]>=o+r[p][s-1]&&(n[f][s]=v,r[f][s]=o+r[p][s-1])}n[f][1]=1,r[f][1]=o}return{lower_class_limits:n,variance_combinations:r}}function _(e,t,n){var r=e.length,i=[],s=n;i[n]=e[e.length-1];while(s>0)i[s-1]=e[t[r][s]-1],r=t[r][s]-1,s--;return i}function D(e,t){if(t>e.length)return null;e=e.slice().sort(function(e,t){return e-t});var n=M(e,t),r=n.lower_class_limits;return _(e,r,t)}function P(e){if(e.length<3)return null;var t=e.length,n=Math.pow(m(e),3),r=d(e,3);return t*r/((t-1)*(t-2)*n)}function B(e){var t=1/(1+.5*Math.abs(e)),n=t*Math.exp(-Math.pow(e,2)-1.26551223+1.00002368*t+.37409196*Math.pow(t,2)+.09678418*Math.pow(t,3)-.18628806*Math.pow(t,4)+.27886807*Math.pow(t,5)-1.13520398*Math.pow(t,6)+1.48851587*Math.pow(t,7)-.82215223*Math.pow(t,8)+.17087277*Math.pow(t,9));return e>=0?1-n:n-1}function j(e){var t=Math.abs(e),n=Math.min(Math.round(t*100),H.length-1);return e>=0?H[n]:+(1-H[n]).toFixed(4)}function F(e,t,n){return(e-t)/n}function q(e){if(e<0)return null;var t=1;for(var n=2;n<=e;n++)t*=n;return t}function R(e,t){function n(e,t,n){return q(t)/(q(e)*q(t-e))*Math.pow(n,e)*Math.pow(1-n,t-e)}if(t<0||t>1||e<=0||e%1!==0)return null;var r=0,i=0,s={};do s[r]=n(r,e,t),i+=s[r],r++;while(i<1-I);return s}function U(e){return e<0||e>1?null:R(1,e)}function z(e){function i(e,t){return Math.pow(Math.E,-t)*Math.pow(t,e)/q(e)}if(e<=0)return null;var t=0,n=0,r={};do r[t]=i(t,e),n+=r[t],t++;while(n<1-I);return r}function X(e,t,n){var r=o(e),i=0,s,u=1,a=t(r),f=[],l=[],c;for(var h=0;h<e.length;h++)f[e[h]]===undefined&&(f[e[h]]=0),f[e[h]]++;for(h=0;h<f.length;h++)f[h]===undefined&&(f[h]=0);for(c in a)c in f&&(l[c]=a[c]*e.length);for(c=l.length-1;c>=0;c--)l[c]<3&&(l[c-1]+=l[c],l.pop(),f[c-1]+=f[c],f.pop());for(c=0;c<f.length;c++)i+=Math.pow(f[c]-l[c],2)/l[c];return s=f.length-u-1,W[s][n]<i}function V(t){function i(t){return function(){var n=Array.prototype.slice.apply(arguments);return n.unshift(this),e[t].apply(e,n)}}var n=!!Object.defineProperty&&!!Object.defineProperties;if(!n)throw new Error("without defineProperty, simple-statistics cannot be mixed in");var r=["median","standard_deviation","sum","sample_skewness","mean","min","max","quantile","geometric_mean","harmonic_mean","root_mean_square"],s;t?s=t.slice():s=Array.prototype;for(var o=0;o<r.length;o++)Object.defineProperty(s,r[o],{value:i(r[o]),configurable:!0,enumerable:!1,writable:!0});return s}var e={};typeof t!="undefined"?t.exports=e:this.ss=e;var H=[.5,.504,.508,.512,.516,.5199,.5239,.5279,.5319,.5359,.5398,.5438,.5478,.5517,.5557,.5596,.5636,.5675,.5714,.5753,.5793,.5832,.5871,.591,.5948,.5987,.6026,.6064,.6103,.6141,.6179,.6217,.6255,.6293,.6331,.6368,.6406,.6443,.648,.6517,.6554,.6591,.6628,.6664,.67,.6736,.6772,.6808,.6844,.6879,.6915,.695,.6985,.7019,.7054,.7088,.7123,.7157,.719,.7224,.7257,.7291,.7324,.7357,.7389,.7422,.7454,.7486,.7517,.7549,.758,.7611,.7642,.7673,.7704,.7734,.7764,.7794,.7823,.7852,.7881,.791,.7939,.7967,.7995,.8023,.8051,.8078,.8106,.8133,.8159,.8186,.8212,.8238,.8264,.8289,.8315,.834,.8365,.8389,.8413,.8438,.8461,.8485,.8508,.8531,.8554,.8577,.8599,.8621,.8643,.8665,.8686,.8708,.8729,.8749,.877,.879,.881,.883,.8849,.8869,.8888,.8907,.8925,.8944,.8962,.898,.8997,.9015,.9032,.9049,.9066,.9082,.9099,.9115,.9131,.9147,.9162,.9177,.9192,.9207,.9222,.9236,.9251,.9265,.9279,.9292,.9306,.9319,.9332,.9345,.9357,.937,.9382,.9394,.9406,.9418,.9429,.9441,.9452,.9463,.9474,.9484,.9495,.9505,.9515,.9525,.9535,.9545,.9554,.9564,.9573,.9582,.9591,.9599,.9608,.9616,.9625,.9633,.9641,.9649,.9656,.9664,.9671,.9678,.9686,.9693,.9699,.9706,.9713,.9719,.9726,.9732,.9738,.9744,.975,.9756,.9761,.9767,.9772,.9778,.9783,.9788,.9793,.9798,.9803,.9808,.9812,.9817,.9821,.9826,.983,.9834,.9838,.9842,.9846,.985,.9854,.9857,.9861,.9864,.9868,.9871,.9875,.9878,.9881,.9884,.9887,.989,.9893,.9896,.9898,.9901,.9904,.9906,.9909,.9911,.9913,.9916,.9918,.992,.9922,.9925,.9927,.9929,.9931,.9932,.9934,.9936,.9938,.994,.9941,.9943,.9945,.9946,.9948,.9949,.9951,.9952,.9953,.9955,.9956,.9957,.9959,.996,.9961,.9962,.9963,.9964,.9965,.9966,.9967,.9968,.9969,.997,.9971,.9972,.9973,.9974,.9974,.9975,.9976,.9977,.9977,.9978,.9979,.9979,.998,.9981,.9981,.9982,.9982,.9983,.9984,.9984,.9985,.9985,.9986,.9986,.9987,.9987,.9987,.9988,.9988,.9989,.9989,.9989,.999,.999],I=1e-4,W={1:{.995:0,.99:0,.975:0,.95:0,.9:.02,.5:.45,.1:2.71,.05:3.84,.025:5.02,.01:6.63,.005:7.88},2:{.995:.01,.99:.02,.975:.05,.95:.1,.9:.21,.5:1.39,.1:4.61,.05:5.99,.025:7.38,.01:9.21,.005:10.6},3:{.995:.07,.99:.11,.975:.22,.95:.35,.9:.58,.5:2.37,.1:6.25,.05:7.81,.025:9.35,.01:11.34,.005:12.84},4:{.995:.21,.99:.3,.975:.48,.95:.71,.9:1.06,.5:3.36,.1:7.78,.05:9.49,.025:11.14,.01:13.28,.005:14.86},5:{.995:.41,.99:.55,.975:.83,.95:1.15,.9:1.61,.5:4.35,.1:9.24,.05:11.07,.025:12.83,.01:15.09,.005:16.75},6:{.995:.68,.99:.87,.975:1.24,.95:1.64,.9:2.2,.5:5.35,.1:10.65,.05:12.59,.025:14.45,.01:16.81,.005:18.55},7:{.995:.99,.99:1.25,.975:1.69,.95:2.17,.9:2.83,.5:6.35,.1:12.02,.05:14.07,.025:16.01,.01:18.48,.005:20.28},8:{.995:1.34,.99:1.65,.975:2.18,.95:2.73,.9:3.49,.5:7.34,.1:13.36,.05:15.51,.025:17.53,.01:20.09,.005:21.96},9:{.995:1.73,.99:2.09,.975:2.7,.95:3.33,.9:4.17,.5:8.34,.1:14.68,.05:16.92,.025:19.02,.01:21.67,.005:23.59},10:{.995:2.16,.99:2.56,.975:3.25,.95:3.94,.9:4.87,.5:9.34,.1:15.99,.05:18.31,.025:20.48,.01:23.21,.005:25.19},11:{.995:2.6,.99:3.05,.975:3.82,.95:4.57,.9:5.58,.5:10.34,.1:17.28,.05:19.68,.025:21.92,.01:24.72,.005:26.76},12:{.995:3.07,.99:3.57,.975:4.4,.95:5.23,.9:6.3,.5:11.34,.1:18.55,.05:21.03,.025:23.34,.01:26.22,.005:28.3},13:{.995:3.57,.99:4.11,.975:5.01,.95:5.89,.9:7.04,.5:12.34,.1:19.81,.05:22.36,.025:24.74,.01:27.69,.005:29.82},14:{.995:4.07,.99:4.66,.975:5.63,.95:6.57,.9:7.79,.5:13.34,.1:21.06,.05:23.68,.025:26.12,.01:29.14,.005:31.32},15:{.995:4.6,.99:5.23,.975:6.27,.95:7.26,.9:8.55,.5:14.34,.1:22.31,.05:25,.025:27.49,.01:30.58,.005:32.8},16:{.995:5.14,.99:5.81,.975:6.91,.95:7.96,.9:9.31,.5:15.34,.1:23.54,.05:26.3,.025:28.85,.01:32,.005:34.27},17:{.995:5.7,.99:6.41,.975:7.56,.95:8.67,.9:10.09,.5:16.34,.1:24.77,.05:27.59,.025:30.19,.01:33.41,.005:35.72},18:{.995:6.26,.99:7.01,.975:8.23,.95:9.39,.9:10.87,.5:17.34,.1:25.99,.05:28.87,.025:31.53,.01:34.81,.005:37.16},19:{.995:6.84,.99:7.63,.975:8.91,.95:10.12,.9:11.65,.5:18.34,.1:27.2,.05:30.14,.025:32.85,.01:36.19,.005:38.58},20:{.995:7.43,.99:8.26,.975:9.59,.95:10.85,.9:12.44,.5:19.34,.1:28.41,.05:31.41,.025:34.17,.01:37.57,.005:40},21:{.995:8.03,.99:8.9,.975:10.28,.95:11.59,.9:13.24,.5:20.34,.1:29.62,.05:32.67,.025:35.48,.01:38.93,.005:41.4},22:{.995:8.64,.99:9.54,.975:10.98,.95:12.34,.9:14.04,.5:21.34,.1:30.81,.05:33.92,.025:36.78,.01:40.29,.005:42.8},23:{.995:9.26,.99:10.2,.975:11.69,.95:13.09,.9:14.85,.5:22.34,.1:32.01,.05:35.17,.025:38.08,.01:41.64,.005:44.18},24:{.995:9.89,.99:10.86,.975:12.4,.95:13.85,.9:15.66,.5:23.34,.1:33.2,.05:36.42,.025:39.36,.01:42.98,.005:45.56},25:{.995:10.52,.99:11.52,.975:13.12,.95:14.61,.9:16.47,.5:24.34,.1:34.28,.05:37.65,.025:40.65,.01:44.31,.005:46.93},26:{.995:11.16,.99:12.2,.975:13.84,.95:15.38,.9:17.29,.5:25.34,.1:35.56,.05:38.89,.025:41.92,.01:45.64,.005:48.29},27:{.995:11.81,.99:12.88,.975:14.57,.95:16.15,.9:18.11,.5:26.34,.1:36.74,.05:40.11,.025:43.19,.01:46.96,.005:49.65},28:{.995:12.46,.99:13.57,.975:15.31,.95:16.93,.9:18.94,.5:27.34,.1:37.92,.05:41.34,.025:44.46,.01:48.28,.005:50.99},29:{.995:13.12,.99:14.26,.975:16.05,.95:17.71,.9:19.77,.5:28.34,.1:39.09,.05:42.56,.025:45.72,.01:49.59,.005:52.34},30:{.995:13.79,.99:14.95,.975:16.79,.95:18.49,.9:20.6,.5:29.34,.1:40.26,.05:43.77,.025:46.98,.01:50.89,.005:53.67},40:{.995:20.71,.99:22.16,.975:24.43,.95:26.51,.9:29.05,.5:39.34,.1:51.81,.05:55.76,.025:59.34,.01:63.69,.005:66.77},50:{.995:27.99,.99:29.71,.975:32.36,.95:34.76,.9:37.69,.5:49.33,.1:63.17,.05:67.5,.025:71.42,.01:76.15,.005:79.49},60:{.995:35.53,.99:37.48,.975:40.48,.95:43.19,.9:46.46,.5:59.33,.1:74.4,.05:79.08,.025:83.3,.01:88.38,.005:91.95},70:{.995:43.28,.99:45.44,.975:48.76,.95:51.74,.9:55.33,.5:69.33,.1:85.53,.05:90.53,.025:95.02,.01:100.42,.005:104.22},80:{.995:51.17,.99:53.54,.975:57.15,.95:60.39,.9:64.28,.5:79.33,.1:96.58,.05:101.88,.025:106.63,.01:112.33,.005:116.32},90:{.995:59.2,.99:61.75,.975:65.65,.95:69.13,.9:73.29,.5:89.33,.1:107.57,.05:113.14,.025:118.14,.01:124.12,.005:128.3},100:{.995:67.33,.99:70.06,.975:74.22,.95:77.93,.9:82.36,.5:99.33,.1:118.5,.05:124.34,.025:129.56,.01:135.81,.005:140.17}};e.linear_regression=n,e.standard_deviation=p,e.r_squared=r,e.median=b,e.mean=o,e.mode=w,e.min=l,e.max=c,e.sum=s,e.quantile=L,e.quantile_sorted=k,e.iqr=A,e.mad=O,e.chunk=x,e.shuffle=N,e.shuffle_in_place=T,e.sample=C,e.sample_covariance=g,e.sample_correlation=y,e.sample_variance=v,e.sample_standard_deviation=m,e.sample_skewness=P,e.geometric_mean=u,e.harmonic_mean=a,e.root_mean_square=f,e.variance=h,e.t_test=E,e.t_test_two_sample=S,e.jenksMatrices=M,e.jenksBreaks=_,e.jenks=D,e.bayesian=i,e.epsilon=I,e.factorial=q,e.bernoulli_distribution=U,e.binomial_distribution=R,e.poisson_distribution=z,e.chi_squared_goodness_of_fit=X,e.z_score=F,e.cumulative_std_normal_probability=j,e.standard_normal_table=H,e.error_function=B,e.average=o,e.interquartile_range=A,e.mixin=V,e.median_absolute_deviation=O,e.rms=f,e.erf=B})(this)},{}],120:[function(e,t,n){function o(){this._array=[],this._set=s?new Map:Object.create(null)}var r=e("./util"),i=Object.prototype.hasOwnProperty,s=typeof Map!="undefined";o.fromArray=function(t,n){var r=new o;for(var i=0,s=t.length;i<s;i++)r.add(t[i],n);return r},o.prototype.size=function(){return s?this._set.size:Object.getOwnPropertyNames(this._set).length},o.prototype.add=function(t,n){var o=s?t:r.toSetString(t),u=s?this.has(t):i.call(this._set,o),a=this._array.length;(!u||n)&&this._array.push(t),u||(s?this._set.set(t,a):this._set[o]=a)},o.prototype.has=function(t){if(s)return this._set.has(t);var n=r.toSetString(t);return i.call(this._set,n)},o.prototype.indexOf=function(t){if(s){var n=this._set.get(t);if(n>=0)return n}else{var o=r.toSetString(t);if(i.call(this._set,o))return this._set[o]}throw new Error('"'+t+'" is not in the set.')},o.prototype.at=function(t){if(t>=0&&t<this._array.length)return this._array[t];throw new Error("No element indexed by "+t)},o.prototype.toArray=function(){return this._array.slice()},n.ArraySet=o},{"./util":129}],121:[function(e,t,n){function a(e){return e<0?(-e<<1)+1:(e<<1)+0}function f(e){var t=(e&1)===1,n=e>>1;return t?-n:n}var r=e("./base64"),i=5,s=1<<i,o=s-1,u=s;n.encode=function(t){var n="",s,f=a(t);do s=f&o,f>>>=i,f>0&&(s|=u),n+=r.encode(s);while(f>0);return n},n.decode=function(t,n,s){var a=t.length,l=0,c=0,h,p;do{if(n>=a)throw new Error("Expected more digits in base 64 VLQ value.");p=r.decode(t.charCodeAt(n++));if(p===-1)throw new Error("Invalid base64 digit: "+t.charAt(n-1));h=!!(p&u),p&=o,l+=p<<c,c+=i}while(h);s.value=f(l),s.rest=n}},{"./base64":122}],122:[function(e,t,n){var r="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".split("");n.encode=function(e){if(0<=e&&e<r.length)return r[e];throw new TypeError("Must be between 0 and 63: "+e)},n.decode=function(e){var t=65,n=90,r=97,i=122,s=48,o=57,u=43,a=47,f=26,l=52;return t<=e&&e<=n?e-t:r<=e&&e<=i?e-r+f:s<=e&&e<=o?e-s+l:e==u?62:e==a?63:-1}},{}],123:[function(e,t,n){function r(e,t,i,s,o,u){var a=Math.floor((t-e)/2)+e,f=o(i,s[a],!0);return f===0?a:f>0?t-a>1?r(a,t,i,s,o,u):u==n.LEAST_UPPER_BOUND?t<s.length?t:-1:a:a-e>1?r(e,a,i,s,o,u):u==n.LEAST_UPPER_BOUND?a:e<0?-1:e}n.GREATEST_LOWER_BOUND=1,n.LEAST_UPPER_BOUND=2,n.search=function(t,i,s,o){if(i.length===0)return-1;var u=r(-1,i.length,t,i,s,o||n.GREATEST_LOWER_BOUND);if(u<0)return-1;while(u-1>=0){if(s(i[u],i[u-1],!0)!==0)break;--u}return u}},{}],124:[function(e,t,n){function i(e,t){var n=e.generatedLine,i=t.generatedLine,s=e.generatedColumn,o=t.generatedColumn;return i>n||i==n&&o>=s||r.compareByGeneratedPositionsInflated(e,t)<=0}function s(){this._array=[],this._sorted=!0,this._last={generatedLine:-1,generatedColumn:0}}var r=e("./util");s.prototype.unsortedForEach=function(t,n){this._array.forEach(t,n)},s.prototype.add=function(t){i(this._last,t)?(this._last=t,this._array.push(t)):(this._sorted=!1,this._array.push(t))},s.prototype.toArray=function(){return this._sorted||(this._array.sort(r.compareByGeneratedPositionsInflated),this._sorted=!0),this._array},n.MappingList=s},{"./util":129}],125:[function(e,t,n){function r(e,t,n){var r=e[t];e[t]=e[n],e[n]=r}function i(e,t){return Math.round(e+Math.random()*(t-e))}function s(e,t,n,o){if(n<o){var u=i(n,o),a=n-1;r(e,u,o);var f=e[o];for(var l=n;l<o;l++)t(e[l],f)<=0&&(a+=1,r(e,a,l));r(e,a+1,l);var c=a+1;s(e,t,n,c-1),s(e,t,c+1,o)}}n.quickSort=function(e,t){s(e,t,0,e.length-1)}},{}],126:[function(e,t,n){function a(e){var t=e;return typeof e=="string"&&(t=JSON.parse(e.replace(/^\)\]\}'/,""))),t.sections!=null?new c(t):new f(t)}function f(e){var t=e;typeof e=="string"&&(t=JSON.parse(e.replace(/^\)\]\}'/,"")));var n=r.getArg(t,"version"),i=r.getArg(t,"sources"),o=r.getArg(t,"names",[]),u=r.getArg(t,"sourceRoot",null),a=r.getArg(t,"sourcesContent",null),f=r.getArg(t,"mappings"),l=r.getArg(t,"file",null);if(n!=this._version)throw new Error("Unsupported version: "+n);i=i.map(String).map(r.normalize).map(function(e){return u&&r.isAbsolute(u)&&r.isAbsolute(e)?r.relative(u,e):e}),this._names=s.fromArray(o.map(String),!0),this._sources=s.fromArray(i,!0),this.sourceRoot=u,this.sourcesContent=a,this._mappings=f,this.file=l}function l(){this.generatedLine=0,this.generatedColumn=0,this.source=null,this.originalLine=null,this.originalColumn=null,this.name=null}function c(e){var t=e;typeof e=="string"&&(t=JSON.parse(e.replace(/^\)\]\}'/,"")));var n=r.getArg(t,"version"),i=r.getArg(t,"sections");if(n!=this._version)throw new Error("Unsupported version: "+n);this._sources=new s,this._names=new s;var o={line:-1,column:0};this._sections=i.map(function(e){if(e.url)throw new Error("Support for url field in sections not implemented.");var t=r.getArg(e,"offset"),n=r.getArg(t,"line"),i=r.getArg(t,"column");if(n<o.line||n===o.line&&i<o.column)throw new Error("Section offsets must be ordered and non-overlapping.");return o=t,{generatedOffset:{generatedLine:n+1,generatedColumn:i+1},consumer:new a(r.getArg(e,"map"))}})}var r=e("./util"),i=e("./binary-search"),s=e("./array-set").ArraySet,o=e("./base64-vlq"),u=e("./quick-sort").quickSort;a.fromSourceMap=function(e){return f.fromSourceMap(e)},a.prototype._version=3,a.prototype.__generatedMappings=null,Object.defineProperty(a.prototype,"_generatedMappings",{get:function(){return this.__generatedMappings||this._parseMappings(this._mappings,this.sourceRoot),this.__generatedMappings}}),a.prototype.__originalMappings=null,Object.defineProperty(a.prototype,"_originalMappings",{get:function(){return this.__originalMappings||this._parseMappings(this._mappings,this.sourceRoot),this.__originalMappings}}),a.prototype._charIsMappingSeparator=function(t,n){var r=t.charAt(n);return r===";"||r===","},a.prototype._parseMappings=function(t,n){throw new Error("Subclasses must implement _parseMappings")},a.GENERATED_ORDER=1,a.ORIGINAL_ORDER=2,a.GREATEST_LOWER_BOUND=1,a.LEAST_UPPER_BOUND=2,a.prototype.eachMapping=function(t,n,i){var s=n||null,o=i||a.GENERATED_ORDER,u;switch(o){case a.GENERATED_ORDER:u=this._generatedMappings;break;case a.ORIGINAL_ORDER:u=this._originalMappings;break;default:throw new Error("Unknown order of iteration.")}var f=this.sourceRoot;u.map(function(e){var t=e.source===null?null:this._sources.at(e.source);return t!=null&&f!=null&&(t=r.join(f,t)),{source:t,generatedLine:e.generatedLine,generatedColumn:e.generatedColumn,originalLine:e.originalLine,originalColumn:e.originalColumn,name:e.name===null?null:this._names.at(e.name)}},this).forEach(t,s)},a.prototype.allGeneratedPositionsFor=function(t){var n=r.getArg(t,"line"),s={source:r.getArg(t,"source"),originalLine:n,originalColumn:r.getArg(t,"column",0)};this.sourceRoot!=null&&(s.source=r.relative(this.sourceRoot,s.source));if(!this._sources.has(s.source))return[];s.source=this._sources.indexOf(s.source);var o=[],u=this._findMapping(s,this._originalMappings,"originalLine","originalColumn",r.compareByOriginalPositions,i.LEAST_UPPER_BOUND);if(u>=0){var a=this._originalMappings[u];if(t.column===undefined){var f=a.originalLine;while(a&&a.originalLine===f)o.push({line:r.getArg(a,"generatedLine",null),column:r.getArg(a,"generatedColumn",null),lastColumn:r.getArg(a,"lastGeneratedColumn",null)}),a=this._originalMappings[++u]}else{var l=a.originalColumn;while(a&&a.originalLine===n&&a.originalColumn==l)o.push({line:r.getArg(a,"generatedLine",null),column:r.getArg(a,"generatedColumn",null),lastColumn:r.getArg(a,"lastGeneratedColumn",null)}),a=this._originalMappings[++u]}}return o},n.SourceMapConsumer=a,f.prototype=Object.create(a.prototype),f.prototype.consumer=a,f.fromSourceMap=function(t){var n=Object.create(f.prototype),i=n._names=s.fromArray(t._names.toArray(),!0),o=n._sources=s.fromArray(t._sources.toArray(),!0);n.sourceRoot=t._sourceRoot,n.sourcesContent=t._generateSourcesContent(n._sources.toArray(),n.sourceRoot),n.file=t._file;var a=t._mappings.toArray().slice(),c=n.__generatedMappings=[],h=n.__originalMappings=[];for(var p=0,d=a.length;p<d;p++){var v=a[p],m=new l;m.generatedLine=v.generatedLine,m.generatedColumn=v.generatedColumn,v.source&&(m.source=o.indexOf(v.source),m.originalLine=v.originalLine,m.originalColumn=v.originalColumn,v.name&&(m.name=i.indexOf(v.name)),h.push(m)),c.push(m)}return u(n.__originalMappings,r.compareByOriginalPositions),n},f.prototype._version=3,Object.defineProperty(f.prototype,"sources",{get:function(){return this._sources.toArray().map(function(e){return this.sourceRoot!=null?r.join(this.sourceRoot,e):e},this)}}),f.prototype._parseMappings=function(t,n){var i=1,s=0,a=0,f=0,c=0,h=0,p=t.length,d=0,v={},m={},g=[],y=[],b,w,E,S,x;while(d<p)if(t.charAt(d)===";")i++,d++,s=0;else if(t.charAt(d)===",")d++;else{b=new l,b.generatedLine=i;for(S=d;S<p;S++)if(this._charIsMappingSeparator(t,S))break;w=t.slice(d,S),E=v[w];if(E)d+=w.length;else{E=[];while(d<S)o.decode(t,d,m),x=m.value,d=m.rest,E.push(x);if(E.length===2)throw new Error("Found a source, but no line and column");if(E.length===3)throw new Error("Found a source and line, but no column");v[w]=E}b.generatedColumn=s+E[0],s=b.generatedColumn,E.length>1&&(b.source=c+E[1],c+=E[1],b.originalLine=a+E[2],a=b.originalLine,b.originalLine+=1,b.originalColumn=f+E[3],f=b.originalColumn,E.length>4&&(b.name=h+E[4],h+=E[4])),y.push(b),typeof b.originalLine=="number"&&g.push(b)}u(y,r.compareByGeneratedPositionsDeflated),this.__generatedMappings=y,u(g,r.compareByOriginalPositions),this.__originalMappings=g},f.prototype._findMapping=function(t,n,r,s,o,u){if(t[r]<=0)throw new TypeError("Line must be greater than or equal to 1, got "+t[r]);if(t[s]<0)throw new TypeError("Column must be greater than or equal to 0, got "+t[s]);return i.search(t,n,o,u)},f.prototype.computeColumnSpans=function(){for(var t=0;t<this._generatedMappings.length;++t){var n=this._generatedMappings[t];if(t+1<this._generatedMappings.length){var r=this._generatedMappings[t+1];if(n.generatedLine===r.generatedLine){n.lastGeneratedColumn=r.generatedColumn-1;continue}}n.lastGeneratedColumn=Infinity}},f.prototype.originalPositionFor=function(t){var n={generatedLine:r.getArg(t,"line"),generatedColumn:r.getArg(t,"column")},i=this._findMapping(n,this._generatedMappings,"generatedLine","generatedColumn",r.compareByGeneratedPositionsDeflated,r.getArg(t,"bias",a.GREATEST_LOWER_BOUND));if(i>=0){var s=this._generatedMappings[i];if(s.generatedLine===n.generatedLine){var o=r.getArg(s,"source",null);o!==null&&(o=this._sources.at(o),this.sourceRoot!=null&&(o=r.join(this.sourceRoot,o)));var u=r.getArg(s,"name",null);return u!==null&&(u=this._names.at(u)),{source:o,line:r.getArg(s,"originalLine",null),column:r.getArg(s,"originalColumn",null),name:u}}}return{source:null,line:null,column:null,name:null}},f.prototype.hasContentsOfAllSources=function(){return this.sourcesContent?this.sourcesContent.length>=this._sources.size()&&!this.sourcesContent.some(function(e){return e==null}):!1},f.prototype.sourceContentFor=function(t,n){if(!this.sourcesContent)return null;this.sourceRoot!=null&&(t=r.relative(this.sourceRoot,t));if(this._sources.has(t))return this.sourcesContent[this._sources.indexOf(t)];var i;if(this.sourceRoot!=null&&(i=r.urlParse(this.sourceRoot))){var s=t.replace(/^file:\/\//,"");if(i.scheme=="file"&&this._sources.has(s))return this.sourcesContent[this._sources.indexOf(s)];if((!i.path||i.path=="/")&&this._sources.has("/"+t))return this.sourcesContent[this._sources.indexOf("/"+t)]}if(n)return null;throw new Error('"'+t+'" is not in the SourceMap.')},f.prototype.generatedPositionFor=function(t){var n=r.getArg(t,"source");this.sourceRoot!=null&&(n=r.relative(this.sourceRoot,n));if(!this._sources.has(n))return{line:null,column:null,lastColumn:null};n=this._sources.indexOf(n);var i={source:n,originalLine:r.getArg(t,"line"),originalColumn:r.getArg(t,"column")},s=this._findMapping(i,this._originalMappings,"originalLine","originalColumn",r.compareByOriginalPositions,r.getArg(t,"bias",a.GREATEST_LOWER_BOUND));if(s>=0){var o=this._originalMappings[s];if(o.source===i.source)return{line:r.getArg(o,"generatedLine",null),column:r.getArg(o,"generatedColumn",null),lastColumn:r.getArg(o,"lastGeneratedColumn",null)}}return{line:null,column:null,lastColumn:null}},n.BasicSourceMapConsumer=f,c.prototype=Object.create(a.prototype),c.prototype.constructor=a,c.prototype._version=3,Object.defineProperty(c.prototype,"sources",{get:function(){var e=[];for(var t=0;t<this._sections.length;t++)for(var n=0;n<this._sections[t].consumer.sources.length;n++)e.push(this._sections[t].consumer.sources[n]);return e}}),c.prototype.originalPositionFor=function(t){var n={generatedLine:r.getArg(t,"line"),generatedColumn:r.getArg(t,"column")},s=i.search(n,this._sections,function(e,t){var n=e.generatedLine-t.generatedOffset.generatedLine;return n?n:e.generatedColumn-t.generatedOffset.generatedColumn}),o=this._sections[s];return o?o.consumer.originalPositionFor({line:n.generatedLine-(o.generatedOffset.generatedLine-1),column:n.generatedColumn-(o.generatedOffset.generatedLine===
n.generatedLine?o.generatedOffset.generatedColumn-1:0),bias:t.bias}):{source:null,line:null,column:null,name:null}},c.prototype.hasContentsOfAllSources=function(){return this._sections.every(function(e){return e.consumer.hasContentsOfAllSources()})},c.prototype.sourceContentFor=function(t,n){for(var r=0;r<this._sections.length;r++){var i=this._sections[r],s=i.consumer.sourceContentFor(t,!0);if(s)return s}if(n)return null;throw new Error('"'+t+'" is not in the SourceMap.')},c.prototype.generatedPositionFor=function(t){for(var n=0;n<this._sections.length;n++){var i=this._sections[n];if(i.consumer.sources.indexOf(r.getArg(t,"source"))===-1)continue;var s=i.consumer.generatedPositionFor(t);if(s){var o={line:s.line+(i.generatedOffset.generatedLine-1),column:s.column+(i.generatedOffset.generatedLine===s.line?i.generatedOffset.generatedColumn-1:0)};return o}}return{line:null,column:null}},c.prototype._parseMappings=function(t,n){this.__generatedMappings=[],this.__originalMappings=[];for(var i=0;i<this._sections.length;i++){var s=this._sections[i],o=s.consumer._generatedMappings;for(var a=0;a<o.length;a++){var f=o[a],l=s.consumer._sources.at(f.source);s.consumer.sourceRoot!==null&&(l=r.join(s.consumer.sourceRoot,l)),this._sources.add(l),l=this._sources.indexOf(l);var c=s.consumer._names.at(f.name);this._names.add(c),c=this._names.indexOf(c);var h={source:l,generatedLine:f.generatedLine+(s.generatedOffset.generatedLine-1),generatedColumn:f.generatedColumn+(s.generatedOffset.generatedLine===f.generatedLine?s.generatedOffset.generatedColumn-1:0),originalLine:f.originalLine,originalColumn:f.originalColumn,name:c};this.__generatedMappings.push(h),typeof h.originalLine=="number"&&this.__originalMappings.push(h)}}u(this.__generatedMappings,r.compareByGeneratedPositionsDeflated),u(this.__originalMappings,r.compareByOriginalPositions)},n.IndexedSourceMapConsumer=c},{"./array-set":120,"./base64-vlq":121,"./binary-search":123,"./quick-sort":125,"./util":129}],127:[function(e,t,n){function u(e){e||(e={}),this._file=i.getArg(e,"file",null),this._sourceRoot=i.getArg(e,"sourceRoot",null),this._skipValidation=i.getArg(e,"skipValidation",!1),this._sources=new s,this._names=new s,this._mappings=new o,this._sourcesContents=null}var r=e("./base64-vlq"),i=e("./util"),s=e("./array-set").ArraySet,o=e("./mapping-list").MappingList;u.prototype._version=3,u.fromSourceMap=function(t){var n=t.sourceRoot,r=new u({file:t.file,sourceRoot:n});return t.eachMapping(function(e){var t={generated:{line:e.generatedLine,column:e.generatedColumn}};e.source!=null&&(t.source=e.source,n!=null&&(t.source=i.relative(n,t.source)),t.original={line:e.originalLine,column:e.originalColumn},e.name!=null&&(t.name=e.name)),r.addMapping(t)}),t.sources.forEach(function(e){var n=t.sourceContentFor(e);n!=null&&r.setSourceContent(e,n)}),r},u.prototype.addMapping=function(t){var n=i.getArg(t,"generated"),r=i.getArg(t,"original",null),s=i.getArg(t,"source",null),o=i.getArg(t,"name",null);this._skipValidation||this._validateMapping(n,r,s,o),s!=null&&(s=String(s),this._sources.has(s)||this._sources.add(s)),o!=null&&(o=String(o),this._names.has(o)||this._names.add(o)),this._mappings.add({generatedLine:n.line,generatedColumn:n.column,originalLine:r!=null&&r.line,originalColumn:r!=null&&r.column,source:s,name:o})},u.prototype.setSourceContent=function(t,n){var r=t;this._sourceRoot!=null&&(r=i.relative(this._sourceRoot,r)),n!=null?(this._sourcesContents||(this._sourcesContents=Object.create(null)),this._sourcesContents[i.toSetString(r)]=n):this._sourcesContents&&(delete this._sourcesContents[i.toSetString(r)],Object.keys(this._sourcesContents).length===0&&(this._sourcesContents=null))},u.prototype.applySourceMap=function(t,n,r){var o=n;if(n==null){if(t.file==null)throw new Error('SourceMapGenerator.prototype.applySourceMap requires either an explicit source file, or the source map\'s "file" property. Both were omitted.');o=t.file}var u=this._sourceRoot;u!=null&&(o=i.relative(u,o));var a=new s,f=new s;this._mappings.unsortedForEach(function(e){if(e.source===o&&e.originalLine!=null){var n=t.originalPositionFor({line:e.originalLine,column:e.originalColumn});n.source!=null&&(e.source=n.source,r!=null&&(e.source=i.join(r,e.source)),u!=null&&(e.source=i.relative(u,e.source)),e.originalLine=n.line,e.originalColumn=n.column,n.name!=null&&(e.name=n.name))}var s=e.source;s!=null&&!a.has(s)&&a.add(s);var l=e.name;l!=null&&!f.has(l)&&f.add(l)},this),this._sources=a,this._names=f,t.sources.forEach(function(e){var n=t.sourceContentFor(e);n!=null&&(r!=null&&(e=i.join(r,e)),u!=null&&(e=i.relative(u,e)),this.setSourceContent(e,n))},this)},u.prototype._validateMapping=function(t,n,r,i){if(n&&typeof n.line!="number"&&typeof n.column!="number")throw new Error("original.line and original.column are not numbers -- you probably meant to omit the original mapping entirely and only map the generated position. If so, pass null for the original mapping instead of an object with empty or null values.");if(t&&"line"in t&&"column"in t&&t.line>0&&t.column>=0&&!n&&!r&&!i)return;if(t&&"line"in t&&"column"in t&&n&&"line"in n&&"column"in n&&t.line>0&&t.column>=0&&n.line>0&&n.column>=0&&r)return;throw new Error("Invalid mapping: "+JSON.stringify({generated:t,source:r,original:n,name:i}))},u.prototype._serializeMappings=function(){var t=0,n=1,s=0,o=0,u=0,a=0,f="",l,c,h,p,d=this._mappings.toArray();for(var v=0,m=d.length;v<m;v++){c=d[v],l="";if(c.generatedLine!==n){t=0;while(c.generatedLine!==n)l+=";",n++}else if(v>0){if(!i.compareByGeneratedPositionsInflated(c,d[v-1]))continue;l+=","}l+=r.encode(c.generatedColumn-t),t=c.generatedColumn,c.source!=null&&(p=this._sources.indexOf(c.source),l+=r.encode(p-a),a=p,l+=r.encode(c.originalLine-1-o),o=c.originalLine-1,l+=r.encode(c.originalColumn-s),s=c.originalColumn,c.name!=null&&(h=this._names.indexOf(c.name),l+=r.encode(h-u),u=h)),f+=l}return f},u.prototype._generateSourcesContent=function(t,n){return t.map(function(e){if(!this._sourcesContents)return null;n!=null&&(e=i.relative(n,e));var t=i.toSetString(e);return Object.prototype.hasOwnProperty.call(this._sourcesContents,t)?this._sourcesContents[t]:null},this)},u.prototype.toJSON=function(){var t={version:this._version,sources:this._sources.toArray(),names:this._names.toArray(),mappings:this._serializeMappings()};return this._file!=null&&(t.file=this._file),this._sourceRoot!=null&&(t.sourceRoot=this._sourceRoot),this._sourcesContents&&(t.sourcesContent=this._generateSourcesContent(t.sources,t.sourceRoot)),t},u.prototype.toString=function(){return JSON.stringify(this.toJSON())},n.SourceMapGenerator=u},{"./array-set":120,"./base64-vlq":121,"./mapping-list":124,"./util":129}],128:[function(e,t,n){function a(e,t,n,r,i){this.children=[],this.sourceContents={},this.line=e==null?null:e,this.column=t==null?null:t,this.source=n==null?null:n,this.name=i==null?null:i,this[u]=!0,r!=null&&this.add(r)}var r=e("./source-map-generator").SourceMapGenerator,i=e("./util"),s=/(\r?\n)/,o=10,u="$$$isSourceNode$$$";a.fromStringWithSourceMap=function(t,n,r){function d(e,t){if(e===null||e.source===undefined)o.add(t);else{var n=r?i.join(r,e.source):e.source;o.add(new a(e.originalLine,e.originalColumn,n,t,e.name))}}var o=new a,u=t.split(s),f=0,l=function(){function n(){return f<u.length?u[f++]:undefined}var e=n(),t=n()||"";return e+t},c=1,h=0,p=null;return n.eachMapping(function(e){if(p!==null){if(!(c<e.generatedLine)){var t=u[f],n=t.substr(0,e.generatedColumn-h);u[f]=t.substr(e.generatedColumn-h),h=e.generatedColumn,d(p,n),p=e;return}d(p,l()),c++,h=0}while(c<e.generatedLine)o.add(l()),c++;if(h<e.generatedColumn){var t=u[f];o.add(t.substr(0,e.generatedColumn)),u[f]=t.substr(e.generatedColumn),h=e.generatedColumn}p=e},this),f<u.length&&(p&&d(p,l()),o.add(u.splice(f).join(""))),n.sources.forEach(function(e){var t=n.sourceContentFor(e);t!=null&&(r!=null&&(e=i.join(r,e)),o.setSourceContent(e,t))}),o},a.prototype.add=function(t){if(Array.isArray(t))t.forEach(function(e){this.add(e)},this);else{if(!t[u]&&typeof t!="string")throw new TypeError("Expected a SourceNode, string, or an array of SourceNodes and strings. Got "+t);t&&this.children.push(t)}return this},a.prototype.prepend=function(t){if(Array.isArray(t))for(var n=t.length-1;n>=0;n--)this.prepend(t[n]);else{if(!t[u]&&typeof t!="string")throw new TypeError("Expected a SourceNode, string, or an array of SourceNodes and strings. Got "+t);this.children.unshift(t)}return this},a.prototype.walk=function(t){var n;for(var r=0,i=this.children.length;r<i;r++)n=this.children[r],n[u]?n.walk(t):n!==""&&t(n,{source:this.source,line:this.line,column:this.column,name:this.name})},a.prototype.join=function(t){var n,r,i=this.children.length;if(i>0){n=[];for(r=0;r<i-1;r++)n.push(this.children[r]),n.push(t);n.push(this.children[r]),this.children=n}return this},a.prototype.replaceRight=function(t,n){var r=this.children[this.children.length-1];return r[u]?r.replaceRight(t,n):typeof r=="string"?this.children[this.children.length-1]=r.replace(t,n):this.children.push("".replace(t,n)),this},a.prototype.setSourceContent=function(t,n){this.sourceContents[i.toSetString(t)]=n},a.prototype.walkSourceContents=function(t){for(var n=0,r=this.children.length;n<r;n++)this.children[n][u]&&this.children[n].walkSourceContents(t);var s=Object.keys(this.sourceContents);for(var n=0,r=s.length;n<r;n++)t(i.fromSetString(s[n]),this.sourceContents[s[n]])},a.prototype.toString=function(){var t="";return this.walk(function(e){t+=e}),t},a.prototype.toStringWithSourceMap=function(t){var n={code:"",line:1,column:0},i=new r(t),s=!1,u=null,a=null,f=null,l=null;return this.walk(function(e,t){n.code+=e,t.source!==null&&t.line!==null&&t.column!==null?((u!==t.source||a!==t.line||f!==t.column||l!==t.name)&&i.addMapping({source:t.source,original:{line:t.line,column:t.column},generated:{line:n.line,column:n.column},name:t.name}),u=t.source,a=t.line,f=t.column,l=t.name,s=!0):s&&(i.addMapping({generated:{line:n.line,column:n.column}}),u=null,s=!1);for(var r=0,c=e.length;r<c;r++)e.charCodeAt(r)===o?(n.line++,n.column=0,r+1===c?(u=null,s=!1):s&&i.addMapping({source:t.source,original:{line:t.line,column:t.column},generated:{line:n.line,column:n.column},name:t.name})):n.column++}),this.walkSourceContents(function(e,t){i.setSourceContent(e,t)}),{code:n.code,map:i}},n.SourceNode=a},{"./source-map-generator":127,"./util":129}],129:[function(e,t,n){function r(e,t,n){if(t in e)return e[t];if(arguments.length===3)return n;throw new Error('"'+t+'" is a required argument.')}function o(e){var t=e.match(i);return t?{scheme:t[1],auth:t[2],host:t[3],port:t[4],path:t[5]}:null}function u(e){var t="";return e.scheme&&(t+=e.scheme+":"),t+="//",e.auth&&(t+=e.auth+"@"),e.host&&(t+=e.host),e.port&&(t+=":"+e.port),e.path&&(t+=e.path),t}function a(e){var t=e,r=o(e);if(r){if(!r.path)return e;t=r.path}var i=n.isAbsolute(t),s=t.split(/\/+/);for(var a,f=0,l=s.length-1;l>=0;l--)a=s[l],a==="."?s.splice(l,1):a===".."?f++:f>0&&(a===""?(s.splice(l+1,f),f=0):(s.splice(l,2),f--));return t=s.join("/"),t===""&&(t=i?"/":"."),r?(r.path=t,u(r)):t}function f(e,t){e===""&&(e="."),t===""&&(t=".");var n=o(t),r=o(e);r&&(e=r.path||"/");if(n&&!n.scheme)return r&&(n.scheme=r.scheme),u(n);if(n||t.match(s))return t;if(r&&!r.host&&!r.path)return r.host=t,u(r);var i=t.charAt(0)==="/"?t:a(e.replace(/\/+$/,"")+"/"+t);return r?(r.path=i,u(r)):i}function l(e,t){e===""&&(e="."),e=e.replace(/\/$/,"");var n=0;while(t.indexOf(e+"/")!==0){var r=e.lastIndexOf("/");if(r<0)return t;e=e.slice(0,r);if(e.match(/^([^\/]+:\/)?\/*$/))return t;++n}return Array(n+1).join("../")+t.substr(e.length+1)}function h(e){return e}function p(e){return v(e)?"$"+e:e}function d(e){return v(e)?e.slice(1):e}function v(e){if(!e)return!1;var t=e.length;if(t<9)return!1;if(e.charCodeAt(t-1)!==95||e.charCodeAt(t-2)!==95||e.charCodeAt(t-3)!==111||e.charCodeAt(t-4)!==116||e.charCodeAt(t-5)!==111||e.charCodeAt(t-6)!==114||e.charCodeAt(t-7)!==112||e.charCodeAt(t-8)!==95||e.charCodeAt(t-9)!==95)return!1;for(var n=t-10;n>=0;n--)if(e.charCodeAt(n)!==36)return!1;return!0}function m(e,t,n){var r=e.source-t.source;return r!==0?r:(r=e.originalLine-t.originalLine,r!==0?r:(r=e.originalColumn-t.originalColumn,r!==0||n?r:(r=e.generatedColumn-t.generatedColumn,r!==0?r:(r=e.generatedLine-t.generatedLine,r!==0?r:e.name-t.name))))}function g(e,t,n){var r=e.generatedLine-t.generatedLine;return r!==0?r:(r=e.generatedColumn-t.generatedColumn,r!==0||n?r:(r=e.source-t.source,r!==0?r:(r=e.originalLine-t.originalLine,r!==0?r:(r=e.originalColumn-t.originalColumn,r!==0?r:e.name-t.name))))}function y(e,t){return e===t?0:e>t?1:-1}function b(e,t){var n=e.generatedLine-t.generatedLine;return n!==0?n:(n=e.generatedColumn-t.generatedColumn,n!==0?n:(n=y(e.source,t.source),n!==0?n:(n=e.originalLine-t.originalLine,n!==0?n:(n=e.originalColumn-t.originalColumn,n!==0?n:y(e.name,t.name)))))}n.getArg=r;var i=/^(?:([\w+\-.]+):)?\/\/(?:(\w+:\w+)@)?([\w.]*)(?::(\d+))?(\S*)$/,s=/^data:.+\,.+$/;n.urlParse=o,n.urlGenerate=u,n.normalize=a,n.join=f,n.isAbsolute=function(e){return e.charAt(0)==="/"||!!e.match(i)},n.relative=l;var c=function(){var e=Object.create(null);return!("__proto__"in e)}();n.toSetString=c?h:p,n.fromSetString=c?h:d,n.compareByOriginalPositions=m,n.compareByGeneratedPositionsDeflated=g,n.compareByGeneratedPositionsInflated=b},{}],130:[function(e,t,n){n.SourceMapGenerator=e("./lib/source-map-generator").SourceMapGenerator,n.SourceMapConsumer=e("./lib/source-map-consumer").SourceMapConsumer,n.SourceNode=e("./lib/source-node").SourceNode},{"./lib/source-map-consumer":126,"./lib/source-map-generator":127,"./lib/source-node":128}],131:[function(e,t,n){"use strict";t.exports=!1},{}],132:[function(e,t,n){t.exports={_args:[[{raw:"turbo-carto@0.19.0",scope:null,escapedName:"turbo-carto",name:"turbo-carto",rawSpec:"0.19.0",spec:"0.19.0",type:"version"},"/Users/ruben/Projects/Carto/torque"]],_from:"turbo-carto@0.19.0",_id:"turbo-carto@0.19.0",_inCache:!0,_location:"/turbo-carto",_nodeVersion:"0.10.43",_npmOperationalInternal:{host:"packages-18-east.internal.npmjs.com",tmp:"tmp/turbo-carto-0.19.0.tgz_1481553795718_0.1705001255031675"},_npmUser:{name:"xavijam",email:"xavijam@gmail.com"},_npmVersion:"2.14.20",_phantomChildren:{},_requested:{raw:"turbo-carto@0.19.0",scope:null,escapedName:"turbo-carto",name:"turbo-carto",rawSpec:"0.19.0",spec:"0.19.0",type:"version"},_requiredBy:["/"],_resolved:"http://registry.npmjs.org/turbo-carto/-/turbo-carto-0.19.0.tgz",_shasum:"83fb1932acd42acb426312eef216b5f6ac34708e",_shrinkwrap:null,_spec:"turbo-carto@0.19.0",_where:"/Users/ruben/Projects/Carto/torque",author:{name:"CartoDB",email:"wadus@cartodb.com",url:"http://cartodb.com/"},bugs:{url:"https://github.com/CartoDB/turbo-carto/issues"},contributors:[{name:"Raul Ochoa",email:"rochoa@cartodb.com"}],dependencies:{cartocolor:"4.0.0",colorbrewer:"1.0.0",debug:"2.2.0","es6-promise":"3.1.2",postcss:"5.0.19","postcss-value-parser":"3.3.0"},description:"CartoCSS preprocessor",devDependencies:{"browser-request":"^0.3.3",browserify:"^12.0.1",istanbul:"^0.4.1",jshint:"^2.9.1-rc2",mocha:"^2.3.4",querystring:"^0.2.0",request:"^2.67.0",semistandard:"^7.0.4","semistandard-format":"^2.1.0",yargs:"^3.31.0"},directories:{},dist:{shasum:"83fb1932acd42acb426312eef216b5f6ac34708e",tarball:"https://registry.npmjs.org/turbo-carto/-/turbo-carto-0.19.0.tgz"},gitHead:"e4bb6dddbdb5275dd2ba5ca0922c831690c40797",homepage:"https://github.com/CartoDB/turbo-carto#readme",license:"BSD-3-Clause",main:"src/index.js",maintainers:[{name:"cartodb",email:"npm@cartodb.com"},{name:"dgaubert",email:"danielgarciaaubert@gmail.com"},{name:"xavijam",email:"xavijam@gmail.com"}],name:"turbo-carto",optionalDependencies:{},readme:"ERROR: No README data found!",repository:{type:"git",url:"git+ssh://git@github.com/CartoDB/turbo-carto.git"},scripts:{test:"make test-all"},semistandard:{globals:["describe","it"],ignore:["examples/app.js"]},version:"0.19.0"}},{}],133:[function(e,t,n){"use strict";function i(e){this.datasource=e,this.fnExecutors=[]}function s(e,t,n,i){var o=[];return Array.isArray(e.nodes)&&(o=e.nodes.reduce(function(e,r){switch(r.type){case"word":Number.isFinite(+r.value)?e.push(+r.value):e.push(r.value);break;case"string":e.push(r.value);break;case"function":e.push(s(r,t,n,i));break;default:}return e},[])),new r(t,e.value,o,n,i)}e("es6-promise").polyfill();var r=e("./executor");t.exports=i,i.prototype.add=function(e,t,n){this.fnExecutors.push({decl:e,fnExecutor:s(t,this.datasource,e,n)})},i.prototype.exec=function(){var e=this.fnExecutors.map(function(e){return e.fnExecutor.exec()});return Promise.all(e)}},{"./executor":134,"es6-promise":82}],134:[function(e,t,n){"use strict";function s(e,t,n,r,i){this.datasource=e,this.fnName=t,this.args=n,this.decl=r,this.metadataHolder=i}e("es6-promise").polyfill();var r=e("../helper/debug")("fn-executor"),i=e("./factory");t.exports=s,s.prototype.exec=function(){var e=this;r("[ENTERING] Fn.prototype.exec %s(%j)",e.fnName,e.args);var t=i.create(e.fnName,e.datasource,e.decl,e.metadataHolder);return Promise.all(e.getNestedFns()).then(function(n){return r("[QUEUE DONE] %s=%j",e.fnName,n),n.forEach(function(t){e.args[t.index]=t.result}),t.apply(t,e.args)})},s.prototype.getNestedFns=function(){var e=this;return e.getNestedFnIndexes().map(function(t){return e.execFn(t)})},s.prototype.getNestedFnIndexes=function(){return this.args.reduce(function(e,t,n){return t instanceof s&&e.push(n),e},[])},s.prototype.execFn=function(e){return this.args[e].exec().then(function(t){return{index:e,result:t}})}},{"../helper/debug":149,"./factory":135,"es6-promise":82}],135:[function(e,t,n){"use strict";var r=[e("./fn-buckets"),e("./fn-buckets-category"),e("./fn-buckets-equal"),e("./fn-buckets-headtails"),e("./fn-buckets-jenks"),e("./fn-buckets-quantiles"),e("./fn-cartocolor"),e("./fn-colorbrewer"),e("./fn-ramp"),e("./fn-range")],i=r.reduce(function(e,t){return e[t.fnName]=t,e},{}),s=e("./fn-identity"),o=e("./fn-anonymous-tuple"),u={create:function(e,t,n,r){if(e==="")return o();var u=i[e];return u?u(t,n,r):s(e)}};t.exports=u},{"./fn-anonymous-tuple":136,"./fn-buckets":142,"./fn-buckets-category":137,"./fn-buckets-equal":138,"./fn-buckets-headtails":139,"./fn-buckets-jenks":140,"./fn-buckets-quantiles":141,"./fn-cartocolor":143,"./fn-colorbrewer":144,"./fn-identity":145,"./fn-ramp":146,"./fn-range":147}],136:[function(e,t,n){"use strict";e("es6-promise").polyfill();var r=e("../helper/debug")("fn-anonymous-tuple"),i=e("../model/values-result");t.exports=function(){return function(){r("fn$anonymousTuple(%j)",arguments);var t=arguments;return new Promise(function(e){var n=Object.keys(t).map(function(e){return t[e]});e(new i(n))})}},t.exports.fnName="anonymousTuple"},{"../helper/debug":149,"../model/values-result":159,"es6-promise":82}],137:[function(e,t,n){"use strict";var r=e("./fn-buckets").createBucketsFn,i="category";t.exports=function(e){return r(e,i,"==")},t.exports.fnName=i},{"./fn-buckets":142}],138:[function(e,t,n){"use strict";var r=e("./fn-buckets").createBucketsFn,i="equal";t.exports=function(e){return r(e,i,">")},t.exports.fnName=i},{"./fn-buckets":142}],139:[function(e,t,n){"use strict";var r=e("./fn-buckets").createBucketsFn,i="headtails";t.exports=function(e){return r(e,i,"<")},t.exports.fnName=i},{"./fn-buckets":142}],140:[function(e,t,n){"use strict";var r=e("./fn-buckets").createBucketsFn,i="jenks";t.exports=function(e){return r(e,i,">")},t.exports.fnName=i},{"./fn-buckets":142}],141:[function(e,t,n){"use strict";var r=e("./fn-buckets").createBucketsFn,i="quantiles";t.exports=function(e){return r(e,i,">")},t.exports.fnName=i},{"./fn-buckets":142}],142:[function(e,t,n){"use strict";function a(e){return function(n,u,a){return r("fn$buckets(%j)",arguments),r('Using "%s" datasource to calculate buckets',e.getName()),new Promise(function(t,r){if(!u)return r(new s("Missing quantification method in buckets function"));a=Number.isFinite(+a)?+a:5,e.getRamp(i(n),a,u,function(e,n){if(e)return r(new s("unable to compute ramp,",e));var i="max",u={};Array.isArray(n)||(i=n.strategy||"max",u=n.stats,n=n.ramp),t(new o(n,i,u))})})}}e("es6-promise").polyfill();var r=e("../helper/debug")("fn-buckets"),i=e("../helper/column-name"),s=e("../helper/turbo-carto-error"),o=e("../model/filters-result"),u=e("../model/lazy-filters-result");t.exports=a,t.exports.fnName="buckets",t.exports.createBucketsFn=function(e,t,n){return function(s){return r("fn$%s(%j)",t,arguments),r('Using "%s" datasource to calculate %s',e.getName(),t),new Promise(function(r){return r(new u(function(r,i){return a(e)(r,t,s).then(function(e){return e.strategy=i||n,new Promise(function(t){return t(e)})})}))})}}},{"../helper/column-name":148,"../helper/debug":149,"../helper/turbo-carto-error":152,"../model/filters-result":154,"../model/lazy-filters-result":156,"es6-promise":82}],143:[function(e,t,n){"use strict";e("es6-promise").polyfill();var r=e("cartocolor"),i=e("../model/values-result"),s=e("../helper/min-max-keys"),o=e("../helper/debug")("fn-cartocolor");t.exports=function(){return function(t,n){return o("fn$cartocolor(%j)",arguments),new Promise(function(e,o){if(!r.hasOwnProperty(t))return o(new Error('Invalid cartocolor scheme: "'+t+'"'));var u=r[t],a=s(u);n=Math.min(a.max,Math.max(a.min,n||5)),e(new i(u,n,null,a.max))})}},t.exports.fnName="cartocolor"},{"../helper/debug":149,"../helper/min-max-keys":151,"../model/values-result":159,cartocolor:76,"es6-promise":82}],144:[function(e,t,n){"use strict";e("es6-promise").polyfill();var r=e("colorbrewer"),i=e("../model/values-result"),s=e("../helper/min-max-keys"),o=e("../helper/debug")("fn-colorbrewer");t.exports=function(){return function(t,n){return o("fn$colorbrewer(%j)",arguments),new Promise(function(e,o){if(!r.hasOwnProperty(t))return o(new Error('Invalid colorbrewer scheme: "'+t+'"'));var u=r[t],a=s(u);n=Math.min(a.max,Math.max(a.min,n||5)),e(new i(u,n,null,a.max))})}},t.exports.fnName="colorbrewer"},{"../helper/debug":149,"../helper/min-max-keys":151,"../model/values-result":159,colorbrewer:78,"es6-promise":82}],145:[function(e,t,n){"use strict";e("es6-promise").polyfill();var r=e("../helper/debug")("fn-identity");t.exports=function(e){return function(){r("fn$identity(%j)",arguments);var n=new Array(arguments.length);for(var i=0;i<n.length;++i)typeof arguments[i]=="string"?n[i]="'"+arguments[i]+"'":n[i]=arguments[i];return Promise.resolve(e+"("+n.join(",")+")")}},t.exports.fnName="pass"},{"../helper/debug":149,"es6-promise":82}],146:[function(e,t,n){"use strict";function h(e){return function(n,r,i,s,o){var u=r.filter(p),l=r.filter(v(p)),h=u.slice(1);e==="="&&(l=l.slice(1).concat([r.filter(v(p))[0]])),h=h.filter(v(d));var m=new c(new a(l),new f(h,null,i),e);return m.process(n,s,o)}}function p(e,t){return t%2===0}function d(e){return e===null}function v(e,t){return function(){return!e.apply(t,arguments)}}function g(e,t,n){if(n.length===0)return Promise.reject(new s("invalid number of arguments"));if(Number.isFinite(n[0]))return E(e,t,n);if(!o(n[1]))return w(e,t,n);var r=n[0],i=n[1],u=n[2],c=b(u);return i=i.is(a)?new f(i.get(),c):i,i.is(l)?i.get(t,c).then(T(r)):Promise.resolve(i).then(T(r))}function b(e){return y.hasOwnProperty(e)?y[e]:e}function w(e,t,n){var r=n[0],i=(n[1]||"quantiles").toLowerCase(),s=r.getLength();return S(e,t,s,i).then(x(r))}function E(e,t,n){if(n.length<2)return Promise.reject(new s("invalid number of arguments"));var r=+n[0],i=+n[1],l,c=null,h;if(Number.isFinite(n[2])){l=n[2];if(o(n[3])){c=n[3],h=null;if(c.getLength()!==l)return Promise.reject(new s("invalid ramp length, got "+c.getLength()+" values, expected "+l))}else c=null,h=n[3]}else o(n[2])?(c=n[2],l=c.getLength(),h=null):(c=null,l=5,h=n[2]);var p=new a([r,i],l,u,Number.POSITIVE_INFINITY);return c===null?(h=(h||"quantiles").toLowerCase(),S(e,t,l,h).then(x(p))):(c=c.is(f)?c:new f(c.get(),"max"),Promise.resolve(c).then(x(p)))}function S(e,t,n,r){return new Promise(function(o,u){e.getRamp(i(t),n,r,function(e,t){if(e)return u(new s("unable to compute ramp,",e));var n="max",r={};Array.isArray(t)||(n=t.strategy||"max",r=t.stats,t=t.ramp),o(new f(t,n,r))})})}function x(e){return function(n){var r=Math.min(e.getLength(),n.getLength()),i,s=[],o=n.get(),u=e.get();if(r>0)for(i=0;i<r;i++)s.push(o[i]),s.push(u[i]);else s.push(null,u[0]);return{ramp:s,strategy:n.getStrategy(),stats:n.stats}}}function T(e){return function(n){if(c.supports(n.getStrategy()))return new c(e,n,n.getStrategy());var r=Math.min(e.getMaxSize(),n.getMaxSize()),i,s=[],o=n.get(),u=e.get(r);if(r>0)for(i=0;i<r;i++)s.push(o[i]),s.push(u[i]);else s.push(null,u[0]);return{ramp:s,strategy:n.getStrategy(),stats:n.stats}}}e("es6-promise").polyfill();var r=e("../helper/debug")("fn-ramp"),i=e("../helper/column-name"),s=e("../helper/turbo-carto-error"),o=e("../model/is-result"),u=e("../helper/linear-buckets"),a=e("../model/values-result"),f=e("../model/filters-result"),l=e("../model/lazy-filters-result"),c=e("../model/ramp/ramp-result"),m={max:function(t,n,r,i,s){var o=n.filter(v(p)),u=n.filter(p).filter(v(d)),l=new c(new a(o),new f(u,null,r),">");return l.process(t,i,s)},split:h(">"),exact:h("="),"=":h("=")};t.exports=function(e,t,n){return function(u,a){return r("fn$ramp(%j)",arguments),r('Using "%s" datasource to calculate ramp',e.getName()),a=Array.prototype.slice.call(arguments,1),g(e,u,a).then(function(e){if(e.constructor===c)return e.process(i(u),t,n);var r=m.hasOwnProperty(e.strategy)?m[e.strategy]:m.max;return r(i(u),e.ramp,e.stats,t,n)}).catch(function(e){var n={};throw t.parent&&(n.selector=t.parent.selector),t.source&&(n.source={start:t.source.start,end:t.source.end}),new s('Failed to process "'+t.prop+'" property:',e,n)})}};var y={quantiles:"max",equal:"max",jenks:"max",headtails:"split",category:"exact"};t.exports.fnName="ramp"},{"../helper/column-name":148,"../helper/debug":149,"../helper/linear-buckets":150,"../helper/turbo-carto-error":152,"../model/filters-result":154,"../model/is-result":155,"../model/lazy-filters-result":156,"../model/ramp/ramp-result":158,"../model/values-result":159,"es6-promise":82}],147:[function(e,t,n){"use strict";e("es6-promise").polyfill();var r=e("../model/values-result"),i=e("../helper/debug")("fn-range"),s=e("../helper/linear-buckets");t.exports=function(){return function(t,n,o){return i("fn$range(%j)",arguments),new Promise(function(e){var i=[t,n];o=Number.isFinite(o)?o:5,e(new r(i,o,s,Number.POSITIVE_INFINITY))})}},t.exports.fnName="range"},{"../helper/debug":149,"../helper/linear-buckets":150,"../model/values-result":159,"es6-promise":82}],148:[function(e,t,n){"use strict";function r(e){return e.replace("[","").replace("]","")}t.exports=r},{}],149:[function(e,t,n){"use strict";var r=e("debug");t.exports=function(t){return r(["turbo-carto",t].join(":"))}},{debug:80}],150:[function(e,t,n){"use strict";t.exports=function(e,t,n){Array.isArray(e)&&(n=t,t=e[1],e=e[0]);var r=[],i=t-e,s=i/(n-1);if(s===Number.POSITIVE_INFINITY||s===Number.NEGATIVE_INFINITY)s=0;for(var o=0;o<n;o++)r.push(e+o*s);return r}},{}],151:[function(e,t,n){"use strict";function r(e){return Object.keys(e).reduce(function(e,t){return Number.isFinite(+t)&&(e.min===null&&(e.min=+t),e.max===null&&(e.max=+t),e.max=Math.max(e.max,+t),e.min=Math.min(e.min,+t)),e},{min:null,max:null})}t.exports=r},{}],152:[function(e,t,n){"use strict";function r(e,t,n){Error.captureStackTrace(this,this.constructor),this.name=this.constructor.name,t&&(e+=" "+t.message),this.message=e,this.originalErr=t,this.context=n}e("util").inherits(r,Error),t.exports=r},{util:166}],153:[function(e,t,n){"use strict";function i(e,t,n){(new r(e,t)).getCartocss(n)}var r=e("./turbo-carto");t.exports=i,t.exports.TurboCarto=r,t.exports.version=e("../package.json").version},{"../package.json":132,"./turbo-carto":161}],154:[function(e,t,n){"use strict";function s(e,t,n){i.call(this,e,e.length),this.strategy=t,this.stats=n}function o(e){return!Number.isFinite(e)}var r=e("util"),i=e("./values-result");r.inherits(s,i),t.exports=s,s.prototype.getStrategy=function(){return this.result.some(o)?"=":this.strategy}},{"./values-result":159,util:166}],155:[function(e,t,n){"use strict";function o(e){return typeof e=="object"&&e!==null&&(e.constructor===r||e.constructor===i||e.constructor===s)}var r=e("./values-result"),i=e("./filters-result"),s=e("./lazy-filters-result");t.exports=o},{"./filters-result":154,"./lazy-filters-result":156,"./values-result":159}],156:[function(e,t,n){"use strict";function s(e){this.filterGenerator=e}e("es6-promise").polyfill();var r=e("util"),i=e("./filters-result");r.inherits(s,i),t.exports=s,s.prototype.get=function(e,t){return this.filterGenerator(e,t)}},{"./filters-result":154,"es6-promise":82,util:166}],157:[function(e,t,n){"use strict";function r(){this.rules=[]}t.exports=r,r.prototype.add=function(e){this.rules.push(e)}},{}],158:[function(e,t,n){"use strict";function s(e,t,n){this.values=e,this.filters=t,this.mapping=n||">",this.mapping=this.mapping==="=="?"=":this.mapping}function a(e){return e=e||{},{min:e.min_val,max:e.max_val,avg:e.avg_val}}function f(e,t){return t=t||"",e&&e.type!=="root"&&(t=f(e.parent,e.selector+t)),t}var r=e("../../helper/turbo-carto-error"),i=e("postcss");t.exports=s;var o={"=":"equality","==":"equality",">":"greater_than_or_equal",">=":"greater_than_or_equal","<":"less_than_or_equal","<=":"less_than_or_equal"},u={CATEGORY:"category",DEFAULT:"default",RANGE:"range"};s.prototype.process=function(e,t,n){var r=o[this.mapping];return r===o["<"]?this.processLessThanOrEqual(e,t,n):r===o["=="]?this.processEquality(e,t,n):this.processGreaterThanOrEqual(e,t,n)},s.supports=function(e){return o.hasOwnProperty(e)||!e},s.prototype.processEquality=function(e,t,n){if(this.filters.getLength()>this.values.getMaxSize())throw new r("`"+this.mapping+"` requires more or same values than filters to work.");var s=this.values.get(this.filters.getLength()+1),o=this.filters.get(),a=t,l=null;s.length!==o.length&&(l=s[s.length-1],a=i.decl({prop:t.prop,value:l}),t.replaceWith(a));var c={start:0,end:o.length},h=0,p=this.processGeneric(a,e,l,s,o,c,h);s.length===o.length&&t.remove();if(n){var d={selector:f(a.parent),prop:a.prop,column:e,mapping:this.mapping,buckets:[],stats:{}};d.buckets=o.map(function(e,t){return{filter:{name:e,type:u.CATEGORY},value:s[t]}}),l!==null&&d.buckets.push({filter:{type:u.DEFAULT},value:l}),n.add(d)}return p},s.prototype.processGreaterThanOrEqual=function(e,t,n){var r=Math.min(this.values.getMaxSize(),this.filters.getMaxSize()),s=this.values.get(r<=1?r+1:r),o=this.filters.get(r),l=s[0],c=i.decl({prop:t.prop,value:l});t.replaceWith(c);var h={start:0,end:Math.max(o.length-1,1)},p=1;if(n){var d=a(this.filters.stats),v={selector:f(c.parent),prop:c.prop,column:e,mapping:this.mapping,buckets:[],stats:{filter_avg:d.avg}},m=null;Number.isFinite(d.min)&&(m=d.min);var g=0;v.buckets=o.slice(h.start,h.end).map(function(e,t){var n={filter:{type:u.RANGE,start:m,end:e},value:s[t]};return m=e,g=t,n}),v.buckets.push({filter:{type:u.RANGE,start:m,end:d.max},value:s[g+1]}),n.add(v)}return this.processGeneric(c,e,l,s,o,h,p)},s.prototype.processLessThanOrEqual=function(e,t,n){var r=this.values.get(this.filters.getLength()),s=this.filters.get(),o=r[r.length-1],l=i.decl({prop:t.prop,value:o});t.replaceWith(l);var c={start:0,end:s.length-1},h=1;if(n){var p=a(this.filters.stats),d={selector:f(l.parent),prop:l.prop,column:e,mapping:this.mapping,buckets:[],stats:{filter_avg:p.avg}},v=null;Number.isFinite(p.min)&&(v=p.min);var m=0;d.buckets=s.slice(c.start,c.end).map(function(e,t){var n={filter:{type:u.RANGE,start:v,end:e},value:r[t]};return v=e,m=t,n}),d.buckets.push({filter:{type:u.RANGE,start:v,end:p.max},value:r[m+1]}),n.add(d)}var g=r.concat().reverse(),y=s.concat().reverse();return this.processGeneric(l,e,o,g,y,c,h)},s.prototype.processGeneric=function(e,t,n,r,s,o,u){var a=e;return s.slice(o.start,o.end).forEach(function(n,s){var o=Number.isFinite(n)?n:'"'+n+'"',f=i.rule({selector:"[ "+t+" "+this.mapping+" "+o+" ]"});f.append(i.decl({prop:e.prop,value:r[s+u]})),f.moveAfter(a),a=f}.bind(this)),{values:r,filters:s,mapping:this.mapping}}},{"../../helper/turbo-carto-error":152,postcss:106}],159:[function(e,t,n){"use strict";function r(e,t,n,r){this.result=e,this.defaultSize=t||e.length,this.getter=n,this.maxSize=r||e.length}t.exports=r,r.prototype.get=function(e){return e=e||this.defaultSize,this.getter?this.getter(this.result,e):Array.isArray(this.result)?e>0?this.result.slice(0,e):this.result:this.result.hasOwnProperty(e)?this.result[e]:this.result[this.defaultSize]},r.prototype.getLength=function(e){return this.get(e).length},r.prototype.getMaxSize=function(){return this.maxSize},r.prototype.toString=function(){return JSON.stringify({result:this.result,defaultSize:this.defaultSize,getter:this.getter&&this.getter.toString()})},r.prototype
.is=function(e){return this.constructor===e}},{}],160:[function(e,t,n){"use strict";function o(e){this.datasource=e}e("es6-promise").polyfill();var r=e("postcss-value-parser"),i=e("postcss"),s=e("./fn/builder");t.exports=o,o.prototype.getPlugin=function(e){var t=this;return i.plugin("turbo-carto",function(){return function(n){var i=new s(t.datasource);return n.walkDecls(function(t){var n=r(t.value);n.walk(function(n){if(n.type==="function")return i.add(t,n,e),!1},!1)}),i.exec()}})}},{"./fn/builder":133,"es6-promise":82,postcss:106,"postcss-value-parser":89}],161:[function(e,t,n){"use strict";function o(e,t){this.cartocss=e,this.datasource=t,this.metadataHolder=new s}var r=e("postcss"),i=e("./postcss-turbo-carto"),s=e("./model/metadata-holder");o.prototype.getCartocss=function(e){var t=this,n=new i(this.datasource);r([n.getPlugin(this.metadataHolder)]).process(this.cartocss).then(function(n){e(null,n.css,t.metadataHolder)}).catch(e)},o.prototype.getMetadata=function(e){return e(null,this.metadataHolder)},t.exports=o},{"./model/metadata-holder":157,"./postcss-turbo-carto":160,postcss:106}],162:[function(e,t,n){var r=e("simple-statistics");t.exports=function(e,t,n){var i=[],s=[];return e.features.forEach(function(e){e.properties[t]!==undefined&&i.push(e.properties[t])}),s=r.jenks(i,n),s}},{"simple-statistics":119}],163:[function(e,t,n){(function(){function N(e){function t(t,n,r,i,s,o){for(;s>=0&&s<o;s+=e){var u=i?i[s]:s;r=n(r,t[u],u,t)}return r}return function(n,r,i,s){r=g(r,s,4);var o=!T(n)&&m.keys(n),u=(o||n).length,a=e>0?0:u-1;return arguments.length<3&&(i=n[o?o[a]:a],a+=e),t(n,r,i,o,a,u)}}function L(e){return function(t,n,r){n=y(n,r);var i=x(t),s=e>0?0:i-1;for(;s>=0&&s<i;s+=e)if(n(t[s],s,t))return s;return-1}}function A(e,t,n){return function(r,i,s){var o=0,u=x(r);if(typeof s=="number")e>0?o=s>=0?s:Math.max(s+u,o):u=s>=0?Math.min(s+1,u):s+u+1;else if(n&&s&&u)return s=n(r,i),r[s]===i?s:-1;if(i!==i)return s=t(a.call(r,o,u),m.isNaN),s>=0?s+o:-1;for(s=e>0?o:u-1;s>=0&&s<u;s+=e)if(r[s]===i)return s;return-1}}function D(e,t){var n=_.length,r=e.constructor,i=m.isFunction(r)&&r.prototype||s,o="constructor";m.has(e,o)&&!m.contains(t,o)&&t.push(o);while(n--)o=_[n],o in e&&e[o]!==i[o]&&!m.contains(t,o)&&t.push(o)}var e=this,r=e._,i=Array.prototype,s=Object.prototype,o=Function.prototype,u=i.push,a=i.slice,f=s.toString,l=s.hasOwnProperty,c=Array.isArray,h=Object.keys,p=o.bind,d=Object.create,v=function(){},m=function(e){if(e instanceof m)return e;if(!(this instanceof m))return new m(e);this._wrapped=e};typeof n!="undefined"?(typeof t!="undefined"&&t.exports&&(n=t.exports=m),n._=m):e._=m,m.VERSION="1.8.3";var g=function(e,t,n){if(t===void 0)return e;switch(n==null?3:n){case 1:return function(n){return e.call(t,n)};case 2:return function(n,r){return e.call(t,n,r)};case 3:return function(n,r,i){return e.call(t,n,r,i)};case 4:return function(n,r,i,s){return e.call(t,n,r,i,s)}}return function(){return e.apply(t,arguments)}},y=function(e,t,n){return e==null?m.identity:m.isFunction(e)?g(e,t,n):m.isObject(e)?m.matcher(e):m.property(e)};m.iteratee=function(e,t){return y(e,t,Infinity)};var b=function(e,t){return function(n){var r=arguments.length;if(r<2||n==null)return n;for(var i=1;i<r;i++){var s=arguments[i],o=e(s),u=o.length;for(var a=0;a<u;a++){var f=o[a];if(!t||n[f]===void 0)n[f]=s[f]}}return n}},w=function(e){if(!m.isObject(e))return{};if(d)return d(e);v.prototype=e;var t=new v;return v.prototype=null,t},E=function(e){return function(t){return t==null?void 0:t[e]}},S=Math.pow(2,53)-1,x=E("length"),T=function(e){var t=x(e);return typeof t=="number"&&t>=0&&t<=S};m.each=m.forEach=function(e,t,n){t=g(t,n);var r,i;if(T(e))for(r=0,i=e.length;r<i;r++)t(e[r],r,e);else{var s=m.keys(e);for(r=0,i=s.length;r<i;r++)t(e[s[r]],s[r],e)}return e},m.map=m.collect=function(e,t,n){t=y(t,n);var r=!T(e)&&m.keys(e),i=(r||e).length,s=Array(i);for(var o=0;o<i;o++){var u=r?r[o]:o;s[o]=t(e[u],u,e)}return s},m.reduce=m.foldl=m.inject=N(1),m.reduceRight=m.foldr=N(-1),m.find=m.detect=function(e,t,n){var r;T(e)?r=m.findIndex(e,t,n):r=m.findKey(e,t,n);if(r!==void 0&&r!==-1)return e[r]},m.filter=m.select=function(e,t,n){var r=[];return t=y(t,n),m.each(e,function(e,n,i){t(e,n,i)&&r.push(e)}),r},m.reject=function(e,t,n){return m.filter(e,m.negate(y(t)),n)},m.every=m.all=function(e,t,n){t=y(t,n);var r=!T(e)&&m.keys(e),i=(r||e).length;for(var s=0;s<i;s++){var o=r?r[s]:s;if(!t(e[o],o,e))return!1}return!0},m.some=m.any=function(e,t,n){t=y(t,n);var r=!T(e)&&m.keys(e),i=(r||e).length;for(var s=0;s<i;s++){var o=r?r[s]:s;if(t(e[o],o,e))return!0}return!1},m.contains=m.includes=m.include=function(e,t,n,r){T(e)||(e=m.values(e));if(typeof n!="number"||r)n=0;return m.indexOf(e,t,n)>=0},m.invoke=function(e,t){var n=a.call(arguments,2),r=m.isFunction(t);return m.map(e,function(e){var i=r?t:e[t];return i==null?i:i.apply(e,n)})},m.pluck=function(e,t){return m.map(e,m.property(t))},m.where=function(e,t){return m.filter(e,m.matcher(t))},m.findWhere=function(e,t){return m.find(e,m.matcher(t))},m.max=function(e,t,n){var r=-Infinity,i=-Infinity,s,o;if(t==null&&e!=null){e=T(e)?e:m.values(e);for(var u=0,a=e.length;u<a;u++)s=e[u],s>r&&(r=s)}else t=y(t,n),m.each(e,function(e,n,s){o=t(e,n,s);if(o>i||o===-Infinity&&r===-Infinity)r=e,i=o});return r},m.min=function(e,t,n){var r=Infinity,i=Infinity,s,o;if(t==null&&e!=null){e=T(e)?e:m.values(e);for(var u=0,a=e.length;u<a;u++)s=e[u],s<r&&(r=s)}else t=y(t,n),m.each(e,function(e,n,s){o=t(e,n,s);if(o<i||o===Infinity&&r===Infinity)r=e,i=o});return r},m.shuffle=function(e){var t=T(e)?e:m.values(e),n=t.length,r=Array(n);for(var i=0,s;i<n;i++)s=m.random(0,i),s!==i&&(r[i]=r[s]),r[s]=t[i];return r},m.sample=function(e,t,n){return t==null||n?(T(e)||(e=m.values(e)),e[m.random(e.length-1)]):m.shuffle(e).slice(0,Math.max(0,t))},m.sortBy=function(e,t,n){return t=y(t,n),m.pluck(m.map(e,function(e,n,r){return{value:e,index:n,criteria:t(e,n,r)}}).sort(function(e,t){var n=e.criteria,r=t.criteria;if(n!==r){if(n>r||n===void 0)return 1;if(n<r||r===void 0)return-1}return e.index-t.index}),"value")};var C=function(e){return function(t,n,r){var i={};return n=y(n,r),m.each(t,function(r,s){var o=n(r,s,t);e(i,r,o)}),i}};m.groupBy=C(function(e,t,n){m.has(e,n)?e[n].push(t):e[n]=[t]}),m.indexBy=C(function(e,t,n){e[n]=t}),m.countBy=C(function(e,t,n){m.has(e,n)?e[n]++:e[n]=1}),m.toArray=function(e){return e?m.isArray(e)?a.call(e):T(e)?m.map(e,m.identity):m.values(e):[]},m.size=function(e){return e==null?0:T(e)?e.length:m.keys(e).length},m.partition=function(e,t,n){t=y(t,n);var r=[],i=[];return m.each(e,function(e,n,s){(t(e,n,s)?r:i).push(e)}),[r,i]},m.first=m.head=m.take=function(e,t,n){return e==null?void 0:t==null||n?e[0]:m.initial(e,e.length-t)},m.initial=function(e,t,n){return a.call(e,0,Math.max(0,e.length-(t==null||n?1:t)))},m.last=function(e,t,n){return e==null?void 0:t==null||n?e[e.length-1]:m.rest(e,Math.max(0,e.length-t))},m.rest=m.tail=m.drop=function(e,t,n){return a.call(e,t==null||n?1:t)},m.compact=function(e){return m.filter(e,m.identity)};var k=function(e,t,n,r){var i=[],s=0;for(var o=r||0,u=x(e);o<u;o++){var a=e[o];if(T(a)&&(m.isArray(a)||m.isArguments(a))){t||(a=k(a,t,n));var f=0,l=a.length;i.length+=l;while(f<l)i[s++]=a[f++]}else n||(i[s++]=a)}return i};m.flatten=function(e,t){return k(e,t,!1)},m.without=function(e){return m.difference(e,a.call(arguments,1))},m.uniq=m.unique=function(e,t,n,r){m.isBoolean(t)||(r=n,n=t,t=!1),n!=null&&(n=y(n,r));var i=[],s=[];for(var o=0,u=x(e);o<u;o++){var a=e[o],f=n?n(a,o,e):a;t?((!o||s!==f)&&i.push(a),s=f):n?m.contains(s,f)||(s.push(f),i.push(a)):m.contains(i,a)||i.push(a)}return i},m.union=function(){return m.uniq(k(arguments,!0,!0))},m.intersection=function(e){var t=[],n=arguments.length;for(var r=0,i=x(e);r<i;r++){var s=e[r];if(m.contains(t,s))continue;for(var o=1;o<n;o++)if(!m.contains(arguments[o],s))break;o===n&&t.push(s)}return t},m.difference=function(e){var t=k(arguments,!0,!0,1);return m.filter(e,function(e){return!m.contains(t,e)})},m.zip=function(){return m.unzip(arguments)},m.unzip=function(e){var t=e&&m.max(e,x).length||0,n=Array(t);for(var r=0;r<t;r++)n[r]=m.pluck(e,r);return n},m.object=function(e,t){var n={};for(var r=0,i=x(e);r<i;r++)t?n[e[r]]=t[r]:n[e[r][0]]=e[r][1];return n},m.findIndex=L(1),m.findLastIndex=L(-1),m.sortedIndex=function(e,t,n,r){n=y(n,r,1);var i=n(t),s=0,o=x(e);while(s<o){var u=Math.floor((s+o)/2);n(e[u])<i?s=u+1:o=u}return s},m.indexOf=A(1,m.findIndex,m.sortedIndex),m.lastIndexOf=A(-1,m.findLastIndex),m.range=function(e,t,n){t==null&&(t=e||0,e=0),n=n||1;var r=Math.max(Math.ceil((t-e)/n),0),i=Array(r);for(var s=0;s<r;s++,e+=n)i[s]=e;return i};var O=function(e,t,n,r,i){if(r instanceof t){var s=w(e.prototype),o=e.apply(s,i);return m.isObject(o)?o:s}return e.apply(n,i)};m.bind=function(e,t){if(p&&e.bind===p)return p.apply(e,a.call(arguments,1));if(!m.isFunction(e))throw new TypeError("Bind must be called on a function");var n=a.call(arguments,2),r=function(){return O(e,r,t,this,n.concat(a.call(arguments)))};return r},m.partial=function(e){var t=a.call(arguments,1),n=function(){var r=0,i=t.length,s=Array(i);for(var o=0;o<i;o++)s[o]=t[o]===m?arguments[r++]:t[o];while(r<arguments.length)s.push(arguments[r++]);return O(e,n,this,this,s)};return n},m.bindAll=function(e){var t,n=arguments.length,r;if(n<=1)throw new Error("bindAll must be passed function names");for(t=1;t<n;t++)r=arguments[t],e[r]=m.bind(e[r],e);return e},m.memoize=function(e,t){var n=function(r){var i=n.cache,s=""+(t?t.apply(this,arguments):r);return m.has(i,s)||(i[s]=e.apply(this,arguments)),i[s]};return n.cache={},n},m.delay=function(e,t){var n=a.call(arguments,2);return setTimeout(function(){return e.apply(null,n)},t)},m.defer=m.partial(m.delay,m,1),m.throttle=function(e,t,n){var r,i,s,o=null,u=0;n||(n={});var a=function(){u=n.leading===!1?0:m.now(),o=null,s=e.apply(r,i),o||(r=i=null)};return function(){var f=m.now();!u&&n.leading===!1&&(u=f);var l=t-(f-u);return r=this,i=arguments,l<=0||l>t?(o&&(clearTimeout(o),o=null),u=f,s=e.apply(r,i),o||(r=i=null)):!o&&n.trailing!==!1&&(o=setTimeout(a,l)),s}},m.debounce=function(e,t,n){var r,i,s,o,u,a=function(){var f=m.now()-o;f<t&&f>=0?r=setTimeout(a,t-f):(r=null,n||(u=e.apply(s,i),r||(s=i=null)))};return function(){s=this,i=arguments,o=m.now();var f=n&&!r;return r||(r=setTimeout(a,t)),f&&(u=e.apply(s,i),s=i=null),u}},m.wrap=function(e,t){return m.partial(t,e)},m.negate=function(e){return function(){return!e.apply(this,arguments)}},m.compose=function(){var e=arguments,t=e.length-1;return function(){var n=t,r=e[t].apply(this,arguments);while(n--)r=e[n].call(this,r);return r}},m.after=function(e,t){return function(){if(--e<1)return t.apply(this,arguments)}},m.before=function(e,t){var n;return function(){return--e>0&&(n=t.apply(this,arguments)),e<=1&&(t=null),n}},m.once=m.partial(m.before,2);var M=!{toString:null}.propertyIsEnumerable("toString"),_=["valueOf","isPrototypeOf","toString","propertyIsEnumerable","hasOwnProperty","toLocaleString"];m.keys=function(e){if(!m.isObject(e))return[];if(h)return h(e);var t=[];for(var n in e)m.has(e,n)&&t.push(n);return M&&D(e,t),t},m.allKeys=function(e){if(!m.isObject(e))return[];var t=[];for(var n in e)t.push(n);return M&&D(e,t),t},m.values=function(e){var t=m.keys(e),n=t.length,r=Array(n);for(var i=0;i<n;i++)r[i]=e[t[i]];return r},m.mapObject=function(e,t,n){t=y(t,n);var r=m.keys(e),i=r.length,s={},o;for(var u=0;u<i;u++)o=r[u],s[o]=t(e[o],o,e);return s},m.pairs=function(e){var t=m.keys(e),n=t.length,r=Array(n);for(var i=0;i<n;i++)r[i]=[t[i],e[t[i]]];return r},m.invert=function(e){var t={},n=m.keys(e);for(var r=0,i=n.length;r<i;r++)t[e[n[r]]]=n[r];return t},m.functions=m.methods=function(e){var t=[];for(var n in e)m.isFunction(e[n])&&t.push(n);return t.sort()},m.extend=b(m.allKeys),m.extendOwn=m.assign=b(m.keys),m.findKey=function(e,t,n){t=y(t,n);var r=m.keys(e),i;for(var s=0,o=r.length;s<o;s++){i=r[s];if(t(e[i],i,e))return i}},m.pick=function(e,t,n){var r={},i=e,s,o;if(i==null)return r;m.isFunction(t)?(o=m.allKeys(i),s=g(t,n)):(o=k(arguments,!1,!1,1),s=function(e,t,n){return t in n},i=Object(i));for(var u=0,a=o.length;u<a;u++){var f=o[u],l=i[f];s(l,f,i)&&(r[f]=l)}return r},m.omit=function(e,t,n){if(m.isFunction(t))t=m.negate(t);else{var r=m.map(k(arguments,!1,!1,1),String);t=function(e,t){return!m.contains(r,t)}}return m.pick(e,t,n)},m.defaults=b(m.allKeys,!0),m.create=function(e,t){var n=w(e);return t&&m.extendOwn(n,t),n},m.clone=function(e){return m.isObject(e)?m.isArray(e)?e.slice():m.extend({},e):e},m.tap=function(e,t){return t(e),e},m.isMatch=function(e,t){var n=m.keys(t),r=n.length;if(e==null)return!r;var i=Object(e);for(var s=0;s<r;s++){var o=n[s];if(t[o]!==i[o]||!(o in i))return!1}return!0};var P=function(e,t,n,r){if(e===t)return e!==0||1/e===1/t;if(e==null||t==null)return e===t;e instanceof m&&(e=e._wrapped),t instanceof m&&(t=t._wrapped);var i=f.call(e);if(i!==f.call(t))return!1;switch(i){case"[object RegExp]":case"[object String]":return""+e==""+t;case"[object Number]":if(+e!==+e)return+t!==+t;return+e===0?1/+e===1/t:+e===+t;case"[object Date]":case"[object Boolean]":return+e===+t}var s=i==="[object Array]";if(!s){if(typeof e!="object"||typeof t!="object")return!1;var o=e.constructor,u=t.constructor;if(o!==u&&!(m.isFunction(o)&&o instanceof o&&m.isFunction(u)&&u instanceof u)&&"constructor"in e&&"constructor"in t)return!1}n=n||[],r=r||[];var a=n.length;while(a--)if(n[a]===e)return r[a]===t;n.push(e),r.push(t);if(s){a=e.length;if(a!==t.length)return!1;while(a--)if(!P(e[a],t[a],n,r))return!1}else{var l=m.keys(e),c;a=l.length;if(m.keys(t).length!==a)return!1;while(a--){c=l[a];if(!m.has(t,c)||!P(e[c],t[c],n,r))return!1}}return n.pop(),r.pop(),!0};m.isEqual=function(e,t){return P(e,t)},m.isEmpty=function(e){return e==null?!0:T(e)&&(m.isArray(e)||m.isString(e)||m.isArguments(e))?e.length===0:m.keys(e).length===0},m.isElement=function(e){return!!e&&e.nodeType===1},m.isArray=c||function(e){return f.call(e)==="[object Array]"},m.isObject=function(e){var t=typeof e;return t==="function"||t==="object"&&!!e},m.each(["Arguments","Function","String","Number","Date","RegExp","Error"],function(e){m["is"+e]=function(t){return f.call(t)==="[object "+e+"]"}}),m.isArguments(arguments)||(m.isArguments=function(e){return m.has(e,"callee")}),typeof /./!="function"&&typeof Int8Array!="object"&&(m.isFunction=function(e){return typeof e=="function"||!1}),m.isFinite=function(e){return isFinite(e)&&!isNaN(parseFloat(e))},m.isNaN=function(e){return m.isNumber(e)&&e!==+e},m.isBoolean=function(e){return e===!0||e===!1||f.call(e)==="[object Boolean]"},m.isNull=function(e){return e===null},m.isUndefined=function(e){return e===void 0},m.has=function(e,t){return e!=null&&l.call(e,t)},m.noConflict=function(){return e._=r,this},m.identity=function(e){return e},m.constant=function(e){return function(){return e}},m.noop=function(){},m.property=E,m.propertyOf=function(e){return e==null?function(){}:function(t){return e[t]}},m.matcher=m.matches=function(e){return e=m.extendOwn({},e),function(t){return m.isMatch(t,e)}},m.times=function(e,t,n){var r=Array(Math.max(0,e));t=g(t,n,1);for(var i=0;i<e;i++)r[i]=t(i);return r},m.random=function(e,t){return t==null&&(t=e,e=0),e+Math.floor(Math.random()*(t-e+1))},m.now=Date.now||function(){return(new Date).getTime()};var H={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#x27;","`":"&#x60;"},B=m.invert(H),j=function(e){var t=function(t){return e[t]},n="(?:"+m.keys(e).join("|")+")",r=RegExp(n),i=RegExp(n,"g");return function(e){return e=e==null?"":""+e,r.test(e)?e.replace(i,t):e}};m.escape=j(H),m.unescape=j(B),m.result=function(e,t,n){var r=e==null?void 0:e[t];return r===void 0&&(r=n),m.isFunction(r)?r.call(e):r};var F=0;m.uniqueId=function(e){var t=++F+"";return e?e+t:t},m.templateSettings={evaluate:/<%([\s\S]+?)%>/g,interpolate:/<%=([\s\S]+?)%>/g,escape:/<%-([\s\S]+?)%>/g};var I=/(.)^/,q={"'":"'","\\":"\\","\r":"r","\n":"n","\u2028":"u2028","\u2029":"u2029"},R=/\\|'|\r|\n|\u2028|\u2029/g,U=function(e){return"\\"+q[e]};m.template=function(e,t,n){!t&&n&&(t=n),t=m.defaults({},t,m.templateSettings);var r=RegExp([(t.escape||I).source,(t.interpolate||I).source,(t.evaluate||I).source].join("|")+"|$","g"),i=0,s="__p+='";e.replace(r,function(t,n,r,o,u){return s+=e.slice(i,u).replace(R,U),i=u+t.length,n?s+="'+\n((__t=("+n+"))==null?'':_.escape(__t))+\n'":r?s+="'+\n((__t=("+r+"))==null?'':__t)+\n'":o&&(s+="';\n"+o+"\n__p+='"),t}),s+="';\n",t.variable||(s="with(obj||{}){\n"+s+"}\n"),s="var __t,__p='',__j=Array.prototype.join,print=function(){__p+=__j.call(arguments,'');};\n"+s+"return __p;\n";try{var o=new Function(t.variable||"obj","_",s)}catch(u){throw u.source=s,u}var a=function(e){return o.call(this,e,m)},f=t.variable||"obj";return a.source="function("+f+"){\n"+s+"}",a},m.chain=function(e){var t=m(e);return t._chain=!0,t};var z=function(e,t){return e._chain?m(t).chain():t};m.mixin=function(e){m.each(m.functions(e),function(t){var n=m[t]=e[t];m.prototype[t]=function(){var e=[this._wrapped];return u.apply(e,arguments),z(this,n.apply(m,e))}})},m.mixin(m),m.each(["pop","push","reverse","shift","sort","splice","unshift"],function(e){var t=i[e];m.prototype[e]=function(){var n=this._wrapped;return t.apply(n,arguments),(e==="shift"||e==="splice")&&n.length===0&&delete n[0],z(this,n)}}),m.each(["concat","join","slice"],function(e){var t=i[e];m.prototype[e]=function(){return z(this,t.apply(this._wrapped,arguments))}}),m.prototype.value=function(){return this._wrapped},m.prototype.valueOf=m.prototype.toJSON=m.prototype.value,m.prototype.toString=function(){return""+this._wrapped},typeof define=="function"&&define.amd&&define("underscore",[],function(){return m})}).call(this)},{}],164:[function(e,t,n){typeof Object.create=="function"?t.exports=function(t,n){t.super_=n,t.prototype=Object.create(n.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}})}:t.exports=function(t,n){t.super_=n;var r=function(){};r.prototype=n.prototype,t.prototype=new r,t.prototype.constructor=t}},{}],165:[function(e,t,n){t.exports=function(t){return t&&typeof t=="object"&&typeof t.copy=="function"&&typeof t.fill=="function"&&typeof t.readUInt8=="function"}},{}],166:[function(e,t,n){(function(t,r){function u(e,t){var r={seen:[],stylize:f};return arguments.length>=3&&(r.depth=arguments[2]),arguments.length>=4&&(r.colors=arguments[3]),y(t)?r.showHidden=t:t&&n._extend(r,t),T(r.showHidden)&&(r.showHidden=!1),T(r.depth)&&(r.depth=2),T(r.colors)&&(r.colors=!1),T(r.customInspect)&&(r.customInspect=!0),r.colors&&(r.stylize=a),c(r,e,r.depth)}function a(e,t){var n=u.styles[t];return n?"["+u.colors[n][0]+"m"+e+"["+u.colors[n][1]+"m":e}function f(e,t){return e}function l(e){var t={};return e.forEach(function(e,n){t[e]=!0}),t}function c(e,t,r){if(e.customInspect&&t&&A(t.inspect)&&t.inspect!==n.inspect&&(!t.constructor||t.constructor.prototype!==t)){var i=t.inspect(r,e);return S(i)||(i=c(e,i,r)),i}var s=h(e,t);if(s)return s;var o=Object.keys(t),u=l(o);e.showHidden&&(o=Object.getOwnPropertyNames(t));if(L(t)&&(o.indexOf("message")>=0||o.indexOf("description")>=0))return p(t);if(o.length===0){if(A(t)){var a=t.name?": "+t.name:"";return e.stylize("[Function"+a+"]","special")}if(N(t))return e.stylize(RegExp.prototype.toString.call(t),"regexp");if(k(t))return e.stylize(Date.prototype.toString.call(t),"date");if(L(t))return p(t)}var f="",y=!1,b=["{","}"];g(t)&&(y=!0,b=["[","]"]);if(A(t)){var w=t.name?": "+t.name:"";f=" [Function"+w+"]"}N(t)&&(f=" "+RegExp.prototype.toString.call(t)),k(t)&&(f=" "+Date.prototype.toUTCString.call(t)),L(t)&&(f=" "+p(t));if(o.length!==0||!!y&&t.length!=0){if(r<0)return N(t)?e.stylize(RegExp.prototype.toString.call(t),"regexp"):e.stylize("[Object]","special");e.seen.push(t);var E;return y?E=d(e,t,r,u,o):E=o.map(function(n){return v(e,t,r,u,n,y)}),e.seen.pop(),m(E,f,b)}return b[0]+f+b[1]}function h(e,t){if(T(t))return e.stylize("undefined","undefined");if(S(t)){var n="'"+JSON.stringify(t).replace(/^"|"$/g,"").replace(/'/g,"\\'").replace(/\\"/g,'"')+"'";return e.stylize(n,"string")}if(E(t))return e.stylize(""+t,"number");if(y(t))return e.stylize(""+t,"boolean");if(b(t))return e.stylize("null","null")}function p(e){return"["+Error.prototype.toString.call(e)+"]"}function d(e,t,n,r,i){var s=[];for(var o=0,u=t.length;o<u;++o)H(t,String(o))?s.push(v(e,t,n,r,String(o),!0)):s.push("");return i.forEach(function(i){i.match(/^\d+$/)||s.push(v(e,t,n,r,i,!0))}),s}function v(e,t,n,r,i,s){var o,u,a;a=Object.getOwnPropertyDescriptor(t,i)||{value:t[i]},a.get?a.set?u=e.stylize("[Getter/Setter]","special"):u=e.stylize("[Getter]","special"):a.set&&(u=e.stylize("[Setter]","special")),H(r,i)||(o="["+i+"]"),u||(e.seen.indexOf(a.value)<0?(b(n)?u=c(e,a.value,null):u=c(e,a.value,n-1),u.indexOf("\n")>-1&&(s?u=u.split("\n").map(function(e){return" "+e}).join("\n").substr(2):u="\n"+u.split("\n").map(function(e){return" "+e}).join("\n"))):u=e.stylize("[Circular]","special"));if(T(o)){if(s&&i.match(/^\d+$/))return u;o=JSON.stringify(""+i),o.match(/^"([a-zA-Z_][a-zA-Z_0-9]*)"$/)?(o=o.substr(1,o.length-2),o=e.stylize(o,"name")):(o=o.replace(/'/g,"\\'").replace(/\\"/g,'"').replace(/(^"|"$)/g,"'"),o=e.stylize(o,"string"))}return o+": "+u}function m(e,t,n){var r=0,i=e.reduce(function(e,t){return r++,t.indexOf("\n")>=0&&r++,e+t.replace(/\u001b\[\d\d?m/g,"").length+1},0);return i>60?n[0]+(t===""?"":t+"\n ")+" "+e.join(",\n ")+" "+n[1]:n[0]+t+" "+e.join(", ")+" "+n[1]}function g(e){return Array.isArray(e)}function y(e){return typeof e=="boolean"}function b(e){return e===null}function w(e){return e==null}function E(e){return typeof e=="number"}function S(e){return typeof e=="string"}function x(e){return typeof e=="symbol"}function T(e){return e===void 0}function N(e){return C(e)&&M(e)==="[object RegExp]"}function C(e){return typeof e=="object"&&e!==null}function k(e){return C(e)&&M(e)==="[object Date]"}function L(e){return C(e)&&(M(e)==="[object Error]"||e instanceof Error)}function A(e){return typeof e=="function"}function O(e){return e===null||typeof e=="boolean"||typeof e=="number"||typeof e=="string"||typeof e=="symbol"||typeof e=="undefined"}function M(e){return Object.prototype.toString.call(e)}function _(e){return e<10?"0"+e.toString(10):e.toString(10)}function P(){var e=new Date,t=[_(e.getHours()),_(e.getMinutes()),_(e.getSeconds())].join(":");return[e.getDate(),D[e.getMonth()],t].join(" ")}function H(e,t){return Object.prototype.hasOwnProperty.call(e,t)}var i=/%[sdj%]/g;n.format=function(e){if(!S(e)){var t=[];for(var n=0;n<arguments.length;n++)t.push(u(arguments[n]));return t.join(" ")}var n=1,r=arguments,s=r.length,o=String(e).replace(i,function(e){if(e==="%%")return"%";if(n>=s)return e;switch(e){case"%s":return String(r[n++]);case"%d":return Number(r[n++]);case"%j":try{return JSON.stringify(r[n++])}catch(t){return"[Circular]"};default:return e}});for(var a=r[n];n<s;a=r[++n])b(a)||!C(a)?o+=" "+a:o+=" "+u(a);return o},n.deprecate=function(e,i){function o(){if(!s){if(t.throwDeprecation)throw new Error(i);t.traceDeprecation?console.trace(i):console.error(i),s=!0}return e.apply(this,arguments)}if(T(r.process))return function(){return n.deprecate(e,i).apply(this,arguments)};if(t.noDeprecation===!0)return e;var s=!1;return o};var s={},o;n.debuglog=function(e){T(o)&&(o=t.env.NODE_DEBUG||""),e=e.toUpperCase();if(!s[e])if((new RegExp("\\b"+e+"\\b","i")).test(o)){var r=t.pid;s[e]=function(){var t=n.format.apply(n,arguments);console.error("%s %d: %s",e,r,t)}}else s[e]=function(){};return s[e]},n.inspect=u,u.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]},u.styles={special:"cyan",number:"yellow","boolean":"yellow","undefined":"grey","null":"bold",string:"green",date:"magenta",regexp:"red"},n.isArray=g,n.isBoolean=y,n.isNull=b,n.isNullOrUndefined=w,n.isNumber=E,n.isString=S,n.isSymbol=x,n.isUndefined=T,n.isRegExp=N,n.isObject=C,n.isDate=k,n.isError=L,n.isFunction=A,n.isPrimitive=O,n.isBuffer=e("./support/isBuffer");var D=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];n.log=function(){console.log("%s - %s",P(),n.format.apply(n,arguments))},n.inherits=e("inherits"),n._extend=function(e,t){if(!t||!C(t))return e;var n=Object.keys(t),r=n.length;while(r--)e[n[r]]=t[n[r]];return e}}).call(this,e("_process"),typeof global!="undefined"?global:typeof self!="undefined"?self:typeof window!="undefined"?window:{})},{"./support/isBuffer":165,_process:118,inherits:164}]},{},[11])(11)});