{"version":3,"sources":["main.js","lib/d3c3/d3c3.min.js","lib/draggabilly/draggabilly.pkgd.min.js","sitna/control/CompactBasemapSelector.js","sitna/control/LayerComparator.js","sitna/control/TimeSlider.js","sitna/ol/LayerComparator.js"],"names":["isOrto","layer","id","indexOf","TC","Cfg","availableBaseLayers","concat","title","type","url","layerNames","thumbnail","sort","a","b","Consts","IDENA_BASEMAP","IDENA_ORTHOPHOTO","localeCompare","ComparaMapas","locale","Util","getLocaleUserChoice","cookieName","map","Map","layout","markup","style","config","script","i18n","ready","options","document","querySelectorAll","forEach","elm","html","innerHTML","braces","match","i","len","length","key","replace","getLocaleString","esLinks","euLinks","enLinks","currentLangLinks","link","classList","add","classes","ACTIVE","pushState","history","state","result","apply","arguments","params","getQueryStringParams","lang","href","location","pathname","getParamString","hash","setAttribute","onclick","e","toggle","HIDDEN","querySelector","addEventListener","loaded","window","getControlsByClass","control","TimeSlider","ctl","update","n","ownerDocument","documentElement","t","defaultView","NaN","r","u","isNaN","left","right","l","Object","defineProperty","prototype","value","enumerable","c","this","_","create","s","xa","ba","f","slice","h","g","p","push","v","d","m","y","M","x","charAt","toUpperCase","_a","w","on","get","remove","set","S","oa","event","preventDefault","k","sourceEvent","N","of","target","E","Sa","Aa","A","ka","C","Na","z","ns","qualify","local","removeAttributeNS","space","removeAttribute","setAttributeNS","L","trim","q","RegExp","requote","T","split","R","D","getAttribute","lastIndex","test","P","removeProperty","setProperty","j","U","createElementNS","namespaceURI","createElement","F","parentNode","removeChild","H","__data__","O","Ea","I","Y","o","Z","za","X","removeEventListener","$","La","B","ca","call","relatedTarget","compareDocumentPosition","W","Ta","select","qa","setTimeout","J","changedTouches","ownerSVGElement","createSVGPoint","Ra","scrollX","scrollY","append","position","top","margin","padding","border","getScreenCTM","pageX","pageY","clientX","clientY","matrixTransform","inverse","getBoundingClientRect","clientLeft","clientTop","G","identifier","K","Q","nn","ja","Math","acos","tn","Ha","asin","rn","exp","an","sin","ln","_n","wn","cn","round","yn","sn","pn","hn","Sn","rgb","fn","cos","Oa","gn","mn","vn","Ka","Qa","no","atan2","Ia","sqrt","dn","pow","Mn","xn","bn","max","toString","min","exec","toLowerCase","parseFloat","Nn","ro","parseInt","kn","En","An","Cn","status","responseType","response","responseText","Ln","error","load","dispatch","XMLHttpRequest","XDomainRequest","onload","onerror","onreadystatechange","readyState","onprogress","progress","header","mimeType","send","open","accept","setRequestHeader","overrideMimeType","beforesend","abort","rebind","zn","qn","Date","now","io","uo","ao","oo","clearTimeout","lo","Tn","Rn","Dn","isFinite","Pn","ceil","log","LN10","Un","decimal","thousands","grouping","currency","substring","reverse","join","so","fo","Fn","formatPrefix","scale","symbol","lastIndexOf","Array","Hn","UTC","On","go","floor","offset","range","utc","In","Yn","charCodeAt","vo","parse","setFullYear","getDay","setHours","dateTime","date","time","periods","days","shortDays","months","shortMonths","multi","ct","Vn","Xn","getMonth","Zn","getDate","getHours","ho","dayOfYear","getMilliseconds","getMinutes","getSeconds","sundayOfYear","mondayOfYear","getFullYear","ot","%","tt","rt","et","at","nt","ut","it","Bn","$n","Wn","Gn","Jn","Kn","lt","mo","Qn","getTimezoneOffset","Ma","yo","st","ft","ht","_o","hasOwnProperty","gt","lineStart","point","lineEnd","pt","polygonStart","polygonEnd","vt","So","ko","dt","mt","yt","Mt","xt","bt","_t","wt","Da","St","kt","Ao","No","Co","zo","Nt","Eo","Lo","qo","To","jo","Et","At","Ro","Do","Po","Ct","invert","zt","Lt","Tt","qt","Rt","clean","buffer","pop","shift","filter","Dt","merge","reset","Ua","Ot","jt","sphere","Pt","rejoin","Yt","Zt","Fo","Vt","oe","parallels","Xt","$t","Oo","Xo","Wt","Jt","pointRadius","Gt","Kt","Bo","Qt","ne","te","moveTo","arc","lineTo","closePath","ee","ie","precision","ue","stream","ae","fe","valid","Uo","le","clipAngle","ve","It","clipExtent","translate","center","rotate","ce","se","ge","pe","he","de","PI","me","ye","Me","source","xe","we","Se","tan","atan","Ne","ke","Ee","Ae","Ce","ze","Le","qe","Te","Re","De","Pe","rr","edge","site","circle","je","ll","Ue","Be","il","Fe","cy","unshift","nr","Ke","$e","He","Oe","Ie","insert","Ye","edges","Ve","angle","Xe","Pa","cl","ol","al","Je","Ge","rl","ul","tr","Qe","er","ur","ir","ar","or","lr","splice","We","prepare","end","start","Ze","cells","cr","sr","fr","vr","dr","Mr","mr","yr","fl","hl","index","interpolators","xr","_r","wr","Sr","kr","Nr","Ar","Cr","zr","Tr","jr","Ur","Hr","Fr","Or","skew","Ir","$r","transform","Yr","Zr","Vr","Xr","Br","Wr","Jr","Gr","Kr","parent","Qr","fixed","nu","tu","px","py","eu","uu","nodes","links","su","iu","children","au","ou","lu","cu","fu","hu","gu","y0","pu","vu","du","mu","reduce","yu","Mu","xu","LN2","bu","_u","wu","_pack_next","_pack_prev","Su","ku","Nu","Eu","zu","Au","Lu","qu","Tu","Ru","Pu","Ou","dx","dy","Iu","Yu","Zu","rangeExtent","Vu","Xu","$u","wl","Bu","bisect","Ju","Gu","Ku","Qu","ni","ti","format","Sl","abs","ei","ii","fi","hi","innerRadius","gi","outerRadius","pi","startAngle","vi","endAngle","di","padAngle","mi","yi","Mi","xi","defined","interpolate","ql","tension","bi","wi","Si","Ai","Ci","zi","Ri","Dl","Di","Tl","Rl","Pi","Ui","ji","Hi","Oi","x0","x1","y1","closed","Ii","radius","Yi","Vi","Xi","$i","Bi","active","timer","count","interrupt","Wi","Il","namespace","Ji","tween","Gi","textContent","Ki","Qi","ease","duration","delay","na","attr","ta","ea","toISOString","ra","Gl","year","nc","ua","domain","nice","ticks","tickFormat","copy","ia","JSON","aa","sa","createRange","selectNode","body","createContextualFragment","version","la","childNodes","nodeType","fa","ha","ga","Element","pa","va","da","CSSStyleDeclaration","ma","ascending","descending","extent","sum","mean","quantile","median","variance","deviation","ya","bisectLeft","bisectRight","bisector","shuffle","random","permute","pairs","zip","transpose","keys","values","entries","Error","isArray","has","size","empty","nest","sortKeys","sortValues","rollup","behavior","wa","__proto__","matches","Sizzle","matchesSelector","selection","selectAll","Ca","svg","xhtml","xlink","xml","xmlns","prefix","node","getAttributeNS","each","classed","contains","getComputedStyle","getPropertyValue","property","text","appendChild","insertBefore","data","enter","exit","datum","order","nextSibling","V","mouseenter","mouseleave","mouse","navigator","userAgent","touch","drag","origin","touches","Fa","Ya","SQRT2","interpolateZoom","un","en","zoom","$a","__chart__","transition","Ol","Xa","shiftKey","Ba","deltaY","deltaMode","wheelDelta","detail","Fl","scaleExtent","color","hsl","Wa","brighter","darker","hcl","Ja","Ga","lab","to","eo","aliceblue","antiquewhite","aqua","aquamarine","azure","beige","bisque","black","blanchedalmond","blue","blueviolet","brown","burlywood","cadetblue","chartreuse","chocolate","coral","cornflowerblue","cornsilk","crimson","cyan","darkblue","darkcyan","darkgoldenrod","darkgray","darkgreen","darkgrey","darkkhaki","darkmagenta","darkolivegreen","darkorange","darkorchid","darkred","darksalmon","darkseagreen","darkslateblue","darkslategray","darkslategrey","darkturquoise","darkviolet","deeppink","deepskyblue","dimgray","dimgrey","dodgerblue","firebrick","floralwhite","forestgreen","fuchsia","gainsboro","ghostwhite","gold","goldenrod","gray","green","greenyellow","grey","honeydew","hotpink","indianred","indigo","ivory","khaki","lavender","lavenderblush","lawngreen","lemonchiffon","lightblue","lightcoral","lightcyan","lightgoldenrodyellow","lightgray","lightgreen","lightgrey","lightpink","lightsalmon","lightseagreen","lightskyblue","lightslategray","lightslategrey","lightsteelblue","lightyellow","lime","limegreen","linen","magenta","maroon","mediumaquamarine","mediumblue","mediumorchid","mediumpurple","mediumseagreen","mediumslateblue","mediumspringgreen","mediumturquoise","mediumvioletred","midnightblue","mintcream","mistyrose","moccasin","navajowhite","navy","oldlace","olive","olivedrab","orange","orangered","orchid","palegoldenrod","palegreen","paleturquoise","palevioletred","papayawhip","peachpuff","peru","pink","plum","powderblue","purple","rebeccapurple","red","rosybrown","royalblue","saddlebrown","salmon","sandybrown","seagreen","seashell","sienna","silver","skyblue","slateblue","slategray","slategrey","snow","springgreen","steelblue","teal","thistle","tomato","turquoise","violet","wheat","white","whitesmoke","yellow","yellowgreen","functor","xhr","dsv","row","parseRows","Function","stringify","formatRows","csv","tsv","flush","co","String","fromCharCode","toPrecision","toExponential","toFixed","getUTCDate","getUTCDay","getUTCFullYear","getUTCHours","getUTCMilliseconds","getUTCMinutes","getUTCMonth","getUTCSeconds","getTime","valueOf","setDate","po","setUTCDate","setDay","setUTCDay","setUTCFullYear","setUTCHours","setMilliseconds","setUTCMilliseconds","setMinutes","setUTCMinutes","setMonth","setUTCMonth","setSeconds","setUTCSeconds","setTime","day","years","week","sunday","weeks","weekOfYear","-","0","numberFormat","timeFormat","Mo","geo","xo","bo","Feature","geometry","FeatureCollection","features","Sphere","Point","coordinates","MultiPoint","LineString","MultiLineString","Polygon","MultiPolygon","GeometryCollection","geometries","area","wo","bounds","centroid","Ft","conicEqualArea","raw","albers","albersUsa","Ho","Io","Yo","Zo","Vo","$o","path","projection","re","context","projectionMutator","equirectangular","rotation","distance","graticule","lines","outline","majorExtent","minorExtent","step","majorStep","minorStep","greatArc","be","Wo","Jo","Go","azimuthalEqualArea","Ko","azimuthalEquidistant","conicConformal","conicEquidistant","Qo","gnomonic","mercator","nl","orthographic","tl","stereographic","transverseMercator","geom","hull","polygon","el","clip","voronoi","sl","triangles","delaunay","quadtree","leaf","visit","gr","find","pr","interpolateRgb","interpolateObject","interpolateNumber","interpolateString","interpolateArray","gl","pl","linear","poly","quad","cubic","elastic","back","bounce","vl","in","out","in-out","out-in","br","interpolateHcl","interpolateHsl","interpolateLab","interpolateRound","baseVal","consolidate","matrix","dl","interpolateTransform","bundle","chord","subindex","sortGroups","sortSubgroups","sortChords","chords","groups","force","cx","charge","pointCharge","resume","ml","yl","Ml","tick","alpha","weight","ru","linkDistance","linkStrength","friction","chargeDistance","gravity","theta","stop","hierarchy","depth","revalue","partition","pie","xl","Number","stack","bl","_l","inside-out","default","silhouette","wiggle","expand","zero","histogram","bins","frequency","pack","Cu","tree","Du","separation","nodeSize","cluster","Uu","ju","Fu","Hu","treemap","sticky","ratio","mode","normal","logNormal","bates","irwinHall","Wu","rangeRound","clamp","ri","base","Nl","kl","ui","exponent","ordinal","ai","rangePoints","rangeRoundPoints","rangeBands","rangeRoundBands","rangeBand","category10","El","category20","Al","category20b","Cl","category20c","zl","oi","quantiles","invertExtent","quantize","li","threshold","ci","identity","si","Ll","cornerRadius","padRadius","line","linear-closed","step-before","step-after","basis","basis-open","basis-closed","cardinal","cardinal-open","cardinal-closed","monotone","radial","p0","p1","a1","a0","diagonal","Zi","Pl","cross","diamond","Ul","square","triangle-down","jl","triangle-up","symbolTypes","Yl","Hl","attrTween","styleTween","axis","Zl","orient","Vl","tickValues","tickSize","innerTickSize","outerTickSize","tickPadding","tickSubdivide","bottom","brush","Xl","altKey","keyCode","$l","clear","nw","sw","Bl","Wl","Jl","iso","second","seconds","minute","minutes","hour","hours","month","Kl","Ql","tc","ec","json","responseXML","define","amd","d3","module","exports","owner","internal","loadConfig","init","bind","require","api","getDefaultConfig","cache","axes","height","width","withoutTransition","isCategory","tickMultiline","substr","tickWidth","splitted","tickTextRotate","withOuterTick","tickCentered","tickOffset","tickInterval","getTotalLength","tickCulling","generate","chart","initParams","data_url","convertUrlToData","data_mimeType","data_keys","initWithData","data_json","convertJsonToData","data_rows","convertRowsToData","data_columns","convertColumnsToData","clipId","clipIdForXAxis","clipIdForYAxis","clipIdForGrid","clipIdForSubchart","clipPath","getClipPath","clipPathForXAxis","clipPathForYAxis","clipPathForGrid","clipPathForSubchart","dragStart","dragging","flowing","cancelClick","mouseover","transiting","generateColor","levelColor","generateLevelColor","dataTimeFormat","data_xLocaltime","axisTimeFormat","axis_x_localtime","defaultAxisTimeFormat","hiddenTargetIds","hiddenLegendIds","focusedTargetIds","defocusedTargetIds","xOrient","axis_rotated","yOrient","axis_y_inner","y2Orient","axis_y2_inner","subXOrient","isLegendRight","legend_position","isLegendInset","isLegendTop","legend_inset_anchor","isLegendLeft","legendStep","legendItemWidth","legendItemHeight","currentMaxTickWidths","y2","rotated_padding_left","rotated_padding_right","axis_x_show","rotated_padding_top","withoutFadeIn","intervalForObserveInserted","subx","initChartElements","initBar","initLine","initArc","initGauge","initText","initPie","initBrush","initZoom","selectChart","bindto","observeInserted","xs","targets","convertDataToTargets","data_filter","data_hide","addHiddenTargetIds","mapToIds","legend_hide","addHiddenLegendIds","hasType","legend_show","updateSizes","updateScales","getXDomain","getYDomain","subX","subY","subY2","orgXDomain","zoom_enabled","onmouseover","onmouseout","clipChart","appendClip","clipXAxis","clipYAxis","clipGrid","clipSubchart","updateSvgSize","main","getTranslate","initSubchart","initTooltip","initLegend","initRegion","initGrid","grid_lines_front","initGridLines","initEventRect","zoom_privileged","regions","zoomRect","axis_x_extent","getDefaultExtent","updateTargets","updateDimension","oninit","redraw","withTransition","withTransform","withUpdateXDomain","withUpdateOrgXDomain","withTransitionForAxis","onresize","generateResize","onresized","element","smoothLines","x2","legend","getLegendHeight","getLegendWidth","hasArcType","getHorizontalAxisHeight","subchart_show","subchart_size_height","currentWidth","getCurrentWidth","currentHeight","getCurrentHeight","getCurrentPaddingTop","getCurrentPaddingRight","getCurrentPaddingBottom","getCurrentPaddingLeft","margin2","margin3","updateSizeForLegend","width2","height2","arcWidth","arcHeight","getGaugeLabelHeight","updateRadius","radiusExpanded","updateTargetsForText","updateTargetsForBar","updateTargetsForLine","updateTargetsForArc","updateTargetsForSubchart","showTargets","isTargetToShow","transition_duration","getShapeIndices","isAreaType","isBarType","isLineType","filterTargetsToShow","xv","generateTransitions","updateLegend","isCategorized","updateXDomain","axis_x_tick_values","updateXAxisTickValues","xAxis","subXAxis","zoom_rescale","flow","orgDomain","axis_y_tick_values","axis_y_tick_count","yAxis","generateTickValues","axis_y2_tick_values","axis_y2_tick_count","y2Axis","updateLabels","axis_x_tick_culling","axis_x_tick_culling_max","axisX","generateDrawArea","generateDrawBar","generateDrawLine","generateXYForText","tooltip","updateXgridFocus","data_empty_label_text","updateGrid","updateRegion","updateBar","updateLine","updateArea","updateCircle","hasDataLabel","updateText","redrawArc","redrawSubchart","selectedCircles","interaction_enabled","redrawEventRect","updateZoom","updateCircleY","circleY","circleX","generateFlow","drawBar","drawLine","drawArea","xForText","yForText","isTabVisible","redrawBar","redrawLine","redrawArea","redrawCircle","redrawText","redrawRegion","redrawGrid","generateWait","onrendered","updateAndRedraw","withLegend","withTransitionForExit","withTransitionForTransform","transformAll","redrawWithoutRescale","withY","withSubchart","withEventRect","isTimeSeries","axis_x_type","isCustomX","data_x","data_xs","isTimeSeriesY","axis_y_type","initialOpacity","initialOpacityForCircle","opacityForCircle","point_show","isScatterType","opacityForText","xx","parseDate","axis_x_categories","yv","subxx","transformMain","axisY","axisY2","chartArcs","transformContext","transformLegend","getXAxisClipX","getXAxisClipY","getXAxisClipWidth","getXAxisClipHeight","getYAxisClipX","getYAxisClipY","getYAxisClipWidth","getYAxisClipHeight","MutationObserver","console","previousSibling","disconnect","setInterval","clearInterval","observe","attributes","childList","characterData","endall","data_xFormat","hidden","mozHidden","msHidden","webkitHidden","size_width","size_height","padding_left","padding_right","padding_top","padding_bottom","zoom_extent","zoom_onzoom","zoom_onzoomstart","zoom_onzoomend","data_xSort","data_idConverter","data_names","data_classes","data_groups","data_axes","data_type","data_types","data_labels","data_order","data_regions","data_color","data_colors","data_selection_enabled","data_selection_grouped","data_selection_isselectable","data_selection_multiple","data_selection_draggable","data_onclick","data_onmouseover","data_onmouseout","data_onselected","data_onunselected","subchart_onbrush","color_pattern","color_threshold","legend_inset_x","legend_inset_y","legend_inset_step","legend_item_onclick","legend_item_onmouseover","legend_item_onmouseout","legend_equally","axis_x_tick_centered","axis_x_tick_format","axis_x_tick_count","axis_x_tick_fit","axis_x_tick_rotate","axis_x_tick_outer","axis_x_tick_multiline","axis_x_tick_width","axis_x_max","axis_x_min","axis_x_padding","axis_x_height","axis_x_label","axis_y_show","axis_y_max","axis_y_min","axis_y_inverted","axis_y_center","axis_y_label","axis_y_tick_format","axis_y_tick_outer","axis_y_tick_time_value","axis_y_tick_time_interval","axis_y_padding","axis_y_default","axis_y2_show","axis_y2_max","axis_y2_min","axis_y2_inverted","axis_y2_center","axis_y2_label","axis_y2_tick_format","axis_y2_tick_outer","axis_y2_padding","axis_y2_default","grid_x_show","grid_x_type","grid_x_lines","grid_y_show","grid_y_lines","grid_y_ticks","grid_focus_show","point_r","point_focus_expand_enabled","point_focus_expand_r","point_select_r","line_connectNull","line_step_type","bar_width","bar_width_ratio","bar_width_max","bar_zerobased","area_zerobased","pie_label_show","pie_label_format","pie_label_threshold","pie_expand","gauge_label_show","gauge_label_format","gauge_expand","gauge_min","gauge_max","gauge_units","gauge_width","donut_label_show","donut_label_format","donut_label_threshold","donut_width","donut_expand","donut_title","tooltip_show","tooltip_grouped","tooltip_format_title","tooltip_format_name","tooltip_format_value","tooltip_position","tooltip_contents","getTooltipContent","tooltip_init_show","tooltip_init_x","tooltip_init_position","additionalConfig","getScale","getX","getY","getYScale","getId","getSubYScale","xMin","xMax","yMin","yMax","subXMin","subXMax","subYMin","subYMax","xAxisTickFormat","getXAxisTickFormat","xAxisTickValues","getXAxisTickValues","yAxisTickValues","getYAxisTickValues","y2AxisTickValues","getY2AxisTickValues","getXAxis","getYAxis","updateArc","getYDomainMin","getValuesAsIdKeyed","hasNegativeValueInTargets","getYDomainMax","hasPositiveValueInTargets","filterByXDomain","getDataLabelLength","convertPixelsToAxisPadding","getPadding","getXDomainMin","getXDomainMax","getXDomainPadding","getMaxDataCount","updateScaleExtent","trimXDomain","isX","isNotX","getXKey","getXValuesOfXKey","getIndexByX","filterByX","getXValue","getOtherTargetXs","getOtherTargetX","addXs","hasMultipleX","isMultipleX","addName","name","getValueOnIndex","updateTargetX","generateTargetX","updateTargetXs","cloneTarget","id_org","updateXs","getPrevX","getNextX","getMaxDataCountTarget","getEdgeX","mapToTargetIds","hasTarget","isLegendToShow","mapTargetsToUniqueXs","removeHiddenTargetIds","removeHiddenLegendIds","checkValueInTargets","isOrderDesc","isOrderAsc","orderTargets","filterRemoveNull","dataLabelFormat","isNoneArc","isArc","findSameXOfValues","findClosestFromTargets","findClosest","bars","getTargetSelectorSuffix","bar","isWithinBar","dist","convertValuesToStep","updateDataAttributes","responseURL","statusText","convertTsvToData","convertCsvToData","convertXsvToData","setTargetType","addCache","types","done","loadFromArgs","rows","columns","unload","selectorTarget","legendItem","categoryName","eventRects","eventRectsMultiple","eventRectsSingle","eventRect","generateEventRectsForMultipleXs","updateEventRect","generateEventRectsForSingleX","getEventRectWidth","classEvent","expandCircles","expandBars","shape","hideXGridFocus","hideTooltip","unexpandCircles","unexpandBars","isStepType","showTooltip","showXGridFocus","EXPANDED","isWithinShape","toggleShape","dragstart","dragend","shapes","dispatchEvent","createEvent","initMouseEvent","getParentWidth","getParentHeight","getAxisWidthByAxisId","getYAxisLabelPosition","isOuter","getY2AxisLabelPosition","getParentRectValue","tagName","offsetWidth","getSvgLeft","getLabelPositionById","getMaxTickWidth","isInner","__max__","getShapeX","getShapeY","getShapeOffset","nodeName","isWithinStep","isWithinCircle","pointSelectR","getInterpolate","isSplineType","chartLines","classChartLine","classLines","classAreas","classCircles","classFocus","chartLine","generateClass","selectedCircle","mainLine","lineData","classLine","generateGetLinePoints","lineWithRegions","mainArea","areas","classArea","orgAreaOpacity","generateGetAreaPoints","getAreaBaseValue","mainCircle","circles","lineOrScatterData","classCircle","pointR","getCircles","pointExpandedR","chartBars","classChartBar","classBars","chartBar","barData","classBar","mainBar","getBarW","getBars","generateGetBarPoints","pathSegList","getItem","chartTexts","mainText","classChartText","classTexts","chartText","barOrLineData","classText","texts","getTextRect","getXForText","getYForText","isSafari","isChrome","isPieType","isGaugeType","isDonutType","isArcType","arcData","grid","xgrids","ygrids","xgridFocus","xgrid","gridLines","xgridLines","ygridLines","updateXGrid","generateGridData","xgridAttr","updateYGrid","ygrid","gridTextAnchor","gridTextDx","xGridTextX","yGridTextX","xgridLine","ygridLine","getGridFilterToRemove","removeGridLines","tooltipContainer","getYFormat","tooltipName","tooltipPosition","legendItemTextBox","legendHasRendered","updateLegendWithDefaults","updateLegendStep","updateLegendItemWidth","updateLegendItemHeight","opacityForLegend","legendItemHidden","opacityForUnfocusedLegend","toggleFocusLegend","legendItemFocused","revertLegend","showLegend","selectorLegends","hideLegend","clearLegendItemTextBoxCache","hide","show","focus","revert","legendItemEvent","legendItemTile","legendBackground","constructor","axisXLabel","textAnchorForXAxisLabel","axisYLabel","textAnchorForYAxisLabel","axisY2Label","textAnchorForY2AxisLabel","getTickValues","getLabelOptionByAxisId","getLabelText","setLabelText","getLabelPosition","isLeft","isCenter","isRight","isTop","isMiddle","isBottom","getXAxisLabelPosition","textForXAxisLabel","textForYAxisLabel","textForY2AxisLabel","xForAxisLabel","dxForAxisLabel","textAnchorForAxisLabel","xForXAxisLabel","xForYAxisLabel","xForY2AxisLabel","dxForXAxisLabel","dxForYAxisLabel","dxForY2AxisLabel","dyForXAxisLabel","dyForYAxisLabel","dyForY2AxisLabel","unit","axisSubX","appVersion","URL","getAxisClipX","getAxisClipY","getAxisClipWidth","getAxisClipHeight","innerRadiusRatio","svgArc","getSvgArc","svgArcExpanded","getSvgArcExpanded","svgArcExpandedSub","updateAngle","getArc","transformForArcLabel","getArcRatio","convertToArcData","textForArcLabel","shouldShowArcLabel","meetsArcLabelThreshold","getArcLabelFormat","defaultArcValueFormat","expandArc","selectorTargets","chartArc","shouldExpand","unexpandArc","getArcTitle","classChartArc","classArcs","arcs","chartArcsTitle","classArc","_current","gaugeValue","chartArcsBackground","chartArcsGaugeUnit","chartArcsGaugeMin","chartArcsGaugeMax","region","mainRegion","classRegion","regionX","regionY","regionWidth","regionHeight","opacity","isRegionOnX","altDomain","dragarea","SELECTED","INCLUDED","togglePoint","togglePath","selectPoint","unselectPoint","selectPath","unselectPath","getToggle","redrawForBrush","updateBarForSubchart","contextBar","redrawBarForSubchart","updateLineForSubchart","contextLine","redrawLineForSubchart","updateAreaForSubchart","contextArea","redrawAreaForSubchart","withDimension","redrawForZoom","orgScaleExtent","yFormat","y2Format","defaultValueFormat","hasCaches","getCaches","CLASS","focused","defocused","classShape","classShapes","classTarget","classFocused","classDefocused","selectorLegend","isValue","isFunction","isString","isUndefined","isDefined","ceil10","asHalfPixel","diffDomain","isEmpty","notEmpty","getOption","hasValue","getPathBox","defocus","enable","unzoom","categories","colors","cacheIds","ids","orgDataCount","withTrimXDomain","withUpdateXAxis","selected","unselect","transformTo","shown","names","category","labels","resize","destroy","TypeError","c3","jQueryBridget","jQuery","option","isPlainObject","extend","_init","bridget","getSize","display","innerWidth","innerHeight","outerWidth","outerHeight","offsetHeight","isBorderBox","boxSizing","paddingLeft","paddingRight","paddingTop","paddingBottom","marginLeft","marginRight","marginTop","marginBottom","borderLeftWidth","borderRightWidth","borderTopWidth","borderBottomWidth","EvEmitter","_events","includes","once","_onceEvents","off","emitEvent","allOff","Unidragger","handleEvent","PointerEvent","touchActionValue","bindHandles","_bindHandles","unbindHandles","handles","touchAction","bindActivePointerEvents","unbindActivePointerEvents","withPointer","pointerId","pointerIdentifier","withTouch","onmousedown","pointerDown","ontouchstart","onpointerdown","isPointerDown","button","onmousemove","pointerMove","onpointermove","ontouchmove","pointerDownPointer","isDragging","hasDragStarted","dragMove","isPreventingClicks","onmouseup","pointerUp","onpointerup","ontouchend","pointerDone","dragEnd","staticClick","onpointercancel","ontouchcancel","pointerCancel","isIgnoringMouseUp","Draggabilly","$element","_create","_getPosition","startPoint","dragPoint","startPosition","handlePointerDown","handlePointerUp","handleDragStart","handleDragMove","handleDragEnd","setHandles","handle","HTMLElement","isEnabled","Event","trigger","_getPositionCoord","_addTransformPosition","startsWith","activeElement","blur","measureContainment","setLeftTop","animate","getContainer","relativeStartPosition","containSize","containment","containDrag","positionDrag","requestAnimationFrame","setPosition","disable","removeData","CompactBasemapSelector","BasemapSelector","[object Object]","template","compiler","container","depth0","helpers","partials","alias1","nullContext","alias2","hooks","helperMissing","alias3","escapeExpression","lookupProperty","propertyName","loc","column","useData","callback","self","super","render","getChangeLayerButton","_e","bmsControl","showMoreLayersDialog","passive","div","dialogMore","objs","Promise","all","register","BASELAYERCHANGE","baseLayer","_div","renderPromise","changeLayerButton","backgroundImage","LayerComparator","Control","exportsState","wrap","_dialogDiv","getDiv","dialogDiv","secondaryMapCount","secondaryMaps","secondaryCursors","_eventHandlers","mainBaseLayerSelector","secondaryBaseLayerSelectors","inherit","view","SINGLE","TRANSPARENCY","SPLIT","SWIPE","SPY","TIMELINE","ctlProto","lastMouseMoveTime","1","helper","stack1","program","noop","lambda","SWIPE_SLIDER_TOUCH_WIDTH","layers","fill","resolve","reject","renderData","spyglassMinRadius","spyglassMaxRadius","spyglassRadius","then","openDialogButton","showSelectionDialog","getRenderedHtml","views","radioButtons","from","checked","onChange","setView","closeModal","radio","onClick","currentTarget","label","CLICK","mapRect","swipeSliderX","getCanvas","flat","addControl","timelines","timeSlider","controlOptions","assign","controls","setSecondaryMapStyle","mainMapRect","mapOptions","apiLocation","defaultBaseLayer","crossOrigin","insertAdjacentElement","secondaryMap","mustBeExportable","linkMap","linkTo","updateClipping","updateAlpha","ResizeObserver","cbsElm","idx","onResize","_updateSwipeSliderPosition","setSpyglassRadius","updateViewports","onMouseMove","currentMouseMoveTime","hasMouse","currentView","mainMapAlpha","PROJECTIONCHANGE","sm","projectionOptions","crs","newCrs","firstOption","isRaster","crsList","getCompatibleCRS","CRSCodesEqual","setProjection","removeViewClasses","className","secondaryLayerVisibility","viewClass","swipeSlider","spyglass","eventType","handlers","endsWith","secondary","viewport","getViewport","vp","_removeAllLayerReplicas","stroke","mainBaseLayerSelectorTitle","secondaryBaseLayerSelectorTitle","visible","setVisibility","updateMapSizes","checkedRadio","setSingleView","setSplitView","setTransparencyView","setSwipeView","setSpyView","setTimelineView","dialog","showModal","transferEvent","targetMaps","TouchEvent","isInsideViewport","getEventTransferTargetMaps","newEvent","WheelEvent","MouseWheelEvent","MouseEvent","getMapPointForEvent","showCursors","cursor","visibility","hideCursors","eventHandlers","mousemove","forSplitView","vpRect","currentMapRect","pointerdown","pointerup","pointermove","wheel","mousewheel","drop","DragEvent","touchstart","touchmove","touchend","layerUpdatekey","LAYERADD","LAYERUPDATE","LAYERORDER","UPDATEPARAMS","LAYERVISIBILITY","LAYEROPACITY","FEATURESADD","FEATURESCLEAR","layerUpdate","isBase","_replicateLayer","featureAddForMain","FEATUREADD","_replicateFeature","feature","featureRemove","FEATUREREMOVE","_removeFeatureReplicas","featuresClearForMain","removeFeature","layerRemove","LAYERREMOVE","_removeLayerReplicas","featureAddForSec","secMap","featureRemoveForSec","featuresClearForSec","original","_getLayerOriginal","workLayers","layerReplicas","_replicateControl","featureTools","FeatureTools","onDragMove","pointer","moveVector","sliderRect","slider","_sliderDrag","setMouseSpyView","setTouchSpyView","spyglassRect","_spyglassX","_spyglassY","_spyglassDrag","forSpyView","isAvailable","timeline","newLayerId","layerId","obj","setBaseLayer","spyglassStyle","sliderLeft","Path2D","rect","sgx","sgy","addPath","strokePath","strokeWidth","strokeColor","setOpacity","layerOrId","getLayer","getVisibility","getOpacity","_getLayerReplicas","_layerReplicas","layersToAdd","clone","res","rej","lrPromises","addLayer","_layerOriginals","sortedLayers","ob","slIdx","setLayerIndex","baseLayers","_featureReplicas","WeakMap","parentLayer","otherLayers","clones","setId","arr","replicas","addFeature","showsPopup","delete","removeLayer","_replicateWorkLayers","_workLayerClones","updateControlStatus","activeControl","originalControl","Draw","containerControl","_controlReplicas","ctlReplica","Measure","setMode","activate","deactivate","filterLayerReplicas","filterLayer","resultsLayerReplicas","resultsLayer","ctlReplicas","CONTROLACTIVATE","CONTROLDEACTIVATE","drawControls","dc","MEASURE","MEASUREPARTIAL","showMeasurements","setLayer","FeatureInfoCommons","isActive","exportState","importState","stepMatch","unitsPerStep","input","_msPerUnit","msPerUnit","YEAR","MONTH","DAY","HOUR","MINUTE","SECOND","_stepValue","currentTimeline","configTimeline","timelineArray","optObj","nextObj","displayValue","getLayerIdsFromDate","getSliderTime","setPreviousLayer","setNextLayer","enabled","DISABLED","disabled","forceUpdate","MAX_MILLISECONDS","startTimestamp","endTimestamp","stepCount","xColumn","yColumn","timeTick","loadJS","thumbMock","thumbMockRect","thumbWidth","thumbHeight","sliderWidth","stepWidth","marginTime","chartOptions","pattern","outer","centered","getDateString","layerRange","getLayerRange","getValue","ts","dts","dateStringOptions","dateStyle","timeStyle","toLocaleString","isLayerinTimelines","some","setAdjacentLayer","validationFunction","currentLayerRange","nextLayerRange","nextLayerId","nextLayerValidate","current","candidate","provisional","prevLayerValidate","results","setMapSizeAndPosition","mainMap","denominator","olMap","mapWidth","mapHeight","isPortrait","setSize","mapStyle","mapLeft","mapTop","percentage"],"mappings":"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","file":"bundle.js","sourcesContent":["(function() {\r\n const isOrto = layer => layer.id.indexOf('ortofoto') >= 0;\r\n TC.Cfg.availableBaseLayers = TC.Cfg.availableBaseLayers.concat([\r\n {\r\n id: 'ortofoto2011',\r\n title: 'Ortofoto 2011',\r\n type: 'WMS',\r\n url: '//idena.navarra.es/ogc/wms',\r\n layerNames: ['IDENA:ortofoto_5000_2011'],\r\n thumbnail: 'img/thumb-orto2011.jpg'\r\n },\r\n {\r\n id: 'ortofoto2010',\r\n title: 'Ortofoto 2010',\r\n type: 'WMS',\r\n url: '//idena.navarra.es/ogc/wms',\r\n layerNames: ['IDENA:ortofoto_5000_2010'],\r\n thumbnail: 'img/thumb-orto2010.jpg'\r\n },\r\n {\r\n id: 'ortofoto2009',\r\n title: 'Ortofoto 2009',\r\n type: 'WMS',\r\n url: '//idena.navarra.es/ogc/wms',\r\n layerNames: ['IDENA:ortofoto_5000_2009'],\r\n thumbnail: 'img/thumb-orto2009.jpg'\r\n },\r\n {\r\n id: 'ortofoto2008',\r\n title: 'Ortofoto 2008',\r\n type: 'WMS',\r\n url: '//idena.navarra.es/ogc/wms',\r\n layerNames: ['IDENA:ortofoto_5000_2008'],\r\n thumbnail: 'img/thumb-orto2008.jpg'\r\n },\r\n {\r\n id: 'ortofoto2006',\r\n title: 'Ortofoto 2006',\r\n type: 'WMS',\r\n url: '//idena.navarra.es/ogc/wms',\r\n layerNames: ['IDENA:ortofoto_5000_2006'],\r\n thumbnail: 'img/thumb-orto2006.jpg'\r\n },\r\n {\r\n id: 'ortofoto2005',\r\n title: 'Ortofoto 2005',\r\n type: 'WMS',\r\n url: '//idena.navarra.es/ogc/wms',\r\n layerNames: ['IDENA:ortofoto_5000_2005'],\r\n thumbnail: 'img/thumb-orto2005.jpg'\r\n },\r\n {\r\n id: 'ortofoto2004',\r\n title: 'Ortofoto 2004',\r\n type: 'WMS',\r\n url: '//idena.navarra.es/ogc/wms',\r\n layerNames: ['IDENA:ortofoto_5000_2004'],\r\n thumbnail: 'img/thumb-orto2004.jpg'\r\n },\r\n {\r\n id: 'ortofoto2003',\r\n title: 'Ortofoto 2003',\r\n type: 'WMS',\r\n url: '//idena.navarra.es/ogc/wms',\r\n layerNames: ['IDENA:ortofoto_5000_2003'],\r\n thumbnail: 'img/thumb-orto2003.jpg'\r\n },\r\n {\r\n id: 'ortofoto2000',\r\n title: 'Ortofoto 2000 comarca de Pamplona',\r\n type: 'WMS',\r\n url: '//idena.navarra.es/ogc/wms',\r\n layerNames: ['IDENA:ortofoto_2000_comarca'],\r\n thumbnail: 'img/thumb-orto2000.jpg'\r\n },\r\n {\r\n id: 'ortofoto19991000',\r\n title: 'Ortofoto 1999-2010 1/1000',\r\n type: 'WMS',\r\n url: '//idena.navarra.es/ogc/wms',\r\n layerNames: ['IDENA:ortofoto_1000_siun'],\r\n thumbnail: 'img/thumb-orto1000.jpg'\r\n },\r\n {\r\n id: 'ortofoto1998_2000',\r\n title: 'Ortofoto 1998-2000',\r\n type: 'WMS',\r\n url: '//idena.navarra.es/ogc/wms',\r\n layerNames: ['IDENA:ortofoto_5000_98_00'],\r\n thumbnail: 'img/thumb-orto1998-2000.jpg'\r\n },\r\n {\r\n id: 'ortofoto1992_1996',\r\n title: 'Ortofoto 1992-1996',\r\n type: 'WMS',\r\n url: '//idena.navarra.es/ogc/wms',\r\n layerNames: ['IDENA:ortofoto_5000_1992_1996'],\r\n thumbnail: 'img/thumb-orto1992-1996.jpg'\r\n },\r\n {\r\n id: 'ortofoto1991_1994',\r\n title: 'Ortofoto 1991-1995',\r\n type: 'WMS',\r\n url: '//idena.navarra.es/ogc/wms',\r\n layerNames: ['IDENA:ortofoto_25000_1991_1994'],\r\n thumbnail: 'img/thumb-orto1991-1994.jpg'\r\n },\r\n {\r\n id: 'ortofoto1987',\r\n title: 'Ortofoto 1987-1991',\r\n type: 'WMS',\r\n url: '//idena.navarra.es/ogc/wms',\r\n layerNames: ['IDENA:ortofoto_5000_1987'],\r\n thumbnail: 'img/thumb-orto1987.jpg'\r\n },\r\n {\r\n id: 'ortofoto1982_1984',\r\n title: 'Ortofoto 1982-1984',\r\n type: 'WMS',\r\n url: '//idena.navarra.es/ogc/wms',\r\n layerNames: ['IDENA:ortofoto_5000_1982_1984'],\r\n thumbnail: 'img/thumb-orto1982-1984.jpg'\r\n },\r\n {\r\n id: 'ortofoto1982',\r\n title: 'Ortofoto 1982',\r\n type: 'WMS',\r\n url: '//idena.navarra.es/ogc/wms',\r\n layerNames: ['IDENA:ortofoto_5000_1982'],\r\n thumbnail: 'img/thumb-orto1982.jpg'\r\n },\r\n {\r\n id: 'ortofoto1966',\r\n title: 'Ortofoto 1966-1971',\r\n type: 'WMS',\r\n url: '//idena.navarra.es/ogc/wms',\r\n layerNames: ['IDENA:ortofoto_5000_1966'],\r\n thumbnail: 'img/thumb-orto1966.jpg'\r\n },\r\n {\r\n id: 'ortofoto1957',\r\n title: 'Ortofoto 1956-1957',\r\n type: 'WMS',\r\n url: '//idena.navarra.es/ogc/wms',\r\n layerNames: ['IDENA:ortofoto_10000_1957'],\r\n thumbnail: 'img/thumb-orto1957.jpg'\r\n },\r\n {\r\n id: 'ortofoto1945',\r\n title: 'Pseudo-ortofoto 1945-1946',\r\n type: 'WMS',\r\n url: '//idena.navarra.es/ogc/wms',\r\n layerNames: ['IDENA:ortofoto_10000_1945'],\r\n thumbnail: 'img/thumb-orto1945.jpg'\r\n },\r\n {\r\n id: 'ortofoto1929',\r\n title: 'Pseudo-ortofoto 1927-1934',\r\n type: 'WMS',\r\n url: '//idena.navarra.es/ogc/wms',\r\n layerNames: ['IDENA:ortofoto_2500_1929'],\r\n thumbnail: 'img/thumb-orto1929.jpg'\r\n }\r\n ]).sort(function (a, b) {\r\n if (b.id === TC.Consts.layer.IDENA_BASEMAP) {\r\n return 1;\r\n }\r\n else if (b.id === TC.Consts.layer.IDENA_ORTHOPHOTO && a.id !== TC.Consts.layer.IDENA_BASEMAP) {\r\n return 1;\r\n }\r\n else if (a.id === TC.Consts.layer.IDENA_BASEMAP) {\r\n return -1;\r\n }\r\n else if (a.id === TC.Consts.layer.IDENA_ORTHOPHOTO && b.id !== TC.Consts.layer.IDENA_BASEMAP) {\r\n return -1;\r\n }\r\n else if (isOrto(a)) {\r\n if (isOrto(b)) {\r\n return b.id.localeCompare(a.id);\r\n }\r\n else {\r\n return -1;\r\n }\r\n }\r\n else {\r\n if (isOrto(b)) {\r\n return 1;\r\n }\r\n }\r\n return 0;\r\n });\r\n\r\n})();\r\n\r\nconst ComparaMapas = {\r\n locale: TC.Util.getLocaleUserChoice({\r\n cookieName: 'ComparaMapas.language'\r\n })\r\n};\r\n\r\nComparaMapas.map = new TC.Map(\"map\", {\r\n layout: {\r\n markup: 'layout/markup.html',\r\n style: 'layout/style.css',\r\n config: 'layout/config.json',\r\n script: '//sitna.navarra.es/api/layout/responsive/script.js',\r\n i18n: 'layout/resources/'\r\n },\r\n locale: ComparaMapas.locale\r\n});\r\n\r\n\r\nComparaMapas.map.ready(function () {\r\n var locale = ComparaMapas.map.options.locale;\r\n document.querySelectorAll('[data-gn-i18n]').forEach(function (elm) {\r\n var html = elm.innerHTML;\r\n const braces = html\r\n .match(/\\{\\{([^\\{\\}]+)\\}\\}/g);\r\n if (braces) {\r\n for (var i = 0, len = braces.length; i < len; i++) {\r\n var b = braces[i];\r\n var key = b.match(/[^\\{\\}]+/)[0];\r\n html = html.replace(b, TC.Util.getLocaleString(locale, key));\r\n }\r\n }\r\n elm.innerHTML = html;\r\n });\r\n\r\n const esLinks = document.querySelectorAll('.lang-link-es');\r\n const euLinks = document.querySelectorAll('.lang-link-eu');\r\n const enLinks = document.querySelectorAll('.lang-link-en');\r\n\r\n var currentLangLinks;\r\n switch (ComparaMapas.locale) {\r\n case 'eu-ES':\r\n currentLangLinks = euLinks;\r\n break;\r\n case 'es-ES':\r\n currentLangLinks = esLinks;\r\n break;\r\n default:\r\n currentLangLinks = enLinks;\r\n break;\r\n }\r\n currentLangLinks.forEach(function (link) {\r\n link.classList.add(TC.Consts.classes.ACTIVE);\r\n });\r\n\r\n // ActualizaciĂłn de los enlaces de idiomas\r\n // Parche para detectar cambios en el hash. Lo usamos para actualizar los enlaces a los idiomas\r\n var pushState = history.pushState;\r\n history.pushState = function (state) {\r\n var result;\r\n //if (typeof history.onpushstate == \"function\") {\r\n // history.onpushstate({ state: state });\r\n //}\r\n result = pushState.apply(history, arguments);\r\n var params = TC.Util.getQueryStringParams();\r\n params.lang = 'es';\r\n var href = location.pathname + '?' + TC.Util.getParamString(params) + location.hash;\r\n esLinks.forEach(function (link) {\r\n link.setAttribute('href', href);\r\n });\r\n euLinks.forEach(function (link) {\r\n link.setAttribute('href', href.replace('lang=es', 'lang=eu'));\r\n });\r\n enLinks.forEach(function (link) {\r\n link.setAttribute('href', href.replace('lang=es', 'lang=en'));\r\n });\r\n return result;\r\n }\r\n\r\n const onclick = function (e) {\r\n document.querySelectorAll('#language-links a').forEach(elm => elm.classList.toggle(TC.Consts.classes.HIDDEN));\r\n };\r\n\r\n document.querySelector('.lang-select').addEventListener('click', onclick);\r\n document.querySelectorAll('#language-links a').forEach(elm => elm.addEventListener('click', onclick));\r\n});\r\n\r\n\r\nComparaMapas.map.loaded(function () {\r\n window.addEventListener('resize', function (e) {\r\n ComparaMapas.map.getControlsByClass(TC.control.TimeSlider).forEach(ctl => ctl.update(true));\r\n });\r\n});\r\n","!function () {\r\n function n(n) { return n && (n.ownerDocument || n.document || n).documentElement } function t(n) { return n && (n.ownerDocument && n.ownerDocument.defaultView || n.document && n || n.defaultView) } function e(n, t) { return t > n ? -1 : n > t ? 1 : n >= t ? 0 : NaN } function r(n) { return null === n ? NaN : +n } function u(n) { return !isNaN(n) } function i(n) { return { left: function (t, e, r, u) { for (arguments.length < 3 && (r = 0), arguments.length < 4 && (u = t.length) ; u > r;) { var i = r + u >>> 1; n(t[i], e) < 0 ? r = i + 1 : u = i } return r }, right: function (t, e, r, u) { for (arguments.length < 3 && (r = 0), arguments.length < 4 && (u = t.length) ; u > r;) { var i = r + u >>> 1; n(t[i], e) > 0 ? u = i : r = i + 1 } return r } } } function a(n) { return n.length } function o(n) { for (var t = 1; n * t % 1;) t *= 10; return t } function l(n, t) { for (var e in t) Object.defineProperty(n.prototype, e, { value: t[e], enumerable: !1 }) } function c() { this._ = Object.create(null) } function s(n) { return (n += \"\") === xa || n[0] === ba ? ba + n : n } function f(n) { return (n += \"\")[0] === ba ? n.slice(1) : n } function h(n) { return s(n) in this._ } function g(n) { return (n = s(n)) in this._ && delete this._[n] } function p() { var n = []; for (var t in this._) n.push(f(t)); return n } function v() { var n = 0; for (var t in this._)++n; return n } function d() { for (var n in this._) return !1; return !0 } function m() { this._ = Object.create(null) } function y(n) { return n } function M(n, t, e) { return function () { var r = e.apply(t, arguments); return r === t ? n : r } } function x(n, t) { if (t in n) return t; t = t.charAt(0).toUpperCase() + t.slice(1); for (var e = 0, r = _a.length; r > e; ++e) { var u = _a[e] + t; if (u in n) return u } } function b() { } function _() { } function w(n) { function t() { for (var t, r = e, u = -1, i = r.length; ++u < i;) (t = r[u].on) && t.apply(this, arguments); return n } var e = [], r = new c; return t.on = function (t, u) { var i, a = r.get(t); return arguments.length < 2 ? a && a.on : (a && (a.on = null, e = e.slice(0, i = e.indexOf(a)).concat(e.slice(i + 1)), r.remove(t)), u && e.push(r.set(t, { on: u })), n) }, t } function S() { oa.event.preventDefault() } function k() { for (var n, t = oa.event; n = t.sourceEvent;) t = n; return t } function N(n) { for (var t = new _, e = 0, r = arguments.length; ++e < r;) t[arguments[e]] = w(t); return t.of = function (e, r) { return function (u) { try { var i = u.sourceEvent = oa.event; u.target = n, oa.event = u, t[u.type].apply(e, r) } finally { oa.event = i } } }, t } function E(n) { return Sa(n, Aa), n } function A(n) { return \"function\" == typeof n ? n : function () { return ka(n, this) } } function C(n) { return \"function\" == typeof n ? n : function () { return Na(n, this) } } function z(n, t) { function e() { this.removeAttribute(n) } function r() { this.removeAttributeNS(n.space, n.local) } function u() { this.setAttribute(n, t) } function i() { this.setAttributeNS(n.space, n.local, t) } function a() { var e = t.apply(this, arguments); null == e ? this.removeAttribute(n) : this.setAttribute(n, e) } function o() { var e = t.apply(this, arguments); null == e ? this.removeAttributeNS(n.space, n.local) : this.setAttributeNS(n.space, n.local, e) } return n = oa.ns.qualify(n), null == t ? n.local ? r : e : \"function\" == typeof t ? n.local ? o : a : n.local ? i : u } function L(n) { return n.trim().replace(/\\s+/g, \" \") } function q(n) { return new RegExp(\"(?:^|\\\\s+)\" + oa.requote(n) + \"(?:\\\\s+|$)\", \"g\") } function T(n) { return (n + \"\").trim().split(/^|\\s+/) } function R(n, t) { function e() { for (var e = -1; ++e < u;) n[e](this, t) } function r() { for (var e = -1, r = t.apply(this, arguments) ; ++e < u;) n[e](this, r) } n = T(n).map(D); var u = n.length; return \"function\" == typeof t ? r : e } function D(n) { var t = q(n); return function (e, r) { if (u = e.classList) return r ? u.add(n) : u.remove(n); var u = e.getAttribute(\"class\") || \"\"; r ? (t.lastIndex = 0, t.test(u) || e.setAttribute(\"class\", L(u + \" \" + n))) : e.setAttribute(\"class\", L(u.replace(t, \" \"))) } } function P(n, t, e) { function r() { this.style.removeProperty(n) } function u() { this.style.setProperty(n, t, e) } function i() { var r = t.apply(this, arguments); null == r ? this.style.removeProperty(n) : this.style.setProperty(n, r, e) } return null == t ? r : \"function\" == typeof t ? i : u } function j(n, t) { function e() { delete this[n] } function r() { this[n] = t } function u() { var e = t.apply(this, arguments); null == e ? delete this[n] : this[n] = e } return null == t ? e : \"function\" == typeof t ? u : r } function U(n) { function t() { var t = this.ownerDocument, e = this.namespaceURI; return e ? t.createElementNS(e, n) : t.createElement(n) } function e() { return this.ownerDocument.createElementNS(n.space, n.local) } return \"function\" == typeof n ? n : (n = oa.ns.qualify(n)).local ? e : t } function F() { var n = this.parentNode; n && n.removeChild(this) } function H(n) { return { __data__: n } } function O(n) { return function () { return Ea(this, n) } } function I(n) { return arguments.length || (n = e), function (t, e) { return t && e ? n(t.__data__, e.__data__) : !t - !e } } function Y(n, t) { for (var e = 0, r = n.length; r > e; e++) for (var u, i = n[e], a = 0, o = i.length; o > a; a++) (u = i[a]) && t(u, a, e); return n } function Z(n) { return Sa(n, za), n } function V(n) { var t, e; return function (r, u, i) { var a, o = n[i].update, l = o.length; for (i != e && (e = i, t = 0), u >= t && (t = u + 1) ; !(a = o[t]) && ++t < l;); return a } } function X(n, t, e) { function r() { var t = this[a]; t && (this.removeEventListener(n, t, t.$), delete this[a]) } function u() { var u = l(t, ca(arguments)); r.call(this), this.addEventListener(n, this[a] = u, u.$ = e), u._ = t } function i() { var t, e = new RegExp(\"^__on([^.]+)\" + oa.requote(n) + \"$\"); for (var r in this) if (t = r.match(e)) { var u = this[r]; this.removeEventListener(t[1], u, u.$), delete this[r] } } var a = \"__on\" + n, o = n.indexOf(\".\"), l = $; o > 0 && (n = n.slice(0, o)); var c = La.get(n); return c && (n = c, l = B), o ? t ? u : r : t ? b : i } function $(n, t) { return function (e) { var r = oa.event; oa.event = e, t[0] = this.__data__; try { n.apply(this, t) } finally { oa.event = r } } } function B(n, t) { var e = $(n, t); return function (n) { var t = this, r = n.relatedTarget; r && (r === t || 8 & r.compareDocumentPosition(t)) || e.call(t, n) } } function W(e) { var r = \".dragsuppress-\" + ++Ta, u = \"click\" + r, i = oa.select(t(e)).on(\"touchmove\" + r, S).on(\"dragstart\" + r, S).on(\"selectstart\" + r, S); if (null == qa && (qa = \"onselectstart\" in e ? !1 : x(e.style, \"userSelect\")), qa) { var a = n(e).style, o = a[qa]; a[qa] = \"none\" } return function (n) { if (i.on(r, null), qa && (a[qa] = o), n) { var t = function () { i.on(u, null) }; i.on(u, function () { S(), t() }, !0), setTimeout(t, 0) } } } function J(n, e) { e.changedTouches && (e = e.changedTouches[0]); var r = n.ownerSVGElement || n; if (r.createSVGPoint) { var u = r.createSVGPoint(); if (0 > Ra) { var i = t(n); if (i.scrollX || i.scrollY) { r = oa.select(\"body\").append(\"svg\").style({ position: \"absolute\", top: 0, left: 0, margin: 0, padding: 0, border: \"none\" }, \"important\"); var a = r[0][0].getScreenCTM(); Ra = !(a.f || a.e), r.remove() } } return Ra ? (u.x = e.pageX, u.y = e.pageY) : (u.x = e.clientX, u.y = e.clientY), u = u.matrixTransform(n.getScreenCTM().inverse()), [u.x, u.y] } var o = n.getBoundingClientRect(); return [e.clientX - o.left - n.clientLeft, e.clientY - o.top - n.clientTop] } function G() { return oa.event.changedTouches[0].identifier } function K(n) { return n > 0 ? 1 : 0 > n ? -1 : 0 } function Q(n, t, e) { return (t[0] - n[0]) * (e[1] - n[1]) - (t[1] - n[1]) * (e[0] - n[0]) } function nn(n) { return n > 1 ? 0 : -1 > n ? ja : Math.acos(n) } function tn(n) { return n > 1 ? Ha : -1 > n ? -Ha : Math.asin(n) } function en(n) { return ((n = Math.exp(n)) - 1 / n) / 2 } function rn(n) { return ((n = Math.exp(n)) + 1 / n) / 2 } function un(n) { return ((n = Math.exp(2 * n)) - 1) / (n + 1) } function an(n) { return (n = Math.sin(n / 2)) * n } function on() { } function ln(n, t, e) { return this instanceof ln ? (this.h = +n, this.s = +t, void (this.l = +e)) : arguments.length < 2 ? n instanceof ln ? new ln(n.h, n.s, n.l) : _n(\"\" + n, wn, ln) : new ln(n, t, e) } function cn(n, t, e) { function r(n) { return n > 360 ? n -= 360 : 0 > n && (n += 360), 60 > n ? i + (a - i) * n / 60 : 180 > n ? a : 240 > n ? i + (a - i) * (240 - n) / 60 : i } function u(n) { return Math.round(255 * r(n)) } var i, a; return n = isNaN(n) ? 0 : (n %= 360) < 0 ? n + 360 : n, t = isNaN(t) ? 0 : 0 > t ? 0 : t > 1 ? 1 : t, e = 0 > e ? 0 : e > 1 ? 1 : e, a = .5 >= e ? e * (1 + t) : e + t - e * t, i = 2 * e - a, new yn(u(n + 120), u(n), u(n - 120)) } function sn(n, t, e) { return this instanceof sn ? (this.h = +n, this.c = +t, void (this.l = +e)) : arguments.length < 2 ? n instanceof sn ? new sn(n.h, n.c, n.l) : n instanceof hn ? pn(n.l, n.a, n.b) : pn((n = Sn((n = oa.rgb(n)).r, n.g, n.b)).l, n.a, n.b) : new sn(n, t, e) } function fn(n, t, e) { return isNaN(n) && (n = 0), isNaN(t) && (t = 0), new hn(e, Math.cos(n *= Oa) * t, Math.sin(n) * t) } function hn(n, t, e) { return this instanceof hn ? (this.l = +n, this.a = +t, void (this.b = +e)) : arguments.length < 2 ? n instanceof hn ? new hn(n.l, n.a, n.b) : n instanceof sn ? fn(n.h, n.c, n.l) : Sn((n = yn(n)).r, n.g, n.b) : new hn(n, t, e) } function gn(n, t, e) { var r = (n + 16) / 116, u = r + t / 500, i = r - e / 200; return u = vn(u) * Ka, r = vn(r) * Qa, i = vn(i) * no, new yn(mn(3.2404542 * u - 1.5371385 * r - .4985314 * i), mn(-.969266 * u + 1.8760108 * r + .041556 * i), mn(.0556434 * u - .2040259 * r + 1.0572252 * i)) } function pn(n, t, e) { return n > 0 ? new sn(Math.atan2(e, t) * Ia, Math.sqrt(t * t + e * e), n) : new sn(NaN, NaN, n) } function vn(n) { return n > .206893034 ? n * n * n : (n - 4 / 29) / 7.787037 } function dn(n) { return n > .008856 ? Math.pow(n, 1 / 3) : 7.787037 * n + 4 / 29 } function mn(n) { return Math.round(255 * (.00304 >= n ? 12.92 * n : 1.055 * Math.pow(n, 1 / 2.4) - .055)) } function yn(n, t, e) { return this instanceof yn ? (this.r = ~~n, this.g = ~~t, void (this.b = ~~e)) : arguments.length < 2 ? n instanceof yn ? new yn(n.r, n.g, n.b) : _n(\"\" + n, yn, cn) : new yn(n, t, e) } function Mn(n) { return new yn(n >> 16, n >> 8 & 255, 255 & n) } function xn(n) { return Mn(n) + \"\" } function bn(n) { return 16 > n ? \"0\" + Math.max(0, n).toString(16) : Math.min(255, n).toString(16) } function _n(n, t, e) { var r, u, i, a = 0, o = 0, l = 0; if (r = /([a-z]+)\\((.*)\\)/.exec(n = n.toLowerCase())) switch (u = r[2].split(\",\"), r[1]) { case \"hsl\": return e(parseFloat(u[0]), parseFloat(u[1]) / 100, parseFloat(u[2]) / 100); case \"rgb\": return t(Nn(u[0]), Nn(u[1]), Nn(u[2])) } return (i = ro.get(n)) ? t(i.r, i.g, i.b) : (null == n || \"#\" !== n.charAt(0) || isNaN(i = parseInt(n.slice(1), 16)) || (4 === n.length ? (a = (3840 & i) >> 4, a = a >> 4 | a, o = 240 & i, o = o >> 4 | o, l = 15 & i, l = l << 4 | l) : 7 === n.length && (a = (16711680 & i) >> 16, o = (65280 & i) >> 8, l = 255 & i)), t(a, o, l)) } function wn(n, t, e) { var r, u, i = Math.min(n /= 255, t /= 255, e /= 255), a = Math.max(n, t, e), o = a - i, l = (a + i) / 2; return o ? (u = .5 > l ? o / (a + i) : o / (2 - a - i), r = n == a ? (t - e) / o + (e > t ? 6 : 0) : t == a ? (e - n) / o + 2 : (n - t) / o + 4, r *= 60) : (r = NaN, u = l > 0 && 1 > l ? 0 : r), new ln(r, u, l) } function Sn(n, t, e) { n = kn(n), t = kn(t), e = kn(e); var r = dn((.4124564 * n + .3575761 * t + .1804375 * e) / Ka), u = dn((.2126729 * n + .7151522 * t + .072175 * e) / Qa), i = dn((.0193339 * n + .119192 * t + .9503041 * e) / no); return hn(116 * u - 16, 500 * (r - u), 200 * (u - i)) } function kn(n) { return (n /= 255) <= .04045 ? n / 12.92 : Math.pow((n + .055) / 1.055, 2.4) } function Nn(n) { var t = parseFloat(n); return \"%\" === n.charAt(n.length - 1) ? Math.round(2.55 * t) : t } function En(n) { return \"function\" == typeof n ? n : function () { return n } } function An(n) { return function (t, e, r) { return 2 === arguments.length && \"function\" == typeof e && (r = e, e = null), Cn(t, e, n, r) } } function Cn(n, t, e, r) { function u() { var n, t = l.status; if (!t && Ln(l) || t >= 200 && 300 > t || 304 === t) { try { n = e.call(i, l) } catch (r) { return void a.error.call(i, r) } a.load.call(i, n) } else a.error.call(i, l) } var i = {}, a = oa.dispatch(\"beforesend\", \"progress\", \"load\", \"error\"), o = {}, l = new XMLHttpRequest, c = null; return !this.XDomainRequest || \"withCredentials\" in l || !/^(http(s)?:)?\\/\\//.test(n) || (l = new XDomainRequest), \"onload\" in l ? l.onload = l.onerror = u : l.onreadystatechange = function () { l.readyState > 3 && u() }, l.onprogress = function (n) { var t = oa.event; oa.event = n; try { a.progress.call(i, l) } finally { oa.event = t } }, i.header = function (n, t) { return n = (n + \"\").toLowerCase(), arguments.length < 2 ? o[n] : (null == t ? delete o[n] : o[n] = t + \"\", i) }, i.mimeType = function (n) { return arguments.length ? (t = null == n ? null : n + \"\", i) : t }, i.responseType = function (n) { return arguments.length ? (c = n, i) : c }, i.response = function (n) { return e = n, i }, [\"get\", \"post\"].forEach(function (n) { i[n] = function () { return i.send.apply(i, [n].concat(ca(arguments))) } }), i.send = function (e, r, u) { if (2 === arguments.length && \"function\" == typeof r && (u = r, r = null), l.open(e, n, !0), null == t || \"accept\" in o || (o.accept = t + \",*/*\"), l.setRequestHeader) for (var s in o) l.setRequestHeader(s, o[s]); return null != t && l.overrideMimeType && l.overrideMimeType(t), null != c && (l.responseType = c), null != u && i.on(\"error\", u).on(\"load\", function (n) { u(null, n) }), a.beforesend.call(i, l), l.send(null == r ? null : r), i }, i.abort = function () { return l.abort(), i }, oa.rebind(i, a, \"on\"), null == r ? i : i.get(zn(r)) } function zn(n) { return 1 === n.length ? function (t, e) { n(null == t ? e : null) } : n } function Ln(n) { var t = n.responseType; return t && \"text\" !== t ? n.response : n.responseText } function qn(n, t, e) { var r = arguments.length; 2 > r && (t = 0), 3 > r && (e = Date.now()); var u = e + t, i = { c: n, t: u, n: null }; return io ? io.n = i : uo = i, io = i, ao || (oo = clearTimeout(oo), ao = 1, lo(Tn)), i } function Tn() { var n = Rn(), t = Dn() - n; t > 24 ? (isFinite(t) && (clearTimeout(oo), oo = setTimeout(Tn, t)), ao = 0) : (ao = 1, lo(Tn)) } function Rn() { for (var n = Date.now(), t = uo; t;) n >= t.t && t.c(n - t.t) && (t.c = null), t = t.n; return n } function Dn() { for (var n, t = uo, e = 1 / 0; t;) t.c ? (t.t < e && (e = t.t), t = (n = t).n) : t = n ? n.n = t.n : uo = t.n; return io = n, e } function Pn(n, t) { return t - (n ? Math.ceil(Math.log(n) / Math.LN10) : 1) } function jn(n, t) { var e = Math.pow(10, 3 * Ma(8 - t)); return { scale: t > 8 ? function (n) { return n / e } : function (n) { return n * e }, symbol: n } } function Un(n) { var t = n.decimal, e = n.thousands, r = n.grouping, u = n.currency, i = r && e ? function (n, t) { for (var u = n.length, i = [], a = 0, o = r[0], l = 0; u > 0 && o > 0 && (l + o + 1 > t && (o = Math.max(1, t - l)), i.push(n.substring(u -= o, u + o)), !((l += o + 1) > t)) ;) o = r[a = (a + 1) % r.length]; return i.reverse().join(e) } : y; return function (n) { var e = so.exec(n), r = e[1] || \" \", a = e[2] || \">\", o = e[3] || \"-\", l = e[4] || \"\", c = e[5], s = +e[6], f = e[7], h = e[8], g = e[9], p = 1, v = \"\", d = \"\", m = !1, y = !0; switch (h && (h = +h.substring(1)), (c || \"0\" === r && \"=\" === a) && (c = r = \"0\", a = \"=\"), g) { case \"n\": f = !0, g = \"g\"; break; case \"%\": p = 100, d = \"%\", g = \"f\"; break; case \"p\": p = 100, d = \"%\", g = \"r\"; break; case \"b\": case \"o\": case \"x\": case \"X\": \"#\" === l && (v = \"0\" + g.toLowerCase()); case \"c\": y = !1; case \"d\": m = !0, h = 0; break; case \"s\": p = -1, g = \"r\" } \"$\" === l && (v = u[0], d = u[1]), \"r\" != g || h || (g = \"g\"), null != h && (\"g\" == g ? h = Math.max(1, Math.min(21, h)) : (\"e\" == g || \"f\" == g) && (h = Math.max(0, Math.min(20, h)))), g = fo.get(g) || Fn; var M = c && f; return function (n) { var e = d; if (m && n % 1) return \"\"; var u = 0 > n || 0 === n && 0 > 1 / n ? (n = -n, \"-\") : \"-\" === o ? \"\" : o; if (0 > p) { var l = oa.formatPrefix(n, h); n = l.scale(n), e = l.symbol + d } else n *= p; n = g(n, h); var x, b, _ = n.lastIndexOf(\".\"); if (0 > _) { var w = y ? n.lastIndexOf(\"e\") : -1; 0 > w ? (x = n, b = \"\") : (x = n.substring(0, w), b = n.substring(w)) } else x = n.substring(0, _), b = t + n.substring(_ + 1); !c && f && (x = i(x, 1 / 0)); var S = v.length + x.length + b.length + (M ? 0 : u.length), k = s > S ? new Array(S = s - S + 1).join(r) : \"\"; return M && (x = i(k + x, k.length ? s - b.length : 1 / 0)), u += v, n = x + b, (\"<\" === a ? u + n + k : \">\" === a ? k + u + n : \"^\" === a ? k.substring(0, S >>= 1) + u + n + k.substring(S) : u + (M ? n : k + n)) + e } } } function Fn(n) { return n + \"\" } function Hn() { this._ = new Date(arguments.length > 1 ? Date.UTC.apply(this, arguments) : arguments[0]) } function On(n, t, e) { function r(t) { var e = n(t), r = i(e, 1); return r - t > t - e ? e : r } function u(e) { return t(e = n(new go(e - 1)), 1), e } function i(n, e) { return t(n = new go(+n), e), n } function a(n, r, i) { var a = u(n), o = []; if (i > 1) for (; r > a;) e(a) % i || o.push(new Date(+a)), t(a, 1); else for (; r > a;) o.push(new Date(+a)), t(a, 1); return o } function o(n, t, e) { try { go = Hn; var r = new Hn; return r._ = n, a(r, t, e) } finally { go = Date } } n.floor = n, n.round = r, n.ceil = u, n.offset = i, n.range = a; var l = n.utc = In(n); return l.floor = l, l.round = In(r), l.ceil = In(u), l.offset = In(i), l.range = o, n } function In(n) { return function (t, e) { try { go = Hn; var r = new Hn; return r._ = t, n(r, e)._ } finally { go = Date } } } function Yn(n) { function t(n) { function t(t) { for (var e, u, i, a = [], o = -1, l = 0; ++o < r;) 37 === n.charCodeAt(o) && (a.push(n.slice(l, o)), null != (u = vo[e = n.charAt(++o)]) && (e = n.charAt(++o)), (i = A[e]) && (e = i(t, null == u ? \"e\" === e ? \" \" : \"0\" : u)), a.push(e), l = o + 1); return a.push(n.slice(l, o)), a.join(\"\") } var r = n.length; return t.parse = function (t) { var r = { y: 1900, m: 0, d: 1, H: 0, M: 0, S: 0, L: 0, Z: null }, u = e(r, n, t, 0); if (u != t.length) return null; \"p\" in r && (r.H = r.H % 12 + 12 * r.p); var i = null != r.Z && go !== Hn, a = new (i ? Hn : go); return \"j\" in r ? a.setFullYear(r.y, 0, r.j) : \"W\" in r || \"U\" in r ? (\"w\" in r || (r.w = \"W\" in r ? 1 : 0), a.setFullYear(r.y, 0, 1), a.setFullYear(r.y, 0, \"W\" in r ? (r.w + 6) % 7 + 7 * r.W - (a.getDay() + 5) % 7 : r.w + 7 * r.U - (a.getDay() + 6) % 7)) : a.setFullYear(r.y, r.m, r.d), a.setHours(r.H + (r.Z / 100 | 0), r.M + r.Z % 100, r.S, r.L), i ? a._ : a }, t.toString = function () { return n }, t } function e(n, t, e, r) { for (var u, i, a, o = 0, l = t.length, c = e.length; l > o;) { if (r >= c) return -1; if (u = t.charCodeAt(o++), 37 === u) { if (a = t.charAt(o++), i = C[a in vo ? t.charAt(o++) : a], !i || (r = i(n, e, r)) < 0) return -1 } else if (u != e.charCodeAt(r++)) return -1 } return r } function r(n, t, e) { _.lastIndex = 0; var r = _.exec(t.slice(e)); return r ? (n.w = w.get(r[0].toLowerCase()), e + r[0].length) : -1 } function u(n, t, e) { x.lastIndex = 0; var r = x.exec(t.slice(e)); return r ? (n.w = b.get(r[0].toLowerCase()), e + r[0].length) : -1 } function i(n, t, e) { N.lastIndex = 0; var r = N.exec(t.slice(e)); return r ? (n.m = E.get(r[0].toLowerCase()), e + r[0].length) : -1 } function a(n, t, e) { S.lastIndex = 0; var r = S.exec(t.slice(e)); return r ? (n.m = k.get(r[0].toLowerCase()), e + r[0].length) : -1 } function o(n, t, r) { return e(n, A.c.toString(), t, r) } function l(n, t, r) { return e(n, A.x.toString(), t, r) } function c(n, t, r) { return e(n, A.X.toString(), t, r) } function s(n, t, e) { var r = M.get(t.slice(e, e += 2).toLowerCase()); return null == r ? -1 : (n.p = r, e) } var f = n.dateTime, h = n.date, g = n.time, p = n.periods, v = n.days, d = n.shortDays, m = n.months, y = n.shortMonths; t.utc = function (n) { function e(n) { try { go = Hn; var t = new go; return t._ = n, r(t) } finally { go = Date } } var r = t(n); return e.parse = function (n) { try { go = Hn; var t = r.parse(n); return t && t._ } finally { go = Date } }, e.toString = r.toString, e }, t.multi = t.utc.multi = ct; var M = oa.map(), x = Vn(v), b = Xn(v), _ = Vn(d), w = Xn(d), S = Vn(m), k = Xn(m), N = Vn(y), E = Xn(y); p.forEach(function (n, t) { M.set(n.toLowerCase(), t) }); var A = { a: function (n) { return d[n.getDay()] }, A: function (n) { return v[n.getDay()] }, b: function (n) { return y[n.getMonth()] }, B: function (n) { return m[n.getMonth()] }, c: t(f), d: function (n, t) { return Zn(n.getDate(), t, 2) }, e: function (n, t) { return Zn(n.getDate(), t, 2) }, H: function (n, t) { return Zn(n.getHours(), t, 2) }, I: function (n, t) { return Zn(n.getHours() % 12 || 12, t, 2) }, j: function (n, t) { return Zn(1 + ho.dayOfYear(n), t, 3) }, L: function (n, t) { return Zn(n.getMilliseconds(), t, 3) }, m: function (n, t) { return Zn(n.getMonth() + 1, t, 2) }, M: function (n, t) { return Zn(n.getMinutes(), t, 2) }, p: function (n) { return p[+(n.getHours() >= 12)] }, S: function (n, t) { return Zn(n.getSeconds(), t, 2) }, U: function (n, t) { return Zn(ho.sundayOfYear(n), t, 2) }, w: function (n) { return n.getDay() }, W: function (n, t) { return Zn(ho.mondayOfYear(n), t, 2) }, x: t(h), X: t(g), y: function (n, t) { return Zn(n.getFullYear() % 100, t, 2) }, Y: function (n, t) { return Zn(n.getFullYear() % 1e4, t, 4) }, Z: ot, \"%\": function () { return \"%\" } }, C = { a: r, A: u, b: i, B: a, c: o, d: tt, e: tt, H: rt, I: rt, j: et, L: at, m: nt, M: ut, p: s, S: it, U: Bn, w: $n, W: Wn, x: l, X: c, y: Gn, Y: Jn, Z: Kn, \"%\": lt }; return t } function Zn(n, t, e) { var r = 0 > n ? \"-\" : \"\", u = (r ? -n : n) + \"\", i = u.length; return r + (e > i ? new Array(e - i + 1).join(t) + u : u) } function Vn(n) { return new RegExp(\"^(?:\" + n.map(oa.requote).join(\"|\") + \")\", \"i\") } function Xn(n) { for (var t = new c, e = -1, r = n.length; ++e < r;) t.set(n[e].toLowerCase(), e); return t } function $n(n, t, e) { mo.lastIndex = 0; var r = mo.exec(t.slice(e, e + 1)); return r ? (n.w = +r[0], e + r[0].length) : -1 } function Bn(n, t, e) { mo.lastIndex = 0; var r = mo.exec(t.slice(e)); return r ? (n.U = +r[0], e + r[0].length) : -1 } function Wn(n, t, e) { mo.lastIndex = 0; var r = mo.exec(t.slice(e)); return r ? (n.W = +r[0], e + r[0].length) : -1 } function Jn(n, t, e) { mo.lastIndex = 0; var r = mo.exec(t.slice(e, e + 4)); return r ? (n.y = +r[0], e + r[0].length) : -1 } function Gn(n, t, e) { mo.lastIndex = 0; var r = mo.exec(t.slice(e, e + 2)); return r ? (n.y = Qn(+r[0]), e + r[0].length) : -1 } function Kn(n, t, e) { return /^[+-]\\d{4}$/.test(t = t.slice(e, e + 5)) ? (n.Z = -t, e + 5) : -1 } function Qn(n) { return n + (n > 68 ? 1900 : 2e3) } function nt(n, t, e) { mo.lastIndex = 0; var r = mo.exec(t.slice(e, e + 2)); return r ? (n.m = r[0] - 1, e + r[0].length) : -1 } function tt(n, t, e) { mo.lastIndex = 0; var r = mo.exec(t.slice(e, e + 2)); return r ? (n.d = +r[0], e + r[0].length) : -1 } function et(n, t, e) { mo.lastIndex = 0; var r = mo.exec(t.slice(e, e + 3)); return r ? (n.j = +r[0], e + r[0].length) : -1 } function rt(n, t, e) { mo.lastIndex = 0; var r = mo.exec(t.slice(e, e + 2)); return r ? (n.H = +r[0], e + r[0].length) : -1 } function ut(n, t, e) { mo.lastIndex = 0; var r = mo.exec(t.slice(e, e + 2)); return r ? (n.M = +r[0], e + r[0].length) : -1 } function it(n, t, e) { mo.lastIndex = 0; var r = mo.exec(t.slice(e, e + 2)); return r ? (n.S = +r[0], e + r[0].length) : -1 } function at(n, t, e) { mo.lastIndex = 0; var r = mo.exec(t.slice(e, e + 3)); return r ? (n.L = +r[0], e + r[0].length) : -1 } function ot(n) { var t = n.getTimezoneOffset(), e = t > 0 ? \"-\" : \"+\", r = Ma(t) / 60 | 0, u = Ma(t) % 60; return e + Zn(r, \"0\", 2) + Zn(u, \"0\", 2) } function lt(n, t, e) { yo.lastIndex = 0; var r = yo.exec(t.slice(e, e + 1)); return r ? e + r[0].length : -1 } function ct(n) { for (var t = n.length, e = -1; ++e < t;) n[e][0] = this(n[e][0]); return function (t) { for (var e = 0, r = n[e]; !r[1](t) ;) r = n[++e]; return r[0](t) } } function st() { } function ft(n, t, e) { var r = e.s = n + t, u = r - n, i = r - u; e.t = n - i + (t - u) } function ht(n, t) { n && _o.hasOwnProperty(n.type) && _o[n.type](n, t) } function gt(n, t, e) { var r, u = -1, i = n.length - e; for (t.lineStart() ; ++u < i;) r = n[u], t.point(r[0], r[1], r[2]); t.lineEnd() } function pt(n, t) { var e = -1, r = n.length; for (t.polygonStart() ; ++e < r;) gt(n[e], t, 1); t.polygonEnd() } function vt() { function n(n, t) { n *= Oa, t = t * Oa / 2 + ja / 4; var e = n - r, a = e >= 0 ? 1 : -1, o = a * e, l = Math.cos(t), c = Math.sin(t), s = i * c, f = u * l + s * Math.cos(o), h = s * a * Math.sin(o); So.add(Math.atan2(h, f)), r = n, u = l, i = c } var t, e, r, u, i; ko.point = function (a, o) { ko.point = n, r = (t = a) * Oa, u = Math.cos(o = (e = o) * Oa / 2 + ja / 4), i = Math.sin(o) }, ko.lineEnd = function () { n(t, e) } } function dt(n) { var t = n[0], e = n[1], r = Math.cos(e); return [r * Math.cos(t), r * Math.sin(t), Math.sin(e)] } function mt(n, t) { return n[0] * t[0] + n[1] * t[1] + n[2] * t[2] } function yt(n, t) { return [n[1] * t[2] - n[2] * t[1], n[2] * t[0] - n[0] * t[2], n[0] * t[1] - n[1] * t[0]] } function Mt(n, t) { n[0] += t[0], n[1] += t[1], n[2] += t[2] } function xt(n, t) { return [n[0] * t, n[1] * t, n[2] * t] } function bt(n) { var t = Math.sqrt(n[0] * n[0] + n[1] * n[1] + n[2] * n[2]); n[0] /= t, n[1] /= t, n[2] /= t } function _t(n) { return [Math.atan2(n[1], n[0]), tn(n[2])] } function wt(n, t) { return Ma(n[0] - t[0]) < Da && Ma(n[1] - t[1]) < Da } function St(n, t) { n *= Oa; var e = Math.cos(t *= Oa); kt(e * Math.cos(n), e * Math.sin(n), Math.sin(t)) } function kt(n, t, e) { ++No, Ao += (n - Ao) / No, Co += (t - Co) / No, zo += (e - zo) / No } function Nt() { function n(n, u) { n *= Oa; var i = Math.cos(u *= Oa), a = i * Math.cos(n), o = i * Math.sin(n), l = Math.sin(u), c = Math.atan2(Math.sqrt((c = e * l - r * o) * c + (c = r * a - t * l) * c + (c = t * o - e * a) * c), t * a + e * o + r * l); Eo += c, Lo += c * (t + (t = a)), qo += c * (e + (e = o)), To += c * (r + (r = l)), kt(t, e, r) } var t, e, r; jo.point = function (u, i) { u *= Oa; var a = Math.cos(i *= Oa); t = a * Math.cos(u), e = a * Math.sin(u), r = Math.sin(i), jo.point = n, kt(t, e, r) } } function Et() { jo.point = St } function At() { function n(n, t) { n *= Oa; var e = Math.cos(t *= Oa), a = e * Math.cos(n), o = e * Math.sin(n), l = Math.sin(t), c = u * l - i * o, s = i * a - r * l, f = r * o - u * a, h = Math.sqrt(c * c + s * s + f * f), g = r * a + u * o + i * l, p = h && -nn(g) / h, v = Math.atan2(h, g); Ro += p * c, Do += p * s, Po += p * f, Eo += v, Lo += v * (r + (r = a)), qo += v * (u + (u = o)), To += v * (i + (i = l)), kt(r, u, i) } var t, e, r, u, i; jo.point = function (a, o) { t = a, e = o, jo.point = n, a *= Oa; var l = Math.cos(o *= Oa); r = l * Math.cos(a), u = l * Math.sin(a), i = Math.sin(o), kt(r, u, i) }, jo.lineEnd = function () { n(t, e), jo.lineEnd = Et, jo.point = St } } function Ct(n, t) { function e(e, r) { return e = n(e, r), t(e[0], e[1]) } return n.invert && t.invert && (e.invert = function (e, r) { return e = t.invert(e, r), e && n.invert(e[0], e[1]) }), e } function zt() { return !0 } function Lt(n, t, e, r, u) { var i = [], a = []; if (n.forEach(function (n) { if (!((t = n.length - 1) <= 0)) { var t, e = n[0], r = n[t]; if (wt(e, r)) { u.lineStart(); for (var o = 0; t > o; ++o) u.point((e = n[o])[0], e[1]); return void u.lineEnd() } var l = new Tt(e, n, null, !0), c = new Tt(e, null, l, !1); l.o = c, i.push(l), a.push(c), l = new Tt(r, n, null, !1), c = new Tt(r, null, l, !0), l.o = c, i.push(l), a.push(c) } }), a.sort(t), qt(i), qt(a), i.length) { for (var o = 0, l = e, c = a.length; c > o; ++o) a[o].e = l = !l; for (var s, f, h = i[0]; ;) { for (var g = h, p = !0; g.v;) if ((g = g.n) === h) return; s = g.z, u.lineStart(); do { if (g.v = g.o.v = !0, g.e) { if (p) for (var o = 0, c = s.length; c > o; ++o) u.point((f = s[o])[0], f[1]); else r(g.x, g.n.x, 1, u); g = g.n } else { if (p) { s = g.p.z; for (var o = s.length - 1; o >= 0; --o) u.point((f = s[o])[0], f[1]) } else r(g.x, g.p.x, -1, u); g = g.p } g = g.o, s = g.z, p = !p } while (!g.v); u.lineEnd() } } } function qt(n) { if (t = n.length) { for (var t, e, r = 0, u = n[0]; ++r < t;) u.n = e = n[r], e.p = u, u = e; u.n = e = n[0], e.p = u } } function Tt(n, t, e, r) { this.x = n, this.z = t, this.o = e, this.e = r, this.v = !1, this.n = this.p = null } function Rt(n, t, e, r) { return function (u, i) { function a(t, e) { var r = u(t, e); n(t = r[0], e = r[1]) && i.point(t, e) } function o(n, t) { var e = u(n, t); d.point(e[0], e[1]) } function l() { y.point = o, d.lineStart() } function c() { y.point = a, d.lineEnd() } function s(n, t) { v.push([n, t]); var e = u(n, t); x.point(e[0], e[1]) } function f() { x.lineStart(), v = [] } function h() { s(v[0][0], v[0][1]), x.lineEnd(); var n, t = x.clean(), e = M.buffer(), r = e.length; if (v.pop(), p.push(v), v = null, r) if (1 & t) { n = e[0]; var u, r = n.length - 1, a = -1; if (r > 0) { for (b || (i.polygonStart(), b = !0), i.lineStart() ; ++a < r;) i.point((u = n[a])[0], u[1]); i.lineEnd() } } else r > 1 && 2 & t && e.push(e.pop().concat(e.shift())), g.push(e.filter(Dt)) } var g, p, v, d = t(i), m = u.invert(r[0], r[1]), y = { point: a, lineStart: l, lineEnd: c, polygonStart: function () { y.point = s, y.lineStart = f, y.lineEnd = h, g = [], p = [] }, polygonEnd: function () { y.point = a, y.lineStart = l, y.lineEnd = c, g = oa.merge(g); var n = Ot(m, p); g.length ? (b || (i.polygonStart(), b = !0), Lt(g, jt, n, e, i)) : n && (b || (i.polygonStart(), b = !0), i.lineStart(), e(null, null, 1, i), i.lineEnd()), b && (i.polygonEnd(), b = !1), g = p = null }, sphere: function () { i.polygonStart(), i.lineStart(), e(null, null, 1, i), i.lineEnd(), i.polygonEnd() } }, M = Pt(), x = t(M), b = !1; return y } } function Dt(n) { return n.length > 1 } function Pt() { var n, t = []; return { lineStart: function () { t.push(n = []) }, point: function (t, e) { n.push([t, e]) }, lineEnd: b, buffer: function () { var e = t; return t = [], n = null, e }, rejoin: function () { t.length > 1 && t.push(t.pop().concat(t.shift())) } } } function jt(n, t) { return ((n = n.x)[0] < 0 ? n[1] - Ha - Da : Ha - n[1]) - ((t = t.x)[0] < 0 ? t[1] - Ha - Da : Ha - t[1]) } function Ut(n) { var t, e = NaN, r = NaN, u = NaN; return { lineStart: function () { n.lineStart(), t = 1 }, point: function (i, a) { var o = i > 0 ? ja : -ja, l = Ma(i - e); Ma(l - ja) < Da ? (n.point(e, r = (r + a) / 2 > 0 ? Ha : -Ha), n.point(u, r), n.lineEnd(), n.lineStart(), n.point(o, r), n.point(i, r), t = 0) : u !== o && l >= ja && (Ma(e - u) < Da && (e -= u * Da), Ma(i - o) < Da && (i -= o * Da), r = Ft(e, r, i, a), n.point(u, r), n.lineEnd(), n.lineStart(), n.point(o, r), t = 0), n.point(e = i, r = a), u = o }, lineEnd: function () { n.lineEnd(), e = r = NaN }, clean: function () { return 2 - t } } } function Ft(n, t, e, r) { var u, i, a = Math.sin(n - e); return Ma(a) > Da ? Math.atan((Math.sin(t) * (i = Math.cos(r)) * Math.sin(e) - Math.sin(r) * (u = Math.cos(t)) * Math.sin(n)) / (u * i * a)) : (t + r) / 2 } function Ht(n, t, e, r) { var u; if (null == n) u = e * Ha, r.point(-ja, u), r.point(0, u), r.point(ja, u), r.point(ja, 0), r.point(ja, -u), r.point(0, -u), r.point(-ja, -u), r.point(-ja, 0), r.point(-ja, u); else if (Ma(n[0] - t[0]) > Da) { var i = n[0] < t[0] ? ja : -ja; u = e * i / 2, r.point(-i, u), r.point(0, u), r.point(i, u) } else r.point(t[0], t[1]) } function Ot(n, t) { var e = n[0], r = n[1], u = [Math.sin(e), -Math.cos(e), 0], i = 0, a = 0; So.reset(); for (var o = 0, l = t.length; l > o; ++o) { var c = t[o], s = c.length; if (s) for (var f = c[0], h = f[0], g = f[1] / 2 + ja / 4, p = Math.sin(g), v = Math.cos(g), d = 1; ;) { d === s && (d = 0), n = c[d]; var m = n[0], y = n[1] / 2 + ja / 4, M = Math.sin(y), x = Math.cos(y), b = m - h, _ = b >= 0 ? 1 : -1, w = _ * b, S = w > ja, k = p * M; if (So.add(Math.atan2(k * _ * Math.sin(w), v * x + k * Math.cos(w))), i += S ? b + _ * Ua : b, S ^ h >= e ^ m >= e) { var N = yt(dt(f), dt(n)); bt(N); var E = yt(u, N); bt(E); var A = (S ^ b >= 0 ? -1 : 1) * tn(E[2]); (r > A || r === A && (N[0] || N[1])) && (a += S ^ b >= 0 ? 1 : -1) } if (!d++) break; h = m, p = M, v = x, f = n } } return (-Da > i || Da > i && 0 > So) ^ 1 & a } function It(n) { function t(n, t) { return Math.cos(n) * Math.cos(t) > i } function e(n) { var e, i, l, c, s; return { lineStart: function () { c = l = !1, s = 1 }, point: function (f, h) { var g, p = [f, h], v = t(f, h), d = a ? v ? 0 : u(f, h) : v ? u(f + (0 > f ? ja : -ja), h) : 0; if (!e && (c = l = v) && n.lineStart(), v !== l && (g = r(e, p), (wt(e, g) || wt(p, g)) && (p[0] += Da, p[1] += Da, v = t(p[0], p[1]))), v !== l) s = 0, v ? (n.lineStart(), g = r(p, e), n.point(g[0], g[1])) : (g = r(e, p), n.point(g[0], g[1]), n.lineEnd()), e = g; else if (o && e && a ^ v) { var m; d & i || !(m = r(p, e, !0)) || (s = 0, a ? (n.lineStart(), n.point(m[0][0], m[0][1]), n.point(m[1][0], m[1][1]), n.lineEnd()) : (n.point(m[1][0], m[1][1]), n.lineEnd(), n.lineStart(), n.point(m[0][0], m[0][1]))) } !v || e && wt(e, p) || n.point(p[0], p[1]), e = p, l = v, i = d }, lineEnd: function () { l && n.lineEnd(), e = null }, clean: function () { return s | (c && l) << 1 } } } function r(n, t, e) { var r = dt(n), u = dt(t), a = [1, 0, 0], o = yt(r, u), l = mt(o, o), c = o[0], s = l - c * c; if (!s) return !e && n; var f = i * l / s, h = -i * c / s, g = yt(a, o), p = xt(a, f), v = xt(o, h); Mt(p, v); var d = g, m = mt(p, d), y = mt(d, d), M = m * m - y * (mt(p, p) - 1); if (!(0 > M)) { var x = Math.sqrt(M), b = xt(d, (-m - x) / y); if (Mt(b, p), b = _t(b), !e) return b; var _, w = n[0], S = t[0], k = n[1], N = t[1]; w > S && (_ = w, w = S, S = _); var E = S - w, A = Ma(E - ja) < Da, C = A || Da > E; if (!A && k > N && (_ = k, k = N, N = _), C ? A ? k + N > 0 ^ b[1] < (Ma(b[0] - w) < Da ? k : N) : k <= b[1] && b[1] <= N : E > ja ^ (w <= b[0] && b[0] <= S)) { var z = xt(d, (-m + x) / y); return Mt(z, p), [b, _t(z)] } } } function u(t, e) { var r = a ? n : ja - n, u = 0; return -r > t ? u |= 1 : t > r && (u |= 2), -r > e ? u |= 4 : e > r && (u |= 8), u } var i = Math.cos(n), a = i > 0, o = Ma(i) > Da, l = ve(n, 6 * Oa); return Rt(t, e, l, a ? [0, -n] : [-ja, n - ja]) } function Yt(n, t, e, r) { return function (u) { var i, a = u.a, o = u.b, l = a.x, c = a.y, s = o.x, f = o.y, h = 0, g = 1, p = s - l, v = f - c; if (i = n - l, p || !(i > 0)) { if (i /= p, 0 > p) { if (h > i) return; g > i && (g = i) } else if (p > 0) { if (i > g) return; i > h && (h = i) } if (i = e - l, p || !(0 > i)) { if (i /= p, 0 > p) { if (i > g) return; i > h && (h = i) } else if (p > 0) { if (h > i) return; g > i && (g = i) } if (i = t - c, v || !(i > 0)) { if (i /= v, 0 > v) { if (h > i) return; g > i && (g = i) } else if (v > 0) { if (i > g) return; i > h && (h = i) } if (i = r - c, v || !(0 > i)) { if (i /= v, 0 > v) { if (i > g) return; i > h && (h = i) } else if (v > 0) { if (h > i) return; g > i && (g = i) } return h > 0 && (u.a = { x: l + h * p, y: c + h * v }), 1 > g && (u.b = { x: l + g * p, y: c + g * v }), u } } } } } } function Zt(n, t, e, r) { function u(r, u) { return Ma(r[0] - n) < Da ? u > 0 ? 0 : 3 : Ma(r[0] - e) < Da ? u > 0 ? 2 : 1 : Ma(r[1] - t) < Da ? u > 0 ? 1 : 0 : u > 0 ? 3 : 2 } function i(n, t) { return a(n.x, t.x) } function a(n, t) { var e = u(n, 1), r = u(t, 1); return e !== r ? e - r : 0 === e ? t[1] - n[1] : 1 === e ? n[0] - t[0] : 2 === e ? n[1] - t[1] : t[0] - n[0] } return function (o) { function l(n) { for (var t = 0, e = d.length, r = n[1], u = 0; e > u; ++u) for (var i, a = 1, o = d[u], l = o.length, c = o[0]; l > a; ++a) i = o[a], c[1] <= r ? i[1] > r && Q(c, i, n) > 0 && ++t : i[1] <= r && Q(c, i, n) < 0 && --t, c = i; return 0 !== t } function c(i, o, l, c) { var s = 0, f = 0; if (null == i || (s = u(i, l)) !== (f = u(o, l)) || a(i, o) < 0 ^ l > 0) { do c.point(0 === s || 3 === s ? n : e, s > 1 ? r : t); while ((s = (s + l + 4) % 4) !== f) } else c.point(o[0], o[1]) } function s(u, i) { return u >= n && e >= u && i >= t && r >= i } function f(n, t) { s(n, t) && o.point(n, t) } function h() { C.point = p, d && d.push(m = []), S = !0, w = !1, b = _ = NaN } function g() { v && (p(y, M), x && w && E.rejoin(), v.push(E.buffer())), C.point = f, w && o.lineEnd() } function p(n, t) { n = Math.max(-Fo, Math.min(Fo, n)), t = Math.max(-Fo, Math.min(Fo, t)); var e = s(n, t); if (d && m.push([n, t]), S) y = n, M = t, x = e, S = !1, e && (o.lineStart(), o.point(n, t)); else if (e && w) o.point(n, t); else { var r = { a: { x: b, y: _ }, b: { x: n, y: t } }; A(r) ? (w || (o.lineStart(), o.point(r.a.x, r.a.y)), o.point(r.b.x, r.b.y), e || o.lineEnd(), k = !1) : e && (o.lineStart(), o.point(n, t), k = !1) } b = n, _ = t, w = e } var v, d, m, y, M, x, b, _, w, S, k, N = o, E = Pt(), A = Yt(n, t, e, r), C = { point: f, lineStart: h, lineEnd: g, polygonStart: function () { o = E, v = [], d = [], k = !0 }, polygonEnd: function () { o = N, v = oa.merge(v); var t = l([n, r]), e = k && t, u = v.length; (e || u) && (o.polygonStart(), e && (o.lineStart(), c(null, null, 1, o), o.lineEnd()), u && Lt(v, i, t, c, o), o.polygonEnd()), v = d = m = null } }; return C } } function Vt(n) { var t = 0, e = ja / 3, r = oe(n), u = r(t, e); return u.parallels = function (n) { return arguments.length ? r(t = n[0] * ja / 180, e = n[1] * ja / 180) : [t / ja * 180, e / ja * 180] }, u } function Xt(n, t) { function e(n, t) { var e = Math.sqrt(i - 2 * u * Math.sin(t)) / u; return [e * Math.sin(n *= u), a - e * Math.cos(n)] } var r = Math.sin(n), u = (r + Math.sin(t)) / 2, i = 1 + r * (2 * u - r), a = Math.sqrt(i) / u; return e.invert = function (n, t) { var e = a - t; return [Math.atan2(n, e) / u, tn((i - (n * n + e * e) * u * u) / (2 * u))] }, e } function $t() { function n(n, t) { Oo += u * n - r * t, r = n, u = t } var t, e, r, u; Xo.point = function (i, a) { Xo.point = n, t = r = i, e = u = a }, Xo.lineEnd = function () { n(t, e) } } function Bt(n, t) { Io > n && (Io = n), n > Zo && (Zo = n), Yo > t && (Yo = t), t > Vo && (Vo = t) } function Wt() { function n(n, t) { a.push(\"M\", n, \",\", t, i) } function t(n, t) { a.push(\"M\", n, \",\", t), o.point = e } function e(n, t) { a.push(\"L\", n, \",\", t) } function r() { o.point = n } function u() { a.push(\"Z\") } var i = Jt(4.5), a = [], o = { point: n, lineStart: function () { o.point = t }, lineEnd: r, polygonStart: function () { o.lineEnd = u }, polygonEnd: function () { o.lineEnd = r, o.point = n }, pointRadius: function (n) { return i = Jt(n), o }, result: function () { if (a.length) { var n = a.join(\"\"); return a = [], n } } }; return o } function Jt(n) { return \"m0,\" + n + \"a\" + n + \",\" + n + \" 0 1,1 0,\" + -2 * n + \"a\" + n + \",\" + n + \" 0 1,1 0,\" + 2 * n + \"z\" } function Gt(n, t) { Ao += n, Co += t, ++zo } function Kt() { function n(n, r) { var u = n - t, i = r - e, a = Math.sqrt(u * u + i * i); Lo += a * (t + n) / 2, qo += a * (e + r) / 2, To += a, Gt(t = n, e = r) } var t, e; Bo.point = function (r, u) { Bo.point = n, Gt(t = r, e = u) } } function Qt() { Bo.point = Gt } function ne() { function n(n, t) { var e = n - r, i = t - u, a = Math.sqrt(e * e + i * i); Lo += a * (r + n) / 2, qo += a * (u + t) / 2, To += a, a = u * n - r * t, Ro += a * (r + n), Do += a * (u + t), Po += 3 * a, Gt(r = n, u = t) } var t, e, r, u; Bo.point = function (i, a) { Bo.point = n, Gt(t = r = i, e = u = a) }, Bo.lineEnd = function () { n(t, e) } } function te(n) { function t(t, e) { n.moveTo(t + a, e), n.arc(t, e, a, 0, Ua) } function e(t, e) { n.moveTo(t, e), o.point = r } function r(t, e) { n.lineTo(t, e) } function u() { o.point = t } function i() { n.closePath() } var a = 4.5, o = { point: t, lineStart: function () { o.point = e }, lineEnd: u, polygonStart: function () { o.lineEnd = i }, polygonEnd: function () { o.lineEnd = u, o.point = t }, pointRadius: function (n) { return a = n, o }, result: b }; return o } function ee(n) {\r\n function t(n) { return (o ? r : e)(n) } function e(t) { return ie(t, function (e, r) { e = n(e, r), t.point(e[0], e[1]) }) } function r(t) {\r\n function e(e, r) { e = n(e, r), t.point(e[0], e[1]) } function r() { M = NaN, S.point = i, t.lineStart() } function i(e, r) { var i = dt([e, r]), a = n(e, r); u(M, x, y, b, _, w, M = a[0], x = a[1], y = e, b = i[0], _ = i[1], w = i[2], o, t), t.point(M, x) } function a() { S.point = e, t.lineEnd() } function l() { r(), S.point = c, S.lineEnd = s } function c(n, t) {\r\n i(f = n, h = t), g = M, p = x, v = b, d = _, m = w, S.point = i\r\n } function s() { u(M, x, y, b, _, w, g, p, f, v, d, m, o, t), S.lineEnd = a, a() } var f, h, g, p, v, d, m, y, M, x, b, _, w, S = { point: e, lineStart: r, lineEnd: a, polygonStart: function () { t.polygonStart(), S.lineStart = l }, polygonEnd: function () { t.polygonEnd(), S.lineStart = r } }; return S\r\n } function u(t, e, r, o, l, c, s, f, h, g, p, v, d, m) { var y = s - t, M = f - e, x = y * y + M * M; if (x > 4 * i && d--) { var b = o + g, _ = l + p, w = c + v, S = Math.sqrt(b * b + _ * _ + w * w), k = Math.asin(w /= S), N = Ma(Ma(w) - 1) < Da || Ma(r - h) < Da ? (r + h) / 2 : Math.atan2(_, b), E = n(N, k), A = E[0], C = E[1], z = A - t, L = C - e, q = M * z - y * L; (q * q / x > i || Ma((y * z + M * L) / x - .5) > .3 || a > o * g + l * p + c * v) && (u(t, e, r, o, l, c, A, C, N, b /= S, _ /= S, w, d, m), m.point(A, C), u(A, C, N, b, _, w, s, f, h, g, p, v, d, m)) } } var i = .5, a = Math.cos(30 * Oa), o = 16; return t.precision = function (n) { return arguments.length ? (o = (i = n * n) > 0 && 16, t) : Math.sqrt(i) }, t\r\n } function re(n) { var t = ee(function (t, e) { return n([t * Ia, e * Ia]) }); return function (n) { return le(t(n)) } } function ue(n) { this.stream = n } function ie(n, t) { return { point: t, sphere: function () { n.sphere() }, lineStart: function () { n.lineStart() }, lineEnd: function () { n.lineEnd() }, polygonStart: function () { n.polygonStart() }, polygonEnd: function () { n.polygonEnd() } } } function ae(n) { return oe(function () { return n })() } function oe(n) { function t(n) { return n = o(n[0] * Oa, n[1] * Oa), [n[0] * h + l, c - n[1] * h] } function e(n) { return n = o.invert((n[0] - l) / h, (c - n[1]) / h), n && [n[0] * Ia, n[1] * Ia] } function r() { o = Ct(a = fe(m, M, x), i); var n = i(v, d); return l = g - n[0] * h, c = p + n[1] * h, u() } function u() { return s && (s.valid = !1, s = null), t } var i, a, o, l, c, s, f = ee(function (n, t) { return n = i(n, t), [n[0] * h + l, c - n[1] * h] }), h = 150, g = 480, p = 250, v = 0, d = 0, m = 0, M = 0, x = 0, b = Uo, _ = y, w = null, S = null; return t.stream = function (n) { return s && (s.valid = !1), s = le(b(a, f(_(n)))), s.valid = !0, s }, t.clipAngle = function (n) { return arguments.length ? (b = null == n ? (w = n, Uo) : It((w = +n) * Oa), u()) : w }, t.clipExtent = function (n) { return arguments.length ? (S = n, _ = n ? Zt(n[0][0], n[0][1], n[1][0], n[1][1]) : y, u()) : S }, t.scale = function (n) { return arguments.length ? (h = +n, r()) : h }, t.translate = function (n) { return arguments.length ? (g = +n[0], p = +n[1], r()) : [g, p] }, t.center = function (n) { return arguments.length ? (v = n[0] % 360 * Oa, d = n[1] % 360 * Oa, r()) : [v * Ia, d * Ia] }, t.rotate = function (n) { return arguments.length ? (m = n[0] % 360 * Oa, M = n[1] % 360 * Oa, x = n.length > 2 ? n[2] % 360 * Oa : 0, r()) : [m * Ia, M * Ia, x * Ia] }, oa.rebind(t, f, \"precision\"), function () { return i = n.apply(this, arguments), t.invert = i.invert && e, r() } } function le(n) { return ie(n, function (t, e) { n.point(t * Oa, e * Oa) }) } function ce(n, t) { return [n, t] } function se(n, t) { return [n > ja ? n - Ua : -ja > n ? n + Ua : n, t] } function fe(n, t, e) { return n ? t || e ? Ct(ge(n), pe(t, e)) : ge(n) : t || e ? pe(t, e) : se } function he(n) { return function (t, e) { return t += n, [t > ja ? t - Ua : -ja > t ? t + Ua : t, e] } } function ge(n) { var t = he(n); return t.invert = he(-n), t } function pe(n, t) { function e(n, t) { var e = Math.cos(t), o = Math.cos(n) * e, l = Math.sin(n) * e, c = Math.sin(t), s = c * r + o * u; return [Math.atan2(l * i - s * a, o * r - c * u), tn(s * i + l * a)] } var r = Math.cos(n), u = Math.sin(n), i = Math.cos(t), a = Math.sin(t); return e.invert = function (n, t) { var e = Math.cos(t), o = Math.cos(n) * e, l = Math.sin(n) * e, c = Math.sin(t), s = c * i - l * a; return [Math.atan2(l * i + c * a, o * r + s * u), tn(s * r - o * u)] }, e } function ve(n, t) { var e = Math.cos(n), r = Math.sin(n); return function (u, i, a, o) { var l = a * t; null != u ? (u = de(e, u), i = de(e, i), (a > 0 ? i > u : u > i) && (u += a * Ua)) : (u = n + a * Ua, i = n - .5 * l); for (var c, s = u; a > 0 ? s > i : i > s; s -= l) o.point((c = _t([e, -r * Math.cos(s), -r * Math.sin(s)]))[0], c[1]) } } function de(n, t) { var e = dt(t); e[0] -= n, bt(e); var r = nn(-e[1]); return ((-e[2] < 0 ? -r : r) + 2 * Math.PI - Da) % (2 * Math.PI) } function me(n, t, e) { var r = oa.range(n, t - Da, e).concat(t); return function (n) { return r.map(function (t) { return [n, t] }) } } function ye(n, t, e) { var r = oa.range(n, t - Da, e).concat(t); return function (n) { return r.map(function (t) { return [t, n] }) } } function Me(n) { return n.source } function xe(n) { return n.target } function be(n, t, e, r) { var u = Math.cos(t), i = Math.sin(t), a = Math.cos(r), o = Math.sin(r), l = u * Math.cos(n), c = u * Math.sin(n), s = a * Math.cos(e), f = a * Math.sin(e), h = 2 * Math.asin(Math.sqrt(an(r - t) + u * a * an(e - n))), g = 1 / Math.sin(h), p = h ? function (n) { var t = Math.sin(n *= h) * g, e = Math.sin(h - n) * g, r = e * l + t * s, u = e * c + t * f, a = e * i + t * o; return [Math.atan2(u, r) * Ia, Math.atan2(a, Math.sqrt(r * r + u * u)) * Ia] } : function () { return [n * Ia, t * Ia] }; return p.distance = h, p } function _e() { function n(n, u) { var i = Math.sin(u *= Oa), a = Math.cos(u), o = Ma((n *= Oa) - t), l = Math.cos(o); Wo += Math.atan2(Math.sqrt((o = a * Math.sin(o)) * o + (o = r * i - e * a * l) * o), e * i + r * a * l), t = n, e = i, r = a } var t, e, r; Jo.point = function (u, i) { t = u * Oa, e = Math.sin(i *= Oa), r = Math.cos(i), Jo.point = n }, Jo.lineEnd = function () { Jo.point = Jo.lineEnd = b } } function we(n, t) { function e(t, e) { var r = Math.cos(t), u = Math.cos(e), i = n(r * u); return [i * u * Math.sin(t), i * Math.sin(e)] } return e.invert = function (n, e) { var r = Math.sqrt(n * n + e * e), u = t(r), i = Math.sin(u), a = Math.cos(u); return [Math.atan2(n * i, r * a), Math.asin(r && e * i / r)] }, e } function Se(n, t) { function e(n, t) { a > 0 ? -Ha + Da > t && (t = -Ha + Da) : t > Ha - Da && (t = Ha - Da); var e = a / Math.pow(u(t), i); return [e * Math.sin(i * n), a - e * Math.cos(i * n)] } var r = Math.cos(n), u = function (n) { return Math.tan(ja / 4 + n / 2) }, i = n === t ? Math.sin(n) : Math.log(r / Math.cos(t)) / Math.log(u(t) / u(n)), a = r * Math.pow(u(n), i) / i; return i ? (e.invert = function (n, t) { var e = a - t, r = K(i) * Math.sqrt(n * n + e * e); return [Math.atan2(n, e) / i, 2 * Math.atan(Math.pow(a / r, 1 / i)) - Ha] }, e) : Ne } function ke(n, t) { function e(n, t) { var e = i - t; return [e * Math.sin(u * n), i - e * Math.cos(u * n)] } var r = Math.cos(n), u = n === t ? Math.sin(n) : (r - Math.cos(t)) / (t - n), i = r / u + n; return Ma(u) < Da ? ce : (e.invert = function (n, t) { var e = i - t; return [Math.atan2(n, e) / u, i - K(u) * Math.sqrt(n * n + e * e)] }, e) } function Ne(n, t) { return [n, Math.log(Math.tan(ja / 4 + t / 2))] } function Ee(n) { var t, e = ae(n), r = e.scale, u = e.translate, i = e.clipExtent; return e.scale = function () { var n = r.apply(e, arguments); return n === e ? t ? e.clipExtent(null) : e : n }, e.translate = function () { var n = u.apply(e, arguments); return n === e ? t ? e.clipExtent(null) : e : n }, e.clipExtent = function (n) { var a = i.apply(e, arguments); if (a === e) { if (t = null == n) { var o = ja * r(), l = u(); i([[l[0] - o, l[1] - o], [l[0] + o, l[1] + o]]) } } else t && (a = null); return a }, e.clipExtent(null) } function Ae(n, t) { return [Math.log(Math.tan(ja / 4 + t / 2)), -n] } function Ce(n) { return n[0] } function ze(n) { return n[1] } function Le(n) { for (var t = n.length, e = [0, 1], r = 2, u = 2; t > u; u++) { for (; r > 1 && Q(n[e[r - 2]], n[e[r - 1]], n[u]) <= 0;)--r; e[r++] = u } return e.slice(0, r) } function qe(n, t) { return n[0] - t[0] || n[1] - t[1] } function Te(n, t, e) { return (e[0] - t[0]) * (n[1] - t[1]) < (e[1] - t[1]) * (n[0] - t[0]) } function Re(n, t, e, r) { var u = n[0], i = e[0], a = t[0] - u, o = r[0] - i, l = n[1], c = e[1], s = t[1] - l, f = r[1] - c, h = (o * (l - c) - f * (u - i)) / (f * a - o * s); return [u + h * a, l + h * s] } function De(n) { var t = n[0], e = n[n.length - 1]; return !(t[0] - e[0] || t[1] - e[1]) } function Pe() { rr(this), this.edge = this.site = this.circle = null } function je(n) { var t = ll.pop() || new Pe; return t.site = n, t } function Ue(n) { Be(n), il.remove(n), ll.push(n), rr(n) } function Fe(n) { var t = n.circle, e = t.x, r = t.cy, u = { x: e, y: r }, i = n.P, a = n.N, o = [n]; Ue(n); for (var l = i; l.circle && Ma(e - l.circle.x) < Da && Ma(r - l.circle.cy) < Da;) i = l.P, o.unshift(l), Ue(l), l = i; o.unshift(l), Be(l); for (var c = a; c.circle && Ma(e - c.circle.x) < Da && Ma(r - c.circle.cy) < Da;) a = c.N, o.push(c), Ue(c), c = a; o.push(c), Be(c); var s, f = o.length; for (s = 1; f > s; ++s) c = o[s], l = o[s - 1], nr(c.edge, l.site, c.site, u); l = o[0], c = o[f - 1], c.edge = Ke(l.site, c.site, null, u), $e(l), $e(c) } function He(n) { for (var t, e, r, u, i = n.x, a = n.y, o = il._; o;) if (r = Oe(o, a) - i, r > Da) o = o.L; else { if (u = i - Ie(o, a), !(u > Da)) { r > -Da ? (t = o.P, e = o) : u > -Da ? (t = o, e = o.N) : t = e = o; break } if (!o.R) { t = o; break } o = o.R } var l = je(n); if (il.insert(t, l), t || e) { if (t === e) return Be(t), e = je(t.site), il.insert(l, e), l.edge = e.edge = Ke(t.site, l.site), $e(t), void $e(e); if (!e) return void (l.edge = Ke(t.site, l.site)); Be(t), Be(e); var c = t.site, s = c.x, f = c.y, h = n.x - s, g = n.y - f, p = e.site, v = p.x - s, d = p.y - f, m = 2 * (h * d - g * v), y = h * h + g * g, M = v * v + d * d, x = { x: (d * y - g * M) / m + s, y: (h * M - v * y) / m + f }; nr(e.edge, c, p, x), l.edge = Ke(c, n, null, x), e.edge = Ke(n, p, null, x), $e(t), $e(e) } } function Oe(n, t) { var e = n.site, r = e.x, u = e.y, i = u - t; if (!i) return r; var a = n.P; if (!a) return -(1 / 0); e = a.site; var o = e.x, l = e.y, c = l - t; if (!c) return o; var s = o - r, f = 1 / i - 1 / c, h = s / c; return f ? (-h + Math.sqrt(h * h - 2 * f * (s * s / (-2 * c) - l + c / 2 + u - i / 2))) / f + r : (r + o) / 2 } function Ie(n, t) { var e = n.N; if (e) return Oe(e, t); var r = n.site; return r.y === t ? r.x : 1 / 0 } function Ye(n) { this.site = n, this.edges = [] } function Ze(n) { for (var t, e, r, u, i, a, o, l, c, s, f = n[0][0], h = n[1][0], g = n[0][1], p = n[1][1], v = ul, d = v.length; d--;) if (i = v[d], i && i.prepare()) for (o = i.edges, l = o.length, a = 0; l > a;) s = o[a].end(), r = s.x, u = s.y, c = o[++a % l].start(), t = c.x, e = c.y, (Ma(r - t) > Da || Ma(u - e) > Da) && (o.splice(a, 0, new tr(Qe(i.site, s, Ma(r - f) < Da && p - u > Da ? { x: f, y: Ma(t - f) < Da ? e : p } : Ma(u - p) < Da && h - r > Da ? { x: Ma(e - p) < Da ? t : h, y: p } : Ma(r - h) < Da && u - g > Da ? { x: h, y: Ma(t - h) < Da ? e : g } : Ma(u - g) < Da && r - f > Da ? { x: Ma(e - g) < Da ? t : f, y: g } : null), i.site, null)), ++l) } function Ve(n, t) { return t.angle - n.angle } function Xe() { rr(this), this.x = this.y = this.arc = this.site = this.cy = null } function $e(n) { var t = n.P, e = n.N; if (t && e) { var r = t.site, u = n.site, i = e.site; if (r !== i) { var a = u.x, o = u.y, l = r.x - a, c = r.y - o, s = i.x - a, f = i.y - o, h = 2 * (l * f - c * s); if (!(h >= -Pa)) { var g = l * l + c * c, p = s * s + f * f, v = (f * g - c * p) / h, d = (l * p - s * g) / h, f = d + o, m = cl.pop() || new Xe; m.arc = n, m.site = u, m.x = v + a, m.y = f + Math.sqrt(v * v + d * d), m.cy = f, n.circle = m; for (var y = null, M = ol._; M;) if (m.y < M.y || m.y === M.y && m.x <= M.x) { if (!M.L) { y = M.P; break } M = M.L } else { if (!M.R) { y = M; break } M = M.R } ol.insert(y, m), y || (al = m) } } } } function Be(n) { var t = n.circle; t && (t.P || (al = t.N), ol.remove(t), cl.push(t), rr(t), n.circle = null) } function We(n) { for (var t, e = rl, r = Yt(n[0][0], n[0][1], n[1][0], n[1][1]), u = e.length; u--;) t = e[u], (!Je(t, n) || !r(t) || Ma(t.a.x - t.b.x) < Da && Ma(t.a.y - t.b.y) < Da) && (t.a = t.b = null, e.splice(u, 1)) } function Je(n, t) { var e = n.b; if (e) return !0; var r, u, i = n.a, a = t[0][0], o = t[1][0], l = t[0][1], c = t[1][1], s = n.l, f = n.r, h = s.x, g = s.y, p = f.x, v = f.y, d = (h + p) / 2, m = (g + v) / 2; if (v === g) { if (a > d || d >= o) return; if (h > p) { if (i) { if (i.y >= c) return } else i = { x: d, y: l }; e = { x: d, y: c } } else { if (i) { if (i.y < l) return } else i = { x: d, y: c }; e = { x: d, y: l } } } else if (r = (h - p) / (v - g), u = m - r * d, -1 > r || r > 1) if (h > p) { if (i) { if (i.y >= c) return } else i = { x: (l - u) / r, y: l }; e = { x: (c - u) / r, y: c } } else { if (i) { if (i.y < l) return } else i = { x: (c - u) / r, y: c }; e = { x: (l - u) / r, y: l } } else if (v > g) { if (i) { if (i.x >= o) return } else i = { x: a, y: r * a + u }; e = { x: o, y: r * o + u } } else { if (i) { if (i.x < a) return } else i = { x: o, y: r * o + u }; e = { x: a, y: r * a + u } } return n.a = i, n.b = e, !0 } function Ge(n, t) { this.l = n, this.r = t, this.a = this.b = null } function Ke(n, t, e, r) { var u = new Ge(n, t); return rl.push(u), e && nr(u, n, t, e), r && nr(u, t, n, r), ul[n.i].edges.push(new tr(u, n, t)), ul[t.i].edges.push(new tr(u, t, n)), u } function Qe(n, t, e) { var r = new Ge(n, null); return r.a = t, r.b = e, rl.push(r), r } function nr(n, t, e, r) { n.a || n.b ? n.l === e ? n.b = r : n.a = r : (n.a = r, n.l = t, n.r = e) } function tr(n, t, e) { var r = n.a, u = n.b; this.edge = n, this.site = t, this.angle = e ? Math.atan2(e.y - t.y, e.x - t.x) : n.l === t ? Math.atan2(u.x - r.x, r.y - u.y) : Math.atan2(r.x - u.x, u.y - r.y) } function er() { this._ = null } function rr(n) { n.U = n.C = n.L = n.R = n.P = n.N = null } function ur(n, t) { var e = t, r = t.R, u = e.U; u ? u.L === e ? u.L = r : u.R = r : n._ = r, r.U = u, e.U = r, e.R = r.L, e.R && (e.R.U = e), r.L = e } function ir(n, t) { var e = t, r = t.L, u = e.U; u ? u.L === e ? u.L = r : u.R = r : n._ = r, r.U = u, e.U = r, e.L = r.R, e.L && (e.L.U = e), r.R = e } function ar(n) { for (; n.L;) n = n.L; return n } function or(n, t) { var e, r, u, i = n.sort(lr).pop(); for (rl = [], ul = new Array(n.length), il = new er, ol = new er; ;) if (u = al, i && (!u || i.y < u.y || i.y === u.y && i.x < u.x)) (i.x !== e || i.y !== r) && (ul[i.i] = new Ye(i), He(i), e = i.x, r = i.y), i = n.pop(); else { if (!u) break; Fe(u.arc) } t && (We(t), Ze(t)); var a = { cells: ul, edges: rl }; return il = ol = rl = ul = null, a } function lr(n, t) { return t.y - n.y || t.x - n.x } function cr(n, t, e) { return (n.x - e.x) * (t.y - n.y) - (n.x - t.x) * (e.y - n.y) } function sr(n) { return n.x } function fr(n) { return n.y } function hr() { return { leaf: !0, nodes: [], point: null, x: null, y: null } } function gr(n, t, e, r, u, i) { if (!n(t, e, r, u, i)) { var a = .5 * (e + u), o = .5 * (r + i), l = t.nodes; l[0] && gr(n, l[0], e, r, a, o), l[1] && gr(n, l[1], a, r, u, o), l[2] && gr(n, l[2], e, o, a, i), l[3] && gr(n, l[3], a, o, u, i) } } function pr(n, t, e, r, u, i, a) { var o, l = 1 / 0; return function c(n, s, f, h, g) { if (!(s > i || f > a || r > h || u > g)) { if (p = n.point) { var p, v = t - n.x, d = e - n.y, m = v * v + d * d; if (l > m) { var y = Math.sqrt(l = m); r = t - y, u = e - y, i = t + y, a = e + y, o = p } } for (var M = n.nodes, x = .5 * (s + h), b = .5 * (f + g), _ = t >= x, w = e >= b, S = w << 1 | _, k = S + 4; k > S; ++S) if (n = M[3 & S]) switch (3 & S) { case 0: c(n, s, f, x, b); break; case 1: c(n, x, f, h, b); break; case 2: c(n, s, b, x, g); break; case 3: c(n, x, b, h, g) } } }(n, r, u, i, a), o } function vr(n, t) { n = oa.rgb(n), t = oa.rgb(t); var e = n.r, r = n.g, u = n.b, i = t.r - e, a = t.g - r, o = t.b - u; return function (n) { return \"#\" + bn(Math.round(e + i * n)) + bn(Math.round(r + a * n)) + bn(Math.round(u + o * n)) } } function dr(n, t) { var e, r = {}, u = {}; for (e in n) e in t ? r[e] = Mr(n[e], t[e]) : u[e] = n[e]; for (e in t) e in n || (u[e] = t[e]); return function (n) { for (e in r) u[e] = r[e](n); return u } } function mr(n, t) { return n = +n, t = +t, function (e) { return n * (1 - e) + t * e } } function yr(n, t) { var e, r, u, i = fl.lastIndex = hl.lastIndex = 0, a = -1, o = [], l = []; for (n += \"\", t += \"\"; (e = fl.exec(n)) && (r = hl.exec(t)) ;) (u = r.index) > i && (u = t.slice(i, u), o[a] ? o[a] += u : o[++a] = u), (e = e[0]) === (r = r[0]) ? o[a] ? o[a] += r : o[++a] = r : (o[++a] = null, l.push({ i: a, x: mr(e, r) })), i = hl.lastIndex; return i < t.length && (u = t.slice(i), o[a] ? o[a] += u : o[++a] = u), o.length < 2 ? l[0] ? (t = l[0].x, function (n) { return t(n) + \"\" }) : function () { return t } : (t = l.length, function (n) { for (var e, r = 0; t > r; ++r) o[(e = l[r]).i] = e.x(n); return o.join(\"\") }) } function Mr(n, t) { for (var e, r = oa.interpolators.length; --r >= 0 && !(e = oa.interpolators[r](n, t)) ;); return e } function xr(n, t) { var e, r = [], u = [], i = n.length, a = t.length, o = Math.min(n.length, t.length); for (e = 0; o > e; ++e) r.push(Mr(n[e], t[e])); for (; i > e; ++e) u[e] = n[e]; for (; a > e; ++e) u[e] = t[e]; return function (n) { for (e = 0; o > e; ++e) u[e] = r[e](n); return u } } function br(n) { return function (t) { return 0 >= t ? 0 : t >= 1 ? 1 : n(t) } } function _r(n) { return function (t) { return 1 - n(1 - t) } } function wr(n) { return function (t) { return .5 * (.5 > t ? n(2 * t) : 2 - n(2 - 2 * t)) } } function Sr(n) { return n * n } function kr(n) { return n * n * n } function Nr(n) { if (0 >= n) return 0; if (n >= 1) return 1; var t = n * n, e = t * n; return 4 * (.5 > n ? e : 3 * (n - t) + e - .75) } function Er(n) { return function (t) { return Math.pow(t, n) } } function Ar(n) { return 1 - Math.cos(n * Ha) } function Cr(n) { return Math.pow(2, 10 * (n - 1)) } function zr(n) { return 1 - Math.sqrt(1 - n * n) } function Lr(n, t) { var e; return arguments.length < 2 && (t = .45), arguments.length ? e = t / Ua * Math.asin(1 / n) : (n = 1, e = t / 4), function (r) { return 1 + n * Math.pow(2, -10 * r) * Math.sin((r - e) * Ua / t) } } function qr(n) { return n || (n = 1.70158), function (t) { return t * t * ((n + 1) * t - n) } } function Tr(n) { return 1 / 2.75 > n ? 7.5625 * n * n : 2 / 2.75 > n ? 7.5625 * (n -= 1.5 / 2.75) * n + .75 : 2.5 / 2.75 > n ? 7.5625 * (n -= 2.25 / 2.75) * n + .9375 : 7.5625 * (n -= 2.625 / 2.75) * n + .984375 } function Rr(n, t) { n = oa.hcl(n), t = oa.hcl(t); var e = n.h, r = n.c, u = n.l, i = t.h - e, a = t.c - r, o = t.l - u; return isNaN(a) && (a = 0, r = isNaN(r) ? t.c : r), isNaN(i) ? (i = 0, e = isNaN(e) ? t.h : e) : i > 180 ? i -= 360 : -180 > i && (i += 360), function (n) { return fn(e + i * n, r + a * n, u + o * n) + \"\" } } function Dr(n, t) { n = oa.hsl(n), t = oa.hsl(t); var e = n.h, r = n.s, u = n.l, i = t.h - e, a = t.s - r, o = t.l - u; return isNaN(a) && (a = 0, r = isNaN(r) ? t.s : r), isNaN(i) ? (i = 0, e = isNaN(e) ? t.h : e) : i > 180 ? i -= 360 : -180 > i && (i += 360), function (n) { return cn(e + i * n, r + a * n, u + o * n) + \"\" } } function Pr(n, t) { n = oa.lab(n), t = oa.lab(t); var e = n.l, r = n.a, u = n.b, i = t.l - e, a = t.a - r, o = t.b - u; return function (n) { return gn(e + i * n, r + a * n, u + o * n) + \"\" } } function jr(n, t) { return t -= n, function (e) { return Math.round(n + t * e) } } function Ur(n) { var t = [n.a, n.b], e = [n.c, n.d], r = Hr(t), u = Fr(t, e), i = Hr(Or(e, t, -u)) || 0; t[0] * e[1] < e[0] * t[1] && (t[0] *= -1, t[1] *= -1, r *= -1, u *= -1), this.rotate = (r ? Math.atan2(t[1], t[0]) : Math.atan2(-e[0], e[1])) * Ia, this.translate = [n.e, n.f], this.scale = [r, i], this.skew = i ? Math.atan2(u, i) * Ia : 0 } function Fr(n, t) { return n[0] * t[0] + n[1] * t[1] } function Hr(n) { var t = Math.sqrt(Fr(n, n)); return t && (n[0] /= t, n[1] /= t), t } function Or(n, t, e) { return n[0] += e * t[0], n[1] += e * t[1], n } function Ir(n) { return n.length ? n.pop() + \",\" : \"\" } function Yr(n, t, e, r) { if (n[0] !== t[0] || n[1] !== t[1]) { var u = e.push(\"translate(\", null, \",\", null, \")\"); r.push({ i: u - 4, x: mr(n[0], t[0]) }, { i: u - 2, x: mr(n[1], t[1]) }) } else (t[0] || t[1]) && e.push(\"translate(\" + t + \")\") } function Zr(n, t, e, r) { n !== t ? (n - t > 180 ? t += 360 : t - n > 180 && (n += 360), r.push({ i: e.push(Ir(e) + \"rotate(\", null, \")\") - 2, x: mr(n, t) })) : t && e.push(Ir(e) + \"rotate(\" + t + \")\") } function Vr(n, t, e, r) { n !== t ? r.push({ i: e.push(Ir(e) + \"skewX(\", null, \")\") - 2, x: mr(n, t) }) : t && e.push(Ir(e) + \"skewX(\" + t + \")\") } function Xr(n, t, e, r) { if (n[0] !== t[0] || n[1] !== t[1]) { var u = e.push(Ir(e) + \"scale(\", null, \",\", null, \")\"); r.push({ i: u - 4, x: mr(n[0], t[0]) }, { i: u - 2, x: mr(n[1], t[1]) }) } else (1 !== t[0] || 1 !== t[1]) && e.push(Ir(e) + \"scale(\" + t + \")\") } function $r(n, t) { var e = [], r = []; return n = oa.transform(n), t = oa.transform(t), Yr(n.translate, t.translate, e, r), Zr(n.rotate, t.rotate, e, r), Vr(n.skew, t.skew, e, r), Xr(n.scale, t.scale, e, r), n = t = null, function (n) { for (var t, u = -1, i = r.length; ++u < i;) e[(t = r[u]).i] = t.x(n); return e.join(\"\") } } function Br(n, t) { return t = (t -= n = +n) || 1 / t, function (e) { return (e - n) / t } } function Wr(n, t) { return t = (t -= n = +n) || 1 / t, function (e) { return Math.max(0, Math.min(1, (e - n) / t)) } } function Jr(n) { for (var t = n.source, e = n.target, r = Kr(t, e), u = [t]; t !== r;) t = t.parent, u.push(t); for (var i = u.length; e !== r;) u.splice(i, 0, e), e = e.parent; return u } function Gr(n) { for (var t = [], e = n.parent; null != e;) t.push(n), n = e, e = e.parent; return t.push(n), t } function Kr(n, t) { if (n === t) return n; for (var e = Gr(n), r = Gr(t), u = e.pop(), i = r.pop(), a = null; u === i;) a = u, u = e.pop(), i = r.pop(); return a } function Qr(n) { n.fixed |= 2 } function nu(n) { n.fixed &= -7 } function tu(n) { n.fixed |= 4, n.px = n.x, n.py = n.y } function eu(n) { n.fixed &= -5 } function ru(n, t, e) { var r = 0, u = 0; if (n.charge = 0, !n.leaf) for (var i, a = n.nodes, o = a.length, l = -1; ++l < o;) i = a[l], null != i && (ru(i, t, e), n.charge += i.charge, r += i.charge * i.cx, u += i.charge * i.cy); if (n.point) { n.leaf || (n.point.x += Math.random() - .5, n.point.y += Math.random() - .5); var c = t * e[n.point.index]; n.charge += n.pointCharge = c, r += c * n.point.x, u += c * n.point.y } n.cx = r / n.charge, n.cy = u / n.charge } function uu(n, t) { return oa.rebind(n, t, \"sort\", \"children\", \"value\"), n.nodes = n, n.links = su, n } function iu(n, t) { for (var e = [n]; null != (n = e.pop()) ;) if (t(n), (u = n.children) && (r = u.length)) for (var r, u; --r >= 0;) e.push(u[r]) } function au(n, t) { for (var e = [n], r = []; null != (n = e.pop()) ;) if (r.push(n), (i = n.children) && (u = i.length)) for (var u, i, a = -1; ++a < u;) e.push(i[a]); for (; null != (n = r.pop()) ;) t(n) } function ou(n) { return n.children } function lu(n) { return n.value } function cu(n, t) { return t.value - n.value } function su(n) { return oa.merge(n.map(function (n) { return (n.children || []).map(function (t) { return { source: n, target: t } }) })) } function fu(n) { return n.x } function hu(n) { return n.y } function gu(n, t, e) { n.y0 = t, n.y = e } function pu(n) { return oa.range(n.length) } function vu(n) { for (var t = -1, e = n[0].length, r = []; ++t < e;) r[t] = 0; return r } function du(n) { for (var t, e = 1, r = 0, u = n[0][1], i = n.length; i > e; ++e) (t = n[e][1]) > u && (r = e, u = t); return r } function mu(n) { return n.reduce(yu, 0) } function yu(n, t) { return n + t[1] } function Mu(n, t) { return xu(n, Math.ceil(Math.log(t.length) / Math.LN2 + 1)) } function xu(n, t) { for (var e = -1, r = +n[0], u = (n[1] - r) / t, i = []; ++e <= t;) i[e] = u * e + r; return i } function bu(n) { return [oa.min(n), oa.max(n)] } function _u(n, t) { return n.value - t.value } function wu(n, t) { var e = n._pack_next; n._pack_next = t, t._pack_prev = n, t._pack_next = e, e._pack_prev = t } function Su(n, t) { n._pack_next = t, t._pack_prev = n } function ku(n, t) { var e = t.x - n.x, r = t.y - n.y, u = n.r + t.r; return .999 * u * u > e * e + r * r } function Nu(n) { function t(n) { s = Math.min(n.x - n.r, s), f = Math.max(n.x + n.r, f), h = Math.min(n.y - n.r, h), g = Math.max(n.y + n.r, g) } if ((e = n.children) && (c = e.length)) { var e, r, u, i, a, o, l, c, s = 1 / 0, f = -(1 / 0), h = 1 / 0, g = -(1 / 0); if (e.forEach(Eu), r = e[0], r.x = -r.r, r.y = 0, t(r), c > 1 && (u = e[1], u.x = u.r, u.y = 0, t(u), c > 2)) for (i = e[2], zu(r, u, i), t(i), wu(r, i), r._pack_prev = i, wu(i, u), u = r._pack_next, a = 3; c > a; a++) { zu(r, u, i = e[a]); var p = 0, v = 1, d = 1; for (o = u._pack_next; o !== u; o = o._pack_next, v++) if (ku(o, i)) { p = 1; break } if (1 == p) for (l = r._pack_prev; l !== o._pack_prev && !ku(l, i) ; l = l._pack_prev, d++); p ? (d > v || v == d && u.r < r.r ? Su(r, u = o) : Su(r = l, u), a--) : (wu(r, i), u = i, t(i)) } var m = (s + f) / 2, y = (h + g) / 2, M = 0; for (a = 0; c > a; a++) i = e[a], i.x -= m, i.y -= y, M = Math.max(M, i.r + Math.sqrt(i.x * i.x + i.y * i.y)); n.r = M, e.forEach(Au) } } function Eu(n) { n._pack_next = n._pack_prev = n } function Au(n) { delete n._pack_next, delete n._pack_prev } function Cu(n, t, e, r) { var u = n.children; if (n.x = t += r * n.x, n.y = e += r * n.y, n.r *= r, u) for (var i = -1, a = u.length; ++i < a;) Cu(u[i], t, e, r) } function zu(n, t, e) { var r = n.r + e.r, u = t.x - n.x, i = t.y - n.y; if (r && (u || i)) { var a = t.r + e.r, o = u * u + i * i; a *= a, r *= r; var l = .5 + (r - a) / (2 * o), c = Math.sqrt(Math.max(0, 2 * a * (r + o) - (r -= o) * r - a * a)) / (2 * o); e.x = n.x + l * u + c * i, e.y = n.y + l * i - c * u } else e.x = n.x + r, e.y = n.y } function Lu(n, t) { return n.parent == t.parent ? 1 : 2 } function qu(n) { var t = n.children; return t.length ? t[0] : n.t } function Tu(n) { var t, e = n.children; return (t = e.length) ? e[t - 1] : n.t } function Ru(n, t, e) { var r = e / (t.i - n.i); t.c -= r, t.s += e, n.c += r, t.z += e, t.m += e } function Du(n) { for (var t, e = 0, r = 0, u = n.children, i = u.length; --i >= 0;) t = u[i], t.z += e, t.m += e, e += t.s + (r += t.c) } function Pu(n, t, e) { return n.a.parent === t.parent ? n.a : e } function ju(n) { return 1 + oa.max(n, function (n) { return n.y }) } function Uu(n) { return n.reduce(function (n, t) { return n + t.x }, 0) / n.length } function Fu(n) { var t = n.children; return t && t.length ? Fu(t[0]) : n } function Hu(n) { var t, e = n.children; return e && (t = e.length) ? Hu(e[t - 1]) : n } function Ou(n) { return { x: n.x, y: n.y, dx: n.dx, dy: n.dy } } function Iu(n, t) { var e = n.x + t[3], r = n.y + t[0], u = n.dx - t[1] - t[3], i = n.dy - t[0] - t[2]; return 0 > u && (e += u / 2, u = 0), 0 > i && (r += i / 2, i = 0), { x: e, y: r, dx: u, dy: i } } function Yu(n) { var t = n[0], e = n[n.length - 1]; return e > t ? [t, e] : [e, t] } function Zu(n) { return n.rangeExtent ? n.rangeExtent() : Yu(n.range()) } function Vu(n, t, e, r) { var u = e(n[0], n[1]), i = r(t[0], t[1]); return function (n) { return i(u(n)) } } function Xu(n, t) { var e, r = 0, u = n.length - 1, i = n[r], a = n[u]; return i > a && (e = r, r = u, u = e, e = i, i = a, a = e), n[r] = t.floor(i), n[u] = t.ceil(a), n } function $u(n) { return n ? { floor: function (t) { return Math.floor(t / n) * n }, ceil: function (t) { return Math.ceil(t / n) * n } } : wl } function Bu(n, t, e, r) { var u = [], i = [], a = 0, o = Math.min(n.length, t.length) - 1; for (n[o] < n[0] && (n = n.slice().reverse(), t = t.slice().reverse()) ; ++a <= o;) u.push(e(n[a - 1], n[a])), i.push(r(t[a - 1], t[a])); return function (t) { var e = oa.bisect(n, t, 1, o) - 1; return i[e](u[e](t)) } } function Wu(n, t, e, r) { function u() { var u = Math.min(n.length, t.length) > 2 ? Bu : Vu, l = r ? Wr : Br; return a = u(n, t, l, e), o = u(t, n, l, Mr), i } function i(n) { return a(n) } var a, o; return i.invert = function (n) { return o(n) }, i.domain = function (t) { return arguments.length ? (n = t.map(Number), u()) : n }, i.range = function (n) { return arguments.length ? (t = n, u()) : t }, i.rangeRound = function (n) { return i.range(n).interpolate(jr) }, i.clamp = function (n) { return arguments.length ? (r = n, u()) : r }, i.interpolate = function (n) { return arguments.length ? (e = n, u()) : e }, i.ticks = function (t) { return Qu(n, t) }, i.tickFormat = function (t, e) { return ni(n, t, e) }, i.nice = function (t) { return Gu(n, t), u() }, i.copy = function () { return Wu(n, t, e, r) }, u() } function Ju(n, t) { return oa.rebind(n, t, \"range\", \"rangeRound\", \"interpolate\", \"clamp\") } function Gu(n, t) { return Xu(n, $u(Ku(n, t)[2])), Xu(n, $u(Ku(n, t)[2])), n } function Ku(n, t) { null == t && (t = 10); var e = Yu(n), r = e[1] - e[0], u = Math.pow(10, Math.floor(Math.log(r / t) / Math.LN10)), i = t / r * u; return .15 >= i ? u *= 10 : .35 >= i ? u *= 5 : .75 >= i && (u *= 2), e[0] = Math.ceil(e[0] / u) * u, e[1] = Math.floor(e[1] / u) * u + .5 * u, e[2] = u, e } function Qu(n, t) { return oa.range.apply(oa, Ku(n, t)) } function ni(n, t, e) { var r = Ku(n, t); if (e) { var u = so.exec(e); if (u.shift(), \"s\" === u[8]) { var i = oa.formatPrefix(Math.max(Ma(r[0]), Ma(r[1]))); return u[7] || (u[7] = \".\" + ti(i.scale(r[2]))), u[8] = \"f\", e = oa.format(u.join(\"\")), function (n) { return e(i.scale(n)) + i.symbol } } u[7] || (u[7] = \".\" + ei(u[8], r)), e = u.join(\"\") } else e = \",.\" + ti(r[2]) + \"f\"; return oa.format(e) } function ti(n) { return -Math.floor(Math.log(n) / Math.LN10 + .01) } function ei(n, t) { var e = ti(t[2]); return n in Sl ? Math.abs(e - ti(Math.max(Ma(t[0]), Ma(t[1])))) + +(\"e\" !== n) : e - 2 * (\"%\" === n) } function ri(n, t, e, r) { function u(n) { return (e ? Math.log(0 > n ? 0 : n) : -Math.log(n > 0 ? 0 : -n)) / Math.log(t) } function i(n) { return e ? Math.pow(t, n) : -Math.pow(t, -n) } function a(t) { return n(u(t)) } return a.invert = function (t) { return i(n.invert(t)) }, a.domain = function (t) { return arguments.length ? (e = t[0] >= 0, n.domain((r = t.map(Number)).map(u)), a) : r }, a.base = function (e) { return arguments.length ? (t = +e, n.domain(r.map(u)), a) : t }, a.nice = function () { var t = Xu(r.map(u), e ? Math : Nl); return n.domain(t), r = t.map(i), a }, a.ticks = function () { var n = Yu(r), a = [], o = n[0], l = n[1], c = Math.floor(u(o)), s = Math.ceil(u(l)), f = t % 1 ? 2 : t; if (isFinite(s - c)) { if (e) { for (; s > c; c++) for (var h = 1; f > h; h++) a.push(i(c) * h); a.push(i(c)) } else for (a.push(i(c)) ; c++ < s;) for (var h = f - 1; h > 0; h--) a.push(i(c) * h); for (c = 0; a[c] < o; c++); for (s = a.length; a[s - 1] > l; s--); a = a.slice(c, s) } return a }, a.tickFormat = function (n, e) { if (!arguments.length) return kl; arguments.length < 2 ? e = kl : \"function\" != typeof e && (e = oa.format(e)); var r = Math.max(1, t * n / a.ticks().length); return function (n) { var a = n / i(Math.round(u(n))); return t - .5 > a * t && (a *= t), r >= a ? e(n) : \"\" } }, a.copy = function () { return ri(n.copy(), t, e, r) }, Ju(a, n) } function ui(n, t, e) { function r(t) { return n(u(t)) } var u = ii(t), i = ii(1 / t); return r.invert = function (t) { return i(n.invert(t)) }, r.domain = function (t) { return arguments.length ? (n.domain((e = t.map(Number)).map(u)), r) : e }, r.ticks = function (n) { return Qu(e, n) }, r.tickFormat = function (n, t) { return ni(e, n, t) }, r.nice = function (n) { return r.domain(Gu(e, n)) }, r.exponent = function (a) { return arguments.length ? (u = ii(t = a), i = ii(1 / t), n.domain(e.map(u)), r) : t }, r.copy = function () { return ui(n.copy(), t, e) }, Ju(r, n) } function ii(n) { return function (t) { return 0 > t ? -Math.pow(-t, n) : Math.pow(t, n) } } function ai(n, t) { function e(e) { return i[((u.get(e) || (\"range\" === t.t ? u.set(e, n.push(e)) : NaN)) - 1) % i.length] } function r(t, e) { return oa.range(n.length).map(function (n) { return t + e * n }) } var u, i, a; return e.domain = function (r) { if (!arguments.length) return n; n = [], u = new c; for (var i, a = -1, o = r.length; ++a < o;) u.has(i = r[a]) || u.set(i, n.push(i)); return e[t.t].apply(e, t.a) }, e.range = function (n) { return arguments.length ? (i = n, a = 0, t = { t: \"range\", a: arguments }, e) : i }, e.rangePoints = function (u, o) { arguments.length < 2 && (o = 0); var l = u[0], c = u[1], s = n.length < 2 ? (l = (l + c) / 2, 0) : (c - l) / (n.length - 1 + o); return i = r(l + s * o / 2, s), a = 0, t = { t: \"rangePoints\", a: arguments }, e }, e.rangeRoundPoints = function (u, o) { arguments.length < 2 && (o = 0); var l = u[0], c = u[1], s = n.length < 2 ? (l = c = Math.round((l + c) / 2), 0) : (c - l) / (n.length - 1 + o) | 0; return i = r(l + Math.round(s * o / 2 + (c - l - (n.length - 1 + o) * s) / 2), s), a = 0, t = { t: \"rangeRoundPoints\", a: arguments }, e }, e.rangeBands = function (u, o, l) { arguments.length < 2 && (o = 0), arguments.length < 3 && (l = o); var c = u[1] < u[0], s = u[c - 0], f = u[1 - c], h = (f - s) / (n.length - o + 2 * l); return i = r(s + h * l, h), c && i.reverse(), a = h * (1 - o), t = { t: \"rangeBands\", a: arguments }, e }, e.rangeRoundBands = function (u, o, l) { arguments.length < 2 && (o = 0), arguments.length < 3 && (l = o); var c = u[1] < u[0], s = u[c - 0], f = u[1 - c], h = Math.floor((f - s) / (n.length - o + 2 * l)); return i = r(s + Math.round((f - s - (n.length - o) * h) / 2), h), c && i.reverse(), a = Math.round(h * (1 - o)), t = { t: \"rangeRoundBands\", a: arguments }, e }, e.rangeBand = function () { return a }, e.rangeExtent = function () { return Yu(t.a[0]) }, e.copy = function () { return ai(n, t) }, e.domain(n) } function oi(n, t) { function i() { var e = 0, r = t.length; for (o = []; ++e < r;) o[e - 1] = oa.quantile(n, e / r); return a } function a(n) { return isNaN(n = +n) ? void 0 : t[oa.bisect(o, n)] } var o; return a.domain = function (t) { return arguments.length ? (n = t.map(r).filter(u).sort(e), i()) : n }, a.range = function (n) { return arguments.length ? (t = n, i()) : t }, a.quantiles = function () { return o }, a.invertExtent = function (e) { return e = t.indexOf(e), 0 > e ? [NaN, NaN] : [e > 0 ? o[e - 1] : n[0], e < o.length ? o[e] : n[n.length - 1]] }, a.copy = function () { return oi(n, t) }, i() } function li(n, t, e) { function r(t) { return e[Math.max(0, Math.min(a, Math.floor(i * (t - n))))] } function u() { return i = e.length / (t - n), a = e.length - 1, r } var i, a; return r.domain = function (e) { return arguments.length ? (n = +e[0], t = +e[e.length - 1], u()) : [n, t] }, r.range = function (n) { return arguments.length ? (e = n, u()) : e }, r.invertExtent = function (t) { return t = e.indexOf(t), t = 0 > t ? NaN : t / i + n, [t, t + 1 / i] }, r.copy = function () { return li(n, t, e) }, u() } function ci(n, t) { function e(e) { return e >= e ? t[oa.bisect(n, e)] : void 0 } return e.domain = function (t) { return arguments.length ? (n = t, e) : n }, e.range = function (n) { return arguments.length ? (t = n, e) : t }, e.invertExtent = function (e) { return e = t.indexOf(e), [n[e - 1], n[e]] }, e.copy = function () { return ci(n, t) }, e } function si(n) { function t(n) { return +n } return t.invert = t, t.domain = t.range = function (e) { return arguments.length ? (n = e.map(t), t) : n }, t.ticks = function (t) { return Qu(n, t) }, t.tickFormat = function (t, e) { return ni(n, t, e) }, t.copy = function () { return si(n) }, t } function fi() { return 0 } function hi(n) { return n.innerRadius } function gi(n) { return n.outerRadius } function pi(n) { return n.startAngle } function vi(n) { return n.endAngle } function di(n) { return n && n.padAngle } function mi(n, t, e, r) { return (n - e) * t - (t - r) * n > 0 ? 0 : 1 } function yi(n, t, e, r, u) { var i = n[0] - t[0], a = n[1] - t[1], o = (u ? r : -r) / Math.sqrt(i * i + a * a), l = o * a, c = -o * i, s = n[0] + l, f = n[1] + c, h = t[0] + l, g = t[1] + c, p = (s + h) / 2, v = (f + g) / 2, d = h - s, m = g - f, y = d * d + m * m, M = e - r, x = s * g - h * f, b = (0 > m ? -1 : 1) * Math.sqrt(Math.max(0, M * M * y - x * x)), _ = (x * m - d * b) / y, w = (-x * d - m * b) / y, S = (x * m + d * b) / y, k = (-x * d + m * b) / y, N = _ - p, E = w - v, A = S - p, C = k - v; return N * N + E * E > A * A + C * C && (_ = S, w = k), [[_ - l, w - c], [_ * e / M, w * e / M]] } function Mi(n) { function t(t) { function a() { c.push(\"M\", i(n(s), o)) } for (var l, c = [], s = [], f = -1, h = t.length, g = En(e), p = En(r) ; ++f < h;) u.call(this, l = t[f], f) ? s.push([+g.call(this, l, f), +p.call(this, l, f)]) : s.length && (a(), s = []); return s.length && a(), c.length ? c.join(\"\") : null } var e = Ce, r = ze, u = zt, i = xi, a = i.key, o = .7; return t.x = function (n) { return arguments.length ? (e = n, t) : e }, t.y = function (n) { return arguments.length ? (r = n, t) : r }, t.defined = function (n) { return arguments.length ? (u = n, t) : u }, t.interpolate = function (n) { return arguments.length ? (a = \"function\" == typeof n ? i = n : (i = ql.get(n) || xi).key, t) : a }, t.tension = function (n) { return arguments.length ? (o = n, t) : o }, t } function xi(n) { return n.length > 1 ? n.join(\"L\") : n + \"Z\" } function bi(n) { return n.join(\"L\") + \"Z\" } function _i(n) { for (var t = 0, e = n.length, r = n[0], u = [r[0], \",\", r[1]]; ++t < e;) u.push(\"H\", (r[0] + (r = n[t])[0]) / 2, \"V\", r[1]); return e > 1 && u.push(\"H\", r[0]), u.join(\"\") } function wi(n) { for (var t = 0, e = n.length, r = n[0], u = [r[0], \",\", r[1]]; ++t < e;) u.push(\"V\", (r = n[t])[1], \"H\", r[0]); return u.join(\"\") } function Si(n) { for (var t = 0, e = n.length, r = n[0], u = [r[0], \",\", r[1]]; ++t < e;) u.push(\"H\", (r = n[t])[0], \"V\", r[1]); return u.join(\"\") } function ki(n, t) { return n.length < 4 ? xi(n) : n[1] + Ai(n.slice(1, -1), Ci(n, t)) } function Ni(n, t) { return n.length < 3 ? bi(n) : n[0] + Ai((n.push(n[0]), n), Ci([n[n.length - 2]].concat(n, [n[1]]), t)) } function Ei(n, t) { return n.length < 3 ? xi(n) : n[0] + Ai(n, Ci(n, t)) } function Ai(n, t) { if (t.length < 1 || n.length != t.length && n.length != t.length + 2) return xi(n); var e = n.length != t.length, r = \"\", u = n[0], i = n[1], a = t[0], o = a, l = 1; if (e && (r += \"Q\" + (i[0] - 2 * a[0] / 3) + \",\" + (i[1] - 2 * a[1] / 3) + \",\" + i[0] + \",\" + i[1], u = n[1], l = 2), t.length > 1) { o = t[1], i = n[l], l++, r += \"C\" + (u[0] + a[0]) + \",\" + (u[1] + a[1]) + \",\" + (i[0] - o[0]) + \",\" + (i[1] - o[1]) + \",\" + i[0] + \",\" + i[1]; for (var c = 2; c < t.length; c++, l++) i = n[l], o = t[c], r += \"S\" + (i[0] - o[0]) + \",\" + (i[1] - o[1]) + \",\" + i[0] + \",\" + i[1] } if (e) { var s = n[l]; r += \"Q\" + (i[0] + 2 * o[0] / 3) + \",\" + (i[1] + 2 * o[1] / 3) + \",\" + s[0] + \",\" + s[1] } return r } function Ci(n, t) { for (var e, r = [], u = (1 - t) / 2, i = n[0], a = n[1], o = 1, l = n.length; ++o < l;) e = i, i = a, a = n[o], r.push([u * (a[0] - e[0]), u * (a[1] - e[1])]); return r } function zi(n) { if (n.length < 3) return xi(n); var t = 1, e = n.length, r = n[0], u = r[0], i = r[1], a = [u, u, u, (r = n[1])[0]], o = [i, i, i, r[1]], l = [u, \",\", i, \"L\", Ri(Dl, a), \",\", Ri(Dl, o)]; for (n.push(n[e - 1]) ; ++t <= e;) r = n[t], a.shift(), a.push(r[0]), o.shift(), o.push(r[1]), Di(l, a, o); return n.pop(), l.push(\"L\", r), l.join(\"\") } function Li(n) { if (n.length < 4) return xi(n); for (var t, e = [], r = -1, u = n.length, i = [0], a = [0]; ++r < 3;) t = n[r], i.push(t[0]), a.push(t[1]); for (e.push(Ri(Dl, i) + \",\" + Ri(Dl, a)), --r; ++r < u;) t = n[r], i.shift(), i.push(t[0]), a.shift(), a.push(t[1]), Di(e, i, a); return e.join(\"\") } function qi(n) { for (var t, e, r = -1, u = n.length, i = u + 4, a = [], o = []; ++r < 4;) e = n[r % u], a.push(e[0]), o.push(e[1]); for (t = [Ri(Dl, a), \",\", Ri(Dl, o)], --r; ++r < i;) e = n[r % u], a.shift(), a.push(e[0]), o.shift(), o.push(e[1]), Di(t, a, o); return t.join(\"\") } function Ti(n, t) { var e = n.length - 1; if (e) for (var r, u, i = n[0][0], a = n[0][1], o = n[e][0] - i, l = n[e][1] - a, c = -1; ++c <= e;) r = n[c], u = c / e, r[0] = t * r[0] + (1 - t) * (i + u * o), r[1] = t * r[1] + (1 - t) * (a + u * l); return zi(n) } function Ri(n, t) { return n[0] * t[0] + n[1] * t[1] + n[2] * t[2] + n[3] * t[3] } function Di(n, t, e) { n.push(\"C\", Ri(Tl, t), \",\", Ri(Tl, e), \",\", Ri(Rl, t), \",\", Ri(Rl, e), \",\", Ri(Dl, t), \",\", Ri(Dl, e)) } function Pi(n, t) { return (t[1] - n[1]) / (t[0] - n[0]) } function ji(n) { for (var t = 0, e = n.length - 1, r = [], u = n[0], i = n[1], a = r[0] = Pi(u, i) ; ++t < e;) r[t] = (a + (a = Pi(u = i, i = n[t + 1]))) / 2; return r[t] = a, r } function Ui(n) { for (var t, e, r, u, i = [], a = ji(n), o = -1, l = n.length - 1; ++o < l;) t = Pi(n[o], n[o + 1]), Ma(t) < Da ? a[o] = a[o + 1] = 0 : (e = a[o] / t, r = a[o + 1] / t, u = e * e + r * r, u > 9 && (u = 3 * t / Math.sqrt(u), a[o] = u * e, a[o + 1] = u * r)); for (o = -1; ++o <= l;) u = (n[Math.min(l, o + 1)][0] - n[Math.max(0, o - 1)][0]) / (6 * (1 + a[o] * a[o])), i.push([u || 0, a[o] * u || 0]); return i } function Fi(n) { return n.length < 3 ? xi(n) : n[0] + Ai(n, Ui(n)) } function Hi(n) { for (var t, e, r, u = -1, i = n.length; ++u < i;) t = n[u], e = t[0], r = t[1] - Ha, t[0] = e * Math.cos(r), t[1] = e * Math.sin(r); return n } function Oi(n) {\r\n function t(t) {\r\n function l() { v.push(\"M\", o(n(m), f), s, c(n(d.reverse()), f), \"Z\") } for (var h, g, p, v = [], d = [], m = [], y = -1, M = t.length, x = En(e), b = En(u), _ = e === r ? function () {\r\n return g\r\n } : En(r), w = u === i ? function () { return p } : En(i) ; ++y < M;) a.call(this, h = t[y], y) ? (d.push([g = +x.call(this, h, y), p = +b.call(this, h, y)]), m.push([+_.call(this, h, y), +w.call(this, h, y)])) : d.length && (l(), d = [], m = []); return d.length && l(), v.length ? v.join(\"\") : null\r\n } var e = Ce, r = Ce, u = 0, i = ze, a = zt, o = xi, l = o.key, c = o, s = \"L\", f = .7; return t.x = function (n) { return arguments.length ? (e = r = n, t) : r }, t.x0 = function (n) { return arguments.length ? (e = n, t) : e }, t.x1 = function (n) { return arguments.length ? (r = n, t) : r }, t.y = function (n) { return arguments.length ? (u = i = n, t) : i }, t.y0 = function (n) { return arguments.length ? (u = n, t) : u }, t.y1 = function (n) { return arguments.length ? (i = n, t) : i }, t.defined = function (n) { return arguments.length ? (a = n, t) : a }, t.interpolate = function (n) { return arguments.length ? (l = \"function\" == typeof n ? o = n : (o = ql.get(n) || xi).key, c = o.reverse || o, s = o.closed ? \"M\" : \"L\", t) : l }, t.tension = function (n) { return arguments.length ? (f = n, t) : f }, t\r\n } function Ii(n) { return n.radius } function Yi(n) { return [n.x, n.y] } function Zi(n) { return function () { var t = n.apply(this, arguments), e = t[0], r = t[1] - Ha; return [e * Math.cos(r), e * Math.sin(r)] } } function Vi() { return 64 } function Xi() { return \"circle\" } function $i(n) { var t = Math.sqrt(n / ja); return \"M0,\" + t + \"A\" + t + \",\" + t + \" 0 1,1 0,\" + -t + \"A\" + t + \",\" + t + \" 0 1,1 0,\" + t + \"Z\" } function Bi(n) { return function () { var t, e, r; (t = this[n]) && (r = t[e = t.active]) && (r.timer.c = null, r.timer.t = NaN, --t.count ? delete t[e] : delete this[n], t.active += .5, r.event && r.event.interrupt.call(this, this.__data__, r.index)) } } function Wi(n, t, e) { return Sa(n, Il), n.namespace = t, n.id = e, n } function Ji(n, t, e, r) { var u = n.id, i = n.namespace; return Y(n, \"function\" == typeof e ? function (n, a, o) { n[i][u].tween.set(t, r(e.call(n, n.__data__, a, o))) } : (e = r(e), function (n) { n[i][u].tween.set(t, e) })) } function Gi(n) { return null == n && (n = \"\"), function () { this.textContent = n } } function Ki(n) { return null == n ? \"__transition__\" : \"__transition_\" + n + \"__\" } function Qi(n, t, e, r, u) { function i(n) { var t = v.delay; return s.t = t + l, n >= t ? a(n - t) : void (s.c = a) } function a(e) { var u = p.active, i = p[u]; i && (i.timer.c = null, i.timer.t = NaN, --p.count, delete p[u], i.event && i.event.interrupt.call(n, n.__data__, i.index)); for (var a in p) if (r > +a) { var c = p[a]; c.timer.c = null, c.timer.t = NaN, --p.count, delete p[a] } s.c = o, qn(function () { return s.c && o(e || 1) && (s.c = null, s.t = NaN), 1 }, 0, l), p.active = r, v.event && v.event.start.call(n, n.__data__, t), g = [], v.tween.forEach(function (e, r) { (r = r.call(n, n.__data__, t)) && g.push(r) }), h = v.ease, f = v.duration } function o(u) { for (var i = u / f, a = h(i), o = g.length; o > 0;) g[--o].call(n, a); return i >= 1 ? (v.event && v.event.end.call(n, n.__data__, t), --p.count ? delete p[r] : delete n[e], 1) : void 0 } var l, s, f, h, g, p = n[e] || (n[e] = { active: 0, count: 0 }), v = p[r]; v || (l = u.time, s = qn(i, 0, l), v = p[r] = { tween: new c, time: l, timer: s, delay: u.delay, duration: u.duration, ease: u.ease, index: t }, u = null, ++p.count) } function na(n, t, e) { n.attr(\"transform\", function (n) { var r = t(n); return \"translate(\" + (isFinite(r) ? r : e(n)) + \",0)\" }) } function ta(n, t, e) { n.attr(\"transform\", function (n) { var r = t(n); return \"translate(0,\" + (isFinite(r) ? r : e(n)) + \")\" }) } function ea(n) { return n.toISOString() } function ra(n, t, e) { function r(t) { return n(t) } function u(n, e) { var r = n[1] - n[0], u = r / e, i = oa.bisect(Gl, u); return i == Gl.length ? [t.year, Ku(n.map(function (n) { return n / 31536e6 }), e)[2]] : i ? t[u / Gl[i - 1] < Gl[i] / u ? i - 1 : i] : [nc, Ku(n, e)[2]] } return r.invert = function (t) { return ua(n.invert(t)) }, r.domain = function (t) { return arguments.length ? (n.domain(t), r) : n.domain().map(ua) }, r.nice = function (n, t) { function e(e) { return !isNaN(e) && !n.range(e, ua(+e + 1), t).length } var i = r.domain(), a = Yu(i), o = null == n ? u(a, 10) : \"number\" == typeof n && u(a, n); return o && (n = o[0], t = o[1]), r.domain(Xu(i, t > 1 ? { floor: function (t) { for (; e(t = n.floor(t)) ;) t = ua(t - 1); return t }, ceil: function (t) { for (; e(t = n.ceil(t)) ;) t = ua(+t + 1); return t } } : n)) }, r.ticks = function (n, t) { var e = Yu(r.domain()), i = null == n ? u(e, 10) : \"number\" == typeof n ? u(e, n) : !n.range && [{ range: n }, t]; return i && (n = i[0], t = i[1]), n.range(e[0], ua(+e[1] + 1), 1 > t ? 1 : t) }, r.tickFormat = function () { return e }, r.copy = function () { return ra(n.copy(), t, e) }, Ju(r, n) } function ua(n) { return new Date(n) } function ia(n) { return JSON.parse(n.responseText) } function aa(n) { var t = sa.createRange(); return t.selectNode(sa.body), t.createContextualFragment(n.responseText) } var oa = { version: \"3.5.12\" }, la = [].slice, ca = function (n) { return la.call(n) }, sa = this.document; if (sa) try { ca(sa.documentElement.childNodes)[0].nodeType } catch (fa) { ca = function (n) { for (var t = n.length, e = new Array(t) ; t--;) e[t] = n[t]; return e } } if (Date.now || (Date.now = function () { return +new Date }), sa) try { sa.createElement(\"DIV\").style.setProperty(\"opacity\", 0, \"\") } catch (ha) { var ga = this.Element.prototype, pa = ga.setAttribute, va = ga.setAttributeNS, da = this.CSSStyleDeclaration.prototype, ma = da.setProperty; ga.setAttribute = function (n, t) { pa.call(this, n, t + \"\") }, ga.setAttributeNS = function (n, t, e) { va.call(this, n, t, e + \"\") }, da.setProperty = function (n, t, e) { ma.call(this, n, t + \"\", e) } } oa.ascending = e, oa.descending = function (n, t) { return n > t ? -1 : t > n ? 1 : t >= n ? 0 : NaN }, oa.min = function (n, t) { var e, r, u = -1, i = n.length; if (1 === arguments.length) { for (; ++u < i;) if (null != (r = n[u]) && r >= r) { e = r; break } for (; ++u < i;) null != (r = n[u]) && e > r && (e = r) } else { for (; ++u < i;) if (null != (r = t.call(n, n[u], u)) && r >= r) { e = r; break } for (; ++u < i;) null != (r = t.call(n, n[u], u)) && e > r && (e = r) } return e }, oa.max = function (n, t) { var e, r, u = -1, i = n.length; if (1 === arguments.length) { for (; ++u < i;) if (null != (r = n[u]) && r >= r) { e = r; break } for (; ++u < i;) null != (r = n[u]) && r > e && (e = r) } else { for (; ++u < i;) if (null != (r = t.call(n, n[u], u)) && r >= r) { e = r; break } for (; ++u < i;) null != (r = t.call(n, n[u], u)) && r > e && (e = r) } return e }, oa.extent = function (n, t) { var e, r, u, i = -1, a = n.length; if (1 === arguments.length) { for (; ++i < a;) if (null != (r = n[i]) && r >= r) { e = u = r; break } for (; ++i < a;) null != (r = n[i]) && (e > r && (e = r), r > u && (u = r)) } else { for (; ++i < a;) if (null != (r = t.call(n, n[i], i)) && r >= r) { e = u = r; break } for (; ++i < a;) null != (r = t.call(n, n[i], i)) && (e > r && (e = r), r > u && (u = r)) } return [e, u] }, oa.sum = function (n, t) { var e, r = 0, i = n.length, a = -1; if (1 === arguments.length) for (; ++a < i;) u(e = +n[a]) && (r += e); else for (; ++a < i;) u(e = +t.call(n, n[a], a)) && (r += e); return r }, oa.mean = function (n, t) { var e, i = 0, a = n.length, o = -1, l = a; if (1 === arguments.length) for (; ++o < a;) u(e = r(n[o])) ? i += e : --l; else for (; ++o < a;) u(e = r(t.call(n, n[o], o))) ? i += e : --l; return l ? i / l : void 0 }, oa.quantile = function (n, t) { var e = (n.length - 1) * t + 1, r = Math.floor(e), u = +n[r - 1], i = e - r; return i ? u + i * (n[r] - u) : u }, oa.median = function (n, t) { var i, a = [], o = n.length, l = -1; if (1 === arguments.length) for (; ++l < o;) u(i = r(n[l])) && a.push(i); else for (; ++l < o;) u(i = r(t.call(n, n[l], l))) && a.push(i); return a.length ? oa.quantile(a.sort(e), .5) : void 0 }, oa.variance = function (n, t) { var e, i, a = n.length, o = 0, l = 0, c = -1, s = 0; if (1 === arguments.length) for (; ++c < a;) u(e = r(n[c])) && (i = e - o, o += i / ++s, l += i * (e - o)); else for (; ++c < a;) u(e = r(t.call(n, n[c], c))) && (i = e - o, o += i / ++s, l += i * (e - o)); return s > 1 ? l / (s - 1) : void 0 }, oa.deviation = function () { var n = oa.variance.apply(this, arguments); return n ? Math.sqrt(n) : n }; var ya = i(e); oa.bisectLeft = ya.left, oa.bisect = oa.bisectRight = ya.right, oa.bisector = function (n) { return i(1 === n.length ? function (t, r) { return e(n(t), r) } : n) }, oa.shuffle = function (n, t, e) { (i = arguments.length) < 3 && (e = n.length, 2 > i && (t = 0)); for (var r, u, i = e - t; i;) u = Math.random() * i-- | 0, r = n[i + t], n[i + t] = n[u + t], n[u + t] = r; return n }, oa.permute = function (n, t) { for (var e = t.length, r = new Array(e) ; e--;) r[e] = n[t[e]]; return r }, oa.pairs = function (n) { for (var t, e = 0, r = n.length - 1, u = n[0], i = new Array(0 > r ? 0 : r) ; r > e;) i[e] = [t = u, u = n[++e]]; return i }, oa.zip = function () { if (!(r = arguments.length)) return []; for (var n = -1, t = oa.min(arguments, a), e = new Array(t) ; ++n < t;) for (var r, u = -1, i = e[n] = new Array(r) ; ++u < r;) i[u] = arguments[u][n]; return e }, oa.transpose = function (n) { return oa.zip.apply(oa, n) }, oa.keys = function (n) { var t = []; for (var e in n) t.push(e); return t }, oa.values = function (n) { var t = []; for (var e in n) t.push(n[e]); return t }, oa.entries = function (n) { var t = []; for (var e in n) t.push({ key: e, value: n[e] }); return t }, oa.merge = function (n) { for (var t, e, r, u = n.length, i = -1, a = 0; ++i < u;) a += n[i].length; for (e = new Array(a) ; --u >= 0;) for (r = n[u], t = r.length; --t >= 0;) e[--a] = r[t]; return e }; var Ma = Math.abs; oa.range = function (n, t, e) { if (arguments.length < 3 && (e = 1, arguments.length < 2 && (t = n, n = 0)), (t - n) / e === 1 / 0) throw new Error(\"infinite range\"); var r, u = [], i = o(Ma(e)), a = -1; if (n *= i, t *= i, e *= i, 0 > e) for (; (r = n + e * ++a) > t;) u.push(r / i); else for (; (r = n + e * ++a) < t;) u.push(r / i); return u }, oa.map = function (n, t) { var e = new c; if (n instanceof c) n.forEach(function (n, t) { e.set(n, t) }); else if (Array.isArray(n)) { var r, u = -1, i = n.length; if (1 === arguments.length) for (; ++u < i;) e.set(u, n[u]); else for (; ++u < i;) e.set(t.call(n, r = n[u], u), r) } else for (var a in n) e.set(a, n[a]); return e }; var xa = \"__proto__\", ba = \"\\x00\"; l(c, { has: h, get: function (n) { return this._[s(n)] }, set: function (n, t) { return this._[s(n)] = t }, remove: g, keys: p, values: function () { var n = []; for (var t in this._) n.push(this._[t]); return n }, entries: function () { var n = []; for (var t in this._) n.push({ key: f(t), value: this._[t] }); return n }, size: v, empty: d, forEach: function (n) { for (var t in this._) n.call(this, f(t), this._[t]) } }), oa.nest = function () { function n(t, a, o) { if (o >= i.length) return r ? r.call(u, a) : e ? a.sort(e) : a; for (var l, s, f, h, g = -1, p = a.length, v = i[o++], d = new c; ++g < p;) (h = d.get(l = v(s = a[g]))) ? h.push(s) : d.set(l, [s]); return t ? (s = t(), f = function (e, r) { s.set(e, n(t, r, o)) }) : (s = {}, f = function (e, r) { s[e] = n(t, r, o) }), d.forEach(f), s } function t(n, e) { if (e >= i.length) return n; var r = [], u = a[e++]; return n.forEach(function (n, u) { r.push({ key: n, values: t(u, e) }) }), u ? r.sort(function (n, t) { return u(n.key, t.key) }) : r } var e, r, u = {}, i = [], a = []; return u.map = function (t, e) { return n(e, t, 0) }, u.entries = function (e) { return t(n(oa.map, e, 0), 0) }, u.key = function (n) { return i.push(n), u }, u.sortKeys = function (n) { return a[i.length - 1] = n, u }, u.sortValues = function (n) { return e = n, u }, u.rollup = function (n) { return r = n, u }, u }, oa.set = function (n) { var t = new m; if (n) for (var e = 0, r = n.length; r > e; ++e) t.add(n[e]); return t }, l(m, { has: h, add: function (n) { return this._[s(n += \"\")] = !0, n }, remove: g, values: p, size: v, empty: d, forEach: function (n) { for (var t in this._) n.call(this, f(t)) } }), oa.behavior = {}, oa.rebind = function (n, t) { for (var e, r = 1, u = arguments.length; ++r < u;) n[e = arguments[r]] = M(n, t, t[e]); return n }; var _a = [\"webkit\", \"ms\", \"moz\", \"Moz\", \"o\", \"O\"]; oa.dispatch = function () { for (var n = new _, t = -1, e = arguments.length; ++t < e;) n[arguments[t]] = w(n); return n }, _.prototype.on = function (n, t) { var e = n.indexOf(\".\"), r = \"\"; if (e >= 0 && (r = n.slice(e + 1), n = n.slice(0, e)), n) return arguments.length < 2 ? this[n].on(r) : this[n].on(r, t); if (2 === arguments.length) { if (null == t) for (n in this) this.hasOwnProperty(n) && this[n].on(r, null); return this } }, oa.event = null, oa.requote = function (n) { return n.replace(wa, \"\\\\$&\") }; var wa = /[\\\\\\^\\$\\*\\+\\?\\|\\[\\]\\(\\)\\.\\{\\}]/g, Sa = {}.__proto__ ? function (n, t) { n.__proto__ = t } : function (n, t) { for (var e in t) n[e] = t[e] }, ka = function (n, t) { return t.querySelector(n) }, Na = function (n, t) { return t.querySelectorAll(n) }, Ea = function (n, t) { var e = n.matches || n[x(n, \"matchesSelector\")]; return (Ea = function (n, t) { return e.call(n, t) })(n, t) }; \"function\" == typeof Sizzle && (ka = function (n, t) { return Sizzle(n, t)[0] || null }, Na = Sizzle, Ea = Sizzle.matchesSelector), oa.selection = function () { return oa.select(sa.documentElement) }; var Aa = oa.selection.prototype = []; Aa.select = function (n) { var t, e, r, u, i = []; n = A(n); for (var a = -1, o = this.length; ++a < o;) { i.push(t = []), t.parentNode = (r = this[a]).parentNode; for (var l = -1, c = r.length; ++l < c;) (u = r[l]) ? (t.push(e = n.call(u, u.__data__, l, a)), e && \"__data__\" in u && (e.__data__ = u.__data__)) : t.push(null) } return E(i) }, Aa.selectAll = function (n) { var t, e, r = []; n = C(n); for (var u = -1, i = this.length; ++u < i;) for (var a = this[u], o = -1, l = a.length; ++o < l;) (e = a[o]) && (r.push(t = ca(n.call(e, e.__data__, o, u))), t.parentNode = e); return E(r) }; var Ca = { svg: \"http://www.w3.org/2000/svg\", xhtml: \"http://www.w3.org/1999/xhtml\", xlink: \"http://www.w3.org/1999/xlink\", xml: \"http://www.w3.org/XML/1998/namespace\", xmlns: \"http://www.w3.org/2000/xmlns/\" }; oa.ns = { prefix: Ca, qualify: function (n) { var t = n.indexOf(\":\"), e = n; return t >= 0 && \"xmlns\" !== (e = n.slice(0, t)) && (n = n.slice(t + 1)), Ca.hasOwnProperty(e) ? { space: Ca[e], local: n } : n } }, Aa.attr = function (n, t) { if (arguments.length < 2) { if (\"string\" == typeof n) { var e = this.node(); return n = oa.ns.qualify(n), n.local ? e.getAttributeNS(n.space, n.local) : e.getAttribute(n) } for (t in n) this.each(z(t, n[t])); return this } return this.each(z(n, t)) }, Aa.classed = function (n, t) { if (arguments.length < 2) { if (\"string\" == typeof n) { var e = this.node(), r = (n = T(n)).length, u = -1; if (t = e.classList) { for (; ++u < r;) if (!t.contains(n[u])) return !1 } else for (t = e.getAttribute(\"class\") ; ++u < r;) if (!q(n[u]).test(t)) return !1; return !0 } for (t in n) this.each(R(t, n[t])); return this } return this.each(R(n, t)) }, Aa.style = function (n, e, r) { var u = arguments.length; if (3 > u) { if (\"string\" != typeof n) { 2 > u && (e = \"\"); for (r in n) this.each(P(r, n[r], e)); return this } if (2 > u) { var i = this.node(); return t(i).getComputedStyle(i, null).getPropertyValue(n) } r = \"\" } return this.each(P(n, e, r)) }, Aa.property = function (n, t) { if (arguments.length < 2) { if (\"string\" == typeof n) return this.node()[n]; for (t in n) this.each(j(t, n[t])); return this } return this.each(j(n, t)) }, Aa.text = function (n) { return arguments.length ? this.each(\"function\" == typeof n ? function () { var t = n.apply(this, arguments); this.textContent = null == t ? \"\" : t } : null == n ? function () { this.textContent = \"\" } : function () { this.textContent = n }) : this.node().textContent }, Aa.html = function (n) { return arguments.length ? this.each(\"function\" == typeof n ? function () { var t = n.apply(this, arguments); this.innerHTML = null == t ? \"\" : t } : null == n ? function () { this.innerHTML = \"\" } : function () { this.innerHTML = n }) : this.node().innerHTML }, Aa.append = function (n) { return n = U(n), this.select(function () { return this.appendChild(n.apply(this, arguments)) }) }, Aa.insert = function (n, t) { return n = U(n), t = A(t), this.select(function () { return this.insertBefore(n.apply(this, arguments), t.apply(this, arguments) || null) }) }, Aa.remove = function () { return this.each(F) }, Aa.data = function (n, t) { function e(n, e) { var r, u, i, a = n.length, f = e.length, h = Math.min(a, f), g = new Array(f), p = new Array(f), v = new Array(a); if (t) { var d, m = new c, y = new Array(a); for (r = -1; ++r < a;) (u = n[r]) && (m.has(d = t.call(u, u.__data__, r)) ? v[r] = u : m.set(d, u), y[r] = d); for (r = -1; ++r < f;) (u = m.get(d = t.call(e, i = e[r], r))) ? u !== !0 && (g[r] = u, u.__data__ = i) : p[r] = H(i), m.set(d, !0); for (r = -1; ++r < a;) r in y && m.get(y[r]) !== !0 && (v[r] = n[r]) } else { for (r = -1; ++r < h;) u = n[r], i = e[r], u ? (u.__data__ = i, g[r] = u) : p[r] = H(i); for (; f > r; ++r) p[r] = H(e[r]); for (; a > r; ++r) v[r] = n[r] } p.update = g, p.parentNode = g.parentNode = v.parentNode = n.parentNode, o.push(p), l.push(g), s.push(v) } var r, u, i = -1, a = this.length; if (!arguments.length) { for (n = new Array(a = (r = this[0]).length) ; ++i < a;) (u = r[i]) && (n[i] = u.__data__); return n } var o = Z([]), l = E([]), s = E([]); if (\"function\" == typeof n) for (; ++i < a;) e(r = this[i], n.call(r, r.parentNode.__data__, i)); else for (; ++i < a;) e(r = this[i], n); return l.enter = function () { return o }, l.exit = function () { return s }, l }, Aa.datum = function (n) { return arguments.length ? this.property(\"__data__\", n) : this.property(\"__data__\") }, Aa.filter = function (n) { var t, e, r, u = []; \"function\" != typeof n && (n = O(n)); for (var i = 0, a = this.length; a > i; i++) { u.push(t = []), t.parentNode = (e = this[i]).parentNode; for (var o = 0, l = e.length; l > o; o++) (r = e[o]) && n.call(r, r.__data__, o, i) && t.push(r) } return E(u) }, Aa.order = function () { for (var n = -1, t = this.length; ++n < t;) for (var e, r = this[n], u = r.length - 1, i = r[u]; --u >= 0;) (e = r[u]) && (i && i !== e.nextSibling && i.parentNode.insertBefore(e, i), i = e); return this }, Aa.sort = function (n) { n = I.apply(this, arguments); for (var t = -1, e = this.length; ++t < e;) this[t].sort(n); return this.order() }, Aa.each = function (n) { return Y(this, function (t, e, r) { n.call(t, t.__data__, e, r) }) }, Aa.call = function (n) { var t = ca(arguments); return n.apply(t[0] = this, t), this }, Aa.empty = function () { return !this.node() }, Aa.node = function () { for (var n = 0, t = this.length; t > n; n++) for (var e = this[n], r = 0, u = e.length; u > r; r++) { var i = e[r]; if (i) return i } return null }, Aa.size = function () { var n = 0; return Y(this, function () { ++n }), n }; var za = []; oa.selection.enter = Z, oa.selection.enter.prototype = za, za.append = Aa.append, za.empty = Aa.empty, za.node = Aa.node, za.call = Aa.call, za.size = Aa.size, za.select = function (n) { for (var t, e, r, u, i, a = [], o = -1, l = this.length; ++o < l;) { r = (u = this[o]).update, a.push(t = []), t.parentNode = u.parentNode; for (var c = -1, s = u.length; ++c < s;) (i = u[c]) ? (t.push(r[c] = e = n.call(u.parentNode, i.__data__, c, o)), e.__data__ = i.__data__) : t.push(null) } return E(a) }, za.insert = function (n, t) { return arguments.length < 2 && (t = V(this)), Aa.insert.call(this, n, t) }, oa.select = function (t) { var e; return \"string\" == typeof t ? (e = [ka(t, sa)], e.parentNode = sa.documentElement) : (e = [t], e.parentNode = n(t)), E([e]) }, oa.selectAll = function (n) { var t; return \"string\" == typeof n ? (t = ca(Na(n, sa)), t.parentNode = sa.documentElement) : (t = ca(n), t.parentNode = null), E([t]) }, Aa.on = function (n, t, e) { var r = arguments.length; if (3 > r) { if (\"string\" != typeof n) { 2 > r && (t = !1); for (e in n) this.each(X(e, n[e], t)); return this } if (2 > r) return (r = this.node()[\"__on\" + n]) && r._; e = !1 } return this.each(X(n, t, e)) }; var La = oa.map({ mouseenter: \"mouseover\", mouseleave: \"mouseout\" }); sa && La.forEach(function (n) { \"on\" + n in sa && La.remove(n) }); var qa, Ta = 0; oa.mouse = function (n) { return J(n, k()) }; var Ra = this.navigator && /WebKit/.test(this.navigator.userAgent) ? -1 : 0; oa.touch = function (n, t, e) { if (arguments.length < 3 && (e = t, t = k().changedTouches), t) for (var r, u = 0, i = t.length; i > u; ++u) if ((r = t[u]).identifier === e) return J(n, r) }, oa.behavior.drag = function () { function n() { this.on(\"mousedown.drag\", i).on(\"touchstart.drag\", a) } function e(n, t, e, i, a) { return function () { function o() { var n, e, r = t(h, v); r && (n = r[0] - M[0], e = r[1] - M[1], p |= n | e, M = r, g({ type: \"drag\", x: r[0] + c[0], y: r[1] + c[1], dx: n, dy: e })) } function l() { t(h, v) && (m.on(i + d, null).on(a + d, null), y(p), g({ type: \"dragend\" })) } var c, s = this, f = oa.event.target, h = s.parentNode, g = r.of(s, arguments), p = 0, v = n(), d = \".drag\" + (null == v ? \"\" : \"-\" + v), m = oa.select(e(f)).on(i + d, o).on(a + d, l), y = W(f), M = t(h, v); u ? (c = u.apply(s, arguments), c = [c.x - M[0], c.y - M[1]]) : c = [0, 0], g({ type: \"dragstart\" }) } } var r = N(n, \"drag\", \"dragstart\", \"dragend\"), u = null, i = e(b, oa.mouse, t, \"mousemove\", \"mouseup\"), a = e(G, oa.touch, y, \"touchmove\", \"touchend\"); return n.origin = function (t) { return arguments.length ? (u = t, n) : u }, oa.rebind(n, r, \"on\") }, oa.touches = function (n, t) { return arguments.length < 2 && (t = k().touches), t ? ca(t).map(function (t) { var e = J(n, t); return e.identifier = t.identifier, e }) : [] }; var Da = 1e-6, Pa = Da * Da, ja = Math.PI, Ua = 2 * ja, Fa = Ua - Da, Ha = ja / 2, Oa = ja / 180, Ia = 180 / ja, Ya = Math.SQRT2, Za = 2, Va = 4; oa.interpolateZoom = function (n, t) { var e, r, u = n[0], i = n[1], a = n[2], o = t[0], l = t[1], c = t[2], s = o - u, f = l - i, h = s * s + f * f; if (Pa > h) r = Math.log(c / a) / Ya, e = function (n) { return [u + n * s, i + n * f, a * Math.exp(Ya * n * r)] }; else { var g = Math.sqrt(h), p = (c * c - a * a + Va * h) / (2 * a * Za * g), v = (c * c - a * a - Va * h) / (2 * c * Za * g), d = Math.log(Math.sqrt(p * p + 1) - p), m = Math.log(Math.sqrt(v * v + 1) - v); r = (m - d) / Ya, e = function (n) { var t = n * r, e = rn(d), o = a / (Za * g) * (e * un(Ya * t + d) - en(d)); return [u + o * s, i + o * f, a * e / rn(Ya * t + d)] } } return e.duration = 1e3 * r, e }, oa.behavior.zoom = function () { function n(n) { n.on(L, f).on($a + \".zoom\", g).on(\"dblclick.zoom\", p).on(R, h) } function e(n) { return [(n[0] - k.x) / k.k, (n[1] - k.y) / k.k] } function r(n) { return [n[0] * k.k + k.x, n[1] * k.k + k.y] } function u(n) { k.k = Math.max(A[0], Math.min(A[1], n)) } function i(n, t) { t = r(t), k.x += n[0] - t[0], k.y += n[1] - t[1] } function a(t, e, r, a) { t.__chart__ = { x: k.x, y: k.y, k: k.k }, u(Math.pow(2, a)), i(d = e, r), t = oa.select(t), C > 0 && (t = t.transition().duration(C)), t.call(n.event) } function o() { b && b.domain(x.range().map(function (n) { return (n - k.x) / k.k }).map(x.invert)), w && w.domain(_.range().map(function (n) { return (n - k.y) / k.k }).map(_.invert)) } function l(n) { z++ || n({ type: \"zoomstart\" }) } function c(n) { o(), n({ type: \"zoom\", scale: k.k, translate: [k.x, k.y] }) } function s(n) { --z || (n({ type: \"zoomend\" }), d = null) } function f() { function n() { o = 1, i(oa.mouse(u), h), c(a) } function r() { f.on(q, null).on(T, null), g(o), s(a) } var u = this, a = D.of(u, arguments), o = 0, f = oa.select(t(u)).on(q, n).on(T, r), h = e(oa.mouse(u)), g = W(u); Ol.call(u), l(a) } function h() { function n() { var n = oa.touches(p); return g = k.k, n.forEach(function (n) { n.identifier in d && (d[n.identifier] = e(n)) }), n } function t() { var t = oa.event.target; oa.select(t).on(x, r).on(b, o), _.push(t); for (var e = oa.event.changedTouches, u = 0, i = e.length; i > u; ++u) d[e[u].identifier] = null; var l = n(), c = Date.now(); if (1 === l.length) { if (500 > c - M) { var s = l[0]; a(p, s, d[s.identifier], Math.floor(Math.log(k.k) / Math.LN2) + 1), S() } M = c } else if (l.length > 1) { var s = l[0], f = l[1], h = s[0] - f[0], g = s[1] - f[1]; m = h * h + g * g } } function r() { var n, t, e, r, a = oa.touches(p); Ol.call(p); for (var o = 0, l = a.length; l > o; ++o, r = null) if (e = a[o], r = d[e.identifier]) { if (t) break; n = e, t = r } if (r) { var s = (s = e[0] - n[0]) * s + (s = e[1] - n[1]) * s, f = m && Math.sqrt(s / m); n = [(n[0] + e[0]) / 2, (n[1] + e[1]) / 2], t = [(t[0] + r[0]) / 2, (t[1] + r[1]) / 2], u(f * g) } M = null, i(n, t), c(v) } function o() { if (oa.event.touches.length) { for (var t = oa.event.changedTouches, e = 0, r = t.length; r > e; ++e) delete d[t[e].identifier]; for (var u in d) return void n() } oa.selectAll(_).on(y, null), w.on(L, f).on(R, h), N(), s(v) } var g, p = this, v = D.of(p, arguments), d = {}, m = 0, y = \".zoom-\" + oa.event.changedTouches[0].identifier, x = \"touchmove\" + y, b = \"touchend\" + y, _ = [], w = oa.select(p), N = W(p); t(), l(v), w.on(L, null).on(R, t) } function g() { var n = D.of(this, arguments); y ? clearTimeout(y) : (Ol.call(this), v = e(d = m || oa.mouse(this)), l(n)), y = setTimeout(function () { y = null, s(n) }, 50), S(), u(Math.pow(2, .002 * Xa()) * k.k), i(d, v), c(n) } function p() { var n = oa.mouse(this), t = Math.log(k.k) / Math.LN2; a(this, n, e(n), oa.event.shiftKey ? Math.ceil(t) - 1 : Math.floor(t) + 1) } var v, d, m, y, M, x, b, _, w, k = { x: 0, y: 0, k: 1 }, E = [960, 500], A = Ba, C = 250, z = 0, L = \"mousedown.zoom\", q = \"mousemove.zoom\", T = \"mouseup.zoom\", R = \"touchstart.zoom\", D = N(n, \"zoomstart\", \"zoom\", \"zoomend\"); return $a || ($a = \"onwheel\" in sa ? (Xa = function () { return -oa.event.deltaY * (oa.event.deltaMode ? 120 : 1) }, \"wheel\") : \"onmousewheel\" in sa ? (Xa = function () { return oa.event.wheelDelta }, \"mousewheel\") : (Xa = function () { return -oa.event.detail }, \"MozMousePixelScroll\")), n.event = function (n) { n.each(function () { var n = D.of(this, arguments), t = k; Fl ? oa.select(this).transition().each(\"start.zoom\", function () { k = this.__chart__ || { x: 0, y: 0, k: 1 }, l(n) }).tween(\"zoom:zoom\", function () { var e = E[0], r = E[1], u = d ? d[0] : e / 2, i = d ? d[1] : r / 2, a = oa.interpolateZoom([(u - k.x) / k.k, (i - k.y) / k.k, e / k.k], [(u - t.x) / t.k, (i - t.y) / t.k, e / t.k]); return function (t) { var r = a(t), o = e / r[2]; this.__chart__ = k = { x: u - r[0] * o, y: i - r[1] * o, k: o }, c(n) } }).each(\"interrupt.zoom\", function () { s(n) }).each(\"end.zoom\", function () { s(n) }) : (this.__chart__ = k, l(n), c(n), s(n)) }) }, n.translate = function (t) { return arguments.length ? (k = { x: +t[0], y: +t[1], k: k.k }, o(), n) : [k.x, k.y] }, n.scale = function (t) { return arguments.length ? (k = { x: k.x, y: k.y, k: null }, u(+t), o(), n) : k.k }, n.scaleExtent = function (t) { return arguments.length ? (A = null == t ? Ba : [+t[0], +t[1]], n) : A }, n.center = function (t) { return arguments.length ? (m = t && [+t[0], +t[1]], n) : m }, n.size = function (t) { return arguments.length ? (E = t && [+t[0], +t[1]], n) : E }, n.duration = function (t) { return arguments.length ? (C = +t, n) : C }, n.x = function (t) { return arguments.length ? (b = t, x = t.copy(), k = { x: 0, y: 0, k: 1 }, n) : b }, n.y = function (t) { return arguments.length ? (w = t, _ = t.copy(), k = { x: 0, y: 0, k: 1 }, n) : w }, oa.rebind(n, D, \"on\") }; var Xa, $a, Ba = [0, 1 / 0]; oa.color = on, on.prototype.toString = function () { return this.rgb() + \"\" }, oa.hsl = ln; var Wa = ln.prototype = new on; Wa.brighter = function (n) { return n = Math.pow(.7, arguments.length ? n : 1), new ln(this.h, this.s, this.l / n) }, Wa.darker = function (n) { return n = Math.pow(.7, arguments.length ? n : 1), new ln(this.h, this.s, n * this.l) }, Wa.rgb = function () { return cn(this.h, this.s, this.l) }, oa.hcl = sn; var Ja = sn.prototype = new on; Ja.brighter = function (n) { return new sn(this.h, this.c, Math.min(100, this.l + Ga * (arguments.length ? n : 1))) }, Ja.darker = function (n) { return new sn(this.h, this.c, Math.max(0, this.l - Ga * (arguments.length ? n : 1))) }, Ja.rgb = function () { return fn(this.h, this.c, this.l).rgb() }, oa.lab = hn; var Ga = 18, Ka = .95047, Qa = 1, no = 1.08883, to = hn.prototype = new on; to.brighter = function (n) { return new hn(Math.min(100, this.l + Ga * (arguments.length ? n : 1)), this.a, this.b) }, to.darker = function (n) { return new hn(Math.max(0, this.l - Ga * (arguments.length ? n : 1)), this.a, this.b) }, to.rgb = function () { return gn(this.l, this.a, this.b) }, oa.rgb = yn; var eo = yn.prototype = new on; eo.brighter = function (n) { n = Math.pow(.7, arguments.length ? n : 1); var t = this.r, e = this.g, r = this.b, u = 30; return t || e || r ? (t && u > t && (t = u), e && u > e && (e = u), r && u > r && (r = u), new yn(Math.min(255, t / n), Math.min(255, e / n), Math.min(255, r / n))) : new yn(u, u, u) }, eo.darker = function (n) { return n = Math.pow(.7, arguments.length ? n : 1), new yn(n * this.r, n * this.g, n * this.b) }, eo.hsl = function () { return wn(this.r, this.g, this.b) }, eo.toString = function () { return \"#\" + bn(this.r) + bn(this.g) + bn(this.b) }; var ro = oa.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 }); ro.forEach(function (n, t) { ro.set(n, Mn(t)) }), oa.functor = En, oa.xhr = An(y), oa.dsv = function (n, t) { function e(n, e, i) { arguments.length < 3 && (i = e, e = null); var a = Cn(n, t, null == e ? r : u(e), i); return a.row = function (n) { return arguments.length ? a.response(null == (e = n) ? r : u(n)) : e }, a } function r(n) { return e.parse(n.responseText) } function u(n) { return function (t) { return e.parse(t.responseText, n) } } function i(t) { return t.map(a).join(n) } function a(n) { return o.test(n) ? '\"' + n.replace(/\\\"/g, '\"\"') + '\"' : n } var o = new RegExp('[\"' + n + \"\\n]\"), l = n.charCodeAt(0); return e.parse = function (n, t) { var r; return e.parseRows(n, function (n, e) { if (r) return r(n, e - 1); var u = new Function(\"d\", \"return {\" + n.map(function (n, t) { return JSON.stringify(n) + \": d[\" + t + \"]\" }).join(\",\") + \"}\"); r = t ? function (n, e) { return t(u(n), e) } : u }) }, e.parseRows = function (n, t) { function e() { if (s >= c) return a; if (u) return u = !1, i; var t = s; if (34 === n.charCodeAt(t)) { for (var e = t; e++ < c;) if (34 === n.charCodeAt(e)) { if (34 !== n.charCodeAt(e + 1)) break; ++e } s = e + 2; var r = n.charCodeAt(e + 1); return 13 === r ? (u = !0, 10 === n.charCodeAt(e + 2) && ++s) : 10 === r && (u = !0), n.slice(t + 1, e).replace(/\"\"/g, '\"') } for (; c > s;) { var r = n.charCodeAt(s++), o = 1; if (10 === r) u = !0; else if (13 === r) u = !0, 10 === n.charCodeAt(s) && (++s, ++o); else if (r !== l) continue; return n.slice(t, s - o) } return n.slice(t) } for (var r, u, i = {}, a = {}, o = [], c = n.length, s = 0, f = 0; (r = e()) !== a;) { for (var h = []; r !== i && r !== a;) h.push(r), r = e(); t && null == (h = t(h, f++)) || o.push(h) } return o }, e.format = function (t) { if (Array.isArray(t[0])) return e.formatRows(t); var r = new m, u = []; return t.forEach(function (n) { for (var t in n) r.has(t) || u.push(r.add(t)) }), [u.map(a).join(n)].concat(t.map(function (t) { return u.map(function (n) { return a(t[n]) }).join(n) })).join(\"\\n\") }, e.formatRows = function (n) { return n.map(i).join(\"\\n\") }, e }, oa.csv = oa.dsv(\",\", \"text/csv\"), oa.tsv = oa.dsv(\"\t\", \"text/tab-separated-values\"); var uo, io, ao, oo, lo = this[x(this, \"requestAnimationFrame\")] || function (n) { setTimeout(n, 17) }; oa.timer = function () { qn.apply(this, arguments) }, oa.timer.flush = function () { Rn(), Dn() }, oa.round = function (n, t) { return t ? Math.round(n * (t = Math.pow(10, t))) / t : Math.round(n) }; var co = [\"y\", \"z\", \"a\", \"f\", \"p\", \"n\", \"\\xb5\", \"m\", \"\", \"k\", \"M\", \"G\", \"T\", \"P\", \"E\", \"Z\", \"Y\"].map(jn); oa.formatPrefix = function (n, t) { var e = 0; return (n = +n) && (0 > n && (n *= -1), t && (n = oa.round(n, Pn(n, t))), e = 1 + Math.floor(1e-12 + Math.log(n) / Math.LN10), e = Math.max(-24, Math.min(24, 3 * Math.floor((e - 1) / 3)))), co[8 + e / 3] }; var so = /(?:([^{])?([<>=^]))?([+\\- ])?([$#])?(0)?(\\d+)?(,)?(\\.-?\\d+)?([a-z%])?/i, fo = oa.map({ b: function (n) { return n.toString(2) }, c: function (n) { return String.fromCharCode(n) }, o: function (n) { return n.toString(8) }, x: function (n) { return n.toString(16) }, X: function (n) { return n.toString(16).toUpperCase() }, g: function (n, t) { return n.toPrecision(t) }, e: function (n, t) { return n.toExponential(t) }, f: function (n, t) { return n.toFixed(t) }, r: function (n, t) { return (n = oa.round(n, Pn(n, t))).toFixed(Math.max(0, Math.min(20, Pn(n * (1 + 1e-15), t)))) } }), ho = oa.time = {}, go = Date; Hn.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 () { po.setUTCDate.apply(this._, arguments) }, setDay: function () { po.setUTCDay.apply(this._, arguments) }, setFullYear: function () { po.setUTCFullYear.apply(this._, arguments) }, setHours: function () { po.setUTCHours.apply(this._, arguments) }, setMilliseconds: function () { po.setUTCMilliseconds.apply(this._, arguments) }, setMinutes: function () { po.setUTCMinutes.apply(this._, arguments) }, setMonth: function () { po.setUTCMonth.apply(this._, arguments) }, setSeconds: function () { po.setUTCSeconds.apply(this._, arguments) }, setTime: function () { po.setTime.apply(this._, arguments) } }; var po = Date.prototype; ho.year = On(function (n) { return n = ho.day(n), n.setMonth(0, 1), n }, function (n, t) { n.setFullYear(n.getFullYear() + t) }, function (n) { return n.getFullYear() }), ho.years = ho.year.range, ho.years.utc = ho.year.utc.range, ho.day = On(function (n) { var t = new go(2e3, 0); return t.setFullYear(n.getFullYear(), n.getMonth(), n.getDate()), t }, function (n, t) { n.setDate(n.getDate() + t) }, function (n) { return n.getDate() - 1 }), ho.days = ho.day.range, ho.days.utc = ho.day.utc.range, ho.dayOfYear = function (n) { var t = ho.year(n); return Math.floor((n - t - 6e4 * (n.getTimezoneOffset() - t.getTimezoneOffset())) / 864e5) }, [\"sunday\", \"monday\", \"tuesday\", \"wednesday\", \"thursday\", \"friday\", \"saturday\"].forEach(function (n, t) { t = 7 - t; var e = ho[n] = On(function (n) { return (n = ho.day(n)).setDate(n.getDate() - (n.getDay() + t) % 7), n }, function (n, t) { n.setDate(n.getDate() + 7 * Math.floor(t)) }, function (n) { var e = ho.year(n).getDay(); return Math.floor((ho.dayOfYear(n) + (e + t) % 7) / 7) - (e !== t) }); ho[n + \"s\"] = e.range, ho[n + \"s\"].utc = e.utc.range, ho[n + \"OfYear\"] = function (n) { var e = ho.year(n).getDay(); return Math.floor((ho.dayOfYear(n) + (e + t) % 7) / 7) } }), ho.week = ho.sunday, ho.weeks = ho.sunday.range, ho.weeks.utc = ho.sunday.utc.range, ho.weekOfYear = ho.sundayOfYear; var vo = { \"-\": \"\", _: \" \", 0: \"0\" }, mo = /^\\s*\\d+/, yo = /^%/; oa.locale = function (n) { return { numberFormat: Un(n), timeFormat: Yn(n) } }; var Mo = oa.locale({\r\n 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\"],\r\n 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\"]\r\n }); oa.format = Mo.numberFormat, oa.geo = {}, st.prototype = { s: 0, t: 0, add: function (n) { ft(n, this.t, xo), ft(xo.s, this.s, this), this.s ? this.t += xo.t : this.s = xo.t }, reset: function () { this.s = this.t = 0 }, valueOf: function () { return this.s } }; var xo = new st; oa.geo.stream = function (n, t) { n && bo.hasOwnProperty(n.type) ? bo[n.type](n, t) : ht(n, t) }; var bo = { Feature: function (n, t) { ht(n.geometry, t) }, FeatureCollection: function (n, t) { for (var e = n.features, r = -1, u = e.length; ++r < u;) ht(e[r].geometry, t) } }, _o = { Sphere: function (n, t) { t.sphere() }, Point: function (n, t) { n = n.coordinates, t.point(n[0], n[1], n[2]) }, MultiPoint: function (n, t) { for (var e = n.coordinates, r = -1, u = e.length; ++r < u;) n = e[r], t.point(n[0], n[1], n[2]) }, LineString: function (n, t) { gt(n.coordinates, t, 0) }, MultiLineString: function (n, t) { for (var e = n.coordinates, r = -1, u = e.length; ++r < u;) gt(e[r], t, 0) }, Polygon: function (n, t) { pt(n.coordinates, t) }, MultiPolygon: function (n, t) { for (var e = n.coordinates, r = -1, u = e.length; ++r < u;) pt(e[r], t) }, GeometryCollection: function (n, t) { for (var e = n.geometries, r = -1, u = e.length; ++r < u;) ht(e[r], t) } }; oa.geo.area = function (n) { return wo = 0, oa.geo.stream(n, ko), wo }; var wo, So = new st, ko = { sphere: function () { wo += 4 * ja }, point: b, lineStart: b, lineEnd: b, polygonStart: function () { So.reset(), ko.lineStart = vt }, polygonEnd: function () { var n = 2 * So; wo += 0 > n ? 4 * ja + n : n, ko.lineStart = ko.lineEnd = ko.point = b } }; oa.geo.bounds = function () { function n(n, t) { M.push(x = [s = n, h = n]), f > t && (f = t), t > g && (g = t) } function t(t, e) { var r = dt([t * Oa, e * Oa]); if (m) { var u = yt(m, r), i = [u[1], -u[0], 0], a = yt(i, u); bt(a), a = _t(a); var l = t - p, c = l > 0 ? 1 : -1, v = a[0] * Ia * c, d = Ma(l) > 180; if (d ^ (v > c * p && c * t > v)) { var y = a[1] * Ia; y > g && (g = y) } else if (v = (v + 360) % 360 - 180, d ^ (v > c * p && c * t > v)) { var y = -a[1] * Ia; f > y && (f = y) } else f > e && (f = e), e > g && (g = e); d ? p > t ? o(s, t) > o(s, h) && (h = t) : o(t, h) > o(s, h) && (s = t) : h >= s ? (s > t && (s = t), t > h && (h = t)) : t > p ? o(s, t) > o(s, h) && (h = t) : o(t, h) > o(s, h) && (s = t) } else n(t, e); m = r, p = t } function e() { b.point = t } function r() { x[0] = s, x[1] = h, b.point = n, m = null } function u(n, e) { if (m) { var r = n - p; y += Ma(r) > 180 ? r + (r > 0 ? 360 : -360) : r } else v = n, d = e; ko.point(n, e), t(n, e) } function i() { ko.lineStart() } function a() { u(v, d), ko.lineEnd(), Ma(y) > Da && (s = -(h = 180)), x[0] = s, x[1] = h, m = null } function o(n, t) { return (t -= n) < 0 ? t + 360 : t } function l(n, t) { return n[0] - t[0] } function c(n, t) { return t[0] <= t[1] ? t[0] <= n && n <= t[1] : n < t[0] || t[1] < n } var s, f, h, g, p, v, d, m, y, M, x, b = { point: n, lineStart: e, lineEnd: r, polygonStart: function () { b.point = u, b.lineStart = i, b.lineEnd = a, y = 0, ko.polygonStart() }, polygonEnd: function () { ko.polygonEnd(), b.point = n, b.lineStart = e, b.lineEnd = r, 0 > So ? (s = -(h = 180), f = -(g = 90)) : y > Da ? g = 90 : -Da > y && (f = -90), x[0] = s, x[1] = h } }; return function (n) { g = h = -(s = f = 1 / 0), M = [], oa.geo.stream(n, b); var t = M.length; if (t) { M.sort(l); for (var e, r = 1, u = M[0], i = [u]; t > r; ++r) e = M[r], c(e[0], u) || c(e[1], u) ? (o(u[0], e[1]) > o(u[0], u[1]) && (u[1] = e[1]), o(e[0], u[1]) > o(u[0], u[1]) && (u[0] = e[0])) : i.push(u = e); for (var a, e, p = -(1 / 0), t = i.length - 1, r = 0, u = i[t]; t >= r; u = e, ++r) e = i[r], (a = o(u[1], e[0])) > p && (p = a, s = e[0], h = u[1]) } return M = x = null, s === 1 / 0 || f === 1 / 0 ? [[NaN, NaN], [NaN, NaN]] : [[s, f], [h, g]] } }(), oa.geo.centroid = function (n) { No = Eo = Ao = Co = zo = Lo = qo = To = Ro = Do = Po = 0, oa.geo.stream(n, jo); var t = Ro, e = Do, r = Po, u = t * t + e * e + r * r; return Pa > u && (t = Lo, e = qo, r = To, Da > Eo && (t = Ao, e = Co, r = zo), u = t * t + e * e + r * r, Pa > u) ? [NaN, NaN] : [Math.atan2(e, t) * Ia, tn(r / Math.sqrt(u)) * Ia] }; var No, Eo, Ao, Co, zo, Lo, qo, To, Ro, Do, Po, jo = { sphere: b, point: St, lineStart: Nt, lineEnd: Et, polygonStart: function () { jo.lineStart = At }, polygonEnd: function () { jo.lineStart = Nt } }, Uo = Rt(zt, Ut, Ht, [-ja, -ja / 2]), Fo = 1e9; oa.geo.clipExtent = function () { var n, t, e, r, u, i, a = { stream: function (n) { return u && (u.valid = !1), u = i(n), u.valid = !0, u }, extent: function (o) { return arguments.length ? (i = Zt(n = +o[0][0], t = +o[0][1], e = +o[1][0], r = +o[1][1]), u && (u.valid = !1, u = null), a) : [[n, t], [e, r]] } }; return a.extent([[0, 0], [960, 500]]) }, (oa.geo.conicEqualArea = function () { return Vt(Xt) }).raw = Xt, oa.geo.albers = function () { return oa.geo.conicEqualArea().rotate([96, 0]).center([-.6, 38.7]).parallels([29.5, 45.5]).scale(1070) }, oa.geo.albersUsa = function () { function n(n) { var i = n[0], a = n[1]; return t = null, e(i, a), t || (r(i, a), t) || u(i, a), t } var t, e, r, u, i = oa.geo.albers(), a = oa.geo.conicEqualArea().rotate([154, 0]).center([-2, 58.5]).parallels([55, 65]), o = oa.geo.conicEqualArea().rotate([157, 0]).center([-3, 19.9]).parallels([8, 18]), l = { point: function (n, e) { t = [n, e] } }; return n.invert = function (n) { var t = i.scale(), e = i.translate(), r = (n[0] - e[0]) / t, u = (n[1] - e[1]) / t; return (u >= .12 && .234 > u && r >= -.425 && -.214 > r ? a : u >= .166 && .234 > u && r >= -.214 && -.115 > r ? o : i).invert(n) }, n.stream = function (n) { var t = i.stream(n), e = a.stream(n), r = o.stream(n); return { point: function (n, u) { t.point(n, u), e.point(n, u), r.point(n, u) }, sphere: function () { t.sphere(), e.sphere(), r.sphere() }, lineStart: function () { t.lineStart(), e.lineStart(), r.lineStart() }, lineEnd: function () { t.lineEnd(), e.lineEnd(), r.lineEnd() }, polygonStart: function () { t.polygonStart(), e.polygonStart(), r.polygonStart() }, polygonEnd: function () { t.polygonEnd(), e.polygonEnd(), r.polygonEnd() } } }, n.precision = function (t) { return arguments.length ? (i.precision(t), a.precision(t), o.precision(t), n) : i.precision() }, n.scale = function (t) { return arguments.length ? (i.scale(t), a.scale(.35 * t), o.scale(t), n.translate(i.translate())) : i.scale() }, n.translate = function (t) { if (!arguments.length) return i.translate(); var c = i.scale(), s = +t[0], f = +t[1]; return e = i.translate(t).clipExtent([[s - .455 * c, f - .238 * c], [s + .455 * c, f + .238 * c]]).stream(l).point, r = a.translate([s - .307 * c, f + .201 * c]).clipExtent([[s - .425 * c + Da, f + .12 * c + Da], [s - .214 * c - Da, f + .234 * c - Da]]).stream(l).point, u = o.translate([s - .205 * c, f + .212 * c]).clipExtent([[s - .214 * c + Da, f + .166 * c + Da], [s - .115 * c - Da, f + .234 * c - Da]]).stream(l).point, n }, n.scale(1070) }; var Ho, Oo, Io, Yo, Zo, Vo, Xo = { point: b, lineStart: b, lineEnd: b, polygonStart: function () { Oo = 0, Xo.lineStart = $t }, polygonEnd: function () { Xo.lineStart = Xo.lineEnd = Xo.point = b, Ho += Ma(Oo / 2) } }, $o = { point: Bt, lineStart: b, lineEnd: b, polygonStart: b, polygonEnd: b }, Bo = { point: Gt, lineStart: Kt, lineEnd: Qt, polygonStart: function () { Bo.lineStart = ne }, polygonEnd: function () { Bo.point = Gt, Bo.lineStart = Kt, Bo.lineEnd = Qt } }; oa.geo.path = function () { function n(n) { return n && (\"function\" == typeof o && i.pointRadius(+o.apply(this, arguments)), a && a.valid || (a = u(i)), oa.geo.stream(n, a)), i.result() } function t() { return a = null, n } var e, r, u, i, a, o = 4.5; return n.area = function (n) { return Ho = 0, oa.geo.stream(n, u(Xo)), Ho }, n.centroid = function (n) { return Ao = Co = zo = Lo = qo = To = Ro = Do = Po = 0, oa.geo.stream(n, u(Bo)), Po ? [Ro / Po, Do / Po] : To ? [Lo / To, qo / To] : zo ? [Ao / zo, Co / zo] : [NaN, NaN] }, n.bounds = function (n) { return Zo = Vo = -(Io = Yo = 1 / 0), oa.geo.stream(n, u($o)), [[Io, Yo], [Zo, Vo]] }, n.projection = function (n) { return arguments.length ? (u = (e = n) ? n.stream || re(n) : y, t()) : e }, n.context = function (n) { return arguments.length ? (i = null == (r = n) ? new Wt : new te(n), \"function\" != typeof o && i.pointRadius(o), t()) : r }, n.pointRadius = function (t) { return arguments.length ? (o = \"function\" == typeof t ? t : (i.pointRadius(+t), +t), n) : o }, n.projection(oa.geo.albersUsa()).context(null) }, oa.geo.transform = function (n) { return { stream: function (t) { var e = new ue(t); for (var r in n) e[r] = n[r]; return e } } }, ue.prototype = { point: function (n, t) { this.stream.point(n, 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() } }, oa.geo.projection = ae, oa.geo.projectionMutator = oe, (oa.geo.equirectangular = function () { return ae(ce) }).raw = ce.invert = ce, oa.geo.rotation = function (n) { function t(t) { return t = n(t[0] * Oa, t[1] * Oa), t[0] *= Ia, t[1] *= Ia, t } return n = fe(n[0] % 360 * Oa, n[1] * Oa, n.length > 2 ? n[2] * Oa : 0), t.invert = function (t) { return t = n.invert(t[0] * Oa, t[1] * Oa), t[0] *= Ia, t[1] *= Ia, t }, t }, se.invert = ce, oa.geo.circle = function () { function n() { var n = \"function\" == typeof r ? r.apply(this, arguments) : r, t = fe(-n[0] * Oa, -n[1] * Oa, 0).invert, u = []; return e(null, null, 1, { point: function (n, e) { u.push(n = t(n, e)), n[0] *= Ia, n[1] *= Ia } }), { type: \"Polygon\", coordinates: [u] } } var t, e, r = [0, 0], u = 6; return n.origin = function (t) { return arguments.length ? (r = t, n) : r }, n.angle = function (r) { return arguments.length ? (e = ve((t = +r) * Oa, u * Oa), n) : t }, n.precision = function (r) { return arguments.length ? (e = ve(t * Oa, (u = +r) * Oa), n) : u }, n.angle(90) }, oa.geo.distance = function (n, t) { var e, r = (t[0] - n[0]) * Oa, u = n[1] * Oa, i = t[1] * Oa, a = Math.sin(r), o = Math.cos(r), l = Math.sin(u), c = Math.cos(u), s = Math.sin(i), f = Math.cos(i); return Math.atan2(Math.sqrt((e = f * a) * e + (e = c * s - l * f * o) * e), l * s + c * f * o) }, oa.geo.graticule = function () { function n() { return { type: \"MultiLineString\", coordinates: t() } } function t() { return oa.range(Math.ceil(i / d) * d, u, d).map(h).concat(oa.range(Math.ceil(c / m) * m, l, m).map(g)).concat(oa.range(Math.ceil(r / p) * p, e, p).filter(function (n) { return Ma(n % d) > Da }).map(s)).concat(oa.range(Math.ceil(o / v) * v, a, v).filter(function (n) { return Ma(n % m) > Da }).map(f)) } var e, r, u, i, a, o, l, c, s, f, h, g, p = 10, v = p, d = 90, m = 360, y = 2.5; return n.lines = function () { return t().map(function (n) { return { type: \"LineString\", coordinates: n } }) }, n.outline = function () { return { type: \"Polygon\", coordinates: [h(i).concat(g(l).slice(1), h(u).reverse().slice(1), g(c).reverse().slice(1))] } }, n.extent = function (t) { return arguments.length ? n.majorExtent(t).minorExtent(t) : n.minorExtent() }, n.majorExtent = function (t) { return arguments.length ? (i = +t[0][0], u = +t[1][0], c = +t[0][1], l = +t[1][1], i > u && (t = i, i = u, u = t), c > l && (t = c, c = l, l = t), n.precision(y)) : [[i, c], [u, l]] }, n.minorExtent = function (t) { return arguments.length ? (r = +t[0][0], e = +t[1][0], o = +t[0][1], a = +t[1][1], r > e && (t = r, r = e, e = t), o > a && (t = o, o = a, a = t), n.precision(y)) : [[r, o], [e, a]] }, n.step = function (t) { return arguments.length ? n.majorStep(t).minorStep(t) : n.minorStep() }, n.majorStep = function (t) { return arguments.length ? (d = +t[0], m = +t[1], n) : [d, m] }, n.minorStep = function (t) { return arguments.length ? (p = +t[0], v = +t[1], n) : [p, v] }, n.precision = function (t) { return arguments.length ? (y = +t, s = me(o, a, 90), f = ye(r, e, y), h = me(c, l, 90), g = ye(i, u, y), n) : y }, n.majorExtent([[-180, -90 + Da], [180, 90 - Da]]).minorExtent([[-180, -80 - Da], [180, 80 + Da]]) }, oa.geo.greatArc = function () { function n() { return { type: \"LineString\", coordinates: [t || r.apply(this, arguments), e || u.apply(this, arguments)] } } var t, e, r = Me, u = xe; return n.distance = function () { return oa.geo.distance(t || r.apply(this, arguments), e || u.apply(this, arguments)) }, n.source = function (e) { return arguments.length ? (r = e, t = \"function\" == typeof e ? null : e, n) : r }, n.target = function (t) { return arguments.length ? (u = t, e = \"function\" == typeof t ? null : t, n) : u }, n.precision = function () { return arguments.length ? n : 0 }, n }, oa.geo.interpolate = function (n, t) { return be(n[0] * Oa, n[1] * Oa, t[0] * Oa, t[1] * Oa) }, oa.geo.length = function (n) { return Wo = 0, oa.geo.stream(n, Jo), Wo }; var Wo, Jo = { sphere: b, point: b, lineStart: _e, lineEnd: b, polygonStart: b, polygonEnd: b }, Go = we(function (n) { return Math.sqrt(2 / (1 + n)) }, function (n) { return 2 * Math.asin(n / 2) }); (oa.geo.azimuthalEqualArea = function () { return ae(Go) }).raw = Go; var Ko = we(function (n) { var t = Math.acos(n); return t && t / Math.sin(t) }, y); (oa.geo.azimuthalEquidistant = function () { return ae(Ko) }).raw = Ko, (oa.geo.conicConformal = function () { return Vt(Se) }).raw = Se, (oa.geo.conicEquidistant = function () { return Vt(ke) }).raw = ke; var Qo = we(function (n) { return 1 / n }, Math.atan); (oa.geo.gnomonic = function () { return ae(Qo) }).raw = Qo, Ne.invert = function (n, t) { return [n, 2 * Math.atan(Math.exp(t)) - Ha] }, (oa.geo.mercator = function () { return Ee(Ne) }).raw = Ne; var nl = we(function () { return 1 }, Math.asin); (oa.geo.orthographic = function () { return ae(nl) }).raw = nl; var tl = we(function (n) { return 1 / (1 + n) }, function (n) { return 2 * Math.atan(n) }); (oa.geo.stereographic = function () { return ae(tl) }).raw = tl, Ae.invert = function (n, t) { return [-t, 2 * Math.atan(Math.exp(n)) - Ha] }, (oa.geo.transverseMercator = function () { var n = Ee(Ae), t = n.center, e = n.rotate; return n.center = function (n) { return n ? t([-n[1], n[0]]) : (n = t(), [n[1], -n[0]]) }, n.rotate = function (n) { return n ? e([n[0], n[1], n.length > 2 ? n[2] + 90 : 90]) : (n = e(), [n[0], n[1], n[2] - 90]) }, e([0, 0, 90]) }).raw = Ae, oa.geom = {}, oa.geom.hull = function (n) { function t(n) { if (n.length < 3) return []; var t, u = En(e), i = En(r), a = n.length, o = [], l = []; for (t = 0; a > t; t++) o.push([+u.call(this, n[t], t), +i.call(this, n[t], t), t]); for (o.sort(qe), t = 0; a > t; t++) l.push([o[t][0], -o[t][1]]); var c = Le(o), s = Le(l), f = s[0] === c[0], h = s[s.length - 1] === c[c.length - 1], g = []; for (t = c.length - 1; t >= 0; --t) g.push(n[o[c[t]][2]]); for (t = +f; t < s.length - h; ++t) g.push(n[o[s[t]][2]]); return g } var e = Ce, r = ze; return arguments.length ? t(n) : (t.x = function (n) { return arguments.length ? (e = n, t) : e }, t.y = function (n) { return arguments.length ? (r = n, t) : r }, t) }, oa.geom.polygon = function (n) { return Sa(n, el), n }; var el = oa.geom.polygon.prototype = []; el.area = function () { for (var n, t = -1, e = this.length, r = this[e - 1], u = 0; ++t < e;) n = r, r = this[t], u += n[1] * r[0] - n[0] * r[1]; return .5 * u }, el.centroid = function (n) { var t, e, r = -1, u = this.length, i = 0, a = 0, o = this[u - 1]; for (arguments.length || (n = -1 / (6 * this.area())) ; ++r < u;) t = o, o = this[r], e = t[0] * o[1] - o[0] * t[1], i += (t[0] + o[0]) * e, a += (t[1] + o[1]) * e; return [i * n, a * n] }, el.clip = function (n) { for (var t, e, r, u, i, a, o = De(n), l = -1, c = this.length - De(this), s = this[c - 1]; ++l < c;) { for (t = n.slice(), n.length = 0, u = this[l], i = t[(r = t.length - o) - 1], e = -1; ++e < r;) a = t[e], Te(a, s, u) ? (Te(i, s, u) || n.push(Re(i, a, s, u)), n.push(a)) : Te(i, s, u) && n.push(Re(i, a, s, u)), i = a; o && n.push(n[0]), s = u } return n }; var rl, ul, il, al, ol, ll = [], cl = []; Ye.prototype.prepare = function () { for (var n, t = this.edges, e = t.length; e--;) n = t[e].edge, n.b && n.a || t.splice(e, 1); return t.sort(Ve), t.length }, tr.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 } }, er.prototype = { insert: function (n, t) { var e, r, u; if (n) { if (t.P = n, t.N = n.N, n.N && (n.N.P = t), n.N = t, n.R) { for (n = n.R; n.L;) n = n.L; n.L = t } else n.R = t; e = n } else this._ ? (n = ar(this._), t.P = null, t.N = n, n.P = n.L = t, e = n) : (t.P = t.N = null, this._ = t, e = null); for (t.L = t.R = null, t.U = e, t.C = !0, n = t; e && e.C;) r = e.U, e === r.L ? (u = r.R, u && u.C ? (e.C = u.C = !1, r.C = !0, n = r) : (n === e.R && (ur(this, e), n = e, e = n.U), e.C = !1, r.C = !0, ir(this, r))) : (u = r.L, u && u.C ? (e.C = u.C = !1, r.C = !0, n = r) : (n === e.L && (ir(this, e), n = e, e = n.U), e.C = !1, r.C = !0, ur(this, r))), e = n.U; this._.C = !1 }, remove: function (n) { n.N && (n.N.P = n.P), n.P && (n.P.N = n.N), n.N = n.P = null; var t, e, r, u = n.U, i = n.L, a = n.R; if (e = i ? a ? ar(a) : i : a, u ? u.L === n ? u.L = e : u.R = e : this._ = e, i && a ? (r = e.C, e.C = n.C, e.L = i, i.U = e, e !== a ? (u = e.U, e.U = n.U, n = e.R, u.L = n, e.R = a, a.U = e) : (e.U = u, u = e, n = e.R)) : (r = n.C, n = e), n && (n.U = u), !r) { if (n && n.C) return void (n.C = !1); do { if (n === this._) break; if (n === u.L) { if (t = u.R, t.C && (t.C = !1, u.C = !0, ur(this, u), t = u.R), t.L && t.L.C || t.R && t.R.C) { t.R && t.R.C || (t.L.C = !1, t.C = !0, ir(this, t), t = u.R), t.C = u.C, u.C = t.R.C = !1, ur(this, u), n = this._; break } } else if (t = u.L, t.C && (t.C = !1, u.C = !0, ir(this, u), t = u.L), t.L && t.L.C || t.R && t.R.C) { t.L && t.L.C || (t.R.C = !1, t.C = !0, ur(this, t), t = u.L), t.C = u.C, u.C = t.L.C = !1, ir(this, u), n = this._; break } t.C = !0, n = u, u = u.U } while (!n.C); n && (n.C = !1) } } }, oa.geom.voronoi = function (n) { function t(n) { var t = new Array(n.length), r = o[0][0], u = o[0][1], i = o[1][0], a = o[1][1]; return or(e(n), o).cells.forEach(function (e, o) { var l = e.edges, c = e.site, s = t[o] = l.length ? l.map(function (n) { var t = n.start(); return [t.x, t.y] }) : c.x >= r && c.x <= i && c.y >= u && c.y <= a ? [[r, a], [i, a], [i, u], [r, u]] : []; s.point = n[o] }), t } function e(n) { return n.map(function (n, t) { return { x: Math.round(i(n, t) / Da) * Da, y: Math.round(a(n, t) / Da) * Da, i: t } }) } var r = Ce, u = ze, i = r, a = u, o = sl; return n ? t(n) : (t.links = function (n) { return or(e(n)).edges.filter(function (n) { return n.l && n.r }).map(function (t) { return { source: n[t.l.i], target: n[t.r.i] } }) }, t.triangles = function (n) { var t = []; return or(e(n)).cells.forEach(function (e, r) { for (var u, i, a = e.site, o = e.edges.sort(Ve), l = -1, c = o.length, s = o[c - 1].edge, f = s.l === a ? s.r : s.l; ++l < c;) u = s, i = f, s = o[l].edge, f = s.l === a ? s.r : s.l, r < i.i && r < f.i && cr(a, i, f) < 0 && t.push([n[r], n[i.i], n[f.i]]) }), t }, t.x = function (n) { return arguments.length ? (i = En(r = n), t) : r }, t.y = function (n) { return arguments.length ? (a = En(u = n), t) : u }, t.clipExtent = function (n) { return arguments.length ? (o = null == n ? sl : n, t) : o === sl ? null : o }, t.size = function (n) { return arguments.length ? t.clipExtent(n && [[0, 0], n]) : o === sl ? null : o && o[1] }, t) }; var sl = [[-1e6, -1e6], [1e6, 1e6]]; oa.geom.delaunay = function (n) { return oa.geom.voronoi().triangles(n) }, oa.geom.quadtree = function (n, t, e, r, u) { function i(n) { function i(n, t, e, r, u, i, a, o) { if (!isNaN(e) && !isNaN(r)) if (n.leaf) { var l = n.x, s = n.y; if (null != l) if (Ma(l - e) + Ma(s - r) < .01) c(n, t, e, r, u, i, a, o); else { var f = n.point; n.x = n.y = n.point = null, c(n, f, l, s, u, i, a, o), c(n, t, e, r, u, i, a, o) } else n.x = e, n.y = r, n.point = t } else c(n, t, e, r, u, i, a, o) } function c(n, t, e, r, u, a, o, l) { var c = .5 * (u + o), s = .5 * (a + l), f = e >= c, h = r >= s, g = h << 1 | f; n.leaf = !1, n = n.nodes[g] || (n.nodes[g] = hr()), f ? u = c : o = c, h ? a = s : l = s, i(n, t, e, r, u, a, o, l) } var s, f, h, g, p, v, d, m, y, M = En(o), x = En(l); if (null != t) v = t, d = e, m = r, y = u; else if (m = y = -(v = d = 1 / 0), f = [], h = [], p = n.length, a) for (g = 0; p > g; ++g) s = n[g], s.x < v && (v = s.x), s.y < d && (d = s.y), s.x > m && (m = s.x), s.y > y && (y = s.y), f.push(s.x), h.push(s.y); else for (g = 0; p > g; ++g) { var b = +M(s = n[g], g), _ = +x(s, g); v > b && (v = b), d > _ && (d = _), b > m && (m = b), _ > y && (y = _), f.push(b), h.push(_) } var w = m - v, S = y - d; w > S ? y = d + w : m = v + S; var k = hr(); if (k.add = function (n) { i(k, n, +M(n, ++g), +x(n, g), v, d, m, y) }, k.visit = function (n) { gr(n, k, v, d, m, y) }, k.find = function (n) { return pr(k, n[0], n[1], v, d, m, y) }, g = -1, null == t) { for (; ++g < p;) i(k, n[g], f[g], h[g], v, d, m, y); --g } else n.forEach(k.add); return f = h = n = s = null, k } var a, o = Ce, l = ze; return (a = arguments.length) ? (o = sr, l = fr, 3 === a && (u = e, r = t, e = t = 0), i(n)) : (i.x = function (n) { return arguments.length ? (o = n, i) : o }, i.y = function (n) { return arguments.length ? (l = n, i) : l }, i.extent = function (n) { return arguments.length ? (null == n ? t = e = r = u = null : (t = +n[0][0], e = +n[0][1], r = +n[1][0], u = +n[1][1]), i) : null == t ? null : [[t, e], [r, u]] }, i.size = function (n) { return arguments.length ? (null == n ? t = e = r = u = null : (t = e = 0, r = +n[0], u = +n[1]), i) : null == t ? null : [r - t, u - e] }, i) }, oa.interpolateRgb = vr, oa.interpolateObject = dr, oa.interpolateNumber = mr, oa.interpolateString = yr; var fl = /[-+]?(?:\\d+\\.?\\d*|\\.?\\d+)(?:[eE][-+]?\\d+)?/g, hl = new RegExp(fl.source, \"g\"); oa.interpolate = Mr, oa.interpolators = [function (n, t) { var e = typeof t; return (\"string\" === e ? ro.has(t.toLowerCase()) || /^(#|rgb\\(|hsl\\()/i.test(t) ? vr : yr : t instanceof on ? vr : Array.isArray(t) ? xr : \"object\" === e && isNaN(t) ? dr : mr)(n, t) }], oa.interpolateArray = xr; var gl = function () { return y }, pl = oa.map({ linear: gl, poly: Er, quad: function () { return Sr }, cubic: function () { return kr }, sin: function () { return Ar }, exp: function () { return Cr }, circle: function () { return zr }, elastic: Lr, back: qr, bounce: function () { return Tr } }), vl = oa.map({ \"in\": y, out: _r, \"in-out\": wr, \"out-in\": function (n) { return wr(_r(n)) } }); oa.ease = function (n) { var t = n.indexOf(\"-\"), e = t >= 0 ? n.slice(0, t) : n, r = t >= 0 ? n.slice(t + 1) : \"in\"; return e = pl.get(e) || gl, r = vl.get(r) || y, br(r(e.apply(null, la.call(arguments, 1)))) }, oa.interpolateHcl = Rr, oa.interpolateHsl = Dr, oa.interpolateLab = Pr, oa.interpolateRound = jr, oa.transform = function (n) { var t = sa.createElementNS(oa.ns.prefix.svg, \"g\"); return (oa.transform = function (n) { if (null != n) { t.setAttribute(\"transform\", n); var e = t.transform.baseVal.consolidate() } return new Ur(e ? e.matrix : dl) })(n) }, Ur.prototype.toString = function () { return \"translate(\" + this.translate + \")rotate(\" + this.rotate + \")skewX(\" + this.skew + \")scale(\" + this.scale + \")\" }; var dl = { a: 1, b: 0, c: 0, d: 1, e: 0, f: 0 }; oa.interpolateTransform = $r, oa.layout = {}, oa.layout.bundle = function () { return function (n) { for (var t = [], e = -1, r = n.length; ++e < r;) t.push(Jr(n[e])); return t } }, oa.layout.chord = function () { function n() { var n, c, f, h, g, p = {}, v = [], d = oa.range(i), m = []; for (e = [], r = [], n = 0, h = -1; ++h < i;) { for (c = 0, g = -1; ++g < i;) c += u[h][g]; v.push(c), m.push(oa.range(i)), n += c } for (a && d.sort(function (n, t) { return a(v[n], v[t]) }), o && m.forEach(function (n, t) { n.sort(function (n, e) { return o(u[t][n], u[t][e]) }) }), n = (Ua - s * i) / n, c = 0, h = -1; ++h < i;) { for (f = c, g = -1; ++g < i;) { var y = d[h], M = m[y][g], x = u[y][M], b = c, _ = c += x * n; p[y + \"-\" + M] = { index: y, subindex: M, startAngle: b, endAngle: _, value: x } } r[y] = { index: y, startAngle: f, endAngle: c, value: v[y] }, c += s } for (h = -1; ++h < i;) for (g = h - 1; ++g < i;) { var w = p[h + \"-\" + g], S = p[g + \"-\" + h]; (w.value || S.value) && e.push(w.value < S.value ? { source: S, target: w } : { source: w, target: S }) } l && t() } function t() { e.sort(function (n, t) { return l((n.source.value + n.target.value) / 2, (t.source.value + t.target.value) / 2) }) } var e, r, u, i, a, o, l, c = {}, s = 0; return c.matrix = function (n) { return arguments.length ? (i = (u = n) && u.length, e = r = null, c) : u }, c.padding = function (n) { return arguments.length ? (s = n, e = r = null, c) : s }, c.sortGroups = function (n) { return arguments.length ? (a = n, e = r = null, c) : a }, c.sortSubgroups = function (n) { return arguments.length ? (o = n, e = null, c) : o }, c.sortChords = function (n) { return arguments.length ? (l = n, e && t(), c) : l }, c.chords = function () { return e || n(), e }, c.groups = function () { return r || n(), r }, c }, oa.layout.force = function () { function n(n) { return function (t, e, r, u) { if (t.point !== n) { var i = t.cx - n.x, a = t.cy - n.y, o = u - e, l = i * i + a * a; if (l > o * o / m) { if (v > l) { var c = t.charge / l; n.px -= i * c, n.py -= a * c } return !0 } if (t.point && l && v > l) { var c = t.pointCharge / l; n.px -= i * c, n.py -= a * c } } return !t.charge } } function t(n) { n.px = oa.event.x, n.py = oa.event.y, l.resume() } var e, r, u, i, a, o, l = {}, c = oa.dispatch(\"start\", \"tick\", \"end\"), s = [1, 1], f = .9, h = ml, g = yl, p = -30, v = Ml, d = .1, m = .64, M = [], x = []; return l.tick = function () { if ((u *= .99) < .005) return e = null, c.end({ type: \"end\", alpha: u = 0 }), !0; var t, r, l, h, g, v, m, y, b, _ = M.length, w = x.length; for (r = 0; w > r; ++r) l = x[r], h = l.source, g = l.target, y = g.x - h.x, b = g.y - h.y, (v = y * y + b * b) && (v = u * a[r] * ((v = Math.sqrt(v)) - i[r]) / v, y *= v, b *= v, g.x -= y * (m = h.weight + g.weight ? h.weight / (h.weight + g.weight) : .5), g.y -= b * m, h.x += y * (m = 1 - m), h.y += b * m); if ((m = u * d) && (y = s[0] / 2, b = s[1] / 2, r = -1, m)) for (; ++r < _;) l = M[r], l.x += (y - l.x) * m, l.y += (b - l.y) * m; if (p) for (ru(t = oa.geom.quadtree(M), u, o), r = -1; ++r < _;) (l = M[r]).fixed || t.visit(n(l)); for (r = -1; ++r < _;) l = M[r], l.fixed ? (l.x = l.px, l.y = l.py) : (l.x -= (l.px - (l.px = l.x)) * f, l.y -= (l.py - (l.py = l.y)) * f); c.tick({ type: \"tick\", alpha: u }) }, l.nodes = function (n) { return arguments.length ? (M = n, l) : M }, l.links = function (n) { return arguments.length ? (x = n, l) : x }, l.size = function (n) { return arguments.length ? (s = n, l) : s }, l.linkDistance = function (n) { return arguments.length ? (h = \"function\" == typeof n ? n : +n, l) : h }, l.distance = l.linkDistance, l.linkStrength = function (n) { return arguments.length ? (g = \"function\" == typeof n ? n : +n, l) : g }, l.friction = function (n) { return arguments.length ? (f = +n, l) : f }, l.charge = function (n) { return arguments.length ? (p = \"function\" == typeof n ? n : +n, l) : p }, l.chargeDistance = function (n) { return arguments.length ? (v = n * n, l) : Math.sqrt(v) }, l.gravity = function (n) { return arguments.length ? (d = +n, l) : d }, l.theta = function (n) { return arguments.length ? (m = n * n, l) : Math.sqrt(m) }, l.alpha = function (n) { return arguments.length ? (n = +n, u ? n > 0 ? u = n : (e.c = null, e.t = NaN, e = null, c.end({ type: \"end\", alpha: u = 0 })) : n > 0 && (c.start({ type: \"start\", alpha: u = n }), e = qn(l.tick)), l) : u }, l.start = function () { function n(n, r) { if (!e) { for (e = new Array(u), l = 0; u > l; ++l) e[l] = []; for (l = 0; c > l; ++l) { var i = x[l]; e[i.source.index].push(i.target), e[i.target.index].push(i.source) } } for (var a, o = e[t], l = -1, s = o.length; ++l < s;) if (!isNaN(a = o[l][n])) return a; return Math.random() * r } var t, e, r, u = M.length, c = x.length, f = s[0], v = s[1]; for (t = 0; u > t; ++t) (r = M[t]).index = t, r.weight = 0; for (t = 0; c > t; ++t) r = x[t], \"number\" == typeof r.source && (r.source = M[r.source]), \"number\" == typeof r.target && (r.target = M[r.target]), ++r.source.weight, ++r.target.weight; for (t = 0; u > t; ++t) r = M[t], isNaN(r.x) && (r.x = n(\"x\", f)), isNaN(r.y) && (r.y = n(\"y\", v)), isNaN(r.px) && (r.px = r.x), isNaN(r.py) && (r.py = r.y); if (i = [], \"function\" == typeof h) for (t = 0; c > t; ++t) i[t] = +h.call(this, x[t], t); else for (t = 0; c > t; ++t) i[t] = h; if (a = [], \"function\" == typeof g) for (t = 0; c > t; ++t) a[t] = +g.call(this, x[t], t); else for (t = 0; c > t; ++t) a[t] = g; if (o = [], \"function\" == typeof p) for (t = 0; u > t; ++t) o[t] = +p.call(this, M[t], t); else for (t = 0; u > t; ++t) o[t] = p; return l.resume() }, l.resume = function () { return l.alpha(.1) }, l.stop = function () { return l.alpha(0) }, l.drag = function () { return r || (r = oa.behavior.drag().origin(y).on(\"dragstart.force\", Qr).on(\"drag.force\", t).on(\"dragend.force\", nu)), arguments.length ? void this.on(\"mouseover.force\", tu).on(\"mouseout.force\", eu).call(r) : r }, oa.rebind(l, c, \"on\") }; var ml = 20, yl = 1, Ml = 1 / 0; oa.layout.hierarchy = function () { function n(u) { var i, a = [u], o = []; for (u.depth = 0; null != (i = a.pop()) ;) if (o.push(i), (c = e.call(n, i, i.depth)) && (l = c.length)) { for (var l, c, s; --l >= 0;) a.push(s = c[l]), s.parent = i, s.depth = i.depth + 1; r && (i.value = 0), i.children = c } else r && (i.value = +r.call(n, i, i.depth) || 0), delete i.children; return au(u, function (n) { var e, u; t && (e = n.children) && e.sort(t), r && (u = n.parent) && (u.value += n.value) }), o } var t = cu, e = ou, r = lu; return n.sort = function (e) { return arguments.length ? (t = e, n) : t }, n.children = function (t) { return arguments.length ? (e = t, n) : e }, n.value = function (t) { return arguments.length ? (r = t, n) : r }, n.revalue = function (t) { return r && (iu(t, function (n) { n.children && (n.value = 0) }), au(t, function (t) { var e; t.children || (t.value = +r.call(n, t, t.depth) || 0), (e = t.parent) && (e.value += t.value) })), t }, n }, oa.layout.partition = function () { function n(t, e, r, u) { var i = t.children; if (t.x = e, t.y = t.depth * u, t.dx = r, t.dy = u, i && (a = i.length)) { var a, o, l, c = -1; for (r = t.value ? r / t.value : 0; ++c < a;) n(o = i[c], e, l = o.value * r, u), e += l } } function t(n) { var e = n.children, r = 0; if (e && (u = e.length)) for (var u, i = -1; ++i < u;) r = Math.max(r, t(e[i])); return 1 + r } function e(e, i) { var a = r.call(this, e, i); return n(a[0], 0, u[0], u[1] / t(a[0])), a } var r = oa.layout.hierarchy(), u = [1, 1]; return e.size = function (n) { return arguments.length ? (u = n, e) : u }, uu(e, r) }, oa.layout.pie = function () { function n(a) { var o, l = a.length, c = a.map(function (e, r) { return +t.call(n, e, r) }), s = +(\"function\" == typeof r ? r.apply(this, arguments) : r), f = (\"function\" == typeof u ? u.apply(this, arguments) : u) - s, h = Math.min(Math.abs(f) / l, +(\"function\" == typeof i ? i.apply(this, arguments) : i)), g = h * (0 > f ? -1 : 1), p = oa.sum(c), v = p ? (f - l * g) / p : 0, d = oa.range(l), m = []; return null != e && d.sort(e === xl ? function (n, t) { return c[t] - c[n] } : function (n, t) { return e(a[n], a[t]) }), d.forEach(function (n) { m[n] = { data: a[n], value: o = c[n], startAngle: s, endAngle: s += o * v + g, padAngle: h } }), m } var t = Number, e = xl, r = 0, u = Ua, i = 0; return n.value = function (e) { return arguments.length ? (t = e, n) : t }, n.sort = function (t) { return arguments.length ? (e = t, n) : e }, n.startAngle = function (t) { return arguments.length ? (r = t, n) : r }, n.endAngle = function (t) { return arguments.length ? (u = t, n) : u }, n.padAngle = function (t) { return arguments.length ? (i = t, n) : i }, n }; var xl = {}; oa.layout.stack = function () { function n(o, l) { if (!(h = o.length)) return o; var c = o.map(function (e, r) { return t.call(n, e, r) }), s = c.map(function (t) { return t.map(function (t, e) { return [i.call(n, t, e), a.call(n, t, e)] }) }), f = e.call(n, s, l); c = oa.permute(c, f), s = oa.permute(s, f); var h, g, p, v, d = r.call(n, s, l), m = c[0].length; for (p = 0; m > p; ++p) for (u.call(n, c[0][p], v = d[p], s[0][p][1]), g = 1; h > g; ++g) u.call(n, c[g][p], v += s[g - 1][p][1], s[g][p][1]); return o } var t = y, e = pu, r = vu, u = gu, i = fu, a = hu; return n.values = function (e) { return arguments.length ? (t = e, n) : t }, n.order = function (t) { return arguments.length ? (e = \"function\" == typeof t ? t : bl.get(t) || pu, n) : e }, n.offset = function (t) { return arguments.length ? (r = \"function\" == typeof t ? t : _l.get(t) || vu, n) : r }, n.x = function (t) { return arguments.length ? (i = t, n) : i }, n.y = function (t) { return arguments.length ? (a = t, n) : a }, n.out = function (t) { return arguments.length ? (u = t, n) : u }, n }; var bl = oa.map({ \"inside-out\": function (n) { var t, e, r = n.length, u = n.map(du), i = n.map(mu), a = oa.range(r).sort(function (n, t) { return u[n] - u[t] }), o = 0, l = 0, c = [], s = []; for (t = 0; r > t; ++t) e = a[t], l > o ? (o += i[e], c.push(e)) : (l += i[e], s.push(e)); return s.reverse().concat(c) }, reverse: function (n) { return oa.range(n.length).reverse() }, \"default\": pu }), _l = oa.map({ silhouette: function (n) { var t, e, r, u = n.length, i = n[0].length, a = [], o = 0, l = []; for (e = 0; i > e; ++e) { for (t = 0, r = 0; u > t; t++) r += n[t][e][1]; r > o && (o = r), a.push(r) } for (e = 0; i > e; ++e) l[e] = (o - a[e]) / 2; return l }, wiggle: function (n) { var t, e, r, u, i, a, o, l, c, s = n.length, f = n[0], h = f.length, g = []; for (g[0] = l = c = 0, e = 1; h > e; ++e) { for (t = 0, u = 0; s > t; ++t) u += n[t][e][1]; for (t = 0, i = 0, o = f[e][0] - f[e - 1][0]; s > t; ++t) { for (r = 0, a = (n[t][e][1] - n[t][e - 1][1]) / (2 * o) ; t > r; ++r) a += (n[r][e][1] - n[r][e - 1][1]) / o; i += a * n[t][e][1] } g[e] = l -= u ? i / u * o : 0, c > l && (c = l) } for (e = 0; h > e; ++e) g[e] -= c; return g }, expand: function (n) { var t, e, r, u = n.length, i = n[0].length, a = 1 / u, o = []; for (e = 0; i > e; ++e) { for (t = 0, r = 0; u > t; t++) r += n[t][e][1]; if (r) for (t = 0; u > t; t++) n[t][e][1] /= r; else for (t = 0; u > t; t++) n[t][e][1] = a } for (e = 0; i > e; ++e) o[e] = 0; return o }, zero: vu }); oa.layout.histogram = function () { function n(n, i) { for (var a, o, l = [], c = n.map(e, this), s = r.call(this, c, i), f = u.call(this, s, c, i), i = -1, h = c.length, g = f.length - 1, p = t ? 1 : 1 / h; ++i < g;) a = l[i] = [], a.dx = f[i + 1] - (a.x = f[i]), a.y = 0; if (g > 0) for (i = -1; ++i < h;) o = c[i], o >= s[0] && o <= s[1] && (a = l[oa.bisect(f, o, 1, g) - 1], a.y += p, a.push(n[i])); return l } var t = !0, e = Number, r = bu, u = Mu; return n.value = function (t) { return arguments.length ? (e = t, n) : e }, n.range = function (t) { return arguments.length ? (r = En(t), n) : r }, n.bins = function (t) { return arguments.length ? (u = \"number\" == typeof t ? function (n) { return xu(n, t) } : En(t), n) : u }, n.frequency = function (e) { return arguments.length ? (t = !!e, n) : t }, n }, oa.layout.pack = function () { function n(n, i) { var a = e.call(this, n, i), o = a[0], l = u[0], c = u[1], s = null == t ? Math.sqrt : \"function\" == typeof t ? t : function () { return t }; if (o.x = o.y = 0, au(o, function (n) { n.r = +s(n.value) }), au(o, Nu), r) { var f = r * (t ? 1 : Math.max(2 * o.r / l, 2 * o.r / c)) / 2; au(o, function (n) { n.r += f }), au(o, Nu), au(o, function (n) { n.r -= f }) } return Cu(o, l / 2, c / 2, t ? 1 : 1 / Math.max(2 * o.r / l, 2 * o.r / c)), a } var t, e = oa.layout.hierarchy().sort(_u), r = 0, u = [1, 1]; return n.size = function (t) { return arguments.length ? (u = t, n) : u }, n.radius = function (e) { return arguments.length ? (t = null == e || \"function\" == typeof e ? e : +e, n) : t }, n.padding = function (t) { return arguments.length ? (r = +t, n) : r }, uu(n, e) }, oa.layout.tree = function () { function n(n, u) { var s = a.call(this, n, u), f = s[0], h = t(f); if (au(h, e), h.parent.m = -h.z, iu(h, r), c) iu(f, i); else { var g = f, p = f, v = f; iu(f, function (n) { n.x < g.x && (g = n), n.x > p.x && (p = n), n.depth > v.depth && (v = n) }); var d = o(g, p) / 2 - g.x, m = l[0] / (p.x + o(p, g) / 2 + d), y = l[1] / (v.depth || 1); iu(f, function (n) { n.x = (n.x + d) * m, n.y = n.depth * y }) } return s } function t(n) { for (var t, e = { A: null, children: [n] }, r = [e]; null != (t = r.pop()) ;) for (var u, i = t.children, a = 0, o = i.length; o > a; ++a) r.push((i[a] = u = { _: i[a], parent: t, children: (u = i[a].children) && u.slice() || [], A: null, a: null, z: 0, m: 0, c: 0, s: 0, t: null, i: a }).a = u); return e.children[0] } function e(n) { var t = n.children, e = n.parent.children, r = n.i ? e[n.i - 1] : null; if (t.length) { Du(n); var i = (t[0].z + t[t.length - 1].z) / 2; r ? (n.z = r.z + o(n._, r._), n.m = n.z - i) : n.z = i } else r && (n.z = r.z + o(n._, r._)); n.parent.A = u(n, r, n.parent.A || e[0]) } function r(n) { n._.x = n.z + n.parent.m, n.m += n.parent.m } function u(n, t, e) { if (t) { for (var r, u = n, i = n, a = t, l = u.parent.children[0], c = u.m, s = i.m, f = a.m, h = l.m; a = Tu(a), u = qu(u), a && u;) l = qu(l), i = Tu(i), i.a = n, r = a.z + f - u.z - c + o(a._, u._), r > 0 && (Ru(Pu(a, n, e), n, r), c += r, s += r), f += a.m, c += u.m, h += l.m, s += i.m; a && !Tu(i) && (i.t = a, i.m += f - s), u && !qu(l) && (l.t = u, l.m += c - h, e = n) } return e } function i(n) { n.x *= l[0], n.y = n.depth * l[1] } var a = oa.layout.hierarchy().sort(null).value(null), o = Lu, l = [1, 1], c = null; return n.separation = function (t) { return arguments.length ? (o = t, n) : o }, n.size = function (t) { return arguments.length ? (c = null == (l = t) ? i : null, n) : c ? null : l }, n.nodeSize = function (t) { return arguments.length ? (c = null == (l = t) ? null : i, n) : c ? l : null }, uu(n, a) }, oa.layout.cluster = function () { function n(n, i) { var a, o = t.call(this, n, i), l = o[0], c = 0; au(l, function (n) { var t = n.children; t && t.length ? (n.x = Uu(t), n.y = ju(t)) : (n.x = a ? c += e(n, a) : 0, n.y = 0, a = n) }); var s = Fu(l), f = Hu(l), h = s.x - e(s, f) / 2, g = f.x + e(f, s) / 2; return au(l, u ? function (n) { n.x = (n.x - l.x) * r[0], n.y = (l.y - n.y) * r[1] } : function (n) { n.x = (n.x - h) / (g - h) * r[0], n.y = (1 - (l.y ? n.y / l.y : 1)) * r[1] }), o } var t = oa.layout.hierarchy().sort(null).value(null), e = Lu, r = [1, 1], u = !1; return n.separation = function (t) { return arguments.length ? (e = t, n) : e }, n.size = function (t) { return arguments.length ? (u = null == (r = t), n) : u ? null : r }, n.nodeSize = function (t) { return arguments.length ? (u = null != (r = t), n) : u ? r : null }, uu(n, t) }, oa.layout.treemap = function () {\r\n function n(n, t) { for (var e, r, u = -1, i = n.length; ++u < i;) r = (e = n[u]).value * (0 > t ? 0 : t), e.area = isNaN(r) || 0 >= r ? 0 : r } function t(e) { var i = e.children; if (i && i.length) { var a, o, l, c = f(e), s = [], h = i.slice(), p = 1 / 0, v = \"slice\" === g ? c.dx : \"dice\" === g ? c.dy : \"slice-dice\" === g ? 1 & e.depth ? c.dy : c.dx : Math.min(c.dx, c.dy); for (n(h, c.dx * c.dy / e.value), s.area = 0; (l = h.length) > 0;) s.push(a = h[l - 1]), s.area += a.area, \"squarify\" !== g || (o = r(s, v)) <= p ? (h.pop(), p = o) : (s.area -= s.pop().area, u(s, v, c, !1), v = Math.min(c.dx, c.dy), s.length = s.area = 0, p = 1 / 0); s.length && (u(s, v, c, !0), s.length = s.area = 0), i.forEach(t) } } function e(t) { var r = t.children; if (r && r.length) { var i, a = f(t), o = r.slice(), l = []; for (n(o, a.dx * a.dy / t.value), l.area = 0; i = o.pop() ;) l.push(i), l.area += i.area, null != i.z && (u(l, i.z ? a.dx : a.dy, a, !o.length), l.length = l.area = 0); r.forEach(e) } } function r(n, t) { for (var e, r = n.area, u = 0, i = 1 / 0, a = -1, o = n.length; ++a < o;) (e = n[a].area) && (i > e && (i = e), e > u && (u = e)); return r *= r, t *= t, r ? Math.max(t * u * p / r, r / (t * i * p)) : 1 / 0 } function u(n, t, e, r) {\r\n var u, i = -1, a = n.length, o = e.x, c = e.y, s = t ? l(n.area / t) : 0;\r\n if (t == e.dx) { for ((r || s > e.dy) && (s = e.dy) ; ++i < a;) u = n[i], u.x = o, u.y = c, u.dy = s, o += u.dx = Math.min(e.x + e.dx - o, s ? l(u.area / s) : 0); u.z = !0, u.dx += e.x + e.dx - o, e.y += s, e.dy -= s } else { for ((r || s > e.dx) && (s = e.dx) ; ++i < a;) u = n[i], u.x = o, u.y = c, u.dx = s, c += u.dy = Math.min(e.y + e.dy - c, s ? l(u.area / s) : 0); u.z = !1, u.dy += e.y + e.dy - c, e.x += s, e.dx -= s }\r\n } function i(r) { var u = a || o(r), i = u[0]; return i.x = i.y = 0, i.value ? (i.dx = c[0], i.dy = c[1]) : i.dx = i.dy = 0, a && o.revalue(i), n([i], i.dx * i.dy / i.value), (a ? e : t)(i), h && (a = u), u } var a, o = oa.layout.hierarchy(), l = Math.round, c = [1, 1], s = null, f = Ou, h = !1, g = \"squarify\", p = .5 * (1 + Math.sqrt(5)); return i.size = function (n) { return arguments.length ? (c = n, i) : c }, i.padding = function (n) { function t(t) { var e = n.call(i, t, t.depth); return null == e ? Ou(t) : Iu(t, \"number\" == typeof e ? [e, e, e, e] : e) } function e(t) { return Iu(t, n) } if (!arguments.length) return s; var r; return f = null == (s = n) ? Ou : \"function\" == (r = typeof n) ? t : \"number\" === r ? (n = [n, n, n, n], e) : e, i }, i.round = function (n) { return arguments.length ? (l = n ? Math.round : Number, i) : l != Number }, i.sticky = function (n) { return arguments.length ? (h = n, a = null, i) : h }, i.ratio = function (n) { return arguments.length ? (p = n, i) : p }, i.mode = function (n) { return arguments.length ? (g = n + \"\", i) : g }, uu(i, o)\r\n }, oa.random = { normal: function (n, t) { var e = arguments.length; return 2 > e && (t = 1), 1 > e && (n = 0), function () { var e, r, u; do e = 2 * Math.random() - 1, r = 2 * Math.random() - 1, u = e * e + r * r; while (!u || u > 1); return n + t * e * Math.sqrt(-2 * Math.log(u) / u) } }, logNormal: function () { var n = oa.random.normal.apply(oa, arguments); return function () { return Math.exp(n()) } }, bates: function (n) { var t = oa.random.irwinHall(n); return function () { return t() / n } }, irwinHall: function (n) { return function () { for (var t = 0, e = 0; n > e; e++) t += Math.random(); return t } } }, oa.scale = {}; var wl = { floor: y, ceil: y }; oa.scale.linear = function () { return Wu([0, 1], [0, 1], Mr, !1) }; var Sl = { s: 1, g: 1, p: 1, r: 1, e: 1 }; oa.scale.log = function () { return ri(oa.scale.linear().domain([0, 1]), 10, !0, [1, 10]) }; var kl = oa.format(\".0e\"), Nl = { floor: function (n) { return -Math.ceil(-n) }, ceil: function (n) { return -Math.floor(-n) } }; oa.scale.pow = function () { return ui(oa.scale.linear(), 1, [0, 1]) }, oa.scale.sqrt = function () { return oa.scale.pow().exponent(.5) }, oa.scale.ordinal = function () { return ai([], { t: \"range\", a: [[]] }) }, oa.scale.category10 = function () { return oa.scale.ordinal().range(El) }, oa.scale.category20 = function () { return oa.scale.ordinal().range(Al) }, oa.scale.category20b = function () { return oa.scale.ordinal().range(Cl) }, oa.scale.category20c = function () { return oa.scale.ordinal().range(zl) }; var El = [2062260, 16744206, 2924588, 14034728, 9725885, 9197131, 14907330, 8355711, 12369186, 1556175].map(xn), Al = [2062260, 11454440, 16744206, 16759672, 2924588, 10018698, 14034728, 16750742, 9725885, 12955861, 9197131, 12885140, 14907330, 16234194, 8355711, 13092807, 12369186, 14408589, 1556175, 10410725].map(xn), Cl = [3750777, 5395619, 7040719, 10264286, 6519097, 9216594, 11915115, 13556636, 9202993, 12426809, 15186514, 15190932, 8666169, 11356490, 14049643, 15177372, 8077683, 10834324, 13528509, 14589654].map(xn), zl = [3244733, 7057110, 10406625, 13032431, 15095053, 16616764, 16625259, 16634018, 3253076, 7652470, 10607003, 13101504, 7695281, 10394312, 12369372, 14342891, 6513507, 9868950, 12434877, 14277081].map(xn); oa.scale.quantile = function () { return oi([], []) }, oa.scale.quantize = function () { return li(0, 1, [0, 1]) }, oa.scale.threshold = function () { return ci([.5], [0, 1]) }, oa.scale.identity = function () { return si([0, 1]) }, oa.svg = {}, oa.svg.arc = function () { function n() { var n = Math.max(0, +e.apply(this, arguments)), c = Math.max(0, +r.apply(this, arguments)), s = a.apply(this, arguments) - Ha, f = o.apply(this, arguments) - Ha, h = Math.abs(f - s), g = s > f ? 0 : 1; if (n > c && (p = c, c = n, n = p), h >= Fa) return t(c, g) + (n ? t(n, 1 - g) : \"\") + \"Z\"; var p, v, d, m, y, M, x, b, _, w, S, k, N = 0, E = 0, A = []; if ((m = (+l.apply(this, arguments) || 0) / 2) && (d = i === Ll ? Math.sqrt(n * n + c * c) : +i.apply(this, arguments), g || (E *= -1), c && (E = tn(d / c * Math.sin(m))), n && (N = tn(d / n * Math.sin(m)))), c) { y = c * Math.cos(s + E), M = c * Math.sin(s + E), x = c * Math.cos(f - E), b = c * Math.sin(f - E); var C = Math.abs(f - s - 2 * E) <= ja ? 0 : 1; if (E && mi(y, M, x, b) === g ^ C) { var z = (s + f) / 2; y = c * Math.cos(z), M = c * Math.sin(z), x = b = null } } else y = M = 0; if (n) { _ = n * Math.cos(f - N), w = n * Math.sin(f - N), S = n * Math.cos(s + N), k = n * Math.sin(s + N); var L = Math.abs(s - f + 2 * N) <= ja ? 0 : 1; if (N && mi(_, w, S, k) === 1 - g ^ L) { var q = (s + f) / 2; _ = n * Math.cos(q), w = n * Math.sin(q), S = k = null } } else _ = w = 0; if (h > Da && (p = Math.min(Math.abs(c - n) / 2, +u.apply(this, arguments))) > .001) { v = c > n ^ g ? 0 : 1; var T = p, R = p; if (ja > h) { var D = null == S ? [_, w] : null == x ? [y, M] : Re([y, M], [S, k], [x, b], [_, w]), P = y - D[0], j = M - D[1], U = x - D[0], F = b - D[1], H = 1 / Math.sin(Math.acos((P * U + j * F) / (Math.sqrt(P * P + j * j) * Math.sqrt(U * U + F * F))) / 2), O = Math.sqrt(D[0] * D[0] + D[1] * D[1]); R = Math.min(p, (n - O) / (H - 1)), T = Math.min(p, (c - O) / (H + 1)) } if (null != x) { var I = yi(null == S ? [_, w] : [S, k], [y, M], c, T, g), Y = yi([x, b], [_, w], c, T, g); p === T ? A.push(\"M\", I[0], \"A\", T, \",\", T, \" 0 0,\", v, \" \", I[1], \"A\", c, \",\", c, \" 0 \", 1 - g ^ mi(I[1][0], I[1][1], Y[1][0], Y[1][1]), \",\", g, \" \", Y[1], \"A\", T, \",\", T, \" 0 0,\", v, \" \", Y[0]) : A.push(\"M\", I[0], \"A\", T, \",\", T, \" 0 1,\", v, \" \", Y[0]) } else A.push(\"M\", y, \",\", M); if (null != S) { var Z = yi([y, M], [S, k], n, -R, g), V = yi([_, w], null == x ? [y, M] : [x, b], n, -R, g); p === R ? A.push(\"L\", V[0], \"A\", R, \",\", R, \" 0 0,\", v, \" \", V[1], \"A\", n, \",\", n, \" 0 \", g ^ mi(V[1][0], V[1][1], Z[1][0], Z[1][1]), \",\", 1 - g, \" \", Z[1], \"A\", R, \",\", R, \" 0 0,\", v, \" \", Z[0]) : A.push(\"L\", V[0], \"A\", R, \",\", R, \" 0 0,\", v, \" \", Z[0]) } else A.push(\"L\", _, \",\", w) } else A.push(\"M\", y, \",\", M), null != x && A.push(\"A\", c, \",\", c, \" 0 \", C, \",\", g, \" \", x, \",\", b), A.push(\"L\", _, \",\", w), null != S && A.push(\"A\", n, \",\", n, \" 0 \", L, \",\", 1 - g, \" \", S, \",\", k); return A.push(\"Z\"), A.join(\"\") } function t(n, t) { return \"M0,\" + n + \"A\" + n + \",\" + n + \" 0 1,\" + t + \" 0,\" + -n + \"A\" + n + \",\" + n + \" 0 1,\" + t + \" 0,\" + n } var e = hi, r = gi, u = fi, i = Ll, a = pi, o = vi, l = di; return n.innerRadius = function (t) { return arguments.length ? (e = En(t), n) : e }, n.outerRadius = function (t) { return arguments.length ? (r = En(t), n) : r }, n.cornerRadius = function (t) { return arguments.length ? (u = En(t), n) : u }, n.padRadius = function (t) { return arguments.length ? (i = t == Ll ? Ll : En(t), n) : i }, n.startAngle = function (t) { return arguments.length ? (a = En(t), n) : a }, n.endAngle = function (t) { return arguments.length ? (o = En(t), n) : o }, n.padAngle = function (t) { return arguments.length ? (l = En(t), n) : l }, n.centroid = function () { var n = (+e.apply(this, arguments) + +r.apply(this, arguments)) / 2, t = (+a.apply(this, arguments) + +o.apply(this, arguments)) / 2 - Ha; return [Math.cos(t) * n, Math.sin(t) * n] }, n }; var Ll = \"auto\"; oa.svg.line = function () { return Mi(y) }; var ql = oa.map({ linear: xi, \"linear-closed\": bi, step: _i, \"step-before\": wi, \"step-after\": Si, basis: zi, \"basis-open\": Li, \"basis-closed\": qi, bundle: Ti, cardinal: Ei, \"cardinal-open\": ki, \"cardinal-closed\": Ni, monotone: Fi }); ql.forEach(function (n, t) { t.key = n, t.closed = /-closed$/.test(n) }); var Tl = [0, 2 / 3, 1 / 3, 0], Rl = [0, 1 / 3, 2 / 3, 0], Dl = [0, 1 / 6, 2 / 3, 1 / 6]; oa.svg.line.radial = function () { var n = Mi(Hi); return n.radius = n.x, delete n.x, n.angle = n.y, delete n.y, n }, wi.reverse = Si, Si.reverse = wi, oa.svg.area = function () { return Oi(y) }, oa.svg.area.radial = function () { var n = Oi(Hi); return n.radius = n.x, delete n.x, n.innerRadius = n.x0, delete n.x0, n.outerRadius = n.x1, delete n.x1, n.angle = n.y, delete n.y, n.startAngle = n.y0, delete n.y0, n.endAngle = n.y1, delete n.y1, n }, oa.svg.chord = function () { function n(n, o) { var l = t(this, i, n, o), c = t(this, a, n, o); return \"M\" + l.p0 + r(l.r, l.p1, l.a1 - l.a0) + (e(l, c) ? u(l.r, l.p1, l.r, l.p0) : u(l.r, l.p1, c.r, c.p0) + r(c.r, c.p1, c.a1 - c.a0) + u(c.r, c.p1, l.r, l.p0)) + \"Z\" } function t(n, t, e, r) { var u = t.call(n, e, r), i = o.call(n, u, r), a = l.call(n, u, r) - Ha, s = c.call(n, u, r) - Ha; return { r: i, a0: a, a1: s, p0: [i * Math.cos(a), i * Math.sin(a)], p1: [i * Math.cos(s), i * Math.sin(s)] } } function e(n, t) { return n.a0 == t.a0 && n.a1 == t.a1 } function r(n, t, e) { return \"A\" + n + \",\" + n + \" 0 \" + +(e > ja) + \",1 \" + t } function u(n, t, e, r) { return \"Q 0,0 \" + r } var i = Me, a = xe, o = Ii, l = pi, c = vi; return n.radius = function (t) { return arguments.length ? (o = En(t), n) : o }, n.source = function (t) { return arguments.length ? (i = En(t), n) : i }, n.target = function (t) { return arguments.length ? (a = En(t), n) : a }, n.startAngle = function (t) { return arguments.length ? (l = En(t), n) : l }, n.endAngle = function (t) { return arguments.length ? (c = En(t), n) : c }, n }, oa.svg.diagonal = function () { function n(n, u) { var i = t.call(this, n, u), a = e.call(this, n, u), o = (i.y + a.y) / 2, l = [i, { x: i.x, y: o }, { x: a.x, y: o }, a]; return l = l.map(r), \"M\" + l[0] + \"C\" + l[1] + \" \" + l[2] + \" \" + l[3] } var t = Me, e = xe, r = Yi; return n.source = function (e) { return arguments.length ? (t = En(e), n) : t }, n.target = function (t) { return arguments.length ? (e = En(t), n) : e }, n.projection = function (t) { return arguments.length ? (r = t, n) : r }, n }, oa.svg.diagonal.radial = function () { var n = oa.svg.diagonal(), t = Yi, e = n.projection; return n.projection = function (n) { return arguments.length ? e(Zi(t = n)) : t }, n }, oa.svg.symbol = function () { function n(n, r) { return (Pl.get(t.call(this, n, r)) || $i)(e.call(this, n, r)) } var t = Xi, e = Vi; return n.type = function (e) { return arguments.length ? (t = En(e), n) : t }, n.size = function (t) { return arguments.length ? (e = En(t), n) : e }, n }; var Pl = oa.map({ circle: $i, cross: function (n) { var t = Math.sqrt(n / 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 (n) { var t = Math.sqrt(n / (2 * Ul)), e = t * Ul; return \"M0,\" + -t + \"L\" + e + \",0 0,\" + t + \" \" + -e + \",0Z\" }, square: function (n) { var t = Math.sqrt(n) / 2; return \"M\" + -t + \",\" + -t + \"L\" + t + \",\" + -t + \" \" + t + \",\" + t + \" \" + -t + \",\" + t + \"Z\" }, \"triangle-down\": function (n) { var t = Math.sqrt(n / jl), e = t * jl / 2; return \"M0,\" + e + \"L\" + t + \",\" + -e + \" \" + -t + \",\" + -e + \"Z\" }, \"triangle-up\": function (n) { var t = Math.sqrt(n / jl), e = t * jl / 2; return \"M0,\" + -e + \"L\" + t + \",\" + e + \" \" + -t + \",\" + e + \"Z\" } }); oa.svg.symbolTypes = Pl.keys(); var jl = Math.sqrt(3), Ul = Math.tan(30 * Oa); Aa.transition = function (n) { for (var t, e, r = Fl || ++Yl, u = Ki(n), i = [], a = Hl || { time: Date.now(), ease: Nr, delay: 0, duration: 250 }, o = -1, l = this.length; ++o < l;) { i.push(t = []); for (var c = this[o], s = -1, f = c.length; ++s < f;) (e = c[s]) && Qi(e, s, u, r, a), t.push(e) } return Wi(i, u, r) }, Aa.interrupt = function (n) { return this.each(null == n ? Ol : Bi(Ki(n))) }; var Fl, Hl, Ol = Bi(Ki()), Il = [], Yl = 0; Il.call = Aa.call, Il.empty = Aa.empty, Il.node = Aa.node, Il.size = Aa.size, oa.transition = function (n, t) { return n && n.transition ? Fl ? n.transition(t) : n : oa.selection().transition(n) }, oa.transition.prototype = Il, Il.select = function (n) { var t, e, r, u = this.id, i = this.namespace, a = []; n = A(n); for (var o = -1, l = this.length; ++o < l;) { a.push(t = []); for (var c = this[o], s = -1, f = c.length; ++s < f;) (r = c[s]) && (e = n.call(r, r.__data__, s, o)) ? (\"__data__\" in r && (e.__data__ = r.__data__), Qi(e, s, i, u, r[i][u]), t.push(e)) : t.push(null) } return Wi(a, i, u) }, Il.selectAll = function (n) { var t, e, r, u, i, a = this.id, o = this.namespace, l = []; n = C(n); for (var c = -1, s = this.length; ++c < s;) for (var f = this[c], h = -1, g = f.length; ++h < g;) if (r = f[h]) { i = r[o][a], e = n.call(r, r.__data__, h, c), l.push(t = []); for (var p = -1, v = e.length; ++p < v;) (u = e[p]) && Qi(u, p, o, a, i), t.push(u) } return Wi(l, o, a) }, Il.filter = function (n) { var t, e, r, u = []; \"function\" != typeof n && (n = O(n)); for (var i = 0, a = this.length; a > i; i++) { u.push(t = []); for (var e = this[i], o = 0, l = e.length; l > o; o++) (r = e[o]) && n.call(r, r.__data__, o, i) && t.push(r) } return Wi(u, this.namespace, this.id) }, Il.tween = function (n, t) { var e = this.id, r = this.namespace; return arguments.length < 2 ? this.node()[r][e].tween.get(n) : Y(this, null == t ? function (t) { t[r][e].tween.remove(n) } : function (u) { u[r][e].tween.set(n, t) }) }, Il.attr = function (n, t) { function e() { this.removeAttribute(o) } function r() { this.removeAttributeNS(o.space, o.local) } function u(n) { return null == n ? e : (n += \"\", function () { var t, e = this.getAttribute(o); return e !== n && (t = a(e, n), function (n) { this.setAttribute(o, t(n)) }) }) } function i(n) { return null == n ? r : (n += \"\", function () { var t, e = this.getAttributeNS(o.space, o.local); return e !== n && (t = a(e, n), function (n) { this.setAttributeNS(o.space, o.local, t(n)) }) }) } if (arguments.length < 2) { for (t in n) this.attr(t, n[t]); return this } var a = \"transform\" == n ? $r : Mr, o = oa.ns.qualify(n); return Ji(this, \"attr.\" + n, t, o.local ? i : u) }, Il.attrTween = function (n, t) { function e(n, e) { var r = t.call(this, n, e, this.getAttribute(u)); return r && function (n) { this.setAttribute(u, r(n)) } } function r(n, e) { var r = t.call(this, n, e, this.getAttributeNS(u.space, u.local)); return r && function (n) { this.setAttributeNS(u.space, u.local, r(n)) } } var u = oa.ns.qualify(n); return this.tween(\"attr.\" + n, u.local ? r : e) }, Il.style = function (n, e, r) { function u() { this.style.removeProperty(n) } function i(e) { return null == e ? u : (e += \"\", function () { var u, i = t(this).getComputedStyle(this, null).getPropertyValue(n); return i !== e && (u = Mr(i, e), function (t) { this.style.setProperty(n, u(t), r) }) }) } var a = arguments.length; if (3 > a) { if (\"string\" != typeof n) { 2 > a && (e = \"\"); for (r in n) this.style(r, n[r], e); return this } r = \"\" } return Ji(this, \"style.\" + n, e, i) }, Il.styleTween = function (n, e, r) { function u(u, i) { var a = e.call(this, u, i, t(this).getComputedStyle(this, null).getPropertyValue(n)); return a && function (t) { this.style.setProperty(n, a(t), r) } } return arguments.length < 3 && (r = \"\"), this.tween(\"style.\" + n, u) }, Il.text = function (n) { return Ji(this, \"text\", n, Gi) }, Il.remove = function () { var n = this.namespace; return this.each(\"end.transition\", function () { var t; this[n].count < 2 && (t = this.parentNode) && t.removeChild(this) }) }, Il.ease = function (n) { var t = this.id, e = this.namespace; return arguments.length < 1 ? this.node()[e][t].ease : (\"function\" != typeof n && (n = oa.ease.apply(oa, arguments)), Y(this, function (r) { r[e][t].ease = n })) }, Il.delay = function (n) { var t = this.id, e = this.namespace; return arguments.length < 1 ? this.node()[e][t].delay : Y(this, \"function\" == typeof n ? function (r, u, i) { r[e][t].delay = +n.call(r, r.__data__, u, i) } : (n = +n, function (r) { r[e][t].delay = n })) }, Il.duration = function (n) { var t = this.id, e = this.namespace; return arguments.length < 1 ? this.node()[e][t].duration : Y(this, \"function\" == typeof n ? function (r, u, i) { r[e][t].duration = Math.max(1, n.call(r, r.__data__, u, i)) } : (n = Math.max(1, n), function (r) { r[e][t].duration = n })) }, Il.each = function (n, t) { var e = this.id, r = this.namespace; if (arguments.length < 2) { var u = Hl, i = Fl; try { Fl = e, Y(this, function (t, u, i) { Hl = t[r][e], n.call(t, t.__data__, u, i) }) } finally { Hl = u, Fl = i } } else Y(this, function (u) { var i = u[r][e]; (i.event || (i.event = oa.dispatch(\"start\", \"end\", \"interrupt\"))).on(n, t) }); return this }, Il.transition = function () { for (var n, t, e, r, u = this.id, i = ++Yl, a = this.namespace, o = [], l = 0, c = this.length; c > l; l++) { o.push(n = []); for (var t = this[l], s = 0, f = t.length; f > s; s++) (e = t[s]) && (r = e[a][u], Qi(e, s, a, i, { time: r.time, ease: r.ease, delay: r.delay + r.duration, duration: r.duration })), n.push(e) } return Wi(o, a, i) }, oa.svg.axis = function () { function n(n) { n.each(function () { var n, c = oa.select(this), s = this.__chart__ || e, f = this.__chart__ = e.copy(), h = null == l ? f.ticks ? f.ticks.apply(f, o) : f.domain() : l, g = null == t ? f.tickFormat ? f.tickFormat.apply(f, o) : y : t, p = c.selectAll(\".tick\").data(h, f), v = p.enter().insert(\"g\", \".domain\").attr(\"class\", \"tick\").style(\"opacity\", Da), d = oa.transition(p.exit()).style(\"opacity\", Da).remove(), m = oa.transition(p.order()).style(\"opacity\", 1), M = Math.max(u, 0) + a, x = Zu(f), b = c.selectAll(\".domain\").data([0]), _ = (b.enter().append(\"path\").attr(\"class\", \"domain\"), oa.transition(b)); v.append(\"line\"), v.append(\"text\"); var w, S, k, N, E = v.select(\"line\"), A = m.select(\"line\"), C = p.select(\"text\").text(g), z = v.select(\"text\"), L = m.select(\"text\"), q = \"top\" === r || \"left\" === r ? -1 : 1; if (\"bottom\" === r || \"top\" === r ? (n = na, w = \"x\", k = \"y\", S = \"x2\", N = \"y2\", C.attr(\"dy\", 0 > q ? \"0em\" : \".71em\").style(\"text-anchor\", \"middle\"), _.attr(\"d\", \"M\" + x[0] + \",\" + q * i + \"V0H\" + x[1] + \"V\" + q * i)) : (n = ta, w = \"y\", k = \"x\", S = \"y2\", N = \"x2\", C.attr(\"dy\", \".32em\").style(\"text-anchor\", 0 > q ? \"end\" : \"start\"), _.attr(\"d\", \"M\" + q * i + \",\" + x[0] + \"H0V\" + x[1] + \"H\" + q * i)), E.attr(N, q * u), z.attr(k, q * M), A.attr(S, 0).attr(N, q * u), L.attr(w, 0).attr(k, q * M), f.rangeBand) { var T = f, R = T.rangeBand() / 2; s = f = function (n) { return T(n) + R } } else s.rangeBand ? s = f : d.call(n, f, s); v.call(n, s, f), m.call(n, f, f) }) } var t, e = oa.scale.linear(), r = Zl, u = 6, i = 6, a = 3, o = [10], l = null; return n.scale = function (t) { return arguments.length ? (e = t, n) : e }, n.orient = function (t) { return arguments.length ? (r = t in Vl ? t + \"\" : Zl, n) : r }, n.ticks = function () { return arguments.length ? (o = ca(arguments), n) : o }, n.tickValues = function (t) { return arguments.length ? (l = t, n) : l }, n.tickFormat = function (e) { return arguments.length ? (t = e, n) : t }, n.tickSize = function (t) { var e = arguments.length; return e ? (u = +t, i = +arguments[e - 1], n) : u }, n.innerTickSize = function (t) { return arguments.length ? (u = +t, n) : u }, n.outerTickSize = function (t) { return arguments.length ? (i = +t, n) : i }, n.tickPadding = function (t) { return arguments.length ? (a = +t, n) : a }, n.tickSubdivide = function () { return arguments.length && n }, n }; var Zl = \"bottom\", Vl = { top: 1, right: 1, bottom: 1, left: 1 }; oa.svg.brush = function () { function n(t) { t.each(function () { var t = oa.select(this).style(\"pointer-events\", \"all\").style(\"-webkit-tap-highlight-color\", \"rgba(0,0,0,0)\").on(\"mousedown.brush\", i).on(\"touchstart.brush\", i), a = t.selectAll(\".background\").data([0]); a.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 o = t.selectAll(\".resize\").data(v, y); o.exit().remove(), o.enter().append(\"g\").attr(\"class\", function (n) { return \"resize \" + n }).style(\"cursor\", function (n) { return Xl[n] }).append(\"rect\").attr(\"x\", function (n) { return /[ew]$/.test(n) ? -3 : null }).attr(\"y\", function (n) { return /^[ns]/.test(n) ? -3 : null }).attr(\"width\", 6).attr(\"height\", 6).style(\"visibility\", \"hidden\"), o.style(\"display\", n.empty() ? \"none\" : null); var l, f = oa.transition(t), h = oa.transition(a); c && (l = Zu(c), h.attr(\"x\", l[0]).attr(\"width\", l[1] - l[0]), r(f)), s && (l = Zu(s), h.attr(\"y\", l[0]).attr(\"height\", l[1] - l[0]), u(f)), e(f) }) } function e(n) { n.selectAll(\".resize\").attr(\"transform\", function (n) { return \"translate(\" + f[+/e$/.test(n)] + \",\" + h[+/^s/.test(n)] + \")\" }) } function r(n) { n.select(\".extent\").attr(\"x\", f[0]), n.selectAll(\".extent,.n>rect,.s>rect\").attr(\"width\", f[1] - f[0]) } function u(n) { n.select(\".extent\").attr(\"y\", h[0]), n.selectAll(\".extent,.e>rect,.w>rect\").attr(\"height\", h[1] - h[0]) } function i() { function i() { 32 == oa.event.keyCode && (C || (M = null, L[0] -= f[1], L[1] -= h[1], C = 2), S()) } function v() { 32 == oa.event.keyCode && 2 == C && (L[0] += f[1], L[1] += h[1], C = 0, S()) } function d() { var n = oa.mouse(b), t = !1; x && (n[0] += x[0], n[1] += x[1]), C || (oa.event.altKey ? (M || (M = [(f[0] + f[1]) / 2, (h[0] + h[1]) / 2]), L[0] = f[+(n[0] < M[0])], L[1] = h[+(n[1] < M[1])]) : M = null), E && m(n, c, 0) && (r(k), t = !0), A && m(n, s, 1) && (u(k), t = !0), t && (e(k), w({ type: \"brush\", mode: C ? \"move\" : \"resize\" })) } function m(n, t, e) { var r, u, i = Zu(t), l = i[0], c = i[1], s = L[e], v = e ? h : f, d = v[1] - v[0]; return C && (l -= s, c -= d + s), r = (e ? p : g) ? Math.max(l, Math.min(c, n[e])) : n[e], C ? u = (r += s) + d : (M && (s = Math.max(l, Math.min(c, 2 * M[e] - r))), r > s ? (u = r, r = s) : u = s), v[0] != r || v[1] != u ? (e ? o = null : a = null, v[0] = r, v[1] = u, !0) : void 0 } function y() { d(), k.style(\"pointer-events\", \"all\").selectAll(\".resize\").style(\"display\", n.empty() ? \"none\" : null), oa.select(\"body\").style(\"cursor\", null), q.on(\"mousemove.brush\", null).on(\"mouseup.brush\", null).on(\"touchmove.brush\", null).on(\"touchend.brush\", null).on(\"keydown.brush\", null).on(\"keyup.brush\", null), z(), w({ type: \"brushend\" }) } var M, x, b = this, _ = oa.select(oa.event.target), w = l.of(b, arguments), k = oa.select(b), N = _.datum(), E = !/^(n|s)$/.test(N) && c, A = !/^(e|w)$/.test(N) && s, C = _.classed(\"extent\"), z = W(b), L = oa.mouse(b), q = oa.select(t(b)).on(\"keydown.brush\", i).on(\"keyup.brush\", v); if (oa.event.changedTouches ? q.on(\"touchmove.brush\", d).on(\"touchend.brush\", y) : q.on(\"mousemove.brush\", d).on(\"mouseup.brush\", y), k.interrupt().selectAll(\"*\").interrupt(), C) L[0] = f[0] - L[0], L[1] = h[0] - L[1]; else if (N) { var T = +/w$/.test(N), R = +/^n/.test(N); x = [f[1 - T] - L[0], h[1 - R] - L[1]], L[0] = f[T], L[1] = h[R] } else oa.event.altKey && (M = L.slice()); k.style(\"pointer-events\", \"none\").selectAll(\".resize\").style(\"display\", null), oa.select(\"body\").style(\"cursor\", _.style(\"cursor\")), w({ type: \"brushstart\" }), d() } var a, o, l = N(n, \"brushstart\", \"brush\", \"brushend\"), c = null, s = null, f = [0, 0], h = [0, 0], g = !0, p = !0, v = $l[0]; return n.event = function (n) { n.each(function () { var n = l.of(this, arguments), t = { x: f, y: h, i: a, j: o }, e = this.__chart__ || t; this.__chart__ = t, Fl ? oa.select(this).transition().each(\"start.brush\", function () { a = e.i, o = e.j, f = e.x, h = e.y, n({ type: \"brushstart\" }) }).tween(\"brush:brush\", function () { var e = xr(f, t.x), r = xr(h, t.y); return a = o = null, function (u) { f = t.x = e(u), h = t.y = r(u), n({ type: \"brush\", mode: \"resize\" }) } }).each(\"end.brush\", function () { a = t.i, o = t.j, n({ type: \"brush\", mode: \"resize\" }), n({ type: \"brushend\" }) }) : (n({ type: \"brushstart\" }), n({ type: \"brush\", mode: \"resize\" }), n({ type: \"brushend\" })) }) }, n.x = function (t) { return arguments.length ? (c = t, v = $l[!c << 1 | !s], n) : c }, n.y = function (t) { return arguments.length ? (s = t, v = $l[!c << 1 | !s], n) : s }, n.clamp = function (t) { return arguments.length ? (c && s ? (g = !!t[0], p = !!t[1]) : c ? g = !!t : s && (p = !!t), n) : c && s ? [g, p] : c ? g : s ? p : null }, n.extent = function (t) { var e, r, u, i, l; return arguments.length ? (c && (e = t[0], r = t[1], s && (e = e[0], r = r[0]), a = [e, r], c.invert && (e = c(e), r = c(r)), e > r && (l = e, e = r, r = l), (e != f[0] || r != f[1]) && (f = [e, r])), s && (u = t[0], i = t[1], c && (u = u[1], i = i[1]), o = [u, i], s.invert && (u = s(u), i = s(i)), u > i && (l = u, u = i, i = l), (u != h[0] || i != h[1]) && (h = [u, i])), n) : (c && (a ? (e = a[0], r = a[1]) : (e = f[0], r = f[1], c.invert && (e = c.invert(e), r = c.invert(r)), e > r && (l = e, e = r, r = l))), s && (o ? (u = o[0], i = o[1]) : (u = h[0], i = h[1], s.invert && (u = s.invert(u), i = s.invert(i)), u > i && (l = u, u = i, i = l))), c && s ? [[e, u], [r, i]] : c ? [e, r] : s && [u, i]) }, n.clear = function () { return n.empty() || (f = [0, 0], h = [0, 0], a = o = null), n }, n.empty = function () { return !!c && f[0] == f[1] || !!s && h[0] == h[1] }, oa.rebind(n, l, \"on\") }; var Xl = { n: \"ns-resize\", e: \"ew-resize\", s: \"ns-resize\", w: \"ew-resize\", nw: \"nwse-resize\", ne: \"nesw-resize\", se: \"nwse-resize\", sw: \"nesw-resize\" }, $l = [[\"n\", \"e\", \"s\", \"w\", \"nw\", \"ne\", \"se\", \"sw\"], [\"e\", \"w\"], [\"n\", \"s\"], []], Bl = ho.format = Mo.timeFormat, Wl = Bl.utc, Jl = Wl(\"%Y-%m-%dT%H:%M:%S.%LZ\"); Bl.iso = Date.prototype.toISOString && +new Date(\"2000-01-01T00:00:00.000Z\") ? ea : Jl, ea.parse = function (n) { var t = new Date(n); return isNaN(t) ? null : t }, ea.toString = Jl.toString, ho.second = On(function (n) { return new go(1e3 * Math.floor(n / 1e3)) }, function (n, t) { n.setTime(n.getTime() + 1e3 * Math.floor(t)) }, function (n) { return n.getSeconds() }), ho.seconds = ho.second.range, ho.seconds.utc = ho.second.utc.range, ho.minute = On(function (n) { return new go(6e4 * Math.floor(n / 6e4)) }, function (n, t) { n.setTime(n.getTime() + 6e4 * Math.floor(t)) }, function (n) { return n.getMinutes() }), ho.minutes = ho.minute.range, ho.minutes.utc = ho.minute.utc.range, ho.hour = On(function (n) { var t = n.getTimezoneOffset() / 60; return new go(36e5 * (Math.floor(n / 36e5 - t) + t)) }, function (n, t) { n.setTime(n.getTime() + 36e5 * Math.floor(t)) }, function (n) { return n.getHours() }), ho.hours = ho.hour.range, ho.hours.utc = ho.hour.utc.range, ho.month = On(function (n) { return n = ho.day(n), n.setDate(1), n }, function (n, t) { n.setMonth(n.getMonth() + t) }, function (n) { return n.getMonth() }), ho.months = ho.month.range, ho.months.utc = ho.month.utc.range; var Gl = [1e3, 5e3, 15e3, 3e4, 6e4, 3e5, 9e5, 18e5, 36e5, 108e5, 216e5, 432e5, 864e5, 1728e5, 6048e5, 2592e6, 7776e6, 31536e6], Kl = [[ho.second, 1], [ho.second, 5], [ho.second, 15], [ho.second, 30], [ho.minute, 1], [ho.minute, 5], [ho.minute, 15], [ho.minute, 30], [ho.hour, 1], [ho.hour, 3], [ho.hour, 6], [ho.hour, 12], [ho.day, 1], [ho.day, 2], [ho.week, 1], [ho.month, 1], [ho.month, 3], [ho.year, 1]], Ql = Bl.multi([[\".%L\", function (n) { return n.getMilliseconds() }], [\":%S\", function (n) { return n.getSeconds() }], [\"%I:%M\", function (n) { return n.getMinutes() }], [\"%I %p\", function (n) { return n.getHours() }], [\"%a %d\", function (n) { return n.getDay() && 1 != n.getDate() }], [\"%b %d\", function (n) { return 1 != n.getDate() }], [\"%B\", function (n) { return n.getMonth() }], [\"%Y\", zt]]), nc = { range: function (n, t, e) { return oa.range(Math.ceil(n / e) * e, +t, e).map(ua) }, floor: y, ceil: y }; Kl.year = ho.year, ho.scale = function () { return ra(oa.scale.linear(), Kl, Ql) }; var tc = Kl.map(function (n) { return [n[0].utc, n[1]] }), ec = Wl.multi([[\".%L\", function (n) { return n.getUTCMilliseconds() }], [\":%S\", function (n) { return n.getUTCSeconds() }], [\"%I:%M\", function (n) { return n.getUTCMinutes() }], [\"%I %p\", function (n) { return n.getUTCHours() }], [\"%a %d\", function (n) { return n.getUTCDay() && 1 != n.getUTCDate() }], [\"%b %d\", function (n) { return 1 != n.getUTCDate() }], [\"%B\", function (n) { return n.getUTCMonth() }], [\"%Y\", zt]]); tc.year = ho.year.utc, ho.scale.utc = function () { return ra(oa.scale.linear(), tc, ec) }, oa.text = An(function (n) { return n.responseText }), oa.json = function (n, t) { return Cn(n, \"application/json\", ia, t) }, oa.html = function (n, t) { return Cn(n, \"text/html\", aa, t) }, oa.xml = An(function (n) { return n.responseXML }), \"function\" == typeof define && define.amd ? (this.d3 = oa, define(oa)) : \"object\" == typeof module && module.exports ? module.exports = oa : this.d3 = oa\r\n}(window);\r\n!function (a) {\r\n \"use strict\"; function b(a) { this.owner = a } function c(a, b) { if (Object.create) b.prototype = Object.create(a.prototype); else { var c = function () { }; c.prototype = a.prototype, b.prototype = new c } return b.prototype.constructor = b, b } function d(a) { var b = this.internal = new e(this); b.loadConfig(a), b.init(), function c(a, b, d) { Object.keys(a).forEach(function (e) { b[e] = a[e].bind(d), Object.keys(a[e]).length > 0 && c(a[e], b[e], d) }) }(h, this, this) } function e(b) { var c = this; c.d3 = a.d3 ? a.d3 : \"undefined\" != typeof require ? require(\"d3\") : void 0, c.api = b, c.config = c.getDefaultConfig(), c.data = {}, c.cache = {}, c.axes = {} } function f(a) { b.call(this, a) } function g(a, b) { function c(a, b) { a.attr(\"transform\", function (a) { return \"translate(\" + Math.ceil(b(a) + u) + \", 0)\" }) } function d(a, b) { a.attr(\"transform\", function (a) { return \"translate(0,\" + Math.ceil(b(a)) + \")\" }) } function e(a) { var b = a[0], c = a[a.length - 1]; return c > b ? [b, c] : [c, b] } function f(a) { var b, c, d = []; if (a.ticks) return a.ticks.apply(a, n); for (c = a.domain(), b = Math.ceil(c[0]) ; b < c[1]; b++) d.push(b); return d.length > 0 && d[0] > 0 && d.unshift(d[0] - (d[1] - d[0])), d } function g() { var a, c = p.copy(); return b.isCategory && (a = p.domain(), c.domain([a[0], a[1] - 1])), c } function h(a) { var b = m ? m(a) : a; return \"undefined\" != typeof b ? b : \"\" } function i(a) { if (z) return z; var b = { h: 11.5, w: 5.5 }; return a.select(\"text\").text(h).each(function (a) { var c = this.getBoundingClientRect(), d = h(a), e = c.height, f = d ? c.width / d.length : void 0; e && f && (b.h = e, b.w = f) }).text(\"\"), z = b, b } function j(c) { return b.withoutTransition ? c : a.transition(c) } function k(m) { m.each(function () { function m(a, c) { function d(a, b) { f = void 0; for (var h = 1; h < b.length; h++) if (\" \" === b.charAt(h) && (f = h), e = b.substr(0, h + 1), g = U.w * e.length, g > c) return d(a.concat(b.substr(0, f ? f : h)), b.slice(f ? f + 1 : h)); return a.concat(b) } var e, f, g, i = h(a), j = []; return \"[object Array]\" === Object.prototype.toString.call(i) ? i : ((!c || 0 >= c) && (c = X ? 95 : b.isCategory ? Math.ceil(F(G[1]) - F(G[0])) - 12 : 110), d(j, i + \"\")) } function n(a, b) { var c = U.h; return 0 === b && (c = \"left\" === q || \"right\" === q ? -((V[a.index] - 1) * (U.h / 2) - 3) : \".71em\"), c } function v(a) { var b = p(a) + (o ? 0 : u); return L[0] < b && b < L[1] ? r : 0 } function w(a) { return a ? a > 0 ? \"start\" : \"end\" : \"middle\" } function x(a) { return a ? \"rotate(\" + a + \")\" : \"\" } function y(a) { return a ? 8 * Math.sin(Math.PI * (a / 180)) : 0 } function z(a) { return a ? 11.5 - 2.5 * (a / 15) * (a > 0 ? 1 : -1) : W } var A, B, C, D = k.g = a.select(this), E = this.__chart__ || p, F = this.__chart__ = g(), G = t ? t : f(F), H = D.selectAll(\".tick\").data(G, F), I = H.enter().insert(\"g\", \".domain\").attr(\"class\", \"tick\").style(\"opacity\", 1e-6), J = H.exit().remove(), K = j(H).style(\"opacity\", 1), L = p.rangeExtent ? p.rangeExtent() : e(p.range()), M = D.selectAll(\".domain\").data([0]), N = (M.enter().append(\"path\").attr(\"class\", \"domain\"), j(M)); I.append(\"line\"), I.append(\"text\"); var O = I.select(\"line\"), P = K.select(\"line\"), Q = I.select(\"text\"), R = K.select(\"text\"); b.isCategory ? (u = Math.ceil((F(1) - F(0)) / 2), B = o ? 0 : u, C = o ? u : 0) : u = B = 0; var S, T, U = i(D.select(\".tick\")), V = [], W = Math.max(r, 0) + s, X = \"left\" === q || \"right\" === q; S = H.select(\"text\"), T = S.selectAll(\"tspan\").data(function (a, c) { var d = b.tickMultiline ? m(a, b.tickWidth) : [].concat(h(a)); return V[c] = d.length, d.map(function (a) { return { index: c, splitted: a } }) }), T.enter().append(\"tspan\"), T.exit().remove(), T.text(function (a) { return a.splitted }); var Y = b.tickTextRotate; switch (q) { case \"bottom\": A = c, O.attr(\"y2\", r), Q.attr(\"y\", W), P.attr(\"x1\", B).attr(\"x2\", B).attr(\"y2\", v), R.attr(\"x\", 0).attr(\"y\", z(Y)).style(\"text-anchor\", w(Y)).attr(\"transform\", x(Y)), T.attr(\"x\", 0).attr(\"dy\", n).attr(\"dx\", y(Y)), N.attr(\"d\", \"M\" + L[0] + \",\" + l + \"V0H\" + L[1] + \"V\" + l); break; case \"top\": A = c, O.attr(\"y2\", -r), Q.attr(\"y\", -W), P.attr(\"x2\", 0).attr(\"y2\", -r), R.attr(\"x\", 0).attr(\"y\", -W), S.style(\"text-anchor\", \"middle\"), T.attr(\"x\", 0).attr(\"dy\", \"0em\"), N.attr(\"d\", \"M\" + L[0] + \",\" + -l + \"V0H\" + L[1] + \"V\" + -l); break; case \"left\": A = d, O.attr(\"x2\", -r), Q.attr(\"x\", -W), P.attr(\"x2\", -r).attr(\"y1\", C).attr(\"y2\", C), R.attr(\"x\", -W).attr(\"y\", u), S.style(\"text-anchor\", \"end\"), T.attr(\"x\", -W).attr(\"dy\", n), N.attr(\"d\", \"M\" + -l + \",\" + L[0] + \"H0V\" + L[1] + \"H\" + -l); break; case \"right\": A = d, O.attr(\"x2\", r), Q.attr(\"x\", W), P.attr(\"x2\", r).attr(\"y2\", 0), R.attr(\"x\", W).attr(\"y\", 0), S.style(\"text-anchor\", \"start\"), T.attr(\"x\", W).attr(\"dy\", n), N.attr(\"d\", \"M\" + l + \",\" + L[0] + \"H0V\" + L[1] + \"H\" + l) } if (F.rangeBand) { var Z = F, $ = Z.rangeBand() / 2; E = F = function (a) { return Z(a) + $ } } else E.rangeBand ? E = F : J.call(A, F); I.call(A, E), K.call(A, F) }) } var l, m, n, o, p = a.scale.linear(), q = \"bottom\", r = 6, s = 3, t = null, u = 0, v = !0; return b = b || {}, l = b.withOuterTick ? 6 : 0, k.scale = function (a) { return arguments.length ? (p = a, k) : p }, k.orient = function (a) { return arguments.length ? (q = a in { top: 1, right: 1, bottom: 1, left: 1 } ? a + \"\" : \"bottom\", k) : q }, k.tickFormat = function (a) { return arguments.length ? (m = a, k) : m }, k.tickCentered = function (a) { return arguments.length ? (o = a, k) : o }, k.tickOffset = function () { return u }, k.tickInterval = function () { var a, c; return b.isCategory ? a = 2 * u : (c = k.g.select(\"path.domain\").node().getTotalLength() - 2 * l, a = c / k.g.selectAll(\"line\").size()), 1 / 0 === a ? 0 : a }, k.ticks = function () { return arguments.length ? (n = arguments, k) : n }, k.tickCulling = function (a) { return arguments.length ? (v = a, k) : v }, k.tickValues = function (a) { if (\"function\" == typeof a) t = function () { return a(p.domain()) }; else { if (!arguments.length) return t; t = a } return k }, k } var h, i, j, k = { version: \"0.4.10\" }; k.generate = function (a) { return new d(a) }, k.chart = { fn: d.prototype, internal: { fn: e.prototype, axis: { fn: f.prototype } } }, h = k.chart.fn, i = k.chart.internal.fn, j = k.chart.internal.axis.fn, i.init = function () { var a = this, b = a.config; if (a.initParams(), b.data_url) a.convertUrlToData(b.data_url, b.data_mimeType, b.data_keys, a.initWithData); else if (b.data_json) a.initWithData(a.convertJsonToData(b.data_json, b.data_keys)); else if (b.data_rows) a.initWithData(a.convertRowsToData(b.data_rows)); else { if (!b.data_columns) throw Error(\"url or json or rows or columns is required.\"); a.initWithData(a.convertColumnsToData(b.data_columns)) } }, i.initParams = function () { var a = this, b = a.d3, c = a.config; a.clipId = \"c3-\" + +new Date + \"-clip\", a.clipIdForXAxis = a.clipId + \"-xaxis\", a.clipIdForYAxis = a.clipId + \"-yaxis\", a.clipIdForGrid = a.clipId + \"-grid\", a.clipIdForSubchart = a.clipId + \"-subchart\", a.clipPath = a.getClipPath(a.clipId), a.clipPathForXAxis = a.getClipPath(a.clipIdForXAxis), a.clipPathForYAxis = a.getClipPath(a.clipIdForYAxis), a.clipPathForGrid = a.getClipPath(a.clipIdForGrid), a.clipPathForSubchart = a.getClipPath(a.clipIdForSubchart), a.dragStart = null, a.dragging = !1, a.flowing = !1, a.cancelClick = !1, a.mouseover = !1, a.transiting = !1, a.color = a.generateColor(), a.levelColor = a.generateLevelColor(), a.dataTimeFormat = c.data_xLocaltime ? b.time.format : b.time.format.utc, a.axisTimeFormat = c.axis_x_localtime ? b.time.format : b.time.format.utc, a.defaultAxisTimeFormat = a.axisTimeFormat.multi([[\".%L\", function (a) { return a.getMilliseconds() }], [\":%S\", function (a) { return a.getSeconds() }], [\"%I:%M\", function (a) { return a.getMinutes() }], [\"%I %p\", function (a) { return a.getHours() }], [\"%-m/%-d\", function (a) { return a.getDay() && 1 !== a.getDate() }], [\"%-m/%-d\", function (a) { return 1 !== a.getDate() }], [\"%-m/%-d\", function (a) { return a.getMonth() }], [\"%Y/%-m/%-d\", function () { return !0 }]]), a.hiddenTargetIds = [], a.hiddenLegendIds = [], a.focusedTargetIds = [], a.defocusedTargetIds = [], a.xOrient = c.axis_rotated ? \"left\" : \"bottom\", a.yOrient = c.axis_rotated ? c.axis_y_inner ? \"top\" : \"bottom\" : c.axis_y_inner ? \"right\" : \"left\", a.y2Orient = c.axis_rotated ? c.axis_y2_inner ? \"bottom\" : \"top\" : c.axis_y2_inner ? \"left\" : \"right\", a.subXOrient = c.axis_rotated ? \"left\" : \"bottom\", a.isLegendRight = \"right\" === c.legend_position, a.isLegendInset = \"inset\" === c.legend_position, a.isLegendTop = \"top-left\" === c.legend_inset_anchor || \"top-right\" === c.legend_inset_anchor, a.isLegendLeft = \"top-left\" === c.legend_inset_anchor || \"bottom-left\" === c.legend_inset_anchor, a.legendStep = 0, a.legendItemWidth = 0, a.legendItemHeight = 0, a.currentMaxTickWidths = { x: 0, y: 0, y2: 0 }, a.rotated_padding_left = 30, a.rotated_padding_right = c.axis_rotated && !c.axis_x_show ? 0 : 30, a.rotated_padding_top = 5, a.withoutFadeIn = {}, a.intervalForObserveInserted = void 0, a.axes.subx = b.selectAll([]) }, i.initChartElements = function () { this.initBar && this.initBar(), this.initLine && this.initLine(), this.initArc && this.initArc(), this.initGauge && this.initGauge(), this.initText && this.initText() }, i.initWithData = function (b) { var c, d, e = this, g = e.d3, h = e.config, i = !0; e.axis = new f(e), e.initPie && e.initPie(), e.initBrush && e.initBrush(), e.initZoom && e.initZoom(), e.selectChart = h.bindto ? \"function\" == typeof h.bindto.node ? h.bindto : g.select(h.bindto) : g.selectAll([]), e.selectChart.empty() && (e.selectChart = g.select(document.createElement(\"div\")).style(\"opacity\", 0), e.observeInserted(e.selectChart), i = !1), e.selectChart.html(\"\").classed(\"c3\", !0), e.data.xs = {}, e.data.targets = e.convertDataToTargets(b), h.data_filter && (e.data.targets = e.data.targets.filter(h.data_filter)), h.data_hide && e.addHiddenTargetIds(h.data_hide === !0 ? e.mapToIds(e.data.targets) : h.data_hide), h.legend_hide && e.addHiddenLegendIds(h.legend_hide === !0 ? e.mapToIds(e.data.targets) : h.legend_hide), e.hasType(\"gauge\") && (h.legend_show = !1), e.updateSizes(), e.updateScales(), e.x.domain(g.extent(e.getXDomain(e.data.targets))), e.y.domain(e.getYDomain(e.data.targets, \"y\")), e.y2.domain(e.getYDomain(e.data.targets, \"y2\")), e.subX.domain(e.x.domain()), e.subY.domain(e.y.domain()), e.subY2.domain(e.y2.domain()), e.orgXDomain = e.x.domain(), e.brush && e.brush.scale(e.subX), h.zoom_enabled && e.zoom.scale(e.x), e.svg = e.selectChart.append(\"svg\").style(\"overflow\", \"hidden\").on(\"mouseenter\", function () { return h.onmouseover.call(e) }).on(\"mouseleave\", function () { return h.onmouseout.call(e) }), c = e.svg.append(\"defs\"), e.clipChart = e.appendClip(c, e.clipId), e.clipXAxis = e.appendClip(c, e.clipIdForXAxis), e.clipYAxis = e.appendClip(c, e.clipIdForYAxis), e.clipGrid = e.appendClip(c, e.clipIdForGrid), e.clipSubchart = e.appendClip(c, e.clipIdForSubchart), e.updateSvgSize(), d = e.main = e.svg.append(\"g\").attr(\"transform\", e.getTranslate(\"main\")), e.initSubchart && e.initSubchart(), e.initTooltip && e.initTooltip(), e.initLegend && e.initLegend(), d.append(\"text\").attr(\"class\", l.text + \" \" + l.empty).attr(\"text-anchor\", \"middle\").attr(\"dominant-baseline\", \"middle\"), e.initRegion(), e.initGrid(), d.append(\"g\").attr(\"clip-path\", e.clipPath).attr(\"class\", l.chart), h.grid_lines_front && e.initGridLines(), e.initEventRect(), e.initChartElements(), d.insert(\"rect\", h.zoom_privileged ? null : \"g.\" + l.regions).attr(\"class\", l.zoomRect).attr(\"width\", e.width).attr(\"height\", e.height).style(\"opacity\", 0).on(\"dblclick.zoom\", null), h.axis_x_extent && e.brush.extent(e.getDefaultExtent()), e.axis.init(), e.updateTargets(e.data.targets), i && (e.updateDimension(), e.config.oninit.call(e), e.redraw({ withTransition: !1, withTransform: !0, withUpdateXDomain: !0, withUpdateOrgXDomain: !0, withTransitionForAxis: !1 })), null == a.onresize && (a.onresize = e.generateResize()), a.onresize.add && (a.onresize.add(function () { h.onresize.call(e) }), a.onresize.add(function () { e.api.flush() }), a.onresize.add(function () { h.onresized.call(e) })), e.api.element = e.selectChart.node() }, i.smoothLines = function (a, b) { var c = this; \"grid\" === b && a.each(function () { var a = c.d3.select(this), b = a.attr(\"x1\"), d = a.attr(\"x2\"), e = a.attr(\"y1\"), f = a.attr(\"y2\"); a.attr({ x1: Math.ceil(b), x2: Math.ceil(d), y1: Math.ceil(e), y2: Math.ceil(f) }) }) }, i.updateSizes = function () { var a = this, b = a.config, c = a.legend ? a.getLegendHeight() : 0, d = a.legend ? a.getLegendWidth() : 0, e = a.isLegendRight || a.isLegendInset ? 0 : c, f = a.hasArcType(), g = b.axis_rotated || f ? 0 : a.getHorizontalAxisHeight(\"x\"), h = b.subchart_show && !f ? b.subchart_size_height + g : 0; a.currentWidth = a.getCurrentWidth(), a.currentHeight = a.getCurrentHeight(), a.margin = b.axis_rotated ? { top: a.getHorizontalAxisHeight(\"y2\") + a.getCurrentPaddingTop(), right: f ? 0 : a.getCurrentPaddingRight(), bottom: a.getHorizontalAxisHeight(\"y\") + e + a.getCurrentPaddingBottom(), left: h + (f ? 0 : a.getCurrentPaddingLeft()) } : { top: 4 + a.getCurrentPaddingTop(), right: f ? 0 : a.getCurrentPaddingRight(), bottom: g + h + e + a.getCurrentPaddingBottom(), left: f ? 0 : a.getCurrentPaddingLeft() }, a.margin2 = b.axis_rotated ? { top: a.margin.top, right: 0 / 0, bottom: 20 + e, left: a.rotated_padding_left } : { top: a.currentHeight - h - e, right: 0 / 0, bottom: g + e, left: a.margin.left }, a.margin3 = { top: 0, right: 0 / 0, bottom: 0, left: 0 }, a.updateSizeForLegend && a.updateSizeForLegend(c, d), a.width = a.currentWidth - a.margin.left - a.margin.right, a.height = a.currentHeight - a.margin.top - a.margin.bottom, a.width < 0 && (a.width = 0), a.height < 0 && (a.height = 0), a.width2 = b.axis_rotated ? a.margin.left - a.rotated_padding_left - a.rotated_padding_right : a.width, a.height2 = b.axis_rotated ? a.height : a.currentHeight - a.margin2.top - a.margin2.bottom, a.width2 < 0 && (a.width2 = 0), a.height2 < 0 && (a.height2 = 0), a.arcWidth = a.width - (a.isLegendRight ? d + 10 : 0), a.arcHeight = a.height - (a.isLegendRight ? 0 : 10), a.hasType(\"gauge\") && (a.arcHeight += a.height - a.getGaugeLabelHeight()), a.updateRadius && a.updateRadius(), a.isLegendRight && f && (a.margin3.left = a.arcWidth / 2 + 1.1 * a.radiusExpanded) }, i.updateTargets = function (a) { var b = this; b.updateTargetsForText(a), b.updateTargetsForBar(a), b.updateTargetsForLine(a), b.hasArcType() && b.updateTargetsForArc && b.updateTargetsForArc(a), b.updateTargetsForSubchart && b.updateTargetsForSubchart(a), b.showTargets() }, i.showTargets = function () { var a = this; a.svg.selectAll(\".\" + l.target).filter(function (b) { return a.isTargetToShow(b.id) }).transition().duration(a.config.transition_duration).style(\"opacity\", 1) }, i.redraw = function (a, b) { var c, d, e, f, g, h, i, j, k, m, n, o, p, q, r, s, t, u, v, x, y, z, A, B, C, D, E, F, G, H = this, I = H.main, J = H.d3, K = H.config, L = H.getShapeIndices(H.isAreaType), M = H.getShapeIndices(H.isBarType), N = H.getShapeIndices(H.isLineType), O = H.hasArcType(), P = H.filterTargetsToShow(H.data.targets), Q = H.xv.bind(H); if (a = a || {}, c = w(a, \"withY\", !0), d = w(a, \"withSubchart\", !0), e = w(a, \"withTransition\", !0), h = w(a, \"withTransform\", !1), i = w(a, \"withUpdateXDomain\", !1), j = w(a, \"withUpdateOrgXDomain\", !1), k = w(a, \"withTrimXDomain\", !0), p = w(a, \"withUpdateXAxis\", i), m = w(a, \"withLegend\", !1), n = w(a, \"withEventRect\", !0), o = w(a, \"withDimension\", !0), f = w(a, \"withTransitionForExit\", e), g = w(a, \"withTransitionForAxis\", e), v = e ? K.transition_duration : 0, x = f ? v : 0, y = g ? v : 0, b = b || H.axis.generateTransitions(y), m && K.legend_show ? H.updateLegend(H.mapToIds(H.data.targets), a, b) : o && H.updateDimension(!0), H.isCategorized() && 0 === P.length && H.x.domain([0, H.axes.x.selectAll(\".tick\").size()]), P.length ? (H.updateXDomain(P, i, j, k), K.axis_x_tick_values || (B = H.axis.updateXAxisTickValues(P))) : (H.xAxis.tickValues([]), H.subXAxis.tickValues([])), K.zoom_rescale && !a.flow && (E = H.x.orgDomain()), H.y.domain(H.getYDomain(P, \"y\", E)), H.y2.domain(H.getYDomain(P, \"y2\", E)), !K.axis_y_tick_values && K.axis_y_tick_count && H.yAxis.tickValues(H.axis.generateTickValues(H.y.domain(), K.axis_y_tick_count)), !K.axis_y2_tick_values && K.axis_y2_tick_count && H.y2Axis.tickValues(H.axis.generateTickValues(H.y2.domain(), K.axis_y2_tick_count)), H.axis.redraw(b, O), H.axis.updateLabels(e), (i || p) && P.length) if (K.axis_x_tick_culling && B) { for (C = 1; C < B.length; C++) if (B.length / C < K.axis_x_tick_culling_max) { D = C; break } H.svg.selectAll(\".\" + l.axisX + \" .tick text\").each(function (a) { var b = B.indexOf(a); b >= 0 && J.select(this).style(\"display\", b % D ? \"none\" : \"block\") }) } else H.svg.selectAll(\".\" + l.axisX + \" .tick text\").style(\"display\", \"block\"); q = H.generateDrawArea ? H.generateDrawArea(L, !1) : void 0, r = H.generateDrawBar ? H.generateDrawBar(M) : void 0, s = H.generateDrawLine ? H.generateDrawLine(N, !1) : void 0, t = H.generateXYForText(L, M, N, !0), u = H.generateXYForText(L, M, N, !1), c && (H.subY.domain(H.getYDomain(P, \"y\")), H.subY2.domain(H.getYDomain(P, \"y2\"))), H.tooltip.style(\"display\", \"none\"), H.updateXgridFocus(), I.select(\"text.\" + l.text + \".\" + l.empty).attr(\"x\", H.width / 2).attr(\"y\", H.height / 2).text(K.data_empty_label_text).transition().style(\"opacity\", P.length ? 0 : 1), H.updateGrid(v), H.updateRegion(v), H.updateBar(x), H.updateLine(x), H.updateArea(x), H.updateCircle(), H.hasDataLabel() && H.updateText(x), H.redrawArc && H.redrawArc(v, x, h), H.redrawSubchart && H.redrawSubchart(d, b, v, x, L, M, N), I.selectAll(\".\" + l.selectedCircles).filter(H.isBarType.bind(H)).selectAll(\"circle\").remove(), K.interaction_enabled && !a.flow && n && (H.redrawEventRect(), H.updateZoom && H.updateZoom()), H.updateCircleY(), F = (H.config.axis_rotated ? H.circleY : H.circleX).bind(H), G = (H.config.axis_rotated ? H.circleX : H.circleY).bind(H), a.flow && (A = H.generateFlow({ targets: P, flow: a.flow, duration: a.flow.duration, drawBar: r, drawLine: s, drawArea: q, cx: F, cy: G, xv: Q, xForText: t, yForText: u })), (v || A) && H.isTabVisible() ? J.transition().duration(v).each(function () { var b = [];[H.redrawBar(r, !0), H.redrawLine(s, !0), H.redrawArea(q, !0), H.redrawCircle(F, G, !0), H.redrawText(t, u, a.flow, !0), H.redrawRegion(!0), H.redrawGrid(!0)].forEach(function (a) { a.forEach(function (a) { b.push(a) }) }), z = H.generateWait(), b.forEach(function (a) { z.add(a) }) }).call(z, function () { A && A(), K.onrendered && K.onrendered.call(H) }) : (H.redrawBar(r), H.redrawLine(s), H.redrawArea(q), H.redrawCircle(F, G), H.redrawText(t, u, a.flow), H.redrawRegion(), H.redrawGrid(), K.onrendered && K.onrendered.call(H)), H.mapToIds(H.data.targets).forEach(function (a) { H.withoutFadeIn[a] = !0 }) }, i.updateAndRedraw = function (a) { var b, c = this, d = c.config; a = a || {}, a.withTransition = w(a, \"withTransition\", !0), a.withTransform = w(a, \"withTransform\", !1), a.withLegend = w(a, \"withLegend\", !1), a.withUpdateXDomain = !0, a.withUpdateOrgXDomain = !0, a.withTransitionForExit = !1, a.withTransitionForTransform = w(a, \"withTransitionForTransform\", a.withTransition), c.updateSizes(), a.withLegend && d.legend_show || (b = c.axis.generateTransitions(a.withTransitionForAxis ? d.transition_duration : 0), c.updateScales(), c.updateSvgSize(), c.transformAll(a.withTransitionForTransform, b)), c.redraw(a, b) }, i.redrawWithoutRescale = function () { this.redraw({ withY: !1, withSubchart: !1, withEventRect: !1, withTransitionForAxis: !1 }) }, i.isTimeSeries = function () { return \"timeseries\" === this.config.axis_x_type }, i.isCategorized = function () { return this.config.axis_x_type.indexOf(\"categor\") >= 0 }, i.isCustomX = function () { var a = this, b = a.config; return !a.isTimeSeries() && (b.data_x || v(b.data_xs)) }, i.isTimeSeriesY = function () { return \"timeseries\" === this.config.axis_y_type }, i.getTranslate = function (a) { var b, c, d = this, e = d.config; return \"main\" === a ? (b = s(d.margin.left), c = s(d.margin.top)) : \"context\" === a ? (b = s(d.margin2.left), c = s(d.margin2.top)) : \"legend\" === a ? (b = d.margin3.left, c = d.margin3.top) : \"x\" === a ? (b = 0, c = e.axis_rotated ? 0 : d.height) : \"y\" === a ? (b = 0, c = e.axis_rotated ? d.height : 0) : \"y2\" === a ? (b = e.axis_rotated ? 0 : d.width, c = e.axis_rotated ? 1 : 0) : \"subx\" === a ? (b = 0, c = e.axis_rotated ? 0 : d.height2) : \"arc\" === a && (b = d.arcWidth / 2, c = d.arcHeight / 2), \"translate(\" + b + \",\" + c + \")\" }, i.initialOpacity = function (a) { return null !== a.value && this.withoutFadeIn[a.id] ? 1 : 0 }, i.initialOpacityForCircle = function (a) { return null !== a.value && this.withoutFadeIn[a.id] ? this.opacityForCircle(a) : 0 }, i.opacityForCircle = function (a) { var b = this.config.point_show ? 1 : 0; return m(a.value) ? this.isScatterType(a) ? .5 : b : 0 }, i.opacityForText = function () { return this.hasDataLabel() ? 1 : 0 }, i.xx = function (a) { return a ? this.x(a.x) : null }, i.xv = function (a) { var b = this, c = a.value; return b.isTimeSeries() ? c = b.parseDate(a.value) : b.isCategorized() && \"string\" == typeof a.value && (c = b.config.axis_x_categories.indexOf(a.value)), Math.ceil(b.x(c)) }, i.yv = function (a) { var b = this, c = a.axis && \"y2\" === a.axis ? b.y2 : b.y; return Math.ceil(c(a.value)) }, i.subxx = function (a) { return a ? this.subX(a.x) : null }, i.transformMain = function (a, b) { var c, d, e, f = this; b && b.axisX ? c = b.axisX : (c = f.main.select(\".\" + l.axisX), a && (c = c.transition())), b && b.axisY ? d = b.axisY : (d = f.main.select(\".\" + l.axisY), a && (d = d.transition())), b && b.axisY2 ? e = b.axisY2 : (e = f.main.select(\".\" + l.axisY2), a && (e = e.transition())), (a ? f.main.transition() : f.main).attr(\"transform\", f.getTranslate(\"main\")), c.attr(\"transform\", f.getTranslate(\"x\")), d.attr(\"transform\", f.getTranslate(\"y\")), e.attr(\"transform\", f.getTranslate(\"y2\")), f.main.select(\".\" + l.chartArcs).attr(\"transform\", f.getTranslate(\"arc\")) }, i.transformAll = function (a, b) { var c = this; c.transformMain(a, b), c.config.subchart_show && c.transformContext(a, b), c.legend && c.transformLegend(a) }, i.updateSvgSize = function () { var a = this, b = a.svg.select(\".c3-brush .background\"); a.svg.attr(\"width\", a.currentWidth).attr(\"height\", a.currentHeight), a.svg.selectAll([\"#\" + a.clipId, \"#\" + a.clipIdForGrid]).select(\"rect\").attr(\"width\", a.width).attr(\"height\", a.height), a.svg.select(\"#\" + a.clipIdForXAxis).select(\"rect\").attr(\"x\", a.getXAxisClipX.bind(a)).attr(\"y\", a.getXAxisClipY.bind(a)).attr(\"width\", a.getXAxisClipWidth.bind(a)).attr(\"height\", a.getXAxisClipHeight.bind(a)), a.svg.select(\"#\" + a.clipIdForYAxis).select(\"rect\").attr(\"x\", a.getYAxisClipX.bind(a)).attr(\"y\", a.getYAxisClipY.bind(a)).attr(\"width\", a.getYAxisClipWidth.bind(a)).attr(\"height\", a.getYAxisClipHeight.bind(a)), a.svg.select(\"#\" + a.clipIdForSubchart).select(\"rect\").attr(\"width\", a.width).attr(\"height\", b.size() ? b.attr(\"height\") : 0), a.svg.select(\".\" + l.zoomRect).attr(\"width\", a.width).attr(\"height\", a.height), a.selectChart.style(\"max-height\", a.currentHeight + \"px\") }, i.updateDimension = function (a) { var b = this; a || (b.config.axis_rotated ? (b.axes.x.call(b.xAxis), b.axes.subx.call(b.subXAxis)) : (b.axes.y.call(b.yAxis), b.axes.y2.call(b.y2Axis))), b.updateSizes(), b.updateScales(), b.updateSvgSize(), b.transformAll(!1) }, i.observeInserted = function (b) { var c, d = this; return \"undefined\" == typeof MutationObserver ? void a.console.error(\"MutationObserver not defined.\") : (c = new MutationObserver(function (e) { e.forEach(function (e) { \"childList\" === e.type && e.previousSibling && (c.disconnect(), d.intervalForObserveInserted = a.setInterval(function () { b.node().parentNode && (a.clearInterval(d.intervalForObserveInserted), d.updateDimension(), d.config.oninit.call(d), d.redraw({ withTransform: !0, withUpdateXDomain: !0, withUpdateOrgXDomain: !0, withTransition: !1, withTransitionForTransform: !1, withLegend: !0 }), b.transition().style(\"opacity\", 1)) }, 10)) }) }), void c.observe(b.node(), { attributes: !0, childList: !0, characterData: !0 })) }, i.generateResize = function () { function a() { b.forEach(function (a) { a() }) } var b = []; return a.add = function (a) { b.push(a) }, a }, i.endall = function (a, b) { var c = 0; a.each(function () { ++c }).each(\"end\", function () { --c || b.apply(this, arguments) }) }, i.generateWait = function () { var a = [], b = function (b, c) { var d = setInterval(function () { var b = 0; a.forEach(function (a) { if (a.empty()) return void (b += 1); try { a.transition() } catch (c) { b += 1 } }), b === a.length && (clearInterval(d), c && c()) }, 10) }; return b.add = function (b) { a.push(b) }, b }, i.parseDate = function (b) { var c, d = this; return b instanceof Date ? c = b : \"string\" == typeof b ? c = d.dataTimeFormat(d.config.data_xFormat).parse(b) : \"number\" != typeof b && isNaN(b) || (c = new Date(+b)), (!c || isNaN(+c)) && a.console.error(\"Failed to parse x '\" + b + \"' to Date object\"), c }, i.isTabVisible = function () { var a; return \"undefined\" != typeof document.hidden ? a = \"hidden\" : \"undefined\" != typeof document.mozHidden ? a = \"mozHidden\" : \"undefined\" != typeof document.msHidden ? a = \"msHidden\" : \"undefined\" != typeof document.webkitHidden && (a = \"webkitHidden\"), document[a] ? !1 : !0 }, i.getDefaultConfig = function () { var a = { bindto: \"#chart\", size_width: void 0, size_height: void 0, padding_left: void 0, padding_right: void 0, padding_top: void 0, padding_bottom: void 0, zoom_enabled: !1, zoom_extent: void 0, zoom_privileged: !1, zoom_rescale: !1, zoom_onzoom: function () { }, zoom_onzoomstart: function () { }, zoom_onzoomend: function () { }, interaction_enabled: !0, onmouseover: function () { }, onmouseout: function () { }, onresize: function () { }, onresized: function () { }, oninit: function () { }, onrendered: function () { }, transition_duration: 350, data_x: void 0, data_xs: {}, data_xFormat: \"%Y-%m-%d\", data_xLocaltime: !0, data_xSort: !0, data_idConverter: function (a) { return a }, data_names: {}, data_classes: {}, data_groups: [], data_axes: {}, data_type: void 0, data_types: {}, data_labels: {}, data_order: \"desc\", data_regions: {}, data_color: void 0, data_colors: {}, data_hide: !1, data_filter: void 0, data_selection_enabled: !1, data_selection_grouped: !1, data_selection_isselectable: function () { return !0 }, data_selection_multiple: !0, data_selection_draggable: !1, data_onclick: function () { }, data_onmouseover: function () { }, data_onmouseout: function () { }, data_onselected: function () { }, data_onunselected: function () { }, data_url: void 0, data_json: void 0, data_rows: void 0, data_columns: void 0, data_mimeType: void 0, data_keys: void 0, data_empty_label_text: \"\", subchart_show: !1, subchart_size_height: 60, subchart_onbrush: function () { }, color_pattern: [], color_threshold: {}, legend_show: !0, legend_hide: !1, legend_position: \"bottom\", legend_inset_anchor: \"top-left\", legend_inset_x: 10, legend_inset_y: 0, legend_inset_step: void 0, legend_item_onclick: void 0, legend_item_onmouseover: void 0, legend_item_onmouseout: void 0, legend_equally: !1, axis_rotated: !1, axis_x_show: !0, axis_x_type: \"indexed\", axis_x_localtime: !0, axis_x_categories: [], axis_x_tick_centered: !1, axis_x_tick_format: void 0, axis_x_tick_culling: {}, axis_x_tick_culling_max: 10, axis_x_tick_count: void 0, axis_x_tick_fit: !0, axis_x_tick_values: null, axis_x_tick_rotate: 0, axis_x_tick_outer: !0, axis_x_tick_multiline: !0, axis_x_tick_width: null, axis_x_max: void 0, axis_x_min: void 0, axis_x_padding: {}, axis_x_height: void 0, axis_x_extent: void 0, axis_x_label: {}, axis_y_show: !0, axis_y_type: void 0, axis_y_max: void 0, axis_y_min: void 0, axis_y_inverted: !1, axis_y_center: void 0, axis_y_inner: void 0, axis_y_label: {}, axis_y_tick_format: void 0, axis_y_tick_outer: !0, axis_y_tick_values: null, axis_y_tick_count: void 0, axis_y_tick_time_value: void 0, axis_y_tick_time_interval: void 0, axis_y_padding: {}, axis_y_default: void 0, axis_y2_show: !1, axis_y2_max: void 0, axis_y2_min: void 0, axis_y2_inverted: !1, axis_y2_center: void 0, axis_y2_inner: void 0, axis_y2_label: {}, axis_y2_tick_format: void 0, axis_y2_tick_outer: !0, axis_y2_tick_values: null, axis_y2_tick_count: void 0, axis_y2_padding: {}, axis_y2_default: void 0, grid_x_show: !1, grid_x_type: \"tick\", grid_x_lines: [], grid_y_show: !1, grid_y_lines: [], grid_y_ticks: 10, grid_focus_show: !0, grid_lines_front: !0, point_show: !0, point_r: 2.5, point_focus_expand_enabled: !0, point_focus_expand_r: void 0, point_select_r: void 0, line_connectNull: !1, line_step_type: \"step\", bar_width: void 0, bar_width_ratio: .6, bar_width_max: void 0, bar_zerobased: !0, area_zerobased: !0, pie_label_show: !0, pie_label_format: void 0, pie_label_threshold: .05, pie_expand: !0, gauge_label_show: !0, gauge_label_format: void 0, gauge_expand: !0, gauge_min: 0, gauge_max: 100, gauge_units: void 0, gauge_width: void 0, donut_label_show: !0, donut_label_format: void 0, donut_label_threshold: .05, donut_width: void 0, donut_expand: !0, donut_title: \"\", regions: [], tooltip_show: !0, tooltip_grouped: !0, tooltip_format_title: void 0, tooltip_format_name: void 0, tooltip_format_value: void 0, tooltip_position: void 0, tooltip_contents: function (a, b, c, d) { return this.getTooltipContent ? this.getTooltipContent(a, b, c, d) : \"\" }, tooltip_init_show: !1, tooltip_init_x: 0, tooltip_init_position: { top: \"0px\", left: \"50px\" } }; return Object.keys(this.additionalConfig).forEach(function (b) { a[b] = this.additionalConfig[b] }, this), a }, i.additionalConfig = {}, i.loadConfig = function (a) { function b() { var a = d.shift(); return a && c && \"object\" == typeof c && a in c ? (c = c[a], b()) : a ? void 0 : c } var c, d, e, f = this.config; Object.keys(f).forEach(function (g) { c = a, d = g.split(\"_\"), e = b(), q(e) && (f[g] = e) }) }, i.getScale = function (a, b, c) { return (c ? this.d3.time.scale() : this.d3.scale.linear()).range([a, b]) }, i.getX = function (a, b, c, d) { var e, f = this, g = f.getScale(a, b, f.isTimeSeries()), h = c ? g.domain(c) : g; f.isCategorized() ? (d = d || function () { return 0 }, g = function (a, b) { var c = h(a) + d(a); return b ? c : Math.ceil(c) }) : g = function (a, b) { var c = h(a); return b ? c : Math.ceil(c) }; for (e in h) g[e] = h[e]; return g.orgDomain = function () { return h.domain() }, f.isCategorized() && (g.domain = function (a) { return arguments.length ? (h.domain(a), g) : (a = this.orgDomain(), [a[0], a[1] + 1]) }), g }, i.getY = function (a, b, c) { var d = this.getScale(a, b, this.isTimeSeriesY()); return c && d.domain(c), d }, i.getYScale = function (a) { return \"y2\" === this.axis.getId(a) ? this.y2 : this.y }, i.getSubYScale = function (a) { return \"y2\" === this.axis.getId(a) ? this.subY2 : this.subY }, i.updateScales = function () { var a = this, b = a.config, c = !a.x; a.xMin = b.axis_rotated ? 1 : 0, a.xMax = b.axis_rotated ? a.height : a.width, a.yMin = b.axis_rotated ? 0 : a.height, a.yMax = b.axis_rotated ? a.width : 1, a.subXMin = a.xMin, a.subXMax = a.xMax, a.subYMin = b.axis_rotated ? 0 : a.height2, a.subYMax = b.axis_rotated ? a.width2 : 1, a.x = a.getX(a.xMin, a.xMax, c ? void 0 : a.x.orgDomain(), function () { return a.xAxis.tickOffset() }), a.y = a.getY(a.yMin, a.yMax, c ? b.axis_y_default : a.y.domain()), a.y2 = a.getY(a.yMin, a.yMax, c ? b.axis_y2_default : a.y2.domain()), a.subX = a.getX(a.xMin, a.xMax, a.orgXDomain, function (b) { return b % 1 ? 0 : a.subXAxis.tickOffset() }), a.subY = a.getY(a.subYMin, a.subYMax, c ? b.axis_y_default : a.subY.domain()), a.subY2 = a.getY(a.subYMin, a.subYMax, c ? b.axis_y2_default : a.subY2.domain()), a.xAxisTickFormat = a.axis.getXAxisTickFormat(), a.xAxisTickValues = a.axis.getXAxisTickValues(), a.yAxisTickValues = a.axis.getYAxisTickValues(), a.y2AxisTickValues = a.axis.getY2AxisTickValues(), a.xAxis = a.axis.getXAxis(a.x, a.xOrient, a.xAxisTickFormat, a.xAxisTickValues, b.axis_x_tick_outer), a.subXAxis = a.axis.getXAxis(a.subX, a.subXOrient, a.xAxisTickFormat, a.xAxisTickValues, b.axis_x_tick_outer), a.yAxis = a.axis.getYAxis(a.y, a.yOrient, b.axis_y_tick_format, a.yAxisTickValues, b.axis_y_tick_outer), a.y2Axis = a.axis.getYAxis(a.y2, a.y2Orient, b.axis_y2_tick_format, a.y2AxisTickValues, b.axis_y2_tick_outer), c || (a.brush && a.brush.scale(a.subX), b.zoom_enabled && a.zoom.scale(a.x)), a.updateArc && a.updateArc() }, i.getYDomainMin = function (a) { var b, c, d, e, f, g, h = this, i = h.config, j = h.mapToIds(a), k = h.getValuesAsIdKeyed(a); if (i.data_groups.length > 0) for (g = h.hasNegativeValueInTargets(a), b = 0; b < i.data_groups.length; b++) if (e = i.data_groups[b].filter(function (a) { return j.indexOf(a) >= 0 }), 0 !== e.length) for (d = e[0], g && k[d] && k[d].forEach(function (a, b) { k[d][b] = 0 > a ? a : 0 }), c = 1; c < e.length; c++) f = e[c], k[f] && k[f].forEach(function (a, b) { h.axis.getId(f) !== h.axis.getId(d) || !k[d] || g && +a > 0 || (k[d][b] += +a) }); return h.d3.min(Object.keys(k).map(function (a) { return h.d3.min(k[a]) })) }, i.getYDomainMax = function (a) { var b, c, d, e, f, g, h = this, i = h.config, j = h.mapToIds(a), k = h.getValuesAsIdKeyed(a); if (i.data_groups.length > 0) for (g = h.hasPositiveValueInTargets(a), b = 0; b < i.data_groups.length; b++) if (e = i.data_groups[b].filter(function (a) { return j.indexOf(a) >= 0 }), 0 !== e.length) for (d = e[0], g && k[d] && k[d].forEach(function (a, b) { k[d][b] = a > 0 ? a : 0 }), c = 1; c < e.length; c++) f = e[c], k[f] && k[f].forEach(function (a, b) { h.axis.getId(f) !== h.axis.getId(d) || !k[d] || g && 0 > +a || (k[d][b] += +a) }); return h.d3.max(Object.keys(k).map(function (a) { return h.d3.max(k[a]) })) }, i.getYDomain = function (a, b, c) { var d, e, f, g, h, i, j, k, l, n, o, p = this, q = p.config, r = a.filter(function (a) { return p.axis.getId(a.id) === b }), s = c ? p.filterByXDomain(r, c) : r, u = \"y2\" === b ? q.axis_y2_min : q.axis_y_min, w = \"y2\" === b ? q.axis_y2_max : q.axis_y_max, x = p.getYDomainMin(s), y = p.getYDomainMax(s), z = \"y2\" === b ? q.axis_y2_center : q.axis_y_center, A = p.hasType(\"bar\", s) && q.bar_zerobased || p.hasType(\"area\", s) && q.area_zerobased, B = \"y2\" === b ? q.axis_y2_inverted : q.axis_y_inverted, C = p.hasDataLabel() && q.axis_rotated, D = p.hasDataLabel() && !q.axis_rotated; return x = m(u) ? u : m(w) ? w > x ? x : w - 10 : x, y = m(w) ? w : m(u) ? y > u ? y : u + 10 : y, 0 === s.length ? \"y2\" === b ? p.y2.domain() : p.y.domain() : (isNaN(x) && (x = 0), isNaN(y) && (y = x), x === y && (0 > x ? y = 0 : x = 0), n = x >= 0 && y >= 0, o = 0 >= x && 0 >= y, (m(u) && n || m(w) && o) && (A = !1), A && (n && (x = 0), o && (y = 0)), e = Math.abs(y - x), f = g = h = .1 * e, \"undefined\" != typeof z && (i = Math.max(Math.abs(x), Math.abs(y)), y = z + i, x = z - i), C ? (j = p.getDataLabelLength(x, y, \"width\"), k = t(p.y.range()), l = [j[0] / k, j[1] / k], g += e * (l[1] / (1 - l[0] - l[1])), h += e * (l[0] / (1 - l[0] - l[1]))) : D && (j = p.getDataLabelLength(x, y, \"height\"), g += p.axis.convertPixelsToAxisPadding(j[1], e), h += p.axis.convertPixelsToAxisPadding(j[0], e)), \"y\" === b && v(q.axis_y_padding) && (g = p.axis.getPadding(q.axis_y_padding, \"top\", g, e), h = p.axis.getPadding(q.axis_y_padding, \"bottom\", h, e)), \"y2\" === b && v(q.axis_y2_padding) && (g = p.axis.getPadding(q.axis_y2_padding, \"top\", g, e), h = p.axis.getPadding(q.axis_y2_padding, \"bottom\", h, e)), A && (n && (h = x), o && (g = -y)), d = [x - h, y + g], B ? d.reverse() : d) }, i.getXDomainMin = function (a) { var b = this, c = b.config; return q(c.axis_x_min) ? b.isTimeSeries() ? this.parseDate(c.axis_x_min) : c.axis_x_min : b.d3.min(a, function (a) { return b.d3.min(a.values, function (a) { return a.x }) }) }, i.getXDomainMax = function (a) { var b = this, c = b.config; return q(c.axis_x_max) ? b.isTimeSeries() ? this.parseDate(c.axis_x_max) : c.axis_x_max : b.d3.max(a, function (a) { return b.d3.max(a.values, function (a) { return a.x }) }) }, i.getXDomainPadding = function (a) { var b, c, d, e, f = this, g = f.config, h = a[1] - a[0]; return f.isCategorized() ? c = 0 : f.hasType(\"bar\") ? (b = f.getMaxDataCount(), c = b > 1 ? h / (b - 1) / 2 : .5) : c = .01 * h, \"object\" == typeof g.axis_x_padding && v(g.axis_x_padding) ? (d = m(g.axis_x_padding.left) ? g.axis_x_padding.left : c, e = m(g.axis_x_padding.right) ? g.axis_x_padding.right : c) : d = e = \"number\" == typeof g.axis_x_padding ? g.axis_x_padding : c, { left: d, right: e } }, i.getXDomain = function (a) {\r\n var b = this, c = [b.getXDomainMin(a), b.getXDomainMax(a)], d = c[0], e = c[1], f = b.getXDomainPadding(c), g = 0, h = 0;\r\n return d - e !== 0 || b.isCategorized() || (b.isTimeSeries() ? (d = new Date(.5 * d.getTime()), e = new Date(1.5 * e.getTime())) : (d = 0 === d ? 1 : .5 * d, e = 0 === e ? -1 : 1.5 * e)), (d || 0 === d) && (g = b.isTimeSeries() ? new Date(d.getTime() - f.left) : d - f.left), (e || 0 === e) && (h = b.isTimeSeries() ? new Date(e.getTime() + f.right) : e + f.right), [g, h]\r\n }, i.updateXDomain = function (a, b, c, d, e) { var f = this, g = f.config; return c && (f.x.domain(e ? e : f.d3.extent(f.getXDomain(a))), f.orgXDomain = f.x.domain(), g.zoom_enabled && f.zoom.scale(f.x).updateScaleExtent(), f.subX.domain(f.x.domain()), f.brush && f.brush.scale(f.subX)), b && (f.x.domain(e ? e : !f.brush || f.brush.empty() ? f.orgXDomain : f.brush.extent()), g.zoom_enabled && f.zoom.scale(f.x).updateScaleExtent()), d && f.x.domain(f.trimXDomain(f.x.orgDomain())), f.x.domain() }, i.trimXDomain = function (a) { var b = this; return a[0] <= b.orgXDomain[0] && (a[1] = +a[1] + (b.orgXDomain[0] - a[0]), a[0] = b.orgXDomain[0]), b.orgXDomain[1] <= a[1] && (a[0] = +a[0] - (a[1] - b.orgXDomain[1]), a[1] = b.orgXDomain[1]), a }, i.isX = function (a) { var b = this, c = b.config; return c.data_x && a === c.data_x || v(c.data_xs) && x(c.data_xs, a) }, i.isNotX = function (a) { return !this.isX(a) }, i.getXKey = function (a) { var b = this, c = b.config; return c.data_x ? c.data_x : v(c.data_xs) ? c.data_xs[a] : null }, i.getXValuesOfXKey = function (a, b) { var c, d = this, e = b && v(b) ? d.mapToIds(b) : []; return e.forEach(function (b) { d.getXKey(b) === a && (c = d.data.xs[b]) }), c }, i.getIndexByX = function (a) { var b = this, c = b.filterByX(b.data.targets, a); return c.length ? c[0].index : null }, i.getXValue = function (a, b) { var c = this; return a in c.data.xs && c.data.xs[a] && m(c.data.xs[a][b]) ? c.data.xs[a][b] : b }, i.getOtherTargetXs = function () { var a = this, b = Object.keys(a.data.xs); return b.length ? a.data.xs[b[0]] : null }, i.getOtherTargetX = function (a) { var b = this.getOtherTargetXs(); return b && a < b.length ? b[a] : null }, i.addXs = function (a) { var b = this; Object.keys(a).forEach(function (c) { b.config.data_xs[c] = a[c] }) }, i.hasMultipleX = function (a) { return this.d3.set(Object.keys(a).map(function (b) { return a[b] })).size() > 1 }, i.isMultipleX = function () { return v(this.config.data_xs) || !this.config.data_xSort || this.hasType(\"scatter\") }, i.addName = function (a) { var b, c = this; return a && (b = c.config.data_names[a.id], a.name = b ? b : a.id), a }, i.getValueOnIndex = function (a, b) { var c = a.filter(function (a) { return a.index === b }); return c.length ? c[0] : null }, i.updateTargetX = function (a, b) { var c = this; a.forEach(function (a) { a.values.forEach(function (d, e) { d.x = c.generateTargetX(b[e], a.id, e) }), c.data.xs[a.id] = b }) }, i.updateTargetXs = function (a, b) { var c = this; a.forEach(function (a) { b[a.id] && c.updateTargetX([a], b[a.id]) }) }, i.generateTargetX = function (a, b, c) { var d, e = this; return d = e.isTimeSeries() ? e.parseDate(a ? a : e.getXValue(b, c)) : e.isCustomX() && !e.isCategorized() ? m(a) ? +a : e.getXValue(b, c) : c }, i.cloneTarget = function (a) { return { id: a.id, id_org: a.id_org, values: a.values.map(function (a) { return { x: a.x, value: a.value, id: a.id } }) } }, i.updateXs = function () { var a = this; a.data.targets.length && (a.xs = [], a.data.targets[0].values.forEach(function (b) { a.xs[b.index] = b.x })) }, i.getPrevX = function (a) { var b = this.xs[a - 1]; return \"undefined\" != typeof b ? b : null }, i.getNextX = function (a) { var b = this.xs[a + 1]; return \"undefined\" != typeof b ? b : null }, i.getMaxDataCount = function () { var a = this; return a.d3.max(a.data.targets, function (a) { return a.values.length }) }, i.getMaxDataCountTarget = function (a) { var b, c = a.length, d = 0; return c > 1 ? a.forEach(function (a) { a.values.length > d && (b = a, d = a.values.length) }) : b = c ? a[0] : null, b }, i.getEdgeX = function (a) { var b = this; return a.length ? [b.d3.min(a, function (a) { return a.values[0].x }), b.d3.max(a, function (a) { return a.values[a.values.length - 1].x })] : [0, 0] }, i.mapToIds = function (a) { return a.map(function (a) { return a.id }) }, i.mapToTargetIds = function (a) { var b = this; return a ? o(a) ? [a] : a : b.mapToIds(b.data.targets) }, i.hasTarget = function (a, b) { var c, d = this.mapToIds(a); for (c = 0; c < d.length; c++) if (d[c] === b) return !0; return !1 }, i.isTargetToShow = function (a) { return this.hiddenTargetIds.indexOf(a) < 0 }, i.isLegendToShow = function (a) { return this.hiddenLegendIds.indexOf(a) < 0 }, i.filterTargetsToShow = function (a) { var b = this; return a.filter(function (a) { return b.isTargetToShow(a.id) }) }, i.mapTargetsToUniqueXs = function (a) { var b = this, c = b.d3.set(b.d3.merge(a.map(function (a) { return a.values.map(function (a) { return +a.x }) }))).values(); return c.map(b.isTimeSeries() ? function (a) { return new Date(+a) } : function (a) { return +a }) }, i.addHiddenTargetIds = function (a) { this.hiddenTargetIds = this.hiddenTargetIds.concat(a) }, i.removeHiddenTargetIds = function (a) { this.hiddenTargetIds = this.hiddenTargetIds.filter(function (b) { return a.indexOf(b) < 0 }) }, i.addHiddenLegendIds = function (a) { this.hiddenLegendIds = this.hiddenLegendIds.concat(a) }, i.removeHiddenLegendIds = function (a) { this.hiddenLegendIds = this.hiddenLegendIds.filter(function (b) { return a.indexOf(b) < 0 }) }, i.getValuesAsIdKeyed = function (a) { var b = {}; return a.forEach(function (a) { b[a.id] = [], a.values.forEach(function (c) { b[a.id].push(c.value) }) }), b }, i.checkValueInTargets = function (a, b) { var c, d, e, f = Object.keys(a); for (c = 0; c < f.length; c++) for (e = a[f[c]].values, d = 0; d < e.length; d++) if (b(e[d].value)) return !0; return !1 }, i.hasNegativeValueInTargets = function (a) { return this.checkValueInTargets(a, function (a) { return 0 > a }) }, i.hasPositiveValueInTargets = function (a) { return this.checkValueInTargets(a, function (a) { return a > 0 }) }, i.isOrderDesc = function () { var a = this.config; return \"string\" == typeof a.data_order && \"desc\" === a.data_order.toLowerCase() }, i.isOrderAsc = function () { var a = this.config; return \"string\" == typeof a.data_order && \"asc\" === a.data_order.toLowerCase() }, i.orderTargets = function (a) { var b = this, c = b.config, d = b.isOrderAsc(), e = b.isOrderDesc(); return d || e ? a.sort(function (a, b) { var c = function (a, b) { return a + Math.abs(b.value) }, e = a.values.reduce(c, 0), f = b.values.reduce(c, 0); return d ? f - e : e - f }) : n(c.data_order) && a.sort(c.data_order), a }, i.filterByX = function (a, b) { return this.d3.merge(a.map(function (a) { return a.values })).filter(function (a) { return a.x - b === 0 }) }, i.filterRemoveNull = function (a) { return a.filter(function (a) { return m(a.value) }) }, i.filterByXDomain = function (a, b) { return a.map(function (a) { return { id: a.id, id_org: a.id_org, values: a.values.filter(function (a) { return b[0] <= a.x && a.x <= b[1] }) } }) }, i.hasDataLabel = function () { var a = this.config; return \"boolean\" == typeof a.data_labels && a.data_labels ? !0 : \"object\" == typeof a.data_labels && v(a.data_labels) ? !0 : !1 }, i.getDataLabelLength = function (a, b, c) { var d = this, e = [0, 0], f = 1.3; return d.selectChart.select(\"svg\").selectAll(\".dummy\").data([a, b]).enter().append(\"text\").text(function (a) { return d.dataLabelFormat(a.id)(a) }).each(function (a, b) { e[b] = this.getBoundingClientRect()[c] * f }).remove(), e }, i.isNoneArc = function (a) { return this.hasTarget(this.data.targets, a.id) }, i.isArc = function (a) { return \"data\" in a && this.hasTarget(this.data.targets, a.data.id) }, i.findSameXOfValues = function (a, b) { var c, d = a[b].x, e = []; for (c = b - 1; c >= 0 && d === a[c].x; c--) e.push(a[c]); for (c = b; c < a.length && d === a[c].x; c++) e.push(a[c]); return e }, i.findClosestFromTargets = function (a, b) { var c, d = this; return c = a.map(function (a) { return d.findClosest(a.values, b) }), d.findClosest(c, b) }, i.findClosest = function (a, b) { var c, d = this, e = 100; return a.filter(function (a) { return a && d.isBarType(a.id) }).forEach(function (a) { var b = d.main.select(\".\" + l.bars + d.getTargetSelectorSuffix(a.id) + \" .\" + l.bar + \"-\" + a.index).node(); !c && d.isWithinBar(b) && (c = a) }), a.filter(function (a) { return a && !d.isBarType(a.id) }).forEach(function (a) { var f = d.dist(a, b); e > f && (e = f, c = a) }), c }, i.dist = function (a, b) { var c = this, d = c.config, e = d.axis_rotated ? 1 : 0, f = d.axis_rotated ? 0 : 1, g = c.circleY(a, a.index), h = c.x(a.x); return Math.pow(h - b[e], 2) + Math.pow(g - b[f], 2) }, i.convertValuesToStep = function (a) { var b, c = [].concat(a); if (!this.isCategorized()) return a; for (b = a.length + 1; b > 0; b--) c[b] = c[b - 1]; return c[0] = { x: c[0].x - 1, value: c[0].value, id: c[0].id }, c[a.length + 1] = { x: c[a.length].x + 1, value: c[a.length].value, id: c[a.length].id }, c }, i.updateDataAttributes = function (a, b) { var c = this, d = c.config, e = d[\"data_\" + a]; return \"undefined\" == typeof b ? e : (Object.keys(b).forEach(function (a) { e[a] = b[a] }), c.redraw({ withLegend: !0 }), e) }, i.convertUrlToData = function (a, b, c, d) { var e = this, f = b ? b : \"csv\"; e.d3.xhr(a, function (a, b) { var g; if (!b) throw new Error(a.responseURL + \" \" + a.status + \" (\" + a.statusText + \")\"); g = \"json\" === f ? e.convertJsonToData(JSON.parse(b.response), c) : \"tsv\" === f ? e.convertTsvToData(b.response) : e.convertCsvToData(b.response), d.call(e, g) }) }, i.convertXsvToData = function (a, b) { var c, d = b.parseRows(a); return 1 === d.length ? (c = [{}], d[0].forEach(function (a) { c[0][a] = null })) : c = b.parse(a), c }, i.convertCsvToData = function (a) { return this.convertXsvToData(a, this.d3.csv) }, i.convertTsvToData = function (a) { return this.convertXsvToData(a, this.d3.tsv) }, i.convertJsonToData = function (a, b) { var c, d, e = this, f = []; return b ? (b.x ? (c = b.value.concat(b.x), e.config.data_x = b.x) : c = b.value, f.push(c), a.forEach(function (a) { var b = []; c.forEach(function (c) { var d = p(a[c]) ? null : a[c]; b.push(d) }), f.push(b) }), d = e.convertRowsToData(f)) : (Object.keys(a).forEach(function (b) { f.push([b].concat(a[b])) }), d = e.convertColumnsToData(f)), d }, i.convertRowsToData = function (a) { var b, c, d = a[0], e = {}, f = []; for (b = 1; b < a.length; b++) { for (e = {}, c = 0; c < a[b].length; c++) { if (p(a[b][c])) throw new Error(\"Source data is missing a component at (\" + b + \",\" + c + \")!\"); e[d[c]] = a[b][c] } f.push(e) } return f }, i.convertColumnsToData = function (a) { var b, c, d, e = []; for (b = 0; b < a.length; b++) for (d = a[b][0], c = 1; c < a[b].length; c++) { if (p(e[c - 1]) && (e[c - 1] = {}), p(a[b][c])) throw new Error(\"Source data is missing a component at (\" + b + \",\" + c + \")!\"); e[c - 1][d] = a[b][c] } return e }, i.convertDataToTargets = function (a, b) { var c, d = this, e = d.config, f = d.d3.keys(a[0]).filter(d.isNotX, d), g = d.d3.keys(a[0]).filter(d.isX, d); return f.forEach(function (c) { var f = d.getXKey(c); d.isCustomX() || d.isTimeSeries() ? g.indexOf(f) >= 0 ? d.data.xs[c] = (b && d.data.xs[c] ? d.data.xs[c] : []).concat(a.map(function (a) { return a[f] }).filter(m).map(function (a, b) { return d.generateTargetX(a, c, b) })) : e.data_x ? d.data.xs[c] = d.getOtherTargetXs() : v(e.data_xs) && (d.data.xs[c] = d.getXValuesOfXKey(f, d.data.targets)) : d.data.xs[c] = a.map(function (a, b) { return b }) }), f.forEach(function (a) { if (!d.data.xs[a]) throw new Error('x is not defined for id = \"' + a + '\".') }), c = f.map(function (b, c) { var f = e.data_idConverter(b); return { id: f, id_org: b, values: a.map(function (a, g) { var h = d.getXKey(b), i = a[h], j = d.generateTargetX(i, b, g); return d.isCustomX() && d.isCategorized() && 0 === c && i && (0 === g && (e.axis_x_categories = []), e.axis_x_categories.push(i)), (p(a[b]) || d.data.xs[b].length <= g) && (j = void 0), { x: j, value: null === a[b] || isNaN(a[b]) ? null : +a[b], id: f } }).filter(function (a) { return q(a.x) }) } }), c.forEach(function (a) { var b; e.data_xSort && (a.values = a.values.sort(function (a, b) { var c = a.x || 0 === a.x ? a.x : 1 / 0, d = b.x || 0 === b.x ? b.x : 1 / 0; return c - d })), b = 0, a.values.forEach(function (a) { a.index = b++ }), d.data.xs[a.id].sort(function (a, b) { return a - b }) }), e.data_type && d.setTargetType(d.mapToIds(c).filter(function (a) { return !(a in e.data_types) }), e.data_type), c.forEach(function (a) { d.addCache(a.id_org, a) }), c }, i.load = function (a, b) { var c = this; a && (b.filter && (a = a.filter(b.filter)), (b.type || b.types) && a.forEach(function (a) { var d = b.types && b.types[a.id] ? b.types[a.id] : b.type; c.setTargetType(a.id, d) }), c.data.targets.forEach(function (b) { for (var c = 0; c < a.length; c++) if (b.id === a[c].id) { b.values = a[c].values, a.splice(c, 1); break } }), c.data.targets = c.data.targets.concat(a)), c.updateTargets(c.data.targets), c.redraw({ withUpdateOrgXDomain: !0, withUpdateXDomain: !0, withLegend: !0 }), b.done && b.done() }, i.loadFromArgs = function (a) { var b = this; a.data ? b.load(b.convertDataToTargets(a.data), a) : a.url ? b.convertUrlToData(a.url, a.mimeType, a.keys, function (c) { b.load(b.convertDataToTargets(c), a) }) : a.json ? b.load(b.convertDataToTargets(b.convertJsonToData(a.json, a.keys)), a) : a.rows ? b.load(b.convertDataToTargets(b.convertRowsToData(a.rows)), a) : a.columns ? b.load(b.convertDataToTargets(b.convertColumnsToData(a.columns)), a) : b.load(null, a) }, i.unload = function (a, b) { var c = this; return b || (b = function () { }), a = a.filter(function (a) { return c.hasTarget(c.data.targets, a) }), a && 0 !== a.length ? (c.svg.selectAll(a.map(function (a) { return c.selectorTarget(a) })).transition().style(\"opacity\", 0).remove().call(c.endall, b), void a.forEach(function (a) { c.withoutFadeIn[a] = !1, c.legend && c.legend.selectAll(\".\" + l.legendItem + c.getTargetSelectorSuffix(a)).remove(), c.data.targets = c.data.targets.filter(function (b) { return b.id !== a }) })) : void b() }, i.categoryName = function (a) { var b = this.config; return a < b.axis_x_categories.length ? b.axis_x_categories[a] : a }, i.initEventRect = function () { var a = this; a.main.select(\".\" + l.chart).append(\"g\").attr(\"class\", l.eventRects).style(\"fill-opacity\", 0) }, i.redrawEventRect = function () { var a, b, c = this, d = c.config, e = c.isMultipleX(), f = c.main.select(\".\" + l.eventRects).style(\"cursor\", d.zoom_enabled ? d.axis_rotated ? \"ns-resize\" : \"ew-resize\" : null).classed(l.eventRectsMultiple, e).classed(l.eventRectsSingle, !e); f.selectAll(\".\" + l.eventRect).remove(), c.eventRect = f.selectAll(\".\" + l.eventRect), e ? (a = c.eventRect.data([0]), c.generateEventRectsForMultipleXs(a.enter()), c.updateEventRect(a)) : (b = c.getMaxDataCountTarget(c.data.targets), f.datum(b ? b.values : []), c.eventRect = f.selectAll(\".\" + l.eventRect), a = c.eventRect.data(function (a) { return a }), c.generateEventRectsForSingleX(a.enter()), c.updateEventRect(a), a.exit().remove()) }, i.updateEventRect = function (a) { var b, c, d, e, f, g, h = this, i = h.config; a = a || h.eventRect.data(function (a) { return a }), h.isMultipleX() ? (b = 0, c = 0, d = h.width, e = h.height) : (!h.isCustomX() && !h.isTimeSeries() || h.isCategorized() ? (f = h.getEventRectWidth(), g = function (a) { return h.x(a.x) - f / 2 }) : (h.updateXs(), f = function (a) { var b = h.getPrevX(a.index), c = h.getNextX(a.index); return null === b && null === c ? i.axis_rotated ? h.height : h.width : (null === b && (b = h.x.domain()[0]), null === c && (c = h.x.domain()[1]), Math.max(0, (h.x(c) - h.x(b)) / 2)) }, g = function (a) { var b = h.getPrevX(a.index), c = h.getNextX(a.index), d = h.data.xs[a.id][a.index]; return null === b && null === c ? 0 : (null === b && (b = h.x.domain()[0]), (h.x(d) + h.x(b)) / 2) }), b = i.axis_rotated ? 0 : g, c = i.axis_rotated ? g : 0, d = i.axis_rotated ? h.width : f, e = i.axis_rotated ? f : h.height), a.attr(\"class\", h.classEvent.bind(h)).attr(\"x\", b).attr(\"y\", c).attr(\"width\", d).attr(\"height\", e) }, i.generateEventRectsForSingleX = function (a) { var b = this, c = b.d3, d = b.config; a.append(\"rect\").attr(\"class\", b.classEvent.bind(b)).style(\"cursor\", d.data_selection_enabled && d.data_selection_grouped ? \"pointer\" : null).on(\"mouseover\", function (a) { var c = a.index; b.dragging || b.flowing || b.hasArcType() || (d.point_focus_expand_enabled && b.expandCircles(c, null, !0), b.expandBars(c, null, !0), b.main.selectAll(\".\" + l.shape + \"-\" + c).each(function (a) { d.data_onmouseover.call(b.api, a) })) }).on(\"mouseout\", function (a) { var c = a.index; b.config && (b.hasArcType() || (b.hideXGridFocus(), b.hideTooltip(), b.unexpandCircles(), b.unexpandBars(), b.main.selectAll(\".\" + l.shape + \"-\" + c).each(function (a) { d.data_onmouseout.call(b.api, a) }))) }).on(\"mousemove\", function (a) { var e, f = a.index, g = b.svg.select(\".\" + l.eventRect + \"-\" + f); b.dragging || b.flowing || b.hasArcType() || (b.isStepType(a) && \"step-after\" === b.config.line_step_type && c.mouse(this)[0] < b.x(b.getXValue(a.id, f)) && (f -= 1), e = b.filterTargetsToShow(b.data.targets).map(function (a) { return b.addName(b.getValueOnIndex(a.values, f)) }), d.tooltip_grouped && (b.showTooltip(e, this), b.showXGridFocus(e)), (!d.tooltip_grouped || d.data_selection_enabled && !d.data_selection_grouped) && b.main.selectAll(\".\" + l.shape + \"-\" + f).each(function () { c.select(this).classed(l.EXPANDED, !0), d.data_selection_enabled && g.style(\"cursor\", d.data_selection_grouped ? \"pointer\" : null), d.tooltip_grouped || (b.hideXGridFocus(), b.hideTooltip(), d.data_selection_grouped || (b.unexpandCircles(f), b.unexpandBars(f))) }).filter(function (a) { return b.isWithinShape(this, a) }).each(function (a) { d.data_selection_enabled && (d.data_selection_grouped || d.data_selection_isselectable(a)) && g.style(\"cursor\", \"pointer\"), d.tooltip_grouped || (b.showTooltip([a], this), b.showXGridFocus([a]), d.point_focus_expand_enabled && b.expandCircles(f, a.id, !0), b.expandBars(f, a.id, !0)) })) }).on(\"click\", function (a) { var e = a.index; if (!b.hasArcType() && b.toggleShape) { if (b.cancelClick) return void (b.cancelClick = !1); b.isStepType(a) && \"step-after\" === d.line_step_type && c.mouse(this)[0] < b.x(b.getXValue(a.id, e)) && (e -= 1), b.main.selectAll(\".\" + l.shape + \"-\" + e).each(function (a) { (d.data_selection_grouped || b.isWithinShape(this, a)) && (b.toggleShape(this, a, e), b.config.data_onclick.call(b.api, a, this)) }) } }).call(d.data_selection_draggable && b.drag ? c.behavior.drag().origin(Object).on(\"drag\", function () { b.drag(c.mouse(this)) }).on(\"dragstart\", function () { b.dragstart(c.mouse(this)) }).on(\"dragend\", function () { b.dragend() }) : function () { }) }, i.generateEventRectsForMultipleXs = function (a) { function b() { c.svg.select(\".\" + l.eventRect).style(\"cursor\", null), c.hideXGridFocus(), c.hideTooltip(), c.unexpandCircles(), c.unexpandBars() } var c = this, d = c.d3, e = c.config; a.append(\"rect\").attr(\"x\", 0).attr(\"y\", 0).attr(\"width\", c.width).attr(\"height\", c.height).attr(\"class\", l.eventRect).on(\"mouseout\", function () { c.config && (c.hasArcType() || b()) }).on(\"mousemove\", function () { var a, f, g, h, i = c.filterTargetsToShow(c.data.targets); if (!c.dragging && !c.hasArcType(i)) { if (a = d.mouse(this), f = c.findClosestFromTargets(i, a), !c.mouseover || f && f.id === c.mouseover.id || (e.data_onmouseout.call(c.api, c.mouseover), c.mouseover = void 0), !f) return void b(); g = c.isScatterType(f) || !e.tooltip_grouped ? [f] : c.filterByX(i, f.x), h = g.map(function (a) { return c.addName(a) }), c.showTooltip(h, this), e.point_focus_expand_enabled && c.expandCircles(f.index, f.id, !0), c.expandBars(f.index, f.id, !0), c.showXGridFocus(h), (c.isBarType(f.id) || c.dist(f, a) < 100) && (c.svg.select(\".\" + l.eventRect).style(\"cursor\", \"pointer\"), c.mouseover || (e.data_onmouseover.call(c.api, f), c.mouseover = f)) } }).on(\"click\", function () { var a, b, f = c.filterTargetsToShow(c.data.targets); c.hasArcType(f) || (a = d.mouse(this), b = c.findClosestFromTargets(f, a), b && (c.isBarType(b.id) || c.dist(b, a) < 100) && c.main.selectAll(\".\" + l.shapes + c.getTargetSelectorSuffix(b.id)).selectAll(\".\" + l.shape + \"-\" + b.index).each(function () { (e.data_selection_grouped || c.isWithinShape(this, b)) && (c.toggleShape(this, b, b.index), c.config.data_onclick.call(c.api, b, this)) })) }).call(e.data_selection_draggable && c.drag ? d.behavior.drag().origin(Object).on(\"drag\", function () { c.drag(d.mouse(this)) }).on(\"dragstart\", function () { c.dragstart(d.mouse(this)) }).on(\"dragend\", function () { c.dragend() }) : function () { }) }, i.dispatchEvent = function (b, c, d) { var e = this, f = \".\" + l.eventRect + (e.isMultipleX() ? \"\" : \"-\" + c), g = e.main.select(f).node(), h = g.getBoundingClientRect(), i = h.left + (d ? d[0] : 0), j = h.top + (d ? d[1] : 0), k = document.createEvent(\"MouseEvents\"); k.initMouseEvent(b, !0, !0, a, 0, i, j, i, j, !1, !1, !1, !1, 0, null), g.dispatchEvent(k) }, i.getCurrentWidth = function () { var a = this, b = a.config; return b.size_width ? b.size_width : a.getParentWidth() }, i.getCurrentHeight = function () { var a = this, b = a.config, c = b.size_height ? b.size_height : a.getParentHeight(); return c > 0 ? c : 320 / (a.hasType(\"gauge\") ? 2 : 1) }, i.getCurrentPaddingTop = function () { var a = this.config; return m(a.padding_top) ? a.padding_top : 0 }, i.getCurrentPaddingBottom = function () { var a = this.config; return m(a.padding_bottom) ? a.padding_bottom : 0 }, i.getCurrentPaddingLeft = function (a) { var b = this, c = b.config; return m(c.padding_left) ? c.padding_left : c.axis_rotated ? c.axis_x_show ? Math.max(r(b.getAxisWidthByAxisId(\"x\", a)), 40) : 1 : !c.axis_y_show || c.axis_y_inner ? b.axis.getYAxisLabelPosition().isOuter ? 30 : 1 : r(b.getAxisWidthByAxisId(\"y\", a)) }, i.getCurrentPaddingRight = function () { var a = this, b = a.config, c = 10, d = a.isLegendRight ? a.getLegendWidth() + 20 : 0; return m(b.padding_right) ? b.padding_right + 1 : b.axis_rotated ? c + d : !b.axis_y2_show || b.axis_y2_inner ? 2 + d + (a.axis.getY2AxisLabelPosition().isOuter ? 20 : 0) : r(a.getAxisWidthByAxisId(\"y2\")) + d }, i.getParentRectValue = function (a) { for (var b, c = this.selectChart.node() ; c && \"BODY\" !== c.tagName;) { try { b = c.getBoundingClientRect()[a] } catch (d) { \"width\" === a && (b = c.offsetWidth) } if (b) break; c = c.parentNode } return b }, i.getParentWidth = function () { return this.getParentRectValue(\"width\") }, i.getParentHeight = function () { var a = this.selectChart.style(\"height\"); return a.indexOf(\"px\") > 0 ? +a.replace(\"px\", \"\") : 0 }, i.getSvgLeft = function (a) { var b = this, c = b.config, d = c.axis_rotated || !c.axis_rotated && !c.axis_y_inner, e = c.axis_rotated ? l.axisX : l.axisY, f = b.main.select(\".\" + e).node(), g = f && d ? f.getBoundingClientRect() : { right: 0 }, h = b.selectChart.node().getBoundingClientRect(), i = b.hasArcType(), j = g.right - h.left - (i ? 0 : b.getCurrentPaddingLeft(a)); return j > 0 ? j : 0 }, i.getAxisWidthByAxisId = function (a, b) { var c = this, d = c.axis.getLabelPositionById(a); return c.axis.getMaxTickWidth(a, b) + (d.isInner ? 20 : 40) }, i.getHorizontalAxisHeight = function (a) { var b = this, c = b.config, d = 30; return \"x\" !== a || c.axis_x_show ? \"x\" === a && c.axis_x_height ? c.axis_x_height : \"y\" !== a || c.axis_y_show ? \"y2\" !== a || c.axis_y2_show ? (\"x\" === a && !c.axis_rotated && c.axis_x_tick_rotate && (d = 30 + b.axis.getMaxTickWidth(a) * Math.cos(Math.PI * (90 - c.axis_x_tick_rotate) / 180)), d + (b.axis.getLabelPositionById(a).isInner ? 0 : 10) + (\"y2\" === a ? -10 : 0)) : b.rotated_padding_top : !c.legend_show || b.isLegendRight || b.isLegendInset ? 1 : 10 : 8 }, i.getEventRectWidth = function () { return Math.max(0, this.xAxis.tickInterval()) }, i.getShapeIndices = function (a) { var b, c, d = this, e = d.config, f = {}, g = 0; return d.filterTargetsToShow(d.data.targets.filter(a, d)).forEach(function (a) { for (b = 0; b < e.data_groups.length; b++) if (!(e.data_groups[b].indexOf(a.id) < 0)) for (c = 0; c < e.data_groups[b].length; c++) if (e.data_groups[b][c] in f) { f[a.id] = f[e.data_groups[b][c]]; break } p(f[a.id]) && (f[a.id] = g++) }), f.__max__ = g - 1, f }, i.getShapeX = function (a, b, c, d) { var e = this, f = d ? e.subX : e.x; return function (d) { var e = d.id in c ? c[d.id] : 0; return d.x || 0 === d.x ? f(d.x) - a * (b / 2 - e) : 0 } }, i.getShapeY = function (a) { var b = this; return function (c) { var d = a ? b.getSubYScale(c.id) : b.getYScale(c.id); return d(c.value) } }, i.getShapeOffset = function (a, b, c) { var d = this, e = d.orderTargets(d.filterTargetsToShow(d.data.targets.filter(a, d))), f = e.map(function (a) { return a.id }); return function (a, g) { var h = c ? d.getSubYScale(a.id) : d.getYScale(a.id), i = h(0), j = i; return e.forEach(function (c) { var e = d.isStepType(a) ? d.convertValuesToStep(c.values) : c.values; c.id !== a.id && b[c.id] === b[a.id] && f.indexOf(c.id) < f.indexOf(a.id) && e[g].value * a.value >= 0 && (j += h(e[g].value) - i) }), j } }, i.isWithinShape = function (a, b) { var c, d = this, e = d.d3.select(a); return d.isTargetToShow(b.id) ? \"circle\" === a.nodeName ? c = d.isStepType(b) ? d.isWithinStep(a, d.getYScale(b.id)(b.value)) : d.isWithinCircle(a, 1.5 * d.pointSelectR(b)) : \"path\" === a.nodeName && (c = e.classed(l.bar) ? d.isWithinBar(a) : !0) : c = !1, c }, i.getInterpolate = function (a) { var b = this; return b.isSplineType(a) ? \"cardinal\" : b.isStepType(a) ? b.config.line_step_type : \"linear\" }, i.initLine = function () { var a = this; a.main.select(\".\" + l.chart).append(\"g\").attr(\"class\", l.chartLines) }, i.updateTargetsForLine = function (a) { var b, c, d = this, e = d.config, f = d.classChartLine.bind(d), g = d.classLines.bind(d), h = d.classAreas.bind(d), i = d.classCircles.bind(d), j = d.classFocus.bind(d); b = d.main.select(\".\" + l.chartLines).selectAll(\".\" + l.chartLine).data(a).attr(\"class\", function (a) { return f(a) + j(a) }), c = b.enter().append(\"g\").attr(\"class\", f).style(\"opacity\", 0).style(\"pointer-events\", \"none\"), c.append(\"g\").attr(\"class\", g), c.append(\"g\").attr(\"class\", h), c.append(\"g\").attr(\"class\", function (a) { return d.generateClass(l.selectedCircles, a.id) }), c.append(\"g\").attr(\"class\", i).style(\"cursor\", function (a) { return e.data_selection_isselectable(a) ? \"pointer\" : null }), a.forEach(function (a) { d.main.selectAll(\".\" + l.selectedCircles + d.getTargetSelectorSuffix(a.id)).selectAll(\".\" + l.selectedCircle).each(function (b) { b.value = a.values[b.index].value }) }) }, i.updateLine = function (a) { var b = this; b.mainLine = b.main.selectAll(\".\" + l.lines).selectAll(\".\" + l.line).data(b.lineData.bind(b)), b.mainLine.enter().append(\"path\").attr(\"class\", b.classLine.bind(b)).style(\"stroke\", b.color), b.mainLine.style(\"opacity\", b.initialOpacity.bind(b)).style(\"shape-rendering\", function (a) { return b.isStepType(a) ? \"crispEdges\" : \"\" }).attr(\"transform\", null), b.mainLine.exit().transition().duration(a).style(\"opacity\", 0).remove() }, i.redrawLine = function (a, b) { return [(b ? this.mainLine.transition() : this.mainLine).attr(\"d\", a).style(\"stroke\", this.color).style(\"opacity\", 1)] }, i.generateDrawLine = function (a, b) { var c = this, d = c.config, e = c.d3.svg.line(), f = c.generateGetLinePoints(a, b), g = b ? c.getSubYScale : c.getYScale, h = function (a) { return (b ? c.subxx : c.xx).call(c, a) }, i = function (a, b) { return d.data_groups.length > 0 ? f(a, b)[0][1] : g.call(c, a.id)(a.value) }; return e = d.axis_rotated ? e.x(i).y(h) : e.x(h).y(i), d.line_connectNull || (e = e.defined(function (a) { return null != a.value })), function (a) { var f, h = d.line_connectNull ? c.filterRemoveNull(a.values) : a.values, i = b ? c.x : c.subX, j = g.call(c, a.id), k = 0, l = 0; return c.isLineType(a) ? d.data_regions[a.id] ? f = c.lineWithRegions(h, i, j, d.data_regions[a.id]) : (c.isStepType(a) && (h = c.convertValuesToStep(h)), f = e.interpolate(c.getInterpolate(a))(h)) : (h[0] && (k = i(h[0].x), l = j(h[0].value)), f = d.axis_rotated ? \"M \" + l + \" \" + k : \"M \" + k + \" \" + l), f ? f : \"M 0 0\" } }, i.generateGetLinePoints = function (a, b) { var c = this, d = c.config, e = a.__max__ + 1, f = c.getShapeX(0, e, a, !!b), g = c.getShapeY(!!b), h = c.getShapeOffset(c.isLineType, a, !!b), i = b ? c.getSubYScale : c.getYScale; return function (a, b) { var e = i.call(c, a.id)(0), j = h(a, b) || e, k = f(a), l = g(a); return d.axis_rotated && (0 < a.value && e > l || a.value < 0 && l > e) && (l = e), [[k, l - (e - j)], [k, l - (e - j)], [k, l - (e - j)], [k, l - (e - j)]] } }, i.lineWithRegions = function (a, b, c, d) { function e(a, b) { var c; for (c = 0; c < b.length; c++) if (b[c].start < a && a <= b[c].end) return !0; return !1 } function f(a) { return \"M\" + a[0][0] + \" \" + a[0][1] + \" \" + a[1][0] + \" \" + a[1][1] } var g, h, i, j, k, l, m, n, o, r, s, t, u = this, v = u.config, w = -1, x = \"M\", y = u.isCategorized() ? .5 : 0, z = []; if (q(d)) for (g = 0; g < d.length; g++) z[g] = {}, z[g].start = p(d[g].start) ? a[0].x : u.isTimeSeries() ? u.parseDate(d[g].start) : d[g].start, z[g].end = p(d[g].end) ? a[a.length - 1].x : u.isTimeSeries() ? u.parseDate(d[g].end) : d[g].end; for (s = v.axis_rotated ? function (a) { return c(a.value) } : function (a) { return b(a.x) }, t = v.axis_rotated ? function (a) { return b(a.x) } : function (a) { return c(a.value) }, i = u.isTimeSeries() ? function (a, d, e, g) { var h, i = a.x.getTime(), j = d.x - a.x, l = new Date(i + j * e), m = new Date(i + j * (e + g)); return h = v.axis_rotated ? [[c(k(e)), b(l)], [c(k(e + g)), b(m)]] : [[b(l), c(k(e))], [b(m), c(k(e + g))]], f(h) } : function (a, d, e, g) { var h; return h = v.axis_rotated ? [[c(k(e), !0), b(j(e))], [c(k(e + g), !0), b(j(e + g))]] : [[b(j(e), !0), c(k(e))], [b(j(e + g), !0), c(k(e + g))]], f(h) }, g = 0; g < a.length; g++) { if (p(z) || !e(a[g].x, z)) x += \" \" + s(a[g]) + \" \" + t(a[g]); else for (j = u.getScale(a[g - 1].x + y, a[g].x + y, u.isTimeSeries()), k = u.getScale(a[g - 1].value, a[g].value), l = b(a[g].x) - b(a[g - 1].x), m = c(a[g].value) - c(a[g - 1].value), n = Math.sqrt(Math.pow(l, 2) + Math.pow(m, 2)), o = 2 / n, r = 2 * o, h = o; 1 >= h; h += r) x += i(a[g - 1], a[g], h, o); w = a[g].x } return x }, i.updateArea = function (a) { var b = this, c = b.d3; b.mainArea = b.main.selectAll(\".\" + l.areas).selectAll(\".\" + l.area).data(b.lineData.bind(b)), b.mainArea.enter().append(\"path\").attr(\"class\", b.classArea.bind(b)).style(\"fill\", b.color).style(\"opacity\", function () { return b.orgAreaOpacity = +c.select(this).style(\"opacity\"), 0 }), b.mainArea.style(\"opacity\", b.orgAreaOpacity), b.mainArea.exit().transition().duration(a).style(\"opacity\", 0).remove() }, i.redrawArea = function (a, b) { return [(b ? this.mainArea.transition() : this.mainArea).attr(\"d\", a).style(\"fill\", this.color).style(\"opacity\", this.orgAreaOpacity)] }, i.generateDrawArea = function (a, b) { var c = this, d = c.config, e = c.d3.svg.area(), f = c.generateGetAreaPoints(a, b), g = b ? c.getSubYScale : c.getYScale, h = function (a) { return (b ? c.subxx : c.xx).call(c, a) }, i = function (a, b) { return d.data_groups.length > 0 ? f(a, b)[0][1] : g.call(c, a.id)(c.getAreaBaseValue(a.id)) }, j = function (a, b) { return d.data_groups.length > 0 ? f(a, b)[1][1] : g.call(c, a.id)(a.value) }; return e = d.axis_rotated ? e.x0(i).x1(j).y(h) : e.x(h).y0(i).y1(j), d.line_connectNull || (e = e.defined(function (a) { return null !== a.value })), function (a) { var b, f = d.line_connectNull ? c.filterRemoveNull(a.values) : a.values, g = 0, h = 0; return c.isAreaType(a) ? (c.isStepType(a) && (f = c.convertValuesToStep(f)), b = e.interpolate(c.getInterpolate(a))(f)) : (f[0] && (g = c.x(f[0].x), h = c.getYScale(a.id)(f[0].value)), b = d.axis_rotated ? \"M \" + h + \" \" + g : \"M \" + g + \" \" + h), b ? b : \"M 0 0\" } }, i.getAreaBaseValue = function () { return 0 }, i.generateGetAreaPoints = function (a, b) { var c = this, d = c.config, e = a.__max__ + 1, f = c.getShapeX(0, e, a, !!b), g = c.getShapeY(!!b), h = c.getShapeOffset(c.isAreaType, a, !!b), i = b ? c.getSubYScale : c.getYScale; return function (a, b) { var e = i.call(c, a.id)(0), j = h(a, b) || e, k = f(a), l = g(a); return d.axis_rotated && (0 < a.value && e > l || a.value < 0 && l > e) && (l = e), [[k, j], [k, l - (e - j)], [k, l - (e - j)], [k, j]] } }, i.updateCircle = function () { var a = this; a.mainCircle = a.main.selectAll(\".\" + l.circles).selectAll(\".\" + l.circle).data(a.lineOrScatterData.bind(a)), a.mainCircle.enter().append(\"circle\").attr(\"class\", a.classCircle.bind(a)).attr(\"r\", a.pointR.bind(a)).style(\"fill\", a.color), a.mainCircle.style(\"opacity\", a.initialOpacityForCircle.bind(a)), a.mainCircle.exit().remove() }, i.redrawCircle = function (a, b, c) { var d = this.main.selectAll(\".\" + l.selectedCircle); return [(c ? this.mainCircle.transition() : this.mainCircle).style(\"opacity\", this.opacityForCircle.bind(this)).style(\"fill\", this.color).attr(\"cx\", a).attr(\"cy\", b), (c ? d.transition() : d).attr(\"cx\", a).attr(\"cy\", b)] }, i.circleX = function (a) { return a.x || 0 === a.x ? this.x(a.x) : null }, i.updateCircleY = function () { var a, b, c = this; c.config.data_groups.length > 0 ? (a = c.getShapeIndices(c.isLineType), b = c.generateGetLinePoints(a), c.circleY = function (a, c) { return b(a, c)[0][1] }) : c.circleY = function (a) { return c.getYScale(a.id)(a.value) } }, i.getCircles = function (a, b) { var c = this; return (b ? c.main.selectAll(\".\" + l.circles + c.getTargetSelectorSuffix(b)) : c.main).selectAll(\".\" + l.circle + (m(a) ? \"-\" + a : \"\")) }, i.expandCircles = function (a, b, c) { var d = this, e = d.pointExpandedR.bind(d); c && d.unexpandCircles(), d.getCircles(a, b).classed(l.EXPANDED, !0).attr(\"r\", e) }, i.unexpandCircles = function (a) { var b = this, c = b.pointR.bind(b); b.getCircles(a).filter(function () { return b.d3.select(this).classed(l.EXPANDED) }).classed(l.EXPANDED, !1).attr(\"r\", c) }, i.pointR = function (a) { var b = this, c = b.config; return b.isStepType(a) ? 0 : n(c.point_r) ? c.point_r(a) : c.point_r }, i.pointExpandedR = function (a) { var b = this, c = b.config; return c.point_focus_expand_enabled ? c.point_focus_expand_r ? c.point_focus_expand_r : 1.75 * b.pointR(a) : b.pointR(a) }, i.pointSelectR = function (a) { var b = this, c = b.config; return c.point_select_r ? c.point_select_r : 4 * b.pointR(a) }, i.isWithinCircle = function (a, b) { var c = this.d3, d = c.mouse(a), e = c.select(a), f = +e.attr(\"cx\"), g = +e.attr(\"cy\"); return Math.sqrt(Math.pow(f - d[0], 2) + Math.pow(g - d[1], 2)) < b }, i.isWithinStep = function (a, b) { return Math.abs(b - this.d3.mouse(a)[1]) < 30 }, i.initBar = function () { var a = this; a.main.select(\".\" + l.chart).append(\"g\").attr(\"class\", l.chartBars) }, i.updateTargetsForBar = function (a) { var b, c, d = this, e = d.config, f = d.classChartBar.bind(d), g = d.classBars.bind(d), h = d.classFocus.bind(d); b = d.main.select(\".\" + l.chartBars).selectAll(\".\" + l.chartBar).data(a).attr(\"class\", function (a) { return f(a) + h(a) }), c = b.enter().append(\"g\").attr(\"class\", f).style(\"opacity\", 0).style(\"pointer-events\", \"none\"), c.append(\"g\").attr(\"class\", g).style(\"cursor\", function (a) { return e.data_selection_isselectable(a) ? \"pointer\" : null }) }, i.updateBar = function (a) { var b = this, c = b.barData.bind(b), d = b.classBar.bind(b), e = b.initialOpacity.bind(b), f = function (a) { return b.color(a.id) }; b.mainBar = b.main.selectAll(\".\" + l.bars).selectAll(\".\" + l.bar).data(c), b.mainBar.enter().append(\"path\").attr(\"class\", d).style(\"stroke\", f).style(\"fill\", f), b.mainBar.style(\"opacity\", e), b.mainBar.exit().transition().duration(a).style(\"opacity\", 0).remove() }, i.redrawBar = function (a, b) { return [(b ? this.mainBar.transition() : this.mainBar).attr(\"d\", a).style(\"fill\", this.color).style(\"opacity\", 1)] }, i.getBarW = function (a, b) { var c = this, d = c.config, e = \"number\" == typeof d.bar_width ? d.bar_width : b ? a.tickInterval() * d.bar_width_ratio / b : 0; return d.bar_width_max && e > d.bar_width_max ? d.bar_width_max : e }, i.getBars = function (a, b) { var c = this; return (b ? c.main.selectAll(\".\" + l.bars + c.getTargetSelectorSuffix(b)) : c.main).selectAll(\".\" + l.bar + (m(a) ? \"-\" + a : \"\")) }, i.expandBars = function (a, b, c) { var d = this; c && d.unexpandBars(), d.getBars(a, b).classed(l.EXPANDED, !0) }, i.unexpandBars = function (a) { var b = this; b.getBars(a).classed(l.EXPANDED, !1) }, i.generateDrawBar = function (a, b) { var c = this, d = c.config, e = c.generateGetBarPoints(a, b); return function (a, b) { var c = e(a, b), f = d.axis_rotated ? 1 : 0, g = d.axis_rotated ? 0 : 1, h = \"M \" + c[0][f] + \",\" + c[0][g] + \" L\" + c[1][f] + \",\" + c[1][g] + \" L\" + c[2][f] + \",\" + c[2][g] + \" L\" + c[3][f] + \",\" + c[3][g] + \" z\"; return h } }, i.generateGetBarPoints = function (a, b) {\r\n var c = this, d = b ? c.subXAxis : c.xAxis, e = a.__max__ + 1, f = c.getBarW(d, e), g = c.getShapeX(f, e, a, !!b), h = c.getShapeY(!!b), i = c.getShapeOffset(c.isBarType, a, !!b), j = b ? c.getSubYScale : c.getYScale;\r\n return function (a, b) { var d = j.call(c, a.id)(0), e = i(a, b) || d, k = g(a), l = h(a); return c.config.axis_rotated && (0 < a.value && d > l || a.value < 0 && l > d) && (l = d), [[k, e], [k, l - (d - e)], [k + f, l - (d - e)], [k + f, e]] }\r\n }, i.isWithinBar = function (a) { var b = this.d3.mouse(a), c = a.getBoundingClientRect(), d = a.pathSegList.getItem(0), e = a.pathSegList.getItem(1), f = Math.min(d.x, e.x), g = Math.min(d.y, e.y), h = c.width, i = c.height, j = 2, k = f - j, l = f + h + j, m = g + i + j, n = g - j; return k < b[0] && b[0] < l && n < b[1] && b[1] < m }, i.initText = function () { var a = this; a.main.select(\".\" + l.chart).append(\"g\").attr(\"class\", l.chartTexts), a.mainText = a.d3.selectAll([]) }, i.updateTargetsForText = function (a) { var b, c, d = this, e = d.classChartText.bind(d), f = d.classTexts.bind(d), g = d.classFocus.bind(d); b = d.main.select(\".\" + l.chartTexts).selectAll(\".\" + l.chartText).data(a).attr(\"class\", function (a) { return e(a) + g(a) }), c = b.enter().append(\"g\").attr(\"class\", e).style(\"opacity\", 0).style(\"pointer-events\", \"none\"), c.append(\"g\").attr(\"class\", f) }, i.updateText = function (a) { var b = this, c = b.config, d = b.barOrLineData.bind(b), e = b.classText.bind(b); b.mainText = b.main.selectAll(\".\" + l.texts).selectAll(\".\" + l.text).data(d), b.mainText.enter().append(\"text\").attr(\"class\", e).attr(\"text-anchor\", function (a) { return c.axis_rotated ? a.value < 0 ? \"end\" : \"start\" : \"middle\" }).style(\"stroke\", \"none\").style(\"fill\", function (a) { return b.color(a) }).style(\"fill-opacity\", 0), b.mainText.text(function (a, c, d) { return b.dataLabelFormat(a.id)(a.value, a.id, c, d) }), b.mainText.exit().transition().duration(a).style(\"fill-opacity\", 0).remove() }, i.redrawText = function (a, b, c, d) { return [(d ? this.mainText.transition() : this.mainText).attr(\"x\", a).attr(\"y\", b).style(\"fill\", this.color).style(\"fill-opacity\", c ? 0 : this.opacityForText.bind(this))] }, i.getTextRect = function (a, b) { var c, d = this.d3.select(\"body\").append(\"div\").classed(\"c3\", !0), e = d.append(\"svg\").style(\"visibility\", \"hidden\").style(\"position\", \"fixed\").style(\"top\", 0).style(\"left\", 0); return e.selectAll(\".dummy\").data([a]).enter().append(\"text\").classed(b ? b : \"\", !0).text(a).each(function () { c = this.getBoundingClientRect() }), d.remove(), c }, i.generateXYForText = function (a, b, c, d) { var e = this, f = e.generateGetAreaPoints(a, !1), g = e.generateGetBarPoints(b, !1), h = e.generateGetLinePoints(c, !1), i = d ? e.getXForText : e.getYForText; return function (a, b) { var c = e.isAreaType(a) ? f : e.isBarType(a) ? g : h; return i.call(e, c(a, b), a, this) } }, i.getXForText = function (a, b, c) { var d, e, f = this, g = c.getBoundingClientRect(); return f.config.axis_rotated ? (e = f.isBarType(b) ? 4 : 6, d = a[2][1] + e * (b.value < 0 ? -1 : 1)) : d = f.hasType(\"bar\") ? (a[2][0] + a[0][0]) / 2 : a[0][0], null === b.value && (d > f.width ? d = f.width - g.width : 0 > d && (d = 4)), d }, i.getYForText = function (a, b, c) { var d, e = this, f = c.getBoundingClientRect(); return e.config.axis_rotated ? d = (a[0][0] + a[2][0] + .6 * f.height) / 2 : (d = a[2][1], b.value < 0 ? (d += f.height, e.isBarType(b) && e.isSafari() ? d -= 3 : !e.isBarType(b) && e.isChrome() && (d += 3)) : d += e.isBarType(b) ? -3 : -6), null !== b.value || e.config.axis_rotated || (d < f.height ? d = f.height : d > this.height && (d = this.height - 4)), d }, i.setTargetType = function (a, b) { var c = this, d = c.config; c.mapToTargetIds(a).forEach(function (a) { c.withoutFadeIn[a] = b === d.data_types[a], d.data_types[a] = b }), a || (d.data_type = b) }, i.hasType = function (a, b) { var c = this, d = c.config.data_types, e = !1; return b = b || c.data.targets, b && b.length ? b.forEach(function (b) { var c = d[b.id]; (c && c.indexOf(a) >= 0 || !c && \"line\" === a) && (e = !0) }) : Object.keys(d).length ? Object.keys(d).forEach(function (b) { d[b] === a && (e = !0) }) : e = c.config.data_type === a, e }, i.hasArcType = function (a) { return this.hasType(\"pie\", a) || this.hasType(\"donut\", a) || this.hasType(\"gauge\", a) }, i.isLineType = function (a) { var b = this.config, c = o(a) ? a : a.id; return !b.data_types[c] || [\"line\", \"spline\", \"area\", \"area-spline\", \"step\", \"area-step\"].indexOf(b.data_types[c]) >= 0 }, i.isStepType = function (a) { var b = o(a) ? a : a.id; return [\"step\", \"area-step\"].indexOf(this.config.data_types[b]) >= 0 }, i.isSplineType = function (a) { var b = o(a) ? a : a.id; return [\"spline\", \"area-spline\"].indexOf(this.config.data_types[b]) >= 0 }, i.isAreaType = function (a) { var b = o(a) ? a : a.id; return [\"area\", \"area-spline\", \"area-step\"].indexOf(this.config.data_types[b]) >= 0 }, i.isBarType = function (a) { var b = o(a) ? a : a.id; return \"bar\" === this.config.data_types[b] }, i.isScatterType = function (a) { var b = o(a) ? a : a.id; return \"scatter\" === this.config.data_types[b] }, i.isPieType = function (a) { var b = o(a) ? a : a.id; return \"pie\" === this.config.data_types[b] }, i.isGaugeType = function (a) { var b = o(a) ? a : a.id; return \"gauge\" === this.config.data_types[b] }, i.isDonutType = function (a) { var b = o(a) ? a : a.id; return \"donut\" === this.config.data_types[b] }, i.isArcType = function (a) { return this.isPieType(a) || this.isDonutType(a) || this.isGaugeType(a) }, i.lineData = function (a) { return this.isLineType(a) ? [a] : [] }, i.arcData = function (a) { return this.isArcType(a.data) ? [a] : [] }, i.barData = function (a) { return this.isBarType(a) ? a.values : [] }, i.lineOrScatterData = function (a) { return this.isLineType(a) || this.isScatterType(a) ? a.values : [] }, i.barOrLineData = function (a) { return this.isBarType(a) || this.isLineType(a) ? a.values : [] }, i.initGrid = function () { var a = this, b = a.config, c = a.d3; a.grid = a.main.append(\"g\").attr(\"clip-path\", a.clipPathForGrid).attr(\"class\", l.grid), b.grid_x_show && a.grid.append(\"g\").attr(\"class\", l.xgrids), b.grid_y_show && a.grid.append(\"g\").attr(\"class\", l.ygrids), b.grid_focus_show && a.grid.append(\"g\").attr(\"class\", l.xgridFocus).append(\"line\").attr(\"class\", l.xgridFocus), a.xgrid = c.selectAll([]), b.grid_lines_front || a.initGridLines() }, i.initGridLines = function () { var a = this, b = a.d3; a.gridLines = a.main.append(\"g\").attr(\"clip-path\", a.clipPathForGrid).attr(\"class\", l.grid + \" \" + l.gridLines), a.gridLines.append(\"g\").attr(\"class\", l.xgridLines), a.gridLines.append(\"g\").attr(\"class\", l.ygridLines), a.xgridLines = b.selectAll([]) }, i.updateXGrid = function (a) { var b = this, c = b.config, d = b.d3, e = b.generateGridData(c.grid_x_type, b.x), f = b.isCategorized() ? b.xAxis.tickOffset() : 0; b.xgridAttr = c.axis_rotated ? { x1: 0, x2: b.width, y1: function (a) { return b.x(a) - f }, y2: function (a) { return b.x(a) - f } } : { x1: function (a) { return b.x(a) + f }, x2: function (a) { return b.x(a) + f }, y1: 0, y2: b.height }, b.xgrid = b.main.select(\".\" + l.xgrids).selectAll(\".\" + l.xgrid).data(e), b.xgrid.enter().append(\"line\").attr(\"class\", l.xgrid), a || b.xgrid.attr(b.xgridAttr).style(\"opacity\", function () { return +d.select(this).attr(c.axis_rotated ? \"y1\" : \"x1\") === (c.axis_rotated ? b.height : 0) ? 0 : 1 }), b.xgrid.exit().remove() }, i.updateYGrid = function () { var a = this, b = a.config, c = a.yAxis.tickValues() || a.y.ticks(b.grid_y_ticks); a.ygrid = a.main.select(\".\" + l.ygrids).selectAll(\".\" + l.ygrid).data(c), a.ygrid.enter().append(\"line\").attr(\"class\", l.ygrid), a.ygrid.attr(\"x1\", b.axis_rotated ? a.y : 0).attr(\"x2\", b.axis_rotated ? a.y : a.width).attr(\"y1\", b.axis_rotated ? 0 : a.y).attr(\"y2\", b.axis_rotated ? a.height : a.y), a.ygrid.exit().remove(), a.smoothLines(a.ygrid, \"grid\") }, i.gridTextAnchor = function (a) { return a.position ? a.position : \"end\" }, i.gridTextDx = function (a) { return \"start\" === a.position ? 4 : \"middle\" === a.position ? 0 : -4 }, i.xGridTextX = function (a) { return \"start\" === a.position ? -this.height : \"middle\" === a.position ? -this.height / 2 : 0 }, i.yGridTextX = function (a) { return \"start\" === a.position ? 0 : \"middle\" === a.position ? this.width / 2 : this.width }, i.updateGrid = function (a) { var b, c, d, e = this, f = e.main, g = e.config; e.grid.style(\"visibility\", e.hasArcType() ? \"hidden\" : \"visible\"), f.select(\"line.\" + l.xgridFocus).style(\"visibility\", \"hidden\"), g.grid_x_show && e.updateXGrid(), e.xgridLines = f.select(\".\" + l.xgridLines).selectAll(\".\" + l.xgridLine).data(g.grid_x_lines), b = e.xgridLines.enter().append(\"g\").attr(\"class\", function (a) { return l.xgridLine + (a[\"class\"] ? \" \" + a[\"class\"] : \"\") }), b.append(\"line\").style(\"opacity\", 0), b.append(\"text\").attr(\"text-anchor\", e.gridTextAnchor).attr(\"transform\", g.axis_rotated ? \"\" : \"rotate(-90)\").attr(\"dx\", e.gridTextDx).attr(\"dy\", -5).style(\"opacity\", 0), e.xgridLines.exit().transition().duration(a).style(\"opacity\", 0).remove(), g.grid_y_show && e.updateYGrid(), e.ygridLines = f.select(\".\" + l.ygridLines).selectAll(\".\" + l.ygridLine).data(g.grid_y_lines), c = e.ygridLines.enter().append(\"g\").attr(\"class\", function (a) { return l.ygridLine + (a[\"class\"] ? \" \" + a[\"class\"] : \"\") }), c.append(\"line\").style(\"opacity\", 0), c.append(\"text\").attr(\"text-anchor\", e.gridTextAnchor).attr(\"transform\", g.axis_rotated ? \"rotate(-90)\" : \"\").attr(\"dx\", e.gridTextDx).attr(\"dy\", -5).style(\"opacity\", 0), d = e.yv.bind(e), e.ygridLines.select(\"line\").transition().duration(a).attr(\"x1\", g.axis_rotated ? d : 0).attr(\"x2\", g.axis_rotated ? d : e.width).attr(\"y1\", g.axis_rotated ? 0 : d).attr(\"y2\", g.axis_rotated ? e.height : d).style(\"opacity\", 1), e.ygridLines.select(\"text\").transition().duration(a).attr(\"x\", g.axis_rotated ? e.xGridTextX.bind(e) : e.yGridTextX.bind(e)).attr(\"y\", d).text(function (a) { return a.text }).style(\"opacity\", 1), e.ygridLines.exit().transition().duration(a).style(\"opacity\", 0).remove() }, i.redrawGrid = function (a) { var b = this, c = b.config, d = b.xv.bind(b), e = b.xgridLines.select(\"line\"), f = b.xgridLines.select(\"text\"); return [(a ? e.transition() : e).attr(\"x1\", c.axis_rotated ? 0 : d).attr(\"x2\", c.axis_rotated ? b.width : d).attr(\"y1\", c.axis_rotated ? d : 0).attr(\"y2\", c.axis_rotated ? d : b.height).style(\"opacity\", 1), (a ? f.transition() : f).attr(\"x\", c.axis_rotated ? b.yGridTextX.bind(b) : b.xGridTextX.bind(b)).attr(\"y\", d).text(function (a) { return a.text }).style(\"opacity\", 1)] }, i.showXGridFocus = function (a) { var b = this, c = b.config, d = a.filter(function (a) { return a && m(a.value) }), e = b.main.selectAll(\"line.\" + l.xgridFocus), f = b.xx.bind(b); c.tooltip_show && (b.hasType(\"scatter\") || b.hasArcType() || (e.style(\"visibility\", \"visible\").data([d[0]]).attr(c.axis_rotated ? \"y1\" : \"x1\", f).attr(c.axis_rotated ? \"y2\" : \"x2\", f), b.smoothLines(e, \"grid\"))) }, i.hideXGridFocus = function () { this.main.select(\"line.\" + l.xgridFocus).style(\"visibility\", \"hidden\") }, i.updateXgridFocus = function () { var a = this, b = a.config; a.main.select(\"line.\" + l.xgridFocus).attr(\"x1\", b.axis_rotated ? 0 : -10).attr(\"x2\", b.axis_rotated ? a.width : -10).attr(\"y1\", b.axis_rotated ? -10 : 0).attr(\"y2\", b.axis_rotated ? -10 : a.height) }, i.generateGridData = function (a, b) { var c, d, e, f, g = this, h = [], i = g.main.select(\".\" + l.axisX).selectAll(\".tick\").size(); if (\"year\" === a) for (c = g.getXDomain(), d = c[0].getFullYear(), e = c[1].getFullYear(), f = d; e >= f; f++) h.push(new Date(f + \"-01-01 00:00:00\")); else h = b.ticks(10), h.length > i && (h = h.filter(function (a) { return (\"\" + a).indexOf(\".\") < 0 })); return h }, i.getGridFilterToRemove = function (a) { return a ? function (b) { var c = !1; return [].concat(a).forEach(function (a) { (\"value\" in a && b.value === a.value || \"class\" in a && b[\"class\"] === a[\"class\"]) && (c = !0) }), c } : function () { return !0 } }, i.removeGridLines = function (a, b) { var c = this, d = c.config, e = c.getGridFilterToRemove(a), f = function (a) { return !e(a) }, g = b ? l.xgridLines : l.ygridLines, h = b ? l.xgridLine : l.ygridLine; c.main.select(\".\" + g).selectAll(\".\" + h).filter(e).transition().duration(d.transition_duration).style(\"opacity\", 0).remove(), b ? d.grid_x_lines = d.grid_x_lines.filter(f) : d.grid_y_lines = d.grid_y_lines.filter(f) }, i.initTooltip = function () { var a, b = this, c = b.config; if (b.tooltip = b.selectChart.style(\"position\", \"relative\").append(\"div\").attr(\"class\", l.tooltipContainer).style(\"position\", \"absolute\").style(\"pointer-events\", \"none\").style(\"display\", \"none\"), c.tooltip_init_show) { if (b.isTimeSeries() && o(c.tooltip_init_x)) { for (c.tooltip_init_x = b.parseDate(c.tooltip_init_x), a = 0; a < b.data.targets[0].values.length && b.data.targets[0].values[a].x - c.tooltip_init_x !== 0; a++); c.tooltip_init_x = a } b.tooltip.html(c.tooltip_contents.call(b, b.data.targets.map(function (a) { return b.addName(a.values[c.tooltip_init_x]) }), b.axis.getXAxisTickFormat(), b.getYFormat(b.hasArcType()), b.color)), b.tooltip.style(\"top\", c.tooltip_init_position.top).style(\"left\", c.tooltip_init_position.left).style(\"display\", \"block\") } }, i.getTooltipContent = function (a, b, c, d) { var e, f, g, h, i, j, k = this, m = k.config, n = m.tooltip_format_title || b, o = m.tooltip_format_name || function (a) { return a }, p = m.tooltip_format_value || c; for (f = 0; f < a.length; f++) a[f] && (a[f].value || 0 === a[f].value) && (e || (g = n ? n(a[f].x) : a[f].x, e = \"
\" + g + \" | |
---|---|
\" + i + \" | \", e += \"\" + h + \" | \", e += \"