{"version":3,"sources":["global.js","dateoverride.js","Polyfills.js","jquery.validate.min.js","jquery.validate.unobtrusive.min.js","jquery.unobtrusive-ajax.min.js","modernizr-Winston-3.3.1.js","Chart.min.js","jquery.ajax.extensions.js","ajaxForms.js","preventDoubleClick.js","errorModal.js","bsmodalfixer.js","lifeEventModal.js","bstooltips.js","toast.js","dashboardMobileMenuModule.js","inPageSubNavigation.js","is-valid-email.js","contactUsModal.js","namespace.js","Boolean.js","Cookie.js","PhoneNumber.js","installerPrompt.js"],"names":["_typeof","obj","Symbol","iterator","constructor","prototype","dateTimeOffSet","_Date","date","Date","apply","this","arguments","d","length","setDate","getDate","toString","parse","now","UTC","nowOffset","window","performance","getTime","timing","navigationStart","String","padStart","targetLength","padString","Array","map","join","slice","a","define","amd","module","exports","require","jQuery","extend","fn","validate","b","c","data","attr","validator","settings","onsubmit","on","submitHandler","submitButton","target","hasClass","cancelSubmit","e","name","val","appendTo","currentForm","call","remove","debug","preventDefault","form","pendingRequest","formSubmitted","focusInvalid","console","warn","valid","is","each","element","concat","errorList","rules","f","h","i","j","staticRules","normalizeRule","messages","split","removeAttr","g","normalizeRules","classRules","attributeRules","dataRules","required","remote","expr","blank","trim","filled","unchecked","prop","defaults","init","format","makeArray","unshift","replace","RegExp","groups","errorClass","pendingClass","validClass","errorElement","focusCleanup","errorContainer","errorLabelContainer","ignore","ignoreTitle","onfocusin","lastActive","unhighlight","hideThese","errorsFor","onfocusout","checkable","submitted","optional","onkeyup","which","elementValue","inArray","keyCode","invalid","onclick","parentNode","highlight","type","findByName","addClass","removeClass","setDefaults","email","url","dateISO","number","digits","equalTo","maxlength","minlength","rangelength","range","max","min","step","autoCreateRanges","labelContainer","errorContext","containers","add","valueCache","pending","reset","invalidHandler","find","checkForm","errorMap","triggerHandler","showErrors","prepareForm","currentElements","elements","check","clean","validationTargetFor","prepareElement","push","numberOfInvalids","toHide","message","successList","grep","defaultShowErrors","resetForm","hideErrors","removeData","resetElements","objectLength","not","text","addWrapper","hide","size","findLastActive","filter","focus","trigger","error","hasAttribute","closest","errors","resetInternals","toShow","validity","badInput","substr","lastIndexOf","normalizer","TypeError","method","parameters","methods","formatAndAdd","log","id","customDataMessage","charAt","toUpperCase","substring","toLowerCase","customMessage","findDefined","defaultMessage","title","test","wrapper","parent","showLabel","success","validElements","show","invalidElements","idOrName","html","wrap","append","errorPlacement","insertAfter","parents","escapeCssMeta","match","getLength","nodeName","depend","dependTypes","boolean","string","function","startRequest","stopRequest","submit","previousValue","old","destroy","off","classRuleSettings","creditcard","addClassRules","normalizeAttributeRule","Number","isNaN","getAttribute","param","depends","isFunction","isArray","addMethod","Error","originalMessage","ajax","mode","port","dataType","context","ajaxPrefilter","abort","ajaxSettings","indexOf","n","proxy","unobtrusive","options","parseJSON","empty","attachValidation","adapters","parseElement","undefined","params","adapt","__dummy__","addBack","has","addBool","addMinMax","addSingleVal","exec","index","extension","other","tagName","additionalfields","nonalphamin","regex","document","shift","Function","k","confirm","parseInt","cache","beforeSend","setRequestHeader","complete","getResponseHeader","firstChild","contents","insertBefore","appendChild","replaceWith","value","href","offset","Math","round","pageX","left","pageY","top","setTimeout","currentTarget","action","serializeArray","classes","tests","ModernizrProto","_version","_config","classPrefix","enableClasses","enableJSClass","usePrefixes","_q","cb","self","addTest","addAsyncTest","Modernizr","docElement","documentElement","isSVG","cssToDOM","str","m1","m2","omPrefixes","cssomPrefixes","atRule","rule","prefixes","cssrule","CSSRule","prefix","_cssomPrefixes","domPrefixes","createElement","createElementNS","testDOMProps","props","elem","item","that","fnBind","_domPrefixes","modElem","mStyle","style","domToCSS","injectElementWithStyles","callback","nodes","testnames","node","docOverflow","body","mod","div","fake","styleSheet","cssText","createTextNode","background","overflow","ret","removeChild","offsetHeight","testProps","prefixed","skipValueTest","result","CSS","supports","conditionText","getComputedStyle","position","nativeTestProps","afterInit","propsLength","before","elems","cleanElems","testPropsAll","ucProp","testAllProps","className","featureNames","feature","aliasIdx","nameIdx","featureNameSplit","featureIdx","hasOwnProperty","aliases","Boolean","testRunner","baseVal","reJS","t","global","Chart","r","s","l","o","u","code","1","2","parseFloat","y","p","x","getRgba","getHsla","getRgb","getHsl","getHwb","getAlpha","hexString","rgbString","rgbaString","percentString","percentaString","hslString","hslaString","hwbString","keyword","S","6","3","values","rgb","hsl","hsv","hwb","cmyk","alpha","setValues","red","lightness","v","w","whiteness","cyan","JSON","stringify","setSpace","rgbArray","hslArray","hsvArray","hwbArray","cmykArray","rgbaArray","hslaArray","setChannel","green","blue","hue","saturation","saturationv","blackness","magenta","yellow","black","rgbNumber","luminosity","pow","contrast","level","dark","light","negate","lighten","darken","saturate","desaturate","whiten","blacken","greyscale","clearer","opaquer","rotate","mix","toJSON","clone","spaces","maxes","getValues","Color","5","4","Z","floor","T","R","O","B","z","atan2","PI","sqrt","W","N","cos","sin","G","rgb2hsl","rgb2hsv","rgb2hwb","rgb2cmyk","rgb2keyword","rgb2xyz","rgb2lab","rgb2lch","hsl2rgb","hsl2hsv","hsl2hwb","hsl2cmyk","hsl2keyword","hsv2rgb","hsv2hsl","hsv2hwb","hsv2cmyk","hsv2keyword","hwb2rgb","hwb2hsl","hwb2hsv","hwb2cmyk","hwb2keyword","cmyk2rgb","cmyk2hsl","cmyk2hsv","cmyk2hwb","cmyk2keyword","keyword2rgb","keyword2hsl","keyword2hsv","keyword2hwb","keyword2cmyk","keyword2lab","keyword2xyz","xyz2rgb","xyz2lab","xyz2lch","lab2xyz","lab2rgb","lab2lch","lch2lab","lch2xyz","lch2rgb","Q","aliceblue","antiquewhite","aqua","aquamarine","azure","beige","bisque","blanchedalmond","blueviolet","brown","burlywood","cadetblue","chartreuse","chocolate","coral","cornflowerblue","cornsilk","crimson","darkblue","darkcyan","darkgoldenrod","darkgray","darkgreen","darkgrey","darkkhaki","darkmagenta","darkolivegreen","darkorange","darkorchid","darkred","darksalmon","darkseagreen","darkslateblue","darkslategray","darkslategrey","darkturquoise","darkviolet","deeppink","deepskyblue","dimgray","dimgrey","dodgerblue","firebrick","floralwhite","forestgreen","fuchsia","gainsboro","ghostwhite","gold","goldenrod","gray","greenyellow","grey","honeydew","hotpink","indianred","indigo","ivory","khaki","lavender","lavenderblush","lawngreen","lemonchiffon","lightblue","lightcoral","lightcyan","lightgoldenrodyellow","lightgray","lightgreen","lightgrey","lightpink","lightsalmon","lightseagreen","lightskyblue","lightslategray","lightslategrey","lightsteelblue","lightyellow","lime","limegreen","linen","maroon","mediumaquamarine","mediumblue","mediumorchid","mediumpurple","mediumseagreen","mediumslateblue","mediumspringgreen","mediumturquoise","mediumvioletred","midnightblue","mintcream","mistyrose","moccasin","navajowhite","navy","oldlace","olive","olivedrab","orange","orangered","orchid","palegoldenrod","palegreen","paleturquoise","palevioletred","papayawhip","peachpuff","peru","pink","plum","powderblue","purple","rebeccapurple","rosybrown","royalblue","saddlebrown","salmon","sandybrown","seagreen","seashell","sienna","silver","skyblue","slateblue","slategray","slategrey","snow","springgreen","steelblue","tan","teal","thistle","tomato","turquoise","violet","wheat","white","whitesmoke","yellowgreen","convs","routeSpace","space","forEach","7","10","11","12","13","14","15","16","17","18","19","20","21","22","23","24","25","26","27","28","29","30","31","32","33","34","35","36","37","38","39","40","42","43","44","45","46","47","48","8","9","Bar","Bubble","Doughnut","Line","PolarArea","Radar","scatter","hover","scales","xAxes","yAxes","tooltips","callbacks","label","xLabel","yLabel","controllers","line","Scatter","helpers","bar","categoryPercentage","barPercentage","gridLines","offsetGridLines","DatasetController","dataElementType","Rectangle","initialize","getMeta","getDataset","stack","getStackCount","getScaleForId","yAxisID","chart","datasets","getDatasetMeta","isDatasetVisible","stacked","update","updateElement","xAxisID","getBasePixel","rectangle","custom","_xScale","_yScale","_datasetIndex","_index","getRuler","_model","calculateBarX","calculateBarY","labels","datasetLabel","horizontal","base","calculateBarBase","width","calculateBarWidth","backgroundColor","getValueAtIndexOrDefault","borderSkipped","borderColor","borderWidth","pivot","getBaseValue","getPixelForValue","ticks","stackCount","tickWidth","categoryWidth","categorySpacing","fullBarWidth","barWidth","barSpacing","barThickness","getStackIndex","isCombo","draw","canvasHelpers","clipArea","ctx","chartArea","transition","unclipArea","setHoverStyle","hoverBackgroundColor","getHoverColor","hoverBorderColor","hoverBorderWidth","removeHoverStyle","horizontalBar","datasetIndex","height","calculateBarHeight","tickHeight","categoryHeight","fullBarHeight","barHeight","bubble","Point","point","getPixelForDecimal","NaN","radius","getRadius","hitRadius","skip","hoverRadius","doughnut","animation","animateRotate","animateScale","aspectRatio","legendCallback","legend","generateLabels","arc","fillStyle","strokeStyle","lineWidth","hidden","onClick","cutoutPercentage","rotation","circumference","pie","Arc","linkScales","noop","getRingIndex","m","M","C","right","bottom","getMaxBorderWidth","outerRadius","innerRadius","radiusLength","getVisibleDatasetCount","offsetX","offsetY","total","calculateTotal","calculateCircumference","startAngle","endAngle","abs","_chart","config","getValueOrDefault","showLine","showLines","spanGaps","datasetElementType","dataset","tension","lineTension","_scale","_children","borderCapStyle","borderDash","borderDashOffset","borderJoinStyle","fill","steppedLine","stepped","cubicInterpolationMode","scaleTop","scaleBottom","scaleZero","updateBezierControlPoints","getPointBackgroundColor","pointBackgroundColor","getPointBorderColor","pointBorderColor","getPointBorderWidth","pointBorderWidth","pointRadius","pointHitRadius","calculatePointY","pointStyle","getRightValue","splineCurveMonotone","splineCurve","previousItem","nextItem","controlPointPreviousX","previous","controlPointPreviousY","controlPointNextX","next","controlPointNextY","capBezierPoints","pointHoverRadius","pointHoverBackgroundColor","pointHoverBorderColor","pointHoverBorderWidth","polarArea","scale","lineArc","beginAtZero","count","countVisibleElements","xCenter","yCenter","getDistanceFromCenterForValue","radar","_loop","getBasePosition","getPointPositionForValue","duration","easing","onProgress","onComplete","Animation","Element","currentStep","numSteps","render","onAnimationProgress","onAnimationComplete","animationService","frameDuration","animations","dropFrames","request","addAnimation","animating","chartInstance","animationObject","requestAnimationFrame","cancelAnimation","findIndex","splice","requestAnimFrame","startDigest","drawPoint","beginPath","closePath","moveTo","lineTo","SQRT2","fillRect","strokeRect","drawRoundedRectangle","stroke","drawImage","save","rect","clip","restore","plugins","platform","types","instances","Controller","configMerge","acquireContext","canvas","uid","_bufferedRender","Object","defineProperty","get","notify","retinaScale","bindEvents","responsive","resize","ensureScalesHaveIDs","buildScales","initToolTip","clear","stop","maintainAspectRatio","getMaximumWidth","getMaximumHeight","onResize","responsiveAnimationDuration","dtype","isDefault","scaleService","getScaleConstructor","addScalesToLayout","buildOrUpdateControllers","controller","updateIndex","tooltip","_options","_data","buildOrUpdateElements","updateLayout","updateDatasets","_bufferedRequest","lazy","layoutService","easingEffects","boxes","drawDatasets","getElementAtEvent","Interaction","modes","single","getElementsAtEvent","intersect","getElementsAtXAxis","getElementsAtEventForMode","getDatasetAtEvent","_meta","generateLegend","unbindEvents","releaseContext","toBase64Image","toDataURL","Tooltip","_chartInstance","_listeners","eventHandler","events","addEventListener","removeEventListener","updateHoverStyle","handleEvent","animationDuration","active","onHover","arrayEquals","_chartjs","listeners","addElements","createMetaDataset","createMetaData","addElementAndReset","configurable","enumerable","resyncElements","insertElements","onDataPush","onDataPop","pop","onDataShift","onDataSplice","onDataUnshift","inherits","_view","_start","color","tooltipPosition","hasValue","isNumber","defaultView","POSITIVE_INFINITY","keys","scaleMerge","getScaleDefaults","where","findNextWhere","findPreviousWhere","__super__","isFinite","almostEquals","almostWhole","reduce","NEGATIVE_INFINITY","sign","log10","LN10","toRadians","toDegrees","getAngleFromPoint","angle","distance","distanceBetweenPoints","aliasPixel","EPSILON","model","deltaK","mK","niceNum","linear","easeInQuad","easeOutQuad","easeInOutQuad","easeInCubic","easeOutCubic","easeInOutCubic","easeInQuart","easeOutQuart","easeInOutQuart","easeInQuint","easeOutQuint","easeInOutQuint","easeInSine","easeOutSine","easeInOutSine","easeInExpo","easeOutExpo","easeInOutExpo","easeInCirc","easeOutCirc","easeInOutCirc","easeInElastic","asin","easeOutElastic","easeInOutElastic","easeInBack","easeOutBack","easeInOutBack","easeInBounce","easeOutBounce","easeInOutBounce","webkitRequestAnimationFrame","mozRequestAnimationFrame","oRequestAnimationFrame","msRequestAnimationFrame","getRelativePosition","originalEvent","srcElement","getBoundingClientRect","touches","clientX","clientY","getStyle","currentDevicePixelRatio","addEvent","attachEvent","removeEvent","detachEvent","getConstraintWidth","getConstraintHeight","clientWidth","clientHeight","currentStyle","getPropertyValue","devicePixelRatio","clearRect","fontString","longestText","garbageCollect","font","measureText","numberOfLabelLines","quadraticCurveTo","CanvasGradient","defaultColor","callCallback","CanvasPattern","inRange","getCenterPoint","x-axis","nearest","sort","getArea","inXRange","inYRange","defaultFontColor","defaultFontFamily","defaultFontSize","defaultFontStyle","addBox","removeBox","D","box","isHorizontal","F","A","V","fullWidth","minSize","I","E","P","_","L","layout","padding","getPadding","usePointStyle","boxWidth","Legend","display","reverse","lineCap","lineDash","lineDashOffset","lineJoin","legendHitBoxes","doughnutMode","beforeUpdate","maxWidth","maxHeight","margins","beforeSetDimensions","setDimensions","afterSetDimensions","beforeBuildLabels","buildLabels","afterBuildLabels","beforeFit","fit","afterFit","afterUpdate","paddingLeft","paddingTop","paddingRight","paddingBottom","legendItems","fontSize","fontStyle","fontFamily","lineWidths","textAlign","textBaseline","columnWidths","fontColor","setLineDash","fillText","register","beforeInit","afterEvent","_plugins","_cacheId","unregister","getAll","descriptors","plugin","pluginService","PluginBase","family","drawBorder","drawOnChartArea","drawTicks","tickMarkLength","zeroLineWidth","zeroLineColor","scaleLabel","labelString","minRotation","maxRotation","mirror","autoSkip","autoSkipPadding","labelOffset","Ticks","formatters","Scale","longestTextCache","beforeDataLimits","determineDataLimits","afterDataLimits","beforeBuildTicks","buildTicks","afterBuildTicks","beforeTickToLabelConversion","convertTicksToLabels","afterTickToLabelConversion","beforeCalculateTickRotation","calculateTickRotation","afterCalculateTickRotation","userCallback","getPixelForTick","labelRotation","isFullWidth","longestLabelWidth","handleMargins","isValid","getLabelForIndex","getValueForPixel","maxTicksLimit","zeroLineIndex","tx1","ty1","tx2","ty2","x1","y1","x2","y2","labelX","labelY","glWidth","glColor","glBorderDash","glBorderDashOffset","translate","constructors","registerScaleType","updateScaleDefaults","generators","stepSize","maxTicks","ceil","logarithmic","minNotZero","toFixed","toExponential","Title","titleBlock","xPadding","yPadding","xAlign","yAlign","bodyFontColor","_bodyFontFamily","bodyFontFamily","_bodyFontStyle","bodyFontStyle","_bodyAlign","bodyAlign","bodyFontSize","bodySpacing","titleFontColor","_titleFontFamily","titleFontFamily","_titleFontStyle","titleFontStyle","titleFontSize","_titleAlign","titleAlign","titleSpacing","titleMarginBottom","footerFontColor","_footerFontFamily","footerFontFamily","_footerFontStyle","footerFontStyle","footerFontSize","_footerAlign","footerAlign","footerSpacing","footerMarginTop","caretSize","cornerRadius","opacity","legendColorBackground","multiKeyBackground","displayColors","lines","after","beforeBody","afterBody","footer","enabled","beforeTitle","afterTitle","beforeLabel","labelColor","afterLabel","beforeFooter","afterFooter","getTitle","getBeforeBody","getBody","getAfterBody","getFooter","_active","caretX","caretY","positioners","_eventPosition","itemSort","caretPadding","labelColors","dataPoints","drawCaret","drawTitle","drawBody","drawFooter","drawBackground","_lastActive","average","inLabelRange","bezierCurveTo","41","native","ticking","resizer","tabIndex","contentWindow","touchstart","touchmove","touchend","pointerenter","pointerdown","pointermove","pointerup","pointerleave","pointerout","getElementById","HTMLCanvasElement","getContext","CanvasRenderingContext2D","initial","removeAttribute","setAttribute","proxies","getLabels","xLabels","yLabels","minIndex","maxIndex","LinearScaleBase","positiveValues","negativeValues","relativePoints","handleTickRangeOptions","getTickLimit","handleDirectionalChanges","start","end","ticksAsNumbers","suggestedMin","suggestedMax","fixedStepSize","tickValues","pointLabels","_pointLabelSizes","getPointPosition","getIndexAngle","setReductions","angleLines","animate","showLabelBackdrop","backdropColor","backdropPaddingY","backdropPaddingX","drawingArea","setCenterPoint","moment","units","steps","maxStep","getLabelMoment","labelMoments","getLabelDiff","labelDiffs","buildLabelDiffs","getMomentStartOf","time","unit","isoWeekday","startOf","tickUnit","parseTime","firstTick","lastTick","diff","unitScale","scaleSizeInUnits","displayFormat","displayFormats","unitStepSize","tickFormatFunction","minUnit","tooltipFormat","tickMoments","asSeconds","parser","getMonth","millisecond","second","minute","hour","day","week","month","quarter","year","$","opts","jqXHR","textStatus","errorthrown","showErrorModal","responseText","submitForm","submitButtonData","$form","serialize","lockForm","contentType","successCallback","func","findFunc","eval","unlockForm","funcName","pieces","newContext","bind","$this","stopPropagation","getClickGroupClass","hideErrorModal","el","getElementsByClassName","createRange","selectNodeContents","sel","getSelection","removeAllRanges","addRange","execCommand","failCount","modals","locked","lockWaitMillis","animationWaitMillis","onHidden","backdrops","onHide","setInterval","completedDate","completedType","checkTopOfLEModal","matchMedia","matches","css","checkEnableEnrollmentBtn","parsedDateSelected","todaysDate","enrollmentWindow","minDate","updateTheContinueButton","getParsedDateSelected","setHours","datepicker","isDisabled","ready","click","transactionType","hasMultipleLifeEvents","localStorage","removeItem","dateSelected","getFullYear","leDate","isMobile","containerName","selectedType","classNames","classList","leType","checkedCircle","selector","toast","$toast","dashboardMobileMenuModule","openMenu","toggle","mainLoadedMenuClicked","Init","menuItemID","bottomNavMenuButton","toggleClass","Titania","Functions","IsValidEmail","emailAddress","contactUsModalJS","initialized","checkTopOfContactModal","modal","contactFormViewModel","done","Models","Parse","Cookie","DoesCookieExist","cname","GetCookie","ca","decodeURIComponent","cookie","SetCookie","cvalue","path","PhoneNumber","Format","phone","_ua","navigator","userAgent","isIDevice","isAndroid","isSamsung","isFireFox","isOpera","isEdge","isKindleFire","isFireFoxForAndroid","isOperaForAndroid","isChromium","isInWebAppiOS","standalone","isInWebAppChrome","isMobileSafari","isStandalone","isiPad","maxTouchPoints","isiPhone","isCompatible","extract","iosVersion","major","minor","revision","srcAttribute","serviceWorker","then","registration","scope","err"],"mappings":"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","file":"global.js","sourcesContent":["\"use strict\";\n\n(function () {\n //dateTimeOffSet is set in the head of the layout page\n //so this should never actually happen.\n if (typeof dateTimeOffSet == 'undefined') {\n dateTimeOffSet = 0;\n }\n\n // handle to old date function.\n var date = Date;\n Date = function (_Date) {\n function Date() {\n return _Date.apply(this, arguments);\n }\n Date.toString = function () {\n return _Date.toString();\n };\n return Date;\n }(function () {\n var d = null;\n if (arguments.length == 0) {\n d = new date();\n d.setDate(d.getDate() + dateTimeOffSet);\n } else if (arguments.length == 1) d = new date(arguments[0]);else d = new date(arguments[0], arguments[1], arguments[2] || 0, arguments[3] || 0, arguments[4] || 0, arguments[5] || 0, arguments[6] || 0);\n if (this instanceof Date) return d;\n return d.toString();\n });\n Date.prototype = date.prototype;\n Date.prototype.constructor = Date;\n Date.parse = function () {\n return date.parse.apply(date, arguments);\n };\n Date.now = function () {\n return date.now() + dateTimeOffSet * 24 * 60 * 60 * 1000;\n };\n Date.UTC = function () {\n return date.UTC.apply(date, arguments);\n };\n})();\n\"use strict\";\n\n// @license http://opensource.org/licenses/MIT\n// copyright Paul Irish 2015\n\n// Date.now() is supported everywhere except IE8. For IE8 we use the Date.now polyfill\n// github.com/Financial-Times/polyfill-service/blob/master/polyfills/Date.now/polyfill.js\n// as Safari 6 doesn't have support for NavigationTiming, we use a Date.now() timestamp for relative values\n\n// if you want values similar to what you'd get with real perf.now, place this towards the head of the page\n// but in reality, you're just getting the delta between now() calls, so it's not terribly important where it's placed\n\n(function () {\n if (\"performance\" in window === false) {\n window.performance = {};\n }\n Date.now = Date.now || function () {\n // thanks IE8\n return new Date().getTime();\n };\n if (\"now\" in window.performance === false) {\n var nowOffset = Date.now();\n if (performance.timing && performance.timing.navigationStart) {\n nowOffset = performance.timing.navigationStart;\n }\n window.performance.now = function now() {\n return Date.now() - nowOffset;\n };\n }\n\n // Solution from https://stackoverflow.com/questions/51719553/padstart-not-working-in-ie11\n if (!String.prototype.padStart) {\n String.prototype.padStart = function padStart(targetLength, padString) {\n targetLength = targetLength >> 0; //truncate if number, or convert non-number to 0;\n padString = String(typeof padString !== 'undefined' ? padString : ' ');\n if (this.length >= targetLength) {\n return String(this);\n } else {\n targetLength = targetLength - this.length;\n if (targetLength > padString.length) {\n padString += Array.apply(null, Array(targetLength)).map(function () {\n return padString;\n }).join(\"\");\n }\n return padString.slice(0, targetLength) + String(this);\n }\n };\n }\n})();\n\"use strict\";\n\nfunction _typeof(obj) { \"@babel/helpers - typeof\"; return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }, _typeof(obj); }\n/*! jQuery Validation Plugin - v1.15.0 - 2/24/2016\r\n * http://jqueryvalidation.org/\r\n * Copyright (c) 2016 Jörn Zaefferer; Licensed MIT */\n!function (a) {\n \"function\" == typeof define && define.amd ? define([\"jquery\"], a) : \"object\" == (typeof module === \"undefined\" ? \"undefined\" : _typeof(module)) && module.exports ? module.exports = a(require(\"jquery\")) : a(jQuery);\n}(function (a) {\n a.extend(a.fn, {\n validate: function validate(b) {\n if (!this.length) return void (b && b.debug && window.console && console.warn(\"Nothing selected, can't validate, returning nothing.\"));\n var c = a.data(this[0], \"validator\");\n return c ? c : (this.attr(\"novalidate\", \"novalidate\"), c = new a.validator(b, this[0]), a.data(this[0], \"validator\", c), c.settings.onsubmit && (this.on(\"click.validate\", \":submit\", function (b) {\n c.settings.submitHandler && (c.submitButton = b.target), a(this).hasClass(\"cancel\") && (c.cancelSubmit = !0), void 0 !== a(this).attr(\"formnovalidate\") && (c.cancelSubmit = !0);\n }), this.on(\"submit.validate\", function (b) {\n function d() {\n var d, e;\n return c.settings.submitHandler ? (c.submitButton && (d = a(\"\").attr(\"name\", c.submitButton.name).val(a(c.submitButton).val()).appendTo(c.currentForm)), e = c.settings.submitHandler.call(c, c.currentForm, b), c.submitButton && d.remove(), void 0 !== e ? e : !1) : !0;\n }\n return c.settings.debug && b.preventDefault(), c.cancelSubmit ? (c.cancelSubmit = !1, d()) : c.form() ? c.pendingRequest ? (c.formSubmitted = !0, !1) : d() : (c.focusInvalid(), !1);\n })), c);\n },\n valid: function valid() {\n var b, c, d;\n return a(this[0]).is(\"form\") ? b = this.validate().form() : (d = [], b = !0, c = a(this[0].form).validate(), this.each(function () {\n b = c.element(this) && b, b || (d = d.concat(c.errorList));\n }), c.errorList = d), b;\n },\n rules: function rules(b, c) {\n if (this.length) {\n var d,\n e,\n f,\n g,\n h,\n i,\n j = this[0];\n if (b) switch (d = a.data(j.form, \"validator\").settings, e = d.rules, f = a.validator.staticRules(j), b) {\n case \"add\":\n a.extend(f, a.validator.normalizeRule(c)), delete f.messages, e[j.name] = f, c.messages && (d.messages[j.name] = a.extend(d.messages[j.name], c.messages));\n break;\n case \"remove\":\n return c ? (i = {}, a.each(c.split(/\\s/), function (b, c) {\n i[c] = f[c], delete f[c], \"required\" === c && a(j).removeAttr(\"aria-required\");\n }), i) : (delete e[j.name], f);\n }\n return g = a.validator.normalizeRules(a.extend({}, a.validator.classRules(j), a.validator.attributeRules(j), a.validator.dataRules(j), a.validator.staticRules(j)), j), g.required && (h = g.required, delete g.required, g = a.extend({\n required: h\n }, g), a(j).attr(\"aria-required\", \"true\")), g.remote && (h = g.remote, delete g.remote, g = a.extend(g, {\n remote: h\n })), g;\n }\n }\n }), a.extend(a.expr[\":\"], {\n blank: function blank(b) {\n return !a.trim(\"\" + a(b).val());\n },\n filled: function filled(b) {\n var c = a(b).val();\n return null !== c && !!a.trim(\"\" + c);\n },\n unchecked: function unchecked(b) {\n return !a(b).prop(\"checked\");\n }\n }), a.validator = function (b, c) {\n this.settings = a.extend(!0, {}, a.validator.defaults, b), this.currentForm = c, this.init();\n }, a.validator.format = function (b, c) {\n return 1 === arguments.length ? function () {\n var c = a.makeArray(arguments);\n return c.unshift(b), a.validator.format.apply(this, c);\n } : void 0 === c ? b : (arguments.length > 2 && c.constructor !== Array && (c = a.makeArray(arguments).slice(1)), c.constructor !== Array && (c = [c]), a.each(c, function (a, c) {\n b = b.replace(new RegExp(\"\\\\{\" + a + \"\\\\}\", \"g\"), function () {\n return c;\n });\n }), b);\n }, a.extend(a.validator, {\n defaults: {\n messages: {},\n groups: {},\n rules: {},\n errorClass: \"error\",\n pendingClass: \"pending\",\n validClass: \"valid\",\n errorElement: \"label\",\n focusCleanup: !1,\n focusInvalid: !0,\n errorContainer: a([]),\n errorLabelContainer: a([]),\n onsubmit: !0,\n ignore: \":hidden\",\n ignoreTitle: !1,\n onfocusin: function onfocusin(a) {\n this.lastActive = a, this.settings.focusCleanup && (this.settings.unhighlight && this.settings.unhighlight.call(this, a, this.settings.errorClass, this.settings.validClass), this.hideThese(this.errorsFor(a)));\n },\n onfocusout: function onfocusout(a) {\n this.checkable(a) || !(a.name in this.submitted) && this.optional(a) || this.element(a);\n },\n onkeyup: function onkeyup(b, c) {\n var d = [16, 17, 18, 20, 35, 36, 37, 38, 39, 40, 45, 144, 225];\n 9 === c.which && \"\" === this.elementValue(b) || -1 !== a.inArray(c.keyCode, d) || (b.name in this.submitted || b.name in this.invalid) && this.element(b);\n },\n onclick: function onclick(a) {\n a.name in this.submitted ? this.element(a) : a.parentNode.name in this.submitted && this.element(a.parentNode);\n },\n highlight: function highlight(b, c, d) {\n \"radio\" === b.type ? this.findByName(b.name).addClass(c).removeClass(d) : a(b).addClass(c).removeClass(d);\n },\n unhighlight: function unhighlight(b, c, d) {\n \"radio\" === b.type ? this.findByName(b.name).removeClass(c).addClass(d) : a(b).removeClass(c).addClass(d);\n }\n },\n setDefaults: function setDefaults(b) {\n a.extend(a.validator.defaults, b);\n },\n messages: {\n required: \"This field is required.\",\n remote: \"Please fix this field.\",\n email: \"Please enter a valid email address.\",\n url: \"Please enter a valid URL.\",\n date: \"Please enter a valid date.\",\n dateISO: \"Please enter a valid date ( ISO ).\",\n number: \"Please enter a valid number.\",\n digits: \"Please enter only digits.\",\n equalTo: \"Please enter the same value again.\",\n maxlength: a.validator.format(\"Please enter no more than {0} characters.\"),\n minlength: a.validator.format(\"Please enter at least {0} characters.\"),\n rangelength: a.validator.format(\"Please enter a value between {0} and {1} characters long.\"),\n range: a.validator.format(\"Please enter a value between {0} and {1}.\"),\n max: a.validator.format(\"Please enter a value less than or equal to {0}.\"),\n min: a.validator.format(\"Please enter a value greater than or equal to {0}.\"),\n step: a.validator.format(\"Please enter a multiple of {0}.\")\n },\n autoCreateRanges: !1,\n prototype: {\n init: function init() {\n function b(b) {\n var c = a.data(this.form, \"validator\"),\n d = \"on\" + b.type.replace(/^validate/, \"\"),\n e = c.settings;\n e[d] && !a(this).is(e.ignore) && e[d].call(c, this, b);\n }\n this.labelContainer = a(this.settings.errorLabelContainer), this.errorContext = this.labelContainer.length && this.labelContainer || a(this.currentForm), this.containers = a(this.settings.errorContainer).add(this.settings.errorLabelContainer), this.submitted = {}, this.valueCache = {}, this.pendingRequest = 0, this.pending = {}, this.invalid = {}, this.reset();\n var c,\n d = this.groups = {};\n a.each(this.settings.groups, function (b, c) {\n \"string\" == typeof c && (c = c.split(/\\s/)), a.each(c, function (a, c) {\n d[c] = b;\n });\n }), c = this.settings.rules, a.each(c, function (b, d) {\n c[b] = a.validator.normalizeRule(d);\n }), a(this.currentForm).on(\"focusin.validate focusout.validate keyup.validate\", \":text, [type='password'], [type='file'], select, textarea, [type='number'], [type='search'], [type='tel'], [type='url'], [type='email'], [type='datetime'], [type='date'], [type='month'], [type='week'], [type='time'], [type='datetime-local'], [type='range'], [type='color'], [type='radio'], [type='checkbox'], [contenteditable]\", b).on(\"click.validate\", \"select, option, [type='radio'], [type='checkbox']\", b), this.settings.invalidHandler && a(this.currentForm).on(\"invalid-form.validate\", this.settings.invalidHandler), a(this.currentForm).find(\"[required], [data-rule-required], .required\").attr(\"aria-required\", \"true\");\n },\n form: function form() {\n return this.checkForm(), a.extend(this.submitted, this.errorMap), this.invalid = a.extend({}, this.errorMap), this.valid() || a(this.currentForm).triggerHandler(\"invalid-form\", [this]), this.showErrors(), this.valid();\n },\n checkForm: function checkForm() {\n this.prepareForm();\n for (var a = 0, b = this.currentElements = this.elements(); b[a]; a++) this.check(b[a]);\n return this.valid();\n },\n element: function element(b) {\n var c,\n d,\n e = this.clean(b),\n f = this.validationTargetFor(e),\n g = this,\n h = !0;\n return void 0 === f ? delete this.invalid[e.name] : (this.prepareElement(f), this.currentElements = a(f), d = this.groups[f.name], d && a.each(this.groups, function (a, b) {\n b === d && a !== f.name && (e = g.validationTargetFor(g.clean(g.findByName(a))), e && e.name in g.invalid && (g.currentElements.push(e), h = h && g.check(e)));\n }), c = this.check(f) !== !1, h = h && c, c ? this.invalid[f.name] = !1 : this.invalid[f.name] = !0, this.numberOfInvalids() || (this.toHide = this.toHide.add(this.containers)), this.showErrors(), a(b).attr(\"aria-invalid\", !c)), h;\n },\n showErrors: function showErrors(b) {\n if (b) {\n var c = this;\n a.extend(this.errorMap, b), this.errorList = a.map(this.errorMap, function (a, b) {\n return {\n message: a,\n element: c.findByName(b)[0]\n };\n }), this.successList = a.grep(this.successList, function (a) {\n return !(a.name in b);\n });\n }\n this.settings.showErrors ? this.settings.showErrors.call(this, this.errorMap, this.errorList) : this.defaultShowErrors();\n },\n resetForm: function resetForm() {\n a.fn.resetForm && a(this.currentForm).resetForm(), this.invalid = {}, this.submitted = {}, this.prepareForm(), this.hideErrors();\n var b = this.elements().removeData(\"previousValue\").removeAttr(\"aria-invalid\");\n this.resetElements(b);\n },\n resetElements: function resetElements(a) {\n var b;\n if (this.settings.unhighlight) for (b = 0; a[b]; b++) this.settings.unhighlight.call(this, a[b], this.settings.errorClass, \"\"), this.findByName(a[b].name).removeClass(this.settings.validClass);else a.removeClass(this.settings.errorClass).removeClass(this.settings.validClass);\n },\n numberOfInvalids: function numberOfInvalids() {\n return this.objectLength(this.invalid);\n },\n objectLength: function objectLength(a) {\n var b,\n c = 0;\n for (b in a) a[b] && c++;\n return c;\n },\n hideErrors: function hideErrors() {\n this.hideThese(this.toHide);\n },\n hideThese: function hideThese(a) {\n a.not(this.containers).text(\"\"), this.addWrapper(a).hide();\n },\n valid: function valid() {\n return 0 === this.size();\n },\n size: function size() {\n return this.errorList.length;\n },\n focusInvalid: function focusInvalid() {\n if (this.settings.focusInvalid) try {\n a(this.findLastActive() || this.errorList.length && this.errorList[0].element || []).filter(\":visible\").focus().trigger(\"focusin\");\n } catch (b) {}\n },\n findLastActive: function findLastActive() {\n var b = this.lastActive;\n return b && 1 === a.grep(this.errorList, function (a) {\n return a.element.name === b.name;\n }).length && b;\n },\n elements: function elements() {\n var b = this,\n c = {};\n return a(this.currentForm).find(\"input, select, textarea, [contenteditable]\").not(\":submit, :reset, :image, :disabled\").not(this.settings.ignore).filter(function () {\n var d = this.name || a(this).attr(\"name\");\n return !d && b.settings.debug && window.console && console.error(\"%o has no name assigned\", this), this.hasAttribute(\"contenteditable\") && (this.form = a(this).closest(\"form\")[0]), d in c || !b.objectLength(a(this).rules()) ? !1 : (c[d] = !0, !0);\n });\n },\n clean: function clean(b) {\n return a(b)[0];\n },\n errors: function errors() {\n var b = this.settings.errorClass.split(\" \").join(\".\");\n return a(this.settings.errorElement + \".\" + b, this.errorContext);\n },\n resetInternals: function resetInternals() {\n this.successList = [], this.errorList = [], this.errorMap = {}, this.toShow = a([]), this.toHide = a([]);\n },\n reset: function reset() {\n this.resetInternals(), this.currentElements = a([]);\n },\n prepareForm: function prepareForm() {\n this.reset(), this.toHide = this.errors().add(this.containers);\n },\n prepareElement: function prepareElement(a) {\n this.reset(), this.toHide = this.errorsFor(a);\n },\n elementValue: function elementValue(b) {\n var c,\n d,\n e = a(b),\n f = b.type;\n return \"radio\" === f || \"checkbox\" === f ? this.findByName(b.name).filter(\":checked\").val() : \"number\" === f && \"undefined\" != typeof b.validity ? b.validity.badInput ? \"NaN\" : e.val() : (c = b.hasAttribute(\"contenteditable\") ? e.text() : e.val(), \"file\" === f ? \"C:\\\\fakepath\\\\\" === c.substr(0, 12) ? c.substr(12) : (d = c.lastIndexOf(\"/\"), d >= 0 ? c.substr(d + 1) : (d = c.lastIndexOf(\"\\\\\"), d >= 0 ? c.substr(d + 1) : c)) : \"string\" == typeof c ? c.replace(/\\r/g, \"\") : c);\n },\n check: function check(b) {\n b = this.validationTargetFor(this.clean(b));\n var c,\n d,\n e,\n f = a(b).rules(),\n g = a.map(f, function (a, b) {\n return b;\n }).length,\n h = !1,\n i = this.elementValue(b);\n if (\"function\" == typeof f.normalizer) {\n if (i = f.normalizer.call(b, i), \"string\" != typeof i) throw new TypeError(\"The normalizer should return a string value.\");\n delete f.normalizer;\n }\n for (d in f) {\n e = {\n method: d,\n parameters: f[d]\n };\n try {\n if (c = a.validator.methods[d].call(this, i, b, e.parameters), \"dependency-mismatch\" === c && 1 === g) {\n h = !0;\n continue;\n }\n if (h = !1, \"pending\" === c) return void (this.toHide = this.toHide.not(this.errorsFor(b)));\n if (!c) return this.formatAndAdd(b, e), !1;\n } catch (j) {\n throw this.settings.debug && window.console && console.log(\"Exception occurred when checking element \" + b.id + \", check the '\" + e.method + \"' method.\", j), j instanceof TypeError && (j.message += \". Exception occurred when checking element \" + b.id + \", check the '\" + e.method + \"' method.\"), j;\n }\n }\n if (!h) return this.objectLength(f) && this.successList.push(b), !0;\n },\n customDataMessage: function customDataMessage(b, c) {\n return a(b).data(\"msg\" + c.charAt(0).toUpperCase() + c.substring(1).toLowerCase()) || a(b).data(\"msg\");\n },\n customMessage: function customMessage(a, b) {\n var c = this.settings.messages[a];\n return c && (c.constructor === String ? c : c[b]);\n },\n findDefined: function findDefined() {\n for (var a = 0; a < arguments.length; a++) if (void 0 !== arguments[a]) return arguments[a];\n },\n defaultMessage: function defaultMessage(b, c) {\n var d = this.findDefined(this.customMessage(b.name, c.method), this.customDataMessage(b, c.method), !this.settings.ignoreTitle && b.title || void 0, a.validator.messages[c.method], \"Warning: No message defined for \" + b.name + \"\"),\n e = /\\$?\\{(\\d+)\\}/g;\n return \"function\" == typeof d ? d = d.call(this, c.parameters, b) : e.test(d) && (d = a.validator.format(d.replace(e, \"{$1}\"), c.parameters)), d;\n },\n formatAndAdd: function formatAndAdd(a, b) {\n var c = this.defaultMessage(a, b);\n this.errorList.push({\n message: c,\n element: a,\n method: b.method\n }), this.errorMap[a.name] = c, this.submitted[a.name] = c;\n },\n addWrapper: function addWrapper(a) {\n return this.settings.wrapper && (a = a.add(a.parent(this.settings.wrapper))), a;\n },\n defaultShowErrors: function defaultShowErrors() {\n var a, b, c;\n for (a = 0; this.errorList[a]; a++) c = this.errorList[a], this.settings.highlight && this.settings.highlight.call(this, c.element, this.settings.errorClass, this.settings.validClass), this.showLabel(c.element, c.message);\n if (this.errorList.length && (this.toShow = this.toShow.add(this.containers)), this.settings.success) for (a = 0; this.successList[a]; a++) this.showLabel(this.successList[a]);\n if (this.settings.unhighlight) for (a = 0, b = this.validElements(); b[a]; a++) this.settings.unhighlight.call(this, b[a], this.settings.errorClass, this.settings.validClass);\n this.toHide = this.toHide.not(this.toShow), this.hideErrors(), this.addWrapper(this.toShow).show();\n },\n validElements: function validElements() {\n return this.currentElements.not(this.invalidElements());\n },\n invalidElements: function invalidElements() {\n return a(this.errorList).map(function () {\n return this.element;\n });\n },\n showLabel: function showLabel(b, c) {\n var d,\n e,\n f,\n g,\n h = this.errorsFor(b),\n i = this.idOrName(b),\n j = a(b).attr(\"aria-describedby\");\n h.length ? (h.removeClass(this.settings.validClass).addClass(this.settings.errorClass), h.html(c)) : (h = a(\"<\" + this.settings.errorElement + \">\").attr(\"id\", i + \"-error\").addClass(this.settings.errorClass).html(c || \"\"), d = h, this.settings.wrapper && (d = h.hide().show().wrap(\"<\" + this.settings.wrapper + \"/>\").parent()), this.labelContainer.length ? this.labelContainer.append(d) : this.settings.errorPlacement ? this.settings.errorPlacement(d, a(b)) : d.insertAfter(b), h.is(\"label\") ? h.attr(\"for\", i) : 0 === h.parents(\"label[for='\" + this.escapeCssMeta(i) + \"']\").length && (f = h.attr(\"id\"), j ? j.match(new RegExp(\"\\\\b\" + this.escapeCssMeta(f) + \"\\\\b\")) || (j += \" \" + f) : j = f, a(b).attr(\"aria-describedby\", j), e = this.groups[b.name], e && (g = this, a.each(g.groups, function (b, c) {\n c === e && a(\"[name='\" + g.escapeCssMeta(b) + \"']\", g.currentForm).attr(\"aria-describedby\", h.attr(\"id\"));\n })))), !c && this.settings.success && (h.text(\"\"), \"string\" == typeof this.settings.success ? h.addClass(this.settings.success) : this.settings.success(h, b)), this.toShow = this.toShow.add(h);\n },\n errorsFor: function errorsFor(b) {\n var c = this.escapeCssMeta(this.idOrName(b)),\n d = a(b).attr(\"aria-describedby\"),\n e = \"label[for='\" + c + \"'], label[for='\" + c + \"'] *\";\n return d && (e = e + \", #\" + this.escapeCssMeta(d).replace(/\\s+/g, \", #\")), this.errors().filter(e);\n },\n escapeCssMeta: function escapeCssMeta(a) {\n return a.replace(/([\\\\!\"#$%&'()*+,./:;<=>?@\\[\\]^`{|}~])/g, \"\\\\$1\");\n },\n idOrName: function idOrName(a) {\n return this.groups[a.name] || (this.checkable(a) ? a.name : a.id || a.name);\n },\n validationTargetFor: function validationTargetFor(b) {\n return this.checkable(b) && (b = this.findByName(b.name)), a(b).not(this.settings.ignore)[0];\n },\n checkable: function checkable(a) {\n return /radio|checkbox/i.test(a.type);\n },\n findByName: function findByName(b) {\n return a(this.currentForm).find(\"[name='\" + this.escapeCssMeta(b) + \"']\");\n },\n getLength: function getLength(b, c) {\n switch (c.nodeName.toLowerCase()) {\n case \"select\":\n return a(\"option:selected\", c).length;\n case \"input\":\n if (this.checkable(c)) return this.findByName(c.name).filter(\":checked\").length;\n }\n return b.length;\n },\n depend: function depend(a, b) {\n return this.dependTypes[_typeof(a)] ? this.dependTypes[_typeof(a)](a, b) : !0;\n },\n dependTypes: {\n \"boolean\": function boolean(a) {\n return a;\n },\n string: function string(b, c) {\n return !!a(b, c.form).length;\n },\n \"function\": function _function(a, b) {\n return a(b);\n }\n },\n optional: function optional(b) {\n var c = this.elementValue(b);\n return !a.validator.methods.required.call(this, c, b) && \"dependency-mismatch\";\n },\n startRequest: function startRequest(b) {\n this.pending[b.name] || (this.pendingRequest++, a(b).addClass(this.settings.pendingClass), this.pending[b.name] = !0);\n },\n stopRequest: function stopRequest(b, c) {\n this.pendingRequest--, this.pendingRequest < 0 && (this.pendingRequest = 0), delete this.pending[b.name], a(b).removeClass(this.settings.pendingClass), c && 0 === this.pendingRequest && this.formSubmitted && this.form() ? (a(this.currentForm).submit(), this.formSubmitted = !1) : !c && 0 === this.pendingRequest && this.formSubmitted && (a(this.currentForm).triggerHandler(\"invalid-form\", [this]), this.formSubmitted = !1);\n },\n previousValue: function previousValue(b, c) {\n return a.data(b, \"previousValue\") || a.data(b, \"previousValue\", {\n old: null,\n valid: !0,\n message: this.defaultMessage(b, {\n method: c\n })\n });\n },\n destroy: function destroy() {\n this.resetForm(), a(this.currentForm).off(\".validate\").removeData(\"validator\").find(\".validate-equalTo-blur\").off(\".validate-equalTo\").removeClass(\"validate-equalTo-blur\");\n }\n },\n classRuleSettings: {\n required: {\n required: !0\n },\n email: {\n email: !0\n },\n url: {\n url: !0\n },\n date: {\n date: !0\n },\n dateISO: {\n dateISO: !0\n },\n number: {\n number: !0\n },\n digits: {\n digits: !0\n },\n creditcard: {\n creditcard: !0\n }\n },\n addClassRules: function addClassRules(b, c) {\n b.constructor === String ? this.classRuleSettings[b] = c : a.extend(this.classRuleSettings, b);\n },\n classRules: function classRules(b) {\n var c = {},\n d = a(b).attr(\"class\");\n return d && a.each(d.split(\" \"), function () {\n this in a.validator.classRuleSettings && a.extend(c, a.validator.classRuleSettings[this]);\n }), c;\n },\n normalizeAttributeRule: function normalizeAttributeRule(a, b, c, d) {\n /min|max|step/.test(c) && (null === b || /number|range|text/.test(b)) && (d = Number(d), isNaN(d) && (d = void 0)), d || 0 === d ? a[c] = d : b === c && \"range\" !== b && (a[c] = !0);\n },\n attributeRules: function attributeRules(b) {\n var c,\n d,\n e = {},\n f = a(b),\n g = b.getAttribute(\"type\");\n for (c in a.validator.methods) \"required\" === c ? (d = b.getAttribute(c), \"\" === d && (d = !0), d = !!d) : d = f.attr(c), this.normalizeAttributeRule(e, g, c, d);\n return e.maxlength && /-1|2147483647|524288/.test(e.maxlength) && delete e.maxlength, e;\n },\n dataRules: function dataRules(b) {\n var c,\n d,\n e = {},\n f = a(b),\n g = b.getAttribute(\"type\");\n for (c in a.validator.methods) d = f.data(\"rule\" + c.charAt(0).toUpperCase() + c.substring(1).toLowerCase()), this.normalizeAttributeRule(e, g, c, d);\n return e;\n },\n staticRules: function staticRules(b) {\n var c = {},\n d = a.data(b.form, \"validator\");\n return d.settings.rules && (c = a.validator.normalizeRule(d.settings.rules[b.name]) || {}), c;\n },\n normalizeRules: function normalizeRules(b, c) {\n return a.each(b, function (d, e) {\n if (e === !1) return void delete b[d];\n if (e.param || e.depends) {\n var f = !0;\n switch (_typeof(e.depends)) {\n case \"string\":\n f = !!a(e.depends, c.form).length;\n break;\n case \"function\":\n f = e.depends.call(c, c);\n }\n f ? b[d] = void 0 !== e.param ? e.param : !0 : (a.data(c.form, \"validator\").resetElements(a(c)), delete b[d]);\n }\n }), a.each(b, function (d, e) {\n b[d] = a.isFunction(e) && \"normalizer\" !== d ? e(c) : e;\n }), a.each([\"minlength\", \"maxlength\"], function () {\n b[this] && (b[this] = Number(b[this]));\n }), a.each([\"rangelength\", \"range\"], function () {\n var c;\n b[this] && (a.isArray(b[this]) ? b[this] = [Number(b[this][0]), Number(b[this][1])] : \"string\" == typeof b[this] && (c = b[this].replace(/[\\[\\]]/g, \"\").split(/[\\s,]+/), b[this] = [Number(c[0]), Number(c[1])]));\n }), a.validator.autoCreateRanges && (null != b.min && null != b.max && (b.range = [b.min, b.max], delete b.min, delete b.max), null != b.minlength && null != b.maxlength && (b.rangelength = [b.minlength, b.maxlength], delete b.minlength, delete b.maxlength)), b;\n },\n normalizeRule: function normalizeRule(b) {\n if (\"string\" == typeof b) {\n var c = {};\n a.each(b.split(/\\s/), function () {\n c[this] = !0;\n }), b = c;\n }\n return b;\n },\n addMethod: function addMethod(b, c, d) {\n a.validator.methods[b] = c, a.validator.messages[b] = void 0 !== d ? d : a.validator.messages[b], c.length < 3 && a.validator.addClassRules(b, a.validator.normalizeRule(b));\n },\n methods: {\n required: function required(b, c, d) {\n if (!this.depend(d, c)) return \"dependency-mismatch\";\n if (\"select\" === c.nodeName.toLowerCase()) {\n var e = a(c).val();\n return e && e.length > 0;\n }\n return this.checkable(c) ? this.getLength(b, c) > 0 : b.length > 0;\n },\n email: function email(a, b) {\n return this.optional(b) || /^[a-zA-Z0-9.!#$%&'*+\\/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/.test(a);\n },\n url: function url(a, b) {\n return this.optional(b) || /^(?:(?:(?:https?|ftp):)?\\/\\/)(?:\\S+(?::\\S*)?@)?(?:(?!(?:10|127)(?:\\.\\d{1,3}){3})(?!(?:169\\.254|192\\.168)(?:\\.\\d{1,3}){2})(?!172\\.(?:1[6-9]|2\\d|3[0-1])(?:\\.\\d{1,3}){2})(?:[1-9]\\d?|1\\d\\d|2[01]\\d|22[0-3])(?:\\.(?:1?\\d{1,2}|2[0-4]\\d|25[0-5])){2}(?:\\.(?:[1-9]\\d?|1\\d\\d|2[0-4]\\d|25[0-4]))|(?:(?:[a-z\\u00a1-\\uffff0-9]-*)*[a-z\\u00a1-\\uffff0-9]+)(?:\\.(?:[a-z\\u00a1-\\uffff0-9]-*)*[a-z\\u00a1-\\uffff0-9]+)*(?:\\.(?:[a-z\\u00a1-\\uffff]{2,})).?)(?::\\d{2,5})?(?:[/?#]\\S*)?$/i.test(a);\n },\n date: function date(a, b) {\n return this.optional(b) || !/Invalid|NaN/.test(new Date(a).toString());\n },\n dateISO: function dateISO(a, b) {\n return this.optional(b) || /^\\d{4}[\\/\\-](0?[1-9]|1[012])[\\/\\-](0?[1-9]|[12][0-9]|3[01])$/.test(a);\n },\n number: function number(a, b) {\n return this.optional(b) || /^(?:-?\\d+|-?\\d{1,3}(?:,\\d{3})+)?(?:\\.\\d+)?$/.test(a);\n },\n digits: function digits(a, b) {\n return this.optional(b) || /^\\d+$/.test(a);\n },\n minlength: function minlength(b, c, d) {\n var e = a.isArray(b) ? b.length : this.getLength(b, c);\n return this.optional(c) || e >= d;\n },\n maxlength: function maxlength(b, c, d) {\n var e = a.isArray(b) ? b.length : this.getLength(b, c);\n return this.optional(c) || d >= e;\n },\n rangelength: function rangelength(b, c, d) {\n var e = a.isArray(b) ? b.length : this.getLength(b, c);\n return this.optional(c) || e >= d[0] && e <= d[1];\n },\n min: function min(a, b, c) {\n return this.optional(b) || a >= c;\n },\n max: function max(a, b, c) {\n return this.optional(b) || c >= a;\n },\n range: function range(a, b, c) {\n return this.optional(b) || a >= c[0] && a <= c[1];\n },\n step: function step(b, c, d) {\n var e = a(c).attr(\"type\"),\n f = \"Step attribute on input type \" + e + \" is not supported.\",\n g = [\"text\", \"number\", \"range\"],\n h = new RegExp(\"\\\\b\" + e + \"\\\\b\"),\n i = e && !h.test(g.join());\n if (i) throw new Error(f);\n return this.optional(c) || b % d === 0;\n },\n equalTo: function equalTo(b, c, d) {\n var e = a(d);\n return this.settings.onfocusout && e.not(\".validate-equalTo-blur\").length && e.addClass(\"validate-equalTo-blur\").on(\"blur.validate-equalTo\", function () {\n a(c).valid();\n }), b === e.val();\n },\n remote: function remote(b, c, d, e) {\n if (this.optional(c)) return \"dependency-mismatch\";\n e = \"string\" == typeof e && e || \"remote\";\n var f,\n g,\n h,\n i = this.previousValue(c, e);\n return this.settings.messages[c.name] || (this.settings.messages[c.name] = {}), i.originalMessage = i.originalMessage || this.settings.messages[c.name][e], this.settings.messages[c.name][e] = i.message, d = \"string\" == typeof d && {\n url: d\n } || d, h = a.param(a.extend({\n data: b\n }, d.data)), i.old === h ? i.valid : (i.old = h, f = this, this.startRequest(c), g = {}, g[c.name] = b, a.ajax(a.extend(!0, {\n mode: \"abort\",\n port: \"validate\" + c.name,\n dataType: \"json\",\n data: g,\n context: f.currentForm,\n success: function success(a) {\n var d,\n g,\n h,\n j = a === !0 || \"true\" === a;\n f.settings.messages[c.name][e] = i.originalMessage, j ? (h = f.formSubmitted, f.resetInternals(), f.toHide = f.errorsFor(c), f.formSubmitted = h, f.successList.push(c), f.invalid[c.name] = !1, f.showErrors()) : (d = {}, g = a || f.defaultMessage(c, {\n method: e,\n parameters: b\n }), d[c.name] = i.message = g, f.invalid[c.name] = !0, f.showErrors(d)), i.valid = j, f.stopRequest(c, j);\n }\n }, d)), \"pending\");\n }\n }\n });\n var b,\n c = {};\n a.ajaxPrefilter ? a.ajaxPrefilter(function (a, b, d) {\n var e = a.port;\n \"abort\" === a.mode && (c[e] && c[e].abort(), c[e] = d);\n }) : (b = a.ajax, a.ajax = function (d) {\n var e = (\"mode\" in d ? d : a.ajaxSettings).mode,\n f = (\"port\" in d ? d : a.ajaxSettings).port;\n return \"abort\" === e ? (c[f] && c[f].abort(), c[f] = b.apply(this, arguments), c[f]) : b.apply(this, arguments);\n });\n});\n\"use strict\";\n\n/* NUGET: BEGIN LICENSE TEXT\r\n *\r\n * Microsoft grants you the right to use these script files for the sole\r\n * purpose of either: (i) interacting through your browser with the Microsoft\r\n * website or online service, subject to the applicable licensing or use\r\n * terms; or (ii) using the files as included with a Microsoft product subject\r\n * to that product's license terms. Microsoft reserves all other rights to the\r\n * files not expressly granted by Microsoft, whether by implication, estoppel\r\n * or otherwise. Insofar as a script file is dual licensed under GPL,\r\n * Microsoft neither took the code under GPL nor distributes it thereunder but\r\n * under the terms set out in this paragraph. All notices and licenses\r\n * below are for informational purposes only.\r\n *\r\n * NUGET: END LICENSE TEXT */\n/*\n** Unobtrusive validation support library for jQuery and jQuery Validate\n** Copyright (C) Microsoft Corporation. All rights reserved.\n*/\n(function (a) {\n var d = a.validator,\n b,\n e = \"unobtrusiveValidation\";\n function c(a, b, c) {\n a.rules[b] = c;\n if (a.message) a.messages[b] = a.message;\n }\n function j(a) {\n return a.replace(/^\\s+|\\s+$/g, \"\").split(/\\s*,\\s*/g);\n }\n function f(a) {\n return a.replace(/([!\"#$%&'()*+,./:;<=>?@\\[\\\\\\]^`{|}~])/g, \"\\\\$1\");\n }\n function h(a) {\n return a.substr(0, a.lastIndexOf(\".\") + 1);\n }\n function g(a, b) {\n if (a.indexOf(\"*.\") === 0) a = a.replace(\"*.\", b);\n return a;\n }\n function m(c, e) {\n var b = a(this).find(\"[data-valmsg-for='\" + f(e[0].name) + \"']\"),\n d = b.attr(\"data-valmsg-replace\"),\n g = d ? a.parseJSON(d) !== false : null;\n b.removeClass(\"field-validation-valid\").addClass(\"field-validation-error\");\n c.data(\"unobtrusiveContainer\", b);\n if (g) {\n b.empty();\n c.removeClass(\"input-validation-error\").appendTo(b);\n } else c.hide();\n }\n function l(e, d) {\n var c = a(this).find(\"[data-valmsg-summary=true]\"),\n b = c.find(\"ul\");\n if (b && b.length && d.errorList.length) {\n b.empty();\n c.addClass(\"validation-summary-errors\").removeClass(\"validation-summary-valid\");\n a.each(d.errorList, function () {\n a(\"
  • \").html(this.message).appendTo(b);\n });\n }\n }\n function k(d) {\n var b = d.data(\"unobtrusiveContainer\"),\n c = b.attr(\"data-valmsg-replace\"),\n e = c ? a.parseJSON(c) : null;\n if (b) {\n b.addClass(\"field-validation-valid\").removeClass(\"field-validation-error\");\n d.removeData(\"unobtrusiveContainer\");\n e && b.empty();\n }\n }\n function n() {\n var b = a(this),\n c = \"__jquery_unobtrusive_validation_form_reset\";\n if (b.data(c)) return;\n b.data(c, true);\n try {\n b.data(\"validator\").resetForm();\n } finally {\n b.removeData(c);\n }\n b.find(\".validation-summary-errors\").addClass(\"validation-summary-valid\").removeClass(\"validation-summary-errors\");\n b.find(\".field-validation-error\").addClass(\"field-validation-valid\").removeClass(\"field-validation-error\").removeData(\"unobtrusiveContainer\").find(\">*\").removeData(\"unobtrusiveContainer\");\n }\n function i(b) {\n var c = a(b),\n f = c.data(e),\n i = a.proxy(n, b),\n g = d.unobtrusive.options || {},\n h = function h(e, d) {\n var c = g[e];\n c && a.isFunction(c) && c.apply(b, d);\n };\n if (!f) {\n f = {\n options: {\n errorClass: g.errorClass || \"input-validation-error\",\n errorElement: g.errorElement || \"span\",\n errorPlacement: function errorPlacement() {\n m.apply(b, arguments);\n h(\"errorPlacement\", arguments);\n },\n invalidHandler: function invalidHandler() {\n l.apply(b, arguments);\n h(\"invalidHandler\", arguments);\n },\n messages: {},\n rules: {},\n success: function success() {\n k.apply(b, arguments);\n h(\"success\", arguments);\n }\n },\n attachValidation: function attachValidation() {\n c.off(\"reset.\" + e, i).on(\"reset.\" + e, i).validate(this.options);\n },\n validate: function validate() {\n c.validate();\n return c.valid();\n }\n };\n c.data(e, f);\n }\n return f;\n }\n d.unobtrusive = {\n adapters: [],\n parseElement: function parseElement(b, h) {\n var d = a(b),\n f = d.parents(\"form\")[0],\n c,\n e,\n g;\n if (!f) return;\n c = i(f);\n c.options.rules[b.name] = e = {};\n c.options.messages[b.name] = g = {};\n a.each(this.adapters, function () {\n var c = \"data-val-\" + this.name,\n i = d.attr(c),\n h = {};\n if (i !== undefined) {\n c += \"-\";\n a.each(this.params, function () {\n h[this] = d.attr(c + this);\n });\n this.adapt({\n element: b,\n form: f,\n message: i,\n params: h,\n rules: e,\n messages: g\n });\n }\n });\n a.extend(e, {\n __dummy__: true\n });\n !h && c.attachValidation();\n },\n parse: function parse(c) {\n var b = a(c),\n e = b.parents().addBack().filter(\"form\").add(b.find(\"form\")).has(\"[data-val=true]\");\n b.find(\"[data-val=true]\").each(function () {\n d.unobtrusive.parseElement(this, true);\n });\n e.each(function () {\n var a = i(this);\n a && a.attachValidation();\n });\n }\n };\n b = d.unobtrusive.adapters;\n b.add = function (c, a, b) {\n if (!b) {\n b = a;\n a = [];\n }\n this.push({\n name: c,\n params: a,\n adapt: b\n });\n return this;\n };\n b.addBool = function (a, b) {\n return this.add(a, function (d) {\n c(d, b || a, true);\n });\n };\n b.addMinMax = function (e, g, f, a, d, b) {\n return this.add(e, [d || \"min\", b || \"max\"], function (b) {\n var e = b.params.min,\n d = b.params.max;\n if (e && d) c(b, a, [e, d]);else if (e) c(b, g, e);else d && c(b, f, d);\n });\n };\n b.addSingleVal = function (a, b, d) {\n return this.add(a, [b || \"val\"], function (e) {\n c(e, d || a, e.params[b]);\n });\n };\n d.addMethod(\"__dummy__\", function () {\n return true;\n });\n d.addMethod(\"regex\", function (b, c, d) {\n var a;\n if (this.optional(c)) return true;\n a = new RegExp(d).exec(b);\n return a && a.index === 0 && a[0].length === b.length;\n });\n d.addMethod(\"nonalphamin\", function (c, d, b) {\n var a;\n if (b) {\n a = c.match(/\\W/g);\n a = a && a.length >= b;\n }\n return a;\n });\n if (d.methods.extension) {\n b.addSingleVal(\"accept\", \"mimtype\");\n b.addSingleVal(\"extension\", \"extension\");\n } else b.addSingleVal(\"extension\", \"extension\", \"accept\");\n b.addSingleVal(\"regex\", \"pattern\");\n b.addBool(\"creditcard\").addBool(\"date\").addBool(\"digits\").addBool(\"email\").addBool(\"number\").addBool(\"url\");\n b.addMinMax(\"length\", \"minlength\", \"maxlength\", \"rangelength\").addMinMax(\"range\", \"min\", \"max\", \"range\");\n b.addMinMax(\"minlength\", \"minlength\").addMinMax(\"maxlength\", \"minlength\", \"maxlength\");\n b.add(\"equalto\", [\"other\"], function (b) {\n var i = h(b.element.name),\n j = b.params.other,\n d = g(j, i),\n e = a(b.form).find(\":input\").filter(\"[name='\" + f(d) + \"']\")[0];\n c(b, \"equalTo\", e);\n });\n b.add(\"required\", function (a) {\n (a.element.tagName.toUpperCase() !== \"INPUT\" || a.element.type.toUpperCase() !== \"CHECKBOX\") && c(a, \"required\", true);\n });\n b.add(\"remote\", [\"url\", \"type\", \"additionalfields\"], function (b) {\n var d = {\n url: b.params.url,\n type: b.params.type || \"GET\",\n data: {}\n },\n e = h(b.element.name);\n a.each(j(b.params.additionalfields || b.element.name), function (i, h) {\n var c = g(h, e);\n d.data[c] = function () {\n var d = a(b.form).find(\":input\").filter(\"[name='\" + f(c) + \"']\");\n return d.is(\":checkbox\") ? d.filter(\":checked\").val() || d.filter(\":hidden\").val() || \"\" : d.is(\":radio\") ? d.filter(\":checked\").val() || \"\" : d.val();\n };\n });\n c(b, \"remote\", d);\n });\n b.add(\"password\", [\"min\", \"nonalphamin\", \"regex\"], function (a) {\n a.params.min && c(a, \"minlength\", a.params.min);\n a.params.nonalphamin && c(a, \"nonalphamin\", a.params.nonalphamin);\n a.params.regex && c(a, \"regex\", a.params.regex);\n });\n a(function () {\n d.unobtrusive.parse(document);\n });\n})(jQuery);\n\"use strict\";\n\n/* NUGET: BEGIN LICENSE TEXT\r\n *\r\n * Microsoft grants you the right to use these script files for the sole\r\n * purpose of either: (i) interacting through your browser with the Microsoft\r\n * website or online service, subject to the applicable licensing or use\r\n * terms; or (ii) using the files as included with a Microsoft product subject\r\n * to that product's license terms. Microsoft reserves all other rights to the\r\n * files not expressly granted by Microsoft, whether by implication, estoppel\r\n * or otherwise. Insofar as a script file is dual licensed under GPL,\r\n * Microsoft neither took the code under GPL nor distributes it thereunder but\r\n * under the terms set out in this paragraph. All notices and licenses\r\n * below are for informational purposes only.\r\n *\r\n * NUGET: END LICENSE TEXT */\n/*\n** Unobtrusive Ajax support library for jQuery\n** Copyright (C) Microsoft Corporation. All rights reserved.\n*/\n(function (a) {\n var b = \"unobtrusiveAjaxClick\",\n d = \"unobtrusiveAjaxClickTarget\",\n h = \"unobtrusiveValidation\";\n function c(d, b) {\n var a = window,\n c = (d || \"\").split(\".\");\n while (a && c.length) a = a[c.shift()];\n if (typeof a === \"function\") return a;\n b.push(d);\n return Function.constructor.apply(null, b);\n }\n function e(a) {\n return a === \"GET\" || a === \"POST\";\n }\n function g(b, a) {\n !e(a) && b.setRequestHeader(\"X-HTTP-Method-Override\", a);\n }\n function i(c, b, e) {\n var d;\n if (e.indexOf(\"application/x-javascript\") !== -1) return;\n d = (c.getAttribute(\"data-ajax-mode\") || \"\").toUpperCase();\n a(c.getAttribute(\"data-ajax-update\")).each(function (f, c) {\n var e;\n switch (d) {\n case \"BEFORE\":\n e = c.firstChild;\n a(\"
    \").html(b).contents().each(function () {\n c.insertBefore(this, e);\n });\n break;\n case \"AFTER\":\n a(\"
    \").html(b).contents().each(function () {\n c.appendChild(this);\n });\n break;\n case \"REPLACE-WITH\":\n a(c).replaceWith(b);\n break;\n default:\n a(c).html(b);\n }\n });\n }\n function f(b, d) {\n var j, k, f, h;\n j = b.getAttribute(\"data-ajax-confirm\");\n if (j && !window.confirm(j)) return;\n k = a(b.getAttribute(\"data-ajax-loading\"));\n h = parseInt(b.getAttribute(\"data-ajax-loading-duration\"), 10) || 0;\n a.extend(d, {\n type: b.getAttribute(\"data-ajax-method\") || undefined,\n url: b.getAttribute(\"data-ajax-url\") || undefined,\n cache: !!b.getAttribute(\"data-ajax-cache\"),\n beforeSend: function beforeSend(d) {\n var a;\n g(d, f);\n a = c(b.getAttribute(\"data-ajax-begin\"), [\"xhr\"]).apply(b, arguments);\n a !== false && k.show(h);\n return a;\n },\n complete: function complete() {\n k.hide(h);\n c(b.getAttribute(\"data-ajax-complete\"), [\"xhr\", \"status\"]).apply(b, arguments);\n },\n success: function success(a, e, d) {\n i(b, a, d.getResponseHeader(\"Content-Type\") || \"text/html\");\n c(b.getAttribute(\"data-ajax-success\"), [\"data\", \"status\", \"xhr\"]).apply(b, arguments);\n },\n error: function error() {\n c(b.getAttribute(\"data-ajax-failure\"), [\"xhr\", \"status\", \"error\"]).apply(b, arguments);\n }\n });\n d.data.push({\n name: \"X-Requested-With\",\n value: \"XMLHttpRequest\"\n });\n f = d.type.toUpperCase();\n if (!e(f)) {\n d.type = \"POST\";\n d.data.push({\n name: \"X-HTTP-Method-Override\",\n value: f\n });\n }\n a.ajax(d);\n }\n function j(c) {\n var b = a(c).data(h);\n return !b || !b.validate || b.validate();\n }\n a(document).on(\"click\", \"a[data-ajax=true]\", function (a) {\n a.preventDefault();\n f(this, {\n url: this.href,\n type: \"GET\",\n data: []\n });\n });\n a(document).on(\"click\", \"form[data-ajax=true] input[type=image]\", function (c) {\n var g = c.target.name,\n e = a(c.target),\n f = a(e.parents(\"form\")[0]),\n d = e.offset();\n f.data(b, [{\n name: g + \".x\",\n value: Math.round(c.pageX - d.left)\n }, {\n name: g + \".y\",\n value: Math.round(c.pageY - d.top)\n }]);\n setTimeout(function () {\n f.removeData(b);\n }, 0);\n });\n a(document).on(\"click\", \"form[data-ajax=true] :submit\", function (e) {\n var g = e.currentTarget.name,\n f = a(e.target),\n c = a(f.parents(\"form\")[0]);\n c.data(b, g ? [{\n name: g,\n value: e.currentTarget.value\n }] : []);\n c.data(d, f);\n setTimeout(function () {\n c.removeData(b);\n c.removeData(d);\n }, 0);\n });\n a(document).on(\"submit\", \"form[data-ajax=true]\", function (h) {\n var e = a(this).data(b) || [],\n c = a(this).data(d),\n g = c && c.hasClass(\"cancel\");\n h.preventDefault();\n if (!g && !j(this)) return;\n f(this, {\n url: this.action,\n type: this.method || \"GET\",\n data: e.concat(a(this).serializeArray())\n });\n });\n})(jQuery);\n\"use strict\";\n\nfunction _typeof(obj) { \"@babel/helpers - typeof\"; return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }, _typeof(obj); }\n/*!\r\n * modernizr v3.3.1\r\n * Build https://modernizr.com/download?-performance-setclasses-dontmin\r\n *\r\n * Copyright (c)\r\n * Faruk Ates\r\n * Paul Irish\r\n * Alex Sexton\r\n * Ryan Seddon\r\n * Patrick Kettner\r\n * Stu Cox\r\n * Richard Herrera\r\n\r\n * MIT License\r\n */\n\n/*\r\n * Modernizr tests which native CSS3 and HTML5 features are available in the\r\n * current UA and makes the results available to you in two ways: as properties on\r\n * a global `Modernizr` object, and as classes on the `` element. This\r\n * information allows you to progressively enhance your pages with a granular level\r\n * of control over the experience.\r\n*/\n\n;\n(function (window, document, undefined) {\n var classes = [];\n var tests = [];\n\n /**\r\n *\r\n * ModernizrProto is the constructor for Modernizr\r\n *\r\n * @class\r\n * @access public\r\n */\n\n var ModernizrProto = {\n // The current version, dummy\n _version: '3.3.1',\n // Any settings that don't work as separate modules\n // can go in here as configuration.\n _config: {\n 'classPrefix': '',\n 'enableClasses': true,\n 'enableJSClass': true,\n 'usePrefixes': true\n },\n // Queue of tests\n _q: [],\n // Stub these for people who are listening\n on: function on(test, cb) {\n // I don't really think people should do this, but we can\n // safe guard it a bit.\n // -- NOTE:: this gets WAY overridden in src/addTest for actual async tests.\n // This is in case people listen to synchronous tests. I would leave it out,\n // but the code to *disallow* sync tests in the real version of this\n // function is actually larger than this.\n var self = this;\n setTimeout(function () {\n cb(self[test]);\n }, 0);\n },\n addTest: function addTest(name, fn, options) {\n tests.push({\n name: name,\n fn: fn,\n options: options\n });\n },\n addAsyncTest: function addAsyncTest(fn) {\n tests.push({\n name: null,\n fn: fn\n });\n }\n };\n\n // Fake some of Object.create so we can force non test results to be non \"own\" properties.\n var Modernizr = function Modernizr() {};\n Modernizr.prototype = ModernizrProto;\n\n // Leak modernizr globally when you `require` it rather than force it here.\n // Overwrite name so constructor name is nicer :D\n Modernizr = new Modernizr();\n\n /**\r\n * is returns a boolean if the typeof an obj is exactly type.\r\n *\r\n * @access private\r\n * @function is\r\n * @param {*} obj - A thing we want to check the type of\r\n * @param {string} type - A string to compare the typeof against\r\n * @returns {boolean}\r\n */\n\n function is(obj, type) {\n return _typeof(obj) === type;\n }\n ;\n\n /**\r\n * Run through all tests and detect their support in the current UA.\r\n *\r\n * @access private\r\n */\n\n function testRunner() {\n var featureNames;\n var feature;\n var aliasIdx;\n var result;\n var nameIdx;\n var featureName;\n var featureNameSplit;\n for (var featureIdx in tests) {\n if (tests.hasOwnProperty(featureIdx)) {\n featureNames = [];\n feature = tests[featureIdx];\n // run the test, throw the return value into the Modernizr,\n // then based on that boolean, define an appropriate className\n // and push it into an array of classes we'll join later.\n //\n // If there is no name, it's an 'async' test that is run,\n // but not directly added to the object. That should\n // be done with a post-run addTest call.\n if (feature.name) {\n featureNames.push(feature.name.toLowerCase());\n if (feature.options && feature.options.aliases && feature.options.aliases.length) {\n // Add all the aliases into the names list\n for (aliasIdx = 0; aliasIdx < feature.options.aliases.length; aliasIdx++) {\n featureNames.push(feature.options.aliases[aliasIdx].toLowerCase());\n }\n }\n }\n\n // Run the test, or use the raw value if it's not a function\n result = is(feature.fn, 'function') ? feature.fn() : feature.fn;\n\n // Set each of the names on the Modernizr object\n for (nameIdx = 0; nameIdx < featureNames.length; nameIdx++) {\n featureName = featureNames[nameIdx];\n // Support dot properties as sub tests. We don't do checking to make sure\n // that the implied parent tests have been added. You must call them in\n // order (either in the test, or make the parent test a dependency).\n //\n // Cap it to TWO to make the logic simple and because who needs that kind of subtesting\n // hashtag famous last words\n featureNameSplit = featureName.split('.');\n if (featureNameSplit.length === 1) {\n Modernizr[featureNameSplit[0]] = result;\n } else {\n // cast to a Boolean, if not one already\n /* jshint -W053 */\n if (Modernizr[featureNameSplit[0]] && !(Modernizr[featureNameSplit[0]] instanceof Boolean)) {\n Modernizr[featureNameSplit[0]] = new Boolean(Modernizr[featureNameSplit[0]]);\n }\n Modernizr[featureNameSplit[0]][featureNameSplit[1]] = result;\n }\n classes.push((result ? '' : 'no-') + featureNameSplit.join('-'));\n }\n }\n }\n }\n ;\n\n /**\r\n * docElement is a convenience wrapper to grab the root element of the document\r\n *\r\n * @access private\r\n * @returns {HTMLElement|SVGElement} The root element of the document\r\n */\n\n var docElement = document.documentElement;\n\n /**\r\n * A convenience helper to check if the document we are running in is an SVG document\r\n *\r\n * @access private\r\n * @returns {boolean}\r\n */\n\n var isSVG = docElement.nodeName.toLowerCase() === 'svg';\n\n /**\r\n * setClasses takes an array of class names and adds them to the root element\r\n *\r\n * @access private\r\n * @function setClasses\r\n * @param {string[]} classes - Array of class names\r\n */\n\n // Pass in an and array of class names, e.g.:\n // ['no-webp', 'borderradius', ...]\n function setClasses(classes) {\n var className = docElement.className;\n var classPrefix = Modernizr._config.classPrefix || '';\n if (isSVG) {\n className = className.baseVal;\n }\n\n // Change `no-js` to `js` (independently of the `enableClasses` option)\n // Handle classPrefix on this too\n if (Modernizr._config.enableJSClass) {\n var reJS = new RegExp('(^|\\\\s)' + classPrefix + 'no-js(\\\\s|$)');\n className = className.replace(reJS, '$1' + classPrefix + 'js$2');\n }\n if (Modernizr._config.enableClasses) {\n // Add the new classes\n className += ' ' + classPrefix + classes.join(' ' + classPrefix);\n isSVG ? docElement.className.baseVal = className : docElement.className = className;\n }\n }\n ;\n\n /**\r\n * cssToDOM takes a kebab-case string and converts it to camelCase\r\n * e.g. box-sizing -> boxSizing\r\n *\r\n * @access private\r\n * @function cssToDOM\r\n * @param {string} name - String name of kebab-case prop we want to convert\r\n * @returns {string} The camelCase version of the supplied name\r\n */\n\n function cssToDOM(name) {\n return name.replace(/([a-z])-([a-z])/g, function (str, m1, m2) {\n return m1 + m2.toUpperCase();\n }).replace(/^-/, '');\n }\n ;\n\n /**\r\n * If the browsers follow the spec, then they would expose vendor-specific style as:\r\n * elem.style.WebkitBorderRadius\r\n * instead of something like the following, which would be technically incorrect:\r\n * elem.style.webkitBorderRadius\r\n * Webkit ghosts their properties in lowercase but Opera & Moz do not.\r\n * Microsoft uses a lowercase `ms` instead of the correct `Ms` in IE8+\r\n * erik.eae.net/archives/2008/03/10/21.48.10/\r\n * More here: github.com/Modernizr/Modernizr/issues/issue/21\r\n *\r\n * @access private\r\n * @returns {string} The string representing the vendor-specific style properties\r\n */\n\n var omPrefixes = 'Moz O ms Webkit';\n var cssomPrefixes = ModernizrProto._config.usePrefixes ? omPrefixes.split(' ') : [];\n ModernizrProto._cssomPrefixes = cssomPrefixes;\n\n /**\r\n * atRule returns a given CSS property at-rule (eg @keyframes), possibly in\r\n * some prefixed form, or false, in the case of an unsupported rule\r\n *\r\n * @memberof Modernizr\r\n * @name Modernizr.atRule\r\n * @optionName Modernizr.atRule()\r\n * @optionProp atRule\r\n * @access public\r\n * @function atRule\r\n * @param {string} prop - String name of the @-rule to test for\r\n * @returns {string|boolean} The string representing the (possibly prefixed)\r\n * valid version of the @-rule, or `false` when it is unsupported.\r\n * @example\r\n * ```js\r\n * var keyframes = Modernizr.atRule('@keyframes');\r\n *\r\n * if (keyframes) {\r\n * // keyframes are supported\r\n * // could be `@-webkit-keyframes` or `@keyframes`\r\n * } else {\r\n * // keyframes === `false`\r\n * }\r\n * ```\r\n *\r\n */\n\n var atRule = function atRule(prop) {\n var length = prefixes.length;\n var cssrule = window.CSSRule;\n var rule;\n if (typeof cssrule === 'undefined') {\n return undefined;\n }\n if (!prop) {\n return false;\n }\n\n // remove literal @ from beginning of provided property\n prop = prop.replace(/^@/, '');\n\n // CSSRules use underscores instead of dashes\n rule = prop.replace(/-/g, '_').toUpperCase() + '_RULE';\n if (rule in cssrule) {\n return '@' + prop;\n }\n for (var i = 0; i < length; i++) {\n // prefixes gives us something like -o-, and we want O_\n var prefix = prefixes[i];\n var thisRule = prefix.toUpperCase() + '_' + rule;\n if (thisRule in cssrule) {\n return '@-' + prefix.toLowerCase() + '-' + prop;\n }\n }\n return false;\n };\n ModernizrProto.atRule = atRule;\n\n /**\r\n * List of JavaScript DOM values used for tests\r\n *\r\n * @memberof Modernizr\r\n * @name Modernizr._domPrefixes\r\n * @optionName Modernizr._domPrefixes\r\n * @optionProp domPrefixes\r\n * @access public\r\n * @example\r\n *\r\n * Modernizr._domPrefixes is exactly the same as [_prefixes](#modernizr-_prefixes), but rather\r\n * than kebab-case properties, all properties are their Capitalized variant\r\n *\r\n * ```js\r\n * Modernizr._domPrefixes === [ \"Moz\", \"O\", \"ms\", \"Webkit\" ];\r\n * ```\r\n */\n\n var domPrefixes = ModernizrProto._config.usePrefixes ? omPrefixes.toLowerCase().split(' ') : [];\n ModernizrProto._domPrefixes = domPrefixes;\n\n /**\r\n * contains checks to see if a string contains another string\r\n *\r\n * @access private\r\n * @function contains\r\n * @param {string} str - The string we want to check for substrings\r\n * @param {string} substr - The substring we want to search the first string for\r\n * @returns {boolean}\r\n */\n\n function contains(str, substr) {\n return !!~('' + str).indexOf(substr);\n }\n ;\n\n /**\r\n * createElement is a convenience wrapper around document.createElement. Since we\r\n * use createElement all over the place, this allows for (slightly) smaller code\r\n * as well as abstracting away issues with creating elements in contexts other than\r\n * HTML documents (e.g. SVG documents).\r\n *\r\n * @access private\r\n * @function createElement\r\n * @returns {HTMLElement|SVGElement} An HTML or SVG element\r\n */\n\n function createElement() {\n if (typeof document.createElement !== 'function') {\n // This is the case in IE7, where the type of createElement is \"object\".\n // For this reason, we cannot call apply() as Object is not a Function.\n return document.createElement(arguments[0]);\n } else if (isSVG) {\n return document.createElementNS.call(document, 'http://www.w3.org/2000/svg', arguments[0]);\n } else {\n return document.createElement.apply(document, arguments);\n }\n }\n ;\n\n /**\r\n * fnBind is a super small [bind](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Function/bind) polyfill.\r\n *\r\n * @access private\r\n * @function fnBind\r\n * @param {function} fn - a function you want to change `this` reference to\r\n * @param {object} that - the `this` you want to call the function with\r\n * @returns {function} The wrapped version of the supplied function\r\n */\n\n function fnBind(fn, that) {\n return function () {\n return fn.apply(that, arguments);\n };\n }\n ;\n\n /**\r\n * testDOMProps is a generic DOM property test; if a browser supports\r\n * a certain property, it won't return undefined for it.\r\n *\r\n * @access private\r\n * @function testDOMProps\r\n * @param {array.} props - An array of properties to test for\r\n * @param {object} obj - An object or Element you want to use to test the parameters again\r\n * @param {boolean|object} elem - An Element to bind the property lookup again. Use `false` to prevent the check\r\n */\n function testDOMProps(props, obj, elem) {\n var item;\n for (var i in props) {\n if (props[i] in obj) {\n // return the property name as a string\n if (elem === false) {\n return props[i];\n }\n item = obj[props[i]];\n\n // let's bind a function\n if (is(item, 'function')) {\n // bind to obj unless overriden\n return fnBind(item, elem || obj);\n }\n\n // return the unbound function or obj or value\n return item;\n }\n }\n return false;\n }\n ;\n\n /**\r\n * Create our \"modernizr\" element that we do most feature tests on.\r\n *\r\n * @access private\r\n */\n\n var modElem = {\n elem: createElement('modernizr')\n };\n\n // Clean up this element\n Modernizr._q.push(function () {\n delete modElem.elem;\n });\n var mStyle = {\n style: modElem.elem.style\n };\n\n // kill ref for gc, must happen before mod.elem is removed, so we unshift on to\n // the front of the queue.\n Modernizr._q.unshift(function () {\n delete mStyle.style;\n });\n\n /**\r\n * domToCSS takes a camelCase string and converts it to kebab-case\r\n * e.g. boxSizing -> box-sizing\r\n *\r\n * @access private\r\n * @function domToCSS\r\n * @param {string} name - String name of camelCase prop we want to convert\r\n * @returns {string} The kebab-case version of the supplied name\r\n */\n\n function domToCSS(name) {\n return name.replace(/([A-Z])/g, function (str, m1) {\n return '-' + m1.toLowerCase();\n }).replace(/^ms-/, '-ms-');\n }\n ;\n\n /**\r\n * getBody returns the body of a document, or an element that can stand in for\r\n * the body if a real body does not exist\r\n *\r\n * @access private\r\n * @function getBody\r\n * @returns {HTMLElement|SVGElement} Returns the real body of a document, or an\r\n * artificially created element that stands in for the body\r\n */\n\n function getBody() {\n // After page load injecting a fake body doesn't work so check if body exists\n var body = document.body;\n if (!body) {\n // Can't use the real body create a fake one.\n body = createElement(isSVG ? 'svg' : 'body');\n body.fake = true;\n }\n return body;\n }\n ;\n\n /**\r\n * injectElementWithStyles injects an element with style element and some CSS rules\r\n *\r\n * @access private\r\n * @function injectElementWithStyles\r\n * @param {string} rule - String representing a css rule\r\n * @param {function} callback - A function that is used to test the injected element\r\n * @param {number} [nodes] - An integer representing the number of additional nodes you want injected\r\n * @param {string[]} [testnames] - An array of strings that are used as ids for the additional nodes\r\n * @returns {boolean}\r\n */\n\n function injectElementWithStyles(rule, callback, nodes, testnames) {\n var mod = 'modernizr';\n var style;\n var ret;\n var node;\n var docOverflow;\n var div = createElement('div');\n var body = getBody();\n if (parseInt(nodes, 10)) {\n // In order not to give false positives we create a node for each test\n // This also allows the method to scale for unspecified uses\n while (nodes--) {\n node = createElement('div');\n node.id = testnames ? testnames[nodes] : mod + (nodes + 1);\n div.appendChild(node);\n }\n }\n style = createElement('style');\n style.type = 'text/css';\n style.id = 's' + mod;\n\n // IE6 will false positive on some tests due to the style element inside the test div somehow interfering offsetHeight, so insert it into body or fakebody.\n // Opera will act all quirky when injecting elements in documentElement when page is served as xml, needs fakebody too. #270\n (!body.fake ? div : body).appendChild(style);\n body.appendChild(div);\n if (style.styleSheet) {\n style.styleSheet.cssText = rule;\n } else {\n style.appendChild(document.createTextNode(rule));\n }\n div.id = mod;\n if (body.fake) {\n //avoid crashing IE8, if background image is used\n body.style.background = '';\n //Safari 5.13/5.1.4 OSX stops loading if ::-webkit-scrollbar is used and scrollbars are visible\n body.style.overflow = 'hidden';\n docOverflow = docElement.style.overflow;\n docElement.style.overflow = 'hidden';\n docElement.appendChild(body);\n }\n ret = callback(div, rule);\n // If this is done after page load we don't want to remove the body so check if body exists\n if (body.fake) {\n body.parentNode.removeChild(body);\n docElement.style.overflow = docOverflow;\n // Trigger layout so kinetic scrolling isn't disabled in iOS6+\n docElement.offsetHeight;\n } else {\n div.parentNode.removeChild(div);\n }\n return !!ret;\n }\n ;\n\n /**\r\n * nativeTestProps allows for us to use native feature detection functionality if available.\r\n * some prefixed form, or false, in the case of an unsupported rule\r\n *\r\n * @access private\r\n * @function nativeTestProps\r\n * @param {array} props - An array of property names\r\n * @param {string} value - A string representing the value we want to check via @supports\r\n * @returns {boolean|undefined} A boolean when @supports exists, undefined otherwise\r\n */\n\n // Accepts a list of property names and a single value\n // Returns `undefined` if native detection not available\n function nativeTestProps(props, value) {\n var i = props.length;\n // Start with the JS API: http://www.w3.org/TR/css3-conditional/#the-css-interface\n if ('CSS' in window && 'supports' in window.CSS) {\n // Try every prefixed variant of the property\n while (i--) {\n if (window.CSS.supports(domToCSS(props[i]), value)) {\n return true;\n }\n }\n return false;\n }\n // Otherwise fall back to at-rule (for Opera 12.x)\n else if ('CSSSupportsRule' in window) {\n // Build a condition string for every prefixed variant\n var conditionText = [];\n while (i--) {\n conditionText.push('(' + domToCSS(props[i]) + ':' + value + ')');\n }\n conditionText = conditionText.join(' or ');\n return injectElementWithStyles('@supports (' + conditionText + ') { #modernizr { position: absolute; } }', function (node) {\n return getComputedStyle(node, null).position == 'absolute';\n });\n }\n return undefined;\n }\n ;\n\n // testProps is a generic CSS / DOM property test.\n\n // In testing support for a given CSS property, it's legit to test:\n // `elem.style[styleName] !== undefined`\n // If the property is supported it will return an empty string,\n // if unsupported it will return undefined.\n\n // We'll take advantage of this quick test and skip setting a style\n // on our modernizr element, but instead just testing undefined vs\n // empty string.\n\n // Property names can be provided in either camelCase or kebab-case.\n\n function testProps(props, prefixed, value, skipValueTest) {\n skipValueTest = is(skipValueTest, 'undefined') ? false : skipValueTest;\n\n // Try native detect first\n if (!is(value, 'undefined')) {\n var result = nativeTestProps(props, value);\n if (!is(result, 'undefined')) {\n return result;\n }\n }\n\n // Otherwise do it properly\n var afterInit, i, propsLength, prop, before;\n\n // If we don't have a style element, that means we're running async or after\n // the core tests, so we'll need to create our own elements to use\n\n // inside of an SVG element, in certain browsers, the `style` element is only\n // defined for valid tags. Therefore, if `modernizr` does not have one, we\n // fall back to a less used element and hope for the best.\n // for strict XHTML browsers the hardly used samp element is used\n var elems = ['modernizr', 'tspan', 'samp'];\n while (!mStyle.style && elems.length) {\n afterInit = true;\n mStyle.modElem = createElement(elems.shift());\n mStyle.style = mStyle.modElem.style;\n }\n\n // Delete the objects if we created them.\n function cleanElems() {\n if (afterInit) {\n delete mStyle.style;\n delete mStyle.modElem;\n }\n }\n propsLength = props.length;\n for (i = 0; i < propsLength; i++) {\n prop = props[i];\n before = mStyle.style[prop];\n if (contains(prop, '-')) {\n prop = cssToDOM(prop);\n }\n if (mStyle.style[prop] !== undefined) {\n // If value to test has been passed in, do a set-and-check test.\n // 0 (integer) is a valid property value, so check that `value` isn't\n // undefined, rather than just checking it's truthy.\n if (!skipValueTest && !is(value, 'undefined')) {\n // Needs a try catch block because of old IE. This is slow, but will\n // be avoided in most cases because `skipValueTest` will be used.\n try {\n mStyle.style[prop] = value;\n } catch (e) {}\n\n // If the property value has changed, we assume the value used is\n // supported. If `value` is empty string, it'll fail here (because\n // it hasn't changed), which matches how browsers have implemented\n // CSS.supports()\n if (mStyle.style[prop] != before) {\n cleanElems();\n return prefixed == 'pfx' ? prop : true;\n }\n }\n // Otherwise just return true, or the property name if this is a\n // `prefixed()` call\n else {\n cleanElems();\n return prefixed == 'pfx' ? prop : true;\n }\n }\n }\n cleanElems();\n return false;\n }\n ;\n\n /**\r\n * testPropsAll tests a list of DOM properties we want to check against.\r\n * We specify literally ALL possible (known and/or likely) properties on\r\n * the element including the non-vendor prefixed one, for forward-\r\n * compatibility.\r\n *\r\n * @access private\r\n * @function testPropsAll\r\n * @param {string} prop - A string of the property to test for\r\n * @param {string|object} [prefixed] - An object to check the prefixed properties on. Use a string to skip\r\n * @param {HTMLElement|SVGElement} [elem] - An element used to test the property and value against\r\n * @param {string} [value] - A string of a css value\r\n * @param {boolean} [skipValueTest] - An boolean representing if you want to test if value sticks when set\r\n */\n function testPropsAll(prop, prefixed, elem, value, skipValueTest) {\n var ucProp = prop.charAt(0).toUpperCase() + prop.slice(1),\n props = (prop + ' ' + cssomPrefixes.join(ucProp + ' ') + ucProp).split(' ');\n\n // did they call .prefixed('boxSizing') or are we just testing a prop?\n if (is(prefixed, 'string') || is(prefixed, 'undefined')) {\n return testProps(props, prefixed, value, skipValueTest);\n\n // otherwise, they called .prefixed('requestAnimationFrame', window[, elem])\n } else {\n props = (prop + ' ' + domPrefixes.join(ucProp + ' ') + ucProp).split(' ');\n return testDOMProps(props, prefixed, elem);\n }\n }\n\n // Modernizr.testAllProps() investigates whether a given style property,\n // or any of its vendor-prefixed variants, is recognized\n //\n // Note that the property names must be provided in the camelCase variant.\n // Modernizr.testAllProps('boxSizing')\n ModernizrProto.testAllProps = testPropsAll;\n\n /**\r\n * prefixed returns the prefixed or nonprefixed property name variant of your input\r\n *\r\n * @memberof Modernizr\r\n * @name Modernizr.prefixed\r\n * @optionName Modernizr.prefixed()\r\n * @optionProp prefixed\r\n * @access public\r\n * @function prefixed\r\n * @param {string} prop - String name of the property to test for\r\n * @param {object} [obj] - An object to test for the prefixed properties on\r\n * @param {HTMLElement} [elem] - An element used to test specific properties against\r\n * @returns {string|false} The string representing the (possibly prefixed) valid\r\n * version of the property, or `false` when it is unsupported.\r\n * @example\r\n *\r\n * Modernizr.prefixed takes a string css value in the DOM style camelCase (as\r\n * opposed to the css style kebab-case) form and returns the (possibly prefixed)\r\n * version of that property that the browser actually supports.\r\n *\r\n * For example, in older Firefox...\r\n * ```js\r\n * prefixed('boxSizing')\r\n * ```\r\n * returns 'MozBoxSizing'\r\n *\r\n * In newer Firefox, as well as any other browser that support the unprefixed\r\n * version would simply return `boxSizing`. Any browser that does not support\r\n * the property at all, it will return `false`.\r\n *\r\n * By default, prefixed is checked against a DOM element. If you want to check\r\n * for a property on another object, just pass it as a second argument\r\n *\r\n * ```js\r\n * var rAF = prefixed('requestAnimationFrame', window);\r\n *\r\n * raf(function() {\r\n * renderFunction();\r\n * })\r\n * ```\r\n *\r\n * Note that this will return _the actual function_ - not the name of the function.\r\n * If you need the actual name of the property, pass in `false` as a third argument\r\n *\r\n * ```js\r\n * var rAFProp = prefixed('requestAnimationFrame', window, false);\r\n *\r\n * rafProp === 'WebkitRequestAnimationFrame' // in older webkit\r\n * ```\r\n *\r\n * One common use case for prefixed is if you're trying to determine which transition\r\n * end event to bind to, you might do something like...\r\n * ```js\r\n * var transEndEventNames = {\r\n * 'WebkitTransition' : 'webkitTransitionEnd', * Saf 6, Android Browser\r\n * 'MozTransition' : 'transitionend', * only for FF < 15\r\n * 'transition' : 'transitionend' * IE10, Opera, Chrome, FF 15+, Saf 7+\r\n * };\r\n *\r\n * var transEndEventName = transEndEventNames[ Modernizr.prefixed('transition') ];\r\n * ```\r\n *\r\n * If you want a similar lookup, but in kebab-case, you can use [prefixedCSS](#modernizr-prefixedcss).\r\n */\n\n var prefixed = ModernizrProto.prefixed = function (prop, obj, elem) {\n if (prop.indexOf('@') === 0) {\n return atRule(prop);\n }\n if (prop.indexOf('-') != -1) {\n // Convert kebab-case to camelCase\n prop = cssToDOM(prop);\n }\n if (!obj) {\n return testPropsAll(prop, 'pfx');\n } else {\n // Testing DOM property e.g. Modernizr.prefixed('requestAnimationFrame', window) // 'mozRequestAnimationFrame'\n return testPropsAll(prop, obj, elem);\n }\n };\n\n /*!\r\n {\r\n \"name\": \"Navigation Timing API\",\r\n \"property\": \"performance\",\r\n \"caniuse\": \"nav-timing\",\r\n \"tags\": [\"performance\"],\r\n \"authors\": [\"Scott Murphy (@uxder)\"],\r\n \"notes\": [{\r\n \"name\": \"W3C Spec\",\r\n \"href\": \"https://www.w3.org/TR/navigation-timing/\"\r\n },{\r\n \"name\": \"HTML5 Rocks article\",\r\n \"href\": \"http://www.html5rocks.com/en/tutorials/webperformance/basics/\"\r\n }],\r\n \"polyfills\": [\"perfnow\"]\r\n }\r\n !*/\n /* DOC\r\n Detects support for the Navigation Timing API, for measuring browser and connection performance.\r\n */\n\n Modernizr.addTest('performance', !!prefixed('performance', window));\n\n // Run each test\n testRunner();\n\n // Remove the \"no-js\" class if it exists\n setClasses(classes);\n delete ModernizrProto.addTest;\n delete ModernizrProto.addAsyncTest;\n\n // Run the things that are supposed to run after the tests\n for (var i = 0; i < Modernizr._q.length; i++) {\n Modernizr._q[i]();\n }\n\n // Leak Modernizr namespace\n window.Modernizr = Modernizr;\n ;\n})(window, document);\n\"use strict\";\n\nfunction _typeof(obj) { \"@babel/helpers - typeof\"; return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }, _typeof(obj); }\n/*!\r\n * Chart.js\r\n * http://chartjs.org/\r\n * Version: 2.5.0\r\n *\r\n * Copyright 2017 Nick Downie\r\n * Released under the MIT license\r\n * https://github.com/chartjs/Chart.js/blob/master/LICENSE.md\r\n */\n!function (t) {\n if (\"object\" == (typeof exports === \"undefined\" ? \"undefined\" : _typeof(exports)) && \"undefined\" != typeof module) module.exports = t();else if (\"function\" == typeof define && define.amd) define([], t);else {\n var e;\n e = \"undefined\" != typeof window ? window : \"undefined\" != typeof global ? global : \"undefined\" != typeof self ? self : this, e.Chart = t();\n }\n}(function () {\n return function t(e, a, i) {\n function n(r, s) {\n if (!a[r]) {\n if (!e[r]) {\n var l = \"function\" == typeof require && require;\n if (!s && l) return l(r, !0);\n if (o) return o(r, !0);\n var u = new Error(\"Cannot find module '\" + r + \"'\");\n throw u.code = \"MODULE_NOT_FOUND\", u;\n }\n var d = a[r] = {\n exports: {}\n };\n e[r][0].call(d.exports, function (t) {\n var a = e[r][1][t];\n return n(a ? a : t);\n }, d, d.exports, t, e, a, i);\n }\n return a[r].exports;\n }\n for (var o = \"function\" == typeof require && require, r = 0; r < i.length; r++) n(i[r]);\n return n;\n }({\n 1: [function (t, e, a) {}, {}],\n 2: [function (t, e, a) {\n function i(t) {\n if (t) {\n var e = /^#([a-fA-F0-9]{3})$/,\n a = /^#([a-fA-F0-9]{6})$/,\n i = /^rgba?\\(\\s*([+-]?\\d+)\\s*,\\s*([+-]?\\d+)\\s*,\\s*([+-]?\\d+)\\s*(?:,\\s*([+-]?[\\d\\.]+)\\s*)?\\)$/,\n n = /^rgba?\\(\\s*([+-]?[\\d\\.]+)\\%\\s*,\\s*([+-]?[\\d\\.]+)\\%\\s*,\\s*([+-]?[\\d\\.]+)\\%\\s*(?:,\\s*([+-]?[\\d\\.]+)\\s*)?\\)$/,\n o = /(\\w+)/,\n r = [0, 0, 0],\n s = 1,\n l = t.match(e);\n if (l) {\n l = l[1];\n for (var u = 0; u < r.length; u++) r[u] = parseInt(l[u] + l[u], 16);\n } else if (l = t.match(a)) {\n l = l[1];\n for (var u = 0; u < r.length; u++) r[u] = parseInt(l.slice(2 * u, 2 * u + 2), 16);\n } else if (l = t.match(i)) {\n for (var u = 0; u < r.length; u++) r[u] = parseInt(l[u + 1]);\n s = parseFloat(l[4]);\n } else if (l = t.match(n)) {\n for (var u = 0; u < r.length; u++) r[u] = Math.round(2.55 * parseFloat(l[u + 1]));\n s = parseFloat(l[4]);\n } else if (l = t.match(o)) {\n if (\"transparent\" == l[1]) return [0, 0, 0, 0];\n if (r = y[l[1]], !r) return;\n }\n for (var u = 0; u < r.length; u++) r[u] = b(r[u], 0, 255);\n return s = s || 0 == s ? b(s, 0, 1) : 1, r[3] = s, r;\n }\n }\n function n(t) {\n if (t) {\n var e = /^hsla?\\(\\s*([+-]?\\d+)(?:deg)?\\s*,\\s*([+-]?[\\d\\.]+)%\\s*,\\s*([+-]?[\\d\\.]+)%\\s*(?:,\\s*([+-]?[\\d\\.]+)\\s*)?\\)/,\n a = t.match(e);\n if (a) {\n var i = parseFloat(a[4]),\n n = b(parseInt(a[1]), 0, 360),\n o = b(parseFloat(a[2]), 0, 100),\n r = b(parseFloat(a[3]), 0, 100),\n s = b(isNaN(i) ? 1 : i, 0, 1);\n return [n, o, r, s];\n }\n }\n }\n function o(t) {\n if (t) {\n var e = /^hwb\\(\\s*([+-]?\\d+)(?:deg)?\\s*,\\s*([+-]?[\\d\\.]+)%\\s*,\\s*([+-]?[\\d\\.]+)%\\s*(?:,\\s*([+-]?[\\d\\.]+)\\s*)?\\)/,\n a = t.match(e);\n if (a) {\n var i = parseFloat(a[4]),\n n = b(parseInt(a[1]), 0, 360),\n o = b(parseFloat(a[2]), 0, 100),\n r = b(parseFloat(a[3]), 0, 100),\n s = b(isNaN(i) ? 1 : i, 0, 1);\n return [n, o, r, s];\n }\n }\n }\n function r(t) {\n var e = i(t);\n return e && e.slice(0, 3);\n }\n function s(t) {\n var e = n(t);\n return e && e.slice(0, 3);\n }\n function l(t) {\n var e = i(t);\n return e ? e[3] : (e = n(t)) ? e[3] : (e = o(t)) ? e[3] : void 0;\n }\n function u(t) {\n return \"#\" + x(t[0]) + x(t[1]) + x(t[2]);\n }\n function d(t, e) {\n return e < 1 || t[3] && t[3] < 1 ? c(t, e) : \"rgb(\" + t[0] + \", \" + t[1] + \", \" + t[2] + \")\";\n }\n function c(t, e) {\n return void 0 === e && (e = void 0 !== t[3] ? t[3] : 1), \"rgba(\" + t[0] + \", \" + t[1] + \", \" + t[2] + \", \" + e + \")\";\n }\n function h(t, e) {\n if (e < 1 || t[3] && t[3] < 1) return f(t, e);\n var a = Math.round(t[0] / 255 * 100),\n i = Math.round(t[1] / 255 * 100),\n n = Math.round(t[2] / 255 * 100);\n return \"rgb(\" + a + \"%, \" + i + \"%, \" + n + \"%)\";\n }\n function f(t, e) {\n var a = Math.round(t[0] / 255 * 100),\n i = Math.round(t[1] / 255 * 100),\n n = Math.round(t[2] / 255 * 100);\n return \"rgba(\" + a + \"%, \" + i + \"%, \" + n + \"%, \" + (e || t[3] || 1) + \")\";\n }\n function g(t, e) {\n return e < 1 || t[3] && t[3] < 1 ? p(t, e) : \"hsl(\" + t[0] + \", \" + t[1] + \"%, \" + t[2] + \"%)\";\n }\n function p(t, e) {\n return void 0 === e && (e = void 0 !== t[3] ? t[3] : 1), \"hsla(\" + t[0] + \", \" + t[1] + \"%, \" + t[2] + \"%, \" + e + \")\";\n }\n function m(t, e) {\n return void 0 === e && (e = void 0 !== t[3] ? t[3] : 1), \"hwb(\" + t[0] + \", \" + t[1] + \"%, \" + t[2] + \"%\" + (void 0 !== e && 1 !== e ? \", \" + e : \"\") + \")\";\n }\n function v(t) {\n return k[t.slice(0, 3)];\n }\n function b(t, e, a) {\n return Math.min(Math.max(e, t), a);\n }\n function x(t) {\n var e = t.toString(16).toUpperCase();\n return e.length < 2 ? \"0\" + e : e;\n }\n var y = t(6);\n e.exports = {\n getRgba: i,\n getHsla: n,\n getRgb: r,\n getHsl: s,\n getHwb: o,\n getAlpha: l,\n hexString: u,\n rgbString: d,\n rgbaString: c,\n percentString: h,\n percentaString: f,\n hslString: g,\n hslaString: p,\n hwbString: m,\n keyword: v\n };\n var k = {};\n for (var S in y) k[y[S]] = S;\n }, {\n 6: 6\n }],\n 3: [function (t, e, a) {\n var i = t(5),\n n = t(2),\n o = function o(t) {\n if (t instanceof o) return t;\n if (!(this instanceof o)) return new o(t);\n this.values = {\n rgb: [0, 0, 0],\n hsl: [0, 0, 0],\n hsv: [0, 0, 0],\n hwb: [0, 0, 0],\n cmyk: [0, 0, 0, 0],\n alpha: 1\n };\n var e;\n if (\"string\" == typeof t) {\n if (e = n.getRgba(t)) this.setValues(\"rgb\", e);else if (e = n.getHsla(t)) this.setValues(\"hsl\", e);else {\n if (!(e = n.getHwb(t))) throw new Error('Unable to parse color from string \"' + t + '\"');\n this.setValues(\"hwb\", e);\n }\n } else if (\"object\" == _typeof(t)) if (e = t, void 0 !== e.r || void 0 !== e.red) this.setValues(\"rgb\", e);else if (void 0 !== e.l || void 0 !== e.lightness) this.setValues(\"hsl\", e);else if (void 0 !== e.v || void 0 !== e.value) this.setValues(\"hsv\", e);else if (void 0 !== e.w || void 0 !== e.whiteness) this.setValues(\"hwb\", e);else {\n if (void 0 === e.c && void 0 === e.cyan) throw new Error(\"Unable to parse color from object \" + JSON.stringify(t));\n this.setValues(\"cmyk\", e);\n }\n };\n o.prototype = {\n rgb: function rgb() {\n return this.setSpace(\"rgb\", arguments);\n },\n hsl: function hsl() {\n return this.setSpace(\"hsl\", arguments);\n },\n hsv: function hsv() {\n return this.setSpace(\"hsv\", arguments);\n },\n hwb: function hwb() {\n return this.setSpace(\"hwb\", arguments);\n },\n cmyk: function cmyk() {\n return this.setSpace(\"cmyk\", arguments);\n },\n rgbArray: function rgbArray() {\n return this.values.rgb;\n },\n hslArray: function hslArray() {\n return this.values.hsl;\n },\n hsvArray: function hsvArray() {\n return this.values.hsv;\n },\n hwbArray: function hwbArray() {\n var t = this.values;\n return 1 !== t.alpha ? t.hwb.concat([t.alpha]) : t.hwb;\n },\n cmykArray: function cmykArray() {\n return this.values.cmyk;\n },\n rgbaArray: function rgbaArray() {\n var t = this.values;\n return t.rgb.concat([t.alpha]);\n },\n hslaArray: function hslaArray() {\n var t = this.values;\n return t.hsl.concat([t.alpha]);\n },\n alpha: function alpha(t) {\n return void 0 === t ? this.values.alpha : (this.setValues(\"alpha\", t), this);\n },\n red: function red(t) {\n return this.setChannel(\"rgb\", 0, t);\n },\n green: function green(t) {\n return this.setChannel(\"rgb\", 1, t);\n },\n blue: function blue(t) {\n return this.setChannel(\"rgb\", 2, t);\n },\n hue: function hue(t) {\n return t && (t %= 360, t = t < 0 ? 360 + t : t), this.setChannel(\"hsl\", 0, t);\n },\n saturation: function saturation(t) {\n return this.setChannel(\"hsl\", 1, t);\n },\n lightness: function lightness(t) {\n return this.setChannel(\"hsl\", 2, t);\n },\n saturationv: function saturationv(t) {\n return this.setChannel(\"hsv\", 1, t);\n },\n whiteness: function whiteness(t) {\n return this.setChannel(\"hwb\", 1, t);\n },\n blackness: function blackness(t) {\n return this.setChannel(\"hwb\", 2, t);\n },\n value: function value(t) {\n return this.setChannel(\"hsv\", 2, t);\n },\n cyan: function cyan(t) {\n return this.setChannel(\"cmyk\", 0, t);\n },\n magenta: function magenta(t) {\n return this.setChannel(\"cmyk\", 1, t);\n },\n yellow: function yellow(t) {\n return this.setChannel(\"cmyk\", 2, t);\n },\n black: function black(t) {\n return this.setChannel(\"cmyk\", 3, t);\n },\n hexString: function hexString() {\n return n.hexString(this.values.rgb);\n },\n rgbString: function rgbString() {\n return n.rgbString(this.values.rgb, this.values.alpha);\n },\n rgbaString: function rgbaString() {\n return n.rgbaString(this.values.rgb, this.values.alpha);\n },\n percentString: function percentString() {\n return n.percentString(this.values.rgb, this.values.alpha);\n },\n hslString: function hslString() {\n return n.hslString(this.values.hsl, this.values.alpha);\n },\n hslaString: function hslaString() {\n return n.hslaString(this.values.hsl, this.values.alpha);\n },\n hwbString: function hwbString() {\n return n.hwbString(this.values.hwb, this.values.alpha);\n },\n keyword: function keyword() {\n return n.keyword(this.values.rgb, this.values.alpha);\n },\n rgbNumber: function rgbNumber() {\n var t = this.values.rgb;\n return t[0] << 16 | t[1] << 8 | t[2];\n },\n luminosity: function luminosity() {\n for (var t = this.values.rgb, e = [], a = 0; a < t.length; a++) {\n var i = t[a] / 255;\n e[a] = i <= .03928 ? i / 12.92 : Math.pow((i + .055) / 1.055, 2.4);\n }\n return .2126 * e[0] + .7152 * e[1] + .0722 * e[2];\n },\n contrast: function contrast(t) {\n var e = this.luminosity(),\n a = t.luminosity();\n return e > a ? (e + .05) / (a + .05) : (a + .05) / (e + .05);\n },\n level: function level(t) {\n var e = this.contrast(t);\n return e >= 7.1 ? \"AAA\" : e >= 4.5 ? \"AA\" : \"\";\n },\n dark: function dark() {\n var t = this.values.rgb,\n e = (299 * t[0] + 587 * t[1] + 114 * t[2]) / 1e3;\n return e < 128;\n },\n light: function light() {\n return !this.dark();\n },\n negate: function negate() {\n for (var t = [], e = 0; e < 3; e++) t[e] = 255 - this.values.rgb[e];\n return this.setValues(\"rgb\", t), this;\n },\n lighten: function lighten(t) {\n var e = this.values.hsl;\n return e[2] += e[2] * t, this.setValues(\"hsl\", e), this;\n },\n darken: function darken(t) {\n var e = this.values.hsl;\n return e[2] -= e[2] * t, this.setValues(\"hsl\", e), this;\n },\n saturate: function saturate(t) {\n var e = this.values.hsl;\n return e[1] += e[1] * t, this.setValues(\"hsl\", e), this;\n },\n desaturate: function desaturate(t) {\n var e = this.values.hsl;\n return e[1] -= e[1] * t, this.setValues(\"hsl\", e), this;\n },\n whiten: function whiten(t) {\n var e = this.values.hwb;\n return e[1] += e[1] * t, this.setValues(\"hwb\", e), this;\n },\n blacken: function blacken(t) {\n var e = this.values.hwb;\n return e[2] += e[2] * t, this.setValues(\"hwb\", e), this;\n },\n greyscale: function greyscale() {\n var t = this.values.rgb,\n e = .3 * t[0] + .59 * t[1] + .11 * t[2];\n return this.setValues(\"rgb\", [e, e, e]), this;\n },\n clearer: function clearer(t) {\n var e = this.values.alpha;\n return this.setValues(\"alpha\", e - e * t), this;\n },\n opaquer: function opaquer(t) {\n var e = this.values.alpha;\n return this.setValues(\"alpha\", e + e * t), this;\n },\n rotate: function rotate(t) {\n var e = this.values.hsl,\n a = (e[0] + t) % 360;\n return e[0] = a < 0 ? 360 + a : a, this.setValues(\"hsl\", e), this;\n },\n mix: function mix(t, e) {\n var a = this,\n i = t,\n n = void 0 === e ? .5 : e,\n o = 2 * n - 1,\n r = a.alpha() - i.alpha(),\n s = ((o * r === -1 ? o : (o + r) / (1 + o * r)) + 1) / 2,\n l = 1 - s;\n return this.rgb(s * a.red() + l * i.red(), s * a.green() + l * i.green(), s * a.blue() + l * i.blue()).alpha(a.alpha() * n + i.alpha() * (1 - n));\n },\n toJSON: function toJSON() {\n return this.rgb();\n },\n clone: function clone() {\n var t,\n e,\n a = new o(),\n i = this.values,\n n = a.values;\n for (var r in i) i.hasOwnProperty(r) && (t = i[r], e = {}.toString.call(t), \"[object Array]\" === e ? n[r] = t.slice(0) : \"[object Number]\" === e ? n[r] = t : console.error(\"unexpected color value:\", t));\n return a;\n }\n }, o.prototype.spaces = {\n rgb: [\"red\", \"green\", \"blue\"],\n hsl: [\"hue\", \"saturation\", \"lightness\"],\n hsv: [\"hue\", \"saturation\", \"value\"],\n hwb: [\"hue\", \"whiteness\", \"blackness\"],\n cmyk: [\"cyan\", \"magenta\", \"yellow\", \"black\"]\n }, o.prototype.maxes = {\n rgb: [255, 255, 255],\n hsl: [360, 100, 100],\n hsv: [360, 100, 100],\n hwb: [360, 100, 100],\n cmyk: [100, 100, 100, 100]\n }, o.prototype.getValues = function (t) {\n for (var e = this.values, a = {}, i = 0; i < t.length; i++) a[t.charAt(i)] = e[t][i];\n return 1 !== e.alpha && (a.a = e.alpha), a;\n }, o.prototype.setValues = function (t, e) {\n var a,\n n = this.values,\n o = this.spaces,\n r = this.maxes,\n s = 1;\n if (\"alpha\" === t) s = e;else if (e.length) n[t] = e.slice(0, t.length), s = e[t.length];else if (void 0 !== e[t.charAt(0)]) {\n for (a = 0; a < t.length; a++) n[t][a] = e[t.charAt(a)];\n s = e.a;\n } else if (void 0 !== e[o[t][0]]) {\n var l = o[t];\n for (a = 0; a < t.length; a++) n[t][a] = e[l[a]];\n s = e.alpha;\n }\n if (n.alpha = Math.max(0, Math.min(1, void 0 === s ? n.alpha : s)), \"alpha\" === t) return !1;\n var u;\n for (a = 0; a < t.length; a++) u = Math.max(0, Math.min(r[t][a], n[t][a])), n[t][a] = Math.round(u);\n for (var d in o) d !== t && (n[d] = i[t][d](n[t]));\n return !0;\n }, o.prototype.setSpace = function (t, e) {\n var a = e[0];\n return void 0 === a ? this.getValues(t) : (\"number\" == typeof a && (a = Array.prototype.slice.call(e)), this.setValues(t, a), this);\n }, o.prototype.setChannel = function (t, e, a) {\n var i = this.values[t];\n return void 0 === a ? i[e] : a === i[e] ? this : (i[e] = a, this.setValues(t, i), this);\n }, \"undefined\" != typeof window && (window.Color = o), e.exports = o;\n }, {\n 2: 2,\n 5: 5\n }],\n 4: [function (t, e, a) {\n function i(t) {\n var e,\n a,\n i,\n n = t[0] / 255,\n o = t[1] / 255,\n r = t[2] / 255,\n s = Math.min(n, o, r),\n l = Math.max(n, o, r),\n u = l - s;\n return l == s ? e = 0 : n == l ? e = (o - r) / u : o == l ? e = 2 + (r - n) / u : r == l && (e = 4 + (n - o) / u), e = Math.min(60 * e, 360), e < 0 && (e += 360), i = (s + l) / 2, a = l == s ? 0 : i <= .5 ? u / (l + s) : u / (2 - l - s), [e, 100 * a, 100 * i];\n }\n function n(t) {\n var e,\n a,\n i,\n n = t[0],\n o = t[1],\n r = t[2],\n s = Math.min(n, o, r),\n l = Math.max(n, o, r),\n u = l - s;\n return a = 0 == l ? 0 : u / l * 1e3 / 10, l == s ? e = 0 : n == l ? e = (o - r) / u : o == l ? e = 2 + (r - n) / u : r == l && (e = 4 + (n - o) / u), e = Math.min(60 * e, 360), e < 0 && (e += 360), i = l / 255 * 1e3 / 10, [e, a, i];\n }\n function o(t) {\n var e = t[0],\n a = t[1],\n n = t[2],\n o = i(t)[0],\n r = 1 / 255 * Math.min(e, Math.min(a, n)),\n n = 1 - 1 / 255 * Math.max(e, Math.max(a, n));\n return [o, 100 * r, 100 * n];\n }\n function s(t) {\n var e,\n a,\n i,\n n,\n o = t[0] / 255,\n r = t[1] / 255,\n s = t[2] / 255;\n return n = Math.min(1 - o, 1 - r, 1 - s), e = (1 - o - n) / (1 - n) || 0, a = (1 - r - n) / (1 - n) || 0, i = (1 - s - n) / (1 - n) || 0, [100 * e, 100 * a, 100 * i, 100 * n];\n }\n function l(t) {\n return Z[JSON.stringify(t)];\n }\n function u(t) {\n var e = t[0] / 255,\n a = t[1] / 255,\n i = t[2] / 255;\n e = e > .04045 ? Math.pow((e + .055) / 1.055, 2.4) : e / 12.92, a = a > .04045 ? Math.pow((a + .055) / 1.055, 2.4) : a / 12.92, i = i > .04045 ? Math.pow((i + .055) / 1.055, 2.4) : i / 12.92;\n var n = .4124 * e + .3576 * a + .1805 * i,\n o = .2126 * e + .7152 * a + .0722 * i,\n r = .0193 * e + .1192 * a + .9505 * i;\n return [100 * n, 100 * o, 100 * r];\n }\n function d(t) {\n var e,\n a,\n i,\n n = u(t),\n o = n[0],\n r = n[1],\n s = n[2];\n return o /= 95.047, r /= 100, s /= 108.883, o = o > .008856 ? Math.pow(o, 1 / 3) : 7.787 * o + 16 / 116, r = r > .008856 ? Math.pow(r, 1 / 3) : 7.787 * r + 16 / 116, s = s > .008856 ? Math.pow(s, 1 / 3) : 7.787 * s + 16 / 116, e = 116 * r - 16, a = 500 * (o - r), i = 200 * (r - s), [e, a, i];\n }\n function c(t) {\n return z(d(t));\n }\n function h(t) {\n var e,\n a,\n i,\n n,\n o,\n r = t[0] / 360,\n s = t[1] / 100,\n l = t[2] / 100;\n if (0 == s) return o = 255 * l, [o, o, o];\n a = l < .5 ? l * (1 + s) : l + s - l * s, e = 2 * l - a, n = [0, 0, 0];\n for (var u = 0; u < 3; u++) i = r + 1 / 3 * -(u - 1), i < 0 && i++, i > 1 && i--, o = 6 * i < 1 ? e + 6 * (a - e) * i : 2 * i < 1 ? a : 3 * i < 2 ? e + (a - e) * (2 / 3 - i) * 6 : e, n[u] = 255 * o;\n return n;\n }\n function f(t) {\n var e,\n a,\n i = t[0],\n n = t[1] / 100,\n o = t[2] / 100;\n return 0 === o ? [0, 0, 0] : (o *= 2, n *= o <= 1 ? o : 2 - o, a = (o + n) / 2, e = 2 * n / (o + n), [i, 100 * e, 100 * a]);\n }\n function p(t) {\n return o(h(t));\n }\n function m(t) {\n return s(h(t));\n }\n function v(t) {\n return l(h(t));\n }\n function x(t) {\n var e = t[0] / 60,\n a = t[1] / 100,\n i = t[2] / 100,\n n = Math.floor(e) % 6,\n o = e - Math.floor(e),\n r = 255 * i * (1 - a),\n s = 255 * i * (1 - a * o),\n l = 255 * i * (1 - a * (1 - o)),\n i = 255 * i;\n switch (n) {\n case 0:\n return [i, l, r];\n case 1:\n return [s, i, r];\n case 2:\n return [r, i, l];\n case 3:\n return [r, s, i];\n case 4:\n return [l, r, i];\n case 5:\n return [i, r, s];\n }\n }\n function y(t) {\n var e,\n a,\n i = t[0],\n n = t[1] / 100,\n o = t[2] / 100;\n return a = (2 - n) * o, e = n * o, e /= a <= 1 ? a : 2 - a, e = e || 0, a /= 2, [i, 100 * e, 100 * a];\n }\n function k(t) {\n return o(x(t));\n }\n function S(t) {\n return s(x(t));\n }\n function M(t) {\n return l(x(t));\n }\n function w(t) {\n var e,\n a,\n i,\n n,\n o = t[0] / 360,\n s = t[1] / 100,\n l = t[2] / 100,\n u = s + l;\n switch (u > 1 && (s /= u, l /= u), e = Math.floor(6 * o), a = 1 - l, i = 6 * o - e, 0 != (1 & e) && (i = 1 - i), n = s + i * (a - s), e) {\n default:\n case 6:\n case 0:\n r = a, g = n, b = s;\n break;\n case 1:\n r = n, g = a, b = s;\n break;\n case 2:\n r = s, g = a, b = n;\n break;\n case 3:\n r = s, g = n, b = a;\n break;\n case 4:\n r = n, g = s, b = a;\n break;\n case 5:\n r = a, g = s, b = n;\n }\n return [255 * r, 255 * g, 255 * b];\n }\n function C(t) {\n return i(w(t));\n }\n function I(t) {\n return n(w(t));\n }\n function D(t) {\n return s(w(t));\n }\n function A(t) {\n return l(w(t));\n }\n function T(t) {\n var e,\n a,\n i,\n n = t[0] / 100,\n o = t[1] / 100,\n r = t[2] / 100,\n s = t[3] / 100;\n return e = 1 - Math.min(1, n * (1 - s) + s), a = 1 - Math.min(1, o * (1 - s) + s), i = 1 - Math.min(1, r * (1 - s) + s), [255 * e, 255 * a, 255 * i];\n }\n function P(t) {\n return i(T(t));\n }\n function _(t) {\n return n(T(t));\n }\n function F(t) {\n return o(T(t));\n }\n function V(t) {\n return l(T(t));\n }\n function R(t) {\n var e,\n a,\n i,\n n = t[0] / 100,\n o = t[1] / 100,\n r = t[2] / 100;\n return e = 3.2406 * n + o * -1.5372 + r * -.4986, a = n * -.9689 + 1.8758 * o + .0415 * r, i = .0557 * n + o * -.204 + 1.057 * r, e = e > .0031308 ? 1.055 * Math.pow(e, 1 / 2.4) - .055 : e *= 12.92, a = a > .0031308 ? 1.055 * Math.pow(a, 1 / 2.4) - .055 : a *= 12.92, i = i > .0031308 ? 1.055 * Math.pow(i, 1 / 2.4) - .055 : i *= 12.92, e = Math.min(Math.max(0, e), 1), a = Math.min(Math.max(0, a), 1), i = Math.min(Math.max(0, i), 1), [255 * e, 255 * a, 255 * i];\n }\n function O(t) {\n var e,\n a,\n i,\n n = t[0],\n o = t[1],\n r = t[2];\n return n /= 95.047, o /= 100, r /= 108.883, n = n > .008856 ? Math.pow(n, 1 / 3) : 7.787 * n + 16 / 116, o = o > .008856 ? Math.pow(o, 1 / 3) : 7.787 * o + 16 / 116, r = r > .008856 ? Math.pow(r, 1 / 3) : 7.787 * r + 16 / 116, e = 116 * o - 16, a = 500 * (n - o), i = 200 * (o - r), [e, a, i];\n }\n function L(t) {\n return z(O(t));\n }\n function B(t) {\n var e,\n a,\n i,\n n,\n o = t[0],\n r = t[1],\n s = t[2];\n return o <= 8 ? (a = 100 * o / 903.3, n = 7.787 * (a / 100) + 16 / 116) : (a = 100 * Math.pow((o + 16) / 116, 3), n = Math.pow(a / 100, 1 / 3)), e = e / 95.047 <= .008856 ? e = 95.047 * (r / 500 + n - 16 / 116) / 7.787 : 95.047 * Math.pow(r / 500 + n, 3), i = i / 108.883 <= .008859 ? i = 108.883 * (n - s / 200 - 16 / 116) / 7.787 : 108.883 * Math.pow(n - s / 200, 3), [e, a, i];\n }\n function z(t) {\n var e,\n a,\n i,\n n = t[0],\n o = t[1],\n r = t[2];\n return e = Math.atan2(r, o), a = 360 * e / 2 / Math.PI, a < 0 && (a += 360), i = Math.sqrt(o * o + r * r), [n, i, a];\n }\n function W(t) {\n return R(B(t));\n }\n function N(t) {\n var e,\n a,\n i,\n n = t[0],\n o = t[1],\n r = t[2];\n return i = r / 360 * 2 * Math.PI, e = o * Math.cos(i), a = o * Math.sin(i), [n, e, a];\n }\n function E(t) {\n return B(N(t));\n }\n function H(t) {\n return W(N(t));\n }\n function j(t) {\n return G[t];\n }\n function U(t) {\n return i(j(t));\n }\n function q(t) {\n return n(j(t));\n }\n function Y(t) {\n return o(j(t));\n }\n function X(t) {\n return s(j(t));\n }\n function K(t) {\n return d(j(t));\n }\n function J(t) {\n return u(j(t));\n }\n e.exports = {\n rgb2hsl: i,\n rgb2hsv: n,\n rgb2hwb: o,\n rgb2cmyk: s,\n rgb2keyword: l,\n rgb2xyz: u,\n rgb2lab: d,\n rgb2lch: c,\n hsl2rgb: h,\n hsl2hsv: f,\n hsl2hwb: p,\n hsl2cmyk: m,\n hsl2keyword: v,\n hsv2rgb: x,\n hsv2hsl: y,\n hsv2hwb: k,\n hsv2cmyk: S,\n hsv2keyword: M,\n hwb2rgb: w,\n hwb2hsl: C,\n hwb2hsv: I,\n hwb2cmyk: D,\n hwb2keyword: A,\n cmyk2rgb: T,\n cmyk2hsl: P,\n cmyk2hsv: _,\n cmyk2hwb: F,\n cmyk2keyword: V,\n keyword2rgb: j,\n keyword2hsl: U,\n keyword2hsv: q,\n keyword2hwb: Y,\n keyword2cmyk: X,\n keyword2lab: K,\n keyword2xyz: J,\n xyz2rgb: R,\n xyz2lab: O,\n xyz2lch: L,\n lab2xyz: B,\n lab2rgb: W,\n lab2lch: z,\n lch2lab: N,\n lch2xyz: E,\n lch2rgb: H\n };\n var G = {\n aliceblue: [240, 248, 255],\n antiquewhite: [250, 235, 215],\n aqua: [0, 255, 255],\n aquamarine: [127, 255, 212],\n azure: [240, 255, 255],\n beige: [245, 245, 220],\n bisque: [255, 228, 196],\n black: [0, 0, 0],\n blanchedalmond: [255, 235, 205],\n blue: [0, 0, 255],\n blueviolet: [138, 43, 226],\n brown: [165, 42, 42],\n burlywood: [222, 184, 135],\n cadetblue: [95, 158, 160],\n chartreuse: [127, 255, 0],\n chocolate: [210, 105, 30],\n coral: [255, 127, 80],\n cornflowerblue: [100, 149, 237],\n cornsilk: [255, 248, 220],\n crimson: [220, 20, 60],\n cyan: [0, 255, 255],\n darkblue: [0, 0, 139],\n darkcyan: [0, 139, 139],\n darkgoldenrod: [184, 134, 11],\n darkgray: [169, 169, 169],\n darkgreen: [0, 100, 0],\n darkgrey: [169, 169, 169],\n darkkhaki: [189, 183, 107],\n darkmagenta: [139, 0, 139],\n darkolivegreen: [85, 107, 47],\n darkorange: [255, 140, 0],\n darkorchid: [153, 50, 204],\n darkred: [139, 0, 0],\n darksalmon: [233, 150, 122],\n darkseagreen: [143, 188, 143],\n darkslateblue: [72, 61, 139],\n darkslategray: [47, 79, 79],\n darkslategrey: [47, 79, 79],\n darkturquoise: [0, 206, 209],\n darkviolet: [148, 0, 211],\n deeppink: [255, 20, 147],\n deepskyblue: [0, 191, 255],\n dimgray: [105, 105, 105],\n dimgrey: [105, 105, 105],\n dodgerblue: [30, 144, 255],\n firebrick: [178, 34, 34],\n floralwhite: [255, 250, 240],\n forestgreen: [34, 139, 34],\n fuchsia: [255, 0, 255],\n gainsboro: [220, 220, 220],\n ghostwhite: [248, 248, 255],\n gold: [255, 215, 0],\n goldenrod: [218, 165, 32],\n gray: [128, 128, 128],\n green: [0, 128, 0],\n greenyellow: [173, 255, 47],\n grey: [128, 128, 128],\n honeydew: [240, 255, 240],\n hotpink: [255, 105, 180],\n indianred: [205, 92, 92],\n indigo: [75, 0, 130],\n ivory: [255, 255, 240],\n khaki: [240, 230, 140],\n lavender: [230, 230, 250],\n lavenderblush: [255, 240, 245],\n lawngreen: [124, 252, 0],\n lemonchiffon: [255, 250, 205],\n lightblue: [173, 216, 230],\n lightcoral: [240, 128, 128],\n lightcyan: [224, 255, 255],\n lightgoldenrodyellow: [250, 250, 210],\n lightgray: [211, 211, 211],\n lightgreen: [144, 238, 144],\n lightgrey: [211, 211, 211],\n lightpink: [255, 182, 193],\n lightsalmon: [255, 160, 122],\n lightseagreen: [32, 178, 170],\n lightskyblue: [135, 206, 250],\n lightslategray: [119, 136, 153],\n lightslategrey: [119, 136, 153],\n lightsteelblue: [176, 196, 222],\n lightyellow: [255, 255, 224],\n lime: [0, 255, 0],\n limegreen: [50, 205, 50],\n linen: [250, 240, 230],\n magenta: [255, 0, 255],\n maroon: [128, 0, 0],\n mediumaquamarine: [102, 205, 170],\n mediumblue: [0, 0, 205],\n mediumorchid: [186, 85, 211],\n mediumpurple: [147, 112, 219],\n mediumseagreen: [60, 179, 113],\n mediumslateblue: [123, 104, 238],\n mediumspringgreen: [0, 250, 154],\n mediumturquoise: [72, 209, 204],\n mediumvioletred: [199, 21, 133],\n midnightblue: [25, 25, 112],\n mintcream: [245, 255, 250],\n mistyrose: [255, 228, 225],\n moccasin: [255, 228, 181],\n navajowhite: [255, 222, 173],\n navy: [0, 0, 128],\n oldlace: [253, 245, 230],\n olive: [128, 128, 0],\n olivedrab: [107, 142, 35],\n orange: [255, 165, 0],\n orangered: [255, 69, 0],\n orchid: [218, 112, 214],\n palegoldenrod: [238, 232, 170],\n palegreen: [152, 251, 152],\n paleturquoise: [175, 238, 238],\n palevioletred: [219, 112, 147],\n papayawhip: [255, 239, 213],\n peachpuff: [255, 218, 185],\n peru: [205, 133, 63],\n pink: [255, 192, 203],\n plum: [221, 160, 221],\n powderblue: [176, 224, 230],\n purple: [128, 0, 128],\n rebeccapurple: [102, 51, 153],\n red: [255, 0, 0],\n rosybrown: [188, 143, 143],\n royalblue: [65, 105, 225],\n saddlebrown: [139, 69, 19],\n salmon: [250, 128, 114],\n sandybrown: [244, 164, 96],\n seagreen: [46, 139, 87],\n seashell: [255, 245, 238],\n sienna: [160, 82, 45],\n silver: [192, 192, 192],\n skyblue: [135, 206, 235],\n slateblue: [106, 90, 205],\n slategray: [112, 128, 144],\n slategrey: [112, 128, 144],\n snow: [255, 250, 250],\n springgreen: [0, 255, 127],\n steelblue: [70, 130, 180],\n tan: [210, 180, 140],\n teal: [0, 128, 128],\n thistle: [216, 191, 216],\n tomato: [255, 99, 71],\n turquoise: [64, 224, 208],\n violet: [238, 130, 238],\n wheat: [245, 222, 179],\n white: [255, 255, 255],\n whitesmoke: [245, 245, 245],\n yellow: [255, 255, 0],\n yellowgreen: [154, 205, 50]\n },\n Z = {};\n for (var Q in G) Z[JSON.stringify(G[Q])] = Q;\n }, {}],\n 5: [function (t, e, a) {\n var i = t(4),\n n = function n() {\n return new u();\n };\n for (var o in i) {\n n[o + \"Raw\"] = function (t) {\n return function (e) {\n return \"number\" == typeof e && (e = Array.prototype.slice.call(arguments)), i[t](e);\n };\n }(o);\n var r = /(\\w+)2(\\w+)/.exec(o),\n s = r[1],\n l = r[2];\n n[s] = n[s] || {}, n[s][l] = n[o] = function (t) {\n return function (e) {\n \"number\" == typeof e && (e = Array.prototype.slice.call(arguments));\n var a = i[t](e);\n if (\"string\" == typeof a || void 0 === a) return a;\n for (var n = 0; n < a.length; n++) a[n] = Math.round(a[n]);\n return a;\n };\n }(o);\n }\n var u = function u() {\n this.convs = {};\n };\n u.prototype.routeSpace = function (t, e) {\n var a = e[0];\n return void 0 === a ? this.getValues(t) : (\"number\" == typeof a && (a = Array.prototype.slice.call(e)), this.setValues(t, a));\n }, u.prototype.setValues = function (t, e) {\n return this.space = t, this.convs = {}, this.convs[t] = e, this;\n }, u.prototype.getValues = function (t) {\n var e = this.convs[t];\n if (!e) {\n var a = this.space,\n i = this.convs[a];\n e = n[a][t](i), this.convs[t] = e;\n }\n return e;\n }, [\"rgb\", \"hsl\", \"hsv\", \"cmyk\", \"keyword\"].forEach(function (t) {\n u.prototype[t] = function (e) {\n return this.routeSpace(t, arguments);\n };\n }), e.exports = n;\n }, {\n 4: 4\n }],\n 6: [function (t, e, a) {\n e.exports = {\n aliceblue: [240, 248, 255],\n antiquewhite: [250, 235, 215],\n aqua: [0, 255, 255],\n aquamarine: [127, 255, 212],\n azure: [240, 255, 255],\n beige: [245, 245, 220],\n bisque: [255, 228, 196],\n black: [0, 0, 0],\n blanchedalmond: [255, 235, 205],\n blue: [0, 0, 255],\n blueviolet: [138, 43, 226],\n brown: [165, 42, 42],\n burlywood: [222, 184, 135],\n cadetblue: [95, 158, 160],\n chartreuse: [127, 255, 0],\n chocolate: [210, 105, 30],\n coral: [255, 127, 80],\n cornflowerblue: [100, 149, 237],\n cornsilk: [255, 248, 220],\n crimson: [220, 20, 60],\n cyan: [0, 255, 255],\n darkblue: [0, 0, 139],\n darkcyan: [0, 139, 139],\n darkgoldenrod: [184, 134, 11],\n darkgray: [169, 169, 169],\n darkgreen: [0, 100, 0],\n darkgrey: [169, 169, 169],\n darkkhaki: [189, 183, 107],\n darkmagenta: [139, 0, 139],\n darkolivegreen: [85, 107, 47],\n darkorange: [255, 140, 0],\n darkorchid: [153, 50, 204],\n darkred: [139, 0, 0],\n darksalmon: [233, 150, 122],\n darkseagreen: [143, 188, 143],\n darkslateblue: [72, 61, 139],\n darkslategray: [47, 79, 79],\n darkslategrey: [47, 79, 79],\n darkturquoise: [0, 206, 209],\n darkviolet: [148, 0, 211],\n deeppink: [255, 20, 147],\n deepskyblue: [0, 191, 255],\n dimgray: [105, 105, 105],\n dimgrey: [105, 105, 105],\n dodgerblue: [30, 144, 255],\n firebrick: [178, 34, 34],\n floralwhite: [255, 250, 240],\n forestgreen: [34, 139, 34],\n fuchsia: [255, 0, 255],\n gainsboro: [220, 220, 220],\n ghostwhite: [248, 248, 255],\n gold: [255, 215, 0],\n goldenrod: [218, 165, 32],\n gray: [128, 128, 128],\n green: [0, 128, 0],\n greenyellow: [173, 255, 47],\n grey: [128, 128, 128],\n honeydew: [240, 255, 240],\n hotpink: [255, 105, 180],\n indianred: [205, 92, 92],\n indigo: [75, 0, 130],\n ivory: [255, 255, 240],\n khaki: [240, 230, 140],\n lavender: [230, 230, 250],\n lavenderblush: [255, 240, 245],\n lawngreen: [124, 252, 0],\n lemonchiffon: [255, 250, 205],\n lightblue: [173, 216, 230],\n lightcoral: [240, 128, 128],\n lightcyan: [224, 255, 255],\n lightgoldenrodyellow: [250, 250, 210],\n lightgray: [211, 211, 211],\n lightgreen: [144, 238, 144],\n lightgrey: [211, 211, 211],\n lightpink: [255, 182, 193],\n lightsalmon: [255, 160, 122],\n lightseagreen: [32, 178, 170],\n lightskyblue: [135, 206, 250],\n lightslategray: [119, 136, 153],\n lightslategrey: [119, 136, 153],\n lightsteelblue: [176, 196, 222],\n lightyellow: [255, 255, 224],\n lime: [0, 255, 0],\n limegreen: [50, 205, 50],\n linen: [250, 240, 230],\n magenta: [255, 0, 255],\n maroon: [128, 0, 0],\n mediumaquamarine: [102, 205, 170],\n mediumblue: [0, 0, 205],\n mediumorchid: [186, 85, 211],\n mediumpurple: [147, 112, 219],\n mediumseagreen: [60, 179, 113],\n mediumslateblue: [123, 104, 238],\n mediumspringgreen: [0, 250, 154],\n mediumturquoise: [72, 209, 204],\n mediumvioletred: [199, 21, 133],\n midnightblue: [25, 25, 112],\n mintcream: [245, 255, 250],\n mistyrose: [255, 228, 225],\n moccasin: [255, 228, 181],\n navajowhite: [255, 222, 173],\n navy: [0, 0, 128],\n oldlace: [253, 245, 230],\n olive: [128, 128, 0],\n olivedrab: [107, 142, 35],\n orange: [255, 165, 0],\n orangered: [255, 69, 0],\n orchid: [218, 112, 214],\n palegoldenrod: [238, 232, 170],\n palegreen: [152, 251, 152],\n paleturquoise: [175, 238, 238],\n palevioletred: [219, 112, 147],\n papayawhip: [255, 239, 213],\n peachpuff: [255, 218, 185],\n peru: [205, 133, 63],\n pink: [255, 192, 203],\n plum: [221, 160, 221],\n powderblue: [176, 224, 230],\n purple: [128, 0, 128],\n rebeccapurple: [102, 51, 153],\n red: [255, 0, 0],\n rosybrown: [188, 143, 143],\n royalblue: [65, 105, 225],\n saddlebrown: [139, 69, 19],\n salmon: [250, 128, 114],\n sandybrown: [244, 164, 96],\n seagreen: [46, 139, 87],\n seashell: [255, 245, 238],\n sienna: [160, 82, 45],\n silver: [192, 192, 192],\n skyblue: [135, 206, 235],\n slateblue: [106, 90, 205],\n slategray: [112, 128, 144],\n slategrey: [112, 128, 144],\n snow: [255, 250, 250],\n springgreen: [0, 255, 127],\n steelblue: [70, 130, 180],\n tan: [210, 180, 140],\n teal: [0, 128, 128],\n thistle: [216, 191, 216],\n tomato: [255, 99, 71],\n turquoise: [64, 224, 208],\n violet: [238, 130, 238],\n wheat: [245, 222, 179],\n white: [255, 255, 255],\n whitesmoke: [245, 245, 245],\n yellow: [255, 255, 0],\n yellowgreen: [154, 205, 50]\n };\n }, {}],\n 7: [function (t, e, a) {\n var i = t(28)();\n t(26)(i), t(42)(i), t(22)(i), t(31)(i), t(25)(i), t(21)(i), t(23)(i), t(24)(i), t(29)(i), t(33)(i), t(34)(i), t(32)(i), t(35)(i), t(30)(i), t(27)(i), t(36)(i), t(37)(i), t(38)(i), t(39)(i), t(40)(i), t(45)(i), t(43)(i), t(44)(i), t(46)(i), t(47)(i), t(48)(i), t(15)(i), t(16)(i), t(17)(i), t(18)(i), t(19)(i), t(20)(i), t(8)(i), t(9)(i), t(10)(i), t(11)(i), t(12)(i), t(13)(i), t(14)(i), window.Chart = e.exports = i;\n }, {\n 10: 10,\n 11: 11,\n 12: 12,\n 13: 13,\n 14: 14,\n 15: 15,\n 16: 16,\n 17: 17,\n 18: 18,\n 19: 19,\n 20: 20,\n 21: 21,\n 22: 22,\n 23: 23,\n 24: 24,\n 25: 25,\n 26: 26,\n 27: 27,\n 28: 28,\n 29: 29,\n 30: 30,\n 31: 31,\n 32: 32,\n 33: 33,\n 34: 34,\n 35: 35,\n 36: 36,\n 37: 37,\n 38: 38,\n 39: 39,\n 40: 40,\n 42: 42,\n 43: 43,\n 44: 44,\n 45: 45,\n 46: 46,\n 47: 47,\n 48: 48,\n 8: 8,\n 9: 9\n }],\n 8: [function (t, e, a) {\n \"use strict\";\n\n e.exports = function (t) {\n t.Bar = function (e, a) {\n return a.type = \"bar\", new t(e, a);\n };\n };\n }, {}],\n 9: [function (t, e, a) {\n \"use strict\";\n\n e.exports = function (t) {\n t.Bubble = function (e, a) {\n return a.type = \"bubble\", new t(e, a);\n };\n };\n }, {}],\n 10: [function (t, e, a) {\n \"use strict\";\n\n e.exports = function (t) {\n t.Doughnut = function (e, a) {\n return a.type = \"doughnut\", new t(e, a);\n };\n };\n }, {}],\n 11: [function (t, e, a) {\n \"use strict\";\n\n e.exports = function (t) {\n t.Line = function (e, a) {\n return a.type = \"line\", new t(e, a);\n };\n };\n }, {}],\n 12: [function (t, e, a) {\n \"use strict\";\n\n e.exports = function (t) {\n t.PolarArea = function (e, a) {\n return a.type = \"polarArea\", new t(e, a);\n };\n };\n }, {}],\n 13: [function (t, e, a) {\n \"use strict\";\n\n e.exports = function (t) {\n t.Radar = function (e, a) {\n return a.type = \"radar\", new t(e, a);\n };\n };\n }, {}],\n 14: [function (t, e, a) {\n \"use strict\";\n\n e.exports = function (t) {\n var e = {\n hover: {\n mode: \"single\"\n },\n scales: {\n xAxes: [{\n type: \"linear\",\n position: \"bottom\",\n id: \"x-axis-1\"\n }],\n yAxes: [{\n type: \"linear\",\n position: \"left\",\n id: \"y-axis-1\"\n }]\n },\n tooltips: {\n callbacks: {\n title: function title() {\n return \"\";\n },\n label: function label(t) {\n return \"(\" + t.xLabel + \", \" + t.yLabel + \")\";\n }\n }\n }\n };\n t.defaults.scatter = e, t.controllers.scatter = t.controllers.line, t.Scatter = function (e, a) {\n return a.type = \"scatter\", new t(e, a);\n };\n };\n }, {}],\n 15: [function (t, e, a) {\n \"use strict\";\n\n e.exports = function (t) {\n var e = t.helpers;\n t.defaults.bar = {\n hover: {\n mode: \"label\"\n },\n scales: {\n xAxes: [{\n type: \"category\",\n categoryPercentage: .8,\n barPercentage: .9,\n gridLines: {\n offsetGridLines: !0\n }\n }],\n yAxes: [{\n type: \"linear\"\n }]\n }\n }, t.controllers.bar = t.DatasetController.extend({\n dataElementType: t.elements.Rectangle,\n initialize: function initialize(e, a) {\n t.DatasetController.prototype.initialize.call(this, e, a);\n var i = this,\n n = i.getMeta(),\n o = i.getDataset();\n n.stack = o.stack, n.bar = !0;\n },\n getStackCount: function getStackCount() {\n var t = this,\n a = t.getMeta(),\n i = t.getScaleForId(a.yAxisID),\n n = [];\n return e.each(t.chart.data.datasets, function (e, a) {\n var o = t.chart.getDatasetMeta(a);\n o.bar && t.chart.isDatasetVisible(a) && (i.options.stacked === !1 || i.options.stacked === !0 && n.indexOf(o.stack) === -1 || void 0 === i.options.stacked && (void 0 === o.stack || n.indexOf(o.stack) === -1)) && n.push(o.stack);\n }, t), n.length;\n },\n update: function update(t) {\n var a = this;\n e.each(a.getMeta().data, function (e, i) {\n a.updateElement(e, i, t);\n }, a);\n },\n updateElement: function updateElement(t, a, i) {\n var n = this,\n o = n.getMeta(),\n r = n.getScaleForId(o.xAxisID),\n s = n.getScaleForId(o.yAxisID),\n l = s.getBasePixel(),\n u = n.chart.options.elements.rectangle,\n d = t.custom || {},\n c = n.getDataset();\n t._xScale = r, t._yScale = s, t._datasetIndex = n.index, t._index = a;\n var h = n.getRuler(a);\n t._model = {\n x: n.calculateBarX(a, n.index, h),\n y: i ? l : n.calculateBarY(a, n.index),\n label: n.chart.data.labels[a],\n datasetLabel: c.label,\n horizontal: !1,\n base: i ? l : n.calculateBarBase(n.index, a),\n width: n.calculateBarWidth(h),\n backgroundColor: d.backgroundColor ? d.backgroundColor : e.getValueAtIndexOrDefault(c.backgroundColor, a, u.backgroundColor),\n borderSkipped: d.borderSkipped ? d.borderSkipped : u.borderSkipped,\n borderColor: d.borderColor ? d.borderColor : e.getValueAtIndexOrDefault(c.borderColor, a, u.borderColor),\n borderWidth: d.borderWidth ? d.borderWidth : e.getValueAtIndexOrDefault(c.borderWidth, a, u.borderWidth)\n }, t.pivot();\n },\n calculateBarBase: function calculateBarBase(t, e) {\n var a = this,\n i = a.getMeta(),\n n = a.getScaleForId(i.yAxisID),\n o = n.getBaseValue(),\n r = o;\n if (n.options.stacked === !0 || void 0 === n.options.stacked && void 0 !== i.stack) {\n for (var s = a.chart, l = s.data.datasets, u = Number(l[t].data[e]), d = 0; d < t; d++) {\n var c = l[d],\n h = s.getDatasetMeta(d);\n if (h.bar && h.yAxisID === n.id && s.isDatasetVisible(d) && i.stack === h.stack) {\n var f = Number(c.data[e]);\n o += u < 0 ? Math.min(f, r) : Math.max(f, r);\n }\n }\n return n.getPixelForValue(o);\n }\n return n.getBasePixel();\n },\n getRuler: function getRuler() {\n var t = this,\n e = t.getMeta(),\n a = t.getScaleForId(e.xAxisID),\n i = t.getStackCount(),\n n = a.width / a.ticks.length,\n o = n * a.options.categoryPercentage,\n r = (n - n * a.options.categoryPercentage) / 2,\n s = o / i,\n l = s * a.options.barPercentage,\n u = s - s * a.options.barPercentage;\n return {\n stackCount: i,\n tickWidth: n,\n categoryWidth: o,\n categorySpacing: r,\n fullBarWidth: s,\n barWidth: l,\n barSpacing: u\n };\n },\n calculateBarWidth: function calculateBarWidth(t) {\n var e = this,\n a = e.getMeta(),\n i = e.getScaleForId(a.xAxisID);\n return i.options.barThickness ? i.options.barThickness : t.barWidth;\n },\n getStackIndex: function getStackIndex(t) {\n var e,\n a,\n i = this,\n n = i.chart.getDatasetMeta(t),\n o = i.getScaleForId(n.yAxisID),\n r = [n.stack];\n for (a = 0; a < t; ++a) e = this.chart.getDatasetMeta(a), e.bar && this.chart.isDatasetVisible(a) && (o.options.stacked === !1 || o.options.stacked === !0 && r.indexOf(e.stack) === -1 || void 0 === o.options.stacked && (void 0 === e.stack || r.indexOf(e.stack) === -1)) && r.push(e.stack);\n return r.length - 1;\n },\n calculateBarX: function calculateBarX(t, e, a) {\n var i = this,\n n = i.getMeta(),\n o = i.getScaleForId(n.xAxisID),\n r = i.getStackIndex(e),\n s = o.getPixelForValue(null, t, e, i.chart.isCombo);\n return s -= i.chart.isCombo ? a.tickWidth / 2 : 0, s + a.barWidth / 2 + a.categorySpacing + a.barWidth * r + a.barSpacing / 2 + a.barSpacing * r;\n },\n calculateBarY: function calculateBarY(t, e) {\n var a = this,\n i = a.getMeta(),\n n = a.getScaleForId(i.yAxisID),\n o = Number(a.getDataset().data[t]);\n if (n.options.stacked || void 0 === n.options.stacked && void 0 !== i.stack) {\n for (var r = n.getBaseValue(), s = r, l = r, u = 0; u < e; u++) {\n var d = a.chart.data.datasets[u],\n c = a.chart.getDatasetMeta(u);\n if (c.bar && c.yAxisID === n.id && a.chart.isDatasetVisible(u) && i.stack === c.stack) {\n var h = Number(d.data[t]);\n h < 0 ? l += h || 0 : s += h || 0;\n }\n }\n return o < 0 ? n.getPixelForValue(l + o) : n.getPixelForValue(s + o);\n }\n return n.getPixelForValue(o);\n },\n draw: function draw(e) {\n var a,\n i,\n n = this,\n o = e || 1,\n r = n.getMeta().data,\n s = n.getDataset();\n for (t.canvasHelpers.clipArea(n.chart.chart.ctx, n.chart.chartArea), a = 0, i = r.length; a < i; ++a) {\n var l = s.data[a];\n null === l || void 0 === l || isNaN(l) || r[a].transition(o).draw();\n }\n t.canvasHelpers.unclipArea(n.chart.chart.ctx);\n },\n setHoverStyle: function setHoverStyle(t) {\n var a = this.chart.data.datasets[t._datasetIndex],\n i = t._index,\n n = t.custom || {},\n o = t._model;\n o.backgroundColor = n.hoverBackgroundColor ? n.hoverBackgroundColor : e.getValueAtIndexOrDefault(a.hoverBackgroundColor, i, e.getHoverColor(o.backgroundColor)), o.borderColor = n.hoverBorderColor ? n.hoverBorderColor : e.getValueAtIndexOrDefault(a.hoverBorderColor, i, e.getHoverColor(o.borderColor)), o.borderWidth = n.hoverBorderWidth ? n.hoverBorderWidth : e.getValueAtIndexOrDefault(a.hoverBorderWidth, i, o.borderWidth);\n },\n removeHoverStyle: function removeHoverStyle(t) {\n var a = this.chart.data.datasets[t._datasetIndex],\n i = t._index,\n n = t.custom || {},\n o = t._model,\n r = this.chart.options.elements.rectangle;\n o.backgroundColor = n.backgroundColor ? n.backgroundColor : e.getValueAtIndexOrDefault(a.backgroundColor, i, r.backgroundColor), o.borderColor = n.borderColor ? n.borderColor : e.getValueAtIndexOrDefault(a.borderColor, i, r.borderColor), o.borderWidth = n.borderWidth ? n.borderWidth : e.getValueAtIndexOrDefault(a.borderWidth, i, r.borderWidth);\n }\n }), t.defaults.horizontalBar = {\n hover: {\n mode: \"label\"\n },\n scales: {\n xAxes: [{\n type: \"linear\",\n position: \"bottom\"\n }],\n yAxes: [{\n position: \"left\",\n type: \"category\",\n categoryPercentage: .8,\n barPercentage: .9,\n gridLines: {\n offsetGridLines: !0\n }\n }]\n },\n elements: {\n rectangle: {\n borderSkipped: \"left\"\n }\n },\n tooltips: {\n callbacks: {\n title: function title(t, e) {\n var a = \"\";\n return t.length > 0 && (t[0].yLabel ? a = t[0].yLabel : e.labels.length > 0 && t[0].index < e.labels.length && (a = e.labels[t[0].index])), a;\n },\n label: function label(t, e) {\n var a = e.datasets[t.datasetIndex].label || \"\";\n return a + \": \" + t.xLabel;\n }\n }\n }\n }, t.controllers.horizontalBar = t.controllers.bar.extend({\n getStackCount: function getStackCount() {\n var t = this,\n a = t.getMeta(),\n i = t.getScaleForId(a.xAxisID),\n n = [];\n return e.each(t.chart.data.datasets, function (e, a) {\n var o = t.chart.getDatasetMeta(a);\n o.bar && t.chart.isDatasetVisible(a) && (i.options.stacked === !1 || i.options.stacked === !0 && n.indexOf(o.stack) === -1 || void 0 === i.options.stacked && (void 0 === o.stack || n.indexOf(o.stack) === -1)) && n.push(o.stack);\n }, t), n.length;\n },\n updateElement: function updateElement(t, a, i) {\n var n = this,\n o = n.getMeta(),\n r = n.getScaleForId(o.xAxisID),\n s = n.getScaleForId(o.yAxisID),\n l = r.getBasePixel(),\n u = t.custom || {},\n d = n.getDataset(),\n c = n.chart.options.elements.rectangle;\n t._xScale = r, t._yScale = s, t._datasetIndex = n.index, t._index = a;\n var h = n.getRuler(a);\n t._model = {\n x: i ? l : n.calculateBarX(a, n.index),\n y: n.calculateBarY(a, n.index, h),\n label: n.chart.data.labels[a],\n datasetLabel: d.label,\n horizontal: !0,\n base: i ? l : n.calculateBarBase(n.index, a),\n height: n.calculateBarHeight(h),\n backgroundColor: u.backgroundColor ? u.backgroundColor : e.getValueAtIndexOrDefault(d.backgroundColor, a, c.backgroundColor),\n borderSkipped: u.borderSkipped ? u.borderSkipped : c.borderSkipped,\n borderColor: u.borderColor ? u.borderColor : e.getValueAtIndexOrDefault(d.borderColor, a, c.borderColor),\n borderWidth: u.borderWidth ? u.borderWidth : e.getValueAtIndexOrDefault(d.borderWidth, a, c.borderWidth)\n }, t.pivot();\n },\n calculateBarBase: function calculateBarBase(t, e) {\n var a = this,\n i = a.getMeta(),\n n = a.getScaleForId(i.xAxisID),\n o = n.getBaseValue(),\n r = o;\n if (n.options.stacked || void 0 === n.options.stacked && void 0 !== i.stack) {\n for (var s = a.chart, l = s.data.datasets, u = Number(l[t].data[e]), d = 0; d < t; d++) {\n var c = l[d],\n h = s.getDatasetMeta(d);\n if (h.bar && h.xAxisID === n.id && s.isDatasetVisible(d) && i.stack === h.stack) {\n var f = Number(c.data[e]);\n o += u < 0 ? Math.min(f, r) : Math.max(f, r);\n }\n }\n return n.getPixelForValue(o);\n }\n return n.getBasePixel();\n },\n getRuler: function getRuler() {\n var t = this,\n e = t.getMeta(),\n a = t.getScaleForId(e.yAxisID),\n i = t.getStackCount(),\n n = a.height / a.ticks.length,\n o = n * a.options.categoryPercentage,\n r = (n - n * a.options.categoryPercentage) / 2,\n s = o / i,\n l = s * a.options.barPercentage,\n u = s - s * a.options.barPercentage;\n return {\n stackCount: i,\n tickHeight: n,\n categoryHeight: o,\n categorySpacing: r,\n fullBarHeight: s,\n barHeight: l,\n barSpacing: u\n };\n },\n calculateBarHeight: function calculateBarHeight(t) {\n var e = this,\n a = e.getMeta(),\n i = e.getScaleForId(a.yAxisID);\n return i.options.barThickness ? i.options.barThickness : t.barHeight;\n },\n getStackIndex: function getStackIndex(t) {\n var e,\n a,\n i = this,\n n = i.chart.getDatasetMeta(t),\n o = i.getScaleForId(n.xAxisID),\n r = [n.stack];\n for (a = 0; a < t; ++a) e = this.chart.getDatasetMeta(a), e.bar && this.chart.isDatasetVisible(a) && (o.options.stacked === !1 || o.options.stacked === !0 && r.indexOf(e.stack) === -1 || void 0 === o.options.stacked && (void 0 === e.stack || r.indexOf(e.stack) === -1)) && r.push(e.stack);\n return r.length - 1;\n },\n calculateBarX: function calculateBarX(t, e) {\n var a = this,\n i = a.getMeta(),\n n = a.getScaleForId(i.xAxisID),\n o = Number(a.getDataset().data[t]);\n if (n.options.stacked || void 0 === n.options.stacked && void 0 !== i.stack) {\n for (var r = n.getBaseValue(), s = r, l = r, u = 0; u < e; u++) {\n var d = a.chart.data.datasets[u],\n c = a.chart.getDatasetMeta(u);\n if (c.bar && c.xAxisID === n.id && a.chart.isDatasetVisible(u) && i.stack === c.stack) {\n var h = Number(d.data[t]);\n h < 0 ? l += h || 0 : s += h || 0;\n }\n }\n return o < 0 ? n.getPixelForValue(l + o) : n.getPixelForValue(s + o);\n }\n return n.getPixelForValue(o);\n },\n calculateBarY: function calculateBarY(t, e, a) {\n var i = this,\n n = i.getMeta(),\n o = i.getScaleForId(n.yAxisID),\n r = i.getStackIndex(e),\n s = o.getPixelForValue(null, t, e, i.chart.isCombo);\n return s -= i.chart.isCombo ? a.tickHeight / 2 : 0, s + a.barHeight / 2 + a.categorySpacing + a.barHeight * r + a.barSpacing / 2 + a.barSpacing * r;\n }\n });\n };\n }, {}],\n 16: [function (t, e, a) {\n \"use strict\";\n\n e.exports = function (t) {\n var e = t.helpers;\n t.defaults.bubble = {\n hover: {\n mode: \"single\"\n },\n scales: {\n xAxes: [{\n type: \"linear\",\n position: \"bottom\",\n id: \"x-axis-0\"\n }],\n yAxes: [{\n type: \"linear\",\n position: \"left\",\n id: \"y-axis-0\"\n }]\n },\n tooltips: {\n callbacks: {\n title: function title() {\n return \"\";\n },\n label: function label(t, e) {\n var a = e.datasets[t.datasetIndex].label || \"\",\n i = e.datasets[t.datasetIndex].data[t.index];\n return a + \": (\" + t.xLabel + \", \" + t.yLabel + \", \" + i.r + \")\";\n }\n }\n }\n }, t.controllers.bubble = t.DatasetController.extend({\n dataElementType: t.elements.Point,\n update: function update(t) {\n var a = this,\n i = a.getMeta(),\n n = i.data;\n e.each(n, function (e, i) {\n a.updateElement(e, i, t);\n });\n },\n updateElement: function updateElement(a, i, n) {\n var o = this,\n r = o.getMeta(),\n s = o.getScaleForId(r.xAxisID),\n l = o.getScaleForId(r.yAxisID),\n u = a.custom || {},\n d = o.getDataset(),\n c = d.data[i],\n h = o.chart.options.elements.point,\n f = o.index;\n e.extend(a, {\n _xScale: s,\n _yScale: l,\n _datasetIndex: f,\n _index: i,\n _model: {\n x: n ? s.getPixelForDecimal(.5) : s.getPixelForValue(\"object\" == _typeof(c) ? c : NaN, i, f, o.chart.isCombo),\n y: n ? l.getBasePixel() : l.getPixelForValue(c, i, f),\n radius: n ? 0 : u.radius ? u.radius : o.getRadius(c),\n hitRadius: u.hitRadius ? u.hitRadius : e.getValueAtIndexOrDefault(d.hitRadius, i, h.hitRadius)\n }\n }), t.DatasetController.prototype.removeHoverStyle.call(o, a, h);\n var g = a._model;\n g.skip = u.skip ? u.skip : isNaN(g.x) || isNaN(g.y), a.pivot();\n },\n getRadius: function getRadius(t) {\n return t.r || this.chart.options.elements.point.radius;\n },\n setHoverStyle: function setHoverStyle(a) {\n var i = this;\n t.DatasetController.prototype.setHoverStyle.call(i, a);\n var n = i.chart.data.datasets[a._datasetIndex],\n o = a._index,\n r = a.custom || {},\n s = a._model;\n s.radius = r.hoverRadius ? r.hoverRadius : e.getValueAtIndexOrDefault(n.hoverRadius, o, i.chart.options.elements.point.hoverRadius) + i.getRadius(n.data[o]);\n },\n removeHoverStyle: function removeHoverStyle(e) {\n var a = this;\n t.DatasetController.prototype.removeHoverStyle.call(a, e, a.chart.options.elements.point);\n var i = a.chart.data.datasets[e._datasetIndex].data[e._index],\n n = e.custom || {},\n o = e._model;\n o.radius = n.radius ? n.radius : a.getRadius(i);\n }\n });\n };\n }, {}],\n 17: [function (t, e, a) {\n \"use strict\";\n\n e.exports = function (t) {\n var e = t.helpers,\n a = t.defaults;\n a.doughnut = {\n animation: {\n animateRotate: !0,\n animateScale: !1\n },\n aspectRatio: 1,\n hover: {\n mode: \"single\"\n },\n legendCallback: function legendCallback(t) {\n var e = [];\n e.push('
      ');\n var a = t.data,\n i = a.datasets,\n n = a.labels;\n if (i.length) for (var o = 0; o < i[0].data.length; ++o) e.push('
    • '), n[o] && e.push(n[o]), e.push(\"
    • \");\n return e.push(\"
    \"), e.join(\"\");\n },\n legend: {\n labels: {\n generateLabels: function generateLabels(t) {\n var a = t.data;\n return a.labels.length && a.datasets.length ? a.labels.map(function (i, n) {\n var o = t.getDatasetMeta(0),\n r = a.datasets[0],\n s = o.data[n],\n l = s && s.custom || {},\n u = e.getValueAtIndexOrDefault,\n d = t.options.elements.arc,\n c = l.backgroundColor ? l.backgroundColor : u(r.backgroundColor, n, d.backgroundColor),\n h = l.borderColor ? l.borderColor : u(r.borderColor, n, d.borderColor),\n f = l.borderWidth ? l.borderWidth : u(r.borderWidth, n, d.borderWidth);\n return {\n text: i,\n fillStyle: c,\n strokeStyle: h,\n lineWidth: f,\n hidden: isNaN(r.data[n]) || o.data[n].hidden,\n index: n\n };\n }) : [];\n }\n },\n onClick: function onClick(t, e) {\n var a,\n i,\n n,\n o = e.index,\n r = this.chart;\n for (a = 0, i = (r.data.datasets || []).length; a < i; ++a) n = r.getDatasetMeta(a), n.data[o] && (n.data[o].hidden = !n.data[o].hidden);\n r.update();\n }\n },\n cutoutPercentage: 50,\n rotation: Math.PI * -.5,\n circumference: 2 * Math.PI,\n tooltips: {\n callbacks: {\n title: function title() {\n return \"\";\n },\n label: function label(t, a) {\n var i = a.labels[t.index],\n n = \": \" + a.datasets[t.datasetIndex].data[t.index];\n return e.isArray(i) ? (i = i.slice(), i[0] += n) : i += n, i;\n }\n }\n }\n }, a.pie = e.clone(a.doughnut), e.extend(a.pie, {\n cutoutPercentage: 0\n }), t.controllers.doughnut = t.controllers.pie = t.DatasetController.extend({\n dataElementType: t.elements.Arc,\n linkScales: e.noop,\n getRingIndex: function getRingIndex(t) {\n for (var e = 0, a = 0; a < t; ++a) this.chart.isDatasetVisible(a) && ++e;\n return e;\n },\n update: function update(t) {\n var a = this,\n i = a.chart,\n n = i.chartArea,\n o = i.options,\n r = o.elements.arc,\n s = n.right - n.left - r.borderWidth,\n l = n.bottom - n.top - r.borderWidth,\n u = Math.min(s, l),\n d = {\n x: 0,\n y: 0\n },\n c = a.getMeta(),\n h = o.cutoutPercentage,\n f = o.circumference;\n if (f < 2 * Math.PI) {\n var g = o.rotation % (2 * Math.PI);\n g += 2 * Math.PI * (g >= Math.PI ? -1 : g < -Math.PI ? 1 : 0);\n var p = g + f,\n m = {\n x: Math.cos(g),\n y: Math.sin(g)\n },\n v = {\n x: Math.cos(p),\n y: Math.sin(p)\n },\n b = g <= 0 && 0 <= p || g <= 2 * Math.PI && 2 * Math.PI <= p,\n x = g <= .5 * Math.PI && .5 * Math.PI <= p || g <= 2.5 * Math.PI && 2.5 * Math.PI <= p,\n y = g <= -Math.PI && -Math.PI <= p || g <= Math.PI && Math.PI <= p,\n k = g <= .5 * -Math.PI && .5 * -Math.PI <= p || g <= 1.5 * Math.PI && 1.5 * Math.PI <= p,\n S = h / 100,\n M = {\n x: y ? -1 : Math.min(m.x * (m.x < 0 ? 1 : S), v.x * (v.x < 0 ? 1 : S)),\n y: k ? -1 : Math.min(m.y * (m.y < 0 ? 1 : S), v.y * (v.y < 0 ? 1 : S))\n },\n w = {\n x: b ? 1 : Math.max(m.x * (m.x > 0 ? 1 : S), v.x * (v.x > 0 ? 1 : S)),\n y: x ? 1 : Math.max(m.y * (m.y > 0 ? 1 : S), v.y * (v.y > 0 ? 1 : S))\n },\n C = {\n width: .5 * (w.x - M.x),\n height: .5 * (w.y - M.y)\n };\n u = Math.min(s / C.width, l / C.height), d = {\n x: (w.x + M.x) * -.5,\n y: (w.y + M.y) * -.5\n };\n }\n i.borderWidth = a.getMaxBorderWidth(c.data), i.outerRadius = Math.max((u - i.borderWidth) / 2, 0), i.innerRadius = Math.max(h ? i.outerRadius / 100 * h : 0, 0), i.radiusLength = (i.outerRadius - i.innerRadius) / i.getVisibleDatasetCount(), i.offsetX = d.x * i.outerRadius, i.offsetY = d.y * i.outerRadius, c.total = a.calculateTotal(), a.outerRadius = i.outerRadius - i.radiusLength * a.getRingIndex(a.index), a.innerRadius = Math.max(a.outerRadius - i.radiusLength, 0), e.each(c.data, function (e, i) {\n a.updateElement(e, i, t);\n });\n },\n updateElement: function updateElement(t, a, i) {\n var n = this,\n o = n.chart,\n r = o.chartArea,\n s = o.options,\n l = s.animation,\n u = (r.left + r.right) / 2,\n d = (r.top + r.bottom) / 2,\n c = s.rotation,\n h = s.rotation,\n f = n.getDataset(),\n g = i && l.animateRotate ? 0 : t.hidden ? 0 : n.calculateCircumference(f.data[a]) * (s.circumference / (2 * Math.PI)),\n p = i && l.animateScale ? 0 : n.innerRadius,\n m = i && l.animateScale ? 0 : n.outerRadius,\n v = e.getValueAtIndexOrDefault;\n e.extend(t, {\n _datasetIndex: n.index,\n _index: a,\n _model: {\n x: u + o.offsetX,\n y: d + o.offsetY,\n startAngle: c,\n endAngle: h,\n circumference: g,\n outerRadius: m,\n innerRadius: p,\n label: v(f.label, a, o.data.labels[a])\n }\n });\n var b = t._model;\n this.removeHoverStyle(t), i && l.animateRotate || (0 === a ? b.startAngle = s.rotation : b.startAngle = n.getMeta().data[a - 1]._model.endAngle, b.endAngle = b.startAngle + b.circumference), t.pivot();\n },\n removeHoverStyle: function removeHoverStyle(e) {\n t.DatasetController.prototype.removeHoverStyle.call(this, e, this.chart.options.elements.arc);\n },\n calculateTotal: function calculateTotal() {\n var t,\n a = this.getDataset(),\n i = this.getMeta(),\n n = 0;\n return e.each(i.data, function (e, i) {\n t = a.data[i], isNaN(t) || e.hidden || (n += Math.abs(t));\n }), n;\n },\n calculateCircumference: function calculateCircumference(t) {\n var e = this.getMeta().total;\n return e > 0 && !isNaN(t) ? 2 * Math.PI * (t / e) : 0;\n },\n getMaxBorderWidth: function getMaxBorderWidth(t) {\n for (var e, a, i = 0, n = this.index, o = t.length, r = 0; r < o; r++) e = t[r]._model ? t[r]._model.borderWidth : 0, a = t[r]._chart ? t[r]._chart.config.data.datasets[n].hoverBorderWidth : 0, i = e > i ? e : i, i = a > i ? a : i;\n return i;\n }\n });\n };\n }, {}],\n 18: [function (t, e, a) {\n \"use strict\";\n\n e.exports = function (t) {\n function e(t, e) {\n return a.getValueOrDefault(t.showLine, e.showLines);\n }\n var a = t.helpers;\n t.defaults.line = {\n showLines: !0,\n spanGaps: !1,\n hover: {\n mode: \"label\"\n },\n scales: {\n xAxes: [{\n type: \"category\",\n id: \"x-axis-0\"\n }],\n yAxes: [{\n type: \"linear\",\n id: \"y-axis-0\"\n }]\n }\n }, t.controllers.line = t.DatasetController.extend({\n datasetElementType: t.elements.Line,\n dataElementType: t.elements.Point,\n update: function update(t) {\n var i,\n n,\n o,\n r = this,\n s = r.getMeta(),\n l = s.dataset,\n u = s.data || [],\n d = r.chart.options,\n c = d.elements.line,\n h = r.getScaleForId(s.yAxisID),\n f = r.getDataset(),\n g = e(f, d);\n for (g && (o = l.custom || {}, void 0 !== f.tension && void 0 === f.lineTension && (f.lineTension = f.tension), l._scale = h, l._datasetIndex = r.index, l._children = u, l._model = {\n spanGaps: f.spanGaps ? f.spanGaps : d.spanGaps,\n tension: o.tension ? o.tension : a.getValueOrDefault(f.lineTension, c.tension),\n backgroundColor: o.backgroundColor ? o.backgroundColor : f.backgroundColor || c.backgroundColor,\n borderWidth: o.borderWidth ? o.borderWidth : f.borderWidth || c.borderWidth,\n borderColor: o.borderColor ? o.borderColor : f.borderColor || c.borderColor,\n borderCapStyle: o.borderCapStyle ? o.borderCapStyle : f.borderCapStyle || c.borderCapStyle,\n borderDash: o.borderDash ? o.borderDash : f.borderDash || c.borderDash,\n borderDashOffset: o.borderDashOffset ? o.borderDashOffset : f.borderDashOffset || c.borderDashOffset,\n borderJoinStyle: o.borderJoinStyle ? o.borderJoinStyle : f.borderJoinStyle || c.borderJoinStyle,\n fill: o.fill ? o.fill : void 0 !== f.fill ? f.fill : c.fill,\n steppedLine: o.steppedLine ? o.steppedLine : a.getValueOrDefault(f.steppedLine, c.stepped),\n cubicInterpolationMode: o.cubicInterpolationMode ? o.cubicInterpolationMode : a.getValueOrDefault(f.cubicInterpolationMode, c.cubicInterpolationMode),\n scaleTop: h.top,\n scaleBottom: h.bottom,\n scaleZero: h.getBasePixel()\n }, l.pivot()), i = 0, n = u.length; i < n; ++i) r.updateElement(u[i], i, t);\n for (g && 0 !== l._model.tension && r.updateBezierControlPoints(), i = 0, n = u.length; i < n; ++i) u[i].pivot();\n },\n getPointBackgroundColor: function getPointBackgroundColor(t, e) {\n var i = this.chart.options.elements.point.backgroundColor,\n n = this.getDataset(),\n o = t.custom || {};\n return o.backgroundColor ? i = o.backgroundColor : n.pointBackgroundColor ? i = a.getValueAtIndexOrDefault(n.pointBackgroundColor, e, i) : n.backgroundColor && (i = n.backgroundColor), i;\n },\n getPointBorderColor: function getPointBorderColor(t, e) {\n var i = this.chart.options.elements.point.borderColor,\n n = this.getDataset(),\n o = t.custom || {};\n return o.borderColor ? i = o.borderColor : n.pointBorderColor ? i = a.getValueAtIndexOrDefault(n.pointBorderColor, e, i) : n.borderColor && (i = n.borderColor), i;\n },\n getPointBorderWidth: function getPointBorderWidth(t, e) {\n var i = this.chart.options.elements.point.borderWidth,\n n = this.getDataset(),\n o = t.custom || {};\n return isNaN(o.borderWidth) ? isNaN(n.pointBorderWidth) ? isNaN(n.borderWidth) || (i = n.borderWidth) : i = a.getValueAtIndexOrDefault(n.pointBorderWidth, e, i) : i = o.borderWidth, i;\n },\n updateElement: function updateElement(t, e, i) {\n var n,\n o,\n r = this,\n s = r.getMeta(),\n l = t.custom || {},\n u = r.getDataset(),\n d = r.index,\n c = u.data[e],\n h = r.getScaleForId(s.yAxisID),\n f = r.getScaleForId(s.xAxisID),\n g = r.chart.options.elements.point,\n p = r.chart.data.labels || [],\n m = 1 === p.length || 1 === u.data.length || r.chart.isCombo;\n void 0 !== u.radius && void 0 === u.pointRadius && (u.pointRadius = u.radius), void 0 !== u.hitRadius && void 0 === u.pointHitRadius && (u.pointHitRadius = u.hitRadius), n = f.getPixelForValue(\"object\" == _typeof(c) ? c : NaN, e, d, m), o = i ? h.getBasePixel() : r.calculatePointY(c, e, d), t._xScale = f, t._yScale = h, t._datasetIndex = d, t._index = e, t._model = {\n x: n,\n y: o,\n skip: l.skip || isNaN(n) || isNaN(o),\n radius: l.radius || a.getValueAtIndexOrDefault(u.pointRadius, e, g.radius),\n pointStyle: l.pointStyle || a.getValueAtIndexOrDefault(u.pointStyle, e, g.pointStyle),\n backgroundColor: r.getPointBackgroundColor(t, e),\n borderColor: r.getPointBorderColor(t, e),\n borderWidth: r.getPointBorderWidth(t, e),\n tension: s.dataset._model ? s.dataset._model.tension : 0,\n steppedLine: !!s.dataset._model && s.dataset._model.steppedLine,\n hitRadius: l.hitRadius || a.getValueAtIndexOrDefault(u.pointHitRadius, e, g.hitRadius)\n };\n },\n calculatePointY: function calculatePointY(t, e, a) {\n var i,\n n,\n o,\n r = this,\n s = r.chart,\n l = r.getMeta(),\n u = r.getScaleForId(l.yAxisID),\n d = 0,\n c = 0;\n if (u.options.stacked) {\n for (i = 0; i < a; i++) if (n = s.data.datasets[i], o = s.getDatasetMeta(i), \"line\" === o.type && o.yAxisID === u.id && s.isDatasetVisible(i)) {\n var h = Number(u.getRightValue(n.data[e]));\n h < 0 ? c += h || 0 : d += h || 0;\n }\n var f = Number(u.getRightValue(t));\n return f < 0 ? u.getPixelForValue(c + f) : u.getPixelForValue(d + f);\n }\n return u.getPixelForValue(t);\n },\n updateBezierControlPoints: function updateBezierControlPoints() {\n function t(t, e, a) {\n return Math.max(Math.min(t, a), e);\n }\n var e,\n i,\n n,\n o,\n r,\n s = this,\n l = s.getMeta(),\n u = s.chart.chartArea,\n d = l.data || [];\n if (l.dataset._model.spanGaps && (d = d.filter(function (t) {\n return !t._model.skip;\n })), \"monotone\" === l.dataset._model.cubicInterpolationMode) a.splineCurveMonotone(d);else for (e = 0, i = d.length; e < i; ++e) n = d[e], o = n._model, r = a.splineCurve(a.previousItem(d, e)._model, o, a.nextItem(d, e)._model, l.dataset._model.tension), o.controlPointPreviousX = r.previous.x, o.controlPointPreviousY = r.previous.y, o.controlPointNextX = r.next.x, o.controlPointNextY = r.next.y;\n if (s.chart.options.elements.line.capBezierPoints) for (e = 0, i = d.length; e < i; ++e) o = d[e]._model, o.controlPointPreviousX = t(o.controlPointPreviousX, u.left, u.right), o.controlPointPreviousY = t(o.controlPointPreviousY, u.top, u.bottom), o.controlPointNextX = t(o.controlPointNextX, u.left, u.right), o.controlPointNextY = t(o.controlPointNextY, u.top, u.bottom);\n },\n draw: function draw(a) {\n var i,\n n,\n o = this,\n r = o.getMeta(),\n s = r.data || [],\n l = a || 1;\n for (i = 0, n = s.length; i < n; ++i) s[i].transition(l);\n for (t.canvasHelpers.clipArea(o.chart.chart.ctx, o.chart.chartArea), e(o.getDataset(), o.chart.options) && r.dataset.transition(l).draw(), t.canvasHelpers.unclipArea(o.chart.chart.ctx), i = 0, n = s.length; i < n; ++i) s[i].draw(o.chart.chartArea);\n },\n setHoverStyle: function setHoverStyle(t) {\n var e = this.chart.data.datasets[t._datasetIndex],\n i = t._index,\n n = t.custom || {},\n o = t._model;\n o.radius = n.hoverRadius || a.getValueAtIndexOrDefault(e.pointHoverRadius, i, this.chart.options.elements.point.hoverRadius), o.backgroundColor = n.hoverBackgroundColor || a.getValueAtIndexOrDefault(e.pointHoverBackgroundColor, i, a.getHoverColor(o.backgroundColor)), o.borderColor = n.hoverBorderColor || a.getValueAtIndexOrDefault(e.pointHoverBorderColor, i, a.getHoverColor(o.borderColor)), o.borderWidth = n.hoverBorderWidth || a.getValueAtIndexOrDefault(e.pointHoverBorderWidth, i, o.borderWidth);\n },\n removeHoverStyle: function removeHoverStyle(t) {\n var e = this,\n i = e.chart.data.datasets[t._datasetIndex],\n n = t._index,\n o = t.custom || {},\n r = t._model;\n void 0 !== i.radius && void 0 === i.pointRadius && (i.pointRadius = i.radius), r.radius = o.radius || a.getValueAtIndexOrDefault(i.pointRadius, n, e.chart.options.elements.point.radius), r.backgroundColor = e.getPointBackgroundColor(t, n), r.borderColor = e.getPointBorderColor(t, n), r.borderWidth = e.getPointBorderWidth(t, n);\n }\n });\n };\n }, {}],\n 19: [function (t, e, a) {\n \"use strict\";\n\n e.exports = function (t) {\n var e = t.helpers;\n t.defaults.polarArea = {\n scale: {\n type: \"radialLinear\",\n lineArc: !0,\n ticks: {\n beginAtZero: !0\n }\n },\n animation: {\n animateRotate: !0,\n animateScale: !0\n },\n startAngle: -.5 * Math.PI,\n aspectRatio: 1,\n legendCallback: function legendCallback(t) {\n var e = [];\n e.push('
      ');\n var a = t.data,\n i = a.datasets,\n n = a.labels;\n if (i.length) for (var o = 0; o < i[0].data.length; ++o) e.push('
    • '), n[o] && e.push(n[o]), e.push(\"
    • \");\n return e.push(\"
    \"), e.join(\"\");\n },\n legend: {\n labels: {\n generateLabels: function generateLabels(t) {\n var a = t.data;\n return a.labels.length && a.datasets.length ? a.labels.map(function (i, n) {\n var o = t.getDatasetMeta(0),\n r = a.datasets[0],\n s = o.data[n],\n l = s.custom || {},\n u = e.getValueAtIndexOrDefault,\n d = t.options.elements.arc,\n c = l.backgroundColor ? l.backgroundColor : u(r.backgroundColor, n, d.backgroundColor),\n h = l.borderColor ? l.borderColor : u(r.borderColor, n, d.borderColor),\n f = l.borderWidth ? l.borderWidth : u(r.borderWidth, n, d.borderWidth);\n return {\n text: i,\n fillStyle: c,\n strokeStyle: h,\n lineWidth: f,\n hidden: isNaN(r.data[n]) || o.data[n].hidden,\n index: n\n };\n }) : [];\n }\n },\n onClick: function onClick(t, e) {\n var a,\n i,\n n,\n o = e.index,\n r = this.chart;\n for (a = 0, i = (r.data.datasets || []).length; a < i; ++a) n = r.getDatasetMeta(a), n.data[o].hidden = !n.data[o].hidden;\n r.update();\n }\n },\n tooltips: {\n callbacks: {\n title: function title() {\n return \"\";\n },\n label: function label(t, e) {\n return e.labels[t.index] + \": \" + t.yLabel;\n }\n }\n }\n }, t.controllers.polarArea = t.DatasetController.extend({\n dataElementType: t.elements.Arc,\n linkScales: e.noop,\n update: function update(t) {\n var a = this,\n i = a.chart,\n n = i.chartArea,\n o = a.getMeta(),\n r = i.options,\n s = r.elements.arc,\n l = Math.min(n.right - n.left, n.bottom - n.top);\n i.outerRadius = Math.max((l - s.borderWidth / 2) / 2, 0), i.innerRadius = Math.max(r.cutoutPercentage ? i.outerRadius / 100 * r.cutoutPercentage : 1, 0), i.radiusLength = (i.outerRadius - i.innerRadius) / i.getVisibleDatasetCount(), a.outerRadius = i.outerRadius - i.radiusLength * a.index, a.innerRadius = a.outerRadius - i.radiusLength, o.count = a.countVisibleElements(), e.each(o.data, function (e, i) {\n a.updateElement(e, i, t);\n });\n },\n updateElement: function updateElement(t, a, i) {\n for (var n = this, o = n.chart, r = n.getDataset(), s = o.options, l = s.animation, u = o.scale, d = e.getValueAtIndexOrDefault, c = o.data.labels, h = n.calculateCircumference(r.data[a]), f = u.xCenter, g = u.yCenter, p = 0, m = n.getMeta(), v = 0; v < a; ++v) isNaN(r.data[v]) || m.data[v].hidden || ++p;\n var b = s.startAngle,\n x = t.hidden ? 0 : u.getDistanceFromCenterForValue(r.data[a]),\n y = b + h * p,\n k = y + (t.hidden ? 0 : h),\n S = l.animateScale ? 0 : u.getDistanceFromCenterForValue(r.data[a]);\n e.extend(t, {\n _datasetIndex: n.index,\n _index: a,\n _scale: u,\n _model: {\n x: f,\n y: g,\n innerRadius: 0,\n outerRadius: i ? S : x,\n startAngle: i && l.animateRotate ? b : y,\n endAngle: i && l.animateRotate ? b : k,\n label: d(c, a, c[a])\n }\n }), n.removeHoverStyle(t), t.pivot();\n },\n removeHoverStyle: function removeHoverStyle(e) {\n t.DatasetController.prototype.removeHoverStyle.call(this, e, this.chart.options.elements.arc);\n },\n countVisibleElements: function countVisibleElements() {\n var t = this.getDataset(),\n a = this.getMeta(),\n i = 0;\n return e.each(a.data, function (e, a) {\n isNaN(t.data[a]) || e.hidden || i++;\n }), i;\n },\n calculateCircumference: function calculateCircumference(t) {\n var e = this.getMeta().count;\n return e > 0 && !isNaN(t) ? 2 * Math.PI / e : 0;\n }\n });\n };\n }, {}],\n 20: [function (t, e, a) {\n \"use strict\";\n\n e.exports = function (t) {\n var e = t.helpers;\n t.defaults.radar = {\n aspectRatio: 1,\n scale: {\n type: \"radialLinear\"\n },\n elements: {\n line: {\n tension: 0\n }\n }\n }, t.controllers.radar = t.DatasetController.extend({\n datasetElementType: t.elements.Line,\n dataElementType: t.elements.Point,\n linkScales: e.noop,\n update: function update(t) {\n var a = this,\n i = a.getMeta(),\n n = i.dataset,\n o = i.data,\n r = n.custom || {},\n s = a.getDataset(),\n l = a.chart.options.elements.line,\n u = a.chart.scale;\n void 0 !== s.tension && void 0 === s.lineTension && (s.lineTension = s.tension), e.extend(i.dataset, {\n _datasetIndex: a.index,\n _children: o,\n _loop: !0,\n _model: {\n tension: r.tension ? r.tension : e.getValueOrDefault(s.lineTension, l.tension),\n backgroundColor: r.backgroundColor ? r.backgroundColor : s.backgroundColor || l.backgroundColor,\n borderWidth: r.borderWidth ? r.borderWidth : s.borderWidth || l.borderWidth,\n borderColor: r.borderColor ? r.borderColor : s.borderColor || l.borderColor,\n fill: r.fill ? r.fill : void 0 !== s.fill ? s.fill : l.fill,\n borderCapStyle: r.borderCapStyle ? r.borderCapStyle : s.borderCapStyle || l.borderCapStyle,\n borderDash: r.borderDash ? r.borderDash : s.borderDash || l.borderDash,\n borderDashOffset: r.borderDashOffset ? r.borderDashOffset : s.borderDashOffset || l.borderDashOffset,\n borderJoinStyle: r.borderJoinStyle ? r.borderJoinStyle : s.borderJoinStyle || l.borderJoinStyle,\n scaleTop: u.top,\n scaleBottom: u.bottom,\n scaleZero: u.getBasePosition()\n }\n }), i.dataset.pivot(), e.each(o, function (e, i) {\n a.updateElement(e, i, t);\n }, a), a.updateBezierControlPoints();\n },\n updateElement: function updateElement(t, a, i) {\n var n = this,\n o = t.custom || {},\n r = n.getDataset(),\n s = n.chart.scale,\n l = n.chart.options.elements.point,\n u = s.getPointPositionForValue(a, r.data[a]);\n e.extend(t, {\n _datasetIndex: n.index,\n _index: a,\n _scale: s,\n _model: {\n x: i ? s.xCenter : u.x,\n y: i ? s.yCenter : u.y,\n tension: o.tension ? o.tension : e.getValueOrDefault(r.lineTension, n.chart.options.elements.line.tension),\n radius: o.radius ? o.radius : e.getValueAtIndexOrDefault(r.pointRadius, a, l.radius),\n backgroundColor: o.backgroundColor ? o.backgroundColor : e.getValueAtIndexOrDefault(r.pointBackgroundColor, a, l.backgroundColor),\n borderColor: o.borderColor ? o.borderColor : e.getValueAtIndexOrDefault(r.pointBorderColor, a, l.borderColor),\n borderWidth: o.borderWidth ? o.borderWidth : e.getValueAtIndexOrDefault(r.pointBorderWidth, a, l.borderWidth),\n pointStyle: o.pointStyle ? o.pointStyle : e.getValueAtIndexOrDefault(r.pointStyle, a, l.pointStyle),\n hitRadius: o.hitRadius ? o.hitRadius : e.getValueAtIndexOrDefault(r.hitRadius, a, l.hitRadius)\n }\n }), t._model.skip = o.skip ? o.skip : isNaN(t._model.x) || isNaN(t._model.y);\n },\n updateBezierControlPoints: function updateBezierControlPoints() {\n var t = this.chart.chartArea,\n a = this.getMeta();\n e.each(a.data, function (i, n) {\n var o = i._model,\n r = e.splineCurve(e.previousItem(a.data, n, !0)._model, o, e.nextItem(a.data, n, !0)._model, o.tension);\n o.controlPointPreviousX = Math.max(Math.min(r.previous.x, t.right), t.left), o.controlPointPreviousY = Math.max(Math.min(r.previous.y, t.bottom), t.top), o.controlPointNextX = Math.max(Math.min(r.next.x, t.right), t.left), o.controlPointNextY = Math.max(Math.min(r.next.y, t.bottom), t.top), i.pivot();\n });\n },\n draw: function draw(t) {\n var a = this.getMeta(),\n i = t || 1;\n e.each(a.data, function (t) {\n t.transition(i);\n }), a.dataset.transition(i).draw(), e.each(a.data, function (t) {\n t.draw();\n });\n },\n setHoverStyle: function setHoverStyle(t) {\n var a = this.chart.data.datasets[t._datasetIndex],\n i = t.custom || {},\n n = t._index,\n o = t._model;\n o.radius = i.hoverRadius ? i.hoverRadius : e.getValueAtIndexOrDefault(a.pointHoverRadius, n, this.chart.options.elements.point.hoverRadius), o.backgroundColor = i.hoverBackgroundColor ? i.hoverBackgroundColor : e.getValueAtIndexOrDefault(a.pointHoverBackgroundColor, n, e.getHoverColor(o.backgroundColor)), o.borderColor = i.hoverBorderColor ? i.hoverBorderColor : e.getValueAtIndexOrDefault(a.pointHoverBorderColor, n, e.getHoverColor(o.borderColor)), o.borderWidth = i.hoverBorderWidth ? i.hoverBorderWidth : e.getValueAtIndexOrDefault(a.pointHoverBorderWidth, n, o.borderWidth);\n },\n removeHoverStyle: function removeHoverStyle(t) {\n var a = this.chart.data.datasets[t._datasetIndex],\n i = t.custom || {},\n n = t._index,\n o = t._model,\n r = this.chart.options.elements.point;\n o.radius = i.radius ? i.radius : e.getValueAtIndexOrDefault(a.radius, n, r.radius), o.backgroundColor = i.backgroundColor ? i.backgroundColor : e.getValueAtIndexOrDefault(a.pointBackgroundColor, n, r.backgroundColor), o.borderColor = i.borderColor ? i.borderColor : e.getValueAtIndexOrDefault(a.pointBorderColor, n, r.borderColor), o.borderWidth = i.borderWidth ? i.borderWidth : e.getValueAtIndexOrDefault(a.pointBorderWidth, n, r.borderWidth);\n }\n });\n };\n }, {}],\n 21: [function (t, e, a) {\n \"use strict\";\n\n e.exports = function (t) {\n var e = t.helpers;\n t.defaults.global.animation = {\n duration: 1e3,\n easing: \"easeOutQuart\",\n onProgress: e.noop,\n onComplete: e.noop\n }, t.Animation = t.Element.extend({\n currentStep: null,\n numSteps: 60,\n easing: \"\",\n render: null,\n onAnimationProgress: null,\n onAnimationComplete: null\n }), t.animationService = {\n frameDuration: 17,\n animations: [],\n dropFrames: 0,\n request: null,\n addAnimation: function addAnimation(t, e, a, i) {\n var n = this;\n i || (t.animating = !0);\n for (var o = 0; o < n.animations.length; ++o) if (n.animations[o].chartInstance === t) return void (n.animations[o].animationObject = e);\n n.animations.push({\n chartInstance: t,\n animationObject: e\n }), 1 === n.animations.length && n.requestAnimationFrame();\n },\n cancelAnimation: function cancelAnimation(t) {\n var a = e.findIndex(this.animations, function (e) {\n return e.chartInstance === t;\n });\n a !== -1 && (this.animations.splice(a, 1), t.animating = !1);\n },\n requestAnimationFrame: function requestAnimationFrame() {\n var t = this;\n null === t.request && (t.request = e.requestAnimFrame.call(window, function () {\n t.request = null, t.startDigest();\n }));\n },\n startDigest: function startDigest() {\n var t = this,\n e = Date.now(),\n a = 0;\n t.dropFrames > 1 && (a = Math.floor(t.dropFrames), t.dropFrames = t.dropFrames % 1);\n for (var i = 0; i < t.animations.length;) null === t.animations[i].animationObject.currentStep && (t.animations[i].animationObject.currentStep = 0), t.animations[i].animationObject.currentStep += 1 + a, t.animations[i].animationObject.currentStep > t.animations[i].animationObject.numSteps && (t.animations[i].animationObject.currentStep = t.animations[i].animationObject.numSteps), t.animations[i].animationObject.render(t.animations[i].chartInstance, t.animations[i].animationObject), t.animations[i].animationObject.onAnimationProgress && t.animations[i].animationObject.onAnimationProgress.call && t.animations[i].animationObject.onAnimationProgress.call(t.animations[i].chartInstance, t.animations[i]), t.animations[i].animationObject.currentStep === t.animations[i].animationObject.numSteps ? (t.animations[i].animationObject.onAnimationComplete && t.animations[i].animationObject.onAnimationComplete.call && t.animations[i].animationObject.onAnimationComplete.call(t.animations[i].chartInstance, t.animations[i]), t.animations[i].chartInstance.animating = !1, t.animations.splice(i, 1)) : ++i;\n var n = Date.now(),\n o = (n - e) / t.frameDuration;\n t.dropFrames += o, t.animations.length > 0 && t.requestAnimationFrame();\n }\n };\n };\n }, {}],\n 22: [function (t, e, a) {\n \"use strict\";\n\n e.exports = function (t) {\n var e = t.canvasHelpers = {};\n e.drawPoint = function (e, a, i, n, o) {\n var r, s, l, u, d, c;\n if (\"object\" == _typeof(a) && (r = a.toString(), \"[object HTMLImageElement]\" === r || \"[object HTMLCanvasElement]\" === r)) return void e.drawImage(a, n - a.width / 2, o - a.height / 2);\n if (!(isNaN(i) || i <= 0)) {\n switch (a) {\n default:\n e.beginPath(), e.arc(n, o, i, 0, 2 * Math.PI), e.closePath(), e.fill();\n break;\n case \"triangle\":\n e.beginPath(), s = 3 * i / Math.sqrt(3), d = s * Math.sqrt(3) / 2, e.moveTo(n - s / 2, o + d / 3), e.lineTo(n + s / 2, o + d / 3), e.lineTo(n, o - 2 * d / 3), e.closePath(), e.fill();\n break;\n case \"rect\":\n c = 1 / Math.SQRT2 * i, e.beginPath(), e.fillRect(n - c, o - c, 2 * c, 2 * c), e.strokeRect(n - c, o - c, 2 * c, 2 * c);\n break;\n case \"rectRounded\":\n var h = i / Math.SQRT2,\n f = n - h,\n g = o - h,\n p = Math.SQRT2 * i;\n t.helpers.drawRoundedRectangle(e, f, g, p, p, i / 2), e.fill();\n break;\n case \"rectRot\":\n c = 1 / Math.SQRT2 * i, e.beginPath(), e.moveTo(n - c, o), e.lineTo(n, o + c), e.lineTo(n + c, o), e.lineTo(n, o - c), e.closePath(), e.fill();\n break;\n case \"cross\":\n e.beginPath(), e.moveTo(n, o + i), e.lineTo(n, o - i), e.moveTo(n - i, o), e.lineTo(n + i, o), e.closePath();\n break;\n case \"crossRot\":\n e.beginPath(), l = Math.cos(Math.PI / 4) * i, u = Math.sin(Math.PI / 4) * i, e.moveTo(n - l, o - u), e.lineTo(n + l, o + u), e.moveTo(n - l, o + u), e.lineTo(n + l, o - u), e.closePath();\n break;\n case \"star\":\n e.beginPath(), e.moveTo(n, o + i), e.lineTo(n, o - i), e.moveTo(n - i, o), e.lineTo(n + i, o), l = Math.cos(Math.PI / 4) * i, u = Math.sin(Math.PI / 4) * i, e.moveTo(n - l, o - u), e.lineTo(n + l, o + u), e.moveTo(n - l, o + u), e.lineTo(n + l, o - u), e.closePath();\n break;\n case \"line\":\n e.beginPath(), e.moveTo(n - i, o), e.lineTo(n + i, o), e.closePath();\n break;\n case \"dash\":\n e.beginPath(), e.moveTo(n, o), e.lineTo(n + i, o), e.closePath();\n }\n e.stroke();\n }\n }, e.clipArea = function (t, e) {\n t.save(), t.beginPath(), t.rect(e.left, e.top, e.right - e.left, e.bottom - e.top), t.clip();\n }, e.unclipArea = function (t) {\n t.restore();\n };\n };\n }, {}],\n 23: [function (t, e, a) {\n \"use strict\";\n\n e.exports = function (t) {\n function e(e) {\n e = e || {};\n var a = e.data = e.data || {};\n return a.datasets = a.datasets || [], a.labels = a.labels || [], e.options = i.configMerge(t.defaults.global, t.defaults[e.type], e.options || {}), e;\n }\n function a(t) {\n var e = t.options;\n e.scale ? t.scale.options = e.scale : e.scales && e.scales.xAxes.concat(e.scales.yAxes).forEach(function (e) {\n t.scales[e.id].options = e;\n }), t.tooltip._options = e.tooltips;\n }\n var i = t.helpers,\n n = t.plugins,\n o = t.platform;\n t.types = {}, t.instances = {}, t.controllers = {}, t.Controller = function (a, n, r) {\n var s = this;\n n = e(n);\n var l = o.acquireContext(a, n),\n u = l && l.canvas,\n d = u && u.height,\n c = u && u.width;\n return r.ctx = l, r.canvas = u, r.config = n, r.width = c, r.height = d, r.aspectRatio = d ? c / d : null, s.id = i.uid(), s.chart = r, s.config = n, s.options = n.options, s._bufferedRender = !1, t.instances[s.id] = s, Object.defineProperty(s, \"data\", {\n get: function get() {\n return s.config.data;\n }\n }), l && u ? (s.initialize(), s.update(), s) : (console.error(\"Failed to create chart: can't acquire context from the given item\"), s);\n }, i.extend(t.Controller.prototype, {\n initialize: function initialize() {\n var t = this;\n return n.notify(t, \"beforeInit\"), i.retinaScale(t.chart), t.bindEvents(), t.options.responsive && t.resize(!0), t.ensureScalesHaveIDs(), t.buildScales(), t.initToolTip(), n.notify(t, \"afterInit\"), t;\n },\n clear: function clear() {\n return i.clear(this.chart), this;\n },\n stop: function stop() {\n return t.animationService.cancelAnimation(this), this;\n },\n resize: function resize(t) {\n var e = this,\n a = e.chart,\n o = e.options,\n r = a.canvas,\n s = o.maintainAspectRatio && a.aspectRatio || null,\n l = Math.floor(i.getMaximumWidth(r)),\n u = Math.floor(s ? l / s : i.getMaximumHeight(r));\n if ((a.width !== l || a.height !== u) && (r.width = a.width = l, r.height = a.height = u, r.style.width = l + \"px\", r.style.height = u + \"px\", i.retinaScale(a), !t)) {\n var d = {\n width: l,\n height: u\n };\n n.notify(e, \"resize\", [d]), e.options.onResize && e.options.onResize(e, d), e.stop(), e.update(e.options.responsiveAnimationDuration);\n }\n },\n ensureScalesHaveIDs: function ensureScalesHaveIDs() {\n var t = this.options,\n e = t.scales || {},\n a = t.scale;\n i.each(e.xAxes, function (t, e) {\n t.id = t.id || \"x-axis-\" + e;\n }), i.each(e.yAxes, function (t, e) {\n t.id = t.id || \"y-axis-\" + e;\n }), a && (a.id = a.id || \"scale\");\n },\n buildScales: function buildScales() {\n var e = this,\n a = e.options,\n n = e.scales = {},\n o = [];\n a.scales && (o = o.concat((a.scales.xAxes || []).map(function (t) {\n return {\n options: t,\n dtype: \"category\"\n };\n }), (a.scales.yAxes || []).map(function (t) {\n return {\n options: t,\n dtype: \"linear\"\n };\n }))), a.scale && o.push({\n options: a.scale,\n dtype: \"radialLinear\",\n isDefault: !0\n }), i.each(o, function (a) {\n var o = a.options,\n r = i.getValueOrDefault(o.type, a.dtype),\n s = t.scaleService.getScaleConstructor(r);\n if (s) {\n var l = new s({\n id: o.id,\n options: o,\n ctx: e.chart.ctx,\n chart: e\n });\n n[l.id] = l, a.isDefault && (e.scale = l);\n }\n }), t.scaleService.addScalesToLayout(this);\n },\n buildOrUpdateControllers: function buildOrUpdateControllers() {\n var e = this,\n a = [],\n n = [];\n if (i.each(e.data.datasets, function (i, o) {\n var r = e.getDatasetMeta(o);\n r.type || (r.type = i.type || e.config.type), a.push(r.type), r.controller ? r.controller.updateIndex(o) : (r.controller = new t.controllers[r.type](e, o), n.push(r.controller));\n }, e), a.length > 1) for (var o = 1; o < a.length; o++) if (a[o] !== a[o - 1]) {\n e.isCombo = !0;\n break;\n }\n return n;\n },\n resetElements: function resetElements() {\n var t = this;\n i.each(t.data.datasets, function (e, a) {\n t.getDatasetMeta(a).controller.reset();\n }, t);\n },\n reset: function reset() {\n this.resetElements(), this.tooltip.initialize();\n },\n update: function update(t, e) {\n var o = this;\n if (a(o), n.notify(o, \"beforeUpdate\") !== !1) {\n o.tooltip._data = o.data;\n var r = o.buildOrUpdateControllers();\n i.each(o.data.datasets, function (t, e) {\n o.getDatasetMeta(e).controller.buildOrUpdateElements();\n }, o), o.updateLayout(), i.each(r, function (t) {\n t.reset();\n }), o.updateDatasets(), n.notify(o, \"afterUpdate\"), o._bufferedRender ? o._bufferedRequest = {\n lazy: e,\n duration: t\n } : o.render(t, e);\n }\n },\n updateLayout: function updateLayout() {\n var e = this;\n n.notify(e, \"beforeLayout\") !== !1 && (t.layoutService.update(this, this.chart.width, this.chart.height), n.notify(e, \"afterScaleUpdate\"), n.notify(e, \"afterLayout\"));\n },\n updateDatasets: function updateDatasets() {\n var t = this;\n if (n.notify(t, \"beforeDatasetsUpdate\") !== !1) {\n for (var e = 0, a = t.data.datasets.length; e < a; ++e) t.getDatasetMeta(e).controller.update();\n n.notify(t, \"afterDatasetsUpdate\");\n }\n },\n render: function render(e, a) {\n var o = this;\n if (n.notify(o, \"beforeRender\") !== !1) {\n var r = o.options.animation,\n s = function s() {\n n.notify(o, \"afterRender\");\n var t = r && r.onComplete;\n t && t.call && t.call(o);\n };\n if (r && (\"undefined\" != typeof e && 0 !== e || \"undefined\" == typeof e && 0 !== r.duration)) {\n var l = new t.Animation();\n l.numSteps = (e || r.duration) / 16.66, l.easing = r.easing, l.render = function (t, e) {\n var a = i.easingEffects[e.easing],\n n = e.currentStep / e.numSteps,\n o = a(n);\n t.draw(o, n, e.currentStep);\n }, l.onAnimationProgress = r.onProgress, l.onAnimationComplete = s, t.animationService.addAnimation(o, l, e, a);\n } else o.draw(), s();\n return o;\n }\n },\n draw: function draw(t) {\n var e = this;\n e.clear(), void 0 !== t && null !== t || (t = 1), n.notify(e, \"beforeDraw\", [t]) !== !1 && (i.each(e.boxes, function (t) {\n t.draw(e.chartArea);\n }, e), e.scale && e.scale.draw(), e.drawDatasets(t), e.tooltip.transition(t).draw(), n.notify(e, \"afterDraw\", [t]));\n },\n drawDatasets: function drawDatasets(t) {\n var e = this;\n n.notify(e, \"beforeDatasetsDraw\", [t]) !== !1 && (i.each(e.data.datasets, function (a, i) {\n e.isDatasetVisible(i) && e.getDatasetMeta(i).controller.draw(t);\n }, e, !0), n.notify(e, \"afterDatasetsDraw\", [t]));\n },\n getElementAtEvent: function getElementAtEvent(e) {\n return t.Interaction.modes.single(this, e);\n },\n getElementsAtEvent: function getElementsAtEvent(e) {\n return t.Interaction.modes.label(this, e, {\n intersect: !0\n });\n },\n getElementsAtXAxis: function getElementsAtXAxis(e) {\n return t.Interaction.modes[\"x-axis\"](this, e, {\n intersect: !0\n });\n },\n getElementsAtEventForMode: function getElementsAtEventForMode(e, a, i) {\n var n = t.Interaction.modes[a];\n return \"function\" == typeof n ? n(this, e, i) : [];\n },\n getDatasetAtEvent: function getDatasetAtEvent(e) {\n return t.Interaction.modes.dataset(this, e, {\n intersect: !0\n });\n },\n getDatasetMeta: function getDatasetMeta(t) {\n var e = this,\n a = e.data.datasets[t];\n a._meta || (a._meta = {});\n var i = a._meta[e.id];\n return i || (i = a._meta[e.id] = {\n type: null,\n data: [],\n dataset: null,\n controller: null,\n hidden: null,\n xAxisID: null,\n yAxisID: null\n }), i;\n },\n getVisibleDatasetCount: function getVisibleDatasetCount() {\n for (var t = 0, e = 0, a = this.data.datasets.length; e < a; ++e) this.isDatasetVisible(e) && t++;\n return t;\n },\n isDatasetVisible: function isDatasetVisible(t) {\n var e = this.getDatasetMeta(t);\n return \"boolean\" == typeof e.hidden ? !e.hidden : !this.data.datasets[t].hidden;\n },\n generateLegend: function generateLegend() {\n return this.options.legendCallback(this);\n },\n destroy: function destroy() {\n var e,\n a,\n r,\n s = this,\n l = s.chart.canvas;\n for (s.stop(), a = 0, r = s.data.datasets.length; a < r; ++a) e = s.getDatasetMeta(a), e.controller && (e.controller.destroy(), e.controller = null);\n l && (s.unbindEvents(), i.clear(s.chart), o.releaseContext(s.chart.ctx), s.chart.canvas = null, s.chart.ctx = null), n.notify(s, \"destroy\"), delete t.instances[s.id];\n },\n toBase64Image: function toBase64Image() {\n return this.chart.canvas.toDataURL.apply(this.chart.canvas, arguments);\n },\n initToolTip: function initToolTip() {\n var e = this;\n e.tooltip = new t.Tooltip({\n _chart: e.chart,\n _chartInstance: e,\n _data: e.data,\n _options: e.options.tooltips\n }, e), e.tooltip.initialize();\n },\n bindEvents: function bindEvents() {\n var t = this,\n e = t._listeners = {},\n a = function a() {\n t.eventHandler.apply(t, arguments);\n };\n i.each(t.options.events, function (i) {\n o.addEventListener(t, i, a), e[i] = a;\n }), t.options.responsive && (a = function a() {\n t.resize();\n }, o.addEventListener(t, \"resize\", a), e.resize = a);\n },\n unbindEvents: function unbindEvents() {\n var t = this,\n e = t._listeners;\n e && (delete t._listeners, i.each(e, function (e, a) {\n o.removeEventListener(t, a, e);\n }));\n },\n updateHoverStyle: function updateHoverStyle(t, e, a) {\n var i,\n n,\n o,\n r = a ? \"setHoverStyle\" : \"removeHoverStyle\";\n for (n = 0, o = t.length; n < o; ++n) i = t[n], i && this.getDatasetMeta(i._datasetIndex).controller[r](i);\n },\n eventHandler: function eventHandler(t) {\n var e = this,\n a = e.tooltip;\n if (n.notify(e, \"beforeEvent\", [t]) !== !1) {\n e._bufferedRender = !0, e._bufferedRequest = null;\n var i = e.handleEvent(t);\n i |= a && a.handleEvent(t), n.notify(e, \"afterEvent\", [t]);\n var o = e._bufferedRequest;\n return o ? e.render(o.duration, o.lazy) : i && !e.animating && (e.stop(), e.render(e.options.hover.animationDuration, !0)), e._bufferedRender = !1, e._bufferedRequest = null, e;\n }\n },\n handleEvent: function handleEvent(t) {\n var e = this,\n a = e.options || {},\n n = a.hover,\n o = !1;\n return e.lastActive = e.lastActive || [], \"mouseout\" === t.type ? e.active = [] : e.active = e.getElementsAtEventForMode(t, n.mode, n), n.onHover && n.onHover.call(e, t[\"native\"], e.active), \"mouseup\" !== t.type && \"click\" !== t.type || a.onClick && a.onClick.call(e, t[\"native\"], e.active), e.lastActive.length && e.updateHoverStyle(e.lastActive, n.mode, !1), e.active.length && n.mode && e.updateHoverStyle(e.active, n.mode, !0), o = !i.arrayEquals(e.active, e.lastActive), e.lastActive = e.active, o;\n }\n });\n };\n }, {}],\n 24: [function (t, e, a) {\n \"use strict\";\n\n e.exports = function (t) {\n function e(t, e) {\n return t._chartjs ? void t._chartjs.listeners.push(e) : (Object.defineProperty(t, \"_chartjs\", {\n configurable: !0,\n enumerable: !1,\n value: {\n listeners: [e]\n }\n }), void n.forEach(function (e) {\n var a = \"onData\" + e.charAt(0).toUpperCase() + e.slice(1),\n n = t[e];\n Object.defineProperty(t, e, {\n configurable: !0,\n enumerable: !1,\n value: function value() {\n var e = Array.prototype.slice.call(arguments),\n o = n.apply(this, e);\n return i.each(t._chartjs.listeners, function (t) {\n \"function\" == typeof t[a] && t[a].apply(t, e);\n }), o;\n }\n });\n }));\n }\n function a(t, e) {\n var a = t._chartjs;\n if (a) {\n var i = a.listeners,\n o = i.indexOf(e);\n o !== -1 && i.splice(o, 1), i.length > 0 || (n.forEach(function (e) {\n delete t[e];\n }), delete t._chartjs);\n }\n }\n var i = t.helpers,\n n = [\"push\", \"pop\", \"shift\", \"splice\", \"unshift\"];\n t.DatasetController = function (t, e) {\n this.initialize(t, e);\n }, i.extend(t.DatasetController.prototype, {\n datasetElementType: null,\n dataElementType: null,\n initialize: function initialize(t, e) {\n var a = this;\n a.chart = t, a.index = e, a.linkScales(), a.addElements();\n },\n updateIndex: function updateIndex(t) {\n this.index = t;\n },\n linkScales: function linkScales() {\n var t = this,\n e = t.getMeta(),\n a = t.getDataset();\n null === e.xAxisID && (e.xAxisID = a.xAxisID || t.chart.options.scales.xAxes[0].id), null === e.yAxisID && (e.yAxisID = a.yAxisID || t.chart.options.scales.yAxes[0].id);\n },\n getDataset: function getDataset() {\n return this.chart.data.datasets[this.index];\n },\n getMeta: function getMeta() {\n return this.chart.getDatasetMeta(this.index);\n },\n getScaleForId: function getScaleForId(t) {\n return this.chart.scales[t];\n },\n reset: function reset() {\n this.update(!0);\n },\n destroy: function destroy() {\n this._data && a(this._data, this);\n },\n createMetaDataset: function createMetaDataset() {\n var t = this,\n e = t.datasetElementType;\n return e && new e({\n _chart: t.chart.chart,\n _datasetIndex: t.index\n });\n },\n createMetaData: function createMetaData(t) {\n var e = this,\n a = e.dataElementType;\n return a && new a({\n _chart: e.chart.chart,\n _datasetIndex: e.index,\n _index: t\n });\n },\n addElements: function addElements() {\n var t,\n e,\n a = this,\n i = a.getMeta(),\n n = a.getDataset().data || [],\n o = i.data;\n for (t = 0, e = n.length; t < e; ++t) o[t] = o[t] || a.createMetaData(t);\n i.dataset = i.dataset || a.createMetaDataset();\n },\n addElementAndReset: function addElementAndReset(t) {\n var e = this.createMetaData(t);\n this.getMeta().data.splice(t, 0, e), this.updateElement(e, t, !0);\n },\n buildOrUpdateElements: function buildOrUpdateElements() {\n var t = this,\n i = t.getDataset(),\n n = i.data || (i.data = []);\n t._data !== n && (t._data && a(t._data, t), e(n, t), t._data = n), t.resyncElements();\n },\n update: i.noop,\n draw: function draw(t) {\n var e,\n a,\n i = t || 1,\n n = this.getMeta().data;\n for (e = 0, a = n.length; e < a; ++e) n[e].transition(i).draw();\n },\n removeHoverStyle: function removeHoverStyle(t, e) {\n var a = this.chart.data.datasets[t._datasetIndex],\n n = t._index,\n o = t.custom || {},\n r = i.getValueAtIndexOrDefault,\n s = t._model;\n s.backgroundColor = o.backgroundColor ? o.backgroundColor : r(a.backgroundColor, n, e.backgroundColor), s.borderColor = o.borderColor ? o.borderColor : r(a.borderColor, n, e.borderColor), s.borderWidth = o.borderWidth ? o.borderWidth : r(a.borderWidth, n, e.borderWidth);\n },\n setHoverStyle: function setHoverStyle(t) {\n var e = this.chart.data.datasets[t._datasetIndex],\n a = t._index,\n n = t.custom || {},\n o = i.getValueAtIndexOrDefault,\n r = i.getHoverColor,\n s = t._model;\n s.backgroundColor = n.hoverBackgroundColor ? n.hoverBackgroundColor : o(e.hoverBackgroundColor, a, r(s.backgroundColor)), s.borderColor = n.hoverBorderColor ? n.hoverBorderColor : o(e.hoverBorderColor, a, r(s.borderColor)), s.borderWidth = n.hoverBorderWidth ? n.hoverBorderWidth : o(e.hoverBorderWidth, a, s.borderWidth);\n },\n resyncElements: function resyncElements() {\n var t = this,\n e = t.getMeta(),\n a = t.getDataset().data,\n i = e.data.length,\n n = a.length;\n n < i ? e.data.splice(n, i - n) : n > i && t.insertElements(i, n - i);\n },\n insertElements: function insertElements(t, e) {\n for (var a = 0; a < e; ++a) this.addElementAndReset(t + a);\n },\n onDataPush: function onDataPush() {\n this.insertElements(this.getDataset().data.length - 1, arguments.length);\n },\n onDataPop: function onDataPop() {\n this.getMeta().data.pop();\n },\n onDataShift: function onDataShift() {\n this.getMeta().data.shift();\n },\n onDataSplice: function onDataSplice(t, e) {\n this.getMeta().data.splice(t, e), this.insertElements(t, arguments.length - 2);\n },\n onDataUnshift: function onDataUnshift() {\n this.insertElements(0, arguments.length);\n }\n }), t.DatasetController.extend = i.inherits;\n };\n }, {}],\n 25: [function (t, e, a) {\n \"use strict\";\n\n e.exports = function (t) {\n var e = t.helpers;\n t.elements = {}, t.Element = function (t) {\n e.extend(this, t), this.initialize.apply(this, arguments);\n }, e.extend(t.Element.prototype, {\n initialize: function initialize() {\n this.hidden = !1;\n },\n pivot: function pivot() {\n var t = this;\n return t._view || (t._view = e.clone(t._model)), t._start = e.clone(t._view), t;\n },\n transition: function transition(t) {\n var a = this;\n return a._view || (a._view = e.clone(a._model)), 1 === t ? (a._view = a._model, a._start = null, a) : (a._start || a.pivot(), e.each(a._model, function (i, n) {\n if (\"_\" === n[0]) ;else if (a._view.hasOwnProperty(n)) {\n if (i === a._view[n]) ;else if (\"string\" == typeof i) try {\n var o = e.color(a._model[n]).mix(e.color(a._start[n]), t);\n a._view[n] = o.rgbString();\n } catch (t) {\n a._view[n] = i;\n } else if (\"number\" == typeof i) {\n var r = void 0 !== a._start[n] && isNaN(a._start[n]) === !1 ? a._start[n] : 0;\n a._view[n] = (a._model[n] - r) * t + r;\n } else a._view[n] = i;\n } else \"number\" != typeof i || isNaN(a._view[n]) ? a._view[n] = i : a._view[n] = i * t;\n }, a), a);\n },\n tooltipPosition: function tooltipPosition() {\n return {\n x: this._model.x,\n y: this._model.y\n };\n },\n hasValue: function hasValue() {\n return e.isNumber(this._model.x) && e.isNumber(this._model.y);\n }\n }), t.Element.extend = e.inherits;\n };\n }, {}],\n 26: [function (t, e, a) {\n \"use strict\";\n\n var i = t(3);\n e.exports = function (t) {\n function e(t, e, a) {\n var i;\n return \"string\" == typeof t ? (i = parseInt(t, 10), t.indexOf(\"%\") !== -1 && (i = i / 100 * e.parentNode[a])) : i = t, i;\n }\n function a(t) {\n return void 0 !== t && null !== t && \"none\" !== t;\n }\n function n(t, i, n) {\n var o = document.defaultView,\n r = t.parentNode,\n s = o.getComputedStyle(t)[i],\n l = o.getComputedStyle(r)[i],\n u = a(s),\n d = a(l),\n c = Number.POSITIVE_INFINITY;\n return u || d ? Math.min(u ? e(s, t, n) : c, d ? e(l, r, n) : c) : \"none\";\n }\n var o = t.helpers = {};\n o.each = function (t, e, a, i) {\n var n, r;\n if (o.isArray(t)) {\n if (r = t.length, i) for (n = r - 1; n >= 0; n--) e.call(a, t[n], n);else for (n = 0; n < r; n++) e.call(a, t[n], n);\n } else if (\"object\" == _typeof(t)) {\n var s = Object.keys(t);\n for (r = s.length, n = 0; n < r; n++) e.call(a, t[s[n]], s[n]);\n }\n }, o.clone = function (t) {\n var e = {};\n return o.each(t, function (t, a) {\n o.isArray(t) ? e[a] = t.slice(0) : \"object\" == _typeof(t) && null !== t ? e[a] = o.clone(t) : e[a] = t;\n }), e;\n }, o.extend = function (t) {\n for (var e = function e(_e, a) {\n t[a] = _e;\n }, a = 1, i = arguments.length; a < i; a++) o.each(arguments[a], e);\n return t;\n }, o.configMerge = function (e) {\n var a = o.clone(e);\n return o.each(Array.prototype.slice.call(arguments, 1), function (e) {\n o.each(e, function (e, i) {\n var n = a.hasOwnProperty(i),\n r = n ? a[i] : {};\n \"scales\" === i ? a[i] = o.scaleMerge(r, e) : \"scale\" === i ? a[i] = o.configMerge(r, t.scaleService.getScaleDefaults(e.type), e) : !n || \"object\" != _typeof(r) || o.isArray(r) || null === r || \"object\" != _typeof(e) || o.isArray(e) ? a[i] = e : a[i] = o.configMerge(r, e);\n });\n }), a;\n }, o.scaleMerge = function (e, a) {\n var i = o.clone(e);\n return o.each(a, function (e, a) {\n \"xAxes\" === a || \"yAxes\" === a ? i.hasOwnProperty(a) ? o.each(e, function (e, n) {\n var r = o.getValueOrDefault(e.type, \"xAxes\" === a ? \"category\" : \"linear\"),\n s = t.scaleService.getScaleDefaults(r);\n n >= i[a].length || !i[a][n].type ? i[a].push(o.configMerge(s, e)) : e.type && e.type !== i[a][n].type ? i[a][n] = o.configMerge(i[a][n], s, e) : i[a][n] = o.configMerge(i[a][n], e);\n }) : (i[a] = [], o.each(e, function (e) {\n var n = o.getValueOrDefault(e.type, \"xAxes\" === a ? \"category\" : \"linear\");\n i[a].push(o.configMerge(t.scaleService.getScaleDefaults(n), e));\n })) : i.hasOwnProperty(a) && \"object\" == _typeof(i[a]) && null !== i[a] && \"object\" == _typeof(e) ? i[a] = o.configMerge(i[a], e) : i[a] = e;\n }), i;\n }, o.getValueAtIndexOrDefault = function (t, e, a) {\n return void 0 === t || null === t ? a : o.isArray(t) ? e < t.length ? t[e] : a : t;\n }, o.getValueOrDefault = function (t, e) {\n return void 0 === t ? e : t;\n }, o.indexOf = Array.prototype.indexOf ? function (t, e) {\n return t.indexOf(e);\n } : function (t, e) {\n for (var a = 0, i = t.length; a < i; ++a) if (t[a] === e) return a;\n return -1;\n }, o.where = function (t, e) {\n if (o.isArray(t) && Array.prototype.filter) return t.filter(e);\n var a = [];\n return o.each(t, function (t) {\n e(t) && a.push(t);\n }), a;\n }, o.findIndex = Array.prototype.findIndex ? function (t, e, a) {\n return t.findIndex(e, a);\n } : function (t, e, a) {\n a = void 0 === a ? t : a;\n for (var i = 0, n = t.length; i < n; ++i) if (e.call(a, t[i], i, t)) return i;\n return -1;\n }, o.findNextWhere = function (t, e, a) {\n void 0 !== a && null !== a || (a = -1);\n for (var i = a + 1; i < t.length; i++) {\n var n = t[i];\n if (e(n)) return n;\n }\n }, o.findPreviousWhere = function (t, e, a) {\n void 0 !== a && null !== a || (a = t.length);\n for (var i = a - 1; i >= 0; i--) {\n var n = t[i];\n if (e(n)) return n;\n }\n }, o.inherits = function (t) {\n var e = this,\n a = t && t.hasOwnProperty(\"constructor\") ? t.constructor : function () {\n return e.apply(this, arguments);\n },\n i = function i() {\n this.constructor = a;\n };\n return i.prototype = e.prototype, a.prototype = new i(), a.extend = o.inherits, t && o.extend(a.prototype, t), a.__super__ = e.prototype, a;\n }, o.noop = function () {}, o.uid = function () {\n var t = 0;\n return function () {\n return t++;\n };\n }(), o.isNumber = function (t) {\n return !isNaN(parseFloat(t)) && isFinite(t);\n }, o.almostEquals = function (t, e, a) {\n return Math.abs(t - e) < a;\n }, o.almostWhole = function (t, e) {\n var a = Math.round(t);\n return a - e < t && a + e > t;\n }, o.max = function (t) {\n return t.reduce(function (t, e) {\n return isNaN(e) ? t : Math.max(t, e);\n }, Number.NEGATIVE_INFINITY);\n }, o.min = function (t) {\n return t.reduce(function (t, e) {\n return isNaN(e) ? t : Math.min(t, e);\n }, Number.POSITIVE_INFINITY);\n }, o.sign = Math.sign ? function (t) {\n return Math.sign(t);\n } : function (t) {\n return t = +t, 0 === t || isNaN(t) ? t : t > 0 ? 1 : -1;\n }, o.log10 = Math.log10 ? function (t) {\n return Math.log10(t);\n } : function (t) {\n return Math.log(t) / Math.LN10;\n }, o.toRadians = function (t) {\n return t * (Math.PI / 180);\n }, o.toDegrees = function (t) {\n return t * (180 / Math.PI);\n }, o.getAngleFromPoint = function (t, e) {\n var a = e.x - t.x,\n i = e.y - t.y,\n n = Math.sqrt(a * a + i * i),\n o = Math.atan2(i, a);\n return o < -.5 * Math.PI && (o += 2 * Math.PI), {\n angle: o,\n distance: n\n };\n }, o.distanceBetweenPoints = function (t, e) {\n return Math.sqrt(Math.pow(e.x - t.x, 2) + Math.pow(e.y - t.y, 2));\n }, o.aliasPixel = function (t) {\n return t % 2 === 0 ? 0 : .5;\n }, o.splineCurve = function (t, e, a, i) {\n var n = t.skip ? e : t,\n o = e,\n r = a.skip ? e : a,\n s = Math.sqrt(Math.pow(o.x - n.x, 2) + Math.pow(o.y - n.y, 2)),\n l = Math.sqrt(Math.pow(r.x - o.x, 2) + Math.pow(r.y - o.y, 2)),\n u = s / (s + l),\n d = l / (s + l);\n u = isNaN(u) ? 0 : u, d = isNaN(d) ? 0 : d;\n var c = i * u,\n h = i * d;\n return {\n previous: {\n x: o.x - c * (r.x - n.x),\n y: o.y - c * (r.y - n.y)\n },\n next: {\n x: o.x + h * (r.x - n.x),\n y: o.y + h * (r.y - n.y)\n }\n };\n }, o.EPSILON = Number.EPSILON || 1e-14, o.splineCurveMonotone = function (t) {\n var e,\n a,\n i,\n n,\n r = (t || []).map(function (t) {\n return {\n model: t._model,\n deltaK: 0,\n mK: 0\n };\n }),\n s = r.length;\n for (e = 0; e < s; ++e) if (i = r[e], !i.model.skip) {\n if (a = e > 0 ? r[e - 1] : null, n = e < s - 1 ? r[e + 1] : null, n && !n.model.skip) {\n var l = n.model.x - i.model.x;\n i.deltaK = 0 !== l ? (n.model.y - i.model.y) / l : 0;\n }\n !a || a.model.skip ? i.mK = i.deltaK : !n || n.model.skip ? i.mK = a.deltaK : this.sign(a.deltaK) !== this.sign(i.deltaK) ? i.mK = 0 : i.mK = (a.deltaK + i.deltaK) / 2;\n }\n var u, d, c, h;\n for (e = 0; e < s - 1; ++e) i = r[e], n = r[e + 1], i.model.skip || n.model.skip || (o.almostEquals(i.deltaK, 0, this.EPSILON) ? i.mK = n.mK = 0 : (u = i.mK / i.deltaK, d = n.mK / i.deltaK, h = Math.pow(u, 2) + Math.pow(d, 2), h <= 9 || (c = 3 / Math.sqrt(h), i.mK = u * c * i.deltaK, n.mK = d * c * i.deltaK)));\n var f;\n for (e = 0; e < s; ++e) i = r[e], i.model.skip || (a = e > 0 ? r[e - 1] : null, n = e < s - 1 ? r[e + 1] : null, a && !a.model.skip && (f = (i.model.x - a.model.x) / 3, i.model.controlPointPreviousX = i.model.x - f, i.model.controlPointPreviousY = i.model.y - f * i.mK), n && !n.model.skip && (f = (n.model.x - i.model.x) / 3, i.model.controlPointNextX = i.model.x + f, i.model.controlPointNextY = i.model.y + f * i.mK));\n }, o.nextItem = function (t, e, a) {\n return a ? e >= t.length - 1 ? t[0] : t[e + 1] : e >= t.length - 1 ? t[t.length - 1] : t[e + 1];\n }, o.previousItem = function (t, e, a) {\n return a ? e <= 0 ? t[t.length - 1] : t[e - 1] : e <= 0 ? t[0] : t[e - 1];\n }, o.niceNum = function (t, e) {\n var a,\n i = Math.floor(o.log10(t)),\n n = t / Math.pow(10, i);\n return a = e ? n < 1.5 ? 1 : n < 3 ? 2 : n < 7 ? 5 : 10 : n <= 1 ? 1 : n <= 2 ? 2 : n <= 5 ? 5 : 10, a * Math.pow(10, i);\n };\n var r = o.easingEffects = {\n linear: function linear(t) {\n return t;\n },\n easeInQuad: function easeInQuad(t) {\n return t * t;\n },\n easeOutQuad: function easeOutQuad(t) {\n return -1 * t * (t - 2);\n },\n easeInOutQuad: function easeInOutQuad(t) {\n return (t /= .5) < 1 ? .5 * t * t : -.5 * (--t * (t - 2) - 1);\n },\n easeInCubic: function easeInCubic(t) {\n return t * t * t;\n },\n easeOutCubic: function easeOutCubic(t) {\n return 1 * ((t = t / 1 - 1) * t * t + 1);\n },\n easeInOutCubic: function easeInOutCubic(t) {\n return (t /= .5) < 1 ? .5 * t * t * t : .5 * ((t -= 2) * t * t + 2);\n },\n easeInQuart: function easeInQuart(t) {\n return t * t * t * t;\n },\n easeOutQuart: function easeOutQuart(t) {\n return -1 * ((t = t / 1 - 1) * t * t * t - 1);\n },\n easeInOutQuart: function easeInOutQuart(t) {\n return (t /= .5) < 1 ? .5 * t * t * t * t : -.5 * ((t -= 2) * t * t * t - 2);\n },\n easeInQuint: function easeInQuint(t) {\n return 1 * (t /= 1) * t * t * t * t;\n },\n easeOutQuint: function easeOutQuint(t) {\n return 1 * ((t = t / 1 - 1) * t * t * t * t + 1);\n },\n easeInOutQuint: function easeInOutQuint(t) {\n return (t /= .5) < 1 ? .5 * t * t * t * t * t : .5 * ((t -= 2) * t * t * t * t + 2);\n },\n easeInSine: function easeInSine(t) {\n return -1 * Math.cos(t / 1 * (Math.PI / 2)) + 1;\n },\n easeOutSine: function easeOutSine(t) {\n return 1 * Math.sin(t / 1 * (Math.PI / 2));\n },\n easeInOutSine: function easeInOutSine(t) {\n return -.5 * (Math.cos(Math.PI * t / 1) - 1);\n },\n easeInExpo: function easeInExpo(t) {\n return 0 === t ? 1 : 1 * Math.pow(2, 10 * (t / 1 - 1));\n },\n easeOutExpo: function easeOutExpo(t) {\n return 1 === t ? 1 : 1 * (-Math.pow(2, -10 * t / 1) + 1);\n },\n easeInOutExpo: function easeInOutExpo(t) {\n return 0 === t ? 0 : 1 === t ? 1 : (t /= .5) < 1 ? .5 * Math.pow(2, 10 * (t - 1)) : .5 * (-Math.pow(2, -10 * --t) + 2);\n },\n easeInCirc: function easeInCirc(t) {\n return t >= 1 ? t : -1 * (Math.sqrt(1 - (t /= 1) * t) - 1);\n },\n easeOutCirc: function easeOutCirc(t) {\n return 1 * Math.sqrt(1 - (t = t / 1 - 1) * t);\n },\n easeInOutCirc: function easeInOutCirc(t) {\n return (t /= .5) < 1 ? -.5 * (Math.sqrt(1 - t * t) - 1) : .5 * (Math.sqrt(1 - (t -= 2) * t) + 1);\n },\n easeInElastic: function easeInElastic(t) {\n var e = 1.70158,\n a = 0,\n i = 1;\n return 0 === t ? 0 : 1 === (t /= 1) ? 1 : (a || (a = .3), i < Math.abs(1) ? (i = 1, e = a / 4) : e = a / (2 * Math.PI) * Math.asin(1 / i), -(i * Math.pow(2, 10 * (t -= 1)) * Math.sin((1 * t - e) * (2 * Math.PI) / a)));\n },\n easeOutElastic: function easeOutElastic(t) {\n var e = 1.70158,\n a = 0,\n i = 1;\n return 0 === t ? 0 : 1 === (t /= 1) ? 1 : (a || (a = .3), i < Math.abs(1) ? (i = 1, e = a / 4) : e = a / (2 * Math.PI) * Math.asin(1 / i), i * Math.pow(2, -10 * t) * Math.sin((1 * t - e) * (2 * Math.PI) / a) + 1);\n },\n easeInOutElastic: function easeInOutElastic(t) {\n var e = 1.70158,\n a = 0,\n i = 1;\n return 0 === t ? 0 : 2 === (t /= .5) ? 1 : (a || (a = 1 * (.3 * 1.5)), i < Math.abs(1) ? (i = 1, e = a / 4) : e = a / (2 * Math.PI) * Math.asin(1 / i), t < 1 ? -.5 * (i * Math.pow(2, 10 * (t -= 1)) * Math.sin((1 * t - e) * (2 * Math.PI) / a)) : i * Math.pow(2, -10 * (t -= 1)) * Math.sin((1 * t - e) * (2 * Math.PI) / a) * .5 + 1);\n },\n easeInBack: function easeInBack(t) {\n var e = 1.70158;\n return 1 * (t /= 1) * t * ((e + 1) * t - e);\n },\n easeOutBack: function easeOutBack(t) {\n var e = 1.70158;\n return 1 * ((t = t / 1 - 1) * t * ((e + 1) * t + e) + 1);\n },\n easeInOutBack: function easeInOutBack(t) {\n var e = 1.70158;\n return (t /= .5) < 1 ? .5 * (t * t * (((e *= 1.525) + 1) * t - e)) : .5 * ((t -= 2) * t * (((e *= 1.525) + 1) * t + e) + 2);\n },\n easeInBounce: function easeInBounce(t) {\n return 1 - r.easeOutBounce(1 - t);\n },\n easeOutBounce: function easeOutBounce(t) {\n return (t /= 1) < 1 / 2.75 ? 1 * (7.5625 * t * t) : t < 2 / 2.75 ? 1 * (7.5625 * (t -= 1.5 / 2.75) * t + .75) : t < 2.5 / 2.75 ? 1 * (7.5625 * (t -= 2.25 / 2.75) * t + .9375) : 1 * (7.5625 * (t -= 2.625 / 2.75) * t + .984375);\n },\n easeInOutBounce: function easeInOutBounce(t) {\n return t < .5 ? .5 * r.easeInBounce(2 * t) : .5 * r.easeOutBounce(2 * t - 1) + .5;\n }\n };\n o.requestAnimFrame = function () {\n return window.requestAnimationFrame || window.webkitRequestAnimationFrame || window.mozRequestAnimationFrame || window.oRequestAnimationFrame || window.msRequestAnimationFrame || function (t) {\n return window.setTimeout(t, 1e3 / 60);\n };\n }(), o.getRelativePosition = function (t, e) {\n var a,\n i,\n n = t.originalEvent || t,\n r = t.currentTarget || t.srcElement,\n s = r.getBoundingClientRect(),\n l = n.touches;\n l && l.length > 0 ? (a = l[0].clientX, i = l[0].clientY) : (a = n.clientX, i = n.clientY);\n var u = parseFloat(o.getStyle(r, \"padding-left\")),\n d = parseFloat(o.getStyle(r, \"padding-top\")),\n c = parseFloat(o.getStyle(r, \"padding-right\")),\n h = parseFloat(o.getStyle(r, \"padding-bottom\")),\n f = s.right - s.left - u - c,\n g = s.bottom - s.top - d - h;\n return a = Math.round((a - s.left - u) / f * r.width / e.currentDevicePixelRatio), i = Math.round((i - s.top - d) / g * r.height / e.currentDevicePixelRatio), {\n x: a,\n y: i\n };\n }, o.addEvent = function (t, e, a) {\n t.addEventListener ? t.addEventListener(e, a) : t.attachEvent ? t.attachEvent(\"on\" + e, a) : t[\"on\" + e] = a;\n }, o.removeEvent = function (t, e, a) {\n t.removeEventListener ? t.removeEventListener(e, a, !1) : t.detachEvent ? t.detachEvent(\"on\" + e, a) : t[\"on\" + e] = o.noop;\n }, o.getConstraintWidth = function (t) {\n return n(t, \"max-width\", \"clientWidth\");\n }, o.getConstraintHeight = function (t) {\n return n(t, \"max-height\", \"clientHeight\");\n }, o.getMaximumWidth = function (t) {\n var e = t.parentNode,\n a = parseInt(o.getStyle(e, \"padding-left\"), 10),\n i = parseInt(o.getStyle(e, \"padding-right\"), 10),\n n = e.clientWidth - a - i,\n r = o.getConstraintWidth(t);\n return isNaN(r) ? n : Math.min(n, r);\n }, o.getMaximumHeight = function (t) {\n var e = t.parentNode,\n a = parseInt(o.getStyle(e, \"padding-top\"), 10),\n i = parseInt(o.getStyle(e, \"padding-bottom\"), 10),\n n = e.clientHeight - a - i,\n r = o.getConstraintHeight(t);\n return isNaN(r) ? n : Math.min(n, r);\n }, o.getStyle = function (t, e) {\n return t.currentStyle ? t.currentStyle[e] : document.defaultView.getComputedStyle(t, null).getPropertyValue(e);\n }, o.retinaScale = function (t) {\n var e = t.currentDevicePixelRatio = window.devicePixelRatio || 1;\n if (1 !== e) {\n var a = t.canvas,\n i = t.height,\n n = t.width;\n a.height = i * e, a.width = n * e, t.ctx.scale(e, e), a.style.height = i + \"px\", a.style.width = n + \"px\";\n }\n }, o.clear = function (t) {\n t.ctx.clearRect(0, 0, t.width, t.height);\n }, o.fontString = function (t, e, a) {\n return e + \" \" + t + \"px \" + a;\n }, o.longestText = function (t, e, a, i) {\n i = i || {};\n var n = i.data = i.data || {},\n r = i.garbageCollect = i.garbageCollect || [];\n i.font !== e && (n = i.data = {}, r = i.garbageCollect = [], i.font = e), t.font = e;\n var s = 0;\n o.each(a, function (e) {\n void 0 !== e && null !== e && o.isArray(e) !== !0 ? s = o.measureText(t, n, r, s, e) : o.isArray(e) && o.each(e, function (e) {\n void 0 === e || null === e || o.isArray(e) || (s = o.measureText(t, n, r, s, e));\n });\n });\n var l = r.length / 2;\n if (l > a.length) {\n for (var u = 0; u < l; u++) delete n[r[u]];\n r.splice(0, l);\n }\n return s;\n }, o.measureText = function (t, e, a, i, n) {\n var o = e[n];\n return o || (o = e[n] = t.measureText(n).width, a.push(n)), o > i && (i = o), i;\n }, o.numberOfLabelLines = function (t) {\n var e = 1;\n return o.each(t, function (t) {\n o.isArray(t) && t.length > e && (e = t.length);\n }), e;\n }, o.drawRoundedRectangle = function (t, e, a, i, n, o) {\n t.beginPath(), t.moveTo(e + o, a), t.lineTo(e + i - o, a), t.quadraticCurveTo(e + i, a, e + i, a + o), t.lineTo(e + i, a + n - o), t.quadraticCurveTo(e + i, a + n, e + i - o, a + n), t.lineTo(e + o, a + n), t.quadraticCurveTo(e, a + n, e, a + n - o), t.lineTo(e, a + o), t.quadraticCurveTo(e, a, e + o, a), t.closePath();\n }, o.color = function (e) {\n return i ? i(e instanceof CanvasGradient ? t.defaults.global.defaultColor : e) : (console.error(\"Color.js not found!\"), e);\n }, o.isArray = Array.isArray ? function (t) {\n return Array.isArray(t);\n } : function (t) {\n return \"[object Array]\" === Object.prototype.toString.call(t);\n }, o.arrayEquals = function (t, e) {\n var a, i, n, r;\n if (!t || !e || t.length !== e.length) return !1;\n for (a = 0, i = t.length; a < i; ++a) if (n = t[a], r = e[a], n instanceof Array && r instanceof Array) {\n if (!o.arrayEquals(n, r)) return !1;\n } else if (n !== r) return !1;\n return !0;\n }, o.callCallback = function (t, e, a) {\n t && \"function\" == typeof t.call && t.apply(a, e);\n }, o.getHoverColor = function (t) {\n return t instanceof CanvasPattern ? t : o.color(t).saturate(.5).darken(.1).rgbString();\n };\n };\n }, {\n 3: 3\n }],\n 27: [function (t, e, a) {\n \"use strict\";\n\n e.exports = function (t) {\n function e(t, e) {\n return t[\"native\"] ? {\n x: t.x,\n y: t.y\n } : r.getRelativePosition(t, e);\n }\n function a(t, e) {\n var a,\n i,\n n,\n o,\n r,\n s = t.data.datasets;\n for (i = 0, o = s.length; i < o; ++i) if (t.isDatasetVisible(i)) for (a = t.getDatasetMeta(i), n = 0, r = a.data.length; n < r; ++n) {\n var l = a.data[n];\n l._view.skip || e(l);\n }\n }\n function i(t, e) {\n var i = [];\n return a(t, function (t) {\n t.inRange(e.x, e.y) && i.push(t);\n }), i;\n }\n function n(t, e, i, n) {\n var o = Number.POSITIVE_INFINITY,\n s = [];\n return n || (n = r.distanceBetweenPoints), a(t, function (t) {\n if (!i || t.inRange(e.x, e.y)) {\n var a = t.getCenterPoint(),\n r = n(e, a);\n r < o ? (s = [t], o = r) : r === o && s.push(t);\n }\n }), s;\n }\n function o(t, a, o) {\n var r = e(a, t.chart),\n s = function s(t, e) {\n return Math.abs(t.x - e.x);\n },\n l = o.intersect ? i(t, r) : n(t, r, !1, s),\n u = [];\n return l.length ? (t.data.datasets.forEach(function (e, a) {\n if (t.isDatasetVisible(a)) {\n var i = t.getDatasetMeta(a),\n n = i.data[l[0]._index];\n n && !n._view.skip && u.push(n);\n }\n }), u) : [];\n }\n var r = t.helpers;\n t.Interaction = {\n modes: {\n single: function single(t, i) {\n var n = e(i, t.chart),\n o = [];\n return a(t, function (t) {\n if (t.inRange(n.x, n.y)) return o.push(t), o;\n }), o.slice(0, 1);\n },\n label: o,\n index: o,\n dataset: function dataset(t, a, o) {\n var r = e(a, t.chart),\n s = o.intersect ? i(t, r) : n(t, r, !1);\n return s.length > 0 && (s = t.getDatasetMeta(s[0]._datasetIndex).data), s;\n },\n \"x-axis\": function xAxis(t, e) {\n return o(t, e, !0);\n },\n point: function point(t, a) {\n var n = e(a, t.chart);\n return i(t, n);\n },\n nearest: function nearest(t, a, i) {\n var o = e(a, t.chart),\n r = n(t, o, i.intersect);\n return r.length > 1 && r.sort(function (t, e) {\n var a = t.getArea(),\n i = e.getArea(),\n n = a - i;\n return 0 === n && (n = t._datasetIndex - e._datasetIndex), n;\n }), r.slice(0, 1);\n },\n x: function x(t, i, n) {\n var o = e(i, t.chart),\n r = [],\n s = !1;\n return a(t, function (t) {\n t.inXRange(o.x) && r.push(t), t.inRange(o.x, o.y) && (s = !0);\n }), n.intersect && !s && (r = []), r;\n },\n y: function y(t, i, n) {\n var o = e(i, t.chart),\n r = [],\n s = !1;\n return a(t, function (t) {\n t.inYRange(o.y) && r.push(t), t.inRange(o.x, o.y) && (s = !0);\n }), n.intersect && !s && (r = []), r;\n }\n }\n };\n };\n }, {}],\n 28: [function (t, e, a) {\n \"use strict\";\n\n e.exports = function () {\n var t = function t(e, a) {\n return this.controller = new t.Controller(e, a, this), this.controller;\n };\n return t.defaults = {\n global: {\n responsive: !0,\n responsiveAnimationDuration: 0,\n maintainAspectRatio: !0,\n events: [\"mousemove\", \"mouseout\", \"click\", \"touchstart\", \"touchmove\"],\n hover: {\n onHover: null,\n mode: \"nearest\",\n intersect: !0,\n animationDuration: 400\n },\n onClick: null,\n defaultColor: \"rgba(0,0,0,0.1)\",\n defaultFontColor: \"#666\",\n defaultFontFamily: \"'Helvetica Neue', 'Helvetica', 'Arial', sans-serif\",\n defaultFontSize: 12,\n defaultFontStyle: \"normal\",\n showLines: !0,\n elements: {},\n legendCallback: function legendCallback(t) {\n var e = [];\n e.push('
      ');\n for (var a = 0; a < t.data.datasets.length; a++) e.push('
    • '), t.data.datasets[a].label && e.push(t.data.datasets[a].label), e.push(\"
    • \");\n return e.push(\"
    \"), e.join(\"\");\n }\n }\n }, t.Chart = t, t;\n };\n }, {}],\n 29: [function (t, e, a) {\n \"use strict\";\n\n e.exports = function (t) {\n var e = t.helpers;\n t.layoutService = {\n defaults: {},\n addBox: function addBox(t, e) {\n t.boxes || (t.boxes = []), t.boxes.push(e);\n },\n removeBox: function removeBox(t, e) {\n t.boxes && t.boxes.splice(t.boxes.indexOf(e), 1);\n },\n update: function update(t, a, i) {\n function n(t) {\n var e,\n a = t.isHorizontal();\n a ? (e = t.update(t.options.fullWidth ? x : C, w), I -= e.height) : (e = t.update(M, S), C -= e.width), D.push({\n horizontal: a,\n minSize: e,\n box: t\n });\n }\n function o(t) {\n var a = e.findNextWhere(D, function (e) {\n return e.box === t;\n });\n if (a) if (t.isHorizontal()) {\n var i = {\n left: Math.max(F, A),\n right: Math.max(V, T),\n top: 0,\n bottom: 0\n };\n t.update(t.options.fullWidth ? x : C, y / 2, i);\n } else t.update(a.minSize.width, I);\n }\n function r(t) {\n var a = e.findNextWhere(D, function (e) {\n return e.box === t;\n }),\n i = {\n left: 0,\n right: 0,\n top: R,\n bottom: O\n };\n a && t.update(a.minSize.width, I, i);\n }\n function s(t) {\n t.isHorizontal() ? (t.left = t.options.fullWidth ? d : F, t.right = t.options.fullWidth ? a - c : F + C, t.top = E, t.bottom = E + t.height, E = t.bottom) : (t.left = N, t.right = N + t.width, t.top = R, t.bottom = R + I, N = t.right);\n }\n if (t) {\n var l = t.options.layout,\n u = l ? l.padding : null,\n d = 0,\n c = 0,\n h = 0,\n f = 0;\n isNaN(u) ? (d = u.left || 0, c = u.right || 0, h = u.top || 0, f = u.bottom || 0) : (d = u, c = u, h = u, f = u);\n var g = e.where(t.boxes, function (t) {\n return \"left\" === t.options.position;\n }),\n p = e.where(t.boxes, function (t) {\n return \"right\" === t.options.position;\n }),\n m = e.where(t.boxes, function (t) {\n return \"top\" === t.options.position;\n }),\n v = e.where(t.boxes, function (t) {\n return \"bottom\" === t.options.position;\n }),\n b = e.where(t.boxes, function (t) {\n return \"chartArea\" === t.options.position;\n });\n m.sort(function (t, e) {\n return (e.options.fullWidth ? 1 : 0) - (t.options.fullWidth ? 1 : 0);\n }), v.sort(function (t, e) {\n return (t.options.fullWidth ? 1 : 0) - (e.options.fullWidth ? 1 : 0);\n });\n var x = a - d - c,\n y = i - h - f,\n k = x / 2,\n S = y / 2,\n M = (a - k) / (g.length + p.length),\n w = (i - S) / (m.length + v.length),\n C = x,\n I = y,\n D = [];\n e.each(g.concat(p, m, v), n);\n var A = 0,\n T = 0,\n P = 0,\n _ = 0;\n e.each(m.concat(v), function (t) {\n if (t.getPadding) {\n var e = t.getPadding();\n A = Math.max(A, e.left), T = Math.max(T, e.right);\n }\n }), e.each(g.concat(p), function (t) {\n if (t.getPadding) {\n var e = t.getPadding();\n P = Math.max(P, e.top), _ = Math.max(_, e.bottom);\n }\n });\n var F = d,\n V = c,\n R = h,\n O = f;\n e.each(g.concat(p), o), e.each(g, function (t) {\n F += t.width;\n }), e.each(p, function (t) {\n V += t.width;\n }), e.each(m.concat(v), o), e.each(m, function (t) {\n R += t.height;\n }), e.each(v, function (t) {\n O += t.height;\n }), e.each(g.concat(p), r), F = d, V = c, R = h, O = f, e.each(g, function (t) {\n F += t.width;\n }), e.each(p, function (t) {\n V += t.width;\n }), e.each(m, function (t) {\n R += t.height;\n }), e.each(v, function (t) {\n O += t.height;\n });\n var L = Math.max(A - F, 0);\n F += L, V += Math.max(T - V, 0);\n var B = Math.max(P - R, 0);\n R += B, O += Math.max(_ - O, 0);\n var z = i - R - O,\n W = a - F - V;\n W === C && z === I || (e.each(g, function (t) {\n t.height = z;\n }), e.each(p, function (t) {\n t.height = z;\n }), e.each(m, function (t) {\n t.options.fullWidth || (t.width = W);\n }), e.each(v, function (t) {\n t.options.fullWidth || (t.width = W);\n }), I = z, C = W);\n var N = d + L,\n E = h + B;\n e.each(g.concat(m), s), N += C, E += I, e.each(p, s), e.each(v, s), t.chartArea = {\n left: F,\n top: R,\n right: F + C,\n bottom: R + I\n }, e.each(b, function (e) {\n e.left = t.chartArea.left, e.top = t.chartArea.top, e.right = t.chartArea.right, e.bottom = t.chartArea.bottom, e.update(C, I);\n });\n }\n }\n };\n };\n }, {}],\n 30: [function (t, e, a) {\n \"use strict\";\n\n e.exports = function (t) {\n function e(t, e) {\n return t.usePointStyle ? e * Math.SQRT2 : t.boxWidth;\n }\n function a(e, a) {\n var i = new t.Legend({\n ctx: e.chart.ctx,\n options: a,\n chart: e\n });\n e.legend = i, t.layoutService.addBox(e, i);\n }\n var i = t.helpers,\n n = i.noop;\n t.defaults.global.legend = {\n display: !0,\n position: \"top\",\n fullWidth: !0,\n reverse: !1,\n onClick: function onClick(t, e) {\n var a = e.datasetIndex,\n i = this.chart,\n n = i.getDatasetMeta(a);\n n.hidden = null === n.hidden ? !i.data.datasets[a].hidden : null, i.update();\n },\n onHover: null,\n labels: {\n boxWidth: 40,\n padding: 10,\n generateLabels: function generateLabels(t) {\n var e = t.data;\n return i.isArray(e.datasets) ? e.datasets.map(function (e, a) {\n return {\n text: e.label,\n fillStyle: i.isArray(e.backgroundColor) ? e.backgroundColor[0] : e.backgroundColor,\n hidden: !t.isDatasetVisible(a),\n lineCap: e.borderCapStyle,\n lineDash: e.borderDash,\n lineDashOffset: e.borderDashOffset,\n lineJoin: e.borderJoinStyle,\n lineWidth: e.borderWidth,\n strokeStyle: e.borderColor,\n pointStyle: e.pointStyle,\n datasetIndex: a\n };\n }, this) : [];\n }\n }\n }, t.Legend = t.Element.extend({\n initialize: function initialize(t) {\n i.extend(this, t), this.legendHitBoxes = [], this.doughnutMode = !1;\n },\n beforeUpdate: n,\n update: function update(t, e, a) {\n var i = this;\n return i.beforeUpdate(), i.maxWidth = t, i.maxHeight = e, i.margins = a, i.beforeSetDimensions(), i.setDimensions(), i.afterSetDimensions(), i.beforeBuildLabels(), i.buildLabels(), i.afterBuildLabels(), i.beforeFit(), i.fit(), i.afterFit(), i.afterUpdate(), i.minSize;\n },\n afterUpdate: n,\n beforeSetDimensions: n,\n setDimensions: function setDimensions() {\n var t = this;\n t.isHorizontal() ? (t.width = t.maxWidth, t.left = 0, t.right = t.width) : (t.height = t.maxHeight, t.top = 0, t.bottom = t.height), t.paddingLeft = 0, t.paddingTop = 0, t.paddingRight = 0, t.paddingBottom = 0, t.minSize = {\n width: 0,\n height: 0\n };\n },\n afterSetDimensions: n,\n beforeBuildLabels: n,\n buildLabels: function buildLabels() {\n var t = this,\n e = t.options.labels,\n a = e.generateLabels.call(t, t.chart);\n e.filter && (a = a.filter(function (a) {\n return e.filter(a, t.chart.data);\n })), t.options.reverse && a.reverse(), t.legendItems = a;\n },\n afterBuildLabels: n,\n beforeFit: n,\n fit: function fit() {\n var a = this,\n n = a.options,\n o = n.labels,\n r = n.display,\n s = a.ctx,\n l = t.defaults.global,\n u = i.getValueOrDefault,\n d = u(o.fontSize, l.defaultFontSize),\n c = u(o.fontStyle, l.defaultFontStyle),\n h = u(o.fontFamily, l.defaultFontFamily),\n f = i.fontString(d, c, h),\n g = a.legendHitBoxes = [],\n p = a.minSize,\n m = a.isHorizontal();\n if (m ? (p.width = a.maxWidth, p.height = r ? 10 : 0) : (p.width = r ? 10 : 0, p.height = a.maxHeight), r) if (s.font = f, m) {\n var v = a.lineWidths = [0],\n b = a.legendItems.length ? d + o.padding : 0;\n s.textAlign = \"left\", s.textBaseline = \"top\", i.each(a.legendItems, function (t, i) {\n var n = e(o, d),\n r = n + d / 2 + s.measureText(t.text).width;\n v[v.length - 1] + r + o.padding >= a.width && (b += d + o.padding, v[v.length] = a.left), g[i] = {\n left: 0,\n top: 0,\n width: r,\n height: d\n }, v[v.length - 1] += r + o.padding;\n }), p.height += b;\n } else {\n var x = o.padding,\n y = a.columnWidths = [],\n k = o.padding,\n S = 0,\n M = 0,\n w = d + x;\n i.each(a.legendItems, function (t, a) {\n var i = e(o, d),\n n = i + d / 2 + s.measureText(t.text).width;\n M + w > p.height && (k += S + o.padding, y.push(S), S = 0, M = 0), S = Math.max(S, n), M += w, g[a] = {\n left: 0,\n top: 0,\n width: n,\n height: d\n };\n }), k += S, y.push(S), p.width += k;\n }\n a.width = p.width, a.height = p.height;\n },\n afterFit: n,\n isHorizontal: function isHorizontal() {\n return \"top\" === this.options.position || \"bottom\" === this.options.position;\n },\n draw: function draw() {\n var a = this,\n n = a.options,\n o = n.labels,\n r = t.defaults.global,\n s = r.elements.line,\n l = a.width,\n u = a.lineWidths;\n if (n.display) {\n var d,\n c = a.ctx,\n h = i.getValueOrDefault,\n f = h(o.fontColor, r.defaultFontColor),\n g = h(o.fontSize, r.defaultFontSize),\n p = h(o.fontStyle, r.defaultFontStyle),\n m = h(o.fontFamily, r.defaultFontFamily),\n v = i.fontString(g, p, m);\n c.textAlign = \"left\", c.textBaseline = \"top\", c.lineWidth = .5, c.strokeStyle = f, c.fillStyle = f, c.font = v;\n var b = e(o, g),\n x = a.legendHitBoxes,\n y = function y(e, a, i) {\n if (!(isNaN(b) || b <= 0)) {\n c.save(), c.fillStyle = h(i.fillStyle, r.defaultColor), c.lineCap = h(i.lineCap, s.borderCapStyle), c.lineDashOffset = h(i.lineDashOffset, s.borderDashOffset), c.lineJoin = h(i.lineJoin, s.borderJoinStyle), c.lineWidth = h(i.lineWidth, s.borderWidth), c.strokeStyle = h(i.strokeStyle, r.defaultColor);\n var o = 0 === h(i.lineWidth, s.borderWidth);\n if (c.setLineDash && c.setLineDash(h(i.lineDash, s.borderDash)), n.labels && n.labels.usePointStyle) {\n var l = g * Math.SQRT2 / 2,\n u = l / Math.SQRT2,\n d = e + u,\n f = a + u;\n t.canvasHelpers.drawPoint(c, i.pointStyle, l, d, f);\n } else o || c.strokeRect(e, a, b, g), c.fillRect(e, a, b, g);\n c.restore();\n }\n },\n k = function k(t, e, a, i) {\n c.fillText(a.text, b + g / 2 + t, e), a.hidden && (c.beginPath(), c.lineWidth = 2, c.moveTo(b + g / 2 + t, e + g / 2), c.lineTo(b + g / 2 + t + i, e + g / 2), c.stroke());\n },\n S = a.isHorizontal();\n d = S ? {\n x: a.left + (l - u[0]) / 2,\n y: a.top + o.padding,\n line: 0\n } : {\n x: a.left + o.padding,\n y: a.top + o.padding,\n line: 0\n };\n var M = g + o.padding;\n i.each(a.legendItems, function (t, e) {\n var i = c.measureText(t.text).width,\n n = b + g / 2 + i,\n r = d.x,\n s = d.y;\n S ? r + n >= l && (s = d.y += M, d.line++, r = d.x = a.left + (l - u[d.line]) / 2) : s + M > a.bottom && (r = d.x = r + a.columnWidths[d.line] + o.padding, s = d.y = a.top + o.padding, d.line++), y(r, s, t), x[e].left = r, x[e].top = s, k(r, s, t, i), S ? d.x += n + o.padding : d.y += M;\n });\n }\n },\n handleEvent: function handleEvent(t) {\n var e = this,\n a = e.options,\n i = \"mouseup\" === t.type ? \"click\" : t.type,\n n = !1;\n if (\"mousemove\" === i) {\n if (!a.onHover) return;\n } else {\n if (\"click\" !== i) return;\n if (!a.onClick) return;\n }\n var o = t.x,\n r = t.y;\n if (o >= e.left && o <= e.right && r >= e.top && r <= e.bottom) for (var s = e.legendHitBoxes, l = 0; l < s.length; ++l) {\n var u = s[l];\n if (o >= u.left && o <= u.left + u.width && r >= u.top && r <= u.top + u.height) {\n if (\"click\" === i) {\n a.onClick.call(e, t[\"native\"], e.legendItems[l]), n = !0;\n break;\n }\n if (\"mousemove\" === i) {\n a.onHover.call(e, t[\"native\"], e.legendItems[l]), n = !0;\n break;\n }\n }\n }\n return n;\n }\n }), t.plugins.register({\n beforeInit: function beforeInit(t) {\n var e = t.options.legend;\n e && a(t, e);\n },\n beforeUpdate: function beforeUpdate(e) {\n var n = e.options.legend;\n n ? (n = i.configMerge(t.defaults.global.legend, n), e.legend ? e.legend.options = n : a(e, n)) : (t.layoutService.removeBox(e, e.legend), delete e.legend);\n },\n afterEvent: function afterEvent(t, e) {\n var a = t.legend;\n a && a.handleEvent(e);\n }\n });\n };\n }, {}],\n 31: [function (t, e, a) {\n \"use strict\";\n\n e.exports = function (t) {\n var e = t.helpers;\n t.defaults.global.plugins = {}, t.plugins = {\n _plugins: [],\n _cacheId: 0,\n register: function register(t) {\n var e = this._plugins;\n [].concat(t).forEach(function (t) {\n e.indexOf(t) === -1 && e.push(t);\n }), this._cacheId++;\n },\n unregister: function unregister(t) {\n var e = this._plugins;\n [].concat(t).forEach(function (t) {\n var a = e.indexOf(t);\n a !== -1 && e.splice(a, 1);\n }), this._cacheId++;\n },\n clear: function clear() {\n this._plugins = [], this._cacheId++;\n },\n count: function count() {\n return this._plugins.length;\n },\n getAll: function getAll() {\n return this._plugins;\n },\n notify: function notify(t, e, a) {\n var i,\n n,\n o,\n r,\n s,\n l = this.descriptors(t),\n u = l.length;\n for (i = 0; i < u; ++i) if (n = l[i], o = n.plugin, s = o[e], \"function\" == typeof s && (r = [t].concat(a || []), r.push(n.options), s.apply(o, r) === !1)) return !1;\n return !0;\n },\n descriptors: function descriptors(a) {\n var i = a._plugins || (a._plugins = {});\n if (i.id === this._cacheId) return i.descriptors;\n var n = [],\n o = [],\n r = a && a.config || {},\n s = t.defaults.global.plugins,\n l = r.options && r.options.plugins || {};\n return this._plugins.concat(r.plugins || []).forEach(function (t) {\n var a = n.indexOf(t);\n if (a === -1) {\n var i = t.id,\n r = l[i];\n r !== !1 && (r === !0 && (r = e.clone(s[i])), n.push(t), o.push({\n plugin: t,\n options: r || {}\n }));\n }\n }), i.descriptors = o, i.id = this._cacheId, o;\n }\n }, t.pluginService = t.plugins, t.PluginBase = e.inherits({});\n };\n }, {}],\n 32: [function (t, e, a) {\n \"use strict\";\n\n e.exports = function (t) {\n function e(t, e, a) {\n return i.isArray(e) ? i.longestText(t, a, e) : t.measureText(e).width;\n }\n function a(e) {\n var a = i.getValueOrDefault,\n n = t.defaults.global,\n o = a(e.fontSize, n.defaultFontSize),\n r = a(e.fontStyle, n.defaultFontStyle),\n s = a(e.fontFamily, n.defaultFontFamily);\n return {\n size: o,\n style: r,\n family: s,\n font: i.fontString(o, r, s)\n };\n }\n var i = t.helpers;\n t.defaults.scale = {\n display: !0,\n position: \"left\",\n gridLines: {\n display: !0,\n color: \"rgba(0, 0, 0, 0.1)\",\n lineWidth: 1,\n drawBorder: !0,\n drawOnChartArea: !0,\n drawTicks: !0,\n tickMarkLength: 10,\n zeroLineWidth: 1,\n zeroLineColor: \"rgba(0,0,0,0.25)\",\n offsetGridLines: !1,\n borderDash: [],\n borderDashOffset: 0\n },\n scaleLabel: {\n labelString: \"\",\n display: !1\n },\n ticks: {\n beginAtZero: !1,\n minRotation: 0,\n maxRotation: 50,\n mirror: !1,\n padding: 0,\n reverse: !1,\n display: !0,\n autoSkip: !0,\n autoSkipPadding: 0,\n labelOffset: 0,\n callback: t.Ticks.formatters.values\n }\n }, t.Scale = t.Element.extend({\n getPadding: function getPadding() {\n var t = this;\n return {\n left: t.paddingLeft || 0,\n top: t.paddingTop || 0,\n right: t.paddingRight || 0,\n bottom: t.paddingBottom || 0\n };\n },\n beforeUpdate: function beforeUpdate() {\n i.callCallback(this.options.beforeUpdate, [this]);\n },\n update: function update(t, e, a) {\n var n = this;\n return n.beforeUpdate(), n.maxWidth = t, n.maxHeight = e, n.margins = i.extend({\n left: 0,\n right: 0,\n top: 0,\n bottom: 0\n }, a), n.longestTextCache = n.longestTextCache || {}, n.beforeSetDimensions(), n.setDimensions(), n.afterSetDimensions(), n.beforeDataLimits(), n.determineDataLimits(), n.afterDataLimits(), n.beforeBuildTicks(), n.buildTicks(), n.afterBuildTicks(), n.beforeTickToLabelConversion(), n.convertTicksToLabels(), n.afterTickToLabelConversion(), n.beforeCalculateTickRotation(), n.calculateTickRotation(), n.afterCalculateTickRotation(), n.beforeFit(), n.fit(), n.afterFit(), n.afterUpdate(), n.minSize;\n },\n afterUpdate: function afterUpdate() {\n i.callCallback(this.options.afterUpdate, [this]);\n },\n beforeSetDimensions: function beforeSetDimensions() {\n i.callCallback(this.options.beforeSetDimensions, [this]);\n },\n setDimensions: function setDimensions() {\n var t = this;\n t.isHorizontal() ? (t.width = t.maxWidth, t.left = 0, t.right = t.width) : (t.height = t.maxHeight, t.top = 0, t.bottom = t.height), t.paddingLeft = 0, t.paddingTop = 0, t.paddingRight = 0, t.paddingBottom = 0;\n },\n afterSetDimensions: function afterSetDimensions() {\n i.callCallback(this.options.afterSetDimensions, [this]);\n },\n beforeDataLimits: function beforeDataLimits() {\n i.callCallback(this.options.beforeDataLimits, [this]);\n },\n determineDataLimits: i.noop,\n afterDataLimits: function afterDataLimits() {\n i.callCallback(this.options.afterDataLimits, [this]);\n },\n beforeBuildTicks: function beforeBuildTicks() {\n i.callCallback(this.options.beforeBuildTicks, [this]);\n },\n buildTicks: i.noop,\n afterBuildTicks: function afterBuildTicks() {\n i.callCallback(this.options.afterBuildTicks, [this]);\n },\n beforeTickToLabelConversion: function beforeTickToLabelConversion() {\n i.callCallback(this.options.beforeTickToLabelConversion, [this]);\n },\n convertTicksToLabels: function convertTicksToLabels() {\n var t = this,\n e = t.options.ticks;\n t.ticks = t.ticks.map(e.userCallback || e.callback);\n },\n afterTickToLabelConversion: function afterTickToLabelConversion() {\n i.callCallback(this.options.afterTickToLabelConversion, [this]);\n },\n beforeCalculateTickRotation: function beforeCalculateTickRotation() {\n i.callCallback(this.options.beforeCalculateTickRotation, [this]);\n },\n calculateTickRotation: function calculateTickRotation() {\n var t = this,\n e = t.ctx,\n n = t.options.ticks,\n o = a(n);\n e.font = o.font;\n var r = n.minRotation || 0;\n if (t.options.display && t.isHorizontal()) for (var s, l, u = i.longestText(e, o.font, t.ticks, t.longestTextCache), d = u, c = t.getPixelForTick(1) - t.getPixelForTick(0) - 6; d > c && r < n.maxRotation;) {\n var h = i.toRadians(r);\n if (s = Math.cos(h), l = Math.sin(h), l * u > t.maxHeight) {\n r--;\n break;\n }\n r++, d = s * u;\n }\n t.labelRotation = r;\n },\n afterCalculateTickRotation: function afterCalculateTickRotation() {\n i.callCallback(this.options.afterCalculateTickRotation, [this]);\n },\n beforeFit: function beforeFit() {\n i.callCallback(this.options.beforeFit, [this]);\n },\n fit: function fit() {\n var t = this,\n n = t.minSize = {\n width: 0,\n height: 0\n },\n o = t.options,\n r = o.ticks,\n s = o.scaleLabel,\n l = o.gridLines,\n u = o.display,\n d = t.isHorizontal(),\n c = a(r),\n h = 1.5 * a(s).size,\n f = o.gridLines.tickMarkLength;\n if (d ? n.width = t.isFullWidth() ? t.maxWidth - t.margins.left - t.margins.right : t.maxWidth : n.width = u && l.drawTicks ? f : 0, d ? n.height = u && l.drawTicks ? f : 0 : n.height = t.maxHeight, s.display && u && (d ? n.height += h : n.width += h), r.display && u) {\n var g = i.longestText(t.ctx, c.font, t.ticks, t.longestTextCache),\n p = i.numberOfLabelLines(t.ticks),\n m = .5 * c.size;\n if (d) {\n t.longestLabelWidth = g;\n var v = i.toRadians(t.labelRotation),\n b = Math.cos(v),\n x = Math.sin(v),\n y = x * g + c.size * p + m * p;\n n.height = Math.min(t.maxHeight, n.height + y), t.ctx.font = c.font;\n var k = t.ticks[0],\n S = e(t.ctx, k, c.font),\n M = t.ticks[t.ticks.length - 1],\n w = e(t.ctx, M, c.font);\n 0 !== t.labelRotation ? (t.paddingLeft = \"bottom\" === o.position ? b * S + 3 : b * m + 3, t.paddingRight = \"bottom\" === o.position ? b * m + 3 : b * w + 3) : (t.paddingLeft = S / 2 + 3, t.paddingRight = w / 2 + 3);\n } else r.mirror ? g = 0 : g += t.options.ticks.padding, n.width += g, t.paddingTop = c.size / 2, t.paddingBottom = c.size / 2;\n }\n t.handleMargins(), t.width = n.width, t.height = n.height;\n },\n handleMargins: function handleMargins() {\n var t = this;\n t.margins && (t.paddingLeft = Math.max(t.paddingLeft - t.margins.left, 0), t.paddingTop = Math.max(t.paddingTop - t.margins.top, 0), t.paddingRight = Math.max(t.paddingRight - t.margins.right, 0), t.paddingBottom = Math.max(t.paddingBottom - t.margins.bottom, 0));\n },\n afterFit: function afterFit() {\n i.callCallback(this.options.afterFit, [this]);\n },\n isHorizontal: function isHorizontal() {\n return \"top\" === this.options.position || \"bottom\" === this.options.position;\n },\n isFullWidth: function isFullWidth() {\n return this.options.fullWidth;\n },\n getRightValue: function getRightValue(t) {\n return null === t || \"undefined\" == typeof t ? NaN : \"number\" != typeof t || isFinite(t) ? \"object\" == _typeof(t) ? t instanceof Date || t.isValid ? t : this.getRightValue(this.isHorizontal() ? t.x : t.y) : t : NaN;\n },\n getLabelForIndex: i.noop,\n getPixelForValue: i.noop,\n getValueForPixel: i.noop,\n getPixelForTick: function getPixelForTick(t, e) {\n var a = this;\n if (a.isHorizontal()) {\n var i = a.width - (a.paddingLeft + a.paddingRight),\n n = i / Math.max(a.ticks.length - (a.options.gridLines.offsetGridLines ? 0 : 1), 1),\n o = n * t + a.paddingLeft;\n e && (o += n / 2);\n var r = a.left + Math.round(o);\n return r += a.isFullWidth() ? a.margins.left : 0;\n }\n var s = a.height - (a.paddingTop + a.paddingBottom);\n return a.top + t * (s / (a.ticks.length - 1));\n },\n getPixelForDecimal: function getPixelForDecimal(t) {\n var e = this;\n if (e.isHorizontal()) {\n var a = e.width - (e.paddingLeft + e.paddingRight),\n i = a * t + e.paddingLeft,\n n = e.left + Math.round(i);\n return n += e.isFullWidth() ? e.margins.left : 0;\n }\n return e.top + t * e.height;\n },\n getBasePixel: function getBasePixel() {\n return this.getPixelForValue(this.getBaseValue());\n },\n getBaseValue: function getBaseValue() {\n var t = this,\n e = t.min,\n a = t.max;\n return t.beginAtZero ? 0 : e < 0 && a < 0 ? a : e > 0 && a > 0 ? e : 0;\n },\n draw: function draw(e) {\n var n = this,\n o = n.options;\n if (o.display) {\n var r,\n s,\n l = n.ctx,\n u = t.defaults.global,\n d = o.ticks,\n c = o.gridLines,\n h = o.scaleLabel,\n f = 0 !== n.labelRotation,\n g = d.autoSkip,\n p = n.isHorizontal();\n d.maxTicksLimit && (s = d.maxTicksLimit);\n var m = i.getValueOrDefault(d.fontColor, u.defaultFontColor),\n v = a(d),\n b = c.drawTicks ? c.tickMarkLength : 0,\n x = i.getValueOrDefault(c.borderDash, u.borderDash),\n y = i.getValueOrDefault(c.borderDashOffset, u.borderDashOffset),\n k = i.getValueOrDefault(h.fontColor, u.defaultFontColor),\n S = a(h),\n M = i.toRadians(n.labelRotation),\n w = Math.cos(M),\n C = n.longestLabelWidth * w;\n l.fillStyle = m;\n var I = [];\n if (p) {\n if (r = !1, f && (C /= 2), (C + d.autoSkipPadding) * n.ticks.length > n.width - (n.paddingLeft + n.paddingRight) && (r = 1 + Math.floor((C + d.autoSkipPadding) * n.ticks.length / (n.width - (n.paddingLeft + n.paddingRight)))), s && n.ticks.length > s) for (; !r || n.ticks.length / (r || 1) > s;) r || (r = 1), r += 1;\n g || (r = !1);\n }\n var D = \"right\" === o.position ? n.left : n.right - b,\n A = \"right\" === o.position ? n.left + b : n.right,\n T = \"bottom\" === o.position ? n.top : n.bottom - b,\n P = \"bottom\" === o.position ? n.top + b : n.bottom;\n if (i.each(n.ticks, function (t, a) {\n if (void 0 !== t && null !== t) {\n var s = n.ticks.length === a + 1,\n l = r > 1 && a % r > 0 || a % r === 0 && a + r >= n.ticks.length;\n if ((!l || s) && void 0 !== t && null !== t) {\n var u, h;\n a === (\"undefined\" != typeof n.zeroLineIndex ? n.zeroLineIndex : 0) ? (u = c.zeroLineWidth, h = c.zeroLineColor) : (u = i.getValueAtIndexOrDefault(c.lineWidth, a), h = i.getValueAtIndexOrDefault(c.color, a));\n var g,\n m,\n v,\n k,\n S,\n w,\n C,\n _,\n F,\n V,\n R = \"middle\",\n O = \"middle\";\n if (p) {\n \"bottom\" === o.position ? (O = f ? \"middle\" : \"top\", R = f ? \"right\" : \"center\", V = n.top + b) : (O = f ? \"middle\" : \"bottom\", R = f ? \"left\" : \"center\", V = n.bottom - b);\n var L = n.getPixelForTick(a) + i.aliasPixel(u);\n F = n.getPixelForTick(a, c.offsetGridLines) + d.labelOffset, g = v = S = C = L, m = T, k = P, w = e.top, _ = e.bottom;\n } else {\n var B,\n z = \"left\" === o.position,\n W = d.padding;\n d.mirror ? (R = z ? \"left\" : \"right\", B = W) : (R = z ? \"right\" : \"left\", B = b + W), F = z ? n.right - B : n.left + B;\n var N = n.getPixelForTick(a);\n N += i.aliasPixel(u), V = n.getPixelForTick(a, c.offsetGridLines), g = D, v = A, S = e.left, C = e.right, m = k = w = _ = N;\n }\n I.push({\n tx1: g,\n ty1: m,\n tx2: v,\n ty2: k,\n x1: S,\n y1: w,\n x2: C,\n y2: _,\n labelX: F,\n labelY: V,\n glWidth: u,\n glColor: h,\n glBorderDash: x,\n glBorderDashOffset: y,\n rotation: -1 * M,\n label: t,\n textBaseline: O,\n textAlign: R\n });\n }\n }\n }), i.each(I, function (t) {\n if (c.display && (l.save(), l.lineWidth = t.glWidth, l.strokeStyle = t.glColor, l.setLineDash && (l.setLineDash(t.glBorderDash), l.lineDashOffset = t.glBorderDashOffset), l.beginPath(), c.drawTicks && (l.moveTo(t.tx1, t.ty1), l.lineTo(t.tx2, t.ty2)), c.drawOnChartArea && (l.moveTo(t.x1, t.y1), l.lineTo(t.x2, t.y2)), l.stroke(), l.restore()), d.display) {\n l.save(), l.translate(t.labelX, t.labelY), l.rotate(t.rotation), l.font = v.font, l.textBaseline = t.textBaseline, l.textAlign = t.textAlign;\n var e = t.label;\n if (i.isArray(e)) for (var a = 0, n = 0; a < e.length; ++a) l.fillText(\"\" + e[a], 0, n), n += 1.5 * v.size;else l.fillText(e, 0, 0);\n l.restore();\n }\n }), h.display) {\n var _,\n F,\n V = 0;\n if (p) _ = n.left + (n.right - n.left) / 2, F = \"bottom\" === o.position ? n.bottom - S.size / 2 : n.top + S.size / 2;else {\n var R = \"left\" === o.position;\n _ = R ? n.left + S.size / 2 : n.right - S.size / 2, F = n.top + (n.bottom - n.top) / 2, V = R ? -.5 * Math.PI : .5 * Math.PI;\n }\n l.save(), l.translate(_, F), l.rotate(V), l.textAlign = \"center\", l.textBaseline = \"middle\", l.fillStyle = k, l.font = S.font, l.fillText(h.labelString, 0, 0), l.restore();\n }\n if (c.drawBorder) {\n l.lineWidth = i.getValueAtIndexOrDefault(c.lineWidth, 0), l.strokeStyle = i.getValueAtIndexOrDefault(c.color, 0);\n var O = n.left,\n L = n.right,\n B = n.top,\n z = n.bottom,\n W = i.aliasPixel(l.lineWidth);\n p ? (B = z = \"top\" === o.position ? n.bottom : n.top, B += W, z += W) : (O = L = \"left\" === o.position ? n.right : n.left, O += W, L += W), l.beginPath(), l.moveTo(O, B), l.lineTo(L, z), l.stroke();\n }\n }\n }\n });\n };\n }, {}],\n 33: [function (t, e, a) {\n \"use strict\";\n\n e.exports = function (t) {\n var e = t.helpers;\n t.scaleService = {\n constructors: {},\n defaults: {},\n registerScaleType: function registerScaleType(t, a, i) {\n this.constructors[t] = a, this.defaults[t] = e.clone(i);\n },\n getScaleConstructor: function getScaleConstructor(t) {\n return this.constructors.hasOwnProperty(t) ? this.constructors[t] : void 0;\n },\n getScaleDefaults: function getScaleDefaults(a) {\n return this.defaults.hasOwnProperty(a) ? e.scaleMerge(t.defaults.scale, this.defaults[a]) : {};\n },\n updateScaleDefaults: function updateScaleDefaults(t, a) {\n var i = this.defaults;\n i.hasOwnProperty(t) && (i[t] = e.extend(i[t], a));\n },\n addScalesToLayout: function addScalesToLayout(a) {\n e.each(a.scales, function (e) {\n t.layoutService.addBox(a, e);\n });\n }\n };\n };\n }, {}],\n 34: [function (t, e, a) {\n \"use strict\";\n\n e.exports = function (t) {\n var e = t.helpers;\n t.Ticks = {\n generators: {\n linear: function linear(t, a) {\n var i,\n n = [];\n if (t.stepSize && t.stepSize > 0) i = t.stepSize;else {\n var o = e.niceNum(a.max - a.min, !1);\n i = e.niceNum(o / (t.maxTicks - 1), !0);\n }\n var r = Math.floor(a.min / i) * i,\n s = Math.ceil(a.max / i) * i;\n t.min && t.max && t.stepSize && e.almostWhole((t.max - t.min) / t.stepSize, i / 1e3) && (r = t.min, s = t.max);\n var l = (s - r) / i;\n l = e.almostEquals(l, Math.round(l), i / 1e3) ? Math.round(l) : Math.ceil(l), n.push(void 0 !== t.min ? t.min : r);\n for (var u = 1; u < l; ++u) n.push(r + u * i);\n return n.push(void 0 !== t.max ? t.max : s), n;\n },\n logarithmic: function logarithmic(t, a) {\n var i,\n n,\n o = [],\n r = e.getValueOrDefault,\n s = r(t.min, Math.pow(10, Math.floor(e.log10(a.min)))),\n l = Math.floor(e.log10(a.max)),\n u = Math.ceil(a.max / Math.pow(10, l));\n 0 === s ? (i = Math.floor(e.log10(a.minNotZero)), n = Math.floor(a.minNotZero / Math.pow(10, i)), o.push(s), s = n * Math.pow(10, i)) : (i = Math.floor(e.log10(s)), n = Math.floor(s / Math.pow(10, i)));\n do o.push(s), ++n, 10 === n && (n = 1, ++i), s = n * Math.pow(10, i); while (i < l || i === l && n < u);\n var d = r(t.max, s);\n return o.push(d), o;\n }\n },\n formatters: {\n values: function values(t) {\n return e.isArray(t) ? t : \"\" + t;\n },\n linear: function linear(t, a, i) {\n var n = i.length > 3 ? i[2] - i[1] : i[1] - i[0];\n Math.abs(n) > 1 && t !== Math.floor(t) && (n = t - Math.floor(t));\n var o = e.log10(Math.abs(n)),\n r = \"\";\n if (0 !== t) {\n var s = -1 * Math.floor(o);\n s = Math.max(Math.min(s, 20), 0), r = t.toFixed(s);\n } else r = \"0\";\n return r;\n },\n logarithmic: function logarithmic(t, a, i) {\n var n = t / Math.pow(10, Math.floor(e.log10(t)));\n return 0 === t ? \"0\" : 1 === n || 2 === n || 5 === n || 0 === a || a === i.length - 1 ? t.toExponential() : \"\";\n }\n }\n };\n };\n }, {}],\n 35: [function (t, e, a) {\n \"use strict\";\n\n e.exports = function (t) {\n function e(e, a) {\n var i = new t.Title({\n ctx: e.chart.ctx,\n options: a,\n chart: e\n });\n e.titleBlock = i, t.layoutService.addBox(e, i);\n }\n var a = t.helpers;\n t.defaults.global.title = {\n display: !1,\n position: \"top\",\n fullWidth: !0,\n fontStyle: \"bold\",\n padding: 10,\n text: \"\"\n };\n var i = a.noop;\n t.Title = t.Element.extend({\n initialize: function initialize(t) {\n var e = this;\n a.extend(e, t), e.legendHitBoxes = [];\n },\n beforeUpdate: i,\n update: function update(t, e, a) {\n var i = this;\n return i.beforeUpdate(), i.maxWidth = t, i.maxHeight = e, i.margins = a, i.beforeSetDimensions(), i.setDimensions(), i.afterSetDimensions(), i.beforeBuildLabels(), i.buildLabels(), i.afterBuildLabels(), i.beforeFit(), i.fit(), i.afterFit(), i.afterUpdate(), i.minSize;\n },\n afterUpdate: i,\n beforeSetDimensions: i,\n setDimensions: function setDimensions() {\n var t = this;\n t.isHorizontal() ? (t.width = t.maxWidth, t.left = 0, t.right = t.width) : (t.height = t.maxHeight, t.top = 0, t.bottom = t.height), t.paddingLeft = 0, t.paddingTop = 0, t.paddingRight = 0, t.paddingBottom = 0, t.minSize = {\n width: 0,\n height: 0\n };\n },\n afterSetDimensions: i,\n beforeBuildLabels: i,\n buildLabels: i,\n afterBuildLabels: i,\n beforeFit: i,\n fit: function fit() {\n var e = this,\n i = a.getValueOrDefault,\n n = e.options,\n o = t.defaults.global,\n r = n.display,\n s = i(n.fontSize, o.defaultFontSize),\n l = e.minSize;\n e.isHorizontal() ? (l.width = e.maxWidth, l.height = r ? s + 2 * n.padding : 0) : (l.width = r ? s + 2 * n.padding : 0, l.height = e.maxHeight), e.width = l.width, e.height = l.height;\n },\n afterFit: i,\n isHorizontal: function isHorizontal() {\n var t = this.options.position;\n return \"top\" === t || \"bottom\" === t;\n },\n draw: function draw() {\n var e = this,\n i = e.ctx,\n n = a.getValueOrDefault,\n o = e.options,\n r = t.defaults.global;\n if (o.display) {\n var s,\n l,\n u,\n d = n(o.fontSize, r.defaultFontSize),\n c = n(o.fontStyle, r.defaultFontStyle),\n h = n(o.fontFamily, r.defaultFontFamily),\n f = a.fontString(d, c, h),\n g = 0,\n p = e.top,\n m = e.left,\n v = e.bottom,\n b = e.right;\n i.fillStyle = n(o.fontColor, r.defaultFontColor), i.font = f, e.isHorizontal() ? (s = m + (b - m) / 2, l = p + (v - p) / 2, u = b - m) : (s = \"left\" === o.position ? m + d / 2 : b - d / 2, l = p + (v - p) / 2, u = v - p, g = Math.PI * (\"left\" === o.position ? -.5 : .5)), i.save(), i.translate(s, l), i.rotate(g), i.textAlign = \"center\", i.textBaseline = \"middle\", i.fillText(o.text, 0, 0, u), i.restore();\n }\n }\n }), t.plugins.register({\n beforeInit: function beforeInit(t) {\n var a = t.options.title;\n a && e(t, a);\n },\n beforeUpdate: function beforeUpdate(i) {\n var n = i.options.title;\n n ? (n = a.configMerge(t.defaults.global.title, n), i.titleBlock ? i.titleBlock.options = n : e(i, n)) : (t.layoutService.removeBox(i, i.titleBlock), delete i.titleBlock);\n }\n });\n };\n }, {}],\n 36: [function (t, e, a) {\n \"use strict\";\n\n e.exports = function (t) {\n function e(t, e) {\n var a = l.color(t);\n return a.alpha(e * a.alpha()).rgbaString();\n }\n function a(t, e) {\n return e && (l.isArray(e) ? Array.prototype.push.apply(t, e) : t.push(e)), t;\n }\n function i(t) {\n var e = t._xScale,\n a = t._yScale || t._scale,\n i = t._index,\n n = t._datasetIndex;\n return {\n xLabel: e ? e.getLabelForIndex(i, n) : \"\",\n yLabel: a ? a.getLabelForIndex(i, n) : \"\",\n index: i,\n datasetIndex: n,\n x: t._model.x,\n y: t._model.y\n };\n }\n function n(e) {\n var a = t.defaults.global,\n i = l.getValueOrDefault;\n return {\n xPadding: e.xPadding,\n yPadding: e.yPadding,\n xAlign: e.xAlign,\n yAlign: e.yAlign,\n bodyFontColor: e.bodyFontColor,\n _bodyFontFamily: i(e.bodyFontFamily, a.defaultFontFamily),\n _bodyFontStyle: i(e.bodyFontStyle, a.defaultFontStyle),\n _bodyAlign: e.bodyAlign,\n bodyFontSize: i(e.bodyFontSize, a.defaultFontSize),\n bodySpacing: e.bodySpacing,\n titleFontColor: e.titleFontColor,\n _titleFontFamily: i(e.titleFontFamily, a.defaultFontFamily),\n _titleFontStyle: i(e.titleFontStyle, a.defaultFontStyle),\n titleFontSize: i(e.titleFontSize, a.defaultFontSize),\n _titleAlign: e.titleAlign,\n titleSpacing: e.titleSpacing,\n titleMarginBottom: e.titleMarginBottom,\n footerFontColor: e.footerFontColor,\n _footerFontFamily: i(e.footerFontFamily, a.defaultFontFamily),\n _footerFontStyle: i(e.footerFontStyle, a.defaultFontStyle),\n footerFontSize: i(e.footerFontSize, a.defaultFontSize),\n _footerAlign: e.footerAlign,\n footerSpacing: e.footerSpacing,\n footerMarginTop: e.footerMarginTop,\n caretSize: e.caretSize,\n cornerRadius: e.cornerRadius,\n backgroundColor: e.backgroundColor,\n opacity: 0,\n legendColorBackground: e.multiKeyBackground,\n displayColors: e.displayColors\n };\n }\n function o(t, e) {\n var a = t._chart.ctx,\n i = 2 * e.yPadding,\n n = 0,\n o = e.body,\n r = o.reduce(function (t, e) {\n return t + e.before.length + e.lines.length + e.after.length;\n }, 0);\n r += e.beforeBody.length + e.afterBody.length;\n var s = e.title.length,\n u = e.footer.length,\n d = e.titleFontSize,\n c = e.bodyFontSize,\n h = e.footerFontSize;\n i += s * d, i += s ? (s - 1) * e.titleSpacing : 0, i += s ? e.titleMarginBottom : 0, i += r * c, i += r ? (r - 1) * e.bodySpacing : 0, i += u ? e.footerMarginTop : 0, i += u * h, i += u ? (u - 1) * e.footerSpacing : 0;\n var f = 0,\n g = function g(t) {\n n = Math.max(n, a.measureText(t).width + f);\n };\n return a.font = l.fontString(d, e._titleFontStyle, e._titleFontFamily), l.each(e.title, g), a.font = l.fontString(c, e._bodyFontStyle, e._bodyFontFamily), l.each(e.beforeBody.concat(e.afterBody), g), f = e.displayColors ? c + 2 : 0, l.each(o, function (t) {\n l.each(t.before, g), l.each(t.lines, g), l.each(t.after, g);\n }), f = 0, a.font = l.fontString(h, e._footerFontStyle, e._footerFontFamily), l.each(e.footer, g), n += 2 * e.xPadding, {\n width: n,\n height: i\n };\n }\n function r(t, e) {\n var a = t._model,\n i = t._chart,\n n = t._chartInstance.chartArea,\n o = \"center\",\n r = \"center\";\n a.y < e.height ? r = \"top\" : a.y > i.height - e.height && (r = \"bottom\");\n var s,\n l,\n u,\n d,\n c,\n h = (n.left + n.right) / 2,\n f = (n.top + n.bottom) / 2;\n \"center\" === r ? (s = function s(t) {\n return t <= h;\n }, l = function l(t) {\n return t > h;\n }) : (s = function s(t) {\n return t <= e.width / 2;\n }, l = function l(t) {\n return t >= i.width - e.width / 2;\n }), u = function u(t) {\n return t + e.width > i.width;\n }, d = function d(t) {\n return t - e.width < 0;\n }, c = function c(t) {\n return t <= f ? \"top\" : \"bottom\";\n }, s(a.x) ? (o = \"left\", u(a.x) && (o = \"center\", r = c(a.y))) : l(a.x) && (o = \"right\", d(a.x) && (o = \"center\", r = c(a.y)));\n var g = t._options;\n return {\n xAlign: g.xAlign ? g.xAlign : o,\n yAlign: g.yAlign ? g.yAlign : r\n };\n }\n function s(t, e, a) {\n var i = t.x,\n n = t.y,\n o = t.caretSize,\n r = t.caretPadding,\n s = t.cornerRadius,\n l = a.xAlign,\n u = a.yAlign,\n d = o + r,\n c = s + r;\n return \"right\" === l ? i -= e.width : \"center\" === l && (i -= e.width / 2), \"top\" === u ? n += d : n -= \"bottom\" === u ? e.height + d : e.height / 2, \"center\" === u ? \"left\" === l ? i += d : \"right\" === l && (i -= d) : \"left\" === l ? i -= c : \"right\" === l && (i += c), {\n x: i,\n y: n\n };\n }\n var l = t.helpers;\n t.defaults.global.tooltips = {\n enabled: !0,\n custom: null,\n mode: \"nearest\",\n position: \"average\",\n intersect: !0,\n backgroundColor: \"rgba(0,0,0,0.8)\",\n titleFontStyle: \"bold\",\n titleSpacing: 2,\n titleMarginBottom: 6,\n titleFontColor: \"#fff\",\n titleAlign: \"left\",\n bodySpacing: 2,\n bodyFontColor: \"#fff\",\n bodyAlign: \"left\",\n footerFontStyle: \"bold\",\n footerSpacing: 2,\n footerMarginTop: 6,\n footerFontColor: \"#fff\",\n footerAlign: \"left\",\n yPadding: 6,\n xPadding: 6,\n caretSize: 5,\n cornerRadius: 6,\n multiKeyBackground: \"#fff\",\n displayColors: !0,\n callbacks: {\n beforeTitle: l.noop,\n title: function title(t, e) {\n var a = \"\",\n i = e.labels,\n n = i ? i.length : 0;\n if (t.length > 0) {\n var o = t[0];\n o.xLabel ? a = o.xLabel : n > 0 && o.index < n && (a = i[o.index]);\n }\n return a;\n },\n afterTitle: l.noop,\n beforeBody: l.noop,\n beforeLabel: l.noop,\n label: function label(t, e) {\n var a = e.datasets[t.datasetIndex].label || \"\";\n return a + \": \" + t.yLabel;\n },\n labelColor: function labelColor(t, e) {\n var a = e.getDatasetMeta(t.datasetIndex),\n i = a.data[t.index],\n n = i._view;\n return {\n borderColor: n.borderColor,\n backgroundColor: n.backgroundColor\n };\n },\n afterLabel: l.noop,\n afterBody: l.noop,\n beforeFooter: l.noop,\n footer: l.noop,\n afterFooter: l.noop\n }\n }, t.Tooltip = t.Element.extend({\n initialize: function initialize() {\n this._model = n(this._options);\n },\n getTitle: function getTitle() {\n var t = this,\n e = t._options,\n i = e.callbacks,\n n = i.beforeTitle.apply(t, arguments),\n o = i.title.apply(t, arguments),\n r = i.afterTitle.apply(t, arguments),\n s = [];\n return s = a(s, n), s = a(s, o), s = a(s, r);\n },\n getBeforeBody: function getBeforeBody() {\n var t = this._options.callbacks.beforeBody.apply(this, arguments);\n return l.isArray(t) ? t : void 0 !== t ? [t] : [];\n },\n getBody: function getBody(t, e) {\n var i = this,\n n = i._options.callbacks,\n o = [];\n return l.each(t, function (t) {\n var r = {\n before: [],\n lines: [],\n after: []\n };\n a(r.before, n.beforeLabel.call(i, t, e)), a(r.lines, n.label.call(i, t, e)), a(r.after, n.afterLabel.call(i, t, e)), o.push(r);\n }), o;\n },\n getAfterBody: function getAfterBody() {\n var t = this._options.callbacks.afterBody.apply(this, arguments);\n return l.isArray(t) ? t : void 0 !== t ? [t] : [];\n },\n getFooter: function getFooter() {\n var t = this,\n e = t._options.callbacks,\n i = e.beforeFooter.apply(t, arguments),\n n = e.footer.apply(t, arguments),\n o = e.afterFooter.apply(t, arguments),\n r = [];\n return r = a(r, i), r = a(r, n), r = a(r, o);\n },\n update: function update(e) {\n var a,\n u,\n d = this,\n c = d._options,\n h = d._model,\n f = d._model = n(c),\n g = d._active,\n p = d._data,\n m = d._chartInstance,\n v = {\n xAlign: h.xAlign,\n yAlign: h.yAlign\n },\n b = {\n x: h.x,\n y: h.y\n },\n x = {\n width: h.width,\n height: h.height\n },\n y = {\n x: h.caretX,\n y: h.caretY\n };\n if (g.length) {\n f.opacity = 1;\n var k = [];\n y = t.Tooltip.positioners[c.position](g, d._eventPosition);\n var S = [];\n for (a = 0, u = g.length; a < u; ++a) S.push(i(g[a]));\n c.filter && (S = S.filter(function (t) {\n return c.filter(t, p);\n })), c.itemSort && (S = S.sort(function (t, e) {\n return c.itemSort(t, e, p);\n })), l.each(S, function (t) {\n k.push(c.callbacks.labelColor.call(d, t, m));\n }), f.title = d.getTitle(S, p), f.beforeBody = d.getBeforeBody(S, p), f.body = d.getBody(S, p), f.afterBody = d.getAfterBody(S, p), f.footer = d.getFooter(S, p), f.x = Math.round(y.x), f.y = Math.round(y.y), f.caretPadding = l.getValueOrDefault(y.padding, 2), f.labelColors = k, f.dataPoints = S, x = o(this, f), v = r(this, x), b = s(f, x, v);\n } else f.opacity = 0;\n return f.xAlign = v.xAlign, f.yAlign = v.yAlign, f.x = b.x, f.y = b.y, f.width = x.width, f.height = x.height, f.caretX = y.x, f.caretY = y.y, d._model = f, e && c.custom && c.custom.call(d, f), d;\n },\n drawCaret: function drawCaret(t, a, i) {\n var n,\n o,\n r,\n s,\n l,\n u,\n d = this._view,\n c = this._chart.ctx,\n h = d.caretSize,\n f = d.cornerRadius,\n g = d.xAlign,\n p = d.yAlign,\n m = t.x,\n v = t.y,\n b = a.width,\n x = a.height;\n \"center\" === p ? (\"left\" === g ? (n = m, o = n - h, r = n) : (n = m + b, o = n + h, r = n), l = v + x / 2, s = l - h, u = l + h) : (\"left\" === g ? (n = m + f, o = n + h, r = o + h) : \"right\" === g ? (n = m + b - f, o = n - h, r = o - h) : (o = m + b / 2, n = o - h, r = o + h), \"top\" === p ? (s = v, l = s - h, u = s) : (s = v + x, l = s + h, u = s)), c.fillStyle = e(d.backgroundColor, i), c.beginPath(), c.moveTo(n, s), c.lineTo(o, l), c.lineTo(r, u), c.closePath(), c.fill();\n },\n drawTitle: function drawTitle(t, a, i, n) {\n var o = a.title;\n if (o.length) {\n i.textAlign = a._titleAlign, i.textBaseline = \"top\";\n var r = a.titleFontSize,\n s = a.titleSpacing;\n i.fillStyle = e(a.titleFontColor, n), i.font = l.fontString(r, a._titleFontStyle, a._titleFontFamily);\n var u, d;\n for (u = 0, d = o.length; u < d; ++u) i.fillText(o[u], t.x, t.y), t.y += r + s, u + 1 === o.length && (t.y += a.titleMarginBottom - s);\n }\n },\n drawBody: function drawBody(t, a, i, n) {\n var o = a.bodyFontSize,\n r = a.bodySpacing,\n s = a.body;\n i.textAlign = a._bodyAlign, i.textBaseline = \"top\";\n var u = e(a.bodyFontColor, n);\n i.fillStyle = u, i.font = l.fontString(o, a._bodyFontStyle, a._bodyFontFamily);\n var d = 0,\n c = function c(e) {\n i.fillText(e, t.x + d, t.y), t.y += o + r;\n };\n l.each(a.beforeBody, c);\n var h = a.displayColors;\n d = h ? o + 2 : 0, l.each(s, function (r, s) {\n l.each(r.before, c), l.each(r.lines, function (r) {\n h && (i.fillStyle = e(a.legendColorBackground, n), i.fillRect(t.x, t.y, o, o), i.strokeStyle = e(a.labelColors[s].borderColor, n), i.strokeRect(t.x, t.y, o, o), i.fillStyle = e(a.labelColors[s].backgroundColor, n), i.fillRect(t.x + 1, t.y + 1, o - 2, o - 2), i.fillStyle = u), c(r);\n }), l.each(r.after, c);\n }), d = 0, l.each(a.afterBody, c), t.y -= r;\n },\n drawFooter: function drawFooter(t, a, i, n) {\n var o = a.footer;\n o.length && (t.y += a.footerMarginTop, i.textAlign = a._footerAlign, i.textBaseline = \"top\", i.fillStyle = e(a.footerFontColor, n), i.font = l.fontString(a.footerFontSize, a._footerFontStyle, a._footerFontFamily), l.each(o, function (e) {\n i.fillText(e, t.x, t.y), t.y += a.footerFontSize + a.footerSpacing;\n }));\n },\n drawBackground: function drawBackground(t, a, i, n, o) {\n i.fillStyle = e(a.backgroundColor, o), l.drawRoundedRectangle(i, t.x, t.y, n.width, n.height, a.cornerRadius), i.fill();\n },\n draw: function draw() {\n var t = this._chart.ctx,\n e = this._view;\n if (0 !== e.opacity) {\n var a = {\n width: e.width,\n height: e.height\n },\n i = {\n x: e.x,\n y: e.y\n },\n n = Math.abs(e.opacity < .001) ? 0 : e.opacity;\n this._options.enabled && (this.drawBackground(i, e, t, a, n), this.drawCaret(i, a, n), i.x += e.xPadding, i.y += e.yPadding, this.drawTitle(i, e, t, n), this.drawBody(i, e, t, n), this.drawFooter(i, e, t, n));\n }\n },\n handleEvent: function handleEvent(t) {\n var e = this,\n a = e._options,\n i = !1;\n if (e._lastActive = e._lastActive || [], \"mouseout\" === t.type ? e._active = [] : e._active = e._chartInstance.getElementsAtEventForMode(t, a.mode, a), i = !l.arrayEquals(e._active, e._lastActive), e._lastActive = e._active, a.enabled || a.custom) {\n e._eventPosition = {\n x: t.x,\n y: t.y\n };\n var n = e._model;\n e.update(!0), e.pivot(), i |= n.x !== e._model.x || n.y !== e._model.y;\n }\n return i;\n }\n }), t.Tooltip.positioners = {\n average: function average(t) {\n if (!t.length) return !1;\n var e,\n a,\n i = 0,\n n = 0,\n o = 0;\n for (e = 0, a = t.length; e < a; ++e) {\n var r = t[e];\n if (r && r.hasValue()) {\n var s = r.tooltipPosition();\n i += s.x, n += s.y, ++o;\n }\n }\n return {\n x: Math.round(i / o),\n y: Math.round(n / o)\n };\n },\n nearest: function nearest(t, e) {\n var a,\n i,\n n,\n o = e.x,\n r = e.y,\n s = Number.POSITIVE_INFINITY;\n for (i = 0, n = t.length; i < n; ++i) {\n var u = t[i];\n if (u && u.hasValue()) {\n var d = u.getCenterPoint(),\n c = l.distanceBetweenPoints(e, d);\n c < s && (s = c, a = u);\n }\n }\n if (a) {\n var h = a.tooltipPosition();\n o = h.x, r = h.y;\n }\n return {\n x: o,\n y: r\n };\n }\n };\n };\n }, {}],\n 37: [function (t, e, a) {\n \"use strict\";\n\n e.exports = function (t) {\n var e = t.helpers,\n a = t.defaults.global;\n a.elements.arc = {\n backgroundColor: a.defaultColor,\n borderColor: \"#fff\",\n borderWidth: 2\n }, t.elements.Arc = t.Element.extend({\n inLabelRange: function inLabelRange(t) {\n var e = this._view;\n return !!e && Math.pow(t - e.x, 2) < Math.pow(e.radius + e.hoverRadius, 2);\n },\n inRange: function inRange(t, a) {\n var i = this._view;\n if (i) {\n for (var n = e.getAngleFromPoint(i, {\n x: t,\n y: a\n }), o = n.angle, r = n.distance, s = i.startAngle, l = i.endAngle; l < s;) l += 2 * Math.PI;\n for (; o > l;) o -= 2 * Math.PI;\n for (; o < s;) o += 2 * Math.PI;\n var u = o >= s && o <= l,\n d = r >= i.innerRadius && r <= i.outerRadius;\n return u && d;\n }\n return !1;\n },\n getCenterPoint: function getCenterPoint() {\n var t = this._view,\n e = (t.startAngle + t.endAngle) / 2,\n a = (t.innerRadius + t.outerRadius) / 2;\n return {\n x: t.x + Math.cos(e) * a,\n y: t.y + Math.sin(e) * a\n };\n },\n getArea: function getArea() {\n var t = this._view;\n return Math.PI * ((t.endAngle - t.startAngle) / (2 * Math.PI)) * (Math.pow(t.outerRadius, 2) - Math.pow(t.innerRadius, 2));\n },\n tooltipPosition: function tooltipPosition() {\n var t = this._view,\n e = t.startAngle + (t.endAngle - t.startAngle) / 2,\n a = (t.outerRadius - t.innerRadius) / 2 + t.innerRadius;\n return {\n x: t.x + Math.cos(e) * a,\n y: t.y + Math.sin(e) * a\n };\n },\n draw: function draw() {\n var t = this._chart.ctx,\n e = this._view,\n a = e.startAngle,\n i = e.endAngle;\n t.beginPath(), t.arc(e.x, e.y, e.outerRadius, a, i), t.arc(e.x, e.y, e.innerRadius, i, a, !0), t.closePath(), t.strokeStyle = e.borderColor, t.lineWidth = e.borderWidth, t.fillStyle = e.backgroundColor, t.fill(), t.lineJoin = \"bevel\", e.borderWidth && t.stroke();\n }\n });\n };\n }, {}],\n 38: [function (t, e, a) {\n \"use strict\";\n\n e.exports = function (t) {\n var e = t.helpers,\n a = t.defaults.global;\n t.defaults.global.elements.line = {\n tension: .4,\n backgroundColor: a.defaultColor,\n borderWidth: 3,\n borderColor: a.defaultColor,\n borderCapStyle: \"butt\",\n borderDash: [],\n borderDashOffset: 0,\n borderJoinStyle: \"miter\",\n capBezierPoints: !0,\n fill: !0\n }, t.elements.Line = t.Element.extend({\n draw: function draw() {\n function t(t, e) {\n var a = e._view;\n e._view.steppedLine === !0 ? (l.lineTo(a.x, t._view.y), l.lineTo(a.x, a.y)) : 0 === e._view.tension ? l.lineTo(a.x, a.y) : l.bezierCurveTo(t._view.controlPointNextX, t._view.controlPointNextY, a.controlPointPreviousX, a.controlPointPreviousY, a.x, a.y);\n }\n var i = this,\n n = i._view,\n o = n.spanGaps,\n r = n.scaleZero,\n s = i._loop;\n s || (\"top\" === n.fill ? r = n.scaleTop : \"bottom\" === n.fill && (r = n.scaleBottom));\n var l = i._chart.ctx;\n l.save();\n var u = i._children.slice(),\n d = -1;\n s && u.length && u.push(u[0]);\n var c, h, f, g;\n if (u.length && n.fill) {\n for (l.beginPath(), c = 0; c < u.length; ++c) h = u[c], f = e.previousItem(u, c), g = h._view, 0 === c ? (s ? l.moveTo(r.x, r.y) : l.moveTo(g.x, r), g.skip || (d = c, l.lineTo(g.x, g.y))) : (f = d === -1 ? f : u[d], g.skip ? o || d !== c - 1 || (s ? l.lineTo(r.x, r.y) : l.lineTo(f._view.x, r)) : (d !== c - 1 ? o && d !== -1 ? t(f, h) : s ? l.lineTo(g.x, g.y) : (l.lineTo(g.x, r), l.lineTo(g.x, g.y)) : t(f, h), d = c));\n s || d === -1 || l.lineTo(u[d]._view.x, r), l.fillStyle = n.backgroundColor || a.defaultColor, l.closePath(), l.fill();\n }\n var p = a.elements.line;\n for (l.lineCap = n.borderCapStyle || p.borderCapStyle, l.setLineDash && l.setLineDash(n.borderDash || p.borderDash), l.lineDashOffset = n.borderDashOffset || p.borderDashOffset, l.lineJoin = n.borderJoinStyle || p.borderJoinStyle, l.lineWidth = n.borderWidth || p.borderWidth, l.strokeStyle = n.borderColor || a.defaultColor, l.beginPath(), d = -1, c = 0; c < u.length; ++c) h = u[c], f = e.previousItem(u, c), g = h._view, 0 === c ? g.skip || (l.moveTo(g.x, g.y), d = c) : (f = d === -1 ? f : u[d], g.skip || (d !== c - 1 && !o || d === -1 ? l.moveTo(g.x, g.y) : t(f, h), d = c));\n l.stroke(), l.restore();\n }\n });\n };\n }, {}],\n 39: [function (t, e, a) {\n \"use strict\";\n\n e.exports = function (t) {\n function e(t) {\n var e = this._view;\n return !!e && Math.pow(t - e.x, 2) < Math.pow(e.radius + e.hitRadius, 2);\n }\n function a(t) {\n var e = this._view;\n return !!e && Math.pow(t - e.y, 2) < Math.pow(e.radius + e.hitRadius, 2);\n }\n var i = t.helpers,\n n = t.defaults.global,\n o = n.defaultColor;\n n.elements.point = {\n radius: 3,\n pointStyle: \"circle\",\n backgroundColor: o,\n borderWidth: 1,\n borderColor: o,\n hitRadius: 1,\n hoverRadius: 4,\n hoverBorderWidth: 1\n }, t.elements.Point = t.Element.extend({\n inRange: function inRange(t, e) {\n var a = this._view;\n return !!a && Math.pow(t - a.x, 2) + Math.pow(e - a.y, 2) < Math.pow(a.hitRadius + a.radius, 2);\n },\n inLabelRange: e,\n inXRange: e,\n inYRange: a,\n getCenterPoint: function getCenterPoint() {\n var t = this._view;\n return {\n x: t.x,\n y: t.y\n };\n },\n getArea: function getArea() {\n return Math.PI * Math.pow(this._view.radius, 2);\n },\n tooltipPosition: function tooltipPosition() {\n var t = this._view;\n return {\n x: t.x,\n y: t.y,\n padding: t.radius + t.borderWidth\n };\n },\n draw: function draw(e) {\n var a = this._view,\n r = this._model,\n s = this._chart.ctx,\n l = a.pointStyle,\n u = a.radius,\n d = a.x,\n c = a.y,\n h = t.helpers.color,\n f = 1.01,\n g = 0;\n a.skip || (s.strokeStyle = a.borderColor || o, s.lineWidth = i.getValueOrDefault(a.borderWidth, n.elements.point.borderWidth), s.fillStyle = a.backgroundColor || o, void 0 !== e && (r.x < e.left || e.right * f < r.x || r.y < e.top || e.bottom * f < r.y) && (r.x < e.left ? g = (d - r.x) / (e.left - r.x) : e.right * f < r.x ? g = (r.x - d) / (r.x - e.right) : r.y < e.top ? g = (c - r.y) / (e.top - r.y) : e.bottom * f < r.y && (g = (r.y - c) / (r.y - e.bottom)), g = Math.round(100 * g) / 100, s.strokeStyle = h(s.strokeStyle).alpha(g).rgbString(), s.fillStyle = h(s.fillStyle).alpha(g).rgbString()), t.canvasHelpers.drawPoint(s, l, u, d, c));\n }\n });\n };\n }, {}],\n 40: [function (t, e, a) {\n \"use strict\";\n\n e.exports = function (t) {\n function e(t) {\n return void 0 !== t._view.width;\n }\n function a(t) {\n var a,\n i,\n n,\n o,\n r = t._view;\n if (e(t)) {\n var s = r.width / 2;\n a = r.x - s, i = r.x + s, n = Math.min(r.y, r.base), o = Math.max(r.y, r.base);\n } else {\n var l = r.height / 2;\n a = Math.min(r.x, r.base), i = Math.max(r.x, r.base), n = r.y - l, o = r.y + l;\n }\n return {\n left: a,\n top: n,\n right: i,\n bottom: o\n };\n }\n var i = t.defaults.global;\n i.elements.rectangle = {\n backgroundColor: i.defaultColor,\n borderWidth: 0,\n borderColor: i.defaultColor,\n borderSkipped: \"bottom\"\n }, t.elements.Rectangle = t.Element.extend({\n draw: function draw() {\n function t(t) {\n return v[(x + t) % 4];\n }\n var e,\n a,\n i,\n n,\n o,\n r,\n s,\n l = this._chart.ctx,\n u = this._view,\n d = u.borderWidth;\n if (u.horizontal ? (e = u.base, a = u.x, i = u.y - u.height / 2, n = u.y + u.height / 2, o = a > e ? 1 : -1, r = 1, s = u.borderSkipped || \"left\") : (e = u.x - u.width / 2, a = u.x + u.width / 2, i = u.y, n = u.base, o = 1, r = n > i ? 1 : -1, s = u.borderSkipped || \"bottom\"), d) {\n var c = Math.min(Math.abs(e - a), Math.abs(i - n));\n d = d > c ? c : d;\n var h = d / 2,\n f = e + (\"left\" !== s ? h * o : 0),\n g = a + (\"right\" !== s ? -h * o : 0),\n p = i + (\"top\" !== s ? h * r : 0),\n m = n + (\"bottom\" !== s ? -h * r : 0);\n f !== g && (i = p, n = m), p !== m && (e = f, a = g);\n }\n l.beginPath(), l.fillStyle = u.backgroundColor, l.strokeStyle = u.borderColor, l.lineWidth = d;\n var v = [[e, n], [e, i], [a, i], [a, n]],\n b = [\"bottom\", \"left\", \"top\", \"right\"],\n x = b.indexOf(s, 0);\n x === -1 && (x = 0);\n var y = t(0);\n l.moveTo(y[0], y[1]);\n for (var k = 1; k < 4; k++) y = t(k), l.lineTo(y[0], y[1]);\n l.fill(), d && l.stroke();\n },\n height: function height() {\n var t = this._view;\n return t.base - t.y;\n },\n inRange: function inRange(t, e) {\n var i = !1;\n if (this._view) {\n var n = a(this);\n i = t >= n.left && t <= n.right && e >= n.top && e <= n.bottom;\n }\n return i;\n },\n inLabelRange: function inLabelRange(t, i) {\n var n = this;\n if (!n._view) return !1;\n var o = !1,\n r = a(n);\n return o = e(n) ? t >= r.left && t <= r.right : i >= r.top && i <= r.bottom;\n },\n inXRange: function inXRange(t) {\n var e = a(this);\n return t >= e.left && t <= e.right;\n },\n inYRange: function inYRange(t) {\n var e = a(this);\n return t >= e.top && t <= e.bottom;\n },\n getCenterPoint: function getCenterPoint() {\n var t,\n a,\n i = this._view;\n return e(this) ? (t = i.x, a = (i.y + i.base) / 2) : (t = (i.x + i.base) / 2, a = i.y), {\n x: t,\n y: a\n };\n },\n getArea: function getArea() {\n var t = this._view;\n return t.width * Math.abs(t.y - t.base);\n },\n tooltipPosition: function tooltipPosition() {\n var t = this._view;\n return {\n x: t.x,\n y: t.y\n };\n }\n });\n };\n }, {}],\n 41: [function (t, e, a) {\n \"use strict\";\n\n e.exports = function (t) {\n function e(t, e) {\n var a = l.getStyle(t, e),\n i = a && a.match(/(\\d+)px/);\n return i ? Number(i[1]) : void 0;\n }\n function a(t, a) {\n var i = t.style,\n n = t.getAttribute(\"height\"),\n o = t.getAttribute(\"width\");\n if (t._chartjs = {\n initial: {\n height: n,\n width: o,\n style: {\n display: i.display,\n height: i.height,\n width: i.width\n }\n }\n }, i.display = i.display || \"block\", null === o || \"\" === o) {\n var r = e(t, \"width\");\n void 0 !== r && (t.width = r);\n }\n if (null === n || \"\" === n) if (\"\" === t.style.height) t.height = t.width / (a.options.aspectRatio || 2);else {\n var s = e(t, \"height\");\n void 0 !== r && (t.height = s);\n }\n return t;\n }\n function i(t, e, a, i, n) {\n return {\n type: t,\n chart: e,\n \"native\": n || null,\n x: void 0 !== a ? a : null,\n y: void 0 !== i ? i : null\n };\n }\n function n(t, e) {\n var a = u[t.type] || t.type,\n n = l.getRelativePosition(t, e);\n return i(a, e, n.x, n.y, t);\n }\n function o(t) {\n var e = document.createElement(\"iframe\");\n return e.className = \"chartjs-hidden-iframe\", e.style.cssText = \"display:block;overflow:hidden;border:0;margin:0;top:0;left:0;bottom:0;right:0;height:100%;width:100%;position:absolute;pointer-events:none;z-index:-1;\", e.tabIndex = -1, l.addEvent(e, \"load\", function () {\n l.addEvent(e.contentWindow || e, \"resize\", t), t();\n }), e;\n }\n function r(t, e, a) {\n var n = t._chartjs = {\n ticking: !1\n },\n r = function r() {\n n.ticking || (n.ticking = !0, l.requestAnimFrame.call(window, function () {\n if (n.resizer) return n.ticking = !1, e(i(\"resize\", a));\n }));\n };\n n.resizer = o(r), t.insertBefore(n.resizer, t.firstChild);\n }\n function s(t) {\n if (t && t._chartjs) {\n var e = t._chartjs.resizer;\n e && (e.parentNode.removeChild(e), t._chartjs.resizer = null), delete t._chartjs;\n }\n }\n var l = t.helpers,\n u = {\n touchstart: \"mousedown\",\n touchmove: \"mousemove\",\n touchend: \"mouseup\",\n pointerenter: \"mouseenter\",\n pointerdown: \"mousedown\",\n pointermove: \"mousemove\",\n pointerup: \"mouseup\",\n pointerleave: \"mouseout\",\n pointerout: \"mouseout\"\n };\n return {\n acquireContext: function acquireContext(t, e) {\n if (\"string\" == typeof t ? t = document.getElementById(t) : t.length && (t = t[0]), t && t.canvas && (t = t.canvas), t instanceof HTMLCanvasElement) {\n var i = t.getContext && t.getContext(\"2d\");\n if (i instanceof CanvasRenderingContext2D) return a(t, e), i;\n }\n return null;\n },\n releaseContext: function releaseContext(t) {\n var e = t.canvas;\n if (e._chartjs) {\n var a = e._chartjs.initial;\n [\"height\", \"width\"].forEach(function (t) {\n var i = a[t];\n void 0 === i || null === i ? e.removeAttribute(t) : e.setAttribute(t, i);\n }), l.each(a.style || {}, function (t, a) {\n e.style[a] = t;\n }), e.width = e.width, delete e._chartjs;\n }\n },\n addEventListener: function addEventListener(t, e, a) {\n var i = t.chart.canvas;\n if (\"resize\" === e) return void r(i.parentNode, a, t.chart);\n var o = a._chartjs || (a._chartjs = {}),\n s = o.proxies || (o.proxies = {}),\n u = s[t.id + \"_\" + e] = function (e) {\n a(n(e, t.chart));\n };\n l.addEvent(i, e, u);\n },\n removeEventListener: function removeEventListener(t, e, a) {\n var i = t.chart.canvas;\n if (\"resize\" === e) return void s(i.parentNode, a);\n var n = a._chartjs || {},\n o = n.proxies || {},\n r = o[t.id + \"_\" + e];\n r && l.removeEvent(i, e, r);\n }\n };\n };\n }, {}],\n 42: [function (t, e, a) {\n \"use strict\";\n\n var i = t(41);\n e.exports = function (t) {\n t.platform = {\n acquireContext: function acquireContext() {},\n releaseContext: function releaseContext() {},\n addEventListener: function addEventListener() {},\n removeEventListener: function removeEventListener() {}\n }, t.helpers.extend(t.platform, i(t));\n };\n }, {\n 41: 41\n }],\n 43: [function (t, e, a) {\n \"use strict\";\n\n e.exports = function (t) {\n var e = t.helpers,\n a = {\n position: \"bottom\"\n },\n i = t.Scale.extend({\n getLabels: function getLabels() {\n var t = this.chart.data;\n return (this.isHorizontal() ? t.xLabels : t.yLabels) || t.labels;\n },\n determineDataLimits: function determineDataLimits() {\n var t = this,\n a = t.getLabels();\n t.minIndex = 0, t.maxIndex = a.length - 1;\n var i;\n void 0 !== t.options.ticks.min && (i = e.indexOf(a, t.options.ticks.min), t.minIndex = i !== -1 ? i : t.minIndex), void 0 !== t.options.ticks.max && (i = e.indexOf(a, t.options.ticks.max), t.maxIndex = i !== -1 ? i : t.maxIndex), t.min = a[t.minIndex], t.max = a[t.maxIndex];\n },\n buildTicks: function buildTicks() {\n var t = this,\n e = t.getLabels();\n t.ticks = 0 === t.minIndex && t.maxIndex === e.length - 1 ? e : e.slice(t.minIndex, t.maxIndex + 1);\n },\n getLabelForIndex: function getLabelForIndex(t, e) {\n var a = this,\n i = a.chart.data,\n n = a.isHorizontal();\n return i.yLabels && !n ? a.getRightValue(i.datasets[e].data[t]) : a.ticks[t - a.minIndex];\n },\n getPixelForValue: function getPixelForValue(t, e, a, i) {\n var n = this,\n o = Math.max(n.maxIndex + 1 - n.minIndex - (n.options.gridLines.offsetGridLines ? 0 : 1), 1);\n if (void 0 !== t && isNaN(e)) {\n var r = n.getLabels(),\n s = r.indexOf(t);\n e = s !== -1 ? s : e;\n }\n if (n.isHorizontal()) {\n var l = n.width / o,\n u = l * (e - n.minIndex);\n return (n.options.gridLines.offsetGridLines && i || n.maxIndex === n.minIndex && i) && (u += l / 2), n.left + Math.round(u);\n }\n var d = n.height / o,\n c = d * (e - n.minIndex);\n return n.options.gridLines.offsetGridLines && i && (c += d / 2), n.top + Math.round(c);\n },\n getPixelForTick: function getPixelForTick(t, e) {\n return this.getPixelForValue(this.ticks[t], t + this.minIndex, null, e);\n },\n getValueForPixel: function getValueForPixel(t) {\n var e,\n a = this,\n i = Math.max(a.ticks.length - (a.options.gridLines.offsetGridLines ? 0 : 1), 1),\n n = a.isHorizontal(),\n o = (n ? a.width : a.height) / i;\n return t -= n ? a.left : a.top, a.options.gridLines.offsetGridLines && (t -= o / 2), e = t <= 0 ? 0 : Math.round(t / o);\n },\n getBasePixel: function getBasePixel() {\n return this.bottom;\n }\n });\n t.scaleService.registerScaleType(\"category\", i, a);\n };\n }, {}],\n 44: [function (t, e, a) {\n \"use strict\";\n\n e.exports = function (t) {\n var e = t.helpers,\n a = {\n position: \"left\",\n ticks: {\n callback: t.Ticks.formatters.linear\n }\n },\n i = t.LinearScaleBase.extend({\n determineDataLimits: function determineDataLimits() {\n function t(t) {\n return s ? t.xAxisID === a.id : t.yAxisID === a.id;\n }\n var a = this,\n i = a.options,\n n = a.chart,\n o = n.data,\n r = o.datasets,\n s = a.isHorizontal();\n a.min = null, a.max = null;\n var l = i.stacked;\n if (void 0 === l && e.each(r, function (e, a) {\n if (!l) {\n var i = n.getDatasetMeta(a);\n n.isDatasetVisible(a) && t(i) && void 0 !== i.stack && (l = !0);\n }\n }), i.stacked || l) {\n var u = {};\n e.each(r, function (o, r) {\n var s = n.getDatasetMeta(r),\n l = [s.type, void 0 === i.stacked && void 0 === s.stack ? r : \"\", s.stack].join(\".\");\n void 0 === u[l] && (u[l] = {\n positiveValues: [],\n negativeValues: []\n });\n var d = u[l].positiveValues,\n c = u[l].negativeValues;\n n.isDatasetVisible(r) && t(s) && e.each(o.data, function (t, e) {\n var n = +a.getRightValue(t);\n isNaN(n) || s.data[e].hidden || (d[e] = d[e] || 0, c[e] = c[e] || 0, i.relativePoints ? d[e] = 100 : n < 0 ? c[e] += n : d[e] += n);\n });\n }), e.each(u, function (t) {\n var i = t.positiveValues.concat(t.negativeValues),\n n = e.min(i),\n o = e.max(i);\n a.min = null === a.min ? n : Math.min(a.min, n), a.max = null === a.max ? o : Math.max(a.max, o);\n });\n } else e.each(r, function (i, o) {\n var r = n.getDatasetMeta(o);\n n.isDatasetVisible(o) && t(r) && e.each(i.data, function (t, e) {\n var i = +a.getRightValue(t);\n isNaN(i) || r.data[e].hidden || (null === a.min ? a.min = i : i < a.min && (a.min = i), null === a.max ? a.max = i : i > a.max && (a.max = i));\n });\n });\n this.handleTickRangeOptions();\n },\n getTickLimit: function getTickLimit() {\n var a,\n i = this,\n n = i.options.ticks;\n if (i.isHorizontal()) a = Math.min(n.maxTicksLimit ? n.maxTicksLimit : 11, Math.ceil(i.width / 50));else {\n var o = e.getValueOrDefault(n.fontSize, t.defaults.global.defaultFontSize);\n a = Math.min(n.maxTicksLimit ? n.maxTicksLimit : 11, Math.ceil(i.height / (2 * o)));\n }\n return a;\n },\n handleDirectionalChanges: function handleDirectionalChanges() {\n this.isHorizontal() || this.ticks.reverse();\n },\n getLabelForIndex: function getLabelForIndex(t, e) {\n return +this.getRightValue(this.chart.data.datasets[e].data[t]);\n },\n getPixelForValue: function getPixelForValue(t) {\n var e,\n a = this,\n i = a.start,\n n = +a.getRightValue(t),\n o = a.end - i;\n return a.isHorizontal() ? (e = a.left + a.width / o * (n - i), Math.round(e)) : (e = a.bottom - a.height / o * (n - i), Math.round(e));\n },\n getValueForPixel: function getValueForPixel(t) {\n var e = this,\n a = e.isHorizontal(),\n i = a ? e.width : e.height,\n n = (a ? t - e.left : e.bottom - t) / i;\n return e.start + (e.end - e.start) * n;\n },\n getPixelForTick: function getPixelForTick(t) {\n return this.getPixelForValue(this.ticksAsNumbers[t]);\n }\n });\n t.scaleService.registerScaleType(\"linear\", i, a);\n };\n }, {}],\n 45: [function (t, e, a) {\n \"use strict\";\n\n e.exports = function (t) {\n var e = t.helpers,\n a = e.noop;\n t.LinearScaleBase = t.Scale.extend({\n handleTickRangeOptions: function handleTickRangeOptions() {\n var t = this,\n a = t.options,\n i = a.ticks;\n if (i.beginAtZero) {\n var n = e.sign(t.min),\n o = e.sign(t.max);\n n < 0 && o < 0 ? t.max = 0 : n > 0 && o > 0 && (t.min = 0);\n }\n void 0 !== i.min ? t.min = i.min : void 0 !== i.suggestedMin && (t.min = Math.min(t.min, i.suggestedMin)), void 0 !== i.max ? t.max = i.max : void 0 !== i.suggestedMax && (t.max = Math.max(t.max, i.suggestedMax)), t.min === t.max && (t.max++, i.beginAtZero || t.min--);\n },\n getTickLimit: a,\n handleDirectionalChanges: a,\n buildTicks: function buildTicks() {\n var a = this,\n i = a.options,\n n = i.ticks,\n o = a.getTickLimit();\n o = Math.max(2, o);\n var r = {\n maxTicks: o,\n min: n.min,\n max: n.max,\n stepSize: e.getValueOrDefault(n.fixedStepSize, n.stepSize)\n },\n s = a.ticks = t.Ticks.generators.linear(r, a);\n a.handleDirectionalChanges(), a.max = e.max(s), a.min = e.min(s), n.reverse ? (s.reverse(), a.start = a.max, a.end = a.min) : (a.start = a.min, a.end = a.max);\n },\n convertTicksToLabels: function convertTicksToLabels() {\n var e = this;\n e.ticksAsNumbers = e.ticks.slice(), e.zeroLineIndex = e.ticks.indexOf(0), t.Scale.prototype.convertTicksToLabels.call(e);\n }\n });\n };\n }, {}],\n 46: [function (t, e, a) {\n \"use strict\";\n\n e.exports = function (t) {\n var e = t.helpers,\n a = {\n position: \"left\",\n ticks: {\n callback: t.Ticks.formatters.logarithmic\n }\n },\n i = t.Scale.extend({\n determineDataLimits: function determineDataLimits() {\n function t(t) {\n return u ? t.xAxisID === a.id : t.yAxisID === a.id;\n }\n var a = this,\n i = a.options,\n n = i.ticks,\n o = a.chart,\n r = o.data,\n s = r.datasets,\n l = e.getValueOrDefault,\n u = a.isHorizontal();\n a.min = null, a.max = null, a.minNotZero = null;\n var d = i.stacked;\n if (void 0 === d && e.each(s, function (e, a) {\n if (!d) {\n var i = o.getDatasetMeta(a);\n o.isDatasetVisible(a) && t(i) && void 0 !== i.stack && (d = !0);\n }\n }), i.stacked || d) {\n var c = {};\n e.each(s, function (n, r) {\n var s = o.getDatasetMeta(r),\n l = [s.type, void 0 === i.stacked && void 0 === s.stack ? r : \"\", s.stack].join(\".\");\n o.isDatasetVisible(r) && t(s) && (void 0 === c[l] && (c[l] = []), e.each(n.data, function (t, e) {\n var n = c[l],\n o = +a.getRightValue(t);\n isNaN(o) || s.data[e].hidden || (n[e] = n[e] || 0, i.relativePoints ? n[e] = 100 : n[e] += o);\n }));\n }), e.each(c, function (t) {\n var i = e.min(t),\n n = e.max(t);\n a.min = null === a.min ? i : Math.min(a.min, i), a.max = null === a.max ? n : Math.max(a.max, n);\n });\n } else e.each(s, function (i, n) {\n var r = o.getDatasetMeta(n);\n o.isDatasetVisible(n) && t(r) && e.each(i.data, function (t, e) {\n var i = +a.getRightValue(t);\n isNaN(i) || r.data[e].hidden || (null === a.min ? a.min = i : i < a.min && (a.min = i), null === a.max ? a.max = i : i > a.max && (a.max = i), 0 !== i && (null === a.minNotZero || i < a.minNotZero) && (a.minNotZero = i));\n });\n });\n a.min = l(n.min, a.min), a.max = l(n.max, a.max), a.min === a.max && (0 !== a.min && null !== a.min ? (a.min = Math.pow(10, Math.floor(e.log10(a.min)) - 1), a.max = Math.pow(10, Math.floor(e.log10(a.max)) + 1)) : (a.min = 1, a.max = 10));\n },\n buildTicks: function buildTicks() {\n var a = this,\n i = a.options,\n n = i.ticks,\n o = {\n min: n.min,\n max: n.max\n },\n r = a.ticks = t.Ticks.generators.logarithmic(o, a);\n a.isHorizontal() || r.reverse(), a.max = e.max(r), a.min = e.min(r), n.reverse ? (r.reverse(), a.start = a.max, a.end = a.min) : (a.start = a.min, a.end = a.max);\n },\n convertTicksToLabels: function convertTicksToLabels() {\n this.tickValues = this.ticks.slice(), t.Scale.prototype.convertTicksToLabels.call(this);\n },\n getLabelForIndex: function getLabelForIndex(t, e) {\n return +this.getRightValue(this.chart.data.datasets[e].data[t]);\n },\n getPixelForTick: function getPixelForTick(t) {\n return this.getPixelForValue(this.tickValues[t]);\n },\n getPixelForValue: function getPixelForValue(t) {\n var a,\n i,\n n,\n o = this,\n r = o.start,\n s = +o.getRightValue(t),\n l = o.options,\n u = l.ticks;\n return o.isHorizontal() ? (n = e.log10(o.end) - e.log10(r), 0 === s ? i = o.left : (a = o.width, i = o.left + a / n * (e.log10(s) - e.log10(r)))) : (a = o.height, 0 !== r || u.reverse ? 0 === o.end && u.reverse ? (n = e.log10(o.start) - e.log10(o.minNotZero), i = s === o.end ? o.top : s === o.minNotZero ? o.top + .02 * a : o.top + .02 * a + .98 * a / n * (e.log10(s) - e.log10(o.minNotZero))) : (n = e.log10(o.end) - e.log10(r), a = o.height, i = o.bottom - a / n * (e.log10(s) - e.log10(r))) : (n = e.log10(o.end) - e.log10(o.minNotZero), i = s === r ? o.bottom : s === o.minNotZero ? o.bottom - .02 * a : o.bottom - .02 * a - .98 * a / n * (e.log10(s) - e.log10(o.minNotZero)))), i;\n },\n getValueForPixel: function getValueForPixel(t) {\n var a,\n i,\n n = this,\n o = e.log10(n.end) - e.log10(n.start);\n return n.isHorizontal() ? (i = n.width, a = n.start * Math.pow(10, (t - n.left) * o / i)) : (i = n.height, a = Math.pow(10, (n.bottom - t) * o / i) / n.start), a;\n }\n });\n t.scaleService.registerScaleType(\"logarithmic\", i, a);\n };\n }, {}],\n 47: [function (t, e, a) {\n \"use strict\";\n\n e.exports = function (t) {\n function e(t) {\n return t.options.lineArc ? 0 : t.chart.data.labels.length;\n }\n function a(t) {\n var e = t.options.pointLabels,\n a = f.getValueOrDefault(e.fontSize, g.defaultFontSize),\n i = f.getValueOrDefault(e.fontStyle, g.defaultFontStyle),\n n = f.getValueOrDefault(e.fontFamily, g.defaultFontFamily),\n o = f.fontString(a, i, n);\n return {\n size: a,\n style: i,\n family: n,\n font: o\n };\n }\n function i(t, e, a) {\n return f.isArray(a) ? {\n w: f.longestText(t, t.font, a),\n h: a.length * e + 1.5 * (a.length - 1) * e\n } : {\n w: t.measureText(a).width,\n h: e\n };\n }\n function n(t, e, a, i, n) {\n return t === i || t === n ? {\n start: e - a / 2,\n end: e + a / 2\n } : t < i || t > n ? {\n start: e - a - 5,\n end: e\n } : {\n start: e,\n end: e + a + 5\n };\n }\n function o(t) {\n var o,\n r,\n s,\n l = a(t),\n u = Math.min(t.height / 2, t.width / 2),\n d = {\n l: t.width,\n r: 0,\n t: t.height,\n b: 0\n },\n c = {};\n t.ctx.font = l.font, t._pointLabelSizes = [];\n var h = e(t);\n for (o = 0; o < h; o++) {\n s = t.getPointPosition(o, u), r = i(t.ctx, l.size, t.pointLabels[o] || \"\"), t._pointLabelSizes[o] = r;\n var g = t.getIndexAngle(o),\n p = f.toDegrees(g) % 360,\n m = n(p, s.x, r.w, 0, 180),\n v = n(p, s.y, r.h, 90, 270);\n m.start < d.l && (d.l = m.start, c.l = g), m.end > d.r && (d.r = m.end, c.r = g), v.start < d.t && (d.t = v.start, c.t = g), v.end > d.b && (d.b = v.end, c.b = g);\n }\n t.setReductions(u, d, c);\n }\n function r(t) {\n var e = Math.min(t.height / 2, t.width / 2);\n t.drawingArea = Math.round(e), t.setCenterPoint(0, 0, 0, 0);\n }\n function s(t) {\n return 0 === t || 180 === t ? \"center\" : t < 180 ? \"left\" : \"right\";\n }\n function l(t, e, a, i) {\n if (f.isArray(e)) for (var n = a.y, o = 1.5 * i, r = 0; r < e.length; ++r) t.fillText(e[r], a.x, n), n += o;else t.fillText(e, a.x, a.y);\n }\n function u(t, e, a) {\n 90 === t || 270 === t ? a.y -= e.h / 2 : (t > 270 || t < 90) && (a.y -= e.h);\n }\n function d(t) {\n var i = t.ctx,\n n = f.getValueOrDefault,\n o = t.options,\n r = o.angleLines,\n d = o.pointLabels;\n i.lineWidth = r.lineWidth, i.strokeStyle = r.color;\n var c = t.getDistanceFromCenterForValue(o.reverse ? t.min : t.max),\n h = a(t);\n i.textBaseline = \"top\";\n for (var p = e(t) - 1; p >= 0; p--) {\n if (r.display) {\n var m = t.getPointPosition(p, c);\n i.beginPath(), i.moveTo(t.xCenter, t.yCenter), i.lineTo(m.x, m.y), i.stroke(), i.closePath();\n }\n var v = t.getPointPosition(p, c + 5),\n b = n(d.fontColor, g.defaultFontColor);\n i.font = h.font, i.fillStyle = b;\n var x = t.getIndexAngle(p),\n y = f.toDegrees(x);\n i.textAlign = s(y), u(y, t._pointLabelSizes[p], v), l(i, t.pointLabels[p] || \"\", v, h.size);\n }\n }\n function c(t, a, i, n) {\n var o = t.ctx;\n if (o.strokeStyle = f.getValueAtIndexOrDefault(a.color, n - 1), o.lineWidth = f.getValueAtIndexOrDefault(a.lineWidth, n - 1), t.options.lineArc) o.beginPath(), o.arc(t.xCenter, t.yCenter, i, 0, 2 * Math.PI), o.closePath(), o.stroke();else {\n var r = e(t);\n if (0 === r) return;\n o.beginPath();\n var s = t.getPointPosition(0, i);\n o.moveTo(s.x, s.y);\n for (var l = 1; l < r; l++) s = t.getPointPosition(l, i), o.lineTo(s.x, s.y);\n o.closePath(), o.stroke();\n }\n }\n function h(t) {\n return f.isNumber(t) ? t : 0;\n }\n var f = t.helpers,\n g = t.defaults.global,\n p = {\n display: !0,\n animate: !0,\n lineArc: !1,\n position: \"chartArea\",\n angleLines: {\n display: !0,\n color: \"rgba(0, 0, 0, 0.1)\",\n lineWidth: 1\n },\n ticks: {\n showLabelBackdrop: !0,\n backdropColor: \"rgba(255,255,255,0.75)\",\n backdropPaddingY: 2,\n backdropPaddingX: 2,\n callback: t.Ticks.formatters.linear\n },\n pointLabels: {\n fontSize: 10,\n callback: function callback(t) {\n return t;\n }\n }\n },\n m = t.LinearScaleBase.extend({\n setDimensions: function setDimensions() {\n var t = this,\n e = t.options,\n a = e.ticks;\n t.width = t.maxWidth, t.height = t.maxHeight, t.xCenter = Math.round(t.width / 2), t.yCenter = Math.round(t.height / 2);\n var i = f.min([t.height, t.width]),\n n = f.getValueOrDefault(a.fontSize, g.defaultFontSize);\n t.drawingArea = e.display ? i / 2 - (n / 2 + a.backdropPaddingY) : i / 2;\n },\n determineDataLimits: function determineDataLimits() {\n var t = this,\n e = t.chart,\n a = Number.POSITIVE_INFINITY,\n i = Number.NEGATIVE_INFINITY;\n f.each(e.data.datasets, function (n, o) {\n if (e.isDatasetVisible(o)) {\n var r = e.getDatasetMeta(o);\n f.each(n.data, function (e, n) {\n var o = +t.getRightValue(e);\n isNaN(o) || r.data[n].hidden || (a = Math.min(o, a), i = Math.max(o, i));\n });\n }\n }), t.min = a === Number.POSITIVE_INFINITY ? 0 : a, t.max = i === Number.NEGATIVE_INFINITY ? 0 : i, t.handleTickRangeOptions();\n },\n getTickLimit: function getTickLimit() {\n var t = this.options.ticks,\n e = f.getValueOrDefault(t.fontSize, g.defaultFontSize);\n return Math.min(t.maxTicksLimit ? t.maxTicksLimit : 11, Math.ceil(this.drawingArea / (1.5 * e)));\n },\n convertTicksToLabels: function convertTicksToLabels() {\n var e = this;\n t.LinearScaleBase.prototype.convertTicksToLabels.call(e), e.pointLabels = e.chart.data.labels.map(e.options.pointLabels.callback, e);\n },\n getLabelForIndex: function getLabelForIndex(t, e) {\n return +this.getRightValue(this.chart.data.datasets[e].data[t]);\n },\n fit: function fit() {\n this.options.lineArc ? r(this) : o(this);\n },\n setReductions: function setReductions(t, e, a) {\n var i = this,\n n = e.l / Math.sin(a.l),\n o = Math.max(e.r - i.width, 0) / Math.sin(a.r),\n r = -e.t / Math.cos(a.t),\n s = -Math.max(e.b - i.height, 0) / Math.cos(a.b);\n n = h(n), o = h(o), r = h(r), s = h(s), i.drawingArea = Math.min(Math.round(t - (n + o) / 2), Math.round(t - (r + s) / 2)), i.setCenterPoint(n, o, r, s);\n },\n setCenterPoint: function setCenterPoint(t, e, a, i) {\n var n = this,\n o = n.width - e - n.drawingArea,\n r = t + n.drawingArea,\n s = a + n.drawingArea,\n l = n.height - i - n.drawingArea;\n n.xCenter = Math.round((r + o) / 2 + n.left), n.yCenter = Math.round((s + l) / 2 + n.top);\n },\n getIndexAngle: function getIndexAngle(t) {\n var a = 2 * Math.PI / e(this),\n i = this.chart.options && this.chart.options.startAngle ? this.chart.options.startAngle : 0,\n n = i * Math.PI * 2 / 360;\n return t * a + n;\n },\n getDistanceFromCenterForValue: function getDistanceFromCenterForValue(t) {\n var e = this;\n if (null === t) return 0;\n var a = e.drawingArea / (e.max - e.min);\n return e.options.reverse ? (e.max - t) * a : (t - e.min) * a;\n },\n getPointPosition: function getPointPosition(t, e) {\n var a = this,\n i = a.getIndexAngle(t) - Math.PI / 2;\n return {\n x: Math.round(Math.cos(i) * e) + a.xCenter,\n y: Math.round(Math.sin(i) * e) + a.yCenter\n };\n },\n getPointPositionForValue: function getPointPositionForValue(t, e) {\n return this.getPointPosition(t, this.getDistanceFromCenterForValue(e));\n },\n getBasePosition: function getBasePosition() {\n var t = this,\n e = t.min,\n a = t.max;\n return t.getPointPositionForValue(0, t.beginAtZero ? 0 : e < 0 && a < 0 ? a : e > 0 && a > 0 ? e : 0);\n },\n draw: function draw() {\n var t = this,\n e = t.options,\n a = e.gridLines,\n i = e.ticks,\n n = f.getValueOrDefault;\n if (e.display) {\n var o = t.ctx,\n r = n(i.fontSize, g.defaultFontSize),\n s = n(i.fontStyle, g.defaultFontStyle),\n l = n(i.fontFamily, g.defaultFontFamily),\n u = f.fontString(r, s, l);\n f.each(t.ticks, function (s, l) {\n if (l > 0 || e.reverse) {\n var d = t.getDistanceFromCenterForValue(t.ticksAsNumbers[l]),\n h = t.yCenter - d;\n if (a.display && 0 !== l && c(t, a, d, l), i.display) {\n var f = n(i.fontColor, g.defaultFontColor);\n if (o.font = u, i.showLabelBackdrop) {\n var p = o.measureText(s).width;\n o.fillStyle = i.backdropColor, o.fillRect(t.xCenter - p / 2 - i.backdropPaddingX, h - r / 2 - i.backdropPaddingY, p + 2 * i.backdropPaddingX, r + 2 * i.backdropPaddingY);\n }\n o.textAlign = \"center\", o.textBaseline = \"middle\", o.fillStyle = f, o.fillText(s, t.xCenter, h);\n }\n }\n }), e.lineArc || d(t);\n }\n }\n });\n t.scaleService.registerScaleType(\"radialLinear\", m, p);\n };\n }, {}],\n 48: [function (t, e, a) {\n \"use strict\";\n\n var i = t(1);\n i = \"function\" == typeof i ? i : window.moment, e.exports = function (t) {\n var e = t.helpers,\n a = {\n units: [{\n name: \"millisecond\",\n steps: [1, 2, 5, 10, 20, 50, 100, 250, 500]\n }, {\n name: \"second\",\n steps: [1, 2, 5, 10, 30]\n }, {\n name: \"minute\",\n steps: [1, 2, 5, 10, 30]\n }, {\n name: \"hour\",\n steps: [1, 2, 3, 6, 12]\n }, {\n name: \"day\",\n steps: [1, 2, 5]\n }, {\n name: \"week\",\n maxStep: 4\n }, {\n name: \"month\",\n maxStep: 3\n }, {\n name: \"quarter\",\n maxStep: 4\n }, {\n name: \"year\",\n maxStep: !1\n }]\n },\n n = {\n position: \"bottom\",\n time: {\n parser: !1,\n format: !1,\n unit: !1,\n round: !1,\n displayFormat: !1,\n isoWeekday: !1,\n minUnit: \"millisecond\",\n displayFormats: {\n millisecond: \"h:mm:ss.SSS a\",\n second: \"h:mm:ss a\",\n minute: \"h:mm:ss a\",\n hour: \"MMM D, hA\",\n day: \"ll\",\n week: \"ll\",\n month: \"MMM YYYY\",\n quarter: \"[Q]Q - YYYY\",\n year: \"YYYY\"\n }\n },\n ticks: {\n autoSkip: !1\n }\n },\n o = t.Scale.extend({\n initialize: function initialize() {\n if (!i) throw new Error(\"Chart.js - Moment.js could not be found! You must include it before Chart.js to use the time scale. Download at https://momentjs.com\");\n t.Scale.prototype.initialize.call(this);\n },\n getLabelMoment: function getLabelMoment(t, e) {\n return null === t || null === e ? null : \"undefined\" != typeof this.labelMoments[t] ? this.labelMoments[t][e] : null;\n },\n getLabelDiff: function getLabelDiff(t, e) {\n var a = this;\n return null === t || null === e ? null : (void 0 === a.labelDiffs && a.buildLabelDiffs(), \"undefined\" != typeof a.labelDiffs[t] ? a.labelDiffs[t][e] : null);\n },\n getMomentStartOf: function getMomentStartOf(t) {\n var e = this;\n return \"week\" === e.options.time.unit && e.options.time.isoWeekday !== !1 ? t.clone().startOf(\"isoWeek\").isoWeekday(e.options.time.isoWeekday) : t.clone().startOf(e.tickUnit);\n },\n determineDataLimits: function determineDataLimits() {\n var t = this;\n t.labelMoments = [];\n var a = [];\n t.chart.data.labels && t.chart.data.labels.length > 0 ? (e.each(t.chart.data.labels, function (e) {\n var i = t.parseTime(e);\n i.isValid() && (t.options.time.round && i.startOf(t.options.time.round), a.push(i));\n }, t), t.firstTick = i.min.call(t, a), t.lastTick = i.max.call(t, a)) : (t.firstTick = null, t.lastTick = null), e.each(t.chart.data.datasets, function (n, o) {\n var r = [],\n s = t.chart.isDatasetVisible(o);\n \"object\" == _typeof(n.data[0]) && null !== n.data[0] ? e.each(n.data, function (e) {\n var a = t.parseTime(t.getRightValue(e));\n a.isValid() && (t.options.time.round && a.startOf(t.options.time.round), r.push(a), s && (t.firstTick = null !== t.firstTick ? i.min(t.firstTick, a) : a, t.lastTick = null !== t.lastTick ? i.max(t.lastTick, a) : a));\n }, t) : r = a, t.labelMoments.push(r);\n }, t), t.options.time.min && (t.firstTick = t.parseTime(t.options.time.min)), t.options.time.max && (t.lastTick = t.parseTime(t.options.time.max)), t.firstTick = (t.firstTick || i()).clone(), t.lastTick = (t.lastTick || i()).clone();\n },\n buildLabelDiffs: function buildLabelDiffs() {\n var t = this;\n t.labelDiffs = [];\n var a = [];\n t.chart.data.labels && t.chart.data.labels.length > 0 && e.each(t.chart.data.labels, function (e) {\n var i = t.parseTime(e);\n i.isValid() && (t.options.time.round && i.startOf(t.options.time.round), a.push(i.diff(t.firstTick, t.tickUnit, !0)));\n }, t), e.each(t.chart.data.datasets, function (i) {\n var n = [];\n \"object\" == _typeof(i.data[0]) && null !== i.data[0] ? e.each(i.data, function (e) {\n var a = t.parseTime(t.getRightValue(e));\n a.isValid() && (t.options.time.round && a.startOf(t.options.time.round), n.push(a.diff(t.firstTick, t.tickUnit, !0)));\n }, t) : n = a, t.labelDiffs.push(n);\n }, t);\n },\n buildTicks: function buildTicks() {\n var i = this;\n i.ctx.save();\n var n = e.getValueOrDefault(i.options.ticks.fontSize, t.defaults.global.defaultFontSize),\n o = e.getValueOrDefault(i.options.ticks.fontStyle, t.defaults.global.defaultFontStyle),\n r = e.getValueOrDefault(i.options.ticks.fontFamily, t.defaults.global.defaultFontFamily),\n s = e.fontString(n, o, r);\n if (i.ctx.font = s, i.ticks = [], i.unitScale = 1, i.scaleSizeInUnits = 0, i.options.time.unit) i.tickUnit = i.options.time.unit || \"day\", i.displayFormat = i.options.time.displayFormats[i.tickUnit], i.scaleSizeInUnits = i.lastTick.diff(i.firstTick, i.tickUnit, !0), i.unitScale = e.getValueOrDefault(i.options.time.unitStepSize, 1);else {\n var l = i.isHorizontal() ? i.width : i.height,\n u = i.tickFormatFunction(i.firstTick, 0, []),\n d = i.ctx.measureText(u).width,\n c = Math.cos(e.toRadians(i.options.ticks.maxRotation)),\n h = Math.sin(e.toRadians(i.options.ticks.maxRotation));\n d = d * c + n * h;\n var f = l / d;\n i.tickUnit = i.options.time.minUnit, i.scaleSizeInUnits = i.lastTick.diff(i.firstTick, i.tickUnit, !0), i.displayFormat = i.options.time.displayFormats[i.tickUnit];\n for (var g = 0, p = a.units[g]; g < a.units.length;) {\n if (i.unitScale = 1, e.isArray(p.steps) && Math.ceil(i.scaleSizeInUnits / f) < e.max(p.steps)) {\n for (var m = 0; m < p.steps.length; ++m) if (p.steps[m] >= Math.ceil(i.scaleSizeInUnits / f)) {\n i.unitScale = e.getValueOrDefault(i.options.time.unitStepSize, p.steps[m]);\n break;\n }\n break;\n }\n if (p.maxStep === !1 || Math.ceil(i.scaleSizeInUnits / f) < p.maxStep) {\n i.unitScale = e.getValueOrDefault(i.options.time.unitStepSize, Math.ceil(i.scaleSizeInUnits / f));\n break;\n }\n ++g, p = a.units[g], i.tickUnit = p.name;\n var v = i.firstTick.diff(i.getMomentStartOf(i.firstTick), i.tickUnit, !0),\n b = i.getMomentStartOf(i.lastTick.clone().add(1, i.tickUnit)).diff(i.lastTick, i.tickUnit, !0);\n i.scaleSizeInUnits = i.lastTick.diff(i.firstTick, i.tickUnit, !0) + v + b, i.displayFormat = i.options.time.displayFormats[p.name];\n }\n }\n var x;\n if (i.options.time.min ? x = i.getMomentStartOf(i.firstTick) : (i.firstTick = i.getMomentStartOf(i.firstTick), x = i.firstTick), !i.options.time.max) {\n var y = i.getMomentStartOf(i.lastTick),\n k = y.diff(i.lastTick, i.tickUnit, !0);\n k < 0 ? i.lastTick = i.getMomentStartOf(i.lastTick.add(1, i.tickUnit)) : k >= 0 && (i.lastTick = y), i.scaleSizeInUnits = i.lastTick.diff(i.firstTick, i.tickUnit, !0);\n }\n i.options.time.displayFormat && (i.displayFormat = i.options.time.displayFormat), i.ticks.push(i.firstTick.clone());\n for (var S = i.unitScale; S <= i.scaleSizeInUnits; S += i.unitScale) {\n var M = x.clone().add(S, i.tickUnit);\n if (i.options.time.max && M.diff(i.lastTick, i.tickUnit, !0) >= 0) break;\n i.ticks.push(M);\n }\n var w = i.ticks[i.ticks.length - 1].diff(i.lastTick, i.tickUnit);\n 0 === w && 0 !== i.scaleSizeInUnits || (i.options.time.max ? (i.ticks.push(i.lastTick.clone()), i.scaleSizeInUnits = i.lastTick.diff(i.ticks[0], i.tickUnit, !0)) : (i.ticks.push(i.lastTick.clone()), i.scaleSizeInUnits = i.lastTick.diff(i.firstTick, i.tickUnit, !0))), i.ctx.restore(), i.labelDiffs = void 0;\n },\n getLabelForIndex: function getLabelForIndex(t, e) {\n var a = this,\n i = a.chart.data.labels && t < a.chart.data.labels.length ? a.chart.data.labels[t] : \"\",\n n = a.chart.data.datasets[e].data[t];\n return null !== n && \"object\" == _typeof(n) && (i = a.getRightValue(n)), a.options.time.tooltipFormat && (i = a.parseTime(i).format(a.options.time.tooltipFormat)), i;\n },\n tickFormatFunction: function tickFormatFunction(t, a, i) {\n var n = t.format(this.displayFormat),\n o = this.options.ticks,\n r = e.getValueOrDefault(o.callback, o.userCallback);\n return r ? r(n, a, i) : n;\n },\n convertTicksToLabels: function convertTicksToLabels() {\n var t = this;\n t.tickMoments = t.ticks, t.ticks = t.ticks.map(t.tickFormatFunction, t);\n },\n getPixelForValue: function getPixelForValue(t, e, a) {\n var i = this,\n n = null;\n if (void 0 !== e && void 0 !== a && (n = i.getLabelDiff(a, e)), null === n && (t && t.isValid || (t = i.parseTime(i.getRightValue(t))), t && t.isValid && t.isValid() && (n = t.diff(i.firstTick, i.tickUnit, !0))), null !== n) {\n var o = 0 !== n ? n / i.scaleSizeInUnits : n;\n if (i.isHorizontal()) {\n var r = i.width * o;\n return i.left + Math.round(r);\n }\n var s = i.height * o;\n return i.top + Math.round(s);\n }\n },\n getPixelForTick: function getPixelForTick(t) {\n return this.getPixelForValue(this.tickMoments[t], null, null);\n },\n getValueForPixel: function getValueForPixel(t) {\n var e = this,\n a = e.isHorizontal() ? e.width : e.height,\n n = (t - (e.isHorizontal() ? e.left : e.top)) / a;\n return n *= e.scaleSizeInUnits, e.firstTick.clone().add(i.duration(n, e.tickUnit).asSeconds(), \"seconds\");\n },\n parseTime: function parseTime(t) {\n var e = this;\n return \"string\" == typeof e.options.time.parser ? i(t, e.options.time.parser) : \"function\" == typeof e.options.time.parser ? e.options.time.parser(t) : \"function\" == typeof t.getMonth || \"number\" == typeof t ? i(t) : t.isValid && t.isValid() ? t : \"string\" != typeof e.options.time.format && e.options.time.format.call ? (console.warn(\"options.time.format is deprecated and replaced by options.time.parser. See http://nnnick.github.io/Chart.js/docs-v2/#scales-time-scale\"), e.options.time.format(t)) : i(t, e.options.time.format);\n }\n });\n t.scaleService.registerScaleType(\"time\", o, n);\n };\n }, {\n 1: 1\n }]\n }, {}, [7])(7);\n});\n\"use strict\";\n\n//Customizations to jQuery Ajax\n(function ($) {\n var ajax = $.ajax;\n $.ajax = function (url, opts) {\n //The 1st arg is probably the options object, but it could be the URL,\n //see http://api.jquery.com/jquery.ajax/\n opts = $.extend(true, {}, typeof url == \"string\" ? opts : url);\n if (typeof opts.error != 'function') {\n opts.error = function (jqXHR, textStatus, errorthrown) {\n showErrorModal(jqXHR.responseText);\n };\n }\n return ajax.call($, opts);\n };\n})(jQuery);\n\"use strict\";\n\n(function () {\n //An ajax-form uses jQuery ajax to submit, and uses conventions to make creating ajax\n //forms quick and easy. It's also compatible w/ jQuery validation.\n\n //To make an ajax-form, create a form and add the ajax-form class\n //
    \n\n //When you take an action that would normally cause the form to be\n //submitted (e.g. clicking a submit button or pressing enter) the\n //ajax-form will make an ajax call to submit the form instead.\n\n //When the submit process begins, all the form inputs will become \n //disabled, and when the submit process is finished the inputs\n //will be un-disabled.\n\n $(document).on(\"click\", \".ajax-form [type=submit]\", function (e) {\n e.preventDefault();\n var $this = $(this);\n submitForm($this.closest('.ajax-form'), {\n name: $this.prop('name'),\n value: $this.prop('value')\n });\n });\n $(document).on(\"submit\", \"form.ajax-form\", function (e) {\n e.preventDefault();\n submitForm(this);\n });\n function submitForm(form, submitButtonData) {\n var $form = $(form);\n if (!$form.data('isLocked')) {\n if (submitButtonData) {\n $form.append('');\n }\n var data = $form.serialize();\n $form.find('.submitButtonData').remove();\n lockForm($form);\n $.ajax({\n url: $form.prop('action'),\n type: 'POST',\n contentType: 'application/x-www-form-urlencoded',\n data: data,\n success: function success(data) {\n $form.find('.ajax-form-data').add($form.data('ajax-form-target')).html(data);\n var successCallback = $form.data('ajax-form-success');\n if (successCallback) {\n //successCallback can either be a function that receives the data\n //or a JS expression to be executed.\n var func = findFunc(successCallback);\n if (func) {\n func(data);\n } else {\n eval(successCallback);\n }\n }\n },\n complete: function complete() {\n unlockForm($form);\n }\n });\n }\n }\n function lockForm($form) {\n $form.data('isLocked', new Date());\n $form.find('.ajax-form-loading').add($form.data('ajax-form-loading')).addClass('active');\n $form.find(':input:not(:disabled)').addClass('ajax-form-disabled').prop('disabled', 'disabled');\n }\n function unlockForm($form) {\n $form.removeData('isLocked');\n $form.find('.ajax-form-loading').add($form.data('ajax-form-loading')).removeClass('active');\n $form.find('.ajax-form-disabled').removeAttr('disabled').removeClass('ajax-form-disabled');\n }\n function findFunc(funcName) {\n var pieces = funcName.split('.');\n if (pieces.length > 0) {\n var context = window;\n var func = null;\n for (var i = 0; i < pieces.length - 1; i++) {\n var newContext = context[pieces[i]];\n if (newContext) {\n context = newContext;\n } else {\n context = window;\n break;\n }\n }\n func = context[pieces[pieces.length - 1]];\n if (typeof func == \"function\") {\n return func.bind(context);\n }\n }\n }\n})();\n\"use strict\";\n\n//Prevent multiple clicks on elements with the single-click class.\n//Once an element is no longer clickable, you can make it\n//clickable again by calling $(element).data('clicked', false).\n//This double-click protection doesn't prevent non-delegated\n//event listeners or listeners delegated lower than body\n//from running. This code is intended for anchors, but \n//should work for buttons also, it is NOT good enough\n//for forms. To do this for forms you should intercept\n//the submit event and disable the fields on the form.\n(function () {\n $(document).on(\"click\", \".single-click\", function (e) {\n if ($(this).data('clicked')) {\n e.preventDefault();\n e.stopPropagation();\n return false;\n }\n $(this).add(getClickGroup(this)).data('clicked', true);\n });\n function getClickGroup(e) {\n return $(getClickGroupClass(e));\n }\n function getClickGroupClass(e) {\n var classes = $(e).prop('class').split(/\\s+/);\n for (var i = 0; i < classes.length; i++) {\n if (classes[i].indexOf('click-group-') == 0) {\n return '.' + classes[i];\n }\n }\n }\n})();\n\"use strict\";\n\n(function () {\n showErrorModal = function showErrorModal(model) {\n if (typeof model == \"string\") {\n model = JSON.parse(model);\n }\n for (var k in model) {\n $(\".error-popup-\" + k).text(model[k]);\n }\n $(\".error-popup, .error-popup-backdrop\").addClass('active');\n };\n hideErrorModal = function hideErrorModal() {\n $(\".error-popup, .error-popup-backdrop\").removeClass('active');\n };\n $(document).on(\"click\", '#copyErrorButton', function () {\n var el = document.getElementsByClassName('error-popup-data-copy')[0];\n var range = document.createRange();\n range.selectNodeContents(el);\n var sel = window.getSelection();\n sel.removeAllRanges();\n sel.addRange(range);\n document.execCommand('copy');\n });\n $(document).on(\"click\", \".error-popup-close\", hideErrorModal);\n})();\n\"use strict\";\n\n//misc workarounds for stupid modal-background behavior\n(function ($) {\n var modals = {\n locked: false\n };\n var lockWaitMillis = 25;\n var animationWaitMillis = 1000;\n\n //Gets called immediately after initiating the modal close but\n //ONLY if the modal close is done the Bootstrap way. Just deleting\n //the modal from the DOM does not cause this method to get called.\n $(document).on(\"hide.bs.modal\", \".modal\", onHide);\n function onHide(e) {\n //This actually gets called for other things like the \n //bootstrap datepicker, so we need to make sure this\n //is a modal that's being hidden.\n if ($(e.target).is('.modal')) {\n if (!modals.locked) {\n modals.locked = true;\n var backdrops = $(\".modal-backdrop\");\n modals[e.target] = backdrops;\n modals.locked = false;\n window.setTimeout(function () {\n onHidden(e);\n }, animationWaitMillis);\n } else {\n window.setTimeout(function () {\n onHide(e);\n }, lockWaitMillis);\n }\n }\n }\n\n //Gets called after the animation for closing the modal has finished. This\n //method will only get called if the onHide method above is called. The bootstrap\n //event will only be triggered if the modal still exists in the DOM when the \n //animation timer completes. As a workaround for when the modal is deleted from \n //the DOM prior to the animation timer completing, this method should also be\n //called from onHide via a timer.\n $(document).on(\"hidden.bs.modal\", \".modal\", onHidden);\n function onHidden(e) {\n if (!modals.locked) {\n modals.locked = true;\n var backdrops = modals[e.target];\n if (backdrops && backdrops.length) {\n backdrops.remove();\n }\n modals[e.target] = null;\n if (!$(\".modal:visible\").length) {\n $(document.body).removeClass(\"modal-open\");\n }\n modals.locked = false;\n } else {\n window.setTimeout(function () {\n onHidden(e);\n }, lockWaitMillis);\n }\n }\n\n //Run a timer checking to see if modal backdrops exist when no modals are visible.\n //If that situation occurs more than maxTimerFails times then delete\n //all the modal backdrops. This method largely makes the other two unnecessary,\n //but the other two are much more responsive to user input which is why I'm\n //leaving the others (keep in mind that jQuery :visible is true until the modal fade\n //animation is finished).\n (function () {\n var maxTimerFails = 20;\n var failCount = 0;\n var timerMillis = 250;\n function onTimer() {\n if (!$(\".modal.show\").length && $(\".modal-backdrop\").length) {\n failCount++;\n } else {\n failCount = 0;\n }\n if (failCount >= maxTimerFails) {\n $(\".modal-backdrop\").remove();\n $(document.body).removeClass(\"modal-open\");\n console.log('ERROR: Workaround timer forced to clear modal-backdrop. Please close your modals properly by calling $(elem).modal(\"hide\").');\n }\n }\n var timer = window.setInterval(onTimer, timerMillis);\n })();\n})(jQuery);\n\"use strict\";\n\n(function () {\n var completedDate = false;\n var completedType = false;\n var booleanParse = function booleanParse(s) {\n if (typeof s == \"string\") {\n s = s.toLowerCase();\n if (s == \"t\" || s == \"true\") {\n return true;\n } else if (s == \"f\" || s == \"false\") {\n return false;\n }\n } else if (typeof s == \"boolean\") {\n return s;\n }\n };\n $(window).ready(function () {\n $(\"a[href='#LEQuestionModal']\").click(function () {\n var transactionType = $(this).data('transtype');\n if (transactionType && transactionType.toLowerCase() == 'lifeevent') {\n $(\"#lifeEventDetails\").show();\n $(\".oeDisplay\").hide();\n } else if (transactionType && transactionType.toLowerCase() == 'openenrollment') {\n $(\"#lifeEventDetails\").hide();\n $(\".oeDisplay\").show();\n }\n });\n var hasMultipleLifeEvents = booleanParse($(\"#HasMultipleLifeEvents\").val());\n $(\"#lifeEventDetails\").hide();\n $(\".oeDisplay\").show();\n if (hasMultipleLifeEvents) {\n $(\"#lifeEventDetails\").show();\n $(\".oeDisplay\").hide();\n }\n $(\"#leModalDateError\").text(\"\");\n $(\"#editLifeEvent\").click(function () {\n $(\"#lifeEventDetails\").show();\n });\n //set the continue button to disabled and clear out any LE values in local storage\n checkEnableEnrollmentBtn();\n localStorage.removeItem(\"selectedLifeEventType\");\n localStorage.removeItem(\"selectedLifeEventDate\");\n $('#lifeEventDatePicker').datepicker().on('changeDate', function (e) {\n //get the date and format it\n $(\"#leModalDateError\").text(\"\");\n var parsedDateSelected = getParsedDateSelected();\n var dateSelected = parsedDateSelected.getMonth() + 1 + '/' + parsedDateSelected.getDate() + '/' + parsedDateSelected.getFullYear();\n\n //any time the datepicker field changes check if the continue button can be enabled\n if (dateSelected != \"\") {\n leDate = dateSelected;\n completedDate = true;\n checkEnableEnrollmentBtn();\n }\n });\n $('#lifeEventDatePicker').datepicker().on('keyup', function (e) {\n //get the date and format it\n if ($(\"#lifeEventDate\").val().replace(/ /g, '').length == 10) {\n var parsedDateSelected = getParsedDateSelected();\n var dateSelected = parsedDateSelected.getMonth() + 1 + '/' + parsedDateSelected.getDate() + '/' + parsedDateSelected.getFullYear();\n\n //any time the datepicker field changes check if the continue button can be enabled\n if (dateSelected != \"\") {\n leDate = dateSelected;\n completedDate = true;\n checkEnableEnrollmentBtn();\n }\n }\n });\n $(\".lifeEventOption\").click(function () {\n //properly set radio button classes\n var selectedType = 0;\n var classNames = this.classList;\n\n //Finding selected type\n for (var i = 0; i < classNames.length; i++) {\n if (classNames[i].indexOf(\"leType-\") !== -1) {\n selectedType = classNames[i].replace(\"leType-\", \"\");\n }\n }\n\n //Displaying main text area\n if (selectedType && parseInt(selectedType) && selectedType != 0) {\n $(\"#SelectedLifeEventTypeId\").val(parseInt(selectedType));\n completedType = true;\n var isMobile = typeof window.matchMedia == 'function' && matchMedia('(max-width: 1199.98px)').matches;\n var containerName = isMobile ? \".service-modal-le-container-mobile\" : \".service-modal-le-container-desktop\";\n if (selectedType == '8' || selectedType == '11' || selectedType == '12') {\n if (isMobile) {\n $(containerName).hide();\n $(this).find(containerName).show();\n } else {\n $(containerName).show();\n }\n } else {\n $(containerName).hide();\n }\n }\n\n //Toggling Check Mark Portion\n $(\".lifeEventOption\").each(function () {\n if ($(this).hasClass(\"leType-\" + selectedType)) {\n $(this).find(\"i.le-modal-le-type\").addClass(\"fas fa-check-circle\").removeClass(\"far fa-circle\");\n } else {\n $(this).find(\"i.le-modal-le-type\").addClass(\"far fa-circle\").removeClass(\"fas fa-check-circle\");\n }\n });\n checkEnableEnrollmentBtn();\n });\n $(\".closeLeModal\").click(function () {\n leDate = null;\n leType = null;\n completedDate = false;\n completedType = false;\n if (!hasMultipleLifeEvents) {\n $(\"#lifeEventDetails\").hide();\n }\n });\n checkTopOfLEModal();\n });\n function checkTopOfLEModal() {\n if (typeof window.matchMedia == 'function' && matchMedia('(max-width: 1199.98px)').matches) {\n //Need to accomodate for height of OE banner\n $(\"#LEQuestionModal\").css(\"top\", $(\".header-wrapper\").height());\n } else {\n $(\"#LEQuestionModal\").css(\"top\", \"0\");\n }\n }\n function checkEnableEnrollmentBtn() {\n updateTheContinueButton(true);\n validateLifeEventDate();\n if ($(\"#leModalDateError\").text() != \"\") {\n updateTheContinueButton(true);\n return;\n }\n if (completedDate && completedType) {\n updateTheContinueButton(false);\n }\n }\n function getParsedDateSelected() {\n return $('#lifeEventDatePicker').datepicker('getDate');\n }\n function validateLifeEventDate() {\n if (!completedDate || !completedType) {\n return;\n }\n var parsedDateSelected = getParsedDateSelected();\n var todaysDate = new Date();\n todaysDate.setHours(0, 0, 0, 0);\n if (todaysDate < parsedDateSelected) {\n $(\"#leModalDateError\").html(\"You cannot report a future life event. Please come back to report your life event on or after the date it occurs.\");\n }\n var enrollmentWindow = getEnrollmentWindowForSelectedLifeEvent();\n var minDate = new Date(todaysDate);\n minDate.setDate(todaysDate.getDate() - enrollmentWindow);\n if (minDate > parsedDateSelected) {\n $(\"#leModalDateError\").html(\"Life event must have occurred within the past \" + enrollmentWindow + \" days.\");\n }\n }\n function getEnrollmentWindowForSelectedLifeEvent() {\n return $(\".leTypeWindow-\" + $(\"#SelectedLifeEventTypeId\").val()).val();\n }\n function updateTheContinueButton(isDisabled) {\n $(\"#continueToEnrollmentBtn\").prop(\"disabled\", isDisabled);\n if (isDisabled) {\n $(\"#continueToEnrollmentBtn\").removeClass('next-btn');\n $(\"#continueToEnrollmentBtn\").addClass('confirm-btn');\n } else {\n $(\"#continueToEnrollmentBtn\").removeClass('confirm-btn');\n $(\"#continueToEnrollmentBtn\").addClass('next-btn');\n }\n }\n\n //On resize check to see where the text area should be displaying\n $(window).on('resize', function () {\n var checkedCircle = $('.le-modal-le-type.fa-check-circle');\n //Check if any LE is checked on resize\n if (checkedCircle.length > 0) {\n if (checkedCircle.closest('.leType-8').length || checkedCircle.closest('.leType-11').length || checkedCircle.closest('.leType-12').length) {\n //Display Text Area in Desktop\n if (typeof window.matchMedia == 'function' && matchMedia('(min-width: 1199.98px)').matches) {\n $(\".service-modal-le-container-desktop\").show();\n $(\".service-modal-le-container-mobile\").hide();\n } else {\n //Display mobile text area\n $(\".service-modal-le-container-desktop\").hide();\n $(\".service-modal-le-container-mobile\").hide();\n $('.le-modal-le-type.fa-check-circle').closest(\".life-event-modal-option\").find('.service-modal-le-container-mobile').show();\n }\n }\n } else {\n $(\".service-modal-le-container-desktop\").hide();\n $(\".service-modal-le-container-mobile\").hide();\n }\n checkTopOfLEModal();\n });\n})();\n\"use strict\";\n\n(function () {\n //This turns the title attribute into bootstrap tooltips, we have to run it periodically\n //because as html is added to the page we have to run this again.\n window.setInterval(function () {\n if ($(\"body\").tooltip) {\n $(\"body\").tooltip({\n selector: '[title]'\n });\n }\n }, 500);\n})();\n\"use strict\";\n\n(function () {\n toast = function toast(text, type) {\n var $toast = $('
    ' + '' + text + '
    ');\n $(document.body).append($toast);\n setTimeout(function () {\n $toast.addClass('toast-hidden');\n }, 3000);\n };\n})();\n\"use strict\";\n\nvar dashboardMobileMenuModule = function () {\n //This variable allows you to click the same active menu you're on when the page loads. Without this you would have to click on a different menu to be able to get to the main menu due to the event stop propgation not allowing the menus to close.\n var mainLoadedMenuClicked = false;\n var openMenu = function openMenu(e) {\n if ($(e.target).hasClass(\"sub-menu-links-collapsible\")) {\n $(e.target).parent().next(\".sub-menu-links-collapsible-content\").toggle();\n //Make sure main dropdown overlay doesn't close\n e.stopPropagation();\n } else if (mainLoadedMenuClicked && $(this).hasClass('active')) {\n e.stopPropagation();\n } else {\n if (!$(this).find('a').attr('href')) {\n $(\".mobile-navbar\").find('.menu-item-mobile').removeClass(\"active\");\n $(this).addClass(\"active\");\n } else {\n e.stopPropagation();\n }\n }\n mainLoadedMenuClicked = true;\n };\n return {\n Init: function Init() {\n //Toggle active mobile menu on click\n $(\".menu-item-mobile\").click(openMenu);\n $(\".dashboard-mobile-menu a\").click(function (e) {\n var href = $(this).attr('href');\n if (!href) {\n $(\".menu-item-mobile\").removeClass('show');\n var menuItemID = $(this).data('menu-item-id');\n var bottomNavMenuButton = $(\".menu-item-mobile[data-menu-item-id='\" + menuItemID + \"']\");\n if (bottomNavMenuButton.length) {\n $(bottomNavMenuButton).click();\n bottomNavMenuButton.addClass('show');\n } else {\n // menu is under the \"MORE\" section. \n bottomNavMenuButton = $(\".menu-item-mobile[data-menu-item-id='more-button']\");\n $(bottomNavMenuButton).click();\n bottomNavMenuButton.addClass('show');\n\n //open menu under \"MORE\"\n $(\"[data-target='#collapse-\" + menuItemID + \"']\").click();\n }\n $('.mobile-navbar').show();\n e.stopPropagation();\n }\n });\n }\n };\n}();\n\"use strict\";\n\n(function () {\n $(document).on('click', '.circular-menu-item-link, .circular-menu .floating-btn', function () {\n //open close menu\n $(this).closest('.circular-menu').toggleClass('active');\n //toggle overlay\n $(\"#overlay\").toggle();\n });\n $(window).resize(checkOverlay);\n function checkOverlay() {\n if (typeof window.matchMedia == 'function' && !matchMedia('(max-width: 1199.98px)').matches) {\n $(\"#overlay\").css(\"display\", \"none\");\n $(\"#circularMenu\").removeClass(\"active\");\n }\n }\n})();\n\"use strict\";\n\n(function () {\n Titania = typeof Titania != \"undefined\" && Titania || {};\n Titania.Functions = Titania.Functions || {};\n Titania.Functions.IsValidEmail = function (emailAddress) {\n //below regex was taken from top answer in https://stackoverflow.com/questions/46370725/how-to-do-email-validation-using-regular-expression-in-typescript\n return emailAddress && /^(([^<>()\\[\\]\\\\.,;:\\s@\"]+(\\.[^<>()\\[\\]\\\\.,;:\\s@\"]+)*)|(\".+\"))@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}])|(([a-zA-Z\\-0-9]+\\.)+[a-zA-Z]{2,}))$/.test(emailAddress);\n };\n})();\n\"use strict\";\n\nvar contactUsModalJS = function () {\n var initialized = false;\n return {\n Init: function Init() {\n if (initialized) {\n return;\n }\n function checkTopOfContactModal() {\n if (typeof window.matchMedia == 'function' && matchMedia('(max-width: 1199.98px)').matches) {\n //Need to accomodate for height of OE banner\n $(\"#supportModal\").find(\".modal-dialog\").css(\"top\", $(\".header-wrapper\").height());\n $(\"#contactModal\").find(\".modal-dialog\").css(\"top\", $(\".header-wrapper\").height());\n }\n }\n checkTopOfContactModal();\n $(window).resize(checkTopOfContactModal);\n $(\"#supportModalToggle\").click(function () {\n $(\"#contactModal\").modal('toggle');\n $(\"#supportModal\").modal('toggle');\n });\n $(\"#goBackToContactModal\").click(function () {\n $(\"#supportModal\").modal('toggle');\n $(\"#contactModal\").modal('toggle');\n });\n\n //Check if all fields are filled out\n $('#sendEmailButton').prop(\"disabled\", true);\n $(document).on('keyup', '.contact-us-input', function (e) {\n $('#sendEmailButton').prop(\"disabled\", !!$('.modal.show').find(\".contact-us-input\").filter(function () {\n return this && (!this.value || !this.value.trim());\n }).length);\n });\n $('#sendEmailButton').click(function (e) {\n e.preventDefault();\n if ($(this).prop('disabled') == true) {\n return;\n }\n $(this).prop('disabled', true);\n var contactFormViewModel = {};\n $.each($(this).closest('form').serializeArray(), function () {\n contactFormViewModel[this.name] = this.value || '';\n });\n $.ajax({\n type: 'POST',\n url: url,\n data: JSON.stringify(contactFormViewModel),\n contentType: 'application/json'\n }).done(function () {\n $(\"#supportModal\").modal('toggle');\n $('.contact-us-input').val('');\n $('#sendEmailButton').prop(\"disabled\", true);\n });\n });\n initialized = true;\n }\n };\n}();\n\"use strict\";\n\n(function () {\n Titania = typeof Titania != \"undefined\" && Titania || {};\n Titania.Models = Titania.Models || {};\n})();\n\"use strict\";\n\n(function () {\n Titania.Models.Boolean = function () {};\n\n //Parse a boolean from the given string.\n //Returns undefined if the parse fails. You can\n //check for success by seeing if typeof the return\n //value is boolean.\n Titania.Models.Boolean.Parse = function (s) {\n if (typeof s == \"string\") {\n s = s.toLowerCase();\n if (s == \"t\" || s == \"true\") {\n return true;\n } else if (s == \"f\" || s == \"false\") {\n return false;\n }\n } else if (typeof s == \"boolean\") {\n return s;\n }\n };\n})();\n\"use strict\";\n\n(function () {\n Titania.Models.Cookie = function () {};\n\n // Gets a value indicating whether the cookie exists.\n Titania.Models.Cookie.DoesCookieExist = function (cname) {\n return !!Titania.Models.Cookie.GetCookie(cname);\n };\n\n // Gets a cookie value with the given cookie name.\n // Returns empty string if the find fails. \n Titania.Models.Cookie.GetCookie = function (cname) {\n var name = cname + \"=\";\n var decodedCookie = decodeURIComponent(document.cookie);\n var ca = decodedCookie.split(';');\n for (var i = 0; i < ca.length; i++) {\n var c = ca[i];\n while (c.charAt(0) == ' ') {\n c = c.substring(1);\n }\n if (c.indexOf(name) == 0) {\n return c.substring(name.length, c.length);\n }\n }\n return \"\";\n };\n\n // Sets a cookie with the given key and value\n Titania.Models.Cookie.SetCookie = function (cname, cvalue, path) {\n var c = cname + \"=\" + cvalue;\n if (path) {\n c += \"; path=\" + path;\n }\n document.cookie = c;\n };\n})();\n\"use strict\";\n\n(function () {\n Titania.Models.PhoneNumber = function () {};\n Titania.Models.PhoneNumber.Format = function (phone) {\n phone = (phone || '').replace(/\\D/g, '');\n var result = \"\";\n for (var i = 0; i < phone.length; i++) {\n if (i === 0) {\n result = \"(\" + phone[i];\n } else if (i === 2) {\n result = result + phone[i] + \") \";\n } else if (i === 5) {\n result = result + phone[i] + \"-\";\n } else {\n result = result + phone[i];\n }\n }\n return result;\n };\n})();\n\"use strict\";\n\n(function () {\n var platform = {};\n\n // browser info and capability\n var _ua = window.navigator.userAgent;\n platform.isIDevice = /iphone|ipod|ipad/i.test(_ua);\n platform.isAndroid = /android/i.test(_ua);\n platform.isSamsung = /Samsung/i.test(_ua);\n platform.isFireFox = /Firefox/i.test(_ua);\n platform.isOpera = /opr/i.test(_ua);\n platform.isEdge = /edg/i.test(_ua);\n platform.isKindleFire = /Kindle|Silk|KFAPW|KFARWI|KFASWI|KFFOWI|KFJW|KFMEWI|KFOT|KFSAW|KFSOWI|KFTBW|KFTHW|KFTT|WFFOWI/i.test(_ua);\n\n // Opera & FireFox only Trigger on Android\n platform.isFireFoxForAndroid = platform.isFireFox && platform.isAndroid;\n platform.isOperaForAndroid = platform.isOpera && platform.isAndroid;\n platform.isChromium = \"onbeforeinstallprompt\" in window;\n platform.isInWebAppiOS = window.navigator && window.navigator.standalone === true;\n platform.isInWebAppChrome = window.matchMedia && window.matchMedia('(display-mode: standalone)').matches;\n platform.isMobileSafari = platform.isIDevice && _ua.indexOf('Safari') > -1 && _ua.indexOf('CriOS') < 0;\n platform.isStandalone = platform.isInWebAppiOS || platform.isInWebAppChrome;\n platform.isiPad = platform.isMobileSafari && _ua.indexOf('iPad') > -1 || navigator.maxTouchPoints && navigator.maxTouchPoints > 2 && /MacIntel/.test(navigator.platform);\n platform.isiPhone = platform.isMobileSafari && _ua.indexOf('iPad') === -1;\n platform.isCompatible = platform.isChromium || platform.isMobileSafari || platform.isSamsung || platform.isFireFox || platform.isOpera;\n var getIosVersion = function getIosVersion() {\n var result = {\n major: 0,\n minor: 0,\n revision: 0\n };\n if (platform.isiPad || platform.isiPhone) {\n var extract = _ua.match(/OS (\\d+)_(\\d+)_?(\\d+)?/);\n result.major = parseInt(extract[1] || 0, 10);\n result.minor = parseInt(extract[2] || 0, 10);\n result.revision = parseInt(extract[3] || 0, 10);\n }\n return result;\n };\n $(document).ready(function () {\n if (!Titania.Models.Cookie.DoesCookieExist('a2hsOptedOut')) {\n Titania.Models.Cookie.SetCookie(\"a2hsOptedOut\", false, '/'); // has the user opted out\n }\n\n $('.pwa-install-close-button').click(function () {\n $('.error-popup-backdrop').removeClass('pwa-backdrop active');\n $('.pwa-install-footer').hide();\n Titania.Models.Cookie.SetCookie(\"a2hsOptedOut\", true, '/');\n });\n var iosVersion = getIosVersion();\n if ((platform.isiPad || platform.isiPhone) && (iosVersion.major >= 14 || iosVersion.major == 13 && iosVersion.minor >= 7) && !platform.isInWebAppiOS && !Titania.Models.Boolean.Parse(Titania.Models.Cookie.GetCookie('a2hsOptedOut'))) {\n setTimeout(function () {\n $('.error-popup-backdrop').addClass('pwa-backdrop active');\n $('.pwa-install-footer').show();\n }, 2000);\n } else {\n // only show the installer tutorial video for iOS devices\n $('.pwa-video-btn').hide();\n }\n $('.pwa-video-btn').click(function () {\n $('.pwa-install-video-container').show();\n\n // replay the gif\n var srcAttribute = $('.pwa-install-video-container > img').attr('src').split('?')[0] + '?v=' + Date.now();\n $('.pwa-install-video-container > img').attr('src', srcAttribute);\n });\n $('.pwa-install-video-container-close').click(function () {\n $('.pwa-install-video-container').hide();\n });\n });\n window.addEventListener(\"beforeinstallprompt\", function (e) {\n // cancel prompt if running on kindle fire\n if (platform.isKindleFire) {\n console.log('i am KindleFire');\n e.preventDefault();\n }\n });\n if ('serviceWorker' in navigator) {\n window.addEventListener('load', function () {\n navigator.serviceWorker.register('/PWAServiceWorker.js').then(function (registration) {\n // Registration was successful\n console.log('ServiceWorker registration successful with scope: ', registration.scope);\n }, function (err) {\n // registration failed :(\n console.log('ServiceWorker registration failed: ', err);\n });\n });\n }\n})();","(function () {\r\n //dateTimeOffSet is set in the head of the layout page\r\n //so this should never actually happen.\r\n if (typeof (dateTimeOffSet) == 'undefined') {\r\n dateTimeOffSet = 0;\r\n }\r\n\r\n // handle to old date function.\r\n var date = Date;\r\n\r\n Date = function () {\r\n var d = null;\r\n if (arguments.length == 0) {\r\n d = new date();\r\n d.setDate(d.getDate() + dateTimeOffSet);\r\n }\r\n else if (arguments.length == 1)\r\n d = new date(arguments[0]);\r\n else\r\n d = new date(arguments[0], arguments[1], arguments[2] || 0, arguments[3] || 0, arguments[4] || 0, arguments[5] || 0, arguments[6] || 0);\r\n if (this instanceof Date)\r\n return d;\r\n return d.toString();\r\n };\r\n\r\n Date.prototype = date.prototype;\r\n\r\n Date.prototype.constructor = Date;\r\n\r\n Date.parse = function () {\r\n return date.parse.apply(date, arguments);\r\n }\r\n\r\n Date.now = function () {\r\n return date.now() + dateTimeOffSet * 24 * 60 * 60 * 1000;\r\n }\r\n\r\n Date.UTC = function () {\r\n return date.UTC.apply(date, arguments);\r\n }\r\n})();","// @license http://opensource.org/licenses/MIT\r\n// copyright Paul Irish 2015\r\n\r\n\r\n// Date.now() is supported everywhere except IE8. For IE8 we use the Date.now polyfill\r\n// github.com/Financial-Times/polyfill-service/blob/master/polyfills/Date.now/polyfill.js\r\n// as Safari 6 doesn't have support for NavigationTiming, we use a Date.now() timestamp for relative values\r\n\r\n// if you want values similar to what you'd get with real perf.now, place this towards the head of the page\r\n// but in reality, you're just getting the delta between now() calls, so it's not terribly important where it's placed\r\n\r\n\r\n(function () {\r\n\r\n\tif (\"performance\" in window === false) {\r\n\t\twindow.performance = {};\r\n\t}\r\n\r\n\tDate.now = (Date.now || function () { // thanks IE8\r\n\t\treturn new Date().getTime();\r\n\t});\r\n\r\n\tif (\"now\" in window.performance === false) {\r\n\r\n\t\tvar nowOffset = Date.now();\r\n\r\n\t\tif (performance.timing && performance.timing.navigationStart) {\r\n\t\t\tnowOffset = performance.timing.navigationStart\r\n\t\t}\r\n\r\n\t\twindow.performance.now = function now() {\r\n\t\t\treturn Date.now() - nowOffset;\r\n\t\t}\r\n\t}\r\n\r\n // Solution from https://stackoverflow.com/questions/51719553/padstart-not-working-in-ie11\r\n if (!String.prototype.padStart) {\r\n String.prototype.padStart = function padStart(targetLength, padString) {\r\n targetLength = targetLength >> 0; //truncate if number, or convert non-number to 0;\r\n padString = String(typeof padString !== 'undefined' ? padString : ' ');\r\n if (this.length >= targetLength) {\r\n return String(this);\r\n } else {\r\n targetLength = targetLength - this.length;\r\n if (targetLength > padString.length) {\r\n padString += Array\r\n .apply(null, Array(targetLength))\r\n .map(function () { return padString; })\r\n .join(\"\");\r\n }\r\n return padString.slice(0, targetLength) + String(this);\r\n }\r\n };\r\n }\r\n\r\n})();","/*! jQuery Validation Plugin - v1.15.0 - 2/24/2016\r\n * http://jqueryvalidation.org/\r\n * Copyright (c) 2016 Jörn Zaefferer; Licensed MIT */\r\n!function(a){\"function\"==typeof define&&define.amd?define([\"jquery\"],a):\"object\"==typeof module&&module.exports?module.exports=a(require(\"jquery\")):a(jQuery)}(function(a){a.extend(a.fn,{validate:function(b){if(!this.length)return void(b&&b.debug&&window.console&&console.warn(\"Nothing selected, can't validate, returning nothing.\"));var c=a.data(this[0],\"validator\");return c?c:(this.attr(\"novalidate\",\"novalidate\"),c=new a.validator(b,this[0]),a.data(this[0],\"validator\",c),c.settings.onsubmit&&(this.on(\"click.validate\",\":submit\",function(b){c.settings.submitHandler&&(c.submitButton=b.target),a(this).hasClass(\"cancel\")&&(c.cancelSubmit=!0),void 0!==a(this).attr(\"formnovalidate\")&&(c.cancelSubmit=!0)}),this.on(\"submit.validate\",function(b){function d(){var d,e;return c.settings.submitHandler?(c.submitButton&&(d=a(\"\").attr(\"name\",c.submitButton.name).val(a(c.submitButton).val()).appendTo(c.currentForm)),e=c.settings.submitHandler.call(c,c.currentForm,b),c.submitButton&&d.remove(),void 0!==e?e:!1):!0}return c.settings.debug&&b.preventDefault(),c.cancelSubmit?(c.cancelSubmit=!1,d()):c.form()?c.pendingRequest?(c.formSubmitted=!0,!1):d():(c.focusInvalid(),!1)})),c)},valid:function(){var b,c,d;return a(this[0]).is(\"form\")?b=this.validate().form():(d=[],b=!0,c=a(this[0].form).validate(),this.each(function(){b=c.element(this)&&b,b||(d=d.concat(c.errorList))}),c.errorList=d),b},rules:function(b,c){if(this.length){var d,e,f,g,h,i,j=this[0];if(b)switch(d=a.data(j.form,\"validator\").settings,e=d.rules,f=a.validator.staticRules(j),b){case\"add\":a.extend(f,a.validator.normalizeRule(c)),delete f.messages,e[j.name]=f,c.messages&&(d.messages[j.name]=a.extend(d.messages[j.name],c.messages));break;case\"remove\":return c?(i={},a.each(c.split(/\\s/),function(b,c){i[c]=f[c],delete f[c],\"required\"===c&&a(j).removeAttr(\"aria-required\")}),i):(delete e[j.name],f)}return g=a.validator.normalizeRules(a.extend({},a.validator.classRules(j),a.validator.attributeRules(j),a.validator.dataRules(j),a.validator.staticRules(j)),j),g.required&&(h=g.required,delete g.required,g=a.extend({required:h},g),a(j).attr(\"aria-required\",\"true\")),g.remote&&(h=g.remote,delete g.remote,g=a.extend(g,{remote:h})),g}}}),a.extend(a.expr[\":\"],{blank:function(b){return!a.trim(\"\"+a(b).val())},filled:function(b){var c=a(b).val();return null!==c&&!!a.trim(\"\"+c)},unchecked:function(b){return!a(b).prop(\"checked\")}}),a.validator=function(b,c){this.settings=a.extend(!0,{},a.validator.defaults,b),this.currentForm=c,this.init()},a.validator.format=function(b,c){return 1===arguments.length?function(){var c=a.makeArray(arguments);return c.unshift(b),a.validator.format.apply(this,c)}:void 0===c?b:(arguments.length>2&&c.constructor!==Array&&(c=a.makeArray(arguments).slice(1)),c.constructor!==Array&&(c=[c]),a.each(c,function(a,c){b=b.replace(new RegExp(\"\\\\{\"+a+\"\\\\}\",\"g\"),function(){return c})}),b)},a.extend(a.validator,{defaults:{messages:{},groups:{},rules:{},errorClass:\"error\",pendingClass:\"pending\",validClass:\"valid\",errorElement:\"label\",focusCleanup:!1,focusInvalid:!0,errorContainer:a([]),errorLabelContainer:a([]),onsubmit:!0,ignore:\":hidden\",ignoreTitle:!1,onfocusin:function(a){this.lastActive=a,this.settings.focusCleanup&&(this.settings.unhighlight&&this.settings.unhighlight.call(this,a,this.settings.errorClass,this.settings.validClass),this.hideThese(this.errorsFor(a)))},onfocusout:function(a){this.checkable(a)||!(a.name in this.submitted)&&this.optional(a)||this.element(a)},onkeyup:function(b,c){var d=[16,17,18,20,35,36,37,38,39,40,45,144,225];9===c.which&&\"\"===this.elementValue(b)||-1!==a.inArray(c.keyCode,d)||(b.name in this.submitted||b.name in this.invalid)&&this.element(b)},onclick:function(a){a.name in this.submitted?this.element(a):a.parentNode.name in this.submitted&&this.element(a.parentNode)},highlight:function(b,c,d){\"radio\"===b.type?this.findByName(b.name).addClass(c).removeClass(d):a(b).addClass(c).removeClass(d)},unhighlight:function(b,c,d){\"radio\"===b.type?this.findByName(b.name).removeClass(c).addClass(d):a(b).removeClass(c).addClass(d)}},setDefaults:function(b){a.extend(a.validator.defaults,b)},messages:{required:\"This field is required.\",remote:\"Please fix this field.\",email:\"Please enter a valid email address.\",url:\"Please enter a valid URL.\",date:\"Please enter a valid date.\",dateISO:\"Please enter a valid date ( ISO ).\",number:\"Please enter a valid number.\",digits:\"Please enter only digits.\",equalTo:\"Please enter the same value again.\",maxlength:a.validator.format(\"Please enter no more than {0} characters.\"),minlength:a.validator.format(\"Please enter at least {0} characters.\"),rangelength:a.validator.format(\"Please enter a value between {0} and {1} characters long.\"),range:a.validator.format(\"Please enter a value between {0} and {1}.\"),max:a.validator.format(\"Please enter a value less than or equal to {0}.\"),min:a.validator.format(\"Please enter a value greater than or equal to {0}.\"),step:a.validator.format(\"Please enter a multiple of {0}.\")},autoCreateRanges:!1,prototype:{init:function(){function b(b){var c=a.data(this.form,\"validator\"),d=\"on\"+b.type.replace(/^validate/,\"\"),e=c.settings;e[d]&&!a(this).is(e.ignore)&&e[d].call(c,this,b)}this.labelContainer=a(this.settings.errorLabelContainer),this.errorContext=this.labelContainer.length&&this.labelContainer||a(this.currentForm),this.containers=a(this.settings.errorContainer).add(this.settings.errorLabelContainer),this.submitted={},this.valueCache={},this.pendingRequest=0,this.pending={},this.invalid={},this.reset();var c,d=this.groups={};a.each(this.settings.groups,function(b,c){\"string\"==typeof c&&(c=c.split(/\\s/)),a.each(c,function(a,c){d[c]=b})}),c=this.settings.rules,a.each(c,function(b,d){c[b]=a.validator.normalizeRule(d)}),a(this.currentForm).on(\"focusin.validate focusout.validate keyup.validate\",\":text, [type='password'], [type='file'], select, textarea, [type='number'], [type='search'], [type='tel'], [type='url'], [type='email'], [type='datetime'], [type='date'], [type='month'], [type='week'], [type='time'], [type='datetime-local'], [type='range'], [type='color'], [type='radio'], [type='checkbox'], [contenteditable]\",b).on(\"click.validate\",\"select, option, [type='radio'], [type='checkbox']\",b),this.settings.invalidHandler&&a(this.currentForm).on(\"invalid-form.validate\",this.settings.invalidHandler),a(this.currentForm).find(\"[required], [data-rule-required], .required\").attr(\"aria-required\",\"true\")},form:function(){return this.checkForm(),a.extend(this.submitted,this.errorMap),this.invalid=a.extend({},this.errorMap),this.valid()||a(this.currentForm).triggerHandler(\"invalid-form\",[this]),this.showErrors(),this.valid()},checkForm:function(){this.prepareForm();for(var a=0,b=this.currentElements=this.elements();b[a];a++)this.check(b[a]);return this.valid()},element:function(b){var c,d,e=this.clean(b),f=this.validationTargetFor(e),g=this,h=!0;return void 0===f?delete this.invalid[e.name]:(this.prepareElement(f),this.currentElements=a(f),d=this.groups[f.name],d&&a.each(this.groups,function(a,b){b===d&&a!==f.name&&(e=g.validationTargetFor(g.clean(g.findByName(a))),e&&e.name in g.invalid&&(g.currentElements.push(e),h=h&&g.check(e)))}),c=this.check(f)!==!1,h=h&&c,c?this.invalid[f.name]=!1:this.invalid[f.name]=!0,this.numberOfInvalids()||(this.toHide=this.toHide.add(this.containers)),this.showErrors(),a(b).attr(\"aria-invalid\",!c)),h},showErrors:function(b){if(b){var c=this;a.extend(this.errorMap,b),this.errorList=a.map(this.errorMap,function(a,b){return{message:a,element:c.findByName(b)[0]}}),this.successList=a.grep(this.successList,function(a){return!(a.name in b)})}this.settings.showErrors?this.settings.showErrors.call(this,this.errorMap,this.errorList):this.defaultShowErrors()},resetForm:function(){a.fn.resetForm&&a(this.currentForm).resetForm(),this.invalid={},this.submitted={},this.prepareForm(),this.hideErrors();var b=this.elements().removeData(\"previousValue\").removeAttr(\"aria-invalid\");this.resetElements(b)},resetElements:function(a){var b;if(this.settings.unhighlight)for(b=0;a[b];b++)this.settings.unhighlight.call(this,a[b],this.settings.errorClass,\"\"),this.findByName(a[b].name).removeClass(this.settings.validClass);else a.removeClass(this.settings.errorClass).removeClass(this.settings.validClass)},numberOfInvalids:function(){return this.objectLength(this.invalid)},objectLength:function(a){var b,c=0;for(b in a)a[b]&&c++;return c},hideErrors:function(){this.hideThese(this.toHide)},hideThese:function(a){a.not(this.containers).text(\"\"),this.addWrapper(a).hide()},valid:function(){return 0===this.size()},size:function(){return this.errorList.length},focusInvalid:function(){if(this.settings.focusInvalid)try{a(this.findLastActive()||this.errorList.length&&this.errorList[0].element||[]).filter(\":visible\").focus().trigger(\"focusin\")}catch(b){}},findLastActive:function(){var b=this.lastActive;return b&&1===a.grep(this.errorList,function(a){return a.element.name===b.name}).length&&b},elements:function(){var b=this,c={};return a(this.currentForm).find(\"input, select, textarea, [contenteditable]\").not(\":submit, :reset, :image, :disabled\").not(this.settings.ignore).filter(function(){var d=this.name||a(this).attr(\"name\");return!d&&b.settings.debug&&window.console&&console.error(\"%o has no name assigned\",this),this.hasAttribute(\"contenteditable\")&&(this.form=a(this).closest(\"form\")[0]),d in c||!b.objectLength(a(this).rules())?!1:(c[d]=!0,!0)})},clean:function(b){return a(b)[0]},errors:function(){var b=this.settings.errorClass.split(\" \").join(\".\");return a(this.settings.errorElement+\".\"+b,this.errorContext)},resetInternals:function(){this.successList=[],this.errorList=[],this.errorMap={},this.toShow=a([]),this.toHide=a([])},reset:function(){this.resetInternals(),this.currentElements=a([])},prepareForm:function(){this.reset(),this.toHide=this.errors().add(this.containers)},prepareElement:function(a){this.reset(),this.toHide=this.errorsFor(a)},elementValue:function(b){var c,d,e=a(b),f=b.type;return\"radio\"===f||\"checkbox\"===f?this.findByName(b.name).filter(\":checked\").val():\"number\"===f&&\"undefined\"!=typeof b.validity?b.validity.badInput?\"NaN\":e.val():(c=b.hasAttribute(\"contenteditable\")?e.text():e.val(),\"file\"===f?\"C:\\\\fakepath\\\\\"===c.substr(0,12)?c.substr(12):(d=c.lastIndexOf(\"/\"),d>=0?c.substr(d+1):(d=c.lastIndexOf(\"\\\\\"),d>=0?c.substr(d+1):c)):\"string\"==typeof c?c.replace(/\\r/g,\"\"):c)},check:function(b){b=this.validationTargetFor(this.clean(b));var c,d,e,f=a(b).rules(),g=a.map(f,function(a,b){return b}).length,h=!1,i=this.elementValue(b);if(\"function\"==typeof f.normalizer){if(i=f.normalizer.call(b,i),\"string\"!=typeof i)throw new TypeError(\"The normalizer should return a string value.\");delete f.normalizer}for(d in f){e={method:d,parameters:f[d]};try{if(c=a.validator.methods[d].call(this,i,b,e.parameters),\"dependency-mismatch\"===c&&1===g){h=!0;continue}if(h=!1,\"pending\"===c)return void(this.toHide=this.toHide.not(this.errorsFor(b)));if(!c)return this.formatAndAdd(b,e),!1}catch(j){throw this.settings.debug&&window.console&&console.log(\"Exception occurred when checking element \"+b.id+\", check the '\"+e.method+\"' method.\",j),j instanceof TypeError&&(j.message+=\". Exception occurred when checking element \"+b.id+\", check the '\"+e.method+\"' method.\"),j}}if(!h)return this.objectLength(f)&&this.successList.push(b),!0},customDataMessage:function(b,c){return a(b).data(\"msg\"+c.charAt(0).toUpperCase()+c.substring(1).toLowerCase())||a(b).data(\"msg\")},customMessage:function(a,b){var c=this.settings.messages[a];return c&&(c.constructor===String?c:c[b])},findDefined:function(){for(var a=0;aWarning: No message defined for \"+b.name+\"\"),e=/\\$?\\{(\\d+)\\}/g;return\"function\"==typeof d?d=d.call(this,c.parameters,b):e.test(d)&&(d=a.validator.format(d.replace(e,\"{$1}\"),c.parameters)),d},formatAndAdd:function(a,b){var c=this.defaultMessage(a,b);this.errorList.push({message:c,element:a,method:b.method}),this.errorMap[a.name]=c,this.submitted[a.name]=c},addWrapper:function(a){return this.settings.wrapper&&(a=a.add(a.parent(this.settings.wrapper))),a},defaultShowErrors:function(){var a,b,c;for(a=0;this.errorList[a];a++)c=this.errorList[a],this.settings.highlight&&this.settings.highlight.call(this,c.element,this.settings.errorClass,this.settings.validClass),this.showLabel(c.element,c.message);if(this.errorList.length&&(this.toShow=this.toShow.add(this.containers)),this.settings.success)for(a=0;this.successList[a];a++)this.showLabel(this.successList[a]);if(this.settings.unhighlight)for(a=0,b=this.validElements();b[a];a++)this.settings.unhighlight.call(this,b[a],this.settings.errorClass,this.settings.validClass);this.toHide=this.toHide.not(this.toShow),this.hideErrors(),this.addWrapper(this.toShow).show()},validElements:function(){return this.currentElements.not(this.invalidElements())},invalidElements:function(){return a(this.errorList).map(function(){return this.element})},showLabel:function(b,c){var d,e,f,g,h=this.errorsFor(b),i=this.idOrName(b),j=a(b).attr(\"aria-describedby\");h.length?(h.removeClass(this.settings.validClass).addClass(this.settings.errorClass),h.html(c)):(h=a(\"<\"+this.settings.errorElement+\">\").attr(\"id\",i+\"-error\").addClass(this.settings.errorClass).html(c||\"\"),d=h,this.settings.wrapper&&(d=h.hide().show().wrap(\"<\"+this.settings.wrapper+\"/>\").parent()),this.labelContainer.length?this.labelContainer.append(d):this.settings.errorPlacement?this.settings.errorPlacement(d,a(b)):d.insertAfter(b),h.is(\"label\")?h.attr(\"for\",i):0===h.parents(\"label[for='\"+this.escapeCssMeta(i)+\"']\").length&&(f=h.attr(\"id\"),j?j.match(new RegExp(\"\\\\b\"+this.escapeCssMeta(f)+\"\\\\b\"))||(j+=\" \"+f):j=f,a(b).attr(\"aria-describedby\",j),e=this.groups[b.name],e&&(g=this,a.each(g.groups,function(b,c){c===e&&a(\"[name='\"+g.escapeCssMeta(b)+\"']\",g.currentForm).attr(\"aria-describedby\",h.attr(\"id\"))})))),!c&&this.settings.success&&(h.text(\"\"),\"string\"==typeof this.settings.success?h.addClass(this.settings.success):this.settings.success(h,b)),this.toShow=this.toShow.add(h)},errorsFor:function(b){var c=this.escapeCssMeta(this.idOrName(b)),d=a(b).attr(\"aria-describedby\"),e=\"label[for='\"+c+\"'], label[for='\"+c+\"'] *\";return d&&(e=e+\", #\"+this.escapeCssMeta(d).replace(/\\s+/g,\", #\")),this.errors().filter(e)},escapeCssMeta:function(a){return a.replace(/([\\\\!\"#$%&'()*+,./:;<=>?@\\[\\]^`{|}~])/g,\"\\\\$1\")},idOrName:function(a){return this.groups[a.name]||(this.checkable(a)?a.name:a.id||a.name)},validationTargetFor:function(b){return this.checkable(b)&&(b=this.findByName(b.name)),a(b).not(this.settings.ignore)[0]},checkable:function(a){return/radio|checkbox/i.test(a.type)},findByName:function(b){return a(this.currentForm).find(\"[name='\"+this.escapeCssMeta(b)+\"']\")},getLength:function(b,c){switch(c.nodeName.toLowerCase()){case\"select\":return a(\"option:selected\",c).length;case\"input\":if(this.checkable(c))return this.findByName(c.name).filter(\":checked\").length}return b.length},depend:function(a,b){return this.dependTypes[typeof a]?this.dependTypes[typeof a](a,b):!0},dependTypes:{\"boolean\":function(a){return a},string:function(b,c){return!!a(b,c.form).length},\"function\":function(a,b){return a(b)}},optional:function(b){var c=this.elementValue(b);return!a.validator.methods.required.call(this,c,b)&&\"dependency-mismatch\"},startRequest:function(b){this.pending[b.name]||(this.pendingRequest++,a(b).addClass(this.settings.pendingClass),this.pending[b.name]=!0)},stopRequest:function(b,c){this.pendingRequest--,this.pendingRequest<0&&(this.pendingRequest=0),delete this.pending[b.name],a(b).removeClass(this.settings.pendingClass),c&&0===this.pendingRequest&&this.formSubmitted&&this.form()?(a(this.currentForm).submit(),this.formSubmitted=!1):!c&&0===this.pendingRequest&&this.formSubmitted&&(a(this.currentForm).triggerHandler(\"invalid-form\",[this]),this.formSubmitted=!1)},previousValue:function(b,c){return a.data(b,\"previousValue\")||a.data(b,\"previousValue\",{old:null,valid:!0,message:this.defaultMessage(b,{method:c})})},destroy:function(){this.resetForm(),a(this.currentForm).off(\".validate\").removeData(\"validator\").find(\".validate-equalTo-blur\").off(\".validate-equalTo\").removeClass(\"validate-equalTo-blur\")}},classRuleSettings:{required:{required:!0},email:{email:!0},url:{url:!0},date:{date:!0},dateISO:{dateISO:!0},number:{number:!0},digits:{digits:!0},creditcard:{creditcard:!0}},addClassRules:function(b,c){b.constructor===String?this.classRuleSettings[b]=c:a.extend(this.classRuleSettings,b)},classRules:function(b){var c={},d=a(b).attr(\"class\");return d&&a.each(d.split(\" \"),function(){this in a.validator.classRuleSettings&&a.extend(c,a.validator.classRuleSettings[this])}),c},normalizeAttributeRule:function(a,b,c,d){/min|max|step/.test(c)&&(null===b||/number|range|text/.test(b))&&(d=Number(d),isNaN(d)&&(d=void 0)),d||0===d?a[c]=d:b===c&&\"range\"!==b&&(a[c]=!0)},attributeRules:function(b){var c,d,e={},f=a(b),g=b.getAttribute(\"type\");for(c in a.validator.methods)\"required\"===c?(d=b.getAttribute(c),\"\"===d&&(d=!0),d=!!d):d=f.attr(c),this.normalizeAttributeRule(e,g,c,d);return e.maxlength&&/-1|2147483647|524288/.test(e.maxlength)&&delete e.maxlength,e},dataRules:function(b){var c,d,e={},f=a(b),g=b.getAttribute(\"type\");for(c in a.validator.methods)d=f.data(\"rule\"+c.charAt(0).toUpperCase()+c.substring(1).toLowerCase()),this.normalizeAttributeRule(e,g,c,d);return e},staticRules:function(b){var c={},d=a.data(b.form,\"validator\");return d.settings.rules&&(c=a.validator.normalizeRule(d.settings.rules[b.name])||{}),c},normalizeRules:function(b,c){return a.each(b,function(d,e){if(e===!1)return void delete b[d];if(e.param||e.depends){var f=!0;switch(typeof e.depends){case\"string\":f=!!a(e.depends,c.form).length;break;case\"function\":f=e.depends.call(c,c)}f?b[d]=void 0!==e.param?e.param:!0:(a.data(c.form,\"validator\").resetElements(a(c)),delete b[d])}}),a.each(b,function(d,e){b[d]=a.isFunction(e)&&\"normalizer\"!==d?e(c):e}),a.each([\"minlength\",\"maxlength\"],function(){b[this]&&(b[this]=Number(b[this]))}),a.each([\"rangelength\",\"range\"],function(){var c;b[this]&&(a.isArray(b[this])?b[this]=[Number(b[this][0]),Number(b[this][1])]:\"string\"==typeof b[this]&&(c=b[this].replace(/[\\[\\]]/g,\"\").split(/[\\s,]+/),b[this]=[Number(c[0]),Number(c[1])]))}),a.validator.autoCreateRanges&&(null!=b.min&&null!=b.max&&(b.range=[b.min,b.max],delete b.min,delete b.max),null!=b.minlength&&null!=b.maxlength&&(b.rangelength=[b.minlength,b.maxlength],delete b.minlength,delete b.maxlength)),b},normalizeRule:function(b){if(\"string\"==typeof b){var c={};a.each(b.split(/\\s/),function(){c[this]=!0}),b=c}return b},addMethod:function(b,c,d){a.validator.methods[b]=c,a.validator.messages[b]=void 0!==d?d:a.validator.messages[b],c.length<3&&a.validator.addClassRules(b,a.validator.normalizeRule(b))},methods:{required:function(b,c,d){if(!this.depend(d,c))return\"dependency-mismatch\";if(\"select\"===c.nodeName.toLowerCase()){var e=a(c).val();return e&&e.length>0}return this.checkable(c)?this.getLength(b,c)>0:b.length>0},email:function(a,b){return this.optional(b)||/^[a-zA-Z0-9.!#$%&'*+\\/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/.test(a)},url:function(a,b){return this.optional(b)||/^(?:(?:(?:https?|ftp):)?\\/\\/)(?:\\S+(?::\\S*)?@)?(?:(?!(?:10|127)(?:\\.\\d{1,3}){3})(?!(?:169\\.254|192\\.168)(?:\\.\\d{1,3}){2})(?!172\\.(?:1[6-9]|2\\d|3[0-1])(?:\\.\\d{1,3}){2})(?:[1-9]\\d?|1\\d\\d|2[01]\\d|22[0-3])(?:\\.(?:1?\\d{1,2}|2[0-4]\\d|25[0-5])){2}(?:\\.(?:[1-9]\\d?|1\\d\\d|2[0-4]\\d|25[0-4]))|(?:(?:[a-z\\u00a1-\\uffff0-9]-*)*[a-z\\u00a1-\\uffff0-9]+)(?:\\.(?:[a-z\\u00a1-\\uffff0-9]-*)*[a-z\\u00a1-\\uffff0-9]+)*(?:\\.(?:[a-z\\u00a1-\\uffff]{2,})).?)(?::\\d{2,5})?(?:[/?#]\\S*)?$/i.test(a)},date:function(a,b){return this.optional(b)||!/Invalid|NaN/.test(new Date(a).toString())},dateISO:function(a,b){return this.optional(b)||/^\\d{4}[\\/\\-](0?[1-9]|1[012])[\\/\\-](0?[1-9]|[12][0-9]|3[01])$/.test(a)},number:function(a,b){return this.optional(b)||/^(?:-?\\d+|-?\\d{1,3}(?:,\\d{3})+)?(?:\\.\\d+)?$/.test(a)},digits:function(a,b){return this.optional(b)||/^\\d+$/.test(a)},minlength:function(b,c,d){var e=a.isArray(b)?b.length:this.getLength(b,c);return this.optional(c)||e>=d},maxlength:function(b,c,d){var e=a.isArray(b)?b.length:this.getLength(b,c);return this.optional(c)||d>=e},rangelength:function(b,c,d){var e=a.isArray(b)?b.length:this.getLength(b,c);return this.optional(c)||e>=d[0]&&e<=d[1]},min:function(a,b,c){return this.optional(b)||a>=c},max:function(a,b,c){return this.optional(b)||c>=a},range:function(a,b,c){return this.optional(b)||a>=c[0]&&a<=c[1]},step:function(b,c,d){var e=a(c).attr(\"type\"),f=\"Step attribute on input type \"+e+\" is not supported.\",g=[\"text\",\"number\",\"range\"],h=new RegExp(\"\\\\b\"+e+\"\\\\b\"),i=e&&!h.test(g.join());if(i)throw new Error(f);return this.optional(c)||b%d===0},equalTo:function(b,c,d){var e=a(d);return this.settings.onfocusout&&e.not(\".validate-equalTo-blur\").length&&e.addClass(\"validate-equalTo-blur\").on(\"blur.validate-equalTo\",function(){a(c).valid()}),b===e.val()},remote:function(b,c,d,e){if(this.optional(c))return\"dependency-mismatch\";e=\"string\"==typeof e&&e||\"remote\";var f,g,h,i=this.previousValue(c,e);return this.settings.messages[c.name]||(this.settings.messages[c.name]={}),i.originalMessage=i.originalMessage||this.settings.messages[c.name][e],this.settings.messages[c.name][e]=i.message,d=\"string\"==typeof d&&{url:d}||d,h=a.param(a.extend({data:b},d.data)),i.old===h?i.valid:(i.old=h,f=this,this.startRequest(c),g={},g[c.name]=b,a.ajax(a.extend(!0,{mode:\"abort\",port:\"validate\"+c.name,dataType:\"json\",data:g,context:f.currentForm,success:function(a){var d,g,h,j=a===!0||\"true\"===a;f.settings.messages[c.name][e]=i.originalMessage,j?(h=f.formSubmitted,f.resetInternals(),f.toHide=f.errorsFor(c),f.formSubmitted=h,f.successList.push(c),f.invalid[c.name]=!1,f.showErrors()):(d={},g=a||f.defaultMessage(c,{method:e,parameters:b}),d[c.name]=i.message=g,f.invalid[c.name]=!0,f.showErrors(d)),i.valid=j,f.stopRequest(c,j)}},d)),\"pending\")}}});var b,c={};a.ajaxPrefilter?a.ajaxPrefilter(function(a,b,d){var e=a.port;\"abort\"===a.mode&&(c[e]&&c[e].abort(),c[e]=d)}):(b=a.ajax,a.ajax=function(d){var e=(\"mode\"in d?d:a.ajaxSettings).mode,f=(\"port\"in d?d:a.ajaxSettings).port;return\"abort\"===e?(c[f]&&c[f].abort(),c[f]=b.apply(this,arguments),c[f]):b.apply(this,arguments)})});","/* NUGET: BEGIN LICENSE TEXT\r\n *\r\n * Microsoft grants you the right to use these script files for the sole\r\n * purpose of either: (i) interacting through your browser with the Microsoft\r\n * website or online service, subject to the applicable licensing or use\r\n * terms; or (ii) using the files as included with a Microsoft product subject\r\n * to that product's license terms. Microsoft reserves all other rights to the\r\n * files not expressly granted by Microsoft, whether by implication, estoppel\r\n * or otherwise. Insofar as a script file is dual licensed under GPL,\r\n * Microsoft neither took the code under GPL nor distributes it thereunder but\r\n * under the terms set out in this paragraph. All notices and licenses\r\n * below are for informational purposes only.\r\n *\r\n * NUGET: END LICENSE TEXT */\r\n/*\n** Unobtrusive validation support library for jQuery and jQuery Validate\n** Copyright (C) Microsoft Corporation. All rights reserved.\n*/\n(function(a){var d=a.validator,b,e=\"unobtrusiveValidation\";function c(a,b,c){a.rules[b]=c;if(a.message)a.messages[b]=a.message}function j(a){return a.replace(/^\\s+|\\s+$/g,\"\").split(/\\s*,\\s*/g)}function f(a){return a.replace(/([!\"#$%&'()*+,./:;<=>?@\\[\\\\\\]^`{|}~])/g,\"\\\\$1\")}function h(a){return a.substr(0,a.lastIndexOf(\".\")+1)}function g(a,b){if(a.indexOf(\"*.\")===0)a=a.replace(\"*.\",b);return a}function m(c,e){var b=a(this).find(\"[data-valmsg-for='\"+f(e[0].name)+\"']\"),d=b.attr(\"data-valmsg-replace\"),g=d?a.parseJSON(d)!==false:null;b.removeClass(\"field-validation-valid\").addClass(\"field-validation-error\");c.data(\"unobtrusiveContainer\",b);if(g){b.empty();c.removeClass(\"input-validation-error\").appendTo(b)}else c.hide()}function l(e,d){var c=a(this).find(\"[data-valmsg-summary=true]\"),b=c.find(\"ul\");if(b&&b.length&&d.errorList.length){b.empty();c.addClass(\"validation-summary-errors\").removeClass(\"validation-summary-valid\");a.each(d.errorList,function(){a(\"
  • \").html(this.message).appendTo(b)})}}function k(d){var b=d.data(\"unobtrusiveContainer\"),c=b.attr(\"data-valmsg-replace\"),e=c?a.parseJSON(c):null;if(b){b.addClass(\"field-validation-valid\").removeClass(\"field-validation-error\");d.removeData(\"unobtrusiveContainer\");e&&b.empty()}}function n(){var b=a(this),c=\"__jquery_unobtrusive_validation_form_reset\";if(b.data(c))return;b.data(c,true);try{b.data(\"validator\").resetForm()}finally{b.removeData(c)}b.find(\".validation-summary-errors\").addClass(\"validation-summary-valid\").removeClass(\"validation-summary-errors\");b.find(\".field-validation-error\").addClass(\"field-validation-valid\").removeClass(\"field-validation-error\").removeData(\"unobtrusiveContainer\").find(\">*\").removeData(\"unobtrusiveContainer\")}function i(b){var c=a(b),f=c.data(e),i=a.proxy(n,b),g=d.unobtrusive.options||{},h=function(e,d){var c=g[e];c&&a.isFunction(c)&&c.apply(b,d)};if(!f){f={options:{errorClass:g.errorClass||\"input-validation-error\",errorElement:g.errorElement||\"span\",errorPlacement:function(){m.apply(b,arguments);h(\"errorPlacement\",arguments)},invalidHandler:function(){l.apply(b,arguments);h(\"invalidHandler\",arguments)},messages:{},rules:{},success:function(){k.apply(b,arguments);h(\"success\",arguments)}},attachValidation:function(){c.off(\"reset.\"+e,i).on(\"reset.\"+e,i).validate(this.options)},validate:function(){c.validate();return c.valid()}};c.data(e,f)}return f}d.unobtrusive={adapters:[],parseElement:function(b,h){var d=a(b),f=d.parents(\"form\")[0],c,e,g;if(!f)return;c=i(f);c.options.rules[b.name]=e={};c.options.messages[b.name]=g={};a.each(this.adapters,function(){var c=\"data-val-\"+this.name,i=d.attr(c),h={};if(i!==undefined){c+=\"-\";a.each(this.params,function(){h[this]=d.attr(c+this)});this.adapt({element:b,form:f,message:i,params:h,rules:e,messages:g})}});a.extend(e,{__dummy__:true});!h&&c.attachValidation()},parse:function(c){var b=a(c),e=b.parents().addBack().filter(\"form\").add(b.find(\"form\")).has(\"[data-val=true]\");b.find(\"[data-val=true]\").each(function(){d.unobtrusive.parseElement(this,true)});e.each(function(){var a=i(this);a&&a.attachValidation()})}};b=d.unobtrusive.adapters;b.add=function(c,a,b){if(!b){b=a;a=[]}this.push({name:c,params:a,adapt:b});return this};b.addBool=function(a,b){return this.add(a,function(d){c(d,b||a,true)})};b.addMinMax=function(e,g,f,a,d,b){return this.add(e,[d||\"min\",b||\"max\"],function(b){var e=b.params.min,d=b.params.max;if(e&&d)c(b,a,[e,d]);else if(e)c(b,g,e);else d&&c(b,f,d)})};b.addSingleVal=function(a,b,d){return this.add(a,[b||\"val\"],function(e){c(e,d||a,e.params[b])})};d.addMethod(\"__dummy__\",function(){return true});d.addMethod(\"regex\",function(b,c,d){var a;if(this.optional(c))return true;a=(new RegExp(d)).exec(b);return a&&a.index===0&&a[0].length===b.length});d.addMethod(\"nonalphamin\",function(c,d,b){var a;if(b){a=c.match(/\\W/g);a=a&&a.length>=b}return a});if(d.methods.extension){b.addSingleVal(\"accept\",\"mimtype\");b.addSingleVal(\"extension\",\"extension\")}else b.addSingleVal(\"extension\",\"extension\",\"accept\");b.addSingleVal(\"regex\",\"pattern\");b.addBool(\"creditcard\").addBool(\"date\").addBool(\"digits\").addBool(\"email\").addBool(\"number\").addBool(\"url\");b.addMinMax(\"length\",\"minlength\",\"maxlength\",\"rangelength\").addMinMax(\"range\",\"min\",\"max\",\"range\");b.addMinMax(\"minlength\",\"minlength\").addMinMax(\"maxlength\",\"minlength\",\"maxlength\");b.add(\"equalto\",[\"other\"],function(b){var i=h(b.element.name),j=b.params.other,d=g(j,i),e=a(b.form).find(\":input\").filter(\"[name='\"+f(d)+\"']\")[0];c(b,\"equalTo\",e)});b.add(\"required\",function(a){(a.element.tagName.toUpperCase()!==\"INPUT\"||a.element.type.toUpperCase()!==\"CHECKBOX\")&&c(a,\"required\",true)});b.add(\"remote\",[\"url\",\"type\",\"additionalfields\"],function(b){var d={url:b.params.url,type:b.params.type||\"GET\",data:{}},e=h(b.element.name);a.each(j(b.params.additionalfields||b.element.name),function(i,h){var c=g(h,e);d.data[c]=function(){var d=a(b.form).find(\":input\").filter(\"[name='\"+f(c)+\"']\");return d.is(\":checkbox\")?d.filter(\":checked\").val()||d.filter(\":hidden\").val()||\"\":d.is(\":radio\")?d.filter(\":checked\").val()||\"\":d.val()}});c(b,\"remote\",d)});b.add(\"password\",[\"min\",\"nonalphamin\",\"regex\"],function(a){a.params.min&&c(a,\"minlength\",a.params.min);a.params.nonalphamin&&c(a,\"nonalphamin\",a.params.nonalphamin);a.params.regex&&c(a,\"regex\",a.params.regex)});a(function(){d.unobtrusive.parse(document)})})(jQuery);","/* NUGET: BEGIN LICENSE TEXT\r\n *\r\n * Microsoft grants you the right to use these script files for the sole\r\n * purpose of either: (i) interacting through your browser with the Microsoft\r\n * website or online service, subject to the applicable licensing or use\r\n * terms; or (ii) using the files as included with a Microsoft product subject\r\n * to that product's license terms. Microsoft reserves all other rights to the\r\n * files not expressly granted by Microsoft, whether by implication, estoppel\r\n * or otherwise. Insofar as a script file is dual licensed under GPL,\r\n * Microsoft neither took the code under GPL nor distributes it thereunder but\r\n * under the terms set out in this paragraph. All notices and licenses\r\n * below are for informational purposes only.\r\n *\r\n * NUGET: END LICENSE TEXT */\r\n/*\n** Unobtrusive Ajax support library for jQuery\n** Copyright (C) Microsoft Corporation. All rights reserved.\n*/\n(function(a){var b=\"unobtrusiveAjaxClick\",d=\"unobtrusiveAjaxClickTarget\",h=\"unobtrusiveValidation\";function c(d,b){var a=window,c=(d||\"\").split(\".\");while(a&&c.length)a=a[c.shift()];if(typeof a===\"function\")return a;b.push(d);return Function.constructor.apply(null,b)}function e(a){return a===\"GET\"||a===\"POST\"}function g(b,a){!e(a)&&b.setRequestHeader(\"X-HTTP-Method-Override\",a)}function i(c,b,e){var d;if(e.indexOf(\"application/x-javascript\")!==-1)return;d=(c.getAttribute(\"data-ajax-mode\")||\"\").toUpperCase();a(c.getAttribute(\"data-ajax-update\")).each(function(f,c){var e;switch(d){case\"BEFORE\":e=c.firstChild;a(\"
    \").html(b).contents().each(function(){c.insertBefore(this,e)});break;case\"AFTER\":a(\"
    \").html(b).contents().each(function(){c.appendChild(this)});break;case\"REPLACE-WITH\":a(c).replaceWith(b);break;default:a(c).html(b)}})}function f(b,d){var j,k,f,h;j=b.getAttribute(\"data-ajax-confirm\");if(j&&!window.confirm(j))return;k=a(b.getAttribute(\"data-ajax-loading\"));h=parseInt(b.getAttribute(\"data-ajax-loading-duration\"),10)||0;a.extend(d,{type:b.getAttribute(\"data-ajax-method\")||undefined,url:b.getAttribute(\"data-ajax-url\")||undefined,cache:!!b.getAttribute(\"data-ajax-cache\"),beforeSend:function(d){var a;g(d,f);a=c(b.getAttribute(\"data-ajax-begin\"),[\"xhr\"]).apply(b,arguments);a!==false&&k.show(h);return a},complete:function(){k.hide(h);c(b.getAttribute(\"data-ajax-complete\"),[\"xhr\",\"status\"]).apply(b,arguments)},success:function(a,e,d){i(b,a,d.getResponseHeader(\"Content-Type\")||\"text/html\");c(b.getAttribute(\"data-ajax-success\"),[\"data\",\"status\",\"xhr\"]).apply(b,arguments)},error:function(){c(b.getAttribute(\"data-ajax-failure\"),[\"xhr\",\"status\",\"error\"]).apply(b,arguments)}});d.data.push({name:\"X-Requested-With\",value:\"XMLHttpRequest\"});f=d.type.toUpperCase();if(!e(f)){d.type=\"POST\";d.data.push({name:\"X-HTTP-Method-Override\",value:f})}a.ajax(d)}function j(c){var b=a(c).data(h);return!b||!b.validate||b.validate()}a(document).on(\"click\",\"a[data-ajax=true]\",function(a){a.preventDefault();f(this,{url:this.href,type:\"GET\",data:[]})});a(document).on(\"click\",\"form[data-ajax=true] input[type=image]\",function(c){var g=c.target.name,e=a(c.target),f=a(e.parents(\"form\")[0]),d=e.offset();f.data(b,[{name:g+\".x\",value:Math.round(c.pageX-d.left)},{name:g+\".y\",value:Math.round(c.pageY-d.top)}]);setTimeout(function(){f.removeData(b)},0)});a(document).on(\"click\",\"form[data-ajax=true] :submit\",function(e){var g=e.currentTarget.name,f=a(e.target),c=a(f.parents(\"form\")[0]);c.data(b,g?[{name:g,value:e.currentTarget.value}]:[]);c.data(d,f);setTimeout(function(){c.removeData(b);c.removeData(d)},0)});a(document).on(\"submit\",\"form[data-ajax=true]\",function(h){var e=a(this).data(b)||[],c=a(this).data(d),g=c&&c.hasClass(\"cancel\");h.preventDefault();if(!g&&!j(this))return;f(this,{url:this.action,type:this.method||\"GET\",data:e.concat(a(this).serializeArray())})})})(jQuery);","/*!\r\n * modernizr v3.3.1\r\n * Build https://modernizr.com/download?-performance-setclasses-dontmin\r\n *\r\n * Copyright (c)\r\n * Faruk Ates\r\n * Paul Irish\r\n * Alex Sexton\r\n * Ryan Seddon\r\n * Patrick Kettner\r\n * Stu Cox\r\n * Richard Herrera\r\n\r\n * MIT License\r\n */\r\n\r\n/*\r\n * Modernizr tests which native CSS3 and HTML5 features are available in the\r\n * current UA and makes the results available to you in two ways: as properties on\r\n * a global `Modernizr` object, and as classes on the `` element. This\r\n * information allows you to progressively enhance your pages with a granular level\r\n * of control over the experience.\r\n*/\r\n\r\n;(function(window, document, undefined){\r\n var classes = [];\r\n \r\n\r\n var tests = [];\r\n \r\n\r\n /**\r\n *\r\n * ModernizrProto is the constructor for Modernizr\r\n *\r\n * @class\r\n * @access public\r\n */\r\n\r\n var ModernizrProto = {\r\n // The current version, dummy\r\n _version: '3.3.1',\r\n\r\n // Any settings that don't work as separate modules\r\n // can go in here as configuration.\r\n _config: {\r\n 'classPrefix': '',\r\n 'enableClasses': true,\r\n 'enableJSClass': true,\r\n 'usePrefixes': true\r\n },\r\n\r\n // Queue of tests\r\n _q: [],\r\n\r\n // Stub these for people who are listening\r\n on: function(test, cb) {\r\n // I don't really think people should do this, but we can\r\n // safe guard it a bit.\r\n // -- NOTE:: this gets WAY overridden in src/addTest for actual async tests.\r\n // This is in case people listen to synchronous tests. I would leave it out,\r\n // but the code to *disallow* sync tests in the real version of this\r\n // function is actually larger than this.\r\n var self = this;\r\n setTimeout(function() {\r\n cb(self[test]);\r\n }, 0);\r\n },\r\n\r\n addTest: function(name, fn, options) {\r\n tests.push({name: name, fn: fn, options: options});\r\n },\r\n\r\n addAsyncTest: function(fn) {\r\n tests.push({name: null, fn: fn});\r\n }\r\n };\r\n\r\n \r\n\r\n // Fake some of Object.create so we can force non test results to be non \"own\" properties.\r\n var Modernizr = function() {};\r\n Modernizr.prototype = ModernizrProto;\r\n\r\n // Leak modernizr globally when you `require` it rather than force it here.\r\n // Overwrite name so constructor name is nicer :D\r\n Modernizr = new Modernizr();\r\n\r\n \r\n\r\n /**\r\n * is returns a boolean if the typeof an obj is exactly type.\r\n *\r\n * @access private\r\n * @function is\r\n * @param {*} obj - A thing we want to check the type of\r\n * @param {string} type - A string to compare the typeof against\r\n * @returns {boolean}\r\n */\r\n\r\n function is(obj, type) {\r\n return typeof obj === type;\r\n }\r\n ;\r\n\r\n /**\r\n * Run through all tests and detect their support in the current UA.\r\n *\r\n * @access private\r\n */\r\n\r\n function testRunner() {\r\n var featureNames;\r\n var feature;\r\n var aliasIdx;\r\n var result;\r\n var nameIdx;\r\n var featureName;\r\n var featureNameSplit;\r\n\r\n for (var featureIdx in tests) {\r\n if (tests.hasOwnProperty(featureIdx)) {\r\n featureNames = [];\r\n feature = tests[featureIdx];\r\n // run the test, throw the return value into the Modernizr,\r\n // then based on that boolean, define an appropriate className\r\n // and push it into an array of classes we'll join later.\r\n //\r\n // If there is no name, it's an 'async' test that is run,\r\n // but not directly added to the object. That should\r\n // be done with a post-run addTest call.\r\n if (feature.name) {\r\n featureNames.push(feature.name.toLowerCase());\r\n\r\n if (feature.options && feature.options.aliases && feature.options.aliases.length) {\r\n // Add all the aliases into the names list\r\n for (aliasIdx = 0; aliasIdx < feature.options.aliases.length; aliasIdx++) {\r\n featureNames.push(feature.options.aliases[aliasIdx].toLowerCase());\r\n }\r\n }\r\n }\r\n\r\n // Run the test, or use the raw value if it's not a function\r\n result = is(feature.fn, 'function') ? feature.fn() : feature.fn;\r\n\r\n\r\n // Set each of the names on the Modernizr object\r\n for (nameIdx = 0; nameIdx < featureNames.length; nameIdx++) {\r\n featureName = featureNames[nameIdx];\r\n // Support dot properties as sub tests. We don't do checking to make sure\r\n // that the implied parent tests have been added. You must call them in\r\n // order (either in the test, or make the parent test a dependency).\r\n //\r\n // Cap it to TWO to make the logic simple and because who needs that kind of subtesting\r\n // hashtag famous last words\r\n featureNameSplit = featureName.split('.');\r\n\r\n if (featureNameSplit.length === 1) {\r\n Modernizr[featureNameSplit[0]] = result;\r\n } else {\r\n // cast to a Boolean, if not one already\r\n /* jshint -W053 */\r\n if (Modernizr[featureNameSplit[0]] && !(Modernizr[featureNameSplit[0]] instanceof Boolean)) {\r\n Modernizr[featureNameSplit[0]] = new Boolean(Modernizr[featureNameSplit[0]]);\r\n }\r\n\r\n Modernizr[featureNameSplit[0]][featureNameSplit[1]] = result;\r\n }\r\n\r\n classes.push((result ? '' : 'no-') + featureNameSplit.join('-'));\r\n }\r\n }\r\n }\r\n }\r\n ;\r\n\r\n /**\r\n * docElement is a convenience wrapper to grab the root element of the document\r\n *\r\n * @access private\r\n * @returns {HTMLElement|SVGElement} The root element of the document\r\n */\r\n\r\n var docElement = document.documentElement;\r\n \r\n\r\n /**\r\n * A convenience helper to check if the document we are running in is an SVG document\r\n *\r\n * @access private\r\n * @returns {boolean}\r\n */\r\n\r\n var isSVG = docElement.nodeName.toLowerCase() === 'svg';\r\n \r\n\r\n /**\r\n * setClasses takes an array of class names and adds them to the root element\r\n *\r\n * @access private\r\n * @function setClasses\r\n * @param {string[]} classes - Array of class names\r\n */\r\n\r\n // Pass in an and array of class names, e.g.:\r\n // ['no-webp', 'borderradius', ...]\r\n function setClasses(classes) {\r\n var className = docElement.className;\r\n var classPrefix = Modernizr._config.classPrefix || '';\r\n\r\n if (isSVG) {\r\n className = className.baseVal;\r\n }\r\n\r\n // Change `no-js` to `js` (independently of the `enableClasses` option)\r\n // Handle classPrefix on this too\r\n if (Modernizr._config.enableJSClass) {\r\n var reJS = new RegExp('(^|\\\\s)' + classPrefix + 'no-js(\\\\s|$)');\r\n className = className.replace(reJS, '$1' + classPrefix + 'js$2');\r\n }\r\n\r\n if (Modernizr._config.enableClasses) {\r\n // Add the new classes\r\n className += ' ' + classPrefix + classes.join(' ' + classPrefix);\r\n isSVG ? docElement.className.baseVal = className : docElement.className = className;\r\n }\r\n\r\n }\r\n\r\n ;\r\n\r\n /**\r\n * cssToDOM takes a kebab-case string and converts it to camelCase\r\n * e.g. box-sizing -> boxSizing\r\n *\r\n * @access private\r\n * @function cssToDOM\r\n * @param {string} name - String name of kebab-case prop we want to convert\r\n * @returns {string} The camelCase version of the supplied name\r\n */\r\n\r\n function cssToDOM(name) {\r\n return name.replace(/([a-z])-([a-z])/g, function(str, m1, m2) {\r\n return m1 + m2.toUpperCase();\r\n }).replace(/^-/, '');\r\n }\r\n ;\r\n\r\n /**\r\n * If the browsers follow the spec, then they would expose vendor-specific style as:\r\n * elem.style.WebkitBorderRadius\r\n * instead of something like the following, which would be technically incorrect:\r\n * elem.style.webkitBorderRadius\r\n\r\n * Webkit ghosts their properties in lowercase but Opera & Moz do not.\r\n * Microsoft uses a lowercase `ms` instead of the correct `Ms` in IE8+\r\n * erik.eae.net/archives/2008/03/10/21.48.10/\r\n\r\n * More here: github.com/Modernizr/Modernizr/issues/issue/21\r\n *\r\n * @access private\r\n * @returns {string} The string representing the vendor-specific style properties\r\n */\r\n\r\n var omPrefixes = 'Moz O ms Webkit';\r\n \r\n\r\n var cssomPrefixes = (ModernizrProto._config.usePrefixes ? omPrefixes.split(' ') : []);\r\n ModernizrProto._cssomPrefixes = cssomPrefixes;\r\n \r\n\r\n /**\r\n * atRule returns a given CSS property at-rule (eg @keyframes), possibly in\r\n * some prefixed form, or false, in the case of an unsupported rule\r\n *\r\n * @memberof Modernizr\r\n * @name Modernizr.atRule\r\n * @optionName Modernizr.atRule()\r\n * @optionProp atRule\r\n * @access public\r\n * @function atRule\r\n * @param {string} prop - String name of the @-rule to test for\r\n * @returns {string|boolean} The string representing the (possibly prefixed)\r\n * valid version of the @-rule, or `false` when it is unsupported.\r\n * @example\r\n * ```js\r\n * var keyframes = Modernizr.atRule('@keyframes');\r\n *\r\n * if (keyframes) {\r\n * // keyframes are supported\r\n * // could be `@-webkit-keyframes` or `@keyframes`\r\n * } else {\r\n * // keyframes === `false`\r\n * }\r\n * ```\r\n *\r\n */\r\n\r\n var atRule = function(prop) {\r\n var length = prefixes.length;\r\n var cssrule = window.CSSRule;\r\n var rule;\r\n\r\n if (typeof cssrule === 'undefined') {\r\n return undefined;\r\n }\r\n\r\n if (!prop) {\r\n return false;\r\n }\r\n\r\n // remove literal @ from beginning of provided property\r\n prop = prop.replace(/^@/, '');\r\n\r\n // CSSRules use underscores instead of dashes\r\n rule = prop.replace(/-/g, '_').toUpperCase() + '_RULE';\r\n\r\n if (rule in cssrule) {\r\n return '@' + prop;\r\n }\r\n\r\n for (var i = 0; i < length; i++) {\r\n // prefixes gives us something like -o-, and we want O_\r\n var prefix = prefixes[i];\r\n var thisRule = prefix.toUpperCase() + '_' + rule;\r\n\r\n if (thisRule in cssrule) {\r\n return '@-' + prefix.toLowerCase() + '-' + prop;\r\n }\r\n }\r\n\r\n return false;\r\n };\r\n\r\n ModernizrProto.atRule = atRule;\r\n\r\n \r\n\r\n /**\r\n * List of JavaScript DOM values used for tests\r\n *\r\n * @memberof Modernizr\r\n * @name Modernizr._domPrefixes\r\n * @optionName Modernizr._domPrefixes\r\n * @optionProp domPrefixes\r\n * @access public\r\n * @example\r\n *\r\n * Modernizr._domPrefixes is exactly the same as [_prefixes](#modernizr-_prefixes), but rather\r\n * than kebab-case properties, all properties are their Capitalized variant\r\n *\r\n * ```js\r\n * Modernizr._domPrefixes === [ \"Moz\", \"O\", \"ms\", \"Webkit\" ];\r\n * ```\r\n */\r\n\r\n var domPrefixes = (ModernizrProto._config.usePrefixes ? omPrefixes.toLowerCase().split(' ') : []);\r\n ModernizrProto._domPrefixes = domPrefixes;\r\n \r\n\r\n\r\n /**\r\n * contains checks to see if a string contains another string\r\n *\r\n * @access private\r\n * @function contains\r\n * @param {string} str - The string we want to check for substrings\r\n * @param {string} substr - The substring we want to search the first string for\r\n * @returns {boolean}\r\n */\r\n\r\n function contains(str, substr) {\r\n return !!~('' + str).indexOf(substr);\r\n }\r\n\r\n ;\r\n\r\n /**\r\n * createElement is a convenience wrapper around document.createElement. Since we\r\n * use createElement all over the place, this allows for (slightly) smaller code\r\n * as well as abstracting away issues with creating elements in contexts other than\r\n * HTML documents (e.g. SVG documents).\r\n *\r\n * @access private\r\n * @function createElement\r\n * @returns {HTMLElement|SVGElement} An HTML or SVG element\r\n */\r\n\r\n function createElement() {\r\n if (typeof document.createElement !== 'function') {\r\n // This is the case in IE7, where the type of createElement is \"object\".\r\n // For this reason, we cannot call apply() as Object is not a Function.\r\n return document.createElement(arguments[0]);\r\n } else if (isSVG) {\r\n return document.createElementNS.call(document, 'http://www.w3.org/2000/svg', arguments[0]);\r\n } else {\r\n return document.createElement.apply(document, arguments);\r\n }\r\n }\r\n\r\n ;\r\n\r\n /**\r\n * fnBind is a super small [bind](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Function/bind) polyfill.\r\n *\r\n * @access private\r\n * @function fnBind\r\n * @param {function} fn - a function you want to change `this` reference to\r\n * @param {object} that - the `this` you want to call the function with\r\n * @returns {function} The wrapped version of the supplied function\r\n */\r\n\r\n function fnBind(fn, that) {\r\n return function() {\r\n return fn.apply(that, arguments);\r\n };\r\n }\r\n\r\n ;\r\n\r\n /**\r\n * testDOMProps is a generic DOM property test; if a browser supports\r\n * a certain property, it won't return undefined for it.\r\n *\r\n * @access private\r\n * @function testDOMProps\r\n * @param {array.} props - An array of properties to test for\r\n * @param {object} obj - An object or Element you want to use to test the parameters again\r\n * @param {boolean|object} elem - An Element to bind the property lookup again. Use `false` to prevent the check\r\n */\r\n function testDOMProps(props, obj, elem) {\r\n var item;\r\n\r\n for (var i in props) {\r\n if (props[i] in obj) {\r\n\r\n // return the property name as a string\r\n if (elem === false) {\r\n return props[i];\r\n }\r\n\r\n item = obj[props[i]];\r\n\r\n // let's bind a function\r\n if (is(item, 'function')) {\r\n // bind to obj unless overriden\r\n return fnBind(item, elem || obj);\r\n }\r\n\r\n // return the unbound function or obj or value\r\n return item;\r\n }\r\n }\r\n return false;\r\n }\r\n\r\n ;\r\n\r\n /**\r\n * Create our \"modernizr\" element that we do most feature tests on.\r\n *\r\n * @access private\r\n */\r\n\r\n var modElem = {\r\n elem: createElement('modernizr')\r\n };\r\n\r\n // Clean up this element\r\n Modernizr._q.push(function() {\r\n delete modElem.elem;\r\n });\r\n\r\n \r\n\r\n var mStyle = {\r\n style: modElem.elem.style\r\n };\r\n\r\n // kill ref for gc, must happen before mod.elem is removed, so we unshift on to\r\n // the front of the queue.\r\n Modernizr._q.unshift(function() {\r\n delete mStyle.style;\r\n });\r\n\r\n \r\n\r\n /**\r\n * domToCSS takes a camelCase string and converts it to kebab-case\r\n * e.g. boxSizing -> box-sizing\r\n *\r\n * @access private\r\n * @function domToCSS\r\n * @param {string} name - String name of camelCase prop we want to convert\r\n * @returns {string} The kebab-case version of the supplied name\r\n */\r\n\r\n function domToCSS(name) {\r\n return name.replace(/([A-Z])/g, function(str, m1) {\r\n return '-' + m1.toLowerCase();\r\n }).replace(/^ms-/, '-ms-');\r\n }\r\n ;\r\n\r\n /**\r\n * getBody returns the body of a document, or an element that can stand in for\r\n * the body if a real body does not exist\r\n *\r\n * @access private\r\n * @function getBody\r\n * @returns {HTMLElement|SVGElement} Returns the real body of a document, or an\r\n * artificially created element that stands in for the body\r\n */\r\n\r\n function getBody() {\r\n // After page load injecting a fake body doesn't work so check if body exists\r\n var body = document.body;\r\n\r\n if (!body) {\r\n // Can't use the real body create a fake one.\r\n body = createElement(isSVG ? 'svg' : 'body');\r\n body.fake = true;\r\n }\r\n\r\n return body;\r\n }\r\n\r\n ;\r\n\r\n /**\r\n * injectElementWithStyles injects an element with style element and some CSS rules\r\n *\r\n * @access private\r\n * @function injectElementWithStyles\r\n * @param {string} rule - String representing a css rule\r\n * @param {function} callback - A function that is used to test the injected element\r\n * @param {number} [nodes] - An integer representing the number of additional nodes you want injected\r\n * @param {string[]} [testnames] - An array of strings that are used as ids for the additional nodes\r\n * @returns {boolean}\r\n */\r\n\r\n function injectElementWithStyles(rule, callback, nodes, testnames) {\r\n var mod = 'modernizr';\r\n var style;\r\n var ret;\r\n var node;\r\n var docOverflow;\r\n var div = createElement('div');\r\n var body = getBody();\r\n\r\n if (parseInt(nodes, 10)) {\r\n // In order not to give false positives we create a node for each test\r\n // This also allows the method to scale for unspecified uses\r\n while (nodes--) {\r\n node = createElement('div');\r\n node.id = testnames ? testnames[nodes] : mod + (nodes + 1);\r\n div.appendChild(node);\r\n }\r\n }\r\n\r\n style = createElement('style');\r\n style.type = 'text/css';\r\n style.id = 's' + mod;\r\n\r\n // IE6 will false positive on some tests due to the style element inside the test div somehow interfering offsetHeight, so insert it into body or fakebody.\r\n // Opera will act all quirky when injecting elements in documentElement when page is served as xml, needs fakebody too. #270\r\n (!body.fake ? div : body).appendChild(style);\r\n body.appendChild(div);\r\n\r\n if (style.styleSheet) {\r\n style.styleSheet.cssText = rule;\r\n } else {\r\n style.appendChild(document.createTextNode(rule));\r\n }\r\n div.id = mod;\r\n\r\n if (body.fake) {\r\n //avoid crashing IE8, if background image is used\r\n body.style.background = '';\r\n //Safari 5.13/5.1.4 OSX stops loading if ::-webkit-scrollbar is used and scrollbars are visible\r\n body.style.overflow = 'hidden';\r\n docOverflow = docElement.style.overflow;\r\n docElement.style.overflow = 'hidden';\r\n docElement.appendChild(body);\r\n }\r\n\r\n ret = callback(div, rule);\r\n // If this is done after page load we don't want to remove the body so check if body exists\r\n if (body.fake) {\r\n body.parentNode.removeChild(body);\r\n docElement.style.overflow = docOverflow;\r\n // Trigger layout so kinetic scrolling isn't disabled in iOS6+\r\n docElement.offsetHeight;\r\n } else {\r\n div.parentNode.removeChild(div);\r\n }\r\n\r\n return !!ret;\r\n\r\n }\r\n\r\n ;\r\n\r\n /**\r\n * nativeTestProps allows for us to use native feature detection functionality if available.\r\n * some prefixed form, or false, in the case of an unsupported rule\r\n *\r\n * @access private\r\n * @function nativeTestProps\r\n * @param {array} props - An array of property names\r\n * @param {string} value - A string representing the value we want to check via @supports\r\n * @returns {boolean|undefined} A boolean when @supports exists, undefined otherwise\r\n */\r\n\r\n // Accepts a list of property names and a single value\r\n // Returns `undefined` if native detection not available\r\n function nativeTestProps(props, value) {\r\n var i = props.length;\r\n // Start with the JS API: http://www.w3.org/TR/css3-conditional/#the-css-interface\r\n if ('CSS' in window && 'supports' in window.CSS) {\r\n // Try every prefixed variant of the property\r\n while (i--) {\r\n if (window.CSS.supports(domToCSS(props[i]), value)) {\r\n return true;\r\n }\r\n }\r\n return false;\r\n }\r\n // Otherwise fall back to at-rule (for Opera 12.x)\r\n else if ('CSSSupportsRule' in window) {\r\n // Build a condition string for every prefixed variant\r\n var conditionText = [];\r\n while (i--) {\r\n conditionText.push('(' + domToCSS(props[i]) + ':' + value + ')');\r\n }\r\n conditionText = conditionText.join(' or ');\r\n return injectElementWithStyles('@supports (' + conditionText + ') { #modernizr { position: absolute; } }', function(node) {\r\n return getComputedStyle(node, null).position == 'absolute';\r\n });\r\n }\r\n return undefined;\r\n }\r\n ;\r\n\r\n // testProps is a generic CSS / DOM property test.\r\n\r\n // In testing support for a given CSS property, it's legit to test:\r\n // `elem.style[styleName] !== undefined`\r\n // If the property is supported it will return an empty string,\r\n // if unsupported it will return undefined.\r\n\r\n // We'll take advantage of this quick test and skip setting a style\r\n // on our modernizr element, but instead just testing undefined vs\r\n // empty string.\r\n\r\n // Property names can be provided in either camelCase or kebab-case.\r\n\r\n function testProps(props, prefixed, value, skipValueTest) {\r\n skipValueTest = is(skipValueTest, 'undefined') ? false : skipValueTest;\r\n\r\n // Try native detect first\r\n if (!is(value, 'undefined')) {\r\n var result = nativeTestProps(props, value);\r\n if (!is(result, 'undefined')) {\r\n return result;\r\n }\r\n }\r\n\r\n // Otherwise do it properly\r\n var afterInit, i, propsLength, prop, before;\r\n\r\n // If we don't have a style element, that means we're running async or after\r\n // the core tests, so we'll need to create our own elements to use\r\n\r\n // inside of an SVG element, in certain browsers, the `style` element is only\r\n // defined for valid tags. Therefore, if `modernizr` does not have one, we\r\n // fall back to a less used element and hope for the best.\r\n // for strict XHTML browsers the hardly used samp element is used\r\n var elems = ['modernizr', 'tspan', 'samp'];\r\n while (!mStyle.style && elems.length) {\r\n afterInit = true;\r\n mStyle.modElem = createElement(elems.shift());\r\n mStyle.style = mStyle.modElem.style;\r\n }\r\n\r\n // Delete the objects if we created them.\r\n function cleanElems() {\r\n if (afterInit) {\r\n delete mStyle.style;\r\n delete mStyle.modElem;\r\n }\r\n }\r\n\r\n propsLength = props.length;\r\n for (i = 0; i < propsLength; i++) {\r\n prop = props[i];\r\n before = mStyle.style[prop];\r\n\r\n if (contains(prop, '-')) {\r\n prop = cssToDOM(prop);\r\n }\r\n\r\n if (mStyle.style[prop] !== undefined) {\r\n\r\n // If value to test has been passed in, do a set-and-check test.\r\n // 0 (integer) is a valid property value, so check that `value` isn't\r\n // undefined, rather than just checking it's truthy.\r\n if (!skipValueTest && !is(value, 'undefined')) {\r\n\r\n // Needs a try catch block because of old IE. This is slow, but will\r\n // be avoided in most cases because `skipValueTest` will be used.\r\n try {\r\n mStyle.style[prop] = value;\r\n } catch (e) {}\r\n\r\n // If the property value has changed, we assume the value used is\r\n // supported. If `value` is empty string, it'll fail here (because\r\n // it hasn't changed), which matches how browsers have implemented\r\n // CSS.supports()\r\n if (mStyle.style[prop] != before) {\r\n cleanElems();\r\n return prefixed == 'pfx' ? prop : true;\r\n }\r\n }\r\n // Otherwise just return true, or the property name if this is a\r\n // `prefixed()` call\r\n else {\r\n cleanElems();\r\n return prefixed == 'pfx' ? prop : true;\r\n }\r\n }\r\n }\r\n cleanElems();\r\n return false;\r\n }\r\n\r\n ;\r\n\r\n /**\r\n * testPropsAll tests a list of DOM properties we want to check against.\r\n * We specify literally ALL possible (known and/or likely) properties on\r\n * the element including the non-vendor prefixed one, for forward-\r\n * compatibility.\r\n *\r\n * @access private\r\n * @function testPropsAll\r\n * @param {string} prop - A string of the property to test for\r\n * @param {string|object} [prefixed] - An object to check the prefixed properties on. Use a string to skip\r\n * @param {HTMLElement|SVGElement} [elem] - An element used to test the property and value against\r\n * @param {string} [value] - A string of a css value\r\n * @param {boolean} [skipValueTest] - An boolean representing if you want to test if value sticks when set\r\n */\r\n function testPropsAll(prop, prefixed, elem, value, skipValueTest) {\r\n\r\n var ucProp = prop.charAt(0).toUpperCase() + prop.slice(1),\r\n props = (prop + ' ' + cssomPrefixes.join(ucProp + ' ') + ucProp).split(' ');\r\n\r\n // did they call .prefixed('boxSizing') or are we just testing a prop?\r\n if (is(prefixed, 'string') || is(prefixed, 'undefined')) {\r\n return testProps(props, prefixed, value, skipValueTest);\r\n\r\n // otherwise, they called .prefixed('requestAnimationFrame', window[, elem])\r\n } else {\r\n props = (prop + ' ' + (domPrefixes).join(ucProp + ' ') + ucProp).split(' ');\r\n return testDOMProps(props, prefixed, elem);\r\n }\r\n }\r\n\r\n // Modernizr.testAllProps() investigates whether a given style property,\r\n // or any of its vendor-prefixed variants, is recognized\r\n //\r\n // Note that the property names must be provided in the camelCase variant.\r\n // Modernizr.testAllProps('boxSizing')\r\n ModernizrProto.testAllProps = testPropsAll;\r\n\r\n \r\n\r\n /**\r\n * prefixed returns the prefixed or nonprefixed property name variant of your input\r\n *\r\n * @memberof Modernizr\r\n * @name Modernizr.prefixed\r\n * @optionName Modernizr.prefixed()\r\n * @optionProp prefixed\r\n * @access public\r\n * @function prefixed\r\n * @param {string} prop - String name of the property to test for\r\n * @param {object} [obj] - An object to test for the prefixed properties on\r\n * @param {HTMLElement} [elem] - An element used to test specific properties against\r\n * @returns {string|false} The string representing the (possibly prefixed) valid\r\n * version of the property, or `false` when it is unsupported.\r\n * @example\r\n *\r\n * Modernizr.prefixed takes a string css value in the DOM style camelCase (as\r\n * opposed to the css style kebab-case) form and returns the (possibly prefixed)\r\n * version of that property that the browser actually supports.\r\n *\r\n * For example, in older Firefox...\r\n * ```js\r\n * prefixed('boxSizing')\r\n * ```\r\n * returns 'MozBoxSizing'\r\n *\r\n * In newer Firefox, as well as any other browser that support the unprefixed\r\n * version would simply return `boxSizing`. Any browser that does not support\r\n * the property at all, it will return `false`.\r\n *\r\n * By default, prefixed is checked against a DOM element. If you want to check\r\n * for a property on another object, just pass it as a second argument\r\n *\r\n * ```js\r\n * var rAF = prefixed('requestAnimationFrame', window);\r\n *\r\n * raf(function() {\r\n * renderFunction();\r\n * })\r\n * ```\r\n *\r\n * Note that this will return _the actual function_ - not the name of the function.\r\n * If you need the actual name of the property, pass in `false` as a third argument\r\n *\r\n * ```js\r\n * var rAFProp = prefixed('requestAnimationFrame', window, false);\r\n *\r\n * rafProp === 'WebkitRequestAnimationFrame' // in older webkit\r\n * ```\r\n *\r\n * One common use case for prefixed is if you're trying to determine which transition\r\n * end event to bind to, you might do something like...\r\n * ```js\r\n * var transEndEventNames = {\r\n * 'WebkitTransition' : 'webkitTransitionEnd', * Saf 6, Android Browser\r\n * 'MozTransition' : 'transitionend', * only for FF < 15\r\n * 'transition' : 'transitionend' * IE10, Opera, Chrome, FF 15+, Saf 7+\r\n * };\r\n *\r\n * var transEndEventName = transEndEventNames[ Modernizr.prefixed('transition') ];\r\n * ```\r\n *\r\n * If you want a similar lookup, but in kebab-case, you can use [prefixedCSS](#modernizr-prefixedcss).\r\n */\r\n\r\n var prefixed = ModernizrProto.prefixed = function(prop, obj, elem) {\r\n if (prop.indexOf('@') === 0) {\r\n return atRule(prop);\r\n }\r\n\r\n if (prop.indexOf('-') != -1) {\r\n // Convert kebab-case to camelCase\r\n prop = cssToDOM(prop);\r\n }\r\n if (!obj) {\r\n return testPropsAll(prop, 'pfx');\r\n } else {\r\n // Testing DOM property e.g. Modernizr.prefixed('requestAnimationFrame', window) // 'mozRequestAnimationFrame'\r\n return testPropsAll(prop, obj, elem);\r\n }\r\n };\r\n\r\n \r\n/*!\r\n{\r\n \"name\": \"Navigation Timing API\",\r\n \"property\": \"performance\",\r\n \"caniuse\": \"nav-timing\",\r\n \"tags\": [\"performance\"],\r\n \"authors\": [\"Scott Murphy (@uxder)\"],\r\n \"notes\": [{\r\n \"name\": \"W3C Spec\",\r\n \"href\": \"https://www.w3.org/TR/navigation-timing/\"\r\n },{\r\n \"name\": \"HTML5 Rocks article\",\r\n \"href\": \"http://www.html5rocks.com/en/tutorials/webperformance/basics/\"\r\n }],\r\n \"polyfills\": [\"perfnow\"]\r\n}\r\n!*/\r\n/* DOC\r\nDetects support for the Navigation Timing API, for measuring browser and connection performance.\r\n*/\r\n\r\n Modernizr.addTest('performance', !!prefixed('performance', window));\r\n\r\n\r\n // Run each test\r\n testRunner();\r\n\r\n // Remove the \"no-js\" class if it exists\r\n setClasses(classes);\r\n\r\n delete ModernizrProto.addTest;\r\n delete ModernizrProto.addAsyncTest;\r\n\r\n // Run the things that are supposed to run after the tests\r\n for (var i = 0; i < Modernizr._q.length; i++) {\r\n Modernizr._q[i]();\r\n }\r\n\r\n // Leak Modernizr namespace\r\n window.Modernizr = Modernizr;\r\n\r\n\r\n;\r\n\r\n})(window, document);","/*!\r\n * Chart.js\r\n * http://chartjs.org/\r\n * Version: 2.5.0\r\n *\r\n * Copyright 2017 Nick Downie\r\n * Released under the MIT license\r\n * https://github.com/chartjs/Chart.js/blob/master/LICENSE.md\r\n */\r\n!function(t){if(\"object\"==typeof exports&&\"undefined\"!=typeof module)module.exports=t();else if(\"function\"==typeof define&&define.amd)define([],t);else{var e;e=\"undefined\"!=typeof window?window:\"undefined\"!=typeof global?global:\"undefined\"!=typeof self?self:this,e.Chart=t()}}(function(){return function t(e,a,i){function n(r,s){if(!a[r]){if(!e[r]){var l=\"function\"==typeof require&&require;if(!s&&l)return l(r,!0);if(o)return o(r,!0);var u=new Error(\"Cannot find module '\"+r+\"'\");throw u.code=\"MODULE_NOT_FOUND\",u}var d=a[r]={exports:{}};e[r][0].call(d.exports,function(t){var a=e[r][1][t];return n(a?a:t)},d,d.exports,t,e,a,i)}return a[r].exports}for(var o=\"function\"==typeof require&&require,r=0;ra?(e+.05)/(a+.05):(a+.05)/(e+.05)},level:function(t){var e=this.contrast(t);return e>=7.1?\"AAA\":e>=4.5?\"AA\":\"\"},dark:function(){var t=this.values.rgb,e=(299*t[0]+587*t[1]+114*t[2])/1e3;return e<128},light:function(){return!this.dark()},negate:function(){for(var t=[],e=0;e<3;e++)t[e]=255-this.values.rgb[e];return this.setValues(\"rgb\",t),this},lighten:function(t){var e=this.values.hsl;return e[2]+=e[2]*t,this.setValues(\"hsl\",e),this},darken:function(t){var e=this.values.hsl;return e[2]-=e[2]*t,this.setValues(\"hsl\",e),this},saturate:function(t){var e=this.values.hsl;return e[1]+=e[1]*t,this.setValues(\"hsl\",e),this},desaturate:function(t){var e=this.values.hsl;return e[1]-=e[1]*t,this.setValues(\"hsl\",e),this},whiten:function(t){var e=this.values.hwb;return e[1]+=e[1]*t,this.setValues(\"hwb\",e),this},blacken:function(t){var e=this.values.hwb;return e[2]+=e[2]*t,this.setValues(\"hwb\",e),this},greyscale:function(){var t=this.values.rgb,e=.3*t[0]+.59*t[1]+.11*t[2];return this.setValues(\"rgb\",[e,e,e]),this},clearer:function(t){var e=this.values.alpha;return this.setValues(\"alpha\",e-e*t),this},opaquer:function(t){var e=this.values.alpha;return this.setValues(\"alpha\",e+e*t),this},rotate:function(t){var e=this.values.hsl,a=(e[0]+t)%360;return e[0]=a<0?360+a:a,this.setValues(\"hsl\",e),this},mix:function(t,e){var a=this,i=t,n=void 0===e?.5:e,o=2*n-1,r=a.alpha()-i.alpha(),s=((o*r===-1?o:(o+r)/(1+o*r))+1)/2,l=1-s;return this.rgb(s*a.red()+l*i.red(),s*a.green()+l*i.green(),s*a.blue()+l*i.blue()).alpha(a.alpha()*n+i.alpha()*(1-n))},toJSON:function(){return this.rgb()},clone:function(){var t,e,a=new o,i=this.values,n=a.values;for(var r in i)i.hasOwnProperty(r)&&(t=i[r],e={}.toString.call(t),\"[object Array]\"===e?n[r]=t.slice(0):\"[object Number]\"===e?n[r]=t:console.error(\"unexpected color value:\",t));return a}},o.prototype.spaces={rgb:[\"red\",\"green\",\"blue\"],hsl:[\"hue\",\"saturation\",\"lightness\"],hsv:[\"hue\",\"saturation\",\"value\"],hwb:[\"hue\",\"whiteness\",\"blackness\"],cmyk:[\"cyan\",\"magenta\",\"yellow\",\"black\"]},o.prototype.maxes={rgb:[255,255,255],hsl:[360,100,100],hsv:[360,100,100],hwb:[360,100,100],cmyk:[100,100,100,100]},o.prototype.getValues=function(t){for(var e=this.values,a={},i=0;i.04045?Math.pow((e+.055)/1.055,2.4):e/12.92,a=a>.04045?Math.pow((a+.055)/1.055,2.4):a/12.92,i=i>.04045?Math.pow((i+.055)/1.055,2.4):i/12.92;var n=.4124*e+.3576*a+.1805*i,o=.2126*e+.7152*a+.0722*i,r=.0193*e+.1192*a+.9505*i;return[100*n,100*o,100*r]}function d(t){var e,a,i,n=u(t),o=n[0],r=n[1],s=n[2];return o/=95.047,r/=100,s/=108.883,o=o>.008856?Math.pow(o,1/3):7.787*o+16/116,r=r>.008856?Math.pow(r,1/3):7.787*r+16/116,s=s>.008856?Math.pow(s,1/3):7.787*s+16/116,e=116*r-16,a=500*(o-r),i=200*(r-s),[e,a,i]}function c(t){return z(d(t))}function h(t){var e,a,i,n,o,r=t[0]/360,s=t[1]/100,l=t[2]/100;if(0==s)return o=255*l,[o,o,o];a=l<.5?l*(1+s):l+s-l*s,e=2*l-a,n=[0,0,0];for(var u=0;u<3;u++)i=r+1/3*-(u-1),i<0&&i++,i>1&&i--,o=6*i<1?e+6*(a-e)*i:2*i<1?a:3*i<2?e+(a-e)*(2/3-i)*6:e,n[u]=255*o;return n}function f(t){var e,a,i=t[0],n=t[1]/100,o=t[2]/100;return 0===o?[0,0,0]:(o*=2,n*=o<=1?o:2-o,a=(o+n)/2,e=2*n/(o+n),[i,100*e,100*a])}function p(t){return o(h(t))}function m(t){return s(h(t))}function v(t){return l(h(t))}function x(t){var e=t[0]/60,a=t[1]/100,i=t[2]/100,n=Math.floor(e)%6,o=e-Math.floor(e),r=255*i*(1-a),s=255*i*(1-a*o),l=255*i*(1-a*(1-o)),i=255*i;switch(n){case 0:return[i,l,r];case 1:return[s,i,r];case 2:return[r,i,l];case 3:return[r,s,i];case 4:return[l,r,i];case 5:return[i,r,s]}}function y(t){var e,a,i=t[0],n=t[1]/100,o=t[2]/100;return a=(2-n)*o,e=n*o,e/=a<=1?a:2-a,e=e||0,a/=2,[i,100*e,100*a]}function k(t){return o(x(t))}function S(t){return s(x(t))}function M(t){return l(x(t))}function w(t){var e,a,i,n,o=t[0]/360,s=t[1]/100,l=t[2]/100,u=s+l;switch(u>1&&(s/=u,l/=u),e=Math.floor(6*o),a=1-l,i=6*o-e,0!=(1&e)&&(i=1-i),n=s+i*(a-s),e){default:case 6:case 0:r=a,g=n,b=s;break;case 1:r=n,g=a,b=s;break;case 2:r=s,g=a,b=n;break;case 3:r=s,g=n,b=a;break;case 4:r=n,g=s,b=a;break;case 5:r=a,g=s,b=n}return[255*r,255*g,255*b]}function C(t){return i(w(t))}function I(t){return n(w(t))}function D(t){return s(w(t))}function A(t){return l(w(t))}function T(t){var e,a,i,n=t[0]/100,o=t[1]/100,r=t[2]/100,s=t[3]/100;return e=1-Math.min(1,n*(1-s)+s),a=1-Math.min(1,o*(1-s)+s),i=1-Math.min(1,r*(1-s)+s),[255*e,255*a,255*i]}function P(t){return i(T(t))}function _(t){return n(T(t))}function F(t){return o(T(t))}function V(t){return l(T(t))}function R(t){var e,a,i,n=t[0]/100,o=t[1]/100,r=t[2]/100;return e=3.2406*n+o*-1.5372+r*-.4986,a=n*-.9689+1.8758*o+.0415*r,i=.0557*n+o*-.204+1.057*r,e=e>.0031308?1.055*Math.pow(e,1/2.4)-.055:e*=12.92,a=a>.0031308?1.055*Math.pow(a,1/2.4)-.055:a*=12.92,i=i>.0031308?1.055*Math.pow(i,1/2.4)-.055:i*=12.92,e=Math.min(Math.max(0,e),1),a=Math.min(Math.max(0,a),1),i=Math.min(Math.max(0,i),1),[255*e,255*a,255*i]}function O(t){var e,a,i,n=t[0],o=t[1],r=t[2];return n/=95.047,o/=100,r/=108.883,n=n>.008856?Math.pow(n,1/3):7.787*n+16/116,o=o>.008856?Math.pow(o,1/3):7.787*o+16/116,r=r>.008856?Math.pow(r,1/3):7.787*r+16/116,e=116*o-16,a=500*(n-o),i=200*(o-r),[e,a,i]}function L(t){return z(O(t))}function B(t){var e,a,i,n,o=t[0],r=t[1],s=t[2];return o<=8?(a=100*o/903.3,n=7.787*(a/100)+16/116):(a=100*Math.pow((o+16)/116,3),n=Math.pow(a/100,1/3)),e=e/95.047<=.008856?e=95.047*(r/500+n-16/116)/7.787:95.047*Math.pow(r/500+n,3),i=i/108.883<=.008859?i=108.883*(n-s/200-16/116)/7.787:108.883*Math.pow(n-s/200,3),[e,a,i]}function z(t){var e,a,i,n=t[0],o=t[1],r=t[2];return e=Math.atan2(r,o),a=360*e/2/Math.PI,a<0&&(a+=360),i=Math.sqrt(o*o+r*r),[n,i,a]}function W(t){return R(B(t))}function N(t){var e,a,i,n=t[0],o=t[1],r=t[2];return i=r/360*2*Math.PI,e=o*Math.cos(i),a=o*Math.sin(i),[n,e,a]}function E(t){return B(N(t))}function H(t){return W(N(t))}function j(t){return G[t]}function U(t){return i(j(t))}function q(t){return n(j(t))}function Y(t){return o(j(t))}function X(t){return s(j(t))}function K(t){return d(j(t))}function J(t){return u(j(t))}e.exports={rgb2hsl:i,rgb2hsv:n,rgb2hwb:o,rgb2cmyk:s,rgb2keyword:l,rgb2xyz:u,rgb2lab:d,rgb2lch:c,hsl2rgb:h,hsl2hsv:f,hsl2hwb:p,hsl2cmyk:m,hsl2keyword:v,hsv2rgb:x,hsv2hsl:y,hsv2hwb:k,hsv2cmyk:S,hsv2keyword:M,hwb2rgb:w,hwb2hsl:C,hwb2hsv:I,hwb2cmyk:D,hwb2keyword:A,cmyk2rgb:T,cmyk2hsl:P,cmyk2hsv:_,cmyk2hwb:F,cmyk2keyword:V,keyword2rgb:j,keyword2hsl:U,keyword2hsv:q,keyword2hwb:Y,keyword2cmyk:X,keyword2lab:K,keyword2xyz:J,xyz2rgb:R,xyz2lab:O,xyz2lch:L,lab2xyz:B,lab2rgb:W,lab2lch:z,lch2lab:N,lch2xyz:E,lch2rgb:H};var G={aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,134,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,250,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],grey:[128,128,128],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,221],powderblue:[176,224,230],purple:[128,0,128],rebeccapurple:[102,51,153],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[112,128,144],slategrey:[112,128,144],snow:[255,250,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,50]},Z={};for(var Q in G)Z[JSON.stringify(G[Q])]=Q},{}],5:[function(t,e,a){var i=t(4),n=function(){return new u};for(var o in i){n[o+\"Raw\"]=function(t){return function(e){return\"number\"==typeof e&&(e=Array.prototype.slice.call(arguments)),i[t](e)}}(o);var r=/(\\w+)2(\\w+)/.exec(o),s=r[1],l=r[2];n[s]=n[s]||{},n[s][l]=n[o]=function(t){return function(e){\"number\"==typeof e&&(e=Array.prototype.slice.call(arguments));var a=i[t](e);if(\"string\"==typeof a||void 0===a)return a;for(var n=0;n0&&(t[0].yLabel?a=t[0].yLabel:e.labels.length>0&&t[0].index');var a=t.data,i=a.datasets,n=a.labels;if(i.length)for(var o=0;o'),n[o]&&e.push(n[o]),e.push(\"
  • \");return e.push(\"\"),e.join(\"\")},legend:{labels:{generateLabels:function(t){var a=t.data;return a.labels.length&&a.datasets.length?a.labels.map(function(i,n){var o=t.getDatasetMeta(0),r=a.datasets[0],s=o.data[n],l=s&&s.custom||{},u=e.getValueAtIndexOrDefault,d=t.options.elements.arc,c=l.backgroundColor?l.backgroundColor:u(r.backgroundColor,n,d.backgroundColor),h=l.borderColor?l.borderColor:u(r.borderColor,n,d.borderColor),f=l.borderWidth?l.borderWidth:u(r.borderWidth,n,d.borderWidth);return{text:i,fillStyle:c,strokeStyle:h,lineWidth:f,hidden:isNaN(r.data[n])||o.data[n].hidden,index:n}}):[]}},onClick:function(t,e){var a,i,n,o=e.index,r=this.chart;for(a=0,i=(r.data.datasets||[]).length;a=Math.PI?-1:g<-Math.PI?1:0);var p=g+f,m={x:Math.cos(g),y:Math.sin(g)},v={x:Math.cos(p),y:Math.sin(p)},b=g<=0&&0<=p||g<=2*Math.PI&&2*Math.PI<=p,x=g<=.5*Math.PI&&.5*Math.PI<=p||g<=2.5*Math.PI&&2.5*Math.PI<=p,y=g<=-Math.PI&&-Math.PI<=p||g<=Math.PI&&Math.PI<=p,k=g<=.5*-Math.PI&&.5*-Math.PI<=p||g<=1.5*Math.PI&&1.5*Math.PI<=p,S=h/100,M={x:y?-1:Math.min(m.x*(m.x<0?1:S),v.x*(v.x<0?1:S)),y:k?-1:Math.min(m.y*(m.y<0?1:S),v.y*(v.y<0?1:S))},w={x:b?1:Math.max(m.x*(m.x>0?1:S),v.x*(v.x>0?1:S)),y:x?1:Math.max(m.y*(m.y>0?1:S),v.y*(v.y>0?1:S))},C={width:.5*(w.x-M.x),height:.5*(w.y-M.y)};u=Math.min(s/C.width,l/C.height),d={x:(w.x+M.x)*-.5,y:(w.y+M.y)*-.5}}i.borderWidth=a.getMaxBorderWidth(c.data),i.outerRadius=Math.max((u-i.borderWidth)/2,0),i.innerRadius=Math.max(h?i.outerRadius/100*h:0,0),i.radiusLength=(i.outerRadius-i.innerRadius)/i.getVisibleDatasetCount(),i.offsetX=d.x*i.outerRadius,i.offsetY=d.y*i.outerRadius,c.total=a.calculateTotal(),a.outerRadius=i.outerRadius-i.radiusLength*a.getRingIndex(a.index),a.innerRadius=Math.max(a.outerRadius-i.radiusLength,0),e.each(c.data,function(e,i){a.updateElement(e,i,t)})},updateElement:function(t,a,i){var n=this,o=n.chart,r=o.chartArea,s=o.options,l=s.animation,u=(r.left+r.right)/2,d=(r.top+r.bottom)/2,c=s.rotation,h=s.rotation,f=n.getDataset(),g=i&&l.animateRotate?0:t.hidden?0:n.calculateCircumference(f.data[a])*(s.circumference/(2*Math.PI)),p=i&&l.animateScale?0:n.innerRadius,m=i&&l.animateScale?0:n.outerRadius,v=e.getValueAtIndexOrDefault;e.extend(t,{_datasetIndex:n.index,_index:a,_model:{x:u+o.offsetX,y:d+o.offsetY,startAngle:c,endAngle:h,circumference:g,outerRadius:m,innerRadius:p,label:v(f.label,a,o.data.labels[a])}});var b=t._model;this.removeHoverStyle(t),i&&l.animateRotate||(0===a?b.startAngle=s.rotation:b.startAngle=n.getMeta().data[a-1]._model.endAngle,b.endAngle=b.startAngle+b.circumference),t.pivot()},removeHoverStyle:function(e){t.DatasetController.prototype.removeHoverStyle.call(this,e,this.chart.options.elements.arc)},calculateTotal:function(){var t,a=this.getDataset(),i=this.getMeta(),n=0;return e.each(i.data,function(e,i){t=a.data[i],isNaN(t)||e.hidden||(n+=Math.abs(t))}),n},calculateCircumference:function(t){var e=this.getMeta().total;return e>0&&!isNaN(t)?2*Math.PI*(t/e):0},getMaxBorderWidth:function(t){for(var e,a,i=0,n=this.index,o=t.length,r=0;ri?e:i,i=a>i?a:i;return i}})}},{}],18:[function(t,e,a){\"use strict\";e.exports=function(t){function e(t,e){return a.getValueOrDefault(t.showLine,e.showLines)}var a=t.helpers;t.defaults.line={showLines:!0,spanGaps:!1,hover:{mode:\"label\"},scales:{xAxes:[{type:\"category\",id:\"x-axis-0\"}],yAxes:[{type:\"linear\",id:\"y-axis-0\"}]}},t.controllers.line=t.DatasetController.extend({datasetElementType:t.elements.Line,dataElementType:t.elements.Point,update:function(t){var i,n,o,r=this,s=r.getMeta(),l=s.dataset,u=s.data||[],d=r.chart.options,c=d.elements.line,h=r.getScaleForId(s.yAxisID),f=r.getDataset(),g=e(f,d);for(g&&(o=l.custom||{},void 0!==f.tension&&void 0===f.lineTension&&(f.lineTension=f.tension),l._scale=h,l._datasetIndex=r.index,l._children=u,l._model={spanGaps:f.spanGaps?f.spanGaps:d.spanGaps,tension:o.tension?o.tension:a.getValueOrDefault(f.lineTension,c.tension),backgroundColor:o.backgroundColor?o.backgroundColor:f.backgroundColor||c.backgroundColor,borderWidth:o.borderWidth?o.borderWidth:f.borderWidth||c.borderWidth,borderColor:o.borderColor?o.borderColor:f.borderColor||c.borderColor,borderCapStyle:o.borderCapStyle?o.borderCapStyle:f.borderCapStyle||c.borderCapStyle,borderDash:o.borderDash?o.borderDash:f.borderDash||c.borderDash,borderDashOffset:o.borderDashOffset?o.borderDashOffset:f.borderDashOffset||c.borderDashOffset,borderJoinStyle:o.borderJoinStyle?o.borderJoinStyle:f.borderJoinStyle||c.borderJoinStyle,fill:o.fill?o.fill:void 0!==f.fill?f.fill:c.fill,steppedLine:o.steppedLine?o.steppedLine:a.getValueOrDefault(f.steppedLine,c.stepped),cubicInterpolationMode:o.cubicInterpolationMode?o.cubicInterpolationMode:a.getValueOrDefault(f.cubicInterpolationMode,c.cubicInterpolationMode),scaleTop:h.top,scaleBottom:h.bottom,scaleZero:h.getBasePixel()},l.pivot()),i=0,n=u.length;i');var a=t.data,i=a.datasets,n=a.labels;if(i.length)for(var o=0;o'),n[o]&&e.push(n[o]),e.push(\"
  • \");return e.push(\"\"),e.join(\"\")},legend:{labels:{generateLabels:function(t){var a=t.data;return a.labels.length&&a.datasets.length?a.labels.map(function(i,n){var o=t.getDatasetMeta(0),r=a.datasets[0],s=o.data[n],l=s.custom||{},u=e.getValueAtIndexOrDefault,d=t.options.elements.arc,c=l.backgroundColor?l.backgroundColor:u(r.backgroundColor,n,d.backgroundColor),h=l.borderColor?l.borderColor:u(r.borderColor,n,d.borderColor),f=l.borderWidth?l.borderWidth:u(r.borderWidth,n,d.borderWidth);return{text:i,fillStyle:c,strokeStyle:h,lineWidth:f,hidden:isNaN(r.data[n])||o.data[n].hidden,index:n}}):[]}},onClick:function(t,e){var a,i,n,o=e.index,r=this.chart;for(a=0,i=(r.data.datasets||[]).length;a0&&!isNaN(t)?2*Math.PI/e:0}})}},{}],20:[function(t,e,a){\"use strict\";e.exports=function(t){var e=t.helpers;t.defaults.radar={aspectRatio:1,scale:{type:\"radialLinear\"},elements:{line:{tension:0}}},t.controllers.radar=t.DatasetController.extend({datasetElementType:t.elements.Line,dataElementType:t.elements.Point,linkScales:e.noop,update:function(t){var a=this,i=a.getMeta(),n=i.dataset,o=i.data,r=n.custom||{},s=a.getDataset(),l=a.chart.options.elements.line,u=a.chart.scale;void 0!==s.tension&&void 0===s.lineTension&&(s.lineTension=s.tension),e.extend(i.dataset,{_datasetIndex:a.index,_children:o,_loop:!0,_model:{tension:r.tension?r.tension:e.getValueOrDefault(s.lineTension,l.tension),backgroundColor:r.backgroundColor?r.backgroundColor:s.backgroundColor||l.backgroundColor,borderWidth:r.borderWidth?r.borderWidth:s.borderWidth||l.borderWidth,borderColor:r.borderColor?r.borderColor:s.borderColor||l.borderColor,fill:r.fill?r.fill:void 0!==s.fill?s.fill:l.fill,borderCapStyle:r.borderCapStyle?r.borderCapStyle:s.borderCapStyle||l.borderCapStyle,borderDash:r.borderDash?r.borderDash:s.borderDash||l.borderDash,borderDashOffset:r.borderDashOffset?r.borderDashOffset:s.borderDashOffset||l.borderDashOffset,borderJoinStyle:r.borderJoinStyle?r.borderJoinStyle:s.borderJoinStyle||l.borderJoinStyle,scaleTop:u.top,scaleBottom:u.bottom,scaleZero:u.getBasePosition()}}),i.dataset.pivot(),e.each(o,function(e,i){a.updateElement(e,i,t)},a),a.updateBezierControlPoints()},updateElement:function(t,a,i){var n=this,o=t.custom||{},r=n.getDataset(),s=n.chart.scale,l=n.chart.options.elements.point,u=s.getPointPositionForValue(a,r.data[a]);e.extend(t,{_datasetIndex:n.index,_index:a,_scale:s,_model:{x:i?s.xCenter:u.x,y:i?s.yCenter:u.y,tension:o.tension?o.tension:e.getValueOrDefault(r.lineTension,n.chart.options.elements.line.tension),radius:o.radius?o.radius:e.getValueAtIndexOrDefault(r.pointRadius,a,l.radius),backgroundColor:o.backgroundColor?o.backgroundColor:e.getValueAtIndexOrDefault(r.pointBackgroundColor,a,l.backgroundColor),borderColor:o.borderColor?o.borderColor:e.getValueAtIndexOrDefault(r.pointBorderColor,a,l.borderColor),borderWidth:o.borderWidth?o.borderWidth:e.getValueAtIndexOrDefault(r.pointBorderWidth,a,l.borderWidth),pointStyle:o.pointStyle?o.pointStyle:e.getValueAtIndexOrDefault(r.pointStyle,a,l.pointStyle),hitRadius:o.hitRadius?o.hitRadius:e.getValueAtIndexOrDefault(r.hitRadius,a,l.hitRadius)}}),t._model.skip=o.skip?o.skip:isNaN(t._model.x)||isNaN(t._model.y)},updateBezierControlPoints:function(){var t=this.chart.chartArea,a=this.getMeta();e.each(a.data,function(i,n){var o=i._model,r=e.splineCurve(e.previousItem(a.data,n,!0)._model,o,e.nextItem(a.data,n,!0)._model,o.tension);o.controlPointPreviousX=Math.max(Math.min(r.previous.x,t.right),t.left),o.controlPointPreviousY=Math.max(Math.min(r.previous.y,t.bottom),t.top),o.controlPointNextX=Math.max(Math.min(r.next.x,t.right),t.left),o.controlPointNextY=Math.max(Math.min(r.next.y,t.bottom),t.top),i.pivot()})},draw:function(t){var a=this.getMeta(),i=t||1;e.each(a.data,function(t){t.transition(i)}),a.dataset.transition(i).draw(),e.each(a.data,function(t){t.draw()})},setHoverStyle:function(t){var a=this.chart.data.datasets[t._datasetIndex],i=t.custom||{},n=t._index,o=t._model;o.radius=i.hoverRadius?i.hoverRadius:e.getValueAtIndexOrDefault(a.pointHoverRadius,n,this.chart.options.elements.point.hoverRadius),o.backgroundColor=i.hoverBackgroundColor?i.hoverBackgroundColor:e.getValueAtIndexOrDefault(a.pointHoverBackgroundColor,n,e.getHoverColor(o.backgroundColor)),o.borderColor=i.hoverBorderColor?i.hoverBorderColor:e.getValueAtIndexOrDefault(a.pointHoverBorderColor,n,e.getHoverColor(o.borderColor)),o.borderWidth=i.hoverBorderWidth?i.hoverBorderWidth:e.getValueAtIndexOrDefault(a.pointHoverBorderWidth,n,o.borderWidth)},removeHoverStyle:function(t){var a=this.chart.data.datasets[t._datasetIndex],i=t.custom||{},n=t._index,o=t._model,r=this.chart.options.elements.point;o.radius=i.radius?i.radius:e.getValueAtIndexOrDefault(a.radius,n,r.radius),o.backgroundColor=i.backgroundColor?i.backgroundColor:e.getValueAtIndexOrDefault(a.pointBackgroundColor,n,r.backgroundColor),o.borderColor=i.borderColor?i.borderColor:e.getValueAtIndexOrDefault(a.pointBorderColor,n,r.borderColor),o.borderWidth=i.borderWidth?i.borderWidth:e.getValueAtIndexOrDefault(a.pointBorderWidth,n,r.borderWidth)}})}},{}],21:[function(t,e,a){\"use strict\";e.exports=function(t){var e=t.helpers;t.defaults.global.animation={duration:1e3,easing:\"easeOutQuart\",onProgress:e.noop,onComplete:e.noop},t.Animation=t.Element.extend({currentStep:null,numSteps:60,easing:\"\",render:null,onAnimationProgress:null,onAnimationComplete:null}),t.animationService={frameDuration:17,animations:[],dropFrames:0,request:null,addAnimation:function(t,e,a,i){var n=this;i||(t.animating=!0);for(var o=0;o1&&(a=Math.floor(t.dropFrames),t.dropFrames=t.dropFrames%1);for(var i=0;it.animations[i].animationObject.numSteps&&(t.animations[i].animationObject.currentStep=t.animations[i].animationObject.numSteps),t.animations[i].animationObject.render(t.animations[i].chartInstance,t.animations[i].animationObject),t.animations[i].animationObject.onAnimationProgress&&t.animations[i].animationObject.onAnimationProgress.call&&t.animations[i].animationObject.onAnimationProgress.call(t.animations[i].chartInstance,t.animations[i]),t.animations[i].animationObject.currentStep===t.animations[i].animationObject.numSteps?(t.animations[i].animationObject.onAnimationComplete&&t.animations[i].animationObject.onAnimationComplete.call&&t.animations[i].animationObject.onAnimationComplete.call(t.animations[i].chartInstance,t.animations[i]),t.animations[i].chartInstance.animating=!1,t.animations.splice(i,1)):++i;var n=Date.now(),o=(n-e)/t.frameDuration;t.dropFrames+=o,t.animations.length>0&&t.requestAnimationFrame()}}}},{}],22:[function(t,e,a){\"use strict\";e.exports=function(t){var e=t.canvasHelpers={};e.drawPoint=function(e,a,i,n,o){var r,s,l,u,d,c;if(\"object\"==typeof a&&(r=a.toString(),\"[object HTMLImageElement]\"===r||\"[object HTMLCanvasElement]\"===r))return void e.drawImage(a,n-a.width/2,o-a.height/2);if(!(isNaN(i)||i<=0)){switch(a){default:e.beginPath(),e.arc(n,o,i,0,2*Math.PI),e.closePath(),e.fill();break;case\"triangle\":e.beginPath(),s=3*i/Math.sqrt(3),d=s*Math.sqrt(3)/2,e.moveTo(n-s/2,o+d/3),e.lineTo(n+s/2,o+d/3),e.lineTo(n,o-2*d/3),e.closePath(),e.fill();break;case\"rect\":c=1/Math.SQRT2*i,e.beginPath(),e.fillRect(n-c,o-c,2*c,2*c),e.strokeRect(n-c,o-c,2*c,2*c);break;case\"rectRounded\":var h=i/Math.SQRT2,f=n-h,g=o-h,p=Math.SQRT2*i;t.helpers.drawRoundedRectangle(e,f,g,p,p,i/2),e.fill();break;case\"rectRot\":c=1/Math.SQRT2*i,e.beginPath(),e.moveTo(n-c,o),e.lineTo(n,o+c),e.lineTo(n+c,o),e.lineTo(n,o-c),e.closePath(),e.fill();break;case\"cross\":e.beginPath(),e.moveTo(n,o+i),e.lineTo(n,o-i),e.moveTo(n-i,o),e.lineTo(n+i,o),e.closePath();break;case\"crossRot\":e.beginPath(),l=Math.cos(Math.PI/4)*i,u=Math.sin(Math.PI/4)*i,e.moveTo(n-l,o-u),e.lineTo(n+l,o+u),e.moveTo(n-l,o+u),e.lineTo(n+l,o-u),e.closePath();break;case\"star\":e.beginPath(),e.moveTo(n,o+i),e.lineTo(n,o-i),e.moveTo(n-i,o),e.lineTo(n+i,o),l=Math.cos(Math.PI/4)*i,u=Math.sin(Math.PI/4)*i,e.moveTo(n-l,o-u),e.lineTo(n+l,o+u),e.moveTo(n-l,o+u),e.lineTo(n+l,o-u),e.closePath();break;case\"line\":e.beginPath(),e.moveTo(n-i,o),e.lineTo(n+i,o),e.closePath();break;case\"dash\":e.beginPath(),e.moveTo(n,o),e.lineTo(n+i,o),e.closePath()}e.stroke()}},e.clipArea=function(t,e){t.save(),t.beginPath(),t.rect(e.left,e.top,e.right-e.left,e.bottom-e.top),t.clip()},e.unclipArea=function(t){t.restore()}}},{}],23:[function(t,e,a){\"use strict\";e.exports=function(t){function e(e){e=e||{};var a=e.data=e.data||{};return a.datasets=a.datasets||[],a.labels=a.labels||[],e.options=i.configMerge(t.defaults.global,t.defaults[e.type],e.options||{}),e}function a(t){var e=t.options;e.scale?t.scale.options=e.scale:e.scales&&e.scales.xAxes.concat(e.scales.yAxes).forEach(function(e){t.scales[e.id].options=e}),t.tooltip._options=e.tooltips}var i=t.helpers,n=t.plugins,o=t.platform;t.types={},t.instances={},t.controllers={},t.Controller=function(a,n,r){var s=this;n=e(n);var l=o.acquireContext(a,n),u=l&&l.canvas,d=u&&u.height,c=u&&u.width;return r.ctx=l,r.canvas=u,r.config=n,r.width=c,r.height=d,r.aspectRatio=d?c/d:null,s.id=i.uid(),s.chart=r,s.config=n,s.options=n.options,s._bufferedRender=!1,t.instances[s.id]=s,Object.defineProperty(s,\"data\",{get:function(){return s.config.data}}),l&&u?(s.initialize(),s.update(),s):(console.error(\"Failed to create chart: can't acquire context from the given item\"),s)},i.extend(t.Controller.prototype,{initialize:function(){var t=this;return n.notify(t,\"beforeInit\"),i.retinaScale(t.chart),t.bindEvents(),t.options.responsive&&t.resize(!0),t.ensureScalesHaveIDs(),t.buildScales(),t.initToolTip(),n.notify(t,\"afterInit\"),t},clear:function(){return i.clear(this.chart),this},stop:function(){return t.animationService.cancelAnimation(this),this},resize:function(t){var e=this,a=e.chart,o=e.options,r=a.canvas,s=o.maintainAspectRatio&&a.aspectRatio||null,l=Math.floor(i.getMaximumWidth(r)),u=Math.floor(s?l/s:i.getMaximumHeight(r));if((a.width!==l||a.height!==u)&&(r.width=a.width=l,r.height=a.height=u,r.style.width=l+\"px\",r.style.height=u+\"px\",i.retinaScale(a),!t)){var d={width:l,height:u};n.notify(e,\"resize\",[d]),e.options.onResize&&e.options.onResize(e,d),e.stop(),e.update(e.options.responsiveAnimationDuration)}},ensureScalesHaveIDs:function(){var t=this.options,e=t.scales||{},a=t.scale;i.each(e.xAxes,function(t,e){t.id=t.id||\"x-axis-\"+e}),i.each(e.yAxes,function(t,e){t.id=t.id||\"y-axis-\"+e}),a&&(a.id=a.id||\"scale\")},buildScales:function(){var e=this,a=e.options,n=e.scales={},o=[];a.scales&&(o=o.concat((a.scales.xAxes||[]).map(function(t){return{options:t,dtype:\"category\"}}),(a.scales.yAxes||[]).map(function(t){return{options:t,dtype:\"linear\"}}))),a.scale&&o.push({options:a.scale,dtype:\"radialLinear\",isDefault:!0}),i.each(o,function(a){var o=a.options,r=i.getValueOrDefault(o.type,a.dtype),s=t.scaleService.getScaleConstructor(r);if(s){var l=new s({id:o.id,options:o,ctx:e.chart.ctx,chart:e});n[l.id]=l,a.isDefault&&(e.scale=l)}}),t.scaleService.addScalesToLayout(this)},buildOrUpdateControllers:function(){var e=this,a=[],n=[];if(i.each(e.data.datasets,function(i,o){var r=e.getDatasetMeta(o);r.type||(r.type=i.type||e.config.type),a.push(r.type),r.controller?r.controller.updateIndex(o):(r.controller=new t.controllers[r.type](e,o),n.push(r.controller))},e),a.length>1)for(var o=1;o0||(n.forEach(function(e){delete t[e]}),delete t._chartjs)}}var i=t.helpers,n=[\"push\",\"pop\",\"shift\",\"splice\",\"unshift\"];t.DatasetController=function(t,e){this.initialize(t,e)},i.extend(t.DatasetController.prototype,{datasetElementType:null,dataElementType:null,initialize:function(t,e){var a=this;a.chart=t,a.index=e,a.linkScales(),a.addElements()},updateIndex:function(t){this.index=t},linkScales:function(){var t=this,e=t.getMeta(),a=t.getDataset();null===e.xAxisID&&(e.xAxisID=a.xAxisID||t.chart.options.scales.xAxes[0].id),null===e.yAxisID&&(e.yAxisID=a.yAxisID||t.chart.options.scales.yAxes[0].id)},getDataset:function(){return this.chart.data.datasets[this.index]},getMeta:function(){return this.chart.getDatasetMeta(this.index)},getScaleForId:function(t){return this.chart.scales[t]},reset:function(){this.update(!0)},destroy:function(){this._data&&a(this._data,this)},createMetaDataset:function(){var t=this,e=t.datasetElementType;return e&&new e({_chart:t.chart.chart,_datasetIndex:t.index})},createMetaData:function(t){var e=this,a=e.dataElementType;return a&&new a({_chart:e.chart.chart,_datasetIndex:e.index,_index:t})},addElements:function(){var t,e,a=this,i=a.getMeta(),n=a.getDataset().data||[],o=i.data;for(t=0,e=n.length;ti&&t.insertElements(i,n-i)},insertElements:function(t,e){for(var a=0;a=0;n--)e.call(a,t[n],n);else for(n=0;n=i[a].length||!i[a][n].type?i[a].push(o.configMerge(s,e)):e.type&&e.type!==i[a][n].type?i[a][n]=o.configMerge(i[a][n],s,e):i[a][n]=o.configMerge(i[a][n],e)}):(i[a]=[],o.each(e,function(e){var n=o.getValueOrDefault(e.type,\"xAxes\"===a?\"category\":\"linear\");i[a].push(o.configMerge(t.scaleService.getScaleDefaults(n),e))})):i.hasOwnProperty(a)&&\"object\"==typeof i[a]&&null!==i[a]&&\"object\"==typeof e?i[a]=o.configMerge(i[a],e):i[a]=e}),i},o.getValueAtIndexOrDefault=function(t,e,a){return void 0===t||null===t?a:o.isArray(t)?e=0;i--){var n=t[i];if(e(n))return n}},o.inherits=function(t){var e=this,a=t&&t.hasOwnProperty(\"constructor\")?t.constructor:function(){return e.apply(this,arguments)},i=function(){this.constructor=a};return i.prototype=e.prototype,a.prototype=new i,a.extend=o.inherits,t&&o.extend(a.prototype,t),a.__super__=e.prototype,a},o.noop=function(){},o.uid=function(){var t=0;return function(){return t++}}(),o.isNumber=function(t){return!isNaN(parseFloat(t))&&isFinite(t)},o.almostEquals=function(t,e,a){return Math.abs(t-e)t},o.max=function(t){return t.reduce(function(t,e){return isNaN(e)?t:Math.max(t,e)},Number.NEGATIVE_INFINITY)},o.min=function(t){return t.reduce(function(t,e){return isNaN(e)?t:Math.min(t,e)},Number.POSITIVE_INFINITY)},o.sign=Math.sign?function(t){return Math.sign(t)}:function(t){return t=+t,0===t||isNaN(t)?t:t>0?1:-1},o.log10=Math.log10?function(t){return Math.log10(t)}:function(t){return Math.log(t)/Math.LN10},o.toRadians=function(t){return t*(Math.PI/180)},o.toDegrees=function(t){return t*(180/Math.PI)},o.getAngleFromPoint=function(t,e){var a=e.x-t.x,i=e.y-t.y,n=Math.sqrt(a*a+i*i),o=Math.atan2(i,a);return o<-.5*Math.PI&&(o+=2*Math.PI),{angle:o,distance:n}},o.distanceBetweenPoints=function(t,e){return Math.sqrt(Math.pow(e.x-t.x,2)+Math.pow(e.y-t.y,2))},o.aliasPixel=function(t){return t%2===0?0:.5},o.splineCurve=function(t,e,a,i){var n=t.skip?e:t,o=e,r=a.skip?e:a,s=Math.sqrt(Math.pow(o.x-n.x,2)+Math.pow(o.y-n.y,2)),l=Math.sqrt(Math.pow(r.x-o.x,2)+Math.pow(r.y-o.y,2)),u=s/(s+l),d=l/(s+l);u=isNaN(u)?0:u,d=isNaN(d)?0:d;var c=i*u,h=i*d;return{previous:{x:o.x-c*(r.x-n.x),y:o.y-c*(r.y-n.y)},next:{x:o.x+h*(r.x-n.x),y:o.y+h*(r.y-n.y)}}},o.EPSILON=Number.EPSILON||1e-14,o.splineCurveMonotone=function(t){var e,a,i,n,r=(t||[]).map(function(t){return{model:t._model,deltaK:0,mK:0}}),s=r.length;for(e=0;e0?r[e-1]:null,n=e0?r[e-1]:null,n=e=t.length-1?t[0]:t[e+1]:e>=t.length-1?t[t.length-1]:t[e+1]},o.previousItem=function(t,e,a){return a?e<=0?t[t.length-1]:t[e-1]:e<=0?t[0]:t[e-1]},o.niceNum=function(t,e){var a,i=Math.floor(o.log10(t)),n=t/Math.pow(10,i);return a=e?n<1.5?1:n<3?2:n<7?5:10:n<=1?1:n<=2?2:n<=5?5:10,a*Math.pow(10,i)};var r=o.easingEffects={linear:function(t){return t},easeInQuad:function(t){return t*t},easeOutQuad:function(t){return-1*t*(t-2)},easeInOutQuad:function(t){return(t/=.5)<1?.5*t*t:-.5*(--t*(t-2)-1)},easeInCubic:function(t){return t*t*t},easeOutCubic:function(t){return 1*((t=t/1-1)*t*t+1)},easeInOutCubic:function(t){return(t/=.5)<1?.5*t*t*t:.5*((t-=2)*t*t+2)},easeInQuart:function(t){return t*t*t*t},easeOutQuart:function(t){return-1*((t=t/1-1)*t*t*t-1)},easeInOutQuart:function(t){return(t/=.5)<1?.5*t*t*t*t:-.5*((t-=2)*t*t*t-2)},easeInQuint:function(t){return 1*(t/=1)*t*t*t*t},easeOutQuint:function(t){return 1*((t=t/1-1)*t*t*t*t+1)},easeInOutQuint:function(t){return(t/=.5)<1?.5*t*t*t*t*t:.5*((t-=2)*t*t*t*t+2)},easeInSine:function(t){return-1*Math.cos(t/1*(Math.PI/2))+1},easeOutSine:function(t){return 1*Math.sin(t/1*(Math.PI/2))},easeInOutSine:function(t){return-.5*(Math.cos(Math.PI*t/1)-1)},easeInExpo:function(t){return 0===t?1:1*Math.pow(2,10*(t/1-1))},easeOutExpo:function(t){return 1===t?1:1*(-Math.pow(2,-10*t/1)+1)},easeInOutExpo:function(t){return 0===t?0:1===t?1:(t/=.5)<1?.5*Math.pow(2,10*(t-1)):.5*(-Math.pow(2,-10*--t)+2)},easeInCirc:function(t){return t>=1?t:-1*(Math.sqrt(1-(t/=1)*t)-1)},easeOutCirc:function(t){return 1*Math.sqrt(1-(t=t/1-1)*t)},easeInOutCirc:function(t){return(t/=.5)<1?-.5*(Math.sqrt(1-t*t)-1):.5*(Math.sqrt(1-(t-=2)*t)+1)},easeInElastic:function(t){var e=1.70158,a=0,i=1;return 0===t?0:1===(t/=1)?1:(a||(a=.3),i0?(a=l[0].clientX,i=l[0].clientY):(a=n.clientX,i=n.clientY);var u=parseFloat(o.getStyle(r,\"padding-left\")),d=parseFloat(o.getStyle(r,\"padding-top\")),c=parseFloat(o.getStyle(r,\"padding-right\")),h=parseFloat(o.getStyle(r,\"padding-bottom\")),f=s.right-s.left-u-c,g=s.bottom-s.top-d-h;return a=Math.round((a-s.left-u)/f*r.width/e.currentDevicePixelRatio),i=Math.round((i-s.top-d)/g*r.height/e.currentDevicePixelRatio),{x:a,y:i}},o.addEvent=function(t,e,a){t.addEventListener?t.addEventListener(e,a):t.attachEvent?t.attachEvent(\"on\"+e,a):t[\"on\"+e]=a},o.removeEvent=function(t,e,a){t.removeEventListener?t.removeEventListener(e,a,!1):t.detachEvent?t.detachEvent(\"on\"+e,a):t[\"on\"+e]=o.noop},o.getConstraintWidth=function(t){return n(t,\"max-width\",\"clientWidth\")},o.getConstraintHeight=function(t){return n(t,\"max-height\",\"clientHeight\")},o.getMaximumWidth=function(t){var e=t.parentNode,a=parseInt(o.getStyle(e,\"padding-left\"),10),i=parseInt(o.getStyle(e,\"padding-right\"),10),n=e.clientWidth-a-i,r=o.getConstraintWidth(t);return isNaN(r)?n:Math.min(n,r)},o.getMaximumHeight=function(t){var e=t.parentNode,a=parseInt(o.getStyle(e,\"padding-top\"),10),i=parseInt(o.getStyle(e,\"padding-bottom\"),10),n=e.clientHeight-a-i,r=o.getConstraintHeight(t);return isNaN(r)?n:Math.min(n,r)},o.getStyle=function(t,e){return t.currentStyle?t.currentStyle[e]:document.defaultView.getComputedStyle(t,null).getPropertyValue(e)},o.retinaScale=function(t){var e=t.currentDevicePixelRatio=window.devicePixelRatio||1;if(1!==e){var a=t.canvas,i=t.height,n=t.width;a.height=i*e,a.width=n*e,t.ctx.scale(e,e),a.style.height=i+\"px\",a.style.width=n+\"px\"}},o.clear=function(t){t.ctx.clearRect(0,0,t.width,t.height)},o.fontString=function(t,e,a){return e+\" \"+t+\"px \"+a},o.longestText=function(t,e,a,i){i=i||{};var n=i.data=i.data||{},r=i.garbageCollect=i.garbageCollect||[];i.font!==e&&(n=i.data={},r=i.garbageCollect=[],i.font=e),t.font=e;var s=0;o.each(a,function(e){void 0!==e&&null!==e&&o.isArray(e)!==!0?s=o.measureText(t,n,r,s,e):o.isArray(e)&&o.each(e,function(e){void 0===e||null===e||o.isArray(e)||(s=o.measureText(t,n,r,s,e))})});var l=r.length/2;if(l>a.length){for(var u=0;ui&&(i=o),i},o.numberOfLabelLines=function(t){var e=1;return o.each(t,function(t){o.isArray(t)&&t.length>e&&(e=t.length)}),e},o.drawRoundedRectangle=function(t,e,a,i,n,o){t.beginPath(),t.moveTo(e+o,a),t.lineTo(e+i-o,a),t.quadraticCurveTo(e+i,a,e+i,a+o),t.lineTo(e+i,a+n-o),t.quadraticCurveTo(e+i,a+n,e+i-o,a+n),t.lineTo(e+o,a+n),t.quadraticCurveTo(e,a+n,e,a+n-o),t.lineTo(e,a+o),t.quadraticCurveTo(e,a,e+o,a),t.closePath()},o.color=function(e){return i?i(e instanceof CanvasGradient?t.defaults.global.defaultColor:e):(console.error(\"Color.js not found!\"),e)},o.isArray=Array.isArray?function(t){return Array.isArray(t)}:function(t){return\"[object Array]\"===Object.prototype.toString.call(t)},o.arrayEquals=function(t,e){var a,i,n,r;if(!t||!e||t.length!==e.length)return!1;for(a=0,i=t.length;a0&&(s=t.getDatasetMeta(s[0]._datasetIndex).data),s},\"x-axis\":function(t,e){return o(t,e,!0)},point:function(t,a){var n=e(a,t.chart);return i(t,n)},nearest:function(t,a,i){var o=e(a,t.chart),r=n(t,o,i.intersect);return r.length>1&&r.sort(function(t,e){var a=t.getArea(),i=e.getArea(),n=a-i;return 0===n&&(n=t._datasetIndex-e._datasetIndex),n}),r.slice(0,1)},x:function(t,i,n){var o=e(i,t.chart),r=[],s=!1;return a(t,function(t){t.inXRange(o.x)&&r.push(t),t.inRange(o.x,o.y)&&(s=!0)}),n.intersect&&!s&&(r=[]),r},y:function(t,i,n){var o=e(i,t.chart),r=[],s=!1;return a(t,function(t){t.inYRange(o.y)&&r.push(t),t.inRange(o.x,o.y)&&(s=!0)}),n.intersect&&!s&&(r=[]),r}}}}},{}],28:[function(t,e,a){\"use strict\";e.exports=function(){var t=function(e,a){return this.controller=new t.Controller(e,a,this),this.controller};return t.defaults={global:{responsive:!0,responsiveAnimationDuration:0,maintainAspectRatio:!0,events:[\"mousemove\",\"mouseout\",\"click\",\"touchstart\",\"touchmove\"],hover:{onHover:null,mode:\"nearest\",intersect:!0,animationDuration:400},onClick:null,defaultColor:\"rgba(0,0,0,0.1)\",defaultFontColor:\"#666\",defaultFontFamily:\"'Helvetica Neue', 'Helvetica', 'Arial', sans-serif\",defaultFontSize:12,defaultFontStyle:\"normal\",showLines:!0,elements:{},legendCallback:function(t){var e=[];e.push('
      ');for(var a=0;a'),t.data.datasets[a].label&&e.push(t.data.datasets[a].label),e.push(\"\");return e.push(\"
    \"),e.join(\"\")}}},t.Chart=t,t}},{}],29:[function(t,e,a){\"use strict\";e.exports=function(t){var e=t.helpers;t.layoutService={defaults:{},addBox:function(t,e){t.boxes||(t.boxes=[]),t.boxes.push(e)},removeBox:function(t,e){t.boxes&&t.boxes.splice(t.boxes.indexOf(e),1)},update:function(t,a,i){function n(t){var e,a=t.isHorizontal();a?(e=t.update(t.options.fullWidth?x:C,w),I-=e.height):(e=t.update(M,S),C-=e.width),D.push({horizontal:a,minSize:e,box:t})}function o(t){var a=e.findNextWhere(D,function(e){return e.box===t});if(a)if(t.isHorizontal()){var i={left:Math.max(F,A),right:Math.max(V,T),top:0,bottom:0};t.update(t.options.fullWidth?x:C,y/2,i)}else t.update(a.minSize.width,I)}function r(t){var a=e.findNextWhere(D,function(e){return e.box===t}),i={left:0,right:0,top:R,bottom:O};a&&t.update(a.minSize.width,I,i)}function s(t){t.isHorizontal()?(t.left=t.options.fullWidth?d:F,t.right=t.options.fullWidth?a-c:F+C,t.top=E,t.bottom=E+t.height,E=t.bottom):(t.left=N,t.right=N+t.width,t.top=R,t.bottom=R+I,N=t.right)}if(t){var l=t.options.layout,u=l?l.padding:null,d=0,c=0,h=0,f=0;isNaN(u)?(d=u.left||0,c=u.right||0,h=u.top||0,f=u.bottom||0):(d=u,c=u,h=u,f=u);var g=e.where(t.boxes,function(t){return\"left\"===t.options.position}),p=e.where(t.boxes,function(t){return\"right\"===t.options.position}),m=e.where(t.boxes,function(t){return\"top\"===t.options.position}),v=e.where(t.boxes,function(t){return\"bottom\"===t.options.position}),b=e.where(t.boxes,function(t){return\"chartArea\"===t.options.position});m.sort(function(t,e){return(e.options.fullWidth?1:0)-(t.options.fullWidth?1:0)}),v.sort(function(t,e){return(t.options.fullWidth?1:0)-(e.options.fullWidth?1:0)});var x=a-d-c,y=i-h-f,k=x/2,S=y/2,M=(a-k)/(g.length+p.length),w=(i-S)/(m.length+v.length),C=x,I=y,D=[];e.each(g.concat(p,m,v),n);var A=0,T=0,P=0,_=0;e.each(m.concat(v),function(t){if(t.getPadding){var e=t.getPadding();A=Math.max(A,e.left),T=Math.max(T,e.right)}}),e.each(g.concat(p),function(t){if(t.getPadding){var e=t.getPadding();P=Math.max(P,e.top),_=Math.max(_,e.bottom)}});var F=d,V=c,R=h,O=f;e.each(g.concat(p),o),e.each(g,function(t){F+=t.width}),e.each(p,function(t){V+=t.width}),e.each(m.concat(v),o),e.each(m,function(t){R+=t.height}),e.each(v,function(t){O+=t.height}),e.each(g.concat(p),r),F=d,V=c,R=h,O=f,e.each(g,function(t){F+=t.width}),e.each(p,function(t){V+=t.width}),e.each(m,function(t){R+=t.height}),e.each(v,function(t){O+=t.height});var L=Math.max(A-F,0);F+=L,V+=Math.max(T-V,0);var B=Math.max(P-R,0);R+=B,O+=Math.max(_-O,0);var z=i-R-O,W=a-F-V;W===C&&z===I||(e.each(g,function(t){t.height=z}),e.each(p,function(t){t.height=z}),e.each(m,function(t){t.options.fullWidth||(t.width=W)}),e.each(v,function(t){t.options.fullWidth||(t.width=W)}),I=z,C=W);var N=d+L,E=h+B;e.each(g.concat(m),s),N+=C,E+=I,e.each(p,s),e.each(v,s),t.chartArea={left:F,top:R,right:F+C,bottom:R+I},e.each(b,function(e){e.left=t.chartArea.left,e.top=t.chartArea.top,e.right=t.chartArea.right,e.bottom=t.chartArea.bottom,e.update(C,I)})}}}}},{}],30:[function(t,e,a){\"use strict\";e.exports=function(t){function e(t,e){return t.usePointStyle?e*Math.SQRT2:t.boxWidth}function a(e,a){var i=new t.Legend({ctx:e.chart.ctx,options:a,chart:e});e.legend=i,t.layoutService.addBox(e,i)}var i=t.helpers,n=i.noop;t.defaults.global.legend={display:!0,position:\"top\",fullWidth:!0,reverse:!1,onClick:function(t,e){var a=e.datasetIndex,i=this.chart,n=i.getDatasetMeta(a);n.hidden=null===n.hidden?!i.data.datasets[a].hidden:null,i.update()},onHover:null,labels:{boxWidth:40,padding:10,generateLabels:function(t){var e=t.data;return i.isArray(e.datasets)?e.datasets.map(function(e,a){return{text:e.label,fillStyle:i.isArray(e.backgroundColor)?e.backgroundColor[0]:e.backgroundColor,hidden:!t.isDatasetVisible(a),lineCap:e.borderCapStyle,lineDash:e.borderDash,lineDashOffset:e.borderDashOffset,lineJoin:e.borderJoinStyle,lineWidth:e.borderWidth,strokeStyle:e.borderColor,pointStyle:e.pointStyle,datasetIndex:a}},this):[]}}},t.Legend=t.Element.extend({initialize:function(t){i.extend(this,t),this.legendHitBoxes=[],this.doughnutMode=!1},beforeUpdate:n,update:function(t,e,a){var i=this;return i.beforeUpdate(),i.maxWidth=t,i.maxHeight=e,i.margins=a,i.beforeSetDimensions(),i.setDimensions(),i.afterSetDimensions(),i.beforeBuildLabels(),i.buildLabels(),i.afterBuildLabels(),i.beforeFit(),i.fit(),i.afterFit(),i.afterUpdate(),i.minSize},afterUpdate:n,beforeSetDimensions:n,setDimensions:function(){var t=this;t.isHorizontal()?(t.width=t.maxWidth,t.left=0,t.right=t.width):(t.height=t.maxHeight,t.top=0,t.bottom=t.height),t.paddingLeft=0,t.paddingTop=0,t.paddingRight=0,t.paddingBottom=0,t.minSize={width:0,height:0}},afterSetDimensions:n,beforeBuildLabels:n,buildLabels:function(){var t=this,e=t.options.labels,a=e.generateLabels.call(t,t.chart);e.filter&&(a=a.filter(function(a){return e.filter(a,t.chart.data)})),t.options.reverse&&a.reverse(),t.legendItems=a},afterBuildLabels:n,beforeFit:n,fit:function(){var a=this,n=a.options,o=n.labels,r=n.display,s=a.ctx,l=t.defaults.global,u=i.getValueOrDefault,d=u(o.fontSize,l.defaultFontSize),c=u(o.fontStyle,l.defaultFontStyle),h=u(o.fontFamily,l.defaultFontFamily),f=i.fontString(d,c,h),g=a.legendHitBoxes=[],p=a.minSize,m=a.isHorizontal();if(m?(p.width=a.maxWidth,p.height=r?10:0):(p.width=r?10:0,p.height=a.maxHeight),r)if(s.font=f,m){var v=a.lineWidths=[0],b=a.legendItems.length?d+o.padding:0;s.textAlign=\"left\",s.textBaseline=\"top\",i.each(a.legendItems,function(t,i){var n=e(o,d),r=n+d/2+s.measureText(t.text).width;v[v.length-1]+r+o.padding>=a.width&&(b+=d+o.padding,v[v.length]=a.left),g[i]={left:0,top:0,width:r,height:d},v[v.length-1]+=r+o.padding}),p.height+=b}else{var x=o.padding,y=a.columnWidths=[],k=o.padding,S=0,M=0,w=d+x;i.each(a.legendItems,function(t,a){var i=e(o,d),n=i+d/2+s.measureText(t.text).width;M+w>p.height&&(k+=S+o.padding,y.push(S),S=0,M=0),S=Math.max(S,n),M+=w,g[a]={left:0,top:0,width:n,height:d}}),k+=S,y.push(S),p.width+=k}a.width=p.width,a.height=p.height},afterFit:n,isHorizontal:function(){return\"top\"===this.options.position||\"bottom\"===this.options.position},draw:function(){var a=this,n=a.options,o=n.labels,r=t.defaults.global,s=r.elements.line,l=a.width,u=a.lineWidths;if(n.display){var d,c=a.ctx,h=i.getValueOrDefault,f=h(o.fontColor,r.defaultFontColor),g=h(o.fontSize,r.defaultFontSize),p=h(o.fontStyle,r.defaultFontStyle),m=h(o.fontFamily,r.defaultFontFamily),v=i.fontString(g,p,m);c.textAlign=\"left\",c.textBaseline=\"top\",c.lineWidth=.5,c.strokeStyle=f,c.fillStyle=f,c.font=v;var b=e(o,g),x=a.legendHitBoxes,y=function(e,a,i){if(!(isNaN(b)||b<=0)){c.save(),c.fillStyle=h(i.fillStyle,r.defaultColor),c.lineCap=h(i.lineCap,s.borderCapStyle),c.lineDashOffset=h(i.lineDashOffset,s.borderDashOffset),c.lineJoin=h(i.lineJoin,s.borderJoinStyle),c.lineWidth=h(i.lineWidth,s.borderWidth),c.strokeStyle=h(i.strokeStyle,r.defaultColor);var o=0===h(i.lineWidth,s.borderWidth);if(c.setLineDash&&c.setLineDash(h(i.lineDash,s.borderDash)),n.labels&&n.labels.usePointStyle){var l=g*Math.SQRT2/2,u=l/Math.SQRT2,d=e+u,f=a+u;t.canvasHelpers.drawPoint(c,i.pointStyle,l,d,f)}else o||c.strokeRect(e,a,b,g),c.fillRect(e,a,b,g);c.restore()}},k=function(t,e,a,i){c.fillText(a.text,b+g/2+t,e),a.hidden&&(c.beginPath(),c.lineWidth=2,c.moveTo(b+g/2+t,e+g/2),c.lineTo(b+g/2+t+i,e+g/2),c.stroke())},S=a.isHorizontal();d=S?{x:a.left+(l-u[0])/2,y:a.top+o.padding,line:0}:{x:a.left+o.padding,y:a.top+o.padding,line:0};var M=g+o.padding;i.each(a.legendItems,function(t,e){var i=c.measureText(t.text).width,n=b+g/2+i,r=d.x,s=d.y;S?r+n>=l&&(s=d.y+=M,d.line++,r=d.x=a.left+(l-u[d.line])/2):s+M>a.bottom&&(r=d.x=r+a.columnWidths[d.line]+o.padding,s=d.y=a.top+o.padding,d.line++),y(r,s,t),x[e].left=r,x[e].top=s,k(r,s,t,i),S?d.x+=n+o.padding:d.y+=M})}},handleEvent:function(t){var e=this,a=e.options,i=\"mouseup\"===t.type?\"click\":t.type,n=!1;if(\"mousemove\"===i){if(!a.onHover)return}else{if(\"click\"!==i)return;if(!a.onClick)return}var o=t.x,r=t.y;if(o>=e.left&&o<=e.right&&r>=e.top&&r<=e.bottom)for(var s=e.legendHitBoxes,l=0;l=u.left&&o<=u.left+u.width&&r>=u.top&&r<=u.top+u.height){if(\"click\"===i){a.onClick.call(e,t.native,e.legendItems[l]),n=!0;break}if(\"mousemove\"===i){a.onHover.call(e,t.native,e.legendItems[l]),n=!0;break}}}return n}}),t.plugins.register({beforeInit:function(t){var e=t.options.legend;e&&a(t,e)},beforeUpdate:function(e){var n=e.options.legend;n?(n=i.configMerge(t.defaults.global.legend,n),e.legend?e.legend.options=n:a(e,n)):(t.layoutService.removeBox(e,e.legend),delete e.legend)},afterEvent:function(t,e){var a=t.legend;a&&a.handleEvent(e)}})}},{}],31:[function(t,e,a){\"use strict\";e.exports=function(t){var e=t.helpers;t.defaults.global.plugins={},t.plugins={_plugins:[],_cacheId:0,register:function(t){var e=this._plugins;[].concat(t).forEach(function(t){e.indexOf(t)===-1&&e.push(t)}),this._cacheId++},unregister:function(t){var e=this._plugins;[].concat(t).forEach(function(t){var a=e.indexOf(t);a!==-1&&e.splice(a,1)}),this._cacheId++},clear:function(){this._plugins=[],this._cacheId++},count:function(){return this._plugins.length;\r\n},getAll:function(){return this._plugins},notify:function(t,e,a){var i,n,o,r,s,l=this.descriptors(t),u=l.length;for(i=0;ic&&rt.maxHeight){r--;break}r++,d=s*u}t.labelRotation=r},afterCalculateTickRotation:function(){i.callCallback(this.options.afterCalculateTickRotation,[this])},beforeFit:function(){i.callCallback(this.options.beforeFit,[this])},fit:function(){var t=this,n=t.minSize={width:0,height:0},o=t.options,r=o.ticks,s=o.scaleLabel,l=o.gridLines,u=o.display,d=t.isHorizontal(),c=a(r),h=1.5*a(s).size,f=o.gridLines.tickMarkLength;if(d?n.width=t.isFullWidth()?t.maxWidth-t.margins.left-t.margins.right:t.maxWidth:n.width=u&&l.drawTicks?f:0,d?n.height=u&&l.drawTicks?f:0:n.height=t.maxHeight,s.display&&u&&(d?n.height+=h:n.width+=h),r.display&&u){var g=i.longestText(t.ctx,c.font,t.ticks,t.longestTextCache),p=i.numberOfLabelLines(t.ticks),m=.5*c.size;if(d){t.longestLabelWidth=g;var v=i.toRadians(t.labelRotation),b=Math.cos(v),x=Math.sin(v),y=x*g+c.size*p+m*p;n.height=Math.min(t.maxHeight,n.height+y),t.ctx.font=c.font;var k=t.ticks[0],S=e(t.ctx,k,c.font),M=t.ticks[t.ticks.length-1],w=e(t.ctx,M,c.font);0!==t.labelRotation?(t.paddingLeft=\"bottom\"===o.position?b*S+3:b*m+3,t.paddingRight=\"bottom\"===o.position?b*m+3:b*w+3):(t.paddingLeft=S/2+3,t.paddingRight=w/2+3)}else r.mirror?g=0:g+=t.options.ticks.padding,n.width+=g,t.paddingTop=c.size/2,t.paddingBottom=c.size/2}t.handleMargins(),t.width=n.width,t.height=n.height},handleMargins:function(){var t=this;t.margins&&(t.paddingLeft=Math.max(t.paddingLeft-t.margins.left,0),t.paddingTop=Math.max(t.paddingTop-t.margins.top,0),t.paddingRight=Math.max(t.paddingRight-t.margins.right,0),t.paddingBottom=Math.max(t.paddingBottom-t.margins.bottom,0))},afterFit:function(){i.callCallback(this.options.afterFit,[this])},isHorizontal:function(){return\"top\"===this.options.position||\"bottom\"===this.options.position},isFullWidth:function(){return this.options.fullWidth},getRightValue:function(t){return null===t||\"undefined\"==typeof t?NaN:\"number\"!=typeof t||isFinite(t)?\"object\"==typeof t?t instanceof Date||t.isValid?t:this.getRightValue(this.isHorizontal()?t.x:t.y):t:NaN},getLabelForIndex:i.noop,getPixelForValue:i.noop,getValueForPixel:i.noop,getPixelForTick:function(t,e){var a=this;if(a.isHorizontal()){var i=a.width-(a.paddingLeft+a.paddingRight),n=i/Math.max(a.ticks.length-(a.options.gridLines.offsetGridLines?0:1),1),o=n*t+a.paddingLeft;e&&(o+=n/2);var r=a.left+Math.round(o);return r+=a.isFullWidth()?a.margins.left:0}var s=a.height-(a.paddingTop+a.paddingBottom);return a.top+t*(s/(a.ticks.length-1))},getPixelForDecimal:function(t){var e=this;if(e.isHorizontal()){var a=e.width-(e.paddingLeft+e.paddingRight),i=a*t+e.paddingLeft,n=e.left+Math.round(i);return n+=e.isFullWidth()?e.margins.left:0}return e.top+t*e.height},getBasePixel:function(){return this.getPixelForValue(this.getBaseValue())},getBaseValue:function(){var t=this,e=t.min,a=t.max;return t.beginAtZero?0:e<0&&a<0?a:e>0&&a>0?e:0},draw:function(e){var n=this,o=n.options;if(o.display){var r,s,l=n.ctx,u=t.defaults.global,d=o.ticks,c=o.gridLines,h=o.scaleLabel,f=0!==n.labelRotation,g=d.autoSkip,p=n.isHorizontal();d.maxTicksLimit&&(s=d.maxTicksLimit);var m=i.getValueOrDefault(d.fontColor,u.defaultFontColor),v=a(d),b=c.drawTicks?c.tickMarkLength:0,x=i.getValueOrDefault(c.borderDash,u.borderDash),y=i.getValueOrDefault(c.borderDashOffset,u.borderDashOffset),k=i.getValueOrDefault(h.fontColor,u.defaultFontColor),S=a(h),M=i.toRadians(n.labelRotation),w=Math.cos(M),C=n.longestLabelWidth*w;l.fillStyle=m;var I=[];if(p){if(r=!1,f&&(C/=2),(C+d.autoSkipPadding)*n.ticks.length>n.width-(n.paddingLeft+n.paddingRight)&&(r=1+Math.floor((C+d.autoSkipPadding)*n.ticks.length/(n.width-(n.paddingLeft+n.paddingRight)))),s&&n.ticks.length>s)for(;!r||n.ticks.length/(r||1)>s;)r||(r=1),r+=1;g||(r=!1)}var D=\"right\"===o.position?n.left:n.right-b,A=\"right\"===o.position?n.left+b:n.right,T=\"bottom\"===o.position?n.top:n.bottom-b,P=\"bottom\"===o.position?n.top+b:n.bottom;if(i.each(n.ticks,function(t,a){if(void 0!==t&&null!==t){var s=n.ticks.length===a+1,l=r>1&&a%r>0||a%r===0&&a+r>=n.ticks.length;if((!l||s)&&void 0!==t&&null!==t){var u,h;a===(\"undefined\"!=typeof n.zeroLineIndex?n.zeroLineIndex:0)?(u=c.zeroLineWidth,h=c.zeroLineColor):(u=i.getValueAtIndexOrDefault(c.lineWidth,a),h=i.getValueAtIndexOrDefault(c.color,a));var g,m,v,k,S,w,C,_,F,V,R=\"middle\",O=\"middle\";if(p){\"bottom\"===o.position?(O=f?\"middle\":\"top\",R=f?\"right\":\"center\",V=n.top+b):(O=f?\"middle\":\"bottom\",R=f?\"left\":\"center\",V=n.bottom-b);var L=n.getPixelForTick(a)+i.aliasPixel(u);F=n.getPixelForTick(a,c.offsetGridLines)+d.labelOffset,g=v=S=C=L,m=T,k=P,w=e.top,_=e.bottom}else{var B,z=\"left\"===o.position,W=d.padding;d.mirror?(R=z?\"left\":\"right\",B=W):(R=z?\"right\":\"left\",B=b+W),F=z?n.right-B:n.left+B;var N=n.getPixelForTick(a);N+=i.aliasPixel(u),V=n.getPixelForTick(a,c.offsetGridLines),g=D,v=A,S=e.left,C=e.right,m=k=w=_=N}I.push({tx1:g,ty1:m,tx2:v,ty2:k,x1:S,y1:w,x2:C,y2:_,labelX:F,labelY:V,glWidth:u,glColor:h,glBorderDash:x,glBorderDashOffset:y,rotation:-1*M,label:t,textBaseline:O,textAlign:R})}}}),i.each(I,function(t){if(c.display&&(l.save(),l.lineWidth=t.glWidth,l.strokeStyle=t.glColor,l.setLineDash&&(l.setLineDash(t.glBorderDash),l.lineDashOffset=t.glBorderDashOffset),l.beginPath(),c.drawTicks&&(l.moveTo(t.tx1,t.ty1),l.lineTo(t.tx2,t.ty2)),c.drawOnChartArea&&(l.moveTo(t.x1,t.y1),l.lineTo(t.x2,t.y2)),l.stroke(),l.restore()),d.display){l.save(),l.translate(t.labelX,t.labelY),l.rotate(t.rotation),l.font=v.font,l.textBaseline=t.textBaseline,l.textAlign=t.textAlign;var e=t.label;if(i.isArray(e))for(var a=0,n=0;a0)i=t.stepSize;else{var o=e.niceNum(a.max-a.min,!1);i=e.niceNum(o/(t.maxTicks-1),!0)}var r=Math.floor(a.min/i)*i,s=Math.ceil(a.max/i)*i;t.min&&t.max&&t.stepSize&&e.almostWhole((t.max-t.min)/t.stepSize,i/1e3)&&(r=t.min,s=t.max);var l=(s-r)/i;l=e.almostEquals(l,Math.round(l),i/1e3)?Math.round(l):Math.ceil(l),n.push(void 0!==t.min?t.min:r);for(var u=1;u3?i[2]-i[1]:i[1]-i[0];Math.abs(n)>1&&t!==Math.floor(t)&&(n=t-Math.floor(t));var o=e.log10(Math.abs(n)),r=\"\";if(0!==t){var s=-1*Math.floor(o);s=Math.max(Math.min(s,20),0),r=t.toFixed(s)}else r=\"0\";return r},logarithmic:function(t,a,i){var n=t/Math.pow(10,Math.floor(e.log10(t)));return 0===t?\"0\":1===n||2===n||5===n||0===a||a===i.length-1?t.toExponential():\"\"}}}}},{}],35:[function(t,e,a){\"use strict\";e.exports=function(t){function e(e,a){var i=new t.Title({ctx:e.chart.ctx,options:a,chart:e});e.titleBlock=i,t.layoutService.addBox(e,i)}var a=t.helpers;t.defaults.global.title={display:!1,position:\"top\",fullWidth:!0,fontStyle:\"bold\",padding:10,text:\"\"};var i=a.noop;t.Title=t.Element.extend({initialize:function(t){var e=this;a.extend(e,t),e.legendHitBoxes=[]},beforeUpdate:i,update:function(t,e,a){var i=this;return i.beforeUpdate(),i.maxWidth=t,i.maxHeight=e,i.margins=a,i.beforeSetDimensions(),i.setDimensions(),i.afterSetDimensions(),i.beforeBuildLabels(),i.buildLabels(),i.afterBuildLabels(),i.beforeFit(),i.fit(),i.afterFit(),i.afterUpdate(),i.minSize},afterUpdate:i,beforeSetDimensions:i,setDimensions:function(){var t=this;t.isHorizontal()?(t.width=t.maxWidth,t.left=0,t.right=t.width):(t.height=t.maxHeight,t.top=0,t.bottom=t.height),t.paddingLeft=0,t.paddingTop=0,t.paddingRight=0,t.paddingBottom=0,t.minSize={width:0,height:0}},afterSetDimensions:i,beforeBuildLabels:i,buildLabels:i,afterBuildLabels:i,beforeFit:i,fit:function(){var e=this,i=a.getValueOrDefault,n=e.options,o=t.defaults.global,r=n.display,s=i(n.fontSize,o.defaultFontSize),l=e.minSize;e.isHorizontal()?(l.width=e.maxWidth,l.height=r?s+2*n.padding:0):(l.width=r?s+2*n.padding:0,l.height=e.maxHeight),e.width=l.width,e.height=l.height},afterFit:i,isHorizontal:function(){var t=this.options.position;return\"top\"===t||\"bottom\"===t},draw:function(){var e=this,i=e.ctx,n=a.getValueOrDefault,o=e.options,r=t.defaults.global;if(o.display){var s,l,u,d=n(o.fontSize,r.defaultFontSize),c=n(o.fontStyle,r.defaultFontStyle),h=n(o.fontFamily,r.defaultFontFamily),f=a.fontString(d,c,h),g=0,p=e.top,m=e.left,v=e.bottom,b=e.right;i.fillStyle=n(o.fontColor,r.defaultFontColor),i.font=f,e.isHorizontal()?(s=m+(b-m)/2,l=p+(v-p)/2,u=b-m):(s=\"left\"===o.position?m+d/2:b-d/2,l=p+(v-p)/2,u=v-p,g=Math.PI*(\"left\"===o.position?-.5:.5)),i.save(),i.translate(s,l),i.rotate(g),i.textAlign=\"center\",i.textBaseline=\"middle\",i.fillText(o.text,0,0,u),i.restore()}}}),t.plugins.register({beforeInit:function(t){var a=t.options.title;a&&e(t,a)},beforeUpdate:function(i){var n=i.options.title;n?(n=a.configMerge(t.defaults.global.title,n),i.titleBlock?i.titleBlock.options=n:e(i,n)):(t.layoutService.removeBox(i,i.titleBlock),delete i.titleBlock)}})}},{}],36:[function(t,e,a){\"use strict\";e.exports=function(t){function e(t,e){var a=l.color(t);return a.alpha(e*a.alpha()).rgbaString()}function a(t,e){return e&&(l.isArray(e)?Array.prototype.push.apply(t,e):t.push(e)),t}function i(t){var e=t._xScale,a=t._yScale||t._scale,i=t._index,n=t._datasetIndex;return{xLabel:e?e.getLabelForIndex(i,n):\"\",yLabel:a?a.getLabelForIndex(i,n):\"\",index:i,datasetIndex:n,x:t._model.x,y:t._model.y}}function n(e){var a=t.defaults.global,i=l.getValueOrDefault;return{xPadding:e.xPadding,yPadding:e.yPadding,xAlign:e.xAlign,yAlign:e.yAlign,bodyFontColor:e.bodyFontColor,_bodyFontFamily:i(e.bodyFontFamily,a.defaultFontFamily),_bodyFontStyle:i(e.bodyFontStyle,a.defaultFontStyle),_bodyAlign:e.bodyAlign,bodyFontSize:i(e.bodyFontSize,a.defaultFontSize),bodySpacing:e.bodySpacing,titleFontColor:e.titleFontColor,_titleFontFamily:i(e.titleFontFamily,a.defaultFontFamily),_titleFontStyle:i(e.titleFontStyle,a.defaultFontStyle),titleFontSize:i(e.titleFontSize,a.defaultFontSize),_titleAlign:e.titleAlign,titleSpacing:e.titleSpacing,titleMarginBottom:e.titleMarginBottom,footerFontColor:e.footerFontColor,_footerFontFamily:i(e.footerFontFamily,a.defaultFontFamily),_footerFontStyle:i(e.footerFontStyle,a.defaultFontStyle),footerFontSize:i(e.footerFontSize,a.defaultFontSize),_footerAlign:e.footerAlign,footerSpacing:e.footerSpacing,footerMarginTop:e.footerMarginTop,caretSize:e.caretSize,cornerRadius:e.cornerRadius,backgroundColor:e.backgroundColor,opacity:0,legendColorBackground:e.multiKeyBackground,displayColors:e.displayColors}}function o(t,e){var a=t._chart.ctx,i=2*e.yPadding,n=0,o=e.body,r=o.reduce(function(t,e){return t+e.before.length+e.lines.length+e.after.length},0);r+=e.beforeBody.length+e.afterBody.length;var s=e.title.length,u=e.footer.length,d=e.titleFontSize,c=e.bodyFontSize,h=e.footerFontSize;i+=s*d,i+=s?(s-1)*e.titleSpacing:0,i+=s?e.titleMarginBottom:0,i+=r*c,i+=r?(r-1)*e.bodySpacing:0,i+=u?e.footerMarginTop:0,i+=u*h,i+=u?(u-1)*e.footerSpacing:0;var f=0,g=function(t){n=Math.max(n,a.measureText(t).width+f)};return a.font=l.fontString(d,e._titleFontStyle,e._titleFontFamily),l.each(e.title,g),a.font=l.fontString(c,e._bodyFontStyle,e._bodyFontFamily),l.each(e.beforeBody.concat(e.afterBody),g),f=e.displayColors?c+2:0,l.each(o,function(t){l.each(t.before,g),l.each(t.lines,g),l.each(t.after,g)}),f=0,a.font=l.fontString(h,e._footerFontStyle,e._footerFontFamily),l.each(e.footer,g),n+=2*e.xPadding,{width:n,height:i}}function r(t,e){var a=t._model,i=t._chart,n=t._chartInstance.chartArea,o=\"center\",r=\"center\";a.yi.height-e.height&&(r=\"bottom\");var s,l,u,d,c,h=(n.left+n.right)/2,f=(n.top+n.bottom)/2;\"center\"===r?(s=function(t){return t<=h},l=function(t){return t>h}):(s=function(t){return t<=e.width/2},l=function(t){return t>=i.width-e.width/2}),u=function(t){return t+e.width>i.width},d=function(t){return t-e.width<0},c=function(t){return t<=f?\"top\":\"bottom\"},s(a.x)?(o=\"left\",u(a.x)&&(o=\"center\",r=c(a.y))):l(a.x)&&(o=\"right\",d(a.x)&&(o=\"center\",r=c(a.y)));var g=t._options;return{xAlign:g.xAlign?g.xAlign:o,yAlign:g.yAlign?g.yAlign:r}}function s(t,e,a){var i=t.x,n=t.y,o=t.caretSize,r=t.caretPadding,s=t.cornerRadius,l=a.xAlign,u=a.yAlign,d=o+r,c=s+r;return\"right\"===l?i-=e.width:\"center\"===l&&(i-=e.width/2),\"top\"===u?n+=d:n-=\"bottom\"===u?e.height+d:e.height/2,\"center\"===u?\"left\"===l?i+=d:\"right\"===l&&(i-=d):\"left\"===l?i-=c:\"right\"===l&&(i+=c),{x:i,y:n}}var l=t.helpers;t.defaults.global.tooltips={enabled:!0,custom:null,mode:\"nearest\",position:\"average\",intersect:!0,backgroundColor:\"rgba(0,0,0,0.8)\",titleFontStyle:\"bold\",titleSpacing:2,titleMarginBottom:6,titleFontColor:\"#fff\",titleAlign:\"left\",bodySpacing:2,bodyFontColor:\"#fff\",bodyAlign:\"left\",footerFontStyle:\"bold\",footerSpacing:2,footerMarginTop:6,footerFontColor:\"#fff\",footerAlign:\"left\",yPadding:6,xPadding:6,caretSize:5,cornerRadius:6,multiKeyBackground:\"#fff\",displayColors:!0,callbacks:{beforeTitle:l.noop,title:function(t,e){var a=\"\",i=e.labels,n=i?i.length:0;if(t.length>0){var o=t[0];o.xLabel?a=o.xLabel:n>0&&o.indexl;)o-=2*Math.PI;for(;o=s&&o<=l,d=r>=i.innerRadius&&r<=i.outerRadius;return u&&d}return!1},getCenterPoint:function(){var t=this._view,e=(t.startAngle+t.endAngle)/2,a=(t.innerRadius+t.outerRadius)/2;return{x:t.x+Math.cos(e)*a,y:t.y+Math.sin(e)*a}},getArea:function(){var t=this._view;return Math.PI*((t.endAngle-t.startAngle)/(2*Math.PI))*(Math.pow(t.outerRadius,2)-Math.pow(t.innerRadius,2))},tooltipPosition:function(){var t=this._view,e=t.startAngle+(t.endAngle-t.startAngle)/2,a=(t.outerRadius-t.innerRadius)/2+t.innerRadius;return{x:t.x+Math.cos(e)*a,y:t.y+Math.sin(e)*a}},draw:function(){var t=this._chart.ctx,e=this._view,a=e.startAngle,i=e.endAngle;t.beginPath(),t.arc(e.x,e.y,e.outerRadius,a,i),t.arc(e.x,e.y,e.innerRadius,i,a,!0),t.closePath(),t.strokeStyle=e.borderColor,t.lineWidth=e.borderWidth,t.fillStyle=e.backgroundColor,t.fill(),t.lineJoin=\"bevel\",e.borderWidth&&t.stroke()}})}},{}],38:[function(t,e,a){\"use strict\";e.exports=function(t){var e=t.helpers,a=t.defaults.global;t.defaults.global.elements.line={tension:.4,backgroundColor:a.defaultColor,borderWidth:3,borderColor:a.defaultColor,borderCapStyle:\"butt\",borderDash:[],borderDashOffset:0,borderJoinStyle:\"miter\",capBezierPoints:!0,fill:!0},t.elements.Line=t.Element.extend({draw:function(){function t(t,e){var a=e._view;e._view.steppedLine===!0?(l.lineTo(a.x,t._view.y),l.lineTo(a.x,a.y)):0===e._view.tension?l.lineTo(a.x,a.y):l.bezierCurveTo(t._view.controlPointNextX,t._view.controlPointNextY,a.controlPointPreviousX,a.controlPointPreviousY,a.x,a.y)}var i=this,n=i._view,o=n.spanGaps,r=n.scaleZero,s=i._loop;s||(\"top\"===n.fill?r=n.scaleTop:\"bottom\"===n.fill&&(r=n.scaleBottom));var l=i._chart.ctx;l.save();var u=i._children.slice(),d=-1;s&&u.length&&u.push(u[0]);var c,h,f,g;if(u.length&&n.fill){for(l.beginPath(),c=0;ce?1:-1,r=1,s=u.borderSkipped||\"left\"):(e=u.x-u.width/2,a=u.x+u.width/2,i=u.y,n=u.base,o=1,r=n>i?1:-1,s=u.borderSkipped||\"bottom\"),d){var c=Math.min(Math.abs(e-a),Math.abs(i-n));d=d>c?c:d;var h=d/2,f=e+(\"left\"!==s?h*o:0),g=a+(\"right\"!==s?-h*o:0),p=i+(\"top\"!==s?h*r:0),m=n+(\"bottom\"!==s?-h*r:0);f!==g&&(i=p,n=m),p!==m&&(e=f,a=g)}l.beginPath(),l.fillStyle=u.backgroundColor,l.strokeStyle=u.borderColor,l.lineWidth=d;var v=[[e,n],[e,i],[a,i],[a,n]],b=[\"bottom\",\"left\",\"top\",\"right\"],x=b.indexOf(s,0);x===-1&&(x=0);var y=t(0);l.moveTo(y[0],y[1]);for(var k=1;k<4;k++)y=t(k),l.lineTo(y[0],y[1]);l.fill(),d&&l.stroke()},height:function(){var t=this._view;return t.base-t.y},inRange:function(t,e){var i=!1;if(this._view){var n=a(this);i=t>=n.left&&t<=n.right&&e>=n.top&&e<=n.bottom}return i},inLabelRange:function(t,i){var n=this;if(!n._view)return!1;var o=!1,r=a(n);return o=e(n)?t>=r.left&&t<=r.right:i>=r.top&&i<=r.bottom},inXRange:function(t){var e=a(this);return t>=e.left&&t<=e.right},inYRange:function(t){var e=a(this);return t>=e.top&&t<=e.bottom},getCenterPoint:function(){var t,a,i=this._view;return e(this)?(t=i.x,a=(i.y+i.base)/2):(t=(i.x+i.base)/2,a=i.y),{x:t,y:a}},getArea:function(){var t=this._view;return t.width*Math.abs(t.y-t.base)},tooltipPosition:function(){var t=this._view;return{x:t.x,y:t.y}}})}},{}],41:[function(t,e,a){\"use strict\";e.exports=function(t){function e(t,e){var a=l.getStyle(t,e),i=a&&a.match(/(\\d+)px/);return i?Number(i[1]):void 0}function a(t,a){var i=t.style,n=t.getAttribute(\"height\"),o=t.getAttribute(\"width\");if(t._chartjs={initial:{height:n,width:o,style:{display:i.display,height:i.height,width:i.width}}},i.display=i.display||\"block\",null===o||\"\"===o){var r=e(t,\"width\");void 0!==r&&(t.width=r)}if(null===n||\"\"===n)if(\"\"===t.style.height)t.height=t.width/(a.options.aspectRatio||2);else{var s=e(t,\"height\");void 0!==r&&(t.height=s)}return t}function i(t,e,a,i,n){return{type:t,chart:e,native:n||null,x:void 0!==a?a:null,y:void 0!==i?i:null}}function n(t,e){\r\nvar a=u[t.type]||t.type,n=l.getRelativePosition(t,e);return i(a,e,n.x,n.y,t)}function o(t){var e=document.createElement(\"iframe\");return e.className=\"chartjs-hidden-iframe\",e.style.cssText=\"display:block;overflow:hidden;border:0;margin:0;top:0;left:0;bottom:0;right:0;height:100%;width:100%;position:absolute;pointer-events:none;z-index:-1;\",e.tabIndex=-1,l.addEvent(e,\"load\",function(){l.addEvent(e.contentWindow||e,\"resize\",t),t()}),e}function r(t,e,a){var n=t._chartjs={ticking:!1},r=function(){n.ticking||(n.ticking=!0,l.requestAnimFrame.call(window,function(){if(n.resizer)return n.ticking=!1,e(i(\"resize\",a))}))};n.resizer=o(r),t.insertBefore(n.resizer,t.firstChild)}function s(t){if(t&&t._chartjs){var e=t._chartjs.resizer;e&&(e.parentNode.removeChild(e),t._chartjs.resizer=null),delete t._chartjs}}var l=t.helpers,u={touchstart:\"mousedown\",touchmove:\"mousemove\",touchend:\"mouseup\",pointerenter:\"mouseenter\",pointerdown:\"mousedown\",pointermove:\"mousemove\",pointerup:\"mouseup\",pointerleave:\"mouseout\",pointerout:\"mouseout\"};return{acquireContext:function(t,e){if(\"string\"==typeof t?t=document.getElementById(t):t.length&&(t=t[0]),t&&t.canvas&&(t=t.canvas),t instanceof HTMLCanvasElement){var i=t.getContext&&t.getContext(\"2d\");if(i instanceof CanvasRenderingContext2D)return a(t,e),i}return null},releaseContext:function(t){var e=t.canvas;if(e._chartjs){var a=e._chartjs.initial;[\"height\",\"width\"].forEach(function(t){var i=a[t];void 0===i||null===i?e.removeAttribute(t):e.setAttribute(t,i)}),l.each(a.style||{},function(t,a){e.style[a]=t}),e.width=e.width,delete e._chartjs}},addEventListener:function(t,e,a){var i=t.chart.canvas;if(\"resize\"===e)return void r(i.parentNode,a,t.chart);var o=a._chartjs||(a._chartjs={}),s=o.proxies||(o.proxies={}),u=s[t.id+\"_\"+e]=function(e){a(n(e,t.chart))};l.addEvent(i,e,u)},removeEventListener:function(t,e,a){var i=t.chart.canvas;if(\"resize\"===e)return void s(i.parentNode,a);var n=a._chartjs||{},o=n.proxies||{},r=o[t.id+\"_\"+e];r&&l.removeEvent(i,e,r)}}}},{}],42:[function(t,e,a){\"use strict\";var i=t(41);e.exports=function(t){t.platform={acquireContext:function(){},releaseContext:function(){},addEventListener:function(){},removeEventListener:function(){}},t.helpers.extend(t.platform,i(t))}},{41:41}],43:[function(t,e,a){\"use strict\";e.exports=function(t){var e=t.helpers,a={position:\"bottom\"},i=t.Scale.extend({getLabels:function(){var t=this.chart.data;return(this.isHorizontal()?t.xLabels:t.yLabels)||t.labels},determineDataLimits:function(){var t=this,a=t.getLabels();t.minIndex=0,t.maxIndex=a.length-1;var i;void 0!==t.options.ticks.min&&(i=e.indexOf(a,t.options.ticks.min),t.minIndex=i!==-1?i:t.minIndex),void 0!==t.options.ticks.max&&(i=e.indexOf(a,t.options.ticks.max),t.maxIndex=i!==-1?i:t.maxIndex),t.min=a[t.minIndex],t.max=a[t.maxIndex]},buildTicks:function(){var t=this,e=t.getLabels();t.ticks=0===t.minIndex&&t.maxIndex===e.length-1?e:e.slice(t.minIndex,t.maxIndex+1)},getLabelForIndex:function(t,e){var a=this,i=a.chart.data,n=a.isHorizontal();return i.yLabels&&!n?a.getRightValue(i.datasets[e].data[t]):a.ticks[t-a.minIndex]},getPixelForValue:function(t,e,a,i){var n=this,o=Math.max(n.maxIndex+1-n.minIndex-(n.options.gridLines.offsetGridLines?0:1),1);if(void 0!==t&&isNaN(e)){var r=n.getLabels(),s=r.indexOf(t);e=s!==-1?s:e}if(n.isHorizontal()){var l=n.width/o,u=l*(e-n.minIndex);return(n.options.gridLines.offsetGridLines&&i||n.maxIndex===n.minIndex&&i)&&(u+=l/2),n.left+Math.round(u)}var d=n.height/o,c=d*(e-n.minIndex);return n.options.gridLines.offsetGridLines&&i&&(c+=d/2),n.top+Math.round(c)},getPixelForTick:function(t,e){return this.getPixelForValue(this.ticks[t],t+this.minIndex,null,e)},getValueForPixel:function(t){var e,a=this,i=Math.max(a.ticks.length-(a.options.gridLines.offsetGridLines?0:1),1),n=a.isHorizontal(),o=(n?a.width:a.height)/i;return t-=n?a.left:a.top,a.options.gridLines.offsetGridLines&&(t-=o/2),e=t<=0?0:Math.round(t/o)},getBasePixel:function(){return this.bottom}});t.scaleService.registerScaleType(\"category\",i,a)}},{}],44:[function(t,e,a){\"use strict\";e.exports=function(t){var e=t.helpers,a={position:\"left\",ticks:{callback:t.Ticks.formatters.linear}},i=t.LinearScaleBase.extend({determineDataLimits:function(){function t(t){return s?t.xAxisID===a.id:t.yAxisID===a.id}var a=this,i=a.options,n=a.chart,o=n.data,r=o.datasets,s=a.isHorizontal();a.min=null,a.max=null;var l=i.stacked;if(void 0===l&&e.each(r,function(e,a){if(!l){var i=n.getDatasetMeta(a);n.isDatasetVisible(a)&&t(i)&&void 0!==i.stack&&(l=!0)}}),i.stacked||l){var u={};e.each(r,function(o,r){var s=n.getDatasetMeta(r),l=[s.type,void 0===i.stacked&&void 0===s.stack?r:\"\",s.stack].join(\".\");void 0===u[l]&&(u[l]={positiveValues:[],negativeValues:[]});var d=u[l].positiveValues,c=u[l].negativeValues;n.isDatasetVisible(r)&&t(s)&&e.each(o.data,function(t,e){var n=+a.getRightValue(t);isNaN(n)||s.data[e].hidden||(d[e]=d[e]||0,c[e]=c[e]||0,i.relativePoints?d[e]=100:n<0?c[e]+=n:d[e]+=n)})}),e.each(u,function(t){var i=t.positiveValues.concat(t.negativeValues),n=e.min(i),o=e.max(i);a.min=null===a.min?n:Math.min(a.min,n),a.max=null===a.max?o:Math.max(a.max,o)})}else e.each(r,function(i,o){var r=n.getDatasetMeta(o);n.isDatasetVisible(o)&&t(r)&&e.each(i.data,function(t,e){var i=+a.getRightValue(t);isNaN(i)||r.data[e].hidden||(null===a.min?a.min=i:ia.max&&(a.max=i))})});this.handleTickRangeOptions()},getTickLimit:function(){var a,i=this,n=i.options.ticks;if(i.isHorizontal())a=Math.min(n.maxTicksLimit?n.maxTicksLimit:11,Math.ceil(i.width/50));else{var o=e.getValueOrDefault(n.fontSize,t.defaults.global.defaultFontSize);a=Math.min(n.maxTicksLimit?n.maxTicksLimit:11,Math.ceil(i.height/(2*o)))}return a},handleDirectionalChanges:function(){this.isHorizontal()||this.ticks.reverse()},getLabelForIndex:function(t,e){return+this.getRightValue(this.chart.data.datasets[e].data[t])},getPixelForValue:function(t){var e,a=this,i=a.start,n=+a.getRightValue(t),o=a.end-i;return a.isHorizontal()?(e=a.left+a.width/o*(n-i),Math.round(e)):(e=a.bottom-a.height/o*(n-i),Math.round(e))},getValueForPixel:function(t){var e=this,a=e.isHorizontal(),i=a?e.width:e.height,n=(a?t-e.left:e.bottom-t)/i;return e.start+(e.end-e.start)*n},getPixelForTick:function(t){return this.getPixelForValue(this.ticksAsNumbers[t])}});t.scaleService.registerScaleType(\"linear\",i,a)}},{}],45:[function(t,e,a){\"use strict\";e.exports=function(t){var e=t.helpers,a=e.noop;t.LinearScaleBase=t.Scale.extend({handleTickRangeOptions:function(){var t=this,a=t.options,i=a.ticks;if(i.beginAtZero){var n=e.sign(t.min),o=e.sign(t.max);n<0&&o<0?t.max=0:n>0&&o>0&&(t.min=0)}void 0!==i.min?t.min=i.min:void 0!==i.suggestedMin&&(t.min=Math.min(t.min,i.suggestedMin)),void 0!==i.max?t.max=i.max:void 0!==i.suggestedMax&&(t.max=Math.max(t.max,i.suggestedMax)),t.min===t.max&&(t.max++,i.beginAtZero||t.min--)},getTickLimit:a,handleDirectionalChanges:a,buildTicks:function(){var a=this,i=a.options,n=i.ticks,o=a.getTickLimit();o=Math.max(2,o);var r={maxTicks:o,min:n.min,max:n.max,stepSize:e.getValueOrDefault(n.fixedStepSize,n.stepSize)},s=a.ticks=t.Ticks.generators.linear(r,a);a.handleDirectionalChanges(),a.max=e.max(s),a.min=e.min(s),n.reverse?(s.reverse(),a.start=a.max,a.end=a.min):(a.start=a.min,a.end=a.max)},convertTicksToLabels:function(){var e=this;e.ticksAsNumbers=e.ticks.slice(),e.zeroLineIndex=e.ticks.indexOf(0),t.Scale.prototype.convertTicksToLabels.call(e)}})}},{}],46:[function(t,e,a){\"use strict\";e.exports=function(t){var e=t.helpers,a={position:\"left\",ticks:{callback:t.Ticks.formatters.logarithmic}},i=t.Scale.extend({determineDataLimits:function(){function t(t){return u?t.xAxisID===a.id:t.yAxisID===a.id}var a=this,i=a.options,n=i.ticks,o=a.chart,r=o.data,s=r.datasets,l=e.getValueOrDefault,u=a.isHorizontal();a.min=null,a.max=null,a.minNotZero=null;var d=i.stacked;if(void 0===d&&e.each(s,function(e,a){if(!d){var i=o.getDatasetMeta(a);o.isDatasetVisible(a)&&t(i)&&void 0!==i.stack&&(d=!0)}}),i.stacked||d){var c={};e.each(s,function(n,r){var s=o.getDatasetMeta(r),l=[s.type,void 0===i.stacked&&void 0===s.stack?r:\"\",s.stack].join(\".\");o.isDatasetVisible(r)&&t(s)&&(void 0===c[l]&&(c[l]=[]),e.each(n.data,function(t,e){var n=c[l],o=+a.getRightValue(t);isNaN(o)||s.data[e].hidden||(n[e]=n[e]||0,i.relativePoints?n[e]=100:n[e]+=o)}))}),e.each(c,function(t){var i=e.min(t),n=e.max(t);a.min=null===a.min?i:Math.min(a.min,i),a.max=null===a.max?n:Math.max(a.max,n)})}else e.each(s,function(i,n){var r=o.getDatasetMeta(n);o.isDatasetVisible(n)&&t(r)&&e.each(i.data,function(t,e){var i=+a.getRightValue(t);isNaN(i)||r.data[e].hidden||(null===a.min?a.min=i:ia.max&&(a.max=i),0!==i&&(null===a.minNotZero||in?{start:e-a-5,end:e}:{start:e,end:e+a+5}}function o(t){var o,r,s,l=a(t),u=Math.min(t.height/2,t.width/2),d={l:t.width,r:0,t:t.height,b:0},c={};t.ctx.font=l.font,t._pointLabelSizes=[];var h=e(t);for(o=0;od.r&&(d.r=m.end,c.r=g),v.startd.b&&(d.b=v.end,c.b=g)}t.setReductions(u,d,c)}function r(t){var e=Math.min(t.height/2,t.width/2);t.drawingArea=Math.round(e),t.setCenterPoint(0,0,0,0)}function s(t){return 0===t||180===t?\"center\":t<180?\"left\":\"right\"}function l(t,e,a,i){if(f.isArray(e))for(var n=a.y,o=1.5*i,r=0;r270||t<90)&&(a.y-=e.h)}function d(t){var i=t.ctx,n=f.getValueOrDefault,o=t.options,r=o.angleLines,d=o.pointLabels;i.lineWidth=r.lineWidth,i.strokeStyle=r.color;var c=t.getDistanceFromCenterForValue(o.reverse?t.min:t.max),h=a(t);i.textBaseline=\"top\";for(var p=e(t)-1;p>=0;p--){if(r.display){var m=t.getPointPosition(p,c);i.beginPath(),i.moveTo(t.xCenter,t.yCenter),i.lineTo(m.x,m.y),i.stroke(),i.closePath()}var v=t.getPointPosition(p,c+5),b=n(d.fontColor,g.defaultFontColor);i.font=h.font,i.fillStyle=b;var x=t.getIndexAngle(p),y=f.toDegrees(x);i.textAlign=s(y),u(y,t._pointLabelSizes[p],v),l(i,t.pointLabels[p]||\"\",v,h.size)}}function c(t,a,i,n){var o=t.ctx;if(o.strokeStyle=f.getValueAtIndexOrDefault(a.color,n-1),o.lineWidth=f.getValueAtIndexOrDefault(a.lineWidth,n-1),t.options.lineArc)o.beginPath(),o.arc(t.xCenter,t.yCenter,i,0,2*Math.PI),o.closePath(),o.stroke();else{var r=e(t);if(0===r)return;o.beginPath();var s=t.getPointPosition(0,i);o.moveTo(s.x,s.y);for(var l=1;l0&&a>0?e:0)},draw:function(){var t=this,e=t.options,a=e.gridLines,i=e.ticks,n=f.getValueOrDefault;if(e.display){var o=t.ctx,r=n(i.fontSize,g.defaultFontSize),s=n(i.fontStyle,g.defaultFontStyle),l=n(i.fontFamily,g.defaultFontFamily),u=f.fontString(r,s,l);f.each(t.ticks,function(s,l){if(l>0||e.reverse){var d=t.getDistanceFromCenterForValue(t.ticksAsNumbers[l]),h=t.yCenter-d;if(a.display&&0!==l&&c(t,a,d,l),i.display){var f=n(i.fontColor,g.defaultFontColor);if(o.font=u,i.showLabelBackdrop){var p=o.measureText(s).width;o.fillStyle=i.backdropColor,o.fillRect(t.xCenter-p/2-i.backdropPaddingX,h-r/2-i.backdropPaddingY,p+2*i.backdropPaddingX,r+2*i.backdropPaddingY)}o.textAlign=\"center\",o.textBaseline=\"middle\",o.fillStyle=f,o.fillText(s,t.xCenter,h)}}}),e.lineArc||d(t)}}});t.scaleService.registerScaleType(\"radialLinear\",m,p)}},{}],48:[function(t,e,a){\"use strict\";var i=t(1);i=\"function\"==typeof i?i:window.moment,e.exports=function(t){var e=t.helpers,a={units:[{name:\"millisecond\",steps:[1,2,5,10,20,50,100,250,500]},{name:\"second\",steps:[1,2,5,10,30]},{name:\"minute\",steps:[1,2,5,10,30]},{name:\"hour\",steps:[1,2,3,6,12]},{name:\"day\",steps:[1,2,5]},{name:\"week\",maxStep:4},{name:\"month\",maxStep:3},{name:\"quarter\",maxStep:4},{name:\"year\",maxStep:!1}]},n={position:\"bottom\",time:{parser:!1,format:!1,unit:!1,round:!1,displayFormat:!1,isoWeekday:!1,minUnit:\"millisecond\",displayFormats:{millisecond:\"h:mm:ss.SSS a\",second:\"h:mm:ss a\",minute:\"h:mm:ss a\",hour:\"MMM D, hA\",day:\"ll\",week:\"ll\",month:\"MMM YYYY\",quarter:\"[Q]Q - YYYY\",year:\"YYYY\"}},ticks:{autoSkip:!1}},o=t.Scale.extend({initialize:function(){if(!i)throw new Error(\"Chart.js - Moment.js could not be found! You must include it before Chart.js to use the time scale. Download at https://momentjs.com\");t.Scale.prototype.initialize.call(this)},getLabelMoment:function(t,e){return null===t||null===e?null:\"undefined\"!=typeof this.labelMoments[t]?this.labelMoments[t][e]:null},getLabelDiff:function(t,e){var a=this;return null===t||null===e?null:(void 0===a.labelDiffs&&a.buildLabelDiffs(),\"undefined\"!=typeof a.labelDiffs[t]?a.labelDiffs[t][e]:null)},getMomentStartOf:function(t){var e=this;return\"week\"===e.options.time.unit&&e.options.time.isoWeekday!==!1?t.clone().startOf(\"isoWeek\").isoWeekday(e.options.time.isoWeekday):t.clone().startOf(e.tickUnit)},determineDataLimits:function(){var t=this;t.labelMoments=[];var a=[];t.chart.data.labels&&t.chart.data.labels.length>0?(e.each(t.chart.data.labels,function(e){var i=t.parseTime(e);i.isValid()&&(t.options.time.round&&i.startOf(t.options.time.round),a.push(i))},t),t.firstTick=i.min.call(t,a),t.lastTick=i.max.call(t,a)):(t.firstTick=null,t.lastTick=null),e.each(t.chart.data.datasets,function(n,o){var r=[],s=t.chart.isDatasetVisible(o);\"object\"==typeof n.data[0]&&null!==n.data[0]?e.each(n.data,function(e){var a=t.parseTime(t.getRightValue(e));a.isValid()&&(t.options.time.round&&a.startOf(t.options.time.round),r.push(a),s&&(t.firstTick=null!==t.firstTick?i.min(t.firstTick,a):a,t.lastTick=null!==t.lastTick?i.max(t.lastTick,a):a))},t):r=a,t.labelMoments.push(r)},t),t.options.time.min&&(t.firstTick=t.parseTime(t.options.time.min)),t.options.time.max&&(t.lastTick=t.parseTime(t.options.time.max)),t.firstTick=(t.firstTick||i()).clone(),t.lastTick=(t.lastTick||i()).clone()},buildLabelDiffs:function(){var t=this;t.labelDiffs=[];var a=[];t.chart.data.labels&&t.chart.data.labels.length>0&&e.each(t.chart.data.labels,function(e){var i=t.parseTime(e);i.isValid()&&(t.options.time.round&&i.startOf(t.options.time.round),a.push(i.diff(t.firstTick,t.tickUnit,!0)))},t),e.each(t.chart.data.datasets,function(i){var n=[];\"object\"==typeof i.data[0]&&null!==i.data[0]?e.each(i.data,function(e){var a=t.parseTime(t.getRightValue(e));a.isValid()&&(t.options.time.round&&a.startOf(t.options.time.round),n.push(a.diff(t.firstTick,t.tickUnit,!0)))},t):n=a,t.labelDiffs.push(n)},t)},buildTicks:function(){var i=this;i.ctx.save();var n=e.getValueOrDefault(i.options.ticks.fontSize,t.defaults.global.defaultFontSize),o=e.getValueOrDefault(i.options.ticks.fontStyle,t.defaults.global.defaultFontStyle),r=e.getValueOrDefault(i.options.ticks.fontFamily,t.defaults.global.defaultFontFamily),s=e.fontString(n,o,r);if(i.ctx.font=s,i.ticks=[],i.unitScale=1,i.scaleSizeInUnits=0,i.options.time.unit)i.tickUnit=i.options.time.unit||\"day\",i.displayFormat=i.options.time.displayFormats[i.tickUnit],i.scaleSizeInUnits=i.lastTick.diff(i.firstTick,i.tickUnit,!0),i.unitScale=e.getValueOrDefault(i.options.time.unitStepSize,1);else{var l=i.isHorizontal()?i.width:i.height,u=i.tickFormatFunction(i.firstTick,0,[]),d=i.ctx.measureText(u).width,c=Math.cos(e.toRadians(i.options.ticks.maxRotation)),h=Math.sin(e.toRadians(i.options.ticks.maxRotation));d=d*c+n*h;var f=l/d;i.tickUnit=i.options.time.minUnit,i.scaleSizeInUnits=i.lastTick.diff(i.firstTick,i.tickUnit,!0),i.displayFormat=i.options.time.displayFormats[i.tickUnit];for(var g=0,p=a.units[g];g=Math.ceil(i.scaleSizeInUnits/f)){i.unitScale=e.getValueOrDefault(i.options.time.unitStepSize,p.steps[m]);break}break}if(p.maxStep===!1||Math.ceil(i.scaleSizeInUnits/f)=0&&(i.lastTick=y),i.scaleSizeInUnits=i.lastTick.diff(i.firstTick,i.tickUnit,!0)}i.options.time.displayFormat&&(i.displayFormat=i.options.time.displayFormat),i.ticks.push(i.firstTick.clone());for(var S=i.unitScale;S<=i.scaleSizeInUnits;S+=i.unitScale){var M=x.clone().add(S,i.tickUnit);if(i.options.time.max&&M.diff(i.lastTick,i.tickUnit,!0)>=0)break;i.ticks.push(M)}var w=i.ticks[i.ticks.length-1].diff(i.lastTick,i.tickUnit);0===w&&0!==i.scaleSizeInUnits||(i.options.time.max?(i.ticks.push(i.lastTick.clone()),i.scaleSizeInUnits=i.lastTick.diff(i.ticks[0],i.tickUnit,!0)):(i.ticks.push(i.lastTick.clone()),i.scaleSizeInUnits=i.lastTick.diff(i.firstTick,i.tickUnit,!0))),i.ctx.restore(),i.labelDiffs=void 0},getLabelForIndex:function(t,e){var a=this,i=a.chart.data.labels&&t\r\n\r\n //When you take an action that would normally cause the form to be\r\n //submitted (e.g. clicking a submit button or pressing enter) the\r\n //ajax-form will make an ajax call to submit the form instead.\r\n\r\n //When the submit process begins, all the form inputs will become \r\n //disabled, and when the submit process is finished the inputs\r\n //will be un-disabled.\r\n\r\n $(document).on(\"click\", \".ajax-form [type=submit]\", function (e) {\r\n e.preventDefault();\r\n var $this = $(this);\r\n submitForm($this.closest('.ajax-form'), { name: $this.prop('name'), value: $this.prop('value') });\r\n })\r\n \r\n $(document).on(\"submit\", \"form.ajax-form\", function (e) {\r\n e.preventDefault();\r\n submitForm(this);\r\n });\r\n\r\n function submitForm(form, submitButtonData) {\r\n var $form = $(form);\r\n\r\n if (!$form.data('isLocked')) {\r\n if (submitButtonData) {\r\n $form.append('');\r\n }\r\n var data = $form.serialize();\r\n $form.find('.submitButtonData').remove();\r\n lockForm($form);\r\n\r\n $.ajax({\r\n url: $form.prop('action'),\r\n type: 'POST',\r\n contentType: 'application/x-www-form-urlencoded',\r\n data: data,\r\n success: function (data) {\r\n $form.find('.ajax-form-data').add($form.data('ajax-form-target')).html(data);\r\n var successCallback = $form.data('ajax-form-success');\r\n if (successCallback) {\r\n //successCallback can either be a function that receives the data\r\n //or a JS expression to be executed.\r\n var func = findFunc(successCallback);\r\n if (func) {\r\n func(data);\r\n } else {\r\n eval(successCallback);\r\n }\r\n }\r\n },\r\n complete: function () {\r\n unlockForm($form);\r\n }\r\n });\r\n }\r\n }\r\n\r\n function lockForm($form) {\r\n $form.data('isLocked', new Date());\r\n $form.find('.ajax-form-loading').add($form.data('ajax-form-loading')).addClass('active');\r\n $form.find(':input:not(:disabled)').addClass('ajax-form-disabled').prop('disabled', 'disabled');\r\n }\r\n\r\n function unlockForm($form) {\r\n $form.removeData('isLocked')\r\n $form.find('.ajax-form-loading').add($form.data('ajax-form-loading')).removeClass('active');\r\n $form.find('.ajax-form-disabled').removeAttr('disabled').removeClass('ajax-form-disabled');\r\n }\r\n\r\n function findFunc(funcName) {\r\n var pieces = funcName.split('.');\r\n if (pieces.length > 0) {\r\n var context = window;\r\n var func = null;\r\n for (var i = 0; i < pieces.length - 1; i++) {\r\n var newContext = context[pieces[i]];\r\n if (newContext) {\r\n context = newContext;\r\n } else {\r\n context = window;\r\n break;\r\n }\r\n }\r\n\r\n func = context[pieces[pieces.length - 1]];\r\n if (typeof func == \"function\") {\r\n return func.bind(context);\r\n }\r\n }\r\n }\r\n})();","//Prevent multiple clicks on elements with the single-click class.\r\n//Once an element is no longer clickable, you can make it\r\n//clickable again by calling $(element).data('clicked', false).\r\n//This double-click protection doesn't prevent non-delegated\r\n//event listeners or listeners delegated lower than body\r\n//from running. This code is intended for anchors, but \r\n//should work for buttons also, it is NOT good enough\r\n//for forms. To do this for forms you should intercept\r\n//the submit event and disable the fields on the form.\r\n(function () {\r\n $(document).on(\"click\", \".single-click\", function (e) {\r\n if ($(this).data('clicked')) {\r\n e.preventDefault();\r\n e.stopPropagation();\r\n return false;\r\n }\r\n\r\n $(this).add(getClickGroup(this)).data('clicked', true);\r\n });\r\n\r\n function getClickGroup(e) {\r\n return $(getClickGroupClass(e));\r\n }\r\n\r\n function getClickGroupClass(e) {\r\n var classes = $(e).prop('class').split(/\\s+/);\r\n for (var i = 0; i < classes.length; i++) {\r\n if (classes[i].indexOf('click-group-') == 0) {\r\n return '.' + classes[i];\r\n }\r\n }\r\n }\r\n})();","(function () {\r\n showErrorModal = function (model) {\r\n if (typeof model == \"string\") {\r\n model = JSON.parse(model);\r\n }\r\n\r\n for (var k in model) {\r\n $(\".error-popup-\" + k).text(model[k]);\r\n }\r\n\r\n $(\".error-popup, .error-popup-backdrop\").addClass('active');\r\n }\r\n\r\n hideErrorModal = function () {\r\n $(\".error-popup, .error-popup-backdrop\").removeClass('active');\r\n }\r\n\r\n $(document).on(\"click\", '#copyErrorButton', function () {\r\n const el = document.getElementsByClassName('error-popup-data-copy')[0];\r\n var range = document.createRange();\r\n range.selectNodeContents(el);\r\n var sel = window.getSelection();\r\n sel.removeAllRanges();\r\n sel.addRange(range);\r\n document.execCommand('copy');\r\n });\r\n\r\n $(document).on(\"click\", \".error-popup-close\", hideErrorModal);\r\n})();\r\n","//misc workarounds for stupid modal-background behavior\r\n(function ($) {\r\n var modals = { locked: false };\r\n var lockWaitMillis = 25;\r\n var animationWaitMillis = 1000;\r\n\r\n //Gets called immediately after initiating the modal close but\r\n //ONLY if the modal close is done the Bootstrap way. Just deleting\r\n //the modal from the DOM does not cause this method to get called.\r\n $(document).on(\"hide.bs.modal\", \".modal\", onHide);\r\n\r\n function onHide(e) {\r\n //This actually gets called for other things like the \r\n //bootstrap datepicker, so we need to make sure this\r\n //is a modal that's being hidden.\r\n if ($(e.target).is('.modal')) {\r\n if (!modals.locked) {\r\n modals.locked = true;\r\n var backdrops = $(\".modal-backdrop\");\r\n modals[e.target] = backdrops;\r\n modals.locked = false;\r\n window.setTimeout(function () { onHidden(e); }, animationWaitMillis);\r\n } else {\r\n window.setTimeout(function () { onHide(e); }, lockWaitMillis);\r\n }\r\n }\r\n }\r\n\r\n //Gets called after the animation for closing the modal has finished. This\r\n //method will only get called if the onHide method above is called. The bootstrap\r\n //event will only be triggered if the modal still exists in the DOM when the \r\n //animation timer completes. As a workaround for when the modal is deleted from \r\n //the DOM prior to the animation timer completing, this method should also be\r\n //called from onHide via a timer.\r\n $(document).on(\"hidden.bs.modal\", \".modal\", onHidden);\r\n function onHidden(e) {\r\n if (!modals.locked) {\r\n modals.locked = true;\r\n var backdrops = modals[e.target];\r\n if (backdrops && backdrops.length) {\r\n backdrops.remove();\r\n }\r\n modals[e.target] = null;\r\n if (!$(\".modal:visible\").length) {\r\n $(document.body).removeClass(\"modal-open\");\r\n }\r\n modals.locked = false;\r\n } else {\r\n window.setTimeout(function () { onHidden(e); }, lockWaitMillis);\r\n }\r\n }\r\n\r\n //Run a timer checking to see if modal backdrops exist when no modals are visible.\r\n //If that situation occurs more than maxTimerFails times then delete\r\n //all the modal backdrops. This method largely makes the other two unnecessary,\r\n //but the other two are much more responsive to user input which is why I'm\r\n //leaving the others (keep in mind that jQuery :visible is true until the modal fade\r\n //animation is finished).\r\n (function () {\r\n var maxTimerFails = 20;\r\n var failCount = 0;\r\n var timerMillis = 250;\r\n function onTimer() {\r\n if (!$(\".modal.show\").length && $(\".modal-backdrop\").length) {\r\n failCount++;\r\n } else {\r\n failCount = 0;\r\n }\r\n\r\n if (failCount >= maxTimerFails) {\r\n $(\".modal-backdrop\").remove();\r\n $(document.body).removeClass(\"modal-open\");\r\n console.log('ERROR: Workaround timer forced to clear modal-backdrop. Please close your modals properly by calling $(elem).modal(\"hide\").');\r\n }\r\n }\r\n var timer = window.setInterval(onTimer, timerMillis);\r\n })();\r\n})(jQuery);","(function () {\r\n\r\n\r\n var completedDate = false;\r\n var completedType = false;\r\n\r\n var booleanParse = function (s) {\r\n if (typeof (s) == \"string\") {\r\n s = s.toLowerCase();\r\n if (s == \"t\" || s == \"true\") {\r\n return true;\r\n } else if (s == \"f\" || s == \"false\") {\r\n return false;\r\n }\r\n } else if (typeof (s) == \"boolean\") {\r\n return s;\r\n }\r\n }\r\n\r\n $(window).ready(function () {\r\n\r\n $(\"a[href='#LEQuestionModal']\").click(function () {\r\n var transactionType = $(this).data('transtype');\r\n\r\n if (transactionType && transactionType.toLowerCase() == 'lifeevent') {\r\n $(\"#lifeEventDetails\").show();\r\n $(\".oeDisplay\").hide();\r\n }\r\n else if (transactionType && transactionType.toLowerCase() == 'openenrollment') {\r\n $(\"#lifeEventDetails\").hide();\r\n $(\".oeDisplay\").show();\r\n }\r\n });\r\n\r\n var hasMultipleLifeEvents = booleanParse($(\"#HasMultipleLifeEvents\").val());\r\n $(\"#lifeEventDetails\").hide();\r\n $(\".oeDisplay\").show();\r\n\r\n if (hasMultipleLifeEvents) {\r\n $(\"#lifeEventDetails\").show();\r\n $(\".oeDisplay\").hide();\r\n }\r\n\r\n $(\"#leModalDateError\").text(\"\");\r\n\r\n $(\"#editLifeEvent\").click(function () {\r\n $(\"#lifeEventDetails\").show();\r\n });\r\n //set the continue button to disabled and clear out any LE values in local storage\r\n checkEnableEnrollmentBtn();\r\n localStorage.removeItem(\"selectedLifeEventType\");\r\n localStorage.removeItem(\"selectedLifeEventDate\");\r\n\r\n $('#lifeEventDatePicker').datepicker().on('changeDate', function (e) {\r\n //get the date and format it\r\n $(\"#leModalDateError\").text(\"\");\r\n\r\n var parsedDateSelected = getParsedDateSelected();\r\n \r\n var dateSelected = parsedDateSelected.getMonth() + 1 + '/' + parsedDateSelected.getDate() + '/' + parsedDateSelected.getFullYear();\r\n\r\n //any time the datepicker field changes check if the continue button can be enabled\r\n if (dateSelected != \"\") {\r\n leDate = dateSelected;\r\n completedDate = true;\r\n checkEnableEnrollmentBtn();\r\n }\r\n\r\n });\r\n\r\n $('#lifeEventDatePicker').datepicker().on('keyup', function (e) {\r\n //get the date and format it\r\n if ($(\"#lifeEventDate\").val().replace(/ /g, '').length == 10) {\r\n var parsedDateSelected = getParsedDateSelected();\r\n\r\n var dateSelected = parsedDateSelected.getMonth() + 1 + '/' + parsedDateSelected.getDate() + '/' + parsedDateSelected.getFullYear();\r\n\r\n //any time the datepicker field changes check if the continue button can be enabled\r\n if (dateSelected != \"\") {\r\n leDate = dateSelected;\r\n completedDate = true;\r\n checkEnableEnrollmentBtn();\r\n }\r\n }\r\n });\r\n\r\n \r\n $(\".lifeEventOption\").click(function () {\r\n //properly set radio button classes\r\n var selectedType = 0;\r\n var classNames = this.classList;\r\n\r\n //Finding selected type\r\n for (var i = 0; i < classNames.length; i++) {\r\n if (classNames[i].indexOf(\"leType-\") !== -1) {\r\n selectedType = classNames[i].replace(\"leType-\", \"\");\r\n }\r\n }\r\n\r\n //Displaying main text area\r\n if (selectedType && parseInt(selectedType) && selectedType != 0) {\r\n $(\"#SelectedLifeEventTypeId\").val(parseInt(selectedType));\r\n\r\n completedType = true;\r\n\r\n var isMobile = typeof window.matchMedia == 'function' && matchMedia('(max-width: 1199.98px)').matches;\r\n var containerName = isMobile ? \".service-modal-le-container-mobile\" : \".service-modal-le-container-desktop\";\r\n\r\n if (selectedType == '8' || selectedType == '11' || selectedType == '12') {\r\n if (isMobile) {\r\n $(containerName).hide();\r\n $(this).find(containerName).show();\r\n }\r\n else {\r\n $(containerName).show();\r\n }\r\n }\r\n else {\r\n $(containerName).hide();\r\n }\r\n\r\n }\r\n\r\n\r\n\r\n //Toggling Check Mark Portion\r\n $(\".lifeEventOption\").each(function () {\r\n if ($(this).hasClass(\"leType-\" + selectedType)) {\r\n $(this).find(\"i.le-modal-le-type\").addClass(\"fas fa-check-circle\").removeClass(\"far fa-circle\");\r\n }\r\n else {\r\n $(this).find(\"i.le-modal-le-type\").addClass(\"far fa-circle\").removeClass(\"fas fa-check-circle\");\r\n }\r\n });\r\n\r\n checkEnableEnrollmentBtn();\r\n });\r\n\r\n\r\n $(\".closeLeModal\").click(function () {\r\n leDate = null;\r\n leType = null;\r\n completedDate = false;\r\n completedType = false;\r\n if (!hasMultipleLifeEvents) {\r\n $(\"#lifeEventDetails\").hide();\r\n }\r\n });\r\n\r\n checkTopOfLEModal();\r\n });\r\n\r\n function checkTopOfLEModal() {\r\n if (typeof window.matchMedia == 'function'\r\n && matchMedia('(max-width: 1199.98px)').matches) {\r\n //Need to accomodate for height of OE banner\r\n $(\"#LEQuestionModal\").css(\"top\", $(\".header-wrapper\").height());\r\n } else {\r\n $(\"#LEQuestionModal\").css(\"top\", \"0\");\r\n }\r\n }\r\n\r\n function checkEnableEnrollmentBtn() {\r\n updateTheContinueButton(true);\r\n\r\n validateLifeEventDate();\r\n\r\n if ($(\"#leModalDateError\").text() != \"\") {\r\n updateTheContinueButton(true);\r\n return;\r\n }\r\n\r\n if (completedDate && completedType) {\r\n updateTheContinueButton(false);\r\n }\r\n }\r\n\r\n function getParsedDateSelected() {\r\n return $('#lifeEventDatePicker').datepicker('getDate');\r\n }\r\n\r\n\r\n function validateLifeEventDate() {\r\n\r\n if (!completedDate || !completedType) {\r\n return;\r\n }\r\n\r\n var parsedDateSelected = getParsedDateSelected();\r\n\r\n var todaysDate = new Date();\r\n todaysDate.setHours(0, 0, 0, 0);\r\n\r\n if (todaysDate < parsedDateSelected) {\r\n $(\"#leModalDateError\").html(\"You cannot report a future life event. Please come back to report your life event on or after the date it occurs.\");\r\n }\r\n\r\n var enrollmentWindow = getEnrollmentWindowForSelectedLifeEvent();\r\n var minDate = new Date(todaysDate);\r\n minDate.setDate(todaysDate.getDate() - enrollmentWindow);\r\n\r\n if ((minDate) > parsedDateSelected) {\r\n $(\"#leModalDateError\").html(\"Life event must have occurred within the past \" + enrollmentWindow + \" days.\");\r\n }\r\n\r\n }\r\n\r\n function getEnrollmentWindowForSelectedLifeEvent() {\r\n return $(\".leTypeWindow-\" + $(\"#SelectedLifeEventTypeId\").val()).val();\r\n }\r\n\r\n function updateTheContinueButton(isDisabled) {\r\n $(\"#continueToEnrollmentBtn\").prop(\"disabled\", isDisabled);\r\n\r\n if (isDisabled) {\r\n $(\"#continueToEnrollmentBtn\").removeClass('next-btn');\r\n $(\"#continueToEnrollmentBtn\").addClass('confirm-btn');\r\n }\r\n else {\r\n $(\"#continueToEnrollmentBtn\").removeClass('confirm-btn');\r\n $(\"#continueToEnrollmentBtn\").addClass('next-btn');\r\n }\r\n }\r\n\r\n //On resize check to see where the text area should be displaying\r\n $(window).on('resize', function () {\r\n var checkedCircle = $('.le-modal-le-type.fa-check-circle');\r\n //Check if any LE is checked on resize\r\n if (checkedCircle.length > 0) {\r\n\r\n if (checkedCircle.closest('.leType-8').length || checkedCircle.closest('.leType-11').length || checkedCircle.closest('.leType-12').length) {\r\n //Display Text Area in Desktop\r\n if (typeof window.matchMedia == 'function' && matchMedia('(min-width: 1199.98px)').matches) {\r\n $(\".service-modal-le-container-desktop\").show();\r\n $(\".service-modal-le-container-mobile\").hide();\r\n } else {\r\n //Display mobile text area\r\n $(\".service-modal-le-container-desktop\").hide();\r\n $(\".service-modal-le-container-mobile\").hide();\r\n $('.le-modal-le-type.fa-check-circle').closest(\".life-event-modal-option\").find('.service-modal-le-container-mobile').show();\r\n }\r\n }\r\n } else {\r\n $(\".service-modal-le-container-desktop\").hide();\r\n $(\".service-modal-le-container-mobile\").hide();\r\n }\r\n\r\n checkTopOfLEModal();\r\n });\r\n\r\n})();","(function () {\r\n //This turns the title attribute into bootstrap tooltips, we have to run it periodically\r\n //because as html is added to the page we have to run this again.\r\n window.setInterval(function () {\r\n if ($(\"body\").tooltip) {\r\n $(\"body\").tooltip({ selector: '[title]' });\r\n }\r\n }, 500);\r\n})();","(function () {\r\n toast = function (text, type) {\r\n var $toast = $('
    ' + '' + text + '
    ');\r\n $(document.body).append($toast);\r\n setTimeout(function () { $toast.addClass('toast-hidden') }, 3000);\r\n }\r\n})();","var dashboardMobileMenuModule = (function () {\r\n\r\n //This variable allows you to click the same active menu you're on when the page loads. Without this you would have to click on a different menu to be able to get to the main menu due to the event stop propgation not allowing the menus to close.\r\n var mainLoadedMenuClicked = false;\r\n\r\n var openMenu = function (e) {\r\n if ($(e.target).hasClass(\"sub-menu-links-collapsible\")) {\r\n $(e.target).parent().next(\".sub-menu-links-collapsible-content\").toggle();\r\n //Make sure main dropdown overlay doesn't close\r\n e.stopPropagation();\r\n }\r\n else if (mainLoadedMenuClicked && $(this).hasClass('active')) {\r\n e.stopPropagation();\r\n } else {\r\n if (!$(this).find('a').attr('href')) {\r\n $(\".mobile-navbar\").find('.menu-item-mobile').removeClass(\"active\");\r\n $(this).addClass(\"active\");\r\n }\r\n else {\r\n e.stopPropagation();\r\n }\r\n }\r\n mainLoadedMenuClicked = true;\r\n }\r\n\r\n return {\r\n Init: function () {\r\n //Toggle active mobile menu on click\r\n $(\".menu-item-mobile\").click(openMenu);\r\n\r\n $(\".dashboard-mobile-menu a\").click(function (e) {\r\n\r\n var href = $(this).attr('href');\r\n\r\n if (!href) {\r\n $(\".menu-item-mobile\").removeClass('show');\r\n var menuItemID = $(this).data('menu-item-id');\r\n var bottomNavMenuButton = $(\".menu-item-mobile[data-menu-item-id='\" + menuItemID + \"']\");\r\n\r\n if (bottomNavMenuButton.length) {\r\n $(bottomNavMenuButton).click();\r\n bottomNavMenuButton.addClass('show');\r\n }\r\n else {\r\n // menu is under the \"MORE\" section. \r\n bottomNavMenuButton = $(\".menu-item-mobile[data-menu-item-id='more-button']\");\r\n $(bottomNavMenuButton).click();\r\n bottomNavMenuButton.addClass('show');\r\n\r\n //open menu under \"MORE\"\r\n $(\"[data-target='#collapse-\" + menuItemID + \"']\").click();\r\n }\r\n\r\n $('.mobile-navbar').show();\r\n e.stopPropagation();\r\n }\r\n });\r\n }\r\n }\r\n})();","(function () {\r\n $(document).on('click', '.circular-menu-item-link, .circular-menu .floating-btn', function () {\r\n //open close menu\r\n $(this).closest('.circular-menu').toggleClass('active');\r\n //toggle overlay\r\n $(\"#overlay\").toggle();\r\n })\r\n\r\n\r\n $(window).resize(checkOverlay);\r\n\r\n function checkOverlay() {\r\n if (typeof window.matchMedia == 'function'\r\n && !matchMedia('(max-width: 1199.98px)').matches) {\r\n $(\"#overlay\").css(\"display\", \"none\");\r\n $(\"#circularMenu\").removeClass(\"active\");\r\n }\r\n }\r\n})();","(function () {\r\n Titania = typeof (Titania) != \"undefined\" && Titania || {};\r\n Titania.Functions = Titania.Functions || {};\r\n\r\n Titania.Functions.IsValidEmail = function (emailAddress) {\r\n //below regex was taken from top answer in https://stackoverflow.com/questions/46370725/how-to-do-email-validation-using-regular-expression-in-typescript\r\n return emailAddress && /^(([^<>()\\[\\]\\\\.,;:\\s@\"]+(\\.[^<>()\\[\\]\\\\.,;:\\s@\"]+)*)|(\".+\"))@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}])|(([a-zA-Z\\-0-9]+\\.)+[a-zA-Z]{2,}))$/.test(emailAddress);\r\n }\r\n})();","var contactUsModalJS = (function () {\r\n var initialized = false;\r\n\r\n return {\r\n Init: function () {\r\n if (initialized) {\r\n return;\r\n }\r\n\r\n function checkTopOfContactModal() {\r\n if (typeof window.matchMedia == 'function'\r\n && matchMedia('(max-width: 1199.98px)').matches) {\r\n //Need to accomodate for height of OE banner\r\n $(\"#supportModal\").find(\".modal-dialog\").css(\"top\", $(\".header-wrapper\").height());\r\n $(\"#contactModal\").find(\".modal-dialog\").css(\"top\", $(\".header-wrapper\").height());\r\n }\r\n }\r\n\r\n checkTopOfContactModal()\r\n\r\n $(window).resize(checkTopOfContactModal);\r\n\r\n $(\"#supportModalToggle\").click(function () {\r\n $(\"#contactModal\").modal('toggle');\r\n $(\"#supportModal\").modal('toggle');\r\n });\r\n\r\n $(\"#goBackToContactModal\").click(function () {\r\n $(\"#supportModal\").modal('toggle');\r\n $(\"#contactModal\").modal('toggle');\r\n });\r\n\r\n //Check if all fields are filled out\r\n $('#sendEmailButton').prop(\"disabled\", true);\r\n\r\n $(document).on('keyup', '.contact-us-input', function (e) {\r\n $('#sendEmailButton').prop(\"disabled\", !!$('.modal.show').find(\".contact-us-input\").filter(function () { return this && (!this.value || !this.value.trim()); }).length);\r\n })\r\n\r\n $('#sendEmailButton').click(function (e) {\r\n e.preventDefault();\r\n if ($(this).prop('disabled') == true) {\r\n return;\r\n }\r\n $(this).prop('disabled', true);\r\n\r\n var contactFormViewModel = {};\r\n\r\n $.each($(this).closest('form').serializeArray(), function () {\r\n contactFormViewModel[this.name] = this.value || '';\r\n });\r\n\r\n $.ajax({\r\n type: 'POST',\r\n url: url,\r\n data: JSON.stringify(contactFormViewModel),\r\n contentType: 'application/json'\r\n }).done(function () {\r\n $(\"#supportModal\").modal('toggle');\r\n $('.contact-us-input').val('');\r\n $('#sendEmailButton').prop(\"disabled\", true);\r\n });\r\n });\r\n\r\n initialized = true;\r\n }\r\n }\r\n})();","(function () {\r\n Titania = typeof (Titania) != \"undefined\" && Titania || {};\r\n Titania.Models = Titania.Models || {};\r\n})();","(function () {\r\n Titania.Models.Boolean = function () {\r\n }\r\n\r\n //Parse a boolean from the given string.\r\n //Returns undefined if the parse fails. You can\r\n //check for success by seeing if typeof the return\r\n //value is boolean.\r\n Titania.Models.Boolean.Parse = function (s) {\r\n if (typeof (s) == \"string\") {\r\n s = s.toLowerCase();\r\n if (s == \"t\" || s == \"true\") {\r\n return true;\r\n } else if (s == \"f\" || s == \"false\") {\r\n return false;\r\n }\r\n } else if (typeof (s) == \"boolean\") {\r\n return s;\r\n }\r\n }\r\n})();","(function () {\r\n Titania.Models.Cookie = function () {\r\n\t}\r\n\r\n\t// Gets a value indicating whether the cookie exists.\r\n\tTitania.Models.Cookie.DoesCookieExist = function (cname) {\r\n\t\treturn !!Titania.Models.Cookie.GetCookie(cname);\r\n }\r\n\r\n // Gets a cookie value with the given cookie name.\r\n // Returns empty string if the find fails. \r\n\tTitania.Models.Cookie.GetCookie = function (cname) {\r\n\t\tvar name = cname + \"=\";\r\n\t\tvar decodedCookie = decodeURIComponent(document.cookie);\r\n\t\tvar ca = decodedCookie.split(';');\r\n\t\tfor (var i = 0; i < ca.length; i++) {\r\n\t\t\tvar c = ca[i];\r\n\t\t\twhile (c.charAt(0) == ' ') {\r\n\t\t\t\tc = c.substring(1);\r\n\t\t\t}\r\n\t\t\tif (c.indexOf(name) == 0) {\r\n\t\t\t\treturn c.substring(name.length, c.length);\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\treturn \"\";\r\n\t}\r\n\r\n\t// Sets a cookie with the given key and value\r\n\tTitania.Models.Cookie.SetCookie = function (cname, cvalue, path) {\r\n\t\tvar c = cname + \"=\" + cvalue;\r\n\t\tif (path) {\r\n\t\t\tc += \"; path=\" + path\r\n\t\t}\r\n\r\n\t\tdocument.cookie = c;\r\n }\r\n})();","(function () {\r\n Titania.Models.PhoneNumber = function () {\r\n }\r\n\r\n Titania.Models.PhoneNumber.Format = function (phone) {\r\n phone = (phone || '').replace(/\\D/g, '');\r\n var result = \"\";\r\n for (var i = 0; i < phone.length; i++) {\r\n if (i === 0) {\r\n result = \"(\" + phone[i];\r\n }\r\n else if (i === 2) {\r\n result = result + phone[i] + \") \";\r\n }\r\n else if (i === 5) {\r\n result = result + phone[i] + \"-\";\r\n }\r\n else {\r\n result = result + phone[i];\r\n }\r\n }\r\n return result;\r\n }\r\n})();","(function () {\r\n\r\n\tvar platform = {};\r\n\r\n\t// browser info and capability\r\n\tvar _ua = window.navigator.userAgent;\r\n\r\n\tplatform.isIDevice = (/iphone|ipod|ipad/i).test(_ua);\r\n\tplatform.isAndroid = /android/i.test(_ua);\r\n\tplatform.isSamsung = /Samsung/i.test(_ua);\r\n\tplatform.isFireFox = /Firefox/i.test(_ua);\r\n\tplatform.isOpera = /opr/i.test(_ua);\r\n\tplatform.isEdge = /edg/i.test(_ua);\r\n\tplatform.isKindleFire = /Kindle|Silk|KFAPW|KFARWI|KFASWI|KFFOWI|KFJW|KFMEWI|KFOT|KFSAW|KFSOWI|KFTBW|KFTHW|KFTT|WFFOWI/i.test(_ua);\r\n\r\n\t// Opera & FireFox only Trigger on Android\r\n\tplatform.isFireFoxForAndroid = platform.isFireFox && platform.isAndroid;\r\n\tplatform.isOperaForAndroid = platform.isOpera && platform.isAndroid;\r\n\r\n\tplatform.isChromium = (\"onbeforeinstallprompt\" in window);\r\n\tplatform.isInWebAppiOS = (window.navigator && window.navigator.standalone === true);\r\n\tplatform.isInWebAppChrome = (window.matchMedia && window.matchMedia('(display-mode: standalone)').matches);\r\n\tplatform.isMobileSafari = platform.isIDevice && _ua.indexOf('Safari') > -1 && _ua.indexOf('CriOS') < 0;\r\n\tplatform.isStandalone = platform.isInWebAppiOS || platform.isInWebAppChrome;\r\n\r\n\tplatform.isiPad = (platform.isMobileSafari && _ua.indexOf('iPad') > -1)\r\n\t\t|| (navigator.maxTouchPoints && navigator.maxTouchPoints > 2 && /MacIntel/.test(navigator.platform));\r\n\r\n\tplatform.isiPhone = platform.isMobileSafari && _ua.indexOf('iPad') === -1;\r\n\tplatform.isCompatible = platform.isChromium\r\n\t\t|| platform.isMobileSafari\r\n\t\t|| platform.isSamsung\r\n\t\t|| platform.isFireFox\r\n\t\t|| platform.isOpera;\r\n\r\n\tvar getIosVersion = function () {\r\n\t\tvar result = {\r\n\t\t\tmajor: 0,\r\n\t\t\tminor: 0,\r\n\t\t\trevision:0\r\n }\r\n\r\n\t\tif (platform.isiPad || platform.isiPhone) {\r\n\t\t\tconst extract = _ua.match(/OS (\\d+)_(\\d+)_?(\\d+)?/);\r\n\t\t\tresult.major = parseInt(extract[1] || 0, 10);\r\n\t\t\tresult.minor = parseInt(extract[2] || 0, 10);\r\n\t\t\tresult.revision = parseInt(extract[3] || 0, 10);\r\n\t\t}\r\n\r\n\t\treturn result;\r\n\t}\r\n\r\n\t$(document).ready(function () {\r\n\t\tif (!Titania.Models.Cookie.DoesCookieExist('a2hsOptedOut')) {\r\n\t\t\tTitania.Models.Cookie.SetCookie(\"a2hsOptedOut\", false, '/'); // has the user opted out\r\n\t\t}\r\n\r\n\t\t$('.pwa-install-close-button').click(function () {\r\n\t\t\t$('.error-popup-backdrop').removeClass('pwa-backdrop active');\r\n\t\t\t$('.pwa-install-footer').hide();\r\n\t\t\tTitania.Models.Cookie.SetCookie(\"a2hsOptedOut\", true, '/');\r\n\t\t});\r\n\r\n\t\tvar iosVersion = getIosVersion();\r\n\r\n\t\tif ((platform.isiPad || platform.isiPhone)\r\n\t\t\t&& (iosVersion.major >= 14 || iosVersion.major == 13 && iosVersion.minor >= 7)\r\n\t\t\t&& !platform.isInWebAppiOS\r\n\t\t\t&& !Titania.Models.Boolean.Parse(Titania.Models.Cookie.GetCookie('a2hsOptedOut'))) {\r\n\r\n\t\t\tsetTimeout(function () {\r\n\t\t\t\t$('.error-popup-backdrop').addClass('pwa-backdrop active');\r\n\t\t\t\t$('.pwa-install-footer').show();\r\n\t\t\t}, 2000);\r\n\t\t}\r\n\t\telse {\r\n\t\t\t// only show the installer tutorial video for iOS devices\r\n\t\t\t$('.pwa-video-btn').hide();\r\n\t\t}\r\n\r\n\t\t$('.pwa-video-btn').click(function () {\r\n\t\t\t$('.pwa-install-video-container').show();\r\n\r\n\t\t\t// replay the gif\r\n\t\t\tvar srcAttribute = $('.pwa-install-video-container > img')\r\n\t\t\t\t.attr('src')\r\n\t\t\t\t.split('?')[0] + '?v=' + Date.now();\r\n\r\n\t\t\t$('.pwa-install-video-container > img').attr('src', srcAttribute);\r\n\t\t});\r\n\r\n\t\t$('.pwa-install-video-container-close').click(function () {\r\n\t\t\t$('.pwa-install-video-container').hide();\r\n\t\t});\r\n\t});\r\n\r\n\twindow.addEventListener(\"beforeinstallprompt\", function (e) {\r\n\t\t// cancel prompt if running on kindle fire\r\n\t\tif (platform.isKindleFire) {\r\n\t\t\tconsole.log('i am KindleFire');\r\n\t\t\te.preventDefault();\r\n }\r\n\t});\r\n\r\n\tif ('serviceWorker' in navigator) {\r\n\t\twindow.addEventListener('load', function () {\r\n\t\t\tnavigator.serviceWorker.register('/PWAServiceWorker.js').then(function (registration) {\r\n\t\t\t\t// Registration was successful\r\n\t\t\t\tconsole.log('ServiceWorker registration successful with scope: ', registration.scope);\r\n\t\t\t}, function (err) {\r\n\t\t\t\t// registration failed :(\r\n\t\t\t\tconsole.log('ServiceWorker registration failed: ', err);\r\n\t\t\t});\r\n\t\t});\r\n\t}\r\n})();"]}