(function(n){function t(n){this.init(n)}t.prototype={value:0,size:100,startAngle:-Math.PI,thickness:"auto",fill:{gradient:["#3aeabb","#fdd250"]},emptyFill:"rgba(0, 0, 0, .1)",animation:{duration:1200,easing:"circleProgressEasing"},animationStartValue:0,reverse:!1,lineCap:"butt",constructor:t,el:null,canvas:null,ctx:null,radius:0,arcFill:null,lastFrameValue:0,init:function(t){n.extend(this,t);this.radius=this.size/2;this.initWidget();this.initFill();this.draw()},initWidget:function(){var t=this.canvas=this.canvas||n("<canvas>").prependTo(this.el)[0];t.width=this.size;t.height=this.size;this.ctx=t.getContext("2d")},initFill:function(){function a(){var t=n("<canvas>")[0];t.width=r.size;t.height=r.size;t.getContext("2d").drawImage(e,0,0,u,u);r.arcFill=r.ctx.createPattern(t,"no-repeat");r.drawFrame(r.lastFrameValue)}var r=this,t=this.fill,c=this.ctx,u=this.size,i,o,f,h,e;if(!t)throw Error("The fill is not specified!");if(t.color&&(this.arcFill=t.color),t.gradient)if(i=t.gradient,i.length==1)this.arcFill=i[0];else if(i.length>1){var s=t.gradientAngle||0,v=t.gradientDirection||[u/2*(1-Math.cos(s)),u/2*(1+Math.sin(s)),u/2*(1+Math.cos(s)),u/2*(1-Math.sin(s))],l=c.createLinearGradient.apply(c,v);for(o=0;o<i.length;o++)f=i[o],h=o/(i.length-1),n.isArray(f)&&(h=f[1],f=f[0]),l.addColorStop(h,f);this.arcFill=l}t.image&&(t.image instanceof Image?e=t.image:(e=new Image,e.src=t.image),e.complete?a():e.onload=a)},draw:function(){this.animation?this.drawAnimated(this.value):this.drawFrame(this.value)},drawFrame:function(n){this.lastFrameValue=n;this.ctx.clearRect(0,0,this.size,this.size);this.drawEmptyArc(n);this.drawArc(n)},drawArc:function(n){var t=this.ctx,i=this.radius,u=this.getThickness(),r=this.startAngle;t.save();t.beginPath();this.reverse?t.arc(i,i,i-u/2,r-Math.PI*2*n,r):t.arc(i,i,i-u/2,r,r+Math.PI*2*n);t.lineWidth=u;t.lineCap=this.lineCap;t.strokeStyle=this.arcFill;t.stroke();t.restore()},drawEmptyArc:function(n){var t=this.ctx,i=this.radius,r=this.getThickness(),u=this.startAngle;n<1&&(t.save(),t.beginPath(),n<=0?t.arc(i,i,i-r/2,0,Math.PI*2):this.reverse?t.arc(i,i,i-r/2,u,u-Math.PI*2*n):t.arc(i,i,i-r/2,u+Math.PI*2*n,u),t.lineWidth=r,t.strokeStyle=this.emptyFill,t.stroke(),t.restore())},drawAnimated:function(t){var r=this,i=this.el;i.trigger("circle-animation-start");n(this.canvas).stop(!0,!0).css({animationProgress:0}).animate({animationProgress:1},n.extend({},this.animation,{step:function(n){var u=r.animationStartValue*(1-n)+t*n;r.drawFrame(u);i.trigger("circle-animation-progress",[n,u])},complete:function(){i.trigger("circle-animation-end")}}))},getThickness:function(){return n.isNumeric(this.thickness)?this.thickness:this.size/14}};n.circleProgress={defaults:t.prototype};n.easing.circleProgressEasing=function(n,t,i,r,u){return(t/=u/2)<1?r/2*t*t*t+i:r/2*((t-=2)*t*t+2)+i};n.fn.circleProgress=function(i){var r="circle-progress",u;return i=="widget"?(u=this.data(r),u&&u.canvas):this.each(function(){var f=n(this),u=f.data(r),e=n.isPlainObject(i)?i:{};u?u.init(e):(e.el=f,u=new t(e),f.data(r,u))})}})(jQuery),function(n){n.extend(n.fn,{validate:function(t){if(!this.length){t&&t.debug&&window.console&&console.warn("Nothing selected, can't validate, returning nothing.");return}var i=n.data(this[0],"validator");return i?i:(this.attr("novalidate","novalidate"),i=new n.validator(t,this[0]),n.data(this[0],"validator",i),i.settings.onsubmit&&(this.validateDelegate(":submit","click",function(t){i.settings.submitHandler&&(i.submitButton=t.target);n(t.target).hasClass("cancel")&&(i.cancelSubmit=!0);n(t.target).attr("formnovalidate")!==undefined&&(i.cancelSubmit=!0)}),this.submit(function(t){function r(){var r;return i.settings.submitHandler?(i.submitButton&&(r=n("<input type='hidden'/>").attr("name",i.submitButton.name).val(n(i.submitButton).val()).appendTo(i.currentForm)),i.settings.submitHandler.call(i,i.currentForm,t),i.submitButton&&r.remove(),!1):!0}return(i.settings.debug&&t.preventDefault(),i.cancelSubmit)?(i.cancelSubmit=!1,r()):i.form()?i.pendingRequest?(i.formSubmitted=!0,!1):r():(i.focusInvalid(),!1)})),i)},valid:function(){if(n(this[0]).is("form"))return this.validate().form();var t=!0,i=n(this[0].form).validate();return this.each(function(){t=t&&i.element(this)}),t},removeAttrs:function(t){var i={},r=this;return n.each(t.split(/\s/),function(n,t){i[t]=r.attr(t);r.removeAttr(t)}),i},rules:function(t,i){var r=this[0],o,u,h;if(t){var e=n.data(r.form,"validator").settings,s=e.rules,f=n.validator.staticRules(r);switch(t){case"add":n.extend(f,n.validator.normalizeRule(i));s[r.name]=f;i.messages&&(e.messages[r.name]=n.extend(e.messages[r.name],i.messages));break;case"remove":return i?(o={},n.each(i.split(/\s/),function(n,t){o[t]=f[t];delete f[t]}),o):(delete s[r.name],f)}}return u=n.validator.normalizeRules(n.extend({},n.validator.classRules(r),n.validator.attributeRules(r),n.validator.dataRules(r),n.validator.staticRules(r)),r),u.required&&(h=u.required,delete u.required,u=n.extend({required:h},u)),u}});n.extend(n.expr[":"],{blank:function(t){return!n.trim(""+n(t).val())},filled:function(t){return!!n.trim(""+n(t).val())},unchecked:function(t){return!n(t).prop("checked")}});n.validator=function(t,i){this.settings=n.extend(!0,{},n.validator.defaults,t);this.currentForm=i;this.init()};n.validator.format=function(t,i){return arguments.length===1?function(){var i=n.makeArray(arguments);return i.unshift(t),n.validator.format.apply(this,i)}:(arguments.length>2&&i.constructor!==Array&&(i=n.makeArray(arguments).slice(1)),i.constructor!==Array&&(i=[i]),n.each(i,function(n,i){t=t.replace(new RegExp("\\{"+n+"\\}","g"),function(){return i})}),t)};n.extend(n.validator,{defaults:{messages:{},groups:{},rules:{},errorClass:"error",validClass:"valid",errorElement:"label",focusInvalid:!0,errorContainer:n([]),errorLabelContainer:n([]),onsubmit:!0,ignore:":hidden",ignoreTitle:!1,onfocusin:function(n){this.lastActive=n;this.settings.focusCleanup&&!this.blockFocusCleanup&&(this.settings.unhighlight&&this.settings.unhighlight.call(this,n,this.settings.errorClass,this.settings.validClass),this.addWrapper(this.errorsFor(n)).hide())},onfocusout:function(n){!this.checkable(n)&&(n.name in this.submitted||!this.optional(n))&&this.element(n)},onkeyup:function(n,t){(t.which!==9||this.elementValue(n)!=="")&&(n.name in this.submitted||n===this.lastElement)&&this.element(n)},onclick:function(n){n.name in this.submitted?this.element(n):n.parentNode.name in this.submitted&&this.element(n.parentNode)},highlight:function(t,i,r){t.type==="radio"?this.findByName(t.name).addClass(i).removeClass(r):n(t).addClass(i).removeClass(r)},unhighlight:function(t,i,r){t.type==="radio"?this.findByName(t.name).removeClass(i).addClass(r):n(t).removeClass(i).addClass(r)}},setDefaults:function(t){n.extend(n.validator.defaults,t)},messages:{required:"Please fill in this field.",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.",creditcard:"Please enter a valid credit card number.",equalTo:"Please enter the same value again.",maxlength:n.validator.format("Please enter no more than {0} characters."),minlength:n.validator.format("Please enter at least {0} characters."),rangelength:n.validator.format("Please enter a value between {0} and {1} characters long."),range:n.validator.format("Please enter a value between {0} and {1}."),max:n.validator.format("Please enter a value less than or equal to {0}."),min:n.validator.format("Please enter a value greater than or equal to {0}.")},autoCreateRanges:!1,prototype:{init:function(){function r(t){var i=n.data(this[0].form,"validator"),r="on"+t.type.replace(/^validate/,"");i.settings[r]&&i.settings[r].call(i,this[0],t)}var i,t;this.labelContainer=n(this.settings.errorLabelContainer);this.errorContext=this.labelContainer.length&&this.labelContainer||n(this.currentForm);this.containers=n(this.settings.errorContainer).add(this.settings.errorLabelContainer);this.submitted={};this.valueCache={};this.pendingRequest=0;this.pending={};this.invalid={};this.reset();i=this.groups={};n.each(this.settings.groups,function(t,r){typeof r=="string"&&(r=r.split(/\s/));n.each(r,function(n,r){i[r]=t})});t=this.settings.rules;n.each(t,function(i,r){t[i]=n.validator.normalizeRule(r)});n(this.currentForm).validateDelegate(":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'] ","focusin focusout keyup",r).validateDelegate("[type='radio'], [type='checkbox'], select, option","click",r);this.settings.invalidHandler&&n(this.currentForm).bind("invalid-form.validate",this.settings.invalidHandler)},form:function(){return this.checkForm(),n.extend(this.submitted,this.errorMap),this.invalid=n.extend({},this.errorMap),this.valid()||n(this.currentForm).triggerHandler("invalid-form",[this]),this.showErrors(),this.valid()},checkForm:function(){this.prepareForm();for(var n=0,t=this.currentElements=this.elements();t[n];n++)this.check(t[n]);return this.valid()},element:function(t){t=this.validationTargetFor(this.clean(t));this.lastElement=t;this.prepareElement(t);this.currentElements=n(t);var i=this.check(t)!==!1;return i?delete this.invalid[t.name]:this.invalid[t.name]=!0,this.numberOfInvalids()||(this.toHide=this.toHide.add(this.containers)),this.showErrors(),i},showErrors:function(t){if(t){n.extend(this.errorMap,t);this.errorList=[];for(var i in t)this.errorList.push({message:t[i],element:this.findByName(i)[0]});this.successList=n.grep(this.successList,function(n){return!(n.name in t)})}this.settings.showErrors?this.settings.showErrors.call(this,this.errorMap,this.errorList):this.defaultShowErrors()},resetForm:function(){n.fn.resetForm&&n(this.currentForm).resetForm();this.submitted={};this.lastElement=null;this.prepareForm();this.hideErrors();this.elements().removeClass(this.settings.errorClass).removeData("previousValue")},numberOfInvalids:function(){return this.objectLength(this.invalid)},objectLength:function(n){var t=0,i;for(i in n)t++;return t},hideErrors:function(){this.addWrapper(this.toHide).hide()},valid:function(){return this.size()===0},size:function(){return this.errorList.length},focusInvalid:function(){if(this.settings.focusInvalid)try{n(this.findLastActive()||this.errorList.length&&this.errorList[0].element||[]).filter(":visible").focus().trigger("focusin")}catch(t){}},findLastActive:function(){var t=this.lastActive;return t&&n.grep(this.errorList,function(n){return n.element.name===t.name}).length===1&&t},elements:function(){var t=this,i={};return n(this.currentForm).find("input, select, textarea").not(":submit, :reset, :image, [disabled]").not(this.settings.ignore).filter(function(){return(!this.name&&t.settings.debug&&window.console&&console.error("%o has no name assigned",this),this.name in i||!t.objectLength(n(this).rules()))?!1:(i[this.name]=!0,!0)})},clean:function(t){return n(t)[0]},errors:function(){var t=this.settings.errorClass.replace(" ",".");return n(this.settings.errorElement+"."+t,this.errorContext)},reset:function(){this.successList=[];this.errorList=[];this.errorMap={};this.toShow=n([]);this.toHide=n([]);this.currentElements=n([])},prepareForm:function(){this.reset();this.toHide=this.errors().add(this.containers)},prepareElement:function(n){this.reset();this.toHide=this.errorsFor(n)},elementValue:function(t){var r=n(t).attr("type"),i=n(t).val();return r==="radio"||r==="checkbox"?n("input[name='"+n(t).attr("name")+"']:checked").val():typeof i=="string"?i.replace(/\r/g,""):i},check:function(t){var r,u;t=this.validationTargetFor(this.clean(t));var f=n(t).rules(),e=!1,s=this.elementValue(t),i;for(r in f){u={method:r,parameters:f[r]};try{if(i=n.validator.methods[r].call(this,s,t,u.parameters),i==="dependency-mismatch"){e=!0;continue}if(e=!1,i==="pending"){this.toHide=this.toHide.not(this.errorsFor(t));return}if(!i)return this.formatAndAdd(t,u),!1}catch(o){this.settings.debug&&window.console&&console.log("Exception occured when checking element "+t.id+", check the '"+u.method+"' method.",o);throw o;}}if(!e)return this.objectLength(f)&&this.successList.push(t),!0},customDataMessage:function(t,i){return n(t).data("msg-"+i.toLowerCase())||t.attributes&&n(t).attr("data-msg-"+i.toLowerCase())},customMessage:function(n,t){var i=this.settings.messages[n];return i&&(i.constructor===String?i:i[t])},findDefined:function(){for(var n=0;n<arguments.length;n++)if(arguments[n]!==undefined)return arguments[n];return undefined},defaultMessage:function(t,i){return this.findDefined(this.customMessage(t.name,i),this.customDataMessage(t,i),!this.settings.ignoreTitle&&t.title||undefined,n.validator.messages[i],"<strong>Warning: No message defined for "+t.name+"<\/strong>")},formatAndAdd:function(t,i){var r=this.defaultMessage(t,i.method),u=/\$?\{(\d+)\}/g;typeof r=="function"?r=r.call(this,i.parameters,t):u.test(r)&&(r=n.validator.format(r.replace(u,"{$1}"),i.parameters));this.errorList.push({message:r,element:t});this.errorMap[t.name]=r;this.submitted[t.name]=r},addWrapper:function(n){return this.settings.wrapper&&(n=n.add(n.parent(this.settings.wrapper))),n},defaultShowErrors:function(){for(var i,t,n=0;this.errorList[n];n++)t=this.errorList[n],this.settings.highlight&&this.settings.highlight.call(this,t.element,this.settings.errorClass,this.settings.validClass),this.showLabel(t.element,t.message);if(this.errorList.length&&(this.toShow=this.toShow.add(this.containers)),this.settings.success)for(n=0;this.successList[n];n++)this.showLabel(this.successList[n]);if(this.settings.unhighlight)for(n=0,i=this.validElements();i[n];n++)this.settings.unhighlight.call(this,i[n],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 n(this.errorList).map(function(){return this.element})},showLabel:function(t,i){var r=this.errorsFor(t);r.length?(r.removeClass(this.settings.validClass).addClass(this.settings.errorClass),r.html(i)):(r=n("<"+this.settings.errorElement+">").attr("for",this.idOrName(t)).addClass(this.settings.errorClass).html(i||""),this.settings.wrapper&&(r=r.hide().show().wrap("<"+this.settings.wrapper+"/>").parent()),this.labelContainer.append(r).length||(this.settings.errorPlacement?this.settings.errorPlacement(r,n(t)):r.insertAfter(t)));!i&&this.settings.success&&(r.text(""),typeof this.settings.success=="string"?r.addClass(this.settings.success):this.settings.success(r,t));this.toShow=this.toShow.add(r)},errorsFor:function(t){var i=this.idOrName(t);return this.errors().filter(function(){return n(this).attr("for")===i})},idOrName:function(n){return this.groups[n.name]||(this.checkable(n)?n.name:n.id||n.name)},validationTargetFor:function(n){return this.checkable(n)&&(n=this.findByName(n.name).not(this.settings.ignore)[0]),n},checkable:function(n){return/radio|checkbox/i.test(n.type)},findByName:function(t){return n(this.currentForm).find("[name='"+t+"']")},getLength:function(t,i){switch(i.nodeName.toLowerCase()){case"select":return n("option:selected",i).length;case"input":if(this.checkable(i))return this.findByName(i.name).filter(":checked").length}return t.length},depend:function(n,t){return this.dependTypes[typeof n]?this.dependTypes[typeof n](n,t):!0},dependTypes:{boolean:function(n){return n},string:function(t,i){return!!n(t,i.form).length},"function":function(n,t){return n(t)}},optional:function(t){var i=this.elementValue(t);return!n.validator.methods.required.call(this,i,t)&&"dependency-mismatch"},startRequest:function(n){this.pending[n.name]||(this.pendingRequest++,this.pending[n.name]=!0)},stopRequest:function(t,i){this.pendingRequest--;this.pendingRequest<0&&(this.pendingRequest=0);delete this.pending[t.name];i&&this.pendingRequest===0&&this.formSubmitted&&this.form()?(n(this.currentForm).submit(),this.formSubmitted=!1):!i&&this.pendingRequest===0&&this.formSubmitted&&(n(this.currentForm).triggerHandler("invalid-form",[this]),this.formSubmitted=!1)},previousValue:function(t){return n.data(t,"previousValue")||n.data(t,"previousValue",{old:null,valid:!0,message:this.defaultMessage(t,"remote")})}},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(t,i){t.constructor===String?this.classRuleSettings[t]=i:n.extend(this.classRuleSettings,t)},classRules:function(t){var i={},r=n(t).attr("class");return r&&n.each(r.split(" "),function(){this in n.validator.classRuleSettings&&n.extend(i,n.validator.classRuleSettings[this])}),i},attributeRules:function(t){var u={},f=n(t),r,i;for(r in n.validator.methods)r==="required"?(i=f.get(0).getAttribute(r),i===""&&(i=!0),i=!!i):i=f.attr(r),i?u[r]=i:f[0].getAttribute("type")===r&&(u[r]=!0);return u.maxlength&&/-1|2147483647|524288/.test(u.maxlength)&&delete u.maxlength,u},dataRules:function(t){var i,r,u={},f=n(t);for(i in n.validator.methods)r=f.data("rule-"+i.toLowerCase()),r!==undefined&&(u[i]=r);return u},staticRules:function(t){var i={},r=n.data(t.form,"validator");return r.settings.rules&&(i=n.validator.normalizeRule(r.settings.rules[t.name])||{}),i},normalizeRules:function(t,i){return n.each(t,function(r,u){if(u===!1){delete t[r];return}if(u.param||u.depends){var f=!0;switch(typeof u.depends){case"string":f=!!n(u.depends,i.form).length;break;case"function":f=u.depends.call(i,i)}f?t[r]=u.param!==undefined?u.param:!0:delete t[r]}}),n.each(t,function(r,u){t[r]=n.isFunction(u)?u(i):u}),n.each(["minlength","maxlength"],function(){t[this]&&(t[this]=Number(t[this]))}),n.each(["rangelength"],function(){var i;t[this]&&(n.isArray(t[this])?t[this]=[Number(t[this][0]),Number(t[this][1])]:typeof t[this]=="string"&&(i=t[this].split(/[\s,]+/),t[this]=[Number(i[0]),Number(i[1])]))}),n.validator.autoCreateRanges&&(t.min&&t.max&&(t.range=[t.min,t.max],delete t.min,delete t.max),t.minlength&&t.maxlength&&(t.rangelength=[t.minlength,t.maxlength],delete t.minlength,delete t.maxlength)),t},normalizeRule:function(t){if(typeof t=="string"){var i={};n.each(t.split(/\s/),function(){i[this]=!0});t=i}return t},addMethod:function(t,i,r){n.validator.methods[t]=i;n.validator.messages[t]=r!==undefined?r:n.validator.messages[t];i.length<3&&n.validator.addClassRules(t,n.validator.normalizeRule(t))},methods:{required:function(t,i,r){if(!this.depend(r,i))return"dependency-mismatch";if(i.nodeName.toLowerCase()==="select"){var u=n(i).val();return u&&u.length>0}return this.checkable(i)?this.getLength(t,i)>0:n.trim(t).length>0},remote:function(t,i,r){var f,u,e;return this.optional(i)?"dependency-mismatch":(f=this.previousValue(i),this.settings.messages[i.name]||(this.settings.messages[i.name]={}),f.originalMessage=this.settings.messages[i.name].remote,this.settings.messages[i.name].remote=f.message,r=typeof r=="string"&&{url:r}||r,f.old===t)?f.valid:(f.old=t,u=this,this.startRequest(i),e={},e[i.name]=t,n.ajax(n.extend(!0,{url:r,mode:"abort",port:"validate"+i.name,dataType:"json",data:e,success:function(r){var e,h,s,o;u.settings.messages[i.name].remote=f.originalMessage;e=r===!0||r==="true";e?(h=u.formSubmitted,u.prepareElement(i),u.formSubmitted=h,u.successList.push(i),delete u.invalid[i.name],u.showErrors()):(s={},o=r||u.defaultMessage(i,"remote"),s[i.name]=f.message=n.isFunction(o)?o(t):o,u.invalid[i.name]=!0,u.showErrors(s));f.valid=e;u.stopRequest(i,e)}},r)),"pending")},email:function(n,t){return this.optional(t)||/^((([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+(\.([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+)*)|((\x22)((((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(([\x01-\x08\x0b\x0c\x0e-\x1f\x7f]|\x21|[\x23-\x5b]|[\x5d-\x7e]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(\\([\x01-\x09\x0b\x0c\x0d-\x7f]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]))))*(((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(\x22)))@((([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.)+(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))$/i.test(n)},url:function(n,t){return this.optional(t)||/^(https?|s?ftp):\/\/(((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:)*@)?(((\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5]))|((([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.)+(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.?)(:\d*)?)(\/((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)+(\/(([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)*)*)?)?(\?((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)|[\uE000-\uF8FF]|\/|\?)*)?(#((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)|\/|\?)*)?$/i.test(n)},date:function(n,t){return this.optional(t)||!/Invalid|NaN/.test(new Date(n).toString())},dateISO:function(n,t){return this.optional(t)||/^\d{4}[\/\-]\d{1,2}[\/\-]\d{1,2}$/.test(n)},number:function(n,t){return this.optional(t)||/^-?(?:\d+|\d{1,3}(?:,\d{3})+)?(?:\.\d+)?$/.test(n)},digits:function(n,t){return this.optional(t)||/^\d+$/.test(n)},creditcard:function(n,t){var r,e;if(this.optional(t))return"dependency-mismatch";if(/[^0-9 \-]+/.test(n))return!1;var f=0,i=0,u=!1;for(n=n.replace(/\D/g,""),r=n.length-1;r>=0;r--)e=n.charAt(r),i=parseInt(e,10),u&&(i*=2)>9&&(i-=9),f+=i,u=!u;return f%10==0},minlength:function(t,i,r){var u=n.isArray(t)?t.length:this.getLength(n.trim(t),i);return this.optional(i)||u>=r},maxlength:function(t,i,r){var u=n.isArray(t)?t.length:this.getLength(n.trim(t),i);return this.optional(i)||u<=r},rangelength:function(t,i,r){var u=n.isArray(t)?t.length:this.getLength(n.trim(t),i);return this.optional(i)||u>=r[0]&&u<=r[1]},min:function(n,t,i){return this.optional(t)||n>=i},max:function(n,t,i){return this.optional(t)||n<=i},range:function(n,t,i){return this.optional(t)||n>=i[0]&&n<=i[1]},equalTo:function(t,i,r){var u=n(r);return this.settings.onfocusout&&u.unbind(".validate-equalTo").bind("blur.validate-equalTo",function(){n(i).valid()}),t===u.val()}}});n.format=n.validator.format}(jQuery),function(n){var t={},i;n.ajaxPrefilter?n.ajaxPrefilter(function(n,i,r){var u=n.port;n.mode==="abort"&&(t[u]&&t[u].abort(),t[u]=r)}):(i=n.ajax,n.ajax=function(r){var f=("mode"in r?r:n.ajaxSettings).mode,u=("port"in r?r:n.ajaxSettings).port;return f==="abort"?(t[u]&&t[u].abort(),t[u]=i.apply(this,arguments),t[u]):i.apply(this,arguments)})}(jQuery),function(n){n.extend(n.fn,{validateDelegate:function(t,i,r){return this.bind(i,function(i){var u=n(i.target);if(u.is(t))return r.apply(u,arguments)})}})}(jQuery);window.Modernizr=function(n,t,i){function a(n){c.cssText=n}function vt(n,t){return a(y.join(n+";")+(t||""))}function h(n,t){return typeof n===t}function v(n,t){return!!~(""+n).indexOf(t)}function lt(n,t){var u,r;for(u in n)if(r=n[u],!v(r,"-")&&c[r]!==i)return t=="pfx"?r:!0;return!1}function yt(n,t,r){var f,u;for(f in n)if(u=t[n[f]],u!==i)return r===!1?n[f]:h(u,"function")?u.bind(r||t):u;return!1}function f(n,t,i){var r=n.charAt(0).toUpperCase()+n.slice(1),u=(n+" "+ot.join(r+" ")+r).split(" ");return h(t,"string")||h(t,"undefined")?lt(u,t):(u=(n+" "+st.join(r+" ")+r).split(" "),yt(u,t,i))}function pt(){u.input=function(i){for(var r=0,u=i.length;r<u;r++)w[i[r]]=!!(i[r]in o);return w.list&&(w.list=!!(t.createElement("datalist")&&n.HTMLDataListElement)),w}("autocomplete autofocus list placeholder max min multiple pattern required step".split(" "));u.inputtypes=function(n){for(var u=0,r,f,e,h=n.length;u<h;u++)o.setAttribute("type",f=n[u]),r=o.type!=="text",r&&(o.value=g,o.style.cssText="position:absolute;visibility:hidden;",/^range$/.test(f)&&o.style.WebkitAppearance!==i?(s.appendChild(o),e=t.defaultView,r=e.getComputedStyle&&e.getComputedStyle(o,null).WebkitAppearance!=="textfield"&&o.offsetHeight!==0,s.removeChild(o)):/^(search|tel)$/.test(f)||(r=/^(url|email)$/.test(f)?o.checkValidity&&o.checkValidity()===!1:o.value!=g)),ht[n[u]]=!!r;return ht}("search tel url email datetime date month week time datetime-local number range color".split(" "))}var u={},d=!0,s=t.documentElement,e="modernizr",ut=t.createElement(e),c=ut.style,o=t.createElement("input"),g=":)",ft={}.toString,y=" -webkit- -moz- -o- -ms- ".split(" "),et="Webkit Moz O ms",ot=et.split(" "),st=et.toLowerCase().split(" "),p={svg:"http://www.w3.org/2000/svg"},r={},ht={},w={},nt=[],tt=nt.slice,b,l=function(n,i,r,u){var l,a,c,v,f=t.createElement("div"),h=t.body,o=h||t.createElement("body");if(parseInt(r,10))while(r--)c=t.createElement("div"),c.id=u?u[r]:e+(r+1),f.appendChild(c);return l=["&#173;",'<style id="s',e,'">',n,"<\/style>"].join(""),f.id=e,(h?f:o).innerHTML+=l,o.appendChild(f),h||(o.style.background="",o.style.overflow="hidden",v=s.style.overflow,s.style.overflow="hidden",s.appendChild(o)),a=i(f,n),h?f.parentNode.removeChild(f):(o.parentNode.removeChild(o),s.style.overflow=v),!!a},at=function(t){var i=n.matchMedia||n.msMatchMedia,r;return i?i(t).matches:(l("@media "+t+" { #"+e+" { position: absolute; } }",function(t){r=(n.getComputedStyle?getComputedStyle(t,null):t.currentStyle).position=="absolute"}),r)},ct=function(){function r(r,u){u=u||t.createElement(n[r]||"div");r="on"+r;var f=r in u;return f||(u.setAttribute||(u=t.createElement("div")),u.setAttribute&&u.removeAttribute&&(u.setAttribute(r,""),f=h(u[r],"function"),h(u[r],"undefined")||(u[r]=i),u.removeAttribute(r))),u=null,f}var n={select:"input",change:"input",submit:"form",reset:"form",error:"img",load:"img",abort:"img"};return r}(),it={}.hasOwnProperty,rt,k;rt=h(it,"undefined")||h(it.call,"undefined")?function(n,t){return t in n&&h(n.constructor.prototype[t],"undefined")}:function(n,t){return it.call(n,t)};Function.prototype.bind||(Function.prototype.bind=function(n){var t=this,i,r;if(typeof t!="function")throw new TypeError;return i=tt.call(arguments,1),r=function(){var f,e,u;return this instanceof r?(f=function(){},f.prototype=t.prototype,e=new f,u=t.apply(e,i.concat(tt.call(arguments))),Object(u)===u)?u:e:t.apply(n,i.concat(tt.call(arguments)))},r});r.flexbox=function(){return f("flexWrap")};r.flexboxlegacy=function(){return f("boxDirection")};r.canvas=function(){var n=t.createElement("canvas");return!!(n.getContext&&n.getContext("2d"))};r.canvastext=function(){return!!(u.canvas&&h(t.createElement("canvas").getContext("2d").fillText,"function"))};r.webgl=function(){return!!n.WebGLRenderingContext};r.touch=function(){var i;return"ontouchstart"in n||n.DocumentTouch&&t instanceof DocumentTouch?i=!0:l(["@media (",y.join("touch-enabled),("),e,")","{#modernizr{top:9px;position:absolute}}"].join(""),function(n){i=n.offsetTop===9}),i};r.geolocation=function(){return"geolocation"in navigator};r.postmessage=function(){return!!n.postMessage};r.websqldatabase=function(){return!!n.openDatabase};r.indexedDB=function(){return!!f("indexedDB",n)};r.hashchange=function(){return ct("hashchange",n)&&(t.documentMode===i||t.documentMode>7)};r.history=function(){return!!(n.history&&history.pushState)};r.draganddrop=function(){var n=t.createElement("div");return"draggable"in n||"ondragstart"in n&&"ondrop"in n};r.websockets=function(){return"WebSocket"in n||"MozWebSocket"in n};r.rgba=function(){return a("background-color:rgba(150,255,150,.5)"),v(c.backgroundColor,"rgba")};r.hsla=function(){return a("background-color:hsla(120,40%,100%,.5)"),v(c.backgroundColor,"rgba")||v(c.backgroundColor,"hsla")};r.multiplebgs=function(){return a("background:url(https://),url(https://),red url(https://)"),/(url\s*\(.*?){3}/.test(c.background)};r.backgroundsize=function(){return f("backgroundSize")};r.borderimage=function(){return f("borderImage")};r.borderradius=function(){return f("borderRadius")};r.boxshadow=function(){return f("boxShadow")};r.textshadow=function(){return t.createElement("div").style.textShadow===""};r.opacity=function(){return vt("opacity:.55"),/^0.55$/.test(c.opacity)};r.cssanimations=function(){return f("animationName")};r.csscolumns=function(){return f("columnCount")};r.cssgradients=function(){var n="background-image:";return a((n+"-webkit- ".split(" ").join("gradient(linear,left top,right bottom,from(#9f9),to(white));"+n)+y.join("linear-gradient(left top,#9f9, white);"+n)).slice(0,-n.length)),v(c.backgroundImage,"gradient")};r.cssreflections=function(){return f("boxReflect")};r.csstransforms=function(){return!!f("transform")};r.csstransforms3d=function(){var n=!!f("perspective");return n&&"webkitPerspective"in s.style&&l("@media (transform-3d),(-webkit-transform-3d){#modernizr{left:9px;position:absolute;height:3px;}}",function(t){n=t.offsetLeft===9&&t.offsetHeight===3}),n};r.csstransitions=function(){return f("transition")};r.fontface=function(){var n;return l('@font-face {font-family:"font";src:url("https://")}',function(i,r){var f=t.getElementById("smodernizr"),u=f.sheet||f.styleSheet,e=u?u.cssRules&&u.cssRules[0]?u.cssRules[0].cssText:u.cssText||"":"";n=/src/i.test(e)&&e.indexOf(r.split(" ")[0])===0}),n};r.generatedcontent=function(){var n;return l(["#",e,"{font:0/0 a}#",e,':after{content:"',g,'";visibility:hidden;font:3px/1 a}'].join(""),function(t){n=t.offsetHeight>=3}),n};r.video=function(){var i=t.createElement("video"),n=!1;try{(n=!!i.canPlayType)&&(n=new Boolean(n),n.ogg=i.canPlayType('video/ogg; codecs="theora"').replace(/^no$/,""),n.h264=i.canPlayType('video/mp4; codecs="avc1.42E01E"').replace(/^no$/,""),n.webm=i.canPlayType('video/webm; codecs="vp8, vorbis"').replace(/^no$/,""))}catch(r){}return n};r.audio=function(){var i=t.createElement("audio"),n=!1;try{(n=!!i.canPlayType)&&(n=new Boolean(n),n.ogg=i.canPlayType('audio/ogg; codecs="vorbis"').replace(/^no$/,""),n.mp3=i.canPlayType("audio/mpeg;").replace(/^no$/,""),n.wav=i.canPlayType('audio/wav; codecs="1"').replace(/^no$/,""),n.m4a=(i.canPlayType("audio/x-m4a;")||i.canPlayType("audio/aac;")).replace(/^no$/,""))}catch(r){}return n};r.localstorage=function(){try{return localStorage.setItem(e,e),localStorage.removeItem(e),!0}catch(n){return!1}};r.sessionstorage=function(){try{return sessionStorage.setItem(e,e),sessionStorage.removeItem(e),!0}catch(n){return!1}};r.webworkers=function(){return!!n.Worker};r.applicationcache=function(){return!!n.applicationCache};r.svg=function(){return!!t.createElementNS&&!!t.createElementNS(p.svg,"svg").createSVGRect};r.inlinesvg=function(){var n=t.createElement("div");return n.innerHTML="<svg/>",(n.firstChild&&n.firstChild.namespaceURI)==p.svg};r.smil=function(){return!!t.createElementNS&&/SVGAnimate/.test(ft.call(t.createElementNS(p.svg,"animate")))};r.svgclippaths=function(){return!!t.createElementNS&&/SVGClipPath/.test(ft.call(t.createElementNS(p.svg,"clipPath")))};for(k in r)rt(r,k)&&(b=k.toLowerCase(),u[b]=r[k](),nt.push((u[b]?"":"no-")+b));return u.input||pt(),u.addTest=function(n,t){if(typeof n=="object")for(var r in n)rt(n,r)&&u.addTest(r,n[r]);else{if(n=n.toLowerCase(),u[n]!==i)return u;t=typeof t=="function"?t():t;typeof d!="undefined"&&d&&(s.className+=" "+(t?"":"no-")+n);u[n]=t}return u},a(""),ut=o=null,function(n,t){function p(n,t){var i=n.createElement("p"),r=n.getElementsByTagName("head")[0]||n.documentElement;return i.innerHTML="x<style>"+t+"<\/style>",r.insertBefore(i.lastChild,r.firstChild)}function c(){var n=r.elements;return typeof n=="string"?n.split(" "):n}function o(n){var t=h[n[s]];return t||(t={},e++,n[s]=e,h[e]=t),t}function l(n,r,u){if(r||(r=t),i)return r.createElement(n);u||(u=o(r));var f;return f=u.cache[n]?u.cache[n].cloneNode():y.test(n)?(u.cache[n]=u.createElem(n)).cloneNode():u.createElem(n),f.canHaveChildren&&!v.test(n)?u.frag.appendChild(f):f}function w(n,r){if(n||(n=t),i)return n.createDocumentFragment();r=r||o(n);for(var f=r.frag.cloneNode(),u=0,e=c(),s=e.length;u<s;u++)f.createElement(e[u]);return f}function b(n,t){t.cache||(t.cache={},t.createElem=n.createElement,t.createFrag=n.createDocumentFragment,t.frag=t.createFrag());n.createElement=function(i){return r.shivMethods?l(i,n,t):t.createElem(i)};n.createDocumentFragment=Function("h,f","return function(){var n=f.cloneNode(),c=n.createElement;h.shivMethods&&("+c().join().replace(/\w+/g,function(n){return t.createElem(n),t.frag.createElement(n),'c("'+n+'")'})+");return n}")(r,t.frag)}function a(n){n||(n=t);var u=o(n);return!r.shivCSS||f||u.hasCSS||(u.hasCSS=!!p(n,"article,aside,figcaption,figure,footer,header,hgroup,nav,section{display:block}mark{background:#FF0;color:#000}")),i||b(n,u),n}var u=n.html5||{},v=/^<|^(?:button|map|select|textarea|object|iframe|option|optgroup)$/i,y=/^(?:a|b|code|div|fieldset|h1|h2|h3|h4|h5|h6|i|label|li|ol|p|q|span|strong|style|table|tbody|td|th|tr|ul)$/i,f,s="_html5shiv",e=0,h={},i,r;(function(){try{var n=t.createElement("a");n.innerHTML="<xyz><\/xyz>";f="hidden"in n;i=n.childNodes.length==1||function(){t.createElement("a");var n=t.createDocumentFragment();return typeof n.cloneNode=="undefined"||typeof n.createDocumentFragment=="undefined"||typeof n.createElement=="undefined"}()}catch(r){f=!0;i=!0}})();r={elements:u.elements||"abbr article aside audio bdi canvas data datalist details figcaption figure footer header hgroup mark meter nav output progress section summary time video",shivCSS:u.shivCSS!==!1,supportsUnknownElements:i,shivMethods:u.shivMethods!==!1,type:"default",shivDocument:a,createElement:l,createDocumentFragment:w};n.html5=r;a(t)}(this,t),u._version="2.6.2",u._prefixes=y,u._domPrefixes=st,u._cssomPrefixes=ot,u.mq=at,u.hasEvent=ct,u.testProp=function(n){return lt([n])},u.testAllProps=f,u.testStyles=l,u.prefixed=function(n,t,i){return t?f(n,t,i):f(n,"pfx")},s.className=s.className.replace(/(^|\s)no-js(\s|$)/,"$1$2")+(d?" js "+nt.join(" "):""),u}(this,this.document);typeof JSON!="object"&&(JSON={}),function(){"use strict";function i(n){return n<10?"0"+n:n}function o(n){return e.lastIndex=0,e.test(n)?'"'+n.replace(e,function(n){var t=s[n];return typeof t=="string"?t:"\\u"+("0000"+n.charCodeAt(0).toString(16)).slice(-4)})+'"':'"'+n+'"'}function u(i,f){var s,l,h,a,v=n,c,e=f[i];e&&typeof e=="object"&&typeof e.toJSON=="function"&&(e=e.toJSON(i));typeof t=="function"&&(e=t.call(f,i,e));switch(typeof e){case"string":return o(e);case"number":return isFinite(e)?String(e):"null";case"boolean":case"null":return String(e);case"object":if(!e)return"null";if(n+=r,c=[],Object.prototype.toString.apply(e)==="[object Array]"){for(a=e.length,s=0;s<a;s+=1)c[s]=u(s,e)||"null";return h=c.length===0?"[]":n?"[\n"+n+c.join(",\n"+n)+"\n"+v+"]":"["+c.join(",")+"]",n=v,h}if(t&&typeof t=="object")for(a=t.length,s=0;s<a;s+=1)typeof t[s]=="string"&&(l=t[s],h=u(l,e),h&&c.push(o(l)+(n?": ":":")+h));else for(l in e)Object.prototype.hasOwnProperty.call(e,l)&&(h=u(l,e),h&&c.push(o(l)+(n?": ":":")+h));return h=c.length===0?"{}":n?"{\n"+n+c.join(",\n"+n)+"\n"+v+"}":"{"+c.join(",")+"}",n=v,h}}typeof Date.prototype.toJSON!="function"&&(Date.prototype.toJSON=function(){return isFinite(this.valueOf())?this.getUTCFullYear()+"-"+i(this.getUTCMonth()+1)+"-"+i(this.getUTCDate())+"T"+i(this.getUTCHours())+":"+i(this.getUTCMinutes())+":"+i(this.getUTCSeconds())+"Z":null},String.prototype.toJSON=Number.prototype.toJSON=Boolean.prototype.toJSON=function(){return this.valueOf()});var f=/[\u0000\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,e=/[\\\"\x00-\x1f\x7f-\x9f\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,n,r,s={"\b":"\\b","\t":"\\t","\n":"\\n","\f":"\\f","\r":"\\r",'"':'\\"',"\\":"\\\\"},t;typeof JSON.stringify!="function"&&(JSON.stringify=function(i,f,e){var o;if(n="",r="",typeof e=="number")for(o=0;o<e;o+=1)r+=" ";else typeof e=="string"&&(r=e);if(t=f,f&&typeof f!="function"&&(typeof f!="object"||typeof f.length!="number"))throw new Error("JSON.stringify");return u("",{"":i})});typeof JSON.parse!="function"&&(JSON.parse=function(text,reviver){function walk(n,t){var r,u,i=n[t];if(i&&typeof i=="object")for(r in i)Object.prototype.hasOwnProperty.call(i,r)&&(u=walk(i,r),u!==undefined?i[r]=u:delete i[r]);return reviver.call(n,t,i)}var j;if(text=String(text),f.lastIndex=0,f.test(text)&&(text=text.replace(f,function(n){return"\\u"+("0000"+n.charCodeAt(0).toString(16)).slice(-4)})),/^[\],:{}\s]*$/.test(text.replace(/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g,"@").replace(/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,"]").replace(/(?:^|:|,)(?:\s*\[)+/g,"")))return j=eval("("+text+")"),typeof reviver=="function"?walk({"":j},""):j;throw new SyntaxError("JSON.parse");})}(),function(){var a=this,ct=a._,e={},r=Array.prototype,g=Object.prototype,lt=Function.prototype,v=r.push,t=r.slice,o=r.concat,f=g.toString,at=g.hasOwnProperty,nt=r.forEach,tt=r.map,it=r.reduce,rt=r.reduceRight,ut=r.filter,ft=r.every,et=r.some,s=r.indexOf,ot=r.lastIndexOf,vt=Array.isArray,yt=Object.keys,y=lt.bind,n=function(t){if(t instanceof n)return t;if(!(this instanceof n))return new n(t);this._wrapped=t},i,p,w,h,b,k,c,u,st,ht,l;typeof exports!="undefined"?(typeof module!="undefined"&&module.exports&&(exports=module.exports=n),exports._=n):a._=n;n.VERSION="1.4.4";i=n.each=n.forEach=function(t,i,r){var u,o,f;if(t!=null)if(nt&&t.forEach===nt)t.forEach(i,r);else if(t.length===+t.length){for(u=0,o=t.length;u<o;u++)if(i.call(r,t[u],u,t)===e)return}else for(f in t)if(n.has(t,f)&&i.call(r,t[f],f,t)===e)return};n.map=n.collect=function(n,t,r){var u=[];return n==null?u:tt&&n.map===tt?n.map(t,r):(i(n,function(n,i,f){u[u.length]=t.call(r,n,i,f)}),u)};p="Reduce of empty array with no initial value";n.reduce=n.foldl=n.inject=function(t,r,u,f){var e=arguments.length>2;if(t==null&&(t=[]),it&&t.reduce===it)return f&&(r=n.bind(r,f)),e?t.reduce(r,u):t.reduce(r);if(i(t,function(n,t,i){e?u=r.call(f,u,n,t,i):(u=n,e=!0)}),!e)throw new TypeError(p);return u};n.reduceRight=n.foldr=function(t,r,u,f){var o=arguments.length>2,e,s;if(t==null&&(t=[]),rt&&t.reduceRight===rt)return f&&(r=n.bind(r,f)),o?t.reduceRight(r,u):t.reduceRight(r);if(e=t.length,e!==+e&&(s=n.keys(t),e=s.length),i(t,function(n,i,h){i=s?s[--e]:--e;o?u=r.call(f,u,t[i],i,h):(u=t[i],o=!0)}),!o)throw new TypeError(p);return u};n.find=n.detect=function(n,t,i){var r;return w(n,function(n,u,f){if(t.call(i,n,u,f))return r=n,!0}),r};n.filter=n.select=function(n,t,r){var u=[];return n==null?u:ut&&n.filter===ut?n.filter(t,r):(i(n,function(n,i,f){t.call(r,n,i,f)&&(u[u.length]=n)}),u)};n.reject=function(t,i,r){return n.filter(t,function(n,t,u){return!i.call(r,n,t,u)},r)};n.every=n.all=function(t,r,u){r||(r=n.identity);var f=!0;return t==null?f:ft&&t.every===ft?t.every(r,u):(i(t,function(n,t,i){if(!(f=f&&r.call(u,n,t,i)))return e}),!!f)};w=n.some=n.any=function(t,r,u){r||(r=n.identity);var f=!1;return t==null?f:et&&t.some===et?t.some(r,u):(i(t,function(n,t,i){if(f||(f=r.call(u,n,t,i)))return e}),!!f)};n.contains=n.include=function(n,t){return n==null?!1:s&&n.indexOf===s?n.indexOf(t)!=-1:w(n,function(n){return n===t})};n.invoke=function(i,r){var u=t.call(arguments,2),f=n.isFunction(r);return n.map(i,function(n){return(f?r:n[r]).apply(n,u)})};n.pluck=function(t,i){return n.map(t,function(n){return n[i]})};n.where=function(t,i,r){return n.isEmpty(i)?r?void 0:[]:n[r?"find":"filter"](t,function(n){for(var t in i)if(i[t]!==n[t])return!1;return!0})};n.findWhere=function(t,i){return n.where(t,i,!0)};n.max=function(t,r,u){if(!r&&n.isArray(t)&&t[0]===+t[0]&&t.length<65535)return Math.max.apply(Math,t);if(!r&&n.isEmpty(t))return-Infinity;var f={computed:-Infinity,value:-Infinity};return i(t,function(n,t,i){var e=r?r.call(u,n,t,i):n;e>=f.computed&&(f={value:n,computed:e})}),f.value};n.min=function(t,r,u){if(!r&&n.isArray(t)&&t[0]===+t[0]&&t.length<65535)return Math.min.apply(Math,t);if(!r&&n.isEmpty(t))return Infinity;var f={computed:Infinity,value:Infinity};return i(t,function(n,t,i){var e=r?r.call(u,n,t,i):n;e<f.computed&&(f={value:n,computed:e})}),f.value};n.shuffle=function(t){var u,f=0,r=[];return i(t,function(t){u=n.random(f++);r[f-1]=r[u];r[u]=t}),r};h=function(t){return n.isFunction(t)?t:function(n){return n[t]}};n.sortBy=function(t,i,r){var u=h(i);return n.pluck(n.map(t,function(n,t,i){return{value:n,index:t,criteria:u.call(r,n,t,i)}}).sort(function(n,t){var i=n.criteria,r=t.criteria;if(i!==r){if(i>r||i===void 0)return 1;if(i<r||r===void 0)return-1}return n.index<t.index?-1:1}),"value")};b=function(t,r,u,f){var e={},o=h(r||n.identity);return i(t,function(n,i){var r=o.call(u,n,i,t);f(e,r,n)}),e};n.groupBy=function(t,i,r){return b(t,i,r,function(t,i,r){(n.has(t,i)?t[i]:t[i]=[]).push(r)})};n.countBy=function(t,i,r){return b(t,i,r,function(t,i){n.has(t,i)||(t[i]=0);t[i]++})};n.sortedIndex=function(t,i,r,u){var e;r=r==null?n.identity:h(r);for(var s=r.call(u,i),f=0,o=t.length;f<o;)e=f+o>>>1,r.call(u,t[e])<s?f=e+1:o=e;return f};n.toArray=function(i){return i?n.isArray(i)?t.call(i):i.length===+i.length?n.map(i,n.identity):n.values(i):[]};n.size=function(t){return t==null?0:t.length===+t.length?t.length:n.keys(t).length};n.first=n.head=n.take=function(n,i,r){if(n!=null)return i!=null&&!r?t.call(n,0,i):n[0]};n.initial=function(n,i,r){return t.call(n,0,n.length-(i==null||r?1:i))};n.last=function(n,i,r){if(n!=null)return i==null||r?n[n.length-1]:t.call(n,Math.max(n.length-i,0))};n.rest=n.tail=n.drop=function(n,i,r){return t.call(n,i==null||r?1:i)};n.compact=function(t){return n.filter(t,n.identity)};k=function(t,r,u){return i(t,function(t){n.isArray(t)?r?v.apply(u,t):k(t,r,u):u.push(t)}),u};n.flatten=function(n,t){return k(n,t,[])};n.without=function(i){return n.difference(i,t.call(arguments,1))};n.uniq=n.unique=function(t,r,u,f){n.isFunction(r)&&(f=u,u=r,r=!1);var s=u?n.map(t,u,f):t,o=[],e=[];return i(s,function(i,u){(r?u&&e[e.length-1]===i:n.contains(e,i))||(e.push(i),o.push(t[u]))}),o};n.union=function(){return n.uniq(o.apply(r,arguments))};n.intersection=function(i){var r=t.call(arguments,1);return n.filter(n.uniq(i),function(t){return n.every(r,function(i){return n.indexOf(i,t)>=0})})};n.difference=function(i){var u=o.apply(r,t.call(arguments,1));return n.filter(i,function(t){return!n.contains(u,t)})};n.zip=function(){for(var r=t.call(arguments),u=n.max(n.pluck(r,"length")),f=new Array(u),i=0;i<u;i++)f[i]=n.pluck(r,""+i);return f};n.object=function(n,t){var r,i,u;if(n==null)return{};for(r={},i=0,u=n.length;i<u;i++)t?r[n[i]]=t[i]:r[n[i][0]]=n[i][1];return r};n.indexOf=function(t,i,r){if(t==null)return-1;var u=0,f=t.length;if(r)if(typeof r=="number")u=r<0?Math.max(0,f+r):r;else return u=n.sortedIndex(t,i),t[u]===i?u:-1;if(s&&t.indexOf===s)return t.indexOf(i,r);for(;u<f;u++)if(t[u]===i)return u;return-1};n.lastIndexOf=function(n,t,i){var u,r;if(n==null)return-1;if(u=i!=null,ot&&n.lastIndexOf===ot)return u?n.lastIndexOf(t,i):n.lastIndexOf(t);for(r=u?i:n.length;r--;)if(n[r]===t)return r;return-1};n.range=function(n,t,i){arguments.length<=1&&(t=n||0,n=0);i=arguments[2]||1;for(var r=Math.max(Math.ceil((t-n)/i),0),u=0,f=new Array(r);u<r;)f[u++]=n,n+=i;return f};n.bind=function(n,i){if(n.bind===y&&y)return y.apply(n,t.call(arguments,1));var r=t.call(arguments,2);return function(){return n.apply(i,r.concat(t.call(arguments)))}};n.partial=function(n){var i=t.call(arguments,1);return function(){return n.apply(this,i.concat(t.call(arguments)))}};n.bindAll=function(r){var u=t.call(arguments,1);if(u.length===0)throw new Error("bindAll must be passed function names");return i(u,function(t){r[t]=n.bind(r[t],r)}),r};n.memoize=function(t,i){var r={};return i||(i=n.identity),function(){var u=i.apply(this,arguments);return n.has(r,u)?r[u]:r[u]=t.apply(this,arguments)}};n.delay=function(n,i){var r=t.call(arguments,2);return setTimeout(function(){return n.apply(null,r)},i)};n.defer=function(i){return n.delay.apply(n,[i,1].concat(t.call(arguments,1)))};n.throttle=function(n,t){var r,u,i,f,e=0,o=function(){e=new Date;i=null;f=n.apply(r,u)};return function(){var s=new Date,h=t-(s-e);return r=this,u=arguments,h<=0?(clearTimeout(i),i=null,e=s,f=n.apply(r,u)):i||(i=setTimeout(o,h)),f}};n.debounce=function(n,t,i){var r,u;return function(){var f=this,e=arguments,o=function(){r=null;i||(u=n.apply(f,e))},s=i&&!r;return clearTimeout(r),r=setTimeout(o,t),s&&(u=n.apply(f,e)),u}};n.once=function(n){var i=!1,t;return function(){return i?t:(i=!0,t=n.apply(this,arguments),n=null,t)}};n.wrap=function(n,t){return function(){var i=[n];return v.apply(i,arguments),t.apply(this,i)}};n.compose=function(){var n=arguments;return function(){for(var i=arguments,t=n.length-1;t>=0;t--)i=[n[t].apply(this,i)];return i[0]}};n.after=function(n,t){return n<=0?t():function(){if(--n<1)return t.apply(this,arguments)}};n.keys=yt||function(t){var i,r;if(t!==Object(t))throw new TypeError("Invalid object");i=[];for(r in t)n.has(t,r)&&(i[i.length]=r);return i};n.values=function(t){var r=[],i;for(i in t)n.has(t,i)&&r.push(t[i]);return r};n.pairs=function(t){var r=[],i;for(i in t)n.has(t,i)&&r.push([i,t[i]]);return r};n.invert=function(t){var r={},i;for(i in t)n.has(t,i)&&(r[t[i]]=i);return r};n.functions=n.methods=function(t){var r=[],i;for(i in t)n.isFunction(t[i])&&r.push(i);return r.sort()};n.extend=function(n){return i(t.call(arguments,1),function(t){if(t)for(var i in t)n[i]=t[i]}),n};n.pick=function(n){var u={},f=o.apply(r,t.call(arguments,1));return i(f,function(t){t in n&&(u[t]=n[t])}),u};n.omit=function(i){var f={},e=o.apply(r,t.call(arguments,1)),u;for(u in i)n.contains(e,u)||(f[u]=i[u]);return f};n.defaults=function(n){return i(t.call(arguments,1),function(t){if(t)for(var i in t)n[i]==null&&(n[i]=t[i])}),n};n.clone=function(t){return n.isObject(t)?n.isArray(t)?t.slice():n.extend({},t):t};n.tap=function(n,t){return t(n),n};c=function(t,i,r,u){var a,v,e,o,h,l,s;if(t===i)return t!==0||1/t==1/i;if(t==null||i==null)return t===i;if(t instanceof n&&(t=t._wrapped),i instanceof n&&(i=i._wrapped),a=f.call(t),a!=f.call(i))return!1;switch(a){case"[object String]":return t==String(i);case"[object Number]":return t!=+t?i!=+i:t==0?1/t==1/i:t==+i;case"[object Date]":case"[object Boolean]":return+t==+i;case"[object RegExp]":return t.source==i.source&&t.global==i.global&&t.multiline==i.multiline&&t.ignoreCase==i.ignoreCase}if(typeof t!="object"||typeof i!="object")return!1;for(v=r.length;v--;)if(r[v]==t)return u[v]==i;if(r.push(t),u.push(i),e=0,o=!0,a=="[object Array]"){if(e=t.length,o=e==i.length,o)while(e--)if(!(o=c(t[e],i[e],r,u)))break}else{if(h=t.constructor,l=i.constructor,h!==l&&!(n.isFunction(h)&&h instanceof h&&n.isFunction(l)&&l instanceof l))return!1;for(s in t)if(n.has(t,s)&&(e++,!(o=n.has(i,s)&&c(t[s],i[s],r,u))))break;if(o){for(s in i)if(n.has(i,s)&&!e--)break;o=!e}}return r.pop(),u.pop(),o};n.isEqual=function(n,t){return c(n,t,[],[])};n.isEmpty=function(t){if(t==null)return!0;if(n.isArray(t)||n.isString(t))return t.length===0;for(var i in t)if(n.has(t,i))return!1;return!0};n.isElement=function(n){return!!(n&&n.nodeType===1)};n.isArray=vt||function(n){return f.call(n)=="[object Array]"};n.isObject=function(n){return n===Object(n)};i(["Arguments","Function","String","Number","Date","RegExp"],function(t){n["is"+t]=function(n){return f.call(n)=="[object "+t+"]"}});n.isArguments(arguments)||(n.isArguments=function(t){return!!(t&&n.has(t,"callee"))});typeof/./!="function"&&(n.isFunction=function(n){return typeof n=="function"});n.isFinite=function(n){return isFinite(n)&&!isNaN(parseFloat(n))};n.isNaN=function(t){return n.isNumber(t)&&t!=+t};n.isBoolean=function(n){return n===!0||n===!1||f.call(n)=="[object Boolean]"};n.isNull=function(n){return n===null};n.isUndefined=function(n){return n===void 0};n.has=function(n,t){return at.call(n,t)};n.noConflict=function(){return a._=ct,this};n.identity=function(n){return n};n.times=function(n,t,i){for(var u=Array(n),r=0;r<n;r++)u[r]=t.call(i,r);return u};n.random=function(n,t){return t==null&&(t=n,n=0),n+Math.floor(Math.random()*(t-n+1))};u={escape:{"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#x27;","/":"&#x2F;"}};u.unescape=n.invert(u.escape);st={escape:new RegExp("["+n.keys(u.escape).join("")+"]","g"),unescape:new RegExp("("+n.keys(u.unescape).join("|")+")","g")};n.each(["escape","unescape"],function(t){n[t]=function(n){return n==null?"":(""+n).replace(st[t],function(n){return u[t][n]})}});n.result=function(t,i){if(t==null)return void 0;var r=t[i];return n.isFunction(r)?r.call(t):r};n.mixin=function(t){i(n.functions(t),function(i){var r=n[i]=t[i];n.prototype[i]=function(){var t=[this._wrapped];return v.apply(t,arguments),l.call(this,r.apply(n,t))}})};ht=0;n.uniqueId=function(n){var t=++ht+"";return n?n+t:t};n.templateSettings={evaluate:/<%([\s\S]+?)%>/g,interpolate:/<%=([\s\S]+?)%>/g,escape:/<%-([\s\S]+?)%>/g};var d=/(.)^/,pt={"'":"'","\\":"\\","\r":"r","\n":"n","\t":"t","\u2028":"u2028","\u2029":"u2029"},wt=/\\|'|\r|\n|\t|\u2028|\u2029/g;n.template=function(t,i,r){var f,e;r=n.defaults({},r,n.templateSettings);var h=new RegExp([(r.escape||d).source,(r.interpolate||d).source,(r.evaluate||d).source].join("|")+"|$","g"),o=0,u="__p+='";t.replace(h,function(n,i,r,f,e){return u+=t.slice(o,e).replace(wt,function(n){return"\\"+pt[n]}),i&&(u+="'+\n((__t=("+i+"))==null?'':_.escape(__t))+\n'"),r&&(u+="'+\n((__t=("+r+"))==null?'':__t)+\n'"),f&&(u+="';\n"+f+"\n__p+='"),o=e+n.length,n});u+="';\n";r.variable||(u="with(obj||{}){\n"+u+"}\n");u="var __t,__p='',__j=Array.prototype.join,print=function(){__p+=__j.call(arguments,'');};\n"+u+"return __p;\n";try{f=new Function(r.variable||"obj","_",u)}catch(s){s.source=u;throw s;}return i?f(i,n):(e=function(t){return f.call(this,t,n)},e.source="function("+(r.variable||"obj")+"){\n"+u+"}",e)};n.chain=function(t){return n(t).chain()};l=function(t){return this._chain?n(t).chain():t};n.mixin(n);i(["pop","push","reverse","shift","sort","splice","unshift"],function(t){var i=r[t];n.prototype[t]=function(){var n=this._wrapped;return i.apply(n,arguments),(t=="shift"||t=="splice")&&n.length===0&&delete n[0],l.call(this,n)}});i(["concat","join","slice"],function(t){var i=r[t];n.prototype[t]=function(){return l.call(this,i.apply(this._wrapped,arguments))}});n.extend(n.prototype,{chain:function(){return this._chain=!0,this},value:function(){return this._wrapped}})}.call(this),function(n){var u={className:"autosizejs",append:"",callback:!1,resizeDelay:10},r=["fontFamily","fontSize","fontWeight","fontStyle","letterSpacing","textTransform","wordSpacing","textIndent"],i,t=n('<textarea tabindex="-1" style="position:absolute; top:-999px; left:0; right:auto; bottom:auto; border:0; padding: 0; -moz-box-sizing:content-box; -webkit-box-sizing:content-box; box-sizing:content-box; word-wrap:break-word; height:0 !important; min-height:0 !important; overflow:hidden; transition:none; -webkit-transition:none; -moz-transition:none;"/>').data("autosize",!0)[0];t.style.lineHeight="99px";n(t).css("lineHeight")==="99px"&&r.push("lineHeight");t.style.lineHeight="";n.fn.autosize=function(f){return this.length?(f=n.extend({},u,f||{}),t.parentNode!==document.body&&n(document.body).append(t),this.each(function(){function v(){var r,i;"getComputedStyle"in window?(r=window.getComputedStyle(u,null),i=u.getBoundingClientRect().width,n.each(["paddingLeft","paddingRight","borderLeftWidth","borderRightWidth"],function(n,t){i-=parseInt(r[t],10)}),t.style.width=i+"px"):t.style.width=Math.max(e.width(),0)+"px"}function b(){var o={},h,c;i=u;t.className=f.className;s=parseInt(e.css("maxHeight"),10);n.each(r,function(n,t){o[t]=e.css(t)});n(t).css(o);v();window.chrome&&(h=u.style.width,u.style.width="0px",c=u.offsetWidth,u.style.width=h)}function o(){var n,r;i!==u?b():v();t.value=u.value+f.append;t.style.overflowY=u.style.overflowY;r=parseInt(u.style.height,10);t.scrollTop=0;t.scrollTop=9e4;n=t.scrollTop;s&&n>s?(u.style.overflowY="scroll",n=s):(u.style.overflowY="hidden",n<h&&(n=h));n+=c;r!==n&&(u.style.height=n+"px",p&&f.callback.call(u,u))}function y(){clearTimeout(l);l=setTimeout(function(){var n=e.width();n!==a&&(a=n,o())},parseInt(f.resizeDelay,10))}var u=this,e=n(u),s,h,c=0,p=n.isFunction(f.callback),w={height:u.style.height,overflow:u.style.overflow,overflowY:u.style.overflowY,wordWrap:u.style.wordWrap,resize:u.style.resize},l,a=e.width();if(!e.data("autosize")){if(e.data("autosize",!0),(e.css("box-sizing")==="border-box"||e.css("-moz-box-sizing")==="border-box"||e.css("-webkit-box-sizing")==="border-box")&&(c=e.outerHeight()-e.height()),h=Math.max(parseInt(e.css("minHeight"),10)-c||0,e.height()),e.css({overflow:"hidden",overflowY:"hidden",wordWrap:"break-word",resize:e.css("resize")==="none"||e.css("resize")==="vertical"?"none":"horizontal"}),"onpropertychange"in u)if("oninput"in u)e.on("input.autosize keyup.autosize",o);else e.on("propertychange.autosize",function(){event.propertyName==="value"&&o()});else e.on("input.autosize",o);if(f.resizeDelay!==!1)n(window).on("resize.autosize",y);e.on("autosize.resize",o);e.on("autosize.resizeIncludeStyle",function(){i=null;o()});e.on("autosize.destroy",function(){i=null;clearTimeout(l);n(window).off("resize",y);e.off("autosize").off(".autosize").css(w).removeData("autosize")});o()}})):this}}(window.jQuery||window.$),function(n){typeof n.fn.each2=="undefined"&&n.fn.extend({each2:function(t){for(var i=n([0]),r=-1,u=this.length;++r<u&&(i.context=i[0]=this[r])&&t.call(i[0],r,i)!==!1;);return this}})}(jQuery),function(n,t){"use strict";function f(n,t){for(var i=0,r=t.length;i<r;i=i+1)if(u(n,t[i]))return i;return-1}function st(){var t=n(ot),i;return t.appendTo("body"),i={width:t.width()-t[0].clientWidth,height:t.height()-t[0].clientHeight},t.remove(),i}function u(n,i){return n===i?!0:n===t||i===t?!1:n===null||i===null?!1:n.constructor===String?n+""==i+"":i.constructor===String?i+""==n+"":!1}function y(t,i){var u,r,f;if(t===null||t.length<1)return[];for(u=t.split(i),r=0,f=u.length;r<f;r=r+1)u[r]=n.trim(u[r]);return u}function d(n){return n.outerWidth(!1)-n.width()}function g(i){var r="keyup-change-value";i.bind("keydown",function(){n.data(i,r)===t&&n.data(i,r,i.val())});i.bind("keyup",function(){var u=n.data(i,r);u!==t&&i.val()!==u&&(n.removeData(i,r),i.trigger("keyup-change"))})}function ht(i){i.bind("mousemove",function(i){var r=b;(r===t||r.x!==i.pageX||r.y!==i.pageY)&&n(i.target).trigger("mousemove-filtered",i)})}function nt(n,i,r){r=r||t;var u;return function(){var t=arguments;window.clearTimeout(u);u=window.setTimeout(function(){i.apply(r,t)},n)}}function ct(n){var t=!1,i;return function(){return t===!1&&(i=n(),t=!0),i}}function lt(n,t){var i=nt(n,function(n){t.trigger("scroll-debounced",n)});t.bind("scroll",function(n){f(n.target,t.get())>=0&&i(n)})}function tt(n){n[0]!==document.activeElement&&window.setTimeout(function(){var t=n[0],r=n.val().length,i;n.focus();n.is(":visible")&&t===document.activeElement&&(t.setSelectionRange?t.setSelectionRange(r,r):t.createTextRange&&(i=t.createTextRange(),i.collapse(!1),i.select()))},0)}function r(n){n.preventDefault();n.stopPropagation()}function at(n){n.preventDefault();n.stopImmediatePropagation()}function vt(t){if(!o){var i=t[0].currentStyle||window.getComputedStyle(t[0],null);o=n(document.createElement("div")).css({position:"absolute",left:"-10000px",top:"-10000px",display:"none",fontSize:i.fontSize,fontFamily:i.fontFamily,fontStyle:i.fontStyle,fontWeight:i.fontWeight,letterSpacing:i.letterSpacing,textTransform:i.textTransform,whiteSpace:"nowrap"});o.attr("class","select2-sizer");n("body").append(o)}return o.text(t.val()),o.width()}function p(t,i,r){var u,f=[],e;u=t.attr("class");u&&(u=""+u,n(u.split(" ")).each2(function(){this.indexOf("select2-")===0&&f.push(this)}));u=i.attr("class");u&&(u=""+u,n(u.split(" ")).each2(function(){this.indexOf("select2-")!==0&&(e=r(this),e&&f.push(this))}));t.attr("class",f.join(" "))}function it(n,t,i,r){var u=n.toUpperCase().indexOf(t.toUpperCase()),f=t.length;if(u<0){i.push(r(n));return}i.push(r(n.substring(0,u)));i.push("<span class='select2-match'>");i.push(r(n.substring(u,u+f)));i.push("<\/span>");i.push(r(n.substring(u+f,n.length)))}function rt(t){var f,r=0,u=null,e=t.quietMillis||100,o=t.url,i=this;return function(s){window.clearTimeout(f);f=window.setTimeout(function(){r+=1;var c=r,e=t.data,f=o,l=t.transport||n.ajax,a=t.type||"GET",h={};e=e?e.call(i,s.term,s.page,s.context):null;f=typeof f=="function"?f.call(i,s.term,s.page,s.context):f;null!==u&&u.abort();t.params&&(n.isFunction(t.params)?n.extend(h,t.params.call(i)):n.extend(h,t.params));n.extend(h,{url:f,dataType:t.dataType,data:e,type:a,cache:!1,success:function(n){if(!(c<r)){var i=t.results(n,s.page);s.callback(i)}}});u=l.call(i,h)},e)}}function ut(t){var i=t,e,u,r=function(n){return""+n.text},f;return n.isArray(i)&&(u=i,i={results:u}),n.isFunction(i)===!1&&(u=i,i=function(){return u}),f=i(),f.text&&(r=f.text,n.isFunction(r)||(e=i.text,r=function(n){return n[e]})),function(t){var u=t.term,e={results:[]},f;if(u===""){t.callback(i());return}f=function(i,e){var o,s;if(i=i[0],i.children){o={};for(s in i)i.hasOwnProperty(s)&&(o[s]=i[s]);o.children=[];n(i.children).each2(function(n,t){f(t,o.children)});(o.children.length||t.matcher(u,r(o),i))&&e.push(o)}else t.matcher(u,r(i),i)&&e.push(i)};n(i().results).each2(function(n,t){f(t,e.results)});t.callback(e)}}function ft(i){var r=n.isFunction(i);return function(u){var f=u.term,e={results:[]};n(r?i():i).each(function(){var n=this.text!==t,i=n?this.text:this;(f===""||u.matcher(f,i))&&e.results.push(n?this:{id:this,text:this})});u.callback(e)}}function s(t){if(n.isFunction(t))return!0;if(!t)return!1;throw new Error("formatterName must be a function or a falsy value");}function e(t){return n.isFunction(t)?t():t}function et(t){var i=0;return n.each(t,function(n,t){t.children?i+=et(t.children):i++}),i}function yt(n,i,r,f){var a=n,c=!1,e,s,o,h,l;if(!f.createSearchChoice||!f.tokenSeparators||f.tokenSeparators.length<1)return t;for(;;){for(s=-1,o=0,h=f.tokenSeparators.length;o<h;o++)if(l=f.tokenSeparators[o],s=n.indexOf(l),s>=0)break;if(s<0)break;if(e=n.substring(0,s),n=n.substring(s+l.length),e.length>0&&(e=f.createSearchChoice(e,i),e!==t&&e!==null&&f.id(e)!==t&&f.id(e)!==null)){for(c=!1,o=0,h=i.length;o<h;o++)if(u(f.id(e),f.id(i[o]))){c=!0;break}c||r(e)}}if(a!==n)return n}function w(t,i){var r=function(){};return r.prototype=new t,r.prototype.constructor=r,r.prototype.parent=t.prototype,r.prototype=n.extend(r.prototype,i),r}if(window.Select2===t){var h,l,a,c,o,b,k,v,i={TAB:9,ENTER:13,ESC:27,SPACE:32,LEFT:37,UP:38,RIGHT:39,DOWN:40,SHIFT:16,CTRL:17,ALT:18,PAGE_UP:33,PAGE_DOWN:34,HOME:36,END:35,BACKSPACE:8,DELETE:46,isArrow:function(n){n=n.which?n.which:n;switch(n){case i.LEFT:case i.RIGHT:case i.UP:case i.DOWN:return!0}return!1},isControl:function(n){var t=n.which;switch(t){case i.SHIFT:case i.CTRL:case i.ALT:return!0}return n.metaKey?!0:!1},isFunctionKey:function(n){return n=n.which?n.which:n,n>=112&&n<=123}},ot="<div style='position:absolute; top:-10000px; left:-10000px; width:100px; height:100px; overflow:scroll;'><\/div>";k=n(document);c=function(){var n=1;return function(){return n++}}();k.bind("mousemove",function(n){b={x:n.pageX,y:n.pageY}});h=w(Object,{bind:function(n){var t=this;return function(){n.apply(t,arguments)}},init:function(i){var u,f,o=".select2-results";this.opts=i=this.prepareOpts(i);this.id=i.id;i.element.data("select2")!==t&&i.element.data("select2")!==null&&this.destroy();this.enabled=!0;this.container=this.createContainer();this.containerId="s2id_"+(i.element.attr("id")||"autogen"+c());this.containerSelector="#"+this.containerId.replace(/([;&,\.\+\*\~':"\!\^#$%@\[\]\(\)=>\|])/g,"\\$1");this.container.attr("id",this.containerId);this.body=ct(function(){return i.element.closest("body")});p(this.container,this.opts.element,this.opts.adaptContainerCssClass);this.container.css(e(i.containerCss));this.container.addClass(e(i.containerCssClass));this.elementTabIndex=this.opts.element.attr("tabIndex");this.opts.element.data("select2",this).bind("focus.select2",function(){n(this).select2("focus")}).attr("tabIndex","-1").before(this.container);this.container.data("select2",this);this.dropdown=this.container.find(".select2-drop");this.dropdown.addClass(e(i.dropdownCssClass));this.dropdown.data("select2",this);this.results=u=this.container.find(o);this.search=f=this.container.find("input.select2-input");f.attr("tabIndex",this.elementTabIndex);this.resultsPage=0;this.context=null;this.initContainer();ht(this.results);this.dropdown.delegate(o,"mousemove-filtered touchstart touchmove touchend",this.bind(this.highlightUnderEvent));lt(80,this.results);this.dropdown.delegate(o,"scroll-debounced",this.bind(this.loadMoreIfNeeded));n.fn.mousewheel&&u.mousewheel(function(n,t,i,f){var e=u.scrollTop();f>0&&e-f<=0?(u.scrollTop(0),r(n)):f<0&&u.get(0).scrollHeight-u.scrollTop()+f<=u.height()&&(u.scrollTop(u.get(0).scrollHeight-u.height()),r(n))});g(f);f.bind("keyup-change input paste",this.bind(this.updateResults));f.bind("focus",function(){f.addClass("select2-focused")});f.bind("blur",function(){f.removeClass("select2-focused")});this.dropdown.delegate(o,"mouseup",this.bind(function(t){n(t.target).closest(".select2-result-selectable").length>0&&(this.highlightUnderEvent(t),this.selectHighlighted(t))}));this.dropdown.bind("click mouseup mousedown",function(n){n.stopPropagation()});n.isFunction(this.opts.initSelection)&&(this.initSelection(),this.monitorSource());(i.element.is(":disabled")||i.element.is("[readonly='readonly']"))&&this.disable();v=v||st()},destroy:function(){var n=this.opts.element.data("select2");this.propertyObserver&&(delete this.propertyObserver,this.propertyObserver=null);n!==t&&(n.container.remove(),n.dropdown.remove(),n.opts.element.removeClass("select2-offscreen").removeData("select2").unbind(".select2").attr({tabIndex:this.elementTabIndex}).show())},optionToData:function(n){return n.is("option")?{id:n.attr("value"),text:n.text(),element:n.get(),css:n.attr("class"),disabled:u(n.attr("disabled"),"disabled"),locked:u(n.attr("locked"),"locked")}:n.is("optgroup")?{text:n.attr("label"),children:[],element:n.get(),css:n.attr("class")}:void 0},prepareOpts:function(i){var e,o,s,r,f=this;if(e=i.element,e.get(0).tagName.toLowerCase()==="select"&&(this.select=o=i.element),o&&n.each(["id","multiple","ajax","query","createSearchChoice","initSelection","data","tags"],function(){if(this in i)throw new Error("Option '"+this+"' is not allowed for Select2 when attached to a <select> element.");}),i=n.extend({},{populateResults:function(r,u,e){var o,s=this.opts.id;o=function(r,u,h){var a,k,l,d,p,w,c,v,y,b;for(r=i.sortResults(r,u,e),a=0,k=r.length;a<k;a=a+1)l=r[a],p=l.disabled===!0,d=!p&&s(l)!==t,w=l.children&&l.children.length>0,c=n("<li><\/li>"),c.addClass("select2-results-dept-"+h),c.addClass("select2-result"),c.addClass(d?"select2-result-selectable":"select2-result-unselectable"),p&&c.addClass("select2-disabled"),w&&c.addClass("select2-result-with-children"),c.addClass(f.opts.formatResultCssClass(l)),v=n(document.createElement("div")),v.addClass("select2-result-label"),b=i.formatResult(l,v,e,f.opts.escapeMarkup),b!==t&&v.html(b),c.append(v),w&&(y=n("<ul><\/ul>"),y.addClass("select2-result-sub"),o(l.children,y,h+1),c.append(y)),c.data("select2-data",l),u.append(c)};o(u,r,0)}},n.fn.select2.defaults,i),typeof i.id!="function"&&(s=i.id,i.id=function(n){return n[s]}),n.isArray(i.element.data("select2Tags"))){if("tags"in i)throw"tags specified as both an attribute 'data-select2-tags' and in options of Select2 "+i.element.attr("id");i.tags=i.element.data("select2Tags")}if(o?(i.query=this.bind(function(i){var s={results:[],more:!1},h=i.term,r,u,o;o=function(n,t){var r;n.is("option")?i.matcher(h,n.text(),n)&&t.push(f.optionToData(n)):n.is("optgroup")&&(r=f.optionToData(n),n.children().each2(function(n,t){o(t,r.children)}),r.children.length>0&&t.push(r))};r=e.children();this.getPlaceholder()!==t&&r.length>0&&(u=r[0],n(u).text()===""&&(r=r.not(u)));r.each2(function(n,t){o(t,s.results)});i.callback(s)}),i.id=function(n){return n.id},i.formatResultCssClass=function(n){return n.css}):"query"in i||("ajax"in i?(r=i.element.data("ajax-url"),r&&r.length>0&&(i.ajax.url=r),i.query=rt.call(i.element,i.ajax)):"data"in i?i.query=ut(i.data):"tags"in i&&(i.query=ft(i.tags),i.createSearchChoice===t&&(i.createSearchChoice=function(n){return{id:n,text:n}}),i.initSelection===t&&(i.initSelection=function(t,r){var f=[];n(y(t.val(),i.separator)).each(function(){var r=this,e=this,t=i.tags;n.isFunction(t)&&(t=t());n(t).each(function(){if(u(this.id,r))return e=this.text,!1});f.push({id:r,text:e})});r(f)}))),typeof i.query!="function")throw"query function not defined for Select2 "+i.element.attr("id");return i},monitorSource:function(){var n=this.opts.element,t;n.bind("change.select2",this.bind(function(){this.opts.element.data("select2-change-triggered")!==!0&&this.initSelection()}));t=this.bind(function(){var n,t,i=this;n=this.opts.element.attr("disabled")!=="disabled";t=this.opts.element.attr("readonly")==="readonly";n=n&&!t;this.enabled!==n&&(n?this.enable():this.disable());p(this.container,this.opts.element,this.opts.adaptContainerCssClass);this.container.addClass(e(this.opts.containerCssClass));p(this.dropdown,this.opts.element,this.opts.adaptDropdownCssClass);this.dropdown.addClass(e(this.opts.dropdownCssClass))});n.bind("propertychange.select2 DOMAttrModified.select2",t);typeof WebKitMutationObserver!="undefined"&&(this.propertyObserver&&(delete this.propertyObserver,this.propertyObserver=null),this.propertyObserver=new WebKitMutationObserver(function(n){n.forEach(t)}),this.propertyObserver.observe(n.get(0),{attributes:!0,subtree:!1}))},triggerSelect:function(t){var i=n.Event("selected",{val:this.id(t),object:t});return this.opts.element.trigger(i),!i.isDefaultPrevented()},triggerChange:function(t){t=t||{};t=n.extend({},t,{type:"change",val:this.val()});this.opts.element.data("select2-change-triggered",!0);this.opts.element.trigger(t);this.opts.element.data("select2-change-triggered",!1);this.opts.element.click();this.opts.blurOnChange&&this.opts.element.blur()},enable:function(){this.enabled||(this.enabled=!0,this.container.removeClass("select2-container-disabled"),this.opts.element.removeAttr("disabled"))},disable:function(){this.enabled&&(this.close(),this.enabled=!1,this.container.addClass("select2-container-disabled"),this.opts.element.attr("disabled","disabled"))},opened:function(){return this.container.hasClass("select2-dropdown-open")},positionDropdown:function(){var t=this.dropdown,r=this.container.offset(),k=this.container.outerHeight(!1),u=this.container.outerWidth(!1),h=t.outerHeight(!1),a=n(window).scrollLeft()+n(window).width(),d=n(window).scrollTop()+n(window).height(),s=r.top+k,f=r.left,y=s+h<=d,p=r.top-h>=this.body().scrollTop(),i=t.outerWidth(!1),w=f+i<=a,g=t.hasClass("select2-drop-above"),c,o,b,l;this.opts.dropdownAutoWidth?(l=n(".select2-results",t)[0],t.addClass("select2-drop-auto-width"),t.css("width",""),i=t.outerWidth(!1)+(l.scrollHeight===l.clientHeight?0:v.width),i>u?u=i:i=u,w=f+i<=a):this.container.removeClass("select2-drop-auto-width");this.body().css("position")!=="static"&&(c=this.body().offset(),s-=c.top,f-=c.left);g?(o=!0,!p&&y&&(o=!1)):(o=!1,!y&&p&&(o=!0));w||(f=r.left+u-i);o?(s=r.top-h,this.container.addClass("select2-drop-above"),t.addClass("select2-drop-above")):(this.container.removeClass("select2-drop-above"),t.removeClass("select2-drop-above"));b=n.extend({top:s,left:f,width:u},e(this.opts.dropdownCss));t.css(b)},shouldOpen:function(){var t;return this.opened()?!1:(t=n.Event("opening"),this.opts.element.trigger(t),!t.isDefaultPrevented())},clearDropdownAlignmentPreference:function(){this.container.removeClass("select2-drop-above");this.dropdown.removeClass("select2-drop-above")},open:function(){return this.shouldOpen()?(window.setTimeout(this.bind(this.opening),1),!0):!1},opening:function(){function u(){return{width:Math.max(document.documentElement.scrollWidth,n(window).width()),height:Math.max(document.documentElement.scrollHeight,n(window).height())}}var i=this.containerId,f="scroll."+i,e="resize."+i,o="orientationchange."+i,t,r;this.container.addClass("select2-dropdown-open").addClass("select2-container-active");this.clearDropdownAlignmentPreference();this.dropdown[0]!==this.body().children().last()[0]&&this.dropdown.detach().appendTo(this.body());t=n("#select2-drop-mask");t.length==0&&(t=n(document.createElement("div")),t.attr("id","select2-drop-mask").attr("class","select2-drop-mask"),t.hide(),t.appendTo(this.body()),t.bind("mousedown touchstart",function(){var i=n("#select2-drop"),t;i.length>0&&(t=i.data("select2"),t.opts.selectOnBlur&&t.selectHighlighted({noFocus:!0}),t.close())}));this.dropdown.prev()[0]!==t[0]&&this.dropdown.before(t);n("#select2-drop").removeAttr("id");this.dropdown.attr("id","select2-drop");t.css(u());t.show();this.dropdown.show();this.positionDropdown();this.dropdown.addClass("select2-drop-active");this.ensureHighlightVisible();r=this;this.container.parents().add(window).each(function(){n(this).bind(e+" "+f+" "+o,function(){n("#select2-drop-mask").css(u());r.positionDropdown()})})},close:function(){if(this.opened()){var t=this.containerId,i="scroll."+t,r="resize."+t,u="orientationchange."+t;this.container.parents().add(window).each(function(){n(this).unbind(i).unbind(r).unbind(u)});this.clearDropdownAlignmentPreference();n("#select2-drop-mask").hide();this.dropdown.removeAttr("id");this.dropdown.hide();this.container.removeClass("select2-dropdown-open");this.results.empty();this.clearSearch();this.search.removeClass("select2-active");this.opts.element.trigger(n.Event("close"))}},clearSearch:function(){},getMaximumSelectionSize:function(){return e(this.opts.maximumSelectionSize)},ensureHighlightVisible:function(){var t=this.results,e,i,r,u,o,s,f;if(i=this.highlight(),!(i<0)){if(i==0){t.scrollTop(0);return}e=this.findHighlightableChoices().find(".select2-result-label");r=n(e[i]);u=r.offset().top+r.outerHeight(!0);i===e.length-1&&(f=t.find("li.select2-more-results"),f.length>0&&(u=f.offset().top+f.outerHeight(!0)));o=t.offset().top+t.outerHeight(!0);u>o&&t.scrollTop(t.scrollTop()+(u-o));s=r.offset().top-t.offset().top;s<0&&r.css("display")!="none"&&t.scrollTop(t.scrollTop()+s)}},findHighlightableChoices:function(){return this.results.find(".select2-result-selectable:not(.select2-selected):not(.select2-disabled)")},moveHighlight:function(t){for(var u=this.findHighlightableChoices(),i=this.highlight(),r;i>-1&&i<u.length;)if(i+=t,r=n(u[i]),r.hasClass("select2-result-selectable")&&!r.hasClass("select2-disabled")&&!r.hasClass("select2-selected")){this.highlight(i);break}},highlight:function(t){var i=this.findHighlightableChoices(),u,r;if(arguments.length===0)return f(i.filter(".select2-highlighted")[0],i.get());t>=i.length&&(t=i.length-1);t<0&&(t=0);this.results.find(".select2-highlighted").removeClass("select2-highlighted");u=n(i[t]);u.addClass("select2-highlighted");this.ensureHighlightVisible();r=u.data("select2-data");r&&this.opts.element.trigger({type:"highlight",val:this.id(r),choice:r})},countSelectableResults:function(){return this.findHighlightableChoices().length},highlightUnderEvent:function(t){var i=n(t.target).closest(".select2-result-selectable"),r;i.length>0&&!i.is(".select2-highlighted")?(r=this.findHighlightableChoices(),this.highlight(r.index(i))):i.length==0&&this.results.find(".select2-highlighted").removeClass("select2-highlighted")},loadMoreIfNeeded:function(){var t=this.results,i=t.find("li.select2-more-results"),u,r=this.resultsPage+1,n=this,f=this.search.val(),e=this.context;i.length!==0&&(u=i.offset().top-t.offset().top-t.height(),u<=this.opts.loadMorePadding&&(i.addClass("select2-active"),this.opts.query({element:this.opts.element,term:f,page:r,context:e,matcher:this.opts.matcher,callback:this.bind(function(u){n.opened()&&(n.opts.populateResults.call(this,t,u.results,{term:f,page:r,context:e}),n.postprocessResults(u,!1,!1),u.more===!0?(i.detach().appendTo(t).text(n.opts.formatLoadMore(r+1)),window.setTimeout(function(){n.loadMoreIfNeeded()},10)):i.remove(),n.positionDropdown(),n.resultsPage=r,n.context=u.context)})})))},tokenize:function(){},updateResults:function(i){function p(){h.scrollTop(0);f.removeClass("select2-active");e.positionDropdown()}function o(n){h.html(n);p()}var f=this.search,h=this.results,r=this.opts,a,e=this,c,v=f.val(),y=n.data(this.container,"select2-last-term"),l;if((i===!0||!y||!u(v,y))&&(n.data(this.container,"select2-last-term",v),i===!0||this.showSearchInput!==!1&&this.opened())){if(l=this.getMaximumSelectionSize(),l>=1&&(a=this.data(),n.isArray(a)&&a.length>=l&&s(r.formatSelectionTooBig,"formatSelectionTooBig"))){o("<li class='select2-selection-limit'>"+r.formatSelectionTooBig(l)+"<\/li>");return}if(f.val().length<r.minimumInputLength){s(r.formatInputTooShort,"formatInputTooShort")?o("<li class='select2-no-results'>"+r.formatInputTooShort(f.val(),r.minimumInputLength)+"<\/li>"):o("");return}if(r.maximumInputLength&&f.val().length>r.maximumInputLength){s(r.formatInputTooLong,"formatInputTooLong")?o("<li class='select2-no-results'>"+r.formatInputTooLong(f.val(),r.maximumInputLength)+"<\/li>"):o("");return}r.formatSearching&&this.findHighlightableChoices().length===0&&o("<li class='select2-searching'>"+r.formatSearching()+"<\/li>");f.addClass("select2-active");c=this.tokenize();c!=t&&c!=null&&f.val(c);this.resultsPage=1;r.query({element:r.element,term:f.val(),page:this.resultsPage,context:null,matcher:r.matcher,callback:this.bind(function(c){var l;if(!this.opened()){this.search.removeClass("select2-active");return}if(this.context=c.context===t?null:c.context,this.opts.createSearchChoice&&f.val()!==""&&(l=this.opts.createSearchChoice.call(null,f.val(),c.results),l!==t&&l!==null&&e.id(l)!==t&&e.id(l)!==null&&n(c.results).filter(function(){return u(e.id(this),e.id(l))}).length===0&&c.results.unshift(l)),c.results.length===0&&s(r.formatNoMatches,"formatNoMatches")){o("<li class='select2-no-results'>"+r.formatNoMatches(f.val())+"<\/li>");return}h.empty();e.opts.populateResults.call(this,h,c.results,{term:f.val(),page:this.resultsPage,context:null});c.more===!0&&s(r.formatLoadMore,"formatLoadMore")&&(h.append("<li class='select2-more-results'>"+e.opts.escapeMarkup(r.formatLoadMore(this.resultsPage))+"<\/li>"),window.setTimeout(function(){e.loadMoreIfNeeded()},10));this.postprocessResults(c,i);p();this.opts.element.trigger({type:"loaded",data:c})})})}},cancel:function(){this.close()},blur:function(){this.opts.selectOnBlur&&this.selectHighlighted({noFocus:!0});this.close();this.container.removeClass("select2-container-active");this.search[0]===document.activeElement&&this.search.blur();this.clearSearch();this.selection.find(".select2-search-choice-focus").removeClass("select2-search-choice-focus")},focusSearch:function(){tt(this.search)},selectHighlighted:function(n){var i=this.highlight(),r=this.results.find(".select2-highlighted"),t=r.closest(".select2-result").data("select2-data");if(t){this.highlight(i);this.onSelect(t,n)}},getPlaceholder:function(){return this.opts.element.attr("placeholder")||this.opts.element.attr("data-placeholder")||this.opts.element.data("placeholder")||this.opts.placeholder},initContainerWidth:function(){function r(){var i,f,u,r,e;if(this.opts.width==="off")return null;if(this.opts.width==="element")return this.opts.element.outerWidth(!1)===0?"auto":this.opts.element.outerWidth(!1)+"px";if(this.opts.width==="copy"||this.opts.width==="resolve"){if(i=this.opts.element.attr("style"),i!==t)for(f=i.split(";"),r=0,e=f.length;r<e;r=r+1)if(u=f[r].replace(/\s/g,"").match(/width:(([-+]?([0-9]*\.)?[0-9]+)(px|em|ex|%|in|cm|mm|pt|pc))/i),u!==null&&u.length>=1)return u[1];return(i=this.opts.element.css("width"),i&&i.length>0)?i:this.opts.width==="resolve"?this.opts.element.outerWidth(!1)===0?"auto":this.opts.element.outerWidth(!1)+"px":null}return n.isFunction(this.opts.width)?this.opts.width():this.opts.width}var i=r.call(this);i!==null&&this.container.css("width",i)}});l=w(h,{createContainer:function(){return n(document.createElement("div")).attr({"class":"select2-container"}).html("<a href='javascript:void(0)' onclick='return false;' class='select2-choice' tabindex='-1'>   <span>&nbsp;<\/span><abbr class='select2-search-choice-close' style='display:none;'><\/abbr>   <div><b><\/b><\/div><\/a><input class='select2-focusser select2-offscreen' type='text'/><div class='select2-drop' style='display:none'>   <div class='select2-search'>       <input type='text' autocomplete='off' class='select2-input'/>   <\/div>   <ul class='select2-results'>   <\/ul><\/div>")},disable:function(){this.enabled&&(this.parent.disable.apply(this,arguments),this.focusser.attr("disabled","disabled"))},enable:function(){this.enabled||(this.parent.enable.apply(this,arguments),this.focusser.removeAttr("disabled"))},opening:function(){this.parent.opening.apply(this,arguments);this.showSearchInput!==!1&&this.search.val(this.focusser.val());this.search.focus();this.focusser.attr("disabled","disabled").val("");this.updateResults(!0);this.opts.element.trigger(n.Event("open"))},close:function(){this.opened()&&(this.parent.close.apply(this,arguments),this.focusser.removeAttr("disabled"),tt(this.focusser))},focus:function(){this.opened()?this.close():(this.focusser.removeAttr("disabled"),this.focusser.focus())},isFocused:function(){return this.container.hasClass("select2-container-active")},cancel:function(){this.parent.cancel.apply(this,arguments);this.focusser.removeAttr("disabled");this.focusser.focus()},initContainer:function(){var t,u=this.container,e=this.dropdown,f=!1;this.showSearch(this.opts.minimumResultsForSearch>=0);this.selection=t=u.find(".select2-choice");this.focusser=u.find(".select2-focusser");this.focusser.attr("id","s2id_autogen"+c());n("label[for='"+this.opts.element.attr("id")+"']").attr("for",this.focusser.attr("id"));this.search.bind("keydown",this.bind(function(n){if(this.enabled){if(n.which===i.PAGE_UP||n.which===i.PAGE_DOWN){r(n);return}switch(n.which){case i.UP:case i.DOWN:this.moveHighlight(n.which===i.UP?-1:1);r(n);return;case i.TAB:case i.ENTER:this.selectHighlighted();r(n);return;case i.ESC:this.cancel(n);r(n);return}}}));this.search.bind("blur",this.bind(function(){document.activeElement===this.body().get(0)&&window.setTimeout(this.bind(function(){this.search.focus()}),0)}));this.focusser.bind("keydown",this.bind(function(n){if(this.enabled&&n.which!==i.TAB&&!i.isControl(n)&&!i.isFunctionKey(n)&&n.which!==i.ESC){if(this.opts.openOnEnter===!1&&n.which===i.ENTER){r(n);return}if(n.which==i.DOWN||n.which==i.UP||n.which==i.ENTER&&this.opts.openOnEnter){this.open();r(n);return}if(n.which==i.DELETE||n.which==i.BACKSPACE){this.opts.allowClear&&this.clear();r(n);return}}}));g(this.focusser);this.focusser.bind("keyup-change input",this.bind(function(n){(n.stopPropagation(),this.opened())||this.open()}));t.delegate("abbr","mousedown",this.bind(function(n){this.enabled&&(this.clear(),at(n),this.close(),this.selection.focus())}));t.bind("mousedown",this.bind(function(n){f=!0;this.opened()?this.close():this.enabled&&this.open();r(n);f=!1}));e.bind("mousedown",this.bind(function(){this.search.focus()}));t.bind("focus",this.bind(function(n){r(n)}));this.focusser.bind("focus",this.bind(function(){this.container.addClass("select2-container-active")})).bind("blur",this.bind(function(){this.opened()||this.container.removeClass("select2-container-active")}));this.search.bind("focus",this.bind(function(){this.container.addClass("select2-container-active")}));this.initContainerWidth();this.opts.element.addClass("select2-offscreen");this.setPlaceholder()},clear:function(n){var t=this.selection.data("select2-data");t&&(this.opts.element.val(""),this.selection.find("span").empty(),this.selection.removeData("select2-data"),this.setPlaceholder(),n!==!1&&(this.opts.element.trigger({type:"removed",val:this.id(t),choice:t}),this.triggerChange({removed:t})))},initSelection:function(){var n;this.opts.element.val()===""&&this.opts.element.text()===""?(this.updateSelection([]),this.close(),this.setPlaceholder()):(n=this,this.opts.initSelection.call(null,this.opts.element,function(i){i!==t&&i!==null&&(n.updateSelection(i),n.close(),n.setPlaceholder())}))},prepareOpts:function(){var t=this.parent.prepareOpts.apply(this,arguments),i=this;return t.element.get(0).tagName.toLowerCase()==="select"?t.initSelection=function(n,t){var r=n.find(":selected");t(i.optionToData(r))}:"data"in t&&(t.initSelection=t.initSelection||function(i,r){var e=i.val(),f=null;t.query({matcher:function(n,i,r){var o=u(e,t.id(r));return o&&(f=r),o},callback:n.isFunction(r)?function(){r(f)}:n.noop})}),t},getPlaceholder:function(){return this.select&&this.select.find("option").first().text()!==""?t:this.parent.getPlaceholder.apply(this,arguments)},setPlaceholder:function(){var n=this.getPlaceholder();if(this.opts.element.val()===""&&n!==t){if(this.select&&this.select.find("option:first").text()!=="")return;this.selection.find("span").html(this.opts.escapeMarkup(n));this.selection.addClass("select2-default");this.selection.find("abbr").hide()}},postprocessResults:function(n,t,i){var f=0,e=this,o=!0,r;this.findHighlightableChoices().each2(function(n,t){if(u(e.id(t.data("select2-data")),e.opts.element.val()))return f=n,!1});i!==!1&&this.highlight(f);t===!0&&(r=this.opts.minimumResultsForSearch,o=r<0?!1:et(n.results)>=r,this.showSearch(o))},showSearch:function(t){this.showSearchInput=t;this.dropdown.find(".select2-search")[t?"removeClass":"addClass"]("select2-search-hidden");n(this.dropdown,this.container)[t?"addClass":"removeClass"]("select2-with-searchbox")},onSelect:function(n,t){if(this.triggerSelect(n)){var i=this.opts.element.val(),r=this.data();this.opts.element.val(this.id(n));this.updateSelection(n);this.opts.element.trigger({type:"selected",val:this.id(n),choice:n});this.close();t&&t.noFocus||this.selection.focus();u(i,this.id(n))||this.triggerChange({added:n,removed:r})}},updateSelection:function(n){var i=this.selection.find("span"),r;this.selection.data("select2-data",n);i.empty();r=this.opts.formatSelection(n,i);r!==t&&i.append(this.opts.escapeMarkup(r));this.selection.removeClass("select2-default");this.opts.allowClear&&this.getPlaceholder()!==t&&this.selection.find("abbr").show()},val:function(){var i,r=!1,u=null,n=this,f=this.data();if(arguments.length===0)return this.opts.element.val();if(i=arguments[0],arguments.length>1&&(r=arguments[1]),this.select)this.select.val(i).find(":selected").each2(function(t,i){return u=n.optionToData(i),!1}),this.updateSelection(u),this.setPlaceholder(),r&&this.triggerChange({added:u,removed:f});else{if(this.opts.initSelection===t)throw new Error("cannot call val() if initSelection() is not defined");if(!i&&i!==0){this.clear(r);return}this.opts.element.val(i);this.opts.initSelection(this.opts.element,function(t){n.opts.element.val(t?n.id(t):"");n.updateSelection(t);n.setPlaceholder();r&&n.triggerChange({added:t,removed:f})})}},clearSearch:function(){this.search.val("");this.focusser.val("")},data:function(n,i){var r;if(arguments.length===0)return r=this.selection.data("select2-data"),r==t&&(r=null),r;n&&n!==""?(r=this.data(),this.opts.element.val(n?this.id(n):""),this.updateSelection(n),i&&this.triggerChange({added:n,removed:r})):this.clear(i)}});a=w(h,{createContainer:function(){return n(document.createElement("div")).attr({"class":"select2-container select2-container-multi"}).html("    <ul class='select2-choices'>  <li class='select2-search-field'>    <input type='text' autocomplete='off' class='select2-input'>  <\/li><\/ul><div class='select2-drop select2-drop-multi' style='display:none;'>   <ul class='select2-results'>   <\/ul><\/div>")},prepareOpts:function(){var t=this.parent.prepareOpts.apply(this,arguments),i=this;return t.element.get(0).tagName.toLowerCase()==="select"?t.initSelection=function(n,t){var r=[];n.find(":selected").each2(function(n,t){r.push(i.optionToData(t))});t(r)}:"data"in t&&(t.initSelection=t.initSelection||function(i,r){var e=y(i.val(),t.separator),f=[];t.query({matcher:function(i,r,o){var s=n.grep(e,function(n){return u(n,t.id(o))}).length;return s&&f.push(o),s},callback:n.isFunction(r)?function(){r(f)}:n.noop})}),t},initContainer:function(){var u=".select2-choices",t;this.searchContainer=this.container.find(".select2-search-field");this.selection=t=this.container.find(u);this.search.attr("id","s2id_autogen"+c());n("label[for='"+this.opts.element.attr("id")+"']").attr("for",this.search.attr("id"));this.search.bind("input paste",this.bind(function(){this.enabled&&(this.opened()||this.open())}));this.search.bind("keydown",this.bind(function(n){if(this.enabled){if(n.which===i.BACKSPACE&&this.search.val()===""){this.close();var u,f=t.find(".select2-search-choice-focus");if(f.length>0){this.unselect(f.first());this.search.width(10);r(n);return}u=t.find(".select2-search-choice:not(.select2-locked)");u.length>0&&u.last().addClass("select2-search-choice-focus")}else t.find(".select2-search-choice-focus").removeClass("select2-search-choice-focus");if(this.opened())switch(n.which){case i.UP:case i.DOWN:this.moveHighlight(n.which===i.UP?-1:1);r(n);return;case i.ENTER:case i.TAB:this.selectHighlighted();r(n);return;case i.ESC:this.cancel(n);r(n);return}if(n.which!==i.TAB&&!i.isControl(n)&&!i.isFunctionKey(n)&&n.which!==i.BACKSPACE&&n.which!==i.ESC){if(n.which===i.ENTER){if(this.opts.openOnEnter===!1)return;if(n.altKey||n.ctrlKey||n.shiftKey||n.metaKey)return}this.open();(n.which===i.PAGE_UP||n.which===i.PAGE_DOWN)&&r(n);n.which===i.ENTER&&r(n)}}}));this.search.bind("keyup",this.bind(this.resizeSearch));this.search.bind("blur",this.bind(function(n){this.container.removeClass("select2-container-active");this.search.removeClass("select2-focused");this.selection.find(".select2-search-choice-focus").removeClass("select2-search-choice-focus");this.opened()||this.clearSearch();n.stopImmediatePropagation()}));this.container.delegate(u,"mousedown",this.bind(function(t){this.enabled&&(n(t.target).closest(".select2-search-choice").length>0||(this.clearPlaceholder(),this.open(),this.focusSearch(),t.preventDefault()))}));this.container.delegate(u,"focus",this.bind(function(){this.enabled&&(this.container.addClass("select2-container-active"),this.dropdown.addClass("select2-drop-active"),this.clearPlaceholder())}));this.initContainerWidth();this.opts.element.addClass("select2-offscreen");this.clearSearch()},enable:function(){this.enabled||(this.parent.enable.apply(this,arguments),this.search.removeAttr("disabled"))},disable:function(){this.enabled&&(this.parent.disable.apply(this,arguments),this.search.attr("disabled",!0))},initSelection:function(){var n;this.opts.element.val()===""&&this.opts.element.text()===""&&(this.updateSelection([]),this.close(),this.clearSearch());(this.select||this.opts.element.val()!=="")&&(n=this,this.opts.initSelection.call(null,this.opts.element,function(i){i!==t&&i!==null&&(n.updateSelection(i),n.close(),n.clearSearch())}))},clearSearch:function(){var n=this.getPlaceholder();n!==t&&this.getVal().length===0&&this.search.hasClass("select2-focused")===!1?(this.search.val(n).addClass("select2-default"),this.search.width(this.getMaxSearchWidth())):this.search.val("").width(10)},clearPlaceholder:function(){this.search.hasClass("select2-default")&&this.search.val("").removeClass("select2-default")},opening:function(){this.clearPlaceholder();this.resizeSearch();this.parent.opening.apply(this,arguments);this.focusSearch();this.updateResults(!0);this.search.focus();this.opts.element.trigger(n.Event("open"))},close:function(){this.opened()&&this.parent.close.apply(this,arguments)},focus:function(){this.close();this.search.focus()},isFocused:function(){return this.search.hasClass("select2-focused")},updateSelection:function(t){var r=[],u=[],i=this;n(t).each(function(){f(i.id(this),r)<0&&(r.push(i.id(this)),u.push(this))});t=u;this.selection.find(".select2-search-choice").remove();n(t).each(function(){i.addSelectedChoice(this)});i.postprocessResults()},tokenize:function(){var n=this.search.val();n=this.opts.tokenizer(n,this.data(),this.bind(this.onSelect),this.opts);n!=null&&n!=t&&(this.search.val(n),n.length>0&&this.open())},onSelect:function(n,t){this.triggerSelect(n)&&(this.addSelectedChoice(n),this.opts.element.trigger({type:"selected",val:this.id(n),choice:n}),(this.select||!this.opts.closeOnSelect)&&this.postprocessResults(),this.opts.closeOnSelect?(this.close(),this.search.width(10)):this.countSelectableResults()>0?(this.search.width(10),this.resizeSearch(),this.getMaximumSelectionSize()>0&&this.val().length>=this.getMaximumSelectionSize()&&this.updateResults(!0),this.positionDropdown()):(this.close(),this.search.width(10)),this.triggerChange({added:n}),t&&t.noFocus||this.focusSearch())},cancel:function(){this.close();this.focusSearch()},addSelectedChoice:function(i){var e=!i.locked,s=n("<li class='select2-search-choice'>    <div><\/div>    <a href='#' onclick='return false;' class='select2-search-choice-close' tabindex='-1'><\/a><\/li>"),h=n("<li class='select2-search-choice select2-locked'><div><\/div><\/li>"),u=e?s:h,c=this.id(i),o=this.getVal(),f;f=this.opts.formatSelection(i,u.find("div"));f!=t&&u.find("div").replaceWith("<div>"+this.opts.escapeMarkup(f)+"<\/div>");e&&u.find(".select2-search-choice-close").bind("mousedown",r).bind("click dblclick",this.bind(function(t){this.enabled&&(n(t.target).closest(".select2-search-choice").fadeOut("fast",this.bind(function(){this.unselect(n(t.target));this.selection.find(".select2-search-choice-focus").removeClass("select2-search-choice-focus");this.close();this.focusSearch()})).dequeue(),r(t))})).bind("focus",this.bind(function(){this.enabled&&(this.container.addClass("select2-container-active"),this.dropdown.addClass("select2-drop-active"))}));u.data("select2-data",i);u.insertBefore(this.searchContainer);o.push(c);this.setVal(o)},unselect:function(n){var i=this.getVal(),t,r;if(n=n.closest(".select2-search-choice"),n.length===0)throw"Invalid argument: "+n+". Must be .select2-search-choice";(t=n.data("select2-data"),t)&&(r=f(this.id(t),i),r>=0&&(i.splice(r,1),this.setVal(i),this.select&&this.postprocessResults()),n.remove(),this.opts.element.trigger({type:"removed",val:this.id(t),choice:t}),this.triggerChange({removed:t}))},postprocessResults:function(){var t=this.getVal(),i=this.results.find(".select2-result"),r=this.results.find(".select2-result-with-children"),n=this;i.each2(function(i,r){var u=n.id(r.data("select2-data"));f(u,t)>=0&&(r.addClass("select2-selected"),r.find(".select2-result-selectable").addClass("select2-selected"))});r.each2(function(n,t){t.is(".select2-result-selectable")||t.find(".select2-result-selectable:not(.select2-selected)").length!==0||t.addClass("select2-selected")});this.highlight()==-1&&n.highlight(0)},getMaxSearchWidth:function(){return this.selection.width()-d(this.search)},resizeSearch:function(){var i,u,t,f,n,r=d(this.search);i=vt(this.search)+10;u=this.search.offset().left;t=this.selection.width();f=this.selection.offset().left;n=t-(u-f)-r;n<i&&(n=t-r);n<40&&(n=t-r);n<=0&&(n=i);this.search.width(n)},getVal:function(){var n;return this.select?(n=this.select.val(),n===null?[]:n):(n=this.opts.element.val(),y(n,this.opts.separator))},setVal:function(t){var i;this.select?this.select.val(t):(i=[],n(t).each(function(){f(this,i)<0&&i.push(this)}),this.opts.element.val(i.length===0?"":i.join(this.opts.separator)))},buildChangeDetails:function(n,t){var t,n,i,r;for(console.log("current",t,"old",n),t=t.slice(0),n=n.slice(0),i=0;i<t.length;i++)for(r=0;r<n.length;r++)u(this.opts.id(t[i]),this.opts.id(n[r]))&&(t.splice(i,1),i--,n.splice(r,1),r--);return{added:t,removed:n}},val:function(i,r){var u,f=this;if(arguments.length===0)return this.getVal();if(u=this.data(),u.length||(u=[]),!i&&i!==0){this.opts.element.val("");this.updateSelection([]);this.clearSearch();r&&this.triggerChange({added:this.data(),removed:u});return}if(this.setVal(i),this.select)this.opts.initSelection(this.select,this.bind(this.updateSelection)),r&&this.triggerChange(this.buildChangeDetails(u,this.data()));else{if(this.opts.initSelection===t)throw new Error("val() cannot be called if initSelection() is not defined");this.opts.initSelection(this.opts.element,function(t){var i=n(t).map(f.id);f.setVal(i);f.updateSelection(t);f.clearSearch();r&&f.triggerChange(this.buildChangeDetails(u,this.data()))})}this.clearSearch()},onSortStart:function(){if(this.select)throw new Error("Sorting of elements is not supported when attached to <select>. Attach to <input type='hidden'/> instead.");this.search.width(0);this.searchContainer.hide()},onSortEnd:function(){var t=[],i=this;this.searchContainer.show();this.searchContainer.appendTo(this.searchContainer.parent());this.resizeSearch();this.selection.find(".select2-search-choice").each(function(){t.push(i.opts.id(n(this).data("select2-data")))});this.setVal(t);this.triggerChange()},data:function(t,i){var f=this,r,u;if(arguments.length===0)return this.selection.find(".select2-search-choice").map(function(){return n(this).data("select2-data")}).get();u=this.data();t||(t=[]);r=n.map(t,function(n){return f.opts.id(n)});this.setVal(r);this.updateSelection(t);this.clearSearch();i&&this.triggerChange(this.buildChangeDetails(u,this.data()))}});n.fn.select2=function(){var i=Array.prototype.slice.call(arguments,0),r,u,e,o,s=["val","destroy","opened","open","close","focus","isFocused","container","onSortStart","onSortEnd","enable","disable","positionDropdown","data"];return this.each(function(){if(i.length===0||typeof i[0]=="object")r=i.length===0?{}:n.extend({},i[0]),r.element=n(this),r.element.get(0).tagName.toLowerCase()==="select"?o=r.element.attr("multiple"):(o=r.multiple||!1,"tags"in r&&(r.multiple=o=!0)),u=o?new a:new l,u.init(r);else if(typeof i[0]=="string"){if(f(i[0],s)<0)throw"Unknown method: "+i[0];if(e=t,u=n(this).data("select2"),u===t)return;if(e=i[0]==="container"?u.container:u[i[0]].apply(u,i.slice(1)),e!==t)return!1}else throw"Invalid arguments to select2 plugin: "+i;}),e===t?this:e};n.fn.select2.defaults={width:"copy",loadMorePadding:0,closeOnSelect:!0,openOnEnter:!0,containerCss:{},dropdownCss:{},containerCssClass:"",dropdownCssClass:"",formatResult:function(n,t,i,r){var u=[];return it(n.text,i.term,u,r),u.join("")},formatSelection:function(n){return n?n.text:t},sortResults:function(n){return n},formatResultCssClass:function(){return t},formatNoMatches:function(){return"No matches found"},formatInputTooShort:function(n,t){var i=t-n.length;return"Please enter "+i+" more character"+(i==1?"":"s")},formatInputTooLong:function(n,t){var i=n.length-t;return"Please delete "+i+" character"+(i==1?"":"s")},formatSelectionTooBig:function(n){return"You can only select "+n+" item"+(n==1?"":"s")},formatLoadMore:function(){return"Loading more results..."},formatSearching:function(){return"Searching..."},minimumResultsForSearch:0,minimumInputLength:0,maximumInputLength:null,maximumSelectionSize:0,id:function(n){return n.id},matcher:function(n,t){return t.toUpperCase().indexOf(n.toUpperCase())==0},separator:",",tokenSeparators:[],tokenizer:yt,escapeMarkup:function(n){var t={"\\":"&#92;","&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&apos;","/":"&#47;"};return String(n).replace(/[&<>"'\/\\]/g,function(n){return t[n[0]]})},blurOnChange:!1,selectOnBlur:!1,adaptContainerCssClass:function(n){return n},adaptDropdownCssClass:function(){return null}};window.Select2={query:{ajax:rt,local:ut,tags:ft},util:{debounce:nt,markMatch:it},"class":{abstract:h,single:l,multi:a}}}}(jQuery),function(n){function d(n,t,i){switch(arguments.length){case 2:return n!=null?n:t;case 3:return n!=null?n:t!=null?t:i;default:throw new Error("Implement me");}}function lt(){return{empty:!1,unusedTokens:[],unusedInput:[],overflow:-2,charsLeftOver:0,nullInput:!1,invalidMonth:null,invalidFormat:!1,userInvalidated:!1,iso:!1}}function g(n,i){function u(){t.suppressDeprecationWarnings===!1&&typeof console!="undefined"&&console.warn&&console.warn("Deprecation warning: "+n)}var r=!0;return l(function(){return r&&(u(),r=!1),i.apply(this,arguments)},i)}function vi(n,t){return function(i){return r(n.call(this,i),t)}}function ou(n,t){return function(i){return this.lang().ordinal(n.call(this,i),t)}}function yi(){}function at(n){gi(n);l(this,n)}function vt(n){var t=wi(n),i=t.year||0,r=t.quarter||0,u=t.month||0,f=t.week||0,e=t.day||0,o=t.hour||0,s=t.minute||0,h=t.second||0,c=t.millisecond||0;this._milliseconds=+c+h*1e3+s*6e4+o*36e5;this._days=+e+f*7;this._months=+u+r*3+i*12;this._data={};this._bubble()}function l(n,t){for(var i in t)t.hasOwnProperty(i)&&(n[i]=t[i]);return t.hasOwnProperty("toString")&&(n.toString=t.toString),t.hasOwnProperty("valueOf")&&(n.valueOf=t.valueOf),n}function su(n){var i={},t;for(t in n)n.hasOwnProperty(t)&&ri.hasOwnProperty(t)&&(i[t]=n[t]);return i}function w(n){return n<0?Math.ceil(n):Math.floor(n)}function r(n,t,i){for(var r=""+Math.abs(n),u=n>=0;r.length<t;)r="0"+r;return(u?i?"+":"":"-")+r}function yt(n,i,r,u){var o=i._milliseconds,f=i._days,e=i._months;u=u==null?!0:u;o&&n._d.setTime(+n._d+o*r);f&&or(n,"Date",ti(n,"Date")+f*r);e&&er(n,ti(n,"Month")+e*r);u&&t.updateOffset(n,f||e)}function ft(n){return Object.prototype.toString.call(n)==="[object Array]"}function hu(n){return Object.prototype.toString.call(n)==="[object Date]"||n instanceof Date}function pi(n,t,r){for(var e=Math.min(n.length,t.length),o=Math.abs(n.length-t.length),f=0,u=0;u<e;u++)(r&&n[u]!==t[u]||!r&&i(n[u])!==i(t[u]))&&f++;return f+o}function a(n){if(n){var t=n.toLowerCase().replace(/(.)s$/,"$1");n=fu[n]||eu[t]||t}return n}function wi(n){var r={},i,t;for(t in n)n.hasOwnProperty(t)&&(i=a(t),i&&(r[i]=n[t]));return r}function cu(i){var r,u;if(i.indexOf("week")===0)r=7,u="day";else if(i.indexOf("month")===0)r=12,u="month";else return;t[i]=function(f,e){var o,s,c=t.fn._lang[i],h=[];if(typeof f=="number"&&(e=f,f=n),s=function(n){var i=t().utc().set(u,n);return c.call(t.fn._lang,i,f||"")},e!=null)return s(e);for(o=0;o<r;o++)h.push(s(o));return h}}function i(n){var t=+n,i=0;return t!==0&&isFinite(t)&&(i=t>=0?Math.floor(t):Math.ceil(t)),i}function pt(n,t){return new Date(Date.UTC(n,t+1,0)).getUTCDate()}function bi(n,i,r){return k(t([n,11,31+i-r]),i,r).week}function ki(n){return di(n)?366:365}function di(n){return n%4==0&&n%100!=0||n%400==0}function gi(n){var t;n._a&&n._pf.overflow===-2&&(t=n._a[s]<0||n._a[s]>11?s:n._a[e]<1||n._a[e]>pt(n._a[o],n._a[s])?e:n._a[h]<0||n._a[h]>23?h:n._a[nt]<0||n._a[nt]>59?nt:n._a[tt]<0||n._a[tt]>59?tt:n._a[it]<0||n._a[it]>999?it:-1,n._pf._overflowDayOfYear&&(t<o||t>e)&&(t=e),n._pf.overflow=t)}function nr(n){return n._isValid==null&&(n._isValid=!isNaN(n._d.getTime())&&n._pf.overflow<0&&!n._pf.empty&&!n._pf.invalidMonth&&!n._pf.nullInput&&!n._pf.invalidFormat&&!n._pf.userInvalidated,n._strict&&(n._isValid=n._isValid&&n._pf.charsLeftOver===0&&n._pf.unusedTokens.length===0)),n._isValid}function wt(n){return n?n.toLowerCase().replace("_","-"):n}function bt(n,i){return i._isUTC?t(n).zone(i._offset||0):t(n).local()}function lu(n,t){return t.abbr=n,y[n]||(y[n]=new yi),y[n].set(t),y[n]}function au(n){delete y[n]}function f(n){var f=0,r,u,i,e,o=function(n){if(!y[n]&&ui)try{require("./lang/"+n)}catch(t){}return y[n]};if(!n)return t.fn._lang;if(!ft(n)){if(u=o(n),u)return u;n=[n]}while(f<n.length){for(e=wt(n[f]).split("-"),r=e.length,i=wt(n[f+1]),i=i?i.split("-"):null;r>0;){if(u=o(e.slice(0,r).join("-")),u)return u;if(i&&i.length>=r&&pi(e,i,!0)>=r-1)break;r--}f++}return t.fn._lang}function vu(n){return n.match(/\[[\s\S]/)?n.replace(/^\[|\]$/g,""):n.replace(/\\/g,"")}function yu(n){for(var i=n.match(fi),t=0,r=i.length;t<r;t++)i[t]=c[i[t]]?c[i[t]]:vu(i[t]);return function(u){var f="";for(t=0;t<r;t++)f+=i[t]instanceof Function?i[t].call(u,n):i[t];return f}}function kt(n,t){return n.isValid()?(t=tr(t,n.lang()),ct[t]||(ct[t]=yu(t)),ct[t](n)):n.lang().invalidDate()}function tr(n,t){function r(n){return t.longDateFormat(n)||n}var i=5;for(ut.lastIndex=0;i>=0&&ut.test(n);)n=n.replace(ut,r),ut.lastIndex=0,i-=1;return n}function pu(n,t){var i=t._strict;switch(n){case"Q":return oi;case"DDDD":return hi;case"YYYY":case"GGGG":case"gggg":return i?nu:yr;case"Y":case"G":case"g":return iu;case"YYYYYY":case"YYYYY":case"GGGGG":case"ggggg":return i?tu:pr;case"S":if(i)return oi;case"SS":if(i)return si;case"SSS":if(i)return hi;case"DDD":return vr;case"MMM":case"MMMM":case"dd":case"ddd":case"dddd":return br;case"a":case"A":return f(t._l)._meridiemParse;case"X":return dr;case"Z":case"ZZ":return et;case"T":return kr;case"SSSS":return wr;case"MM":case"DD":case"YY":case"GG":case"gg":case"HH":case"hh":case"mm":case"ss":case"ww":case"WW":return i?si:ei;case"M":case"D":case"d":case"H":case"h":case"m":case"s":case"w":case"W":case"e":case"E":return ei;case"Do":return gr;default:return new RegExp(nf(gu(n.replace("\\","")),"i"))}}function ir(n){n=n||"";var r=n.match(et)||[],f=r[r.length-1]||[],t=(f+"").match(uu)||["-",0,0],u=+(t[1]*60)+i(t[2]);return t[0]==="+"?-u:u}function wu(n,r,u){var l,c=u._a;switch(n){case"Q":r!=null&&(c[s]=(i(r)-1)*3);break;case"M":case"MM":r!=null&&(c[s]=i(r)-1);break;case"MMM":case"MMMM":l=f(u._l).monthsParse(r);l!=null?c[s]=l:u._pf.invalidMonth=r;break;case"D":case"DD":r!=null&&(c[e]=i(r));break;case"Do":r!=null&&(c[e]=i(parseInt(r,10)));break;case"DDD":case"DDDD":r!=null&&(u._dayOfYear=i(r));break;case"YY":c[o]=t.parseTwoDigitYear(r);break;case"YYYY":case"YYYYY":case"YYYYYY":c[o]=i(r);break;case"a":case"A":u._isPm=f(u._l).isPM(r);break;case"H":case"HH":case"h":case"hh":c[h]=i(r);break;case"m":case"mm":c[nt]=i(r);break;case"s":case"ss":c[tt]=i(r);break;case"S":case"SS":case"SSS":case"SSSS":c[it]=i(("0."+r)*1e3);break;case"X":u._d=new Date(parseFloat(r)*1e3);break;case"Z":case"ZZ":u._useUTC=!0;u._tzm=ir(r);break;case"dd":case"ddd":case"dddd":l=f(u._l).weekdaysParse(r);l!=null?(u._w=u._w||{},u._w.d=l):u._pf.invalidWeekday=r;break;case"w":case"ww":case"W":case"WW":case"d":case"e":case"E":n=n.substr(0,1);case"gggg":case"GGGG":case"GGGGG":n=n.substr(0,2);r&&(u._w=u._w||{},u._w[n]=i(r));break;case"gg":case"GG":u._w=u._w||{};u._w[n]=t.parseTwoDigitYear(r)}}function bu(n){var i,h,e,u,r,s,c,l;i=n._w;i.GG!=null||i.W!=null||i.E!=null?(r=1,s=4,h=d(i.GG,n._a[o],k(t(),1,4).year),e=d(i.W,1),u=d(i.E,1)):(l=f(n._l),r=l._week.dow,s=l._week.doy,h=d(i.gg,n._a[o],k(t(),r,s).year),e=d(i.w,1),i.d!=null?(u=i.d,u<r&&++e):u=i.e!=null?i.e+r:r);c=hf(h,e,u,s,r);n._a[o]=c.year;n._dayOfYear=c.dayOfYear}function dt(n){var t,i,r=[],u,f;if(!n._d){for(u=du(n),n._w&&n._a[e]==null&&n._a[s]==null&&bu(n),n._dayOfYear&&(f=d(n._a[o],u[o]),n._dayOfYear>ki(f)&&(n._pf._overflowDayOfYear=!0),i=ni(f,0,n._dayOfYear),n._a[s]=i.getUTCMonth(),n._a[e]=i.getUTCDate()),t=0;t<3&&n._a[t]==null;++t)n._a[t]=r[t]=u[t];for(;t<7;t++)n._a[t]=r[t]=n._a[t]==null?t===2?1:0:n._a[t];n._d=(n._useUTC?ni:ff).apply(null,r);n._tzm!=null&&n._d.setUTCMinutes(n._d.getUTCMinutes()+n._tzm)}}function ku(n){var t;n._d||(t=wi(n._i),n._a=[t.year,t.month,t.day,t.hour,t.minute,t.second,t.millisecond],dt(n))}function du(n){var t=new Date;return n._useUTC?[t.getUTCFullYear(),t.getUTCMonth(),t.getUTCDate()]:[t.getFullYear(),t.getMonth(),t.getDate()]}function gt(n){if(n._f===t.ISO_8601){rr(n);return}n._a=[];n._pf.empty=!0;for(var a=f(n._l),i=""+n._i,r,u,s,v=i.length,l=0,o=tr(n._f,a).match(fi)||[],e=0;e<o.length;e++)u=o[e],r=(i.match(pu(u,n))||[])[0],r&&(s=i.substr(0,i.indexOf(r)),s.length>0&&n._pf.unusedInput.push(s),i=i.slice(i.indexOf(r)+r.length),l+=r.length),c[u]?(r?n._pf.empty=!1:n._pf.unusedTokens.push(u),wu(u,r,n)):n._strict&&!r&&n._pf.unusedTokens.push(u);n._pf.charsLeftOver=v-l;i.length>0&&n._pf.unusedInput.push(i);n._isPm&&n._a[h]<12&&(n._a[h]+=12);n._isPm===!1&&n._a[h]===12&&(n._a[h]=0);dt(n);gi(n)}function gu(n){return n.replace(/\\(\[)|\\(\])|\[([^\]\[]*)\]|\\(.)/g,function(n,t,i,r,u){return t||i||r||u})}function nf(n){return n.replace(/[-\/\\^$*+?.()|[\]{}]/g,"\\$&")}function tf(n){var t,f,u,r,i;if(n._f.length===0){n._pf.invalidFormat=!0;n._d=new Date(NaN);return}for(r=0;r<n._f.length;r++)(i=0,t=l({},n),t._pf=lt(),t._f=n._f[r],gt(t),nr(t))&&(i+=t._pf.charsLeftOver,i+=t._pf.unusedTokens.length*10,t._pf.score=i,(u==null||i<u)&&(u=i,f=t));l(n,f||t)}function rr(n){var t,i,r=n._i,u=ru.exec(r);if(u){for(n._pf.iso=!0,t=0,i=ot.length;t<i;t++)if(ot[t][1].exec(r)){n._f=ot[t][0]+(u[6]||" ");break}for(t=0,i=st.length;t<i;t++)if(st[t][1].exec(r)){n._f+=st[t][0];break}r.match(et)&&(n._f+="Z");gt(n)}else n._isValid=!1}function rf(n){rr(n);n._isValid===!1&&(delete n._isValid,t.createFromInputFallback(n))}function uf(i){var r=i._i,u=cr.exec(r);r===n?i._d=new Date:u?i._d=new Date(+u[1]):typeof r=="string"?rf(i):ft(r)?(i._a=r.slice(0),dt(i)):hu(r)?i._d=new Date(+r):typeof r=="object"?ku(i):typeof r=="number"?i._d=new Date(r):t.createFromInputFallback(i)}function ff(n,t,i,r,u,f,e){var o=new Date(n,t,i,r,u,f,e);return n<1970&&o.setFullYear(n),o}function ni(n){var t=new Date(Date.UTC.apply(null,arguments));return n<1970&&t.setUTCFullYear(n),t}function ef(n,t){if(typeof n=="string")if(isNaN(n)){if(n=t.weekdaysParse(n),typeof n!="number")return null}else n=parseInt(n,10);return n}function of(n,t,i,r,u){return u.relativeTime(t||1,!!i,n,r)}function sf(n,t,i){var o=b(Math.abs(n)/1e3),u=b(o/60),f=b(u/60),r=b(f/24),s=b(r/365),e=o<p.s&&["s",o]||u===1&&["m"]||u<p.m&&["mm",u]||f===1&&["h"]||f<p.h&&["hh",f]||r===1&&["d"]||r<=p.dd&&["dd",r]||r<=p.dm&&["M"]||r<p.dy&&["MM",b(r/30)]||s===1&&["y"]||["yy",s];return e[2]=t,e[3]=n>0,e[4]=i,of.apply({},e)}function k(n,i,r){var e=r-i,u=r-n.day(),f;return u>e&&(u-=7),u<e-7&&(u+=7),f=t(n).add("d",u),{week:Math.ceil(f.dayOfYear()/7),year:f.year()}}function hf(n,t,i,r,u){var f=ni(n,0,1).getUTCDay(),o,e;return f=f===0?7:f,i=i!=null?i:u,o=u-f+(f>r?7:0)-(f<u?7:0),e=7*(t-1)+(i-u)+o+1,{year:e>0?n:n-1,dayOfYear:e>0?e:ki(n-1)+e}}function ur(i){var r=i._i,u=i._f;return r===null||u===n&&r===""?t.invalid({nullInput:!0}):(typeof r=="string"&&(i._i=r=f().preparse(r)),t.isMoment(r)?(i=su(r),i._d=new Date(+r._d)):u?ft(u)?tf(i):gt(i):uf(i),new at(i))}function fr(n,i){var u,r;if(i.length===1&&ft(i[0])&&(i=i[0]),!i.length)return t();for(u=i[0],r=1;r<i.length;++r)i[r][n](u)&&(u=i[r]);return u}function er(n,t){var i;return typeof t=="string"&&(t=n.lang().monthsParse(t),typeof t!="number")?n:(i=Math.min(n.date(),pt(n.year(),t)),n._d["set"+(n._isUTC?"UTC":"")+"Month"](t,i),n)}function ti(n,t){return n._d["get"+(n._isUTC?"UTC":"")+t]()}function or(n,t,i){return t==="Month"?er(n,i):n._d["set"+(n._isUTC?"UTC":"")+t](i)}function v(n,i){return function(r){return r!=null?(or(this,n,r),t.updateOffset(this,i),this):ti(this,n)}}function cf(n){t.duration.fn[n]=function(){return this._data[n]}}function sr(n,i){t.duration.fn["as"+n]=function(){return+this/i}}function hr(n){typeof ender=="undefined"&&(ii=rt.moment,rt.moment=n?g("Accessing Moment through the global scope is deprecated, and will be removed in an upcoming release.",t):t)}for(var t,rt=typeof global!="undefined"?global:this,ii,b=Math.round,u,o=0,s=1,e=2,h=3,nt=4,tt=5,it=6,y={},ri={_isAMomentObject:null,_i:null,_f:null,_l:null,_strict:null,_tzm:null,_isUTC:null,_offset:null,_pf:null,_lang:null},ui=typeof module!="undefined"&&module.exports,cr=/^\/?Date\((\-?\d+)/i,lr=/(\-)?(?:(\d*)\.)?(\d+)\:(\d+)(?:\:(\d+)\.?(\d{3})?)?/,ar=/^(-)?P(?:(?:([0-9,.]*)Y)?(?:([0-9,.]*)M)?(?:([0-9,.]*)D)?(?:T(?:([0-9,.]*)H)?(?:([0-9,.]*)M)?(?:([0-9,.]*)S)?)?|([0-9,.]*)W)$/,fi=/(\[[^\[]*\])|(\\)?(Mo|MM?M?M?|Do|DDDo|DD?D?D?|ddd?d?|do?|w[o|w]?|W[o|W]?|Q|YYYYYY|YYYYY|YYYY|YY|gg(ggg?)?|GG(GGG?)?|e|E|a|A|hh?|HH?|mm?|ss?|S{1,4}|X|zz?|ZZ?|.)/g,ut=/(\[[^\[]*\])|(\\)?(LT|LL?L?L?|l{1,4})/g,ei=/\d\d?/,vr=/\d{1,3}/,yr=/\d{1,4}/,pr=/[+\-]?\d{1,6}/,wr=/\d+/,br=/[0-9]*['a-z\u00A0-\u05FF\u0700-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]+|[\u0600-\u06FF\/]+(\s*?[\u0600-\u06FF]+){1,2}/i,et=/Z|[\+\-]\d\d:?\d\d/gi,kr=/T/i,dr=/[\+\-]?\d+(\.\d{1,3})?/,gr=/\d{1,2}/,oi=/\d/,si=/\d\d/,hi=/\d{3}/,nu=/\d{4}/,tu=/[+-]?\d{6}/,iu=/[+-]?\d+/,ru=/^\s*(?:[+-]\d{6}|\d{4})-(?:(\d\d-\d\d)|(W\d\d$)|(W\d\d-\d)|(\d\d\d))((T| )(\d\d(:\d\d(:\d\d(\.\d+)?)?)?)?([\+\-]\d\d(?::?\d\d)?|\s*Z)?)?$/,ot=[["YYYYYY-MM-DD",/[+-]\d{6}-\d{2}-\d{2}/],["YYYY-MM-DD",/\d{4}-\d{2}-\d{2}/],["GGGG-[W]WW-E",/\d{4}-W\d{2}-\d/],["GGGG-[W]WW",/\d{4}-W\d{2}/],["YYYY-DDD",/\d{4}-\d{3}/]],st=[["HH:mm:ss.SSSS",/(T| )\d\d:\d\d:\d\d\.\d+/],["HH:mm:ss",/(T| )\d\d:\d\d:\d\d/],["HH:mm",/(T| )\d\d:\d\d/],["HH",/(T| )\d\d/]],uu=/([\+\-]|\d\d)/gi,lf="Date|Hours|Minutes|Seconds|Milliseconds".split("|"),ht={Milliseconds:1,Seconds:1e3,Minutes:6e4,Hours:36e5,Days:864e5,Months:2592e6,Years:31536e6},fu={ms:"millisecond",s:"second",m:"minute",h:"hour",d:"day",D:"date",w:"week",W:"isoWeek",M:"month",Q:"quarter",y:"year",DDD:"dayOfYear",e:"weekday",E:"isoWeekday",gg:"weekYear",GG:"isoWeekYear"},eu={dayofyear:"dayOfYear",isoweekday:"isoWeekday",isoweek:"isoWeek",weekyear:"weekYear",isoweekyear:"isoWeekYear"},ct={},p={s:45,m:45,h:22,dd:25,dm:45,dy:345},ci="DDD w W M D d".split(" "),li="M D H h m s w W".split(" "),c={M:function(){return this.month()+1},MMM:function(n){return this.lang().monthsShort(this,n)},MMMM:function(n){return this.lang().months(this,n)},D:function(){return this.date()},DDD:function(){return this.dayOfYear()},d:function(){return this.day()},dd:function(n){return this.lang().weekdaysMin(this,n)},ddd:function(n){return this.lang().weekdaysShort(this,n)},dddd:function(n){return this.lang().weekdays(this,n)},w:function(){return this.week()},W:function(){return this.isoWeek()},YY:function(){return r(this.year()%100,2)},YYYY:function(){return r(this.year(),4)},YYYYY:function(){return r(this.year(),5)},YYYYYY:function(){var n=this.year(),t=n>=0?"+":"-";return t+r(Math.abs(n),6)},gg:function(){return r(this.weekYear()%100,2)},gggg:function(){return r(this.weekYear(),4)},ggggg:function(){return r(this.weekYear(),5)},GG:function(){return r(this.isoWeekYear()%100,2)},GGGG:function(){return r(this.isoWeekYear(),4)},GGGGG:function(){return r(this.isoWeekYear(),5)},e:function(){return this.weekday()},E:function(){return this.isoWeekday()},a:function(){return this.lang().meridiem(this.hours(),this.minutes(),!0)},A:function(){return this.lang().meridiem(this.hours(),this.minutes(),!1)},H:function(){return this.hours()},h:function(){return this.hours()%12||12},m:function(){return this.minutes()},s:function(){return this.seconds()},S:function(){return i(this.milliseconds()/100)},SS:function(){return r(i(this.milliseconds()/10),2)},SSS:function(){return r(this.milliseconds(),3)},SSSS:function(){return r(this.milliseconds(),3)},Z:function(){var n=-this.zone(),t="+";return n<0&&(n=-n,t="-"),t+r(i(n/60),2)+":"+r(i(n)%60,2)},ZZ:function(){var n=-this.zone(),t="+";return n<0&&(n=-n,t="-"),t+r(i(n/60),2)+r(i(n)%60,2)},z:function(){return this.zoneAbbr()},zz:function(){return this.zoneName()},X:function(){return this.unix()},Q:function(){return this.quarter()}},ai=["months","monthsShort","weekdays","weekdaysShort","weekdaysMin"];ci.length;)u=ci.pop(),c[u+"o"]=ou(c[u],u);while(li.length)u=li.pop(),c[u+u]=vi(c[u],2);for(c.DDDD=vi(c.DDD,3),l(yi.prototype,{set:function(n){var t,i;for(i in n)t=n[i],typeof t=="function"?this[i]=t:this["_"+i]=t},_months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),months:function(n){return this._months[n.month()]},_monthsShort:"Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"),monthsShort:function(n){return this._monthsShort[n.month()]},monthsParse:function(n){var i,r,u;for(this._monthsParse||(this._monthsParse=[]),i=0;i<12;i++)if(this._monthsParse[i]||(r=t.utc([2e3,i]),u="^"+this.months(r,"")+"|^"+this.monthsShort(r,""),this._monthsParse[i]=new RegExp(u.replace(".",""),"i")),this._monthsParse[i].test(n))return i},_weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),weekdays:function(n){return this._weekdays[n.day()]},_weekdaysShort:"Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),weekdaysShort:function(n){return this._weekdaysShort[n.day()]},_weekdaysMin:"Su_Mo_Tu_We_Th_Fr_Sa".split("_"),weekdaysMin:function(n){return this._weekdaysMin[n.day()]},weekdaysParse:function(n){var i,r,u;for(this._weekdaysParse||(this._weekdaysParse=[]),i=0;i<7;i++)if(this._weekdaysParse[i]||(r=t([2e3,1]).day(i),u="^"+this.weekdays(r,"")+"|^"+this.weekdaysShort(r,"")+"|^"+this.weekdaysMin(r,""),this._weekdaysParse[i]=new RegExp(u.replace(".",""),"i")),this._weekdaysParse[i].test(n))return i},_longDateFormat:{LT:"h:mm A",L:"MM/DD/YYYY",LL:"MMMM D YYYY",LLL:"MMMM D YYYY LT",LLLL:"dddd, MMMM D YYYY LT"},longDateFormat:function(n){var t=this._longDateFormat[n];return!t&&this._longDateFormat[n.toUpperCase()]&&(t=this._longDateFormat[n.toUpperCase()].replace(/MMMM|MM|DD|dddd/g,function(n){return n.slice(1)}),this._longDateFormat[n]=t),t},isPM:function(n){return(n+"").toLowerCase().charAt(0)==="p"},_meridiemParse:/[ap]\.?m?\.?/i,meridiem:function(n,t,i){return n>11?i?"pm":"PM":i?"am":"AM"},_calendar:{sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},calendar:function(n,t){var i=this._calendar[n];return typeof i=="function"?i.apply(t):i},_relativeTime:{future:"in %s",past:"%s ago",s:"a few seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",M:"a month",MM:"%d months",y:"a year",yy:"%d years"},relativeTime:function(n,t,i,r){var u=this._relativeTime[i];return typeof u=="function"?u(n,t,i,r):u.replace(/%d/i,n)},pastFuture:function(n,t){var i=this._relativeTime[n>0?"future":"past"];return typeof i=="function"?i(t):i.replace(/%s/i,t)},ordinal:function(n){return this._ordinal.replace("%d",n)},_ordinal:"%d",preparse:function(n){return n},postformat:function(n){return n},week:function(n){return k(n,this._week.dow,this._week.doy).week},_week:{dow:0,doy:6},_invalidDate:"Invalid date",invalidDate:function(){return this._invalidDate}}),t=function(t,i,r,u){var f;return typeof r=="boolean"&&(u=r,r=n),f={},f._isAMomentObject=!0,f._i=t,f._f=i,f._l=r,f._strict=u,f._isUTC=!1,f._pf=lt(),ur(f)},t.suppressDeprecationWarnings=!1,t.createFromInputFallback=g("moment construction falls back to js Date. This is discouraged and will be removed in upcoming major release. Please refer to https://github.com/moment/moment/issues/1407 for more info.",function(n){n._d=new Date(n._i)}),t.min=function(){var n=[].slice.call(arguments,0);return fr("isBefore",n)},t.max=function(){var n=[].slice.call(arguments,0);return fr("isAfter",n)},t.utc=function(t,i,r,u){var f;return typeof r=="boolean"&&(u=r,r=n),f={},f._isAMomentObject=!0,f._useUTC=!0,f._isUTC=!0,f._l=r,f._i=t,f._f=i,f._strict=u,f._pf=lt(),ur(f).utc()},t.unix=function(n){return t(n*1e3)},t.duration=function(n,r){var s=n,u=null,f,c,o;return t.isDuration(n)?s={ms:n._milliseconds,d:n._days,M:n._months}:typeof n=="number"?(s={},r?s[r]=n:s.milliseconds=n):(u=lr.exec(n))?(f=u[1]==="-"?-1:1,s={y:0,d:i(u[e])*f,h:i(u[h])*f,m:i(u[nt])*f,s:i(u[tt])*f,ms:i(u[it])*f}):!(u=ar.exec(n))||(f=u[1]==="-"?-1:1,o=function(n){var t=n&&parseFloat(n.replace(",","."));return(isNaN(t)?0:t)*f},s={y:o(u[2]),M:o(u[3]),d:o(u[4]),h:o(u[5]),m:o(u[6]),s:o(u[7]),w:o(u[8])}),c=new vt(s),t.isDuration(n)&&n.hasOwnProperty("_lang")&&(c._lang=n._lang),c},t.version="2.7.0",t.defaultFormat="YYYY-MM-DDTHH:mm:ssZ",t.ISO_8601=function(){},t.momentProperties=ri,t.updateOffset=function(){},t.relativeTimeThreshold=function(t,i){return p[t]===n?!1:(p[t]=i,!0)},t.lang=function(n,i){var r;return n?(i?lu(wt(n),i):i===null?(au(n),n="en"):y[n]||f(n),r=t.duration.fn._lang=t.fn._lang=f(n),r._abbr):t.fn._lang._abbr},t.langData=function(n){return n&&n._lang&&n._lang._abbr&&(n=n._lang._abbr),f(n)},t.isMoment=function(n){return n instanceof at||n!=null&&n.hasOwnProperty("_isAMomentObject")},t.isDuration=function(n){return n instanceof vt},u=ai.length-1;u>=0;--u)cu(ai[u]);t.normalizeUnits=function(n){return a(n)};t.invalid=function(n){var i=t.utc(NaN);return n!=null?l(i._pf,n):i._pf.userInvalidated=!0,i};t.parseZone=function(){return t.apply(null,arguments).parseZone()};t.parseTwoDigitYear=function(n){return i(n)+(i(n)>68?1900:2e3)};l(t.fn=at.prototype,{clone:function(){return t(this)},valueOf:function(){return+this._d+(this._offset||0)*6e4},unix:function(){return Math.floor(+this/1e3)},toString:function(){return this.clone().lang("en").format("ddd MMM DD YYYY HH:mm:ss [GMT]ZZ")},toDate:function(){return this._offset?new Date(+this):this._d},toISOString:function(){var n=t(this).utc();return 0<n.year()&&n.year()<=9999?kt(n,"YYYY-MM-DD[T]HH:mm:ss.SSS[Z]"):kt(n,"YYYYYY-MM-DD[T]HH:mm:ss.SSS[Z]")},toArray:function(){var n=this;return[n.year(),n.month(),n.date(),n.hours(),n.minutes(),n.seconds(),n.milliseconds()]},isValid:function(){return nr(this)},isDSTShifted:function(){return this._a?this.isValid()&&pi(this._a,(this._isUTC?t.utc(this._a):t(this._a)).toArray())>0:!1},parsingFlags:function(){return l({},this._pf)},invalidAt:function(){return this._pf.overflow},utc:function(){return this.zone(0)},local:function(){return this.zone(0),this._isUTC=!1,this},format:function(n){var i=kt(this,n||t.defaultFormat);return this.lang().postformat(i)},add:function(n,i){var r;return r=typeof n=="string"&&typeof i=="string"?t.duration(isNaN(+i)?+n:+i,isNaN(+i)?i:n):typeof n=="string"?t.duration(+i,n):t.duration(n,i),yt(this,r,1),this},subtract:function(n,i){var r;return r=typeof n=="string"&&typeof i=="string"?t.duration(isNaN(+i)?+n:+i,isNaN(+i)?i:n):typeof n=="string"?t.duration(+i,n):t.duration(n,i),yt(this,r,-1),this},diff:function(n,i,r){var f=bt(n,this),o=(this.zone()-f.zone())*6e4,u,e;return i=a(i),i==="year"||i==="month"?(u=(this.daysInMonth()+f.daysInMonth())*432e5,e=(this.year()-f.year())*12+(this.month()-f.month()),e+=(this-t(this).startOf("month")-(f-t(f).startOf("month")))/u,e-=(this.zone()-t(this).startOf("month").zone()-(f.zone()-t(f).startOf("month").zone()))*6e4/u,i==="year"&&(e=e/12)):(u=this-f,e=i==="second"?u/1e3:i==="minute"?u/6e4:i==="hour"?u/36e5:i==="day"?(u-o)/864e5:i==="week"?(u-o)/6048e5:u),r?e:w(e)},from:function(n,i){return t.duration(this.diff(n)).lang(this.lang()._abbr).humanize(!i)},fromNow:function(n){return this.from(t(),n)},calendar:function(n){var r=n||t(),u=bt(r,this).startOf("day"),i=this.diff(u,"days",!0),f=i<-6?"sameElse":i<-1?"lastWeek":i<0?"lastDay":i<1?"sameDay":i<2?"nextDay":i<7?"nextWeek":"sameElse";return this.format(this.lang().calendar(f,this))},isLeapYear:function(){return di(this.year())},isDST:function(){return this.zone()<this.clone().month(0).zone()||this.zone()<this.clone().month(5).zone()},day:function(n){var t=this._isUTC?this._d.getUTCDay():this._d.getDay();return n!=null?(n=ef(n,this.lang()),this.add({d:n-t})):t},month:v("Month",!0),startOf:function(n){n=a(n);switch(n){case"year":this.month(0);case"quarter":case"month":this.date(1);case"week":case"isoWeek":case"day":this.hours(0);case"hour":this.minutes(0);case"minute":this.seconds(0);case"second":this.milliseconds(0)}return n==="week"?this.weekday(0):n==="isoWeek"&&this.isoWeekday(1),n==="quarter"&&this.month(Math.floor(this.month()/3)*3),this},endOf:function(n){return n=a(n),this.startOf(n).add(n==="isoWeek"?"week":n,1).subtract("ms",1)},isAfter:function(n,i){return i=typeof i!="undefined"?i:"millisecond",+this.clone().startOf(i)>+t(n).startOf(i)},isBefore:function(n,i){return i=typeof i!="undefined"?i:"millisecond",+this.clone().startOf(i)<+t(n).startOf(i)},isSame:function(n,t){return t=t||"ms",+this.clone().startOf(t)==+bt(n,this).startOf(t)},min:g("moment().min is deprecated, use moment.min instead. https://github.com/moment/moment/issues/1548",function(n){return n=t.apply(null,arguments),n<this?this:n}),max:g("moment().max is deprecated, use moment.max instead. https://github.com/moment/moment/issues/1548",function(n){return n=t.apply(null,arguments),n>this?this:n}),zone:function(n,i){var r=this._offset||0;if(n!=null)typeof n=="string"&&(n=ir(n)),Math.abs(n)<16&&(n=n*60),this._offset=n,this._isUTC=!0,r!==n&&(!i||this._changeInProgress?yt(this,t.duration(r-n,"m"),1,!1):this._changeInProgress||(this._changeInProgress=!0,t.updateOffset(this,!0),this._changeInProgress=null));else return this._isUTC?r:this._d.getTimezoneOffset();return this},zoneAbbr:function(){return this._isUTC?"UTC":""},zoneName:function(){return this._isUTC?"Coordinated Universal Time":""},parseZone:function(){return this._tzm?this.zone(this._tzm):typeof this._i=="string"&&this.zone(this._i),this},hasAlignedHourOffset:function(n){return n=n?t(n).zone():0,(this.zone()-n)%60==0},daysInMonth:function(){return pt(this.year(),this.month())},dayOfYear:function(n){var i=b((t(this).startOf("day")-t(this).startOf("year"))/864e5)+1;return n==null?i:this.add("d",n-i)},quarter:function(n){return n==null?Math.ceil((this.month()+1)/3):this.month((n-1)*3+this.month()%3)},weekYear:function(n){var t=k(this,this.lang()._week.dow,this.lang()._week.doy).year;return n==null?t:this.add("y",n-t)},isoWeekYear:function(n){var t=k(this,1,4).year;return n==null?t:this.add("y",n-t)},week:function(n){var t=this.lang().week(this);return n==null?t:this.add("d",(n-t)*7)},isoWeek:function(n){var t=k(this,1,4).week;return n==null?t:this.add("d",(n-t)*7)},weekday:function(n){var t=(this.day()+7-this.lang()._week.dow)%7;return n==null?t:this.add("d",n-t)},isoWeekday:function(n){return n==null?this.day()||7:this.day(this.day()%7?n:n-7)},isoWeeksInYear:function(){return bi(this.year(),1,4)},weeksInYear:function(){var n=this._lang._week;return bi(this.year(),n.dow,n.doy)},get:function(n){return n=a(n),this[n]()},set:function(n,t){return n=a(n),typeof this[n]=="function"&&this[n](t),this},lang:function(t){return t===n?this._lang:(this._lang=f(t),this)}});t.fn.millisecond=t.fn.milliseconds=v("Milliseconds",!1);t.fn.second=t.fn.seconds=v("Seconds",!1);t.fn.minute=t.fn.minutes=v("Minutes",!1);t.fn.hour=t.fn.hours=v("Hours",!0);t.fn.date=v("Date",!0);t.fn.dates=g("dates accessor is deprecated. Use date instead.",v("Date",!0));t.fn.year=v("FullYear",!0);t.fn.years=g("years accessor is deprecated. Use year instead.",v("FullYear",!0));t.fn.days=t.fn.day;t.fn.months=t.fn.month;t.fn.weeks=t.fn.week;t.fn.isoWeeks=t.fn.isoWeek;t.fn.quarters=t.fn.quarter;t.fn.toJSON=t.fn.toISOString;l(t.duration.fn=vt.prototype,{_bubble:function(){var e=this._milliseconds,t=this._days,i=this._months,n=this._data,r,u,f,o;n.milliseconds=e%1e3;r=w(e/1e3);n.seconds=r%60;u=w(r/60);n.minutes=u%60;f=w(u/60);n.hours=f%24;t+=w(f/24);n.days=t%30;i+=w(t/30);n.months=i%12;o=w(i/12);n.years=o},weeks:function(){return w(this.days()/7)},valueOf:function(){return this._milliseconds+this._days*864e5+this._months%12*2592e6+i(this._months/12)*31536e6},humanize:function(n){var i=+this,t=sf(i,!n,this.lang());return n&&(t=this.lang().pastFuture(i,t)),this.lang().postformat(t)},add:function(n,i){var r=t.duration(n,i);return this._milliseconds+=r._milliseconds,this._days+=r._days,this._months+=r._months,this._bubble(),this},subtract:function(n,i){var r=t.duration(n,i);return this._milliseconds-=r._milliseconds,this._days-=r._days,this._months-=r._months,this._bubble(),this},get:function(n){return n=a(n),this[n.toLowerCase()+"s"]()},as:function(n){return n=a(n),this["as"+n.charAt(0).toUpperCase()+n.slice(1)+"s"]()},lang:t.fn.lang,toIsoString:function(){var r=Math.abs(this.years()),u=Math.abs(this.months()),f=Math.abs(this.days()),n=Math.abs(this.hours()),t=Math.abs(this.minutes()),i=Math.abs(this.seconds()+this.milliseconds()/1e3);return this.asSeconds()?(this.asSeconds()<0?"-":"")+"P"+(r?r+"Y":"")+(u?u+"M":"")+(f?f+"D":"")+(n||t||i?"T":"")+(n?n+"H":"")+(t?t+"M":"")+(i?i+"S":""):"P0D"}});for(u in ht)ht.hasOwnProperty(u)&&(sr(u,ht[u]),cf(u.toLowerCase()));sr("Weeks",6048e5);t.duration.fn.asMonths=function(){return(+this-this.years()*31536e6)/2592e6+this.years()*12};t.lang("en",{ordinal:function(n){var t=n%10,r=i(n%100/10)===1?"th":t===1?"st":t===2?"nd":t===3?"rd":"th";return n+r}});ui?module.exports=t:typeof define=="function"&&define.amd?(define("moment",function(n,i,r){return r.config&&r.config()&&r.config().noGlobal===!0&&(rt.moment=ii),t}),hr(!0)):hr()}.call(this),function(){function r(n,t){var i;n||(n={});for(i in t)n[i]=t[i];return n}function o(){var t,n=arguments,r,i={},u=function(n,t){var r,i;typeof n!="object"&&(n={});for(i in t)t.hasOwnProperty(i)&&(r=t[i],n[i]=r&&typeof r=="object"&&Object.prototype.toString.call(r)!=="[object Array]"&&i!=="renderTo"&&typeof r.nodeType!="number"?u(n[i]||{},r):t[i]);return n};for(n[0]===!0&&(i=n[1],n=Array.prototype.slice.call(n,2)),r=n.length,t=0;t<r;t++)i=u(i,n[t]);return i}function h(n,t){return parseInt(n,t||10)}function nr(n){return typeof n=="string"}function yt(n){return typeof n=="object"}function or(n){return Object.prototype.toString.call(n)==="[object Array]"}function gt(n){return typeof n=="number"}function wi(n){return et.log(n)/et.LN10}function ni(n){return et.pow(10,n)}function ti(n,t){for(var i=n.length;i--;)if(n[i]===t){n.splice(i,1);break}}function i(n){return n!==f&&n!==null}function d(n,t,r){var u,f;if(nr(t))i(r)?n.setAttribute(t,r):n&&n.getAttribute&&(f=n.getAttribute(t));else if(i(t)&&yt(t))for(u in t)n.setAttribute(u,t[u]);return f}function oi(n){return or(n)?n:[n]}function n(){for(var i=arguments,t,r=i.length,n=0;n<r;n++)if(t=i[n],typeof t!="undefined"&&t!==null)return t}function v(n,t){di&&!vt&&t&&t.opacity!==f&&(t.filter="alpha(opacity="+t.opacity*100+")");r(n.style,t)}function ct(n,t,i,u,f){return n=s.createElement(n),t&&r(n,t),f&&v(n,{padding:0,border:rt,margin:0}),i&&v(n,i),u&&u.appendChild(n),n}function ii(n,t){var i=function(){};return i.prototype=new n,r(i.prototype,t),i}function tr(n,t,i,r){var u=tt.lang,n=+n||0,f=t===-1?(n.toString().split(".")[1]||"").length:isNaN(t=y(t))?2:t,t=i===void 0?u.decimalPoint:i,r=r===void 0?u.thousandsSep:r,u=n<0?"-":"",i=String(h(n=y(n).toFixed(f))),e=i.length>3?i.length%3:0;return u+(e?i.substr(0,e)+r:"")+i.substr(e).replace(/(\d{3})(?=\d)/g,"$1"+r)+(f?t+y(n-i).toFixed(f).slice(2):"")}function ir(n,t){return Array((t||2)+1-String(n).length).join(0)+n}function sr(n,t,i){var r=n[t];n[t]=function(){var n=Array.prototype.slice.call(arguments);return n.unshift(r),i.apply(this,n)}}function rr(n,t){for(var e="{",s=!1,i,r,o,u,f,h=[];(e=n.indexOf(e))!==-1;){if(i=n.slice(0,e),s){for(r=i.split(":"),o=r.shift().split("."),f=o.length,i=t,u=0;u<f;u++)i=i[o[u]];r.length&&(r=r.join(":"),o=/\.([0-9])/,u=tt.lang,f=void 0,/f$/.test(r)?(f=(f=r.match(o))?f[1]:-1,i!==null&&(i=tr(i,f,u.decimalPoint,r.indexOf(",")>-1?u.thousandsSep:""))):i=eu(r,i))}h.push(i);n=n.slice(e+1);e=(s=!s)?"}":"{"}return h.push(n),h.join("")}function au(n){return et.pow(10,ft(et.log(n)/et.LN10))}function vu(t,i,r,u){var f,r=n(r,1);for(f=t/r,i||(i=[1,2,2.5,5,10],u&&u.allowDecimals===!1&&(r===1?i=[1,2,5,10]:r<=.1&&(i=[1/r]))),u=0;u<i.length;u++)if(t=i[u],f<=(i[u]+(i[u+1]||i[u]))/2)break;return t*r}function ff(){this.symbol=this.color=0}function yu(n,t){for(var u=n.length,r,i=0;i<u;i++)n[i].ss_i=i;for(n.sort(function(n,i){return r=t(n,i),r===0?n.ss_i-i.ss_i:r}),i=0;i<u;i++)delete n[i].ss_i}function hr(n){for(var t=n.length,i=n[0];t--;)n[t]<i&&(i=n[t]);return i}function bi(n){for(var t=n.length,i=n[0];t--;)n[t]>i&&(i=n[t]);return i}function cr(n,t){for(var i in n)n[i]&&n[i]!==t&&n[i].destroy&&n[i].destroy(),delete n[i]}function lr(n){fu||(fu=ct(fr));n&&fu.appendChild(n);fu.innerHTML=""}function si(n,t){var i="Highcharts error #"+n+": www.highcharts.com/errors/"+n;if(t)throw i;else g.console&&console.log(i)}function pt(n){return parseFloat(n.toPrecision(14))}function ar(t,i){vi=n(t,i.animation)}function ef(){var r=tt.global.useUTC,t=r?"getUTC":"get",i=r?"setUTC":"set";pr=(r&&tt.global.timezoneOffset||0)*6e4;ou=r?Date.UTC:function(t,i,r,u,f,e){return new Date(t,i,n(r,1),n(u,0),n(f,0),n(e,0)).getTime()};bu=t+"Minutes";ku=t+"Hours";du=t+"Day";nu=t+"Date";su=t+"Month";hu=t+"FullYear";lf=i+"Minutes";af=i+"Hours";gu=i+"Date";vf=i+"Month";yf=i+"FullYear"}function it(){}function vr(n,t,i,r){this.axis=n;this.pos=t;this.type=i||"";this.isNew=!0;i||r||this.addLabel()}function ri(){this.init.apply(this,arguments)}function br(){this.init.apply(this,arguments)}function of(t,i,r,u,f){var e=t.chart.inverted;this.axis=t;this.isNegative=r;this.options=i;this.x=u;this.total=null;this.points={};this.stack=f;this.alignOptions={align:i.align||(e?r?"left":"right":"center"),verticalAlign:i.verticalAlign||(e?"middle":r?"bottom":"top"),y:n(i.y,e?4:r?14:-6),x:n(i.x,e?r?-6:6:0)};this.textAlign=i.textAlign||(e?r?"right":"left":"center")}var f,s=document,g=window,et=Math,e=et.round,ft=et.floor,ur=et.ceil,u=et.max,l=et.min,y=et.abs,lt=et.cos,wt=et.sin,ui=et.PI,ki=ui/180,li=navigator.userAgent,sf=g.opera,di=/msie/i.test(li)&&!sf,ru=s.documentMode===8,uu=/AppleWebKit/.test(li),yr=/Firefox/.test(li),hf=/(Mobile|Android|Windows Phone)/.test(li),ai="http://www.w3.org/2000/svg",vt=!!s.createElementNS&&!!s.createElementNS(ai,"svg").createSVGRect,wf=yr&&parseInt(li.split("Firefox/")[1],10)<4,bt=!vt&&!di&&!!s.createElement("canvas").getContext,kr,dr,cf={},pu=0,fu,tt,eu,vi,wu,c,hi=function(){},ot=[],gr=0,fr="div",rt="none",bf=/^[0-9]+$/,kf="stroke-width",ou,pr,bu,ku,du,nu,su,hu,lf,af,gu,vf,yf,w={},ut=g.Highcharts=g.Highcharts?si(16,!0):{},b,at,nt,fi,ht,kt,pf,tf,ei,er,iu,pi,a,dt;eu=function(t,u,f){if(!i(u)||isNaN(u))return"Invalid date";var t=n(t,"%Y-%m-%d %H:%M:%S"),o=new Date(u-pr),s,h=o[ku](),a=o[du](),v=o[nu](),c=o[su](),y=o[hu](),l=tt.lang,p=l.weekdays,o=r({a:p[a].substr(0,3),A:p[a],d:ir(v),e:v,b:l.shortMonths[c],B:l.months[c],m:ir(c+1),y:y.toString().substr(2,2),Y:y,H:ir(h),I:ir(h%12||12),l:h%12||12,M:ir(o[bu]()),p:h<12?"AM":"PM",P:h<12?"am":"pm",S:ir(o.getSeconds()),L:ir(e(u%1e3),3)},ut.dateFormats);for(s in o)for(;t.indexOf("%"+s)!==-1;)t=t.replace("%"+s,typeof o[s]=="function"?o[s](u):o[s]);return f?t.substr(0,1).toUpperCase()+t.substr(1):t};ff.prototype={wrapColor:function(n){this.color>=n&&(this.color=0)},wrapSymbol:function(n){this.symbol>=n&&(this.symbol=0)}};c=function(){for(var n=0,t=arguments,r=t.length,i={};n<r;n++)i[t[n++]]=t[n];return i}("millisecond",1,"second",1e3,"minute",6e4,"hour",36e5,"day",864e5,"week",6048e5,"month",26784e5,"year",31556952e3);wu={init:function(n,t,i){var t=t||"",r=n.shift,e=t.indexOf("C")>-1,u=e?7:3,f,t=t.split(" "),i=[].concat(i),o,s,h=function(n){for(f=n.length;f--;)n[f]==="M"&&n.splice(f+1,0,n[f+1],n[f+2],n[f+1],n[f+2])};if(e&&(h(t),h(i)),n.isArea&&(o=t.splice(t.length-6,6),s=i.splice(i.length-6,6)),r<=i.length/u&&t.length===i.length)for(;r--;)i=[].concat(i).splice(0,u).concat(i);if(n.shift=0,t.length)for(n=i.length;t.length<n;)r=[].concat(t).splice(t.length-u,u),e&&(r[u-6]=r[u-2],r[u-5]=r[u-1]),t=t.concat(r);return o&&(t=t.concat(o),i=i.concat(s)),[t,i]},step:function(n,t,i,r){var f=[],u=n.length;if(i===1)f=r;else if(u===t.length&&i<1)for(;u--;)r=parseFloat(n[u]),f[u]=isNaN(r)?n[u]:i*parseFloat(t[u]-r)+r;else f=t;return f}},function(n){g.HighchartsAdapter=g.HighchartsAdapter||n&&{init:function(t){var u=n.fx,e=u.step,i,r=n.Tween,o=r&&r.propHooks;i=n.cssHooks.opacity;n.extend(n.easing,{easeOutQuad:function(n,t,i,r,u){return-r*(t/=u)*(t-2)+i}});n.each(["cur","_default","width","height","opacity"],function(n,t){var i=e,s;t==="cur"?i=u.prototype:t==="_default"&&r&&(i=o[t],t="set");(s=i[t])&&(i[t]=function(i){var r,i=n?i:this;if(i.prop!=="align")return r=i.elem,r.attr?r.attr(i.prop,t==="cur"?f:i.now):s.apply(this,arguments)})});sr(i,"get",function(n,t,i){return t.attr?t.opacity||0:n.call(this,t,i)});i=function(n){var i=n.elem,r;n.started||(r=t.init(i,i.d,i.toD),n.start=r[0],n.end=r[1],n.started=!0);i.attr("d",t.step(n.start,n.end,n.pos,i.toD))};r?o.d={set:i}:e.d=i;this.each=Array.prototype.forEach?function(n,t){return Array.prototype.forEach.call(n,t)}:function(n,t){for(var i=0,r=n.length;i<r;i++)if(t.call(n[i],n[i],i,n)===!1)return i};n.fn.highcharts=function(){var r="Chart",t=arguments,n,i;return this[0]&&(nr(t[0])&&(r=t[0],t=Array.prototype.slice.call(t,1)),n=t[0],n!==f&&(n.chart=n.chart||{},n.chart.renderTo=this[0],new ut[r](n,t[1]),i=this),n===f&&(i=ot[d(this[0],"data-highcharts-chart")])),i}},getScript:n.getScript,inArray:n.inArray,adapterRun:function(t,i){return n(t)[i]()},grep:n.grep,map:function(n,t){for(var r=[],i=0,u=n.length;i<u;i++)r[i]=t.call(n[i],n[i],i,n);return r},offset:function(t){return n(t).offset()},addEvent:function(t,i,r){n(t).bind(i,r)},removeEvent:function(t,i,r){var u=s.removeEventListener?"removeEventListener":"detachEvent";s[u]&&t&&!t[u]&&(t[u]=function(){});n(t).unbind(i,r)},fireEvent:function(t,i,u,f){var e=n.Event(i),o="detached"+i,s;!di&&u&&(delete u.layerX,delete u.layerY,delete u.returnValue);r(e,u);t[i]&&(t[o]=t[i],t[i]=null);n.each(["preventDefault","stopPropagation"],function(n,t){var i=e[t];e[t]=function(){try{i.call(e)}catch(n){t==="preventDefault"&&(s=!0)}}});n(t).trigger(e);t[o]&&(t[i]=t[o],t[o]=null);!f||e.isDefaultPrevented()||s||f(e)},washMouseEvent:function(n){var t=n.originalEvent||n;return t.pageX===f&&(t.pageX=n.pageX,t.pageY=n.pageY),t},animate:function(t,i,r){var u=n(t);t.style||(t.style={});i.d&&(t.toD=i.d,i.d=1);u.stop();i.opacity!==f&&t.attr&&(i.opacity+="px");u.animate(i,r)},stop:function(t){n(t).stop()}}}(g.jQuery);nt=g.HighchartsAdapter;b=nt||{};nt&&nt.init.call(nt,wu);var cu=b.adapterRun,df=b.getScript,gi=b.inArray,t=b.each,nf=b.grep,gf=b.offset,wr=b.map,k=b.addEvent,st=b.removeEvent,p=b.fireEvent,ne=b.washMouseEvent,lu=b.animate,tu=b.stop,b={enabled:!0,x:0,y:15,style:{color:"#606060",cursor:"default",fontSize:"11px"}};tt={colors:"#7cb5ec,#434348,#90ed7d,#f7a35c,#8085e9,#f15c80,#e4d354,#8085e8,#8d4653,#91e8e1".split(","),symbols:["circle","diamond","square","triangle","triangle-down"],lang:{loading:"Loading...",months:"January,February,March,April,May,June,July,August,September,October,November,December".split(","),shortMonths:"Jan,Feb,Mar,Apr,May,Jun,Jul,Aug,Sep,Oct,Nov,Dec".split(","),weekdays:"Sunday,Monday,Tuesday,Wednesday,Thursday,Friday,Saturday".split(","),decimalPoint:".",numericSymbols:"k,M,G,T,P,E".split(","),resetZoom:"Reset zoom",resetZoomTitle:"Reset zoom level 1:1",thousandsSep:","},global:{useUTC:!0,canvasToolsURL:"http://code.highcharts.com/4.0.1/modules/canvas-tools.js",VMLRadialGradientURL:"http://code.highcharts.com/4.0.1/gfx/vml-radial-gradient.png"},chart:{borderColor:"#4572A7",borderRadius:0,defaultSeriesType:"line",ignoreHiddenSeries:!0,spacing:[10,10,15,10],backgroundColor:"#FFFFFF",plotBorderColor:"#C0C0C0",resetZoomButton:{theme:{zIndex:20},position:{align:"right",x:-10,y:10}}},title:{text:"Chart title",align:"center",margin:15,style:{color:"#333333",fontSize:"18px"}},subtitle:{text:"",align:"center",style:{color:"#555555"}},plotOptions:{line:{allowPointSelect:!1,showCheckbox:!1,animation:{duration:1e3},events:{},lineWidth:2,marker:{lineWidth:0,radius:4,lineColor:"#FFFFFF",states:{hover:{enabled:!0},select:{fillColor:"#FFFFFF",lineColor:"#000000",lineWidth:2}}},point:{events:{}},dataLabels:o(b,{align:"center",enabled:!1,formatter:function(){return this.y===null?"":tr(this.y,-1)},verticalAlign:"bottom",y:0}),cropThreshold:300,pointRange:0,states:{hover:{marker:{},halo:{size:10,opacity:.25}},select:{marker:{}}},stickyTracking:!0,turboThreshold:1e3}},labels:{style:{position:"absolute",color:"#3E576F"}},legend:{enabled:!0,align:"center",layout:"horizontal",labelFormatter:function(){return this.name},borderColor:"#909090",borderRadius:0,navigation:{activeColor:"#274b6d",inactiveColor:"#CCC"},shadow:!1,itemStyle:{color:"#333333",fontSize:"12px",fontWeight:"bold"},itemHoverStyle:{color:"#000"},itemHiddenStyle:{color:"#CCC"},itemCheckboxStyle:{position:"absolute",width:"13px",height:"13px"},symbolPadding:5,verticalAlign:"bottom",x:0,y:0,title:{style:{fontWeight:"bold"}}},loading:{labelStyle:{fontWeight:"bold",position:"relative",top:"1em"},style:{position:"absolute",backgroundColor:"white",opacity:.5,textAlign:"center"}},tooltip:{enabled:!0,animation:vt,backgroundColor:"rgba(249, 249, 249, .85)",borderWidth:1,borderRadius:3,dateTimeLabelFormats:{millisecond:"%A, %b %e, %H:%M:%S.%L",second:"%A, %b %e, %H:%M:%S",minute:"%A, %b %e, %H:%M",hour:"%A, %b %e, %H:%M",day:"%A, %b %e, %Y",week:"Week from %A, %b %e, %Y",month:"%B %Y",year:"%Y"},headerFormat:'<span style="font-size: 10px">{point.key}<\/span><br/>',pointFormat:'<span style="color:{series.color}">●<\/span> {series.name}: <b>{point.y}<\/b><br/>',shadow:!0,snap:hf?25:10,style:{color:"#333333",cursor:"default",fontSize:"12px",padding:"8px",whiteSpace:"nowrap"}},credits:{enabled:!0,text:"Highcharts.com",href:"http://www.highcharts.com",position:{align:"right",x:-10,verticalAlign:"bottom",y:-5},style:{cursor:"pointer",color:"#909090",fontSize:"9px"}}};at=tt.plotOptions;nt=at.line;ef();var te=/rgba\(\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*,\s*([0-9]?(?:\.[0-9]+)?)\s*\)/,ie=/#([a-fA-F0-9]{2})([a-fA-F0-9]{2})([a-fA-F0-9]{2})/,re=/rgb\(\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*\)/,yi=function(n){var i=[],r,u;return function(n){n&&n.stops?u=wr(n.stops,function(n){return yi(n[1])}):(r=te.exec(n))?i=[h(r[1]),h(r[2]),h(r[3]),parseFloat(r[4],10)]:(r=ie.exec(n))?i=[h(r[1],16),h(r[2],16),h(r[3],16),1]:(r=re.exec(n))&&(i=[h(r[1]),h(r[2]),h(r[3]),1])}(n),{get:function(r){var f;return u?(f=o(n),f.stops=[].concat(f.stops),t(u,function(n,t){f.stops[t]=[f.stops[t][0],n.get(r)]})):f=i&&!isNaN(i[0])?r==="rgb"?"rgb("+i[0]+","+i[1]+","+i[2]+")":r==="a"?i[3]:"rgba("+i.join(",")+")":n,f},brighten:function(n){if(u)t(u,function(t){t.brighten(n)});else if(gt(n)&&n!==0)for(var r=0;r<3;r++)i[r]+=h(n*255),i[r]<0&&(i[r]=0),i[r]>255&&(i[r]=255);return this},rgba:i,setOpacity:function(n){return i[3]=n,this}}};if(it.prototype={init:function(n,t){this.element=t==="span"?ct(t):s.createElementNS(ai,t);this.renderer=n},opacity:1,animate:function(t,i,r){i=n(i,vi,!0);tu(this);i?(i=o(i,{}),r&&(i.complete=r),lu(this,t,i)):(this.attr(t),r&&r())},colorGradient:function(n,r,u){var l=this.renderer,p,s,f,a,v,y,w,b,e,c,h=[];if(n.linearGradient?s="linearGradient":n.radialGradient&&(s="radialGradient"),s){f=n[s];a=l.gradients;y=n.stops;e=u.radialReference;or(f)&&(n[s]=f={x1:f[0],y1:f[1],x2:f[2],y2:f[3],gradientUnits:"userSpaceOnUse"});s==="radialGradient"&&e&&!i(f.gradientUnits)&&(f=o(f,{cx:e[0]-e[2]/2+f.cx*e[2],cy:e[1]-e[2]/2+f.cy*e[2],r:f.r*e[2],gradientUnits:"userSpaceOnUse"}));for(c in f)c!=="id"&&h.push(c,f[c]);for(c in y)h.push(y[c]);h=h.join(",");a[h]?n=a[h].attr("id"):(f.id=n="highcharts-"+pu++,a[h]=v=l.createElement(s).attr(f).add(l.defs),v.stops=[],t(y,function(n){n[1].indexOf("rgba")===0?(p=yi(n[1]),w=p.get("rgb"),b=p.get("a")):(w=n[1],b=1);n=l.createElement("stop").attr({offset:n[0],"stop-color":w,"stop-opacity":b}).add(v);v.stops.push(n)}));u.setAttribute(r,"url("+l.url+"#"+n+")")}},attr:function(n,t){var i,r,e=this.element,o,s=this,u;if(typeof n=="string"&&t!==f&&(i=n,n={},n[i]=t),typeof n=="string")s=(this[n+"Getter"]||this._defaultGetter).call(this,n,e);else{for(i in n)r=n[i],u=!1,this.symbolName&&/^(x|y|width|height|r|start|end|innerR|anchorX|anchorY)/.test(i)&&(o||(this.symbolAttr(n),o=!0),u=!0),this.rotation&&(i==="x"||i==="y")&&(this.doTransform=!0),u||(this[i+"Setter"]||this._defaultSetter).call(this,r,i,e),this.shadows&&/^(width|height|visibility|x|y|d|transform|cx|cy|r)$/.test(i)&&this.updateShadows(i,r);this.doTransform&&(this.updateTransform(),this.doTransform=!1)}return s},updateShadows:function(n,t){for(var i=this.shadows,r=i.length;r--;)i[r].setAttribute(n,n==="height"?u(t-(i[r].cutHeight||0),0):n==="d"?this.d:t)},addClass:function(n){var t=this.element,i=d(t,"class")||"";return i.indexOf(n)===-1&&d(t,"class",i+" "+n),this},symbolAttr:function(i){var r=this;t("x,y,r,start,end,width,height,innerR,anchorX,anchorY".split(","),function(t){r[t]=n(i[t],r[t])});r.attr({d:r.renderer.symbols[r.symbolName](r.x,r.y,r.width,r.height,r)})},clip:function(n){return this.attr("clip-path",n?"url("+this.renderer.url+"#"+n.id+")":rt)},crisp:function(n){var t,r={},i,u=n.strokeWidth||this.strokeWidth||this.attr&&this.attr("stroke-width")||0;i=e(u)%2/2;n.x=ft(n.x||this.x||0)+i;n.y=ft(n.y||this.y||0)+i;n.width=ft((n.width||this.width||0)-2*i);n.height=ft((n.height||this.height||0)-2*i);n.strokeWidth=u;for(t in n)this[t]!==n[t]&&(this[t]=r[t]=n[t]);return r},css:function(n){var i=this.styles,f={},e=this.element,u,t,o="";if(u=!i,n&&n.color&&(n.fill=n.color),i)for(t in n)n[t]!==i[t]&&(f[t]=n[t],u=!0);if(u){if(u=this.textWidth=n&&n.width&&e.nodeName.toLowerCase()==="text"&&h(n.width),i&&(n=r(i,f)),this.styles=n,u&&(bt||!vt&&this.renderer.forExport)&&delete n.width,di&&!vt)v(this.element,n);else{i=function(n,t){return"-"+t.toLowerCase()};for(t in n)o+=t.replace(/([A-Z])/g,i)+":"+n[t]+";";d(e,"style",o)}u&&this.added&&this.renderer.buildText(this)}return this},on:function(n,t){var r=this,i=r.element;return dr&&n==="click"?(i.ontouchstart=function(n){r.touchEventFired=Date.now();n.preventDefault();t.call(i,n)},i.onclick=function(n){(li.indexOf("Android")===-1||Date.now()-(r.touchEventFired||0)>1100)&&t.call(i,n)}):i["on"+n]=t,this},setRadialReference:function(n){return this.element.radialReference=n,this},translate:function(n,t){return this.attr({translateX:n,translateY:t})},invert:function(){return this.inverted=!0,this.updateTransform(),this},updateTransform:function(){var t=this.translateX||0,u=this.translateY||0,f=this.scaleX,e=this.scaleY,o=this.inverted,s=this.rotation,r=this.element;o&&(t+=this.attr("width"),u+=this.attr("height"));t=["translate("+t+","+u+")"];o?t.push("rotate(90) scale(-1,1)"):s&&t.push("rotate("+s+" "+(r.getAttribute("x")||0)+" "+(r.getAttribute("y")||0)+")");(i(f)||i(e))&&t.push("scale("+n(f,1)+" "+n(e,1)+")");t.length&&r.setAttribute("transform",t.join(" "))},toFront:function(){var n=this.element;return n.parentNode.appendChild(n),this},align:function(t,i,r){var f,u,o,h,s={};return u=this.renderer,o=u.alignedObjects,t?(this.alignOptions=t,this.alignByTranslate=i,!r||nr(r))&&(this.alignTo=f=r||"renderer",ti(o,this),o.push(this),r=null):(t=this.alignOptions,i=this.alignByTranslate,f=this.alignTo),r=n(r,u[f],u),f=t.align,u=t.verticalAlign,o=(r.x||0)+(t.x||0),h=(r.y||0)+(t.y||0),(f==="right"||f==="center")&&(o+=(r.width-(t.width||0))/{right:1,center:2}[f]),s[i?"translateX":"x"]=e(o),(u==="bottom"||u==="middle")&&(h+=(r.height-(t.height||0))/({bottom:1,middle:2}[u]||1)),s[i?"translateY":"y"]=e(h),this[this.placed?"animate":"attr"](s),this.placed=!0,this.alignAttr=s,this},getBBox:function(){var n=this.bBox,o=this.renderer,t,i,s=this.rotation,u,f,e;if(t=this.element,u=this.styles,f=s*ki,i=this.textStr,(i===""||bf.test(i))&&(e="num."+i.toString().length+(u?"|"+u.fontSize+"|"+u.fontFamily:"")),e&&(n=o.cache[e]),!n){if(t.namespaceURI===ai||o.forExport){try{n=t.getBBox?r({},t.getBBox()):{width:t.offsetWidth,height:t.offsetHeight}}catch(h){}(!n||n.width<0)&&(n={width:0,height:0})}else n=this.htmlGetBBox();o.isSVG&&(t=n.width,i=n.height,di&&u&&u.fontSize==="11px"&&i.toPrecision(3)==="16.9"&&(n.height=i=14),s&&(n.width=y(i*wt(f))+y(t*lt(f)),n.height=y(i*lt(f))+y(t*wt(f))));this.bBox=n;e&&(o.cache[e]=n)}return n},show:function(n){return n&&this.element.namespaceURI===ai?(this.element.removeAttribute("visibility"),this):this.attr({visibility:n?"inherit":"visible"})},hide:function(){return this.attr({visibility:"hidden"})},fadeOut:function(n){var t=this;t.animate({opacity:0},{duration:n||150,complete:function(){t.hide()}})},add:function(n){var t=this.renderer,r=n||t,e=r.element||t.box,o=this.element,u=this.zIndex,f,s;if(n&&(this.parentGroup=n),this.parentInverted=n&&n.inverted,this.textStr!==void 0&&t.buildText(this),u&&(r.handleZ=!0,u=h(u)),r.handleZ)for(n=e.childNodes,f=0;f<n.length;f++)if(t=n[f],r=d(t,"zIndex"),t!==o&&(h(r)>u||!i(u)&&i(r))){e.insertBefore(o,t);s=!0;break}return s||e.appendChild(o),this.added=!0,this.onAdd&&this.onAdd(),this},safeRemoveChild:function(n){var t=n.parentNode;t&&t.removeChild(n)},destroy:function(){var n=this,i=n.element||{},f=n.shadows,r=n.renderer.isSVG&&i.nodeName==="SPAN"&&n.parentGroup,e,u;if(i.onclick=i.onmouseout=i.onmouseover=i.onmousemove=i.point=null,tu(n),n.clipPath&&(n.clipPath=n.clipPath.destroy()),n.stops){for(u=0;u<n.stops.length;u++)n.stops[u]=n.stops[u].destroy();n.stops=null}for(n.safeRemoveChild(i),f&&t(f,function(t){n.safeRemoveChild(t)});r&&r.div.childNodes.length===0;)i=r.parentGroup,n.safeRemoveChild(r.div),delete r.div,r=i;n.alignTo&&ti(n.renderer.alignedObjects,n);for(e in n)delete n[e];return null},shadow:function(t,i,r){var c=[],e,f,h=this.element,o,s,l,a;if(t){for(s=n(t.width,3),l=(t.opacity||.15)/s,a=this.parentInverted?"(-1,-1)":"("+n(t.offsetX,1)+", "+n(t.offsetY,1)+")",e=1;e<=s;e++)f=h.cloneNode(0),o=s*2+1-2*e,d(f,{isShadow:"true",stroke:t.color||"black","stroke-opacity":l*e,"stroke-width":o,transform:"translate"+a,fill:rt}),r&&(d(f,"height",u(d(f,"height")-o,0)),f.cutHeight=o),i?i.element.appendChild(f):h.parentNode.insertBefore(f,h),c.push(f);this.shadows=c}return this},xGetter:function(n){return this.element.nodeName==="circle"&&(n={x:"cx",y:"cy"}[n]||n),this._defaultGetter(n)},_defaultGetter:function(t){return t=n(this[t],this.element?this.element.getAttribute(t):null,0),/^[0-9\.]+$/.test(t)&&(t=parseFloat(t)),t},dSetter:function(n,t,i){n&&n.join&&(n=n.join(" "));/(NaN| {2}|^$)/.test(n)&&(n="M 0 0");i.setAttribute(t,n);this[t]=n},dashstyleSetter:function(n){var t;if(n=n&&n.toLowerCase()){for(n=n.replace("shortdashdotdot","3,1,1,1,1,1,").replace("shortdashdot","3,1,1,1").replace("shortdot","1,1,").replace("shortdash","3,1,").replace("longdash","8,3,").replace(/dot/g,"1,3,").replace("dash","4,3,").replace(/,$/,"").split(","),t=n.length;t--;)n[t]=h(n[t])*this.element.getAttribute("stroke-width");n=n.join(",");this.element.setAttribute("stroke-dasharray",n)}},alignSetter:function(n){this.element.setAttribute("text-anchor",{left:"start",center:"middle",right:"end"}[n])},opacitySetter:function(n,t,i){this[t]=n;i.setAttribute(t,n)},"stroke-widthSetter":function(n,t,i){n===0&&(n=1e-5);this.strokeWidth=n;i.setAttribute(t,n)},titleSetter:function(n){var t=this.element.getElementsByTagName("title")[0];t||(t=s.createElementNS(ai,"title"),this.element.appendChild(t));t.textContent=n},textSetter:function(n){n!==this.textStr&&(delete this.bBox,this.textStr=n,this.added&&this.renderer.buildText(this))},fillSetter:function(n,t,i){typeof n=="string"?i.setAttribute(t,n):n&&this.colorGradient(n,t,i)},zIndexSetter:function(n,t,i){i.setAttribute(t,n);this[t]=n},_defaultSetter:function(n,t,i){i.setAttribute(t,n)}},it.prototype.yGetter=it.prototype.xGetter,it.prototype.translateXSetter=it.prototype.translateYSetter=it.prototype.rotationSetter=it.prototype.verticalAlignSetter=it.prototype.scaleXSetter=it.prototype.scaleYSetter=function(n,t){this[t]=n;this.doTransform=!0},it.prototype.strokeSetter=it.prototype.fillSetter,fi=function(){this.init.apply(this,arguments)},fi.prototype={Element:it,init:function(n,t,i,r,u){var o=location,e,r=this.createElement("svg").attr({version:"1.1"}).css(this.getStyle(r)),f;e=r.element;n.appendChild(e);n.innerHTML.indexOf("xmlns")===-1&&d(e,"xmlns",ai);this.isSVG=!0;this.box=e;this.boxWrapper=r;this.alignedObjects=[];this.url=(yr||uu)&&s.getElementsByTagName("base").length?o.href.replace(/#.*?$/,"").replace(/([\('\)])/g,"\\$1").replace(/ /g,"%20"):"";this.createElement("desc").add().element.appendChild(s.createTextNode("Created with Highcharts 4.0.1"));this.defs=this.createElement("defs").add();this.forExport=u;this.gradients={};this.cache={};this.setSize(t,i,!1);yr&&n.getBoundingClientRect&&(this.subPixelFix=t=function(){v(n,{left:0,top:0});f=n.getBoundingClientRect();v(n,{left:ur(f.left)-f.left+"px",top:ur(f.top)-f.top+"px"})},t(),k(g,"resize",t))},getStyle:function(n){return this.style=r({fontFamily:'"Lucida Grande", "Lucida Sans Unicode", Arial, Helvetica, sans-serif',fontSize:"12px"},n)},isHidden:function(){return!this.boxWrapper.getBBox().width},destroy:function(){var n=this.defs;return this.box=null,this.boxWrapper=this.boxWrapper.destroy(),cr(this.gradients||{}),this.gradients=null,n&&(this.defs=n.destroy()),this.subPixelFix&&st(g,"resize",this.subPixelFix),this.alignedObjects=null},createElement:function(n){var t=new this.Element;return t.init(this,n),t},draw:function(){},buildText:function(i){for(var u=i.element,f=this,y=f.forExport,r=n(i.textStr,"").toString(),p=r.indexOf("<")!==-1,w=u.childNodes,c,l,a=d(u,"x"),e=i.styles,o=i.textWidth,b=e&&e.lineHeight,k=w.length,g=function(n){return b?h(b):f.fontMetrics(/(px|em)$/.test(n&&n.style.fontSize)?n.style.fontSize:e&&e.fontSize||f.style.fontSize||12).h};k--;)u.removeChild(w[k]);!p&&r.indexOf(" ")===-1?u.appendChild(s.createTextNode(r)):(c=/<.*style="([^"]+)".*>/,l=/<.*href="(http[^"]+)".*>/,o&&!i.added&&this.box.appendChild(u),r=p?r.replace(/<(b|strong)>/g,'<span style="font-weight:bold">').replace(/<(i|em)>/g,'<span style="font-style:italic">').replace(/<a/g,"<span").replace(/<\/(b|strong|i|em|a)>/g,"<\/span>").split(/<br.*?>/g):[r],r[r.length-1]===""&&r.pop(),t(r,function(n,r){var h,p=0,n=n.replace(/<span/g,"|||<span").replace(/<\/span>/g,"<\/span>|||");h=n.split("|||");t(h,function(n){var w,t,k;if((n!==""||h.length===1)&&(w={},t=s.createElementNS(ai,"tspan"),c.test(n)&&(k=n.match(c)[1].replace(/(;| |^)color([ :])/,"$1fill$2"),d(t,"style",k)),l.test(n)&&!y&&(d(t,"onclick",'location.href="'+n.match(l)[1]+'"'),v(t,{cursor:"pointer"})),n=(n.replace(/<(.|\n)*?>/g,"")||" ").replace(/&lt;/g,"<").replace(/&gt;/g,">"),n!==" "&&(t.appendChild(s.createTextNode(n)),p?w.dx=0:r&&a!==null&&(w.x=a),d(t,w),!p&&r&&(!vt&&y&&v(t,{display:"block"}),d(t,"dy",g(t),uu&&t.offsetHeight)),u.appendChild(t),p++,o)))for(var n=n.replace(/([^\^])-/g,"$1- ").split(" "),w=n.length>1&&e.whiteSpace!=="nowrap",nt,b,it=i._clipHeight,tt=[],rt=g(),ut=1;w&&(n.length||tt.length);)delete i.bBox,nt=i.getBBox(),b=nt.width,!vt&&f.forExport&&(b=f.measureSpanWidth(t.firstChild.data,i.styles)),nt=b>o,!nt||n.length===1?(n=tt,tt=[],n.length&&(ut++,it&&ut*rt>it?(n=["..."],i.attr("title",i.textStr)):(t=s.createElementNS(ai,"tspan"),d(t,{dy:rt,x:a}),k&&d(t,"style",k),u.appendChild(t),b>o&&(o=b)))):(t.removeChild(t.firstChild),tt.unshift(n.pop())),n.length&&t.appendChild(s.createTextNode(n.join(" ").replace(/- /g,"-")))})}))},button:function(n,t,i,u,f,e,s,h,c){var l=this.label(n,t,i,c,null,null,null,null,"button"),a=0,w,b,v,y,p,d,n={x1:0,y1:0,x2:0,y2:1},f=o({"stroke-width":1,stroke:"#CCCCCC",fill:{linearGradient:n,stops:[[0,"#FEFEFE"],[1,"#F6F6F6"]]},r:2,padding:5,style:{color:"black"}},f);return v=f.style,delete f.style,e=o(f,{stroke:"#68A",fill:{linearGradient:n,stops:[[0,"#FFF"],[1,"#ACF"]]}},e),y=e.style,delete e.style,s=o(f,{stroke:"#68A",fill:{linearGradient:n,stops:[[0,"#9BD"],[1,"#CDF"]]}},s),p=s.style,delete s.style,h=o(f,{style:{color:"#CCC"}},h),d=h.style,delete h.style,k(l.element,di?"mouseover":"mouseenter",function(){a!==3&&l.attr(e).css(y)}),k(l.element,di?"mouseout":"mouseleave",function(){a!==3&&(w=[f,e,s][a],b=[v,y,p][a],l.attr(w).css(b))}),l.setState=function(n){(l.state=a=n)?n===2?l.attr(s).css(p):n===3&&l.attr(h).css(d):l.attr(f).css(v)},l.on("click",function(){a!==3&&u.call(l)}).attr(f).css(r({cursor:"default"},v))},crispLine:function(n,t){return n[1]===n[4]&&(n[1]=n[4]=e(n[1])-t%2/2),n[2]===n[5]&&(n[2]=n[5]=e(n[2])+t%2/2),n},path:function(n){var t={fill:rt};return or(n)?t.d=n:yt(n)&&r(t,n),this.createElement("path").attr(t)},circle:function(n,t,i){return n=yt(n)?n:{x:n,y:t,r:i},t=this.createElement("circle"),t.xSetter=function(n){this.element.setAttribute("cx",n)},t.ySetter=function(n){this.element.setAttribute("cy",n)},t.attr(n)},arc:function(n,t,i,r,u,f){return yt(n)&&(t=n.y,i=n.r,r=n.innerR,u=n.start,f=n.end,n=n.x),n=this.symbol("arc",n||0,t||0,i||0,i||0,{innerR:r||0,start:u||0,end:f||0}),n.r=i,n},rect:function(n,t,i,r,e,o){var e=yt(n)?n.r:e,s=this.createElement("rect"),n=yt(n)?n:n===f?{}:{x:n,y:t,width:u(i,0),height:u(r,0)};return o!==f&&(n.strokeWidth=o,n=s.crisp(n)),e&&(n.r=e),s.rSetter=function(n){d(this.element,{rx:n,ry:n})},s.attr(n)},setSize:function(t,i,r){var u=this.alignedObjects,f=u.length;for(this.width=t,this.height=i,this.boxWrapper[n(r,!0)?"animate":"attr"]({width:t,height:i});f--;)u[f].align()},g:function(n){var t=this.createElement("g");return i(n)?t.attr({"class":"highcharts-"+n}):t},image:function(n,t,i,u,f){var e={preserveAspectRatio:rt};return arguments.length>1&&r(e,{x:t,y:i,width:u,height:f}),e=this.createElement("image").attr(e),e.element.setAttributeNS?e.element.setAttributeNS("http://www.w3.org/1999/xlink","href",n):e.element.setAttribute("hc-svg-href",n),e},symbol:function(n,t,i,u,f,o){var s,h=this.symbols[n],h=h&&h(e(t),e(i),u,f,o),a=/^url\((.*?)\)$/,c,l;return h?(s=this.path(h),r(s,{symbolName:n,x:t,y:i,width:u,height:f}),o&&r(s,o)):a.test(n)&&(l=function(n,t){n.element&&(n.attr({width:t[0],height:t[1]}),n.alignByTranslate||n.translate(e((u-t[0])/2),e((f-t[1])/2)))},c=n.match(a)[1],n=cf[c],s=this.image(c).attr({x:t,y:i}),s.isImg=!0,n?l(s,n):(s.attr({width:0,height:0}),ct("img",{onload:function(){l(s,cf[c]=[this.width,this.height])},src:c}))),s},symbols:{circle:function(n,t,i,r){var u=.166*i;return["M",n+i/2,t,"C",n+i+u,t,n+i+u,t+r,n+i/2,t+r,"C",n-u,t+r,n-u,t,n+i/2,t,"Z"]},square:function(n,t,i,r){return["M",n,t,"L",n+i,t,n+i,t+r,n,t+r,"Z"]},triangle:function(n,t,i,r){return["M",n+i/2,t,"L",n+i,t+r,n,t+r,"Z"]},"triangle-down":function(n,t,i,r){return["M",n,t,"L",n+i,t,n+i/2,t+r,"Z"]},diamond:function(n,t,i,r){return["M",n+i/2,t,"L",n+i,t+r/2,n+i/2,t+r,n,t+r/2,"Z"]},arc:function(n,t,i,r,u){var e=u.start,i=u.r||i||r,f=u.end-.001,r=u.innerR,o=u.open,s=lt(e),h=wt(e),c=lt(f),f=wt(f),u=u.end-e<ui?0:1;return["M",n+i*s,t+i*h,"A",i,i,0,u,1,n+i*c,t+i*f,o?"M":"L",n+r*c,t+r*f,"A",r,r,0,u,0,n+r*s,t+r*h,o?"":"Z"]},callout:function(n,t,i,r,u){var f=l(u&&u.r||0,i,r),h=f+6,o=u&&u.anchorX,s=u&&u.anchorY,u=e(u.strokeWidth||0)%2/2;return n+=u,t+=u,u=["M",n+f,t,"L",n+i-f,t,"C",n+i,t,n+i,t,n+i,t+f,"L",n+i,t+r-f,"C",n+i,t+r,n+i,t+r,n+i-f,t+r,"L",n+f,t+r,"C",n,t+r,n,t+r,n,t+r-f,"L",n,t+f,"C",n,t,n,t,n+f,t],o&&o>i&&s>t+h&&s<t+r-h?u.splice(13,3,"L",n+i,s-6,n+i+6,s,n+i,s+6,n+i,t+r-f):o&&o<0&&s>t+h&&s<t+r-h?u.splice(33,3,"L",n,s+6,n-6,s,n,s-6,n,t+f):s&&s>r&&o>n+h&&o<n+i-h?u.splice(23,3,"L",o+6,t+r,o,t+r+6,o-6,t+r,n+f,t+r):s&&s<0&&o>n+h&&o<n+i-h&&u.splice(3,3,"L",o-6,t,o,t-6,o+6,t,i-f,t),u}},clipRect:function(n,t,i,r){var u="highcharts-"+pu++,f=this.createElement("clipPath").attr({id:u}).add(this.defs),n=this.rect(n,t,i,r,0).add(f);return n.id=u,n.clipPath=f,n},text:function(n,t,i,r){var f=bt||!vt&&this.forExport,u={};return r&&!this.forExport?this.html(n,t,i):(u.x=Math.round(t||0),i&&(u.y=Math.round(i)),(n||n===0)&&(u.text=n),n=this.createElement("text").attr(u),f&&n.css({position:"absolute"}),r||(n.xSetter=function(n,t,i){for(var f=i.childNodes,u,r=1;r<f.length;r++)u=f[r],u.getAttribute("x")===i.getAttribute("x")&&u.setAttribute("x",n);i.setAttribute(t,n)}),n)},fontMetrics:function(n){var n=n||this.style.fontSize,n=/px/.test(n)?h(n):/em/.test(n)?parseFloat(n)*12:12,n=n<24?n+4:e(n*1.2),t=e(n*.8);return{h:n,b:t}},label:function(n,u,s,h,c,l,a,v,y){function yt(){var n,t;n=w.element.style;d=(nt===void 0||ht===void 0||p.styles.textAlign)&&w.textStr&&w.getBBox();p.width=(nt||d.width||0)+2*k+ot;p.height=(ht||d.height||0)+2*k;at=k+g.fontMetrics(n&&n.fontSize).b;vt&&(b||(n=e(-ut*k),t=v?-at:0,p.box=b=h?g.symbol(h,n,t,p.width,p.height,ft):g.rect(n,t,p.width,p.height,0,ft[kf]),b.attr("fill",rt).add(p)),b.isImg||b.attr(r({width:e(p.width),height:e(p.height)},ft)),ft=null)}function et(){var n=p.styles,n=n&&n.textAlign,r=ot+k*(1-ut),t;t=v?0:at;i(nt)&&d&&(n==="center"||n==="right")&&(r+={center:.5,right:1}[n]*(nt-d.width));(r!==w.x||t!==w.y)&&(w.attr("x",r),t!==f&&w.attr("y",t));w.x=r;w.y=t}function tt(n,t){b?b.attr(n,t):ft[n]=t}var g=this,p=g.g(y),w=g.text("",0,0,a).attr({zIndex:1}),b,d,ut=0,k=3,ot=0,nt,ht,ct,lt,pt=0,ft={},at,vt,wt;return p.onAdd=function(){w.add(p);p.attr({text:n||"",x:u,y:s});b&&i(c)&&p.attr({anchorX:c,anchorY:l})},p.widthSetter=function(n){nt=n},p.heightSetter=function(n){ht=n},p.paddingSetter=function(n){i(n)&&n!==k&&(k=n,et())},p.paddingLeftSetter=function(n){i(n)&&n!==ot&&(ot=n,et())},p.alignSetter=function(n){ut={left:0,center:.5,right:1}[n]},p.textSetter=function(n){n!==f&&w.textSetter(n);yt();et()},p["stroke-widthSetter"]=function(n,t){n&&(vt=!0);pt=n%2/2;tt(t,n)},p.strokeSetter=p.fillSetter=p.rSetter=function(n,t){t==="fill"&&n&&(vt=!0);tt(t,n)},p.anchorXSetter=function(n,t){c=n;tt(t,n+pt-ct)},p.anchorYSetter=function(n,t){l=n;tt(t,n-lt)},p.xSetter=function(n){p.x=n;ut&&(n-=ut*((nt||d.width)+k));ct=e(n);p.attr("translateX",ct)},p.ySetter=function(n){lt=p.y=e(n);p.attr("translateY",lt)},wt=p.css,r(p,{css:function(n){if(n){var i={},n=o(n);t("fontSize,fontWeight,fontFamily,color,lineHeight,width,textDecoration,textShadow".split(","),function(t){n[t]!==f&&(i[t]=n[t],delete n[t])});w.css(i)}return wt.call(p,n)},getBBox:function(){return{width:d.width+2*k,height:d.height+2*k,x:d.x-k,y:d.y-k}},shadow:function(n){return b&&b.shadow(n),p},destroy:function(){st(p.element,"mouseenter");st(p.element,"mouseleave");w&&(w=w.destroy());b&&(b=b.destroy());it.prototype.destroy.call(p);p=g=yt=et=tt=null}})}},kr=fi,r(it.prototype,{htmlCss:function(n){var t=this.element;return(t=n&&t.tagName==="SPAN"&&n.width)&&(delete n.width,this.textWidth=t,this.updateTransform()),this.styles=r(this.styles,n),v(this.element,n),this},htmlGetBBox:function(){var n=this.element,t=this.bBox;return t||(n.nodeName==="text"&&(n.style.position="absolute"),t=this.bBox={x:n.offsetLeft,y:n.offsetTop,width:n.offsetWidth,height:n.offsetHeight}),t},htmlUpdateTransform:function(){if(this.added){var c=this.renderer,r=this.element,l=this.translateX||0,a=this.translateY||0,w=this.x||0,b=this.y||0,o=this.textAlign||"left",y={left:0,center:.5,right:1}[o],u=this.shadows;if(v(r,{marginLeft:l,marginTop:a}),u&&t(u,function(n){v(n,{marginLeft:l+1,marginTop:a+1})}),this.inverted&&t(r.childNodes,function(n){c.invertChild(n,r)}),r.tagName==="SPAN"){var f=this.rotation,e,s=h(this.textWidth),p=[f,o,r.innerHTML,this.textWidth].join(",");p!==this.cTT&&(e=c.fontMetrics(r.style.fontSize).b,i(f)&&this.setSpanRotation(f,y,e),u=n(this.elemWidth,r.offsetWidth),u>s&&/[ \-]/.test(r.textContent||r.innerText)&&(v(r,{width:s+"px",display:"block",whiteSpace:"normal"}),u=s),this.getSpanCorrection(u,e,y,f,o));v(r,{left:w+(this.xCorr||0)+"px",top:b+(this.yCorr||0)+"px"});uu&&(e=r.offsetHeight);this.cTT=p}}else this.alignOnAdd=!0},setSpanRotation:function(n,t,i){var r={},u=di?"-ms-transform":uu?"-webkit-transform":yr?"MozTransform":sf?"-o-transform":"";r[u]=r.transform="rotate("+n+"deg)";r[u+(yr?"Origin":"-origin")]=r.transformOrigin=t*100+"% "+i+"px";v(this.element,r)},getSpanCorrection:function(n,t,i){this.xCorr=-n*i;this.yCorr=-t}}),r(fi.prototype,{html:function(n,i,u){var f=this.createElement("span"),o=f.element,s=f.renderer;return f.textSetter=function(n){n!==o.innerHTML&&delete this.bBox;o.innerHTML=this.textStr=n},f.xSetter=f.ySetter=f.alignSetter=f.rotationSetter=function(n,t){t==="align"&&(t="textAlign");f[t]=n;f.htmlUpdateTransform()},f.attr({text:n,x:e(i),y:e(u)}).css({position:"absolute",whiteSpace:"nowrap",fontFamily:this.style.fontFamily,fontSize:this.style.fontSize}),f.css=f.htmlCss,s.isSVG&&(f.add=function(n){var i,u=s.box.parentNode,e=[];if(this.parentGroup=n){if(i=n.div,!i){for(;n;)e.push(n),n=n.parentGroup;t(e.reverse(),function(n){var t;i=n.div=n.div||ct(fr,{className:d(n.element,"class")},{position:"absolute",left:(n.translateX||0)+"px",top:(n.translateY||0)+"px"},i||u);t=i.style;r(n,{translateXSetter:function(i,r){t.left=i+"px";n[r]=i;n.doTransform=!0},translateYSetter:function(i,r){t.top=i+"px";n[r]=i;n.doTransform=!0},visibilitySetter:function(n,i){t[i]=n}})})}}else i=u;return i.appendChild(o),f.added=!0,f.alignOnAdd&&f.htmlUpdateTransform(),f}),f}}),vt||bt||(ut.VMLElement=ht={init:function(n,t){var i=["<",t,' filled="f" stroked="f"'],r=["position: ","absolute",";"],u=t===fr;(t==="shape"||u)&&r.push("left:0;top:0;width:1px;height:1px;");r.push("visibility: ",u?"hidden":"visible");i.push(' style="',r.join(""),'"/>');t&&(i=u||t==="span"||t==="img"?i.join(""):n.prepVML(i),this.element=ct(i));this.renderer=n},add:function(n){var i=this.renderer,r=this.element,t=i.box,t=n?n.element||n:t;return n&&n.inverted&&i.invertChild(r,t),t.appendChild(r),this.added=!0,this.alignOnAdd&&!this.deferUpdateTransform&&this.updateTransform(),this.onAdd&&this.onAdd(),this},updateTransform:it.prototype.htmlUpdateTransform,setSpanRotation:function(){var n=this.rotation,t=lt(n*ki),i=wt(n*ki);v(this.element,{filter:n?["progid:DXImageTransform.Microsoft.Matrix(M11=",t,", M12=",-i,", M21=",i,", M22=",t,", sizingMethod='auto expand')"].join(""):rt})},getSpanCorrection:function(t,i,r,u,f){var e=u?lt(u*ki):1,o=u?wt(u*ki):0,h=n(this.elemHeight,this.element.offsetHeight),s;this.xCorr=e<0&&-t;this.yCorr=o<0&&-h;s=e*o<0;this.xCorr+=o*i*(s?1-r:r);this.yCorr-=e*i*(u?s?r:1-r:1);f&&f!=="left"&&(this.xCorr-=t*r*(e<0?-1:1),u&&(this.yCorr-=h*r*(o<0?-1:1)),v(this.element,{textAlign:f}))},pathToVML:function(n){for(var t=n.length,i=[];t--;)gt(n[t])?i[t]=e(n[t]*10)-5:n[t]==="Z"?i[t]="x":(i[t]=n[t],n.isArc&&(n[t]==="wa"||n[t]==="at"))&&(i[t+5]===i[t+7]&&(i[t+7]+=n[t+7]>n[t+5]?1:-1),i[t+6]===i[t+8]&&(i[t+8]+=n[t+8]>n[t+6]?1:-1));return i.join(" ")||"x"},clip:function(n){var t=this,i;return n?(i=n.members,ti(i,t),i.push(t),t.destroyClip=function(){ti(i,t)},n=n.getCSS(t)):(t.destroyClip&&t.destroyClip(),n={clip:ru?"inherit":"rect(auto)"}),t.css(n)},css:it.prototype.htmlCss,safeRemoveChild:function(n){n.parentNode&&lr(n)},destroy:function(){return this.destroyClip&&this.destroyClip(),it.prototype.destroy.apply(this)},on:function(n,t){return this.element["on"+n]=function(){var n=g.event;n.target=n.srcElement;t(n)},this},cutOffPath:function(n,t){var i,n=n.split(/[ ,]/);return i=n.length,(i===9||i===11)&&(n[i-4]=n[i-2]=h(n[i-2])-10*t),n.join(" ")},shadow:function(t,i,r){var v=[],f,e=this.element,y=this.renderer,u,p=e.style,s,o=e.path,c,l,a,w;if(o&&typeof o.value!="string"&&(o="x"),l=o,t){for(a=n(t.width,3),w=(t.opacity||.15)/a,f=1;f<=3;f++)c=a*2+1-2*f,r&&(l=this.cutOffPath(o.value,c+.5)),s=['<shape isShadow="true" strokeweight="',c,'" filled="false" path="',l,'" coordsize="10 10" style="',e.style.cssText,'" />'],u=ct(y.prepVML(s),null,{left:h(p.left)+n(t.offsetX,1),top:h(p.top)+n(t.offsetY,1)}),r&&(u.cutOff=c+1),s=['<stroke color="',t.color||"black",'" opacity="',w*f,'"/>'],ct(y.prepVML(s),null,null,u),i?i.element.appendChild(u):e.parentNode.insertBefore(u,e),v.push(u);this.shadows=v}return this},updateShadows:hi,setAttr:function(n,t){ru?this.element[n]=t:this.element.setAttribute(n,t)},classSetter:function(n){this.element.className=n},dashstyleSetter:function(n,t,i){(i.getElementsByTagName("stroke")[0]||ct(this.renderer.prepVML(["<stroke/>"]),null,null,i))[t]=n||"solid";this[t]=n},dSetter:function(n,t,i){var r=this.shadows,n=n||[];if(this.d=n.join(" "),i.path=n=this.pathToVML(n),r)for(i=r.length;i--;)r[i].path=r[i].cutOff?this.cutOffPath(n,r[i].cutOff):n;this.setAttr(t,n)},fillSetter:function(n,t,i){var r=i.nodeName;r==="SPAN"?i.style.color=n:r!=="IMG"&&(i.filled=n!==rt,this.setAttr("fillcolor",this.renderer.color(n,i,t,this)))},opacitySetter:hi,rotationSetter:function(n,t,i){i=i.style;this[t]=i[t]=n;i.left=-e(wt(n*ki)+1)+"px";i.top=e(lt(n*ki))+"px"},strokeSetter:function(n,t,i){this.setAttr("strokecolor",this.renderer.color(n,i,t))},"stroke-widthSetter":function(n,t,i){i.stroked=!!n;this[t]=n;gt(n)&&(n+="px");this.setAttr("strokeweight",n)},titleSetter:function(n,t){this.setAttr(t,n)},visibilitySetter:function(n,i,r){n==="inherit"&&(n="visible");this.shadows&&t(this.shadows,function(t){t.style[i]=n});r.nodeName==="DIV"&&(n=n==="hidden"?"-999em":0,ru||(r.style[i]=n?"visible":"hidden"),i="top");r.style[i]=n},xSetter:function(n,t,i){this[t]=n;t==="x"?t="left":t==="y"&&(t="top");this.updateClipping?(this[t]=n,this.updateClipping()):i.style[t]=n},zIndexSetter:function(n,t,i){i.style[t]=n}},ht=ii(it,ht),ht.prototype.ySetter=ht.prototype.widthSetter=ht.prototype.heightSetter=ht.prototype.xSetter,kt={Element:ht,isIE8:li.indexOf("MSIE 8.0")>-1,init:function(n,t,i,u){var f;if(this.alignedObjects=[],u=this.createElement(fr).css(r(this.getStyle(u),{position:"relative"})),f=u.element,n.appendChild(u.element),this.isVML=!0,this.box=f,this.boxWrapper=u,this.cache={},this.setSize(t,i,!1),!s.namespaces.hcv){s.namespaces.add("hcv","urn:schemas-microsoft-com:vml");try{s.createStyleSheet().cssText="hcv\\:fill, hcv\\:path, hcv\\:shape, hcv\\:stroke{ behavior:url(#default#VML); display: inline-block; } "}catch(e){s.styleSheets[0].cssText+="hcv\\:fill, hcv\\:path, hcv\\:shape, hcv\\:stroke{ behavior:url(#default#VML); display: inline-block; } "}}},isHidden:function(){return!this.box.offsetWidth},clipRect:function(n,i,u,f){var s=this.createElement(),o=yt(n);return r(s,{members:[],left:(o?n.x:n)+1,top:(o?n.y:i)+1,width:(o?n.width:u)-1,height:(o?n.height:f)-1,getCSS:function(n){var t=n.element,o=t.nodeName,n=n.inverted,i=this.top-(o==="shape"?t.offsetTop:0),u=this.left,t=u+this.width,f=i+this.height,i={clip:"rect("+e(n?u:i)+"px,"+e(n?f:t)+"px,"+e(n?t:f)+"px,"+e(n?i:u)+"px)"};return!n&&ru&&o==="DIV"&&r(i,{width:t+"px",height:f+"px"}),i},updateClipping:function(){t(s.members,function(n){n.element&&n.css(s.getCSS(n))})}})},color:function(n,i,r,u){var lt=this,s,b=/^rgba/,v,c,f=rt;if(n&&n.linearGradient?c="gradient":n&&n.radialGradient&&(c="pattern"),c){var h,y,e=n.linearGradient||n.radialGradient,l,k,d,g,nt,p="",n=n.stops,w,it=[],ut=function(){v=['<fill colors="'+it.join(",")+'" opacity="',d,'" o:opacity2="',k,'" type="',c,'" ',p,'focus="100%" method="any" />'];ct(lt.prepVML(v),null,null,i)};if(l=n[0],w=n[n.length-1],l[0]>0&&n.unshift([0,l[1]]),w[0]<1&&n.push([1,w[1]]),t(n,function(n,t){b.test(n[1])?(s=yi(n[1]),h=s.get("rgb"),y=s.get("a")):(h=n[1],y=1);it.push(n[0]*100+"% "+h);t?(d=y,g=h):(k=y,nt=h)}),r==="fill")if(c==="gradient")r=e.x1||e[0]||0,n=e.y1||e[1]||0,l=e.x2||e[2]||0,e=e.y2||e[3]||0,p='angle="'+(90-et.atan((e-n)/(l-r))*180/ui)+'"',ut();else{var f=e.r,ft=f*2,ot=f*2,st=e.cx,ht=e.cy,a=i.radialReference,o,f=function(){a&&(o=u.getBBox(),st+=(a[0]-o.x)/o.width-.5,ht+=(a[1]-o.y)/o.height-.5,ft*=a[2]/o.width,ot*=a[2]/o.height);p='src="'+tt.global.VMLRadialGradientURL+'" size="'+ft+","+ot+'" origin="0.5,0.5" position="'+st+","+ht+'" color2="'+nt+'" ';ut()};u.added?f():u.onAdd=f;f=g}else f=h}else b.test(n)&&i.tagName!=="IMG"?(s=yi(n),v=["<",r,' opacity="',s.get("a"),'"/>'],ct(this.prepVML(v),null,null,i),f=s.get("rgb")):(f=i.getElementsByTagName(r),f.length&&(f[0].opacity=1,f[0].type="solid"),f=n);return f},prepVML:function(n){var t=this.isIE8,n=n.join("");return t?(n=n.replace("/>",' xmlns="urn:schemas-microsoft-com:vml" />'),n=n.indexOf('style="')===-1?n.replace("/>",' style="display:inline-block;behavior:url(#default#VML);" />'):n.replace('style="','style="display:inline-block;behavior:url(#default#VML);')):n=n.replace("<","<hcv:"),n},text:fi.prototype.html,path:function(n){var t={coordsize:"10 10"};return or(n)?t.d=n:yt(n)&&r(t,n),this.createElement("shape").attr(t)},circle:function(n,t,i){var r=this.symbol("circle");return yt(n)&&(i=n.r,t=n.y,n=n.x),r.isCircle=!0,r.r=i,r.attr({x:n,y:t})},g:function(n){var t;return n&&(t={className:"highcharts-"+n,"class":"highcharts-"+n}),this.createElement(fr).attr(t)},image:function(n,t,i,r,u){var f=this.createElement("img").attr({src:n});return arguments.length>1&&f.attr({x:t,y:i,width:r,height:u}),f},createElement:function(n){return n==="rect"?this.symbol(n):fi.prototype.createElement.call(this,n)},invertChild:function(n,i){var f=this,u=i.style,r=n.tagName==="IMG"&&n.style;v(n,{flip:"x",left:h(u.width)-(r?h(r.top):1),top:h(u.height)-(r?h(r.left):1),rotation:-90});t(n.childNodes,function(t){f.invertChild(t,n)})},symbols:{arc:function(n,t,i,r,u){var f=u.start,o=u.end,e=u.r||i||r,i=u.innerR,r=lt(f),s=wt(f),h=lt(o),c=wt(o);return o-f==0?["x"]:(f=["wa",n-e,t-e,n+e,t+e,n+e*r,t+e*s,n+e*h,t+e*c],u.open&&!i&&f.push("e","M",n,t),f.push("at",n-i,t-i,n+i,t+i,n+i*h,t+i*c,n+i*r,t+i*s,"x","e"),f.isArc=!0,f)},circle:function(n,t,i,r,u){return u&&(i=r=2*u.r),u&&u.isCircle&&(n-=i/2,t-=r/2),["wa",n,t,n+i,t+r,n+i,t+r/2,n+i,t+r/2,"e"]},rect:function(n,t,r,u,f){return fi.prototype.symbols[!i(f)||!f.r?"square":"callout"].call(0,n,t,r,u,f)}}},ut.VMLRenderer=ht=function(){this.init.apply(this,arguments)},ht.prototype=o(fi.prototype,kt),kr=ht),fi.prototype.measureSpanWidth=function(n,t){var i=s.createElement("span"),r;return r=s.createTextNode(n),i.appendChild(r),v(i,t),this.box.appendChild(i),r=i.offsetWidth,lr(i),r},bt&&(ut.CanVGRenderer=ht=function(){ai="http://www.w3.org/1999/xhtml"},ht.prototype.symbols={},pf=function(){function t(){for(var i=n.length,t=0;t<i;t++)n[t]();n=[]}var n=[];return{push:function(i,r){n.length===0&&df(r,t);n.push(i)}}}(),kr=ht),vr.prototype={addLabel:function(){var t=this.axis,h=t.options,v=t.chart,c=t.horiz,s=t.categories,y=t.names,f=this.pos,o=h.labels,l=t.tickPositions,c=c&&s&&!o.step&&!o.staggerLines&&!o.rotation&&v.plotWidth/l.length||!c&&(v.margin[3]||v.chartWidth*.33),w=f===l[0],b=f===l[l.length-1],a,y=s?n(s[f],y[f],f):f,s=this.label,p=l.info;t.isDatetimeAxis&&p&&(a=h.dateTimeLabelFormats[p.higherRanks[f]||p.unitName]);this.isFirst=w;this.isLast=b;h=t.labelFormatter.call({axis:t,chart:v,isFirst:w,isLast:b,dateTimeLabelFormat:a,value:t.isLog?pt(ni(y)):y});f=c&&{width:u(1,e(c-2*(o.padding||10)))+"px"};f=r(f,o.style);i(s)?s&&s.attr({text:h}).css(f):(a={align:t.labelAlign},gt(o.rotation)&&(a.rotation=o.rotation),c&&o.ellipsis&&(a._clipHeight=t.len/l.length),this.label=i(h)&&o.enabled?v.renderer.text(h,0,0,o.useHTML).attr(a).css(f).add(t.labelGroup):null)},getLabelSize:function(){var n=this.label,t=this.axis;return n?n.getBBox()[t.horiz?"height":"width"]:0},getLabelSides:function(){var n=this.label.getBBox(),t=this.axis,i=t.horiz,r=t.options.labels,n=i?n.width:n.height,t=i?r.x-n*{left:0,center:.5,right:1}[t.labelAlign]:0;return[t,i?n+t:n]},handleOverflow:function(n,t){var h=!0,i=this.axis,c=this.isFirst,v=this.isLast,r=i.horiz?t.x:t.y,y=i.reversed,p=i.tickPositions,s=this.getLabelSides(),l=s[0],s=s[1],e,o,u,a=this.label.line||0;if(e=i.labelEdge,o=i.justifyLabels&&(c||v),e[a]===f||r+l>e[a]?e[a]=r+s:o||(h=!1),o){e=(o=i.justifyToPlot)?i.pos:0;o=o?e+i.len:i.chart.chartWidth;do n+=c?1:-1,u=i.ticks[p[n]];while(p[n]&&(!u||u.label.line!==a));i=u&&u.label.xy&&u.label.xy.x+u.getLabelSides()[c?0:1];c&&!y||v&&y?r+l<e&&(r=e-l,u&&r+s>i&&(h=!1)):r+s>o&&(r=o-s,u&&r+l<i&&(h=!1));t.x=r}return h},getPosition:function(n,t,i,r){var u=this.axis,f=u.chart,e=r&&f.oldChartHeight||f.chartHeight;return{x:n?u.translate(t+i,null,null,r)+u.transB:u.left+u.offset+(u.opposite?(r&&f.oldChartWidth||f.chartWidth)-u.right-u.left:0),y:n?e-u.bottom+u.offset-(u.opposite?u.height:0):e-u.translate(t+i,null,null,r)-u.transB}},getLabelPosition:function(n,t,r,u,f,e,o,s){var h=this.axis,v=h.transA,y=h.reversed,c=h.staggerLines,l=h.chart.renderer.fontMetrics(f.style.fontSize).b,a=f.rotation,n=n+f.x-(e&&u?e*v*(y?-1:1):0),t=t+f.y-(e&&!u?e*v*(y?1:-1):0);return a&&h.side===2&&(t-=l-l*lt(a*ki)),i(f.y)||a||(t+=l-r.getBBox().height/2),c&&(r.line=o/(s||1)%c,t+=r.line*(h.labelOffset/c)),{x:n,y:t}},getMarkPath:function(n,t,i,r,u,f){return f.crispLine(["M",n,t,"L",n+(u?0:-i),t+(u?i:0)],r)},render:function(t,i,r){var u=this.axis,o=u.options,g=u.chart.renderer,y=u.horiz,h=this.type,p=this.label,a=this.pos,w=o.labels,s=this.gridLine,c=h?h+"Grid":"grid",l=h?h+"Tick":"tick",b=o[c+"LineWidth"],ut=o[c+"LineColor"],it=o[c+"LineDashStyle"],v=o[l+"Length"],c=o[l+"Width"]||0,ft=o[l+"Color"],et=o[l+"Position"],l=this.mark,nt=w.step,k=!0,tt=u.tickmarkOffset,e=this.getPosition(y,a,tt,i),d=e.x,e=e.y,rt=y&&d===u.pos+u.len||!y&&e===u.pos?-1:1;this.isActive=!0;b&&(a=u.getPlotLinePath(a+tt,b*rt,i,!0),s===f&&(s={stroke:ut,"stroke-width":b},it&&(s.dashstyle=it),h||(s.zIndex=1),i&&(s.opacity=0),this.gridLine=s=b?g.path(a).attr(s).add(u.gridGroup):null),!i&&s&&a&&s[this.isNew?"attr":"animate"]({d:a,opacity:r}));c&&v&&(et==="inside"&&(v=-v),u.opposite&&(v=-v),h=this.getMarkPath(d,e,v,c*rt,y,g),l?l.animate({d:h,opacity:r}):this.mark=g.path(h).attr({stroke:ft,"stroke-width":c,opacity:r}).add(u.axisGroup));p&&!isNaN(d)&&(p.xy=e=this.getLabelPosition(d,e,p,y,w,tt,t,nt),this.isFirst&&!this.isLast&&!n(o.showFirstLabel,1)||this.isLast&&!this.isFirst&&!n(o.showLastLabel,1)?k=!1:!u.isRadial&&!w.step&&!w.rotation&&!i&&r!==0&&(k=this.handleOverflow(t,e)),nt&&t%nt&&(k=!1),k&&!isNaN(e.y)?(e.opacity=r,p[this.isNew?"attr":"animate"](e),this.isNew=!1):p.attr("y",-9999))},destroy:function(){cr(this,this.axis)}},ut.PlotLineOrBand=function(n,t){this.axis=n;t&&(this.options=t,this.id=t.id)},ut.PlotLineOrBand.prototype={render:function(){var c=this,r=c.axis,v=r.horiz,b=(r.pointRange||0)/2,f=c.options,e=f.label,a=c.label,d=f.width,p=f.to,w=f.from,s=i(w)&&i(p),g=f.value,it=f.dashStyle,y=c.svgElem,t=[],rt,nt=f.color,k=f.zIndex,tt=f.events,h={},ut=r.chart.renderer;if(r.isLog&&(w=wi(w),p=wi(p),g=wi(g)),d)(t=r.getPlotLinePath(g,d),h={stroke:nt,"stroke-width":d},it)&&(h.dashstyle=it);else if(s)w=u(w,r.min-b),p=l(p,r.max+b),t=r.getPlotBandPath(w,p,f),nt&&(h.fill=nt),f.borderWidth&&(h.stroke=f.borderColor,h["stroke-width"]=f.borderWidth);else return;if(i(k)&&(h.zIndex=k),y)t?y.animate({d:t},null,y.onGetPath):(y.hide(),y.onGetPath=function(){y.show()},a)&&(c.label=a=a.destroy());else if(t&&t.length&&(c.svgElem=y=ut.path(t).attr(h).add(),tt))for(rt in b=function(n){y.on(n,function(t){tt[n].apply(c,[t])})},tt)b(rt);return e&&i(e.text)&&t&&t.length&&r.width>0&&r.height>0?(e=o({align:v&&s&&"center",x:v?!s&&4:10,verticalAlign:!v&&s&&"middle",y:v?s?16:10:s?6:-4,rotation:v&&!s&&90},e),a||(h={align:e.textAlign||e.align,rotation:e.rotation},i(k)&&(h.zIndex=k),c.label=a=ut.text(e.text,0,0,e.useHTML).attr(h).css(e.style).add()),r=[t[1],t[4],n(t[6],t[1])],t=[t[2],t[5],n(t[7],t[2])],v=hr(r),s=hr(t),a.align(e,!1,{x:v,y:s,width:bi(r)-v,height:bi(t)-s}),a.show()):a&&a.hide(),c},destroy:function(){ti(this.axis.plotLinesAndBands,this);delete this.axis;cr(this)}},ri.prototype={defaultOptions:{dateTimeLabelFormats:{millisecond:"%H:%M:%S.%L",second:"%H:%M:%S",minute:"%H:%M",hour:"%H:%M",day:"%e. %b",week:"%e. %b",month:"%b '%y",year:"%Y"},endOnTick:!1,gridLineColor:"#C0C0C0",labels:b,lineColor:"#C0D0E0",lineWidth:1,minPadding:.01,maxPadding:.01,minorGridLineColor:"#E0E0E0",minorGridLineWidth:1,minorTickColor:"#A0A0A0",minorTickLength:2,minorTickPosition:"outside",startOfWeek:1,startOnTick:!1,tickColor:"#C0D0E0",tickLength:10,tickmarkPlacement:"between",tickPixelInterval:100,tickPosition:"outside",tickWidth:1,title:{align:"middle",style:{color:"#707070"}},type:"linear"},defaultYAxisOptions:{endOnTick:!0,gridLineWidth:1,tickPixelInterval:72,showLastLabel:!0,labels:{x:-8,y:3},lineWidth:0,maxPadding:.05,minPadding:.05,startOnTick:!0,tickWidth:0,title:{rotation:270,text:"Values"},stackLabels:{enabled:!1,formatter:function(){return tr(this.total,-1)},style:b.style}},defaultLeftAxisOptions:{labels:{x:-15,y:null},title:{rotation:270}},defaultRightAxisOptions:{labels:{x:15,y:null},title:{rotation:90}},defaultBottomAxisOptions:{labels:{x:0,y:20},title:{rotation:0}},defaultTopAxisOptions:{labels:{x:0,y:-15},title:{rotation:0}},init:function(t,r){var e=r.isX,o,s,u;this.horiz=t.inverted?!e:e;this.coll=(this.isXAxis=e)?"xAxis":"yAxis";this.opposite=r.opposite;this.side=r.side||(this.horiz?this.opposite?0:2:this.opposite?1:3);this.setOptions(r);u=this.options;o=u.type;this.labelFormatter=u.labels.formatter||this.defaultLabelFormatter;this.userOptions=r;this.minPixelPadding=0;this.chart=t;this.reversed=u.reversed;this.zoomEnabled=u.zoomEnabled!==!1;this.categories=u.categories||o==="category";this.names=[];this.isLog=o==="logarithmic";this.isDatetimeAxis=o==="datetime";this.isLinked=i(u.linkedTo);this.tickmarkOffset=this.categories&&u.tickmarkPlacement==="between"?.5:0;this.ticks={};this.labelEdge=[];this.minorTicks={};this.plotLinesAndBands=[];this.alternateBands={};this.len=0;this.minRange=this.userMinRange=u.minRange||u.maxZoom;this.range=u.range;this.offset=u.offset||0;this.stacks={};this.oldStacks={};this.min=this.max=null;this.crosshair=n(u.crosshair,oi(t.options.tooltip.crosshairs)[e?0:1],!1);u=this.options.events;gi(this,t.axes)===-1&&(e&&!this.isColorAxis?t.axes.splice(t.xAxis.length,0,this):t.axes.push(this),t[this.coll].push(this));this.series=this.series||[];t.inverted&&e&&this.reversed===f&&(this.reversed=!0);this.removePlotLine=this.removePlotBand=this.removePlotBandOrLine;for(s in u)k(this,s,u[s]);this.isLog&&(this.val2lin=wi,this.lin2val=ni)},setOptions:function(n){this.options=o(this.defaultOptions,this.isXAxis?{}:this.defaultYAxisOptions,[this.defaultTopAxisOptions,this.defaultRightAxisOptions,this.defaultBottomAxisOptions,this.defaultLeftAxisOptions][this.side],o(tt[this.coll],n))},defaultLabelFormatter:function(){var t=this.axis,i=this.value,u=t.categories,o=this.dateTimeLabelFormat,e=tt.lang.numericSymbols,r=e&&e.length,n,s=t.options.labels.format,t=t.isLog?i:t.tickInterval;if(s)n=rr(s,this);else if(u)n=i;else if(o)n=eu(o,i);else if(r&&t>=1e3)for(;r--&&n===f;)u=Math.pow(1e3,r+1),t>=u&&e[r]!==null&&(n=tr(i/u,-1)+e[r]);return n===f&&(n=y(i)>=1e4?tr(i,0):tr(i,-1,f,"")),n},getSeriesExtremes:function(){var r=this,f=r.chart;r.hasVisibleSeries=!1;r.dataMin=r.dataMax=null;r.buildStacks&&r.buildStacks();t(r.series,function(t){var e,o;(t.visible||!f.options.chart.ignoreHiddenSeries)&&(e=t.options.threshold,r.hasVisibleSeries=!0,r.isLog&&e<=0&&(e=null),r.isXAxis?(e=t.xData,e.length)&&(r.dataMin=l(n(r.dataMin,e[0]),hr(e)),r.dataMax=u(n(r.dataMax,e[0]),bi(e))):(t.getExtremes(),o=t.dataMax,t=t.dataMin,i(t)&&i(o)&&(r.dataMin=l(n(r.dataMin,t),t),r.dataMax=u(n(r.dataMax,o),o)),i(e)&&(r.dataMin>=e?(r.dataMin=e,r.ignoreMinPadding=!0):r.dataMax<e&&(r.dataMax=e,r.ignoreMaxPadding=!0))))})},translate:function(n,t,i,r,u,f){var e=1,s=0,o=r?this.oldTransA:this.transA,r=r?this.oldMin:this.min,h=this.minPixelPadding,u=(this.options.ordinal||this.isLog&&u)&&this.lin2val;return o||(o=this.transA),i&&(e*=-1,s=this.len),this.reversed&&(e*=-1,s-=e*(this.sector||this.len)),t?(n=n*e+s,n-=h,n=n/o+r,u&&(n=this.lin2val(n))):(u&&(n=this.val2lin(n)),f==="between"&&(f=.5),n=e*(n-r)*o+s+e*h+(gt(f)?o*f*this.pointRange:0)),n},toPixels:function(n,t){return this.translate(n,!1,!this.horiz,null,!0)+(t?0:this.pos)},toValue:function(n,t){return this.translate(n-(t?0:this.pos),!0,!this.horiz,null,!0)},getPlotLinePath:function(t,i,r,u,f){var s=this.chart,c=this.left,l=this.top,o,a,v=r&&s.oldChartHeight||s.chartHeight,y=r&&s.oldChartWidth||s.chartWidth,h;return o=this.transB,f=n(f,this.translate(t,null,null,r)),t=r=e(f+o),o=a=e(v-f-o),isNaN(f)?h=!0:this.horiz?(o=l,a=v-this.bottom,t<c||t>c+this.width)&&(h=!0):(t=c,r=y-this.right,o<l||o>l+this.height)&&(h=!0),h&&!u?null:s.renderer.crispLine(["M",t,o,"L",r,a],i||1)},getLinearTickPositions:function(n,t,i){var r,f=pt(ft(t/n)*n),e=pt(ur(i/n)*n),u=[];if(t===i&&gt(t))return[t];for(t=f;t<=e;){if(u.push(t),t=pt(t+n),t===r)break;r=t}return u},getMinorTickPositions:function(){var i=this.options,n=this.tickPositions,r=this.minorTickInterval,t=[],u;if(this.isLog)for(u=n.length,i=1;i<u;i++)t=t.concat(this.getLogTickPositions(r,n[i-1],n[i],!0));else if(this.isDatetimeAxis&&i.minorTickInterval==="auto")t=t.concat(this.getTimeTicks(this.normalizeTimeTickInterval(r),this.min,this.max,i.startOfWeek)),t[0]<this.min&&t.shift();else for(n=this.min+(n[0]-this.min)%r;n<=this.max;n+=r)t.push(n);return t},adjustForMinRange:function(){var s=this.options,r=this.min,u=this.max,e,y=this.dataMax-this.dataMin>=this.minRange,c,h,v,a,p,o;this.isXAxis&&this.minRange===f&&!this.isLog&&(i(s.min)||i(s.max)?this.minRange=null:(t(this.series,function(n){for(a=n.xData,h=p=n.xIncrement?1:a.length-1;h>0;h--)(v=a[h]-a[h-1],c===f||v<c)&&(c=v)}),this.minRange=l(c*5,this.dataMax-this.dataMin)));u-r<this.minRange&&(o=this.minRange,e=(o-u+r)/2,e=[r-e,n(s.min,r-e)],y&&(e[2]=this.dataMin),r=bi(e),u=[r+o,n(s.max,r+o)],y&&(u[2]=this.dataMax),u=hr(u),u-r<o&&(e[0]=u-o,e[1]=n(s.min,u-o),r=bi(e)));this.min=r;this.max=u},setAxisTranslation:function(n){var r=this,c=r.max-r.min,h=r.axisPointRange||0,f,o=0,s=0,e=r.linkedParent,v=!!r.categories,a=r.transA;(r.isXAxis||v||h)&&(e?(o=e.minPointOffset,s=e.pointRangePadding):t(r.series,function(n){var t=v?1:r.isXAxis?n.pointRange:r.axisPointRange||0,a=n.options.pointPlacement,e=n.closestPointRange;t>c&&(t=0);h=u(h,t);o=u(o,nr(a)?0:t/2);s=u(s,a==="on"?0:t);!n.noSharedTooltip&&i(e)&&(f=i(f)?l(f,e):e)}),e=r.ordinalSlope&&f?r.ordinalSlope/f:1,r.minPointOffset=o*=e,r.pointRangePadding=s*=e,r.pointRange=l(h,c),r.closestPointRange=f);n&&(r.oldTransA=a);r.translationSlope=r.transA=a=r.len/(c+s||1);r.transB=r.horiz?r.left:r.bottom;r.minPixelPadding=a*o},setTickPositions:function(r){var f=this,o=f.chart,e=f.options,h=f.isLog,c=f.isDatetimeAxis,nt=f.isXAxis,s=f.isLinked,w=f.options.tickPositioner,b=e.maxPadding,k=e.minPadding,a=e.tickInterval,d=e.minTickInterval,v=e.tickPixelInterval,g,p=f.categories;s?(f.linkedParent=o[f.coll][e.linkedTo],o=f.linkedParent.getExtremes(),f.min=n(o.min,o.dataMin),f.max=n(o.max,o.dataMax),e.type!==f.linkedParent.options.type&&si(11,1)):(f.min=n(f.userMin,e.min,f.dataMin),f.max=n(f.userMax,e.max,f.dataMax));h&&(!r&&l(f.min,n(f.dataMin,f.min))<=0&&si(10,1),f.min=pt(wi(f.min)),f.max=pt(wi(f.max)));f.range&&i(f.max)&&(f.userMin=f.min=u(f.min,f.max-f.range),f.userMax=f.max,f.range=null);f.beforePadding&&f.beforePadding();f.adjustForMinRange();p||f.axisPointRange||f.usePercentage||s||!i(f.min)||!i(f.max)||!(o=f.max-f.min)||(!i(e.min)&&!i(f.userMin)&&k&&(f.dataMin<0||!f.ignoreMinPadding)&&(f.min-=o*k),!i(e.max)&&!i(f.userMax)&&b&&(f.dataMax>0||!f.ignoreMaxPadding)&&(f.max+=o*b));gt(e.floor)&&(f.min=u(f.min,e.floor));gt(e.ceiling)&&(f.max=l(f.max,e.ceiling));f.min===f.max||f.min===void 0||f.max===void 0?f.tickInterval=1:s&&!a&&v===f.linkedParent.options.tickPixelInterval?f.tickInterval=f.linkedParent.tickInterval:(f.tickInterval=n(a,p?1:(f.max-f.min)*v/u(f.len,v)),!i(a)&&f.len<v&&!this.isRadial&&!this.isLog&&!p&&e.startOnTick&&e.endOnTick&&(g=!0,f.tickInterval/=4));nt&&!r&&t(f.series,function(n){n.processData(f.min!==f.oldMin||f.max!==f.oldMax)});f.setAxisTranslation(!0);f.beforeSetTickPositions&&f.beforeSetTickPositions();f.postProcessTickInterval&&(f.tickInterval=f.postProcessTickInterval(f.tickInterval));f.pointRange&&(f.tickInterval=u(f.pointRange,f.tickInterval));!a&&f.tickInterval<d&&(f.tickInterval=d);c||h||a||(f.tickInterval=vu(f.tickInterval,null,au(f.tickInterval),e));f.minorTickInterval=e.minorTickInterval==="auto"&&f.tickInterval?f.tickInterval/5:e.minorTickInterval;f.tickPositions=r=e.tickPositions?[].concat(e.tickPositions):w&&w.apply(f,[f.min,f.max]);r||(!f.ordinalPositions&&(f.max-f.min)/f.tickInterval>u(2*f.len,200)&&si(19,!0),r=c?f.getTimeTicks(f.normalizeTimeTickInterval(f.tickInterval,e.units),f.min,f.max,e.startOfWeek,f.ordinalPositions,f.closestPointRange,!0):h?f.getLogTickPositions(f.tickInterval,f.min,f.max):f.getLinearTickPositions(f.tickInterval,f.min,f.max),g&&r.splice(1,r.length-2),f.tickPositions=r);s||(h=r[0],c=r[r.length-1],s=f.minPointOffset||0,e.startOnTick?f.min=h:f.min-s>h&&r.shift(),e.endOnTick?f.max=c:f.max+s<c&&r.pop(),r.length===1&&(e=y(f.max)>1e13?1:.001,f.min-=e,f.max+=e))},setMaxTicks:function(){var i=this.chart,n=i.maxTicks||{},t=this.tickPositions,r=this._maxTicksKey=[this.coll,this.pos,this.len].join("-");!this.isLinked&&!this.isDatetimeAxis&&t&&t.length>(n[r]||0)&&this.options.alignTicks!==!1&&(n[r]=t.length);i.maxTicks=n},adjustTickAmount:function(){var n=this._maxTicksKey,t=this.tickPositions,r=this.chart.maxTicks,u,e;if(r&&r[n]&&!this.isDatetimeAxis&&!this.categories&&!this.isLinked&&this.options.alignTicks!==!1&&this.min!==f){if(u=this.tickAmount,e=t.length,this.tickAmount=n=r[n],e<n){for(;t.length<n;)t.push(pt(t[t.length-1]+this.tickInterval));this.transA*=(e-1)/(n-1);this.max=t[t.length-1]}i(u)&&n!==u&&(this.isDirty=!0)}},setScale:function(){var n=this.stacks,i,r,f,u;if(this.oldMin=this.min,this.oldMax=this.max,this.oldAxisLength=this.len,this.setAxisSize(),u=this.len!==this.oldAxisLength,t(this.series,function(n){(n.isDirtyData||n.isDirty||n.xAxis.isDirty)&&(f=!0)}),u||f||this.isLinked||this.forceRedraw||this.userMin!==this.oldUserMin||this.userMax!==this.oldUserMax){if(!this.isXAxis)for(i in n)for(r in n[i])n[i][r].total=null,n[i][r].cum=0;this.forceRedraw=!1;this.getSeriesExtremes();this.setTickPositions();this.oldUserMin=this.userMin;this.oldUserMax=this.userMax;this.isDirty||(this.isDirty=u||this.min!==this.oldMin||this.max!==this.oldMax)}else if(!this.isXAxis){this.oldStacks&&(n=this.stacks=this.oldStacks);for(i in n)for(r in n[i])n[i][r].cum=n[i][r].total}this.setMaxTicks()},setExtremes:function(t,i,u,f,e){var o=this,s=o.chart,u=n(u,!0),e=r(e,{min:t,max:i});p(o,"setExtremes",e,function(){o.userMin=t;o.userMax=i;o.eventArgs=e;o.isDirtyExtremes=!0;u&&s.redraw(f)})},zoom:function(t,r){var e=this.dataMin,o=this.dataMax,s=this.options;return this.allowZoomOutside||(i(e)&&t<=l(e,n(s.min,e))&&(t=f),i(o)&&r>=u(o,n(s.max,o))&&(r=f)),this.displayBtn=t!==f||r!==f,this.setExtremes(t,r,!1,f,{trigger:"zoom"}),!0},setAxisSize:function(){var i=this.chart,t=this.options,e=t.offsetLeft||0,s=this.horiz,o=n(t.width,i.plotWidth-e+(t.offsetRight||0)),r=n(t.height,i.plotHeight),f=n(t.top,i.plotTop),t=n(t.left,i.plotLeft+e),e=/%$/;e.test(r)&&(r=parseInt(r,10)/100*i.plotHeight);e.test(f)&&(f=parseInt(f,10)/100*i.plotHeight+i.plotTop);this.left=t;this.top=f;this.width=o;this.height=r;this.bottom=i.chartHeight-r-f;this.right=i.chartWidth-o-t;this.len=u(s?o:r,0);this.pos=s?t:f},getExtremes:function(){var n=this.isLog;return{min:n?pt(ni(this.min)):this.min,max:n?pt(ni(this.max)):this.max,dataMin:this.dataMin,dataMax:this.dataMax,userMin:this.userMin,userMax:this.userMax}},getThreshold:function(n){var t=this.isLog,i=t?ni(this.min):this.min,t=t?ni(this.max):this.max;return i>n||n===null?n=i:t<n&&(n=t),this.translate(n,0,1,0,1)},autoLabelAlign:function(t){return t=(n(t,0)-this.side*90+720)%360,t>15&&t<165?"right":t>195&&t<345?"left":"center"},getOffset:function(){var r=this,l=r.chart,w=l.renderer,c=r.options,b=r.tickPositions,h=r.ticks,nt=r.horiz,s=r.side,ut=l.inverted?[1,0,3,2][s]:s,a,et=0,ot,st=0,o=c.title,e=c.labels,y=0,tt=l.axisOffset,ht=l.clipOffset,it=[-1,1,1,-1][s],p,k=1,ct=n(e.maxStaggerLines,5),rt,v,d,g,lt=s===2?w.fontMetrics(e.style.fontSize).b:0;if(r.hasData=a=r.hasVisibleSeries||i(r.min)&&i(r.max)&&!!b,r.showAxis=l=a||n(c.showEmpty,!0),r.staggerLines=r.horiz&&e.staggerLines,r.axisGroup||(r.gridGroup=w.g("grid").attr({zIndex:c.gridZIndex||1}).add(),r.axisGroup=w.g("axis").attr({zIndex:c.zIndex||2}).add(),r.labelGroup=w.g("axis-labels").attr({zIndex:e.zIndex||7}).addClass("highcharts-"+r.coll.toLowerCase()+"-labels").add()),a||r.isLinked){if(r.labelAlign=n(e.align||r.autoLabelAlign(e.rotation)),t(b,function(n){h[n]?h[n].addLabel():h[n]=new vr(r,n)}),r.horiz&&!r.staggerLines&&ct&&!e.rotation){for(p=r.reversed?[].concat(b).reverse():b;k<ct;){for(a=[],rt=!1,e=0;e<p.length;e++)v=p[e],d=(d=h[v].label&&h[v].label.getBBox())?d.width:0,g=e%k,d&&(v=r.translate(v),a[g]!==f&&v<a[g]&&(rt=!0),a[g]=v+d);if(rt)k++;else break}k>1&&(r.staggerLines=k)}t(b,function(n){(s===0||s===2||{1:"left",3:"right"}[s]===r.labelAlign)&&(y=u(h[n].getLabelSize(),y))});r.staggerLines&&(y*=r.staggerLines,r.labelOffset=y)}else for(p in h)h[p].destroy(),delete h[p];o&&o.text&&o.enabled!==!1&&(r.axisTitle||(r.axisTitle=w.text(o.text,0,0,o.useHTML).attr({zIndex:7,rotation:o.rotation||0,align:o.textAlign||{low:"left",middle:"center",high:"right"}[o.align]}).addClass("highcharts-"+this.coll.toLowerCase()+"-title").css(o.style).add(r.axisGroup),r.axisTitle.isNew=!0),l&&(et=r.axisTitle.getBBox()[nt?"height":"width"],st=n(o.margin,nt?5:10),ot=o.offset),r.axisTitle[l?"show":"hide"]());r.offset=it*n(c.offset,tt[s]);r.axisTitleMargin=n(ot,y+st+(y&&it*c.labels[nt?"y":"x"]-lt));tt[s]=u(tt[s],r.axisTitleMargin+et+it*r.offset);ht[ut]=u(ht[ut],ft(c.lineWidth/2)*2)},getLinePath:function(n){var i=this.chart,u=this.opposite,t=this.offset,r=this.horiz,f=this.left+(u?this.width:0)+t,t=i.chartHeight-this.bottom-(u?this.height:0)+t;return u&&(n*=-1),i.renderer.crispLine(["M",r?this.left:f,r?t:this.top,"L",r?i.chartWidth-this.right:f,r?t:i.chartHeight-this.bottom],n)},getTitlePosition:function(){var n=this.horiz,i=this.left,e=this.top,t=this.len,r=this.options.title,u=n?i:e,f=this.opposite,o=this.offset,s=h(r.style.fontSize||12),t={low:u+(n?0:t),middle:u+t/2,high:u+(n?t:0)}[r.align],i=(n?e+this.height:i)+(n?1:-1)*(f?-1:1)*this.axisTitleMargin+(this.side===2?s:0);return{x:n?t:i+(f?this.width:0)+o+(r.x||0),y:n?i-(f?this.height:0)+o:t+(r.y||0)}},render:function(){var n=this,h=n.horiz,b=n.reversed,a=n.chart,et=a.renderer,e=n.options,k=n.isLog,d=n.isLinked,c=n.tickPositions,o,l=n.axisTitle,r=n.ticks,s=n.minorTicks,u=n.alternateBands,g=e.stackLabels,nt=e.alternateGridColor,v=n.tickmarkOffset,y=e.lineWidth,tt=a.hasRendered&&i(n.oldMin)&&!isNaN(n.oldMin),ot=n.hasData,it=n.showAxis,p,rt=e.labels.overflow,ft=n.justifyLabels=h&&rt!==!1,w;n.labelEdge.length=0;n.justifyToPlot=rt==="justify";t([r,s,u],function(n){for(var t in n)n[t].isActive=!1});(ot||d)&&((n.minorTickInterval&&!n.categories&&t(n.getMinorTickPositions(),function(t){s[t]||(s[t]=new vr(n,t,"minor"));tt&&s[t].isNew&&s[t].render(null,!0);s[t].render(null,!1,1)}),c.length&&(o=c.slice(),(h&&b||!h&&!b)&&o.reverse(),ft&&(o=o.slice(1).concat([o[0]])),t(o,function(t,i){ft&&(i=i===o.length-1?0:i+1);(!d||t>=n.min&&t<=n.max)&&(r[t]||(r[t]=new vr(n,t)),tt&&r[t].isNew&&r[t].render(i,!0,.1),r[t].render(i,!1,1))}),v&&n.min===0&&(r[-1]||(r[-1]=new vr(n,-1,null,!0)),r[-1].render(-1))),nt&&t(c,function(t,i){i%2==0&&t<n.max&&(u[t]||(u[t]=new ut.PlotLineOrBand(n)),p=t+v,w=c[i+1]!==f?c[i+1]+v:n.max,u[t].options={from:k?ni(p):p,to:k?ni(w):w,color:nt},u[t].render(),u[t].isActive=!0)}),n._addedPlotLB)||(t((e.plotLines||[]).concat(e.plotBands||[]),function(t){n.addPlotBandOrLine(t)}),n._addedPlotLB=!0));t([r,s,u],function(n){var t,i,r=[],f=vi?vi.duration||500:0,e=function(){for(i=r.length;i--;)n[r[i]]&&!n[r[i]].isActive&&(n[r[i]].destroy(),delete n[r[i]])};for(t in n)n[t].isActive||(n[t].render(t,!1,0),n[t].isActive=!1,r.push(t));n===u||!a.hasRendered||!f?e():f&&setTimeout(e,f)});y&&(h=n.getLinePath(y),n.axisLine?n.axisLine.animate({d:h}):n.axisLine=et.path(h).attr({stroke:e.lineColor,"stroke-width":y,zIndex:7}).add(n.axisGroup),n.axisLine[it?"show":"hide"]());l&&it&&(l[l.isNew?"attr":"animate"](n.getTitlePosition()),l.isNew=!1);g&&g.enabled&&n.renderStackTotals();n.isDirty=!1},redraw:function(){var n=this.chart.pointer;n&&n.reset(!0);this.render();t(this.plotLinesAndBands,function(n){n.render()});t(this.series,function(n){n.isDirty=!0})},destroy:function(n){var i=this,r=i.stacks,u,f=i.plotLinesAndBands;n||st(i);for(u in r)cr(r[u]),r[u]=null;for(t([i.ticks,i.minorTicks,i.alternateBands],function(n){cr(n)}),n=f.length;n--;)f[n].destroy();t("stackTotalGroup,axisLine,axisTitle,axisGroup,cross,gridGroup,labelGroup".split(","),function(n){i[n]&&(i[n]=i[n].destroy())});this.cross&&this.cross.destroy()},drawCrosshair:function(t,r){if(this.crosshair)if((i(r)||!n(this.crosshair.snap,!0))===!1)this.hideCrosshair();else{var u,f=this.crosshair,e=f.animation;n(f.snap,!0)?i(r)&&(u=this.chart.inverted!=this.horiz?r.plotX:this.len-r.plotY):u=this.horiz?t.chartX-this.pos:this.len-t.chartY+this.pos;u=this.isRadial?this.getPlotLinePath(this.isXAxis?r.x:n(r.stackY,r.y)):this.getPlotLinePath(null,null,null,null,u);u===null?this.hideCrosshair():this.cross?this.cross.attr({visibility:"visible"})[e?"animate":"attr"]({d:u},e):(e={"stroke-width":f.width||1,stroke:f.color||"#C0C0C0",zIndex:f.zIndex||2},f.dashStyle&&(e.dashstyle=f.dashStyle),this.cross=this.chart.renderer.path(u).attr(e).add())}},hideCrosshair:function(){this.cross&&this.cross.hide()}},r(ri.prototype,{getPlotBandPath:function(n,t){var i=this.getPlotLinePath(t),r=this.getPlotLinePath(n);return r&&i?r.push(i[4],i[5],i[1],i[2]):r=null,r},addPlotBand:function(n){this.addPlotBandOrLine(n,"plotBands")},addPlotLine:function(n){this.addPlotBandOrLine(n,"plotLines")},addPlotBandOrLine:function(n,t){var i=new ut.PlotLineOrBand(this,n).render(),r=this.userOptions;return i&&(t&&(r[t]=r[t]||[],r[t].push(n)),this.plotLinesAndBands.push(i)),i},removePlotBandOrLine:function(n){for(var r=this.plotLinesAndBands,u=this.options,f=this.userOptions,i=r.length;i--;)r[i].id===n&&r[i].destroy();t([u.plotLines||[],f.plotLines||[],u.plotBands||[],f.plotBands||[]],function(t){for(i=t.length;i--;)t[i].id===n&&ti(t,t[i])})}}),ri.prototype.getTimeTicks=function(u,f,e,o){var v=[],y={},p=tt.global.useUTC,a,s=new Date(f-pr),h=u.unitRange,l=u.count;if(i(f)){h>=c.second&&(s.setMilliseconds(0),s.setSeconds(h>=c.minute?0:l*ft(s.getSeconds()/l)));h>=c.minute&&s[lf](h>=c.hour?0:l*ft(s[bu]()/l));h>=c.hour&&s[af](h>=c.day?0:l*ft(s[ku]()/l));h>=c.day&&s[gu](h>=c.month?1:l*ft(s[nu]()/l));h>=c.month&&(s[vf](h>=c.year?0:l*ft(s[su]()/l)),a=s[hu]());h>=c.year&&(a-=a%l,s[yf](a));h===c.week&&s[gu](s[nu]()-s[du]()+n(o,1));f=1;pr&&(s=new Date(s.getTime()+pr));a=s[hu]();for(var o=s.getTime(),w=s[su](),b=s[nu](),k=p?pr:(864e5+s.getTimezoneOffset()*6e4)%864e5;o<e;)v.push(o),h===c.year?o=ou(a+f*l,0):h===c.month?o=ou(a,w+f*l):!p&&(h===c.day||h===c.week)?o=ou(a,w,b+f*l*(h===c.day?1:7)):o+=h*l,f++;v.push(o);t(nf(v,function(n){return h<=c.hour&&n%c.day===k}),function(n){y[n]="day"})}return v.info=r(u,{higherRanks:y,totalRange:h*l}),v},ri.prototype.normalizeTimeTickInterval=function(n,t){for(var i=t||[["millisecond",[1,2,5,10,20,25,50,100,200,500]],["second",[1,2,5,10,15,30]],["minute",[1,2,5,10,15,30]],["hour",[1,2,3,4,6,8,12]],["day",[1,2]],["week",[1,2]],["month",[1,2,3,4,6]],["year",null]],r=i[i.length-1],f=c[r[0]],o=r[1],e=0;e<i.length;e++)if(r=i[e],f=c[r[0]],o=r[1],i[e+1]&&n<=(f*o[o.length-1]+c[i[e+1][0]])/2)break;return f===c.year&&n<5*f&&(o=[1,2,5]),i=vu(n/f,o,r[0]==="year"?u(au(n/f),1):1),{unitRange:f,count:i,unitName:r[0]}},ri.prototype.getLogTickPositions=function(t,i,r,u){var o=this.options,f=this.len,s=[],h,v,l,c,a;if(u||(this._minorAutoInterval=null),t>=.5)t=e(t),s=this.getLinearTickPositions(t,i,r);else if(t>=.08)for(f=ft(i),o=t>.3?[1,2,4]:t>.15?[1,2,4,6,8]:[1,2,3,4,5,6,7,8,9];f<r+1&&!a;f++)for(v=o.length,h=0;h<v&&!a;h++)l=wi(ni(f)*o[h]),l>i&&(!u||c<=r)&&s.push(c),c>r&&(a=!0),c=l;else(i=ni(i),r=ni(r),t=o[u?"minorTickInterval":"tickInterval"],t=n(t==="auto"?null:t,this._minorAutoInterval,(r-i)*(o.tickPixelInterval/(u?5:1))/((u?f/this.tickPositions.length:f)||1)),t=vu(t,null,au(t)),s=wr(this.getLinearTickPositions(t,i,r),wi),u)||(this._minorAutoInterval=t/5);return u||(this.tickInterval=t),s},tf=ut.Tooltip=function(){this.init.apply(this,arguments)},tf.prototype={init:function(n,t){var r=t.borderWidth,i=t.style,u=h(i.padding);this.chart=n;this.options=t;this.crosshairs=[];this.now={x:0,y:0};this.isHidden=!0;this.label=n.renderer.label("",0,0,t.shape||"callout",null,null,t.useHTML,null,"tooltip").attr({padding:u,fill:t.backgroundColor,"stroke-width":r,r:t.borderRadius,zIndex:8}).css(i).css({padding:0}).add().attr({y:-9999});bt||this.label.shadow(t.shadow);this.shared=t.shared},destroy:function(){this.label&&(this.label=this.label.destroy());clearTimeout(this.hideTimer);clearTimeout(this.tooltipTimeout)},move:function(n,t,i,u){var e=this,o=e.now,s=e.options.animation!==!1&&!e.isHidden,h=e.followPointer||e.len>1;r(o,{x:s?(2*o.x+n)/3:n,y:s?(o.y+t)/2:t,anchorX:h?f:s?(2*o.anchorX+i)/3:i,anchorY:h?f:s?(o.anchorY+u)/2:u});e.label.attr(o);s&&(y(n-o.x)>1||y(t-o.y)>1)&&(clearTimeout(this.tooltipTimeout),this.tooltipTimeout=setTimeout(function(){e&&e.move(n,t,i,u)},32))},hide:function(){var r=this,i;clearTimeout(this.hideTimer);this.isHidden||(i=this.chart.hoverPoints,this.hideTimer=setTimeout(function(){r.label.fadeOut();r.isHidden=!0},n(this.options.hideDelay,500)),i&&t(i,function(n){n.setState()}),this.chart.hoverPoints=null)},getAnchor:function(n,i){var u,r=this.chart,o=r.inverted,c=r.plotTop,s=0,h=0,l,n=oi(n);return u=n[0].tooltipPos,this.followPointer&&i&&(i.chartX===f&&(i=r.pointer.normalize(i)),u=[i.chartX-r.plotLeft,i.chartY-c]),u||(t(n,function(n){l=n.series.yAxis;s+=n.plotX;h+=(n.plotLow?(n.plotLow+n.plotHigh)/2:n.plotY)+(!o&&l?l.top-c:0)}),s/=n.length,h/=n.length,u=[o?r.plotWidth-h:s,this.shared&&!o&&n.length>1&&i?i.chartY-c:o?r.plotHeight-s:h]),wr(u,e)},getPosition:function(n,t,i){var u=this.chart,f=this.distance,r={},e,o=["y",u.chartHeight,t,i.plotY+u.plotTop],s=["x",u.chartWidth,n,i.plotX+u.plotLeft],l=i.ttBelow||u.inverted&&!i.negative||!u.inverted&&i.negative,a=function(n,t,i,u){var e=i<u-f,t=u+f+i<t,i=u-f-i;if(u+=f,l&&t)r[n]=u;else if(!l&&e)r[n]=i;else if(e)r[n]=i;else if(t)r[n]=u;else return!1},v=function(n,t,i,u){if(u<f||u>t-f)return!1;r[n]=u<i/2?1:u>t-i/2?t-i-2:u-i/2},h=function(n){var t=o;o=s;s=t;e=n},c=function(){a.apply(0,o)!==!1?v.apply(0,s)===!1&&!e&&(h(!0),c()):e?r.x=r.y=0:(h(!0),c())};return(u.inverted||this.len>1)&&h(),c(),r},defaultFormatter:function(n){var u=this.points||oi(this),i=u[0].series,r;return r=[n.tooltipHeaderFormatter(u[0])],t(u,function(n){i=n.series;r.push(i.tooltipFormatter&&i.tooltipFormatter(n)||n.point.tooltipFormatter(i.tooltipOptions.pointFormat))}),r.push(n.options.footerFormat||""),r.join("")},refresh:function(i,r){var o=this.chart,s=this.label,a=this.options,h,f,u={},e,c=[],l,v;e=a.formatter||this.defaultFormatter;u=o.hoverPoints;v=this.shared;clearTimeout(this.hideTimer);this.followPointer=oi(i)[0].series.tooltipOptions.followPointer;f=this.getAnchor(i,r);h=f[0];f=f[1];v&&(!i.series||!i.series.noSharedTooltip)?(o.hoverPoints=i,u&&t(u,function(n){n.setState()}),t(i,function(n){n.setState("hover");c.push(n.getLabelConfig())}),u={x:i[0].category,y:i[0].y},u.points=c,this.len=c.length,i=i[0]):u=i.getLabelConfig();e=e.call(u,this);u=i.series;this.distance=n(u.tooltipOptions.distance,16);e===!1?this.hide():(this.isHidden&&(tu(s),s.attr("opacity",1).show()),s.attr({text:e}),l=a.borderColor||i.color||u.color||"#606060",s.attr({stroke:l}),this.updatePosition({plotX:h,plotY:f,negative:i.negative,ttBelow:i.ttBelow}),this.isHidden=!1);p(o,"tooltipRefresh",{text:e,x:h+o.plotLeft,y:f+o.plotTop,borderColor:l})},updatePosition:function(n){var i=this.chart,t=this.label,t=(this.options.positioner||this.getPosition).call(this,t.width,t.height,n);this.move(e(t.x),e(t.y),n.plotX+i.plotLeft,n.plotY+i.plotTop)},tooltipHeaderFormatter:function(n){var f=n.series,t=f.tooltipOptions,e=t.dateTimeLabelFormats,i=t.xDateFormat,r=f.xAxis,o=r&&r.options.type==="datetime"&&gt(n.key),t=t.headerFormat,r=r&&r.closestPointRange,u;if(o&&!i){if(r){for(u in c)if(c[u]>=r||c[u]<=c.day&&n.key%c[u]>0){i=e[u];break}}else i=e.day;i=i||e.year}return o&&i&&(t=t.replace("{point.key}","{point.key:"+i+"}")),rr(t,{point:n,series:f})}},dr=s.documentElement.ontouchstart!==f,er=ut.Pointer=function(n,t){this.init(n,t)},er.prototype={init:function(n,t){var i=t.chart,f=i.events,r=bt?"":i.zoomType,i=n.inverted,u;this.options=t;this.chart=n;this.zoomX=u=/x/.test(r);this.zoomY=r=/y/.test(r);this.zoomHor=u&&!i||r&&i;this.zoomVert=r&&!i||u&&i;this.hasZoom=u||r;this.runChartClick=f&&!!f.click;this.pinchDown=[];this.lastValidTouch={};ut.Tooltip&&t.tooltip.enabled&&(n.tooltip=new tf(n,t.tooltip),this.followTouchMove=t.tooltip.followTouchMove);this.setDOMEvents()},normalize:function(n,t){var o,i,n=n||window.event,n=ne(n);return n.target||(n.target=n.srcElement),i=n.touches?n.touches.length?n.touches.item(0):n.changedTouches[0]:n,t||(this.chartPosition=t=gf(this.chart.container)),i.pageX===f?(o=u(n.x,n.clientX-t.left),i=n.y):(o=i.pageX-t.left,i=i.pageY-t.top),r(n,{chartX:e(o),chartY:e(i)})},getCoordinates:function(n){var i={xAxis:[],yAxis:[]};return t(this.chart.axes,function(t){i[t.isXAxis?"xAxis":"yAxis"].push({axis:t,value:t.toValue(n[t.horiz?"chartX":"chartY"])})}),i},getIndex:function(n){var t=this.chart;return t.inverted?t.plotHeight+t.plotTop-n.chartY:n.chartX-t.plotLeft},runPointActions:function(i){var c=this.chart,r=c.series,h=c.tooltip,u,e,w=c.hoverPoint,f=c.hoverSeries,a,o,v=c.chartWidth,p=this.getIndex(i);if(h&&this.options.tooltip.shared&&(!f||!f.noSharedTooltip)){for(e=[],a=r.length,o=0;o<a;o++)r[o].visible&&r[o].options.enableMouseTracking!==!1&&!r[o].noSharedTooltip&&r[o].singularTooltips!==!0&&r[o].tooltipPoints.length&&(u=r[o].tooltipPoints[p])&&u.series&&(u._dist=y(p-u.clientX),v=l(v,u._dist),e.push(u));for(a=e.length;a--;)e[a]._dist>v&&e.splice(a,1);e.length&&e[0].clientX!==this.hoverX&&(h.refresh(e,i),this.hoverX=e[0].clientX)}if(r=f&&f.tooltipOptions.followPointer,f&&f.tracker&&!r){if((u=f.tooltipPoints[p])&&u!==w)u.onMouseOver(i)}else h&&r&&!h.isHidden&&(f=h.getAnchor([{}],i),h.updatePosition({plotX:f[0],plotY:f[1]}));h&&!this._onDocumentMouseMove&&(this._onDocumentMouseMove=function(n){if(ot[ei])ot[ei].pointer.onDocumentMouseMove(n)},k(s,"mousemove",this._onDocumentMouseMove));t(c.axes,function(t){t.drawCrosshair(i,n(u,w))})},reset:function(n){var u=this.chart,o=u.hoverSeries,i=u.hoverPoint,r=u.tooltip,e=r&&r.shared?u.hoverPoints:i;(n=n&&r&&e)&&oi(e)[0].plotX===f&&(n=!1);n?(r.refresh(e),i&&i.setState(i.state,!0)):(i&&i.onMouseOut(),o&&o.onMouseOut(),r&&r.hide(),this._onDocumentMouseMove&&(st(s,"mousemove",this._onDocumentMouseMove),this._onDocumentMouseMove=null),t(u.axes,function(n){n.hideCrosshair()}),this.hoverX=null)},scaleGroups:function(n,i){var r=this.chart,u;t(r.series,function(t){u=n||t.getPlotBox();t.xAxis&&t.xAxis.zoomEnabled&&(t.group.attr(u),t.markerGroup&&(t.markerGroup.attr(u),t.markerGroup.clip(i?r.clipRect:null)),t.dataLabelsGroup&&t.dataLabelsGroup.attr(u))});r.clipRect.attr(i||r.clipBox)},dragStart:function(n){var t=this.chart;t.mouseIsDown=n.type;t.cancelClick=!1;t.mouseDownX=this.mouseDownX=n.chartX;t.mouseDownY=this.mouseDownY=n.chartY},drag:function(n){var i=this.chart,s=i.options.chart,t=n.chartX,r=n.chartY,a=this.zoomHor,v=this.zoomVert,u=i.plotLeft,f=i.plotTop,h=i.plotWidth,c=i.plotHeight,l,e=this.mouseDownX,o=this.mouseDownY;t<u?t=u:t>u+h&&(t=u+h);r<f?r=f:r>f+c&&(r=f+c);this.hasDragged=Math.sqrt(Math.pow(e-t,2)+Math.pow(o-r,2));this.hasDragged>10&&(l=i.isInsidePlot(e-u,o-f),i.hasCartesianSeries&&(this.zoomX||this.zoomY)&&l&&!this.selectionMarker&&(this.selectionMarker=i.renderer.rect(u,f,a?1:h,v?1:c,0).attr({fill:s.selectionMarkerFill||"rgba(69,114,167,0.25)",zIndex:7}).add()),this.selectionMarker&&a&&(t-=e,this.selectionMarker.attr({width:y(t),x:(t>0?0:t)+e})),this.selectionMarker&&v&&(t=r-o,this.selectionMarker.attr({height:y(t),y:(t>0?0:t)+o})),l&&!this.selectionMarker&&s.panning&&i.pan(n,s.panning))},drop:function(n){var i=this.chart,f=this.hasPinched;if(this.selectionMarker){var e={xAxis:[],yAxis:[],originalEvent:n.originalEvent||n},n=this.selectionMarker,o=n.attr?n.attr("x"):n.x,s=n.attr?n.attr("y"):n.y,c=n.attr?n.attr("width"):n.width,a=n.attr?n.attr("height"):n.height,h;(this.hasDragged||f)&&(t(i.axes,function(n){if(n.zoomEnabled){var t=n.horiz,i=n.toValue(t?o:s),t=n.toValue(t?o+c:s+a);isNaN(i)||isNaN(t)||(e[n.coll].push({axis:n,min:l(i,t),max:u(i,t)}),h=!0)}}),h&&p(i,"selection",e,function(n){i.zoom(r(n,f?{animation:!1}:null))}));this.selectionMarker=this.selectionMarker.destroy();f&&this.scaleGroups()}i&&(v(i.container,{cursor:i._cursor}),i.cancelClick=this.hasDragged>10,i.mouseIsDown=this.hasDragged=this.hasPinched=!1,this.pinchDown=[])},onContainerMouseDown:function(n){n=this.normalize(n);n.preventDefault&&n.preventDefault();this.dragStart(n)},onDocumentMouseUp:function(n){ot[ei]&&ot[ei].pointer.drop(n)},onDocumentMouseMove:function(n){var t=this.chart,i=this.chartPosition,r=t.hoverSeries,n=this.normalize(n,i);i&&r&&!this.inClass(n.target,"highcharts-tracker")&&!t.isInsidePlot(n.chartX-t.plotLeft,n.chartY-t.plotTop)&&this.reset()},onContainerMouseLeave:function(){var n=ot[ei];n&&(n.pointer.reset(),n.pointer.chartPosition=null)},onContainerMouseMove:function(n){var t=this.chart;ei=t.index;n=this.normalize(n);t.mouseIsDown==="mousedown"&&this.drag(n);(this.inClass(n.target,"highcharts-tracker")||t.isInsidePlot(n.chartX-t.plotLeft,n.chartY-t.plotTop))&&!t.openMenu&&this.runPointActions(n)},inClass:function(n,t){for(var i;n;){if(i=d(n,"class")){if(i.indexOf(t)!==-1)return!0;if(i.indexOf("highcharts-container")!==-1)return!1}n=n.parentNode}},onTrackerMouseOut:function(n){var t=this.chart.hoverSeries,i=(n=n.relatedTarget||n.toElement)&&n.point&&n.point.series;!t||t.options.stickyTracking||this.inClass(n,"highcharts-tooltip")||i===t||t.onMouseOut()},onContainerClick:function(n){var t=this.chart,i=t.hoverPoint,u=t.plotLeft,f=t.plotTop,n=this.normalize(n);n.cancelBubble=!0;t.cancelClick||(i&&this.inClass(n.target,"highcharts-tracker")?(p(i.series,"click",r(n,{point:i})),t.hoverPoint&&i.firePointEvent("click",n)):(r(n,this.getCoordinates(n)),t.isInsidePlot(n.chartX-u,n.chartY-f)&&p(t,"click",n)))},setDOMEvents:function(){var n=this,t=n.chart.container;t.onmousedown=function(t){n.onContainerMouseDown(t)};t.onmousemove=function(t){n.onContainerMouseMove(t)};t.onclick=function(t){n.onContainerClick(t)};k(t,"mouseleave",n.onContainerMouseLeave);gr===1&&k(s,"mouseup",n.onDocumentMouseUp);dr&&(t.ontouchstart=function(t){n.onContainerTouchStart(t)},t.ontouchmove=function(t){n.onContainerTouchMove(t)},gr===1&&k(s,"touchend",n.onDocumentTouchEnd))},destroy:function(){var n;st(this.chart.container,"mouseleave",this.onContainerMouseLeave);gr||(st(s,"mouseup",this.onDocumentMouseUp),st(s,"touchend",this.onDocumentTouchEnd));clearInterval(this.tooltipTimeout);for(n in this)this[n]=null}},r(ut.Pointer.prototype,{pinchTranslate:function(n,t,i,r,u,f){(this.zoomHor||this.pinchHor)&&this.pinchTranslateDirection(!0,n,t,i,r,u,f);(this.zoomVert||this.pinchVert)&&this.pinchTranslateDirection(!1,n,t,i,r,u,f)},pinchTranslateDirection:function(n,t,i,r,u,f,e,o){var a=this.chart,c=n?"x":"y",d=n?"X":"Y",v="chart"+d,rt=n?"width":"height",g=a["plot"+(n?"Left":"Top")],l,nt,s=o||1,tt=a.inverted,p=a.bounds[n?"h":"v"],w=t.length===1,b=t[0][v],h=i[0][v],ut=!w&&t[1][v],k=!w&&i[1][v],it,i=function(){!w&&y(b-ut)>20&&(s=o||y(h-k)/y(b-ut));nt=(g-h)/s+b;l=a["plot"+(n?"Width":"Height")]/s};i();t=nt;t<p.min?(t=p.min,it=!0):t+l>p.max&&(t=p.max-l,it=!0);it?(h-=.8*(h-e[c][0]),w||(k-=.8*(k-e[c][1])),i()):e[c]=[h,k];tt||(f[c]=nt-g,f[rt]=l);f=tt?1/s:s;u[rt]=l;u[c]=t;r[tt?n?"scaleY":"scaleX":"scale"+d]=s;r["translate"+d]=f*g+(h-f*b)},pinch:function(n){var i=this,e=i.chart,f=i.pinchDown,a=i.followTouchMove,o=n.touches,v=o.length,s=i.lastValidTouch,h=i.hasZoom,c=i.selectionMarker,y={},w=v===1&&(i.inClass(n.target,"highcharts-tracker")&&e.runTrackerClick||e.runChartClick),p={};(h||a)&&!w&&n.preventDefault();wr(o,function(n){return i.normalize(n)});n.type==="touchstart"?(t(o,function(n,t){f[t]={chartX:n.chartX,chartY:n.chartY}}),s.x=[f[0].chartX,f[1]&&f[1].chartX],s.y=[f[0].chartY,f[1]&&f[1].chartY],t(e.axes,function(n){if(n.zoomEnabled){var i=e.bounds[n.horiz?"h":"v"],r=n.minPixelPadding,t=n.toPixels(n.dataMin),f=n.toPixels(n.dataMax),o=l(t,f),t=u(t,f);i.min=l(n.pos,o-r);i.max=u(n.pos+n.len,t+r)}})):f.length&&(c||(i.selectionMarker=c=r({destroy:hi},e.plotBox)),i.pinchTranslate(f,o,y,c,p,s),i.hasPinched=h,i.scaleGroups(y,p),!h&&a&&v===1&&this.runPointActions(i.normalize(n)))},onContainerTouchStart:function(n){var t=this.chart;ei=t.index;n.touches.length===1?(n=this.normalize(n),t.isInsidePlot(n.chartX-t.plotLeft,n.chartY-t.plotTop)?(this.runPointActions(n),this.pinch(n)):this.reset()):n.touches.length===2&&this.pinch(n)},onContainerTouchMove:function(n){(n.touches.length===1||n.touches.length===2)&&this.pinch(n)},onDocumentTouchEnd:function(n){ot[ei]&&ot[ei].pointer.drop(n)}}),g.PointerEvent||g.MSPointerEvent){var ci={},rf=!!g.PointerEvent,ue=function(){var n,t=[];t.item=function(n){return this[n]};for(n in ci)ci.hasOwnProperty(n)&&t.push({pageX:ci[n].pageX,pageY:ci[n].pageY,target:ci[n].target});return t},uf=function(n,t,i,r){n=n.originalEvent||n;(n.pointerType==="touch"||n.pointerType===n.MSPOINTER_TYPE_TOUCH)&&ot[ei]&&(r(n),r=ot[ei].pointer,r[t]({type:i,target:n.currentTarget,preventDefault:hi,touches:ue()}))};r(er.prototype,{onContainerPointerDown:function(n){uf(n,"onContainerTouchStart","touchstart",function(n){ci[n.pointerId]={pageX:n.pageX,pageY:n.pageY,target:n.currentTarget}})},onContainerPointerMove:function(n){uf(n,"onContainerTouchMove","touchmove",function(n){ci[n.pointerId]={pageX:n.pageX,pageY:n.pageY};ci[n.pointerId].target||(ci[n.pointerId].target=n.currentTarget)})},onDocumentPointerUp:function(n){uf(n,"onContainerTouchEnd","touchend",function(n){delete ci[n.pointerId]})},batchMSEvents:function(n){n(this.chart.container,rf?"pointerdown":"MSPointerDown",this.onContainerPointerDown);n(this.chart.container,rf?"pointermove":"MSPointerMove",this.onContainerPointerMove);n(s,rf?"pointerup":"MSPointerUp",this.onDocumentPointerUp)}});sr(er.prototype,"init",function(n,t,i){n.call(this,t,i);(this.hasZoom||this.followTouchMove)&&v(t.container,{"-ms-touch-action":rt,"touch-action":rt})});sr(er.prototype,"setDOMEvents",function(n){n.apply(this);(this.hasZoom||this.followTouchMove)&&this.batchMSEvents(k)});sr(er.prototype,"destroy",function(n){this.batchMSEvents(st);n.call(this)})}iu=ut.Legend=function(n,t){this.init(n,t)};iu.prototype={init:function(t,i){var r=this,u=i.itemStyle,f=n(i.padding,8),e=i.itemMarginTop||0;this.options=i;i.enabled&&(r.baseline=h(u.fontSize)+3+e,r.itemStyle=u,r.itemHiddenStyle=o(u,i.itemHiddenStyle),r.itemMarginTop=e,r.padding=f,r.initialItemX=f,r.initialItemY=f-5,r.maxItemWidth=0,r.chart=t,r.itemHeight=0,r.lastLineHeight=0,r.symbolWidth=n(i.symbolWidth,16),r.pages=[],r.render(),k(r.chart,"endResize",function(){r.positionCheckboxes()}))},colorizeItem:function(n,t){var u=this.options,r=n.legendItem,c=n.legendLine,e=n.legendSymbol,i=this.itemHiddenStyle.color,u=t?u.itemStyle.color:i,o=t?n.legendColor||n.color||"#CCC":i,i=n.options&&n.options.marker,s={fill:o},h;if(r&&r.css({fill:u,color:u}),c&&c.attr({stroke:o}),e){if(i&&e.isMarker)for(h in s.stroke=o,i=n.convertAttribs(i),i)r=i[h],r!==f&&(s[h]=r);e.attr(s)}},positionItem:function(n){var i=this.options,f=i.symbolPadding,i=!i.rtl,t=n._legendItemPos,r=t[0],t=t[1],u=n.checkbox;n.legendGroup&&n.legendGroup.translate(i?r:this.legendWidth-r-2*f-4,t);u&&(u.x=r,u.y=t)},destroyItem:function(n){var i=n.checkbox;t(["legendItem","legendLine","legendSymbol","legendGroup"],function(t){n[t]&&(n[t]=n[t].destroy())});i&&lr(n.checkbox)},destroy:function(){var n=this.group,t=this.box;t&&(this.box=t.destroy());n&&(this.group=n.destroy())},positionCheckboxes:function(n){var r=this.group.alignAttr,i,u=this.clipHeight||this.legendHeight;r&&(i=r.translateY,t(this.allItems,function(t){var f=t.checkbox,e;f&&(e=i+f.y+(n||0)+3,v(f,{left:r.translateX+t.checkboxOffset+f.x-20+"px",top:e+"px",display:e>i-6&&e<i+u-6?"":rt}))}))},renderTitle:function(){var n=this.padding,t=this.options.title,i=0;t.text&&(this.title||(this.title=this.chart.renderer.label(t.text,n-3,n-4,null,null,null,null,null,"legend-title").attr({zIndex:1}).css(t.style).add(this.group)),n=this.title.getBBox(),i=n.height,this.offsetWidth=n.width,this.contentGroup.attr({translateY:i}));this.titleHeight=i},renderItem:function(t){var p=this.chart,s=p.renderer,i=this.options,c=i.layout==="horizontal",r=this.symbolWidth,f=i.symbolPadding,w=this.itemStyle,b=this.itemHiddenStyle,k=this.padding,d=c?n(i.itemDistance,20):0,g=!i.rtl,nt=i.width,v=i.itemMarginBottom||0,y=this.itemMarginTop,l=this.initialItemX,a=t.legendItem,tt=t.series&&t.series.drawLegendSymbol?t.series:t,h=tt.options,h=this.createCheckboxForItem&&h&&h.showCheckbox,it=i.useHTML;a||(t.legendGroup=s.g("legend-item").attr({zIndex:1}).add(this.scrollGroup),tt.drawLegendSymbol(this,t),t.legendItem=a=s.text(i.labelFormat?rr(i.labelFormat,t):i.labelFormatter.call(t),g?r+f:-f,this.baseline,it).css(o(t.visible?w:b)).attr({align:g?"left":"right",zIndex:2}).add(t.legendGroup),this.setItemEvents&&this.setItemEvents(t,a,it,w,b),this.colorizeItem(t,t.visible),h&&this.createCheckboxForItem(t));s=a.getBBox();r=t.checkboxOffset=i.itemWidth||t.legendItemWidth||r+f+s.width+d+(h?20:0);this.itemHeight=f=e(t.legendItemHeight||s.height);c&&this.itemX-l+r>(nt||p.chartWidth-2*k-l-i.x)&&(this.itemX=l,this.itemY+=y+this.lastLineHeight+v,this.lastLineHeight=0);this.maxItemWidth=u(this.maxItemWidth,r);this.lastItemY=y+this.itemY+v;this.lastLineHeight=u(f,this.lastLineHeight);t._legendItemPos=[this.itemX,this.itemY];c?this.itemX+=r:(this.itemY+=y+f+v,this.lastLineHeight=f);this.offsetWidth=nt||u((c?this.itemX-l-d:r)+k,this.offsetWidth)},getAllItems:function(){var r=[];return t(this.chart.series,function(t){var u=t.options;n(u.showInLegend,i(u.linkedTo)?!1:f,!0)&&(r=r.concat(t.legendItems||(u.legendType==="point"?t.data:t)))}),r},render:function(){var n=this,a=n.chart,h=a.renderer,s=n.group,e,c,o,i,u=n.box,f=n.options,v=n.padding,l=f.borderWidth,y=f.backgroundColor;n.itemX=n.initialItemX;n.itemY=n.initialItemY;n.offsetWidth=0;n.lastItemY=0;s||(n.group=s=h.g("legend").attr({zIndex:7}).add(),n.contentGroup=h.g().attr({zIndex:1}).add(s),n.scrollGroup=h.g().add(n.contentGroup));n.renderTitle();e=n.getAllItems();yu(e,function(n,t){return(n.options&&n.options.legendIndex||0)-(t.options&&t.options.legendIndex||0)});f.reversed&&e.reverse();n.allItems=e;n.display=c=!!e.length;t(e,function(t){n.renderItem(t)});o=f.width||n.offsetWidth;i=n.lastItemY+n.lastLineHeight+n.titleHeight;i=n.handleOverflow(i);(l||y)&&(o+=v,i+=v,u?o>0&&i>0&&(u[u.isNew?"attr":"animate"](u.crisp({width:o,height:i})),u.isNew=!1):(n.box=u=h.rect(0,0,o,i,f.borderRadius,l||0).attr({stroke:f.borderColor,"stroke-width":l||0,fill:y||rt}).add(s).shadow(f.shadow),u.isNew=!0),u[c?"show":"hide"]());n.legendWidth=o;n.legendHeight=i;t(e,function(t){n.positionItem(t)});c&&s.align(r({width:o,height:i},f),!0,"spacingBox");a.isResizing||this.positionCheckboxes()},handleOverflow:function(i){var s=this,p=this.chart,h=p.renderer,o=this.options,r=o.y,r=p.spacingBox.height+(o.verticalAlign==="top"?-r:r)-this.padding,b=o.maxHeight,a,c=this.clipRect,w=o.navigation,k=n(w.animation,!0),v=w.arrowSize||12,u=this.nav,f=this.pages,y,d=this.allItems;return o.layout==="horizontal"&&(r/=2),b&&(r=l(r,b)),f.length=0,i>r&&!o.useHTML?(this.clipHeight=a=r-20-this.titleHeight-this.padding,this.currentPage=n(this.currentPage,1),this.fullHeight=i,t(d,function(n,t){var i=n._legendItemPos[1],u=e(n.legendItem.getBBox().height),r=f.length;(!r||i-f[r-1]>a&&(y||i)!==f[r-1])&&(f.push(y||i),r++);t===d.length-1&&i+u-f[r-1]>a&&f.push(i);i!==y&&(y=i)}),c||(c=s.clipRect=h.clipRect(0,this.padding,9999,0),s.contentGroup.clip(c)),c.attr({height:a}),u||(this.nav=u=h.g().attr({zIndex:1}).add(this.group),this.up=h.symbol("triangle",0,0,v,v).on("click",function(){s.scroll(-1,k)}).add(u),this.pager=h.text("",15,10).css(w.style).add(u),this.down=h.symbol("triangle-down",0,0,v,v).on("click",function(){s.scroll(1,k)}).add(u)),s.scroll(0),i=r):u&&(c.attr({height:p.chartHeight}),u.hide(),this.scrollGroup.attr({translateY:1}),this.clipHeight=0),i},scroll:function(n,t){var r=this.pages,u=r.length,i=this.currentPage+n,s=this.clipHeight,e=this.options.navigation,o=e.activeColor,e=e.inactiveColor,h=this.pager,c=this.padding;i>u&&(i=u);i>0&&(t!==f&&ar(t,this.chart),this.nav.attr({translateX:c,translateY:s+this.padding+7+this.titleHeight,visibility:"visible"}),this.up.attr({fill:i===1?e:o}).css({cursor:i===1?"default":"pointer"}),h.attr({text:i+"/"+u}),this.down.attr({x:18+this.pager.getBBox().width,fill:i===u?e:o}).css({cursor:i===u?"default":"pointer"}),r=-r[i-1]+this.initialItemY,this.scrollGroup.animate({translateY:r}),this.currentPage=i,this.positionCheckboxes(r))}};b=ut.LegendSymbolMixin={drawRectangle:function(n,t){var i=n.options.symbolHeight||12;t.legendSymbol=this.chart.renderer.rect(0,n.baseline-5-i/2,n.symbolWidth,i,n.options.symbolRadius||0).attr({zIndex:3}).add(t.legendGroup)},drawLineMarker:function(n){var t=this.options,r=t.marker,i=n.symbolWidth;var u=this.chart.renderer,o=this.legendGroup,n=n.baseline-e(u.fontMetrics(n.options.itemStyle.fontSize).b*.3),f;t.lineWidth&&(f={"stroke-width":t.lineWidth},t.dashStyle&&(f.dashstyle=t.dashStyle),this.legendLine=u.path(["M",0,n,"L",i,n]).attr(f).add(o));r&&r.enabled!==!1&&(t=r.radius,this.legendSymbol=i=u.symbol(this.symbol,i/2-t,n-t,2*t,2*t).add(o),i.isMarker=!0)}};(/Trident\/7\.0/.test(li)||yr)&&sr(iu.prototype,"positionItem",function(n,t){var r=this,i=function(){t._legendItemPos&&n.call(r,t)};i();setTimeout(i)});br.prototype={init:function(t,i){var f,u=t.series,e,r,s;if(t.series=null,f=o(tt,t),f.series=t.series=u,this.userOptions=t,u=f.chart,this.margin=this.splashArray("margin",u),this.spacing=this.splashArray("spacing",u),e=u.events,this.bounds={h:{},v:{}},this.callback=i,this.isResizing=0,this.options=f,this.axes=[],this.series=[],this.hasCartesianSeries=u.showAxes,r=this,r.index=ot.length,ot.push(r),gr++,u.reflow!==!1&&k(r,"load",function(){r.initReflow()}),e)for(s in e)k(r,s,e[s]);r.xAxis=[];r.yAxis=[];r.animation=bt?!1:n(u.animation,!0);r.pointCount=0;r.counters=new ff;r.firstRender()},initSeries:function(n){var t=this.options.chart;return(t=w[n.type||t.type||t.defaultSeriesType])||si(17,!0),t=new t,t.init(this,n),t},isInsidePlot:function(n,t,i){var r=i?t:n,n=i?n:t;return r>=0&&r<=this.plotWidth&&n>=0&&n<=this.plotHeight},adjustTickAmounts:function(){this.options.chart.alignTicks!==!1&&t(this.axes,function(n){n.adjustTickAmount()});this.maxTicks=null},redraw:function(n){var f=this.axes,i=this.series,s=this.pointer,h=this.legend,c=this.isDirtyLegend,e,l,o=this.isDirtyBox,a=i.length,u=a,v=this.renderer,y=v.isHidden(),w=[];for(ar(n,this),y&&this.cloneRenderTo(),this.layOutTitles();u--;)if(n=i[u],n.options.stacking&&(e=!0,n.isDirty)){l=!0;break}if(l)for(u=a;u--;)(n=i[u],n.options.stacking)&&(n.isDirty=!0);t(i,function(n){n.isDirty&&n.options.legendType==="point"&&(c=!0)});c&&h.options.enabled&&(h.render(),this.isDirtyLegend=!1);e&&this.getStacks();this.hasCartesianSeries&&(this.isResizing||(this.maxTicks=null,t(f,function(n){n.setScale()})),this.adjustTickAmounts(),this.getMargins(),t(f,function(n){n.isDirty&&(o=!0)}),t(f,function(n){n.isDirtyExtremes&&(n.isDirtyExtremes=!1,w.push(function(){p(n,"afterSetExtremes",r(n.eventArgs,n.getExtremes()));delete n.eventArgs}));(o||e)&&n.redraw()}));o&&this.drawChartBox();t(i,function(n){n.isDirty&&n.visible&&(!n.isCartesian||n.xAxis)&&n.redraw()});s&&s.reset(!0);v.draw();p(this,"redraw");y&&this.cloneRenderTo(!0);t(w,function(n){n.call()})},get:function(n){for(var i=this.axes,r=this.series,u,t=0;t<i.length;t++)if(i[t].options.id===n)return i[t];for(t=0;t<r.length;t++)if(r[t].options.id===n)return r[t];for(t=0;t<r.length;t++)for(u=r[t].points||[],i=0;i<u.length;i++)if(u[i].id===n)return u[i];return null},getAxes:function(){var r=this,n=this.options,i=n.xAxis=oi(n.xAxis||{}),n=n.yAxis=oi(n.yAxis||{});t(i,function(n,t){n.index=t;n.isX=!0});t(n,function(n,t){n.index=t});i=i.concat(n);t(i,function(n){new ri(r,n)});r.adjustTickAmounts()},getSelectedPoints:function(){var n=[];return t(this.series,function(t){n=n.concat(nf(t.points||[],function(n){return n.selected}))}),n},getSelectedSeries:function(){return nf(this.series,function(n){return n.selected})},getStacks:function(){var i=this;t(i.yAxis,function(n){n.stacks&&n.hasVisibleSeries&&(n.oldStacks=n.stacks)});t(i.series,function(t){t.options.stacking&&(t.visible===!0||i.options.chart.ignoreHiddenSeries===!1)&&(t.stackKey=t.type+n(t.options.stack,""))})},setTitle:function(n,i,r){var e,u=this,f=u.options,s;s=f.title=o(f.title,n);e=f.subtitle=o(f.subtitle,i);f=e;t([["title",n,s],["subtitle",i,f]],function(n){var t=n[0],i=u[t],r=n[1],n=n[2];i&&r&&(u[t]=i=i.destroy());n&&n.text&&!i&&(u[t]=u.renderer.text(n.text,0,0,n.useHTML).attr({align:n.align,"class":"highcharts-"+t,zIndex:n.zIndex||4}).css(n.style).add())});u.layOutTitles(r)},layOutTitles:function(t){var u=0,f=this.title,o=this.subtitle,i=this.options,e=i.title,i=i.subtitle,s=this.spacingBox.width-44;!f||(f.css({width:(e.width||s)+"px"}).align(r({y:15},e),!1,"spacingBox"),e.floating||e.verticalAlign)||(u=f.getBBox().height);o&&(o.css({width:(i.width||s)+"px"}).align(r({y:u+e.margin},i),!1,"spacingBox"),!i.floating&&!i.verticalAlign&&(u=ur(u+o.getBBox().height)));f=this.titleOffset!==u;this.titleOffset=u;!this.isDirtyBox&&f&&(this.isDirtyBox=f,this.hasRendered&&n(t,!0)&&this.isDirtyBox&&this.redraw())},getChartSize:function(){var t=this.options.chart,r=t.width,t=t.height,f=this.renderToClone||this.renderTo;i(r)||(this.containerWidth=cu(f,"width"));i(t)||(this.containerHeight=cu(f,"height"));this.chartWidth=u(0,r||this.containerWidth||600);this.chartHeight=u(0,n(t,this.containerHeight>19?this.containerHeight:400))},cloneRenderTo:function(n){var t=this.renderToClone,i=this.container;n?t&&(this.renderTo.appendChild(i),lr(t),delete this.renderToClone):(i&&i.parentNode===this.renderTo&&this.renderTo.removeChild(i),this.renderToClone=t=this.renderTo.cloneNode(0),v(t,{position:"absolute",top:"-9999px",display:"block"}),t.style.setProperty&&t.style.setProperty("display","block","important"),s.body.appendChild(t),i&&t.appendChild(i))},getContainer:function(){var n,i=this.options.chart,t,u,f;this.renderTo=n=i.renderTo;f="highcharts-"+pu++;nr(n)&&(this.renderTo=n=s.getElementById(n));n||si(13,!0);t=h(d(n,"data-highcharts-chart"));!isNaN(t)&&ot[t]&&ot[t].hasRendered&&ot[t].destroy();d(n,"data-highcharts-chart",this.index);n.innerHTML="";i.skipClone||n.offsetWidth||this.cloneRenderTo();this.getChartSize();t=this.chartWidth;u=this.chartHeight;this.container=n=ct(fr,{className:"highcharts-container"+(i.className?" "+i.className:""),id:f},r({position:"relative",overflow:"hidden",width:t+"px",height:u+"px",textAlign:"left",lineHeight:"normal",zIndex:0,"-webkit-tap-highlight-color":"rgba(0,0,0,0)"},i.style),this.renderToClone||n);this._cursor=n.style.cursor;this.renderer=i.forExport?new fi(n,t,u,i.style,!0):new kr(n,t,u,i.style);bt&&this.renderer.create(this,n,t,u)},getMargins:function(){var e=this.spacing,o,s=this.legend,r=this.margin,f=this.options.legend,h=n(f.margin,20),c=f.x,l=f.y,a=f.align,v=f.verticalAlign,y=this.titleOffset;this.resetMargins();o=this.axisOffset;y&&!i(r[0])&&(this.plotTop=u(this.plotTop,y+this.options.title.margin+e[0]));s.display&&!f.floating&&(a==="right"?i(r[1])||(this.marginRight=u(this.marginRight,s.legendWidth-c+h+e[1])):a==="left"?i(r[3])||(this.plotLeft=u(this.plotLeft,s.legendWidth+c+h+e[3])):v==="top"?i(r[0])||(this.plotTop=u(this.plotTop,s.legendHeight+l+h+e[0])):v!=="bottom"||i(r[2])||(this.marginBottom=u(this.marginBottom,s.legendHeight-l+h+e[2])));this.extraBottomMargin&&(this.marginBottom+=this.extraBottomMargin);this.extraTopMargin&&(this.plotTop+=this.extraTopMargin);this.hasCartesianSeries&&t(this.axes,function(n){n.getOffset()});i(r[3])||(this.plotLeft+=o[3]);i(r[0])||(this.plotTop+=o[0]);i(r[2])||(this.marginBottom+=o[2]);i(r[1])||(this.marginRight+=o[1]);this.setChartSize()},reflow:function(n){var t=this,i=t.options.chart,r=t.renderTo,u=i.width||cu(r,"width"),f=i.height||cu(r,"height"),i=n?n.target:g,r=function(){t.container&&(t.setSize(u,f,!1),t.hasUserSize=null)};!t.hasUserSize&&u&&f&&(i===g||i===s)&&((u!==t.containerWidth||f!==t.containerHeight)&&(clearTimeout(t.reflowTimeout),n?t.reflowTimeout=setTimeout(r,100):r()),t.containerWidth=u,t.containerHeight=f)},initReflow:function(){var n=this,t=function(t){n.reflow(t)};k(g,"resize",t);k(n,"destroy",function(){st(g,"resize",t)})},setSize:function(n,r,f){var o=this,s,h,c;o.isResizing+=1;c=function(){o&&p(o,"endResize",null,function(){o.isResizing-=1})};ar(f,o);o.oldChartHeight=o.chartHeight;o.oldChartWidth=o.chartWidth;i(n)&&(o.chartWidth=s=u(0,e(n)),o.hasUserSize=!!s);i(r)&&(o.chartHeight=h=u(0,e(r)));(vi?lu:v)(o.container,{width:s+"px",height:h+"px"},vi);o.setChartSize(!0);o.renderer.setSize(s,h,f);o.maxTicks=null;t(o.axes,function(n){n.isDirty=!0;n.setScale()});t(o.series,function(n){n.isDirty=!0});o.isDirtyLegend=!0;o.isDirtyBox=!0;o.layOutTitles();o.getMargins();o.redraw(f);o.oldChartHeight=null;p(o,"resize");vi===!1?c():setTimeout(c,vi&&vi.duration||500)},setChartSize:function(n){var f=this.inverted,o=this.renderer,i=this.chartWidth,v=this.chartHeight,y=this.options.chart,r=this.spacing,s=this.clipOffset,l,a,h,c;this.plotLeft=l=e(this.plotLeft);this.plotTop=a=e(this.plotTop);this.plotWidth=h=u(0,e(i-l-this.marginRight));this.plotHeight=c=u(0,e(v-a-this.marginBottom));this.plotSizeX=f?c:h;this.plotSizeY=f?h:c;this.plotBorderWidth=y.plotBorderWidth||0;this.spacingBox=o.spacingBox={x:r[3],y:r[0],width:i-r[3]-r[1],height:v-r[0]-r[2]};this.plotBox=o.plotBox={x:l,y:a,width:h,height:c};i=2*ft(this.plotBorderWidth/2);f=ur(u(i,s[3])/2);o=ur(u(i,s[0])/2);this.clipBox={x:f,y:o,width:ft(this.plotSizeX-u(i,s[1])/2-f),height:ft(this.plotSizeY-u(i,s[2])/2-o)};n||t(this.axes,function(n){n.setAxisSize();n.setAxisTranslation()})},resetMargins:function(){var t=this.spacing,i=this.margin;this.plotTop=n(i[0],t[0]);this.marginRight=n(i[1],t[1]);this.marginBottom=n(i[2],t[2]);this.plotLeft=n(i[3],t[3]);this.axisOffset=[0,0,0,0];this.clipOffset=[0,0,0,0]},drawChartBox:function(){var n=this.options.chart,r=this.renderer,a=this.chartWidth,v=this.chartHeight,t=this.chartBackground,y=this.plotBackground,h=this.plotBorder,p=this.plotBGImage,u=n.borderWidth||0,w=n.backgroundColor,b=n.plotBackgroundColor,k=n.plotBackgroundImage,c=n.plotBorderWidth||0,i,f=this.plotLeft,e=this.plotTop,o=this.plotWidth,s=this.plotHeight,d=this.plotBox,g=this.clipRect,l=this.clipBox;i=u+(n.shadow?8:0);(u||w)&&(t?t.animate(t.crisp({width:a-i,height:v-i})):(t={fill:w||rt},u&&(t.stroke=n.borderColor,t["stroke-width"]=u),this.chartBackground=r.rect(i/2,i/2,a-i,v-i,n.borderRadius,u).attr(t).addClass("highcharts-background").add().shadow(n.shadow)));b&&(y?y.animate(d):this.plotBackground=r.rect(f,e,o,s,0).attr({fill:b}).add().shadow(n.plotShadow));k&&(p?p.animate(d):this.plotBGImage=r.image(k,f,e,o,s).add());g?g.animate({width:l.width,height:l.height}):this.clipRect=r.clipRect(l);c&&(h?h.animate(h.crisp({x:f,y:e,width:o,height:s})):this.plotBorder=r.rect(f,e,o,s,0,-c).attr({stroke:n.plotBorderColor,"stroke-width":c,fill:rt,zIndex:1}).add());this.isDirtyBox=!1},propFromSeries:function(){var i=this,u=i.options.chart,n,f=i.options.series,e,r;t(["inverted","angular","polar"],function(t){for(n=w[u.type||u.defaultSeriesType],r=i[t]||u[t]||n&&n.prototype[t],e=f&&f.length;!r&&e--;)(n=w[f[e].type])&&n.prototype[t]&&(r=!0);i[t]=r})},linkSeries:function(){var n=this,i=n.series;t(i,function(n){n.linkedSeries.length=0});t(i,function(t){var i=t.options.linkedTo;nr(i)&&(i=i===":previous"?n.series[t.index-1]:n.get(i))&&(i.linkedSeries.push(t),t.linkedParent=i)})},renderSeries:function(){t(this.series,function(n){n.translate();n.setTooltipPoints&&n.setTooltipPoints();n.render()})},render:function(){var n=this,u=n.axes,f=n.renderer,e=n.options,o=e.labels,i=e.credits,s;n.setTitle();n.legend=new iu(n,e.legend);n.getStacks();t(u,function(n){n.setScale()});n.getMargins();n.maxTicks=null;t(u,function(n){n.setTickPositions(!0);n.setMaxTicks()});n.adjustTickAmounts();n.getMargins();n.drawChartBox();n.hasCartesianSeries&&t(u,function(n){n.render()});n.seriesGroup||(n.seriesGroup=f.g("series-group").attr({zIndex:3}).add());n.renderSeries();o.items&&t(o.items,function(t){var i=r(o.style,t.style),u=h(i.left)+n.plotLeft,e=h(i.top)+n.plotTop+12;delete i.left;delete i.top;f.text(t.html,u,e).attr({zIndex:2}).css(i).add()});i.enabled&&!n.credits&&(s=i.href,n.credits=f.text(i.text,0,0).on("click",function(){s&&(location.href=s)}).attr({align:i.position.align,zIndex:8}).css(i.style).add().align(i.position));n.hasRendered=!0},destroy:function(){var n=this,u=n.axes,e=n.series,r=n.container,i,o=r&&r.parentNode;for(p(n,"destroy"),ot[n.index]=f,gr--,n.renderTo.removeAttribute("data-highcharts-chart"),st(n),i=u.length;i--;)u[i]=u[i].destroy();for(i=e.length;i--;)e[i]=e[i].destroy();t("title,subtitle,chartBackground,plotBackground,plotBGImage,plotBorder,seriesGroup,clipRect,credits,pointer,scroller,rangeSelector,legend,resetZoomButton,tooltip,renderer".split(","),function(t){var i=n[t];i&&i.destroy&&(n[t]=i.destroy())});r&&(r.innerHTML="",st(r),o&&lr(r));for(i in n)delete n[i]},isReadyToRender:function(){var n=this;return!vt&&g==g.top&&s.readyState!=="complete"||bt&&!g.canvg?(bt?pf.push(function(){n.firstRender()},n.options.global.canvasToolsURL):s.attachEvent("onreadystatechange",function(){s.detachEvent("onreadystatechange",n.firstRender);s.readyState==="complete"&&n.firstRender()}),!1):!0},firstRender:function(){var n=this,i=n.options,r=n.callback;n.isReadyToRender()&&(n.getContainer(),p(n,"init"),n.resetMargins(),n.setChartSize(),n.propFromSeries(),n.getAxes(),t(i.series||[],function(t){n.initSeries(t)}),n.linkSeries(),p(n,"beforeRender"),ut.Pointer&&(n.pointer=new er(n,i)),n.render(),n.renderer.draw(),r&&r.apply(n,[n]),t(n.callbacks,function(t){t.apply(n,[n])}),n.cloneRenderTo(!0),p(n,"load"))},splashArray:function(t,i){var r=i[t],r=yt(r)?r:[r,r,r,r];return[n(i[t+"Top"],r[0]),n(i[t+"Right"],r[1]),n(i[t+"Bottom"],r[2]),n(i[t+"Left"],r[3])]}};br.prototype.callbacks=[];ht=ut.CenteredSeriesMixin={getCenter:function(){var t=this.options,i=this.chart,r=2*(t.slicedOffset||0),f,e=i.plotWidth-2*r,o=i.plotHeight-2*r,i=t.center,t=[n(i[0],"50%"),n(i[1],"50%"),t.size||"100%",t.innerSize||0],s=l(e,o),u;return wr(t,function(n,t){return u=/%$/.test(n),f=t<2||t===2&&u,(u?[e,o,s,s][t]*h(n)/100:n)+(f?r:0)})}};pi=function(){};pi.prototype={init:function(n,t,i){return this.series=n,this.applyOptions(t,i),this.pointAttr={},n.options.colorByPoint&&(t=n.options.colors||n.chart.options.colors,this.color=this.color||t[n.colorCounter++],n.colorCounter===t.length)&&(n.colorCounter=0),n.chart.pointCount++,this},applyOptions:function(n,t){var i=this.series,u=i.pointValKey,n=pi.prototype.optionsToObject.call(this,n);return r(this,n),this.options=this.options?r(this.options,n):n,u&&(this.y=this[u]),this.x===f&&i&&(this.x=t===f?i.autoIncrement():t),this},optionsToObject:function(n){var t={},i=this.series,r=i.pointArrayMap||["y"],u=r.length,f=0,e=0;if(typeof n=="number"||n===null)t[r[0]]=n;else if(or(n))for(n.length>u&&(i=typeof n[0],i==="string"?t.name=n[0]:i==="number"&&(t.x=n[0]),f++);e<u;)t[r[e++]]=n[f++];else typeof n=="object"&&(t=n,n.dataLabels&&(i._hasPointLabels=!0),n.marker&&(i._hasPointMarkers=!0));return t},destroy:function(){var n=this.series.chart,t=n.hoverPoints,i;n.pointCount--;t&&(this.setState(),ti(t,this),!t.length)&&(n.hoverPoints=null);this===n.hoverPoint&&this.onMouseOut();(this.graphic||this.dataLabel)&&(st(this),this.destroyElements());this.legendItem&&n.legend.destroyItem(this);for(i in this)this[i]=null},destroyElements:function(){for(var i="graphic,dataLabel,dataLabelUpper,group,connector,shadowGroup".split(","),n,t=6;t--;)n=i[t],this[n]&&(this[n]=this[n].destroy())},getLabelConfig:function(){return{x:this.category,y:this.y,key:this.name||this.category,series:this.series,point:this,percentage:this.percentage,total:this.total||this.stackTotal}},tooltipFormatter:function(i){var u=this.series,r=u.tooltipOptions,o=n(r.valueDecimals,""),f=r.valuePrefix||"",e=r.valueSuffix||"";return t(u.pointArrayMap||["y"],function(n){n="{point."+n;(f||e)&&(i=i.replace(n+"}",f+n+"}"+e));i=i.replace(n+"}",n+":,."+o+"f}")}),rr(i,{point:this,series:this.series})},firePointEvent:function(n,t,i){var r=this,u=this.series.options;(u.point.events[n]||r.options&&r.options.events&&r.options.events[n])&&this.importEvents();n==="click"&&u.allowPointSelect&&(i=function(n){r.select(null,n.ctrlKey||n.metaKey||n.shiftKey)});p(this,n,t,i)}};a=function(){};a.prototype={isCartesian:!0,type:"line",pointClass:pi,sorted:!0,requireSorting:!0,pointAttrToOptions:{stroke:"lineColor","stroke-width":"lineWidth",fill:"fillColor",r:"radius"},axisTypes:["xAxis","yAxis"],colorCounter:0,parallelArrays:["x","y"],init:function(i,u){var f=this,s,e,o=i.series,h=function(t,i){return n(t.options.index,t._i)-n(i.options.index,i._i)};f.chart=i;f.options=u=f.setOptions(u);f.linkedSeries=[];f.bindAxes();r(f,{name:u.name,state:"",pointAttr:{},visible:u.visible!==!1,selected:u.selected===!0});bt&&(u.animation=!1);e=u.events;for(s in e)k(f,s,e[s]);(e&&e.click||u.point&&u.point.events&&u.point.events.click||u.allowPointSelect)&&(i.runTrackerClick=!0);f.getColor();f.getSymbol();t(f.parallelArrays,function(n){f[n+"Data"]=[]});f.setData(u.data,!1);f.isCartesian&&(i.hasCartesianSeries=!0);o.push(f);f._i=o.length-1;yu(o,h);this.yAxis&&yu(this.yAxis.series,h);t(o,function(n,t){n.index=t;n.name=n.name||"Series "+(t+1)})},bindAxes:function(){var n=this,i=n.options,u=n.chart,r;t(n.axisTypes||[],function(e){t(u[e],function(t){r=t.options;(i[e]===r.index||i[e]!==f&&i[e]===r.id||i[e]===f&&r.index===0)&&(t.series.push(n),n[e]=t,t.isDirty=!0)});n[e]||n.optionalAxis===e||si(18,!0)})},updateParallelArrays:function(n,i){var r=n.series,u=arguments;t(r.parallelArrays,typeof i=="number"?function(t){var u=t==="y"&&r.toYData?r.toYData(n):n[t];r[t+"Data"][i]=u}:function(n){Array.prototype[i].apply(r[n+"Data"],Array.prototype.slice.call(u,2))})},autoIncrement:function(){var i=this.options,t=this.xIncrement,t=n(t,i.pointStart,0);return this.pointInterval=n(this.pointInterval,i.pointInterval,1),this.xIncrement=t+this.pointInterval,t},getSegments:function(){var i=-1,r=[],u,n=this.points,f=n.length;if(f)if(this.options.connectNulls){for(u=f;u--;)n[u].y===null&&n.splice(u,1);n.length&&(r=[n])}else t(n,function(t,u){t.y===null?(u>i+1&&r.push(n.slice(i+1,u)),i=u):u===f-1&&r.push(n.slice(i+1,u+1))});this.segments=r},setOptions:function(n){var t=this.chart,i=t.options.plotOptions,t=t.userOptions||{},r=t.plotOptions||{},u=i[this.type];return this.userOptions=n,i=o(u,i.series,n),this.tooltipOptions=o(tt.tooltip,tt.plotOptions[this.type].tooltip,t.tooltip,r.series&&r.series.tooltip,r[this.type]&&r[this.type].tooltip,n.tooltip),u.marker===null&&delete i.marker,i},getColor:function(){var n=this.options,r=this.userOptions,f=this.chart.options.colors,u=this.chart.counters,t;t=n.color||at[this.type].color;t||n.colorByPoint||(i(r._colorIndex)?n=r._colorIndex:(r._colorIndex=u.color,n=u.color++),t=f[n]);this.color=t;u.wrapColor(f.length)},getSymbol:function(){var n=this.userOptions,r=this.options.marker,t=this.chart,u=t.options.symbols,t=t.counters;this.symbol=r.symbol;this.symbol||(i(n._symbolIndex)?n=n._symbolIndex:(n._symbolIndex=t.symbol,n=t.symbol++),this.symbol=u[n]);/^url/.test(this.symbol)&&(r.radius=0);t.wrapSymbol(u.length)},drawLegendSymbol:b.drawLineMarker,setData:function(i,r,u,e){var o=this,c=o.points,w=c&&c.length||0,h,s=o.options,b=o.chart,v=null,l=o.xAxis,a=l&&!!l.categories,k=o.tooltipPoints,d=s.turboThreshold,p=this.xData,y=this.yData,g=(h=o.pointArrayMap)&&h.length,i=i||[];if(h=i.length,r=n(r,!0),e===!1||!h||w!==h||o.cropped||o.hasGroupedData){if(o.xIncrement=null,o.pointRange=a?1:s.pointRange,o.colorCounter=0,t(this.parallelArrays,function(n){o[n+"Data"].length=0}),d&&h>d){for(u=0;v===null&&u<h;)v=i[u],u++;if(gt(v)){for(a=n(s.pointStart,0),s=n(s.pointInterval,1),u=0;u<h;u++)p[u]=a,y[u]=i[u],a+=s;o.xIncrement=a}else if(or(v))if(g)for(u=0;u<h;u++)s=i[u],p[u]=s[0],y[u]=s.slice(1,g+1);else for(u=0;u<h;u++)s=i[u],p[u]=s[0],y[u]=s[1];else si(12)}else for(u=0;u<h;u++)i[u]!==f&&(s={series:o},o.pointClass.prototype.applyOptions.apply(s,[i[u]]),o.updateParallelArrays(s,u),a&&s.name)&&(l.names[s.x]=s.name);for(nr(y[0])&&si(14,!0),o.data=[],o.options.data=i,u=w;u--;)c[u]&&c[u].destroy&&c[u].destroy();k&&(k.length=0);l&&(l.minRange=l.userMinRange);o.isDirty=o.isDirtyData=b.isDirtyBox=!0;u=!1}else t(i,function(n,t){c[t].update(n,!1)});r&&b.redraw(u)},processData:function(n){var t=this.xData,s=this.yData,i=t.length,r=0;var h,u,c=this.xAxis,a=this.options,v=a.cropThreshold,l=0,y=this.isCartesian,e,o;if(y&&!this.isDirty&&!c.isDirty&&!this.yAxis.isDirty&&!n)return!1;for(y&&this.sorted&&(!v||i>v||this.forceCrop)&&((e=c.min,o=c.max,t[i-1]<e||t[0]>o)?(t=[],s=[]):(t[0]<e||t[i-1]>o)&&(r=this.cropData(this.xData,this.yData,e,o),t=r.xData,s=r.yData,r=r.start,h=!0,l=t.length)),i=t.length-1;i>=0;i--)n=t[i]-t[i-1],!h&&t[i]>e&&t[i]<o&&l++,n>0&&(u===f||n<u)?u=n:n<0&&this.requireSorting&&si(15);this.cropped=h;this.cropStart=r;this.processedXData=t;this.processedYData=s;this.activePointCount=l;a.pointRange===null&&(this.pointRange=u||1);this.closestPointRange=u},cropData:function(t,i,r,f){for(var h=t.length,o=0,s=h,c=n(this.cropShoulder,1),e=0;e<h;e++)if(t[e]>=r){o=u(0,e-c);break}for(;e<h;e++)if(t[e]>f){s=e+c;break}return{xData:t.slice(o,s),yData:i.slice(o,s),start:o,end:s}},generatePoints:function(){var u=this.options.data,t=this.data,c,e=this.processedXData,v=this.processedYData,l=this.pointClass,o=e.length,a=this.cropStart||0,i,r=this.hasGroupedData,s,h=[],n;for(t||r||(t=[],t.length=u.length,t=this.data=t),n=0;n<o;n++)i=a+n,r?h[n]=(new l).init(this,[e[n]].concat(oi(v[n]))):(t[i]?s=t[i]:u[i]!==f&&(t[i]=s=(new l).init(this,u[i],e[n])),h[n]=s);if(t&&(o!==(c=t.length)||r))for(n=0;n<c;n++)(n===a&&!r&&(n+=o),t[n])&&(t[n].destroyElements(),t[n].plotX=f);this.data=t;this.points=h},getExtremes:function(t){var l=this.yAxis,h=this.processedXData,e,s=[],c=0;e=this.xAxis.getExtremes();var a=e.min,v=e.max,u,o,i,r,t=t||this.stackedYData||this.processedYData;for(e=t.length,r=0;r<e;r++)if(o=h[r],i=t[r],u=i!==null&&i!==f&&(!l.isLog||i.length||i>0),o=this.getExtremesFromAll||this.cropped||(h[r+1]||o)>=a&&(h[r-1]||o)<=v,u&&o)if(u=i.length)for(;u--;)i[u]!==null&&(s[c++]=i[u]);else s[c++]=i;this.dataMin=n(void 0,hr(s));this.dataMax=n(void 0,bi(s))},translate:function(){this.processedXData||this.processData();this.generatePoints();for(var e=this.options,y=e.stacking,c=this.xAxis,l=c.categories,s=this.yAxis,p=this.points,w=p.length,b=!!this.modifyValue,a=e.pointPlacement,k=a==="between"||gt(a),v=e.threshold,e=0;e<w;e++){var t=p[e],h=t.x,r=t.y,o=t.low,u=y&&s.stacks[(this.negStacks&&r<v?"-":"")+this.stackKey];s.isLog&&r<=0&&(t.y=r=null);t.plotX=c.translate(h,0,0,0,1,a,this.type==="flags");y&&this.visible&&u&&u[h]&&(u=u[h],r=u.points[this.index+","+e],o=r[0],r=r[1],o===0&&(o=n(v,s.min)),s.isLog&&o<=0&&(o=null),t.total=t.stackTotal=u.total,t.percentage=u.total&&t.y/u.total*100,t.stackY=r,u.setOffset(this.pointXOffset||0,this.barW||0));t.yBottom=i(o)?s.translate(o,0,1,0,1):null;b&&(r=this.modifyValue(r,t));t.plotY=typeof r=="number"&&r!==Infinity?s.translate(r,0,1,0,1):f;t.clientX=k?c.translate(h,0,0,0,1):t.plotX;t.negative=t.y<(v||0);t.category=l&&l[t.x]!==f?l[t.x]:t.x}this.getSegments()},animate:function(n){var t=this.chart,o=t.renderer,i,f,e,u;i=this.options.animation;f=this.clipBox||t.clipBox;e=t.inverted;i&&!yt(i)&&(i=at[this.type].animation);u=["_sharedClip",i.duration,i.easing,f.height].join(",");n?(n=t[u],i=t[u+"m"],n||(t[u]=n=o.clipRect(r(f,{width:0})),t[u+"m"]=i=o.clipRect(-99,e?-t.plotLeft:-t.plotTop,99,e?t.chartWidth:t.chartHeight)),this.group.clip(n),this.markerGroup.clip(i),this.sharedClipKey=u):((n=t[u])&&n.animate({width:t.plotSizeX},i),t[u+"m"]&&t[u+"m"].animate({width:t.plotSizeX+99},i),this.animate=null)},afterAnimate:function(){var n=this.chart,t=this.sharedClipKey,r=this.group,i=this.clipBox;r&&this.options.clip!==!1&&(t&&i||r.clip(i?n.renderer.clipRect(i):n.clipRect),this.markerGroup.clip());p(this,"afterAnimate");setTimeout(function(){t&&n[t]&&(i||(n[t]=n[t].destroy()),n[t+"m"]&&(n[t+"m"]=n[t+"m"].destroy()))},100)},drawPoints:function(){var c,y=this.points,l=this.chart,u,s,a,t,i,o,p,h;u=this.options.marker;var w=this.pointAttr[""],v,b=this.markerGroup,k=n(u.enabled,this.activePointCount<.5*this.xAxis.len/u.radius);if(u.enabled!==!1||this._hasPointMarkers)for(a=y.length;a--;)(t=y[a],u=ft(t.plotX),s=t.plotY,h=t.graphic,o=t.marker||{},c=k&&o.enabled===f||o.enabled,v=l.isInsidePlot(e(u),s,l.inverted),c&&s!==f&&!isNaN(s)&&t.y!==null)?(c=t.pointAttr[t.selected?"select":""]||w,i=c.r,o=n(o.symbol,this.symbol),p=o.indexOf("url")===0,h)?h[v?"show":"hide"](!0).animate(r({x:u-i,y:s-i},h.symbolName?{width:2*i,height:2*i}:{})):v&&(i>0||p)&&(t.graphic=l.renderer.symbol(o,u-i,s-i,2*i,2*i).attr(c).add(b)):h&&(t.graphic=h.destroy())},convertAttribs:function(t,i,r,u){var e=this.pointAttrToOptions,f,o,s={},t=t||{},i=i||{},r=r||{},u=u||{};for(f in e)o=e[f],s[f]=n(t[o],i[f],r[f],u[f]);return s},getAttribs:function(){var e=this,c=e.options,u=at[e.type].marker?c.marker:c,l=u.states,o=l.hover,s,a=e.color,w;s={stroke:a,fill:a};var v=e.points||[],n,h=[],f,y=e.pointAttrToOptions;f=e.hasPointSpecificOptions;var p=c.negativeColor,b=u.lineColor,k=u.fillColor;if(n=c.turboThreshold,c.marker?(o.radius=o.radius||u.radius+2,o.lineWidth=o.lineWidth||u.lineWidth+1):o.color=o.color||yi(o.color||a).brighten(o.brightness).get(),h[""]=e.convertAttribs(u,s),t(["hover","select"],function(n){h[n]=e.convertAttribs(l[n],h[""])}),e.pointAttr=h,a=v.length,!n||a<n||f)for(;a--;){if(n=v[a],(u=n.options&&n.options.marker||n.options)&&u.enabled===!1&&(u.radius=0),n.negative&&p&&(n.color=n.fillColor=p),f=c.colorByPoint||n.color,n.options)for(w in y)i(u[y[w]])&&(f=!0);f?(u=u||{},f=[],l=u.states||{},s=l.hover=l.hover||{},c.marker||(s.color=s.color||!n.options.color&&o.color||yi(n.color).brighten(s.brightness||o.brightness).get()),s={color:n.color},k||(s.fillColor=n.color),b||(s.lineColor=n.color),f[""]=e.convertAttribs(r(s,u),h[""]),f.hover=e.convertAttribs(l.hover,h.hover,f[""]),f.select=e.convertAttribs(l.select,h.select,f[""])):f=h;n.pointAttr=f}},destroy:function(){var n=this,r=n.chart,h=/AppleWebKit\/533/.test(li),e,u,o=n.data||[],f,s,i;for(p(n,"destroy"),st(n),t(n.axisTypes||[],function(t){(i=n[t])&&(ti(i.series,n),i.isDirty=i.forceRedraw=!0)}),n.legendItem&&n.chart.legend.destroyItem(n),u=o.length;u--;)(f=o[u])&&f.destroy&&f.destroy();n.points=null;clearTimeout(n.animationTimeout);t("area,graph,dataLabelsGroup,group,markerGroup,tracker,graphNeg,areaNeg,posClip,negClip".split(","),function(t){n[t]&&(e=h&&t==="group"?"hide":"destroy",n[t][e]())});r.hoverSeries===n&&(r.hoverSeries=null);ti(r.series,n);for(s in n)delete n[s]},getSegmentPath:function(n){var r=this,i=[],u=r.options.step;return t(n,function(t,f){var o=t.plotX,s=t.plotY,e;r.getPointSpline?i.push.apply(i,r.getPointSpline(n,t,f)):(i.push(f?"L":"M"),u&&f&&(e=n[f-1],u==="right"?i.push(e.plotX,s):u==="center"?i.push((e.plotX+o)/2,e.plotY,(e.plotX+o)/2,s):i.push(o,e.plotY)),i.push(t.plotX,t.plotY))}),i},getGraphPath:function(){var n=this,i=[],r,u=[];return t(n.segments,function(t){r=n.getSegmentPath(t);t.length>1?i=i.concat(r):u.push(t[0])}),n.singlePoints=u,n.graphPath=i},drawGraph:function(){var i=this,n=this.options,u=[["graph",n.lineColor||this.color]],f=n.lineWidth,e=n.dashStyle,s=n.linecap!=="square",r=this.getGraphPath(),o=n.negativeColor;o&&u.push(["graphNeg",o]);t(u,function(t,u){var h=t[0],o=i[h];o?(tu(o),o.animate({d:r})):f&&r.length&&(o={stroke:t[1],"stroke-width":f,fill:rt,zIndex:1},e?o.dashstyle=e:s&&(o["stroke-linecap"]=o["stroke-linejoin"]="round"),i[h]=i.chart.renderer.path(r).attr(o).add(i.group).shadow(!u&&n.shadow))})},clipNeg:function(){var f=this.options,n=this.chart,h=n.renderer,t=f.negativeColor||f.negativeFillColor,i,c=this.graph,l=this.area,o=this.posClip,s=this.negClip;i=n.chartWidth;var a=n.chartHeight,r=u(i,a),v=this.yAxis;t&&(c||l)&&(t=e(v.toPixels(f.threshold||0,!0)),t<0&&(r-=t),f={x:0,y:0,width:r,height:t},r={x:0,y:t,width:r,height:r},n.inverted&&(f.height=r.y=n.plotWidth-t,h.isVML&&(f={x:n.plotWidth-t-n.plotLeft,y:0,width:i,height:a},r={x:t+n.plotLeft-i,y:0,width:n.plotLeft+t,height:i})),v.reversed?(n=r,i=f):(n=f,i=r),o?(o.animate(n),s.animate(i)):(this.posClip=o=h.clipRect(n),this.negClip=s=h.clipRect(i),c&&this.graphNeg&&(c.clip(o),this.graphNeg.clip(s)),l&&(l.clip(o),this.areaNeg.clip(s))))},invertGroups:function(){function i(){var i={width:n.yAxis.len,height:n.xAxis.len};t(["group","markerGroup"],function(t){n[t]&&n[t].attr(i).invert()})}var n=this,r=n.chart;n.xAxis&&(k(r,"resize",i),k(n,"destroy",function(){st(r,"resize",i)}),i(),n.invertGroups=i)},plotGroup:function(n,t,i,r,u){var f=this[n],e=!f;return e&&(this[n]=f=this.chart.renderer.g(t).attr({visibility:i,zIndex:r||.1}).add(u)),f[e?"attr":"animate"](this.getPlotBox()),f},getPlotBox:function(){var t=this.chart,i=this.xAxis,n=this.yAxis;return t.inverted&&(i=n,n=this.xAxis),{translateX:i?i.left:t.plotLeft,translateY:n?n.top:t.plotTop,scaleX:1,scaleY:1}},render:function(){var t=this,i=t.chart,r,f=t.options,u=(r=f.animation)&&!!t.animate&&i.renderer.isSVG&&n(r.duration,500)||0,e=t.visible?"visible":"hidden",o=f.zIndex,s=t.hasRendered,h=i.seriesGroup;r=t.plotGroup("group","series",e,o,h);t.markerGroup=t.plotGroup("markerGroup","markers",e,o,h);u&&t.animate(!0);t.getAttribs();r.inverted=t.isCartesian?i.inverted:!1;t.drawGraph&&(t.drawGraph(),t.clipNeg());t.drawDataLabels&&t.drawDataLabels();t.visible&&t.drawPoints();t.drawTracker&&t.options.enableMouseTracking!==!1&&t.drawTracker();i.inverted&&t.invertGroups();f.clip===!1||t.sharedClipKey||s||r.clip(i.clipRect);u&&t.animate();s||(u?t.animationTimeout=setTimeout(function(){t.afterAnimate()},u):t.afterAnimate());t.isDirty=t.isDirtyData=!1;t.hasRendered=!0},redraw:function(){var t=this.chart,f=this.isDirtyData,i=this.group,r=this.xAxis,u=this.yAxis;i&&(t.inverted&&i.attr({width:t.plotWidth,height:t.plotHeight}),i.animate({translateX:n(r&&r.left,t.plotLeft),translateY:n(u&&u.top,t.plotTop)}));this.translate();this.setTooltipPoints&&this.setTooltipPoints(!0);this.render();f&&p(this,"updatedData")}};of.prototype={destroy:function(){cr(this,this.axis)},render:function(n){var t=this.options,i=t.format,i=i?rr(i,this):t.formatter.call(this);this.label?this.label.attr({text:i,visibility:"hidden"}):this.label=this.axis.chart.renderer.text(i,null,null,t.useHTML).css(t.style).attr({align:this.textAlign,rotation:t.rotation,visibility:"hidden"}).add(n)},setOffset:function(n,t){var i=this.axis,e=i.chart,r=e.inverted,u=this.isNegative,f=i.translate(i.usePercentage?100:this.total,0,0,0,1),i=i.translate(0),i=y(f-i),s=e.xAxis[0].translate(this.x)+n,o=e.plotHeight,u={x:r?u?f:f-i:s,y:r?o-s-t:u?o-f-i:o-f,width:r?i:t,height:r?t:i};(r=this.label)&&(r.align(this.alignOptions,null,u),u=r.alignAttr,r[this.options.crop===!1||e.isInsidePlot(u.x,u.y)?"show":"hide"](!0))}};ri.prototype.buildStacks=function(){var i=this.series,r=n(this.options.reversedStacks,!0),t=i.length;if(!this.isXAxis){for(this.usePercentage=!1;t--;)i[r?t:i.length-t-1].setStackedPoints();if(this.usePercentage)for(t=0;t<i.length;t++)i[t].setPercentStacks()}};ri.prototype.renderStackTotals=function(){var n=this.chart,f=n.renderer,i=this.stacks,r,u,t=this.stackTotalGroup;t||(this.stackTotalGroup=t=f.g("stack-labels").attr({visibility:"visible",zIndex:6}).add());t.translate(n.plotLeft,n.plotTop);for(r in i)for(u in n=i[r],n)n[u].render(t)};a.prototype.setStackedPoints=function(){if(this.options.stacking&&!(this.visible!==!0&&this.chart.options.chart.ignoreHiddenSeries!==!1)){for(var b=this.processedXData,a=this.processedYData,v=[],k=a.length,e=this.options,d=e.threshold,g=e.stack,e=e.stacking,h=this.stackKey,p="-"+h,w=this.negStacks,o=this.yAxis,i=o.stacks,c=o.oldStacks,r,n,l,t,s,f=0;f<k;f++)t=b[f],s=a[f],l=this.index+","+f,n=(r=w&&s<d)?p:h,i[n]||(i[n]={}),i[n][t]||(c[n]&&c[n][t]?(i[n][t]=c[n][t],i[n][t].total=null):i[n][t]=new of(o,o.options.stackLabels,r,t,g)),n=i[n][t],n.points[l]=[n.cum||0],e==="percent"?(r=r?h:p,w&&i[r]&&i[r][t]?(r=i[r][t],n.total=r.total=u(r.total,n.total)+y(s)||0):n.total=pt(n.total+(y(s)||0))):n.total=pt(n.total+(s||0)),n.cum=(n.cum||0)+(s||0),n.points[l].push(n.cum),v[f]=n.cum;e==="percent"&&(o.usePercentage=!0);this.stackedYData=v;o.oldStacks={}}};a.prototype.setPercentStacks=function(){var n=this,i=n.stackKey,r=n.yAxis.stacks,u=n.processedXData;t([i,"-"+i],function(t){for(var o,i,f,e=u.length;e--;)(i=u[e],o=(f=r[t]&&r[t][i])&&f.points[n.index+","+e],i=o)&&(f=f.total?100/f.total:0,i[0]=pt(i[0]*f),i[1]=pt(i[1]*f),n.stackedYData[e]=i[1])})};r(br.prototype,{addSeries:function(t,i,r){var f,u=this;return t&&(i=n(i,!0),p(u,"addSeries",{options:t},function(){f=u.initSeries(t);u.isDirtyLegend=!0;u.linkSeries();i&&u.redraw(r)})),f},addAxis:function(t,i,r,u){var f=i?"xAxis":"yAxis",e=this.options;new ri(this,o(t,{index:this[f].length,isX:i}));e[f]=oi(e[f]||{});e[f].push(t);n(r,!0)&&this.redraw(u)},showLoading:function(n){var u=this.options,t=this.loadingDiv,i=u.loading;t||(this.loadingDiv=t=ct(fr,{className:"highcharts-loading"},r(i.style,{zIndex:10,display:rt}),this.container),this.loadingSpan=ct("span",null,i.labelStyle,t));this.loadingSpan.innerHTML=n||u.lang.loading;this.loadingShown||(v(t,{opacity:0,display:"",left:this.plotLeft+"px",top:this.plotTop+"px",width:this.plotWidth+"px",height:this.plotHeight+"px"}),lu(t,{opacity:i.style.opacity},{duration:i.showDuration||0}),this.loadingShown=!0)},hideLoading:function(){var t=this.options,n=this.loadingDiv;n&&lu(n,{opacity:0},{duration:t.loading.hideDuration||100,complete:function(){v(n,{display:rt})}});this.loadingShown=!1}});r(pi.prototype,{update:function(t,i,r){var u=this,f=u.series,e=u.graphic,o,c=f.data,s=f.chart,h=f.options,i=n(i,!0);u.firePointEvent("update",{options:t},function(){u.applyOptions(t);yt(t)&&(f.getAttribs(),e&&(t&&t.marker&&t.marker.symbol?u.graphic=e.destroy():e.attr(u.pointAttr[u.state||""])),t&&t.dataLabels&&u.dataLabel&&(u.dataLabel=u.dataLabel.destroy()));o=gi(u,c);f.updateParallelArrays(u,o);h.data[o]=u.options;f.isDirty=f.isDirtyData=!0;!f.fixedBox&&f.hasCartesianSeries&&(s.isDirtyBox=!0);h.legendType==="point"&&s.legend.destroyItem(u);i&&s.redraw(r)})},remove:function(t,i){var u=this,r=u.series,o=r.points,s=r.chart,f,e=r.data;ar(i,s);t=n(t,!0);u.firePointEvent("remove",null,function(){f=gi(u,e);e.length===o.length&&o.splice(f,1);e.splice(f,1);r.options.data.splice(f,1);r.updateParallelArrays(u,"splice",f,1);u.destroy();r.isDirty=!0;r.isDirtyData=!0;t&&s.redraw()})}});r(a.prototype,{addPoint:function(i,r,u,f){var c=this.options,s=this.data,o=this.graph,e=this.area,l=this.chart,a=this.xAxis&&this.xAxis.names,p=o&&o.shift||0,v=c.data,y,h=this.xData;if(ar(f,l),u&&t([o,e,this.graphNeg,this.areaNeg],function(n){n&&(n.shift=p+1)}),e&&(e.isArea=!0),r=n(r,!0),f={series:this},this.pointClass.prototype.applyOptions.apply(f,[i]),o=f.x,e=h.length,this.requireSorting&&o<h[e-1])for(y=!0;e&&h[e-1]>o;)e--;this.updateParallelArrays(f,"splice",e,0,0);this.updateParallelArrays(f,e);a&&(a[o]=f.name);v.splice(e,0,i);y&&(this.data.splice(e,0,null),this.processData());c.legendType==="point"&&this.generatePoints();u&&(s[0]&&s[0].remove?s[0].remove(!1):(s.shift(),this.updateParallelArrays(f,"shift"),v.shift()));this.isDirtyData=this.isDirty=!0;r&&(this.getAttribs(),l.redraw())},remove:function(t,i){var r=this,u=r.chart,t=n(t,!0);r.isRemoving||(r.isRemoving=!0,p(r,"remove",null,function(){r.destroy();u.isDirtyLegend=u.isDirtyBox=!0;u.linkSeries();t&&u.redraw(i)}));r.isRemoving=!1},update:function(t,i){var e=this.chart,s=this.type,h=w[s].prototype,u,t=o(this.userOptions,{animation:!1,index:this.index,pointStart:this.xData[0]},{data:this.options.data},t);this.remove(!1);for(u in h)h.hasOwnProperty(u)&&(this[u]=f);r(this,w[t.type||s].prototype);this.init(e,t);n(i,!0)&&e.redraw(!1)}});r(ri.prototype,{update:function(t,i){var u=this.chart,t=u.options[this.coll][this.options.index]=o(this.userOptions,t);this.destroy(!0);this._addedPlotLB=f;this.init(u,r(t,{events:f}));u.isDirtyBox=!0;n(i,!0)&&u.redraw()},remove:function(i){for(var r=this.chart,u=this.coll,f=this.series,e=f.length;e--;)f[e]&&f[e].remove(!1);ti(r.axes,this);ti(r[u],this);r.options[u].splice(this.options.index,1);t(r[u],function(n,t){n.options.index=t});this.destroy();r.isDirtyBox=!0;n(i,!0)&&r.redraw()},setTitle:function(n,t){this.update({title:n},t)},setCategories:function(n,t){this.update({categories:n},t)}});kt=ii(a);w.line=kt;at.area=o(nt,{threshold:0});dt=ii(a,{type:"area",getSegments:function(){var f=[],u=[],e=[],y=this.xAxis,l=this.yAxis,n=l.stacks[this.stackKey],i={},o,s,h=this.points,p=this.options.connectNulls,v,r,c;if(this.options.stacking&&!this.cropped){for(r=0;r<h.length;r++)i[h[r].x]=h[r];for(c in n)n[c].total!==null&&e.push(+c);e.sort(function(n,t){return n-t});t(e,function(t){(!p||i[t]&&i[t].y!==null)&&(i[t]?u.push(i[t]):(o=y.translate(t),v=n[t].percent?n[t].total?n[t].cum*100/n[t].total:0:n[t].cum,s=l.toPixels(v,!0),u.push({y:null,plotX:o,clientX:o,plotY:s,yBottom:s,onMouseOver:hi})))});u.length&&f.push(u)}else a.prototype.getSegments.call(this),f=this.segments;this.segments=f},getSegmentPath:function(t){var r=a.prototype.getSegmentPath.call(this,t),u=[].concat(r),i,f=this.options,e,o;if(i=r.length,e=this.yAxis.getThreshold(f.threshold),i===3&&u.push("L",r[1],r[2]),f.stacking&&!this.closedStacks)for(i=t.length-1;i>=0;i--)o=n(t[i].yBottom,e),i<t.length-1&&f.step&&u.push(t[i+1].plotX,o),u.push(t[i].plotX,o);else this.closeSegment(u,t,e);return this.areaPath=this.areaPath.concat(u),r},closeSegment:function(n,t,i){n.push("L",t[t.length-1].plotX,i,"L",t[0].plotX,i)},drawGraph:function(){this.areaPath=[];a.prototype.drawGraph.apply(this);var i=this,u=this.areaPath,r=this.options,f=r.negativeColor,e=r.negativeFillColor,o=[["area",this.color,r.fillColor]];(f||e)&&o.push(["areaNeg",f,e]);t(o,function(t){var f=t[0],e=i[f];e?e.animate({d:u}):i[f]=i.chart.renderer.path(u).attr({fill:n(t[2],yi(t[1]).setOpacity(n(r.fillOpacity,.75)).get()),zIndex:0}).add(i.group)})},drawLegendSymbol:b.drawRectangle});w.area=dt;at.spline=o(nt);kt=ii(a,{type:"spline",getPointSpline:function(n,t,i){var h=t.plotX,r=t.plotY,s=n[i-1],o=n[i+1],a,e,c,f,v;return s&&o&&(n=s.plotY,c=o.plotX,o=o.plotY,a=(1.5*h+s.plotX)/2.5,e=(1.5*r+n)/2.5,c=(1.5*h+c)/2.5,f=(1.5*r+o)/2.5,v=(f-e)*(c-h)/(c-a)+r-f,e+=v,f+=v,e>n&&e>r?(e=u(n,r),f=2*r-e):e<n&&e<r&&(e=l(n,r),f=2*r-e),f>o&&f>r?(f=u(o,r),e=2*r-f):f<o&&f<r&&(f=l(o,r),e=2*r-f),t.rightContX=c,t.rightContY=f),i?(t=["C",s.rightContX||s.plotX,s.rightContY||s.plotY,a||h,e||r,h,r],s.rightContX=s.rightContY=null):t=["M",h,r],t}});w.spline=kt;at.areaspline=o(at.area);dt=dt.prototype;kt=ii(kt,{type:"areaspline",closedStacks:!0,getSegmentPath:dt.getSegmentPath,closeSegment:dt.closeSegment,drawGraph:dt.drawGraph,drawLegendSymbol:b.drawRectangle});w.areaspline=kt;at.column=o(nt,{borderColor:"#FFFFFF",borderRadius:0,groupPadding:.2,marker:null,pointPadding:.1,minPointLength:0,cropThreshold:50,pointRange:null,states:{hover:{brightness:.1,shadow:!1,halo:!1},select:{color:"#C0C0C0",borderColor:"#000000",shadow:!1}},dataLabels:{align:null,verticalAlign:null,y:null},stickyTracking:!1,tooltip:{distance:6},threshold:0});kt=ii(a,{type:"column",pointAttrToOptions:{stroke:"borderColor",fill:"color",r:"borderRadius"},cropShoulder:0,trackerGroups:["group","dataLabelsGroup"],negStacks:!0,init:function(){a.prototype.init.apply(this,arguments);var n=this,i=n.chart;i.hasRendered&&t(i.series,function(t){t.type===n.type&&(t.isDirty=!0)})},getColumnMetrics:function(){var u=this,e=u.options,r=u.xAxis,p=u.yAxis,w=r.reversed,h,a={},v,o=0;e.grouping===!1?o=1:t(u.chart.series,function(n){var t=n.options,i=n.yAxis;n.type===u.type&&n.visible&&p.len===i.len&&p.pos===i.pos&&(t.stacking?(h=n.stackKey,a[h]===f&&(a[h]=o++),v=a[h]):t.grouping!==!1&&(v=o++),n.columnIndex=v)});var r=l(y(r.transA)*(r.ordinalSlope||e.pointRange||r.closestPointRange||r.tickInterval||1),r.len),b=r*e.groupPadding,c=(r-2*b)/o,s=e.pointWidth,e=i(s)?(c-s)/2:c*e.pointPadding,s=n(s,c-2*e);return u.columnMetrics={width:s,offset:e+(b+((w?o-(u.columnIndex||0):u.columnIndex)||0)*c-r/2)*(w?-1:1)}},translate:function(){var i=this,h=i.chart,r=i.options,c=i.borderWidth=n(r.borderWidth,i.activePointCount>.5*i.xAxis.len?0:1),o=i.yAxis,s=i.translatedThreshold=o.getThreshold(r.threshold),f=n(r.minPointLength,5),r=i.getColumnMetrics(),p=r.width,b=i.barW=ur(u(p,1+2*c)),k=i.pointXOffset=r.offset,w=-(c%2?.5:0),v=c%2?.5:1;h.renderer.isVML&&h.inverted&&(v+=1);a.prototype.translate.apply(i);t(i.points,function(t){var d=n(t.yBottom,s),nt=l(u(-999-d,t.plotY),o.len+999+d),r=t.plotX+k,g=b,c=l(nt,d),a;a=u(nt,d)-c;y(a)<f&&f&&(a=f,c=e(y(c-s)>f?d-f:s-(o.translate(t.y,0,1,0,1)<=s?f:0)));t.barX=r;t.pointWidth=p;t.tooltipPos=h.inverted?[o.len-nt,i.xAxis.len-r-g/2]:[r+g/2,nt];d=y(r)<.5;g=e(r+g)+w;r=e(r)+w;g-=r;nt=y(c)<.5;a=e(c+a)+v;c=e(c)+v;a-=c;d&&(r+=1,g-=1);nt&&(c-=1,a+=1);t.shapeType="rect";t.shapeArgs={x:r,y:c,width:g,height:a}})},getSymbol:hi,drawLegendSymbol:b.drawRectangle,drawGraph:hi,drawPoints:function(){var n=this,s=this.chart,r=n.options,c=s.renderer,l=r.animationLimit||250,u,h,e;t(n.points,function(t){var v=t.plotY,a=t.graphic;v===f||isNaN(v)||t.y===null?a&&(t.graphic=a.destroy()):(u=t.shapeArgs,e=i(n.borderWidth)?{"stroke-width":n.borderWidth}:{},h=t.pointAttr[t.selected?"select":""]||n.pointAttr[""],a?(tu(a),a.attr(e)[s.pointCount<l?"animate":"attr"](o(u))):t.graphic=c[t.shapeType](u).attr(h).attr(e).add(n.group).shadow(r.shadow,null,r.stacking&&!r.borderRadius))})},animate:function(n){var i=this.yAxis,f=this.options,r=this.chart.inverted,t={};vt&&(n?(t.scaleY=.001,n=l(i.pos+i.len,u(i.pos,i.toPixels(f.threshold))),r?t.translateX=n-i.len:t.translateY=n,this.group.attr(t)):(t.scaleY=1,t[r?"translateX":"translateY"]=i.pos,this.group.animate(t,this.options.animation),this.animate=null))},remove:function(){var n=this,i=n.chart;i.hasRendered&&t(i.series,function(t){t.type===n.type&&(t.isDirty=!0)});a.prototype.remove.apply(n,arguments)}});w.column=kt;at.bar=o(at.column);dt=ii(kt,{type:"bar",inverted:!0});w.bar=dt;at.scatter=o(nt,{lineWidth:0,tooltip:{headerFormat:'<span style="color:{series.color}">●<\/span> <span style="font-size: 10px;"> {series.name}<\/span><br/>',pointFormat:"x: <b>{point.x}<\/b><br/>y: <b>{point.y}<\/b><br/>"},stickyTracking:!1});dt=ii(a,{type:"scatter",sorted:!1,requireSorting:!1,noSharedTooltip:!0,trackerGroups:["markerGroup"],takeOrdinalPosition:!1,singularTooltips:!0,drawGraph:function(){this.options.lineWidth&&a.prototype.drawGraph.call(this)}});w.scatter=dt;at.pie=o(nt,{borderColor:"#FFFFFF",borderWidth:1,center:[null,null],clip:!1,colorByPoint:!0,dataLabels:{distance:30,enabled:!0,formatter:function(){return this.point.name}},ignoreHiddenPoint:!0,legendType:"point",marker:null,size:null,showInLegend:!1,slicedOffset:10,states:{hover:{brightness:.1,shadow:!1}},stickyTracking:!1,tooltip:{followPointer:!0}});nt={type:"pie",isCartesian:!1,pointClass:ii(pi,{init:function(){pi.prototype.init.apply(this,arguments);var t=this,i;return t.y<0&&(t.y=null),r(t,{visible:t.visible!==!1,name:n(t.name,"Slice")}),i=function(n){t.slice(n.type==="select")},k(t,"select",i),k(t,"unselect",i),t},setVisible:function(n){var i=this,r=i.series,u=r.chart;i.visible=i.options.visible=n=n===f?!i.visible:n;r.options.data[gi(i,r.data)]=i.options;t(["graphic","dataLabel","connector","shadowGroup"],function(t){i[t]&&i[t][n?"show":"hide"](!0)});i.legendItem&&u.legend.colorizeItem(i,n);!r.isDirty&&r.options.ignoreHiddenPoint&&(r.isDirty=!0,u.redraw())},slice:function(t,r,u){var f=this.series;ar(u,f.chart);n(r,!0);this.sliced=this.options.sliced=t=i(t)?t:!this.sliced;f.options.data[gi(this,f.data)]=this.options;t=t?this.slicedTranslation:{translateX:0,translateY:0};this.graphic.animate(t);this.shadowGroup&&this.shadowGroup.animate(t)},haloPath:function(n){var t=this.shapeArgs,i=this.series.chart;return this.series.chart.renderer.symbols.arc(i.plotLeft+t.x,i.plotTop+t.y,t.r+n,t.r+n,{innerR:this.shapeArgs.r,start:t.start,end:t.end})}}),requireSorting:!1,noSharedTooltip:!0,trackerGroups:["group","dataLabelsGroup"],axisTypes:[],pointAttrToOptions:{stroke:"borderColor","stroke-width":"borderWidth",fill:"color"},singularTooltips:!0,getColor:hi,animate:function(n){var i=this,u=i.points,r=i.startAngleRad;n||(t(u,function(n){var t=n.graphic,n=n.shapeArgs;t&&(t.attr({r:i.center[3]/2,start:r,end:r}),t.animate({r:n.r,start:n.start,end:n.end},i.options.animation))}),i.animate=null)},setData:function(t,i,r,u){a.prototype.setData.call(this,t,!1,r,u);this.processData();this.generatePoints();n(i,!0)&&this.chart.redraw(r)},generatePoints:function(){var n,i=0,r,u,t,f=this.options.ignoreHiddenPoint;for(a.prototype.generatePoints.call(this),r=this.points,u=r.length,n=0;n<u;n++)t=r[n],i+=f&&!t.visible?0:t.y;for(this.total=i,n=0;n<u;n++)t=r[n],t.percentage=i>0?t.y/i*100:0,t.total=i},translate:function(t){this.generatePoints();var v=0,u=this.options,y=u.slicedOffset,c=y+u.borderWidth,f,o,i,h=u.startAngle||0,p=this.startAngleRad=ui/180*(h-90),h=(this.endAngleRad=ui/180*(n(u.endAngle,h+360)-90))-p,w=this.points,s=u.dataLabels.distance,u=u.ignoreHiddenPoint,a,b=w.length,r;for(t||(this.center=t=this.getCenter()),this.getX=function(n,r){return i=et.asin(l((n-t[1])/(t[2]/2+s),1)),t[0]+(r?-1:1)*lt(i)*(t[2]/2+s)},a=0;a<b;a++)r=w[a],f=p+v*h,(!u||r.visible)&&(v+=r.percentage/100),o=p+v*h,r.shapeType="arc",r.shapeArgs={x:t[0],y:t[1],r:t[2]/2,innerR:t[3]/2,start:e(f*1e3)/1e3,end:e(o*1e3)/1e3},i=(o+f)/2,i>1.5*ui?i-=2*ui:i<-ui/2&&(i+=2*ui),r.slicedTranslation={translateX:e(lt(i)*y),translateY:e(wt(i)*y)},f=lt(i)*t[2]/2,o=wt(i)*t[2]/2,r.tooltipPos=[t[0]+f*.7,t[1]+o*.7],r.half=i<-ui/2||i>ui/2?1:0,r.angle=i,c=l(c,s/2),r.labelPos=[t[0]+f+lt(i)*s,t[1]+o+wt(i)*s,t[0]+f+lt(i)*c,t[1]+o+wt(i)*c,t[0]+f,t[1]+o,s<0?"center":r.half?"right":"left",i]},drawGraph:null,drawPoints:function(){var n=this,e=n.chart.renderer,u,f,o=n.options.shadow,i,s;o&&!n.shadowGroup&&(n.shadowGroup=e.g("shadow").add(n.group));t(n.points,function(t){f=t.graphic;s=t.shapeArgs;i=t.shadowGroup;o&&!i&&(i=t.shadowGroup=e.g("shadow").add(n.shadowGroup));u=t.sliced?t.slicedTranslation:{translateX:0,translateY:0};i&&i.attr(u);f?f.animate(r(s,u)):t.graphic=f=e[t.shapeType](s).setRadialReference(n.center).attr(t.pointAttr[t.selected?"select":""]).attr({"stroke-linejoin":"round"}).attr(u).add(n.group).shadow(o,i);t.visible!==void 0&&t.setVisible(t.visible)})},sortByAngle:function(n,t){n.sort(function(n,i){return n.angle!==void 0&&(i.angle-n.angle)*t})},drawLegendSymbol:b.drawRectangle,getCenter:ht.getCenter,getSymbol:hi};nt=ii(a,nt);w.pie=nt;a.prototype.drawDataLabels=function(){var e=this,c=e.options,v=c.cursor,u=c.dataLabels,y=e.points,h,l,s,a;(u.enabled||e._hasPointLabels)&&(e.dlProcessOptions&&e.dlProcessOptions(u),a=e.plotGroup("dataLabelsGroup","data-labels","hidden",u.zIndex||6),!e.hasRendered&&n(u.defer,!0)&&(a.attr({opacity:0}),k(e,"afterAnimate",function(){e.dataLabelsGroup.show()[c.animation?"animate":"attr"]({opacity:1},{duration:200})})),l=u,t(y,function(t){var y,c=t.dataLabel,p,w,b=t.connector,k=!0;if(h=t.options&&t.options.dataLabels,y=n(h&&h.enabled,l.enabled),c&&!y)t.dataLabel=c.destroy();else if(y){if(u=o(l,h),y=u.rotation,p=t.getLabelConfig(),s=u.format?rr(u.format,p):u.formatter.call(p,u),u.style.color=n(u.color,u.style.color,e.color,"black"),c)i(s)?(c.attr({text:s}),k=!1):(t.dataLabel=c=c.destroy(),b)&&(t.connector=b.destroy());else if(i(s)){c={fill:u.backgroundColor,stroke:u.borderColor,"stroke-width":u.borderWidth,r:u.borderRadius||0,rotation:y,padding:u.padding,zIndex:1};for(w in c)c[w]===f&&delete c[w];c=t.dataLabel=e.chart.renderer[y?"text":"label"](s,0,-999,null,null,null,u.useHTML).attr(c).css(r(u.style,v&&{cursor:v})).add(a).shadow(u.shadow)}c&&e.alignDataLabel(t,c,u,null,k)}}))};a.prototype.alignDataLabel=function(t,i,u,f,o){var h=this.chart,s=h.inverted,l=n(t.plotX,-999),a=n(t.plotY,-999),c=i.getBBox();(t=this.visible&&(t.series.forceDL||h.isInsidePlot(l,e(a),s)||f&&h.isInsidePlot(l,s?f.x+1:f.y+f.height-1,s)))&&(f=r({x:s?h.plotWidth-a:l,y:e(s?h.plotHeight-l:a),width:0,height:0},f),r(u,{width:c.width,height:c.height}),u.rotation?(s={align:u.align,x:f.x+u.x+f.width/2,y:f.y+u.y+f.height/2},i[o?"attr":"animate"](s)):(i.align(u,null,f),s=i.alignAttr,n(u.overflow,"justify")==="justify"?this.justifyDataLabel(i,u,s,c,f,o):n(u.crop,!0)&&(t=h.isInsidePlot(s.x,s.y)&&h.isInsidePlot(s.x+c.width,s.y+c.height))));t||(i.attr({y:-999}),i.placed=!1)};a.prototype.justifyDataLabel=function(n,t,i,r,u,f){var s=this.chart,h=t.align,c=t.verticalAlign,e,o;e=i.x;e<0&&(h==="right"?t.align="left":t.x=-e,o=!0);e=i.x+r.width;e>s.plotWidth&&(h==="left"?t.align="right":t.x=s.plotWidth-e,o=!0);e=i.y;e<0&&(c==="bottom"?t.verticalAlign="top":t.y=-e,o=!0);e=i.y+r.height;e>s.plotHeight&&(c==="top"?t.verticalAlign="bottom":t.y=s.plotHeight-e,o=!0);o&&(n.placed=!f,n.align(t,null,u))};w.pie&&(w.pie.prototype.drawDataLabels=function(){var v=this,o=v.data,f,ut=v.chart,k=v.options.dataLabels,it=n(k.connectorPadding,10),at=n(k.connectorWidth,1),vt=ut.plotWidth,ut=ut.plotHeight,nt,ot,bt=n(k.softConnector,!0),rt=k.distance,st=v.center,ht=st[2]/2,yt=st[1],kt=rt>0,p,c,r,tt,pt=[[],[]],w,s,ft,l,i,b=[0,0,0,0],wt=function(n,t){return t.y-n.y},lt,et;if(v.visible&&(k.enabled||v._hasPointLabels)){for(a.prototype.drawDataLabels.apply(v),t(o,function(n){n.dataLabel&&n.visible&&pt[n.half].push(n)}),l=0;!tt&&o[l];)tt=o[l]&&o[l].dataLabel&&(o[l].dataLabel.getBBox().height||21),l++;for(l=2;l--;){var o=[],ct=[],d=pt[l],g=d.length,h;if(v.sortByAngle(d,l-.5),rt>0){for(i=yt-ht-rt;i<=yt+ht+rt;i+=tt)o.push(i);if(c=o.length,g>c){for(f=[].concat(d),f.sort(wt),i=g;i--;)f[i].rank=i;for(i=g;i--;)d[i].rank>=c&&d.splice(i,1);g=d.length}for(i=0;i<g;i++){for(f=d[i],r=f.labelPos,f=9999,et=0;et<c;et++)lt=y(o[et]-r[1]),lt<f&&(f=lt,h=et);if(h<i&&o[i]!==null)h=i;else for(c<g-i+h&&o[i]!==null&&(h=c-g+i);o[h]===null;)h++;ct.push({i:h,y:o[h]});o[h]=null}ct.sort(wt)}for(i=0;i<g;i++)f=d[i],r=f.labelPos,p=f.dataLabel,ft=f.visible===!1?"hidden":"visible",f=r[1],rt>0?(c=ct.pop(),h=c.i,s=c.y,f>s&&o[h+1]!==null||f<s&&o[h-1]!==null)&&(s=f):s=f,w=k.justify?st[0]+(l?-1:1)*(ht+rt):v.getX(h===0||h===o.length-1?f:s,l),p._attr={visibility:ft,align:r[6]},p._pos={x:w+k.x+({left:it,right:-it}[r[6]]||0),y:s+k.y-10},p.connX=w,p.connY=s,this.options.size===null&&(c=p.width,w-c<it?b[3]=u(e(c-w+it),b[3]):w+c>vt-it&&(b[1]=u(e(w+c-vt+it),b[1])),s-tt/2<0?b[0]=u(e(-s+tt/2),b[0]):s+tt/2>ut&&(b[2]=u(e(s+tt/2-ut),b[2])))}(bi(b)===0||this.verifyDataLabelOverflow(b))&&(this.placeDataLabels(),kt&&at&&t(this.points,function(n){nt=n.connector;r=n.labelPos;(p=n.dataLabel)&&p._pos?(ft=p._attr.visibility,w=p.connX,s=p.connY,ot=bt?["M",w+(r[6]==="left"?5:-5),s,"C",w,s,2*r[2]-r[4],2*r[3]-r[5],r[2],r[3],"L",r[4],r[5]]:["M",w+(r[6]==="left"?5:-5),s,"L",r[2],r[3],"L",r[4],r[5]],nt?(nt.animate({d:ot}),nt.attr("visibility",ft)):n.connector=nt=v.chart.renderer.path(ot).attr({"stroke-width":at,stroke:k.connectorColor||n.color||"#606060",visibility:ft}).add(v.dataLabelsGroup)):nt&&(n.connector=nt.destroy())}))}},w.pie.prototype.placeDataLabels=function(){t(this.points,function(n){var n=n.dataLabel,t;n&&((t=n._pos)?(n.attr(n._attr),n[n.moved?"animate":"attr"](t),n.moved=!0):n&&n.attr({y:-999}))})},w.pie.prototype.alignDataLabel=hi,w.pie.prototype.verifyDataLabelOverflow=function(n){var i=this.center,f=this.options,e=f.center,r=f=f.minSize||80,o;return e[0]!==null?r=u(i[2]-u(n[1],n[3]),f):(r=u(i[2]-n[1]-n[3],f),i[0]+=(n[3]-n[1])/2),e[1]!==null?r=u(l(r,i[2]-u(n[0],n[2])),f):(r=u(l(r,i[2]-n[0]-n[2]),f),i[1]+=(n[0]-n[2])/2),r<i[2]?(i[2]=r,this.translate(i),t(this.points,function(n){n.dataLabel&&(n.dataLabel._pos=null)}),this.drawDataLabels&&this.drawDataLabels()):o=!0,o});w.column&&(w.column.prototype.alignDataLabel=function(t,i,r,u,f){var e=this.chart,s=e.inverted,l=t.dlBox||t.shapeArgs,h=t.below||t.plotY>n(this.translatedThreshold,e.plotSizeY),c=n(r.inside,!!this.options.stacking);l&&(u=o(l),s&&(u={x:e.plotWidth-u.y-u.height,y:e.plotHeight-u.x-u.width,width:u.height,height:u.width}),!c)&&(s?(u.x+=h?0:u.width,u.width=0):(u.y+=h?u.height:0,u.height=0));r.align=n(r.align,!s||c?"center":h?"right":"left");r.verticalAlign=n(r.verticalAlign,s||c?"middle":h?"top":"bottom");a.prototype.alignDataLabel.call(this,t,i,r,u,f)});nt=ut.TrackerMixin={drawTrackerPoint:function(){var n=this,i=n.chart,e=i.pointer,r=n.options.cursor,o=r&&{cursor:r},u=function(t){var u=t.target,r;for(i.hoverSeries!==n&&n.onMouseOver();u&&!r;)r=u.point,u=u.parentNode;if(r!==f&&r!==i.hoverPoint)r.onMouseOver(t)};t(n.points,function(n){n.graphic&&(n.graphic.element.point=n);n.dataLabel&&(n.dataLabel.element.point=n)});n._hasTracking||(t(n.trackerGroups,function(t){if(n[t]&&(n[t].addClass("highcharts-tracker").on("mouseover",u).on("mouseout",function(n){e.onTrackerMouseOut(n)}).css(o),dr))n[t].on("touchstart",u)}),n._hasTracking=!0)},drawTrackerGraph:function(){var i=this,h=i.options,o=h.trackByArea,r=[].concat(o?i.areaPath:i.graphPath),u=r.length,s=i.chart,v=s.pointer,y=s.renderer,f=s.options.tooltip.snap,c=i.tracker,e=h.cursor,p=e&&{cursor:e},e=i.singlePoints,n,l=function(){s.hoverSeries!==i&&i.onMouseOver()},a="rgba(192,192,192,"+(vt?.0001:.002)+")";if(u&&!o)for(n=u+1;n--;)r[n]==="M"&&r.splice(n+1,0,r[n+1]-f,r[n+2],"L"),(n&&r[n]==="M"||n===u)&&r.splice(n,0,"L",r[n-2]+f,r[n-1]);for(n=0;n<e.length;n++)u=e[n],r.push("M",u.plotX-f,u.plotY,"L",u.plotX+f,u.plotY);c?c.attr({d:r}):(i.tracker=y.path(r).attr({"stroke-linejoin":"round",visibility:i.visible?"visible":"hidden",stroke:a,fill:o?a:rt,"stroke-width":h.lineWidth+(o?0:2*f),zIndex:2}).add(i.group),t([i.tracker,i.markerGroup],function(n){if(n.addClass("highcharts-tracker").on("mouseover",l).on("mouseout",function(n){v.onTrackerMouseOut(n)}).css(p),dr)n.on("touchstart",l)}))}};w.column&&(kt.prototype.drawTracker=nt.drawTrackerPoint);w.pie&&(w.pie.prototype.drawTracker=nt.drawTrackerPoint);w.scatter&&(dt.prototype.drawTracker=nt.drawTrackerPoint);r(iu.prototype,{setItemEvents:function(n,t,i,r,u){var f=this;(i?t:n.legendGroup).on("mouseover",function(){n.setState("hover");t.css(f.options.itemHoverStyle)}).on("mouseout",function(){t.css(n.visible?r:u);n.setState()}).on("click",function(t){var i=function(){n.setVisible()},t={browserEvent:t};n.firePointEvent?n.firePointEvent("legendItemClick",t,i):p(n,"legendItemClick",t,i)})},createCheckboxForItem:function(n){n.checkbox=ct("input",{type:"checkbox",checked:n.selected,defaultChecked:n.selected},this.options.itemCheckboxStyle,this.chart.container);k(n.checkbox,"click",function(t){p(n,"checkboxClick",{checked:t.target.checked},function(){n.select()})})}});tt.legend.itemStyle.cursor="pointer";r(br.prototype,{showResetZoom:function(){var t=this,i=tt.lang,n=t.options.chart.resetZoomButton,r=n.theme,u=r.states,f=n.relativeTo==="chart"?null:"plotBox";this.resetZoomButton=t.renderer.button(i.resetZoom,null,null,function(){t.zoomOut()},r,u&&u.hover).attr({align:n.position.align,title:i.resetZoomTitle}).add().align(n.position,!1,f)},zoomOut:function(){var n=this;p(n,"selection",{resetSelection:!0},function(){n.zoom()})},zoom:function(i){var u,e=this.pointer,f=!1,r;!i||i.resetSelection?t(this.axes,function(n){u=n.zoom()}):t(i.xAxis.concat(i.yAxis),function(n){var t=n.axis,i=t.isXAxis;(e[i?"zoomX":"zoomY"]||e[i?"pinchX":"pinchY"])&&(u=t.zoom(n.min,n.max),t.displayBtn&&(f=!0))});r=this.resetZoomButton;f&&!r?this.showResetZoom():!f&&yt(r)&&(this.resetZoomButton=r.destroy());u&&this.redraw(n(this.options.chart.animation,i&&i.animation,this.pointCount<100))},pan:function(n,i){var r=this,f=r.hoverPoints,e;f&&t(f,function(n){n.setState()});t(i==="xy"?[1,0]:[1],function(t){var s=n[t?"chartX":"chartY"],i=r[t?"xAxis":"yAxis"][0],f=r[t?"mouseDownX":"mouseDownY"],h=(i.pointRange||0)/2,o=i.getExtremes(),c=i.toValue(f-s,!0)+h,f=i.toValue(f+r[t?"plotWidth":"plotHeight"]-s,!0)-h;i.series.length&&c>l(o.dataMin,o.min)&&f<u(o.dataMax,o.max)&&(i.setExtremes(c,f,!1,!1,{trigger:"pan"}),e=!0);r[t?"mouseDownX":"mouseDownY"]=s});e&&r.redraw(!1);v(r.container,{cursor:"move"})}});r(pi.prototype,{select:function(i,r){var u=this,f=u.series,e=f.chart,i=n(i,!u.selected);u.firePointEvent(i?"select":"unselect",{accumulate:r},function(){u.selected=u.options.selected=i;f.options.data[gi(u,f.data)]=u.options;u.setState(i&&"select");r||t(e.getSelectedPoints(),function(n){n.selected&&n!==u&&(n.selected=n.options.selected=!1,f.options.data[gi(n,f.data)]=n.options,n.setState(""),n.firePointEvent("unselect"))})})},onMouseOver:function(n){var u=this.series,t=u.chart,i=t.tooltip,r=t.hoverPoint;r&&r!==this&&r.onMouseOut();this.firePointEvent("mouseOver");i&&(!i.shared||u.noSharedTooltip)&&i.refresh(this,n);this.setState("hover");t.hoverPoint=this},onMouseOut:function(){var n=this.series.chart,t=n.hoverPoints;t&&gi(this,t)!==-1||(this.firePointEvent("mouseOut"),this.setState(),n.hoverPoint=null)},importEvents:function(){if(!this.hasImportedEvents){var n=o(this.series.options.point,this.options).events,t;this.events=n;for(t in n)k(this,t,n[t]);this.hasImportedEvents=!0}},setState:function(n,t){var e=this.plotX,l=this.plotY,u=this.series,a=u.options.states,i=at[u.type].marker&&u.options.marker,p=i&&!i.enabled,h=i&&i.states[n],w=h&&h.enabled===!1,f=u.stateMarkerGraphic,s=this.marker||{},v=u.chart,c=u.halo,y,n=n||"";y=this.pointAttr[n]||u.pointAttr[n];n===this.state&&!t||this.selected&&n!=="select"||a[n]&&a[n].enabled===!1||n&&(w||p&&h.enabled===!1)||n&&s.states&&s.states[n]&&s.states[n].enabled===!1||(this.graphic?(i=i&&this.graphic.symbolName&&y.r,this.graphic.attr(o(y,i?{x:e-i,y:l-i,width:2*i,height:2*i}:{})),f&&f.hide()):(n&&h&&((i=h.radius,s=s.symbol||u.symbol,f&&f.currentSymbol!==s&&(f=f.destroy()),f)?f[t?"animate":"attr"]({x:e-i,y:l-i}):s&&(u.stateMarkerGraphic=f=v.renderer.symbol(s,e-i,l-i,2*i,2*i).attr(y).add(u.markerGroup),f.currentSymbol=s)),f&&f[n&&v.isInsidePlot(e,l,v.inverted)?"show":"hide"]()),(e=a[n]&&a[n].halo)&&e.size?(c||(u.halo=c=v.renderer.path().add(u.seriesGroup)),c.attr(r({fill:yi(this.color||u.color).setOpacity(e.opacity).get()},e.attributes))[t?"animate":"attr"]({d:this.haloPath(e.size)})):c&&c.attr({d:[]}),this.state=n)},haloPath:function(n){var t=this.series,i=t.chart,r=t.getPlotBox(),u=i.inverted;return i.renderer.symbols.circle(r.translateX+(u?t.yAxis.len-this.plotY:this.plotX)-n,r.translateY+(u?t.xAxis.len-this.plotX:this.plotY)-n,n*2,n*2)}});r(a.prototype,{onMouseOver:function(){var t=this.chart,n=t.hoverSeries;n&&n!==this&&n.onMouseOut();this.options.events.mouseOver&&p(this,"mouseOver");this.setState("hover");t.hoverSeries=this},onMouseOut:function(){var i=this.options,n=this.chart,t=n.tooltip,r=n.hoverPoint;r&&r.onMouseOut();this&&i.events.mouseOut&&p(this,"mouseOut");t&&!i.stickyTracking&&(!t.shared||this.noSharedTooltip)&&t.hide();this.setState();n.hoverSeries=null},setState:function(n){var t=this.options,i=this.graph,u=this.graphNeg,r=t.states,t=t.lineWidth,n=n||"";this.state!==n&&(this.state=n,r[n]&&r[n].enabled===!1||(n&&(t=r[n].lineWidth||t+1),i&&!i.dashstyle&&(n={"stroke-width":t},i.attr(n),u&&u.attr(n))))},setVisible:function(n,i){var r=this,u=r.chart,o=r.legendItem,e,s=u.options.chart.ignoreHiddenSeries,h=r.visible;e=(r.visible=n=r.userOptions.visible=n===f?!h:n)?"show":"hide";t(["group","dataLabelsGroup","markerGroup","tracker"],function(n){r[n]&&r[n][e]()});u.hoverSeries===r&&r.onMouseOut();o&&u.legend.colorizeItem(r,n);r.isDirty=!0;r.options.stacking&&t(u.series,function(n){n.options.stacking&&n.visible&&(n.isDirty=!0)});t(r.linkedSeries,function(t){t.setVisible(n,!1)});s&&(u.isDirtyBox=!0);i!==!1&&u.redraw();p(r,e)},setTooltipPoints:function(n){var r=[],e,s,i=this.xAxis,a=i&&i.getExtremes(),c=i?i.tooltipLen||i.len:this.chart.plotSizeX,h,o,v=[];if(!(this.options.enableMouseTracking===!1||this.singularTooltips)){for(n&&(this.tooltipPoints=null),t(this.segments||this.points,function(n){r=r.concat(n)}),i&&i.reversed&&(r=r.reverse()),this.orderTooltipPoints&&this.orderTooltipPoints(r),n=r.length,o=0;o<n;o++)if(i=r[o],e=i.x,e>=a.min&&e<=a.max)for(h=r[o+1],e=s===f?0:s+1,s=r[o+1]?l(u(0,ft((i.clientX+(h?h.wrappedClientX||h.clientX:c))/2)),c):c;e>=0&&e<=s;)v[e++]=i;this.tooltipPoints=v}},show:function(){this.setVisible(!0)},hide:function(){this.setVisible(!1)},select:function(n){this.selected=n=n===f?!this.selected:n;this.checkbox&&(this.checkbox.checked=n);p(this,n?"select":"unselect")},drawTracker:nt.drawTrackerGraph});r(ut,{Axis:ri,Chart:br,Color:yi,Point:pi,Tick:vr,Renderer:kr,Series:a,SVGElement:it,SVGRenderer:fi,arrayMin:hr,arrayMax:bi,charts:ot,dateFormat:eu,format:rr,pathAnim:wu,getOptions:function(){return tt},hasBidiBug:wf,isTouchDevice:hf,numberFormat:tr,seriesTypes:w,setOptions:function(n){return tt=o(!0,tt,n),ef(),tt},addEvent:k,removeEvent:st,createElement:ct,discardElement:lr,css:v,each:t,extend:r,map:wr,merge:o,pick:n,splat:oi,extendClass:ii,pInt:h,wrap:sr,svg:vt,canvas:bt,vml:!vt&&!bt,product:"Highcharts",version:"4.0.1"})}(),function(n,t){function g(n,t,i){this.init.call(this,n,t,i)}var rt=n.arrayMin,ut=n.arrayMax,u=n.each,b=n.extend,o=n.merge,ft=n.map,r=n.pick,v=n.pInt,f=n.getOptions().plotOptions,i=n.seriesTypes,s=n.extendClass,nt=n.splat,e=n.wrap,tt=n.Axis,p=n.Tick,d=n.Point,et=n.Pointer,ot=n.CenteredSeriesMixin,y=n.TrackerMixin,c=n.Series,l=Math,w=l.round,a=l.floor,st=l.max,ht=n.Color,h=function(){};b(g.prototype,{init:function(n,t,i){var r=this,f=r.defaultOptions;r.chart=t;t.angular&&(f.background={});r.options=n=o(f,n);(n=n.background)&&u([].concat(nt(n)).reverse(),function(n){var t=n.backgroundColor,n=o(r.defaultBackgroundOptions,n);t&&(n.backgroundColor=t);n.color=n.backgroundColor;i.options.plotBands.unshift(n)})},defaultOptions:{center:["50%","50%"],size:"85%",startAngle:0},defaultBackgroundOptions:{shape:"circle",borderWidth:1,borderColor:"silver",backgroundColor:{linearGradient:{x1:0,y1:0,x2:0,y2:1},stops:[[0,"#FFF"],[1,"#DDD"]]},from:Number.MIN_VALUE,innerRadius:0,to:Number.MAX_VALUE,outerRadius:"105%"}});var k=tt.prototype,p=p.prototype,ct={getOffset:h,redraw:function(){this.isDirty=!1},render:function(){this.isDirty=!1},setScale:h,setCategories:h,setTitle:h},it={isRadial:!0,defaultRadialGaugeOptions:{labels:{align:"center",x:0,y:null},minorGridLineWidth:0,minorTickInterval:"auto",minorTickLength:10,minorTickPosition:"inside",minorTickWidth:1,tickLength:10,tickPosition:"inside",tickWidth:2,title:{rotation:0},zIndex:2},defaultRadialXOptions:{gridLineWidth:1,labels:{align:null,distance:15,x:0,y:null},maxPadding:0,minPadding:0,showLastLabel:!1,tickLength:0},defaultRadialYOptions:{gridLineInterpolation:"circle",labels:{align:"right",x:-3,y:-2},showLastLabel:!1,title:{x:4,text:null,rotation:90}},setOptions:function(n){n=this.options=o(this.defaultOptions,this.defaultRadialOptions,n);n.plotBands||(n.plotBands=[])},getOffset:function(){k.getOffset.call(this);this.chart.axisOffset[this.side]=0;this.center=this.pane.center=ot.getCenter.call(this.pane)},getLinePath:function(n,t){var i=this.center,t=r(t,i[2]/2-this.offset);return this.chart.renderer.symbols.arc(this.left+i[0],this.top+i[1],t,t,{start:this.startAngleRad,end:this.endAngleRad,open:!0,innerR:0})},setAxisTranslation:function(){k.setAxisTranslation.call(this);this.center&&(this.transA=this.isCircular?(this.endAngleRad-this.startAngleRad)/(this.max-this.min||1):this.center[2]/2/(this.max-this.min||1),this.minPixelPadding=this.isXAxis?this.transA*this.minPointOffset:0)},beforeSetTickPositions:function(){this.autoConnect&&(this.max+=this.categories&&1||this.pointRange||this.closestPointRange||0)},setAxisSize:function(){k.setAxisSize.call(this);this.isRadial&&(this.center=this.pane.center=n.CenteredSeriesMixin.getCenter.call(this.pane),this.isCircular&&(this.sector=this.endAngleRad-this.startAngleRad),this.len=this.width=this.height=this.center[2]*r(this.sector,1)/2)},getPosition:function(n,t){return this.postTranslate(this.isCircular?this.translate(n):0,r(this.isCircular?t:this.translate(n),this.center[2]/2)-this.offset)},postTranslate:function(n,t){var i=this.chart,r=this.center,n=this.startAngleRad+n;return{x:i.plotLeft+r[0]+Math.cos(n)*t,y:i.plotTop+r[1]+Math.sin(n)*t}},getPlotBandPath:function(n,t,i){var f=this.center,e=this.startAngleRad,h=f[2]/2,u=[r(i.outerRadius,"100%"),i.innerRadius,r(i.thickness,10)],c=/%$/,o,s=this.isCircular;return this.options.gridLineInterpolation==="polygon"?f=this.getPlotLinePath(n).concat(this.getPlotLinePath(t,!0)):(s||(u[0]=this.translate(n),u[1]=this.translate(t)),u=ft(u,function(n){return c.test(n)&&(n=v(n,10)*h/100),n}),i.shape==="circle"||!s?(n=-Math.PI/2,t=Math.PI*1.5,o=!0):(n=e+this.translate(n),t=e+this.translate(t)),f=this.chart.renderer.symbols.arc(this.left+f[0],this.top+f[1],u[0],u[0],{start:n,end:t,innerR:r(u[1],u[0]-u[2]),open:o})),f},getPlotLinePath:function(n,t){var i=this,r=i.center,o=i.chart,h=i.getPosition(n),e,s,f;return i.isCircular?f=["M",r[0]+o.plotLeft,r[1]+o.plotTop,"L",h.x,h.y]:i.options.gridLineInterpolation==="circle"?(n=i.translate(n))&&(f=i.getLinePath(0,n)):(u(o.xAxis,function(n){n.pane===i.pane&&(e=n)}),f=[],n=i.translate(n),r=e.tickPositions,e.autoConnect&&(r=r.concat([r[0]])),t&&(r=[].concat(r).reverse()),u(r,function(t,i){s=e.getPosition(t,n);f.push(i?"L":"M",s.x,s.y)})),f},getTitlePosition:function(){var n=this.center,i=this.chart,t=this.options.title;return{x:i.plotLeft+n[0]+(t.x||0),y:i.plotTop+n[1]-{high:.5,middle:.25,low:0}[t.align]*n[2]+(t.y||0)}}};e(k,"init",function(n,i,u){var l,s=i.angular,a=i.polar,h=u.isX,v=s&&h,c,e,f;e=i.options;f=u.pane||0;s?(b(this,v?ct:it),c=!h)&&(this.defaultRadialOptions=this.defaultRadialGaugeOptions):a&&(b(this,it),this.defaultRadialOptions=(c=h)?this.defaultRadialXOptions:o(this.defaultYAxisOptions,this.defaultRadialYOptions));n.call(this,i,u);!v&&(s||a)&&(n=this.options,i.panes||(i.panes=[]),this.pane=(l=i.panes[f]=i.panes[f]||new g(nt(e.pane)[f],i,this),f=l),f=f.options,i.inverted=!1,e.chart.zoomType=null,this.startAngleRad=i=(f.startAngle-90)*Math.PI/180,this.endAngleRad=e=(r(f.endAngle,f.startAngle+360)-90)*Math.PI/180,this.offset=n.offset||0,(this.isCircular=c)&&u.max===t&&e-i==2*Math.PI&&(this.autoConnect=!0))});e(p,"getPosition",function(n,t,i,r,u){var f=this.axis;return f.getPosition?f.getPosition(i):n.call(this,t,i,r,u)});e(p,"getLabelPosition",function(n,t,i,u,f,e,o,s,h){var c=this.axis,a=e.y,v=e.align,l=(c.translate(this.pos)+c.startAngleRad+Math.PI/2)/Math.PI*180%360;return c.isRadial?(n=c.getPosition(this.pos,c.center[2]/2+r(e.distance,-25)),e.rotation==="auto"?u.attr({rotation:l}):a===null&&(a=c.chart.renderer.fontMetrics(u.styles.fontSize).b-u.getBBox().height/2),v===null&&(v=c.isCircular?l>20&&l<160?"left":l>200&&l<340?"right":"center":"center",u.attr({align:v})),n.x+=e.x,n.y+=a):n=n.call(this,t,i,u,f,e,o,s,h),n});e(p,"getMarkPath",function(n,t,i,r,u,f,e){var o=this.axis;return o.isRadial?(n=o.getPosition(this.pos,o.center[2]/2+r),t=["M",t,i,"L",n.x,n.y]):t=n.call(this,t,i,r,u,f,e),t});f.arearange=o(f.area,{lineWidth:1,marker:null,threshold:null,tooltip:{pointFormat:'<span style="color:{series.color}">●<\/span> {series.name}: <b>{point.low}<\/b> - <b>{point.high}<\/b><br/>'},trackByArea:!0,dataLabels:{verticalAlign:null,xLow:0,xHigh:0,yLow:0,yHigh:0},states:{hover:{halo:!1}}});i.arearange=s(i.area,{type:"arearange",pointArrayMap:["low","high"],toYData:function(n){return[n.low,n.high]},pointValKey:"low",getSegments:function(){var n=this;u(n.points,function(t){n.options.connectNulls||t.low!==null&&t.high!==null?t.low===null&&t.high!==null&&(t.y=t.high):t.y=null});c.prototype.getSegments.call(this)},translate:function(){var n=this.yAxis;i.area.prototype.translate.apply(this);u(this.points,function(t){var r=t.low,i=t.high,u=t.plotY;i===null&&r===null?t.y=null:r===null?(t.plotLow=t.plotY=null,t.plotHigh=n.translate(i,0,1,0,1)):i===null?(t.plotLow=u,t.plotHigh=null):(t.plotLow=u,t.plotHigh=n.translate(i,0,1,0,1))})},getSegmentPath:function(n){var f,t=[],e=n.length,o=c.prototype.getSegmentPath,u,i,r;for(i=this.options,r=i.step,f=HighchartsAdapter.grep(n,function(n){return n.plotLow!==null});e--;)u=n[e],u.plotHigh!==null&&t.push({plotX:u.plotX,plotY:u.plotHigh});return n=o.call(this,f),r&&(r===!0&&(r="left"),i.step={left:"right",center:"center",right:"left"}[r]),t=o.call(this,t),i.step=r,i=[].concat(n,t),t[0]="L",this.areaPath=this.areaPath.concat(n,t),i},drawDataLabels:function(){var u=this.data,f=u.length,i,e=[],r=c.prototype,t=this.options.dataLabels,n,o=this.chart.inverted;if(t.enabled||this._hasPointLabels){for(i=f;i--;)n=u[i],n.y=n.high,n._plotY=n.plotY,n.plotY=n.plotHigh,e[i]=n.dataLabel,n.dataLabel=n.dataLabelUpper,n.below=!1,o?(t.align="left",t.x=t.xHigh):t.y=t.yHigh;for(r.drawDataLabels&&r.drawDataLabels.apply(this,arguments),i=f;i--;)n=u[i],n.dataLabelUpper=n.dataLabel,n.dataLabel=e[i],n.y=n.low,n.plotY=n._plotY,n.below=!0,o?(t.align="right",t.x=t.xLow):t.y=t.yLow;r.drawDataLabels&&r.drawDataLabels.apply(this,arguments)}},alignDataLabel:function(){i.column.prototype.alignDataLabel.apply(this,arguments)},getSymbol:i.column.prototype.getSymbol,drawPoints:h});f.areasplinerange=o(f.arearange);i.areasplinerange=s(i.arearange,{type:"areasplinerange",getPointSpline:i.spline.prototype.getPointSpline}),function(){var n=i.column.prototype;f.columnrange=o(f.column,f.arearange,{lineWidth:1,pointRange:null});i.columnrange=s(i.arearange,{type:"columnrange",translate:function(){var t=this,r=t.yAxis,i;n.translate.apply(t);u(t.points,function(n){var e=n.shapeArgs,u=t.options.minPointLength,f;n.tooltipPos=null;n.plotHigh=i=r.translate(n.high,0,1,0,1);n.plotLow=n.plotY;f=i;n=n.plotY-i;n<u&&(u-=n,n+=u,f-=u/2);e.height=n;e.y=f})},trackerGroups:["group","dataLabels"],drawGraph:h,pointAttrToOptions:n.pointAttrToOptions,drawPoints:n.drawPoints,drawTracker:n.drawTracker,animate:n.animate,getColumnMetrics:n.getColumnMetrics})}();f.gauge=o(f.line,{dataLabels:{enabled:!0,defer:!1,y:15,borderWidth:1,borderColor:"silver",borderRadius:3,crop:!1,style:{fontWeight:"bold"},verticalAlign:"top",zIndex:2},dial:{},pivot:{},tooltip:{headerFormat:""},showInLegend:!1});y={type:"gauge",pointClass:s(d,{setState:function(n){this.state=n}}),angular:!0,drawGraph:h,fixedBox:!0,forceDL:!0,trackerGroups:["group","dataLabels"],translate:function(){var n=this.yAxis,i=this.options,t=n.center;this.generatePoints();u(this.points,function(u){var e=o(i.dial,u.dial),h=v(r(e.radius,80))*t[2]/200,l=v(r(e.baseLength,70))*h/100,a=v(r(e.rearLength,10))*h/100,c=e.baseWidth||3,y=e.topWidth||1,s=i.overshoot,f=n.startAngleRad+n.translate(u.y,null,null,null,!0);s&&typeof s=="number"?(s=s/180*Math.PI,f=Math.max(n.startAngleRad-s,Math.min(n.endAngleRad+s,f))):i.wrap===!1&&(f=Math.max(n.startAngleRad,Math.min(n.endAngleRad,f)));f=f*180/Math.PI;u.shapeType="path";u.shapeArgs={d:e.path||["M",-a,-c/2,"L",l,-c/2,h,-y/2,h,y/2,l,c/2,-a,c/2,"z"],translateX:t[0],translateY:t[1],rotation:f};u.plotX=t[0];u.plotY=t[1]})},drawPoints:function(){var n=this,t=n.yAxis.center,f=n.pivot,e=n.options,i=e.pivot,s=n.chart.renderer;u(n.points,function(t){var u=t.graphic,i=t.shapeArgs,f=i.d,r=o(e.dial,t.dial);u?(u.animate(i),i.d=f):t.graphic=s[t.shapeType](i).attr({stroke:r.borderColor||"none","stroke-width":r.borderWidth||0,fill:r.backgroundColor||"black",rotation:i.rotation}).add(n.group)});f?f.animate({translateX:t[0],translateY:t[1]}):n.pivot=s.circle(0,0,r(i.radius,5)).attr({"stroke-width":i.borderWidth||0,stroke:i.borderColor||"silver",fill:i.backgroundColor||"black"}).translate(t[0],t[1]).add(n.group)},animate:function(n){var t=this;n||(u(t.points,function(n){var i=n.graphic;i&&(i.attr({rotation:t.yAxis.startAngleRad*180/Math.PI}),i.animate({rotation:n.shapeArgs.rotation},t.options.animation))}),t.animate=null)},render:function(){this.group=this.plotGroup("group","series",this.visible?"visible":"hidden",this.options.zIndex,this.chart.seriesGroup);c.prototype.render.call(this);this.group.clip(this.chart.clipRect)},setData:function(n,t){c.prototype.setData.call(this,n,!1);this.processData();this.generatePoints();r(t,!0)&&this.chart.redraw()},drawTracker:y&&y.drawTrackerPoint};i.gauge=s(i.line,y);f.boxplot=o(f.column,{fillColor:"#FFFFFF",lineWidth:1,medianWidth:2,states:{hover:{brightness:-.3}},threshold:null,tooltip:{pointFormat:'<span style="color:{series.color}">●<\/span> <b> {series.name}<\/b><br/>Maximum: {point.high}<br/>Upper quartile: {point.q3}<br/>Median: {point.median}<br/>Lower quartile: {point.q1}<br/>Minimum: {point.low}<br/>'},whiskerLength:"50%",whiskerWidth:2});i.boxplot=s(i.column,{type:"boxplot",pointArrayMap:["low","q1","median","q3","high"],toYData:function(n){return[n.low,n.q1,n.median,n.q3,n.high]},pointValKey:"high",pointAttrToOptions:{fill:"fillColor",stroke:"color","stroke-width":"lineWidth"},drawDataLabels:h,translate:function(){var n=this.yAxis,t=this.pointArrayMap;i.column.prototype.translate.apply(this);u(this.points,function(i){u(t,function(t){i[t]!==null&&(i[t+"Plot"]=n.translate(i[t],0,1,0,1))})})},drawPoints:function(){var o=this,lt=o.points,f=o.options,b=o.chart.renderer,rt,l,s,k,d,ut,n,i,h,ft,v,et,ot,g,st,y,ht,e,nt,p,ct,it,tt=o.doQuartiles!==!1,c=parseInt(o.options.whiskerLength,10)/100;u(lt,function(u){h=u.graphic;ct=u.shapeArgs;v={};g={};y={};it=u.color||o.color;u.plotY!==t&&((rt=u.pointAttr[u.selected?"selected":""],ht=ct.width,e=a(ct.x),nt=e+ht,p=w(ht/2),l=a(tt?u.q1Plot:u.lowPlot),s=a(tt?u.q3Plot:u.lowPlot),k=a(u.highPlot),d=a(u.lowPlot),v.stroke=u.stemColor||f.stemColor||it,v["stroke-width"]=r(u.stemWidth,f.stemWidth,f.lineWidth),v.dashstyle=u.stemDashStyle||f.stemDashStyle,g.stroke=u.whiskerColor||f.whiskerColor||it,g["stroke-width"]=r(u.whiskerWidth,f.whiskerWidth,f.lineWidth),y.stroke=u.medianColor||f.medianColor||it,y["stroke-width"]=r(u.medianWidth,f.medianWidth,f.lineWidth),y["stroke-linecap"]="round",n=v["stroke-width"]%2/2,i=e+p+n,ft=["M",i,s,"L",i,k,"M",i,l,"L",i,d],tt&&(n=rt["stroke-width"]%2/2,i=a(i)+n,l=a(l)+n,s=a(s)+n,e+=n,nt+=n,et=["M",e,s,"L",e,l,"L",nt,l,"L",nt,s,"L",e,s,"z"]),c&&(n=g["stroke-width"]%2/2,k+=n,d+=n,ot=["M",i-p*c,k,"L",i+p*c,k,"M",i-p*c,d,"L",i+p*c,d]),n=y["stroke-width"]%2/2,ut=w(u.medianPlot)+n,st=["M",e,ut,"L",nt,ut],h)?(u.stem.animate({d:ft}),c&&u.whiskers.animate({d:ot}),tt&&u.box.animate({d:et}),u.medianShape.animate({d:st})):(u.graphic=h=b.g().add(o.group),u.stem=b.path(ft).attr(v).add(h),c&&(u.whiskers=b.path(ot).attr(g).add(h)),tt&&(u.box=b.path(et).attr(rt).add(h)),u.medianShape=b.path(st).attr(y).add(h)))})}});f.errorbar=o(f.boxplot,{color:"#000000",grouping:!1,linkedTo:":previous",tooltip:{pointFormat:'<span style="color:{series.color}">●<\/span> {series.name}: <b>{point.low}<\/b> - <b>{point.high}<\/b><br/>'},whiskerWidth:null});i.errorbar=s(i.boxplot,{type:"errorbar",pointArrayMap:["low","high"],toYData:function(n){return[n.low,n.high]},pointValKey:"high",doQuartiles:!1,drawDataLabels:i.arearange?i.arearange.prototype.drawDataLabels:h,getColumnMetrics:function(){return this.linkedParent&&this.linkedParent.columnMetrics||i.column.prototype.getColumnMetrics.call(this)}});f.waterfall=o(f.column,{lineWidth:1,lineColor:"#333",dashStyle:"dot",borderColor:"#333"});i.waterfall=s(i.column,{type:"waterfall",upColorProp:"fill",pointArrayMap:["low","y"],pointValKey:"y",init:function(n,t){t.stacking=!0;i.column.prototype.init.call(this,n,t)},translate:function(){var o=this.yAxis,u,r,s,t,n,h,c,f,e;for(u=this.options.threshold,i.column.prototype.translate.apply(this),f=u,s=this.points,r=0,u=s.length;r<u;r++)t=s[r],n=t.shapeArgs,h=this.getStack(r),e=h.points[this.index+","+r],isNaN(t.y)&&(t.y=this.yData[r]),c=st(f,f+t.y)+e[0],n.y=o.translate(c,0,1),t.isSum||t.isIntermediateSum?(n.y=o.translate(e[1],0,1),n.height=o.translate(e[0],0,1)-n.y):f+=h.total,n.height<0&&(n.y+=n.height,n.height*=-1),t.plotY=n.y=w(n.y)-this.borderWidth%2/2,n.height=w(n.height),t.yBottom=n.y+n.height},processData:function(n){for(var u=this.yData,s=this.points,h,a=u.length,l=this.options.threshold||0,f,e,o,r,i=f=e=o=l,t=0;t<a;t++)r=u[t],h=s&&s[t]?s[t]:{},r==="sum"||h.isSum?u[t]=i:r==="intermediateSum"||h.isIntermediateSum?(u[t]=f,f=l):(i+=r,f+=r),e=Math.min(i,e),o=Math.max(i,o);c.prototype.processData.call(this,n);this.dataMin=e;this.dataMax=o},toYData:function(n){return n.isSum?"sum":n.isIntermediateSum?"intermediateSum":n.y},getAttribs:function(){i.column.prototype.getAttribs.apply(this,arguments);var t=this.options,s=t.states,r=t.upColor||this.color,t=n.Color(r).brighten(.1).get(),f=o(this.pointAttr),e=this.upColorProp;f[""][e]=r;f.hover[e]=s.hover.upColor||t;f.select[e]=s.select.upColor||r;u(this.points,function(n){n.y>0&&!n.color&&(n.pointAttr=f,n.color=r)})},getGraphPath:function(){for(var r=this.data,e=r.length,f=w(this.options.lineWidth+this.borderWidth)%2/2,u=[],n,t,i=1;i<e;i++)t=r[i].shapeArgs,n=r[i-1].shapeArgs,t=["M",n.x+n.width,n.y+f,"L",t.x,n.y+f],r[i-1].y<0&&(t[2]+=n.height,t[5]+=n.height),u=u.concat(t);return u},getExtremes:h,getStack:function(n){var i=this.yAxis.stacks,t=this.stackKey;return this.processedYData[n]<this.options.threshold&&(t="-"+t),i[t][n]},drawGraph:c.prototype.drawGraph});f.bubble=o(f.scatter,{dataLabels:{format:"{point.z}",inside:!0,style:{color:"white",textShadow:"0px 0px 3px black"},verticalAlign:"middle"},marker:{lineColor:null,lineWidth:1},minSize:8,maxSize:"20%",states:{hover:{halo:{size:5}}},tooltip:{pointFormat:"({point.x}, {point.y}), Size: {point.z}"},turboThreshold:0,zThreshold:0});y=s(d,{haloPath:function(){return d.prototype.haloPath.call(this,this.shapeArgs.r+this.series.options.states.hover.halo.size)}});i.bubble=s(i.scatter,{type:"bubble",pointClass:y,pointArrayMap:["y","z"],parallelArrays:["x","y","z"],trackerGroups:["group","dataLabelsGroup"],bubblePadding:!0,pointAttrToOptions:{stroke:"lineColor","stroke-width":"lineWidth",fill:"fillColor"},applyOpacity:function(n){var t=this.options.marker,i=r(t.fillOpacity,.5),n=n||t.fillColor||this.color;return i!==1&&(n=ht(n).setOpacity(i).get("rgba")),n},convertAttribs:function(){var n=c.prototype.convertAttribs.apply(this,arguments);return n.fill=this.applyOpacity(n.fill),n},getRadii:function(n,t,i,r){for(var u,o=this.zData,s=[],h=this.options.sizeBy!=="width",f=0,e=o.length;f<e;f++)u=t-n,u=u>0?(o[f]-n)/(t-n):.5,h&&u>=0&&(u=Math.sqrt(u)),s.push(l.ceil(i+u*(r-i))/2);this.radii=s},animate:function(n){var t=this.options.animation;n||(u(this.points,function(n){var i=n.graphic,n=n.shapeArgs;i&&n&&(i.attr("r",1),i.animate({r:n.r},t))}),this.animate=null)},translate:function(){var u,f=this.data,n,r,e=this.radii;for(i.scatter.prototype.translate.call(this),u=f.length;u--;)n=f[u],r=e?e[u]:0,n.negative=n.z<(this.options.zThreshold||0),r>=this.minPxSize/2?(n.shapeType="circle",n.shapeArgs={x:n.plotX,y:n.plotY,r:r},n.dlBox={x:n.plotX-r,y:n.plotY-r,width:2*r,height:2*r}):n.shapeArgs=n.plotY=n.dlBox=t},drawLegendSymbol:function(n,t){var i=v(n.itemStyle.fontSize)/2;t.legendSymbol=this.chart.renderer.circle(i,n.baseline-i,i).attr({zIndex:3}).add(t.legendGroup);t.legendSymbol.isMarker=!0},drawPoints:i.column.prototype.drawPoints,alignDataLabel:i.column.prototype.alignDataLabel});tt.prototype.beforePadding=function(){var b=this,n=this.len,s=this.chart,e=0,i=n,h=this.isXAxis,k=h?"xData":"yData",c=this.min,o={},d=l.min(s.plotWidth,s.plotHeight),a=Number.MAX_VALUE,y=-Number.MAX_VALUE,p=this.max-c,f=n/p,w=[];this.tickPositions&&(u(this.series,function(n){var t=n.options;n.bubblePadding&&(n.visible||!s.options.chart.ignoreHiddenSeries)&&(b.allowZoomOutside=!0,w.push(n),h)&&(u(["minSize","maxSize"],function(n){var i=t[n],r=/%$/.test(i),i=v(i);o[n]=r?d*i/100:i}),n.minPxSize=o.minSize,n=n.zData,n.length&&(a=l.min(a,l.max(rt(n),t.displayNegative===!1?t.zThreshold:-Number.MAX_VALUE)),y=l.max(y,ut(n))))}),u(w,function(n){var r=n[k],t=r.length,u;if(h&&n.getRadii(a,y,o.minSize,o.maxSize),p>0)for(;t--;)typeof r[t]=="number"&&(u=n.radii[t],e=Math.min((r[t]-c)*f-u,e),i=Math.max((r[t]-c)*f+u,i))}),w.length&&p>0&&r(this.options.min,this.userMin)===t&&r(this.options.max,this.userMax)===t&&(i-=n,f*=(n+e-i)/n,this.min+=e/f,this.max+=i/f))},function(){function f(n,t,i){n.call(this,t,i);this.chart.polar&&(this.closeSegment=function(n){var t=this.xAxis.center;n.push("L",t[0],t[1])},this.closedStacks=!0)}function o(n,t){var i=this.chart,r=this.options.animation,f=this.group,u=this.markerGroup,e=this.xAxis.center,o=i.plotLeft,s=i.plotTop;i.polar?i.renderer.isSVG&&(r===!0&&(r={}),t?(i={translateX:e[0]+o,translateY:e[1]+s,scaleX:.001,scaleY:.001},f.attr(i),u&&u.attr(i)):(i={translateX:o,translateY:s,scaleX:1,scaleY:1},f.animate(i,r),u&&u.animate(i,r),this.animate=null)):n.call(this,t)}var n=c.prototype,s=et.prototype,t;n.toXY=function(n){var t,r=this.chart,i=n.plotX;t=n.plotY;n.rectPlotX=i;n.rectPlotY=t;i=(i/Math.PI*180+this.xAxis.pane.options.startAngle)%360;i<0&&(i+=360);n.clientX=i;t=this.xAxis.postTranslate(n.plotX,this.yAxis.len-t);n.plotX=n.polarPlotX=t.x-r.plotLeft;n.plotY=n.polarPlotY=t.y-r.plotTop};n.orderTooltipPoints=function(n){this.chart.polar&&(n.sort(function(n,t){return n.clientX-t.clientX}),n[0])&&(n[0].wrappedClientX=n[0].clientX+360,n.push(n[0]))};i.area&&e(i.area.prototype,"init",f);i.areaspline&&e(i.areaspline.prototype,"init",f);i.spline&&e(i.spline.prototype,"getPointSpline",function(n,t,i,r){var u,f,o,s,h,c,e;return this.chart.polar?(u=i.plotX,f=i.plotY,n=t[r-1],o=t[r+1],this.connectEnds&&(n||(n=t[t.length-2]),o||(o=t[1])),n&&o&&(s=n.plotX,h=n.plotY,t=o.plotX,c=o.plotY,s=(1.5*u+s)/2.5,h=(1.5*f+h)/2.5,o=(1.5*u+t)/2.5,e=(1.5*f+c)/2.5,t=Math.sqrt(Math.pow(s-u,2)+Math.pow(h-f,2)),c=Math.sqrt(Math.pow(o-u,2)+Math.pow(e-f,2)),s=Math.atan2(h-f,s-u),h=Math.atan2(e-f,o-u),e=Math.PI/2+(s+h)/2,Math.abs(s-e)>Math.PI/2&&(e-=Math.PI),s=u+Math.cos(e)*t,h=f+Math.sin(e)*t,o=u+Math.cos(Math.PI+e)*c,e=f+Math.sin(Math.PI+e)*c,i.rightContX=o,i.rightContY=e),r?(i=["C",n.rightContX||n.plotX,n.rightContY||n.plotY,s||u,h||f,u,f],n.rightContX=n.rightContY=null):i=["M",u,f]):i=n.call(this,t,i,r),i});e(n,"translate",function(n){if(n.call(this),this.chart.polar&&!this.preventPostTranslate)for(var n=this.points,t=n.length;t--;)this.toXY(n[t])});e(n,"getSegmentPath",function(n,t){var i=this.points;return this.chart.polar&&this.options.connectEnds!==!1&&t[t.length-1]===i[i.length-1]&&i[0].y!==null&&(this.connectEnds=!0,t=[].concat(t,[i[0]])),n.call(this,t)});e(n,"animate",o);e(n,"setTooltipPoints",function(n,t){return this.chart.polar&&b(this.xAxis,{tooltipLen:360}),n.call(this,t)});i.column&&(t=i.column.prototype,e(t,"animate",o),e(t,"translate",function(n){var i=this.xAxis,u=this.yAxis.len,f=i.center,o=i.startAngleRad,s=this.chart.renderer,t,e;if(this.preventPostTranslate=!0,n.call(this),i.isRadial)for(i=this.points,e=i.length;e--;)t=i[e],n=t.barX+o,t.shapeType="path",t.shapeArgs={d:s.symbols.arc(f[0],f[1],u-t.plotY,null,{start:n,end:n+t.pointWidth,innerR:u-r(t.yBottom,u)})},this.toXY(t),t.tooltipPos=[t.plotX,t.plotY],t.ttBelow=t.plotY>f[1]}),e(t,"alignDataLabel",function(t,i,r,u,f,e){this.chart.polar?(t=i.rectPlotX/Math.PI*180,u.align===null&&(u.align=t>20&&t<160?"left":t>200&&t<340?"right":"center"),u.verticalAlign===null&&(u.verticalAlign=t<45||t>315?"bottom":t>135&&t<225?"top":"middle"),n.alignDataLabel.call(this,i,r,u,f,e)):t.call(this,i,r,u,f,e)}));e(s,"getIndex",function(n,t){var r,i=this.chart,u;return i.polar?(u=i.xAxis[0].center,r=t.chartX-u[0]-i.plotLeft,i=t.chartY-u[1]-i.plotTop,r=180-Math.round(Math.atan2(r,i)/Math.PI*180)):r=n.call(this,t),r});e(s,"getCoordinates",function(n,t){var i=this.chart,r={xAxis:[],yAxis:[]};return i.polar?u(i.axes,function(n){var f=n.isXAxis,u=n.center,e=t.chartX-u[0]-i.plotLeft,u=t.chartY-u[1]-i.plotTop;r[f?"xAxis":"yAxis"].push({axis:n,value:n.translate(f?Math.PI-Math.atan2(e,u):Math.sqrt(Math.pow(e,2)+Math.pow(u,2)),!0)})}):r=n.call(this,t),r})}()}(Highcharts),function(){"use strict";function n(r){if(!r)throw new Error("No options passed to Waypoint constructor");if(!r.element)throw new Error("No element option passed to Waypoint constructor");if(!r.handler)throw new Error("No handler option passed to Waypoint constructor");this.key="waypoint-"+i;this.options=n.Adapter.extend({},n.defaults,r);this.element=this.options.element;this.adapter=new n.Adapter(this.element);this.callback=r.handler;this.axis=this.options.horizontal?"horizontal":"vertical";this.enabled=this.options.enabled;this.triggerPoint=null;this.group=n.Group.findOrCreate({name:this.options.group,axis:this.axis});this.context=n.Context.findOrCreateByElement(this.options.context);n.offsetAliases[this.options.offset]&&(this.options.offset=n.offsetAliases[this.options.offset]);this.group.add(this);this.context.add(this);t[this.key]=this;i+=1}var i=0,t={};n.prototype.queueTrigger=function(n){this.group.queueTrigger(this,n)};n.prototype.trigger=function(n){this.enabled&&this.callback&&this.callback.apply(this,n)};n.prototype.destroy=function(){this.context.remove(this);this.group.remove(this);delete t[this.key]};n.prototype.disable=function(){return this.enabled=!1,this};n.prototype.enable=function(){return this.context.refresh(),this.enabled=!0,this};n.prototype.next=function(){return this.group.next(this)};n.prototype.previous=function(){return this.group.previous(this)};n.invokeAll=function(n){var r=[],u,i,f;for(u in t)r.push(t[u]);for(i=0,f=r.length;i<f;i++)r[i][n]()};n.destroyAll=function(){n.invokeAll("destroy")};n.disableAll=function(){n.invokeAll("disable")};n.enableAll=function(){n.invokeAll("enable")};n.refreshAll=function(){n.Context.refreshAll()};n.viewportHeight=function(){return window.innerHeight||document.documentElement.clientHeight};n.viewportWidth=function(){return document.documentElement.clientWidth};n.adapters=[];n.defaults={context:window,continuous:!0,enabled:!0,group:"default",horizontal:!1,offset:0};n.offsetAliases={"bottom-in-view":function(){return this.context.innerHeight()-this.adapter.outerHeight()},"right-in-view":function(){return this.context.innerWidth()-this.adapter.outerWidth()}};window.Waypoint=n}(),function(){"use strict";function f(n){window.setTimeout(n,1e3/60)}function n(n){this.element=n;this.Adapter=t.Adapter;this.adapter=new this.Adapter(n);this.key="waypoint-context-"+r;this.didScroll=!1;this.didResize=!1;this.oldScroll={x:this.adapter.scrollLeft(),y:this.adapter.scrollTop()};this.waypoints={vertical:{},horizontal:{}};n.waypointContextKey=this.key;i[n.waypointContextKey]=this;r+=1;this.createThrottledScrollHandler();this.createThrottledResizeHandler()}var r=0,i={},t=window.Waypoint,u=window.onload;n.prototype.add=function(n){var t=n.options.horizontal?"horizontal":"vertical";this.waypoints[t][n.key]=n;this.refresh()};n.prototype.checkEmpty=function(){var n=this.Adapter.isEmptyObject(this.waypoints.horizontal),t=this.Adapter.isEmptyObject(this.waypoints.vertical);n&&t&&(this.adapter.off(".waypoints"),delete i[this.key])};n.prototype.createThrottledResizeHandler=function(){function i(){n.handleResize();n.didResize=!1}var n=this;this.adapter.on("resize.waypoints",function(){n.didResize||(n.didResize=!0,t.requestAnimationFrame(i))})};n.prototype.createThrottledScrollHandler=function(){function i(){n.handleScroll();n.didScroll=!1}var n=this;this.adapter.on("scroll.waypoints",function(){(!n.didScroll||t.isTouch)&&(n.didScroll=!0,t.requestAnimationFrame(i))})};n.prototype.handleResize=function(){t.Context.refreshAll()};n.prototype.handleScroll=function(){var u={},i={horizontal:{newScroll:this.adapter.scrollLeft(),oldScroll:this.oldScroll.x,forward:"right",backward:"left"},vertical:{newScroll:this.adapter.scrollTop(),oldScroll:this.oldScroll.y,forward:"down",backward:"up"}},r,f,s;for(r in i){var n=i[r],h=n.newScroll>n.oldScroll,c=h?n.forward:n.backward;for(f in this.waypoints[r]){var t=this.waypoints[r][f],e=n.oldScroll<t.triggerPoint,o=n.newScroll>=t.triggerPoint,l=e&&o,a=!e&&!o;(l||a)&&(t.queueTrigger(c),u[t.group.id]=t.group)}}for(s in u)u[s].flushTriggers();this.oldScroll={x:i.horizontal.newScroll,y:i.vertical.newScroll}};n.prototype.innerHeight=function(){return this.element==this.element.window?t.viewportHeight():this.adapter.innerHeight()};n.prototype.remove=function(n){delete this.waypoints[n.axis][n.key];this.checkEmpty()};n.prototype.innerWidth=function(){return this.element==this.element.window?t.viewportWidth():this.adapter.innerWidth()};n.prototype.destroy=function(){var t=[],i,r,n,u;for(i in this.waypoints)for(r in this.waypoints[i])t.push(this.waypoints[i][r]);for(n=0,u=t.length;n<u;n++)t[n].destroy()};n.prototype.refresh=function(){var u=this.element==this.element.window,c=this.adapter.offset(),r={},e,f,t,l,b;this.handleScroll();e={horizontal:{contextOffset:u?0:c.left,contextScroll:u?0:this.oldScroll.x,contextDimension:this.innerWidth(),oldScroll:this.oldScroll.x,forward:"right",backward:"left",offsetProp:"left"},vertical:{contextOffset:u?0:c.top,contextScroll:u?0:this.oldScroll.y,contextDimension:this.innerHeight(),oldScroll:this.oldScroll.y,forward:"down",backward:"up",offsetProp:"top"}};for(f in e){t=e[f];for(l in this.waypoints[f]){var n=this.waypoints[f][l],i=n.options.offset,a=n.triggerPoint,v=0,o=a==null,y,s,h,p,w;n.element!==n.element.window&&(v=n.adapter.offset()[t.offsetProp]);typeof i=="function"?i=i.apply(n):typeof i=="string"&&(i=parseFloat(i),n.options.offset.indexOf("%")>-1&&(i=Math.ceil(t.contextDimension*i/100)));y=t.contextScroll-t.contextOffset;n.triggerPoint=v+y-i;s=a<t.oldScroll;h=n.triggerPoint>=t.oldScroll;p=s&&h;w=!s&&!h;!o&&p?(n.queueTrigger(t.backward),r[n.group.id]=n.group):!o&&w?(n.queueTrigger(t.forward),r[n.group.id]=n.group):o&&t.oldScroll>=n.triggerPoint&&(n.queueTrigger(t.forward),r[n.group.id]=n.group)}}for(b in r)r[b].flushTriggers();return this};n.findOrCreateByElement=function(t){return n.findByElement(t)||new n(t)};n.refreshAll=function(){for(var n in i)i[n].refresh()};n.findByElement=function(n){return i[n.waypointContextKey]};window.onload=function(){u&&u();n.refreshAll()};t.requestAnimationFrame=function(n){var t=window.requestAnimationFrame||window.mozRequestAnimationFrame||window.webkitRequestAnimationFrame||f;t.call(window,n)};t.Context=n}(),function(){"use strict";function i(n,t){return n.triggerPoint-t.triggerPoint}function u(n,t){return t.triggerPoint-n.triggerPoint}function n(n){this.name=n.name;this.axis=n.axis;this.id=this.name+"-"+this.axis;this.waypoints=[];this.clearTriggerQueues();r[this.axis][this.name]=this}var r={vertical:{},horizontal:{}},t=window.Waypoint;n.prototype.add=function(n){this.waypoints.push(n)};n.prototype.clearTriggerQueues=function(){this.triggerQueues={up:[],down:[],left:[],right:[]}};n.prototype.flushTriggers=function(){var n,t,e,r,o,f;for(n in this.triggerQueues)for(t=this.triggerQueues[n],e=n==="up"||n==="left",t.sort(e?u:i),r=0,o=t.length;r<o;r+=1)f=t[r],(f.options.continuous||r===t.length-1)&&f.trigger([n]);this.clearTriggerQueues()};n.prototype.next=function(n){this.waypoints.sort(i);var r=t.Adapter.inArray(n,this.waypoints),u=r===this.waypoints.length-1;return u?null:this.waypoints[r+1]};n.prototype.previous=function(n){this.waypoints.sort(i);var r=t.Adapter.inArray(n,this.waypoints);return r?this.waypoints[r-1]:null};n.prototype.queueTrigger=function(n,t){this.triggerQueues[t].push(n)};n.prototype.remove=function(n){var i=t.Adapter.inArray(n,this.waypoints);i>-1&&this.waypoints.splice(i,1)};n.prototype.first=function(){return this.waypoints[0]};n.prototype.last=function(){return this.waypoints[this.waypoints.length-1]};n.findOrCreate=function(t){return r[t.axis][t.name]||new n(t)};t.Group=n}(),function(){"use strict";function t(t){this.$element=n(t)}var n=window.jQuery,i=window.Waypoint;n.each(["innerHeight","innerWidth","off","offset","on","outerHeight","outerWidth","scrollLeft","scrollTop"],function(n,i){t.prototype[i]=function(){var n=Array.prototype.slice.call(arguments);return this.$element[i].apply(this.$element,n)}});n.each(["extend","inArray","isEmptyObject"],function(i,r){t[r]=n[r]});i.adapters.push({name:"jquery",Adapter:t});i.Adapter=t}(),function(){"use strict";function n(n){return function(){var r=[],i=arguments[0];return n.isFunction(arguments[0])&&(i=n.extend({},arguments[1]),i.handler=arguments[0]),this.each(function(){var u=n.extend({},i,{element:this});typeof u.context=="string"&&(u.context=n(this).closest(u.context)[0]);r.push(new t(u))}),r}}var t=window.Waypoint;window.jQuery&&(window.jQuery.fn.waypoint=n(window.jQuery));window.Zepto&&(window.Zepto.fn.waypoint=n(window.Zepto))}(),function(n){"use strict";n.fn.counterUp=function(t){var i=n.extend({time:400,delay:10},t);return this.each(function(){var t=n(this),r=i,u=function(){var e=[],f=r.time/r.delay,n=t.text(),h=/[0-9]+,[0-9]+/.test(n),u,i,s;n=n.replace(/,/g,"");var l=/^[0-9]+$/.test(n),o=/^[0-9]+\.[0-9]+$/.test(n),c=o?(n.split(".")[1]||[]).length:0;for(u=f;u>=1;u--){if(i=parseInt(n/f*u),o&&(i=parseFloat(n/f*u).toFixed(c)),h)while(/(\d+)(\d{3})/.test(i.toString()))i=i.toString().replace(/(\d+)(\d{3})/,"$1,$2");e.unshift(i)}t.data("counterup-nums",e);t.text("0");s=function(){t.text(t.data("counterup-nums").shift());t.data("counterup-nums").length?setTimeout(t.data("counterup-func"),r.delay):(delete t.data("counterup-nums"),t.data("counterup-nums",null),t.data("counterup-func",null))};t.data("counterup-func",s);setTimeout(t.data("counterup-func"),r.delay)};t.waypoint(u,{offset:"100%",triggerOnce:!0})})}}(jQuery),function(){var t,n;t=this.jQuery||window.jQuery;n=t(window);t.fn.stick_in_parent=function(i){var l,e,s,r,u,o,c,f,a,h,v;for(i==null&&(i={}),f=i.sticky_class,s=i.inner_scrolling,c=i.recalc_every,o=i.parent,u=i.offset_top,r=i.spacer,e=i.bottoming,u==null&&(u=0),o==null&&(o=void 0),s==null&&(s=!0),f==null&&(f="is_stuck"),e==null&&(e=!0),a=function(i,h,l,a,v,y,p,w){var tt,et,g,ut,k,d,ft,it,rt,b,nt;if(!i.data("sticky_kit")){if(i.data("sticky_kit",!0),d=i.parent(),o!=null&&(d=d.closest(o)),!d.length)throw"failed to find stick parent";if(g=!1,tt=!1,b=r!=null?r&&i.closest(r):t("<div />"),b&&b.css("position",i.css("position")),ft=function(){var n,t,e;if(!w)return n=parseInt(d.css("border-top-width"),10),t=parseInt(d.css("padding-top"),10),h=parseInt(d.css("padding-bottom"),10),l=d.offset().top+n+t,a=d.height(),g&&(g=!1,tt=!1,r==null&&(i.insertAfter(b),b.detach()),i.css({position:"",top:"",width:"",bottom:""}).removeClass(f),e=!0),v=i.offset().top-parseInt(i.css("margin-top"),10)-u,y=i.outerHeight(!0),p=i.css("float"),b&&b.css({width:i.outerWidth(!0),height:y,display:i.css("display"),"vertical-align":i.css("vertical-align"),float:p}),e?nt():void 0},ft(),y!==a){ut=void 0;k=u;rt=c;nt=function(){var o,et,t,nt,it;if(!w)return rt!=null&&(rt-=1,rt<=0&&(rt=c,ft())),t=n.scrollTop(),ut!=null&&(et=t-ut),ut=t,g?(e&&(nt=t+y+k>a+l,tt&&!nt&&(tt=!1,i.css({position:"fixed",bottom:"",top:k}).trigger("sticky_kit:unbottom"))),t<v&&(g=!1,k=u,r==null&&((p==="left"||p==="right")&&i.insertAfter(b),b.detach()),o={position:"",width:"",top:""},i.css(o).removeClass(f).trigger("sticky_kit:unstick")),s&&(it=n.height(),y+u>it&&(tt||(k-=et,k=Math.max(it-y,k),k=Math.min(u,k),g&&i.css({top:k+"px"}))))):t>v&&(g=!0,o={position:"fixed",top:k},o.width=i.css("box-sizing")==="border-box"?i.outerWidth()+"px":i.width()+"px",i.css(o).addClass(f),r==null&&(i.after(b),(p==="left"||p==="right")&&b.append(i)),i.trigger("sticky_kit:stick")),g&&e&&(nt==null&&(nt=t+y+k>a+l),!tt&&nt)?(tt=!0,d.css("position")==="static"&&d.css({position:"relative"}),i.css({position:"absolute",bottom:h,top:"auto"}).trigger("sticky_kit:bottom")):void 0};it=function(){return ft(),nt()};et=function(){return w=!0,n.off("touchmove",nt),n.off("scroll",nt),n.off("resize",it),t(document.body).off("sticky_kit:recalc",it),i.off("sticky_kit:detach",et),i.removeData("sticky_kit"),i.css({position:"",bottom:"",top:"",width:""}),d.position("position",""),g?(r==null&&((p==="left"||p==="right")&&i.insertAfter(b),b.remove()),i.removeClass(f)):void 0};n.on("touchmove",nt);n.on("scroll",nt);n.on("resize",it);t(document.body).on("sticky_kit:recalc",it);i.on("sticky_kit:detach",et);return setTimeout(nt,0)}}},h=0,v=this.length;h<v;h++)l=this[h],a(t(l));return this}}.call(this)