{"version":3,"sources":["webpack:///webpack/universalModuleDefinition","webpack:///webpack/bootstrap c38e7e3d899e36302225","webpack:///./node_modules/d3-selection/src/selection/index.js","webpack:///./node_modules/d3-transition/src/transition/schedule.js","webpack:///./node_modules/d3-selection/index.js","webpack:///./node_modules/d3-array/index.js","webpack:///./node_modules/d3-transition/src/transition/index.js","webpack:///./node_modules/d3-color/index.js","webpack:///./node_modules/d3-interpolate/index.js","webpack:///./node_modules/d3-array/src/ascending.js","webpack:///./node_modules/d3-interpolate/src/color.js","webpack:///./node_modules/d3-array/src/number.js","webpack:///./node_modules/d3-format/src/exponent.js","webpack:///./node_modules/d3-interpolate/src/number.js","webpack:///./node_modules/d3-transition/src/transition/tween.js","webpack:///./node_modules/d3-format/index.js","webpack:///./node_modules/d3-color/src/color.js","webpack:///./node_modules/d3-color/src/define.js","webpack:///./node_modules/d3-format/src/formatDecimal.js","webpack:///./node_modules/d3-interpolate/src/value.js","webpack:///./node_modules/d3-interpolate/src/basis.js","webpack:///./node_modules/d3-selection/src/creator.js","webpack:///./node_modules/d3-selection/src/namespace.js","webpack:///./node_modules/d3-selection/src/namespaces.js","webpack:///./node_modules/d3-selection/src/sourceEvent.js","webpack:///./node_modules/d3-selection/src/selection/on.js","webpack:///./node_modules/d3-selection/src/point.js","webpack:///./node_modules/d3-selection/src/selector.js","webpack:///./node_modules/d3-selection/src/window.js","webpack:///./node_modules/d3-timer/src/timer.js","webpack:///./node_modules/d3-array/src/quantile.js","webpack:///./node_modules/d3-color/src/math.js","webpack:///./node_modules/d3-format/src/locale.js","webpack:///./node_modules/d3-format/src/formatSpecifier.js","webpack:///./node_modules/d3-format/src/formatTypes.js","webpack:///./node_modules/d3-format/src/formatPrefixAuto.js","webpack:///./node_modules/d3-interpolate/src/rgb.js","webpack:///./node_modules/d3-interpolate/src/basisClosed.js","webpack:///./node_modules/d3-interpolate/src/constant.js","webpack:///./node_modules/d3-interpolate/src/array.js","webpack:///./node_modules/d3-interpolate/src/date.js","webpack:///./node_modules/d3-interpolate/src/object.js","webpack:///./node_modules/d3-interpolate/src/string.js","webpack:///./node_modules/d3-selection/src/matcher.js","webpack:///./node_modules/d3-selection/src/selectorAll.js","webpack:///./node_modules/d3-selection/src/selection/enter.js","webpack:///./node_modules/d3-selection/src/selection/sparse.js","webpack:///./node_modules/d3-selection/src/selection/style.js","webpack:///./node_modules/d3-transition/src/interrupt.js","webpack:///./node_modules/d3-timer/index.js","webpack:///./node_modules/d3-transition/src/transition/interpolate.js","webpack:///./node_modules/d3-ease/index.js","webpack:///./node_modules/d3-dispatch/index.js","webpack:///./node_modules/d3-array/src/bisect.js","webpack:///./node_modules/d3-array/src/bisector.js","webpack:///./node_modules/d3-array/src/pairs.js","webpack:///./node_modules/d3-array/src/deviation.js","webpack:///./node_modules/d3-array/src/variance.js","webpack:///./node_modules/d3-array/src/extent.js","webpack:///./node_modules/d3-array/src/array.js","webpack:///./node_modules/d3-array/src/range.js","webpack:///./node_modules/d3-array/src/ticks.js","webpack:///./node_modules/d3-array/src/threshold/sturges.js","webpack:///./node_modules/d3-array/src/min.js","webpack:///./node_modules/d3-array/src/transpose.js","webpack:///./node_modules/d3-transition/index.js","webpack:///./node_modules/d3-ease/src/linear.js","webpack:///./node_modules/d3-ease/src/quad.js","webpack:///./node_modules/d3-ease/src/cubic.js","webpack:///./node_modules/d3-ease/src/poly.js","webpack:///./node_modules/d3-ease/src/sin.js","webpack:///./node_modules/d3-ease/src/exp.js","webpack:///./node_modules/d3-ease/src/circle.js","webpack:///./node_modules/d3-ease/src/bounce.js","webpack:///./node_modules/d3-ease/src/back.js","webpack:///./node_modules/d3-ease/src/elastic.js","webpack:///./node_modules/d3-color/src/lab.js","webpack:///./node_modules/d3-color/src/cubehelix.js","webpack:///./node_modules/d3-dispatch/src/dispatch.js","webpack:///./node_modules/d3-format/src/defaultLocale.js","webpack:///./node_modules/d3-format/src/formatGroup.js","webpack:///./node_modules/d3-format/src/formatNumerals.js","webpack:///./node_modules/d3-format/src/formatDefault.js","webpack:///./node_modules/d3-format/src/formatRounded.js","webpack:///./node_modules/d3-format/src/identity.js","webpack:///./node_modules/d3-format/src/precisionFixed.js","webpack:///./node_modules/d3-format/src/precisionPrefix.js","webpack:///./node_modules/d3-format/src/precisionRound.js","webpack:///./node_modules/d3-interpolate/src/round.js","webpack:///./node_modules/d3-interpolate/src/transform/index.js","webpack:///./node_modules/d3-interpolate/src/transform/parse.js","webpack:///./node_modules/d3-interpolate/src/transform/decompose.js","webpack:///./node_modules/d3-interpolate/src/zoom.js","webpack:///./node_modules/d3-interpolate/src/hsl.js","webpack:///./node_modules/d3-interpolate/src/lab.js","webpack:///./node_modules/d3-interpolate/src/hcl.js","webpack:///./node_modules/d3-interpolate/src/cubehelix.js","webpack:///./node_modules/d3-interpolate/src/quantize.js","webpack:///./node_modules/d3-selection/src/local.js","webpack:///./node_modules/d3-selection/src/mouse.js","webpack:///./node_modules/d3-selection/src/select.js","webpack:///./node_modules/d3-selection/src/selection/select.js","webpack:///./node_modules/d3-selection/src/selection/selectAll.js","webpack:///./node_modules/d3-selection/src/selection/filter.js","webpack:///./node_modules/d3-selection/src/selection/data.js","webpack:///./node_modules/d3-selection/src/constant.js","webpack:///./node_modules/d3-selection/src/selection/exit.js","webpack:///./node_modules/d3-selection/src/selection/merge.js","webpack:///./node_modules/d3-selection/src/selection/order.js","webpack:///./node_modules/d3-selection/src/selection/sort.js","webpack:///./node_modules/d3-selection/src/selection/call.js","webpack:///./node_modules/d3-selection/src/selection/nodes.js","webpack:///./node_modules/d3-selection/src/selection/node.js","webpack:///./node_modules/d3-selection/src/selection/size.js","webpack:///./node_modules/d3-selection/src/selection/empty.js","webpack:///./node_modules/d3-selection/src/selection/each.js","webpack:///./node_modules/d3-selection/src/selection/attr.js","webpack:///./node_modules/d3-selection/src/selection/property.js","webpack:///./node_modules/d3-selection/src/selection/classed.js","webpack:///./node_modules/d3-selection/src/selection/text.js","webpack:///./node_modules/d3-selection/src/selection/html.js","webpack:///./node_modules/d3-selection/src/selection/raise.js","webpack:///./node_modules/d3-selection/src/selection/lower.js","webpack:///./node_modules/d3-selection/src/selection/append.js","webpack:///./node_modules/d3-selection/src/selection/insert.js","webpack:///./node_modules/d3-selection/src/selection/remove.js","webpack:///./node_modules/d3-selection/src/selection/datum.js","webpack:///./node_modules/d3-selection/src/selection/dispatch.js","webpack:///./node_modules/d3-selection/src/selectAll.js","webpack:///./node_modules/d3-selection/src/touch.js","webpack:///./node_modules/d3-selection/src/touches.js","webpack:///./node_modules/d3-transition/src/selection/index.js","webpack:///./node_modules/d3-transition/src/selection/interrupt.js","webpack:///./node_modules/d3-timer/src/timeout.js","webpack:///./node_modules/d3-timer/src/interval.js","webpack:///./node_modules/d3-transition/src/selection/transition.js","webpack:///./node_modules/d3-transition/src/transition/attr.js","webpack:///./node_modules/d3-transition/src/transition/attrTween.js","webpack:///./node_modules/d3-transition/src/transition/delay.js","webpack:///./node_modules/d3-transition/src/transition/duration.js","webpack:///./node_modules/d3-transition/src/transition/ease.js","webpack:///./node_modules/d3-transition/src/transition/filter.js","webpack:///./node_modules/d3-transition/src/transition/merge.js","webpack:///./node_modules/d3-transition/src/transition/on.js","webpack:///./node_modules/d3-transition/src/transition/remove.js","webpack:///./node_modules/d3-transition/src/transition/select.js","webpack:///./node_modules/d3-transition/src/transition/selectAll.js","webpack:///./node_modules/d3-transition/src/transition/selection.js","webpack:///./node_modules/d3-transition/src/transition/style.js","webpack:///./node_modules/d3-transition/src/transition/styleTween.js","webpack:///./node_modules/d3-transition/src/transition/text.js","webpack:///./node_modules/d3-transition/src/transition/transition.js","webpack:///./node_modules/d3-transition/src/active.js","webpack:///./node_modules/d3-array/src/cross.js","webpack:///./node_modules/d3-array/src/descending.js","webpack:///./node_modules/d3-array/src/histogram.js","webpack:///./node_modules/d3-array/src/constant.js","webpack:///./node_modules/d3-array/src/identity.js","webpack:///./node_modules/d3-array/src/threshold/freedmanDiaconis.js","webpack:///./node_modules/d3-array/src/threshold/scott.js","webpack:///./node_modules/d3-array/src/max.js","webpack:///./node_modules/d3-array/src/mean.js","webpack:///./node_modules/d3-array/src/median.js","webpack:///./node_modules/d3-array/src/merge.js","webpack:///./node_modules/d3-array/src/permute.js","webpack:///./node_modules/d3-array/src/scan.js","webpack:///./node_modules/d3-array/src/shuffle.js","webpack:///./node_modules/d3-array/src/sum.js","webpack:///./node_modules/d3-array/src/zip.js","webpack:///./src/charts/mini-tooltip.js"],"names":["require","d3Array","d3Ease","d3Format","d3Selection","d3Transition","NUMBER_FORMAT","module","margin","top","right","bottom","left","width","height","title","valueLabel","nameLabel","mouseChaseDuration","ease","easeQuadInOut","tooltipBackground","backgroundBorderRadius","tooltipTextContainer","tooltipOffset","y","x","textSize","textLineHeight","valueTextSize","valueTextLineHeight","bodyFillColor","borderStrokeColor","titleFillColor","nameTextFillColor","valueTextFillColor","valueTextWeight","numberFormat","valueFormatter","value","format","chartWidth","chartHeight","svg","exports","_selection","each","buildSVG","drawTooltip","buildContainerGroups","container","append","classed","attr","select","transition","hide","selectAll","style","getMaxLengthLine","texts","textSizes","filter","map","node","getBBox","max","getTooltipPosition","mouseX","mouseY","parentChartWidth","parentChartHeight","tooltipX","tooltipY","hasEnoughHorizontalRoom","hasEnoughVerticalRoom","positionX","positionY","hideTooltip","showTooltip","dataPoint","updateContent","name","lineHeight","valueLineHeight","defaultDy","temporalHeight","tooltipValue","tooltipName","tooltipTitle","remove","text","updatePositionAndSize","mousePosition","parentChartSize","duration","updateTooltip","position","chartSize","_x","arguments","length","show","update"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iDAAiD;AACjD,CAAC;AACD,O;ACVA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;;AAGA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAK;AACL;AACA;;AAEA;AACA;AACA;AACA,mCAA2B,0BAA0B,EAAE;AACvD,yCAAiC,eAAe;AAChD;AACA;AACA;;AAEA;AACA,8DAAsD,+DAA+D;;AAErH;AACA;;AAEA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AC7DA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;;;;;;;;;;;;;;;;;;;AC1EiB;AACM;;AAEvB;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,2CAA2C;AAC3C;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,wDAAwD;AACxD;AACA,0DAA0D;AAC1D;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;;AAEL;AACA;AACA;AACA;AACA,wCAAwC;AACxC;;AAEA;AACA;AACA,uBAAuB,OAAO;AAC9B;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,oCAAoC;AACpC;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AC1J2B;AACF;AACE;AACF;AACI;AACC;AACJ;AACG;AACA;AACD;AACG;AACH;AACH;AACE;AACD;AACC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACfwB;AACtB;AACD;AACH;AACK;AACD;AACH;AACG;AACgB;AACX;AACE;AACb;AACC;AACE;AACD;AACF;AACE;AACE;AACC;AACH;AACD;AACG;AACJ;AAC2B;AACrB;AACD;AACL;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AC1BL;AAClB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;AC/DmC;AACP;AACC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACFE;AACK;AACA;AACM;AACP;AACE;AACA;AACD;AACC;AACoB;AACtB;AAC6E;AAC/C;AAC/B;AAC+B;AACkB;AACvD;;;;;;;;;;AChB5B;AACA;AACA;;;;;;;;;;;;ACFA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;;;;;;;AC5BA;AACA;AACA;;;;;;;;;;;;;;ACFA;;AAEA;AACA;AACA;;;;;;;;ACJA;AACA;AACA;AACA;AACA;;;;;;;;;;ACJiB;;AAEjB;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,wCAAwC,OAAO;AAC/C;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,oBAAoB,yBAAyB,2BAA2B,OAAO;AAC/E;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA,wCAAwC,OAAO;AAC/C;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,2CAA2C;AAC3C,GAAG;;AAEH;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;AChF6D;AAC7B;AACG;AACD;AACC;AACD;;;;;;;;;;;;;;;;;;ACLX;;AAEvB;;AAEA;AACA;;AAEA;AACA;AACA;AACA,0BAA0B,EAAE;AAC5B,0BAA0B,EAAE;AAC5B;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA,GAAG;AACH;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA,yBAAyB;AACzB;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;ACzUA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;;;;;;;ACTA;AACA;AACA;AACA;AACA,+FAA+F;AAC/F;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;ACbc;AACd;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;ACnBA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;AClBA;AACc;;AAEd;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;ACxBA;;AAEA;AACA;AACA;AACA,gGAA8C,yFAAuC;AACrF;;;;;;;;;ACNA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;ACRc;;AAEd;AACA;AACA;AACA;AACA;;;;;;;;;ACNA;AAAA;;AAEA;;AAEA;AACA;AACA;AACA,oBAAoB;AACpB;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,uBAAuB;AACvB;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,YAAY;AACZ,GAAG;AACH;;AAEA;AACA;AACA;AACA;AACA,6CAA6C,OAAO;AACpD;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,0CAA0C,OAAO;AACjD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,6CAA6C,OAAO;AACpD,4BAA4B,OAAO;AACnC;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,aAAa,OAAO;AACpB;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;;;;;;;AC1GA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;;;;;;;ACZA;;AAEA;AACA;AACA;AACA;AACA;;;;;;;;ACNA;AACA;AACA;AACA,0BAA0B;AAC1B;;;;;;;;;;;ACJA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qIAAqI,mBAAmB;;AAExJ;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA,QAAQ;AACR,UAAU;AACV;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,oBAAoB;AACpB;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;;;;;;;;;;AC7GA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;ACbA;AACA;;;;;;;;;;;;;;;ACDA;AACA;AACA;AACA;AACA;AACuB;AACvB;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,OAAO;AACP;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,sEAAsE;AACtE,sEAAsE;AACtE,qIAAqI;AACrI,qEAAqE;AACrE;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;;;;;;;;;AC/HA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA,sDAAsD;;AAEtD;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;ACvDA;AACA;AACA;;AAEA;AACA;AACA,uBAAuB,6BAA6B,EAAE;AACtD,oBAAoB,kCAAkC,EAAE;AACxD,oBAAoB,eAAe,EAAE;AACrC,oBAAoB,mCAAmC,EAAE;AACzD,uBAAuB,2BAA2B,EAAE;AACpD,uBAAuB,qBAAqB,EAAE;AAC9C,uBAAuB,yBAAyB,EAAE;AAClD,oBAAoB,kCAAkC,EAAE;AACxD,uBAAuB,4FAAkC,EAAE;AAC3D;AACA;AACA,oBAAoB,iDAAiD,EAAE;AACvE,oBAAoB,mCAAmC;AACvD;;;;;;;;;;ACnBA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kJAAwF;AACxF;;;;;;;;;;;;;;ACfwB;AACxB;AACA;AACuB;;yDAEvB;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,OAAO;AACtB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;;;;;;;;ACtDc;;AAEd;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;ACZA;AACA;AACA;AACA;AACA;;;;;;;;;ACJA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA,aAAa,QAAQ;AACrB,QAAQ,QAAQ;;AAEhB;AACA,eAAe,QAAQ;AACvB;AACA;AACA;;;;;;;;AChBA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;ACLA;;AAEA;AACA,YAAY;AACZ,YAAY;AACZ;;AAEA;AACA;;AAEA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;;;;;;;;ACtBA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;;AAEb;AACA;;AAEA;AACA;AACA;AACA,+BAA+B;AAC/B;AACA,2BAA2B;AAC3B;AACA;AACA,wCAAwC;AACxC,2BAA2B;AAC3B;AACA,KAAK,OAAO;AACZ;AACA,cAAc,kFAAwB;AACtC;AACA;AACA;;AAEA;AACA;AACA;AACA,yBAAyB;AACzB;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,4BAA4B,OAAO;AACnC;AACA,SAAS;AACT;;;;;;;;AC/DA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;;;;;;;ACrBA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;;;;;;;;;;ACRA;AACkB;;AAElB;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,gCAAgC,qDAAqD,EAAE;AACvF,uCAAuC,+CAA+C,EAAE;AACxF,qCAAqC,6CAA6C,EAAE;AACpF,wCAAwC,gDAAgD;AACxF;;;;;;;;ACrBA;AACA;AACA;;;;;;;;;;ACFA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;;;;;;;;AClCgC;;AAEhC;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA,kDAAkD,eAAe,UAAU;AAC3E;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;;;;;;;;;;;;;;;ACnBC;;AAIA;;AAIA;;;;;;;;;;ACZa;AAC+C;;AAE7D;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACPC;;AAOA;;AAOA;;AAOA;;AAOA;;AAOA;;AAOA;;AAOA;;AAOA;;AAOA;;;;;;;;;;;ACjE2B;;;;;;;;;;;;ACA5B;AACA;;AAEA;AACA;AACA;AACA;;;;;;;;;ACNA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;;;;;;;;AChCA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;;;;;;;;ACTA;;AAEA;AACA;AACA;AACA;;;;;;;;;ACLA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;;;;;;;AChCA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,qBAAqB;AACrB;AACA;AACA,yBAAyB;AACzB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,qBAAqB;AACrB;AACA;AACA,yBAAyB;AACzB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;;;;;;;;ACpCA;AAAA;;AAEA;AACA;;;;;;;;ACHA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;;;;;;;;ACZA;AAAA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;ACjDA;AACA;AACA;;;;;;;;ACFA;AACA;AACA;AACA;AACA;;AAEA;AACA,qBAAqB;AACrB;AACA;AACA,yBAAyB;AACzB;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,qBAAqB;AACrB;AACA;AACA,yBAAyB;AACzB;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;;;;;;;;ACjCA;;AAEA;AACA;AACA,+HAAqE,SAAS;AAC9E,0DAA0D,SAAS;AACnE;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACdA;AAC8B;AACJ;AACG;;;;;;;;;ACH7B;AACA;AACA;;;;;;;;;;;ACFA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;;;;;;;;;;ACVA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;;;;;;;;;ACVA;AAAA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA,CAAC;;AAED;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA,CAAC;;AAED;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA,CAAC;;;;;;;;;;ACpCD;AAAA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;;;;;;;;;;ACbA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;;;;;;;;;;ACVA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;;;;;;;;;ACVA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;;;;;;;;;ACrBA;AAAA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA,CAAC;;AAED;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA,CAAC;;AAED;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA,CAAC;;;;;;;;;;ACpCD;AAAA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA,qCAAqC,2BAA2B;AAChE,kCAAkC,qBAAqB;;AAEvD;AACA,CAAC;;AAED;AACA;;AAEA;AACA;AACA;;AAEA,sCAAsC,2BAA2B;AACjE,mCAAmC,qBAAqB;;AAExD;AACA,CAAC;;AAED;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA,wCAAwC,2BAA2B;AACnE,qCAAqC,qBAAqB;;AAE1D;AACA,CAAC;;;;;;;;;;;;;;;AC3CsB;AACQ;AACN;;AAEzB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;;AAED;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA,GAAG;AACH;AACA;AACA;AACA,CAAC;;;;;;;;;;;;;AC3GsB;AAC0B;AACxB;;AAEzB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;;;;;;;;AC5DD,YAAY;;AAEZ;AACA,8CAA8C,IAAI,OAAO;AACzD;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,YAAY;AACZ,GAAG;AACH;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,GAAG;AACH;AACA,iBAAiB;AACjB;AACA;AACA,GAAG;AACH;AACA,kFAAkF,OAAO;AACzF;AACA,+CAA+C,OAAO;AACtD,GAAG;AACH;AACA;AACA,mDAAmD,OAAO;AAC1D;AACA;;AAEA;AACA,qCAAqC,OAAO;AAC5C;AACA;AACA;AACA;AACA;;AAEA;AACA,kCAAkC,OAAO;AACzC;AACA;AACA;AACA;AACA;AACA,mCAAmC,4BAA4B;AAC/D;AACA;;AAEA;;;;;;;;;;;;ACnFA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;;;;;;;;AClBA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;;;;;;;ACjBA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;;;;;;;;ACNA;AACA;;AAEA,iDAAiD,OAAO;AACxD;AACA,4BAA4B;AAC5B,qCAAqC,QAAQ;AAC7C;AACA,kCAAkC;AAClC;AACA;;AAEA;AACA;;;;;;;;;ACbA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;ACVA;AACA;AACA;;;;;;;;;ACFA;;AAEA;AACA;AACA;;;;;;;;;ACJA;;AAEA;AACA;AACA;;;;;;;;;ACJA;;AAEA;AACA;AACA;AACA;;;;;;;;ACLA;AACA;AACA;AACA;AACA;;;;;;;;;;;;ACJA;AAC2B;;AAE3B;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,cAAc,sFAA4B,GAAG,sFAA4B;AACzE,KAAK;AACL;AACA;AACA;;AAEA;AACA;AACA,gCAAgC,gCAAgC;AAChE,cAAc,6HAAmE;AACjF,KAAK;AACL;AACA;AACA;;AAEA;AACA;AACA,cAAc,4HAAkE;AAChF,KAAK;AACL;AACA;AACA;;AAEA;AACA;AACA;AACA,cAAc,sFAA4B,GAAG,sFAA4B;AACzE,KAAK;AACL;AACA;AACA;;AAEA;AACA;AACA,eAAe;AACf;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;;;;;;;;;;AC9D4B;;AAE5B;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;ACxBA;AAAA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;ACzBA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;;;;;;;;;;AC/DwB;AACL;;AAEnB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;;;;;;;;;;ACpBwB;AACxB;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;ACfwB;AACL;;AAEnB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;;;;;;;;;;ACpBoC;AACjB;;AAEnB;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA,GAAG;AACH;;AAEA;AACA;;;;;;;;AC5BA;AACA;AACA,iBAAiB,OAAO;AACxB;AACA;;;;;;;;ACJA;AAAA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA,GAAG;AACH;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;;;;;;;;;;AC1BA;AACA;;AAEA;AACA;AACA;AACA;AACA;;;;;;;;;ACPwB;;AAExB;AACA;AACA;AACA;AACA;;;;;;;;;;ACNkB;AAClB;;AAEA;AACA;;AAEA,qFAAqF,OAAO;AAC5F,+GAA+G,OAAO;AACtH;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;;;;;;;;;AChBkB;AAClB;;AAEA;AACA;;AAEA,yFAAyF,OAAO;AAChG,8DAA8D,OAAO;AACrE;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;;;;;;;;;AChBkB;AAClB;;AAEA;AACA;;AAEA,qFAAqF,OAAO;AAC5F,4FAA4F,OAAO;AACnG;AACA;AACA;AACA;AACA;;AAEA;AACA;;;;;;;;;;;ACfkB;AACA;AAClB;;AAEA,oBAAoB;;AAEpB;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,QAAQ,gBAAgB;AACxB;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;;AAEA;AACA,QAAQ,iBAAiB;AACzB;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,yBAAyB;AACzB;AACA;AACA;AACA;;AAEA;AACA;AACA,aAAa,iBAAiB;AAC9B;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,aAAa,gBAAgB;AAC7B;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;;AAEA;AACA,aAAa,iBAAiB;AAC9B;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,2BAA2B,eAAe,EAAE;AAC5C;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA,sGAAsG,OAAO;AAC7G;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA,4CAA4C,iBAAiB;AAC7D;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;;;;;;;ACrHA;AACA;AACA;AACA;AACA;;;;;;;;;;ACJA;AACkB;;AAElB;AACA;AACA;;;;;;;;;ACLkB;;AAElB;;AAEA,8JAA8J,OAAO;AACrK,wHAAwH,OAAO;AAC/H;AACA;AACA;AACA;AACA;;AAEA,QAAQ,QAAQ;AAChB;AACA;;AAEA;AACA;;;;;;;;ACjBA;;AAEA,4DAA4D,SAAS;AACrE,4EAA4E,UAAU;AACtF;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;;;;;;;;ACZkB;;AAElB;AACA;;AAEA;AACA;AACA;;AAEA,sFAAsF,OAAO;AAC7F,wGAAwG,OAAO;AAC/G;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;;;;;;;ACvBA;AACA;AACA;AACA;AACA;AACA;;;;;;;;ACLA;AACA;AACA,wBAAwB,mBAAmB,EAAE;AAC7C;AACA;;;;;;;;ACJA;;AAEA,2DAA2D,OAAO;AAClE,wDAAwD,OAAO;AAC/D;AACA;AACA;AACA;;AAEA;AACA;;;;;;;;ACVA;AACA;AACA,wBAAwB,QAAQ,EAAE;AAClC;AACA;;;;;;;;ACJA;AACA;AACA;;;;;;;;ACFA;;AAEA,2DAA2D,OAAO;AAClE,8DAA8D,OAAO;AACrE;AACA;AACA;;AAEA;AACA;;;;;;;;;ACTA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;;;;;;;ACxDA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;AC3BA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;;;;;;;AC1EA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;ACxBA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;ACxBA;AACA;AACA;;AAEA;AACA;AACA;;;;;;;;ACNA;AACA;AACA;;AAEA;AACA;AACA;;;;;;;;;ACNA;;AAEA;AACA;AACA;AACA;AACA,GAAG;AACH;;;;;;;;;;ACPA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;;;;;;;;ACbA;AACA;AACA;AACA;;AAEA;AACA;AACA;;;;;;;;ACPA;AACA;AACA;AACA;AACA;;;;;;;;;ACJA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;;;;;;;;ACjCwB;;AAExB;AACA;AACA;AACA;AACA;;;;;;;;;;ACNA;AACA;;AAEA;AACA;;AAEA,0DAA0D,OAAO;AACjE;AACA;AACA;AACA;;AAEA;AACA;;;;;;;;;;ACbA;AACA;;AAEA;AACA;;AAEA,0EAA0E,OAAO;AACjF;AACA;;AAEA;AACA;;;;;;;;;;;ACXkB;AAClB;AACA;;AAEA;AACA;;;;;;;;;ACLA;;AAEA;AACA;AACA;AACA,GAAG;AACH;;;;;;;;;ACNc;;AAEd;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;;;;;;;;;ACVmB;;AAEnB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;;;;;;;;;;;;ACZ0B;AAC1B;AACuB;AACX;;AAEZ;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;yDAEA;AACA;AACA;;AAEA;AACA;AACA,GAAG;AACH;AACA;;AAEA,2DAA2D,OAAO;AAClE,8DAA8D,OAAO;AACrE;AACA;AACA;AACA;AACA;;AAEA;AACA;;;;;;;;;;;;ACzCwD;AACtC;AACC;AACnB;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;yDAEA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;ACzEkB;;AAElB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;AC/BkB;;AAElB;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;ACtBiB;;AAEjB;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;ACtBiB;;AAEjB;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;;;;;;;;;ACfgB;AACG;;AAEnB;AACA;;AAEA,qFAAqF,OAAO;AAC5F,4FAA4F,OAAO;AACnG;AACA;AACA;AACA;AACA;;AAEA;AACA;;;;;;;;;ACfmB;;AAEnB;AACA;;AAEA,+JAA+J,OAAO;AACtK,wHAAwH,OAAO;AAC/H;AACA;AACA;AACA;AACA;;AAEA,QAAQ,QAAQ;AAChB;AACA;;AAEA;AACA;;;;;;;;;AClBuB;;AAEvB;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;;;;;;;AC/BA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;;;;;;;;;;ACViB;AACE;AACG;;AAEtB;AACA;AACA;;AAEA;;AAEA,qFAAqF,OAAO;AAC5F,+GAA+G,OAAO;AACtH;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;;;;;;;;;;ACrBoB;AACD;AACG;;AAEtB;AACA;AACA;;AAEA;;AAEA,yFAAyF,OAAO;AAChG,8DAA8D,OAAO;AACrE;AACA,8LAAmI,OAAO;AAC1I;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;;;;;;;;ACzBkB;;AAElB;;AAEA;AACA;AACA;;;;;;;;;;;;ACNwD;AAC1C;AACK;AACnB;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;ACzDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;ACjBmB;;AAEnB;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;;;;;;;;;ACnB0B;AACJ;;AAEtB;AACA;AACA;AACA;;AAEA,2DAA2D,OAAO;AAClE,8DAA8D,OAAO;AACrE;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;;AAEA;AACA;;;;;;;;;;ACvBmB;AACD;;AAElB;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;;;;;;;;ACpBa;;AAEb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA,kBAAkB,SAAS;AAC3B,sCAAsC,SAAS;AAC/C;AACA;AACA;;AAEA;AACA;;;;;;;;ACpBA;AACA;AACA;;;;;;;;;;;;;;;;ACFc;AACd;AACA;AACA;AACA;AACA;AACiB;AACjB;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA,eAAe,OAAO;AACtB;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,kIAAwE;AACxE;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA,eAAe,QAAQ;AACvB;AACA;AACA;AACA;;AAEA;AACA,eAAe,OAAO;AACtB;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;;;;;;;AC1EA;AACA;AACA;AACA;AACA;;;;;;;;ACJA;AACA;AACA;;;;;;;;;;;;ACFY;AACZ;AACA;AACA;;AAEA;AACA;AACA;AACA;;;;;;;;;ACRA;;AAEA;AACA;AACA;;;;;;;;ACJA;AACA;AACA;AACA;AACA;;AAEA;AACA,qBAAqB;AACrB;AACA;AACA,yBAAyB;AACzB;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,qBAAqB;AACrB;AACA;AACA,yBAAyB;AACzB;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;;;;;;;;ACjCA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;;;;;;;;;;ACxBA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;;;;;;;AC3BA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;;;;;;;ACpBA;AACA;AACA;AACA;AACA;;;;;;;;;ACJA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;;;;;;;ACnBA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;;;;;;;ACbA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,2CAA2C;AAC3C;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;;;;;;;;ACnBA;;AAEA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACJA,kCAAO,UAASA,OAAT,EAAiB;AACpB;;AAEA,QAAMC,UAAU,mBAAAD,CAAQ,CAAR,CAAhB;AACA,QAAME,SAAS,mBAAAF,CAAQ,EAAR,CAAf;AACA,QAAMG,WAAW,mBAAAH,CAAQ,EAAR,CAAjB;AACA,QAAMI,cAAc,mBAAAJ,CAAQ,CAAR,CAApB;AACA,QAAMK,eAAe,mBAAAL,CAAQ,GAAR,CAArB;;AAEA,QAAMM,gBAAgB,KAAtB;;AAEA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA6BA,WAAO,SAASC,MAAT,GAAkB;;AAErB,YAAIC,SAAS;AACLC,iBAAK,EADA;AAELC,mBAAO,EAFF;AAGLC,oBAAQ,EAHH;AAILC,kBAAM;AAJD,SAAb;AAAA,YAMIC,QAAQ,GANZ;AAAA,YAOIC,SAAS,GAPb;;;AASI;AACAC,gBAAQ,EAVZ;;;AAYI;AACAC,qBAAa,OAbjB;AAAA,YAcIC,YAAY,MAdhB;;;AAgBI;AACAC,6BAAqB,GAjBzB;AAAA,YAkBIC,OAAOjB,OAAOkB,aAlBlB;;;AAoBI;AACAC,kCArBJ;AAAA,YAsBIC,yBAAyB,CAtB7B;AAAA,YAuBIC,6BAvBJ;AAAA,YAwBIC,gBAAgB;AACZC,eAAG,CADS;AAEZC,eAAG;AAFS,SAxBpB;;;AA6BI;AACAC,mBAAW,EA9Bf;AAAA,YA+BIC,iBAAiB,GA/BrB;AAAA,YAgCIC,gBAAgB,EAhCpB;AAAA,YAiCIC,sBAAsB,IAjC1B;;;AAmCI;AACAC,wBAAgB,SApCpB;AAAA,YAqCIC,oBAAoB,SArCxB;AAAA,YAsCIC,iBAAiB,SAtCrB;AAAA,YAuCIC,oBAAoB,SAvCxB;AAAA,YAwCIC,qBAAqB,SAxCzB;AAAA,YAyCIC,kBAAkB,GAzCtB;;;AA2CI;AACAC,uBAAe/B,aA5CnB;AAAA,YA6CIgC,iBAAiB,SAAjBA,cAAiB,CAACC,KAAD;AAAA,mBAAWpC,SAASqC,MAAT,CAAgBH,YAAhB,EAA8BE,KAA9B,CAAX;AAAA,SA7CrB;AAAA,YA+CIE,mBA/CJ;AAAA,YAgDIC,oBAhDJ;AAAA,YAiDIC,YAjDJ;;AAoDA;;;;;AAKA,iBAASC,OAAT,CAAiBC,UAAjB,EAA6B;AACzBA,uBAAWC,IAAX,CAAgB,YAAU;AACtBL,6BAAa5B,QAAQL,OAAOI,IAAf,GAAsBJ,OAAOE,KAA1C;AACAgC,8BAAc5B,SAASN,OAAOC,GAAhB,GAAsBD,OAAOG,MAA3C;;AAEAoC,yBAAS,IAAT;AACAC;AACH,aAND;AAOH;;AAED;;;;;AAKA,iBAASC,oBAAT,GAAgC;AAC5B,gBAAIC,YAAYP,IACbQ,MADa,CACN,GADM,EAEXC,OAFW,CAEH,yBAFG,EAEwB,IAFxB,EAGXC,IAHW,CAGN,WAHM,kBAGqB7C,OAAOI,IAH5B,UAGqCJ,OAAOC,GAH5C,OAAhB;;AAKAyC,sBAAUC,MAAV,CAAiB,GAAjB,EAAsBC,OAAtB,CAA8B,eAA9B,EAA+C,IAA/C;AACH;;AAED;;;;;AAKA,iBAASL,QAAT,CAAkBG,SAAlB,EAA6B;AACzB,gBAAI,CAACP,GAAL,EAAU;AACNA,sBAAMvC,YAAYkD,MAAZ,CAAmBJ,SAAnB,EACDC,MADC,CACM,GADN,EAEDC,OAFC,CAEO,oCAFP,EAE6C,IAF7C,CAAN;;AAIAH;AACH;AACDN,gBACKY,UADL,GAEKF,IAFL,CAEU,OAFV,EAEmBxC,KAFnB,EAGKwC,IAHL,CAGU,QAHV,EAGoBvC,MAHpB;;AAKA;AACA8B,oBAAQY,IAAR;AACH;;AAED;;;;AAIA,iBAASR,WAAT,GAAsB;AAClBzB,mCAAuBoB,IAAIc,SAAJ,CAAc,gBAAd,EAClBN,MADkB,CACX,GADW,EAElBC,OAFkB,CAEV,cAFU,EAEM,IAFN,CAAvB;;AAIA/B,gCAAoBE,qBACjB4B,MADiB,CACV,MADU,EAEfC,OAFe,CAEP,oBAFO,EAEe,IAFf,EAGfC,IAHe,CAGV,OAHU,EAGDxC,KAHC,EAIfwC,IAJe,CAIV,QAJU,EAIAvC,MAJA,EAKfuC,IALe,CAKV,IALU,EAKJ/B,sBALI,EAMf+B,IANe,CAMV,IANU,EAMJ/B,sBANI,EAOf+B,IAPe,CAOV,GAPU,EAOL,CAAE7C,OAAOC,GAPJ,EAQf4C,IARe,CAQV,GARU,EAQL,CAAE7C,OAAOI,IARJ,EASf8C,KATe,CAST,MATS,EASD3B,aATC,EAUf2B,KAVe,CAUT,QAVS,EAUC1B,iBAVD,EAWf0B,KAXe,CAWT,cAXS,EAWO,CAXP,EAYfA,KAZe,CAYT,gBAZS,EAYS,MAZT,EAafA,KAbe,CAaT,SAbS,EAaE,GAbF,CAApB;AAcH;;AAED;;;;;AAKA,iBAASC,gBAAT,GAAoC;AAAA,8CAAPC,KAAO;AAAPA,qBAAO;AAAA;;AAChC,gBAAIC,YAAYD,MAAME,MAAN,CAAa;AAAA,uBAAK,CAAC,CAACpC,CAAP;AAAA,aAAb,EACXqC,GADW,CACP;AAAA,uBAAKrC,EAAEsC,IAAF,GAASC,OAAT,GAAmBpD,KAAxB;AAAA,aADO,CAAhB;;AAGA,mBAAOZ,QAAQiE,GAAR,CAAYL,SAAZ,CAAP;AACH;;AAED;;;;;;;;;AASA,iBAASM,kBAAT,cAAqF;AAAA;AAAA,gBAAxDC,MAAwD;AAAA,gBAAhDC,MAAgD;;AAAA;AAAA,gBAAtCC,gBAAsC;AAAA,gBAApBC,iBAAoB;;AACjF,gBAAIC,iBAAJ;AAAA,gBAAcC,iBAAd;;AAEA,gBAAIC,wBAAwBJ,gBAAxB,EAA0CF,MAA1C,CAAJ,EAAuD;AACnDI,2BAAWJ,SAAS5C,cAAcE,CAAlC;AACH,aAFD,MAEO;AACH8C,2BAAWJ,SAAS3B,UAAT,GAAsBjB,cAAcE,CAApC,GAAwClB,OAAOE,KAA1D;AACH;;AAED,gBAAIiE,sBAAsBJ,iBAAtB,EAAyCF,MAAzC,CAAJ,EAAsD;AAClDI,2BAAWJ,SAAS7C,cAAcC,CAAlC;AACH,aAFD,MAEO;AACHgD,2BAAWJ,SAAS3B,WAAT,GAAuBlB,cAAcC,CAArC,GAAyCjB,OAAOG,MAA3D;AACH;;AAED,mBAAO,CAAC6D,QAAD,EAAWC,QAAX,CAAP;AACH;;AAED;;;;;;AAMA,iBAASC,uBAAT,CAAiCJ,gBAAjC,EAAmDM,SAAnD,EAA8D;AAC1D,mBAAQN,mBAAmB9D,OAAOI,IAA1B,GAAiCJ,OAAOE,KAAxC,GAAgD+B,UAAjD,GAA+DmC,SAA/D,GAA2E,CAAlF;AACH;;AAED;;;;;;AAMA,iBAASD,qBAAT,CAA+BJ,iBAA/B,EAAkDM,SAAlD,EAA6D;AACzD,mBAAQN,oBAAoB/D,OAAOC,GAA3B,GAAiCD,OAAOG,MAAxC,GAAiD+B,WAAlD,GAAiEmC,SAAjE,GAA6E,CAApF;AACH;;AAED;;;;AAIA,iBAASC,WAAT,GAAuB;AACnBnC,gBAAIe,KAAJ,CAAU,SAAV,EAAqB,MAArB;AACH;;AAED;;;;;AAKA,iBAASqB,WAAT,CAAqBC,SAArB,EAAgC;AAC5BC,0BAAcD,SAAd;AACArC,gBAAIe,KAAJ,CAAU,SAAV,EAAqB,OAArB;AACH;;AAED;;;;;AAKA,iBAASuB,aAAT,GAAsC;AAAA,gBAAfD,SAAe,uEAAH,EAAG;;AAClC,gBAAIzC,QAAQyC,UAAUhE,UAAV,KAAyB,EAArC;AAAA,gBACIkE,OAAOF,UAAU/D,SAAV,KAAwB,EADnC;AAAA,gBAEIkE,aAAaxD,WAAWC,cAF5B;AAAA,gBAGIwD,kBAAkBvD,gBAAgBC,mBAHtC;AAAA,gBAIIuD,YAAY,KAJhB;AAAA,gBAKIC,iBAAiB,CALrB;AAAA,gBAMIC,qBANJ;AAAA,gBAOIC,oBAPJ;AAAA,gBAQIC,qBARJ;;AAUAlE,iCAAqBkC,SAArB,CAA+B,MAA/B,EACKiC,MADL;;AAGA,gBAAI3E,KAAJ,EAAW;AACP0E,+BAAelE,qBACZ4B,MADY,CACL,MADK,EAEVC,OAFU,CAEF,oBAFE,EAEoB,IAFpB,EAGVC,IAHU,CAGL,IAHK,EAGCgC,SAHD,EAIVhC,IAJU,CAIL,GAJK,EAIA,CAJA,EAKVK,KALU,CAKJ,MALI,EAKIzB,cALJ,EAMVyB,KANU,CAMJ,WANI,EAMS/B,QANT,EAOVgE,IAPU,CAOL5E,KAPK,CAAf;;AASAuE,iCAAiBH,aAAaG,cAA9B;AACH;;AAED,gBAAIJ,IAAJ,EAAU;AACNM,8BAAcjE,qBACX4B,MADW,CACJ,MADI,EAETC,OAFS,CAED,mBAFC,EAEoB,IAFpB,EAGTC,IAHS,CAGJ,IAHI,EAGEgC,SAHF,EAIThC,IAJS,CAIJ,GAJI,EAICiC,kBAAkB,CAJnB,EAKT5B,KALS,CAKH,MALG,EAKKxB,iBALL,EAMTwB,KANS,CAMH,WANG,EAMU/B,QANV,EAOTgE,IAPS,CAOJT,IAPI,CAAd;;AASAI,iCAAiBH,aAAaG,cAA9B;AACH;;AAED,gBAAI/C,KAAJ,EAAW;AACPgD,+BAAehE,qBACZ4B,MADY,CACL,MADK,EAEVC,OAFU,CAEF,oBAFE,EAEoB,IAFpB,EAGVC,IAHU,CAGL,IAHK,EAGCgC,SAHD,EAIVhC,IAJU,CAIL,GAJK,EAIAiC,kBAAkB,CAJlB,EAKV5B,KALU,CAKJ,MALI,EAKIvB,kBALJ,EAMVuB,KANU,CAMJ,WANI,EAMS7B,aANT,EAOV6B,KAPU,CAOJ,aAPI,EAOWtB,eAPX,EAQVuD,IARU,CAQLrD,eAAeC,KAAf,CARK,CAAf;;AAUA+C,iCAAiBF,kBAAkBE,cAAnC;AACH;;AAED7C,yBAAakB,iBAAiB6B,WAAjB,EAA8BC,YAA9B,EAA4CF,YAA5C,CAAb;AACA7C,0BAAc4C,cAAd;AACH;;AAED;;;;;AAKA,iBAASM,qBAAT,CAA+BC,aAA/B,EAA8CC,eAA9C,EAA+D;AAAA,sCAChC3B,mBAAmB0B,aAAnB,EAAkCC,eAAlC,CADgC;AAAA;AAAA,gBACtDtB,QADsD;AAAA,gBAC5CC,QAD4C;;AAG3D9B,gBAAIY,UAAJ,GACKwC,QADL,CACc7E,kBADd,EAEKC,IAFL,CAEUA,IAFV,EAGKkC,IAHL,CAGU,QAHV,EAGoBX,cAAclC,OAAOC,GAArB,GAA2BD,OAAOG,MAHtD,EAIK0C,IAJL,CAIU,OAJV,EAImBZ,aAAajC,OAAOI,IAApB,GAA2BJ,OAAOE,KAJrD,EAKK2C,IALL,CAKU,WALV,iBAKoCmB,QALpC,SAKgDC,QALhD;;AAOApD,8BACKgC,IADL,CACU,QADV,EACoBX,cAAclC,OAAOC,GAArB,GAA2BD,OAAOG,MADtD,EAEK0C,IAFL,CAEU,OAFV,EAEmBZ,aAAajC,OAAOI,IAApB,GAA2BJ,OAAOE,KAFrD;AAGH;;AAED;;;;;;AAMA,iBAASsF,aAAT,CAAuBhB,SAAvB,EAAkCiB,QAAlC,EAA4CC,SAA5C,EAAuD;AACnDjB,0BAAcD,SAAd;AACAY,kCAAsBK,QAAtB,EAAgCC,SAAhC;AACH;;AAED;;;;;AAKAtD,gBAAQY,IAAR,GAAe,YAAW;AACtBsB;;AAEA,mBAAO,IAAP;AACH,SAJD;;AAMA;;;;;;AAMAlC,gBAAQ3B,SAAR,GAAoB,UAASkF,EAAT,EAAa;AAC7B,gBAAI,CAACC,UAAUC,MAAf,EAAuB;AACnB,uBAAOpF,SAAP;AACH;AACDA,wBAAYkF,EAAZ;AACA,mBAAO,IAAP;AACH,SAND;;AAQA;;;;;;AAMAvD,gBAAQP,YAAR,GAAuB,UAAS8D,EAAT,EAAa;AAChC,gBAAI,CAACC,UAAUC,MAAf,EAAuB;AACnB,uBAAOhE,YAAP;AACH;AACDA,2BAAe8D,EAAf;AACA,mBAAO,IAAP;AACH,SAND;;AAQA;;;;;AAKAvD,gBAAQ0D,IAAR,GAAe,YAAW;AACtBvB;;AAEA,mBAAO,IAAP;AACH,SAJD;;AAMA;;;;;;AAMAnC,gBAAQ7B,KAAR,GAAgB,UAASoF,EAAT,EAAa;AACzB,gBAAI,CAACC,UAAUC,MAAf,EAAuB;AACnB,uBAAOtF,KAAP;AACH;AACDA,oBAAQoF,EAAR;AACA,mBAAO,IAAP;AACH,SAND;;AAQA;;;;;;;AAOAvD,gBAAQ2D,MAAR,GAAiB,UAASvB,SAAT,EAAoBa,aAApB,EAAmCK,SAAnC,EAA8C;AAC3DF,0BAAchB,SAAd,EAAyBa,aAAzB,EAAwCK,SAAxC;;AAEA,mBAAO,IAAP;AACH,SAJD;;AAMA;;;;;;AAMAtD,gBAAQ5B,UAAR,GAAqB,UAASmF,EAAT,EAAa;AAC9B,gBAAI,CAACC,UAAUC,MAAf,EAAuB;AACnB,uBAAOrF,UAAP;AACH;AACDA,yBAAamF,EAAb;AACA,mBAAO,IAAP;AACH,SAND;;AAQA,eAAOvD,OAAP;AACH,KAzYD;AA0YH,CAlbD;AAAA,qG","file":"miniTooltip.min.js","sourcesContent":["(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory();\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"miniTooltip\"] = factory();\n\telse\n\t\troot[\"britecharts\"] = root[\"britecharts\"] || {}, root[\"britecharts\"][\"miniTooltip\"] = factory();\n})(this, function() {\nreturn \n\n\n// WEBPACK FOOTER //\n// webpack/universalModuleDefinition"," \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, {\n \t\t\t\tconfigurable: false,\n \t\t\t\tenumerable: true,\n \t\t\t\tget: getter\n \t\t\t});\n \t\t}\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = 298);\n\n\n\n// WEBPACK FOOTER //\n// webpack/bootstrap c38e7e3d899e36302225","import selection_select from \"./select\";\nimport selection_selectAll from \"./selectAll\";\nimport selection_filter from \"./filter\";\nimport selection_data from \"./data\";\nimport selection_enter from \"./enter\";\nimport selection_exit from \"./exit\";\nimport selection_merge from \"./merge\";\nimport selection_order from \"./order\";\nimport selection_sort from \"./sort\";\nimport selection_call from \"./call\";\nimport selection_nodes from \"./nodes\";\nimport selection_node from \"./node\";\nimport selection_size from \"./size\";\nimport selection_empty from \"./empty\";\nimport selection_each from \"./each\";\nimport selection_attr from \"./attr\";\nimport selection_style from \"./style\";\nimport selection_property from \"./property\";\nimport selection_classed from \"./classed\";\nimport selection_text from \"./text\";\nimport selection_html from \"./html\";\nimport selection_raise from \"./raise\";\nimport selection_lower from \"./lower\";\nimport selection_append from \"./append\";\nimport selection_insert from \"./insert\";\nimport selection_remove from \"./remove\";\nimport selection_datum from \"./datum\";\nimport selection_on from \"./on\";\nimport selection_dispatch from \"./dispatch\";\n\nexport var root = [null];\n\nexport function Selection(groups, parents) {\n this._groups = groups;\n this._parents = parents;\n}\n\nfunction selection() {\n return new Selection([[document.documentElement]], root);\n}\n\nSelection.prototype = selection.prototype = {\n constructor: Selection,\n select: selection_select,\n selectAll: selection_selectAll,\n filter: selection_filter,\n data: selection_data,\n enter: selection_enter,\n exit: selection_exit,\n merge: selection_merge,\n order: selection_order,\n sort: selection_sort,\n call: selection_call,\n nodes: selection_nodes,\n node: selection_node,\n size: selection_size,\n empty: selection_empty,\n each: selection_each,\n attr: selection_attr,\n style: selection_style,\n property: selection_property,\n classed: selection_classed,\n text: selection_text,\n html: selection_html,\n raise: selection_raise,\n lower: selection_lower,\n append: selection_append,\n insert: selection_insert,\n remove: selection_remove,\n datum: selection_datum,\n on: selection_on,\n dispatch: selection_dispatch\n};\n\nexport default selection;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-selection/src/selection/index.js\n// module id = 1\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 11 12","import {dispatch} from \"d3-dispatch\";\nimport {timer, timeout} from \"d3-timer\";\n\nvar emptyOn = dispatch(\"start\", \"end\", \"interrupt\");\nvar emptyTween = [];\n\nexport var CREATED = 0;\nexport var SCHEDULED = 1;\nexport var STARTING = 2;\nexport var STARTED = 3;\nexport var RUNNING = 4;\nexport var ENDING = 5;\nexport var ENDED = 6;\n\nexport default function(node, name, id, index, group, timing) {\n var schedules = node.__transition;\n if (!schedules) node.__transition = {};\n else if (id in schedules) return;\n create(node, id, {\n name: name,\n index: index, // For context during callback.\n group: group, // For context during callback.\n on: emptyOn,\n tween: emptyTween,\n time: timing.time,\n delay: timing.delay,\n duration: timing.duration,\n ease: timing.ease,\n timer: null,\n state: CREATED\n });\n}\n\nexport function init(node, id) {\n var schedule = node.__transition;\n if (!schedule || !(schedule = schedule[id]) || schedule.state > CREATED) throw new Error(\"too late\");\n return schedule;\n}\n\nexport function set(node, id) {\n var schedule = node.__transition;\n if (!schedule || !(schedule = schedule[id]) || schedule.state > STARTING) throw new Error(\"too late\");\n return schedule;\n}\n\nexport function get(node, id) {\n var schedule = node.__transition;\n if (!schedule || !(schedule = schedule[id])) throw new Error(\"too late\");\n return schedule;\n}\n\nfunction create(node, id, self) {\n var schedules = node.__transition,\n tween;\n\n // Initialize the self timer when the transition is created.\n // Note the actual delay is not known until the first callback!\n schedules[id] = self;\n self.timer = timer(schedule, 0, self.time);\n\n function schedule(elapsed) {\n self.state = SCHEDULED;\n self.timer.restart(start, self.delay, self.time);\n\n // If the elapsed delay is less than our first sleep, start immediately.\n if (self.delay <= elapsed) start(elapsed - self.delay);\n }\n\n function start(elapsed) {\n var i, j, n, o;\n\n // If the state is not SCHEDULED, then we previously errored on start.\n if (self.state !== SCHEDULED) return stop();\n\n for (i in schedules) {\n o = schedules[i];\n if (o.name !== self.name) continue;\n\n // While this element already has a starting transition during this frame,\n // defer starting an interrupting transition until that transition has a\n // chance to tick (and possibly end); see d3/d3-transition#54!\n if (o.state === STARTED) return timeout(start);\n\n // Interrupt the active transition, if any.\n // Dispatch the interrupt event.\n if (o.state === RUNNING) {\n o.state = ENDED;\n o.timer.stop();\n o.on.call(\"interrupt\", node, node.__data__, o.index, o.group);\n delete schedules[i];\n }\n\n // Cancel any pre-empted transitions. No interrupt event is dispatched\n // because the cancelled transitions never started. Note that this also\n // removes this transition from the pending list!\n else if (+i < id) {\n o.state = ENDED;\n o.timer.stop();\n delete schedules[i];\n }\n }\n\n // Defer the first tick to end of the current frame; see d3/d3#1576.\n // Note the transition may be canceled after start and before the first tick!\n // Note this must be scheduled before the start event; see d3/d3-transition#16!\n // Assuming this is successful, subsequent callbacks go straight to tick.\n timeout(function() {\n if (self.state === STARTED) {\n self.state = RUNNING;\n self.timer.restart(tick, self.delay, self.time);\n tick(elapsed);\n }\n });\n\n // Dispatch the start event.\n // Note this must be done before the tween are initialized.\n self.state = STARTING;\n self.on.call(\"start\", node, node.__data__, self.index, self.group);\n if (self.state !== STARTING) return; // interrupted\n self.state = STARTED;\n\n // Initialize the tween, deleting null tween.\n tween = new Array(n = self.tween.length);\n for (i = 0, j = -1; i < n; ++i) {\n if (o = self.tween[i].value.call(node, node.__data__, self.index, self.group)) {\n tween[++j] = o;\n }\n }\n tween.length = j + 1;\n }\n\n function tick(elapsed) {\n var t = elapsed < self.duration ? self.ease.call(null, elapsed / self.duration) : (self.timer.restart(stop), self.state = ENDING, 1),\n i = -1,\n n = tween.length;\n\n while (++i < n) {\n tween[i].call(null, t);\n }\n\n // Dispatch the end event.\n if (self.state === ENDING) {\n self.on.call(\"end\", node, node.__data__, self.index, self.group);\n stop();\n }\n }\n\n function stop() {\n self.state = ENDED;\n self.timer.stop();\n delete schedules[id];\n for (var i in schedules) return; // eslint-disable-line no-unused-vars\n delete node.__transition;\n }\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-transition/src/transition/schedule.js\n// module id = 2\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 11 12","export {default as creator} from \"./src/creator\";\nexport {default as local} from \"./src/local\";\nexport {default as matcher} from \"./src/matcher\";\nexport {default as mouse} from \"./src/mouse\";\nexport {default as namespace} from \"./src/namespace\";\nexport {default as namespaces} from \"./src/namespaces\";\nexport {default as select} from \"./src/select\";\nexport {default as selectAll} from \"./src/selectAll\";\nexport {default as selection} from \"./src/selection/index\";\nexport {default as selector} from \"./src/selector\";\nexport {default as selectorAll} from \"./src/selectorAll\";\nexport {styleValue as style} from \"./src/selection/style\";\nexport {default as touch} from \"./src/touch\";\nexport {default as touches} from \"./src/touches\";\nexport {default as window} from \"./src/window\";\nexport {event, customEvent} from \"./src/selection/on\";\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-selection/index.js\n// module id = 3\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 11 12","export {default as bisect, bisectRight, bisectLeft} from \"./src/bisect\";\nexport {default as ascending} from \"./src/ascending\";\nexport {default as bisector} from \"./src/bisector\";\nexport {default as cross} from \"./src/cross\";\nexport {default as descending} from \"./src/descending\";\nexport {default as deviation} from \"./src/deviation\";\nexport {default as extent} from \"./src/extent\";\nexport {default as histogram} from \"./src/histogram\";\nexport {default as thresholdFreedmanDiaconis} from \"./src/threshold/freedmanDiaconis\";\nexport {default as thresholdScott} from \"./src/threshold/scott\";\nexport {default as thresholdSturges} from \"./src/threshold/sturges\";\nexport {default as max} from \"./src/max\";\nexport {default as mean} from \"./src/mean\";\nexport {default as median} from \"./src/median\";\nexport {default as merge} from \"./src/merge\";\nexport {default as min} from \"./src/min\";\nexport {default as pairs} from \"./src/pairs\";\nexport {default as permute} from \"./src/permute\";\nexport {default as quantile} from \"./src/quantile\";\nexport {default as range} from \"./src/range\";\nexport {default as scan} from \"./src/scan\";\nexport {default as shuffle} from \"./src/shuffle\";\nexport {default as sum} from \"./src/sum\";\nexport {default as ticks, tickIncrement, tickStep} from \"./src/ticks\";\nexport {default as transpose} from \"./src/transpose\";\nexport {default as variance} from \"./src/variance\";\nexport {default as zip} from \"./src/zip\";\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-array/index.js\n// module id = 4\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 12","import {selection} from \"d3-selection\";\nimport transition_attr from \"./attr\";\nimport transition_attrTween from \"./attrTween\";\nimport transition_delay from \"./delay\";\nimport transition_duration from \"./duration\";\nimport transition_ease from \"./ease\";\nimport transition_filter from \"./filter\";\nimport transition_merge from \"./merge\";\nimport transition_on from \"./on\";\nimport transition_remove from \"./remove\";\nimport transition_select from \"./select\";\nimport transition_selectAll from \"./selectAll\";\nimport transition_selection from \"./selection\";\nimport transition_style from \"./style\";\nimport transition_styleTween from \"./styleTween\";\nimport transition_text from \"./text\";\nimport transition_transition from \"./transition\";\nimport transition_tween from \"./tween\";\n\nvar id = 0;\n\nexport function Transition(groups, parents, name, id) {\n this._groups = groups;\n this._parents = parents;\n this._name = name;\n this._id = id;\n}\n\nexport default function transition(name) {\n return selection().transition(name);\n}\n\nexport function newId() {\n return ++id;\n}\n\nvar selection_prototype = selection.prototype;\n\nTransition.prototype = transition.prototype = {\n constructor: Transition,\n select: transition_select,\n selectAll: transition_selectAll,\n filter: transition_filter,\n merge: transition_merge,\n selection: transition_selection,\n transition: transition_transition,\n call: selection_prototype.call,\n nodes: selection_prototype.nodes,\n node: selection_prototype.node,\n size: selection_prototype.size,\n empty: selection_prototype.empty,\n each: selection_prototype.each,\n on: transition_on,\n attr: transition_attr,\n attrTween: transition_attrTween,\n style: transition_style,\n styleTween: transition_styleTween,\n text: transition_text,\n remove: transition_remove,\n tween: transition_tween,\n delay: transition_delay,\n duration: transition_duration,\n ease: transition_ease\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-transition/src/transition/index.js\n// module id = 6\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 11 12","export {default as color, rgb, hsl} from \"./src/color\";\nexport {default as lab, hcl} from \"./src/lab\";\nexport {default as cubehelix} from \"./src/cubehelix\";\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-color/index.js\n// module id = 7\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 11 12","export {default as interpolate} from \"./src/value\";\nexport {default as interpolateArray} from \"./src/array\";\nexport {default as interpolateBasis} from \"./src/basis\";\nexport {default as interpolateBasisClosed} from \"./src/basisClosed\";\nexport {default as interpolateDate} from \"./src/date\";\nexport {default as interpolateNumber} from \"./src/number\";\nexport {default as interpolateObject} from \"./src/object\";\nexport {default as interpolateRound} from \"./src/round\";\nexport {default as interpolateString} from \"./src/string\";\nexport {interpolateTransformCss, interpolateTransformSvg} from \"./src/transform/index\";\nexport {default as interpolateZoom} from \"./src/zoom\";\nexport {default as interpolateRgb, rgbBasis as interpolateRgbBasis, rgbBasisClosed as interpolateRgbBasisClosed} from \"./src/rgb\";\nexport {default as interpolateHsl, hslLong as interpolateHslLong} from \"./src/hsl\";\nexport {default as interpolateLab} from \"./src/lab\";\nexport {default as interpolateHcl, hclLong as interpolateHclLong} from \"./src/hcl\";\nexport {default as interpolateCubehelix, cubehelixLong as interpolateCubehelixLong} from \"./src/cubehelix\";\nexport {default as quantize} from \"./src/quantize\";\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-interpolate/index.js\n// module id = 8\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 11 12","export default function(a, b) {\n return a < b ? -1 : a > b ? 1 : a >= b ? 0 : NaN;\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-array/src/ascending.js\n// module id = 11\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 12","import constant from \"./constant\";\n\nfunction linear(a, d) {\n return function(t) {\n return a + t * d;\n };\n}\n\nfunction exponential(a, b, y) {\n return a = Math.pow(a, y), b = Math.pow(b, y) - a, y = 1 / y, function(t) {\n return Math.pow(a + t * b, y);\n };\n}\n\nexport function hue(a, b) {\n var d = b - a;\n return d ? linear(a, d > 180 || d < -180 ? d - 360 * Math.round(d / 360) : d) : constant(isNaN(a) ? b : a);\n}\n\nexport function gamma(y) {\n return (y = +y) === 1 ? nogamma : function(a, b) {\n return b - a ? exponential(a, b, y) : constant(isNaN(a) ? b : a);\n };\n}\n\nexport default function nogamma(a, b) {\n var d = b - a;\n return d ? linear(a, d) : constant(isNaN(a) ? b : a);\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-interpolate/src/color.js\n// module id = 12\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 11 12","export default function(x) {\n return x === null ? NaN : +x;\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-array/src/number.js\n// module id = 13\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 12","import formatDecimal from \"./formatDecimal\";\n\nexport default function(x) {\n return x = formatDecimal(Math.abs(x)), x ? x[1] : NaN;\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-format/src/exponent.js\n// module id = 19\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 11 12","export default function(a, b) {\n return a = +a, b -= a, function(t) {\n return a + b * t;\n };\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-interpolate/src/number.js\n// module id = 20\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 11 12","import {get, set} from \"./schedule\";\n\nfunction tweenRemove(id, name) {\n var tween0, tween1;\n return function() {\n var schedule = set(this, id),\n tween = schedule.tween;\n\n // If this node shared tween with the previous node,\n // just assign the updated shared tween and we’re done!\n // Otherwise, copy-on-write.\n if (tween !== tween0) {\n tween1 = tween0 = tween;\n for (var i = 0, n = tween1.length; i < n; ++i) {\n if (tween1[i].name === name) {\n tween1 = tween1.slice();\n tween1.splice(i, 1);\n break;\n }\n }\n }\n\n schedule.tween = tween1;\n };\n}\n\nfunction tweenFunction(id, name, value) {\n var tween0, tween1;\n if (typeof value !== \"function\") throw new Error;\n return function() {\n var schedule = set(this, id),\n tween = schedule.tween;\n\n // If this node shared tween with the previous node,\n // just assign the updated shared tween and we’re done!\n // Otherwise, copy-on-write.\n if (tween !== tween0) {\n tween1 = (tween0 = tween).slice();\n for (var t = {name: name, value: value}, i = 0, n = tween1.length; i < n; ++i) {\n if (tween1[i].name === name) {\n tween1[i] = t;\n break;\n }\n }\n if (i === n) tween1.push(t);\n }\n\n schedule.tween = tween1;\n };\n}\n\nexport default function(name, value) {\n var id = this._id;\n\n name += \"\";\n\n if (arguments.length < 2) {\n var tween = get(this.node(), id).tween;\n for (var i = 0, n = tween.length, t; i < n; ++i) {\n if ((t = tween[i]).name === name) {\n return t.value;\n }\n }\n return null;\n }\n\n return this.each((value == null ? tweenRemove : tweenFunction)(id, name, value));\n}\n\nexport function tweenValue(transition, name, value) {\n var id = transition._id;\n\n transition.each(function() {\n var schedule = set(this, id);\n (schedule.value || (schedule.value = {}))[name] = value.apply(this, arguments);\n });\n\n return function(node) {\n return get(node, id).value[name];\n };\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-transition/src/transition/tween.js\n// module id = 21\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 11 12","export {default as formatDefaultLocale, format, formatPrefix} from \"./src/defaultLocale\";\nexport {default as formatLocale} from \"./src/locale\";\nexport {default as formatSpecifier} from \"./src/formatSpecifier\";\nexport {default as precisionFixed} from \"./src/precisionFixed\";\nexport {default as precisionPrefix} from \"./src/precisionPrefix\";\nexport {default as precisionRound} from \"./src/precisionRound\";\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-format/index.js\n// module id = 27\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 11 12","import define, {extend} from \"./define\";\n\nexport function Color() {}\n\nexport var darker = 0.7;\nexport var brighter = 1 / darker;\n\nvar reI = \"\\\\s*([+-]?\\\\d+)\\\\s*\",\n reN = \"\\\\s*([+-]?\\\\d*\\\\.?\\\\d+(?:[eE][+-]?\\\\d+)?)\\\\s*\",\n reP = \"\\\\s*([+-]?\\\\d*\\\\.?\\\\d+(?:[eE][+-]?\\\\d+)?)%\\\\s*\",\n reHex3 = /^#([0-9a-f]{3})$/,\n reHex6 = /^#([0-9a-f]{6})$/,\n reRgbInteger = new RegExp(\"^rgb\\\\(\" + [reI, reI, reI] + \"\\\\)$\"),\n reRgbPercent = new RegExp(\"^rgb\\\\(\" + [reP, reP, reP] + \"\\\\)$\"),\n reRgbaInteger = new RegExp(\"^rgba\\\\(\" + [reI, reI, reI, reN] + \"\\\\)$\"),\n reRgbaPercent = new RegExp(\"^rgba\\\\(\" + [reP, reP, reP, reN] + \"\\\\)$\"),\n reHslPercent = new RegExp(\"^hsl\\\\(\" + [reN, reP, reP] + \"\\\\)$\"),\n reHslaPercent = new RegExp(\"^hsla\\\\(\" + [reN, reP, reP, reN] + \"\\\\)$\");\n\nvar named = {\n aliceblue: 0xf0f8ff,\n antiquewhite: 0xfaebd7,\n aqua: 0x00ffff,\n aquamarine: 0x7fffd4,\n azure: 0xf0ffff,\n beige: 0xf5f5dc,\n bisque: 0xffe4c4,\n black: 0x000000,\n blanchedalmond: 0xffebcd,\n blue: 0x0000ff,\n blueviolet: 0x8a2be2,\n brown: 0xa52a2a,\n burlywood: 0xdeb887,\n cadetblue: 0x5f9ea0,\n chartreuse: 0x7fff00,\n chocolate: 0xd2691e,\n coral: 0xff7f50,\n cornflowerblue: 0x6495ed,\n cornsilk: 0xfff8dc,\n crimson: 0xdc143c,\n cyan: 0x00ffff,\n darkblue: 0x00008b,\n darkcyan: 0x008b8b,\n darkgoldenrod: 0xb8860b,\n darkgray: 0xa9a9a9,\n darkgreen: 0x006400,\n darkgrey: 0xa9a9a9,\n darkkhaki: 0xbdb76b,\n darkmagenta: 0x8b008b,\n darkolivegreen: 0x556b2f,\n darkorange: 0xff8c00,\n darkorchid: 0x9932cc,\n darkred: 0x8b0000,\n darksalmon: 0xe9967a,\n darkseagreen: 0x8fbc8f,\n darkslateblue: 0x483d8b,\n darkslategray: 0x2f4f4f,\n darkslategrey: 0x2f4f4f,\n darkturquoise: 0x00ced1,\n darkviolet: 0x9400d3,\n deeppink: 0xff1493,\n deepskyblue: 0x00bfff,\n dimgray: 0x696969,\n dimgrey: 0x696969,\n dodgerblue: 0x1e90ff,\n firebrick: 0xb22222,\n floralwhite: 0xfffaf0,\n forestgreen: 0x228b22,\n fuchsia: 0xff00ff,\n gainsboro: 0xdcdcdc,\n ghostwhite: 0xf8f8ff,\n gold: 0xffd700,\n goldenrod: 0xdaa520,\n gray: 0x808080,\n green: 0x008000,\n greenyellow: 0xadff2f,\n grey: 0x808080,\n honeydew: 0xf0fff0,\n hotpink: 0xff69b4,\n indianred: 0xcd5c5c,\n indigo: 0x4b0082,\n ivory: 0xfffff0,\n khaki: 0xf0e68c,\n lavender: 0xe6e6fa,\n lavenderblush: 0xfff0f5,\n lawngreen: 0x7cfc00,\n lemonchiffon: 0xfffacd,\n lightblue: 0xadd8e6,\n lightcoral: 0xf08080,\n lightcyan: 0xe0ffff,\n lightgoldenrodyellow: 0xfafad2,\n lightgray: 0xd3d3d3,\n lightgreen: 0x90ee90,\n lightgrey: 0xd3d3d3,\n lightpink: 0xffb6c1,\n lightsalmon: 0xffa07a,\n lightseagreen: 0x20b2aa,\n lightskyblue: 0x87cefa,\n lightslategray: 0x778899,\n lightslategrey: 0x778899,\n lightsteelblue: 0xb0c4de,\n lightyellow: 0xffffe0,\n lime: 0x00ff00,\n limegreen: 0x32cd32,\n linen: 0xfaf0e6,\n magenta: 0xff00ff,\n maroon: 0x800000,\n mediumaquamarine: 0x66cdaa,\n mediumblue: 0x0000cd,\n mediumorchid: 0xba55d3,\n mediumpurple: 0x9370db,\n mediumseagreen: 0x3cb371,\n mediumslateblue: 0x7b68ee,\n mediumspringgreen: 0x00fa9a,\n mediumturquoise: 0x48d1cc,\n mediumvioletred: 0xc71585,\n midnightblue: 0x191970,\n mintcream: 0xf5fffa,\n mistyrose: 0xffe4e1,\n moccasin: 0xffe4b5,\n navajowhite: 0xffdead,\n navy: 0x000080,\n oldlace: 0xfdf5e6,\n olive: 0x808000,\n olivedrab: 0x6b8e23,\n orange: 0xffa500,\n orangered: 0xff4500,\n orchid: 0xda70d6,\n palegoldenrod: 0xeee8aa,\n palegreen: 0x98fb98,\n paleturquoise: 0xafeeee,\n palevioletred: 0xdb7093,\n papayawhip: 0xffefd5,\n peachpuff: 0xffdab9,\n peru: 0xcd853f,\n pink: 0xffc0cb,\n plum: 0xdda0dd,\n powderblue: 0xb0e0e6,\n purple: 0x800080,\n rebeccapurple: 0x663399,\n red: 0xff0000,\n rosybrown: 0xbc8f8f,\n royalblue: 0x4169e1,\n saddlebrown: 0x8b4513,\n salmon: 0xfa8072,\n sandybrown: 0xf4a460,\n seagreen: 0x2e8b57,\n seashell: 0xfff5ee,\n sienna: 0xa0522d,\n silver: 0xc0c0c0,\n skyblue: 0x87ceeb,\n slateblue: 0x6a5acd,\n slategray: 0x708090,\n slategrey: 0x708090,\n snow: 0xfffafa,\n springgreen: 0x00ff7f,\n steelblue: 0x4682b4,\n tan: 0xd2b48c,\n teal: 0x008080,\n thistle: 0xd8bfd8,\n tomato: 0xff6347,\n turquoise: 0x40e0d0,\n violet: 0xee82ee,\n wheat: 0xf5deb3,\n white: 0xffffff,\n whitesmoke: 0xf5f5f5,\n yellow: 0xffff00,\n yellowgreen: 0x9acd32\n};\n\ndefine(Color, color, {\n displayable: function() {\n return this.rgb().displayable();\n },\n toString: function() {\n return this.rgb() + \"\";\n }\n});\n\nexport default function color(format) {\n var m;\n format = (format + \"\").trim().toLowerCase();\n return (m = reHex3.exec(format)) ? (m = parseInt(m[1], 16), new Rgb((m >> 8 & 0xf) | (m >> 4 & 0x0f0), (m >> 4 & 0xf) | (m & 0xf0), ((m & 0xf) << 4) | (m & 0xf), 1)) // #f00\n : (m = reHex6.exec(format)) ? rgbn(parseInt(m[1], 16)) // #ff0000\n : (m = reRgbInteger.exec(format)) ? new Rgb(m[1], m[2], m[3], 1) // rgb(255, 0, 0)\n : (m = reRgbPercent.exec(format)) ? new Rgb(m[1] * 255 / 100, m[2] * 255 / 100, m[3] * 255 / 100, 1) // rgb(100%, 0%, 0%)\n : (m = reRgbaInteger.exec(format)) ? rgba(m[1], m[2], m[3], m[4]) // rgba(255, 0, 0, 1)\n : (m = reRgbaPercent.exec(format)) ? rgba(m[1] * 255 / 100, m[2] * 255 / 100, m[3] * 255 / 100, m[4]) // rgb(100%, 0%, 0%, 1)\n : (m = reHslPercent.exec(format)) ? hsla(m[1], m[2] / 100, m[3] / 100, 1) // hsl(120, 50%, 50%)\n : (m = reHslaPercent.exec(format)) ? hsla(m[1], m[2] / 100, m[3] / 100, m[4]) // hsla(120, 50%, 50%, 1)\n : named.hasOwnProperty(format) ? rgbn(named[format])\n : format === \"transparent\" ? new Rgb(NaN, NaN, NaN, 0)\n : null;\n}\n\nfunction rgbn(n) {\n return new Rgb(n >> 16 & 0xff, n >> 8 & 0xff, n & 0xff, 1);\n}\n\nfunction rgba(r, g, b, a) {\n if (a <= 0) r = g = b = NaN;\n return new Rgb(r, g, b, a);\n}\n\nexport function rgbConvert(o) {\n if (!(o instanceof Color)) o = color(o);\n if (!o) return new Rgb;\n o = o.rgb();\n return new Rgb(o.r, o.g, o.b, o.opacity);\n}\n\nexport function rgb(r, g, b, opacity) {\n return arguments.length === 1 ? rgbConvert(r) : new Rgb(r, g, b, opacity == null ? 1 : opacity);\n}\n\nexport function Rgb(r, g, b, opacity) {\n this.r = +r;\n this.g = +g;\n this.b = +b;\n this.opacity = +opacity;\n}\n\ndefine(Rgb, rgb, extend(Color, {\n brighter: function(k) {\n k = k == null ? brighter : Math.pow(brighter, k);\n return new Rgb(this.r * k, this.g * k, this.b * k, this.opacity);\n },\n darker: function(k) {\n k = k == null ? darker : Math.pow(darker, k);\n return new Rgb(this.r * k, this.g * k, this.b * k, this.opacity);\n },\n rgb: function() {\n return this;\n },\n displayable: function() {\n return (0 <= this.r && this.r <= 255)\n && (0 <= this.g && this.g <= 255)\n && (0 <= this.b && this.b <= 255)\n && (0 <= this.opacity && this.opacity <= 1);\n },\n toString: function() {\n var a = this.opacity; a = isNaN(a) ? 1 : Math.max(0, Math.min(1, a));\n return (a === 1 ? \"rgb(\" : \"rgba(\")\n + Math.max(0, Math.min(255, Math.round(this.r) || 0)) + \", \"\n + Math.max(0, Math.min(255, Math.round(this.g) || 0)) + \", \"\n + Math.max(0, Math.min(255, Math.round(this.b) || 0))\n + (a === 1 ? \")\" : \", \" + a + \")\");\n }\n}));\n\nfunction hsla(h, s, l, a) {\n if (a <= 0) h = s = l = NaN;\n else if (l <= 0 || l >= 1) h = s = NaN;\n else if (s <= 0) h = NaN;\n return new Hsl(h, s, l, a);\n}\n\nexport function hslConvert(o) {\n if (o instanceof Hsl) return new Hsl(o.h, o.s, o.l, o.opacity);\n if (!(o instanceof Color)) o = color(o);\n if (!o) return new Hsl;\n if (o instanceof Hsl) return o;\n o = o.rgb();\n var r = o.r / 255,\n g = o.g / 255,\n b = o.b / 255,\n min = Math.min(r, g, b),\n max = Math.max(r, g, b),\n h = NaN,\n s = max - min,\n l = (max + min) / 2;\n if (s) {\n if (r === max) h = (g - b) / s + (g < b) * 6;\n else if (g === max) h = (b - r) / s + 2;\n else h = (r - g) / s + 4;\n s /= l < 0.5 ? max + min : 2 - max - min;\n h *= 60;\n } else {\n s = l > 0 && l < 1 ? 0 : h;\n }\n return new Hsl(h, s, l, o.opacity);\n}\n\nexport function hsl(h, s, l, opacity) {\n return arguments.length === 1 ? hslConvert(h) : new Hsl(h, s, l, opacity == null ? 1 : opacity);\n}\n\nfunction Hsl(h, s, l, opacity) {\n this.h = +h;\n this.s = +s;\n this.l = +l;\n this.opacity = +opacity;\n}\n\ndefine(Hsl, hsl, extend(Color, {\n brighter: function(k) {\n k = k == null ? brighter : Math.pow(brighter, k);\n return new Hsl(this.h, this.s, this.l * k, this.opacity);\n },\n darker: function(k) {\n k = k == null ? darker : Math.pow(darker, k);\n return new Hsl(this.h, this.s, this.l * k, this.opacity);\n },\n rgb: function() {\n var h = this.h % 360 + (this.h < 0) * 360,\n s = isNaN(h) || isNaN(this.s) ? 0 : this.s,\n l = this.l,\n m2 = l + (l < 0.5 ? l : 1 - l) * s,\n m1 = 2 * l - m2;\n return new Rgb(\n hsl2rgb(h >= 240 ? h - 240 : h + 120, m1, m2),\n hsl2rgb(h, m1, m2),\n hsl2rgb(h < 120 ? h + 240 : h - 120, m1, m2),\n this.opacity\n );\n },\n displayable: function() {\n return (0 <= this.s && this.s <= 1 || isNaN(this.s))\n && (0 <= this.l && this.l <= 1)\n && (0 <= this.opacity && this.opacity <= 1);\n }\n}));\n\n/* From FvD 13.37, CSS Color Module Level 3 */\nfunction hsl2rgb(h, m1, m2) {\n return (h < 60 ? m1 + (m2 - m1) * h / 60\n : h < 180 ? m2\n : h < 240 ? m1 + (m2 - m1) * (240 - h) / 60\n : m1) * 255;\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-color/src/color.js\n// module id = 28\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 11 12","export default function(constructor, factory, prototype) {\n constructor.prototype = factory.prototype = prototype;\n prototype.constructor = constructor;\n}\n\nexport function extend(parent, definition) {\n var prototype = Object.create(parent.prototype);\n for (var key in definition) prototype[key] = definition[key];\n return prototype;\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-color/src/define.js\n// module id = 29\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 11 12","// Computes the decimal coefficient and exponent of the specified number x with\n// significant digits p, where x is positive and p is in [1, 21] or undefined.\n// For example, formatDecimal(1.23) returns [\"123\", 0].\nexport default function(x, p) {\n if ((i = (x = p ? x.toExponential(p - 1) : x.toExponential()).indexOf(\"e\")) < 0) return null; // NaN, ±Infinity\n var i, coefficient = x.slice(0, i);\n\n // The string returned by toExponential either has the form \\d\\.\\d+e[-+]\\d+\n // (e.g., 1.2e+3) or the form \\de[-+]\\d+ (e.g., 1e+3).\n return [\n coefficient.length > 1 ? coefficient[0] + coefficient.slice(2) : coefficient,\n +x.slice(i + 1)\n ];\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-format/src/formatDecimal.js\n// module id = 30\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 11 12","import {color} from \"d3-color\";\nimport rgb from \"./rgb\";\nimport array from \"./array\";\nimport date from \"./date\";\nimport number from \"./number\";\nimport object from \"./object\";\nimport string from \"./string\";\nimport constant from \"./constant\";\n\nexport default function(a, b) {\n var t = typeof b, c;\n return b == null || t === \"boolean\" ? constant(b)\n : (t === \"number\" ? number\n : t === \"string\" ? ((c = color(b)) ? (b = c, rgb) : string)\n : b instanceof color ? rgb\n : b instanceof Date ? date\n : Array.isArray(b) ? array\n : typeof b.valueOf !== \"function\" && typeof b.toString !== \"function\" || isNaN(b) ? object\n : number)(a, b);\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-interpolate/src/value.js\n// module id = 31\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 11 12","export function basis(t1, v0, v1, v2, v3) {\n var t2 = t1 * t1, t3 = t2 * t1;\n return ((1 - 3 * t1 + 3 * t2 - t3) * v0\n + (4 - 6 * t2 + 3 * t3) * v1\n + (1 + 3 * t1 + 3 * t2 - 3 * t3) * v2\n + t3 * v3) / 6;\n}\n\nexport default function(values) {\n var n = values.length - 1;\n return function(t) {\n var i = t <= 0 ? (t = 0) : t >= 1 ? (t = 1, n - 1) : Math.floor(t * n),\n v1 = values[i],\n v2 = values[i + 1],\n v0 = i > 0 ? values[i - 1] : 2 * v1 - v2,\n v3 = i < n - 1 ? values[i + 2] : 2 * v2 - v1;\n return basis((t - i / n) * n, v0, v1, v2, v3);\n };\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-interpolate/src/basis.js\n// module id = 32\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 11 12","import namespace from \"./namespace\";\nimport {xhtml} from \"./namespaces\";\n\nfunction creatorInherit(name) {\n return function() {\n var document = this.ownerDocument,\n uri = this.namespaceURI;\n return uri === xhtml && document.documentElement.namespaceURI === xhtml\n ? document.createElement(name)\n : document.createElementNS(uri, name);\n };\n}\n\nfunction creatorFixed(fullname) {\n return function() {\n return this.ownerDocument.createElementNS(fullname.space, fullname.local);\n };\n}\n\nexport default function(name) {\n var fullname = namespace(name);\n return (fullname.local\n ? creatorFixed\n : creatorInherit)(fullname);\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-selection/src/creator.js\n// module id = 33\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 11 12","import namespaces from \"./namespaces\";\n\nexport default function(name) {\n var prefix = name += \"\", i = prefix.indexOf(\":\");\n if (i >= 0 && (prefix = name.slice(0, i)) !== \"xmlns\") name = name.slice(i + 1);\n return namespaces.hasOwnProperty(prefix) ? {space: namespaces[prefix], local: name} : name;\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-selection/src/namespace.js\n// module id = 34\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 11 12","export var xhtml = \"http://www.w3.org/1999/xhtml\";\n\nexport default {\n svg: \"http://www.w3.org/2000/svg\",\n xhtml: xhtml,\n xlink: \"http://www.w3.org/1999/xlink\",\n xml: \"http://www.w3.org/XML/1998/namespace\",\n xmlns: \"http://www.w3.org/2000/xmlns/\"\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-selection/src/namespaces.js\n// module id = 35\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 11 12","import {event} from \"./selection/on\";\n\nexport default function() {\n var current = event, source;\n while (source = current.sourceEvent) current = source;\n return current;\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-selection/src/sourceEvent.js\n// module id = 36\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 11 12","var filterEvents = {};\n\nexport var event = null;\n\nif (typeof document !== \"undefined\") {\n var element = document.documentElement;\n if (!(\"onmouseenter\" in element)) {\n filterEvents = {mouseenter: \"mouseover\", mouseleave: \"mouseout\"};\n }\n}\n\nfunction filterContextListener(listener, index, group) {\n listener = contextListener(listener, index, group);\n return function(event) {\n var related = event.relatedTarget;\n if (!related || (related !== this && !(related.compareDocumentPosition(this) & 8))) {\n listener.call(this, event);\n }\n };\n}\n\nfunction contextListener(listener, index, group) {\n return function(event1) {\n var event0 = event; // Events can be reentrant (e.g., focus).\n event = event1;\n try {\n listener.call(this, this.__data__, index, group);\n } finally {\n event = event0;\n }\n };\n}\n\nfunction parseTypenames(typenames) {\n return typenames.trim().split(/^|\\s+/).map(function(t) {\n var name = \"\", i = t.indexOf(\".\");\n if (i >= 0) name = t.slice(i + 1), t = t.slice(0, i);\n return {type: t, name: name};\n });\n}\n\nfunction onRemove(typename) {\n return function() {\n var on = this.__on;\n if (!on) return;\n for (var j = 0, i = -1, m = on.length, o; j < m; ++j) {\n if (o = on[j], (!typename.type || o.type === typename.type) && o.name === typename.name) {\n this.removeEventListener(o.type, o.listener, o.capture);\n } else {\n on[++i] = o;\n }\n }\n if (++i) on.length = i;\n else delete this.__on;\n };\n}\n\nfunction onAdd(typename, value, capture) {\n var wrap = filterEvents.hasOwnProperty(typename.type) ? filterContextListener : contextListener;\n return function(d, i, group) {\n var on = this.__on, o, listener = wrap(value, i, group);\n if (on) for (var j = 0, m = on.length; j < m; ++j) {\n if ((o = on[j]).type === typename.type && o.name === typename.name) {\n this.removeEventListener(o.type, o.listener, o.capture);\n this.addEventListener(o.type, o.listener = listener, o.capture = capture);\n o.value = value;\n return;\n }\n }\n this.addEventListener(typename.type, listener, capture);\n o = {type: typename.type, name: typename.name, value: value, listener: listener, capture: capture};\n if (!on) this.__on = [o];\n else on.push(o);\n };\n}\n\nexport default function(typename, value, capture) {\n var typenames = parseTypenames(typename + \"\"), i, n = typenames.length, t;\n\n if (arguments.length < 2) {\n var on = this.node().__on;\n if (on) for (var j = 0, m = on.length, o; j < m; ++j) {\n for (i = 0, o = on[j]; i < n; ++i) {\n if ((t = typenames[i]).type === o.type && t.name === o.name) {\n return o.value;\n }\n }\n }\n return;\n }\n\n on = value ? onAdd : onRemove;\n if (capture == null) capture = false;\n for (i = 0; i < n; ++i) this.each(on(typenames[i], value, capture));\n return this;\n}\n\nexport function customEvent(event1, listener, that, args) {\n var event0 = event;\n event1.sourceEvent = event;\n event = event1;\n try {\n return listener.apply(that, args);\n } finally {\n event = event0;\n }\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-selection/src/selection/on.js\n// module id = 37\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 11 12","export default function(node, event) {\n var svg = node.ownerSVGElement || node;\n\n if (svg.createSVGPoint) {\n var point = svg.createSVGPoint();\n point.x = event.clientX, point.y = event.clientY;\n point = point.matrixTransform(node.getScreenCTM().inverse());\n return [point.x, point.y];\n }\n\n var rect = node.getBoundingClientRect();\n return [event.clientX - rect.left - node.clientLeft, event.clientY - rect.top - node.clientTop];\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-selection/src/point.js\n// module id = 38\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 11 12","function none() {}\n\nexport default function(selector) {\n return selector == null ? none : function() {\n return this.querySelector(selector);\n };\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-selection/src/selector.js\n// module id = 39\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 11 12","export default function(node) {\n return (node.ownerDocument && node.ownerDocument.defaultView) // node is a Node\n || (node.document && node) // node is a Window\n || node.defaultView; // node is a Document\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-selection/src/window.js\n// module id = 40\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 11 12","var frame = 0, // is an animation frame pending?\n timeout = 0, // is a timeout pending?\n interval = 0, // are any timers active?\n pokeDelay = 1000, // how frequently we check for clock skew\n taskHead,\n taskTail,\n clockLast = 0,\n clockNow = 0,\n clockSkew = 0,\n clock = typeof performance === \"object\" && performance.now ? performance : Date,\n setFrame = typeof window === \"object\" && window.requestAnimationFrame ? window.requestAnimationFrame.bind(window) : function(f) { setTimeout(f, 17); };\n\nexport function now() {\n return clockNow || (setFrame(clearNow), clockNow = clock.now() + clockSkew);\n}\n\nfunction clearNow() {\n clockNow = 0;\n}\n\nexport function Timer() {\n this._call =\n this._time =\n this._next = null;\n}\n\nTimer.prototype = timer.prototype = {\n constructor: Timer,\n restart: function(callback, delay, time) {\n if (typeof callback !== \"function\") throw new TypeError(\"callback is not a function\");\n time = (time == null ? now() : +time) + (delay == null ? 0 : +delay);\n if (!this._next && taskTail !== this) {\n if (taskTail) taskTail._next = this;\n else taskHead = this;\n taskTail = this;\n }\n this._call = callback;\n this._time = time;\n sleep();\n },\n stop: function() {\n if (this._call) {\n this._call = null;\n this._time = Infinity;\n sleep();\n }\n }\n};\n\nexport function timer(callback, delay, time) {\n var t = new Timer;\n t.restart(callback, delay, time);\n return t;\n}\n\nexport function timerFlush() {\n now(); // Get the current time, if not already set.\n ++frame; // Pretend we’ve set an alarm, if we haven’t already.\n var t = taskHead, e;\n while (t) {\n if ((e = clockNow - t._time) >= 0) t._call.call(null, e);\n t = t._next;\n }\n --frame;\n}\n\nfunction wake() {\n clockNow = (clockLast = clock.now()) + clockSkew;\n frame = timeout = 0;\n try {\n timerFlush();\n } finally {\n frame = 0;\n nap();\n clockNow = 0;\n }\n}\n\nfunction poke() {\n var now = clock.now(), delay = now - clockLast;\n if (delay > pokeDelay) clockSkew -= delay, clockLast = now;\n}\n\nfunction nap() {\n var t0, t1 = taskHead, t2, time = Infinity;\n while (t1) {\n if (t1._call) {\n if (time > t1._time) time = t1._time;\n t0 = t1, t1 = t1._next;\n } else {\n t2 = t1._next, t1._next = null;\n t1 = t0 ? t0._next = t2 : taskHead = t2;\n }\n }\n taskTail = t0;\n sleep(time);\n}\n\nfunction sleep(time) {\n if (frame) return; // Soonest alarm already set, or will be.\n if (timeout) timeout = clearTimeout(timeout);\n var delay = time - clockNow;\n if (delay > 24) {\n if (time < Infinity) timeout = setTimeout(wake, delay);\n if (interval) interval = clearInterval(interval);\n } else {\n if (!interval) clockLast = clockNow, interval = setInterval(poke, pokeDelay);\n frame = 1, setFrame(wake);\n }\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-timer/src/timer.js\n// module id = 41\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 11 12","import number from \"./number\";\n\nexport default function(values, p, valueof) {\n if (valueof == null) valueof = number;\n if (!(n = values.length)) return;\n if ((p = +p) <= 0 || n < 2) return +valueof(values[0], 0, values);\n if (p >= 1) return +valueof(values[n - 1], n - 1, values);\n var n,\n i = (n - 1) * p,\n i0 = Math.floor(i),\n value0 = +valueof(values[i0], i0, values),\n value1 = +valueof(values[i0 + 1], i0 + 1, values);\n return value0 + (value1 - value0) * (i - i0);\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-array/src/quantile.js\n// module id = 43\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 12","export var deg2rad = Math.PI / 180;\nexport var rad2deg = 180 / Math.PI;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-color/src/math.js\n// module id = 52\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 11 12","import exponent from \"./exponent\";\nimport formatGroup from \"./formatGroup\";\nimport formatNumerals from \"./formatNumerals\";\nimport formatSpecifier from \"./formatSpecifier\";\nimport formatTypes from \"./formatTypes\";\nimport {prefixExponent} from \"./formatPrefixAuto\";\nimport identity from \"./identity\";\n\nvar prefixes = [\"y\",\"z\",\"a\",\"f\",\"p\",\"n\",\"µ\",\"m\",\"\",\"k\",\"M\",\"G\",\"T\",\"P\",\"E\",\"Z\",\"Y\"];\n\nexport default function(locale) {\n var group = locale.grouping && locale.thousands ? formatGroup(locale.grouping, locale.thousands) : identity,\n currency = locale.currency,\n decimal = locale.decimal,\n numerals = locale.numerals ? formatNumerals(locale.numerals) : identity,\n percent = locale.percent || \"%\";\n\n function newFormat(specifier) {\n specifier = formatSpecifier(specifier);\n\n var fill = specifier.fill,\n align = specifier.align,\n sign = specifier.sign,\n symbol = specifier.symbol,\n zero = specifier.zero,\n width = specifier.width,\n comma = specifier.comma,\n precision = specifier.precision,\n type = specifier.type;\n\n // Compute the prefix and suffix.\n // For SI-prefix, the suffix is lazily computed.\n var prefix = symbol === \"$\" ? currency[0] : symbol === \"#\" && /[boxX]/.test(type) ? \"0\" + type.toLowerCase() : \"\",\n suffix = symbol === \"$\" ? currency[1] : /[%p]/.test(type) ? percent : \"\";\n\n // What format function should we use?\n // Is this an integer type?\n // Can this type generate exponential notation?\n var formatType = formatTypes[type],\n maybeSuffix = !type || /[defgprs%]/.test(type);\n\n // Set the default precision if not specified,\n // or clamp the specified precision to the supported range.\n // For significant precision, it must be in [1, 21].\n // For fixed precision, it must be in [0, 20].\n precision = precision == null ? (type ? 6 : 12)\n : /[gprs]/.test(type) ? Math.max(1, Math.min(21, precision))\n : Math.max(0, Math.min(20, precision));\n\n function format(value) {\n var valuePrefix = prefix,\n valueSuffix = suffix,\n i, n, c;\n\n if (type === \"c\") {\n valueSuffix = formatType(value) + valueSuffix;\n value = \"\";\n } else {\n value = +value;\n\n // Perform the initial formatting.\n var valueNegative = value < 0;\n value = formatType(Math.abs(value), precision);\n\n // If a negative value rounds to zero during formatting, treat as positive.\n if (valueNegative && +value === 0) valueNegative = false;\n\n // Compute the prefix and suffix.\n valuePrefix = (valueNegative ? (sign === \"(\" ? sign : \"-\") : sign === \"-\" || sign === \"(\" ? \"\" : sign) + valuePrefix;\n valueSuffix = valueSuffix + (type === \"s\" ? prefixes[8 + prefixExponent / 3] : \"\") + (valueNegative && sign === \"(\" ? \")\" : \"\");\n\n // Break the formatted value into the integer “value” part that can be\n // grouped, and fractional or exponential “suffix” part that is not.\n if (maybeSuffix) {\n i = -1, n = value.length;\n while (++i < n) {\n if (c = value.charCodeAt(i), 48 > c || c > 57) {\n valueSuffix = (c === 46 ? decimal + value.slice(i + 1) : value.slice(i)) + valueSuffix;\n value = value.slice(0, i);\n break;\n }\n }\n }\n }\n\n // If the fill character is not \"0\", grouping is applied before padding.\n if (comma && !zero) value = group(value, Infinity);\n\n // Compute the padding.\n var length = valuePrefix.length + value.length + valueSuffix.length,\n padding = length < width ? new Array(width - length + 1).join(fill) : \"\";\n\n // If the fill character is \"0\", grouping is applied after padding.\n if (comma && zero) value = group(padding + value, padding.length ? width - valueSuffix.length : Infinity), padding = \"\";\n\n // Reconstruct the final output based on the desired alignment.\n switch (align) {\n case \"<\": value = valuePrefix + value + valueSuffix + padding; break;\n case \"=\": value = valuePrefix + padding + value + valueSuffix; break;\n case \"^\": value = padding.slice(0, length = padding.length >> 1) + valuePrefix + value + valueSuffix + padding.slice(length); break;\n default: value = padding + valuePrefix + value + valueSuffix; break;\n }\n\n return numerals(value);\n }\n\n format.toString = function() {\n return specifier + \"\";\n };\n\n return format;\n }\n\n function formatPrefix(specifier, value) {\n var f = newFormat((specifier = formatSpecifier(specifier), specifier.type = \"f\", specifier)),\n e = Math.max(-8, Math.min(8, Math.floor(exponent(value) / 3))) * 3,\n k = Math.pow(10, -e),\n prefix = prefixes[8 + e / 3];\n return function(value) {\n return f(k * value) + prefix;\n };\n }\n\n return {\n format: newFormat,\n formatPrefix: formatPrefix\n };\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-format/src/locale.js\n// module id = 53\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 11 12","import formatTypes from \"./formatTypes\";\n\n// [[fill]align][sign][symbol][0][width][,][.precision][type]\nvar re = /^(?:(.)?([<>=^]))?([+\\-\\( ])?([$#])?(0)?(\\d+)?(,)?(\\.\\d+)?([a-z%])?$/i;\n\nexport default function formatSpecifier(specifier) {\n return new FormatSpecifier(specifier);\n}\n\nformatSpecifier.prototype = FormatSpecifier.prototype; // instanceof\n\nfunction FormatSpecifier(specifier) {\n if (!(match = re.exec(specifier))) throw new Error(\"invalid format: \" + specifier);\n\n var match,\n fill = match[1] || \" \",\n align = match[2] || \">\",\n sign = match[3] || \"-\",\n symbol = match[4] || \"\",\n zero = !!match[5],\n width = match[6] && +match[6],\n comma = !!match[7],\n precision = match[8] && +match[8].slice(1),\n type = match[9] || \"\";\n\n // The \"n\" type is an alias for \",g\".\n if (type === \"n\") comma = true, type = \"g\";\n\n // Map invalid types to the default format.\n else if (!formatTypes[type]) type = \"\";\n\n // If zero fill is specified, padding goes after sign and before digits.\n if (zero || (fill === \"0\" && align === \"=\")) zero = true, fill = \"0\", align = \"=\";\n\n this.fill = fill;\n this.align = align;\n this.sign = sign;\n this.symbol = symbol;\n this.zero = zero;\n this.width = width;\n this.comma = comma;\n this.precision = precision;\n this.type = type;\n}\n\nFormatSpecifier.prototype.toString = function() {\n return this.fill\n + this.align\n + this.sign\n + this.symbol\n + (this.zero ? \"0\" : \"\")\n + (this.width == null ? \"\" : Math.max(1, this.width | 0))\n + (this.comma ? \",\" : \"\")\n + (this.precision == null ? \"\" : \".\" + Math.max(0, this.precision | 0))\n + this.type;\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-format/src/formatSpecifier.js\n// module id = 54\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 11 12","import formatDefault from \"./formatDefault\";\nimport formatPrefixAuto from \"./formatPrefixAuto\";\nimport formatRounded from \"./formatRounded\";\n\nexport default {\n \"\": formatDefault,\n \"%\": function(x, p) { return (x * 100).toFixed(p); },\n \"b\": function(x) { return Math.round(x).toString(2); },\n \"c\": function(x) { return x + \"\"; },\n \"d\": function(x) { return Math.round(x).toString(10); },\n \"e\": function(x, p) { return x.toExponential(p); },\n \"f\": function(x, p) { return x.toFixed(p); },\n \"g\": function(x, p) { return x.toPrecision(p); },\n \"o\": function(x) { return Math.round(x).toString(8); },\n \"p\": function(x, p) { return formatRounded(x * 100, p); },\n \"r\": formatRounded,\n \"s\": formatPrefixAuto,\n \"X\": function(x) { return Math.round(x).toString(16).toUpperCase(); },\n \"x\": function(x) { return Math.round(x).toString(16); }\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-format/src/formatTypes.js\n// module id = 55\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 11 12","import formatDecimal from \"./formatDecimal\";\n\nexport var prefixExponent;\n\nexport default function(x, p) {\n var d = formatDecimal(x, p);\n if (!d) return x + \"\";\n var coefficient = d[0],\n exponent = d[1],\n i = exponent - (prefixExponent = Math.max(-8, Math.min(8, Math.floor(exponent / 3))) * 3) + 1,\n n = coefficient.length;\n return i === n ? coefficient\n : i > n ? coefficient + new Array(i - n + 1).join(\"0\")\n : i > 0 ? coefficient.slice(0, i) + \".\" + coefficient.slice(i)\n : \"0.\" + new Array(1 - i).join(\"0\") + formatDecimal(x, Math.max(0, p + i - 1))[0]; // less than 1y!\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-format/src/formatPrefixAuto.js\n// module id = 56\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 11 12","import {rgb as colorRgb} from \"d3-color\";\nimport basis from \"./basis\";\nimport basisClosed from \"./basisClosed\";\nimport nogamma, {gamma} from \"./color\";\n\nexport default (function rgbGamma(y) {\n var color = gamma(y);\n\n function rgb(start, end) {\n var r = color((start = colorRgb(start)).r, (end = colorRgb(end)).r),\n g = color(start.g, end.g),\n b = color(start.b, end.b),\n opacity = nogamma(start.opacity, end.opacity);\n return function(t) {\n start.r = r(t);\n start.g = g(t);\n start.b = b(t);\n start.opacity = opacity(t);\n return start + \"\";\n };\n }\n\n rgb.gamma = rgbGamma;\n\n return rgb;\n})(1);\n\nfunction rgbSpline(spline) {\n return function(colors) {\n var n = colors.length,\n r = new Array(n),\n g = new Array(n),\n b = new Array(n),\n i, color;\n for (i = 0; i < n; ++i) {\n color = colorRgb(colors[i]);\n r[i] = color.r || 0;\n g[i] = color.g || 0;\n b[i] = color.b || 0;\n }\n r = spline(r);\n g = spline(g);\n b = spline(b);\n color.opacity = 1;\n return function(t) {\n color.r = r(t);\n color.g = g(t);\n color.b = b(t);\n return color + \"\";\n };\n };\n}\n\nexport var rgbBasis = rgbSpline(basis);\nexport var rgbBasisClosed = rgbSpline(basisClosed);\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-interpolate/src/rgb.js\n// module id = 57\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 11 12","import {basis} from \"./basis\";\n\nexport default function(values) {\n var n = values.length;\n return function(t) {\n var i = Math.floor(((t %= 1) < 0 ? ++t : t) * n),\n v0 = values[(i + n - 1) % n],\n v1 = values[i % n],\n v2 = values[(i + 1) % n],\n v3 = values[(i + 2) % n];\n return basis((t - i / n) * n, v0, v1, v2, v3);\n };\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-interpolate/src/basisClosed.js\n// module id = 58\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 11 12","export default function(x) {\n return function() {\n return x;\n };\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-interpolate/src/constant.js\n// module id = 59\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 11 12","import value from \"./value\";\n\nexport default function(a, b) {\n var nb = b ? b.length : 0,\n na = a ? Math.min(nb, a.length) : 0,\n x = new Array(nb),\n c = new Array(nb),\n i;\n\n for (i = 0; i < na; ++i) x[i] = value(a[i], b[i]);\n for (; i < nb; ++i) c[i] = b[i];\n\n return function(t) {\n for (i = 0; i < na; ++i) c[i] = x[i](t);\n return c;\n };\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-interpolate/src/array.js\n// module id = 60\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 11 12","export default function(a, b) {\n var d = new Date;\n return a = +a, b -= a, function(t) {\n return d.setTime(a + b * t), d;\n };\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-interpolate/src/date.js\n// module id = 61\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 11 12","import value from \"./value\";\n\nexport default function(a, b) {\n var i = {},\n c = {},\n k;\n\n if (a === null || typeof a !== \"object\") a = {};\n if (b === null || typeof b !== \"object\") b = {};\n\n for (k in b) {\n if (k in a) {\n i[k] = value(a[k], b[k]);\n } else {\n c[k] = b[k];\n }\n }\n\n return function(t) {\n for (k in i) c[k] = i[k](t);\n return c;\n };\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-interpolate/src/object.js\n// module id = 62\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 11 12","import number from \"./number\";\n\nvar reA = /[-+]?(?:\\d+\\.?\\d*|\\.?\\d+)(?:[eE][-+]?\\d+)?/g,\n reB = new RegExp(reA.source, \"g\");\n\nfunction zero(b) {\n return function() {\n return b;\n };\n}\n\nfunction one(b) {\n return function(t) {\n return b(t) + \"\";\n };\n}\n\nexport default function(a, b) {\n var bi = reA.lastIndex = reB.lastIndex = 0, // scan index for next number in b\n am, // current match in a\n bm, // current match in b\n bs, // string preceding current number in b, if any\n i = -1, // index in s\n s = [], // string constants and placeholders\n q = []; // number interpolators\n\n // Coerce inputs to strings.\n a = a + \"\", b = b + \"\";\n\n // Interpolate pairs of numbers in a & b.\n while ((am = reA.exec(a))\n && (bm = reB.exec(b))) {\n if ((bs = bm.index) > bi) { // a string precedes the next number in b\n bs = b.slice(bi, bs);\n if (s[i]) s[i] += bs; // coalesce with previous string\n else s[++i] = bs;\n }\n if ((am = am[0]) === (bm = bm[0])) { // numbers in a & b match\n if (s[i]) s[i] += bm; // coalesce with previous string\n else s[++i] = bm;\n } else { // interpolate non-matching numbers\n s[++i] = null;\n q.push({i: i, x: number(am, bm)});\n }\n bi = reB.lastIndex;\n }\n\n // Add remains of b.\n if (bi < b.length) {\n bs = b.slice(bi);\n if (s[i]) s[i] += bs; // coalesce with previous string\n else s[++i] = bs;\n }\n\n // Special optimization for only a single match.\n // Otherwise, interpolate each of the numbers and rejoin the string.\n return s.length < 2 ? (q[0]\n ? one(q[0].x)\n : zero(b))\n : (b = q.length, function(t) {\n for (var i = 0, o; i < b; ++i) s[(o = q[i]).i] = o.x(t);\n return s.join(\"\");\n });\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-interpolate/src/string.js\n// module id = 63\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 11 12","var matcher = function(selector) {\n return function() {\n return this.matches(selector);\n };\n};\n\nif (typeof document !== \"undefined\") {\n var element = document.documentElement;\n if (!element.matches) {\n var vendorMatches = element.webkitMatchesSelector\n || element.msMatchesSelector\n || element.mozMatchesSelector\n || element.oMatchesSelector;\n matcher = function(selector) {\n return function() {\n return vendorMatches.call(this, selector);\n };\n };\n }\n}\n\nexport default matcher;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-selection/src/matcher.js\n// module id = 64\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 11 12","function empty() {\n return [];\n}\n\nexport default function(selector) {\n return selector == null ? empty : function() {\n return this.querySelectorAll(selector);\n };\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-selection/src/selectorAll.js\n// module id = 65\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 11 12","import sparse from \"./sparse\";\nimport {Selection} from \"./index\";\n\nexport default function() {\n return new Selection(this._enter || this._groups.map(sparse), this._parents);\n}\n\nexport function EnterNode(parent, datum) {\n this.ownerDocument = parent.ownerDocument;\n this.namespaceURI = parent.namespaceURI;\n this._next = null;\n this._parent = parent;\n this.__data__ = datum;\n}\n\nEnterNode.prototype = {\n constructor: EnterNode,\n appendChild: function(child) { return this._parent.insertBefore(child, this._next); },\n insertBefore: function(child, next) { return this._parent.insertBefore(child, next); },\n querySelector: function(selector) { return this._parent.querySelector(selector); },\n querySelectorAll: function(selector) { return this._parent.querySelectorAll(selector); }\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-selection/src/selection/enter.js\n// module id = 66\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 11 12","export default function(update) {\n return new Array(update.length);\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-selection/src/selection/sparse.js\n// module id = 67\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 11 12","import defaultView from \"../window\";\n\nfunction styleRemove(name) {\n return function() {\n this.style.removeProperty(name);\n };\n}\n\nfunction styleConstant(name, value, priority) {\n return function() {\n this.style.setProperty(name, value, priority);\n };\n}\n\nfunction styleFunction(name, value, priority) {\n return function() {\n var v = value.apply(this, arguments);\n if (v == null) this.style.removeProperty(name);\n else this.style.setProperty(name, v, priority);\n };\n}\n\nexport default function(name, value, priority) {\n return arguments.length > 1\n ? this.each((value == null\n ? styleRemove : typeof value === \"function\"\n ? styleFunction\n : styleConstant)(name, value, priority == null ? \"\" : priority))\n : styleValue(this.node(), name);\n}\n\nexport function styleValue(node, name) {\n return node.style.getPropertyValue(name)\n || defaultView(node).getComputedStyle(node, null).getPropertyValue(name);\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-selection/src/selection/style.js\n// module id = 68\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 11 12","import {STARTING, ENDING, ENDED} from \"./transition/schedule\";\n\nexport default function(node, name) {\n var schedules = node.__transition,\n schedule,\n active,\n empty = true,\n i;\n\n if (!schedules) return;\n\n name = name == null ? null : name + \"\";\n\n for (i in schedules) {\n if ((schedule = schedules[i]).name !== name) { empty = false; continue; }\n active = schedule.state > STARTING && schedule.state < ENDING;\n schedule.state = ENDED;\n schedule.timer.stop();\n if (active) schedule.on.call(\"interrupt\", node, node.__data__, schedule.index, schedule.group);\n delete schedules[i];\n }\n\n if (empty) delete node.__transition;\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-transition/src/interrupt.js\n// module id = 69\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 11 12","export {\n now,\n timer,\n timerFlush\n} from \"./src/timer\";\n\nexport {\n default as timeout\n} from \"./src/timeout\";\n\nexport {\n default as interval\n} from \"./src/interval\";\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-timer/index.js\n// module id = 70\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 11 12","import {color} from \"d3-color\";\nimport {interpolateNumber, interpolateRgb, interpolateString} from \"d3-interpolate\";\n\nexport default function(a, b) {\n var c;\n return (typeof b === \"number\" ? interpolateNumber\n : b instanceof color ? interpolateRgb\n : (c = color(b)) ? (b = c, interpolateRgb)\n : interpolateString)(a, b);\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-transition/src/transition/interpolate.js\n// module id = 71\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 11 12","export {\n linear as easeLinear\n} from \"./src/linear\";\n\nexport {\n quadInOut as easeQuad,\n quadIn as easeQuadIn,\n quadOut as easeQuadOut,\n quadInOut as easeQuadInOut\n} from \"./src/quad\";\n\nexport {\n cubicInOut as easeCubic,\n cubicIn as easeCubicIn,\n cubicOut as easeCubicOut,\n cubicInOut as easeCubicInOut\n} from \"./src/cubic\";\n\nexport {\n polyInOut as easePoly,\n polyIn as easePolyIn,\n polyOut as easePolyOut,\n polyInOut as easePolyInOut\n} from \"./src/poly\";\n\nexport {\n sinInOut as easeSin,\n sinIn as easeSinIn,\n sinOut as easeSinOut,\n sinInOut as easeSinInOut\n} from \"./src/sin\";\n\nexport {\n expInOut as easeExp,\n expIn as easeExpIn,\n expOut as easeExpOut,\n expInOut as easeExpInOut\n} from \"./src/exp\";\n\nexport {\n circleInOut as easeCircle,\n circleIn as easeCircleIn,\n circleOut as easeCircleOut,\n circleInOut as easeCircleInOut\n} from \"./src/circle\";\n\nexport {\n bounceOut as easeBounce,\n bounceIn as easeBounceIn,\n bounceOut as easeBounceOut,\n bounceInOut as easeBounceInOut\n} from \"./src/bounce\";\n\nexport {\n backInOut as easeBack,\n backIn as easeBackIn,\n backOut as easeBackOut,\n backInOut as easeBackInOut\n} from \"./src/back\";\n\nexport {\n elasticOut as easeElastic,\n elasticIn as easeElasticIn,\n elasticOut as easeElasticOut,\n elasticInOut as easeElasticInOut\n} from \"./src/elastic\";\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-ease/index.js\n// module id = 72\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 11 12","export {default as dispatch} from \"./src/dispatch\";\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-dispatch/index.js\n// module id = 73\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 11 12","import ascending from \"./ascending\";\nimport bisector from \"./bisector\";\n\nvar ascendingBisect = bisector(ascending);\nexport var bisectRight = ascendingBisect.right;\nexport var bisectLeft = ascendingBisect.left;\nexport default bisectRight;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-array/src/bisect.js\n// module id = 74\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 12","import ascending from \"./ascending\";\n\nexport default function(compare) {\n if (compare.length === 1) compare = ascendingComparator(compare);\n return {\n left: function(a, x, lo, hi) {\n if (lo == null) lo = 0;\n if (hi == null) hi = a.length;\n while (lo < hi) {\n var mid = lo + hi >>> 1;\n if (compare(a[mid], x) < 0) lo = mid + 1;\n else hi = mid;\n }\n return lo;\n },\n right: function(a, x, lo, hi) {\n if (lo == null) lo = 0;\n if (hi == null) hi = a.length;\n while (lo < hi) {\n var mid = lo + hi >>> 1;\n if (compare(a[mid], x) > 0) hi = mid;\n else lo = mid + 1;\n }\n return lo;\n }\n };\n}\n\nfunction ascendingComparator(f) {\n return function(d, x) {\n return ascending(f(d), x);\n };\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-array/src/bisector.js\n// module id = 75\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 12","export default function(array, f) {\n if (f == null) f = pair;\n var i = 0, n = array.length - 1, p = array[0], pairs = new Array(n < 0 ? 0 : n);\n while (i < n) pairs[i] = f(p, p = array[++i]);\n return pairs;\n}\n\nexport function pair(a, b) {\n return [a, b];\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-array/src/pairs.js\n// module id = 76\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 12","import variance from \"./variance\";\n\nexport default function(array, f) {\n var v = variance(array, f);\n return v ? Math.sqrt(v) : v;\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-array/src/deviation.js\n// module id = 77\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 12","import number from \"./number\";\n\nexport default function(values, valueof) {\n var n = values.length,\n m = 0,\n i = -1,\n mean = 0,\n value,\n delta,\n sum = 0;\n\n if (valueof == null) {\n while (++i < n) {\n if (!isNaN(value = number(values[i]))) {\n delta = value - mean;\n mean += delta / ++m;\n sum += delta * (value - mean);\n }\n }\n }\n\n else {\n while (++i < n) {\n if (!isNaN(value = number(valueof(values[i], i, values)))) {\n delta = value - mean;\n mean += delta / ++m;\n sum += delta * (value - mean);\n }\n }\n }\n\n if (m > 1) return sum / (m - 1);\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-array/src/variance.js\n// module id = 78\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 12","export default function(values, valueof) {\n var n = values.length,\n i = -1,\n value,\n min,\n max;\n\n if (valueof == null) {\n while (++i < n) { // Find the first comparable value.\n if ((value = values[i]) != null && value >= value) {\n min = max = value;\n while (++i < n) { // Compare the remaining values.\n if ((value = values[i]) != null) {\n if (min > value) min = value;\n if (max < value) max = value;\n }\n }\n }\n }\n }\n\n else {\n while (++i < n) { // Find the first comparable value.\n if ((value = valueof(values[i], i, values)) != null && value >= value) {\n min = max = value;\n while (++i < n) { // Compare the remaining values.\n if ((value = valueof(values[i], i, values)) != null) {\n if (min > value) min = value;\n if (max < value) max = value;\n }\n }\n }\n }\n }\n\n return [min, max];\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-array/src/extent.js\n// module id = 79\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 12","var array = Array.prototype;\n\nexport var slice = array.slice;\nexport var map = array.map;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-array/src/array.js\n// module id = 80\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 12","export default function(start, stop, step) {\n start = +start, stop = +stop, step = (n = arguments.length) < 2 ? (stop = start, start = 0, 1) : n < 3 ? 1 : +step;\n\n var i = -1,\n n = Math.max(0, Math.ceil((stop - start) / step)) | 0,\n range = new Array(n);\n\n while (++i < n) {\n range[i] = start + i * step;\n }\n\n return range;\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-array/src/range.js\n// module id = 81\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 12","var e10 = Math.sqrt(50),\n e5 = Math.sqrt(10),\n e2 = Math.sqrt(2);\n\nexport default function(start, stop, count) {\n var reverse = stop < start,\n i = -1,\n n,\n ticks,\n step;\n\n if (reverse) n = start, start = stop, stop = n;\n\n if ((step = tickIncrement(start, stop, count)) === 0 || !isFinite(step)) return [];\n\n if (step > 0) {\n start = Math.ceil(start / step);\n stop = Math.floor(stop / step);\n ticks = new Array(n = Math.ceil(stop - start + 1));\n while (++i < n) ticks[i] = (start + i) * step;\n } else {\n start = Math.floor(start * step);\n stop = Math.ceil(stop * step);\n ticks = new Array(n = Math.ceil(start - stop + 1));\n while (++i < n) ticks[i] = (start - i) / step;\n }\n\n if (reverse) ticks.reverse();\n\n return ticks;\n}\n\nexport function tickIncrement(start, stop, count) {\n var step = (stop - start) / Math.max(0, count),\n power = Math.floor(Math.log(step) / Math.LN10),\n error = step / Math.pow(10, power);\n return power >= 0\n ? (error >= e10 ? 10 : error >= e5 ? 5 : error >= e2 ? 2 : 1) * Math.pow(10, power)\n : -Math.pow(10, -power) / (error >= e10 ? 10 : error >= e5 ? 5 : error >= e2 ? 2 : 1);\n}\n\nexport function tickStep(start, stop, count) {\n var step0 = Math.abs(stop - start) / Math.max(0, count),\n step1 = Math.pow(10, Math.floor(Math.log(step0) / Math.LN10)),\n error = step0 / step1;\n if (error >= e10) step1 *= 10;\n else if (error >= e5) step1 *= 5;\n else if (error >= e2) step1 *= 2;\n return stop < start ? -step1 : step1;\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-array/src/ticks.js\n// module id = 82\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 12","export default function(values) {\n return Math.ceil(Math.log(values.length) / Math.LN2) + 1;\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-array/src/threshold/sturges.js\n// module id = 83\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 12","export default function(values, valueof) {\n var n = values.length,\n i = -1,\n value,\n min;\n\n if (valueof == null) {\n while (++i < n) { // Find the first comparable value.\n if ((value = values[i]) != null && value >= value) {\n min = value;\n while (++i < n) { // Compare the remaining values.\n if ((value = values[i]) != null && min > value) {\n min = value;\n }\n }\n }\n }\n }\n\n else {\n while (++i < n) { // Find the first comparable value.\n if ((value = valueof(values[i], i, values)) != null && value >= value) {\n min = value;\n while (++i < n) { // Compare the remaining values.\n if ((value = valueof(values[i], i, values)) != null && min > value) {\n min = value;\n }\n }\n }\n }\n }\n\n return min;\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-array/src/min.js\n// module id = 84\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 12","import min from \"./min\";\n\nexport default function(matrix) {\n if (!(n = matrix.length)) return [];\n for (var i = -1, m = min(matrix, length), transpose = new Array(m); ++i < m;) {\n for (var j = -1, n, row = transpose[i] = new Array(n); ++j < n;) {\n row[j] = matrix[j][i];\n }\n }\n return transpose;\n}\n\nfunction length(d) {\n return d.length;\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-array/src/transpose.js\n// module id = 85\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 12","import \"./src/selection/index\";\nexport {default as transition} from \"./src/transition/index\";\nexport {default as active} from \"./src/active\";\nexport {default as interrupt} from \"./src/interrupt\";\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-transition/index.js\n// module id = 110\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 11 12","export function linear(t) {\n return +t;\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-ease/src/linear.js\n// module id = 111\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 11 12","export function quadIn(t) {\n return t * t;\n}\n\nexport function quadOut(t) {\n return t * (2 - t);\n}\n\nexport function quadInOut(t) {\n return ((t *= 2) <= 1 ? t * t : --t * (2 - t) + 1) / 2;\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-ease/src/quad.js\n// module id = 112\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 11 12","export function cubicIn(t) {\n return t * t * t;\n}\n\nexport function cubicOut(t) {\n return --t * t * t + 1;\n}\n\nexport function cubicInOut(t) {\n return ((t *= 2) <= 1 ? t * t * t : (t -= 2) * t * t + 2) / 2;\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-ease/src/cubic.js\n// module id = 113\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 11 12","var exponent = 3;\n\nexport var polyIn = (function custom(e) {\n e = +e;\n\n function polyIn(t) {\n return Math.pow(t, e);\n }\n\n polyIn.exponent = custom;\n\n return polyIn;\n})(exponent);\n\nexport var polyOut = (function custom(e) {\n e = +e;\n\n function polyOut(t) {\n return 1 - Math.pow(1 - t, e);\n }\n\n polyOut.exponent = custom;\n\n return polyOut;\n})(exponent);\n\nexport var polyInOut = (function custom(e) {\n e = +e;\n\n function polyInOut(t) {\n return ((t *= 2) <= 1 ? Math.pow(t, e) : 2 - Math.pow(2 - t, e)) / 2;\n }\n\n polyInOut.exponent = custom;\n\n return polyInOut;\n})(exponent);\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-ease/src/poly.js\n// module id = 114\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 11 12","var pi = Math.PI,\n halfPi = pi / 2;\n\nexport function sinIn(t) {\n return 1 - Math.cos(t * halfPi);\n}\n\nexport function sinOut(t) {\n return Math.sin(t * halfPi);\n}\n\nexport function sinInOut(t) {\n return (1 - Math.cos(pi * t)) / 2;\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-ease/src/sin.js\n// module id = 115\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 11 12","export function expIn(t) {\n return Math.pow(2, 10 * t - 10);\n}\n\nexport function expOut(t) {\n return 1 - Math.pow(2, -10 * t);\n}\n\nexport function expInOut(t) {\n return ((t *= 2) <= 1 ? Math.pow(2, 10 * t - 10) : 2 - Math.pow(2, 10 - 10 * t)) / 2;\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-ease/src/exp.js\n// module id = 116\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 11 12","export function circleIn(t) {\n return 1 - Math.sqrt(1 - t * t);\n}\n\nexport function circleOut(t) {\n return Math.sqrt(1 - --t * t);\n}\n\nexport function circleInOut(t) {\n return ((t *= 2) <= 1 ? 1 - Math.sqrt(1 - t * t) : Math.sqrt(1 - (t -= 2) * t) + 1) / 2;\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-ease/src/circle.js\n// module id = 117\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 11 12","var b1 = 4 / 11,\n b2 = 6 / 11,\n b3 = 8 / 11,\n b4 = 3 / 4,\n b5 = 9 / 11,\n b6 = 10 / 11,\n b7 = 15 / 16,\n b8 = 21 / 22,\n b9 = 63 / 64,\n b0 = 1 / b1 / b1;\n\nexport function bounceIn(t) {\n return 1 - bounceOut(1 - t);\n}\n\nexport function bounceOut(t) {\n return (t = +t) < b1 ? b0 * t * t : t < b3 ? b0 * (t -= b2) * t + b4 : t < b6 ? b0 * (t -= b5) * t + b7 : b0 * (t -= b8) * t + b9;\n}\n\nexport function bounceInOut(t) {\n return ((t *= 2) <= 1 ? 1 - bounceOut(1 - t) : bounceOut(t - 1) + 1) / 2;\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-ease/src/bounce.js\n// module id = 118\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 11 12","var overshoot = 1.70158;\n\nexport var backIn = (function custom(s) {\n s = +s;\n\n function backIn(t) {\n return t * t * ((s + 1) * t - s);\n }\n\n backIn.overshoot = custom;\n\n return backIn;\n})(overshoot);\n\nexport var backOut = (function custom(s) {\n s = +s;\n\n function backOut(t) {\n return --t * t * ((s + 1) * t + s) + 1;\n }\n\n backOut.overshoot = custom;\n\n return backOut;\n})(overshoot);\n\nexport var backInOut = (function custom(s) {\n s = +s;\n\n function backInOut(t) {\n return ((t *= 2) < 1 ? t * t * ((s + 1) * t - s) : (t -= 2) * t * ((s + 1) * t + s) + 2) / 2;\n }\n\n backInOut.overshoot = custom;\n\n return backInOut;\n})(overshoot);\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-ease/src/back.js\n// module id = 119\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 11 12","var tau = 2 * Math.PI,\n amplitude = 1,\n period = 0.3;\n\nexport var elasticIn = (function custom(a, p) {\n var s = Math.asin(1 / (a = Math.max(1, a))) * (p /= tau);\n\n function elasticIn(t) {\n return a * Math.pow(2, 10 * --t) * Math.sin((s - t) / p);\n }\n\n elasticIn.amplitude = function(a) { return custom(a, p * tau); };\n elasticIn.period = function(p) { return custom(a, p); };\n\n return elasticIn;\n})(amplitude, period);\n\nexport var elasticOut = (function custom(a, p) {\n var s = Math.asin(1 / (a = Math.max(1, a))) * (p /= tau);\n\n function elasticOut(t) {\n return 1 - a * Math.pow(2, -10 * (t = +t)) * Math.sin((t + s) / p);\n }\n\n elasticOut.amplitude = function(a) { return custom(a, p * tau); };\n elasticOut.period = function(p) { return custom(a, p); };\n\n return elasticOut;\n})(amplitude, period);\n\nexport var elasticInOut = (function custom(a, p) {\n var s = Math.asin(1 / (a = Math.max(1, a))) * (p /= tau);\n\n function elasticInOut(t) {\n return ((t = t * 2 - 1) < 0\n ? a * Math.pow(2, 10 * t) * Math.sin((s - t) / p)\n : 2 - a * Math.pow(2, -10 * t) * Math.sin((s + t) / p)) / 2;\n }\n\n elasticInOut.amplitude = function(a) { return custom(a, p * tau); };\n elasticInOut.period = function(p) { return custom(a, p); };\n\n return elasticInOut;\n})(amplitude, period);\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-ease/src/elastic.js\n// module id = 120\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 11 12","import define, {extend} from \"./define\";\nimport {Color, rgbConvert, Rgb} from \"./color\";\nimport {deg2rad, rad2deg} from \"./math\";\n\nvar Kn = 18,\n Xn = 0.950470, // D65 standard referent\n Yn = 1,\n Zn = 1.088830,\n t0 = 4 / 29,\n t1 = 6 / 29,\n t2 = 3 * t1 * t1,\n t3 = t1 * t1 * t1;\n\nfunction labConvert(o) {\n if (o instanceof Lab) return new Lab(o.l, o.a, o.b, o.opacity);\n if (o instanceof Hcl) {\n var h = o.h * deg2rad;\n return new Lab(o.l, Math.cos(h) * o.c, Math.sin(h) * o.c, o.opacity);\n }\n if (!(o instanceof Rgb)) o = rgbConvert(o);\n var b = rgb2xyz(o.r),\n a = rgb2xyz(o.g),\n l = rgb2xyz(o.b),\n x = xyz2lab((0.4124564 * b + 0.3575761 * a + 0.1804375 * l) / Xn),\n y = xyz2lab((0.2126729 * b + 0.7151522 * a + 0.0721750 * l) / Yn),\n z = xyz2lab((0.0193339 * b + 0.1191920 * a + 0.9503041 * l) / Zn);\n return new Lab(116 * y - 16, 500 * (x - y), 200 * (y - z), o.opacity);\n}\n\nexport default function lab(l, a, b, opacity) {\n return arguments.length === 1 ? labConvert(l) : new Lab(l, a, b, opacity == null ? 1 : opacity);\n}\n\nexport function Lab(l, a, b, opacity) {\n this.l = +l;\n this.a = +a;\n this.b = +b;\n this.opacity = +opacity;\n}\n\ndefine(Lab, lab, extend(Color, {\n brighter: function(k) {\n return new Lab(this.l + Kn * (k == null ? 1 : k), this.a, this.b, this.opacity);\n },\n darker: function(k) {\n return new Lab(this.l - Kn * (k == null ? 1 : k), this.a, this.b, this.opacity);\n },\n rgb: function() {\n var y = (this.l + 16) / 116,\n x = isNaN(this.a) ? y : y + this.a / 500,\n z = isNaN(this.b) ? y : y - this.b / 200;\n y = Yn * lab2xyz(y);\n x = Xn * lab2xyz(x);\n z = Zn * lab2xyz(z);\n return new Rgb(\n xyz2rgb( 3.2404542 * x - 1.5371385 * y - 0.4985314 * z), // D65 -> sRGB\n xyz2rgb(-0.9692660 * x + 1.8760108 * y + 0.0415560 * z),\n xyz2rgb( 0.0556434 * x - 0.2040259 * y + 1.0572252 * z),\n this.opacity\n );\n }\n}));\n\nfunction xyz2lab(t) {\n return t > t3 ? Math.pow(t, 1 / 3) : t / t2 + t0;\n}\n\nfunction lab2xyz(t) {\n return t > t1 ? t * t * t : t2 * (t - t0);\n}\n\nfunction xyz2rgb(x) {\n return 255 * (x <= 0.0031308 ? 12.92 * x : 1.055 * Math.pow(x, 1 / 2.4) - 0.055);\n}\n\nfunction rgb2xyz(x) {\n return (x /= 255) <= 0.04045 ? x / 12.92 : Math.pow((x + 0.055) / 1.055, 2.4);\n}\n\nfunction hclConvert(o) {\n if (o instanceof Hcl) return new Hcl(o.h, o.c, o.l, o.opacity);\n if (!(o instanceof Lab)) o = labConvert(o);\n var h = Math.atan2(o.b, o.a) * rad2deg;\n return new Hcl(h < 0 ? h + 360 : h, Math.sqrt(o.a * o.a + o.b * o.b), o.l, o.opacity);\n}\n\nexport function hcl(h, c, l, opacity) {\n return arguments.length === 1 ? hclConvert(h) : new Hcl(h, c, l, opacity == null ? 1 : opacity);\n}\n\nexport function Hcl(h, c, l, opacity) {\n this.h = +h;\n this.c = +c;\n this.l = +l;\n this.opacity = +opacity;\n}\n\ndefine(Hcl, hcl, extend(Color, {\n brighter: function(k) {\n return new Hcl(this.h, this.c, this.l + Kn * (k == null ? 1 : k), this.opacity);\n },\n darker: function(k) {\n return new Hcl(this.h, this.c, this.l - Kn * (k == null ? 1 : k), this.opacity);\n },\n rgb: function() {\n return labConvert(this).rgb();\n }\n}));\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-color/src/lab.js\n// module id = 121\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 11 12","import define, {extend} from \"./define\";\nimport {Color, rgbConvert, Rgb, darker, brighter} from \"./color\";\nimport {deg2rad, rad2deg} from \"./math\";\n\nvar A = -0.14861,\n B = +1.78277,\n C = -0.29227,\n D = -0.90649,\n E = +1.97294,\n ED = E * D,\n EB = E * B,\n BC_DA = B * C - D * A;\n\nfunction cubehelixConvert(o) {\n if (o instanceof Cubehelix) return new Cubehelix(o.h, o.s, o.l, o.opacity);\n if (!(o instanceof Rgb)) o = rgbConvert(o);\n var r = o.r / 255,\n g = o.g / 255,\n b = o.b / 255,\n l = (BC_DA * b + ED * r - EB * g) / (BC_DA + ED - EB),\n bl = b - l,\n k = (E * (g - l) - C * bl) / D,\n s = Math.sqrt(k * k + bl * bl) / (E * l * (1 - l)), // NaN if l=0 or l=1\n h = s ? Math.atan2(k, bl) * rad2deg - 120 : NaN;\n return new Cubehelix(h < 0 ? h + 360 : h, s, l, o.opacity);\n}\n\nexport default function cubehelix(h, s, l, opacity) {\n return arguments.length === 1 ? cubehelixConvert(h) : new Cubehelix(h, s, l, opacity == null ? 1 : opacity);\n}\n\nexport function Cubehelix(h, s, l, opacity) {\n this.h = +h;\n this.s = +s;\n this.l = +l;\n this.opacity = +opacity;\n}\n\ndefine(Cubehelix, cubehelix, extend(Color, {\n brighter: function(k) {\n k = k == null ? brighter : Math.pow(brighter, k);\n return new Cubehelix(this.h, this.s, this.l * k, this.opacity);\n },\n darker: function(k) {\n k = k == null ? darker : Math.pow(darker, k);\n return new Cubehelix(this.h, this.s, this.l * k, this.opacity);\n },\n rgb: function() {\n var h = isNaN(this.h) ? 0 : (this.h + 120) * deg2rad,\n l = +this.l,\n a = isNaN(this.s) ? 0 : this.s * l * (1 - l),\n cosh = Math.cos(h),\n sinh = Math.sin(h);\n return new Rgb(\n 255 * (l + a * (A * cosh + B * sinh)),\n 255 * (l + a * (C * cosh + D * sinh)),\n 255 * (l + a * (E * cosh)),\n this.opacity\n );\n }\n}));\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-color/src/cubehelix.js\n// module id = 122\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 11 12","var noop = {value: function() {}};\n\nfunction dispatch() {\n for (var i = 0, n = arguments.length, _ = {}, t; i < n; ++i) {\n if (!(t = arguments[i] + \"\") || (t in _)) throw new Error(\"illegal type: \" + t);\n _[t] = [];\n }\n return new Dispatch(_);\n}\n\nfunction Dispatch(_) {\n this._ = _;\n}\n\nfunction parseTypenames(typenames, types) {\n return typenames.trim().split(/^|\\s+/).map(function(t) {\n var name = \"\", i = t.indexOf(\".\");\n if (i >= 0) name = t.slice(i + 1), t = t.slice(0, i);\n if (t && !types.hasOwnProperty(t)) throw new Error(\"unknown type: \" + t);\n return {type: t, name: name};\n });\n}\n\nDispatch.prototype = dispatch.prototype = {\n constructor: Dispatch,\n on: function(typename, callback) {\n var _ = this._,\n T = parseTypenames(typename + \"\", _),\n t,\n i = -1,\n n = T.length;\n\n // If no callback was specified, return the callback of the given type and name.\n if (arguments.length < 2) {\n while (++i < n) if ((t = (typename = T[i]).type) && (t = get(_[t], typename.name))) return t;\n return;\n }\n\n // If a type was specified, set the callback for the given type and name.\n // Otherwise, if a null callback was specified, remove callbacks of the given name.\n if (callback != null && typeof callback !== \"function\") throw new Error(\"invalid callback: \" + callback);\n while (++i < n) {\n if (t = (typename = T[i]).type) _[t] = set(_[t], typename.name, callback);\n else if (callback == null) for (t in _) _[t] = set(_[t], typename.name, null);\n }\n\n return this;\n },\n copy: function() {\n var copy = {}, _ = this._;\n for (var t in _) copy[t] = _[t].slice();\n return new Dispatch(copy);\n },\n call: function(type, that) {\n if ((n = arguments.length - 2) > 0) for (var args = new Array(n), i = 0, n, t; i < n; ++i) args[i] = arguments[i + 2];\n if (!this._.hasOwnProperty(type)) throw new Error(\"unknown type: \" + type);\n for (t = this._[type], i = 0, n = t.length; i < n; ++i) t[i].value.apply(that, args);\n },\n apply: function(type, that, args) {\n if (!this._.hasOwnProperty(type)) throw new Error(\"unknown type: \" + type);\n for (var t = this._[type], i = 0, n = t.length; i < n; ++i) t[i].value.apply(that, args);\n }\n};\n\nfunction get(type, name) {\n for (var i = 0, n = type.length, c; i < n; ++i) {\n if ((c = type[i]).name === name) {\n return c.value;\n }\n }\n}\n\nfunction set(type, name, callback) {\n for (var i = 0, n = type.length; i < n; ++i) {\n if (type[i].name === name) {\n type[i] = noop, type = type.slice(0, i).concat(type.slice(i + 1));\n break;\n }\n }\n if (callback != null) type.push({name: name, value: callback});\n return type;\n}\n\nexport default dispatch;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-dispatch/src/dispatch.js\n// module id = 123\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 11 12","import formatLocale from \"./locale\";\n\nvar locale;\nexport var format;\nexport var formatPrefix;\n\ndefaultLocale({\n decimal: \".\",\n thousands: \",\",\n grouping: [3],\n currency: [\"$\", \"\"]\n});\n\nexport default function defaultLocale(definition) {\n locale = formatLocale(definition);\n format = locale.format;\n formatPrefix = locale.formatPrefix;\n return locale;\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-format/src/defaultLocale.js\n// module id = 124\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 11 12","export default function(grouping, thousands) {\n return function(value, width) {\n var i = value.length,\n t = [],\n j = 0,\n g = grouping[0],\n length = 0;\n\n while (i > 0 && g > 0) {\n if (length + g + 1 > width) g = Math.max(1, width - length);\n t.push(value.substring(i -= g, i + g));\n if ((length += g + 1) > width) break;\n g = grouping[j = (j + 1) % grouping.length];\n }\n\n return t.reverse().join(thousands);\n };\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-format/src/formatGroup.js\n// module id = 125\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 11 12","export default function(numerals) {\n return function(value) {\n return value.replace(/[0-9]/g, function(i) {\n return numerals[+i];\n });\n };\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-format/src/formatNumerals.js\n// module id = 126\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 11 12","export default function(x, p) {\n x = x.toPrecision(p);\n\n out: for (var n = x.length, i = 1, i0 = -1, i1; i < n; ++i) {\n switch (x[i]) {\n case \".\": i0 = i1 = i; break;\n case \"0\": if (i0 === 0) i0 = i; i1 = i; break;\n case \"e\": break out;\n default: if (i0 > 0) i0 = 0; break;\n }\n }\n\n return i0 > 0 ? x.slice(0, i0) + x.slice(i1 + 1) : x;\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-format/src/formatDefault.js\n// module id = 127\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 11 12","import formatDecimal from \"./formatDecimal\";\n\nexport default function(x, p) {\n var d = formatDecimal(x, p);\n if (!d) return x + \"\";\n var coefficient = d[0],\n exponent = d[1];\n return exponent < 0 ? \"0.\" + new Array(-exponent).join(\"0\") + coefficient\n : coefficient.length > exponent + 1 ? coefficient.slice(0, exponent + 1) + \".\" + coefficient.slice(exponent + 1)\n : coefficient + new Array(exponent - coefficient.length + 2).join(\"0\");\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-format/src/formatRounded.js\n// module id = 128\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 11 12","export default function(x) {\n return x;\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-format/src/identity.js\n// module id = 129\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 11 12","import exponent from \"./exponent\";\n\nexport default function(step) {\n return Math.max(0, -exponent(Math.abs(step)));\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-format/src/precisionFixed.js\n// module id = 130\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 11 12","import exponent from \"./exponent\";\n\nexport default function(step, value) {\n return Math.max(0, Math.max(-8, Math.min(8, Math.floor(exponent(value) / 3))) * 3 - exponent(Math.abs(step)));\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-format/src/precisionPrefix.js\n// module id = 131\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 11 12","import exponent from \"./exponent\";\n\nexport default function(step, max) {\n step = Math.abs(step), max = Math.abs(max) - step;\n return Math.max(0, exponent(max) - exponent(step)) + 1;\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-format/src/precisionRound.js\n// module id = 132\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 11 12","export default function(a, b) {\n return a = +a, b -= a, function(t) {\n return Math.round(a + b * t);\n };\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-interpolate/src/round.js\n// module id = 133\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 11 12","import number from \"../number\";\nimport {parseCss, parseSvg} from \"./parse\";\n\nfunction interpolateTransform(parse, pxComma, pxParen, degParen) {\n\n function pop(s) {\n return s.length ? s.pop() + \" \" : \"\";\n }\n\n function translate(xa, ya, xb, yb, s, q) {\n if (xa !== xb || ya !== yb) {\n var i = s.push(\"translate(\", null, pxComma, null, pxParen);\n q.push({i: i - 4, x: number(xa, xb)}, {i: i - 2, x: number(ya, yb)});\n } else if (xb || yb) {\n s.push(\"translate(\" + xb + pxComma + yb + pxParen);\n }\n }\n\n function rotate(a, b, s, q) {\n if (a !== b) {\n if (a - b > 180) b += 360; else if (b - a > 180) a += 360; // shortest path\n q.push({i: s.push(pop(s) + \"rotate(\", null, degParen) - 2, x: number(a, b)});\n } else if (b) {\n s.push(pop(s) + \"rotate(\" + b + degParen);\n }\n }\n\n function skewX(a, b, s, q) {\n if (a !== b) {\n q.push({i: s.push(pop(s) + \"skewX(\", null, degParen) - 2, x: number(a, b)});\n } else if (b) {\n s.push(pop(s) + \"skewX(\" + b + degParen);\n }\n }\n\n function scale(xa, ya, xb, yb, s, q) {\n if (xa !== xb || ya !== yb) {\n var i = s.push(pop(s) + \"scale(\", null, \",\", null, \")\");\n q.push({i: i - 4, x: number(xa, xb)}, {i: i - 2, x: number(ya, yb)});\n } else if (xb !== 1 || yb !== 1) {\n s.push(pop(s) + \"scale(\" + xb + \",\" + yb + \")\");\n }\n }\n\n return function(a, b) {\n var s = [], // string constants and placeholders\n q = []; // number interpolators\n a = parse(a), b = parse(b);\n translate(a.translateX, a.translateY, b.translateX, b.translateY, s, q);\n rotate(a.rotate, b.rotate, s, q);\n skewX(a.skewX, b.skewX, s, q);\n scale(a.scaleX, a.scaleY, b.scaleX, b.scaleY, s, q);\n a = b = null; // gc\n return function(t) {\n var i = -1, n = q.length, o;\n while (++i < n) s[(o = q[i]).i] = o.x(t);\n return s.join(\"\");\n };\n };\n}\n\nexport var interpolateTransformCss = interpolateTransform(parseCss, \"px, \", \"px)\", \"deg)\");\nexport var interpolateTransformSvg = interpolateTransform(parseSvg, \", \", \")\", \")\");\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-interpolate/src/transform/index.js\n// module id = 134\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 11 12","import decompose, {identity} from \"./decompose\";\n\nvar cssNode,\n cssRoot,\n cssView,\n svgNode;\n\nexport function parseCss(value) {\n if (value === \"none\") return identity;\n if (!cssNode) cssNode = document.createElement(\"DIV\"), cssRoot = document.documentElement, cssView = document.defaultView;\n cssNode.style.transform = value;\n value = cssView.getComputedStyle(cssRoot.appendChild(cssNode), null).getPropertyValue(\"transform\");\n cssRoot.removeChild(cssNode);\n value = value.slice(7, -1).split(\",\");\n return decompose(+value[0], +value[1], +value[2], +value[3], +value[4], +value[5]);\n}\n\nexport function parseSvg(value) {\n if (value == null) return identity;\n if (!svgNode) svgNode = document.createElementNS(\"http://www.w3.org/2000/svg\", \"g\");\n svgNode.setAttribute(\"transform\", value);\n if (!(value = svgNode.transform.baseVal.consolidate())) return identity;\n value = value.matrix;\n return decompose(value.a, value.b, value.c, value.d, value.e, value.f);\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-interpolate/src/transform/parse.js\n// module id = 135\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 11 12","var degrees = 180 / Math.PI;\n\nexport var identity = {\n translateX: 0,\n translateY: 0,\n rotate: 0,\n skewX: 0,\n scaleX: 1,\n scaleY: 1\n};\n\nexport default function(a, b, c, d, e, f) {\n var scaleX, scaleY, skewX;\n if (scaleX = Math.sqrt(a * a + b * b)) a /= scaleX, b /= scaleX;\n if (skewX = a * c + b * d) c -= a * skewX, d -= b * skewX;\n if (scaleY = Math.sqrt(c * c + d * d)) c /= scaleY, d /= scaleY, skewX /= scaleY;\n if (a * d < b * c) a = -a, b = -b, skewX = -skewX, scaleX = -scaleX;\n return {\n translateX: e,\n translateY: f,\n rotate: Math.atan2(b, a) * degrees,\n skewX: Math.atan(skewX) * degrees,\n scaleX: scaleX,\n scaleY: scaleY\n };\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-interpolate/src/transform/decompose.js\n// module id = 136\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 11 12","var rho = Math.SQRT2,\n rho2 = 2,\n rho4 = 4,\n epsilon2 = 1e-12;\n\nfunction cosh(x) {\n return ((x = Math.exp(x)) + 1 / x) / 2;\n}\n\nfunction sinh(x) {\n return ((x = Math.exp(x)) - 1 / x) / 2;\n}\n\nfunction tanh(x) {\n return ((x = Math.exp(2 * x)) - 1) / (x + 1);\n}\n\n// p0 = [ux0, uy0, w0]\n// p1 = [ux1, uy1, w1]\nexport default function(p0, p1) {\n var ux0 = p0[0], uy0 = p0[1], w0 = p0[2],\n ux1 = p1[0], uy1 = p1[1], w1 = p1[2],\n dx = ux1 - ux0,\n dy = uy1 - uy0,\n d2 = dx * dx + dy * dy,\n i,\n S;\n\n // Special case for u0 ≅ u1.\n if (d2 < epsilon2) {\n S = Math.log(w1 / w0) / rho;\n i = function(t) {\n return [\n ux0 + t * dx,\n uy0 + t * dy,\n w0 * Math.exp(rho * t * S)\n ];\n }\n }\n\n // General case.\n else {\n var d1 = Math.sqrt(d2),\n b0 = (w1 * w1 - w0 * w0 + rho4 * d2) / (2 * w0 * rho2 * d1),\n b1 = (w1 * w1 - w0 * w0 - rho4 * d2) / (2 * w1 * rho2 * d1),\n r0 = Math.log(Math.sqrt(b0 * b0 + 1) - b0),\n r1 = Math.log(Math.sqrt(b1 * b1 + 1) - b1);\n S = (r1 - r0) / rho;\n i = function(t) {\n var s = t * S,\n coshr0 = cosh(r0),\n u = w0 / (rho2 * d1) * (coshr0 * tanh(rho * s + r0) - sinh(r0));\n return [\n ux0 + u * dx,\n uy0 + u * dy,\n w0 * coshr0 / cosh(rho * s + r0)\n ];\n }\n }\n\n i.duration = S * 1000;\n\n return i;\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-interpolate/src/zoom.js\n// module id = 137\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 11 12","import {hsl as colorHsl} from \"d3-color\";\nimport color, {hue} from \"./color\";\n\nfunction hsl(hue) {\n return function(start, end) {\n var h = hue((start = colorHsl(start)).h, (end = colorHsl(end)).h),\n s = color(start.s, end.s),\n l = color(start.l, end.l),\n opacity = color(start.opacity, end.opacity);\n return function(t) {\n start.h = h(t);\n start.s = s(t);\n start.l = l(t);\n start.opacity = opacity(t);\n return start + \"\";\n };\n }\n}\n\nexport default hsl(hue);\nexport var hslLong = hsl(color);\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-interpolate/src/hsl.js\n// module id = 138\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 11 12","import {lab as colorLab} from \"d3-color\";\nimport color from \"./color\";\n\nexport default function lab(start, end) {\n var l = color((start = colorLab(start)).l, (end = colorLab(end)).l),\n a = color(start.a, end.a),\n b = color(start.b, end.b),\n opacity = color(start.opacity, end.opacity);\n return function(t) {\n start.l = l(t);\n start.a = a(t);\n start.b = b(t);\n start.opacity = opacity(t);\n return start + \"\";\n };\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-interpolate/src/lab.js\n// module id = 139\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 11 12","import {hcl as colorHcl} from \"d3-color\";\nimport color, {hue} from \"./color\";\n\nfunction hcl(hue) {\n return function(start, end) {\n var h = hue((start = colorHcl(start)).h, (end = colorHcl(end)).h),\n c = color(start.c, end.c),\n l = color(start.l, end.l),\n opacity = color(start.opacity, end.opacity);\n return function(t) {\n start.h = h(t);\n start.c = c(t);\n start.l = l(t);\n start.opacity = opacity(t);\n return start + \"\";\n };\n }\n}\n\nexport default hcl(hue);\nexport var hclLong = hcl(color);\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-interpolate/src/hcl.js\n// module id = 140\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 11 12","import {cubehelix as colorCubehelix} from \"d3-color\";\nimport color, {hue} from \"./color\";\n\nfunction cubehelix(hue) {\n return (function cubehelixGamma(y) {\n y = +y;\n\n function cubehelix(start, end) {\n var h = hue((start = colorCubehelix(start)).h, (end = colorCubehelix(end)).h),\n s = color(start.s, end.s),\n l = color(start.l, end.l),\n opacity = color(start.opacity, end.opacity);\n return function(t) {\n start.h = h(t);\n start.s = s(t);\n start.l = l(Math.pow(t, y));\n start.opacity = opacity(t);\n return start + \"\";\n };\n }\n\n cubehelix.gamma = cubehelixGamma;\n\n return cubehelix;\n })(1);\n}\n\nexport default cubehelix(hue);\nexport var cubehelixLong = cubehelix(color);\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-interpolate/src/cubehelix.js\n// module id = 141\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 11 12","export default function(interpolator, n) {\n var samples = new Array(n);\n for (var i = 0; i < n; ++i) samples[i] = interpolator(i / (n - 1));\n return samples;\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-interpolate/src/quantize.js\n// module id = 142\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 11 12","var nextId = 0;\n\nexport default function local() {\n return new Local;\n}\n\nfunction Local() {\n this._ = \"@\" + (++nextId).toString(36);\n}\n\nLocal.prototype = local.prototype = {\n constructor: Local,\n get: function(node) {\n var id = this._;\n while (!(id in node)) if (!(node = node.parentNode)) return;\n return node[id];\n },\n set: function(node, value) {\n return node[this._] = value;\n },\n remove: function(node) {\n return this._ in node && delete node[this._];\n },\n toString: function() {\n return this._;\n }\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-selection/src/local.js\n// module id = 143\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 11 12","import sourceEvent from \"./sourceEvent\";\nimport point from \"./point\";\n\nexport default function(node) {\n var event = sourceEvent();\n if (event.changedTouches) event = event.changedTouches[0];\n return point(node, event);\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-selection/src/mouse.js\n// module id = 144\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 11 12","import {Selection, root} from \"./selection/index\";\n\nexport default function(selector) {\n return typeof selector === \"string\"\n ? new Selection([[document.querySelector(selector)]], [document.documentElement])\n : new Selection([[selector]], root);\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-selection/src/select.js\n// module id = 145\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 11 12","import {Selection} from \"./index\";\nimport selector from \"../selector\";\n\nexport default function(select) {\n if (typeof select !== \"function\") select = selector(select);\n\n for (var groups = this._groups, m = groups.length, subgroups = new Array(m), j = 0; j < m; ++j) {\n for (var group = groups[j], n = group.length, subgroup = subgroups[j] = new Array(n), node, subnode, i = 0; i < n; ++i) {\n if ((node = group[i]) && (subnode = select.call(node, node.__data__, i, group))) {\n if (\"__data__\" in node) subnode.__data__ = node.__data__;\n subgroup[i] = subnode;\n }\n }\n }\n\n return new Selection(subgroups, this._parents);\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-selection/src/selection/select.js\n// module id = 146\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 11 12","import {Selection} from \"./index\";\nimport selectorAll from \"../selectorAll\";\n\nexport default function(select) {\n if (typeof select !== \"function\") select = selectorAll(select);\n\n for (var groups = this._groups, m = groups.length, subgroups = [], parents = [], j = 0; j < m; ++j) {\n for (var group = groups[j], n = group.length, node, i = 0; i < n; ++i) {\n if (node = group[i]) {\n subgroups.push(select.call(node, node.__data__, i, group));\n parents.push(node);\n }\n }\n }\n\n return new Selection(subgroups, parents);\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-selection/src/selection/selectAll.js\n// module id = 147\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 11 12","import {Selection} from \"./index\";\nimport matcher from \"../matcher\";\n\nexport default function(match) {\n if (typeof match !== \"function\") match = matcher(match);\n\n for (var groups = this._groups, m = groups.length, subgroups = new Array(m), j = 0; j < m; ++j) {\n for (var group = groups[j], n = group.length, subgroup = subgroups[j] = [], node, i = 0; i < n; ++i) {\n if ((node = group[i]) && match.call(node, node.__data__, i, group)) {\n subgroup.push(node);\n }\n }\n }\n\n return new Selection(subgroups, this._parents);\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-selection/src/selection/filter.js\n// module id = 148\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 11 12","import {Selection} from \"./index\";\nimport {EnterNode} from \"./enter\";\nimport constant from \"../constant\";\n\nvar keyPrefix = \"$\"; // Protect against keys like “__proto__”.\n\nfunction bindIndex(parent, group, enter, update, exit, data) {\n var i = 0,\n node,\n groupLength = group.length,\n dataLength = data.length;\n\n // Put any non-null nodes that fit into update.\n // Put any null nodes into enter.\n // Put any remaining data into enter.\n for (; i < dataLength; ++i) {\n if (node = group[i]) {\n node.__data__ = data[i];\n update[i] = node;\n } else {\n enter[i] = new EnterNode(parent, data[i]);\n }\n }\n\n // Put any non-null nodes that don’t fit into exit.\n for (; i < groupLength; ++i) {\n if (node = group[i]) {\n exit[i] = node;\n }\n }\n}\n\nfunction bindKey(parent, group, enter, update, exit, data, key) {\n var i,\n node,\n nodeByKeyValue = {},\n groupLength = group.length,\n dataLength = data.length,\n keyValues = new Array(groupLength),\n keyValue;\n\n // Compute the key for each node.\n // If multiple nodes have the same key, the duplicates are added to exit.\n for (i = 0; i < groupLength; ++i) {\n if (node = group[i]) {\n keyValues[i] = keyValue = keyPrefix + key.call(node, node.__data__, i, group);\n if (keyValue in nodeByKeyValue) {\n exit[i] = node;\n } else {\n nodeByKeyValue[keyValue] = node;\n }\n }\n }\n\n // Compute the key for each datum.\n // If there a node associated with this key, join and add it to update.\n // If there is not (or the key is a duplicate), add it to enter.\n for (i = 0; i < dataLength; ++i) {\n keyValue = keyPrefix + key.call(parent, data[i], i, data);\n if (node = nodeByKeyValue[keyValue]) {\n update[i] = node;\n node.__data__ = data[i];\n nodeByKeyValue[keyValue] = null;\n } else {\n enter[i] = new EnterNode(parent, data[i]);\n }\n }\n\n // Add any remaining nodes that were not bound to data to exit.\n for (i = 0; i < groupLength; ++i) {\n if ((node = group[i]) && (nodeByKeyValue[keyValues[i]] === node)) {\n exit[i] = node;\n }\n }\n}\n\nexport default function(value, key) {\n if (!value) {\n data = new Array(this.size()), j = -1;\n this.each(function(d) { data[++j] = d; });\n return data;\n }\n\n var bind = key ? bindKey : bindIndex,\n parents = this._parents,\n groups = this._groups;\n\n if (typeof value !== \"function\") value = constant(value);\n\n for (var m = groups.length, update = new Array(m), enter = new Array(m), exit = new Array(m), j = 0; j < m; ++j) {\n var parent = parents[j],\n group = groups[j],\n groupLength = group.length,\n data = value.call(parent, parent && parent.__data__, j, parents),\n dataLength = data.length,\n enterGroup = enter[j] = new Array(dataLength),\n updateGroup = update[j] = new Array(dataLength),\n exitGroup = exit[j] = new Array(groupLength);\n\n bind(parent, group, enterGroup, updateGroup, exitGroup, data, key);\n\n // Now connect the enter nodes to their following update node, such that\n // appendChild can insert the materialized enter node before this node,\n // rather than at the end of the parent node.\n for (var i0 = 0, i1 = 0, previous, next; i0 < dataLength; ++i0) {\n if (previous = enterGroup[i0]) {\n if (i0 >= i1) i1 = i0 + 1;\n while (!(next = updateGroup[i1]) && ++i1 < dataLength);\n previous._next = next || null;\n }\n }\n }\n\n update = new Selection(update, parents);\n update._enter = enter;\n update._exit = exit;\n return update;\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-selection/src/selection/data.js\n// module id = 149\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 11 12","export default function(x) {\n return function() {\n return x;\n };\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-selection/src/constant.js\n// module id = 150\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 11 12","import sparse from \"./sparse\";\nimport {Selection} from \"./index\";\n\nexport default function() {\n return new Selection(this._exit || this._groups.map(sparse), this._parents);\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-selection/src/selection/exit.js\n// module id = 151\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 11 12","import {Selection} from \"./index\";\n\nexport default function(selection) {\n\n for (var groups0 = this._groups, groups1 = selection._groups, m0 = groups0.length, m1 = groups1.length, m = Math.min(m0, m1), merges = new Array(m0), j = 0; j < m; ++j) {\n for (var group0 = groups0[j], group1 = groups1[j], n = group0.length, merge = merges[j] = new Array(n), node, i = 0; i < n; ++i) {\n if (node = group0[i] || group1[i]) {\n merge[i] = node;\n }\n }\n }\n\n for (; j < m0; ++j) {\n merges[j] = groups0[j];\n }\n\n return new Selection(merges, this._parents);\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-selection/src/selection/merge.js\n// module id = 152\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 11 12","export default function() {\n\n for (var groups = this._groups, j = -1, m = groups.length; ++j < m;) {\n for (var group = groups[j], i = group.length - 1, next = group[i], node; --i >= 0;) {\n if (node = group[i]) {\n if (next && next !== node.nextSibling) next.parentNode.insertBefore(node, next);\n next = node;\n }\n }\n }\n\n return this;\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-selection/src/selection/order.js\n// module id = 153\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 11 12","import {Selection} from \"./index\";\n\nexport default function(compare) {\n if (!compare) compare = ascending;\n\n function compareNode(a, b) {\n return a && b ? compare(a.__data__, b.__data__) : !a - !b;\n }\n\n for (var groups = this._groups, m = groups.length, sortgroups = new Array(m), j = 0; j < m; ++j) {\n for (var group = groups[j], n = group.length, sortgroup = sortgroups[j] = new Array(n), node, i = 0; i < n; ++i) {\n if (node = group[i]) {\n sortgroup[i] = node;\n }\n }\n sortgroup.sort(compareNode);\n }\n\n return new Selection(sortgroups, this._parents).order();\n}\n\nfunction ascending(a, b) {\n return a < b ? -1 : a > b ? 1 : a >= b ? 0 : NaN;\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-selection/src/selection/sort.js\n// module id = 154\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 11 12","export default function() {\n var callback = arguments[0];\n arguments[0] = this;\n callback.apply(null, arguments);\n return this;\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-selection/src/selection/call.js\n// module id = 155\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 11 12","export default function() {\n var nodes = new Array(this.size()), i = -1;\n this.each(function() { nodes[++i] = this; });\n return nodes;\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-selection/src/selection/nodes.js\n// module id = 156\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 11 12","export default function() {\n\n for (var groups = this._groups, j = 0, m = groups.length; j < m; ++j) {\n for (var group = groups[j], i = 0, n = group.length; i < n; ++i) {\n var node = group[i];\n if (node) return node;\n }\n }\n\n return null;\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-selection/src/selection/node.js\n// module id = 157\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 11 12","export default function() {\n var size = 0;\n this.each(function() { ++size; });\n return size;\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-selection/src/selection/size.js\n// module id = 158\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 11 12","export default function() {\n return !this.node();\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-selection/src/selection/empty.js\n// module id = 159\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 11 12","export default function(callback) {\n\n for (var groups = this._groups, j = 0, m = groups.length; j < m; ++j) {\n for (var group = groups[j], i = 0, n = group.length, node; i < n; ++i) {\n if (node = group[i]) callback.call(node, node.__data__, i, group);\n }\n }\n\n return this;\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-selection/src/selection/each.js\n// module id = 160\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 11 12","import namespace from \"../namespace\";\n\nfunction attrRemove(name) {\n return function() {\n this.removeAttribute(name);\n };\n}\n\nfunction attrRemoveNS(fullname) {\n return function() {\n this.removeAttributeNS(fullname.space, fullname.local);\n };\n}\n\nfunction attrConstant(name, value) {\n return function() {\n this.setAttribute(name, value);\n };\n}\n\nfunction attrConstantNS(fullname, value) {\n return function() {\n this.setAttributeNS(fullname.space, fullname.local, value);\n };\n}\n\nfunction attrFunction(name, value) {\n return function() {\n var v = value.apply(this, arguments);\n if (v == null) this.removeAttribute(name);\n else this.setAttribute(name, v);\n };\n}\n\nfunction attrFunctionNS(fullname, value) {\n return function() {\n var v = value.apply(this, arguments);\n if (v == null) this.removeAttributeNS(fullname.space, fullname.local);\n else this.setAttributeNS(fullname.space, fullname.local, v);\n };\n}\n\nexport default function(name, value) {\n var fullname = namespace(name);\n\n if (arguments.length < 2) {\n var node = this.node();\n return fullname.local\n ? node.getAttributeNS(fullname.space, fullname.local)\n : node.getAttribute(fullname);\n }\n\n return this.each((value == null\n ? (fullname.local ? attrRemoveNS : attrRemove) : (typeof value === \"function\"\n ? (fullname.local ? attrFunctionNS : attrFunction)\n : (fullname.local ? attrConstantNS : attrConstant)))(fullname, value));\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-selection/src/selection/attr.js\n// module id = 161\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 11 12","function propertyRemove(name) {\n return function() {\n delete this[name];\n };\n}\n\nfunction propertyConstant(name, value) {\n return function() {\n this[name] = value;\n };\n}\n\nfunction propertyFunction(name, value) {\n return function() {\n var v = value.apply(this, arguments);\n if (v == null) delete this[name];\n else this[name] = v;\n };\n}\n\nexport default function(name, value) {\n return arguments.length > 1\n ? this.each((value == null\n ? propertyRemove : typeof value === \"function\"\n ? propertyFunction\n : propertyConstant)(name, value))\n : this.node()[name];\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-selection/src/selection/property.js\n// module id = 162\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 11 12","function classArray(string) {\n return string.trim().split(/^|\\s+/);\n}\n\nfunction classList(node) {\n return node.classList || new ClassList(node);\n}\n\nfunction ClassList(node) {\n this._node = node;\n this._names = classArray(node.getAttribute(\"class\") || \"\");\n}\n\nClassList.prototype = {\n add: function(name) {\n var i = this._names.indexOf(name);\n if (i < 0) {\n this._names.push(name);\n this._node.setAttribute(\"class\", this._names.join(\" \"));\n }\n },\n remove: function(name) {\n var i = this._names.indexOf(name);\n if (i >= 0) {\n this._names.splice(i, 1);\n this._node.setAttribute(\"class\", this._names.join(\" \"));\n }\n },\n contains: function(name) {\n return this._names.indexOf(name) >= 0;\n }\n};\n\nfunction classedAdd(node, names) {\n var list = classList(node), i = -1, n = names.length;\n while (++i < n) list.add(names[i]);\n}\n\nfunction classedRemove(node, names) {\n var list = classList(node), i = -1, n = names.length;\n while (++i < n) list.remove(names[i]);\n}\n\nfunction classedTrue(names) {\n return function() {\n classedAdd(this, names);\n };\n}\n\nfunction classedFalse(names) {\n return function() {\n classedRemove(this, names);\n };\n}\n\nfunction classedFunction(names, value) {\n return function() {\n (value.apply(this, arguments) ? classedAdd : classedRemove)(this, names);\n };\n}\n\nexport default function(name, value) {\n var names = classArray(name + \"\");\n\n if (arguments.length < 2) {\n var list = classList(this.node()), i = -1, n = names.length;\n while (++i < n) if (!list.contains(names[i])) return false;\n return true;\n }\n\n return this.each((typeof value === \"function\"\n ? classedFunction : value\n ? classedTrue\n : classedFalse)(names, value));\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-selection/src/selection/classed.js\n// module id = 163\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 11 12","function textRemove() {\n this.textContent = \"\";\n}\n\nfunction textConstant(value) {\n return function() {\n this.textContent = value;\n };\n}\n\nfunction textFunction(value) {\n return function() {\n var v = value.apply(this, arguments);\n this.textContent = v == null ? \"\" : v;\n };\n}\n\nexport default function(value) {\n return arguments.length\n ? this.each(value == null\n ? textRemove : (typeof value === \"function\"\n ? textFunction\n : textConstant)(value))\n : this.node().textContent;\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-selection/src/selection/text.js\n// module id = 164\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 11 12","function htmlRemove() {\n this.innerHTML = \"\";\n}\n\nfunction htmlConstant(value) {\n return function() {\n this.innerHTML = value;\n };\n}\n\nfunction htmlFunction(value) {\n return function() {\n var v = value.apply(this, arguments);\n this.innerHTML = v == null ? \"\" : v;\n };\n}\n\nexport default function(value) {\n return arguments.length\n ? this.each(value == null\n ? htmlRemove : (typeof value === \"function\"\n ? htmlFunction\n : htmlConstant)(value))\n : this.node().innerHTML;\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-selection/src/selection/html.js\n// module id = 165\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 11 12","function raise() {\n if (this.nextSibling) this.parentNode.appendChild(this);\n}\n\nexport default function() {\n return this.each(raise);\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-selection/src/selection/raise.js\n// module id = 166\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 11 12","function lower() {\n if (this.previousSibling) this.parentNode.insertBefore(this, this.parentNode.firstChild);\n}\n\nexport default function() {\n return this.each(lower);\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-selection/src/selection/lower.js\n// module id = 167\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 11 12","import creator from \"../creator\";\n\nexport default function(name) {\n var create = typeof name === \"function\" ? name : creator(name);\n return this.select(function() {\n return this.appendChild(create.apply(this, arguments));\n });\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-selection/src/selection/append.js\n// module id = 168\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 11 12","import creator from \"../creator\";\nimport selector from \"../selector\";\n\nfunction constantNull() {\n return null;\n}\n\nexport default function(name, before) {\n var create = typeof name === \"function\" ? name : creator(name),\n select = before == null ? constantNull : typeof before === \"function\" ? before : selector(before);\n return this.select(function() {\n return this.insertBefore(create.apply(this, arguments), select.apply(this, arguments) || null);\n });\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-selection/src/selection/insert.js\n// module id = 169\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 11 12","function remove() {\n var parent = this.parentNode;\n if (parent) parent.removeChild(this);\n}\n\nexport default function() {\n return this.each(remove);\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-selection/src/selection/remove.js\n// module id = 170\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 11 12","export default function(value) {\n return arguments.length\n ? this.property(\"__data__\", value)\n : this.node().__data__;\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-selection/src/selection/datum.js\n// module id = 171\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 11 12","import defaultView from \"../window\";\n\nfunction dispatchEvent(node, type, params) {\n var window = defaultView(node),\n event = window.CustomEvent;\n\n if (typeof event === \"function\") {\n event = new event(type, params);\n } else {\n event = window.document.createEvent(\"Event\");\n if (params) event.initEvent(type, params.bubbles, params.cancelable), event.detail = params.detail;\n else event.initEvent(type, false, false);\n }\n\n node.dispatchEvent(event);\n}\n\nfunction dispatchConstant(type, params) {\n return function() {\n return dispatchEvent(this, type, params);\n };\n}\n\nfunction dispatchFunction(type, params) {\n return function() {\n return dispatchEvent(this, type, params.apply(this, arguments));\n };\n}\n\nexport default function(type, params) {\n return this.each((typeof params === \"function\"\n ? dispatchFunction\n : dispatchConstant)(type, params));\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-selection/src/selection/dispatch.js\n// module id = 172\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 11 12","import {Selection, root} from \"./selection/index\";\n\nexport default function(selector) {\n return typeof selector === \"string\"\n ? new Selection([document.querySelectorAll(selector)], [document.documentElement])\n : new Selection([selector == null ? [] : selector], root);\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-selection/src/selectAll.js\n// module id = 173\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 11 12","import sourceEvent from \"./sourceEvent\";\nimport point from \"./point\";\n\nexport default function(node, touches, identifier) {\n if (arguments.length < 3) identifier = touches, touches = sourceEvent().changedTouches;\n\n for (var i = 0, n = touches ? touches.length : 0, touch; i < n; ++i) {\n if ((touch = touches[i]).identifier === identifier) {\n return point(node, touch);\n }\n }\n\n return null;\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-selection/src/touch.js\n// module id = 174\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 11 12","import sourceEvent from \"./sourceEvent\";\nimport point from \"./point\";\n\nexport default function(node, touches) {\n if (touches == null) touches = sourceEvent().touches;\n\n for (var i = 0, n = touches ? touches.length : 0, points = new Array(n); i < n; ++i) {\n points[i] = point(node, touches[i]);\n }\n\n return points;\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-selection/src/touches.js\n// module id = 175\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 11 12","import {selection} from \"d3-selection\";\nimport selection_interrupt from \"./interrupt\";\nimport selection_transition from \"./transition\";\n\nselection.prototype.interrupt = selection_interrupt;\nselection.prototype.transition = selection_transition;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-transition/src/selection/index.js\n// module id = 176\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 11 12","import interrupt from \"../interrupt\";\n\nexport default function(name) {\n return this.each(function() {\n interrupt(this, name);\n });\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-transition/src/selection/interrupt.js\n// module id = 177\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 11 12","import {Timer} from \"./timer\";\n\nexport default function(callback, delay, time) {\n var t = new Timer;\n delay = delay == null ? 0 : +delay;\n t.restart(function(elapsed) {\n t.stop();\n callback(elapsed + delay);\n }, delay, time);\n return t;\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-timer/src/timeout.js\n// module id = 178\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 11 12","import {Timer, now} from \"./timer\";\n\nexport default function(callback, delay, time) {\n var t = new Timer, total = delay;\n if (delay == null) return t.restart(callback, delay, time), t;\n delay = +delay, time = time == null ? now() : +time;\n t.restart(function tick(elapsed) {\n elapsed += total;\n t.restart(tick, total += delay, time);\n callback(elapsed);\n }, delay, time);\n return t;\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-timer/src/interval.js\n// module id = 179\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 11 12","import {Transition, newId} from \"../transition/index\";\nimport schedule from \"../transition/schedule\";\nimport {easeCubicInOut} from \"d3-ease\";\nimport {now} from \"d3-timer\";\n\nvar defaultTiming = {\n time: null, // Set on use.\n delay: 0,\n duration: 250,\n ease: easeCubicInOut\n};\n\nfunction inherit(node, id) {\n var timing;\n while (!(timing = node.__transition) || !(timing = timing[id])) {\n if (!(node = node.parentNode)) {\n return defaultTiming.time = now(), defaultTiming;\n }\n }\n return timing;\n}\n\nexport default function(name) {\n var id,\n timing;\n\n if (name instanceof Transition) {\n id = name._id, name = name._name;\n } else {\n id = newId(), (timing = defaultTiming).time = now(), name = name == null ? null : name + \"\";\n }\n\n for (var groups = this._groups, m = groups.length, j = 0; j < m; ++j) {\n for (var group = groups[j], n = group.length, node, i = 0; i < n; ++i) {\n if (node = group[i]) {\n schedule(node, name, id, i, group, timing || inherit(node, id));\n }\n }\n }\n\n return new Transition(groups, this._parents, name, id);\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-transition/src/selection/transition.js\n// module id = 180\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 11 12","import {interpolateTransformSvg as interpolateTransform} from \"d3-interpolate\";\nimport {namespace} from \"d3-selection\";\nimport {tweenValue} from \"./tween\";\nimport interpolate from \"./interpolate\";\n\nfunction attrRemove(name) {\n return function() {\n this.removeAttribute(name);\n };\n}\n\nfunction attrRemoveNS(fullname) {\n return function() {\n this.removeAttributeNS(fullname.space, fullname.local);\n };\n}\n\nfunction attrConstant(name, interpolate, value1) {\n var value00,\n interpolate0;\n return function() {\n var value0 = this.getAttribute(name);\n return value0 === value1 ? null\n : value0 === value00 ? interpolate0\n : interpolate0 = interpolate(value00 = value0, value1);\n };\n}\n\nfunction attrConstantNS(fullname, interpolate, value1) {\n var value00,\n interpolate0;\n return function() {\n var value0 = this.getAttributeNS(fullname.space, fullname.local);\n return value0 === value1 ? null\n : value0 === value00 ? interpolate0\n : interpolate0 = interpolate(value00 = value0, value1);\n };\n}\n\nfunction attrFunction(name, interpolate, value) {\n var value00,\n value10,\n interpolate0;\n return function() {\n var value0, value1 = value(this);\n if (value1 == null) return void this.removeAttribute(name);\n value0 = this.getAttribute(name);\n return value0 === value1 ? null\n : value0 === value00 && value1 === value10 ? interpolate0\n : interpolate0 = interpolate(value00 = value0, value10 = value1);\n };\n}\n\nfunction attrFunctionNS(fullname, interpolate, value) {\n var value00,\n value10,\n interpolate0;\n return function() {\n var value0, value1 = value(this);\n if (value1 == null) return void this.removeAttributeNS(fullname.space, fullname.local);\n value0 = this.getAttributeNS(fullname.space, fullname.local);\n return value0 === value1 ? null\n : value0 === value00 && value1 === value10 ? interpolate0\n : interpolate0 = interpolate(value00 = value0, value10 = value1);\n };\n}\n\nexport default function(name, value) {\n var fullname = namespace(name), i = fullname === \"transform\" ? interpolateTransform : interpolate;\n return this.attrTween(name, typeof value === \"function\"\n ? (fullname.local ? attrFunctionNS : attrFunction)(fullname, i, tweenValue(this, \"attr.\" + name, value))\n : value == null ? (fullname.local ? attrRemoveNS : attrRemove)(fullname)\n : (fullname.local ? attrConstantNS : attrConstant)(fullname, i, value + \"\"));\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-transition/src/transition/attr.js\n// module id = 181\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 11 12","import {namespace} from \"d3-selection\";\n\nfunction attrTweenNS(fullname, value) {\n function tween() {\n var node = this, i = value.apply(node, arguments);\n return i && function(t) {\n node.setAttributeNS(fullname.space, fullname.local, i(t));\n };\n }\n tween._value = value;\n return tween;\n}\n\nfunction attrTween(name, value) {\n function tween() {\n var node = this, i = value.apply(node, arguments);\n return i && function(t) {\n node.setAttribute(name, i(t));\n };\n }\n tween._value = value;\n return tween;\n}\n\nexport default function(name, value) {\n var key = \"attr.\" + name;\n if (arguments.length < 2) return (key = this.tween(key)) && key._value;\n if (value == null) return this.tween(key, null);\n if (typeof value !== \"function\") throw new Error;\n var fullname = namespace(name);\n return this.tween(key, (fullname.local ? attrTweenNS : attrTween)(fullname, value));\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-transition/src/transition/attrTween.js\n// module id = 182\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 11 12","import {get, init} from \"./schedule\";\n\nfunction delayFunction(id, value) {\n return function() {\n init(this, id).delay = +value.apply(this, arguments);\n };\n}\n\nfunction delayConstant(id, value) {\n return value = +value, function() {\n init(this, id).delay = value;\n };\n}\n\nexport default function(value) {\n var id = this._id;\n\n return arguments.length\n ? this.each((typeof value === \"function\"\n ? delayFunction\n : delayConstant)(id, value))\n : get(this.node(), id).delay;\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-transition/src/transition/delay.js\n// module id = 183\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 11 12","import {get, set} from \"./schedule\";\n\nfunction durationFunction(id, value) {\n return function() {\n set(this, id).duration = +value.apply(this, arguments);\n };\n}\n\nfunction durationConstant(id, value) {\n return value = +value, function() {\n set(this, id).duration = value;\n };\n}\n\nexport default function(value) {\n var id = this._id;\n\n return arguments.length\n ? this.each((typeof value === \"function\"\n ? durationFunction\n : durationConstant)(id, value))\n : get(this.node(), id).duration;\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-transition/src/transition/duration.js\n// module id = 184\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 11 12","import {get, set} from \"./schedule\";\n\nfunction easeConstant(id, value) {\n if (typeof value !== \"function\") throw new Error;\n return function() {\n set(this, id).ease = value;\n };\n}\n\nexport default function(value) {\n var id = this._id;\n\n return arguments.length\n ? this.each(easeConstant(id, value))\n : get(this.node(), id).ease;\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-transition/src/transition/ease.js\n// module id = 185\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 11 12","import {matcher} from \"d3-selection\";\nimport {Transition} from \"./index\";\n\nexport default function(match) {\n if (typeof match !== \"function\") match = matcher(match);\n\n for (var groups = this._groups, m = groups.length, subgroups = new Array(m), j = 0; j < m; ++j) {\n for (var group = groups[j], n = group.length, subgroup = subgroups[j] = [], node, i = 0; i < n; ++i) {\n if ((node = group[i]) && match.call(node, node.__data__, i, group)) {\n subgroup.push(node);\n }\n }\n }\n\n return new Transition(subgroups, this._parents, this._name, this._id);\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-transition/src/transition/filter.js\n// module id = 186\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 11 12","import {Transition} from \"./index\";\n\nexport default function(transition) {\n if (transition._id !== this._id) throw new Error;\n\n for (var groups0 = this._groups, groups1 = transition._groups, m0 = groups0.length, m1 = groups1.length, m = Math.min(m0, m1), merges = new Array(m0), j = 0; j < m; ++j) {\n for (var group0 = groups0[j], group1 = groups1[j], n = group0.length, merge = merges[j] = new Array(n), node, i = 0; i < n; ++i) {\n if (node = group0[i] || group1[i]) {\n merge[i] = node;\n }\n }\n }\n\n for (; j < m0; ++j) {\n merges[j] = groups0[j];\n }\n\n return new Transition(merges, this._parents, this._name, this._id);\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-transition/src/transition/merge.js\n// module id = 187\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 11 12","import {get, set, init} from \"./schedule\";\n\nfunction start(name) {\n return (name + \"\").trim().split(/^|\\s+/).every(function(t) {\n var i = t.indexOf(\".\");\n if (i >= 0) t = t.slice(0, i);\n return !t || t === \"start\";\n });\n}\n\nfunction onFunction(id, name, listener) {\n var on0, on1, sit = start(name) ? init : set;\n return function() {\n var schedule = sit(this, id),\n on = schedule.on;\n\n // If this node shared a dispatch with the previous node,\n // just assign the updated shared dispatch and we’re done!\n // Otherwise, copy-on-write.\n if (on !== on0) (on1 = (on0 = on).copy()).on(name, listener);\n\n schedule.on = on1;\n };\n}\n\nexport default function(name, listener) {\n var id = this._id;\n\n return arguments.length < 2\n ? get(this.node(), id).on.on(name)\n : this.each(onFunction(id, name, listener));\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-transition/src/transition/on.js\n// module id = 188\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 11 12","function removeFunction(id) {\n return function() {\n var parent = this.parentNode;\n for (var i in this.__transition) if (+i !== id) return;\n if (parent) parent.removeChild(this);\n };\n}\n\nexport default function() {\n return this.on(\"end.remove\", removeFunction(this._id));\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-transition/src/transition/remove.js\n// module id = 189\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 11 12","import {selector} from \"d3-selection\";\nimport {Transition} from \"./index\";\nimport schedule, {get} from \"./schedule\";\n\nexport default function(select) {\n var name = this._name,\n id = this._id;\n\n if (typeof select !== \"function\") select = selector(select);\n\n for (var groups = this._groups, m = groups.length, subgroups = new Array(m), j = 0; j < m; ++j) {\n for (var group = groups[j], n = group.length, subgroup = subgroups[j] = new Array(n), node, subnode, i = 0; i < n; ++i) {\n if ((node = group[i]) && (subnode = select.call(node, node.__data__, i, group))) {\n if (\"__data__\" in node) subnode.__data__ = node.__data__;\n subgroup[i] = subnode;\n schedule(subgroup[i], name, id, i, subgroup, get(node, id));\n }\n }\n }\n\n return new Transition(subgroups, this._parents, name, id);\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-transition/src/transition/select.js\n// module id = 190\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 11 12","import {selectorAll} from \"d3-selection\";\nimport {Transition} from \"./index\";\nimport schedule, {get} from \"./schedule\";\n\nexport default function(select) {\n var name = this._name,\n id = this._id;\n\n if (typeof select !== \"function\") select = selectorAll(select);\n\n for (var groups = this._groups, m = groups.length, subgroups = [], parents = [], j = 0; j < m; ++j) {\n for (var group = groups[j], n = group.length, node, i = 0; i < n; ++i) {\n if (node = group[i]) {\n for (var children = select.call(node, node.__data__, i, group), child, inherit = get(node, id), k = 0, l = children.length; k < l; ++k) {\n if (child = children[k]) {\n schedule(child, name, id, k, children, inherit);\n }\n }\n subgroups.push(children);\n parents.push(node);\n }\n }\n }\n\n return new Transition(subgroups, parents, name, id);\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-transition/src/transition/selectAll.js\n// module id = 191\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 11 12","import {selection} from \"d3-selection\";\n\nvar Selection = selection.prototype.constructor;\n\nexport default function() {\n return new Selection(this._groups, this._parents);\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-transition/src/transition/selection.js\n// module id = 192\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 11 12","import {interpolateTransformCss as interpolateTransform} from \"d3-interpolate\";\nimport {style} from \"d3-selection\";\nimport {tweenValue} from \"./tween\";\nimport interpolate from \"./interpolate\";\n\nfunction styleRemove(name, interpolate) {\n var value00,\n value10,\n interpolate0;\n return function() {\n var value0 = style(this, name),\n value1 = (this.style.removeProperty(name), style(this, name));\n return value0 === value1 ? null\n : value0 === value00 && value1 === value10 ? interpolate0\n : interpolate0 = interpolate(value00 = value0, value10 = value1);\n };\n}\n\nfunction styleRemoveEnd(name) {\n return function() {\n this.style.removeProperty(name);\n };\n}\n\nfunction styleConstant(name, interpolate, value1) {\n var value00,\n interpolate0;\n return function() {\n var value0 = style(this, name);\n return value0 === value1 ? null\n : value0 === value00 ? interpolate0\n : interpolate0 = interpolate(value00 = value0, value1);\n };\n}\n\nfunction styleFunction(name, interpolate, value) {\n var value00,\n value10,\n interpolate0;\n return function() {\n var value0 = style(this, name),\n value1 = value(this);\n if (value1 == null) value1 = (this.style.removeProperty(name), style(this, name));\n return value0 === value1 ? null\n : value0 === value00 && value1 === value10 ? interpolate0\n : interpolate0 = interpolate(value00 = value0, value10 = value1);\n };\n}\n\nexport default function(name, value, priority) {\n var i = (name += \"\") === \"transform\" ? interpolateTransform : interpolate;\n return value == null ? this\n .styleTween(name, styleRemove(name, i))\n .on(\"end.style.\" + name, styleRemoveEnd(name))\n : this.styleTween(name, typeof value === \"function\"\n ? styleFunction(name, i, tweenValue(this, \"style.\" + name, value))\n : styleConstant(name, i, value + \"\"), priority);\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-transition/src/transition/style.js\n// module id = 193\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 11 12","function styleTween(name, value, priority) {\n function tween() {\n var node = this, i = value.apply(node, arguments);\n return i && function(t) {\n node.style.setProperty(name, i(t), priority);\n };\n }\n tween._value = value;\n return tween;\n}\n\nexport default function(name, value, priority) {\n var key = \"style.\" + (name += \"\");\n if (arguments.length < 2) return (key = this.tween(key)) && key._value;\n if (value == null) return this.tween(key, null);\n if (typeof value !== \"function\") throw new Error;\n return this.tween(key, styleTween(name, value, priority == null ? \"\" : priority));\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-transition/src/transition/styleTween.js\n// module id = 194\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 11 12","import {tweenValue} from \"./tween\";\n\nfunction textConstant(value) {\n return function() {\n this.textContent = value;\n };\n}\n\nfunction textFunction(value) {\n return function() {\n var value1 = value(this);\n this.textContent = value1 == null ? \"\" : value1;\n };\n}\n\nexport default function(value) {\n return this.tween(\"text\", typeof value === \"function\"\n ? textFunction(tweenValue(this, \"text\", value))\n : textConstant(value == null ? \"\" : value + \"\"));\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-transition/src/transition/text.js\n// module id = 195\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 11 12","import {Transition, newId} from \"./index\";\nimport schedule, {get} from \"./schedule\";\n\nexport default function() {\n var name = this._name,\n id0 = this._id,\n id1 = newId();\n\n for (var groups = this._groups, m = groups.length, j = 0; j < m; ++j) {\n for (var group = groups[j], n = group.length, node, i = 0; i < n; ++i) {\n if (node = group[i]) {\n var inherit = get(node, id0);\n schedule(node, name, id1, i, group, {\n time: inherit.time + inherit.delay + inherit.duration,\n delay: 0,\n duration: inherit.duration,\n ease: inherit.ease\n });\n }\n }\n }\n\n return new Transition(groups, this._parents, name, id1);\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-transition/src/transition/transition.js\n// module id = 196\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 11 12","import {Transition} from \"./transition/index\";\nimport {SCHEDULED} from \"./transition/schedule\";\n\nvar root = [null];\n\nexport default function(node, name) {\n var schedules = node.__transition,\n schedule,\n i;\n\n if (schedules) {\n name = name == null ? null : name + \"\";\n for (i in schedules) {\n if ((schedule = schedules[i]).state > SCHEDULED && schedule.name === name) {\n return new Transition([[node]], root, name, +i);\n }\n }\n }\n\n return null;\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-transition/src/active.js\n// module id = 197\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 11 12","import {pair} from \"./pairs\";\n\nexport default function(values0, values1, reduce) {\n var n0 = values0.length,\n n1 = values1.length,\n values = new Array(n0 * n1),\n i0,\n i1,\n i,\n value0;\n\n if (reduce == null) reduce = pair;\n\n for (i0 = i = 0; i0 < n0; ++i0) {\n for (value0 = values0[i0], i1 = 0; i1 < n1; ++i1, ++i) {\n values[i] = reduce(value0, values1[i1]);\n }\n }\n\n return values;\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-array/src/cross.js\n// module id = 198\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 12","export default function(a, b) {\n return b < a ? -1 : b > a ? 1 : b >= a ? 0 : NaN;\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-array/src/descending.js\n// module id = 199\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 12","import {slice} from \"./array\";\nimport bisect from \"./bisect\";\nimport constant from \"./constant\";\nimport extent from \"./extent\";\nimport identity from \"./identity\";\nimport range from \"./range\";\nimport {tickStep} from \"./ticks\";\nimport sturges from \"./threshold/sturges\";\n\nexport default function() {\n var value = identity,\n domain = extent,\n threshold = sturges;\n\n function histogram(data) {\n var i,\n n = data.length,\n x,\n values = new Array(n);\n\n for (i = 0; i < n; ++i) {\n values[i] = value(data[i], i, data);\n }\n\n var xz = domain(values),\n x0 = xz[0],\n x1 = xz[1],\n tz = threshold(values, x0, x1);\n\n // Convert number of thresholds into uniform thresholds.\n if (!Array.isArray(tz)) {\n tz = tickStep(x0, x1, tz);\n tz = range(Math.ceil(x0 / tz) * tz, Math.floor(x1 / tz) * tz, tz); // exclusive\n }\n\n // Remove any thresholds outside the domain.\n var m = tz.length;\n while (tz[0] <= x0) tz.shift(), --m;\n while (tz[m - 1] > x1) tz.pop(), --m;\n\n var bins = new Array(m + 1),\n bin;\n\n // Initialize bins.\n for (i = 0; i <= m; ++i) {\n bin = bins[i] = [];\n bin.x0 = i > 0 ? tz[i - 1] : x0;\n bin.x1 = i < m ? tz[i] : x1;\n }\n\n // Assign data to bins by value, ignoring any outside the domain.\n for (i = 0; i < n; ++i) {\n x = values[i];\n if (x0 <= x && x <= x1) {\n bins[bisect(tz, x, 0, m)].push(data[i]);\n }\n }\n\n return bins;\n }\n\n histogram.value = function(_) {\n return arguments.length ? (value = typeof _ === \"function\" ? _ : constant(_), histogram) : value;\n };\n\n histogram.domain = function(_) {\n return arguments.length ? (domain = typeof _ === \"function\" ? _ : constant([_[0], _[1]]), histogram) : domain;\n };\n\n histogram.thresholds = function(_) {\n return arguments.length ? (threshold = typeof _ === \"function\" ? _ : Array.isArray(_) ? constant(slice.call(_)) : constant(_), histogram) : threshold;\n };\n\n return histogram;\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-array/src/histogram.js\n// module id = 200\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 12","export default function(x) {\n return function() {\n return x;\n };\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-array/src/constant.js\n// module id = 201\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 12","export default function(x) {\n return x;\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-array/src/identity.js\n// module id = 202\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 12","import {map} from \"../array\";\nimport ascending from \"../ascending\";\nimport number from \"../number\";\nimport quantile from \"../quantile\";\n\nexport default function(values, min, max) {\n values = map.call(values, number).sort(ascending);\n return Math.ceil((max - min) / (2 * (quantile(values, 0.75) - quantile(values, 0.25)) * Math.pow(values.length, -1 / 3)));\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-array/src/threshold/freedmanDiaconis.js\n// module id = 203\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 12","import deviation from \"../deviation\";\n\nexport default function(values, min, max) {\n return Math.ceil((max - min) / (3.5 * deviation(values) * Math.pow(values.length, -1 / 3)));\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-array/src/threshold/scott.js\n// module id = 204\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 12","export default function(values, valueof) {\n var n = values.length,\n i = -1,\n value,\n max;\n\n if (valueof == null) {\n while (++i < n) { // Find the first comparable value.\n if ((value = values[i]) != null && value >= value) {\n max = value;\n while (++i < n) { // Compare the remaining values.\n if ((value = values[i]) != null && value > max) {\n max = value;\n }\n }\n }\n }\n }\n\n else {\n while (++i < n) { // Find the first comparable value.\n if ((value = valueof(values[i], i, values)) != null && value >= value) {\n max = value;\n while (++i < n) { // Compare the remaining values.\n if ((value = valueof(values[i], i, values)) != null && value > max) {\n max = value;\n }\n }\n }\n }\n }\n\n return max;\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-array/src/max.js\n// module id = 205\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 12","import number from \"./number\";\n\nexport default function(values, valueof) {\n var n = values.length,\n m = n,\n i = -1,\n value,\n sum = 0;\n\n if (valueof == null) {\n while (++i < n) {\n if (!isNaN(value = number(values[i]))) sum += value;\n else --m;\n }\n }\n\n else {\n while (++i < n) {\n if (!isNaN(value = number(valueof(values[i], i, values)))) sum += value;\n else --m;\n }\n }\n\n if (m) return sum / m;\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-array/src/mean.js\n// module id = 206\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 12","import ascending from \"./ascending\";\nimport number from \"./number\";\nimport quantile from \"./quantile\";\n\nexport default function(values, valueof) {\n var n = values.length,\n i = -1,\n value,\n numbers = [];\n\n if (valueof == null) {\n while (++i < n) {\n if (!isNaN(value = number(values[i]))) {\n numbers.push(value);\n }\n }\n }\n\n else {\n while (++i < n) {\n if (!isNaN(value = number(valueof(values[i], i, values)))) {\n numbers.push(value);\n }\n }\n }\n\n return quantile(numbers.sort(ascending), 0.5);\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-array/src/median.js\n// module id = 207\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 12","export default function(arrays) {\n var n = arrays.length,\n m,\n i = -1,\n j = 0,\n merged,\n array;\n\n while (++i < n) j += arrays[i].length;\n merged = new Array(j);\n\n while (--n >= 0) {\n array = arrays[n];\n m = array.length;\n while (--m >= 0) {\n merged[--j] = array[m];\n }\n }\n\n return merged;\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-array/src/merge.js\n// module id = 208\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 12","export default function(array, indexes) {\n var i = indexes.length, permutes = new Array(i);\n while (i--) permutes[i] = array[indexes[i]];\n return permutes;\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-array/src/permute.js\n// module id = 209\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 12","import ascending from \"./ascending\";\n\nexport default function(values, compare) {\n if (!(n = values.length)) return;\n var n,\n i = 0,\n j = 0,\n xi,\n xj = values[j];\n\n if (compare == null) compare = ascending;\n\n while (++i < n) {\n if (compare(xi = values[i], xj) < 0 || compare(xj, xj) !== 0) {\n xj = xi, j = i;\n }\n }\n\n if (compare(xj, xj) === 0) return j;\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-array/src/scan.js\n// module id = 210\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 12","export default function(array, i0, i1) {\n var m = (i1 == null ? array.length : i1) - (i0 = i0 == null ? 0 : +i0),\n t,\n i;\n\n while (m) {\n i = Math.random() * m-- | 0;\n t = array[m + i0];\n array[m + i0] = array[i + i0];\n array[i + i0] = t;\n }\n\n return array;\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-array/src/shuffle.js\n// module id = 211\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 12","export default function(values, valueof) {\n var n = values.length,\n i = -1,\n value,\n sum = 0;\n\n if (valueof == null) {\n while (++i < n) {\n if (value = +values[i]) sum += value; // Note: zero and null are equivalent.\n }\n }\n\n else {\n while (++i < n) {\n if (value = +valueof(values[i], i, values)) sum += value;\n }\n }\n\n return sum;\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-array/src/sum.js\n// module id = 212\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 12","import transpose from \"./transpose\";\n\nexport default function() {\n return transpose(arguments);\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-array/src/zip.js\n// module id = 213\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 12","define(function(require){\n 'use strict';\n\n const d3Array = require('d3-array');\n const d3Ease = require('d3-ease');\n const d3Format = require('d3-format');\n const d3Selection = require('d3-selection');\n const d3Transition = require('d3-transition');\n\n const NUMBER_FORMAT = '.2f';\n\n /**\n * Mini Tooltip Component reusable API class that renders a\n * simple and configurable tooltip element for Britechart's\n * bar and step chart.\n *\n * @module Mini-tooltip\n * @tutorial bar\n * @requires d3\n *\n * @example\n * var barChart = line(),\n * miniTooltip = miniTooltip();\n *\n * barChart\n * .width(500)\n * .height(300)\n * .on('customMouseHover', miniTooltip.show)\n * .on('customMouseMove', miniTooltip.update)\n * .on('customMouseOut', miniTooltip.hide);\n *\n * d3Selection.select('.css-selector')\n * .datum(dataset)\n * .call(barChart);\n *\n * d3Selection.select('.metadata-group .mini-tooltip-container')\n * .datum([])\n * .call(miniTooltip);\n *\n */\n return function module() {\n\n let margin = {\n top: 12,\n right: 12,\n bottom: 12,\n left: 12\n },\n width = 100,\n height = 100,\n\n // Optional Title\n title = '',\n\n // Data Format\n valueLabel = 'value',\n nameLabel = 'name',\n\n // Animations\n mouseChaseDuration = 100,\n ease = d3Ease.easeQuadInOut,\n\n // tooltip\n tooltipBackground,\n backgroundBorderRadius = 1,\n tooltipTextContainer,\n tooltipOffset = {\n y: 0,\n x: 20\n },\n\n // Fonts\n textSize = 14,\n textLineHeight = 1.5,\n valueTextSize = 27,\n valueTextLineHeight = 1.18,\n\n // Colors\n bodyFillColor = '#FFFFFF',\n borderStrokeColor = '#D2D6DF',\n titleFillColor = '#666a73',\n nameTextFillColor = '#666a73',\n valueTextFillColor = '#45494E',\n valueTextWeight = 200,\n\n // formats\n numberFormat = NUMBER_FORMAT,\n valueFormatter = (value) => d3Format.format(numberFormat)(value),\n\n chartWidth,\n chartHeight,\n svg;\n\n\n /**\n * This function creates the graph using the selection as container\n * @param {D3Selection} _selection A d3 selection that represents\n * the container(s) where the chart(s) will be rendered\n */\n function exports(_selection) {\n _selection.each(function(){\n chartWidth = width - margin.left - margin.right;\n chartHeight = height - margin.top - margin.bottom;\n\n buildSVG(this);\n drawTooltip();\n });\n }\n\n /**\n * Builds containers for the tooltip\n * Also applies the Margin convention\n * @private\n */\n function buildContainerGroups() {\n let container = svg\n .append('g')\n .classed('tooltip-container-group', true)\n .attr('transform', `translate( ${margin.left}, ${margin.top})`);\n\n container.append('g').classed('tooltip-group', true);\n }\n\n /**\n * Builds the SVG element that will contain the chart\n * @param {HTMLElement} container DOM element that will work as the container of the graph\n * @private\n */\n function buildSVG(container) {\n if (!svg) {\n svg = d3Selection.select(container)\n .append('g')\n .classed('britechart britechart-mini-tooltip', true);\n\n buildContainerGroups();\n }\n svg\n .transition()\n .attr('width', width)\n .attr('height', height);\n\n // Hidden by default\n exports.hide();\n }\n\n /**\n * Draws the different elements of the Tooltip box\n * @return void\n */\n function drawTooltip(){\n tooltipTextContainer = svg.selectAll('.tooltip-group')\n .append('g')\n .classed('tooltip-text', true);\n\n tooltipBackground = tooltipTextContainer\n .append('rect')\n .classed('tooltip-background', true)\n .attr('width', width)\n .attr('height', height)\n .attr('rx', backgroundBorderRadius)\n .attr('ry', backgroundBorderRadius)\n .attr('y', - margin.top)\n .attr('x', - margin.left)\n .style('fill', bodyFillColor)\n .style('stroke', borderStrokeColor)\n .style('stroke-width', 1)\n .style('pointer-events', 'none')\n .style('opacity', 0.9);\n }\n\n /**\n * Figures out the max length of the tooltip lines\n * @param {D3Selection[]} texts List of svg elements of each line\n * @return {Number} Max size of the lines\n */\n function getMaxLengthLine(...texts) {\n let textSizes = texts.filter(x => !!x)\n .map(x => x.node().getBBox().width);\n\n return d3Array.max(textSizes);\n }\n\n /**\n * Calculates the desired position for the tooltip\n * @param {Number} mouseX Current horizontal mouse position\n * @param {Number} mouseY Current vertical mouse position\n * @param {Number} parentChartWidth Parent's chart width\n * @param {Number} parentChartHeight Parent's chart height\n * @return {Number[]} X and Y position\n * @private\n */\n function getTooltipPosition([mouseX, mouseY], [parentChartWidth, parentChartHeight]) {\n let tooltipX, tooltipY;\n\n if (hasEnoughHorizontalRoom(parentChartWidth, mouseX)) {\n tooltipX = mouseX + tooltipOffset.x;\n } else {\n tooltipX = mouseX - chartWidth - tooltipOffset.x - margin.right;\n }\n\n if (hasEnoughVerticalRoom(parentChartHeight, mouseY)) {\n tooltipY = mouseY + tooltipOffset.y;\n } else {\n tooltipY = mouseY - chartHeight - tooltipOffset.y - margin.bottom;\n }\n\n return [tooltipX, tooltipY];\n }\n\n /**\n * Checks if the mouse is over the bounds of the parent chart\n * @param {Number} chartWidth Parent's chart\n * @param {Number} positionX Mouse position\n * @return {Boolean} If the mouse position allows space for the tooltip\n */\n function hasEnoughHorizontalRoom(parentChartWidth, positionX) {\n return (parentChartWidth - margin.left - margin.right - chartWidth) - positionX > 0;\n }\n\n /**\n * Checks if the mouse is over the bounds of the parent chart\n * @param {Number} chartWidth Parent's chart\n * @param {Number} positionX Mouse position\n * @return {Boolean} If the mouse position allows space for the tooltip\n */\n function hasEnoughVerticalRoom(parentChartHeight, positionY) {\n return (parentChartHeight - margin.top - margin.bottom - chartHeight) - positionY > 0;\n }\n\n /**\n * Hides the tooltip\n * @return {void}\n */\n function hideTooltip() {\n svg.style('display', 'none');\n }\n\n /**\n * Shows the tooltip updating it's content\n * @param {Object} dataPoint Data point from the chart\n * @return {void}\n */\n function showTooltip(dataPoint) {\n updateContent(dataPoint);\n svg.style('display', 'block');\n }\n\n /**\n * Draws the data entries inside the tooltip for a given topic\n * @param {Object} topic Topic to extract data from\n * @return void\n */\n function updateContent(dataPoint = {}){\n let value = dataPoint[valueLabel] || '',\n name = dataPoint[nameLabel] || '',\n lineHeight = textSize * textLineHeight,\n valueLineHeight = valueTextSize * valueTextLineHeight,\n defaultDy = '1em',\n temporalHeight = 0,\n tooltipValue,\n tooltipName,\n tooltipTitle;\n\n tooltipTextContainer.selectAll('text')\n .remove();\n\n if (title) {\n tooltipTitle = tooltipTextContainer\n .append('text')\n .classed('mini-tooltip-title', true)\n .attr('dy', defaultDy)\n .attr('y', 0)\n .style('fill', titleFillColor)\n .style('font-size', textSize)\n .text(title);\n\n temporalHeight = lineHeight + temporalHeight;\n }\n\n if (name) {\n tooltipName = tooltipTextContainer\n .append('text')\n .classed('mini-tooltip-name', true)\n .attr('dy', defaultDy)\n .attr('y', temporalHeight || 0)\n .style('fill', nameTextFillColor)\n .style('font-size', textSize)\n .text(name);\n\n temporalHeight = lineHeight + temporalHeight;\n }\n\n if (value) {\n tooltipValue = tooltipTextContainer\n .append('text')\n .classed('mini-tooltip-value', true)\n .attr('dy', defaultDy)\n .attr('y', temporalHeight || 0)\n .style('fill', valueTextFillColor)\n .style('font-size', valueTextSize)\n .style('font-weight', valueTextWeight)\n .text(valueFormatter(value));\n\n temporalHeight = valueLineHeight + temporalHeight;\n }\n\n chartWidth = getMaxLengthLine(tooltipName, tooltipTitle, tooltipValue);\n chartHeight = temporalHeight;\n }\n\n /**\n * Updates size and position of tooltip depending on the side of the chart we are in\n * @param {Object} dataPoint DataPoint of the tooltip\n * @return void\n */\n function updatePositionAndSize(mousePosition, parentChartSize) {\n let [tooltipX, tooltipY] = getTooltipPosition(mousePosition, parentChartSize);\n\n svg.transition()\n .duration(mouseChaseDuration)\n .ease(ease)\n .attr('height', chartHeight + margin.top + margin.bottom)\n .attr('width', chartWidth + margin.left + margin.right)\n .attr('transform', `translate(${tooltipX},${tooltipY})`);\n\n tooltipBackground\n .attr('height', chartHeight + margin.top + margin.bottom)\n .attr('width', chartWidth + margin.left + margin.right);\n }\n\n /**\n * Updates tooltip content, size and position\n *\n * @param {Object} dataPoint Current datapoint to show info about\n * @return void\n */\n function updateTooltip(dataPoint, position, chartSize) {\n updateContent(dataPoint);\n updatePositionAndSize(position, chartSize);\n }\n\n /**\n * Hides the tooltip\n * @return {Module} Tooltip module to chain calls\n * @public\n */\n exports.hide = function() {\n hideTooltip();\n\n return this;\n };\n\n /**\n * Gets or Sets data's nameLabel\n * @param {text} _x Desired nameLabel\n * @return { text | module} nameLabel or Step Chart module to chain calls\n * @public\n */\n exports.nameLabel = function(_x) {\n if (!arguments.length) {\n return nameLabel;\n }\n nameLabel = _x;\n return this;\n };\n\n /**\n * Gets or Sets the number format for the value displayed on the tooltip\n * @param {string} [_x=\".2f\"] Desired number format\n * @return {string | module} Current numberFormat or Chart module to chain calls\n * @public\n */\n exports.numberFormat = function(_x) {\n if (!arguments.length) {\n return numberFormat;\n }\n numberFormat = _x;\n return this;\n }\n\n /**\n * Shows the tooltip\n * @return {Module} Tooltip module to chain calls\n * @public\n */\n exports.show = function() {\n showTooltip();\n\n return this;\n };\n\n /**\n * Gets or Sets the title of the tooltip\n * @param {string} _x Desired title\n * @return { string | module} Current title or module to chain calls\n * @public\n */\n exports.title = function(_x) {\n if (!arguments.length) {\n return title;\n }\n title = _x;\n return this;\n };\n\n /**\n * Updates the position and content of the tooltip\n * @param {Object} dataPoint Datapoint of the hovered element\n * @param {Array} mousePosition Mouse position relative to the parent chart [x, y]\n * @param {Array} chartSize Parent chart size [x, y]\n * @return {module} Current component\n */\n exports.update = function(dataPoint, mousePosition, chartSize) {\n updateTooltip(dataPoint, mousePosition, chartSize);\n\n return this;\n };\n\n /**\n * Gets or Sets data's valueLabel\n * @param {text} _x Desired valueLabel\n * @return {text | module} valueLabel or Step Chart module to chain calls\n * @public\n */\n exports.valueLabel = function(_x) {\n if (!arguments.length) {\n return valueLabel;\n }\n valueLabel = _x;\n return this;\n }\n\n return exports;\n };\n});\n\n\n\n// WEBPACK FOOTER //\n// ./src/charts/mini-tooltip.js"],"sourceRoot":""}