profoundjs-swagger-stats 1.1.4 → 2.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (87) hide show
  1. package/CHANGELOG.md +64 -0
  2. package/dashboards/prometheus/swagger-stats dashboard v3.json +1269 -0
  3. package/examples/authtest/authtest.js +5 -10
  4. package/examples/fastify/fasifytest.js +24 -5
  5. package/examples/hapijstest/hapijstest.js +17 -2
  6. package/examples/restify/restifytest.js +16 -1
  7. package/examples/spectest/spectest.js +7 -9
  8. package/examples/testapp/petstore.json +1699 -0
  9. package/examples/testapp/testapp.js +6 -62
  10. package/lib/sws-api-swagger.yaml +1 -1
  11. package/lib/swsAPIStats.js +6 -1
  12. package/lib/swsAuth.js +140 -0
  13. package/lib/swsElasticEmitter.js +103 -45
  14. package/lib/swsHapi.js +29 -34
  15. package/lib/swsInterface.js +40 -189
  16. package/lib/swsProcessor.js +1 -1
  17. package/lib/swsReqResStats.js +1 -1
  18. package/lib/swsUtil.js +7 -21
  19. package/lib/swssettings.js +8 -2
  20. package/package.json +90 -91
  21. package/schema/elasticsearch/api_index_template.json +1 -1
  22. package/schema/elasticsearch/api_index_template_7x.json +185 -0
  23. package/scripts/elasticsearch/elastic7/docker-compose.yml +6 -17
  24. package/scripts/elasticsearch/elastic8/docker-compose.yml +34 -0
  25. package/ux/css/app.dc22c4da.css +7 -0
  26. package/ux/css/chunk-vendors.a6da6d7a.css +10 -0
  27. package/ux/fonts/KFOkCnqEu92Fr1MmgVxIIzQ.4aa2e698.woff +0 -0
  28. package/ux/fonts/KFOlCnqEu92Fr1MmEU9fBBc-.40bcb2b8.woff +0 -0
  29. package/ux/fonts/KFOlCnqEu92Fr1MmSU5fBBc-.ea60988b.woff +0 -0
  30. package/ux/fonts/KFOlCnqEu92Fr1MmWUlfBBc-.0774a8b7.woff +0 -0
  31. package/ux/fonts/KFOlCnqEu92Fr1MmYUtfBBc-.bcb7c7e2.woff +0 -0
  32. package/ux/fonts/KFOmCnqEu92Fr1Mu4mxM.d3907d0c.woff +0 -0
  33. package/ux/fonts/fa-brands-400.1a575a41.woff +0 -0
  34. package/ux/fonts/fa-brands-400.ed311c7a.woff2 +0 -0
  35. package/ux/fonts/fa-regular-400.b91d376b.woff2 +0 -0
  36. package/ux/fonts/fa-regular-400.d1d7e3b4.woff +0 -0
  37. package/ux/fonts/fa-solid-900.d745348d.woff +0 -0
  38. package/ux/fonts/fa-solid-900.d824df7e.woff2 +0 -0
  39. package/ux/fonts/flUhRq6tzZclQEJ-Vdg-IuiaDsNa.3e1afe59.woff +0 -0
  40. package/ux/fonts/flUhRq6tzZclQEJ-Vdg-IuiaDsNcIhQ8tQ.a4160421.woff2 +0 -0
  41. package/ux/index.html +1 -1
  42. package/ux/js/app.d095d0d6.js +1 -0
  43. package/ux/js/chunk-2d0b90b4.afe783bc.js +8 -0
  44. package/ux/js/chunk-2d0daf1e.a05fda31.js +11 -0
  45. package/ux/js/chunk-461883cd.a2aa4876.js +82 -0
  46. package/ux/js/chunk-vendors.4f167dc9.js +39 -0
  47. package/ux/logo.png +0 -0
  48. package/.editorconfig +0 -21
  49. package/.travis.yml +0 -23
  50. package/dashboards/prometheus/swagger-stats dashboard.json +0 -1118
  51. package/dist/css/sws.min.css +0 -18
  52. package/dist/fonts/FontAwesome.otf +0 -0
  53. package/dist/fonts/fontawesome-webfont.eot +0 -0
  54. package/dist/fonts/fontawesome-webfont.svg +0 -2671
  55. package/dist/fonts/fontawesome-webfont.ttf +0 -0
  56. package/dist/fonts/fontawesome-webfont.woff +0 -0
  57. package/dist/fonts/fontawesome-webfont.woff2 +0 -0
  58. package/dist/fonts/glyphicons-halflings-regular.eot +0 -0
  59. package/dist/fonts/glyphicons-halflings-regular.svg +0 -288
  60. package/dist/fonts/glyphicons-halflings-regular.ttf +0 -0
  61. package/dist/fonts/glyphicons-halflings-regular.woff +0 -0
  62. package/dist/fonts/glyphicons-halflings-regular.woff2 +0 -0
  63. package/dist/images/favicon.png +0 -0
  64. package/dist/js/sws.min.js +0 -1
  65. package/gulpfile.js +0 -103
  66. package/karma.conf.js +0 -153
  67. package/ux/css/app.71245b0e.css +0 -7
  68. package/ux/css/chunk-vendors.809c52d1.css +0 -10
  69. package/ux/fonts/KFOkCnqEu92Fr1MmgVxIIzQ.5cb7edfc.woff +0 -0
  70. package/ux/fonts/KFOlCnqEu92Fr1MmEU9fBBc-.87284894.woff +0 -0
  71. package/ux/fonts/KFOlCnqEu92Fr1MmSU5fBBc-.b00849e0.woff +0 -0
  72. package/ux/fonts/KFOlCnqEu92Fr1MmWUlfBBc-.adcde98f.woff +0 -0
  73. package/ux/fonts/KFOlCnqEu92Fr1MmYUtfBBc-.bb1e4dc6.woff +0 -0
  74. package/ux/fonts/KFOmCnqEu92Fr1Mu4mxM.60fa3c06.woff +0 -0
  75. package/ux/fonts/fa-brands-400.c5e0f14f.woff +0 -0
  76. package/ux/fonts/fa-brands-400.cccc9d29.woff2 +0 -0
  77. package/ux/fonts/fa-regular-400.c4f508e7.woff +0 -0
  78. package/ux/fonts/fa-regular-400.f5f2566b.woff2 +0 -0
  79. package/ux/fonts/fa-solid-900.333bae20.woff +0 -0
  80. package/ux/fonts/fa-solid-900.44d537ab.woff2 +0 -0
  81. package/ux/fonts/flUhRq6tzZclQEJ-Vdg-IuiaDsNa.29b882f0.woff +0 -0
  82. package/ux/fonts/flUhRq6tzZclQEJ-Vdg-IuiaDsNcIhQ8tQ.0509ab09.woff2 +0 -0
  83. package/ux/js/app.0159ef6a.js +0 -1
  84. package/ux/js/chunk-2d0b90b4.92f1ea49.js +0 -8
  85. package/ux/js/chunk-461883cd.442efb25.js +0 -76
  86. package/ux/js/chunk-vendors.31d3ce30.js +0 -33
  87. /package/ux/js/{chunk-2d0de2f2.553bf976.js → chunk-2d0de2f2.2848649c.js} +0 -0
@@ -0,0 +1,82 @@
1
+ (window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["chunk-461883cd"],{"0a77":function(t,e,i){"use strict";
2
+ /**
3
+ * @license
4
+ * Copyright 2012 Dan Vanderkam (danvdk@gmail.com)
5
+ * MIT-licenced: https://opensource.org/licenses/MIT
6
+ */var a=function(){this.title_div_=null,this.xlabel_div_=null,this.ylabel_div_=null,this.y2label_div_=null};a.prototype.toString=function(){return"ChartLabels Plugin"},a.prototype.activate=function(t){return{layout:this.layout,didDrawChart:this.didDrawChart}};var n=function(t){var e=document.createElement("div");return e.style.position="absolute",e.style.left=t.x+"px",e.style.top=t.y+"px",e.style.width=t.w+"px",e.style.height=t.h+"px",e};a.prototype.detachLabels_=function(){for(var t=[this.title_div_,this.xlabel_div_,this.ylabel_div_,this.y2label_div_],e=0;e<t.length;e++){var i=t[e];i&&(i.parentNode&&i.parentNode.removeChild(i))}this.title_div_=null,this.xlabel_div_=null,this.ylabel_div_=null,this.y2label_div_=null};var r=function(t,e,i,a,n){var r=document.createElement("div");r.style.position="absolute",r.style.left=1==i?"0px":e.x+"px",r.style.top=e.y+"px",r.style.width=e.w+"px",r.style.height=e.h+"px",r.style.fontSize=t.getOption("yLabelWidth")-2+"px";var o=document.createElement("div");o.style.position="absolute",o.style.width=e.h+"px",o.style.height=e.w+"px",o.style.top=e.h/2-e.w/2+"px",o.style.left=e.w/2-e.h/2+"px",o.className="dygraph-label-rotate-"+(1==i?"right":"left");var s=document.createElement("div");return s.className=a,s.innerHTML=n,o.appendChild(s),r.appendChild(o),r};a.prototype.layout=function(t){this.detachLabels_();var e=t.dygraph,i=t.chart_div;if(e.getOption("title")){var a=t.reserveSpaceTop(e.getOption("titleHeight"));this.title_div_=n(a),this.title_div_.style.fontSize=e.getOption("titleHeight")-8+"px";var o=document.createElement("div");o.className="dygraph-label dygraph-title",o.innerHTML=e.getOption("title"),this.title_div_.appendChild(o),i.appendChild(this.title_div_)}if(e.getOption("xlabel")){var s=t.reserveSpaceBottom(e.getOption("xLabelHeight"));this.xlabel_div_=n(s),this.xlabel_div_.style.fontSize=e.getOption("xLabelHeight")-2+"px";o=document.createElement("div");o.className="dygraph-label dygraph-xlabel",o.innerHTML=e.getOption("xlabel"),this.xlabel_div_.appendChild(o),i.appendChild(this.xlabel_div_)}if(e.getOption("ylabel")){var l=t.reserveSpaceLeft(0);this.ylabel_div_=r(e,l,1,"dygraph-label dygraph-ylabel",e.getOption("ylabel")),i.appendChild(this.ylabel_div_)}if(e.getOption("y2label")&&2==e.numAxes()){var h=t.reserveSpaceRight(0);this.y2label_div_=r(e,h,2,"dygraph-label dygraph-y2label",e.getOption("y2label")),i.appendChild(this.y2label_div_)}},a.prototype.didDrawChart=function(t){var e=t.dygraph;this.title_div_&&(this.title_div_.children[0].innerHTML=e.getOption("title")),this.xlabel_div_&&(this.xlabel_div_.children[0].innerHTML=e.getOption("xlabel")),this.ylabel_div_&&(this.ylabel_div_.children[0].children[0].innerHTML=e.getOption("ylabel")),this.y2label_div_&&(this.y2label_div_.children[0].children[0].innerHTML=e.getOption("y2label"))},a.prototype.clearChart=function(){},a.prototype.destroy=function(){this.detachLabels_()},e["a"]=a},"0a79":function(t,e,i){"use strict";(function(t){var a=i("d9ce"),n=i("5261"),r=i("8748"),o=i("d84a"),s=i("5337"),l=i("bde9"),h=i("34cf"),u=(i("96c7"),i("fc5c")),c=i("4590"),d=i("3220"),p=i("5176"),g=i("52b9"),f=i("4d71"),_=i("2f43"),v=i("a988"),y=i("5c94"),x=i("0a77"),m=i("b157"),b=i("2648"),w=i("9c6a"),A=i("3501"),D=function(t,e,i){this.__init__(t,e,i)};D.NAME="Dygraph",D.VERSION="2.2.1";var S={};function O(t){const e=t[0],i=e[0];if("number"!==typeof i&&!l["C"](i))throw new Error(`Expected number or date but got ${typeof i}: ${i}.`);for(let a=1;a<e.length;a++){const t=e[a];if(null!==t&&void 0!==t&&("number"!==typeof t&&!l["A"](t)))throw new Error(`Expected number or array but got ${typeof t}: ${t}.`)}}D._require=function(t){return t in S?S[t]:D._require._b(t)},D._require._b=null,D._require.add=function(t,e){S[t]=e},D.DEFAULT_ROLL_PERIOD=1,D.DEFAULT_WIDTH=480,D.DEFAULT_HEIGHT=320,D.ANIMATION_STEPS=12,D.ANIMATION_DURATION=200,D.Plotters=n["a"]._Plotters,D.addedAnnotationCSS=!1,D.prototype.__init__=function(t,e,i){if(this.is_initial_draw_=!0,this.readyFns_=[],null!==i&&void 0!==i||(i={}),i=D.copyUserAttrs_(i),"string"==typeof t&&(t=document.getElementById(t)),!t)throw new Error("Constructing dygraph with a non-existent div!");this.maindiv_=t,this.file_=e,this.rollPeriod_=i.rollPeriod||D.DEFAULT_ROLL_PERIOD,this.previousVerticalX_=-1,this.fractions_=i.fractions||!1,this.dateWindow_=i.dateWindow||null,this.annotations_=[],t.innerHTML="";const a=window.getComputedStyle(t,null);"0px"===a.paddingLeft&&"0px"===a.paddingRight&&"0px"===a.paddingTop&&"0px"===a.paddingBottom||console.error("Main div contains padding; graph will misbehave"),""===t.style.width&&i.width&&(t.style.width=i.width+"px"),""===t.style.height&&i.height&&(t.style.height=i.height+"px"),""===t.style.height&&0===t.clientHeight&&(t.style.height=D.DEFAULT_HEIGHT+"px",""===t.style.width&&(t.style.width=D.DEFAULT_WIDTH+"px")),this.width_=t.clientWidth||i.width||0,this.height_=t.clientHeight||i.height||0,i.stackedGraph&&(i.fillGraph=!0),this.user_attrs_={},l["T"](this.user_attrs_,i),this.attrs_={},l["U"](this.attrs_,h["a"]),this.boundaryIds_=[],this.setIndexByName_={},this.datasetIndex_=[],this.registeredEvents_=[],this.eventListeners_={},this.attributes_=new r["a"](this),this.createInterface_(),this.plugins_=[];for(var n=D.PLUGINS.concat(this.getOption("plugins")),o=0;o<n.length;o++){var s,u=n[o];s="undefined"!==typeof u.activate?u:new u;var c={plugin:s,events:{},options:{},pluginOptions:{}},d=s.activate(this);for(var p in d)d.hasOwnProperty(p)&&(c.events[p]=d[p]);this.plugins_.push(c)}for(o=0;o<this.plugins_.length;o++){var g=this.plugins_[o];for(var p in g.events)if(g.events.hasOwnProperty(p)){var f=g.events[p],_=[g.plugin,f];p in this.eventListeners_?this.eventListeners_[p].push(_):this.eventListeners_[p]=[_]}}this.createDragInterface_(),this.start_()},D.prototype.cascadeEvents_=function(t,e){if(!(t in this.eventListeners_))return!1;var i={dygraph:this,cancelable:!1,defaultPrevented:!1,preventDefault:function(){if(!i.cancelable)throw"Cannot call preventDefault on non-cancelable event.";i.defaultPrevented=!0},propagationStopped:!1,stopPropagation:function(){i.propagationStopped=!0}};l["T"](i,e);var a=this.eventListeners_[t];if(a)for(var n=a.length-1;n>=0;n--){var r=a[n][0],o=a[n][1];if(o.call(r,i),i.propagationStopped)break}return i.defaultPrevented},D.prototype.getPluginInstance_=function(t){for(var e=0;e<this.plugins_.length;e++){var i=this.plugins_[e];if(i.plugin instanceof t)return i.plugin}return null},D.prototype.isZoomed=function(t){const e=!!this.dateWindow_;if("x"===t)return e;const i=this.axes_.map(t=>!!t.valueRange).indexOf(!0)>=0;if(null===t||void 0===t)return e||i;if("y"===t)return i;throw new Error(`axis parameter is [${t}] must be null, 'x' or 'y'.`)},D.prototype.toString=function(){var t=this.maindiv_,e=t&&t.id?t.id:t;return"[Dygraph "+e+"]"},D.prototype.attr_=function(t,e){return e?this.attributes_.getForSeries(t,e):this.attributes_.get(t)},D.prototype.getOption=function(t,e){return this.attr_(t,e)},D.prototype.getNumericOption=function(t,e){return this.getOption(t,e)},D.prototype.getStringOption=function(t,e){return this.getOption(t,e)},D.prototype.getBooleanOption=function(t,e){return this.getOption(t,e)},D.prototype.getFunctionOption=function(t,e){return this.getOption(t,e)},D.prototype.getOptionForAxis=function(t,e){return this.attributes_.getForAxis(t,e)},D.prototype.optionsViewForAxis_=function(t){var e=this;return function(i){var a=e.user_attrs_.axes;return a&&a[t]&&a[t].hasOwnProperty(i)?a[t][i]:("x"!==t||"logscale"!==i)&&("undefined"!=typeof e.user_attrs_[i]?e.user_attrs_[i]:(a=e.attrs_.axes,a&&a[t]&&a[t].hasOwnProperty(i)?a[t][i]:"y"==t&&e.axes_[0].hasOwnProperty(i)?e.axes_[0][i]:"y2"==t&&e.axes_[1].hasOwnProperty(i)?e.axes_[1][i]:e.attr_(i)))}},D.prototype.rollPeriod=function(){return this.rollPeriod_},D.prototype.xAxisRange=function(){return this.dateWindow_?this.dateWindow_:this.xAxisExtremes()},D.prototype.xAxisExtremes=function(){var t=this.getNumericOption("xRangePad")/this.plotter_.area.w;if(0===this.numRows())return[0-t,1+t];var e=this.rawData_[0][0],i=this.rawData_[this.rawData_.length-1][0];if(t){var a=i-e;e-=a*t,i+=a*t}return[e,i]},D.prototype.yAxisExtremes=function(){const t=this.gatherDatasets_(this.rolledSeries_,null),{extremes:e}=t,i=this.axes_;this.computeYAxisRanges_(e);const a=this.axes_;return this.axes_=i,a.map(t=>t.extremeRange)},D.prototype.yAxisRange=function(t){if("undefined"==typeof t&&(t=0),t<0||t>=this.axes_.length)return null;var e=this.axes_[t];return[e.computedValueRange[0],e.computedValueRange[1]]},D.prototype.yAxisRanges=function(){for(var t=[],e=0;e<this.axes_.length;e++)t.push(this.yAxisRange(e));return t},D.prototype.toDomCoords=function(t,e,i){return[this.toDomXCoord(t),this.toDomYCoord(e,i)]},D.prototype.toDomXCoord=function(t){if(null===t)return null;var e=this.plotter_.area,i=this.xAxisRange();return e.x+(t-i[0])/(i[1]-i[0])*e.w},D.prototype.toDomYCoord=function(t,e){var i=this.toPercentYCoord(t,e);if(null===i)return null;var a=this.plotter_.area;return a.y+i*a.h},D.prototype.toDataCoords=function(t,e,i){return[this.toDataXCoord(t),this.toDataYCoord(e,i)]},D.prototype.toDataXCoord=function(t){if(null===t)return null;var e=this.plotter_.area,i=this.xAxisRange();if(this.attributes_.getForAxis("logscale","x")){var a=(t-e.x)/e.w;return l["I"](i[0],i[1],a)}return i[0]+(t-e.x)/e.w*(i[1]-i[0])},D.prototype.toDataYCoord=function(t,e){if(null===t)return null;var i=this.plotter_.area,a=this.yAxisRange(e);if("undefined"==typeof e&&(e=0),this.attributes_.getForAxis("logscale",e)){var n=(t-i.y)/i.h;return l["I"](a[1],a[0],n)}return a[0]+(i.y+i.h-t)/i.h*(a[1]-a[0])},D.prototype.toPercentYCoord=function(t,e){if(null===t)return null;"undefined"==typeof e&&(e=0);var i,a=this.yAxisRange(e),n=this.attributes_.getForAxis("logscale",e);if(n){var r=l["H"](a[0]),o=l["H"](a[1]);i=(o-l["H"](t))/(o-r)}else i=(a[1]-t)/(a[1]-a[0]);return i},D.prototype.toPercentXCoord=function(t){if(null===t)return null;var e,i=this.xAxisRange(),a=this.attributes_.getForAxis("logscale","x");if(!0===a){var n=l["H"](i[0]),r=l["H"](i[1]);e=(l["H"](t)-n)/(r-n)}else e=(t-i[0])/(i[1]-i[0]);return e},D.prototype.numColumns=function(){return this.rawData_?this.rawData_[0]?this.rawData_[0].length:this.attr_("labels").length:0},D.prototype.numRows=function(){return this.rawData_?this.rawData_.length:0},D.prototype.getValue=function(t,e){return t<0||t>=this.rawData_.length||e<0||e>=this.rawData_[t].length?null:this.rawData_[t][e]},D.prototype.createInterface_=function(){var t=this.maindiv_;this.graphDiv=document.createElement("div"),this.graphDiv.style.textAlign="left",this.graphDiv.style.position="relative",t.appendChild(this.graphDiv),this.canvas_=l["m"](),this.canvas_.style.position="absolute",this.canvas_.style.top=0,this.canvas_.style.left=0,this.hidden_=this.createPlotKitCanvas_(this.canvas_),this.canvas_ctx_=l["x"](this.canvas_),this.hidden_ctx_=l["x"](this.hidden_),this.resizeElements_(),this.graphDiv.appendChild(this.hidden_),this.graphDiv.appendChild(this.canvas_),this.mouseEventElement_=this.createMouseEventElement_(),this.layout_=new a["a"](this);var e=this;if(this.mouseMoveHandler_=function(t){e.mouseMove_(t)},this.mouseOutHandler_=function(t){var i=t.target||t.fromElement,a=t.relatedTarget||t.toElement;l["D"](i,e.graphDiv)&&!l["D"](a,e.graphDiv)&&e.mouseOut_(t)},this.addAndTrackEvent(window,"mouseout",this.mouseOutHandler_),this.addAndTrackEvent(this.mouseEventElement_,"mousemove",this.mouseMoveHandler_),!this.resizeHandler_){this.resizeHandler_=function(t){e.resize()},this.addAndTrackEvent(window,"resize",this.resizeHandler_),this.resizeObserver_=null;var i=this.getStringOption("resizable");if("undefined"===typeof ResizeObserver&&"no"!==i&&(console.error("ResizeObserver unavailable; ignoring resizable property"),i="no"),"horizontal"===i||"vertical"===i||"both"===i?t.style.resize=i:"passive"!==i&&(i="no"),"no"!==i){window.getComputedStyle(t).overflow;"visible"===window.getComputedStyle(t).overflow&&(t.style.overflow="hidden"),this.resizeObserver_=new ResizeObserver(this.resizeHandler_),this.resizeObserver_.observe(t)}}},D.prototype.resizeElements_=function(){this.graphDiv.style.width=this.width_+"px",this.graphDiv.style.height=this.height_+"px";var t=this.getNumericOption("pixelRatio"),e=t||l["y"](this.canvas_ctx_);this.canvas_.width=this.width_*e,this.canvas_.height=this.height_*e,this.canvas_.style.width=this.width_+"px",this.canvas_.style.height=this.height_+"px",1!==e&&this.canvas_ctx_.scale(e,e);var i=t||l["y"](this.hidden_ctx_);this.hidden_.width=this.width_*i,this.hidden_.height=this.height_*i,this.hidden_.style.width=this.width_+"px",this.hidden_.style.height=this.height_+"px",1!==i&&this.hidden_ctx_.scale(i,i)},D.prototype.destroy=function(){this.canvas_ctx_.restore(),this.hidden_ctx_.restore();for(var t=this.plugins_.length-1;t>=0;t--){var e=this.plugins_.pop();e.plugin.destroy&&e.plugin.destroy()}var i=function(t){while(t.hasChildNodes())i(t.firstChild),t.removeChild(t.firstChild)};this.removeTrackedEvents_(),l["O"](window,"mouseout",this.mouseOutHandler_),l["O"](this.mouseEventElement_,"mousemove",this.mouseMoveHandler_),this.resizeObserver_&&(this.resizeObserver_.disconnect(),this.resizeObserver_=null),l["O"](window,"resize",this.resizeHandler_),this.resizeHandler_=null,i(this.maindiv_);var a=function(t){for(var e in t)"object"===typeof t[e]&&(t[e]=null)};a(this.layout_),a(this.plotter_),a(this)},D.prototype.createPlotKitCanvas_=function(t){var e=l["m"]();return e.style.position="absolute",e.style.top=t.style.top,e.style.left=t.style.left,e.width=this.width_,e.height=this.height_,e.style.width=this.width_+"px",e.style.height=this.height_+"px",e},D.prototype.createMouseEventElement_=function(){return this.canvas_},D.prototype.setColors_=function(){var t=this.getLabels(),e=t.length-1;this.colors_=[],this.colorsMap_={};for(var i=this.getNumericOption("colorSaturation")||1,a=this.getNumericOption("colorValue")||.5,n=Math.ceil(e/2),r=this.getOption("colors"),o=this.visibility(),s=0;s<e;s++)if(o[s]){var h=t[s+1],u=this.attributes_.getForSeries("color",h);if(!u)if(r)u=r[s%r.length];else{var c=s%2?n+(s+1)/2:Math.ceil((s+1)/2),d=1*c/(1+e);u=l["z"](d,i,a)}this.colors_.push(u),this.colorsMap_[h]=u}},D.prototype.getColors=function(){return this.colors_},D.prototype.getPropertiesForSeries=function(t){for(var e=-1,i=this.getLabels(),a=1;a<i.length;a++)if(i[a]==t){e=a;break}return-1==e?null:{name:t,column:e,visible:this.visibility()[e-1],color:this.colorsMap_[t],axis:1+this.attributes_.axisForSeries(t)}},D.prototype.createRollInterface_=function(){var t=this.roller_;t||(this.roller_=t=document.createElement("input"),t.type="text",t.style.display="none",t.className="dygraph-roller",this.graphDiv.appendChild(t));var e=this.getBooleanOption("showRoller")?"block":"none",i=this.getArea(),a={top:i.y+i.h-25+"px",left:i.x+1+"px",display:e};t.size="2",t.value=this.rollPeriod_,l["T"](t.style,a);const n=this;t.onchange=function(){return n.adjustRoll(t.value)}},D.prototype.createDragInterface_=function(){var t={isZooming:!1,isPanning:!1,is2DPan:!1,dragStartX:null,dragStartY:null,dragEndX:null,dragEndY:null,dragDirection:null,prevEndX:null,prevEndY:null,prevDragDirection:null,cancelNextDblclick:!1,initialLeftmostDate:null,xUnitsPerPixel:null,dateRange:null,px:0,py:0,boundedDates:null,boundedValues:null,tarp:new u["a"],initializeMouseDown:function(t,e,i){t.preventDefault?t.preventDefault():(t.returnValue=!1,t.cancelBubble=!0);var a=l["v"](e.canvas_);i.px=a.x,i.py=a.y,i.dragStartX=l["t"](t,i),i.dragStartY=l["u"](t,i),i.cancelNextDblclick=!1,i.tarp.cover()},destroy:function(){var t=this;if((t.isZooming||t.isPanning)&&(t.isZooming=!1,t.dragStartX=null,t.dragStartY=null),t.isPanning){t.isPanning=!1,t.draggingDate=null,t.dateRange=null;for(var e=0;e<i.axes_.length;e++)delete i.axes_[e].draggingValue,delete i.axes_[e].dragValueRange}t.tarp.uncover()}},e=this.getOption("interactionModel"),i=this,a=function(e){return function(a){e(a,i,t)}};for(var n in e)e.hasOwnProperty(n)&&this.addAndTrackEvent(this.mouseEventElement_,n,a(e[n]));if(!e.willDestroyContextMyself){var r=function(e){t.destroy()};this.addAndTrackEvent(document,"mouseup",r)}},D.prototype.drawZoomRect_=function(t,e,i,a,n,r,o,s){var h=this.canvas_ctx_;r==l["f"]?h.clearRect(Math.min(e,o),this.layout_.getPlotArea().y,Math.abs(e-o),this.layout_.getPlotArea().h):r==l["h"]&&h.clearRect(this.layout_.getPlotArea().x,Math.min(a,s),this.layout_.getPlotArea().w,Math.abs(a-s)),t==l["f"]?i&&e&&(h.fillStyle="rgba(128,128,128,0.33)",h.fillRect(Math.min(e,i),this.layout_.getPlotArea().y,Math.abs(i-e),this.layout_.getPlotArea().h)):t==l["h"]&&n&&a&&(h.fillStyle="rgba(128,128,128,0.33)",h.fillRect(this.layout_.getPlotArea().x,Math.min(a,n),this.layout_.getPlotArea().w,Math.abs(n-a)))},D.prototype.clearZoomRect_=function(){this.currentZoomRectArgs_=null,this.canvas_ctx_.clearRect(0,0,this.width_,this.height_)},D.prototype.doZoomX_=function(t,e){this.currentZoomRectArgs_=null;var i=this.toDataXCoord(t),a=this.toDataXCoord(e);this.doZoomXDates_(i,a)},D.prototype.doZoomXDates_=function(t,e){var i=this.xAxisRange(),a=[t,e];const n=this.getFunctionOption("zoomCallback"),r=this;this.doAnimatedZoom(i,a,null,null,(function(){n&&n.call(r,t,e,r.yAxisRanges())}))},D.prototype.doZoomY_=function(t,e){this.currentZoomRectArgs_=null;for(var i=this.yAxisRanges(),a=[],n=0;n<this.axes_.length;n++){var r=this.toDataYCoord(t,n),o=this.toDataYCoord(e,n);a.push([o,r])}const s=this.getFunctionOption("zoomCallback"),l=this;this.doAnimatedZoom(null,null,i,a,(function(){if(s){const[t,e]=l.xAxisRange();s.call(l,t,e,l.yAxisRanges())}}))},D.zoomAnimationFunction=function(t,e){var i=1.5;return(1-Math.pow(i,-t))/(1-Math.pow(i,-e))},D.prototype.resetZoom=function(){const t=this.isZoomed("x"),e=this.isZoomed("y"),i=t||e;if(this.clearSelection(),!i)return;const[a,n]=this.xAxisExtremes(),r=this.getBooleanOption("animatedZooms"),o=this.getFunctionOption("zoomCallback");if(!r)return this.dateWindow_=null,this.axes_.forEach(t=>{t.valueRange&&delete t.valueRange}),this.drawGraph_(),void(o&&o.call(this,a,n,this.yAxisRanges()));var s=null,l=null,h=null,u=null;t&&(s=this.xAxisRange(),l=[a,n]),e&&(h=this.yAxisRanges(),u=this.yAxisExtremes());const c=this;this.doAnimatedZoom(s,l,h,u,(function(){c.dateWindow_=null,c.axes_.forEach(t=>{t.valueRange&&delete t.valueRange}),o&&o.call(c,a,n,c.yAxisRanges())}))},D.prototype.doAnimatedZoom=function(t,e,i,a,n){var r,o,s=this.getBooleanOption("animatedZooms")?D.ANIMATION_STEPS:1,h=[],u=[];if(null!==t&&null!==e)for(r=1;r<=s;r++)o=D.zoomAnimationFunction(r,s),h[r-1]=[t[0]*(1-o)+o*e[0],t[1]*(1-o)+o*e[1]];if(null!==i&&null!==a)for(r=1;r<=s;r++){o=D.zoomAnimationFunction(r,s);for(var c=[],d=0;d<this.axes_.length;d++)c.push([i[d][0]*(1-o)+o*a[d][0],i[d][1]*(1-o)+o*a[d][1]]);u[r-1]=c}const p=this;l["P"]((function(t){if(u.length)for(var e=0;e<p.axes_.length;e++){var i=u[t][e];p.axes_[e].valueRange=[i[0],i[1]]}h.length&&(p.dateWindow_=h[t]),p.drawGraph_()}),s,D.ANIMATION_DURATION/s,n)},D.prototype.getArea=function(){return this.plotter_.area},D.prototype.eventToDomCoords=function(t){if(t.offsetX&&t.offsetY)return[t.offsetX,t.offsetY];var e=l["v"](this.mouseEventElement_),i=l["L"](t)-e.x,a=l["M"](t)-e.y;return[i,a]},D.prototype.findClosestRow=function(t){for(var e=1/0,i=-1,a=this.layout_.points,n=0;n<a.length;n++)for(var r=a[n],o=r.length,s=0;s<o;s++){var h=r[s];if(l["G"](h,!0)){var u=Math.abs(h.canvasx-t);u<e&&(e=u,i=h.idx)}}return i},D.prototype.findClosestPoint=function(t,e){for(var i,a,n,r,o,s,h,u=1/0,c=this.layout_.points.length-1;c>=0;--c)for(var d=this.layout_.points[c],p=0;p<d.length;++p)r=d[p],l["G"](r)&&(a=r.canvasx-t,n=r.canvasy-e,i=a*a+n*n,i<u&&(u=i,o=r,s=c,h=r.idx));var g=this.layout_.setNames[s];return{row:h,seriesName:g,point:o}},D.prototype.findStackedPoint=function(t,e){for(var i,a,n=this.findClosestRow(t),r=0;r<this.layout_.points.length;++r){var o=this.getLeftBoundary_(r),s=n-o,h=this.layout_.points[r];if(!(s>=h.length)){var u=h[s];if(l["G"](u)){var c=u.canvasy;if(t>u.canvasx&&s+1<h.length){var d=h[s+1];if(l["G"](d)){var p=d.canvasx-u.canvasx;if(p>0){var g=(t-u.canvasx)/p;c+=g*(d.canvasy-u.canvasy)}}}else if(t<u.canvasx&&s>0){var f=h[s-1];if(l["G"](f)){p=u.canvasx-f.canvasx;if(p>0){g=(u.canvasx-t)/p;c+=g*(f.canvasy-u.canvasy)}}}(0===r||c<e)&&(i=u,a=r)}}}var _=this.layout_.setNames[a];return{row:n,seriesName:_,point:i}},D.prototype.mouseMove_=function(t){var e=this.layout_.points;if(void 0!==e&&null!==e){var i=this.eventToDomCoords(t),a=i[0],n=i[1],r=this.getOption("highlightSeriesOpts"),o=!1;if(r&&!this.isSeriesLocked()){var s;s=this.getBooleanOption("stackedGraph")?this.findStackedPoint(a,n):this.findClosestPoint(a,n),o=this.setSelection(s.row,s.seriesName)}else{var l=this.findClosestRow(a);o=this.setSelection(l)}var h=this.getFunctionOption("highlightCallback");h&&o&&h.call(this,t,this.lastx_,this.selPoints_,this.lastRow_,this.highlightSet_)}},D.prototype.getLeftBoundary_=function(t){if(this.boundaryIds_[t])return this.boundaryIds_[t][0];for(var e=0;e<this.boundaryIds_.length;e++)if(void 0!==this.boundaryIds_[e])return this.boundaryIds_[e][0];return 0},D.prototype.animateSelection_=function(t){var e=10,i=30;void 0===this.fadeLevel&&(this.fadeLevel=0),void 0===this.animateId&&(this.animateId=0);var a=this.fadeLevel,n=t<0?a:e-a;if(n<=0)this.fadeLevel&&this.updateSelection_(1);else{var r=++this.animateId,o=this,s=function(){0!==o.fadeLevel&&t<0&&(o.fadeLevel=0,o.clearSelection())};l["P"]((function(i){o.animateId==r&&(o.fadeLevel+=t,0===o.fadeLevel?o.clearSelection():o.updateSelection_(o.fadeLevel/e))}),n,i,s)}},D.prototype.updateSelection_=function(t){var e;this.cascadeEvents_("select",{selectedRow:-1===this.lastRow_?void 0:this.lastRow_,selectedX:null===this.lastx_?void 0:this.lastx_,selectedPoints:this.selPoints_});var i=this.canvas_ctx_;if(this.getOption("highlightSeriesOpts")){i.clearRect(0,0,this.width_,this.height_);var a=1-this.getNumericOption("highlightSeriesBackgroundAlpha"),n=l["R"](this.getOption("highlightSeriesBackgroundColor"));if(a){var r=this.getBooleanOption("animateBackgroundFade");if(r){if(void 0===t)return void this.animateSelection_(1);a*=t}i.fillStyle="rgba("+n.r+","+n.g+","+n.b+","+a+")",i.fillRect(0,0,this.width_,this.height_)}this.plotter_._renderLineChart(this.highlightSet_,i)}else if(this.previousVerticalX_>=0){var o=0,s=this.attr_("labels");for(e=1;e<s.length;e++){var h=this.getNumericOption("highlightCircleSize",s[e]);h>o&&(o=h)}var u=this.previousVerticalX_;i.clearRect(u-o-1,0,2*o+2,this.height_)}if(this.selPoints_.length>0){var c=this.selPoints_[0].canvasx;for(i.save(),e=0;e<this.selPoints_.length;e++){var d=this.selPoints_[e];if(!isNaN(d.canvasy)){var p=this.getNumericOption("highlightCircleSize",d.name),g=this.getFunctionOption("drawHighlightPointCallback",d.name),f=this.plotter_.colors[d.name];g||(g=l["a"].DEFAULT),i.lineWidth=this.getNumericOption("strokeWidth",d.name),i.strokeStyle=f,i.fillStyle=f,g.call(this,this,d.name,i,c,d.canvasy,f,p,d.idx)}}i.restore(),this.previousVerticalX_=c}},D.prototype.setSelection=function(t,e,i,a){this.selPoints_=[];var n=!1;if(!1!==t&&t>=0){t!=this.lastRow_&&(n=!0),this.lastRow_=t;for(var r=0;r<this.layout_.points.length;++r){var o=this.layout_.points[r],s=t-this.getLeftBoundary_(r);if(s>=0&&s<o.length&&o[s].idx==t){var l=o[s];null!==l.yval&&this.selPoints_.push(l)}else for(var h=0;h<o.length;++h){l=o[h];if(l.idx==t){null!==l.yval&&this.selPoints_.push(l);break}}}}else this.lastRow_>=0&&(n=!0),this.lastRow_=-1;if(this.selPoints_.length?this.lastx_=this.selPoints_[0].xval:this.lastx_=null,void 0!==e&&(this.highlightSet_!==e&&(n=!0),this.highlightSet_=e),void 0!==i&&(this.lockedSet_=i),n&&(this.updateSelection_(void 0),a)){var u=this.getFunctionOption("highlightCallback");if(u){var c={};u.call(this,c,this.lastx_,this.selPoints_,this.lastRow_,this.highlightSet_)}}return n},D.prototype.mouseOut_=function(t){this.getFunctionOption("unhighlightCallback")&&this.getFunctionOption("unhighlightCallback").call(this,t),this.getBooleanOption("hideOverlayOnMouseOut")&&!this.lockedSet_&&this.clearSelection()},D.prototype.clearSelection=function(){this.cascadeEvents_("deselect",{}),this.lockedSet_=!1,this.fadeLevel?this.animateSelection_(-1):(this.canvas_ctx_.clearRect(0,0,this.width_,this.height_),this.fadeLevel=0,this.selPoints_=[],this.lastx_=null,this.lastRow_=-1,this.highlightSet_=null)},D.prototype.getSelection=function(){if(!this.selPoints_||this.selPoints_.length<1)return-1;for(var t=0;t<this.layout_.points.length;t++)for(var e=this.layout_.points[t],i=0;i<e.length;i++)if(e[i].x==this.selPoints_[0].x)return e[i].idx;return-1},D.prototype.getHighlightSeries=function(){return this.highlightSet_},D.prototype.isSeriesLocked=function(){return this.lockedSet_},D.prototype.loadedEvent_=function(t){this.rawData_=this.parseCSV_(t),this.cascadeDataDidUpdateEvent_(),this.predraw_()},D.prototype.addXTicks_=function(){var t;t=this.dateWindow_?[this.dateWindow_[0],this.dateWindow_[1]]:this.xAxisExtremes();var e=this.optionsViewForAxis_("x"),i=e("ticker")(t[0],t[1],this.plotter_.area.w,e,this);this.layout_.setXTicks(i)},D.prototype.getHandlerClass_=function(){var t;return t=this.attr_("dataHandler")?this.attr_("dataHandler"):this.fractions_?this.getBooleanOption("errorBars")?f["a"]:g["a"]:this.getBooleanOption("customBars")?p["a"]:this.getBooleanOption("errorBars")?d["a"]:c["a"],t},D.prototype.predraw_=function(){var t=new Date;this.dataHandler_=new(this.getHandlerClass_()),this.layout_.computePlotArea(),this.computeYAxes_(),this.is_initial_draw_||(this.canvas_ctx_.restore(),this.hidden_ctx_.restore()),this.canvas_ctx_.save(),this.hidden_ctx_.save(),this.plotter_=new n["a"](this,this.hidden_,this.hidden_ctx_,this.layout_),this.createRollInterface_(),this.cascadeEvents_("predraw"),this.rolledSeries_=[null];for(var e=1;e<this.numColumns();e++){var i=this.dataHandler_.extractSeries(this.rawData_,e,this.attributes_);this.rollPeriod_>1&&(i=this.dataHandler_.rollingAverage(i,this.rollPeriod_,this.attributes_,e)),this.rolledSeries_.push(i)}this.drawGraph_();var a=new Date;this.drawingTimeMs_=a-t},D.PointType=void 0,D.stackPoints_=function(t,e,i,a){for(var n=null,r=null,o=null,s=-1,l=function(e){if(!(s>=e))for(var i=e;i<t.length;++i)if(o=null,!isNaN(t[i].yval)&&null!==t[i].yval){s=i,o=t[i];break}},h=0;h<t.length;++h){var u=t[h],c=u.xval;void 0===e[c]&&(e[c]=0);var d=u.yval;isNaN(d)||null===d?"none"==a?d=0:(l(h),d=r&&o&&"none"!=a?r.yval+(o.yval-r.yval)*((c-r.xval)/(o.xval-r.xval)):r&&"all"==a?r.yval:o&&"all"==a?o.yval:0):r=u;var p=e[c];n!=c&&(p+=d,e[c]=p),n=c,u.yval_stacked=p,p>i[1]&&(i[1]=p),p<i[0]&&(i[0]=p)}},D.prototype.gatherDatasets_=function(t,e){var i,a,n,r,o,s,l=[],h=[],u=[],c={},d=t.length-1;for(i=d;i>=1;i--)if(this.visibility()[i-1]){if(e){s=t[i];var p=e[0],g=e[1];for(n=null,r=null,a=0;a<s.length;a++)s[a][0]>=p&&null===n&&(n=a),s[a][0]<=g&&(r=a);null===n&&(n=0);var f=n,_=!0;while(_&&f>0)f--,_=null===s[f][1];null===r&&(r=s.length-1);var v=r;_=!0;while(_&&v<s.length-1)v++,_=null===s[v][1];f!==n&&(n=f),v!==r&&(r=v),l[i-1]=[n,r],s=s.slice(n,r+1)}else s=t[i],l[i-1]=[0,s.length-1];var y=this.attr_("labels")[i],x=this.dataHandler_.getExtremeYValues(s,e,this.getBooleanOption("stepPlot",y)),m=this.dataHandler_.seriesToPoints(s,y,l[i-1][0]);this.getBooleanOption("stackedGraph")&&(o=this.attributes_.axisForSeries(y),void 0===u[o]&&(u[o]=[]),D.stackPoints_(m,u[o],x,this.getBooleanOption("stackedGraphNaNFill"))),c[y]=x,h[i]=m}return{points:h,extremes:c,boundaryIds:l}},D.prototype.drawGraph_=function(){var t=new Date,e=this.is_initial_draw_;this.is_initial_draw_=!1,this.layout_.removeAllDatasets(),this.setColors_(),this.attrs_.pointSize=.5*this.getNumericOption("highlightCircleSize");var i=this.gatherDatasets_(this.rolledSeries_,this.dateWindow_),a=i.points,n=i.extremes;this.boundaryIds_=i.boundaryIds,this.setIndexByName_={};for(var r=this.attr_("labels"),o=0,s=1;s<a.length;s++)this.visibility()[s-1]&&(this.layout_.addDataset(r[s],a[s]),this.datasetIndex_[s]=o++);for(s=0;s<r.length;s++)this.setIndexByName_[r[s]]=s;if(this.computeYAxisRanges_(n),this.layout_.setYAxes(this.axes_),this.addXTicks_(),this.layout_.evaluate(),this.renderGraph_(e),this.getStringOption("timingName")){var l=new Date;console.log(this.getStringOption("timingName")+" - drawGraph: "+(l-t)+"ms")}},D.prototype.renderGraph_=function(t){this.cascadeEvents_("clearChart"),this.plotter_.clear();const e=this.getFunctionOption("underlayCallback");e&&e.call(this,this.hidden_ctx_,this.layout_.getPlotArea(),this,this);var i={canvas:this.hidden_,drawingContext:this.hidden_ctx_};this.cascadeEvents_("willDrawChart",i),this.plotter_.render(),this.cascadeEvents_("didDrawChart",i),this.lastRow_=-1,this.canvas_.getContext("2d").clearRect(0,0,this.width_,this.height_);const a=this.getFunctionOption("drawCallback");if(null!==a&&a.call(this,this,t),t){this.readyFired_=!0;while(this.readyFns_.length>0){var n=this.readyFns_.pop();n(this)}}},D.prototype.computeYAxes_=function(){var t,e,i;for(this.axes_=[],t=0;t<this.attributes_.numAxes();t++)e={g:this},l["T"](e,this.attributes_.axisOptions(t)),this.axes_[t]=e;for(t=0;t<this.axes_.length;t++)if(0===t)e=this.optionsViewForAxis_("y"+(t?"2":"")),i=e("valueRange"),i&&(this.axes_[t].valueRange=i);else{var a=this.user_attrs_.axes;a&&a.y2&&(i=a.y2.valueRange,i&&(this.axes_[t].valueRange=i))}},D.prototype.numAxes=function(){return this.attributes_.numAxes()},D.prototype.axisPropertiesForSeries=function(t){return this.axes_[this.attributes_.axisForSeries(t)]},D.prototype.computeYAxisRanges_=function(t){for(var e,i,a,n,r,o=function(t){return isNaN(parseFloat(t))},s=this.attributes_.numAxes(),h=0;h<s;h++){var u=this.axes_[h],c=this.attributes_.getForAxis("logscale",h),d=this.attributes_.getForAxis("includeZero",h),p=this.attributes_.getForAxis("independentTicks",h);a=this.attributes_.seriesForAxis(h),e=!0,n=.1;const s=this.getNumericOption("yRangePad");if(null!==s&&(e=!1,n=s/this.plotter_.area.h),0===a.length)u.extremeRange=[0,1];else{for(var g,f,_=1/0,v=-1/0,y=0;y<a.length;y++)t.hasOwnProperty(a[y])&&(g=t[a[y]][0],null!==g&&(_=Math.min(g,_)),f=t[a[y]][1],null!==f&&(v=Math.max(f,v)));d&&!c&&(_>0&&(_=0),v<0&&(v=0)),_==1/0&&(_=0),v==-1/0&&(v=1),i=v-_,0===i&&(0!==v?i=Math.abs(v):(v=1,i=1));var x=v,m=_;e&&(c?(x=v+n*i,m=_):(x=v+n*i,m=_-n*i,m<0&&_>=0&&(m=0),x>0&&v<=0&&(x=0))),u.extremeRange=[m,x]}if(u.valueRange){var b=o(u.valueRange[0])?u.extremeRange[0]:u.valueRange[0],w=o(u.valueRange[1])?u.extremeRange[1]:u.valueRange[1];u.computedValueRange=[b,w]}else u.computedValueRange=u.extremeRange;if(!e){if(b=u.computedValueRange[0],w=u.computedValueRange[1],b===w)if(0===b)w=1;else{var A=Math.abs(b/10);b-=A,w+=A}if(c){var D=n/(2*n-1),S=(n-1)/(2*n-1);u.computedValueRange[0]=l["I"](b,w,D),u.computedValueRange[1]=l["I"](b,w,S)}else i=w-b,u.computedValueRange[0]=b-i*n,u.computedValueRange[1]=w+i*n}if(p){u.independentTicks=p;var O=this.optionsViewForAxis_("y"+(h?"2":"")),E=O("ticker");u.ticks=E(u.computedValueRange[0],u.computedValueRange[1],this.plotter_.area.h,O,this),r||(r=u)}}if(void 0===r)throw'Configuration Error: At least one axis has to have the "independentTicks" option activated.';for(h=0;h<s;h++){u=this.axes_[h];if(!u.independentTicks){O=this.optionsViewForAxis_("y"+(h?"2":"")),E=O("ticker");for(var T=r.ticks,L=r.computedValueRange[1]-r.computedValueRange[0],C=u.computedValueRange[1]-u.computedValueRange[0],M=[],N=0;N<T.length;N++){var P=(T[N].v-r.computedValueRange[0])/L,F=u.computedValueRange[0]+P*C;M.push(F)}u.ticks=E(u.computedValueRange[0],u.computedValueRange[1],this.plotter_.area.h,O,this,M)}}},D.prototype.detectTypeFromString_=function(t){var e=!1,i=t.indexOf("-");(i>0&&"e"!=t[i-1]&&"E"!=t[i-1]||t.indexOf("/")>=0||isNaN(parseFloat(t)))&&(e=!0),this.setXAxisOptions_(e)},D.prototype.setXAxisOptions_=function(t){t?(this.attrs_.xValueParser=l["p"],this.attrs_.axes.x.valueFormatter=l["r"],this.attrs_.axes.x.ticker=s["b"],this.attrs_.axes.x.axisLabelFormatter=l["o"]):(this.attrs_.xValueParser=function(t){return parseFloat(t)},this.attrs_.axes.x.valueFormatter=function(t){return t},this.attrs_.axes.x.ticker=s["e"],this.attrs_.axes.x.axisLabelFormatter=this.attrs_.axes.x.valueFormatter)},D.prototype.parseCSV_=function(t){var e,i,a=[],n=l["s"](t),r=t.split(n||"\n"),o=this.getStringOption("delimiter");-1==r[0].indexOf(o)&&r[0].indexOf("\t")>=0&&(o="\t");var s=0;"labels"in this.user_attrs_||(s=1,this.attrs_.labels=r[0].split(o),this.attributes_.reparseSeries());for(var h,u=!1,c=this.attr_("labels").length,d=!1,p=s;p<r.length;p++){var g=r[p];if(p,0!==g.length&&"#"!=g[0]){var f=g.split(o);if(!(f.length<2)){var _=[];if(u||(this.detectTypeFromString_(f[0]),h=this.getFunctionOption("xValueParser"),u=!0),_[0]=h(f[0],this),this.fractions_)for(i=1;i<f.length;i++)e=f[i].split("/"),2!=e.length?(console.error('Expected fractional "num/den" values in CSV data but found a value \''+f[i]+"' on line "+(1+p)+" ('"+g+"') which is not of this form."),_[i]=[0,0]):_[i]=[l["N"](e[0],p,g),l["N"](e[1],p,g)];else if(this.getBooleanOption("errorBars"))for(f.length%2!=1&&console.error("Expected alternating (value, stdev.) pairs in CSV data but line "+(1+p)+" has an odd number of values ("+(f.length-1)+"): '"+g+"'"),i=1;i<f.length;i+=2)_[(i+1)/2]=[l["N"](f[i],p,g),l["N"](f[i+1],p,g)];else if(this.getBooleanOption("customBars"))for(i=1;i<f.length;i++){var v=f[i];/^ *$/.test(v)?_[i]=[null,null,null]:(e=v.split(";"),3==e.length?_[i]=[l["N"](e[0],p,g),l["N"](e[1],p,g),l["N"](e[2],p,g)]:console.warn('When using customBars, values must be either blank or "low;center;high" tuples (got "'+v+'" on line '+(1+p)+")"))}else for(i=1;i<f.length;i++)_[i]=l["N"](f[i],p,g);if(a.length>0&&_[0]<a[a.length-1][0]&&(d=!0),_.length!=c&&console.error("Number of columns in line "+p+" ("+_.length+") does not agree with number of labels ("+c+") "+g),0===p&&this.attr_("labels")){var y=!0;for(i=0;y&&i<_.length;i++)_[i]&&(y=!1);if(y){console.warn("The dygraphs 'labels' option is set, but the first row of CSV data ('"+g+"') appears to also contain labels. Will drop the CSV labels and use the option labels.");continue}}a.push(_)}}}return d&&(console.warn("CSV is out of order; order it correctly to speed loading."),a.sort((function(t,e){return t[0]-e[0]}))),a},D.prototype.parseArray_=function(t){if(0===t.length&&(t=[[0]]),0===t[0].length)return console.error("Data set cannot contain an empty row"),null;var e;if(O(t),null===this.attr_("labels")){for(console.warn("Using default labels. Set labels explicitly via 'labels' in the options parameter"),this.attrs_.labels=["X"],e=1;e<t[0].length;e++)this.attrs_.labels.push("Y"+e);this.attributes_.reparseSeries()}else{var i=this.attr_("labels");if(i.length!=t[0].length)return console.error("Mismatch between number of labels ("+i+") and number of columns in array ("+t[0].length+")"),null}if(l["C"](t[0][0])){this.attrs_.axes.x.valueFormatter=l["r"],this.attrs_.axes.x.ticker=s["b"],this.attrs_.axes.x.axisLabelFormatter=l["o"];var a=l["l"](t);for(e=0;e<t.length;e++){if(0===a[e].length)return console.error("Row "+(1+e)+" of data is empty"),null;if(null===a[e][0]||"function"!=typeof a[e][0].getTime||isNaN(a[e][0].getTime()))return console.error("x value in row "+(1+e)+" is not a Date"),null;a[e][0]=a[e][0].getTime()}return a}return this.attrs_.axes.x.valueFormatter=function(t){return t},this.attrs_.axes.x.ticker=s["e"],this.attrs_.axes.x.axisLabelFormatter=l["J"],t},D.prototype.parseDataTable_=function(t){var e=function(t){var e=String.fromCharCode(65+t%26);t=Math.floor(t/26);while(t>0)e=String.fromCharCode(65+(t-1)%26)+e.toLowerCase(),t=Math.floor((t-1)/26);return e},i=t.getNumberOfColumns(),a=t.getNumberOfRows(),n=t.getColumnType(0);if("date"==n||"datetime"==n)this.attrs_.xValueParser=l["p"],this.attrs_.axes.x.valueFormatter=l["r"],this.attrs_.axes.x.ticker=s["b"],this.attrs_.axes.x.axisLabelFormatter=l["o"];else{if("number"!=n)throw new Error("only 'date', 'datetime' and 'number' types are supported for column 1 of DataTable input (Got '"+n+"')");this.attrs_.xValueParser=function(t){return parseFloat(t)},this.attrs_.axes.x.valueFormatter=function(t){return t},this.attrs_.axes.x.ticker=s["e"],this.attrs_.axes.x.axisLabelFormatter=this.attrs_.axes.x.valueFormatter}var r,o,h=[],u={},c=!1;for(r=1;r<i;r++){var d=t.getColumnType(r);if("number"==d)h.push(r);else{if("string"!=d||!this.getBooleanOption("displayAnnotations"))throw new Error("Only 'number' is supported as a dependent type with Gviz. 'string' is only supported if displayAnnotations is true");var p=h[h.length-1];u.hasOwnProperty(p)?u[p].push(r):u[p]=[r],c=!0}}var g=[t.getColumnLabel(0)];for(r=0;r<h.length;r++)g.push(t.getColumnLabel(h[r])),this.getBooleanOption("errorBars")&&(r+=1);this.attrs_.labels=g,i=g.length;var f=[],_=!1,v=[];for(r=0;r<a;r++){var y=[];if("undefined"!==typeof t.getValue(r,0)&&null!==t.getValue(r,0)){if("date"==n||"datetime"==n?y.push(t.getValue(r,0).getTime()):y.push(t.getValue(r,0)),this.getBooleanOption("errorBars"))for(o=0;o<i-1;o++)y.push([t.getValue(r,1+2*o),t.getValue(r,2+2*o)]);else{for(o=0;o<h.length;o++){var x=h[o];if(y.push(t.getValue(r,x)),c&&u.hasOwnProperty(x)&&null!==t.getValue(r,u[x][0])){var m={};m.series=t.getColumnLabel(x),m.xval=y[0],m.shortText=e(v.length),m.text="";for(var b=0;b<u[x].length;b++)b&&(m.text+="\n"),m.text+=t.getValue(r,u[x][b]);v.push(m)}}for(o=0;o<y.length;o++)isFinite(y[o])||(y[o]=null)}f.length>0&&y[0]<f[f.length-1][0]&&(_=!0),f.push(y)}else console.warn("Ignoring row "+r+" of DataTable because of undefined or null first column.")}_&&(console.warn("DataTable is out of order; order it correctly to speed loading."),f.sort((function(t,e){return t[0]-e[0]}))),this.rawData_=f,v.length>0&&this.setAnnotations(v,!0),this.attributes_.reparseSeries()},D.prototype.cascadeDataDidUpdateEvent_=function(){this.cascadeEvents_("dataDidUpdate",{})},D.prototype.start_=function(){var t=this.file_;"function"==typeof t&&(t=t());const e=l["S"](t);if("array"==e)this.rawData_=this.parseArray_(t),this.cascadeDataDidUpdateEvent_(),this.predraw_();else if("object"==e&&"function"==typeof t.getColumnRange)this.parseDataTable_(t),this.cascadeDataDidUpdateEvent_(),this.predraw_();else if("string"==e){var i=l["s"](t);if(i)this.loadedEvent_(t);else{var a;a=window.XMLHttpRequest?new XMLHttpRequest:new ActiveXObject("Microsoft.XMLHTTP");var n=this;a.onreadystatechange=function(){4==a.readyState&&(200!==a.status&&0!==a.status||n.loadedEvent_(a.responseText))},a.open("GET",t,!0),a.send(null)}}else console.error("Unknown data format: "+e)},D.prototype.updateOptions=function(t,e){"undefined"==typeof e&&(e=!1);var i=t.file,a=D.copyUserAttrs_(t),n=this.attributes_.numAxes();"rollPeriod"in a&&(this.rollPeriod_=a.rollPeriod),"dateWindow"in a&&(this.dateWindow_=a.dateWindow);var r=l["F"](this.attr_("labels"),a);l["U"](this.user_attrs_,a),this.attributes_.reparseSeries(),n<this.attributes_.numAxes()&&this.plotter_.clear(),i?(this.cascadeEvents_("dataWillUpdate",{}),this.file_=i,e||this.start_()):e||(r?this.predraw_():this.renderGraph_(!1))},D.copyUserAttrs_=function(t){var e={};for(var i in t)t.hasOwnProperty(i)&&"file"!=i&&t.hasOwnProperty(i)&&(e[i]=t[i]);return e},D.prototype.resize=function(t,e){if(!this.resize_lock){this.resize_lock=!0,null===t!=(null===e)&&(console.warn("Dygraph.resize() should be called with zero parameters or two non-NULL parameters. Pretending it was zero."),t=e=null);var i=this.width_,a=this.height_;t?(this.maindiv_.style.width=t+"px",this.maindiv_.style.height=e+"px",this.width_=t,this.height_=e):(this.width_=this.maindiv_.clientWidth,this.height_=this.maindiv_.clientHeight),i==this.width_&&a==this.height_||(this.resizeElements_(),this.predraw_()),this.resize_lock=!1}},D.prototype.adjustRoll=function(t){this.rollPeriod_=t,this.predraw_()},D.prototype.visibility=function(){this.getOption("visibility")||(this.attrs_.visibility=[]);while(this.getOption("visibility").length<this.numColumns()-1)this.attrs_.visibility.push(!0);return this.getOption("visibility")},D.prototype.setVisibility=function(t,e){var i=this.visibility(),a=!1;if(Array.isArray(t)||(null!==t&&"object"===typeof t?a=!0:t=[t]),a)for(var n in t)t.hasOwnProperty(n)&&(n<0||n>=i.length?console.warn("Invalid series number in setVisibility: "+n):i[n]=t[n]);else for(n=0;n<t.length;n++)"boolean"===typeof t[n]?n>=i.length?console.warn("Invalid series number in setVisibility: "+n):i[n]=t[n]:t[n]<0||t[n]>=i.length?console.warn("Invalid series number in setVisibility: "+t[n]):i[t[n]]=e;this.predraw_()},D.prototype.size=function(){return{width:this.width_,height:this.height_}},D.prototype.setAnnotations=function(t,e){this.annotations_=t,this.layout_?(this.layout_.setAnnotations(this.annotations_),e||this.predraw_()):console.warn("Tried to setAnnotations before dygraph was ready. Try setting them in a ready() block. See dygraphs.com/tests/annotation.html")},D.prototype.annotations=function(){return this.annotations_},D.prototype.getLabels=function(){var t=this.attr_("labels");return t?t.slice():null},D.prototype.indexFromSetName=function(t){return this.setIndexByName_[t]},D.prototype.getRowForX=function(t){var e=0,i=this.numRows()-1;while(e<=i){var a=i+e>>1,n=this.getValue(a,0);if(n<t)e=a+1;else if(n>t)i=a-1;else{if(e==a)return a;i=a}}return null},D.prototype.ready=function(t){this.is_initial_draw_?this.readyFns_.push(t):t.call(this,this)},D.prototype.addAndTrackEvent=function(t,e,i){l["i"](t,e,i),this.registeredEvents_.push({elem:t,type:e,fn:i})},D.prototype.removeTrackedEvents_=function(){if(this.registeredEvents_)for(var t=0;t<this.registeredEvents_.length;t++){var e=this.registeredEvents_[t];l["O"](e.elem,e.type,e.fn)}this.registeredEvents_=[]},D.PLUGINS=[b["a"],y["a"],w["a"],x["a"],v["a"],m["a"]],D.GVizChart=A["a"],D.DASHED_LINE=l["b"],D.DOT_DASH_LINE=l["c"],D.dateAxisLabelFormatter=l["o"],D.toRGB_=l["R"],D.findPos=l["v"],D.pageX=l["L"],D.pageY=l["M"],D.dateString_=l["q"],D.defaultInteractionModel=o["a"].defaultModel,D.nonInteractiveModel=D.nonInteractiveModel_=o["a"].nonInteractiveModel_,D.Circles=l["a"],D.Plugins={Legend:b["a"],Axes:y["a"],Annotations:v["a"],ChartLabels:x["a"],Grid:m["a"],RangeSelector:w["a"]},D.DataHandlers={DefaultHandler:c["a"],BarsHandler:_["a"],CustomBarsHandler:p["a"],DefaultFractionHandler:g["a"],ErrorBarsHandler:d["a"],FractionsBarsHandler:f["a"]},D.startPan=o["a"].startPan,D.startZoom=o["a"].startZoom,D.movePan=o["a"].movePan,D.moveZoom=o["a"].moveZoom,D.endPan=o["a"].endPan,D.endZoom=o["a"].endZoom,D.numericLinearTicks=s["d"],D.numericTicks=s["e"],D.dateTicker=s["b"],D.Granularity=s["a"],D.getDateAxis=s["c"],D.floatFormat=l["w"],l["Q"](D),e["a"]=D}).call(this,i("4362"))},"11f9":function(t,e,i){"use strict";i.r(e);var a=i("0a79");i.d(e,"default",(function(){return a["a"]}))},2648:function(t,e,i){"use strict";var a=i("bde9"),n=function(){this.legend_div_=null,this.is_generated_div_=!1};
7
+ /**
8
+ * @license
9
+ * Copyright 2012 Dan Vanderkam (danvdk@gmail.com)
10
+ * MIT-licenced: https://opensource.org/licenses/MIT
11
+ */n.prototype.toString=function(){return"Legend Plugin"},n.prototype.activate=function(t){var e,i=t.getOption("labelsDiv");return i&&null!==i?e="string"==typeof i||i instanceof String?document.getElementById(i):i:(e=document.createElement("div"),e.className="dygraph-legend",t.graphDiv.appendChild(e),this.is_generated_div_=!0),this.legend_div_=e,this.one_em_width_=10,{select:this.select,deselect:this.deselect,predraw:this.predraw,didDrawChart:this.didDrawChart}};var r=function(t){var e=document.createElement("span");e.setAttribute("style","margin: 0; padding: 0 0 0 1em; border: 0;"),t.appendChild(e);var i=e.offsetWidth;return t.removeChild(e),i},o=function(t){return t.replace(/&/g,"&amp;").replace(/"/g,"&#34;").replace(/</g,"&lt;").replace(/>/g,"&gt;")};function s(t,e,i){if(!t||t.length<=1)return`<div class="dygraph-legend-line" style="border-bottom-color: ${e};"></div>`;var a,n,r,o,s,l=0,h=0,u=[];for(a=0;a<=t.length;a++)l+=t[a%t.length];if(s=Math.floor(i/(l-t[0])),s>1){for(a=0;a<t.length;a++)u[a]=t[a]/i;h=u.length}else{for(s=1,a=0;a<t.length;a++)u[a]=t[a]/l;h=u.length+1}var c="";for(n=0;n<s;n++)for(a=0;a<h;a+=2)r=u[a%u.length],o=a<t.length?u[(a+1)%u.length]:0,c+=`<div class="dygraph-legend-dash" style="margin-right: ${o}em; padding-left: ${r}em;"></div>`;return c}n.prototype.select=function(t){var e=t.selectedX,i=t.selectedPoints,a=t.selectedRow,r=t.dygraph.getOption("legend");if("never"!==r){var o=n.generateLegendHTML(t.dygraph,e,i,this.one_em_width_,a);if(o instanceof Node&&o.nodeType===Node.DOCUMENT_FRAGMENT_NODE?(this.legend_div_.innerHTML="",this.legend_div_.appendChild(o)):this.legend_div_.innerHTML=o,this.legend_div_.style.display="","follow"===r){var s,l=t.dygraph.plotter_.area,h=this.legend_div_.offsetWidth,u=t.dygraph.getOptionForAxis("axisLabelWidth","y"),c=t.dygraph.getHighlightSeries();c?(s=i.find(t=>t.name===c),s||(s=i[0])):s=i[0];const e=t.dygraph.getNumericOption("legendFollowOffsetX"),a=t.dygraph.getNumericOption("legendFollowOffsetY");var d=s.x*l.w+e,p=s.y*l.h+a;d+h+1>l.w&&(d=d-2*e-h-(u-l.x)),this.legend_div_.style.left=u+d+"px",this.legend_div_.style.top=p+"px"}else if("onmouseover"===r&&this.is_generated_div_){l=t.dygraph.plotter_.area,h=this.legend_div_.offsetWidth;this.legend_div_.style.left=l.x+l.w-h-1+"px",this.legend_div_.style.top=l.y+"px"}}else this.legend_div_.style.display="none"},n.prototype.deselect=function(t){var e=t.dygraph.getOption("legend");"always"!==e&&(this.legend_div_.style.display="none");var i=r(this.legend_div_);this.one_em_width_=i;var a=n.generateLegendHTML(t.dygraph,void 0,void 0,i,null);a instanceof Node&&a.nodeType===Node.DOCUMENT_FRAGMENT_NODE?(this.legend_div_.innerHTML="",this.legend_div_.appendChild(a)):this.legend_div_.innerHTML=a},n.prototype.didDrawChart=function(t){this.deselect(t)},n.prototype.predraw=function(t){if(this.is_generated_div_){t.dygraph.graphDiv.appendChild(this.legend_div_);var e=t.dygraph.plotter_.area,i=this.legend_div_.offsetWidth;this.legend_div_.style.left=e.x+e.w-i-1+"px",this.legend_div_.style.top=e.y+"px"}},n.prototype.destroy=function(){this.legend_div_=null},n.generateLegendHTML=function(t,e,i,r,l){var h={dygraph:t,x:e,i:l,series:[]},u={},c=t.getLabels();if(c)for(var d=1;d<c.length;d++){var p=t.getPropertiesForSeries(c[d]),g=t.getOption("strokePattern",c[d]),f={dashHTML:s(g,p.color,r),label:c[d],labelHTML:o(c[d]),isVisible:p.visible,color:p.color};h.series.push(f),u[c[d]]=f}if("undefined"!==typeof e){var _=t.optionsViewForAxis_("x"),v=_("valueFormatter");h.xHTML=v.call(t,e,_,c[0],t,l,0);var y=[],x=t.numAxes();for(d=0;d<x;d++)y[d]=t.optionsViewForAxis_("y"+(d?1+d:""));var m=t.getOption("labelsShowZeroValues"),b=t.getHighlightSeries();for(d=0;d<i.length;d++){var w=i[d];f=u[w.name];if(f.y=w.yval,0===w.yval&&!m||isNaN(w.canvasy))f.isVisible=!1;else{p=t.getPropertiesForSeries(w.name);var A=y[p.axis-1],D=A("valueFormatter"),S=D.call(t,w.yval,A,w.name,t,l,c.indexOf(w.name));a["T"](f,{yHTML:S}),w.name==b&&(f.isHighlighted=!0)}}}var O=t.getOption("legendFormatter")||n.defaultFormatter;return O.call(t,h)},n.defaultFormatter=function(t){var e=t.dygraph;if(!0!==e.getOption("showLabelsOnHighlight"))return"";var i,a=e.getOption("labelsSeparateLines");if("undefined"===typeof t.x){if("always"!=e.getOption("legend"))return"";i="";for(var n=0;n<t.series.length;n++){var r=t.series[n];r.isVisible&&(""!==i&&(i+=a?"<br />":" "),i+=`<span style='font-weight: bold; color: ${r.color};'>${r.dashHTML} ${r.labelHTML}</span>`)}return i}i=t.xHTML+":";for(n=0;n<t.series.length;n++){r=t.series[n];if((r.y||r.yHTML)&&r.isVisible){a&&(i+="<br>");var o=r.isHighlighted?' class="highlight"':"";i+=`<span${o}> <b><span style='color: ${r.color};'>${r.labelHTML}</span></b>:&#160;${r.yHTML}</span>`}}return i},e["a"]=n},"2f43":function(t,e,i){"use strict";var a=i("4808"),n=i("d9ce"),r=function(){a["a"].call(this)};r.prototype=new a["a"],r.prototype.extractSeries=function(t,e,i){},r.prototype.rollingAverage=function(t,e,i,a){},r.prototype.onPointsCreated_=function(t,e){for(var i=0;i<t.length;++i){var n=t[i],r=e[i];r.y_top=NaN,r.y_bottom=NaN,r.yval_minus=a["a"].parseFloat(n[2][0]),r.yval_plus=a["a"].parseFloat(n[2][1])}},r.prototype.getExtremeYValues=function(t,e,i){for(var a,n=null,r=null,o=0,s=t.length-1,l=o;l<=s;l++)if(a=t[l][1],null!==a&&!isNaN(a)){var h=t[l][2][0],u=t[l][2][1];h>a&&(h=a),u<a&&(u=a),(null===r||u>r)&&(r=u),(null===n||h<n)&&(n=h)}return[n,r]},r.prototype.onLineEvaluated=function(t,e,i){for(var a,r=0;r<t.length;r++)a=t[r],a.y_top=n["a"].calcYNormal_(e,a.yval_minus,i),a.y_bottom=n["a"].calcYNormal_(e,a.yval_plus,i)},e["a"]=r},3220:function(t,e,i){"use strict";var a=i("2f43"),n=function(){};
12
+ /**
13
+ * @license
14
+ * Copyright 2013 David Eberlein (david.eberlein@ch.sauter-bc.com)
15
+ * MIT-licenced: https://opensource.org/licenses/MIT
16
+ */n.prototype=new a["a"],n.prototype.extractSeries=function(t,e,i){var a,n,r,o,s=[];const l=i.get("labels")[e],h=i.getForSeries("logscale",l),u=i.getForSeries("sigma",l);for(var c=0;c<t.length;c++)a=t[c][0],o=t[c][e],h&&null!==o&&(o[0]<=0||o[0]-u*o[1]<=0)&&(o=null),null!==o?(n=o[0],null===n||isNaN(n)?s.push([a,n,[n,n,n]]):(r=u*o[1],s.push([a,n,[n-r,n+r,o[1]]]))):s.push([a,null,[null,null,null]]);return s},n.prototype.rollingAverage=function(t,e,i,a){e=Math.min(e,t.length);var n=[];const r=i.get("labels")[a],o=i.getForSeries("sigma",r);var s,l,h,u,c,d,p,g;for(a=0;a<t.length;a++){for(u=0,p=0,c=0,s=Math.max(0,a-e+1);s<a+1;s++)l=t[s][1],null===l||isNaN(l)||(c++,u+=l,p+=Math.pow(t[s][2][2],2));c?(d=Math.sqrt(p)/c,g=u/c,n[a]=[t[a][0],g,[g-o*d,g+o*d]]):(h=1==e?t[a][1]:null,n[a]=[t[a][0],h,[h,h]])}return n},e["a"]=n},"34cf":function(t,e,i){"use strict";var a=i("5337"),n=i("d84a"),r=i("5261"),o=i("bde9"),s={highlightCircleSize:3,highlightSeriesOpts:null,highlightSeriesBackgroundAlpha:.5,highlightSeriesBackgroundColor:"rgb(255, 255, 255)",labelsSeparateLines:!1,labelsShowZeroValues:!0,labelsKMB:!1,labelsKMG2:!1,showLabelsOnHighlight:!0,digitsAfterDecimal:2,maxNumberWidth:6,sigFigs:null,strokeWidth:1,strokeBorderWidth:0,strokeBorderColor:"white",axisTickSize:3,axisLabelFontSize:14,rightGap:5,showRoller:!1,xValueParser:void 0,delimiter:",",sigma:2,errorBars:!1,fractions:!1,wilsonInterval:!0,customBars:!1,fillGraph:!1,fillAlpha:.15,connectSeparatedPoints:!1,stackedGraph:!1,stackedGraphNaNFill:"all",hideOverlayOnMouseOut:!0,resizable:"no",legend:"onmouseover",legendFollowOffsetX:50,legendFollowOffsetY:-50,stepPlot:!1,xRangePad:0,yRangePad:null,drawAxesAtZero:!1,titleHeight:28,xLabelHeight:18,yLabelWidth:18,axisLineColor:"black",axisLineWidth:.3,gridLineWidth:.3,axisLabelWidth:50,gridLineColor:"rgb(128,128,128)",interactionModel:n["a"].defaultModel,animatedZooms:!1,animateBackgroundFade:!0,showRangeSelector:!1,rangeSelectorHeight:40,rangeSelectorPlotStrokeColor:"#808FAB",rangeSelectorPlotFillGradientColor:"white",rangeSelectorPlotFillColor:"#A7B1C4",rangeSelectorBackgroundStrokeColor:"gray",rangeSelectorBackgroundLineWidth:1,rangeSelectorPlotLineWidth:1.5,rangeSelectorForegroundStrokeColor:"black",rangeSelectorForegroundLineWidth:1,rangeSelectorAlpha:.6,showInRangeSelector:null,plotter:[r["a"]._fillPlotter,r["a"]._errorPlotter,r["a"]._linePlotter],plugins:[],axes:{x:{pixelsPerLabel:70,axisLabelWidth:60,axisLabelFormatter:o["o"],valueFormatter:o["r"],drawGrid:!0,drawAxis:!0,independentTicks:!0,ticker:a["b"]},y:{axisLabelWidth:50,pixelsPerLabel:30,valueFormatter:o["K"],axisLabelFormatter:o["J"],drawGrid:!0,drawAxis:!0,independentTicks:!0,ticker:a["e"]},y2:{axisLabelWidth:50,pixelsPerLabel:30,valueFormatter:o["K"],axisLabelFormatter:o["J"],drawAxis:!0,drawGrid:!1,independentTicks:!1,ticker:a["e"]}}};e["a"]=s},3501:function(t,e,i){"use strict";var a=i("0a79"),n=function(t){this.container=t};
17
+ /**
18
+ * @license
19
+ * Copyright 2011 Dan Vanderkam (danvdk@gmail.com)
20
+ * MIT-licenced: https://opensource.org/licenses/MIT
21
+ */n.prototype.draw=function(t,e){this.container.innerHTML="","undefined"!=typeof this.date_graph&&this.date_graph.destroy(),this.date_graph=new a["a"](this.container,t,e)},n.prototype.setSelection=function(t){var e=!1;t.length&&(e=t[0].row),this.date_graph.setSelection(e)},n.prototype.getSelection=function(){var t=[],e=this.date_graph.getSelection();if(e<0)return t;for(var i=this.date_graph.layout_.points,a=0;a<i.length;++a)t.push({row:e,column:a+1});return t},e["a"]=n},4590:function(t,e,i){"use strict";var a=i("4808"),n=function(){};
22
+ /**
23
+ * @license
24
+ * Copyright 2013 David Eberlein (david.eberlein@ch.sauter-bc.com)
25
+ * MIT-licenced: https://opensource.org/licenses/MIT
26
+ */n.prototype=new a["a"],n.prototype.extractSeries=function(t,e,i){var a=[];const n=i.get("labels")[e],r=i.getForSeries("logscale",n);for(var o=0;o<t.length;o++){var s=t[o][0],l=t[o][e];r&&l<=0&&(l=null),a.push([s,l])}return a},n.prototype.rollingAverage=function(t,e,i,a){e=Math.min(e,t.length);var n,r,o,s,l=[];if(1==e)return t;for(a=0;a<t.length;a++){for(o=0,s=0,n=Math.max(0,a-e+1);n<a+1;n++)r=t[n][1],null===r||isNaN(r)||(s++,o+=t[n][1]);l[a]=s?[t[a][0],o/s]:[t[a][0],null]}return l},n.prototype.getExtremeYValues=function(t,e,i){for(var a,n=null,r=null,o=0,s=t.length-1,l=o;l<=s;l++)a=t[l][1],null===a||isNaN(a)||((null===r||a>r)&&(r=a),(null===n||a<n)&&(n=a));return[n,r]},e["a"]=n},4808:function(t,e,i){"use strict";
27
+ /**
28
+ * @license
29
+ * Copyright 2013 David Eberlein (david.eberlein@ch.sauter-bc.com)
30
+ * MIT-licenced: https://opensource.org/licenses/MIT
31
+ */var a=function(){},n=a;n.X=0,n.Y=1,n.EXTRAS=2,n.prototype.extractSeries=function(t,e,i){},n.prototype.seriesToPoints=function(t,e,i){for(var a=[],r=0;r<t.length;++r){var o=t[r],s=o[1],l=null===s?null:n.parseFloat(s),h={x:NaN,y:NaN,xval:n.parseFloat(o[0]),yval:l,name:e,idx:r+i,canvasx:NaN,canvasy:NaN};a.push(h)}return this.onPointsCreated_(t,a),a},n.prototype.onPointsCreated_=function(t,e){},n.prototype.rollingAverage=function(t,e,i,a){},n.prototype.getExtremeYValues=function(t,e,i){},n.prototype.onLineEvaluated=function(t,e,i){},n.parseFloat=function(t){return null===t?NaN:t},e["a"]=a},"4d71":function(t,e,i){"use strict";var a=i("2f43"),n=function(){};
32
+ /**
33
+ * @license
34
+ * Copyright 2013 David Eberlein (david.eberlein@ch.sauter-bc.com)
35
+ * MIT-licenced: https://opensource.org/licenses/MIT
36
+ */n.prototype=new a["a"],n.prototype.extractSeries=function(t,e,i){var a,n,r,o,s,l,h,u,c=[],d=100;const p=i.get("labels")[e],g=i.getForSeries("logscale",p),f=i.getForSeries("sigma",p);for(var _=0;_<t.length;_++)a=t[_][0],r=t[_][e],g&&null!==r&&(r[0]<=0||r[1]<=0)&&(r=null),null!==r?(o=r[0],s=r[1],null===o||isNaN(o)?c.push([a,o,[o,o,o,s]]):(l=s?o/s:0,h=s?f*Math.sqrt(l*(1-l)/s):1,u=d*h,n=d*l,c.push([a,n,[n-u,n+u,o,s]]))):c.push([a,null,[null,null,null,null]]);return c},n.prototype.rollingAverage=function(t,e,i,a){e=Math.min(e,t.length);var n=[];const r=i.get("labels")[a],o=i.getForSeries("sigma",r),s=i.getForSeries("wilsonInterval",r);var l,h,u,c=0,d=0,p=100;for(a=0;a<t.length;a++){c+=t[a][2][2],d+=t[a][2][3],a-e>=0&&(c-=t[a-e][2][2],d-=t[a-e][2][3]);var g=t[a][0],f=d?c/d:0;if(s)if(d){var _=f<0?0:f,v=d,y=o*Math.sqrt(_*(1-_)/v+o*o/(4*v*v)),x=1+o*o/d;l=(_+o*o/(2*d)-y)/x,h=(_+o*o/(2*d)+y)/x,n[a]=[g,_*p,[l*p,h*p]]}else n[a]=[g,0,[0,0]];else u=d?o*Math.sqrt(f*(1-f)/d):1,n[a]=[g,p*f,[p*(f-u),p*(f+u)]]}return n},e["a"]=n},5176:function(t,e,i){"use strict";var a=i("2f43"),n=function(){};
37
+ /**
38
+ * @license
39
+ * Copyright 2013 David Eberlein (david.eberlein@ch.sauter-bc.com)
40
+ * MIT-licenced: https://opensource.org/licenses/MIT
41
+ */n.prototype=new a["a"],n.prototype.extractSeries=function(t,e,i){var a,n,r,o=[];const s=i.get("labels")[e],l=i.getForSeries("logscale",s);for(var h=0;h<t.length;h++)a=t[h][0],r=t[h][e],l&&null!==r&&(r[0]<=0||r[1]<=0||r[2]<=0)&&(r=null),null!==r?(n=r[1],null===n||isNaN(n)?o.push([a,n,[n,n]]):o.push([a,n,[r[0],r[2]]])):o.push([a,null,[null,null]]);return o},n.prototype.rollingAverage=function(t,e,i,a){e=Math.min(e,t.length);var n,r,o,s,l,h,u=[];for(r=0,s=0,o=0,l=0,a=0;a<t.length;a++){if(n=t[a][1],h=t[a][2],u[a]=t[a],null===n||isNaN(n)||(r+=h[0],s+=n,o+=h[1],l+=1),a-e>=0){var c=t[a-e];null===c[1]||isNaN(c[1])||(r-=c[2][0],s-=c[1],o-=c[2][1],l-=1)}u[a]=l?[t[a][0],1*s/l,[1*r/l,1*o/l]]:[t[a][0],null,[null,null]]}return u},e["a"]=n},5261:function(t,e,i){"use strict";var a=i("bde9"),n=i("0a79"),r=function(t,e,i,n){if(this.dygraph_=t,this.layout=n,this.element=e,this.elementContext=i,this.height=t.height_,this.width=t.width_,!a["B"](this.element))throw"Canvas is not supported.";this.area=n.getPlotArea();var r=this.dygraph_.canvas_ctx_;r.beginPath(),r.rect(this.area.x,this.area.y,this.area.w,this.area.h),r.clip(),r=this.dygraph_.hidden_ctx_,r.beginPath(),r.rect(this.area.x,this.area.y,this.area.w,this.area.h),r.clip()};r.prototype.clear=function(){this.elementContext.clearRect(0,0,this.width,this.height)},r.prototype.render=function(){this._updatePoints(),this._renderLineChart()},r._getIteratorPredicate=function(t){return t?r._predicateThatSkipsEmptyPoints:null},r._predicateThatSkipsEmptyPoints=function(t,e){return null!==t[e].yval},r._drawStyledLine=function(t,e,i,n,o,s,l){var h=t.dygraph,u=h.getBooleanOption("stepPlot",t.setName);a["A"](n)||(n=null);var c=h.getBooleanOption("drawGapEdgePoints",t.setName),d=t.points,p=t.setName,g=a["n"](d,0,d.length,r._getIteratorPredicate(h.getBooleanOption("connectSeparatedPoints",p))),f=n&&n.length>=2,_=t.drawingContext;_.save(),f&&_.setLineDash&&_.setLineDash(n);var v=r._drawSeries(t,g,i,l,o,c,u,e);r._drawPointsOnLine(t,v,s,e,l),f&&_.setLineDash&&_.setLineDash([]),_.restore()},r._drawSeries=function(t,e,i,a,n,r,o,s){var l,h,u=null,c=null,d=null,p=[],g=!0,f=t.drawingContext;f.beginPath(),f.strokeStyle=s,f.lineWidth=i;for(var _=e.array_,v=e.end_,y=e.predicate_,x=e.start_;x<v;x++){if(h=_[x],y){while(x<v&&!y(_,x))x++;if(x==v)break;h=_[x]}if(null===h.canvasy||h.canvasy!=h.canvasy)o&&null!==u&&(f.moveTo(u,c),f.lineTo(h.canvasx,c)),u=c=null;else{if(l=!1,r||null===u){e.nextIdx_=x,e.next(),d=e.hasNext?e.peek.canvasy:null;var m=null===d||d!=d;l=null===u&&m,r&&(!g&&null===u||e.hasNext&&m)&&(l=!0)}null!==u?i&&(o&&(f.moveTo(u,c),f.lineTo(h.canvasx,c)),f.lineTo(h.canvasx,h.canvasy)):f.moveTo(h.canvasx,h.canvasy),(n||l)&&p.push([h.canvasx,h.canvasy,h.idx]),u=h.canvasx,c=h.canvasy}g=!1}return f.stroke(),p},r._drawPointsOnLine=function(t,e,i,a,n){for(var r=t.drawingContext,o=0;o<e.length;o++){var s=e[o];r.save(),i.call(t.dygraph,t.dygraph,t.setName,r,s[0],s[1],a,n,s[2]),r.restore()}},r.prototype._updatePoints=function(){for(var t=this.layout.points,e=t.length;e--;)for(var i=t[e],a=i.length;a--;){var n=i[a];n.canvasx=this.area.w*n.x+this.area.x,n.canvasy=this.area.h*n.y+this.area.y}},r.prototype._renderLineChart=function(t,e){var i,n,r=e||this.elementContext,o=this.layout.points,s=this.layout.setNames;this.colors=this.dygraph_.colorsMap_;var l=this.dygraph_.getOption("plotter"),h=l;a["A"](h)||(h=[h]);var u={};for(i=0;i<s.length;i++){n=s[i];var c=this.dygraph_.getOption("plotter",n);c!=l&&(u[n]=c)}for(i=0;i<h.length;i++)for(var d=h[i],p=i==h.length-1,g=0;g<o.length;g++)if(n=s[g],!t||n==t){var f=o[g],_=d;if(n in u){if(!p)continue;_=u[n]}var v=this.colors[n],y=this.dygraph_.getOption("strokeWidth",n);r.save(),r.strokeStyle=v,r.lineWidth=y,_({points:f,setName:n,drawingContext:r,color:v,strokeWidth:y,dygraph:this.dygraph_,axis:this.dygraph_.axisPropertiesForSeries(n),plotArea:this.area,seriesIndex:g,seriesCount:o.length,singleSeriesName:t,allSeriesPoints:o}),r.restore()}},r._Plotters={linePlotter:function(t){r._linePlotter(t)},fillPlotter:function(t){r._fillPlotter(t)},errorPlotter:function(t){r._errorPlotter(t)}},r._linePlotter=function(t){var e=t.dygraph,i=t.setName,n=t.strokeWidth,o=e.getNumericOption("strokeBorderWidth",i),s=e.getOption("drawPointCallback",i)||a["a"].DEFAULT,l=e.getOption("strokePattern",i),h=e.getBooleanOption("drawPoints",i),u=e.getNumericOption("pointSize",i);o&&n&&r._drawStyledLine(t,e.getOption("strokeBorderColor",i),n+2*o,l,h,s,u),r._drawStyledLine(t,t.color,n,l,h,s,u)},r._errorPlotter=function(t){var e=t.dygraph,i=t.setName,n=e.getBooleanOption("errorBars")||e.getBooleanOption("customBars");if(n){var o=e.getBooleanOption("fillGraph",i);o&&console.warn("Can't use fillGraph option with customBars or errorBars option");var s,l=t.drawingContext,h=t.color,u=e.getNumericOption("fillAlpha",i),c=e.getBooleanOption("stepPlot",i),d=t.points,p=a["n"](d,0,d.length,r._getIteratorPredicate(e.getBooleanOption("connectSeparatedPoints",i))),g=NaN,f=NaN,_=[-1,-1],v=a["R"](h),y="rgba("+v.r+","+v.g+","+v.b+","+u+")";l.fillStyle=y,l.beginPath();var x=function(t){return null===t||void 0===t||isNaN(t)};while(p.hasNext){var m=p.next();!c&&x(m.y)||c&&!isNaN(f)&&x(f)?g=NaN:(s=[m.y_bottom,m.y_top],c&&(f=m.y),isNaN(s[0])&&(s[0]=m.y),isNaN(s[1])&&(s[1]=m.y),s[0]=t.plotArea.h*s[0]+t.plotArea.y,s[1]=t.plotArea.h*s[1]+t.plotArea.y,isNaN(g)||(c?(l.moveTo(g,_[0]),l.lineTo(m.canvasx,_[0]),l.lineTo(m.canvasx,_[1])):(l.moveTo(g,_[0]),l.lineTo(m.canvasx,s[0]),l.lineTo(m.canvasx,s[1])),l.lineTo(g,_[1]),l.closePath()),_=s,g=m.canvasx)}l.fill()}},r._fastCanvasProxy=function(t){var e=[],i=null,a=null,n=1,r=2,o=0,s=function(t){if(!(e.length<=1)){for(var i=e.length-1;i>0;i--){var a=e[i];if(a[0]==r){var o=e[i-1];o[1]==a[1]&&o[2]==a[2]&&e.splice(i,1)}}for(i=0;i<e.length-1;){a=e[i];a[0]==r&&e[i+1][0]==r?e.splice(i,1):i++}if(e.length>2&&!t){var s=0;e[0][0]==r&&s++;var l=null,h=null;for(i=s;i<e.length;i++){a=e[i];if(a[0]==n)if(null===l&&null===h)l=i,h=i;else{var u=a[2];u<e[l][2]?l=i:u>e[h][2]&&(h=i)}}var c=e[l],d=e[h];e.splice(s,e.length-s),l<h?(e.push(c),e.push(d)):l>h?(e.push(d),e.push(c)):e.push(c)}}},l=function(i){s(i);for(var l=0,h=e.length;l<h;l++){var u=e[l];u[0]==n?t.lineTo(u[1],u[2]):u[0]==r&&t.moveTo(u[1],u[2])}e.length&&(a=e[e.length-1][1]),o+=e.length,e=[]},h=function(t,n,r){var o=Math.round(n);if(null===i||o!=i){var s=i-a>1,h=o-i>1,u=s||h;l(u),i=o}e.push([t,n,r])};return{moveTo:function(t,e){h(r,t,e)},lineTo:function(t,e){h(n,t,e)},stroke:function(){l(!0),t.stroke()},fill:function(){l(!0),t.fill()},beginPath:function(){l(!0),t.beginPath()},closePath:function(){l(!0),t.closePath()},_count:function(){return o}}},r._fillPlotter=function(t){if(!t.singleSeriesName&&0===t.seriesIndex){for(var e=t.dygraph,i=e.getLabels().slice(1),o=i.length;o>=0;o--)e.visibility()[o]||i.splice(o,1);var s=function(){for(var t=0;t<i.length;t++)if(e.getBooleanOption("fillGraph",i[t]))return!0;return!1}();if(s)for(var l,h,u=t.plotArea,c=t.allSeriesPoints,d=c.length,p=e.getBooleanOption("stackedGraph"),g=e.getColors(),f={},_=function(t,e,i,a){if(t.lineTo(e,i),p)for(var n=a.length-1;n>=0;n--){var r=a[n];t.lineTo(r[0],r[1])}},v=d-1;v>=0;v--){var y=t.drawingContext,x=i[v];if(e.getBooleanOption("fillGraph",x)){var m=e.getNumericOption("fillAlpha",x),b=e.getBooleanOption("stepPlot",x),w=g[v],A=e.axisPropertiesForSeries(x),D=1+A.minyval*A.yscale;D<0?D=0:D>1&&(D=1),D=u.h*D+u.y;var S,O=c[v],E=a["n"](O,0,O.length,r._getIteratorPredicate(e.getBooleanOption("connectSeparatedPoints",x))),T=NaN,L=[-1,-1],C=a["R"](w),M="rgba("+C.r+","+C.g+","+C.b+","+m+")";y.fillStyle=M,y.beginPath();var N,P=!0;(O.length>2*e.width_||n["a"].FORCE_FAST_PROXY)&&(y=r._fastCanvasProxy(y));var F,k=[];while(E.hasNext)if(F=E.next(),a["E"](F.y)||b){if(p){if(!P&&N==F.xval)continue;var R;P=!1,N=F.xval,l=f[F.canvasx],R=void 0===l?D:h?l[0]:l,S=[F.canvasy,R],b?-1===L[0]?f[F.canvasx]=[F.canvasy,D]:f[F.canvasx]=[F.canvasy,L[0]]:f[F.canvasx]=F.canvasy}else S=isNaN(F.canvasy)&&b?[u.y+u.h,D]:[F.canvasy,D];isNaN(T)?(y.moveTo(F.canvasx,S[1]),y.lineTo(F.canvasx,S[0])):(b?(y.lineTo(F.canvasx,L[0]),y.lineTo(F.canvasx,S[0])):y.lineTo(F.canvasx,S[0]),p&&(k.push([T,L[1]]),h&&l?k.push([F.canvasx,l[1]]):k.push([F.canvasx,S[1]]))),L=S,T=F.canvasx}else _(y,T,L[1],k),k=[],T=NaN,null===F.y_stacked||isNaN(F.y_stacked)||(f[F.canvasx]=u.h*F.y_stacked+u.y);h=b,S&&F&&(_(y,F.canvasx,S[1],k),k=[]),y.fill()}}}},e["a"]=r},"52b9":function(t,e,i){"use strict";i("4808");var a=i("4590"),n=function(){};n.prototype=new a["a"],n.prototype.extractSeries=function(t,e,i){var a,n,r,o,s,l,h=[],u=100;const c=i.get("labels")[e],d=i.getForSeries("logscale",c);for(var p=0;p<t.length;p++)a=t[p][0],r=t[p][e],d&&null!==r&&(r[0]<=0||r[1]<=0)&&(r=null),null!==r?(o=r[0],s=r[1],null===o||isNaN(o)?h.push([a,o,[o,s]]):(l=s?o/s:0,n=u*l,h.push([a,n,[o,s]]))):h.push([a,null,[null,null]]);return h},n.prototype.rollingAverage=function(t,e,i,a){e=Math.min(e,t.length);var n=[],r=0,o=0,s=100;for(a=0;a<t.length;a++){r+=t[a][2][0],o+=t[a][2][1],a-e>=0&&(r-=t[a-e][2][0],o-=t[a-e][2][1]);var l=t[a][0],h=o?r/o:0;n[a]=[l,s*h]}return n},e["a"]=n},5337:function(t,e,i){"use strict";i.d(e,"d",(function(){return n})),i.d(e,"e",(function(){return r})),i.d(e,"b",(function(){return o})),i.d(e,"a",(function(){return s})),i.d(e,"c",(function(){return p}));var a=i("bde9"),n=function(t,e,i,a,n,o){var s=function(t){return"logscale"!==t&&a(t)};return r(t,e,i,s,n,o)},r=function(t,e,i,n,r,o){var s,l,h,c,d=n("pixelsPerLabel"),p=[];if(o)for(s=0;s<o.length;s++)p.push({v:o[s]});else{if(n("logscale")){c=Math.floor(i/d);var g=a["j"](t,u,1),f=a["j"](e,u,-1);-1==g&&(g=0),-1==f&&(f=u.length-1);var _=null;if(f-g>=c/4){for(var v=f;v>=g;v--){var y=u[v],x=Math.log(y/t)/Math.log(e/t)*i,m={v:y};null===_||Math.abs(x-_.pixel_coord)>=d?_={tickValue:y,pixel_coord:x}:m.label="",p.push(m)}p.reverse()}}if(0===p.length){var b,w,A=n("labelsKMG2");A?(b=[1,2,4,8,16,32,64,128,256],w=16):(b=[1,2,5,10,20,50,100],w=10);var D,S,O,E,T=Math.ceil(i/d),L=Math.abs(e-t)/T,C=Math.floor(Math.log(L)/Math.log(w)),M=Math.pow(w,C);for(l=0;l<b.length;l++)if(D=M*b[l],S=Math.floor(t/D)*D,O=Math.ceil(e/D)*D,c=Math.abs(O-S)/D,E=i/c,E>d)break;for(S>O&&(D*=-1),s=0;s<=c;s++)h=S+s*D,p.push({v:h})}}var N=n("axisLabelFormatter");for(s=0;s<p.length;s++)void 0===p[s].label&&(p[s].label=N.call(r,p[s].v,0,n,r));return p},o=function(t,e,i,a,n,r){var o=c(t,e,i,a);return o>=0?p(t,e,o,a,n):[]},s={MILLISECONDLY:0,TWO_MILLISECONDLY:1,FIVE_MILLISECONDLY:2,TEN_MILLISECONDLY:3,FIFTY_MILLISECONDLY:4,HUNDRED_MILLISECONDLY:5,FIVE_HUNDRED_MILLISECONDLY:6,SECONDLY:7,TWO_SECONDLY:8,FIVE_SECONDLY:9,TEN_SECONDLY:10,THIRTY_SECONDLY:11,MINUTELY:12,TWO_MINUTELY:13,FIVE_MINUTELY:14,TEN_MINUTELY:15,THIRTY_MINUTELY:16,HOURLY:17,TWO_HOURLY:18,SIX_HOURLY:19,DAILY:20,TWO_DAILY:21,WEEKLY:22,MONTHLY:23,QUARTERLY:24,BIANNUAL:25,ANNUAL:26,DECADAL:27,CENTENNIAL:28,NUM_GRANULARITIES:29},l={DATEFIELD_Y:0,DATEFIELD_M:1,DATEFIELD_D:2,DATEFIELD_HH:3,DATEFIELD_MM:4,DATEFIELD_SS:5,DATEFIELD_MS:6,NUM_DATEFIELDS:7},h=[];
42
+ /**
43
+ * @license
44
+ * Copyright 2011 Dan Vanderkam (danvdk@gmail.com)
45
+ * MIT-licenced: https://opensource.org/licenses/MIT
46
+ */h[s.MILLISECONDLY]={datefield:l.DATEFIELD_MS,step:1,spacing:1},h[s.TWO_MILLISECONDLY]={datefield:l.DATEFIELD_MS,step:2,spacing:2},h[s.FIVE_MILLISECONDLY]={datefield:l.DATEFIELD_MS,step:5,spacing:5},h[s.TEN_MILLISECONDLY]={datefield:l.DATEFIELD_MS,step:10,spacing:10},h[s.FIFTY_MILLISECONDLY]={datefield:l.DATEFIELD_MS,step:50,spacing:50},h[s.HUNDRED_MILLISECONDLY]={datefield:l.DATEFIELD_MS,step:100,spacing:100},h[s.FIVE_HUNDRED_MILLISECONDLY]={datefield:l.DATEFIELD_MS,step:500,spacing:500},h[s.SECONDLY]={datefield:l.DATEFIELD_SS,step:1,spacing:1e3},h[s.TWO_SECONDLY]={datefield:l.DATEFIELD_SS,step:2,spacing:2e3},h[s.FIVE_SECONDLY]={datefield:l.DATEFIELD_SS,step:5,spacing:5e3},h[s.TEN_SECONDLY]={datefield:l.DATEFIELD_SS,step:10,spacing:1e4},h[s.THIRTY_SECONDLY]={datefield:l.DATEFIELD_SS,step:30,spacing:3e4},h[s.MINUTELY]={datefield:l.DATEFIELD_MM,step:1,spacing:6e4},h[s.TWO_MINUTELY]={datefield:l.DATEFIELD_MM,step:2,spacing:12e4},h[s.FIVE_MINUTELY]={datefield:l.DATEFIELD_MM,step:5,spacing:3e5},h[s.TEN_MINUTELY]={datefield:l.DATEFIELD_MM,step:10,spacing:6e5},h[s.THIRTY_MINUTELY]={datefield:l.DATEFIELD_MM,step:30,spacing:18e5},h[s.HOURLY]={datefield:l.DATEFIELD_HH,step:1,spacing:36e5},h[s.TWO_HOURLY]={datefield:l.DATEFIELD_HH,step:2,spacing:72e5},h[s.SIX_HOURLY]={datefield:l.DATEFIELD_HH,step:6,spacing:216e5},h[s.DAILY]={datefield:l.DATEFIELD_D,step:1,spacing:864e5},h[s.TWO_DAILY]={datefield:l.DATEFIELD_D,step:2,spacing:1728e5},h[s.WEEKLY]={datefield:l.DATEFIELD_D,step:7,spacing:6048e5},h[s.MONTHLY]={datefield:l.DATEFIELD_M,step:1,spacing:2629746e3},h[s.QUARTERLY]={datefield:l.DATEFIELD_M,step:3,spacing:7889238e3},h[s.BIANNUAL]={datefield:l.DATEFIELD_M,step:6,spacing:15778476e3},h[s.ANNUAL]={datefield:l.DATEFIELD_Y,step:1,spacing:31556952e3},h[s.DECADAL]={datefield:l.DATEFIELD_Y,step:10,spacing:31556952e4},h[s.CENTENNIAL]={datefield:l.DATEFIELD_Y,step:100,spacing:31556952e5};var u=function(){for(var t=[],e=-39;e<=39;e++)for(var i=Math.pow(10,e),a=1;a<=9;a++){var n=i*a;t.push(n)}return t}(),c=function(t,e,i,a){for(var n=a("pixelsPerLabel"),r=0;r<s.NUM_GRANULARITIES;r++){var o=d(t,e,r);if(i/o>=n)return r}return-1},d=function(t,e,i){var a=h[i].spacing;return Math.round(1*(e-t)/a)},p=function(t,e,i,n,r){var o=n("axisLabelFormatter"),u=n("labelsUTC"),c=u?a["e"]:a["d"],d=h[i].datefield,p=h[i].step,g=h[i].spacing,f=new Date(t),_=[];_[l.DATEFIELD_Y]=c.getFullYear(f),_[l.DATEFIELD_M]=c.getMonth(f),_[l.DATEFIELD_D]=c.getDate(f),_[l.DATEFIELD_HH]=c.getHours(f),_[l.DATEFIELD_MM]=c.getMinutes(f),_[l.DATEFIELD_SS]=c.getSeconds(f),_[l.DATEFIELD_MS]=c.getMilliseconds(f);var v=_[d]%p;i==s.WEEKLY&&(v=c.getDay(f)),_[d]-=v;for(var y=d+1;y<l.NUM_DATEFIELDS;y++)_[y]=y===l.DATEFIELD_D?1:0;var x=[],m=c.makeDate.apply(null,_),b=m.getTime();if(i<=s.HOURLY){b<t&&(b+=g,m=new Date(b));while(b<=e)x.push({v:b,label:o.call(r,m,i,n,r)}),b+=g,m=new Date(b)}else{b<t&&(_[d]+=p,m=c.makeDate.apply(null,_),b=m.getTime());while(b<=e)(i>=s.DAILY||c.getHours(m)%p===0)&&x.push({v:b,label:o.call(r,m,i,n,r)}),_[d]+=p,m=c.makeDate.apply(null,_),b=m.getTime()}return x}},"5c94":function(t,e,i){"use strict";var a=i("bde9"),n=function(){this.xlabels_=[],this.ylabels_=[]};
47
+ /**
48
+ * @license
49
+ * Copyright 2012 Dan Vanderkam (danvdk@gmail.com)
50
+ * MIT-licenced: https://opensource.org/licenses/MIT
51
+ */n.prototype.toString=function(){return"Axes Plugin"},n.prototype.activate=function(t){return{layout:this.layout,clearChart:this.clearChart,willDrawChart:this.willDrawChart}},n.prototype.layout=function(t){var e,i=t.dygraph;if(i.getOptionForAxis("drawAxis","y")){var a=i.getOptionForAxis("axisLabelWidth","y")+2*i.getOptionForAxis("axisTickSize","y");t.reserveSpaceLeft(a)}i.getOptionForAxis("drawAxis","x")&&(e=i.getOption("xAxisHeight")?i.getOption("xAxisHeight"):i.getOptionForAxis("axisLabelFontSize","x")+2*i.getOptionForAxis("axisTickSize","x"),t.reserveSpaceBottom(e));if(2==i.numAxes()){if(i.getOptionForAxis("drawAxis","y2")){a=i.getOptionForAxis("axisLabelWidth","y2")+2*i.getOptionForAxis("axisTickSize","y2");t.reserveSpaceRight(a)}}else i.numAxes()>2&&i.error("Only two y-axes are supported at this time. (Trying to use "+i.numAxes()+")")},n.prototype.detachLabels=function(){function t(t){for(var e=0;e<t.length;e++){var i=t[e];i.parentNode&&i.parentNode.removeChild(i)}}t(this.xlabels_),t(this.ylabels_),this.xlabels_=[],this.ylabels_=[]},n.prototype.clearChart=function(t){this.detachLabels()},n.prototype.willDrawChart=function(t){var e=t.dygraph;if(!e.getOptionForAxis("drawAxis","x")&&!e.getOptionForAxis("drawAxis","y")&&!e.getOptionForAxis("drawAxis","y2"))return;function i(t){return Math.round(t)+.5}function n(t){return Math.round(t)-.5}var r,o,s,l=t.drawingContext,h=t.canvas.parentNode,u=e.width_,c=e.height_,d=function(t){return{position:"absolute",fontSize:e.getOptionForAxis("axisLabelFontSize",t)+"px",width:e.getOptionForAxis("axisLabelWidth",t)+"px"}},p={x:d("x"),y:d("y"),y2:d("y2")},g=function(t,e,i){var n=document.createElement("div"),r=p["y2"==i?"y2":e];a["T"](n.style,r);var o=document.createElement("div");return o.className="dygraph-axis-label dygraph-axis-label-"+e+(i?" dygraph-axis-label-"+i:""),o.innerHTML=t,n.appendChild(o),n};l.save();var f=e.layout_,_=t.dygraph.plotter_.area,v=function(t){return function(i){return e.getOptionForAxis(i,t)}};const y=this;if(e.getOptionForAxis("drawAxis","y")||2==e.numAxes()&&e.getOptionForAxis("drawAxis","y2")){if(f.yticks&&f.yticks.length>0){var x=e.numAxes(),m=[v("y"),v("y2")];f.yticks.forEach((function(t){if(void 0!==t.label){o=_.x;var e="y1",i=m[0];if(1==t.axis&&(o=_.x+_.w,-1,e="y2",i=m[1]),i("drawAxis")){var a=i("axisLabelFontSize");s=_.y+t.pos*_.h,r=g(t.label,"y",2==x?e:null);var n=s-a/2;n<0&&(n=0),n+a+3>c?r.style.bottom="0":r.style.top=Math.min(n,c-2*a)+"px",0===t.axis?(r.style.left=_.x-i("axisLabelWidth")-i("axisTickSize")+"px",r.style.textAlign="right"):1==t.axis&&(r.style.left=_.x+_.w+i("axisTickSize")+"px",r.style.textAlign="left"),r.style.width=i("axisLabelWidth")+"px",h.appendChild(r),y.ylabels_.push(r)}}}))}var b;if(e.getOption("drawAxesAtZero")){var w=e.toPercentXCoord(0);(w>1||w<0||isNaN(w))&&(w=0),b=i(_.x+w*_.w)}else b=i(_.x);l.strokeStyle=e.getOptionForAxis("axisLineColor","y"),l.lineWidth=e.getOptionForAxis("axisLineWidth","y"),l.beginPath(),l.moveTo(b,n(_.y)),l.lineTo(b,n(_.y+_.h)),l.closePath(),l.stroke(),2==e.numAxes()&&e.getOptionForAxis("drawAxis","y2")&&(l.strokeStyle=e.getOptionForAxis("axisLineColor","y2"),l.lineWidth=e.getOptionForAxis("axisLineWidth","y2"),l.beginPath(),l.moveTo(n(_.x+_.w),n(_.y)),l.lineTo(n(_.x+_.w),n(_.y+_.h)),l.closePath(),l.stroke())}if(e.getOptionForAxis("drawAxis","x")){if(f.xticks){var A=v("x");f.xticks.forEach((function(t){if(void 0!==t.label){o=_.x+t.pos*_.w,s=_.y+_.h,r=g(t.label,"x"),r.style.textAlign="center",r.style.top=s+A("axisTickSize")+"px";var e=o-A("axisLabelWidth")/2;e+A("axisLabelWidth")>u&&(e=u-A("axisLabelWidth"),r.style.textAlign="right"),e<0&&(e=0,r.style.textAlign="left"),r.style.left=e+"px",r.style.width=A("axisLabelWidth")+"px",h.appendChild(r),y.xlabels_.push(r)}}))}var D;if(l.strokeStyle=e.getOptionForAxis("axisLineColor","x"),l.lineWidth=e.getOptionForAxis("axisLineWidth","x"),l.beginPath(),e.getOption("drawAxesAtZero")){w=e.toPercentYCoord(0,0);(w>1||w<0)&&(w=1),D=n(_.y+w*_.h)}else D=n(_.y+_.h);l.moveTo(i(_.x),D),l.lineTo(i(_.x+_.w),D),l.closePath(),l.stroke()}l.restore()},e["a"]=n},8748:function(t,e,i){"use strict";(function(t){var a=i("bde9"),n=i("34cf"),r=(i("96c7"),function(t){this.dygraph_=t,this.yAxes_=[],this.xAxis_={},this.series_={},this.global_=this.dygraph_.attrs_,this.user_=this.dygraph_.user_attrs_||{},this.labels_=[],this.highlightSeries_=this.get("highlightSeriesOpts")||{},this.reparseSeries()});r.AXIS_STRING_MAPPINGS_={y:0,Y:0,y1:0,Y1:0,y2:1,Y2:1},r.axisToIndex_=function(t){if("string"==typeof t){if(r.AXIS_STRING_MAPPINGS_.hasOwnProperty(t))return r.AXIS_STRING_MAPPINGS_[t];throw"Unknown axis : "+t}if("number"==typeof t){if(0===t||1===t)return t;throw"Dygraphs only supports two y-axes, indexed from 0-1."}if(t)throw"Unknown axis : "+t;return 0},r.prototype.reparseSeries=function(){var t=this.get("labels");if(t){this.labels_=t.slice(1),this.yAxes_=[{series:[],options:{}}],this.xAxis_={options:{}},this.series_={};for(var e=this.user_.series||{},i=0;i<this.labels_.length;i++){var n=this.labels_[i],o=e[n]||{},s=r.axisToIndex_(o["axis"]);this.series_[n]={idx:i,yAxis:s,options:o},this.yAxes_[s]?this.yAxes_[s].series.push(n):this.yAxes_[s]={series:[n],options:{}}}var l=this.user_["axes"]||{};a["T"](this.yAxes_[0].options,l["y"]||{}),this.yAxes_.length>1&&a["T"](this.yAxes_[1].options,l["y2"]||{}),a["T"](this.xAxis_.options,l["x"]||{})}},r.prototype.get=function(t){var e=this.getGlobalUser_(t);return null!==e?e:this.getGlobalDefault_(t)},r.prototype.getGlobalUser_=function(t){return this.user_.hasOwnProperty(t)?this.user_[t]:null},r.prototype.getGlobalDefault_=function(t){return this.global_.hasOwnProperty(t)?this.global_[t]:n["a"].hasOwnProperty(t)?n["a"][t]:null},r.prototype.getForAxis=function(t,e){var i,a;if("number"==typeof e)i=e,a=0===i?"y":"y2";else{if("y1"==e&&(e="y"),"y"==e)i=0;else if("y2"==e)i=1;else{if("x"!=e)throw"Unknown axis "+e;i=-1}a=e}var r=-1==i?this.xAxis_:this.yAxes_[i];if(r){var o=r.options;if(o.hasOwnProperty(t))return o[t]}if("x"!==e||"logscale"!==t){var s=this.getGlobalUser_(t);if(null!==s)return s}var l=n["a"].axes[a];return l.hasOwnProperty(t)?l[t]:this.getGlobalDefault_(t)},r.prototype.getForSeries=function(t,e){if(e===this.dygraph_.getHighlightSeries()&&this.highlightSeries_.hasOwnProperty(t))return this.highlightSeries_[t];if(!this.series_.hasOwnProperty(e))throw"Unknown series: "+e;var i=this.series_[e],a=i["options"];return a.hasOwnProperty(t)?a[t]:this.getForAxis(t,i["yAxis"])},r.prototype.numAxes=function(){return this.yAxes_.length},r.prototype.axisForSeries=function(t){return this.series_[t].yAxis},r.prototype.axisOptions=function(t){return this.yAxes_[t].options},r.prototype.seriesForAxis=function(t){return this.yAxes_[t].series},r.prototype.seriesNames=function(){return this.labels_},e["a"]=r}).call(this,i("4362"))},"96c7":function(t,e,i){"use strict";(function(t){
52
+ /**
53
+ * @license
54
+ * Copyright 2011 Dan Vanderkam (danvdk@gmail.com)
55
+ * MIT-licenced: https://opensource.org/licenses/MIT
56
+ */
57
+ var i=null;e["a"]=i}).call(this,i("4362"))},"9c6a":function(t,e,i){"use strict";var a=i("bde9"),n=i("d84a"),r=i("fc5c"),o=function(){this.hasTouchInterface_="undefined"!=typeof TouchEvent,this.isMobileDevice_=/mobile|android/gi.test(navigator.appVersion),this.interfaceCreated_=!1};o.prototype.toString=function(){return"RangeSelector Plugin"},o.prototype.activate=function(t){return this.dygraph_=t,this.getOption_("showRangeSelector")&&this.createInterface_(),{layout:this.reserveSpace_,predraw:this.renderStaticLayer_,didDrawChart:this.renderInteractiveLayer_}},o.prototype.destroy=function(){this.bgcanvas_=null,this.fgcanvas_=null,this.leftZoomHandle_=null,this.rightZoomHandle_=null},o.prototype.getOption_=function(t,e){return this.dygraph_.getOption(t,e)},o.prototype.setDefaultOption_=function(t,e){this.dygraph_.attrs_[t]=e},o.prototype.createInterface_=function(){this.createCanvases_(),this.createZoomHandles_(),this.initInteraction_(),this.getOption_("animatedZooms")&&(console.warn("Animated zooms and range selector are not compatible; disabling animatedZooms."),this.dygraph_.updateOptions({animatedZooms:!1},!0)),this.interfaceCreated_=!0,this.addToGraph_()},o.prototype.addToGraph_=function(){var t=this.graphDiv_=this.dygraph_.graphDiv;t.appendChild(this.bgcanvas_),t.appendChild(this.fgcanvas_),t.appendChild(this.leftZoomHandle_),t.appendChild(this.rightZoomHandle_)},o.prototype.removeFromGraph_=function(){var t=this.graphDiv_;t.removeChild(this.bgcanvas_),t.removeChild(this.fgcanvas_),t.removeChild(this.leftZoomHandle_),t.removeChild(this.rightZoomHandle_),this.graphDiv_=null},o.prototype.reserveSpace_=function(t){this.getOption_("showRangeSelector")&&t.reserveSpaceBottom(this.getOption_("rangeSelectorHeight")+4)},o.prototype.renderStaticLayer_=function(){this.updateVisibility_()&&(this.resize_(),this.drawStaticLayer_())},o.prototype.renderInteractiveLayer_=function(){this.updateVisibility_()&&!this.isChangingRange_&&(this.placeZoomHandles_(),this.drawInteractiveLayer_())},o.prototype.updateVisibility_=function(){var t=this.getOption_("showRangeSelector");if(t)this.interfaceCreated_?this.graphDiv_&&this.graphDiv_.parentNode||this.addToGraph_():this.createInterface_();else if(this.graphDiv_){this.removeFromGraph_();var e=this.dygraph_;setTimeout((function(){e.width_=0,e.resize()}),1)}return t},o.prototype.resize_=function(){function t(t,e,i,n){var r=n||a["y"](e);t.style.top=i.y+"px",t.style.left=i.x+"px",t.width=i.w*r,t.height=i.h*r,t.style.width=i.w+"px",t.style.height=i.h+"px",1!=r&&e.scale(r,r)}var e=this.dygraph_.layout_.getPlotArea(),i=0;this.dygraph_.getOptionForAxis("drawAxis","x")&&(i=this.getOption_("xAxisHeight")||this.getOption_("axisLabelFontSize")+2*this.getOption_("axisTickSize")),this.canvasRect_={x:e.x,y:e.y+e.h+i+4,w:e.w,h:this.getOption_("rangeSelectorHeight")};var n=this.dygraph_.getNumericOption("pixelRatio");t(this.bgcanvas_,this.bgcanvas_ctx_,this.canvasRect_,n),t(this.fgcanvas_,this.fgcanvas_ctx_,this.canvasRect_,n)},o.prototype.createCanvases_=function(){this.bgcanvas_=a["m"](),this.bgcanvas_.className="dygraph-rangesel-bgcanvas",this.bgcanvas_.style.position="absolute",this.bgcanvas_.style.zIndex=9,this.bgcanvas_ctx_=a["x"](this.bgcanvas_),this.fgcanvas_=a["m"](),this.fgcanvas_.className="dygraph-rangesel-fgcanvas",this.fgcanvas_.style.position="absolute",this.fgcanvas_.style.zIndex=9,this.fgcanvas_.style.cursor="default",this.fgcanvas_ctx_=a["x"](this.fgcanvas_)},o.prototype.createZoomHandles_=function(){var t=new Image;t.className="dygraph-rangesel-zoomhandle",t.style.position="absolute",t.style.zIndex=10,t.style.visibility="hidden",t.style.cursor="col-resize",t.width=9,t.height=16,t.src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAkAAAAQCAYAAADESFVDAAAAAXNSR0IArs4c6QAAAAZiS0dEANAAzwDP4Z7KegAAAAlwSFlzAAAOxAAADsQBlSsOGwAAAAd0SU1FB9sHGw0cMqdt1UwAAAAZdEVYdENvbW1lbnQAQ3JlYXRlZCB3aXRoIEdJTVBXgQ4XAAAAaElEQVQoz+3SsRFAQBCF4Z9WJM8KCDVwownl6YXsTmCUsyKGkZzcl7zkz3YLkypgAnreFmDEpHkIwVOMfpdi9CEEN2nGpFdwD03yEqDtOgCaun7sqSTDH32I1pQA2Pb9sZecAxc5r3IAb21d6878xsAAAAAASUVORK5CYII=",this.isMobileDevice_&&(t.width*=2,t.height*=2),this.leftZoomHandle_=t,this.rightZoomHandle_=t.cloneNode(!1)},o.prototype.initInteraction_=function(){var t,e,i,o,s,l,h,u,c,d,p,g,f,_,v=this,y=document,x=0,m=null,b=!1,w=!1,A=!this.isMobileDevice_,D=new r["a"];t=function(t){var e=v.dygraph_.xAxisExtremes(),i=(e[1]-e[0])/v.canvasRect_.w,a=e[0]+(t.leftHandlePos-v.canvasRect_.x)*i,n=e[0]+(t.rightHandlePos-v.canvasRect_.x)*i;return[a,n]},e=function(t){return a["k"](t),b=!0,x=t.clientX,m=t.target?t.target:t.srcElement,"mousedown"!==t.type&&"dragstart"!==t.type||(a["i"](y,"mousemove",i),a["i"](y,"mouseup",o)),v.fgcanvas_.style.cursor="col-resize",D.cover(),!0},i=function(t){if(!b)return!1;a["k"](t);var e=t.clientX-x;if(Math.abs(e)<4)return!0;x=t.clientX;var i,n=v.getZoomHandleStatus_();m==v.leftZoomHandle_?(i=n.leftHandlePos+e,i=Math.min(i,n.rightHandlePos-m.width-3),i=Math.max(i,v.canvasRect_.x)):(i=n.rightHandlePos+e,i=Math.min(i,v.canvasRect_.x+v.canvasRect_.w),i=Math.max(i,n.leftHandlePos+m.width+3));var r=m.width/2;return m.style.left=i-r+"px",v.drawInteractiveLayer_(),A&&s(),!0},o=function(t){return!!b&&(b=!1,D.uncover(),a["O"](y,"mousemove",i),a["O"](y,"mouseup",o),v.fgcanvas_.style.cursor="default",A||s(),!0)},s=function(){try{var e=v.getZoomHandleStatus_();if(v.isChangingRange_=!0,e.isZoomed){var i=t(e);v.dygraph_.doZoomXDates_(i[0],i[1])}else v.dygraph_.resetZoom()}finally{v.isChangingRange_=!1}},l=function(t){var e=v.leftZoomHandle_.getBoundingClientRect(),i=e.left+e.width/2;e=v.rightZoomHandle_.getBoundingClientRect();var a=e.left+e.width/2;return t.clientX>i&&t.clientX<a},h=function(t){return!(w||!l(t)||!v.getZoomHandleStatus_().isZoomed)&&(a["k"](t),w=!0,x=t.clientX,"mousedown"===t.type&&(a["i"](y,"mousemove",u),a["i"](y,"mouseup",c)),!0)},u=function(t){if(!w)return!1;a["k"](t);var e=t.clientX-x;if(Math.abs(e)<4)return!0;x=t.clientX;var i=v.getZoomHandleStatus_(),n=i.leftHandlePos,r=i.rightHandlePos,o=r-n;n+e<=v.canvasRect_.x?(n=v.canvasRect_.x,r=n+o):r+e>=v.canvasRect_.x+v.canvasRect_.w?(r=v.canvasRect_.x+v.canvasRect_.w,n=r-o):(n+=e,r+=e);var s=v.leftZoomHandle_.width/2;return v.leftZoomHandle_.style.left=n-s+"px",v.rightZoomHandle_.style.left=r-s+"px",v.drawInteractiveLayer_(),A&&d(),!0},c=function(t){return!!w&&(w=!1,a["O"](y,"mousemove",u),a["O"](y,"mouseup",c),A||d(),!0)},d=function(){try{v.isChangingRange_=!0,v.dygraph_.dateWindow_=t(v.getZoomHandleStatus_()),v.dygraph_.drawGraph_(!1)}finally{v.isChangingRange_=!1}},p=function(t){if(!b&&!w){var e=l(t)?"move":"default";e!=v.fgcanvas_.style.cursor&&(v.fgcanvas_.style.cursor=e)}},g=function(t){"touchstart"==t.type&&1==t.targetTouches.length?e(t.targetTouches[0])&&a["k"](t):"touchmove"==t.type&&1==t.targetTouches.length?i(t.targetTouches[0])&&a["k"](t):o(t)},f=function(t){"touchstart"==t.type&&1==t.targetTouches.length?h(t.targetTouches[0])&&a["k"](t):"touchmove"==t.type&&1==t.targetTouches.length?u(t.targetTouches[0])&&a["k"](t):c(t)},_=function(t,e){for(var i=["touchstart","touchend","touchmove","touchcancel"],a=0;a<i.length;a++)v.dygraph_.addAndTrackEvent(t,i[a],e)},this.setDefaultOption_("interactionModel",n["a"].dragIsPanInteractionModel),this.setDefaultOption_("panEdgeFraction",1e-4);var S=window.opera?"mousedown":"dragstart";this.dygraph_.addAndTrackEvent(this.leftZoomHandle_,S,e),this.dygraph_.addAndTrackEvent(this.rightZoomHandle_,S,e),this.dygraph_.addAndTrackEvent(this.fgcanvas_,"mousedown",h),this.dygraph_.addAndTrackEvent(this.fgcanvas_,"mousemove",p),this.hasTouchInterface_&&(_(this.leftZoomHandle_,g),_(this.rightZoomHandle_,g),_(this.fgcanvas_,f))},o.prototype.drawStaticLayer_=function(){var t=this.bgcanvas_ctx_;t.clearRect(0,0,this.canvasRect_.w,this.canvasRect_.h);try{this.drawMiniPlot_()}catch(i){console.warn(i)}var e=.5;this.bgcanvas_ctx_.lineWidth=this.getOption_("rangeSelectorBackgroundLineWidth"),t.strokeStyle=this.getOption_("rangeSelectorBackgroundStrokeColor"),t.beginPath(),t.moveTo(e,e),t.lineTo(e,this.canvasRect_.h-e),t.lineTo(this.canvasRect_.w-e,this.canvasRect_.h-e),t.lineTo(this.canvasRect_.w-e,e),t.stroke()},o.prototype.drawMiniPlot_=function(){var t=this.getOption_("rangeSelectorPlotFillColor"),e=this.getOption_("rangeSelectorPlotFillGradientColor"),i=this.getOption_("rangeSelectorPlotStrokeColor");if(t||i){var a=this.getOption_("stepPlot"),n=this.computeCombinedSeriesAndLimits_(),r=n.yMax-n.yMin,o=this.bgcanvas_ctx_,s=.5,l=this.dygraph_.xAxisExtremes(),h=Math.max(l[1]-l[0],1e-30),u=(this.canvasRect_.w-s)/h,c=(this.canvasRect_.h-s)/r,d=this.canvasRect_.w-s,p=this.canvasRect_.h-s,g=null,f=null;o.beginPath(),o.moveTo(s,p);for(var _=0;_<n.data.length;_++){var v=n.data[_],y=null!==v[0]?(v[0]-l[0])*u:NaN,x=null!==v[1]?p-(v[1]-n.yMin)*c:NaN;(a||null===g||Math.round(y)!=Math.round(g))&&(isFinite(y)&&isFinite(x)?(null===g?o.lineTo(y,p):a&&o.lineTo(y,f),o.lineTo(y,x),g=y,f=x):(null!==g&&(a?(o.lineTo(y,f),o.lineTo(y,p)):o.lineTo(g,p)),g=f=null))}if(o.lineTo(d,p),o.closePath(),t){var m=this.bgcanvas_ctx_.createLinearGradient(0,0,0,p);e&&m.addColorStop(0,e),m.addColorStop(1,t),this.bgcanvas_ctx_.fillStyle=m,o.fill()}i&&(this.bgcanvas_ctx_.strokeStyle=i,this.bgcanvas_ctx_.lineWidth=this.getOption_("rangeSelectorPlotLineWidth"),o.stroke())}},o.prototype.computeCombinedSeriesAndLimits_=function(){var t,e=this.dygraph_,i=this.getOption_("logscale"),n=e.numColumns(),r=e.getLabels(),o=new Array(n),s=!1,l=e.visibility(),h=[];for(t=1;t<n;t++){var u=this.getOption_("showInRangeSelector",r[t]);h.push(u),null!==u&&(s=!0)}if(s)for(t=1;t<n;t++)o[t]=h[t-1];else for(t=1;t<n;t++)o[t]=l[t-1];var c=[],d=e.dataHandler_,p=e.attributes_;for(t=1;t<e.numColumns();t++)if(o[t]){var g=d.extractSeries(e.rawData_,t,p);e.rollPeriod()>1&&(g=d.rollingAverage(g,e.rollPeriod(),p,t)),c.push(g)}var f=[];for(t=0;t<c[0].length;t++){for(var _=0,v=0,y=0;y<c.length;y++){var x=c[y][t][1];null===x||isNaN(x)||(v++,_+=x)}f.push([c[0][t][0],_/v])}var m=Number.MAX_VALUE,b=-Number.MAX_VALUE;for(t=0;t<f.length;t++){var w=f[t][1];null!==w&&isFinite(w)&&(!i||w>0)&&(m=Math.min(m,w),b=Math.max(b,w))}var A=.25;if(i)for(b=a["H"](b),b+=b*A,m=a["H"](m),t=0;t<f.length;t++)f[t][1]=a["H"](f[t][1]);else{var D,S=b-m;D=S<=Number.MIN_VALUE?b*A:S*A,b+=D,m-=D}return{data:f,yMin:m,yMax:b}},o.prototype.placeZoomHandles_=function(){var t=this.dygraph_.xAxisExtremes(),e=this.dygraph_.xAxisRange(),i=t[1]-t[0],a=Math.max(0,(e[0]-t[0])/i),n=Math.max(0,(t[1]-e[1])/i),r=this.canvasRect_.x+this.canvasRect_.w*a,o=this.canvasRect_.x+this.canvasRect_.w*(1-n),s=Math.max(this.canvasRect_.y,this.canvasRect_.y+(this.canvasRect_.h-this.leftZoomHandle_.height)/2),l=this.leftZoomHandle_.width/2;this.leftZoomHandle_.style.left=r-l+"px",this.leftZoomHandle_.style.top=s+"px",this.rightZoomHandle_.style.left=o-l+"px",this.rightZoomHandle_.style.top=this.leftZoomHandle_.style.top,this.leftZoomHandle_.style.visibility="visible",this.rightZoomHandle_.style.visibility="visible"},o.prototype.drawInteractiveLayer_=function(){var t=this.fgcanvas_ctx_;t.clearRect(0,0,this.canvasRect_.w,this.canvasRect_.h);var e=1,i=this.canvasRect_.w-e,a=this.canvasRect_.h-e,n=this.getZoomHandleStatus_();if(t.strokeStyle=this.getOption_("rangeSelectorForegroundStrokeColor"),t.lineWidth=this.getOption_("rangeSelectorForegroundLineWidth"),n.isZoomed){var r=Math.max(e,n.leftHandlePos-this.canvasRect_.x),o=Math.min(i,n.rightHandlePos-this.canvasRect_.x);const s=this.getOption_("rangeSelectorVeilColour");t.fillStyle=s||"rgba(240, 240, 240, "+this.getOption_("rangeSelectorAlpha").toString()+")",t.fillRect(0,0,r,this.canvasRect_.h),t.fillRect(o,0,this.canvasRect_.w-o,this.canvasRect_.h),t.beginPath(),t.moveTo(e,e),t.lineTo(r,e),t.lineTo(r,a),t.lineTo(o,a),t.lineTo(o,e),t.lineTo(i,e),t.stroke()}else t.beginPath(),t.moveTo(e,e),t.lineTo(e,a),t.lineTo(i,a),t.lineTo(i,e),t.stroke()},o.prototype.getZoomHandleStatus_=function(){var t=this.leftZoomHandle_.width/2,e=parseFloat(this.leftZoomHandle_.style.left)+t,i=parseFloat(this.rightZoomHandle_.style.left)+t;return{leftHandlePos:e,rightHandlePos:i,isZoomed:e-1>this.canvasRect_.x||i+1<this.canvasRect_.x+this.canvasRect_.w}},e["a"]=o},a988:function(t,e,i){"use strict";
58
+ /**
59
+ * @license
60
+ * Copyright 2012 Dan Vanderkam (danvdk@gmail.com)
61
+ * MIT-licenced: https://opensource.org/licenses/MIT
62
+ */var a=function(){this.annotations_=[]};a.prototype.toString=function(){return"Annotations Plugin"},a.prototype.activate=function(t){return{clearChart:this.clearChart,didDrawChart:this.didDrawChart}},a.prototype.detachLabels=function(){for(var t=0;t<this.annotations_.length;t++){var e=this.annotations_[t];e.parentNode&&e.parentNode.removeChild(e),this.annotations_[t]=null}this.annotations_=[]},a.prototype.clearChart=function(t){this.detachLabels()},a.prototype.didDrawChart=function(t){var e=t.dygraph,i=e.layout_.annotated_points;if(i&&0!==i.length)for(var a=t.canvas.parentNode,n=function(t,i,a){return function(n){var r=a.annotation;r.hasOwnProperty(t)?r[t](r,a,e,n):e.getOption(i)&&e.getOption(i)(r,a,e,n)}},r=t.dygraph.getArea(),o={},s=0;s<i.length;s++){var l=i[s];if(!(l.canvasx<r.x||l.canvasx>r.x+r.w||l.canvasy<r.y||l.canvasy>r.y+r.h)){var h=l.annotation,u=6;h.hasOwnProperty("tickHeight")&&(u=h.tickHeight);var c=document.createElement("div");c.style["fontSize"]=e.getOption("axisLabelFontSize")+"px";var d="dygraph-annotation";h.hasOwnProperty("icon")||(d+=" dygraphDefaultAnnotation dygraph-default-annotation"),h.hasOwnProperty("cssClass")&&(d+=" "+h.cssClass),c.className=d;var p=h.hasOwnProperty("width")?h.width:16,g=h.hasOwnProperty("height")?h.height:16;if(h.hasOwnProperty("icon")){var f=document.createElement("img");f.src=h.icon,f.width=p,f.height=g,c.appendChild(f)}else l.annotation.hasOwnProperty("shortText")&&c.appendChild(document.createTextNode(l.annotation.shortText));var _=l.canvasx-p/2;c.style.left=_+"px";var v=0;if(h.attachAtBottom){var y=r.y+r.h-g-u;o[_]?y-=o[_]:o[_]=0,o[_]+=u+g,v=y}else v=l.canvasy-g-u;c.style.top=v+"px",c.style.width=p+"px",c.style.height=g+"px",c.title=l.annotation.text,c.style.color=e.colorsMap_[l.name],c.style.borderColor=e.colorsMap_[l.name],h.div=c,e.addAndTrackEvent(c,"click",n("clickHandler","annotationClickHandler",l,this)),e.addAndTrackEvent(c,"mouseover",n("mouseOverHandler","annotationMouseOverHandler",l,this)),e.addAndTrackEvent(c,"mouseout",n("mouseOutHandler","annotationMouseOutHandler",l,this)),e.addAndTrackEvent(c,"dblclick",n("dblClickHandler","annotationDblClickHandler",l,this)),a.appendChild(c),this.annotations_.push(c);var x=t.drawingContext;if(x.save(),x.strokeStyle=h.hasOwnProperty("tickColor")?h.tickColor:e.colorsMap_[l.name],x.lineWidth=h.hasOwnProperty("tickWidth")?h.tickWidth:e.getOption("strokeWidth"),x.beginPath(),h.attachAtBottom){y=v+g;x.moveTo(l.canvasx,y),x.lineTo(l.canvasx,y+u)}else x.moveTo(l.canvasx,l.canvasy),x.lineTo(l.canvasx,l.canvasy-2-u);x.closePath(),x.stroke(),x.restore()}}},a.prototype.destroy=function(){this.detachLabels()},e["a"]=a},b157:function(t,e,i){"use strict";
63
+ /**
64
+ * @license
65
+ * Copyright 2012 Dan Vanderkam (danvdk@gmail.com)
66
+ * MIT-licenced: https://opensource.org/licenses/MIT
67
+ */var a=function(){};a.prototype.toString=function(){return"Gridline Plugin"},a.prototype.activate=function(t){return{willDrawChart:this.willDrawChart}},a.prototype.willDrawChart=function(t){var e,i,a,n=t.dygraph,r=t.drawingContext,o=n.layout_,s=t.dygraph.plotter_.area;function l(t){return Math.round(t)+.5}function h(t){return Math.round(t)-.5}if(n.getOptionForAxis("drawGrid","y")){for(var u=["y","y2"],c=[],d=[],p=[],g=[],f=[],_=0;_<u.length;_++)p[_]=n.getOptionForAxis("drawGrid",u[_]),p[_]&&(c[_]=n.getOptionForAxis("gridLineColor",u[_]),d[_]=n.getOptionForAxis("gridLineWidth",u[_]),f[_]=n.getOptionForAxis("gridLinePattern",u[_]),g[_]=f[_]&&f[_].length>=2);a=o.yticks,r.save(),a.forEach(t=>{if(t.has_tick){var a=t.axis;p[a]&&(r.save(),g[a]&&r.setLineDash&&r.setLineDash(f[a]),r.strokeStyle=c[a],r.lineWidth=d[a],e=l(s.x),i=h(s.y+t.pos*s.h),r.beginPath(),r.moveTo(e,i),r.lineTo(e+s.w,i),r.stroke(),r.restore())}}),r.restore()}if(n.getOptionForAxis("drawGrid","x")){a=o.xticks,r.save();f=n.getOptionForAxis("gridLinePattern","x"),g=f&&f.length>=2;g&&r.setLineDash&&r.setLineDash(f),r.strokeStyle=n.getOptionForAxis("gridLineColor","x"),r.lineWidth=n.getOptionForAxis("gridLineWidth","x"),a.forEach(t=>{t.has_tick&&(e=l(s.x+t.pos*s.w),i=h(s.y+s.h),r.beginPath(),r.moveTo(e,i),r.lineTo(e,s.y),r.stroke())}),g&&r.setLineDash&&r.setLineDash([]),r.restore()}},a.prototype.destroy=function(){},e["a"]=a},bde9:function(t,e,i){"use strict";i.d(e,"g",(function(){return n})),i.d(e,"H",(function(){return o})),i.d(e,"I",(function(){return s})),i.d(e,"b",(function(){return l})),i.d(e,"c",(function(){return h})),i.d(e,"f",(function(){return u})),i.d(e,"h",(function(){return c})),i.d(e,"x",(function(){return d})),i.d(e,"i",(function(){return p})),i.d(e,"O",(function(){return g})),i.d(e,"k",(function(){return f})),i.d(e,"z",(function(){return _})),i.d(e,"v",(function(){return v})),i.d(e,"L",(function(){return y})),i.d(e,"M",(function(){return x})),i.d(e,"t",(function(){return m})),i.d(e,"u",(function(){return b})),i.d(e,"E",(function(){return w})),i.d(e,"G",(function(){return A})),i.d(e,"w",(function(){return D})),i.d(e,"d",(function(){return O})),i.d(e,"e",(function(){return E})),i.d(e,"q",(function(){return L})),i.d(e,"j",(function(){return M})),i.d(e,"p",(function(){return N})),i.d(e,"T",(function(){return F})),i.d(e,"U",(function(){return R})),i.d(e,"S",(function(){return I})),i.d(e,"A",(function(){return H})),i.d(e,"C",(function(){return Y})),i.d(e,"l",(function(){return X})),i.d(e,"m",(function(){return V})),i.d(e,"y",(function(){return Z})),i.d(e,"n",(function(){return W})),i.d(e,"P",(function(){return U})),i.d(e,"F",(function(){return K})),i.d(e,"a",(function(){return q})),i.d(e,"s",(function(){return $})),i.d(e,"D",(function(){return j})),i.d(e,"R",(function(){return it})),i.d(e,"B",(function(){return at})),i.d(e,"N",(function(){return nt})),i.d(e,"K",(function(){return ct})),i.d(e,"J",(function(){return dt})),i.d(e,"o",(function(){return gt})),i.d(e,"r",(function(){return ft})),i.d(e,"Q",(function(){return xt}));var a=i("5337");
68
+ /**
69
+ * @license
70
+ * Copyright 2011 Dan Vanderkam (danvdk@gmail.com)
71
+ * MIT-licenced: https://opensource.org/licenses/MIT
72
+ */var n=10,r=Math.log(n),o=function(t){return Math.log(t)/r},s=function(t,e,i){var a=o(t),r=o(e),s=a+i*(r-a),l=Math.pow(n,s);return l},l=[7,3],h=[7,2,2,2],u=1,c=2,d=function(t){return t.getContext("2d")},p=function(t,e,i){t.addEventListener(e,i,!1)};function g(t,e,i){t.removeEventListener(e,i,!1)}function f(t){return t=t||window.event,t.stopPropagation&&t.stopPropagation(),t.preventDefault&&t.preventDefault(),t.cancelBubble=!0,t.cancel=!0,t.returnValue=!1,!1}function _(t,e,i){var a,n,r;if(0===e)a=i,n=i,r=i;else{var o=Math.floor(6*t),s=6*t-o,l=i*(1-e),h=i*(1-e*s),u=i*(1-e*(1-s));switch(o){case 1:a=h,n=i,r=l;break;case 2:a=l,n=i,r=u;break;case 3:a=l,n=h,r=i;break;case 4:a=u,n=l,r=i;break;case 5:a=i,n=l,r=h;break;case 6:case 0:a=i,n=u,r=l;break}}return a=Math.floor(255*a+.5),n=Math.floor(255*n+.5),r=Math.floor(255*r+.5),"rgb("+a+","+n+","+r+")"}function v(t){var e=t.getBoundingClientRect(),i=window,a=document.documentElement;return{x:e.left+(i.pageXOffset||a.scrollLeft),y:e.top+(i.pageYOffset||a.scrollTop)}}function y(t){return!t.pageX||t.pageX<0?0:t.pageX}function x(t){return!t.pageY||t.pageY<0?0:t.pageY}function m(t,e){return y(t)-e.px}function b(t,e){return x(t)-e.py}function w(t){return!!t&&!isNaN(t)}function A(t,e){return!!t&&(null!==t.yval&&(null!==t.x&&void 0!==t.x&&(null!==t.y&&void 0!==t.y&&!(isNaN(t.x)||!e&&isNaN(t.y)))))}function D(t,e){var i=Math.min(Math.max(1,e||2),21);return Math.abs(t)<.001&&0!==t?t.toExponential(i-1):t.toPrecision(i)}function S(t){return t<10?"0"+t:""+t}var O={getFullYear:t=>t.getFullYear(),getMonth:t=>t.getMonth(),getDate:t=>t.getDate(),getHours:t=>t.getHours(),getMinutes:t=>t.getMinutes(),getSeconds:t=>t.getSeconds(),getMilliseconds:t=>t.getMilliseconds(),getDay:t=>t.getDay(),makeDate:function(t,e,i,a,n,r,o){return new Date(t,e,i,a,n,r,o)}},E={getFullYear:t=>t.getUTCFullYear(),getMonth:t=>t.getUTCMonth(),getDate:t=>t.getUTCDate(),getHours:t=>t.getUTCHours(),getMinutes:t=>t.getUTCMinutes(),getSeconds:t=>t.getUTCSeconds(),getMilliseconds:t=>t.getUTCMilliseconds(),getDay:t=>t.getUTCDay(),makeDate:function(t,e,i,a,n,r,o){return new Date(Date.UTC(t,e,i,a,n,r,o))}};function T(t,e,i,a){var n=S(t)+":"+S(e);if(i&&(n+=":"+S(i),a)){var r=""+a;n+="."+("000"+r).substring(r.length)}return n}function L(t,e){var i=e?E:O,a=new Date(t),n=i.getFullYear(a),r=i.getMonth(a),o=i.getDate(a),s=i.getHours(a),l=i.getMinutes(a),h=i.getSeconds(a),u=i.getMilliseconds(a),c=""+n,d=S(r+1),p=S(o),g=3600*s+60*l+h+.001*u,f=c+"/"+d+"/"+p;return g&&(f+=" "+T(s,l,h,u)),f}function C(t,e){var i=Math.pow(10,e);return Math.round(t*i)/i}function M(t,e,i,a,n){if(null!==a&&void 0!==a&&null!==n&&void 0!==n||(a=0,n=e.length-1),a>n)return-1;null!==i&&void 0!==i||(i=0);var r,o=function(t){return t>=0&&t<e.length},s=parseInt((a+n)/2,10),l=e[s];return l==t?s:l>t?i>0&&(r=s-1,o(r)&&e[r]<t)?s:M(t,e,i,a,s-1):l<t?i<0&&(r=s+1,o(r)&&e[r]>t)?s:M(t,e,i,s+1,n):-1}function N(t){var e,i;if((-1==t.search("-")||-1!=t.search("T")||-1!=t.search("Z"))&&(i=P(t),i&&!isNaN(i)))return i;if(-1!=t.search("-")){e=t.replace("-","/","g");while(-1!=e.search("-"))e=e.replace("-","/");i=P(e)}else i=P(t);return i&&!isNaN(i)||console.error("Couldn't parse "+t+" as a date"),i}function P(t){return new Date(t).getTime()}function F(t,e){if("undefined"!=typeof e&&null!==e)for(var i in e)e.hasOwnProperty(i)&&(t[i]=e[i]);return t}var k="undefined"!==typeof Node&&null!==Node&&"object"===typeof Node?function(t){return t instanceof Node}:function(t){return"object"===typeof t&&"number"===typeof t.nodeType&&"string"===typeof t.nodeName};function R(t,e){if("undefined"!=typeof e&&null!==e)for(var i in e)if(e.hasOwnProperty(i)){const a=e[i];null===a?t[i]=null:H(a)?t[i]=a.slice():k(a)?t[i]=a:"object"==typeof a?("object"==typeof t[i]&&null!==t[i]||(t[i]={}),R(t[i],a)):t[i]=a}return t}function I(t){if(null===t)return"null";const e=typeof t;return("object"===e||"function"===e&&"function"===typeof t.item)&&"number"===typeof t.length&&3!==t.nodeType&&4!==t.nodeType?"array":e}function H(t){const e=typeof t;return null!==t&&("object"===e||"function"===e&&"function"===typeof t.item)&&"number"===typeof t.length&&3!==t.nodeType&&4!==t.nodeType}function Y(t){return null!==t&&"object"===typeof t&&"function"===typeof t.getTime}function X(t){for(var e=[],i=0;i<t.length;i++)H(t[i])?e.push(X(t[i])):e.push(t[i]);return e}function V(){return document.createElement("canvas")}function Z(t){try{var e=window.devicePixelRatio,i=t.webkitBackingStorePixelRatio||t.mozBackingStorePixelRatio||t.msBackingStorePixelRatio||t.oBackingStorePixelRatio||t.backingStorePixelRatio||1;return void 0!==e?e/i:1}catch(a){return 1}}function B(t,e,i,a){e=e||0,i=i||t.length,this.hasNext=!0,this.peek=null,this.start_=e,this.array_=t,this.predicate_=a,this.end_=Math.min(t.length,e+i),this.nextIdx_=e-1,this.next()}function W(t,e,i,a){return new B(t,e,i,a)}B.prototype.next=function(){if(!this.hasNext)return null;var t=this.peek,e=this.nextIdx_+1,i=!1;while(e<this.end_){if(!this.predicate_||this.predicate_(this.array_,e)){this.peek=this.array_[e],i=!0;break}e++}return this.nextIdx_=e,i||(this.hasNext=!1,this.peek=null),t};var z=function(){return window.requestAnimationFrame||window.webkitRequestAnimationFrame||window.mozRequestAnimationFrame||window.oRequestAnimationFrame||window.msRequestAnimationFrame||function(t){window.setTimeout(t,1e3/60)}}();function U(t,e,i,a){var n,r=0,o=(new Date).getTime();if(t(r),1!=e){var s=e-1;(function l(){r>=e||z.call(window,(function(){var e=(new Date).getTime(),h=e-o;n=r,r=Math.floor(h/i);var u=r-n,c=r+u>s;c||r>=s?(t(s),a()):(0!==u&&t(r),l())}))})()}else a()}var G={annotationClickHandler:!0,annotationDblClickHandler:!0,annotationMouseOutHandler:!0,annotationMouseOverHandler:!0,axisLineColor:!0,axisLineWidth:!0,clickCallback:!0,drawCallback:!0,drawHighlightPointCallback:!0,drawPoints:!0,drawPointCallback:!0,drawGrid:!0,fillAlpha:!0,gridLineColor:!0,gridLineWidth:!0,hideOverlayOnMouseOut:!0,highlightCallback:!0,highlightCircleSize:!0,interactionModel:!0,labelsDiv:!0,labelsKMB:!0,labelsKMG2:!0,labelsSeparateLines:!0,labelsShowZeroValues:!0,legend:!0,panEdgeFraction:!0,pixelsPerYLabel:!0,pointClickCallback:!0,pointSize:!0,rangeSelectorPlotFillColor:!0,rangeSelectorPlotFillGradientColor:!0,rangeSelectorPlotStrokeColor:!0,rangeSelectorBackgroundStrokeColor:!0,rangeSelectorBackgroundLineWidth:!0,rangeSelectorPlotLineWidth:!0,rangeSelectorForegroundStrokeColor:!0,rangeSelectorForegroundLineWidth:!0,rangeSelectorAlpha:!0,showLabelsOnHighlight:!0,showRoller:!0,strokeWidth:!0,underlayCallback:!0,unhighlightCallback:!0,zoomCallback:!0};function K(t,e){var i={};if(t)for(var a=1;a<t.length;a++)i[t[a]]=!0;var n=function(t){for(var e in t)if(t.hasOwnProperty(e)&&!G[e])return!0;return!1};for(var r in e)if(e.hasOwnProperty(r))if("highlightSeriesOpts"==r||i[r]&&!e.series){if(n(e[r]))return!0}else if("series"==r||"axes"==r){var o=e[r];for(var s in o)if(o.hasOwnProperty(s)&&n(o[s]))return!0}else if(!G[r])return!0;return!1}var q={DEFAULT:function(t,e,i,a,n,r,o){i.beginPath(),i.fillStyle=r,i.arc(a,n,o,0,2*Math.PI,!1),i.fill()}};function $(t){for(var e=0;e<t.length;e++){var i=t.charAt(e);if("\r"===i)return e+1<t.length&&"\n"===t.charAt(e+1)?"\r\n":i;if("\n"===i)return e+1<t.length&&"\r"===t.charAt(e+1)?"\n\r":i}return null}function j(t,e){if(null===e||null===t)return!1;var i=t;while(i&&i!==e)i=i.parentNode;return i===e}function Q(t,e){return e<0?1/Math.pow(t,-e):Math.pow(t,e)}var J=/^#([0-9A-Fa-f]{2})([0-9A-Fa-f]{2})([0-9A-Fa-f]{2})([0-9A-Fa-f]{2})?$/,tt=/^rgba?\((\d{1,3}),\s*(\d{1,3}),\s*(\d{1,3})(?:,\s*([01](?:\.\d+)?))?\)$/;function et(t){var e,i,a,n,r=null;if(e=J.exec(t))i=parseInt(e[1],16),a=parseInt(e[2],16),n=parseInt(e[3],16),e[4]&&(r=parseInt(e[4],16));else{if(!(e=tt.exec(t)))return null;i=parseInt(e[1],10),a=parseInt(e[2],10),n=parseInt(e[3],10),e[4]&&(r=parseFloat(e[4]))}return null!==r?{r:i,g:a,b:n,a:r}:{r:i,g:a,b:n}}function it(t){var e=et(t);if(e)return e;var i=document.createElement("div");i.style.backgroundColor=t,i.style.visibility="hidden",document.body.appendChild(i);var a=window.getComputedStyle(i,null).backgroundColor;return document.body.removeChild(i),et(a)}function at(t){try{var e=t||document.createElement("canvas");e.getContext("2d")}catch(i){return!1}return!0}function nt(t,e,i){var a=parseFloat(t);if(!isNaN(a))return a;if(/^ *$/.test(t))return null;if(/^ *nan *$/i.test(t))return NaN;var n="Unable to parse '"+t+"' as a number";return void 0!==i&&void 0!==e&&(n+=" on line "+(1+(e||0))+" ('"+i+"') of CSV."),console.error(n),null}var rt=["k","M","G","T","P","E","Z","Y"],ot=["m","µ","n","p","f","a","z","y"],st=["Ki","Mi","Gi","Ti","Pi","Ei","Zi","Yi"],lt=["p-10","p-20","p-30","p-40","p-50","p-60","p-70","p-80"],ht=["K","M","G","T","P","E","Z","Y"],ut=ot;function ct(t,e){var i=e("sigFigs");if(null!==i)return D(t,i);if(0===t)return"0";var a,n=e("digitsAfterDecimal"),r=e("maxNumberWidth"),o=e("labelsKMB"),s=e("labelsKMG2"),l=Math.abs(t);if(o||s){var h,u,c,d=[],p=[];if(o&&(h=1e3,d=rt,p=ot),s&&(h=1024,d=st,p=lt,o&&(d=ht,p=ut)),l>=h){c=d.length;while(c>0)if(u=Q(h,c),--c,l>=u)return a=l/u>=Math.pow(10,r)?t.toExponential(n):C(t/u,n)+d[c],a}else if(l<1){c=0;while(c<p.length)if(++c,u=Q(h,c),l*u>=1)break;return a=l*u<Math.pow(10,-n)?t.toExponential(n):C(t*u,n)+p[c-1],a}}return a=l>=Math.pow(10,r)||l<Math.pow(10,-n)?t.toExponential(n):""+C(t,n),a}function dt(t,e,i){return ct.call(this,t,i)}var pt=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];function gt(t,e,i){var n=i("labelsUTC"),r=n?E:O,o=r.getFullYear(t),s=r.getMonth(t),l=r.getDate(t),h=r.getHours(t),u=r.getMinutes(t),c=r.getSeconds(t),d=r.getMilliseconds(t);if(e>=a["a"].DECADAL)return""+o;if(e>=a["a"].MONTHLY)return pt[s]+"&#160;"+o;var p=3600*h+60*u+c+.001*d;if(0===p||e>=a["a"].DAILY)return S(l)+"&#160;"+pt[s];if(e<a["a"].SECONDLY){var g=""+d;return S(c)+"."+("000"+g).substring(g.length)}return e>a["a"].MINUTELY?T(h,u,c,0):T(h,u,c,d)}function ft(t,e){return L(t,e("labelsUTC"))}var _t=[],vt=!1;function yt(t){return"function"===typeof t&&t(),!0}function xt(t){if("undefined"!==typeof document){const e=function(){if(!vt){vt=!0,t.onDOMready=yt,document.removeEventListener("DOMContentLoaded",e,!1),window.removeEventListener("load",e,!1);for(let t=0;t<_t.length;++t)_t[t]();_t=null}};t.onDOMready=function(i){if("complete"===document.readyState)return t.onDOMready=yt,yt(i);const a=function(t){return"function"===typeof t&&_t.push(t),!1};return t.onDOMready=a,document.addEventListener("DOMContentLoaded",e,!1),window.addEventListener("load",e,!1),"complete"===document.readyState?(e(),t.onDOMready=yt,yt(i)):a(i)}}}},d84a:function(t,e,i){"use strict";var a=i("bde9"),n=100,r={maybeTreatMouseOpAsClick:function(t,e,i){i.dragEndX=a["t"](t,i),i.dragEndY=a["u"](t,i);var n=Math.abs(i.dragEndX-i.dragStartX),o=Math.abs(i.dragEndY-i.dragStartY);n<2&&o<2&&void 0!==e.lastx_&&null!==e.lastx_&&r.treatMouseOpAsClick(e,t,i),i.regionWidth=n,i.regionHeight=o},startPan:function(t,e,i){var n,r;i.isPanning=!0;var o=e.xAxisRange();if(e.getOptionForAxis("logscale","x")?(i.initialLeftmostDate=a["H"](o[0]),i.dateRange=a["H"](o[1])-a["H"](o[0])):(i.initialLeftmostDate=o[0],i.dateRange=o[1]-o[0]),i.xUnitsPerPixel=i.dateRange/(e.plotter_.area.w-1),e.getNumericOption("panEdgeFraction")){var s=e.width_*e.getNumericOption("panEdgeFraction"),l=e.xAxisExtremes(),h=e.toDomXCoord(l[0])-s,u=e.toDomXCoord(l[1])+s,c=e.toDataXCoord(h),d=e.toDataXCoord(u);i.boundedDates=[c,d];var p=[],g=e.height_*e.getNumericOption("panEdgeFraction");for(n=0;n<e.axes_.length;n++){r=e.axes_[n];var f=r.extremeRange,_=e.toDomYCoord(f[0],n)+g,v=e.toDomYCoord(f[1],n)-g,y=e.toDataYCoord(_,n),x=e.toDataYCoord(v,n);p[n]=[y,x]}i.boundedValues=p}else i.boundedDates=null,i.boundedValues=null;for(i.is2DPan=!1,i.axes=[],n=0;n<e.axes_.length;n++){r=e.axes_[n];var m={},b=e.yAxisRange(n),w=e.attributes_.getForAxis("logscale",n);w?(m.initialTopValue=a["H"](b[1]),m.dragValueRange=a["H"](b[1])-a["H"](b[0])):(m.initialTopValue=b[1],m.dragValueRange=b[1]-b[0]),m.unitsPerPixel=m.dragValueRange/(e.plotter_.area.h-1),i.axes.push(m),r.valueRange&&(i.is2DPan=!0)}},movePan:function(t,e,i){i.dragEndX=a["t"](t,i),i.dragEndY=a["u"](t,i);var n=i.initialLeftmostDate-(i.dragEndX-i.dragStartX)*i.xUnitsPerPixel;i.boundedDates&&(n=Math.max(n,i.boundedDates[0]));var r=n+i.dateRange;if(i.boundedDates&&r>i.boundedDates[1]&&(n-=r-i.boundedDates[1],r=n+i.dateRange),e.getOptionForAxis("logscale","x")?e.dateWindow_=[Math.pow(a["g"],n),Math.pow(a["g"],r)]:e.dateWindow_=[n,r],i.is2DPan)for(var o=i.dragEndY-i.dragStartY,s=0;s<e.axes_.length;s++){var l=e.axes_[s],h=i.axes[s],u=o*h.unitsPerPixel,c=i.boundedValues?i.boundedValues[s]:null,d=h.initialTopValue+u;c&&(d=Math.min(d,c[1]));var p=d-h.dragValueRange;c&&p<c[0]&&(d-=p-c[0],p=d-h.dragValueRange),e.attributes_.getForAxis("logscale",s)?l.valueRange=[Math.pow(a["g"],p),Math.pow(a["g"],d)]:l.valueRange=[p,d]}e.drawGraph_(!1)}};
73
+ /**
74
+ * @license
75
+ * Copyright 2011 Robert Konigsberg (konigsberg@google.com)
76
+ * MIT-licenced: https://opensource.org/licenses/MIT
77
+ */r.endPan=r.maybeTreatMouseOpAsClick,r.startZoom=function(t,e,i){i.isZooming=!0,i.zoomMoved=!1},r.moveZoom=function(t,e,i){i.zoomMoved=!0,i.dragEndX=a["t"](t,i),i.dragEndY=a["u"](t,i);var n=Math.abs(i.dragStartX-i.dragEndX),r=Math.abs(i.dragStartY-i.dragEndY);i.dragDirection=n<r/2?a["h"]:a["f"],e.drawZoomRect_(i.dragDirection,i.dragStartX,i.dragEndX,i.dragStartY,i.dragEndY,i.prevDragDirection,i.prevEndX,i.prevEndY),i.prevEndX=i.dragEndX,i.prevEndY=i.dragEndY,i.prevDragDirection=i.dragDirection},r.treatMouseOpAsClick=function(t,e,i){for(var a=t.getFunctionOption("clickCallback"),n=t.getFunctionOption("pointClickCallback"),r=null,o=-1,s=Number.MAX_VALUE,l=0;l<t.selPoints_.length;l++){var h=t.selPoints_[l],u=Math.pow(h.canvasx-i.dragEndX,2)+Math.pow(h.canvasy-i.dragEndY,2);!isNaN(u)&&(-1==o||u<s)&&(s=u,o=l)}var c=t.getNumericOption("highlightCircleSize")+2;if(s<=c*c&&(r=t.selPoints_[o]),r){var d={cancelable:!0,point:r,canvasx:i.dragEndX,canvasy:i.dragEndY},p=t.cascadeEvents_("pointClick",d);if(p)return;n&&n.call(t,e,r)}d={cancelable:!0,xval:t.lastx_,pts:t.selPoints_,canvasx:i.dragEndX,canvasy:i.dragEndY};t.cascadeEvents_("click",d)||a&&a.call(t,e,t.lastx_,t.selPoints_)},r.endZoom=function(t,e,i){e.clearZoomRect_(),i.isZooming=!1,r.maybeTreatMouseOpAsClick(t,e,i);var n=e.getArea();if(i.regionWidth>=10&&i.dragDirection==a["f"]){var o=Math.min(i.dragStartX,i.dragEndX),s=Math.max(i.dragStartX,i.dragEndX);o=Math.max(o,n.x),s=Math.min(s,n.x+n.w),o<s&&e.doZoomX_(o,s),i.cancelNextDblclick=!0}else if(i.regionHeight>=10&&i.dragDirection==a["h"]){var l=Math.min(i.dragStartY,i.dragEndY),h=Math.max(i.dragStartY,i.dragEndY);l=Math.max(l,n.y),h=Math.min(h,n.y+n.h),l<h&&e.doZoomY_(l,h),i.cancelNextDblclick=!0}i.dragStartX=null,i.dragStartY=null},r.startTouch=function(t,e,i){t.preventDefault(),t.touches.length>1&&(i.startTimeForDoubleTapMs=null);for(var a=[],n=0;n<t.touches.length;n++){var r=t.touches[n],o=r.target.getBoundingClientRect();a.push({pageX:r.pageX,pageY:r.pageY,dataX:e.toDataXCoord(r.clientX-o.left),dataY:e.toDataYCoord(r.clientY-o.top)})}if(i.initialTouches=a,1==a.length)i.initialPinchCenter=a[0],i.touchDirections={x:!0,y:!0};else if(a.length>=2){i.initialPinchCenter={pageX:.5*(a[0].pageX+a[1].pageX),pageY:.5*(a[0].pageY+a[1].pageY),dataX:.5*(a[0].dataX+a[1].dataX),dataY:.5*(a[0].dataY+a[1].dataY)};var s=180/Math.PI*Math.atan2(i.initialPinchCenter.pageY-a[0].pageY,a[0].pageX-i.initialPinchCenter.pageX);s=Math.abs(s),s>90&&(s=90-s),i.touchDirections={x:s<67.5,y:s>22.5}}i.initialRange={x:e.xAxisRange(),y:e.yAxisRange()}},r.moveTouch=function(t,e,i){i.startTimeForDoubleTapMs=null;var a,n=[];for(a=0;a<t.touches.length;a++){var r=t.touches[a];n.push({pageX:r.pageX,pageY:r.pageY})}var o,s=i.initialTouches,l=i.initialPinchCenter;o=1==n.length?n[0]:{pageX:.5*(n[0].pageX+n[1].pageX),pageY:.5*(n[0].pageY+n[1].pageY)};var h,u,c={pageX:o.pageX-l.pageX,pageY:o.pageY-l.pageY},d=i.initialRange.x[1]-i.initialRange.x[0],p=i.initialRange.y[0]-i.initialRange.y[1];if(c.dataX=c.pageX/e.plotter_.area.w*d,c.dataY=c.pageY/e.plotter_.area.h*p,1==n.length)h=1,u=1;else if(n.length>=2){var g=s[1].pageX-l.pageX;h=(n[1].pageX-o.pageX)/g;var f=s[1].pageY-l.pageY;u=(n[1].pageY-o.pageY)/f}h=Math.min(8,Math.max(.125,h)),u=Math.min(8,Math.max(.125,u));var _=!1;if(i.touchDirections.x){var v=l.dataX-c.dataX/h;e.dateWindow_=[v+(i.initialRange.x[0]-l.dataX)/h,v+(i.initialRange.x[1]-l.dataX)/h],_=!0}if(i.touchDirections.y)for(a=0;a<1;a++){var y=e.axes_[a],x=e.attributes_.getForAxis("logscale",a);if(x);else{v=l.dataY-c.dataY/u;y.valueRange=[v+(i.initialRange.y[0]-l.dataY)/u,v+(i.initialRange.y[1]-l.dataY)/u],_=!0}}if(e.drawGraph_(!1),_&&n.length>1&&e.getFunctionOption("zoomCallback")){var m=e.xAxisRange();e.getFunctionOption("zoomCallback").call(e,m[0],m[1],e.yAxisRanges())}},r.endTouch=function(t,e,i){if(0!==t.touches.length)r.startTouch(t,e,i);else if(1==t.changedTouches.length){var a=(new Date).getTime(),n=t.changedTouches[0];i.startTimeForDoubleTapMs&&a-i.startTimeForDoubleTapMs<500&&i.doubleTapX&&Math.abs(i.doubleTapX-n.screenX)<50&&i.doubleTapY&&Math.abs(i.doubleTapY-n.screenY)<50?e.resetZoom():(i.startTimeForDoubleTapMs=a,i.doubleTapX=n.screenX,i.doubleTapY=n.screenY)}};var o=function(t,e,i){return t<e?e-t:t>i?t-i:0},s=function(t,e){var i=a["v"](e.canvas_),n={left:i.x,right:i.x+e.canvas_.offsetWidth,top:i.y,bottom:i.y+e.canvas_.offsetHeight},r={x:a["L"](t),y:a["M"](t)},s=o(r.x,n.left,n.right),l=o(r.y,n.top,n.bottom);return Math.max(s,l)};r.defaultModel={mousedown:function(t,e,i){if(!t.button||2!=t.button){i.initializeMouseDown(t,e,i),t.altKey||t.shiftKey?r.startPan(t,e,i):r.startZoom(t,e,i);var o=function(t){if(i.isZooming){var a=s(t,e);a<n?r.moveZoom(t,e,i):null!==i.dragEndX&&(i.dragEndX=null,i.dragEndY=null,e.clearZoomRect_())}else i.isPanning&&r.movePan(t,e,i)},l=function(t){i.isZooming?null!==i.dragEndX?r.endZoom(t,e,i):r.maybeTreatMouseOpAsClick(t,e,i):i.isPanning&&r.endPan(t,e,i),a["O"](document,"mousemove",o),a["O"](document,"mouseup",l),i.destroy()};e.addAndTrackEvent(document,"mousemove",o),e.addAndTrackEvent(document,"mouseup",l)}},willDestroyContextMyself:!0,touchstart:function(t,e,i){r.startTouch(t,e,i)},touchmove:function(t,e,i){r.moveTouch(t,e,i)},touchend:function(t,e,i){r.endTouch(t,e,i)},dblclick:function(t,e,i){if(i.cancelNextDblclick)i.cancelNextDblclick=!1;else{var a={canvasx:i.dragEndX,canvasy:i.dragEndY,cancelable:!0};e.cascadeEvents_("dblclick",a)||t.altKey||t.shiftKey||e.resetZoom()}}},r.nonInteractiveModel_={mousedown:function(t,e,i){i.initializeMouseDown(t,e,i)},mouseup:r.maybeTreatMouseOpAsClick},r.dragIsPanInteractionModel={mousedown:function(t,e,i){i.initializeMouseDown(t,e,i),r.startPan(t,e,i)},mousemove:function(t,e,i){i.isPanning&&r.movePan(t,e,i)},mouseup:function(t,e,i){i.isPanning&&r.endPan(t,e,i)}},e["a"]=r},d9ce:function(t,e,i){"use strict";var a=i("bde9"),n=function(t){this.dygraph_=t,this.points=[],this.setNames=[],this.annotations=[],this.yAxes_=null,this.xTicks_=null,this.yTicks_=null};
78
+ /**
79
+ * @license
80
+ * Copyright 2011 Dan Vanderkam (danvdk@gmail.com)
81
+ * MIT-licenced: https://opensource.org/licenses/MIT
82
+ */n.prototype.addDataset=function(t,e){this.points.push(e),this.setNames.push(t)},n.prototype.getPlotArea=function(){return this.area_},n.prototype.computePlotArea=function(){var t={x:0,y:0};t.w=this.dygraph_.width_-t.x-this.dygraph_.getOption("rightGap"),t.h=this.dygraph_.height_;var e={chart_div:this.dygraph_.graphDiv,reserveSpaceLeft:function(e){var i={x:t.x,y:t.y,w:e,h:t.h};return t.x+=e,t.w-=e,i},reserveSpaceRight:function(e){var i={x:t.x+t.w-e,y:t.y,w:e,h:t.h};return t.w-=e,i},reserveSpaceTop:function(e){var i={x:t.x,y:t.y,w:t.w,h:e};return t.y+=e,t.h-=e,i},reserveSpaceBottom:function(e){var i={x:t.x,y:t.y+t.h-e,w:t.w,h:e};return t.h-=e,i},chartRect:function(){return{x:t.x,y:t.y,w:t.w,h:t.h}}};this.dygraph_.cascadeEvents_("layout",e),this.area_=t},n.prototype.setAnnotations=function(t){this.annotations=[];for(var e=this.dygraph_.getOption("xValueParser")||function(t){return t},i=0;i<t.length;i++){var n={};if(!t[i].xval&&void 0===t[i].x)return void console.error("Annotations must have an 'x' property");if(t[i].icon&&(!t[i].hasOwnProperty("width")||!t[i].hasOwnProperty("height")))return void console.error("Must set width and height when setting annotation.icon property");a["T"](n,t[i]),n.xval||(n.xval=e(n.x)),this.annotations.push(n)}},n.prototype.setXTicks=function(t){this.xTicks_=t},n.prototype.setYAxes=function(t){this.yAxes_=t},n.prototype.evaluate=function(){this._xAxis={},this._evaluateLimits(),this._evaluateLineCharts(),this._evaluateLineTicks(),this._evaluateAnnotations()},n.prototype._evaluateLimits=function(){var t=this.dygraph_.xAxisRange();this._xAxis.minval=t[0],this._xAxis.maxval=t[1];var e=t[1]-t[0];this._xAxis.scale=0!==e?1/e:1,this.dygraph_.getOptionForAxis("logscale","x")&&(this._xAxis.xlogrange=a["H"](this._xAxis.maxval)-a["H"](this._xAxis.minval),this._xAxis.xlogscale=0!==this._xAxis.xlogrange?1/this._xAxis.xlogrange:1);for(var i=0;i<this.yAxes_.length;i++){var n=this.yAxes_[i];n.minyval=n.computedValueRange[0],n.maxyval=n.computedValueRange[1],n.yrange=n.maxyval-n.minyval,n.yscale=0!==n.yrange?1/n.yrange:1,(this.dygraph_.getOption("logscale")||n.logscale)&&(n.ylogrange=a["H"](n.maxyval)-a["H"](n.minyval),n.ylogscale=0!==n.ylogrange?1/n.ylogrange:1,isFinite(n.ylogrange)&&!isNaN(n.ylogrange)||console.error("axis "+i+" of graph at "+n.g+" can't be displayed in log scale for range ["+n.minyval+" - "+n.maxyval+"]"))}},n.calcXNormal_=function(t,e,i){return i?(a["H"](t)-a["H"](e.minval))*e.xlogscale:(t-e.minval)*e.scale},n.calcYNormal_=function(t,e,i){if(i){var n=1-(a["H"](e)-a["H"](t.minyval))*t.ylogscale;return isFinite(n)?n:NaN}return 1-(e-t.minyval)*t.yscale},n.prototype._evaluateLineCharts=function(){for(var t=this.dygraph_.getOption("stackedGraph"),e=this.dygraph_.getOptionForAxis("logscale","x"),i=0;i<this.points.length;i++){for(var a=this.points[i],r=this.setNames[i],o=this.dygraph_.getOption("connectSeparatedPoints",r),s=this.dygraph_.axisPropertiesForSeries(r),l=this.dygraph_.attributes_.getForSeries("logscale",r),h=0;h<a.length;h++){var u=a[h];u.x=n.calcXNormal_(u.xval,this._xAxis,e);var c=u.yval;t&&(u.y_stacked=n.calcYNormal_(s,u.yval_stacked,l),null===c||isNaN(c)||(c=u.yval_stacked)),null===c&&(c=NaN,o||(u.yval=NaN)),u.y=n.calcYNormal_(s,c,l)}this.dygraph_.dataHandler_.onLineEvaluated(a,s,l)}},n.prototype._evaluateLineTicks=function(){var t,e,i,a,n,r;for(this.xticks=[],t=0;t<this.xTicks_.length;t++)e=this.xTicks_[t],i=e.label,r=!("label_v"in e),n=r?e.v:e.label_v,a=this.dygraph_.toPercentXCoord(n),a>=0&&a<1&&this.xticks.push({pos:a,label:i,has_tick:r});for(this.yticks=[],t=0;t<this.yAxes_.length;t++)for(var o=this.yAxes_[t],s=0;s<o.ticks.length;s++)e=o.ticks[s],i=e.label,r=!("label_v"in e),n=r?e.v:e.label_v,a=this.dygraph_.toPercentYCoord(n,t),a>0&&a<=1&&this.yticks.push({axis:t,pos:a,label:i,has_tick:r})},n.prototype._evaluateAnnotations=function(){var t,e={};for(t=0;t<this.annotations.length;t++){var i=this.annotations[t];e[i.xval+","+i.series]=i}if(this.annotated_points=[],this.annotations&&this.annotations.length)for(var a=0;a<this.points.length;a++){var n=this.points[a];for(t=0;t<n.length;t++){var r=n[t],o=r.xval+","+r.name;o in e&&(r.annotation=e[o],this.annotated_points.push(r),delete e[o])}}},n.prototype.removeAllDatasets=function(){delete this.points,delete this.setNames,delete this.setPointsLengths,delete this.setPointsOffsets,this.points=[],this.setNames=[],this.setPointsLengths=[],this.setPointsOffsets=[]},e["a"]=n},fc5c:function(t,e,i){"use strict";var a=i("bde9");function n(){this.tarps=[]}n.prototype.cover=function(){for(var t=document.getElementsByTagName("iframe"),e=0;e<t.length;e++){var i=t[e],n=a["v"](i),r=n.x,o=n.y,s=i.offsetWidth,l=i.offsetHeight,h=document.createElement("div");h.style.position="absolute",h.style.left=r+"px",h.style.top=o+"px",h.style.width=s+"px",h.style.height=l+"px",h.style.zIndex=999,document.body.appendChild(h),this.tarps.push(h)}},n.prototype.uncover=function(){for(var t=0;t<this.tarps.length;t++)this.tarps[t].parentNode.removeChild(this.tarps[t]);this.tarps=[]},e["a"]=n}}]);